1use crate::SyntaxKind;
2use crate::ast::AstNode;
3use crate::ast::{AstChildren, support};
4use crate::syntax_node::SyntaxNode;
5use crate::syntax_node::SyntaxToken;
6
7#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8pub struct AddColumn {
9 pub(crate) syntax: SyntaxNode,
10}
11impl AddColumn {
12 #[inline]
13 pub fn collate(&self) -> Option<Collate> {
14 support::child(&self.syntax)
15 }
16 #[inline]
17 pub fn constraints(&self) -> AstChildren<Constraint> {
18 support::children(&self.syntax)
19 }
20 #[inline]
21 pub fn if_not_exists(&self) -> Option<IfNotExists> {
22 support::child(&self.syntax)
23 }
24 #[inline]
25 pub fn name_ref(&self) -> Option<NameRef> {
26 support::child(&self.syntax)
27 }
28 #[inline]
29 pub fn ty(&self) -> Option<Type> {
30 support::child(&self.syntax)
31 }
32 #[inline]
33 pub fn add_token(&self) -> Option<SyntaxToken> {
34 support::token(&self.syntax, SyntaxKind::ADD_KW)
35 }
36 #[inline]
37 pub fn column_token(&self) -> Option<SyntaxToken> {
38 support::token(&self.syntax, SyntaxKind::COLUMN_KW)
39 }
40}
41
42#[derive(Debug, Clone, PartialEq, Eq, Hash)]
43pub struct AddConstraint {
44 pub(crate) syntax: SyntaxNode,
45}
46impl AddConstraint {
47 #[inline]
48 pub fn constraint(&self) -> Option<Constraint> {
49 support::child(&self.syntax)
50 }
51 #[inline]
52 pub fn deferrable_constraint_option(&self) -> Option<DeferrableConstraintOption> {
53 support::child(&self.syntax)
54 }
55 #[inline]
56 pub fn enforced(&self) -> Option<Enforced> {
57 support::child(&self.syntax)
58 }
59 #[inline]
60 pub fn initially_deferred_constraint_option(
61 &self,
62 ) -> Option<InitiallyDeferredConstraintOption> {
63 support::child(&self.syntax)
64 }
65 #[inline]
66 pub fn initially_immediate_constraint_option(
67 &self,
68 ) -> Option<InitiallyImmediateConstraintOption> {
69 support::child(&self.syntax)
70 }
71 #[inline]
72 pub fn no_inherit(&self) -> Option<NoInherit> {
73 support::child(&self.syntax)
74 }
75 #[inline]
76 pub fn not_deferrable_constraint_option(&self) -> Option<NotDeferrableConstraintOption> {
77 support::child(&self.syntax)
78 }
79 #[inline]
80 pub fn not_enforced(&self) -> Option<NotEnforced> {
81 support::child(&self.syntax)
82 }
83 #[inline]
84 pub fn not_valid(&self) -> Option<NotValid> {
85 support::child(&self.syntax)
86 }
87 #[inline]
88 pub fn add_token(&self) -> Option<SyntaxToken> {
89 support::token(&self.syntax, SyntaxKind::ADD_KW)
90 }
91}
92
93#[derive(Debug, Clone, PartialEq, Eq, Hash)]
94pub struct AddGenerated {
95 pub(crate) syntax: SyntaxNode,
96}
97impl AddGenerated {
98 #[inline]
99 pub fn add_token(&self) -> Option<SyntaxToken> {
100 support::token(&self.syntax, SyntaxKind::ADD_KW)
101 }
102}
103
104#[derive(Debug, Clone, PartialEq, Eq, Hash)]
105pub struct Aggregate {
106 pub(crate) syntax: SyntaxNode,
107}
108impl Aggregate {
109 #[inline]
110 pub fn param_list(&self) -> Option<ParamList> {
111 support::child(&self.syntax)
112 }
113 #[inline]
114 pub fn path(&self) -> Option<Path> {
115 support::child(&self.syntax)
116 }
117}
118
119#[derive(Debug, Clone, PartialEq, Eq, Hash)]
120pub struct Alias {
121 pub(crate) syntax: SyntaxNode,
122}
123impl Alias {
124 #[inline]
125 pub fn column_list(&self) -> Option<ColumnList> {
126 support::child(&self.syntax)
127 }
128 #[inline]
129 pub fn as_token(&self) -> Option<SyntaxToken> {
130 support::token(&self.syntax, SyntaxKind::AS_KW)
131 }
132}
133
134#[derive(Debug, Clone, PartialEq, Eq, Hash)]
135pub struct AlterAggregate {
136 pub(crate) syntax: SyntaxNode,
137}
138impl AlterAggregate {
139 #[inline]
140 pub fn aggregate(&self) -> Option<Aggregate> {
141 support::child(&self.syntax)
142 }
143 #[inline]
144 pub fn aggregate_token(&self) -> Option<SyntaxToken> {
145 support::token(&self.syntax, SyntaxKind::AGGREGATE_KW)
146 }
147 #[inline]
148 pub fn alter_token(&self) -> Option<SyntaxToken> {
149 support::token(&self.syntax, SyntaxKind::ALTER_KW)
150 }
151}
152
153#[derive(Debug, Clone, PartialEq, Eq, Hash)]
154pub struct AlterCollation {
155 pub(crate) syntax: SyntaxNode,
156}
157impl AlterCollation {
158 #[inline]
159 pub fn name_ref(&self) -> Option<NameRef> {
160 support::child(&self.syntax)
161 }
162 #[inline]
163 pub fn alter_token(&self) -> Option<SyntaxToken> {
164 support::token(&self.syntax, SyntaxKind::ALTER_KW)
165 }
166 #[inline]
167 pub fn collation_token(&self) -> Option<SyntaxToken> {
168 support::token(&self.syntax, SyntaxKind::COLLATION_KW)
169 }
170}
171
172#[derive(Debug, Clone, PartialEq, Eq, Hash)]
173pub struct AlterColumn {
174 pub(crate) syntax: SyntaxNode,
175}
176impl AlterColumn {
177 #[inline]
178 pub fn option(&self) -> Option<AlterColumnOption> {
179 support::child(&self.syntax)
180 }
181 #[inline]
182 pub fn alter_token(&self) -> Option<SyntaxToken> {
183 support::token(&self.syntax, SyntaxKind::ALTER_KW)
184 }
185 #[inline]
186 pub fn column_token(&self) -> Option<SyntaxToken> {
187 support::token(&self.syntax, SyntaxKind::COLUMN_KW)
188 }
189}
190
191#[derive(Debug, Clone, PartialEq, Eq, Hash)]
192pub struct AlterConstraint {
193 pub(crate) syntax: SyntaxNode,
194}
195impl AlterConstraint {
196 #[inline]
197 pub fn option(&self) -> Option<AlterColumnOption> {
198 support::child(&self.syntax)
199 }
200 #[inline]
201 pub fn alter_token(&self) -> Option<SyntaxToken> {
202 support::token(&self.syntax, SyntaxKind::ALTER_KW)
203 }
204 #[inline]
205 pub fn constraint_token(&self) -> Option<SyntaxToken> {
206 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
207 }
208}
209
210#[derive(Debug, Clone, PartialEq, Eq, Hash)]
211pub struct AlterConversion {
212 pub(crate) syntax: SyntaxNode,
213}
214impl AlterConversion {
215 #[inline]
216 pub fn name_ref(&self) -> Option<NameRef> {
217 support::child(&self.syntax)
218 }
219 #[inline]
220 pub fn alter_token(&self) -> Option<SyntaxToken> {
221 support::token(&self.syntax, SyntaxKind::ALTER_KW)
222 }
223 #[inline]
224 pub fn conversion_token(&self) -> Option<SyntaxToken> {
225 support::token(&self.syntax, SyntaxKind::CONVERSION_KW)
226 }
227}
228
229#[derive(Debug, Clone, PartialEq, Eq, Hash)]
230pub struct AlterDatabase {
231 pub(crate) syntax: SyntaxNode,
232}
233impl AlterDatabase {
234 #[inline]
235 pub fn name_ref(&self) -> Option<NameRef> {
236 support::child(&self.syntax)
237 }
238 #[inline]
239 pub fn alter_token(&self) -> Option<SyntaxToken> {
240 support::token(&self.syntax, SyntaxKind::ALTER_KW)
241 }
242 #[inline]
243 pub fn database_token(&self) -> Option<SyntaxToken> {
244 support::token(&self.syntax, SyntaxKind::DATABASE_KW)
245 }
246}
247
248#[derive(Debug, Clone, PartialEq, Eq, Hash)]
249pub struct AlterDefaultPrivileges {
250 pub(crate) syntax: SyntaxNode,
251}
252impl AlterDefaultPrivileges {
253 #[inline]
254 pub fn alter_token(&self) -> Option<SyntaxToken> {
255 support::token(&self.syntax, SyntaxKind::ALTER_KW)
256 }
257 #[inline]
258 pub fn default_token(&self) -> Option<SyntaxToken> {
259 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
260 }
261 #[inline]
262 pub fn privileges_token(&self) -> Option<SyntaxToken> {
263 support::token(&self.syntax, SyntaxKind::PRIVILEGES_KW)
264 }
265}
266
267#[derive(Debug, Clone, PartialEq, Eq, Hash)]
268pub struct AlterDomain {
269 pub(crate) syntax: SyntaxNode,
270}
271impl AlterDomain {
272 #[inline]
273 pub fn action(&self) -> Option<AlterDomainAction> {
274 support::child(&self.syntax)
275 }
276 #[inline]
277 pub fn path(&self) -> Option<Path> {
278 support::child(&self.syntax)
279 }
280 #[inline]
281 pub fn alter_token(&self) -> Option<SyntaxToken> {
282 support::token(&self.syntax, SyntaxKind::ALTER_KW)
283 }
284 #[inline]
285 pub fn domain_token(&self) -> Option<SyntaxToken> {
286 support::token(&self.syntax, SyntaxKind::DOMAIN_KW)
287 }
288}
289
290#[derive(Debug, Clone, PartialEq, Eq, Hash)]
291pub struct AlterEventTrigger {
292 pub(crate) syntax: SyntaxNode,
293}
294impl AlterEventTrigger {
295 #[inline]
296 pub fn alter_token(&self) -> Option<SyntaxToken> {
297 support::token(&self.syntax, SyntaxKind::ALTER_KW)
298 }
299 #[inline]
300 pub fn event_token(&self) -> Option<SyntaxToken> {
301 support::token(&self.syntax, SyntaxKind::EVENT_KW)
302 }
303 #[inline]
304 pub fn trigger_token(&self) -> Option<SyntaxToken> {
305 support::token(&self.syntax, SyntaxKind::TRIGGER_KW)
306 }
307}
308
309#[derive(Debug, Clone, PartialEq, Eq, Hash)]
310pub struct AlterExtension {
311 pub(crate) syntax: SyntaxNode,
312}
313impl AlterExtension {
314 #[inline]
315 pub fn name_ref(&self) -> Option<NameRef> {
316 support::child(&self.syntax)
317 }
318 #[inline]
319 pub fn alter_token(&self) -> Option<SyntaxToken> {
320 support::token(&self.syntax, SyntaxKind::ALTER_KW)
321 }
322 #[inline]
323 pub fn extension_token(&self) -> Option<SyntaxToken> {
324 support::token(&self.syntax, SyntaxKind::EXTENSION_KW)
325 }
326}
327
328#[derive(Debug, Clone, PartialEq, Eq, Hash)]
329pub struct AlterForeignDataWrapper {
330 pub(crate) syntax: SyntaxNode,
331}
332impl AlterForeignDataWrapper {
333 #[inline]
334 pub fn alter_token(&self) -> Option<SyntaxToken> {
335 support::token(&self.syntax, SyntaxKind::ALTER_KW)
336 }
337 #[inline]
338 pub fn data_token(&self) -> Option<SyntaxToken> {
339 support::token(&self.syntax, SyntaxKind::DATA_KW)
340 }
341 #[inline]
342 pub fn foreign_token(&self) -> Option<SyntaxToken> {
343 support::token(&self.syntax, SyntaxKind::FOREIGN_KW)
344 }
345 #[inline]
346 pub fn wrapper_token(&self) -> Option<SyntaxToken> {
347 support::token(&self.syntax, SyntaxKind::WRAPPER_KW)
348 }
349}
350
351#[derive(Debug, Clone, PartialEq, Eq, Hash)]
352pub struct AlterForeignTable {
353 pub(crate) syntax: SyntaxNode,
354}
355impl AlterForeignTable {
356 #[inline]
357 pub fn alter_token(&self) -> Option<SyntaxToken> {
358 support::token(&self.syntax, SyntaxKind::ALTER_KW)
359 }
360 #[inline]
361 pub fn foreign_token(&self) -> Option<SyntaxToken> {
362 support::token(&self.syntax, SyntaxKind::FOREIGN_KW)
363 }
364 #[inline]
365 pub fn table_token(&self) -> Option<SyntaxToken> {
366 support::token(&self.syntax, SyntaxKind::TABLE_KW)
367 }
368}
369
370#[derive(Debug, Clone, PartialEq, Eq, Hash)]
371pub struct AlterFunction {
372 pub(crate) syntax: SyntaxNode,
373}
374impl AlterFunction {
375 #[inline]
376 pub fn alter_token(&self) -> Option<SyntaxToken> {
377 support::token(&self.syntax, SyntaxKind::ALTER_KW)
378 }
379 #[inline]
380 pub fn function_token(&self) -> Option<SyntaxToken> {
381 support::token(&self.syntax, SyntaxKind::FUNCTION_KW)
382 }
383}
384
385#[derive(Debug, Clone, PartialEq, Eq, Hash)]
386pub struct AlterGroup {
387 pub(crate) syntax: SyntaxNode,
388}
389impl AlterGroup {
390 #[inline]
391 pub fn name_ref(&self) -> Option<NameRef> {
392 support::child(&self.syntax)
393 }
394 #[inline]
395 pub fn alter_token(&self) -> Option<SyntaxToken> {
396 support::token(&self.syntax, SyntaxKind::ALTER_KW)
397 }
398 #[inline]
399 pub fn group_token(&self) -> Option<SyntaxToken> {
400 support::token(&self.syntax, SyntaxKind::GROUP_KW)
401 }
402}
403
404#[derive(Debug, Clone, PartialEq, Eq, Hash)]
405pub struct AlterIndex {
406 pub(crate) syntax: SyntaxNode,
407}
408impl AlterIndex {
409 #[inline]
410 pub fn name_ref(&self) -> Option<NameRef> {
411 support::child(&self.syntax)
412 }
413 #[inline]
414 pub fn alter_token(&self) -> Option<SyntaxToken> {
415 support::token(&self.syntax, SyntaxKind::ALTER_KW)
416 }
417 #[inline]
418 pub fn index_token(&self) -> Option<SyntaxToken> {
419 support::token(&self.syntax, SyntaxKind::INDEX_KW)
420 }
421}
422
423#[derive(Debug, Clone, PartialEq, Eq, Hash)]
424pub struct AlterLanguage {
425 pub(crate) syntax: SyntaxNode,
426}
427impl AlterLanguage {
428 #[inline]
429 pub fn name_ref(&self) -> Option<NameRef> {
430 support::child(&self.syntax)
431 }
432 #[inline]
433 pub fn alter_token(&self) -> Option<SyntaxToken> {
434 support::token(&self.syntax, SyntaxKind::ALTER_KW)
435 }
436 #[inline]
437 pub fn language_token(&self) -> Option<SyntaxToken> {
438 support::token(&self.syntax, SyntaxKind::LANGUAGE_KW)
439 }
440}
441
442#[derive(Debug, Clone, PartialEq, Eq, Hash)]
443pub struct AlterLargeObject {
444 pub(crate) syntax: SyntaxNode,
445}
446impl AlterLargeObject {
447 #[inline]
448 pub fn alter_token(&self) -> Option<SyntaxToken> {
449 support::token(&self.syntax, SyntaxKind::ALTER_KW)
450 }
451 #[inline]
452 pub fn large_token(&self) -> Option<SyntaxToken> {
453 support::token(&self.syntax, SyntaxKind::LARGE_KW)
454 }
455 #[inline]
456 pub fn object_token(&self) -> Option<SyntaxToken> {
457 support::token(&self.syntax, SyntaxKind::OBJECT_KW)
458 }
459}
460
461#[derive(Debug, Clone, PartialEq, Eq, Hash)]
462pub struct AlterMaterializedView {
463 pub(crate) syntax: SyntaxNode,
464}
465impl AlterMaterializedView {
466 #[inline]
467 pub fn name_ref(&self) -> Option<NameRef> {
468 support::child(&self.syntax)
469 }
470 #[inline]
471 pub fn alter_token(&self) -> Option<SyntaxToken> {
472 support::token(&self.syntax, SyntaxKind::ALTER_KW)
473 }
474 #[inline]
475 pub fn materialized_token(&self) -> Option<SyntaxToken> {
476 support::token(&self.syntax, SyntaxKind::MATERIALIZED_KW)
477 }
478 #[inline]
479 pub fn view_token(&self) -> Option<SyntaxToken> {
480 support::token(&self.syntax, SyntaxKind::VIEW_KW)
481 }
482}
483
484#[derive(Debug, Clone, PartialEq, Eq, Hash)]
485pub struct AlterOperator {
486 pub(crate) syntax: SyntaxNode,
487}
488impl AlterOperator {
489 #[inline]
490 pub fn alter_token(&self) -> Option<SyntaxToken> {
491 support::token(&self.syntax, SyntaxKind::ALTER_KW)
492 }
493 #[inline]
494 pub fn operator_token(&self) -> Option<SyntaxToken> {
495 support::token(&self.syntax, SyntaxKind::OPERATOR_KW)
496 }
497}
498
499#[derive(Debug, Clone, PartialEq, Eq, Hash)]
500pub struct AlterOperatorClass {
501 pub(crate) syntax: SyntaxNode,
502}
503impl AlterOperatorClass {
504 #[inline]
505 pub fn name_ref(&self) -> Option<NameRef> {
506 support::child(&self.syntax)
507 }
508 #[inline]
509 pub fn alter_token(&self) -> Option<SyntaxToken> {
510 support::token(&self.syntax, SyntaxKind::ALTER_KW)
511 }
512 #[inline]
513 pub fn class_token(&self) -> Option<SyntaxToken> {
514 support::token(&self.syntax, SyntaxKind::CLASS_KW)
515 }
516 #[inline]
517 pub fn operator_token(&self) -> Option<SyntaxToken> {
518 support::token(&self.syntax, SyntaxKind::OPERATOR_KW)
519 }
520 #[inline]
521 pub fn using_token(&self) -> Option<SyntaxToken> {
522 support::token(&self.syntax, SyntaxKind::USING_KW)
523 }
524}
525
526#[derive(Debug, Clone, PartialEq, Eq, Hash)]
527pub struct AlterOperatorFamily {
528 pub(crate) syntax: SyntaxNode,
529}
530impl AlterOperatorFamily {
531 #[inline]
532 pub fn name_ref(&self) -> Option<NameRef> {
533 support::child(&self.syntax)
534 }
535 #[inline]
536 pub fn alter_token(&self) -> Option<SyntaxToken> {
537 support::token(&self.syntax, SyntaxKind::ALTER_KW)
538 }
539 #[inline]
540 pub fn family_token(&self) -> Option<SyntaxToken> {
541 support::token(&self.syntax, SyntaxKind::FAMILY_KW)
542 }
543 #[inline]
544 pub fn operator_token(&self) -> Option<SyntaxToken> {
545 support::token(&self.syntax, SyntaxKind::OPERATOR_KW)
546 }
547 #[inline]
548 pub fn using_token(&self) -> Option<SyntaxToken> {
549 support::token(&self.syntax, SyntaxKind::USING_KW)
550 }
551}
552
553#[derive(Debug, Clone, PartialEq, Eq, Hash)]
554pub struct AlterPolicy {
555 pub(crate) syntax: SyntaxNode,
556}
557impl AlterPolicy {
558 #[inline]
559 pub fn name_ref(&self) -> Option<NameRef> {
560 support::child(&self.syntax)
561 }
562 #[inline]
563 pub fn alter_token(&self) -> Option<SyntaxToken> {
564 support::token(&self.syntax, SyntaxKind::ALTER_KW)
565 }
566 #[inline]
567 pub fn on_token(&self) -> Option<SyntaxToken> {
568 support::token(&self.syntax, SyntaxKind::ON_KW)
569 }
570 #[inline]
571 pub fn policy_token(&self) -> Option<SyntaxToken> {
572 support::token(&self.syntax, SyntaxKind::POLICY_KW)
573 }
574}
575
576#[derive(Debug, Clone, PartialEq, Eq, Hash)]
577pub struct AlterProcedure {
578 pub(crate) syntax: SyntaxNode,
579}
580impl AlterProcedure {
581 #[inline]
582 pub fn alter_token(&self) -> Option<SyntaxToken> {
583 support::token(&self.syntax, SyntaxKind::ALTER_KW)
584 }
585 #[inline]
586 pub fn procedure_token(&self) -> Option<SyntaxToken> {
587 support::token(&self.syntax, SyntaxKind::PROCEDURE_KW)
588 }
589}
590
591#[derive(Debug, Clone, PartialEq, Eq, Hash)]
592pub struct AlterPublication {
593 pub(crate) syntax: SyntaxNode,
594}
595impl AlterPublication {
596 #[inline]
597 pub fn name_ref(&self) -> Option<NameRef> {
598 support::child(&self.syntax)
599 }
600 #[inline]
601 pub fn alter_token(&self) -> Option<SyntaxToken> {
602 support::token(&self.syntax, SyntaxKind::ALTER_KW)
603 }
604 #[inline]
605 pub fn publication_token(&self) -> Option<SyntaxToken> {
606 support::token(&self.syntax, SyntaxKind::PUBLICATION_KW)
607 }
608}
609
610#[derive(Debug, Clone, PartialEq, Eq, Hash)]
611pub struct AlterRole {
612 pub(crate) syntax: SyntaxNode,
613}
614impl AlterRole {
615 #[inline]
616 pub fn alter_token(&self) -> Option<SyntaxToken> {
617 support::token(&self.syntax, SyntaxKind::ALTER_KW)
618 }
619 #[inline]
620 pub fn role_token(&self) -> Option<SyntaxToken> {
621 support::token(&self.syntax, SyntaxKind::ROLE_KW)
622 }
623}
624
625#[derive(Debug, Clone, PartialEq, Eq, Hash)]
626pub struct AlterRoutine {
627 pub(crate) syntax: SyntaxNode,
628}
629impl AlterRoutine {
630 #[inline]
631 pub fn alter_token(&self) -> Option<SyntaxToken> {
632 support::token(&self.syntax, SyntaxKind::ALTER_KW)
633 }
634 #[inline]
635 pub fn routine_token(&self) -> Option<SyntaxToken> {
636 support::token(&self.syntax, SyntaxKind::ROUTINE_KW)
637 }
638}
639
640#[derive(Debug, Clone, PartialEq, Eq, Hash)]
641pub struct AlterRule {
642 pub(crate) syntax: SyntaxNode,
643}
644impl AlterRule {
645 #[inline]
646 pub fn name_ref(&self) -> Option<NameRef> {
647 support::child(&self.syntax)
648 }
649 #[inline]
650 pub fn alter_token(&self) -> Option<SyntaxToken> {
651 support::token(&self.syntax, SyntaxKind::ALTER_KW)
652 }
653 #[inline]
654 pub fn on_token(&self) -> Option<SyntaxToken> {
655 support::token(&self.syntax, SyntaxKind::ON_KW)
656 }
657 #[inline]
658 pub fn rule_token(&self) -> Option<SyntaxToken> {
659 support::token(&self.syntax, SyntaxKind::RULE_KW)
660 }
661}
662
663#[derive(Debug, Clone, PartialEq, Eq, Hash)]
664pub struct AlterSchema {
665 pub(crate) syntax: SyntaxNode,
666}
667impl AlterSchema {
668 #[inline]
669 pub fn name_ref(&self) -> Option<NameRef> {
670 support::child(&self.syntax)
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 rename_token(&self) -> Option<SyntaxToken> {
678 support::token(&self.syntax, SyntaxKind::RENAME_KW)
679 }
680 #[inline]
681 pub fn schema_token(&self) -> Option<SyntaxToken> {
682 support::token(&self.syntax, SyntaxKind::SCHEMA_KW)
683 }
684 #[inline]
685 pub fn to_token(&self) -> Option<SyntaxToken> {
686 support::token(&self.syntax, SyntaxKind::TO_KW)
687 }
688}
689
690#[derive(Debug, Clone, PartialEq, Eq, Hash)]
691pub struct AlterSequence {
692 pub(crate) syntax: SyntaxNode,
693}
694impl AlterSequence {
695 #[inline]
696 pub fn name_ref(&self) -> Option<NameRef> {
697 support::child(&self.syntax)
698 }
699 #[inline]
700 pub fn alter_token(&self) -> Option<SyntaxToken> {
701 support::token(&self.syntax, SyntaxKind::ALTER_KW)
702 }
703 #[inline]
704 pub fn sequence_token(&self) -> Option<SyntaxToken> {
705 support::token(&self.syntax, SyntaxKind::SEQUENCE_KW)
706 }
707}
708
709#[derive(Debug, Clone, PartialEq, Eq, Hash)]
710pub struct AlterServer {
711 pub(crate) syntax: SyntaxNode,
712}
713impl AlterServer {
714 #[inline]
715 pub fn name_ref(&self) -> Option<NameRef> {
716 support::child(&self.syntax)
717 }
718 #[inline]
719 pub fn alter_token(&self) -> Option<SyntaxToken> {
720 support::token(&self.syntax, SyntaxKind::ALTER_KW)
721 }
722 #[inline]
723 pub fn server_token(&self) -> Option<SyntaxToken> {
724 support::token(&self.syntax, SyntaxKind::SERVER_KW)
725 }
726}
727
728#[derive(Debug, Clone, PartialEq, Eq, Hash)]
729pub struct AlterStatistics {
730 pub(crate) syntax: SyntaxNode,
731}
732impl AlterStatistics {
733 #[inline]
734 pub fn name_ref(&self) -> Option<NameRef> {
735 support::child(&self.syntax)
736 }
737 #[inline]
738 pub fn alter_token(&self) -> Option<SyntaxToken> {
739 support::token(&self.syntax, SyntaxKind::ALTER_KW)
740 }
741 #[inline]
742 pub fn statistics_token(&self) -> Option<SyntaxToken> {
743 support::token(&self.syntax, SyntaxKind::STATISTICS_KW)
744 }
745}
746
747#[derive(Debug, Clone, PartialEq, Eq, Hash)]
748pub struct AlterSubscription {
749 pub(crate) syntax: SyntaxNode,
750}
751impl AlterSubscription {
752 #[inline]
753 pub fn name_ref(&self) -> Option<NameRef> {
754 support::child(&self.syntax)
755 }
756 #[inline]
757 pub fn alter_token(&self) -> Option<SyntaxToken> {
758 support::token(&self.syntax, SyntaxKind::ALTER_KW)
759 }
760 #[inline]
761 pub fn subscription_token(&self) -> Option<SyntaxToken> {
762 support::token(&self.syntax, SyntaxKind::SUBSCRIPTION_KW)
763 }
764}
765
766#[derive(Debug, Clone, PartialEq, Eq, Hash)]
767pub struct AlterSystem {
768 pub(crate) syntax: SyntaxNode,
769}
770impl AlterSystem {
771 #[inline]
772 pub fn alter_token(&self) -> Option<SyntaxToken> {
773 support::token(&self.syntax, SyntaxKind::ALTER_KW)
774 }
775 #[inline]
776 pub fn set_token(&self) -> Option<SyntaxToken> {
777 support::token(&self.syntax, SyntaxKind::SET_KW)
778 }
779 #[inline]
780 pub fn system_token(&self) -> Option<SyntaxToken> {
781 support::token(&self.syntax, SyntaxKind::SYSTEM_KW)
782 }
783}
784
785#[derive(Debug, Clone, PartialEq, Eq, Hash)]
786pub struct AlterTable {
787 pub(crate) syntax: SyntaxNode,
788}
789impl AlterTable {
790 #[inline]
791 pub fn actions(&self) -> AstChildren<AlterTableAction> {
792 support::children(&self.syntax)
793 }
794 #[inline]
795 pub fn relation_name(&self) -> Option<RelationName> {
796 support::child(&self.syntax)
797 }
798 #[inline]
799 pub fn alter_token(&self) -> Option<SyntaxToken> {
800 support::token(&self.syntax, SyntaxKind::ALTER_KW)
801 }
802 #[inline]
803 pub fn table_token(&self) -> Option<SyntaxToken> {
804 support::token(&self.syntax, SyntaxKind::TABLE_KW)
805 }
806}
807
808#[derive(Debug, Clone, PartialEq, Eq, Hash)]
809pub struct AlterTablespace {
810 pub(crate) syntax: SyntaxNode,
811}
812impl AlterTablespace {
813 #[inline]
814 pub fn name_ref(&self) -> Option<NameRef> {
815 support::child(&self.syntax)
816 }
817 #[inline]
818 pub fn alter_token(&self) -> Option<SyntaxToken> {
819 support::token(&self.syntax, SyntaxKind::ALTER_KW)
820 }
821 #[inline]
822 pub fn tablespace_token(&self) -> Option<SyntaxToken> {
823 support::token(&self.syntax, SyntaxKind::TABLESPACE_KW)
824 }
825}
826
827#[derive(Debug, Clone, PartialEq, Eq, Hash)]
828pub struct AlterTextSearchConfiguration {
829 pub(crate) syntax: SyntaxNode,
830}
831impl AlterTextSearchConfiguration {
832 #[inline]
833 pub fn name_ref(&self) -> Option<NameRef> {
834 support::child(&self.syntax)
835 }
836 #[inline]
837 pub fn alter_token(&self) -> Option<SyntaxToken> {
838 support::token(&self.syntax, SyntaxKind::ALTER_KW)
839 }
840 #[inline]
841 pub fn configuration_token(&self) -> Option<SyntaxToken> {
842 support::token(&self.syntax, SyntaxKind::CONFIGURATION_KW)
843 }
844 #[inline]
845 pub fn search_token(&self) -> Option<SyntaxToken> {
846 support::token(&self.syntax, SyntaxKind::SEARCH_KW)
847 }
848 #[inline]
849 pub fn text_token(&self) -> Option<SyntaxToken> {
850 support::token(&self.syntax, SyntaxKind::TEXT_KW)
851 }
852}
853
854#[derive(Debug, Clone, PartialEq, Eq, Hash)]
855pub struct AlterTextSearchDictionary {
856 pub(crate) syntax: SyntaxNode,
857}
858impl AlterTextSearchDictionary {
859 #[inline]
860 pub fn name_ref(&self) -> Option<NameRef> {
861 support::child(&self.syntax)
862 }
863 #[inline]
864 pub fn alter_token(&self) -> Option<SyntaxToken> {
865 support::token(&self.syntax, SyntaxKind::ALTER_KW)
866 }
867 #[inline]
868 pub fn dictionary_token(&self) -> Option<SyntaxToken> {
869 support::token(&self.syntax, SyntaxKind::DICTIONARY_KW)
870 }
871 #[inline]
872 pub fn search_token(&self) -> Option<SyntaxToken> {
873 support::token(&self.syntax, SyntaxKind::SEARCH_KW)
874 }
875 #[inline]
876 pub fn text_token(&self) -> Option<SyntaxToken> {
877 support::token(&self.syntax, SyntaxKind::TEXT_KW)
878 }
879}
880
881#[derive(Debug, Clone, PartialEq, Eq, Hash)]
882pub struct AlterTextSearchParser {
883 pub(crate) syntax: SyntaxNode,
884}
885impl AlterTextSearchParser {
886 #[inline]
887 pub fn name_ref(&self) -> Option<NameRef> {
888 support::child(&self.syntax)
889 }
890 #[inline]
891 pub fn alter_token(&self) -> Option<SyntaxToken> {
892 support::token(&self.syntax, SyntaxKind::ALTER_KW)
893 }
894 #[inline]
895 pub fn parser_token(&self) -> Option<SyntaxToken> {
896 support::token(&self.syntax, SyntaxKind::PARSER_KW)
897 }
898 #[inline]
899 pub fn search_token(&self) -> Option<SyntaxToken> {
900 support::token(&self.syntax, SyntaxKind::SEARCH_KW)
901 }
902 #[inline]
903 pub fn text_token(&self) -> Option<SyntaxToken> {
904 support::token(&self.syntax, SyntaxKind::TEXT_KW)
905 }
906}
907
908#[derive(Debug, Clone, PartialEq, Eq, Hash)]
909pub struct AlterTextSearchTemplate {
910 pub(crate) syntax: SyntaxNode,
911}
912impl AlterTextSearchTemplate {
913 #[inline]
914 pub fn name_ref(&self) -> Option<NameRef> {
915 support::child(&self.syntax)
916 }
917 #[inline]
918 pub fn alter_token(&self) -> Option<SyntaxToken> {
919 support::token(&self.syntax, SyntaxKind::ALTER_KW)
920 }
921 #[inline]
922 pub fn search_token(&self) -> Option<SyntaxToken> {
923 support::token(&self.syntax, SyntaxKind::SEARCH_KW)
924 }
925 #[inline]
926 pub fn template_token(&self) -> Option<SyntaxToken> {
927 support::token(&self.syntax, SyntaxKind::TEMPLATE_KW)
928 }
929 #[inline]
930 pub fn text_token(&self) -> Option<SyntaxToken> {
931 support::token(&self.syntax, SyntaxKind::TEXT_KW)
932 }
933}
934
935#[derive(Debug, Clone, PartialEq, Eq, Hash)]
936pub struct AlterTrigger {
937 pub(crate) syntax: SyntaxNode,
938}
939impl AlterTrigger {
940 #[inline]
941 pub fn name_ref(&self) -> Option<NameRef> {
942 support::child(&self.syntax)
943 }
944 #[inline]
945 pub fn alter_token(&self) -> Option<SyntaxToken> {
946 support::token(&self.syntax, SyntaxKind::ALTER_KW)
947 }
948 #[inline]
949 pub fn on_token(&self) -> Option<SyntaxToken> {
950 support::token(&self.syntax, SyntaxKind::ON_KW)
951 }
952 #[inline]
953 pub fn trigger_token(&self) -> Option<SyntaxToken> {
954 support::token(&self.syntax, SyntaxKind::TRIGGER_KW)
955 }
956}
957
958#[derive(Debug, Clone, PartialEq, Eq, Hash)]
959pub struct AlterType {
960 pub(crate) syntax: SyntaxNode,
961}
962impl AlterType {
963 #[inline]
964 pub fn ty(&self) -> Option<Type> {
965 support::child(&self.syntax)
966 }
967 #[inline]
968 pub fn alter_token(&self) -> Option<SyntaxToken> {
969 support::token(&self.syntax, SyntaxKind::ALTER_KW)
970 }
971 #[inline]
972 pub fn type_token(&self) -> Option<SyntaxToken> {
973 support::token(&self.syntax, SyntaxKind::TYPE_KW)
974 }
975}
976
977#[derive(Debug, Clone, PartialEq, Eq, Hash)]
978pub struct AlterUser {
979 pub(crate) syntax: SyntaxNode,
980}
981impl AlterUser {
982 #[inline]
983 pub fn name_ref(&self) -> Option<NameRef> {
984 support::child(&self.syntax)
985 }
986 #[inline]
987 pub fn alter_token(&self) -> Option<SyntaxToken> {
988 support::token(&self.syntax, SyntaxKind::ALTER_KW)
989 }
990 #[inline]
991 pub fn user_token(&self) -> Option<SyntaxToken> {
992 support::token(&self.syntax, SyntaxKind::USER_KW)
993 }
994}
995
996#[derive(Debug, Clone, PartialEq, Eq, Hash)]
997pub struct AlterUserMapping {
998 pub(crate) syntax: SyntaxNode,
999}
1000impl AlterUserMapping {
1001 #[inline]
1002 pub fn name_ref(&self) -> Option<NameRef> {
1003 support::child(&self.syntax)
1004 }
1005 #[inline]
1006 pub fn alter_token(&self) -> Option<SyntaxToken> {
1007 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1008 }
1009 #[inline]
1010 pub fn for_token(&self) -> Option<SyntaxToken> {
1011 support::token(&self.syntax, SyntaxKind::FOR_KW)
1012 }
1013 #[inline]
1014 pub fn mapping_token(&self) -> Option<SyntaxToken> {
1015 support::token(&self.syntax, SyntaxKind::MAPPING_KW)
1016 }
1017 #[inline]
1018 pub fn server_token(&self) -> Option<SyntaxToken> {
1019 support::token(&self.syntax, SyntaxKind::SERVER_KW)
1020 }
1021 #[inline]
1022 pub fn user_token(&self) -> Option<SyntaxToken> {
1023 support::token(&self.syntax, SyntaxKind::USER_KW)
1024 }
1025}
1026
1027#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1028pub struct AlterView {
1029 pub(crate) syntax: SyntaxNode,
1030}
1031impl AlterView {
1032 #[inline]
1033 pub fn name_ref(&self) -> Option<NameRef> {
1034 support::child(&self.syntax)
1035 }
1036 #[inline]
1037 pub fn alter_token(&self) -> Option<SyntaxToken> {
1038 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1039 }
1040 #[inline]
1041 pub fn view_token(&self) -> Option<SyntaxToken> {
1042 support::token(&self.syntax, SyntaxKind::VIEW_KW)
1043 }
1044}
1045
1046#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1047pub struct Analyze {
1048 pub(crate) syntax: SyntaxNode,
1049}
1050impl Analyze {
1051 #[inline]
1052 pub fn analyze_token(&self) -> Option<SyntaxToken> {
1053 support::token(&self.syntax, SyntaxKind::ANALYZE_KW)
1054 }
1055 #[inline]
1056 pub fn verbose_token(&self) -> Option<SyntaxToken> {
1057 support::token(&self.syntax, SyntaxKind::VERBOSE_KW)
1058 }
1059}
1060
1061#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1062pub struct Arg {
1063 pub(crate) syntax: SyntaxNode,
1064}
1065impl Arg {
1066 #[inline]
1067 pub fn expr(&self) -> Option<Expr> {
1068 support::child(&self.syntax)
1069 }
1070}
1071
1072#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1073pub struct ArgList {
1074 pub(crate) syntax: SyntaxNode,
1075}
1076impl ArgList {
1077 #[inline]
1078 pub fn args(&self) -> AstChildren<Expr> {
1079 support::children(&self.syntax)
1080 }
1081 #[inline]
1082 pub fn expr(&self) -> Option<Expr> {
1083 support::child(&self.syntax)
1084 }
1085 #[inline]
1086 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
1087 support::token(&self.syntax, SyntaxKind::L_PAREN)
1088 }
1089 #[inline]
1090 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
1091 support::token(&self.syntax, SyntaxKind::R_PAREN)
1092 }
1093 #[inline]
1094 pub fn star_token(&self) -> Option<SyntaxToken> {
1095 support::token(&self.syntax, SyntaxKind::STAR)
1096 }
1097 #[inline]
1098 pub fn all_token(&self) -> Option<SyntaxToken> {
1099 support::token(&self.syntax, SyntaxKind::ALL_KW)
1100 }
1101 #[inline]
1102 pub fn distinct_token(&self) -> Option<SyntaxToken> {
1103 support::token(&self.syntax, SyntaxKind::DISTINCT_KW)
1104 }
1105 #[inline]
1106 pub fn variadic_token(&self) -> Option<SyntaxToken> {
1107 support::token(&self.syntax, SyntaxKind::VARIADIC_KW)
1108 }
1109}
1110
1111#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1112pub struct ArrayExpr {
1113 pub(crate) syntax: SyntaxNode,
1114}
1115impl ArrayExpr {
1116 #[inline]
1117 pub fn exprs(&self) -> AstChildren<Expr> {
1118 support::children(&self.syntax)
1119 }
1120 #[inline]
1121 pub fn select(&self) -> Option<Select> {
1122 support::child(&self.syntax)
1123 }
1124 #[inline]
1125 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
1126 support::token(&self.syntax, SyntaxKind::L_PAREN)
1127 }
1128 #[inline]
1129 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
1130 support::token(&self.syntax, SyntaxKind::R_PAREN)
1131 }
1132 #[inline]
1133 pub fn l_brack_token(&self) -> Option<SyntaxToken> {
1134 support::token(&self.syntax, SyntaxKind::L_BRACK)
1135 }
1136 #[inline]
1137 pub fn r_brack_token(&self) -> Option<SyntaxToken> {
1138 support::token(&self.syntax, SyntaxKind::R_BRACK)
1139 }
1140 #[inline]
1141 pub fn array_token(&self) -> Option<SyntaxToken> {
1142 support::token(&self.syntax, SyntaxKind::ARRAY_KW)
1143 }
1144}
1145
1146#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1147pub struct ArrayType {
1148 pub(crate) syntax: SyntaxNode,
1149}
1150impl ArrayType {
1151 #[inline]
1152 pub fn expr(&self) -> Option<Expr> {
1153 support::child(&self.syntax)
1154 }
1155 #[inline]
1156 pub fn name_ref(&self) -> Option<NameRef> {
1157 support::child(&self.syntax)
1158 }
1159 #[inline]
1160 pub fn ty(&self) -> Option<Type> {
1161 support::child(&self.syntax)
1162 }
1163 #[inline]
1164 pub fn l_brack_token(&self) -> Option<SyntaxToken> {
1165 support::token(&self.syntax, SyntaxKind::L_BRACK)
1166 }
1167 #[inline]
1168 pub fn r_brack_token(&self) -> Option<SyntaxToken> {
1169 support::token(&self.syntax, SyntaxKind::R_BRACK)
1170 }
1171 #[inline]
1172 pub fn array_token(&self) -> Option<SyntaxToken> {
1173 support::token(&self.syntax, SyntaxKind::ARRAY_KW)
1174 }
1175}
1176
1177#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1178pub struct AsFuncOption {
1179 pub(crate) syntax: SyntaxNode,
1180}
1181impl AsFuncOption {
1182 #[inline]
1183 pub fn definition(&self) -> Option<Literal> {
1184 support::child(&self.syntax)
1185 }
1186 #[inline]
1187 pub fn link_symbol(&self) -> Option<Literal> {
1188 support::child(&self.syntax)
1189 }
1190 #[inline]
1191 pub fn obj_file(&self) -> Option<Literal> {
1192 support::child(&self.syntax)
1193 }
1194 #[inline]
1195 pub fn comma_token(&self) -> Option<SyntaxToken> {
1196 support::token(&self.syntax, SyntaxKind::COMMA)
1197 }
1198 #[inline]
1199 pub fn as_token(&self) -> Option<SyntaxToken> {
1200 support::token(&self.syntax, SyntaxKind::AS_KW)
1201 }
1202}
1203
1204#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1205pub struct AsName {
1206 pub(crate) syntax: SyntaxNode,
1207}
1208impl AsName {
1209 #[inline]
1210 pub fn name(&self) -> Option<Name> {
1211 support::child(&self.syntax)
1212 }
1213 #[inline]
1214 pub fn as_token(&self) -> Option<SyntaxToken> {
1215 support::token(&self.syntax, SyntaxKind::AS_KW)
1216 }
1217}
1218
1219#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1220pub struct AtTimeZone {
1221 pub(crate) syntax: SyntaxNode,
1222}
1223impl AtTimeZone {
1224 #[inline]
1225 pub fn at_token(&self) -> Option<SyntaxToken> {
1226 support::token(&self.syntax, SyntaxKind::AT_KW)
1227 }
1228 #[inline]
1229 pub fn time_token(&self) -> Option<SyntaxToken> {
1230 support::token(&self.syntax, SyntaxKind::TIME_KW)
1231 }
1232 #[inline]
1233 pub fn zone_token(&self) -> Option<SyntaxToken> {
1234 support::token(&self.syntax, SyntaxKind::ZONE_KW)
1235 }
1236}
1237
1238#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1239pub struct AttachPartition {
1240 pub(crate) syntax: SyntaxNode,
1241}
1242impl AttachPartition {
1243 #[inline]
1244 pub fn partition_type(&self) -> Option<PartitionType> {
1245 support::child(&self.syntax)
1246 }
1247 #[inline]
1248 pub fn path(&self) -> Option<Path> {
1249 support::child(&self.syntax)
1250 }
1251 #[inline]
1252 pub fn attach_token(&self) -> Option<SyntaxToken> {
1253 support::token(&self.syntax, SyntaxKind::ATTACH_KW)
1254 }
1255 #[inline]
1256 pub fn partition_token(&self) -> Option<SyntaxToken> {
1257 support::token(&self.syntax, SyntaxKind::PARTITION_KW)
1258 }
1259}
1260
1261#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1262pub struct AttributeList {
1263 pub(crate) syntax: SyntaxNode,
1264}
1265impl AttributeList {
1266 #[inline]
1267 pub fn attribute_options(&self) -> AstChildren<AttributeOption> {
1268 support::children(&self.syntax)
1269 }
1270 #[inline]
1271 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
1272 support::token(&self.syntax, SyntaxKind::L_PAREN)
1273 }
1274 #[inline]
1275 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
1276 support::token(&self.syntax, SyntaxKind::R_PAREN)
1277 }
1278}
1279
1280#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1281pub struct AttributeOption {
1282 pub(crate) syntax: SyntaxNode,
1283}
1284impl AttributeOption {
1285 #[inline]
1286 pub fn eq_token(&self) -> Option<SyntaxToken> {
1287 support::token(&self.syntax, SyntaxKind::EQ)
1288 }
1289}
1290
1291#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1292pub struct Begin {
1293 pub(crate) syntax: SyntaxNode,
1294}
1295impl Begin {
1296 #[inline]
1297 pub fn transaction_mode_list(&self) -> Option<TransactionModeList> {
1298 support::child(&self.syntax)
1299 }
1300 #[inline]
1301 pub fn begin_token(&self) -> Option<SyntaxToken> {
1302 support::token(&self.syntax, SyntaxKind::BEGIN_KW)
1303 }
1304 #[inline]
1305 pub fn start_token(&self) -> Option<SyntaxToken> {
1306 support::token(&self.syntax, SyntaxKind::START_KW)
1307 }
1308 #[inline]
1309 pub fn transaction_token(&self) -> Option<SyntaxToken> {
1310 support::token(&self.syntax, SyntaxKind::TRANSACTION_KW)
1311 }
1312 #[inline]
1313 pub fn work_token(&self) -> Option<SyntaxToken> {
1314 support::token(&self.syntax, SyntaxKind::WORK_KW)
1315 }
1316}
1317
1318#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1319pub struct BeginFuncOption {
1320 pub(crate) syntax: SyntaxNode,
1321}
1322impl BeginFuncOption {
1323 #[inline]
1324 pub fn atomic_token(&self) -> Option<SyntaxToken> {
1325 support::token(&self.syntax, SyntaxKind::ATOMIC_KW)
1326 }
1327 #[inline]
1328 pub fn begin_token(&self) -> Option<SyntaxToken> {
1329 support::token(&self.syntax, SyntaxKind::BEGIN_KW)
1330 }
1331 #[inline]
1332 pub fn end_token(&self) -> Option<SyntaxToken> {
1333 support::token(&self.syntax, SyntaxKind::END_KW)
1334 }
1335}
1336
1337#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1338pub struct BetweenExpr {
1339 pub(crate) syntax: SyntaxNode,
1340}
1341impl BetweenExpr {
1342 #[inline]
1343 pub fn end(&self) -> Option<Expr> {
1344 support::child(&self.syntax)
1345 }
1346 #[inline]
1347 pub fn start(&self) -> Option<Expr> {
1348 support::child(&self.syntax)
1349 }
1350 #[inline]
1351 pub fn target(&self) -> Option<Expr> {
1352 support::child(&self.syntax)
1353 }
1354 #[inline]
1355 pub fn and_token(&self) -> Option<SyntaxToken> {
1356 support::token(&self.syntax, SyntaxKind::AND_KW)
1357 }
1358 #[inline]
1359 pub fn between_token(&self) -> Option<SyntaxToken> {
1360 support::token(&self.syntax, SyntaxKind::BETWEEN_KW)
1361 }
1362}
1363
1364#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1365pub struct BinExpr {
1366 pub(crate) syntax: SyntaxNode,
1367}
1368impl BinExpr {
1369 #[inline]
1370 pub fn op(&self) -> Option<Op> {
1371 support::child(&self.syntax)
1372 }
1373}
1374
1375#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1376pub struct BitType {
1377 pub(crate) syntax: SyntaxNode,
1378}
1379impl BitType {
1380 #[inline]
1381 pub fn arg_list(&self) -> Option<ArgList> {
1382 support::child(&self.syntax)
1383 }
1384 #[inline]
1385 pub fn bit_token(&self) -> Option<SyntaxToken> {
1386 support::token(&self.syntax, SyntaxKind::BIT_KW)
1387 }
1388 #[inline]
1389 pub fn varying_token(&self) -> Option<SyntaxToken> {
1390 support::token(&self.syntax, SyntaxKind::VARYING_KW)
1391 }
1392}
1393
1394#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1395pub struct Call {
1396 pub(crate) syntax: SyntaxNode,
1397}
1398impl Call {
1399 #[inline]
1400 pub fn call_token(&self) -> Option<SyntaxToken> {
1401 support::token(&self.syntax, SyntaxKind::CALL_KW)
1402 }
1403}
1404
1405#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1406pub struct CallExpr {
1407 pub(crate) syntax: SyntaxNode,
1408}
1409impl CallExpr {
1410 #[inline]
1411 pub fn arg_list(&self) -> Option<ArgList> {
1412 support::child(&self.syntax)
1413 }
1414 #[inline]
1415 pub fn expr(&self) -> Option<Expr> {
1416 support::child(&self.syntax)
1417 }
1418}
1419
1420#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1421pub struct Cascade {
1422 pub(crate) syntax: SyntaxNode,
1423}
1424impl Cascade {
1425 #[inline]
1426 pub fn cascade_token(&self) -> Option<SyntaxToken> {
1427 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
1428 }
1429}
1430
1431#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1432pub struct CaseExpr {
1433 pub(crate) syntax: SyntaxNode,
1434}
1435impl CaseExpr {
1436 #[inline]
1437 pub fn else_clause(&self) -> Option<ElseClause> {
1438 support::child(&self.syntax)
1439 }
1440 #[inline]
1441 pub fn expr(&self) -> Option<Expr> {
1442 support::child(&self.syntax)
1443 }
1444 #[inline]
1445 pub fn when_clause_list(&self) -> Option<WhenClauseList> {
1446 support::child(&self.syntax)
1447 }
1448 #[inline]
1449 pub fn case_token(&self) -> Option<SyntaxToken> {
1450 support::token(&self.syntax, SyntaxKind::CASE_KW)
1451 }
1452}
1453
1454#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1455pub struct CastExpr {
1456 pub(crate) syntax: SyntaxNode,
1457}
1458impl CastExpr {
1459 #[inline]
1460 pub fn colon_colon(&self) -> Option<ColonColon> {
1461 support::child(&self.syntax)
1462 }
1463 #[inline]
1464 pub fn expr(&self) -> Option<Expr> {
1465 support::child(&self.syntax)
1466 }
1467 #[inline]
1468 pub fn ty(&self) -> Option<Type> {
1469 support::child(&self.syntax)
1470 }
1471 #[inline]
1472 pub fn as_token(&self) -> Option<SyntaxToken> {
1473 support::token(&self.syntax, SyntaxKind::AS_KW)
1474 }
1475}
1476
1477#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1478pub struct CharType {
1479 pub(crate) syntax: SyntaxNode,
1480}
1481impl CharType {
1482 #[inline]
1483 pub fn arg_list(&self) -> Option<ArgList> {
1484 support::child(&self.syntax)
1485 }
1486 #[inline]
1487 pub fn char_token(&self) -> Option<SyntaxToken> {
1488 support::token(&self.syntax, SyntaxKind::CHAR_KW)
1489 }
1490 #[inline]
1491 pub fn character_token(&self) -> Option<SyntaxToken> {
1492 support::token(&self.syntax, SyntaxKind::CHARACTER_KW)
1493 }
1494 #[inline]
1495 pub fn nchar_token(&self) -> Option<SyntaxToken> {
1496 support::token(&self.syntax, SyntaxKind::NCHAR_KW)
1497 }
1498 #[inline]
1499 pub fn varchar_token(&self) -> Option<SyntaxToken> {
1500 support::token(&self.syntax, SyntaxKind::VARCHAR_KW)
1501 }
1502 #[inline]
1503 pub fn varying_token(&self) -> Option<SyntaxToken> {
1504 support::token(&self.syntax, SyntaxKind::VARYING_KW)
1505 }
1506}
1507
1508#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1509pub struct CheckConstraint {
1510 pub(crate) syntax: SyntaxNode,
1511}
1512impl CheckConstraint {
1513 #[inline]
1514 pub fn expr(&self) -> Option<Expr> {
1515 support::child(&self.syntax)
1516 }
1517 #[inline]
1518 pub fn name_ref(&self) -> Option<NameRef> {
1519 support::child(&self.syntax)
1520 }
1521 #[inline]
1522 pub fn no_inherit(&self) -> Option<NoInherit> {
1523 support::child(&self.syntax)
1524 }
1525 #[inline]
1526 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
1527 support::token(&self.syntax, SyntaxKind::L_PAREN)
1528 }
1529 #[inline]
1530 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
1531 support::token(&self.syntax, SyntaxKind::R_PAREN)
1532 }
1533 #[inline]
1534 pub fn check_token(&self) -> Option<SyntaxToken> {
1535 support::token(&self.syntax, SyntaxKind::CHECK_KW)
1536 }
1537 #[inline]
1538 pub fn constraint_token(&self) -> Option<SyntaxToken> {
1539 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
1540 }
1541}
1542
1543#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1544pub struct Checkpoint {
1545 pub(crate) syntax: SyntaxNode,
1546}
1547impl Checkpoint {
1548 #[inline]
1549 pub fn checkpoint_token(&self) -> Option<SyntaxToken> {
1550 support::token(&self.syntax, SyntaxKind::CHECKPOINT_KW)
1551 }
1552}
1553
1554#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1555pub struct Close {
1556 pub(crate) syntax: SyntaxNode,
1557}
1558impl Close {
1559 #[inline]
1560 pub fn close_token(&self) -> Option<SyntaxToken> {
1561 support::token(&self.syntax, SyntaxKind::CLOSE_KW)
1562 }
1563}
1564
1565#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1566pub struct Cluster {
1567 pub(crate) syntax: SyntaxNode,
1568}
1569impl Cluster {
1570 #[inline]
1571 pub fn cluster_token(&self) -> Option<SyntaxToken> {
1572 support::token(&self.syntax, SyntaxKind::CLUSTER_KW)
1573 }
1574 #[inline]
1575 pub fn verbose_token(&self) -> Option<SyntaxToken> {
1576 support::token(&self.syntax, SyntaxKind::VERBOSE_KW)
1577 }
1578}
1579
1580#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1581pub struct ClusterOn {
1582 pub(crate) syntax: SyntaxNode,
1583}
1584impl ClusterOn {
1585 #[inline]
1586 pub fn cluster_token(&self) -> Option<SyntaxToken> {
1587 support::token(&self.syntax, SyntaxKind::CLUSTER_KW)
1588 }
1589 #[inline]
1590 pub fn on_token(&self) -> Option<SyntaxToken> {
1591 support::token(&self.syntax, SyntaxKind::ON_KW)
1592 }
1593}
1594
1595#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1596pub struct Collate {
1597 pub(crate) syntax: SyntaxNode,
1598}
1599impl Collate {
1600 #[inline]
1601 pub fn path(&self) -> Option<Path> {
1602 support::child(&self.syntax)
1603 }
1604 #[inline]
1605 pub fn collate_token(&self) -> Option<SyntaxToken> {
1606 support::token(&self.syntax, SyntaxKind::COLLATE_KW)
1607 }
1608}
1609
1610#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1611pub struct ColonColon {
1612 pub(crate) syntax: SyntaxNode,
1613}
1614impl ColonColon {
1615 #[inline]
1616 pub fn colon_token(&self) -> Option<SyntaxToken> {
1617 support::token(&self.syntax, SyntaxKind::COLON)
1618 }
1619}
1620
1621#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1622pub struct ColonEq {
1623 pub(crate) syntax: SyntaxNode,
1624}
1625impl ColonEq {
1626 #[inline]
1627 pub fn colon_token(&self) -> Option<SyntaxToken> {
1628 support::token(&self.syntax, SyntaxKind::COLON)
1629 }
1630 #[inline]
1631 pub fn eq_token(&self) -> Option<SyntaxToken> {
1632 support::token(&self.syntax, SyntaxKind::EQ)
1633 }
1634}
1635
1636#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1637pub struct Column {
1638 pub(crate) syntax: SyntaxNode,
1639}
1640impl Column {
1641 #[inline]
1642 pub fn collate(&self) -> Option<Collate> {
1643 support::child(&self.syntax)
1644 }
1645 #[inline]
1646 pub fn compression_method(&self) -> Option<CompressionMethod> {
1647 support::child(&self.syntax)
1648 }
1649 #[inline]
1650 pub fn constraint(&self) -> Option<ColumnConstraint> {
1651 support::child(&self.syntax)
1652 }
1653 #[inline]
1654 pub fn deferrable_constraint_option(&self) -> Option<DeferrableConstraintOption> {
1655 support::child(&self.syntax)
1656 }
1657 #[inline]
1658 pub fn enforced(&self) -> Option<Enforced> {
1659 support::child(&self.syntax)
1660 }
1661 #[inline]
1662 pub fn index_expr(&self) -> Option<IndexExpr> {
1663 support::child(&self.syntax)
1664 }
1665 #[inline]
1666 pub fn initially_deferred_constraint_option(
1667 &self,
1668 ) -> Option<InitiallyDeferredConstraintOption> {
1669 support::child(&self.syntax)
1670 }
1671 #[inline]
1672 pub fn initially_immediate_constraint_option(
1673 &self,
1674 ) -> Option<InitiallyImmediateConstraintOption> {
1675 support::child(&self.syntax)
1676 }
1677 #[inline]
1678 pub fn name(&self) -> Option<Name> {
1679 support::child(&self.syntax)
1680 }
1681 #[inline]
1682 pub fn not_deferrable_constraint_option(&self) -> Option<NotDeferrableConstraintOption> {
1683 support::child(&self.syntax)
1684 }
1685 #[inline]
1686 pub fn not_enforced(&self) -> Option<NotEnforced> {
1687 support::child(&self.syntax)
1688 }
1689 #[inline]
1690 pub fn storage(&self) -> Option<Storage> {
1691 support::child(&self.syntax)
1692 }
1693 #[inline]
1694 pub fn ty(&self) -> Option<Type> {
1695 support::child(&self.syntax)
1696 }
1697 #[inline]
1698 pub fn with_options(&self) -> Option<WithOptions> {
1699 support::child(&self.syntax)
1700 }
1701 #[inline]
1702 pub fn period_token(&self) -> Option<SyntaxToken> {
1703 support::token(&self.syntax, SyntaxKind::PERIOD_KW)
1704 }
1705}
1706
1707#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1708pub struct ColumnList {
1709 pub(crate) syntax: SyntaxNode,
1710}
1711impl ColumnList {
1712 #[inline]
1713 pub fn columns(&self) -> AstChildren<Column> {
1714 support::children(&self.syntax)
1715 }
1716 #[inline]
1717 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
1718 support::token(&self.syntax, SyntaxKind::L_PAREN)
1719 }
1720 #[inline]
1721 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
1722 support::token(&self.syntax, SyntaxKind::R_PAREN)
1723 }
1724}
1725
1726#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1727pub struct CommentOn {
1728 pub(crate) syntax: SyntaxNode,
1729}
1730impl CommentOn {
1731 #[inline]
1732 pub fn comment_token(&self) -> Option<SyntaxToken> {
1733 support::token(&self.syntax, SyntaxKind::COMMENT_KW)
1734 }
1735 #[inline]
1736 pub fn on_token(&self) -> Option<SyntaxToken> {
1737 support::token(&self.syntax, SyntaxKind::ON_KW)
1738 }
1739}
1740
1741#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1742pub struct Commit {
1743 pub(crate) syntax: SyntaxNode,
1744}
1745impl Commit {
1746 #[inline]
1747 pub fn literal(&self) -> Option<Literal> {
1748 support::child(&self.syntax)
1749 }
1750 #[inline]
1751 pub fn and_token(&self) -> Option<SyntaxToken> {
1752 support::token(&self.syntax, SyntaxKind::AND_KW)
1753 }
1754 #[inline]
1755 pub fn chain_token(&self) -> Option<SyntaxToken> {
1756 support::token(&self.syntax, SyntaxKind::CHAIN_KW)
1757 }
1758 #[inline]
1759 pub fn commit_token(&self) -> Option<SyntaxToken> {
1760 support::token(&self.syntax, SyntaxKind::COMMIT_KW)
1761 }
1762 #[inline]
1763 pub fn no_token(&self) -> Option<SyntaxToken> {
1764 support::token(&self.syntax, SyntaxKind::NO_KW)
1765 }
1766 #[inline]
1767 pub fn prepared_token(&self) -> Option<SyntaxToken> {
1768 support::token(&self.syntax, SyntaxKind::PREPARED_KW)
1769 }
1770 #[inline]
1771 pub fn transaction_token(&self) -> Option<SyntaxToken> {
1772 support::token(&self.syntax, SyntaxKind::TRANSACTION_KW)
1773 }
1774 #[inline]
1775 pub fn work_token(&self) -> Option<SyntaxToken> {
1776 support::token(&self.syntax, SyntaxKind::WORK_KW)
1777 }
1778}
1779
1780#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1781pub struct CompoundSelect {
1782 pub(crate) syntax: SyntaxNode,
1783}
1784impl CompoundSelect {
1785 #[inline]
1786 pub fn select(&self) -> Option<Select> {
1787 support::child(&self.syntax)
1788 }
1789}
1790
1791#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1792pub struct CompressionMethod {
1793 pub(crate) syntax: SyntaxNode,
1794}
1795impl CompressionMethod {
1796 #[inline]
1797 pub fn compression_token(&self) -> Option<SyntaxToken> {
1798 support::token(&self.syntax, SyntaxKind::COMPRESSION_KW)
1799 }
1800 #[inline]
1801 pub fn default_token(&self) -> Option<SyntaxToken> {
1802 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
1803 }
1804 #[inline]
1805 pub fn ident_token(&self) -> Option<SyntaxToken> {
1806 support::token(&self.syntax, SyntaxKind::IDENT)
1807 }
1808}
1809
1810#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1811pub struct ConstraintExclusion {
1812 pub(crate) syntax: SyntaxNode,
1813}
1814impl ConstraintExclusion {
1815 #[inline]
1816 pub fn with_token(&self) -> Option<SyntaxToken> {
1817 support::token(&self.syntax, SyntaxKind::WITH_KW)
1818 }
1819}
1820
1821#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1822pub struct ConstraintExclusionList {
1823 pub(crate) syntax: SyntaxNode,
1824}
1825impl ConstraintExclusionList {
1826 #[inline]
1827 pub fn exclude_token(&self) -> Option<SyntaxToken> {
1828 support::token(&self.syntax, SyntaxKind::EXCLUDE_KW)
1829 }
1830}
1831
1832#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1833pub struct ConstraintIncludeClause {
1834 pub(crate) syntax: SyntaxNode,
1835}
1836impl ConstraintIncludeClause {
1837 #[inline]
1838 pub fn include_token(&self) -> Option<SyntaxToken> {
1839 support::token(&self.syntax, SyntaxKind::INCLUDE_KW)
1840 }
1841}
1842
1843#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1844pub struct ConstraintIndexMethod {
1845 pub(crate) syntax: SyntaxNode,
1846}
1847impl ConstraintIndexMethod {
1848 #[inline]
1849 pub fn using_token(&self) -> Option<SyntaxToken> {
1850 support::token(&self.syntax, SyntaxKind::USING_KW)
1851 }
1852}
1853
1854#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1855pub struct ConstraintIndexTablespace {
1856 pub(crate) syntax: SyntaxNode,
1857}
1858impl ConstraintIndexTablespace {
1859 #[inline]
1860 pub fn name_ref(&self) -> Option<NameRef> {
1861 support::child(&self.syntax)
1862 }
1863 #[inline]
1864 pub fn index_token(&self) -> Option<SyntaxToken> {
1865 support::token(&self.syntax, SyntaxKind::INDEX_KW)
1866 }
1867 #[inline]
1868 pub fn tablespace_token(&self) -> Option<SyntaxToken> {
1869 support::token(&self.syntax, SyntaxKind::TABLESPACE_KW)
1870 }
1871 #[inline]
1872 pub fn using_token(&self) -> Option<SyntaxToken> {
1873 support::token(&self.syntax, SyntaxKind::USING_KW)
1874 }
1875}
1876
1877#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1878pub struct ConstraintWhereClause {
1879 pub(crate) syntax: SyntaxNode,
1880}
1881impl ConstraintWhereClause {
1882 #[inline]
1883 pub fn where_token(&self) -> Option<SyntaxToken> {
1884 support::token(&self.syntax, SyntaxKind::WHERE_KW)
1885 }
1886}
1887
1888#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1889pub struct Copy {
1890 pub(crate) syntax: SyntaxNode,
1891}
1892impl Copy {
1893 #[inline]
1894 pub fn copy_token(&self) -> Option<SyntaxToken> {
1895 support::token(&self.syntax, SyntaxKind::COPY_KW)
1896 }
1897}
1898
1899#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1900pub struct CostFuncOption {
1901 pub(crate) syntax: SyntaxNode,
1902}
1903impl CostFuncOption {
1904 #[inline]
1905 pub fn cost_token(&self) -> Option<SyntaxToken> {
1906 support::token(&self.syntax, SyntaxKind::COST_KW)
1907 }
1908}
1909
1910#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1911pub struct CreateAccessMethod {
1912 pub(crate) syntax: SyntaxNode,
1913}
1914impl CreateAccessMethod {
1915 #[inline]
1916 pub fn name_ref(&self) -> Option<NameRef> {
1917 support::child(&self.syntax)
1918 }
1919 #[inline]
1920 pub fn access_token(&self) -> Option<SyntaxToken> {
1921 support::token(&self.syntax, SyntaxKind::ACCESS_KW)
1922 }
1923 #[inline]
1924 pub fn create_token(&self) -> Option<SyntaxToken> {
1925 support::token(&self.syntax, SyntaxKind::CREATE_KW)
1926 }
1927 #[inline]
1928 pub fn method_token(&self) -> Option<SyntaxToken> {
1929 support::token(&self.syntax, SyntaxKind::METHOD_KW)
1930 }
1931 #[inline]
1932 pub fn type_token(&self) -> Option<SyntaxToken> {
1933 support::token(&self.syntax, SyntaxKind::TYPE_KW)
1934 }
1935}
1936
1937#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1938pub struct CreateAggregate {
1939 pub(crate) syntax: SyntaxNode,
1940}
1941impl CreateAggregate {
1942 #[inline]
1943 pub fn or_replace(&self) -> Option<OrReplace> {
1944 support::child(&self.syntax)
1945 }
1946 #[inline]
1947 pub fn param_list(&self) -> Option<ParamList> {
1948 support::child(&self.syntax)
1949 }
1950 #[inline]
1951 pub fn path(&self) -> Option<Path> {
1952 support::child(&self.syntax)
1953 }
1954 #[inline]
1955 pub fn aggregate_token(&self) -> Option<SyntaxToken> {
1956 support::token(&self.syntax, SyntaxKind::AGGREGATE_KW)
1957 }
1958 #[inline]
1959 pub fn create_token(&self) -> Option<SyntaxToken> {
1960 support::token(&self.syntax, SyntaxKind::CREATE_KW)
1961 }
1962}
1963
1964#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1965pub struct CreateCast {
1966 pub(crate) syntax: SyntaxNode,
1967}
1968impl CreateCast {
1969 #[inline]
1970 pub fn ty(&self) -> Option<Type> {
1971 support::child(&self.syntax)
1972 }
1973 #[inline]
1974 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
1975 support::token(&self.syntax, SyntaxKind::L_PAREN)
1976 }
1977 #[inline]
1978 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
1979 support::token(&self.syntax, SyntaxKind::R_PAREN)
1980 }
1981 #[inline]
1982 pub fn as_token(&self) -> Option<SyntaxToken> {
1983 support::token(&self.syntax, SyntaxKind::AS_KW)
1984 }
1985 #[inline]
1986 pub fn cast_token(&self) -> Option<SyntaxToken> {
1987 support::token(&self.syntax, SyntaxKind::CAST_KW)
1988 }
1989 #[inline]
1990 pub fn create_token(&self) -> Option<SyntaxToken> {
1991 support::token(&self.syntax, SyntaxKind::CREATE_KW)
1992 }
1993}
1994
1995#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1996pub struct CreateCollation {
1997 pub(crate) syntax: SyntaxNode,
1998}
1999impl CreateCollation {
2000 #[inline]
2001 pub fn name_ref(&self) -> Option<NameRef> {
2002 support::child(&self.syntax)
2003 }
2004 #[inline]
2005 pub fn collation_token(&self) -> Option<SyntaxToken> {
2006 support::token(&self.syntax, SyntaxKind::COLLATION_KW)
2007 }
2008 #[inline]
2009 pub fn create_token(&self) -> Option<SyntaxToken> {
2010 support::token(&self.syntax, SyntaxKind::CREATE_KW)
2011 }
2012}
2013
2014#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2015pub struct CreateConversion {
2016 pub(crate) syntax: SyntaxNode,
2017}
2018impl CreateConversion {
2019 #[inline]
2020 pub fn name_ref(&self) -> Option<NameRef> {
2021 support::child(&self.syntax)
2022 }
2023 #[inline]
2024 pub fn conversion_token(&self) -> Option<SyntaxToken> {
2025 support::token(&self.syntax, SyntaxKind::CONVERSION_KW)
2026 }
2027 #[inline]
2028 pub fn create_token(&self) -> Option<SyntaxToken> {
2029 support::token(&self.syntax, SyntaxKind::CREATE_KW)
2030 }
2031 #[inline]
2032 pub fn for_token(&self) -> Option<SyntaxToken> {
2033 support::token(&self.syntax, SyntaxKind::FOR_KW)
2034 }
2035}
2036
2037#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2038pub struct CreateDatabase {
2039 pub(crate) syntax: SyntaxNode,
2040}
2041impl CreateDatabase {
2042 #[inline]
2043 pub fn name_ref(&self) -> Option<NameRef> {
2044 support::child(&self.syntax)
2045 }
2046 #[inline]
2047 pub fn create_token(&self) -> Option<SyntaxToken> {
2048 support::token(&self.syntax, SyntaxKind::CREATE_KW)
2049 }
2050 #[inline]
2051 pub fn database_token(&self) -> Option<SyntaxToken> {
2052 support::token(&self.syntax, SyntaxKind::DATABASE_KW)
2053 }
2054}
2055
2056#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2057pub struct CreateDomain {
2058 pub(crate) syntax: SyntaxNode,
2059}
2060impl CreateDomain {
2061 #[inline]
2062 pub fn collate(&self) -> Option<Collate> {
2063 support::child(&self.syntax)
2064 }
2065 #[inline]
2066 pub fn constraints(&self) -> AstChildren<Constraint> {
2067 support::children(&self.syntax)
2068 }
2069 #[inline]
2070 pub fn name_ref(&self) -> Option<NameRef> {
2071 support::child(&self.syntax)
2072 }
2073 #[inline]
2074 pub fn ty(&self) -> Option<Type> {
2075 support::child(&self.syntax)
2076 }
2077 #[inline]
2078 pub fn as_token(&self) -> Option<SyntaxToken> {
2079 support::token(&self.syntax, SyntaxKind::AS_KW)
2080 }
2081 #[inline]
2082 pub fn create_token(&self) -> Option<SyntaxToken> {
2083 support::token(&self.syntax, SyntaxKind::CREATE_KW)
2084 }
2085 #[inline]
2086 pub fn domain_token(&self) -> Option<SyntaxToken> {
2087 support::token(&self.syntax, SyntaxKind::DOMAIN_KW)
2088 }
2089}
2090
2091#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2092pub struct CreateEventTrigger {
2093 pub(crate) syntax: SyntaxNode,
2094}
2095impl CreateEventTrigger {
2096 #[inline]
2097 pub fn name_ref(&self) -> Option<NameRef> {
2098 support::child(&self.syntax)
2099 }
2100 #[inline]
2101 pub fn create_token(&self) -> Option<SyntaxToken> {
2102 support::token(&self.syntax, SyntaxKind::CREATE_KW)
2103 }
2104 #[inline]
2105 pub fn event_token(&self) -> Option<SyntaxToken> {
2106 support::token(&self.syntax, SyntaxKind::EVENT_KW)
2107 }
2108 #[inline]
2109 pub fn on_token(&self) -> Option<SyntaxToken> {
2110 support::token(&self.syntax, SyntaxKind::ON_KW)
2111 }
2112 #[inline]
2113 pub fn trigger_token(&self) -> Option<SyntaxToken> {
2114 support::token(&self.syntax, SyntaxKind::TRIGGER_KW)
2115 }
2116}
2117
2118#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2119pub struct CreateExtension {
2120 pub(crate) syntax: SyntaxNode,
2121}
2122impl CreateExtension {
2123 #[inline]
2124 pub fn create_token(&self) -> Option<SyntaxToken> {
2125 support::token(&self.syntax, SyntaxKind::CREATE_KW)
2126 }
2127 #[inline]
2128 pub fn extension_token(&self) -> Option<SyntaxToken> {
2129 support::token(&self.syntax, SyntaxKind::EXTENSION_KW)
2130 }
2131}
2132
2133#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2134pub struct CreateForeignDataWrapper {
2135 pub(crate) syntax: SyntaxNode,
2136}
2137impl CreateForeignDataWrapper {
2138 #[inline]
2139 pub fn name_ref(&self) -> Option<NameRef> {
2140 support::child(&self.syntax)
2141 }
2142 #[inline]
2143 pub fn create_token(&self) -> Option<SyntaxToken> {
2144 support::token(&self.syntax, SyntaxKind::CREATE_KW)
2145 }
2146 #[inline]
2147 pub fn data_token(&self) -> Option<SyntaxToken> {
2148 support::token(&self.syntax, SyntaxKind::DATA_KW)
2149 }
2150 #[inline]
2151 pub fn foreign_token(&self) -> Option<SyntaxToken> {
2152 support::token(&self.syntax, SyntaxKind::FOREIGN_KW)
2153 }
2154 #[inline]
2155 pub fn wrapper_token(&self) -> Option<SyntaxToken> {
2156 support::token(&self.syntax, SyntaxKind::WRAPPER_KW)
2157 }
2158}
2159
2160#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2161pub struct CreateForeignTable {
2162 pub(crate) syntax: SyntaxNode,
2163}
2164impl CreateForeignTable {
2165 #[inline]
2166 pub fn if_not_exists(&self) -> Option<IfNotExists> {
2167 support::child(&self.syntax)
2168 }
2169 #[inline]
2170 pub fn create_token(&self) -> Option<SyntaxToken> {
2171 support::token(&self.syntax, SyntaxKind::CREATE_KW)
2172 }
2173 #[inline]
2174 pub fn foreign_token(&self) -> Option<SyntaxToken> {
2175 support::token(&self.syntax, SyntaxKind::FOREIGN_KW)
2176 }
2177 #[inline]
2178 pub fn table_token(&self) -> Option<SyntaxToken> {
2179 support::token(&self.syntax, SyntaxKind::TABLE_KW)
2180 }
2181}
2182
2183#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2184pub struct CreateFunction {
2185 pub(crate) syntax: SyntaxNode,
2186}
2187impl CreateFunction {
2188 #[inline]
2189 pub fn option_list(&self) -> Option<FuncOptionList> {
2190 support::child(&self.syntax)
2191 }
2192 #[inline]
2193 pub fn or_replace(&self) -> Option<OrReplace> {
2194 support::child(&self.syntax)
2195 }
2196 #[inline]
2197 pub fn param_list(&self) -> Option<ParamList> {
2198 support::child(&self.syntax)
2199 }
2200 #[inline]
2201 pub fn path(&self) -> Option<Path> {
2202 support::child(&self.syntax)
2203 }
2204 #[inline]
2205 pub fn ret_type(&self) -> Option<RetType> {
2206 support::child(&self.syntax)
2207 }
2208 #[inline]
2209 pub fn create_token(&self) -> Option<SyntaxToken> {
2210 support::token(&self.syntax, SyntaxKind::CREATE_KW)
2211 }
2212 #[inline]
2213 pub fn function_token(&self) -> Option<SyntaxToken> {
2214 support::token(&self.syntax, SyntaxKind::FUNCTION_KW)
2215 }
2216}
2217
2218#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2219pub struct CreateGroup {
2220 pub(crate) syntax: SyntaxNode,
2221}
2222impl CreateGroup {
2223 #[inline]
2224 pub fn name_ref(&self) -> Option<NameRef> {
2225 support::child(&self.syntax)
2226 }
2227 #[inline]
2228 pub fn create_token(&self) -> Option<SyntaxToken> {
2229 support::token(&self.syntax, SyntaxKind::CREATE_KW)
2230 }
2231 #[inline]
2232 pub fn group_token(&self) -> Option<SyntaxToken> {
2233 support::token(&self.syntax, SyntaxKind::GROUP_KW)
2234 }
2235}
2236
2237#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2238pub struct CreateIndex {
2239 pub(crate) syntax: SyntaxNode,
2240}
2241impl CreateIndex {
2242 #[inline]
2243 pub fn if_not_exists(&self) -> Option<IfNotExists> {
2244 support::child(&self.syntax)
2245 }
2246 #[inline]
2247 pub fn name(&self) -> Option<Name> {
2248 support::child(&self.syntax)
2249 }
2250 #[inline]
2251 pub fn relation_name(&self) -> Option<RelationName> {
2252 support::child(&self.syntax)
2253 }
2254 #[inline]
2255 pub fn concurrently_token(&self) -> Option<SyntaxToken> {
2256 support::token(&self.syntax, SyntaxKind::CONCURRENTLY_KW)
2257 }
2258 #[inline]
2259 pub fn create_token(&self) -> Option<SyntaxToken> {
2260 support::token(&self.syntax, SyntaxKind::CREATE_KW)
2261 }
2262 #[inline]
2263 pub fn index_token(&self) -> Option<SyntaxToken> {
2264 support::token(&self.syntax, SyntaxKind::INDEX_KW)
2265 }
2266 #[inline]
2267 pub fn on_token(&self) -> Option<SyntaxToken> {
2268 support::token(&self.syntax, SyntaxKind::ON_KW)
2269 }
2270 #[inline]
2271 pub fn unique_token(&self) -> Option<SyntaxToken> {
2272 support::token(&self.syntax, SyntaxKind::UNIQUE_KW)
2273 }
2274}
2275
2276#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2277pub struct CreateLanguage {
2278 pub(crate) syntax: SyntaxNode,
2279}
2280impl CreateLanguage {
2281 #[inline]
2282 pub fn name_ref(&self) -> Option<NameRef> {
2283 support::child(&self.syntax)
2284 }
2285 #[inline]
2286 pub fn create_token(&self) -> Option<SyntaxToken> {
2287 support::token(&self.syntax, SyntaxKind::CREATE_KW)
2288 }
2289 #[inline]
2290 pub fn language_token(&self) -> Option<SyntaxToken> {
2291 support::token(&self.syntax, SyntaxKind::LANGUAGE_KW)
2292 }
2293}
2294
2295#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2296pub struct CreateMaterializedView {
2297 pub(crate) syntax: SyntaxNode,
2298}
2299impl CreateMaterializedView {
2300 #[inline]
2301 pub fn create_token(&self) -> Option<SyntaxToken> {
2302 support::token(&self.syntax, SyntaxKind::CREATE_KW)
2303 }
2304}
2305
2306#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2307pub struct CreateOperator {
2308 pub(crate) syntax: SyntaxNode,
2309}
2310impl CreateOperator {
2311 #[inline]
2312 pub fn create_token(&self) -> Option<SyntaxToken> {
2313 support::token(&self.syntax, SyntaxKind::CREATE_KW)
2314 }
2315 #[inline]
2316 pub fn operator_token(&self) -> Option<SyntaxToken> {
2317 support::token(&self.syntax, SyntaxKind::OPERATOR_KW)
2318 }
2319}
2320
2321#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2322pub struct CreateOperatorClass {
2323 pub(crate) syntax: SyntaxNode,
2324}
2325impl CreateOperatorClass {
2326 #[inline]
2327 pub fn name_ref(&self) -> Option<NameRef> {
2328 support::child(&self.syntax)
2329 }
2330 #[inline]
2331 pub fn ty(&self) -> Option<Type> {
2332 support::child(&self.syntax)
2333 }
2334 #[inline]
2335 pub fn class_token(&self) -> Option<SyntaxToken> {
2336 support::token(&self.syntax, SyntaxKind::CLASS_KW)
2337 }
2338 #[inline]
2339 pub fn create_token(&self) -> Option<SyntaxToken> {
2340 support::token(&self.syntax, SyntaxKind::CREATE_KW)
2341 }
2342 #[inline]
2343 pub fn default_token(&self) -> Option<SyntaxToken> {
2344 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
2345 }
2346 #[inline]
2347 pub fn for_token(&self) -> Option<SyntaxToken> {
2348 support::token(&self.syntax, SyntaxKind::FOR_KW)
2349 }
2350 #[inline]
2351 pub fn operator_token(&self) -> Option<SyntaxToken> {
2352 support::token(&self.syntax, SyntaxKind::OPERATOR_KW)
2353 }
2354 #[inline]
2355 pub fn type_token(&self) -> Option<SyntaxToken> {
2356 support::token(&self.syntax, SyntaxKind::TYPE_KW)
2357 }
2358 #[inline]
2359 pub fn using_token(&self) -> Option<SyntaxToken> {
2360 support::token(&self.syntax, SyntaxKind::USING_KW)
2361 }
2362}
2363
2364#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2365pub struct CreateOperatorFamily {
2366 pub(crate) syntax: SyntaxNode,
2367}
2368impl CreateOperatorFamily {
2369 #[inline]
2370 pub fn name_ref(&self) -> Option<NameRef> {
2371 support::child(&self.syntax)
2372 }
2373 #[inline]
2374 pub fn create_token(&self) -> Option<SyntaxToken> {
2375 support::token(&self.syntax, SyntaxKind::CREATE_KW)
2376 }
2377 #[inline]
2378 pub fn family_token(&self) -> Option<SyntaxToken> {
2379 support::token(&self.syntax, SyntaxKind::FAMILY_KW)
2380 }
2381 #[inline]
2382 pub fn operator_token(&self) -> Option<SyntaxToken> {
2383 support::token(&self.syntax, SyntaxKind::OPERATOR_KW)
2384 }
2385 #[inline]
2386 pub fn using_token(&self) -> Option<SyntaxToken> {
2387 support::token(&self.syntax, SyntaxKind::USING_KW)
2388 }
2389}
2390
2391#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2392pub struct CreatePolicy {
2393 pub(crate) syntax: SyntaxNode,
2394}
2395impl CreatePolicy {
2396 #[inline]
2397 pub fn name_ref(&self) -> Option<NameRef> {
2398 support::child(&self.syntax)
2399 }
2400 #[inline]
2401 pub fn create_token(&self) -> Option<SyntaxToken> {
2402 support::token(&self.syntax, SyntaxKind::CREATE_KW)
2403 }
2404 #[inline]
2405 pub fn on_token(&self) -> Option<SyntaxToken> {
2406 support::token(&self.syntax, SyntaxKind::ON_KW)
2407 }
2408 #[inline]
2409 pub fn policy_token(&self) -> Option<SyntaxToken> {
2410 support::token(&self.syntax, SyntaxKind::POLICY_KW)
2411 }
2412}
2413
2414#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2415pub struct CreateProcedure {
2416 pub(crate) syntax: SyntaxNode,
2417}
2418impl CreateProcedure {
2419 #[inline]
2420 pub fn create_token(&self) -> Option<SyntaxToken> {
2421 support::token(&self.syntax, SyntaxKind::CREATE_KW)
2422 }
2423 #[inline]
2424 pub fn procedure_token(&self) -> Option<SyntaxToken> {
2425 support::token(&self.syntax, SyntaxKind::PROCEDURE_KW)
2426 }
2427}
2428
2429#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2430pub struct CreatePublication {
2431 pub(crate) syntax: SyntaxNode,
2432}
2433impl CreatePublication {
2434 #[inline]
2435 pub fn name_ref(&self) -> Option<NameRef> {
2436 support::child(&self.syntax)
2437 }
2438 #[inline]
2439 pub fn create_token(&self) -> Option<SyntaxToken> {
2440 support::token(&self.syntax, SyntaxKind::CREATE_KW)
2441 }
2442 #[inline]
2443 pub fn publication_token(&self) -> Option<SyntaxToken> {
2444 support::token(&self.syntax, SyntaxKind::PUBLICATION_KW)
2445 }
2446}
2447
2448#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2449pub struct CreateRole {
2450 pub(crate) syntax: SyntaxNode,
2451}
2452impl CreateRole {
2453 #[inline]
2454 pub fn name_ref(&self) -> Option<NameRef> {
2455 support::child(&self.syntax)
2456 }
2457 #[inline]
2458 pub fn create_token(&self) -> Option<SyntaxToken> {
2459 support::token(&self.syntax, SyntaxKind::CREATE_KW)
2460 }
2461 #[inline]
2462 pub fn role_token(&self) -> Option<SyntaxToken> {
2463 support::token(&self.syntax, SyntaxKind::ROLE_KW)
2464 }
2465}
2466
2467#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2468pub struct CreateRule {
2469 pub(crate) syntax: SyntaxNode,
2470}
2471impl CreateRule {
2472 #[inline]
2473 pub fn name_ref(&self) -> Option<NameRef> {
2474 support::child(&self.syntax)
2475 }
2476 #[inline]
2477 pub fn as_token(&self) -> Option<SyntaxToken> {
2478 support::token(&self.syntax, SyntaxKind::AS_KW)
2479 }
2480 #[inline]
2481 pub fn create_token(&self) -> Option<SyntaxToken> {
2482 support::token(&self.syntax, SyntaxKind::CREATE_KW)
2483 }
2484 #[inline]
2485 pub fn on_token(&self) -> Option<SyntaxToken> {
2486 support::token(&self.syntax, SyntaxKind::ON_KW)
2487 }
2488 #[inline]
2489 pub fn rule_token(&self) -> Option<SyntaxToken> {
2490 support::token(&self.syntax, SyntaxKind::RULE_KW)
2491 }
2492}
2493
2494#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2495pub struct CreateSchema {
2496 pub(crate) syntax: SyntaxNode,
2497}
2498impl CreateSchema {
2499 #[inline]
2500 pub fn create_token(&self) -> Option<SyntaxToken> {
2501 support::token(&self.syntax, SyntaxKind::CREATE_KW)
2502 }
2503 #[inline]
2504 pub fn schema_token(&self) -> Option<SyntaxToken> {
2505 support::token(&self.syntax, SyntaxKind::SCHEMA_KW)
2506 }
2507}
2508
2509#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2510pub struct CreateSequence {
2511 pub(crate) syntax: SyntaxNode,
2512}
2513impl CreateSequence {
2514 #[inline]
2515 pub fn name_ref(&self) -> Option<NameRef> {
2516 support::child(&self.syntax)
2517 }
2518 #[inline]
2519 pub fn create_token(&self) -> Option<SyntaxToken> {
2520 support::token(&self.syntax, SyntaxKind::CREATE_KW)
2521 }
2522 #[inline]
2523 pub fn sequence_token(&self) -> Option<SyntaxToken> {
2524 support::token(&self.syntax, SyntaxKind::SEQUENCE_KW)
2525 }
2526}
2527
2528#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2529pub struct CreateServer {
2530 pub(crate) syntax: SyntaxNode,
2531}
2532impl CreateServer {
2533 #[inline]
2534 pub fn name_ref(&self) -> Option<NameRef> {
2535 support::child(&self.syntax)
2536 }
2537 #[inline]
2538 pub fn create_token(&self) -> Option<SyntaxToken> {
2539 support::token(&self.syntax, SyntaxKind::CREATE_KW)
2540 }
2541 #[inline]
2542 pub fn server_token(&self) -> Option<SyntaxToken> {
2543 support::token(&self.syntax, SyntaxKind::SERVER_KW)
2544 }
2545}
2546
2547#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2548pub struct CreateStatistics {
2549 pub(crate) syntax: SyntaxNode,
2550}
2551impl CreateStatistics {
2552 #[inline]
2553 pub fn name_ref(&self) -> Option<NameRef> {
2554 support::child(&self.syntax)
2555 }
2556 #[inline]
2557 pub fn create_token(&self) -> Option<SyntaxToken> {
2558 support::token(&self.syntax, SyntaxKind::CREATE_KW)
2559 }
2560 #[inline]
2561 pub fn statistics_token(&self) -> Option<SyntaxToken> {
2562 support::token(&self.syntax, SyntaxKind::STATISTICS_KW)
2563 }
2564}
2565
2566#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2567pub struct CreateSubscription {
2568 pub(crate) syntax: SyntaxNode,
2569}
2570impl CreateSubscription {
2571 #[inline]
2572 pub fn name_ref(&self) -> Option<NameRef> {
2573 support::child(&self.syntax)
2574 }
2575 #[inline]
2576 pub fn create_token(&self) -> Option<SyntaxToken> {
2577 support::token(&self.syntax, SyntaxKind::CREATE_KW)
2578 }
2579 #[inline]
2580 pub fn subscription_token(&self) -> Option<SyntaxToken> {
2581 support::token(&self.syntax, SyntaxKind::SUBSCRIPTION_KW)
2582 }
2583}
2584
2585#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2586pub struct CreateTable {
2587 pub(crate) syntax: SyntaxNode,
2588}
2589impl CreateTable {
2590 #[inline]
2591 pub fn if_not_exists(&self) -> Option<IfNotExists> {
2592 support::child(&self.syntax)
2593 }
2594 #[inline]
2595 pub fn inherits(&self) -> Option<Inherits> {
2596 support::child(&self.syntax)
2597 }
2598 #[inline]
2599 pub fn of_type(&self) -> Option<OfType> {
2600 support::child(&self.syntax)
2601 }
2602 #[inline]
2603 pub fn on_commit(&self) -> Option<OnCommit> {
2604 support::child(&self.syntax)
2605 }
2606 #[inline]
2607 pub fn partition_by(&self) -> Option<PartitionBy> {
2608 support::child(&self.syntax)
2609 }
2610 #[inline]
2611 pub fn partition_of(&self) -> Option<PartitionOf> {
2612 support::child(&self.syntax)
2613 }
2614 #[inline]
2615 pub fn path(&self) -> Option<Path> {
2616 support::child(&self.syntax)
2617 }
2618 #[inline]
2619 pub fn table_arg_list(&self) -> Option<TableArgList> {
2620 support::child(&self.syntax)
2621 }
2622 #[inline]
2623 pub fn tablespace(&self) -> Option<Tablespace> {
2624 support::child(&self.syntax)
2625 }
2626 #[inline]
2627 pub fn using_method(&self) -> Option<UsingMethod> {
2628 support::child(&self.syntax)
2629 }
2630 #[inline]
2631 pub fn with_params(&self) -> Option<WithParams> {
2632 support::child(&self.syntax)
2633 }
2634 #[inline]
2635 pub fn without_oids(&self) -> Option<WithoutOids> {
2636 support::child(&self.syntax)
2637 }
2638 #[inline]
2639 pub fn create_token(&self) -> Option<SyntaxToken> {
2640 support::token(&self.syntax, SyntaxKind::CREATE_KW)
2641 }
2642 #[inline]
2643 pub fn table_token(&self) -> Option<SyntaxToken> {
2644 support::token(&self.syntax, SyntaxKind::TABLE_KW)
2645 }
2646}
2647
2648#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2649pub struct CreateTableAs {
2650 pub(crate) syntax: SyntaxNode,
2651}
2652impl CreateTableAs {
2653 #[inline]
2654 pub fn if_not_exists(&self) -> Option<IfNotExists> {
2655 support::child(&self.syntax)
2656 }
2657 #[inline]
2658 pub fn on_commit(&self) -> Option<OnCommit> {
2659 support::child(&self.syntax)
2660 }
2661 #[inline]
2662 pub fn path(&self) -> Option<Path> {
2663 support::child(&self.syntax)
2664 }
2665 #[inline]
2666 pub fn stmt(&self) -> Option<Stmt> {
2667 support::child(&self.syntax)
2668 }
2669 #[inline]
2670 pub fn tablespace(&self) -> Option<Tablespace> {
2671 support::child(&self.syntax)
2672 }
2673 #[inline]
2674 pub fn using_method(&self) -> Option<UsingMethod> {
2675 support::child(&self.syntax)
2676 }
2677 #[inline]
2678 pub fn with_data(&self) -> Option<WithData> {
2679 support::child(&self.syntax)
2680 }
2681 #[inline]
2682 pub fn with_no_data(&self) -> Option<WithNoData> {
2683 support::child(&self.syntax)
2684 }
2685 #[inline]
2686 pub fn with_params(&self) -> Option<WithParams> {
2687 support::child(&self.syntax)
2688 }
2689 #[inline]
2690 pub fn as_token(&self) -> Option<SyntaxToken> {
2691 support::token(&self.syntax, SyntaxKind::AS_KW)
2692 }
2693 #[inline]
2694 pub fn create_token(&self) -> Option<SyntaxToken> {
2695 support::token(&self.syntax, SyntaxKind::CREATE_KW)
2696 }
2697 #[inline]
2698 pub fn table_token(&self) -> Option<SyntaxToken> {
2699 support::token(&self.syntax, SyntaxKind::TABLE_KW)
2700 }
2701}
2702
2703#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2704pub struct CreateTablespace {
2705 pub(crate) syntax: SyntaxNode,
2706}
2707impl CreateTablespace {
2708 #[inline]
2709 pub fn name_ref(&self) -> Option<NameRef> {
2710 support::child(&self.syntax)
2711 }
2712 #[inline]
2713 pub fn create_token(&self) -> Option<SyntaxToken> {
2714 support::token(&self.syntax, SyntaxKind::CREATE_KW)
2715 }
2716 #[inline]
2717 pub fn tablespace_token(&self) -> Option<SyntaxToken> {
2718 support::token(&self.syntax, SyntaxKind::TABLESPACE_KW)
2719 }
2720}
2721
2722#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2723pub struct CreateTextSearchConfiguration {
2724 pub(crate) syntax: SyntaxNode,
2725}
2726impl CreateTextSearchConfiguration {
2727 #[inline]
2728 pub fn attribute_list(&self) -> Option<AttributeList> {
2729 support::child(&self.syntax)
2730 }
2731 #[inline]
2732 pub fn name_ref(&self) -> Option<NameRef> {
2733 support::child(&self.syntax)
2734 }
2735 #[inline]
2736 pub fn configuration_token(&self) -> Option<SyntaxToken> {
2737 support::token(&self.syntax, SyntaxKind::CONFIGURATION_KW)
2738 }
2739 #[inline]
2740 pub fn create_token(&self) -> Option<SyntaxToken> {
2741 support::token(&self.syntax, SyntaxKind::CREATE_KW)
2742 }
2743 #[inline]
2744 pub fn search_token(&self) -> Option<SyntaxToken> {
2745 support::token(&self.syntax, SyntaxKind::SEARCH_KW)
2746 }
2747 #[inline]
2748 pub fn text_token(&self) -> Option<SyntaxToken> {
2749 support::token(&self.syntax, SyntaxKind::TEXT_KW)
2750 }
2751}
2752
2753#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2754pub struct CreateTextSearchDictionary {
2755 pub(crate) syntax: SyntaxNode,
2756}
2757impl CreateTextSearchDictionary {
2758 #[inline]
2759 pub fn name_ref(&self) -> Option<NameRef> {
2760 support::child(&self.syntax)
2761 }
2762 #[inline]
2763 pub fn create_token(&self) -> Option<SyntaxToken> {
2764 support::token(&self.syntax, SyntaxKind::CREATE_KW)
2765 }
2766 #[inline]
2767 pub fn dictionary_token(&self) -> Option<SyntaxToken> {
2768 support::token(&self.syntax, SyntaxKind::DICTIONARY_KW)
2769 }
2770 #[inline]
2771 pub fn search_token(&self) -> Option<SyntaxToken> {
2772 support::token(&self.syntax, SyntaxKind::SEARCH_KW)
2773 }
2774 #[inline]
2775 pub fn text_token(&self) -> Option<SyntaxToken> {
2776 support::token(&self.syntax, SyntaxKind::TEXT_KW)
2777 }
2778}
2779
2780#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2781pub struct CreateTextSearchParser {
2782 pub(crate) syntax: SyntaxNode,
2783}
2784impl CreateTextSearchParser {
2785 #[inline]
2786 pub fn name_ref(&self) -> Option<NameRef> {
2787 support::child(&self.syntax)
2788 }
2789 #[inline]
2790 pub fn create_token(&self) -> Option<SyntaxToken> {
2791 support::token(&self.syntax, SyntaxKind::CREATE_KW)
2792 }
2793 #[inline]
2794 pub fn parser_token(&self) -> Option<SyntaxToken> {
2795 support::token(&self.syntax, SyntaxKind::PARSER_KW)
2796 }
2797 #[inline]
2798 pub fn search_token(&self) -> Option<SyntaxToken> {
2799 support::token(&self.syntax, SyntaxKind::SEARCH_KW)
2800 }
2801 #[inline]
2802 pub fn text_token(&self) -> Option<SyntaxToken> {
2803 support::token(&self.syntax, SyntaxKind::TEXT_KW)
2804 }
2805}
2806
2807#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2808pub struct CreateTextSearchTemplate {
2809 pub(crate) syntax: SyntaxNode,
2810}
2811impl CreateTextSearchTemplate {
2812 #[inline]
2813 pub fn name_ref(&self) -> Option<NameRef> {
2814 support::child(&self.syntax)
2815 }
2816 #[inline]
2817 pub fn create_token(&self) -> Option<SyntaxToken> {
2818 support::token(&self.syntax, SyntaxKind::CREATE_KW)
2819 }
2820 #[inline]
2821 pub fn search_token(&self) -> Option<SyntaxToken> {
2822 support::token(&self.syntax, SyntaxKind::SEARCH_KW)
2823 }
2824 #[inline]
2825 pub fn template_token(&self) -> Option<SyntaxToken> {
2826 support::token(&self.syntax, SyntaxKind::TEMPLATE_KW)
2827 }
2828 #[inline]
2829 pub fn text_token(&self) -> Option<SyntaxToken> {
2830 support::token(&self.syntax, SyntaxKind::TEXT_KW)
2831 }
2832}
2833
2834#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2835pub struct CreateTransform {
2836 pub(crate) syntax: SyntaxNode,
2837}
2838impl CreateTransform {
2839 #[inline]
2840 pub fn name_ref(&self) -> Option<NameRef> {
2841 support::child(&self.syntax)
2842 }
2843 #[inline]
2844 pub fn ty(&self) -> Option<Type> {
2845 support::child(&self.syntax)
2846 }
2847 #[inline]
2848 pub fn create_token(&self) -> Option<SyntaxToken> {
2849 support::token(&self.syntax, SyntaxKind::CREATE_KW)
2850 }
2851 #[inline]
2852 pub fn for_token(&self) -> Option<SyntaxToken> {
2853 support::token(&self.syntax, SyntaxKind::FOR_KW)
2854 }
2855 #[inline]
2856 pub fn language_token(&self) -> Option<SyntaxToken> {
2857 support::token(&self.syntax, SyntaxKind::LANGUAGE_KW)
2858 }
2859 #[inline]
2860 pub fn transform_token(&self) -> Option<SyntaxToken> {
2861 support::token(&self.syntax, SyntaxKind::TRANSFORM_KW)
2862 }
2863}
2864
2865#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2866pub struct CreateTrigger {
2867 pub(crate) syntax: SyntaxNode,
2868}
2869impl CreateTrigger {
2870 #[inline]
2871 pub fn create_token(&self) -> Option<SyntaxToken> {
2872 support::token(&self.syntax, SyntaxKind::CREATE_KW)
2873 }
2874}
2875
2876#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2877pub struct CreateType {
2878 pub(crate) syntax: SyntaxNode,
2879}
2880impl CreateType {
2881 #[inline]
2882 pub fn ty(&self) -> Option<Type> {
2883 support::child(&self.syntax)
2884 }
2885 #[inline]
2886 pub fn variant_list(&self) -> Option<VariantList> {
2887 support::child(&self.syntax)
2888 }
2889 #[inline]
2890 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
2891 support::token(&self.syntax, SyntaxKind::L_PAREN)
2892 }
2893 #[inline]
2894 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
2895 support::token(&self.syntax, SyntaxKind::R_PAREN)
2896 }
2897 #[inline]
2898 pub fn as_token(&self) -> Option<SyntaxToken> {
2899 support::token(&self.syntax, SyntaxKind::AS_KW)
2900 }
2901 #[inline]
2902 pub fn create_token(&self) -> Option<SyntaxToken> {
2903 support::token(&self.syntax, SyntaxKind::CREATE_KW)
2904 }
2905 #[inline]
2906 pub fn enum_token(&self) -> Option<SyntaxToken> {
2907 support::token(&self.syntax, SyntaxKind::ENUM_KW)
2908 }
2909 #[inline]
2910 pub fn range_token(&self) -> Option<SyntaxToken> {
2911 support::token(&self.syntax, SyntaxKind::RANGE_KW)
2912 }
2913 #[inline]
2914 pub fn type_token(&self) -> Option<SyntaxToken> {
2915 support::token(&self.syntax, SyntaxKind::TYPE_KW)
2916 }
2917}
2918
2919#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2920pub struct CreateUser {
2921 pub(crate) syntax: SyntaxNode,
2922}
2923impl CreateUser {
2924 #[inline]
2925 pub fn name_ref(&self) -> Option<NameRef> {
2926 support::child(&self.syntax)
2927 }
2928 #[inline]
2929 pub fn create_token(&self) -> Option<SyntaxToken> {
2930 support::token(&self.syntax, SyntaxKind::CREATE_KW)
2931 }
2932 #[inline]
2933 pub fn user_token(&self) -> Option<SyntaxToken> {
2934 support::token(&self.syntax, SyntaxKind::USER_KW)
2935 }
2936}
2937
2938#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2939pub struct CreateUserMapping {
2940 pub(crate) syntax: SyntaxNode,
2941}
2942impl CreateUserMapping {
2943 #[inline]
2944 pub fn name_ref(&self) -> Option<NameRef> {
2945 support::child(&self.syntax)
2946 }
2947 #[inline]
2948 pub fn create_token(&self) -> Option<SyntaxToken> {
2949 support::token(&self.syntax, SyntaxKind::CREATE_KW)
2950 }
2951 #[inline]
2952 pub fn for_token(&self) -> Option<SyntaxToken> {
2953 support::token(&self.syntax, SyntaxKind::FOR_KW)
2954 }
2955 #[inline]
2956 pub fn mapping_token(&self) -> Option<SyntaxToken> {
2957 support::token(&self.syntax, SyntaxKind::MAPPING_KW)
2958 }
2959 #[inline]
2960 pub fn server_token(&self) -> Option<SyntaxToken> {
2961 support::token(&self.syntax, SyntaxKind::SERVER_KW)
2962 }
2963 #[inline]
2964 pub fn user_token(&self) -> Option<SyntaxToken> {
2965 support::token(&self.syntax, SyntaxKind::USER_KW)
2966 }
2967}
2968
2969#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2970pub struct CreateView {
2971 pub(crate) syntax: SyntaxNode,
2972}
2973impl CreateView {
2974 #[inline]
2975 pub fn name_ref(&self) -> Option<NameRef> {
2976 support::child(&self.syntax)
2977 }
2978 #[inline]
2979 pub fn create_token(&self) -> Option<SyntaxToken> {
2980 support::token(&self.syntax, SyntaxKind::CREATE_KW)
2981 }
2982 #[inline]
2983 pub fn view_token(&self) -> Option<SyntaxToken> {
2984 support::token(&self.syntax, SyntaxKind::VIEW_KW)
2985 }
2986}
2987
2988#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2989pub struct CustomOp {
2990 pub(crate) syntax: SyntaxNode,
2991}
2992impl CustomOp {
2993 #[inline]
2994 pub fn bang_token(&self) -> Option<SyntaxToken> {
2995 support::token(&self.syntax, SyntaxKind::BANG)
2996 }
2997 #[inline]
2998 pub fn pound_token(&self) -> Option<SyntaxToken> {
2999 support::token(&self.syntax, SyntaxKind::POUND)
3000 }
3001 #[inline]
3002 pub fn percent_token(&self) -> Option<SyntaxToken> {
3003 support::token(&self.syntax, SyntaxKind::PERCENT)
3004 }
3005 #[inline]
3006 pub fn amp_token(&self) -> Option<SyntaxToken> {
3007 support::token(&self.syntax, SyntaxKind::AMP)
3008 }
3009 #[inline]
3010 pub fn star_token(&self) -> Option<SyntaxToken> {
3011 support::token(&self.syntax, SyntaxKind::STAR)
3012 }
3013 #[inline]
3014 pub fn plus_token(&self) -> Option<SyntaxToken> {
3015 support::token(&self.syntax, SyntaxKind::PLUS)
3016 }
3017 #[inline]
3018 pub fn minus_token(&self) -> Option<SyntaxToken> {
3019 support::token(&self.syntax, SyntaxKind::MINUS)
3020 }
3021 #[inline]
3022 pub fn slash_token(&self) -> Option<SyntaxToken> {
3023 support::token(&self.syntax, SyntaxKind::SLASH)
3024 }
3025 #[inline]
3026 pub fn l_angle_token(&self) -> Option<SyntaxToken> {
3027 support::token(&self.syntax, SyntaxKind::L_ANGLE)
3028 }
3029 #[inline]
3030 pub fn eq_token(&self) -> Option<SyntaxToken> {
3031 support::token(&self.syntax, SyntaxKind::EQ)
3032 }
3033 #[inline]
3034 pub fn r_angle_token(&self) -> Option<SyntaxToken> {
3035 support::token(&self.syntax, SyntaxKind::R_ANGLE)
3036 }
3037 #[inline]
3038 pub fn question_token(&self) -> Option<SyntaxToken> {
3039 support::token(&self.syntax, SyntaxKind::QUESTION)
3040 }
3041 #[inline]
3042 pub fn at_token(&self) -> Option<SyntaxToken> {
3043 support::token(&self.syntax, SyntaxKind::AT)
3044 }
3045 #[inline]
3046 pub fn caret_token(&self) -> Option<SyntaxToken> {
3047 support::token(&self.syntax, SyntaxKind::CARET)
3048 }
3049 #[inline]
3050 pub fn backtick_token(&self) -> Option<SyntaxToken> {
3051 support::token(&self.syntax, SyntaxKind::BACKTICK)
3052 }
3053 #[inline]
3054 pub fn pipe_token(&self) -> Option<SyntaxToken> {
3055 support::token(&self.syntax, SyntaxKind::PIPE)
3056 }
3057 #[inline]
3058 pub fn tilde_token(&self) -> Option<SyntaxToken> {
3059 support::token(&self.syntax, SyntaxKind::TILDE)
3060 }
3061}
3062
3063#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3064pub struct Deallocate {
3065 pub(crate) syntax: SyntaxNode,
3066}
3067impl Deallocate {
3068 #[inline]
3069 pub fn name_ref(&self) -> Option<NameRef> {
3070 support::child(&self.syntax)
3071 }
3072 #[inline]
3073 pub fn all_token(&self) -> Option<SyntaxToken> {
3074 support::token(&self.syntax, SyntaxKind::ALL_KW)
3075 }
3076 #[inline]
3077 pub fn deallocate_token(&self) -> Option<SyntaxToken> {
3078 support::token(&self.syntax, SyntaxKind::DEALLOCATE_KW)
3079 }
3080 #[inline]
3081 pub fn prepare_token(&self) -> Option<SyntaxToken> {
3082 support::token(&self.syntax, SyntaxKind::PREPARE_KW)
3083 }
3084}
3085
3086#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3087pub struct Declare {
3088 pub(crate) syntax: SyntaxNode,
3089}
3090impl Declare {
3091 #[inline]
3092 pub fn declare_token(&self) -> Option<SyntaxToken> {
3093 support::token(&self.syntax, SyntaxKind::DECLARE_KW)
3094 }
3095}
3096
3097#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3098pub struct DefaultConstraint {
3099 pub(crate) syntax: SyntaxNode,
3100}
3101impl DefaultConstraint {
3102 #[inline]
3103 pub fn expr(&self) -> Option<Expr> {
3104 support::child(&self.syntax)
3105 }
3106 #[inline]
3107 pub fn name_ref(&self) -> Option<NameRef> {
3108 support::child(&self.syntax)
3109 }
3110 #[inline]
3111 pub fn constraint_token(&self) -> Option<SyntaxToken> {
3112 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
3113 }
3114 #[inline]
3115 pub fn default_token(&self) -> Option<SyntaxToken> {
3116 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
3117 }
3118}
3119
3120#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3121pub struct Deferrable {
3122 pub(crate) syntax: SyntaxNode,
3123}
3124impl Deferrable {
3125 #[inline]
3126 pub fn deferrable_token(&self) -> Option<SyntaxToken> {
3127 support::token(&self.syntax, SyntaxKind::DEFERRABLE_KW)
3128 }
3129}
3130
3131#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3132pub struct DeferrableConstraintOption {
3133 pub(crate) syntax: SyntaxNode,
3134}
3135impl DeferrableConstraintOption {
3136 #[inline]
3137 pub fn deferrable_token(&self) -> Option<SyntaxToken> {
3138 support::token(&self.syntax, SyntaxKind::DEFERRABLE_KW)
3139 }
3140}
3141
3142#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3143pub struct Delete {
3144 pub(crate) syntax: SyntaxNode,
3145}
3146impl Delete {
3147 #[inline]
3148 pub fn alias(&self) -> Option<Alias> {
3149 support::child(&self.syntax)
3150 }
3151 #[inline]
3152 pub fn expr(&self) -> Option<Expr> {
3153 support::child(&self.syntax)
3154 }
3155 #[inline]
3156 pub fn name_ref(&self) -> Option<NameRef> {
3157 support::child(&self.syntax)
3158 }
3159 #[inline]
3160 pub fn relation_name(&self) -> Option<RelationName> {
3161 support::child(&self.syntax)
3162 }
3163 #[inline]
3164 pub fn returning_clause(&self) -> Option<ReturningClause> {
3165 support::child(&self.syntax)
3166 }
3167 #[inline]
3168 pub fn using_clause(&self) -> Option<UsingClause> {
3169 support::child(&self.syntax)
3170 }
3171 #[inline]
3172 pub fn current_token(&self) -> Option<SyntaxToken> {
3173 support::token(&self.syntax, SyntaxKind::CURRENT_KW)
3174 }
3175 #[inline]
3176 pub fn delete_token(&self) -> Option<SyntaxToken> {
3177 support::token(&self.syntax, SyntaxKind::DELETE_KW)
3178 }
3179 #[inline]
3180 pub fn from_token(&self) -> Option<SyntaxToken> {
3181 support::token(&self.syntax, SyntaxKind::FROM_KW)
3182 }
3183 #[inline]
3184 pub fn of_token(&self) -> Option<SyntaxToken> {
3185 support::token(&self.syntax, SyntaxKind::OF_KW)
3186 }
3187 #[inline]
3188 pub fn where_token(&self) -> Option<SyntaxToken> {
3189 support::token(&self.syntax, SyntaxKind::WHERE_KW)
3190 }
3191}
3192
3193#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3194pub struct DeleteRows {
3195 pub(crate) syntax: SyntaxNode,
3196}
3197impl DeleteRows {
3198 #[inline]
3199 pub fn delete_token(&self) -> Option<SyntaxToken> {
3200 support::token(&self.syntax, SyntaxKind::DELETE_KW)
3201 }
3202 #[inline]
3203 pub fn rows_token(&self) -> Option<SyntaxToken> {
3204 support::token(&self.syntax, SyntaxKind::ROWS_KW)
3205 }
3206}
3207
3208#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3209pub struct DetachPartition {
3210 pub(crate) syntax: SyntaxNode,
3211}
3212impl DetachPartition {
3213 #[inline]
3214 pub fn detach_token(&self) -> Option<SyntaxToken> {
3215 support::token(&self.syntax, SyntaxKind::DETACH_KW)
3216 }
3217 #[inline]
3218 pub fn partition_token(&self) -> Option<SyntaxToken> {
3219 support::token(&self.syntax, SyntaxKind::PARTITION_KW)
3220 }
3221}
3222
3223#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3224pub struct DisableRls {
3225 pub(crate) syntax: SyntaxNode,
3226}
3227impl DisableRls {
3228 #[inline]
3229 pub fn disable_token(&self) -> Option<SyntaxToken> {
3230 support::token(&self.syntax, SyntaxKind::DISABLE_KW)
3231 }
3232 #[inline]
3233 pub fn level_token(&self) -> Option<SyntaxToken> {
3234 support::token(&self.syntax, SyntaxKind::LEVEL_KW)
3235 }
3236 #[inline]
3237 pub fn row_token(&self) -> Option<SyntaxToken> {
3238 support::token(&self.syntax, SyntaxKind::ROW_KW)
3239 }
3240 #[inline]
3241 pub fn security_token(&self) -> Option<SyntaxToken> {
3242 support::token(&self.syntax, SyntaxKind::SECURITY_KW)
3243 }
3244}
3245
3246#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3247pub struct DisableRule {
3248 pub(crate) syntax: SyntaxNode,
3249}
3250impl DisableRule {
3251 #[inline]
3252 pub fn disable_token(&self) -> Option<SyntaxToken> {
3253 support::token(&self.syntax, SyntaxKind::DISABLE_KW)
3254 }
3255 #[inline]
3256 pub fn rule_token(&self) -> Option<SyntaxToken> {
3257 support::token(&self.syntax, SyntaxKind::RULE_KW)
3258 }
3259}
3260
3261#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3262pub struct DisableTrigger {
3263 pub(crate) syntax: SyntaxNode,
3264}
3265impl DisableTrigger {
3266 #[inline]
3267 pub fn disable_token(&self) -> Option<SyntaxToken> {
3268 support::token(&self.syntax, SyntaxKind::DISABLE_KW)
3269 }
3270 #[inline]
3271 pub fn trigger_token(&self) -> Option<SyntaxToken> {
3272 support::token(&self.syntax, SyntaxKind::TRIGGER_KW)
3273 }
3274}
3275
3276#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3277pub struct Discard {
3278 pub(crate) syntax: SyntaxNode,
3279}
3280impl Discard {
3281 #[inline]
3282 pub fn all_token(&self) -> Option<SyntaxToken> {
3283 support::token(&self.syntax, SyntaxKind::ALL_KW)
3284 }
3285 #[inline]
3286 pub fn discard_token(&self) -> Option<SyntaxToken> {
3287 support::token(&self.syntax, SyntaxKind::DISCARD_KW)
3288 }
3289 #[inline]
3290 pub fn plans_token(&self) -> Option<SyntaxToken> {
3291 support::token(&self.syntax, SyntaxKind::PLANS_KW)
3292 }
3293 #[inline]
3294 pub fn sequences_token(&self) -> Option<SyntaxToken> {
3295 support::token(&self.syntax, SyntaxKind::SEQUENCES_KW)
3296 }
3297 #[inline]
3298 pub fn temp_token(&self) -> Option<SyntaxToken> {
3299 support::token(&self.syntax, SyntaxKind::TEMP_KW)
3300 }
3301 #[inline]
3302 pub fn temporary_token(&self) -> Option<SyntaxToken> {
3303 support::token(&self.syntax, SyntaxKind::TEMPORARY_KW)
3304 }
3305}
3306
3307#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3308pub struct DistinctClause {
3309 pub(crate) syntax: SyntaxNode,
3310}
3311impl DistinctClause {
3312 #[inline]
3313 pub fn exprs(&self) -> AstChildren<Expr> {
3314 support::children(&self.syntax)
3315 }
3316 #[inline]
3317 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
3318 support::token(&self.syntax, SyntaxKind::L_PAREN)
3319 }
3320 #[inline]
3321 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
3322 support::token(&self.syntax, SyntaxKind::R_PAREN)
3323 }
3324 #[inline]
3325 pub fn distinct_token(&self) -> Option<SyntaxToken> {
3326 support::token(&self.syntax, SyntaxKind::DISTINCT_KW)
3327 }
3328 #[inline]
3329 pub fn on_token(&self) -> Option<SyntaxToken> {
3330 support::token(&self.syntax, SyntaxKind::ON_KW)
3331 }
3332}
3333
3334#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3335pub struct Do {
3336 pub(crate) syntax: SyntaxNode,
3337}
3338impl Do {
3339 #[inline]
3340 pub fn do_token(&self) -> Option<SyntaxToken> {
3341 support::token(&self.syntax, SyntaxKind::DO_KW)
3342 }
3343}
3344
3345#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3346pub struct DoubleType {
3347 pub(crate) syntax: SyntaxNode,
3348}
3349impl DoubleType {
3350 #[inline]
3351 pub fn double_token(&self) -> Option<SyntaxToken> {
3352 support::token(&self.syntax, SyntaxKind::DOUBLE_KW)
3353 }
3354 #[inline]
3355 pub fn precision_token(&self) -> Option<SyntaxToken> {
3356 support::token(&self.syntax, SyntaxKind::PRECISION_KW)
3357 }
3358}
3359
3360#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3361pub struct Drop {
3362 pub(crate) syntax: SyntaxNode,
3363}
3364impl Drop {
3365 #[inline]
3366 pub fn drop_token(&self) -> Option<SyntaxToken> {
3367 support::token(&self.syntax, SyntaxKind::DROP_KW)
3368 }
3369}
3370
3371#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3372pub struct DropAccessMethod {
3373 pub(crate) syntax: SyntaxNode,
3374}
3375impl DropAccessMethod {
3376 #[inline]
3377 pub fn if_exists(&self) -> Option<IfExists> {
3378 support::child(&self.syntax)
3379 }
3380 #[inline]
3381 pub fn name_ref(&self) -> Option<NameRef> {
3382 support::child(&self.syntax)
3383 }
3384 #[inline]
3385 pub fn access_token(&self) -> Option<SyntaxToken> {
3386 support::token(&self.syntax, SyntaxKind::ACCESS_KW)
3387 }
3388 #[inline]
3389 pub fn drop_token(&self) -> Option<SyntaxToken> {
3390 support::token(&self.syntax, SyntaxKind::DROP_KW)
3391 }
3392 #[inline]
3393 pub fn method_token(&self) -> Option<SyntaxToken> {
3394 support::token(&self.syntax, SyntaxKind::METHOD_KW)
3395 }
3396}
3397
3398#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3399pub struct DropAggregate {
3400 pub(crate) syntax: SyntaxNode,
3401}
3402impl DropAggregate {
3403 #[inline]
3404 pub fn aggregates(&self) -> AstChildren<Aggregate> {
3405 support::children(&self.syntax)
3406 }
3407 #[inline]
3408 pub fn if_exists(&self) -> Option<IfExists> {
3409 support::child(&self.syntax)
3410 }
3411 #[inline]
3412 pub fn aggregate_token(&self) -> Option<SyntaxToken> {
3413 support::token(&self.syntax, SyntaxKind::AGGREGATE_KW)
3414 }
3415 #[inline]
3416 pub fn drop_token(&self) -> Option<SyntaxToken> {
3417 support::token(&self.syntax, SyntaxKind::DROP_KW)
3418 }
3419}
3420
3421#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3422pub struct DropCast {
3423 pub(crate) syntax: SyntaxNode,
3424}
3425impl DropCast {
3426 #[inline]
3427 pub fn if_exists(&self) -> Option<IfExists> {
3428 support::child(&self.syntax)
3429 }
3430 #[inline]
3431 pub fn ty(&self) -> Option<Type> {
3432 support::child(&self.syntax)
3433 }
3434 #[inline]
3435 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
3436 support::token(&self.syntax, SyntaxKind::L_PAREN)
3437 }
3438 #[inline]
3439 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
3440 support::token(&self.syntax, SyntaxKind::R_PAREN)
3441 }
3442 #[inline]
3443 pub fn as_token(&self) -> Option<SyntaxToken> {
3444 support::token(&self.syntax, SyntaxKind::AS_KW)
3445 }
3446 #[inline]
3447 pub fn cast_token(&self) -> Option<SyntaxToken> {
3448 support::token(&self.syntax, SyntaxKind::CAST_KW)
3449 }
3450 #[inline]
3451 pub fn drop_token(&self) -> Option<SyntaxToken> {
3452 support::token(&self.syntax, SyntaxKind::DROP_KW)
3453 }
3454}
3455
3456#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3457pub struct DropCollation {
3458 pub(crate) syntax: SyntaxNode,
3459}
3460impl DropCollation {
3461 #[inline]
3462 pub fn if_exists(&self) -> Option<IfExists> {
3463 support::child(&self.syntax)
3464 }
3465 #[inline]
3466 pub fn name_ref(&self) -> Option<NameRef> {
3467 support::child(&self.syntax)
3468 }
3469 #[inline]
3470 pub fn collation_token(&self) -> Option<SyntaxToken> {
3471 support::token(&self.syntax, SyntaxKind::COLLATION_KW)
3472 }
3473 #[inline]
3474 pub fn drop_token(&self) -> Option<SyntaxToken> {
3475 support::token(&self.syntax, SyntaxKind::DROP_KW)
3476 }
3477}
3478
3479#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3480pub struct DropColumn {
3481 pub(crate) syntax: SyntaxNode,
3482}
3483impl DropColumn {
3484 #[inline]
3485 pub fn if_exists(&self) -> Option<IfExists> {
3486 support::child(&self.syntax)
3487 }
3488 #[inline]
3489 pub fn column_token(&self) -> Option<SyntaxToken> {
3490 support::token(&self.syntax, SyntaxKind::COLUMN_KW)
3491 }
3492 #[inline]
3493 pub fn drop_token(&self) -> Option<SyntaxToken> {
3494 support::token(&self.syntax, SyntaxKind::DROP_KW)
3495 }
3496}
3497
3498#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3499pub struct DropConstraint {
3500 pub(crate) syntax: SyntaxNode,
3501}
3502impl DropConstraint {
3503 #[inline]
3504 pub fn if_exists(&self) -> Option<IfExists> {
3505 support::child(&self.syntax)
3506 }
3507 #[inline]
3508 pub fn name_ref(&self) -> Option<NameRef> {
3509 support::child(&self.syntax)
3510 }
3511 #[inline]
3512 pub fn cascade_token(&self) -> Option<SyntaxToken> {
3513 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
3514 }
3515 #[inline]
3516 pub fn constraint_token(&self) -> Option<SyntaxToken> {
3517 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
3518 }
3519 #[inline]
3520 pub fn drop_token(&self) -> Option<SyntaxToken> {
3521 support::token(&self.syntax, SyntaxKind::DROP_KW)
3522 }
3523 #[inline]
3524 pub fn restrict_token(&self) -> Option<SyntaxToken> {
3525 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
3526 }
3527}
3528
3529#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3530pub struct DropConversion {
3531 pub(crate) syntax: SyntaxNode,
3532}
3533impl DropConversion {
3534 #[inline]
3535 pub fn if_exists(&self) -> Option<IfExists> {
3536 support::child(&self.syntax)
3537 }
3538 #[inline]
3539 pub fn name_ref(&self) -> Option<NameRef> {
3540 support::child(&self.syntax)
3541 }
3542 #[inline]
3543 pub fn conversion_token(&self) -> Option<SyntaxToken> {
3544 support::token(&self.syntax, SyntaxKind::CONVERSION_KW)
3545 }
3546 #[inline]
3547 pub fn drop_token(&self) -> Option<SyntaxToken> {
3548 support::token(&self.syntax, SyntaxKind::DROP_KW)
3549 }
3550}
3551
3552#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3553pub struct DropDatabase {
3554 pub(crate) syntax: SyntaxNode,
3555}
3556impl DropDatabase {
3557 #[inline]
3558 pub fn if_exists(&self) -> Option<IfExists> {
3559 support::child(&self.syntax)
3560 }
3561 #[inline]
3562 pub fn name_ref(&self) -> Option<NameRef> {
3563 support::child(&self.syntax)
3564 }
3565 #[inline]
3566 pub fn database_token(&self) -> Option<SyntaxToken> {
3567 support::token(&self.syntax, SyntaxKind::DATABASE_KW)
3568 }
3569 #[inline]
3570 pub fn drop_token(&self) -> Option<SyntaxToken> {
3571 support::token(&self.syntax, SyntaxKind::DROP_KW)
3572 }
3573}
3574
3575#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3576pub struct DropDefault {
3577 pub(crate) syntax: SyntaxNode,
3578}
3579impl DropDefault {
3580 #[inline]
3581 pub fn default_token(&self) -> Option<SyntaxToken> {
3582 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
3583 }
3584 #[inline]
3585 pub fn drop_token(&self) -> Option<SyntaxToken> {
3586 support::token(&self.syntax, SyntaxKind::DROP_KW)
3587 }
3588}
3589
3590#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3591pub struct DropDomain {
3592 pub(crate) syntax: SyntaxNode,
3593}
3594impl DropDomain {
3595 #[inline]
3596 pub fn if_exists(&self) -> Option<IfExists> {
3597 support::child(&self.syntax)
3598 }
3599 #[inline]
3600 pub fn types(&self) -> AstChildren<Type> {
3601 support::children(&self.syntax)
3602 }
3603 #[inline]
3604 pub fn domain_token(&self) -> Option<SyntaxToken> {
3605 support::token(&self.syntax, SyntaxKind::DOMAIN_KW)
3606 }
3607 #[inline]
3608 pub fn drop_token(&self) -> Option<SyntaxToken> {
3609 support::token(&self.syntax, SyntaxKind::DROP_KW)
3610 }
3611}
3612
3613#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3614pub struct DropEventTrigger {
3615 pub(crate) syntax: SyntaxNode,
3616}
3617impl DropEventTrigger {
3618 #[inline]
3619 pub fn if_exists(&self) -> Option<IfExists> {
3620 support::child(&self.syntax)
3621 }
3622 #[inline]
3623 pub fn name_ref(&self) -> Option<NameRef> {
3624 support::child(&self.syntax)
3625 }
3626 #[inline]
3627 pub fn drop_token(&self) -> Option<SyntaxToken> {
3628 support::token(&self.syntax, SyntaxKind::DROP_KW)
3629 }
3630 #[inline]
3631 pub fn event_token(&self) -> Option<SyntaxToken> {
3632 support::token(&self.syntax, SyntaxKind::EVENT_KW)
3633 }
3634 #[inline]
3635 pub fn trigger_token(&self) -> Option<SyntaxToken> {
3636 support::token(&self.syntax, SyntaxKind::TRIGGER_KW)
3637 }
3638}
3639
3640#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3641pub struct DropExpression {
3642 pub(crate) syntax: SyntaxNode,
3643}
3644impl DropExpression {
3645 #[inline]
3646 pub fn if_exists(&self) -> Option<IfExists> {
3647 support::child(&self.syntax)
3648 }
3649 #[inline]
3650 pub fn drop_token(&self) -> Option<SyntaxToken> {
3651 support::token(&self.syntax, SyntaxKind::DROP_KW)
3652 }
3653 #[inline]
3654 pub fn expression_token(&self) -> Option<SyntaxToken> {
3655 support::token(&self.syntax, SyntaxKind::EXPRESSION_KW)
3656 }
3657}
3658
3659#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3660pub struct DropExtension {
3661 pub(crate) syntax: SyntaxNode,
3662}
3663impl DropExtension {
3664 #[inline]
3665 pub fn if_exists(&self) -> Option<IfExists> {
3666 support::child(&self.syntax)
3667 }
3668 #[inline]
3669 pub fn name_refs(&self) -> AstChildren<NameRef> {
3670 support::children(&self.syntax)
3671 }
3672 #[inline]
3673 pub fn drop_token(&self) -> Option<SyntaxToken> {
3674 support::token(&self.syntax, SyntaxKind::DROP_KW)
3675 }
3676 #[inline]
3677 pub fn extension_token(&self) -> Option<SyntaxToken> {
3678 support::token(&self.syntax, SyntaxKind::EXTENSION_KW)
3679 }
3680}
3681
3682#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3683pub struct DropForeignDataWrapper {
3684 pub(crate) syntax: SyntaxNode,
3685}
3686impl DropForeignDataWrapper {
3687 #[inline]
3688 pub fn if_exists(&self) -> Option<IfExists> {
3689 support::child(&self.syntax)
3690 }
3691 #[inline]
3692 pub fn name_ref(&self) -> Option<NameRef> {
3693 support::child(&self.syntax)
3694 }
3695 #[inline]
3696 pub fn data_token(&self) -> Option<SyntaxToken> {
3697 support::token(&self.syntax, SyntaxKind::DATA_KW)
3698 }
3699 #[inline]
3700 pub fn drop_token(&self) -> Option<SyntaxToken> {
3701 support::token(&self.syntax, SyntaxKind::DROP_KW)
3702 }
3703 #[inline]
3704 pub fn foreign_token(&self) -> Option<SyntaxToken> {
3705 support::token(&self.syntax, SyntaxKind::FOREIGN_KW)
3706 }
3707 #[inline]
3708 pub fn wrapper_token(&self) -> Option<SyntaxToken> {
3709 support::token(&self.syntax, SyntaxKind::WRAPPER_KW)
3710 }
3711}
3712
3713#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3714pub struct DropForeignTable {
3715 pub(crate) syntax: SyntaxNode,
3716}
3717impl DropForeignTable {
3718 #[inline]
3719 pub fn if_exists(&self) -> Option<IfExists> {
3720 support::child(&self.syntax)
3721 }
3722 #[inline]
3723 pub fn drop_token(&self) -> Option<SyntaxToken> {
3724 support::token(&self.syntax, SyntaxKind::DROP_KW)
3725 }
3726 #[inline]
3727 pub fn foreign_token(&self) -> Option<SyntaxToken> {
3728 support::token(&self.syntax, SyntaxKind::FOREIGN_KW)
3729 }
3730 #[inline]
3731 pub fn table_token(&self) -> Option<SyntaxToken> {
3732 support::token(&self.syntax, SyntaxKind::TABLE_KW)
3733 }
3734}
3735
3736#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3737pub struct DropFunction {
3738 pub(crate) syntax: SyntaxNode,
3739}
3740impl DropFunction {
3741 #[inline]
3742 pub fn if_exists(&self) -> Option<IfExists> {
3743 support::child(&self.syntax)
3744 }
3745 #[inline]
3746 pub fn drop_token(&self) -> Option<SyntaxToken> {
3747 support::token(&self.syntax, SyntaxKind::DROP_KW)
3748 }
3749 #[inline]
3750 pub fn function_token(&self) -> Option<SyntaxToken> {
3751 support::token(&self.syntax, SyntaxKind::FUNCTION_KW)
3752 }
3753}
3754
3755#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3756pub struct DropGroup {
3757 pub(crate) syntax: SyntaxNode,
3758}
3759impl DropGroup {
3760 #[inline]
3761 pub fn if_exists(&self) -> Option<IfExists> {
3762 support::child(&self.syntax)
3763 }
3764 #[inline]
3765 pub fn name_ref(&self) -> Option<NameRef> {
3766 support::child(&self.syntax)
3767 }
3768 #[inline]
3769 pub fn drop_token(&self) -> Option<SyntaxToken> {
3770 support::token(&self.syntax, SyntaxKind::DROP_KW)
3771 }
3772 #[inline]
3773 pub fn group_token(&self) -> Option<SyntaxToken> {
3774 support::token(&self.syntax, SyntaxKind::GROUP_KW)
3775 }
3776}
3777
3778#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3779pub struct DropIdentity {
3780 pub(crate) syntax: SyntaxNode,
3781}
3782impl DropIdentity {
3783 #[inline]
3784 pub fn if_exists(&self) -> Option<IfExists> {
3785 support::child(&self.syntax)
3786 }
3787 #[inline]
3788 pub fn drop_token(&self) -> Option<SyntaxToken> {
3789 support::token(&self.syntax, SyntaxKind::DROP_KW)
3790 }
3791 #[inline]
3792 pub fn identity_token(&self) -> Option<SyntaxToken> {
3793 support::token(&self.syntax, SyntaxKind::IDENTITY_KW)
3794 }
3795}
3796
3797#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3798pub struct DropIndex {
3799 pub(crate) syntax: SyntaxNode,
3800}
3801impl DropIndex {
3802 #[inline]
3803 pub fn if_exists(&self) -> Option<IfExists> {
3804 support::child(&self.syntax)
3805 }
3806 #[inline]
3807 pub fn paths(&self) -> AstChildren<Path> {
3808 support::children(&self.syntax)
3809 }
3810 #[inline]
3811 pub fn concurrently_token(&self) -> Option<SyntaxToken> {
3812 support::token(&self.syntax, SyntaxKind::CONCURRENTLY_KW)
3813 }
3814 #[inline]
3815 pub fn drop_token(&self) -> Option<SyntaxToken> {
3816 support::token(&self.syntax, SyntaxKind::DROP_KW)
3817 }
3818 #[inline]
3819 pub fn index_token(&self) -> Option<SyntaxToken> {
3820 support::token(&self.syntax, SyntaxKind::INDEX_KW)
3821 }
3822}
3823
3824#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3825pub struct DropLanguage {
3826 pub(crate) syntax: SyntaxNode,
3827}
3828impl DropLanguage {
3829 #[inline]
3830 pub fn if_exists(&self) -> Option<IfExists> {
3831 support::child(&self.syntax)
3832 }
3833 #[inline]
3834 pub fn name_ref(&self) -> Option<NameRef> {
3835 support::child(&self.syntax)
3836 }
3837 #[inline]
3838 pub fn drop_token(&self) -> Option<SyntaxToken> {
3839 support::token(&self.syntax, SyntaxKind::DROP_KW)
3840 }
3841 #[inline]
3842 pub fn language_token(&self) -> Option<SyntaxToken> {
3843 support::token(&self.syntax, SyntaxKind::LANGUAGE_KW)
3844 }
3845}
3846
3847#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3848pub struct DropMaterializedView {
3849 pub(crate) syntax: SyntaxNode,
3850}
3851impl DropMaterializedView {
3852 #[inline]
3853 pub fn if_exists(&self) -> Option<IfExists> {
3854 support::child(&self.syntax)
3855 }
3856 #[inline]
3857 pub fn drop_token(&self) -> Option<SyntaxToken> {
3858 support::token(&self.syntax, SyntaxKind::DROP_KW)
3859 }
3860 #[inline]
3861 pub fn materialized_token(&self) -> Option<SyntaxToken> {
3862 support::token(&self.syntax, SyntaxKind::MATERIALIZED_KW)
3863 }
3864 #[inline]
3865 pub fn view_token(&self) -> Option<SyntaxToken> {
3866 support::token(&self.syntax, SyntaxKind::VIEW_KW)
3867 }
3868}
3869
3870#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3871pub struct DropNotNull {
3872 pub(crate) syntax: SyntaxNode,
3873}
3874impl DropNotNull {
3875 #[inline]
3876 pub fn drop_token(&self) -> Option<SyntaxToken> {
3877 support::token(&self.syntax, SyntaxKind::DROP_KW)
3878 }
3879 #[inline]
3880 pub fn not_token(&self) -> Option<SyntaxToken> {
3881 support::token(&self.syntax, SyntaxKind::NOT_KW)
3882 }
3883 #[inline]
3884 pub fn null_token(&self) -> Option<SyntaxToken> {
3885 support::token(&self.syntax, SyntaxKind::NULL_KW)
3886 }
3887}
3888
3889#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3890pub struct DropOperator {
3891 pub(crate) syntax: SyntaxNode,
3892}
3893impl DropOperator {
3894 #[inline]
3895 pub fn if_exists(&self) -> Option<IfExists> {
3896 support::child(&self.syntax)
3897 }
3898 #[inline]
3899 pub fn drop_token(&self) -> Option<SyntaxToken> {
3900 support::token(&self.syntax, SyntaxKind::DROP_KW)
3901 }
3902 #[inline]
3903 pub fn operator_token(&self) -> Option<SyntaxToken> {
3904 support::token(&self.syntax, SyntaxKind::OPERATOR_KW)
3905 }
3906}
3907
3908#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3909pub struct DropOperatorClass {
3910 pub(crate) syntax: SyntaxNode,
3911}
3912impl DropOperatorClass {
3913 #[inline]
3914 pub fn if_exists(&self) -> Option<IfExists> {
3915 support::child(&self.syntax)
3916 }
3917 #[inline]
3918 pub fn name_ref(&self) -> Option<NameRef> {
3919 support::child(&self.syntax)
3920 }
3921 #[inline]
3922 pub fn class_token(&self) -> Option<SyntaxToken> {
3923 support::token(&self.syntax, SyntaxKind::CLASS_KW)
3924 }
3925 #[inline]
3926 pub fn drop_token(&self) -> Option<SyntaxToken> {
3927 support::token(&self.syntax, SyntaxKind::DROP_KW)
3928 }
3929 #[inline]
3930 pub fn operator_token(&self) -> Option<SyntaxToken> {
3931 support::token(&self.syntax, SyntaxKind::OPERATOR_KW)
3932 }
3933 #[inline]
3934 pub fn using_token(&self) -> Option<SyntaxToken> {
3935 support::token(&self.syntax, SyntaxKind::USING_KW)
3936 }
3937}
3938
3939#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3940pub struct DropOperatorFamily {
3941 pub(crate) syntax: SyntaxNode,
3942}
3943impl DropOperatorFamily {
3944 #[inline]
3945 pub fn if_exists(&self) -> Option<IfExists> {
3946 support::child(&self.syntax)
3947 }
3948 #[inline]
3949 pub fn drop_token(&self) -> Option<SyntaxToken> {
3950 support::token(&self.syntax, SyntaxKind::DROP_KW)
3951 }
3952 #[inline]
3953 pub fn family_token(&self) -> Option<SyntaxToken> {
3954 support::token(&self.syntax, SyntaxKind::FAMILY_KW)
3955 }
3956 #[inline]
3957 pub fn operator_token(&self) -> Option<SyntaxToken> {
3958 support::token(&self.syntax, SyntaxKind::OPERATOR_KW)
3959 }
3960}
3961
3962#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3963pub struct DropOwned {
3964 pub(crate) syntax: SyntaxNode,
3965}
3966impl DropOwned {
3967 #[inline]
3968 pub fn by_token(&self) -> Option<SyntaxToken> {
3969 support::token(&self.syntax, SyntaxKind::BY_KW)
3970 }
3971 #[inline]
3972 pub fn drop_token(&self) -> Option<SyntaxToken> {
3973 support::token(&self.syntax, SyntaxKind::DROP_KW)
3974 }
3975 #[inline]
3976 pub fn owned_token(&self) -> Option<SyntaxToken> {
3977 support::token(&self.syntax, SyntaxKind::OWNED_KW)
3978 }
3979}
3980
3981#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3982pub struct DropPolicy {
3983 pub(crate) syntax: SyntaxNode,
3984}
3985impl DropPolicy {
3986 #[inline]
3987 pub fn if_exists(&self) -> Option<IfExists> {
3988 support::child(&self.syntax)
3989 }
3990 #[inline]
3991 pub fn name_ref(&self) -> Option<NameRef> {
3992 support::child(&self.syntax)
3993 }
3994 #[inline]
3995 pub fn drop_token(&self) -> Option<SyntaxToken> {
3996 support::token(&self.syntax, SyntaxKind::DROP_KW)
3997 }
3998 #[inline]
3999 pub fn on_token(&self) -> Option<SyntaxToken> {
4000 support::token(&self.syntax, SyntaxKind::ON_KW)
4001 }
4002 #[inline]
4003 pub fn policy_token(&self) -> Option<SyntaxToken> {
4004 support::token(&self.syntax, SyntaxKind::POLICY_KW)
4005 }
4006}
4007
4008#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4009pub struct DropProcedure {
4010 pub(crate) syntax: SyntaxNode,
4011}
4012impl DropProcedure {
4013 #[inline]
4014 pub fn if_exists(&self) -> Option<IfExists> {
4015 support::child(&self.syntax)
4016 }
4017 #[inline]
4018 pub fn drop_token(&self) -> Option<SyntaxToken> {
4019 support::token(&self.syntax, SyntaxKind::DROP_KW)
4020 }
4021 #[inline]
4022 pub fn procedure_token(&self) -> Option<SyntaxToken> {
4023 support::token(&self.syntax, SyntaxKind::PROCEDURE_KW)
4024 }
4025}
4026
4027#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4028pub struct DropPublication {
4029 pub(crate) syntax: SyntaxNode,
4030}
4031impl DropPublication {
4032 #[inline]
4033 pub fn if_exists(&self) -> Option<IfExists> {
4034 support::child(&self.syntax)
4035 }
4036 #[inline]
4037 pub fn name_refs(&self) -> AstChildren<NameRef> {
4038 support::children(&self.syntax)
4039 }
4040 #[inline]
4041 pub fn drop_token(&self) -> Option<SyntaxToken> {
4042 support::token(&self.syntax, SyntaxKind::DROP_KW)
4043 }
4044 #[inline]
4045 pub fn publication_token(&self) -> Option<SyntaxToken> {
4046 support::token(&self.syntax, SyntaxKind::PUBLICATION_KW)
4047 }
4048}
4049
4050#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4051pub struct DropRole {
4052 pub(crate) syntax: SyntaxNode,
4053}
4054impl DropRole {
4055 #[inline]
4056 pub fn if_exists(&self) -> Option<IfExists> {
4057 support::child(&self.syntax)
4058 }
4059 #[inline]
4060 pub fn name_refs(&self) -> AstChildren<NameRef> {
4061 support::children(&self.syntax)
4062 }
4063 #[inline]
4064 pub fn drop_token(&self) -> Option<SyntaxToken> {
4065 support::token(&self.syntax, SyntaxKind::DROP_KW)
4066 }
4067 #[inline]
4068 pub fn role_token(&self) -> Option<SyntaxToken> {
4069 support::token(&self.syntax, SyntaxKind::ROLE_KW)
4070 }
4071}
4072
4073#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4074pub struct DropRoutine {
4075 pub(crate) syntax: SyntaxNode,
4076}
4077impl DropRoutine {
4078 #[inline]
4079 pub fn if_exists(&self) -> Option<IfExists> {
4080 support::child(&self.syntax)
4081 }
4082 #[inline]
4083 pub fn drop_token(&self) -> Option<SyntaxToken> {
4084 support::token(&self.syntax, SyntaxKind::DROP_KW)
4085 }
4086 #[inline]
4087 pub fn routine_token(&self) -> Option<SyntaxToken> {
4088 support::token(&self.syntax, SyntaxKind::ROUTINE_KW)
4089 }
4090}
4091
4092#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4093pub struct DropRule {
4094 pub(crate) syntax: SyntaxNode,
4095}
4096impl DropRule {
4097 #[inline]
4098 pub fn if_exists(&self) -> Option<IfExists> {
4099 support::child(&self.syntax)
4100 }
4101 #[inline]
4102 pub fn name_ref(&self) -> Option<NameRef> {
4103 support::child(&self.syntax)
4104 }
4105 #[inline]
4106 pub fn drop_token(&self) -> Option<SyntaxToken> {
4107 support::token(&self.syntax, SyntaxKind::DROP_KW)
4108 }
4109 #[inline]
4110 pub fn on_token(&self) -> Option<SyntaxToken> {
4111 support::token(&self.syntax, SyntaxKind::ON_KW)
4112 }
4113 #[inline]
4114 pub fn rule_token(&self) -> Option<SyntaxToken> {
4115 support::token(&self.syntax, SyntaxKind::RULE_KW)
4116 }
4117}
4118
4119#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4120pub struct DropSchema {
4121 pub(crate) syntax: SyntaxNode,
4122}
4123impl DropSchema {
4124 #[inline]
4125 pub fn if_exists(&self) -> Option<IfExists> {
4126 support::child(&self.syntax)
4127 }
4128 #[inline]
4129 pub fn drop_token(&self) -> Option<SyntaxToken> {
4130 support::token(&self.syntax, SyntaxKind::DROP_KW)
4131 }
4132 #[inline]
4133 pub fn schema_token(&self) -> Option<SyntaxToken> {
4134 support::token(&self.syntax, SyntaxKind::SCHEMA_KW)
4135 }
4136}
4137
4138#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4139pub struct DropSequence {
4140 pub(crate) syntax: SyntaxNode,
4141}
4142impl DropSequence {
4143 #[inline]
4144 pub fn if_exists(&self) -> Option<IfExists> {
4145 support::child(&self.syntax)
4146 }
4147 #[inline]
4148 pub fn name_refs(&self) -> AstChildren<NameRef> {
4149 support::children(&self.syntax)
4150 }
4151 #[inline]
4152 pub fn drop_token(&self) -> Option<SyntaxToken> {
4153 support::token(&self.syntax, SyntaxKind::DROP_KW)
4154 }
4155 #[inline]
4156 pub fn sequence_token(&self) -> Option<SyntaxToken> {
4157 support::token(&self.syntax, SyntaxKind::SEQUENCE_KW)
4158 }
4159}
4160
4161#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4162pub struct DropServer {
4163 pub(crate) syntax: SyntaxNode,
4164}
4165impl DropServer {
4166 #[inline]
4167 pub fn if_exists(&self) -> Option<IfExists> {
4168 support::child(&self.syntax)
4169 }
4170 #[inline]
4171 pub fn name_ref(&self) -> Option<NameRef> {
4172 support::child(&self.syntax)
4173 }
4174 #[inline]
4175 pub fn drop_token(&self) -> Option<SyntaxToken> {
4176 support::token(&self.syntax, SyntaxKind::DROP_KW)
4177 }
4178 #[inline]
4179 pub fn server_token(&self) -> Option<SyntaxToken> {
4180 support::token(&self.syntax, SyntaxKind::SERVER_KW)
4181 }
4182}
4183
4184#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4185pub struct DropStatistics {
4186 pub(crate) syntax: SyntaxNode,
4187}
4188impl DropStatistics {
4189 #[inline]
4190 pub fn if_exists(&self) -> Option<IfExists> {
4191 support::child(&self.syntax)
4192 }
4193 #[inline]
4194 pub fn name_ref(&self) -> Option<NameRef> {
4195 support::child(&self.syntax)
4196 }
4197 #[inline]
4198 pub fn drop_token(&self) -> Option<SyntaxToken> {
4199 support::token(&self.syntax, SyntaxKind::DROP_KW)
4200 }
4201 #[inline]
4202 pub fn statistics_token(&self) -> Option<SyntaxToken> {
4203 support::token(&self.syntax, SyntaxKind::STATISTICS_KW)
4204 }
4205}
4206
4207#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4208pub struct DropSubscription {
4209 pub(crate) syntax: SyntaxNode,
4210}
4211impl DropSubscription {
4212 #[inline]
4213 pub fn if_exists(&self) -> Option<IfExists> {
4214 support::child(&self.syntax)
4215 }
4216 #[inline]
4217 pub fn name_ref(&self) -> Option<NameRef> {
4218 support::child(&self.syntax)
4219 }
4220 #[inline]
4221 pub fn drop_token(&self) -> Option<SyntaxToken> {
4222 support::token(&self.syntax, SyntaxKind::DROP_KW)
4223 }
4224 #[inline]
4225 pub fn subscription_token(&self) -> Option<SyntaxToken> {
4226 support::token(&self.syntax, SyntaxKind::SUBSCRIPTION_KW)
4227 }
4228}
4229
4230#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4231pub struct DropTable {
4232 pub(crate) syntax: SyntaxNode,
4233}
4234impl DropTable {
4235 #[inline]
4236 pub fn if_exists(&self) -> Option<IfExists> {
4237 support::child(&self.syntax)
4238 }
4239 #[inline]
4240 pub fn path(&self) -> Option<Path> {
4241 support::child(&self.syntax)
4242 }
4243 #[inline]
4244 pub fn comma_token(&self) -> Option<SyntaxToken> {
4245 support::token(&self.syntax, SyntaxKind::COMMA)
4246 }
4247 #[inline]
4248 pub fn cascade_token(&self) -> Option<SyntaxToken> {
4249 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
4250 }
4251 #[inline]
4252 pub fn drop_token(&self) -> Option<SyntaxToken> {
4253 support::token(&self.syntax, SyntaxKind::DROP_KW)
4254 }
4255 #[inline]
4256 pub fn restrict_token(&self) -> Option<SyntaxToken> {
4257 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
4258 }
4259 #[inline]
4260 pub fn table_token(&self) -> Option<SyntaxToken> {
4261 support::token(&self.syntax, SyntaxKind::TABLE_KW)
4262 }
4263}
4264
4265#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4266pub struct DropTablespace {
4267 pub(crate) syntax: SyntaxNode,
4268}
4269impl DropTablespace {
4270 #[inline]
4271 pub fn if_exists(&self) -> Option<IfExists> {
4272 support::child(&self.syntax)
4273 }
4274 #[inline]
4275 pub fn name_ref(&self) -> Option<NameRef> {
4276 support::child(&self.syntax)
4277 }
4278 #[inline]
4279 pub fn drop_token(&self) -> Option<SyntaxToken> {
4280 support::token(&self.syntax, SyntaxKind::DROP_KW)
4281 }
4282 #[inline]
4283 pub fn tablespace_token(&self) -> Option<SyntaxToken> {
4284 support::token(&self.syntax, SyntaxKind::TABLESPACE_KW)
4285 }
4286}
4287
4288#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4289pub struct DropTextSearchConfig {
4290 pub(crate) syntax: SyntaxNode,
4291}
4292impl DropTextSearchConfig {
4293 #[inline]
4294 pub fn if_exists(&self) -> Option<IfExists> {
4295 support::child(&self.syntax)
4296 }
4297 #[inline]
4298 pub fn configuration_token(&self) -> Option<SyntaxToken> {
4299 support::token(&self.syntax, SyntaxKind::CONFIGURATION_KW)
4300 }
4301 #[inline]
4302 pub fn drop_token(&self) -> Option<SyntaxToken> {
4303 support::token(&self.syntax, SyntaxKind::DROP_KW)
4304 }
4305 #[inline]
4306 pub fn search_token(&self) -> Option<SyntaxToken> {
4307 support::token(&self.syntax, SyntaxKind::SEARCH_KW)
4308 }
4309 #[inline]
4310 pub fn text_token(&self) -> Option<SyntaxToken> {
4311 support::token(&self.syntax, SyntaxKind::TEXT_KW)
4312 }
4313}
4314
4315#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4316pub struct DropTextSearchDict {
4317 pub(crate) syntax: SyntaxNode,
4318}
4319impl DropTextSearchDict {
4320 #[inline]
4321 pub fn if_exists(&self) -> Option<IfExists> {
4322 support::child(&self.syntax)
4323 }
4324 #[inline]
4325 pub fn dictionary_token(&self) -> Option<SyntaxToken> {
4326 support::token(&self.syntax, SyntaxKind::DICTIONARY_KW)
4327 }
4328 #[inline]
4329 pub fn drop_token(&self) -> Option<SyntaxToken> {
4330 support::token(&self.syntax, SyntaxKind::DROP_KW)
4331 }
4332 #[inline]
4333 pub fn search_token(&self) -> Option<SyntaxToken> {
4334 support::token(&self.syntax, SyntaxKind::SEARCH_KW)
4335 }
4336 #[inline]
4337 pub fn text_token(&self) -> Option<SyntaxToken> {
4338 support::token(&self.syntax, SyntaxKind::TEXT_KW)
4339 }
4340}
4341
4342#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4343pub struct DropTextSearchParser {
4344 pub(crate) syntax: SyntaxNode,
4345}
4346impl DropTextSearchParser {
4347 #[inline]
4348 pub fn if_exists(&self) -> Option<IfExists> {
4349 support::child(&self.syntax)
4350 }
4351 #[inline]
4352 pub fn name_ref(&self) -> Option<NameRef> {
4353 support::child(&self.syntax)
4354 }
4355 #[inline]
4356 pub fn drop_token(&self) -> Option<SyntaxToken> {
4357 support::token(&self.syntax, SyntaxKind::DROP_KW)
4358 }
4359 #[inline]
4360 pub fn parser_token(&self) -> Option<SyntaxToken> {
4361 support::token(&self.syntax, SyntaxKind::PARSER_KW)
4362 }
4363 #[inline]
4364 pub fn search_token(&self) -> Option<SyntaxToken> {
4365 support::token(&self.syntax, SyntaxKind::SEARCH_KW)
4366 }
4367 #[inline]
4368 pub fn text_token(&self) -> Option<SyntaxToken> {
4369 support::token(&self.syntax, SyntaxKind::TEXT_KW)
4370 }
4371}
4372
4373#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4374pub struct DropTextSearchTemplate {
4375 pub(crate) syntax: SyntaxNode,
4376}
4377impl DropTextSearchTemplate {
4378 #[inline]
4379 pub fn if_exists(&self) -> Option<IfExists> {
4380 support::child(&self.syntax)
4381 }
4382 #[inline]
4383 pub fn drop_token(&self) -> Option<SyntaxToken> {
4384 support::token(&self.syntax, SyntaxKind::DROP_KW)
4385 }
4386 #[inline]
4387 pub fn search_token(&self) -> Option<SyntaxToken> {
4388 support::token(&self.syntax, SyntaxKind::SEARCH_KW)
4389 }
4390 #[inline]
4391 pub fn template_token(&self) -> Option<SyntaxToken> {
4392 support::token(&self.syntax, SyntaxKind::TEMPLATE_KW)
4393 }
4394 #[inline]
4395 pub fn text_token(&self) -> Option<SyntaxToken> {
4396 support::token(&self.syntax, SyntaxKind::TEXT_KW)
4397 }
4398}
4399
4400#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4401pub struct DropTransform {
4402 pub(crate) syntax: SyntaxNode,
4403}
4404impl DropTransform {
4405 #[inline]
4406 pub fn if_exists(&self) -> Option<IfExists> {
4407 support::child(&self.syntax)
4408 }
4409 #[inline]
4410 pub fn drop_token(&self) -> Option<SyntaxToken> {
4411 support::token(&self.syntax, SyntaxKind::DROP_KW)
4412 }
4413 #[inline]
4414 pub fn transform_token(&self) -> Option<SyntaxToken> {
4415 support::token(&self.syntax, SyntaxKind::TRANSFORM_KW)
4416 }
4417}
4418
4419#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4420pub struct DropTrigger {
4421 pub(crate) syntax: SyntaxNode,
4422}
4423impl DropTrigger {
4424 #[inline]
4425 pub fn if_exists(&self) -> Option<IfExists> {
4426 support::child(&self.syntax)
4427 }
4428 #[inline]
4429 pub fn name_ref(&self) -> Option<NameRef> {
4430 support::child(&self.syntax)
4431 }
4432 #[inline]
4433 pub fn drop_token(&self) -> Option<SyntaxToken> {
4434 support::token(&self.syntax, SyntaxKind::DROP_KW)
4435 }
4436 #[inline]
4437 pub fn on_token(&self) -> Option<SyntaxToken> {
4438 support::token(&self.syntax, SyntaxKind::ON_KW)
4439 }
4440 #[inline]
4441 pub fn trigger_token(&self) -> Option<SyntaxToken> {
4442 support::token(&self.syntax, SyntaxKind::TRIGGER_KW)
4443 }
4444}
4445
4446#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4447pub struct DropType {
4448 pub(crate) syntax: SyntaxNode,
4449}
4450impl DropType {
4451 #[inline]
4452 pub fn if_exists(&self) -> Option<IfExists> {
4453 support::child(&self.syntax)
4454 }
4455 #[inline]
4456 pub fn paths(&self) -> AstChildren<Path> {
4457 support::children(&self.syntax)
4458 }
4459 #[inline]
4460 pub fn cascade_token(&self) -> Option<SyntaxToken> {
4461 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
4462 }
4463 #[inline]
4464 pub fn drop_token(&self) -> Option<SyntaxToken> {
4465 support::token(&self.syntax, SyntaxKind::DROP_KW)
4466 }
4467 #[inline]
4468 pub fn restrict_token(&self) -> Option<SyntaxToken> {
4469 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
4470 }
4471 #[inline]
4472 pub fn type_token(&self) -> Option<SyntaxToken> {
4473 support::token(&self.syntax, SyntaxKind::TYPE_KW)
4474 }
4475}
4476
4477#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4478pub struct DropUser {
4479 pub(crate) syntax: SyntaxNode,
4480}
4481impl DropUser {
4482 #[inline]
4483 pub fn if_exists(&self) -> Option<IfExists> {
4484 support::child(&self.syntax)
4485 }
4486 #[inline]
4487 pub fn name_refs(&self) -> AstChildren<NameRef> {
4488 support::children(&self.syntax)
4489 }
4490 #[inline]
4491 pub fn drop_token(&self) -> Option<SyntaxToken> {
4492 support::token(&self.syntax, SyntaxKind::DROP_KW)
4493 }
4494 #[inline]
4495 pub fn user_token(&self) -> Option<SyntaxToken> {
4496 support::token(&self.syntax, SyntaxKind::USER_KW)
4497 }
4498}
4499
4500#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4501pub struct DropUserMapping {
4502 pub(crate) syntax: SyntaxNode,
4503}
4504impl DropUserMapping {
4505 #[inline]
4506 pub fn if_exists(&self) -> Option<IfExists> {
4507 support::child(&self.syntax)
4508 }
4509 #[inline]
4510 pub fn name_ref(&self) -> Option<NameRef> {
4511 support::child(&self.syntax)
4512 }
4513 #[inline]
4514 pub fn drop_token(&self) -> Option<SyntaxToken> {
4515 support::token(&self.syntax, SyntaxKind::DROP_KW)
4516 }
4517 #[inline]
4518 pub fn for_token(&self) -> Option<SyntaxToken> {
4519 support::token(&self.syntax, SyntaxKind::FOR_KW)
4520 }
4521 #[inline]
4522 pub fn mapping_token(&self) -> Option<SyntaxToken> {
4523 support::token(&self.syntax, SyntaxKind::MAPPING_KW)
4524 }
4525 #[inline]
4526 pub fn server_token(&self) -> Option<SyntaxToken> {
4527 support::token(&self.syntax, SyntaxKind::SERVER_KW)
4528 }
4529 #[inline]
4530 pub fn user_token(&self) -> Option<SyntaxToken> {
4531 support::token(&self.syntax, SyntaxKind::USER_KW)
4532 }
4533}
4534
4535#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4536pub struct DropView {
4537 pub(crate) syntax: SyntaxNode,
4538}
4539impl DropView {
4540 #[inline]
4541 pub fn if_exists(&self) -> Option<IfExists> {
4542 support::child(&self.syntax)
4543 }
4544 #[inline]
4545 pub fn drop_token(&self) -> Option<SyntaxToken> {
4546 support::token(&self.syntax, SyntaxKind::DROP_KW)
4547 }
4548 #[inline]
4549 pub fn view_token(&self) -> Option<SyntaxToken> {
4550 support::token(&self.syntax, SyntaxKind::VIEW_KW)
4551 }
4552}
4553
4554#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4555pub struct ElseClause {
4556 pub(crate) syntax: SyntaxNode,
4557}
4558impl ElseClause {
4559 #[inline]
4560 pub fn expr(&self) -> Option<Expr> {
4561 support::child(&self.syntax)
4562 }
4563 #[inline]
4564 pub fn else_token(&self) -> Option<SyntaxToken> {
4565 support::token(&self.syntax, SyntaxKind::ELSE_KW)
4566 }
4567}
4568
4569#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4570pub struct EnableAlwaysRule {
4571 pub(crate) syntax: SyntaxNode,
4572}
4573impl EnableAlwaysRule {
4574 #[inline]
4575 pub fn always_token(&self) -> Option<SyntaxToken> {
4576 support::token(&self.syntax, SyntaxKind::ALWAYS_KW)
4577 }
4578 #[inline]
4579 pub fn enable_token(&self) -> Option<SyntaxToken> {
4580 support::token(&self.syntax, SyntaxKind::ENABLE_KW)
4581 }
4582 #[inline]
4583 pub fn rule_token(&self) -> Option<SyntaxToken> {
4584 support::token(&self.syntax, SyntaxKind::RULE_KW)
4585 }
4586}
4587
4588#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4589pub struct EnableAlwaysTrigger {
4590 pub(crate) syntax: SyntaxNode,
4591}
4592impl EnableAlwaysTrigger {
4593 #[inline]
4594 pub fn always_token(&self) -> Option<SyntaxToken> {
4595 support::token(&self.syntax, SyntaxKind::ALWAYS_KW)
4596 }
4597 #[inline]
4598 pub fn enable_token(&self) -> Option<SyntaxToken> {
4599 support::token(&self.syntax, SyntaxKind::ENABLE_KW)
4600 }
4601 #[inline]
4602 pub fn trigger_token(&self) -> Option<SyntaxToken> {
4603 support::token(&self.syntax, SyntaxKind::TRIGGER_KW)
4604 }
4605}
4606
4607#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4608pub struct EnableReplicaRule {
4609 pub(crate) syntax: SyntaxNode,
4610}
4611impl EnableReplicaRule {
4612 #[inline]
4613 pub fn enable_token(&self) -> Option<SyntaxToken> {
4614 support::token(&self.syntax, SyntaxKind::ENABLE_KW)
4615 }
4616 #[inline]
4617 pub fn replica_token(&self) -> Option<SyntaxToken> {
4618 support::token(&self.syntax, SyntaxKind::REPLICA_KW)
4619 }
4620 #[inline]
4621 pub fn rule_token(&self) -> Option<SyntaxToken> {
4622 support::token(&self.syntax, SyntaxKind::RULE_KW)
4623 }
4624}
4625
4626#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4627pub struct EnableReplicaTrigger {
4628 pub(crate) syntax: SyntaxNode,
4629}
4630impl EnableReplicaTrigger {
4631 #[inline]
4632 pub fn enable_token(&self) -> Option<SyntaxToken> {
4633 support::token(&self.syntax, SyntaxKind::ENABLE_KW)
4634 }
4635 #[inline]
4636 pub fn replica_token(&self) -> Option<SyntaxToken> {
4637 support::token(&self.syntax, SyntaxKind::REPLICA_KW)
4638 }
4639 #[inline]
4640 pub fn trigger_token(&self) -> Option<SyntaxToken> {
4641 support::token(&self.syntax, SyntaxKind::TRIGGER_KW)
4642 }
4643}
4644
4645#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4646pub struct EnableRls {
4647 pub(crate) syntax: SyntaxNode,
4648}
4649impl EnableRls {
4650 #[inline]
4651 pub fn enable_token(&self) -> Option<SyntaxToken> {
4652 support::token(&self.syntax, SyntaxKind::ENABLE_KW)
4653 }
4654 #[inline]
4655 pub fn level_token(&self) -> Option<SyntaxToken> {
4656 support::token(&self.syntax, SyntaxKind::LEVEL_KW)
4657 }
4658 #[inline]
4659 pub fn row_token(&self) -> Option<SyntaxToken> {
4660 support::token(&self.syntax, SyntaxKind::ROW_KW)
4661 }
4662 #[inline]
4663 pub fn security_token(&self) -> Option<SyntaxToken> {
4664 support::token(&self.syntax, SyntaxKind::SECURITY_KW)
4665 }
4666}
4667
4668#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4669pub struct EnableRule {
4670 pub(crate) syntax: SyntaxNode,
4671}
4672impl EnableRule {
4673 #[inline]
4674 pub fn enable_token(&self) -> Option<SyntaxToken> {
4675 support::token(&self.syntax, SyntaxKind::ENABLE_KW)
4676 }
4677 #[inline]
4678 pub fn rule_token(&self) -> Option<SyntaxToken> {
4679 support::token(&self.syntax, SyntaxKind::RULE_KW)
4680 }
4681}
4682
4683#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4684pub struct EnableTrigger {
4685 pub(crate) syntax: SyntaxNode,
4686}
4687impl EnableTrigger {
4688 #[inline]
4689 pub fn enable_token(&self) -> Option<SyntaxToken> {
4690 support::token(&self.syntax, SyntaxKind::ENABLE_KW)
4691 }
4692 #[inline]
4693 pub fn trigger_token(&self) -> Option<SyntaxToken> {
4694 support::token(&self.syntax, SyntaxKind::TRIGGER_KW)
4695 }
4696}
4697
4698#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4699pub struct Enforced {
4700 pub(crate) syntax: SyntaxNode,
4701}
4702impl Enforced {
4703 #[inline]
4704 pub fn enforced_token(&self) -> Option<SyntaxToken> {
4705 support::token(&self.syntax, SyntaxKind::ENFORCED_KW)
4706 }
4707}
4708
4709#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4710pub struct ExcludeConstraint {
4711 pub(crate) syntax: SyntaxNode,
4712}
4713impl ExcludeConstraint {
4714 #[inline]
4715 pub fn constraint_exclusion_list(&self) -> Option<ConstraintExclusionList> {
4716 support::child(&self.syntax)
4717 }
4718 #[inline]
4719 pub fn constraint_index_method(&self) -> Option<ConstraintIndexMethod> {
4720 support::child(&self.syntax)
4721 }
4722 #[inline]
4723 pub fn exclude_token(&self) -> Option<SyntaxToken> {
4724 support::token(&self.syntax, SyntaxKind::EXCLUDE_KW)
4725 }
4726}
4727
4728#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4729pub struct Execute {
4730 pub(crate) syntax: SyntaxNode,
4731}
4732impl Execute {
4733 #[inline]
4734 pub fn execute_token(&self) -> Option<SyntaxToken> {
4735 support::token(&self.syntax, SyntaxKind::EXECUTE_KW)
4736 }
4737}
4738
4739#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4740pub struct Explain {
4741 pub(crate) syntax: SyntaxNode,
4742}
4743impl Explain {
4744 #[inline]
4745 pub fn explain_token(&self) -> Option<SyntaxToken> {
4746 support::token(&self.syntax, SyntaxKind::EXPLAIN_KW)
4747 }
4748}
4749
4750#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4751pub struct FatArrow {
4752 pub(crate) syntax: SyntaxNode,
4753}
4754impl FatArrow {
4755 #[inline]
4756 pub fn eq_token(&self) -> Option<SyntaxToken> {
4757 support::token(&self.syntax, SyntaxKind::EQ)
4758 }
4759 #[inline]
4760 pub fn r_angle_token(&self) -> Option<SyntaxToken> {
4761 support::token(&self.syntax, SyntaxKind::R_ANGLE)
4762 }
4763}
4764
4765#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4766pub struct Fetch {
4767 pub(crate) syntax: SyntaxNode,
4768}
4769impl Fetch {
4770 #[inline]
4771 pub fn fetch_token(&self) -> Option<SyntaxToken> {
4772 support::token(&self.syntax, SyntaxKind::FETCH_KW)
4773 }
4774}
4775
4776#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4777pub struct FetchClause {
4778 pub(crate) syntax: SyntaxNode,
4779}
4780impl FetchClause {
4781 #[inline]
4782 pub fn expr(&self) -> Option<Expr> {
4783 support::child(&self.syntax)
4784 }
4785 #[inline]
4786 pub fn fetch_token(&self) -> Option<SyntaxToken> {
4787 support::token(&self.syntax, SyntaxKind::FETCH_KW)
4788 }
4789 #[inline]
4790 pub fn first_token(&self) -> Option<SyntaxToken> {
4791 support::token(&self.syntax, SyntaxKind::FIRST_KW)
4792 }
4793 #[inline]
4794 pub fn next_token(&self) -> Option<SyntaxToken> {
4795 support::token(&self.syntax, SyntaxKind::NEXT_KW)
4796 }
4797 #[inline]
4798 pub fn only_token(&self) -> Option<SyntaxToken> {
4799 support::token(&self.syntax, SyntaxKind::ONLY_KW)
4800 }
4801 #[inline]
4802 pub fn row_token(&self) -> Option<SyntaxToken> {
4803 support::token(&self.syntax, SyntaxKind::ROW_KW)
4804 }
4805 #[inline]
4806 pub fn rows_token(&self) -> Option<SyntaxToken> {
4807 support::token(&self.syntax, SyntaxKind::ROWS_KW)
4808 }
4809 #[inline]
4810 pub fn ties_token(&self) -> Option<SyntaxToken> {
4811 support::token(&self.syntax, SyntaxKind::TIES_KW)
4812 }
4813 #[inline]
4814 pub fn with_token(&self) -> Option<SyntaxToken> {
4815 support::token(&self.syntax, SyntaxKind::WITH_KW)
4816 }
4817}
4818
4819#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4820pub struct FieldExpr {
4821 pub(crate) syntax: SyntaxNode,
4822}
4823impl FieldExpr {
4824 #[inline]
4825 pub fn expr(&self) -> Option<Expr> {
4826 support::child(&self.syntax)
4827 }
4828 #[inline]
4829 pub fn name_ref(&self) -> Option<NameRef> {
4830 support::child(&self.syntax)
4831 }
4832 #[inline]
4833 pub fn star_token(&self) -> Option<SyntaxToken> {
4834 support::token(&self.syntax, SyntaxKind::STAR)
4835 }
4836 #[inline]
4837 pub fn dot_token(&self) -> Option<SyntaxToken> {
4838 support::token(&self.syntax, SyntaxKind::DOT)
4839 }
4840}
4841
4842#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4843pub struct FilterClause {
4844 pub(crate) syntax: SyntaxNode,
4845}
4846impl FilterClause {
4847 #[inline]
4848 pub fn expr(&self) -> Option<Expr> {
4849 support::child(&self.syntax)
4850 }
4851 #[inline]
4852 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
4853 support::token(&self.syntax, SyntaxKind::L_PAREN)
4854 }
4855 #[inline]
4856 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
4857 support::token(&self.syntax, SyntaxKind::R_PAREN)
4858 }
4859 #[inline]
4860 pub fn filter_token(&self) -> Option<SyntaxToken> {
4861 support::token(&self.syntax, SyntaxKind::FILTER_KW)
4862 }
4863 #[inline]
4864 pub fn where_token(&self) -> Option<SyntaxToken> {
4865 support::token(&self.syntax, SyntaxKind::WHERE_KW)
4866 }
4867}
4868
4869#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4870pub struct ForceRls {
4871 pub(crate) syntax: SyntaxNode,
4872}
4873impl ForceRls {
4874 #[inline]
4875 pub fn force_token(&self) -> Option<SyntaxToken> {
4876 support::token(&self.syntax, SyntaxKind::FORCE_KW)
4877 }
4878 #[inline]
4879 pub fn level_token(&self) -> Option<SyntaxToken> {
4880 support::token(&self.syntax, SyntaxKind::LEVEL_KW)
4881 }
4882 #[inline]
4883 pub fn row_token(&self) -> Option<SyntaxToken> {
4884 support::token(&self.syntax, SyntaxKind::ROW_KW)
4885 }
4886 #[inline]
4887 pub fn security_token(&self) -> Option<SyntaxToken> {
4888 support::token(&self.syntax, SyntaxKind::SECURITY_KW)
4889 }
4890}
4891
4892#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4893pub struct ForeignKeyConstraint {
4894 pub(crate) syntax: SyntaxNode,
4895}
4896impl ForeignKeyConstraint {
4897 #[inline]
4898 pub fn from_columns(&self) -> Option<ColumnList> {
4899 support::child(&self.syntax)
4900 }
4901 #[inline]
4902 pub fn match_type(&self) -> Option<MatchType> {
4903 support::child(&self.syntax)
4904 }
4905 #[inline]
4906 pub fn on_delete_action(&self) -> Option<OnDeleteAction> {
4907 support::child(&self.syntax)
4908 }
4909 #[inline]
4910 pub fn on_update_action(&self) -> Option<OnUpdateAction> {
4911 support::child(&self.syntax)
4912 }
4913 #[inline]
4914 pub fn path(&self) -> Option<Path> {
4915 support::child(&self.syntax)
4916 }
4917 #[inline]
4918 pub fn to_columns(&self) -> Option<ColumnList> {
4919 support::child(&self.syntax)
4920 }
4921 #[inline]
4922 pub fn foreign_token(&self) -> Option<SyntaxToken> {
4923 support::token(&self.syntax, SyntaxKind::FOREIGN_KW)
4924 }
4925 #[inline]
4926 pub fn key_token(&self) -> Option<SyntaxToken> {
4927 support::token(&self.syntax, SyntaxKind::KEY_KW)
4928 }
4929 #[inline]
4930 pub fn references_token(&self) -> Option<SyntaxToken> {
4931 support::token(&self.syntax, SyntaxKind::REFERENCES_KW)
4932 }
4933}
4934
4935#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4936pub struct FrameClause {
4937 pub(crate) syntax: SyntaxNode,
4938}
4939impl FrameClause {
4940 #[inline]
4941 pub fn groups_token(&self) -> Option<SyntaxToken> {
4942 support::token(&self.syntax, SyntaxKind::GROUPS_KW)
4943 }
4944 #[inline]
4945 pub fn range_token(&self) -> Option<SyntaxToken> {
4946 support::token(&self.syntax, SyntaxKind::RANGE_KW)
4947 }
4948 #[inline]
4949 pub fn rows_token(&self) -> Option<SyntaxToken> {
4950 support::token(&self.syntax, SyntaxKind::ROWS_KW)
4951 }
4952}
4953
4954#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4955pub struct FromClause {
4956 pub(crate) syntax: SyntaxNode,
4957}
4958impl FromClause {
4959 #[inline]
4960 pub fn from_items(&self) -> AstChildren<FromItem> {
4961 support::children(&self.syntax)
4962 }
4963 #[inline]
4964 pub fn join_exprs(&self) -> AstChildren<JoinExpr> {
4965 support::children(&self.syntax)
4966 }
4967 #[inline]
4968 pub fn from_token(&self) -> Option<SyntaxToken> {
4969 support::token(&self.syntax, SyntaxKind::FROM_KW)
4970 }
4971}
4972
4973#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4974pub struct FromItem {
4975 pub(crate) syntax: SyntaxNode,
4976}
4977impl FromItem {
4978 #[inline]
4979 pub fn alias(&self) -> Option<Alias> {
4980 support::child(&self.syntax)
4981 }
4982 #[inline]
4983 pub fn call_expr(&self) -> Option<CallExpr> {
4984 support::child(&self.syntax)
4985 }
4986 #[inline]
4987 pub fn name_ref(&self) -> Option<NameRef> {
4988 support::child(&self.syntax)
4989 }
4990 #[inline]
4991 pub fn paren_select(&self) -> Option<ParenSelect> {
4992 support::child(&self.syntax)
4993 }
4994 #[inline]
4995 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
4996 support::token(&self.syntax, SyntaxKind::L_PAREN)
4997 }
4998 #[inline]
4999 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
5000 support::token(&self.syntax, SyntaxKind::R_PAREN)
5001 }
5002 #[inline]
5003 pub fn from_token(&self) -> Option<SyntaxToken> {
5004 support::token(&self.syntax, SyntaxKind::FROM_KW)
5005 }
5006 #[inline]
5007 pub fn lateral_token(&self) -> Option<SyntaxToken> {
5008 support::token(&self.syntax, SyntaxKind::LATERAL_KW)
5009 }
5010 #[inline]
5011 pub fn only_token(&self) -> Option<SyntaxToken> {
5012 support::token(&self.syntax, SyntaxKind::ONLY_KW)
5013 }
5014 #[inline]
5015 pub fn rows_token(&self) -> Option<SyntaxToken> {
5016 support::token(&self.syntax, SyntaxKind::ROWS_KW)
5017 }
5018}
5019
5020#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5021pub struct FuncOptionList {
5022 pub(crate) syntax: SyntaxNode,
5023}
5024impl FuncOptionList {
5025 #[inline]
5026 pub fn options(&self) -> AstChildren<FuncOption> {
5027 support::children(&self.syntax)
5028 }
5029}
5030
5031#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5032pub struct GeneratedConstraint {
5033 pub(crate) syntax: SyntaxNode,
5034}
5035impl GeneratedConstraint {
5036 #[inline]
5037 pub fn expr(&self) -> Option<Expr> {
5038 support::child(&self.syntax)
5039 }
5040 #[inline]
5041 pub fn name_ref(&self) -> Option<NameRef> {
5042 support::child(&self.syntax)
5043 }
5044 #[inline]
5045 pub fn sequence_option_list(&self) -> Option<SequenceOptionList> {
5046 support::child(&self.syntax)
5047 }
5048 #[inline]
5049 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
5050 support::token(&self.syntax, SyntaxKind::L_PAREN)
5051 }
5052 #[inline]
5053 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
5054 support::token(&self.syntax, SyntaxKind::R_PAREN)
5055 }
5056 #[inline]
5057 pub fn always_token(&self) -> Option<SyntaxToken> {
5058 support::token(&self.syntax, SyntaxKind::ALWAYS_KW)
5059 }
5060 #[inline]
5061 pub fn as_token(&self) -> Option<SyntaxToken> {
5062 support::token(&self.syntax, SyntaxKind::AS_KW)
5063 }
5064 #[inline]
5065 pub fn by_token(&self) -> Option<SyntaxToken> {
5066 support::token(&self.syntax, SyntaxKind::BY_KW)
5067 }
5068 #[inline]
5069 pub fn constraint_token(&self) -> Option<SyntaxToken> {
5070 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
5071 }
5072 #[inline]
5073 pub fn default_token(&self) -> Option<SyntaxToken> {
5074 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
5075 }
5076 #[inline]
5077 pub fn generated_token(&self) -> Option<SyntaxToken> {
5078 support::token(&self.syntax, SyntaxKind::GENERATED_KW)
5079 }
5080 #[inline]
5081 pub fn identity_token(&self) -> Option<SyntaxToken> {
5082 support::token(&self.syntax, SyntaxKind::IDENTITY_KW)
5083 }
5084 #[inline]
5085 pub fn stored_token(&self) -> Option<SyntaxToken> {
5086 support::token(&self.syntax, SyntaxKind::STORED_KW)
5087 }
5088}
5089
5090#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5091pub struct Grant {
5092 pub(crate) syntax: SyntaxNode,
5093}
5094impl Grant {
5095 #[inline]
5096 pub fn grant_token(&self) -> Option<SyntaxToken> {
5097 support::token(&self.syntax, SyntaxKind::GRANT_KW)
5098 }
5099}
5100
5101#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5102pub struct GroupByClause {
5103 pub(crate) syntax: SyntaxNode,
5104}
5105impl GroupByClause {
5106 #[inline]
5107 pub fn grouping_cube(&self) -> Option<GroupingCube> {
5108 support::child(&self.syntax)
5109 }
5110 #[inline]
5111 pub fn grouping_expr(&self) -> Option<GroupingExpr> {
5112 support::child(&self.syntax)
5113 }
5114 #[inline]
5115 pub fn grouping_rollup(&self) -> Option<GroupingRollup> {
5116 support::child(&self.syntax)
5117 }
5118 #[inline]
5119 pub fn grouping_sets(&self) -> Option<GroupingSets> {
5120 support::child(&self.syntax)
5121 }
5122 #[inline]
5123 pub fn all_token(&self) -> Option<SyntaxToken> {
5124 support::token(&self.syntax, SyntaxKind::ALL_KW)
5125 }
5126 #[inline]
5127 pub fn by_token(&self) -> Option<SyntaxToken> {
5128 support::token(&self.syntax, SyntaxKind::BY_KW)
5129 }
5130 #[inline]
5131 pub fn distinct_token(&self) -> Option<SyntaxToken> {
5132 support::token(&self.syntax, SyntaxKind::DISTINCT_KW)
5133 }
5134 #[inline]
5135 pub fn group_token(&self) -> Option<SyntaxToken> {
5136 support::token(&self.syntax, SyntaxKind::GROUP_KW)
5137 }
5138}
5139
5140#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5141pub struct GroupingCube {
5142 pub(crate) syntax: SyntaxNode,
5143}
5144impl GroupingCube {
5145 #[inline]
5146 pub fn expr(&self) -> Option<Expr> {
5147 support::child(&self.syntax)
5148 }
5149 #[inline]
5150 pub fn cube_token(&self) -> Option<SyntaxToken> {
5151 support::token(&self.syntax, SyntaxKind::CUBE_KW)
5152 }
5153}
5154
5155#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5156pub struct GroupingExpr {
5157 pub(crate) syntax: SyntaxNode,
5158}
5159impl GroupingExpr {
5160 #[inline]
5161 pub fn expr(&self) -> Option<Expr> {
5162 support::child(&self.syntax)
5163 }
5164}
5165
5166#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5167pub struct GroupingRollup {
5168 pub(crate) syntax: SyntaxNode,
5169}
5170impl GroupingRollup {
5171 #[inline]
5172 pub fn expr(&self) -> Option<Expr> {
5173 support::child(&self.syntax)
5174 }
5175 #[inline]
5176 pub fn rollup_token(&self) -> Option<SyntaxToken> {
5177 support::token(&self.syntax, SyntaxKind::ROLLUP_KW)
5178 }
5179}
5180
5181#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5182pub struct GroupingSets {
5183 pub(crate) syntax: SyntaxNode,
5184}
5185impl GroupingSets {
5186 #[inline]
5187 pub fn expr(&self) -> Option<Expr> {
5188 support::child(&self.syntax)
5189 }
5190 #[inline]
5191 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
5192 support::token(&self.syntax, SyntaxKind::L_PAREN)
5193 }
5194 #[inline]
5195 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
5196 support::token(&self.syntax, SyntaxKind::R_PAREN)
5197 }
5198 #[inline]
5199 pub fn grouping_token(&self) -> Option<SyntaxToken> {
5200 support::token(&self.syntax, SyntaxKind::GROUPING_KW)
5201 }
5202 #[inline]
5203 pub fn sets_token(&self) -> Option<SyntaxToken> {
5204 support::token(&self.syntax, SyntaxKind::SETS_KW)
5205 }
5206}
5207
5208#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5209pub struct Gteq {
5210 pub(crate) syntax: SyntaxNode,
5211}
5212impl Gteq {
5213 #[inline]
5214 pub fn eq_token(&self) -> Option<SyntaxToken> {
5215 support::token(&self.syntax, SyntaxKind::EQ)
5216 }
5217 #[inline]
5218 pub fn r_angle_token(&self) -> Option<SyntaxToken> {
5219 support::token(&self.syntax, SyntaxKind::R_ANGLE)
5220 }
5221}
5222
5223#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5224pub struct HavingClause {
5225 pub(crate) syntax: SyntaxNode,
5226}
5227impl HavingClause {
5228 #[inline]
5229 pub fn expr(&self) -> Option<Expr> {
5230 support::child(&self.syntax)
5231 }
5232 #[inline]
5233 pub fn having_token(&self) -> Option<SyntaxToken> {
5234 support::token(&self.syntax, SyntaxKind::HAVING_KW)
5235 }
5236}
5237
5238#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5239pub struct IfExists {
5240 pub(crate) syntax: SyntaxNode,
5241}
5242impl IfExists {
5243 #[inline]
5244 pub fn exists_token(&self) -> Option<SyntaxToken> {
5245 support::token(&self.syntax, SyntaxKind::EXISTS_KW)
5246 }
5247 #[inline]
5248 pub fn if_token(&self) -> Option<SyntaxToken> {
5249 support::token(&self.syntax, SyntaxKind::IF_KW)
5250 }
5251}
5252
5253#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5254pub struct IfNotExists {
5255 pub(crate) syntax: SyntaxNode,
5256}
5257impl IfNotExists {
5258 #[inline]
5259 pub fn exists_token(&self) -> Option<SyntaxToken> {
5260 support::token(&self.syntax, SyntaxKind::EXISTS_KW)
5261 }
5262 #[inline]
5263 pub fn if_token(&self) -> Option<SyntaxToken> {
5264 support::token(&self.syntax, SyntaxKind::IF_KW)
5265 }
5266 #[inline]
5267 pub fn not_token(&self) -> Option<SyntaxToken> {
5268 support::token(&self.syntax, SyntaxKind::NOT_KW)
5269 }
5270}
5271
5272#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5273pub struct ImportForeignSchema {
5274 pub(crate) syntax: SyntaxNode,
5275}
5276impl ImportForeignSchema {
5277 #[inline]
5278 pub fn name_ref(&self) -> Option<NameRef> {
5279 support::child(&self.syntax)
5280 }
5281 #[inline]
5282 pub fn foreign_token(&self) -> Option<SyntaxToken> {
5283 support::token(&self.syntax, SyntaxKind::FOREIGN_KW)
5284 }
5285 #[inline]
5286 pub fn import_token(&self) -> Option<SyntaxToken> {
5287 support::token(&self.syntax, SyntaxKind::IMPORT_KW)
5288 }
5289 #[inline]
5290 pub fn schema_token(&self) -> Option<SyntaxToken> {
5291 support::token(&self.syntax, SyntaxKind::SCHEMA_KW)
5292 }
5293}
5294
5295#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5296pub struct IndexExpr {
5297 pub(crate) syntax: SyntaxNode,
5298}
5299impl IndexExpr {
5300 #[inline]
5301 pub fn base(&self) -> Option<Expr> {
5302 support::child(&self.syntax)
5303 }
5304 #[inline]
5305 pub fn index(&self) -> Option<Expr> {
5306 support::child(&self.syntax)
5307 }
5308 #[inline]
5309 pub fn l_brack_token(&self) -> Option<SyntaxToken> {
5310 support::token(&self.syntax, SyntaxKind::L_BRACK)
5311 }
5312 #[inline]
5313 pub fn r_brack_token(&self) -> Option<SyntaxToken> {
5314 support::token(&self.syntax, SyntaxKind::R_BRACK)
5315 }
5316}
5317
5318#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5319pub struct Inherit {
5320 pub(crate) syntax: SyntaxNode,
5321}
5322impl Inherit {
5323 #[inline]
5324 pub fn inherit_token(&self) -> Option<SyntaxToken> {
5325 support::token(&self.syntax, SyntaxKind::INHERIT_KW)
5326 }
5327}
5328
5329#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5330pub struct Inherits {
5331 pub(crate) syntax: SyntaxNode,
5332}
5333impl Inherits {
5334 #[inline]
5335 pub fn paths(&self) -> AstChildren<Path> {
5336 support::children(&self.syntax)
5337 }
5338 #[inline]
5339 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
5340 support::token(&self.syntax, SyntaxKind::L_PAREN)
5341 }
5342 #[inline]
5343 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
5344 support::token(&self.syntax, SyntaxKind::R_PAREN)
5345 }
5346 #[inline]
5347 pub fn inherits_token(&self) -> Option<SyntaxToken> {
5348 support::token(&self.syntax, SyntaxKind::INHERITS_KW)
5349 }
5350}
5351
5352#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5353pub struct InitiallyDeferredConstraintOption {
5354 pub(crate) syntax: SyntaxNode,
5355}
5356impl InitiallyDeferredConstraintOption {
5357 #[inline]
5358 pub fn deferred_token(&self) -> Option<SyntaxToken> {
5359 support::token(&self.syntax, SyntaxKind::DEFERRED_KW)
5360 }
5361 #[inline]
5362 pub fn initially_token(&self) -> Option<SyntaxToken> {
5363 support::token(&self.syntax, SyntaxKind::INITIALLY_KW)
5364 }
5365}
5366
5367#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5368pub struct InitiallyImmediateConstraintOption {
5369 pub(crate) syntax: SyntaxNode,
5370}
5371impl InitiallyImmediateConstraintOption {
5372 #[inline]
5373 pub fn immediate_token(&self) -> Option<SyntaxToken> {
5374 support::token(&self.syntax, SyntaxKind::IMMEDIATE_KW)
5375 }
5376 #[inline]
5377 pub fn initially_token(&self) -> Option<SyntaxToken> {
5378 support::token(&self.syntax, SyntaxKind::INITIALLY_KW)
5379 }
5380}
5381
5382#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5383pub struct Insert {
5384 pub(crate) syntax: SyntaxNode,
5385}
5386impl Insert {
5387 #[inline]
5388 pub fn alias(&self) -> Option<Alias> {
5389 support::child(&self.syntax)
5390 }
5391 #[inline]
5392 pub fn column_list(&self) -> Option<ColumnList> {
5393 support::child(&self.syntax)
5394 }
5395 #[inline]
5396 pub fn relation_name(&self) -> Option<RelationName> {
5397 support::child(&self.syntax)
5398 }
5399 #[inline]
5400 pub fn stmt(&self) -> Option<Stmt> {
5401 support::child(&self.syntax)
5402 }
5403 #[inline]
5404 pub fn values(&self) -> Option<Values> {
5405 support::child(&self.syntax)
5406 }
5407 #[inline]
5408 pub fn conflict_token(&self) -> Option<SyntaxToken> {
5409 support::token(&self.syntax, SyntaxKind::CONFLICT_KW)
5410 }
5411 #[inline]
5412 pub fn default_token(&self) -> Option<SyntaxToken> {
5413 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
5414 }
5415 #[inline]
5416 pub fn insert_token(&self) -> Option<SyntaxToken> {
5417 support::token(&self.syntax, SyntaxKind::INSERT_KW)
5418 }
5419 #[inline]
5420 pub fn into_token(&self) -> Option<SyntaxToken> {
5421 support::token(&self.syntax, SyntaxKind::INTO_KW)
5422 }
5423 #[inline]
5424 pub fn on_token(&self) -> Option<SyntaxToken> {
5425 support::token(&self.syntax, SyntaxKind::ON_KW)
5426 }
5427 #[inline]
5428 pub fn overriding_token(&self) -> Option<SyntaxToken> {
5429 support::token(&self.syntax, SyntaxKind::OVERRIDING_KW)
5430 }
5431 #[inline]
5432 pub fn system_token(&self) -> Option<SyntaxToken> {
5433 support::token(&self.syntax, SyntaxKind::SYSTEM_KW)
5434 }
5435 #[inline]
5436 pub fn user_token(&self) -> Option<SyntaxToken> {
5437 support::token(&self.syntax, SyntaxKind::USER_KW)
5438 }
5439 #[inline]
5440 pub fn value_token(&self) -> Option<SyntaxToken> {
5441 support::token(&self.syntax, SyntaxKind::VALUE_KW)
5442 }
5443 #[inline]
5444 pub fn values_token(&self) -> Option<SyntaxToken> {
5445 support::token(&self.syntax, SyntaxKind::VALUES_KW)
5446 }
5447}
5448
5449#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5450pub struct IntervalType {
5451 pub(crate) syntax: SyntaxNode,
5452}
5453impl IntervalType {
5454 #[inline]
5455 pub fn literal(&self) -> Option<Literal> {
5456 support::child(&self.syntax)
5457 }
5458 #[inline]
5459 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
5460 support::token(&self.syntax, SyntaxKind::L_PAREN)
5461 }
5462 #[inline]
5463 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
5464 support::token(&self.syntax, SyntaxKind::R_PAREN)
5465 }
5466 #[inline]
5467 pub fn day_token(&self) -> Option<SyntaxToken> {
5468 support::token(&self.syntax, SyntaxKind::DAY_KW)
5469 }
5470 #[inline]
5471 pub fn hour_token(&self) -> Option<SyntaxToken> {
5472 support::token(&self.syntax, SyntaxKind::HOUR_KW)
5473 }
5474 #[inline]
5475 pub fn interval_token(&self) -> Option<SyntaxToken> {
5476 support::token(&self.syntax, SyntaxKind::INTERVAL_KW)
5477 }
5478 #[inline]
5479 pub fn minute_token(&self) -> Option<SyntaxToken> {
5480 support::token(&self.syntax, SyntaxKind::MINUTE_KW)
5481 }
5482 #[inline]
5483 pub fn month_token(&self) -> Option<SyntaxToken> {
5484 support::token(&self.syntax, SyntaxKind::MONTH_KW)
5485 }
5486 #[inline]
5487 pub fn second_token(&self) -> Option<SyntaxToken> {
5488 support::token(&self.syntax, SyntaxKind::SECOND_KW)
5489 }
5490 #[inline]
5491 pub fn to_token(&self) -> Option<SyntaxToken> {
5492 support::token(&self.syntax, SyntaxKind::TO_KW)
5493 }
5494 #[inline]
5495 pub fn year_token(&self) -> Option<SyntaxToken> {
5496 support::token(&self.syntax, SyntaxKind::YEAR_KW)
5497 }
5498}
5499
5500#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5501pub struct IntoClause {
5502 pub(crate) syntax: SyntaxNode,
5503}
5504impl IntoClause {
5505 #[inline]
5506 pub fn into_token(&self) -> Option<SyntaxToken> {
5507 support::token(&self.syntax, SyntaxKind::INTO_KW)
5508 }
5509}
5510
5511#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5512pub struct IsDistinctFrom {
5513 pub(crate) syntax: SyntaxNode,
5514}
5515impl IsDistinctFrom {
5516 #[inline]
5517 pub fn distinct_token(&self) -> Option<SyntaxToken> {
5518 support::token(&self.syntax, SyntaxKind::DISTINCT_KW)
5519 }
5520 #[inline]
5521 pub fn from_token(&self) -> Option<SyntaxToken> {
5522 support::token(&self.syntax, SyntaxKind::FROM_KW)
5523 }
5524 #[inline]
5525 pub fn is_token(&self) -> Option<SyntaxToken> {
5526 support::token(&self.syntax, SyntaxKind::IS_KW)
5527 }
5528}
5529
5530#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5531pub struct IsJson {
5532 pub(crate) syntax: SyntaxNode,
5533}
5534impl IsJson {
5535 #[inline]
5536 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
5537 support::child(&self.syntax)
5538 }
5539 #[inline]
5540 pub fn is_token(&self) -> Option<SyntaxToken> {
5541 support::token(&self.syntax, SyntaxKind::IS_KW)
5542 }
5543 #[inline]
5544 pub fn json_token(&self) -> Option<SyntaxToken> {
5545 support::token(&self.syntax, SyntaxKind::JSON_KW)
5546 }
5547}
5548
5549#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5550pub struct IsJsonArray {
5551 pub(crate) syntax: SyntaxNode,
5552}
5553impl IsJsonArray {
5554 #[inline]
5555 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
5556 support::child(&self.syntax)
5557 }
5558 #[inline]
5559 pub fn array_token(&self) -> Option<SyntaxToken> {
5560 support::token(&self.syntax, SyntaxKind::ARRAY_KW)
5561 }
5562 #[inline]
5563 pub fn is_token(&self) -> Option<SyntaxToken> {
5564 support::token(&self.syntax, SyntaxKind::IS_KW)
5565 }
5566 #[inline]
5567 pub fn json_token(&self) -> Option<SyntaxToken> {
5568 support::token(&self.syntax, SyntaxKind::JSON_KW)
5569 }
5570}
5571
5572#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5573pub struct IsJsonObject {
5574 pub(crate) syntax: SyntaxNode,
5575}
5576impl IsJsonObject {
5577 #[inline]
5578 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
5579 support::child(&self.syntax)
5580 }
5581 #[inline]
5582 pub fn is_token(&self) -> Option<SyntaxToken> {
5583 support::token(&self.syntax, SyntaxKind::IS_KW)
5584 }
5585 #[inline]
5586 pub fn json_token(&self) -> Option<SyntaxToken> {
5587 support::token(&self.syntax, SyntaxKind::JSON_KW)
5588 }
5589 #[inline]
5590 pub fn object_token(&self) -> Option<SyntaxToken> {
5591 support::token(&self.syntax, SyntaxKind::OBJECT_KW)
5592 }
5593}
5594
5595#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5596pub struct IsJsonScalar {
5597 pub(crate) syntax: SyntaxNode,
5598}
5599impl IsJsonScalar {
5600 #[inline]
5601 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
5602 support::child(&self.syntax)
5603 }
5604 #[inline]
5605 pub fn is_token(&self) -> Option<SyntaxToken> {
5606 support::token(&self.syntax, SyntaxKind::IS_KW)
5607 }
5608 #[inline]
5609 pub fn json_token(&self) -> Option<SyntaxToken> {
5610 support::token(&self.syntax, SyntaxKind::JSON_KW)
5611 }
5612 #[inline]
5613 pub fn scalar_token(&self) -> Option<SyntaxToken> {
5614 support::token(&self.syntax, SyntaxKind::SCALAR_KW)
5615 }
5616}
5617
5618#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5619pub struct IsJsonValue {
5620 pub(crate) syntax: SyntaxNode,
5621}
5622impl IsJsonValue {
5623 #[inline]
5624 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
5625 support::child(&self.syntax)
5626 }
5627 #[inline]
5628 pub fn is_token(&self) -> Option<SyntaxToken> {
5629 support::token(&self.syntax, SyntaxKind::IS_KW)
5630 }
5631 #[inline]
5632 pub fn json_token(&self) -> Option<SyntaxToken> {
5633 support::token(&self.syntax, SyntaxKind::JSON_KW)
5634 }
5635 #[inline]
5636 pub fn value_token(&self) -> Option<SyntaxToken> {
5637 support::token(&self.syntax, SyntaxKind::VALUE_KW)
5638 }
5639}
5640
5641#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5642pub struct IsNormalized {
5643 pub(crate) syntax: SyntaxNode,
5644}
5645impl IsNormalized {
5646 #[inline]
5647 pub fn unicode_normal_form(&self) -> Option<UnicodeNormalForm> {
5648 support::child(&self.syntax)
5649 }
5650 #[inline]
5651 pub fn is_token(&self) -> Option<SyntaxToken> {
5652 support::token(&self.syntax, SyntaxKind::IS_KW)
5653 }
5654 #[inline]
5655 pub fn normalized_token(&self) -> Option<SyntaxToken> {
5656 support::token(&self.syntax, SyntaxKind::NORMALIZED_KW)
5657 }
5658}
5659
5660#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5661pub struct IsNot {
5662 pub(crate) syntax: SyntaxNode,
5663}
5664impl IsNot {
5665 #[inline]
5666 pub fn is_token(&self) -> Option<SyntaxToken> {
5667 support::token(&self.syntax, SyntaxKind::IS_KW)
5668 }
5669 #[inline]
5670 pub fn not_token(&self) -> Option<SyntaxToken> {
5671 support::token(&self.syntax, SyntaxKind::NOT_KW)
5672 }
5673}
5674
5675#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5676pub struct IsNotDistinctFrom {
5677 pub(crate) syntax: SyntaxNode,
5678}
5679impl IsNotDistinctFrom {
5680 #[inline]
5681 pub fn distinct_token(&self) -> Option<SyntaxToken> {
5682 support::token(&self.syntax, SyntaxKind::DISTINCT_KW)
5683 }
5684 #[inline]
5685 pub fn from_token(&self) -> Option<SyntaxToken> {
5686 support::token(&self.syntax, SyntaxKind::FROM_KW)
5687 }
5688 #[inline]
5689 pub fn is_token(&self) -> Option<SyntaxToken> {
5690 support::token(&self.syntax, SyntaxKind::IS_KW)
5691 }
5692 #[inline]
5693 pub fn not_token(&self) -> Option<SyntaxToken> {
5694 support::token(&self.syntax, SyntaxKind::NOT_KW)
5695 }
5696}
5697
5698#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5699pub struct IsNotJson {
5700 pub(crate) syntax: SyntaxNode,
5701}
5702impl IsNotJson {
5703 #[inline]
5704 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
5705 support::child(&self.syntax)
5706 }
5707 #[inline]
5708 pub fn is_token(&self) -> Option<SyntaxToken> {
5709 support::token(&self.syntax, SyntaxKind::IS_KW)
5710 }
5711 #[inline]
5712 pub fn json_token(&self) -> Option<SyntaxToken> {
5713 support::token(&self.syntax, SyntaxKind::JSON_KW)
5714 }
5715 #[inline]
5716 pub fn not_token(&self) -> Option<SyntaxToken> {
5717 support::token(&self.syntax, SyntaxKind::NOT_KW)
5718 }
5719}
5720
5721#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5722pub struct IsNotJsonArray {
5723 pub(crate) syntax: SyntaxNode,
5724}
5725impl IsNotJsonArray {
5726 #[inline]
5727 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
5728 support::child(&self.syntax)
5729 }
5730 #[inline]
5731 pub fn array_token(&self) -> Option<SyntaxToken> {
5732 support::token(&self.syntax, SyntaxKind::ARRAY_KW)
5733 }
5734 #[inline]
5735 pub fn is_token(&self) -> Option<SyntaxToken> {
5736 support::token(&self.syntax, SyntaxKind::IS_KW)
5737 }
5738 #[inline]
5739 pub fn json_token(&self) -> Option<SyntaxToken> {
5740 support::token(&self.syntax, SyntaxKind::JSON_KW)
5741 }
5742 #[inline]
5743 pub fn not_token(&self) -> Option<SyntaxToken> {
5744 support::token(&self.syntax, SyntaxKind::NOT_KW)
5745 }
5746}
5747
5748#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5749pub struct IsNotJsonObject {
5750 pub(crate) syntax: SyntaxNode,
5751}
5752impl IsNotJsonObject {
5753 #[inline]
5754 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
5755 support::child(&self.syntax)
5756 }
5757 #[inline]
5758 pub fn is_token(&self) -> Option<SyntaxToken> {
5759 support::token(&self.syntax, SyntaxKind::IS_KW)
5760 }
5761 #[inline]
5762 pub fn json_token(&self) -> Option<SyntaxToken> {
5763 support::token(&self.syntax, SyntaxKind::JSON_KW)
5764 }
5765 #[inline]
5766 pub fn not_token(&self) -> Option<SyntaxToken> {
5767 support::token(&self.syntax, SyntaxKind::NOT_KW)
5768 }
5769 #[inline]
5770 pub fn object_token(&self) -> Option<SyntaxToken> {
5771 support::token(&self.syntax, SyntaxKind::OBJECT_KW)
5772 }
5773}
5774
5775#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5776pub struct IsNotJsonScalar {
5777 pub(crate) syntax: SyntaxNode,
5778}
5779impl IsNotJsonScalar {
5780 #[inline]
5781 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
5782 support::child(&self.syntax)
5783 }
5784 #[inline]
5785 pub fn is_token(&self) -> Option<SyntaxToken> {
5786 support::token(&self.syntax, SyntaxKind::IS_KW)
5787 }
5788 #[inline]
5789 pub fn json_token(&self) -> Option<SyntaxToken> {
5790 support::token(&self.syntax, SyntaxKind::JSON_KW)
5791 }
5792 #[inline]
5793 pub fn not_token(&self) -> Option<SyntaxToken> {
5794 support::token(&self.syntax, SyntaxKind::NOT_KW)
5795 }
5796 #[inline]
5797 pub fn scalar_token(&self) -> Option<SyntaxToken> {
5798 support::token(&self.syntax, SyntaxKind::SCALAR_KW)
5799 }
5800}
5801
5802#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5803pub struct IsNotJsonValue {
5804 pub(crate) syntax: SyntaxNode,
5805}
5806impl IsNotJsonValue {
5807 #[inline]
5808 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
5809 support::child(&self.syntax)
5810 }
5811 #[inline]
5812 pub fn is_token(&self) -> Option<SyntaxToken> {
5813 support::token(&self.syntax, SyntaxKind::IS_KW)
5814 }
5815 #[inline]
5816 pub fn json_token(&self) -> Option<SyntaxToken> {
5817 support::token(&self.syntax, SyntaxKind::JSON_KW)
5818 }
5819 #[inline]
5820 pub fn not_token(&self) -> Option<SyntaxToken> {
5821 support::token(&self.syntax, SyntaxKind::NOT_KW)
5822 }
5823 #[inline]
5824 pub fn value_token(&self) -> Option<SyntaxToken> {
5825 support::token(&self.syntax, SyntaxKind::VALUE_KW)
5826 }
5827}
5828
5829#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5830pub struct IsNotNormalized {
5831 pub(crate) syntax: SyntaxNode,
5832}
5833impl IsNotNormalized {
5834 #[inline]
5835 pub fn unicode_normal_form(&self) -> Option<UnicodeNormalForm> {
5836 support::child(&self.syntax)
5837 }
5838 #[inline]
5839 pub fn is_token(&self) -> Option<SyntaxToken> {
5840 support::token(&self.syntax, SyntaxKind::IS_KW)
5841 }
5842 #[inline]
5843 pub fn normalized_token(&self) -> Option<SyntaxToken> {
5844 support::token(&self.syntax, SyntaxKind::NORMALIZED_KW)
5845 }
5846 #[inline]
5847 pub fn not_token(&self) -> Option<SyntaxToken> {
5848 support::token(&self.syntax, SyntaxKind::NOT_KW)
5849 }
5850}
5851
5852#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5853pub struct Join {
5854 pub(crate) syntax: SyntaxNode,
5855}
5856impl Join {
5857 #[inline]
5858 pub fn from_item(&self) -> Option<FromItem> {
5859 support::child(&self.syntax)
5860 }
5861 #[inline]
5862 pub fn join_type(&self) -> Option<JoinType> {
5863 support::child(&self.syntax)
5864 }
5865 #[inline]
5866 pub fn on_clause(&self) -> Option<OnClause> {
5867 support::child(&self.syntax)
5868 }
5869 #[inline]
5870 pub fn using_clause(&self) -> Option<JoinUsingClause> {
5871 support::child(&self.syntax)
5872 }
5873 #[inline]
5874 pub fn natural_token(&self) -> Option<SyntaxToken> {
5875 support::token(&self.syntax, SyntaxKind::NATURAL_KW)
5876 }
5877}
5878
5879#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5880pub struct JoinCross {
5881 pub(crate) syntax: SyntaxNode,
5882}
5883impl JoinCross {
5884 #[inline]
5885 pub fn cross_token(&self) -> Option<SyntaxToken> {
5886 support::token(&self.syntax, SyntaxKind::CROSS_KW)
5887 }
5888 #[inline]
5889 pub fn join_token(&self) -> Option<SyntaxToken> {
5890 support::token(&self.syntax, SyntaxKind::JOIN_KW)
5891 }
5892}
5893
5894#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5895pub struct JoinExpr {
5896 pub(crate) syntax: SyntaxNode,
5897}
5898impl JoinExpr {
5899 #[inline]
5900 pub fn from_item(&self) -> Option<FromItem> {
5901 support::child(&self.syntax)
5902 }
5903 #[inline]
5904 pub fn join(&self) -> Option<Join> {
5905 support::child(&self.syntax)
5906 }
5907 #[inline]
5908 pub fn join_expr(&self) -> Option<JoinExpr> {
5909 support::child(&self.syntax)
5910 }
5911}
5912
5913#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5914pub struct JoinFull {
5915 pub(crate) syntax: SyntaxNode,
5916}
5917impl JoinFull {
5918 #[inline]
5919 pub fn full_token(&self) -> Option<SyntaxToken> {
5920 support::token(&self.syntax, SyntaxKind::FULL_KW)
5921 }
5922 #[inline]
5923 pub fn join_token(&self) -> Option<SyntaxToken> {
5924 support::token(&self.syntax, SyntaxKind::JOIN_KW)
5925 }
5926 #[inline]
5927 pub fn outer_token(&self) -> Option<SyntaxToken> {
5928 support::token(&self.syntax, SyntaxKind::OUTER_KW)
5929 }
5930}
5931
5932#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5933pub struct JoinInner {
5934 pub(crate) syntax: SyntaxNode,
5935}
5936impl JoinInner {
5937 #[inline]
5938 pub fn inner_token(&self) -> Option<SyntaxToken> {
5939 support::token(&self.syntax, SyntaxKind::INNER_KW)
5940 }
5941 #[inline]
5942 pub fn join_token(&self) -> Option<SyntaxToken> {
5943 support::token(&self.syntax, SyntaxKind::JOIN_KW)
5944 }
5945}
5946
5947#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5948pub struct JoinLeft {
5949 pub(crate) syntax: SyntaxNode,
5950}
5951impl JoinLeft {
5952 #[inline]
5953 pub fn join_token(&self) -> Option<SyntaxToken> {
5954 support::token(&self.syntax, SyntaxKind::JOIN_KW)
5955 }
5956 #[inline]
5957 pub fn left_token(&self) -> Option<SyntaxToken> {
5958 support::token(&self.syntax, SyntaxKind::LEFT_KW)
5959 }
5960 #[inline]
5961 pub fn outer_token(&self) -> Option<SyntaxToken> {
5962 support::token(&self.syntax, SyntaxKind::OUTER_KW)
5963 }
5964}
5965
5966#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5967pub struct JoinRight {
5968 pub(crate) syntax: SyntaxNode,
5969}
5970impl JoinRight {
5971 #[inline]
5972 pub fn join_token(&self) -> Option<SyntaxToken> {
5973 support::token(&self.syntax, SyntaxKind::JOIN_KW)
5974 }
5975 #[inline]
5976 pub fn outer_token(&self) -> Option<SyntaxToken> {
5977 support::token(&self.syntax, SyntaxKind::OUTER_KW)
5978 }
5979 #[inline]
5980 pub fn right_token(&self) -> Option<SyntaxToken> {
5981 support::token(&self.syntax, SyntaxKind::RIGHT_KW)
5982 }
5983}
5984
5985#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5986pub struct JoinUsingClause {
5987 pub(crate) syntax: SyntaxNode,
5988}
5989impl JoinUsingClause {
5990 #[inline]
5991 pub fn alias(&self) -> Option<Alias> {
5992 support::child(&self.syntax)
5993 }
5994 #[inline]
5995 pub fn column_list(&self) -> Option<ColumnList> {
5996 support::child(&self.syntax)
5997 }
5998 #[inline]
5999 pub fn using_token(&self) -> Option<SyntaxToken> {
6000 support::token(&self.syntax, SyntaxKind::USING_KW)
6001 }
6002}
6003
6004#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6005pub struct JsonBehaviorDefault {
6006 pub(crate) syntax: SyntaxNode,
6007}
6008impl JsonBehaviorDefault {
6009 #[inline]
6010 pub fn expr(&self) -> Option<Expr> {
6011 support::child(&self.syntax)
6012 }
6013 #[inline]
6014 pub fn default_token(&self) -> Option<SyntaxToken> {
6015 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
6016 }
6017}
6018
6019#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6020pub struct JsonBehaviorEmptyArray {
6021 pub(crate) syntax: SyntaxNode,
6022}
6023impl JsonBehaviorEmptyArray {
6024 #[inline]
6025 pub fn array_token(&self) -> Option<SyntaxToken> {
6026 support::token(&self.syntax, SyntaxKind::ARRAY_KW)
6027 }
6028 #[inline]
6029 pub fn empty_token(&self) -> Option<SyntaxToken> {
6030 support::token(&self.syntax, SyntaxKind::EMPTY_KW)
6031 }
6032}
6033
6034#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6035pub struct JsonBehaviorEmptyObject {
6036 pub(crate) syntax: SyntaxNode,
6037}
6038impl JsonBehaviorEmptyObject {
6039 #[inline]
6040 pub fn empty_token(&self) -> Option<SyntaxToken> {
6041 support::token(&self.syntax, SyntaxKind::EMPTY_KW)
6042 }
6043 #[inline]
6044 pub fn object_token(&self) -> Option<SyntaxToken> {
6045 support::token(&self.syntax, SyntaxKind::OBJECT_KW)
6046 }
6047}
6048
6049#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6050pub struct JsonBehaviorError {
6051 pub(crate) syntax: SyntaxNode,
6052}
6053impl JsonBehaviorError {
6054 #[inline]
6055 pub fn error_token(&self) -> Option<SyntaxToken> {
6056 support::token(&self.syntax, SyntaxKind::ERROR_KW)
6057 }
6058}
6059
6060#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6061pub struct JsonBehaviorFalse {
6062 pub(crate) syntax: SyntaxNode,
6063}
6064impl JsonBehaviorFalse {
6065 #[inline]
6066 pub fn false_token(&self) -> Option<SyntaxToken> {
6067 support::token(&self.syntax, SyntaxKind::FALSE_KW)
6068 }
6069}
6070
6071#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6072pub struct JsonBehaviorNull {
6073 pub(crate) syntax: SyntaxNode,
6074}
6075impl JsonBehaviorNull {
6076 #[inline]
6077 pub fn null_token(&self) -> Option<SyntaxToken> {
6078 support::token(&self.syntax, SyntaxKind::NULL_KW)
6079 }
6080}
6081
6082#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6083pub struct JsonBehaviorTrue {
6084 pub(crate) syntax: SyntaxNode,
6085}
6086impl JsonBehaviorTrue {
6087 #[inline]
6088 pub fn true_token(&self) -> Option<SyntaxToken> {
6089 support::token(&self.syntax, SyntaxKind::TRUE_KW)
6090 }
6091}
6092
6093#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6094pub struct JsonBehaviorUnknown {
6095 pub(crate) syntax: SyntaxNode,
6096}
6097impl JsonBehaviorUnknown {
6098 #[inline]
6099 pub fn unknown_token(&self) -> Option<SyntaxToken> {
6100 support::token(&self.syntax, SyntaxKind::UNKNOWN_KW)
6101 }
6102}
6103
6104#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6105pub struct JsonFormatClause {
6106 pub(crate) syntax: SyntaxNode,
6107}
6108impl JsonFormatClause {
6109 #[inline]
6110 pub fn name(&self) -> Option<Name> {
6111 support::child(&self.syntax)
6112 }
6113 #[inline]
6114 pub fn encoding_token(&self) -> Option<SyntaxToken> {
6115 support::token(&self.syntax, SyntaxKind::ENCODING_KW)
6116 }
6117 #[inline]
6118 pub fn format_token(&self) -> Option<SyntaxToken> {
6119 support::token(&self.syntax, SyntaxKind::FORMAT_KW)
6120 }
6121 #[inline]
6122 pub fn json_token(&self) -> Option<SyntaxToken> {
6123 support::token(&self.syntax, SyntaxKind::JSON_KW)
6124 }
6125}
6126
6127#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6128pub struct JsonKeyValue {
6129 pub(crate) syntax: SyntaxNode,
6130}
6131impl JsonKeyValue {
6132 #[inline]
6133 pub fn expr(&self) -> Option<Expr> {
6134 support::child(&self.syntax)
6135 }
6136 #[inline]
6137 pub fn json_value_expr(&self) -> Option<JsonValueExpr> {
6138 support::child(&self.syntax)
6139 }
6140 #[inline]
6141 pub fn colon_token(&self) -> Option<SyntaxToken> {
6142 support::token(&self.syntax, SyntaxKind::COLON)
6143 }
6144}
6145
6146#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6147pub struct JsonKeysUniqueClause {
6148 pub(crate) syntax: SyntaxNode,
6149}
6150impl JsonKeysUniqueClause {
6151 #[inline]
6152 pub fn keys_token(&self) -> Option<SyntaxToken> {
6153 support::token(&self.syntax, SyntaxKind::KEYS_KW)
6154 }
6155 #[inline]
6156 pub fn unique_token(&self) -> Option<SyntaxToken> {
6157 support::token(&self.syntax, SyntaxKind::UNIQUE_KW)
6158 }
6159 #[inline]
6160 pub fn with_token(&self) -> Option<SyntaxToken> {
6161 support::token(&self.syntax, SyntaxKind::WITH_KW)
6162 }
6163 #[inline]
6164 pub fn without_token(&self) -> Option<SyntaxToken> {
6165 support::token(&self.syntax, SyntaxKind::WITHOUT_KW)
6166 }
6167}
6168
6169#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6170pub struct JsonNullClause {
6171 pub(crate) syntax: SyntaxNode,
6172}
6173impl JsonNullClause {
6174 #[inline]
6175 pub fn absent_token(&self) -> Option<SyntaxToken> {
6176 support::token(&self.syntax, SyntaxKind::ABSENT_KW)
6177 }
6178 #[inline]
6179 pub fn null_token(&self) -> Option<SyntaxToken> {
6180 support::token(&self.syntax, SyntaxKind::NULL_KW)
6181 }
6182 #[inline]
6183 pub fn on_token(&self) -> Option<SyntaxToken> {
6184 support::token(&self.syntax, SyntaxKind::ON_KW)
6185 }
6186}
6187
6188#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6189pub struct JsonOnEmptyClause {
6190 pub(crate) syntax: SyntaxNode,
6191}
6192impl JsonOnEmptyClause {
6193 #[inline]
6194 pub fn json_behavior(&self) -> Option<JsonBehavior> {
6195 support::child(&self.syntax)
6196 }
6197 #[inline]
6198 pub fn empty_token(&self) -> Option<SyntaxToken> {
6199 support::token(&self.syntax, SyntaxKind::EMPTY_KW)
6200 }
6201 #[inline]
6202 pub fn on_token(&self) -> Option<SyntaxToken> {
6203 support::token(&self.syntax, SyntaxKind::ON_KW)
6204 }
6205}
6206
6207#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6208pub struct JsonOnErrorClause {
6209 pub(crate) syntax: SyntaxNode,
6210}
6211impl JsonOnErrorClause {
6212 #[inline]
6213 pub fn json_behavior(&self) -> Option<JsonBehavior> {
6214 support::child(&self.syntax)
6215 }
6216 #[inline]
6217 pub fn error_token(&self) -> Option<SyntaxToken> {
6218 support::token(&self.syntax, SyntaxKind::ERROR_KW)
6219 }
6220 #[inline]
6221 pub fn on_token(&self) -> Option<SyntaxToken> {
6222 support::token(&self.syntax, SyntaxKind::ON_KW)
6223 }
6224}
6225
6226#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6227pub struct JsonPassingArg {
6228 pub(crate) syntax: SyntaxNode,
6229}
6230impl JsonPassingArg {
6231 #[inline]
6232 pub fn expr(&self) -> Option<Expr> {
6233 support::child(&self.syntax)
6234 }
6235 #[inline]
6236 pub fn json_format_clause(&self) -> Option<JsonFormatClause> {
6237 support::child(&self.syntax)
6238 }
6239 #[inline]
6240 pub fn name(&self) -> Option<Name> {
6241 support::child(&self.syntax)
6242 }
6243 #[inline]
6244 pub fn as_token(&self) -> Option<SyntaxToken> {
6245 support::token(&self.syntax, SyntaxKind::AS_KW)
6246 }
6247}
6248
6249#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6250pub struct JsonPassingClause {
6251 pub(crate) syntax: SyntaxNode,
6252}
6253impl JsonPassingClause {
6254 #[inline]
6255 pub fn json_passing_args(&self) -> AstChildren<JsonPassingArg> {
6256 support::children(&self.syntax)
6257 }
6258 #[inline]
6259 pub fn passing_token(&self) -> Option<SyntaxToken> {
6260 support::token(&self.syntax, SyntaxKind::PASSING_KW)
6261 }
6262}
6263
6264#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6265pub struct JsonQuotesClause {
6266 pub(crate) syntax: SyntaxNode,
6267}
6268impl JsonQuotesClause {
6269 #[inline]
6270 pub fn keep_token(&self) -> Option<SyntaxToken> {
6271 support::token(&self.syntax, SyntaxKind::KEEP_KW)
6272 }
6273 #[inline]
6274 pub fn omit_token(&self) -> Option<SyntaxToken> {
6275 support::token(&self.syntax, SyntaxKind::OMIT_KW)
6276 }
6277 #[inline]
6278 pub fn quotes_token(&self) -> Option<SyntaxToken> {
6279 support::token(&self.syntax, SyntaxKind::QUOTES_KW)
6280 }
6281}
6282
6283#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6284pub struct JsonReturningClause {
6285 pub(crate) syntax: SyntaxNode,
6286}
6287impl JsonReturningClause {
6288 #[inline]
6289 pub fn ty(&self) -> Option<Type> {
6290 support::child(&self.syntax)
6291 }
6292 #[inline]
6293 pub fn returning_token(&self) -> Option<SyntaxToken> {
6294 support::token(&self.syntax, SyntaxKind::RETURNING_KW)
6295 }
6296}
6297
6298#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6299pub struct JsonTableColumn {
6300 pub(crate) syntax: SyntaxNode,
6301}
6302impl JsonTableColumn {
6303 #[inline]
6304 pub fn expr(&self) -> Option<Expr> {
6305 support::child(&self.syntax)
6306 }
6307 #[inline]
6308 pub fn name(&self) -> Option<Name> {
6309 support::child(&self.syntax)
6310 }
6311 #[inline]
6312 pub fn ty(&self) -> Option<Type> {
6313 support::child(&self.syntax)
6314 }
6315 #[inline]
6316 pub fn for_token(&self) -> Option<SyntaxToken> {
6317 support::token(&self.syntax, SyntaxKind::FOR_KW)
6318 }
6319 #[inline]
6320 pub fn nested_token(&self) -> Option<SyntaxToken> {
6321 support::token(&self.syntax, SyntaxKind::NESTED_KW)
6322 }
6323 #[inline]
6324 pub fn ordinality_token(&self) -> Option<SyntaxToken> {
6325 support::token(&self.syntax, SyntaxKind::ORDINALITY_KW)
6326 }
6327 #[inline]
6328 pub fn path_token(&self) -> Option<SyntaxToken> {
6329 support::token(&self.syntax, SyntaxKind::PATH_KW)
6330 }
6331}
6332
6333#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6334pub struct JsonTableColumnList {
6335 pub(crate) syntax: SyntaxNode,
6336}
6337impl JsonTableColumnList {
6338 #[inline]
6339 pub fn json_table_columns(&self) -> AstChildren<JsonTableColumn> {
6340 support::children(&self.syntax)
6341 }
6342 #[inline]
6343 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
6344 support::token(&self.syntax, SyntaxKind::L_PAREN)
6345 }
6346 #[inline]
6347 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
6348 support::token(&self.syntax, SyntaxKind::R_PAREN)
6349 }
6350 #[inline]
6351 pub fn columns_token(&self) -> Option<SyntaxToken> {
6352 support::token(&self.syntax, SyntaxKind::COLUMNS_KW)
6353 }
6354}
6355
6356#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6357pub struct JsonValueExpr {
6358 pub(crate) syntax: SyntaxNode,
6359}
6360impl JsonValueExpr {
6361 #[inline]
6362 pub fn expr(&self) -> Option<Expr> {
6363 support::child(&self.syntax)
6364 }
6365 #[inline]
6366 pub fn json_format_clause(&self) -> Option<JsonFormatClause> {
6367 support::child(&self.syntax)
6368 }
6369}
6370
6371#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6372pub struct JsonWrapperBehaviorClause {
6373 pub(crate) syntax: SyntaxNode,
6374}
6375impl JsonWrapperBehaviorClause {
6376 #[inline]
6377 pub fn conditional_token(&self) -> Option<SyntaxToken> {
6378 support::token(&self.syntax, SyntaxKind::CONDITIONAL_KW)
6379 }
6380 #[inline]
6381 pub fn with_token(&self) -> Option<SyntaxToken> {
6382 support::token(&self.syntax, SyntaxKind::WITH_KW)
6383 }
6384 #[inline]
6385 pub fn without_token(&self) -> Option<SyntaxToken> {
6386 support::token(&self.syntax, SyntaxKind::WITHOUT_KW)
6387 }
6388 #[inline]
6389 pub fn wrapper_token(&self) -> Option<SyntaxToken> {
6390 support::token(&self.syntax, SyntaxKind::WRAPPER_KW)
6391 }
6392}
6393
6394#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6395pub struct LanguageFuncOption {
6396 pub(crate) syntax: SyntaxNode,
6397}
6398impl LanguageFuncOption {
6399 #[inline]
6400 pub fn name_ref(&self) -> Option<NameRef> {
6401 support::child(&self.syntax)
6402 }
6403 #[inline]
6404 pub fn language_token(&self) -> Option<SyntaxToken> {
6405 support::token(&self.syntax, SyntaxKind::LANGUAGE_KW)
6406 }
6407}
6408
6409#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6410pub struct LeakproofFuncOption {
6411 pub(crate) syntax: SyntaxNode,
6412}
6413impl LeakproofFuncOption {
6414 #[inline]
6415 pub fn leakproof_token(&self) -> Option<SyntaxToken> {
6416 support::token(&self.syntax, SyntaxKind::LEAKPROOF_KW)
6417 }
6418 #[inline]
6419 pub fn not_token(&self) -> Option<SyntaxToken> {
6420 support::token(&self.syntax, SyntaxKind::NOT_KW)
6421 }
6422}
6423
6424#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6425pub struct LikeClause {
6426 pub(crate) syntax: SyntaxNode,
6427}
6428impl LikeClause {
6429 #[inline]
6430 pub fn like_options(&self) -> AstChildren<LikeOption> {
6431 support::children(&self.syntax)
6432 }
6433 #[inline]
6434 pub fn like_token(&self) -> Option<SyntaxToken> {
6435 support::token(&self.syntax, SyntaxKind::LIKE_KW)
6436 }
6437}
6438
6439#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6440pub struct LikeOption {
6441 pub(crate) syntax: SyntaxNode,
6442}
6443impl LikeOption {
6444 #[inline]
6445 pub fn comments_token(&self) -> Option<SyntaxToken> {
6446 support::token(&self.syntax, SyntaxKind::COMMENTS_KW)
6447 }
6448 #[inline]
6449 pub fn compression_token(&self) -> Option<SyntaxToken> {
6450 support::token(&self.syntax, SyntaxKind::COMPRESSION_KW)
6451 }
6452 #[inline]
6453 pub fn constraints_token(&self) -> Option<SyntaxToken> {
6454 support::token(&self.syntax, SyntaxKind::CONSTRAINTS_KW)
6455 }
6456 #[inline]
6457 pub fn defaults_token(&self) -> Option<SyntaxToken> {
6458 support::token(&self.syntax, SyntaxKind::DEFAULTS_KW)
6459 }
6460 #[inline]
6461 pub fn excluding_token(&self) -> Option<SyntaxToken> {
6462 support::token(&self.syntax, SyntaxKind::EXCLUDING_KW)
6463 }
6464 #[inline]
6465 pub fn generated_token(&self) -> Option<SyntaxToken> {
6466 support::token(&self.syntax, SyntaxKind::GENERATED_KW)
6467 }
6468 #[inline]
6469 pub fn identity_token(&self) -> Option<SyntaxToken> {
6470 support::token(&self.syntax, SyntaxKind::IDENTITY_KW)
6471 }
6472 #[inline]
6473 pub fn including_token(&self) -> Option<SyntaxToken> {
6474 support::token(&self.syntax, SyntaxKind::INCLUDING_KW)
6475 }
6476 #[inline]
6477 pub fn indexes_token(&self) -> Option<SyntaxToken> {
6478 support::token(&self.syntax, SyntaxKind::INDEXES_KW)
6479 }
6480}
6481
6482#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6483pub struct LimitClause {
6484 pub(crate) syntax: SyntaxNode,
6485}
6486impl LimitClause {
6487 #[inline]
6488 pub fn expr(&self) -> Option<Expr> {
6489 support::child(&self.syntax)
6490 }
6491 #[inline]
6492 pub fn all_token(&self) -> Option<SyntaxToken> {
6493 support::token(&self.syntax, SyntaxKind::ALL_KW)
6494 }
6495 #[inline]
6496 pub fn limit_token(&self) -> Option<SyntaxToken> {
6497 support::token(&self.syntax, SyntaxKind::LIMIT_KW)
6498 }
6499}
6500
6501#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6502pub struct Listen {
6503 pub(crate) syntax: SyntaxNode,
6504}
6505impl Listen {
6506 #[inline]
6507 pub fn name_ref(&self) -> Option<NameRef> {
6508 support::child(&self.syntax)
6509 }
6510 #[inline]
6511 pub fn listen_token(&self) -> Option<SyntaxToken> {
6512 support::token(&self.syntax, SyntaxKind::LISTEN_KW)
6513 }
6514}
6515
6516#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6517pub struct Literal {
6518 pub(crate) syntax: SyntaxNode,
6519}
6520impl Literal {}
6521
6522#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6523pub struct Load {
6524 pub(crate) syntax: SyntaxNode,
6525}
6526impl Load {
6527 #[inline]
6528 pub fn load_token(&self) -> Option<SyntaxToken> {
6529 support::token(&self.syntax, SyntaxKind::LOAD_KW)
6530 }
6531}
6532
6533#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6534pub struct Lock {
6535 pub(crate) syntax: SyntaxNode,
6536}
6537impl Lock {
6538 #[inline]
6539 pub fn lock_token(&self) -> Option<SyntaxToken> {
6540 support::token(&self.syntax, SyntaxKind::LOCK_KW)
6541 }
6542 #[inline]
6543 pub fn table_token(&self) -> Option<SyntaxToken> {
6544 support::token(&self.syntax, SyntaxKind::TABLE_KW)
6545 }
6546}
6547
6548#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6549pub struct LockingClause {
6550 pub(crate) syntax: SyntaxNode,
6551}
6552impl LockingClause {
6553 #[inline]
6554 pub fn for_token(&self) -> Option<SyntaxToken> {
6555 support::token(&self.syntax, SyntaxKind::FOR_KW)
6556 }
6557}
6558
6559#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6560pub struct Lteq {
6561 pub(crate) syntax: SyntaxNode,
6562}
6563impl Lteq {
6564 #[inline]
6565 pub fn l_angle_token(&self) -> Option<SyntaxToken> {
6566 support::token(&self.syntax, SyntaxKind::L_ANGLE)
6567 }
6568 #[inline]
6569 pub fn eq_token(&self) -> Option<SyntaxToken> {
6570 support::token(&self.syntax, SyntaxKind::EQ)
6571 }
6572}
6573
6574#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6575pub struct MatchFull {
6576 pub(crate) syntax: SyntaxNode,
6577}
6578impl MatchFull {
6579 #[inline]
6580 pub fn full_token(&self) -> Option<SyntaxToken> {
6581 support::token(&self.syntax, SyntaxKind::FULL_KW)
6582 }
6583 #[inline]
6584 pub fn match_token(&self) -> Option<SyntaxToken> {
6585 support::token(&self.syntax, SyntaxKind::MATCH_KW)
6586 }
6587}
6588
6589#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6590pub struct MatchPartial {
6591 pub(crate) syntax: SyntaxNode,
6592}
6593impl MatchPartial {
6594 #[inline]
6595 pub fn match_token(&self) -> Option<SyntaxToken> {
6596 support::token(&self.syntax, SyntaxKind::MATCH_KW)
6597 }
6598 #[inline]
6599 pub fn partial_token(&self) -> Option<SyntaxToken> {
6600 support::token(&self.syntax, SyntaxKind::PARTIAL_KW)
6601 }
6602}
6603
6604#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6605pub struct MatchSimple {
6606 pub(crate) syntax: SyntaxNode,
6607}
6608impl MatchSimple {
6609 #[inline]
6610 pub fn match_token(&self) -> Option<SyntaxToken> {
6611 support::token(&self.syntax, SyntaxKind::MATCH_KW)
6612 }
6613 #[inline]
6614 pub fn simple_token(&self) -> Option<SyntaxToken> {
6615 support::token(&self.syntax, SyntaxKind::SIMPLE_KW)
6616 }
6617}
6618
6619#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6620pub struct Materialized {
6621 pub(crate) syntax: SyntaxNode,
6622}
6623impl Materialized {
6624 #[inline]
6625 pub fn materialized_token(&self) -> Option<SyntaxToken> {
6626 support::token(&self.syntax, SyntaxKind::MATERIALIZED_KW)
6627 }
6628}
6629
6630#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6631pub struct Merge {
6632 pub(crate) syntax: SyntaxNode,
6633}
6634impl Merge {
6635 #[inline]
6636 pub fn alias(&self) -> Option<Alias> {
6637 support::child(&self.syntax)
6638 }
6639 #[inline]
6640 pub fn merge_when_clauses(&self) -> AstChildren<MergeWhenClause> {
6641 support::children(&self.syntax)
6642 }
6643 #[inline]
6644 pub fn relation_name(&self) -> Option<RelationName> {
6645 support::child(&self.syntax)
6646 }
6647 #[inline]
6648 pub fn using_clause(&self) -> Option<UsingClause> {
6649 support::child(&self.syntax)
6650 }
6651 #[inline]
6652 pub fn into_token(&self) -> Option<SyntaxToken> {
6653 support::token(&self.syntax, SyntaxKind::INTO_KW)
6654 }
6655 #[inline]
6656 pub fn merge_token(&self) -> Option<SyntaxToken> {
6657 support::token(&self.syntax, SyntaxKind::MERGE_KW)
6658 }
6659}
6660
6661#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6662pub struct MergeDelete {
6663 pub(crate) syntax: SyntaxNode,
6664}
6665impl MergeDelete {
6666 #[inline]
6667 pub fn delete_token(&self) -> Option<SyntaxToken> {
6668 support::token(&self.syntax, SyntaxKind::DELETE_KW)
6669 }
6670}
6671
6672#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6673pub struct MergeDoNothing {
6674 pub(crate) syntax: SyntaxNode,
6675}
6676impl MergeDoNothing {
6677 #[inline]
6678 pub fn do_token(&self) -> Option<SyntaxToken> {
6679 support::token(&self.syntax, SyntaxKind::DO_KW)
6680 }
6681 #[inline]
6682 pub fn nothing_token(&self) -> Option<SyntaxToken> {
6683 support::token(&self.syntax, SyntaxKind::NOTHING_KW)
6684 }
6685}
6686
6687#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6688pub struct MergeInsert {
6689 pub(crate) syntax: SyntaxNode,
6690}
6691impl MergeInsert {
6692 #[inline]
6693 pub fn insert_token(&self) -> Option<SyntaxToken> {
6694 support::token(&self.syntax, SyntaxKind::INSERT_KW)
6695 }
6696}
6697
6698#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6699pub struct MergeUpdate {
6700 pub(crate) syntax: SyntaxNode,
6701}
6702impl MergeUpdate {
6703 #[inline]
6704 pub fn set_token(&self) -> Option<SyntaxToken> {
6705 support::token(&self.syntax, SyntaxKind::SET_KW)
6706 }
6707 #[inline]
6708 pub fn update_token(&self) -> Option<SyntaxToken> {
6709 support::token(&self.syntax, SyntaxKind::UPDATE_KW)
6710 }
6711}
6712
6713#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6714pub struct MergeWhenMatched {
6715 pub(crate) syntax: SyntaxNode,
6716}
6717impl MergeWhenMatched {
6718 #[inline]
6719 pub fn condition(&self) -> Option<Expr> {
6720 support::child(&self.syntax)
6721 }
6722 #[inline]
6723 pub fn merge_action(&self) -> Option<MergeAction> {
6724 support::child(&self.syntax)
6725 }
6726 #[inline]
6727 pub fn and_token(&self) -> Option<SyntaxToken> {
6728 support::token(&self.syntax, SyntaxKind::AND_KW)
6729 }
6730 #[inline]
6731 pub fn matched_token(&self) -> Option<SyntaxToken> {
6732 support::token(&self.syntax, SyntaxKind::MATCHED_KW)
6733 }
6734 #[inline]
6735 pub fn then_token(&self) -> Option<SyntaxToken> {
6736 support::token(&self.syntax, SyntaxKind::THEN_KW)
6737 }
6738 #[inline]
6739 pub fn when_token(&self) -> Option<SyntaxToken> {
6740 support::token(&self.syntax, SyntaxKind::WHEN_KW)
6741 }
6742}
6743
6744#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6745pub struct MergeWhenNotMatchedSource {
6746 pub(crate) syntax: SyntaxNode,
6747}
6748impl MergeWhenNotMatchedSource {
6749 #[inline]
6750 pub fn condition(&self) -> Option<Expr> {
6751 support::child(&self.syntax)
6752 }
6753 #[inline]
6754 pub fn merge_action(&self) -> Option<MergeAction> {
6755 support::child(&self.syntax)
6756 }
6757 #[inline]
6758 pub fn and_token(&self) -> Option<SyntaxToken> {
6759 support::token(&self.syntax, SyntaxKind::AND_KW)
6760 }
6761 #[inline]
6762 pub fn by_token(&self) -> Option<SyntaxToken> {
6763 support::token(&self.syntax, SyntaxKind::BY_KW)
6764 }
6765 #[inline]
6766 pub fn matched_token(&self) -> Option<SyntaxToken> {
6767 support::token(&self.syntax, SyntaxKind::MATCHED_KW)
6768 }
6769 #[inline]
6770 pub fn not_token(&self) -> Option<SyntaxToken> {
6771 support::token(&self.syntax, SyntaxKind::NOT_KW)
6772 }
6773 #[inline]
6774 pub fn source_token(&self) -> Option<SyntaxToken> {
6775 support::token(&self.syntax, SyntaxKind::SOURCE_KW)
6776 }
6777 #[inline]
6778 pub fn then_token(&self) -> Option<SyntaxToken> {
6779 support::token(&self.syntax, SyntaxKind::THEN_KW)
6780 }
6781 #[inline]
6782 pub fn when_token(&self) -> Option<SyntaxToken> {
6783 support::token(&self.syntax, SyntaxKind::WHEN_KW)
6784 }
6785}
6786
6787#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6788pub struct MergeWhenNotMatchedTarget {
6789 pub(crate) syntax: SyntaxNode,
6790}
6791impl MergeWhenNotMatchedTarget {
6792 #[inline]
6793 pub fn condition(&self) -> Option<Expr> {
6794 support::child(&self.syntax)
6795 }
6796 #[inline]
6797 pub fn merge_action(&self) -> Option<MergeAction> {
6798 support::child(&self.syntax)
6799 }
6800 #[inline]
6801 pub fn and_token(&self) -> Option<SyntaxToken> {
6802 support::token(&self.syntax, SyntaxKind::AND_KW)
6803 }
6804 #[inline]
6805 pub fn by_token(&self) -> Option<SyntaxToken> {
6806 support::token(&self.syntax, SyntaxKind::BY_KW)
6807 }
6808 #[inline]
6809 pub fn matched_token(&self) -> Option<SyntaxToken> {
6810 support::token(&self.syntax, SyntaxKind::MATCHED_KW)
6811 }
6812 #[inline]
6813 pub fn not_token(&self) -> Option<SyntaxToken> {
6814 support::token(&self.syntax, SyntaxKind::NOT_KW)
6815 }
6816 #[inline]
6817 pub fn target_token(&self) -> Option<SyntaxToken> {
6818 support::token(&self.syntax, SyntaxKind::TARGET_KW)
6819 }
6820 #[inline]
6821 pub fn then_token(&self) -> Option<SyntaxToken> {
6822 support::token(&self.syntax, SyntaxKind::THEN_KW)
6823 }
6824 #[inline]
6825 pub fn when_token(&self) -> Option<SyntaxToken> {
6826 support::token(&self.syntax, SyntaxKind::WHEN_KW)
6827 }
6828}
6829
6830#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6831pub struct Move {
6832 pub(crate) syntax: SyntaxNode,
6833}
6834impl Move {
6835 #[inline]
6836 pub fn move_token(&self) -> Option<SyntaxToken> {
6837 support::token(&self.syntax, SyntaxKind::MOVE_KW)
6838 }
6839}
6840
6841#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6842pub struct Name {
6843 pub(crate) syntax: SyntaxNode,
6844}
6845impl Name {
6846 #[inline]
6847 pub fn ident_token(&self) -> Option<SyntaxToken> {
6848 support::token(&self.syntax, SyntaxKind::IDENT)
6849 }
6850}
6851
6852#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6853pub struct NameRef {
6854 pub(crate) syntax: SyntaxNode,
6855}
6856impl NameRef {
6857 #[inline]
6858 pub fn ident_token(&self) -> Option<SyntaxToken> {
6859 support::token(&self.syntax, SyntaxKind::IDENT)
6860 }
6861}
6862
6863#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6864pub struct NamedArg {
6865 pub(crate) syntax: SyntaxNode,
6866}
6867impl NamedArg {
6868 #[inline]
6869 pub fn expr(&self) -> Option<Expr> {
6870 support::child(&self.syntax)
6871 }
6872 #[inline]
6873 pub fn fat_arrow(&self) -> Option<FatArrow> {
6874 support::child(&self.syntax)
6875 }
6876 #[inline]
6877 pub fn name_ref(&self) -> Option<NameRef> {
6878 support::child(&self.syntax)
6879 }
6880}
6881
6882#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6883pub struct Neq {
6884 pub(crate) syntax: SyntaxNode,
6885}
6886impl Neq {
6887 #[inline]
6888 pub fn bang_token(&self) -> Option<SyntaxToken> {
6889 support::token(&self.syntax, SyntaxKind::BANG)
6890 }
6891 #[inline]
6892 pub fn eq_token(&self) -> Option<SyntaxToken> {
6893 support::token(&self.syntax, SyntaxKind::EQ)
6894 }
6895}
6896
6897#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6898pub struct Neqb {
6899 pub(crate) syntax: SyntaxNode,
6900}
6901impl Neqb {
6902 #[inline]
6903 pub fn l_angle_token(&self) -> Option<SyntaxToken> {
6904 support::token(&self.syntax, SyntaxKind::L_ANGLE)
6905 }
6906 #[inline]
6907 pub fn r_angle_token(&self) -> Option<SyntaxToken> {
6908 support::token(&self.syntax, SyntaxKind::R_ANGLE)
6909 }
6910}
6911
6912#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6913pub struct NoAction {
6914 pub(crate) syntax: SyntaxNode,
6915}
6916impl NoAction {
6917 #[inline]
6918 pub fn action_token(&self) -> Option<SyntaxToken> {
6919 support::token(&self.syntax, SyntaxKind::ACTION_KW)
6920 }
6921 #[inline]
6922 pub fn no_token(&self) -> Option<SyntaxToken> {
6923 support::token(&self.syntax, SyntaxKind::NO_KW)
6924 }
6925}
6926
6927#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6928pub struct NoForceRls {
6929 pub(crate) syntax: SyntaxNode,
6930}
6931impl NoForceRls {
6932 #[inline]
6933 pub fn force_token(&self) -> Option<SyntaxToken> {
6934 support::token(&self.syntax, SyntaxKind::FORCE_KW)
6935 }
6936 #[inline]
6937 pub fn level_token(&self) -> Option<SyntaxToken> {
6938 support::token(&self.syntax, SyntaxKind::LEVEL_KW)
6939 }
6940 #[inline]
6941 pub fn no_token(&self) -> Option<SyntaxToken> {
6942 support::token(&self.syntax, SyntaxKind::NO_KW)
6943 }
6944 #[inline]
6945 pub fn row_token(&self) -> Option<SyntaxToken> {
6946 support::token(&self.syntax, SyntaxKind::ROW_KW)
6947 }
6948 #[inline]
6949 pub fn security_token(&self) -> Option<SyntaxToken> {
6950 support::token(&self.syntax, SyntaxKind::SECURITY_KW)
6951 }
6952}
6953
6954#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6955pub struct NoInherit {
6956 pub(crate) syntax: SyntaxNode,
6957}
6958impl NoInherit {
6959 #[inline]
6960 pub fn inherit_token(&self) -> Option<SyntaxToken> {
6961 support::token(&self.syntax, SyntaxKind::INHERIT_KW)
6962 }
6963 #[inline]
6964 pub fn no_token(&self) -> Option<SyntaxToken> {
6965 support::token(&self.syntax, SyntaxKind::NO_KW)
6966 }
6967}
6968
6969#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6970pub struct NonStandardParam {
6971 pub(crate) syntax: SyntaxNode,
6972}
6973impl NonStandardParam {
6974 #[inline]
6975 pub fn name_ref(&self) -> Option<NameRef> {
6976 support::child(&self.syntax)
6977 }
6978 #[inline]
6979 pub fn colon_token(&self) -> Option<SyntaxToken> {
6980 support::token(&self.syntax, SyntaxKind::COLON)
6981 }
6982}
6983
6984#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6985pub struct NotDeferrable {
6986 pub(crate) syntax: SyntaxNode,
6987}
6988impl NotDeferrable {
6989 #[inline]
6990 pub fn deferrable_token(&self) -> Option<SyntaxToken> {
6991 support::token(&self.syntax, SyntaxKind::DEFERRABLE_KW)
6992 }
6993 #[inline]
6994 pub fn not_token(&self) -> Option<SyntaxToken> {
6995 support::token(&self.syntax, SyntaxKind::NOT_KW)
6996 }
6997}
6998
6999#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7000pub struct NotDeferrableConstraintOption {
7001 pub(crate) syntax: SyntaxNode,
7002}
7003impl NotDeferrableConstraintOption {
7004 #[inline]
7005 pub fn deferrable_token(&self) -> Option<SyntaxToken> {
7006 support::token(&self.syntax, SyntaxKind::DEFERRABLE_KW)
7007 }
7008 #[inline]
7009 pub fn not_token(&self) -> Option<SyntaxToken> {
7010 support::token(&self.syntax, SyntaxKind::NOT_KW)
7011 }
7012}
7013
7014#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7015pub struct NotEnforced {
7016 pub(crate) syntax: SyntaxNode,
7017}
7018impl NotEnforced {
7019 #[inline]
7020 pub fn enforced_token(&self) -> Option<SyntaxToken> {
7021 support::token(&self.syntax, SyntaxKind::ENFORCED_KW)
7022 }
7023 #[inline]
7024 pub fn not_token(&self) -> Option<SyntaxToken> {
7025 support::token(&self.syntax, SyntaxKind::NOT_KW)
7026 }
7027}
7028
7029#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7030pub struct NotIlike {
7031 pub(crate) syntax: SyntaxNode,
7032}
7033impl NotIlike {
7034 #[inline]
7035 pub fn ilike_token(&self) -> Option<SyntaxToken> {
7036 support::token(&self.syntax, SyntaxKind::ILIKE_KW)
7037 }
7038 #[inline]
7039 pub fn not_token(&self) -> Option<SyntaxToken> {
7040 support::token(&self.syntax, SyntaxKind::NOT_KW)
7041 }
7042}
7043
7044#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7045pub struct NotIn {
7046 pub(crate) syntax: SyntaxNode,
7047}
7048impl NotIn {
7049 #[inline]
7050 pub fn in_token(&self) -> Option<SyntaxToken> {
7051 support::token(&self.syntax, SyntaxKind::IN_KW)
7052 }
7053 #[inline]
7054 pub fn not_token(&self) -> Option<SyntaxToken> {
7055 support::token(&self.syntax, SyntaxKind::NOT_KW)
7056 }
7057}
7058
7059#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7060pub struct NotLike {
7061 pub(crate) syntax: SyntaxNode,
7062}
7063impl NotLike {
7064 #[inline]
7065 pub fn like_token(&self) -> Option<SyntaxToken> {
7066 support::token(&self.syntax, SyntaxKind::LIKE_KW)
7067 }
7068 #[inline]
7069 pub fn not_token(&self) -> Option<SyntaxToken> {
7070 support::token(&self.syntax, SyntaxKind::NOT_KW)
7071 }
7072}
7073
7074#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7075pub struct NotMaterialized {
7076 pub(crate) syntax: SyntaxNode,
7077}
7078impl NotMaterialized {
7079 #[inline]
7080 pub fn materialized_token(&self) -> Option<SyntaxToken> {
7081 support::token(&self.syntax, SyntaxKind::MATERIALIZED_KW)
7082 }
7083 #[inline]
7084 pub fn not_token(&self) -> Option<SyntaxToken> {
7085 support::token(&self.syntax, SyntaxKind::NOT_KW)
7086 }
7087}
7088
7089#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7090pub struct NotNullConstraint {
7091 pub(crate) syntax: SyntaxNode,
7092}
7093impl NotNullConstraint {
7094 #[inline]
7095 pub fn name_ref(&self) -> Option<NameRef> {
7096 support::child(&self.syntax)
7097 }
7098 #[inline]
7099 pub fn no_inherit(&self) -> Option<NoInherit> {
7100 support::child(&self.syntax)
7101 }
7102 #[inline]
7103 pub fn constraint_token(&self) -> Option<SyntaxToken> {
7104 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
7105 }
7106 #[inline]
7107 pub fn not_token(&self) -> Option<SyntaxToken> {
7108 support::token(&self.syntax, SyntaxKind::NOT_KW)
7109 }
7110 #[inline]
7111 pub fn null_token(&self) -> Option<SyntaxToken> {
7112 support::token(&self.syntax, SyntaxKind::NULL_KW)
7113 }
7114}
7115
7116#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7117pub struct NotOf {
7118 pub(crate) syntax: SyntaxNode,
7119}
7120impl NotOf {
7121 #[inline]
7122 pub fn not_token(&self) -> Option<SyntaxToken> {
7123 support::token(&self.syntax, SyntaxKind::NOT_KW)
7124 }
7125 #[inline]
7126 pub fn of_token(&self) -> Option<SyntaxToken> {
7127 support::token(&self.syntax, SyntaxKind::OF_KW)
7128 }
7129}
7130
7131#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7132pub struct NotSimilarTo {
7133 pub(crate) syntax: SyntaxNode,
7134}
7135impl NotSimilarTo {
7136 #[inline]
7137 pub fn not_token(&self) -> Option<SyntaxToken> {
7138 support::token(&self.syntax, SyntaxKind::NOT_KW)
7139 }
7140 #[inline]
7141 pub fn similar_token(&self) -> Option<SyntaxToken> {
7142 support::token(&self.syntax, SyntaxKind::SIMILAR_KW)
7143 }
7144 #[inline]
7145 pub fn to_token(&self) -> Option<SyntaxToken> {
7146 support::token(&self.syntax, SyntaxKind::TO_KW)
7147 }
7148}
7149
7150#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7151pub struct NotValid {
7152 pub(crate) syntax: SyntaxNode,
7153}
7154impl NotValid {
7155 #[inline]
7156 pub fn not_token(&self) -> Option<SyntaxToken> {
7157 support::token(&self.syntax, SyntaxKind::NOT_KW)
7158 }
7159 #[inline]
7160 pub fn valid_token(&self) -> Option<SyntaxToken> {
7161 support::token(&self.syntax, SyntaxKind::VALID_KW)
7162 }
7163}
7164
7165#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7166pub struct Notify {
7167 pub(crate) syntax: SyntaxNode,
7168}
7169impl Notify {
7170 #[inline]
7171 pub fn notify_token(&self) -> Option<SyntaxToken> {
7172 support::token(&self.syntax, SyntaxKind::NOTIFY_KW)
7173 }
7174}
7175
7176#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7177pub struct NullConstraint {
7178 pub(crate) syntax: SyntaxNode,
7179}
7180impl NullConstraint {
7181 #[inline]
7182 pub fn name_ref(&self) -> Option<NameRef> {
7183 support::child(&self.syntax)
7184 }
7185 #[inline]
7186 pub fn constraint_token(&self) -> Option<SyntaxToken> {
7187 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
7188 }
7189 #[inline]
7190 pub fn null_token(&self) -> Option<SyntaxToken> {
7191 support::token(&self.syntax, SyntaxKind::NULL_KW)
7192 }
7193}
7194
7195#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7196pub struct NullsDistinct {
7197 pub(crate) syntax: SyntaxNode,
7198}
7199impl NullsDistinct {
7200 #[inline]
7201 pub fn distinct_token(&self) -> Option<SyntaxToken> {
7202 support::token(&self.syntax, SyntaxKind::DISTINCT_KW)
7203 }
7204 #[inline]
7205 pub fn nulls_token(&self) -> Option<SyntaxToken> {
7206 support::token(&self.syntax, SyntaxKind::NULLS_KW)
7207 }
7208}
7209
7210#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7211pub struct NullsFirst {
7212 pub(crate) syntax: SyntaxNode,
7213}
7214impl NullsFirst {
7215 #[inline]
7216 pub fn first_token(&self) -> Option<SyntaxToken> {
7217 support::token(&self.syntax, SyntaxKind::FIRST_KW)
7218 }
7219 #[inline]
7220 pub fn nulls_token(&self) -> Option<SyntaxToken> {
7221 support::token(&self.syntax, SyntaxKind::NULLS_KW)
7222 }
7223}
7224
7225#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7226pub struct NullsLast {
7227 pub(crate) syntax: SyntaxNode,
7228}
7229impl NullsLast {
7230 #[inline]
7231 pub fn last_token(&self) -> Option<SyntaxToken> {
7232 support::token(&self.syntax, SyntaxKind::LAST_KW)
7233 }
7234 #[inline]
7235 pub fn nulls_token(&self) -> Option<SyntaxToken> {
7236 support::token(&self.syntax, SyntaxKind::NULLS_KW)
7237 }
7238}
7239
7240#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7241pub struct NullsNotDistinct {
7242 pub(crate) syntax: SyntaxNode,
7243}
7244impl NullsNotDistinct {
7245 #[inline]
7246 pub fn distinct_token(&self) -> Option<SyntaxToken> {
7247 support::token(&self.syntax, SyntaxKind::DISTINCT_KW)
7248 }
7249 #[inline]
7250 pub fn not_token(&self) -> Option<SyntaxToken> {
7251 support::token(&self.syntax, SyntaxKind::NOT_KW)
7252 }
7253 #[inline]
7254 pub fn nulls_token(&self) -> Option<SyntaxToken> {
7255 support::token(&self.syntax, SyntaxKind::NULLS_KW)
7256 }
7257}
7258
7259#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7260pub struct OfType {
7261 pub(crate) syntax: SyntaxNode,
7262}
7263impl OfType {
7264 #[inline]
7265 pub fn ty(&self) -> Option<Type> {
7266 support::child(&self.syntax)
7267 }
7268 #[inline]
7269 pub fn of_token(&self) -> Option<SyntaxToken> {
7270 support::token(&self.syntax, SyntaxKind::OF_KW)
7271 }
7272}
7273
7274#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7275pub struct OffsetClause {
7276 pub(crate) syntax: SyntaxNode,
7277}
7278impl OffsetClause {
7279 #[inline]
7280 pub fn expr(&self) -> Option<Expr> {
7281 support::child(&self.syntax)
7282 }
7283 #[inline]
7284 pub fn offset_token(&self) -> Option<SyntaxToken> {
7285 support::token(&self.syntax, SyntaxKind::OFFSET_KW)
7286 }
7287 #[inline]
7288 pub fn row_token(&self) -> Option<SyntaxToken> {
7289 support::token(&self.syntax, SyntaxKind::ROW_KW)
7290 }
7291 #[inline]
7292 pub fn rows_token(&self) -> Option<SyntaxToken> {
7293 support::token(&self.syntax, SyntaxKind::ROWS_KW)
7294 }
7295}
7296
7297#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7298pub struct OnClause {
7299 pub(crate) syntax: SyntaxNode,
7300}
7301impl OnClause {
7302 #[inline]
7303 pub fn expr(&self) -> Option<Expr> {
7304 support::child(&self.syntax)
7305 }
7306 #[inline]
7307 pub fn on_token(&self) -> Option<SyntaxToken> {
7308 support::token(&self.syntax, SyntaxKind::ON_KW)
7309 }
7310}
7311
7312#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7313pub struct OnCommit {
7314 pub(crate) syntax: SyntaxNode,
7315}
7316impl OnCommit {
7317 #[inline]
7318 pub fn on_commit_action(&self) -> Option<OnCommitAction> {
7319 support::child(&self.syntax)
7320 }
7321 #[inline]
7322 pub fn commit_token(&self) -> Option<SyntaxToken> {
7323 support::token(&self.syntax, SyntaxKind::COMMIT_KW)
7324 }
7325 #[inline]
7326 pub fn on_token(&self) -> Option<SyntaxToken> {
7327 support::token(&self.syntax, SyntaxKind::ON_KW)
7328 }
7329}
7330
7331#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7332pub struct OnDeleteAction {
7333 pub(crate) syntax: SyntaxNode,
7334}
7335impl OnDeleteAction {
7336 #[inline]
7337 pub fn ref_action(&self) -> Option<RefAction> {
7338 support::child(&self.syntax)
7339 }
7340 #[inline]
7341 pub fn delete_token(&self) -> Option<SyntaxToken> {
7342 support::token(&self.syntax, SyntaxKind::DELETE_KW)
7343 }
7344 #[inline]
7345 pub fn on_token(&self) -> Option<SyntaxToken> {
7346 support::token(&self.syntax, SyntaxKind::ON_KW)
7347 }
7348}
7349
7350#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7351pub struct OnUpdateAction {
7352 pub(crate) syntax: SyntaxNode,
7353}
7354impl OnUpdateAction {
7355 #[inline]
7356 pub fn ref_action(&self) -> Option<RefAction> {
7357 support::child(&self.syntax)
7358 }
7359 #[inline]
7360 pub fn on_token(&self) -> Option<SyntaxToken> {
7361 support::token(&self.syntax, SyntaxKind::ON_KW)
7362 }
7363 #[inline]
7364 pub fn update_token(&self) -> Option<SyntaxToken> {
7365 support::token(&self.syntax, SyntaxKind::UPDATE_KW)
7366 }
7367}
7368
7369#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7370pub struct Op {
7371 pub(crate) syntax: SyntaxNode,
7372}
7373impl Op {
7374 #[inline]
7375 pub fn at_time_zone(&self) -> Option<AtTimeZone> {
7376 support::child(&self.syntax)
7377 }
7378 #[inline]
7379 pub fn colon_colon(&self) -> Option<ColonColon> {
7380 support::child(&self.syntax)
7381 }
7382 #[inline]
7383 pub fn colon_eq(&self) -> Option<ColonEq> {
7384 support::child(&self.syntax)
7385 }
7386 #[inline]
7387 pub fn custom_op(&self) -> Option<CustomOp> {
7388 support::child(&self.syntax)
7389 }
7390 #[inline]
7391 pub fn fat_arrow(&self) -> Option<FatArrow> {
7392 support::child(&self.syntax)
7393 }
7394 #[inline]
7395 pub fn gteq(&self) -> Option<Gteq> {
7396 support::child(&self.syntax)
7397 }
7398 #[inline]
7399 pub fn is_distinct_from(&self) -> Option<IsDistinctFrom> {
7400 support::child(&self.syntax)
7401 }
7402 #[inline]
7403 pub fn is_json(&self) -> Option<IsJson> {
7404 support::child(&self.syntax)
7405 }
7406 #[inline]
7407 pub fn is_json_array(&self) -> Option<IsJsonArray> {
7408 support::child(&self.syntax)
7409 }
7410 #[inline]
7411 pub fn is_json_object(&self) -> Option<IsJsonObject> {
7412 support::child(&self.syntax)
7413 }
7414 #[inline]
7415 pub fn is_json_scalar(&self) -> Option<IsJsonScalar> {
7416 support::child(&self.syntax)
7417 }
7418 #[inline]
7419 pub fn is_json_value(&self) -> Option<IsJsonValue> {
7420 support::child(&self.syntax)
7421 }
7422 #[inline]
7423 pub fn is_not(&self) -> Option<IsNot> {
7424 support::child(&self.syntax)
7425 }
7426 #[inline]
7427 pub fn is_not_distinct_from(&self) -> Option<IsNotDistinctFrom> {
7428 support::child(&self.syntax)
7429 }
7430 #[inline]
7431 pub fn is_not_json(&self) -> Option<IsNotJson> {
7432 support::child(&self.syntax)
7433 }
7434 #[inline]
7435 pub fn is_not_json_array(&self) -> Option<IsNotJsonArray> {
7436 support::child(&self.syntax)
7437 }
7438 #[inline]
7439 pub fn is_not_json_scalar(&self) -> Option<IsNotJsonScalar> {
7440 support::child(&self.syntax)
7441 }
7442 #[inline]
7443 pub fn is_not_json_value(&self) -> Option<IsNotJsonValue> {
7444 support::child(&self.syntax)
7445 }
7446 #[inline]
7447 pub fn lteq(&self) -> Option<Lteq> {
7448 support::child(&self.syntax)
7449 }
7450 #[inline]
7451 pub fn neq(&self) -> Option<Neq> {
7452 support::child(&self.syntax)
7453 }
7454 #[inline]
7455 pub fn neqb(&self) -> Option<Neqb> {
7456 support::child(&self.syntax)
7457 }
7458 #[inline]
7459 pub fn not_ilike(&self) -> Option<NotIlike> {
7460 support::child(&self.syntax)
7461 }
7462 #[inline]
7463 pub fn not_in(&self) -> Option<NotIn> {
7464 support::child(&self.syntax)
7465 }
7466 #[inline]
7467 pub fn not_like(&self) -> Option<NotLike> {
7468 support::child(&self.syntax)
7469 }
7470 #[inline]
7471 pub fn not_similar_to(&self) -> Option<NotSimilarTo> {
7472 support::child(&self.syntax)
7473 }
7474 #[inline]
7475 pub fn operator_call(&self) -> Option<OperatorCall> {
7476 support::child(&self.syntax)
7477 }
7478 #[inline]
7479 pub fn similar_to(&self) -> Option<SimilarTo> {
7480 support::child(&self.syntax)
7481 }
7482 #[inline]
7483 pub fn percent_token(&self) -> Option<SyntaxToken> {
7484 support::token(&self.syntax, SyntaxKind::PERCENT)
7485 }
7486 #[inline]
7487 pub fn plus_token(&self) -> Option<SyntaxToken> {
7488 support::token(&self.syntax, SyntaxKind::PLUS)
7489 }
7490 #[inline]
7491 pub fn minus_token(&self) -> Option<SyntaxToken> {
7492 support::token(&self.syntax, SyntaxKind::MINUS)
7493 }
7494 #[inline]
7495 pub fn slash_token(&self) -> Option<SyntaxToken> {
7496 support::token(&self.syntax, SyntaxKind::SLASH)
7497 }
7498 #[inline]
7499 pub fn colon_token(&self) -> Option<SyntaxToken> {
7500 support::token(&self.syntax, SyntaxKind::COLON)
7501 }
7502 #[inline]
7503 pub fn l_angle_token(&self) -> Option<SyntaxToken> {
7504 support::token(&self.syntax, SyntaxKind::L_ANGLE)
7505 }
7506 #[inline]
7507 pub fn eq_token(&self) -> Option<SyntaxToken> {
7508 support::token(&self.syntax, SyntaxKind::EQ)
7509 }
7510 #[inline]
7511 pub fn r_angle_token(&self) -> Option<SyntaxToken> {
7512 support::token(&self.syntax, SyntaxKind::R_ANGLE)
7513 }
7514 #[inline]
7515 pub fn caret_token(&self) -> Option<SyntaxToken> {
7516 support::token(&self.syntax, SyntaxKind::CARET)
7517 }
7518 #[inline]
7519 pub fn and_token(&self) -> Option<SyntaxToken> {
7520 support::token(&self.syntax, SyntaxKind::AND_KW)
7521 }
7522 #[inline]
7523 pub fn collate_token(&self) -> Option<SyntaxToken> {
7524 support::token(&self.syntax, SyntaxKind::COLLATE_KW)
7525 }
7526 #[inline]
7527 pub fn ilike_token(&self) -> Option<SyntaxToken> {
7528 support::token(&self.syntax, SyntaxKind::ILIKE_KW)
7529 }
7530 #[inline]
7531 pub fn in_token(&self) -> Option<SyntaxToken> {
7532 support::token(&self.syntax, SyntaxKind::IN_KW)
7533 }
7534 #[inline]
7535 pub fn is_token(&self) -> Option<SyntaxToken> {
7536 support::token(&self.syntax, SyntaxKind::IS_KW)
7537 }
7538 #[inline]
7539 pub fn like_token(&self) -> Option<SyntaxToken> {
7540 support::token(&self.syntax, SyntaxKind::LIKE_KW)
7541 }
7542 #[inline]
7543 pub fn or_token(&self) -> Option<SyntaxToken> {
7544 support::token(&self.syntax, SyntaxKind::OR_KW)
7545 }
7546 #[inline]
7547 pub fn overlaps_token(&self) -> Option<SyntaxToken> {
7548 support::token(&self.syntax, SyntaxKind::OVERLAPS_KW)
7549 }
7550 #[inline]
7551 pub fn value_token(&self) -> Option<SyntaxToken> {
7552 support::token(&self.syntax, SyntaxKind::VALUE_KW)
7553 }
7554}
7555
7556#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7557pub struct OperatorCall {
7558 pub(crate) syntax: SyntaxNode,
7559}
7560impl OperatorCall {
7561 #[inline]
7562 pub fn op(&self) -> Option<Op> {
7563 support::child(&self.syntax)
7564 }
7565 #[inline]
7566 pub fn path(&self) -> Option<Path> {
7567 support::child(&self.syntax)
7568 }
7569 #[inline]
7570 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
7571 support::token(&self.syntax, SyntaxKind::L_PAREN)
7572 }
7573 #[inline]
7574 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
7575 support::token(&self.syntax, SyntaxKind::R_PAREN)
7576 }
7577 #[inline]
7578 pub fn dot_token(&self) -> Option<SyntaxToken> {
7579 support::token(&self.syntax, SyntaxKind::DOT)
7580 }
7581 #[inline]
7582 pub fn operator_token(&self) -> Option<SyntaxToken> {
7583 support::token(&self.syntax, SyntaxKind::OPERATOR_KW)
7584 }
7585}
7586
7587#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7588pub struct OptionsList {
7589 pub(crate) syntax: SyntaxNode,
7590}
7591impl OptionsList {
7592 #[inline]
7593 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
7594 support::token(&self.syntax, SyntaxKind::L_PAREN)
7595 }
7596 #[inline]
7597 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
7598 support::token(&self.syntax, SyntaxKind::R_PAREN)
7599 }
7600 #[inline]
7601 pub fn option_token(&self) -> Option<SyntaxToken> {
7602 support::token(&self.syntax, SyntaxKind::OPTION_KW)
7603 }
7604}
7605
7606#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7607pub struct OrReplace {
7608 pub(crate) syntax: SyntaxNode,
7609}
7610impl OrReplace {
7611 #[inline]
7612 pub fn or_token(&self) -> Option<SyntaxToken> {
7613 support::token(&self.syntax, SyntaxKind::OR_KW)
7614 }
7615 #[inline]
7616 pub fn replace_token(&self) -> Option<SyntaxToken> {
7617 support::token(&self.syntax, SyntaxKind::REPLACE_KW)
7618 }
7619}
7620
7621#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7622pub struct OrderByClause {
7623 pub(crate) syntax: SyntaxNode,
7624}
7625impl OrderByClause {
7626 #[inline]
7627 pub fn sort_bys(&self) -> AstChildren<SortBy> {
7628 support::children(&self.syntax)
7629 }
7630 #[inline]
7631 pub fn by_token(&self) -> Option<SyntaxToken> {
7632 support::token(&self.syntax, SyntaxKind::BY_KW)
7633 }
7634 #[inline]
7635 pub fn order_token(&self) -> Option<SyntaxToken> {
7636 support::token(&self.syntax, SyntaxKind::ORDER_KW)
7637 }
7638}
7639
7640#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7641pub struct OverClause {
7642 pub(crate) syntax: SyntaxNode,
7643}
7644impl OverClause {
7645 #[inline]
7646 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
7647 support::token(&self.syntax, SyntaxKind::L_PAREN)
7648 }
7649 #[inline]
7650 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
7651 support::token(&self.syntax, SyntaxKind::R_PAREN)
7652 }
7653 #[inline]
7654 pub fn over_token(&self) -> Option<SyntaxToken> {
7655 support::token(&self.syntax, SyntaxKind::OVER_KW)
7656 }
7657}
7658
7659#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7660pub struct OwnerTo {
7661 pub(crate) syntax: SyntaxNode,
7662}
7663impl OwnerTo {
7664 #[inline]
7665 pub fn role(&self) -> Option<Role> {
7666 support::child(&self.syntax)
7667 }
7668 #[inline]
7669 pub fn owner_token(&self) -> Option<SyntaxToken> {
7670 support::token(&self.syntax, SyntaxKind::OWNER_KW)
7671 }
7672 #[inline]
7673 pub fn to_token(&self) -> Option<SyntaxToken> {
7674 support::token(&self.syntax, SyntaxKind::TO_KW)
7675 }
7676}
7677
7678#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7679pub struct ParallelFuncOption {
7680 pub(crate) syntax: SyntaxNode,
7681}
7682impl ParallelFuncOption {
7683 #[inline]
7684 pub fn ident_token(&self) -> Option<SyntaxToken> {
7685 support::token(&self.syntax, SyntaxKind::IDENT)
7686 }
7687 #[inline]
7688 pub fn parallel_token(&self) -> Option<SyntaxToken> {
7689 support::token(&self.syntax, SyntaxKind::PARALLEL_KW)
7690 }
7691}
7692
7693#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7694pub struct Param {
7695 pub(crate) syntax: SyntaxNode,
7696}
7697impl Param {
7698 #[inline]
7699 pub fn mode(&self) -> Option<ParamMode> {
7700 support::child(&self.syntax)
7701 }
7702 #[inline]
7703 pub fn name(&self) -> Option<Name> {
7704 support::child(&self.syntax)
7705 }
7706 #[inline]
7707 pub fn param_default(&self) -> Option<ParamDefault> {
7708 support::child(&self.syntax)
7709 }
7710 #[inline]
7711 pub fn ty(&self) -> Option<Type> {
7712 support::child(&self.syntax)
7713 }
7714}
7715
7716#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7717pub struct ParamDefault {
7718 pub(crate) syntax: SyntaxNode,
7719}
7720impl ParamDefault {
7721 #[inline]
7722 pub fn expr(&self) -> Option<Expr> {
7723 support::child(&self.syntax)
7724 }
7725 #[inline]
7726 pub fn eq_token(&self) -> Option<SyntaxToken> {
7727 support::token(&self.syntax, SyntaxKind::EQ)
7728 }
7729 #[inline]
7730 pub fn default_token(&self) -> Option<SyntaxToken> {
7731 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
7732 }
7733}
7734
7735#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7736pub struct ParamIn {
7737 pub(crate) syntax: SyntaxNode,
7738}
7739impl ParamIn {
7740 #[inline]
7741 pub fn in_token(&self) -> Option<SyntaxToken> {
7742 support::token(&self.syntax, SyntaxKind::IN_KW)
7743 }
7744}
7745
7746#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7747pub struct ParamInOut {
7748 pub(crate) syntax: SyntaxNode,
7749}
7750impl ParamInOut {
7751 #[inline]
7752 pub fn in_token(&self) -> Option<SyntaxToken> {
7753 support::token(&self.syntax, SyntaxKind::IN_KW)
7754 }
7755 #[inline]
7756 pub fn inout_token(&self) -> Option<SyntaxToken> {
7757 support::token(&self.syntax, SyntaxKind::INOUT_KW)
7758 }
7759 #[inline]
7760 pub fn out_token(&self) -> Option<SyntaxToken> {
7761 support::token(&self.syntax, SyntaxKind::OUT_KW)
7762 }
7763}
7764
7765#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7766pub struct ParamList {
7767 pub(crate) syntax: SyntaxNode,
7768}
7769impl ParamList {
7770 #[inline]
7771 pub fn params(&self) -> AstChildren<Param> {
7772 support::children(&self.syntax)
7773 }
7774}
7775
7776#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7777pub struct ParamOut {
7778 pub(crate) syntax: SyntaxNode,
7779}
7780impl ParamOut {
7781 #[inline]
7782 pub fn out_token(&self) -> Option<SyntaxToken> {
7783 support::token(&self.syntax, SyntaxKind::OUT_KW)
7784 }
7785}
7786
7787#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7788pub struct ParamVariadic {
7789 pub(crate) syntax: SyntaxNode,
7790}
7791impl ParamVariadic {
7792 #[inline]
7793 pub fn variadic_token(&self) -> Option<SyntaxToken> {
7794 support::token(&self.syntax, SyntaxKind::VARIADIC_KW)
7795 }
7796}
7797
7798#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7799pub struct ParenExpr {
7800 pub(crate) syntax: SyntaxNode,
7801}
7802impl ParenExpr {
7803 #[inline]
7804 pub fn expr(&self) -> Option<Expr> {
7805 support::child(&self.syntax)
7806 }
7807 #[inline]
7808 pub fn select(&self) -> Option<Select> {
7809 support::child(&self.syntax)
7810 }
7811 #[inline]
7812 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
7813 support::token(&self.syntax, SyntaxKind::L_PAREN)
7814 }
7815 #[inline]
7816 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
7817 support::token(&self.syntax, SyntaxKind::R_PAREN)
7818 }
7819}
7820
7821#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7822pub struct ParenSelect {
7823 pub(crate) syntax: SyntaxNode,
7824}
7825impl ParenSelect {
7826 #[inline]
7827 pub fn select(&self) -> Option<Select> {
7828 support::child(&self.syntax)
7829 }
7830 #[inline]
7831 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
7832 support::token(&self.syntax, SyntaxKind::L_PAREN)
7833 }
7834 #[inline]
7835 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
7836 support::token(&self.syntax, SyntaxKind::R_PAREN)
7837 }
7838}
7839
7840#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7841pub struct PartitionBy {
7842 pub(crate) syntax: SyntaxNode,
7843}
7844impl PartitionBy {
7845 #[inline]
7846 pub fn by_token(&self) -> Option<SyntaxToken> {
7847 support::token(&self.syntax, SyntaxKind::BY_KW)
7848 }
7849 #[inline]
7850 pub fn partition_token(&self) -> Option<SyntaxToken> {
7851 support::token(&self.syntax, SyntaxKind::PARTITION_KW)
7852 }
7853}
7854
7855#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7856pub struct PartitionDefault {
7857 pub(crate) syntax: SyntaxNode,
7858}
7859impl PartitionDefault {
7860 #[inline]
7861 pub fn default_token(&self) -> Option<SyntaxToken> {
7862 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
7863 }
7864}
7865
7866#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7867pub struct PartitionForValuesFrom {
7868 pub(crate) syntax: SyntaxNode,
7869}
7870impl PartitionForValuesFrom {
7871 #[inline]
7872 pub fn exprs(&self) -> AstChildren<Expr> {
7873 support::children(&self.syntax)
7874 }
7875 #[inline]
7876 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
7877 support::token(&self.syntax, SyntaxKind::L_PAREN)
7878 }
7879 #[inline]
7880 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
7881 support::token(&self.syntax, SyntaxKind::R_PAREN)
7882 }
7883 #[inline]
7884 pub fn for_token(&self) -> Option<SyntaxToken> {
7885 support::token(&self.syntax, SyntaxKind::FOR_KW)
7886 }
7887 #[inline]
7888 pub fn from_token(&self) -> Option<SyntaxToken> {
7889 support::token(&self.syntax, SyntaxKind::FROM_KW)
7890 }
7891 #[inline]
7892 pub fn to_token(&self) -> Option<SyntaxToken> {
7893 support::token(&self.syntax, SyntaxKind::TO_KW)
7894 }
7895 #[inline]
7896 pub fn values_token(&self) -> Option<SyntaxToken> {
7897 support::token(&self.syntax, SyntaxKind::VALUES_KW)
7898 }
7899}
7900
7901#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7902pub struct PartitionForValuesIn {
7903 pub(crate) syntax: SyntaxNode,
7904}
7905impl PartitionForValuesIn {
7906 #[inline]
7907 pub fn exprs(&self) -> AstChildren<Expr> {
7908 support::children(&self.syntax)
7909 }
7910 #[inline]
7911 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
7912 support::token(&self.syntax, SyntaxKind::L_PAREN)
7913 }
7914 #[inline]
7915 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
7916 support::token(&self.syntax, SyntaxKind::R_PAREN)
7917 }
7918 #[inline]
7919 pub fn for_token(&self) -> Option<SyntaxToken> {
7920 support::token(&self.syntax, SyntaxKind::FOR_KW)
7921 }
7922 #[inline]
7923 pub fn in_token(&self) -> Option<SyntaxToken> {
7924 support::token(&self.syntax, SyntaxKind::IN_KW)
7925 }
7926 #[inline]
7927 pub fn values_token(&self) -> Option<SyntaxToken> {
7928 support::token(&self.syntax, SyntaxKind::VALUES_KW)
7929 }
7930}
7931
7932#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7933pub struct PartitionForValuesWith {
7934 pub(crate) syntax: SyntaxNode,
7935}
7936impl PartitionForValuesWith {
7937 #[inline]
7938 pub fn literal(&self) -> Option<Literal> {
7939 support::child(&self.syntax)
7940 }
7941 #[inline]
7942 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
7943 support::token(&self.syntax, SyntaxKind::L_PAREN)
7944 }
7945 #[inline]
7946 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
7947 support::token(&self.syntax, SyntaxKind::R_PAREN)
7948 }
7949 #[inline]
7950 pub fn comma_token(&self) -> Option<SyntaxToken> {
7951 support::token(&self.syntax, SyntaxKind::COMMA)
7952 }
7953 #[inline]
7954 pub fn for_token(&self) -> Option<SyntaxToken> {
7955 support::token(&self.syntax, SyntaxKind::FOR_KW)
7956 }
7957 #[inline]
7958 pub fn ident_token(&self) -> Option<SyntaxToken> {
7959 support::token(&self.syntax, SyntaxKind::IDENT)
7960 }
7961 #[inline]
7962 pub fn values_token(&self) -> Option<SyntaxToken> {
7963 support::token(&self.syntax, SyntaxKind::VALUES_KW)
7964 }
7965 #[inline]
7966 pub fn with_token(&self) -> Option<SyntaxToken> {
7967 support::token(&self.syntax, SyntaxKind::WITH_KW)
7968 }
7969}
7970
7971#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7972pub struct PartitionItem {
7973 pub(crate) syntax: SyntaxNode,
7974}
7975impl PartitionItem {
7976 #[inline]
7977 pub fn collate(&self) -> Option<Collate> {
7978 support::child(&self.syntax)
7979 }
7980 #[inline]
7981 pub fn expr(&self) -> Option<Expr> {
7982 support::child(&self.syntax)
7983 }
7984}
7985
7986#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7987pub struct PartitionItemList {
7988 pub(crate) syntax: SyntaxNode,
7989}
7990impl PartitionItemList {
7991 #[inline]
7992 pub fn partition_items(&self) -> AstChildren<PartitionItem> {
7993 support::children(&self.syntax)
7994 }
7995 #[inline]
7996 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
7997 support::token(&self.syntax, SyntaxKind::L_PAREN)
7998 }
7999 #[inline]
8000 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
8001 support::token(&self.syntax, SyntaxKind::R_PAREN)
8002 }
8003}
8004
8005#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8006pub struct PartitionOf {
8007 pub(crate) syntax: SyntaxNode,
8008}
8009impl PartitionOf {
8010 #[inline]
8011 pub fn ty(&self) -> Option<Type> {
8012 support::child(&self.syntax)
8013 }
8014 #[inline]
8015 pub fn of_token(&self) -> Option<SyntaxToken> {
8016 support::token(&self.syntax, SyntaxKind::OF_KW)
8017 }
8018 #[inline]
8019 pub fn partition_token(&self) -> Option<SyntaxToken> {
8020 support::token(&self.syntax, SyntaxKind::PARTITION_KW)
8021 }
8022}
8023
8024#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8025pub struct Path {
8026 pub(crate) syntax: SyntaxNode,
8027}
8028impl Path {
8029 #[inline]
8030 pub fn qualifier(&self) -> Option<Path> {
8031 support::child(&self.syntax)
8032 }
8033 #[inline]
8034 pub fn segment(&self) -> Option<PathSegment> {
8035 support::child(&self.syntax)
8036 }
8037 #[inline]
8038 pub fn dot_token(&self) -> Option<SyntaxToken> {
8039 support::token(&self.syntax, SyntaxKind::DOT)
8040 }
8041}
8042
8043#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8044pub struct PathSegment {
8045 pub(crate) syntax: SyntaxNode,
8046}
8047impl PathSegment {
8048 #[inline]
8049 pub fn name(&self) -> Option<Name> {
8050 support::child(&self.syntax)
8051 }
8052 #[inline]
8053 pub fn name_ref(&self) -> Option<NameRef> {
8054 support::child(&self.syntax)
8055 }
8056}
8057
8058#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8059pub struct PathType {
8060 pub(crate) syntax: SyntaxNode,
8061}
8062impl PathType {
8063 #[inline]
8064 pub fn arg_list(&self) -> Option<ArgList> {
8065 support::child(&self.syntax)
8066 }
8067 #[inline]
8068 pub fn path(&self) -> Option<Path> {
8069 support::child(&self.syntax)
8070 }
8071}
8072
8073#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8074pub struct PercentType {
8075 pub(crate) syntax: SyntaxNode,
8076}
8077impl PercentType {
8078 #[inline]
8079 pub fn percent_token(&self) -> Option<SyntaxToken> {
8080 support::token(&self.syntax, SyntaxKind::PERCENT)
8081 }
8082 #[inline]
8083 pub fn type_token(&self) -> Option<SyntaxToken> {
8084 support::token(&self.syntax, SyntaxKind::TYPE_KW)
8085 }
8086}
8087
8088#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8089pub struct PercentTypeClause {
8090 pub(crate) syntax: SyntaxNode,
8091}
8092impl PercentTypeClause {
8093 #[inline]
8094 pub fn path(&self) -> Option<Path> {
8095 support::child(&self.syntax)
8096 }
8097 #[inline]
8098 pub fn percent_type_clause(&self) -> Option<PercentTypeClause> {
8099 support::child(&self.syntax)
8100 }
8101}
8102
8103#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8104pub struct PostfixExpr {
8105 pub(crate) syntax: SyntaxNode,
8106}
8107impl PostfixExpr {
8108 #[inline]
8109 pub fn expr(&self) -> Option<Expr> {
8110 support::child(&self.syntax)
8111 }
8112}
8113
8114#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8115pub struct PrefixExpr {
8116 pub(crate) syntax: SyntaxNode,
8117}
8118impl PrefixExpr {
8119 #[inline]
8120 pub fn expr(&self) -> Option<Expr> {
8121 support::child(&self.syntax)
8122 }
8123}
8124
8125#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8126pub struct Prepare {
8127 pub(crate) syntax: SyntaxNode,
8128}
8129impl Prepare {
8130 #[inline]
8131 pub fn name_ref(&self) -> Option<NameRef> {
8132 support::child(&self.syntax)
8133 }
8134 #[inline]
8135 pub fn prepare_token(&self) -> Option<SyntaxToken> {
8136 support::token(&self.syntax, SyntaxKind::PREPARE_KW)
8137 }
8138}
8139
8140#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8141pub struct PrepareTransaction {
8142 pub(crate) syntax: SyntaxNode,
8143}
8144impl PrepareTransaction {
8145 #[inline]
8146 pub fn literal(&self) -> Option<Literal> {
8147 support::child(&self.syntax)
8148 }
8149 #[inline]
8150 pub fn prepare_token(&self) -> Option<SyntaxToken> {
8151 support::token(&self.syntax, SyntaxKind::PREPARE_KW)
8152 }
8153 #[inline]
8154 pub fn transaction_token(&self) -> Option<SyntaxToken> {
8155 support::token(&self.syntax, SyntaxKind::TRANSACTION_KW)
8156 }
8157}
8158
8159#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8160pub struct PreserveRows {
8161 pub(crate) syntax: SyntaxNode,
8162}
8163impl PreserveRows {
8164 #[inline]
8165 pub fn preserve_token(&self) -> Option<SyntaxToken> {
8166 support::token(&self.syntax, SyntaxKind::PRESERVE_KW)
8167 }
8168 #[inline]
8169 pub fn rows_token(&self) -> Option<SyntaxToken> {
8170 support::token(&self.syntax, SyntaxKind::ROWS_KW)
8171 }
8172}
8173
8174#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8175pub struct PrimaryKeyConstraint {
8176 pub(crate) syntax: SyntaxNode,
8177}
8178impl PrimaryKeyConstraint {
8179 #[inline]
8180 pub fn column_list(&self) -> Option<ColumnList> {
8181 support::child(&self.syntax)
8182 }
8183 #[inline]
8184 pub fn name_ref(&self) -> Option<NameRef> {
8185 support::child(&self.syntax)
8186 }
8187 #[inline]
8188 pub fn partition_item_list(&self) -> Option<PartitionItemList> {
8189 support::child(&self.syntax)
8190 }
8191 #[inline]
8192 pub fn using_index(&self) -> Option<UsingIndex> {
8193 support::child(&self.syntax)
8194 }
8195 #[inline]
8196 pub fn constraint_token(&self) -> Option<SyntaxToken> {
8197 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
8198 }
8199 #[inline]
8200 pub fn key_token(&self) -> Option<SyntaxToken> {
8201 support::token(&self.syntax, SyntaxKind::KEY_KW)
8202 }
8203 #[inline]
8204 pub fn primary_token(&self) -> Option<SyntaxToken> {
8205 support::token(&self.syntax, SyntaxKind::PRIMARY_KW)
8206 }
8207}
8208
8209#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8210pub struct ReadCommitted {
8211 pub(crate) syntax: SyntaxNode,
8212}
8213impl ReadCommitted {
8214 #[inline]
8215 pub fn committed_token(&self) -> Option<SyntaxToken> {
8216 support::token(&self.syntax, SyntaxKind::COMMITTED_KW)
8217 }
8218 #[inline]
8219 pub fn isolation_token(&self) -> Option<SyntaxToken> {
8220 support::token(&self.syntax, SyntaxKind::ISOLATION_KW)
8221 }
8222 #[inline]
8223 pub fn level_token(&self) -> Option<SyntaxToken> {
8224 support::token(&self.syntax, SyntaxKind::LEVEL_KW)
8225 }
8226 #[inline]
8227 pub fn read_token(&self) -> Option<SyntaxToken> {
8228 support::token(&self.syntax, SyntaxKind::READ_KW)
8229 }
8230}
8231
8232#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8233pub struct ReadOnly {
8234 pub(crate) syntax: SyntaxNode,
8235}
8236impl ReadOnly {
8237 #[inline]
8238 pub fn only_token(&self) -> Option<SyntaxToken> {
8239 support::token(&self.syntax, SyntaxKind::ONLY_KW)
8240 }
8241 #[inline]
8242 pub fn read_token(&self) -> Option<SyntaxToken> {
8243 support::token(&self.syntax, SyntaxKind::READ_KW)
8244 }
8245}
8246
8247#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8248pub struct ReadUncommitted {
8249 pub(crate) syntax: SyntaxNode,
8250}
8251impl ReadUncommitted {
8252 #[inline]
8253 pub fn isolation_token(&self) -> Option<SyntaxToken> {
8254 support::token(&self.syntax, SyntaxKind::ISOLATION_KW)
8255 }
8256 #[inline]
8257 pub fn level_token(&self) -> Option<SyntaxToken> {
8258 support::token(&self.syntax, SyntaxKind::LEVEL_KW)
8259 }
8260 #[inline]
8261 pub fn read_token(&self) -> Option<SyntaxToken> {
8262 support::token(&self.syntax, SyntaxKind::READ_KW)
8263 }
8264 #[inline]
8265 pub fn uncommitted_token(&self) -> Option<SyntaxToken> {
8266 support::token(&self.syntax, SyntaxKind::UNCOMMITTED_KW)
8267 }
8268}
8269
8270#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8271pub struct ReadWrite {
8272 pub(crate) syntax: SyntaxNode,
8273}
8274impl ReadWrite {
8275 #[inline]
8276 pub fn read_token(&self) -> Option<SyntaxToken> {
8277 support::token(&self.syntax, SyntaxKind::READ_KW)
8278 }
8279 #[inline]
8280 pub fn write_token(&self) -> Option<SyntaxToken> {
8281 support::token(&self.syntax, SyntaxKind::WRITE_KW)
8282 }
8283}
8284
8285#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8286pub struct Reassign {
8287 pub(crate) syntax: SyntaxNode,
8288}
8289impl Reassign {
8290 #[inline]
8291 pub fn reassign_token(&self) -> Option<SyntaxToken> {
8292 support::token(&self.syntax, SyntaxKind::REASSIGN_KW)
8293 }
8294}
8295
8296#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8297pub struct ReferencesConstraint {
8298 pub(crate) syntax: SyntaxNode,
8299}
8300impl ReferencesConstraint {
8301 #[inline]
8302 pub fn match_type(&self) -> Option<MatchType> {
8303 support::child(&self.syntax)
8304 }
8305 #[inline]
8306 pub fn name_ref(&self) -> Option<NameRef> {
8307 support::child(&self.syntax)
8308 }
8309 #[inline]
8310 pub fn on_delete_action(&self) -> Option<OnDeleteAction> {
8311 support::child(&self.syntax)
8312 }
8313 #[inline]
8314 pub fn on_update_action(&self) -> Option<OnUpdateAction> {
8315 support::child(&self.syntax)
8316 }
8317 #[inline]
8318 pub fn path(&self) -> Option<Path> {
8319 support::child(&self.syntax)
8320 }
8321 #[inline]
8322 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
8323 support::token(&self.syntax, SyntaxKind::L_PAREN)
8324 }
8325 #[inline]
8326 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
8327 support::token(&self.syntax, SyntaxKind::R_PAREN)
8328 }
8329 #[inline]
8330 pub fn constraint_token(&self) -> Option<SyntaxToken> {
8331 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
8332 }
8333 #[inline]
8334 pub fn references_token(&self) -> Option<SyntaxToken> {
8335 support::token(&self.syntax, SyntaxKind::REFERENCES_KW)
8336 }
8337}
8338
8339#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8340pub struct Refresh {
8341 pub(crate) syntax: SyntaxNode,
8342}
8343impl Refresh {
8344 #[inline]
8345 pub fn name_ref(&self) -> Option<NameRef> {
8346 support::child(&self.syntax)
8347 }
8348 #[inline]
8349 pub fn concurrently_token(&self) -> Option<SyntaxToken> {
8350 support::token(&self.syntax, SyntaxKind::CONCURRENTLY_KW)
8351 }
8352 #[inline]
8353 pub fn data_token(&self) -> Option<SyntaxToken> {
8354 support::token(&self.syntax, SyntaxKind::DATA_KW)
8355 }
8356 #[inline]
8357 pub fn materialized_token(&self) -> Option<SyntaxToken> {
8358 support::token(&self.syntax, SyntaxKind::MATERIALIZED_KW)
8359 }
8360 #[inline]
8361 pub fn refresh_token(&self) -> Option<SyntaxToken> {
8362 support::token(&self.syntax, SyntaxKind::REFRESH_KW)
8363 }
8364 #[inline]
8365 pub fn view_token(&self) -> Option<SyntaxToken> {
8366 support::token(&self.syntax, SyntaxKind::VIEW_KW)
8367 }
8368 #[inline]
8369 pub fn with_token(&self) -> Option<SyntaxToken> {
8370 support::token(&self.syntax, SyntaxKind::WITH_KW)
8371 }
8372}
8373
8374#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8375pub struct Reindex {
8376 pub(crate) syntax: SyntaxNode,
8377}
8378impl Reindex {
8379 #[inline]
8380 pub fn reindex_token(&self) -> Option<SyntaxToken> {
8381 support::token(&self.syntax, SyntaxKind::REINDEX_KW)
8382 }
8383}
8384
8385#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8386pub struct RelationName {
8387 pub(crate) syntax: SyntaxNode,
8388}
8389impl RelationName {
8390 #[inline]
8391 pub fn path(&self) -> Option<Path> {
8392 support::child(&self.syntax)
8393 }
8394 #[inline]
8395 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
8396 support::token(&self.syntax, SyntaxKind::L_PAREN)
8397 }
8398 #[inline]
8399 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
8400 support::token(&self.syntax, SyntaxKind::R_PAREN)
8401 }
8402 #[inline]
8403 pub fn star_token(&self) -> Option<SyntaxToken> {
8404 support::token(&self.syntax, SyntaxKind::STAR)
8405 }
8406 #[inline]
8407 pub fn only_token(&self) -> Option<SyntaxToken> {
8408 support::token(&self.syntax, SyntaxKind::ONLY_KW)
8409 }
8410}
8411
8412#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8413pub struct ReleaseSavepoint {
8414 pub(crate) syntax: SyntaxNode,
8415}
8416impl ReleaseSavepoint {
8417 #[inline]
8418 pub fn name_ref(&self) -> Option<NameRef> {
8419 support::child(&self.syntax)
8420 }
8421 #[inline]
8422 pub fn release_token(&self) -> Option<SyntaxToken> {
8423 support::token(&self.syntax, SyntaxKind::RELEASE_KW)
8424 }
8425 #[inline]
8426 pub fn savepoint_token(&self) -> Option<SyntaxToken> {
8427 support::token(&self.syntax, SyntaxKind::SAVEPOINT_KW)
8428 }
8429}
8430
8431#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8432pub struct RenameColumn {
8433 pub(crate) syntax: SyntaxNode,
8434}
8435impl RenameColumn {
8436 #[inline]
8437 pub fn column_token(&self) -> Option<SyntaxToken> {
8438 support::token(&self.syntax, SyntaxKind::COLUMN_KW)
8439 }
8440 #[inline]
8441 pub fn rename_token(&self) -> Option<SyntaxToken> {
8442 support::token(&self.syntax, SyntaxKind::RENAME_KW)
8443 }
8444}
8445
8446#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8447pub struct RenameConstraint {
8448 pub(crate) syntax: SyntaxNode,
8449}
8450impl RenameConstraint {
8451 #[inline]
8452 pub fn name(&self) -> Option<Name> {
8453 support::child(&self.syntax)
8454 }
8455 #[inline]
8456 pub fn name_ref(&self) -> Option<NameRef> {
8457 support::child(&self.syntax)
8458 }
8459 #[inline]
8460 pub fn constraint_token(&self) -> Option<SyntaxToken> {
8461 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
8462 }
8463 #[inline]
8464 pub fn rename_token(&self) -> Option<SyntaxToken> {
8465 support::token(&self.syntax, SyntaxKind::RENAME_KW)
8466 }
8467 #[inline]
8468 pub fn to_token(&self) -> Option<SyntaxToken> {
8469 support::token(&self.syntax, SyntaxKind::TO_KW)
8470 }
8471}
8472
8473#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8474pub struct RenameTable {
8475 pub(crate) syntax: SyntaxNode,
8476}
8477impl RenameTable {
8478 #[inline]
8479 pub fn name_ref(&self) -> Option<NameRef> {
8480 support::child(&self.syntax)
8481 }
8482 #[inline]
8483 pub fn rename_token(&self) -> Option<SyntaxToken> {
8484 support::token(&self.syntax, SyntaxKind::RENAME_KW)
8485 }
8486 #[inline]
8487 pub fn to_token(&self) -> Option<SyntaxToken> {
8488 support::token(&self.syntax, SyntaxKind::TO_KW)
8489 }
8490}
8491
8492#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8493pub struct RenameTo {
8494 pub(crate) syntax: SyntaxNode,
8495}
8496impl RenameTo {
8497 #[inline]
8498 pub fn name(&self) -> Option<Name> {
8499 support::child(&self.syntax)
8500 }
8501 #[inline]
8502 pub fn rename_token(&self) -> Option<SyntaxToken> {
8503 support::token(&self.syntax, SyntaxKind::RENAME_KW)
8504 }
8505 #[inline]
8506 pub fn to_token(&self) -> Option<SyntaxToken> {
8507 support::token(&self.syntax, SyntaxKind::TO_KW)
8508 }
8509}
8510
8511#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8512pub struct RepeatableRead {
8513 pub(crate) syntax: SyntaxNode,
8514}
8515impl RepeatableRead {
8516 #[inline]
8517 pub fn isolation_token(&self) -> Option<SyntaxToken> {
8518 support::token(&self.syntax, SyntaxKind::ISOLATION_KW)
8519 }
8520 #[inline]
8521 pub fn level_token(&self) -> Option<SyntaxToken> {
8522 support::token(&self.syntax, SyntaxKind::LEVEL_KW)
8523 }
8524 #[inline]
8525 pub fn read_token(&self) -> Option<SyntaxToken> {
8526 support::token(&self.syntax, SyntaxKind::READ_KW)
8527 }
8528 #[inline]
8529 pub fn repeatable_token(&self) -> Option<SyntaxToken> {
8530 support::token(&self.syntax, SyntaxKind::REPEATABLE_KW)
8531 }
8532}
8533
8534#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8535pub struct ReplicaIdentity {
8536 pub(crate) syntax: SyntaxNode,
8537}
8538impl ReplicaIdentity {
8539 #[inline]
8540 pub fn identity_token(&self) -> Option<SyntaxToken> {
8541 support::token(&self.syntax, SyntaxKind::IDENTITY_KW)
8542 }
8543 #[inline]
8544 pub fn replica_token(&self) -> Option<SyntaxToken> {
8545 support::token(&self.syntax, SyntaxKind::REPLICA_KW)
8546 }
8547}
8548
8549#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8550pub struct Reset {
8551 pub(crate) syntax: SyntaxNode,
8552}
8553impl Reset {
8554 #[inline]
8555 pub fn name_ref(&self) -> Option<NameRef> {
8556 support::child(&self.syntax)
8557 }
8558 #[inline]
8559 pub fn all_token(&self) -> Option<SyntaxToken> {
8560 support::token(&self.syntax, SyntaxKind::ALL_KW)
8561 }
8562 #[inline]
8563 pub fn reset_token(&self) -> Option<SyntaxToken> {
8564 support::token(&self.syntax, SyntaxKind::RESET_KW)
8565 }
8566}
8567
8568#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8569pub struct ResetFuncOption {
8570 pub(crate) syntax: SyntaxNode,
8571}
8572impl ResetFuncOption {
8573 #[inline]
8574 pub fn name_ref(&self) -> Option<NameRef> {
8575 support::child(&self.syntax)
8576 }
8577 #[inline]
8578 pub fn reset_token(&self) -> Option<SyntaxToken> {
8579 support::token(&self.syntax, SyntaxKind::RESET_KW)
8580 }
8581}
8582
8583#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8584pub struct ResetOptions {
8585 pub(crate) syntax: SyntaxNode,
8586}
8587impl ResetOptions {
8588 #[inline]
8589 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
8590 support::token(&self.syntax, SyntaxKind::L_PAREN)
8591 }
8592 #[inline]
8593 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
8594 support::token(&self.syntax, SyntaxKind::R_PAREN)
8595 }
8596 #[inline]
8597 pub fn reset_token(&self) -> Option<SyntaxToken> {
8598 support::token(&self.syntax, SyntaxKind::RESET_KW)
8599 }
8600}
8601
8602#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8603pub struct ResetStorageParams {
8604 pub(crate) syntax: SyntaxNode,
8605}
8606impl ResetStorageParams {
8607 #[inline]
8608 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
8609 support::token(&self.syntax, SyntaxKind::L_PAREN)
8610 }
8611 #[inline]
8612 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
8613 support::token(&self.syntax, SyntaxKind::R_PAREN)
8614 }
8615 #[inline]
8616 pub fn reset_token(&self) -> Option<SyntaxToken> {
8617 support::token(&self.syntax, SyntaxKind::RESET_KW)
8618 }
8619}
8620
8621#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8622pub struct Restart {
8623 pub(crate) syntax: SyntaxNode,
8624}
8625impl Restart {
8626 #[inline]
8627 pub fn restart_token(&self) -> Option<SyntaxToken> {
8628 support::token(&self.syntax, SyntaxKind::RESTART_KW)
8629 }
8630 #[inline]
8631 pub fn with_token(&self) -> Option<SyntaxToken> {
8632 support::token(&self.syntax, SyntaxKind::WITH_KW)
8633 }
8634}
8635
8636#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8637pub struct Restrict {
8638 pub(crate) syntax: SyntaxNode,
8639}
8640impl Restrict {
8641 #[inline]
8642 pub fn restrict_token(&self) -> Option<SyntaxToken> {
8643 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
8644 }
8645}
8646
8647#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8648pub struct RetType {
8649 pub(crate) syntax: SyntaxNode,
8650}
8651impl RetType {
8652 #[inline]
8653 pub fn ty(&self) -> Option<Type> {
8654 support::child(&self.syntax)
8655 }
8656 #[inline]
8657 pub fn returns_token(&self) -> Option<SyntaxToken> {
8658 support::token(&self.syntax, SyntaxKind::RETURNS_KW)
8659 }
8660}
8661
8662#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8663pub struct ReturnFuncOption {
8664 pub(crate) syntax: SyntaxNode,
8665}
8666impl ReturnFuncOption {
8667 #[inline]
8668 pub fn expr(&self) -> Option<Expr> {
8669 support::child(&self.syntax)
8670 }
8671 #[inline]
8672 pub fn return_token(&self) -> Option<SyntaxToken> {
8673 support::token(&self.syntax, SyntaxKind::RETURN_KW)
8674 }
8675}
8676
8677#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8678pub struct ReturningClause {
8679 pub(crate) syntax: SyntaxNode,
8680}
8681impl ReturningClause {
8682 #[inline]
8683 pub fn target_list(&self) -> Option<TargetList> {
8684 support::child(&self.syntax)
8685 }
8686 #[inline]
8687 pub fn returning_token(&self) -> Option<SyntaxToken> {
8688 support::token(&self.syntax, SyntaxKind::RETURNING_KW)
8689 }
8690}
8691
8692#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8693pub struct Revoke {
8694 pub(crate) syntax: SyntaxNode,
8695}
8696impl Revoke {
8697 #[inline]
8698 pub fn revoke_token(&self) -> Option<SyntaxToken> {
8699 support::token(&self.syntax, SyntaxKind::REVOKE_KW)
8700 }
8701}
8702
8703#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8704pub struct Role {
8705 pub(crate) syntax: SyntaxNode,
8706}
8707impl Role {
8708 #[inline]
8709 pub fn current_role_token(&self) -> Option<SyntaxToken> {
8710 support::token(&self.syntax, SyntaxKind::CURRENT_ROLE_KW)
8711 }
8712 #[inline]
8713 pub fn current_user_token(&self) -> Option<SyntaxToken> {
8714 support::token(&self.syntax, SyntaxKind::CURRENT_USER_KW)
8715 }
8716 #[inline]
8717 pub fn group_token(&self) -> Option<SyntaxToken> {
8718 support::token(&self.syntax, SyntaxKind::GROUP_KW)
8719 }
8720 #[inline]
8721 pub fn ident_token(&self) -> Option<SyntaxToken> {
8722 support::token(&self.syntax, SyntaxKind::IDENT)
8723 }
8724 #[inline]
8725 pub fn session_user_token(&self) -> Option<SyntaxToken> {
8726 support::token(&self.syntax, SyntaxKind::SESSION_USER_KW)
8727 }
8728}
8729
8730#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8731pub struct Rollback {
8732 pub(crate) syntax: SyntaxNode,
8733}
8734impl Rollback {
8735 #[inline]
8736 pub fn abort_token(&self) -> Option<SyntaxToken> {
8737 support::token(&self.syntax, SyntaxKind::ABORT_KW)
8738 }
8739 #[inline]
8740 pub fn rollback_token(&self) -> Option<SyntaxToken> {
8741 support::token(&self.syntax, SyntaxKind::ROLLBACK_KW)
8742 }
8743}
8744
8745#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8746pub struct Row {
8747 pub(crate) syntax: SyntaxNode,
8748}
8749impl Row {
8750 #[inline]
8751 pub fn exprs(&self) -> AstChildren<Expr> {
8752 support::children(&self.syntax)
8753 }
8754}
8755
8756#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8757pub struct RowList {
8758 pub(crate) syntax: SyntaxNode,
8759}
8760impl RowList {
8761 #[inline]
8762 pub fn rows(&self) -> AstChildren<Row> {
8763 support::children(&self.syntax)
8764 }
8765}
8766
8767#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8768pub struct RowsFuncOption {
8769 pub(crate) syntax: SyntaxNode,
8770}
8771impl RowsFuncOption {
8772 #[inline]
8773 pub fn rows_token(&self) -> Option<SyntaxToken> {
8774 support::token(&self.syntax, SyntaxKind::ROWS_KW)
8775 }
8776}
8777
8778#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8779pub struct Savepoint {
8780 pub(crate) syntax: SyntaxNode,
8781}
8782impl Savepoint {
8783 #[inline]
8784 pub fn savepoint_token(&self) -> Option<SyntaxToken> {
8785 support::token(&self.syntax, SyntaxKind::SAVEPOINT_KW)
8786 }
8787}
8788
8789#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8790pub struct SecurityFuncOption {
8791 pub(crate) syntax: SyntaxNode,
8792}
8793impl SecurityFuncOption {
8794 #[inline]
8795 pub fn definer_token(&self) -> Option<SyntaxToken> {
8796 support::token(&self.syntax, SyntaxKind::DEFINER_KW)
8797 }
8798 #[inline]
8799 pub fn invoker_token(&self) -> Option<SyntaxToken> {
8800 support::token(&self.syntax, SyntaxKind::INVOKER_KW)
8801 }
8802 #[inline]
8803 pub fn security_token(&self) -> Option<SyntaxToken> {
8804 support::token(&self.syntax, SyntaxKind::SECURITY_KW)
8805 }
8806}
8807
8808#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8809pub struct SecurityLabel {
8810 pub(crate) syntax: SyntaxNode,
8811}
8812impl SecurityLabel {
8813 #[inline]
8814 pub fn label_token(&self) -> Option<SyntaxToken> {
8815 support::token(&self.syntax, SyntaxKind::LABEL_KW)
8816 }
8817 #[inline]
8818 pub fn security_token(&self) -> Option<SyntaxToken> {
8819 support::token(&self.syntax, SyntaxKind::SECURITY_KW)
8820 }
8821}
8822
8823#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8824pub struct Select {
8825 pub(crate) syntax: SyntaxNode,
8826}
8827impl Select {
8828 #[inline]
8829 pub fn fetch_clause(&self) -> Option<FetchClause> {
8830 support::child(&self.syntax)
8831 }
8832 #[inline]
8833 pub fn filter_clause(&self) -> Option<FilterClause> {
8834 support::child(&self.syntax)
8835 }
8836 #[inline]
8837 pub fn from_clause(&self) -> Option<FromClause> {
8838 support::child(&self.syntax)
8839 }
8840 #[inline]
8841 pub fn group_by_clause(&self) -> Option<GroupByClause> {
8842 support::child(&self.syntax)
8843 }
8844 #[inline]
8845 pub fn having_clause(&self) -> Option<HavingClause> {
8846 support::child(&self.syntax)
8847 }
8848 #[inline]
8849 pub fn limit_clause(&self) -> Option<LimitClause> {
8850 support::child(&self.syntax)
8851 }
8852 #[inline]
8853 pub fn locking_clauses(&self) -> AstChildren<LockingClause> {
8854 support::children(&self.syntax)
8855 }
8856 #[inline]
8857 pub fn offset_clause(&self) -> Option<OffsetClause> {
8858 support::child(&self.syntax)
8859 }
8860 #[inline]
8861 pub fn order_by_clause(&self) -> Option<OrderByClause> {
8862 support::child(&self.syntax)
8863 }
8864 #[inline]
8865 pub fn select_clause(&self) -> Option<SelectClause> {
8866 support::child(&self.syntax)
8867 }
8868 #[inline]
8869 pub fn where_clause(&self) -> Option<WhereClause> {
8870 support::child(&self.syntax)
8871 }
8872 #[inline]
8873 pub fn window_clause(&self) -> Option<WindowClause> {
8874 support::child(&self.syntax)
8875 }
8876 #[inline]
8877 pub fn with_clause(&self) -> Option<WithClause> {
8878 support::child(&self.syntax)
8879 }
8880}
8881
8882#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8883pub struct SelectClause {
8884 pub(crate) syntax: SyntaxNode,
8885}
8886impl SelectClause {
8887 #[inline]
8888 pub fn distinct_clause(&self) -> Option<DistinctClause> {
8889 support::child(&self.syntax)
8890 }
8891 #[inline]
8892 pub fn target_list(&self) -> Option<TargetList> {
8893 support::child(&self.syntax)
8894 }
8895 #[inline]
8896 pub fn all_token(&self) -> Option<SyntaxToken> {
8897 support::token(&self.syntax, SyntaxKind::ALL_KW)
8898 }
8899 #[inline]
8900 pub fn select_token(&self) -> Option<SyntaxToken> {
8901 support::token(&self.syntax, SyntaxKind::SELECT_KW)
8902 }
8903}
8904
8905#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8906pub struct SelectInto {
8907 pub(crate) syntax: SyntaxNode,
8908}
8909impl SelectInto {
8910 #[inline]
8911 pub fn filter_clause(&self) -> Option<FilterClause> {
8912 support::child(&self.syntax)
8913 }
8914 #[inline]
8915 pub fn from_clause(&self) -> Option<FromClause> {
8916 support::child(&self.syntax)
8917 }
8918 #[inline]
8919 pub fn group_by_clause(&self) -> Option<GroupByClause> {
8920 support::child(&self.syntax)
8921 }
8922 #[inline]
8923 pub fn having_clause(&self) -> Option<HavingClause> {
8924 support::child(&self.syntax)
8925 }
8926 #[inline]
8927 pub fn into_clause(&self) -> Option<IntoClause> {
8928 support::child(&self.syntax)
8929 }
8930 #[inline]
8931 pub fn limit_clause(&self) -> Option<LimitClause> {
8932 support::child(&self.syntax)
8933 }
8934 #[inline]
8935 pub fn locking_clauses(&self) -> AstChildren<LockingClause> {
8936 support::children(&self.syntax)
8937 }
8938 #[inline]
8939 pub fn offset_clause(&self) -> Option<OffsetClause> {
8940 support::child(&self.syntax)
8941 }
8942 #[inline]
8943 pub fn order_by_clause(&self) -> Option<OrderByClause> {
8944 support::child(&self.syntax)
8945 }
8946 #[inline]
8947 pub fn select_clause(&self) -> Option<SelectClause> {
8948 support::child(&self.syntax)
8949 }
8950 #[inline]
8951 pub fn where_clause(&self) -> Option<WhereClause> {
8952 support::child(&self.syntax)
8953 }
8954 #[inline]
8955 pub fn window_clause(&self) -> Option<WindowClause> {
8956 support::child(&self.syntax)
8957 }
8958}
8959
8960#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8961pub struct SequenceOptionList {
8962 pub(crate) syntax: SyntaxNode,
8963}
8964impl SequenceOptionList {
8965 #[inline]
8966 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
8967 support::token(&self.syntax, SyntaxKind::L_PAREN)
8968 }
8969 #[inline]
8970 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
8971 support::token(&self.syntax, SyntaxKind::R_PAREN)
8972 }
8973}
8974
8975#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8976pub struct Serializable {
8977 pub(crate) syntax: SyntaxNode,
8978}
8979impl Serializable {
8980 #[inline]
8981 pub fn isolation_token(&self) -> Option<SyntaxToken> {
8982 support::token(&self.syntax, SyntaxKind::ISOLATION_KW)
8983 }
8984 #[inline]
8985 pub fn level_token(&self) -> Option<SyntaxToken> {
8986 support::token(&self.syntax, SyntaxKind::LEVEL_KW)
8987 }
8988 #[inline]
8989 pub fn serializable_token(&self) -> Option<SyntaxToken> {
8990 support::token(&self.syntax, SyntaxKind::SERIALIZABLE_KW)
8991 }
8992}
8993
8994#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8995pub struct Set {
8996 pub(crate) syntax: SyntaxNode,
8997}
8998impl Set {
8999 #[inline]
9000 pub fn expr(&self) -> Option<Expr> {
9001 support::child(&self.syntax)
9002 }
9003 #[inline]
9004 pub fn path(&self) -> Option<Path> {
9005 support::child(&self.syntax)
9006 }
9007 #[inline]
9008 pub fn eq_token(&self) -> Option<SyntaxToken> {
9009 support::token(&self.syntax, SyntaxKind::EQ)
9010 }
9011 #[inline]
9012 pub fn default_token(&self) -> Option<SyntaxToken> {
9013 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
9014 }
9015 #[inline]
9016 pub fn local_token(&self) -> Option<SyntaxToken> {
9017 support::token(&self.syntax, SyntaxKind::LOCAL_KW)
9018 }
9019 #[inline]
9020 pub fn session_token(&self) -> Option<SyntaxToken> {
9021 support::token(&self.syntax, SyntaxKind::SESSION_KW)
9022 }
9023 #[inline]
9024 pub fn set_token(&self) -> Option<SyntaxToken> {
9025 support::token(&self.syntax, SyntaxKind::SET_KW)
9026 }
9027 #[inline]
9028 pub fn time_token(&self) -> Option<SyntaxToken> {
9029 support::token(&self.syntax, SyntaxKind::TIME_KW)
9030 }
9031 #[inline]
9032 pub fn to_token(&self) -> Option<SyntaxToken> {
9033 support::token(&self.syntax, SyntaxKind::TO_KW)
9034 }
9035 #[inline]
9036 pub fn zone_token(&self) -> Option<SyntaxToken> {
9037 support::token(&self.syntax, SyntaxKind::ZONE_KW)
9038 }
9039}
9040
9041#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9042pub struct SetAccessMethod {
9043 pub(crate) syntax: SyntaxNode,
9044}
9045impl SetAccessMethod {
9046 #[inline]
9047 pub fn name_ref(&self) -> Option<NameRef> {
9048 support::child(&self.syntax)
9049 }
9050 #[inline]
9051 pub fn access_token(&self) -> Option<SyntaxToken> {
9052 support::token(&self.syntax, SyntaxKind::ACCESS_KW)
9053 }
9054 #[inline]
9055 pub fn method_token(&self) -> Option<SyntaxToken> {
9056 support::token(&self.syntax, SyntaxKind::METHOD_KW)
9057 }
9058 #[inline]
9059 pub fn set_token(&self) -> Option<SyntaxToken> {
9060 support::token(&self.syntax, SyntaxKind::SET_KW)
9061 }
9062}
9063
9064#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9065pub struct SetCompression {
9066 pub(crate) syntax: SyntaxNode,
9067}
9068impl SetCompression {
9069 #[inline]
9070 pub fn compression_token(&self) -> Option<SyntaxToken> {
9071 support::token(&self.syntax, SyntaxKind::COMPRESSION_KW)
9072 }
9073 #[inline]
9074 pub fn set_token(&self) -> Option<SyntaxToken> {
9075 support::token(&self.syntax, SyntaxKind::SET_KW)
9076 }
9077}
9078
9079#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9080pub struct SetConstraints {
9081 pub(crate) syntax: SyntaxNode,
9082}
9083impl SetConstraints {
9084 #[inline]
9085 pub fn constraints_token(&self) -> Option<SyntaxToken> {
9086 support::token(&self.syntax, SyntaxKind::CONSTRAINTS_KW)
9087 }
9088 #[inline]
9089 pub fn set_token(&self) -> Option<SyntaxToken> {
9090 support::token(&self.syntax, SyntaxKind::SET_KW)
9091 }
9092}
9093
9094#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9095pub struct SetDefault {
9096 pub(crate) syntax: SyntaxNode,
9097}
9098impl SetDefault {
9099 #[inline]
9100 pub fn expr(&self) -> Option<Expr> {
9101 support::child(&self.syntax)
9102 }
9103 #[inline]
9104 pub fn default_token(&self) -> Option<SyntaxToken> {
9105 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
9106 }
9107 #[inline]
9108 pub fn set_token(&self) -> Option<SyntaxToken> {
9109 support::token(&self.syntax, SyntaxKind::SET_KW)
9110 }
9111}
9112
9113#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9114pub struct SetDefaultColumns {
9115 pub(crate) syntax: SyntaxNode,
9116}
9117impl SetDefaultColumns {
9118 #[inline]
9119 pub fn column_list(&self) -> Option<ColumnList> {
9120 support::child(&self.syntax)
9121 }
9122 #[inline]
9123 pub fn default_token(&self) -> Option<SyntaxToken> {
9124 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
9125 }
9126 #[inline]
9127 pub fn set_token(&self) -> Option<SyntaxToken> {
9128 support::token(&self.syntax, SyntaxKind::SET_KW)
9129 }
9130}
9131
9132#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9133pub struct SetExpression {
9134 pub(crate) syntax: SyntaxNode,
9135}
9136impl SetExpression {
9137 #[inline]
9138 pub fn expr(&self) -> Option<Expr> {
9139 support::child(&self.syntax)
9140 }
9141 #[inline]
9142 pub fn expression_token(&self) -> Option<SyntaxToken> {
9143 support::token(&self.syntax, SyntaxKind::EXPRESSION_KW)
9144 }
9145 #[inline]
9146 pub fn set_token(&self) -> Option<SyntaxToken> {
9147 support::token(&self.syntax, SyntaxKind::SET_KW)
9148 }
9149}
9150
9151#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9152pub struct SetFuncOption {
9153 pub(crate) syntax: SyntaxNode,
9154}
9155impl SetFuncOption {
9156 #[inline]
9157 pub fn set_token(&self) -> Option<SyntaxToken> {
9158 support::token(&self.syntax, SyntaxKind::SET_KW)
9159 }
9160}
9161
9162#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9163pub struct SetGenerated {
9164 pub(crate) syntax: SyntaxNode,
9165}
9166impl SetGenerated {
9167 #[inline]
9168 pub fn set_token(&self) -> Option<SyntaxToken> {
9169 support::token(&self.syntax, SyntaxKind::SET_KW)
9170 }
9171}
9172
9173#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9174pub struct SetGeneratedOptions {
9175 pub(crate) syntax: SyntaxNode,
9176}
9177impl SetGeneratedOptions {
9178 #[inline]
9179 pub fn set_token(&self) -> Option<SyntaxToken> {
9180 support::token(&self.syntax, SyntaxKind::SET_KW)
9181 }
9182}
9183
9184#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9185pub struct SetLogged {
9186 pub(crate) syntax: SyntaxNode,
9187}
9188impl SetLogged {
9189 #[inline]
9190 pub fn logged_token(&self) -> Option<SyntaxToken> {
9191 support::token(&self.syntax, SyntaxKind::LOGGED_KW)
9192 }
9193 #[inline]
9194 pub fn set_token(&self) -> Option<SyntaxToken> {
9195 support::token(&self.syntax, SyntaxKind::SET_KW)
9196 }
9197}
9198
9199#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9200pub struct SetNotNull {
9201 pub(crate) syntax: SyntaxNode,
9202}
9203impl SetNotNull {
9204 #[inline]
9205 pub fn not_token(&self) -> Option<SyntaxToken> {
9206 support::token(&self.syntax, SyntaxKind::NOT_KW)
9207 }
9208 #[inline]
9209 pub fn null_token(&self) -> Option<SyntaxToken> {
9210 support::token(&self.syntax, SyntaxKind::NULL_KW)
9211 }
9212 #[inline]
9213 pub fn set_token(&self) -> Option<SyntaxToken> {
9214 support::token(&self.syntax, SyntaxKind::SET_KW)
9215 }
9216}
9217
9218#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9219pub struct SetNullColumns {
9220 pub(crate) syntax: SyntaxNode,
9221}
9222impl SetNullColumns {
9223 #[inline]
9224 pub fn column_list(&self) -> Option<ColumnList> {
9225 support::child(&self.syntax)
9226 }
9227 #[inline]
9228 pub fn null_token(&self) -> Option<SyntaxToken> {
9229 support::token(&self.syntax, SyntaxKind::NULL_KW)
9230 }
9231 #[inline]
9232 pub fn set_token(&self) -> Option<SyntaxToken> {
9233 support::token(&self.syntax, SyntaxKind::SET_KW)
9234 }
9235}
9236
9237#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9238pub struct SetOptions {
9239 pub(crate) syntax: SyntaxNode,
9240}
9241impl SetOptions {
9242 #[inline]
9243 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
9244 support::token(&self.syntax, SyntaxKind::L_PAREN)
9245 }
9246 #[inline]
9247 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
9248 support::token(&self.syntax, SyntaxKind::R_PAREN)
9249 }
9250 #[inline]
9251 pub fn set_token(&self) -> Option<SyntaxToken> {
9252 support::token(&self.syntax, SyntaxKind::SET_KW)
9253 }
9254}
9255
9256#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9257pub struct SetOptionsList {
9258 pub(crate) syntax: SyntaxNode,
9259}
9260impl SetOptionsList {
9261 #[inline]
9262 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
9263 support::token(&self.syntax, SyntaxKind::L_PAREN)
9264 }
9265 #[inline]
9266 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
9267 support::token(&self.syntax, SyntaxKind::R_PAREN)
9268 }
9269 #[inline]
9270 pub fn set_token(&self) -> Option<SyntaxToken> {
9271 support::token(&self.syntax, SyntaxKind::SET_KW)
9272 }
9273}
9274
9275#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9276pub struct SetRole {
9277 pub(crate) syntax: SyntaxNode,
9278}
9279impl SetRole {
9280 #[inline]
9281 pub fn role_token(&self) -> Option<SyntaxToken> {
9282 support::token(&self.syntax, SyntaxKind::ROLE_KW)
9283 }
9284 #[inline]
9285 pub fn set_token(&self) -> Option<SyntaxToken> {
9286 support::token(&self.syntax, SyntaxKind::SET_KW)
9287 }
9288}
9289
9290#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9291pub struct SetSchema {
9292 pub(crate) syntax: SyntaxNode,
9293}
9294impl SetSchema {
9295 #[inline]
9296 pub fn name_ref(&self) -> Option<NameRef> {
9297 support::child(&self.syntax)
9298 }
9299 #[inline]
9300 pub fn schema_token(&self) -> Option<SyntaxToken> {
9301 support::token(&self.syntax, SyntaxKind::SCHEMA_KW)
9302 }
9303 #[inline]
9304 pub fn set_token(&self) -> Option<SyntaxToken> {
9305 support::token(&self.syntax, SyntaxKind::SET_KW)
9306 }
9307}
9308
9309#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9310pub struct SetSequenceOption {
9311 pub(crate) syntax: SyntaxNode,
9312}
9313impl SetSequenceOption {
9314 #[inline]
9315 pub fn set_token(&self) -> Option<SyntaxToken> {
9316 support::token(&self.syntax, SyntaxKind::SET_KW)
9317 }
9318}
9319
9320#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9321pub struct SetSessionAuth {
9322 pub(crate) syntax: SyntaxNode,
9323}
9324impl SetSessionAuth {
9325 #[inline]
9326 pub fn authorization_token(&self) -> Option<SyntaxToken> {
9327 support::token(&self.syntax, SyntaxKind::AUTHORIZATION_KW)
9328 }
9329 #[inline]
9330 pub fn session_token(&self) -> Option<SyntaxToken> {
9331 support::token(&self.syntax, SyntaxKind::SESSION_KW)
9332 }
9333 #[inline]
9334 pub fn set_token(&self) -> Option<SyntaxToken> {
9335 support::token(&self.syntax, SyntaxKind::SET_KW)
9336 }
9337}
9338
9339#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9340pub struct SetStatistics {
9341 pub(crate) syntax: SyntaxNode,
9342}
9343impl SetStatistics {
9344 #[inline]
9345 pub fn set_token(&self) -> Option<SyntaxToken> {
9346 support::token(&self.syntax, SyntaxKind::SET_KW)
9347 }
9348 #[inline]
9349 pub fn statistics_token(&self) -> Option<SyntaxToken> {
9350 support::token(&self.syntax, SyntaxKind::STATISTICS_KW)
9351 }
9352}
9353
9354#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9355pub struct SetStorage {
9356 pub(crate) syntax: SyntaxNode,
9357}
9358impl SetStorage {
9359 #[inline]
9360 pub fn set_token(&self) -> Option<SyntaxToken> {
9361 support::token(&self.syntax, SyntaxKind::SET_KW)
9362 }
9363 #[inline]
9364 pub fn storage_token(&self) -> Option<SyntaxToken> {
9365 support::token(&self.syntax, SyntaxKind::STORAGE_KW)
9366 }
9367}
9368
9369#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9370pub struct SetStorageParams {
9371 pub(crate) syntax: SyntaxNode,
9372}
9373impl SetStorageParams {
9374 #[inline]
9375 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
9376 support::token(&self.syntax, SyntaxKind::L_PAREN)
9377 }
9378 #[inline]
9379 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
9380 support::token(&self.syntax, SyntaxKind::R_PAREN)
9381 }
9382 #[inline]
9383 pub fn set_token(&self) -> Option<SyntaxToken> {
9384 support::token(&self.syntax, SyntaxKind::SET_KW)
9385 }
9386}
9387
9388#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9389pub struct SetTablespace {
9390 pub(crate) syntax: SyntaxNode,
9391}
9392impl SetTablespace {
9393 #[inline]
9394 pub fn name_ref(&self) -> Option<NameRef> {
9395 support::child(&self.syntax)
9396 }
9397 #[inline]
9398 pub fn set_token(&self) -> Option<SyntaxToken> {
9399 support::token(&self.syntax, SyntaxKind::SET_KW)
9400 }
9401 #[inline]
9402 pub fn tablespace_token(&self) -> Option<SyntaxToken> {
9403 support::token(&self.syntax, SyntaxKind::TABLESPACE_KW)
9404 }
9405}
9406
9407#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9408pub struct SetTransaction {
9409 pub(crate) syntax: SyntaxNode,
9410}
9411impl SetTransaction {
9412 #[inline]
9413 pub fn set_token(&self) -> Option<SyntaxToken> {
9414 support::token(&self.syntax, SyntaxKind::SET_KW)
9415 }
9416 #[inline]
9417 pub fn transaction_token(&self) -> Option<SyntaxToken> {
9418 support::token(&self.syntax, SyntaxKind::TRANSACTION_KW)
9419 }
9420}
9421
9422#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9423pub struct SetType {
9424 pub(crate) syntax: SyntaxNode,
9425}
9426impl SetType {
9427 #[inline]
9428 pub fn collate(&self) -> Option<Collate> {
9429 support::child(&self.syntax)
9430 }
9431 #[inline]
9432 pub fn ty(&self) -> Option<Type> {
9433 support::child(&self.syntax)
9434 }
9435 #[inline]
9436 pub fn set_token(&self) -> Option<SyntaxToken> {
9437 support::token(&self.syntax, SyntaxKind::SET_KW)
9438 }
9439 #[inline]
9440 pub fn type_token(&self) -> Option<SyntaxToken> {
9441 support::token(&self.syntax, SyntaxKind::TYPE_KW)
9442 }
9443}
9444
9445#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9446pub struct SetUnlogged {
9447 pub(crate) syntax: SyntaxNode,
9448}
9449impl SetUnlogged {
9450 #[inline]
9451 pub fn set_token(&self) -> Option<SyntaxToken> {
9452 support::token(&self.syntax, SyntaxKind::SET_KW)
9453 }
9454 #[inline]
9455 pub fn unlogged_token(&self) -> Option<SyntaxToken> {
9456 support::token(&self.syntax, SyntaxKind::UNLOGGED_KW)
9457 }
9458}
9459
9460#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9461pub struct SetWithoutCluster {
9462 pub(crate) syntax: SyntaxNode,
9463}
9464impl SetWithoutCluster {
9465 #[inline]
9466 pub fn cluster_token(&self) -> Option<SyntaxToken> {
9467 support::token(&self.syntax, SyntaxKind::CLUSTER_KW)
9468 }
9469 #[inline]
9470 pub fn set_token(&self) -> Option<SyntaxToken> {
9471 support::token(&self.syntax, SyntaxKind::SET_KW)
9472 }
9473 #[inline]
9474 pub fn without_token(&self) -> Option<SyntaxToken> {
9475 support::token(&self.syntax, SyntaxKind::WITHOUT_KW)
9476 }
9477}
9478
9479#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9480pub struct SetWithoutOids {
9481 pub(crate) syntax: SyntaxNode,
9482}
9483impl SetWithoutOids {
9484 #[inline]
9485 pub fn oids_token(&self) -> Option<SyntaxToken> {
9486 support::token(&self.syntax, SyntaxKind::OIDS_KW)
9487 }
9488 #[inline]
9489 pub fn set_token(&self) -> Option<SyntaxToken> {
9490 support::token(&self.syntax, SyntaxKind::SET_KW)
9491 }
9492 #[inline]
9493 pub fn without_token(&self) -> Option<SyntaxToken> {
9494 support::token(&self.syntax, SyntaxKind::WITHOUT_KW)
9495 }
9496}
9497
9498#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9499pub struct Show {
9500 pub(crate) syntax: SyntaxNode,
9501}
9502impl Show {
9503 #[inline]
9504 pub fn show_token(&self) -> Option<SyntaxToken> {
9505 support::token(&self.syntax, SyntaxKind::SHOW_KW)
9506 }
9507}
9508
9509#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9510pub struct SimilarTo {
9511 pub(crate) syntax: SyntaxNode,
9512}
9513impl SimilarTo {
9514 #[inline]
9515 pub fn similar_token(&self) -> Option<SyntaxToken> {
9516 support::token(&self.syntax, SyntaxKind::SIMILAR_KW)
9517 }
9518 #[inline]
9519 pub fn to_token(&self) -> Option<SyntaxToken> {
9520 support::token(&self.syntax, SyntaxKind::TO_KW)
9521 }
9522}
9523
9524#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9525pub struct SortAsc {
9526 pub(crate) syntax: SyntaxNode,
9527}
9528impl SortAsc {
9529 #[inline]
9530 pub fn asc_token(&self) -> Option<SyntaxToken> {
9531 support::token(&self.syntax, SyntaxKind::ASC_KW)
9532 }
9533}
9534
9535#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9536pub struct SortBy {
9537 pub(crate) syntax: SyntaxNode,
9538}
9539impl SortBy {
9540 #[inline]
9541 pub fn expr(&self) -> Option<Expr> {
9542 support::child(&self.syntax)
9543 }
9544 #[inline]
9545 pub fn nulls_first(&self) -> Option<NullsFirst> {
9546 support::child(&self.syntax)
9547 }
9548 #[inline]
9549 pub fn nulls_last(&self) -> Option<NullsLast> {
9550 support::child(&self.syntax)
9551 }
9552 #[inline]
9553 pub fn sort_asc(&self) -> Option<SortAsc> {
9554 support::child(&self.syntax)
9555 }
9556 #[inline]
9557 pub fn sort_desc(&self) -> Option<SortDesc> {
9558 support::child(&self.syntax)
9559 }
9560 #[inline]
9561 pub fn sort_using(&self) -> Option<SortUsing> {
9562 support::child(&self.syntax)
9563 }
9564}
9565
9566#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9567pub struct SortDesc {
9568 pub(crate) syntax: SyntaxNode,
9569}
9570impl SortDesc {
9571 #[inline]
9572 pub fn desc_token(&self) -> Option<SyntaxToken> {
9573 support::token(&self.syntax, SyntaxKind::DESC_KW)
9574 }
9575}
9576
9577#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9578pub struct SortUsing {
9579 pub(crate) syntax: SyntaxNode,
9580}
9581impl SortUsing {
9582 #[inline]
9583 pub fn op(&self) -> Option<Op> {
9584 support::child(&self.syntax)
9585 }
9586 #[inline]
9587 pub fn using_token(&self) -> Option<SyntaxToken> {
9588 support::token(&self.syntax, SyntaxKind::USING_KW)
9589 }
9590}
9591
9592#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9593pub struct SourceFile {
9594 pub(crate) syntax: SyntaxNode,
9595}
9596impl SourceFile {
9597 #[inline]
9598 pub fn stmts(&self) -> AstChildren<Stmt> {
9599 support::children(&self.syntax)
9600 }
9601}
9602
9603#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9604pub struct Storage {
9605 pub(crate) syntax: SyntaxNode,
9606}
9607impl Storage {
9608 #[inline]
9609 pub fn default_token(&self) -> Option<SyntaxToken> {
9610 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
9611 }
9612 #[inline]
9613 pub fn external_token(&self) -> Option<SyntaxToken> {
9614 support::token(&self.syntax, SyntaxKind::EXTERNAL_KW)
9615 }
9616 #[inline]
9617 pub fn ident_token(&self) -> Option<SyntaxToken> {
9618 support::token(&self.syntax, SyntaxKind::IDENT)
9619 }
9620 #[inline]
9621 pub fn storage_token(&self) -> Option<SyntaxToken> {
9622 support::token(&self.syntax, SyntaxKind::STORAGE_KW)
9623 }
9624}
9625
9626#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9627pub struct StrictFuncOption {
9628 pub(crate) syntax: SyntaxNode,
9629}
9630impl StrictFuncOption {
9631 #[inline]
9632 pub fn called_token(&self) -> Option<SyntaxToken> {
9633 support::token(&self.syntax, SyntaxKind::CALLED_KW)
9634 }
9635 #[inline]
9636 pub fn input_token(&self) -> Option<SyntaxToken> {
9637 support::token(&self.syntax, SyntaxKind::INPUT_KW)
9638 }
9639 #[inline]
9640 pub fn null_token(&self) -> Option<SyntaxToken> {
9641 support::token(&self.syntax, SyntaxKind::NULL_KW)
9642 }
9643 #[inline]
9644 pub fn on_token(&self) -> Option<SyntaxToken> {
9645 support::token(&self.syntax, SyntaxKind::ON_KW)
9646 }
9647 #[inline]
9648 pub fn returns_token(&self) -> Option<SyntaxToken> {
9649 support::token(&self.syntax, SyntaxKind::RETURNS_KW)
9650 }
9651 #[inline]
9652 pub fn strict_token(&self) -> Option<SyntaxToken> {
9653 support::token(&self.syntax, SyntaxKind::STRICT_KW)
9654 }
9655}
9656
9657#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9658pub struct SupportFuncOption {
9659 pub(crate) syntax: SyntaxNode,
9660}
9661impl SupportFuncOption {
9662 #[inline]
9663 pub fn support_token(&self) -> Option<SyntaxToken> {
9664 support::token(&self.syntax, SyntaxKind::SUPPORT_KW)
9665 }
9666}
9667
9668#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9669pub struct Table {
9670 pub(crate) syntax: SyntaxNode,
9671}
9672impl Table {
9673 #[inline]
9674 pub fn relation_name(&self) -> Option<RelationName> {
9675 support::child(&self.syntax)
9676 }
9677 #[inline]
9678 pub fn table_token(&self) -> Option<SyntaxToken> {
9679 support::token(&self.syntax, SyntaxKind::TABLE_KW)
9680 }
9681}
9682
9683#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9684pub struct TableArgList {
9685 pub(crate) syntax: SyntaxNode,
9686}
9687impl TableArgList {
9688 #[inline]
9689 pub fn args(&self) -> AstChildren<TableArg> {
9690 support::children(&self.syntax)
9691 }
9692 #[inline]
9693 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
9694 support::token(&self.syntax, SyntaxKind::L_PAREN)
9695 }
9696 #[inline]
9697 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
9698 support::token(&self.syntax, SyntaxKind::R_PAREN)
9699 }
9700}
9701
9702#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9703pub struct TableList {
9704 pub(crate) syntax: SyntaxNode,
9705}
9706impl TableList {
9707 #[inline]
9708 pub fn relation_names(&self) -> AstChildren<RelationName> {
9709 support::children(&self.syntax)
9710 }
9711}
9712
9713#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9714pub struct Tablespace {
9715 pub(crate) syntax: SyntaxNode,
9716}
9717impl Tablespace {
9718 #[inline]
9719 pub fn name_ref(&self) -> Option<NameRef> {
9720 support::child(&self.syntax)
9721 }
9722 #[inline]
9723 pub fn tablespace_token(&self) -> Option<SyntaxToken> {
9724 support::token(&self.syntax, SyntaxKind::TABLESPACE_KW)
9725 }
9726}
9727
9728#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9729pub struct Target {
9730 pub(crate) syntax: SyntaxNode,
9731}
9732impl Target {
9733 #[inline]
9734 pub fn as_name(&self) -> Option<AsName> {
9735 support::child(&self.syntax)
9736 }
9737 #[inline]
9738 pub fn expr(&self) -> Option<Expr> {
9739 support::child(&self.syntax)
9740 }
9741 #[inline]
9742 pub fn star_token(&self) -> Option<SyntaxToken> {
9743 support::token(&self.syntax, SyntaxKind::STAR)
9744 }
9745}
9746
9747#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9748pub struct TargetList {
9749 pub(crate) syntax: SyntaxNode,
9750}
9751impl TargetList {
9752 #[inline]
9753 pub fn targets(&self) -> AstChildren<Target> {
9754 support::children(&self.syntax)
9755 }
9756}
9757
9758#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9759pub struct TimeType {
9760 pub(crate) syntax: SyntaxNode,
9761}
9762impl TimeType {
9763 #[inline]
9764 pub fn literal(&self) -> Option<Literal> {
9765 support::child(&self.syntax)
9766 }
9767 #[inline]
9768 pub fn timezone(&self) -> Option<Timezone> {
9769 support::child(&self.syntax)
9770 }
9771 #[inline]
9772 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
9773 support::token(&self.syntax, SyntaxKind::L_PAREN)
9774 }
9775 #[inline]
9776 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
9777 support::token(&self.syntax, SyntaxKind::R_PAREN)
9778 }
9779 #[inline]
9780 pub fn time_token(&self) -> Option<SyntaxToken> {
9781 support::token(&self.syntax, SyntaxKind::TIME_KW)
9782 }
9783 #[inline]
9784 pub fn timestamp_token(&self) -> Option<SyntaxToken> {
9785 support::token(&self.syntax, SyntaxKind::TIMESTAMP_KW)
9786 }
9787}
9788
9789#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9790pub struct TransactionModeList {
9791 pub(crate) syntax: SyntaxNode,
9792}
9793impl TransactionModeList {
9794 #[inline]
9795 pub fn transaction_modes(&self) -> AstChildren<TransactionMode> {
9796 support::children(&self.syntax)
9797 }
9798}
9799
9800#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9801pub struct TransformFuncOption {
9802 pub(crate) syntax: SyntaxNode,
9803}
9804impl TransformFuncOption {
9805 #[inline]
9806 pub fn transform_token(&self) -> Option<SyntaxToken> {
9807 support::token(&self.syntax, SyntaxKind::TRANSFORM_KW)
9808 }
9809}
9810
9811#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9812pub struct Truncate {
9813 pub(crate) syntax: SyntaxNode,
9814}
9815impl Truncate {
9816 #[inline]
9817 pub fn table_list(&self) -> Option<TableList> {
9818 support::child(&self.syntax)
9819 }
9820 #[inline]
9821 pub fn cascade_token(&self) -> Option<SyntaxToken> {
9822 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
9823 }
9824 #[inline]
9825 pub fn continue_token(&self) -> Option<SyntaxToken> {
9826 support::token(&self.syntax, SyntaxKind::CONTINUE_KW)
9827 }
9828 #[inline]
9829 pub fn identity_token(&self) -> Option<SyntaxToken> {
9830 support::token(&self.syntax, SyntaxKind::IDENTITY_KW)
9831 }
9832 #[inline]
9833 pub fn restart_token(&self) -> Option<SyntaxToken> {
9834 support::token(&self.syntax, SyntaxKind::RESTART_KW)
9835 }
9836 #[inline]
9837 pub fn restrict_token(&self) -> Option<SyntaxToken> {
9838 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
9839 }
9840 #[inline]
9841 pub fn table_token(&self) -> Option<SyntaxToken> {
9842 support::token(&self.syntax, SyntaxKind::TABLE_KW)
9843 }
9844 #[inline]
9845 pub fn truncate_token(&self) -> Option<SyntaxToken> {
9846 support::token(&self.syntax, SyntaxKind::TRUNCATE_KW)
9847 }
9848}
9849
9850#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9851pub struct TupleExpr {
9852 pub(crate) syntax: SyntaxNode,
9853}
9854impl TupleExpr {
9855 #[inline]
9856 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
9857 support::token(&self.syntax, SyntaxKind::L_PAREN)
9858 }
9859 #[inline]
9860 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
9861 support::token(&self.syntax, SyntaxKind::R_PAREN)
9862 }
9863}
9864
9865#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9866pub struct UnicodeNormalForm {
9867 pub(crate) syntax: SyntaxNode,
9868}
9869impl UnicodeNormalForm {
9870 #[inline]
9871 pub fn nfc_token(&self) -> Option<SyntaxToken> {
9872 support::token(&self.syntax, SyntaxKind::NFC_KW)
9873 }
9874 #[inline]
9875 pub fn nfd_token(&self) -> Option<SyntaxToken> {
9876 support::token(&self.syntax, SyntaxKind::NFD_KW)
9877 }
9878 #[inline]
9879 pub fn nfkc_token(&self) -> Option<SyntaxToken> {
9880 support::token(&self.syntax, SyntaxKind::NFKC_KW)
9881 }
9882 #[inline]
9883 pub fn nfkd_token(&self) -> Option<SyntaxToken> {
9884 support::token(&self.syntax, SyntaxKind::NFKD_KW)
9885 }
9886}
9887
9888#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9889pub struct UniqueConstraint {
9890 pub(crate) syntax: SyntaxNode,
9891}
9892impl UniqueConstraint {
9893 #[inline]
9894 pub fn column_list(&self) -> Option<ColumnList> {
9895 support::child(&self.syntax)
9896 }
9897 #[inline]
9898 pub fn name_ref(&self) -> Option<NameRef> {
9899 support::child(&self.syntax)
9900 }
9901 #[inline]
9902 pub fn nulls_distinct(&self) -> Option<NullsDistinct> {
9903 support::child(&self.syntax)
9904 }
9905 #[inline]
9906 pub fn nulls_not_distinct(&self) -> Option<NullsNotDistinct> {
9907 support::child(&self.syntax)
9908 }
9909 #[inline]
9910 pub fn using_index(&self) -> Option<UsingIndex> {
9911 support::child(&self.syntax)
9912 }
9913 #[inline]
9914 pub fn constraint_token(&self) -> Option<SyntaxToken> {
9915 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
9916 }
9917 #[inline]
9918 pub fn unique_token(&self) -> Option<SyntaxToken> {
9919 support::token(&self.syntax, SyntaxKind::UNIQUE_KW)
9920 }
9921}
9922
9923#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9924pub struct Unlisten {
9925 pub(crate) syntax: SyntaxNode,
9926}
9927impl Unlisten {
9928 #[inline]
9929 pub fn name_ref(&self) -> Option<NameRef> {
9930 support::child(&self.syntax)
9931 }
9932 #[inline]
9933 pub fn star_token(&self) -> Option<SyntaxToken> {
9934 support::token(&self.syntax, SyntaxKind::STAR)
9935 }
9936 #[inline]
9937 pub fn unlisten_token(&self) -> Option<SyntaxToken> {
9938 support::token(&self.syntax, SyntaxKind::UNLISTEN_KW)
9939 }
9940}
9941
9942#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9943pub struct Update {
9944 pub(crate) syntax: SyntaxNode,
9945}
9946impl Update {
9947 #[inline]
9948 pub fn returning_clause(&self) -> Option<ReturningClause> {
9949 support::child(&self.syntax)
9950 }
9951 #[inline]
9952 pub fn update_token(&self) -> Option<SyntaxToken> {
9953 support::token(&self.syntax, SyntaxKind::UPDATE_KW)
9954 }
9955}
9956
9957#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9958pub struct UsingClause {
9959 pub(crate) syntax: SyntaxNode,
9960}
9961impl UsingClause {
9962 #[inline]
9963 pub fn using_token(&self) -> Option<SyntaxToken> {
9964 support::token(&self.syntax, SyntaxKind::USING_KW)
9965 }
9966}
9967
9968#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9969pub struct UsingIndex {
9970 pub(crate) syntax: SyntaxNode,
9971}
9972impl UsingIndex {
9973 #[inline]
9974 pub fn name_ref(&self) -> Option<NameRef> {
9975 support::child(&self.syntax)
9976 }
9977 #[inline]
9978 pub fn index_token(&self) -> Option<SyntaxToken> {
9979 support::token(&self.syntax, SyntaxKind::INDEX_KW)
9980 }
9981 #[inline]
9982 pub fn using_token(&self) -> Option<SyntaxToken> {
9983 support::token(&self.syntax, SyntaxKind::USING_KW)
9984 }
9985}
9986
9987#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9988pub struct UsingMethod {
9989 pub(crate) syntax: SyntaxNode,
9990}
9991impl UsingMethod {
9992 #[inline]
9993 pub fn name_ref(&self) -> Option<NameRef> {
9994 support::child(&self.syntax)
9995 }
9996 #[inline]
9997 pub fn using_token(&self) -> Option<SyntaxToken> {
9998 support::token(&self.syntax, SyntaxKind::USING_KW)
9999 }
10000}
10001
10002#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10003pub struct Vacuum {
10004 pub(crate) syntax: SyntaxNode,
10005}
10006impl Vacuum {
10007 #[inline]
10008 pub fn vacuum_option_list(&self) -> Option<VacuumOptionList> {
10009 support::child(&self.syntax)
10010 }
10011 #[inline]
10012 pub fn vacuum_token(&self) -> Option<SyntaxToken> {
10013 support::token(&self.syntax, SyntaxKind::VACUUM_KW)
10014 }
10015}
10016
10017#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10018pub struct VacuumOption {
10019 pub(crate) syntax: SyntaxNode,
10020}
10021impl VacuumOption {
10022 #[inline]
10023 pub fn full_token(&self) -> Option<SyntaxToken> {
10024 support::token(&self.syntax, SyntaxKind::FULL_KW)
10025 }
10026}
10027
10028#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10029pub struct VacuumOptionList {
10030 pub(crate) syntax: SyntaxNode,
10031}
10032impl VacuumOptionList {
10033 #[inline]
10034 pub fn vacuum_options(&self) -> AstChildren<VacuumOption> {
10035 support::children(&self.syntax)
10036 }
10037 #[inline]
10038 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
10039 support::token(&self.syntax, SyntaxKind::L_PAREN)
10040 }
10041 #[inline]
10042 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
10043 support::token(&self.syntax, SyntaxKind::R_PAREN)
10044 }
10045}
10046
10047#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10048pub struct ValidateConstraint {
10049 pub(crate) syntax: SyntaxNode,
10050}
10051impl ValidateConstraint {
10052 #[inline]
10053 pub fn name_ref(&self) -> Option<NameRef> {
10054 support::child(&self.syntax)
10055 }
10056 #[inline]
10057 pub fn constraint_token(&self) -> Option<SyntaxToken> {
10058 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
10059 }
10060 #[inline]
10061 pub fn validate_token(&self) -> Option<SyntaxToken> {
10062 support::token(&self.syntax, SyntaxKind::VALIDATE_KW)
10063 }
10064}
10065
10066#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10067pub struct Values {
10068 pub(crate) syntax: SyntaxNode,
10069}
10070impl Values {
10071 #[inline]
10072 pub fn row_list(&self) -> Option<RowList> {
10073 support::child(&self.syntax)
10074 }
10075 #[inline]
10076 pub fn values_token(&self) -> Option<SyntaxToken> {
10077 support::token(&self.syntax, SyntaxKind::VALUES_KW)
10078 }
10079}
10080
10081#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10082pub struct Variant {
10083 pub(crate) syntax: SyntaxNode,
10084}
10085impl Variant {
10086 #[inline]
10087 pub fn literal(&self) -> Option<Literal> {
10088 support::child(&self.syntax)
10089 }
10090}
10091
10092#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10093pub struct VariantList {
10094 pub(crate) syntax: SyntaxNode,
10095}
10096impl VariantList {
10097 #[inline]
10098 pub fn variants(&self) -> AstChildren<Variant> {
10099 support::children(&self.syntax)
10100 }
10101 #[inline]
10102 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
10103 support::token(&self.syntax, SyntaxKind::L_PAREN)
10104 }
10105 #[inline]
10106 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
10107 support::token(&self.syntax, SyntaxKind::R_PAREN)
10108 }
10109}
10110
10111#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10112pub struct VolatilityFuncOption {
10113 pub(crate) syntax: SyntaxNode,
10114}
10115impl VolatilityFuncOption {
10116 #[inline]
10117 pub fn immutable_token(&self) -> Option<SyntaxToken> {
10118 support::token(&self.syntax, SyntaxKind::IMMUTABLE_KW)
10119 }
10120 #[inline]
10121 pub fn stable_token(&self) -> Option<SyntaxToken> {
10122 support::token(&self.syntax, SyntaxKind::STABLE_KW)
10123 }
10124 #[inline]
10125 pub fn volatile_token(&self) -> Option<SyntaxToken> {
10126 support::token(&self.syntax, SyntaxKind::VOLATILE_KW)
10127 }
10128}
10129
10130#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10131pub struct WhenClause {
10132 pub(crate) syntax: SyntaxNode,
10133}
10134impl WhenClause {
10135 #[inline]
10136 pub fn expr(&self) -> Option<Expr> {
10137 support::child(&self.syntax)
10138 }
10139 #[inline]
10140 pub fn then_token(&self) -> Option<SyntaxToken> {
10141 support::token(&self.syntax, SyntaxKind::THEN_KW)
10142 }
10143 #[inline]
10144 pub fn when_token(&self) -> Option<SyntaxToken> {
10145 support::token(&self.syntax, SyntaxKind::WHEN_KW)
10146 }
10147}
10148
10149#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10150pub struct WhenClauseList {
10151 pub(crate) syntax: SyntaxNode,
10152}
10153impl WhenClauseList {
10154 #[inline]
10155 pub fn when_clause(&self) -> Option<WhenClause> {
10156 support::child(&self.syntax)
10157 }
10158 #[inline]
10159 pub fn when_clauses(&self) -> AstChildren<WhenClause> {
10160 support::children(&self.syntax)
10161 }
10162}
10163
10164#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10165pub struct WhereClause {
10166 pub(crate) syntax: SyntaxNode,
10167}
10168impl WhereClause {
10169 #[inline]
10170 pub fn expr(&self) -> Option<Expr> {
10171 support::child(&self.syntax)
10172 }
10173 #[inline]
10174 pub fn where_token(&self) -> Option<SyntaxToken> {
10175 support::token(&self.syntax, SyntaxKind::WHERE_KW)
10176 }
10177}
10178
10179#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10180pub struct WindowClause {
10181 pub(crate) syntax: SyntaxNode,
10182}
10183impl WindowClause {
10184 #[inline]
10185 pub fn window_defs(&self) -> AstChildren<WindowDef> {
10186 support::children(&self.syntax)
10187 }
10188 #[inline]
10189 pub fn window_token(&self) -> Option<SyntaxToken> {
10190 support::token(&self.syntax, SyntaxKind::WINDOW_KW)
10191 }
10192}
10193
10194#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10195pub struct WindowDef {
10196 pub(crate) syntax: SyntaxNode,
10197}
10198impl WindowDef {
10199 #[inline]
10200 pub fn name(&self) -> Option<Name> {
10201 support::child(&self.syntax)
10202 }
10203 #[inline]
10204 pub fn window_spec(&self) -> Option<WindowSpec> {
10205 support::child(&self.syntax)
10206 }
10207 #[inline]
10208 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
10209 support::token(&self.syntax, SyntaxKind::L_PAREN)
10210 }
10211 #[inline]
10212 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
10213 support::token(&self.syntax, SyntaxKind::R_PAREN)
10214 }
10215 #[inline]
10216 pub fn as_token(&self) -> Option<SyntaxToken> {
10217 support::token(&self.syntax, SyntaxKind::AS_KW)
10218 }
10219}
10220
10221#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10222pub struct WindowFuncOption {
10223 pub(crate) syntax: SyntaxNode,
10224}
10225impl WindowFuncOption {
10226 #[inline]
10227 pub fn window_token(&self) -> Option<SyntaxToken> {
10228 support::token(&self.syntax, SyntaxKind::WINDOW_KW)
10229 }
10230}
10231
10232#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10233pub struct WindowSpec {
10234 pub(crate) syntax: SyntaxNode,
10235}
10236impl WindowSpec {
10237 #[inline]
10238 pub fn exprs(&self) -> AstChildren<Expr> {
10239 support::children(&self.syntax)
10240 }
10241 #[inline]
10242 pub fn frame_clause(&self) -> Option<FrameClause> {
10243 support::child(&self.syntax)
10244 }
10245 #[inline]
10246 pub fn order_by_clause(&self) -> Option<OrderByClause> {
10247 support::child(&self.syntax)
10248 }
10249 #[inline]
10250 pub fn by_token(&self) -> Option<SyntaxToken> {
10251 support::token(&self.syntax, SyntaxKind::BY_KW)
10252 }
10253 #[inline]
10254 pub fn ident_token(&self) -> Option<SyntaxToken> {
10255 support::token(&self.syntax, SyntaxKind::IDENT)
10256 }
10257 #[inline]
10258 pub fn partition_token(&self) -> Option<SyntaxToken> {
10259 support::token(&self.syntax, SyntaxKind::PARTITION_KW)
10260 }
10261}
10262
10263#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10264pub struct WithClause {
10265 pub(crate) syntax: SyntaxNode,
10266}
10267impl WithClause {
10268 #[inline]
10269 pub fn with_tables(&self) -> AstChildren<WithTable> {
10270 support::children(&self.syntax)
10271 }
10272 #[inline]
10273 pub fn recursive_token(&self) -> Option<SyntaxToken> {
10274 support::token(&self.syntax, SyntaxKind::RECURSIVE_KW)
10275 }
10276 #[inline]
10277 pub fn with_token(&self) -> Option<SyntaxToken> {
10278 support::token(&self.syntax, SyntaxKind::WITH_KW)
10279 }
10280}
10281
10282#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10283pub struct WithData {
10284 pub(crate) syntax: SyntaxNode,
10285}
10286impl WithData {
10287 #[inline]
10288 pub fn data_token(&self) -> Option<SyntaxToken> {
10289 support::token(&self.syntax, SyntaxKind::DATA_KW)
10290 }
10291 #[inline]
10292 pub fn with_token(&self) -> Option<SyntaxToken> {
10293 support::token(&self.syntax, SyntaxKind::WITH_KW)
10294 }
10295}
10296
10297#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10298pub struct WithNoData {
10299 pub(crate) syntax: SyntaxNode,
10300}
10301impl WithNoData {
10302 #[inline]
10303 pub fn data_token(&self) -> Option<SyntaxToken> {
10304 support::token(&self.syntax, SyntaxKind::DATA_KW)
10305 }
10306 #[inline]
10307 pub fn no_token(&self) -> Option<SyntaxToken> {
10308 support::token(&self.syntax, SyntaxKind::NO_KW)
10309 }
10310 #[inline]
10311 pub fn with_token(&self) -> Option<SyntaxToken> {
10312 support::token(&self.syntax, SyntaxKind::WITH_KW)
10313 }
10314}
10315
10316#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10317pub struct WithOptions {
10318 pub(crate) syntax: SyntaxNode,
10319}
10320impl WithOptions {
10321 #[inline]
10322 pub fn options_token(&self) -> Option<SyntaxToken> {
10323 support::token(&self.syntax, SyntaxKind::OPTIONS_KW)
10324 }
10325 #[inline]
10326 pub fn with_token(&self) -> Option<SyntaxToken> {
10327 support::token(&self.syntax, SyntaxKind::WITH_KW)
10328 }
10329}
10330
10331#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10332pub struct WithParams {
10333 pub(crate) syntax: SyntaxNode,
10334}
10335impl WithParams {
10336 #[inline]
10337 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
10338 support::token(&self.syntax, SyntaxKind::L_PAREN)
10339 }
10340 #[inline]
10341 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
10342 support::token(&self.syntax, SyntaxKind::R_PAREN)
10343 }
10344 #[inline]
10345 pub fn with_token(&self) -> Option<SyntaxToken> {
10346 support::token(&self.syntax, SyntaxKind::WITH_KW)
10347 }
10348}
10349
10350#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10351pub struct WithTable {
10352 pub(crate) syntax: SyntaxNode,
10353}
10354impl WithTable {
10355 #[inline]
10356 pub fn column_list(&self) -> Option<ColumnList> {
10357 support::child(&self.syntax)
10358 }
10359 #[inline]
10360 pub fn materialized(&self) -> Option<Materialized> {
10361 support::child(&self.syntax)
10362 }
10363 #[inline]
10364 pub fn name(&self) -> Option<Name> {
10365 support::child(&self.syntax)
10366 }
10367 #[inline]
10368 pub fn not_materialized(&self) -> Option<NotMaterialized> {
10369 support::child(&self.syntax)
10370 }
10371 #[inline]
10372 pub fn query(&self) -> Option<WithQuery> {
10373 support::child(&self.syntax)
10374 }
10375 #[inline]
10376 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
10377 support::token(&self.syntax, SyntaxKind::L_PAREN)
10378 }
10379 #[inline]
10380 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
10381 support::token(&self.syntax, SyntaxKind::R_PAREN)
10382 }
10383 #[inline]
10384 pub fn as_token(&self) -> Option<SyntaxToken> {
10385 support::token(&self.syntax, SyntaxKind::AS_KW)
10386 }
10387}
10388
10389#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10390pub struct WithTimezone {
10391 pub(crate) syntax: SyntaxNode,
10392}
10393impl WithTimezone {
10394 #[inline]
10395 pub fn time_token(&self) -> Option<SyntaxToken> {
10396 support::token(&self.syntax, SyntaxKind::TIME_KW)
10397 }
10398 #[inline]
10399 pub fn with_token(&self) -> Option<SyntaxToken> {
10400 support::token(&self.syntax, SyntaxKind::WITH_KW)
10401 }
10402 #[inline]
10403 pub fn zone_token(&self) -> Option<SyntaxToken> {
10404 support::token(&self.syntax, SyntaxKind::ZONE_KW)
10405 }
10406}
10407
10408#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10409pub struct WithinClause {
10410 pub(crate) syntax: SyntaxNode,
10411}
10412impl WithinClause {
10413 #[inline]
10414 pub fn order_by_clause(&self) -> Option<OrderByClause> {
10415 support::child(&self.syntax)
10416 }
10417 #[inline]
10418 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
10419 support::token(&self.syntax, SyntaxKind::L_PAREN)
10420 }
10421 #[inline]
10422 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
10423 support::token(&self.syntax, SyntaxKind::R_PAREN)
10424 }
10425 #[inline]
10426 pub fn group_token(&self) -> Option<SyntaxToken> {
10427 support::token(&self.syntax, SyntaxKind::GROUP_KW)
10428 }
10429 #[inline]
10430 pub fn within_token(&self) -> Option<SyntaxToken> {
10431 support::token(&self.syntax, SyntaxKind::WITHIN_KW)
10432 }
10433}
10434
10435#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10436pub struct WithoutOids {
10437 pub(crate) syntax: SyntaxNode,
10438}
10439impl WithoutOids {
10440 #[inline]
10441 pub fn oids_token(&self) -> Option<SyntaxToken> {
10442 support::token(&self.syntax, SyntaxKind::OIDS_KW)
10443 }
10444 #[inline]
10445 pub fn without_token(&self) -> Option<SyntaxToken> {
10446 support::token(&self.syntax, SyntaxKind::WITHOUT_KW)
10447 }
10448}
10449
10450#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10451pub struct WithoutTimezone {
10452 pub(crate) syntax: SyntaxNode,
10453}
10454impl WithoutTimezone {
10455 #[inline]
10456 pub fn time_token(&self) -> Option<SyntaxToken> {
10457 support::token(&self.syntax, SyntaxKind::TIME_KW)
10458 }
10459 #[inline]
10460 pub fn without_token(&self) -> Option<SyntaxToken> {
10461 support::token(&self.syntax, SyntaxKind::WITHOUT_KW)
10462 }
10463 #[inline]
10464 pub fn zone_token(&self) -> Option<SyntaxToken> {
10465 support::token(&self.syntax, SyntaxKind::ZONE_KW)
10466 }
10467}
10468
10469#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10470pub struct XmlColumnOption {
10471 pub(crate) syntax: SyntaxNode,
10472}
10473impl XmlColumnOption {
10474 #[inline]
10475 pub fn expr(&self) -> Option<Expr> {
10476 support::child(&self.syntax)
10477 }
10478 #[inline]
10479 pub fn default_token(&self) -> Option<SyntaxToken> {
10480 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
10481 }
10482 #[inline]
10483 pub fn ident_token(&self) -> Option<SyntaxToken> {
10484 support::token(&self.syntax, SyntaxKind::IDENT)
10485 }
10486 #[inline]
10487 pub fn not_token(&self) -> Option<SyntaxToken> {
10488 support::token(&self.syntax, SyntaxKind::NOT_KW)
10489 }
10490 #[inline]
10491 pub fn null_token(&self) -> Option<SyntaxToken> {
10492 support::token(&self.syntax, SyntaxKind::NULL_KW)
10493 }
10494 #[inline]
10495 pub fn path_token(&self) -> Option<SyntaxToken> {
10496 support::token(&self.syntax, SyntaxKind::PATH_KW)
10497 }
10498}
10499
10500#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10501pub struct XmlColumnOptionList {
10502 pub(crate) syntax: SyntaxNode,
10503}
10504impl XmlColumnOptionList {
10505 #[inline]
10506 pub fn xml_column_option(&self) -> Option<XmlColumnOption> {
10507 support::child(&self.syntax)
10508 }
10509 #[inline]
10510 pub fn xml_column_options(&self) -> AstChildren<XmlColumnOption> {
10511 support::children(&self.syntax)
10512 }
10513}
10514
10515#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10516pub struct XmlTableColumn {
10517 pub(crate) syntax: SyntaxNode,
10518}
10519impl XmlTableColumn {
10520 #[inline]
10521 pub fn name(&self) -> Option<Name> {
10522 support::child(&self.syntax)
10523 }
10524 #[inline]
10525 pub fn ty(&self) -> Option<Type> {
10526 support::child(&self.syntax)
10527 }
10528 #[inline]
10529 pub fn xml_column_option_list(&self) -> Option<XmlColumnOptionList> {
10530 support::child(&self.syntax)
10531 }
10532 #[inline]
10533 pub fn for_token(&self) -> Option<SyntaxToken> {
10534 support::token(&self.syntax, SyntaxKind::FOR_KW)
10535 }
10536 #[inline]
10537 pub fn ordinality_token(&self) -> Option<SyntaxToken> {
10538 support::token(&self.syntax, SyntaxKind::ORDINALITY_KW)
10539 }
10540}
10541
10542#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10543pub struct XmlTableColumnList {
10544 pub(crate) syntax: SyntaxNode,
10545}
10546impl XmlTableColumnList {
10547 #[inline]
10548 pub fn xml_table_columns(&self) -> AstChildren<XmlTableColumn> {
10549 support::children(&self.syntax)
10550 }
10551}
10552
10553#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10554pub enum AlterColumnOption {
10555 AddGenerated(AddGenerated),
10556 DropDefault(DropDefault),
10557 DropExpression(DropExpression),
10558 DropIdentity(DropIdentity),
10559 DropNotNull(DropNotNull),
10560 ResetOptions(ResetOptions),
10561 Restart(Restart),
10562 SetCompression(SetCompression),
10563 SetDefault(SetDefault),
10564 SetExpression(SetExpression),
10565 SetGenerated(SetGenerated),
10566 SetGeneratedOptions(SetGeneratedOptions),
10567 SetNotNull(SetNotNull),
10568 SetOptions(SetOptions),
10569 SetSequenceOption(SetSequenceOption),
10570 SetStatistics(SetStatistics),
10571 SetStorage(SetStorage),
10572 SetType(SetType),
10573}
10574
10575#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10576pub enum AlterDomainAction {
10577 AddConstraint(AddConstraint),
10578 DropConstraint(DropConstraint),
10579 DropDefault(DropDefault),
10580 DropNotNull(DropNotNull),
10581 OwnerTo(OwnerTo),
10582 RenameConstraint(RenameConstraint),
10583 RenameTo(RenameTo),
10584 SetDefault(SetDefault),
10585 SetNotNull(SetNotNull),
10586 SetSchema(SetSchema),
10587 ValidateConstraint(ValidateConstraint),
10588}
10589
10590#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10591pub enum AlterTableAction {
10592 AddColumn(AddColumn),
10593 AddConstraint(AddConstraint),
10594 AlterColumn(AlterColumn),
10595 AlterConstraint(AlterConstraint),
10596 AttachPartition(AttachPartition),
10597 ClusterOn(ClusterOn),
10598 DetachPartition(DetachPartition),
10599 DisableRls(DisableRls),
10600 DisableRule(DisableRule),
10601 DisableTrigger(DisableTrigger),
10602 DropColumn(DropColumn),
10603 DropConstraint(DropConstraint),
10604 EnableAlwaysRule(EnableAlwaysRule),
10605 EnableAlwaysTrigger(EnableAlwaysTrigger),
10606 EnableReplicaRule(EnableReplicaRule),
10607 EnableReplicaTrigger(EnableReplicaTrigger),
10608 EnableRls(EnableRls),
10609 EnableRule(EnableRule),
10610 EnableTrigger(EnableTrigger),
10611 ForceRls(ForceRls),
10612 Inherit(Inherit),
10613 NoForceRls(NoForceRls),
10614 NoInherit(NoInherit),
10615 NotOf(NotOf),
10616 OfType(OfType),
10617 OptionsList(OptionsList),
10618 OwnerTo(OwnerTo),
10619 RenameColumn(RenameColumn),
10620 RenameConstraint(RenameConstraint),
10621 RenameTable(RenameTable),
10622 ReplicaIdentity(ReplicaIdentity),
10623 ResetStorageParams(ResetStorageParams),
10624 SetAccessMethod(SetAccessMethod),
10625 SetLogged(SetLogged),
10626 SetSchema(SetSchema),
10627 SetStorageParams(SetStorageParams),
10628 SetTablespace(SetTablespace),
10629 SetUnlogged(SetUnlogged),
10630 SetWithoutCluster(SetWithoutCluster),
10631 SetWithoutOids(SetWithoutOids),
10632 ValidateConstraint(ValidateConstraint),
10633}
10634
10635#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10636pub enum ColumnConstraint {
10637 CheckConstraint(CheckConstraint),
10638 ExcludeConstraint(ExcludeConstraint),
10639 NotNullConstraint(NotNullConstraint),
10640 PrimaryKeyConstraint(PrimaryKeyConstraint),
10641 ReferencesConstraint(ReferencesConstraint),
10642 UniqueConstraint(UniqueConstraint),
10643}
10644
10645#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10646pub enum Constraint {
10647 CheckConstraint(CheckConstraint),
10648 DefaultConstraint(DefaultConstraint),
10649 ForeignKeyConstraint(ForeignKeyConstraint),
10650 GeneratedConstraint(GeneratedConstraint),
10651 NotNullConstraint(NotNullConstraint),
10652 NullConstraint(NullConstraint),
10653 PrimaryKeyConstraint(PrimaryKeyConstraint),
10654 ReferencesConstraint(ReferencesConstraint),
10655 UniqueConstraint(UniqueConstraint),
10656}
10657
10658#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10659pub enum Expr {
10660 ArrayExpr(ArrayExpr),
10661 BetweenExpr(BetweenExpr),
10662 BinExpr(BinExpr),
10663 CallExpr(CallExpr),
10664 CaseExpr(CaseExpr),
10665 CastExpr(CastExpr),
10666 FieldExpr(FieldExpr),
10667 IndexExpr(IndexExpr),
10668 Literal(Literal),
10669 NameRef(NameRef),
10670 ParenExpr(ParenExpr),
10671 PostfixExpr(PostfixExpr),
10672 PrefixExpr(PrefixExpr),
10673 TupleExpr(TupleExpr),
10674}
10675
10676#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10677pub enum FuncOption {
10678 AsFuncOption(AsFuncOption),
10679 BeginFuncOption(BeginFuncOption),
10680 CostFuncOption(CostFuncOption),
10681 LanguageFuncOption(LanguageFuncOption),
10682 LeakproofFuncOption(LeakproofFuncOption),
10683 ParallelFuncOption(ParallelFuncOption),
10684 ResetFuncOption(ResetFuncOption),
10685 ReturnFuncOption(ReturnFuncOption),
10686 RowsFuncOption(RowsFuncOption),
10687 SecurityFuncOption(SecurityFuncOption),
10688 SetFuncOption(SetFuncOption),
10689 StrictFuncOption(StrictFuncOption),
10690 SupportFuncOption(SupportFuncOption),
10691 TransformFuncOption(TransformFuncOption),
10692 VolatilityFuncOption(VolatilityFuncOption),
10693 WindowFuncOption(WindowFuncOption),
10694}
10695
10696#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10697pub enum JoinType {
10698 JoinCross(JoinCross),
10699 JoinFull(JoinFull),
10700 JoinInner(JoinInner),
10701 JoinLeft(JoinLeft),
10702 JoinRight(JoinRight),
10703}
10704
10705#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10706pub enum JsonBehavior {
10707 JsonBehaviorDefault(JsonBehaviorDefault),
10708 JsonBehaviorEmptyArray(JsonBehaviorEmptyArray),
10709 JsonBehaviorEmptyObject(JsonBehaviorEmptyObject),
10710 JsonBehaviorError(JsonBehaviorError),
10711 JsonBehaviorFalse(JsonBehaviorFalse),
10712 JsonBehaviorNull(JsonBehaviorNull),
10713 JsonBehaviorTrue(JsonBehaviorTrue),
10714 JsonBehaviorUnknown(JsonBehaviorUnknown),
10715}
10716
10717#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10718pub enum MatchType {
10719 MatchFull(MatchFull),
10720 MatchPartial(MatchPartial),
10721 MatchSimple(MatchSimple),
10722}
10723
10724#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10725pub enum MergeAction {
10726 MergeDelete(MergeDelete),
10727 MergeDoNothing(MergeDoNothing),
10728 MergeInsert(MergeInsert),
10729 MergeUpdate(MergeUpdate),
10730}
10731
10732#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10733pub enum MergeWhenClause {
10734 MergeWhenMatched(MergeWhenMatched),
10735 MergeWhenNotMatchedSource(MergeWhenNotMatchedSource),
10736 MergeWhenNotMatchedTarget(MergeWhenNotMatchedTarget),
10737}
10738
10739#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10740pub enum OnCommitAction {
10741 DeleteRows(DeleteRows),
10742 Drop(Drop),
10743 PreserveRows(PreserveRows),
10744}
10745
10746#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10747pub enum ParamMode {
10748 ParamIn(ParamIn),
10749 ParamInOut(ParamInOut),
10750 ParamOut(ParamOut),
10751 ParamVariadic(ParamVariadic),
10752}
10753
10754#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10755pub enum PartitionType {
10756 PartitionDefault(PartitionDefault),
10757 PartitionForValuesFrom(PartitionForValuesFrom),
10758 PartitionForValuesIn(PartitionForValuesIn),
10759 PartitionForValuesWith(PartitionForValuesWith),
10760}
10761
10762#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10763pub enum RefAction {
10764 Cascade(Cascade),
10765 NoAction(NoAction),
10766 Restrict(Restrict),
10767 SetDefaultColumns(SetDefaultColumns),
10768 SetNullColumns(SetNullColumns),
10769}
10770
10771#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10772pub enum Stmt {
10773 AlterAggregate(AlterAggregate),
10774 AlterCollation(AlterCollation),
10775 AlterConversion(AlterConversion),
10776 AlterDatabase(AlterDatabase),
10777 AlterDefaultPrivileges(AlterDefaultPrivileges),
10778 AlterDomain(AlterDomain),
10779 AlterEventTrigger(AlterEventTrigger),
10780 AlterExtension(AlterExtension),
10781 AlterForeignDataWrapper(AlterForeignDataWrapper),
10782 AlterForeignTable(AlterForeignTable),
10783 AlterFunction(AlterFunction),
10784 AlterGroup(AlterGroup),
10785 AlterIndex(AlterIndex),
10786 AlterLanguage(AlterLanguage),
10787 AlterLargeObject(AlterLargeObject),
10788 AlterMaterializedView(AlterMaterializedView),
10789 AlterOperator(AlterOperator),
10790 AlterOperatorClass(AlterOperatorClass),
10791 AlterOperatorFamily(AlterOperatorFamily),
10792 AlterPolicy(AlterPolicy),
10793 AlterProcedure(AlterProcedure),
10794 AlterPublication(AlterPublication),
10795 AlterRole(AlterRole),
10796 AlterRoutine(AlterRoutine),
10797 AlterRule(AlterRule),
10798 AlterSchema(AlterSchema),
10799 AlterSequence(AlterSequence),
10800 AlterServer(AlterServer),
10801 AlterStatistics(AlterStatistics),
10802 AlterSubscription(AlterSubscription),
10803 AlterSystem(AlterSystem),
10804 AlterTable(AlterTable),
10805 AlterTablespace(AlterTablespace),
10806 AlterTextSearchConfiguration(AlterTextSearchConfiguration),
10807 AlterTextSearchDictionary(AlterTextSearchDictionary),
10808 AlterTextSearchParser(AlterTextSearchParser),
10809 AlterTextSearchTemplate(AlterTextSearchTemplate),
10810 AlterTrigger(AlterTrigger),
10811 AlterType(AlterType),
10812 AlterUser(AlterUser),
10813 AlterUserMapping(AlterUserMapping),
10814 AlterView(AlterView),
10815 Analyze(Analyze),
10816 Begin(Begin),
10817 Call(Call),
10818 Checkpoint(Checkpoint),
10819 Close(Close),
10820 Cluster(Cluster),
10821 CommentOn(CommentOn),
10822 Commit(Commit),
10823 Copy(Copy),
10824 CreateAccessMethod(CreateAccessMethod),
10825 CreateAggregate(CreateAggregate),
10826 CreateCast(CreateCast),
10827 CreateCollation(CreateCollation),
10828 CreateConversion(CreateConversion),
10829 CreateDatabase(CreateDatabase),
10830 CreateDomain(CreateDomain),
10831 CreateEventTrigger(CreateEventTrigger),
10832 CreateExtension(CreateExtension),
10833 CreateForeignDataWrapper(CreateForeignDataWrapper),
10834 CreateForeignTable(CreateForeignTable),
10835 CreateFunction(CreateFunction),
10836 CreateGroup(CreateGroup),
10837 CreateIndex(CreateIndex),
10838 CreateLanguage(CreateLanguage),
10839 CreateMaterializedView(CreateMaterializedView),
10840 CreateOperator(CreateOperator),
10841 CreateOperatorClass(CreateOperatorClass),
10842 CreateOperatorFamily(CreateOperatorFamily),
10843 CreatePolicy(CreatePolicy),
10844 CreateProcedure(CreateProcedure),
10845 CreatePublication(CreatePublication),
10846 CreateRole(CreateRole),
10847 CreateRule(CreateRule),
10848 CreateSchema(CreateSchema),
10849 CreateSequence(CreateSequence),
10850 CreateServer(CreateServer),
10851 CreateStatistics(CreateStatistics),
10852 CreateSubscription(CreateSubscription),
10853 CreateTable(CreateTable),
10854 CreateTableAs(CreateTableAs),
10855 CreateTablespace(CreateTablespace),
10856 CreateTextSearchConfiguration(CreateTextSearchConfiguration),
10857 CreateTextSearchDictionary(CreateTextSearchDictionary),
10858 CreateTextSearchParser(CreateTextSearchParser),
10859 CreateTextSearchTemplate(CreateTextSearchTemplate),
10860 CreateTransform(CreateTransform),
10861 CreateTrigger(CreateTrigger),
10862 CreateType(CreateType),
10863 CreateUser(CreateUser),
10864 CreateUserMapping(CreateUserMapping),
10865 CreateView(CreateView),
10866 Deallocate(Deallocate),
10867 Declare(Declare),
10868 Delete(Delete),
10869 Discard(Discard),
10870 Do(Do),
10871 DropAccessMethod(DropAccessMethod),
10872 DropAggregate(DropAggregate),
10873 DropCast(DropCast),
10874 DropCollation(DropCollation),
10875 DropConversion(DropConversion),
10876 DropDatabase(DropDatabase),
10877 DropDomain(DropDomain),
10878 DropEventTrigger(DropEventTrigger),
10879 DropExtension(DropExtension),
10880 DropForeignDataWrapper(DropForeignDataWrapper),
10881 DropForeignTable(DropForeignTable),
10882 DropFunction(DropFunction),
10883 DropGroup(DropGroup),
10884 DropIndex(DropIndex),
10885 DropLanguage(DropLanguage),
10886 DropMaterializedView(DropMaterializedView),
10887 DropOperator(DropOperator),
10888 DropOperatorClass(DropOperatorClass),
10889 DropOperatorFamily(DropOperatorFamily),
10890 DropOwned(DropOwned),
10891 DropPolicy(DropPolicy),
10892 DropProcedure(DropProcedure),
10893 DropPublication(DropPublication),
10894 DropRole(DropRole),
10895 DropRoutine(DropRoutine),
10896 DropRule(DropRule),
10897 DropSchema(DropSchema),
10898 DropSequence(DropSequence),
10899 DropServer(DropServer),
10900 DropStatistics(DropStatistics),
10901 DropSubscription(DropSubscription),
10902 DropTable(DropTable),
10903 DropTablespace(DropTablespace),
10904 DropTextSearchConfig(DropTextSearchConfig),
10905 DropTextSearchDict(DropTextSearchDict),
10906 DropTextSearchParser(DropTextSearchParser),
10907 DropTextSearchTemplate(DropTextSearchTemplate),
10908 DropTransform(DropTransform),
10909 DropTrigger(DropTrigger),
10910 DropType(DropType),
10911 DropUser(DropUser),
10912 DropUserMapping(DropUserMapping),
10913 DropView(DropView),
10914 Execute(Execute),
10915 Explain(Explain),
10916 Fetch(Fetch),
10917 Grant(Grant),
10918 ImportForeignSchema(ImportForeignSchema),
10919 Insert(Insert),
10920 Listen(Listen),
10921 Load(Load),
10922 Lock(Lock),
10923 Merge(Merge),
10924 Move(Move),
10925 Notify(Notify),
10926 ParenSelect(ParenSelect),
10927 Prepare(Prepare),
10928 PrepareTransaction(PrepareTransaction),
10929 Reassign(Reassign),
10930 Refresh(Refresh),
10931 Reindex(Reindex),
10932 ReleaseSavepoint(ReleaseSavepoint),
10933 Reset(Reset),
10934 Revoke(Revoke),
10935 Rollback(Rollback),
10936 Savepoint(Savepoint),
10937 SecurityLabel(SecurityLabel),
10938 Select(Select),
10939 SelectInto(SelectInto),
10940 Set(Set),
10941 SetConstraints(SetConstraints),
10942 SetRole(SetRole),
10943 SetSessionAuth(SetSessionAuth),
10944 SetTransaction(SetTransaction),
10945 Show(Show),
10946 Table(Table),
10947 Truncate(Truncate),
10948 Unlisten(Unlisten),
10949 Update(Update),
10950 Vacuum(Vacuum),
10951 Values(Values),
10952}
10953
10954#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10955pub enum TableArg {
10956 Column(Column),
10957 LikeClause(LikeClause),
10958 TableConstraint(TableConstraint),
10959}
10960
10961#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10962pub enum TableConstraint {
10963 CheckConstraint(CheckConstraint),
10964 ExcludeConstraint(ExcludeConstraint),
10965 ForeignKeyConstraint(ForeignKeyConstraint),
10966 PrimaryKeyConstraint(PrimaryKeyConstraint),
10967 UniqueConstraint(UniqueConstraint),
10968}
10969
10970#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10971pub enum Timezone {
10972 WithTimezone(WithTimezone),
10973 WithoutTimezone(WithoutTimezone),
10974}
10975
10976#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10977pub enum TransactionMode {
10978 Deferrable(Deferrable),
10979 NotDeferrable(NotDeferrable),
10980 ReadCommitted(ReadCommitted),
10981 ReadOnly(ReadOnly),
10982 ReadUncommitted(ReadUncommitted),
10983 ReadWrite(ReadWrite),
10984 RepeatableRead(RepeatableRead),
10985 Serializable(Serializable),
10986}
10987
10988#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10989pub enum Type {
10990 ArrayType(ArrayType),
10991 BitType(BitType),
10992 CharType(CharType),
10993 DoubleType(DoubleType),
10994 IntervalType(IntervalType),
10995 PathType(PathType),
10996 PercentType(PercentType),
10997 TimeType(TimeType),
10998}
10999
11000#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11001pub enum WithQuery {
11002 Delete(Delete),
11003 Insert(Insert),
11004 Merge(Merge),
11005 Select(Select),
11006 Update(Update),
11007 Values(Values),
11008}
11009impl AstNode for AddColumn {
11010 #[inline]
11011 fn can_cast(kind: SyntaxKind) -> bool {
11012 kind == SyntaxKind::ADD_COLUMN
11013 }
11014 #[inline]
11015 fn cast(syntax: SyntaxNode) -> Option<Self> {
11016 if Self::can_cast(syntax.kind()) {
11017 Some(Self { syntax })
11018 } else {
11019 None
11020 }
11021 }
11022 #[inline]
11023 fn syntax(&self) -> &SyntaxNode {
11024 &self.syntax
11025 }
11026}
11027impl AstNode for AddConstraint {
11028 #[inline]
11029 fn can_cast(kind: SyntaxKind) -> bool {
11030 kind == SyntaxKind::ADD_CONSTRAINT
11031 }
11032 #[inline]
11033 fn cast(syntax: SyntaxNode) -> Option<Self> {
11034 if Self::can_cast(syntax.kind()) {
11035 Some(Self { syntax })
11036 } else {
11037 None
11038 }
11039 }
11040 #[inline]
11041 fn syntax(&self) -> &SyntaxNode {
11042 &self.syntax
11043 }
11044}
11045impl AstNode for AddGenerated {
11046 #[inline]
11047 fn can_cast(kind: SyntaxKind) -> bool {
11048 kind == SyntaxKind::ADD_GENERATED
11049 }
11050 #[inline]
11051 fn cast(syntax: SyntaxNode) -> Option<Self> {
11052 if Self::can_cast(syntax.kind()) {
11053 Some(Self { syntax })
11054 } else {
11055 None
11056 }
11057 }
11058 #[inline]
11059 fn syntax(&self) -> &SyntaxNode {
11060 &self.syntax
11061 }
11062}
11063impl AstNode for Aggregate {
11064 #[inline]
11065 fn can_cast(kind: SyntaxKind) -> bool {
11066 kind == SyntaxKind::AGGREGATE
11067 }
11068 #[inline]
11069 fn cast(syntax: SyntaxNode) -> Option<Self> {
11070 if Self::can_cast(syntax.kind()) {
11071 Some(Self { syntax })
11072 } else {
11073 None
11074 }
11075 }
11076 #[inline]
11077 fn syntax(&self) -> &SyntaxNode {
11078 &self.syntax
11079 }
11080}
11081impl AstNode for Alias {
11082 #[inline]
11083 fn can_cast(kind: SyntaxKind) -> bool {
11084 kind == SyntaxKind::ALIAS
11085 }
11086 #[inline]
11087 fn cast(syntax: SyntaxNode) -> Option<Self> {
11088 if Self::can_cast(syntax.kind()) {
11089 Some(Self { syntax })
11090 } else {
11091 None
11092 }
11093 }
11094 #[inline]
11095 fn syntax(&self) -> &SyntaxNode {
11096 &self.syntax
11097 }
11098}
11099impl AstNode for AlterAggregate {
11100 #[inline]
11101 fn can_cast(kind: SyntaxKind) -> bool {
11102 kind == SyntaxKind::ALTER_AGGREGATE
11103 }
11104 #[inline]
11105 fn cast(syntax: SyntaxNode) -> Option<Self> {
11106 if Self::can_cast(syntax.kind()) {
11107 Some(Self { syntax })
11108 } else {
11109 None
11110 }
11111 }
11112 #[inline]
11113 fn syntax(&self) -> &SyntaxNode {
11114 &self.syntax
11115 }
11116}
11117impl AstNode for AlterCollation {
11118 #[inline]
11119 fn can_cast(kind: SyntaxKind) -> bool {
11120 kind == SyntaxKind::ALTER_COLLATION
11121 }
11122 #[inline]
11123 fn cast(syntax: SyntaxNode) -> Option<Self> {
11124 if Self::can_cast(syntax.kind()) {
11125 Some(Self { syntax })
11126 } else {
11127 None
11128 }
11129 }
11130 #[inline]
11131 fn syntax(&self) -> &SyntaxNode {
11132 &self.syntax
11133 }
11134}
11135impl AstNode for AlterColumn {
11136 #[inline]
11137 fn can_cast(kind: SyntaxKind) -> bool {
11138 kind == SyntaxKind::ALTER_COLUMN
11139 }
11140 #[inline]
11141 fn cast(syntax: SyntaxNode) -> Option<Self> {
11142 if Self::can_cast(syntax.kind()) {
11143 Some(Self { syntax })
11144 } else {
11145 None
11146 }
11147 }
11148 #[inline]
11149 fn syntax(&self) -> &SyntaxNode {
11150 &self.syntax
11151 }
11152}
11153impl AstNode for AlterConstraint {
11154 #[inline]
11155 fn can_cast(kind: SyntaxKind) -> bool {
11156 kind == SyntaxKind::ALTER_CONSTRAINT
11157 }
11158 #[inline]
11159 fn cast(syntax: SyntaxNode) -> Option<Self> {
11160 if Self::can_cast(syntax.kind()) {
11161 Some(Self { syntax })
11162 } else {
11163 None
11164 }
11165 }
11166 #[inline]
11167 fn syntax(&self) -> &SyntaxNode {
11168 &self.syntax
11169 }
11170}
11171impl AstNode for AlterConversion {
11172 #[inline]
11173 fn can_cast(kind: SyntaxKind) -> bool {
11174 kind == SyntaxKind::ALTER_CONVERSION
11175 }
11176 #[inline]
11177 fn cast(syntax: SyntaxNode) -> Option<Self> {
11178 if Self::can_cast(syntax.kind()) {
11179 Some(Self { syntax })
11180 } else {
11181 None
11182 }
11183 }
11184 #[inline]
11185 fn syntax(&self) -> &SyntaxNode {
11186 &self.syntax
11187 }
11188}
11189impl AstNode for AlterDatabase {
11190 #[inline]
11191 fn can_cast(kind: SyntaxKind) -> bool {
11192 kind == SyntaxKind::ALTER_DATABASE
11193 }
11194 #[inline]
11195 fn cast(syntax: SyntaxNode) -> Option<Self> {
11196 if Self::can_cast(syntax.kind()) {
11197 Some(Self { syntax })
11198 } else {
11199 None
11200 }
11201 }
11202 #[inline]
11203 fn syntax(&self) -> &SyntaxNode {
11204 &self.syntax
11205 }
11206}
11207impl AstNode for AlterDefaultPrivileges {
11208 #[inline]
11209 fn can_cast(kind: SyntaxKind) -> bool {
11210 kind == SyntaxKind::ALTER_DEFAULT_PRIVILEGES
11211 }
11212 #[inline]
11213 fn cast(syntax: SyntaxNode) -> Option<Self> {
11214 if Self::can_cast(syntax.kind()) {
11215 Some(Self { syntax })
11216 } else {
11217 None
11218 }
11219 }
11220 #[inline]
11221 fn syntax(&self) -> &SyntaxNode {
11222 &self.syntax
11223 }
11224}
11225impl AstNode for AlterDomain {
11226 #[inline]
11227 fn can_cast(kind: SyntaxKind) -> bool {
11228 kind == SyntaxKind::ALTER_DOMAIN
11229 }
11230 #[inline]
11231 fn cast(syntax: SyntaxNode) -> Option<Self> {
11232 if Self::can_cast(syntax.kind()) {
11233 Some(Self { syntax })
11234 } else {
11235 None
11236 }
11237 }
11238 #[inline]
11239 fn syntax(&self) -> &SyntaxNode {
11240 &self.syntax
11241 }
11242}
11243impl AstNode for AlterEventTrigger {
11244 #[inline]
11245 fn can_cast(kind: SyntaxKind) -> bool {
11246 kind == SyntaxKind::ALTER_EVENT_TRIGGER
11247 }
11248 #[inline]
11249 fn cast(syntax: SyntaxNode) -> Option<Self> {
11250 if Self::can_cast(syntax.kind()) {
11251 Some(Self { syntax })
11252 } else {
11253 None
11254 }
11255 }
11256 #[inline]
11257 fn syntax(&self) -> &SyntaxNode {
11258 &self.syntax
11259 }
11260}
11261impl AstNode for AlterExtension {
11262 #[inline]
11263 fn can_cast(kind: SyntaxKind) -> bool {
11264 kind == SyntaxKind::ALTER_EXTENSION
11265 }
11266 #[inline]
11267 fn cast(syntax: SyntaxNode) -> Option<Self> {
11268 if Self::can_cast(syntax.kind()) {
11269 Some(Self { syntax })
11270 } else {
11271 None
11272 }
11273 }
11274 #[inline]
11275 fn syntax(&self) -> &SyntaxNode {
11276 &self.syntax
11277 }
11278}
11279impl AstNode for AlterForeignDataWrapper {
11280 #[inline]
11281 fn can_cast(kind: SyntaxKind) -> bool {
11282 kind == SyntaxKind::ALTER_FOREIGN_DATA_WRAPPER
11283 }
11284 #[inline]
11285 fn cast(syntax: SyntaxNode) -> Option<Self> {
11286 if Self::can_cast(syntax.kind()) {
11287 Some(Self { syntax })
11288 } else {
11289 None
11290 }
11291 }
11292 #[inline]
11293 fn syntax(&self) -> &SyntaxNode {
11294 &self.syntax
11295 }
11296}
11297impl AstNode for AlterForeignTable {
11298 #[inline]
11299 fn can_cast(kind: SyntaxKind) -> bool {
11300 kind == SyntaxKind::ALTER_FOREIGN_TABLE
11301 }
11302 #[inline]
11303 fn cast(syntax: SyntaxNode) -> Option<Self> {
11304 if Self::can_cast(syntax.kind()) {
11305 Some(Self { syntax })
11306 } else {
11307 None
11308 }
11309 }
11310 #[inline]
11311 fn syntax(&self) -> &SyntaxNode {
11312 &self.syntax
11313 }
11314}
11315impl AstNode for AlterFunction {
11316 #[inline]
11317 fn can_cast(kind: SyntaxKind) -> bool {
11318 kind == SyntaxKind::ALTER_FUNCTION
11319 }
11320 #[inline]
11321 fn cast(syntax: SyntaxNode) -> Option<Self> {
11322 if Self::can_cast(syntax.kind()) {
11323 Some(Self { syntax })
11324 } else {
11325 None
11326 }
11327 }
11328 #[inline]
11329 fn syntax(&self) -> &SyntaxNode {
11330 &self.syntax
11331 }
11332}
11333impl AstNode for AlterGroup {
11334 #[inline]
11335 fn can_cast(kind: SyntaxKind) -> bool {
11336 kind == SyntaxKind::ALTER_GROUP
11337 }
11338 #[inline]
11339 fn cast(syntax: SyntaxNode) -> Option<Self> {
11340 if Self::can_cast(syntax.kind()) {
11341 Some(Self { syntax })
11342 } else {
11343 None
11344 }
11345 }
11346 #[inline]
11347 fn syntax(&self) -> &SyntaxNode {
11348 &self.syntax
11349 }
11350}
11351impl AstNode for AlterIndex {
11352 #[inline]
11353 fn can_cast(kind: SyntaxKind) -> bool {
11354 kind == SyntaxKind::ALTER_INDEX
11355 }
11356 #[inline]
11357 fn cast(syntax: SyntaxNode) -> Option<Self> {
11358 if Self::can_cast(syntax.kind()) {
11359 Some(Self { syntax })
11360 } else {
11361 None
11362 }
11363 }
11364 #[inline]
11365 fn syntax(&self) -> &SyntaxNode {
11366 &self.syntax
11367 }
11368}
11369impl AstNode for AlterLanguage {
11370 #[inline]
11371 fn can_cast(kind: SyntaxKind) -> bool {
11372 kind == SyntaxKind::ALTER_LANGUAGE
11373 }
11374 #[inline]
11375 fn cast(syntax: SyntaxNode) -> Option<Self> {
11376 if Self::can_cast(syntax.kind()) {
11377 Some(Self { syntax })
11378 } else {
11379 None
11380 }
11381 }
11382 #[inline]
11383 fn syntax(&self) -> &SyntaxNode {
11384 &self.syntax
11385 }
11386}
11387impl AstNode for AlterLargeObject {
11388 #[inline]
11389 fn can_cast(kind: SyntaxKind) -> bool {
11390 kind == SyntaxKind::ALTER_LARGE_OBJECT
11391 }
11392 #[inline]
11393 fn cast(syntax: SyntaxNode) -> Option<Self> {
11394 if Self::can_cast(syntax.kind()) {
11395 Some(Self { syntax })
11396 } else {
11397 None
11398 }
11399 }
11400 #[inline]
11401 fn syntax(&self) -> &SyntaxNode {
11402 &self.syntax
11403 }
11404}
11405impl AstNode for AlterMaterializedView {
11406 #[inline]
11407 fn can_cast(kind: SyntaxKind) -> bool {
11408 kind == SyntaxKind::ALTER_MATERIALIZED_VIEW
11409 }
11410 #[inline]
11411 fn cast(syntax: SyntaxNode) -> Option<Self> {
11412 if Self::can_cast(syntax.kind()) {
11413 Some(Self { syntax })
11414 } else {
11415 None
11416 }
11417 }
11418 #[inline]
11419 fn syntax(&self) -> &SyntaxNode {
11420 &self.syntax
11421 }
11422}
11423impl AstNode for AlterOperator {
11424 #[inline]
11425 fn can_cast(kind: SyntaxKind) -> bool {
11426 kind == SyntaxKind::ALTER_OPERATOR
11427 }
11428 #[inline]
11429 fn cast(syntax: SyntaxNode) -> Option<Self> {
11430 if Self::can_cast(syntax.kind()) {
11431 Some(Self { syntax })
11432 } else {
11433 None
11434 }
11435 }
11436 #[inline]
11437 fn syntax(&self) -> &SyntaxNode {
11438 &self.syntax
11439 }
11440}
11441impl AstNode for AlterOperatorClass {
11442 #[inline]
11443 fn can_cast(kind: SyntaxKind) -> bool {
11444 kind == SyntaxKind::ALTER_OPERATOR_CLASS
11445 }
11446 #[inline]
11447 fn cast(syntax: SyntaxNode) -> Option<Self> {
11448 if Self::can_cast(syntax.kind()) {
11449 Some(Self { syntax })
11450 } else {
11451 None
11452 }
11453 }
11454 #[inline]
11455 fn syntax(&self) -> &SyntaxNode {
11456 &self.syntax
11457 }
11458}
11459impl AstNode for AlterOperatorFamily {
11460 #[inline]
11461 fn can_cast(kind: SyntaxKind) -> bool {
11462 kind == SyntaxKind::ALTER_OPERATOR_FAMILY
11463 }
11464 #[inline]
11465 fn cast(syntax: SyntaxNode) -> Option<Self> {
11466 if Self::can_cast(syntax.kind()) {
11467 Some(Self { syntax })
11468 } else {
11469 None
11470 }
11471 }
11472 #[inline]
11473 fn syntax(&self) -> &SyntaxNode {
11474 &self.syntax
11475 }
11476}
11477impl AstNode for AlterPolicy {
11478 #[inline]
11479 fn can_cast(kind: SyntaxKind) -> bool {
11480 kind == SyntaxKind::ALTER_POLICY
11481 }
11482 #[inline]
11483 fn cast(syntax: SyntaxNode) -> Option<Self> {
11484 if Self::can_cast(syntax.kind()) {
11485 Some(Self { syntax })
11486 } else {
11487 None
11488 }
11489 }
11490 #[inline]
11491 fn syntax(&self) -> &SyntaxNode {
11492 &self.syntax
11493 }
11494}
11495impl AstNode for AlterProcedure {
11496 #[inline]
11497 fn can_cast(kind: SyntaxKind) -> bool {
11498 kind == SyntaxKind::ALTER_PROCEDURE
11499 }
11500 #[inline]
11501 fn cast(syntax: SyntaxNode) -> Option<Self> {
11502 if Self::can_cast(syntax.kind()) {
11503 Some(Self { syntax })
11504 } else {
11505 None
11506 }
11507 }
11508 #[inline]
11509 fn syntax(&self) -> &SyntaxNode {
11510 &self.syntax
11511 }
11512}
11513impl AstNode for AlterPublication {
11514 #[inline]
11515 fn can_cast(kind: SyntaxKind) -> bool {
11516 kind == SyntaxKind::ALTER_PUBLICATION
11517 }
11518 #[inline]
11519 fn cast(syntax: SyntaxNode) -> Option<Self> {
11520 if Self::can_cast(syntax.kind()) {
11521 Some(Self { syntax })
11522 } else {
11523 None
11524 }
11525 }
11526 #[inline]
11527 fn syntax(&self) -> &SyntaxNode {
11528 &self.syntax
11529 }
11530}
11531impl AstNode for AlterRole {
11532 #[inline]
11533 fn can_cast(kind: SyntaxKind) -> bool {
11534 kind == SyntaxKind::ALTER_ROLE
11535 }
11536 #[inline]
11537 fn cast(syntax: SyntaxNode) -> Option<Self> {
11538 if Self::can_cast(syntax.kind()) {
11539 Some(Self { syntax })
11540 } else {
11541 None
11542 }
11543 }
11544 #[inline]
11545 fn syntax(&self) -> &SyntaxNode {
11546 &self.syntax
11547 }
11548}
11549impl AstNode for AlterRoutine {
11550 #[inline]
11551 fn can_cast(kind: SyntaxKind) -> bool {
11552 kind == SyntaxKind::ALTER_ROUTINE
11553 }
11554 #[inline]
11555 fn cast(syntax: SyntaxNode) -> Option<Self> {
11556 if Self::can_cast(syntax.kind()) {
11557 Some(Self { syntax })
11558 } else {
11559 None
11560 }
11561 }
11562 #[inline]
11563 fn syntax(&self) -> &SyntaxNode {
11564 &self.syntax
11565 }
11566}
11567impl AstNode for AlterRule {
11568 #[inline]
11569 fn can_cast(kind: SyntaxKind) -> bool {
11570 kind == SyntaxKind::ALTER_RULE
11571 }
11572 #[inline]
11573 fn cast(syntax: SyntaxNode) -> Option<Self> {
11574 if Self::can_cast(syntax.kind()) {
11575 Some(Self { syntax })
11576 } else {
11577 None
11578 }
11579 }
11580 #[inline]
11581 fn syntax(&self) -> &SyntaxNode {
11582 &self.syntax
11583 }
11584}
11585impl AstNode for AlterSchema {
11586 #[inline]
11587 fn can_cast(kind: SyntaxKind) -> bool {
11588 kind == SyntaxKind::ALTER_SCHEMA
11589 }
11590 #[inline]
11591 fn cast(syntax: SyntaxNode) -> Option<Self> {
11592 if Self::can_cast(syntax.kind()) {
11593 Some(Self { syntax })
11594 } else {
11595 None
11596 }
11597 }
11598 #[inline]
11599 fn syntax(&self) -> &SyntaxNode {
11600 &self.syntax
11601 }
11602}
11603impl AstNode for AlterSequence {
11604 #[inline]
11605 fn can_cast(kind: SyntaxKind) -> bool {
11606 kind == SyntaxKind::ALTER_SEQUENCE
11607 }
11608 #[inline]
11609 fn cast(syntax: SyntaxNode) -> Option<Self> {
11610 if Self::can_cast(syntax.kind()) {
11611 Some(Self { syntax })
11612 } else {
11613 None
11614 }
11615 }
11616 #[inline]
11617 fn syntax(&self) -> &SyntaxNode {
11618 &self.syntax
11619 }
11620}
11621impl AstNode for AlterServer {
11622 #[inline]
11623 fn can_cast(kind: SyntaxKind) -> bool {
11624 kind == SyntaxKind::ALTER_SERVER
11625 }
11626 #[inline]
11627 fn cast(syntax: SyntaxNode) -> Option<Self> {
11628 if Self::can_cast(syntax.kind()) {
11629 Some(Self { syntax })
11630 } else {
11631 None
11632 }
11633 }
11634 #[inline]
11635 fn syntax(&self) -> &SyntaxNode {
11636 &self.syntax
11637 }
11638}
11639impl AstNode for AlterStatistics {
11640 #[inline]
11641 fn can_cast(kind: SyntaxKind) -> bool {
11642 kind == SyntaxKind::ALTER_STATISTICS
11643 }
11644 #[inline]
11645 fn cast(syntax: SyntaxNode) -> Option<Self> {
11646 if Self::can_cast(syntax.kind()) {
11647 Some(Self { syntax })
11648 } else {
11649 None
11650 }
11651 }
11652 #[inline]
11653 fn syntax(&self) -> &SyntaxNode {
11654 &self.syntax
11655 }
11656}
11657impl AstNode for AlterSubscription {
11658 #[inline]
11659 fn can_cast(kind: SyntaxKind) -> bool {
11660 kind == SyntaxKind::ALTER_SUBSCRIPTION
11661 }
11662 #[inline]
11663 fn cast(syntax: SyntaxNode) -> Option<Self> {
11664 if Self::can_cast(syntax.kind()) {
11665 Some(Self { syntax })
11666 } else {
11667 None
11668 }
11669 }
11670 #[inline]
11671 fn syntax(&self) -> &SyntaxNode {
11672 &self.syntax
11673 }
11674}
11675impl AstNode for AlterSystem {
11676 #[inline]
11677 fn can_cast(kind: SyntaxKind) -> bool {
11678 kind == SyntaxKind::ALTER_SYSTEM
11679 }
11680 #[inline]
11681 fn cast(syntax: SyntaxNode) -> Option<Self> {
11682 if Self::can_cast(syntax.kind()) {
11683 Some(Self { syntax })
11684 } else {
11685 None
11686 }
11687 }
11688 #[inline]
11689 fn syntax(&self) -> &SyntaxNode {
11690 &self.syntax
11691 }
11692}
11693impl AstNode for AlterTable {
11694 #[inline]
11695 fn can_cast(kind: SyntaxKind) -> bool {
11696 kind == SyntaxKind::ALTER_TABLE
11697 }
11698 #[inline]
11699 fn cast(syntax: SyntaxNode) -> Option<Self> {
11700 if Self::can_cast(syntax.kind()) {
11701 Some(Self { syntax })
11702 } else {
11703 None
11704 }
11705 }
11706 #[inline]
11707 fn syntax(&self) -> &SyntaxNode {
11708 &self.syntax
11709 }
11710}
11711impl AstNode for AlterTablespace {
11712 #[inline]
11713 fn can_cast(kind: SyntaxKind) -> bool {
11714 kind == SyntaxKind::ALTER_TABLESPACE
11715 }
11716 #[inline]
11717 fn cast(syntax: SyntaxNode) -> Option<Self> {
11718 if Self::can_cast(syntax.kind()) {
11719 Some(Self { syntax })
11720 } else {
11721 None
11722 }
11723 }
11724 #[inline]
11725 fn syntax(&self) -> &SyntaxNode {
11726 &self.syntax
11727 }
11728}
11729impl AstNode for AlterTextSearchConfiguration {
11730 #[inline]
11731 fn can_cast(kind: SyntaxKind) -> bool {
11732 kind == SyntaxKind::ALTER_TEXT_SEARCH_CONFIGURATION
11733 }
11734 #[inline]
11735 fn cast(syntax: SyntaxNode) -> Option<Self> {
11736 if Self::can_cast(syntax.kind()) {
11737 Some(Self { syntax })
11738 } else {
11739 None
11740 }
11741 }
11742 #[inline]
11743 fn syntax(&self) -> &SyntaxNode {
11744 &self.syntax
11745 }
11746}
11747impl AstNode for AlterTextSearchDictionary {
11748 #[inline]
11749 fn can_cast(kind: SyntaxKind) -> bool {
11750 kind == SyntaxKind::ALTER_TEXT_SEARCH_DICTIONARY
11751 }
11752 #[inline]
11753 fn cast(syntax: SyntaxNode) -> Option<Self> {
11754 if Self::can_cast(syntax.kind()) {
11755 Some(Self { syntax })
11756 } else {
11757 None
11758 }
11759 }
11760 #[inline]
11761 fn syntax(&self) -> &SyntaxNode {
11762 &self.syntax
11763 }
11764}
11765impl AstNode for AlterTextSearchParser {
11766 #[inline]
11767 fn can_cast(kind: SyntaxKind) -> bool {
11768 kind == SyntaxKind::ALTER_TEXT_SEARCH_PARSER
11769 }
11770 #[inline]
11771 fn cast(syntax: SyntaxNode) -> Option<Self> {
11772 if Self::can_cast(syntax.kind()) {
11773 Some(Self { syntax })
11774 } else {
11775 None
11776 }
11777 }
11778 #[inline]
11779 fn syntax(&self) -> &SyntaxNode {
11780 &self.syntax
11781 }
11782}
11783impl AstNode for AlterTextSearchTemplate {
11784 #[inline]
11785 fn can_cast(kind: SyntaxKind) -> bool {
11786 kind == SyntaxKind::ALTER_TEXT_SEARCH_TEMPLATE
11787 }
11788 #[inline]
11789 fn cast(syntax: SyntaxNode) -> Option<Self> {
11790 if Self::can_cast(syntax.kind()) {
11791 Some(Self { syntax })
11792 } else {
11793 None
11794 }
11795 }
11796 #[inline]
11797 fn syntax(&self) -> &SyntaxNode {
11798 &self.syntax
11799 }
11800}
11801impl AstNode for AlterTrigger {
11802 #[inline]
11803 fn can_cast(kind: SyntaxKind) -> bool {
11804 kind == SyntaxKind::ALTER_TRIGGER
11805 }
11806 #[inline]
11807 fn cast(syntax: SyntaxNode) -> Option<Self> {
11808 if Self::can_cast(syntax.kind()) {
11809 Some(Self { syntax })
11810 } else {
11811 None
11812 }
11813 }
11814 #[inline]
11815 fn syntax(&self) -> &SyntaxNode {
11816 &self.syntax
11817 }
11818}
11819impl AstNode for AlterType {
11820 #[inline]
11821 fn can_cast(kind: SyntaxKind) -> bool {
11822 kind == SyntaxKind::ALTER_TYPE
11823 }
11824 #[inline]
11825 fn cast(syntax: SyntaxNode) -> Option<Self> {
11826 if Self::can_cast(syntax.kind()) {
11827 Some(Self { syntax })
11828 } else {
11829 None
11830 }
11831 }
11832 #[inline]
11833 fn syntax(&self) -> &SyntaxNode {
11834 &self.syntax
11835 }
11836}
11837impl AstNode for AlterUser {
11838 #[inline]
11839 fn can_cast(kind: SyntaxKind) -> bool {
11840 kind == SyntaxKind::ALTER_USER
11841 }
11842 #[inline]
11843 fn cast(syntax: SyntaxNode) -> Option<Self> {
11844 if Self::can_cast(syntax.kind()) {
11845 Some(Self { syntax })
11846 } else {
11847 None
11848 }
11849 }
11850 #[inline]
11851 fn syntax(&self) -> &SyntaxNode {
11852 &self.syntax
11853 }
11854}
11855impl AstNode for AlterUserMapping {
11856 #[inline]
11857 fn can_cast(kind: SyntaxKind) -> bool {
11858 kind == SyntaxKind::ALTER_USER_MAPPING
11859 }
11860 #[inline]
11861 fn cast(syntax: SyntaxNode) -> Option<Self> {
11862 if Self::can_cast(syntax.kind()) {
11863 Some(Self { syntax })
11864 } else {
11865 None
11866 }
11867 }
11868 #[inline]
11869 fn syntax(&self) -> &SyntaxNode {
11870 &self.syntax
11871 }
11872}
11873impl AstNode for AlterView {
11874 #[inline]
11875 fn can_cast(kind: SyntaxKind) -> bool {
11876 kind == SyntaxKind::ALTER_VIEW
11877 }
11878 #[inline]
11879 fn cast(syntax: SyntaxNode) -> Option<Self> {
11880 if Self::can_cast(syntax.kind()) {
11881 Some(Self { syntax })
11882 } else {
11883 None
11884 }
11885 }
11886 #[inline]
11887 fn syntax(&self) -> &SyntaxNode {
11888 &self.syntax
11889 }
11890}
11891impl AstNode for Analyze {
11892 #[inline]
11893 fn can_cast(kind: SyntaxKind) -> bool {
11894 kind == SyntaxKind::ANALYZE
11895 }
11896 #[inline]
11897 fn cast(syntax: SyntaxNode) -> Option<Self> {
11898 if Self::can_cast(syntax.kind()) {
11899 Some(Self { syntax })
11900 } else {
11901 None
11902 }
11903 }
11904 #[inline]
11905 fn syntax(&self) -> &SyntaxNode {
11906 &self.syntax
11907 }
11908}
11909impl AstNode for Arg {
11910 #[inline]
11911 fn can_cast(kind: SyntaxKind) -> bool {
11912 kind == SyntaxKind::ARG
11913 }
11914 #[inline]
11915 fn cast(syntax: SyntaxNode) -> Option<Self> {
11916 if Self::can_cast(syntax.kind()) {
11917 Some(Self { syntax })
11918 } else {
11919 None
11920 }
11921 }
11922 #[inline]
11923 fn syntax(&self) -> &SyntaxNode {
11924 &self.syntax
11925 }
11926}
11927impl AstNode for ArgList {
11928 #[inline]
11929 fn can_cast(kind: SyntaxKind) -> bool {
11930 kind == SyntaxKind::ARG_LIST
11931 }
11932 #[inline]
11933 fn cast(syntax: SyntaxNode) -> Option<Self> {
11934 if Self::can_cast(syntax.kind()) {
11935 Some(Self { syntax })
11936 } else {
11937 None
11938 }
11939 }
11940 #[inline]
11941 fn syntax(&self) -> &SyntaxNode {
11942 &self.syntax
11943 }
11944}
11945impl AstNode for ArrayExpr {
11946 #[inline]
11947 fn can_cast(kind: SyntaxKind) -> bool {
11948 kind == SyntaxKind::ARRAY_EXPR
11949 }
11950 #[inline]
11951 fn cast(syntax: SyntaxNode) -> Option<Self> {
11952 if Self::can_cast(syntax.kind()) {
11953 Some(Self { syntax })
11954 } else {
11955 None
11956 }
11957 }
11958 #[inline]
11959 fn syntax(&self) -> &SyntaxNode {
11960 &self.syntax
11961 }
11962}
11963impl AstNode for ArrayType {
11964 #[inline]
11965 fn can_cast(kind: SyntaxKind) -> bool {
11966 kind == SyntaxKind::ARRAY_TYPE
11967 }
11968 #[inline]
11969 fn cast(syntax: SyntaxNode) -> Option<Self> {
11970 if Self::can_cast(syntax.kind()) {
11971 Some(Self { syntax })
11972 } else {
11973 None
11974 }
11975 }
11976 #[inline]
11977 fn syntax(&self) -> &SyntaxNode {
11978 &self.syntax
11979 }
11980}
11981impl AstNode for AsFuncOption {
11982 #[inline]
11983 fn can_cast(kind: SyntaxKind) -> bool {
11984 kind == SyntaxKind::AS_FUNC_OPTION
11985 }
11986 #[inline]
11987 fn cast(syntax: SyntaxNode) -> Option<Self> {
11988 if Self::can_cast(syntax.kind()) {
11989 Some(Self { syntax })
11990 } else {
11991 None
11992 }
11993 }
11994 #[inline]
11995 fn syntax(&self) -> &SyntaxNode {
11996 &self.syntax
11997 }
11998}
11999impl AstNode for AsName {
12000 #[inline]
12001 fn can_cast(kind: SyntaxKind) -> bool {
12002 kind == SyntaxKind::AS_NAME
12003 }
12004 #[inline]
12005 fn cast(syntax: SyntaxNode) -> Option<Self> {
12006 if Self::can_cast(syntax.kind()) {
12007 Some(Self { syntax })
12008 } else {
12009 None
12010 }
12011 }
12012 #[inline]
12013 fn syntax(&self) -> &SyntaxNode {
12014 &self.syntax
12015 }
12016}
12017impl AstNode for AtTimeZone {
12018 #[inline]
12019 fn can_cast(kind: SyntaxKind) -> bool {
12020 kind == SyntaxKind::AT_TIME_ZONE
12021 }
12022 #[inline]
12023 fn cast(syntax: SyntaxNode) -> Option<Self> {
12024 if Self::can_cast(syntax.kind()) {
12025 Some(Self { syntax })
12026 } else {
12027 None
12028 }
12029 }
12030 #[inline]
12031 fn syntax(&self) -> &SyntaxNode {
12032 &self.syntax
12033 }
12034}
12035impl AstNode for AttachPartition {
12036 #[inline]
12037 fn can_cast(kind: SyntaxKind) -> bool {
12038 kind == SyntaxKind::ATTACH_PARTITION
12039 }
12040 #[inline]
12041 fn cast(syntax: SyntaxNode) -> Option<Self> {
12042 if Self::can_cast(syntax.kind()) {
12043 Some(Self { syntax })
12044 } else {
12045 None
12046 }
12047 }
12048 #[inline]
12049 fn syntax(&self) -> &SyntaxNode {
12050 &self.syntax
12051 }
12052}
12053impl AstNode for AttributeList {
12054 #[inline]
12055 fn can_cast(kind: SyntaxKind) -> bool {
12056 kind == SyntaxKind::ATTRIBUTE_LIST
12057 }
12058 #[inline]
12059 fn cast(syntax: SyntaxNode) -> Option<Self> {
12060 if Self::can_cast(syntax.kind()) {
12061 Some(Self { syntax })
12062 } else {
12063 None
12064 }
12065 }
12066 #[inline]
12067 fn syntax(&self) -> &SyntaxNode {
12068 &self.syntax
12069 }
12070}
12071impl AstNode for AttributeOption {
12072 #[inline]
12073 fn can_cast(kind: SyntaxKind) -> bool {
12074 kind == SyntaxKind::ATTRIBUTE_OPTION
12075 }
12076 #[inline]
12077 fn cast(syntax: SyntaxNode) -> Option<Self> {
12078 if Self::can_cast(syntax.kind()) {
12079 Some(Self { syntax })
12080 } else {
12081 None
12082 }
12083 }
12084 #[inline]
12085 fn syntax(&self) -> &SyntaxNode {
12086 &self.syntax
12087 }
12088}
12089impl AstNode for Begin {
12090 #[inline]
12091 fn can_cast(kind: SyntaxKind) -> bool {
12092 kind == SyntaxKind::BEGIN
12093 }
12094 #[inline]
12095 fn cast(syntax: SyntaxNode) -> Option<Self> {
12096 if Self::can_cast(syntax.kind()) {
12097 Some(Self { syntax })
12098 } else {
12099 None
12100 }
12101 }
12102 #[inline]
12103 fn syntax(&self) -> &SyntaxNode {
12104 &self.syntax
12105 }
12106}
12107impl AstNode for BeginFuncOption {
12108 #[inline]
12109 fn can_cast(kind: SyntaxKind) -> bool {
12110 kind == SyntaxKind::BEGIN_FUNC_OPTION
12111 }
12112 #[inline]
12113 fn cast(syntax: SyntaxNode) -> Option<Self> {
12114 if Self::can_cast(syntax.kind()) {
12115 Some(Self { syntax })
12116 } else {
12117 None
12118 }
12119 }
12120 #[inline]
12121 fn syntax(&self) -> &SyntaxNode {
12122 &self.syntax
12123 }
12124}
12125impl AstNode for BetweenExpr {
12126 #[inline]
12127 fn can_cast(kind: SyntaxKind) -> bool {
12128 kind == SyntaxKind::BETWEEN_EXPR
12129 }
12130 #[inline]
12131 fn cast(syntax: SyntaxNode) -> Option<Self> {
12132 if Self::can_cast(syntax.kind()) {
12133 Some(Self { syntax })
12134 } else {
12135 None
12136 }
12137 }
12138 #[inline]
12139 fn syntax(&self) -> &SyntaxNode {
12140 &self.syntax
12141 }
12142}
12143impl AstNode for BinExpr {
12144 #[inline]
12145 fn can_cast(kind: SyntaxKind) -> bool {
12146 kind == SyntaxKind::BIN_EXPR
12147 }
12148 #[inline]
12149 fn cast(syntax: SyntaxNode) -> Option<Self> {
12150 if Self::can_cast(syntax.kind()) {
12151 Some(Self { syntax })
12152 } else {
12153 None
12154 }
12155 }
12156 #[inline]
12157 fn syntax(&self) -> &SyntaxNode {
12158 &self.syntax
12159 }
12160}
12161impl AstNode for BitType {
12162 #[inline]
12163 fn can_cast(kind: SyntaxKind) -> bool {
12164 kind == SyntaxKind::BIT_TYPE
12165 }
12166 #[inline]
12167 fn cast(syntax: SyntaxNode) -> Option<Self> {
12168 if Self::can_cast(syntax.kind()) {
12169 Some(Self { syntax })
12170 } else {
12171 None
12172 }
12173 }
12174 #[inline]
12175 fn syntax(&self) -> &SyntaxNode {
12176 &self.syntax
12177 }
12178}
12179impl AstNode for Call {
12180 #[inline]
12181 fn can_cast(kind: SyntaxKind) -> bool {
12182 kind == SyntaxKind::CALL
12183 }
12184 #[inline]
12185 fn cast(syntax: SyntaxNode) -> Option<Self> {
12186 if Self::can_cast(syntax.kind()) {
12187 Some(Self { syntax })
12188 } else {
12189 None
12190 }
12191 }
12192 #[inline]
12193 fn syntax(&self) -> &SyntaxNode {
12194 &self.syntax
12195 }
12196}
12197impl AstNode for CallExpr {
12198 #[inline]
12199 fn can_cast(kind: SyntaxKind) -> bool {
12200 kind == SyntaxKind::CALL_EXPR
12201 }
12202 #[inline]
12203 fn cast(syntax: SyntaxNode) -> Option<Self> {
12204 if Self::can_cast(syntax.kind()) {
12205 Some(Self { syntax })
12206 } else {
12207 None
12208 }
12209 }
12210 #[inline]
12211 fn syntax(&self) -> &SyntaxNode {
12212 &self.syntax
12213 }
12214}
12215impl AstNode for Cascade {
12216 #[inline]
12217 fn can_cast(kind: SyntaxKind) -> bool {
12218 kind == SyntaxKind::CASCADE
12219 }
12220 #[inline]
12221 fn cast(syntax: SyntaxNode) -> Option<Self> {
12222 if Self::can_cast(syntax.kind()) {
12223 Some(Self { syntax })
12224 } else {
12225 None
12226 }
12227 }
12228 #[inline]
12229 fn syntax(&self) -> &SyntaxNode {
12230 &self.syntax
12231 }
12232}
12233impl AstNode for CaseExpr {
12234 #[inline]
12235 fn can_cast(kind: SyntaxKind) -> bool {
12236 kind == SyntaxKind::CASE_EXPR
12237 }
12238 #[inline]
12239 fn cast(syntax: SyntaxNode) -> Option<Self> {
12240 if Self::can_cast(syntax.kind()) {
12241 Some(Self { syntax })
12242 } else {
12243 None
12244 }
12245 }
12246 #[inline]
12247 fn syntax(&self) -> &SyntaxNode {
12248 &self.syntax
12249 }
12250}
12251impl AstNode for CastExpr {
12252 #[inline]
12253 fn can_cast(kind: SyntaxKind) -> bool {
12254 kind == SyntaxKind::CAST_EXPR
12255 }
12256 #[inline]
12257 fn cast(syntax: SyntaxNode) -> Option<Self> {
12258 if Self::can_cast(syntax.kind()) {
12259 Some(Self { syntax })
12260 } else {
12261 None
12262 }
12263 }
12264 #[inline]
12265 fn syntax(&self) -> &SyntaxNode {
12266 &self.syntax
12267 }
12268}
12269impl AstNode for CharType {
12270 #[inline]
12271 fn can_cast(kind: SyntaxKind) -> bool {
12272 kind == SyntaxKind::CHAR_TYPE
12273 }
12274 #[inline]
12275 fn cast(syntax: SyntaxNode) -> Option<Self> {
12276 if Self::can_cast(syntax.kind()) {
12277 Some(Self { syntax })
12278 } else {
12279 None
12280 }
12281 }
12282 #[inline]
12283 fn syntax(&self) -> &SyntaxNode {
12284 &self.syntax
12285 }
12286}
12287impl AstNode for CheckConstraint {
12288 #[inline]
12289 fn can_cast(kind: SyntaxKind) -> bool {
12290 kind == SyntaxKind::CHECK_CONSTRAINT
12291 }
12292 #[inline]
12293 fn cast(syntax: SyntaxNode) -> Option<Self> {
12294 if Self::can_cast(syntax.kind()) {
12295 Some(Self { syntax })
12296 } else {
12297 None
12298 }
12299 }
12300 #[inline]
12301 fn syntax(&self) -> &SyntaxNode {
12302 &self.syntax
12303 }
12304}
12305impl AstNode for Checkpoint {
12306 #[inline]
12307 fn can_cast(kind: SyntaxKind) -> bool {
12308 kind == SyntaxKind::CHECKPOINT
12309 }
12310 #[inline]
12311 fn cast(syntax: SyntaxNode) -> Option<Self> {
12312 if Self::can_cast(syntax.kind()) {
12313 Some(Self { syntax })
12314 } else {
12315 None
12316 }
12317 }
12318 #[inline]
12319 fn syntax(&self) -> &SyntaxNode {
12320 &self.syntax
12321 }
12322}
12323impl AstNode for Close {
12324 #[inline]
12325 fn can_cast(kind: SyntaxKind) -> bool {
12326 kind == SyntaxKind::CLOSE
12327 }
12328 #[inline]
12329 fn cast(syntax: SyntaxNode) -> Option<Self> {
12330 if Self::can_cast(syntax.kind()) {
12331 Some(Self { syntax })
12332 } else {
12333 None
12334 }
12335 }
12336 #[inline]
12337 fn syntax(&self) -> &SyntaxNode {
12338 &self.syntax
12339 }
12340}
12341impl AstNode for Cluster {
12342 #[inline]
12343 fn can_cast(kind: SyntaxKind) -> bool {
12344 kind == SyntaxKind::CLUSTER
12345 }
12346 #[inline]
12347 fn cast(syntax: SyntaxNode) -> Option<Self> {
12348 if Self::can_cast(syntax.kind()) {
12349 Some(Self { syntax })
12350 } else {
12351 None
12352 }
12353 }
12354 #[inline]
12355 fn syntax(&self) -> &SyntaxNode {
12356 &self.syntax
12357 }
12358}
12359impl AstNode for ClusterOn {
12360 #[inline]
12361 fn can_cast(kind: SyntaxKind) -> bool {
12362 kind == SyntaxKind::CLUSTER_ON
12363 }
12364 #[inline]
12365 fn cast(syntax: SyntaxNode) -> Option<Self> {
12366 if Self::can_cast(syntax.kind()) {
12367 Some(Self { syntax })
12368 } else {
12369 None
12370 }
12371 }
12372 #[inline]
12373 fn syntax(&self) -> &SyntaxNode {
12374 &self.syntax
12375 }
12376}
12377impl AstNode for Collate {
12378 #[inline]
12379 fn can_cast(kind: SyntaxKind) -> bool {
12380 kind == SyntaxKind::COLLATE
12381 }
12382 #[inline]
12383 fn cast(syntax: SyntaxNode) -> Option<Self> {
12384 if Self::can_cast(syntax.kind()) {
12385 Some(Self { syntax })
12386 } else {
12387 None
12388 }
12389 }
12390 #[inline]
12391 fn syntax(&self) -> &SyntaxNode {
12392 &self.syntax
12393 }
12394}
12395impl AstNode for ColonColon {
12396 #[inline]
12397 fn can_cast(kind: SyntaxKind) -> bool {
12398 kind == SyntaxKind::COLON_COLON
12399 }
12400 #[inline]
12401 fn cast(syntax: SyntaxNode) -> Option<Self> {
12402 if Self::can_cast(syntax.kind()) {
12403 Some(Self { syntax })
12404 } else {
12405 None
12406 }
12407 }
12408 #[inline]
12409 fn syntax(&self) -> &SyntaxNode {
12410 &self.syntax
12411 }
12412}
12413impl AstNode for ColonEq {
12414 #[inline]
12415 fn can_cast(kind: SyntaxKind) -> bool {
12416 kind == SyntaxKind::COLON_EQ
12417 }
12418 #[inline]
12419 fn cast(syntax: SyntaxNode) -> Option<Self> {
12420 if Self::can_cast(syntax.kind()) {
12421 Some(Self { syntax })
12422 } else {
12423 None
12424 }
12425 }
12426 #[inline]
12427 fn syntax(&self) -> &SyntaxNode {
12428 &self.syntax
12429 }
12430}
12431impl AstNode for Column {
12432 #[inline]
12433 fn can_cast(kind: SyntaxKind) -> bool {
12434 kind == SyntaxKind::COLUMN
12435 }
12436 #[inline]
12437 fn cast(syntax: SyntaxNode) -> Option<Self> {
12438 if Self::can_cast(syntax.kind()) {
12439 Some(Self { syntax })
12440 } else {
12441 None
12442 }
12443 }
12444 #[inline]
12445 fn syntax(&self) -> &SyntaxNode {
12446 &self.syntax
12447 }
12448}
12449impl AstNode for ColumnList {
12450 #[inline]
12451 fn can_cast(kind: SyntaxKind) -> bool {
12452 kind == SyntaxKind::COLUMN_LIST
12453 }
12454 #[inline]
12455 fn cast(syntax: SyntaxNode) -> Option<Self> {
12456 if Self::can_cast(syntax.kind()) {
12457 Some(Self { syntax })
12458 } else {
12459 None
12460 }
12461 }
12462 #[inline]
12463 fn syntax(&self) -> &SyntaxNode {
12464 &self.syntax
12465 }
12466}
12467impl AstNode for CommentOn {
12468 #[inline]
12469 fn can_cast(kind: SyntaxKind) -> bool {
12470 kind == SyntaxKind::COMMENT_ON
12471 }
12472 #[inline]
12473 fn cast(syntax: SyntaxNode) -> Option<Self> {
12474 if Self::can_cast(syntax.kind()) {
12475 Some(Self { syntax })
12476 } else {
12477 None
12478 }
12479 }
12480 #[inline]
12481 fn syntax(&self) -> &SyntaxNode {
12482 &self.syntax
12483 }
12484}
12485impl AstNode for Commit {
12486 #[inline]
12487 fn can_cast(kind: SyntaxKind) -> bool {
12488 kind == SyntaxKind::COMMIT
12489 }
12490 #[inline]
12491 fn cast(syntax: SyntaxNode) -> Option<Self> {
12492 if Self::can_cast(syntax.kind()) {
12493 Some(Self { syntax })
12494 } else {
12495 None
12496 }
12497 }
12498 #[inline]
12499 fn syntax(&self) -> &SyntaxNode {
12500 &self.syntax
12501 }
12502}
12503impl AstNode for CompoundSelect {
12504 #[inline]
12505 fn can_cast(kind: SyntaxKind) -> bool {
12506 kind == SyntaxKind::COMPOUND_SELECT
12507 }
12508 #[inline]
12509 fn cast(syntax: SyntaxNode) -> Option<Self> {
12510 if Self::can_cast(syntax.kind()) {
12511 Some(Self { syntax })
12512 } else {
12513 None
12514 }
12515 }
12516 #[inline]
12517 fn syntax(&self) -> &SyntaxNode {
12518 &self.syntax
12519 }
12520}
12521impl AstNode for CompressionMethod {
12522 #[inline]
12523 fn can_cast(kind: SyntaxKind) -> bool {
12524 kind == SyntaxKind::COMPRESSION_METHOD
12525 }
12526 #[inline]
12527 fn cast(syntax: SyntaxNode) -> Option<Self> {
12528 if Self::can_cast(syntax.kind()) {
12529 Some(Self { syntax })
12530 } else {
12531 None
12532 }
12533 }
12534 #[inline]
12535 fn syntax(&self) -> &SyntaxNode {
12536 &self.syntax
12537 }
12538}
12539impl AstNode for ConstraintExclusion {
12540 #[inline]
12541 fn can_cast(kind: SyntaxKind) -> bool {
12542 kind == SyntaxKind::CONSTRAINT_EXCLUSION
12543 }
12544 #[inline]
12545 fn cast(syntax: SyntaxNode) -> Option<Self> {
12546 if Self::can_cast(syntax.kind()) {
12547 Some(Self { syntax })
12548 } else {
12549 None
12550 }
12551 }
12552 #[inline]
12553 fn syntax(&self) -> &SyntaxNode {
12554 &self.syntax
12555 }
12556}
12557impl AstNode for ConstraintExclusionList {
12558 #[inline]
12559 fn can_cast(kind: SyntaxKind) -> bool {
12560 kind == SyntaxKind::CONSTRAINT_EXCLUSION_LIST
12561 }
12562 #[inline]
12563 fn cast(syntax: SyntaxNode) -> Option<Self> {
12564 if Self::can_cast(syntax.kind()) {
12565 Some(Self { syntax })
12566 } else {
12567 None
12568 }
12569 }
12570 #[inline]
12571 fn syntax(&self) -> &SyntaxNode {
12572 &self.syntax
12573 }
12574}
12575impl AstNode for ConstraintIncludeClause {
12576 #[inline]
12577 fn can_cast(kind: SyntaxKind) -> bool {
12578 kind == SyntaxKind::CONSTRAINT_INCLUDE_CLAUSE
12579 }
12580 #[inline]
12581 fn cast(syntax: SyntaxNode) -> Option<Self> {
12582 if Self::can_cast(syntax.kind()) {
12583 Some(Self { syntax })
12584 } else {
12585 None
12586 }
12587 }
12588 #[inline]
12589 fn syntax(&self) -> &SyntaxNode {
12590 &self.syntax
12591 }
12592}
12593impl AstNode for ConstraintIndexMethod {
12594 #[inline]
12595 fn can_cast(kind: SyntaxKind) -> bool {
12596 kind == SyntaxKind::CONSTRAINT_INDEX_METHOD
12597 }
12598 #[inline]
12599 fn cast(syntax: SyntaxNode) -> Option<Self> {
12600 if Self::can_cast(syntax.kind()) {
12601 Some(Self { syntax })
12602 } else {
12603 None
12604 }
12605 }
12606 #[inline]
12607 fn syntax(&self) -> &SyntaxNode {
12608 &self.syntax
12609 }
12610}
12611impl AstNode for ConstraintIndexTablespace {
12612 #[inline]
12613 fn can_cast(kind: SyntaxKind) -> bool {
12614 kind == SyntaxKind::CONSTRAINT_INDEX_TABLESPACE
12615 }
12616 #[inline]
12617 fn cast(syntax: SyntaxNode) -> Option<Self> {
12618 if Self::can_cast(syntax.kind()) {
12619 Some(Self { syntax })
12620 } else {
12621 None
12622 }
12623 }
12624 #[inline]
12625 fn syntax(&self) -> &SyntaxNode {
12626 &self.syntax
12627 }
12628}
12629impl AstNode for ConstraintWhereClause {
12630 #[inline]
12631 fn can_cast(kind: SyntaxKind) -> bool {
12632 kind == SyntaxKind::CONSTRAINT_WHERE_CLAUSE
12633 }
12634 #[inline]
12635 fn cast(syntax: SyntaxNode) -> Option<Self> {
12636 if Self::can_cast(syntax.kind()) {
12637 Some(Self { syntax })
12638 } else {
12639 None
12640 }
12641 }
12642 #[inline]
12643 fn syntax(&self) -> &SyntaxNode {
12644 &self.syntax
12645 }
12646}
12647impl AstNode for Copy {
12648 #[inline]
12649 fn can_cast(kind: SyntaxKind) -> bool {
12650 kind == SyntaxKind::COPY
12651 }
12652 #[inline]
12653 fn cast(syntax: SyntaxNode) -> Option<Self> {
12654 if Self::can_cast(syntax.kind()) {
12655 Some(Self { syntax })
12656 } else {
12657 None
12658 }
12659 }
12660 #[inline]
12661 fn syntax(&self) -> &SyntaxNode {
12662 &self.syntax
12663 }
12664}
12665impl AstNode for CostFuncOption {
12666 #[inline]
12667 fn can_cast(kind: SyntaxKind) -> bool {
12668 kind == SyntaxKind::COST_FUNC_OPTION
12669 }
12670 #[inline]
12671 fn cast(syntax: SyntaxNode) -> Option<Self> {
12672 if Self::can_cast(syntax.kind()) {
12673 Some(Self { syntax })
12674 } else {
12675 None
12676 }
12677 }
12678 #[inline]
12679 fn syntax(&self) -> &SyntaxNode {
12680 &self.syntax
12681 }
12682}
12683impl AstNode for CreateAccessMethod {
12684 #[inline]
12685 fn can_cast(kind: SyntaxKind) -> bool {
12686 kind == SyntaxKind::CREATE_ACCESS_METHOD
12687 }
12688 #[inline]
12689 fn cast(syntax: SyntaxNode) -> Option<Self> {
12690 if Self::can_cast(syntax.kind()) {
12691 Some(Self { syntax })
12692 } else {
12693 None
12694 }
12695 }
12696 #[inline]
12697 fn syntax(&self) -> &SyntaxNode {
12698 &self.syntax
12699 }
12700}
12701impl AstNode for CreateAggregate {
12702 #[inline]
12703 fn can_cast(kind: SyntaxKind) -> bool {
12704 kind == SyntaxKind::CREATE_AGGREGATE
12705 }
12706 #[inline]
12707 fn cast(syntax: SyntaxNode) -> Option<Self> {
12708 if Self::can_cast(syntax.kind()) {
12709 Some(Self { syntax })
12710 } else {
12711 None
12712 }
12713 }
12714 #[inline]
12715 fn syntax(&self) -> &SyntaxNode {
12716 &self.syntax
12717 }
12718}
12719impl AstNode for CreateCast {
12720 #[inline]
12721 fn can_cast(kind: SyntaxKind) -> bool {
12722 kind == SyntaxKind::CREATE_CAST
12723 }
12724 #[inline]
12725 fn cast(syntax: SyntaxNode) -> Option<Self> {
12726 if Self::can_cast(syntax.kind()) {
12727 Some(Self { syntax })
12728 } else {
12729 None
12730 }
12731 }
12732 #[inline]
12733 fn syntax(&self) -> &SyntaxNode {
12734 &self.syntax
12735 }
12736}
12737impl AstNode for CreateCollation {
12738 #[inline]
12739 fn can_cast(kind: SyntaxKind) -> bool {
12740 kind == SyntaxKind::CREATE_COLLATION
12741 }
12742 #[inline]
12743 fn cast(syntax: SyntaxNode) -> Option<Self> {
12744 if Self::can_cast(syntax.kind()) {
12745 Some(Self { syntax })
12746 } else {
12747 None
12748 }
12749 }
12750 #[inline]
12751 fn syntax(&self) -> &SyntaxNode {
12752 &self.syntax
12753 }
12754}
12755impl AstNode for CreateConversion {
12756 #[inline]
12757 fn can_cast(kind: SyntaxKind) -> bool {
12758 kind == SyntaxKind::CREATE_CONVERSION
12759 }
12760 #[inline]
12761 fn cast(syntax: SyntaxNode) -> Option<Self> {
12762 if Self::can_cast(syntax.kind()) {
12763 Some(Self { syntax })
12764 } else {
12765 None
12766 }
12767 }
12768 #[inline]
12769 fn syntax(&self) -> &SyntaxNode {
12770 &self.syntax
12771 }
12772}
12773impl AstNode for CreateDatabase {
12774 #[inline]
12775 fn can_cast(kind: SyntaxKind) -> bool {
12776 kind == SyntaxKind::CREATE_DATABASE
12777 }
12778 #[inline]
12779 fn cast(syntax: SyntaxNode) -> Option<Self> {
12780 if Self::can_cast(syntax.kind()) {
12781 Some(Self { syntax })
12782 } else {
12783 None
12784 }
12785 }
12786 #[inline]
12787 fn syntax(&self) -> &SyntaxNode {
12788 &self.syntax
12789 }
12790}
12791impl AstNode for CreateDomain {
12792 #[inline]
12793 fn can_cast(kind: SyntaxKind) -> bool {
12794 kind == SyntaxKind::CREATE_DOMAIN
12795 }
12796 #[inline]
12797 fn cast(syntax: SyntaxNode) -> Option<Self> {
12798 if Self::can_cast(syntax.kind()) {
12799 Some(Self { syntax })
12800 } else {
12801 None
12802 }
12803 }
12804 #[inline]
12805 fn syntax(&self) -> &SyntaxNode {
12806 &self.syntax
12807 }
12808}
12809impl AstNode for CreateEventTrigger {
12810 #[inline]
12811 fn can_cast(kind: SyntaxKind) -> bool {
12812 kind == SyntaxKind::CREATE_EVENT_TRIGGER
12813 }
12814 #[inline]
12815 fn cast(syntax: SyntaxNode) -> Option<Self> {
12816 if Self::can_cast(syntax.kind()) {
12817 Some(Self { syntax })
12818 } else {
12819 None
12820 }
12821 }
12822 #[inline]
12823 fn syntax(&self) -> &SyntaxNode {
12824 &self.syntax
12825 }
12826}
12827impl AstNode for CreateExtension {
12828 #[inline]
12829 fn can_cast(kind: SyntaxKind) -> bool {
12830 kind == SyntaxKind::CREATE_EXTENSION
12831 }
12832 #[inline]
12833 fn cast(syntax: SyntaxNode) -> Option<Self> {
12834 if Self::can_cast(syntax.kind()) {
12835 Some(Self { syntax })
12836 } else {
12837 None
12838 }
12839 }
12840 #[inline]
12841 fn syntax(&self) -> &SyntaxNode {
12842 &self.syntax
12843 }
12844}
12845impl AstNode for CreateForeignDataWrapper {
12846 #[inline]
12847 fn can_cast(kind: SyntaxKind) -> bool {
12848 kind == SyntaxKind::CREATE_FOREIGN_DATA_WRAPPER
12849 }
12850 #[inline]
12851 fn cast(syntax: SyntaxNode) -> Option<Self> {
12852 if Self::can_cast(syntax.kind()) {
12853 Some(Self { syntax })
12854 } else {
12855 None
12856 }
12857 }
12858 #[inline]
12859 fn syntax(&self) -> &SyntaxNode {
12860 &self.syntax
12861 }
12862}
12863impl AstNode for CreateForeignTable {
12864 #[inline]
12865 fn can_cast(kind: SyntaxKind) -> bool {
12866 kind == SyntaxKind::CREATE_FOREIGN_TABLE
12867 }
12868 #[inline]
12869 fn cast(syntax: SyntaxNode) -> Option<Self> {
12870 if Self::can_cast(syntax.kind()) {
12871 Some(Self { syntax })
12872 } else {
12873 None
12874 }
12875 }
12876 #[inline]
12877 fn syntax(&self) -> &SyntaxNode {
12878 &self.syntax
12879 }
12880}
12881impl AstNode for CreateFunction {
12882 #[inline]
12883 fn can_cast(kind: SyntaxKind) -> bool {
12884 kind == SyntaxKind::CREATE_FUNCTION
12885 }
12886 #[inline]
12887 fn cast(syntax: SyntaxNode) -> Option<Self> {
12888 if Self::can_cast(syntax.kind()) {
12889 Some(Self { syntax })
12890 } else {
12891 None
12892 }
12893 }
12894 #[inline]
12895 fn syntax(&self) -> &SyntaxNode {
12896 &self.syntax
12897 }
12898}
12899impl AstNode for CreateGroup {
12900 #[inline]
12901 fn can_cast(kind: SyntaxKind) -> bool {
12902 kind == SyntaxKind::CREATE_GROUP
12903 }
12904 #[inline]
12905 fn cast(syntax: SyntaxNode) -> Option<Self> {
12906 if Self::can_cast(syntax.kind()) {
12907 Some(Self { syntax })
12908 } else {
12909 None
12910 }
12911 }
12912 #[inline]
12913 fn syntax(&self) -> &SyntaxNode {
12914 &self.syntax
12915 }
12916}
12917impl AstNode for CreateIndex {
12918 #[inline]
12919 fn can_cast(kind: SyntaxKind) -> bool {
12920 kind == SyntaxKind::CREATE_INDEX
12921 }
12922 #[inline]
12923 fn cast(syntax: SyntaxNode) -> Option<Self> {
12924 if Self::can_cast(syntax.kind()) {
12925 Some(Self { syntax })
12926 } else {
12927 None
12928 }
12929 }
12930 #[inline]
12931 fn syntax(&self) -> &SyntaxNode {
12932 &self.syntax
12933 }
12934}
12935impl AstNode for CreateLanguage {
12936 #[inline]
12937 fn can_cast(kind: SyntaxKind) -> bool {
12938 kind == SyntaxKind::CREATE_LANGUAGE
12939 }
12940 #[inline]
12941 fn cast(syntax: SyntaxNode) -> Option<Self> {
12942 if Self::can_cast(syntax.kind()) {
12943 Some(Self { syntax })
12944 } else {
12945 None
12946 }
12947 }
12948 #[inline]
12949 fn syntax(&self) -> &SyntaxNode {
12950 &self.syntax
12951 }
12952}
12953impl AstNode for CreateMaterializedView {
12954 #[inline]
12955 fn can_cast(kind: SyntaxKind) -> bool {
12956 kind == SyntaxKind::CREATE_MATERIALIZED_VIEW
12957 }
12958 #[inline]
12959 fn cast(syntax: SyntaxNode) -> Option<Self> {
12960 if Self::can_cast(syntax.kind()) {
12961 Some(Self { syntax })
12962 } else {
12963 None
12964 }
12965 }
12966 #[inline]
12967 fn syntax(&self) -> &SyntaxNode {
12968 &self.syntax
12969 }
12970}
12971impl AstNode for CreateOperator {
12972 #[inline]
12973 fn can_cast(kind: SyntaxKind) -> bool {
12974 kind == SyntaxKind::CREATE_OPERATOR
12975 }
12976 #[inline]
12977 fn cast(syntax: SyntaxNode) -> Option<Self> {
12978 if Self::can_cast(syntax.kind()) {
12979 Some(Self { syntax })
12980 } else {
12981 None
12982 }
12983 }
12984 #[inline]
12985 fn syntax(&self) -> &SyntaxNode {
12986 &self.syntax
12987 }
12988}
12989impl AstNode for CreateOperatorClass {
12990 #[inline]
12991 fn can_cast(kind: SyntaxKind) -> bool {
12992 kind == SyntaxKind::CREATE_OPERATOR_CLASS
12993 }
12994 #[inline]
12995 fn cast(syntax: SyntaxNode) -> Option<Self> {
12996 if Self::can_cast(syntax.kind()) {
12997 Some(Self { syntax })
12998 } else {
12999 None
13000 }
13001 }
13002 #[inline]
13003 fn syntax(&self) -> &SyntaxNode {
13004 &self.syntax
13005 }
13006}
13007impl AstNode for CreateOperatorFamily {
13008 #[inline]
13009 fn can_cast(kind: SyntaxKind) -> bool {
13010 kind == SyntaxKind::CREATE_OPERATOR_FAMILY
13011 }
13012 #[inline]
13013 fn cast(syntax: SyntaxNode) -> Option<Self> {
13014 if Self::can_cast(syntax.kind()) {
13015 Some(Self { syntax })
13016 } else {
13017 None
13018 }
13019 }
13020 #[inline]
13021 fn syntax(&self) -> &SyntaxNode {
13022 &self.syntax
13023 }
13024}
13025impl AstNode for CreatePolicy {
13026 #[inline]
13027 fn can_cast(kind: SyntaxKind) -> bool {
13028 kind == SyntaxKind::CREATE_POLICY
13029 }
13030 #[inline]
13031 fn cast(syntax: SyntaxNode) -> Option<Self> {
13032 if Self::can_cast(syntax.kind()) {
13033 Some(Self { syntax })
13034 } else {
13035 None
13036 }
13037 }
13038 #[inline]
13039 fn syntax(&self) -> &SyntaxNode {
13040 &self.syntax
13041 }
13042}
13043impl AstNode for CreateProcedure {
13044 #[inline]
13045 fn can_cast(kind: SyntaxKind) -> bool {
13046 kind == SyntaxKind::CREATE_PROCEDURE
13047 }
13048 #[inline]
13049 fn cast(syntax: SyntaxNode) -> Option<Self> {
13050 if Self::can_cast(syntax.kind()) {
13051 Some(Self { syntax })
13052 } else {
13053 None
13054 }
13055 }
13056 #[inline]
13057 fn syntax(&self) -> &SyntaxNode {
13058 &self.syntax
13059 }
13060}
13061impl AstNode for CreatePublication {
13062 #[inline]
13063 fn can_cast(kind: SyntaxKind) -> bool {
13064 kind == SyntaxKind::CREATE_PUBLICATION
13065 }
13066 #[inline]
13067 fn cast(syntax: SyntaxNode) -> Option<Self> {
13068 if Self::can_cast(syntax.kind()) {
13069 Some(Self { syntax })
13070 } else {
13071 None
13072 }
13073 }
13074 #[inline]
13075 fn syntax(&self) -> &SyntaxNode {
13076 &self.syntax
13077 }
13078}
13079impl AstNode for CreateRole {
13080 #[inline]
13081 fn can_cast(kind: SyntaxKind) -> bool {
13082 kind == SyntaxKind::CREATE_ROLE
13083 }
13084 #[inline]
13085 fn cast(syntax: SyntaxNode) -> Option<Self> {
13086 if Self::can_cast(syntax.kind()) {
13087 Some(Self { syntax })
13088 } else {
13089 None
13090 }
13091 }
13092 #[inline]
13093 fn syntax(&self) -> &SyntaxNode {
13094 &self.syntax
13095 }
13096}
13097impl AstNode for CreateRule {
13098 #[inline]
13099 fn can_cast(kind: SyntaxKind) -> bool {
13100 kind == SyntaxKind::CREATE_RULE
13101 }
13102 #[inline]
13103 fn cast(syntax: SyntaxNode) -> Option<Self> {
13104 if Self::can_cast(syntax.kind()) {
13105 Some(Self { syntax })
13106 } else {
13107 None
13108 }
13109 }
13110 #[inline]
13111 fn syntax(&self) -> &SyntaxNode {
13112 &self.syntax
13113 }
13114}
13115impl AstNode for CreateSchema {
13116 #[inline]
13117 fn can_cast(kind: SyntaxKind) -> bool {
13118 kind == SyntaxKind::CREATE_SCHEMA
13119 }
13120 #[inline]
13121 fn cast(syntax: SyntaxNode) -> Option<Self> {
13122 if Self::can_cast(syntax.kind()) {
13123 Some(Self { syntax })
13124 } else {
13125 None
13126 }
13127 }
13128 #[inline]
13129 fn syntax(&self) -> &SyntaxNode {
13130 &self.syntax
13131 }
13132}
13133impl AstNode for CreateSequence {
13134 #[inline]
13135 fn can_cast(kind: SyntaxKind) -> bool {
13136 kind == SyntaxKind::CREATE_SEQUENCE
13137 }
13138 #[inline]
13139 fn cast(syntax: SyntaxNode) -> Option<Self> {
13140 if Self::can_cast(syntax.kind()) {
13141 Some(Self { syntax })
13142 } else {
13143 None
13144 }
13145 }
13146 #[inline]
13147 fn syntax(&self) -> &SyntaxNode {
13148 &self.syntax
13149 }
13150}
13151impl AstNode for CreateServer {
13152 #[inline]
13153 fn can_cast(kind: SyntaxKind) -> bool {
13154 kind == SyntaxKind::CREATE_SERVER
13155 }
13156 #[inline]
13157 fn cast(syntax: SyntaxNode) -> Option<Self> {
13158 if Self::can_cast(syntax.kind()) {
13159 Some(Self { syntax })
13160 } else {
13161 None
13162 }
13163 }
13164 #[inline]
13165 fn syntax(&self) -> &SyntaxNode {
13166 &self.syntax
13167 }
13168}
13169impl AstNode for CreateStatistics {
13170 #[inline]
13171 fn can_cast(kind: SyntaxKind) -> bool {
13172 kind == SyntaxKind::CREATE_STATISTICS
13173 }
13174 #[inline]
13175 fn cast(syntax: SyntaxNode) -> Option<Self> {
13176 if Self::can_cast(syntax.kind()) {
13177 Some(Self { syntax })
13178 } else {
13179 None
13180 }
13181 }
13182 #[inline]
13183 fn syntax(&self) -> &SyntaxNode {
13184 &self.syntax
13185 }
13186}
13187impl AstNode for CreateSubscription {
13188 #[inline]
13189 fn can_cast(kind: SyntaxKind) -> bool {
13190 kind == SyntaxKind::CREATE_SUBSCRIPTION
13191 }
13192 #[inline]
13193 fn cast(syntax: SyntaxNode) -> Option<Self> {
13194 if Self::can_cast(syntax.kind()) {
13195 Some(Self { syntax })
13196 } else {
13197 None
13198 }
13199 }
13200 #[inline]
13201 fn syntax(&self) -> &SyntaxNode {
13202 &self.syntax
13203 }
13204}
13205impl AstNode for CreateTable {
13206 #[inline]
13207 fn can_cast(kind: SyntaxKind) -> bool {
13208 kind == SyntaxKind::CREATE_TABLE
13209 }
13210 #[inline]
13211 fn cast(syntax: SyntaxNode) -> Option<Self> {
13212 if Self::can_cast(syntax.kind()) {
13213 Some(Self { syntax })
13214 } else {
13215 None
13216 }
13217 }
13218 #[inline]
13219 fn syntax(&self) -> &SyntaxNode {
13220 &self.syntax
13221 }
13222}
13223impl AstNode for CreateTableAs {
13224 #[inline]
13225 fn can_cast(kind: SyntaxKind) -> bool {
13226 kind == SyntaxKind::CREATE_TABLE_AS
13227 }
13228 #[inline]
13229 fn cast(syntax: SyntaxNode) -> Option<Self> {
13230 if Self::can_cast(syntax.kind()) {
13231 Some(Self { syntax })
13232 } else {
13233 None
13234 }
13235 }
13236 #[inline]
13237 fn syntax(&self) -> &SyntaxNode {
13238 &self.syntax
13239 }
13240}
13241impl AstNode for CreateTablespace {
13242 #[inline]
13243 fn can_cast(kind: SyntaxKind) -> bool {
13244 kind == SyntaxKind::CREATE_TABLESPACE
13245 }
13246 #[inline]
13247 fn cast(syntax: SyntaxNode) -> Option<Self> {
13248 if Self::can_cast(syntax.kind()) {
13249 Some(Self { syntax })
13250 } else {
13251 None
13252 }
13253 }
13254 #[inline]
13255 fn syntax(&self) -> &SyntaxNode {
13256 &self.syntax
13257 }
13258}
13259impl AstNode for CreateTextSearchConfiguration {
13260 #[inline]
13261 fn can_cast(kind: SyntaxKind) -> bool {
13262 kind == SyntaxKind::CREATE_TEXT_SEARCH_CONFIGURATION
13263 }
13264 #[inline]
13265 fn cast(syntax: SyntaxNode) -> Option<Self> {
13266 if Self::can_cast(syntax.kind()) {
13267 Some(Self { syntax })
13268 } else {
13269 None
13270 }
13271 }
13272 #[inline]
13273 fn syntax(&self) -> &SyntaxNode {
13274 &self.syntax
13275 }
13276}
13277impl AstNode for CreateTextSearchDictionary {
13278 #[inline]
13279 fn can_cast(kind: SyntaxKind) -> bool {
13280 kind == SyntaxKind::CREATE_TEXT_SEARCH_DICTIONARY
13281 }
13282 #[inline]
13283 fn cast(syntax: SyntaxNode) -> Option<Self> {
13284 if Self::can_cast(syntax.kind()) {
13285 Some(Self { syntax })
13286 } else {
13287 None
13288 }
13289 }
13290 #[inline]
13291 fn syntax(&self) -> &SyntaxNode {
13292 &self.syntax
13293 }
13294}
13295impl AstNode for CreateTextSearchParser {
13296 #[inline]
13297 fn can_cast(kind: SyntaxKind) -> bool {
13298 kind == SyntaxKind::CREATE_TEXT_SEARCH_PARSER
13299 }
13300 #[inline]
13301 fn cast(syntax: SyntaxNode) -> Option<Self> {
13302 if Self::can_cast(syntax.kind()) {
13303 Some(Self { syntax })
13304 } else {
13305 None
13306 }
13307 }
13308 #[inline]
13309 fn syntax(&self) -> &SyntaxNode {
13310 &self.syntax
13311 }
13312}
13313impl AstNode for CreateTextSearchTemplate {
13314 #[inline]
13315 fn can_cast(kind: SyntaxKind) -> bool {
13316 kind == SyntaxKind::CREATE_TEXT_SEARCH_TEMPLATE
13317 }
13318 #[inline]
13319 fn cast(syntax: SyntaxNode) -> Option<Self> {
13320 if Self::can_cast(syntax.kind()) {
13321 Some(Self { syntax })
13322 } else {
13323 None
13324 }
13325 }
13326 #[inline]
13327 fn syntax(&self) -> &SyntaxNode {
13328 &self.syntax
13329 }
13330}
13331impl AstNode for CreateTransform {
13332 #[inline]
13333 fn can_cast(kind: SyntaxKind) -> bool {
13334 kind == SyntaxKind::CREATE_TRANSFORM
13335 }
13336 #[inline]
13337 fn cast(syntax: SyntaxNode) -> Option<Self> {
13338 if Self::can_cast(syntax.kind()) {
13339 Some(Self { syntax })
13340 } else {
13341 None
13342 }
13343 }
13344 #[inline]
13345 fn syntax(&self) -> &SyntaxNode {
13346 &self.syntax
13347 }
13348}
13349impl AstNode for CreateTrigger {
13350 #[inline]
13351 fn can_cast(kind: SyntaxKind) -> bool {
13352 kind == SyntaxKind::CREATE_TRIGGER
13353 }
13354 #[inline]
13355 fn cast(syntax: SyntaxNode) -> Option<Self> {
13356 if Self::can_cast(syntax.kind()) {
13357 Some(Self { syntax })
13358 } else {
13359 None
13360 }
13361 }
13362 #[inline]
13363 fn syntax(&self) -> &SyntaxNode {
13364 &self.syntax
13365 }
13366}
13367impl AstNode for CreateType {
13368 #[inline]
13369 fn can_cast(kind: SyntaxKind) -> bool {
13370 kind == SyntaxKind::CREATE_TYPE
13371 }
13372 #[inline]
13373 fn cast(syntax: SyntaxNode) -> Option<Self> {
13374 if Self::can_cast(syntax.kind()) {
13375 Some(Self { syntax })
13376 } else {
13377 None
13378 }
13379 }
13380 #[inline]
13381 fn syntax(&self) -> &SyntaxNode {
13382 &self.syntax
13383 }
13384}
13385impl AstNode for CreateUser {
13386 #[inline]
13387 fn can_cast(kind: SyntaxKind) -> bool {
13388 kind == SyntaxKind::CREATE_USER
13389 }
13390 #[inline]
13391 fn cast(syntax: SyntaxNode) -> Option<Self> {
13392 if Self::can_cast(syntax.kind()) {
13393 Some(Self { syntax })
13394 } else {
13395 None
13396 }
13397 }
13398 #[inline]
13399 fn syntax(&self) -> &SyntaxNode {
13400 &self.syntax
13401 }
13402}
13403impl AstNode for CreateUserMapping {
13404 #[inline]
13405 fn can_cast(kind: SyntaxKind) -> bool {
13406 kind == SyntaxKind::CREATE_USER_MAPPING
13407 }
13408 #[inline]
13409 fn cast(syntax: SyntaxNode) -> Option<Self> {
13410 if Self::can_cast(syntax.kind()) {
13411 Some(Self { syntax })
13412 } else {
13413 None
13414 }
13415 }
13416 #[inline]
13417 fn syntax(&self) -> &SyntaxNode {
13418 &self.syntax
13419 }
13420}
13421impl AstNode for CreateView {
13422 #[inline]
13423 fn can_cast(kind: SyntaxKind) -> bool {
13424 kind == SyntaxKind::CREATE_VIEW
13425 }
13426 #[inline]
13427 fn cast(syntax: SyntaxNode) -> Option<Self> {
13428 if Self::can_cast(syntax.kind()) {
13429 Some(Self { syntax })
13430 } else {
13431 None
13432 }
13433 }
13434 #[inline]
13435 fn syntax(&self) -> &SyntaxNode {
13436 &self.syntax
13437 }
13438}
13439impl AstNode for CustomOp {
13440 #[inline]
13441 fn can_cast(kind: SyntaxKind) -> bool {
13442 kind == SyntaxKind::CUSTOM_OP
13443 }
13444 #[inline]
13445 fn cast(syntax: SyntaxNode) -> Option<Self> {
13446 if Self::can_cast(syntax.kind()) {
13447 Some(Self { syntax })
13448 } else {
13449 None
13450 }
13451 }
13452 #[inline]
13453 fn syntax(&self) -> &SyntaxNode {
13454 &self.syntax
13455 }
13456}
13457impl AstNode for Deallocate {
13458 #[inline]
13459 fn can_cast(kind: SyntaxKind) -> bool {
13460 kind == SyntaxKind::DEALLOCATE
13461 }
13462 #[inline]
13463 fn cast(syntax: SyntaxNode) -> Option<Self> {
13464 if Self::can_cast(syntax.kind()) {
13465 Some(Self { syntax })
13466 } else {
13467 None
13468 }
13469 }
13470 #[inline]
13471 fn syntax(&self) -> &SyntaxNode {
13472 &self.syntax
13473 }
13474}
13475impl AstNode for Declare {
13476 #[inline]
13477 fn can_cast(kind: SyntaxKind) -> bool {
13478 kind == SyntaxKind::DECLARE
13479 }
13480 #[inline]
13481 fn cast(syntax: SyntaxNode) -> Option<Self> {
13482 if Self::can_cast(syntax.kind()) {
13483 Some(Self { syntax })
13484 } else {
13485 None
13486 }
13487 }
13488 #[inline]
13489 fn syntax(&self) -> &SyntaxNode {
13490 &self.syntax
13491 }
13492}
13493impl AstNode for DefaultConstraint {
13494 #[inline]
13495 fn can_cast(kind: SyntaxKind) -> bool {
13496 kind == SyntaxKind::DEFAULT_CONSTRAINT
13497 }
13498 #[inline]
13499 fn cast(syntax: SyntaxNode) -> Option<Self> {
13500 if Self::can_cast(syntax.kind()) {
13501 Some(Self { syntax })
13502 } else {
13503 None
13504 }
13505 }
13506 #[inline]
13507 fn syntax(&self) -> &SyntaxNode {
13508 &self.syntax
13509 }
13510}
13511impl AstNode for Deferrable {
13512 #[inline]
13513 fn can_cast(kind: SyntaxKind) -> bool {
13514 kind == SyntaxKind::DEFERRABLE
13515 }
13516 #[inline]
13517 fn cast(syntax: SyntaxNode) -> Option<Self> {
13518 if Self::can_cast(syntax.kind()) {
13519 Some(Self { syntax })
13520 } else {
13521 None
13522 }
13523 }
13524 #[inline]
13525 fn syntax(&self) -> &SyntaxNode {
13526 &self.syntax
13527 }
13528}
13529impl AstNode for DeferrableConstraintOption {
13530 #[inline]
13531 fn can_cast(kind: SyntaxKind) -> bool {
13532 kind == SyntaxKind::DEFERRABLE_CONSTRAINT_OPTION
13533 }
13534 #[inline]
13535 fn cast(syntax: SyntaxNode) -> Option<Self> {
13536 if Self::can_cast(syntax.kind()) {
13537 Some(Self { syntax })
13538 } else {
13539 None
13540 }
13541 }
13542 #[inline]
13543 fn syntax(&self) -> &SyntaxNode {
13544 &self.syntax
13545 }
13546}
13547impl AstNode for Delete {
13548 #[inline]
13549 fn can_cast(kind: SyntaxKind) -> bool {
13550 kind == SyntaxKind::DELETE
13551 }
13552 #[inline]
13553 fn cast(syntax: SyntaxNode) -> Option<Self> {
13554 if Self::can_cast(syntax.kind()) {
13555 Some(Self { syntax })
13556 } else {
13557 None
13558 }
13559 }
13560 #[inline]
13561 fn syntax(&self) -> &SyntaxNode {
13562 &self.syntax
13563 }
13564}
13565impl AstNode for DeleteRows {
13566 #[inline]
13567 fn can_cast(kind: SyntaxKind) -> bool {
13568 kind == SyntaxKind::DELETE_ROWS
13569 }
13570 #[inline]
13571 fn cast(syntax: SyntaxNode) -> Option<Self> {
13572 if Self::can_cast(syntax.kind()) {
13573 Some(Self { syntax })
13574 } else {
13575 None
13576 }
13577 }
13578 #[inline]
13579 fn syntax(&self) -> &SyntaxNode {
13580 &self.syntax
13581 }
13582}
13583impl AstNode for DetachPartition {
13584 #[inline]
13585 fn can_cast(kind: SyntaxKind) -> bool {
13586 kind == SyntaxKind::DETACH_PARTITION
13587 }
13588 #[inline]
13589 fn cast(syntax: SyntaxNode) -> Option<Self> {
13590 if Self::can_cast(syntax.kind()) {
13591 Some(Self { syntax })
13592 } else {
13593 None
13594 }
13595 }
13596 #[inline]
13597 fn syntax(&self) -> &SyntaxNode {
13598 &self.syntax
13599 }
13600}
13601impl AstNode for DisableRls {
13602 #[inline]
13603 fn can_cast(kind: SyntaxKind) -> bool {
13604 kind == SyntaxKind::DISABLE_RLS
13605 }
13606 #[inline]
13607 fn cast(syntax: SyntaxNode) -> Option<Self> {
13608 if Self::can_cast(syntax.kind()) {
13609 Some(Self { syntax })
13610 } else {
13611 None
13612 }
13613 }
13614 #[inline]
13615 fn syntax(&self) -> &SyntaxNode {
13616 &self.syntax
13617 }
13618}
13619impl AstNode for DisableRule {
13620 #[inline]
13621 fn can_cast(kind: SyntaxKind) -> bool {
13622 kind == SyntaxKind::DISABLE_RULE
13623 }
13624 #[inline]
13625 fn cast(syntax: SyntaxNode) -> Option<Self> {
13626 if Self::can_cast(syntax.kind()) {
13627 Some(Self { syntax })
13628 } else {
13629 None
13630 }
13631 }
13632 #[inline]
13633 fn syntax(&self) -> &SyntaxNode {
13634 &self.syntax
13635 }
13636}
13637impl AstNode for DisableTrigger {
13638 #[inline]
13639 fn can_cast(kind: SyntaxKind) -> bool {
13640 kind == SyntaxKind::DISABLE_TRIGGER
13641 }
13642 #[inline]
13643 fn cast(syntax: SyntaxNode) -> Option<Self> {
13644 if Self::can_cast(syntax.kind()) {
13645 Some(Self { syntax })
13646 } else {
13647 None
13648 }
13649 }
13650 #[inline]
13651 fn syntax(&self) -> &SyntaxNode {
13652 &self.syntax
13653 }
13654}
13655impl AstNode for Discard {
13656 #[inline]
13657 fn can_cast(kind: SyntaxKind) -> bool {
13658 kind == SyntaxKind::DISCARD
13659 }
13660 #[inline]
13661 fn cast(syntax: SyntaxNode) -> Option<Self> {
13662 if Self::can_cast(syntax.kind()) {
13663 Some(Self { syntax })
13664 } else {
13665 None
13666 }
13667 }
13668 #[inline]
13669 fn syntax(&self) -> &SyntaxNode {
13670 &self.syntax
13671 }
13672}
13673impl AstNode for DistinctClause {
13674 #[inline]
13675 fn can_cast(kind: SyntaxKind) -> bool {
13676 kind == SyntaxKind::DISTINCT_CLAUSE
13677 }
13678 #[inline]
13679 fn cast(syntax: SyntaxNode) -> Option<Self> {
13680 if Self::can_cast(syntax.kind()) {
13681 Some(Self { syntax })
13682 } else {
13683 None
13684 }
13685 }
13686 #[inline]
13687 fn syntax(&self) -> &SyntaxNode {
13688 &self.syntax
13689 }
13690}
13691impl AstNode for Do {
13692 #[inline]
13693 fn can_cast(kind: SyntaxKind) -> bool {
13694 kind == SyntaxKind::DO
13695 }
13696 #[inline]
13697 fn cast(syntax: SyntaxNode) -> Option<Self> {
13698 if Self::can_cast(syntax.kind()) {
13699 Some(Self { syntax })
13700 } else {
13701 None
13702 }
13703 }
13704 #[inline]
13705 fn syntax(&self) -> &SyntaxNode {
13706 &self.syntax
13707 }
13708}
13709impl AstNode for DoubleType {
13710 #[inline]
13711 fn can_cast(kind: SyntaxKind) -> bool {
13712 kind == SyntaxKind::DOUBLE_TYPE
13713 }
13714 #[inline]
13715 fn cast(syntax: SyntaxNode) -> Option<Self> {
13716 if Self::can_cast(syntax.kind()) {
13717 Some(Self { syntax })
13718 } else {
13719 None
13720 }
13721 }
13722 #[inline]
13723 fn syntax(&self) -> &SyntaxNode {
13724 &self.syntax
13725 }
13726}
13727impl AstNode for Drop {
13728 #[inline]
13729 fn can_cast(kind: SyntaxKind) -> bool {
13730 kind == SyntaxKind::DROP
13731 }
13732 #[inline]
13733 fn cast(syntax: SyntaxNode) -> Option<Self> {
13734 if Self::can_cast(syntax.kind()) {
13735 Some(Self { syntax })
13736 } else {
13737 None
13738 }
13739 }
13740 #[inline]
13741 fn syntax(&self) -> &SyntaxNode {
13742 &self.syntax
13743 }
13744}
13745impl AstNode for DropAccessMethod {
13746 #[inline]
13747 fn can_cast(kind: SyntaxKind) -> bool {
13748 kind == SyntaxKind::DROP_ACCESS_METHOD
13749 }
13750 #[inline]
13751 fn cast(syntax: SyntaxNode) -> Option<Self> {
13752 if Self::can_cast(syntax.kind()) {
13753 Some(Self { syntax })
13754 } else {
13755 None
13756 }
13757 }
13758 #[inline]
13759 fn syntax(&self) -> &SyntaxNode {
13760 &self.syntax
13761 }
13762}
13763impl AstNode for DropAggregate {
13764 #[inline]
13765 fn can_cast(kind: SyntaxKind) -> bool {
13766 kind == SyntaxKind::DROP_AGGREGATE
13767 }
13768 #[inline]
13769 fn cast(syntax: SyntaxNode) -> Option<Self> {
13770 if Self::can_cast(syntax.kind()) {
13771 Some(Self { syntax })
13772 } else {
13773 None
13774 }
13775 }
13776 #[inline]
13777 fn syntax(&self) -> &SyntaxNode {
13778 &self.syntax
13779 }
13780}
13781impl AstNode for DropCast {
13782 #[inline]
13783 fn can_cast(kind: SyntaxKind) -> bool {
13784 kind == SyntaxKind::DROP_CAST
13785 }
13786 #[inline]
13787 fn cast(syntax: SyntaxNode) -> Option<Self> {
13788 if Self::can_cast(syntax.kind()) {
13789 Some(Self { syntax })
13790 } else {
13791 None
13792 }
13793 }
13794 #[inline]
13795 fn syntax(&self) -> &SyntaxNode {
13796 &self.syntax
13797 }
13798}
13799impl AstNode for DropCollation {
13800 #[inline]
13801 fn can_cast(kind: SyntaxKind) -> bool {
13802 kind == SyntaxKind::DROP_COLLATION
13803 }
13804 #[inline]
13805 fn cast(syntax: SyntaxNode) -> Option<Self> {
13806 if Self::can_cast(syntax.kind()) {
13807 Some(Self { syntax })
13808 } else {
13809 None
13810 }
13811 }
13812 #[inline]
13813 fn syntax(&self) -> &SyntaxNode {
13814 &self.syntax
13815 }
13816}
13817impl AstNode for DropColumn {
13818 #[inline]
13819 fn can_cast(kind: SyntaxKind) -> bool {
13820 kind == SyntaxKind::DROP_COLUMN
13821 }
13822 #[inline]
13823 fn cast(syntax: SyntaxNode) -> Option<Self> {
13824 if Self::can_cast(syntax.kind()) {
13825 Some(Self { syntax })
13826 } else {
13827 None
13828 }
13829 }
13830 #[inline]
13831 fn syntax(&self) -> &SyntaxNode {
13832 &self.syntax
13833 }
13834}
13835impl AstNode for DropConstraint {
13836 #[inline]
13837 fn can_cast(kind: SyntaxKind) -> bool {
13838 kind == SyntaxKind::DROP_CONSTRAINT
13839 }
13840 #[inline]
13841 fn cast(syntax: SyntaxNode) -> Option<Self> {
13842 if Self::can_cast(syntax.kind()) {
13843 Some(Self { syntax })
13844 } else {
13845 None
13846 }
13847 }
13848 #[inline]
13849 fn syntax(&self) -> &SyntaxNode {
13850 &self.syntax
13851 }
13852}
13853impl AstNode for DropConversion {
13854 #[inline]
13855 fn can_cast(kind: SyntaxKind) -> bool {
13856 kind == SyntaxKind::DROP_CONVERSION
13857 }
13858 #[inline]
13859 fn cast(syntax: SyntaxNode) -> Option<Self> {
13860 if Self::can_cast(syntax.kind()) {
13861 Some(Self { syntax })
13862 } else {
13863 None
13864 }
13865 }
13866 #[inline]
13867 fn syntax(&self) -> &SyntaxNode {
13868 &self.syntax
13869 }
13870}
13871impl AstNode for DropDatabase {
13872 #[inline]
13873 fn can_cast(kind: SyntaxKind) -> bool {
13874 kind == SyntaxKind::DROP_DATABASE
13875 }
13876 #[inline]
13877 fn cast(syntax: SyntaxNode) -> Option<Self> {
13878 if Self::can_cast(syntax.kind()) {
13879 Some(Self { syntax })
13880 } else {
13881 None
13882 }
13883 }
13884 #[inline]
13885 fn syntax(&self) -> &SyntaxNode {
13886 &self.syntax
13887 }
13888}
13889impl AstNode for DropDefault {
13890 #[inline]
13891 fn can_cast(kind: SyntaxKind) -> bool {
13892 kind == SyntaxKind::DROP_DEFAULT
13893 }
13894 #[inline]
13895 fn cast(syntax: SyntaxNode) -> Option<Self> {
13896 if Self::can_cast(syntax.kind()) {
13897 Some(Self { syntax })
13898 } else {
13899 None
13900 }
13901 }
13902 #[inline]
13903 fn syntax(&self) -> &SyntaxNode {
13904 &self.syntax
13905 }
13906}
13907impl AstNode for DropDomain {
13908 #[inline]
13909 fn can_cast(kind: SyntaxKind) -> bool {
13910 kind == SyntaxKind::DROP_DOMAIN
13911 }
13912 #[inline]
13913 fn cast(syntax: SyntaxNode) -> Option<Self> {
13914 if Self::can_cast(syntax.kind()) {
13915 Some(Self { syntax })
13916 } else {
13917 None
13918 }
13919 }
13920 #[inline]
13921 fn syntax(&self) -> &SyntaxNode {
13922 &self.syntax
13923 }
13924}
13925impl AstNode for DropEventTrigger {
13926 #[inline]
13927 fn can_cast(kind: SyntaxKind) -> bool {
13928 kind == SyntaxKind::DROP_EVENT_TRIGGER
13929 }
13930 #[inline]
13931 fn cast(syntax: SyntaxNode) -> Option<Self> {
13932 if Self::can_cast(syntax.kind()) {
13933 Some(Self { syntax })
13934 } else {
13935 None
13936 }
13937 }
13938 #[inline]
13939 fn syntax(&self) -> &SyntaxNode {
13940 &self.syntax
13941 }
13942}
13943impl AstNode for DropExpression {
13944 #[inline]
13945 fn can_cast(kind: SyntaxKind) -> bool {
13946 kind == SyntaxKind::DROP_EXPRESSION
13947 }
13948 #[inline]
13949 fn cast(syntax: SyntaxNode) -> Option<Self> {
13950 if Self::can_cast(syntax.kind()) {
13951 Some(Self { syntax })
13952 } else {
13953 None
13954 }
13955 }
13956 #[inline]
13957 fn syntax(&self) -> &SyntaxNode {
13958 &self.syntax
13959 }
13960}
13961impl AstNode for DropExtension {
13962 #[inline]
13963 fn can_cast(kind: SyntaxKind) -> bool {
13964 kind == SyntaxKind::DROP_EXTENSION
13965 }
13966 #[inline]
13967 fn cast(syntax: SyntaxNode) -> Option<Self> {
13968 if Self::can_cast(syntax.kind()) {
13969 Some(Self { syntax })
13970 } else {
13971 None
13972 }
13973 }
13974 #[inline]
13975 fn syntax(&self) -> &SyntaxNode {
13976 &self.syntax
13977 }
13978}
13979impl AstNode for DropForeignDataWrapper {
13980 #[inline]
13981 fn can_cast(kind: SyntaxKind) -> bool {
13982 kind == SyntaxKind::DROP_FOREIGN_DATA_WRAPPER
13983 }
13984 #[inline]
13985 fn cast(syntax: SyntaxNode) -> Option<Self> {
13986 if Self::can_cast(syntax.kind()) {
13987 Some(Self { syntax })
13988 } else {
13989 None
13990 }
13991 }
13992 #[inline]
13993 fn syntax(&self) -> &SyntaxNode {
13994 &self.syntax
13995 }
13996}
13997impl AstNode for DropForeignTable {
13998 #[inline]
13999 fn can_cast(kind: SyntaxKind) -> bool {
14000 kind == SyntaxKind::DROP_FOREIGN_TABLE
14001 }
14002 #[inline]
14003 fn cast(syntax: SyntaxNode) -> Option<Self> {
14004 if Self::can_cast(syntax.kind()) {
14005 Some(Self { syntax })
14006 } else {
14007 None
14008 }
14009 }
14010 #[inline]
14011 fn syntax(&self) -> &SyntaxNode {
14012 &self.syntax
14013 }
14014}
14015impl AstNode for DropFunction {
14016 #[inline]
14017 fn can_cast(kind: SyntaxKind) -> bool {
14018 kind == SyntaxKind::DROP_FUNCTION
14019 }
14020 #[inline]
14021 fn cast(syntax: SyntaxNode) -> Option<Self> {
14022 if Self::can_cast(syntax.kind()) {
14023 Some(Self { syntax })
14024 } else {
14025 None
14026 }
14027 }
14028 #[inline]
14029 fn syntax(&self) -> &SyntaxNode {
14030 &self.syntax
14031 }
14032}
14033impl AstNode for DropGroup {
14034 #[inline]
14035 fn can_cast(kind: SyntaxKind) -> bool {
14036 kind == SyntaxKind::DROP_GROUP
14037 }
14038 #[inline]
14039 fn cast(syntax: SyntaxNode) -> Option<Self> {
14040 if Self::can_cast(syntax.kind()) {
14041 Some(Self { syntax })
14042 } else {
14043 None
14044 }
14045 }
14046 #[inline]
14047 fn syntax(&self) -> &SyntaxNode {
14048 &self.syntax
14049 }
14050}
14051impl AstNode for DropIdentity {
14052 #[inline]
14053 fn can_cast(kind: SyntaxKind) -> bool {
14054 kind == SyntaxKind::DROP_IDENTITY
14055 }
14056 #[inline]
14057 fn cast(syntax: SyntaxNode) -> Option<Self> {
14058 if Self::can_cast(syntax.kind()) {
14059 Some(Self { syntax })
14060 } else {
14061 None
14062 }
14063 }
14064 #[inline]
14065 fn syntax(&self) -> &SyntaxNode {
14066 &self.syntax
14067 }
14068}
14069impl AstNode for DropIndex {
14070 #[inline]
14071 fn can_cast(kind: SyntaxKind) -> bool {
14072 kind == SyntaxKind::DROP_INDEX
14073 }
14074 #[inline]
14075 fn cast(syntax: SyntaxNode) -> Option<Self> {
14076 if Self::can_cast(syntax.kind()) {
14077 Some(Self { syntax })
14078 } else {
14079 None
14080 }
14081 }
14082 #[inline]
14083 fn syntax(&self) -> &SyntaxNode {
14084 &self.syntax
14085 }
14086}
14087impl AstNode for DropLanguage {
14088 #[inline]
14089 fn can_cast(kind: SyntaxKind) -> bool {
14090 kind == SyntaxKind::DROP_LANGUAGE
14091 }
14092 #[inline]
14093 fn cast(syntax: SyntaxNode) -> Option<Self> {
14094 if Self::can_cast(syntax.kind()) {
14095 Some(Self { syntax })
14096 } else {
14097 None
14098 }
14099 }
14100 #[inline]
14101 fn syntax(&self) -> &SyntaxNode {
14102 &self.syntax
14103 }
14104}
14105impl AstNode for DropMaterializedView {
14106 #[inline]
14107 fn can_cast(kind: SyntaxKind) -> bool {
14108 kind == SyntaxKind::DROP_MATERIALIZED_VIEW
14109 }
14110 #[inline]
14111 fn cast(syntax: SyntaxNode) -> Option<Self> {
14112 if Self::can_cast(syntax.kind()) {
14113 Some(Self { syntax })
14114 } else {
14115 None
14116 }
14117 }
14118 #[inline]
14119 fn syntax(&self) -> &SyntaxNode {
14120 &self.syntax
14121 }
14122}
14123impl AstNode for DropNotNull {
14124 #[inline]
14125 fn can_cast(kind: SyntaxKind) -> bool {
14126 kind == SyntaxKind::DROP_NOT_NULL
14127 }
14128 #[inline]
14129 fn cast(syntax: SyntaxNode) -> Option<Self> {
14130 if Self::can_cast(syntax.kind()) {
14131 Some(Self { syntax })
14132 } else {
14133 None
14134 }
14135 }
14136 #[inline]
14137 fn syntax(&self) -> &SyntaxNode {
14138 &self.syntax
14139 }
14140}
14141impl AstNode for DropOperator {
14142 #[inline]
14143 fn can_cast(kind: SyntaxKind) -> bool {
14144 kind == SyntaxKind::DROP_OPERATOR
14145 }
14146 #[inline]
14147 fn cast(syntax: SyntaxNode) -> Option<Self> {
14148 if Self::can_cast(syntax.kind()) {
14149 Some(Self { syntax })
14150 } else {
14151 None
14152 }
14153 }
14154 #[inline]
14155 fn syntax(&self) -> &SyntaxNode {
14156 &self.syntax
14157 }
14158}
14159impl AstNode for DropOperatorClass {
14160 #[inline]
14161 fn can_cast(kind: SyntaxKind) -> bool {
14162 kind == SyntaxKind::DROP_OPERATOR_CLASS
14163 }
14164 #[inline]
14165 fn cast(syntax: SyntaxNode) -> Option<Self> {
14166 if Self::can_cast(syntax.kind()) {
14167 Some(Self { syntax })
14168 } else {
14169 None
14170 }
14171 }
14172 #[inline]
14173 fn syntax(&self) -> &SyntaxNode {
14174 &self.syntax
14175 }
14176}
14177impl AstNode for DropOperatorFamily {
14178 #[inline]
14179 fn can_cast(kind: SyntaxKind) -> bool {
14180 kind == SyntaxKind::DROP_OPERATOR_FAMILY
14181 }
14182 #[inline]
14183 fn cast(syntax: SyntaxNode) -> Option<Self> {
14184 if Self::can_cast(syntax.kind()) {
14185 Some(Self { syntax })
14186 } else {
14187 None
14188 }
14189 }
14190 #[inline]
14191 fn syntax(&self) -> &SyntaxNode {
14192 &self.syntax
14193 }
14194}
14195impl AstNode for DropOwned {
14196 #[inline]
14197 fn can_cast(kind: SyntaxKind) -> bool {
14198 kind == SyntaxKind::DROP_OWNED
14199 }
14200 #[inline]
14201 fn cast(syntax: SyntaxNode) -> Option<Self> {
14202 if Self::can_cast(syntax.kind()) {
14203 Some(Self { syntax })
14204 } else {
14205 None
14206 }
14207 }
14208 #[inline]
14209 fn syntax(&self) -> &SyntaxNode {
14210 &self.syntax
14211 }
14212}
14213impl AstNode for DropPolicy {
14214 #[inline]
14215 fn can_cast(kind: SyntaxKind) -> bool {
14216 kind == SyntaxKind::DROP_POLICY
14217 }
14218 #[inline]
14219 fn cast(syntax: SyntaxNode) -> Option<Self> {
14220 if Self::can_cast(syntax.kind()) {
14221 Some(Self { syntax })
14222 } else {
14223 None
14224 }
14225 }
14226 #[inline]
14227 fn syntax(&self) -> &SyntaxNode {
14228 &self.syntax
14229 }
14230}
14231impl AstNode for DropProcedure {
14232 #[inline]
14233 fn can_cast(kind: SyntaxKind) -> bool {
14234 kind == SyntaxKind::DROP_PROCEDURE
14235 }
14236 #[inline]
14237 fn cast(syntax: SyntaxNode) -> Option<Self> {
14238 if Self::can_cast(syntax.kind()) {
14239 Some(Self { syntax })
14240 } else {
14241 None
14242 }
14243 }
14244 #[inline]
14245 fn syntax(&self) -> &SyntaxNode {
14246 &self.syntax
14247 }
14248}
14249impl AstNode for DropPublication {
14250 #[inline]
14251 fn can_cast(kind: SyntaxKind) -> bool {
14252 kind == SyntaxKind::DROP_PUBLICATION
14253 }
14254 #[inline]
14255 fn cast(syntax: SyntaxNode) -> Option<Self> {
14256 if Self::can_cast(syntax.kind()) {
14257 Some(Self { syntax })
14258 } else {
14259 None
14260 }
14261 }
14262 #[inline]
14263 fn syntax(&self) -> &SyntaxNode {
14264 &self.syntax
14265 }
14266}
14267impl AstNode for DropRole {
14268 #[inline]
14269 fn can_cast(kind: SyntaxKind) -> bool {
14270 kind == SyntaxKind::DROP_ROLE
14271 }
14272 #[inline]
14273 fn cast(syntax: SyntaxNode) -> Option<Self> {
14274 if Self::can_cast(syntax.kind()) {
14275 Some(Self { syntax })
14276 } else {
14277 None
14278 }
14279 }
14280 #[inline]
14281 fn syntax(&self) -> &SyntaxNode {
14282 &self.syntax
14283 }
14284}
14285impl AstNode for DropRoutine {
14286 #[inline]
14287 fn can_cast(kind: SyntaxKind) -> bool {
14288 kind == SyntaxKind::DROP_ROUTINE
14289 }
14290 #[inline]
14291 fn cast(syntax: SyntaxNode) -> Option<Self> {
14292 if Self::can_cast(syntax.kind()) {
14293 Some(Self { syntax })
14294 } else {
14295 None
14296 }
14297 }
14298 #[inline]
14299 fn syntax(&self) -> &SyntaxNode {
14300 &self.syntax
14301 }
14302}
14303impl AstNode for DropRule {
14304 #[inline]
14305 fn can_cast(kind: SyntaxKind) -> bool {
14306 kind == SyntaxKind::DROP_RULE
14307 }
14308 #[inline]
14309 fn cast(syntax: SyntaxNode) -> Option<Self> {
14310 if Self::can_cast(syntax.kind()) {
14311 Some(Self { syntax })
14312 } else {
14313 None
14314 }
14315 }
14316 #[inline]
14317 fn syntax(&self) -> &SyntaxNode {
14318 &self.syntax
14319 }
14320}
14321impl AstNode for DropSchema {
14322 #[inline]
14323 fn can_cast(kind: SyntaxKind) -> bool {
14324 kind == SyntaxKind::DROP_SCHEMA
14325 }
14326 #[inline]
14327 fn cast(syntax: SyntaxNode) -> Option<Self> {
14328 if Self::can_cast(syntax.kind()) {
14329 Some(Self { syntax })
14330 } else {
14331 None
14332 }
14333 }
14334 #[inline]
14335 fn syntax(&self) -> &SyntaxNode {
14336 &self.syntax
14337 }
14338}
14339impl AstNode for DropSequence {
14340 #[inline]
14341 fn can_cast(kind: SyntaxKind) -> bool {
14342 kind == SyntaxKind::DROP_SEQUENCE
14343 }
14344 #[inline]
14345 fn cast(syntax: SyntaxNode) -> Option<Self> {
14346 if Self::can_cast(syntax.kind()) {
14347 Some(Self { syntax })
14348 } else {
14349 None
14350 }
14351 }
14352 #[inline]
14353 fn syntax(&self) -> &SyntaxNode {
14354 &self.syntax
14355 }
14356}
14357impl AstNode for DropServer {
14358 #[inline]
14359 fn can_cast(kind: SyntaxKind) -> bool {
14360 kind == SyntaxKind::DROP_SERVER
14361 }
14362 #[inline]
14363 fn cast(syntax: SyntaxNode) -> Option<Self> {
14364 if Self::can_cast(syntax.kind()) {
14365 Some(Self { syntax })
14366 } else {
14367 None
14368 }
14369 }
14370 #[inline]
14371 fn syntax(&self) -> &SyntaxNode {
14372 &self.syntax
14373 }
14374}
14375impl AstNode for DropStatistics {
14376 #[inline]
14377 fn can_cast(kind: SyntaxKind) -> bool {
14378 kind == SyntaxKind::DROP_STATISTICS
14379 }
14380 #[inline]
14381 fn cast(syntax: SyntaxNode) -> Option<Self> {
14382 if Self::can_cast(syntax.kind()) {
14383 Some(Self { syntax })
14384 } else {
14385 None
14386 }
14387 }
14388 #[inline]
14389 fn syntax(&self) -> &SyntaxNode {
14390 &self.syntax
14391 }
14392}
14393impl AstNode for DropSubscription {
14394 #[inline]
14395 fn can_cast(kind: SyntaxKind) -> bool {
14396 kind == SyntaxKind::DROP_SUBSCRIPTION
14397 }
14398 #[inline]
14399 fn cast(syntax: SyntaxNode) -> Option<Self> {
14400 if Self::can_cast(syntax.kind()) {
14401 Some(Self { syntax })
14402 } else {
14403 None
14404 }
14405 }
14406 #[inline]
14407 fn syntax(&self) -> &SyntaxNode {
14408 &self.syntax
14409 }
14410}
14411impl AstNode for DropTable {
14412 #[inline]
14413 fn can_cast(kind: SyntaxKind) -> bool {
14414 kind == SyntaxKind::DROP_TABLE
14415 }
14416 #[inline]
14417 fn cast(syntax: SyntaxNode) -> Option<Self> {
14418 if Self::can_cast(syntax.kind()) {
14419 Some(Self { syntax })
14420 } else {
14421 None
14422 }
14423 }
14424 #[inline]
14425 fn syntax(&self) -> &SyntaxNode {
14426 &self.syntax
14427 }
14428}
14429impl AstNode for DropTablespace {
14430 #[inline]
14431 fn can_cast(kind: SyntaxKind) -> bool {
14432 kind == SyntaxKind::DROP_TABLESPACE
14433 }
14434 #[inline]
14435 fn cast(syntax: SyntaxNode) -> Option<Self> {
14436 if Self::can_cast(syntax.kind()) {
14437 Some(Self { syntax })
14438 } else {
14439 None
14440 }
14441 }
14442 #[inline]
14443 fn syntax(&self) -> &SyntaxNode {
14444 &self.syntax
14445 }
14446}
14447impl AstNode for DropTextSearchConfig {
14448 #[inline]
14449 fn can_cast(kind: SyntaxKind) -> bool {
14450 kind == SyntaxKind::DROP_TEXT_SEARCH_CONFIG
14451 }
14452 #[inline]
14453 fn cast(syntax: SyntaxNode) -> Option<Self> {
14454 if Self::can_cast(syntax.kind()) {
14455 Some(Self { syntax })
14456 } else {
14457 None
14458 }
14459 }
14460 #[inline]
14461 fn syntax(&self) -> &SyntaxNode {
14462 &self.syntax
14463 }
14464}
14465impl AstNode for DropTextSearchDict {
14466 #[inline]
14467 fn can_cast(kind: SyntaxKind) -> bool {
14468 kind == SyntaxKind::DROP_TEXT_SEARCH_DICT
14469 }
14470 #[inline]
14471 fn cast(syntax: SyntaxNode) -> Option<Self> {
14472 if Self::can_cast(syntax.kind()) {
14473 Some(Self { syntax })
14474 } else {
14475 None
14476 }
14477 }
14478 #[inline]
14479 fn syntax(&self) -> &SyntaxNode {
14480 &self.syntax
14481 }
14482}
14483impl AstNode for DropTextSearchParser {
14484 #[inline]
14485 fn can_cast(kind: SyntaxKind) -> bool {
14486 kind == SyntaxKind::DROP_TEXT_SEARCH_PARSER
14487 }
14488 #[inline]
14489 fn cast(syntax: SyntaxNode) -> Option<Self> {
14490 if Self::can_cast(syntax.kind()) {
14491 Some(Self { syntax })
14492 } else {
14493 None
14494 }
14495 }
14496 #[inline]
14497 fn syntax(&self) -> &SyntaxNode {
14498 &self.syntax
14499 }
14500}
14501impl AstNode for DropTextSearchTemplate {
14502 #[inline]
14503 fn can_cast(kind: SyntaxKind) -> bool {
14504 kind == SyntaxKind::DROP_TEXT_SEARCH_TEMPLATE
14505 }
14506 #[inline]
14507 fn cast(syntax: SyntaxNode) -> Option<Self> {
14508 if Self::can_cast(syntax.kind()) {
14509 Some(Self { syntax })
14510 } else {
14511 None
14512 }
14513 }
14514 #[inline]
14515 fn syntax(&self) -> &SyntaxNode {
14516 &self.syntax
14517 }
14518}
14519impl AstNode for DropTransform {
14520 #[inline]
14521 fn can_cast(kind: SyntaxKind) -> bool {
14522 kind == SyntaxKind::DROP_TRANSFORM
14523 }
14524 #[inline]
14525 fn cast(syntax: SyntaxNode) -> Option<Self> {
14526 if Self::can_cast(syntax.kind()) {
14527 Some(Self { syntax })
14528 } else {
14529 None
14530 }
14531 }
14532 #[inline]
14533 fn syntax(&self) -> &SyntaxNode {
14534 &self.syntax
14535 }
14536}
14537impl AstNode for DropTrigger {
14538 #[inline]
14539 fn can_cast(kind: SyntaxKind) -> bool {
14540 kind == SyntaxKind::DROP_TRIGGER
14541 }
14542 #[inline]
14543 fn cast(syntax: SyntaxNode) -> Option<Self> {
14544 if Self::can_cast(syntax.kind()) {
14545 Some(Self { syntax })
14546 } else {
14547 None
14548 }
14549 }
14550 #[inline]
14551 fn syntax(&self) -> &SyntaxNode {
14552 &self.syntax
14553 }
14554}
14555impl AstNode for DropType {
14556 #[inline]
14557 fn can_cast(kind: SyntaxKind) -> bool {
14558 kind == SyntaxKind::DROP_TYPE
14559 }
14560 #[inline]
14561 fn cast(syntax: SyntaxNode) -> Option<Self> {
14562 if Self::can_cast(syntax.kind()) {
14563 Some(Self { syntax })
14564 } else {
14565 None
14566 }
14567 }
14568 #[inline]
14569 fn syntax(&self) -> &SyntaxNode {
14570 &self.syntax
14571 }
14572}
14573impl AstNode for DropUser {
14574 #[inline]
14575 fn can_cast(kind: SyntaxKind) -> bool {
14576 kind == SyntaxKind::DROP_USER
14577 }
14578 #[inline]
14579 fn cast(syntax: SyntaxNode) -> Option<Self> {
14580 if Self::can_cast(syntax.kind()) {
14581 Some(Self { syntax })
14582 } else {
14583 None
14584 }
14585 }
14586 #[inline]
14587 fn syntax(&self) -> &SyntaxNode {
14588 &self.syntax
14589 }
14590}
14591impl AstNode for DropUserMapping {
14592 #[inline]
14593 fn can_cast(kind: SyntaxKind) -> bool {
14594 kind == SyntaxKind::DROP_USER_MAPPING
14595 }
14596 #[inline]
14597 fn cast(syntax: SyntaxNode) -> Option<Self> {
14598 if Self::can_cast(syntax.kind()) {
14599 Some(Self { syntax })
14600 } else {
14601 None
14602 }
14603 }
14604 #[inline]
14605 fn syntax(&self) -> &SyntaxNode {
14606 &self.syntax
14607 }
14608}
14609impl AstNode for DropView {
14610 #[inline]
14611 fn can_cast(kind: SyntaxKind) -> bool {
14612 kind == SyntaxKind::DROP_VIEW
14613 }
14614 #[inline]
14615 fn cast(syntax: SyntaxNode) -> Option<Self> {
14616 if Self::can_cast(syntax.kind()) {
14617 Some(Self { syntax })
14618 } else {
14619 None
14620 }
14621 }
14622 #[inline]
14623 fn syntax(&self) -> &SyntaxNode {
14624 &self.syntax
14625 }
14626}
14627impl AstNode for ElseClause {
14628 #[inline]
14629 fn can_cast(kind: SyntaxKind) -> bool {
14630 kind == SyntaxKind::ELSE_CLAUSE
14631 }
14632 #[inline]
14633 fn cast(syntax: SyntaxNode) -> Option<Self> {
14634 if Self::can_cast(syntax.kind()) {
14635 Some(Self { syntax })
14636 } else {
14637 None
14638 }
14639 }
14640 #[inline]
14641 fn syntax(&self) -> &SyntaxNode {
14642 &self.syntax
14643 }
14644}
14645impl AstNode for EnableAlwaysRule {
14646 #[inline]
14647 fn can_cast(kind: SyntaxKind) -> bool {
14648 kind == SyntaxKind::ENABLE_ALWAYS_RULE
14649 }
14650 #[inline]
14651 fn cast(syntax: SyntaxNode) -> Option<Self> {
14652 if Self::can_cast(syntax.kind()) {
14653 Some(Self { syntax })
14654 } else {
14655 None
14656 }
14657 }
14658 #[inline]
14659 fn syntax(&self) -> &SyntaxNode {
14660 &self.syntax
14661 }
14662}
14663impl AstNode for EnableAlwaysTrigger {
14664 #[inline]
14665 fn can_cast(kind: SyntaxKind) -> bool {
14666 kind == SyntaxKind::ENABLE_ALWAYS_TRIGGER
14667 }
14668 #[inline]
14669 fn cast(syntax: SyntaxNode) -> Option<Self> {
14670 if Self::can_cast(syntax.kind()) {
14671 Some(Self { syntax })
14672 } else {
14673 None
14674 }
14675 }
14676 #[inline]
14677 fn syntax(&self) -> &SyntaxNode {
14678 &self.syntax
14679 }
14680}
14681impl AstNode for EnableReplicaRule {
14682 #[inline]
14683 fn can_cast(kind: SyntaxKind) -> bool {
14684 kind == SyntaxKind::ENABLE_REPLICA_RULE
14685 }
14686 #[inline]
14687 fn cast(syntax: SyntaxNode) -> Option<Self> {
14688 if Self::can_cast(syntax.kind()) {
14689 Some(Self { syntax })
14690 } else {
14691 None
14692 }
14693 }
14694 #[inline]
14695 fn syntax(&self) -> &SyntaxNode {
14696 &self.syntax
14697 }
14698}
14699impl AstNode for EnableReplicaTrigger {
14700 #[inline]
14701 fn can_cast(kind: SyntaxKind) -> bool {
14702 kind == SyntaxKind::ENABLE_REPLICA_TRIGGER
14703 }
14704 #[inline]
14705 fn cast(syntax: SyntaxNode) -> Option<Self> {
14706 if Self::can_cast(syntax.kind()) {
14707 Some(Self { syntax })
14708 } else {
14709 None
14710 }
14711 }
14712 #[inline]
14713 fn syntax(&self) -> &SyntaxNode {
14714 &self.syntax
14715 }
14716}
14717impl AstNode for EnableRls {
14718 #[inline]
14719 fn can_cast(kind: SyntaxKind) -> bool {
14720 kind == SyntaxKind::ENABLE_RLS
14721 }
14722 #[inline]
14723 fn cast(syntax: SyntaxNode) -> Option<Self> {
14724 if Self::can_cast(syntax.kind()) {
14725 Some(Self { syntax })
14726 } else {
14727 None
14728 }
14729 }
14730 #[inline]
14731 fn syntax(&self) -> &SyntaxNode {
14732 &self.syntax
14733 }
14734}
14735impl AstNode for EnableRule {
14736 #[inline]
14737 fn can_cast(kind: SyntaxKind) -> bool {
14738 kind == SyntaxKind::ENABLE_RULE
14739 }
14740 #[inline]
14741 fn cast(syntax: SyntaxNode) -> Option<Self> {
14742 if Self::can_cast(syntax.kind()) {
14743 Some(Self { syntax })
14744 } else {
14745 None
14746 }
14747 }
14748 #[inline]
14749 fn syntax(&self) -> &SyntaxNode {
14750 &self.syntax
14751 }
14752}
14753impl AstNode for EnableTrigger {
14754 #[inline]
14755 fn can_cast(kind: SyntaxKind) -> bool {
14756 kind == SyntaxKind::ENABLE_TRIGGER
14757 }
14758 #[inline]
14759 fn cast(syntax: SyntaxNode) -> Option<Self> {
14760 if Self::can_cast(syntax.kind()) {
14761 Some(Self { syntax })
14762 } else {
14763 None
14764 }
14765 }
14766 #[inline]
14767 fn syntax(&self) -> &SyntaxNode {
14768 &self.syntax
14769 }
14770}
14771impl AstNode for Enforced {
14772 #[inline]
14773 fn can_cast(kind: SyntaxKind) -> bool {
14774 kind == SyntaxKind::ENFORCED
14775 }
14776 #[inline]
14777 fn cast(syntax: SyntaxNode) -> Option<Self> {
14778 if Self::can_cast(syntax.kind()) {
14779 Some(Self { syntax })
14780 } else {
14781 None
14782 }
14783 }
14784 #[inline]
14785 fn syntax(&self) -> &SyntaxNode {
14786 &self.syntax
14787 }
14788}
14789impl AstNode for ExcludeConstraint {
14790 #[inline]
14791 fn can_cast(kind: SyntaxKind) -> bool {
14792 kind == SyntaxKind::EXCLUDE_CONSTRAINT
14793 }
14794 #[inline]
14795 fn cast(syntax: SyntaxNode) -> Option<Self> {
14796 if Self::can_cast(syntax.kind()) {
14797 Some(Self { syntax })
14798 } else {
14799 None
14800 }
14801 }
14802 #[inline]
14803 fn syntax(&self) -> &SyntaxNode {
14804 &self.syntax
14805 }
14806}
14807impl AstNode for Execute {
14808 #[inline]
14809 fn can_cast(kind: SyntaxKind) -> bool {
14810 kind == SyntaxKind::EXECUTE
14811 }
14812 #[inline]
14813 fn cast(syntax: SyntaxNode) -> Option<Self> {
14814 if Self::can_cast(syntax.kind()) {
14815 Some(Self { syntax })
14816 } else {
14817 None
14818 }
14819 }
14820 #[inline]
14821 fn syntax(&self) -> &SyntaxNode {
14822 &self.syntax
14823 }
14824}
14825impl AstNode for Explain {
14826 #[inline]
14827 fn can_cast(kind: SyntaxKind) -> bool {
14828 kind == SyntaxKind::EXPLAIN
14829 }
14830 #[inline]
14831 fn cast(syntax: SyntaxNode) -> Option<Self> {
14832 if Self::can_cast(syntax.kind()) {
14833 Some(Self { syntax })
14834 } else {
14835 None
14836 }
14837 }
14838 #[inline]
14839 fn syntax(&self) -> &SyntaxNode {
14840 &self.syntax
14841 }
14842}
14843impl AstNode for FatArrow {
14844 #[inline]
14845 fn can_cast(kind: SyntaxKind) -> bool {
14846 kind == SyntaxKind::FAT_ARROW
14847 }
14848 #[inline]
14849 fn cast(syntax: SyntaxNode) -> Option<Self> {
14850 if Self::can_cast(syntax.kind()) {
14851 Some(Self { syntax })
14852 } else {
14853 None
14854 }
14855 }
14856 #[inline]
14857 fn syntax(&self) -> &SyntaxNode {
14858 &self.syntax
14859 }
14860}
14861impl AstNode for Fetch {
14862 #[inline]
14863 fn can_cast(kind: SyntaxKind) -> bool {
14864 kind == SyntaxKind::FETCH
14865 }
14866 #[inline]
14867 fn cast(syntax: SyntaxNode) -> Option<Self> {
14868 if Self::can_cast(syntax.kind()) {
14869 Some(Self { syntax })
14870 } else {
14871 None
14872 }
14873 }
14874 #[inline]
14875 fn syntax(&self) -> &SyntaxNode {
14876 &self.syntax
14877 }
14878}
14879impl AstNode for FetchClause {
14880 #[inline]
14881 fn can_cast(kind: SyntaxKind) -> bool {
14882 kind == SyntaxKind::FETCH_CLAUSE
14883 }
14884 #[inline]
14885 fn cast(syntax: SyntaxNode) -> Option<Self> {
14886 if Self::can_cast(syntax.kind()) {
14887 Some(Self { syntax })
14888 } else {
14889 None
14890 }
14891 }
14892 #[inline]
14893 fn syntax(&self) -> &SyntaxNode {
14894 &self.syntax
14895 }
14896}
14897impl AstNode for FieldExpr {
14898 #[inline]
14899 fn can_cast(kind: SyntaxKind) -> bool {
14900 kind == SyntaxKind::FIELD_EXPR
14901 }
14902 #[inline]
14903 fn cast(syntax: SyntaxNode) -> Option<Self> {
14904 if Self::can_cast(syntax.kind()) {
14905 Some(Self { syntax })
14906 } else {
14907 None
14908 }
14909 }
14910 #[inline]
14911 fn syntax(&self) -> &SyntaxNode {
14912 &self.syntax
14913 }
14914}
14915impl AstNode for FilterClause {
14916 #[inline]
14917 fn can_cast(kind: SyntaxKind) -> bool {
14918 kind == SyntaxKind::FILTER_CLAUSE
14919 }
14920 #[inline]
14921 fn cast(syntax: SyntaxNode) -> Option<Self> {
14922 if Self::can_cast(syntax.kind()) {
14923 Some(Self { syntax })
14924 } else {
14925 None
14926 }
14927 }
14928 #[inline]
14929 fn syntax(&self) -> &SyntaxNode {
14930 &self.syntax
14931 }
14932}
14933impl AstNode for ForceRls {
14934 #[inline]
14935 fn can_cast(kind: SyntaxKind) -> bool {
14936 kind == SyntaxKind::FORCE_RLS
14937 }
14938 #[inline]
14939 fn cast(syntax: SyntaxNode) -> Option<Self> {
14940 if Self::can_cast(syntax.kind()) {
14941 Some(Self { syntax })
14942 } else {
14943 None
14944 }
14945 }
14946 #[inline]
14947 fn syntax(&self) -> &SyntaxNode {
14948 &self.syntax
14949 }
14950}
14951impl AstNode for ForeignKeyConstraint {
14952 #[inline]
14953 fn can_cast(kind: SyntaxKind) -> bool {
14954 kind == SyntaxKind::FOREIGN_KEY_CONSTRAINT
14955 }
14956 #[inline]
14957 fn cast(syntax: SyntaxNode) -> Option<Self> {
14958 if Self::can_cast(syntax.kind()) {
14959 Some(Self { syntax })
14960 } else {
14961 None
14962 }
14963 }
14964 #[inline]
14965 fn syntax(&self) -> &SyntaxNode {
14966 &self.syntax
14967 }
14968}
14969impl AstNode for FrameClause {
14970 #[inline]
14971 fn can_cast(kind: SyntaxKind) -> bool {
14972 kind == SyntaxKind::FRAME_CLAUSE
14973 }
14974 #[inline]
14975 fn cast(syntax: SyntaxNode) -> Option<Self> {
14976 if Self::can_cast(syntax.kind()) {
14977 Some(Self { syntax })
14978 } else {
14979 None
14980 }
14981 }
14982 #[inline]
14983 fn syntax(&self) -> &SyntaxNode {
14984 &self.syntax
14985 }
14986}
14987impl AstNode for FromClause {
14988 #[inline]
14989 fn can_cast(kind: SyntaxKind) -> bool {
14990 kind == SyntaxKind::FROM_CLAUSE
14991 }
14992 #[inline]
14993 fn cast(syntax: SyntaxNode) -> Option<Self> {
14994 if Self::can_cast(syntax.kind()) {
14995 Some(Self { syntax })
14996 } else {
14997 None
14998 }
14999 }
15000 #[inline]
15001 fn syntax(&self) -> &SyntaxNode {
15002 &self.syntax
15003 }
15004}
15005impl AstNode for FromItem {
15006 #[inline]
15007 fn can_cast(kind: SyntaxKind) -> bool {
15008 kind == SyntaxKind::FROM_ITEM
15009 }
15010 #[inline]
15011 fn cast(syntax: SyntaxNode) -> Option<Self> {
15012 if Self::can_cast(syntax.kind()) {
15013 Some(Self { syntax })
15014 } else {
15015 None
15016 }
15017 }
15018 #[inline]
15019 fn syntax(&self) -> &SyntaxNode {
15020 &self.syntax
15021 }
15022}
15023impl AstNode for FuncOptionList {
15024 #[inline]
15025 fn can_cast(kind: SyntaxKind) -> bool {
15026 kind == SyntaxKind::FUNC_OPTION_LIST
15027 }
15028 #[inline]
15029 fn cast(syntax: SyntaxNode) -> Option<Self> {
15030 if Self::can_cast(syntax.kind()) {
15031 Some(Self { syntax })
15032 } else {
15033 None
15034 }
15035 }
15036 #[inline]
15037 fn syntax(&self) -> &SyntaxNode {
15038 &self.syntax
15039 }
15040}
15041impl AstNode for GeneratedConstraint {
15042 #[inline]
15043 fn can_cast(kind: SyntaxKind) -> bool {
15044 kind == SyntaxKind::GENERATED_CONSTRAINT
15045 }
15046 #[inline]
15047 fn cast(syntax: SyntaxNode) -> Option<Self> {
15048 if Self::can_cast(syntax.kind()) {
15049 Some(Self { syntax })
15050 } else {
15051 None
15052 }
15053 }
15054 #[inline]
15055 fn syntax(&self) -> &SyntaxNode {
15056 &self.syntax
15057 }
15058}
15059impl AstNode for Grant {
15060 #[inline]
15061 fn can_cast(kind: SyntaxKind) -> bool {
15062 kind == SyntaxKind::GRANT
15063 }
15064 #[inline]
15065 fn cast(syntax: SyntaxNode) -> Option<Self> {
15066 if Self::can_cast(syntax.kind()) {
15067 Some(Self { syntax })
15068 } else {
15069 None
15070 }
15071 }
15072 #[inline]
15073 fn syntax(&self) -> &SyntaxNode {
15074 &self.syntax
15075 }
15076}
15077impl AstNode for GroupByClause {
15078 #[inline]
15079 fn can_cast(kind: SyntaxKind) -> bool {
15080 kind == SyntaxKind::GROUP_BY_CLAUSE
15081 }
15082 #[inline]
15083 fn cast(syntax: SyntaxNode) -> Option<Self> {
15084 if Self::can_cast(syntax.kind()) {
15085 Some(Self { syntax })
15086 } else {
15087 None
15088 }
15089 }
15090 #[inline]
15091 fn syntax(&self) -> &SyntaxNode {
15092 &self.syntax
15093 }
15094}
15095impl AstNode for GroupingCube {
15096 #[inline]
15097 fn can_cast(kind: SyntaxKind) -> bool {
15098 kind == SyntaxKind::GROUPING_CUBE
15099 }
15100 #[inline]
15101 fn cast(syntax: SyntaxNode) -> Option<Self> {
15102 if Self::can_cast(syntax.kind()) {
15103 Some(Self { syntax })
15104 } else {
15105 None
15106 }
15107 }
15108 #[inline]
15109 fn syntax(&self) -> &SyntaxNode {
15110 &self.syntax
15111 }
15112}
15113impl AstNode for GroupingExpr {
15114 #[inline]
15115 fn can_cast(kind: SyntaxKind) -> bool {
15116 kind == SyntaxKind::GROUPING_EXPR
15117 }
15118 #[inline]
15119 fn cast(syntax: SyntaxNode) -> Option<Self> {
15120 if Self::can_cast(syntax.kind()) {
15121 Some(Self { syntax })
15122 } else {
15123 None
15124 }
15125 }
15126 #[inline]
15127 fn syntax(&self) -> &SyntaxNode {
15128 &self.syntax
15129 }
15130}
15131impl AstNode for GroupingRollup {
15132 #[inline]
15133 fn can_cast(kind: SyntaxKind) -> bool {
15134 kind == SyntaxKind::GROUPING_ROLLUP
15135 }
15136 #[inline]
15137 fn cast(syntax: SyntaxNode) -> Option<Self> {
15138 if Self::can_cast(syntax.kind()) {
15139 Some(Self { syntax })
15140 } else {
15141 None
15142 }
15143 }
15144 #[inline]
15145 fn syntax(&self) -> &SyntaxNode {
15146 &self.syntax
15147 }
15148}
15149impl AstNode for GroupingSets {
15150 #[inline]
15151 fn can_cast(kind: SyntaxKind) -> bool {
15152 kind == SyntaxKind::GROUPING_SETS
15153 }
15154 #[inline]
15155 fn cast(syntax: SyntaxNode) -> Option<Self> {
15156 if Self::can_cast(syntax.kind()) {
15157 Some(Self { syntax })
15158 } else {
15159 None
15160 }
15161 }
15162 #[inline]
15163 fn syntax(&self) -> &SyntaxNode {
15164 &self.syntax
15165 }
15166}
15167impl AstNode for Gteq {
15168 #[inline]
15169 fn can_cast(kind: SyntaxKind) -> bool {
15170 kind == SyntaxKind::GTEQ
15171 }
15172 #[inline]
15173 fn cast(syntax: SyntaxNode) -> Option<Self> {
15174 if Self::can_cast(syntax.kind()) {
15175 Some(Self { syntax })
15176 } else {
15177 None
15178 }
15179 }
15180 #[inline]
15181 fn syntax(&self) -> &SyntaxNode {
15182 &self.syntax
15183 }
15184}
15185impl AstNode for HavingClause {
15186 #[inline]
15187 fn can_cast(kind: SyntaxKind) -> bool {
15188 kind == SyntaxKind::HAVING_CLAUSE
15189 }
15190 #[inline]
15191 fn cast(syntax: SyntaxNode) -> Option<Self> {
15192 if Self::can_cast(syntax.kind()) {
15193 Some(Self { syntax })
15194 } else {
15195 None
15196 }
15197 }
15198 #[inline]
15199 fn syntax(&self) -> &SyntaxNode {
15200 &self.syntax
15201 }
15202}
15203impl AstNode for IfExists {
15204 #[inline]
15205 fn can_cast(kind: SyntaxKind) -> bool {
15206 kind == SyntaxKind::IF_EXISTS
15207 }
15208 #[inline]
15209 fn cast(syntax: SyntaxNode) -> Option<Self> {
15210 if Self::can_cast(syntax.kind()) {
15211 Some(Self { syntax })
15212 } else {
15213 None
15214 }
15215 }
15216 #[inline]
15217 fn syntax(&self) -> &SyntaxNode {
15218 &self.syntax
15219 }
15220}
15221impl AstNode for IfNotExists {
15222 #[inline]
15223 fn can_cast(kind: SyntaxKind) -> bool {
15224 kind == SyntaxKind::IF_NOT_EXISTS
15225 }
15226 #[inline]
15227 fn cast(syntax: SyntaxNode) -> Option<Self> {
15228 if Self::can_cast(syntax.kind()) {
15229 Some(Self { syntax })
15230 } else {
15231 None
15232 }
15233 }
15234 #[inline]
15235 fn syntax(&self) -> &SyntaxNode {
15236 &self.syntax
15237 }
15238}
15239impl AstNode for ImportForeignSchema {
15240 #[inline]
15241 fn can_cast(kind: SyntaxKind) -> bool {
15242 kind == SyntaxKind::IMPORT_FOREIGN_SCHEMA
15243 }
15244 #[inline]
15245 fn cast(syntax: SyntaxNode) -> Option<Self> {
15246 if Self::can_cast(syntax.kind()) {
15247 Some(Self { syntax })
15248 } else {
15249 None
15250 }
15251 }
15252 #[inline]
15253 fn syntax(&self) -> &SyntaxNode {
15254 &self.syntax
15255 }
15256}
15257impl AstNode for IndexExpr {
15258 #[inline]
15259 fn can_cast(kind: SyntaxKind) -> bool {
15260 kind == SyntaxKind::INDEX_EXPR
15261 }
15262 #[inline]
15263 fn cast(syntax: SyntaxNode) -> Option<Self> {
15264 if Self::can_cast(syntax.kind()) {
15265 Some(Self { syntax })
15266 } else {
15267 None
15268 }
15269 }
15270 #[inline]
15271 fn syntax(&self) -> &SyntaxNode {
15272 &self.syntax
15273 }
15274}
15275impl AstNode for Inherit {
15276 #[inline]
15277 fn can_cast(kind: SyntaxKind) -> bool {
15278 kind == SyntaxKind::INHERIT
15279 }
15280 #[inline]
15281 fn cast(syntax: SyntaxNode) -> Option<Self> {
15282 if Self::can_cast(syntax.kind()) {
15283 Some(Self { syntax })
15284 } else {
15285 None
15286 }
15287 }
15288 #[inline]
15289 fn syntax(&self) -> &SyntaxNode {
15290 &self.syntax
15291 }
15292}
15293impl AstNode for Inherits {
15294 #[inline]
15295 fn can_cast(kind: SyntaxKind) -> bool {
15296 kind == SyntaxKind::INHERITS
15297 }
15298 #[inline]
15299 fn cast(syntax: SyntaxNode) -> Option<Self> {
15300 if Self::can_cast(syntax.kind()) {
15301 Some(Self { syntax })
15302 } else {
15303 None
15304 }
15305 }
15306 #[inline]
15307 fn syntax(&self) -> &SyntaxNode {
15308 &self.syntax
15309 }
15310}
15311impl AstNode for InitiallyDeferredConstraintOption {
15312 #[inline]
15313 fn can_cast(kind: SyntaxKind) -> bool {
15314 kind == SyntaxKind::INITIALLY_DEFERRED_CONSTRAINT_OPTION
15315 }
15316 #[inline]
15317 fn cast(syntax: SyntaxNode) -> Option<Self> {
15318 if Self::can_cast(syntax.kind()) {
15319 Some(Self { syntax })
15320 } else {
15321 None
15322 }
15323 }
15324 #[inline]
15325 fn syntax(&self) -> &SyntaxNode {
15326 &self.syntax
15327 }
15328}
15329impl AstNode for InitiallyImmediateConstraintOption {
15330 #[inline]
15331 fn can_cast(kind: SyntaxKind) -> bool {
15332 kind == SyntaxKind::INITIALLY_IMMEDIATE_CONSTRAINT_OPTION
15333 }
15334 #[inline]
15335 fn cast(syntax: SyntaxNode) -> Option<Self> {
15336 if Self::can_cast(syntax.kind()) {
15337 Some(Self { syntax })
15338 } else {
15339 None
15340 }
15341 }
15342 #[inline]
15343 fn syntax(&self) -> &SyntaxNode {
15344 &self.syntax
15345 }
15346}
15347impl AstNode for Insert {
15348 #[inline]
15349 fn can_cast(kind: SyntaxKind) -> bool {
15350 kind == SyntaxKind::INSERT
15351 }
15352 #[inline]
15353 fn cast(syntax: SyntaxNode) -> Option<Self> {
15354 if Self::can_cast(syntax.kind()) {
15355 Some(Self { syntax })
15356 } else {
15357 None
15358 }
15359 }
15360 #[inline]
15361 fn syntax(&self) -> &SyntaxNode {
15362 &self.syntax
15363 }
15364}
15365impl AstNode for IntervalType {
15366 #[inline]
15367 fn can_cast(kind: SyntaxKind) -> bool {
15368 kind == SyntaxKind::INTERVAL_TYPE
15369 }
15370 #[inline]
15371 fn cast(syntax: SyntaxNode) -> Option<Self> {
15372 if Self::can_cast(syntax.kind()) {
15373 Some(Self { syntax })
15374 } else {
15375 None
15376 }
15377 }
15378 #[inline]
15379 fn syntax(&self) -> &SyntaxNode {
15380 &self.syntax
15381 }
15382}
15383impl AstNode for IntoClause {
15384 #[inline]
15385 fn can_cast(kind: SyntaxKind) -> bool {
15386 kind == SyntaxKind::INTO_CLAUSE
15387 }
15388 #[inline]
15389 fn cast(syntax: SyntaxNode) -> Option<Self> {
15390 if Self::can_cast(syntax.kind()) {
15391 Some(Self { syntax })
15392 } else {
15393 None
15394 }
15395 }
15396 #[inline]
15397 fn syntax(&self) -> &SyntaxNode {
15398 &self.syntax
15399 }
15400}
15401impl AstNode for IsDistinctFrom {
15402 #[inline]
15403 fn can_cast(kind: SyntaxKind) -> bool {
15404 kind == SyntaxKind::IS_DISTINCT_FROM
15405 }
15406 #[inline]
15407 fn cast(syntax: SyntaxNode) -> Option<Self> {
15408 if Self::can_cast(syntax.kind()) {
15409 Some(Self { syntax })
15410 } else {
15411 None
15412 }
15413 }
15414 #[inline]
15415 fn syntax(&self) -> &SyntaxNode {
15416 &self.syntax
15417 }
15418}
15419impl AstNode for IsJson {
15420 #[inline]
15421 fn can_cast(kind: SyntaxKind) -> bool {
15422 kind == SyntaxKind::IS_JSON
15423 }
15424 #[inline]
15425 fn cast(syntax: SyntaxNode) -> Option<Self> {
15426 if Self::can_cast(syntax.kind()) {
15427 Some(Self { syntax })
15428 } else {
15429 None
15430 }
15431 }
15432 #[inline]
15433 fn syntax(&self) -> &SyntaxNode {
15434 &self.syntax
15435 }
15436}
15437impl AstNode for IsJsonArray {
15438 #[inline]
15439 fn can_cast(kind: SyntaxKind) -> bool {
15440 kind == SyntaxKind::IS_JSON_ARRAY
15441 }
15442 #[inline]
15443 fn cast(syntax: SyntaxNode) -> Option<Self> {
15444 if Self::can_cast(syntax.kind()) {
15445 Some(Self { syntax })
15446 } else {
15447 None
15448 }
15449 }
15450 #[inline]
15451 fn syntax(&self) -> &SyntaxNode {
15452 &self.syntax
15453 }
15454}
15455impl AstNode for IsJsonObject {
15456 #[inline]
15457 fn can_cast(kind: SyntaxKind) -> bool {
15458 kind == SyntaxKind::IS_JSON_OBJECT
15459 }
15460 #[inline]
15461 fn cast(syntax: SyntaxNode) -> Option<Self> {
15462 if Self::can_cast(syntax.kind()) {
15463 Some(Self { syntax })
15464 } else {
15465 None
15466 }
15467 }
15468 #[inline]
15469 fn syntax(&self) -> &SyntaxNode {
15470 &self.syntax
15471 }
15472}
15473impl AstNode for IsJsonScalar {
15474 #[inline]
15475 fn can_cast(kind: SyntaxKind) -> bool {
15476 kind == SyntaxKind::IS_JSON_SCALAR
15477 }
15478 #[inline]
15479 fn cast(syntax: SyntaxNode) -> Option<Self> {
15480 if Self::can_cast(syntax.kind()) {
15481 Some(Self { syntax })
15482 } else {
15483 None
15484 }
15485 }
15486 #[inline]
15487 fn syntax(&self) -> &SyntaxNode {
15488 &self.syntax
15489 }
15490}
15491impl AstNode for IsJsonValue {
15492 #[inline]
15493 fn can_cast(kind: SyntaxKind) -> bool {
15494 kind == SyntaxKind::IS_JSON_VALUE
15495 }
15496 #[inline]
15497 fn cast(syntax: SyntaxNode) -> Option<Self> {
15498 if Self::can_cast(syntax.kind()) {
15499 Some(Self { syntax })
15500 } else {
15501 None
15502 }
15503 }
15504 #[inline]
15505 fn syntax(&self) -> &SyntaxNode {
15506 &self.syntax
15507 }
15508}
15509impl AstNode for IsNormalized {
15510 #[inline]
15511 fn can_cast(kind: SyntaxKind) -> bool {
15512 kind == SyntaxKind::IS_NORMALIZED
15513 }
15514 #[inline]
15515 fn cast(syntax: SyntaxNode) -> Option<Self> {
15516 if Self::can_cast(syntax.kind()) {
15517 Some(Self { syntax })
15518 } else {
15519 None
15520 }
15521 }
15522 #[inline]
15523 fn syntax(&self) -> &SyntaxNode {
15524 &self.syntax
15525 }
15526}
15527impl AstNode for IsNot {
15528 #[inline]
15529 fn can_cast(kind: SyntaxKind) -> bool {
15530 kind == SyntaxKind::IS_NOT
15531 }
15532 #[inline]
15533 fn cast(syntax: SyntaxNode) -> Option<Self> {
15534 if Self::can_cast(syntax.kind()) {
15535 Some(Self { syntax })
15536 } else {
15537 None
15538 }
15539 }
15540 #[inline]
15541 fn syntax(&self) -> &SyntaxNode {
15542 &self.syntax
15543 }
15544}
15545impl AstNode for IsNotDistinctFrom {
15546 #[inline]
15547 fn can_cast(kind: SyntaxKind) -> bool {
15548 kind == SyntaxKind::IS_NOT_DISTINCT_FROM
15549 }
15550 #[inline]
15551 fn cast(syntax: SyntaxNode) -> Option<Self> {
15552 if Self::can_cast(syntax.kind()) {
15553 Some(Self { syntax })
15554 } else {
15555 None
15556 }
15557 }
15558 #[inline]
15559 fn syntax(&self) -> &SyntaxNode {
15560 &self.syntax
15561 }
15562}
15563impl AstNode for IsNotJson {
15564 #[inline]
15565 fn can_cast(kind: SyntaxKind) -> bool {
15566 kind == SyntaxKind::IS_NOT_JSON
15567 }
15568 #[inline]
15569 fn cast(syntax: SyntaxNode) -> Option<Self> {
15570 if Self::can_cast(syntax.kind()) {
15571 Some(Self { syntax })
15572 } else {
15573 None
15574 }
15575 }
15576 #[inline]
15577 fn syntax(&self) -> &SyntaxNode {
15578 &self.syntax
15579 }
15580}
15581impl AstNode for IsNotJsonArray {
15582 #[inline]
15583 fn can_cast(kind: SyntaxKind) -> bool {
15584 kind == SyntaxKind::IS_NOT_JSON_ARRAY
15585 }
15586 #[inline]
15587 fn cast(syntax: SyntaxNode) -> Option<Self> {
15588 if Self::can_cast(syntax.kind()) {
15589 Some(Self { syntax })
15590 } else {
15591 None
15592 }
15593 }
15594 #[inline]
15595 fn syntax(&self) -> &SyntaxNode {
15596 &self.syntax
15597 }
15598}
15599impl AstNode for IsNotJsonObject {
15600 #[inline]
15601 fn can_cast(kind: SyntaxKind) -> bool {
15602 kind == SyntaxKind::IS_NOT_JSON_OBJECT
15603 }
15604 #[inline]
15605 fn cast(syntax: SyntaxNode) -> Option<Self> {
15606 if Self::can_cast(syntax.kind()) {
15607 Some(Self { syntax })
15608 } else {
15609 None
15610 }
15611 }
15612 #[inline]
15613 fn syntax(&self) -> &SyntaxNode {
15614 &self.syntax
15615 }
15616}
15617impl AstNode for IsNotJsonScalar {
15618 #[inline]
15619 fn can_cast(kind: SyntaxKind) -> bool {
15620 kind == SyntaxKind::IS_NOT_JSON_SCALAR
15621 }
15622 #[inline]
15623 fn cast(syntax: SyntaxNode) -> Option<Self> {
15624 if Self::can_cast(syntax.kind()) {
15625 Some(Self { syntax })
15626 } else {
15627 None
15628 }
15629 }
15630 #[inline]
15631 fn syntax(&self) -> &SyntaxNode {
15632 &self.syntax
15633 }
15634}
15635impl AstNode for IsNotJsonValue {
15636 #[inline]
15637 fn can_cast(kind: SyntaxKind) -> bool {
15638 kind == SyntaxKind::IS_NOT_JSON_VALUE
15639 }
15640 #[inline]
15641 fn cast(syntax: SyntaxNode) -> Option<Self> {
15642 if Self::can_cast(syntax.kind()) {
15643 Some(Self { syntax })
15644 } else {
15645 None
15646 }
15647 }
15648 #[inline]
15649 fn syntax(&self) -> &SyntaxNode {
15650 &self.syntax
15651 }
15652}
15653impl AstNode for IsNotNormalized {
15654 #[inline]
15655 fn can_cast(kind: SyntaxKind) -> bool {
15656 kind == SyntaxKind::IS_NOT_NORMALIZED
15657 }
15658 #[inline]
15659 fn cast(syntax: SyntaxNode) -> Option<Self> {
15660 if Self::can_cast(syntax.kind()) {
15661 Some(Self { syntax })
15662 } else {
15663 None
15664 }
15665 }
15666 #[inline]
15667 fn syntax(&self) -> &SyntaxNode {
15668 &self.syntax
15669 }
15670}
15671impl AstNode for Join {
15672 #[inline]
15673 fn can_cast(kind: SyntaxKind) -> bool {
15674 kind == SyntaxKind::JOIN
15675 }
15676 #[inline]
15677 fn cast(syntax: SyntaxNode) -> Option<Self> {
15678 if Self::can_cast(syntax.kind()) {
15679 Some(Self { syntax })
15680 } else {
15681 None
15682 }
15683 }
15684 #[inline]
15685 fn syntax(&self) -> &SyntaxNode {
15686 &self.syntax
15687 }
15688}
15689impl AstNode for JoinCross {
15690 #[inline]
15691 fn can_cast(kind: SyntaxKind) -> bool {
15692 kind == SyntaxKind::JOIN_CROSS
15693 }
15694 #[inline]
15695 fn cast(syntax: SyntaxNode) -> Option<Self> {
15696 if Self::can_cast(syntax.kind()) {
15697 Some(Self { syntax })
15698 } else {
15699 None
15700 }
15701 }
15702 #[inline]
15703 fn syntax(&self) -> &SyntaxNode {
15704 &self.syntax
15705 }
15706}
15707impl AstNode for JoinExpr {
15708 #[inline]
15709 fn can_cast(kind: SyntaxKind) -> bool {
15710 kind == SyntaxKind::JOIN_EXPR
15711 }
15712 #[inline]
15713 fn cast(syntax: SyntaxNode) -> Option<Self> {
15714 if Self::can_cast(syntax.kind()) {
15715 Some(Self { syntax })
15716 } else {
15717 None
15718 }
15719 }
15720 #[inline]
15721 fn syntax(&self) -> &SyntaxNode {
15722 &self.syntax
15723 }
15724}
15725impl AstNode for JoinFull {
15726 #[inline]
15727 fn can_cast(kind: SyntaxKind) -> bool {
15728 kind == SyntaxKind::JOIN_FULL
15729 }
15730 #[inline]
15731 fn cast(syntax: SyntaxNode) -> Option<Self> {
15732 if Self::can_cast(syntax.kind()) {
15733 Some(Self { syntax })
15734 } else {
15735 None
15736 }
15737 }
15738 #[inline]
15739 fn syntax(&self) -> &SyntaxNode {
15740 &self.syntax
15741 }
15742}
15743impl AstNode for JoinInner {
15744 #[inline]
15745 fn can_cast(kind: SyntaxKind) -> bool {
15746 kind == SyntaxKind::JOIN_INNER
15747 }
15748 #[inline]
15749 fn cast(syntax: SyntaxNode) -> Option<Self> {
15750 if Self::can_cast(syntax.kind()) {
15751 Some(Self { syntax })
15752 } else {
15753 None
15754 }
15755 }
15756 #[inline]
15757 fn syntax(&self) -> &SyntaxNode {
15758 &self.syntax
15759 }
15760}
15761impl AstNode for JoinLeft {
15762 #[inline]
15763 fn can_cast(kind: SyntaxKind) -> bool {
15764 kind == SyntaxKind::JOIN_LEFT
15765 }
15766 #[inline]
15767 fn cast(syntax: SyntaxNode) -> Option<Self> {
15768 if Self::can_cast(syntax.kind()) {
15769 Some(Self { syntax })
15770 } else {
15771 None
15772 }
15773 }
15774 #[inline]
15775 fn syntax(&self) -> &SyntaxNode {
15776 &self.syntax
15777 }
15778}
15779impl AstNode for JoinRight {
15780 #[inline]
15781 fn can_cast(kind: SyntaxKind) -> bool {
15782 kind == SyntaxKind::JOIN_RIGHT
15783 }
15784 #[inline]
15785 fn cast(syntax: SyntaxNode) -> Option<Self> {
15786 if Self::can_cast(syntax.kind()) {
15787 Some(Self { syntax })
15788 } else {
15789 None
15790 }
15791 }
15792 #[inline]
15793 fn syntax(&self) -> &SyntaxNode {
15794 &self.syntax
15795 }
15796}
15797impl AstNode for JoinUsingClause {
15798 #[inline]
15799 fn can_cast(kind: SyntaxKind) -> bool {
15800 kind == SyntaxKind::JOIN_USING_CLAUSE
15801 }
15802 #[inline]
15803 fn cast(syntax: SyntaxNode) -> Option<Self> {
15804 if Self::can_cast(syntax.kind()) {
15805 Some(Self { syntax })
15806 } else {
15807 None
15808 }
15809 }
15810 #[inline]
15811 fn syntax(&self) -> &SyntaxNode {
15812 &self.syntax
15813 }
15814}
15815impl AstNode for JsonBehaviorDefault {
15816 #[inline]
15817 fn can_cast(kind: SyntaxKind) -> bool {
15818 kind == SyntaxKind::JSON_BEHAVIOR_DEFAULT
15819 }
15820 #[inline]
15821 fn cast(syntax: SyntaxNode) -> Option<Self> {
15822 if Self::can_cast(syntax.kind()) {
15823 Some(Self { syntax })
15824 } else {
15825 None
15826 }
15827 }
15828 #[inline]
15829 fn syntax(&self) -> &SyntaxNode {
15830 &self.syntax
15831 }
15832}
15833impl AstNode for JsonBehaviorEmptyArray {
15834 #[inline]
15835 fn can_cast(kind: SyntaxKind) -> bool {
15836 kind == SyntaxKind::JSON_BEHAVIOR_EMPTY_ARRAY
15837 }
15838 #[inline]
15839 fn cast(syntax: SyntaxNode) -> Option<Self> {
15840 if Self::can_cast(syntax.kind()) {
15841 Some(Self { syntax })
15842 } else {
15843 None
15844 }
15845 }
15846 #[inline]
15847 fn syntax(&self) -> &SyntaxNode {
15848 &self.syntax
15849 }
15850}
15851impl AstNode for JsonBehaviorEmptyObject {
15852 #[inline]
15853 fn can_cast(kind: SyntaxKind) -> bool {
15854 kind == SyntaxKind::JSON_BEHAVIOR_EMPTY_OBJECT
15855 }
15856 #[inline]
15857 fn cast(syntax: SyntaxNode) -> Option<Self> {
15858 if Self::can_cast(syntax.kind()) {
15859 Some(Self { syntax })
15860 } else {
15861 None
15862 }
15863 }
15864 #[inline]
15865 fn syntax(&self) -> &SyntaxNode {
15866 &self.syntax
15867 }
15868}
15869impl AstNode for JsonBehaviorError {
15870 #[inline]
15871 fn can_cast(kind: SyntaxKind) -> bool {
15872 kind == SyntaxKind::JSON_BEHAVIOR_ERROR
15873 }
15874 #[inline]
15875 fn cast(syntax: SyntaxNode) -> Option<Self> {
15876 if Self::can_cast(syntax.kind()) {
15877 Some(Self { syntax })
15878 } else {
15879 None
15880 }
15881 }
15882 #[inline]
15883 fn syntax(&self) -> &SyntaxNode {
15884 &self.syntax
15885 }
15886}
15887impl AstNode for JsonBehaviorFalse {
15888 #[inline]
15889 fn can_cast(kind: SyntaxKind) -> bool {
15890 kind == SyntaxKind::JSON_BEHAVIOR_FALSE
15891 }
15892 #[inline]
15893 fn cast(syntax: SyntaxNode) -> Option<Self> {
15894 if Self::can_cast(syntax.kind()) {
15895 Some(Self { syntax })
15896 } else {
15897 None
15898 }
15899 }
15900 #[inline]
15901 fn syntax(&self) -> &SyntaxNode {
15902 &self.syntax
15903 }
15904}
15905impl AstNode for JsonBehaviorNull {
15906 #[inline]
15907 fn can_cast(kind: SyntaxKind) -> bool {
15908 kind == SyntaxKind::JSON_BEHAVIOR_NULL
15909 }
15910 #[inline]
15911 fn cast(syntax: SyntaxNode) -> Option<Self> {
15912 if Self::can_cast(syntax.kind()) {
15913 Some(Self { syntax })
15914 } else {
15915 None
15916 }
15917 }
15918 #[inline]
15919 fn syntax(&self) -> &SyntaxNode {
15920 &self.syntax
15921 }
15922}
15923impl AstNode for JsonBehaviorTrue {
15924 #[inline]
15925 fn can_cast(kind: SyntaxKind) -> bool {
15926 kind == SyntaxKind::JSON_BEHAVIOR_TRUE
15927 }
15928 #[inline]
15929 fn cast(syntax: SyntaxNode) -> Option<Self> {
15930 if Self::can_cast(syntax.kind()) {
15931 Some(Self { syntax })
15932 } else {
15933 None
15934 }
15935 }
15936 #[inline]
15937 fn syntax(&self) -> &SyntaxNode {
15938 &self.syntax
15939 }
15940}
15941impl AstNode for JsonBehaviorUnknown {
15942 #[inline]
15943 fn can_cast(kind: SyntaxKind) -> bool {
15944 kind == SyntaxKind::JSON_BEHAVIOR_UNKNOWN
15945 }
15946 #[inline]
15947 fn cast(syntax: SyntaxNode) -> Option<Self> {
15948 if Self::can_cast(syntax.kind()) {
15949 Some(Self { syntax })
15950 } else {
15951 None
15952 }
15953 }
15954 #[inline]
15955 fn syntax(&self) -> &SyntaxNode {
15956 &self.syntax
15957 }
15958}
15959impl AstNode for JsonFormatClause {
15960 #[inline]
15961 fn can_cast(kind: SyntaxKind) -> bool {
15962 kind == SyntaxKind::JSON_FORMAT_CLAUSE
15963 }
15964 #[inline]
15965 fn cast(syntax: SyntaxNode) -> Option<Self> {
15966 if Self::can_cast(syntax.kind()) {
15967 Some(Self { syntax })
15968 } else {
15969 None
15970 }
15971 }
15972 #[inline]
15973 fn syntax(&self) -> &SyntaxNode {
15974 &self.syntax
15975 }
15976}
15977impl AstNode for JsonKeyValue {
15978 #[inline]
15979 fn can_cast(kind: SyntaxKind) -> bool {
15980 kind == SyntaxKind::JSON_KEY_VALUE
15981 }
15982 #[inline]
15983 fn cast(syntax: SyntaxNode) -> Option<Self> {
15984 if Self::can_cast(syntax.kind()) {
15985 Some(Self { syntax })
15986 } else {
15987 None
15988 }
15989 }
15990 #[inline]
15991 fn syntax(&self) -> &SyntaxNode {
15992 &self.syntax
15993 }
15994}
15995impl AstNode for JsonKeysUniqueClause {
15996 #[inline]
15997 fn can_cast(kind: SyntaxKind) -> bool {
15998 kind == SyntaxKind::JSON_KEYS_UNIQUE_CLAUSE
15999 }
16000 #[inline]
16001 fn cast(syntax: SyntaxNode) -> Option<Self> {
16002 if Self::can_cast(syntax.kind()) {
16003 Some(Self { syntax })
16004 } else {
16005 None
16006 }
16007 }
16008 #[inline]
16009 fn syntax(&self) -> &SyntaxNode {
16010 &self.syntax
16011 }
16012}
16013impl AstNode for JsonNullClause {
16014 #[inline]
16015 fn can_cast(kind: SyntaxKind) -> bool {
16016 kind == SyntaxKind::JSON_NULL_CLAUSE
16017 }
16018 #[inline]
16019 fn cast(syntax: SyntaxNode) -> Option<Self> {
16020 if Self::can_cast(syntax.kind()) {
16021 Some(Self { syntax })
16022 } else {
16023 None
16024 }
16025 }
16026 #[inline]
16027 fn syntax(&self) -> &SyntaxNode {
16028 &self.syntax
16029 }
16030}
16031impl AstNode for JsonOnEmptyClause {
16032 #[inline]
16033 fn can_cast(kind: SyntaxKind) -> bool {
16034 kind == SyntaxKind::JSON_ON_EMPTY_CLAUSE
16035 }
16036 #[inline]
16037 fn cast(syntax: SyntaxNode) -> Option<Self> {
16038 if Self::can_cast(syntax.kind()) {
16039 Some(Self { syntax })
16040 } else {
16041 None
16042 }
16043 }
16044 #[inline]
16045 fn syntax(&self) -> &SyntaxNode {
16046 &self.syntax
16047 }
16048}
16049impl AstNode for JsonOnErrorClause {
16050 #[inline]
16051 fn can_cast(kind: SyntaxKind) -> bool {
16052 kind == SyntaxKind::JSON_ON_ERROR_CLAUSE
16053 }
16054 #[inline]
16055 fn cast(syntax: SyntaxNode) -> Option<Self> {
16056 if Self::can_cast(syntax.kind()) {
16057 Some(Self { syntax })
16058 } else {
16059 None
16060 }
16061 }
16062 #[inline]
16063 fn syntax(&self) -> &SyntaxNode {
16064 &self.syntax
16065 }
16066}
16067impl AstNode for JsonPassingArg {
16068 #[inline]
16069 fn can_cast(kind: SyntaxKind) -> bool {
16070 kind == SyntaxKind::JSON_PASSING_ARG
16071 }
16072 #[inline]
16073 fn cast(syntax: SyntaxNode) -> Option<Self> {
16074 if Self::can_cast(syntax.kind()) {
16075 Some(Self { syntax })
16076 } else {
16077 None
16078 }
16079 }
16080 #[inline]
16081 fn syntax(&self) -> &SyntaxNode {
16082 &self.syntax
16083 }
16084}
16085impl AstNode for JsonPassingClause {
16086 #[inline]
16087 fn can_cast(kind: SyntaxKind) -> bool {
16088 kind == SyntaxKind::JSON_PASSING_CLAUSE
16089 }
16090 #[inline]
16091 fn cast(syntax: SyntaxNode) -> Option<Self> {
16092 if Self::can_cast(syntax.kind()) {
16093 Some(Self { syntax })
16094 } else {
16095 None
16096 }
16097 }
16098 #[inline]
16099 fn syntax(&self) -> &SyntaxNode {
16100 &self.syntax
16101 }
16102}
16103impl AstNode for JsonQuotesClause {
16104 #[inline]
16105 fn can_cast(kind: SyntaxKind) -> bool {
16106 kind == SyntaxKind::JSON_QUOTES_CLAUSE
16107 }
16108 #[inline]
16109 fn cast(syntax: SyntaxNode) -> Option<Self> {
16110 if Self::can_cast(syntax.kind()) {
16111 Some(Self { syntax })
16112 } else {
16113 None
16114 }
16115 }
16116 #[inline]
16117 fn syntax(&self) -> &SyntaxNode {
16118 &self.syntax
16119 }
16120}
16121impl AstNode for JsonReturningClause {
16122 #[inline]
16123 fn can_cast(kind: SyntaxKind) -> bool {
16124 kind == SyntaxKind::JSON_RETURNING_CLAUSE
16125 }
16126 #[inline]
16127 fn cast(syntax: SyntaxNode) -> Option<Self> {
16128 if Self::can_cast(syntax.kind()) {
16129 Some(Self { syntax })
16130 } else {
16131 None
16132 }
16133 }
16134 #[inline]
16135 fn syntax(&self) -> &SyntaxNode {
16136 &self.syntax
16137 }
16138}
16139impl AstNode for JsonTableColumn {
16140 #[inline]
16141 fn can_cast(kind: SyntaxKind) -> bool {
16142 kind == SyntaxKind::JSON_TABLE_COLUMN
16143 }
16144 #[inline]
16145 fn cast(syntax: SyntaxNode) -> Option<Self> {
16146 if Self::can_cast(syntax.kind()) {
16147 Some(Self { syntax })
16148 } else {
16149 None
16150 }
16151 }
16152 #[inline]
16153 fn syntax(&self) -> &SyntaxNode {
16154 &self.syntax
16155 }
16156}
16157impl AstNode for JsonTableColumnList {
16158 #[inline]
16159 fn can_cast(kind: SyntaxKind) -> bool {
16160 kind == SyntaxKind::JSON_TABLE_COLUMN_LIST
16161 }
16162 #[inline]
16163 fn cast(syntax: SyntaxNode) -> Option<Self> {
16164 if Self::can_cast(syntax.kind()) {
16165 Some(Self { syntax })
16166 } else {
16167 None
16168 }
16169 }
16170 #[inline]
16171 fn syntax(&self) -> &SyntaxNode {
16172 &self.syntax
16173 }
16174}
16175impl AstNode for JsonValueExpr {
16176 #[inline]
16177 fn can_cast(kind: SyntaxKind) -> bool {
16178 kind == SyntaxKind::JSON_VALUE_EXPR
16179 }
16180 #[inline]
16181 fn cast(syntax: SyntaxNode) -> Option<Self> {
16182 if Self::can_cast(syntax.kind()) {
16183 Some(Self { syntax })
16184 } else {
16185 None
16186 }
16187 }
16188 #[inline]
16189 fn syntax(&self) -> &SyntaxNode {
16190 &self.syntax
16191 }
16192}
16193impl AstNode for JsonWrapperBehaviorClause {
16194 #[inline]
16195 fn can_cast(kind: SyntaxKind) -> bool {
16196 kind == SyntaxKind::JSON_WRAPPER_BEHAVIOR_CLAUSE
16197 }
16198 #[inline]
16199 fn cast(syntax: SyntaxNode) -> Option<Self> {
16200 if Self::can_cast(syntax.kind()) {
16201 Some(Self { syntax })
16202 } else {
16203 None
16204 }
16205 }
16206 #[inline]
16207 fn syntax(&self) -> &SyntaxNode {
16208 &self.syntax
16209 }
16210}
16211impl AstNode for LanguageFuncOption {
16212 #[inline]
16213 fn can_cast(kind: SyntaxKind) -> bool {
16214 kind == SyntaxKind::LANGUAGE_FUNC_OPTION
16215 }
16216 #[inline]
16217 fn cast(syntax: SyntaxNode) -> Option<Self> {
16218 if Self::can_cast(syntax.kind()) {
16219 Some(Self { syntax })
16220 } else {
16221 None
16222 }
16223 }
16224 #[inline]
16225 fn syntax(&self) -> &SyntaxNode {
16226 &self.syntax
16227 }
16228}
16229impl AstNode for LeakproofFuncOption {
16230 #[inline]
16231 fn can_cast(kind: SyntaxKind) -> bool {
16232 kind == SyntaxKind::LEAKPROOF_FUNC_OPTION
16233 }
16234 #[inline]
16235 fn cast(syntax: SyntaxNode) -> Option<Self> {
16236 if Self::can_cast(syntax.kind()) {
16237 Some(Self { syntax })
16238 } else {
16239 None
16240 }
16241 }
16242 #[inline]
16243 fn syntax(&self) -> &SyntaxNode {
16244 &self.syntax
16245 }
16246}
16247impl AstNode for LikeClause {
16248 #[inline]
16249 fn can_cast(kind: SyntaxKind) -> bool {
16250 kind == SyntaxKind::LIKE_CLAUSE
16251 }
16252 #[inline]
16253 fn cast(syntax: SyntaxNode) -> Option<Self> {
16254 if Self::can_cast(syntax.kind()) {
16255 Some(Self { syntax })
16256 } else {
16257 None
16258 }
16259 }
16260 #[inline]
16261 fn syntax(&self) -> &SyntaxNode {
16262 &self.syntax
16263 }
16264}
16265impl AstNode for LikeOption {
16266 #[inline]
16267 fn can_cast(kind: SyntaxKind) -> bool {
16268 kind == SyntaxKind::LIKE_OPTION
16269 }
16270 #[inline]
16271 fn cast(syntax: SyntaxNode) -> Option<Self> {
16272 if Self::can_cast(syntax.kind()) {
16273 Some(Self { syntax })
16274 } else {
16275 None
16276 }
16277 }
16278 #[inline]
16279 fn syntax(&self) -> &SyntaxNode {
16280 &self.syntax
16281 }
16282}
16283impl AstNode for LimitClause {
16284 #[inline]
16285 fn can_cast(kind: SyntaxKind) -> bool {
16286 kind == SyntaxKind::LIMIT_CLAUSE
16287 }
16288 #[inline]
16289 fn cast(syntax: SyntaxNode) -> Option<Self> {
16290 if Self::can_cast(syntax.kind()) {
16291 Some(Self { syntax })
16292 } else {
16293 None
16294 }
16295 }
16296 #[inline]
16297 fn syntax(&self) -> &SyntaxNode {
16298 &self.syntax
16299 }
16300}
16301impl AstNode for Listen {
16302 #[inline]
16303 fn can_cast(kind: SyntaxKind) -> bool {
16304 kind == SyntaxKind::LISTEN
16305 }
16306 #[inline]
16307 fn cast(syntax: SyntaxNode) -> Option<Self> {
16308 if Self::can_cast(syntax.kind()) {
16309 Some(Self { syntax })
16310 } else {
16311 None
16312 }
16313 }
16314 #[inline]
16315 fn syntax(&self) -> &SyntaxNode {
16316 &self.syntax
16317 }
16318}
16319impl AstNode for Literal {
16320 #[inline]
16321 fn can_cast(kind: SyntaxKind) -> bool {
16322 kind == SyntaxKind::LITERAL
16323 }
16324 #[inline]
16325 fn cast(syntax: SyntaxNode) -> Option<Self> {
16326 if Self::can_cast(syntax.kind()) {
16327 Some(Self { syntax })
16328 } else {
16329 None
16330 }
16331 }
16332 #[inline]
16333 fn syntax(&self) -> &SyntaxNode {
16334 &self.syntax
16335 }
16336}
16337impl AstNode for Load {
16338 #[inline]
16339 fn can_cast(kind: SyntaxKind) -> bool {
16340 kind == SyntaxKind::LOAD
16341 }
16342 #[inline]
16343 fn cast(syntax: SyntaxNode) -> Option<Self> {
16344 if Self::can_cast(syntax.kind()) {
16345 Some(Self { syntax })
16346 } else {
16347 None
16348 }
16349 }
16350 #[inline]
16351 fn syntax(&self) -> &SyntaxNode {
16352 &self.syntax
16353 }
16354}
16355impl AstNode for Lock {
16356 #[inline]
16357 fn can_cast(kind: SyntaxKind) -> bool {
16358 kind == SyntaxKind::LOCK
16359 }
16360 #[inline]
16361 fn cast(syntax: SyntaxNode) -> Option<Self> {
16362 if Self::can_cast(syntax.kind()) {
16363 Some(Self { syntax })
16364 } else {
16365 None
16366 }
16367 }
16368 #[inline]
16369 fn syntax(&self) -> &SyntaxNode {
16370 &self.syntax
16371 }
16372}
16373impl AstNode for LockingClause {
16374 #[inline]
16375 fn can_cast(kind: SyntaxKind) -> bool {
16376 kind == SyntaxKind::LOCKING_CLAUSE
16377 }
16378 #[inline]
16379 fn cast(syntax: SyntaxNode) -> Option<Self> {
16380 if Self::can_cast(syntax.kind()) {
16381 Some(Self { syntax })
16382 } else {
16383 None
16384 }
16385 }
16386 #[inline]
16387 fn syntax(&self) -> &SyntaxNode {
16388 &self.syntax
16389 }
16390}
16391impl AstNode for Lteq {
16392 #[inline]
16393 fn can_cast(kind: SyntaxKind) -> bool {
16394 kind == SyntaxKind::LTEQ
16395 }
16396 #[inline]
16397 fn cast(syntax: SyntaxNode) -> Option<Self> {
16398 if Self::can_cast(syntax.kind()) {
16399 Some(Self { syntax })
16400 } else {
16401 None
16402 }
16403 }
16404 #[inline]
16405 fn syntax(&self) -> &SyntaxNode {
16406 &self.syntax
16407 }
16408}
16409impl AstNode for MatchFull {
16410 #[inline]
16411 fn can_cast(kind: SyntaxKind) -> bool {
16412 kind == SyntaxKind::MATCH_FULL
16413 }
16414 #[inline]
16415 fn cast(syntax: SyntaxNode) -> Option<Self> {
16416 if Self::can_cast(syntax.kind()) {
16417 Some(Self { syntax })
16418 } else {
16419 None
16420 }
16421 }
16422 #[inline]
16423 fn syntax(&self) -> &SyntaxNode {
16424 &self.syntax
16425 }
16426}
16427impl AstNode for MatchPartial {
16428 #[inline]
16429 fn can_cast(kind: SyntaxKind) -> bool {
16430 kind == SyntaxKind::MATCH_PARTIAL
16431 }
16432 #[inline]
16433 fn cast(syntax: SyntaxNode) -> Option<Self> {
16434 if Self::can_cast(syntax.kind()) {
16435 Some(Self { syntax })
16436 } else {
16437 None
16438 }
16439 }
16440 #[inline]
16441 fn syntax(&self) -> &SyntaxNode {
16442 &self.syntax
16443 }
16444}
16445impl AstNode for MatchSimple {
16446 #[inline]
16447 fn can_cast(kind: SyntaxKind) -> bool {
16448 kind == SyntaxKind::MATCH_SIMPLE
16449 }
16450 #[inline]
16451 fn cast(syntax: SyntaxNode) -> Option<Self> {
16452 if Self::can_cast(syntax.kind()) {
16453 Some(Self { syntax })
16454 } else {
16455 None
16456 }
16457 }
16458 #[inline]
16459 fn syntax(&self) -> &SyntaxNode {
16460 &self.syntax
16461 }
16462}
16463impl AstNode for Materialized {
16464 #[inline]
16465 fn can_cast(kind: SyntaxKind) -> bool {
16466 kind == SyntaxKind::MATERIALIZED
16467 }
16468 #[inline]
16469 fn cast(syntax: SyntaxNode) -> Option<Self> {
16470 if Self::can_cast(syntax.kind()) {
16471 Some(Self { syntax })
16472 } else {
16473 None
16474 }
16475 }
16476 #[inline]
16477 fn syntax(&self) -> &SyntaxNode {
16478 &self.syntax
16479 }
16480}
16481impl AstNode for Merge {
16482 #[inline]
16483 fn can_cast(kind: SyntaxKind) -> bool {
16484 kind == SyntaxKind::MERGE
16485 }
16486 #[inline]
16487 fn cast(syntax: SyntaxNode) -> Option<Self> {
16488 if Self::can_cast(syntax.kind()) {
16489 Some(Self { syntax })
16490 } else {
16491 None
16492 }
16493 }
16494 #[inline]
16495 fn syntax(&self) -> &SyntaxNode {
16496 &self.syntax
16497 }
16498}
16499impl AstNode for MergeDelete {
16500 #[inline]
16501 fn can_cast(kind: SyntaxKind) -> bool {
16502 kind == SyntaxKind::MERGE_DELETE
16503 }
16504 #[inline]
16505 fn cast(syntax: SyntaxNode) -> Option<Self> {
16506 if Self::can_cast(syntax.kind()) {
16507 Some(Self { syntax })
16508 } else {
16509 None
16510 }
16511 }
16512 #[inline]
16513 fn syntax(&self) -> &SyntaxNode {
16514 &self.syntax
16515 }
16516}
16517impl AstNode for MergeDoNothing {
16518 #[inline]
16519 fn can_cast(kind: SyntaxKind) -> bool {
16520 kind == SyntaxKind::MERGE_DO_NOTHING
16521 }
16522 #[inline]
16523 fn cast(syntax: SyntaxNode) -> Option<Self> {
16524 if Self::can_cast(syntax.kind()) {
16525 Some(Self { syntax })
16526 } else {
16527 None
16528 }
16529 }
16530 #[inline]
16531 fn syntax(&self) -> &SyntaxNode {
16532 &self.syntax
16533 }
16534}
16535impl AstNode for MergeInsert {
16536 #[inline]
16537 fn can_cast(kind: SyntaxKind) -> bool {
16538 kind == SyntaxKind::MERGE_INSERT
16539 }
16540 #[inline]
16541 fn cast(syntax: SyntaxNode) -> Option<Self> {
16542 if Self::can_cast(syntax.kind()) {
16543 Some(Self { syntax })
16544 } else {
16545 None
16546 }
16547 }
16548 #[inline]
16549 fn syntax(&self) -> &SyntaxNode {
16550 &self.syntax
16551 }
16552}
16553impl AstNode for MergeUpdate {
16554 #[inline]
16555 fn can_cast(kind: SyntaxKind) -> bool {
16556 kind == SyntaxKind::MERGE_UPDATE
16557 }
16558 #[inline]
16559 fn cast(syntax: SyntaxNode) -> Option<Self> {
16560 if Self::can_cast(syntax.kind()) {
16561 Some(Self { syntax })
16562 } else {
16563 None
16564 }
16565 }
16566 #[inline]
16567 fn syntax(&self) -> &SyntaxNode {
16568 &self.syntax
16569 }
16570}
16571impl AstNode for MergeWhenMatched {
16572 #[inline]
16573 fn can_cast(kind: SyntaxKind) -> bool {
16574 kind == SyntaxKind::MERGE_WHEN_MATCHED
16575 }
16576 #[inline]
16577 fn cast(syntax: SyntaxNode) -> Option<Self> {
16578 if Self::can_cast(syntax.kind()) {
16579 Some(Self { syntax })
16580 } else {
16581 None
16582 }
16583 }
16584 #[inline]
16585 fn syntax(&self) -> &SyntaxNode {
16586 &self.syntax
16587 }
16588}
16589impl AstNode for MergeWhenNotMatchedSource {
16590 #[inline]
16591 fn can_cast(kind: SyntaxKind) -> bool {
16592 kind == SyntaxKind::MERGE_WHEN_NOT_MATCHED_SOURCE
16593 }
16594 #[inline]
16595 fn cast(syntax: SyntaxNode) -> Option<Self> {
16596 if Self::can_cast(syntax.kind()) {
16597 Some(Self { syntax })
16598 } else {
16599 None
16600 }
16601 }
16602 #[inline]
16603 fn syntax(&self) -> &SyntaxNode {
16604 &self.syntax
16605 }
16606}
16607impl AstNode for MergeWhenNotMatchedTarget {
16608 #[inline]
16609 fn can_cast(kind: SyntaxKind) -> bool {
16610 kind == SyntaxKind::MERGE_WHEN_NOT_MATCHED_TARGET
16611 }
16612 #[inline]
16613 fn cast(syntax: SyntaxNode) -> Option<Self> {
16614 if Self::can_cast(syntax.kind()) {
16615 Some(Self { syntax })
16616 } else {
16617 None
16618 }
16619 }
16620 #[inline]
16621 fn syntax(&self) -> &SyntaxNode {
16622 &self.syntax
16623 }
16624}
16625impl AstNode for Move {
16626 #[inline]
16627 fn can_cast(kind: SyntaxKind) -> bool {
16628 kind == SyntaxKind::MOVE
16629 }
16630 #[inline]
16631 fn cast(syntax: SyntaxNode) -> Option<Self> {
16632 if Self::can_cast(syntax.kind()) {
16633 Some(Self { syntax })
16634 } else {
16635 None
16636 }
16637 }
16638 #[inline]
16639 fn syntax(&self) -> &SyntaxNode {
16640 &self.syntax
16641 }
16642}
16643impl AstNode for Name {
16644 #[inline]
16645 fn can_cast(kind: SyntaxKind) -> bool {
16646 kind == SyntaxKind::NAME
16647 }
16648 #[inline]
16649 fn cast(syntax: SyntaxNode) -> Option<Self> {
16650 if Self::can_cast(syntax.kind()) {
16651 Some(Self { syntax })
16652 } else {
16653 None
16654 }
16655 }
16656 #[inline]
16657 fn syntax(&self) -> &SyntaxNode {
16658 &self.syntax
16659 }
16660}
16661impl AstNode for NameRef {
16662 #[inline]
16663 fn can_cast(kind: SyntaxKind) -> bool {
16664 kind == SyntaxKind::NAME_REF
16665 }
16666 #[inline]
16667 fn cast(syntax: SyntaxNode) -> Option<Self> {
16668 if Self::can_cast(syntax.kind()) {
16669 Some(Self { syntax })
16670 } else {
16671 None
16672 }
16673 }
16674 #[inline]
16675 fn syntax(&self) -> &SyntaxNode {
16676 &self.syntax
16677 }
16678}
16679impl AstNode for NamedArg {
16680 #[inline]
16681 fn can_cast(kind: SyntaxKind) -> bool {
16682 kind == SyntaxKind::NAMED_ARG
16683 }
16684 #[inline]
16685 fn cast(syntax: SyntaxNode) -> Option<Self> {
16686 if Self::can_cast(syntax.kind()) {
16687 Some(Self { syntax })
16688 } else {
16689 None
16690 }
16691 }
16692 #[inline]
16693 fn syntax(&self) -> &SyntaxNode {
16694 &self.syntax
16695 }
16696}
16697impl AstNode for Neq {
16698 #[inline]
16699 fn can_cast(kind: SyntaxKind) -> bool {
16700 kind == SyntaxKind::NEQ
16701 }
16702 #[inline]
16703 fn cast(syntax: SyntaxNode) -> Option<Self> {
16704 if Self::can_cast(syntax.kind()) {
16705 Some(Self { syntax })
16706 } else {
16707 None
16708 }
16709 }
16710 #[inline]
16711 fn syntax(&self) -> &SyntaxNode {
16712 &self.syntax
16713 }
16714}
16715impl AstNode for Neqb {
16716 #[inline]
16717 fn can_cast(kind: SyntaxKind) -> bool {
16718 kind == SyntaxKind::NEQB
16719 }
16720 #[inline]
16721 fn cast(syntax: SyntaxNode) -> Option<Self> {
16722 if Self::can_cast(syntax.kind()) {
16723 Some(Self { syntax })
16724 } else {
16725 None
16726 }
16727 }
16728 #[inline]
16729 fn syntax(&self) -> &SyntaxNode {
16730 &self.syntax
16731 }
16732}
16733impl AstNode for NoAction {
16734 #[inline]
16735 fn can_cast(kind: SyntaxKind) -> bool {
16736 kind == SyntaxKind::NO_ACTION
16737 }
16738 #[inline]
16739 fn cast(syntax: SyntaxNode) -> Option<Self> {
16740 if Self::can_cast(syntax.kind()) {
16741 Some(Self { syntax })
16742 } else {
16743 None
16744 }
16745 }
16746 #[inline]
16747 fn syntax(&self) -> &SyntaxNode {
16748 &self.syntax
16749 }
16750}
16751impl AstNode for NoForceRls {
16752 #[inline]
16753 fn can_cast(kind: SyntaxKind) -> bool {
16754 kind == SyntaxKind::NO_FORCE_RLS
16755 }
16756 #[inline]
16757 fn cast(syntax: SyntaxNode) -> Option<Self> {
16758 if Self::can_cast(syntax.kind()) {
16759 Some(Self { syntax })
16760 } else {
16761 None
16762 }
16763 }
16764 #[inline]
16765 fn syntax(&self) -> &SyntaxNode {
16766 &self.syntax
16767 }
16768}
16769impl AstNode for NoInherit {
16770 #[inline]
16771 fn can_cast(kind: SyntaxKind) -> bool {
16772 kind == SyntaxKind::NO_INHERIT
16773 }
16774 #[inline]
16775 fn cast(syntax: SyntaxNode) -> Option<Self> {
16776 if Self::can_cast(syntax.kind()) {
16777 Some(Self { syntax })
16778 } else {
16779 None
16780 }
16781 }
16782 #[inline]
16783 fn syntax(&self) -> &SyntaxNode {
16784 &self.syntax
16785 }
16786}
16787impl AstNode for NonStandardParam {
16788 #[inline]
16789 fn can_cast(kind: SyntaxKind) -> bool {
16790 kind == SyntaxKind::NON_STANDARD_PARAM
16791 }
16792 #[inline]
16793 fn cast(syntax: SyntaxNode) -> Option<Self> {
16794 if Self::can_cast(syntax.kind()) {
16795 Some(Self { syntax })
16796 } else {
16797 None
16798 }
16799 }
16800 #[inline]
16801 fn syntax(&self) -> &SyntaxNode {
16802 &self.syntax
16803 }
16804}
16805impl AstNode for NotDeferrable {
16806 #[inline]
16807 fn can_cast(kind: SyntaxKind) -> bool {
16808 kind == SyntaxKind::NOT_DEFERRABLE
16809 }
16810 #[inline]
16811 fn cast(syntax: SyntaxNode) -> Option<Self> {
16812 if Self::can_cast(syntax.kind()) {
16813 Some(Self { syntax })
16814 } else {
16815 None
16816 }
16817 }
16818 #[inline]
16819 fn syntax(&self) -> &SyntaxNode {
16820 &self.syntax
16821 }
16822}
16823impl AstNode for NotDeferrableConstraintOption {
16824 #[inline]
16825 fn can_cast(kind: SyntaxKind) -> bool {
16826 kind == SyntaxKind::NOT_DEFERRABLE_CONSTRAINT_OPTION
16827 }
16828 #[inline]
16829 fn cast(syntax: SyntaxNode) -> Option<Self> {
16830 if Self::can_cast(syntax.kind()) {
16831 Some(Self { syntax })
16832 } else {
16833 None
16834 }
16835 }
16836 #[inline]
16837 fn syntax(&self) -> &SyntaxNode {
16838 &self.syntax
16839 }
16840}
16841impl AstNode for NotEnforced {
16842 #[inline]
16843 fn can_cast(kind: SyntaxKind) -> bool {
16844 kind == SyntaxKind::NOT_ENFORCED
16845 }
16846 #[inline]
16847 fn cast(syntax: SyntaxNode) -> Option<Self> {
16848 if Self::can_cast(syntax.kind()) {
16849 Some(Self { syntax })
16850 } else {
16851 None
16852 }
16853 }
16854 #[inline]
16855 fn syntax(&self) -> &SyntaxNode {
16856 &self.syntax
16857 }
16858}
16859impl AstNode for NotIlike {
16860 #[inline]
16861 fn can_cast(kind: SyntaxKind) -> bool {
16862 kind == SyntaxKind::NOT_ILIKE
16863 }
16864 #[inline]
16865 fn cast(syntax: SyntaxNode) -> Option<Self> {
16866 if Self::can_cast(syntax.kind()) {
16867 Some(Self { syntax })
16868 } else {
16869 None
16870 }
16871 }
16872 #[inline]
16873 fn syntax(&self) -> &SyntaxNode {
16874 &self.syntax
16875 }
16876}
16877impl AstNode for NotIn {
16878 #[inline]
16879 fn can_cast(kind: SyntaxKind) -> bool {
16880 kind == SyntaxKind::NOT_IN
16881 }
16882 #[inline]
16883 fn cast(syntax: SyntaxNode) -> Option<Self> {
16884 if Self::can_cast(syntax.kind()) {
16885 Some(Self { syntax })
16886 } else {
16887 None
16888 }
16889 }
16890 #[inline]
16891 fn syntax(&self) -> &SyntaxNode {
16892 &self.syntax
16893 }
16894}
16895impl AstNode for NotLike {
16896 #[inline]
16897 fn can_cast(kind: SyntaxKind) -> bool {
16898 kind == SyntaxKind::NOT_LIKE
16899 }
16900 #[inline]
16901 fn cast(syntax: SyntaxNode) -> Option<Self> {
16902 if Self::can_cast(syntax.kind()) {
16903 Some(Self { syntax })
16904 } else {
16905 None
16906 }
16907 }
16908 #[inline]
16909 fn syntax(&self) -> &SyntaxNode {
16910 &self.syntax
16911 }
16912}
16913impl AstNode for NotMaterialized {
16914 #[inline]
16915 fn can_cast(kind: SyntaxKind) -> bool {
16916 kind == SyntaxKind::NOT_MATERIALIZED
16917 }
16918 #[inline]
16919 fn cast(syntax: SyntaxNode) -> Option<Self> {
16920 if Self::can_cast(syntax.kind()) {
16921 Some(Self { syntax })
16922 } else {
16923 None
16924 }
16925 }
16926 #[inline]
16927 fn syntax(&self) -> &SyntaxNode {
16928 &self.syntax
16929 }
16930}
16931impl AstNode for NotNullConstraint {
16932 #[inline]
16933 fn can_cast(kind: SyntaxKind) -> bool {
16934 kind == SyntaxKind::NOT_NULL_CONSTRAINT
16935 }
16936 #[inline]
16937 fn cast(syntax: SyntaxNode) -> Option<Self> {
16938 if Self::can_cast(syntax.kind()) {
16939 Some(Self { syntax })
16940 } else {
16941 None
16942 }
16943 }
16944 #[inline]
16945 fn syntax(&self) -> &SyntaxNode {
16946 &self.syntax
16947 }
16948}
16949impl AstNode for NotOf {
16950 #[inline]
16951 fn can_cast(kind: SyntaxKind) -> bool {
16952 kind == SyntaxKind::NOT_OF
16953 }
16954 #[inline]
16955 fn cast(syntax: SyntaxNode) -> Option<Self> {
16956 if Self::can_cast(syntax.kind()) {
16957 Some(Self { syntax })
16958 } else {
16959 None
16960 }
16961 }
16962 #[inline]
16963 fn syntax(&self) -> &SyntaxNode {
16964 &self.syntax
16965 }
16966}
16967impl AstNode for NotSimilarTo {
16968 #[inline]
16969 fn can_cast(kind: SyntaxKind) -> bool {
16970 kind == SyntaxKind::NOT_SIMILAR_TO
16971 }
16972 #[inline]
16973 fn cast(syntax: SyntaxNode) -> Option<Self> {
16974 if Self::can_cast(syntax.kind()) {
16975 Some(Self { syntax })
16976 } else {
16977 None
16978 }
16979 }
16980 #[inline]
16981 fn syntax(&self) -> &SyntaxNode {
16982 &self.syntax
16983 }
16984}
16985impl AstNode for NotValid {
16986 #[inline]
16987 fn can_cast(kind: SyntaxKind) -> bool {
16988 kind == SyntaxKind::NOT_VALID
16989 }
16990 #[inline]
16991 fn cast(syntax: SyntaxNode) -> Option<Self> {
16992 if Self::can_cast(syntax.kind()) {
16993 Some(Self { syntax })
16994 } else {
16995 None
16996 }
16997 }
16998 #[inline]
16999 fn syntax(&self) -> &SyntaxNode {
17000 &self.syntax
17001 }
17002}
17003impl AstNode for Notify {
17004 #[inline]
17005 fn can_cast(kind: SyntaxKind) -> bool {
17006 kind == SyntaxKind::NOTIFY
17007 }
17008 #[inline]
17009 fn cast(syntax: SyntaxNode) -> Option<Self> {
17010 if Self::can_cast(syntax.kind()) {
17011 Some(Self { syntax })
17012 } else {
17013 None
17014 }
17015 }
17016 #[inline]
17017 fn syntax(&self) -> &SyntaxNode {
17018 &self.syntax
17019 }
17020}
17021impl AstNode for NullConstraint {
17022 #[inline]
17023 fn can_cast(kind: SyntaxKind) -> bool {
17024 kind == SyntaxKind::NULL_CONSTRAINT
17025 }
17026 #[inline]
17027 fn cast(syntax: SyntaxNode) -> Option<Self> {
17028 if Self::can_cast(syntax.kind()) {
17029 Some(Self { syntax })
17030 } else {
17031 None
17032 }
17033 }
17034 #[inline]
17035 fn syntax(&self) -> &SyntaxNode {
17036 &self.syntax
17037 }
17038}
17039impl AstNode for NullsDistinct {
17040 #[inline]
17041 fn can_cast(kind: SyntaxKind) -> bool {
17042 kind == SyntaxKind::NULLS_DISTINCT
17043 }
17044 #[inline]
17045 fn cast(syntax: SyntaxNode) -> Option<Self> {
17046 if Self::can_cast(syntax.kind()) {
17047 Some(Self { syntax })
17048 } else {
17049 None
17050 }
17051 }
17052 #[inline]
17053 fn syntax(&self) -> &SyntaxNode {
17054 &self.syntax
17055 }
17056}
17057impl AstNode for NullsFirst {
17058 #[inline]
17059 fn can_cast(kind: SyntaxKind) -> bool {
17060 kind == SyntaxKind::NULLS_FIRST
17061 }
17062 #[inline]
17063 fn cast(syntax: SyntaxNode) -> Option<Self> {
17064 if Self::can_cast(syntax.kind()) {
17065 Some(Self { syntax })
17066 } else {
17067 None
17068 }
17069 }
17070 #[inline]
17071 fn syntax(&self) -> &SyntaxNode {
17072 &self.syntax
17073 }
17074}
17075impl AstNode for NullsLast {
17076 #[inline]
17077 fn can_cast(kind: SyntaxKind) -> bool {
17078 kind == SyntaxKind::NULLS_LAST
17079 }
17080 #[inline]
17081 fn cast(syntax: SyntaxNode) -> Option<Self> {
17082 if Self::can_cast(syntax.kind()) {
17083 Some(Self { syntax })
17084 } else {
17085 None
17086 }
17087 }
17088 #[inline]
17089 fn syntax(&self) -> &SyntaxNode {
17090 &self.syntax
17091 }
17092}
17093impl AstNode for NullsNotDistinct {
17094 #[inline]
17095 fn can_cast(kind: SyntaxKind) -> bool {
17096 kind == SyntaxKind::NULLS_NOT_DISTINCT
17097 }
17098 #[inline]
17099 fn cast(syntax: SyntaxNode) -> Option<Self> {
17100 if Self::can_cast(syntax.kind()) {
17101 Some(Self { syntax })
17102 } else {
17103 None
17104 }
17105 }
17106 #[inline]
17107 fn syntax(&self) -> &SyntaxNode {
17108 &self.syntax
17109 }
17110}
17111impl AstNode for OfType {
17112 #[inline]
17113 fn can_cast(kind: SyntaxKind) -> bool {
17114 kind == SyntaxKind::OF_TYPE
17115 }
17116 #[inline]
17117 fn cast(syntax: SyntaxNode) -> Option<Self> {
17118 if Self::can_cast(syntax.kind()) {
17119 Some(Self { syntax })
17120 } else {
17121 None
17122 }
17123 }
17124 #[inline]
17125 fn syntax(&self) -> &SyntaxNode {
17126 &self.syntax
17127 }
17128}
17129impl AstNode for OffsetClause {
17130 #[inline]
17131 fn can_cast(kind: SyntaxKind) -> bool {
17132 kind == SyntaxKind::OFFSET_CLAUSE
17133 }
17134 #[inline]
17135 fn cast(syntax: SyntaxNode) -> Option<Self> {
17136 if Self::can_cast(syntax.kind()) {
17137 Some(Self { syntax })
17138 } else {
17139 None
17140 }
17141 }
17142 #[inline]
17143 fn syntax(&self) -> &SyntaxNode {
17144 &self.syntax
17145 }
17146}
17147impl AstNode for OnClause {
17148 #[inline]
17149 fn can_cast(kind: SyntaxKind) -> bool {
17150 kind == SyntaxKind::ON_CLAUSE
17151 }
17152 #[inline]
17153 fn cast(syntax: SyntaxNode) -> Option<Self> {
17154 if Self::can_cast(syntax.kind()) {
17155 Some(Self { syntax })
17156 } else {
17157 None
17158 }
17159 }
17160 #[inline]
17161 fn syntax(&self) -> &SyntaxNode {
17162 &self.syntax
17163 }
17164}
17165impl AstNode for OnCommit {
17166 #[inline]
17167 fn can_cast(kind: SyntaxKind) -> bool {
17168 kind == SyntaxKind::ON_COMMIT
17169 }
17170 #[inline]
17171 fn cast(syntax: SyntaxNode) -> Option<Self> {
17172 if Self::can_cast(syntax.kind()) {
17173 Some(Self { syntax })
17174 } else {
17175 None
17176 }
17177 }
17178 #[inline]
17179 fn syntax(&self) -> &SyntaxNode {
17180 &self.syntax
17181 }
17182}
17183impl AstNode for OnDeleteAction {
17184 #[inline]
17185 fn can_cast(kind: SyntaxKind) -> bool {
17186 kind == SyntaxKind::ON_DELETE_ACTION
17187 }
17188 #[inline]
17189 fn cast(syntax: SyntaxNode) -> Option<Self> {
17190 if Self::can_cast(syntax.kind()) {
17191 Some(Self { syntax })
17192 } else {
17193 None
17194 }
17195 }
17196 #[inline]
17197 fn syntax(&self) -> &SyntaxNode {
17198 &self.syntax
17199 }
17200}
17201impl AstNode for OnUpdateAction {
17202 #[inline]
17203 fn can_cast(kind: SyntaxKind) -> bool {
17204 kind == SyntaxKind::ON_UPDATE_ACTION
17205 }
17206 #[inline]
17207 fn cast(syntax: SyntaxNode) -> Option<Self> {
17208 if Self::can_cast(syntax.kind()) {
17209 Some(Self { syntax })
17210 } else {
17211 None
17212 }
17213 }
17214 #[inline]
17215 fn syntax(&self) -> &SyntaxNode {
17216 &self.syntax
17217 }
17218}
17219impl AstNode for Op {
17220 #[inline]
17221 fn can_cast(kind: SyntaxKind) -> bool {
17222 kind == SyntaxKind::OP
17223 }
17224 #[inline]
17225 fn cast(syntax: SyntaxNode) -> Option<Self> {
17226 if Self::can_cast(syntax.kind()) {
17227 Some(Self { syntax })
17228 } else {
17229 None
17230 }
17231 }
17232 #[inline]
17233 fn syntax(&self) -> &SyntaxNode {
17234 &self.syntax
17235 }
17236}
17237impl AstNode for OperatorCall {
17238 #[inline]
17239 fn can_cast(kind: SyntaxKind) -> bool {
17240 kind == SyntaxKind::OPERATOR_CALL
17241 }
17242 #[inline]
17243 fn cast(syntax: SyntaxNode) -> Option<Self> {
17244 if Self::can_cast(syntax.kind()) {
17245 Some(Self { syntax })
17246 } else {
17247 None
17248 }
17249 }
17250 #[inline]
17251 fn syntax(&self) -> &SyntaxNode {
17252 &self.syntax
17253 }
17254}
17255impl AstNode for OptionsList {
17256 #[inline]
17257 fn can_cast(kind: SyntaxKind) -> bool {
17258 kind == SyntaxKind::OPTIONS_LIST
17259 }
17260 #[inline]
17261 fn cast(syntax: SyntaxNode) -> Option<Self> {
17262 if Self::can_cast(syntax.kind()) {
17263 Some(Self { syntax })
17264 } else {
17265 None
17266 }
17267 }
17268 #[inline]
17269 fn syntax(&self) -> &SyntaxNode {
17270 &self.syntax
17271 }
17272}
17273impl AstNode for OrReplace {
17274 #[inline]
17275 fn can_cast(kind: SyntaxKind) -> bool {
17276 kind == SyntaxKind::OR_REPLACE
17277 }
17278 #[inline]
17279 fn cast(syntax: SyntaxNode) -> Option<Self> {
17280 if Self::can_cast(syntax.kind()) {
17281 Some(Self { syntax })
17282 } else {
17283 None
17284 }
17285 }
17286 #[inline]
17287 fn syntax(&self) -> &SyntaxNode {
17288 &self.syntax
17289 }
17290}
17291impl AstNode for OrderByClause {
17292 #[inline]
17293 fn can_cast(kind: SyntaxKind) -> bool {
17294 kind == SyntaxKind::ORDER_BY_CLAUSE
17295 }
17296 #[inline]
17297 fn cast(syntax: SyntaxNode) -> Option<Self> {
17298 if Self::can_cast(syntax.kind()) {
17299 Some(Self { syntax })
17300 } else {
17301 None
17302 }
17303 }
17304 #[inline]
17305 fn syntax(&self) -> &SyntaxNode {
17306 &self.syntax
17307 }
17308}
17309impl AstNode for OverClause {
17310 #[inline]
17311 fn can_cast(kind: SyntaxKind) -> bool {
17312 kind == SyntaxKind::OVER_CLAUSE
17313 }
17314 #[inline]
17315 fn cast(syntax: SyntaxNode) -> Option<Self> {
17316 if Self::can_cast(syntax.kind()) {
17317 Some(Self { syntax })
17318 } else {
17319 None
17320 }
17321 }
17322 #[inline]
17323 fn syntax(&self) -> &SyntaxNode {
17324 &self.syntax
17325 }
17326}
17327impl AstNode for OwnerTo {
17328 #[inline]
17329 fn can_cast(kind: SyntaxKind) -> bool {
17330 kind == SyntaxKind::OWNER_TO
17331 }
17332 #[inline]
17333 fn cast(syntax: SyntaxNode) -> Option<Self> {
17334 if Self::can_cast(syntax.kind()) {
17335 Some(Self { syntax })
17336 } else {
17337 None
17338 }
17339 }
17340 #[inline]
17341 fn syntax(&self) -> &SyntaxNode {
17342 &self.syntax
17343 }
17344}
17345impl AstNode for ParallelFuncOption {
17346 #[inline]
17347 fn can_cast(kind: SyntaxKind) -> bool {
17348 kind == SyntaxKind::PARALLEL_FUNC_OPTION
17349 }
17350 #[inline]
17351 fn cast(syntax: SyntaxNode) -> Option<Self> {
17352 if Self::can_cast(syntax.kind()) {
17353 Some(Self { syntax })
17354 } else {
17355 None
17356 }
17357 }
17358 #[inline]
17359 fn syntax(&self) -> &SyntaxNode {
17360 &self.syntax
17361 }
17362}
17363impl AstNode for Param {
17364 #[inline]
17365 fn can_cast(kind: SyntaxKind) -> bool {
17366 kind == SyntaxKind::PARAM
17367 }
17368 #[inline]
17369 fn cast(syntax: SyntaxNode) -> Option<Self> {
17370 if Self::can_cast(syntax.kind()) {
17371 Some(Self { syntax })
17372 } else {
17373 None
17374 }
17375 }
17376 #[inline]
17377 fn syntax(&self) -> &SyntaxNode {
17378 &self.syntax
17379 }
17380}
17381impl AstNode for ParamDefault {
17382 #[inline]
17383 fn can_cast(kind: SyntaxKind) -> bool {
17384 kind == SyntaxKind::PARAM_DEFAULT
17385 }
17386 #[inline]
17387 fn cast(syntax: SyntaxNode) -> Option<Self> {
17388 if Self::can_cast(syntax.kind()) {
17389 Some(Self { syntax })
17390 } else {
17391 None
17392 }
17393 }
17394 #[inline]
17395 fn syntax(&self) -> &SyntaxNode {
17396 &self.syntax
17397 }
17398}
17399impl AstNode for ParamIn {
17400 #[inline]
17401 fn can_cast(kind: SyntaxKind) -> bool {
17402 kind == SyntaxKind::PARAM_IN
17403 }
17404 #[inline]
17405 fn cast(syntax: SyntaxNode) -> Option<Self> {
17406 if Self::can_cast(syntax.kind()) {
17407 Some(Self { syntax })
17408 } else {
17409 None
17410 }
17411 }
17412 #[inline]
17413 fn syntax(&self) -> &SyntaxNode {
17414 &self.syntax
17415 }
17416}
17417impl AstNode for ParamInOut {
17418 #[inline]
17419 fn can_cast(kind: SyntaxKind) -> bool {
17420 kind == SyntaxKind::PARAM_IN_OUT
17421 }
17422 #[inline]
17423 fn cast(syntax: SyntaxNode) -> Option<Self> {
17424 if Self::can_cast(syntax.kind()) {
17425 Some(Self { syntax })
17426 } else {
17427 None
17428 }
17429 }
17430 #[inline]
17431 fn syntax(&self) -> &SyntaxNode {
17432 &self.syntax
17433 }
17434}
17435impl AstNode for ParamList {
17436 #[inline]
17437 fn can_cast(kind: SyntaxKind) -> bool {
17438 kind == SyntaxKind::PARAM_LIST
17439 }
17440 #[inline]
17441 fn cast(syntax: SyntaxNode) -> Option<Self> {
17442 if Self::can_cast(syntax.kind()) {
17443 Some(Self { syntax })
17444 } else {
17445 None
17446 }
17447 }
17448 #[inline]
17449 fn syntax(&self) -> &SyntaxNode {
17450 &self.syntax
17451 }
17452}
17453impl AstNode for ParamOut {
17454 #[inline]
17455 fn can_cast(kind: SyntaxKind) -> bool {
17456 kind == SyntaxKind::PARAM_OUT
17457 }
17458 #[inline]
17459 fn cast(syntax: SyntaxNode) -> Option<Self> {
17460 if Self::can_cast(syntax.kind()) {
17461 Some(Self { syntax })
17462 } else {
17463 None
17464 }
17465 }
17466 #[inline]
17467 fn syntax(&self) -> &SyntaxNode {
17468 &self.syntax
17469 }
17470}
17471impl AstNode for ParamVariadic {
17472 #[inline]
17473 fn can_cast(kind: SyntaxKind) -> bool {
17474 kind == SyntaxKind::PARAM_VARIADIC
17475 }
17476 #[inline]
17477 fn cast(syntax: SyntaxNode) -> Option<Self> {
17478 if Self::can_cast(syntax.kind()) {
17479 Some(Self { syntax })
17480 } else {
17481 None
17482 }
17483 }
17484 #[inline]
17485 fn syntax(&self) -> &SyntaxNode {
17486 &self.syntax
17487 }
17488}
17489impl AstNode for ParenExpr {
17490 #[inline]
17491 fn can_cast(kind: SyntaxKind) -> bool {
17492 kind == SyntaxKind::PAREN_EXPR
17493 }
17494 #[inline]
17495 fn cast(syntax: SyntaxNode) -> Option<Self> {
17496 if Self::can_cast(syntax.kind()) {
17497 Some(Self { syntax })
17498 } else {
17499 None
17500 }
17501 }
17502 #[inline]
17503 fn syntax(&self) -> &SyntaxNode {
17504 &self.syntax
17505 }
17506}
17507impl AstNode for ParenSelect {
17508 #[inline]
17509 fn can_cast(kind: SyntaxKind) -> bool {
17510 kind == SyntaxKind::PAREN_SELECT
17511 }
17512 #[inline]
17513 fn cast(syntax: SyntaxNode) -> Option<Self> {
17514 if Self::can_cast(syntax.kind()) {
17515 Some(Self { syntax })
17516 } else {
17517 None
17518 }
17519 }
17520 #[inline]
17521 fn syntax(&self) -> &SyntaxNode {
17522 &self.syntax
17523 }
17524}
17525impl AstNode for PartitionBy {
17526 #[inline]
17527 fn can_cast(kind: SyntaxKind) -> bool {
17528 kind == SyntaxKind::PARTITION_BY
17529 }
17530 #[inline]
17531 fn cast(syntax: SyntaxNode) -> Option<Self> {
17532 if Self::can_cast(syntax.kind()) {
17533 Some(Self { syntax })
17534 } else {
17535 None
17536 }
17537 }
17538 #[inline]
17539 fn syntax(&self) -> &SyntaxNode {
17540 &self.syntax
17541 }
17542}
17543impl AstNode for PartitionDefault {
17544 #[inline]
17545 fn can_cast(kind: SyntaxKind) -> bool {
17546 kind == SyntaxKind::PARTITION_DEFAULT
17547 }
17548 #[inline]
17549 fn cast(syntax: SyntaxNode) -> Option<Self> {
17550 if Self::can_cast(syntax.kind()) {
17551 Some(Self { syntax })
17552 } else {
17553 None
17554 }
17555 }
17556 #[inline]
17557 fn syntax(&self) -> &SyntaxNode {
17558 &self.syntax
17559 }
17560}
17561impl AstNode for PartitionForValuesFrom {
17562 #[inline]
17563 fn can_cast(kind: SyntaxKind) -> bool {
17564 kind == SyntaxKind::PARTITION_FOR_VALUES_FROM
17565 }
17566 #[inline]
17567 fn cast(syntax: SyntaxNode) -> Option<Self> {
17568 if Self::can_cast(syntax.kind()) {
17569 Some(Self { syntax })
17570 } else {
17571 None
17572 }
17573 }
17574 #[inline]
17575 fn syntax(&self) -> &SyntaxNode {
17576 &self.syntax
17577 }
17578}
17579impl AstNode for PartitionForValuesIn {
17580 #[inline]
17581 fn can_cast(kind: SyntaxKind) -> bool {
17582 kind == SyntaxKind::PARTITION_FOR_VALUES_IN
17583 }
17584 #[inline]
17585 fn cast(syntax: SyntaxNode) -> Option<Self> {
17586 if Self::can_cast(syntax.kind()) {
17587 Some(Self { syntax })
17588 } else {
17589 None
17590 }
17591 }
17592 #[inline]
17593 fn syntax(&self) -> &SyntaxNode {
17594 &self.syntax
17595 }
17596}
17597impl AstNode for PartitionForValuesWith {
17598 #[inline]
17599 fn can_cast(kind: SyntaxKind) -> bool {
17600 kind == SyntaxKind::PARTITION_FOR_VALUES_WITH
17601 }
17602 #[inline]
17603 fn cast(syntax: SyntaxNode) -> Option<Self> {
17604 if Self::can_cast(syntax.kind()) {
17605 Some(Self { syntax })
17606 } else {
17607 None
17608 }
17609 }
17610 #[inline]
17611 fn syntax(&self) -> &SyntaxNode {
17612 &self.syntax
17613 }
17614}
17615impl AstNode for PartitionItem {
17616 #[inline]
17617 fn can_cast(kind: SyntaxKind) -> bool {
17618 kind == SyntaxKind::PARTITION_ITEM
17619 }
17620 #[inline]
17621 fn cast(syntax: SyntaxNode) -> Option<Self> {
17622 if Self::can_cast(syntax.kind()) {
17623 Some(Self { syntax })
17624 } else {
17625 None
17626 }
17627 }
17628 #[inline]
17629 fn syntax(&self) -> &SyntaxNode {
17630 &self.syntax
17631 }
17632}
17633impl AstNode for PartitionItemList {
17634 #[inline]
17635 fn can_cast(kind: SyntaxKind) -> bool {
17636 kind == SyntaxKind::PARTITION_ITEM_LIST
17637 }
17638 #[inline]
17639 fn cast(syntax: SyntaxNode) -> Option<Self> {
17640 if Self::can_cast(syntax.kind()) {
17641 Some(Self { syntax })
17642 } else {
17643 None
17644 }
17645 }
17646 #[inline]
17647 fn syntax(&self) -> &SyntaxNode {
17648 &self.syntax
17649 }
17650}
17651impl AstNode for PartitionOf {
17652 #[inline]
17653 fn can_cast(kind: SyntaxKind) -> bool {
17654 kind == SyntaxKind::PARTITION_OF
17655 }
17656 #[inline]
17657 fn cast(syntax: SyntaxNode) -> Option<Self> {
17658 if Self::can_cast(syntax.kind()) {
17659 Some(Self { syntax })
17660 } else {
17661 None
17662 }
17663 }
17664 #[inline]
17665 fn syntax(&self) -> &SyntaxNode {
17666 &self.syntax
17667 }
17668}
17669impl AstNode for Path {
17670 #[inline]
17671 fn can_cast(kind: SyntaxKind) -> bool {
17672 kind == SyntaxKind::PATH
17673 }
17674 #[inline]
17675 fn cast(syntax: SyntaxNode) -> Option<Self> {
17676 if Self::can_cast(syntax.kind()) {
17677 Some(Self { syntax })
17678 } else {
17679 None
17680 }
17681 }
17682 #[inline]
17683 fn syntax(&self) -> &SyntaxNode {
17684 &self.syntax
17685 }
17686}
17687impl AstNode for PathSegment {
17688 #[inline]
17689 fn can_cast(kind: SyntaxKind) -> bool {
17690 kind == SyntaxKind::PATH_SEGMENT
17691 }
17692 #[inline]
17693 fn cast(syntax: SyntaxNode) -> Option<Self> {
17694 if Self::can_cast(syntax.kind()) {
17695 Some(Self { syntax })
17696 } else {
17697 None
17698 }
17699 }
17700 #[inline]
17701 fn syntax(&self) -> &SyntaxNode {
17702 &self.syntax
17703 }
17704}
17705impl AstNode for PathType {
17706 #[inline]
17707 fn can_cast(kind: SyntaxKind) -> bool {
17708 kind == SyntaxKind::PATH_TYPE
17709 }
17710 #[inline]
17711 fn cast(syntax: SyntaxNode) -> Option<Self> {
17712 if Self::can_cast(syntax.kind()) {
17713 Some(Self { syntax })
17714 } else {
17715 None
17716 }
17717 }
17718 #[inline]
17719 fn syntax(&self) -> &SyntaxNode {
17720 &self.syntax
17721 }
17722}
17723impl AstNode for PercentType {
17724 #[inline]
17725 fn can_cast(kind: SyntaxKind) -> bool {
17726 kind == SyntaxKind::PERCENT_TYPE
17727 }
17728 #[inline]
17729 fn cast(syntax: SyntaxNode) -> Option<Self> {
17730 if Self::can_cast(syntax.kind()) {
17731 Some(Self { syntax })
17732 } else {
17733 None
17734 }
17735 }
17736 #[inline]
17737 fn syntax(&self) -> &SyntaxNode {
17738 &self.syntax
17739 }
17740}
17741impl AstNode for PercentTypeClause {
17742 #[inline]
17743 fn can_cast(kind: SyntaxKind) -> bool {
17744 kind == SyntaxKind::PERCENT_TYPE_CLAUSE
17745 }
17746 #[inline]
17747 fn cast(syntax: SyntaxNode) -> Option<Self> {
17748 if Self::can_cast(syntax.kind()) {
17749 Some(Self { syntax })
17750 } else {
17751 None
17752 }
17753 }
17754 #[inline]
17755 fn syntax(&self) -> &SyntaxNode {
17756 &self.syntax
17757 }
17758}
17759impl AstNode for PostfixExpr {
17760 #[inline]
17761 fn can_cast(kind: SyntaxKind) -> bool {
17762 kind == SyntaxKind::POSTFIX_EXPR
17763 }
17764 #[inline]
17765 fn cast(syntax: SyntaxNode) -> Option<Self> {
17766 if Self::can_cast(syntax.kind()) {
17767 Some(Self { syntax })
17768 } else {
17769 None
17770 }
17771 }
17772 #[inline]
17773 fn syntax(&self) -> &SyntaxNode {
17774 &self.syntax
17775 }
17776}
17777impl AstNode for PrefixExpr {
17778 #[inline]
17779 fn can_cast(kind: SyntaxKind) -> bool {
17780 kind == SyntaxKind::PREFIX_EXPR
17781 }
17782 #[inline]
17783 fn cast(syntax: SyntaxNode) -> Option<Self> {
17784 if Self::can_cast(syntax.kind()) {
17785 Some(Self { syntax })
17786 } else {
17787 None
17788 }
17789 }
17790 #[inline]
17791 fn syntax(&self) -> &SyntaxNode {
17792 &self.syntax
17793 }
17794}
17795impl AstNode for Prepare {
17796 #[inline]
17797 fn can_cast(kind: SyntaxKind) -> bool {
17798 kind == SyntaxKind::PREPARE
17799 }
17800 #[inline]
17801 fn cast(syntax: SyntaxNode) -> Option<Self> {
17802 if Self::can_cast(syntax.kind()) {
17803 Some(Self { syntax })
17804 } else {
17805 None
17806 }
17807 }
17808 #[inline]
17809 fn syntax(&self) -> &SyntaxNode {
17810 &self.syntax
17811 }
17812}
17813impl AstNode for PrepareTransaction {
17814 #[inline]
17815 fn can_cast(kind: SyntaxKind) -> bool {
17816 kind == SyntaxKind::PREPARE_TRANSACTION
17817 }
17818 #[inline]
17819 fn cast(syntax: SyntaxNode) -> Option<Self> {
17820 if Self::can_cast(syntax.kind()) {
17821 Some(Self { syntax })
17822 } else {
17823 None
17824 }
17825 }
17826 #[inline]
17827 fn syntax(&self) -> &SyntaxNode {
17828 &self.syntax
17829 }
17830}
17831impl AstNode for PreserveRows {
17832 #[inline]
17833 fn can_cast(kind: SyntaxKind) -> bool {
17834 kind == SyntaxKind::PRESERVE_ROWS
17835 }
17836 #[inline]
17837 fn cast(syntax: SyntaxNode) -> Option<Self> {
17838 if Self::can_cast(syntax.kind()) {
17839 Some(Self { syntax })
17840 } else {
17841 None
17842 }
17843 }
17844 #[inline]
17845 fn syntax(&self) -> &SyntaxNode {
17846 &self.syntax
17847 }
17848}
17849impl AstNode for PrimaryKeyConstraint {
17850 #[inline]
17851 fn can_cast(kind: SyntaxKind) -> bool {
17852 kind == SyntaxKind::PRIMARY_KEY_CONSTRAINT
17853 }
17854 #[inline]
17855 fn cast(syntax: SyntaxNode) -> Option<Self> {
17856 if Self::can_cast(syntax.kind()) {
17857 Some(Self { syntax })
17858 } else {
17859 None
17860 }
17861 }
17862 #[inline]
17863 fn syntax(&self) -> &SyntaxNode {
17864 &self.syntax
17865 }
17866}
17867impl AstNode for ReadCommitted {
17868 #[inline]
17869 fn can_cast(kind: SyntaxKind) -> bool {
17870 kind == SyntaxKind::READ_COMMITTED
17871 }
17872 #[inline]
17873 fn cast(syntax: SyntaxNode) -> Option<Self> {
17874 if Self::can_cast(syntax.kind()) {
17875 Some(Self { syntax })
17876 } else {
17877 None
17878 }
17879 }
17880 #[inline]
17881 fn syntax(&self) -> &SyntaxNode {
17882 &self.syntax
17883 }
17884}
17885impl AstNode for ReadOnly {
17886 #[inline]
17887 fn can_cast(kind: SyntaxKind) -> bool {
17888 kind == SyntaxKind::READ_ONLY
17889 }
17890 #[inline]
17891 fn cast(syntax: SyntaxNode) -> Option<Self> {
17892 if Self::can_cast(syntax.kind()) {
17893 Some(Self { syntax })
17894 } else {
17895 None
17896 }
17897 }
17898 #[inline]
17899 fn syntax(&self) -> &SyntaxNode {
17900 &self.syntax
17901 }
17902}
17903impl AstNode for ReadUncommitted {
17904 #[inline]
17905 fn can_cast(kind: SyntaxKind) -> bool {
17906 kind == SyntaxKind::READ_UNCOMMITTED
17907 }
17908 #[inline]
17909 fn cast(syntax: SyntaxNode) -> Option<Self> {
17910 if Self::can_cast(syntax.kind()) {
17911 Some(Self { syntax })
17912 } else {
17913 None
17914 }
17915 }
17916 #[inline]
17917 fn syntax(&self) -> &SyntaxNode {
17918 &self.syntax
17919 }
17920}
17921impl AstNode for ReadWrite {
17922 #[inline]
17923 fn can_cast(kind: SyntaxKind) -> bool {
17924 kind == SyntaxKind::READ_WRITE
17925 }
17926 #[inline]
17927 fn cast(syntax: SyntaxNode) -> Option<Self> {
17928 if Self::can_cast(syntax.kind()) {
17929 Some(Self { syntax })
17930 } else {
17931 None
17932 }
17933 }
17934 #[inline]
17935 fn syntax(&self) -> &SyntaxNode {
17936 &self.syntax
17937 }
17938}
17939impl AstNode for Reassign {
17940 #[inline]
17941 fn can_cast(kind: SyntaxKind) -> bool {
17942 kind == SyntaxKind::REASSIGN
17943 }
17944 #[inline]
17945 fn cast(syntax: SyntaxNode) -> Option<Self> {
17946 if Self::can_cast(syntax.kind()) {
17947 Some(Self { syntax })
17948 } else {
17949 None
17950 }
17951 }
17952 #[inline]
17953 fn syntax(&self) -> &SyntaxNode {
17954 &self.syntax
17955 }
17956}
17957impl AstNode for ReferencesConstraint {
17958 #[inline]
17959 fn can_cast(kind: SyntaxKind) -> bool {
17960 kind == SyntaxKind::REFERENCES_CONSTRAINT
17961 }
17962 #[inline]
17963 fn cast(syntax: SyntaxNode) -> Option<Self> {
17964 if Self::can_cast(syntax.kind()) {
17965 Some(Self { syntax })
17966 } else {
17967 None
17968 }
17969 }
17970 #[inline]
17971 fn syntax(&self) -> &SyntaxNode {
17972 &self.syntax
17973 }
17974}
17975impl AstNode for Refresh {
17976 #[inline]
17977 fn can_cast(kind: SyntaxKind) -> bool {
17978 kind == SyntaxKind::REFRESH
17979 }
17980 #[inline]
17981 fn cast(syntax: SyntaxNode) -> Option<Self> {
17982 if Self::can_cast(syntax.kind()) {
17983 Some(Self { syntax })
17984 } else {
17985 None
17986 }
17987 }
17988 #[inline]
17989 fn syntax(&self) -> &SyntaxNode {
17990 &self.syntax
17991 }
17992}
17993impl AstNode for Reindex {
17994 #[inline]
17995 fn can_cast(kind: SyntaxKind) -> bool {
17996 kind == SyntaxKind::REINDEX
17997 }
17998 #[inline]
17999 fn cast(syntax: SyntaxNode) -> Option<Self> {
18000 if Self::can_cast(syntax.kind()) {
18001 Some(Self { syntax })
18002 } else {
18003 None
18004 }
18005 }
18006 #[inline]
18007 fn syntax(&self) -> &SyntaxNode {
18008 &self.syntax
18009 }
18010}
18011impl AstNode for RelationName {
18012 #[inline]
18013 fn can_cast(kind: SyntaxKind) -> bool {
18014 kind == SyntaxKind::RELATION_NAME
18015 }
18016 #[inline]
18017 fn cast(syntax: SyntaxNode) -> Option<Self> {
18018 if Self::can_cast(syntax.kind()) {
18019 Some(Self { syntax })
18020 } else {
18021 None
18022 }
18023 }
18024 #[inline]
18025 fn syntax(&self) -> &SyntaxNode {
18026 &self.syntax
18027 }
18028}
18029impl AstNode for ReleaseSavepoint {
18030 #[inline]
18031 fn can_cast(kind: SyntaxKind) -> bool {
18032 kind == SyntaxKind::RELEASE_SAVEPOINT
18033 }
18034 #[inline]
18035 fn cast(syntax: SyntaxNode) -> Option<Self> {
18036 if Self::can_cast(syntax.kind()) {
18037 Some(Self { syntax })
18038 } else {
18039 None
18040 }
18041 }
18042 #[inline]
18043 fn syntax(&self) -> &SyntaxNode {
18044 &self.syntax
18045 }
18046}
18047impl AstNode for RenameColumn {
18048 #[inline]
18049 fn can_cast(kind: SyntaxKind) -> bool {
18050 kind == SyntaxKind::RENAME_COLUMN
18051 }
18052 #[inline]
18053 fn cast(syntax: SyntaxNode) -> Option<Self> {
18054 if Self::can_cast(syntax.kind()) {
18055 Some(Self { syntax })
18056 } else {
18057 None
18058 }
18059 }
18060 #[inline]
18061 fn syntax(&self) -> &SyntaxNode {
18062 &self.syntax
18063 }
18064}
18065impl AstNode for RenameConstraint {
18066 #[inline]
18067 fn can_cast(kind: SyntaxKind) -> bool {
18068 kind == SyntaxKind::RENAME_CONSTRAINT
18069 }
18070 #[inline]
18071 fn cast(syntax: SyntaxNode) -> Option<Self> {
18072 if Self::can_cast(syntax.kind()) {
18073 Some(Self { syntax })
18074 } else {
18075 None
18076 }
18077 }
18078 #[inline]
18079 fn syntax(&self) -> &SyntaxNode {
18080 &self.syntax
18081 }
18082}
18083impl AstNode for RenameTable {
18084 #[inline]
18085 fn can_cast(kind: SyntaxKind) -> bool {
18086 kind == SyntaxKind::RENAME_TABLE
18087 }
18088 #[inline]
18089 fn cast(syntax: SyntaxNode) -> Option<Self> {
18090 if Self::can_cast(syntax.kind()) {
18091 Some(Self { syntax })
18092 } else {
18093 None
18094 }
18095 }
18096 #[inline]
18097 fn syntax(&self) -> &SyntaxNode {
18098 &self.syntax
18099 }
18100}
18101impl AstNode for RenameTo {
18102 #[inline]
18103 fn can_cast(kind: SyntaxKind) -> bool {
18104 kind == SyntaxKind::RENAME_TO
18105 }
18106 #[inline]
18107 fn cast(syntax: SyntaxNode) -> Option<Self> {
18108 if Self::can_cast(syntax.kind()) {
18109 Some(Self { syntax })
18110 } else {
18111 None
18112 }
18113 }
18114 #[inline]
18115 fn syntax(&self) -> &SyntaxNode {
18116 &self.syntax
18117 }
18118}
18119impl AstNode for RepeatableRead {
18120 #[inline]
18121 fn can_cast(kind: SyntaxKind) -> bool {
18122 kind == SyntaxKind::REPEATABLE_READ
18123 }
18124 #[inline]
18125 fn cast(syntax: SyntaxNode) -> Option<Self> {
18126 if Self::can_cast(syntax.kind()) {
18127 Some(Self { syntax })
18128 } else {
18129 None
18130 }
18131 }
18132 #[inline]
18133 fn syntax(&self) -> &SyntaxNode {
18134 &self.syntax
18135 }
18136}
18137impl AstNode for ReplicaIdentity {
18138 #[inline]
18139 fn can_cast(kind: SyntaxKind) -> bool {
18140 kind == SyntaxKind::REPLICA_IDENTITY
18141 }
18142 #[inline]
18143 fn cast(syntax: SyntaxNode) -> Option<Self> {
18144 if Self::can_cast(syntax.kind()) {
18145 Some(Self { syntax })
18146 } else {
18147 None
18148 }
18149 }
18150 #[inline]
18151 fn syntax(&self) -> &SyntaxNode {
18152 &self.syntax
18153 }
18154}
18155impl AstNode for Reset {
18156 #[inline]
18157 fn can_cast(kind: SyntaxKind) -> bool {
18158 kind == SyntaxKind::RESET
18159 }
18160 #[inline]
18161 fn cast(syntax: SyntaxNode) -> Option<Self> {
18162 if Self::can_cast(syntax.kind()) {
18163 Some(Self { syntax })
18164 } else {
18165 None
18166 }
18167 }
18168 #[inline]
18169 fn syntax(&self) -> &SyntaxNode {
18170 &self.syntax
18171 }
18172}
18173impl AstNode for ResetFuncOption {
18174 #[inline]
18175 fn can_cast(kind: SyntaxKind) -> bool {
18176 kind == SyntaxKind::RESET_FUNC_OPTION
18177 }
18178 #[inline]
18179 fn cast(syntax: SyntaxNode) -> Option<Self> {
18180 if Self::can_cast(syntax.kind()) {
18181 Some(Self { syntax })
18182 } else {
18183 None
18184 }
18185 }
18186 #[inline]
18187 fn syntax(&self) -> &SyntaxNode {
18188 &self.syntax
18189 }
18190}
18191impl AstNode for ResetOptions {
18192 #[inline]
18193 fn can_cast(kind: SyntaxKind) -> bool {
18194 kind == SyntaxKind::RESET_OPTIONS
18195 }
18196 #[inline]
18197 fn cast(syntax: SyntaxNode) -> Option<Self> {
18198 if Self::can_cast(syntax.kind()) {
18199 Some(Self { syntax })
18200 } else {
18201 None
18202 }
18203 }
18204 #[inline]
18205 fn syntax(&self) -> &SyntaxNode {
18206 &self.syntax
18207 }
18208}
18209impl AstNode for ResetStorageParams {
18210 #[inline]
18211 fn can_cast(kind: SyntaxKind) -> bool {
18212 kind == SyntaxKind::RESET_STORAGE_PARAMS
18213 }
18214 #[inline]
18215 fn cast(syntax: SyntaxNode) -> Option<Self> {
18216 if Self::can_cast(syntax.kind()) {
18217 Some(Self { syntax })
18218 } else {
18219 None
18220 }
18221 }
18222 #[inline]
18223 fn syntax(&self) -> &SyntaxNode {
18224 &self.syntax
18225 }
18226}
18227impl AstNode for Restart {
18228 #[inline]
18229 fn can_cast(kind: SyntaxKind) -> bool {
18230 kind == SyntaxKind::RESTART
18231 }
18232 #[inline]
18233 fn cast(syntax: SyntaxNode) -> Option<Self> {
18234 if Self::can_cast(syntax.kind()) {
18235 Some(Self { syntax })
18236 } else {
18237 None
18238 }
18239 }
18240 #[inline]
18241 fn syntax(&self) -> &SyntaxNode {
18242 &self.syntax
18243 }
18244}
18245impl AstNode for Restrict {
18246 #[inline]
18247 fn can_cast(kind: SyntaxKind) -> bool {
18248 kind == SyntaxKind::RESTRICT
18249 }
18250 #[inline]
18251 fn cast(syntax: SyntaxNode) -> Option<Self> {
18252 if Self::can_cast(syntax.kind()) {
18253 Some(Self { syntax })
18254 } else {
18255 None
18256 }
18257 }
18258 #[inline]
18259 fn syntax(&self) -> &SyntaxNode {
18260 &self.syntax
18261 }
18262}
18263impl AstNode for RetType {
18264 #[inline]
18265 fn can_cast(kind: SyntaxKind) -> bool {
18266 kind == SyntaxKind::RET_TYPE
18267 }
18268 #[inline]
18269 fn cast(syntax: SyntaxNode) -> Option<Self> {
18270 if Self::can_cast(syntax.kind()) {
18271 Some(Self { syntax })
18272 } else {
18273 None
18274 }
18275 }
18276 #[inline]
18277 fn syntax(&self) -> &SyntaxNode {
18278 &self.syntax
18279 }
18280}
18281impl AstNode for ReturnFuncOption {
18282 #[inline]
18283 fn can_cast(kind: SyntaxKind) -> bool {
18284 kind == SyntaxKind::RETURN_FUNC_OPTION
18285 }
18286 #[inline]
18287 fn cast(syntax: SyntaxNode) -> Option<Self> {
18288 if Self::can_cast(syntax.kind()) {
18289 Some(Self { syntax })
18290 } else {
18291 None
18292 }
18293 }
18294 #[inline]
18295 fn syntax(&self) -> &SyntaxNode {
18296 &self.syntax
18297 }
18298}
18299impl AstNode for ReturningClause {
18300 #[inline]
18301 fn can_cast(kind: SyntaxKind) -> bool {
18302 kind == SyntaxKind::RETURNING_CLAUSE
18303 }
18304 #[inline]
18305 fn cast(syntax: SyntaxNode) -> Option<Self> {
18306 if Self::can_cast(syntax.kind()) {
18307 Some(Self { syntax })
18308 } else {
18309 None
18310 }
18311 }
18312 #[inline]
18313 fn syntax(&self) -> &SyntaxNode {
18314 &self.syntax
18315 }
18316}
18317impl AstNode for Revoke {
18318 #[inline]
18319 fn can_cast(kind: SyntaxKind) -> bool {
18320 kind == SyntaxKind::REVOKE
18321 }
18322 #[inline]
18323 fn cast(syntax: SyntaxNode) -> Option<Self> {
18324 if Self::can_cast(syntax.kind()) {
18325 Some(Self { syntax })
18326 } else {
18327 None
18328 }
18329 }
18330 #[inline]
18331 fn syntax(&self) -> &SyntaxNode {
18332 &self.syntax
18333 }
18334}
18335impl AstNode for Role {
18336 #[inline]
18337 fn can_cast(kind: SyntaxKind) -> bool {
18338 kind == SyntaxKind::ROLE
18339 }
18340 #[inline]
18341 fn cast(syntax: SyntaxNode) -> Option<Self> {
18342 if Self::can_cast(syntax.kind()) {
18343 Some(Self { syntax })
18344 } else {
18345 None
18346 }
18347 }
18348 #[inline]
18349 fn syntax(&self) -> &SyntaxNode {
18350 &self.syntax
18351 }
18352}
18353impl AstNode for Rollback {
18354 #[inline]
18355 fn can_cast(kind: SyntaxKind) -> bool {
18356 kind == SyntaxKind::ROLLBACK
18357 }
18358 #[inline]
18359 fn cast(syntax: SyntaxNode) -> Option<Self> {
18360 if Self::can_cast(syntax.kind()) {
18361 Some(Self { syntax })
18362 } else {
18363 None
18364 }
18365 }
18366 #[inline]
18367 fn syntax(&self) -> &SyntaxNode {
18368 &self.syntax
18369 }
18370}
18371impl AstNode for Row {
18372 #[inline]
18373 fn can_cast(kind: SyntaxKind) -> bool {
18374 kind == SyntaxKind::ROW
18375 }
18376 #[inline]
18377 fn cast(syntax: SyntaxNode) -> Option<Self> {
18378 if Self::can_cast(syntax.kind()) {
18379 Some(Self { syntax })
18380 } else {
18381 None
18382 }
18383 }
18384 #[inline]
18385 fn syntax(&self) -> &SyntaxNode {
18386 &self.syntax
18387 }
18388}
18389impl AstNode for RowList {
18390 #[inline]
18391 fn can_cast(kind: SyntaxKind) -> bool {
18392 kind == SyntaxKind::ROW_LIST
18393 }
18394 #[inline]
18395 fn cast(syntax: SyntaxNode) -> Option<Self> {
18396 if Self::can_cast(syntax.kind()) {
18397 Some(Self { syntax })
18398 } else {
18399 None
18400 }
18401 }
18402 #[inline]
18403 fn syntax(&self) -> &SyntaxNode {
18404 &self.syntax
18405 }
18406}
18407impl AstNode for RowsFuncOption {
18408 #[inline]
18409 fn can_cast(kind: SyntaxKind) -> bool {
18410 kind == SyntaxKind::ROWS_FUNC_OPTION
18411 }
18412 #[inline]
18413 fn cast(syntax: SyntaxNode) -> Option<Self> {
18414 if Self::can_cast(syntax.kind()) {
18415 Some(Self { syntax })
18416 } else {
18417 None
18418 }
18419 }
18420 #[inline]
18421 fn syntax(&self) -> &SyntaxNode {
18422 &self.syntax
18423 }
18424}
18425impl AstNode for Savepoint {
18426 #[inline]
18427 fn can_cast(kind: SyntaxKind) -> bool {
18428 kind == SyntaxKind::SAVEPOINT
18429 }
18430 #[inline]
18431 fn cast(syntax: SyntaxNode) -> Option<Self> {
18432 if Self::can_cast(syntax.kind()) {
18433 Some(Self { syntax })
18434 } else {
18435 None
18436 }
18437 }
18438 #[inline]
18439 fn syntax(&self) -> &SyntaxNode {
18440 &self.syntax
18441 }
18442}
18443impl AstNode for SecurityFuncOption {
18444 #[inline]
18445 fn can_cast(kind: SyntaxKind) -> bool {
18446 kind == SyntaxKind::SECURITY_FUNC_OPTION
18447 }
18448 #[inline]
18449 fn cast(syntax: SyntaxNode) -> Option<Self> {
18450 if Self::can_cast(syntax.kind()) {
18451 Some(Self { syntax })
18452 } else {
18453 None
18454 }
18455 }
18456 #[inline]
18457 fn syntax(&self) -> &SyntaxNode {
18458 &self.syntax
18459 }
18460}
18461impl AstNode for SecurityLabel {
18462 #[inline]
18463 fn can_cast(kind: SyntaxKind) -> bool {
18464 kind == SyntaxKind::SECURITY_LABEL
18465 }
18466 #[inline]
18467 fn cast(syntax: SyntaxNode) -> Option<Self> {
18468 if Self::can_cast(syntax.kind()) {
18469 Some(Self { syntax })
18470 } else {
18471 None
18472 }
18473 }
18474 #[inline]
18475 fn syntax(&self) -> &SyntaxNode {
18476 &self.syntax
18477 }
18478}
18479impl AstNode for Select {
18480 #[inline]
18481 fn can_cast(kind: SyntaxKind) -> bool {
18482 kind == SyntaxKind::SELECT
18483 }
18484 #[inline]
18485 fn cast(syntax: SyntaxNode) -> Option<Self> {
18486 if Self::can_cast(syntax.kind()) {
18487 Some(Self { syntax })
18488 } else {
18489 None
18490 }
18491 }
18492 #[inline]
18493 fn syntax(&self) -> &SyntaxNode {
18494 &self.syntax
18495 }
18496}
18497impl AstNode for SelectClause {
18498 #[inline]
18499 fn can_cast(kind: SyntaxKind) -> bool {
18500 kind == SyntaxKind::SELECT_CLAUSE
18501 }
18502 #[inline]
18503 fn cast(syntax: SyntaxNode) -> Option<Self> {
18504 if Self::can_cast(syntax.kind()) {
18505 Some(Self { syntax })
18506 } else {
18507 None
18508 }
18509 }
18510 #[inline]
18511 fn syntax(&self) -> &SyntaxNode {
18512 &self.syntax
18513 }
18514}
18515impl AstNode for SelectInto {
18516 #[inline]
18517 fn can_cast(kind: SyntaxKind) -> bool {
18518 kind == SyntaxKind::SELECT_INTO
18519 }
18520 #[inline]
18521 fn cast(syntax: SyntaxNode) -> Option<Self> {
18522 if Self::can_cast(syntax.kind()) {
18523 Some(Self { syntax })
18524 } else {
18525 None
18526 }
18527 }
18528 #[inline]
18529 fn syntax(&self) -> &SyntaxNode {
18530 &self.syntax
18531 }
18532}
18533impl AstNode for SequenceOptionList {
18534 #[inline]
18535 fn can_cast(kind: SyntaxKind) -> bool {
18536 kind == SyntaxKind::SEQUENCE_OPTION_LIST
18537 }
18538 #[inline]
18539 fn cast(syntax: SyntaxNode) -> Option<Self> {
18540 if Self::can_cast(syntax.kind()) {
18541 Some(Self { syntax })
18542 } else {
18543 None
18544 }
18545 }
18546 #[inline]
18547 fn syntax(&self) -> &SyntaxNode {
18548 &self.syntax
18549 }
18550}
18551impl AstNode for Serializable {
18552 #[inline]
18553 fn can_cast(kind: SyntaxKind) -> bool {
18554 kind == SyntaxKind::SERIALIZABLE
18555 }
18556 #[inline]
18557 fn cast(syntax: SyntaxNode) -> Option<Self> {
18558 if Self::can_cast(syntax.kind()) {
18559 Some(Self { syntax })
18560 } else {
18561 None
18562 }
18563 }
18564 #[inline]
18565 fn syntax(&self) -> &SyntaxNode {
18566 &self.syntax
18567 }
18568}
18569impl AstNode for Set {
18570 #[inline]
18571 fn can_cast(kind: SyntaxKind) -> bool {
18572 kind == SyntaxKind::SET
18573 }
18574 #[inline]
18575 fn cast(syntax: SyntaxNode) -> Option<Self> {
18576 if Self::can_cast(syntax.kind()) {
18577 Some(Self { syntax })
18578 } else {
18579 None
18580 }
18581 }
18582 #[inline]
18583 fn syntax(&self) -> &SyntaxNode {
18584 &self.syntax
18585 }
18586}
18587impl AstNode for SetAccessMethod {
18588 #[inline]
18589 fn can_cast(kind: SyntaxKind) -> bool {
18590 kind == SyntaxKind::SET_ACCESS_METHOD
18591 }
18592 #[inline]
18593 fn cast(syntax: SyntaxNode) -> Option<Self> {
18594 if Self::can_cast(syntax.kind()) {
18595 Some(Self { syntax })
18596 } else {
18597 None
18598 }
18599 }
18600 #[inline]
18601 fn syntax(&self) -> &SyntaxNode {
18602 &self.syntax
18603 }
18604}
18605impl AstNode for SetCompression {
18606 #[inline]
18607 fn can_cast(kind: SyntaxKind) -> bool {
18608 kind == SyntaxKind::SET_COMPRESSION
18609 }
18610 #[inline]
18611 fn cast(syntax: SyntaxNode) -> Option<Self> {
18612 if Self::can_cast(syntax.kind()) {
18613 Some(Self { syntax })
18614 } else {
18615 None
18616 }
18617 }
18618 #[inline]
18619 fn syntax(&self) -> &SyntaxNode {
18620 &self.syntax
18621 }
18622}
18623impl AstNode for SetConstraints {
18624 #[inline]
18625 fn can_cast(kind: SyntaxKind) -> bool {
18626 kind == SyntaxKind::SET_CONSTRAINTS
18627 }
18628 #[inline]
18629 fn cast(syntax: SyntaxNode) -> Option<Self> {
18630 if Self::can_cast(syntax.kind()) {
18631 Some(Self { syntax })
18632 } else {
18633 None
18634 }
18635 }
18636 #[inline]
18637 fn syntax(&self) -> &SyntaxNode {
18638 &self.syntax
18639 }
18640}
18641impl AstNode for SetDefault {
18642 #[inline]
18643 fn can_cast(kind: SyntaxKind) -> bool {
18644 kind == SyntaxKind::SET_DEFAULT
18645 }
18646 #[inline]
18647 fn cast(syntax: SyntaxNode) -> Option<Self> {
18648 if Self::can_cast(syntax.kind()) {
18649 Some(Self { syntax })
18650 } else {
18651 None
18652 }
18653 }
18654 #[inline]
18655 fn syntax(&self) -> &SyntaxNode {
18656 &self.syntax
18657 }
18658}
18659impl AstNode for SetDefaultColumns {
18660 #[inline]
18661 fn can_cast(kind: SyntaxKind) -> bool {
18662 kind == SyntaxKind::SET_DEFAULT_COLUMNS
18663 }
18664 #[inline]
18665 fn cast(syntax: SyntaxNode) -> Option<Self> {
18666 if Self::can_cast(syntax.kind()) {
18667 Some(Self { syntax })
18668 } else {
18669 None
18670 }
18671 }
18672 #[inline]
18673 fn syntax(&self) -> &SyntaxNode {
18674 &self.syntax
18675 }
18676}
18677impl AstNode for SetExpression {
18678 #[inline]
18679 fn can_cast(kind: SyntaxKind) -> bool {
18680 kind == SyntaxKind::SET_EXPRESSION
18681 }
18682 #[inline]
18683 fn cast(syntax: SyntaxNode) -> Option<Self> {
18684 if Self::can_cast(syntax.kind()) {
18685 Some(Self { syntax })
18686 } else {
18687 None
18688 }
18689 }
18690 #[inline]
18691 fn syntax(&self) -> &SyntaxNode {
18692 &self.syntax
18693 }
18694}
18695impl AstNode for SetFuncOption {
18696 #[inline]
18697 fn can_cast(kind: SyntaxKind) -> bool {
18698 kind == SyntaxKind::SET_FUNC_OPTION
18699 }
18700 #[inline]
18701 fn cast(syntax: SyntaxNode) -> Option<Self> {
18702 if Self::can_cast(syntax.kind()) {
18703 Some(Self { syntax })
18704 } else {
18705 None
18706 }
18707 }
18708 #[inline]
18709 fn syntax(&self) -> &SyntaxNode {
18710 &self.syntax
18711 }
18712}
18713impl AstNode for SetGenerated {
18714 #[inline]
18715 fn can_cast(kind: SyntaxKind) -> bool {
18716 kind == SyntaxKind::SET_GENERATED
18717 }
18718 #[inline]
18719 fn cast(syntax: SyntaxNode) -> Option<Self> {
18720 if Self::can_cast(syntax.kind()) {
18721 Some(Self { syntax })
18722 } else {
18723 None
18724 }
18725 }
18726 #[inline]
18727 fn syntax(&self) -> &SyntaxNode {
18728 &self.syntax
18729 }
18730}
18731impl AstNode for SetGeneratedOptions {
18732 #[inline]
18733 fn can_cast(kind: SyntaxKind) -> bool {
18734 kind == SyntaxKind::SET_GENERATED_OPTIONS
18735 }
18736 #[inline]
18737 fn cast(syntax: SyntaxNode) -> Option<Self> {
18738 if Self::can_cast(syntax.kind()) {
18739 Some(Self { syntax })
18740 } else {
18741 None
18742 }
18743 }
18744 #[inline]
18745 fn syntax(&self) -> &SyntaxNode {
18746 &self.syntax
18747 }
18748}
18749impl AstNode for SetLogged {
18750 #[inline]
18751 fn can_cast(kind: SyntaxKind) -> bool {
18752 kind == SyntaxKind::SET_LOGGED
18753 }
18754 #[inline]
18755 fn cast(syntax: SyntaxNode) -> Option<Self> {
18756 if Self::can_cast(syntax.kind()) {
18757 Some(Self { syntax })
18758 } else {
18759 None
18760 }
18761 }
18762 #[inline]
18763 fn syntax(&self) -> &SyntaxNode {
18764 &self.syntax
18765 }
18766}
18767impl AstNode for SetNotNull {
18768 #[inline]
18769 fn can_cast(kind: SyntaxKind) -> bool {
18770 kind == SyntaxKind::SET_NOT_NULL
18771 }
18772 #[inline]
18773 fn cast(syntax: SyntaxNode) -> Option<Self> {
18774 if Self::can_cast(syntax.kind()) {
18775 Some(Self { syntax })
18776 } else {
18777 None
18778 }
18779 }
18780 #[inline]
18781 fn syntax(&self) -> &SyntaxNode {
18782 &self.syntax
18783 }
18784}
18785impl AstNode for SetNullColumns {
18786 #[inline]
18787 fn can_cast(kind: SyntaxKind) -> bool {
18788 kind == SyntaxKind::SET_NULL_COLUMNS
18789 }
18790 #[inline]
18791 fn cast(syntax: SyntaxNode) -> Option<Self> {
18792 if Self::can_cast(syntax.kind()) {
18793 Some(Self { syntax })
18794 } else {
18795 None
18796 }
18797 }
18798 #[inline]
18799 fn syntax(&self) -> &SyntaxNode {
18800 &self.syntax
18801 }
18802}
18803impl AstNode for SetOptions {
18804 #[inline]
18805 fn can_cast(kind: SyntaxKind) -> bool {
18806 kind == SyntaxKind::SET_OPTIONS
18807 }
18808 #[inline]
18809 fn cast(syntax: SyntaxNode) -> Option<Self> {
18810 if Self::can_cast(syntax.kind()) {
18811 Some(Self { syntax })
18812 } else {
18813 None
18814 }
18815 }
18816 #[inline]
18817 fn syntax(&self) -> &SyntaxNode {
18818 &self.syntax
18819 }
18820}
18821impl AstNode for SetOptionsList {
18822 #[inline]
18823 fn can_cast(kind: SyntaxKind) -> bool {
18824 kind == SyntaxKind::SET_OPTIONS_LIST
18825 }
18826 #[inline]
18827 fn cast(syntax: SyntaxNode) -> Option<Self> {
18828 if Self::can_cast(syntax.kind()) {
18829 Some(Self { syntax })
18830 } else {
18831 None
18832 }
18833 }
18834 #[inline]
18835 fn syntax(&self) -> &SyntaxNode {
18836 &self.syntax
18837 }
18838}
18839impl AstNode for SetRole {
18840 #[inline]
18841 fn can_cast(kind: SyntaxKind) -> bool {
18842 kind == SyntaxKind::SET_ROLE
18843 }
18844 #[inline]
18845 fn cast(syntax: SyntaxNode) -> Option<Self> {
18846 if Self::can_cast(syntax.kind()) {
18847 Some(Self { syntax })
18848 } else {
18849 None
18850 }
18851 }
18852 #[inline]
18853 fn syntax(&self) -> &SyntaxNode {
18854 &self.syntax
18855 }
18856}
18857impl AstNode for SetSchema {
18858 #[inline]
18859 fn can_cast(kind: SyntaxKind) -> bool {
18860 kind == SyntaxKind::SET_SCHEMA
18861 }
18862 #[inline]
18863 fn cast(syntax: SyntaxNode) -> Option<Self> {
18864 if Self::can_cast(syntax.kind()) {
18865 Some(Self { syntax })
18866 } else {
18867 None
18868 }
18869 }
18870 #[inline]
18871 fn syntax(&self) -> &SyntaxNode {
18872 &self.syntax
18873 }
18874}
18875impl AstNode for SetSequenceOption {
18876 #[inline]
18877 fn can_cast(kind: SyntaxKind) -> bool {
18878 kind == SyntaxKind::SET_SEQUENCE_OPTION
18879 }
18880 #[inline]
18881 fn cast(syntax: SyntaxNode) -> Option<Self> {
18882 if Self::can_cast(syntax.kind()) {
18883 Some(Self { syntax })
18884 } else {
18885 None
18886 }
18887 }
18888 #[inline]
18889 fn syntax(&self) -> &SyntaxNode {
18890 &self.syntax
18891 }
18892}
18893impl AstNode for SetSessionAuth {
18894 #[inline]
18895 fn can_cast(kind: SyntaxKind) -> bool {
18896 kind == SyntaxKind::SET_SESSION_AUTH
18897 }
18898 #[inline]
18899 fn cast(syntax: SyntaxNode) -> Option<Self> {
18900 if Self::can_cast(syntax.kind()) {
18901 Some(Self { syntax })
18902 } else {
18903 None
18904 }
18905 }
18906 #[inline]
18907 fn syntax(&self) -> &SyntaxNode {
18908 &self.syntax
18909 }
18910}
18911impl AstNode for SetStatistics {
18912 #[inline]
18913 fn can_cast(kind: SyntaxKind) -> bool {
18914 kind == SyntaxKind::SET_STATISTICS
18915 }
18916 #[inline]
18917 fn cast(syntax: SyntaxNode) -> Option<Self> {
18918 if Self::can_cast(syntax.kind()) {
18919 Some(Self { syntax })
18920 } else {
18921 None
18922 }
18923 }
18924 #[inline]
18925 fn syntax(&self) -> &SyntaxNode {
18926 &self.syntax
18927 }
18928}
18929impl AstNode for SetStorage {
18930 #[inline]
18931 fn can_cast(kind: SyntaxKind) -> bool {
18932 kind == SyntaxKind::SET_STORAGE
18933 }
18934 #[inline]
18935 fn cast(syntax: SyntaxNode) -> Option<Self> {
18936 if Self::can_cast(syntax.kind()) {
18937 Some(Self { syntax })
18938 } else {
18939 None
18940 }
18941 }
18942 #[inline]
18943 fn syntax(&self) -> &SyntaxNode {
18944 &self.syntax
18945 }
18946}
18947impl AstNode for SetStorageParams {
18948 #[inline]
18949 fn can_cast(kind: SyntaxKind) -> bool {
18950 kind == SyntaxKind::SET_STORAGE_PARAMS
18951 }
18952 #[inline]
18953 fn cast(syntax: SyntaxNode) -> Option<Self> {
18954 if Self::can_cast(syntax.kind()) {
18955 Some(Self { syntax })
18956 } else {
18957 None
18958 }
18959 }
18960 #[inline]
18961 fn syntax(&self) -> &SyntaxNode {
18962 &self.syntax
18963 }
18964}
18965impl AstNode for SetTablespace {
18966 #[inline]
18967 fn can_cast(kind: SyntaxKind) -> bool {
18968 kind == SyntaxKind::SET_TABLESPACE
18969 }
18970 #[inline]
18971 fn cast(syntax: SyntaxNode) -> Option<Self> {
18972 if Self::can_cast(syntax.kind()) {
18973 Some(Self { syntax })
18974 } else {
18975 None
18976 }
18977 }
18978 #[inline]
18979 fn syntax(&self) -> &SyntaxNode {
18980 &self.syntax
18981 }
18982}
18983impl AstNode for SetTransaction {
18984 #[inline]
18985 fn can_cast(kind: SyntaxKind) -> bool {
18986 kind == SyntaxKind::SET_TRANSACTION
18987 }
18988 #[inline]
18989 fn cast(syntax: SyntaxNode) -> Option<Self> {
18990 if Self::can_cast(syntax.kind()) {
18991 Some(Self { syntax })
18992 } else {
18993 None
18994 }
18995 }
18996 #[inline]
18997 fn syntax(&self) -> &SyntaxNode {
18998 &self.syntax
18999 }
19000}
19001impl AstNode for SetType {
19002 #[inline]
19003 fn can_cast(kind: SyntaxKind) -> bool {
19004 kind == SyntaxKind::SET_TYPE
19005 }
19006 #[inline]
19007 fn cast(syntax: SyntaxNode) -> Option<Self> {
19008 if Self::can_cast(syntax.kind()) {
19009 Some(Self { syntax })
19010 } else {
19011 None
19012 }
19013 }
19014 #[inline]
19015 fn syntax(&self) -> &SyntaxNode {
19016 &self.syntax
19017 }
19018}
19019impl AstNode for SetUnlogged {
19020 #[inline]
19021 fn can_cast(kind: SyntaxKind) -> bool {
19022 kind == SyntaxKind::SET_UNLOGGED
19023 }
19024 #[inline]
19025 fn cast(syntax: SyntaxNode) -> Option<Self> {
19026 if Self::can_cast(syntax.kind()) {
19027 Some(Self { syntax })
19028 } else {
19029 None
19030 }
19031 }
19032 #[inline]
19033 fn syntax(&self) -> &SyntaxNode {
19034 &self.syntax
19035 }
19036}
19037impl AstNode for SetWithoutCluster {
19038 #[inline]
19039 fn can_cast(kind: SyntaxKind) -> bool {
19040 kind == SyntaxKind::SET_WITHOUT_CLUSTER
19041 }
19042 #[inline]
19043 fn cast(syntax: SyntaxNode) -> Option<Self> {
19044 if Self::can_cast(syntax.kind()) {
19045 Some(Self { syntax })
19046 } else {
19047 None
19048 }
19049 }
19050 #[inline]
19051 fn syntax(&self) -> &SyntaxNode {
19052 &self.syntax
19053 }
19054}
19055impl AstNode for SetWithoutOids {
19056 #[inline]
19057 fn can_cast(kind: SyntaxKind) -> bool {
19058 kind == SyntaxKind::SET_WITHOUT_OIDS
19059 }
19060 #[inline]
19061 fn cast(syntax: SyntaxNode) -> Option<Self> {
19062 if Self::can_cast(syntax.kind()) {
19063 Some(Self { syntax })
19064 } else {
19065 None
19066 }
19067 }
19068 #[inline]
19069 fn syntax(&self) -> &SyntaxNode {
19070 &self.syntax
19071 }
19072}
19073impl AstNode for Show {
19074 #[inline]
19075 fn can_cast(kind: SyntaxKind) -> bool {
19076 kind == SyntaxKind::SHOW
19077 }
19078 #[inline]
19079 fn cast(syntax: SyntaxNode) -> Option<Self> {
19080 if Self::can_cast(syntax.kind()) {
19081 Some(Self { syntax })
19082 } else {
19083 None
19084 }
19085 }
19086 #[inline]
19087 fn syntax(&self) -> &SyntaxNode {
19088 &self.syntax
19089 }
19090}
19091impl AstNode for SimilarTo {
19092 #[inline]
19093 fn can_cast(kind: SyntaxKind) -> bool {
19094 kind == SyntaxKind::SIMILAR_TO
19095 }
19096 #[inline]
19097 fn cast(syntax: SyntaxNode) -> Option<Self> {
19098 if Self::can_cast(syntax.kind()) {
19099 Some(Self { syntax })
19100 } else {
19101 None
19102 }
19103 }
19104 #[inline]
19105 fn syntax(&self) -> &SyntaxNode {
19106 &self.syntax
19107 }
19108}
19109impl AstNode for SortAsc {
19110 #[inline]
19111 fn can_cast(kind: SyntaxKind) -> bool {
19112 kind == SyntaxKind::SORT_ASC
19113 }
19114 #[inline]
19115 fn cast(syntax: SyntaxNode) -> Option<Self> {
19116 if Self::can_cast(syntax.kind()) {
19117 Some(Self { syntax })
19118 } else {
19119 None
19120 }
19121 }
19122 #[inline]
19123 fn syntax(&self) -> &SyntaxNode {
19124 &self.syntax
19125 }
19126}
19127impl AstNode for SortBy {
19128 #[inline]
19129 fn can_cast(kind: SyntaxKind) -> bool {
19130 kind == SyntaxKind::SORT_BY
19131 }
19132 #[inline]
19133 fn cast(syntax: SyntaxNode) -> Option<Self> {
19134 if Self::can_cast(syntax.kind()) {
19135 Some(Self { syntax })
19136 } else {
19137 None
19138 }
19139 }
19140 #[inline]
19141 fn syntax(&self) -> &SyntaxNode {
19142 &self.syntax
19143 }
19144}
19145impl AstNode for SortDesc {
19146 #[inline]
19147 fn can_cast(kind: SyntaxKind) -> bool {
19148 kind == SyntaxKind::SORT_DESC
19149 }
19150 #[inline]
19151 fn cast(syntax: SyntaxNode) -> Option<Self> {
19152 if Self::can_cast(syntax.kind()) {
19153 Some(Self { syntax })
19154 } else {
19155 None
19156 }
19157 }
19158 #[inline]
19159 fn syntax(&self) -> &SyntaxNode {
19160 &self.syntax
19161 }
19162}
19163impl AstNode for SortUsing {
19164 #[inline]
19165 fn can_cast(kind: SyntaxKind) -> bool {
19166 kind == SyntaxKind::SORT_USING
19167 }
19168 #[inline]
19169 fn cast(syntax: SyntaxNode) -> Option<Self> {
19170 if Self::can_cast(syntax.kind()) {
19171 Some(Self { syntax })
19172 } else {
19173 None
19174 }
19175 }
19176 #[inline]
19177 fn syntax(&self) -> &SyntaxNode {
19178 &self.syntax
19179 }
19180}
19181impl AstNode for SourceFile {
19182 #[inline]
19183 fn can_cast(kind: SyntaxKind) -> bool {
19184 kind == SyntaxKind::SOURCE_FILE
19185 }
19186 #[inline]
19187 fn cast(syntax: SyntaxNode) -> Option<Self> {
19188 if Self::can_cast(syntax.kind()) {
19189 Some(Self { syntax })
19190 } else {
19191 None
19192 }
19193 }
19194 #[inline]
19195 fn syntax(&self) -> &SyntaxNode {
19196 &self.syntax
19197 }
19198}
19199impl AstNode for Storage {
19200 #[inline]
19201 fn can_cast(kind: SyntaxKind) -> bool {
19202 kind == SyntaxKind::STORAGE
19203 }
19204 #[inline]
19205 fn cast(syntax: SyntaxNode) -> Option<Self> {
19206 if Self::can_cast(syntax.kind()) {
19207 Some(Self { syntax })
19208 } else {
19209 None
19210 }
19211 }
19212 #[inline]
19213 fn syntax(&self) -> &SyntaxNode {
19214 &self.syntax
19215 }
19216}
19217impl AstNode for StrictFuncOption {
19218 #[inline]
19219 fn can_cast(kind: SyntaxKind) -> bool {
19220 kind == SyntaxKind::STRICT_FUNC_OPTION
19221 }
19222 #[inline]
19223 fn cast(syntax: SyntaxNode) -> Option<Self> {
19224 if Self::can_cast(syntax.kind()) {
19225 Some(Self { syntax })
19226 } else {
19227 None
19228 }
19229 }
19230 #[inline]
19231 fn syntax(&self) -> &SyntaxNode {
19232 &self.syntax
19233 }
19234}
19235impl AstNode for SupportFuncOption {
19236 #[inline]
19237 fn can_cast(kind: SyntaxKind) -> bool {
19238 kind == SyntaxKind::SUPPORT_FUNC_OPTION
19239 }
19240 #[inline]
19241 fn cast(syntax: SyntaxNode) -> Option<Self> {
19242 if Self::can_cast(syntax.kind()) {
19243 Some(Self { syntax })
19244 } else {
19245 None
19246 }
19247 }
19248 #[inline]
19249 fn syntax(&self) -> &SyntaxNode {
19250 &self.syntax
19251 }
19252}
19253impl AstNode for Table {
19254 #[inline]
19255 fn can_cast(kind: SyntaxKind) -> bool {
19256 kind == SyntaxKind::TABLE
19257 }
19258 #[inline]
19259 fn cast(syntax: SyntaxNode) -> Option<Self> {
19260 if Self::can_cast(syntax.kind()) {
19261 Some(Self { syntax })
19262 } else {
19263 None
19264 }
19265 }
19266 #[inline]
19267 fn syntax(&self) -> &SyntaxNode {
19268 &self.syntax
19269 }
19270}
19271impl AstNode for TableArgList {
19272 #[inline]
19273 fn can_cast(kind: SyntaxKind) -> bool {
19274 kind == SyntaxKind::TABLE_ARG_LIST
19275 }
19276 #[inline]
19277 fn cast(syntax: SyntaxNode) -> Option<Self> {
19278 if Self::can_cast(syntax.kind()) {
19279 Some(Self { syntax })
19280 } else {
19281 None
19282 }
19283 }
19284 #[inline]
19285 fn syntax(&self) -> &SyntaxNode {
19286 &self.syntax
19287 }
19288}
19289impl AstNode for TableList {
19290 #[inline]
19291 fn can_cast(kind: SyntaxKind) -> bool {
19292 kind == SyntaxKind::TABLE_LIST
19293 }
19294 #[inline]
19295 fn cast(syntax: SyntaxNode) -> Option<Self> {
19296 if Self::can_cast(syntax.kind()) {
19297 Some(Self { syntax })
19298 } else {
19299 None
19300 }
19301 }
19302 #[inline]
19303 fn syntax(&self) -> &SyntaxNode {
19304 &self.syntax
19305 }
19306}
19307impl AstNode for Tablespace {
19308 #[inline]
19309 fn can_cast(kind: SyntaxKind) -> bool {
19310 kind == SyntaxKind::TABLESPACE
19311 }
19312 #[inline]
19313 fn cast(syntax: SyntaxNode) -> Option<Self> {
19314 if Self::can_cast(syntax.kind()) {
19315 Some(Self { syntax })
19316 } else {
19317 None
19318 }
19319 }
19320 #[inline]
19321 fn syntax(&self) -> &SyntaxNode {
19322 &self.syntax
19323 }
19324}
19325impl AstNode for Target {
19326 #[inline]
19327 fn can_cast(kind: SyntaxKind) -> bool {
19328 kind == SyntaxKind::TARGET
19329 }
19330 #[inline]
19331 fn cast(syntax: SyntaxNode) -> Option<Self> {
19332 if Self::can_cast(syntax.kind()) {
19333 Some(Self { syntax })
19334 } else {
19335 None
19336 }
19337 }
19338 #[inline]
19339 fn syntax(&self) -> &SyntaxNode {
19340 &self.syntax
19341 }
19342}
19343impl AstNode for TargetList {
19344 #[inline]
19345 fn can_cast(kind: SyntaxKind) -> bool {
19346 kind == SyntaxKind::TARGET_LIST
19347 }
19348 #[inline]
19349 fn cast(syntax: SyntaxNode) -> Option<Self> {
19350 if Self::can_cast(syntax.kind()) {
19351 Some(Self { syntax })
19352 } else {
19353 None
19354 }
19355 }
19356 #[inline]
19357 fn syntax(&self) -> &SyntaxNode {
19358 &self.syntax
19359 }
19360}
19361impl AstNode for TimeType {
19362 #[inline]
19363 fn can_cast(kind: SyntaxKind) -> bool {
19364 kind == SyntaxKind::TIME_TYPE
19365 }
19366 #[inline]
19367 fn cast(syntax: SyntaxNode) -> Option<Self> {
19368 if Self::can_cast(syntax.kind()) {
19369 Some(Self { syntax })
19370 } else {
19371 None
19372 }
19373 }
19374 #[inline]
19375 fn syntax(&self) -> &SyntaxNode {
19376 &self.syntax
19377 }
19378}
19379impl AstNode for TransactionModeList {
19380 #[inline]
19381 fn can_cast(kind: SyntaxKind) -> bool {
19382 kind == SyntaxKind::TRANSACTION_MODE_LIST
19383 }
19384 #[inline]
19385 fn cast(syntax: SyntaxNode) -> Option<Self> {
19386 if Self::can_cast(syntax.kind()) {
19387 Some(Self { syntax })
19388 } else {
19389 None
19390 }
19391 }
19392 #[inline]
19393 fn syntax(&self) -> &SyntaxNode {
19394 &self.syntax
19395 }
19396}
19397impl AstNode for TransformFuncOption {
19398 #[inline]
19399 fn can_cast(kind: SyntaxKind) -> bool {
19400 kind == SyntaxKind::TRANSFORM_FUNC_OPTION
19401 }
19402 #[inline]
19403 fn cast(syntax: SyntaxNode) -> Option<Self> {
19404 if Self::can_cast(syntax.kind()) {
19405 Some(Self { syntax })
19406 } else {
19407 None
19408 }
19409 }
19410 #[inline]
19411 fn syntax(&self) -> &SyntaxNode {
19412 &self.syntax
19413 }
19414}
19415impl AstNode for Truncate {
19416 #[inline]
19417 fn can_cast(kind: SyntaxKind) -> bool {
19418 kind == SyntaxKind::TRUNCATE
19419 }
19420 #[inline]
19421 fn cast(syntax: SyntaxNode) -> Option<Self> {
19422 if Self::can_cast(syntax.kind()) {
19423 Some(Self { syntax })
19424 } else {
19425 None
19426 }
19427 }
19428 #[inline]
19429 fn syntax(&self) -> &SyntaxNode {
19430 &self.syntax
19431 }
19432}
19433impl AstNode for TupleExpr {
19434 #[inline]
19435 fn can_cast(kind: SyntaxKind) -> bool {
19436 kind == SyntaxKind::TUPLE_EXPR
19437 }
19438 #[inline]
19439 fn cast(syntax: SyntaxNode) -> Option<Self> {
19440 if Self::can_cast(syntax.kind()) {
19441 Some(Self { syntax })
19442 } else {
19443 None
19444 }
19445 }
19446 #[inline]
19447 fn syntax(&self) -> &SyntaxNode {
19448 &self.syntax
19449 }
19450}
19451impl AstNode for UnicodeNormalForm {
19452 #[inline]
19453 fn can_cast(kind: SyntaxKind) -> bool {
19454 kind == SyntaxKind::UNICODE_NORMAL_FORM
19455 }
19456 #[inline]
19457 fn cast(syntax: SyntaxNode) -> Option<Self> {
19458 if Self::can_cast(syntax.kind()) {
19459 Some(Self { syntax })
19460 } else {
19461 None
19462 }
19463 }
19464 #[inline]
19465 fn syntax(&self) -> &SyntaxNode {
19466 &self.syntax
19467 }
19468}
19469impl AstNode for UniqueConstraint {
19470 #[inline]
19471 fn can_cast(kind: SyntaxKind) -> bool {
19472 kind == SyntaxKind::UNIQUE_CONSTRAINT
19473 }
19474 #[inline]
19475 fn cast(syntax: SyntaxNode) -> Option<Self> {
19476 if Self::can_cast(syntax.kind()) {
19477 Some(Self { syntax })
19478 } else {
19479 None
19480 }
19481 }
19482 #[inline]
19483 fn syntax(&self) -> &SyntaxNode {
19484 &self.syntax
19485 }
19486}
19487impl AstNode for Unlisten {
19488 #[inline]
19489 fn can_cast(kind: SyntaxKind) -> bool {
19490 kind == SyntaxKind::UNLISTEN
19491 }
19492 #[inline]
19493 fn cast(syntax: SyntaxNode) -> Option<Self> {
19494 if Self::can_cast(syntax.kind()) {
19495 Some(Self { syntax })
19496 } else {
19497 None
19498 }
19499 }
19500 #[inline]
19501 fn syntax(&self) -> &SyntaxNode {
19502 &self.syntax
19503 }
19504}
19505impl AstNode for Update {
19506 #[inline]
19507 fn can_cast(kind: SyntaxKind) -> bool {
19508 kind == SyntaxKind::UPDATE
19509 }
19510 #[inline]
19511 fn cast(syntax: SyntaxNode) -> Option<Self> {
19512 if Self::can_cast(syntax.kind()) {
19513 Some(Self { syntax })
19514 } else {
19515 None
19516 }
19517 }
19518 #[inline]
19519 fn syntax(&self) -> &SyntaxNode {
19520 &self.syntax
19521 }
19522}
19523impl AstNode for UsingClause {
19524 #[inline]
19525 fn can_cast(kind: SyntaxKind) -> bool {
19526 kind == SyntaxKind::USING_CLAUSE
19527 }
19528 #[inline]
19529 fn cast(syntax: SyntaxNode) -> Option<Self> {
19530 if Self::can_cast(syntax.kind()) {
19531 Some(Self { syntax })
19532 } else {
19533 None
19534 }
19535 }
19536 #[inline]
19537 fn syntax(&self) -> &SyntaxNode {
19538 &self.syntax
19539 }
19540}
19541impl AstNode for UsingIndex {
19542 #[inline]
19543 fn can_cast(kind: SyntaxKind) -> bool {
19544 kind == SyntaxKind::USING_INDEX
19545 }
19546 #[inline]
19547 fn cast(syntax: SyntaxNode) -> Option<Self> {
19548 if Self::can_cast(syntax.kind()) {
19549 Some(Self { syntax })
19550 } else {
19551 None
19552 }
19553 }
19554 #[inline]
19555 fn syntax(&self) -> &SyntaxNode {
19556 &self.syntax
19557 }
19558}
19559impl AstNode for UsingMethod {
19560 #[inline]
19561 fn can_cast(kind: SyntaxKind) -> bool {
19562 kind == SyntaxKind::USING_METHOD
19563 }
19564 #[inline]
19565 fn cast(syntax: SyntaxNode) -> Option<Self> {
19566 if Self::can_cast(syntax.kind()) {
19567 Some(Self { syntax })
19568 } else {
19569 None
19570 }
19571 }
19572 #[inline]
19573 fn syntax(&self) -> &SyntaxNode {
19574 &self.syntax
19575 }
19576}
19577impl AstNode for Vacuum {
19578 #[inline]
19579 fn can_cast(kind: SyntaxKind) -> bool {
19580 kind == SyntaxKind::VACUUM
19581 }
19582 #[inline]
19583 fn cast(syntax: SyntaxNode) -> Option<Self> {
19584 if Self::can_cast(syntax.kind()) {
19585 Some(Self { syntax })
19586 } else {
19587 None
19588 }
19589 }
19590 #[inline]
19591 fn syntax(&self) -> &SyntaxNode {
19592 &self.syntax
19593 }
19594}
19595impl AstNode for VacuumOption {
19596 #[inline]
19597 fn can_cast(kind: SyntaxKind) -> bool {
19598 kind == SyntaxKind::VACUUM_OPTION
19599 }
19600 #[inline]
19601 fn cast(syntax: SyntaxNode) -> Option<Self> {
19602 if Self::can_cast(syntax.kind()) {
19603 Some(Self { syntax })
19604 } else {
19605 None
19606 }
19607 }
19608 #[inline]
19609 fn syntax(&self) -> &SyntaxNode {
19610 &self.syntax
19611 }
19612}
19613impl AstNode for VacuumOptionList {
19614 #[inline]
19615 fn can_cast(kind: SyntaxKind) -> bool {
19616 kind == SyntaxKind::VACUUM_OPTION_LIST
19617 }
19618 #[inline]
19619 fn cast(syntax: SyntaxNode) -> Option<Self> {
19620 if Self::can_cast(syntax.kind()) {
19621 Some(Self { syntax })
19622 } else {
19623 None
19624 }
19625 }
19626 #[inline]
19627 fn syntax(&self) -> &SyntaxNode {
19628 &self.syntax
19629 }
19630}
19631impl AstNode for ValidateConstraint {
19632 #[inline]
19633 fn can_cast(kind: SyntaxKind) -> bool {
19634 kind == SyntaxKind::VALIDATE_CONSTRAINT
19635 }
19636 #[inline]
19637 fn cast(syntax: SyntaxNode) -> Option<Self> {
19638 if Self::can_cast(syntax.kind()) {
19639 Some(Self { syntax })
19640 } else {
19641 None
19642 }
19643 }
19644 #[inline]
19645 fn syntax(&self) -> &SyntaxNode {
19646 &self.syntax
19647 }
19648}
19649impl AstNode for Values {
19650 #[inline]
19651 fn can_cast(kind: SyntaxKind) -> bool {
19652 kind == SyntaxKind::VALUES
19653 }
19654 #[inline]
19655 fn cast(syntax: SyntaxNode) -> Option<Self> {
19656 if Self::can_cast(syntax.kind()) {
19657 Some(Self { syntax })
19658 } else {
19659 None
19660 }
19661 }
19662 #[inline]
19663 fn syntax(&self) -> &SyntaxNode {
19664 &self.syntax
19665 }
19666}
19667impl AstNode for Variant {
19668 #[inline]
19669 fn can_cast(kind: SyntaxKind) -> bool {
19670 kind == SyntaxKind::VARIANT
19671 }
19672 #[inline]
19673 fn cast(syntax: SyntaxNode) -> Option<Self> {
19674 if Self::can_cast(syntax.kind()) {
19675 Some(Self { syntax })
19676 } else {
19677 None
19678 }
19679 }
19680 #[inline]
19681 fn syntax(&self) -> &SyntaxNode {
19682 &self.syntax
19683 }
19684}
19685impl AstNode for VariantList {
19686 #[inline]
19687 fn can_cast(kind: SyntaxKind) -> bool {
19688 kind == SyntaxKind::VARIANT_LIST
19689 }
19690 #[inline]
19691 fn cast(syntax: SyntaxNode) -> Option<Self> {
19692 if Self::can_cast(syntax.kind()) {
19693 Some(Self { syntax })
19694 } else {
19695 None
19696 }
19697 }
19698 #[inline]
19699 fn syntax(&self) -> &SyntaxNode {
19700 &self.syntax
19701 }
19702}
19703impl AstNode for VolatilityFuncOption {
19704 #[inline]
19705 fn can_cast(kind: SyntaxKind) -> bool {
19706 kind == SyntaxKind::VOLATILITY_FUNC_OPTION
19707 }
19708 #[inline]
19709 fn cast(syntax: SyntaxNode) -> Option<Self> {
19710 if Self::can_cast(syntax.kind()) {
19711 Some(Self { syntax })
19712 } else {
19713 None
19714 }
19715 }
19716 #[inline]
19717 fn syntax(&self) -> &SyntaxNode {
19718 &self.syntax
19719 }
19720}
19721impl AstNode for WhenClause {
19722 #[inline]
19723 fn can_cast(kind: SyntaxKind) -> bool {
19724 kind == SyntaxKind::WHEN_CLAUSE
19725 }
19726 #[inline]
19727 fn cast(syntax: SyntaxNode) -> Option<Self> {
19728 if Self::can_cast(syntax.kind()) {
19729 Some(Self { syntax })
19730 } else {
19731 None
19732 }
19733 }
19734 #[inline]
19735 fn syntax(&self) -> &SyntaxNode {
19736 &self.syntax
19737 }
19738}
19739impl AstNode for WhenClauseList {
19740 #[inline]
19741 fn can_cast(kind: SyntaxKind) -> bool {
19742 kind == SyntaxKind::WHEN_CLAUSE_LIST
19743 }
19744 #[inline]
19745 fn cast(syntax: SyntaxNode) -> Option<Self> {
19746 if Self::can_cast(syntax.kind()) {
19747 Some(Self { syntax })
19748 } else {
19749 None
19750 }
19751 }
19752 #[inline]
19753 fn syntax(&self) -> &SyntaxNode {
19754 &self.syntax
19755 }
19756}
19757impl AstNode for WhereClause {
19758 #[inline]
19759 fn can_cast(kind: SyntaxKind) -> bool {
19760 kind == SyntaxKind::WHERE_CLAUSE
19761 }
19762 #[inline]
19763 fn cast(syntax: SyntaxNode) -> Option<Self> {
19764 if Self::can_cast(syntax.kind()) {
19765 Some(Self { syntax })
19766 } else {
19767 None
19768 }
19769 }
19770 #[inline]
19771 fn syntax(&self) -> &SyntaxNode {
19772 &self.syntax
19773 }
19774}
19775impl AstNode for WindowClause {
19776 #[inline]
19777 fn can_cast(kind: SyntaxKind) -> bool {
19778 kind == SyntaxKind::WINDOW_CLAUSE
19779 }
19780 #[inline]
19781 fn cast(syntax: SyntaxNode) -> Option<Self> {
19782 if Self::can_cast(syntax.kind()) {
19783 Some(Self { syntax })
19784 } else {
19785 None
19786 }
19787 }
19788 #[inline]
19789 fn syntax(&self) -> &SyntaxNode {
19790 &self.syntax
19791 }
19792}
19793impl AstNode for WindowDef {
19794 #[inline]
19795 fn can_cast(kind: SyntaxKind) -> bool {
19796 kind == SyntaxKind::WINDOW_DEF
19797 }
19798 #[inline]
19799 fn cast(syntax: SyntaxNode) -> Option<Self> {
19800 if Self::can_cast(syntax.kind()) {
19801 Some(Self { syntax })
19802 } else {
19803 None
19804 }
19805 }
19806 #[inline]
19807 fn syntax(&self) -> &SyntaxNode {
19808 &self.syntax
19809 }
19810}
19811impl AstNode for WindowFuncOption {
19812 #[inline]
19813 fn can_cast(kind: SyntaxKind) -> bool {
19814 kind == SyntaxKind::WINDOW_FUNC_OPTION
19815 }
19816 #[inline]
19817 fn cast(syntax: SyntaxNode) -> Option<Self> {
19818 if Self::can_cast(syntax.kind()) {
19819 Some(Self { syntax })
19820 } else {
19821 None
19822 }
19823 }
19824 #[inline]
19825 fn syntax(&self) -> &SyntaxNode {
19826 &self.syntax
19827 }
19828}
19829impl AstNode for WindowSpec {
19830 #[inline]
19831 fn can_cast(kind: SyntaxKind) -> bool {
19832 kind == SyntaxKind::WINDOW_SPEC
19833 }
19834 #[inline]
19835 fn cast(syntax: SyntaxNode) -> Option<Self> {
19836 if Self::can_cast(syntax.kind()) {
19837 Some(Self { syntax })
19838 } else {
19839 None
19840 }
19841 }
19842 #[inline]
19843 fn syntax(&self) -> &SyntaxNode {
19844 &self.syntax
19845 }
19846}
19847impl AstNode for WithClause {
19848 #[inline]
19849 fn can_cast(kind: SyntaxKind) -> bool {
19850 kind == SyntaxKind::WITH_CLAUSE
19851 }
19852 #[inline]
19853 fn cast(syntax: SyntaxNode) -> Option<Self> {
19854 if Self::can_cast(syntax.kind()) {
19855 Some(Self { syntax })
19856 } else {
19857 None
19858 }
19859 }
19860 #[inline]
19861 fn syntax(&self) -> &SyntaxNode {
19862 &self.syntax
19863 }
19864}
19865impl AstNode for WithData {
19866 #[inline]
19867 fn can_cast(kind: SyntaxKind) -> bool {
19868 kind == SyntaxKind::WITH_DATA
19869 }
19870 #[inline]
19871 fn cast(syntax: SyntaxNode) -> Option<Self> {
19872 if Self::can_cast(syntax.kind()) {
19873 Some(Self { syntax })
19874 } else {
19875 None
19876 }
19877 }
19878 #[inline]
19879 fn syntax(&self) -> &SyntaxNode {
19880 &self.syntax
19881 }
19882}
19883impl AstNode for WithNoData {
19884 #[inline]
19885 fn can_cast(kind: SyntaxKind) -> bool {
19886 kind == SyntaxKind::WITH_NO_DATA
19887 }
19888 #[inline]
19889 fn cast(syntax: SyntaxNode) -> Option<Self> {
19890 if Self::can_cast(syntax.kind()) {
19891 Some(Self { syntax })
19892 } else {
19893 None
19894 }
19895 }
19896 #[inline]
19897 fn syntax(&self) -> &SyntaxNode {
19898 &self.syntax
19899 }
19900}
19901impl AstNode for WithOptions {
19902 #[inline]
19903 fn can_cast(kind: SyntaxKind) -> bool {
19904 kind == SyntaxKind::WITH_OPTIONS
19905 }
19906 #[inline]
19907 fn cast(syntax: SyntaxNode) -> Option<Self> {
19908 if Self::can_cast(syntax.kind()) {
19909 Some(Self { syntax })
19910 } else {
19911 None
19912 }
19913 }
19914 #[inline]
19915 fn syntax(&self) -> &SyntaxNode {
19916 &self.syntax
19917 }
19918}
19919impl AstNode for WithParams {
19920 #[inline]
19921 fn can_cast(kind: SyntaxKind) -> bool {
19922 kind == SyntaxKind::WITH_PARAMS
19923 }
19924 #[inline]
19925 fn cast(syntax: SyntaxNode) -> Option<Self> {
19926 if Self::can_cast(syntax.kind()) {
19927 Some(Self { syntax })
19928 } else {
19929 None
19930 }
19931 }
19932 #[inline]
19933 fn syntax(&self) -> &SyntaxNode {
19934 &self.syntax
19935 }
19936}
19937impl AstNode for WithTable {
19938 #[inline]
19939 fn can_cast(kind: SyntaxKind) -> bool {
19940 kind == SyntaxKind::WITH_TABLE
19941 }
19942 #[inline]
19943 fn cast(syntax: SyntaxNode) -> Option<Self> {
19944 if Self::can_cast(syntax.kind()) {
19945 Some(Self { syntax })
19946 } else {
19947 None
19948 }
19949 }
19950 #[inline]
19951 fn syntax(&self) -> &SyntaxNode {
19952 &self.syntax
19953 }
19954}
19955impl AstNode for WithTimezone {
19956 #[inline]
19957 fn can_cast(kind: SyntaxKind) -> bool {
19958 kind == SyntaxKind::WITH_TIMEZONE
19959 }
19960 #[inline]
19961 fn cast(syntax: SyntaxNode) -> Option<Self> {
19962 if Self::can_cast(syntax.kind()) {
19963 Some(Self { syntax })
19964 } else {
19965 None
19966 }
19967 }
19968 #[inline]
19969 fn syntax(&self) -> &SyntaxNode {
19970 &self.syntax
19971 }
19972}
19973impl AstNode for WithinClause {
19974 #[inline]
19975 fn can_cast(kind: SyntaxKind) -> bool {
19976 kind == SyntaxKind::WITHIN_CLAUSE
19977 }
19978 #[inline]
19979 fn cast(syntax: SyntaxNode) -> Option<Self> {
19980 if Self::can_cast(syntax.kind()) {
19981 Some(Self { syntax })
19982 } else {
19983 None
19984 }
19985 }
19986 #[inline]
19987 fn syntax(&self) -> &SyntaxNode {
19988 &self.syntax
19989 }
19990}
19991impl AstNode for WithoutOids {
19992 #[inline]
19993 fn can_cast(kind: SyntaxKind) -> bool {
19994 kind == SyntaxKind::WITHOUT_OIDS
19995 }
19996 #[inline]
19997 fn cast(syntax: SyntaxNode) -> Option<Self> {
19998 if Self::can_cast(syntax.kind()) {
19999 Some(Self { syntax })
20000 } else {
20001 None
20002 }
20003 }
20004 #[inline]
20005 fn syntax(&self) -> &SyntaxNode {
20006 &self.syntax
20007 }
20008}
20009impl AstNode for WithoutTimezone {
20010 #[inline]
20011 fn can_cast(kind: SyntaxKind) -> bool {
20012 kind == SyntaxKind::WITHOUT_TIMEZONE
20013 }
20014 #[inline]
20015 fn cast(syntax: SyntaxNode) -> Option<Self> {
20016 if Self::can_cast(syntax.kind()) {
20017 Some(Self { syntax })
20018 } else {
20019 None
20020 }
20021 }
20022 #[inline]
20023 fn syntax(&self) -> &SyntaxNode {
20024 &self.syntax
20025 }
20026}
20027impl AstNode for XmlColumnOption {
20028 #[inline]
20029 fn can_cast(kind: SyntaxKind) -> bool {
20030 kind == SyntaxKind::XML_COLUMN_OPTION
20031 }
20032 #[inline]
20033 fn cast(syntax: SyntaxNode) -> Option<Self> {
20034 if Self::can_cast(syntax.kind()) {
20035 Some(Self { syntax })
20036 } else {
20037 None
20038 }
20039 }
20040 #[inline]
20041 fn syntax(&self) -> &SyntaxNode {
20042 &self.syntax
20043 }
20044}
20045impl AstNode for XmlColumnOptionList {
20046 #[inline]
20047 fn can_cast(kind: SyntaxKind) -> bool {
20048 kind == SyntaxKind::XML_COLUMN_OPTION_LIST
20049 }
20050 #[inline]
20051 fn cast(syntax: SyntaxNode) -> Option<Self> {
20052 if Self::can_cast(syntax.kind()) {
20053 Some(Self { syntax })
20054 } else {
20055 None
20056 }
20057 }
20058 #[inline]
20059 fn syntax(&self) -> &SyntaxNode {
20060 &self.syntax
20061 }
20062}
20063impl AstNode for XmlTableColumn {
20064 #[inline]
20065 fn can_cast(kind: SyntaxKind) -> bool {
20066 kind == SyntaxKind::XML_TABLE_COLUMN
20067 }
20068 #[inline]
20069 fn cast(syntax: SyntaxNode) -> Option<Self> {
20070 if Self::can_cast(syntax.kind()) {
20071 Some(Self { syntax })
20072 } else {
20073 None
20074 }
20075 }
20076 #[inline]
20077 fn syntax(&self) -> &SyntaxNode {
20078 &self.syntax
20079 }
20080}
20081impl AstNode for XmlTableColumnList {
20082 #[inline]
20083 fn can_cast(kind: SyntaxKind) -> bool {
20084 kind == SyntaxKind::XML_TABLE_COLUMN_LIST
20085 }
20086 #[inline]
20087 fn cast(syntax: SyntaxNode) -> Option<Self> {
20088 if Self::can_cast(syntax.kind()) {
20089 Some(Self { syntax })
20090 } else {
20091 None
20092 }
20093 }
20094 #[inline]
20095 fn syntax(&self) -> &SyntaxNode {
20096 &self.syntax
20097 }
20098}
20099impl AstNode for AlterColumnOption {
20100 #[inline]
20101 fn can_cast(kind: SyntaxKind) -> bool {
20102 matches!(
20103 kind,
20104 SyntaxKind::ADD_GENERATED
20105 | SyntaxKind::DROP_DEFAULT
20106 | SyntaxKind::DROP_EXPRESSION
20107 | SyntaxKind::DROP_IDENTITY
20108 | SyntaxKind::DROP_NOT_NULL
20109 | SyntaxKind::RESET_OPTIONS
20110 | SyntaxKind::RESTART
20111 | SyntaxKind::SET_COMPRESSION
20112 | SyntaxKind::SET_DEFAULT
20113 | SyntaxKind::SET_EXPRESSION
20114 | SyntaxKind::SET_GENERATED
20115 | SyntaxKind::SET_GENERATED_OPTIONS
20116 | SyntaxKind::SET_NOT_NULL
20117 | SyntaxKind::SET_OPTIONS
20118 | SyntaxKind::SET_SEQUENCE_OPTION
20119 | SyntaxKind::SET_STATISTICS
20120 | SyntaxKind::SET_STORAGE
20121 | SyntaxKind::SET_TYPE
20122 )
20123 }
20124 #[inline]
20125 fn cast(syntax: SyntaxNode) -> Option<Self> {
20126 let res = match syntax.kind() {
20127 SyntaxKind::ADD_GENERATED => AlterColumnOption::AddGenerated(AddGenerated { syntax }),
20128 SyntaxKind::DROP_DEFAULT => AlterColumnOption::DropDefault(DropDefault { syntax }),
20129 SyntaxKind::DROP_EXPRESSION => {
20130 AlterColumnOption::DropExpression(DropExpression { syntax })
20131 }
20132 SyntaxKind::DROP_IDENTITY => AlterColumnOption::DropIdentity(DropIdentity { syntax }),
20133 SyntaxKind::DROP_NOT_NULL => AlterColumnOption::DropNotNull(DropNotNull { syntax }),
20134 SyntaxKind::RESET_OPTIONS => AlterColumnOption::ResetOptions(ResetOptions { syntax }),
20135 SyntaxKind::RESTART => AlterColumnOption::Restart(Restart { syntax }),
20136 SyntaxKind::SET_COMPRESSION => {
20137 AlterColumnOption::SetCompression(SetCompression { syntax })
20138 }
20139 SyntaxKind::SET_DEFAULT => AlterColumnOption::SetDefault(SetDefault { syntax }),
20140 SyntaxKind::SET_EXPRESSION => {
20141 AlterColumnOption::SetExpression(SetExpression { syntax })
20142 }
20143 SyntaxKind::SET_GENERATED => AlterColumnOption::SetGenerated(SetGenerated { syntax }),
20144 SyntaxKind::SET_GENERATED_OPTIONS => {
20145 AlterColumnOption::SetGeneratedOptions(SetGeneratedOptions { syntax })
20146 }
20147 SyntaxKind::SET_NOT_NULL => AlterColumnOption::SetNotNull(SetNotNull { syntax }),
20148 SyntaxKind::SET_OPTIONS => AlterColumnOption::SetOptions(SetOptions { syntax }),
20149 SyntaxKind::SET_SEQUENCE_OPTION => {
20150 AlterColumnOption::SetSequenceOption(SetSequenceOption { syntax })
20151 }
20152 SyntaxKind::SET_STATISTICS => {
20153 AlterColumnOption::SetStatistics(SetStatistics { syntax })
20154 }
20155 SyntaxKind::SET_STORAGE => AlterColumnOption::SetStorage(SetStorage { syntax }),
20156 SyntaxKind::SET_TYPE => AlterColumnOption::SetType(SetType { syntax }),
20157 _ => {
20158 return None;
20159 }
20160 };
20161 Some(res)
20162 }
20163 #[inline]
20164 fn syntax(&self) -> &SyntaxNode {
20165 match self {
20166 AlterColumnOption::AddGenerated(it) => &it.syntax,
20167 AlterColumnOption::DropDefault(it) => &it.syntax,
20168 AlterColumnOption::DropExpression(it) => &it.syntax,
20169 AlterColumnOption::DropIdentity(it) => &it.syntax,
20170 AlterColumnOption::DropNotNull(it) => &it.syntax,
20171 AlterColumnOption::ResetOptions(it) => &it.syntax,
20172 AlterColumnOption::Restart(it) => &it.syntax,
20173 AlterColumnOption::SetCompression(it) => &it.syntax,
20174 AlterColumnOption::SetDefault(it) => &it.syntax,
20175 AlterColumnOption::SetExpression(it) => &it.syntax,
20176 AlterColumnOption::SetGenerated(it) => &it.syntax,
20177 AlterColumnOption::SetGeneratedOptions(it) => &it.syntax,
20178 AlterColumnOption::SetNotNull(it) => &it.syntax,
20179 AlterColumnOption::SetOptions(it) => &it.syntax,
20180 AlterColumnOption::SetSequenceOption(it) => &it.syntax,
20181 AlterColumnOption::SetStatistics(it) => &it.syntax,
20182 AlterColumnOption::SetStorage(it) => &it.syntax,
20183 AlterColumnOption::SetType(it) => &it.syntax,
20184 }
20185 }
20186}
20187impl From<AddGenerated> for AlterColumnOption {
20188 #[inline]
20189 fn from(node: AddGenerated) -> AlterColumnOption {
20190 AlterColumnOption::AddGenerated(node)
20191 }
20192}
20193impl From<DropDefault> for AlterColumnOption {
20194 #[inline]
20195 fn from(node: DropDefault) -> AlterColumnOption {
20196 AlterColumnOption::DropDefault(node)
20197 }
20198}
20199impl From<DropExpression> for AlterColumnOption {
20200 #[inline]
20201 fn from(node: DropExpression) -> AlterColumnOption {
20202 AlterColumnOption::DropExpression(node)
20203 }
20204}
20205impl From<DropIdentity> for AlterColumnOption {
20206 #[inline]
20207 fn from(node: DropIdentity) -> AlterColumnOption {
20208 AlterColumnOption::DropIdentity(node)
20209 }
20210}
20211impl From<DropNotNull> for AlterColumnOption {
20212 #[inline]
20213 fn from(node: DropNotNull) -> AlterColumnOption {
20214 AlterColumnOption::DropNotNull(node)
20215 }
20216}
20217impl From<ResetOptions> for AlterColumnOption {
20218 #[inline]
20219 fn from(node: ResetOptions) -> AlterColumnOption {
20220 AlterColumnOption::ResetOptions(node)
20221 }
20222}
20223impl From<Restart> for AlterColumnOption {
20224 #[inline]
20225 fn from(node: Restart) -> AlterColumnOption {
20226 AlterColumnOption::Restart(node)
20227 }
20228}
20229impl From<SetCompression> for AlterColumnOption {
20230 #[inline]
20231 fn from(node: SetCompression) -> AlterColumnOption {
20232 AlterColumnOption::SetCompression(node)
20233 }
20234}
20235impl From<SetDefault> for AlterColumnOption {
20236 #[inline]
20237 fn from(node: SetDefault) -> AlterColumnOption {
20238 AlterColumnOption::SetDefault(node)
20239 }
20240}
20241impl From<SetExpression> for AlterColumnOption {
20242 #[inline]
20243 fn from(node: SetExpression) -> AlterColumnOption {
20244 AlterColumnOption::SetExpression(node)
20245 }
20246}
20247impl From<SetGenerated> for AlterColumnOption {
20248 #[inline]
20249 fn from(node: SetGenerated) -> AlterColumnOption {
20250 AlterColumnOption::SetGenerated(node)
20251 }
20252}
20253impl From<SetGeneratedOptions> for AlterColumnOption {
20254 #[inline]
20255 fn from(node: SetGeneratedOptions) -> AlterColumnOption {
20256 AlterColumnOption::SetGeneratedOptions(node)
20257 }
20258}
20259impl From<SetNotNull> for AlterColumnOption {
20260 #[inline]
20261 fn from(node: SetNotNull) -> AlterColumnOption {
20262 AlterColumnOption::SetNotNull(node)
20263 }
20264}
20265impl From<SetOptions> for AlterColumnOption {
20266 #[inline]
20267 fn from(node: SetOptions) -> AlterColumnOption {
20268 AlterColumnOption::SetOptions(node)
20269 }
20270}
20271impl From<SetSequenceOption> for AlterColumnOption {
20272 #[inline]
20273 fn from(node: SetSequenceOption) -> AlterColumnOption {
20274 AlterColumnOption::SetSequenceOption(node)
20275 }
20276}
20277impl From<SetStatistics> for AlterColumnOption {
20278 #[inline]
20279 fn from(node: SetStatistics) -> AlterColumnOption {
20280 AlterColumnOption::SetStatistics(node)
20281 }
20282}
20283impl From<SetStorage> for AlterColumnOption {
20284 #[inline]
20285 fn from(node: SetStorage) -> AlterColumnOption {
20286 AlterColumnOption::SetStorage(node)
20287 }
20288}
20289impl From<SetType> for AlterColumnOption {
20290 #[inline]
20291 fn from(node: SetType) -> AlterColumnOption {
20292 AlterColumnOption::SetType(node)
20293 }
20294}
20295impl AstNode for AlterDomainAction {
20296 #[inline]
20297 fn can_cast(kind: SyntaxKind) -> bool {
20298 matches!(
20299 kind,
20300 SyntaxKind::ADD_CONSTRAINT
20301 | SyntaxKind::DROP_CONSTRAINT
20302 | SyntaxKind::DROP_DEFAULT
20303 | SyntaxKind::DROP_NOT_NULL
20304 | SyntaxKind::OWNER_TO
20305 | SyntaxKind::RENAME_CONSTRAINT
20306 | SyntaxKind::RENAME_TO
20307 | SyntaxKind::SET_DEFAULT
20308 | SyntaxKind::SET_NOT_NULL
20309 | SyntaxKind::SET_SCHEMA
20310 | SyntaxKind::VALIDATE_CONSTRAINT
20311 )
20312 }
20313 #[inline]
20314 fn cast(syntax: SyntaxNode) -> Option<Self> {
20315 let res = match syntax.kind() {
20316 SyntaxKind::ADD_CONSTRAINT => {
20317 AlterDomainAction::AddConstraint(AddConstraint { syntax })
20318 }
20319 SyntaxKind::DROP_CONSTRAINT => {
20320 AlterDomainAction::DropConstraint(DropConstraint { syntax })
20321 }
20322 SyntaxKind::DROP_DEFAULT => AlterDomainAction::DropDefault(DropDefault { syntax }),
20323 SyntaxKind::DROP_NOT_NULL => AlterDomainAction::DropNotNull(DropNotNull { syntax }),
20324 SyntaxKind::OWNER_TO => AlterDomainAction::OwnerTo(OwnerTo { syntax }),
20325 SyntaxKind::RENAME_CONSTRAINT => {
20326 AlterDomainAction::RenameConstraint(RenameConstraint { syntax })
20327 }
20328 SyntaxKind::RENAME_TO => AlterDomainAction::RenameTo(RenameTo { syntax }),
20329 SyntaxKind::SET_DEFAULT => AlterDomainAction::SetDefault(SetDefault { syntax }),
20330 SyntaxKind::SET_NOT_NULL => AlterDomainAction::SetNotNull(SetNotNull { syntax }),
20331 SyntaxKind::SET_SCHEMA => AlterDomainAction::SetSchema(SetSchema { syntax }),
20332 SyntaxKind::VALIDATE_CONSTRAINT => {
20333 AlterDomainAction::ValidateConstraint(ValidateConstraint { syntax })
20334 }
20335 _ => {
20336 return None;
20337 }
20338 };
20339 Some(res)
20340 }
20341 #[inline]
20342 fn syntax(&self) -> &SyntaxNode {
20343 match self {
20344 AlterDomainAction::AddConstraint(it) => &it.syntax,
20345 AlterDomainAction::DropConstraint(it) => &it.syntax,
20346 AlterDomainAction::DropDefault(it) => &it.syntax,
20347 AlterDomainAction::DropNotNull(it) => &it.syntax,
20348 AlterDomainAction::OwnerTo(it) => &it.syntax,
20349 AlterDomainAction::RenameConstraint(it) => &it.syntax,
20350 AlterDomainAction::RenameTo(it) => &it.syntax,
20351 AlterDomainAction::SetDefault(it) => &it.syntax,
20352 AlterDomainAction::SetNotNull(it) => &it.syntax,
20353 AlterDomainAction::SetSchema(it) => &it.syntax,
20354 AlterDomainAction::ValidateConstraint(it) => &it.syntax,
20355 }
20356 }
20357}
20358impl From<AddConstraint> for AlterDomainAction {
20359 #[inline]
20360 fn from(node: AddConstraint) -> AlterDomainAction {
20361 AlterDomainAction::AddConstraint(node)
20362 }
20363}
20364impl From<DropConstraint> for AlterDomainAction {
20365 #[inline]
20366 fn from(node: DropConstraint) -> AlterDomainAction {
20367 AlterDomainAction::DropConstraint(node)
20368 }
20369}
20370impl From<DropDefault> for AlterDomainAction {
20371 #[inline]
20372 fn from(node: DropDefault) -> AlterDomainAction {
20373 AlterDomainAction::DropDefault(node)
20374 }
20375}
20376impl From<DropNotNull> for AlterDomainAction {
20377 #[inline]
20378 fn from(node: DropNotNull) -> AlterDomainAction {
20379 AlterDomainAction::DropNotNull(node)
20380 }
20381}
20382impl From<OwnerTo> for AlterDomainAction {
20383 #[inline]
20384 fn from(node: OwnerTo) -> AlterDomainAction {
20385 AlterDomainAction::OwnerTo(node)
20386 }
20387}
20388impl From<RenameConstraint> for AlterDomainAction {
20389 #[inline]
20390 fn from(node: RenameConstraint) -> AlterDomainAction {
20391 AlterDomainAction::RenameConstraint(node)
20392 }
20393}
20394impl From<RenameTo> for AlterDomainAction {
20395 #[inline]
20396 fn from(node: RenameTo) -> AlterDomainAction {
20397 AlterDomainAction::RenameTo(node)
20398 }
20399}
20400impl From<SetDefault> for AlterDomainAction {
20401 #[inline]
20402 fn from(node: SetDefault) -> AlterDomainAction {
20403 AlterDomainAction::SetDefault(node)
20404 }
20405}
20406impl From<SetNotNull> for AlterDomainAction {
20407 #[inline]
20408 fn from(node: SetNotNull) -> AlterDomainAction {
20409 AlterDomainAction::SetNotNull(node)
20410 }
20411}
20412impl From<SetSchema> for AlterDomainAction {
20413 #[inline]
20414 fn from(node: SetSchema) -> AlterDomainAction {
20415 AlterDomainAction::SetSchema(node)
20416 }
20417}
20418impl From<ValidateConstraint> for AlterDomainAction {
20419 #[inline]
20420 fn from(node: ValidateConstraint) -> AlterDomainAction {
20421 AlterDomainAction::ValidateConstraint(node)
20422 }
20423}
20424impl AstNode for AlterTableAction {
20425 #[inline]
20426 fn can_cast(kind: SyntaxKind) -> bool {
20427 matches!(
20428 kind,
20429 SyntaxKind::ADD_COLUMN
20430 | SyntaxKind::ADD_CONSTRAINT
20431 | SyntaxKind::ALTER_COLUMN
20432 | SyntaxKind::ALTER_CONSTRAINT
20433 | SyntaxKind::ATTACH_PARTITION
20434 | SyntaxKind::CLUSTER_ON
20435 | SyntaxKind::DETACH_PARTITION
20436 | SyntaxKind::DISABLE_RLS
20437 | SyntaxKind::DISABLE_RULE
20438 | SyntaxKind::DISABLE_TRIGGER
20439 | SyntaxKind::DROP_COLUMN
20440 | SyntaxKind::DROP_CONSTRAINT
20441 | SyntaxKind::ENABLE_ALWAYS_RULE
20442 | SyntaxKind::ENABLE_ALWAYS_TRIGGER
20443 | SyntaxKind::ENABLE_REPLICA_RULE
20444 | SyntaxKind::ENABLE_REPLICA_TRIGGER
20445 | SyntaxKind::ENABLE_RLS
20446 | SyntaxKind::ENABLE_RULE
20447 | SyntaxKind::ENABLE_TRIGGER
20448 | SyntaxKind::FORCE_RLS
20449 | SyntaxKind::INHERIT
20450 | SyntaxKind::NO_FORCE_RLS
20451 | SyntaxKind::NO_INHERIT
20452 | SyntaxKind::NOT_OF
20453 | SyntaxKind::OF_TYPE
20454 | SyntaxKind::OPTIONS_LIST
20455 | SyntaxKind::OWNER_TO
20456 | SyntaxKind::RENAME_COLUMN
20457 | SyntaxKind::RENAME_CONSTRAINT
20458 | SyntaxKind::RENAME_TABLE
20459 | SyntaxKind::REPLICA_IDENTITY
20460 | SyntaxKind::RESET_STORAGE_PARAMS
20461 | SyntaxKind::SET_ACCESS_METHOD
20462 | SyntaxKind::SET_LOGGED
20463 | SyntaxKind::SET_SCHEMA
20464 | SyntaxKind::SET_STORAGE_PARAMS
20465 | SyntaxKind::SET_TABLESPACE
20466 | SyntaxKind::SET_UNLOGGED
20467 | SyntaxKind::SET_WITHOUT_CLUSTER
20468 | SyntaxKind::SET_WITHOUT_OIDS
20469 | SyntaxKind::VALIDATE_CONSTRAINT
20470 )
20471 }
20472 #[inline]
20473 fn cast(syntax: SyntaxNode) -> Option<Self> {
20474 let res = match syntax.kind() {
20475 SyntaxKind::ADD_COLUMN => AlterTableAction::AddColumn(AddColumn { syntax }),
20476 SyntaxKind::ADD_CONSTRAINT => AlterTableAction::AddConstraint(AddConstraint { syntax }),
20477 SyntaxKind::ALTER_COLUMN => AlterTableAction::AlterColumn(AlterColumn { syntax }),
20478 SyntaxKind::ALTER_CONSTRAINT => {
20479 AlterTableAction::AlterConstraint(AlterConstraint { syntax })
20480 }
20481 SyntaxKind::ATTACH_PARTITION => {
20482 AlterTableAction::AttachPartition(AttachPartition { syntax })
20483 }
20484 SyntaxKind::CLUSTER_ON => AlterTableAction::ClusterOn(ClusterOn { syntax }),
20485 SyntaxKind::DETACH_PARTITION => {
20486 AlterTableAction::DetachPartition(DetachPartition { syntax })
20487 }
20488 SyntaxKind::DISABLE_RLS => AlterTableAction::DisableRls(DisableRls { syntax }),
20489 SyntaxKind::DISABLE_RULE => AlterTableAction::DisableRule(DisableRule { syntax }),
20490 SyntaxKind::DISABLE_TRIGGER => {
20491 AlterTableAction::DisableTrigger(DisableTrigger { syntax })
20492 }
20493 SyntaxKind::DROP_COLUMN => AlterTableAction::DropColumn(DropColumn { syntax }),
20494 SyntaxKind::DROP_CONSTRAINT => {
20495 AlterTableAction::DropConstraint(DropConstraint { syntax })
20496 }
20497 SyntaxKind::ENABLE_ALWAYS_RULE => {
20498 AlterTableAction::EnableAlwaysRule(EnableAlwaysRule { syntax })
20499 }
20500 SyntaxKind::ENABLE_ALWAYS_TRIGGER => {
20501 AlterTableAction::EnableAlwaysTrigger(EnableAlwaysTrigger { syntax })
20502 }
20503 SyntaxKind::ENABLE_REPLICA_RULE => {
20504 AlterTableAction::EnableReplicaRule(EnableReplicaRule { syntax })
20505 }
20506 SyntaxKind::ENABLE_REPLICA_TRIGGER => {
20507 AlterTableAction::EnableReplicaTrigger(EnableReplicaTrigger { syntax })
20508 }
20509 SyntaxKind::ENABLE_RLS => AlterTableAction::EnableRls(EnableRls { syntax }),
20510 SyntaxKind::ENABLE_RULE => AlterTableAction::EnableRule(EnableRule { syntax }),
20511 SyntaxKind::ENABLE_TRIGGER => AlterTableAction::EnableTrigger(EnableTrigger { syntax }),
20512 SyntaxKind::FORCE_RLS => AlterTableAction::ForceRls(ForceRls { syntax }),
20513 SyntaxKind::INHERIT => AlterTableAction::Inherit(Inherit { syntax }),
20514 SyntaxKind::NO_FORCE_RLS => AlterTableAction::NoForceRls(NoForceRls { syntax }),
20515 SyntaxKind::NO_INHERIT => AlterTableAction::NoInherit(NoInherit { syntax }),
20516 SyntaxKind::NOT_OF => AlterTableAction::NotOf(NotOf { syntax }),
20517 SyntaxKind::OF_TYPE => AlterTableAction::OfType(OfType { syntax }),
20518 SyntaxKind::OPTIONS_LIST => AlterTableAction::OptionsList(OptionsList { syntax }),
20519 SyntaxKind::OWNER_TO => AlterTableAction::OwnerTo(OwnerTo { syntax }),
20520 SyntaxKind::RENAME_COLUMN => AlterTableAction::RenameColumn(RenameColumn { syntax }),
20521 SyntaxKind::RENAME_CONSTRAINT => {
20522 AlterTableAction::RenameConstraint(RenameConstraint { syntax })
20523 }
20524 SyntaxKind::RENAME_TABLE => AlterTableAction::RenameTable(RenameTable { syntax }),
20525 SyntaxKind::REPLICA_IDENTITY => {
20526 AlterTableAction::ReplicaIdentity(ReplicaIdentity { syntax })
20527 }
20528 SyntaxKind::RESET_STORAGE_PARAMS => {
20529 AlterTableAction::ResetStorageParams(ResetStorageParams { syntax })
20530 }
20531 SyntaxKind::SET_ACCESS_METHOD => {
20532 AlterTableAction::SetAccessMethod(SetAccessMethod { syntax })
20533 }
20534 SyntaxKind::SET_LOGGED => AlterTableAction::SetLogged(SetLogged { syntax }),
20535 SyntaxKind::SET_SCHEMA => AlterTableAction::SetSchema(SetSchema { syntax }),
20536 SyntaxKind::SET_STORAGE_PARAMS => {
20537 AlterTableAction::SetStorageParams(SetStorageParams { syntax })
20538 }
20539 SyntaxKind::SET_TABLESPACE => AlterTableAction::SetTablespace(SetTablespace { syntax }),
20540 SyntaxKind::SET_UNLOGGED => AlterTableAction::SetUnlogged(SetUnlogged { syntax }),
20541 SyntaxKind::SET_WITHOUT_CLUSTER => {
20542 AlterTableAction::SetWithoutCluster(SetWithoutCluster { syntax })
20543 }
20544 SyntaxKind::SET_WITHOUT_OIDS => {
20545 AlterTableAction::SetWithoutOids(SetWithoutOids { syntax })
20546 }
20547 SyntaxKind::VALIDATE_CONSTRAINT => {
20548 AlterTableAction::ValidateConstraint(ValidateConstraint { syntax })
20549 }
20550 _ => {
20551 return None;
20552 }
20553 };
20554 Some(res)
20555 }
20556 #[inline]
20557 fn syntax(&self) -> &SyntaxNode {
20558 match self {
20559 AlterTableAction::AddColumn(it) => &it.syntax,
20560 AlterTableAction::AddConstraint(it) => &it.syntax,
20561 AlterTableAction::AlterColumn(it) => &it.syntax,
20562 AlterTableAction::AlterConstraint(it) => &it.syntax,
20563 AlterTableAction::AttachPartition(it) => &it.syntax,
20564 AlterTableAction::ClusterOn(it) => &it.syntax,
20565 AlterTableAction::DetachPartition(it) => &it.syntax,
20566 AlterTableAction::DisableRls(it) => &it.syntax,
20567 AlterTableAction::DisableRule(it) => &it.syntax,
20568 AlterTableAction::DisableTrigger(it) => &it.syntax,
20569 AlterTableAction::DropColumn(it) => &it.syntax,
20570 AlterTableAction::DropConstraint(it) => &it.syntax,
20571 AlterTableAction::EnableAlwaysRule(it) => &it.syntax,
20572 AlterTableAction::EnableAlwaysTrigger(it) => &it.syntax,
20573 AlterTableAction::EnableReplicaRule(it) => &it.syntax,
20574 AlterTableAction::EnableReplicaTrigger(it) => &it.syntax,
20575 AlterTableAction::EnableRls(it) => &it.syntax,
20576 AlterTableAction::EnableRule(it) => &it.syntax,
20577 AlterTableAction::EnableTrigger(it) => &it.syntax,
20578 AlterTableAction::ForceRls(it) => &it.syntax,
20579 AlterTableAction::Inherit(it) => &it.syntax,
20580 AlterTableAction::NoForceRls(it) => &it.syntax,
20581 AlterTableAction::NoInherit(it) => &it.syntax,
20582 AlterTableAction::NotOf(it) => &it.syntax,
20583 AlterTableAction::OfType(it) => &it.syntax,
20584 AlterTableAction::OptionsList(it) => &it.syntax,
20585 AlterTableAction::OwnerTo(it) => &it.syntax,
20586 AlterTableAction::RenameColumn(it) => &it.syntax,
20587 AlterTableAction::RenameConstraint(it) => &it.syntax,
20588 AlterTableAction::RenameTable(it) => &it.syntax,
20589 AlterTableAction::ReplicaIdentity(it) => &it.syntax,
20590 AlterTableAction::ResetStorageParams(it) => &it.syntax,
20591 AlterTableAction::SetAccessMethod(it) => &it.syntax,
20592 AlterTableAction::SetLogged(it) => &it.syntax,
20593 AlterTableAction::SetSchema(it) => &it.syntax,
20594 AlterTableAction::SetStorageParams(it) => &it.syntax,
20595 AlterTableAction::SetTablespace(it) => &it.syntax,
20596 AlterTableAction::SetUnlogged(it) => &it.syntax,
20597 AlterTableAction::SetWithoutCluster(it) => &it.syntax,
20598 AlterTableAction::SetWithoutOids(it) => &it.syntax,
20599 AlterTableAction::ValidateConstraint(it) => &it.syntax,
20600 }
20601 }
20602}
20603impl From<AddColumn> for AlterTableAction {
20604 #[inline]
20605 fn from(node: AddColumn) -> AlterTableAction {
20606 AlterTableAction::AddColumn(node)
20607 }
20608}
20609impl From<AddConstraint> for AlterTableAction {
20610 #[inline]
20611 fn from(node: AddConstraint) -> AlterTableAction {
20612 AlterTableAction::AddConstraint(node)
20613 }
20614}
20615impl From<AlterColumn> for AlterTableAction {
20616 #[inline]
20617 fn from(node: AlterColumn) -> AlterTableAction {
20618 AlterTableAction::AlterColumn(node)
20619 }
20620}
20621impl From<AlterConstraint> for AlterTableAction {
20622 #[inline]
20623 fn from(node: AlterConstraint) -> AlterTableAction {
20624 AlterTableAction::AlterConstraint(node)
20625 }
20626}
20627impl From<AttachPartition> for AlterTableAction {
20628 #[inline]
20629 fn from(node: AttachPartition) -> AlterTableAction {
20630 AlterTableAction::AttachPartition(node)
20631 }
20632}
20633impl From<ClusterOn> for AlterTableAction {
20634 #[inline]
20635 fn from(node: ClusterOn) -> AlterTableAction {
20636 AlterTableAction::ClusterOn(node)
20637 }
20638}
20639impl From<DetachPartition> for AlterTableAction {
20640 #[inline]
20641 fn from(node: DetachPartition) -> AlterTableAction {
20642 AlterTableAction::DetachPartition(node)
20643 }
20644}
20645impl From<DisableRls> for AlterTableAction {
20646 #[inline]
20647 fn from(node: DisableRls) -> AlterTableAction {
20648 AlterTableAction::DisableRls(node)
20649 }
20650}
20651impl From<DisableRule> for AlterTableAction {
20652 #[inline]
20653 fn from(node: DisableRule) -> AlterTableAction {
20654 AlterTableAction::DisableRule(node)
20655 }
20656}
20657impl From<DisableTrigger> for AlterTableAction {
20658 #[inline]
20659 fn from(node: DisableTrigger) -> AlterTableAction {
20660 AlterTableAction::DisableTrigger(node)
20661 }
20662}
20663impl From<DropColumn> for AlterTableAction {
20664 #[inline]
20665 fn from(node: DropColumn) -> AlterTableAction {
20666 AlterTableAction::DropColumn(node)
20667 }
20668}
20669impl From<DropConstraint> for AlterTableAction {
20670 #[inline]
20671 fn from(node: DropConstraint) -> AlterTableAction {
20672 AlterTableAction::DropConstraint(node)
20673 }
20674}
20675impl From<EnableAlwaysRule> for AlterTableAction {
20676 #[inline]
20677 fn from(node: EnableAlwaysRule) -> AlterTableAction {
20678 AlterTableAction::EnableAlwaysRule(node)
20679 }
20680}
20681impl From<EnableAlwaysTrigger> for AlterTableAction {
20682 #[inline]
20683 fn from(node: EnableAlwaysTrigger) -> AlterTableAction {
20684 AlterTableAction::EnableAlwaysTrigger(node)
20685 }
20686}
20687impl From<EnableReplicaRule> for AlterTableAction {
20688 #[inline]
20689 fn from(node: EnableReplicaRule) -> AlterTableAction {
20690 AlterTableAction::EnableReplicaRule(node)
20691 }
20692}
20693impl From<EnableReplicaTrigger> for AlterTableAction {
20694 #[inline]
20695 fn from(node: EnableReplicaTrigger) -> AlterTableAction {
20696 AlterTableAction::EnableReplicaTrigger(node)
20697 }
20698}
20699impl From<EnableRls> for AlterTableAction {
20700 #[inline]
20701 fn from(node: EnableRls) -> AlterTableAction {
20702 AlterTableAction::EnableRls(node)
20703 }
20704}
20705impl From<EnableRule> for AlterTableAction {
20706 #[inline]
20707 fn from(node: EnableRule) -> AlterTableAction {
20708 AlterTableAction::EnableRule(node)
20709 }
20710}
20711impl From<EnableTrigger> for AlterTableAction {
20712 #[inline]
20713 fn from(node: EnableTrigger) -> AlterTableAction {
20714 AlterTableAction::EnableTrigger(node)
20715 }
20716}
20717impl From<ForceRls> for AlterTableAction {
20718 #[inline]
20719 fn from(node: ForceRls) -> AlterTableAction {
20720 AlterTableAction::ForceRls(node)
20721 }
20722}
20723impl From<Inherit> for AlterTableAction {
20724 #[inline]
20725 fn from(node: Inherit) -> AlterTableAction {
20726 AlterTableAction::Inherit(node)
20727 }
20728}
20729impl From<NoForceRls> for AlterTableAction {
20730 #[inline]
20731 fn from(node: NoForceRls) -> AlterTableAction {
20732 AlterTableAction::NoForceRls(node)
20733 }
20734}
20735impl From<NoInherit> for AlterTableAction {
20736 #[inline]
20737 fn from(node: NoInherit) -> AlterTableAction {
20738 AlterTableAction::NoInherit(node)
20739 }
20740}
20741impl From<NotOf> for AlterTableAction {
20742 #[inline]
20743 fn from(node: NotOf) -> AlterTableAction {
20744 AlterTableAction::NotOf(node)
20745 }
20746}
20747impl From<OfType> for AlterTableAction {
20748 #[inline]
20749 fn from(node: OfType) -> AlterTableAction {
20750 AlterTableAction::OfType(node)
20751 }
20752}
20753impl From<OptionsList> for AlterTableAction {
20754 #[inline]
20755 fn from(node: OptionsList) -> AlterTableAction {
20756 AlterTableAction::OptionsList(node)
20757 }
20758}
20759impl From<OwnerTo> for AlterTableAction {
20760 #[inline]
20761 fn from(node: OwnerTo) -> AlterTableAction {
20762 AlterTableAction::OwnerTo(node)
20763 }
20764}
20765impl From<RenameColumn> for AlterTableAction {
20766 #[inline]
20767 fn from(node: RenameColumn) -> AlterTableAction {
20768 AlterTableAction::RenameColumn(node)
20769 }
20770}
20771impl From<RenameConstraint> for AlterTableAction {
20772 #[inline]
20773 fn from(node: RenameConstraint) -> AlterTableAction {
20774 AlterTableAction::RenameConstraint(node)
20775 }
20776}
20777impl From<RenameTable> for AlterTableAction {
20778 #[inline]
20779 fn from(node: RenameTable) -> AlterTableAction {
20780 AlterTableAction::RenameTable(node)
20781 }
20782}
20783impl From<ReplicaIdentity> for AlterTableAction {
20784 #[inline]
20785 fn from(node: ReplicaIdentity) -> AlterTableAction {
20786 AlterTableAction::ReplicaIdentity(node)
20787 }
20788}
20789impl From<ResetStorageParams> for AlterTableAction {
20790 #[inline]
20791 fn from(node: ResetStorageParams) -> AlterTableAction {
20792 AlterTableAction::ResetStorageParams(node)
20793 }
20794}
20795impl From<SetAccessMethod> for AlterTableAction {
20796 #[inline]
20797 fn from(node: SetAccessMethod) -> AlterTableAction {
20798 AlterTableAction::SetAccessMethod(node)
20799 }
20800}
20801impl From<SetLogged> for AlterTableAction {
20802 #[inline]
20803 fn from(node: SetLogged) -> AlterTableAction {
20804 AlterTableAction::SetLogged(node)
20805 }
20806}
20807impl From<SetSchema> for AlterTableAction {
20808 #[inline]
20809 fn from(node: SetSchema) -> AlterTableAction {
20810 AlterTableAction::SetSchema(node)
20811 }
20812}
20813impl From<SetStorageParams> for AlterTableAction {
20814 #[inline]
20815 fn from(node: SetStorageParams) -> AlterTableAction {
20816 AlterTableAction::SetStorageParams(node)
20817 }
20818}
20819impl From<SetTablespace> for AlterTableAction {
20820 #[inline]
20821 fn from(node: SetTablespace) -> AlterTableAction {
20822 AlterTableAction::SetTablespace(node)
20823 }
20824}
20825impl From<SetUnlogged> for AlterTableAction {
20826 #[inline]
20827 fn from(node: SetUnlogged) -> AlterTableAction {
20828 AlterTableAction::SetUnlogged(node)
20829 }
20830}
20831impl From<SetWithoutCluster> for AlterTableAction {
20832 #[inline]
20833 fn from(node: SetWithoutCluster) -> AlterTableAction {
20834 AlterTableAction::SetWithoutCluster(node)
20835 }
20836}
20837impl From<SetWithoutOids> for AlterTableAction {
20838 #[inline]
20839 fn from(node: SetWithoutOids) -> AlterTableAction {
20840 AlterTableAction::SetWithoutOids(node)
20841 }
20842}
20843impl From<ValidateConstraint> for AlterTableAction {
20844 #[inline]
20845 fn from(node: ValidateConstraint) -> AlterTableAction {
20846 AlterTableAction::ValidateConstraint(node)
20847 }
20848}
20849impl AstNode for ColumnConstraint {
20850 #[inline]
20851 fn can_cast(kind: SyntaxKind) -> bool {
20852 matches!(
20853 kind,
20854 SyntaxKind::CHECK_CONSTRAINT
20855 | SyntaxKind::EXCLUDE_CONSTRAINT
20856 | SyntaxKind::NOT_NULL_CONSTRAINT
20857 | SyntaxKind::PRIMARY_KEY_CONSTRAINT
20858 | SyntaxKind::REFERENCES_CONSTRAINT
20859 | SyntaxKind::UNIQUE_CONSTRAINT
20860 )
20861 }
20862 #[inline]
20863 fn cast(syntax: SyntaxNode) -> Option<Self> {
20864 let res = match syntax.kind() {
20865 SyntaxKind::CHECK_CONSTRAINT => {
20866 ColumnConstraint::CheckConstraint(CheckConstraint { syntax })
20867 }
20868 SyntaxKind::EXCLUDE_CONSTRAINT => {
20869 ColumnConstraint::ExcludeConstraint(ExcludeConstraint { syntax })
20870 }
20871 SyntaxKind::NOT_NULL_CONSTRAINT => {
20872 ColumnConstraint::NotNullConstraint(NotNullConstraint { syntax })
20873 }
20874 SyntaxKind::PRIMARY_KEY_CONSTRAINT => {
20875 ColumnConstraint::PrimaryKeyConstraint(PrimaryKeyConstraint { syntax })
20876 }
20877 SyntaxKind::REFERENCES_CONSTRAINT => {
20878 ColumnConstraint::ReferencesConstraint(ReferencesConstraint { syntax })
20879 }
20880 SyntaxKind::UNIQUE_CONSTRAINT => {
20881 ColumnConstraint::UniqueConstraint(UniqueConstraint { syntax })
20882 }
20883 _ => {
20884 return None;
20885 }
20886 };
20887 Some(res)
20888 }
20889 #[inline]
20890 fn syntax(&self) -> &SyntaxNode {
20891 match self {
20892 ColumnConstraint::CheckConstraint(it) => &it.syntax,
20893 ColumnConstraint::ExcludeConstraint(it) => &it.syntax,
20894 ColumnConstraint::NotNullConstraint(it) => &it.syntax,
20895 ColumnConstraint::PrimaryKeyConstraint(it) => &it.syntax,
20896 ColumnConstraint::ReferencesConstraint(it) => &it.syntax,
20897 ColumnConstraint::UniqueConstraint(it) => &it.syntax,
20898 }
20899 }
20900}
20901impl From<CheckConstraint> for ColumnConstraint {
20902 #[inline]
20903 fn from(node: CheckConstraint) -> ColumnConstraint {
20904 ColumnConstraint::CheckConstraint(node)
20905 }
20906}
20907impl From<ExcludeConstraint> for ColumnConstraint {
20908 #[inline]
20909 fn from(node: ExcludeConstraint) -> ColumnConstraint {
20910 ColumnConstraint::ExcludeConstraint(node)
20911 }
20912}
20913impl From<NotNullConstraint> for ColumnConstraint {
20914 #[inline]
20915 fn from(node: NotNullConstraint) -> ColumnConstraint {
20916 ColumnConstraint::NotNullConstraint(node)
20917 }
20918}
20919impl From<PrimaryKeyConstraint> for ColumnConstraint {
20920 #[inline]
20921 fn from(node: PrimaryKeyConstraint) -> ColumnConstraint {
20922 ColumnConstraint::PrimaryKeyConstraint(node)
20923 }
20924}
20925impl From<ReferencesConstraint> for ColumnConstraint {
20926 #[inline]
20927 fn from(node: ReferencesConstraint) -> ColumnConstraint {
20928 ColumnConstraint::ReferencesConstraint(node)
20929 }
20930}
20931impl From<UniqueConstraint> for ColumnConstraint {
20932 #[inline]
20933 fn from(node: UniqueConstraint) -> ColumnConstraint {
20934 ColumnConstraint::UniqueConstraint(node)
20935 }
20936}
20937impl AstNode for Constraint {
20938 #[inline]
20939 fn can_cast(kind: SyntaxKind) -> bool {
20940 matches!(
20941 kind,
20942 SyntaxKind::CHECK_CONSTRAINT
20943 | SyntaxKind::DEFAULT_CONSTRAINT
20944 | SyntaxKind::FOREIGN_KEY_CONSTRAINT
20945 | SyntaxKind::GENERATED_CONSTRAINT
20946 | SyntaxKind::NOT_NULL_CONSTRAINT
20947 | SyntaxKind::NULL_CONSTRAINT
20948 | SyntaxKind::PRIMARY_KEY_CONSTRAINT
20949 | SyntaxKind::REFERENCES_CONSTRAINT
20950 | SyntaxKind::UNIQUE_CONSTRAINT
20951 )
20952 }
20953 #[inline]
20954 fn cast(syntax: SyntaxNode) -> Option<Self> {
20955 let res = match syntax.kind() {
20956 SyntaxKind::CHECK_CONSTRAINT => Constraint::CheckConstraint(CheckConstraint { syntax }),
20957 SyntaxKind::DEFAULT_CONSTRAINT => {
20958 Constraint::DefaultConstraint(DefaultConstraint { syntax })
20959 }
20960 SyntaxKind::FOREIGN_KEY_CONSTRAINT => {
20961 Constraint::ForeignKeyConstraint(ForeignKeyConstraint { syntax })
20962 }
20963 SyntaxKind::GENERATED_CONSTRAINT => {
20964 Constraint::GeneratedConstraint(GeneratedConstraint { syntax })
20965 }
20966 SyntaxKind::NOT_NULL_CONSTRAINT => {
20967 Constraint::NotNullConstraint(NotNullConstraint { syntax })
20968 }
20969 SyntaxKind::NULL_CONSTRAINT => Constraint::NullConstraint(NullConstraint { syntax }),
20970 SyntaxKind::PRIMARY_KEY_CONSTRAINT => {
20971 Constraint::PrimaryKeyConstraint(PrimaryKeyConstraint { syntax })
20972 }
20973 SyntaxKind::REFERENCES_CONSTRAINT => {
20974 Constraint::ReferencesConstraint(ReferencesConstraint { syntax })
20975 }
20976 SyntaxKind::UNIQUE_CONSTRAINT => {
20977 Constraint::UniqueConstraint(UniqueConstraint { syntax })
20978 }
20979 _ => {
20980 return None;
20981 }
20982 };
20983 Some(res)
20984 }
20985 #[inline]
20986 fn syntax(&self) -> &SyntaxNode {
20987 match self {
20988 Constraint::CheckConstraint(it) => &it.syntax,
20989 Constraint::DefaultConstraint(it) => &it.syntax,
20990 Constraint::ForeignKeyConstraint(it) => &it.syntax,
20991 Constraint::GeneratedConstraint(it) => &it.syntax,
20992 Constraint::NotNullConstraint(it) => &it.syntax,
20993 Constraint::NullConstraint(it) => &it.syntax,
20994 Constraint::PrimaryKeyConstraint(it) => &it.syntax,
20995 Constraint::ReferencesConstraint(it) => &it.syntax,
20996 Constraint::UniqueConstraint(it) => &it.syntax,
20997 }
20998 }
20999}
21000impl From<CheckConstraint> for Constraint {
21001 #[inline]
21002 fn from(node: CheckConstraint) -> Constraint {
21003 Constraint::CheckConstraint(node)
21004 }
21005}
21006impl From<DefaultConstraint> for Constraint {
21007 #[inline]
21008 fn from(node: DefaultConstraint) -> Constraint {
21009 Constraint::DefaultConstraint(node)
21010 }
21011}
21012impl From<ForeignKeyConstraint> for Constraint {
21013 #[inline]
21014 fn from(node: ForeignKeyConstraint) -> Constraint {
21015 Constraint::ForeignKeyConstraint(node)
21016 }
21017}
21018impl From<GeneratedConstraint> for Constraint {
21019 #[inline]
21020 fn from(node: GeneratedConstraint) -> Constraint {
21021 Constraint::GeneratedConstraint(node)
21022 }
21023}
21024impl From<NotNullConstraint> for Constraint {
21025 #[inline]
21026 fn from(node: NotNullConstraint) -> Constraint {
21027 Constraint::NotNullConstraint(node)
21028 }
21029}
21030impl From<NullConstraint> for Constraint {
21031 #[inline]
21032 fn from(node: NullConstraint) -> Constraint {
21033 Constraint::NullConstraint(node)
21034 }
21035}
21036impl From<PrimaryKeyConstraint> for Constraint {
21037 #[inline]
21038 fn from(node: PrimaryKeyConstraint) -> Constraint {
21039 Constraint::PrimaryKeyConstraint(node)
21040 }
21041}
21042impl From<ReferencesConstraint> for Constraint {
21043 #[inline]
21044 fn from(node: ReferencesConstraint) -> Constraint {
21045 Constraint::ReferencesConstraint(node)
21046 }
21047}
21048impl From<UniqueConstraint> for Constraint {
21049 #[inline]
21050 fn from(node: UniqueConstraint) -> Constraint {
21051 Constraint::UniqueConstraint(node)
21052 }
21053}
21054impl AstNode for Expr {
21055 #[inline]
21056 fn can_cast(kind: SyntaxKind) -> bool {
21057 matches!(
21058 kind,
21059 SyntaxKind::ARRAY_EXPR
21060 | SyntaxKind::BETWEEN_EXPR
21061 | SyntaxKind::BIN_EXPR
21062 | SyntaxKind::CALL_EXPR
21063 | SyntaxKind::CASE_EXPR
21064 | SyntaxKind::CAST_EXPR
21065 | SyntaxKind::FIELD_EXPR
21066 | SyntaxKind::INDEX_EXPR
21067 | SyntaxKind::LITERAL
21068 | SyntaxKind::NAME_REF
21069 | SyntaxKind::PAREN_EXPR
21070 | SyntaxKind::POSTFIX_EXPR
21071 | SyntaxKind::PREFIX_EXPR
21072 | SyntaxKind::TUPLE_EXPR
21073 )
21074 }
21075 #[inline]
21076 fn cast(syntax: SyntaxNode) -> Option<Self> {
21077 let res = match syntax.kind() {
21078 SyntaxKind::ARRAY_EXPR => Expr::ArrayExpr(ArrayExpr { syntax }),
21079 SyntaxKind::BETWEEN_EXPR => Expr::BetweenExpr(BetweenExpr { syntax }),
21080 SyntaxKind::BIN_EXPR => Expr::BinExpr(BinExpr { syntax }),
21081 SyntaxKind::CALL_EXPR => Expr::CallExpr(CallExpr { syntax }),
21082 SyntaxKind::CASE_EXPR => Expr::CaseExpr(CaseExpr { syntax }),
21083 SyntaxKind::CAST_EXPR => Expr::CastExpr(CastExpr { syntax }),
21084 SyntaxKind::FIELD_EXPR => Expr::FieldExpr(FieldExpr { syntax }),
21085 SyntaxKind::INDEX_EXPR => Expr::IndexExpr(IndexExpr { syntax }),
21086 SyntaxKind::LITERAL => Expr::Literal(Literal { syntax }),
21087 SyntaxKind::NAME_REF => Expr::NameRef(NameRef { syntax }),
21088 SyntaxKind::PAREN_EXPR => Expr::ParenExpr(ParenExpr { syntax }),
21089 SyntaxKind::POSTFIX_EXPR => Expr::PostfixExpr(PostfixExpr { syntax }),
21090 SyntaxKind::PREFIX_EXPR => Expr::PrefixExpr(PrefixExpr { syntax }),
21091 SyntaxKind::TUPLE_EXPR => Expr::TupleExpr(TupleExpr { syntax }),
21092 _ => {
21093 return None;
21094 }
21095 };
21096 Some(res)
21097 }
21098 #[inline]
21099 fn syntax(&self) -> &SyntaxNode {
21100 match self {
21101 Expr::ArrayExpr(it) => &it.syntax,
21102 Expr::BetweenExpr(it) => &it.syntax,
21103 Expr::BinExpr(it) => &it.syntax,
21104 Expr::CallExpr(it) => &it.syntax,
21105 Expr::CaseExpr(it) => &it.syntax,
21106 Expr::CastExpr(it) => &it.syntax,
21107 Expr::FieldExpr(it) => &it.syntax,
21108 Expr::IndexExpr(it) => &it.syntax,
21109 Expr::Literal(it) => &it.syntax,
21110 Expr::NameRef(it) => &it.syntax,
21111 Expr::ParenExpr(it) => &it.syntax,
21112 Expr::PostfixExpr(it) => &it.syntax,
21113 Expr::PrefixExpr(it) => &it.syntax,
21114 Expr::TupleExpr(it) => &it.syntax,
21115 }
21116 }
21117}
21118impl From<ArrayExpr> for Expr {
21119 #[inline]
21120 fn from(node: ArrayExpr) -> Expr {
21121 Expr::ArrayExpr(node)
21122 }
21123}
21124impl From<BetweenExpr> for Expr {
21125 #[inline]
21126 fn from(node: BetweenExpr) -> Expr {
21127 Expr::BetweenExpr(node)
21128 }
21129}
21130impl From<BinExpr> for Expr {
21131 #[inline]
21132 fn from(node: BinExpr) -> Expr {
21133 Expr::BinExpr(node)
21134 }
21135}
21136impl From<CallExpr> for Expr {
21137 #[inline]
21138 fn from(node: CallExpr) -> Expr {
21139 Expr::CallExpr(node)
21140 }
21141}
21142impl From<CaseExpr> for Expr {
21143 #[inline]
21144 fn from(node: CaseExpr) -> Expr {
21145 Expr::CaseExpr(node)
21146 }
21147}
21148impl From<CastExpr> for Expr {
21149 #[inline]
21150 fn from(node: CastExpr) -> Expr {
21151 Expr::CastExpr(node)
21152 }
21153}
21154impl From<FieldExpr> for Expr {
21155 #[inline]
21156 fn from(node: FieldExpr) -> Expr {
21157 Expr::FieldExpr(node)
21158 }
21159}
21160impl From<IndexExpr> for Expr {
21161 #[inline]
21162 fn from(node: IndexExpr) -> Expr {
21163 Expr::IndexExpr(node)
21164 }
21165}
21166impl From<Literal> for Expr {
21167 #[inline]
21168 fn from(node: Literal) -> Expr {
21169 Expr::Literal(node)
21170 }
21171}
21172impl From<NameRef> for Expr {
21173 #[inline]
21174 fn from(node: NameRef) -> Expr {
21175 Expr::NameRef(node)
21176 }
21177}
21178impl From<ParenExpr> for Expr {
21179 #[inline]
21180 fn from(node: ParenExpr) -> Expr {
21181 Expr::ParenExpr(node)
21182 }
21183}
21184impl From<PostfixExpr> for Expr {
21185 #[inline]
21186 fn from(node: PostfixExpr) -> Expr {
21187 Expr::PostfixExpr(node)
21188 }
21189}
21190impl From<PrefixExpr> for Expr {
21191 #[inline]
21192 fn from(node: PrefixExpr) -> Expr {
21193 Expr::PrefixExpr(node)
21194 }
21195}
21196impl From<TupleExpr> for Expr {
21197 #[inline]
21198 fn from(node: TupleExpr) -> Expr {
21199 Expr::TupleExpr(node)
21200 }
21201}
21202impl AstNode for FuncOption {
21203 #[inline]
21204 fn can_cast(kind: SyntaxKind) -> bool {
21205 matches!(
21206 kind,
21207 SyntaxKind::AS_FUNC_OPTION
21208 | SyntaxKind::BEGIN_FUNC_OPTION
21209 | SyntaxKind::COST_FUNC_OPTION
21210 | SyntaxKind::LANGUAGE_FUNC_OPTION
21211 | SyntaxKind::LEAKPROOF_FUNC_OPTION
21212 | SyntaxKind::PARALLEL_FUNC_OPTION
21213 | SyntaxKind::RESET_FUNC_OPTION
21214 | SyntaxKind::RETURN_FUNC_OPTION
21215 | SyntaxKind::ROWS_FUNC_OPTION
21216 | SyntaxKind::SECURITY_FUNC_OPTION
21217 | SyntaxKind::SET_FUNC_OPTION
21218 | SyntaxKind::STRICT_FUNC_OPTION
21219 | SyntaxKind::SUPPORT_FUNC_OPTION
21220 | SyntaxKind::TRANSFORM_FUNC_OPTION
21221 | SyntaxKind::VOLATILITY_FUNC_OPTION
21222 | SyntaxKind::WINDOW_FUNC_OPTION
21223 )
21224 }
21225 #[inline]
21226 fn cast(syntax: SyntaxNode) -> Option<Self> {
21227 let res = match syntax.kind() {
21228 SyntaxKind::AS_FUNC_OPTION => FuncOption::AsFuncOption(AsFuncOption { syntax }),
21229 SyntaxKind::BEGIN_FUNC_OPTION => {
21230 FuncOption::BeginFuncOption(BeginFuncOption { syntax })
21231 }
21232 SyntaxKind::COST_FUNC_OPTION => FuncOption::CostFuncOption(CostFuncOption { syntax }),
21233 SyntaxKind::LANGUAGE_FUNC_OPTION => {
21234 FuncOption::LanguageFuncOption(LanguageFuncOption { syntax })
21235 }
21236 SyntaxKind::LEAKPROOF_FUNC_OPTION => {
21237 FuncOption::LeakproofFuncOption(LeakproofFuncOption { syntax })
21238 }
21239 SyntaxKind::PARALLEL_FUNC_OPTION => {
21240 FuncOption::ParallelFuncOption(ParallelFuncOption { syntax })
21241 }
21242 SyntaxKind::RESET_FUNC_OPTION => {
21243 FuncOption::ResetFuncOption(ResetFuncOption { syntax })
21244 }
21245 SyntaxKind::RETURN_FUNC_OPTION => {
21246 FuncOption::ReturnFuncOption(ReturnFuncOption { syntax })
21247 }
21248 SyntaxKind::ROWS_FUNC_OPTION => FuncOption::RowsFuncOption(RowsFuncOption { syntax }),
21249 SyntaxKind::SECURITY_FUNC_OPTION => {
21250 FuncOption::SecurityFuncOption(SecurityFuncOption { syntax })
21251 }
21252 SyntaxKind::SET_FUNC_OPTION => FuncOption::SetFuncOption(SetFuncOption { syntax }),
21253 SyntaxKind::STRICT_FUNC_OPTION => {
21254 FuncOption::StrictFuncOption(StrictFuncOption { syntax })
21255 }
21256 SyntaxKind::SUPPORT_FUNC_OPTION => {
21257 FuncOption::SupportFuncOption(SupportFuncOption { syntax })
21258 }
21259 SyntaxKind::TRANSFORM_FUNC_OPTION => {
21260 FuncOption::TransformFuncOption(TransformFuncOption { syntax })
21261 }
21262 SyntaxKind::VOLATILITY_FUNC_OPTION => {
21263 FuncOption::VolatilityFuncOption(VolatilityFuncOption { syntax })
21264 }
21265 SyntaxKind::WINDOW_FUNC_OPTION => {
21266 FuncOption::WindowFuncOption(WindowFuncOption { syntax })
21267 }
21268 _ => {
21269 return None;
21270 }
21271 };
21272 Some(res)
21273 }
21274 #[inline]
21275 fn syntax(&self) -> &SyntaxNode {
21276 match self {
21277 FuncOption::AsFuncOption(it) => &it.syntax,
21278 FuncOption::BeginFuncOption(it) => &it.syntax,
21279 FuncOption::CostFuncOption(it) => &it.syntax,
21280 FuncOption::LanguageFuncOption(it) => &it.syntax,
21281 FuncOption::LeakproofFuncOption(it) => &it.syntax,
21282 FuncOption::ParallelFuncOption(it) => &it.syntax,
21283 FuncOption::ResetFuncOption(it) => &it.syntax,
21284 FuncOption::ReturnFuncOption(it) => &it.syntax,
21285 FuncOption::RowsFuncOption(it) => &it.syntax,
21286 FuncOption::SecurityFuncOption(it) => &it.syntax,
21287 FuncOption::SetFuncOption(it) => &it.syntax,
21288 FuncOption::StrictFuncOption(it) => &it.syntax,
21289 FuncOption::SupportFuncOption(it) => &it.syntax,
21290 FuncOption::TransformFuncOption(it) => &it.syntax,
21291 FuncOption::VolatilityFuncOption(it) => &it.syntax,
21292 FuncOption::WindowFuncOption(it) => &it.syntax,
21293 }
21294 }
21295}
21296impl From<AsFuncOption> for FuncOption {
21297 #[inline]
21298 fn from(node: AsFuncOption) -> FuncOption {
21299 FuncOption::AsFuncOption(node)
21300 }
21301}
21302impl From<BeginFuncOption> for FuncOption {
21303 #[inline]
21304 fn from(node: BeginFuncOption) -> FuncOption {
21305 FuncOption::BeginFuncOption(node)
21306 }
21307}
21308impl From<CostFuncOption> for FuncOption {
21309 #[inline]
21310 fn from(node: CostFuncOption) -> FuncOption {
21311 FuncOption::CostFuncOption(node)
21312 }
21313}
21314impl From<LanguageFuncOption> for FuncOption {
21315 #[inline]
21316 fn from(node: LanguageFuncOption) -> FuncOption {
21317 FuncOption::LanguageFuncOption(node)
21318 }
21319}
21320impl From<LeakproofFuncOption> for FuncOption {
21321 #[inline]
21322 fn from(node: LeakproofFuncOption) -> FuncOption {
21323 FuncOption::LeakproofFuncOption(node)
21324 }
21325}
21326impl From<ParallelFuncOption> for FuncOption {
21327 #[inline]
21328 fn from(node: ParallelFuncOption) -> FuncOption {
21329 FuncOption::ParallelFuncOption(node)
21330 }
21331}
21332impl From<ResetFuncOption> for FuncOption {
21333 #[inline]
21334 fn from(node: ResetFuncOption) -> FuncOption {
21335 FuncOption::ResetFuncOption(node)
21336 }
21337}
21338impl From<ReturnFuncOption> for FuncOption {
21339 #[inline]
21340 fn from(node: ReturnFuncOption) -> FuncOption {
21341 FuncOption::ReturnFuncOption(node)
21342 }
21343}
21344impl From<RowsFuncOption> for FuncOption {
21345 #[inline]
21346 fn from(node: RowsFuncOption) -> FuncOption {
21347 FuncOption::RowsFuncOption(node)
21348 }
21349}
21350impl From<SecurityFuncOption> for FuncOption {
21351 #[inline]
21352 fn from(node: SecurityFuncOption) -> FuncOption {
21353 FuncOption::SecurityFuncOption(node)
21354 }
21355}
21356impl From<SetFuncOption> for FuncOption {
21357 #[inline]
21358 fn from(node: SetFuncOption) -> FuncOption {
21359 FuncOption::SetFuncOption(node)
21360 }
21361}
21362impl From<StrictFuncOption> for FuncOption {
21363 #[inline]
21364 fn from(node: StrictFuncOption) -> FuncOption {
21365 FuncOption::StrictFuncOption(node)
21366 }
21367}
21368impl From<SupportFuncOption> for FuncOption {
21369 #[inline]
21370 fn from(node: SupportFuncOption) -> FuncOption {
21371 FuncOption::SupportFuncOption(node)
21372 }
21373}
21374impl From<TransformFuncOption> for FuncOption {
21375 #[inline]
21376 fn from(node: TransformFuncOption) -> FuncOption {
21377 FuncOption::TransformFuncOption(node)
21378 }
21379}
21380impl From<VolatilityFuncOption> for FuncOption {
21381 #[inline]
21382 fn from(node: VolatilityFuncOption) -> FuncOption {
21383 FuncOption::VolatilityFuncOption(node)
21384 }
21385}
21386impl From<WindowFuncOption> for FuncOption {
21387 #[inline]
21388 fn from(node: WindowFuncOption) -> FuncOption {
21389 FuncOption::WindowFuncOption(node)
21390 }
21391}
21392impl AstNode for JoinType {
21393 #[inline]
21394 fn can_cast(kind: SyntaxKind) -> bool {
21395 matches!(
21396 kind,
21397 SyntaxKind::JOIN_CROSS
21398 | SyntaxKind::JOIN_FULL
21399 | SyntaxKind::JOIN_INNER
21400 | SyntaxKind::JOIN_LEFT
21401 | SyntaxKind::JOIN_RIGHT
21402 )
21403 }
21404 #[inline]
21405 fn cast(syntax: SyntaxNode) -> Option<Self> {
21406 let res = match syntax.kind() {
21407 SyntaxKind::JOIN_CROSS => JoinType::JoinCross(JoinCross { syntax }),
21408 SyntaxKind::JOIN_FULL => JoinType::JoinFull(JoinFull { syntax }),
21409 SyntaxKind::JOIN_INNER => JoinType::JoinInner(JoinInner { syntax }),
21410 SyntaxKind::JOIN_LEFT => JoinType::JoinLeft(JoinLeft { syntax }),
21411 SyntaxKind::JOIN_RIGHT => JoinType::JoinRight(JoinRight { syntax }),
21412 _ => {
21413 return None;
21414 }
21415 };
21416 Some(res)
21417 }
21418 #[inline]
21419 fn syntax(&self) -> &SyntaxNode {
21420 match self {
21421 JoinType::JoinCross(it) => &it.syntax,
21422 JoinType::JoinFull(it) => &it.syntax,
21423 JoinType::JoinInner(it) => &it.syntax,
21424 JoinType::JoinLeft(it) => &it.syntax,
21425 JoinType::JoinRight(it) => &it.syntax,
21426 }
21427 }
21428}
21429impl From<JoinCross> for JoinType {
21430 #[inline]
21431 fn from(node: JoinCross) -> JoinType {
21432 JoinType::JoinCross(node)
21433 }
21434}
21435impl From<JoinFull> for JoinType {
21436 #[inline]
21437 fn from(node: JoinFull) -> JoinType {
21438 JoinType::JoinFull(node)
21439 }
21440}
21441impl From<JoinInner> for JoinType {
21442 #[inline]
21443 fn from(node: JoinInner) -> JoinType {
21444 JoinType::JoinInner(node)
21445 }
21446}
21447impl From<JoinLeft> for JoinType {
21448 #[inline]
21449 fn from(node: JoinLeft) -> JoinType {
21450 JoinType::JoinLeft(node)
21451 }
21452}
21453impl From<JoinRight> for JoinType {
21454 #[inline]
21455 fn from(node: JoinRight) -> JoinType {
21456 JoinType::JoinRight(node)
21457 }
21458}
21459impl AstNode for JsonBehavior {
21460 #[inline]
21461 fn can_cast(kind: SyntaxKind) -> bool {
21462 matches!(
21463 kind,
21464 SyntaxKind::JSON_BEHAVIOR_DEFAULT
21465 | SyntaxKind::JSON_BEHAVIOR_EMPTY_ARRAY
21466 | SyntaxKind::JSON_BEHAVIOR_EMPTY_OBJECT
21467 | SyntaxKind::JSON_BEHAVIOR_ERROR
21468 | SyntaxKind::JSON_BEHAVIOR_FALSE
21469 | SyntaxKind::JSON_BEHAVIOR_NULL
21470 | SyntaxKind::JSON_BEHAVIOR_TRUE
21471 | SyntaxKind::JSON_BEHAVIOR_UNKNOWN
21472 )
21473 }
21474 #[inline]
21475 fn cast(syntax: SyntaxNode) -> Option<Self> {
21476 let res = match syntax.kind() {
21477 SyntaxKind::JSON_BEHAVIOR_DEFAULT => {
21478 JsonBehavior::JsonBehaviorDefault(JsonBehaviorDefault { syntax })
21479 }
21480 SyntaxKind::JSON_BEHAVIOR_EMPTY_ARRAY => {
21481 JsonBehavior::JsonBehaviorEmptyArray(JsonBehaviorEmptyArray { syntax })
21482 }
21483 SyntaxKind::JSON_BEHAVIOR_EMPTY_OBJECT => {
21484 JsonBehavior::JsonBehaviorEmptyObject(JsonBehaviorEmptyObject { syntax })
21485 }
21486 SyntaxKind::JSON_BEHAVIOR_ERROR => {
21487 JsonBehavior::JsonBehaviorError(JsonBehaviorError { syntax })
21488 }
21489 SyntaxKind::JSON_BEHAVIOR_FALSE => {
21490 JsonBehavior::JsonBehaviorFalse(JsonBehaviorFalse { syntax })
21491 }
21492 SyntaxKind::JSON_BEHAVIOR_NULL => {
21493 JsonBehavior::JsonBehaviorNull(JsonBehaviorNull { syntax })
21494 }
21495 SyntaxKind::JSON_BEHAVIOR_TRUE => {
21496 JsonBehavior::JsonBehaviorTrue(JsonBehaviorTrue { syntax })
21497 }
21498 SyntaxKind::JSON_BEHAVIOR_UNKNOWN => {
21499 JsonBehavior::JsonBehaviorUnknown(JsonBehaviorUnknown { syntax })
21500 }
21501 _ => {
21502 return None;
21503 }
21504 };
21505 Some(res)
21506 }
21507 #[inline]
21508 fn syntax(&self) -> &SyntaxNode {
21509 match self {
21510 JsonBehavior::JsonBehaviorDefault(it) => &it.syntax,
21511 JsonBehavior::JsonBehaviorEmptyArray(it) => &it.syntax,
21512 JsonBehavior::JsonBehaviorEmptyObject(it) => &it.syntax,
21513 JsonBehavior::JsonBehaviorError(it) => &it.syntax,
21514 JsonBehavior::JsonBehaviorFalse(it) => &it.syntax,
21515 JsonBehavior::JsonBehaviorNull(it) => &it.syntax,
21516 JsonBehavior::JsonBehaviorTrue(it) => &it.syntax,
21517 JsonBehavior::JsonBehaviorUnknown(it) => &it.syntax,
21518 }
21519 }
21520}
21521impl From<JsonBehaviorDefault> for JsonBehavior {
21522 #[inline]
21523 fn from(node: JsonBehaviorDefault) -> JsonBehavior {
21524 JsonBehavior::JsonBehaviorDefault(node)
21525 }
21526}
21527impl From<JsonBehaviorEmptyArray> for JsonBehavior {
21528 #[inline]
21529 fn from(node: JsonBehaviorEmptyArray) -> JsonBehavior {
21530 JsonBehavior::JsonBehaviorEmptyArray(node)
21531 }
21532}
21533impl From<JsonBehaviorEmptyObject> for JsonBehavior {
21534 #[inline]
21535 fn from(node: JsonBehaviorEmptyObject) -> JsonBehavior {
21536 JsonBehavior::JsonBehaviorEmptyObject(node)
21537 }
21538}
21539impl From<JsonBehaviorError> for JsonBehavior {
21540 #[inline]
21541 fn from(node: JsonBehaviorError) -> JsonBehavior {
21542 JsonBehavior::JsonBehaviorError(node)
21543 }
21544}
21545impl From<JsonBehaviorFalse> for JsonBehavior {
21546 #[inline]
21547 fn from(node: JsonBehaviorFalse) -> JsonBehavior {
21548 JsonBehavior::JsonBehaviorFalse(node)
21549 }
21550}
21551impl From<JsonBehaviorNull> for JsonBehavior {
21552 #[inline]
21553 fn from(node: JsonBehaviorNull) -> JsonBehavior {
21554 JsonBehavior::JsonBehaviorNull(node)
21555 }
21556}
21557impl From<JsonBehaviorTrue> for JsonBehavior {
21558 #[inline]
21559 fn from(node: JsonBehaviorTrue) -> JsonBehavior {
21560 JsonBehavior::JsonBehaviorTrue(node)
21561 }
21562}
21563impl From<JsonBehaviorUnknown> for JsonBehavior {
21564 #[inline]
21565 fn from(node: JsonBehaviorUnknown) -> JsonBehavior {
21566 JsonBehavior::JsonBehaviorUnknown(node)
21567 }
21568}
21569impl AstNode for MatchType {
21570 #[inline]
21571 fn can_cast(kind: SyntaxKind) -> bool {
21572 matches!(
21573 kind,
21574 SyntaxKind::MATCH_FULL | SyntaxKind::MATCH_PARTIAL | SyntaxKind::MATCH_SIMPLE
21575 )
21576 }
21577 #[inline]
21578 fn cast(syntax: SyntaxNode) -> Option<Self> {
21579 let res = match syntax.kind() {
21580 SyntaxKind::MATCH_FULL => MatchType::MatchFull(MatchFull { syntax }),
21581 SyntaxKind::MATCH_PARTIAL => MatchType::MatchPartial(MatchPartial { syntax }),
21582 SyntaxKind::MATCH_SIMPLE => MatchType::MatchSimple(MatchSimple { syntax }),
21583 _ => {
21584 return None;
21585 }
21586 };
21587 Some(res)
21588 }
21589 #[inline]
21590 fn syntax(&self) -> &SyntaxNode {
21591 match self {
21592 MatchType::MatchFull(it) => &it.syntax,
21593 MatchType::MatchPartial(it) => &it.syntax,
21594 MatchType::MatchSimple(it) => &it.syntax,
21595 }
21596 }
21597}
21598impl From<MatchFull> for MatchType {
21599 #[inline]
21600 fn from(node: MatchFull) -> MatchType {
21601 MatchType::MatchFull(node)
21602 }
21603}
21604impl From<MatchPartial> for MatchType {
21605 #[inline]
21606 fn from(node: MatchPartial) -> MatchType {
21607 MatchType::MatchPartial(node)
21608 }
21609}
21610impl From<MatchSimple> for MatchType {
21611 #[inline]
21612 fn from(node: MatchSimple) -> MatchType {
21613 MatchType::MatchSimple(node)
21614 }
21615}
21616impl AstNode for MergeAction {
21617 #[inline]
21618 fn can_cast(kind: SyntaxKind) -> bool {
21619 matches!(
21620 kind,
21621 SyntaxKind::MERGE_DELETE
21622 | SyntaxKind::MERGE_DO_NOTHING
21623 | SyntaxKind::MERGE_INSERT
21624 | SyntaxKind::MERGE_UPDATE
21625 )
21626 }
21627 #[inline]
21628 fn cast(syntax: SyntaxNode) -> Option<Self> {
21629 let res = match syntax.kind() {
21630 SyntaxKind::MERGE_DELETE => MergeAction::MergeDelete(MergeDelete { syntax }),
21631 SyntaxKind::MERGE_DO_NOTHING => MergeAction::MergeDoNothing(MergeDoNothing { syntax }),
21632 SyntaxKind::MERGE_INSERT => MergeAction::MergeInsert(MergeInsert { syntax }),
21633 SyntaxKind::MERGE_UPDATE => MergeAction::MergeUpdate(MergeUpdate { syntax }),
21634 _ => {
21635 return None;
21636 }
21637 };
21638 Some(res)
21639 }
21640 #[inline]
21641 fn syntax(&self) -> &SyntaxNode {
21642 match self {
21643 MergeAction::MergeDelete(it) => &it.syntax,
21644 MergeAction::MergeDoNothing(it) => &it.syntax,
21645 MergeAction::MergeInsert(it) => &it.syntax,
21646 MergeAction::MergeUpdate(it) => &it.syntax,
21647 }
21648 }
21649}
21650impl From<MergeDelete> for MergeAction {
21651 #[inline]
21652 fn from(node: MergeDelete) -> MergeAction {
21653 MergeAction::MergeDelete(node)
21654 }
21655}
21656impl From<MergeDoNothing> for MergeAction {
21657 #[inline]
21658 fn from(node: MergeDoNothing) -> MergeAction {
21659 MergeAction::MergeDoNothing(node)
21660 }
21661}
21662impl From<MergeInsert> for MergeAction {
21663 #[inline]
21664 fn from(node: MergeInsert) -> MergeAction {
21665 MergeAction::MergeInsert(node)
21666 }
21667}
21668impl From<MergeUpdate> for MergeAction {
21669 #[inline]
21670 fn from(node: MergeUpdate) -> MergeAction {
21671 MergeAction::MergeUpdate(node)
21672 }
21673}
21674impl AstNode for MergeWhenClause {
21675 #[inline]
21676 fn can_cast(kind: SyntaxKind) -> bool {
21677 matches!(
21678 kind,
21679 SyntaxKind::MERGE_WHEN_MATCHED
21680 | SyntaxKind::MERGE_WHEN_NOT_MATCHED_SOURCE
21681 | SyntaxKind::MERGE_WHEN_NOT_MATCHED_TARGET
21682 )
21683 }
21684 #[inline]
21685 fn cast(syntax: SyntaxNode) -> Option<Self> {
21686 let res = match syntax.kind() {
21687 SyntaxKind::MERGE_WHEN_MATCHED => {
21688 MergeWhenClause::MergeWhenMatched(MergeWhenMatched { syntax })
21689 }
21690 SyntaxKind::MERGE_WHEN_NOT_MATCHED_SOURCE => {
21691 MergeWhenClause::MergeWhenNotMatchedSource(MergeWhenNotMatchedSource { syntax })
21692 }
21693 SyntaxKind::MERGE_WHEN_NOT_MATCHED_TARGET => {
21694 MergeWhenClause::MergeWhenNotMatchedTarget(MergeWhenNotMatchedTarget { syntax })
21695 }
21696 _ => {
21697 return None;
21698 }
21699 };
21700 Some(res)
21701 }
21702 #[inline]
21703 fn syntax(&self) -> &SyntaxNode {
21704 match self {
21705 MergeWhenClause::MergeWhenMatched(it) => &it.syntax,
21706 MergeWhenClause::MergeWhenNotMatchedSource(it) => &it.syntax,
21707 MergeWhenClause::MergeWhenNotMatchedTarget(it) => &it.syntax,
21708 }
21709 }
21710}
21711impl From<MergeWhenMatched> for MergeWhenClause {
21712 #[inline]
21713 fn from(node: MergeWhenMatched) -> MergeWhenClause {
21714 MergeWhenClause::MergeWhenMatched(node)
21715 }
21716}
21717impl From<MergeWhenNotMatchedSource> for MergeWhenClause {
21718 #[inline]
21719 fn from(node: MergeWhenNotMatchedSource) -> MergeWhenClause {
21720 MergeWhenClause::MergeWhenNotMatchedSource(node)
21721 }
21722}
21723impl From<MergeWhenNotMatchedTarget> for MergeWhenClause {
21724 #[inline]
21725 fn from(node: MergeWhenNotMatchedTarget) -> MergeWhenClause {
21726 MergeWhenClause::MergeWhenNotMatchedTarget(node)
21727 }
21728}
21729impl AstNode for OnCommitAction {
21730 #[inline]
21731 fn can_cast(kind: SyntaxKind) -> bool {
21732 matches!(
21733 kind,
21734 SyntaxKind::DELETE_ROWS | SyntaxKind::DROP | SyntaxKind::PRESERVE_ROWS
21735 )
21736 }
21737 #[inline]
21738 fn cast(syntax: SyntaxNode) -> Option<Self> {
21739 let res = match syntax.kind() {
21740 SyntaxKind::DELETE_ROWS => OnCommitAction::DeleteRows(DeleteRows { syntax }),
21741 SyntaxKind::DROP => OnCommitAction::Drop(Drop { syntax }),
21742 SyntaxKind::PRESERVE_ROWS => OnCommitAction::PreserveRows(PreserveRows { syntax }),
21743 _ => {
21744 return None;
21745 }
21746 };
21747 Some(res)
21748 }
21749 #[inline]
21750 fn syntax(&self) -> &SyntaxNode {
21751 match self {
21752 OnCommitAction::DeleteRows(it) => &it.syntax,
21753 OnCommitAction::Drop(it) => &it.syntax,
21754 OnCommitAction::PreserveRows(it) => &it.syntax,
21755 }
21756 }
21757}
21758impl From<DeleteRows> for OnCommitAction {
21759 #[inline]
21760 fn from(node: DeleteRows) -> OnCommitAction {
21761 OnCommitAction::DeleteRows(node)
21762 }
21763}
21764impl From<Drop> for OnCommitAction {
21765 #[inline]
21766 fn from(node: Drop) -> OnCommitAction {
21767 OnCommitAction::Drop(node)
21768 }
21769}
21770impl From<PreserveRows> for OnCommitAction {
21771 #[inline]
21772 fn from(node: PreserveRows) -> OnCommitAction {
21773 OnCommitAction::PreserveRows(node)
21774 }
21775}
21776impl AstNode for ParamMode {
21777 #[inline]
21778 fn can_cast(kind: SyntaxKind) -> bool {
21779 matches!(
21780 kind,
21781 SyntaxKind::PARAM_IN
21782 | SyntaxKind::PARAM_IN_OUT
21783 | SyntaxKind::PARAM_OUT
21784 | SyntaxKind::PARAM_VARIADIC
21785 )
21786 }
21787 #[inline]
21788 fn cast(syntax: SyntaxNode) -> Option<Self> {
21789 let res = match syntax.kind() {
21790 SyntaxKind::PARAM_IN => ParamMode::ParamIn(ParamIn { syntax }),
21791 SyntaxKind::PARAM_IN_OUT => ParamMode::ParamInOut(ParamInOut { syntax }),
21792 SyntaxKind::PARAM_OUT => ParamMode::ParamOut(ParamOut { syntax }),
21793 SyntaxKind::PARAM_VARIADIC => ParamMode::ParamVariadic(ParamVariadic { syntax }),
21794 _ => {
21795 return None;
21796 }
21797 };
21798 Some(res)
21799 }
21800 #[inline]
21801 fn syntax(&self) -> &SyntaxNode {
21802 match self {
21803 ParamMode::ParamIn(it) => &it.syntax,
21804 ParamMode::ParamInOut(it) => &it.syntax,
21805 ParamMode::ParamOut(it) => &it.syntax,
21806 ParamMode::ParamVariadic(it) => &it.syntax,
21807 }
21808 }
21809}
21810impl From<ParamIn> for ParamMode {
21811 #[inline]
21812 fn from(node: ParamIn) -> ParamMode {
21813 ParamMode::ParamIn(node)
21814 }
21815}
21816impl From<ParamInOut> for ParamMode {
21817 #[inline]
21818 fn from(node: ParamInOut) -> ParamMode {
21819 ParamMode::ParamInOut(node)
21820 }
21821}
21822impl From<ParamOut> for ParamMode {
21823 #[inline]
21824 fn from(node: ParamOut) -> ParamMode {
21825 ParamMode::ParamOut(node)
21826 }
21827}
21828impl From<ParamVariadic> for ParamMode {
21829 #[inline]
21830 fn from(node: ParamVariadic) -> ParamMode {
21831 ParamMode::ParamVariadic(node)
21832 }
21833}
21834impl AstNode for PartitionType {
21835 #[inline]
21836 fn can_cast(kind: SyntaxKind) -> bool {
21837 matches!(
21838 kind,
21839 SyntaxKind::PARTITION_DEFAULT
21840 | SyntaxKind::PARTITION_FOR_VALUES_FROM
21841 | SyntaxKind::PARTITION_FOR_VALUES_IN
21842 | SyntaxKind::PARTITION_FOR_VALUES_WITH
21843 )
21844 }
21845 #[inline]
21846 fn cast(syntax: SyntaxNode) -> Option<Self> {
21847 let res = match syntax.kind() {
21848 SyntaxKind::PARTITION_DEFAULT => {
21849 PartitionType::PartitionDefault(PartitionDefault { syntax })
21850 }
21851 SyntaxKind::PARTITION_FOR_VALUES_FROM => {
21852 PartitionType::PartitionForValuesFrom(PartitionForValuesFrom { syntax })
21853 }
21854 SyntaxKind::PARTITION_FOR_VALUES_IN => {
21855 PartitionType::PartitionForValuesIn(PartitionForValuesIn { syntax })
21856 }
21857 SyntaxKind::PARTITION_FOR_VALUES_WITH => {
21858 PartitionType::PartitionForValuesWith(PartitionForValuesWith { syntax })
21859 }
21860 _ => {
21861 return None;
21862 }
21863 };
21864 Some(res)
21865 }
21866 #[inline]
21867 fn syntax(&self) -> &SyntaxNode {
21868 match self {
21869 PartitionType::PartitionDefault(it) => &it.syntax,
21870 PartitionType::PartitionForValuesFrom(it) => &it.syntax,
21871 PartitionType::PartitionForValuesIn(it) => &it.syntax,
21872 PartitionType::PartitionForValuesWith(it) => &it.syntax,
21873 }
21874 }
21875}
21876impl From<PartitionDefault> for PartitionType {
21877 #[inline]
21878 fn from(node: PartitionDefault) -> PartitionType {
21879 PartitionType::PartitionDefault(node)
21880 }
21881}
21882impl From<PartitionForValuesFrom> for PartitionType {
21883 #[inline]
21884 fn from(node: PartitionForValuesFrom) -> PartitionType {
21885 PartitionType::PartitionForValuesFrom(node)
21886 }
21887}
21888impl From<PartitionForValuesIn> for PartitionType {
21889 #[inline]
21890 fn from(node: PartitionForValuesIn) -> PartitionType {
21891 PartitionType::PartitionForValuesIn(node)
21892 }
21893}
21894impl From<PartitionForValuesWith> for PartitionType {
21895 #[inline]
21896 fn from(node: PartitionForValuesWith) -> PartitionType {
21897 PartitionType::PartitionForValuesWith(node)
21898 }
21899}
21900impl AstNode for RefAction {
21901 #[inline]
21902 fn can_cast(kind: SyntaxKind) -> bool {
21903 matches!(
21904 kind,
21905 SyntaxKind::CASCADE
21906 | SyntaxKind::NO_ACTION
21907 | SyntaxKind::RESTRICT
21908 | SyntaxKind::SET_DEFAULT_COLUMNS
21909 | SyntaxKind::SET_NULL_COLUMNS
21910 )
21911 }
21912 #[inline]
21913 fn cast(syntax: SyntaxNode) -> Option<Self> {
21914 let res = match syntax.kind() {
21915 SyntaxKind::CASCADE => RefAction::Cascade(Cascade { syntax }),
21916 SyntaxKind::NO_ACTION => RefAction::NoAction(NoAction { syntax }),
21917 SyntaxKind::RESTRICT => RefAction::Restrict(Restrict { syntax }),
21918 SyntaxKind::SET_DEFAULT_COLUMNS => {
21919 RefAction::SetDefaultColumns(SetDefaultColumns { syntax })
21920 }
21921 SyntaxKind::SET_NULL_COLUMNS => RefAction::SetNullColumns(SetNullColumns { syntax }),
21922 _ => {
21923 return None;
21924 }
21925 };
21926 Some(res)
21927 }
21928 #[inline]
21929 fn syntax(&self) -> &SyntaxNode {
21930 match self {
21931 RefAction::Cascade(it) => &it.syntax,
21932 RefAction::NoAction(it) => &it.syntax,
21933 RefAction::Restrict(it) => &it.syntax,
21934 RefAction::SetDefaultColumns(it) => &it.syntax,
21935 RefAction::SetNullColumns(it) => &it.syntax,
21936 }
21937 }
21938}
21939impl From<Cascade> for RefAction {
21940 #[inline]
21941 fn from(node: Cascade) -> RefAction {
21942 RefAction::Cascade(node)
21943 }
21944}
21945impl From<NoAction> for RefAction {
21946 #[inline]
21947 fn from(node: NoAction) -> RefAction {
21948 RefAction::NoAction(node)
21949 }
21950}
21951impl From<Restrict> for RefAction {
21952 #[inline]
21953 fn from(node: Restrict) -> RefAction {
21954 RefAction::Restrict(node)
21955 }
21956}
21957impl From<SetDefaultColumns> for RefAction {
21958 #[inline]
21959 fn from(node: SetDefaultColumns) -> RefAction {
21960 RefAction::SetDefaultColumns(node)
21961 }
21962}
21963impl From<SetNullColumns> for RefAction {
21964 #[inline]
21965 fn from(node: SetNullColumns) -> RefAction {
21966 RefAction::SetNullColumns(node)
21967 }
21968}
21969impl AstNode for Stmt {
21970 #[inline]
21971 fn can_cast(kind: SyntaxKind) -> bool {
21972 matches!(
21973 kind,
21974 SyntaxKind::ALTER_AGGREGATE
21975 | SyntaxKind::ALTER_COLLATION
21976 | SyntaxKind::ALTER_CONVERSION
21977 | SyntaxKind::ALTER_DATABASE
21978 | SyntaxKind::ALTER_DEFAULT_PRIVILEGES
21979 | SyntaxKind::ALTER_DOMAIN
21980 | SyntaxKind::ALTER_EVENT_TRIGGER
21981 | SyntaxKind::ALTER_EXTENSION
21982 | SyntaxKind::ALTER_FOREIGN_DATA_WRAPPER
21983 | SyntaxKind::ALTER_FOREIGN_TABLE
21984 | SyntaxKind::ALTER_FUNCTION
21985 | SyntaxKind::ALTER_GROUP
21986 | SyntaxKind::ALTER_INDEX
21987 | SyntaxKind::ALTER_LANGUAGE
21988 | SyntaxKind::ALTER_LARGE_OBJECT
21989 | SyntaxKind::ALTER_MATERIALIZED_VIEW
21990 | SyntaxKind::ALTER_OPERATOR
21991 | SyntaxKind::ALTER_OPERATOR_CLASS
21992 | SyntaxKind::ALTER_OPERATOR_FAMILY
21993 | SyntaxKind::ALTER_POLICY
21994 | SyntaxKind::ALTER_PROCEDURE
21995 | SyntaxKind::ALTER_PUBLICATION
21996 | SyntaxKind::ALTER_ROLE
21997 | SyntaxKind::ALTER_ROUTINE
21998 | SyntaxKind::ALTER_RULE
21999 | SyntaxKind::ALTER_SCHEMA
22000 | SyntaxKind::ALTER_SEQUENCE
22001 | SyntaxKind::ALTER_SERVER
22002 | SyntaxKind::ALTER_STATISTICS
22003 | SyntaxKind::ALTER_SUBSCRIPTION
22004 | SyntaxKind::ALTER_SYSTEM
22005 | SyntaxKind::ALTER_TABLE
22006 | SyntaxKind::ALTER_TABLESPACE
22007 | SyntaxKind::ALTER_TEXT_SEARCH_CONFIGURATION
22008 | SyntaxKind::ALTER_TEXT_SEARCH_DICTIONARY
22009 | SyntaxKind::ALTER_TEXT_SEARCH_PARSER
22010 | SyntaxKind::ALTER_TEXT_SEARCH_TEMPLATE
22011 | SyntaxKind::ALTER_TRIGGER
22012 | SyntaxKind::ALTER_TYPE
22013 | SyntaxKind::ALTER_USER
22014 | SyntaxKind::ALTER_USER_MAPPING
22015 | SyntaxKind::ALTER_VIEW
22016 | SyntaxKind::ANALYZE
22017 | SyntaxKind::BEGIN
22018 | SyntaxKind::CALL
22019 | SyntaxKind::CHECKPOINT
22020 | SyntaxKind::CLOSE
22021 | SyntaxKind::CLUSTER
22022 | SyntaxKind::COMMENT_ON
22023 | SyntaxKind::COMMIT
22024 | SyntaxKind::COPY
22025 | SyntaxKind::CREATE_ACCESS_METHOD
22026 | SyntaxKind::CREATE_AGGREGATE
22027 | SyntaxKind::CREATE_CAST
22028 | SyntaxKind::CREATE_COLLATION
22029 | SyntaxKind::CREATE_CONVERSION
22030 | SyntaxKind::CREATE_DATABASE
22031 | SyntaxKind::CREATE_DOMAIN
22032 | SyntaxKind::CREATE_EVENT_TRIGGER
22033 | SyntaxKind::CREATE_EXTENSION
22034 | SyntaxKind::CREATE_FOREIGN_DATA_WRAPPER
22035 | SyntaxKind::CREATE_FOREIGN_TABLE
22036 | SyntaxKind::CREATE_FUNCTION
22037 | SyntaxKind::CREATE_GROUP
22038 | SyntaxKind::CREATE_INDEX
22039 | SyntaxKind::CREATE_LANGUAGE
22040 | SyntaxKind::CREATE_MATERIALIZED_VIEW
22041 | SyntaxKind::CREATE_OPERATOR
22042 | SyntaxKind::CREATE_OPERATOR_CLASS
22043 | SyntaxKind::CREATE_OPERATOR_FAMILY
22044 | SyntaxKind::CREATE_POLICY
22045 | SyntaxKind::CREATE_PROCEDURE
22046 | SyntaxKind::CREATE_PUBLICATION
22047 | SyntaxKind::CREATE_ROLE
22048 | SyntaxKind::CREATE_RULE
22049 | SyntaxKind::CREATE_SCHEMA
22050 | SyntaxKind::CREATE_SEQUENCE
22051 | SyntaxKind::CREATE_SERVER
22052 | SyntaxKind::CREATE_STATISTICS
22053 | SyntaxKind::CREATE_SUBSCRIPTION
22054 | SyntaxKind::CREATE_TABLE
22055 | SyntaxKind::CREATE_TABLE_AS
22056 | SyntaxKind::CREATE_TABLESPACE
22057 | SyntaxKind::CREATE_TEXT_SEARCH_CONFIGURATION
22058 | SyntaxKind::CREATE_TEXT_SEARCH_DICTIONARY
22059 | SyntaxKind::CREATE_TEXT_SEARCH_PARSER
22060 | SyntaxKind::CREATE_TEXT_SEARCH_TEMPLATE
22061 | SyntaxKind::CREATE_TRANSFORM
22062 | SyntaxKind::CREATE_TRIGGER
22063 | SyntaxKind::CREATE_TYPE
22064 | SyntaxKind::CREATE_USER
22065 | SyntaxKind::CREATE_USER_MAPPING
22066 | SyntaxKind::CREATE_VIEW
22067 | SyntaxKind::DEALLOCATE
22068 | SyntaxKind::DECLARE
22069 | SyntaxKind::DELETE
22070 | SyntaxKind::DISCARD
22071 | SyntaxKind::DO
22072 | SyntaxKind::DROP_ACCESS_METHOD
22073 | SyntaxKind::DROP_AGGREGATE
22074 | SyntaxKind::DROP_CAST
22075 | SyntaxKind::DROP_COLLATION
22076 | SyntaxKind::DROP_CONVERSION
22077 | SyntaxKind::DROP_DATABASE
22078 | SyntaxKind::DROP_DOMAIN
22079 | SyntaxKind::DROP_EVENT_TRIGGER
22080 | SyntaxKind::DROP_EXTENSION
22081 | SyntaxKind::DROP_FOREIGN_DATA_WRAPPER
22082 | SyntaxKind::DROP_FOREIGN_TABLE
22083 | SyntaxKind::DROP_FUNCTION
22084 | SyntaxKind::DROP_GROUP
22085 | SyntaxKind::DROP_INDEX
22086 | SyntaxKind::DROP_LANGUAGE
22087 | SyntaxKind::DROP_MATERIALIZED_VIEW
22088 | SyntaxKind::DROP_OPERATOR
22089 | SyntaxKind::DROP_OPERATOR_CLASS
22090 | SyntaxKind::DROP_OPERATOR_FAMILY
22091 | SyntaxKind::DROP_OWNED
22092 | SyntaxKind::DROP_POLICY
22093 | SyntaxKind::DROP_PROCEDURE
22094 | SyntaxKind::DROP_PUBLICATION
22095 | SyntaxKind::DROP_ROLE
22096 | SyntaxKind::DROP_ROUTINE
22097 | SyntaxKind::DROP_RULE
22098 | SyntaxKind::DROP_SCHEMA
22099 | SyntaxKind::DROP_SEQUENCE
22100 | SyntaxKind::DROP_SERVER
22101 | SyntaxKind::DROP_STATISTICS
22102 | SyntaxKind::DROP_SUBSCRIPTION
22103 | SyntaxKind::DROP_TABLE
22104 | SyntaxKind::DROP_TABLESPACE
22105 | SyntaxKind::DROP_TEXT_SEARCH_CONFIG
22106 | SyntaxKind::DROP_TEXT_SEARCH_DICT
22107 | SyntaxKind::DROP_TEXT_SEARCH_PARSER
22108 | SyntaxKind::DROP_TEXT_SEARCH_TEMPLATE
22109 | SyntaxKind::DROP_TRANSFORM
22110 | SyntaxKind::DROP_TRIGGER
22111 | SyntaxKind::DROP_TYPE
22112 | SyntaxKind::DROP_USER
22113 | SyntaxKind::DROP_USER_MAPPING
22114 | SyntaxKind::DROP_VIEW
22115 | SyntaxKind::EXECUTE
22116 | SyntaxKind::EXPLAIN
22117 | SyntaxKind::FETCH
22118 | SyntaxKind::GRANT
22119 | SyntaxKind::IMPORT_FOREIGN_SCHEMA
22120 | SyntaxKind::INSERT
22121 | SyntaxKind::LISTEN
22122 | SyntaxKind::LOAD
22123 | SyntaxKind::LOCK
22124 | SyntaxKind::MERGE
22125 | SyntaxKind::MOVE
22126 | SyntaxKind::NOTIFY
22127 | SyntaxKind::PAREN_SELECT
22128 | SyntaxKind::PREPARE
22129 | SyntaxKind::PREPARE_TRANSACTION
22130 | SyntaxKind::REASSIGN
22131 | SyntaxKind::REFRESH
22132 | SyntaxKind::REINDEX
22133 | SyntaxKind::RELEASE_SAVEPOINT
22134 | SyntaxKind::RESET
22135 | SyntaxKind::REVOKE
22136 | SyntaxKind::ROLLBACK
22137 | SyntaxKind::SAVEPOINT
22138 | SyntaxKind::SECURITY_LABEL
22139 | SyntaxKind::SELECT
22140 | SyntaxKind::SELECT_INTO
22141 | SyntaxKind::SET
22142 | SyntaxKind::SET_CONSTRAINTS
22143 | SyntaxKind::SET_ROLE
22144 | SyntaxKind::SET_SESSION_AUTH
22145 | SyntaxKind::SET_TRANSACTION
22146 | SyntaxKind::SHOW
22147 | SyntaxKind::TABLE
22148 | SyntaxKind::TRUNCATE
22149 | SyntaxKind::UNLISTEN
22150 | SyntaxKind::UPDATE
22151 | SyntaxKind::VACUUM
22152 | SyntaxKind::VALUES
22153 )
22154 }
22155 #[inline]
22156 fn cast(syntax: SyntaxNode) -> Option<Self> {
22157 let res = match syntax.kind() {
22158 SyntaxKind::ALTER_AGGREGATE => Stmt::AlterAggregate(AlterAggregate { syntax }),
22159 SyntaxKind::ALTER_COLLATION => Stmt::AlterCollation(AlterCollation { syntax }),
22160 SyntaxKind::ALTER_CONVERSION => Stmt::AlterConversion(AlterConversion { syntax }),
22161 SyntaxKind::ALTER_DATABASE => Stmt::AlterDatabase(AlterDatabase { syntax }),
22162 SyntaxKind::ALTER_DEFAULT_PRIVILEGES => {
22163 Stmt::AlterDefaultPrivileges(AlterDefaultPrivileges { syntax })
22164 }
22165 SyntaxKind::ALTER_DOMAIN => Stmt::AlterDomain(AlterDomain { syntax }),
22166 SyntaxKind::ALTER_EVENT_TRIGGER => {
22167 Stmt::AlterEventTrigger(AlterEventTrigger { syntax })
22168 }
22169 SyntaxKind::ALTER_EXTENSION => Stmt::AlterExtension(AlterExtension { syntax }),
22170 SyntaxKind::ALTER_FOREIGN_DATA_WRAPPER => {
22171 Stmt::AlterForeignDataWrapper(AlterForeignDataWrapper { syntax })
22172 }
22173 SyntaxKind::ALTER_FOREIGN_TABLE => {
22174 Stmt::AlterForeignTable(AlterForeignTable { syntax })
22175 }
22176 SyntaxKind::ALTER_FUNCTION => Stmt::AlterFunction(AlterFunction { syntax }),
22177 SyntaxKind::ALTER_GROUP => Stmt::AlterGroup(AlterGroup { syntax }),
22178 SyntaxKind::ALTER_INDEX => Stmt::AlterIndex(AlterIndex { syntax }),
22179 SyntaxKind::ALTER_LANGUAGE => Stmt::AlterLanguage(AlterLanguage { syntax }),
22180 SyntaxKind::ALTER_LARGE_OBJECT => Stmt::AlterLargeObject(AlterLargeObject { syntax }),
22181 SyntaxKind::ALTER_MATERIALIZED_VIEW => {
22182 Stmt::AlterMaterializedView(AlterMaterializedView { syntax })
22183 }
22184 SyntaxKind::ALTER_OPERATOR => Stmt::AlterOperator(AlterOperator { syntax }),
22185 SyntaxKind::ALTER_OPERATOR_CLASS => {
22186 Stmt::AlterOperatorClass(AlterOperatorClass { syntax })
22187 }
22188 SyntaxKind::ALTER_OPERATOR_FAMILY => {
22189 Stmt::AlterOperatorFamily(AlterOperatorFamily { syntax })
22190 }
22191 SyntaxKind::ALTER_POLICY => Stmt::AlterPolicy(AlterPolicy { syntax }),
22192 SyntaxKind::ALTER_PROCEDURE => Stmt::AlterProcedure(AlterProcedure { syntax }),
22193 SyntaxKind::ALTER_PUBLICATION => Stmt::AlterPublication(AlterPublication { syntax }),
22194 SyntaxKind::ALTER_ROLE => Stmt::AlterRole(AlterRole { syntax }),
22195 SyntaxKind::ALTER_ROUTINE => Stmt::AlterRoutine(AlterRoutine { syntax }),
22196 SyntaxKind::ALTER_RULE => Stmt::AlterRule(AlterRule { syntax }),
22197 SyntaxKind::ALTER_SCHEMA => Stmt::AlterSchema(AlterSchema { syntax }),
22198 SyntaxKind::ALTER_SEQUENCE => Stmt::AlterSequence(AlterSequence { syntax }),
22199 SyntaxKind::ALTER_SERVER => Stmt::AlterServer(AlterServer { syntax }),
22200 SyntaxKind::ALTER_STATISTICS => Stmt::AlterStatistics(AlterStatistics { syntax }),
22201 SyntaxKind::ALTER_SUBSCRIPTION => Stmt::AlterSubscription(AlterSubscription { syntax }),
22202 SyntaxKind::ALTER_SYSTEM => Stmt::AlterSystem(AlterSystem { syntax }),
22203 SyntaxKind::ALTER_TABLE => Stmt::AlterTable(AlterTable { syntax }),
22204 SyntaxKind::ALTER_TABLESPACE => Stmt::AlterTablespace(AlterTablespace { syntax }),
22205 SyntaxKind::ALTER_TEXT_SEARCH_CONFIGURATION => {
22206 Stmt::AlterTextSearchConfiguration(AlterTextSearchConfiguration { syntax })
22207 }
22208 SyntaxKind::ALTER_TEXT_SEARCH_DICTIONARY => {
22209 Stmt::AlterTextSearchDictionary(AlterTextSearchDictionary { syntax })
22210 }
22211 SyntaxKind::ALTER_TEXT_SEARCH_PARSER => {
22212 Stmt::AlterTextSearchParser(AlterTextSearchParser { syntax })
22213 }
22214 SyntaxKind::ALTER_TEXT_SEARCH_TEMPLATE => {
22215 Stmt::AlterTextSearchTemplate(AlterTextSearchTemplate { syntax })
22216 }
22217 SyntaxKind::ALTER_TRIGGER => Stmt::AlterTrigger(AlterTrigger { syntax }),
22218 SyntaxKind::ALTER_TYPE => Stmt::AlterType(AlterType { syntax }),
22219 SyntaxKind::ALTER_USER => Stmt::AlterUser(AlterUser { syntax }),
22220 SyntaxKind::ALTER_USER_MAPPING => Stmt::AlterUserMapping(AlterUserMapping { syntax }),
22221 SyntaxKind::ALTER_VIEW => Stmt::AlterView(AlterView { syntax }),
22222 SyntaxKind::ANALYZE => Stmt::Analyze(Analyze { syntax }),
22223 SyntaxKind::BEGIN => Stmt::Begin(Begin { syntax }),
22224 SyntaxKind::CALL => Stmt::Call(Call { syntax }),
22225 SyntaxKind::CHECKPOINT => Stmt::Checkpoint(Checkpoint { syntax }),
22226 SyntaxKind::CLOSE => Stmt::Close(Close { syntax }),
22227 SyntaxKind::CLUSTER => Stmt::Cluster(Cluster { syntax }),
22228 SyntaxKind::COMMENT_ON => Stmt::CommentOn(CommentOn { syntax }),
22229 SyntaxKind::COMMIT => Stmt::Commit(Commit { syntax }),
22230 SyntaxKind::COPY => Stmt::Copy(Copy { syntax }),
22231 SyntaxKind::CREATE_ACCESS_METHOD => {
22232 Stmt::CreateAccessMethod(CreateAccessMethod { syntax })
22233 }
22234 SyntaxKind::CREATE_AGGREGATE => Stmt::CreateAggregate(CreateAggregate { syntax }),
22235 SyntaxKind::CREATE_CAST => Stmt::CreateCast(CreateCast { syntax }),
22236 SyntaxKind::CREATE_COLLATION => Stmt::CreateCollation(CreateCollation { syntax }),
22237 SyntaxKind::CREATE_CONVERSION => Stmt::CreateConversion(CreateConversion { syntax }),
22238 SyntaxKind::CREATE_DATABASE => Stmt::CreateDatabase(CreateDatabase { syntax }),
22239 SyntaxKind::CREATE_DOMAIN => Stmt::CreateDomain(CreateDomain { syntax }),
22240 SyntaxKind::CREATE_EVENT_TRIGGER => {
22241 Stmt::CreateEventTrigger(CreateEventTrigger { syntax })
22242 }
22243 SyntaxKind::CREATE_EXTENSION => Stmt::CreateExtension(CreateExtension { syntax }),
22244 SyntaxKind::CREATE_FOREIGN_DATA_WRAPPER => {
22245 Stmt::CreateForeignDataWrapper(CreateForeignDataWrapper { syntax })
22246 }
22247 SyntaxKind::CREATE_FOREIGN_TABLE => {
22248 Stmt::CreateForeignTable(CreateForeignTable { syntax })
22249 }
22250 SyntaxKind::CREATE_FUNCTION => Stmt::CreateFunction(CreateFunction { syntax }),
22251 SyntaxKind::CREATE_GROUP => Stmt::CreateGroup(CreateGroup { syntax }),
22252 SyntaxKind::CREATE_INDEX => Stmt::CreateIndex(CreateIndex { syntax }),
22253 SyntaxKind::CREATE_LANGUAGE => Stmt::CreateLanguage(CreateLanguage { syntax }),
22254 SyntaxKind::CREATE_MATERIALIZED_VIEW => {
22255 Stmt::CreateMaterializedView(CreateMaterializedView { syntax })
22256 }
22257 SyntaxKind::CREATE_OPERATOR => Stmt::CreateOperator(CreateOperator { syntax }),
22258 SyntaxKind::CREATE_OPERATOR_CLASS => {
22259 Stmt::CreateOperatorClass(CreateOperatorClass { syntax })
22260 }
22261 SyntaxKind::CREATE_OPERATOR_FAMILY => {
22262 Stmt::CreateOperatorFamily(CreateOperatorFamily { syntax })
22263 }
22264 SyntaxKind::CREATE_POLICY => Stmt::CreatePolicy(CreatePolicy { syntax }),
22265 SyntaxKind::CREATE_PROCEDURE => Stmt::CreateProcedure(CreateProcedure { syntax }),
22266 SyntaxKind::CREATE_PUBLICATION => Stmt::CreatePublication(CreatePublication { syntax }),
22267 SyntaxKind::CREATE_ROLE => Stmt::CreateRole(CreateRole { syntax }),
22268 SyntaxKind::CREATE_RULE => Stmt::CreateRule(CreateRule { syntax }),
22269 SyntaxKind::CREATE_SCHEMA => Stmt::CreateSchema(CreateSchema { syntax }),
22270 SyntaxKind::CREATE_SEQUENCE => Stmt::CreateSequence(CreateSequence { syntax }),
22271 SyntaxKind::CREATE_SERVER => Stmt::CreateServer(CreateServer { syntax }),
22272 SyntaxKind::CREATE_STATISTICS => Stmt::CreateStatistics(CreateStatistics { syntax }),
22273 SyntaxKind::CREATE_SUBSCRIPTION => {
22274 Stmt::CreateSubscription(CreateSubscription { syntax })
22275 }
22276 SyntaxKind::CREATE_TABLE => Stmt::CreateTable(CreateTable { syntax }),
22277 SyntaxKind::CREATE_TABLE_AS => Stmt::CreateTableAs(CreateTableAs { syntax }),
22278 SyntaxKind::CREATE_TABLESPACE => Stmt::CreateTablespace(CreateTablespace { syntax }),
22279 SyntaxKind::CREATE_TEXT_SEARCH_CONFIGURATION => {
22280 Stmt::CreateTextSearchConfiguration(CreateTextSearchConfiguration { syntax })
22281 }
22282 SyntaxKind::CREATE_TEXT_SEARCH_DICTIONARY => {
22283 Stmt::CreateTextSearchDictionary(CreateTextSearchDictionary { syntax })
22284 }
22285 SyntaxKind::CREATE_TEXT_SEARCH_PARSER => {
22286 Stmt::CreateTextSearchParser(CreateTextSearchParser { syntax })
22287 }
22288 SyntaxKind::CREATE_TEXT_SEARCH_TEMPLATE => {
22289 Stmt::CreateTextSearchTemplate(CreateTextSearchTemplate { syntax })
22290 }
22291 SyntaxKind::CREATE_TRANSFORM => Stmt::CreateTransform(CreateTransform { syntax }),
22292 SyntaxKind::CREATE_TRIGGER => Stmt::CreateTrigger(CreateTrigger { syntax }),
22293 SyntaxKind::CREATE_TYPE => Stmt::CreateType(CreateType { syntax }),
22294 SyntaxKind::CREATE_USER => Stmt::CreateUser(CreateUser { syntax }),
22295 SyntaxKind::CREATE_USER_MAPPING => {
22296 Stmt::CreateUserMapping(CreateUserMapping { syntax })
22297 }
22298 SyntaxKind::CREATE_VIEW => Stmt::CreateView(CreateView { syntax }),
22299 SyntaxKind::DEALLOCATE => Stmt::Deallocate(Deallocate { syntax }),
22300 SyntaxKind::DECLARE => Stmt::Declare(Declare { syntax }),
22301 SyntaxKind::DELETE => Stmt::Delete(Delete { syntax }),
22302 SyntaxKind::DISCARD => Stmt::Discard(Discard { syntax }),
22303 SyntaxKind::DO => Stmt::Do(Do { syntax }),
22304 SyntaxKind::DROP_ACCESS_METHOD => Stmt::DropAccessMethod(DropAccessMethod { syntax }),
22305 SyntaxKind::DROP_AGGREGATE => Stmt::DropAggregate(DropAggregate { syntax }),
22306 SyntaxKind::DROP_CAST => Stmt::DropCast(DropCast { syntax }),
22307 SyntaxKind::DROP_COLLATION => Stmt::DropCollation(DropCollation { syntax }),
22308 SyntaxKind::DROP_CONVERSION => Stmt::DropConversion(DropConversion { syntax }),
22309 SyntaxKind::DROP_DATABASE => Stmt::DropDatabase(DropDatabase { syntax }),
22310 SyntaxKind::DROP_DOMAIN => Stmt::DropDomain(DropDomain { syntax }),
22311 SyntaxKind::DROP_EVENT_TRIGGER => Stmt::DropEventTrigger(DropEventTrigger { syntax }),
22312 SyntaxKind::DROP_EXTENSION => Stmt::DropExtension(DropExtension { syntax }),
22313 SyntaxKind::DROP_FOREIGN_DATA_WRAPPER => {
22314 Stmt::DropForeignDataWrapper(DropForeignDataWrapper { syntax })
22315 }
22316 SyntaxKind::DROP_FOREIGN_TABLE => Stmt::DropForeignTable(DropForeignTable { syntax }),
22317 SyntaxKind::DROP_FUNCTION => Stmt::DropFunction(DropFunction { syntax }),
22318 SyntaxKind::DROP_GROUP => Stmt::DropGroup(DropGroup { syntax }),
22319 SyntaxKind::DROP_INDEX => Stmt::DropIndex(DropIndex { syntax }),
22320 SyntaxKind::DROP_LANGUAGE => Stmt::DropLanguage(DropLanguage { syntax }),
22321 SyntaxKind::DROP_MATERIALIZED_VIEW => {
22322 Stmt::DropMaterializedView(DropMaterializedView { syntax })
22323 }
22324 SyntaxKind::DROP_OPERATOR => Stmt::DropOperator(DropOperator { syntax }),
22325 SyntaxKind::DROP_OPERATOR_CLASS => {
22326 Stmt::DropOperatorClass(DropOperatorClass { syntax })
22327 }
22328 SyntaxKind::DROP_OPERATOR_FAMILY => {
22329 Stmt::DropOperatorFamily(DropOperatorFamily { syntax })
22330 }
22331 SyntaxKind::DROP_OWNED => Stmt::DropOwned(DropOwned { syntax }),
22332 SyntaxKind::DROP_POLICY => Stmt::DropPolicy(DropPolicy { syntax }),
22333 SyntaxKind::DROP_PROCEDURE => Stmt::DropProcedure(DropProcedure { syntax }),
22334 SyntaxKind::DROP_PUBLICATION => Stmt::DropPublication(DropPublication { syntax }),
22335 SyntaxKind::DROP_ROLE => Stmt::DropRole(DropRole { syntax }),
22336 SyntaxKind::DROP_ROUTINE => Stmt::DropRoutine(DropRoutine { syntax }),
22337 SyntaxKind::DROP_RULE => Stmt::DropRule(DropRule { syntax }),
22338 SyntaxKind::DROP_SCHEMA => Stmt::DropSchema(DropSchema { syntax }),
22339 SyntaxKind::DROP_SEQUENCE => Stmt::DropSequence(DropSequence { syntax }),
22340 SyntaxKind::DROP_SERVER => Stmt::DropServer(DropServer { syntax }),
22341 SyntaxKind::DROP_STATISTICS => Stmt::DropStatistics(DropStatistics { syntax }),
22342 SyntaxKind::DROP_SUBSCRIPTION => Stmt::DropSubscription(DropSubscription { syntax }),
22343 SyntaxKind::DROP_TABLE => Stmt::DropTable(DropTable { syntax }),
22344 SyntaxKind::DROP_TABLESPACE => Stmt::DropTablespace(DropTablespace { syntax }),
22345 SyntaxKind::DROP_TEXT_SEARCH_CONFIG => {
22346 Stmt::DropTextSearchConfig(DropTextSearchConfig { syntax })
22347 }
22348 SyntaxKind::DROP_TEXT_SEARCH_DICT => {
22349 Stmt::DropTextSearchDict(DropTextSearchDict { syntax })
22350 }
22351 SyntaxKind::DROP_TEXT_SEARCH_PARSER => {
22352 Stmt::DropTextSearchParser(DropTextSearchParser { syntax })
22353 }
22354 SyntaxKind::DROP_TEXT_SEARCH_TEMPLATE => {
22355 Stmt::DropTextSearchTemplate(DropTextSearchTemplate { syntax })
22356 }
22357 SyntaxKind::DROP_TRANSFORM => Stmt::DropTransform(DropTransform { syntax }),
22358 SyntaxKind::DROP_TRIGGER => Stmt::DropTrigger(DropTrigger { syntax }),
22359 SyntaxKind::DROP_TYPE => Stmt::DropType(DropType { syntax }),
22360 SyntaxKind::DROP_USER => Stmt::DropUser(DropUser { syntax }),
22361 SyntaxKind::DROP_USER_MAPPING => Stmt::DropUserMapping(DropUserMapping { syntax }),
22362 SyntaxKind::DROP_VIEW => Stmt::DropView(DropView { syntax }),
22363 SyntaxKind::EXECUTE => Stmt::Execute(Execute { syntax }),
22364 SyntaxKind::EXPLAIN => Stmt::Explain(Explain { syntax }),
22365 SyntaxKind::FETCH => Stmt::Fetch(Fetch { syntax }),
22366 SyntaxKind::GRANT => Stmt::Grant(Grant { syntax }),
22367 SyntaxKind::IMPORT_FOREIGN_SCHEMA => {
22368 Stmt::ImportForeignSchema(ImportForeignSchema { syntax })
22369 }
22370 SyntaxKind::INSERT => Stmt::Insert(Insert { syntax }),
22371 SyntaxKind::LISTEN => Stmt::Listen(Listen { syntax }),
22372 SyntaxKind::LOAD => Stmt::Load(Load { syntax }),
22373 SyntaxKind::LOCK => Stmt::Lock(Lock { syntax }),
22374 SyntaxKind::MERGE => Stmt::Merge(Merge { syntax }),
22375 SyntaxKind::MOVE => Stmt::Move(Move { syntax }),
22376 SyntaxKind::NOTIFY => Stmt::Notify(Notify { syntax }),
22377 SyntaxKind::PAREN_SELECT => Stmt::ParenSelect(ParenSelect { syntax }),
22378 SyntaxKind::PREPARE => Stmt::Prepare(Prepare { syntax }),
22379 SyntaxKind::PREPARE_TRANSACTION => {
22380 Stmt::PrepareTransaction(PrepareTransaction { syntax })
22381 }
22382 SyntaxKind::REASSIGN => Stmt::Reassign(Reassign { syntax }),
22383 SyntaxKind::REFRESH => Stmt::Refresh(Refresh { syntax }),
22384 SyntaxKind::REINDEX => Stmt::Reindex(Reindex { syntax }),
22385 SyntaxKind::RELEASE_SAVEPOINT => Stmt::ReleaseSavepoint(ReleaseSavepoint { syntax }),
22386 SyntaxKind::RESET => Stmt::Reset(Reset { syntax }),
22387 SyntaxKind::REVOKE => Stmt::Revoke(Revoke { syntax }),
22388 SyntaxKind::ROLLBACK => Stmt::Rollback(Rollback { syntax }),
22389 SyntaxKind::SAVEPOINT => Stmt::Savepoint(Savepoint { syntax }),
22390 SyntaxKind::SECURITY_LABEL => Stmt::SecurityLabel(SecurityLabel { syntax }),
22391 SyntaxKind::SELECT => Stmt::Select(Select { syntax }),
22392 SyntaxKind::SELECT_INTO => Stmt::SelectInto(SelectInto { syntax }),
22393 SyntaxKind::SET => Stmt::Set(Set { syntax }),
22394 SyntaxKind::SET_CONSTRAINTS => Stmt::SetConstraints(SetConstraints { syntax }),
22395 SyntaxKind::SET_ROLE => Stmt::SetRole(SetRole { syntax }),
22396 SyntaxKind::SET_SESSION_AUTH => Stmt::SetSessionAuth(SetSessionAuth { syntax }),
22397 SyntaxKind::SET_TRANSACTION => Stmt::SetTransaction(SetTransaction { syntax }),
22398 SyntaxKind::SHOW => Stmt::Show(Show { syntax }),
22399 SyntaxKind::TABLE => Stmt::Table(Table { syntax }),
22400 SyntaxKind::TRUNCATE => Stmt::Truncate(Truncate { syntax }),
22401 SyntaxKind::UNLISTEN => Stmt::Unlisten(Unlisten { syntax }),
22402 SyntaxKind::UPDATE => Stmt::Update(Update { syntax }),
22403 SyntaxKind::VACUUM => Stmt::Vacuum(Vacuum { syntax }),
22404 SyntaxKind::VALUES => Stmt::Values(Values { syntax }),
22405 _ => {
22406 return None;
22407 }
22408 };
22409 Some(res)
22410 }
22411 #[inline]
22412 fn syntax(&self) -> &SyntaxNode {
22413 match self {
22414 Stmt::AlterAggregate(it) => &it.syntax,
22415 Stmt::AlterCollation(it) => &it.syntax,
22416 Stmt::AlterConversion(it) => &it.syntax,
22417 Stmt::AlterDatabase(it) => &it.syntax,
22418 Stmt::AlterDefaultPrivileges(it) => &it.syntax,
22419 Stmt::AlterDomain(it) => &it.syntax,
22420 Stmt::AlterEventTrigger(it) => &it.syntax,
22421 Stmt::AlterExtension(it) => &it.syntax,
22422 Stmt::AlterForeignDataWrapper(it) => &it.syntax,
22423 Stmt::AlterForeignTable(it) => &it.syntax,
22424 Stmt::AlterFunction(it) => &it.syntax,
22425 Stmt::AlterGroup(it) => &it.syntax,
22426 Stmt::AlterIndex(it) => &it.syntax,
22427 Stmt::AlterLanguage(it) => &it.syntax,
22428 Stmt::AlterLargeObject(it) => &it.syntax,
22429 Stmt::AlterMaterializedView(it) => &it.syntax,
22430 Stmt::AlterOperator(it) => &it.syntax,
22431 Stmt::AlterOperatorClass(it) => &it.syntax,
22432 Stmt::AlterOperatorFamily(it) => &it.syntax,
22433 Stmt::AlterPolicy(it) => &it.syntax,
22434 Stmt::AlterProcedure(it) => &it.syntax,
22435 Stmt::AlterPublication(it) => &it.syntax,
22436 Stmt::AlterRole(it) => &it.syntax,
22437 Stmt::AlterRoutine(it) => &it.syntax,
22438 Stmt::AlterRule(it) => &it.syntax,
22439 Stmt::AlterSchema(it) => &it.syntax,
22440 Stmt::AlterSequence(it) => &it.syntax,
22441 Stmt::AlterServer(it) => &it.syntax,
22442 Stmt::AlterStatistics(it) => &it.syntax,
22443 Stmt::AlterSubscription(it) => &it.syntax,
22444 Stmt::AlterSystem(it) => &it.syntax,
22445 Stmt::AlterTable(it) => &it.syntax,
22446 Stmt::AlterTablespace(it) => &it.syntax,
22447 Stmt::AlterTextSearchConfiguration(it) => &it.syntax,
22448 Stmt::AlterTextSearchDictionary(it) => &it.syntax,
22449 Stmt::AlterTextSearchParser(it) => &it.syntax,
22450 Stmt::AlterTextSearchTemplate(it) => &it.syntax,
22451 Stmt::AlterTrigger(it) => &it.syntax,
22452 Stmt::AlterType(it) => &it.syntax,
22453 Stmt::AlterUser(it) => &it.syntax,
22454 Stmt::AlterUserMapping(it) => &it.syntax,
22455 Stmt::AlterView(it) => &it.syntax,
22456 Stmt::Analyze(it) => &it.syntax,
22457 Stmt::Begin(it) => &it.syntax,
22458 Stmt::Call(it) => &it.syntax,
22459 Stmt::Checkpoint(it) => &it.syntax,
22460 Stmt::Close(it) => &it.syntax,
22461 Stmt::Cluster(it) => &it.syntax,
22462 Stmt::CommentOn(it) => &it.syntax,
22463 Stmt::Commit(it) => &it.syntax,
22464 Stmt::Copy(it) => &it.syntax,
22465 Stmt::CreateAccessMethod(it) => &it.syntax,
22466 Stmt::CreateAggregate(it) => &it.syntax,
22467 Stmt::CreateCast(it) => &it.syntax,
22468 Stmt::CreateCollation(it) => &it.syntax,
22469 Stmt::CreateConversion(it) => &it.syntax,
22470 Stmt::CreateDatabase(it) => &it.syntax,
22471 Stmt::CreateDomain(it) => &it.syntax,
22472 Stmt::CreateEventTrigger(it) => &it.syntax,
22473 Stmt::CreateExtension(it) => &it.syntax,
22474 Stmt::CreateForeignDataWrapper(it) => &it.syntax,
22475 Stmt::CreateForeignTable(it) => &it.syntax,
22476 Stmt::CreateFunction(it) => &it.syntax,
22477 Stmt::CreateGroup(it) => &it.syntax,
22478 Stmt::CreateIndex(it) => &it.syntax,
22479 Stmt::CreateLanguage(it) => &it.syntax,
22480 Stmt::CreateMaterializedView(it) => &it.syntax,
22481 Stmt::CreateOperator(it) => &it.syntax,
22482 Stmt::CreateOperatorClass(it) => &it.syntax,
22483 Stmt::CreateOperatorFamily(it) => &it.syntax,
22484 Stmt::CreatePolicy(it) => &it.syntax,
22485 Stmt::CreateProcedure(it) => &it.syntax,
22486 Stmt::CreatePublication(it) => &it.syntax,
22487 Stmt::CreateRole(it) => &it.syntax,
22488 Stmt::CreateRule(it) => &it.syntax,
22489 Stmt::CreateSchema(it) => &it.syntax,
22490 Stmt::CreateSequence(it) => &it.syntax,
22491 Stmt::CreateServer(it) => &it.syntax,
22492 Stmt::CreateStatistics(it) => &it.syntax,
22493 Stmt::CreateSubscription(it) => &it.syntax,
22494 Stmt::CreateTable(it) => &it.syntax,
22495 Stmt::CreateTableAs(it) => &it.syntax,
22496 Stmt::CreateTablespace(it) => &it.syntax,
22497 Stmt::CreateTextSearchConfiguration(it) => &it.syntax,
22498 Stmt::CreateTextSearchDictionary(it) => &it.syntax,
22499 Stmt::CreateTextSearchParser(it) => &it.syntax,
22500 Stmt::CreateTextSearchTemplate(it) => &it.syntax,
22501 Stmt::CreateTransform(it) => &it.syntax,
22502 Stmt::CreateTrigger(it) => &it.syntax,
22503 Stmt::CreateType(it) => &it.syntax,
22504 Stmt::CreateUser(it) => &it.syntax,
22505 Stmt::CreateUserMapping(it) => &it.syntax,
22506 Stmt::CreateView(it) => &it.syntax,
22507 Stmt::Deallocate(it) => &it.syntax,
22508 Stmt::Declare(it) => &it.syntax,
22509 Stmt::Delete(it) => &it.syntax,
22510 Stmt::Discard(it) => &it.syntax,
22511 Stmt::Do(it) => &it.syntax,
22512 Stmt::DropAccessMethod(it) => &it.syntax,
22513 Stmt::DropAggregate(it) => &it.syntax,
22514 Stmt::DropCast(it) => &it.syntax,
22515 Stmt::DropCollation(it) => &it.syntax,
22516 Stmt::DropConversion(it) => &it.syntax,
22517 Stmt::DropDatabase(it) => &it.syntax,
22518 Stmt::DropDomain(it) => &it.syntax,
22519 Stmt::DropEventTrigger(it) => &it.syntax,
22520 Stmt::DropExtension(it) => &it.syntax,
22521 Stmt::DropForeignDataWrapper(it) => &it.syntax,
22522 Stmt::DropForeignTable(it) => &it.syntax,
22523 Stmt::DropFunction(it) => &it.syntax,
22524 Stmt::DropGroup(it) => &it.syntax,
22525 Stmt::DropIndex(it) => &it.syntax,
22526 Stmt::DropLanguage(it) => &it.syntax,
22527 Stmt::DropMaterializedView(it) => &it.syntax,
22528 Stmt::DropOperator(it) => &it.syntax,
22529 Stmt::DropOperatorClass(it) => &it.syntax,
22530 Stmt::DropOperatorFamily(it) => &it.syntax,
22531 Stmt::DropOwned(it) => &it.syntax,
22532 Stmt::DropPolicy(it) => &it.syntax,
22533 Stmt::DropProcedure(it) => &it.syntax,
22534 Stmt::DropPublication(it) => &it.syntax,
22535 Stmt::DropRole(it) => &it.syntax,
22536 Stmt::DropRoutine(it) => &it.syntax,
22537 Stmt::DropRule(it) => &it.syntax,
22538 Stmt::DropSchema(it) => &it.syntax,
22539 Stmt::DropSequence(it) => &it.syntax,
22540 Stmt::DropServer(it) => &it.syntax,
22541 Stmt::DropStatistics(it) => &it.syntax,
22542 Stmt::DropSubscription(it) => &it.syntax,
22543 Stmt::DropTable(it) => &it.syntax,
22544 Stmt::DropTablespace(it) => &it.syntax,
22545 Stmt::DropTextSearchConfig(it) => &it.syntax,
22546 Stmt::DropTextSearchDict(it) => &it.syntax,
22547 Stmt::DropTextSearchParser(it) => &it.syntax,
22548 Stmt::DropTextSearchTemplate(it) => &it.syntax,
22549 Stmt::DropTransform(it) => &it.syntax,
22550 Stmt::DropTrigger(it) => &it.syntax,
22551 Stmt::DropType(it) => &it.syntax,
22552 Stmt::DropUser(it) => &it.syntax,
22553 Stmt::DropUserMapping(it) => &it.syntax,
22554 Stmt::DropView(it) => &it.syntax,
22555 Stmt::Execute(it) => &it.syntax,
22556 Stmt::Explain(it) => &it.syntax,
22557 Stmt::Fetch(it) => &it.syntax,
22558 Stmt::Grant(it) => &it.syntax,
22559 Stmt::ImportForeignSchema(it) => &it.syntax,
22560 Stmt::Insert(it) => &it.syntax,
22561 Stmt::Listen(it) => &it.syntax,
22562 Stmt::Load(it) => &it.syntax,
22563 Stmt::Lock(it) => &it.syntax,
22564 Stmt::Merge(it) => &it.syntax,
22565 Stmt::Move(it) => &it.syntax,
22566 Stmt::Notify(it) => &it.syntax,
22567 Stmt::ParenSelect(it) => &it.syntax,
22568 Stmt::Prepare(it) => &it.syntax,
22569 Stmt::PrepareTransaction(it) => &it.syntax,
22570 Stmt::Reassign(it) => &it.syntax,
22571 Stmt::Refresh(it) => &it.syntax,
22572 Stmt::Reindex(it) => &it.syntax,
22573 Stmt::ReleaseSavepoint(it) => &it.syntax,
22574 Stmt::Reset(it) => &it.syntax,
22575 Stmt::Revoke(it) => &it.syntax,
22576 Stmt::Rollback(it) => &it.syntax,
22577 Stmt::Savepoint(it) => &it.syntax,
22578 Stmt::SecurityLabel(it) => &it.syntax,
22579 Stmt::Select(it) => &it.syntax,
22580 Stmt::SelectInto(it) => &it.syntax,
22581 Stmt::Set(it) => &it.syntax,
22582 Stmt::SetConstraints(it) => &it.syntax,
22583 Stmt::SetRole(it) => &it.syntax,
22584 Stmt::SetSessionAuth(it) => &it.syntax,
22585 Stmt::SetTransaction(it) => &it.syntax,
22586 Stmt::Show(it) => &it.syntax,
22587 Stmt::Table(it) => &it.syntax,
22588 Stmt::Truncate(it) => &it.syntax,
22589 Stmt::Unlisten(it) => &it.syntax,
22590 Stmt::Update(it) => &it.syntax,
22591 Stmt::Vacuum(it) => &it.syntax,
22592 Stmt::Values(it) => &it.syntax,
22593 }
22594 }
22595}
22596impl From<AlterAggregate> for Stmt {
22597 #[inline]
22598 fn from(node: AlterAggregate) -> Stmt {
22599 Stmt::AlterAggregate(node)
22600 }
22601}
22602impl From<AlterCollation> for Stmt {
22603 #[inline]
22604 fn from(node: AlterCollation) -> Stmt {
22605 Stmt::AlterCollation(node)
22606 }
22607}
22608impl From<AlterConversion> for Stmt {
22609 #[inline]
22610 fn from(node: AlterConversion) -> Stmt {
22611 Stmt::AlterConversion(node)
22612 }
22613}
22614impl From<AlterDatabase> for Stmt {
22615 #[inline]
22616 fn from(node: AlterDatabase) -> Stmt {
22617 Stmt::AlterDatabase(node)
22618 }
22619}
22620impl From<AlterDefaultPrivileges> for Stmt {
22621 #[inline]
22622 fn from(node: AlterDefaultPrivileges) -> Stmt {
22623 Stmt::AlterDefaultPrivileges(node)
22624 }
22625}
22626impl From<AlterDomain> for Stmt {
22627 #[inline]
22628 fn from(node: AlterDomain) -> Stmt {
22629 Stmt::AlterDomain(node)
22630 }
22631}
22632impl From<AlterEventTrigger> for Stmt {
22633 #[inline]
22634 fn from(node: AlterEventTrigger) -> Stmt {
22635 Stmt::AlterEventTrigger(node)
22636 }
22637}
22638impl From<AlterExtension> for Stmt {
22639 #[inline]
22640 fn from(node: AlterExtension) -> Stmt {
22641 Stmt::AlterExtension(node)
22642 }
22643}
22644impl From<AlterForeignDataWrapper> for Stmt {
22645 #[inline]
22646 fn from(node: AlterForeignDataWrapper) -> Stmt {
22647 Stmt::AlterForeignDataWrapper(node)
22648 }
22649}
22650impl From<AlterForeignTable> for Stmt {
22651 #[inline]
22652 fn from(node: AlterForeignTable) -> Stmt {
22653 Stmt::AlterForeignTable(node)
22654 }
22655}
22656impl From<AlterFunction> for Stmt {
22657 #[inline]
22658 fn from(node: AlterFunction) -> Stmt {
22659 Stmt::AlterFunction(node)
22660 }
22661}
22662impl From<AlterGroup> for Stmt {
22663 #[inline]
22664 fn from(node: AlterGroup) -> Stmt {
22665 Stmt::AlterGroup(node)
22666 }
22667}
22668impl From<AlterIndex> for Stmt {
22669 #[inline]
22670 fn from(node: AlterIndex) -> Stmt {
22671 Stmt::AlterIndex(node)
22672 }
22673}
22674impl From<AlterLanguage> for Stmt {
22675 #[inline]
22676 fn from(node: AlterLanguage) -> Stmt {
22677 Stmt::AlterLanguage(node)
22678 }
22679}
22680impl From<AlterLargeObject> for Stmt {
22681 #[inline]
22682 fn from(node: AlterLargeObject) -> Stmt {
22683 Stmt::AlterLargeObject(node)
22684 }
22685}
22686impl From<AlterMaterializedView> for Stmt {
22687 #[inline]
22688 fn from(node: AlterMaterializedView) -> Stmt {
22689 Stmt::AlterMaterializedView(node)
22690 }
22691}
22692impl From<AlterOperator> for Stmt {
22693 #[inline]
22694 fn from(node: AlterOperator) -> Stmt {
22695 Stmt::AlterOperator(node)
22696 }
22697}
22698impl From<AlterOperatorClass> for Stmt {
22699 #[inline]
22700 fn from(node: AlterOperatorClass) -> Stmt {
22701 Stmt::AlterOperatorClass(node)
22702 }
22703}
22704impl From<AlterOperatorFamily> for Stmt {
22705 #[inline]
22706 fn from(node: AlterOperatorFamily) -> Stmt {
22707 Stmt::AlterOperatorFamily(node)
22708 }
22709}
22710impl From<AlterPolicy> for Stmt {
22711 #[inline]
22712 fn from(node: AlterPolicy) -> Stmt {
22713 Stmt::AlterPolicy(node)
22714 }
22715}
22716impl From<AlterProcedure> for Stmt {
22717 #[inline]
22718 fn from(node: AlterProcedure) -> Stmt {
22719 Stmt::AlterProcedure(node)
22720 }
22721}
22722impl From<AlterPublication> for Stmt {
22723 #[inline]
22724 fn from(node: AlterPublication) -> Stmt {
22725 Stmt::AlterPublication(node)
22726 }
22727}
22728impl From<AlterRole> for Stmt {
22729 #[inline]
22730 fn from(node: AlterRole) -> Stmt {
22731 Stmt::AlterRole(node)
22732 }
22733}
22734impl From<AlterRoutine> for Stmt {
22735 #[inline]
22736 fn from(node: AlterRoutine) -> Stmt {
22737 Stmt::AlterRoutine(node)
22738 }
22739}
22740impl From<AlterRule> for Stmt {
22741 #[inline]
22742 fn from(node: AlterRule) -> Stmt {
22743 Stmt::AlterRule(node)
22744 }
22745}
22746impl From<AlterSchema> for Stmt {
22747 #[inline]
22748 fn from(node: AlterSchema) -> Stmt {
22749 Stmt::AlterSchema(node)
22750 }
22751}
22752impl From<AlterSequence> for Stmt {
22753 #[inline]
22754 fn from(node: AlterSequence) -> Stmt {
22755 Stmt::AlterSequence(node)
22756 }
22757}
22758impl From<AlterServer> for Stmt {
22759 #[inline]
22760 fn from(node: AlterServer) -> Stmt {
22761 Stmt::AlterServer(node)
22762 }
22763}
22764impl From<AlterStatistics> for Stmt {
22765 #[inline]
22766 fn from(node: AlterStatistics) -> Stmt {
22767 Stmt::AlterStatistics(node)
22768 }
22769}
22770impl From<AlterSubscription> for Stmt {
22771 #[inline]
22772 fn from(node: AlterSubscription) -> Stmt {
22773 Stmt::AlterSubscription(node)
22774 }
22775}
22776impl From<AlterSystem> for Stmt {
22777 #[inline]
22778 fn from(node: AlterSystem) -> Stmt {
22779 Stmt::AlterSystem(node)
22780 }
22781}
22782impl From<AlterTable> for Stmt {
22783 #[inline]
22784 fn from(node: AlterTable) -> Stmt {
22785 Stmt::AlterTable(node)
22786 }
22787}
22788impl From<AlterTablespace> for Stmt {
22789 #[inline]
22790 fn from(node: AlterTablespace) -> Stmt {
22791 Stmt::AlterTablespace(node)
22792 }
22793}
22794impl From<AlterTextSearchConfiguration> for Stmt {
22795 #[inline]
22796 fn from(node: AlterTextSearchConfiguration) -> Stmt {
22797 Stmt::AlterTextSearchConfiguration(node)
22798 }
22799}
22800impl From<AlterTextSearchDictionary> for Stmt {
22801 #[inline]
22802 fn from(node: AlterTextSearchDictionary) -> Stmt {
22803 Stmt::AlterTextSearchDictionary(node)
22804 }
22805}
22806impl From<AlterTextSearchParser> for Stmt {
22807 #[inline]
22808 fn from(node: AlterTextSearchParser) -> Stmt {
22809 Stmt::AlterTextSearchParser(node)
22810 }
22811}
22812impl From<AlterTextSearchTemplate> for Stmt {
22813 #[inline]
22814 fn from(node: AlterTextSearchTemplate) -> Stmt {
22815 Stmt::AlterTextSearchTemplate(node)
22816 }
22817}
22818impl From<AlterTrigger> for Stmt {
22819 #[inline]
22820 fn from(node: AlterTrigger) -> Stmt {
22821 Stmt::AlterTrigger(node)
22822 }
22823}
22824impl From<AlterType> for Stmt {
22825 #[inline]
22826 fn from(node: AlterType) -> Stmt {
22827 Stmt::AlterType(node)
22828 }
22829}
22830impl From<AlterUser> for Stmt {
22831 #[inline]
22832 fn from(node: AlterUser) -> Stmt {
22833 Stmt::AlterUser(node)
22834 }
22835}
22836impl From<AlterUserMapping> for Stmt {
22837 #[inline]
22838 fn from(node: AlterUserMapping) -> Stmt {
22839 Stmt::AlterUserMapping(node)
22840 }
22841}
22842impl From<AlterView> for Stmt {
22843 #[inline]
22844 fn from(node: AlterView) -> Stmt {
22845 Stmt::AlterView(node)
22846 }
22847}
22848impl From<Analyze> for Stmt {
22849 #[inline]
22850 fn from(node: Analyze) -> Stmt {
22851 Stmt::Analyze(node)
22852 }
22853}
22854impl From<Begin> for Stmt {
22855 #[inline]
22856 fn from(node: Begin) -> Stmt {
22857 Stmt::Begin(node)
22858 }
22859}
22860impl From<Call> for Stmt {
22861 #[inline]
22862 fn from(node: Call) -> Stmt {
22863 Stmt::Call(node)
22864 }
22865}
22866impl From<Checkpoint> for Stmt {
22867 #[inline]
22868 fn from(node: Checkpoint) -> Stmt {
22869 Stmt::Checkpoint(node)
22870 }
22871}
22872impl From<Close> for Stmt {
22873 #[inline]
22874 fn from(node: Close) -> Stmt {
22875 Stmt::Close(node)
22876 }
22877}
22878impl From<Cluster> for Stmt {
22879 #[inline]
22880 fn from(node: Cluster) -> Stmt {
22881 Stmt::Cluster(node)
22882 }
22883}
22884impl From<CommentOn> for Stmt {
22885 #[inline]
22886 fn from(node: CommentOn) -> Stmt {
22887 Stmt::CommentOn(node)
22888 }
22889}
22890impl From<Commit> for Stmt {
22891 #[inline]
22892 fn from(node: Commit) -> Stmt {
22893 Stmt::Commit(node)
22894 }
22895}
22896impl From<Copy> for Stmt {
22897 #[inline]
22898 fn from(node: Copy) -> Stmt {
22899 Stmt::Copy(node)
22900 }
22901}
22902impl From<CreateAccessMethod> for Stmt {
22903 #[inline]
22904 fn from(node: CreateAccessMethod) -> Stmt {
22905 Stmt::CreateAccessMethod(node)
22906 }
22907}
22908impl From<CreateAggregate> for Stmt {
22909 #[inline]
22910 fn from(node: CreateAggregate) -> Stmt {
22911 Stmt::CreateAggregate(node)
22912 }
22913}
22914impl From<CreateCast> for Stmt {
22915 #[inline]
22916 fn from(node: CreateCast) -> Stmt {
22917 Stmt::CreateCast(node)
22918 }
22919}
22920impl From<CreateCollation> for Stmt {
22921 #[inline]
22922 fn from(node: CreateCollation) -> Stmt {
22923 Stmt::CreateCollation(node)
22924 }
22925}
22926impl From<CreateConversion> for Stmt {
22927 #[inline]
22928 fn from(node: CreateConversion) -> Stmt {
22929 Stmt::CreateConversion(node)
22930 }
22931}
22932impl From<CreateDatabase> for Stmt {
22933 #[inline]
22934 fn from(node: CreateDatabase) -> Stmt {
22935 Stmt::CreateDatabase(node)
22936 }
22937}
22938impl From<CreateDomain> for Stmt {
22939 #[inline]
22940 fn from(node: CreateDomain) -> Stmt {
22941 Stmt::CreateDomain(node)
22942 }
22943}
22944impl From<CreateEventTrigger> for Stmt {
22945 #[inline]
22946 fn from(node: CreateEventTrigger) -> Stmt {
22947 Stmt::CreateEventTrigger(node)
22948 }
22949}
22950impl From<CreateExtension> for Stmt {
22951 #[inline]
22952 fn from(node: CreateExtension) -> Stmt {
22953 Stmt::CreateExtension(node)
22954 }
22955}
22956impl From<CreateForeignDataWrapper> for Stmt {
22957 #[inline]
22958 fn from(node: CreateForeignDataWrapper) -> Stmt {
22959 Stmt::CreateForeignDataWrapper(node)
22960 }
22961}
22962impl From<CreateForeignTable> for Stmt {
22963 #[inline]
22964 fn from(node: CreateForeignTable) -> Stmt {
22965 Stmt::CreateForeignTable(node)
22966 }
22967}
22968impl From<CreateFunction> for Stmt {
22969 #[inline]
22970 fn from(node: CreateFunction) -> Stmt {
22971 Stmt::CreateFunction(node)
22972 }
22973}
22974impl From<CreateGroup> for Stmt {
22975 #[inline]
22976 fn from(node: CreateGroup) -> Stmt {
22977 Stmt::CreateGroup(node)
22978 }
22979}
22980impl From<CreateIndex> for Stmt {
22981 #[inline]
22982 fn from(node: CreateIndex) -> Stmt {
22983 Stmt::CreateIndex(node)
22984 }
22985}
22986impl From<CreateLanguage> for Stmt {
22987 #[inline]
22988 fn from(node: CreateLanguage) -> Stmt {
22989 Stmt::CreateLanguage(node)
22990 }
22991}
22992impl From<CreateMaterializedView> for Stmt {
22993 #[inline]
22994 fn from(node: CreateMaterializedView) -> Stmt {
22995 Stmt::CreateMaterializedView(node)
22996 }
22997}
22998impl From<CreateOperator> for Stmt {
22999 #[inline]
23000 fn from(node: CreateOperator) -> Stmt {
23001 Stmt::CreateOperator(node)
23002 }
23003}
23004impl From<CreateOperatorClass> for Stmt {
23005 #[inline]
23006 fn from(node: CreateOperatorClass) -> Stmt {
23007 Stmt::CreateOperatorClass(node)
23008 }
23009}
23010impl From<CreateOperatorFamily> for Stmt {
23011 #[inline]
23012 fn from(node: CreateOperatorFamily) -> Stmt {
23013 Stmt::CreateOperatorFamily(node)
23014 }
23015}
23016impl From<CreatePolicy> for Stmt {
23017 #[inline]
23018 fn from(node: CreatePolicy) -> Stmt {
23019 Stmt::CreatePolicy(node)
23020 }
23021}
23022impl From<CreateProcedure> for Stmt {
23023 #[inline]
23024 fn from(node: CreateProcedure) -> Stmt {
23025 Stmt::CreateProcedure(node)
23026 }
23027}
23028impl From<CreatePublication> for Stmt {
23029 #[inline]
23030 fn from(node: CreatePublication) -> Stmt {
23031 Stmt::CreatePublication(node)
23032 }
23033}
23034impl From<CreateRole> for Stmt {
23035 #[inline]
23036 fn from(node: CreateRole) -> Stmt {
23037 Stmt::CreateRole(node)
23038 }
23039}
23040impl From<CreateRule> for Stmt {
23041 #[inline]
23042 fn from(node: CreateRule) -> Stmt {
23043 Stmt::CreateRule(node)
23044 }
23045}
23046impl From<CreateSchema> for Stmt {
23047 #[inline]
23048 fn from(node: CreateSchema) -> Stmt {
23049 Stmt::CreateSchema(node)
23050 }
23051}
23052impl From<CreateSequence> for Stmt {
23053 #[inline]
23054 fn from(node: CreateSequence) -> Stmt {
23055 Stmt::CreateSequence(node)
23056 }
23057}
23058impl From<CreateServer> for Stmt {
23059 #[inline]
23060 fn from(node: CreateServer) -> Stmt {
23061 Stmt::CreateServer(node)
23062 }
23063}
23064impl From<CreateStatistics> for Stmt {
23065 #[inline]
23066 fn from(node: CreateStatistics) -> Stmt {
23067 Stmt::CreateStatistics(node)
23068 }
23069}
23070impl From<CreateSubscription> for Stmt {
23071 #[inline]
23072 fn from(node: CreateSubscription) -> Stmt {
23073 Stmt::CreateSubscription(node)
23074 }
23075}
23076impl From<CreateTable> for Stmt {
23077 #[inline]
23078 fn from(node: CreateTable) -> Stmt {
23079 Stmt::CreateTable(node)
23080 }
23081}
23082impl From<CreateTableAs> for Stmt {
23083 #[inline]
23084 fn from(node: CreateTableAs) -> Stmt {
23085 Stmt::CreateTableAs(node)
23086 }
23087}
23088impl From<CreateTablespace> for Stmt {
23089 #[inline]
23090 fn from(node: CreateTablespace) -> Stmt {
23091 Stmt::CreateTablespace(node)
23092 }
23093}
23094impl From<CreateTextSearchConfiguration> for Stmt {
23095 #[inline]
23096 fn from(node: CreateTextSearchConfiguration) -> Stmt {
23097 Stmt::CreateTextSearchConfiguration(node)
23098 }
23099}
23100impl From<CreateTextSearchDictionary> for Stmt {
23101 #[inline]
23102 fn from(node: CreateTextSearchDictionary) -> Stmt {
23103 Stmt::CreateTextSearchDictionary(node)
23104 }
23105}
23106impl From<CreateTextSearchParser> for Stmt {
23107 #[inline]
23108 fn from(node: CreateTextSearchParser) -> Stmt {
23109 Stmt::CreateTextSearchParser(node)
23110 }
23111}
23112impl From<CreateTextSearchTemplate> for Stmt {
23113 #[inline]
23114 fn from(node: CreateTextSearchTemplate) -> Stmt {
23115 Stmt::CreateTextSearchTemplate(node)
23116 }
23117}
23118impl From<CreateTransform> for Stmt {
23119 #[inline]
23120 fn from(node: CreateTransform) -> Stmt {
23121 Stmt::CreateTransform(node)
23122 }
23123}
23124impl From<CreateTrigger> for Stmt {
23125 #[inline]
23126 fn from(node: CreateTrigger) -> Stmt {
23127 Stmt::CreateTrigger(node)
23128 }
23129}
23130impl From<CreateType> for Stmt {
23131 #[inline]
23132 fn from(node: CreateType) -> Stmt {
23133 Stmt::CreateType(node)
23134 }
23135}
23136impl From<CreateUser> for Stmt {
23137 #[inline]
23138 fn from(node: CreateUser) -> Stmt {
23139 Stmt::CreateUser(node)
23140 }
23141}
23142impl From<CreateUserMapping> for Stmt {
23143 #[inline]
23144 fn from(node: CreateUserMapping) -> Stmt {
23145 Stmt::CreateUserMapping(node)
23146 }
23147}
23148impl From<CreateView> for Stmt {
23149 #[inline]
23150 fn from(node: CreateView) -> Stmt {
23151 Stmt::CreateView(node)
23152 }
23153}
23154impl From<Deallocate> for Stmt {
23155 #[inline]
23156 fn from(node: Deallocate) -> Stmt {
23157 Stmt::Deallocate(node)
23158 }
23159}
23160impl From<Declare> for Stmt {
23161 #[inline]
23162 fn from(node: Declare) -> Stmt {
23163 Stmt::Declare(node)
23164 }
23165}
23166impl From<Delete> for Stmt {
23167 #[inline]
23168 fn from(node: Delete) -> Stmt {
23169 Stmt::Delete(node)
23170 }
23171}
23172impl From<Discard> for Stmt {
23173 #[inline]
23174 fn from(node: Discard) -> Stmt {
23175 Stmt::Discard(node)
23176 }
23177}
23178impl From<Do> for Stmt {
23179 #[inline]
23180 fn from(node: Do) -> Stmt {
23181 Stmt::Do(node)
23182 }
23183}
23184impl From<DropAccessMethod> for Stmt {
23185 #[inline]
23186 fn from(node: DropAccessMethod) -> Stmt {
23187 Stmt::DropAccessMethod(node)
23188 }
23189}
23190impl From<DropAggregate> for Stmt {
23191 #[inline]
23192 fn from(node: DropAggregate) -> Stmt {
23193 Stmt::DropAggregate(node)
23194 }
23195}
23196impl From<DropCast> for Stmt {
23197 #[inline]
23198 fn from(node: DropCast) -> Stmt {
23199 Stmt::DropCast(node)
23200 }
23201}
23202impl From<DropCollation> for Stmt {
23203 #[inline]
23204 fn from(node: DropCollation) -> Stmt {
23205 Stmt::DropCollation(node)
23206 }
23207}
23208impl From<DropConversion> for Stmt {
23209 #[inline]
23210 fn from(node: DropConversion) -> Stmt {
23211 Stmt::DropConversion(node)
23212 }
23213}
23214impl From<DropDatabase> for Stmt {
23215 #[inline]
23216 fn from(node: DropDatabase) -> Stmt {
23217 Stmt::DropDatabase(node)
23218 }
23219}
23220impl From<DropDomain> for Stmt {
23221 #[inline]
23222 fn from(node: DropDomain) -> Stmt {
23223 Stmt::DropDomain(node)
23224 }
23225}
23226impl From<DropEventTrigger> for Stmt {
23227 #[inline]
23228 fn from(node: DropEventTrigger) -> Stmt {
23229 Stmt::DropEventTrigger(node)
23230 }
23231}
23232impl From<DropExtension> for Stmt {
23233 #[inline]
23234 fn from(node: DropExtension) -> Stmt {
23235 Stmt::DropExtension(node)
23236 }
23237}
23238impl From<DropForeignDataWrapper> for Stmt {
23239 #[inline]
23240 fn from(node: DropForeignDataWrapper) -> Stmt {
23241 Stmt::DropForeignDataWrapper(node)
23242 }
23243}
23244impl From<DropForeignTable> for Stmt {
23245 #[inline]
23246 fn from(node: DropForeignTable) -> Stmt {
23247 Stmt::DropForeignTable(node)
23248 }
23249}
23250impl From<DropFunction> for Stmt {
23251 #[inline]
23252 fn from(node: DropFunction) -> Stmt {
23253 Stmt::DropFunction(node)
23254 }
23255}
23256impl From<DropGroup> for Stmt {
23257 #[inline]
23258 fn from(node: DropGroup) -> Stmt {
23259 Stmt::DropGroup(node)
23260 }
23261}
23262impl From<DropIndex> for Stmt {
23263 #[inline]
23264 fn from(node: DropIndex) -> Stmt {
23265 Stmt::DropIndex(node)
23266 }
23267}
23268impl From<DropLanguage> for Stmt {
23269 #[inline]
23270 fn from(node: DropLanguage) -> Stmt {
23271 Stmt::DropLanguage(node)
23272 }
23273}
23274impl From<DropMaterializedView> for Stmt {
23275 #[inline]
23276 fn from(node: DropMaterializedView) -> Stmt {
23277 Stmt::DropMaterializedView(node)
23278 }
23279}
23280impl From<DropOperator> for Stmt {
23281 #[inline]
23282 fn from(node: DropOperator) -> Stmt {
23283 Stmt::DropOperator(node)
23284 }
23285}
23286impl From<DropOperatorClass> for Stmt {
23287 #[inline]
23288 fn from(node: DropOperatorClass) -> Stmt {
23289 Stmt::DropOperatorClass(node)
23290 }
23291}
23292impl From<DropOperatorFamily> for Stmt {
23293 #[inline]
23294 fn from(node: DropOperatorFamily) -> Stmt {
23295 Stmt::DropOperatorFamily(node)
23296 }
23297}
23298impl From<DropOwned> for Stmt {
23299 #[inline]
23300 fn from(node: DropOwned) -> Stmt {
23301 Stmt::DropOwned(node)
23302 }
23303}
23304impl From<DropPolicy> for Stmt {
23305 #[inline]
23306 fn from(node: DropPolicy) -> Stmt {
23307 Stmt::DropPolicy(node)
23308 }
23309}
23310impl From<DropProcedure> for Stmt {
23311 #[inline]
23312 fn from(node: DropProcedure) -> Stmt {
23313 Stmt::DropProcedure(node)
23314 }
23315}
23316impl From<DropPublication> for Stmt {
23317 #[inline]
23318 fn from(node: DropPublication) -> Stmt {
23319 Stmt::DropPublication(node)
23320 }
23321}
23322impl From<DropRole> for Stmt {
23323 #[inline]
23324 fn from(node: DropRole) -> Stmt {
23325 Stmt::DropRole(node)
23326 }
23327}
23328impl From<DropRoutine> for Stmt {
23329 #[inline]
23330 fn from(node: DropRoutine) -> Stmt {
23331 Stmt::DropRoutine(node)
23332 }
23333}
23334impl From<DropRule> for Stmt {
23335 #[inline]
23336 fn from(node: DropRule) -> Stmt {
23337 Stmt::DropRule(node)
23338 }
23339}
23340impl From<DropSchema> for Stmt {
23341 #[inline]
23342 fn from(node: DropSchema) -> Stmt {
23343 Stmt::DropSchema(node)
23344 }
23345}
23346impl From<DropSequence> for Stmt {
23347 #[inline]
23348 fn from(node: DropSequence) -> Stmt {
23349 Stmt::DropSequence(node)
23350 }
23351}
23352impl From<DropServer> for Stmt {
23353 #[inline]
23354 fn from(node: DropServer) -> Stmt {
23355 Stmt::DropServer(node)
23356 }
23357}
23358impl From<DropStatistics> for Stmt {
23359 #[inline]
23360 fn from(node: DropStatistics) -> Stmt {
23361 Stmt::DropStatistics(node)
23362 }
23363}
23364impl From<DropSubscription> for Stmt {
23365 #[inline]
23366 fn from(node: DropSubscription) -> Stmt {
23367 Stmt::DropSubscription(node)
23368 }
23369}
23370impl From<DropTable> for Stmt {
23371 #[inline]
23372 fn from(node: DropTable) -> Stmt {
23373 Stmt::DropTable(node)
23374 }
23375}
23376impl From<DropTablespace> for Stmt {
23377 #[inline]
23378 fn from(node: DropTablespace) -> Stmt {
23379 Stmt::DropTablespace(node)
23380 }
23381}
23382impl From<DropTextSearchConfig> for Stmt {
23383 #[inline]
23384 fn from(node: DropTextSearchConfig) -> Stmt {
23385 Stmt::DropTextSearchConfig(node)
23386 }
23387}
23388impl From<DropTextSearchDict> for Stmt {
23389 #[inline]
23390 fn from(node: DropTextSearchDict) -> Stmt {
23391 Stmt::DropTextSearchDict(node)
23392 }
23393}
23394impl From<DropTextSearchParser> for Stmt {
23395 #[inline]
23396 fn from(node: DropTextSearchParser) -> Stmt {
23397 Stmt::DropTextSearchParser(node)
23398 }
23399}
23400impl From<DropTextSearchTemplate> for Stmt {
23401 #[inline]
23402 fn from(node: DropTextSearchTemplate) -> Stmt {
23403 Stmt::DropTextSearchTemplate(node)
23404 }
23405}
23406impl From<DropTransform> for Stmt {
23407 #[inline]
23408 fn from(node: DropTransform) -> Stmt {
23409 Stmt::DropTransform(node)
23410 }
23411}
23412impl From<DropTrigger> for Stmt {
23413 #[inline]
23414 fn from(node: DropTrigger) -> Stmt {
23415 Stmt::DropTrigger(node)
23416 }
23417}
23418impl From<DropType> for Stmt {
23419 #[inline]
23420 fn from(node: DropType) -> Stmt {
23421 Stmt::DropType(node)
23422 }
23423}
23424impl From<DropUser> for Stmt {
23425 #[inline]
23426 fn from(node: DropUser) -> Stmt {
23427 Stmt::DropUser(node)
23428 }
23429}
23430impl From<DropUserMapping> for Stmt {
23431 #[inline]
23432 fn from(node: DropUserMapping) -> Stmt {
23433 Stmt::DropUserMapping(node)
23434 }
23435}
23436impl From<DropView> for Stmt {
23437 #[inline]
23438 fn from(node: DropView) -> Stmt {
23439 Stmt::DropView(node)
23440 }
23441}
23442impl From<Execute> for Stmt {
23443 #[inline]
23444 fn from(node: Execute) -> Stmt {
23445 Stmt::Execute(node)
23446 }
23447}
23448impl From<Explain> for Stmt {
23449 #[inline]
23450 fn from(node: Explain) -> Stmt {
23451 Stmt::Explain(node)
23452 }
23453}
23454impl From<Fetch> for Stmt {
23455 #[inline]
23456 fn from(node: Fetch) -> Stmt {
23457 Stmt::Fetch(node)
23458 }
23459}
23460impl From<Grant> for Stmt {
23461 #[inline]
23462 fn from(node: Grant) -> Stmt {
23463 Stmt::Grant(node)
23464 }
23465}
23466impl From<ImportForeignSchema> for Stmt {
23467 #[inline]
23468 fn from(node: ImportForeignSchema) -> Stmt {
23469 Stmt::ImportForeignSchema(node)
23470 }
23471}
23472impl From<Insert> for Stmt {
23473 #[inline]
23474 fn from(node: Insert) -> Stmt {
23475 Stmt::Insert(node)
23476 }
23477}
23478impl From<Listen> for Stmt {
23479 #[inline]
23480 fn from(node: Listen) -> Stmt {
23481 Stmt::Listen(node)
23482 }
23483}
23484impl From<Load> for Stmt {
23485 #[inline]
23486 fn from(node: Load) -> Stmt {
23487 Stmt::Load(node)
23488 }
23489}
23490impl From<Lock> for Stmt {
23491 #[inline]
23492 fn from(node: Lock) -> Stmt {
23493 Stmt::Lock(node)
23494 }
23495}
23496impl From<Merge> for Stmt {
23497 #[inline]
23498 fn from(node: Merge) -> Stmt {
23499 Stmt::Merge(node)
23500 }
23501}
23502impl From<Move> for Stmt {
23503 #[inline]
23504 fn from(node: Move) -> Stmt {
23505 Stmt::Move(node)
23506 }
23507}
23508impl From<Notify> for Stmt {
23509 #[inline]
23510 fn from(node: Notify) -> Stmt {
23511 Stmt::Notify(node)
23512 }
23513}
23514impl From<ParenSelect> for Stmt {
23515 #[inline]
23516 fn from(node: ParenSelect) -> Stmt {
23517 Stmt::ParenSelect(node)
23518 }
23519}
23520impl From<Prepare> for Stmt {
23521 #[inline]
23522 fn from(node: Prepare) -> Stmt {
23523 Stmt::Prepare(node)
23524 }
23525}
23526impl From<PrepareTransaction> for Stmt {
23527 #[inline]
23528 fn from(node: PrepareTransaction) -> Stmt {
23529 Stmt::PrepareTransaction(node)
23530 }
23531}
23532impl From<Reassign> for Stmt {
23533 #[inline]
23534 fn from(node: Reassign) -> Stmt {
23535 Stmt::Reassign(node)
23536 }
23537}
23538impl From<Refresh> for Stmt {
23539 #[inline]
23540 fn from(node: Refresh) -> Stmt {
23541 Stmt::Refresh(node)
23542 }
23543}
23544impl From<Reindex> for Stmt {
23545 #[inline]
23546 fn from(node: Reindex) -> Stmt {
23547 Stmt::Reindex(node)
23548 }
23549}
23550impl From<ReleaseSavepoint> for Stmt {
23551 #[inline]
23552 fn from(node: ReleaseSavepoint) -> Stmt {
23553 Stmt::ReleaseSavepoint(node)
23554 }
23555}
23556impl From<Reset> for Stmt {
23557 #[inline]
23558 fn from(node: Reset) -> Stmt {
23559 Stmt::Reset(node)
23560 }
23561}
23562impl From<Revoke> for Stmt {
23563 #[inline]
23564 fn from(node: Revoke) -> Stmt {
23565 Stmt::Revoke(node)
23566 }
23567}
23568impl From<Rollback> for Stmt {
23569 #[inline]
23570 fn from(node: Rollback) -> Stmt {
23571 Stmt::Rollback(node)
23572 }
23573}
23574impl From<Savepoint> for Stmt {
23575 #[inline]
23576 fn from(node: Savepoint) -> Stmt {
23577 Stmt::Savepoint(node)
23578 }
23579}
23580impl From<SecurityLabel> for Stmt {
23581 #[inline]
23582 fn from(node: SecurityLabel) -> Stmt {
23583 Stmt::SecurityLabel(node)
23584 }
23585}
23586impl From<Select> for Stmt {
23587 #[inline]
23588 fn from(node: Select) -> Stmt {
23589 Stmt::Select(node)
23590 }
23591}
23592impl From<SelectInto> for Stmt {
23593 #[inline]
23594 fn from(node: SelectInto) -> Stmt {
23595 Stmt::SelectInto(node)
23596 }
23597}
23598impl From<Set> for Stmt {
23599 #[inline]
23600 fn from(node: Set) -> Stmt {
23601 Stmt::Set(node)
23602 }
23603}
23604impl From<SetConstraints> for Stmt {
23605 #[inline]
23606 fn from(node: SetConstraints) -> Stmt {
23607 Stmt::SetConstraints(node)
23608 }
23609}
23610impl From<SetRole> for Stmt {
23611 #[inline]
23612 fn from(node: SetRole) -> Stmt {
23613 Stmt::SetRole(node)
23614 }
23615}
23616impl From<SetSessionAuth> for Stmt {
23617 #[inline]
23618 fn from(node: SetSessionAuth) -> Stmt {
23619 Stmt::SetSessionAuth(node)
23620 }
23621}
23622impl From<SetTransaction> for Stmt {
23623 #[inline]
23624 fn from(node: SetTransaction) -> Stmt {
23625 Stmt::SetTransaction(node)
23626 }
23627}
23628impl From<Show> for Stmt {
23629 #[inline]
23630 fn from(node: Show) -> Stmt {
23631 Stmt::Show(node)
23632 }
23633}
23634impl From<Table> for Stmt {
23635 #[inline]
23636 fn from(node: Table) -> Stmt {
23637 Stmt::Table(node)
23638 }
23639}
23640impl From<Truncate> for Stmt {
23641 #[inline]
23642 fn from(node: Truncate) -> Stmt {
23643 Stmt::Truncate(node)
23644 }
23645}
23646impl From<Unlisten> for Stmt {
23647 #[inline]
23648 fn from(node: Unlisten) -> Stmt {
23649 Stmt::Unlisten(node)
23650 }
23651}
23652impl From<Update> for Stmt {
23653 #[inline]
23654 fn from(node: Update) -> Stmt {
23655 Stmt::Update(node)
23656 }
23657}
23658impl From<Vacuum> for Stmt {
23659 #[inline]
23660 fn from(node: Vacuum) -> Stmt {
23661 Stmt::Vacuum(node)
23662 }
23663}
23664impl From<Values> for Stmt {
23665 #[inline]
23666 fn from(node: Values) -> Stmt {
23667 Stmt::Values(node)
23668 }
23669}
23670impl AstNode for TableArg {
23671 #[inline]
23672 fn can_cast(kind: SyntaxKind) -> bool {
23673 matches!(kind, SyntaxKind::COLUMN | SyntaxKind::LIKE_CLAUSE)
23674 }
23675 #[inline]
23676 fn cast(syntax: SyntaxNode) -> Option<Self> {
23677 let res = match syntax.kind() {
23678 SyntaxKind::COLUMN => TableArg::Column(Column { syntax }),
23679 SyntaxKind::LIKE_CLAUSE => TableArg::LikeClause(LikeClause { syntax }),
23680 _ => {
23681 if let Some(result) = TableConstraint::cast(syntax) {
23682 return Some(TableArg::TableConstraint(result));
23683 }
23684 return None;
23685 }
23686 };
23687 Some(res)
23688 }
23689 #[inline]
23690 fn syntax(&self) -> &SyntaxNode {
23691 match self {
23692 TableArg::Column(it) => &it.syntax,
23693 TableArg::LikeClause(it) => &it.syntax,
23694 TableArg::TableConstraint(it) => it.syntax(),
23695 }
23696 }
23697}
23698impl From<Column> for TableArg {
23699 #[inline]
23700 fn from(node: Column) -> TableArg {
23701 TableArg::Column(node)
23702 }
23703}
23704impl From<LikeClause> for TableArg {
23705 #[inline]
23706 fn from(node: LikeClause) -> TableArg {
23707 TableArg::LikeClause(node)
23708 }
23709}
23710impl AstNode for TableConstraint {
23711 #[inline]
23712 fn can_cast(kind: SyntaxKind) -> bool {
23713 matches!(
23714 kind,
23715 SyntaxKind::CHECK_CONSTRAINT
23716 | SyntaxKind::EXCLUDE_CONSTRAINT
23717 | SyntaxKind::FOREIGN_KEY_CONSTRAINT
23718 | SyntaxKind::PRIMARY_KEY_CONSTRAINT
23719 | SyntaxKind::UNIQUE_CONSTRAINT
23720 )
23721 }
23722 #[inline]
23723 fn cast(syntax: SyntaxNode) -> Option<Self> {
23724 let res = match syntax.kind() {
23725 SyntaxKind::CHECK_CONSTRAINT => {
23726 TableConstraint::CheckConstraint(CheckConstraint { syntax })
23727 }
23728 SyntaxKind::EXCLUDE_CONSTRAINT => {
23729 TableConstraint::ExcludeConstraint(ExcludeConstraint { syntax })
23730 }
23731 SyntaxKind::FOREIGN_KEY_CONSTRAINT => {
23732 TableConstraint::ForeignKeyConstraint(ForeignKeyConstraint { syntax })
23733 }
23734 SyntaxKind::PRIMARY_KEY_CONSTRAINT => {
23735 TableConstraint::PrimaryKeyConstraint(PrimaryKeyConstraint { syntax })
23736 }
23737 SyntaxKind::UNIQUE_CONSTRAINT => {
23738 TableConstraint::UniqueConstraint(UniqueConstraint { syntax })
23739 }
23740 _ => {
23741 return None;
23742 }
23743 };
23744 Some(res)
23745 }
23746 #[inline]
23747 fn syntax(&self) -> &SyntaxNode {
23748 match self {
23749 TableConstraint::CheckConstraint(it) => &it.syntax,
23750 TableConstraint::ExcludeConstraint(it) => &it.syntax,
23751 TableConstraint::ForeignKeyConstraint(it) => &it.syntax,
23752 TableConstraint::PrimaryKeyConstraint(it) => &it.syntax,
23753 TableConstraint::UniqueConstraint(it) => &it.syntax,
23754 }
23755 }
23756}
23757impl From<CheckConstraint> for TableConstraint {
23758 #[inline]
23759 fn from(node: CheckConstraint) -> TableConstraint {
23760 TableConstraint::CheckConstraint(node)
23761 }
23762}
23763impl From<ExcludeConstraint> for TableConstraint {
23764 #[inline]
23765 fn from(node: ExcludeConstraint) -> TableConstraint {
23766 TableConstraint::ExcludeConstraint(node)
23767 }
23768}
23769impl From<ForeignKeyConstraint> for TableConstraint {
23770 #[inline]
23771 fn from(node: ForeignKeyConstraint) -> TableConstraint {
23772 TableConstraint::ForeignKeyConstraint(node)
23773 }
23774}
23775impl From<PrimaryKeyConstraint> for TableConstraint {
23776 #[inline]
23777 fn from(node: PrimaryKeyConstraint) -> TableConstraint {
23778 TableConstraint::PrimaryKeyConstraint(node)
23779 }
23780}
23781impl From<UniqueConstraint> for TableConstraint {
23782 #[inline]
23783 fn from(node: UniqueConstraint) -> TableConstraint {
23784 TableConstraint::UniqueConstraint(node)
23785 }
23786}
23787impl AstNode for Timezone {
23788 #[inline]
23789 fn can_cast(kind: SyntaxKind) -> bool {
23790 matches!(
23791 kind,
23792 SyntaxKind::WITH_TIMEZONE | SyntaxKind::WITHOUT_TIMEZONE
23793 )
23794 }
23795 #[inline]
23796 fn cast(syntax: SyntaxNode) -> Option<Self> {
23797 let res = match syntax.kind() {
23798 SyntaxKind::WITH_TIMEZONE => Timezone::WithTimezone(WithTimezone { syntax }),
23799 SyntaxKind::WITHOUT_TIMEZONE => Timezone::WithoutTimezone(WithoutTimezone { syntax }),
23800 _ => {
23801 return None;
23802 }
23803 };
23804 Some(res)
23805 }
23806 #[inline]
23807 fn syntax(&self) -> &SyntaxNode {
23808 match self {
23809 Timezone::WithTimezone(it) => &it.syntax,
23810 Timezone::WithoutTimezone(it) => &it.syntax,
23811 }
23812 }
23813}
23814impl From<WithTimezone> for Timezone {
23815 #[inline]
23816 fn from(node: WithTimezone) -> Timezone {
23817 Timezone::WithTimezone(node)
23818 }
23819}
23820impl From<WithoutTimezone> for Timezone {
23821 #[inline]
23822 fn from(node: WithoutTimezone) -> Timezone {
23823 Timezone::WithoutTimezone(node)
23824 }
23825}
23826impl AstNode for TransactionMode {
23827 #[inline]
23828 fn can_cast(kind: SyntaxKind) -> bool {
23829 matches!(
23830 kind,
23831 SyntaxKind::DEFERRABLE
23832 | SyntaxKind::NOT_DEFERRABLE
23833 | SyntaxKind::READ_COMMITTED
23834 | SyntaxKind::READ_ONLY
23835 | SyntaxKind::READ_UNCOMMITTED
23836 | SyntaxKind::READ_WRITE
23837 | SyntaxKind::REPEATABLE_READ
23838 | SyntaxKind::SERIALIZABLE
23839 )
23840 }
23841 #[inline]
23842 fn cast(syntax: SyntaxNode) -> Option<Self> {
23843 let res = match syntax.kind() {
23844 SyntaxKind::DEFERRABLE => TransactionMode::Deferrable(Deferrable { syntax }),
23845 SyntaxKind::NOT_DEFERRABLE => TransactionMode::NotDeferrable(NotDeferrable { syntax }),
23846 SyntaxKind::READ_COMMITTED => TransactionMode::ReadCommitted(ReadCommitted { syntax }),
23847 SyntaxKind::READ_ONLY => TransactionMode::ReadOnly(ReadOnly { syntax }),
23848 SyntaxKind::READ_UNCOMMITTED => {
23849 TransactionMode::ReadUncommitted(ReadUncommitted { syntax })
23850 }
23851 SyntaxKind::READ_WRITE => TransactionMode::ReadWrite(ReadWrite { syntax }),
23852 SyntaxKind::REPEATABLE_READ => {
23853 TransactionMode::RepeatableRead(RepeatableRead { syntax })
23854 }
23855 SyntaxKind::SERIALIZABLE => TransactionMode::Serializable(Serializable { syntax }),
23856 _ => {
23857 return None;
23858 }
23859 };
23860 Some(res)
23861 }
23862 #[inline]
23863 fn syntax(&self) -> &SyntaxNode {
23864 match self {
23865 TransactionMode::Deferrable(it) => &it.syntax,
23866 TransactionMode::NotDeferrable(it) => &it.syntax,
23867 TransactionMode::ReadCommitted(it) => &it.syntax,
23868 TransactionMode::ReadOnly(it) => &it.syntax,
23869 TransactionMode::ReadUncommitted(it) => &it.syntax,
23870 TransactionMode::ReadWrite(it) => &it.syntax,
23871 TransactionMode::RepeatableRead(it) => &it.syntax,
23872 TransactionMode::Serializable(it) => &it.syntax,
23873 }
23874 }
23875}
23876impl From<Deferrable> for TransactionMode {
23877 #[inline]
23878 fn from(node: Deferrable) -> TransactionMode {
23879 TransactionMode::Deferrable(node)
23880 }
23881}
23882impl From<NotDeferrable> for TransactionMode {
23883 #[inline]
23884 fn from(node: NotDeferrable) -> TransactionMode {
23885 TransactionMode::NotDeferrable(node)
23886 }
23887}
23888impl From<ReadCommitted> for TransactionMode {
23889 #[inline]
23890 fn from(node: ReadCommitted) -> TransactionMode {
23891 TransactionMode::ReadCommitted(node)
23892 }
23893}
23894impl From<ReadOnly> for TransactionMode {
23895 #[inline]
23896 fn from(node: ReadOnly) -> TransactionMode {
23897 TransactionMode::ReadOnly(node)
23898 }
23899}
23900impl From<ReadUncommitted> for TransactionMode {
23901 #[inline]
23902 fn from(node: ReadUncommitted) -> TransactionMode {
23903 TransactionMode::ReadUncommitted(node)
23904 }
23905}
23906impl From<ReadWrite> for TransactionMode {
23907 #[inline]
23908 fn from(node: ReadWrite) -> TransactionMode {
23909 TransactionMode::ReadWrite(node)
23910 }
23911}
23912impl From<RepeatableRead> for TransactionMode {
23913 #[inline]
23914 fn from(node: RepeatableRead) -> TransactionMode {
23915 TransactionMode::RepeatableRead(node)
23916 }
23917}
23918impl From<Serializable> for TransactionMode {
23919 #[inline]
23920 fn from(node: Serializable) -> TransactionMode {
23921 TransactionMode::Serializable(node)
23922 }
23923}
23924impl AstNode for Type {
23925 #[inline]
23926 fn can_cast(kind: SyntaxKind) -> bool {
23927 matches!(
23928 kind,
23929 SyntaxKind::ARRAY_TYPE
23930 | SyntaxKind::BIT_TYPE
23931 | SyntaxKind::CHAR_TYPE
23932 | SyntaxKind::DOUBLE_TYPE
23933 | SyntaxKind::INTERVAL_TYPE
23934 | SyntaxKind::PATH_TYPE
23935 | SyntaxKind::PERCENT_TYPE
23936 | SyntaxKind::TIME_TYPE
23937 )
23938 }
23939 #[inline]
23940 fn cast(syntax: SyntaxNode) -> Option<Self> {
23941 let res = match syntax.kind() {
23942 SyntaxKind::ARRAY_TYPE => Type::ArrayType(ArrayType { syntax }),
23943 SyntaxKind::BIT_TYPE => Type::BitType(BitType { syntax }),
23944 SyntaxKind::CHAR_TYPE => Type::CharType(CharType { syntax }),
23945 SyntaxKind::DOUBLE_TYPE => Type::DoubleType(DoubleType { syntax }),
23946 SyntaxKind::INTERVAL_TYPE => Type::IntervalType(IntervalType { syntax }),
23947 SyntaxKind::PATH_TYPE => Type::PathType(PathType { syntax }),
23948 SyntaxKind::PERCENT_TYPE => Type::PercentType(PercentType { syntax }),
23949 SyntaxKind::TIME_TYPE => Type::TimeType(TimeType { syntax }),
23950 _ => {
23951 return None;
23952 }
23953 };
23954 Some(res)
23955 }
23956 #[inline]
23957 fn syntax(&self) -> &SyntaxNode {
23958 match self {
23959 Type::ArrayType(it) => &it.syntax,
23960 Type::BitType(it) => &it.syntax,
23961 Type::CharType(it) => &it.syntax,
23962 Type::DoubleType(it) => &it.syntax,
23963 Type::IntervalType(it) => &it.syntax,
23964 Type::PathType(it) => &it.syntax,
23965 Type::PercentType(it) => &it.syntax,
23966 Type::TimeType(it) => &it.syntax,
23967 }
23968 }
23969}
23970impl From<ArrayType> for Type {
23971 #[inline]
23972 fn from(node: ArrayType) -> Type {
23973 Type::ArrayType(node)
23974 }
23975}
23976impl From<BitType> for Type {
23977 #[inline]
23978 fn from(node: BitType) -> Type {
23979 Type::BitType(node)
23980 }
23981}
23982impl From<CharType> for Type {
23983 #[inline]
23984 fn from(node: CharType) -> Type {
23985 Type::CharType(node)
23986 }
23987}
23988impl From<DoubleType> for Type {
23989 #[inline]
23990 fn from(node: DoubleType) -> Type {
23991 Type::DoubleType(node)
23992 }
23993}
23994impl From<IntervalType> for Type {
23995 #[inline]
23996 fn from(node: IntervalType) -> Type {
23997 Type::IntervalType(node)
23998 }
23999}
24000impl From<PathType> for Type {
24001 #[inline]
24002 fn from(node: PathType) -> Type {
24003 Type::PathType(node)
24004 }
24005}
24006impl From<PercentType> for Type {
24007 #[inline]
24008 fn from(node: PercentType) -> Type {
24009 Type::PercentType(node)
24010 }
24011}
24012impl From<TimeType> for Type {
24013 #[inline]
24014 fn from(node: TimeType) -> Type {
24015 Type::TimeType(node)
24016 }
24017}
24018impl AstNode for WithQuery {
24019 #[inline]
24020 fn can_cast(kind: SyntaxKind) -> bool {
24021 matches!(
24022 kind,
24023 SyntaxKind::DELETE
24024 | SyntaxKind::INSERT
24025 | SyntaxKind::MERGE
24026 | SyntaxKind::SELECT
24027 | SyntaxKind::UPDATE
24028 | SyntaxKind::VALUES
24029 )
24030 }
24031 #[inline]
24032 fn cast(syntax: SyntaxNode) -> Option<Self> {
24033 let res = match syntax.kind() {
24034 SyntaxKind::DELETE => WithQuery::Delete(Delete { syntax }),
24035 SyntaxKind::INSERT => WithQuery::Insert(Insert { syntax }),
24036 SyntaxKind::MERGE => WithQuery::Merge(Merge { syntax }),
24037 SyntaxKind::SELECT => WithQuery::Select(Select { syntax }),
24038 SyntaxKind::UPDATE => WithQuery::Update(Update { syntax }),
24039 SyntaxKind::VALUES => WithQuery::Values(Values { syntax }),
24040 _ => {
24041 return None;
24042 }
24043 };
24044 Some(res)
24045 }
24046 #[inline]
24047 fn syntax(&self) -> &SyntaxNode {
24048 match self {
24049 WithQuery::Delete(it) => &it.syntax,
24050 WithQuery::Insert(it) => &it.syntax,
24051 WithQuery::Merge(it) => &it.syntax,
24052 WithQuery::Select(it) => &it.syntax,
24053 WithQuery::Update(it) => &it.syntax,
24054 WithQuery::Values(it) => &it.syntax,
24055 }
24056 }
24057}
24058impl From<Delete> for WithQuery {
24059 #[inline]
24060 fn from(node: Delete) -> WithQuery {
24061 WithQuery::Delete(node)
24062 }
24063}
24064impl From<Insert> for WithQuery {
24065 #[inline]
24066 fn from(node: Insert) -> WithQuery {
24067 WithQuery::Insert(node)
24068 }
24069}
24070impl From<Merge> for WithQuery {
24071 #[inline]
24072 fn from(node: Merge) -> WithQuery {
24073 WithQuery::Merge(node)
24074 }
24075}
24076impl From<Select> for WithQuery {
24077 #[inline]
24078 fn from(node: Select) -> WithQuery {
24079 WithQuery::Select(node)
24080 }
24081}
24082impl From<Update> for WithQuery {
24083 #[inline]
24084 fn from(node: Update) -> WithQuery {
24085 WithQuery::Update(node)
24086 }
24087}
24088impl From<Values> for WithQuery {
24089 #[inline]
24090 fn from(node: Values) -> WithQuery {
24091 WithQuery::Values(node)
24092 }
24093}