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 AtTimeZone {
1206 pub(crate) syntax: SyntaxNode,
1207}
1208impl AtTimeZone {
1209 #[inline]
1210 pub fn at_token(&self) -> Option<SyntaxToken> {
1211 support::token(&self.syntax, SyntaxKind::AT_KW)
1212 }
1213 #[inline]
1214 pub fn time_token(&self) -> Option<SyntaxToken> {
1215 support::token(&self.syntax, SyntaxKind::TIME_KW)
1216 }
1217 #[inline]
1218 pub fn zone_token(&self) -> Option<SyntaxToken> {
1219 support::token(&self.syntax, SyntaxKind::ZONE_KW)
1220 }
1221}
1222
1223#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1224pub struct AttachPartition {
1225 pub(crate) syntax: SyntaxNode,
1226}
1227impl AttachPartition {
1228 #[inline]
1229 pub fn partition_type(&self) -> Option<PartitionType> {
1230 support::child(&self.syntax)
1231 }
1232 #[inline]
1233 pub fn path(&self) -> Option<Path> {
1234 support::child(&self.syntax)
1235 }
1236 #[inline]
1237 pub fn attach_token(&self) -> Option<SyntaxToken> {
1238 support::token(&self.syntax, SyntaxKind::ATTACH_KW)
1239 }
1240 #[inline]
1241 pub fn partition_token(&self) -> Option<SyntaxToken> {
1242 support::token(&self.syntax, SyntaxKind::PARTITION_KW)
1243 }
1244}
1245
1246#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1247pub struct AttributeList {
1248 pub(crate) syntax: SyntaxNode,
1249}
1250impl AttributeList {
1251 #[inline]
1252 pub fn attribute_options(&self) -> AstChildren<AttributeOption> {
1253 support::children(&self.syntax)
1254 }
1255 #[inline]
1256 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
1257 support::token(&self.syntax, SyntaxKind::L_PAREN)
1258 }
1259 #[inline]
1260 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
1261 support::token(&self.syntax, SyntaxKind::R_PAREN)
1262 }
1263}
1264
1265#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1266pub struct AttributeOption {
1267 pub(crate) syntax: SyntaxNode,
1268}
1269impl AttributeOption {
1270 #[inline]
1271 pub fn eq_token(&self) -> Option<SyntaxToken> {
1272 support::token(&self.syntax, SyntaxKind::EQ)
1273 }
1274}
1275
1276#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1277pub struct Begin {
1278 pub(crate) syntax: SyntaxNode,
1279}
1280impl Begin {
1281 #[inline]
1282 pub fn transaction_mode_list(&self) -> Option<TransactionModeList> {
1283 support::child(&self.syntax)
1284 }
1285 #[inline]
1286 pub fn begin_token(&self) -> Option<SyntaxToken> {
1287 support::token(&self.syntax, SyntaxKind::BEGIN_KW)
1288 }
1289 #[inline]
1290 pub fn start_token(&self) -> Option<SyntaxToken> {
1291 support::token(&self.syntax, SyntaxKind::START_KW)
1292 }
1293 #[inline]
1294 pub fn transaction_token(&self) -> Option<SyntaxToken> {
1295 support::token(&self.syntax, SyntaxKind::TRANSACTION_KW)
1296 }
1297 #[inline]
1298 pub fn work_token(&self) -> Option<SyntaxToken> {
1299 support::token(&self.syntax, SyntaxKind::WORK_KW)
1300 }
1301}
1302
1303#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1304pub struct BeginFuncOption {
1305 pub(crate) syntax: SyntaxNode,
1306}
1307impl BeginFuncOption {
1308 #[inline]
1309 pub fn atomic_token(&self) -> Option<SyntaxToken> {
1310 support::token(&self.syntax, SyntaxKind::ATOMIC_KW)
1311 }
1312 #[inline]
1313 pub fn begin_token(&self) -> Option<SyntaxToken> {
1314 support::token(&self.syntax, SyntaxKind::BEGIN_KW)
1315 }
1316 #[inline]
1317 pub fn end_token(&self) -> Option<SyntaxToken> {
1318 support::token(&self.syntax, SyntaxKind::END_KW)
1319 }
1320}
1321
1322#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1323pub struct BetweenExpr {
1324 pub(crate) syntax: SyntaxNode,
1325}
1326impl BetweenExpr {
1327 #[inline]
1328 pub fn end(&self) -> Option<Expr> {
1329 support::child(&self.syntax)
1330 }
1331 #[inline]
1332 pub fn start(&self) -> Option<Expr> {
1333 support::child(&self.syntax)
1334 }
1335 #[inline]
1336 pub fn target(&self) -> Option<Expr> {
1337 support::child(&self.syntax)
1338 }
1339 #[inline]
1340 pub fn and_token(&self) -> Option<SyntaxToken> {
1341 support::token(&self.syntax, SyntaxKind::AND_KW)
1342 }
1343 #[inline]
1344 pub fn between_token(&self) -> Option<SyntaxToken> {
1345 support::token(&self.syntax, SyntaxKind::BETWEEN_KW)
1346 }
1347}
1348
1349#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1350pub struct BinExpr {
1351 pub(crate) syntax: SyntaxNode,
1352}
1353impl BinExpr {
1354 #[inline]
1355 pub fn op(&self) -> Option<Op> {
1356 support::child(&self.syntax)
1357 }
1358}
1359
1360#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1361pub struct BitType {
1362 pub(crate) syntax: SyntaxNode,
1363}
1364impl BitType {
1365 #[inline]
1366 pub fn arg_list(&self) -> Option<ArgList> {
1367 support::child(&self.syntax)
1368 }
1369 #[inline]
1370 pub fn bit_token(&self) -> Option<SyntaxToken> {
1371 support::token(&self.syntax, SyntaxKind::BIT_KW)
1372 }
1373 #[inline]
1374 pub fn varying_token(&self) -> Option<SyntaxToken> {
1375 support::token(&self.syntax, SyntaxKind::VARYING_KW)
1376 }
1377}
1378
1379#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1380pub struct Call {
1381 pub(crate) syntax: SyntaxNode,
1382}
1383impl Call {
1384 #[inline]
1385 pub fn call_token(&self) -> Option<SyntaxToken> {
1386 support::token(&self.syntax, SyntaxKind::CALL_KW)
1387 }
1388}
1389
1390#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1391pub struct CallExpr {
1392 pub(crate) syntax: SyntaxNode,
1393}
1394impl CallExpr {
1395 #[inline]
1396 pub fn arg_list(&self) -> Option<ArgList> {
1397 support::child(&self.syntax)
1398 }
1399 #[inline]
1400 pub fn expr(&self) -> Option<Expr> {
1401 support::child(&self.syntax)
1402 }
1403}
1404
1405#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1406pub struct Cascade {
1407 pub(crate) syntax: SyntaxNode,
1408}
1409impl Cascade {
1410 #[inline]
1411 pub fn cascade_token(&self) -> Option<SyntaxToken> {
1412 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
1413 }
1414}
1415
1416#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1417pub struct CaseExpr {
1418 pub(crate) syntax: SyntaxNode,
1419}
1420impl CaseExpr {
1421 #[inline]
1422 pub fn case_token(&self) -> Option<SyntaxToken> {
1423 support::token(&self.syntax, SyntaxKind::CASE_KW)
1424 }
1425}
1426
1427#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1428pub struct CastExpr {
1429 pub(crate) syntax: SyntaxNode,
1430}
1431impl CastExpr {
1432 #[inline]
1433 pub fn colon_colon(&self) -> Option<ColonColon> {
1434 support::child(&self.syntax)
1435 }
1436 #[inline]
1437 pub fn expr(&self) -> Option<Expr> {
1438 support::child(&self.syntax)
1439 }
1440 #[inline]
1441 pub fn ty(&self) -> Option<Type> {
1442 support::child(&self.syntax)
1443 }
1444 #[inline]
1445 pub fn as_token(&self) -> Option<SyntaxToken> {
1446 support::token(&self.syntax, SyntaxKind::AS_KW)
1447 }
1448}
1449
1450#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1451pub struct CharType {
1452 pub(crate) syntax: SyntaxNode,
1453}
1454impl CharType {
1455 #[inline]
1456 pub fn arg_list(&self) -> Option<ArgList> {
1457 support::child(&self.syntax)
1458 }
1459 #[inline]
1460 pub fn char_token(&self) -> Option<SyntaxToken> {
1461 support::token(&self.syntax, SyntaxKind::CHAR_KW)
1462 }
1463 #[inline]
1464 pub fn character_token(&self) -> Option<SyntaxToken> {
1465 support::token(&self.syntax, SyntaxKind::CHARACTER_KW)
1466 }
1467 #[inline]
1468 pub fn nchar_token(&self) -> Option<SyntaxToken> {
1469 support::token(&self.syntax, SyntaxKind::NCHAR_KW)
1470 }
1471 #[inline]
1472 pub fn varchar_token(&self) -> Option<SyntaxToken> {
1473 support::token(&self.syntax, SyntaxKind::VARCHAR_KW)
1474 }
1475 #[inline]
1476 pub fn varying_token(&self) -> Option<SyntaxToken> {
1477 support::token(&self.syntax, SyntaxKind::VARYING_KW)
1478 }
1479}
1480
1481#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1482pub struct CheckConstraint {
1483 pub(crate) syntax: SyntaxNode,
1484}
1485impl CheckConstraint {
1486 #[inline]
1487 pub fn expr(&self) -> Option<Expr> {
1488 support::child(&self.syntax)
1489 }
1490 #[inline]
1491 pub fn name_ref(&self) -> Option<NameRef> {
1492 support::child(&self.syntax)
1493 }
1494 #[inline]
1495 pub fn no_inherit(&self) -> Option<NoInherit> {
1496 support::child(&self.syntax)
1497 }
1498 #[inline]
1499 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
1500 support::token(&self.syntax, SyntaxKind::L_PAREN)
1501 }
1502 #[inline]
1503 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
1504 support::token(&self.syntax, SyntaxKind::R_PAREN)
1505 }
1506 #[inline]
1507 pub fn check_token(&self) -> Option<SyntaxToken> {
1508 support::token(&self.syntax, SyntaxKind::CHECK_KW)
1509 }
1510 #[inline]
1511 pub fn constraint_token(&self) -> Option<SyntaxToken> {
1512 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
1513 }
1514}
1515
1516#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1517pub struct Checkpoint {
1518 pub(crate) syntax: SyntaxNode,
1519}
1520impl Checkpoint {
1521 #[inline]
1522 pub fn checkpoint_token(&self) -> Option<SyntaxToken> {
1523 support::token(&self.syntax, SyntaxKind::CHECKPOINT_KW)
1524 }
1525}
1526
1527#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1528pub struct Close {
1529 pub(crate) syntax: SyntaxNode,
1530}
1531impl Close {
1532 #[inline]
1533 pub fn close_token(&self) -> Option<SyntaxToken> {
1534 support::token(&self.syntax, SyntaxKind::CLOSE_KW)
1535 }
1536}
1537
1538#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1539pub struct Cluster {
1540 pub(crate) syntax: SyntaxNode,
1541}
1542impl Cluster {
1543 #[inline]
1544 pub fn cluster_token(&self) -> Option<SyntaxToken> {
1545 support::token(&self.syntax, SyntaxKind::CLUSTER_KW)
1546 }
1547 #[inline]
1548 pub fn verbose_token(&self) -> Option<SyntaxToken> {
1549 support::token(&self.syntax, SyntaxKind::VERBOSE_KW)
1550 }
1551}
1552
1553#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1554pub struct ClusterOn {
1555 pub(crate) syntax: SyntaxNode,
1556}
1557impl ClusterOn {
1558 #[inline]
1559 pub fn cluster_token(&self) -> Option<SyntaxToken> {
1560 support::token(&self.syntax, SyntaxKind::CLUSTER_KW)
1561 }
1562 #[inline]
1563 pub fn on_token(&self) -> Option<SyntaxToken> {
1564 support::token(&self.syntax, SyntaxKind::ON_KW)
1565 }
1566}
1567
1568#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1569pub struct Collate {
1570 pub(crate) syntax: SyntaxNode,
1571}
1572impl Collate {
1573 #[inline]
1574 pub fn path(&self) -> Option<Path> {
1575 support::child(&self.syntax)
1576 }
1577 #[inline]
1578 pub fn collate_token(&self) -> Option<SyntaxToken> {
1579 support::token(&self.syntax, SyntaxKind::COLLATE_KW)
1580 }
1581}
1582
1583#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1584pub struct ColonColon {
1585 pub(crate) syntax: SyntaxNode,
1586}
1587impl ColonColon {
1588 #[inline]
1589 pub fn colon_token(&self) -> Option<SyntaxToken> {
1590 support::token(&self.syntax, SyntaxKind::COLON)
1591 }
1592}
1593
1594#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1595pub struct ColonEq {
1596 pub(crate) syntax: SyntaxNode,
1597}
1598impl ColonEq {
1599 #[inline]
1600 pub fn colon_token(&self) -> Option<SyntaxToken> {
1601 support::token(&self.syntax, SyntaxKind::COLON)
1602 }
1603 #[inline]
1604 pub fn eq_token(&self) -> Option<SyntaxToken> {
1605 support::token(&self.syntax, SyntaxKind::EQ)
1606 }
1607}
1608
1609#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1610pub struct Column {
1611 pub(crate) syntax: SyntaxNode,
1612}
1613impl Column {
1614 #[inline]
1615 pub fn collate(&self) -> Option<Collate> {
1616 support::child(&self.syntax)
1617 }
1618 #[inline]
1619 pub fn compression_method(&self) -> Option<CompressionMethod> {
1620 support::child(&self.syntax)
1621 }
1622 #[inline]
1623 pub fn constraint(&self) -> Option<ColumnConstraint> {
1624 support::child(&self.syntax)
1625 }
1626 #[inline]
1627 pub fn deferrable_constraint_option(&self) -> Option<DeferrableConstraintOption> {
1628 support::child(&self.syntax)
1629 }
1630 #[inline]
1631 pub fn enforced(&self) -> Option<Enforced> {
1632 support::child(&self.syntax)
1633 }
1634 #[inline]
1635 pub fn index_expr(&self) -> Option<IndexExpr> {
1636 support::child(&self.syntax)
1637 }
1638 #[inline]
1639 pub fn initially_deferred_constraint_option(
1640 &self,
1641 ) -> Option<InitiallyDeferredConstraintOption> {
1642 support::child(&self.syntax)
1643 }
1644 #[inline]
1645 pub fn initially_immediate_constraint_option(
1646 &self,
1647 ) -> Option<InitiallyImmediateConstraintOption> {
1648 support::child(&self.syntax)
1649 }
1650 #[inline]
1651 pub fn name(&self) -> Option<Name> {
1652 support::child(&self.syntax)
1653 }
1654 #[inline]
1655 pub fn not_deferrable_constraint_option(&self) -> Option<NotDeferrableConstraintOption> {
1656 support::child(&self.syntax)
1657 }
1658 #[inline]
1659 pub fn not_enforced(&self) -> Option<NotEnforced> {
1660 support::child(&self.syntax)
1661 }
1662 #[inline]
1663 pub fn storage(&self) -> Option<Storage> {
1664 support::child(&self.syntax)
1665 }
1666 #[inline]
1667 pub fn ty(&self) -> Option<Type> {
1668 support::child(&self.syntax)
1669 }
1670 #[inline]
1671 pub fn with_options(&self) -> Option<WithOptions> {
1672 support::child(&self.syntax)
1673 }
1674 #[inline]
1675 pub fn period_token(&self) -> Option<SyntaxToken> {
1676 support::token(&self.syntax, SyntaxKind::PERIOD_KW)
1677 }
1678}
1679
1680#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1681pub struct ColumnList {
1682 pub(crate) syntax: SyntaxNode,
1683}
1684impl ColumnList {
1685 #[inline]
1686 pub fn columns(&self) -> AstChildren<Column> {
1687 support::children(&self.syntax)
1688 }
1689 #[inline]
1690 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
1691 support::token(&self.syntax, SyntaxKind::L_PAREN)
1692 }
1693 #[inline]
1694 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
1695 support::token(&self.syntax, SyntaxKind::R_PAREN)
1696 }
1697}
1698
1699#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1700pub struct CommentOn {
1701 pub(crate) syntax: SyntaxNode,
1702}
1703impl CommentOn {
1704 #[inline]
1705 pub fn comment_token(&self) -> Option<SyntaxToken> {
1706 support::token(&self.syntax, SyntaxKind::COMMENT_KW)
1707 }
1708 #[inline]
1709 pub fn on_token(&self) -> Option<SyntaxToken> {
1710 support::token(&self.syntax, SyntaxKind::ON_KW)
1711 }
1712}
1713
1714#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1715pub struct Commit {
1716 pub(crate) syntax: SyntaxNode,
1717}
1718impl Commit {
1719 #[inline]
1720 pub fn literal(&self) -> Option<Literal> {
1721 support::child(&self.syntax)
1722 }
1723 #[inline]
1724 pub fn and_token(&self) -> Option<SyntaxToken> {
1725 support::token(&self.syntax, SyntaxKind::AND_KW)
1726 }
1727 #[inline]
1728 pub fn chain_token(&self) -> Option<SyntaxToken> {
1729 support::token(&self.syntax, SyntaxKind::CHAIN_KW)
1730 }
1731 #[inline]
1732 pub fn commit_token(&self) -> Option<SyntaxToken> {
1733 support::token(&self.syntax, SyntaxKind::COMMIT_KW)
1734 }
1735 #[inline]
1736 pub fn no_token(&self) -> Option<SyntaxToken> {
1737 support::token(&self.syntax, SyntaxKind::NO_KW)
1738 }
1739 #[inline]
1740 pub fn prepared_token(&self) -> Option<SyntaxToken> {
1741 support::token(&self.syntax, SyntaxKind::PREPARED_KW)
1742 }
1743 #[inline]
1744 pub fn transaction_token(&self) -> Option<SyntaxToken> {
1745 support::token(&self.syntax, SyntaxKind::TRANSACTION_KW)
1746 }
1747 #[inline]
1748 pub fn work_token(&self) -> Option<SyntaxToken> {
1749 support::token(&self.syntax, SyntaxKind::WORK_KW)
1750 }
1751}
1752
1753#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1754pub struct CompoundSelect {
1755 pub(crate) syntax: SyntaxNode,
1756}
1757impl CompoundSelect {
1758 #[inline]
1759 pub fn select(&self) -> Option<Select> {
1760 support::child(&self.syntax)
1761 }
1762}
1763
1764#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1765pub struct CompressionMethod {
1766 pub(crate) syntax: SyntaxNode,
1767}
1768impl CompressionMethod {
1769 #[inline]
1770 pub fn compression_token(&self) -> Option<SyntaxToken> {
1771 support::token(&self.syntax, SyntaxKind::COMPRESSION_KW)
1772 }
1773 #[inline]
1774 pub fn default_token(&self) -> Option<SyntaxToken> {
1775 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
1776 }
1777 #[inline]
1778 pub fn ident_token(&self) -> Option<SyntaxToken> {
1779 support::token(&self.syntax, SyntaxKind::IDENT)
1780 }
1781}
1782
1783#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1784pub struct ConstraintExclusions {
1785 pub(crate) syntax: SyntaxNode,
1786}
1787impl ConstraintExclusions {
1788 #[inline]
1789 pub fn exclude_token(&self) -> Option<SyntaxToken> {
1790 support::token(&self.syntax, SyntaxKind::EXCLUDE_KW)
1791 }
1792}
1793
1794#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1795pub struct ConstraintIncludeClause {
1796 pub(crate) syntax: SyntaxNode,
1797}
1798impl ConstraintIncludeClause {
1799 #[inline]
1800 pub fn include_token(&self) -> Option<SyntaxToken> {
1801 support::token(&self.syntax, SyntaxKind::INCLUDE_KW)
1802 }
1803}
1804
1805#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1806pub struct ConstraintIndexMethod {
1807 pub(crate) syntax: SyntaxNode,
1808}
1809impl ConstraintIndexMethod {
1810 #[inline]
1811 pub fn using_token(&self) -> Option<SyntaxToken> {
1812 support::token(&self.syntax, SyntaxKind::USING_KW)
1813 }
1814}
1815
1816#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1817pub struct ConstraintIndexTablespace {
1818 pub(crate) syntax: SyntaxNode,
1819}
1820impl ConstraintIndexTablespace {
1821 #[inline]
1822 pub fn name_ref(&self) -> Option<NameRef> {
1823 support::child(&self.syntax)
1824 }
1825 #[inline]
1826 pub fn index_token(&self) -> Option<SyntaxToken> {
1827 support::token(&self.syntax, SyntaxKind::INDEX_KW)
1828 }
1829 #[inline]
1830 pub fn tablespace_token(&self) -> Option<SyntaxToken> {
1831 support::token(&self.syntax, SyntaxKind::TABLESPACE_KW)
1832 }
1833 #[inline]
1834 pub fn using_token(&self) -> Option<SyntaxToken> {
1835 support::token(&self.syntax, SyntaxKind::USING_KW)
1836 }
1837}
1838
1839#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1840pub struct ConstraintWhereClause {
1841 pub(crate) syntax: SyntaxNode,
1842}
1843impl ConstraintWhereClause {
1844 #[inline]
1845 pub fn where_token(&self) -> Option<SyntaxToken> {
1846 support::token(&self.syntax, SyntaxKind::WHERE_KW)
1847 }
1848}
1849
1850#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1851pub struct Copy {
1852 pub(crate) syntax: SyntaxNode,
1853}
1854impl Copy {
1855 #[inline]
1856 pub fn copy_token(&self) -> Option<SyntaxToken> {
1857 support::token(&self.syntax, SyntaxKind::COPY_KW)
1858 }
1859}
1860
1861#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1862pub struct CostFuncOption {
1863 pub(crate) syntax: SyntaxNode,
1864}
1865impl CostFuncOption {
1866 #[inline]
1867 pub fn cost_token(&self) -> Option<SyntaxToken> {
1868 support::token(&self.syntax, SyntaxKind::COST_KW)
1869 }
1870}
1871
1872#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1873pub struct CreateAccessMethod {
1874 pub(crate) syntax: SyntaxNode,
1875}
1876impl CreateAccessMethod {
1877 #[inline]
1878 pub fn name_ref(&self) -> Option<NameRef> {
1879 support::child(&self.syntax)
1880 }
1881 #[inline]
1882 pub fn access_token(&self) -> Option<SyntaxToken> {
1883 support::token(&self.syntax, SyntaxKind::ACCESS_KW)
1884 }
1885 #[inline]
1886 pub fn create_token(&self) -> Option<SyntaxToken> {
1887 support::token(&self.syntax, SyntaxKind::CREATE_KW)
1888 }
1889 #[inline]
1890 pub fn method_token(&self) -> Option<SyntaxToken> {
1891 support::token(&self.syntax, SyntaxKind::METHOD_KW)
1892 }
1893 #[inline]
1894 pub fn type_token(&self) -> Option<SyntaxToken> {
1895 support::token(&self.syntax, SyntaxKind::TYPE_KW)
1896 }
1897}
1898
1899#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1900pub struct CreateAggregate {
1901 pub(crate) syntax: SyntaxNode,
1902}
1903impl CreateAggregate {
1904 #[inline]
1905 pub fn or_replace(&self) -> Option<OrReplace> {
1906 support::child(&self.syntax)
1907 }
1908 #[inline]
1909 pub fn param_list(&self) -> Option<ParamList> {
1910 support::child(&self.syntax)
1911 }
1912 #[inline]
1913 pub fn path(&self) -> Option<Path> {
1914 support::child(&self.syntax)
1915 }
1916 #[inline]
1917 pub fn aggregate_token(&self) -> Option<SyntaxToken> {
1918 support::token(&self.syntax, SyntaxKind::AGGREGATE_KW)
1919 }
1920 #[inline]
1921 pub fn create_token(&self) -> Option<SyntaxToken> {
1922 support::token(&self.syntax, SyntaxKind::CREATE_KW)
1923 }
1924}
1925
1926#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1927pub struct CreateCast {
1928 pub(crate) syntax: SyntaxNode,
1929}
1930impl CreateCast {
1931 #[inline]
1932 pub fn ty(&self) -> Option<Type> {
1933 support::child(&self.syntax)
1934 }
1935 #[inline]
1936 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
1937 support::token(&self.syntax, SyntaxKind::L_PAREN)
1938 }
1939 #[inline]
1940 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
1941 support::token(&self.syntax, SyntaxKind::R_PAREN)
1942 }
1943 #[inline]
1944 pub fn as_token(&self) -> Option<SyntaxToken> {
1945 support::token(&self.syntax, SyntaxKind::AS_KW)
1946 }
1947 #[inline]
1948 pub fn cast_token(&self) -> Option<SyntaxToken> {
1949 support::token(&self.syntax, SyntaxKind::CAST_KW)
1950 }
1951 #[inline]
1952 pub fn create_token(&self) -> Option<SyntaxToken> {
1953 support::token(&self.syntax, SyntaxKind::CREATE_KW)
1954 }
1955}
1956
1957#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1958pub struct CreateCollation {
1959 pub(crate) syntax: SyntaxNode,
1960}
1961impl CreateCollation {
1962 #[inline]
1963 pub fn name_ref(&self) -> Option<NameRef> {
1964 support::child(&self.syntax)
1965 }
1966 #[inline]
1967 pub fn collation_token(&self) -> Option<SyntaxToken> {
1968 support::token(&self.syntax, SyntaxKind::COLLATION_KW)
1969 }
1970 #[inline]
1971 pub fn create_token(&self) -> Option<SyntaxToken> {
1972 support::token(&self.syntax, SyntaxKind::CREATE_KW)
1973 }
1974}
1975
1976#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1977pub struct CreateConversion {
1978 pub(crate) syntax: SyntaxNode,
1979}
1980impl CreateConversion {
1981 #[inline]
1982 pub fn name_ref(&self) -> Option<NameRef> {
1983 support::child(&self.syntax)
1984 }
1985 #[inline]
1986 pub fn conversion_token(&self) -> Option<SyntaxToken> {
1987 support::token(&self.syntax, SyntaxKind::CONVERSION_KW)
1988 }
1989 #[inline]
1990 pub fn create_token(&self) -> Option<SyntaxToken> {
1991 support::token(&self.syntax, SyntaxKind::CREATE_KW)
1992 }
1993 #[inline]
1994 pub fn for_token(&self) -> Option<SyntaxToken> {
1995 support::token(&self.syntax, SyntaxKind::FOR_KW)
1996 }
1997}
1998
1999#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2000pub struct CreateDatabase {
2001 pub(crate) syntax: SyntaxNode,
2002}
2003impl CreateDatabase {
2004 #[inline]
2005 pub fn name_ref(&self) -> Option<NameRef> {
2006 support::child(&self.syntax)
2007 }
2008 #[inline]
2009 pub fn create_token(&self) -> Option<SyntaxToken> {
2010 support::token(&self.syntax, SyntaxKind::CREATE_KW)
2011 }
2012 #[inline]
2013 pub fn database_token(&self) -> Option<SyntaxToken> {
2014 support::token(&self.syntax, SyntaxKind::DATABASE_KW)
2015 }
2016}
2017
2018#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2019pub struct CreateDomain {
2020 pub(crate) syntax: SyntaxNode,
2021}
2022impl CreateDomain {
2023 #[inline]
2024 pub fn collate(&self) -> Option<Collate> {
2025 support::child(&self.syntax)
2026 }
2027 #[inline]
2028 pub fn constraints(&self) -> AstChildren<Constraint> {
2029 support::children(&self.syntax)
2030 }
2031 #[inline]
2032 pub fn name_ref(&self) -> Option<NameRef> {
2033 support::child(&self.syntax)
2034 }
2035 #[inline]
2036 pub fn ty(&self) -> Option<Type> {
2037 support::child(&self.syntax)
2038 }
2039 #[inline]
2040 pub fn as_token(&self) -> Option<SyntaxToken> {
2041 support::token(&self.syntax, SyntaxKind::AS_KW)
2042 }
2043 #[inline]
2044 pub fn create_token(&self) -> Option<SyntaxToken> {
2045 support::token(&self.syntax, SyntaxKind::CREATE_KW)
2046 }
2047 #[inline]
2048 pub fn domain_token(&self) -> Option<SyntaxToken> {
2049 support::token(&self.syntax, SyntaxKind::DOMAIN_KW)
2050 }
2051}
2052
2053#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2054pub struct CreateEventTrigger {
2055 pub(crate) syntax: SyntaxNode,
2056}
2057impl CreateEventTrigger {
2058 #[inline]
2059 pub fn name_ref(&self) -> Option<NameRef> {
2060 support::child(&self.syntax)
2061 }
2062 #[inline]
2063 pub fn create_token(&self) -> Option<SyntaxToken> {
2064 support::token(&self.syntax, SyntaxKind::CREATE_KW)
2065 }
2066 #[inline]
2067 pub fn event_token(&self) -> Option<SyntaxToken> {
2068 support::token(&self.syntax, SyntaxKind::EVENT_KW)
2069 }
2070 #[inline]
2071 pub fn on_token(&self) -> Option<SyntaxToken> {
2072 support::token(&self.syntax, SyntaxKind::ON_KW)
2073 }
2074 #[inline]
2075 pub fn trigger_token(&self) -> Option<SyntaxToken> {
2076 support::token(&self.syntax, SyntaxKind::TRIGGER_KW)
2077 }
2078}
2079
2080#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2081pub struct CreateExtension {
2082 pub(crate) syntax: SyntaxNode,
2083}
2084impl CreateExtension {
2085 #[inline]
2086 pub fn create_token(&self) -> Option<SyntaxToken> {
2087 support::token(&self.syntax, SyntaxKind::CREATE_KW)
2088 }
2089 #[inline]
2090 pub fn extension_token(&self) -> Option<SyntaxToken> {
2091 support::token(&self.syntax, SyntaxKind::EXTENSION_KW)
2092 }
2093}
2094
2095#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2096pub struct CreateForeignDataWrapper {
2097 pub(crate) syntax: SyntaxNode,
2098}
2099impl CreateForeignDataWrapper {
2100 #[inline]
2101 pub fn name_ref(&self) -> Option<NameRef> {
2102 support::child(&self.syntax)
2103 }
2104 #[inline]
2105 pub fn create_token(&self) -> Option<SyntaxToken> {
2106 support::token(&self.syntax, SyntaxKind::CREATE_KW)
2107 }
2108 #[inline]
2109 pub fn data_token(&self) -> Option<SyntaxToken> {
2110 support::token(&self.syntax, SyntaxKind::DATA_KW)
2111 }
2112 #[inline]
2113 pub fn foreign_token(&self) -> Option<SyntaxToken> {
2114 support::token(&self.syntax, SyntaxKind::FOREIGN_KW)
2115 }
2116 #[inline]
2117 pub fn wrapper_token(&self) -> Option<SyntaxToken> {
2118 support::token(&self.syntax, SyntaxKind::WRAPPER_KW)
2119 }
2120}
2121
2122#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2123pub struct CreateForeignTable {
2124 pub(crate) syntax: SyntaxNode,
2125}
2126impl CreateForeignTable {
2127 #[inline]
2128 pub fn if_not_exists(&self) -> Option<IfNotExists> {
2129 support::child(&self.syntax)
2130 }
2131 #[inline]
2132 pub fn create_token(&self) -> Option<SyntaxToken> {
2133 support::token(&self.syntax, SyntaxKind::CREATE_KW)
2134 }
2135 #[inline]
2136 pub fn foreign_token(&self) -> Option<SyntaxToken> {
2137 support::token(&self.syntax, SyntaxKind::FOREIGN_KW)
2138 }
2139 #[inline]
2140 pub fn table_token(&self) -> Option<SyntaxToken> {
2141 support::token(&self.syntax, SyntaxKind::TABLE_KW)
2142 }
2143}
2144
2145#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2146pub struct CreateFunction {
2147 pub(crate) syntax: SyntaxNode,
2148}
2149impl CreateFunction {
2150 #[inline]
2151 pub fn option_list(&self) -> Option<FuncOptionList> {
2152 support::child(&self.syntax)
2153 }
2154 #[inline]
2155 pub fn or_replace(&self) -> Option<OrReplace> {
2156 support::child(&self.syntax)
2157 }
2158 #[inline]
2159 pub fn param_list(&self) -> Option<ParamList> {
2160 support::child(&self.syntax)
2161 }
2162 #[inline]
2163 pub fn path(&self) -> Option<Path> {
2164 support::child(&self.syntax)
2165 }
2166 #[inline]
2167 pub fn ret_type(&self) -> Option<RetType> {
2168 support::child(&self.syntax)
2169 }
2170 #[inline]
2171 pub fn create_token(&self) -> Option<SyntaxToken> {
2172 support::token(&self.syntax, SyntaxKind::CREATE_KW)
2173 }
2174 #[inline]
2175 pub fn function_token(&self) -> Option<SyntaxToken> {
2176 support::token(&self.syntax, SyntaxKind::FUNCTION_KW)
2177 }
2178}
2179
2180#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2181pub struct CreateGroup {
2182 pub(crate) syntax: SyntaxNode,
2183}
2184impl CreateGroup {
2185 #[inline]
2186 pub fn name_ref(&self) -> Option<NameRef> {
2187 support::child(&self.syntax)
2188 }
2189 #[inline]
2190 pub fn create_token(&self) -> Option<SyntaxToken> {
2191 support::token(&self.syntax, SyntaxKind::CREATE_KW)
2192 }
2193 #[inline]
2194 pub fn group_token(&self) -> Option<SyntaxToken> {
2195 support::token(&self.syntax, SyntaxKind::GROUP_KW)
2196 }
2197}
2198
2199#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2200pub struct CreateIndex {
2201 pub(crate) syntax: SyntaxNode,
2202}
2203impl CreateIndex {
2204 #[inline]
2205 pub fn if_not_exists(&self) -> Option<IfNotExists> {
2206 support::child(&self.syntax)
2207 }
2208 #[inline]
2209 pub fn name(&self) -> Option<Name> {
2210 support::child(&self.syntax)
2211 }
2212 #[inline]
2213 pub fn relation_name(&self) -> Option<RelationName> {
2214 support::child(&self.syntax)
2215 }
2216 #[inline]
2217 pub fn concurrently_token(&self) -> Option<SyntaxToken> {
2218 support::token(&self.syntax, SyntaxKind::CONCURRENTLY_KW)
2219 }
2220 #[inline]
2221 pub fn create_token(&self) -> Option<SyntaxToken> {
2222 support::token(&self.syntax, SyntaxKind::CREATE_KW)
2223 }
2224 #[inline]
2225 pub fn index_token(&self) -> Option<SyntaxToken> {
2226 support::token(&self.syntax, SyntaxKind::INDEX_KW)
2227 }
2228 #[inline]
2229 pub fn on_token(&self) -> Option<SyntaxToken> {
2230 support::token(&self.syntax, SyntaxKind::ON_KW)
2231 }
2232 #[inline]
2233 pub fn unique_token(&self) -> Option<SyntaxToken> {
2234 support::token(&self.syntax, SyntaxKind::UNIQUE_KW)
2235 }
2236}
2237
2238#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2239pub struct CreateLanguage {
2240 pub(crate) syntax: SyntaxNode,
2241}
2242impl CreateLanguage {
2243 #[inline]
2244 pub fn name_ref(&self) -> Option<NameRef> {
2245 support::child(&self.syntax)
2246 }
2247 #[inline]
2248 pub fn create_token(&self) -> Option<SyntaxToken> {
2249 support::token(&self.syntax, SyntaxKind::CREATE_KW)
2250 }
2251 #[inline]
2252 pub fn language_token(&self) -> Option<SyntaxToken> {
2253 support::token(&self.syntax, SyntaxKind::LANGUAGE_KW)
2254 }
2255}
2256
2257#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2258pub struct CreateMaterializedView {
2259 pub(crate) syntax: SyntaxNode,
2260}
2261impl CreateMaterializedView {
2262 #[inline]
2263 pub fn create_token(&self) -> Option<SyntaxToken> {
2264 support::token(&self.syntax, SyntaxKind::CREATE_KW)
2265 }
2266}
2267
2268#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2269pub struct CreateOperator {
2270 pub(crate) syntax: SyntaxNode,
2271}
2272impl CreateOperator {
2273 #[inline]
2274 pub fn create_token(&self) -> Option<SyntaxToken> {
2275 support::token(&self.syntax, SyntaxKind::CREATE_KW)
2276 }
2277 #[inline]
2278 pub fn operator_token(&self) -> Option<SyntaxToken> {
2279 support::token(&self.syntax, SyntaxKind::OPERATOR_KW)
2280 }
2281}
2282
2283#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2284pub struct CreateOperatorClass {
2285 pub(crate) syntax: SyntaxNode,
2286}
2287impl CreateOperatorClass {
2288 #[inline]
2289 pub fn name_ref(&self) -> Option<NameRef> {
2290 support::child(&self.syntax)
2291 }
2292 #[inline]
2293 pub fn ty(&self) -> Option<Type> {
2294 support::child(&self.syntax)
2295 }
2296 #[inline]
2297 pub fn class_token(&self) -> Option<SyntaxToken> {
2298 support::token(&self.syntax, SyntaxKind::CLASS_KW)
2299 }
2300 #[inline]
2301 pub fn create_token(&self) -> Option<SyntaxToken> {
2302 support::token(&self.syntax, SyntaxKind::CREATE_KW)
2303 }
2304 #[inline]
2305 pub fn default_token(&self) -> Option<SyntaxToken> {
2306 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
2307 }
2308 #[inline]
2309 pub fn for_token(&self) -> Option<SyntaxToken> {
2310 support::token(&self.syntax, SyntaxKind::FOR_KW)
2311 }
2312 #[inline]
2313 pub fn operator_token(&self) -> Option<SyntaxToken> {
2314 support::token(&self.syntax, SyntaxKind::OPERATOR_KW)
2315 }
2316 #[inline]
2317 pub fn type_token(&self) -> Option<SyntaxToken> {
2318 support::token(&self.syntax, SyntaxKind::TYPE_KW)
2319 }
2320 #[inline]
2321 pub fn using_token(&self) -> Option<SyntaxToken> {
2322 support::token(&self.syntax, SyntaxKind::USING_KW)
2323 }
2324}
2325
2326#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2327pub struct CreateOperatorFamily {
2328 pub(crate) syntax: SyntaxNode,
2329}
2330impl CreateOperatorFamily {
2331 #[inline]
2332 pub fn name_ref(&self) -> Option<NameRef> {
2333 support::child(&self.syntax)
2334 }
2335 #[inline]
2336 pub fn create_token(&self) -> Option<SyntaxToken> {
2337 support::token(&self.syntax, SyntaxKind::CREATE_KW)
2338 }
2339 #[inline]
2340 pub fn family_token(&self) -> Option<SyntaxToken> {
2341 support::token(&self.syntax, SyntaxKind::FAMILY_KW)
2342 }
2343 #[inline]
2344 pub fn operator_token(&self) -> Option<SyntaxToken> {
2345 support::token(&self.syntax, SyntaxKind::OPERATOR_KW)
2346 }
2347 #[inline]
2348 pub fn using_token(&self) -> Option<SyntaxToken> {
2349 support::token(&self.syntax, SyntaxKind::USING_KW)
2350 }
2351}
2352
2353#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2354pub struct CreatePolicy {
2355 pub(crate) syntax: SyntaxNode,
2356}
2357impl CreatePolicy {
2358 #[inline]
2359 pub fn name_ref(&self) -> Option<NameRef> {
2360 support::child(&self.syntax)
2361 }
2362 #[inline]
2363 pub fn create_token(&self) -> Option<SyntaxToken> {
2364 support::token(&self.syntax, SyntaxKind::CREATE_KW)
2365 }
2366 #[inline]
2367 pub fn on_token(&self) -> Option<SyntaxToken> {
2368 support::token(&self.syntax, SyntaxKind::ON_KW)
2369 }
2370 #[inline]
2371 pub fn policy_token(&self) -> Option<SyntaxToken> {
2372 support::token(&self.syntax, SyntaxKind::POLICY_KW)
2373 }
2374}
2375
2376#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2377pub struct CreateProcedure {
2378 pub(crate) syntax: SyntaxNode,
2379}
2380impl CreateProcedure {
2381 #[inline]
2382 pub fn create_token(&self) -> Option<SyntaxToken> {
2383 support::token(&self.syntax, SyntaxKind::CREATE_KW)
2384 }
2385 #[inline]
2386 pub fn procedure_token(&self) -> Option<SyntaxToken> {
2387 support::token(&self.syntax, SyntaxKind::PROCEDURE_KW)
2388 }
2389}
2390
2391#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2392pub struct CreatePublication {
2393 pub(crate) syntax: SyntaxNode,
2394}
2395impl CreatePublication {
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 publication_token(&self) -> Option<SyntaxToken> {
2406 support::token(&self.syntax, SyntaxKind::PUBLICATION_KW)
2407 }
2408}
2409
2410#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2411pub struct CreateRole {
2412 pub(crate) syntax: SyntaxNode,
2413}
2414impl CreateRole {
2415 #[inline]
2416 pub fn name_ref(&self) -> Option<NameRef> {
2417 support::child(&self.syntax)
2418 }
2419 #[inline]
2420 pub fn create_token(&self) -> Option<SyntaxToken> {
2421 support::token(&self.syntax, SyntaxKind::CREATE_KW)
2422 }
2423 #[inline]
2424 pub fn role_token(&self) -> Option<SyntaxToken> {
2425 support::token(&self.syntax, SyntaxKind::ROLE_KW)
2426 }
2427}
2428
2429#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2430pub struct CreateRule {
2431 pub(crate) syntax: SyntaxNode,
2432}
2433impl CreateRule {
2434 #[inline]
2435 pub fn name_ref(&self) -> Option<NameRef> {
2436 support::child(&self.syntax)
2437 }
2438 #[inline]
2439 pub fn as_token(&self) -> Option<SyntaxToken> {
2440 support::token(&self.syntax, SyntaxKind::AS_KW)
2441 }
2442 #[inline]
2443 pub fn create_token(&self) -> Option<SyntaxToken> {
2444 support::token(&self.syntax, SyntaxKind::CREATE_KW)
2445 }
2446 #[inline]
2447 pub fn on_token(&self) -> Option<SyntaxToken> {
2448 support::token(&self.syntax, SyntaxKind::ON_KW)
2449 }
2450 #[inline]
2451 pub fn rule_token(&self) -> Option<SyntaxToken> {
2452 support::token(&self.syntax, SyntaxKind::RULE_KW)
2453 }
2454}
2455
2456#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2457pub struct CreateSchema {
2458 pub(crate) syntax: SyntaxNode,
2459}
2460impl CreateSchema {
2461 #[inline]
2462 pub fn create_token(&self) -> Option<SyntaxToken> {
2463 support::token(&self.syntax, SyntaxKind::CREATE_KW)
2464 }
2465 #[inline]
2466 pub fn schema_token(&self) -> Option<SyntaxToken> {
2467 support::token(&self.syntax, SyntaxKind::SCHEMA_KW)
2468 }
2469}
2470
2471#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2472pub struct CreateSequence {
2473 pub(crate) syntax: SyntaxNode,
2474}
2475impl CreateSequence {
2476 #[inline]
2477 pub fn name_ref(&self) -> Option<NameRef> {
2478 support::child(&self.syntax)
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 sequence_token(&self) -> Option<SyntaxToken> {
2486 support::token(&self.syntax, SyntaxKind::SEQUENCE_KW)
2487 }
2488}
2489
2490#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2491pub struct CreateServer {
2492 pub(crate) syntax: SyntaxNode,
2493}
2494impl CreateServer {
2495 #[inline]
2496 pub fn name_ref(&self) -> Option<NameRef> {
2497 support::child(&self.syntax)
2498 }
2499 #[inline]
2500 pub fn create_token(&self) -> Option<SyntaxToken> {
2501 support::token(&self.syntax, SyntaxKind::CREATE_KW)
2502 }
2503 #[inline]
2504 pub fn server_token(&self) -> Option<SyntaxToken> {
2505 support::token(&self.syntax, SyntaxKind::SERVER_KW)
2506 }
2507}
2508
2509#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2510pub struct CreateStatistics {
2511 pub(crate) syntax: SyntaxNode,
2512}
2513impl CreateStatistics {
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 statistics_token(&self) -> Option<SyntaxToken> {
2524 support::token(&self.syntax, SyntaxKind::STATISTICS_KW)
2525 }
2526}
2527
2528#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2529pub struct CreateSubscription {
2530 pub(crate) syntax: SyntaxNode,
2531}
2532impl CreateSubscription {
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 subscription_token(&self) -> Option<SyntaxToken> {
2543 support::token(&self.syntax, SyntaxKind::SUBSCRIPTION_KW)
2544 }
2545}
2546
2547#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2548pub struct CreateTable {
2549 pub(crate) syntax: SyntaxNode,
2550}
2551impl CreateTable {
2552 #[inline]
2553 pub fn if_not_exists(&self) -> Option<IfNotExists> {
2554 support::child(&self.syntax)
2555 }
2556 #[inline]
2557 pub fn inherits(&self) -> Option<Inherits> {
2558 support::child(&self.syntax)
2559 }
2560 #[inline]
2561 pub fn of_type(&self) -> Option<OfType> {
2562 support::child(&self.syntax)
2563 }
2564 #[inline]
2565 pub fn on_commit(&self) -> Option<OnCommit> {
2566 support::child(&self.syntax)
2567 }
2568 #[inline]
2569 pub fn partition_by(&self) -> Option<PartitionBy> {
2570 support::child(&self.syntax)
2571 }
2572 #[inline]
2573 pub fn partition_of(&self) -> Option<PartitionOf> {
2574 support::child(&self.syntax)
2575 }
2576 #[inline]
2577 pub fn path(&self) -> Option<Path> {
2578 support::child(&self.syntax)
2579 }
2580 #[inline]
2581 pub fn table_arg_list(&self) -> Option<TableArgList> {
2582 support::child(&self.syntax)
2583 }
2584 #[inline]
2585 pub fn tablespace(&self) -> Option<Tablespace> {
2586 support::child(&self.syntax)
2587 }
2588 #[inline]
2589 pub fn using_method(&self) -> Option<UsingMethod> {
2590 support::child(&self.syntax)
2591 }
2592 #[inline]
2593 pub fn with_params(&self) -> Option<WithParams> {
2594 support::child(&self.syntax)
2595 }
2596 #[inline]
2597 pub fn without_oids(&self) -> Option<WithoutOids> {
2598 support::child(&self.syntax)
2599 }
2600 #[inline]
2601 pub fn create_token(&self) -> Option<SyntaxToken> {
2602 support::token(&self.syntax, SyntaxKind::CREATE_KW)
2603 }
2604 #[inline]
2605 pub fn table_token(&self) -> Option<SyntaxToken> {
2606 support::token(&self.syntax, SyntaxKind::TABLE_KW)
2607 }
2608}
2609
2610#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2611pub struct CreateTableAs {
2612 pub(crate) syntax: SyntaxNode,
2613}
2614impl CreateTableAs {
2615 #[inline]
2616 pub fn if_not_exists(&self) -> Option<IfNotExists> {
2617 support::child(&self.syntax)
2618 }
2619 #[inline]
2620 pub fn on_commit(&self) -> Option<OnCommit> {
2621 support::child(&self.syntax)
2622 }
2623 #[inline]
2624 pub fn path(&self) -> Option<Path> {
2625 support::child(&self.syntax)
2626 }
2627 #[inline]
2628 pub fn stmt(&self) -> Option<Stmt> {
2629 support::child(&self.syntax)
2630 }
2631 #[inline]
2632 pub fn tablespace(&self) -> Option<Tablespace> {
2633 support::child(&self.syntax)
2634 }
2635 #[inline]
2636 pub fn using_method(&self) -> Option<UsingMethod> {
2637 support::child(&self.syntax)
2638 }
2639 #[inline]
2640 pub fn with_data(&self) -> Option<WithData> {
2641 support::child(&self.syntax)
2642 }
2643 #[inline]
2644 pub fn with_no_data(&self) -> Option<WithNoData> {
2645 support::child(&self.syntax)
2646 }
2647 #[inline]
2648 pub fn with_params(&self) -> Option<WithParams> {
2649 support::child(&self.syntax)
2650 }
2651 #[inline]
2652 pub fn as_token(&self) -> Option<SyntaxToken> {
2653 support::token(&self.syntax, SyntaxKind::AS_KW)
2654 }
2655 #[inline]
2656 pub fn create_token(&self) -> Option<SyntaxToken> {
2657 support::token(&self.syntax, SyntaxKind::CREATE_KW)
2658 }
2659 #[inline]
2660 pub fn table_token(&self) -> Option<SyntaxToken> {
2661 support::token(&self.syntax, SyntaxKind::TABLE_KW)
2662 }
2663}
2664
2665#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2666pub struct CreateTablespace {
2667 pub(crate) syntax: SyntaxNode,
2668}
2669impl CreateTablespace {
2670 #[inline]
2671 pub fn name_ref(&self) -> Option<NameRef> {
2672 support::child(&self.syntax)
2673 }
2674 #[inline]
2675 pub fn create_token(&self) -> Option<SyntaxToken> {
2676 support::token(&self.syntax, SyntaxKind::CREATE_KW)
2677 }
2678 #[inline]
2679 pub fn tablespace_token(&self) -> Option<SyntaxToken> {
2680 support::token(&self.syntax, SyntaxKind::TABLESPACE_KW)
2681 }
2682}
2683
2684#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2685pub struct CreateTextSearchConfiguration {
2686 pub(crate) syntax: SyntaxNode,
2687}
2688impl CreateTextSearchConfiguration {
2689 #[inline]
2690 pub fn attribute_list(&self) -> Option<AttributeList> {
2691 support::child(&self.syntax)
2692 }
2693 #[inline]
2694 pub fn name_ref(&self) -> Option<NameRef> {
2695 support::child(&self.syntax)
2696 }
2697 #[inline]
2698 pub fn configuration_token(&self) -> Option<SyntaxToken> {
2699 support::token(&self.syntax, SyntaxKind::CONFIGURATION_KW)
2700 }
2701 #[inline]
2702 pub fn create_token(&self) -> Option<SyntaxToken> {
2703 support::token(&self.syntax, SyntaxKind::CREATE_KW)
2704 }
2705 #[inline]
2706 pub fn search_token(&self) -> Option<SyntaxToken> {
2707 support::token(&self.syntax, SyntaxKind::SEARCH_KW)
2708 }
2709 #[inline]
2710 pub fn text_token(&self) -> Option<SyntaxToken> {
2711 support::token(&self.syntax, SyntaxKind::TEXT_KW)
2712 }
2713}
2714
2715#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2716pub struct CreateTextSearchDictionary {
2717 pub(crate) syntax: SyntaxNode,
2718}
2719impl CreateTextSearchDictionary {
2720 #[inline]
2721 pub fn name_ref(&self) -> Option<NameRef> {
2722 support::child(&self.syntax)
2723 }
2724 #[inline]
2725 pub fn create_token(&self) -> Option<SyntaxToken> {
2726 support::token(&self.syntax, SyntaxKind::CREATE_KW)
2727 }
2728 #[inline]
2729 pub fn dictionary_token(&self) -> Option<SyntaxToken> {
2730 support::token(&self.syntax, SyntaxKind::DICTIONARY_KW)
2731 }
2732 #[inline]
2733 pub fn search_token(&self) -> Option<SyntaxToken> {
2734 support::token(&self.syntax, SyntaxKind::SEARCH_KW)
2735 }
2736 #[inline]
2737 pub fn text_token(&self) -> Option<SyntaxToken> {
2738 support::token(&self.syntax, SyntaxKind::TEXT_KW)
2739 }
2740}
2741
2742#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2743pub struct CreateTextSearchParser {
2744 pub(crate) syntax: SyntaxNode,
2745}
2746impl CreateTextSearchParser {
2747 #[inline]
2748 pub fn name_ref(&self) -> Option<NameRef> {
2749 support::child(&self.syntax)
2750 }
2751 #[inline]
2752 pub fn create_token(&self) -> Option<SyntaxToken> {
2753 support::token(&self.syntax, SyntaxKind::CREATE_KW)
2754 }
2755 #[inline]
2756 pub fn parser_token(&self) -> Option<SyntaxToken> {
2757 support::token(&self.syntax, SyntaxKind::PARSER_KW)
2758 }
2759 #[inline]
2760 pub fn search_token(&self) -> Option<SyntaxToken> {
2761 support::token(&self.syntax, SyntaxKind::SEARCH_KW)
2762 }
2763 #[inline]
2764 pub fn text_token(&self) -> Option<SyntaxToken> {
2765 support::token(&self.syntax, SyntaxKind::TEXT_KW)
2766 }
2767}
2768
2769#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2770pub struct CreateTextSearchTemplate {
2771 pub(crate) syntax: SyntaxNode,
2772}
2773impl CreateTextSearchTemplate {
2774 #[inline]
2775 pub fn name_ref(&self) -> Option<NameRef> {
2776 support::child(&self.syntax)
2777 }
2778 #[inline]
2779 pub fn create_token(&self) -> Option<SyntaxToken> {
2780 support::token(&self.syntax, SyntaxKind::CREATE_KW)
2781 }
2782 #[inline]
2783 pub fn search_token(&self) -> Option<SyntaxToken> {
2784 support::token(&self.syntax, SyntaxKind::SEARCH_KW)
2785 }
2786 #[inline]
2787 pub fn template_token(&self) -> Option<SyntaxToken> {
2788 support::token(&self.syntax, SyntaxKind::TEMPLATE_KW)
2789 }
2790 #[inline]
2791 pub fn text_token(&self) -> Option<SyntaxToken> {
2792 support::token(&self.syntax, SyntaxKind::TEXT_KW)
2793 }
2794}
2795
2796#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2797pub struct CreateTransform {
2798 pub(crate) syntax: SyntaxNode,
2799}
2800impl CreateTransform {
2801 #[inline]
2802 pub fn name_ref(&self) -> Option<NameRef> {
2803 support::child(&self.syntax)
2804 }
2805 #[inline]
2806 pub fn ty(&self) -> Option<Type> {
2807 support::child(&self.syntax)
2808 }
2809 #[inline]
2810 pub fn create_token(&self) -> Option<SyntaxToken> {
2811 support::token(&self.syntax, SyntaxKind::CREATE_KW)
2812 }
2813 #[inline]
2814 pub fn for_token(&self) -> Option<SyntaxToken> {
2815 support::token(&self.syntax, SyntaxKind::FOR_KW)
2816 }
2817 #[inline]
2818 pub fn language_token(&self) -> Option<SyntaxToken> {
2819 support::token(&self.syntax, SyntaxKind::LANGUAGE_KW)
2820 }
2821 #[inline]
2822 pub fn transform_token(&self) -> Option<SyntaxToken> {
2823 support::token(&self.syntax, SyntaxKind::TRANSFORM_KW)
2824 }
2825}
2826
2827#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2828pub struct CreateTrigger {
2829 pub(crate) syntax: SyntaxNode,
2830}
2831impl CreateTrigger {
2832 #[inline]
2833 pub fn create_token(&self) -> Option<SyntaxToken> {
2834 support::token(&self.syntax, SyntaxKind::CREATE_KW)
2835 }
2836}
2837
2838#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2839pub struct CreateType {
2840 pub(crate) syntax: SyntaxNode,
2841}
2842impl CreateType {
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 type_token(&self) -> Option<SyntaxToken> {
2853 support::token(&self.syntax, SyntaxKind::TYPE_KW)
2854 }
2855}
2856
2857#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2858pub struct CreateUser {
2859 pub(crate) syntax: SyntaxNode,
2860}
2861impl CreateUser {
2862 #[inline]
2863 pub fn name_ref(&self) -> Option<NameRef> {
2864 support::child(&self.syntax)
2865 }
2866 #[inline]
2867 pub fn create_token(&self) -> Option<SyntaxToken> {
2868 support::token(&self.syntax, SyntaxKind::CREATE_KW)
2869 }
2870 #[inline]
2871 pub fn user_token(&self) -> Option<SyntaxToken> {
2872 support::token(&self.syntax, SyntaxKind::USER_KW)
2873 }
2874}
2875
2876#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2877pub struct CreateUserMapping {
2878 pub(crate) syntax: SyntaxNode,
2879}
2880impl CreateUserMapping {
2881 #[inline]
2882 pub fn name_ref(&self) -> Option<NameRef> {
2883 support::child(&self.syntax)
2884 }
2885 #[inline]
2886 pub fn create_token(&self) -> Option<SyntaxToken> {
2887 support::token(&self.syntax, SyntaxKind::CREATE_KW)
2888 }
2889 #[inline]
2890 pub fn for_token(&self) -> Option<SyntaxToken> {
2891 support::token(&self.syntax, SyntaxKind::FOR_KW)
2892 }
2893 #[inline]
2894 pub fn mapping_token(&self) -> Option<SyntaxToken> {
2895 support::token(&self.syntax, SyntaxKind::MAPPING_KW)
2896 }
2897 #[inline]
2898 pub fn server_token(&self) -> Option<SyntaxToken> {
2899 support::token(&self.syntax, SyntaxKind::SERVER_KW)
2900 }
2901 #[inline]
2902 pub fn user_token(&self) -> Option<SyntaxToken> {
2903 support::token(&self.syntax, SyntaxKind::USER_KW)
2904 }
2905}
2906
2907#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2908pub struct CreateView {
2909 pub(crate) syntax: SyntaxNode,
2910}
2911impl CreateView {
2912 #[inline]
2913 pub fn name_ref(&self) -> Option<NameRef> {
2914 support::child(&self.syntax)
2915 }
2916 #[inline]
2917 pub fn create_token(&self) -> Option<SyntaxToken> {
2918 support::token(&self.syntax, SyntaxKind::CREATE_KW)
2919 }
2920 #[inline]
2921 pub fn view_token(&self) -> Option<SyntaxToken> {
2922 support::token(&self.syntax, SyntaxKind::VIEW_KW)
2923 }
2924}
2925
2926#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2927pub struct CustomOp {
2928 pub(crate) syntax: SyntaxNode,
2929}
2930impl CustomOp {
2931 #[inline]
2932 pub fn bang_token(&self) -> Option<SyntaxToken> {
2933 support::token(&self.syntax, SyntaxKind::BANG)
2934 }
2935 #[inline]
2936 pub fn pound_token(&self) -> Option<SyntaxToken> {
2937 support::token(&self.syntax, SyntaxKind::POUND)
2938 }
2939 #[inline]
2940 pub fn percent_token(&self) -> Option<SyntaxToken> {
2941 support::token(&self.syntax, SyntaxKind::PERCENT)
2942 }
2943 #[inline]
2944 pub fn amp_token(&self) -> Option<SyntaxToken> {
2945 support::token(&self.syntax, SyntaxKind::AMP)
2946 }
2947 #[inline]
2948 pub fn star_token(&self) -> Option<SyntaxToken> {
2949 support::token(&self.syntax, SyntaxKind::STAR)
2950 }
2951 #[inline]
2952 pub fn plus_token(&self) -> Option<SyntaxToken> {
2953 support::token(&self.syntax, SyntaxKind::PLUS)
2954 }
2955 #[inline]
2956 pub fn minus_token(&self) -> Option<SyntaxToken> {
2957 support::token(&self.syntax, SyntaxKind::MINUS)
2958 }
2959 #[inline]
2960 pub fn slash_token(&self) -> Option<SyntaxToken> {
2961 support::token(&self.syntax, SyntaxKind::SLASH)
2962 }
2963 #[inline]
2964 pub fn l_angle_token(&self) -> Option<SyntaxToken> {
2965 support::token(&self.syntax, SyntaxKind::L_ANGLE)
2966 }
2967 #[inline]
2968 pub fn eq_token(&self) -> Option<SyntaxToken> {
2969 support::token(&self.syntax, SyntaxKind::EQ)
2970 }
2971 #[inline]
2972 pub fn r_angle_token(&self) -> Option<SyntaxToken> {
2973 support::token(&self.syntax, SyntaxKind::R_ANGLE)
2974 }
2975 #[inline]
2976 pub fn question_token(&self) -> Option<SyntaxToken> {
2977 support::token(&self.syntax, SyntaxKind::QUESTION)
2978 }
2979 #[inline]
2980 pub fn at_token(&self) -> Option<SyntaxToken> {
2981 support::token(&self.syntax, SyntaxKind::AT)
2982 }
2983 #[inline]
2984 pub fn caret_token(&self) -> Option<SyntaxToken> {
2985 support::token(&self.syntax, SyntaxKind::CARET)
2986 }
2987 #[inline]
2988 pub fn backtick_token(&self) -> Option<SyntaxToken> {
2989 support::token(&self.syntax, SyntaxKind::BACKTICK)
2990 }
2991 #[inline]
2992 pub fn pipe_token(&self) -> Option<SyntaxToken> {
2993 support::token(&self.syntax, SyntaxKind::PIPE)
2994 }
2995 #[inline]
2996 pub fn tilde_token(&self) -> Option<SyntaxToken> {
2997 support::token(&self.syntax, SyntaxKind::TILDE)
2998 }
2999}
3000
3001#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3002pub struct Deallocate {
3003 pub(crate) syntax: SyntaxNode,
3004}
3005impl Deallocate {
3006 #[inline]
3007 pub fn name_ref(&self) -> Option<NameRef> {
3008 support::child(&self.syntax)
3009 }
3010 #[inline]
3011 pub fn all_token(&self) -> Option<SyntaxToken> {
3012 support::token(&self.syntax, SyntaxKind::ALL_KW)
3013 }
3014 #[inline]
3015 pub fn deallocate_token(&self) -> Option<SyntaxToken> {
3016 support::token(&self.syntax, SyntaxKind::DEALLOCATE_KW)
3017 }
3018 #[inline]
3019 pub fn prepare_token(&self) -> Option<SyntaxToken> {
3020 support::token(&self.syntax, SyntaxKind::PREPARE_KW)
3021 }
3022}
3023
3024#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3025pub struct Declare {
3026 pub(crate) syntax: SyntaxNode,
3027}
3028impl Declare {
3029 #[inline]
3030 pub fn declare_token(&self) -> Option<SyntaxToken> {
3031 support::token(&self.syntax, SyntaxKind::DECLARE_KW)
3032 }
3033}
3034
3035#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3036pub struct DefaultConstraint {
3037 pub(crate) syntax: SyntaxNode,
3038}
3039impl DefaultConstraint {
3040 #[inline]
3041 pub fn expr(&self) -> Option<Expr> {
3042 support::child(&self.syntax)
3043 }
3044 #[inline]
3045 pub fn name_ref(&self) -> Option<NameRef> {
3046 support::child(&self.syntax)
3047 }
3048 #[inline]
3049 pub fn constraint_token(&self) -> Option<SyntaxToken> {
3050 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
3051 }
3052 #[inline]
3053 pub fn default_token(&self) -> Option<SyntaxToken> {
3054 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
3055 }
3056}
3057
3058#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3059pub struct Deferrable {
3060 pub(crate) syntax: SyntaxNode,
3061}
3062impl Deferrable {
3063 #[inline]
3064 pub fn deferrable_token(&self) -> Option<SyntaxToken> {
3065 support::token(&self.syntax, SyntaxKind::DEFERRABLE_KW)
3066 }
3067}
3068
3069#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3070pub struct DeferrableConstraintOption {
3071 pub(crate) syntax: SyntaxNode,
3072}
3073impl DeferrableConstraintOption {
3074 #[inline]
3075 pub fn deferrable_token(&self) -> Option<SyntaxToken> {
3076 support::token(&self.syntax, SyntaxKind::DEFERRABLE_KW)
3077 }
3078}
3079
3080#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3081pub struct Delete {
3082 pub(crate) syntax: SyntaxNode,
3083}
3084impl Delete {
3085 #[inline]
3086 pub fn delete_token(&self) -> Option<SyntaxToken> {
3087 support::token(&self.syntax, SyntaxKind::DELETE_KW)
3088 }
3089}
3090
3091#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3092pub struct DeleteRows {
3093 pub(crate) syntax: SyntaxNode,
3094}
3095impl DeleteRows {
3096 #[inline]
3097 pub fn delete_token(&self) -> Option<SyntaxToken> {
3098 support::token(&self.syntax, SyntaxKind::DELETE_KW)
3099 }
3100 #[inline]
3101 pub fn rows_token(&self) -> Option<SyntaxToken> {
3102 support::token(&self.syntax, SyntaxKind::ROWS_KW)
3103 }
3104}
3105
3106#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3107pub struct DetachPartition {
3108 pub(crate) syntax: SyntaxNode,
3109}
3110impl DetachPartition {
3111 #[inline]
3112 pub fn detach_token(&self) -> Option<SyntaxToken> {
3113 support::token(&self.syntax, SyntaxKind::DETACH_KW)
3114 }
3115 #[inline]
3116 pub fn partition_token(&self) -> Option<SyntaxToken> {
3117 support::token(&self.syntax, SyntaxKind::PARTITION_KW)
3118 }
3119}
3120
3121#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3122pub struct DisableRls {
3123 pub(crate) syntax: SyntaxNode,
3124}
3125impl DisableRls {
3126 #[inline]
3127 pub fn disable_token(&self) -> Option<SyntaxToken> {
3128 support::token(&self.syntax, SyntaxKind::DISABLE_KW)
3129 }
3130 #[inline]
3131 pub fn level_token(&self) -> Option<SyntaxToken> {
3132 support::token(&self.syntax, SyntaxKind::LEVEL_KW)
3133 }
3134 #[inline]
3135 pub fn row_token(&self) -> Option<SyntaxToken> {
3136 support::token(&self.syntax, SyntaxKind::ROW_KW)
3137 }
3138 #[inline]
3139 pub fn security_token(&self) -> Option<SyntaxToken> {
3140 support::token(&self.syntax, SyntaxKind::SECURITY_KW)
3141 }
3142}
3143
3144#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3145pub struct DisableRule {
3146 pub(crate) syntax: SyntaxNode,
3147}
3148impl DisableRule {
3149 #[inline]
3150 pub fn disable_token(&self) -> Option<SyntaxToken> {
3151 support::token(&self.syntax, SyntaxKind::DISABLE_KW)
3152 }
3153 #[inline]
3154 pub fn rule_token(&self) -> Option<SyntaxToken> {
3155 support::token(&self.syntax, SyntaxKind::RULE_KW)
3156 }
3157}
3158
3159#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3160pub struct DisableTrigger {
3161 pub(crate) syntax: SyntaxNode,
3162}
3163impl DisableTrigger {
3164 #[inline]
3165 pub fn disable_token(&self) -> Option<SyntaxToken> {
3166 support::token(&self.syntax, SyntaxKind::DISABLE_KW)
3167 }
3168 #[inline]
3169 pub fn trigger_token(&self) -> Option<SyntaxToken> {
3170 support::token(&self.syntax, SyntaxKind::TRIGGER_KW)
3171 }
3172}
3173
3174#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3175pub struct Discard {
3176 pub(crate) syntax: SyntaxNode,
3177}
3178impl Discard {
3179 #[inline]
3180 pub fn all_token(&self) -> Option<SyntaxToken> {
3181 support::token(&self.syntax, SyntaxKind::ALL_KW)
3182 }
3183 #[inline]
3184 pub fn discard_token(&self) -> Option<SyntaxToken> {
3185 support::token(&self.syntax, SyntaxKind::DISCARD_KW)
3186 }
3187 #[inline]
3188 pub fn plans_token(&self) -> Option<SyntaxToken> {
3189 support::token(&self.syntax, SyntaxKind::PLANS_KW)
3190 }
3191 #[inline]
3192 pub fn sequences_token(&self) -> Option<SyntaxToken> {
3193 support::token(&self.syntax, SyntaxKind::SEQUENCES_KW)
3194 }
3195 #[inline]
3196 pub fn temp_token(&self) -> Option<SyntaxToken> {
3197 support::token(&self.syntax, SyntaxKind::TEMP_KW)
3198 }
3199 #[inline]
3200 pub fn temporary_token(&self) -> Option<SyntaxToken> {
3201 support::token(&self.syntax, SyntaxKind::TEMPORARY_KW)
3202 }
3203}
3204
3205#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3206pub struct DistinctClause {
3207 pub(crate) syntax: SyntaxNode,
3208}
3209impl DistinctClause {
3210 #[inline]
3211 pub fn distinct_token(&self) -> Option<SyntaxToken> {
3212 support::token(&self.syntax, SyntaxKind::DISTINCT_KW)
3213 }
3214}
3215
3216#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3217pub struct Do {
3218 pub(crate) syntax: SyntaxNode,
3219}
3220impl Do {
3221 #[inline]
3222 pub fn do_token(&self) -> Option<SyntaxToken> {
3223 support::token(&self.syntax, SyntaxKind::DO_KW)
3224 }
3225}
3226
3227#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3228pub struct DoubleType {
3229 pub(crate) syntax: SyntaxNode,
3230}
3231impl DoubleType {
3232 #[inline]
3233 pub fn double_token(&self) -> Option<SyntaxToken> {
3234 support::token(&self.syntax, SyntaxKind::DOUBLE_KW)
3235 }
3236 #[inline]
3237 pub fn precision_token(&self) -> Option<SyntaxToken> {
3238 support::token(&self.syntax, SyntaxKind::PRECISION_KW)
3239 }
3240}
3241
3242#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3243pub struct Drop {
3244 pub(crate) syntax: SyntaxNode,
3245}
3246impl Drop {
3247 #[inline]
3248 pub fn drop_token(&self) -> Option<SyntaxToken> {
3249 support::token(&self.syntax, SyntaxKind::DROP_KW)
3250 }
3251}
3252
3253#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3254pub struct DropAccessMethod {
3255 pub(crate) syntax: SyntaxNode,
3256}
3257impl DropAccessMethod {
3258 #[inline]
3259 pub fn if_exists(&self) -> Option<IfExists> {
3260 support::child(&self.syntax)
3261 }
3262 #[inline]
3263 pub fn name_ref(&self) -> Option<NameRef> {
3264 support::child(&self.syntax)
3265 }
3266 #[inline]
3267 pub fn access_token(&self) -> Option<SyntaxToken> {
3268 support::token(&self.syntax, SyntaxKind::ACCESS_KW)
3269 }
3270 #[inline]
3271 pub fn drop_token(&self) -> Option<SyntaxToken> {
3272 support::token(&self.syntax, SyntaxKind::DROP_KW)
3273 }
3274 #[inline]
3275 pub fn method_token(&self) -> Option<SyntaxToken> {
3276 support::token(&self.syntax, SyntaxKind::METHOD_KW)
3277 }
3278}
3279
3280#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3281pub struct DropAggregate {
3282 pub(crate) syntax: SyntaxNode,
3283}
3284impl DropAggregate {
3285 #[inline]
3286 pub fn aggregates(&self) -> AstChildren<Aggregate> {
3287 support::children(&self.syntax)
3288 }
3289 #[inline]
3290 pub fn if_exists(&self) -> Option<IfExists> {
3291 support::child(&self.syntax)
3292 }
3293 #[inline]
3294 pub fn aggregate_token(&self) -> Option<SyntaxToken> {
3295 support::token(&self.syntax, SyntaxKind::AGGREGATE_KW)
3296 }
3297 #[inline]
3298 pub fn drop_token(&self) -> Option<SyntaxToken> {
3299 support::token(&self.syntax, SyntaxKind::DROP_KW)
3300 }
3301}
3302
3303#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3304pub struct DropCast {
3305 pub(crate) syntax: SyntaxNode,
3306}
3307impl DropCast {
3308 #[inline]
3309 pub fn if_exists(&self) -> Option<IfExists> {
3310 support::child(&self.syntax)
3311 }
3312 #[inline]
3313 pub fn ty(&self) -> Option<Type> {
3314 support::child(&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 as_token(&self) -> Option<SyntaxToken> {
3326 support::token(&self.syntax, SyntaxKind::AS_KW)
3327 }
3328 #[inline]
3329 pub fn cast_token(&self) -> Option<SyntaxToken> {
3330 support::token(&self.syntax, SyntaxKind::CAST_KW)
3331 }
3332 #[inline]
3333 pub fn drop_token(&self) -> Option<SyntaxToken> {
3334 support::token(&self.syntax, SyntaxKind::DROP_KW)
3335 }
3336}
3337
3338#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3339pub struct DropCollation {
3340 pub(crate) syntax: SyntaxNode,
3341}
3342impl DropCollation {
3343 #[inline]
3344 pub fn if_exists(&self) -> Option<IfExists> {
3345 support::child(&self.syntax)
3346 }
3347 #[inline]
3348 pub fn name_ref(&self) -> Option<NameRef> {
3349 support::child(&self.syntax)
3350 }
3351 #[inline]
3352 pub fn collation_token(&self) -> Option<SyntaxToken> {
3353 support::token(&self.syntax, SyntaxKind::COLLATION_KW)
3354 }
3355 #[inline]
3356 pub fn drop_token(&self) -> Option<SyntaxToken> {
3357 support::token(&self.syntax, SyntaxKind::DROP_KW)
3358 }
3359}
3360
3361#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3362pub struct DropColumn {
3363 pub(crate) syntax: SyntaxNode,
3364}
3365impl DropColumn {
3366 #[inline]
3367 pub fn if_exists(&self) -> Option<IfExists> {
3368 support::child(&self.syntax)
3369 }
3370 #[inline]
3371 pub fn column_token(&self) -> Option<SyntaxToken> {
3372 support::token(&self.syntax, SyntaxKind::COLUMN_KW)
3373 }
3374 #[inline]
3375 pub fn drop_token(&self) -> Option<SyntaxToken> {
3376 support::token(&self.syntax, SyntaxKind::DROP_KW)
3377 }
3378}
3379
3380#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3381pub struct DropConstraint {
3382 pub(crate) syntax: SyntaxNode,
3383}
3384impl DropConstraint {
3385 #[inline]
3386 pub fn if_exists(&self) -> Option<IfExists> {
3387 support::child(&self.syntax)
3388 }
3389 #[inline]
3390 pub fn name_ref(&self) -> Option<NameRef> {
3391 support::child(&self.syntax)
3392 }
3393 #[inline]
3394 pub fn cascade_token(&self) -> Option<SyntaxToken> {
3395 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
3396 }
3397 #[inline]
3398 pub fn constraint_token(&self) -> Option<SyntaxToken> {
3399 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
3400 }
3401 #[inline]
3402 pub fn drop_token(&self) -> Option<SyntaxToken> {
3403 support::token(&self.syntax, SyntaxKind::DROP_KW)
3404 }
3405 #[inline]
3406 pub fn restrict_token(&self) -> Option<SyntaxToken> {
3407 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
3408 }
3409}
3410
3411#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3412pub struct DropConversion {
3413 pub(crate) syntax: SyntaxNode,
3414}
3415impl DropConversion {
3416 #[inline]
3417 pub fn if_exists(&self) -> Option<IfExists> {
3418 support::child(&self.syntax)
3419 }
3420 #[inline]
3421 pub fn name_ref(&self) -> Option<NameRef> {
3422 support::child(&self.syntax)
3423 }
3424 #[inline]
3425 pub fn conversion_token(&self) -> Option<SyntaxToken> {
3426 support::token(&self.syntax, SyntaxKind::CONVERSION_KW)
3427 }
3428 #[inline]
3429 pub fn drop_token(&self) -> Option<SyntaxToken> {
3430 support::token(&self.syntax, SyntaxKind::DROP_KW)
3431 }
3432}
3433
3434#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3435pub struct DropDatabase {
3436 pub(crate) syntax: SyntaxNode,
3437}
3438impl DropDatabase {
3439 #[inline]
3440 pub fn if_exists(&self) -> Option<IfExists> {
3441 support::child(&self.syntax)
3442 }
3443 #[inline]
3444 pub fn name_ref(&self) -> Option<NameRef> {
3445 support::child(&self.syntax)
3446 }
3447 #[inline]
3448 pub fn database_token(&self) -> Option<SyntaxToken> {
3449 support::token(&self.syntax, SyntaxKind::DATABASE_KW)
3450 }
3451 #[inline]
3452 pub fn drop_token(&self) -> Option<SyntaxToken> {
3453 support::token(&self.syntax, SyntaxKind::DROP_KW)
3454 }
3455}
3456
3457#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3458pub struct DropDefault {
3459 pub(crate) syntax: SyntaxNode,
3460}
3461impl DropDefault {
3462 #[inline]
3463 pub fn default_token(&self) -> Option<SyntaxToken> {
3464 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
3465 }
3466 #[inline]
3467 pub fn drop_token(&self) -> Option<SyntaxToken> {
3468 support::token(&self.syntax, SyntaxKind::DROP_KW)
3469 }
3470}
3471
3472#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3473pub struct DropDomain {
3474 pub(crate) syntax: SyntaxNode,
3475}
3476impl DropDomain {
3477 #[inline]
3478 pub fn if_exists(&self) -> Option<IfExists> {
3479 support::child(&self.syntax)
3480 }
3481 #[inline]
3482 pub fn types(&self) -> AstChildren<Type> {
3483 support::children(&self.syntax)
3484 }
3485 #[inline]
3486 pub fn domain_token(&self) -> Option<SyntaxToken> {
3487 support::token(&self.syntax, SyntaxKind::DOMAIN_KW)
3488 }
3489 #[inline]
3490 pub fn drop_token(&self) -> Option<SyntaxToken> {
3491 support::token(&self.syntax, SyntaxKind::DROP_KW)
3492 }
3493}
3494
3495#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3496pub struct DropEventTrigger {
3497 pub(crate) syntax: SyntaxNode,
3498}
3499impl DropEventTrigger {
3500 #[inline]
3501 pub fn if_exists(&self) -> Option<IfExists> {
3502 support::child(&self.syntax)
3503 }
3504 #[inline]
3505 pub fn name_ref(&self) -> Option<NameRef> {
3506 support::child(&self.syntax)
3507 }
3508 #[inline]
3509 pub fn drop_token(&self) -> Option<SyntaxToken> {
3510 support::token(&self.syntax, SyntaxKind::DROP_KW)
3511 }
3512 #[inline]
3513 pub fn event_token(&self) -> Option<SyntaxToken> {
3514 support::token(&self.syntax, SyntaxKind::EVENT_KW)
3515 }
3516 #[inline]
3517 pub fn trigger_token(&self) -> Option<SyntaxToken> {
3518 support::token(&self.syntax, SyntaxKind::TRIGGER_KW)
3519 }
3520}
3521
3522#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3523pub struct DropExpression {
3524 pub(crate) syntax: SyntaxNode,
3525}
3526impl DropExpression {
3527 #[inline]
3528 pub fn if_exists(&self) -> Option<IfExists> {
3529 support::child(&self.syntax)
3530 }
3531 #[inline]
3532 pub fn drop_token(&self) -> Option<SyntaxToken> {
3533 support::token(&self.syntax, SyntaxKind::DROP_KW)
3534 }
3535 #[inline]
3536 pub fn expression_token(&self) -> Option<SyntaxToken> {
3537 support::token(&self.syntax, SyntaxKind::EXPRESSION_KW)
3538 }
3539}
3540
3541#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3542pub struct DropExtension {
3543 pub(crate) syntax: SyntaxNode,
3544}
3545impl DropExtension {
3546 #[inline]
3547 pub fn if_exists(&self) -> Option<IfExists> {
3548 support::child(&self.syntax)
3549 }
3550 #[inline]
3551 pub fn name_refs(&self) -> AstChildren<NameRef> {
3552 support::children(&self.syntax)
3553 }
3554 #[inline]
3555 pub fn drop_token(&self) -> Option<SyntaxToken> {
3556 support::token(&self.syntax, SyntaxKind::DROP_KW)
3557 }
3558 #[inline]
3559 pub fn extension_token(&self) -> Option<SyntaxToken> {
3560 support::token(&self.syntax, SyntaxKind::EXTENSION_KW)
3561 }
3562}
3563
3564#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3565pub struct DropForeignDataWrapper {
3566 pub(crate) syntax: SyntaxNode,
3567}
3568impl DropForeignDataWrapper {
3569 #[inline]
3570 pub fn if_exists(&self) -> Option<IfExists> {
3571 support::child(&self.syntax)
3572 }
3573 #[inline]
3574 pub fn name_ref(&self) -> Option<NameRef> {
3575 support::child(&self.syntax)
3576 }
3577 #[inline]
3578 pub fn data_token(&self) -> Option<SyntaxToken> {
3579 support::token(&self.syntax, SyntaxKind::DATA_KW)
3580 }
3581 #[inline]
3582 pub fn drop_token(&self) -> Option<SyntaxToken> {
3583 support::token(&self.syntax, SyntaxKind::DROP_KW)
3584 }
3585 #[inline]
3586 pub fn foreign_token(&self) -> Option<SyntaxToken> {
3587 support::token(&self.syntax, SyntaxKind::FOREIGN_KW)
3588 }
3589 #[inline]
3590 pub fn wrapper_token(&self) -> Option<SyntaxToken> {
3591 support::token(&self.syntax, SyntaxKind::WRAPPER_KW)
3592 }
3593}
3594
3595#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3596pub struct DropForeignTable {
3597 pub(crate) syntax: SyntaxNode,
3598}
3599impl DropForeignTable {
3600 #[inline]
3601 pub fn if_exists(&self) -> Option<IfExists> {
3602 support::child(&self.syntax)
3603 }
3604 #[inline]
3605 pub fn drop_token(&self) -> Option<SyntaxToken> {
3606 support::token(&self.syntax, SyntaxKind::DROP_KW)
3607 }
3608 #[inline]
3609 pub fn foreign_token(&self) -> Option<SyntaxToken> {
3610 support::token(&self.syntax, SyntaxKind::FOREIGN_KW)
3611 }
3612 #[inline]
3613 pub fn table_token(&self) -> Option<SyntaxToken> {
3614 support::token(&self.syntax, SyntaxKind::TABLE_KW)
3615 }
3616}
3617
3618#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3619pub struct DropFunction {
3620 pub(crate) syntax: SyntaxNode,
3621}
3622impl DropFunction {
3623 #[inline]
3624 pub fn if_exists(&self) -> Option<IfExists> {
3625 support::child(&self.syntax)
3626 }
3627 #[inline]
3628 pub fn drop_token(&self) -> Option<SyntaxToken> {
3629 support::token(&self.syntax, SyntaxKind::DROP_KW)
3630 }
3631 #[inline]
3632 pub fn function_token(&self) -> Option<SyntaxToken> {
3633 support::token(&self.syntax, SyntaxKind::FUNCTION_KW)
3634 }
3635}
3636
3637#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3638pub struct DropGroup {
3639 pub(crate) syntax: SyntaxNode,
3640}
3641impl DropGroup {
3642 #[inline]
3643 pub fn if_exists(&self) -> Option<IfExists> {
3644 support::child(&self.syntax)
3645 }
3646 #[inline]
3647 pub fn name_ref(&self) -> Option<NameRef> {
3648 support::child(&self.syntax)
3649 }
3650 #[inline]
3651 pub fn drop_token(&self) -> Option<SyntaxToken> {
3652 support::token(&self.syntax, SyntaxKind::DROP_KW)
3653 }
3654 #[inline]
3655 pub fn group_token(&self) -> Option<SyntaxToken> {
3656 support::token(&self.syntax, SyntaxKind::GROUP_KW)
3657 }
3658}
3659
3660#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3661pub struct DropIdentity {
3662 pub(crate) syntax: SyntaxNode,
3663}
3664impl DropIdentity {
3665 #[inline]
3666 pub fn if_exists(&self) -> Option<IfExists> {
3667 support::child(&self.syntax)
3668 }
3669 #[inline]
3670 pub fn drop_token(&self) -> Option<SyntaxToken> {
3671 support::token(&self.syntax, SyntaxKind::DROP_KW)
3672 }
3673 #[inline]
3674 pub fn identity_token(&self) -> Option<SyntaxToken> {
3675 support::token(&self.syntax, SyntaxKind::IDENTITY_KW)
3676 }
3677}
3678
3679#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3680pub struct DropIndex {
3681 pub(crate) syntax: SyntaxNode,
3682}
3683impl DropIndex {
3684 #[inline]
3685 pub fn if_exists(&self) -> Option<IfExists> {
3686 support::child(&self.syntax)
3687 }
3688 #[inline]
3689 pub fn paths(&self) -> AstChildren<Path> {
3690 support::children(&self.syntax)
3691 }
3692 #[inline]
3693 pub fn concurrently_token(&self) -> Option<SyntaxToken> {
3694 support::token(&self.syntax, SyntaxKind::CONCURRENTLY_KW)
3695 }
3696 #[inline]
3697 pub fn drop_token(&self) -> Option<SyntaxToken> {
3698 support::token(&self.syntax, SyntaxKind::DROP_KW)
3699 }
3700 #[inline]
3701 pub fn index_token(&self) -> Option<SyntaxToken> {
3702 support::token(&self.syntax, SyntaxKind::INDEX_KW)
3703 }
3704}
3705
3706#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3707pub struct DropLanguage {
3708 pub(crate) syntax: SyntaxNode,
3709}
3710impl DropLanguage {
3711 #[inline]
3712 pub fn if_exists(&self) -> Option<IfExists> {
3713 support::child(&self.syntax)
3714 }
3715 #[inline]
3716 pub fn name_ref(&self) -> Option<NameRef> {
3717 support::child(&self.syntax)
3718 }
3719 #[inline]
3720 pub fn drop_token(&self) -> Option<SyntaxToken> {
3721 support::token(&self.syntax, SyntaxKind::DROP_KW)
3722 }
3723 #[inline]
3724 pub fn language_token(&self) -> Option<SyntaxToken> {
3725 support::token(&self.syntax, SyntaxKind::LANGUAGE_KW)
3726 }
3727}
3728
3729#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3730pub struct DropMaterializedView {
3731 pub(crate) syntax: SyntaxNode,
3732}
3733impl DropMaterializedView {
3734 #[inline]
3735 pub fn if_exists(&self) -> Option<IfExists> {
3736 support::child(&self.syntax)
3737 }
3738 #[inline]
3739 pub fn drop_token(&self) -> Option<SyntaxToken> {
3740 support::token(&self.syntax, SyntaxKind::DROP_KW)
3741 }
3742 #[inline]
3743 pub fn materialized_token(&self) -> Option<SyntaxToken> {
3744 support::token(&self.syntax, SyntaxKind::MATERIALIZED_KW)
3745 }
3746 #[inline]
3747 pub fn view_token(&self) -> Option<SyntaxToken> {
3748 support::token(&self.syntax, SyntaxKind::VIEW_KW)
3749 }
3750}
3751
3752#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3753pub struct DropNotNull {
3754 pub(crate) syntax: SyntaxNode,
3755}
3756impl DropNotNull {
3757 #[inline]
3758 pub fn drop_token(&self) -> Option<SyntaxToken> {
3759 support::token(&self.syntax, SyntaxKind::DROP_KW)
3760 }
3761 #[inline]
3762 pub fn not_token(&self) -> Option<SyntaxToken> {
3763 support::token(&self.syntax, SyntaxKind::NOT_KW)
3764 }
3765 #[inline]
3766 pub fn null_token(&self) -> Option<SyntaxToken> {
3767 support::token(&self.syntax, SyntaxKind::NULL_KW)
3768 }
3769}
3770
3771#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3772pub struct DropOperator {
3773 pub(crate) syntax: SyntaxNode,
3774}
3775impl DropOperator {
3776 #[inline]
3777 pub fn if_exists(&self) -> Option<IfExists> {
3778 support::child(&self.syntax)
3779 }
3780 #[inline]
3781 pub fn drop_token(&self) -> Option<SyntaxToken> {
3782 support::token(&self.syntax, SyntaxKind::DROP_KW)
3783 }
3784 #[inline]
3785 pub fn operator_token(&self) -> Option<SyntaxToken> {
3786 support::token(&self.syntax, SyntaxKind::OPERATOR_KW)
3787 }
3788}
3789
3790#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3791pub struct DropOperatorClass {
3792 pub(crate) syntax: SyntaxNode,
3793}
3794impl DropOperatorClass {
3795 #[inline]
3796 pub fn if_exists(&self) -> Option<IfExists> {
3797 support::child(&self.syntax)
3798 }
3799 #[inline]
3800 pub fn name_ref(&self) -> Option<NameRef> {
3801 support::child(&self.syntax)
3802 }
3803 #[inline]
3804 pub fn class_token(&self) -> Option<SyntaxToken> {
3805 support::token(&self.syntax, SyntaxKind::CLASS_KW)
3806 }
3807 #[inline]
3808 pub fn drop_token(&self) -> Option<SyntaxToken> {
3809 support::token(&self.syntax, SyntaxKind::DROP_KW)
3810 }
3811 #[inline]
3812 pub fn operator_token(&self) -> Option<SyntaxToken> {
3813 support::token(&self.syntax, SyntaxKind::OPERATOR_KW)
3814 }
3815 #[inline]
3816 pub fn using_token(&self) -> Option<SyntaxToken> {
3817 support::token(&self.syntax, SyntaxKind::USING_KW)
3818 }
3819}
3820
3821#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3822pub struct DropOperatorFamily {
3823 pub(crate) syntax: SyntaxNode,
3824}
3825impl DropOperatorFamily {
3826 #[inline]
3827 pub fn if_exists(&self) -> Option<IfExists> {
3828 support::child(&self.syntax)
3829 }
3830 #[inline]
3831 pub fn drop_token(&self) -> Option<SyntaxToken> {
3832 support::token(&self.syntax, SyntaxKind::DROP_KW)
3833 }
3834 #[inline]
3835 pub fn family_token(&self) -> Option<SyntaxToken> {
3836 support::token(&self.syntax, SyntaxKind::FAMILY_KW)
3837 }
3838 #[inline]
3839 pub fn operator_token(&self) -> Option<SyntaxToken> {
3840 support::token(&self.syntax, SyntaxKind::OPERATOR_KW)
3841 }
3842}
3843
3844#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3845pub struct DropOwned {
3846 pub(crate) syntax: SyntaxNode,
3847}
3848impl DropOwned {
3849 #[inline]
3850 pub fn by_token(&self) -> Option<SyntaxToken> {
3851 support::token(&self.syntax, SyntaxKind::BY_KW)
3852 }
3853 #[inline]
3854 pub fn drop_token(&self) -> Option<SyntaxToken> {
3855 support::token(&self.syntax, SyntaxKind::DROP_KW)
3856 }
3857 #[inline]
3858 pub fn owned_token(&self) -> Option<SyntaxToken> {
3859 support::token(&self.syntax, SyntaxKind::OWNED_KW)
3860 }
3861}
3862
3863#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3864pub struct DropPolicy {
3865 pub(crate) syntax: SyntaxNode,
3866}
3867impl DropPolicy {
3868 #[inline]
3869 pub fn if_exists(&self) -> Option<IfExists> {
3870 support::child(&self.syntax)
3871 }
3872 #[inline]
3873 pub fn name_ref(&self) -> Option<NameRef> {
3874 support::child(&self.syntax)
3875 }
3876 #[inline]
3877 pub fn drop_token(&self) -> Option<SyntaxToken> {
3878 support::token(&self.syntax, SyntaxKind::DROP_KW)
3879 }
3880 #[inline]
3881 pub fn on_token(&self) -> Option<SyntaxToken> {
3882 support::token(&self.syntax, SyntaxKind::ON_KW)
3883 }
3884 #[inline]
3885 pub fn policy_token(&self) -> Option<SyntaxToken> {
3886 support::token(&self.syntax, SyntaxKind::POLICY_KW)
3887 }
3888}
3889
3890#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3891pub struct DropProcedure {
3892 pub(crate) syntax: SyntaxNode,
3893}
3894impl DropProcedure {
3895 #[inline]
3896 pub fn if_exists(&self) -> Option<IfExists> {
3897 support::child(&self.syntax)
3898 }
3899 #[inline]
3900 pub fn drop_token(&self) -> Option<SyntaxToken> {
3901 support::token(&self.syntax, SyntaxKind::DROP_KW)
3902 }
3903 #[inline]
3904 pub fn procedure_token(&self) -> Option<SyntaxToken> {
3905 support::token(&self.syntax, SyntaxKind::PROCEDURE_KW)
3906 }
3907}
3908
3909#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3910pub struct DropPublication {
3911 pub(crate) syntax: SyntaxNode,
3912}
3913impl DropPublication {
3914 #[inline]
3915 pub fn if_exists(&self) -> Option<IfExists> {
3916 support::child(&self.syntax)
3917 }
3918 #[inline]
3919 pub fn name_refs(&self) -> AstChildren<NameRef> {
3920 support::children(&self.syntax)
3921 }
3922 #[inline]
3923 pub fn drop_token(&self) -> Option<SyntaxToken> {
3924 support::token(&self.syntax, SyntaxKind::DROP_KW)
3925 }
3926 #[inline]
3927 pub fn publication_token(&self) -> Option<SyntaxToken> {
3928 support::token(&self.syntax, SyntaxKind::PUBLICATION_KW)
3929 }
3930}
3931
3932#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3933pub struct DropRole {
3934 pub(crate) syntax: SyntaxNode,
3935}
3936impl DropRole {
3937 #[inline]
3938 pub fn if_exists(&self) -> Option<IfExists> {
3939 support::child(&self.syntax)
3940 }
3941 #[inline]
3942 pub fn name_refs(&self) -> AstChildren<NameRef> {
3943 support::children(&self.syntax)
3944 }
3945 #[inline]
3946 pub fn drop_token(&self) -> Option<SyntaxToken> {
3947 support::token(&self.syntax, SyntaxKind::DROP_KW)
3948 }
3949 #[inline]
3950 pub fn role_token(&self) -> Option<SyntaxToken> {
3951 support::token(&self.syntax, SyntaxKind::ROLE_KW)
3952 }
3953}
3954
3955#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3956pub struct DropRoutine {
3957 pub(crate) syntax: SyntaxNode,
3958}
3959impl DropRoutine {
3960 #[inline]
3961 pub fn if_exists(&self) -> Option<IfExists> {
3962 support::child(&self.syntax)
3963 }
3964 #[inline]
3965 pub fn drop_token(&self) -> Option<SyntaxToken> {
3966 support::token(&self.syntax, SyntaxKind::DROP_KW)
3967 }
3968 #[inline]
3969 pub fn routine_token(&self) -> Option<SyntaxToken> {
3970 support::token(&self.syntax, SyntaxKind::ROUTINE_KW)
3971 }
3972}
3973
3974#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3975pub struct DropRule {
3976 pub(crate) syntax: SyntaxNode,
3977}
3978impl DropRule {
3979 #[inline]
3980 pub fn if_exists(&self) -> Option<IfExists> {
3981 support::child(&self.syntax)
3982 }
3983 #[inline]
3984 pub fn name_ref(&self) -> Option<NameRef> {
3985 support::child(&self.syntax)
3986 }
3987 #[inline]
3988 pub fn drop_token(&self) -> Option<SyntaxToken> {
3989 support::token(&self.syntax, SyntaxKind::DROP_KW)
3990 }
3991 #[inline]
3992 pub fn on_token(&self) -> Option<SyntaxToken> {
3993 support::token(&self.syntax, SyntaxKind::ON_KW)
3994 }
3995 #[inline]
3996 pub fn rule_token(&self) -> Option<SyntaxToken> {
3997 support::token(&self.syntax, SyntaxKind::RULE_KW)
3998 }
3999}
4000
4001#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4002pub struct DropSchema {
4003 pub(crate) syntax: SyntaxNode,
4004}
4005impl DropSchema {
4006 #[inline]
4007 pub fn if_exists(&self) -> Option<IfExists> {
4008 support::child(&self.syntax)
4009 }
4010 #[inline]
4011 pub fn drop_token(&self) -> Option<SyntaxToken> {
4012 support::token(&self.syntax, SyntaxKind::DROP_KW)
4013 }
4014 #[inline]
4015 pub fn schema_token(&self) -> Option<SyntaxToken> {
4016 support::token(&self.syntax, SyntaxKind::SCHEMA_KW)
4017 }
4018}
4019
4020#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4021pub struct DropSequence {
4022 pub(crate) syntax: SyntaxNode,
4023}
4024impl DropSequence {
4025 #[inline]
4026 pub fn if_exists(&self) -> Option<IfExists> {
4027 support::child(&self.syntax)
4028 }
4029 #[inline]
4030 pub fn name_refs(&self) -> AstChildren<NameRef> {
4031 support::children(&self.syntax)
4032 }
4033 #[inline]
4034 pub fn drop_token(&self) -> Option<SyntaxToken> {
4035 support::token(&self.syntax, SyntaxKind::DROP_KW)
4036 }
4037 #[inline]
4038 pub fn sequence_token(&self) -> Option<SyntaxToken> {
4039 support::token(&self.syntax, SyntaxKind::SEQUENCE_KW)
4040 }
4041}
4042
4043#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4044pub struct DropServer {
4045 pub(crate) syntax: SyntaxNode,
4046}
4047impl DropServer {
4048 #[inline]
4049 pub fn if_exists(&self) -> Option<IfExists> {
4050 support::child(&self.syntax)
4051 }
4052 #[inline]
4053 pub fn name_ref(&self) -> Option<NameRef> {
4054 support::child(&self.syntax)
4055 }
4056 #[inline]
4057 pub fn drop_token(&self) -> Option<SyntaxToken> {
4058 support::token(&self.syntax, SyntaxKind::DROP_KW)
4059 }
4060 #[inline]
4061 pub fn server_token(&self) -> Option<SyntaxToken> {
4062 support::token(&self.syntax, SyntaxKind::SERVER_KW)
4063 }
4064}
4065
4066#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4067pub struct DropStatistics {
4068 pub(crate) syntax: SyntaxNode,
4069}
4070impl DropStatistics {
4071 #[inline]
4072 pub fn if_exists(&self) -> Option<IfExists> {
4073 support::child(&self.syntax)
4074 }
4075 #[inline]
4076 pub fn name_ref(&self) -> Option<NameRef> {
4077 support::child(&self.syntax)
4078 }
4079 #[inline]
4080 pub fn drop_token(&self) -> Option<SyntaxToken> {
4081 support::token(&self.syntax, SyntaxKind::DROP_KW)
4082 }
4083 #[inline]
4084 pub fn statistics_token(&self) -> Option<SyntaxToken> {
4085 support::token(&self.syntax, SyntaxKind::STATISTICS_KW)
4086 }
4087}
4088
4089#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4090pub struct DropSubscription {
4091 pub(crate) syntax: SyntaxNode,
4092}
4093impl DropSubscription {
4094 #[inline]
4095 pub fn if_exists(&self) -> Option<IfExists> {
4096 support::child(&self.syntax)
4097 }
4098 #[inline]
4099 pub fn name_ref(&self) -> Option<NameRef> {
4100 support::child(&self.syntax)
4101 }
4102 #[inline]
4103 pub fn drop_token(&self) -> Option<SyntaxToken> {
4104 support::token(&self.syntax, SyntaxKind::DROP_KW)
4105 }
4106 #[inline]
4107 pub fn subscription_token(&self) -> Option<SyntaxToken> {
4108 support::token(&self.syntax, SyntaxKind::SUBSCRIPTION_KW)
4109 }
4110}
4111
4112#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4113pub struct DropTable {
4114 pub(crate) syntax: SyntaxNode,
4115}
4116impl DropTable {
4117 #[inline]
4118 pub fn if_exists(&self) -> Option<IfExists> {
4119 support::child(&self.syntax)
4120 }
4121 #[inline]
4122 pub fn path(&self) -> Option<Path> {
4123 support::child(&self.syntax)
4124 }
4125 #[inline]
4126 pub fn comma_token(&self) -> Option<SyntaxToken> {
4127 support::token(&self.syntax, SyntaxKind::COMMA)
4128 }
4129 #[inline]
4130 pub fn cascade_token(&self) -> Option<SyntaxToken> {
4131 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
4132 }
4133 #[inline]
4134 pub fn drop_token(&self) -> Option<SyntaxToken> {
4135 support::token(&self.syntax, SyntaxKind::DROP_KW)
4136 }
4137 #[inline]
4138 pub fn restrict_token(&self) -> Option<SyntaxToken> {
4139 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
4140 }
4141 #[inline]
4142 pub fn table_token(&self) -> Option<SyntaxToken> {
4143 support::token(&self.syntax, SyntaxKind::TABLE_KW)
4144 }
4145}
4146
4147#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4148pub struct DropTablespace {
4149 pub(crate) syntax: SyntaxNode,
4150}
4151impl DropTablespace {
4152 #[inline]
4153 pub fn if_exists(&self) -> Option<IfExists> {
4154 support::child(&self.syntax)
4155 }
4156 #[inline]
4157 pub fn name_ref(&self) -> Option<NameRef> {
4158 support::child(&self.syntax)
4159 }
4160 #[inline]
4161 pub fn drop_token(&self) -> Option<SyntaxToken> {
4162 support::token(&self.syntax, SyntaxKind::DROP_KW)
4163 }
4164 #[inline]
4165 pub fn tablespace_token(&self) -> Option<SyntaxToken> {
4166 support::token(&self.syntax, SyntaxKind::TABLESPACE_KW)
4167 }
4168}
4169
4170#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4171pub struct DropTextSearchConfig {
4172 pub(crate) syntax: SyntaxNode,
4173}
4174impl DropTextSearchConfig {
4175 #[inline]
4176 pub fn if_exists(&self) -> Option<IfExists> {
4177 support::child(&self.syntax)
4178 }
4179 #[inline]
4180 pub fn configuration_token(&self) -> Option<SyntaxToken> {
4181 support::token(&self.syntax, SyntaxKind::CONFIGURATION_KW)
4182 }
4183 #[inline]
4184 pub fn drop_token(&self) -> Option<SyntaxToken> {
4185 support::token(&self.syntax, SyntaxKind::DROP_KW)
4186 }
4187 #[inline]
4188 pub fn search_token(&self) -> Option<SyntaxToken> {
4189 support::token(&self.syntax, SyntaxKind::SEARCH_KW)
4190 }
4191 #[inline]
4192 pub fn text_token(&self) -> Option<SyntaxToken> {
4193 support::token(&self.syntax, SyntaxKind::TEXT_KW)
4194 }
4195}
4196
4197#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4198pub struct DropTextSearchDict {
4199 pub(crate) syntax: SyntaxNode,
4200}
4201impl DropTextSearchDict {
4202 #[inline]
4203 pub fn if_exists(&self) -> Option<IfExists> {
4204 support::child(&self.syntax)
4205 }
4206 #[inline]
4207 pub fn dictionary_token(&self) -> Option<SyntaxToken> {
4208 support::token(&self.syntax, SyntaxKind::DICTIONARY_KW)
4209 }
4210 #[inline]
4211 pub fn drop_token(&self) -> Option<SyntaxToken> {
4212 support::token(&self.syntax, SyntaxKind::DROP_KW)
4213 }
4214 #[inline]
4215 pub fn search_token(&self) -> Option<SyntaxToken> {
4216 support::token(&self.syntax, SyntaxKind::SEARCH_KW)
4217 }
4218 #[inline]
4219 pub fn text_token(&self) -> Option<SyntaxToken> {
4220 support::token(&self.syntax, SyntaxKind::TEXT_KW)
4221 }
4222}
4223
4224#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4225pub struct DropTextSearchParser {
4226 pub(crate) syntax: SyntaxNode,
4227}
4228impl DropTextSearchParser {
4229 #[inline]
4230 pub fn if_exists(&self) -> Option<IfExists> {
4231 support::child(&self.syntax)
4232 }
4233 #[inline]
4234 pub fn name_ref(&self) -> Option<NameRef> {
4235 support::child(&self.syntax)
4236 }
4237 #[inline]
4238 pub fn drop_token(&self) -> Option<SyntaxToken> {
4239 support::token(&self.syntax, SyntaxKind::DROP_KW)
4240 }
4241 #[inline]
4242 pub fn parser_token(&self) -> Option<SyntaxToken> {
4243 support::token(&self.syntax, SyntaxKind::PARSER_KW)
4244 }
4245 #[inline]
4246 pub fn search_token(&self) -> Option<SyntaxToken> {
4247 support::token(&self.syntax, SyntaxKind::SEARCH_KW)
4248 }
4249 #[inline]
4250 pub fn text_token(&self) -> Option<SyntaxToken> {
4251 support::token(&self.syntax, SyntaxKind::TEXT_KW)
4252 }
4253}
4254
4255#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4256pub struct DropTextSearchTemplate {
4257 pub(crate) syntax: SyntaxNode,
4258}
4259impl DropTextSearchTemplate {
4260 #[inline]
4261 pub fn if_exists(&self) -> Option<IfExists> {
4262 support::child(&self.syntax)
4263 }
4264 #[inline]
4265 pub fn drop_token(&self) -> Option<SyntaxToken> {
4266 support::token(&self.syntax, SyntaxKind::DROP_KW)
4267 }
4268 #[inline]
4269 pub fn search_token(&self) -> Option<SyntaxToken> {
4270 support::token(&self.syntax, SyntaxKind::SEARCH_KW)
4271 }
4272 #[inline]
4273 pub fn template_token(&self) -> Option<SyntaxToken> {
4274 support::token(&self.syntax, SyntaxKind::TEMPLATE_KW)
4275 }
4276 #[inline]
4277 pub fn text_token(&self) -> Option<SyntaxToken> {
4278 support::token(&self.syntax, SyntaxKind::TEXT_KW)
4279 }
4280}
4281
4282#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4283pub struct DropTransform {
4284 pub(crate) syntax: SyntaxNode,
4285}
4286impl DropTransform {
4287 #[inline]
4288 pub fn if_exists(&self) -> Option<IfExists> {
4289 support::child(&self.syntax)
4290 }
4291 #[inline]
4292 pub fn drop_token(&self) -> Option<SyntaxToken> {
4293 support::token(&self.syntax, SyntaxKind::DROP_KW)
4294 }
4295 #[inline]
4296 pub fn transform_token(&self) -> Option<SyntaxToken> {
4297 support::token(&self.syntax, SyntaxKind::TRANSFORM_KW)
4298 }
4299}
4300
4301#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4302pub struct DropTrigger {
4303 pub(crate) syntax: SyntaxNode,
4304}
4305impl DropTrigger {
4306 #[inline]
4307 pub fn if_exists(&self) -> Option<IfExists> {
4308 support::child(&self.syntax)
4309 }
4310 #[inline]
4311 pub fn name_ref(&self) -> Option<NameRef> {
4312 support::child(&self.syntax)
4313 }
4314 #[inline]
4315 pub fn drop_token(&self) -> Option<SyntaxToken> {
4316 support::token(&self.syntax, SyntaxKind::DROP_KW)
4317 }
4318 #[inline]
4319 pub fn on_token(&self) -> Option<SyntaxToken> {
4320 support::token(&self.syntax, SyntaxKind::ON_KW)
4321 }
4322 #[inline]
4323 pub fn trigger_token(&self) -> Option<SyntaxToken> {
4324 support::token(&self.syntax, SyntaxKind::TRIGGER_KW)
4325 }
4326}
4327
4328#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4329pub struct DropType {
4330 pub(crate) syntax: SyntaxNode,
4331}
4332impl DropType {
4333 #[inline]
4334 pub fn if_exists(&self) -> Option<IfExists> {
4335 support::child(&self.syntax)
4336 }
4337 #[inline]
4338 pub fn paths(&self) -> AstChildren<Path> {
4339 support::children(&self.syntax)
4340 }
4341 #[inline]
4342 pub fn cascade_token(&self) -> Option<SyntaxToken> {
4343 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
4344 }
4345 #[inline]
4346 pub fn drop_token(&self) -> Option<SyntaxToken> {
4347 support::token(&self.syntax, SyntaxKind::DROP_KW)
4348 }
4349 #[inline]
4350 pub fn restrict_token(&self) -> Option<SyntaxToken> {
4351 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
4352 }
4353 #[inline]
4354 pub fn type_token(&self) -> Option<SyntaxToken> {
4355 support::token(&self.syntax, SyntaxKind::TYPE_KW)
4356 }
4357}
4358
4359#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4360pub struct DropUser {
4361 pub(crate) syntax: SyntaxNode,
4362}
4363impl DropUser {
4364 #[inline]
4365 pub fn if_exists(&self) -> Option<IfExists> {
4366 support::child(&self.syntax)
4367 }
4368 #[inline]
4369 pub fn name_refs(&self) -> AstChildren<NameRef> {
4370 support::children(&self.syntax)
4371 }
4372 #[inline]
4373 pub fn drop_token(&self) -> Option<SyntaxToken> {
4374 support::token(&self.syntax, SyntaxKind::DROP_KW)
4375 }
4376 #[inline]
4377 pub fn user_token(&self) -> Option<SyntaxToken> {
4378 support::token(&self.syntax, SyntaxKind::USER_KW)
4379 }
4380}
4381
4382#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4383pub struct DropUserMapping {
4384 pub(crate) syntax: SyntaxNode,
4385}
4386impl DropUserMapping {
4387 #[inline]
4388 pub fn if_exists(&self) -> Option<IfExists> {
4389 support::child(&self.syntax)
4390 }
4391 #[inline]
4392 pub fn name_ref(&self) -> Option<NameRef> {
4393 support::child(&self.syntax)
4394 }
4395 #[inline]
4396 pub fn drop_token(&self) -> Option<SyntaxToken> {
4397 support::token(&self.syntax, SyntaxKind::DROP_KW)
4398 }
4399 #[inline]
4400 pub fn for_token(&self) -> Option<SyntaxToken> {
4401 support::token(&self.syntax, SyntaxKind::FOR_KW)
4402 }
4403 #[inline]
4404 pub fn mapping_token(&self) -> Option<SyntaxToken> {
4405 support::token(&self.syntax, SyntaxKind::MAPPING_KW)
4406 }
4407 #[inline]
4408 pub fn server_token(&self) -> Option<SyntaxToken> {
4409 support::token(&self.syntax, SyntaxKind::SERVER_KW)
4410 }
4411 #[inline]
4412 pub fn user_token(&self) -> Option<SyntaxToken> {
4413 support::token(&self.syntax, SyntaxKind::USER_KW)
4414 }
4415}
4416
4417#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4418pub struct DropView {
4419 pub(crate) syntax: SyntaxNode,
4420}
4421impl DropView {
4422 #[inline]
4423 pub fn if_exists(&self) -> Option<IfExists> {
4424 support::child(&self.syntax)
4425 }
4426 #[inline]
4427 pub fn drop_token(&self) -> Option<SyntaxToken> {
4428 support::token(&self.syntax, SyntaxKind::DROP_KW)
4429 }
4430 #[inline]
4431 pub fn view_token(&self) -> Option<SyntaxToken> {
4432 support::token(&self.syntax, SyntaxKind::VIEW_KW)
4433 }
4434}
4435
4436#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4437pub struct EnableAlwaysRule {
4438 pub(crate) syntax: SyntaxNode,
4439}
4440impl EnableAlwaysRule {
4441 #[inline]
4442 pub fn always_token(&self) -> Option<SyntaxToken> {
4443 support::token(&self.syntax, SyntaxKind::ALWAYS_KW)
4444 }
4445 #[inline]
4446 pub fn enable_token(&self) -> Option<SyntaxToken> {
4447 support::token(&self.syntax, SyntaxKind::ENABLE_KW)
4448 }
4449 #[inline]
4450 pub fn rule_token(&self) -> Option<SyntaxToken> {
4451 support::token(&self.syntax, SyntaxKind::RULE_KW)
4452 }
4453}
4454
4455#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4456pub struct EnableAlwaysTrigger {
4457 pub(crate) syntax: SyntaxNode,
4458}
4459impl EnableAlwaysTrigger {
4460 #[inline]
4461 pub fn always_token(&self) -> Option<SyntaxToken> {
4462 support::token(&self.syntax, SyntaxKind::ALWAYS_KW)
4463 }
4464 #[inline]
4465 pub fn enable_token(&self) -> Option<SyntaxToken> {
4466 support::token(&self.syntax, SyntaxKind::ENABLE_KW)
4467 }
4468 #[inline]
4469 pub fn trigger_token(&self) -> Option<SyntaxToken> {
4470 support::token(&self.syntax, SyntaxKind::TRIGGER_KW)
4471 }
4472}
4473
4474#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4475pub struct EnableReplicaRule {
4476 pub(crate) syntax: SyntaxNode,
4477}
4478impl EnableReplicaRule {
4479 #[inline]
4480 pub fn enable_token(&self) -> Option<SyntaxToken> {
4481 support::token(&self.syntax, SyntaxKind::ENABLE_KW)
4482 }
4483 #[inline]
4484 pub fn replica_token(&self) -> Option<SyntaxToken> {
4485 support::token(&self.syntax, SyntaxKind::REPLICA_KW)
4486 }
4487 #[inline]
4488 pub fn rule_token(&self) -> Option<SyntaxToken> {
4489 support::token(&self.syntax, SyntaxKind::RULE_KW)
4490 }
4491}
4492
4493#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4494pub struct EnableReplicaTrigger {
4495 pub(crate) syntax: SyntaxNode,
4496}
4497impl EnableReplicaTrigger {
4498 #[inline]
4499 pub fn enable_token(&self) -> Option<SyntaxToken> {
4500 support::token(&self.syntax, SyntaxKind::ENABLE_KW)
4501 }
4502 #[inline]
4503 pub fn replica_token(&self) -> Option<SyntaxToken> {
4504 support::token(&self.syntax, SyntaxKind::REPLICA_KW)
4505 }
4506 #[inline]
4507 pub fn trigger_token(&self) -> Option<SyntaxToken> {
4508 support::token(&self.syntax, SyntaxKind::TRIGGER_KW)
4509 }
4510}
4511
4512#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4513pub struct EnableRls {
4514 pub(crate) syntax: SyntaxNode,
4515}
4516impl EnableRls {
4517 #[inline]
4518 pub fn enable_token(&self) -> Option<SyntaxToken> {
4519 support::token(&self.syntax, SyntaxKind::ENABLE_KW)
4520 }
4521 #[inline]
4522 pub fn level_token(&self) -> Option<SyntaxToken> {
4523 support::token(&self.syntax, SyntaxKind::LEVEL_KW)
4524 }
4525 #[inline]
4526 pub fn row_token(&self) -> Option<SyntaxToken> {
4527 support::token(&self.syntax, SyntaxKind::ROW_KW)
4528 }
4529 #[inline]
4530 pub fn security_token(&self) -> Option<SyntaxToken> {
4531 support::token(&self.syntax, SyntaxKind::SECURITY_KW)
4532 }
4533}
4534
4535#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4536pub struct EnableRule {
4537 pub(crate) syntax: SyntaxNode,
4538}
4539impl EnableRule {
4540 #[inline]
4541 pub fn enable_token(&self) -> Option<SyntaxToken> {
4542 support::token(&self.syntax, SyntaxKind::ENABLE_KW)
4543 }
4544 #[inline]
4545 pub fn rule_token(&self) -> Option<SyntaxToken> {
4546 support::token(&self.syntax, SyntaxKind::RULE_KW)
4547 }
4548}
4549
4550#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4551pub struct EnableTrigger {
4552 pub(crate) syntax: SyntaxNode,
4553}
4554impl EnableTrigger {
4555 #[inline]
4556 pub fn enable_token(&self) -> Option<SyntaxToken> {
4557 support::token(&self.syntax, SyntaxKind::ENABLE_KW)
4558 }
4559 #[inline]
4560 pub fn trigger_token(&self) -> Option<SyntaxToken> {
4561 support::token(&self.syntax, SyntaxKind::TRIGGER_KW)
4562 }
4563}
4564
4565#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4566pub struct Enforced {
4567 pub(crate) syntax: SyntaxNode,
4568}
4569impl Enforced {
4570 #[inline]
4571 pub fn enforced_token(&self) -> Option<SyntaxToken> {
4572 support::token(&self.syntax, SyntaxKind::ENFORCED_KW)
4573 }
4574}
4575
4576#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4577pub struct ExcludeConstraint {
4578 pub(crate) syntax: SyntaxNode,
4579}
4580impl ExcludeConstraint {
4581 #[inline]
4582 pub fn constraint_exclusions(&self) -> Option<ConstraintExclusions> {
4583 support::child(&self.syntax)
4584 }
4585 #[inline]
4586 pub fn constraint_index_method(&self) -> Option<ConstraintIndexMethod> {
4587 support::child(&self.syntax)
4588 }
4589 #[inline]
4590 pub fn exclude_token(&self) -> Option<SyntaxToken> {
4591 support::token(&self.syntax, SyntaxKind::EXCLUDE_KW)
4592 }
4593}
4594
4595#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4596pub struct Execute {
4597 pub(crate) syntax: SyntaxNode,
4598}
4599impl Execute {
4600 #[inline]
4601 pub fn execute_token(&self) -> Option<SyntaxToken> {
4602 support::token(&self.syntax, SyntaxKind::EXECUTE_KW)
4603 }
4604}
4605
4606#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4607pub struct Explain {
4608 pub(crate) syntax: SyntaxNode,
4609}
4610impl Explain {
4611 #[inline]
4612 pub fn explain_token(&self) -> Option<SyntaxToken> {
4613 support::token(&self.syntax, SyntaxKind::EXPLAIN_KW)
4614 }
4615}
4616
4617#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4618pub struct FatArrow {
4619 pub(crate) syntax: SyntaxNode,
4620}
4621impl FatArrow {
4622 #[inline]
4623 pub fn eq_token(&self) -> Option<SyntaxToken> {
4624 support::token(&self.syntax, SyntaxKind::EQ)
4625 }
4626 #[inline]
4627 pub fn r_angle_token(&self) -> Option<SyntaxToken> {
4628 support::token(&self.syntax, SyntaxKind::R_ANGLE)
4629 }
4630}
4631
4632#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4633pub struct Fetch {
4634 pub(crate) syntax: SyntaxNode,
4635}
4636impl Fetch {
4637 #[inline]
4638 pub fn fetch_token(&self) -> Option<SyntaxToken> {
4639 support::token(&self.syntax, SyntaxKind::FETCH_KW)
4640 }
4641}
4642
4643#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4644pub struct FetchClause {
4645 pub(crate) syntax: SyntaxNode,
4646}
4647impl FetchClause {
4648 #[inline]
4649 pub fn fetch_token(&self) -> Option<SyntaxToken> {
4650 support::token(&self.syntax, SyntaxKind::FETCH_KW)
4651 }
4652}
4653
4654#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4655pub struct FieldExpr {
4656 pub(crate) syntax: SyntaxNode,
4657}
4658impl FieldExpr {
4659 #[inline]
4660 pub fn expr(&self) -> Option<Expr> {
4661 support::child(&self.syntax)
4662 }
4663 #[inline]
4664 pub fn name_ref(&self) -> Option<NameRef> {
4665 support::child(&self.syntax)
4666 }
4667 #[inline]
4668 pub fn star_token(&self) -> Option<SyntaxToken> {
4669 support::token(&self.syntax, SyntaxKind::STAR)
4670 }
4671 #[inline]
4672 pub fn dot_token(&self) -> Option<SyntaxToken> {
4673 support::token(&self.syntax, SyntaxKind::DOT)
4674 }
4675}
4676
4677#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4678pub struct FilterClause {
4679 pub(crate) syntax: SyntaxNode,
4680}
4681impl FilterClause {
4682 #[inline]
4683 pub fn expr(&self) -> Option<Expr> {
4684 support::child(&self.syntax)
4685 }
4686 #[inline]
4687 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
4688 support::token(&self.syntax, SyntaxKind::L_PAREN)
4689 }
4690 #[inline]
4691 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
4692 support::token(&self.syntax, SyntaxKind::R_PAREN)
4693 }
4694 #[inline]
4695 pub fn filter_token(&self) -> Option<SyntaxToken> {
4696 support::token(&self.syntax, SyntaxKind::FILTER_KW)
4697 }
4698 #[inline]
4699 pub fn where_token(&self) -> Option<SyntaxToken> {
4700 support::token(&self.syntax, SyntaxKind::WHERE_KW)
4701 }
4702}
4703
4704#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4705pub struct ForceRls {
4706 pub(crate) syntax: SyntaxNode,
4707}
4708impl ForceRls {
4709 #[inline]
4710 pub fn force_token(&self) -> Option<SyntaxToken> {
4711 support::token(&self.syntax, SyntaxKind::FORCE_KW)
4712 }
4713 #[inline]
4714 pub fn level_token(&self) -> Option<SyntaxToken> {
4715 support::token(&self.syntax, SyntaxKind::LEVEL_KW)
4716 }
4717 #[inline]
4718 pub fn row_token(&self) -> Option<SyntaxToken> {
4719 support::token(&self.syntax, SyntaxKind::ROW_KW)
4720 }
4721 #[inline]
4722 pub fn security_token(&self) -> Option<SyntaxToken> {
4723 support::token(&self.syntax, SyntaxKind::SECURITY_KW)
4724 }
4725}
4726
4727#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4728pub struct ForeignKeyConstraint {
4729 pub(crate) syntax: SyntaxNode,
4730}
4731impl ForeignKeyConstraint {
4732 #[inline]
4733 pub fn from_columns(&self) -> Option<ColumnList> {
4734 support::child(&self.syntax)
4735 }
4736 #[inline]
4737 pub fn match_type(&self) -> Option<MatchType> {
4738 support::child(&self.syntax)
4739 }
4740 #[inline]
4741 pub fn on_delete_action(&self) -> Option<OnDeleteAction> {
4742 support::child(&self.syntax)
4743 }
4744 #[inline]
4745 pub fn on_update_action(&self) -> Option<OnUpdateAction> {
4746 support::child(&self.syntax)
4747 }
4748 #[inline]
4749 pub fn path(&self) -> Option<Path> {
4750 support::child(&self.syntax)
4751 }
4752 #[inline]
4753 pub fn to_columns(&self) -> Option<ColumnList> {
4754 support::child(&self.syntax)
4755 }
4756 #[inline]
4757 pub fn foreign_token(&self) -> Option<SyntaxToken> {
4758 support::token(&self.syntax, SyntaxKind::FOREIGN_KW)
4759 }
4760 #[inline]
4761 pub fn key_token(&self) -> Option<SyntaxToken> {
4762 support::token(&self.syntax, SyntaxKind::KEY_KW)
4763 }
4764 #[inline]
4765 pub fn references_token(&self) -> Option<SyntaxToken> {
4766 support::token(&self.syntax, SyntaxKind::REFERENCES_KW)
4767 }
4768}
4769
4770#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4771pub struct FrameClause {
4772 pub(crate) syntax: SyntaxNode,
4773}
4774impl FrameClause {
4775 #[inline]
4776 pub fn groups_token(&self) -> Option<SyntaxToken> {
4777 support::token(&self.syntax, SyntaxKind::GROUPS_KW)
4778 }
4779 #[inline]
4780 pub fn range_token(&self) -> Option<SyntaxToken> {
4781 support::token(&self.syntax, SyntaxKind::RANGE_KW)
4782 }
4783 #[inline]
4784 pub fn rows_token(&self) -> Option<SyntaxToken> {
4785 support::token(&self.syntax, SyntaxKind::ROWS_KW)
4786 }
4787}
4788
4789#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4790pub struct FromClause {
4791 pub(crate) syntax: SyntaxNode,
4792}
4793impl FromClause {
4794 #[inline]
4795 pub fn from_items(&self) -> AstChildren<FromItem> {
4796 support::children(&self.syntax)
4797 }
4798 #[inline]
4799 pub fn join_exprs(&self) -> AstChildren<JoinExpr> {
4800 support::children(&self.syntax)
4801 }
4802 #[inline]
4803 pub fn from_token(&self) -> Option<SyntaxToken> {
4804 support::token(&self.syntax, SyntaxKind::FROM_KW)
4805 }
4806}
4807
4808#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4809pub struct FromItem {
4810 pub(crate) syntax: SyntaxNode,
4811}
4812impl FromItem {
4813 #[inline]
4814 pub fn alias(&self) -> Option<Alias> {
4815 support::child(&self.syntax)
4816 }
4817 #[inline]
4818 pub fn call_expr(&self) -> Option<CallExpr> {
4819 support::child(&self.syntax)
4820 }
4821 #[inline]
4822 pub fn name_ref(&self) -> Option<NameRef> {
4823 support::child(&self.syntax)
4824 }
4825 #[inline]
4826 pub fn paren_select(&self) -> Option<ParenSelect> {
4827 support::child(&self.syntax)
4828 }
4829 #[inline]
4830 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
4831 support::token(&self.syntax, SyntaxKind::L_PAREN)
4832 }
4833 #[inline]
4834 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
4835 support::token(&self.syntax, SyntaxKind::R_PAREN)
4836 }
4837 #[inline]
4838 pub fn from_token(&self) -> Option<SyntaxToken> {
4839 support::token(&self.syntax, SyntaxKind::FROM_KW)
4840 }
4841 #[inline]
4842 pub fn lateral_token(&self) -> Option<SyntaxToken> {
4843 support::token(&self.syntax, SyntaxKind::LATERAL_KW)
4844 }
4845 #[inline]
4846 pub fn only_token(&self) -> Option<SyntaxToken> {
4847 support::token(&self.syntax, SyntaxKind::ONLY_KW)
4848 }
4849 #[inline]
4850 pub fn rows_token(&self) -> Option<SyntaxToken> {
4851 support::token(&self.syntax, SyntaxKind::ROWS_KW)
4852 }
4853}
4854
4855#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4856pub struct FuncOptionList {
4857 pub(crate) syntax: SyntaxNode,
4858}
4859impl FuncOptionList {
4860 #[inline]
4861 pub fn options(&self) -> AstChildren<FuncOption> {
4862 support::children(&self.syntax)
4863 }
4864}
4865
4866#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4867pub struct GeneratedConstraint {
4868 pub(crate) syntax: SyntaxNode,
4869}
4870impl GeneratedConstraint {
4871 #[inline]
4872 pub fn expr(&self) -> Option<Expr> {
4873 support::child(&self.syntax)
4874 }
4875 #[inline]
4876 pub fn name_ref(&self) -> Option<NameRef> {
4877 support::child(&self.syntax)
4878 }
4879 #[inline]
4880 pub fn sequence_option_list(&self) -> Option<SequenceOptionList> {
4881 support::child(&self.syntax)
4882 }
4883 #[inline]
4884 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
4885 support::token(&self.syntax, SyntaxKind::L_PAREN)
4886 }
4887 #[inline]
4888 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
4889 support::token(&self.syntax, SyntaxKind::R_PAREN)
4890 }
4891 #[inline]
4892 pub fn always_token(&self) -> Option<SyntaxToken> {
4893 support::token(&self.syntax, SyntaxKind::ALWAYS_KW)
4894 }
4895 #[inline]
4896 pub fn as_token(&self) -> Option<SyntaxToken> {
4897 support::token(&self.syntax, SyntaxKind::AS_KW)
4898 }
4899 #[inline]
4900 pub fn by_token(&self) -> Option<SyntaxToken> {
4901 support::token(&self.syntax, SyntaxKind::BY_KW)
4902 }
4903 #[inline]
4904 pub fn constraint_token(&self) -> Option<SyntaxToken> {
4905 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
4906 }
4907 #[inline]
4908 pub fn default_token(&self) -> Option<SyntaxToken> {
4909 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
4910 }
4911 #[inline]
4912 pub fn generated_token(&self) -> Option<SyntaxToken> {
4913 support::token(&self.syntax, SyntaxKind::GENERATED_KW)
4914 }
4915 #[inline]
4916 pub fn identity_token(&self) -> Option<SyntaxToken> {
4917 support::token(&self.syntax, SyntaxKind::IDENTITY_KW)
4918 }
4919 #[inline]
4920 pub fn stored_token(&self) -> Option<SyntaxToken> {
4921 support::token(&self.syntax, SyntaxKind::STORED_KW)
4922 }
4923}
4924
4925#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4926pub struct Grant {
4927 pub(crate) syntax: SyntaxNode,
4928}
4929impl Grant {
4930 #[inline]
4931 pub fn grant_token(&self) -> Option<SyntaxToken> {
4932 support::token(&self.syntax, SyntaxKind::GRANT_KW)
4933 }
4934}
4935
4936#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4937pub struct GroupByClause {
4938 pub(crate) syntax: SyntaxNode,
4939}
4940impl GroupByClause {
4941 #[inline]
4942 pub fn grouping_cube(&self) -> Option<GroupingCube> {
4943 support::child(&self.syntax)
4944 }
4945 #[inline]
4946 pub fn grouping_expr(&self) -> Option<GroupingExpr> {
4947 support::child(&self.syntax)
4948 }
4949 #[inline]
4950 pub fn grouping_rollup(&self) -> Option<GroupingRollup> {
4951 support::child(&self.syntax)
4952 }
4953 #[inline]
4954 pub fn grouping_sets(&self) -> Option<GroupingSets> {
4955 support::child(&self.syntax)
4956 }
4957 #[inline]
4958 pub fn all_token(&self) -> Option<SyntaxToken> {
4959 support::token(&self.syntax, SyntaxKind::ALL_KW)
4960 }
4961 #[inline]
4962 pub fn by_token(&self) -> Option<SyntaxToken> {
4963 support::token(&self.syntax, SyntaxKind::BY_KW)
4964 }
4965 #[inline]
4966 pub fn distinct_token(&self) -> Option<SyntaxToken> {
4967 support::token(&self.syntax, SyntaxKind::DISTINCT_KW)
4968 }
4969 #[inline]
4970 pub fn group_token(&self) -> Option<SyntaxToken> {
4971 support::token(&self.syntax, SyntaxKind::GROUP_KW)
4972 }
4973}
4974
4975#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4976pub struct GroupingCube {
4977 pub(crate) syntax: SyntaxNode,
4978}
4979impl GroupingCube {
4980 #[inline]
4981 pub fn expr(&self) -> Option<Expr> {
4982 support::child(&self.syntax)
4983 }
4984 #[inline]
4985 pub fn cube_token(&self) -> Option<SyntaxToken> {
4986 support::token(&self.syntax, SyntaxKind::CUBE_KW)
4987 }
4988}
4989
4990#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4991pub struct GroupingExpr {
4992 pub(crate) syntax: SyntaxNode,
4993}
4994impl GroupingExpr {
4995 #[inline]
4996 pub fn expr(&self) -> Option<Expr> {
4997 support::child(&self.syntax)
4998 }
4999}
5000
5001#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5002pub struct GroupingRollup {
5003 pub(crate) syntax: SyntaxNode,
5004}
5005impl GroupingRollup {
5006 #[inline]
5007 pub fn expr(&self) -> Option<Expr> {
5008 support::child(&self.syntax)
5009 }
5010 #[inline]
5011 pub fn rollup_token(&self) -> Option<SyntaxToken> {
5012 support::token(&self.syntax, SyntaxKind::ROLLUP_KW)
5013 }
5014}
5015
5016#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5017pub struct GroupingSets {
5018 pub(crate) syntax: SyntaxNode,
5019}
5020impl GroupingSets {
5021 #[inline]
5022 pub fn expr(&self) -> Option<Expr> {
5023 support::child(&self.syntax)
5024 }
5025 #[inline]
5026 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
5027 support::token(&self.syntax, SyntaxKind::L_PAREN)
5028 }
5029 #[inline]
5030 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
5031 support::token(&self.syntax, SyntaxKind::R_PAREN)
5032 }
5033 #[inline]
5034 pub fn grouping_token(&self) -> Option<SyntaxToken> {
5035 support::token(&self.syntax, SyntaxKind::GROUPING_KW)
5036 }
5037 #[inline]
5038 pub fn sets_token(&self) -> Option<SyntaxToken> {
5039 support::token(&self.syntax, SyntaxKind::SETS_KW)
5040 }
5041}
5042
5043#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5044pub struct Gteq {
5045 pub(crate) syntax: SyntaxNode,
5046}
5047impl Gteq {
5048 #[inline]
5049 pub fn eq_token(&self) -> Option<SyntaxToken> {
5050 support::token(&self.syntax, SyntaxKind::EQ)
5051 }
5052 #[inline]
5053 pub fn r_angle_token(&self) -> Option<SyntaxToken> {
5054 support::token(&self.syntax, SyntaxKind::R_ANGLE)
5055 }
5056}
5057
5058#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5059pub struct HavingClause {
5060 pub(crate) syntax: SyntaxNode,
5061}
5062impl HavingClause {
5063 #[inline]
5064 pub fn having_token(&self) -> Option<SyntaxToken> {
5065 support::token(&self.syntax, SyntaxKind::HAVING_KW)
5066 }
5067}
5068
5069#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5070pub struct IfExists {
5071 pub(crate) syntax: SyntaxNode,
5072}
5073impl IfExists {
5074 #[inline]
5075 pub fn exists_token(&self) -> Option<SyntaxToken> {
5076 support::token(&self.syntax, SyntaxKind::EXISTS_KW)
5077 }
5078 #[inline]
5079 pub fn if_token(&self) -> Option<SyntaxToken> {
5080 support::token(&self.syntax, SyntaxKind::IF_KW)
5081 }
5082}
5083
5084#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5085pub struct IfNotExists {
5086 pub(crate) syntax: SyntaxNode,
5087}
5088impl IfNotExists {
5089 #[inline]
5090 pub fn exists_token(&self) -> Option<SyntaxToken> {
5091 support::token(&self.syntax, SyntaxKind::EXISTS_KW)
5092 }
5093 #[inline]
5094 pub fn if_token(&self) -> Option<SyntaxToken> {
5095 support::token(&self.syntax, SyntaxKind::IF_KW)
5096 }
5097 #[inline]
5098 pub fn not_token(&self) -> Option<SyntaxToken> {
5099 support::token(&self.syntax, SyntaxKind::NOT_KW)
5100 }
5101}
5102
5103#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5104pub struct ImportForeignSchema {
5105 pub(crate) syntax: SyntaxNode,
5106}
5107impl ImportForeignSchema {
5108 #[inline]
5109 pub fn name_ref(&self) -> Option<NameRef> {
5110 support::child(&self.syntax)
5111 }
5112 #[inline]
5113 pub fn foreign_token(&self) -> Option<SyntaxToken> {
5114 support::token(&self.syntax, SyntaxKind::FOREIGN_KW)
5115 }
5116 #[inline]
5117 pub fn import_token(&self) -> Option<SyntaxToken> {
5118 support::token(&self.syntax, SyntaxKind::IMPORT_KW)
5119 }
5120 #[inline]
5121 pub fn schema_token(&self) -> Option<SyntaxToken> {
5122 support::token(&self.syntax, SyntaxKind::SCHEMA_KW)
5123 }
5124}
5125
5126#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5127pub struct IndexExpr {
5128 pub(crate) syntax: SyntaxNode,
5129}
5130impl IndexExpr {
5131 #[inline]
5132 pub fn base(&self) -> Option<Expr> {
5133 support::child(&self.syntax)
5134 }
5135 #[inline]
5136 pub fn index(&self) -> Option<Expr> {
5137 support::child(&self.syntax)
5138 }
5139 #[inline]
5140 pub fn l_brack_token(&self) -> Option<SyntaxToken> {
5141 support::token(&self.syntax, SyntaxKind::L_BRACK)
5142 }
5143 #[inline]
5144 pub fn r_brack_token(&self) -> Option<SyntaxToken> {
5145 support::token(&self.syntax, SyntaxKind::R_BRACK)
5146 }
5147}
5148
5149#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5150pub struct IndexParams {
5151 pub(crate) syntax: SyntaxNode,
5152}
5153impl IndexParams {
5154 #[inline]
5155 pub fn partition_items(&self) -> AstChildren<PartitionItem> {
5156 support::children(&self.syntax)
5157 }
5158 #[inline]
5159 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
5160 support::token(&self.syntax, SyntaxKind::L_PAREN)
5161 }
5162 #[inline]
5163 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
5164 support::token(&self.syntax, SyntaxKind::R_PAREN)
5165 }
5166}
5167
5168#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5169pub struct Inherit {
5170 pub(crate) syntax: SyntaxNode,
5171}
5172impl Inherit {
5173 #[inline]
5174 pub fn inherit_token(&self) -> Option<SyntaxToken> {
5175 support::token(&self.syntax, SyntaxKind::INHERIT_KW)
5176 }
5177}
5178
5179#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5180pub struct Inherits {
5181 pub(crate) syntax: SyntaxNode,
5182}
5183impl Inherits {
5184 #[inline]
5185 pub fn paths(&self) -> AstChildren<Path> {
5186 support::children(&self.syntax)
5187 }
5188 #[inline]
5189 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
5190 support::token(&self.syntax, SyntaxKind::L_PAREN)
5191 }
5192 #[inline]
5193 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
5194 support::token(&self.syntax, SyntaxKind::R_PAREN)
5195 }
5196 #[inline]
5197 pub fn inherits_token(&self) -> Option<SyntaxToken> {
5198 support::token(&self.syntax, SyntaxKind::INHERITS_KW)
5199 }
5200}
5201
5202#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5203pub struct InitiallyDeferredConstraintOption {
5204 pub(crate) syntax: SyntaxNode,
5205}
5206impl InitiallyDeferredConstraintOption {
5207 #[inline]
5208 pub fn deferred_token(&self) -> Option<SyntaxToken> {
5209 support::token(&self.syntax, SyntaxKind::DEFERRED_KW)
5210 }
5211 #[inline]
5212 pub fn initially_token(&self) -> Option<SyntaxToken> {
5213 support::token(&self.syntax, SyntaxKind::INITIALLY_KW)
5214 }
5215}
5216
5217#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5218pub struct InitiallyImmediateConstraintOption {
5219 pub(crate) syntax: SyntaxNode,
5220}
5221impl InitiallyImmediateConstraintOption {
5222 #[inline]
5223 pub fn immediate_token(&self) -> Option<SyntaxToken> {
5224 support::token(&self.syntax, SyntaxKind::IMMEDIATE_KW)
5225 }
5226 #[inline]
5227 pub fn initially_token(&self) -> Option<SyntaxToken> {
5228 support::token(&self.syntax, SyntaxKind::INITIALLY_KW)
5229 }
5230}
5231
5232#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5233pub struct Insert {
5234 pub(crate) syntax: SyntaxNode,
5235}
5236impl Insert {
5237 #[inline]
5238 pub fn insert_token(&self) -> Option<SyntaxToken> {
5239 support::token(&self.syntax, SyntaxKind::INSERT_KW)
5240 }
5241}
5242
5243#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5244pub struct IntervalType {
5245 pub(crate) syntax: SyntaxNode,
5246}
5247impl IntervalType {
5248 #[inline]
5249 pub fn literal(&self) -> Option<Literal> {
5250 support::child(&self.syntax)
5251 }
5252 #[inline]
5253 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
5254 support::token(&self.syntax, SyntaxKind::L_PAREN)
5255 }
5256 #[inline]
5257 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
5258 support::token(&self.syntax, SyntaxKind::R_PAREN)
5259 }
5260 #[inline]
5261 pub fn day_token(&self) -> Option<SyntaxToken> {
5262 support::token(&self.syntax, SyntaxKind::DAY_KW)
5263 }
5264 #[inline]
5265 pub fn hour_token(&self) -> Option<SyntaxToken> {
5266 support::token(&self.syntax, SyntaxKind::HOUR_KW)
5267 }
5268 #[inline]
5269 pub fn interval_token(&self) -> Option<SyntaxToken> {
5270 support::token(&self.syntax, SyntaxKind::INTERVAL_KW)
5271 }
5272 #[inline]
5273 pub fn minute_token(&self) -> Option<SyntaxToken> {
5274 support::token(&self.syntax, SyntaxKind::MINUTE_KW)
5275 }
5276 #[inline]
5277 pub fn month_token(&self) -> Option<SyntaxToken> {
5278 support::token(&self.syntax, SyntaxKind::MONTH_KW)
5279 }
5280 #[inline]
5281 pub fn second_token(&self) -> Option<SyntaxToken> {
5282 support::token(&self.syntax, SyntaxKind::SECOND_KW)
5283 }
5284 #[inline]
5285 pub fn to_token(&self) -> Option<SyntaxToken> {
5286 support::token(&self.syntax, SyntaxKind::TO_KW)
5287 }
5288 #[inline]
5289 pub fn year_token(&self) -> Option<SyntaxToken> {
5290 support::token(&self.syntax, SyntaxKind::YEAR_KW)
5291 }
5292}
5293
5294#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5295pub struct IntoClause {
5296 pub(crate) syntax: SyntaxNode,
5297}
5298impl IntoClause {
5299 #[inline]
5300 pub fn into_token(&self) -> Option<SyntaxToken> {
5301 support::token(&self.syntax, SyntaxKind::INTO_KW)
5302 }
5303}
5304
5305#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5306pub struct IsDistinctFrom {
5307 pub(crate) syntax: SyntaxNode,
5308}
5309impl IsDistinctFrom {
5310 #[inline]
5311 pub fn distinct_token(&self) -> Option<SyntaxToken> {
5312 support::token(&self.syntax, SyntaxKind::DISTINCT_KW)
5313 }
5314 #[inline]
5315 pub fn from_token(&self) -> Option<SyntaxToken> {
5316 support::token(&self.syntax, SyntaxKind::FROM_KW)
5317 }
5318 #[inline]
5319 pub fn is_token(&self) -> Option<SyntaxToken> {
5320 support::token(&self.syntax, SyntaxKind::IS_KW)
5321 }
5322}
5323
5324#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5325pub struct IsJson {
5326 pub(crate) syntax: SyntaxNode,
5327}
5328impl IsJson {
5329 #[inline]
5330 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
5331 support::child(&self.syntax)
5332 }
5333 #[inline]
5334 pub fn is_token(&self) -> Option<SyntaxToken> {
5335 support::token(&self.syntax, SyntaxKind::IS_KW)
5336 }
5337 #[inline]
5338 pub fn json_token(&self) -> Option<SyntaxToken> {
5339 support::token(&self.syntax, SyntaxKind::JSON_KW)
5340 }
5341}
5342
5343#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5344pub struct IsJsonArray {
5345 pub(crate) syntax: SyntaxNode,
5346}
5347impl IsJsonArray {
5348 #[inline]
5349 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
5350 support::child(&self.syntax)
5351 }
5352 #[inline]
5353 pub fn array_token(&self) -> Option<SyntaxToken> {
5354 support::token(&self.syntax, SyntaxKind::ARRAY_KW)
5355 }
5356 #[inline]
5357 pub fn is_token(&self) -> Option<SyntaxToken> {
5358 support::token(&self.syntax, SyntaxKind::IS_KW)
5359 }
5360 #[inline]
5361 pub fn json_token(&self) -> Option<SyntaxToken> {
5362 support::token(&self.syntax, SyntaxKind::JSON_KW)
5363 }
5364}
5365
5366#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5367pub struct IsJsonObject {
5368 pub(crate) syntax: SyntaxNode,
5369}
5370impl IsJsonObject {
5371 #[inline]
5372 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
5373 support::child(&self.syntax)
5374 }
5375 #[inline]
5376 pub fn is_token(&self) -> Option<SyntaxToken> {
5377 support::token(&self.syntax, SyntaxKind::IS_KW)
5378 }
5379 #[inline]
5380 pub fn json_token(&self) -> Option<SyntaxToken> {
5381 support::token(&self.syntax, SyntaxKind::JSON_KW)
5382 }
5383 #[inline]
5384 pub fn object_token(&self) -> Option<SyntaxToken> {
5385 support::token(&self.syntax, SyntaxKind::OBJECT_KW)
5386 }
5387}
5388
5389#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5390pub struct IsJsonScalar {
5391 pub(crate) syntax: SyntaxNode,
5392}
5393impl IsJsonScalar {
5394 #[inline]
5395 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
5396 support::child(&self.syntax)
5397 }
5398 #[inline]
5399 pub fn is_token(&self) -> Option<SyntaxToken> {
5400 support::token(&self.syntax, SyntaxKind::IS_KW)
5401 }
5402 #[inline]
5403 pub fn json_token(&self) -> Option<SyntaxToken> {
5404 support::token(&self.syntax, SyntaxKind::JSON_KW)
5405 }
5406 #[inline]
5407 pub fn scalar_token(&self) -> Option<SyntaxToken> {
5408 support::token(&self.syntax, SyntaxKind::SCALAR_KW)
5409 }
5410}
5411
5412#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5413pub struct IsJsonValue {
5414 pub(crate) syntax: SyntaxNode,
5415}
5416impl IsJsonValue {
5417 #[inline]
5418 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
5419 support::child(&self.syntax)
5420 }
5421 #[inline]
5422 pub fn is_token(&self) -> Option<SyntaxToken> {
5423 support::token(&self.syntax, SyntaxKind::IS_KW)
5424 }
5425 #[inline]
5426 pub fn json_token(&self) -> Option<SyntaxToken> {
5427 support::token(&self.syntax, SyntaxKind::JSON_KW)
5428 }
5429 #[inline]
5430 pub fn value_token(&self) -> Option<SyntaxToken> {
5431 support::token(&self.syntax, SyntaxKind::VALUE_KW)
5432 }
5433}
5434
5435#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5436pub struct IsNormalized {
5437 pub(crate) syntax: SyntaxNode,
5438}
5439impl IsNormalized {
5440 #[inline]
5441 pub fn unicode_normal_form(&self) -> Option<UnicodeNormalForm> {
5442 support::child(&self.syntax)
5443 }
5444 #[inline]
5445 pub fn is_token(&self) -> Option<SyntaxToken> {
5446 support::token(&self.syntax, SyntaxKind::IS_KW)
5447 }
5448 #[inline]
5449 pub fn normalized_token(&self) -> Option<SyntaxToken> {
5450 support::token(&self.syntax, SyntaxKind::NORMALIZED_KW)
5451 }
5452}
5453
5454#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5455pub struct IsNot {
5456 pub(crate) syntax: SyntaxNode,
5457}
5458impl IsNot {
5459 #[inline]
5460 pub fn is_token(&self) -> Option<SyntaxToken> {
5461 support::token(&self.syntax, SyntaxKind::IS_KW)
5462 }
5463 #[inline]
5464 pub fn not_token(&self) -> Option<SyntaxToken> {
5465 support::token(&self.syntax, SyntaxKind::NOT_KW)
5466 }
5467}
5468
5469#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5470pub struct IsNotDistinctFrom {
5471 pub(crate) syntax: SyntaxNode,
5472}
5473impl IsNotDistinctFrom {
5474 #[inline]
5475 pub fn distinct_token(&self) -> Option<SyntaxToken> {
5476 support::token(&self.syntax, SyntaxKind::DISTINCT_KW)
5477 }
5478 #[inline]
5479 pub fn from_token(&self) -> Option<SyntaxToken> {
5480 support::token(&self.syntax, SyntaxKind::FROM_KW)
5481 }
5482 #[inline]
5483 pub fn is_token(&self) -> Option<SyntaxToken> {
5484 support::token(&self.syntax, SyntaxKind::IS_KW)
5485 }
5486 #[inline]
5487 pub fn not_token(&self) -> Option<SyntaxToken> {
5488 support::token(&self.syntax, SyntaxKind::NOT_KW)
5489 }
5490}
5491
5492#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5493pub struct IsNotJson {
5494 pub(crate) syntax: SyntaxNode,
5495}
5496impl IsNotJson {
5497 #[inline]
5498 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
5499 support::child(&self.syntax)
5500 }
5501 #[inline]
5502 pub fn is_token(&self) -> Option<SyntaxToken> {
5503 support::token(&self.syntax, SyntaxKind::IS_KW)
5504 }
5505 #[inline]
5506 pub fn json_token(&self) -> Option<SyntaxToken> {
5507 support::token(&self.syntax, SyntaxKind::JSON_KW)
5508 }
5509 #[inline]
5510 pub fn not_token(&self) -> Option<SyntaxToken> {
5511 support::token(&self.syntax, SyntaxKind::NOT_KW)
5512 }
5513}
5514
5515#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5516pub struct IsNotJsonArray {
5517 pub(crate) syntax: SyntaxNode,
5518}
5519impl IsNotJsonArray {
5520 #[inline]
5521 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
5522 support::child(&self.syntax)
5523 }
5524 #[inline]
5525 pub fn array_token(&self) -> Option<SyntaxToken> {
5526 support::token(&self.syntax, SyntaxKind::ARRAY_KW)
5527 }
5528 #[inline]
5529 pub fn is_token(&self) -> Option<SyntaxToken> {
5530 support::token(&self.syntax, SyntaxKind::IS_KW)
5531 }
5532 #[inline]
5533 pub fn json_token(&self) -> Option<SyntaxToken> {
5534 support::token(&self.syntax, SyntaxKind::JSON_KW)
5535 }
5536 #[inline]
5537 pub fn not_token(&self) -> Option<SyntaxToken> {
5538 support::token(&self.syntax, SyntaxKind::NOT_KW)
5539 }
5540}
5541
5542#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5543pub struct IsNotJsonObject {
5544 pub(crate) syntax: SyntaxNode,
5545}
5546impl IsNotJsonObject {
5547 #[inline]
5548 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
5549 support::child(&self.syntax)
5550 }
5551 #[inline]
5552 pub fn is_token(&self) -> Option<SyntaxToken> {
5553 support::token(&self.syntax, SyntaxKind::IS_KW)
5554 }
5555 #[inline]
5556 pub fn json_token(&self) -> Option<SyntaxToken> {
5557 support::token(&self.syntax, SyntaxKind::JSON_KW)
5558 }
5559 #[inline]
5560 pub fn not_token(&self) -> Option<SyntaxToken> {
5561 support::token(&self.syntax, SyntaxKind::NOT_KW)
5562 }
5563 #[inline]
5564 pub fn object_token(&self) -> Option<SyntaxToken> {
5565 support::token(&self.syntax, SyntaxKind::OBJECT_KW)
5566 }
5567}
5568
5569#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5570pub struct IsNotJsonScalar {
5571 pub(crate) syntax: SyntaxNode,
5572}
5573impl IsNotJsonScalar {
5574 #[inline]
5575 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
5576 support::child(&self.syntax)
5577 }
5578 #[inline]
5579 pub fn is_token(&self) -> Option<SyntaxToken> {
5580 support::token(&self.syntax, SyntaxKind::IS_KW)
5581 }
5582 #[inline]
5583 pub fn json_token(&self) -> Option<SyntaxToken> {
5584 support::token(&self.syntax, SyntaxKind::JSON_KW)
5585 }
5586 #[inline]
5587 pub fn not_token(&self) -> Option<SyntaxToken> {
5588 support::token(&self.syntax, SyntaxKind::NOT_KW)
5589 }
5590 #[inline]
5591 pub fn scalar_token(&self) -> Option<SyntaxToken> {
5592 support::token(&self.syntax, SyntaxKind::SCALAR_KW)
5593 }
5594}
5595
5596#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5597pub struct IsNotJsonValue {
5598 pub(crate) syntax: SyntaxNode,
5599}
5600impl IsNotJsonValue {
5601 #[inline]
5602 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
5603 support::child(&self.syntax)
5604 }
5605 #[inline]
5606 pub fn is_token(&self) -> Option<SyntaxToken> {
5607 support::token(&self.syntax, SyntaxKind::IS_KW)
5608 }
5609 #[inline]
5610 pub fn json_token(&self) -> Option<SyntaxToken> {
5611 support::token(&self.syntax, SyntaxKind::JSON_KW)
5612 }
5613 #[inline]
5614 pub fn not_token(&self) -> Option<SyntaxToken> {
5615 support::token(&self.syntax, SyntaxKind::NOT_KW)
5616 }
5617 #[inline]
5618 pub fn value_token(&self) -> Option<SyntaxToken> {
5619 support::token(&self.syntax, SyntaxKind::VALUE_KW)
5620 }
5621}
5622
5623#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5624pub struct IsNotNormalized {
5625 pub(crate) syntax: SyntaxNode,
5626}
5627impl IsNotNormalized {
5628 #[inline]
5629 pub fn unicode_normal_form(&self) -> Option<UnicodeNormalForm> {
5630 support::child(&self.syntax)
5631 }
5632 #[inline]
5633 pub fn is_token(&self) -> Option<SyntaxToken> {
5634 support::token(&self.syntax, SyntaxKind::IS_KW)
5635 }
5636 #[inline]
5637 pub fn normalized_token(&self) -> Option<SyntaxToken> {
5638 support::token(&self.syntax, SyntaxKind::NORMALIZED_KW)
5639 }
5640 #[inline]
5641 pub fn not_token(&self) -> Option<SyntaxToken> {
5642 support::token(&self.syntax, SyntaxKind::NOT_KW)
5643 }
5644}
5645
5646#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5647pub struct Join {
5648 pub(crate) syntax: SyntaxNode,
5649}
5650impl Join {
5651 #[inline]
5652 pub fn from_item(&self) -> Option<FromItem> {
5653 support::child(&self.syntax)
5654 }
5655 #[inline]
5656 pub fn join_type(&self) -> Option<JoinType> {
5657 support::child(&self.syntax)
5658 }
5659 #[inline]
5660 pub fn on_clause(&self) -> Option<OnClause> {
5661 support::child(&self.syntax)
5662 }
5663 #[inline]
5664 pub fn using_clause(&self) -> Option<JoinUsingClause> {
5665 support::child(&self.syntax)
5666 }
5667 #[inline]
5668 pub fn natural_token(&self) -> Option<SyntaxToken> {
5669 support::token(&self.syntax, SyntaxKind::NATURAL_KW)
5670 }
5671}
5672
5673#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5674pub struct JoinCross {
5675 pub(crate) syntax: SyntaxNode,
5676}
5677impl JoinCross {
5678 #[inline]
5679 pub fn cross_token(&self) -> Option<SyntaxToken> {
5680 support::token(&self.syntax, SyntaxKind::CROSS_KW)
5681 }
5682 #[inline]
5683 pub fn join_token(&self) -> Option<SyntaxToken> {
5684 support::token(&self.syntax, SyntaxKind::JOIN_KW)
5685 }
5686}
5687
5688#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5689pub struct JoinExpr {
5690 pub(crate) syntax: SyntaxNode,
5691}
5692impl JoinExpr {
5693 #[inline]
5694 pub fn from_item(&self) -> Option<FromItem> {
5695 support::child(&self.syntax)
5696 }
5697 #[inline]
5698 pub fn join(&self) -> Option<Join> {
5699 support::child(&self.syntax)
5700 }
5701 #[inline]
5702 pub fn join_expr(&self) -> Option<JoinExpr> {
5703 support::child(&self.syntax)
5704 }
5705}
5706
5707#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5708pub struct JoinFull {
5709 pub(crate) syntax: SyntaxNode,
5710}
5711impl JoinFull {
5712 #[inline]
5713 pub fn full_token(&self) -> Option<SyntaxToken> {
5714 support::token(&self.syntax, SyntaxKind::FULL_KW)
5715 }
5716 #[inline]
5717 pub fn join_token(&self) -> Option<SyntaxToken> {
5718 support::token(&self.syntax, SyntaxKind::JOIN_KW)
5719 }
5720 #[inline]
5721 pub fn outer_token(&self) -> Option<SyntaxToken> {
5722 support::token(&self.syntax, SyntaxKind::OUTER_KW)
5723 }
5724}
5725
5726#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5727pub struct JoinInner {
5728 pub(crate) syntax: SyntaxNode,
5729}
5730impl JoinInner {
5731 #[inline]
5732 pub fn inner_token(&self) -> Option<SyntaxToken> {
5733 support::token(&self.syntax, SyntaxKind::INNER_KW)
5734 }
5735 #[inline]
5736 pub fn join_token(&self) -> Option<SyntaxToken> {
5737 support::token(&self.syntax, SyntaxKind::JOIN_KW)
5738 }
5739}
5740
5741#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5742pub struct JoinLeft {
5743 pub(crate) syntax: SyntaxNode,
5744}
5745impl JoinLeft {
5746 #[inline]
5747 pub fn join_token(&self) -> Option<SyntaxToken> {
5748 support::token(&self.syntax, SyntaxKind::JOIN_KW)
5749 }
5750 #[inline]
5751 pub fn left_token(&self) -> Option<SyntaxToken> {
5752 support::token(&self.syntax, SyntaxKind::LEFT_KW)
5753 }
5754 #[inline]
5755 pub fn outer_token(&self) -> Option<SyntaxToken> {
5756 support::token(&self.syntax, SyntaxKind::OUTER_KW)
5757 }
5758}
5759
5760#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5761pub struct JoinRight {
5762 pub(crate) syntax: SyntaxNode,
5763}
5764impl JoinRight {
5765 #[inline]
5766 pub fn join_token(&self) -> Option<SyntaxToken> {
5767 support::token(&self.syntax, SyntaxKind::JOIN_KW)
5768 }
5769 #[inline]
5770 pub fn outer_token(&self) -> Option<SyntaxToken> {
5771 support::token(&self.syntax, SyntaxKind::OUTER_KW)
5772 }
5773 #[inline]
5774 pub fn right_token(&self) -> Option<SyntaxToken> {
5775 support::token(&self.syntax, SyntaxKind::RIGHT_KW)
5776 }
5777}
5778
5779#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5780pub struct JoinUsingClause {
5781 pub(crate) syntax: SyntaxNode,
5782}
5783impl JoinUsingClause {
5784 #[inline]
5785 pub fn alias(&self) -> Option<Alias> {
5786 support::child(&self.syntax)
5787 }
5788 #[inline]
5789 pub fn column_list(&self) -> Option<ColumnList> {
5790 support::child(&self.syntax)
5791 }
5792 #[inline]
5793 pub fn using_token(&self) -> Option<SyntaxToken> {
5794 support::token(&self.syntax, SyntaxKind::USING_KW)
5795 }
5796}
5797
5798#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5799pub struct JsonBehaviorDefault {
5800 pub(crate) syntax: SyntaxNode,
5801}
5802impl JsonBehaviorDefault {
5803 #[inline]
5804 pub fn expr(&self) -> Option<Expr> {
5805 support::child(&self.syntax)
5806 }
5807 #[inline]
5808 pub fn default_token(&self) -> Option<SyntaxToken> {
5809 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
5810 }
5811}
5812
5813#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5814pub struct JsonBehaviorEmptyArray {
5815 pub(crate) syntax: SyntaxNode,
5816}
5817impl JsonBehaviorEmptyArray {
5818 #[inline]
5819 pub fn array_token(&self) -> Option<SyntaxToken> {
5820 support::token(&self.syntax, SyntaxKind::ARRAY_KW)
5821 }
5822 #[inline]
5823 pub fn empty_token(&self) -> Option<SyntaxToken> {
5824 support::token(&self.syntax, SyntaxKind::EMPTY_KW)
5825 }
5826}
5827
5828#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5829pub struct JsonBehaviorEmptyObject {
5830 pub(crate) syntax: SyntaxNode,
5831}
5832impl JsonBehaviorEmptyObject {
5833 #[inline]
5834 pub fn empty_token(&self) -> Option<SyntaxToken> {
5835 support::token(&self.syntax, SyntaxKind::EMPTY_KW)
5836 }
5837 #[inline]
5838 pub fn object_token(&self) -> Option<SyntaxToken> {
5839 support::token(&self.syntax, SyntaxKind::OBJECT_KW)
5840 }
5841}
5842
5843#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5844pub struct JsonBehaviorError {
5845 pub(crate) syntax: SyntaxNode,
5846}
5847impl JsonBehaviorError {
5848 #[inline]
5849 pub fn error_token(&self) -> Option<SyntaxToken> {
5850 support::token(&self.syntax, SyntaxKind::ERROR_KW)
5851 }
5852}
5853
5854#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5855pub struct JsonBehaviorFalse {
5856 pub(crate) syntax: SyntaxNode,
5857}
5858impl JsonBehaviorFalse {
5859 #[inline]
5860 pub fn false_token(&self) -> Option<SyntaxToken> {
5861 support::token(&self.syntax, SyntaxKind::FALSE_KW)
5862 }
5863}
5864
5865#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5866pub struct JsonBehaviorNull {
5867 pub(crate) syntax: SyntaxNode,
5868}
5869impl JsonBehaviorNull {
5870 #[inline]
5871 pub fn null_token(&self) -> Option<SyntaxToken> {
5872 support::token(&self.syntax, SyntaxKind::NULL_KW)
5873 }
5874}
5875
5876#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5877pub struct JsonBehaviorTrue {
5878 pub(crate) syntax: SyntaxNode,
5879}
5880impl JsonBehaviorTrue {
5881 #[inline]
5882 pub fn true_token(&self) -> Option<SyntaxToken> {
5883 support::token(&self.syntax, SyntaxKind::TRUE_KW)
5884 }
5885}
5886
5887#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5888pub struct JsonBehaviorUnknown {
5889 pub(crate) syntax: SyntaxNode,
5890}
5891impl JsonBehaviorUnknown {
5892 #[inline]
5893 pub fn unknown_token(&self) -> Option<SyntaxToken> {
5894 support::token(&self.syntax, SyntaxKind::UNKNOWN_KW)
5895 }
5896}
5897
5898#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5899pub struct JsonFormatClause {
5900 pub(crate) syntax: SyntaxNode,
5901}
5902impl JsonFormatClause {
5903 #[inline]
5904 pub fn name(&self) -> Option<Name> {
5905 support::child(&self.syntax)
5906 }
5907 #[inline]
5908 pub fn encoding_token(&self) -> Option<SyntaxToken> {
5909 support::token(&self.syntax, SyntaxKind::ENCODING_KW)
5910 }
5911 #[inline]
5912 pub fn format_token(&self) -> Option<SyntaxToken> {
5913 support::token(&self.syntax, SyntaxKind::FORMAT_KW)
5914 }
5915 #[inline]
5916 pub fn json_token(&self) -> Option<SyntaxToken> {
5917 support::token(&self.syntax, SyntaxKind::JSON_KW)
5918 }
5919}
5920
5921#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5922pub struct JsonKeyValue {
5923 pub(crate) syntax: SyntaxNode,
5924}
5925impl JsonKeyValue {
5926 #[inline]
5927 pub fn expr(&self) -> Option<Expr> {
5928 support::child(&self.syntax)
5929 }
5930 #[inline]
5931 pub fn json_value_expr(&self) -> Option<JsonValueExpr> {
5932 support::child(&self.syntax)
5933 }
5934 #[inline]
5935 pub fn colon_token(&self) -> Option<SyntaxToken> {
5936 support::token(&self.syntax, SyntaxKind::COLON)
5937 }
5938}
5939
5940#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5941pub struct JsonKeysUniqueClause {
5942 pub(crate) syntax: SyntaxNode,
5943}
5944impl JsonKeysUniqueClause {
5945 #[inline]
5946 pub fn keys_token(&self) -> Option<SyntaxToken> {
5947 support::token(&self.syntax, SyntaxKind::KEYS_KW)
5948 }
5949 #[inline]
5950 pub fn unique_token(&self) -> Option<SyntaxToken> {
5951 support::token(&self.syntax, SyntaxKind::UNIQUE_KW)
5952 }
5953 #[inline]
5954 pub fn with_token(&self) -> Option<SyntaxToken> {
5955 support::token(&self.syntax, SyntaxKind::WITH_KW)
5956 }
5957 #[inline]
5958 pub fn without_token(&self) -> Option<SyntaxToken> {
5959 support::token(&self.syntax, SyntaxKind::WITHOUT_KW)
5960 }
5961}
5962
5963#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5964pub struct JsonNullClause {
5965 pub(crate) syntax: SyntaxNode,
5966}
5967impl JsonNullClause {
5968 #[inline]
5969 pub fn absent_token(&self) -> Option<SyntaxToken> {
5970 support::token(&self.syntax, SyntaxKind::ABSENT_KW)
5971 }
5972 #[inline]
5973 pub fn null_token(&self) -> Option<SyntaxToken> {
5974 support::token(&self.syntax, SyntaxKind::NULL_KW)
5975 }
5976 #[inline]
5977 pub fn on_token(&self) -> Option<SyntaxToken> {
5978 support::token(&self.syntax, SyntaxKind::ON_KW)
5979 }
5980}
5981
5982#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5983pub struct JsonOnEmptyClause {
5984 pub(crate) syntax: SyntaxNode,
5985}
5986impl JsonOnEmptyClause {
5987 #[inline]
5988 pub fn json_behavior(&self) -> Option<JsonBehavior> {
5989 support::child(&self.syntax)
5990 }
5991 #[inline]
5992 pub fn empty_token(&self) -> Option<SyntaxToken> {
5993 support::token(&self.syntax, SyntaxKind::EMPTY_KW)
5994 }
5995 #[inline]
5996 pub fn on_token(&self) -> Option<SyntaxToken> {
5997 support::token(&self.syntax, SyntaxKind::ON_KW)
5998 }
5999}
6000
6001#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6002pub struct JsonOnErrorClause {
6003 pub(crate) syntax: SyntaxNode,
6004}
6005impl JsonOnErrorClause {
6006 #[inline]
6007 pub fn json_behavior(&self) -> Option<JsonBehavior> {
6008 support::child(&self.syntax)
6009 }
6010 #[inline]
6011 pub fn error_token(&self) -> Option<SyntaxToken> {
6012 support::token(&self.syntax, SyntaxKind::ERROR_KW)
6013 }
6014 #[inline]
6015 pub fn on_token(&self) -> Option<SyntaxToken> {
6016 support::token(&self.syntax, SyntaxKind::ON_KW)
6017 }
6018}
6019
6020#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6021pub struct JsonPassingArg {
6022 pub(crate) syntax: SyntaxNode,
6023}
6024impl JsonPassingArg {
6025 #[inline]
6026 pub fn expr(&self) -> Option<Expr> {
6027 support::child(&self.syntax)
6028 }
6029 #[inline]
6030 pub fn json_format_clause(&self) -> Option<JsonFormatClause> {
6031 support::child(&self.syntax)
6032 }
6033 #[inline]
6034 pub fn name(&self) -> Option<Name> {
6035 support::child(&self.syntax)
6036 }
6037 #[inline]
6038 pub fn as_token(&self) -> Option<SyntaxToken> {
6039 support::token(&self.syntax, SyntaxKind::AS_KW)
6040 }
6041}
6042
6043#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6044pub struct JsonPassingClause {
6045 pub(crate) syntax: SyntaxNode,
6046}
6047impl JsonPassingClause {
6048 #[inline]
6049 pub fn json_passing_args(&self) -> AstChildren<JsonPassingArg> {
6050 support::children(&self.syntax)
6051 }
6052 #[inline]
6053 pub fn passing_token(&self) -> Option<SyntaxToken> {
6054 support::token(&self.syntax, SyntaxKind::PASSING_KW)
6055 }
6056}
6057
6058#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6059pub struct JsonQuotesClause {
6060 pub(crate) syntax: SyntaxNode,
6061}
6062impl JsonQuotesClause {
6063 #[inline]
6064 pub fn keep_token(&self) -> Option<SyntaxToken> {
6065 support::token(&self.syntax, SyntaxKind::KEEP_KW)
6066 }
6067 #[inline]
6068 pub fn omit_token(&self) -> Option<SyntaxToken> {
6069 support::token(&self.syntax, SyntaxKind::OMIT_KW)
6070 }
6071 #[inline]
6072 pub fn quotes_token(&self) -> Option<SyntaxToken> {
6073 support::token(&self.syntax, SyntaxKind::QUOTES_KW)
6074 }
6075}
6076
6077#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6078pub struct JsonReturningClause {
6079 pub(crate) syntax: SyntaxNode,
6080}
6081impl JsonReturningClause {
6082 #[inline]
6083 pub fn ty(&self) -> Option<Type> {
6084 support::child(&self.syntax)
6085 }
6086 #[inline]
6087 pub fn returning_token(&self) -> Option<SyntaxToken> {
6088 support::token(&self.syntax, SyntaxKind::RETURNING_KW)
6089 }
6090}
6091
6092#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6093pub struct JsonTableColumn {
6094 pub(crate) syntax: SyntaxNode,
6095}
6096impl JsonTableColumn {
6097 #[inline]
6098 pub fn expr(&self) -> Option<Expr> {
6099 support::child(&self.syntax)
6100 }
6101 #[inline]
6102 pub fn name(&self) -> Option<Name> {
6103 support::child(&self.syntax)
6104 }
6105 #[inline]
6106 pub fn ty(&self) -> Option<Type> {
6107 support::child(&self.syntax)
6108 }
6109 #[inline]
6110 pub fn for_token(&self) -> Option<SyntaxToken> {
6111 support::token(&self.syntax, SyntaxKind::FOR_KW)
6112 }
6113 #[inline]
6114 pub fn nested_token(&self) -> Option<SyntaxToken> {
6115 support::token(&self.syntax, SyntaxKind::NESTED_KW)
6116 }
6117 #[inline]
6118 pub fn ordinality_token(&self) -> Option<SyntaxToken> {
6119 support::token(&self.syntax, SyntaxKind::ORDINALITY_KW)
6120 }
6121 #[inline]
6122 pub fn path_token(&self) -> Option<SyntaxToken> {
6123 support::token(&self.syntax, SyntaxKind::PATH_KW)
6124 }
6125}
6126
6127#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6128pub struct JsonTableColumnList {
6129 pub(crate) syntax: SyntaxNode,
6130}
6131impl JsonTableColumnList {
6132 #[inline]
6133 pub fn json_table_columns(&self) -> AstChildren<JsonTableColumn> {
6134 support::children(&self.syntax)
6135 }
6136 #[inline]
6137 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
6138 support::token(&self.syntax, SyntaxKind::L_PAREN)
6139 }
6140 #[inline]
6141 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
6142 support::token(&self.syntax, SyntaxKind::R_PAREN)
6143 }
6144 #[inline]
6145 pub fn columns_token(&self) -> Option<SyntaxToken> {
6146 support::token(&self.syntax, SyntaxKind::COLUMNS_KW)
6147 }
6148}
6149
6150#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6151pub struct JsonValueExpr {
6152 pub(crate) syntax: SyntaxNode,
6153}
6154impl JsonValueExpr {
6155 #[inline]
6156 pub fn expr(&self) -> Option<Expr> {
6157 support::child(&self.syntax)
6158 }
6159 #[inline]
6160 pub fn json_format_clause(&self) -> Option<JsonFormatClause> {
6161 support::child(&self.syntax)
6162 }
6163}
6164
6165#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6166pub struct JsonWrapperBehaviorClause {
6167 pub(crate) syntax: SyntaxNode,
6168}
6169impl JsonWrapperBehaviorClause {
6170 #[inline]
6171 pub fn conditional_token(&self) -> Option<SyntaxToken> {
6172 support::token(&self.syntax, SyntaxKind::CONDITIONAL_KW)
6173 }
6174 #[inline]
6175 pub fn with_token(&self) -> Option<SyntaxToken> {
6176 support::token(&self.syntax, SyntaxKind::WITH_KW)
6177 }
6178 #[inline]
6179 pub fn without_token(&self) -> Option<SyntaxToken> {
6180 support::token(&self.syntax, SyntaxKind::WITHOUT_KW)
6181 }
6182 #[inline]
6183 pub fn wrapper_token(&self) -> Option<SyntaxToken> {
6184 support::token(&self.syntax, SyntaxKind::WRAPPER_KW)
6185 }
6186}
6187
6188#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6189pub struct LanguageFuncOption {
6190 pub(crate) syntax: SyntaxNode,
6191}
6192impl LanguageFuncOption {
6193 #[inline]
6194 pub fn name_ref(&self) -> Option<NameRef> {
6195 support::child(&self.syntax)
6196 }
6197 #[inline]
6198 pub fn language_token(&self) -> Option<SyntaxToken> {
6199 support::token(&self.syntax, SyntaxKind::LANGUAGE_KW)
6200 }
6201}
6202
6203#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6204pub struct LeakproofFuncOption {
6205 pub(crate) syntax: SyntaxNode,
6206}
6207impl LeakproofFuncOption {
6208 #[inline]
6209 pub fn leakproof_token(&self) -> Option<SyntaxToken> {
6210 support::token(&self.syntax, SyntaxKind::LEAKPROOF_KW)
6211 }
6212 #[inline]
6213 pub fn not_token(&self) -> Option<SyntaxToken> {
6214 support::token(&self.syntax, SyntaxKind::NOT_KW)
6215 }
6216}
6217
6218#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6219pub struct LikeClause {
6220 pub(crate) syntax: SyntaxNode,
6221}
6222impl LikeClause {
6223 #[inline]
6224 pub fn like_options(&self) -> AstChildren<LikeOption> {
6225 support::children(&self.syntax)
6226 }
6227 #[inline]
6228 pub fn like_token(&self) -> Option<SyntaxToken> {
6229 support::token(&self.syntax, SyntaxKind::LIKE_KW)
6230 }
6231}
6232
6233#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6234pub struct LikeOption {
6235 pub(crate) syntax: SyntaxNode,
6236}
6237impl LikeOption {
6238 #[inline]
6239 pub fn comments_token(&self) -> Option<SyntaxToken> {
6240 support::token(&self.syntax, SyntaxKind::COMMENTS_KW)
6241 }
6242 #[inline]
6243 pub fn compression_token(&self) -> Option<SyntaxToken> {
6244 support::token(&self.syntax, SyntaxKind::COMPRESSION_KW)
6245 }
6246 #[inline]
6247 pub fn constraints_token(&self) -> Option<SyntaxToken> {
6248 support::token(&self.syntax, SyntaxKind::CONSTRAINTS_KW)
6249 }
6250 #[inline]
6251 pub fn defaults_token(&self) -> Option<SyntaxToken> {
6252 support::token(&self.syntax, SyntaxKind::DEFAULTS_KW)
6253 }
6254 #[inline]
6255 pub fn excluding_token(&self) -> Option<SyntaxToken> {
6256 support::token(&self.syntax, SyntaxKind::EXCLUDING_KW)
6257 }
6258 #[inline]
6259 pub fn generated_token(&self) -> Option<SyntaxToken> {
6260 support::token(&self.syntax, SyntaxKind::GENERATED_KW)
6261 }
6262 #[inline]
6263 pub fn identity_token(&self) -> Option<SyntaxToken> {
6264 support::token(&self.syntax, SyntaxKind::IDENTITY_KW)
6265 }
6266 #[inline]
6267 pub fn including_token(&self) -> Option<SyntaxToken> {
6268 support::token(&self.syntax, SyntaxKind::INCLUDING_KW)
6269 }
6270 #[inline]
6271 pub fn indexes_token(&self) -> Option<SyntaxToken> {
6272 support::token(&self.syntax, SyntaxKind::INDEXES_KW)
6273 }
6274}
6275
6276#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6277pub struct LimitClause {
6278 pub(crate) syntax: SyntaxNode,
6279}
6280impl LimitClause {
6281 #[inline]
6282 pub fn limit_token(&self) -> Option<SyntaxToken> {
6283 support::token(&self.syntax, SyntaxKind::LIMIT_KW)
6284 }
6285}
6286
6287#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6288pub struct Listen {
6289 pub(crate) syntax: SyntaxNode,
6290}
6291impl Listen {
6292 #[inline]
6293 pub fn name_ref(&self) -> Option<NameRef> {
6294 support::child(&self.syntax)
6295 }
6296 #[inline]
6297 pub fn listen_token(&self) -> Option<SyntaxToken> {
6298 support::token(&self.syntax, SyntaxKind::LISTEN_KW)
6299 }
6300}
6301
6302#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6303pub struct Literal {
6304 pub(crate) syntax: SyntaxNode,
6305}
6306impl Literal {}
6307
6308#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6309pub struct Load {
6310 pub(crate) syntax: SyntaxNode,
6311}
6312impl Load {
6313 #[inline]
6314 pub fn load_token(&self) -> Option<SyntaxToken> {
6315 support::token(&self.syntax, SyntaxKind::LOAD_KW)
6316 }
6317}
6318
6319#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6320pub struct Lock {
6321 pub(crate) syntax: SyntaxNode,
6322}
6323impl Lock {
6324 #[inline]
6325 pub fn lock_token(&self) -> Option<SyntaxToken> {
6326 support::token(&self.syntax, SyntaxKind::LOCK_KW)
6327 }
6328 #[inline]
6329 pub fn table_token(&self) -> Option<SyntaxToken> {
6330 support::token(&self.syntax, SyntaxKind::TABLE_KW)
6331 }
6332}
6333
6334#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6335pub struct LockingClause {
6336 pub(crate) syntax: SyntaxNode,
6337}
6338impl LockingClause {
6339 #[inline]
6340 pub fn for_token(&self) -> Option<SyntaxToken> {
6341 support::token(&self.syntax, SyntaxKind::FOR_KW)
6342 }
6343}
6344
6345#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6346pub struct Lteq {
6347 pub(crate) syntax: SyntaxNode,
6348}
6349impl Lteq {
6350 #[inline]
6351 pub fn l_angle_token(&self) -> Option<SyntaxToken> {
6352 support::token(&self.syntax, SyntaxKind::L_ANGLE)
6353 }
6354 #[inline]
6355 pub fn eq_token(&self) -> Option<SyntaxToken> {
6356 support::token(&self.syntax, SyntaxKind::EQ)
6357 }
6358}
6359
6360#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6361pub struct MatchFull {
6362 pub(crate) syntax: SyntaxNode,
6363}
6364impl MatchFull {
6365 #[inline]
6366 pub fn full_token(&self) -> Option<SyntaxToken> {
6367 support::token(&self.syntax, SyntaxKind::FULL_KW)
6368 }
6369 #[inline]
6370 pub fn match_token(&self) -> Option<SyntaxToken> {
6371 support::token(&self.syntax, SyntaxKind::MATCH_KW)
6372 }
6373}
6374
6375#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6376pub struct MatchPartial {
6377 pub(crate) syntax: SyntaxNode,
6378}
6379impl MatchPartial {
6380 #[inline]
6381 pub fn match_token(&self) -> Option<SyntaxToken> {
6382 support::token(&self.syntax, SyntaxKind::MATCH_KW)
6383 }
6384 #[inline]
6385 pub fn partial_token(&self) -> Option<SyntaxToken> {
6386 support::token(&self.syntax, SyntaxKind::PARTIAL_KW)
6387 }
6388}
6389
6390#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6391pub struct MatchSimple {
6392 pub(crate) syntax: SyntaxNode,
6393}
6394impl MatchSimple {
6395 #[inline]
6396 pub fn match_token(&self) -> Option<SyntaxToken> {
6397 support::token(&self.syntax, SyntaxKind::MATCH_KW)
6398 }
6399 #[inline]
6400 pub fn simple_token(&self) -> Option<SyntaxToken> {
6401 support::token(&self.syntax, SyntaxKind::SIMPLE_KW)
6402 }
6403}
6404
6405#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6406pub struct Materialized {
6407 pub(crate) syntax: SyntaxNode,
6408}
6409impl Materialized {
6410 #[inline]
6411 pub fn materialized_token(&self) -> Option<SyntaxToken> {
6412 support::token(&self.syntax, SyntaxKind::MATERIALIZED_KW)
6413 }
6414}
6415
6416#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6417pub struct Merge {
6418 pub(crate) syntax: SyntaxNode,
6419}
6420impl Merge {
6421 #[inline]
6422 pub fn merge_token(&self) -> Option<SyntaxToken> {
6423 support::token(&self.syntax, SyntaxKind::MERGE_KW)
6424 }
6425}
6426
6427#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6428pub struct Move {
6429 pub(crate) syntax: SyntaxNode,
6430}
6431impl Move {
6432 #[inline]
6433 pub fn move_token(&self) -> Option<SyntaxToken> {
6434 support::token(&self.syntax, SyntaxKind::MOVE_KW)
6435 }
6436}
6437
6438#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6439pub struct Name {
6440 pub(crate) syntax: SyntaxNode,
6441}
6442impl Name {
6443 #[inline]
6444 pub fn ident_token(&self) -> Option<SyntaxToken> {
6445 support::token(&self.syntax, SyntaxKind::IDENT)
6446 }
6447}
6448
6449#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6450pub struct NameRef {
6451 pub(crate) syntax: SyntaxNode,
6452}
6453impl NameRef {
6454 #[inline]
6455 pub fn ident_token(&self) -> Option<SyntaxToken> {
6456 support::token(&self.syntax, SyntaxKind::IDENT)
6457 }
6458}
6459
6460#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6461pub struct NamedArg {
6462 pub(crate) syntax: SyntaxNode,
6463}
6464impl NamedArg {
6465 #[inline]
6466 pub fn expr(&self) -> Option<Expr> {
6467 support::child(&self.syntax)
6468 }
6469 #[inline]
6470 pub fn fat_arrow(&self) -> Option<FatArrow> {
6471 support::child(&self.syntax)
6472 }
6473 #[inline]
6474 pub fn name_ref(&self) -> Option<NameRef> {
6475 support::child(&self.syntax)
6476 }
6477}
6478
6479#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6480pub struct Neq {
6481 pub(crate) syntax: SyntaxNode,
6482}
6483impl Neq {
6484 #[inline]
6485 pub fn bang_token(&self) -> Option<SyntaxToken> {
6486 support::token(&self.syntax, SyntaxKind::BANG)
6487 }
6488 #[inline]
6489 pub fn eq_token(&self) -> Option<SyntaxToken> {
6490 support::token(&self.syntax, SyntaxKind::EQ)
6491 }
6492}
6493
6494#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6495pub struct Neqb {
6496 pub(crate) syntax: SyntaxNode,
6497}
6498impl Neqb {
6499 #[inline]
6500 pub fn l_angle_token(&self) -> Option<SyntaxToken> {
6501 support::token(&self.syntax, SyntaxKind::L_ANGLE)
6502 }
6503 #[inline]
6504 pub fn r_angle_token(&self) -> Option<SyntaxToken> {
6505 support::token(&self.syntax, SyntaxKind::R_ANGLE)
6506 }
6507}
6508
6509#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6510pub struct NoAction {
6511 pub(crate) syntax: SyntaxNode,
6512}
6513impl NoAction {
6514 #[inline]
6515 pub fn action_token(&self) -> Option<SyntaxToken> {
6516 support::token(&self.syntax, SyntaxKind::ACTION_KW)
6517 }
6518 #[inline]
6519 pub fn no_token(&self) -> Option<SyntaxToken> {
6520 support::token(&self.syntax, SyntaxKind::NO_KW)
6521 }
6522}
6523
6524#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6525pub struct NoForceRls {
6526 pub(crate) syntax: SyntaxNode,
6527}
6528impl NoForceRls {
6529 #[inline]
6530 pub fn force_token(&self) -> Option<SyntaxToken> {
6531 support::token(&self.syntax, SyntaxKind::FORCE_KW)
6532 }
6533 #[inline]
6534 pub fn level_token(&self) -> Option<SyntaxToken> {
6535 support::token(&self.syntax, SyntaxKind::LEVEL_KW)
6536 }
6537 #[inline]
6538 pub fn no_token(&self) -> Option<SyntaxToken> {
6539 support::token(&self.syntax, SyntaxKind::NO_KW)
6540 }
6541 #[inline]
6542 pub fn row_token(&self) -> Option<SyntaxToken> {
6543 support::token(&self.syntax, SyntaxKind::ROW_KW)
6544 }
6545 #[inline]
6546 pub fn security_token(&self) -> Option<SyntaxToken> {
6547 support::token(&self.syntax, SyntaxKind::SECURITY_KW)
6548 }
6549}
6550
6551#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6552pub struct NoInherit {
6553 pub(crate) syntax: SyntaxNode,
6554}
6555impl NoInherit {
6556 #[inline]
6557 pub fn inherit_token(&self) -> Option<SyntaxToken> {
6558 support::token(&self.syntax, SyntaxKind::INHERIT_KW)
6559 }
6560 #[inline]
6561 pub fn no_token(&self) -> Option<SyntaxToken> {
6562 support::token(&self.syntax, SyntaxKind::NO_KW)
6563 }
6564}
6565
6566#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6567pub struct NonStandardParam {
6568 pub(crate) syntax: SyntaxNode,
6569}
6570impl NonStandardParam {
6571 #[inline]
6572 pub fn name_ref(&self) -> Option<NameRef> {
6573 support::child(&self.syntax)
6574 }
6575 #[inline]
6576 pub fn colon_token(&self) -> Option<SyntaxToken> {
6577 support::token(&self.syntax, SyntaxKind::COLON)
6578 }
6579}
6580
6581#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6582pub struct NotDeferrable {
6583 pub(crate) syntax: SyntaxNode,
6584}
6585impl NotDeferrable {
6586 #[inline]
6587 pub fn deferrable_token(&self) -> Option<SyntaxToken> {
6588 support::token(&self.syntax, SyntaxKind::DEFERRABLE_KW)
6589 }
6590 #[inline]
6591 pub fn not_token(&self) -> Option<SyntaxToken> {
6592 support::token(&self.syntax, SyntaxKind::NOT_KW)
6593 }
6594}
6595
6596#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6597pub struct NotDeferrableConstraintOption {
6598 pub(crate) syntax: SyntaxNode,
6599}
6600impl NotDeferrableConstraintOption {
6601 #[inline]
6602 pub fn deferrable_token(&self) -> Option<SyntaxToken> {
6603 support::token(&self.syntax, SyntaxKind::DEFERRABLE_KW)
6604 }
6605 #[inline]
6606 pub fn not_token(&self) -> Option<SyntaxToken> {
6607 support::token(&self.syntax, SyntaxKind::NOT_KW)
6608 }
6609}
6610
6611#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6612pub struct NotEnforced {
6613 pub(crate) syntax: SyntaxNode,
6614}
6615impl NotEnforced {
6616 #[inline]
6617 pub fn enforced_token(&self) -> Option<SyntaxToken> {
6618 support::token(&self.syntax, SyntaxKind::ENFORCED_KW)
6619 }
6620 #[inline]
6621 pub fn not_token(&self) -> Option<SyntaxToken> {
6622 support::token(&self.syntax, SyntaxKind::NOT_KW)
6623 }
6624}
6625
6626#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6627pub struct NotIlike {
6628 pub(crate) syntax: SyntaxNode,
6629}
6630impl NotIlike {
6631 #[inline]
6632 pub fn ilike_token(&self) -> Option<SyntaxToken> {
6633 support::token(&self.syntax, SyntaxKind::ILIKE_KW)
6634 }
6635 #[inline]
6636 pub fn not_token(&self) -> Option<SyntaxToken> {
6637 support::token(&self.syntax, SyntaxKind::NOT_KW)
6638 }
6639}
6640
6641#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6642pub struct NotIn {
6643 pub(crate) syntax: SyntaxNode,
6644}
6645impl NotIn {
6646 #[inline]
6647 pub fn in_token(&self) -> Option<SyntaxToken> {
6648 support::token(&self.syntax, SyntaxKind::IN_KW)
6649 }
6650 #[inline]
6651 pub fn not_token(&self) -> Option<SyntaxToken> {
6652 support::token(&self.syntax, SyntaxKind::NOT_KW)
6653 }
6654}
6655
6656#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6657pub struct NotLike {
6658 pub(crate) syntax: SyntaxNode,
6659}
6660impl NotLike {
6661 #[inline]
6662 pub fn like_token(&self) -> Option<SyntaxToken> {
6663 support::token(&self.syntax, SyntaxKind::LIKE_KW)
6664 }
6665 #[inline]
6666 pub fn not_token(&self) -> Option<SyntaxToken> {
6667 support::token(&self.syntax, SyntaxKind::NOT_KW)
6668 }
6669}
6670
6671#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6672pub struct NotMaterialized {
6673 pub(crate) syntax: SyntaxNode,
6674}
6675impl NotMaterialized {
6676 #[inline]
6677 pub fn materialized_token(&self) -> Option<SyntaxToken> {
6678 support::token(&self.syntax, SyntaxKind::MATERIALIZED_KW)
6679 }
6680 #[inline]
6681 pub fn not_token(&self) -> Option<SyntaxToken> {
6682 support::token(&self.syntax, SyntaxKind::NOT_KW)
6683 }
6684}
6685
6686#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6687pub struct NotNullConstraint {
6688 pub(crate) syntax: SyntaxNode,
6689}
6690impl NotNullConstraint {
6691 #[inline]
6692 pub fn name_ref(&self) -> Option<NameRef> {
6693 support::child(&self.syntax)
6694 }
6695 #[inline]
6696 pub fn no_inherit(&self) -> Option<NoInherit> {
6697 support::child(&self.syntax)
6698 }
6699 #[inline]
6700 pub fn constraint_token(&self) -> Option<SyntaxToken> {
6701 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
6702 }
6703 #[inline]
6704 pub fn not_token(&self) -> Option<SyntaxToken> {
6705 support::token(&self.syntax, SyntaxKind::NOT_KW)
6706 }
6707 #[inline]
6708 pub fn null_token(&self) -> Option<SyntaxToken> {
6709 support::token(&self.syntax, SyntaxKind::NULL_KW)
6710 }
6711}
6712
6713#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6714pub struct NotOf {
6715 pub(crate) syntax: SyntaxNode,
6716}
6717impl NotOf {
6718 #[inline]
6719 pub fn not_token(&self) -> Option<SyntaxToken> {
6720 support::token(&self.syntax, SyntaxKind::NOT_KW)
6721 }
6722 #[inline]
6723 pub fn of_token(&self) -> Option<SyntaxToken> {
6724 support::token(&self.syntax, SyntaxKind::OF_KW)
6725 }
6726}
6727
6728#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6729pub struct NotSimilarTo {
6730 pub(crate) syntax: SyntaxNode,
6731}
6732impl NotSimilarTo {
6733 #[inline]
6734 pub fn not_token(&self) -> Option<SyntaxToken> {
6735 support::token(&self.syntax, SyntaxKind::NOT_KW)
6736 }
6737 #[inline]
6738 pub fn similar_token(&self) -> Option<SyntaxToken> {
6739 support::token(&self.syntax, SyntaxKind::SIMILAR_KW)
6740 }
6741 #[inline]
6742 pub fn to_token(&self) -> Option<SyntaxToken> {
6743 support::token(&self.syntax, SyntaxKind::TO_KW)
6744 }
6745}
6746
6747#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6748pub struct NotValid {
6749 pub(crate) syntax: SyntaxNode,
6750}
6751impl NotValid {
6752 #[inline]
6753 pub fn not_token(&self) -> Option<SyntaxToken> {
6754 support::token(&self.syntax, SyntaxKind::NOT_KW)
6755 }
6756 #[inline]
6757 pub fn valid_token(&self) -> Option<SyntaxToken> {
6758 support::token(&self.syntax, SyntaxKind::VALID_KW)
6759 }
6760}
6761
6762#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6763pub struct Notify {
6764 pub(crate) syntax: SyntaxNode,
6765}
6766impl Notify {
6767 #[inline]
6768 pub fn notify_token(&self) -> Option<SyntaxToken> {
6769 support::token(&self.syntax, SyntaxKind::NOTIFY_KW)
6770 }
6771}
6772
6773#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6774pub struct NullConstraint {
6775 pub(crate) syntax: SyntaxNode,
6776}
6777impl NullConstraint {
6778 #[inline]
6779 pub fn name_ref(&self) -> Option<NameRef> {
6780 support::child(&self.syntax)
6781 }
6782 #[inline]
6783 pub fn constraint_token(&self) -> Option<SyntaxToken> {
6784 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
6785 }
6786 #[inline]
6787 pub fn null_token(&self) -> Option<SyntaxToken> {
6788 support::token(&self.syntax, SyntaxKind::NULL_KW)
6789 }
6790}
6791
6792#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6793pub struct NullsDistinct {
6794 pub(crate) syntax: SyntaxNode,
6795}
6796impl NullsDistinct {
6797 #[inline]
6798 pub fn distinct_token(&self) -> Option<SyntaxToken> {
6799 support::token(&self.syntax, SyntaxKind::DISTINCT_KW)
6800 }
6801 #[inline]
6802 pub fn nulls_token(&self) -> Option<SyntaxToken> {
6803 support::token(&self.syntax, SyntaxKind::NULLS_KW)
6804 }
6805}
6806
6807#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6808pub struct NullsFirst {
6809 pub(crate) syntax: SyntaxNode,
6810}
6811impl NullsFirst {
6812 #[inline]
6813 pub fn first_token(&self) -> Option<SyntaxToken> {
6814 support::token(&self.syntax, SyntaxKind::FIRST_KW)
6815 }
6816 #[inline]
6817 pub fn nulls_token(&self) -> Option<SyntaxToken> {
6818 support::token(&self.syntax, SyntaxKind::NULLS_KW)
6819 }
6820}
6821
6822#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6823pub struct NullsLast {
6824 pub(crate) syntax: SyntaxNode,
6825}
6826impl NullsLast {
6827 #[inline]
6828 pub fn last_token(&self) -> Option<SyntaxToken> {
6829 support::token(&self.syntax, SyntaxKind::LAST_KW)
6830 }
6831 #[inline]
6832 pub fn nulls_token(&self) -> Option<SyntaxToken> {
6833 support::token(&self.syntax, SyntaxKind::NULLS_KW)
6834 }
6835}
6836
6837#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6838pub struct NullsNotDistinct {
6839 pub(crate) syntax: SyntaxNode,
6840}
6841impl NullsNotDistinct {
6842 #[inline]
6843 pub fn distinct_token(&self) -> Option<SyntaxToken> {
6844 support::token(&self.syntax, SyntaxKind::DISTINCT_KW)
6845 }
6846 #[inline]
6847 pub fn not_token(&self) -> Option<SyntaxToken> {
6848 support::token(&self.syntax, SyntaxKind::NOT_KW)
6849 }
6850 #[inline]
6851 pub fn nulls_token(&self) -> Option<SyntaxToken> {
6852 support::token(&self.syntax, SyntaxKind::NULLS_KW)
6853 }
6854}
6855
6856#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6857pub struct OfType {
6858 pub(crate) syntax: SyntaxNode,
6859}
6860impl OfType {
6861 #[inline]
6862 pub fn ty(&self) -> Option<Type> {
6863 support::child(&self.syntax)
6864 }
6865 #[inline]
6866 pub fn of_token(&self) -> Option<SyntaxToken> {
6867 support::token(&self.syntax, SyntaxKind::OF_KW)
6868 }
6869}
6870
6871#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6872pub struct OffsetClause {
6873 pub(crate) syntax: SyntaxNode,
6874}
6875impl OffsetClause {
6876 #[inline]
6877 pub fn offset_token(&self) -> Option<SyntaxToken> {
6878 support::token(&self.syntax, SyntaxKind::OFFSET_KW)
6879 }
6880}
6881
6882#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6883pub struct OnClause {
6884 pub(crate) syntax: SyntaxNode,
6885}
6886impl OnClause {
6887 #[inline]
6888 pub fn expr(&self) -> Option<Expr> {
6889 support::child(&self.syntax)
6890 }
6891 #[inline]
6892 pub fn on_token(&self) -> Option<SyntaxToken> {
6893 support::token(&self.syntax, SyntaxKind::ON_KW)
6894 }
6895}
6896
6897#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6898pub struct OnCommit {
6899 pub(crate) syntax: SyntaxNode,
6900}
6901impl OnCommit {
6902 #[inline]
6903 pub fn on_commit_action(&self) -> Option<OnCommitAction> {
6904 support::child(&self.syntax)
6905 }
6906 #[inline]
6907 pub fn commit_token(&self) -> Option<SyntaxToken> {
6908 support::token(&self.syntax, SyntaxKind::COMMIT_KW)
6909 }
6910 #[inline]
6911 pub fn on_token(&self) -> Option<SyntaxToken> {
6912 support::token(&self.syntax, SyntaxKind::ON_KW)
6913 }
6914}
6915
6916#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6917pub struct OnDeleteAction {
6918 pub(crate) syntax: SyntaxNode,
6919}
6920impl OnDeleteAction {
6921 #[inline]
6922 pub fn ref_action(&self) -> Option<RefAction> {
6923 support::child(&self.syntax)
6924 }
6925 #[inline]
6926 pub fn delete_token(&self) -> Option<SyntaxToken> {
6927 support::token(&self.syntax, SyntaxKind::DELETE_KW)
6928 }
6929 #[inline]
6930 pub fn on_token(&self) -> Option<SyntaxToken> {
6931 support::token(&self.syntax, SyntaxKind::ON_KW)
6932 }
6933}
6934
6935#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6936pub struct OnUpdateAction {
6937 pub(crate) syntax: SyntaxNode,
6938}
6939impl OnUpdateAction {
6940 #[inline]
6941 pub fn ref_action(&self) -> Option<RefAction> {
6942 support::child(&self.syntax)
6943 }
6944 #[inline]
6945 pub fn on_token(&self) -> Option<SyntaxToken> {
6946 support::token(&self.syntax, SyntaxKind::ON_KW)
6947 }
6948 #[inline]
6949 pub fn update_token(&self) -> Option<SyntaxToken> {
6950 support::token(&self.syntax, SyntaxKind::UPDATE_KW)
6951 }
6952}
6953
6954#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6955pub struct Op {
6956 pub(crate) syntax: SyntaxNode,
6957}
6958impl Op {
6959 #[inline]
6960 pub fn at_time_zone(&self) -> Option<AtTimeZone> {
6961 support::child(&self.syntax)
6962 }
6963 #[inline]
6964 pub fn colon_colon(&self) -> Option<ColonColon> {
6965 support::child(&self.syntax)
6966 }
6967 #[inline]
6968 pub fn colon_eq(&self) -> Option<ColonEq> {
6969 support::child(&self.syntax)
6970 }
6971 #[inline]
6972 pub fn custom_op(&self) -> Option<CustomOp> {
6973 support::child(&self.syntax)
6974 }
6975 #[inline]
6976 pub fn fat_arrow(&self) -> Option<FatArrow> {
6977 support::child(&self.syntax)
6978 }
6979 #[inline]
6980 pub fn gteq(&self) -> Option<Gteq> {
6981 support::child(&self.syntax)
6982 }
6983 #[inline]
6984 pub fn is_distinct_from(&self) -> Option<IsDistinctFrom> {
6985 support::child(&self.syntax)
6986 }
6987 #[inline]
6988 pub fn is_json(&self) -> Option<IsJson> {
6989 support::child(&self.syntax)
6990 }
6991 #[inline]
6992 pub fn is_json_array(&self) -> Option<IsJsonArray> {
6993 support::child(&self.syntax)
6994 }
6995 #[inline]
6996 pub fn is_json_object(&self) -> Option<IsJsonObject> {
6997 support::child(&self.syntax)
6998 }
6999 #[inline]
7000 pub fn is_json_scalar(&self) -> Option<IsJsonScalar> {
7001 support::child(&self.syntax)
7002 }
7003 #[inline]
7004 pub fn is_json_value(&self) -> Option<IsJsonValue> {
7005 support::child(&self.syntax)
7006 }
7007 #[inline]
7008 pub fn is_not(&self) -> Option<IsNot> {
7009 support::child(&self.syntax)
7010 }
7011 #[inline]
7012 pub fn is_not_distinct_from(&self) -> Option<IsNotDistinctFrom> {
7013 support::child(&self.syntax)
7014 }
7015 #[inline]
7016 pub fn is_not_json(&self) -> Option<IsNotJson> {
7017 support::child(&self.syntax)
7018 }
7019 #[inline]
7020 pub fn is_not_json_array(&self) -> Option<IsNotJsonArray> {
7021 support::child(&self.syntax)
7022 }
7023 #[inline]
7024 pub fn is_not_json_scalar(&self) -> Option<IsNotJsonScalar> {
7025 support::child(&self.syntax)
7026 }
7027 #[inline]
7028 pub fn is_not_json_value(&self) -> Option<IsNotJsonValue> {
7029 support::child(&self.syntax)
7030 }
7031 #[inline]
7032 pub fn lteq(&self) -> Option<Lteq> {
7033 support::child(&self.syntax)
7034 }
7035 #[inline]
7036 pub fn neq(&self) -> Option<Neq> {
7037 support::child(&self.syntax)
7038 }
7039 #[inline]
7040 pub fn neqb(&self) -> Option<Neqb> {
7041 support::child(&self.syntax)
7042 }
7043 #[inline]
7044 pub fn not_ilike(&self) -> Option<NotIlike> {
7045 support::child(&self.syntax)
7046 }
7047 #[inline]
7048 pub fn not_in(&self) -> Option<NotIn> {
7049 support::child(&self.syntax)
7050 }
7051 #[inline]
7052 pub fn not_like(&self) -> Option<NotLike> {
7053 support::child(&self.syntax)
7054 }
7055 #[inline]
7056 pub fn not_similar_to(&self) -> Option<NotSimilarTo> {
7057 support::child(&self.syntax)
7058 }
7059 #[inline]
7060 pub fn operator_call(&self) -> Option<OperatorCall> {
7061 support::child(&self.syntax)
7062 }
7063 #[inline]
7064 pub fn similar_to(&self) -> Option<SimilarTo> {
7065 support::child(&self.syntax)
7066 }
7067 #[inline]
7068 pub fn percent_token(&self) -> Option<SyntaxToken> {
7069 support::token(&self.syntax, SyntaxKind::PERCENT)
7070 }
7071 #[inline]
7072 pub fn plus_token(&self) -> Option<SyntaxToken> {
7073 support::token(&self.syntax, SyntaxKind::PLUS)
7074 }
7075 #[inline]
7076 pub fn minus_token(&self) -> Option<SyntaxToken> {
7077 support::token(&self.syntax, SyntaxKind::MINUS)
7078 }
7079 #[inline]
7080 pub fn slash_token(&self) -> Option<SyntaxToken> {
7081 support::token(&self.syntax, SyntaxKind::SLASH)
7082 }
7083 #[inline]
7084 pub fn colon_token(&self) -> Option<SyntaxToken> {
7085 support::token(&self.syntax, SyntaxKind::COLON)
7086 }
7087 #[inline]
7088 pub fn l_angle_token(&self) -> Option<SyntaxToken> {
7089 support::token(&self.syntax, SyntaxKind::L_ANGLE)
7090 }
7091 #[inline]
7092 pub fn eq_token(&self) -> Option<SyntaxToken> {
7093 support::token(&self.syntax, SyntaxKind::EQ)
7094 }
7095 #[inline]
7096 pub fn r_angle_token(&self) -> Option<SyntaxToken> {
7097 support::token(&self.syntax, SyntaxKind::R_ANGLE)
7098 }
7099 #[inline]
7100 pub fn caret_token(&self) -> Option<SyntaxToken> {
7101 support::token(&self.syntax, SyntaxKind::CARET)
7102 }
7103 #[inline]
7104 pub fn and_token(&self) -> Option<SyntaxToken> {
7105 support::token(&self.syntax, SyntaxKind::AND_KW)
7106 }
7107 #[inline]
7108 pub fn collate_token(&self) -> Option<SyntaxToken> {
7109 support::token(&self.syntax, SyntaxKind::COLLATE_KW)
7110 }
7111 #[inline]
7112 pub fn ilike_token(&self) -> Option<SyntaxToken> {
7113 support::token(&self.syntax, SyntaxKind::ILIKE_KW)
7114 }
7115 #[inline]
7116 pub fn in_token(&self) -> Option<SyntaxToken> {
7117 support::token(&self.syntax, SyntaxKind::IN_KW)
7118 }
7119 #[inline]
7120 pub fn is_token(&self) -> Option<SyntaxToken> {
7121 support::token(&self.syntax, SyntaxKind::IS_KW)
7122 }
7123 #[inline]
7124 pub fn like_token(&self) -> Option<SyntaxToken> {
7125 support::token(&self.syntax, SyntaxKind::LIKE_KW)
7126 }
7127 #[inline]
7128 pub fn or_token(&self) -> Option<SyntaxToken> {
7129 support::token(&self.syntax, SyntaxKind::OR_KW)
7130 }
7131 #[inline]
7132 pub fn overlaps_token(&self) -> Option<SyntaxToken> {
7133 support::token(&self.syntax, SyntaxKind::OVERLAPS_KW)
7134 }
7135 #[inline]
7136 pub fn value_token(&self) -> Option<SyntaxToken> {
7137 support::token(&self.syntax, SyntaxKind::VALUE_KW)
7138 }
7139}
7140
7141#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7142pub struct OperatorCall {
7143 pub(crate) syntax: SyntaxNode,
7144}
7145impl OperatorCall {
7146 #[inline]
7147 pub fn op(&self) -> Option<Op> {
7148 support::child(&self.syntax)
7149 }
7150 #[inline]
7151 pub fn path(&self) -> Option<Path> {
7152 support::child(&self.syntax)
7153 }
7154 #[inline]
7155 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
7156 support::token(&self.syntax, SyntaxKind::L_PAREN)
7157 }
7158 #[inline]
7159 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
7160 support::token(&self.syntax, SyntaxKind::R_PAREN)
7161 }
7162 #[inline]
7163 pub fn dot_token(&self) -> Option<SyntaxToken> {
7164 support::token(&self.syntax, SyntaxKind::DOT)
7165 }
7166 #[inline]
7167 pub fn operator_token(&self) -> Option<SyntaxToken> {
7168 support::token(&self.syntax, SyntaxKind::OPERATOR_KW)
7169 }
7170}
7171
7172#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7173pub struct OptionsList {
7174 pub(crate) syntax: SyntaxNode,
7175}
7176impl OptionsList {
7177 #[inline]
7178 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
7179 support::token(&self.syntax, SyntaxKind::L_PAREN)
7180 }
7181 #[inline]
7182 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
7183 support::token(&self.syntax, SyntaxKind::R_PAREN)
7184 }
7185 #[inline]
7186 pub fn option_token(&self) -> Option<SyntaxToken> {
7187 support::token(&self.syntax, SyntaxKind::OPTION_KW)
7188 }
7189}
7190
7191#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7192pub struct OrReplace {
7193 pub(crate) syntax: SyntaxNode,
7194}
7195impl OrReplace {
7196 #[inline]
7197 pub fn or_token(&self) -> Option<SyntaxToken> {
7198 support::token(&self.syntax, SyntaxKind::OR_KW)
7199 }
7200 #[inline]
7201 pub fn replace_token(&self) -> Option<SyntaxToken> {
7202 support::token(&self.syntax, SyntaxKind::REPLACE_KW)
7203 }
7204}
7205
7206#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7207pub struct OrderByClause {
7208 pub(crate) syntax: SyntaxNode,
7209}
7210impl OrderByClause {
7211 #[inline]
7212 pub fn sort_bys(&self) -> AstChildren<SortBy> {
7213 support::children(&self.syntax)
7214 }
7215 #[inline]
7216 pub fn by_token(&self) -> Option<SyntaxToken> {
7217 support::token(&self.syntax, SyntaxKind::BY_KW)
7218 }
7219 #[inline]
7220 pub fn order_token(&self) -> Option<SyntaxToken> {
7221 support::token(&self.syntax, SyntaxKind::ORDER_KW)
7222 }
7223}
7224
7225#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7226pub struct OverClause {
7227 pub(crate) syntax: SyntaxNode,
7228}
7229impl OverClause {
7230 #[inline]
7231 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
7232 support::token(&self.syntax, SyntaxKind::L_PAREN)
7233 }
7234 #[inline]
7235 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
7236 support::token(&self.syntax, SyntaxKind::R_PAREN)
7237 }
7238 #[inline]
7239 pub fn over_token(&self) -> Option<SyntaxToken> {
7240 support::token(&self.syntax, SyntaxKind::OVER_KW)
7241 }
7242}
7243
7244#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7245pub struct OwnerTo {
7246 pub(crate) syntax: SyntaxNode,
7247}
7248impl OwnerTo {
7249 #[inline]
7250 pub fn role(&self) -> Option<Role> {
7251 support::child(&self.syntax)
7252 }
7253 #[inline]
7254 pub fn owner_token(&self) -> Option<SyntaxToken> {
7255 support::token(&self.syntax, SyntaxKind::OWNER_KW)
7256 }
7257 #[inline]
7258 pub fn to_token(&self) -> Option<SyntaxToken> {
7259 support::token(&self.syntax, SyntaxKind::TO_KW)
7260 }
7261}
7262
7263#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7264pub struct ParallelFuncOption {
7265 pub(crate) syntax: SyntaxNode,
7266}
7267impl ParallelFuncOption {
7268 #[inline]
7269 pub fn ident_token(&self) -> Option<SyntaxToken> {
7270 support::token(&self.syntax, SyntaxKind::IDENT)
7271 }
7272 #[inline]
7273 pub fn parallel_token(&self) -> Option<SyntaxToken> {
7274 support::token(&self.syntax, SyntaxKind::PARALLEL_KW)
7275 }
7276}
7277
7278#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7279pub struct Param {
7280 pub(crate) syntax: SyntaxNode,
7281}
7282impl Param {
7283 #[inline]
7284 pub fn mode(&self) -> Option<ParamMode> {
7285 support::child(&self.syntax)
7286 }
7287 #[inline]
7288 pub fn name(&self) -> Option<Name> {
7289 support::child(&self.syntax)
7290 }
7291 #[inline]
7292 pub fn param_default(&self) -> Option<ParamDefault> {
7293 support::child(&self.syntax)
7294 }
7295 #[inline]
7296 pub fn ty(&self) -> Option<Type> {
7297 support::child(&self.syntax)
7298 }
7299}
7300
7301#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7302pub struct ParamDefault {
7303 pub(crate) syntax: SyntaxNode,
7304}
7305impl ParamDefault {
7306 #[inline]
7307 pub fn expr(&self) -> Option<Expr> {
7308 support::child(&self.syntax)
7309 }
7310 #[inline]
7311 pub fn eq_token(&self) -> Option<SyntaxToken> {
7312 support::token(&self.syntax, SyntaxKind::EQ)
7313 }
7314 #[inline]
7315 pub fn default_token(&self) -> Option<SyntaxToken> {
7316 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
7317 }
7318}
7319
7320#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7321pub struct ParamIn {
7322 pub(crate) syntax: SyntaxNode,
7323}
7324impl ParamIn {
7325 #[inline]
7326 pub fn in_token(&self) -> Option<SyntaxToken> {
7327 support::token(&self.syntax, SyntaxKind::IN_KW)
7328 }
7329}
7330
7331#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7332pub struct ParamInOut {
7333 pub(crate) syntax: SyntaxNode,
7334}
7335impl ParamInOut {
7336 #[inline]
7337 pub fn in_token(&self) -> Option<SyntaxToken> {
7338 support::token(&self.syntax, SyntaxKind::IN_KW)
7339 }
7340 #[inline]
7341 pub fn inout_token(&self) -> Option<SyntaxToken> {
7342 support::token(&self.syntax, SyntaxKind::INOUT_KW)
7343 }
7344 #[inline]
7345 pub fn out_token(&self) -> Option<SyntaxToken> {
7346 support::token(&self.syntax, SyntaxKind::OUT_KW)
7347 }
7348}
7349
7350#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7351pub struct ParamList {
7352 pub(crate) syntax: SyntaxNode,
7353}
7354impl ParamList {
7355 #[inline]
7356 pub fn params(&self) -> AstChildren<Param> {
7357 support::children(&self.syntax)
7358 }
7359}
7360
7361#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7362pub struct ParamOut {
7363 pub(crate) syntax: SyntaxNode,
7364}
7365impl ParamOut {
7366 #[inline]
7367 pub fn out_token(&self) -> Option<SyntaxToken> {
7368 support::token(&self.syntax, SyntaxKind::OUT_KW)
7369 }
7370}
7371
7372#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7373pub struct ParamVariadic {
7374 pub(crate) syntax: SyntaxNode,
7375}
7376impl ParamVariadic {
7377 #[inline]
7378 pub fn variadic_token(&self) -> Option<SyntaxToken> {
7379 support::token(&self.syntax, SyntaxKind::VARIADIC_KW)
7380 }
7381}
7382
7383#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7384pub struct ParenExpr {
7385 pub(crate) syntax: SyntaxNode,
7386}
7387impl ParenExpr {
7388 #[inline]
7389 pub fn expr(&self) -> Option<Expr> {
7390 support::child(&self.syntax)
7391 }
7392 #[inline]
7393 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
7394 support::token(&self.syntax, SyntaxKind::L_PAREN)
7395 }
7396 #[inline]
7397 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
7398 support::token(&self.syntax, SyntaxKind::R_PAREN)
7399 }
7400}
7401
7402#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7403pub struct ParenSelect {
7404 pub(crate) syntax: SyntaxNode,
7405}
7406impl ParenSelect {
7407 #[inline]
7408 pub fn select(&self) -> Option<Select> {
7409 support::child(&self.syntax)
7410 }
7411 #[inline]
7412 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
7413 support::token(&self.syntax, SyntaxKind::L_PAREN)
7414 }
7415 #[inline]
7416 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
7417 support::token(&self.syntax, SyntaxKind::R_PAREN)
7418 }
7419}
7420
7421#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7422pub struct PartitionBy {
7423 pub(crate) syntax: SyntaxNode,
7424}
7425impl PartitionBy {
7426 #[inline]
7427 pub fn by_token(&self) -> Option<SyntaxToken> {
7428 support::token(&self.syntax, SyntaxKind::BY_KW)
7429 }
7430 #[inline]
7431 pub fn partition_token(&self) -> Option<SyntaxToken> {
7432 support::token(&self.syntax, SyntaxKind::PARTITION_KW)
7433 }
7434}
7435
7436#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7437pub struct PartitionDefault {
7438 pub(crate) syntax: SyntaxNode,
7439}
7440impl PartitionDefault {
7441 #[inline]
7442 pub fn default_token(&self) -> Option<SyntaxToken> {
7443 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
7444 }
7445}
7446
7447#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7448pub struct PartitionForValuesFrom {
7449 pub(crate) syntax: SyntaxNode,
7450}
7451impl PartitionForValuesFrom {
7452 #[inline]
7453 pub fn exprs(&self) -> AstChildren<Expr> {
7454 support::children(&self.syntax)
7455 }
7456 #[inline]
7457 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
7458 support::token(&self.syntax, SyntaxKind::L_PAREN)
7459 }
7460 #[inline]
7461 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
7462 support::token(&self.syntax, SyntaxKind::R_PAREN)
7463 }
7464 #[inline]
7465 pub fn for_token(&self) -> Option<SyntaxToken> {
7466 support::token(&self.syntax, SyntaxKind::FOR_KW)
7467 }
7468 #[inline]
7469 pub fn from_token(&self) -> Option<SyntaxToken> {
7470 support::token(&self.syntax, SyntaxKind::FROM_KW)
7471 }
7472 #[inline]
7473 pub fn to_token(&self) -> Option<SyntaxToken> {
7474 support::token(&self.syntax, SyntaxKind::TO_KW)
7475 }
7476 #[inline]
7477 pub fn values_token(&self) -> Option<SyntaxToken> {
7478 support::token(&self.syntax, SyntaxKind::VALUES_KW)
7479 }
7480}
7481
7482#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7483pub struct PartitionForValuesIn {
7484 pub(crate) syntax: SyntaxNode,
7485}
7486impl PartitionForValuesIn {
7487 #[inline]
7488 pub fn exprs(&self) -> AstChildren<Expr> {
7489 support::children(&self.syntax)
7490 }
7491 #[inline]
7492 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
7493 support::token(&self.syntax, SyntaxKind::L_PAREN)
7494 }
7495 #[inline]
7496 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
7497 support::token(&self.syntax, SyntaxKind::R_PAREN)
7498 }
7499 #[inline]
7500 pub fn for_token(&self) -> Option<SyntaxToken> {
7501 support::token(&self.syntax, SyntaxKind::FOR_KW)
7502 }
7503 #[inline]
7504 pub fn in_token(&self) -> Option<SyntaxToken> {
7505 support::token(&self.syntax, SyntaxKind::IN_KW)
7506 }
7507 #[inline]
7508 pub fn values_token(&self) -> Option<SyntaxToken> {
7509 support::token(&self.syntax, SyntaxKind::VALUES_KW)
7510 }
7511}
7512
7513#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7514pub struct PartitionForValuesWith {
7515 pub(crate) syntax: SyntaxNode,
7516}
7517impl PartitionForValuesWith {
7518 #[inline]
7519 pub fn literal(&self) -> Option<Literal> {
7520 support::child(&self.syntax)
7521 }
7522 #[inline]
7523 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
7524 support::token(&self.syntax, SyntaxKind::L_PAREN)
7525 }
7526 #[inline]
7527 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
7528 support::token(&self.syntax, SyntaxKind::R_PAREN)
7529 }
7530 #[inline]
7531 pub fn comma_token(&self) -> Option<SyntaxToken> {
7532 support::token(&self.syntax, SyntaxKind::COMMA)
7533 }
7534 #[inline]
7535 pub fn for_token(&self) -> Option<SyntaxToken> {
7536 support::token(&self.syntax, SyntaxKind::FOR_KW)
7537 }
7538 #[inline]
7539 pub fn ident_token(&self) -> Option<SyntaxToken> {
7540 support::token(&self.syntax, SyntaxKind::IDENT)
7541 }
7542 #[inline]
7543 pub fn values_token(&self) -> Option<SyntaxToken> {
7544 support::token(&self.syntax, SyntaxKind::VALUES_KW)
7545 }
7546 #[inline]
7547 pub fn with_token(&self) -> Option<SyntaxToken> {
7548 support::token(&self.syntax, SyntaxKind::WITH_KW)
7549 }
7550}
7551
7552#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7553pub struct PartitionItem {
7554 pub(crate) syntax: SyntaxNode,
7555}
7556impl PartitionItem {
7557 #[inline]
7558 pub fn collate(&self) -> Option<Collate> {
7559 support::child(&self.syntax)
7560 }
7561 #[inline]
7562 pub fn expr(&self) -> Option<Expr> {
7563 support::child(&self.syntax)
7564 }
7565}
7566
7567#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7568pub struct PartitionOf {
7569 pub(crate) syntax: SyntaxNode,
7570}
7571impl PartitionOf {
7572 #[inline]
7573 pub fn ty(&self) -> Option<Type> {
7574 support::child(&self.syntax)
7575 }
7576 #[inline]
7577 pub fn of_token(&self) -> Option<SyntaxToken> {
7578 support::token(&self.syntax, SyntaxKind::OF_KW)
7579 }
7580 #[inline]
7581 pub fn partition_token(&self) -> Option<SyntaxToken> {
7582 support::token(&self.syntax, SyntaxKind::PARTITION_KW)
7583 }
7584}
7585
7586#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7587pub struct Path {
7588 pub(crate) syntax: SyntaxNode,
7589}
7590impl Path {
7591 #[inline]
7592 pub fn qualifier(&self) -> Option<Path> {
7593 support::child(&self.syntax)
7594 }
7595 #[inline]
7596 pub fn segment(&self) -> Option<PathSegment> {
7597 support::child(&self.syntax)
7598 }
7599 #[inline]
7600 pub fn dot_token(&self) -> Option<SyntaxToken> {
7601 support::token(&self.syntax, SyntaxKind::DOT)
7602 }
7603}
7604
7605#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7606pub struct PathSegment {
7607 pub(crate) syntax: SyntaxNode,
7608}
7609impl PathSegment {
7610 #[inline]
7611 pub fn name(&self) -> Option<Name> {
7612 support::child(&self.syntax)
7613 }
7614 #[inline]
7615 pub fn name_ref(&self) -> Option<NameRef> {
7616 support::child(&self.syntax)
7617 }
7618}
7619
7620#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7621pub struct PathType {
7622 pub(crate) syntax: SyntaxNode,
7623}
7624impl PathType {
7625 #[inline]
7626 pub fn arg_list(&self) -> Option<ArgList> {
7627 support::child(&self.syntax)
7628 }
7629 #[inline]
7630 pub fn path(&self) -> Option<Path> {
7631 support::child(&self.syntax)
7632 }
7633}
7634
7635#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7636pub struct PercentType {
7637 pub(crate) syntax: SyntaxNode,
7638}
7639impl PercentType {
7640 #[inline]
7641 pub fn percent_token(&self) -> Option<SyntaxToken> {
7642 support::token(&self.syntax, SyntaxKind::PERCENT)
7643 }
7644 #[inline]
7645 pub fn type_token(&self) -> Option<SyntaxToken> {
7646 support::token(&self.syntax, SyntaxKind::TYPE_KW)
7647 }
7648}
7649
7650#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7651pub struct PercentTypeClause {
7652 pub(crate) syntax: SyntaxNode,
7653}
7654impl PercentTypeClause {
7655 #[inline]
7656 pub fn path(&self) -> Option<Path> {
7657 support::child(&self.syntax)
7658 }
7659 #[inline]
7660 pub fn percent_type_clause(&self) -> Option<PercentTypeClause> {
7661 support::child(&self.syntax)
7662 }
7663}
7664
7665#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7666pub struct PostfixExpr {
7667 pub(crate) syntax: SyntaxNode,
7668}
7669impl PostfixExpr {
7670 #[inline]
7671 pub fn expr(&self) -> Option<Expr> {
7672 support::child(&self.syntax)
7673 }
7674}
7675
7676#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7677pub struct PrefixExpr {
7678 pub(crate) syntax: SyntaxNode,
7679}
7680impl PrefixExpr {
7681 #[inline]
7682 pub fn expr(&self) -> Option<Expr> {
7683 support::child(&self.syntax)
7684 }
7685}
7686
7687#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7688pub struct Prepare {
7689 pub(crate) syntax: SyntaxNode,
7690}
7691impl Prepare {
7692 #[inline]
7693 pub fn name_ref(&self) -> Option<NameRef> {
7694 support::child(&self.syntax)
7695 }
7696 #[inline]
7697 pub fn prepare_token(&self) -> Option<SyntaxToken> {
7698 support::token(&self.syntax, SyntaxKind::PREPARE_KW)
7699 }
7700}
7701
7702#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7703pub struct PrepareTransaction {
7704 pub(crate) syntax: SyntaxNode,
7705}
7706impl PrepareTransaction {
7707 #[inline]
7708 pub fn literal(&self) -> Option<Literal> {
7709 support::child(&self.syntax)
7710 }
7711 #[inline]
7712 pub fn prepare_token(&self) -> Option<SyntaxToken> {
7713 support::token(&self.syntax, SyntaxKind::PREPARE_KW)
7714 }
7715 #[inline]
7716 pub fn transaction_token(&self) -> Option<SyntaxToken> {
7717 support::token(&self.syntax, SyntaxKind::TRANSACTION_KW)
7718 }
7719}
7720
7721#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7722pub struct PreserveRows {
7723 pub(crate) syntax: SyntaxNode,
7724}
7725impl PreserveRows {
7726 #[inline]
7727 pub fn preserve_token(&self) -> Option<SyntaxToken> {
7728 support::token(&self.syntax, SyntaxKind::PRESERVE_KW)
7729 }
7730 #[inline]
7731 pub fn rows_token(&self) -> Option<SyntaxToken> {
7732 support::token(&self.syntax, SyntaxKind::ROWS_KW)
7733 }
7734}
7735
7736#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7737pub struct PrimaryKeyConstraint {
7738 pub(crate) syntax: SyntaxNode,
7739}
7740impl PrimaryKeyConstraint {
7741 #[inline]
7742 pub fn column_list(&self) -> Option<ColumnList> {
7743 support::child(&self.syntax)
7744 }
7745 #[inline]
7746 pub fn index_params(&self) -> Option<IndexParams> {
7747 support::child(&self.syntax)
7748 }
7749 #[inline]
7750 pub fn name_ref(&self) -> Option<NameRef> {
7751 support::child(&self.syntax)
7752 }
7753 #[inline]
7754 pub fn using_index(&self) -> Option<UsingIndex> {
7755 support::child(&self.syntax)
7756 }
7757 #[inline]
7758 pub fn constraint_token(&self) -> Option<SyntaxToken> {
7759 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
7760 }
7761 #[inline]
7762 pub fn key_token(&self) -> Option<SyntaxToken> {
7763 support::token(&self.syntax, SyntaxKind::KEY_KW)
7764 }
7765 #[inline]
7766 pub fn primary_token(&self) -> Option<SyntaxToken> {
7767 support::token(&self.syntax, SyntaxKind::PRIMARY_KW)
7768 }
7769}
7770
7771#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7772pub struct ReadCommitted {
7773 pub(crate) syntax: SyntaxNode,
7774}
7775impl ReadCommitted {
7776 #[inline]
7777 pub fn committed_token(&self) -> Option<SyntaxToken> {
7778 support::token(&self.syntax, SyntaxKind::COMMITTED_KW)
7779 }
7780 #[inline]
7781 pub fn isolation_token(&self) -> Option<SyntaxToken> {
7782 support::token(&self.syntax, SyntaxKind::ISOLATION_KW)
7783 }
7784 #[inline]
7785 pub fn level_token(&self) -> Option<SyntaxToken> {
7786 support::token(&self.syntax, SyntaxKind::LEVEL_KW)
7787 }
7788 #[inline]
7789 pub fn read_token(&self) -> Option<SyntaxToken> {
7790 support::token(&self.syntax, SyntaxKind::READ_KW)
7791 }
7792}
7793
7794#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7795pub struct ReadOnly {
7796 pub(crate) syntax: SyntaxNode,
7797}
7798impl ReadOnly {
7799 #[inline]
7800 pub fn only_token(&self) -> Option<SyntaxToken> {
7801 support::token(&self.syntax, SyntaxKind::ONLY_KW)
7802 }
7803 #[inline]
7804 pub fn read_token(&self) -> Option<SyntaxToken> {
7805 support::token(&self.syntax, SyntaxKind::READ_KW)
7806 }
7807}
7808
7809#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7810pub struct ReadUncommitted {
7811 pub(crate) syntax: SyntaxNode,
7812}
7813impl ReadUncommitted {
7814 #[inline]
7815 pub fn isolation_token(&self) -> Option<SyntaxToken> {
7816 support::token(&self.syntax, SyntaxKind::ISOLATION_KW)
7817 }
7818 #[inline]
7819 pub fn level_token(&self) -> Option<SyntaxToken> {
7820 support::token(&self.syntax, SyntaxKind::LEVEL_KW)
7821 }
7822 #[inline]
7823 pub fn read_token(&self) -> Option<SyntaxToken> {
7824 support::token(&self.syntax, SyntaxKind::READ_KW)
7825 }
7826 #[inline]
7827 pub fn uncommitted_token(&self) -> Option<SyntaxToken> {
7828 support::token(&self.syntax, SyntaxKind::UNCOMMITTED_KW)
7829 }
7830}
7831
7832#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7833pub struct ReadWrite {
7834 pub(crate) syntax: SyntaxNode,
7835}
7836impl ReadWrite {
7837 #[inline]
7838 pub fn read_token(&self) -> Option<SyntaxToken> {
7839 support::token(&self.syntax, SyntaxKind::READ_KW)
7840 }
7841 #[inline]
7842 pub fn write_token(&self) -> Option<SyntaxToken> {
7843 support::token(&self.syntax, SyntaxKind::WRITE_KW)
7844 }
7845}
7846
7847#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7848pub struct Reassign {
7849 pub(crate) syntax: SyntaxNode,
7850}
7851impl Reassign {
7852 #[inline]
7853 pub fn reassign_token(&self) -> Option<SyntaxToken> {
7854 support::token(&self.syntax, SyntaxKind::REASSIGN_KW)
7855 }
7856}
7857
7858#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7859pub struct ReferencesConstraint {
7860 pub(crate) syntax: SyntaxNode,
7861}
7862impl ReferencesConstraint {
7863 #[inline]
7864 pub fn match_type(&self) -> Option<MatchType> {
7865 support::child(&self.syntax)
7866 }
7867 #[inline]
7868 pub fn name_ref(&self) -> Option<NameRef> {
7869 support::child(&self.syntax)
7870 }
7871 #[inline]
7872 pub fn on_delete_action(&self) -> Option<OnDeleteAction> {
7873 support::child(&self.syntax)
7874 }
7875 #[inline]
7876 pub fn on_update_action(&self) -> Option<OnUpdateAction> {
7877 support::child(&self.syntax)
7878 }
7879 #[inline]
7880 pub fn path(&self) -> Option<Path> {
7881 support::child(&self.syntax)
7882 }
7883 #[inline]
7884 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
7885 support::token(&self.syntax, SyntaxKind::L_PAREN)
7886 }
7887 #[inline]
7888 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
7889 support::token(&self.syntax, SyntaxKind::R_PAREN)
7890 }
7891 #[inline]
7892 pub fn constraint_token(&self) -> Option<SyntaxToken> {
7893 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
7894 }
7895 #[inline]
7896 pub fn references_token(&self) -> Option<SyntaxToken> {
7897 support::token(&self.syntax, SyntaxKind::REFERENCES_KW)
7898 }
7899}
7900
7901#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7902pub struct Refresh {
7903 pub(crate) syntax: SyntaxNode,
7904}
7905impl Refresh {
7906 #[inline]
7907 pub fn name_ref(&self) -> Option<NameRef> {
7908 support::child(&self.syntax)
7909 }
7910 #[inline]
7911 pub fn concurrently_token(&self) -> Option<SyntaxToken> {
7912 support::token(&self.syntax, SyntaxKind::CONCURRENTLY_KW)
7913 }
7914 #[inline]
7915 pub fn data_token(&self) -> Option<SyntaxToken> {
7916 support::token(&self.syntax, SyntaxKind::DATA_KW)
7917 }
7918 #[inline]
7919 pub fn materialized_token(&self) -> Option<SyntaxToken> {
7920 support::token(&self.syntax, SyntaxKind::MATERIALIZED_KW)
7921 }
7922 #[inline]
7923 pub fn refresh_token(&self) -> Option<SyntaxToken> {
7924 support::token(&self.syntax, SyntaxKind::REFRESH_KW)
7925 }
7926 #[inline]
7927 pub fn view_token(&self) -> Option<SyntaxToken> {
7928 support::token(&self.syntax, SyntaxKind::VIEW_KW)
7929 }
7930 #[inline]
7931 pub fn with_token(&self) -> Option<SyntaxToken> {
7932 support::token(&self.syntax, SyntaxKind::WITH_KW)
7933 }
7934}
7935
7936#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7937pub struct Reindex {
7938 pub(crate) syntax: SyntaxNode,
7939}
7940impl Reindex {
7941 #[inline]
7942 pub fn reindex_token(&self) -> Option<SyntaxToken> {
7943 support::token(&self.syntax, SyntaxKind::REINDEX_KW)
7944 }
7945}
7946
7947#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7948pub struct RelationName {
7949 pub(crate) syntax: SyntaxNode,
7950}
7951impl RelationName {
7952 #[inline]
7953 pub fn path(&self) -> Option<Path> {
7954 support::child(&self.syntax)
7955 }
7956 #[inline]
7957 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
7958 support::token(&self.syntax, SyntaxKind::L_PAREN)
7959 }
7960 #[inline]
7961 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
7962 support::token(&self.syntax, SyntaxKind::R_PAREN)
7963 }
7964 #[inline]
7965 pub fn star_token(&self) -> Option<SyntaxToken> {
7966 support::token(&self.syntax, SyntaxKind::STAR)
7967 }
7968 #[inline]
7969 pub fn only_token(&self) -> Option<SyntaxToken> {
7970 support::token(&self.syntax, SyntaxKind::ONLY_KW)
7971 }
7972}
7973
7974#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7975pub struct ReleaseSavepoint {
7976 pub(crate) syntax: SyntaxNode,
7977}
7978impl ReleaseSavepoint {
7979 #[inline]
7980 pub fn name_ref(&self) -> Option<NameRef> {
7981 support::child(&self.syntax)
7982 }
7983 #[inline]
7984 pub fn release_token(&self) -> Option<SyntaxToken> {
7985 support::token(&self.syntax, SyntaxKind::RELEASE_KW)
7986 }
7987 #[inline]
7988 pub fn savepoint_token(&self) -> Option<SyntaxToken> {
7989 support::token(&self.syntax, SyntaxKind::SAVEPOINT_KW)
7990 }
7991}
7992
7993#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7994pub struct RenameColumn {
7995 pub(crate) syntax: SyntaxNode,
7996}
7997impl RenameColumn {
7998 #[inline]
7999 pub fn column_token(&self) -> Option<SyntaxToken> {
8000 support::token(&self.syntax, SyntaxKind::COLUMN_KW)
8001 }
8002 #[inline]
8003 pub fn rename_token(&self) -> Option<SyntaxToken> {
8004 support::token(&self.syntax, SyntaxKind::RENAME_KW)
8005 }
8006}
8007
8008#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8009pub struct RenameConstraint {
8010 pub(crate) syntax: SyntaxNode,
8011}
8012impl RenameConstraint {
8013 #[inline]
8014 pub fn name(&self) -> Option<Name> {
8015 support::child(&self.syntax)
8016 }
8017 #[inline]
8018 pub fn name_ref(&self) -> Option<NameRef> {
8019 support::child(&self.syntax)
8020 }
8021 #[inline]
8022 pub fn constraint_token(&self) -> Option<SyntaxToken> {
8023 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
8024 }
8025 #[inline]
8026 pub fn rename_token(&self) -> Option<SyntaxToken> {
8027 support::token(&self.syntax, SyntaxKind::RENAME_KW)
8028 }
8029 #[inline]
8030 pub fn to_token(&self) -> Option<SyntaxToken> {
8031 support::token(&self.syntax, SyntaxKind::TO_KW)
8032 }
8033}
8034
8035#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8036pub struct RenameTable {
8037 pub(crate) syntax: SyntaxNode,
8038}
8039impl RenameTable {
8040 #[inline]
8041 pub fn name_ref(&self) -> Option<NameRef> {
8042 support::child(&self.syntax)
8043 }
8044 #[inline]
8045 pub fn rename_token(&self) -> Option<SyntaxToken> {
8046 support::token(&self.syntax, SyntaxKind::RENAME_KW)
8047 }
8048 #[inline]
8049 pub fn to_token(&self) -> Option<SyntaxToken> {
8050 support::token(&self.syntax, SyntaxKind::TO_KW)
8051 }
8052}
8053
8054#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8055pub struct RenameTo {
8056 pub(crate) syntax: SyntaxNode,
8057}
8058impl RenameTo {
8059 #[inline]
8060 pub fn name(&self) -> Option<Name> {
8061 support::child(&self.syntax)
8062 }
8063 #[inline]
8064 pub fn rename_token(&self) -> Option<SyntaxToken> {
8065 support::token(&self.syntax, SyntaxKind::RENAME_KW)
8066 }
8067 #[inline]
8068 pub fn to_token(&self) -> Option<SyntaxToken> {
8069 support::token(&self.syntax, SyntaxKind::TO_KW)
8070 }
8071}
8072
8073#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8074pub struct RepeatableRead {
8075 pub(crate) syntax: SyntaxNode,
8076}
8077impl RepeatableRead {
8078 #[inline]
8079 pub fn isolation_token(&self) -> Option<SyntaxToken> {
8080 support::token(&self.syntax, SyntaxKind::ISOLATION_KW)
8081 }
8082 #[inline]
8083 pub fn level_token(&self) -> Option<SyntaxToken> {
8084 support::token(&self.syntax, SyntaxKind::LEVEL_KW)
8085 }
8086 #[inline]
8087 pub fn read_token(&self) -> Option<SyntaxToken> {
8088 support::token(&self.syntax, SyntaxKind::READ_KW)
8089 }
8090 #[inline]
8091 pub fn repeatable_token(&self) -> Option<SyntaxToken> {
8092 support::token(&self.syntax, SyntaxKind::REPEATABLE_KW)
8093 }
8094}
8095
8096#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8097pub struct ReplicaIdentity {
8098 pub(crate) syntax: SyntaxNode,
8099}
8100impl ReplicaIdentity {
8101 #[inline]
8102 pub fn identity_token(&self) -> Option<SyntaxToken> {
8103 support::token(&self.syntax, SyntaxKind::IDENTITY_KW)
8104 }
8105 #[inline]
8106 pub fn replica_token(&self) -> Option<SyntaxToken> {
8107 support::token(&self.syntax, SyntaxKind::REPLICA_KW)
8108 }
8109}
8110
8111#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8112pub struct Reset {
8113 pub(crate) syntax: SyntaxNode,
8114}
8115impl Reset {
8116 #[inline]
8117 pub fn name_ref(&self) -> Option<NameRef> {
8118 support::child(&self.syntax)
8119 }
8120 #[inline]
8121 pub fn all_token(&self) -> Option<SyntaxToken> {
8122 support::token(&self.syntax, SyntaxKind::ALL_KW)
8123 }
8124 #[inline]
8125 pub fn reset_token(&self) -> Option<SyntaxToken> {
8126 support::token(&self.syntax, SyntaxKind::RESET_KW)
8127 }
8128}
8129
8130#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8131pub struct ResetFuncOption {
8132 pub(crate) syntax: SyntaxNode,
8133}
8134impl ResetFuncOption {
8135 #[inline]
8136 pub fn name_ref(&self) -> Option<NameRef> {
8137 support::child(&self.syntax)
8138 }
8139 #[inline]
8140 pub fn reset_token(&self) -> Option<SyntaxToken> {
8141 support::token(&self.syntax, SyntaxKind::RESET_KW)
8142 }
8143}
8144
8145#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8146pub struct ResetOptions {
8147 pub(crate) syntax: SyntaxNode,
8148}
8149impl ResetOptions {
8150 #[inline]
8151 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
8152 support::token(&self.syntax, SyntaxKind::L_PAREN)
8153 }
8154 #[inline]
8155 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
8156 support::token(&self.syntax, SyntaxKind::R_PAREN)
8157 }
8158 #[inline]
8159 pub fn reset_token(&self) -> Option<SyntaxToken> {
8160 support::token(&self.syntax, SyntaxKind::RESET_KW)
8161 }
8162}
8163
8164#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8165pub struct ResetStorageParams {
8166 pub(crate) syntax: SyntaxNode,
8167}
8168impl ResetStorageParams {
8169 #[inline]
8170 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
8171 support::token(&self.syntax, SyntaxKind::L_PAREN)
8172 }
8173 #[inline]
8174 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
8175 support::token(&self.syntax, SyntaxKind::R_PAREN)
8176 }
8177 #[inline]
8178 pub fn reset_token(&self) -> Option<SyntaxToken> {
8179 support::token(&self.syntax, SyntaxKind::RESET_KW)
8180 }
8181}
8182
8183#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8184pub struct Restart {
8185 pub(crate) syntax: SyntaxNode,
8186}
8187impl Restart {
8188 #[inline]
8189 pub fn restart_token(&self) -> Option<SyntaxToken> {
8190 support::token(&self.syntax, SyntaxKind::RESTART_KW)
8191 }
8192 #[inline]
8193 pub fn with_token(&self) -> Option<SyntaxToken> {
8194 support::token(&self.syntax, SyntaxKind::WITH_KW)
8195 }
8196}
8197
8198#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8199pub struct Restrict {
8200 pub(crate) syntax: SyntaxNode,
8201}
8202impl Restrict {
8203 #[inline]
8204 pub fn restrict_token(&self) -> Option<SyntaxToken> {
8205 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
8206 }
8207}
8208
8209#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8210pub struct RetType {
8211 pub(crate) syntax: SyntaxNode,
8212}
8213impl RetType {
8214 #[inline]
8215 pub fn ty(&self) -> Option<Type> {
8216 support::child(&self.syntax)
8217 }
8218 #[inline]
8219 pub fn returns_token(&self) -> Option<SyntaxToken> {
8220 support::token(&self.syntax, SyntaxKind::RETURNS_KW)
8221 }
8222}
8223
8224#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8225pub struct ReturnFuncOption {
8226 pub(crate) syntax: SyntaxNode,
8227}
8228impl ReturnFuncOption {
8229 #[inline]
8230 pub fn expr(&self) -> Option<Expr> {
8231 support::child(&self.syntax)
8232 }
8233 #[inline]
8234 pub fn return_token(&self) -> Option<SyntaxToken> {
8235 support::token(&self.syntax, SyntaxKind::RETURN_KW)
8236 }
8237}
8238
8239#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8240pub struct ReturningClause {
8241 pub(crate) syntax: SyntaxNode,
8242}
8243impl ReturningClause {
8244 #[inline]
8245 pub fn target_list(&self) -> Option<TargetList> {
8246 support::child(&self.syntax)
8247 }
8248 #[inline]
8249 pub fn returning_token(&self) -> Option<SyntaxToken> {
8250 support::token(&self.syntax, SyntaxKind::RETURNING_KW)
8251 }
8252}
8253
8254#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8255pub struct Revoke {
8256 pub(crate) syntax: SyntaxNode,
8257}
8258impl Revoke {
8259 #[inline]
8260 pub fn revoke_token(&self) -> Option<SyntaxToken> {
8261 support::token(&self.syntax, SyntaxKind::REVOKE_KW)
8262 }
8263}
8264
8265#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8266pub struct Role {
8267 pub(crate) syntax: SyntaxNode,
8268}
8269impl Role {
8270 #[inline]
8271 pub fn current_role_token(&self) -> Option<SyntaxToken> {
8272 support::token(&self.syntax, SyntaxKind::CURRENT_ROLE_KW)
8273 }
8274 #[inline]
8275 pub fn current_user_token(&self) -> Option<SyntaxToken> {
8276 support::token(&self.syntax, SyntaxKind::CURRENT_USER_KW)
8277 }
8278 #[inline]
8279 pub fn group_token(&self) -> Option<SyntaxToken> {
8280 support::token(&self.syntax, SyntaxKind::GROUP_KW)
8281 }
8282 #[inline]
8283 pub fn ident_token(&self) -> Option<SyntaxToken> {
8284 support::token(&self.syntax, SyntaxKind::IDENT)
8285 }
8286 #[inline]
8287 pub fn session_user_token(&self) -> Option<SyntaxToken> {
8288 support::token(&self.syntax, SyntaxKind::SESSION_USER_KW)
8289 }
8290}
8291
8292#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8293pub struct Rollback {
8294 pub(crate) syntax: SyntaxNode,
8295}
8296impl Rollback {
8297 #[inline]
8298 pub fn abort_token(&self) -> Option<SyntaxToken> {
8299 support::token(&self.syntax, SyntaxKind::ABORT_KW)
8300 }
8301 #[inline]
8302 pub fn rollback_token(&self) -> Option<SyntaxToken> {
8303 support::token(&self.syntax, SyntaxKind::ROLLBACK_KW)
8304 }
8305}
8306
8307#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8308pub struct RowsFuncOption {
8309 pub(crate) syntax: SyntaxNode,
8310}
8311impl RowsFuncOption {
8312 #[inline]
8313 pub fn rows_token(&self) -> Option<SyntaxToken> {
8314 support::token(&self.syntax, SyntaxKind::ROWS_KW)
8315 }
8316}
8317
8318#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8319pub struct Savepoint {
8320 pub(crate) syntax: SyntaxNode,
8321}
8322impl Savepoint {
8323 #[inline]
8324 pub fn savepoint_token(&self) -> Option<SyntaxToken> {
8325 support::token(&self.syntax, SyntaxKind::SAVEPOINT_KW)
8326 }
8327}
8328
8329#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8330pub struct SecurityFuncOption {
8331 pub(crate) syntax: SyntaxNode,
8332}
8333impl SecurityFuncOption {
8334 #[inline]
8335 pub fn definer_token(&self) -> Option<SyntaxToken> {
8336 support::token(&self.syntax, SyntaxKind::DEFINER_KW)
8337 }
8338 #[inline]
8339 pub fn invoker_token(&self) -> Option<SyntaxToken> {
8340 support::token(&self.syntax, SyntaxKind::INVOKER_KW)
8341 }
8342 #[inline]
8343 pub fn security_token(&self) -> Option<SyntaxToken> {
8344 support::token(&self.syntax, SyntaxKind::SECURITY_KW)
8345 }
8346}
8347
8348#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8349pub struct SecurityLabel {
8350 pub(crate) syntax: SyntaxNode,
8351}
8352impl SecurityLabel {
8353 #[inline]
8354 pub fn label_token(&self) -> Option<SyntaxToken> {
8355 support::token(&self.syntax, SyntaxKind::LABEL_KW)
8356 }
8357 #[inline]
8358 pub fn security_token(&self) -> Option<SyntaxToken> {
8359 support::token(&self.syntax, SyntaxKind::SECURITY_KW)
8360 }
8361}
8362
8363#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8364pub struct Select {
8365 pub(crate) syntax: SyntaxNode,
8366}
8367impl Select {
8368 #[inline]
8369 pub fn fetch_clause(&self) -> Option<FetchClause> {
8370 support::child(&self.syntax)
8371 }
8372 #[inline]
8373 pub fn filter_clause(&self) -> Option<FilterClause> {
8374 support::child(&self.syntax)
8375 }
8376 #[inline]
8377 pub fn from_clause(&self) -> Option<FromClause> {
8378 support::child(&self.syntax)
8379 }
8380 #[inline]
8381 pub fn group_by_clause(&self) -> Option<GroupByClause> {
8382 support::child(&self.syntax)
8383 }
8384 #[inline]
8385 pub fn having_clause(&self) -> Option<HavingClause> {
8386 support::child(&self.syntax)
8387 }
8388 #[inline]
8389 pub fn limit_clause(&self) -> Option<LimitClause> {
8390 support::child(&self.syntax)
8391 }
8392 #[inline]
8393 pub fn locking_clauses(&self) -> AstChildren<LockingClause> {
8394 support::children(&self.syntax)
8395 }
8396 #[inline]
8397 pub fn offset_clause(&self) -> Option<OffsetClause> {
8398 support::child(&self.syntax)
8399 }
8400 #[inline]
8401 pub fn order_by_clause(&self) -> Option<OrderByClause> {
8402 support::child(&self.syntax)
8403 }
8404 #[inline]
8405 pub fn select_clause(&self) -> Option<SelectClause> {
8406 support::child(&self.syntax)
8407 }
8408 #[inline]
8409 pub fn where_clause(&self) -> Option<WhereClause> {
8410 support::child(&self.syntax)
8411 }
8412 #[inline]
8413 pub fn window_clause(&self) -> Option<WindowClause> {
8414 support::child(&self.syntax)
8415 }
8416 #[inline]
8417 pub fn with_clause(&self) -> Option<WithClause> {
8418 support::child(&self.syntax)
8419 }
8420}
8421
8422#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8423pub struct SelectClause {
8424 pub(crate) syntax: SyntaxNode,
8425}
8426impl SelectClause {
8427 #[inline]
8428 pub fn distinct_clause(&self) -> Option<DistinctClause> {
8429 support::child(&self.syntax)
8430 }
8431 #[inline]
8432 pub fn target_list(&self) -> Option<TargetList> {
8433 support::child(&self.syntax)
8434 }
8435 #[inline]
8436 pub fn all_token(&self) -> Option<SyntaxToken> {
8437 support::token(&self.syntax, SyntaxKind::ALL_KW)
8438 }
8439 #[inline]
8440 pub fn select_token(&self) -> Option<SyntaxToken> {
8441 support::token(&self.syntax, SyntaxKind::SELECT_KW)
8442 }
8443}
8444
8445#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8446pub struct SelectInto {
8447 pub(crate) syntax: SyntaxNode,
8448}
8449impl SelectInto {
8450 #[inline]
8451 pub fn filter_clause(&self) -> Option<FilterClause> {
8452 support::child(&self.syntax)
8453 }
8454 #[inline]
8455 pub fn from_clause(&self) -> Option<FromClause> {
8456 support::child(&self.syntax)
8457 }
8458 #[inline]
8459 pub fn group_by_clause(&self) -> Option<GroupByClause> {
8460 support::child(&self.syntax)
8461 }
8462 #[inline]
8463 pub fn having_clause(&self) -> Option<HavingClause> {
8464 support::child(&self.syntax)
8465 }
8466 #[inline]
8467 pub fn into_clause(&self) -> Option<IntoClause> {
8468 support::child(&self.syntax)
8469 }
8470 #[inline]
8471 pub fn limit_clause(&self) -> Option<LimitClause> {
8472 support::child(&self.syntax)
8473 }
8474 #[inline]
8475 pub fn locking_clauses(&self) -> AstChildren<LockingClause> {
8476 support::children(&self.syntax)
8477 }
8478 #[inline]
8479 pub fn offset_clause(&self) -> Option<OffsetClause> {
8480 support::child(&self.syntax)
8481 }
8482 #[inline]
8483 pub fn order_by_clause(&self) -> Option<OrderByClause> {
8484 support::child(&self.syntax)
8485 }
8486 #[inline]
8487 pub fn select_clause(&self) -> Option<SelectClause> {
8488 support::child(&self.syntax)
8489 }
8490 #[inline]
8491 pub fn where_clause(&self) -> Option<WhereClause> {
8492 support::child(&self.syntax)
8493 }
8494 #[inline]
8495 pub fn window_clause(&self) -> Option<WindowClause> {
8496 support::child(&self.syntax)
8497 }
8498}
8499
8500#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8501pub struct SequenceOptionList {
8502 pub(crate) syntax: SyntaxNode,
8503}
8504impl SequenceOptionList {
8505 #[inline]
8506 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
8507 support::token(&self.syntax, SyntaxKind::L_PAREN)
8508 }
8509 #[inline]
8510 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
8511 support::token(&self.syntax, SyntaxKind::R_PAREN)
8512 }
8513}
8514
8515#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8516pub struct Serializable {
8517 pub(crate) syntax: SyntaxNode,
8518}
8519impl Serializable {
8520 #[inline]
8521 pub fn isolation_token(&self) -> Option<SyntaxToken> {
8522 support::token(&self.syntax, SyntaxKind::ISOLATION_KW)
8523 }
8524 #[inline]
8525 pub fn level_token(&self) -> Option<SyntaxToken> {
8526 support::token(&self.syntax, SyntaxKind::LEVEL_KW)
8527 }
8528 #[inline]
8529 pub fn serializable_token(&self) -> Option<SyntaxToken> {
8530 support::token(&self.syntax, SyntaxKind::SERIALIZABLE_KW)
8531 }
8532}
8533
8534#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8535pub struct Set {
8536 pub(crate) syntax: SyntaxNode,
8537}
8538impl Set {
8539 #[inline]
8540 pub fn expr(&self) -> Option<Expr> {
8541 support::child(&self.syntax)
8542 }
8543 #[inline]
8544 pub fn path(&self) -> Option<Path> {
8545 support::child(&self.syntax)
8546 }
8547 #[inline]
8548 pub fn eq_token(&self) -> Option<SyntaxToken> {
8549 support::token(&self.syntax, SyntaxKind::EQ)
8550 }
8551 #[inline]
8552 pub fn default_token(&self) -> Option<SyntaxToken> {
8553 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
8554 }
8555 #[inline]
8556 pub fn local_token(&self) -> Option<SyntaxToken> {
8557 support::token(&self.syntax, SyntaxKind::LOCAL_KW)
8558 }
8559 #[inline]
8560 pub fn session_token(&self) -> Option<SyntaxToken> {
8561 support::token(&self.syntax, SyntaxKind::SESSION_KW)
8562 }
8563 #[inline]
8564 pub fn set_token(&self) -> Option<SyntaxToken> {
8565 support::token(&self.syntax, SyntaxKind::SET_KW)
8566 }
8567 #[inline]
8568 pub fn time_token(&self) -> Option<SyntaxToken> {
8569 support::token(&self.syntax, SyntaxKind::TIME_KW)
8570 }
8571 #[inline]
8572 pub fn to_token(&self) -> Option<SyntaxToken> {
8573 support::token(&self.syntax, SyntaxKind::TO_KW)
8574 }
8575 #[inline]
8576 pub fn zone_token(&self) -> Option<SyntaxToken> {
8577 support::token(&self.syntax, SyntaxKind::ZONE_KW)
8578 }
8579}
8580
8581#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8582pub struct SetAccessMethod {
8583 pub(crate) syntax: SyntaxNode,
8584}
8585impl SetAccessMethod {
8586 #[inline]
8587 pub fn name_ref(&self) -> Option<NameRef> {
8588 support::child(&self.syntax)
8589 }
8590 #[inline]
8591 pub fn access_token(&self) -> Option<SyntaxToken> {
8592 support::token(&self.syntax, SyntaxKind::ACCESS_KW)
8593 }
8594 #[inline]
8595 pub fn method_token(&self) -> Option<SyntaxToken> {
8596 support::token(&self.syntax, SyntaxKind::METHOD_KW)
8597 }
8598 #[inline]
8599 pub fn set_token(&self) -> Option<SyntaxToken> {
8600 support::token(&self.syntax, SyntaxKind::SET_KW)
8601 }
8602}
8603
8604#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8605pub struct SetCompression {
8606 pub(crate) syntax: SyntaxNode,
8607}
8608impl SetCompression {
8609 #[inline]
8610 pub fn compression_token(&self) -> Option<SyntaxToken> {
8611 support::token(&self.syntax, SyntaxKind::COMPRESSION_KW)
8612 }
8613 #[inline]
8614 pub fn set_token(&self) -> Option<SyntaxToken> {
8615 support::token(&self.syntax, SyntaxKind::SET_KW)
8616 }
8617}
8618
8619#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8620pub struct SetConstraints {
8621 pub(crate) syntax: SyntaxNode,
8622}
8623impl SetConstraints {
8624 #[inline]
8625 pub fn constraints_token(&self) -> Option<SyntaxToken> {
8626 support::token(&self.syntax, SyntaxKind::CONSTRAINTS_KW)
8627 }
8628 #[inline]
8629 pub fn set_token(&self) -> Option<SyntaxToken> {
8630 support::token(&self.syntax, SyntaxKind::SET_KW)
8631 }
8632}
8633
8634#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8635pub struct SetDefault {
8636 pub(crate) syntax: SyntaxNode,
8637}
8638impl SetDefault {
8639 #[inline]
8640 pub fn expr(&self) -> Option<Expr> {
8641 support::child(&self.syntax)
8642 }
8643 #[inline]
8644 pub fn default_token(&self) -> Option<SyntaxToken> {
8645 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
8646 }
8647 #[inline]
8648 pub fn set_token(&self) -> Option<SyntaxToken> {
8649 support::token(&self.syntax, SyntaxKind::SET_KW)
8650 }
8651}
8652
8653#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8654pub struct SetDefaultColumns {
8655 pub(crate) syntax: SyntaxNode,
8656}
8657impl SetDefaultColumns {
8658 #[inline]
8659 pub fn column_list(&self) -> Option<ColumnList> {
8660 support::child(&self.syntax)
8661 }
8662 #[inline]
8663 pub fn default_token(&self) -> Option<SyntaxToken> {
8664 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
8665 }
8666 #[inline]
8667 pub fn set_token(&self) -> Option<SyntaxToken> {
8668 support::token(&self.syntax, SyntaxKind::SET_KW)
8669 }
8670}
8671
8672#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8673pub struct SetExpression {
8674 pub(crate) syntax: SyntaxNode,
8675}
8676impl SetExpression {
8677 #[inline]
8678 pub fn expr(&self) -> Option<Expr> {
8679 support::child(&self.syntax)
8680 }
8681 #[inline]
8682 pub fn expression_token(&self) -> Option<SyntaxToken> {
8683 support::token(&self.syntax, SyntaxKind::EXPRESSION_KW)
8684 }
8685 #[inline]
8686 pub fn set_token(&self) -> Option<SyntaxToken> {
8687 support::token(&self.syntax, SyntaxKind::SET_KW)
8688 }
8689}
8690
8691#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8692pub struct SetFuncOption {
8693 pub(crate) syntax: SyntaxNode,
8694}
8695impl SetFuncOption {
8696 #[inline]
8697 pub fn set_token(&self) -> Option<SyntaxToken> {
8698 support::token(&self.syntax, SyntaxKind::SET_KW)
8699 }
8700}
8701
8702#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8703pub struct SetGenerated {
8704 pub(crate) syntax: SyntaxNode,
8705}
8706impl SetGenerated {
8707 #[inline]
8708 pub fn set_token(&self) -> Option<SyntaxToken> {
8709 support::token(&self.syntax, SyntaxKind::SET_KW)
8710 }
8711}
8712
8713#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8714pub struct SetGeneratedOptions {
8715 pub(crate) syntax: SyntaxNode,
8716}
8717impl SetGeneratedOptions {
8718 #[inline]
8719 pub fn set_token(&self) -> Option<SyntaxToken> {
8720 support::token(&self.syntax, SyntaxKind::SET_KW)
8721 }
8722}
8723
8724#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8725pub struct SetLogged {
8726 pub(crate) syntax: SyntaxNode,
8727}
8728impl SetLogged {
8729 #[inline]
8730 pub fn logged_token(&self) -> Option<SyntaxToken> {
8731 support::token(&self.syntax, SyntaxKind::LOGGED_KW)
8732 }
8733 #[inline]
8734 pub fn set_token(&self) -> Option<SyntaxToken> {
8735 support::token(&self.syntax, SyntaxKind::SET_KW)
8736 }
8737}
8738
8739#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8740pub struct SetNotNull {
8741 pub(crate) syntax: SyntaxNode,
8742}
8743impl SetNotNull {
8744 #[inline]
8745 pub fn not_token(&self) -> Option<SyntaxToken> {
8746 support::token(&self.syntax, SyntaxKind::NOT_KW)
8747 }
8748 #[inline]
8749 pub fn null_token(&self) -> Option<SyntaxToken> {
8750 support::token(&self.syntax, SyntaxKind::NULL_KW)
8751 }
8752 #[inline]
8753 pub fn set_token(&self) -> Option<SyntaxToken> {
8754 support::token(&self.syntax, SyntaxKind::SET_KW)
8755 }
8756}
8757
8758#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8759pub struct SetNullColumns {
8760 pub(crate) syntax: SyntaxNode,
8761}
8762impl SetNullColumns {
8763 #[inline]
8764 pub fn column_list(&self) -> Option<ColumnList> {
8765 support::child(&self.syntax)
8766 }
8767 #[inline]
8768 pub fn null_token(&self) -> Option<SyntaxToken> {
8769 support::token(&self.syntax, SyntaxKind::NULL_KW)
8770 }
8771 #[inline]
8772 pub fn set_token(&self) -> Option<SyntaxToken> {
8773 support::token(&self.syntax, SyntaxKind::SET_KW)
8774 }
8775}
8776
8777#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8778pub struct SetOptions {
8779 pub(crate) syntax: SyntaxNode,
8780}
8781impl SetOptions {
8782 #[inline]
8783 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
8784 support::token(&self.syntax, SyntaxKind::L_PAREN)
8785 }
8786 #[inline]
8787 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
8788 support::token(&self.syntax, SyntaxKind::R_PAREN)
8789 }
8790 #[inline]
8791 pub fn set_token(&self) -> Option<SyntaxToken> {
8792 support::token(&self.syntax, SyntaxKind::SET_KW)
8793 }
8794}
8795
8796#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8797pub struct SetOptionsList {
8798 pub(crate) syntax: SyntaxNode,
8799}
8800impl SetOptionsList {
8801 #[inline]
8802 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
8803 support::token(&self.syntax, SyntaxKind::L_PAREN)
8804 }
8805 #[inline]
8806 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
8807 support::token(&self.syntax, SyntaxKind::R_PAREN)
8808 }
8809 #[inline]
8810 pub fn set_token(&self) -> Option<SyntaxToken> {
8811 support::token(&self.syntax, SyntaxKind::SET_KW)
8812 }
8813}
8814
8815#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8816pub struct SetRole {
8817 pub(crate) syntax: SyntaxNode,
8818}
8819impl SetRole {
8820 #[inline]
8821 pub fn role_token(&self) -> Option<SyntaxToken> {
8822 support::token(&self.syntax, SyntaxKind::ROLE_KW)
8823 }
8824 #[inline]
8825 pub fn set_token(&self) -> Option<SyntaxToken> {
8826 support::token(&self.syntax, SyntaxKind::SET_KW)
8827 }
8828}
8829
8830#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8831pub struct SetSchema {
8832 pub(crate) syntax: SyntaxNode,
8833}
8834impl SetSchema {
8835 #[inline]
8836 pub fn name_ref(&self) -> Option<NameRef> {
8837 support::child(&self.syntax)
8838 }
8839 #[inline]
8840 pub fn schema_token(&self) -> Option<SyntaxToken> {
8841 support::token(&self.syntax, SyntaxKind::SCHEMA_KW)
8842 }
8843 #[inline]
8844 pub fn set_token(&self) -> Option<SyntaxToken> {
8845 support::token(&self.syntax, SyntaxKind::SET_KW)
8846 }
8847}
8848
8849#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8850pub struct SetSequenceOption {
8851 pub(crate) syntax: SyntaxNode,
8852}
8853impl SetSequenceOption {
8854 #[inline]
8855 pub fn set_token(&self) -> Option<SyntaxToken> {
8856 support::token(&self.syntax, SyntaxKind::SET_KW)
8857 }
8858}
8859
8860#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8861pub struct SetSessionAuth {
8862 pub(crate) syntax: SyntaxNode,
8863}
8864impl SetSessionAuth {
8865 #[inline]
8866 pub fn authorization_token(&self) -> Option<SyntaxToken> {
8867 support::token(&self.syntax, SyntaxKind::AUTHORIZATION_KW)
8868 }
8869 #[inline]
8870 pub fn session_token(&self) -> Option<SyntaxToken> {
8871 support::token(&self.syntax, SyntaxKind::SESSION_KW)
8872 }
8873 #[inline]
8874 pub fn set_token(&self) -> Option<SyntaxToken> {
8875 support::token(&self.syntax, SyntaxKind::SET_KW)
8876 }
8877}
8878
8879#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8880pub struct SetStatistics {
8881 pub(crate) syntax: SyntaxNode,
8882}
8883impl SetStatistics {
8884 #[inline]
8885 pub fn set_token(&self) -> Option<SyntaxToken> {
8886 support::token(&self.syntax, SyntaxKind::SET_KW)
8887 }
8888 #[inline]
8889 pub fn statistics_token(&self) -> Option<SyntaxToken> {
8890 support::token(&self.syntax, SyntaxKind::STATISTICS_KW)
8891 }
8892}
8893
8894#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8895pub struct SetStorage {
8896 pub(crate) syntax: SyntaxNode,
8897}
8898impl SetStorage {
8899 #[inline]
8900 pub fn set_token(&self) -> Option<SyntaxToken> {
8901 support::token(&self.syntax, SyntaxKind::SET_KW)
8902 }
8903 #[inline]
8904 pub fn storage_token(&self) -> Option<SyntaxToken> {
8905 support::token(&self.syntax, SyntaxKind::STORAGE_KW)
8906 }
8907}
8908
8909#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8910pub struct SetStorageParams {
8911 pub(crate) syntax: SyntaxNode,
8912}
8913impl SetStorageParams {
8914 #[inline]
8915 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
8916 support::token(&self.syntax, SyntaxKind::L_PAREN)
8917 }
8918 #[inline]
8919 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
8920 support::token(&self.syntax, SyntaxKind::R_PAREN)
8921 }
8922 #[inline]
8923 pub fn set_token(&self) -> Option<SyntaxToken> {
8924 support::token(&self.syntax, SyntaxKind::SET_KW)
8925 }
8926}
8927
8928#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8929pub struct SetTablespace {
8930 pub(crate) syntax: SyntaxNode,
8931}
8932impl SetTablespace {
8933 #[inline]
8934 pub fn name_ref(&self) -> Option<NameRef> {
8935 support::child(&self.syntax)
8936 }
8937 #[inline]
8938 pub fn set_token(&self) -> Option<SyntaxToken> {
8939 support::token(&self.syntax, SyntaxKind::SET_KW)
8940 }
8941 #[inline]
8942 pub fn tablespace_token(&self) -> Option<SyntaxToken> {
8943 support::token(&self.syntax, SyntaxKind::TABLESPACE_KW)
8944 }
8945}
8946
8947#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8948pub struct SetTransaction {
8949 pub(crate) syntax: SyntaxNode,
8950}
8951impl SetTransaction {
8952 #[inline]
8953 pub fn set_token(&self) -> Option<SyntaxToken> {
8954 support::token(&self.syntax, SyntaxKind::SET_KW)
8955 }
8956 #[inline]
8957 pub fn transaction_token(&self) -> Option<SyntaxToken> {
8958 support::token(&self.syntax, SyntaxKind::TRANSACTION_KW)
8959 }
8960}
8961
8962#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8963pub struct SetType {
8964 pub(crate) syntax: SyntaxNode,
8965}
8966impl SetType {
8967 #[inline]
8968 pub fn collate(&self) -> Option<Collate> {
8969 support::child(&self.syntax)
8970 }
8971 #[inline]
8972 pub fn ty(&self) -> Option<Type> {
8973 support::child(&self.syntax)
8974 }
8975 #[inline]
8976 pub fn set_token(&self) -> Option<SyntaxToken> {
8977 support::token(&self.syntax, SyntaxKind::SET_KW)
8978 }
8979 #[inline]
8980 pub fn type_token(&self) -> Option<SyntaxToken> {
8981 support::token(&self.syntax, SyntaxKind::TYPE_KW)
8982 }
8983}
8984
8985#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8986pub struct SetUnlogged {
8987 pub(crate) syntax: SyntaxNode,
8988}
8989impl SetUnlogged {
8990 #[inline]
8991 pub fn set_token(&self) -> Option<SyntaxToken> {
8992 support::token(&self.syntax, SyntaxKind::SET_KW)
8993 }
8994 #[inline]
8995 pub fn unlogged_token(&self) -> Option<SyntaxToken> {
8996 support::token(&self.syntax, SyntaxKind::UNLOGGED_KW)
8997 }
8998}
8999
9000#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9001pub struct SetWithoutCluster {
9002 pub(crate) syntax: SyntaxNode,
9003}
9004impl SetWithoutCluster {
9005 #[inline]
9006 pub fn cluster_token(&self) -> Option<SyntaxToken> {
9007 support::token(&self.syntax, SyntaxKind::CLUSTER_KW)
9008 }
9009 #[inline]
9010 pub fn set_token(&self) -> Option<SyntaxToken> {
9011 support::token(&self.syntax, SyntaxKind::SET_KW)
9012 }
9013 #[inline]
9014 pub fn without_token(&self) -> Option<SyntaxToken> {
9015 support::token(&self.syntax, SyntaxKind::WITHOUT_KW)
9016 }
9017}
9018
9019#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9020pub struct SetWithoutOids {
9021 pub(crate) syntax: SyntaxNode,
9022}
9023impl SetWithoutOids {
9024 #[inline]
9025 pub fn oids_token(&self) -> Option<SyntaxToken> {
9026 support::token(&self.syntax, SyntaxKind::OIDS_KW)
9027 }
9028 #[inline]
9029 pub fn set_token(&self) -> Option<SyntaxToken> {
9030 support::token(&self.syntax, SyntaxKind::SET_KW)
9031 }
9032 #[inline]
9033 pub fn without_token(&self) -> Option<SyntaxToken> {
9034 support::token(&self.syntax, SyntaxKind::WITHOUT_KW)
9035 }
9036}
9037
9038#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9039pub struct Show {
9040 pub(crate) syntax: SyntaxNode,
9041}
9042impl Show {
9043 #[inline]
9044 pub fn show_token(&self) -> Option<SyntaxToken> {
9045 support::token(&self.syntax, SyntaxKind::SHOW_KW)
9046 }
9047}
9048
9049#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9050pub struct SimilarTo {
9051 pub(crate) syntax: SyntaxNode,
9052}
9053impl SimilarTo {
9054 #[inline]
9055 pub fn similar_token(&self) -> Option<SyntaxToken> {
9056 support::token(&self.syntax, SyntaxKind::SIMILAR_KW)
9057 }
9058 #[inline]
9059 pub fn to_token(&self) -> Option<SyntaxToken> {
9060 support::token(&self.syntax, SyntaxKind::TO_KW)
9061 }
9062}
9063
9064#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9065pub struct SortAsc {
9066 pub(crate) syntax: SyntaxNode,
9067}
9068impl SortAsc {
9069 #[inline]
9070 pub fn asc_token(&self) -> Option<SyntaxToken> {
9071 support::token(&self.syntax, SyntaxKind::ASC_KW)
9072 }
9073}
9074
9075#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9076pub struct SortBy {
9077 pub(crate) syntax: SyntaxNode,
9078}
9079impl SortBy {
9080 #[inline]
9081 pub fn expr(&self) -> Option<Expr> {
9082 support::child(&self.syntax)
9083 }
9084 #[inline]
9085 pub fn nulls_first(&self) -> Option<NullsFirst> {
9086 support::child(&self.syntax)
9087 }
9088 #[inline]
9089 pub fn nulls_last(&self) -> Option<NullsLast> {
9090 support::child(&self.syntax)
9091 }
9092 #[inline]
9093 pub fn sort_asc(&self) -> Option<SortAsc> {
9094 support::child(&self.syntax)
9095 }
9096 #[inline]
9097 pub fn sort_desc(&self) -> Option<SortDesc> {
9098 support::child(&self.syntax)
9099 }
9100 #[inline]
9101 pub fn sort_using(&self) -> Option<SortUsing> {
9102 support::child(&self.syntax)
9103 }
9104}
9105
9106#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9107pub struct SortDesc {
9108 pub(crate) syntax: SyntaxNode,
9109}
9110impl SortDesc {
9111 #[inline]
9112 pub fn desc_token(&self) -> Option<SyntaxToken> {
9113 support::token(&self.syntax, SyntaxKind::DESC_KW)
9114 }
9115}
9116
9117#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9118pub struct SortUsing {
9119 pub(crate) syntax: SyntaxNode,
9120}
9121impl SortUsing {
9122 #[inline]
9123 pub fn op(&self) -> Option<Op> {
9124 support::child(&self.syntax)
9125 }
9126 #[inline]
9127 pub fn using_token(&self) -> Option<SyntaxToken> {
9128 support::token(&self.syntax, SyntaxKind::USING_KW)
9129 }
9130}
9131
9132#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9133pub struct SourceFile {
9134 pub(crate) syntax: SyntaxNode,
9135}
9136impl SourceFile {
9137 #[inline]
9138 pub fn stmts(&self) -> AstChildren<Stmt> {
9139 support::children(&self.syntax)
9140 }
9141}
9142
9143#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9144pub struct Storage {
9145 pub(crate) syntax: SyntaxNode,
9146}
9147impl Storage {
9148 #[inline]
9149 pub fn default_token(&self) -> Option<SyntaxToken> {
9150 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
9151 }
9152 #[inline]
9153 pub fn external_token(&self) -> Option<SyntaxToken> {
9154 support::token(&self.syntax, SyntaxKind::EXTERNAL_KW)
9155 }
9156 #[inline]
9157 pub fn ident_token(&self) -> Option<SyntaxToken> {
9158 support::token(&self.syntax, SyntaxKind::IDENT)
9159 }
9160 #[inline]
9161 pub fn storage_token(&self) -> Option<SyntaxToken> {
9162 support::token(&self.syntax, SyntaxKind::STORAGE_KW)
9163 }
9164}
9165
9166#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9167pub struct StrictFuncOption {
9168 pub(crate) syntax: SyntaxNode,
9169}
9170impl StrictFuncOption {
9171 #[inline]
9172 pub fn called_token(&self) -> Option<SyntaxToken> {
9173 support::token(&self.syntax, SyntaxKind::CALLED_KW)
9174 }
9175 #[inline]
9176 pub fn input_token(&self) -> Option<SyntaxToken> {
9177 support::token(&self.syntax, SyntaxKind::INPUT_KW)
9178 }
9179 #[inline]
9180 pub fn null_token(&self) -> Option<SyntaxToken> {
9181 support::token(&self.syntax, SyntaxKind::NULL_KW)
9182 }
9183 #[inline]
9184 pub fn on_token(&self) -> Option<SyntaxToken> {
9185 support::token(&self.syntax, SyntaxKind::ON_KW)
9186 }
9187 #[inline]
9188 pub fn returns_token(&self) -> Option<SyntaxToken> {
9189 support::token(&self.syntax, SyntaxKind::RETURNS_KW)
9190 }
9191 #[inline]
9192 pub fn strict_token(&self) -> Option<SyntaxToken> {
9193 support::token(&self.syntax, SyntaxKind::STRICT_KW)
9194 }
9195}
9196
9197#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9198pub struct SupportFuncOption {
9199 pub(crate) syntax: SyntaxNode,
9200}
9201impl SupportFuncOption {
9202 #[inline]
9203 pub fn support_token(&self) -> Option<SyntaxToken> {
9204 support::token(&self.syntax, SyntaxKind::SUPPORT_KW)
9205 }
9206}
9207
9208#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9209pub struct Table {
9210 pub(crate) syntax: SyntaxNode,
9211}
9212impl Table {
9213 #[inline]
9214 pub fn table_token(&self) -> Option<SyntaxToken> {
9215 support::token(&self.syntax, SyntaxKind::TABLE_KW)
9216 }
9217}
9218
9219#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9220pub struct TableArgList {
9221 pub(crate) syntax: SyntaxNode,
9222}
9223impl TableArgList {
9224 #[inline]
9225 pub fn args(&self) -> AstChildren<TableArg> {
9226 support::children(&self.syntax)
9227 }
9228 #[inline]
9229 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
9230 support::token(&self.syntax, SyntaxKind::L_PAREN)
9231 }
9232 #[inline]
9233 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
9234 support::token(&self.syntax, SyntaxKind::R_PAREN)
9235 }
9236}
9237
9238#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9239pub struct TableList {
9240 pub(crate) syntax: SyntaxNode,
9241}
9242impl TableList {
9243 #[inline]
9244 pub fn relation_names(&self) -> AstChildren<RelationName> {
9245 support::children(&self.syntax)
9246 }
9247}
9248
9249#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9250pub struct Tablespace {
9251 pub(crate) syntax: SyntaxNode,
9252}
9253impl Tablespace {
9254 #[inline]
9255 pub fn name_ref(&self) -> Option<NameRef> {
9256 support::child(&self.syntax)
9257 }
9258 #[inline]
9259 pub fn tablespace_token(&self) -> Option<SyntaxToken> {
9260 support::token(&self.syntax, SyntaxKind::TABLESPACE_KW)
9261 }
9262}
9263
9264#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9265pub struct Target {
9266 pub(crate) syntax: SyntaxNode,
9267}
9268impl Target {
9269 #[inline]
9270 pub fn expr(&self) -> Option<Expr> {
9271 support::child(&self.syntax)
9272 }
9273 #[inline]
9274 pub fn name(&self) -> Option<Name> {
9275 support::child(&self.syntax)
9276 }
9277 #[inline]
9278 pub fn star_token(&self) -> Option<SyntaxToken> {
9279 support::token(&self.syntax, SyntaxKind::STAR)
9280 }
9281 #[inline]
9282 pub fn as_token(&self) -> Option<SyntaxToken> {
9283 support::token(&self.syntax, SyntaxKind::AS_KW)
9284 }
9285}
9286
9287#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9288pub struct TargetList {
9289 pub(crate) syntax: SyntaxNode,
9290}
9291impl TargetList {
9292 #[inline]
9293 pub fn targets(&self) -> AstChildren<Target> {
9294 support::children(&self.syntax)
9295 }
9296}
9297
9298#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9299pub struct TimeType {
9300 pub(crate) syntax: SyntaxNode,
9301}
9302impl TimeType {
9303 #[inline]
9304 pub fn literal(&self) -> Option<Literal> {
9305 support::child(&self.syntax)
9306 }
9307 #[inline]
9308 pub fn timezone(&self) -> Option<Timezone> {
9309 support::child(&self.syntax)
9310 }
9311 #[inline]
9312 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
9313 support::token(&self.syntax, SyntaxKind::L_PAREN)
9314 }
9315 #[inline]
9316 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
9317 support::token(&self.syntax, SyntaxKind::R_PAREN)
9318 }
9319 #[inline]
9320 pub fn time_token(&self) -> Option<SyntaxToken> {
9321 support::token(&self.syntax, SyntaxKind::TIME_KW)
9322 }
9323 #[inline]
9324 pub fn timestamp_token(&self) -> Option<SyntaxToken> {
9325 support::token(&self.syntax, SyntaxKind::TIMESTAMP_KW)
9326 }
9327}
9328
9329#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9330pub struct TransactionModeList {
9331 pub(crate) syntax: SyntaxNode,
9332}
9333impl TransactionModeList {
9334 #[inline]
9335 pub fn transaction_modes(&self) -> AstChildren<TransactionMode> {
9336 support::children(&self.syntax)
9337 }
9338}
9339
9340#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9341pub struct TransformFuncOption {
9342 pub(crate) syntax: SyntaxNode,
9343}
9344impl TransformFuncOption {
9345 #[inline]
9346 pub fn transform_token(&self) -> Option<SyntaxToken> {
9347 support::token(&self.syntax, SyntaxKind::TRANSFORM_KW)
9348 }
9349}
9350
9351#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9352pub struct Truncate {
9353 pub(crate) syntax: SyntaxNode,
9354}
9355impl Truncate {
9356 #[inline]
9357 pub fn table_list(&self) -> Option<TableList> {
9358 support::child(&self.syntax)
9359 }
9360 #[inline]
9361 pub fn cascade_token(&self) -> Option<SyntaxToken> {
9362 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
9363 }
9364 #[inline]
9365 pub fn continue_token(&self) -> Option<SyntaxToken> {
9366 support::token(&self.syntax, SyntaxKind::CONTINUE_KW)
9367 }
9368 #[inline]
9369 pub fn identity_token(&self) -> Option<SyntaxToken> {
9370 support::token(&self.syntax, SyntaxKind::IDENTITY_KW)
9371 }
9372 #[inline]
9373 pub fn restart_token(&self) -> Option<SyntaxToken> {
9374 support::token(&self.syntax, SyntaxKind::RESTART_KW)
9375 }
9376 #[inline]
9377 pub fn restrict_token(&self) -> Option<SyntaxToken> {
9378 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
9379 }
9380 #[inline]
9381 pub fn table_token(&self) -> Option<SyntaxToken> {
9382 support::token(&self.syntax, SyntaxKind::TABLE_KW)
9383 }
9384 #[inline]
9385 pub fn truncate_token(&self) -> Option<SyntaxToken> {
9386 support::token(&self.syntax, SyntaxKind::TRUNCATE_KW)
9387 }
9388}
9389
9390#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9391pub struct TupleExpr {
9392 pub(crate) syntax: SyntaxNode,
9393}
9394impl TupleExpr {
9395 #[inline]
9396 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
9397 support::token(&self.syntax, SyntaxKind::L_PAREN)
9398 }
9399 #[inline]
9400 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
9401 support::token(&self.syntax, SyntaxKind::R_PAREN)
9402 }
9403}
9404
9405#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9406pub struct UnicodeNormalForm {
9407 pub(crate) syntax: SyntaxNode,
9408}
9409impl UnicodeNormalForm {
9410 #[inline]
9411 pub fn nfc_token(&self) -> Option<SyntaxToken> {
9412 support::token(&self.syntax, SyntaxKind::NFC_KW)
9413 }
9414 #[inline]
9415 pub fn nfd_token(&self) -> Option<SyntaxToken> {
9416 support::token(&self.syntax, SyntaxKind::NFD_KW)
9417 }
9418 #[inline]
9419 pub fn nfkc_token(&self) -> Option<SyntaxToken> {
9420 support::token(&self.syntax, SyntaxKind::NFKC_KW)
9421 }
9422 #[inline]
9423 pub fn nfkd_token(&self) -> Option<SyntaxToken> {
9424 support::token(&self.syntax, SyntaxKind::NFKD_KW)
9425 }
9426}
9427
9428#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9429pub struct UniqueConstraint {
9430 pub(crate) syntax: SyntaxNode,
9431}
9432impl UniqueConstraint {
9433 #[inline]
9434 pub fn column_list(&self) -> Option<ColumnList> {
9435 support::child(&self.syntax)
9436 }
9437 #[inline]
9438 pub fn name_ref(&self) -> Option<NameRef> {
9439 support::child(&self.syntax)
9440 }
9441 #[inline]
9442 pub fn nulls_distinct(&self) -> Option<NullsDistinct> {
9443 support::child(&self.syntax)
9444 }
9445 #[inline]
9446 pub fn nulls_not_distinct(&self) -> Option<NullsNotDistinct> {
9447 support::child(&self.syntax)
9448 }
9449 #[inline]
9450 pub fn using_index(&self) -> Option<UsingIndex> {
9451 support::child(&self.syntax)
9452 }
9453 #[inline]
9454 pub fn constraint_token(&self) -> Option<SyntaxToken> {
9455 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
9456 }
9457 #[inline]
9458 pub fn unique_token(&self) -> Option<SyntaxToken> {
9459 support::token(&self.syntax, SyntaxKind::UNIQUE_KW)
9460 }
9461}
9462
9463#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9464pub struct Unlisten {
9465 pub(crate) syntax: SyntaxNode,
9466}
9467impl Unlisten {
9468 #[inline]
9469 pub fn name_ref(&self) -> Option<NameRef> {
9470 support::child(&self.syntax)
9471 }
9472 #[inline]
9473 pub fn star_token(&self) -> Option<SyntaxToken> {
9474 support::token(&self.syntax, SyntaxKind::STAR)
9475 }
9476 #[inline]
9477 pub fn unlisten_token(&self) -> Option<SyntaxToken> {
9478 support::token(&self.syntax, SyntaxKind::UNLISTEN_KW)
9479 }
9480}
9481
9482#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9483pub struct Update {
9484 pub(crate) syntax: SyntaxNode,
9485}
9486impl Update {
9487 #[inline]
9488 pub fn returning_clause(&self) -> Option<ReturningClause> {
9489 support::child(&self.syntax)
9490 }
9491 #[inline]
9492 pub fn update_token(&self) -> Option<SyntaxToken> {
9493 support::token(&self.syntax, SyntaxKind::UPDATE_KW)
9494 }
9495}
9496
9497#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9498pub struct UsingClause {
9499 pub(crate) syntax: SyntaxNode,
9500}
9501impl UsingClause {
9502 #[inline]
9503 pub fn using_token(&self) -> Option<SyntaxToken> {
9504 support::token(&self.syntax, SyntaxKind::USING_KW)
9505 }
9506}
9507
9508#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9509pub struct UsingIndex {
9510 pub(crate) syntax: SyntaxNode,
9511}
9512impl UsingIndex {
9513 #[inline]
9514 pub fn name_ref(&self) -> Option<NameRef> {
9515 support::child(&self.syntax)
9516 }
9517 #[inline]
9518 pub fn index_token(&self) -> Option<SyntaxToken> {
9519 support::token(&self.syntax, SyntaxKind::INDEX_KW)
9520 }
9521 #[inline]
9522 pub fn using_token(&self) -> Option<SyntaxToken> {
9523 support::token(&self.syntax, SyntaxKind::USING_KW)
9524 }
9525}
9526
9527#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9528pub struct UsingMethod {
9529 pub(crate) syntax: SyntaxNode,
9530}
9531impl UsingMethod {
9532 #[inline]
9533 pub fn name_ref(&self) -> Option<NameRef> {
9534 support::child(&self.syntax)
9535 }
9536 #[inline]
9537 pub fn using_token(&self) -> Option<SyntaxToken> {
9538 support::token(&self.syntax, SyntaxKind::USING_KW)
9539 }
9540}
9541
9542#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9543pub struct Vacuum {
9544 pub(crate) syntax: SyntaxNode,
9545}
9546impl Vacuum {
9547 #[inline]
9548 pub fn vacuum_token(&self) -> Option<SyntaxToken> {
9549 support::token(&self.syntax, SyntaxKind::VACUUM_KW)
9550 }
9551}
9552
9553#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9554pub struct ValidateConstraint {
9555 pub(crate) syntax: SyntaxNode,
9556}
9557impl ValidateConstraint {
9558 #[inline]
9559 pub fn name_ref(&self) -> Option<NameRef> {
9560 support::child(&self.syntax)
9561 }
9562 #[inline]
9563 pub fn constraint_token(&self) -> Option<SyntaxToken> {
9564 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
9565 }
9566 #[inline]
9567 pub fn validate_token(&self) -> Option<SyntaxToken> {
9568 support::token(&self.syntax, SyntaxKind::VALIDATE_KW)
9569 }
9570}
9571
9572#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9573pub struct Values {
9574 pub(crate) syntax: SyntaxNode,
9575}
9576impl Values {
9577 #[inline]
9578 pub fn values_token(&self) -> Option<SyntaxToken> {
9579 support::token(&self.syntax, SyntaxKind::VALUES_KW)
9580 }
9581}
9582
9583#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9584pub struct VolatilityFuncOption {
9585 pub(crate) syntax: SyntaxNode,
9586}
9587impl VolatilityFuncOption {
9588 #[inline]
9589 pub fn immutable_token(&self) -> Option<SyntaxToken> {
9590 support::token(&self.syntax, SyntaxKind::IMMUTABLE_KW)
9591 }
9592 #[inline]
9593 pub fn stable_token(&self) -> Option<SyntaxToken> {
9594 support::token(&self.syntax, SyntaxKind::STABLE_KW)
9595 }
9596 #[inline]
9597 pub fn volatile_token(&self) -> Option<SyntaxToken> {
9598 support::token(&self.syntax, SyntaxKind::VOLATILE_KW)
9599 }
9600}
9601
9602#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9603pub struct WhenClause {
9604 pub(crate) syntax: SyntaxNode,
9605}
9606impl WhenClause {
9607 #[inline]
9608 pub fn when_token(&self) -> Option<SyntaxToken> {
9609 support::token(&self.syntax, SyntaxKind::WHEN_KW)
9610 }
9611}
9612
9613#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9614pub struct WhereClause {
9615 pub(crate) syntax: SyntaxNode,
9616}
9617impl WhereClause {
9618 #[inline]
9619 pub fn expr(&self) -> Option<Expr> {
9620 support::child(&self.syntax)
9621 }
9622 #[inline]
9623 pub fn where_token(&self) -> Option<SyntaxToken> {
9624 support::token(&self.syntax, SyntaxKind::WHERE_KW)
9625 }
9626}
9627
9628#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9629pub struct WindowClause {
9630 pub(crate) syntax: SyntaxNode,
9631}
9632impl WindowClause {
9633 #[inline]
9634 pub fn window_defs(&self) -> AstChildren<WindowDef> {
9635 support::children(&self.syntax)
9636 }
9637 #[inline]
9638 pub fn window_token(&self) -> Option<SyntaxToken> {
9639 support::token(&self.syntax, SyntaxKind::WINDOW_KW)
9640 }
9641}
9642
9643#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9644pub struct WindowDef {
9645 pub(crate) syntax: SyntaxNode,
9646}
9647impl WindowDef {
9648 #[inline]
9649 pub fn name(&self) -> Option<Name> {
9650 support::child(&self.syntax)
9651 }
9652 #[inline]
9653 pub fn window_spec(&self) -> Option<WindowSpec> {
9654 support::child(&self.syntax)
9655 }
9656 #[inline]
9657 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
9658 support::token(&self.syntax, SyntaxKind::L_PAREN)
9659 }
9660 #[inline]
9661 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
9662 support::token(&self.syntax, SyntaxKind::R_PAREN)
9663 }
9664 #[inline]
9665 pub fn as_token(&self) -> Option<SyntaxToken> {
9666 support::token(&self.syntax, SyntaxKind::AS_KW)
9667 }
9668}
9669
9670#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9671pub struct WindowFuncOption {
9672 pub(crate) syntax: SyntaxNode,
9673}
9674impl WindowFuncOption {
9675 #[inline]
9676 pub fn window_token(&self) -> Option<SyntaxToken> {
9677 support::token(&self.syntax, SyntaxKind::WINDOW_KW)
9678 }
9679}
9680
9681#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9682pub struct WindowSpec {
9683 pub(crate) syntax: SyntaxNode,
9684}
9685impl WindowSpec {
9686 #[inline]
9687 pub fn exprs(&self) -> AstChildren<Expr> {
9688 support::children(&self.syntax)
9689 }
9690 #[inline]
9691 pub fn frame_clause(&self) -> Option<FrameClause> {
9692 support::child(&self.syntax)
9693 }
9694 #[inline]
9695 pub fn order_by_clause(&self) -> Option<OrderByClause> {
9696 support::child(&self.syntax)
9697 }
9698 #[inline]
9699 pub fn by_token(&self) -> Option<SyntaxToken> {
9700 support::token(&self.syntax, SyntaxKind::BY_KW)
9701 }
9702 #[inline]
9703 pub fn ident_token(&self) -> Option<SyntaxToken> {
9704 support::token(&self.syntax, SyntaxKind::IDENT)
9705 }
9706 #[inline]
9707 pub fn partition_token(&self) -> Option<SyntaxToken> {
9708 support::token(&self.syntax, SyntaxKind::PARTITION_KW)
9709 }
9710}
9711
9712#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9713pub struct WithClause {
9714 pub(crate) syntax: SyntaxNode,
9715}
9716impl WithClause {
9717 #[inline]
9718 pub fn with_tables(&self) -> AstChildren<WithTable> {
9719 support::children(&self.syntax)
9720 }
9721 #[inline]
9722 pub fn recursive_token(&self) -> Option<SyntaxToken> {
9723 support::token(&self.syntax, SyntaxKind::RECURSIVE_KW)
9724 }
9725 #[inline]
9726 pub fn with_token(&self) -> Option<SyntaxToken> {
9727 support::token(&self.syntax, SyntaxKind::WITH_KW)
9728 }
9729}
9730
9731#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9732pub struct WithData {
9733 pub(crate) syntax: SyntaxNode,
9734}
9735impl WithData {
9736 #[inline]
9737 pub fn data_token(&self) -> Option<SyntaxToken> {
9738 support::token(&self.syntax, SyntaxKind::DATA_KW)
9739 }
9740 #[inline]
9741 pub fn with_token(&self) -> Option<SyntaxToken> {
9742 support::token(&self.syntax, SyntaxKind::WITH_KW)
9743 }
9744}
9745
9746#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9747pub struct WithNoData {
9748 pub(crate) syntax: SyntaxNode,
9749}
9750impl WithNoData {
9751 #[inline]
9752 pub fn data_token(&self) -> Option<SyntaxToken> {
9753 support::token(&self.syntax, SyntaxKind::DATA_KW)
9754 }
9755 #[inline]
9756 pub fn no_token(&self) -> Option<SyntaxToken> {
9757 support::token(&self.syntax, SyntaxKind::NO_KW)
9758 }
9759 #[inline]
9760 pub fn with_token(&self) -> Option<SyntaxToken> {
9761 support::token(&self.syntax, SyntaxKind::WITH_KW)
9762 }
9763}
9764
9765#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9766pub struct WithOptions {
9767 pub(crate) syntax: SyntaxNode,
9768}
9769impl WithOptions {
9770 #[inline]
9771 pub fn options_token(&self) -> Option<SyntaxToken> {
9772 support::token(&self.syntax, SyntaxKind::OPTIONS_KW)
9773 }
9774 #[inline]
9775 pub fn with_token(&self) -> Option<SyntaxToken> {
9776 support::token(&self.syntax, SyntaxKind::WITH_KW)
9777 }
9778}
9779
9780#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9781pub struct WithParams {
9782 pub(crate) syntax: SyntaxNode,
9783}
9784impl WithParams {
9785 #[inline]
9786 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
9787 support::token(&self.syntax, SyntaxKind::L_PAREN)
9788 }
9789 #[inline]
9790 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
9791 support::token(&self.syntax, SyntaxKind::R_PAREN)
9792 }
9793 #[inline]
9794 pub fn with_token(&self) -> Option<SyntaxToken> {
9795 support::token(&self.syntax, SyntaxKind::WITH_KW)
9796 }
9797}
9798
9799#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9800pub struct WithTable {
9801 pub(crate) syntax: SyntaxNode,
9802}
9803impl WithTable {
9804 #[inline]
9805 pub fn column_list(&self) -> Option<ColumnList> {
9806 support::child(&self.syntax)
9807 }
9808 #[inline]
9809 pub fn materialized(&self) -> Option<Materialized> {
9810 support::child(&self.syntax)
9811 }
9812 #[inline]
9813 pub fn name(&self) -> Option<Name> {
9814 support::child(&self.syntax)
9815 }
9816 #[inline]
9817 pub fn not_materialized(&self) -> Option<NotMaterialized> {
9818 support::child(&self.syntax)
9819 }
9820 #[inline]
9821 pub fn query(&self) -> Option<WithQuery> {
9822 support::child(&self.syntax)
9823 }
9824 #[inline]
9825 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
9826 support::token(&self.syntax, SyntaxKind::L_PAREN)
9827 }
9828 #[inline]
9829 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
9830 support::token(&self.syntax, SyntaxKind::R_PAREN)
9831 }
9832 #[inline]
9833 pub fn as_token(&self) -> Option<SyntaxToken> {
9834 support::token(&self.syntax, SyntaxKind::AS_KW)
9835 }
9836}
9837
9838#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9839pub struct WithTimezone {
9840 pub(crate) syntax: SyntaxNode,
9841}
9842impl WithTimezone {
9843 #[inline]
9844 pub fn time_token(&self) -> Option<SyntaxToken> {
9845 support::token(&self.syntax, SyntaxKind::TIME_KW)
9846 }
9847 #[inline]
9848 pub fn with_token(&self) -> Option<SyntaxToken> {
9849 support::token(&self.syntax, SyntaxKind::WITH_KW)
9850 }
9851 #[inline]
9852 pub fn zone_token(&self) -> Option<SyntaxToken> {
9853 support::token(&self.syntax, SyntaxKind::ZONE_KW)
9854 }
9855}
9856
9857#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9858pub struct WithinClause {
9859 pub(crate) syntax: SyntaxNode,
9860}
9861impl WithinClause {
9862 #[inline]
9863 pub fn order_by_clause(&self) -> Option<OrderByClause> {
9864 support::child(&self.syntax)
9865 }
9866 #[inline]
9867 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
9868 support::token(&self.syntax, SyntaxKind::L_PAREN)
9869 }
9870 #[inline]
9871 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
9872 support::token(&self.syntax, SyntaxKind::R_PAREN)
9873 }
9874 #[inline]
9875 pub fn group_token(&self) -> Option<SyntaxToken> {
9876 support::token(&self.syntax, SyntaxKind::GROUP_KW)
9877 }
9878 #[inline]
9879 pub fn within_token(&self) -> Option<SyntaxToken> {
9880 support::token(&self.syntax, SyntaxKind::WITHIN_KW)
9881 }
9882}
9883
9884#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9885pub struct WithoutOids {
9886 pub(crate) syntax: SyntaxNode,
9887}
9888impl WithoutOids {
9889 #[inline]
9890 pub fn oids_token(&self) -> Option<SyntaxToken> {
9891 support::token(&self.syntax, SyntaxKind::OIDS_KW)
9892 }
9893 #[inline]
9894 pub fn without_token(&self) -> Option<SyntaxToken> {
9895 support::token(&self.syntax, SyntaxKind::WITHOUT_KW)
9896 }
9897}
9898
9899#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9900pub struct WithoutTimezone {
9901 pub(crate) syntax: SyntaxNode,
9902}
9903impl WithoutTimezone {
9904 #[inline]
9905 pub fn time_token(&self) -> Option<SyntaxToken> {
9906 support::token(&self.syntax, SyntaxKind::TIME_KW)
9907 }
9908 #[inline]
9909 pub fn without_token(&self) -> Option<SyntaxToken> {
9910 support::token(&self.syntax, SyntaxKind::WITHOUT_KW)
9911 }
9912 #[inline]
9913 pub fn zone_token(&self) -> Option<SyntaxToken> {
9914 support::token(&self.syntax, SyntaxKind::ZONE_KW)
9915 }
9916}
9917
9918#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9919pub struct XmlColumnOption {
9920 pub(crate) syntax: SyntaxNode,
9921}
9922impl XmlColumnOption {
9923 #[inline]
9924 pub fn expr(&self) -> Option<Expr> {
9925 support::child(&self.syntax)
9926 }
9927 #[inline]
9928 pub fn default_token(&self) -> Option<SyntaxToken> {
9929 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
9930 }
9931 #[inline]
9932 pub fn ident_token(&self) -> Option<SyntaxToken> {
9933 support::token(&self.syntax, SyntaxKind::IDENT)
9934 }
9935 #[inline]
9936 pub fn not_token(&self) -> Option<SyntaxToken> {
9937 support::token(&self.syntax, SyntaxKind::NOT_KW)
9938 }
9939 #[inline]
9940 pub fn null_token(&self) -> Option<SyntaxToken> {
9941 support::token(&self.syntax, SyntaxKind::NULL_KW)
9942 }
9943 #[inline]
9944 pub fn path_token(&self) -> Option<SyntaxToken> {
9945 support::token(&self.syntax, SyntaxKind::PATH_KW)
9946 }
9947}
9948
9949#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9950pub struct XmlColumnOptionList {
9951 pub(crate) syntax: SyntaxNode,
9952}
9953impl XmlColumnOptionList {
9954 #[inline]
9955 pub fn xml_column_option(&self) -> Option<XmlColumnOption> {
9956 support::child(&self.syntax)
9957 }
9958 #[inline]
9959 pub fn xml_column_options(&self) -> AstChildren<XmlColumnOption> {
9960 support::children(&self.syntax)
9961 }
9962}
9963
9964#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9965pub struct XmlTableColumn {
9966 pub(crate) syntax: SyntaxNode,
9967}
9968impl XmlTableColumn {
9969 #[inline]
9970 pub fn name(&self) -> Option<Name> {
9971 support::child(&self.syntax)
9972 }
9973 #[inline]
9974 pub fn ty(&self) -> Option<Type> {
9975 support::child(&self.syntax)
9976 }
9977 #[inline]
9978 pub fn xml_column_option_list(&self) -> Option<XmlColumnOptionList> {
9979 support::child(&self.syntax)
9980 }
9981 #[inline]
9982 pub fn for_token(&self) -> Option<SyntaxToken> {
9983 support::token(&self.syntax, SyntaxKind::FOR_KW)
9984 }
9985 #[inline]
9986 pub fn ordinality_token(&self) -> Option<SyntaxToken> {
9987 support::token(&self.syntax, SyntaxKind::ORDINALITY_KW)
9988 }
9989}
9990
9991#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9992pub struct XmlTableColumnList {
9993 pub(crate) syntax: SyntaxNode,
9994}
9995impl XmlTableColumnList {
9996 #[inline]
9997 pub fn xml_table_columns(&self) -> AstChildren<XmlTableColumn> {
9998 support::children(&self.syntax)
9999 }
10000}
10001
10002#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10003pub enum AlterColumnOption {
10004 AddGenerated(AddGenerated),
10005 DropDefault(DropDefault),
10006 DropExpression(DropExpression),
10007 DropIdentity(DropIdentity),
10008 DropNotNull(DropNotNull),
10009 ResetOptions(ResetOptions),
10010 Restart(Restart),
10011 SetCompression(SetCompression),
10012 SetDefault(SetDefault),
10013 SetExpression(SetExpression),
10014 SetGenerated(SetGenerated),
10015 SetGeneratedOptions(SetGeneratedOptions),
10016 SetNotNull(SetNotNull),
10017 SetOptions(SetOptions),
10018 SetSequenceOption(SetSequenceOption),
10019 SetStatistics(SetStatistics),
10020 SetStorage(SetStorage),
10021 SetType(SetType),
10022}
10023
10024#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10025pub enum AlterDomainAction {
10026 AddConstraint(AddConstraint),
10027 DropConstraint(DropConstraint),
10028 DropDefault(DropDefault),
10029 DropNotNull(DropNotNull),
10030 OwnerTo(OwnerTo),
10031 RenameConstraint(RenameConstraint),
10032 RenameTo(RenameTo),
10033 SetDefault(SetDefault),
10034 SetNotNull(SetNotNull),
10035 SetSchema(SetSchema),
10036 ValidateConstraint(ValidateConstraint),
10037}
10038
10039#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10040pub enum AlterTableAction {
10041 AddColumn(AddColumn),
10042 AddConstraint(AddConstraint),
10043 AlterColumn(AlterColumn),
10044 AlterConstraint(AlterConstraint),
10045 AttachPartition(AttachPartition),
10046 ClusterOn(ClusterOn),
10047 DetachPartition(DetachPartition),
10048 DisableRls(DisableRls),
10049 DisableRule(DisableRule),
10050 DisableTrigger(DisableTrigger),
10051 DropColumn(DropColumn),
10052 DropConstraint(DropConstraint),
10053 EnableAlwaysRule(EnableAlwaysRule),
10054 EnableAlwaysTrigger(EnableAlwaysTrigger),
10055 EnableReplicaRule(EnableReplicaRule),
10056 EnableReplicaTrigger(EnableReplicaTrigger),
10057 EnableRls(EnableRls),
10058 EnableRule(EnableRule),
10059 EnableTrigger(EnableTrigger),
10060 ForceRls(ForceRls),
10061 Inherit(Inherit),
10062 NoForceRls(NoForceRls),
10063 NoInherit(NoInherit),
10064 NotOf(NotOf),
10065 OfType(OfType),
10066 OptionsList(OptionsList),
10067 OwnerTo(OwnerTo),
10068 RenameColumn(RenameColumn),
10069 RenameConstraint(RenameConstraint),
10070 RenameTable(RenameTable),
10071 ReplicaIdentity(ReplicaIdentity),
10072 ResetStorageParams(ResetStorageParams),
10073 SetAccessMethod(SetAccessMethod),
10074 SetLogged(SetLogged),
10075 SetSchema(SetSchema),
10076 SetStorageParams(SetStorageParams),
10077 SetTablespace(SetTablespace),
10078 SetUnlogged(SetUnlogged),
10079 SetWithoutCluster(SetWithoutCluster),
10080 SetWithoutOids(SetWithoutOids),
10081 ValidateConstraint(ValidateConstraint),
10082}
10083
10084#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10085pub enum ColumnConstraint {
10086 CheckConstraint(CheckConstraint),
10087 ExcludeConstraint(ExcludeConstraint),
10088 NotNullConstraint(NotNullConstraint),
10089 PrimaryKeyConstraint(PrimaryKeyConstraint),
10090 ReferencesConstraint(ReferencesConstraint),
10091 UniqueConstraint(UniqueConstraint),
10092}
10093
10094#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10095pub enum Constraint {
10096 CheckConstraint(CheckConstraint),
10097 DefaultConstraint(DefaultConstraint),
10098 ForeignKeyConstraint(ForeignKeyConstraint),
10099 GeneratedConstraint(GeneratedConstraint),
10100 NotNullConstraint(NotNullConstraint),
10101 NullConstraint(NullConstraint),
10102 PrimaryKeyConstraint(PrimaryKeyConstraint),
10103 ReferencesConstraint(ReferencesConstraint),
10104 UniqueConstraint(UniqueConstraint),
10105}
10106
10107#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10108pub enum Expr {
10109 ArrayExpr(ArrayExpr),
10110 BetweenExpr(BetweenExpr),
10111 BinExpr(BinExpr),
10112 CallExpr(CallExpr),
10113 CaseExpr(CaseExpr),
10114 CastExpr(CastExpr),
10115 FieldExpr(FieldExpr),
10116 IndexExpr(IndexExpr),
10117 Literal(Literal),
10118 NameRef(NameRef),
10119}
10120
10121#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10122pub enum FuncOption {
10123 AsFuncOption(AsFuncOption),
10124 BeginFuncOption(BeginFuncOption),
10125 CostFuncOption(CostFuncOption),
10126 LanguageFuncOption(LanguageFuncOption),
10127 LeakproofFuncOption(LeakproofFuncOption),
10128 ParallelFuncOption(ParallelFuncOption),
10129 ResetFuncOption(ResetFuncOption),
10130 ReturnFuncOption(ReturnFuncOption),
10131 RowsFuncOption(RowsFuncOption),
10132 SecurityFuncOption(SecurityFuncOption),
10133 SetFuncOption(SetFuncOption),
10134 StrictFuncOption(StrictFuncOption),
10135 SupportFuncOption(SupportFuncOption),
10136 TransformFuncOption(TransformFuncOption),
10137 VolatilityFuncOption(VolatilityFuncOption),
10138 WindowFuncOption(WindowFuncOption),
10139}
10140
10141#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10142pub enum JoinType {
10143 JoinCross(JoinCross),
10144 JoinFull(JoinFull),
10145 JoinInner(JoinInner),
10146 JoinLeft(JoinLeft),
10147 JoinRight(JoinRight),
10148}
10149
10150#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10151pub enum JsonBehavior {
10152 JsonBehaviorDefault(JsonBehaviorDefault),
10153 JsonBehaviorEmptyArray(JsonBehaviorEmptyArray),
10154 JsonBehaviorEmptyObject(JsonBehaviorEmptyObject),
10155 JsonBehaviorError(JsonBehaviorError),
10156 JsonBehaviorFalse(JsonBehaviorFalse),
10157 JsonBehaviorNull(JsonBehaviorNull),
10158 JsonBehaviorTrue(JsonBehaviorTrue),
10159 JsonBehaviorUnknown(JsonBehaviorUnknown),
10160}
10161
10162#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10163pub enum MatchType {
10164 MatchFull(MatchFull),
10165 MatchPartial(MatchPartial),
10166 MatchSimple(MatchSimple),
10167}
10168
10169#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10170pub enum OnCommitAction {
10171 DeleteRows(DeleteRows),
10172 Drop(Drop),
10173 PreserveRows(PreserveRows),
10174}
10175
10176#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10177pub enum ParamMode {
10178 ParamIn(ParamIn),
10179 ParamInOut(ParamInOut),
10180 ParamOut(ParamOut),
10181 ParamVariadic(ParamVariadic),
10182}
10183
10184#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10185pub enum PartitionType {
10186 PartitionDefault(PartitionDefault),
10187 PartitionForValuesFrom(PartitionForValuesFrom),
10188 PartitionForValuesIn(PartitionForValuesIn),
10189 PartitionForValuesWith(PartitionForValuesWith),
10190}
10191
10192#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10193pub enum RefAction {
10194 Cascade(Cascade),
10195 NoAction(NoAction),
10196 Restrict(Restrict),
10197 SetDefaultColumns(SetDefaultColumns),
10198 SetNullColumns(SetNullColumns),
10199}
10200
10201#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10202pub enum Stmt {
10203 AlterAggregate(AlterAggregate),
10204 AlterCollation(AlterCollation),
10205 AlterConversion(AlterConversion),
10206 AlterDatabase(AlterDatabase),
10207 AlterDefaultPrivileges(AlterDefaultPrivileges),
10208 AlterDomain(AlterDomain),
10209 AlterEventTrigger(AlterEventTrigger),
10210 AlterExtension(AlterExtension),
10211 AlterForeignDataWrapper(AlterForeignDataWrapper),
10212 AlterForeignTable(AlterForeignTable),
10213 AlterFunction(AlterFunction),
10214 AlterGroup(AlterGroup),
10215 AlterIndex(AlterIndex),
10216 AlterLanguage(AlterLanguage),
10217 AlterLargeObject(AlterLargeObject),
10218 AlterMaterializedView(AlterMaterializedView),
10219 AlterOperator(AlterOperator),
10220 AlterOperatorClass(AlterOperatorClass),
10221 AlterOperatorFamily(AlterOperatorFamily),
10222 AlterPolicy(AlterPolicy),
10223 AlterProcedure(AlterProcedure),
10224 AlterPublication(AlterPublication),
10225 AlterRole(AlterRole),
10226 AlterRoutine(AlterRoutine),
10227 AlterRule(AlterRule),
10228 AlterSchema(AlterSchema),
10229 AlterSequence(AlterSequence),
10230 AlterServer(AlterServer),
10231 AlterStatistics(AlterStatistics),
10232 AlterSubscription(AlterSubscription),
10233 AlterSystem(AlterSystem),
10234 AlterTable(AlterTable),
10235 AlterTablespace(AlterTablespace),
10236 AlterTextSearchConfiguration(AlterTextSearchConfiguration),
10237 AlterTextSearchDictionary(AlterTextSearchDictionary),
10238 AlterTextSearchParser(AlterTextSearchParser),
10239 AlterTextSearchTemplate(AlterTextSearchTemplate),
10240 AlterTrigger(AlterTrigger),
10241 AlterType(AlterType),
10242 AlterUser(AlterUser),
10243 AlterUserMapping(AlterUserMapping),
10244 AlterView(AlterView),
10245 Analyze(Analyze),
10246 Begin(Begin),
10247 Call(Call),
10248 Checkpoint(Checkpoint),
10249 Close(Close),
10250 Cluster(Cluster),
10251 CommentOn(CommentOn),
10252 Commit(Commit),
10253 Copy(Copy),
10254 CreateAccessMethod(CreateAccessMethod),
10255 CreateAggregate(CreateAggregate),
10256 CreateCast(CreateCast),
10257 CreateCollation(CreateCollation),
10258 CreateConversion(CreateConversion),
10259 CreateDatabase(CreateDatabase),
10260 CreateDomain(CreateDomain),
10261 CreateEventTrigger(CreateEventTrigger),
10262 CreateExtension(CreateExtension),
10263 CreateForeignDataWrapper(CreateForeignDataWrapper),
10264 CreateForeignTable(CreateForeignTable),
10265 CreateFunction(CreateFunction),
10266 CreateGroup(CreateGroup),
10267 CreateIndex(CreateIndex),
10268 CreateLanguage(CreateLanguage),
10269 CreateMaterializedView(CreateMaterializedView),
10270 CreateOperator(CreateOperator),
10271 CreateOperatorClass(CreateOperatorClass),
10272 CreateOperatorFamily(CreateOperatorFamily),
10273 CreatePolicy(CreatePolicy),
10274 CreateProcedure(CreateProcedure),
10275 CreatePublication(CreatePublication),
10276 CreateRole(CreateRole),
10277 CreateRule(CreateRule),
10278 CreateSchema(CreateSchema),
10279 CreateSequence(CreateSequence),
10280 CreateServer(CreateServer),
10281 CreateStatistics(CreateStatistics),
10282 CreateSubscription(CreateSubscription),
10283 CreateTable(CreateTable),
10284 CreateTableAs(CreateTableAs),
10285 CreateTablespace(CreateTablespace),
10286 CreateTextSearchConfiguration(CreateTextSearchConfiguration),
10287 CreateTextSearchDictionary(CreateTextSearchDictionary),
10288 CreateTextSearchParser(CreateTextSearchParser),
10289 CreateTextSearchTemplate(CreateTextSearchTemplate),
10290 CreateTransform(CreateTransform),
10291 CreateTrigger(CreateTrigger),
10292 CreateType(CreateType),
10293 CreateUser(CreateUser),
10294 CreateUserMapping(CreateUserMapping),
10295 CreateView(CreateView),
10296 Deallocate(Deallocate),
10297 Declare(Declare),
10298 Delete(Delete),
10299 Discard(Discard),
10300 Do(Do),
10301 DropAccessMethod(DropAccessMethod),
10302 DropAggregate(DropAggregate),
10303 DropCast(DropCast),
10304 DropCollation(DropCollation),
10305 DropConversion(DropConversion),
10306 DropDatabase(DropDatabase),
10307 DropDomain(DropDomain),
10308 DropEventTrigger(DropEventTrigger),
10309 DropExtension(DropExtension),
10310 DropForeignDataWrapper(DropForeignDataWrapper),
10311 DropForeignTable(DropForeignTable),
10312 DropFunction(DropFunction),
10313 DropGroup(DropGroup),
10314 DropIndex(DropIndex),
10315 DropLanguage(DropLanguage),
10316 DropMaterializedView(DropMaterializedView),
10317 DropOperator(DropOperator),
10318 DropOperatorClass(DropOperatorClass),
10319 DropOperatorFamily(DropOperatorFamily),
10320 DropOwned(DropOwned),
10321 DropPolicy(DropPolicy),
10322 DropProcedure(DropProcedure),
10323 DropPublication(DropPublication),
10324 DropRole(DropRole),
10325 DropRoutine(DropRoutine),
10326 DropRule(DropRule),
10327 DropSchema(DropSchema),
10328 DropSequence(DropSequence),
10329 DropServer(DropServer),
10330 DropStatistics(DropStatistics),
10331 DropSubscription(DropSubscription),
10332 DropTable(DropTable),
10333 DropTablespace(DropTablespace),
10334 DropTextSearchConfig(DropTextSearchConfig),
10335 DropTextSearchDict(DropTextSearchDict),
10336 DropTextSearchParser(DropTextSearchParser),
10337 DropTextSearchTemplate(DropTextSearchTemplate),
10338 DropTransform(DropTransform),
10339 DropTrigger(DropTrigger),
10340 DropType(DropType),
10341 DropUser(DropUser),
10342 DropUserMapping(DropUserMapping),
10343 DropView(DropView),
10344 Execute(Execute),
10345 Explain(Explain),
10346 Fetch(Fetch),
10347 Grant(Grant),
10348 ImportForeignSchema(ImportForeignSchema),
10349 Insert(Insert),
10350 Listen(Listen),
10351 Load(Load),
10352 Lock(Lock),
10353 Merge(Merge),
10354 Move(Move),
10355 Notify(Notify),
10356 ParenSelect(ParenSelect),
10357 Prepare(Prepare),
10358 PrepareTransaction(PrepareTransaction),
10359 Reassign(Reassign),
10360 Refresh(Refresh),
10361 Reindex(Reindex),
10362 ReleaseSavepoint(ReleaseSavepoint),
10363 Reset(Reset),
10364 Revoke(Revoke),
10365 Rollback(Rollback),
10366 Savepoint(Savepoint),
10367 SecurityLabel(SecurityLabel),
10368 Select(Select),
10369 SelectInto(SelectInto),
10370 Set(Set),
10371 SetConstraints(SetConstraints),
10372 SetRole(SetRole),
10373 SetSessionAuth(SetSessionAuth),
10374 SetTransaction(SetTransaction),
10375 Show(Show),
10376 Truncate(Truncate),
10377 Unlisten(Unlisten),
10378 Update(Update),
10379 Vacuum(Vacuum),
10380 Values(Values),
10381}
10382
10383#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10384pub enum TableArg {
10385 Column(Column),
10386 LikeClause(LikeClause),
10387 TableConstraint(TableConstraint),
10388}
10389
10390#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10391pub enum TableConstraint {
10392 CheckConstraint(CheckConstraint),
10393 ExcludeConstraint(ExcludeConstraint),
10394 ForeignKeyConstraint(ForeignKeyConstraint),
10395 PrimaryKeyConstraint(PrimaryKeyConstraint),
10396 UniqueConstraint(UniqueConstraint),
10397}
10398
10399#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10400pub enum Timezone {
10401 WithTimezone(WithTimezone),
10402 WithoutTimezone(WithoutTimezone),
10403}
10404
10405#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10406pub enum TransactionMode {
10407 Deferrable(Deferrable),
10408 NotDeferrable(NotDeferrable),
10409 ReadCommitted(ReadCommitted),
10410 ReadOnly(ReadOnly),
10411 ReadUncommitted(ReadUncommitted),
10412 ReadWrite(ReadWrite),
10413 RepeatableRead(RepeatableRead),
10414 Serializable(Serializable),
10415}
10416
10417#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10418pub enum Type {
10419 ArrayType(ArrayType),
10420 BitType(BitType),
10421 CharType(CharType),
10422 DoubleType(DoubleType),
10423 IntervalType(IntervalType),
10424 PathType(PathType),
10425 PercentType(PercentType),
10426 TimeType(TimeType),
10427}
10428
10429#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10430pub enum WithQuery {
10431 Delete(Delete),
10432 Insert(Insert),
10433 Merge(Merge),
10434 Select(Select),
10435 Update(Update),
10436 Values(Values),
10437}
10438impl AstNode for AddColumn {
10439 #[inline]
10440 fn can_cast(kind: SyntaxKind) -> bool {
10441 kind == SyntaxKind::ADD_COLUMN
10442 }
10443 #[inline]
10444 fn cast(syntax: SyntaxNode) -> Option<Self> {
10445 if Self::can_cast(syntax.kind()) {
10446 Some(Self { syntax })
10447 } else {
10448 None
10449 }
10450 }
10451 #[inline]
10452 fn syntax(&self) -> &SyntaxNode {
10453 &self.syntax
10454 }
10455}
10456impl AstNode for AddConstraint {
10457 #[inline]
10458 fn can_cast(kind: SyntaxKind) -> bool {
10459 kind == SyntaxKind::ADD_CONSTRAINT
10460 }
10461 #[inline]
10462 fn cast(syntax: SyntaxNode) -> Option<Self> {
10463 if Self::can_cast(syntax.kind()) {
10464 Some(Self { syntax })
10465 } else {
10466 None
10467 }
10468 }
10469 #[inline]
10470 fn syntax(&self) -> &SyntaxNode {
10471 &self.syntax
10472 }
10473}
10474impl AstNode for AddGenerated {
10475 #[inline]
10476 fn can_cast(kind: SyntaxKind) -> bool {
10477 kind == SyntaxKind::ADD_GENERATED
10478 }
10479 #[inline]
10480 fn cast(syntax: SyntaxNode) -> Option<Self> {
10481 if Self::can_cast(syntax.kind()) {
10482 Some(Self { syntax })
10483 } else {
10484 None
10485 }
10486 }
10487 #[inline]
10488 fn syntax(&self) -> &SyntaxNode {
10489 &self.syntax
10490 }
10491}
10492impl AstNode for Aggregate {
10493 #[inline]
10494 fn can_cast(kind: SyntaxKind) -> bool {
10495 kind == SyntaxKind::AGGREGATE
10496 }
10497 #[inline]
10498 fn cast(syntax: SyntaxNode) -> Option<Self> {
10499 if Self::can_cast(syntax.kind()) {
10500 Some(Self { syntax })
10501 } else {
10502 None
10503 }
10504 }
10505 #[inline]
10506 fn syntax(&self) -> &SyntaxNode {
10507 &self.syntax
10508 }
10509}
10510impl AstNode for Alias {
10511 #[inline]
10512 fn can_cast(kind: SyntaxKind) -> bool {
10513 kind == SyntaxKind::ALIAS
10514 }
10515 #[inline]
10516 fn cast(syntax: SyntaxNode) -> Option<Self> {
10517 if Self::can_cast(syntax.kind()) {
10518 Some(Self { syntax })
10519 } else {
10520 None
10521 }
10522 }
10523 #[inline]
10524 fn syntax(&self) -> &SyntaxNode {
10525 &self.syntax
10526 }
10527}
10528impl AstNode for AlterAggregate {
10529 #[inline]
10530 fn can_cast(kind: SyntaxKind) -> bool {
10531 kind == SyntaxKind::ALTER_AGGREGATE
10532 }
10533 #[inline]
10534 fn cast(syntax: SyntaxNode) -> Option<Self> {
10535 if Self::can_cast(syntax.kind()) {
10536 Some(Self { syntax })
10537 } else {
10538 None
10539 }
10540 }
10541 #[inline]
10542 fn syntax(&self) -> &SyntaxNode {
10543 &self.syntax
10544 }
10545}
10546impl AstNode for AlterCollation {
10547 #[inline]
10548 fn can_cast(kind: SyntaxKind) -> bool {
10549 kind == SyntaxKind::ALTER_COLLATION
10550 }
10551 #[inline]
10552 fn cast(syntax: SyntaxNode) -> Option<Self> {
10553 if Self::can_cast(syntax.kind()) {
10554 Some(Self { syntax })
10555 } else {
10556 None
10557 }
10558 }
10559 #[inline]
10560 fn syntax(&self) -> &SyntaxNode {
10561 &self.syntax
10562 }
10563}
10564impl AstNode for AlterColumn {
10565 #[inline]
10566 fn can_cast(kind: SyntaxKind) -> bool {
10567 kind == SyntaxKind::ALTER_COLUMN
10568 }
10569 #[inline]
10570 fn cast(syntax: SyntaxNode) -> Option<Self> {
10571 if Self::can_cast(syntax.kind()) {
10572 Some(Self { syntax })
10573 } else {
10574 None
10575 }
10576 }
10577 #[inline]
10578 fn syntax(&self) -> &SyntaxNode {
10579 &self.syntax
10580 }
10581}
10582impl AstNode for AlterConstraint {
10583 #[inline]
10584 fn can_cast(kind: SyntaxKind) -> bool {
10585 kind == SyntaxKind::ALTER_CONSTRAINT
10586 }
10587 #[inline]
10588 fn cast(syntax: SyntaxNode) -> Option<Self> {
10589 if Self::can_cast(syntax.kind()) {
10590 Some(Self { syntax })
10591 } else {
10592 None
10593 }
10594 }
10595 #[inline]
10596 fn syntax(&self) -> &SyntaxNode {
10597 &self.syntax
10598 }
10599}
10600impl AstNode for AlterConversion {
10601 #[inline]
10602 fn can_cast(kind: SyntaxKind) -> bool {
10603 kind == SyntaxKind::ALTER_CONVERSION
10604 }
10605 #[inline]
10606 fn cast(syntax: SyntaxNode) -> Option<Self> {
10607 if Self::can_cast(syntax.kind()) {
10608 Some(Self { syntax })
10609 } else {
10610 None
10611 }
10612 }
10613 #[inline]
10614 fn syntax(&self) -> &SyntaxNode {
10615 &self.syntax
10616 }
10617}
10618impl AstNode for AlterDatabase {
10619 #[inline]
10620 fn can_cast(kind: SyntaxKind) -> bool {
10621 kind == SyntaxKind::ALTER_DATABASE
10622 }
10623 #[inline]
10624 fn cast(syntax: SyntaxNode) -> Option<Self> {
10625 if Self::can_cast(syntax.kind()) {
10626 Some(Self { syntax })
10627 } else {
10628 None
10629 }
10630 }
10631 #[inline]
10632 fn syntax(&self) -> &SyntaxNode {
10633 &self.syntax
10634 }
10635}
10636impl AstNode for AlterDefaultPrivileges {
10637 #[inline]
10638 fn can_cast(kind: SyntaxKind) -> bool {
10639 kind == SyntaxKind::ALTER_DEFAULT_PRIVILEGES
10640 }
10641 #[inline]
10642 fn cast(syntax: SyntaxNode) -> Option<Self> {
10643 if Self::can_cast(syntax.kind()) {
10644 Some(Self { syntax })
10645 } else {
10646 None
10647 }
10648 }
10649 #[inline]
10650 fn syntax(&self) -> &SyntaxNode {
10651 &self.syntax
10652 }
10653}
10654impl AstNode for AlterDomain {
10655 #[inline]
10656 fn can_cast(kind: SyntaxKind) -> bool {
10657 kind == SyntaxKind::ALTER_DOMAIN
10658 }
10659 #[inline]
10660 fn cast(syntax: SyntaxNode) -> Option<Self> {
10661 if Self::can_cast(syntax.kind()) {
10662 Some(Self { syntax })
10663 } else {
10664 None
10665 }
10666 }
10667 #[inline]
10668 fn syntax(&self) -> &SyntaxNode {
10669 &self.syntax
10670 }
10671}
10672impl AstNode for AlterEventTrigger {
10673 #[inline]
10674 fn can_cast(kind: SyntaxKind) -> bool {
10675 kind == SyntaxKind::ALTER_EVENT_TRIGGER
10676 }
10677 #[inline]
10678 fn cast(syntax: SyntaxNode) -> Option<Self> {
10679 if Self::can_cast(syntax.kind()) {
10680 Some(Self { syntax })
10681 } else {
10682 None
10683 }
10684 }
10685 #[inline]
10686 fn syntax(&self) -> &SyntaxNode {
10687 &self.syntax
10688 }
10689}
10690impl AstNode for AlterExtension {
10691 #[inline]
10692 fn can_cast(kind: SyntaxKind) -> bool {
10693 kind == SyntaxKind::ALTER_EXTENSION
10694 }
10695 #[inline]
10696 fn cast(syntax: SyntaxNode) -> Option<Self> {
10697 if Self::can_cast(syntax.kind()) {
10698 Some(Self { syntax })
10699 } else {
10700 None
10701 }
10702 }
10703 #[inline]
10704 fn syntax(&self) -> &SyntaxNode {
10705 &self.syntax
10706 }
10707}
10708impl AstNode for AlterForeignDataWrapper {
10709 #[inline]
10710 fn can_cast(kind: SyntaxKind) -> bool {
10711 kind == SyntaxKind::ALTER_FOREIGN_DATA_WRAPPER
10712 }
10713 #[inline]
10714 fn cast(syntax: SyntaxNode) -> Option<Self> {
10715 if Self::can_cast(syntax.kind()) {
10716 Some(Self { syntax })
10717 } else {
10718 None
10719 }
10720 }
10721 #[inline]
10722 fn syntax(&self) -> &SyntaxNode {
10723 &self.syntax
10724 }
10725}
10726impl AstNode for AlterForeignTable {
10727 #[inline]
10728 fn can_cast(kind: SyntaxKind) -> bool {
10729 kind == SyntaxKind::ALTER_FOREIGN_TABLE
10730 }
10731 #[inline]
10732 fn cast(syntax: SyntaxNode) -> Option<Self> {
10733 if Self::can_cast(syntax.kind()) {
10734 Some(Self { syntax })
10735 } else {
10736 None
10737 }
10738 }
10739 #[inline]
10740 fn syntax(&self) -> &SyntaxNode {
10741 &self.syntax
10742 }
10743}
10744impl AstNode for AlterFunction {
10745 #[inline]
10746 fn can_cast(kind: SyntaxKind) -> bool {
10747 kind == SyntaxKind::ALTER_FUNCTION
10748 }
10749 #[inline]
10750 fn cast(syntax: SyntaxNode) -> Option<Self> {
10751 if Self::can_cast(syntax.kind()) {
10752 Some(Self { syntax })
10753 } else {
10754 None
10755 }
10756 }
10757 #[inline]
10758 fn syntax(&self) -> &SyntaxNode {
10759 &self.syntax
10760 }
10761}
10762impl AstNode for AlterGroup {
10763 #[inline]
10764 fn can_cast(kind: SyntaxKind) -> bool {
10765 kind == SyntaxKind::ALTER_GROUP
10766 }
10767 #[inline]
10768 fn cast(syntax: SyntaxNode) -> Option<Self> {
10769 if Self::can_cast(syntax.kind()) {
10770 Some(Self { syntax })
10771 } else {
10772 None
10773 }
10774 }
10775 #[inline]
10776 fn syntax(&self) -> &SyntaxNode {
10777 &self.syntax
10778 }
10779}
10780impl AstNode for AlterIndex {
10781 #[inline]
10782 fn can_cast(kind: SyntaxKind) -> bool {
10783 kind == SyntaxKind::ALTER_INDEX
10784 }
10785 #[inline]
10786 fn cast(syntax: SyntaxNode) -> Option<Self> {
10787 if Self::can_cast(syntax.kind()) {
10788 Some(Self { syntax })
10789 } else {
10790 None
10791 }
10792 }
10793 #[inline]
10794 fn syntax(&self) -> &SyntaxNode {
10795 &self.syntax
10796 }
10797}
10798impl AstNode for AlterLanguage {
10799 #[inline]
10800 fn can_cast(kind: SyntaxKind) -> bool {
10801 kind == SyntaxKind::ALTER_LANGUAGE
10802 }
10803 #[inline]
10804 fn cast(syntax: SyntaxNode) -> Option<Self> {
10805 if Self::can_cast(syntax.kind()) {
10806 Some(Self { syntax })
10807 } else {
10808 None
10809 }
10810 }
10811 #[inline]
10812 fn syntax(&self) -> &SyntaxNode {
10813 &self.syntax
10814 }
10815}
10816impl AstNode for AlterLargeObject {
10817 #[inline]
10818 fn can_cast(kind: SyntaxKind) -> bool {
10819 kind == SyntaxKind::ALTER_LARGE_OBJECT
10820 }
10821 #[inline]
10822 fn cast(syntax: SyntaxNode) -> Option<Self> {
10823 if Self::can_cast(syntax.kind()) {
10824 Some(Self { syntax })
10825 } else {
10826 None
10827 }
10828 }
10829 #[inline]
10830 fn syntax(&self) -> &SyntaxNode {
10831 &self.syntax
10832 }
10833}
10834impl AstNode for AlterMaterializedView {
10835 #[inline]
10836 fn can_cast(kind: SyntaxKind) -> bool {
10837 kind == SyntaxKind::ALTER_MATERIALIZED_VIEW
10838 }
10839 #[inline]
10840 fn cast(syntax: SyntaxNode) -> Option<Self> {
10841 if Self::can_cast(syntax.kind()) {
10842 Some(Self { syntax })
10843 } else {
10844 None
10845 }
10846 }
10847 #[inline]
10848 fn syntax(&self) -> &SyntaxNode {
10849 &self.syntax
10850 }
10851}
10852impl AstNode for AlterOperator {
10853 #[inline]
10854 fn can_cast(kind: SyntaxKind) -> bool {
10855 kind == SyntaxKind::ALTER_OPERATOR
10856 }
10857 #[inline]
10858 fn cast(syntax: SyntaxNode) -> Option<Self> {
10859 if Self::can_cast(syntax.kind()) {
10860 Some(Self { syntax })
10861 } else {
10862 None
10863 }
10864 }
10865 #[inline]
10866 fn syntax(&self) -> &SyntaxNode {
10867 &self.syntax
10868 }
10869}
10870impl AstNode for AlterOperatorClass {
10871 #[inline]
10872 fn can_cast(kind: SyntaxKind) -> bool {
10873 kind == SyntaxKind::ALTER_OPERATOR_CLASS
10874 }
10875 #[inline]
10876 fn cast(syntax: SyntaxNode) -> Option<Self> {
10877 if Self::can_cast(syntax.kind()) {
10878 Some(Self { syntax })
10879 } else {
10880 None
10881 }
10882 }
10883 #[inline]
10884 fn syntax(&self) -> &SyntaxNode {
10885 &self.syntax
10886 }
10887}
10888impl AstNode for AlterOperatorFamily {
10889 #[inline]
10890 fn can_cast(kind: SyntaxKind) -> bool {
10891 kind == SyntaxKind::ALTER_OPERATOR_FAMILY
10892 }
10893 #[inline]
10894 fn cast(syntax: SyntaxNode) -> Option<Self> {
10895 if Self::can_cast(syntax.kind()) {
10896 Some(Self { syntax })
10897 } else {
10898 None
10899 }
10900 }
10901 #[inline]
10902 fn syntax(&self) -> &SyntaxNode {
10903 &self.syntax
10904 }
10905}
10906impl AstNode for AlterPolicy {
10907 #[inline]
10908 fn can_cast(kind: SyntaxKind) -> bool {
10909 kind == SyntaxKind::ALTER_POLICY
10910 }
10911 #[inline]
10912 fn cast(syntax: SyntaxNode) -> Option<Self> {
10913 if Self::can_cast(syntax.kind()) {
10914 Some(Self { syntax })
10915 } else {
10916 None
10917 }
10918 }
10919 #[inline]
10920 fn syntax(&self) -> &SyntaxNode {
10921 &self.syntax
10922 }
10923}
10924impl AstNode for AlterProcedure {
10925 #[inline]
10926 fn can_cast(kind: SyntaxKind) -> bool {
10927 kind == SyntaxKind::ALTER_PROCEDURE
10928 }
10929 #[inline]
10930 fn cast(syntax: SyntaxNode) -> Option<Self> {
10931 if Self::can_cast(syntax.kind()) {
10932 Some(Self { syntax })
10933 } else {
10934 None
10935 }
10936 }
10937 #[inline]
10938 fn syntax(&self) -> &SyntaxNode {
10939 &self.syntax
10940 }
10941}
10942impl AstNode for AlterPublication {
10943 #[inline]
10944 fn can_cast(kind: SyntaxKind) -> bool {
10945 kind == SyntaxKind::ALTER_PUBLICATION
10946 }
10947 #[inline]
10948 fn cast(syntax: SyntaxNode) -> Option<Self> {
10949 if Self::can_cast(syntax.kind()) {
10950 Some(Self { syntax })
10951 } else {
10952 None
10953 }
10954 }
10955 #[inline]
10956 fn syntax(&self) -> &SyntaxNode {
10957 &self.syntax
10958 }
10959}
10960impl AstNode for AlterRole {
10961 #[inline]
10962 fn can_cast(kind: SyntaxKind) -> bool {
10963 kind == SyntaxKind::ALTER_ROLE
10964 }
10965 #[inline]
10966 fn cast(syntax: SyntaxNode) -> Option<Self> {
10967 if Self::can_cast(syntax.kind()) {
10968 Some(Self { syntax })
10969 } else {
10970 None
10971 }
10972 }
10973 #[inline]
10974 fn syntax(&self) -> &SyntaxNode {
10975 &self.syntax
10976 }
10977}
10978impl AstNode for AlterRoutine {
10979 #[inline]
10980 fn can_cast(kind: SyntaxKind) -> bool {
10981 kind == SyntaxKind::ALTER_ROUTINE
10982 }
10983 #[inline]
10984 fn cast(syntax: SyntaxNode) -> Option<Self> {
10985 if Self::can_cast(syntax.kind()) {
10986 Some(Self { syntax })
10987 } else {
10988 None
10989 }
10990 }
10991 #[inline]
10992 fn syntax(&self) -> &SyntaxNode {
10993 &self.syntax
10994 }
10995}
10996impl AstNode for AlterRule {
10997 #[inline]
10998 fn can_cast(kind: SyntaxKind) -> bool {
10999 kind == SyntaxKind::ALTER_RULE
11000 }
11001 #[inline]
11002 fn cast(syntax: SyntaxNode) -> Option<Self> {
11003 if Self::can_cast(syntax.kind()) {
11004 Some(Self { syntax })
11005 } else {
11006 None
11007 }
11008 }
11009 #[inline]
11010 fn syntax(&self) -> &SyntaxNode {
11011 &self.syntax
11012 }
11013}
11014impl AstNode for AlterSchema {
11015 #[inline]
11016 fn can_cast(kind: SyntaxKind) -> bool {
11017 kind == SyntaxKind::ALTER_SCHEMA
11018 }
11019 #[inline]
11020 fn cast(syntax: SyntaxNode) -> Option<Self> {
11021 if Self::can_cast(syntax.kind()) {
11022 Some(Self { syntax })
11023 } else {
11024 None
11025 }
11026 }
11027 #[inline]
11028 fn syntax(&self) -> &SyntaxNode {
11029 &self.syntax
11030 }
11031}
11032impl AstNode for AlterSequence {
11033 #[inline]
11034 fn can_cast(kind: SyntaxKind) -> bool {
11035 kind == SyntaxKind::ALTER_SEQUENCE
11036 }
11037 #[inline]
11038 fn cast(syntax: SyntaxNode) -> Option<Self> {
11039 if Self::can_cast(syntax.kind()) {
11040 Some(Self { syntax })
11041 } else {
11042 None
11043 }
11044 }
11045 #[inline]
11046 fn syntax(&self) -> &SyntaxNode {
11047 &self.syntax
11048 }
11049}
11050impl AstNode for AlterServer {
11051 #[inline]
11052 fn can_cast(kind: SyntaxKind) -> bool {
11053 kind == SyntaxKind::ALTER_SERVER
11054 }
11055 #[inline]
11056 fn cast(syntax: SyntaxNode) -> Option<Self> {
11057 if Self::can_cast(syntax.kind()) {
11058 Some(Self { syntax })
11059 } else {
11060 None
11061 }
11062 }
11063 #[inline]
11064 fn syntax(&self) -> &SyntaxNode {
11065 &self.syntax
11066 }
11067}
11068impl AstNode for AlterStatistics {
11069 #[inline]
11070 fn can_cast(kind: SyntaxKind) -> bool {
11071 kind == SyntaxKind::ALTER_STATISTICS
11072 }
11073 #[inline]
11074 fn cast(syntax: SyntaxNode) -> Option<Self> {
11075 if Self::can_cast(syntax.kind()) {
11076 Some(Self { syntax })
11077 } else {
11078 None
11079 }
11080 }
11081 #[inline]
11082 fn syntax(&self) -> &SyntaxNode {
11083 &self.syntax
11084 }
11085}
11086impl AstNode for AlterSubscription {
11087 #[inline]
11088 fn can_cast(kind: SyntaxKind) -> bool {
11089 kind == SyntaxKind::ALTER_SUBSCRIPTION
11090 }
11091 #[inline]
11092 fn cast(syntax: SyntaxNode) -> Option<Self> {
11093 if Self::can_cast(syntax.kind()) {
11094 Some(Self { syntax })
11095 } else {
11096 None
11097 }
11098 }
11099 #[inline]
11100 fn syntax(&self) -> &SyntaxNode {
11101 &self.syntax
11102 }
11103}
11104impl AstNode for AlterSystem {
11105 #[inline]
11106 fn can_cast(kind: SyntaxKind) -> bool {
11107 kind == SyntaxKind::ALTER_SYSTEM
11108 }
11109 #[inline]
11110 fn cast(syntax: SyntaxNode) -> Option<Self> {
11111 if Self::can_cast(syntax.kind()) {
11112 Some(Self { syntax })
11113 } else {
11114 None
11115 }
11116 }
11117 #[inline]
11118 fn syntax(&self) -> &SyntaxNode {
11119 &self.syntax
11120 }
11121}
11122impl AstNode for AlterTable {
11123 #[inline]
11124 fn can_cast(kind: SyntaxKind) -> bool {
11125 kind == SyntaxKind::ALTER_TABLE
11126 }
11127 #[inline]
11128 fn cast(syntax: SyntaxNode) -> Option<Self> {
11129 if Self::can_cast(syntax.kind()) {
11130 Some(Self { syntax })
11131 } else {
11132 None
11133 }
11134 }
11135 #[inline]
11136 fn syntax(&self) -> &SyntaxNode {
11137 &self.syntax
11138 }
11139}
11140impl AstNode for AlterTablespace {
11141 #[inline]
11142 fn can_cast(kind: SyntaxKind) -> bool {
11143 kind == SyntaxKind::ALTER_TABLESPACE
11144 }
11145 #[inline]
11146 fn cast(syntax: SyntaxNode) -> Option<Self> {
11147 if Self::can_cast(syntax.kind()) {
11148 Some(Self { syntax })
11149 } else {
11150 None
11151 }
11152 }
11153 #[inline]
11154 fn syntax(&self) -> &SyntaxNode {
11155 &self.syntax
11156 }
11157}
11158impl AstNode for AlterTextSearchConfiguration {
11159 #[inline]
11160 fn can_cast(kind: SyntaxKind) -> bool {
11161 kind == SyntaxKind::ALTER_TEXT_SEARCH_CONFIGURATION
11162 }
11163 #[inline]
11164 fn cast(syntax: SyntaxNode) -> Option<Self> {
11165 if Self::can_cast(syntax.kind()) {
11166 Some(Self { syntax })
11167 } else {
11168 None
11169 }
11170 }
11171 #[inline]
11172 fn syntax(&self) -> &SyntaxNode {
11173 &self.syntax
11174 }
11175}
11176impl AstNode for AlterTextSearchDictionary {
11177 #[inline]
11178 fn can_cast(kind: SyntaxKind) -> bool {
11179 kind == SyntaxKind::ALTER_TEXT_SEARCH_DICTIONARY
11180 }
11181 #[inline]
11182 fn cast(syntax: SyntaxNode) -> Option<Self> {
11183 if Self::can_cast(syntax.kind()) {
11184 Some(Self { syntax })
11185 } else {
11186 None
11187 }
11188 }
11189 #[inline]
11190 fn syntax(&self) -> &SyntaxNode {
11191 &self.syntax
11192 }
11193}
11194impl AstNode for AlterTextSearchParser {
11195 #[inline]
11196 fn can_cast(kind: SyntaxKind) -> bool {
11197 kind == SyntaxKind::ALTER_TEXT_SEARCH_PARSER
11198 }
11199 #[inline]
11200 fn cast(syntax: SyntaxNode) -> Option<Self> {
11201 if Self::can_cast(syntax.kind()) {
11202 Some(Self { syntax })
11203 } else {
11204 None
11205 }
11206 }
11207 #[inline]
11208 fn syntax(&self) -> &SyntaxNode {
11209 &self.syntax
11210 }
11211}
11212impl AstNode for AlterTextSearchTemplate {
11213 #[inline]
11214 fn can_cast(kind: SyntaxKind) -> bool {
11215 kind == SyntaxKind::ALTER_TEXT_SEARCH_TEMPLATE
11216 }
11217 #[inline]
11218 fn cast(syntax: SyntaxNode) -> Option<Self> {
11219 if Self::can_cast(syntax.kind()) {
11220 Some(Self { syntax })
11221 } else {
11222 None
11223 }
11224 }
11225 #[inline]
11226 fn syntax(&self) -> &SyntaxNode {
11227 &self.syntax
11228 }
11229}
11230impl AstNode for AlterTrigger {
11231 #[inline]
11232 fn can_cast(kind: SyntaxKind) -> bool {
11233 kind == SyntaxKind::ALTER_TRIGGER
11234 }
11235 #[inline]
11236 fn cast(syntax: SyntaxNode) -> Option<Self> {
11237 if Self::can_cast(syntax.kind()) {
11238 Some(Self { syntax })
11239 } else {
11240 None
11241 }
11242 }
11243 #[inline]
11244 fn syntax(&self) -> &SyntaxNode {
11245 &self.syntax
11246 }
11247}
11248impl AstNode for AlterType {
11249 #[inline]
11250 fn can_cast(kind: SyntaxKind) -> bool {
11251 kind == SyntaxKind::ALTER_TYPE
11252 }
11253 #[inline]
11254 fn cast(syntax: SyntaxNode) -> Option<Self> {
11255 if Self::can_cast(syntax.kind()) {
11256 Some(Self { syntax })
11257 } else {
11258 None
11259 }
11260 }
11261 #[inline]
11262 fn syntax(&self) -> &SyntaxNode {
11263 &self.syntax
11264 }
11265}
11266impl AstNode for AlterUser {
11267 #[inline]
11268 fn can_cast(kind: SyntaxKind) -> bool {
11269 kind == SyntaxKind::ALTER_USER
11270 }
11271 #[inline]
11272 fn cast(syntax: SyntaxNode) -> Option<Self> {
11273 if Self::can_cast(syntax.kind()) {
11274 Some(Self { syntax })
11275 } else {
11276 None
11277 }
11278 }
11279 #[inline]
11280 fn syntax(&self) -> &SyntaxNode {
11281 &self.syntax
11282 }
11283}
11284impl AstNode for AlterUserMapping {
11285 #[inline]
11286 fn can_cast(kind: SyntaxKind) -> bool {
11287 kind == SyntaxKind::ALTER_USER_MAPPING
11288 }
11289 #[inline]
11290 fn cast(syntax: SyntaxNode) -> Option<Self> {
11291 if Self::can_cast(syntax.kind()) {
11292 Some(Self { syntax })
11293 } else {
11294 None
11295 }
11296 }
11297 #[inline]
11298 fn syntax(&self) -> &SyntaxNode {
11299 &self.syntax
11300 }
11301}
11302impl AstNode for AlterView {
11303 #[inline]
11304 fn can_cast(kind: SyntaxKind) -> bool {
11305 kind == SyntaxKind::ALTER_VIEW
11306 }
11307 #[inline]
11308 fn cast(syntax: SyntaxNode) -> Option<Self> {
11309 if Self::can_cast(syntax.kind()) {
11310 Some(Self { syntax })
11311 } else {
11312 None
11313 }
11314 }
11315 #[inline]
11316 fn syntax(&self) -> &SyntaxNode {
11317 &self.syntax
11318 }
11319}
11320impl AstNode for Analyze {
11321 #[inline]
11322 fn can_cast(kind: SyntaxKind) -> bool {
11323 kind == SyntaxKind::ANALYZE
11324 }
11325 #[inline]
11326 fn cast(syntax: SyntaxNode) -> Option<Self> {
11327 if Self::can_cast(syntax.kind()) {
11328 Some(Self { syntax })
11329 } else {
11330 None
11331 }
11332 }
11333 #[inline]
11334 fn syntax(&self) -> &SyntaxNode {
11335 &self.syntax
11336 }
11337}
11338impl AstNode for Arg {
11339 #[inline]
11340 fn can_cast(kind: SyntaxKind) -> bool {
11341 kind == SyntaxKind::ARG
11342 }
11343 #[inline]
11344 fn cast(syntax: SyntaxNode) -> Option<Self> {
11345 if Self::can_cast(syntax.kind()) {
11346 Some(Self { syntax })
11347 } else {
11348 None
11349 }
11350 }
11351 #[inline]
11352 fn syntax(&self) -> &SyntaxNode {
11353 &self.syntax
11354 }
11355}
11356impl AstNode for ArgList {
11357 #[inline]
11358 fn can_cast(kind: SyntaxKind) -> bool {
11359 kind == SyntaxKind::ARG_LIST
11360 }
11361 #[inline]
11362 fn cast(syntax: SyntaxNode) -> Option<Self> {
11363 if Self::can_cast(syntax.kind()) {
11364 Some(Self { syntax })
11365 } else {
11366 None
11367 }
11368 }
11369 #[inline]
11370 fn syntax(&self) -> &SyntaxNode {
11371 &self.syntax
11372 }
11373}
11374impl AstNode for ArrayExpr {
11375 #[inline]
11376 fn can_cast(kind: SyntaxKind) -> bool {
11377 kind == SyntaxKind::ARRAY_EXPR
11378 }
11379 #[inline]
11380 fn cast(syntax: SyntaxNode) -> Option<Self> {
11381 if Self::can_cast(syntax.kind()) {
11382 Some(Self { syntax })
11383 } else {
11384 None
11385 }
11386 }
11387 #[inline]
11388 fn syntax(&self) -> &SyntaxNode {
11389 &self.syntax
11390 }
11391}
11392impl AstNode for ArrayType {
11393 #[inline]
11394 fn can_cast(kind: SyntaxKind) -> bool {
11395 kind == SyntaxKind::ARRAY_TYPE
11396 }
11397 #[inline]
11398 fn cast(syntax: SyntaxNode) -> Option<Self> {
11399 if Self::can_cast(syntax.kind()) {
11400 Some(Self { syntax })
11401 } else {
11402 None
11403 }
11404 }
11405 #[inline]
11406 fn syntax(&self) -> &SyntaxNode {
11407 &self.syntax
11408 }
11409}
11410impl AstNode for AsFuncOption {
11411 #[inline]
11412 fn can_cast(kind: SyntaxKind) -> bool {
11413 kind == SyntaxKind::AS_FUNC_OPTION
11414 }
11415 #[inline]
11416 fn cast(syntax: SyntaxNode) -> Option<Self> {
11417 if Self::can_cast(syntax.kind()) {
11418 Some(Self { syntax })
11419 } else {
11420 None
11421 }
11422 }
11423 #[inline]
11424 fn syntax(&self) -> &SyntaxNode {
11425 &self.syntax
11426 }
11427}
11428impl AstNode for AtTimeZone {
11429 #[inline]
11430 fn can_cast(kind: SyntaxKind) -> bool {
11431 kind == SyntaxKind::AT_TIME_ZONE
11432 }
11433 #[inline]
11434 fn cast(syntax: SyntaxNode) -> Option<Self> {
11435 if Self::can_cast(syntax.kind()) {
11436 Some(Self { syntax })
11437 } else {
11438 None
11439 }
11440 }
11441 #[inline]
11442 fn syntax(&self) -> &SyntaxNode {
11443 &self.syntax
11444 }
11445}
11446impl AstNode for AttachPartition {
11447 #[inline]
11448 fn can_cast(kind: SyntaxKind) -> bool {
11449 kind == SyntaxKind::ATTACH_PARTITION
11450 }
11451 #[inline]
11452 fn cast(syntax: SyntaxNode) -> Option<Self> {
11453 if Self::can_cast(syntax.kind()) {
11454 Some(Self { syntax })
11455 } else {
11456 None
11457 }
11458 }
11459 #[inline]
11460 fn syntax(&self) -> &SyntaxNode {
11461 &self.syntax
11462 }
11463}
11464impl AstNode for AttributeList {
11465 #[inline]
11466 fn can_cast(kind: SyntaxKind) -> bool {
11467 kind == SyntaxKind::ATTRIBUTE_LIST
11468 }
11469 #[inline]
11470 fn cast(syntax: SyntaxNode) -> Option<Self> {
11471 if Self::can_cast(syntax.kind()) {
11472 Some(Self { syntax })
11473 } else {
11474 None
11475 }
11476 }
11477 #[inline]
11478 fn syntax(&self) -> &SyntaxNode {
11479 &self.syntax
11480 }
11481}
11482impl AstNode for AttributeOption {
11483 #[inline]
11484 fn can_cast(kind: SyntaxKind) -> bool {
11485 kind == SyntaxKind::ATTRIBUTE_OPTION
11486 }
11487 #[inline]
11488 fn cast(syntax: SyntaxNode) -> Option<Self> {
11489 if Self::can_cast(syntax.kind()) {
11490 Some(Self { syntax })
11491 } else {
11492 None
11493 }
11494 }
11495 #[inline]
11496 fn syntax(&self) -> &SyntaxNode {
11497 &self.syntax
11498 }
11499}
11500impl AstNode for Begin {
11501 #[inline]
11502 fn can_cast(kind: SyntaxKind) -> bool {
11503 kind == SyntaxKind::BEGIN
11504 }
11505 #[inline]
11506 fn cast(syntax: SyntaxNode) -> Option<Self> {
11507 if Self::can_cast(syntax.kind()) {
11508 Some(Self { syntax })
11509 } else {
11510 None
11511 }
11512 }
11513 #[inline]
11514 fn syntax(&self) -> &SyntaxNode {
11515 &self.syntax
11516 }
11517}
11518impl AstNode for BeginFuncOption {
11519 #[inline]
11520 fn can_cast(kind: SyntaxKind) -> bool {
11521 kind == SyntaxKind::BEGIN_FUNC_OPTION
11522 }
11523 #[inline]
11524 fn cast(syntax: SyntaxNode) -> Option<Self> {
11525 if Self::can_cast(syntax.kind()) {
11526 Some(Self { syntax })
11527 } else {
11528 None
11529 }
11530 }
11531 #[inline]
11532 fn syntax(&self) -> &SyntaxNode {
11533 &self.syntax
11534 }
11535}
11536impl AstNode for BetweenExpr {
11537 #[inline]
11538 fn can_cast(kind: SyntaxKind) -> bool {
11539 kind == SyntaxKind::BETWEEN_EXPR
11540 }
11541 #[inline]
11542 fn cast(syntax: SyntaxNode) -> Option<Self> {
11543 if Self::can_cast(syntax.kind()) {
11544 Some(Self { syntax })
11545 } else {
11546 None
11547 }
11548 }
11549 #[inline]
11550 fn syntax(&self) -> &SyntaxNode {
11551 &self.syntax
11552 }
11553}
11554impl AstNode for BinExpr {
11555 #[inline]
11556 fn can_cast(kind: SyntaxKind) -> bool {
11557 kind == SyntaxKind::BIN_EXPR
11558 }
11559 #[inline]
11560 fn cast(syntax: SyntaxNode) -> Option<Self> {
11561 if Self::can_cast(syntax.kind()) {
11562 Some(Self { syntax })
11563 } else {
11564 None
11565 }
11566 }
11567 #[inline]
11568 fn syntax(&self) -> &SyntaxNode {
11569 &self.syntax
11570 }
11571}
11572impl AstNode for BitType {
11573 #[inline]
11574 fn can_cast(kind: SyntaxKind) -> bool {
11575 kind == SyntaxKind::BIT_TYPE
11576 }
11577 #[inline]
11578 fn cast(syntax: SyntaxNode) -> Option<Self> {
11579 if Self::can_cast(syntax.kind()) {
11580 Some(Self { syntax })
11581 } else {
11582 None
11583 }
11584 }
11585 #[inline]
11586 fn syntax(&self) -> &SyntaxNode {
11587 &self.syntax
11588 }
11589}
11590impl AstNode for Call {
11591 #[inline]
11592 fn can_cast(kind: SyntaxKind) -> bool {
11593 kind == SyntaxKind::CALL
11594 }
11595 #[inline]
11596 fn cast(syntax: SyntaxNode) -> Option<Self> {
11597 if Self::can_cast(syntax.kind()) {
11598 Some(Self { syntax })
11599 } else {
11600 None
11601 }
11602 }
11603 #[inline]
11604 fn syntax(&self) -> &SyntaxNode {
11605 &self.syntax
11606 }
11607}
11608impl AstNode for CallExpr {
11609 #[inline]
11610 fn can_cast(kind: SyntaxKind) -> bool {
11611 kind == SyntaxKind::CALL_EXPR
11612 }
11613 #[inline]
11614 fn cast(syntax: SyntaxNode) -> Option<Self> {
11615 if Self::can_cast(syntax.kind()) {
11616 Some(Self { syntax })
11617 } else {
11618 None
11619 }
11620 }
11621 #[inline]
11622 fn syntax(&self) -> &SyntaxNode {
11623 &self.syntax
11624 }
11625}
11626impl AstNode for Cascade {
11627 #[inline]
11628 fn can_cast(kind: SyntaxKind) -> bool {
11629 kind == SyntaxKind::CASCADE
11630 }
11631 #[inline]
11632 fn cast(syntax: SyntaxNode) -> Option<Self> {
11633 if Self::can_cast(syntax.kind()) {
11634 Some(Self { syntax })
11635 } else {
11636 None
11637 }
11638 }
11639 #[inline]
11640 fn syntax(&self) -> &SyntaxNode {
11641 &self.syntax
11642 }
11643}
11644impl AstNode for CaseExpr {
11645 #[inline]
11646 fn can_cast(kind: SyntaxKind) -> bool {
11647 kind == SyntaxKind::CASE_EXPR
11648 }
11649 #[inline]
11650 fn cast(syntax: SyntaxNode) -> Option<Self> {
11651 if Self::can_cast(syntax.kind()) {
11652 Some(Self { syntax })
11653 } else {
11654 None
11655 }
11656 }
11657 #[inline]
11658 fn syntax(&self) -> &SyntaxNode {
11659 &self.syntax
11660 }
11661}
11662impl AstNode for CastExpr {
11663 #[inline]
11664 fn can_cast(kind: SyntaxKind) -> bool {
11665 kind == SyntaxKind::CAST_EXPR
11666 }
11667 #[inline]
11668 fn cast(syntax: SyntaxNode) -> Option<Self> {
11669 if Self::can_cast(syntax.kind()) {
11670 Some(Self { syntax })
11671 } else {
11672 None
11673 }
11674 }
11675 #[inline]
11676 fn syntax(&self) -> &SyntaxNode {
11677 &self.syntax
11678 }
11679}
11680impl AstNode for CharType {
11681 #[inline]
11682 fn can_cast(kind: SyntaxKind) -> bool {
11683 kind == SyntaxKind::CHAR_TYPE
11684 }
11685 #[inline]
11686 fn cast(syntax: SyntaxNode) -> Option<Self> {
11687 if Self::can_cast(syntax.kind()) {
11688 Some(Self { syntax })
11689 } else {
11690 None
11691 }
11692 }
11693 #[inline]
11694 fn syntax(&self) -> &SyntaxNode {
11695 &self.syntax
11696 }
11697}
11698impl AstNode for CheckConstraint {
11699 #[inline]
11700 fn can_cast(kind: SyntaxKind) -> bool {
11701 kind == SyntaxKind::CHECK_CONSTRAINT
11702 }
11703 #[inline]
11704 fn cast(syntax: SyntaxNode) -> Option<Self> {
11705 if Self::can_cast(syntax.kind()) {
11706 Some(Self { syntax })
11707 } else {
11708 None
11709 }
11710 }
11711 #[inline]
11712 fn syntax(&self) -> &SyntaxNode {
11713 &self.syntax
11714 }
11715}
11716impl AstNode for Checkpoint {
11717 #[inline]
11718 fn can_cast(kind: SyntaxKind) -> bool {
11719 kind == SyntaxKind::CHECKPOINT
11720 }
11721 #[inline]
11722 fn cast(syntax: SyntaxNode) -> Option<Self> {
11723 if Self::can_cast(syntax.kind()) {
11724 Some(Self { syntax })
11725 } else {
11726 None
11727 }
11728 }
11729 #[inline]
11730 fn syntax(&self) -> &SyntaxNode {
11731 &self.syntax
11732 }
11733}
11734impl AstNode for Close {
11735 #[inline]
11736 fn can_cast(kind: SyntaxKind) -> bool {
11737 kind == SyntaxKind::CLOSE
11738 }
11739 #[inline]
11740 fn cast(syntax: SyntaxNode) -> Option<Self> {
11741 if Self::can_cast(syntax.kind()) {
11742 Some(Self { syntax })
11743 } else {
11744 None
11745 }
11746 }
11747 #[inline]
11748 fn syntax(&self) -> &SyntaxNode {
11749 &self.syntax
11750 }
11751}
11752impl AstNode for Cluster {
11753 #[inline]
11754 fn can_cast(kind: SyntaxKind) -> bool {
11755 kind == SyntaxKind::CLUSTER
11756 }
11757 #[inline]
11758 fn cast(syntax: SyntaxNode) -> Option<Self> {
11759 if Self::can_cast(syntax.kind()) {
11760 Some(Self { syntax })
11761 } else {
11762 None
11763 }
11764 }
11765 #[inline]
11766 fn syntax(&self) -> &SyntaxNode {
11767 &self.syntax
11768 }
11769}
11770impl AstNode for ClusterOn {
11771 #[inline]
11772 fn can_cast(kind: SyntaxKind) -> bool {
11773 kind == SyntaxKind::CLUSTER_ON
11774 }
11775 #[inline]
11776 fn cast(syntax: SyntaxNode) -> Option<Self> {
11777 if Self::can_cast(syntax.kind()) {
11778 Some(Self { syntax })
11779 } else {
11780 None
11781 }
11782 }
11783 #[inline]
11784 fn syntax(&self) -> &SyntaxNode {
11785 &self.syntax
11786 }
11787}
11788impl AstNode for Collate {
11789 #[inline]
11790 fn can_cast(kind: SyntaxKind) -> bool {
11791 kind == SyntaxKind::COLLATE
11792 }
11793 #[inline]
11794 fn cast(syntax: SyntaxNode) -> Option<Self> {
11795 if Self::can_cast(syntax.kind()) {
11796 Some(Self { syntax })
11797 } else {
11798 None
11799 }
11800 }
11801 #[inline]
11802 fn syntax(&self) -> &SyntaxNode {
11803 &self.syntax
11804 }
11805}
11806impl AstNode for ColonColon {
11807 #[inline]
11808 fn can_cast(kind: SyntaxKind) -> bool {
11809 kind == SyntaxKind::COLON_COLON
11810 }
11811 #[inline]
11812 fn cast(syntax: SyntaxNode) -> Option<Self> {
11813 if Self::can_cast(syntax.kind()) {
11814 Some(Self { syntax })
11815 } else {
11816 None
11817 }
11818 }
11819 #[inline]
11820 fn syntax(&self) -> &SyntaxNode {
11821 &self.syntax
11822 }
11823}
11824impl AstNode for ColonEq {
11825 #[inline]
11826 fn can_cast(kind: SyntaxKind) -> bool {
11827 kind == SyntaxKind::COLON_EQ
11828 }
11829 #[inline]
11830 fn cast(syntax: SyntaxNode) -> Option<Self> {
11831 if Self::can_cast(syntax.kind()) {
11832 Some(Self { syntax })
11833 } else {
11834 None
11835 }
11836 }
11837 #[inline]
11838 fn syntax(&self) -> &SyntaxNode {
11839 &self.syntax
11840 }
11841}
11842impl AstNode for Column {
11843 #[inline]
11844 fn can_cast(kind: SyntaxKind) -> bool {
11845 kind == SyntaxKind::COLUMN
11846 }
11847 #[inline]
11848 fn cast(syntax: SyntaxNode) -> Option<Self> {
11849 if Self::can_cast(syntax.kind()) {
11850 Some(Self { syntax })
11851 } else {
11852 None
11853 }
11854 }
11855 #[inline]
11856 fn syntax(&self) -> &SyntaxNode {
11857 &self.syntax
11858 }
11859}
11860impl AstNode for ColumnList {
11861 #[inline]
11862 fn can_cast(kind: SyntaxKind) -> bool {
11863 kind == SyntaxKind::COLUMN_LIST
11864 }
11865 #[inline]
11866 fn cast(syntax: SyntaxNode) -> Option<Self> {
11867 if Self::can_cast(syntax.kind()) {
11868 Some(Self { syntax })
11869 } else {
11870 None
11871 }
11872 }
11873 #[inline]
11874 fn syntax(&self) -> &SyntaxNode {
11875 &self.syntax
11876 }
11877}
11878impl AstNode for CommentOn {
11879 #[inline]
11880 fn can_cast(kind: SyntaxKind) -> bool {
11881 kind == SyntaxKind::COMMENT_ON
11882 }
11883 #[inline]
11884 fn cast(syntax: SyntaxNode) -> Option<Self> {
11885 if Self::can_cast(syntax.kind()) {
11886 Some(Self { syntax })
11887 } else {
11888 None
11889 }
11890 }
11891 #[inline]
11892 fn syntax(&self) -> &SyntaxNode {
11893 &self.syntax
11894 }
11895}
11896impl AstNode for Commit {
11897 #[inline]
11898 fn can_cast(kind: SyntaxKind) -> bool {
11899 kind == SyntaxKind::COMMIT
11900 }
11901 #[inline]
11902 fn cast(syntax: SyntaxNode) -> Option<Self> {
11903 if Self::can_cast(syntax.kind()) {
11904 Some(Self { syntax })
11905 } else {
11906 None
11907 }
11908 }
11909 #[inline]
11910 fn syntax(&self) -> &SyntaxNode {
11911 &self.syntax
11912 }
11913}
11914impl AstNode for CompoundSelect {
11915 #[inline]
11916 fn can_cast(kind: SyntaxKind) -> bool {
11917 kind == SyntaxKind::COMPOUND_SELECT
11918 }
11919 #[inline]
11920 fn cast(syntax: SyntaxNode) -> Option<Self> {
11921 if Self::can_cast(syntax.kind()) {
11922 Some(Self { syntax })
11923 } else {
11924 None
11925 }
11926 }
11927 #[inline]
11928 fn syntax(&self) -> &SyntaxNode {
11929 &self.syntax
11930 }
11931}
11932impl AstNode for CompressionMethod {
11933 #[inline]
11934 fn can_cast(kind: SyntaxKind) -> bool {
11935 kind == SyntaxKind::COMPRESSION_METHOD
11936 }
11937 #[inline]
11938 fn cast(syntax: SyntaxNode) -> Option<Self> {
11939 if Self::can_cast(syntax.kind()) {
11940 Some(Self { syntax })
11941 } else {
11942 None
11943 }
11944 }
11945 #[inline]
11946 fn syntax(&self) -> &SyntaxNode {
11947 &self.syntax
11948 }
11949}
11950impl AstNode for ConstraintExclusions {
11951 #[inline]
11952 fn can_cast(kind: SyntaxKind) -> bool {
11953 kind == SyntaxKind::CONSTRAINT_EXCLUSIONS
11954 }
11955 #[inline]
11956 fn cast(syntax: SyntaxNode) -> Option<Self> {
11957 if Self::can_cast(syntax.kind()) {
11958 Some(Self { syntax })
11959 } else {
11960 None
11961 }
11962 }
11963 #[inline]
11964 fn syntax(&self) -> &SyntaxNode {
11965 &self.syntax
11966 }
11967}
11968impl AstNode for ConstraintIncludeClause {
11969 #[inline]
11970 fn can_cast(kind: SyntaxKind) -> bool {
11971 kind == SyntaxKind::CONSTRAINT_INCLUDE_CLAUSE
11972 }
11973 #[inline]
11974 fn cast(syntax: SyntaxNode) -> Option<Self> {
11975 if Self::can_cast(syntax.kind()) {
11976 Some(Self { syntax })
11977 } else {
11978 None
11979 }
11980 }
11981 #[inline]
11982 fn syntax(&self) -> &SyntaxNode {
11983 &self.syntax
11984 }
11985}
11986impl AstNode for ConstraintIndexMethod {
11987 #[inline]
11988 fn can_cast(kind: SyntaxKind) -> bool {
11989 kind == SyntaxKind::CONSTRAINT_INDEX_METHOD
11990 }
11991 #[inline]
11992 fn cast(syntax: SyntaxNode) -> Option<Self> {
11993 if Self::can_cast(syntax.kind()) {
11994 Some(Self { syntax })
11995 } else {
11996 None
11997 }
11998 }
11999 #[inline]
12000 fn syntax(&self) -> &SyntaxNode {
12001 &self.syntax
12002 }
12003}
12004impl AstNode for ConstraintIndexTablespace {
12005 #[inline]
12006 fn can_cast(kind: SyntaxKind) -> bool {
12007 kind == SyntaxKind::CONSTRAINT_INDEX_TABLESPACE
12008 }
12009 #[inline]
12010 fn cast(syntax: SyntaxNode) -> Option<Self> {
12011 if Self::can_cast(syntax.kind()) {
12012 Some(Self { syntax })
12013 } else {
12014 None
12015 }
12016 }
12017 #[inline]
12018 fn syntax(&self) -> &SyntaxNode {
12019 &self.syntax
12020 }
12021}
12022impl AstNode for ConstraintWhereClause {
12023 #[inline]
12024 fn can_cast(kind: SyntaxKind) -> bool {
12025 kind == SyntaxKind::CONSTRAINT_WHERE_CLAUSE
12026 }
12027 #[inline]
12028 fn cast(syntax: SyntaxNode) -> Option<Self> {
12029 if Self::can_cast(syntax.kind()) {
12030 Some(Self { syntax })
12031 } else {
12032 None
12033 }
12034 }
12035 #[inline]
12036 fn syntax(&self) -> &SyntaxNode {
12037 &self.syntax
12038 }
12039}
12040impl AstNode for Copy {
12041 #[inline]
12042 fn can_cast(kind: SyntaxKind) -> bool {
12043 kind == SyntaxKind::COPY
12044 }
12045 #[inline]
12046 fn cast(syntax: SyntaxNode) -> Option<Self> {
12047 if Self::can_cast(syntax.kind()) {
12048 Some(Self { syntax })
12049 } else {
12050 None
12051 }
12052 }
12053 #[inline]
12054 fn syntax(&self) -> &SyntaxNode {
12055 &self.syntax
12056 }
12057}
12058impl AstNode for CostFuncOption {
12059 #[inline]
12060 fn can_cast(kind: SyntaxKind) -> bool {
12061 kind == SyntaxKind::COST_FUNC_OPTION
12062 }
12063 #[inline]
12064 fn cast(syntax: SyntaxNode) -> Option<Self> {
12065 if Self::can_cast(syntax.kind()) {
12066 Some(Self { syntax })
12067 } else {
12068 None
12069 }
12070 }
12071 #[inline]
12072 fn syntax(&self) -> &SyntaxNode {
12073 &self.syntax
12074 }
12075}
12076impl AstNode for CreateAccessMethod {
12077 #[inline]
12078 fn can_cast(kind: SyntaxKind) -> bool {
12079 kind == SyntaxKind::CREATE_ACCESS_METHOD
12080 }
12081 #[inline]
12082 fn cast(syntax: SyntaxNode) -> Option<Self> {
12083 if Self::can_cast(syntax.kind()) {
12084 Some(Self { syntax })
12085 } else {
12086 None
12087 }
12088 }
12089 #[inline]
12090 fn syntax(&self) -> &SyntaxNode {
12091 &self.syntax
12092 }
12093}
12094impl AstNode for CreateAggregate {
12095 #[inline]
12096 fn can_cast(kind: SyntaxKind) -> bool {
12097 kind == SyntaxKind::CREATE_AGGREGATE
12098 }
12099 #[inline]
12100 fn cast(syntax: SyntaxNode) -> Option<Self> {
12101 if Self::can_cast(syntax.kind()) {
12102 Some(Self { syntax })
12103 } else {
12104 None
12105 }
12106 }
12107 #[inline]
12108 fn syntax(&self) -> &SyntaxNode {
12109 &self.syntax
12110 }
12111}
12112impl AstNode for CreateCast {
12113 #[inline]
12114 fn can_cast(kind: SyntaxKind) -> bool {
12115 kind == SyntaxKind::CREATE_CAST
12116 }
12117 #[inline]
12118 fn cast(syntax: SyntaxNode) -> Option<Self> {
12119 if Self::can_cast(syntax.kind()) {
12120 Some(Self { syntax })
12121 } else {
12122 None
12123 }
12124 }
12125 #[inline]
12126 fn syntax(&self) -> &SyntaxNode {
12127 &self.syntax
12128 }
12129}
12130impl AstNode for CreateCollation {
12131 #[inline]
12132 fn can_cast(kind: SyntaxKind) -> bool {
12133 kind == SyntaxKind::CREATE_COLLATION
12134 }
12135 #[inline]
12136 fn cast(syntax: SyntaxNode) -> Option<Self> {
12137 if Self::can_cast(syntax.kind()) {
12138 Some(Self { syntax })
12139 } else {
12140 None
12141 }
12142 }
12143 #[inline]
12144 fn syntax(&self) -> &SyntaxNode {
12145 &self.syntax
12146 }
12147}
12148impl AstNode for CreateConversion {
12149 #[inline]
12150 fn can_cast(kind: SyntaxKind) -> bool {
12151 kind == SyntaxKind::CREATE_CONVERSION
12152 }
12153 #[inline]
12154 fn cast(syntax: SyntaxNode) -> Option<Self> {
12155 if Self::can_cast(syntax.kind()) {
12156 Some(Self { syntax })
12157 } else {
12158 None
12159 }
12160 }
12161 #[inline]
12162 fn syntax(&self) -> &SyntaxNode {
12163 &self.syntax
12164 }
12165}
12166impl AstNode for CreateDatabase {
12167 #[inline]
12168 fn can_cast(kind: SyntaxKind) -> bool {
12169 kind == SyntaxKind::CREATE_DATABASE
12170 }
12171 #[inline]
12172 fn cast(syntax: SyntaxNode) -> Option<Self> {
12173 if Self::can_cast(syntax.kind()) {
12174 Some(Self { syntax })
12175 } else {
12176 None
12177 }
12178 }
12179 #[inline]
12180 fn syntax(&self) -> &SyntaxNode {
12181 &self.syntax
12182 }
12183}
12184impl AstNode for CreateDomain {
12185 #[inline]
12186 fn can_cast(kind: SyntaxKind) -> bool {
12187 kind == SyntaxKind::CREATE_DOMAIN
12188 }
12189 #[inline]
12190 fn cast(syntax: SyntaxNode) -> Option<Self> {
12191 if Self::can_cast(syntax.kind()) {
12192 Some(Self { syntax })
12193 } else {
12194 None
12195 }
12196 }
12197 #[inline]
12198 fn syntax(&self) -> &SyntaxNode {
12199 &self.syntax
12200 }
12201}
12202impl AstNode for CreateEventTrigger {
12203 #[inline]
12204 fn can_cast(kind: SyntaxKind) -> bool {
12205 kind == SyntaxKind::CREATE_EVENT_TRIGGER
12206 }
12207 #[inline]
12208 fn cast(syntax: SyntaxNode) -> Option<Self> {
12209 if Self::can_cast(syntax.kind()) {
12210 Some(Self { syntax })
12211 } else {
12212 None
12213 }
12214 }
12215 #[inline]
12216 fn syntax(&self) -> &SyntaxNode {
12217 &self.syntax
12218 }
12219}
12220impl AstNode for CreateExtension {
12221 #[inline]
12222 fn can_cast(kind: SyntaxKind) -> bool {
12223 kind == SyntaxKind::CREATE_EXTENSION
12224 }
12225 #[inline]
12226 fn cast(syntax: SyntaxNode) -> Option<Self> {
12227 if Self::can_cast(syntax.kind()) {
12228 Some(Self { syntax })
12229 } else {
12230 None
12231 }
12232 }
12233 #[inline]
12234 fn syntax(&self) -> &SyntaxNode {
12235 &self.syntax
12236 }
12237}
12238impl AstNode for CreateForeignDataWrapper {
12239 #[inline]
12240 fn can_cast(kind: SyntaxKind) -> bool {
12241 kind == SyntaxKind::CREATE_FOREIGN_DATA_WRAPPER
12242 }
12243 #[inline]
12244 fn cast(syntax: SyntaxNode) -> Option<Self> {
12245 if Self::can_cast(syntax.kind()) {
12246 Some(Self { syntax })
12247 } else {
12248 None
12249 }
12250 }
12251 #[inline]
12252 fn syntax(&self) -> &SyntaxNode {
12253 &self.syntax
12254 }
12255}
12256impl AstNode for CreateForeignTable {
12257 #[inline]
12258 fn can_cast(kind: SyntaxKind) -> bool {
12259 kind == SyntaxKind::CREATE_FOREIGN_TABLE
12260 }
12261 #[inline]
12262 fn cast(syntax: SyntaxNode) -> Option<Self> {
12263 if Self::can_cast(syntax.kind()) {
12264 Some(Self { syntax })
12265 } else {
12266 None
12267 }
12268 }
12269 #[inline]
12270 fn syntax(&self) -> &SyntaxNode {
12271 &self.syntax
12272 }
12273}
12274impl AstNode for CreateFunction {
12275 #[inline]
12276 fn can_cast(kind: SyntaxKind) -> bool {
12277 kind == SyntaxKind::CREATE_FUNCTION
12278 }
12279 #[inline]
12280 fn cast(syntax: SyntaxNode) -> Option<Self> {
12281 if Self::can_cast(syntax.kind()) {
12282 Some(Self { syntax })
12283 } else {
12284 None
12285 }
12286 }
12287 #[inline]
12288 fn syntax(&self) -> &SyntaxNode {
12289 &self.syntax
12290 }
12291}
12292impl AstNode for CreateGroup {
12293 #[inline]
12294 fn can_cast(kind: SyntaxKind) -> bool {
12295 kind == SyntaxKind::CREATE_GROUP
12296 }
12297 #[inline]
12298 fn cast(syntax: SyntaxNode) -> Option<Self> {
12299 if Self::can_cast(syntax.kind()) {
12300 Some(Self { syntax })
12301 } else {
12302 None
12303 }
12304 }
12305 #[inline]
12306 fn syntax(&self) -> &SyntaxNode {
12307 &self.syntax
12308 }
12309}
12310impl AstNode for CreateIndex {
12311 #[inline]
12312 fn can_cast(kind: SyntaxKind) -> bool {
12313 kind == SyntaxKind::CREATE_INDEX
12314 }
12315 #[inline]
12316 fn cast(syntax: SyntaxNode) -> Option<Self> {
12317 if Self::can_cast(syntax.kind()) {
12318 Some(Self { syntax })
12319 } else {
12320 None
12321 }
12322 }
12323 #[inline]
12324 fn syntax(&self) -> &SyntaxNode {
12325 &self.syntax
12326 }
12327}
12328impl AstNode for CreateLanguage {
12329 #[inline]
12330 fn can_cast(kind: SyntaxKind) -> bool {
12331 kind == SyntaxKind::CREATE_LANGUAGE
12332 }
12333 #[inline]
12334 fn cast(syntax: SyntaxNode) -> Option<Self> {
12335 if Self::can_cast(syntax.kind()) {
12336 Some(Self { syntax })
12337 } else {
12338 None
12339 }
12340 }
12341 #[inline]
12342 fn syntax(&self) -> &SyntaxNode {
12343 &self.syntax
12344 }
12345}
12346impl AstNode for CreateMaterializedView {
12347 #[inline]
12348 fn can_cast(kind: SyntaxKind) -> bool {
12349 kind == SyntaxKind::CREATE_MATERIALIZED_VIEW
12350 }
12351 #[inline]
12352 fn cast(syntax: SyntaxNode) -> Option<Self> {
12353 if Self::can_cast(syntax.kind()) {
12354 Some(Self { syntax })
12355 } else {
12356 None
12357 }
12358 }
12359 #[inline]
12360 fn syntax(&self) -> &SyntaxNode {
12361 &self.syntax
12362 }
12363}
12364impl AstNode for CreateOperator {
12365 #[inline]
12366 fn can_cast(kind: SyntaxKind) -> bool {
12367 kind == SyntaxKind::CREATE_OPERATOR
12368 }
12369 #[inline]
12370 fn cast(syntax: SyntaxNode) -> Option<Self> {
12371 if Self::can_cast(syntax.kind()) {
12372 Some(Self { syntax })
12373 } else {
12374 None
12375 }
12376 }
12377 #[inline]
12378 fn syntax(&self) -> &SyntaxNode {
12379 &self.syntax
12380 }
12381}
12382impl AstNode for CreateOperatorClass {
12383 #[inline]
12384 fn can_cast(kind: SyntaxKind) -> bool {
12385 kind == SyntaxKind::CREATE_OPERATOR_CLASS
12386 }
12387 #[inline]
12388 fn cast(syntax: SyntaxNode) -> Option<Self> {
12389 if Self::can_cast(syntax.kind()) {
12390 Some(Self { syntax })
12391 } else {
12392 None
12393 }
12394 }
12395 #[inline]
12396 fn syntax(&self) -> &SyntaxNode {
12397 &self.syntax
12398 }
12399}
12400impl AstNode for CreateOperatorFamily {
12401 #[inline]
12402 fn can_cast(kind: SyntaxKind) -> bool {
12403 kind == SyntaxKind::CREATE_OPERATOR_FAMILY
12404 }
12405 #[inline]
12406 fn cast(syntax: SyntaxNode) -> Option<Self> {
12407 if Self::can_cast(syntax.kind()) {
12408 Some(Self { syntax })
12409 } else {
12410 None
12411 }
12412 }
12413 #[inline]
12414 fn syntax(&self) -> &SyntaxNode {
12415 &self.syntax
12416 }
12417}
12418impl AstNode for CreatePolicy {
12419 #[inline]
12420 fn can_cast(kind: SyntaxKind) -> bool {
12421 kind == SyntaxKind::CREATE_POLICY
12422 }
12423 #[inline]
12424 fn cast(syntax: SyntaxNode) -> Option<Self> {
12425 if Self::can_cast(syntax.kind()) {
12426 Some(Self { syntax })
12427 } else {
12428 None
12429 }
12430 }
12431 #[inline]
12432 fn syntax(&self) -> &SyntaxNode {
12433 &self.syntax
12434 }
12435}
12436impl AstNode for CreateProcedure {
12437 #[inline]
12438 fn can_cast(kind: SyntaxKind) -> bool {
12439 kind == SyntaxKind::CREATE_PROCEDURE
12440 }
12441 #[inline]
12442 fn cast(syntax: SyntaxNode) -> Option<Self> {
12443 if Self::can_cast(syntax.kind()) {
12444 Some(Self { syntax })
12445 } else {
12446 None
12447 }
12448 }
12449 #[inline]
12450 fn syntax(&self) -> &SyntaxNode {
12451 &self.syntax
12452 }
12453}
12454impl AstNode for CreatePublication {
12455 #[inline]
12456 fn can_cast(kind: SyntaxKind) -> bool {
12457 kind == SyntaxKind::CREATE_PUBLICATION
12458 }
12459 #[inline]
12460 fn cast(syntax: SyntaxNode) -> Option<Self> {
12461 if Self::can_cast(syntax.kind()) {
12462 Some(Self { syntax })
12463 } else {
12464 None
12465 }
12466 }
12467 #[inline]
12468 fn syntax(&self) -> &SyntaxNode {
12469 &self.syntax
12470 }
12471}
12472impl AstNode for CreateRole {
12473 #[inline]
12474 fn can_cast(kind: SyntaxKind) -> bool {
12475 kind == SyntaxKind::CREATE_ROLE
12476 }
12477 #[inline]
12478 fn cast(syntax: SyntaxNode) -> Option<Self> {
12479 if Self::can_cast(syntax.kind()) {
12480 Some(Self { syntax })
12481 } else {
12482 None
12483 }
12484 }
12485 #[inline]
12486 fn syntax(&self) -> &SyntaxNode {
12487 &self.syntax
12488 }
12489}
12490impl AstNode for CreateRule {
12491 #[inline]
12492 fn can_cast(kind: SyntaxKind) -> bool {
12493 kind == SyntaxKind::CREATE_RULE
12494 }
12495 #[inline]
12496 fn cast(syntax: SyntaxNode) -> Option<Self> {
12497 if Self::can_cast(syntax.kind()) {
12498 Some(Self { syntax })
12499 } else {
12500 None
12501 }
12502 }
12503 #[inline]
12504 fn syntax(&self) -> &SyntaxNode {
12505 &self.syntax
12506 }
12507}
12508impl AstNode for CreateSchema {
12509 #[inline]
12510 fn can_cast(kind: SyntaxKind) -> bool {
12511 kind == SyntaxKind::CREATE_SCHEMA
12512 }
12513 #[inline]
12514 fn cast(syntax: SyntaxNode) -> Option<Self> {
12515 if Self::can_cast(syntax.kind()) {
12516 Some(Self { syntax })
12517 } else {
12518 None
12519 }
12520 }
12521 #[inline]
12522 fn syntax(&self) -> &SyntaxNode {
12523 &self.syntax
12524 }
12525}
12526impl AstNode for CreateSequence {
12527 #[inline]
12528 fn can_cast(kind: SyntaxKind) -> bool {
12529 kind == SyntaxKind::CREATE_SEQUENCE
12530 }
12531 #[inline]
12532 fn cast(syntax: SyntaxNode) -> Option<Self> {
12533 if Self::can_cast(syntax.kind()) {
12534 Some(Self { syntax })
12535 } else {
12536 None
12537 }
12538 }
12539 #[inline]
12540 fn syntax(&self) -> &SyntaxNode {
12541 &self.syntax
12542 }
12543}
12544impl AstNode for CreateServer {
12545 #[inline]
12546 fn can_cast(kind: SyntaxKind) -> bool {
12547 kind == SyntaxKind::CREATE_SERVER
12548 }
12549 #[inline]
12550 fn cast(syntax: SyntaxNode) -> Option<Self> {
12551 if Self::can_cast(syntax.kind()) {
12552 Some(Self { syntax })
12553 } else {
12554 None
12555 }
12556 }
12557 #[inline]
12558 fn syntax(&self) -> &SyntaxNode {
12559 &self.syntax
12560 }
12561}
12562impl AstNode for CreateStatistics {
12563 #[inline]
12564 fn can_cast(kind: SyntaxKind) -> bool {
12565 kind == SyntaxKind::CREATE_STATISTICS
12566 }
12567 #[inline]
12568 fn cast(syntax: SyntaxNode) -> Option<Self> {
12569 if Self::can_cast(syntax.kind()) {
12570 Some(Self { syntax })
12571 } else {
12572 None
12573 }
12574 }
12575 #[inline]
12576 fn syntax(&self) -> &SyntaxNode {
12577 &self.syntax
12578 }
12579}
12580impl AstNode for CreateSubscription {
12581 #[inline]
12582 fn can_cast(kind: SyntaxKind) -> bool {
12583 kind == SyntaxKind::CREATE_SUBSCRIPTION
12584 }
12585 #[inline]
12586 fn cast(syntax: SyntaxNode) -> Option<Self> {
12587 if Self::can_cast(syntax.kind()) {
12588 Some(Self { syntax })
12589 } else {
12590 None
12591 }
12592 }
12593 #[inline]
12594 fn syntax(&self) -> &SyntaxNode {
12595 &self.syntax
12596 }
12597}
12598impl AstNode for CreateTable {
12599 #[inline]
12600 fn can_cast(kind: SyntaxKind) -> bool {
12601 kind == SyntaxKind::CREATE_TABLE
12602 }
12603 #[inline]
12604 fn cast(syntax: SyntaxNode) -> Option<Self> {
12605 if Self::can_cast(syntax.kind()) {
12606 Some(Self { syntax })
12607 } else {
12608 None
12609 }
12610 }
12611 #[inline]
12612 fn syntax(&self) -> &SyntaxNode {
12613 &self.syntax
12614 }
12615}
12616impl AstNode for CreateTableAs {
12617 #[inline]
12618 fn can_cast(kind: SyntaxKind) -> bool {
12619 kind == SyntaxKind::CREATE_TABLE_AS
12620 }
12621 #[inline]
12622 fn cast(syntax: SyntaxNode) -> Option<Self> {
12623 if Self::can_cast(syntax.kind()) {
12624 Some(Self { syntax })
12625 } else {
12626 None
12627 }
12628 }
12629 #[inline]
12630 fn syntax(&self) -> &SyntaxNode {
12631 &self.syntax
12632 }
12633}
12634impl AstNode for CreateTablespace {
12635 #[inline]
12636 fn can_cast(kind: SyntaxKind) -> bool {
12637 kind == SyntaxKind::CREATE_TABLESPACE
12638 }
12639 #[inline]
12640 fn cast(syntax: SyntaxNode) -> Option<Self> {
12641 if Self::can_cast(syntax.kind()) {
12642 Some(Self { syntax })
12643 } else {
12644 None
12645 }
12646 }
12647 #[inline]
12648 fn syntax(&self) -> &SyntaxNode {
12649 &self.syntax
12650 }
12651}
12652impl AstNode for CreateTextSearchConfiguration {
12653 #[inline]
12654 fn can_cast(kind: SyntaxKind) -> bool {
12655 kind == SyntaxKind::CREATE_TEXT_SEARCH_CONFIGURATION
12656 }
12657 #[inline]
12658 fn cast(syntax: SyntaxNode) -> Option<Self> {
12659 if Self::can_cast(syntax.kind()) {
12660 Some(Self { syntax })
12661 } else {
12662 None
12663 }
12664 }
12665 #[inline]
12666 fn syntax(&self) -> &SyntaxNode {
12667 &self.syntax
12668 }
12669}
12670impl AstNode for CreateTextSearchDictionary {
12671 #[inline]
12672 fn can_cast(kind: SyntaxKind) -> bool {
12673 kind == SyntaxKind::CREATE_TEXT_SEARCH_DICTIONARY
12674 }
12675 #[inline]
12676 fn cast(syntax: SyntaxNode) -> Option<Self> {
12677 if Self::can_cast(syntax.kind()) {
12678 Some(Self { syntax })
12679 } else {
12680 None
12681 }
12682 }
12683 #[inline]
12684 fn syntax(&self) -> &SyntaxNode {
12685 &self.syntax
12686 }
12687}
12688impl AstNode for CreateTextSearchParser {
12689 #[inline]
12690 fn can_cast(kind: SyntaxKind) -> bool {
12691 kind == SyntaxKind::CREATE_TEXT_SEARCH_PARSER
12692 }
12693 #[inline]
12694 fn cast(syntax: SyntaxNode) -> Option<Self> {
12695 if Self::can_cast(syntax.kind()) {
12696 Some(Self { syntax })
12697 } else {
12698 None
12699 }
12700 }
12701 #[inline]
12702 fn syntax(&self) -> &SyntaxNode {
12703 &self.syntax
12704 }
12705}
12706impl AstNode for CreateTextSearchTemplate {
12707 #[inline]
12708 fn can_cast(kind: SyntaxKind) -> bool {
12709 kind == SyntaxKind::CREATE_TEXT_SEARCH_TEMPLATE
12710 }
12711 #[inline]
12712 fn cast(syntax: SyntaxNode) -> Option<Self> {
12713 if Self::can_cast(syntax.kind()) {
12714 Some(Self { syntax })
12715 } else {
12716 None
12717 }
12718 }
12719 #[inline]
12720 fn syntax(&self) -> &SyntaxNode {
12721 &self.syntax
12722 }
12723}
12724impl AstNode for CreateTransform {
12725 #[inline]
12726 fn can_cast(kind: SyntaxKind) -> bool {
12727 kind == SyntaxKind::CREATE_TRANSFORM
12728 }
12729 #[inline]
12730 fn cast(syntax: SyntaxNode) -> Option<Self> {
12731 if Self::can_cast(syntax.kind()) {
12732 Some(Self { syntax })
12733 } else {
12734 None
12735 }
12736 }
12737 #[inline]
12738 fn syntax(&self) -> &SyntaxNode {
12739 &self.syntax
12740 }
12741}
12742impl AstNode for CreateTrigger {
12743 #[inline]
12744 fn can_cast(kind: SyntaxKind) -> bool {
12745 kind == SyntaxKind::CREATE_TRIGGER
12746 }
12747 #[inline]
12748 fn cast(syntax: SyntaxNode) -> Option<Self> {
12749 if Self::can_cast(syntax.kind()) {
12750 Some(Self { syntax })
12751 } else {
12752 None
12753 }
12754 }
12755 #[inline]
12756 fn syntax(&self) -> &SyntaxNode {
12757 &self.syntax
12758 }
12759}
12760impl AstNode for CreateType {
12761 #[inline]
12762 fn can_cast(kind: SyntaxKind) -> bool {
12763 kind == SyntaxKind::CREATE_TYPE
12764 }
12765 #[inline]
12766 fn cast(syntax: SyntaxNode) -> Option<Self> {
12767 if Self::can_cast(syntax.kind()) {
12768 Some(Self { syntax })
12769 } else {
12770 None
12771 }
12772 }
12773 #[inline]
12774 fn syntax(&self) -> &SyntaxNode {
12775 &self.syntax
12776 }
12777}
12778impl AstNode for CreateUser {
12779 #[inline]
12780 fn can_cast(kind: SyntaxKind) -> bool {
12781 kind == SyntaxKind::CREATE_USER
12782 }
12783 #[inline]
12784 fn cast(syntax: SyntaxNode) -> Option<Self> {
12785 if Self::can_cast(syntax.kind()) {
12786 Some(Self { syntax })
12787 } else {
12788 None
12789 }
12790 }
12791 #[inline]
12792 fn syntax(&self) -> &SyntaxNode {
12793 &self.syntax
12794 }
12795}
12796impl AstNode for CreateUserMapping {
12797 #[inline]
12798 fn can_cast(kind: SyntaxKind) -> bool {
12799 kind == SyntaxKind::CREATE_USER_MAPPING
12800 }
12801 #[inline]
12802 fn cast(syntax: SyntaxNode) -> Option<Self> {
12803 if Self::can_cast(syntax.kind()) {
12804 Some(Self { syntax })
12805 } else {
12806 None
12807 }
12808 }
12809 #[inline]
12810 fn syntax(&self) -> &SyntaxNode {
12811 &self.syntax
12812 }
12813}
12814impl AstNode for CreateView {
12815 #[inline]
12816 fn can_cast(kind: SyntaxKind) -> bool {
12817 kind == SyntaxKind::CREATE_VIEW
12818 }
12819 #[inline]
12820 fn cast(syntax: SyntaxNode) -> Option<Self> {
12821 if Self::can_cast(syntax.kind()) {
12822 Some(Self { syntax })
12823 } else {
12824 None
12825 }
12826 }
12827 #[inline]
12828 fn syntax(&self) -> &SyntaxNode {
12829 &self.syntax
12830 }
12831}
12832impl AstNode for CustomOp {
12833 #[inline]
12834 fn can_cast(kind: SyntaxKind) -> bool {
12835 kind == SyntaxKind::CUSTOM_OP
12836 }
12837 #[inline]
12838 fn cast(syntax: SyntaxNode) -> Option<Self> {
12839 if Self::can_cast(syntax.kind()) {
12840 Some(Self { syntax })
12841 } else {
12842 None
12843 }
12844 }
12845 #[inline]
12846 fn syntax(&self) -> &SyntaxNode {
12847 &self.syntax
12848 }
12849}
12850impl AstNode for Deallocate {
12851 #[inline]
12852 fn can_cast(kind: SyntaxKind) -> bool {
12853 kind == SyntaxKind::DEALLOCATE
12854 }
12855 #[inline]
12856 fn cast(syntax: SyntaxNode) -> Option<Self> {
12857 if Self::can_cast(syntax.kind()) {
12858 Some(Self { syntax })
12859 } else {
12860 None
12861 }
12862 }
12863 #[inline]
12864 fn syntax(&self) -> &SyntaxNode {
12865 &self.syntax
12866 }
12867}
12868impl AstNode for Declare {
12869 #[inline]
12870 fn can_cast(kind: SyntaxKind) -> bool {
12871 kind == SyntaxKind::DECLARE
12872 }
12873 #[inline]
12874 fn cast(syntax: SyntaxNode) -> Option<Self> {
12875 if Self::can_cast(syntax.kind()) {
12876 Some(Self { syntax })
12877 } else {
12878 None
12879 }
12880 }
12881 #[inline]
12882 fn syntax(&self) -> &SyntaxNode {
12883 &self.syntax
12884 }
12885}
12886impl AstNode for DefaultConstraint {
12887 #[inline]
12888 fn can_cast(kind: SyntaxKind) -> bool {
12889 kind == SyntaxKind::DEFAULT_CONSTRAINT
12890 }
12891 #[inline]
12892 fn cast(syntax: SyntaxNode) -> Option<Self> {
12893 if Self::can_cast(syntax.kind()) {
12894 Some(Self { syntax })
12895 } else {
12896 None
12897 }
12898 }
12899 #[inline]
12900 fn syntax(&self) -> &SyntaxNode {
12901 &self.syntax
12902 }
12903}
12904impl AstNode for Deferrable {
12905 #[inline]
12906 fn can_cast(kind: SyntaxKind) -> bool {
12907 kind == SyntaxKind::DEFERRABLE
12908 }
12909 #[inline]
12910 fn cast(syntax: SyntaxNode) -> Option<Self> {
12911 if Self::can_cast(syntax.kind()) {
12912 Some(Self { syntax })
12913 } else {
12914 None
12915 }
12916 }
12917 #[inline]
12918 fn syntax(&self) -> &SyntaxNode {
12919 &self.syntax
12920 }
12921}
12922impl AstNode for DeferrableConstraintOption {
12923 #[inline]
12924 fn can_cast(kind: SyntaxKind) -> bool {
12925 kind == SyntaxKind::DEFERRABLE_CONSTRAINT_OPTION
12926 }
12927 #[inline]
12928 fn cast(syntax: SyntaxNode) -> Option<Self> {
12929 if Self::can_cast(syntax.kind()) {
12930 Some(Self { syntax })
12931 } else {
12932 None
12933 }
12934 }
12935 #[inline]
12936 fn syntax(&self) -> &SyntaxNode {
12937 &self.syntax
12938 }
12939}
12940impl AstNode for Delete {
12941 #[inline]
12942 fn can_cast(kind: SyntaxKind) -> bool {
12943 kind == SyntaxKind::DELETE
12944 }
12945 #[inline]
12946 fn cast(syntax: SyntaxNode) -> Option<Self> {
12947 if Self::can_cast(syntax.kind()) {
12948 Some(Self { syntax })
12949 } else {
12950 None
12951 }
12952 }
12953 #[inline]
12954 fn syntax(&self) -> &SyntaxNode {
12955 &self.syntax
12956 }
12957}
12958impl AstNode for DeleteRows {
12959 #[inline]
12960 fn can_cast(kind: SyntaxKind) -> bool {
12961 kind == SyntaxKind::DELETE_ROWS
12962 }
12963 #[inline]
12964 fn cast(syntax: SyntaxNode) -> Option<Self> {
12965 if Self::can_cast(syntax.kind()) {
12966 Some(Self { syntax })
12967 } else {
12968 None
12969 }
12970 }
12971 #[inline]
12972 fn syntax(&self) -> &SyntaxNode {
12973 &self.syntax
12974 }
12975}
12976impl AstNode for DetachPartition {
12977 #[inline]
12978 fn can_cast(kind: SyntaxKind) -> bool {
12979 kind == SyntaxKind::DETACH_PARTITION
12980 }
12981 #[inline]
12982 fn cast(syntax: SyntaxNode) -> Option<Self> {
12983 if Self::can_cast(syntax.kind()) {
12984 Some(Self { syntax })
12985 } else {
12986 None
12987 }
12988 }
12989 #[inline]
12990 fn syntax(&self) -> &SyntaxNode {
12991 &self.syntax
12992 }
12993}
12994impl AstNode for DisableRls {
12995 #[inline]
12996 fn can_cast(kind: SyntaxKind) -> bool {
12997 kind == SyntaxKind::DISABLE_RLS
12998 }
12999 #[inline]
13000 fn cast(syntax: SyntaxNode) -> Option<Self> {
13001 if Self::can_cast(syntax.kind()) {
13002 Some(Self { syntax })
13003 } else {
13004 None
13005 }
13006 }
13007 #[inline]
13008 fn syntax(&self) -> &SyntaxNode {
13009 &self.syntax
13010 }
13011}
13012impl AstNode for DisableRule {
13013 #[inline]
13014 fn can_cast(kind: SyntaxKind) -> bool {
13015 kind == SyntaxKind::DISABLE_RULE
13016 }
13017 #[inline]
13018 fn cast(syntax: SyntaxNode) -> Option<Self> {
13019 if Self::can_cast(syntax.kind()) {
13020 Some(Self { syntax })
13021 } else {
13022 None
13023 }
13024 }
13025 #[inline]
13026 fn syntax(&self) -> &SyntaxNode {
13027 &self.syntax
13028 }
13029}
13030impl AstNode for DisableTrigger {
13031 #[inline]
13032 fn can_cast(kind: SyntaxKind) -> bool {
13033 kind == SyntaxKind::DISABLE_TRIGGER
13034 }
13035 #[inline]
13036 fn cast(syntax: SyntaxNode) -> Option<Self> {
13037 if Self::can_cast(syntax.kind()) {
13038 Some(Self { syntax })
13039 } else {
13040 None
13041 }
13042 }
13043 #[inline]
13044 fn syntax(&self) -> &SyntaxNode {
13045 &self.syntax
13046 }
13047}
13048impl AstNode for Discard {
13049 #[inline]
13050 fn can_cast(kind: SyntaxKind) -> bool {
13051 kind == SyntaxKind::DISCARD
13052 }
13053 #[inline]
13054 fn cast(syntax: SyntaxNode) -> Option<Self> {
13055 if Self::can_cast(syntax.kind()) {
13056 Some(Self { syntax })
13057 } else {
13058 None
13059 }
13060 }
13061 #[inline]
13062 fn syntax(&self) -> &SyntaxNode {
13063 &self.syntax
13064 }
13065}
13066impl AstNode for DistinctClause {
13067 #[inline]
13068 fn can_cast(kind: SyntaxKind) -> bool {
13069 kind == SyntaxKind::DISTINCT_CLAUSE
13070 }
13071 #[inline]
13072 fn cast(syntax: SyntaxNode) -> Option<Self> {
13073 if Self::can_cast(syntax.kind()) {
13074 Some(Self { syntax })
13075 } else {
13076 None
13077 }
13078 }
13079 #[inline]
13080 fn syntax(&self) -> &SyntaxNode {
13081 &self.syntax
13082 }
13083}
13084impl AstNode for Do {
13085 #[inline]
13086 fn can_cast(kind: SyntaxKind) -> bool {
13087 kind == SyntaxKind::DO
13088 }
13089 #[inline]
13090 fn cast(syntax: SyntaxNode) -> Option<Self> {
13091 if Self::can_cast(syntax.kind()) {
13092 Some(Self { syntax })
13093 } else {
13094 None
13095 }
13096 }
13097 #[inline]
13098 fn syntax(&self) -> &SyntaxNode {
13099 &self.syntax
13100 }
13101}
13102impl AstNode for DoubleType {
13103 #[inline]
13104 fn can_cast(kind: SyntaxKind) -> bool {
13105 kind == SyntaxKind::DOUBLE_TYPE
13106 }
13107 #[inline]
13108 fn cast(syntax: SyntaxNode) -> Option<Self> {
13109 if Self::can_cast(syntax.kind()) {
13110 Some(Self { syntax })
13111 } else {
13112 None
13113 }
13114 }
13115 #[inline]
13116 fn syntax(&self) -> &SyntaxNode {
13117 &self.syntax
13118 }
13119}
13120impl AstNode for Drop {
13121 #[inline]
13122 fn can_cast(kind: SyntaxKind) -> bool {
13123 kind == SyntaxKind::DROP
13124 }
13125 #[inline]
13126 fn cast(syntax: SyntaxNode) -> Option<Self> {
13127 if Self::can_cast(syntax.kind()) {
13128 Some(Self { syntax })
13129 } else {
13130 None
13131 }
13132 }
13133 #[inline]
13134 fn syntax(&self) -> &SyntaxNode {
13135 &self.syntax
13136 }
13137}
13138impl AstNode for DropAccessMethod {
13139 #[inline]
13140 fn can_cast(kind: SyntaxKind) -> bool {
13141 kind == SyntaxKind::DROP_ACCESS_METHOD
13142 }
13143 #[inline]
13144 fn cast(syntax: SyntaxNode) -> Option<Self> {
13145 if Self::can_cast(syntax.kind()) {
13146 Some(Self { syntax })
13147 } else {
13148 None
13149 }
13150 }
13151 #[inline]
13152 fn syntax(&self) -> &SyntaxNode {
13153 &self.syntax
13154 }
13155}
13156impl AstNode for DropAggregate {
13157 #[inline]
13158 fn can_cast(kind: SyntaxKind) -> bool {
13159 kind == SyntaxKind::DROP_AGGREGATE
13160 }
13161 #[inline]
13162 fn cast(syntax: SyntaxNode) -> Option<Self> {
13163 if Self::can_cast(syntax.kind()) {
13164 Some(Self { syntax })
13165 } else {
13166 None
13167 }
13168 }
13169 #[inline]
13170 fn syntax(&self) -> &SyntaxNode {
13171 &self.syntax
13172 }
13173}
13174impl AstNode for DropCast {
13175 #[inline]
13176 fn can_cast(kind: SyntaxKind) -> bool {
13177 kind == SyntaxKind::DROP_CAST
13178 }
13179 #[inline]
13180 fn cast(syntax: SyntaxNode) -> Option<Self> {
13181 if Self::can_cast(syntax.kind()) {
13182 Some(Self { syntax })
13183 } else {
13184 None
13185 }
13186 }
13187 #[inline]
13188 fn syntax(&self) -> &SyntaxNode {
13189 &self.syntax
13190 }
13191}
13192impl AstNode for DropCollation {
13193 #[inline]
13194 fn can_cast(kind: SyntaxKind) -> bool {
13195 kind == SyntaxKind::DROP_COLLATION
13196 }
13197 #[inline]
13198 fn cast(syntax: SyntaxNode) -> Option<Self> {
13199 if Self::can_cast(syntax.kind()) {
13200 Some(Self { syntax })
13201 } else {
13202 None
13203 }
13204 }
13205 #[inline]
13206 fn syntax(&self) -> &SyntaxNode {
13207 &self.syntax
13208 }
13209}
13210impl AstNode for DropColumn {
13211 #[inline]
13212 fn can_cast(kind: SyntaxKind) -> bool {
13213 kind == SyntaxKind::DROP_COLUMN
13214 }
13215 #[inline]
13216 fn cast(syntax: SyntaxNode) -> Option<Self> {
13217 if Self::can_cast(syntax.kind()) {
13218 Some(Self { syntax })
13219 } else {
13220 None
13221 }
13222 }
13223 #[inline]
13224 fn syntax(&self) -> &SyntaxNode {
13225 &self.syntax
13226 }
13227}
13228impl AstNode for DropConstraint {
13229 #[inline]
13230 fn can_cast(kind: SyntaxKind) -> bool {
13231 kind == SyntaxKind::DROP_CONSTRAINT
13232 }
13233 #[inline]
13234 fn cast(syntax: SyntaxNode) -> Option<Self> {
13235 if Self::can_cast(syntax.kind()) {
13236 Some(Self { syntax })
13237 } else {
13238 None
13239 }
13240 }
13241 #[inline]
13242 fn syntax(&self) -> &SyntaxNode {
13243 &self.syntax
13244 }
13245}
13246impl AstNode for DropConversion {
13247 #[inline]
13248 fn can_cast(kind: SyntaxKind) -> bool {
13249 kind == SyntaxKind::DROP_CONVERSION
13250 }
13251 #[inline]
13252 fn cast(syntax: SyntaxNode) -> Option<Self> {
13253 if Self::can_cast(syntax.kind()) {
13254 Some(Self { syntax })
13255 } else {
13256 None
13257 }
13258 }
13259 #[inline]
13260 fn syntax(&self) -> &SyntaxNode {
13261 &self.syntax
13262 }
13263}
13264impl AstNode for DropDatabase {
13265 #[inline]
13266 fn can_cast(kind: SyntaxKind) -> bool {
13267 kind == SyntaxKind::DROP_DATABASE
13268 }
13269 #[inline]
13270 fn cast(syntax: SyntaxNode) -> Option<Self> {
13271 if Self::can_cast(syntax.kind()) {
13272 Some(Self { syntax })
13273 } else {
13274 None
13275 }
13276 }
13277 #[inline]
13278 fn syntax(&self) -> &SyntaxNode {
13279 &self.syntax
13280 }
13281}
13282impl AstNode for DropDefault {
13283 #[inline]
13284 fn can_cast(kind: SyntaxKind) -> bool {
13285 kind == SyntaxKind::DROP_DEFAULT
13286 }
13287 #[inline]
13288 fn cast(syntax: SyntaxNode) -> Option<Self> {
13289 if Self::can_cast(syntax.kind()) {
13290 Some(Self { syntax })
13291 } else {
13292 None
13293 }
13294 }
13295 #[inline]
13296 fn syntax(&self) -> &SyntaxNode {
13297 &self.syntax
13298 }
13299}
13300impl AstNode for DropDomain {
13301 #[inline]
13302 fn can_cast(kind: SyntaxKind) -> bool {
13303 kind == SyntaxKind::DROP_DOMAIN
13304 }
13305 #[inline]
13306 fn cast(syntax: SyntaxNode) -> Option<Self> {
13307 if Self::can_cast(syntax.kind()) {
13308 Some(Self { syntax })
13309 } else {
13310 None
13311 }
13312 }
13313 #[inline]
13314 fn syntax(&self) -> &SyntaxNode {
13315 &self.syntax
13316 }
13317}
13318impl AstNode for DropEventTrigger {
13319 #[inline]
13320 fn can_cast(kind: SyntaxKind) -> bool {
13321 kind == SyntaxKind::DROP_EVENT_TRIGGER
13322 }
13323 #[inline]
13324 fn cast(syntax: SyntaxNode) -> Option<Self> {
13325 if Self::can_cast(syntax.kind()) {
13326 Some(Self { syntax })
13327 } else {
13328 None
13329 }
13330 }
13331 #[inline]
13332 fn syntax(&self) -> &SyntaxNode {
13333 &self.syntax
13334 }
13335}
13336impl AstNode for DropExpression {
13337 #[inline]
13338 fn can_cast(kind: SyntaxKind) -> bool {
13339 kind == SyntaxKind::DROP_EXPRESSION
13340 }
13341 #[inline]
13342 fn cast(syntax: SyntaxNode) -> Option<Self> {
13343 if Self::can_cast(syntax.kind()) {
13344 Some(Self { syntax })
13345 } else {
13346 None
13347 }
13348 }
13349 #[inline]
13350 fn syntax(&self) -> &SyntaxNode {
13351 &self.syntax
13352 }
13353}
13354impl AstNode for DropExtension {
13355 #[inline]
13356 fn can_cast(kind: SyntaxKind) -> bool {
13357 kind == SyntaxKind::DROP_EXTENSION
13358 }
13359 #[inline]
13360 fn cast(syntax: SyntaxNode) -> Option<Self> {
13361 if Self::can_cast(syntax.kind()) {
13362 Some(Self { syntax })
13363 } else {
13364 None
13365 }
13366 }
13367 #[inline]
13368 fn syntax(&self) -> &SyntaxNode {
13369 &self.syntax
13370 }
13371}
13372impl AstNode for DropForeignDataWrapper {
13373 #[inline]
13374 fn can_cast(kind: SyntaxKind) -> bool {
13375 kind == SyntaxKind::DROP_FOREIGN_DATA_WRAPPER
13376 }
13377 #[inline]
13378 fn cast(syntax: SyntaxNode) -> Option<Self> {
13379 if Self::can_cast(syntax.kind()) {
13380 Some(Self { syntax })
13381 } else {
13382 None
13383 }
13384 }
13385 #[inline]
13386 fn syntax(&self) -> &SyntaxNode {
13387 &self.syntax
13388 }
13389}
13390impl AstNode for DropForeignTable {
13391 #[inline]
13392 fn can_cast(kind: SyntaxKind) -> bool {
13393 kind == SyntaxKind::DROP_FOREIGN_TABLE
13394 }
13395 #[inline]
13396 fn cast(syntax: SyntaxNode) -> Option<Self> {
13397 if Self::can_cast(syntax.kind()) {
13398 Some(Self { syntax })
13399 } else {
13400 None
13401 }
13402 }
13403 #[inline]
13404 fn syntax(&self) -> &SyntaxNode {
13405 &self.syntax
13406 }
13407}
13408impl AstNode for DropFunction {
13409 #[inline]
13410 fn can_cast(kind: SyntaxKind) -> bool {
13411 kind == SyntaxKind::DROP_FUNCTION
13412 }
13413 #[inline]
13414 fn cast(syntax: SyntaxNode) -> Option<Self> {
13415 if Self::can_cast(syntax.kind()) {
13416 Some(Self { syntax })
13417 } else {
13418 None
13419 }
13420 }
13421 #[inline]
13422 fn syntax(&self) -> &SyntaxNode {
13423 &self.syntax
13424 }
13425}
13426impl AstNode for DropGroup {
13427 #[inline]
13428 fn can_cast(kind: SyntaxKind) -> bool {
13429 kind == SyntaxKind::DROP_GROUP
13430 }
13431 #[inline]
13432 fn cast(syntax: SyntaxNode) -> Option<Self> {
13433 if Self::can_cast(syntax.kind()) {
13434 Some(Self { syntax })
13435 } else {
13436 None
13437 }
13438 }
13439 #[inline]
13440 fn syntax(&self) -> &SyntaxNode {
13441 &self.syntax
13442 }
13443}
13444impl AstNode for DropIdentity {
13445 #[inline]
13446 fn can_cast(kind: SyntaxKind) -> bool {
13447 kind == SyntaxKind::DROP_IDENTITY
13448 }
13449 #[inline]
13450 fn cast(syntax: SyntaxNode) -> Option<Self> {
13451 if Self::can_cast(syntax.kind()) {
13452 Some(Self { syntax })
13453 } else {
13454 None
13455 }
13456 }
13457 #[inline]
13458 fn syntax(&self) -> &SyntaxNode {
13459 &self.syntax
13460 }
13461}
13462impl AstNode for DropIndex {
13463 #[inline]
13464 fn can_cast(kind: SyntaxKind) -> bool {
13465 kind == SyntaxKind::DROP_INDEX
13466 }
13467 #[inline]
13468 fn cast(syntax: SyntaxNode) -> Option<Self> {
13469 if Self::can_cast(syntax.kind()) {
13470 Some(Self { syntax })
13471 } else {
13472 None
13473 }
13474 }
13475 #[inline]
13476 fn syntax(&self) -> &SyntaxNode {
13477 &self.syntax
13478 }
13479}
13480impl AstNode for DropLanguage {
13481 #[inline]
13482 fn can_cast(kind: SyntaxKind) -> bool {
13483 kind == SyntaxKind::DROP_LANGUAGE
13484 }
13485 #[inline]
13486 fn cast(syntax: SyntaxNode) -> Option<Self> {
13487 if Self::can_cast(syntax.kind()) {
13488 Some(Self { syntax })
13489 } else {
13490 None
13491 }
13492 }
13493 #[inline]
13494 fn syntax(&self) -> &SyntaxNode {
13495 &self.syntax
13496 }
13497}
13498impl AstNode for DropMaterializedView {
13499 #[inline]
13500 fn can_cast(kind: SyntaxKind) -> bool {
13501 kind == SyntaxKind::DROP_MATERIALIZED_VIEW
13502 }
13503 #[inline]
13504 fn cast(syntax: SyntaxNode) -> Option<Self> {
13505 if Self::can_cast(syntax.kind()) {
13506 Some(Self { syntax })
13507 } else {
13508 None
13509 }
13510 }
13511 #[inline]
13512 fn syntax(&self) -> &SyntaxNode {
13513 &self.syntax
13514 }
13515}
13516impl AstNode for DropNotNull {
13517 #[inline]
13518 fn can_cast(kind: SyntaxKind) -> bool {
13519 kind == SyntaxKind::DROP_NOT_NULL
13520 }
13521 #[inline]
13522 fn cast(syntax: SyntaxNode) -> Option<Self> {
13523 if Self::can_cast(syntax.kind()) {
13524 Some(Self { syntax })
13525 } else {
13526 None
13527 }
13528 }
13529 #[inline]
13530 fn syntax(&self) -> &SyntaxNode {
13531 &self.syntax
13532 }
13533}
13534impl AstNode for DropOperator {
13535 #[inline]
13536 fn can_cast(kind: SyntaxKind) -> bool {
13537 kind == SyntaxKind::DROP_OPERATOR
13538 }
13539 #[inline]
13540 fn cast(syntax: SyntaxNode) -> Option<Self> {
13541 if Self::can_cast(syntax.kind()) {
13542 Some(Self { syntax })
13543 } else {
13544 None
13545 }
13546 }
13547 #[inline]
13548 fn syntax(&self) -> &SyntaxNode {
13549 &self.syntax
13550 }
13551}
13552impl AstNode for DropOperatorClass {
13553 #[inline]
13554 fn can_cast(kind: SyntaxKind) -> bool {
13555 kind == SyntaxKind::DROP_OPERATOR_CLASS
13556 }
13557 #[inline]
13558 fn cast(syntax: SyntaxNode) -> Option<Self> {
13559 if Self::can_cast(syntax.kind()) {
13560 Some(Self { syntax })
13561 } else {
13562 None
13563 }
13564 }
13565 #[inline]
13566 fn syntax(&self) -> &SyntaxNode {
13567 &self.syntax
13568 }
13569}
13570impl AstNode for DropOperatorFamily {
13571 #[inline]
13572 fn can_cast(kind: SyntaxKind) -> bool {
13573 kind == SyntaxKind::DROP_OPERATOR_FAMILY
13574 }
13575 #[inline]
13576 fn cast(syntax: SyntaxNode) -> Option<Self> {
13577 if Self::can_cast(syntax.kind()) {
13578 Some(Self { syntax })
13579 } else {
13580 None
13581 }
13582 }
13583 #[inline]
13584 fn syntax(&self) -> &SyntaxNode {
13585 &self.syntax
13586 }
13587}
13588impl AstNode for DropOwned {
13589 #[inline]
13590 fn can_cast(kind: SyntaxKind) -> bool {
13591 kind == SyntaxKind::DROP_OWNED
13592 }
13593 #[inline]
13594 fn cast(syntax: SyntaxNode) -> Option<Self> {
13595 if Self::can_cast(syntax.kind()) {
13596 Some(Self { syntax })
13597 } else {
13598 None
13599 }
13600 }
13601 #[inline]
13602 fn syntax(&self) -> &SyntaxNode {
13603 &self.syntax
13604 }
13605}
13606impl AstNode for DropPolicy {
13607 #[inline]
13608 fn can_cast(kind: SyntaxKind) -> bool {
13609 kind == SyntaxKind::DROP_POLICY
13610 }
13611 #[inline]
13612 fn cast(syntax: SyntaxNode) -> Option<Self> {
13613 if Self::can_cast(syntax.kind()) {
13614 Some(Self { syntax })
13615 } else {
13616 None
13617 }
13618 }
13619 #[inline]
13620 fn syntax(&self) -> &SyntaxNode {
13621 &self.syntax
13622 }
13623}
13624impl AstNode for DropProcedure {
13625 #[inline]
13626 fn can_cast(kind: SyntaxKind) -> bool {
13627 kind == SyntaxKind::DROP_PROCEDURE
13628 }
13629 #[inline]
13630 fn cast(syntax: SyntaxNode) -> Option<Self> {
13631 if Self::can_cast(syntax.kind()) {
13632 Some(Self { syntax })
13633 } else {
13634 None
13635 }
13636 }
13637 #[inline]
13638 fn syntax(&self) -> &SyntaxNode {
13639 &self.syntax
13640 }
13641}
13642impl AstNode for DropPublication {
13643 #[inline]
13644 fn can_cast(kind: SyntaxKind) -> bool {
13645 kind == SyntaxKind::DROP_PUBLICATION
13646 }
13647 #[inline]
13648 fn cast(syntax: SyntaxNode) -> Option<Self> {
13649 if Self::can_cast(syntax.kind()) {
13650 Some(Self { syntax })
13651 } else {
13652 None
13653 }
13654 }
13655 #[inline]
13656 fn syntax(&self) -> &SyntaxNode {
13657 &self.syntax
13658 }
13659}
13660impl AstNode for DropRole {
13661 #[inline]
13662 fn can_cast(kind: SyntaxKind) -> bool {
13663 kind == SyntaxKind::DROP_ROLE
13664 }
13665 #[inline]
13666 fn cast(syntax: SyntaxNode) -> Option<Self> {
13667 if Self::can_cast(syntax.kind()) {
13668 Some(Self { syntax })
13669 } else {
13670 None
13671 }
13672 }
13673 #[inline]
13674 fn syntax(&self) -> &SyntaxNode {
13675 &self.syntax
13676 }
13677}
13678impl AstNode for DropRoutine {
13679 #[inline]
13680 fn can_cast(kind: SyntaxKind) -> bool {
13681 kind == SyntaxKind::DROP_ROUTINE
13682 }
13683 #[inline]
13684 fn cast(syntax: SyntaxNode) -> Option<Self> {
13685 if Self::can_cast(syntax.kind()) {
13686 Some(Self { syntax })
13687 } else {
13688 None
13689 }
13690 }
13691 #[inline]
13692 fn syntax(&self) -> &SyntaxNode {
13693 &self.syntax
13694 }
13695}
13696impl AstNode for DropRule {
13697 #[inline]
13698 fn can_cast(kind: SyntaxKind) -> bool {
13699 kind == SyntaxKind::DROP_RULE
13700 }
13701 #[inline]
13702 fn cast(syntax: SyntaxNode) -> Option<Self> {
13703 if Self::can_cast(syntax.kind()) {
13704 Some(Self { syntax })
13705 } else {
13706 None
13707 }
13708 }
13709 #[inline]
13710 fn syntax(&self) -> &SyntaxNode {
13711 &self.syntax
13712 }
13713}
13714impl AstNode for DropSchema {
13715 #[inline]
13716 fn can_cast(kind: SyntaxKind) -> bool {
13717 kind == SyntaxKind::DROP_SCHEMA
13718 }
13719 #[inline]
13720 fn cast(syntax: SyntaxNode) -> Option<Self> {
13721 if Self::can_cast(syntax.kind()) {
13722 Some(Self { syntax })
13723 } else {
13724 None
13725 }
13726 }
13727 #[inline]
13728 fn syntax(&self) -> &SyntaxNode {
13729 &self.syntax
13730 }
13731}
13732impl AstNode for DropSequence {
13733 #[inline]
13734 fn can_cast(kind: SyntaxKind) -> bool {
13735 kind == SyntaxKind::DROP_SEQUENCE
13736 }
13737 #[inline]
13738 fn cast(syntax: SyntaxNode) -> Option<Self> {
13739 if Self::can_cast(syntax.kind()) {
13740 Some(Self { syntax })
13741 } else {
13742 None
13743 }
13744 }
13745 #[inline]
13746 fn syntax(&self) -> &SyntaxNode {
13747 &self.syntax
13748 }
13749}
13750impl AstNode for DropServer {
13751 #[inline]
13752 fn can_cast(kind: SyntaxKind) -> bool {
13753 kind == SyntaxKind::DROP_SERVER
13754 }
13755 #[inline]
13756 fn cast(syntax: SyntaxNode) -> Option<Self> {
13757 if Self::can_cast(syntax.kind()) {
13758 Some(Self { syntax })
13759 } else {
13760 None
13761 }
13762 }
13763 #[inline]
13764 fn syntax(&self) -> &SyntaxNode {
13765 &self.syntax
13766 }
13767}
13768impl AstNode for DropStatistics {
13769 #[inline]
13770 fn can_cast(kind: SyntaxKind) -> bool {
13771 kind == SyntaxKind::DROP_STATISTICS
13772 }
13773 #[inline]
13774 fn cast(syntax: SyntaxNode) -> Option<Self> {
13775 if Self::can_cast(syntax.kind()) {
13776 Some(Self { syntax })
13777 } else {
13778 None
13779 }
13780 }
13781 #[inline]
13782 fn syntax(&self) -> &SyntaxNode {
13783 &self.syntax
13784 }
13785}
13786impl AstNode for DropSubscription {
13787 #[inline]
13788 fn can_cast(kind: SyntaxKind) -> bool {
13789 kind == SyntaxKind::DROP_SUBSCRIPTION
13790 }
13791 #[inline]
13792 fn cast(syntax: SyntaxNode) -> Option<Self> {
13793 if Self::can_cast(syntax.kind()) {
13794 Some(Self { syntax })
13795 } else {
13796 None
13797 }
13798 }
13799 #[inline]
13800 fn syntax(&self) -> &SyntaxNode {
13801 &self.syntax
13802 }
13803}
13804impl AstNode for DropTable {
13805 #[inline]
13806 fn can_cast(kind: SyntaxKind) -> bool {
13807 kind == SyntaxKind::DROP_TABLE
13808 }
13809 #[inline]
13810 fn cast(syntax: SyntaxNode) -> Option<Self> {
13811 if Self::can_cast(syntax.kind()) {
13812 Some(Self { syntax })
13813 } else {
13814 None
13815 }
13816 }
13817 #[inline]
13818 fn syntax(&self) -> &SyntaxNode {
13819 &self.syntax
13820 }
13821}
13822impl AstNode for DropTablespace {
13823 #[inline]
13824 fn can_cast(kind: SyntaxKind) -> bool {
13825 kind == SyntaxKind::DROP_TABLESPACE
13826 }
13827 #[inline]
13828 fn cast(syntax: SyntaxNode) -> Option<Self> {
13829 if Self::can_cast(syntax.kind()) {
13830 Some(Self { syntax })
13831 } else {
13832 None
13833 }
13834 }
13835 #[inline]
13836 fn syntax(&self) -> &SyntaxNode {
13837 &self.syntax
13838 }
13839}
13840impl AstNode for DropTextSearchConfig {
13841 #[inline]
13842 fn can_cast(kind: SyntaxKind) -> bool {
13843 kind == SyntaxKind::DROP_TEXT_SEARCH_CONFIG
13844 }
13845 #[inline]
13846 fn cast(syntax: SyntaxNode) -> Option<Self> {
13847 if Self::can_cast(syntax.kind()) {
13848 Some(Self { syntax })
13849 } else {
13850 None
13851 }
13852 }
13853 #[inline]
13854 fn syntax(&self) -> &SyntaxNode {
13855 &self.syntax
13856 }
13857}
13858impl AstNode for DropTextSearchDict {
13859 #[inline]
13860 fn can_cast(kind: SyntaxKind) -> bool {
13861 kind == SyntaxKind::DROP_TEXT_SEARCH_DICT
13862 }
13863 #[inline]
13864 fn cast(syntax: SyntaxNode) -> Option<Self> {
13865 if Self::can_cast(syntax.kind()) {
13866 Some(Self { syntax })
13867 } else {
13868 None
13869 }
13870 }
13871 #[inline]
13872 fn syntax(&self) -> &SyntaxNode {
13873 &self.syntax
13874 }
13875}
13876impl AstNode for DropTextSearchParser {
13877 #[inline]
13878 fn can_cast(kind: SyntaxKind) -> bool {
13879 kind == SyntaxKind::DROP_TEXT_SEARCH_PARSER
13880 }
13881 #[inline]
13882 fn cast(syntax: SyntaxNode) -> Option<Self> {
13883 if Self::can_cast(syntax.kind()) {
13884 Some(Self { syntax })
13885 } else {
13886 None
13887 }
13888 }
13889 #[inline]
13890 fn syntax(&self) -> &SyntaxNode {
13891 &self.syntax
13892 }
13893}
13894impl AstNode for DropTextSearchTemplate {
13895 #[inline]
13896 fn can_cast(kind: SyntaxKind) -> bool {
13897 kind == SyntaxKind::DROP_TEXT_SEARCH_TEMPLATE
13898 }
13899 #[inline]
13900 fn cast(syntax: SyntaxNode) -> Option<Self> {
13901 if Self::can_cast(syntax.kind()) {
13902 Some(Self { syntax })
13903 } else {
13904 None
13905 }
13906 }
13907 #[inline]
13908 fn syntax(&self) -> &SyntaxNode {
13909 &self.syntax
13910 }
13911}
13912impl AstNode for DropTransform {
13913 #[inline]
13914 fn can_cast(kind: SyntaxKind) -> bool {
13915 kind == SyntaxKind::DROP_TRANSFORM
13916 }
13917 #[inline]
13918 fn cast(syntax: SyntaxNode) -> Option<Self> {
13919 if Self::can_cast(syntax.kind()) {
13920 Some(Self { syntax })
13921 } else {
13922 None
13923 }
13924 }
13925 #[inline]
13926 fn syntax(&self) -> &SyntaxNode {
13927 &self.syntax
13928 }
13929}
13930impl AstNode for DropTrigger {
13931 #[inline]
13932 fn can_cast(kind: SyntaxKind) -> bool {
13933 kind == SyntaxKind::DROP_TRIGGER
13934 }
13935 #[inline]
13936 fn cast(syntax: SyntaxNode) -> Option<Self> {
13937 if Self::can_cast(syntax.kind()) {
13938 Some(Self { syntax })
13939 } else {
13940 None
13941 }
13942 }
13943 #[inline]
13944 fn syntax(&self) -> &SyntaxNode {
13945 &self.syntax
13946 }
13947}
13948impl AstNode for DropType {
13949 #[inline]
13950 fn can_cast(kind: SyntaxKind) -> bool {
13951 kind == SyntaxKind::DROP_TYPE
13952 }
13953 #[inline]
13954 fn cast(syntax: SyntaxNode) -> Option<Self> {
13955 if Self::can_cast(syntax.kind()) {
13956 Some(Self { syntax })
13957 } else {
13958 None
13959 }
13960 }
13961 #[inline]
13962 fn syntax(&self) -> &SyntaxNode {
13963 &self.syntax
13964 }
13965}
13966impl AstNode for DropUser {
13967 #[inline]
13968 fn can_cast(kind: SyntaxKind) -> bool {
13969 kind == SyntaxKind::DROP_USER
13970 }
13971 #[inline]
13972 fn cast(syntax: SyntaxNode) -> Option<Self> {
13973 if Self::can_cast(syntax.kind()) {
13974 Some(Self { syntax })
13975 } else {
13976 None
13977 }
13978 }
13979 #[inline]
13980 fn syntax(&self) -> &SyntaxNode {
13981 &self.syntax
13982 }
13983}
13984impl AstNode for DropUserMapping {
13985 #[inline]
13986 fn can_cast(kind: SyntaxKind) -> bool {
13987 kind == SyntaxKind::DROP_USER_MAPPING
13988 }
13989 #[inline]
13990 fn cast(syntax: SyntaxNode) -> Option<Self> {
13991 if Self::can_cast(syntax.kind()) {
13992 Some(Self { syntax })
13993 } else {
13994 None
13995 }
13996 }
13997 #[inline]
13998 fn syntax(&self) -> &SyntaxNode {
13999 &self.syntax
14000 }
14001}
14002impl AstNode for DropView {
14003 #[inline]
14004 fn can_cast(kind: SyntaxKind) -> bool {
14005 kind == SyntaxKind::DROP_VIEW
14006 }
14007 #[inline]
14008 fn cast(syntax: SyntaxNode) -> Option<Self> {
14009 if Self::can_cast(syntax.kind()) {
14010 Some(Self { syntax })
14011 } else {
14012 None
14013 }
14014 }
14015 #[inline]
14016 fn syntax(&self) -> &SyntaxNode {
14017 &self.syntax
14018 }
14019}
14020impl AstNode for EnableAlwaysRule {
14021 #[inline]
14022 fn can_cast(kind: SyntaxKind) -> bool {
14023 kind == SyntaxKind::ENABLE_ALWAYS_RULE
14024 }
14025 #[inline]
14026 fn cast(syntax: SyntaxNode) -> Option<Self> {
14027 if Self::can_cast(syntax.kind()) {
14028 Some(Self { syntax })
14029 } else {
14030 None
14031 }
14032 }
14033 #[inline]
14034 fn syntax(&self) -> &SyntaxNode {
14035 &self.syntax
14036 }
14037}
14038impl AstNode for EnableAlwaysTrigger {
14039 #[inline]
14040 fn can_cast(kind: SyntaxKind) -> bool {
14041 kind == SyntaxKind::ENABLE_ALWAYS_TRIGGER
14042 }
14043 #[inline]
14044 fn cast(syntax: SyntaxNode) -> Option<Self> {
14045 if Self::can_cast(syntax.kind()) {
14046 Some(Self { syntax })
14047 } else {
14048 None
14049 }
14050 }
14051 #[inline]
14052 fn syntax(&self) -> &SyntaxNode {
14053 &self.syntax
14054 }
14055}
14056impl AstNode for EnableReplicaRule {
14057 #[inline]
14058 fn can_cast(kind: SyntaxKind) -> bool {
14059 kind == SyntaxKind::ENABLE_REPLICA_RULE
14060 }
14061 #[inline]
14062 fn cast(syntax: SyntaxNode) -> Option<Self> {
14063 if Self::can_cast(syntax.kind()) {
14064 Some(Self { syntax })
14065 } else {
14066 None
14067 }
14068 }
14069 #[inline]
14070 fn syntax(&self) -> &SyntaxNode {
14071 &self.syntax
14072 }
14073}
14074impl AstNode for EnableReplicaTrigger {
14075 #[inline]
14076 fn can_cast(kind: SyntaxKind) -> bool {
14077 kind == SyntaxKind::ENABLE_REPLICA_TRIGGER
14078 }
14079 #[inline]
14080 fn cast(syntax: SyntaxNode) -> Option<Self> {
14081 if Self::can_cast(syntax.kind()) {
14082 Some(Self { syntax })
14083 } else {
14084 None
14085 }
14086 }
14087 #[inline]
14088 fn syntax(&self) -> &SyntaxNode {
14089 &self.syntax
14090 }
14091}
14092impl AstNode for EnableRls {
14093 #[inline]
14094 fn can_cast(kind: SyntaxKind) -> bool {
14095 kind == SyntaxKind::ENABLE_RLS
14096 }
14097 #[inline]
14098 fn cast(syntax: SyntaxNode) -> Option<Self> {
14099 if Self::can_cast(syntax.kind()) {
14100 Some(Self { syntax })
14101 } else {
14102 None
14103 }
14104 }
14105 #[inline]
14106 fn syntax(&self) -> &SyntaxNode {
14107 &self.syntax
14108 }
14109}
14110impl AstNode for EnableRule {
14111 #[inline]
14112 fn can_cast(kind: SyntaxKind) -> bool {
14113 kind == SyntaxKind::ENABLE_RULE
14114 }
14115 #[inline]
14116 fn cast(syntax: SyntaxNode) -> Option<Self> {
14117 if Self::can_cast(syntax.kind()) {
14118 Some(Self { syntax })
14119 } else {
14120 None
14121 }
14122 }
14123 #[inline]
14124 fn syntax(&self) -> &SyntaxNode {
14125 &self.syntax
14126 }
14127}
14128impl AstNode for EnableTrigger {
14129 #[inline]
14130 fn can_cast(kind: SyntaxKind) -> bool {
14131 kind == SyntaxKind::ENABLE_TRIGGER
14132 }
14133 #[inline]
14134 fn cast(syntax: SyntaxNode) -> Option<Self> {
14135 if Self::can_cast(syntax.kind()) {
14136 Some(Self { syntax })
14137 } else {
14138 None
14139 }
14140 }
14141 #[inline]
14142 fn syntax(&self) -> &SyntaxNode {
14143 &self.syntax
14144 }
14145}
14146impl AstNode for Enforced {
14147 #[inline]
14148 fn can_cast(kind: SyntaxKind) -> bool {
14149 kind == SyntaxKind::ENFORCED
14150 }
14151 #[inline]
14152 fn cast(syntax: SyntaxNode) -> Option<Self> {
14153 if Self::can_cast(syntax.kind()) {
14154 Some(Self { syntax })
14155 } else {
14156 None
14157 }
14158 }
14159 #[inline]
14160 fn syntax(&self) -> &SyntaxNode {
14161 &self.syntax
14162 }
14163}
14164impl AstNode for ExcludeConstraint {
14165 #[inline]
14166 fn can_cast(kind: SyntaxKind) -> bool {
14167 kind == SyntaxKind::EXCLUDE_CONSTRAINT
14168 }
14169 #[inline]
14170 fn cast(syntax: SyntaxNode) -> Option<Self> {
14171 if Self::can_cast(syntax.kind()) {
14172 Some(Self { syntax })
14173 } else {
14174 None
14175 }
14176 }
14177 #[inline]
14178 fn syntax(&self) -> &SyntaxNode {
14179 &self.syntax
14180 }
14181}
14182impl AstNode for Execute {
14183 #[inline]
14184 fn can_cast(kind: SyntaxKind) -> bool {
14185 kind == SyntaxKind::EXECUTE
14186 }
14187 #[inline]
14188 fn cast(syntax: SyntaxNode) -> Option<Self> {
14189 if Self::can_cast(syntax.kind()) {
14190 Some(Self { syntax })
14191 } else {
14192 None
14193 }
14194 }
14195 #[inline]
14196 fn syntax(&self) -> &SyntaxNode {
14197 &self.syntax
14198 }
14199}
14200impl AstNode for Explain {
14201 #[inline]
14202 fn can_cast(kind: SyntaxKind) -> bool {
14203 kind == SyntaxKind::EXPLAIN
14204 }
14205 #[inline]
14206 fn cast(syntax: SyntaxNode) -> Option<Self> {
14207 if Self::can_cast(syntax.kind()) {
14208 Some(Self { syntax })
14209 } else {
14210 None
14211 }
14212 }
14213 #[inline]
14214 fn syntax(&self) -> &SyntaxNode {
14215 &self.syntax
14216 }
14217}
14218impl AstNode for FatArrow {
14219 #[inline]
14220 fn can_cast(kind: SyntaxKind) -> bool {
14221 kind == SyntaxKind::FAT_ARROW
14222 }
14223 #[inline]
14224 fn cast(syntax: SyntaxNode) -> Option<Self> {
14225 if Self::can_cast(syntax.kind()) {
14226 Some(Self { syntax })
14227 } else {
14228 None
14229 }
14230 }
14231 #[inline]
14232 fn syntax(&self) -> &SyntaxNode {
14233 &self.syntax
14234 }
14235}
14236impl AstNode for Fetch {
14237 #[inline]
14238 fn can_cast(kind: SyntaxKind) -> bool {
14239 kind == SyntaxKind::FETCH
14240 }
14241 #[inline]
14242 fn cast(syntax: SyntaxNode) -> Option<Self> {
14243 if Self::can_cast(syntax.kind()) {
14244 Some(Self { syntax })
14245 } else {
14246 None
14247 }
14248 }
14249 #[inline]
14250 fn syntax(&self) -> &SyntaxNode {
14251 &self.syntax
14252 }
14253}
14254impl AstNode for FetchClause {
14255 #[inline]
14256 fn can_cast(kind: SyntaxKind) -> bool {
14257 kind == SyntaxKind::FETCH_CLAUSE
14258 }
14259 #[inline]
14260 fn cast(syntax: SyntaxNode) -> Option<Self> {
14261 if Self::can_cast(syntax.kind()) {
14262 Some(Self { syntax })
14263 } else {
14264 None
14265 }
14266 }
14267 #[inline]
14268 fn syntax(&self) -> &SyntaxNode {
14269 &self.syntax
14270 }
14271}
14272impl AstNode for FieldExpr {
14273 #[inline]
14274 fn can_cast(kind: SyntaxKind) -> bool {
14275 kind == SyntaxKind::FIELD_EXPR
14276 }
14277 #[inline]
14278 fn cast(syntax: SyntaxNode) -> Option<Self> {
14279 if Self::can_cast(syntax.kind()) {
14280 Some(Self { syntax })
14281 } else {
14282 None
14283 }
14284 }
14285 #[inline]
14286 fn syntax(&self) -> &SyntaxNode {
14287 &self.syntax
14288 }
14289}
14290impl AstNode for FilterClause {
14291 #[inline]
14292 fn can_cast(kind: SyntaxKind) -> bool {
14293 kind == SyntaxKind::FILTER_CLAUSE
14294 }
14295 #[inline]
14296 fn cast(syntax: SyntaxNode) -> Option<Self> {
14297 if Self::can_cast(syntax.kind()) {
14298 Some(Self { syntax })
14299 } else {
14300 None
14301 }
14302 }
14303 #[inline]
14304 fn syntax(&self) -> &SyntaxNode {
14305 &self.syntax
14306 }
14307}
14308impl AstNode for ForceRls {
14309 #[inline]
14310 fn can_cast(kind: SyntaxKind) -> bool {
14311 kind == SyntaxKind::FORCE_RLS
14312 }
14313 #[inline]
14314 fn cast(syntax: SyntaxNode) -> Option<Self> {
14315 if Self::can_cast(syntax.kind()) {
14316 Some(Self { syntax })
14317 } else {
14318 None
14319 }
14320 }
14321 #[inline]
14322 fn syntax(&self) -> &SyntaxNode {
14323 &self.syntax
14324 }
14325}
14326impl AstNode for ForeignKeyConstraint {
14327 #[inline]
14328 fn can_cast(kind: SyntaxKind) -> bool {
14329 kind == SyntaxKind::FOREIGN_KEY_CONSTRAINT
14330 }
14331 #[inline]
14332 fn cast(syntax: SyntaxNode) -> Option<Self> {
14333 if Self::can_cast(syntax.kind()) {
14334 Some(Self { syntax })
14335 } else {
14336 None
14337 }
14338 }
14339 #[inline]
14340 fn syntax(&self) -> &SyntaxNode {
14341 &self.syntax
14342 }
14343}
14344impl AstNode for FrameClause {
14345 #[inline]
14346 fn can_cast(kind: SyntaxKind) -> bool {
14347 kind == SyntaxKind::FRAME_CLAUSE
14348 }
14349 #[inline]
14350 fn cast(syntax: SyntaxNode) -> Option<Self> {
14351 if Self::can_cast(syntax.kind()) {
14352 Some(Self { syntax })
14353 } else {
14354 None
14355 }
14356 }
14357 #[inline]
14358 fn syntax(&self) -> &SyntaxNode {
14359 &self.syntax
14360 }
14361}
14362impl AstNode for FromClause {
14363 #[inline]
14364 fn can_cast(kind: SyntaxKind) -> bool {
14365 kind == SyntaxKind::FROM_CLAUSE
14366 }
14367 #[inline]
14368 fn cast(syntax: SyntaxNode) -> Option<Self> {
14369 if Self::can_cast(syntax.kind()) {
14370 Some(Self { syntax })
14371 } else {
14372 None
14373 }
14374 }
14375 #[inline]
14376 fn syntax(&self) -> &SyntaxNode {
14377 &self.syntax
14378 }
14379}
14380impl AstNode for FromItem {
14381 #[inline]
14382 fn can_cast(kind: SyntaxKind) -> bool {
14383 kind == SyntaxKind::FROM_ITEM
14384 }
14385 #[inline]
14386 fn cast(syntax: SyntaxNode) -> Option<Self> {
14387 if Self::can_cast(syntax.kind()) {
14388 Some(Self { syntax })
14389 } else {
14390 None
14391 }
14392 }
14393 #[inline]
14394 fn syntax(&self) -> &SyntaxNode {
14395 &self.syntax
14396 }
14397}
14398impl AstNode for FuncOptionList {
14399 #[inline]
14400 fn can_cast(kind: SyntaxKind) -> bool {
14401 kind == SyntaxKind::FUNC_OPTION_LIST
14402 }
14403 #[inline]
14404 fn cast(syntax: SyntaxNode) -> Option<Self> {
14405 if Self::can_cast(syntax.kind()) {
14406 Some(Self { syntax })
14407 } else {
14408 None
14409 }
14410 }
14411 #[inline]
14412 fn syntax(&self) -> &SyntaxNode {
14413 &self.syntax
14414 }
14415}
14416impl AstNode for GeneratedConstraint {
14417 #[inline]
14418 fn can_cast(kind: SyntaxKind) -> bool {
14419 kind == SyntaxKind::GENERATED_CONSTRAINT
14420 }
14421 #[inline]
14422 fn cast(syntax: SyntaxNode) -> Option<Self> {
14423 if Self::can_cast(syntax.kind()) {
14424 Some(Self { syntax })
14425 } else {
14426 None
14427 }
14428 }
14429 #[inline]
14430 fn syntax(&self) -> &SyntaxNode {
14431 &self.syntax
14432 }
14433}
14434impl AstNode for Grant {
14435 #[inline]
14436 fn can_cast(kind: SyntaxKind) -> bool {
14437 kind == SyntaxKind::GRANT
14438 }
14439 #[inline]
14440 fn cast(syntax: SyntaxNode) -> Option<Self> {
14441 if Self::can_cast(syntax.kind()) {
14442 Some(Self { syntax })
14443 } else {
14444 None
14445 }
14446 }
14447 #[inline]
14448 fn syntax(&self) -> &SyntaxNode {
14449 &self.syntax
14450 }
14451}
14452impl AstNode for GroupByClause {
14453 #[inline]
14454 fn can_cast(kind: SyntaxKind) -> bool {
14455 kind == SyntaxKind::GROUP_BY_CLAUSE
14456 }
14457 #[inline]
14458 fn cast(syntax: SyntaxNode) -> Option<Self> {
14459 if Self::can_cast(syntax.kind()) {
14460 Some(Self { syntax })
14461 } else {
14462 None
14463 }
14464 }
14465 #[inline]
14466 fn syntax(&self) -> &SyntaxNode {
14467 &self.syntax
14468 }
14469}
14470impl AstNode for GroupingCube {
14471 #[inline]
14472 fn can_cast(kind: SyntaxKind) -> bool {
14473 kind == SyntaxKind::GROUPING_CUBE
14474 }
14475 #[inline]
14476 fn cast(syntax: SyntaxNode) -> Option<Self> {
14477 if Self::can_cast(syntax.kind()) {
14478 Some(Self { syntax })
14479 } else {
14480 None
14481 }
14482 }
14483 #[inline]
14484 fn syntax(&self) -> &SyntaxNode {
14485 &self.syntax
14486 }
14487}
14488impl AstNode for GroupingExpr {
14489 #[inline]
14490 fn can_cast(kind: SyntaxKind) -> bool {
14491 kind == SyntaxKind::GROUPING_EXPR
14492 }
14493 #[inline]
14494 fn cast(syntax: SyntaxNode) -> Option<Self> {
14495 if Self::can_cast(syntax.kind()) {
14496 Some(Self { syntax })
14497 } else {
14498 None
14499 }
14500 }
14501 #[inline]
14502 fn syntax(&self) -> &SyntaxNode {
14503 &self.syntax
14504 }
14505}
14506impl AstNode for GroupingRollup {
14507 #[inline]
14508 fn can_cast(kind: SyntaxKind) -> bool {
14509 kind == SyntaxKind::GROUPING_ROLLUP
14510 }
14511 #[inline]
14512 fn cast(syntax: SyntaxNode) -> Option<Self> {
14513 if Self::can_cast(syntax.kind()) {
14514 Some(Self { syntax })
14515 } else {
14516 None
14517 }
14518 }
14519 #[inline]
14520 fn syntax(&self) -> &SyntaxNode {
14521 &self.syntax
14522 }
14523}
14524impl AstNode for GroupingSets {
14525 #[inline]
14526 fn can_cast(kind: SyntaxKind) -> bool {
14527 kind == SyntaxKind::GROUPING_SETS
14528 }
14529 #[inline]
14530 fn cast(syntax: SyntaxNode) -> Option<Self> {
14531 if Self::can_cast(syntax.kind()) {
14532 Some(Self { syntax })
14533 } else {
14534 None
14535 }
14536 }
14537 #[inline]
14538 fn syntax(&self) -> &SyntaxNode {
14539 &self.syntax
14540 }
14541}
14542impl AstNode for Gteq {
14543 #[inline]
14544 fn can_cast(kind: SyntaxKind) -> bool {
14545 kind == SyntaxKind::GTEQ
14546 }
14547 #[inline]
14548 fn cast(syntax: SyntaxNode) -> Option<Self> {
14549 if Self::can_cast(syntax.kind()) {
14550 Some(Self { syntax })
14551 } else {
14552 None
14553 }
14554 }
14555 #[inline]
14556 fn syntax(&self) -> &SyntaxNode {
14557 &self.syntax
14558 }
14559}
14560impl AstNode for HavingClause {
14561 #[inline]
14562 fn can_cast(kind: SyntaxKind) -> bool {
14563 kind == SyntaxKind::HAVING_CLAUSE
14564 }
14565 #[inline]
14566 fn cast(syntax: SyntaxNode) -> Option<Self> {
14567 if Self::can_cast(syntax.kind()) {
14568 Some(Self { syntax })
14569 } else {
14570 None
14571 }
14572 }
14573 #[inline]
14574 fn syntax(&self) -> &SyntaxNode {
14575 &self.syntax
14576 }
14577}
14578impl AstNode for IfExists {
14579 #[inline]
14580 fn can_cast(kind: SyntaxKind) -> bool {
14581 kind == SyntaxKind::IF_EXISTS
14582 }
14583 #[inline]
14584 fn cast(syntax: SyntaxNode) -> Option<Self> {
14585 if Self::can_cast(syntax.kind()) {
14586 Some(Self { syntax })
14587 } else {
14588 None
14589 }
14590 }
14591 #[inline]
14592 fn syntax(&self) -> &SyntaxNode {
14593 &self.syntax
14594 }
14595}
14596impl AstNode for IfNotExists {
14597 #[inline]
14598 fn can_cast(kind: SyntaxKind) -> bool {
14599 kind == SyntaxKind::IF_NOT_EXISTS
14600 }
14601 #[inline]
14602 fn cast(syntax: SyntaxNode) -> Option<Self> {
14603 if Self::can_cast(syntax.kind()) {
14604 Some(Self { syntax })
14605 } else {
14606 None
14607 }
14608 }
14609 #[inline]
14610 fn syntax(&self) -> &SyntaxNode {
14611 &self.syntax
14612 }
14613}
14614impl AstNode for ImportForeignSchema {
14615 #[inline]
14616 fn can_cast(kind: SyntaxKind) -> bool {
14617 kind == SyntaxKind::IMPORT_FOREIGN_SCHEMA
14618 }
14619 #[inline]
14620 fn cast(syntax: SyntaxNode) -> Option<Self> {
14621 if Self::can_cast(syntax.kind()) {
14622 Some(Self { syntax })
14623 } else {
14624 None
14625 }
14626 }
14627 #[inline]
14628 fn syntax(&self) -> &SyntaxNode {
14629 &self.syntax
14630 }
14631}
14632impl AstNode for IndexExpr {
14633 #[inline]
14634 fn can_cast(kind: SyntaxKind) -> bool {
14635 kind == SyntaxKind::INDEX_EXPR
14636 }
14637 #[inline]
14638 fn cast(syntax: SyntaxNode) -> Option<Self> {
14639 if Self::can_cast(syntax.kind()) {
14640 Some(Self { syntax })
14641 } else {
14642 None
14643 }
14644 }
14645 #[inline]
14646 fn syntax(&self) -> &SyntaxNode {
14647 &self.syntax
14648 }
14649}
14650impl AstNode for IndexParams {
14651 #[inline]
14652 fn can_cast(kind: SyntaxKind) -> bool {
14653 kind == SyntaxKind::INDEX_PARAMS
14654 }
14655 #[inline]
14656 fn cast(syntax: SyntaxNode) -> Option<Self> {
14657 if Self::can_cast(syntax.kind()) {
14658 Some(Self { syntax })
14659 } else {
14660 None
14661 }
14662 }
14663 #[inline]
14664 fn syntax(&self) -> &SyntaxNode {
14665 &self.syntax
14666 }
14667}
14668impl AstNode for Inherit {
14669 #[inline]
14670 fn can_cast(kind: SyntaxKind) -> bool {
14671 kind == SyntaxKind::INHERIT
14672 }
14673 #[inline]
14674 fn cast(syntax: SyntaxNode) -> Option<Self> {
14675 if Self::can_cast(syntax.kind()) {
14676 Some(Self { syntax })
14677 } else {
14678 None
14679 }
14680 }
14681 #[inline]
14682 fn syntax(&self) -> &SyntaxNode {
14683 &self.syntax
14684 }
14685}
14686impl AstNode for Inherits {
14687 #[inline]
14688 fn can_cast(kind: SyntaxKind) -> bool {
14689 kind == SyntaxKind::INHERITS
14690 }
14691 #[inline]
14692 fn cast(syntax: SyntaxNode) -> Option<Self> {
14693 if Self::can_cast(syntax.kind()) {
14694 Some(Self { syntax })
14695 } else {
14696 None
14697 }
14698 }
14699 #[inline]
14700 fn syntax(&self) -> &SyntaxNode {
14701 &self.syntax
14702 }
14703}
14704impl AstNode for InitiallyDeferredConstraintOption {
14705 #[inline]
14706 fn can_cast(kind: SyntaxKind) -> bool {
14707 kind == SyntaxKind::INITIALLY_DEFERRED_CONSTRAINT_OPTION
14708 }
14709 #[inline]
14710 fn cast(syntax: SyntaxNode) -> Option<Self> {
14711 if Self::can_cast(syntax.kind()) {
14712 Some(Self { syntax })
14713 } else {
14714 None
14715 }
14716 }
14717 #[inline]
14718 fn syntax(&self) -> &SyntaxNode {
14719 &self.syntax
14720 }
14721}
14722impl AstNode for InitiallyImmediateConstraintOption {
14723 #[inline]
14724 fn can_cast(kind: SyntaxKind) -> bool {
14725 kind == SyntaxKind::INITIALLY_IMMEDIATE_CONSTRAINT_OPTION
14726 }
14727 #[inline]
14728 fn cast(syntax: SyntaxNode) -> Option<Self> {
14729 if Self::can_cast(syntax.kind()) {
14730 Some(Self { syntax })
14731 } else {
14732 None
14733 }
14734 }
14735 #[inline]
14736 fn syntax(&self) -> &SyntaxNode {
14737 &self.syntax
14738 }
14739}
14740impl AstNode for Insert {
14741 #[inline]
14742 fn can_cast(kind: SyntaxKind) -> bool {
14743 kind == SyntaxKind::INSERT
14744 }
14745 #[inline]
14746 fn cast(syntax: SyntaxNode) -> Option<Self> {
14747 if Self::can_cast(syntax.kind()) {
14748 Some(Self { syntax })
14749 } else {
14750 None
14751 }
14752 }
14753 #[inline]
14754 fn syntax(&self) -> &SyntaxNode {
14755 &self.syntax
14756 }
14757}
14758impl AstNode for IntervalType {
14759 #[inline]
14760 fn can_cast(kind: SyntaxKind) -> bool {
14761 kind == SyntaxKind::INTERVAL_TYPE
14762 }
14763 #[inline]
14764 fn cast(syntax: SyntaxNode) -> Option<Self> {
14765 if Self::can_cast(syntax.kind()) {
14766 Some(Self { syntax })
14767 } else {
14768 None
14769 }
14770 }
14771 #[inline]
14772 fn syntax(&self) -> &SyntaxNode {
14773 &self.syntax
14774 }
14775}
14776impl AstNode for IntoClause {
14777 #[inline]
14778 fn can_cast(kind: SyntaxKind) -> bool {
14779 kind == SyntaxKind::INTO_CLAUSE
14780 }
14781 #[inline]
14782 fn cast(syntax: SyntaxNode) -> Option<Self> {
14783 if Self::can_cast(syntax.kind()) {
14784 Some(Self { syntax })
14785 } else {
14786 None
14787 }
14788 }
14789 #[inline]
14790 fn syntax(&self) -> &SyntaxNode {
14791 &self.syntax
14792 }
14793}
14794impl AstNode for IsDistinctFrom {
14795 #[inline]
14796 fn can_cast(kind: SyntaxKind) -> bool {
14797 kind == SyntaxKind::IS_DISTINCT_FROM
14798 }
14799 #[inline]
14800 fn cast(syntax: SyntaxNode) -> Option<Self> {
14801 if Self::can_cast(syntax.kind()) {
14802 Some(Self { syntax })
14803 } else {
14804 None
14805 }
14806 }
14807 #[inline]
14808 fn syntax(&self) -> &SyntaxNode {
14809 &self.syntax
14810 }
14811}
14812impl AstNode for IsJson {
14813 #[inline]
14814 fn can_cast(kind: SyntaxKind) -> bool {
14815 kind == SyntaxKind::IS_JSON
14816 }
14817 #[inline]
14818 fn cast(syntax: SyntaxNode) -> Option<Self> {
14819 if Self::can_cast(syntax.kind()) {
14820 Some(Self { syntax })
14821 } else {
14822 None
14823 }
14824 }
14825 #[inline]
14826 fn syntax(&self) -> &SyntaxNode {
14827 &self.syntax
14828 }
14829}
14830impl AstNode for IsJsonArray {
14831 #[inline]
14832 fn can_cast(kind: SyntaxKind) -> bool {
14833 kind == SyntaxKind::IS_JSON_ARRAY
14834 }
14835 #[inline]
14836 fn cast(syntax: SyntaxNode) -> Option<Self> {
14837 if Self::can_cast(syntax.kind()) {
14838 Some(Self { syntax })
14839 } else {
14840 None
14841 }
14842 }
14843 #[inline]
14844 fn syntax(&self) -> &SyntaxNode {
14845 &self.syntax
14846 }
14847}
14848impl AstNode for IsJsonObject {
14849 #[inline]
14850 fn can_cast(kind: SyntaxKind) -> bool {
14851 kind == SyntaxKind::IS_JSON_OBJECT
14852 }
14853 #[inline]
14854 fn cast(syntax: SyntaxNode) -> Option<Self> {
14855 if Self::can_cast(syntax.kind()) {
14856 Some(Self { syntax })
14857 } else {
14858 None
14859 }
14860 }
14861 #[inline]
14862 fn syntax(&self) -> &SyntaxNode {
14863 &self.syntax
14864 }
14865}
14866impl AstNode for IsJsonScalar {
14867 #[inline]
14868 fn can_cast(kind: SyntaxKind) -> bool {
14869 kind == SyntaxKind::IS_JSON_SCALAR
14870 }
14871 #[inline]
14872 fn cast(syntax: SyntaxNode) -> Option<Self> {
14873 if Self::can_cast(syntax.kind()) {
14874 Some(Self { syntax })
14875 } else {
14876 None
14877 }
14878 }
14879 #[inline]
14880 fn syntax(&self) -> &SyntaxNode {
14881 &self.syntax
14882 }
14883}
14884impl AstNode for IsJsonValue {
14885 #[inline]
14886 fn can_cast(kind: SyntaxKind) -> bool {
14887 kind == SyntaxKind::IS_JSON_VALUE
14888 }
14889 #[inline]
14890 fn cast(syntax: SyntaxNode) -> Option<Self> {
14891 if Self::can_cast(syntax.kind()) {
14892 Some(Self { syntax })
14893 } else {
14894 None
14895 }
14896 }
14897 #[inline]
14898 fn syntax(&self) -> &SyntaxNode {
14899 &self.syntax
14900 }
14901}
14902impl AstNode for IsNormalized {
14903 #[inline]
14904 fn can_cast(kind: SyntaxKind) -> bool {
14905 kind == SyntaxKind::IS_NORMALIZED
14906 }
14907 #[inline]
14908 fn cast(syntax: SyntaxNode) -> Option<Self> {
14909 if Self::can_cast(syntax.kind()) {
14910 Some(Self { syntax })
14911 } else {
14912 None
14913 }
14914 }
14915 #[inline]
14916 fn syntax(&self) -> &SyntaxNode {
14917 &self.syntax
14918 }
14919}
14920impl AstNode for IsNot {
14921 #[inline]
14922 fn can_cast(kind: SyntaxKind) -> bool {
14923 kind == SyntaxKind::IS_NOT
14924 }
14925 #[inline]
14926 fn cast(syntax: SyntaxNode) -> Option<Self> {
14927 if Self::can_cast(syntax.kind()) {
14928 Some(Self { syntax })
14929 } else {
14930 None
14931 }
14932 }
14933 #[inline]
14934 fn syntax(&self) -> &SyntaxNode {
14935 &self.syntax
14936 }
14937}
14938impl AstNode for IsNotDistinctFrom {
14939 #[inline]
14940 fn can_cast(kind: SyntaxKind) -> bool {
14941 kind == SyntaxKind::IS_NOT_DISTINCT_FROM
14942 }
14943 #[inline]
14944 fn cast(syntax: SyntaxNode) -> Option<Self> {
14945 if Self::can_cast(syntax.kind()) {
14946 Some(Self { syntax })
14947 } else {
14948 None
14949 }
14950 }
14951 #[inline]
14952 fn syntax(&self) -> &SyntaxNode {
14953 &self.syntax
14954 }
14955}
14956impl AstNode for IsNotJson {
14957 #[inline]
14958 fn can_cast(kind: SyntaxKind) -> bool {
14959 kind == SyntaxKind::IS_NOT_JSON
14960 }
14961 #[inline]
14962 fn cast(syntax: SyntaxNode) -> Option<Self> {
14963 if Self::can_cast(syntax.kind()) {
14964 Some(Self { syntax })
14965 } else {
14966 None
14967 }
14968 }
14969 #[inline]
14970 fn syntax(&self) -> &SyntaxNode {
14971 &self.syntax
14972 }
14973}
14974impl AstNode for IsNotJsonArray {
14975 #[inline]
14976 fn can_cast(kind: SyntaxKind) -> bool {
14977 kind == SyntaxKind::IS_NOT_JSON_ARRAY
14978 }
14979 #[inline]
14980 fn cast(syntax: SyntaxNode) -> Option<Self> {
14981 if Self::can_cast(syntax.kind()) {
14982 Some(Self { syntax })
14983 } else {
14984 None
14985 }
14986 }
14987 #[inline]
14988 fn syntax(&self) -> &SyntaxNode {
14989 &self.syntax
14990 }
14991}
14992impl AstNode for IsNotJsonObject {
14993 #[inline]
14994 fn can_cast(kind: SyntaxKind) -> bool {
14995 kind == SyntaxKind::IS_NOT_JSON_OBJECT
14996 }
14997 #[inline]
14998 fn cast(syntax: SyntaxNode) -> Option<Self> {
14999 if Self::can_cast(syntax.kind()) {
15000 Some(Self { syntax })
15001 } else {
15002 None
15003 }
15004 }
15005 #[inline]
15006 fn syntax(&self) -> &SyntaxNode {
15007 &self.syntax
15008 }
15009}
15010impl AstNode for IsNotJsonScalar {
15011 #[inline]
15012 fn can_cast(kind: SyntaxKind) -> bool {
15013 kind == SyntaxKind::IS_NOT_JSON_SCALAR
15014 }
15015 #[inline]
15016 fn cast(syntax: SyntaxNode) -> Option<Self> {
15017 if Self::can_cast(syntax.kind()) {
15018 Some(Self { syntax })
15019 } else {
15020 None
15021 }
15022 }
15023 #[inline]
15024 fn syntax(&self) -> &SyntaxNode {
15025 &self.syntax
15026 }
15027}
15028impl AstNode for IsNotJsonValue {
15029 #[inline]
15030 fn can_cast(kind: SyntaxKind) -> bool {
15031 kind == SyntaxKind::IS_NOT_JSON_VALUE
15032 }
15033 #[inline]
15034 fn cast(syntax: SyntaxNode) -> Option<Self> {
15035 if Self::can_cast(syntax.kind()) {
15036 Some(Self { syntax })
15037 } else {
15038 None
15039 }
15040 }
15041 #[inline]
15042 fn syntax(&self) -> &SyntaxNode {
15043 &self.syntax
15044 }
15045}
15046impl AstNode for IsNotNormalized {
15047 #[inline]
15048 fn can_cast(kind: SyntaxKind) -> bool {
15049 kind == SyntaxKind::IS_NOT_NORMALIZED
15050 }
15051 #[inline]
15052 fn cast(syntax: SyntaxNode) -> Option<Self> {
15053 if Self::can_cast(syntax.kind()) {
15054 Some(Self { syntax })
15055 } else {
15056 None
15057 }
15058 }
15059 #[inline]
15060 fn syntax(&self) -> &SyntaxNode {
15061 &self.syntax
15062 }
15063}
15064impl AstNode for Join {
15065 #[inline]
15066 fn can_cast(kind: SyntaxKind) -> bool {
15067 kind == SyntaxKind::JOIN
15068 }
15069 #[inline]
15070 fn cast(syntax: SyntaxNode) -> Option<Self> {
15071 if Self::can_cast(syntax.kind()) {
15072 Some(Self { syntax })
15073 } else {
15074 None
15075 }
15076 }
15077 #[inline]
15078 fn syntax(&self) -> &SyntaxNode {
15079 &self.syntax
15080 }
15081}
15082impl AstNode for JoinCross {
15083 #[inline]
15084 fn can_cast(kind: SyntaxKind) -> bool {
15085 kind == SyntaxKind::JOIN_CROSS
15086 }
15087 #[inline]
15088 fn cast(syntax: SyntaxNode) -> Option<Self> {
15089 if Self::can_cast(syntax.kind()) {
15090 Some(Self { syntax })
15091 } else {
15092 None
15093 }
15094 }
15095 #[inline]
15096 fn syntax(&self) -> &SyntaxNode {
15097 &self.syntax
15098 }
15099}
15100impl AstNode for JoinExpr {
15101 #[inline]
15102 fn can_cast(kind: SyntaxKind) -> bool {
15103 kind == SyntaxKind::JOIN_EXPR
15104 }
15105 #[inline]
15106 fn cast(syntax: SyntaxNode) -> Option<Self> {
15107 if Self::can_cast(syntax.kind()) {
15108 Some(Self { syntax })
15109 } else {
15110 None
15111 }
15112 }
15113 #[inline]
15114 fn syntax(&self) -> &SyntaxNode {
15115 &self.syntax
15116 }
15117}
15118impl AstNode for JoinFull {
15119 #[inline]
15120 fn can_cast(kind: SyntaxKind) -> bool {
15121 kind == SyntaxKind::JOIN_FULL
15122 }
15123 #[inline]
15124 fn cast(syntax: SyntaxNode) -> Option<Self> {
15125 if Self::can_cast(syntax.kind()) {
15126 Some(Self { syntax })
15127 } else {
15128 None
15129 }
15130 }
15131 #[inline]
15132 fn syntax(&self) -> &SyntaxNode {
15133 &self.syntax
15134 }
15135}
15136impl AstNode for JoinInner {
15137 #[inline]
15138 fn can_cast(kind: SyntaxKind) -> bool {
15139 kind == SyntaxKind::JOIN_INNER
15140 }
15141 #[inline]
15142 fn cast(syntax: SyntaxNode) -> Option<Self> {
15143 if Self::can_cast(syntax.kind()) {
15144 Some(Self { syntax })
15145 } else {
15146 None
15147 }
15148 }
15149 #[inline]
15150 fn syntax(&self) -> &SyntaxNode {
15151 &self.syntax
15152 }
15153}
15154impl AstNode for JoinLeft {
15155 #[inline]
15156 fn can_cast(kind: SyntaxKind) -> bool {
15157 kind == SyntaxKind::JOIN_LEFT
15158 }
15159 #[inline]
15160 fn cast(syntax: SyntaxNode) -> Option<Self> {
15161 if Self::can_cast(syntax.kind()) {
15162 Some(Self { syntax })
15163 } else {
15164 None
15165 }
15166 }
15167 #[inline]
15168 fn syntax(&self) -> &SyntaxNode {
15169 &self.syntax
15170 }
15171}
15172impl AstNode for JoinRight {
15173 #[inline]
15174 fn can_cast(kind: SyntaxKind) -> bool {
15175 kind == SyntaxKind::JOIN_RIGHT
15176 }
15177 #[inline]
15178 fn cast(syntax: SyntaxNode) -> Option<Self> {
15179 if Self::can_cast(syntax.kind()) {
15180 Some(Self { syntax })
15181 } else {
15182 None
15183 }
15184 }
15185 #[inline]
15186 fn syntax(&self) -> &SyntaxNode {
15187 &self.syntax
15188 }
15189}
15190impl AstNode for JoinUsingClause {
15191 #[inline]
15192 fn can_cast(kind: SyntaxKind) -> bool {
15193 kind == SyntaxKind::JOIN_USING_CLAUSE
15194 }
15195 #[inline]
15196 fn cast(syntax: SyntaxNode) -> Option<Self> {
15197 if Self::can_cast(syntax.kind()) {
15198 Some(Self { syntax })
15199 } else {
15200 None
15201 }
15202 }
15203 #[inline]
15204 fn syntax(&self) -> &SyntaxNode {
15205 &self.syntax
15206 }
15207}
15208impl AstNode for JsonBehaviorDefault {
15209 #[inline]
15210 fn can_cast(kind: SyntaxKind) -> bool {
15211 kind == SyntaxKind::JSON_BEHAVIOR_DEFAULT
15212 }
15213 #[inline]
15214 fn cast(syntax: SyntaxNode) -> Option<Self> {
15215 if Self::can_cast(syntax.kind()) {
15216 Some(Self { syntax })
15217 } else {
15218 None
15219 }
15220 }
15221 #[inline]
15222 fn syntax(&self) -> &SyntaxNode {
15223 &self.syntax
15224 }
15225}
15226impl AstNode for JsonBehaviorEmptyArray {
15227 #[inline]
15228 fn can_cast(kind: SyntaxKind) -> bool {
15229 kind == SyntaxKind::JSON_BEHAVIOR_EMPTY_ARRAY
15230 }
15231 #[inline]
15232 fn cast(syntax: SyntaxNode) -> Option<Self> {
15233 if Self::can_cast(syntax.kind()) {
15234 Some(Self { syntax })
15235 } else {
15236 None
15237 }
15238 }
15239 #[inline]
15240 fn syntax(&self) -> &SyntaxNode {
15241 &self.syntax
15242 }
15243}
15244impl AstNode for JsonBehaviorEmptyObject {
15245 #[inline]
15246 fn can_cast(kind: SyntaxKind) -> bool {
15247 kind == SyntaxKind::JSON_BEHAVIOR_EMPTY_OBJECT
15248 }
15249 #[inline]
15250 fn cast(syntax: SyntaxNode) -> Option<Self> {
15251 if Self::can_cast(syntax.kind()) {
15252 Some(Self { syntax })
15253 } else {
15254 None
15255 }
15256 }
15257 #[inline]
15258 fn syntax(&self) -> &SyntaxNode {
15259 &self.syntax
15260 }
15261}
15262impl AstNode for JsonBehaviorError {
15263 #[inline]
15264 fn can_cast(kind: SyntaxKind) -> bool {
15265 kind == SyntaxKind::JSON_BEHAVIOR_ERROR
15266 }
15267 #[inline]
15268 fn cast(syntax: SyntaxNode) -> Option<Self> {
15269 if Self::can_cast(syntax.kind()) {
15270 Some(Self { syntax })
15271 } else {
15272 None
15273 }
15274 }
15275 #[inline]
15276 fn syntax(&self) -> &SyntaxNode {
15277 &self.syntax
15278 }
15279}
15280impl AstNode for JsonBehaviorFalse {
15281 #[inline]
15282 fn can_cast(kind: SyntaxKind) -> bool {
15283 kind == SyntaxKind::JSON_BEHAVIOR_FALSE
15284 }
15285 #[inline]
15286 fn cast(syntax: SyntaxNode) -> Option<Self> {
15287 if Self::can_cast(syntax.kind()) {
15288 Some(Self { syntax })
15289 } else {
15290 None
15291 }
15292 }
15293 #[inline]
15294 fn syntax(&self) -> &SyntaxNode {
15295 &self.syntax
15296 }
15297}
15298impl AstNode for JsonBehaviorNull {
15299 #[inline]
15300 fn can_cast(kind: SyntaxKind) -> bool {
15301 kind == SyntaxKind::JSON_BEHAVIOR_NULL
15302 }
15303 #[inline]
15304 fn cast(syntax: SyntaxNode) -> Option<Self> {
15305 if Self::can_cast(syntax.kind()) {
15306 Some(Self { syntax })
15307 } else {
15308 None
15309 }
15310 }
15311 #[inline]
15312 fn syntax(&self) -> &SyntaxNode {
15313 &self.syntax
15314 }
15315}
15316impl AstNode for JsonBehaviorTrue {
15317 #[inline]
15318 fn can_cast(kind: SyntaxKind) -> bool {
15319 kind == SyntaxKind::JSON_BEHAVIOR_TRUE
15320 }
15321 #[inline]
15322 fn cast(syntax: SyntaxNode) -> Option<Self> {
15323 if Self::can_cast(syntax.kind()) {
15324 Some(Self { syntax })
15325 } else {
15326 None
15327 }
15328 }
15329 #[inline]
15330 fn syntax(&self) -> &SyntaxNode {
15331 &self.syntax
15332 }
15333}
15334impl AstNode for JsonBehaviorUnknown {
15335 #[inline]
15336 fn can_cast(kind: SyntaxKind) -> bool {
15337 kind == SyntaxKind::JSON_BEHAVIOR_UNKNOWN
15338 }
15339 #[inline]
15340 fn cast(syntax: SyntaxNode) -> Option<Self> {
15341 if Self::can_cast(syntax.kind()) {
15342 Some(Self { syntax })
15343 } else {
15344 None
15345 }
15346 }
15347 #[inline]
15348 fn syntax(&self) -> &SyntaxNode {
15349 &self.syntax
15350 }
15351}
15352impl AstNode for JsonFormatClause {
15353 #[inline]
15354 fn can_cast(kind: SyntaxKind) -> bool {
15355 kind == SyntaxKind::JSON_FORMAT_CLAUSE
15356 }
15357 #[inline]
15358 fn cast(syntax: SyntaxNode) -> Option<Self> {
15359 if Self::can_cast(syntax.kind()) {
15360 Some(Self { syntax })
15361 } else {
15362 None
15363 }
15364 }
15365 #[inline]
15366 fn syntax(&self) -> &SyntaxNode {
15367 &self.syntax
15368 }
15369}
15370impl AstNode for JsonKeyValue {
15371 #[inline]
15372 fn can_cast(kind: SyntaxKind) -> bool {
15373 kind == SyntaxKind::JSON_KEY_VALUE
15374 }
15375 #[inline]
15376 fn cast(syntax: SyntaxNode) -> Option<Self> {
15377 if Self::can_cast(syntax.kind()) {
15378 Some(Self { syntax })
15379 } else {
15380 None
15381 }
15382 }
15383 #[inline]
15384 fn syntax(&self) -> &SyntaxNode {
15385 &self.syntax
15386 }
15387}
15388impl AstNode for JsonKeysUniqueClause {
15389 #[inline]
15390 fn can_cast(kind: SyntaxKind) -> bool {
15391 kind == SyntaxKind::JSON_KEYS_UNIQUE_CLAUSE
15392 }
15393 #[inline]
15394 fn cast(syntax: SyntaxNode) -> Option<Self> {
15395 if Self::can_cast(syntax.kind()) {
15396 Some(Self { syntax })
15397 } else {
15398 None
15399 }
15400 }
15401 #[inline]
15402 fn syntax(&self) -> &SyntaxNode {
15403 &self.syntax
15404 }
15405}
15406impl AstNode for JsonNullClause {
15407 #[inline]
15408 fn can_cast(kind: SyntaxKind) -> bool {
15409 kind == SyntaxKind::JSON_NULL_CLAUSE
15410 }
15411 #[inline]
15412 fn cast(syntax: SyntaxNode) -> Option<Self> {
15413 if Self::can_cast(syntax.kind()) {
15414 Some(Self { syntax })
15415 } else {
15416 None
15417 }
15418 }
15419 #[inline]
15420 fn syntax(&self) -> &SyntaxNode {
15421 &self.syntax
15422 }
15423}
15424impl AstNode for JsonOnEmptyClause {
15425 #[inline]
15426 fn can_cast(kind: SyntaxKind) -> bool {
15427 kind == SyntaxKind::JSON_ON_EMPTY_CLAUSE
15428 }
15429 #[inline]
15430 fn cast(syntax: SyntaxNode) -> Option<Self> {
15431 if Self::can_cast(syntax.kind()) {
15432 Some(Self { syntax })
15433 } else {
15434 None
15435 }
15436 }
15437 #[inline]
15438 fn syntax(&self) -> &SyntaxNode {
15439 &self.syntax
15440 }
15441}
15442impl AstNode for JsonOnErrorClause {
15443 #[inline]
15444 fn can_cast(kind: SyntaxKind) -> bool {
15445 kind == SyntaxKind::JSON_ON_ERROR_CLAUSE
15446 }
15447 #[inline]
15448 fn cast(syntax: SyntaxNode) -> Option<Self> {
15449 if Self::can_cast(syntax.kind()) {
15450 Some(Self { syntax })
15451 } else {
15452 None
15453 }
15454 }
15455 #[inline]
15456 fn syntax(&self) -> &SyntaxNode {
15457 &self.syntax
15458 }
15459}
15460impl AstNode for JsonPassingArg {
15461 #[inline]
15462 fn can_cast(kind: SyntaxKind) -> bool {
15463 kind == SyntaxKind::JSON_PASSING_ARG
15464 }
15465 #[inline]
15466 fn cast(syntax: SyntaxNode) -> Option<Self> {
15467 if Self::can_cast(syntax.kind()) {
15468 Some(Self { syntax })
15469 } else {
15470 None
15471 }
15472 }
15473 #[inline]
15474 fn syntax(&self) -> &SyntaxNode {
15475 &self.syntax
15476 }
15477}
15478impl AstNode for JsonPassingClause {
15479 #[inline]
15480 fn can_cast(kind: SyntaxKind) -> bool {
15481 kind == SyntaxKind::JSON_PASSING_CLAUSE
15482 }
15483 #[inline]
15484 fn cast(syntax: SyntaxNode) -> Option<Self> {
15485 if Self::can_cast(syntax.kind()) {
15486 Some(Self { syntax })
15487 } else {
15488 None
15489 }
15490 }
15491 #[inline]
15492 fn syntax(&self) -> &SyntaxNode {
15493 &self.syntax
15494 }
15495}
15496impl AstNode for JsonQuotesClause {
15497 #[inline]
15498 fn can_cast(kind: SyntaxKind) -> bool {
15499 kind == SyntaxKind::JSON_QUOTES_CLAUSE
15500 }
15501 #[inline]
15502 fn cast(syntax: SyntaxNode) -> Option<Self> {
15503 if Self::can_cast(syntax.kind()) {
15504 Some(Self { syntax })
15505 } else {
15506 None
15507 }
15508 }
15509 #[inline]
15510 fn syntax(&self) -> &SyntaxNode {
15511 &self.syntax
15512 }
15513}
15514impl AstNode for JsonReturningClause {
15515 #[inline]
15516 fn can_cast(kind: SyntaxKind) -> bool {
15517 kind == SyntaxKind::JSON_RETURNING_CLAUSE
15518 }
15519 #[inline]
15520 fn cast(syntax: SyntaxNode) -> Option<Self> {
15521 if Self::can_cast(syntax.kind()) {
15522 Some(Self { syntax })
15523 } else {
15524 None
15525 }
15526 }
15527 #[inline]
15528 fn syntax(&self) -> &SyntaxNode {
15529 &self.syntax
15530 }
15531}
15532impl AstNode for JsonTableColumn {
15533 #[inline]
15534 fn can_cast(kind: SyntaxKind) -> bool {
15535 kind == SyntaxKind::JSON_TABLE_COLUMN
15536 }
15537 #[inline]
15538 fn cast(syntax: SyntaxNode) -> Option<Self> {
15539 if Self::can_cast(syntax.kind()) {
15540 Some(Self { syntax })
15541 } else {
15542 None
15543 }
15544 }
15545 #[inline]
15546 fn syntax(&self) -> &SyntaxNode {
15547 &self.syntax
15548 }
15549}
15550impl AstNode for JsonTableColumnList {
15551 #[inline]
15552 fn can_cast(kind: SyntaxKind) -> bool {
15553 kind == SyntaxKind::JSON_TABLE_COLUMN_LIST
15554 }
15555 #[inline]
15556 fn cast(syntax: SyntaxNode) -> Option<Self> {
15557 if Self::can_cast(syntax.kind()) {
15558 Some(Self { syntax })
15559 } else {
15560 None
15561 }
15562 }
15563 #[inline]
15564 fn syntax(&self) -> &SyntaxNode {
15565 &self.syntax
15566 }
15567}
15568impl AstNode for JsonValueExpr {
15569 #[inline]
15570 fn can_cast(kind: SyntaxKind) -> bool {
15571 kind == SyntaxKind::JSON_VALUE_EXPR
15572 }
15573 #[inline]
15574 fn cast(syntax: SyntaxNode) -> Option<Self> {
15575 if Self::can_cast(syntax.kind()) {
15576 Some(Self { syntax })
15577 } else {
15578 None
15579 }
15580 }
15581 #[inline]
15582 fn syntax(&self) -> &SyntaxNode {
15583 &self.syntax
15584 }
15585}
15586impl AstNode for JsonWrapperBehaviorClause {
15587 #[inline]
15588 fn can_cast(kind: SyntaxKind) -> bool {
15589 kind == SyntaxKind::JSON_WRAPPER_BEHAVIOR_CLAUSE
15590 }
15591 #[inline]
15592 fn cast(syntax: SyntaxNode) -> Option<Self> {
15593 if Self::can_cast(syntax.kind()) {
15594 Some(Self { syntax })
15595 } else {
15596 None
15597 }
15598 }
15599 #[inline]
15600 fn syntax(&self) -> &SyntaxNode {
15601 &self.syntax
15602 }
15603}
15604impl AstNode for LanguageFuncOption {
15605 #[inline]
15606 fn can_cast(kind: SyntaxKind) -> bool {
15607 kind == SyntaxKind::LANGUAGE_FUNC_OPTION
15608 }
15609 #[inline]
15610 fn cast(syntax: SyntaxNode) -> Option<Self> {
15611 if Self::can_cast(syntax.kind()) {
15612 Some(Self { syntax })
15613 } else {
15614 None
15615 }
15616 }
15617 #[inline]
15618 fn syntax(&self) -> &SyntaxNode {
15619 &self.syntax
15620 }
15621}
15622impl AstNode for LeakproofFuncOption {
15623 #[inline]
15624 fn can_cast(kind: SyntaxKind) -> bool {
15625 kind == SyntaxKind::LEAKPROOF_FUNC_OPTION
15626 }
15627 #[inline]
15628 fn cast(syntax: SyntaxNode) -> Option<Self> {
15629 if Self::can_cast(syntax.kind()) {
15630 Some(Self { syntax })
15631 } else {
15632 None
15633 }
15634 }
15635 #[inline]
15636 fn syntax(&self) -> &SyntaxNode {
15637 &self.syntax
15638 }
15639}
15640impl AstNode for LikeClause {
15641 #[inline]
15642 fn can_cast(kind: SyntaxKind) -> bool {
15643 kind == SyntaxKind::LIKE_CLAUSE
15644 }
15645 #[inline]
15646 fn cast(syntax: SyntaxNode) -> Option<Self> {
15647 if Self::can_cast(syntax.kind()) {
15648 Some(Self { syntax })
15649 } else {
15650 None
15651 }
15652 }
15653 #[inline]
15654 fn syntax(&self) -> &SyntaxNode {
15655 &self.syntax
15656 }
15657}
15658impl AstNode for LikeOption {
15659 #[inline]
15660 fn can_cast(kind: SyntaxKind) -> bool {
15661 kind == SyntaxKind::LIKE_OPTION
15662 }
15663 #[inline]
15664 fn cast(syntax: SyntaxNode) -> Option<Self> {
15665 if Self::can_cast(syntax.kind()) {
15666 Some(Self { syntax })
15667 } else {
15668 None
15669 }
15670 }
15671 #[inline]
15672 fn syntax(&self) -> &SyntaxNode {
15673 &self.syntax
15674 }
15675}
15676impl AstNode for LimitClause {
15677 #[inline]
15678 fn can_cast(kind: SyntaxKind) -> bool {
15679 kind == SyntaxKind::LIMIT_CLAUSE
15680 }
15681 #[inline]
15682 fn cast(syntax: SyntaxNode) -> Option<Self> {
15683 if Self::can_cast(syntax.kind()) {
15684 Some(Self { syntax })
15685 } else {
15686 None
15687 }
15688 }
15689 #[inline]
15690 fn syntax(&self) -> &SyntaxNode {
15691 &self.syntax
15692 }
15693}
15694impl AstNode for Listen {
15695 #[inline]
15696 fn can_cast(kind: SyntaxKind) -> bool {
15697 kind == SyntaxKind::LISTEN
15698 }
15699 #[inline]
15700 fn cast(syntax: SyntaxNode) -> Option<Self> {
15701 if Self::can_cast(syntax.kind()) {
15702 Some(Self { syntax })
15703 } else {
15704 None
15705 }
15706 }
15707 #[inline]
15708 fn syntax(&self) -> &SyntaxNode {
15709 &self.syntax
15710 }
15711}
15712impl AstNode for Literal {
15713 #[inline]
15714 fn can_cast(kind: SyntaxKind) -> bool {
15715 kind == SyntaxKind::LITERAL
15716 }
15717 #[inline]
15718 fn cast(syntax: SyntaxNode) -> Option<Self> {
15719 if Self::can_cast(syntax.kind()) {
15720 Some(Self { syntax })
15721 } else {
15722 None
15723 }
15724 }
15725 #[inline]
15726 fn syntax(&self) -> &SyntaxNode {
15727 &self.syntax
15728 }
15729}
15730impl AstNode for Load {
15731 #[inline]
15732 fn can_cast(kind: SyntaxKind) -> bool {
15733 kind == SyntaxKind::LOAD
15734 }
15735 #[inline]
15736 fn cast(syntax: SyntaxNode) -> Option<Self> {
15737 if Self::can_cast(syntax.kind()) {
15738 Some(Self { syntax })
15739 } else {
15740 None
15741 }
15742 }
15743 #[inline]
15744 fn syntax(&self) -> &SyntaxNode {
15745 &self.syntax
15746 }
15747}
15748impl AstNode for Lock {
15749 #[inline]
15750 fn can_cast(kind: SyntaxKind) -> bool {
15751 kind == SyntaxKind::LOCK
15752 }
15753 #[inline]
15754 fn cast(syntax: SyntaxNode) -> Option<Self> {
15755 if Self::can_cast(syntax.kind()) {
15756 Some(Self { syntax })
15757 } else {
15758 None
15759 }
15760 }
15761 #[inline]
15762 fn syntax(&self) -> &SyntaxNode {
15763 &self.syntax
15764 }
15765}
15766impl AstNode for LockingClause {
15767 #[inline]
15768 fn can_cast(kind: SyntaxKind) -> bool {
15769 kind == SyntaxKind::LOCKING_CLAUSE
15770 }
15771 #[inline]
15772 fn cast(syntax: SyntaxNode) -> Option<Self> {
15773 if Self::can_cast(syntax.kind()) {
15774 Some(Self { syntax })
15775 } else {
15776 None
15777 }
15778 }
15779 #[inline]
15780 fn syntax(&self) -> &SyntaxNode {
15781 &self.syntax
15782 }
15783}
15784impl AstNode for Lteq {
15785 #[inline]
15786 fn can_cast(kind: SyntaxKind) -> bool {
15787 kind == SyntaxKind::LTEQ
15788 }
15789 #[inline]
15790 fn cast(syntax: SyntaxNode) -> Option<Self> {
15791 if Self::can_cast(syntax.kind()) {
15792 Some(Self { syntax })
15793 } else {
15794 None
15795 }
15796 }
15797 #[inline]
15798 fn syntax(&self) -> &SyntaxNode {
15799 &self.syntax
15800 }
15801}
15802impl AstNode for MatchFull {
15803 #[inline]
15804 fn can_cast(kind: SyntaxKind) -> bool {
15805 kind == SyntaxKind::MATCH_FULL
15806 }
15807 #[inline]
15808 fn cast(syntax: SyntaxNode) -> Option<Self> {
15809 if Self::can_cast(syntax.kind()) {
15810 Some(Self { syntax })
15811 } else {
15812 None
15813 }
15814 }
15815 #[inline]
15816 fn syntax(&self) -> &SyntaxNode {
15817 &self.syntax
15818 }
15819}
15820impl AstNode for MatchPartial {
15821 #[inline]
15822 fn can_cast(kind: SyntaxKind) -> bool {
15823 kind == SyntaxKind::MATCH_PARTIAL
15824 }
15825 #[inline]
15826 fn cast(syntax: SyntaxNode) -> Option<Self> {
15827 if Self::can_cast(syntax.kind()) {
15828 Some(Self { syntax })
15829 } else {
15830 None
15831 }
15832 }
15833 #[inline]
15834 fn syntax(&self) -> &SyntaxNode {
15835 &self.syntax
15836 }
15837}
15838impl AstNode for MatchSimple {
15839 #[inline]
15840 fn can_cast(kind: SyntaxKind) -> bool {
15841 kind == SyntaxKind::MATCH_SIMPLE
15842 }
15843 #[inline]
15844 fn cast(syntax: SyntaxNode) -> Option<Self> {
15845 if Self::can_cast(syntax.kind()) {
15846 Some(Self { syntax })
15847 } else {
15848 None
15849 }
15850 }
15851 #[inline]
15852 fn syntax(&self) -> &SyntaxNode {
15853 &self.syntax
15854 }
15855}
15856impl AstNode for Materialized {
15857 #[inline]
15858 fn can_cast(kind: SyntaxKind) -> bool {
15859 kind == SyntaxKind::MATERIALIZED
15860 }
15861 #[inline]
15862 fn cast(syntax: SyntaxNode) -> Option<Self> {
15863 if Self::can_cast(syntax.kind()) {
15864 Some(Self { syntax })
15865 } else {
15866 None
15867 }
15868 }
15869 #[inline]
15870 fn syntax(&self) -> &SyntaxNode {
15871 &self.syntax
15872 }
15873}
15874impl AstNode for Merge {
15875 #[inline]
15876 fn can_cast(kind: SyntaxKind) -> bool {
15877 kind == SyntaxKind::MERGE
15878 }
15879 #[inline]
15880 fn cast(syntax: SyntaxNode) -> Option<Self> {
15881 if Self::can_cast(syntax.kind()) {
15882 Some(Self { syntax })
15883 } else {
15884 None
15885 }
15886 }
15887 #[inline]
15888 fn syntax(&self) -> &SyntaxNode {
15889 &self.syntax
15890 }
15891}
15892impl AstNode for Move {
15893 #[inline]
15894 fn can_cast(kind: SyntaxKind) -> bool {
15895 kind == SyntaxKind::MOVE
15896 }
15897 #[inline]
15898 fn cast(syntax: SyntaxNode) -> Option<Self> {
15899 if Self::can_cast(syntax.kind()) {
15900 Some(Self { syntax })
15901 } else {
15902 None
15903 }
15904 }
15905 #[inline]
15906 fn syntax(&self) -> &SyntaxNode {
15907 &self.syntax
15908 }
15909}
15910impl AstNode for Name {
15911 #[inline]
15912 fn can_cast(kind: SyntaxKind) -> bool {
15913 kind == SyntaxKind::NAME
15914 }
15915 #[inline]
15916 fn cast(syntax: SyntaxNode) -> Option<Self> {
15917 if Self::can_cast(syntax.kind()) {
15918 Some(Self { syntax })
15919 } else {
15920 None
15921 }
15922 }
15923 #[inline]
15924 fn syntax(&self) -> &SyntaxNode {
15925 &self.syntax
15926 }
15927}
15928impl AstNode for NameRef {
15929 #[inline]
15930 fn can_cast(kind: SyntaxKind) -> bool {
15931 kind == SyntaxKind::NAME_REF
15932 }
15933 #[inline]
15934 fn cast(syntax: SyntaxNode) -> Option<Self> {
15935 if Self::can_cast(syntax.kind()) {
15936 Some(Self { syntax })
15937 } else {
15938 None
15939 }
15940 }
15941 #[inline]
15942 fn syntax(&self) -> &SyntaxNode {
15943 &self.syntax
15944 }
15945}
15946impl AstNode for NamedArg {
15947 #[inline]
15948 fn can_cast(kind: SyntaxKind) -> bool {
15949 kind == SyntaxKind::NAMED_ARG
15950 }
15951 #[inline]
15952 fn cast(syntax: SyntaxNode) -> Option<Self> {
15953 if Self::can_cast(syntax.kind()) {
15954 Some(Self { syntax })
15955 } else {
15956 None
15957 }
15958 }
15959 #[inline]
15960 fn syntax(&self) -> &SyntaxNode {
15961 &self.syntax
15962 }
15963}
15964impl AstNode for Neq {
15965 #[inline]
15966 fn can_cast(kind: SyntaxKind) -> bool {
15967 kind == SyntaxKind::NEQ
15968 }
15969 #[inline]
15970 fn cast(syntax: SyntaxNode) -> Option<Self> {
15971 if Self::can_cast(syntax.kind()) {
15972 Some(Self { syntax })
15973 } else {
15974 None
15975 }
15976 }
15977 #[inline]
15978 fn syntax(&self) -> &SyntaxNode {
15979 &self.syntax
15980 }
15981}
15982impl AstNode for Neqb {
15983 #[inline]
15984 fn can_cast(kind: SyntaxKind) -> bool {
15985 kind == SyntaxKind::NEQB
15986 }
15987 #[inline]
15988 fn cast(syntax: SyntaxNode) -> Option<Self> {
15989 if Self::can_cast(syntax.kind()) {
15990 Some(Self { syntax })
15991 } else {
15992 None
15993 }
15994 }
15995 #[inline]
15996 fn syntax(&self) -> &SyntaxNode {
15997 &self.syntax
15998 }
15999}
16000impl AstNode for NoAction {
16001 #[inline]
16002 fn can_cast(kind: SyntaxKind) -> bool {
16003 kind == SyntaxKind::NO_ACTION
16004 }
16005 #[inline]
16006 fn cast(syntax: SyntaxNode) -> Option<Self> {
16007 if Self::can_cast(syntax.kind()) {
16008 Some(Self { syntax })
16009 } else {
16010 None
16011 }
16012 }
16013 #[inline]
16014 fn syntax(&self) -> &SyntaxNode {
16015 &self.syntax
16016 }
16017}
16018impl AstNode for NoForceRls {
16019 #[inline]
16020 fn can_cast(kind: SyntaxKind) -> bool {
16021 kind == SyntaxKind::NO_FORCE_RLS
16022 }
16023 #[inline]
16024 fn cast(syntax: SyntaxNode) -> Option<Self> {
16025 if Self::can_cast(syntax.kind()) {
16026 Some(Self { syntax })
16027 } else {
16028 None
16029 }
16030 }
16031 #[inline]
16032 fn syntax(&self) -> &SyntaxNode {
16033 &self.syntax
16034 }
16035}
16036impl AstNode for NoInherit {
16037 #[inline]
16038 fn can_cast(kind: SyntaxKind) -> bool {
16039 kind == SyntaxKind::NO_INHERIT
16040 }
16041 #[inline]
16042 fn cast(syntax: SyntaxNode) -> Option<Self> {
16043 if Self::can_cast(syntax.kind()) {
16044 Some(Self { syntax })
16045 } else {
16046 None
16047 }
16048 }
16049 #[inline]
16050 fn syntax(&self) -> &SyntaxNode {
16051 &self.syntax
16052 }
16053}
16054impl AstNode for NonStandardParam {
16055 #[inline]
16056 fn can_cast(kind: SyntaxKind) -> bool {
16057 kind == SyntaxKind::NON_STANDARD_PARAM
16058 }
16059 #[inline]
16060 fn cast(syntax: SyntaxNode) -> Option<Self> {
16061 if Self::can_cast(syntax.kind()) {
16062 Some(Self { syntax })
16063 } else {
16064 None
16065 }
16066 }
16067 #[inline]
16068 fn syntax(&self) -> &SyntaxNode {
16069 &self.syntax
16070 }
16071}
16072impl AstNode for NotDeferrable {
16073 #[inline]
16074 fn can_cast(kind: SyntaxKind) -> bool {
16075 kind == SyntaxKind::NOT_DEFERRABLE
16076 }
16077 #[inline]
16078 fn cast(syntax: SyntaxNode) -> Option<Self> {
16079 if Self::can_cast(syntax.kind()) {
16080 Some(Self { syntax })
16081 } else {
16082 None
16083 }
16084 }
16085 #[inline]
16086 fn syntax(&self) -> &SyntaxNode {
16087 &self.syntax
16088 }
16089}
16090impl AstNode for NotDeferrableConstraintOption {
16091 #[inline]
16092 fn can_cast(kind: SyntaxKind) -> bool {
16093 kind == SyntaxKind::NOT_DEFERRABLE_CONSTRAINT_OPTION
16094 }
16095 #[inline]
16096 fn cast(syntax: SyntaxNode) -> Option<Self> {
16097 if Self::can_cast(syntax.kind()) {
16098 Some(Self { syntax })
16099 } else {
16100 None
16101 }
16102 }
16103 #[inline]
16104 fn syntax(&self) -> &SyntaxNode {
16105 &self.syntax
16106 }
16107}
16108impl AstNode for NotEnforced {
16109 #[inline]
16110 fn can_cast(kind: SyntaxKind) -> bool {
16111 kind == SyntaxKind::NOT_ENFORCED
16112 }
16113 #[inline]
16114 fn cast(syntax: SyntaxNode) -> Option<Self> {
16115 if Self::can_cast(syntax.kind()) {
16116 Some(Self { syntax })
16117 } else {
16118 None
16119 }
16120 }
16121 #[inline]
16122 fn syntax(&self) -> &SyntaxNode {
16123 &self.syntax
16124 }
16125}
16126impl AstNode for NotIlike {
16127 #[inline]
16128 fn can_cast(kind: SyntaxKind) -> bool {
16129 kind == SyntaxKind::NOT_ILIKE
16130 }
16131 #[inline]
16132 fn cast(syntax: SyntaxNode) -> Option<Self> {
16133 if Self::can_cast(syntax.kind()) {
16134 Some(Self { syntax })
16135 } else {
16136 None
16137 }
16138 }
16139 #[inline]
16140 fn syntax(&self) -> &SyntaxNode {
16141 &self.syntax
16142 }
16143}
16144impl AstNode for NotIn {
16145 #[inline]
16146 fn can_cast(kind: SyntaxKind) -> bool {
16147 kind == SyntaxKind::NOT_IN
16148 }
16149 #[inline]
16150 fn cast(syntax: SyntaxNode) -> Option<Self> {
16151 if Self::can_cast(syntax.kind()) {
16152 Some(Self { syntax })
16153 } else {
16154 None
16155 }
16156 }
16157 #[inline]
16158 fn syntax(&self) -> &SyntaxNode {
16159 &self.syntax
16160 }
16161}
16162impl AstNode for NotLike {
16163 #[inline]
16164 fn can_cast(kind: SyntaxKind) -> bool {
16165 kind == SyntaxKind::NOT_LIKE
16166 }
16167 #[inline]
16168 fn cast(syntax: SyntaxNode) -> Option<Self> {
16169 if Self::can_cast(syntax.kind()) {
16170 Some(Self { syntax })
16171 } else {
16172 None
16173 }
16174 }
16175 #[inline]
16176 fn syntax(&self) -> &SyntaxNode {
16177 &self.syntax
16178 }
16179}
16180impl AstNode for NotMaterialized {
16181 #[inline]
16182 fn can_cast(kind: SyntaxKind) -> bool {
16183 kind == SyntaxKind::NOT_MATERIALIZED
16184 }
16185 #[inline]
16186 fn cast(syntax: SyntaxNode) -> Option<Self> {
16187 if Self::can_cast(syntax.kind()) {
16188 Some(Self { syntax })
16189 } else {
16190 None
16191 }
16192 }
16193 #[inline]
16194 fn syntax(&self) -> &SyntaxNode {
16195 &self.syntax
16196 }
16197}
16198impl AstNode for NotNullConstraint {
16199 #[inline]
16200 fn can_cast(kind: SyntaxKind) -> bool {
16201 kind == SyntaxKind::NOT_NULL_CONSTRAINT
16202 }
16203 #[inline]
16204 fn cast(syntax: SyntaxNode) -> Option<Self> {
16205 if Self::can_cast(syntax.kind()) {
16206 Some(Self { syntax })
16207 } else {
16208 None
16209 }
16210 }
16211 #[inline]
16212 fn syntax(&self) -> &SyntaxNode {
16213 &self.syntax
16214 }
16215}
16216impl AstNode for NotOf {
16217 #[inline]
16218 fn can_cast(kind: SyntaxKind) -> bool {
16219 kind == SyntaxKind::NOT_OF
16220 }
16221 #[inline]
16222 fn cast(syntax: SyntaxNode) -> Option<Self> {
16223 if Self::can_cast(syntax.kind()) {
16224 Some(Self { syntax })
16225 } else {
16226 None
16227 }
16228 }
16229 #[inline]
16230 fn syntax(&self) -> &SyntaxNode {
16231 &self.syntax
16232 }
16233}
16234impl AstNode for NotSimilarTo {
16235 #[inline]
16236 fn can_cast(kind: SyntaxKind) -> bool {
16237 kind == SyntaxKind::NOT_SIMILAR_TO
16238 }
16239 #[inline]
16240 fn cast(syntax: SyntaxNode) -> Option<Self> {
16241 if Self::can_cast(syntax.kind()) {
16242 Some(Self { syntax })
16243 } else {
16244 None
16245 }
16246 }
16247 #[inline]
16248 fn syntax(&self) -> &SyntaxNode {
16249 &self.syntax
16250 }
16251}
16252impl AstNode for NotValid {
16253 #[inline]
16254 fn can_cast(kind: SyntaxKind) -> bool {
16255 kind == SyntaxKind::NOT_VALID
16256 }
16257 #[inline]
16258 fn cast(syntax: SyntaxNode) -> Option<Self> {
16259 if Self::can_cast(syntax.kind()) {
16260 Some(Self { syntax })
16261 } else {
16262 None
16263 }
16264 }
16265 #[inline]
16266 fn syntax(&self) -> &SyntaxNode {
16267 &self.syntax
16268 }
16269}
16270impl AstNode for Notify {
16271 #[inline]
16272 fn can_cast(kind: SyntaxKind) -> bool {
16273 kind == SyntaxKind::NOTIFY
16274 }
16275 #[inline]
16276 fn cast(syntax: SyntaxNode) -> Option<Self> {
16277 if Self::can_cast(syntax.kind()) {
16278 Some(Self { syntax })
16279 } else {
16280 None
16281 }
16282 }
16283 #[inline]
16284 fn syntax(&self) -> &SyntaxNode {
16285 &self.syntax
16286 }
16287}
16288impl AstNode for NullConstraint {
16289 #[inline]
16290 fn can_cast(kind: SyntaxKind) -> bool {
16291 kind == SyntaxKind::NULL_CONSTRAINT
16292 }
16293 #[inline]
16294 fn cast(syntax: SyntaxNode) -> Option<Self> {
16295 if Self::can_cast(syntax.kind()) {
16296 Some(Self { syntax })
16297 } else {
16298 None
16299 }
16300 }
16301 #[inline]
16302 fn syntax(&self) -> &SyntaxNode {
16303 &self.syntax
16304 }
16305}
16306impl AstNode for NullsDistinct {
16307 #[inline]
16308 fn can_cast(kind: SyntaxKind) -> bool {
16309 kind == SyntaxKind::NULLS_DISTINCT
16310 }
16311 #[inline]
16312 fn cast(syntax: SyntaxNode) -> Option<Self> {
16313 if Self::can_cast(syntax.kind()) {
16314 Some(Self { syntax })
16315 } else {
16316 None
16317 }
16318 }
16319 #[inline]
16320 fn syntax(&self) -> &SyntaxNode {
16321 &self.syntax
16322 }
16323}
16324impl AstNode for NullsFirst {
16325 #[inline]
16326 fn can_cast(kind: SyntaxKind) -> bool {
16327 kind == SyntaxKind::NULLS_FIRST
16328 }
16329 #[inline]
16330 fn cast(syntax: SyntaxNode) -> Option<Self> {
16331 if Self::can_cast(syntax.kind()) {
16332 Some(Self { syntax })
16333 } else {
16334 None
16335 }
16336 }
16337 #[inline]
16338 fn syntax(&self) -> &SyntaxNode {
16339 &self.syntax
16340 }
16341}
16342impl AstNode for NullsLast {
16343 #[inline]
16344 fn can_cast(kind: SyntaxKind) -> bool {
16345 kind == SyntaxKind::NULLS_LAST
16346 }
16347 #[inline]
16348 fn cast(syntax: SyntaxNode) -> Option<Self> {
16349 if Self::can_cast(syntax.kind()) {
16350 Some(Self { syntax })
16351 } else {
16352 None
16353 }
16354 }
16355 #[inline]
16356 fn syntax(&self) -> &SyntaxNode {
16357 &self.syntax
16358 }
16359}
16360impl AstNode for NullsNotDistinct {
16361 #[inline]
16362 fn can_cast(kind: SyntaxKind) -> bool {
16363 kind == SyntaxKind::NULLS_NOT_DISTINCT
16364 }
16365 #[inline]
16366 fn cast(syntax: SyntaxNode) -> Option<Self> {
16367 if Self::can_cast(syntax.kind()) {
16368 Some(Self { syntax })
16369 } else {
16370 None
16371 }
16372 }
16373 #[inline]
16374 fn syntax(&self) -> &SyntaxNode {
16375 &self.syntax
16376 }
16377}
16378impl AstNode for OfType {
16379 #[inline]
16380 fn can_cast(kind: SyntaxKind) -> bool {
16381 kind == SyntaxKind::OF_TYPE
16382 }
16383 #[inline]
16384 fn cast(syntax: SyntaxNode) -> Option<Self> {
16385 if Self::can_cast(syntax.kind()) {
16386 Some(Self { syntax })
16387 } else {
16388 None
16389 }
16390 }
16391 #[inline]
16392 fn syntax(&self) -> &SyntaxNode {
16393 &self.syntax
16394 }
16395}
16396impl AstNode for OffsetClause {
16397 #[inline]
16398 fn can_cast(kind: SyntaxKind) -> bool {
16399 kind == SyntaxKind::OFFSET_CLAUSE
16400 }
16401 #[inline]
16402 fn cast(syntax: SyntaxNode) -> Option<Self> {
16403 if Self::can_cast(syntax.kind()) {
16404 Some(Self { syntax })
16405 } else {
16406 None
16407 }
16408 }
16409 #[inline]
16410 fn syntax(&self) -> &SyntaxNode {
16411 &self.syntax
16412 }
16413}
16414impl AstNode for OnClause {
16415 #[inline]
16416 fn can_cast(kind: SyntaxKind) -> bool {
16417 kind == SyntaxKind::ON_CLAUSE
16418 }
16419 #[inline]
16420 fn cast(syntax: SyntaxNode) -> Option<Self> {
16421 if Self::can_cast(syntax.kind()) {
16422 Some(Self { syntax })
16423 } else {
16424 None
16425 }
16426 }
16427 #[inline]
16428 fn syntax(&self) -> &SyntaxNode {
16429 &self.syntax
16430 }
16431}
16432impl AstNode for OnCommit {
16433 #[inline]
16434 fn can_cast(kind: SyntaxKind) -> bool {
16435 kind == SyntaxKind::ON_COMMIT
16436 }
16437 #[inline]
16438 fn cast(syntax: SyntaxNode) -> Option<Self> {
16439 if Self::can_cast(syntax.kind()) {
16440 Some(Self { syntax })
16441 } else {
16442 None
16443 }
16444 }
16445 #[inline]
16446 fn syntax(&self) -> &SyntaxNode {
16447 &self.syntax
16448 }
16449}
16450impl AstNode for OnDeleteAction {
16451 #[inline]
16452 fn can_cast(kind: SyntaxKind) -> bool {
16453 kind == SyntaxKind::ON_DELETE_ACTION
16454 }
16455 #[inline]
16456 fn cast(syntax: SyntaxNode) -> Option<Self> {
16457 if Self::can_cast(syntax.kind()) {
16458 Some(Self { syntax })
16459 } else {
16460 None
16461 }
16462 }
16463 #[inline]
16464 fn syntax(&self) -> &SyntaxNode {
16465 &self.syntax
16466 }
16467}
16468impl AstNode for OnUpdateAction {
16469 #[inline]
16470 fn can_cast(kind: SyntaxKind) -> bool {
16471 kind == SyntaxKind::ON_UPDATE_ACTION
16472 }
16473 #[inline]
16474 fn cast(syntax: SyntaxNode) -> Option<Self> {
16475 if Self::can_cast(syntax.kind()) {
16476 Some(Self { syntax })
16477 } else {
16478 None
16479 }
16480 }
16481 #[inline]
16482 fn syntax(&self) -> &SyntaxNode {
16483 &self.syntax
16484 }
16485}
16486impl AstNode for Op {
16487 #[inline]
16488 fn can_cast(kind: SyntaxKind) -> bool {
16489 kind == SyntaxKind::OP
16490 }
16491 #[inline]
16492 fn cast(syntax: SyntaxNode) -> Option<Self> {
16493 if Self::can_cast(syntax.kind()) {
16494 Some(Self { syntax })
16495 } else {
16496 None
16497 }
16498 }
16499 #[inline]
16500 fn syntax(&self) -> &SyntaxNode {
16501 &self.syntax
16502 }
16503}
16504impl AstNode for OperatorCall {
16505 #[inline]
16506 fn can_cast(kind: SyntaxKind) -> bool {
16507 kind == SyntaxKind::OPERATOR_CALL
16508 }
16509 #[inline]
16510 fn cast(syntax: SyntaxNode) -> Option<Self> {
16511 if Self::can_cast(syntax.kind()) {
16512 Some(Self { syntax })
16513 } else {
16514 None
16515 }
16516 }
16517 #[inline]
16518 fn syntax(&self) -> &SyntaxNode {
16519 &self.syntax
16520 }
16521}
16522impl AstNode for OptionsList {
16523 #[inline]
16524 fn can_cast(kind: SyntaxKind) -> bool {
16525 kind == SyntaxKind::OPTIONS_LIST
16526 }
16527 #[inline]
16528 fn cast(syntax: SyntaxNode) -> Option<Self> {
16529 if Self::can_cast(syntax.kind()) {
16530 Some(Self { syntax })
16531 } else {
16532 None
16533 }
16534 }
16535 #[inline]
16536 fn syntax(&self) -> &SyntaxNode {
16537 &self.syntax
16538 }
16539}
16540impl AstNode for OrReplace {
16541 #[inline]
16542 fn can_cast(kind: SyntaxKind) -> bool {
16543 kind == SyntaxKind::OR_REPLACE
16544 }
16545 #[inline]
16546 fn cast(syntax: SyntaxNode) -> Option<Self> {
16547 if Self::can_cast(syntax.kind()) {
16548 Some(Self { syntax })
16549 } else {
16550 None
16551 }
16552 }
16553 #[inline]
16554 fn syntax(&self) -> &SyntaxNode {
16555 &self.syntax
16556 }
16557}
16558impl AstNode for OrderByClause {
16559 #[inline]
16560 fn can_cast(kind: SyntaxKind) -> bool {
16561 kind == SyntaxKind::ORDER_BY_CLAUSE
16562 }
16563 #[inline]
16564 fn cast(syntax: SyntaxNode) -> Option<Self> {
16565 if Self::can_cast(syntax.kind()) {
16566 Some(Self { syntax })
16567 } else {
16568 None
16569 }
16570 }
16571 #[inline]
16572 fn syntax(&self) -> &SyntaxNode {
16573 &self.syntax
16574 }
16575}
16576impl AstNode for OverClause {
16577 #[inline]
16578 fn can_cast(kind: SyntaxKind) -> bool {
16579 kind == SyntaxKind::OVER_CLAUSE
16580 }
16581 #[inline]
16582 fn cast(syntax: SyntaxNode) -> Option<Self> {
16583 if Self::can_cast(syntax.kind()) {
16584 Some(Self { syntax })
16585 } else {
16586 None
16587 }
16588 }
16589 #[inline]
16590 fn syntax(&self) -> &SyntaxNode {
16591 &self.syntax
16592 }
16593}
16594impl AstNode for OwnerTo {
16595 #[inline]
16596 fn can_cast(kind: SyntaxKind) -> bool {
16597 kind == SyntaxKind::OWNER_TO
16598 }
16599 #[inline]
16600 fn cast(syntax: SyntaxNode) -> Option<Self> {
16601 if Self::can_cast(syntax.kind()) {
16602 Some(Self { syntax })
16603 } else {
16604 None
16605 }
16606 }
16607 #[inline]
16608 fn syntax(&self) -> &SyntaxNode {
16609 &self.syntax
16610 }
16611}
16612impl AstNode for ParallelFuncOption {
16613 #[inline]
16614 fn can_cast(kind: SyntaxKind) -> bool {
16615 kind == SyntaxKind::PARALLEL_FUNC_OPTION
16616 }
16617 #[inline]
16618 fn cast(syntax: SyntaxNode) -> Option<Self> {
16619 if Self::can_cast(syntax.kind()) {
16620 Some(Self { syntax })
16621 } else {
16622 None
16623 }
16624 }
16625 #[inline]
16626 fn syntax(&self) -> &SyntaxNode {
16627 &self.syntax
16628 }
16629}
16630impl AstNode for Param {
16631 #[inline]
16632 fn can_cast(kind: SyntaxKind) -> bool {
16633 kind == SyntaxKind::PARAM
16634 }
16635 #[inline]
16636 fn cast(syntax: SyntaxNode) -> Option<Self> {
16637 if Self::can_cast(syntax.kind()) {
16638 Some(Self { syntax })
16639 } else {
16640 None
16641 }
16642 }
16643 #[inline]
16644 fn syntax(&self) -> &SyntaxNode {
16645 &self.syntax
16646 }
16647}
16648impl AstNode for ParamDefault {
16649 #[inline]
16650 fn can_cast(kind: SyntaxKind) -> bool {
16651 kind == SyntaxKind::PARAM_DEFAULT
16652 }
16653 #[inline]
16654 fn cast(syntax: SyntaxNode) -> Option<Self> {
16655 if Self::can_cast(syntax.kind()) {
16656 Some(Self { syntax })
16657 } else {
16658 None
16659 }
16660 }
16661 #[inline]
16662 fn syntax(&self) -> &SyntaxNode {
16663 &self.syntax
16664 }
16665}
16666impl AstNode for ParamIn {
16667 #[inline]
16668 fn can_cast(kind: SyntaxKind) -> bool {
16669 kind == SyntaxKind::PARAM_IN
16670 }
16671 #[inline]
16672 fn cast(syntax: SyntaxNode) -> Option<Self> {
16673 if Self::can_cast(syntax.kind()) {
16674 Some(Self { syntax })
16675 } else {
16676 None
16677 }
16678 }
16679 #[inline]
16680 fn syntax(&self) -> &SyntaxNode {
16681 &self.syntax
16682 }
16683}
16684impl AstNode for ParamInOut {
16685 #[inline]
16686 fn can_cast(kind: SyntaxKind) -> bool {
16687 kind == SyntaxKind::PARAM_IN_OUT
16688 }
16689 #[inline]
16690 fn cast(syntax: SyntaxNode) -> Option<Self> {
16691 if Self::can_cast(syntax.kind()) {
16692 Some(Self { syntax })
16693 } else {
16694 None
16695 }
16696 }
16697 #[inline]
16698 fn syntax(&self) -> &SyntaxNode {
16699 &self.syntax
16700 }
16701}
16702impl AstNode for ParamList {
16703 #[inline]
16704 fn can_cast(kind: SyntaxKind) -> bool {
16705 kind == SyntaxKind::PARAM_LIST
16706 }
16707 #[inline]
16708 fn cast(syntax: SyntaxNode) -> Option<Self> {
16709 if Self::can_cast(syntax.kind()) {
16710 Some(Self { syntax })
16711 } else {
16712 None
16713 }
16714 }
16715 #[inline]
16716 fn syntax(&self) -> &SyntaxNode {
16717 &self.syntax
16718 }
16719}
16720impl AstNode for ParamOut {
16721 #[inline]
16722 fn can_cast(kind: SyntaxKind) -> bool {
16723 kind == SyntaxKind::PARAM_OUT
16724 }
16725 #[inline]
16726 fn cast(syntax: SyntaxNode) -> Option<Self> {
16727 if Self::can_cast(syntax.kind()) {
16728 Some(Self { syntax })
16729 } else {
16730 None
16731 }
16732 }
16733 #[inline]
16734 fn syntax(&self) -> &SyntaxNode {
16735 &self.syntax
16736 }
16737}
16738impl AstNode for ParamVariadic {
16739 #[inline]
16740 fn can_cast(kind: SyntaxKind) -> bool {
16741 kind == SyntaxKind::PARAM_VARIADIC
16742 }
16743 #[inline]
16744 fn cast(syntax: SyntaxNode) -> Option<Self> {
16745 if Self::can_cast(syntax.kind()) {
16746 Some(Self { syntax })
16747 } else {
16748 None
16749 }
16750 }
16751 #[inline]
16752 fn syntax(&self) -> &SyntaxNode {
16753 &self.syntax
16754 }
16755}
16756impl AstNode for ParenExpr {
16757 #[inline]
16758 fn can_cast(kind: SyntaxKind) -> bool {
16759 kind == SyntaxKind::PAREN_EXPR
16760 }
16761 #[inline]
16762 fn cast(syntax: SyntaxNode) -> Option<Self> {
16763 if Self::can_cast(syntax.kind()) {
16764 Some(Self { syntax })
16765 } else {
16766 None
16767 }
16768 }
16769 #[inline]
16770 fn syntax(&self) -> &SyntaxNode {
16771 &self.syntax
16772 }
16773}
16774impl AstNode for ParenSelect {
16775 #[inline]
16776 fn can_cast(kind: SyntaxKind) -> bool {
16777 kind == SyntaxKind::PAREN_SELECT
16778 }
16779 #[inline]
16780 fn cast(syntax: SyntaxNode) -> Option<Self> {
16781 if Self::can_cast(syntax.kind()) {
16782 Some(Self { syntax })
16783 } else {
16784 None
16785 }
16786 }
16787 #[inline]
16788 fn syntax(&self) -> &SyntaxNode {
16789 &self.syntax
16790 }
16791}
16792impl AstNode for PartitionBy {
16793 #[inline]
16794 fn can_cast(kind: SyntaxKind) -> bool {
16795 kind == SyntaxKind::PARTITION_BY
16796 }
16797 #[inline]
16798 fn cast(syntax: SyntaxNode) -> Option<Self> {
16799 if Self::can_cast(syntax.kind()) {
16800 Some(Self { syntax })
16801 } else {
16802 None
16803 }
16804 }
16805 #[inline]
16806 fn syntax(&self) -> &SyntaxNode {
16807 &self.syntax
16808 }
16809}
16810impl AstNode for PartitionDefault {
16811 #[inline]
16812 fn can_cast(kind: SyntaxKind) -> bool {
16813 kind == SyntaxKind::PARTITION_DEFAULT
16814 }
16815 #[inline]
16816 fn cast(syntax: SyntaxNode) -> Option<Self> {
16817 if Self::can_cast(syntax.kind()) {
16818 Some(Self { syntax })
16819 } else {
16820 None
16821 }
16822 }
16823 #[inline]
16824 fn syntax(&self) -> &SyntaxNode {
16825 &self.syntax
16826 }
16827}
16828impl AstNode for PartitionForValuesFrom {
16829 #[inline]
16830 fn can_cast(kind: SyntaxKind) -> bool {
16831 kind == SyntaxKind::PARTITION_FOR_VALUES_FROM
16832 }
16833 #[inline]
16834 fn cast(syntax: SyntaxNode) -> Option<Self> {
16835 if Self::can_cast(syntax.kind()) {
16836 Some(Self { syntax })
16837 } else {
16838 None
16839 }
16840 }
16841 #[inline]
16842 fn syntax(&self) -> &SyntaxNode {
16843 &self.syntax
16844 }
16845}
16846impl AstNode for PartitionForValuesIn {
16847 #[inline]
16848 fn can_cast(kind: SyntaxKind) -> bool {
16849 kind == SyntaxKind::PARTITION_FOR_VALUES_IN
16850 }
16851 #[inline]
16852 fn cast(syntax: SyntaxNode) -> Option<Self> {
16853 if Self::can_cast(syntax.kind()) {
16854 Some(Self { syntax })
16855 } else {
16856 None
16857 }
16858 }
16859 #[inline]
16860 fn syntax(&self) -> &SyntaxNode {
16861 &self.syntax
16862 }
16863}
16864impl AstNode for PartitionForValuesWith {
16865 #[inline]
16866 fn can_cast(kind: SyntaxKind) -> bool {
16867 kind == SyntaxKind::PARTITION_FOR_VALUES_WITH
16868 }
16869 #[inline]
16870 fn cast(syntax: SyntaxNode) -> Option<Self> {
16871 if Self::can_cast(syntax.kind()) {
16872 Some(Self { syntax })
16873 } else {
16874 None
16875 }
16876 }
16877 #[inline]
16878 fn syntax(&self) -> &SyntaxNode {
16879 &self.syntax
16880 }
16881}
16882impl AstNode for PartitionItem {
16883 #[inline]
16884 fn can_cast(kind: SyntaxKind) -> bool {
16885 kind == SyntaxKind::PARTITION_ITEM
16886 }
16887 #[inline]
16888 fn cast(syntax: SyntaxNode) -> Option<Self> {
16889 if Self::can_cast(syntax.kind()) {
16890 Some(Self { syntax })
16891 } else {
16892 None
16893 }
16894 }
16895 #[inline]
16896 fn syntax(&self) -> &SyntaxNode {
16897 &self.syntax
16898 }
16899}
16900impl AstNode for PartitionOf {
16901 #[inline]
16902 fn can_cast(kind: SyntaxKind) -> bool {
16903 kind == SyntaxKind::PARTITION_OF
16904 }
16905 #[inline]
16906 fn cast(syntax: SyntaxNode) -> Option<Self> {
16907 if Self::can_cast(syntax.kind()) {
16908 Some(Self { syntax })
16909 } else {
16910 None
16911 }
16912 }
16913 #[inline]
16914 fn syntax(&self) -> &SyntaxNode {
16915 &self.syntax
16916 }
16917}
16918impl AstNode for Path {
16919 #[inline]
16920 fn can_cast(kind: SyntaxKind) -> bool {
16921 kind == SyntaxKind::PATH
16922 }
16923 #[inline]
16924 fn cast(syntax: SyntaxNode) -> Option<Self> {
16925 if Self::can_cast(syntax.kind()) {
16926 Some(Self { syntax })
16927 } else {
16928 None
16929 }
16930 }
16931 #[inline]
16932 fn syntax(&self) -> &SyntaxNode {
16933 &self.syntax
16934 }
16935}
16936impl AstNode for PathSegment {
16937 #[inline]
16938 fn can_cast(kind: SyntaxKind) -> bool {
16939 kind == SyntaxKind::PATH_SEGMENT
16940 }
16941 #[inline]
16942 fn cast(syntax: SyntaxNode) -> Option<Self> {
16943 if Self::can_cast(syntax.kind()) {
16944 Some(Self { syntax })
16945 } else {
16946 None
16947 }
16948 }
16949 #[inline]
16950 fn syntax(&self) -> &SyntaxNode {
16951 &self.syntax
16952 }
16953}
16954impl AstNode for PathType {
16955 #[inline]
16956 fn can_cast(kind: SyntaxKind) -> bool {
16957 kind == SyntaxKind::PATH_TYPE
16958 }
16959 #[inline]
16960 fn cast(syntax: SyntaxNode) -> Option<Self> {
16961 if Self::can_cast(syntax.kind()) {
16962 Some(Self { syntax })
16963 } else {
16964 None
16965 }
16966 }
16967 #[inline]
16968 fn syntax(&self) -> &SyntaxNode {
16969 &self.syntax
16970 }
16971}
16972impl AstNode for PercentType {
16973 #[inline]
16974 fn can_cast(kind: SyntaxKind) -> bool {
16975 kind == SyntaxKind::PERCENT_TYPE
16976 }
16977 #[inline]
16978 fn cast(syntax: SyntaxNode) -> Option<Self> {
16979 if Self::can_cast(syntax.kind()) {
16980 Some(Self { syntax })
16981 } else {
16982 None
16983 }
16984 }
16985 #[inline]
16986 fn syntax(&self) -> &SyntaxNode {
16987 &self.syntax
16988 }
16989}
16990impl AstNode for PercentTypeClause {
16991 #[inline]
16992 fn can_cast(kind: SyntaxKind) -> bool {
16993 kind == SyntaxKind::PERCENT_TYPE_CLAUSE
16994 }
16995 #[inline]
16996 fn cast(syntax: SyntaxNode) -> Option<Self> {
16997 if Self::can_cast(syntax.kind()) {
16998 Some(Self { syntax })
16999 } else {
17000 None
17001 }
17002 }
17003 #[inline]
17004 fn syntax(&self) -> &SyntaxNode {
17005 &self.syntax
17006 }
17007}
17008impl AstNode for PostfixExpr {
17009 #[inline]
17010 fn can_cast(kind: SyntaxKind) -> bool {
17011 kind == SyntaxKind::POSTFIX_EXPR
17012 }
17013 #[inline]
17014 fn cast(syntax: SyntaxNode) -> Option<Self> {
17015 if Self::can_cast(syntax.kind()) {
17016 Some(Self { syntax })
17017 } else {
17018 None
17019 }
17020 }
17021 #[inline]
17022 fn syntax(&self) -> &SyntaxNode {
17023 &self.syntax
17024 }
17025}
17026impl AstNode for PrefixExpr {
17027 #[inline]
17028 fn can_cast(kind: SyntaxKind) -> bool {
17029 kind == SyntaxKind::PREFIX_EXPR
17030 }
17031 #[inline]
17032 fn cast(syntax: SyntaxNode) -> Option<Self> {
17033 if Self::can_cast(syntax.kind()) {
17034 Some(Self { syntax })
17035 } else {
17036 None
17037 }
17038 }
17039 #[inline]
17040 fn syntax(&self) -> &SyntaxNode {
17041 &self.syntax
17042 }
17043}
17044impl AstNode for Prepare {
17045 #[inline]
17046 fn can_cast(kind: SyntaxKind) -> bool {
17047 kind == SyntaxKind::PREPARE
17048 }
17049 #[inline]
17050 fn cast(syntax: SyntaxNode) -> Option<Self> {
17051 if Self::can_cast(syntax.kind()) {
17052 Some(Self { syntax })
17053 } else {
17054 None
17055 }
17056 }
17057 #[inline]
17058 fn syntax(&self) -> &SyntaxNode {
17059 &self.syntax
17060 }
17061}
17062impl AstNode for PrepareTransaction {
17063 #[inline]
17064 fn can_cast(kind: SyntaxKind) -> bool {
17065 kind == SyntaxKind::PREPARE_TRANSACTION
17066 }
17067 #[inline]
17068 fn cast(syntax: SyntaxNode) -> Option<Self> {
17069 if Self::can_cast(syntax.kind()) {
17070 Some(Self { syntax })
17071 } else {
17072 None
17073 }
17074 }
17075 #[inline]
17076 fn syntax(&self) -> &SyntaxNode {
17077 &self.syntax
17078 }
17079}
17080impl AstNode for PreserveRows {
17081 #[inline]
17082 fn can_cast(kind: SyntaxKind) -> bool {
17083 kind == SyntaxKind::PRESERVE_ROWS
17084 }
17085 #[inline]
17086 fn cast(syntax: SyntaxNode) -> Option<Self> {
17087 if Self::can_cast(syntax.kind()) {
17088 Some(Self { syntax })
17089 } else {
17090 None
17091 }
17092 }
17093 #[inline]
17094 fn syntax(&self) -> &SyntaxNode {
17095 &self.syntax
17096 }
17097}
17098impl AstNode for PrimaryKeyConstraint {
17099 #[inline]
17100 fn can_cast(kind: SyntaxKind) -> bool {
17101 kind == SyntaxKind::PRIMARY_KEY_CONSTRAINT
17102 }
17103 #[inline]
17104 fn cast(syntax: SyntaxNode) -> Option<Self> {
17105 if Self::can_cast(syntax.kind()) {
17106 Some(Self { syntax })
17107 } else {
17108 None
17109 }
17110 }
17111 #[inline]
17112 fn syntax(&self) -> &SyntaxNode {
17113 &self.syntax
17114 }
17115}
17116impl AstNode for ReadCommitted {
17117 #[inline]
17118 fn can_cast(kind: SyntaxKind) -> bool {
17119 kind == SyntaxKind::READ_COMMITTED
17120 }
17121 #[inline]
17122 fn cast(syntax: SyntaxNode) -> Option<Self> {
17123 if Self::can_cast(syntax.kind()) {
17124 Some(Self { syntax })
17125 } else {
17126 None
17127 }
17128 }
17129 #[inline]
17130 fn syntax(&self) -> &SyntaxNode {
17131 &self.syntax
17132 }
17133}
17134impl AstNode for ReadOnly {
17135 #[inline]
17136 fn can_cast(kind: SyntaxKind) -> bool {
17137 kind == SyntaxKind::READ_ONLY
17138 }
17139 #[inline]
17140 fn cast(syntax: SyntaxNode) -> Option<Self> {
17141 if Self::can_cast(syntax.kind()) {
17142 Some(Self { syntax })
17143 } else {
17144 None
17145 }
17146 }
17147 #[inline]
17148 fn syntax(&self) -> &SyntaxNode {
17149 &self.syntax
17150 }
17151}
17152impl AstNode for ReadUncommitted {
17153 #[inline]
17154 fn can_cast(kind: SyntaxKind) -> bool {
17155 kind == SyntaxKind::READ_UNCOMMITTED
17156 }
17157 #[inline]
17158 fn cast(syntax: SyntaxNode) -> Option<Self> {
17159 if Self::can_cast(syntax.kind()) {
17160 Some(Self { syntax })
17161 } else {
17162 None
17163 }
17164 }
17165 #[inline]
17166 fn syntax(&self) -> &SyntaxNode {
17167 &self.syntax
17168 }
17169}
17170impl AstNode for ReadWrite {
17171 #[inline]
17172 fn can_cast(kind: SyntaxKind) -> bool {
17173 kind == SyntaxKind::READ_WRITE
17174 }
17175 #[inline]
17176 fn cast(syntax: SyntaxNode) -> Option<Self> {
17177 if Self::can_cast(syntax.kind()) {
17178 Some(Self { syntax })
17179 } else {
17180 None
17181 }
17182 }
17183 #[inline]
17184 fn syntax(&self) -> &SyntaxNode {
17185 &self.syntax
17186 }
17187}
17188impl AstNode for Reassign {
17189 #[inline]
17190 fn can_cast(kind: SyntaxKind) -> bool {
17191 kind == SyntaxKind::REASSIGN
17192 }
17193 #[inline]
17194 fn cast(syntax: SyntaxNode) -> Option<Self> {
17195 if Self::can_cast(syntax.kind()) {
17196 Some(Self { syntax })
17197 } else {
17198 None
17199 }
17200 }
17201 #[inline]
17202 fn syntax(&self) -> &SyntaxNode {
17203 &self.syntax
17204 }
17205}
17206impl AstNode for ReferencesConstraint {
17207 #[inline]
17208 fn can_cast(kind: SyntaxKind) -> bool {
17209 kind == SyntaxKind::REFERENCES_CONSTRAINT
17210 }
17211 #[inline]
17212 fn cast(syntax: SyntaxNode) -> Option<Self> {
17213 if Self::can_cast(syntax.kind()) {
17214 Some(Self { syntax })
17215 } else {
17216 None
17217 }
17218 }
17219 #[inline]
17220 fn syntax(&self) -> &SyntaxNode {
17221 &self.syntax
17222 }
17223}
17224impl AstNode for Refresh {
17225 #[inline]
17226 fn can_cast(kind: SyntaxKind) -> bool {
17227 kind == SyntaxKind::REFRESH
17228 }
17229 #[inline]
17230 fn cast(syntax: SyntaxNode) -> Option<Self> {
17231 if Self::can_cast(syntax.kind()) {
17232 Some(Self { syntax })
17233 } else {
17234 None
17235 }
17236 }
17237 #[inline]
17238 fn syntax(&self) -> &SyntaxNode {
17239 &self.syntax
17240 }
17241}
17242impl AstNode for Reindex {
17243 #[inline]
17244 fn can_cast(kind: SyntaxKind) -> bool {
17245 kind == SyntaxKind::REINDEX
17246 }
17247 #[inline]
17248 fn cast(syntax: SyntaxNode) -> Option<Self> {
17249 if Self::can_cast(syntax.kind()) {
17250 Some(Self { syntax })
17251 } else {
17252 None
17253 }
17254 }
17255 #[inline]
17256 fn syntax(&self) -> &SyntaxNode {
17257 &self.syntax
17258 }
17259}
17260impl AstNode for RelationName {
17261 #[inline]
17262 fn can_cast(kind: SyntaxKind) -> bool {
17263 kind == SyntaxKind::RELATION_NAME
17264 }
17265 #[inline]
17266 fn cast(syntax: SyntaxNode) -> Option<Self> {
17267 if Self::can_cast(syntax.kind()) {
17268 Some(Self { syntax })
17269 } else {
17270 None
17271 }
17272 }
17273 #[inline]
17274 fn syntax(&self) -> &SyntaxNode {
17275 &self.syntax
17276 }
17277}
17278impl AstNode for ReleaseSavepoint {
17279 #[inline]
17280 fn can_cast(kind: SyntaxKind) -> bool {
17281 kind == SyntaxKind::RELEASE_SAVEPOINT
17282 }
17283 #[inline]
17284 fn cast(syntax: SyntaxNode) -> Option<Self> {
17285 if Self::can_cast(syntax.kind()) {
17286 Some(Self { syntax })
17287 } else {
17288 None
17289 }
17290 }
17291 #[inline]
17292 fn syntax(&self) -> &SyntaxNode {
17293 &self.syntax
17294 }
17295}
17296impl AstNode for RenameColumn {
17297 #[inline]
17298 fn can_cast(kind: SyntaxKind) -> bool {
17299 kind == SyntaxKind::RENAME_COLUMN
17300 }
17301 #[inline]
17302 fn cast(syntax: SyntaxNode) -> Option<Self> {
17303 if Self::can_cast(syntax.kind()) {
17304 Some(Self { syntax })
17305 } else {
17306 None
17307 }
17308 }
17309 #[inline]
17310 fn syntax(&self) -> &SyntaxNode {
17311 &self.syntax
17312 }
17313}
17314impl AstNode for RenameConstraint {
17315 #[inline]
17316 fn can_cast(kind: SyntaxKind) -> bool {
17317 kind == SyntaxKind::RENAME_CONSTRAINT
17318 }
17319 #[inline]
17320 fn cast(syntax: SyntaxNode) -> Option<Self> {
17321 if Self::can_cast(syntax.kind()) {
17322 Some(Self { syntax })
17323 } else {
17324 None
17325 }
17326 }
17327 #[inline]
17328 fn syntax(&self) -> &SyntaxNode {
17329 &self.syntax
17330 }
17331}
17332impl AstNode for RenameTable {
17333 #[inline]
17334 fn can_cast(kind: SyntaxKind) -> bool {
17335 kind == SyntaxKind::RENAME_TABLE
17336 }
17337 #[inline]
17338 fn cast(syntax: SyntaxNode) -> Option<Self> {
17339 if Self::can_cast(syntax.kind()) {
17340 Some(Self { syntax })
17341 } else {
17342 None
17343 }
17344 }
17345 #[inline]
17346 fn syntax(&self) -> &SyntaxNode {
17347 &self.syntax
17348 }
17349}
17350impl AstNode for RenameTo {
17351 #[inline]
17352 fn can_cast(kind: SyntaxKind) -> bool {
17353 kind == SyntaxKind::RENAME_TO
17354 }
17355 #[inline]
17356 fn cast(syntax: SyntaxNode) -> Option<Self> {
17357 if Self::can_cast(syntax.kind()) {
17358 Some(Self { syntax })
17359 } else {
17360 None
17361 }
17362 }
17363 #[inline]
17364 fn syntax(&self) -> &SyntaxNode {
17365 &self.syntax
17366 }
17367}
17368impl AstNode for RepeatableRead {
17369 #[inline]
17370 fn can_cast(kind: SyntaxKind) -> bool {
17371 kind == SyntaxKind::REPEATABLE_READ
17372 }
17373 #[inline]
17374 fn cast(syntax: SyntaxNode) -> Option<Self> {
17375 if Self::can_cast(syntax.kind()) {
17376 Some(Self { syntax })
17377 } else {
17378 None
17379 }
17380 }
17381 #[inline]
17382 fn syntax(&self) -> &SyntaxNode {
17383 &self.syntax
17384 }
17385}
17386impl AstNode for ReplicaIdentity {
17387 #[inline]
17388 fn can_cast(kind: SyntaxKind) -> bool {
17389 kind == SyntaxKind::REPLICA_IDENTITY
17390 }
17391 #[inline]
17392 fn cast(syntax: SyntaxNode) -> Option<Self> {
17393 if Self::can_cast(syntax.kind()) {
17394 Some(Self { syntax })
17395 } else {
17396 None
17397 }
17398 }
17399 #[inline]
17400 fn syntax(&self) -> &SyntaxNode {
17401 &self.syntax
17402 }
17403}
17404impl AstNode for Reset {
17405 #[inline]
17406 fn can_cast(kind: SyntaxKind) -> bool {
17407 kind == SyntaxKind::RESET
17408 }
17409 #[inline]
17410 fn cast(syntax: SyntaxNode) -> Option<Self> {
17411 if Self::can_cast(syntax.kind()) {
17412 Some(Self { syntax })
17413 } else {
17414 None
17415 }
17416 }
17417 #[inline]
17418 fn syntax(&self) -> &SyntaxNode {
17419 &self.syntax
17420 }
17421}
17422impl AstNode for ResetFuncOption {
17423 #[inline]
17424 fn can_cast(kind: SyntaxKind) -> bool {
17425 kind == SyntaxKind::RESET_FUNC_OPTION
17426 }
17427 #[inline]
17428 fn cast(syntax: SyntaxNode) -> Option<Self> {
17429 if Self::can_cast(syntax.kind()) {
17430 Some(Self { syntax })
17431 } else {
17432 None
17433 }
17434 }
17435 #[inline]
17436 fn syntax(&self) -> &SyntaxNode {
17437 &self.syntax
17438 }
17439}
17440impl AstNode for ResetOptions {
17441 #[inline]
17442 fn can_cast(kind: SyntaxKind) -> bool {
17443 kind == SyntaxKind::RESET_OPTIONS
17444 }
17445 #[inline]
17446 fn cast(syntax: SyntaxNode) -> Option<Self> {
17447 if Self::can_cast(syntax.kind()) {
17448 Some(Self { syntax })
17449 } else {
17450 None
17451 }
17452 }
17453 #[inline]
17454 fn syntax(&self) -> &SyntaxNode {
17455 &self.syntax
17456 }
17457}
17458impl AstNode for ResetStorageParams {
17459 #[inline]
17460 fn can_cast(kind: SyntaxKind) -> bool {
17461 kind == SyntaxKind::RESET_STORAGE_PARAMS
17462 }
17463 #[inline]
17464 fn cast(syntax: SyntaxNode) -> Option<Self> {
17465 if Self::can_cast(syntax.kind()) {
17466 Some(Self { syntax })
17467 } else {
17468 None
17469 }
17470 }
17471 #[inline]
17472 fn syntax(&self) -> &SyntaxNode {
17473 &self.syntax
17474 }
17475}
17476impl AstNode for Restart {
17477 #[inline]
17478 fn can_cast(kind: SyntaxKind) -> bool {
17479 kind == SyntaxKind::RESTART
17480 }
17481 #[inline]
17482 fn cast(syntax: SyntaxNode) -> Option<Self> {
17483 if Self::can_cast(syntax.kind()) {
17484 Some(Self { syntax })
17485 } else {
17486 None
17487 }
17488 }
17489 #[inline]
17490 fn syntax(&self) -> &SyntaxNode {
17491 &self.syntax
17492 }
17493}
17494impl AstNode for Restrict {
17495 #[inline]
17496 fn can_cast(kind: SyntaxKind) -> bool {
17497 kind == SyntaxKind::RESTRICT
17498 }
17499 #[inline]
17500 fn cast(syntax: SyntaxNode) -> Option<Self> {
17501 if Self::can_cast(syntax.kind()) {
17502 Some(Self { syntax })
17503 } else {
17504 None
17505 }
17506 }
17507 #[inline]
17508 fn syntax(&self) -> &SyntaxNode {
17509 &self.syntax
17510 }
17511}
17512impl AstNode for RetType {
17513 #[inline]
17514 fn can_cast(kind: SyntaxKind) -> bool {
17515 kind == SyntaxKind::RET_TYPE
17516 }
17517 #[inline]
17518 fn cast(syntax: SyntaxNode) -> Option<Self> {
17519 if Self::can_cast(syntax.kind()) {
17520 Some(Self { syntax })
17521 } else {
17522 None
17523 }
17524 }
17525 #[inline]
17526 fn syntax(&self) -> &SyntaxNode {
17527 &self.syntax
17528 }
17529}
17530impl AstNode for ReturnFuncOption {
17531 #[inline]
17532 fn can_cast(kind: SyntaxKind) -> bool {
17533 kind == SyntaxKind::RETURN_FUNC_OPTION
17534 }
17535 #[inline]
17536 fn cast(syntax: SyntaxNode) -> Option<Self> {
17537 if Self::can_cast(syntax.kind()) {
17538 Some(Self { syntax })
17539 } else {
17540 None
17541 }
17542 }
17543 #[inline]
17544 fn syntax(&self) -> &SyntaxNode {
17545 &self.syntax
17546 }
17547}
17548impl AstNode for ReturningClause {
17549 #[inline]
17550 fn can_cast(kind: SyntaxKind) -> bool {
17551 kind == SyntaxKind::RETURNING_CLAUSE
17552 }
17553 #[inline]
17554 fn cast(syntax: SyntaxNode) -> Option<Self> {
17555 if Self::can_cast(syntax.kind()) {
17556 Some(Self { syntax })
17557 } else {
17558 None
17559 }
17560 }
17561 #[inline]
17562 fn syntax(&self) -> &SyntaxNode {
17563 &self.syntax
17564 }
17565}
17566impl AstNode for Revoke {
17567 #[inline]
17568 fn can_cast(kind: SyntaxKind) -> bool {
17569 kind == SyntaxKind::REVOKE
17570 }
17571 #[inline]
17572 fn cast(syntax: SyntaxNode) -> Option<Self> {
17573 if Self::can_cast(syntax.kind()) {
17574 Some(Self { syntax })
17575 } else {
17576 None
17577 }
17578 }
17579 #[inline]
17580 fn syntax(&self) -> &SyntaxNode {
17581 &self.syntax
17582 }
17583}
17584impl AstNode for Role {
17585 #[inline]
17586 fn can_cast(kind: SyntaxKind) -> bool {
17587 kind == SyntaxKind::ROLE
17588 }
17589 #[inline]
17590 fn cast(syntax: SyntaxNode) -> Option<Self> {
17591 if Self::can_cast(syntax.kind()) {
17592 Some(Self { syntax })
17593 } else {
17594 None
17595 }
17596 }
17597 #[inline]
17598 fn syntax(&self) -> &SyntaxNode {
17599 &self.syntax
17600 }
17601}
17602impl AstNode for Rollback {
17603 #[inline]
17604 fn can_cast(kind: SyntaxKind) -> bool {
17605 kind == SyntaxKind::ROLLBACK
17606 }
17607 #[inline]
17608 fn cast(syntax: SyntaxNode) -> Option<Self> {
17609 if Self::can_cast(syntax.kind()) {
17610 Some(Self { syntax })
17611 } else {
17612 None
17613 }
17614 }
17615 #[inline]
17616 fn syntax(&self) -> &SyntaxNode {
17617 &self.syntax
17618 }
17619}
17620impl AstNode for RowsFuncOption {
17621 #[inline]
17622 fn can_cast(kind: SyntaxKind) -> bool {
17623 kind == SyntaxKind::ROWS_FUNC_OPTION
17624 }
17625 #[inline]
17626 fn cast(syntax: SyntaxNode) -> Option<Self> {
17627 if Self::can_cast(syntax.kind()) {
17628 Some(Self { syntax })
17629 } else {
17630 None
17631 }
17632 }
17633 #[inline]
17634 fn syntax(&self) -> &SyntaxNode {
17635 &self.syntax
17636 }
17637}
17638impl AstNode for Savepoint {
17639 #[inline]
17640 fn can_cast(kind: SyntaxKind) -> bool {
17641 kind == SyntaxKind::SAVEPOINT
17642 }
17643 #[inline]
17644 fn cast(syntax: SyntaxNode) -> Option<Self> {
17645 if Self::can_cast(syntax.kind()) {
17646 Some(Self { syntax })
17647 } else {
17648 None
17649 }
17650 }
17651 #[inline]
17652 fn syntax(&self) -> &SyntaxNode {
17653 &self.syntax
17654 }
17655}
17656impl AstNode for SecurityFuncOption {
17657 #[inline]
17658 fn can_cast(kind: SyntaxKind) -> bool {
17659 kind == SyntaxKind::SECURITY_FUNC_OPTION
17660 }
17661 #[inline]
17662 fn cast(syntax: SyntaxNode) -> Option<Self> {
17663 if Self::can_cast(syntax.kind()) {
17664 Some(Self { syntax })
17665 } else {
17666 None
17667 }
17668 }
17669 #[inline]
17670 fn syntax(&self) -> &SyntaxNode {
17671 &self.syntax
17672 }
17673}
17674impl AstNode for SecurityLabel {
17675 #[inline]
17676 fn can_cast(kind: SyntaxKind) -> bool {
17677 kind == SyntaxKind::SECURITY_LABEL
17678 }
17679 #[inline]
17680 fn cast(syntax: SyntaxNode) -> Option<Self> {
17681 if Self::can_cast(syntax.kind()) {
17682 Some(Self { syntax })
17683 } else {
17684 None
17685 }
17686 }
17687 #[inline]
17688 fn syntax(&self) -> &SyntaxNode {
17689 &self.syntax
17690 }
17691}
17692impl AstNode for Select {
17693 #[inline]
17694 fn can_cast(kind: SyntaxKind) -> bool {
17695 kind == SyntaxKind::SELECT
17696 }
17697 #[inline]
17698 fn cast(syntax: SyntaxNode) -> Option<Self> {
17699 if Self::can_cast(syntax.kind()) {
17700 Some(Self { syntax })
17701 } else {
17702 None
17703 }
17704 }
17705 #[inline]
17706 fn syntax(&self) -> &SyntaxNode {
17707 &self.syntax
17708 }
17709}
17710impl AstNode for SelectClause {
17711 #[inline]
17712 fn can_cast(kind: SyntaxKind) -> bool {
17713 kind == SyntaxKind::SELECT_CLAUSE
17714 }
17715 #[inline]
17716 fn cast(syntax: SyntaxNode) -> Option<Self> {
17717 if Self::can_cast(syntax.kind()) {
17718 Some(Self { syntax })
17719 } else {
17720 None
17721 }
17722 }
17723 #[inline]
17724 fn syntax(&self) -> &SyntaxNode {
17725 &self.syntax
17726 }
17727}
17728impl AstNode for SelectInto {
17729 #[inline]
17730 fn can_cast(kind: SyntaxKind) -> bool {
17731 kind == SyntaxKind::SELECT_INTO
17732 }
17733 #[inline]
17734 fn cast(syntax: SyntaxNode) -> Option<Self> {
17735 if Self::can_cast(syntax.kind()) {
17736 Some(Self { syntax })
17737 } else {
17738 None
17739 }
17740 }
17741 #[inline]
17742 fn syntax(&self) -> &SyntaxNode {
17743 &self.syntax
17744 }
17745}
17746impl AstNode for SequenceOptionList {
17747 #[inline]
17748 fn can_cast(kind: SyntaxKind) -> bool {
17749 kind == SyntaxKind::SEQUENCE_OPTION_LIST
17750 }
17751 #[inline]
17752 fn cast(syntax: SyntaxNode) -> Option<Self> {
17753 if Self::can_cast(syntax.kind()) {
17754 Some(Self { syntax })
17755 } else {
17756 None
17757 }
17758 }
17759 #[inline]
17760 fn syntax(&self) -> &SyntaxNode {
17761 &self.syntax
17762 }
17763}
17764impl AstNode for Serializable {
17765 #[inline]
17766 fn can_cast(kind: SyntaxKind) -> bool {
17767 kind == SyntaxKind::SERIALIZABLE
17768 }
17769 #[inline]
17770 fn cast(syntax: SyntaxNode) -> Option<Self> {
17771 if Self::can_cast(syntax.kind()) {
17772 Some(Self { syntax })
17773 } else {
17774 None
17775 }
17776 }
17777 #[inline]
17778 fn syntax(&self) -> &SyntaxNode {
17779 &self.syntax
17780 }
17781}
17782impl AstNode for Set {
17783 #[inline]
17784 fn can_cast(kind: SyntaxKind) -> bool {
17785 kind == SyntaxKind::SET
17786 }
17787 #[inline]
17788 fn cast(syntax: SyntaxNode) -> Option<Self> {
17789 if Self::can_cast(syntax.kind()) {
17790 Some(Self { syntax })
17791 } else {
17792 None
17793 }
17794 }
17795 #[inline]
17796 fn syntax(&self) -> &SyntaxNode {
17797 &self.syntax
17798 }
17799}
17800impl AstNode for SetAccessMethod {
17801 #[inline]
17802 fn can_cast(kind: SyntaxKind) -> bool {
17803 kind == SyntaxKind::SET_ACCESS_METHOD
17804 }
17805 #[inline]
17806 fn cast(syntax: SyntaxNode) -> Option<Self> {
17807 if Self::can_cast(syntax.kind()) {
17808 Some(Self { syntax })
17809 } else {
17810 None
17811 }
17812 }
17813 #[inline]
17814 fn syntax(&self) -> &SyntaxNode {
17815 &self.syntax
17816 }
17817}
17818impl AstNode for SetCompression {
17819 #[inline]
17820 fn can_cast(kind: SyntaxKind) -> bool {
17821 kind == SyntaxKind::SET_COMPRESSION
17822 }
17823 #[inline]
17824 fn cast(syntax: SyntaxNode) -> Option<Self> {
17825 if Self::can_cast(syntax.kind()) {
17826 Some(Self { syntax })
17827 } else {
17828 None
17829 }
17830 }
17831 #[inline]
17832 fn syntax(&self) -> &SyntaxNode {
17833 &self.syntax
17834 }
17835}
17836impl AstNode for SetConstraints {
17837 #[inline]
17838 fn can_cast(kind: SyntaxKind) -> bool {
17839 kind == SyntaxKind::SET_CONSTRAINTS
17840 }
17841 #[inline]
17842 fn cast(syntax: SyntaxNode) -> Option<Self> {
17843 if Self::can_cast(syntax.kind()) {
17844 Some(Self { syntax })
17845 } else {
17846 None
17847 }
17848 }
17849 #[inline]
17850 fn syntax(&self) -> &SyntaxNode {
17851 &self.syntax
17852 }
17853}
17854impl AstNode for SetDefault {
17855 #[inline]
17856 fn can_cast(kind: SyntaxKind) -> bool {
17857 kind == SyntaxKind::SET_DEFAULT
17858 }
17859 #[inline]
17860 fn cast(syntax: SyntaxNode) -> Option<Self> {
17861 if Self::can_cast(syntax.kind()) {
17862 Some(Self { syntax })
17863 } else {
17864 None
17865 }
17866 }
17867 #[inline]
17868 fn syntax(&self) -> &SyntaxNode {
17869 &self.syntax
17870 }
17871}
17872impl AstNode for SetDefaultColumns {
17873 #[inline]
17874 fn can_cast(kind: SyntaxKind) -> bool {
17875 kind == SyntaxKind::SET_DEFAULT_COLUMNS
17876 }
17877 #[inline]
17878 fn cast(syntax: SyntaxNode) -> Option<Self> {
17879 if Self::can_cast(syntax.kind()) {
17880 Some(Self { syntax })
17881 } else {
17882 None
17883 }
17884 }
17885 #[inline]
17886 fn syntax(&self) -> &SyntaxNode {
17887 &self.syntax
17888 }
17889}
17890impl AstNode for SetExpression {
17891 #[inline]
17892 fn can_cast(kind: SyntaxKind) -> bool {
17893 kind == SyntaxKind::SET_EXPRESSION
17894 }
17895 #[inline]
17896 fn cast(syntax: SyntaxNode) -> Option<Self> {
17897 if Self::can_cast(syntax.kind()) {
17898 Some(Self { syntax })
17899 } else {
17900 None
17901 }
17902 }
17903 #[inline]
17904 fn syntax(&self) -> &SyntaxNode {
17905 &self.syntax
17906 }
17907}
17908impl AstNode for SetFuncOption {
17909 #[inline]
17910 fn can_cast(kind: SyntaxKind) -> bool {
17911 kind == SyntaxKind::SET_FUNC_OPTION
17912 }
17913 #[inline]
17914 fn cast(syntax: SyntaxNode) -> Option<Self> {
17915 if Self::can_cast(syntax.kind()) {
17916 Some(Self { syntax })
17917 } else {
17918 None
17919 }
17920 }
17921 #[inline]
17922 fn syntax(&self) -> &SyntaxNode {
17923 &self.syntax
17924 }
17925}
17926impl AstNode for SetGenerated {
17927 #[inline]
17928 fn can_cast(kind: SyntaxKind) -> bool {
17929 kind == SyntaxKind::SET_GENERATED
17930 }
17931 #[inline]
17932 fn cast(syntax: SyntaxNode) -> Option<Self> {
17933 if Self::can_cast(syntax.kind()) {
17934 Some(Self { syntax })
17935 } else {
17936 None
17937 }
17938 }
17939 #[inline]
17940 fn syntax(&self) -> &SyntaxNode {
17941 &self.syntax
17942 }
17943}
17944impl AstNode for SetGeneratedOptions {
17945 #[inline]
17946 fn can_cast(kind: SyntaxKind) -> bool {
17947 kind == SyntaxKind::SET_GENERATED_OPTIONS
17948 }
17949 #[inline]
17950 fn cast(syntax: SyntaxNode) -> Option<Self> {
17951 if Self::can_cast(syntax.kind()) {
17952 Some(Self { syntax })
17953 } else {
17954 None
17955 }
17956 }
17957 #[inline]
17958 fn syntax(&self) -> &SyntaxNode {
17959 &self.syntax
17960 }
17961}
17962impl AstNode for SetLogged {
17963 #[inline]
17964 fn can_cast(kind: SyntaxKind) -> bool {
17965 kind == SyntaxKind::SET_LOGGED
17966 }
17967 #[inline]
17968 fn cast(syntax: SyntaxNode) -> Option<Self> {
17969 if Self::can_cast(syntax.kind()) {
17970 Some(Self { syntax })
17971 } else {
17972 None
17973 }
17974 }
17975 #[inline]
17976 fn syntax(&self) -> &SyntaxNode {
17977 &self.syntax
17978 }
17979}
17980impl AstNode for SetNotNull {
17981 #[inline]
17982 fn can_cast(kind: SyntaxKind) -> bool {
17983 kind == SyntaxKind::SET_NOT_NULL
17984 }
17985 #[inline]
17986 fn cast(syntax: SyntaxNode) -> Option<Self> {
17987 if Self::can_cast(syntax.kind()) {
17988 Some(Self { syntax })
17989 } else {
17990 None
17991 }
17992 }
17993 #[inline]
17994 fn syntax(&self) -> &SyntaxNode {
17995 &self.syntax
17996 }
17997}
17998impl AstNode for SetNullColumns {
17999 #[inline]
18000 fn can_cast(kind: SyntaxKind) -> bool {
18001 kind == SyntaxKind::SET_NULL_COLUMNS
18002 }
18003 #[inline]
18004 fn cast(syntax: SyntaxNode) -> Option<Self> {
18005 if Self::can_cast(syntax.kind()) {
18006 Some(Self { syntax })
18007 } else {
18008 None
18009 }
18010 }
18011 #[inline]
18012 fn syntax(&self) -> &SyntaxNode {
18013 &self.syntax
18014 }
18015}
18016impl AstNode for SetOptions {
18017 #[inline]
18018 fn can_cast(kind: SyntaxKind) -> bool {
18019 kind == SyntaxKind::SET_OPTIONS
18020 }
18021 #[inline]
18022 fn cast(syntax: SyntaxNode) -> Option<Self> {
18023 if Self::can_cast(syntax.kind()) {
18024 Some(Self { syntax })
18025 } else {
18026 None
18027 }
18028 }
18029 #[inline]
18030 fn syntax(&self) -> &SyntaxNode {
18031 &self.syntax
18032 }
18033}
18034impl AstNode for SetOptionsList {
18035 #[inline]
18036 fn can_cast(kind: SyntaxKind) -> bool {
18037 kind == SyntaxKind::SET_OPTIONS_LIST
18038 }
18039 #[inline]
18040 fn cast(syntax: SyntaxNode) -> Option<Self> {
18041 if Self::can_cast(syntax.kind()) {
18042 Some(Self { syntax })
18043 } else {
18044 None
18045 }
18046 }
18047 #[inline]
18048 fn syntax(&self) -> &SyntaxNode {
18049 &self.syntax
18050 }
18051}
18052impl AstNode for SetRole {
18053 #[inline]
18054 fn can_cast(kind: SyntaxKind) -> bool {
18055 kind == SyntaxKind::SET_ROLE
18056 }
18057 #[inline]
18058 fn cast(syntax: SyntaxNode) -> Option<Self> {
18059 if Self::can_cast(syntax.kind()) {
18060 Some(Self { syntax })
18061 } else {
18062 None
18063 }
18064 }
18065 #[inline]
18066 fn syntax(&self) -> &SyntaxNode {
18067 &self.syntax
18068 }
18069}
18070impl AstNode for SetSchema {
18071 #[inline]
18072 fn can_cast(kind: SyntaxKind) -> bool {
18073 kind == SyntaxKind::SET_SCHEMA
18074 }
18075 #[inline]
18076 fn cast(syntax: SyntaxNode) -> Option<Self> {
18077 if Self::can_cast(syntax.kind()) {
18078 Some(Self { syntax })
18079 } else {
18080 None
18081 }
18082 }
18083 #[inline]
18084 fn syntax(&self) -> &SyntaxNode {
18085 &self.syntax
18086 }
18087}
18088impl AstNode for SetSequenceOption {
18089 #[inline]
18090 fn can_cast(kind: SyntaxKind) -> bool {
18091 kind == SyntaxKind::SET_SEQUENCE_OPTION
18092 }
18093 #[inline]
18094 fn cast(syntax: SyntaxNode) -> Option<Self> {
18095 if Self::can_cast(syntax.kind()) {
18096 Some(Self { syntax })
18097 } else {
18098 None
18099 }
18100 }
18101 #[inline]
18102 fn syntax(&self) -> &SyntaxNode {
18103 &self.syntax
18104 }
18105}
18106impl AstNode for SetSessionAuth {
18107 #[inline]
18108 fn can_cast(kind: SyntaxKind) -> bool {
18109 kind == SyntaxKind::SET_SESSION_AUTH
18110 }
18111 #[inline]
18112 fn cast(syntax: SyntaxNode) -> Option<Self> {
18113 if Self::can_cast(syntax.kind()) {
18114 Some(Self { syntax })
18115 } else {
18116 None
18117 }
18118 }
18119 #[inline]
18120 fn syntax(&self) -> &SyntaxNode {
18121 &self.syntax
18122 }
18123}
18124impl AstNode for SetStatistics {
18125 #[inline]
18126 fn can_cast(kind: SyntaxKind) -> bool {
18127 kind == SyntaxKind::SET_STATISTICS
18128 }
18129 #[inline]
18130 fn cast(syntax: SyntaxNode) -> Option<Self> {
18131 if Self::can_cast(syntax.kind()) {
18132 Some(Self { syntax })
18133 } else {
18134 None
18135 }
18136 }
18137 #[inline]
18138 fn syntax(&self) -> &SyntaxNode {
18139 &self.syntax
18140 }
18141}
18142impl AstNode for SetStorage {
18143 #[inline]
18144 fn can_cast(kind: SyntaxKind) -> bool {
18145 kind == SyntaxKind::SET_STORAGE
18146 }
18147 #[inline]
18148 fn cast(syntax: SyntaxNode) -> Option<Self> {
18149 if Self::can_cast(syntax.kind()) {
18150 Some(Self { syntax })
18151 } else {
18152 None
18153 }
18154 }
18155 #[inline]
18156 fn syntax(&self) -> &SyntaxNode {
18157 &self.syntax
18158 }
18159}
18160impl AstNode for SetStorageParams {
18161 #[inline]
18162 fn can_cast(kind: SyntaxKind) -> bool {
18163 kind == SyntaxKind::SET_STORAGE_PARAMS
18164 }
18165 #[inline]
18166 fn cast(syntax: SyntaxNode) -> Option<Self> {
18167 if Self::can_cast(syntax.kind()) {
18168 Some(Self { syntax })
18169 } else {
18170 None
18171 }
18172 }
18173 #[inline]
18174 fn syntax(&self) -> &SyntaxNode {
18175 &self.syntax
18176 }
18177}
18178impl AstNode for SetTablespace {
18179 #[inline]
18180 fn can_cast(kind: SyntaxKind) -> bool {
18181 kind == SyntaxKind::SET_TABLESPACE
18182 }
18183 #[inline]
18184 fn cast(syntax: SyntaxNode) -> Option<Self> {
18185 if Self::can_cast(syntax.kind()) {
18186 Some(Self { syntax })
18187 } else {
18188 None
18189 }
18190 }
18191 #[inline]
18192 fn syntax(&self) -> &SyntaxNode {
18193 &self.syntax
18194 }
18195}
18196impl AstNode for SetTransaction {
18197 #[inline]
18198 fn can_cast(kind: SyntaxKind) -> bool {
18199 kind == SyntaxKind::SET_TRANSACTION
18200 }
18201 #[inline]
18202 fn cast(syntax: SyntaxNode) -> Option<Self> {
18203 if Self::can_cast(syntax.kind()) {
18204 Some(Self { syntax })
18205 } else {
18206 None
18207 }
18208 }
18209 #[inline]
18210 fn syntax(&self) -> &SyntaxNode {
18211 &self.syntax
18212 }
18213}
18214impl AstNode for SetType {
18215 #[inline]
18216 fn can_cast(kind: SyntaxKind) -> bool {
18217 kind == SyntaxKind::SET_TYPE
18218 }
18219 #[inline]
18220 fn cast(syntax: SyntaxNode) -> Option<Self> {
18221 if Self::can_cast(syntax.kind()) {
18222 Some(Self { syntax })
18223 } else {
18224 None
18225 }
18226 }
18227 #[inline]
18228 fn syntax(&self) -> &SyntaxNode {
18229 &self.syntax
18230 }
18231}
18232impl AstNode for SetUnlogged {
18233 #[inline]
18234 fn can_cast(kind: SyntaxKind) -> bool {
18235 kind == SyntaxKind::SET_UNLOGGED
18236 }
18237 #[inline]
18238 fn cast(syntax: SyntaxNode) -> Option<Self> {
18239 if Self::can_cast(syntax.kind()) {
18240 Some(Self { syntax })
18241 } else {
18242 None
18243 }
18244 }
18245 #[inline]
18246 fn syntax(&self) -> &SyntaxNode {
18247 &self.syntax
18248 }
18249}
18250impl AstNode for SetWithoutCluster {
18251 #[inline]
18252 fn can_cast(kind: SyntaxKind) -> bool {
18253 kind == SyntaxKind::SET_WITHOUT_CLUSTER
18254 }
18255 #[inline]
18256 fn cast(syntax: SyntaxNode) -> Option<Self> {
18257 if Self::can_cast(syntax.kind()) {
18258 Some(Self { syntax })
18259 } else {
18260 None
18261 }
18262 }
18263 #[inline]
18264 fn syntax(&self) -> &SyntaxNode {
18265 &self.syntax
18266 }
18267}
18268impl AstNode for SetWithoutOids {
18269 #[inline]
18270 fn can_cast(kind: SyntaxKind) -> bool {
18271 kind == SyntaxKind::SET_WITHOUT_OIDS
18272 }
18273 #[inline]
18274 fn cast(syntax: SyntaxNode) -> Option<Self> {
18275 if Self::can_cast(syntax.kind()) {
18276 Some(Self { syntax })
18277 } else {
18278 None
18279 }
18280 }
18281 #[inline]
18282 fn syntax(&self) -> &SyntaxNode {
18283 &self.syntax
18284 }
18285}
18286impl AstNode for Show {
18287 #[inline]
18288 fn can_cast(kind: SyntaxKind) -> bool {
18289 kind == SyntaxKind::SHOW
18290 }
18291 #[inline]
18292 fn cast(syntax: SyntaxNode) -> Option<Self> {
18293 if Self::can_cast(syntax.kind()) {
18294 Some(Self { syntax })
18295 } else {
18296 None
18297 }
18298 }
18299 #[inline]
18300 fn syntax(&self) -> &SyntaxNode {
18301 &self.syntax
18302 }
18303}
18304impl AstNode for SimilarTo {
18305 #[inline]
18306 fn can_cast(kind: SyntaxKind) -> bool {
18307 kind == SyntaxKind::SIMILAR_TO
18308 }
18309 #[inline]
18310 fn cast(syntax: SyntaxNode) -> Option<Self> {
18311 if Self::can_cast(syntax.kind()) {
18312 Some(Self { syntax })
18313 } else {
18314 None
18315 }
18316 }
18317 #[inline]
18318 fn syntax(&self) -> &SyntaxNode {
18319 &self.syntax
18320 }
18321}
18322impl AstNode for SortAsc {
18323 #[inline]
18324 fn can_cast(kind: SyntaxKind) -> bool {
18325 kind == SyntaxKind::SORT_ASC
18326 }
18327 #[inline]
18328 fn cast(syntax: SyntaxNode) -> Option<Self> {
18329 if Self::can_cast(syntax.kind()) {
18330 Some(Self { syntax })
18331 } else {
18332 None
18333 }
18334 }
18335 #[inline]
18336 fn syntax(&self) -> &SyntaxNode {
18337 &self.syntax
18338 }
18339}
18340impl AstNode for SortBy {
18341 #[inline]
18342 fn can_cast(kind: SyntaxKind) -> bool {
18343 kind == SyntaxKind::SORT_BY
18344 }
18345 #[inline]
18346 fn cast(syntax: SyntaxNode) -> Option<Self> {
18347 if Self::can_cast(syntax.kind()) {
18348 Some(Self { syntax })
18349 } else {
18350 None
18351 }
18352 }
18353 #[inline]
18354 fn syntax(&self) -> &SyntaxNode {
18355 &self.syntax
18356 }
18357}
18358impl AstNode for SortDesc {
18359 #[inline]
18360 fn can_cast(kind: SyntaxKind) -> bool {
18361 kind == SyntaxKind::SORT_DESC
18362 }
18363 #[inline]
18364 fn cast(syntax: SyntaxNode) -> Option<Self> {
18365 if Self::can_cast(syntax.kind()) {
18366 Some(Self { syntax })
18367 } else {
18368 None
18369 }
18370 }
18371 #[inline]
18372 fn syntax(&self) -> &SyntaxNode {
18373 &self.syntax
18374 }
18375}
18376impl AstNode for SortUsing {
18377 #[inline]
18378 fn can_cast(kind: SyntaxKind) -> bool {
18379 kind == SyntaxKind::SORT_USING
18380 }
18381 #[inline]
18382 fn cast(syntax: SyntaxNode) -> Option<Self> {
18383 if Self::can_cast(syntax.kind()) {
18384 Some(Self { syntax })
18385 } else {
18386 None
18387 }
18388 }
18389 #[inline]
18390 fn syntax(&self) -> &SyntaxNode {
18391 &self.syntax
18392 }
18393}
18394impl AstNode for SourceFile {
18395 #[inline]
18396 fn can_cast(kind: SyntaxKind) -> bool {
18397 kind == SyntaxKind::SOURCE_FILE
18398 }
18399 #[inline]
18400 fn cast(syntax: SyntaxNode) -> Option<Self> {
18401 if Self::can_cast(syntax.kind()) {
18402 Some(Self { syntax })
18403 } else {
18404 None
18405 }
18406 }
18407 #[inline]
18408 fn syntax(&self) -> &SyntaxNode {
18409 &self.syntax
18410 }
18411}
18412impl AstNode for Storage {
18413 #[inline]
18414 fn can_cast(kind: SyntaxKind) -> bool {
18415 kind == SyntaxKind::STORAGE
18416 }
18417 #[inline]
18418 fn cast(syntax: SyntaxNode) -> Option<Self> {
18419 if Self::can_cast(syntax.kind()) {
18420 Some(Self { syntax })
18421 } else {
18422 None
18423 }
18424 }
18425 #[inline]
18426 fn syntax(&self) -> &SyntaxNode {
18427 &self.syntax
18428 }
18429}
18430impl AstNode for StrictFuncOption {
18431 #[inline]
18432 fn can_cast(kind: SyntaxKind) -> bool {
18433 kind == SyntaxKind::STRICT_FUNC_OPTION
18434 }
18435 #[inline]
18436 fn cast(syntax: SyntaxNode) -> Option<Self> {
18437 if Self::can_cast(syntax.kind()) {
18438 Some(Self { syntax })
18439 } else {
18440 None
18441 }
18442 }
18443 #[inline]
18444 fn syntax(&self) -> &SyntaxNode {
18445 &self.syntax
18446 }
18447}
18448impl AstNode for SupportFuncOption {
18449 #[inline]
18450 fn can_cast(kind: SyntaxKind) -> bool {
18451 kind == SyntaxKind::SUPPORT_FUNC_OPTION
18452 }
18453 #[inline]
18454 fn cast(syntax: SyntaxNode) -> Option<Self> {
18455 if Self::can_cast(syntax.kind()) {
18456 Some(Self { syntax })
18457 } else {
18458 None
18459 }
18460 }
18461 #[inline]
18462 fn syntax(&self) -> &SyntaxNode {
18463 &self.syntax
18464 }
18465}
18466impl AstNode for Table {
18467 #[inline]
18468 fn can_cast(kind: SyntaxKind) -> bool {
18469 kind == SyntaxKind::TABLE
18470 }
18471 #[inline]
18472 fn cast(syntax: SyntaxNode) -> Option<Self> {
18473 if Self::can_cast(syntax.kind()) {
18474 Some(Self { syntax })
18475 } else {
18476 None
18477 }
18478 }
18479 #[inline]
18480 fn syntax(&self) -> &SyntaxNode {
18481 &self.syntax
18482 }
18483}
18484impl AstNode for TableArgList {
18485 #[inline]
18486 fn can_cast(kind: SyntaxKind) -> bool {
18487 kind == SyntaxKind::TABLE_ARG_LIST
18488 }
18489 #[inline]
18490 fn cast(syntax: SyntaxNode) -> Option<Self> {
18491 if Self::can_cast(syntax.kind()) {
18492 Some(Self { syntax })
18493 } else {
18494 None
18495 }
18496 }
18497 #[inline]
18498 fn syntax(&self) -> &SyntaxNode {
18499 &self.syntax
18500 }
18501}
18502impl AstNode for TableList {
18503 #[inline]
18504 fn can_cast(kind: SyntaxKind) -> bool {
18505 kind == SyntaxKind::TABLE_LIST
18506 }
18507 #[inline]
18508 fn cast(syntax: SyntaxNode) -> Option<Self> {
18509 if Self::can_cast(syntax.kind()) {
18510 Some(Self { syntax })
18511 } else {
18512 None
18513 }
18514 }
18515 #[inline]
18516 fn syntax(&self) -> &SyntaxNode {
18517 &self.syntax
18518 }
18519}
18520impl AstNode for Tablespace {
18521 #[inline]
18522 fn can_cast(kind: SyntaxKind) -> bool {
18523 kind == SyntaxKind::TABLESPACE
18524 }
18525 #[inline]
18526 fn cast(syntax: SyntaxNode) -> Option<Self> {
18527 if Self::can_cast(syntax.kind()) {
18528 Some(Self { syntax })
18529 } else {
18530 None
18531 }
18532 }
18533 #[inline]
18534 fn syntax(&self) -> &SyntaxNode {
18535 &self.syntax
18536 }
18537}
18538impl AstNode for Target {
18539 #[inline]
18540 fn can_cast(kind: SyntaxKind) -> bool {
18541 kind == SyntaxKind::TARGET
18542 }
18543 #[inline]
18544 fn cast(syntax: SyntaxNode) -> Option<Self> {
18545 if Self::can_cast(syntax.kind()) {
18546 Some(Self { syntax })
18547 } else {
18548 None
18549 }
18550 }
18551 #[inline]
18552 fn syntax(&self) -> &SyntaxNode {
18553 &self.syntax
18554 }
18555}
18556impl AstNode for TargetList {
18557 #[inline]
18558 fn can_cast(kind: SyntaxKind) -> bool {
18559 kind == SyntaxKind::TARGET_LIST
18560 }
18561 #[inline]
18562 fn cast(syntax: SyntaxNode) -> Option<Self> {
18563 if Self::can_cast(syntax.kind()) {
18564 Some(Self { syntax })
18565 } else {
18566 None
18567 }
18568 }
18569 #[inline]
18570 fn syntax(&self) -> &SyntaxNode {
18571 &self.syntax
18572 }
18573}
18574impl AstNode for TimeType {
18575 #[inline]
18576 fn can_cast(kind: SyntaxKind) -> bool {
18577 kind == SyntaxKind::TIME_TYPE
18578 }
18579 #[inline]
18580 fn cast(syntax: SyntaxNode) -> Option<Self> {
18581 if Self::can_cast(syntax.kind()) {
18582 Some(Self { syntax })
18583 } else {
18584 None
18585 }
18586 }
18587 #[inline]
18588 fn syntax(&self) -> &SyntaxNode {
18589 &self.syntax
18590 }
18591}
18592impl AstNode for TransactionModeList {
18593 #[inline]
18594 fn can_cast(kind: SyntaxKind) -> bool {
18595 kind == SyntaxKind::TRANSACTION_MODE_LIST
18596 }
18597 #[inline]
18598 fn cast(syntax: SyntaxNode) -> Option<Self> {
18599 if Self::can_cast(syntax.kind()) {
18600 Some(Self { syntax })
18601 } else {
18602 None
18603 }
18604 }
18605 #[inline]
18606 fn syntax(&self) -> &SyntaxNode {
18607 &self.syntax
18608 }
18609}
18610impl AstNode for TransformFuncOption {
18611 #[inline]
18612 fn can_cast(kind: SyntaxKind) -> bool {
18613 kind == SyntaxKind::TRANSFORM_FUNC_OPTION
18614 }
18615 #[inline]
18616 fn cast(syntax: SyntaxNode) -> Option<Self> {
18617 if Self::can_cast(syntax.kind()) {
18618 Some(Self { syntax })
18619 } else {
18620 None
18621 }
18622 }
18623 #[inline]
18624 fn syntax(&self) -> &SyntaxNode {
18625 &self.syntax
18626 }
18627}
18628impl AstNode for Truncate {
18629 #[inline]
18630 fn can_cast(kind: SyntaxKind) -> bool {
18631 kind == SyntaxKind::TRUNCATE
18632 }
18633 #[inline]
18634 fn cast(syntax: SyntaxNode) -> Option<Self> {
18635 if Self::can_cast(syntax.kind()) {
18636 Some(Self { syntax })
18637 } else {
18638 None
18639 }
18640 }
18641 #[inline]
18642 fn syntax(&self) -> &SyntaxNode {
18643 &self.syntax
18644 }
18645}
18646impl AstNode for TupleExpr {
18647 #[inline]
18648 fn can_cast(kind: SyntaxKind) -> bool {
18649 kind == SyntaxKind::TUPLE_EXPR
18650 }
18651 #[inline]
18652 fn cast(syntax: SyntaxNode) -> Option<Self> {
18653 if Self::can_cast(syntax.kind()) {
18654 Some(Self { syntax })
18655 } else {
18656 None
18657 }
18658 }
18659 #[inline]
18660 fn syntax(&self) -> &SyntaxNode {
18661 &self.syntax
18662 }
18663}
18664impl AstNode for UnicodeNormalForm {
18665 #[inline]
18666 fn can_cast(kind: SyntaxKind) -> bool {
18667 kind == SyntaxKind::UNICODE_NORMAL_FORM
18668 }
18669 #[inline]
18670 fn cast(syntax: SyntaxNode) -> Option<Self> {
18671 if Self::can_cast(syntax.kind()) {
18672 Some(Self { syntax })
18673 } else {
18674 None
18675 }
18676 }
18677 #[inline]
18678 fn syntax(&self) -> &SyntaxNode {
18679 &self.syntax
18680 }
18681}
18682impl AstNode for UniqueConstraint {
18683 #[inline]
18684 fn can_cast(kind: SyntaxKind) -> bool {
18685 kind == SyntaxKind::UNIQUE_CONSTRAINT
18686 }
18687 #[inline]
18688 fn cast(syntax: SyntaxNode) -> Option<Self> {
18689 if Self::can_cast(syntax.kind()) {
18690 Some(Self { syntax })
18691 } else {
18692 None
18693 }
18694 }
18695 #[inline]
18696 fn syntax(&self) -> &SyntaxNode {
18697 &self.syntax
18698 }
18699}
18700impl AstNode for Unlisten {
18701 #[inline]
18702 fn can_cast(kind: SyntaxKind) -> bool {
18703 kind == SyntaxKind::UNLISTEN
18704 }
18705 #[inline]
18706 fn cast(syntax: SyntaxNode) -> Option<Self> {
18707 if Self::can_cast(syntax.kind()) {
18708 Some(Self { syntax })
18709 } else {
18710 None
18711 }
18712 }
18713 #[inline]
18714 fn syntax(&self) -> &SyntaxNode {
18715 &self.syntax
18716 }
18717}
18718impl AstNode for Update {
18719 #[inline]
18720 fn can_cast(kind: SyntaxKind) -> bool {
18721 kind == SyntaxKind::UPDATE
18722 }
18723 #[inline]
18724 fn cast(syntax: SyntaxNode) -> Option<Self> {
18725 if Self::can_cast(syntax.kind()) {
18726 Some(Self { syntax })
18727 } else {
18728 None
18729 }
18730 }
18731 #[inline]
18732 fn syntax(&self) -> &SyntaxNode {
18733 &self.syntax
18734 }
18735}
18736impl AstNode for UsingClause {
18737 #[inline]
18738 fn can_cast(kind: SyntaxKind) -> bool {
18739 kind == SyntaxKind::USING_CLAUSE
18740 }
18741 #[inline]
18742 fn cast(syntax: SyntaxNode) -> Option<Self> {
18743 if Self::can_cast(syntax.kind()) {
18744 Some(Self { syntax })
18745 } else {
18746 None
18747 }
18748 }
18749 #[inline]
18750 fn syntax(&self) -> &SyntaxNode {
18751 &self.syntax
18752 }
18753}
18754impl AstNode for UsingIndex {
18755 #[inline]
18756 fn can_cast(kind: SyntaxKind) -> bool {
18757 kind == SyntaxKind::USING_INDEX
18758 }
18759 #[inline]
18760 fn cast(syntax: SyntaxNode) -> Option<Self> {
18761 if Self::can_cast(syntax.kind()) {
18762 Some(Self { syntax })
18763 } else {
18764 None
18765 }
18766 }
18767 #[inline]
18768 fn syntax(&self) -> &SyntaxNode {
18769 &self.syntax
18770 }
18771}
18772impl AstNode for UsingMethod {
18773 #[inline]
18774 fn can_cast(kind: SyntaxKind) -> bool {
18775 kind == SyntaxKind::USING_METHOD
18776 }
18777 #[inline]
18778 fn cast(syntax: SyntaxNode) -> Option<Self> {
18779 if Self::can_cast(syntax.kind()) {
18780 Some(Self { syntax })
18781 } else {
18782 None
18783 }
18784 }
18785 #[inline]
18786 fn syntax(&self) -> &SyntaxNode {
18787 &self.syntax
18788 }
18789}
18790impl AstNode for Vacuum {
18791 #[inline]
18792 fn can_cast(kind: SyntaxKind) -> bool {
18793 kind == SyntaxKind::VACUUM
18794 }
18795 #[inline]
18796 fn cast(syntax: SyntaxNode) -> Option<Self> {
18797 if Self::can_cast(syntax.kind()) {
18798 Some(Self { syntax })
18799 } else {
18800 None
18801 }
18802 }
18803 #[inline]
18804 fn syntax(&self) -> &SyntaxNode {
18805 &self.syntax
18806 }
18807}
18808impl AstNode for ValidateConstraint {
18809 #[inline]
18810 fn can_cast(kind: SyntaxKind) -> bool {
18811 kind == SyntaxKind::VALIDATE_CONSTRAINT
18812 }
18813 #[inline]
18814 fn cast(syntax: SyntaxNode) -> Option<Self> {
18815 if Self::can_cast(syntax.kind()) {
18816 Some(Self { syntax })
18817 } else {
18818 None
18819 }
18820 }
18821 #[inline]
18822 fn syntax(&self) -> &SyntaxNode {
18823 &self.syntax
18824 }
18825}
18826impl AstNode for Values {
18827 #[inline]
18828 fn can_cast(kind: SyntaxKind) -> bool {
18829 kind == SyntaxKind::VALUES
18830 }
18831 #[inline]
18832 fn cast(syntax: SyntaxNode) -> Option<Self> {
18833 if Self::can_cast(syntax.kind()) {
18834 Some(Self { syntax })
18835 } else {
18836 None
18837 }
18838 }
18839 #[inline]
18840 fn syntax(&self) -> &SyntaxNode {
18841 &self.syntax
18842 }
18843}
18844impl AstNode for VolatilityFuncOption {
18845 #[inline]
18846 fn can_cast(kind: SyntaxKind) -> bool {
18847 kind == SyntaxKind::VOLATILITY_FUNC_OPTION
18848 }
18849 #[inline]
18850 fn cast(syntax: SyntaxNode) -> Option<Self> {
18851 if Self::can_cast(syntax.kind()) {
18852 Some(Self { syntax })
18853 } else {
18854 None
18855 }
18856 }
18857 #[inline]
18858 fn syntax(&self) -> &SyntaxNode {
18859 &self.syntax
18860 }
18861}
18862impl AstNode for WhenClause {
18863 #[inline]
18864 fn can_cast(kind: SyntaxKind) -> bool {
18865 kind == SyntaxKind::WHEN_CLAUSE
18866 }
18867 #[inline]
18868 fn cast(syntax: SyntaxNode) -> Option<Self> {
18869 if Self::can_cast(syntax.kind()) {
18870 Some(Self { syntax })
18871 } else {
18872 None
18873 }
18874 }
18875 #[inline]
18876 fn syntax(&self) -> &SyntaxNode {
18877 &self.syntax
18878 }
18879}
18880impl AstNode for WhereClause {
18881 #[inline]
18882 fn can_cast(kind: SyntaxKind) -> bool {
18883 kind == SyntaxKind::WHERE_CLAUSE
18884 }
18885 #[inline]
18886 fn cast(syntax: SyntaxNode) -> Option<Self> {
18887 if Self::can_cast(syntax.kind()) {
18888 Some(Self { syntax })
18889 } else {
18890 None
18891 }
18892 }
18893 #[inline]
18894 fn syntax(&self) -> &SyntaxNode {
18895 &self.syntax
18896 }
18897}
18898impl AstNode for WindowClause {
18899 #[inline]
18900 fn can_cast(kind: SyntaxKind) -> bool {
18901 kind == SyntaxKind::WINDOW_CLAUSE
18902 }
18903 #[inline]
18904 fn cast(syntax: SyntaxNode) -> Option<Self> {
18905 if Self::can_cast(syntax.kind()) {
18906 Some(Self { syntax })
18907 } else {
18908 None
18909 }
18910 }
18911 #[inline]
18912 fn syntax(&self) -> &SyntaxNode {
18913 &self.syntax
18914 }
18915}
18916impl AstNode for WindowDef {
18917 #[inline]
18918 fn can_cast(kind: SyntaxKind) -> bool {
18919 kind == SyntaxKind::WINDOW_DEF
18920 }
18921 #[inline]
18922 fn cast(syntax: SyntaxNode) -> Option<Self> {
18923 if Self::can_cast(syntax.kind()) {
18924 Some(Self { syntax })
18925 } else {
18926 None
18927 }
18928 }
18929 #[inline]
18930 fn syntax(&self) -> &SyntaxNode {
18931 &self.syntax
18932 }
18933}
18934impl AstNode for WindowFuncOption {
18935 #[inline]
18936 fn can_cast(kind: SyntaxKind) -> bool {
18937 kind == SyntaxKind::WINDOW_FUNC_OPTION
18938 }
18939 #[inline]
18940 fn cast(syntax: SyntaxNode) -> Option<Self> {
18941 if Self::can_cast(syntax.kind()) {
18942 Some(Self { syntax })
18943 } else {
18944 None
18945 }
18946 }
18947 #[inline]
18948 fn syntax(&self) -> &SyntaxNode {
18949 &self.syntax
18950 }
18951}
18952impl AstNode for WindowSpec {
18953 #[inline]
18954 fn can_cast(kind: SyntaxKind) -> bool {
18955 kind == SyntaxKind::WINDOW_SPEC
18956 }
18957 #[inline]
18958 fn cast(syntax: SyntaxNode) -> Option<Self> {
18959 if Self::can_cast(syntax.kind()) {
18960 Some(Self { syntax })
18961 } else {
18962 None
18963 }
18964 }
18965 #[inline]
18966 fn syntax(&self) -> &SyntaxNode {
18967 &self.syntax
18968 }
18969}
18970impl AstNode for WithClause {
18971 #[inline]
18972 fn can_cast(kind: SyntaxKind) -> bool {
18973 kind == SyntaxKind::WITH_CLAUSE
18974 }
18975 #[inline]
18976 fn cast(syntax: SyntaxNode) -> Option<Self> {
18977 if Self::can_cast(syntax.kind()) {
18978 Some(Self { syntax })
18979 } else {
18980 None
18981 }
18982 }
18983 #[inline]
18984 fn syntax(&self) -> &SyntaxNode {
18985 &self.syntax
18986 }
18987}
18988impl AstNode for WithData {
18989 #[inline]
18990 fn can_cast(kind: SyntaxKind) -> bool {
18991 kind == SyntaxKind::WITH_DATA
18992 }
18993 #[inline]
18994 fn cast(syntax: SyntaxNode) -> Option<Self> {
18995 if Self::can_cast(syntax.kind()) {
18996 Some(Self { syntax })
18997 } else {
18998 None
18999 }
19000 }
19001 #[inline]
19002 fn syntax(&self) -> &SyntaxNode {
19003 &self.syntax
19004 }
19005}
19006impl AstNode for WithNoData {
19007 #[inline]
19008 fn can_cast(kind: SyntaxKind) -> bool {
19009 kind == SyntaxKind::WITH_NO_DATA
19010 }
19011 #[inline]
19012 fn cast(syntax: SyntaxNode) -> Option<Self> {
19013 if Self::can_cast(syntax.kind()) {
19014 Some(Self { syntax })
19015 } else {
19016 None
19017 }
19018 }
19019 #[inline]
19020 fn syntax(&self) -> &SyntaxNode {
19021 &self.syntax
19022 }
19023}
19024impl AstNode for WithOptions {
19025 #[inline]
19026 fn can_cast(kind: SyntaxKind) -> bool {
19027 kind == SyntaxKind::WITH_OPTIONS
19028 }
19029 #[inline]
19030 fn cast(syntax: SyntaxNode) -> Option<Self> {
19031 if Self::can_cast(syntax.kind()) {
19032 Some(Self { syntax })
19033 } else {
19034 None
19035 }
19036 }
19037 #[inline]
19038 fn syntax(&self) -> &SyntaxNode {
19039 &self.syntax
19040 }
19041}
19042impl AstNode for WithParams {
19043 #[inline]
19044 fn can_cast(kind: SyntaxKind) -> bool {
19045 kind == SyntaxKind::WITH_PARAMS
19046 }
19047 #[inline]
19048 fn cast(syntax: SyntaxNode) -> Option<Self> {
19049 if Self::can_cast(syntax.kind()) {
19050 Some(Self { syntax })
19051 } else {
19052 None
19053 }
19054 }
19055 #[inline]
19056 fn syntax(&self) -> &SyntaxNode {
19057 &self.syntax
19058 }
19059}
19060impl AstNode for WithTable {
19061 #[inline]
19062 fn can_cast(kind: SyntaxKind) -> bool {
19063 kind == SyntaxKind::WITH_TABLE
19064 }
19065 #[inline]
19066 fn cast(syntax: SyntaxNode) -> Option<Self> {
19067 if Self::can_cast(syntax.kind()) {
19068 Some(Self { syntax })
19069 } else {
19070 None
19071 }
19072 }
19073 #[inline]
19074 fn syntax(&self) -> &SyntaxNode {
19075 &self.syntax
19076 }
19077}
19078impl AstNode for WithTimezone {
19079 #[inline]
19080 fn can_cast(kind: SyntaxKind) -> bool {
19081 kind == SyntaxKind::WITH_TIMEZONE
19082 }
19083 #[inline]
19084 fn cast(syntax: SyntaxNode) -> Option<Self> {
19085 if Self::can_cast(syntax.kind()) {
19086 Some(Self { syntax })
19087 } else {
19088 None
19089 }
19090 }
19091 #[inline]
19092 fn syntax(&self) -> &SyntaxNode {
19093 &self.syntax
19094 }
19095}
19096impl AstNode for WithinClause {
19097 #[inline]
19098 fn can_cast(kind: SyntaxKind) -> bool {
19099 kind == SyntaxKind::WITHIN_CLAUSE
19100 }
19101 #[inline]
19102 fn cast(syntax: SyntaxNode) -> Option<Self> {
19103 if Self::can_cast(syntax.kind()) {
19104 Some(Self { syntax })
19105 } else {
19106 None
19107 }
19108 }
19109 #[inline]
19110 fn syntax(&self) -> &SyntaxNode {
19111 &self.syntax
19112 }
19113}
19114impl AstNode for WithoutOids {
19115 #[inline]
19116 fn can_cast(kind: SyntaxKind) -> bool {
19117 kind == SyntaxKind::WITHOUT_OIDS
19118 }
19119 #[inline]
19120 fn cast(syntax: SyntaxNode) -> Option<Self> {
19121 if Self::can_cast(syntax.kind()) {
19122 Some(Self { syntax })
19123 } else {
19124 None
19125 }
19126 }
19127 #[inline]
19128 fn syntax(&self) -> &SyntaxNode {
19129 &self.syntax
19130 }
19131}
19132impl AstNode for WithoutTimezone {
19133 #[inline]
19134 fn can_cast(kind: SyntaxKind) -> bool {
19135 kind == SyntaxKind::WITHOUT_TIMEZONE
19136 }
19137 #[inline]
19138 fn cast(syntax: SyntaxNode) -> Option<Self> {
19139 if Self::can_cast(syntax.kind()) {
19140 Some(Self { syntax })
19141 } else {
19142 None
19143 }
19144 }
19145 #[inline]
19146 fn syntax(&self) -> &SyntaxNode {
19147 &self.syntax
19148 }
19149}
19150impl AstNode for XmlColumnOption {
19151 #[inline]
19152 fn can_cast(kind: SyntaxKind) -> bool {
19153 kind == SyntaxKind::XML_COLUMN_OPTION
19154 }
19155 #[inline]
19156 fn cast(syntax: SyntaxNode) -> Option<Self> {
19157 if Self::can_cast(syntax.kind()) {
19158 Some(Self { syntax })
19159 } else {
19160 None
19161 }
19162 }
19163 #[inline]
19164 fn syntax(&self) -> &SyntaxNode {
19165 &self.syntax
19166 }
19167}
19168impl AstNode for XmlColumnOptionList {
19169 #[inline]
19170 fn can_cast(kind: SyntaxKind) -> bool {
19171 kind == SyntaxKind::XML_COLUMN_OPTION_LIST
19172 }
19173 #[inline]
19174 fn cast(syntax: SyntaxNode) -> Option<Self> {
19175 if Self::can_cast(syntax.kind()) {
19176 Some(Self { syntax })
19177 } else {
19178 None
19179 }
19180 }
19181 #[inline]
19182 fn syntax(&self) -> &SyntaxNode {
19183 &self.syntax
19184 }
19185}
19186impl AstNode for XmlTableColumn {
19187 #[inline]
19188 fn can_cast(kind: SyntaxKind) -> bool {
19189 kind == SyntaxKind::XML_TABLE_COLUMN
19190 }
19191 #[inline]
19192 fn cast(syntax: SyntaxNode) -> Option<Self> {
19193 if Self::can_cast(syntax.kind()) {
19194 Some(Self { syntax })
19195 } else {
19196 None
19197 }
19198 }
19199 #[inline]
19200 fn syntax(&self) -> &SyntaxNode {
19201 &self.syntax
19202 }
19203}
19204impl AstNode for XmlTableColumnList {
19205 #[inline]
19206 fn can_cast(kind: SyntaxKind) -> bool {
19207 kind == SyntaxKind::XML_TABLE_COLUMN_LIST
19208 }
19209 #[inline]
19210 fn cast(syntax: SyntaxNode) -> Option<Self> {
19211 if Self::can_cast(syntax.kind()) {
19212 Some(Self { syntax })
19213 } else {
19214 None
19215 }
19216 }
19217 #[inline]
19218 fn syntax(&self) -> &SyntaxNode {
19219 &self.syntax
19220 }
19221}
19222impl AstNode for AlterColumnOption {
19223 #[inline]
19224 fn can_cast(kind: SyntaxKind) -> bool {
19225 matches!(
19226 kind,
19227 SyntaxKind::ADD_GENERATED
19228 | SyntaxKind::DROP_DEFAULT
19229 | SyntaxKind::DROP_EXPRESSION
19230 | SyntaxKind::DROP_IDENTITY
19231 | SyntaxKind::DROP_NOT_NULL
19232 | SyntaxKind::RESET_OPTIONS
19233 | SyntaxKind::RESTART
19234 | SyntaxKind::SET_COMPRESSION
19235 | SyntaxKind::SET_DEFAULT
19236 | SyntaxKind::SET_EXPRESSION
19237 | SyntaxKind::SET_GENERATED
19238 | SyntaxKind::SET_GENERATED_OPTIONS
19239 | SyntaxKind::SET_NOT_NULL
19240 | SyntaxKind::SET_OPTIONS
19241 | SyntaxKind::SET_SEQUENCE_OPTION
19242 | SyntaxKind::SET_STATISTICS
19243 | SyntaxKind::SET_STORAGE
19244 | SyntaxKind::SET_TYPE
19245 )
19246 }
19247 #[inline]
19248 fn cast(syntax: SyntaxNode) -> Option<Self> {
19249 let res = match syntax.kind() {
19250 SyntaxKind::ADD_GENERATED => AlterColumnOption::AddGenerated(AddGenerated { syntax }),
19251 SyntaxKind::DROP_DEFAULT => AlterColumnOption::DropDefault(DropDefault { syntax }),
19252 SyntaxKind::DROP_EXPRESSION => {
19253 AlterColumnOption::DropExpression(DropExpression { syntax })
19254 }
19255 SyntaxKind::DROP_IDENTITY => AlterColumnOption::DropIdentity(DropIdentity { syntax }),
19256 SyntaxKind::DROP_NOT_NULL => AlterColumnOption::DropNotNull(DropNotNull { syntax }),
19257 SyntaxKind::RESET_OPTIONS => AlterColumnOption::ResetOptions(ResetOptions { syntax }),
19258 SyntaxKind::RESTART => AlterColumnOption::Restart(Restart { syntax }),
19259 SyntaxKind::SET_COMPRESSION => {
19260 AlterColumnOption::SetCompression(SetCompression { syntax })
19261 }
19262 SyntaxKind::SET_DEFAULT => AlterColumnOption::SetDefault(SetDefault { syntax }),
19263 SyntaxKind::SET_EXPRESSION => {
19264 AlterColumnOption::SetExpression(SetExpression { syntax })
19265 }
19266 SyntaxKind::SET_GENERATED => AlterColumnOption::SetGenerated(SetGenerated { syntax }),
19267 SyntaxKind::SET_GENERATED_OPTIONS => {
19268 AlterColumnOption::SetGeneratedOptions(SetGeneratedOptions { syntax })
19269 }
19270 SyntaxKind::SET_NOT_NULL => AlterColumnOption::SetNotNull(SetNotNull { syntax }),
19271 SyntaxKind::SET_OPTIONS => AlterColumnOption::SetOptions(SetOptions { syntax }),
19272 SyntaxKind::SET_SEQUENCE_OPTION => {
19273 AlterColumnOption::SetSequenceOption(SetSequenceOption { syntax })
19274 }
19275 SyntaxKind::SET_STATISTICS => {
19276 AlterColumnOption::SetStatistics(SetStatistics { syntax })
19277 }
19278 SyntaxKind::SET_STORAGE => AlterColumnOption::SetStorage(SetStorage { syntax }),
19279 SyntaxKind::SET_TYPE => AlterColumnOption::SetType(SetType { syntax }),
19280 _ => {
19281 return None;
19282 }
19283 };
19284 Some(res)
19285 }
19286 #[inline]
19287 fn syntax(&self) -> &SyntaxNode {
19288 match self {
19289 AlterColumnOption::AddGenerated(it) => &it.syntax,
19290 AlterColumnOption::DropDefault(it) => &it.syntax,
19291 AlterColumnOption::DropExpression(it) => &it.syntax,
19292 AlterColumnOption::DropIdentity(it) => &it.syntax,
19293 AlterColumnOption::DropNotNull(it) => &it.syntax,
19294 AlterColumnOption::ResetOptions(it) => &it.syntax,
19295 AlterColumnOption::Restart(it) => &it.syntax,
19296 AlterColumnOption::SetCompression(it) => &it.syntax,
19297 AlterColumnOption::SetDefault(it) => &it.syntax,
19298 AlterColumnOption::SetExpression(it) => &it.syntax,
19299 AlterColumnOption::SetGenerated(it) => &it.syntax,
19300 AlterColumnOption::SetGeneratedOptions(it) => &it.syntax,
19301 AlterColumnOption::SetNotNull(it) => &it.syntax,
19302 AlterColumnOption::SetOptions(it) => &it.syntax,
19303 AlterColumnOption::SetSequenceOption(it) => &it.syntax,
19304 AlterColumnOption::SetStatistics(it) => &it.syntax,
19305 AlterColumnOption::SetStorage(it) => &it.syntax,
19306 AlterColumnOption::SetType(it) => &it.syntax,
19307 }
19308 }
19309}
19310impl From<AddGenerated> for AlterColumnOption {
19311 #[inline]
19312 fn from(node: AddGenerated) -> AlterColumnOption {
19313 AlterColumnOption::AddGenerated(node)
19314 }
19315}
19316impl From<DropDefault> for AlterColumnOption {
19317 #[inline]
19318 fn from(node: DropDefault) -> AlterColumnOption {
19319 AlterColumnOption::DropDefault(node)
19320 }
19321}
19322impl From<DropExpression> for AlterColumnOption {
19323 #[inline]
19324 fn from(node: DropExpression) -> AlterColumnOption {
19325 AlterColumnOption::DropExpression(node)
19326 }
19327}
19328impl From<DropIdentity> for AlterColumnOption {
19329 #[inline]
19330 fn from(node: DropIdentity) -> AlterColumnOption {
19331 AlterColumnOption::DropIdentity(node)
19332 }
19333}
19334impl From<DropNotNull> for AlterColumnOption {
19335 #[inline]
19336 fn from(node: DropNotNull) -> AlterColumnOption {
19337 AlterColumnOption::DropNotNull(node)
19338 }
19339}
19340impl From<ResetOptions> for AlterColumnOption {
19341 #[inline]
19342 fn from(node: ResetOptions) -> AlterColumnOption {
19343 AlterColumnOption::ResetOptions(node)
19344 }
19345}
19346impl From<Restart> for AlterColumnOption {
19347 #[inline]
19348 fn from(node: Restart) -> AlterColumnOption {
19349 AlterColumnOption::Restart(node)
19350 }
19351}
19352impl From<SetCompression> for AlterColumnOption {
19353 #[inline]
19354 fn from(node: SetCompression) -> AlterColumnOption {
19355 AlterColumnOption::SetCompression(node)
19356 }
19357}
19358impl From<SetDefault> for AlterColumnOption {
19359 #[inline]
19360 fn from(node: SetDefault) -> AlterColumnOption {
19361 AlterColumnOption::SetDefault(node)
19362 }
19363}
19364impl From<SetExpression> for AlterColumnOption {
19365 #[inline]
19366 fn from(node: SetExpression) -> AlterColumnOption {
19367 AlterColumnOption::SetExpression(node)
19368 }
19369}
19370impl From<SetGenerated> for AlterColumnOption {
19371 #[inline]
19372 fn from(node: SetGenerated) -> AlterColumnOption {
19373 AlterColumnOption::SetGenerated(node)
19374 }
19375}
19376impl From<SetGeneratedOptions> for AlterColumnOption {
19377 #[inline]
19378 fn from(node: SetGeneratedOptions) -> AlterColumnOption {
19379 AlterColumnOption::SetGeneratedOptions(node)
19380 }
19381}
19382impl From<SetNotNull> for AlterColumnOption {
19383 #[inline]
19384 fn from(node: SetNotNull) -> AlterColumnOption {
19385 AlterColumnOption::SetNotNull(node)
19386 }
19387}
19388impl From<SetOptions> for AlterColumnOption {
19389 #[inline]
19390 fn from(node: SetOptions) -> AlterColumnOption {
19391 AlterColumnOption::SetOptions(node)
19392 }
19393}
19394impl From<SetSequenceOption> for AlterColumnOption {
19395 #[inline]
19396 fn from(node: SetSequenceOption) -> AlterColumnOption {
19397 AlterColumnOption::SetSequenceOption(node)
19398 }
19399}
19400impl From<SetStatistics> for AlterColumnOption {
19401 #[inline]
19402 fn from(node: SetStatistics) -> AlterColumnOption {
19403 AlterColumnOption::SetStatistics(node)
19404 }
19405}
19406impl From<SetStorage> for AlterColumnOption {
19407 #[inline]
19408 fn from(node: SetStorage) -> AlterColumnOption {
19409 AlterColumnOption::SetStorage(node)
19410 }
19411}
19412impl From<SetType> for AlterColumnOption {
19413 #[inline]
19414 fn from(node: SetType) -> AlterColumnOption {
19415 AlterColumnOption::SetType(node)
19416 }
19417}
19418impl AstNode for AlterDomainAction {
19419 #[inline]
19420 fn can_cast(kind: SyntaxKind) -> bool {
19421 matches!(
19422 kind,
19423 SyntaxKind::ADD_CONSTRAINT
19424 | SyntaxKind::DROP_CONSTRAINT
19425 | SyntaxKind::DROP_DEFAULT
19426 | SyntaxKind::DROP_NOT_NULL
19427 | SyntaxKind::OWNER_TO
19428 | SyntaxKind::RENAME_CONSTRAINT
19429 | SyntaxKind::RENAME_TO
19430 | SyntaxKind::SET_DEFAULT
19431 | SyntaxKind::SET_NOT_NULL
19432 | SyntaxKind::SET_SCHEMA
19433 | SyntaxKind::VALIDATE_CONSTRAINT
19434 )
19435 }
19436 #[inline]
19437 fn cast(syntax: SyntaxNode) -> Option<Self> {
19438 let res = match syntax.kind() {
19439 SyntaxKind::ADD_CONSTRAINT => {
19440 AlterDomainAction::AddConstraint(AddConstraint { syntax })
19441 }
19442 SyntaxKind::DROP_CONSTRAINT => {
19443 AlterDomainAction::DropConstraint(DropConstraint { syntax })
19444 }
19445 SyntaxKind::DROP_DEFAULT => AlterDomainAction::DropDefault(DropDefault { syntax }),
19446 SyntaxKind::DROP_NOT_NULL => AlterDomainAction::DropNotNull(DropNotNull { syntax }),
19447 SyntaxKind::OWNER_TO => AlterDomainAction::OwnerTo(OwnerTo { syntax }),
19448 SyntaxKind::RENAME_CONSTRAINT => {
19449 AlterDomainAction::RenameConstraint(RenameConstraint { syntax })
19450 }
19451 SyntaxKind::RENAME_TO => AlterDomainAction::RenameTo(RenameTo { syntax }),
19452 SyntaxKind::SET_DEFAULT => AlterDomainAction::SetDefault(SetDefault { syntax }),
19453 SyntaxKind::SET_NOT_NULL => AlterDomainAction::SetNotNull(SetNotNull { syntax }),
19454 SyntaxKind::SET_SCHEMA => AlterDomainAction::SetSchema(SetSchema { syntax }),
19455 SyntaxKind::VALIDATE_CONSTRAINT => {
19456 AlterDomainAction::ValidateConstraint(ValidateConstraint { syntax })
19457 }
19458 _ => {
19459 return None;
19460 }
19461 };
19462 Some(res)
19463 }
19464 #[inline]
19465 fn syntax(&self) -> &SyntaxNode {
19466 match self {
19467 AlterDomainAction::AddConstraint(it) => &it.syntax,
19468 AlterDomainAction::DropConstraint(it) => &it.syntax,
19469 AlterDomainAction::DropDefault(it) => &it.syntax,
19470 AlterDomainAction::DropNotNull(it) => &it.syntax,
19471 AlterDomainAction::OwnerTo(it) => &it.syntax,
19472 AlterDomainAction::RenameConstraint(it) => &it.syntax,
19473 AlterDomainAction::RenameTo(it) => &it.syntax,
19474 AlterDomainAction::SetDefault(it) => &it.syntax,
19475 AlterDomainAction::SetNotNull(it) => &it.syntax,
19476 AlterDomainAction::SetSchema(it) => &it.syntax,
19477 AlterDomainAction::ValidateConstraint(it) => &it.syntax,
19478 }
19479 }
19480}
19481impl From<AddConstraint> for AlterDomainAction {
19482 #[inline]
19483 fn from(node: AddConstraint) -> AlterDomainAction {
19484 AlterDomainAction::AddConstraint(node)
19485 }
19486}
19487impl From<DropConstraint> for AlterDomainAction {
19488 #[inline]
19489 fn from(node: DropConstraint) -> AlterDomainAction {
19490 AlterDomainAction::DropConstraint(node)
19491 }
19492}
19493impl From<DropDefault> for AlterDomainAction {
19494 #[inline]
19495 fn from(node: DropDefault) -> AlterDomainAction {
19496 AlterDomainAction::DropDefault(node)
19497 }
19498}
19499impl From<DropNotNull> for AlterDomainAction {
19500 #[inline]
19501 fn from(node: DropNotNull) -> AlterDomainAction {
19502 AlterDomainAction::DropNotNull(node)
19503 }
19504}
19505impl From<OwnerTo> for AlterDomainAction {
19506 #[inline]
19507 fn from(node: OwnerTo) -> AlterDomainAction {
19508 AlterDomainAction::OwnerTo(node)
19509 }
19510}
19511impl From<RenameConstraint> for AlterDomainAction {
19512 #[inline]
19513 fn from(node: RenameConstraint) -> AlterDomainAction {
19514 AlterDomainAction::RenameConstraint(node)
19515 }
19516}
19517impl From<RenameTo> for AlterDomainAction {
19518 #[inline]
19519 fn from(node: RenameTo) -> AlterDomainAction {
19520 AlterDomainAction::RenameTo(node)
19521 }
19522}
19523impl From<SetDefault> for AlterDomainAction {
19524 #[inline]
19525 fn from(node: SetDefault) -> AlterDomainAction {
19526 AlterDomainAction::SetDefault(node)
19527 }
19528}
19529impl From<SetNotNull> for AlterDomainAction {
19530 #[inline]
19531 fn from(node: SetNotNull) -> AlterDomainAction {
19532 AlterDomainAction::SetNotNull(node)
19533 }
19534}
19535impl From<SetSchema> for AlterDomainAction {
19536 #[inline]
19537 fn from(node: SetSchema) -> AlterDomainAction {
19538 AlterDomainAction::SetSchema(node)
19539 }
19540}
19541impl From<ValidateConstraint> for AlterDomainAction {
19542 #[inline]
19543 fn from(node: ValidateConstraint) -> AlterDomainAction {
19544 AlterDomainAction::ValidateConstraint(node)
19545 }
19546}
19547impl AstNode for AlterTableAction {
19548 #[inline]
19549 fn can_cast(kind: SyntaxKind) -> bool {
19550 matches!(
19551 kind,
19552 SyntaxKind::ADD_COLUMN
19553 | SyntaxKind::ADD_CONSTRAINT
19554 | SyntaxKind::ALTER_COLUMN
19555 | SyntaxKind::ALTER_CONSTRAINT
19556 | SyntaxKind::ATTACH_PARTITION
19557 | SyntaxKind::CLUSTER_ON
19558 | SyntaxKind::DETACH_PARTITION
19559 | SyntaxKind::DISABLE_RLS
19560 | SyntaxKind::DISABLE_RULE
19561 | SyntaxKind::DISABLE_TRIGGER
19562 | SyntaxKind::DROP_COLUMN
19563 | SyntaxKind::DROP_CONSTRAINT
19564 | SyntaxKind::ENABLE_ALWAYS_RULE
19565 | SyntaxKind::ENABLE_ALWAYS_TRIGGER
19566 | SyntaxKind::ENABLE_REPLICA_RULE
19567 | SyntaxKind::ENABLE_REPLICA_TRIGGER
19568 | SyntaxKind::ENABLE_RLS
19569 | SyntaxKind::ENABLE_RULE
19570 | SyntaxKind::ENABLE_TRIGGER
19571 | SyntaxKind::FORCE_RLS
19572 | SyntaxKind::INHERIT
19573 | SyntaxKind::NO_FORCE_RLS
19574 | SyntaxKind::NO_INHERIT
19575 | SyntaxKind::NOT_OF
19576 | SyntaxKind::OF_TYPE
19577 | SyntaxKind::OPTIONS_LIST
19578 | SyntaxKind::OWNER_TO
19579 | SyntaxKind::RENAME_COLUMN
19580 | SyntaxKind::RENAME_CONSTRAINT
19581 | SyntaxKind::RENAME_TABLE
19582 | SyntaxKind::REPLICA_IDENTITY
19583 | SyntaxKind::RESET_STORAGE_PARAMS
19584 | SyntaxKind::SET_ACCESS_METHOD
19585 | SyntaxKind::SET_LOGGED
19586 | SyntaxKind::SET_SCHEMA
19587 | SyntaxKind::SET_STORAGE_PARAMS
19588 | SyntaxKind::SET_TABLESPACE
19589 | SyntaxKind::SET_UNLOGGED
19590 | SyntaxKind::SET_WITHOUT_CLUSTER
19591 | SyntaxKind::SET_WITHOUT_OIDS
19592 | SyntaxKind::VALIDATE_CONSTRAINT
19593 )
19594 }
19595 #[inline]
19596 fn cast(syntax: SyntaxNode) -> Option<Self> {
19597 let res = match syntax.kind() {
19598 SyntaxKind::ADD_COLUMN => AlterTableAction::AddColumn(AddColumn { syntax }),
19599 SyntaxKind::ADD_CONSTRAINT => AlterTableAction::AddConstraint(AddConstraint { syntax }),
19600 SyntaxKind::ALTER_COLUMN => AlterTableAction::AlterColumn(AlterColumn { syntax }),
19601 SyntaxKind::ALTER_CONSTRAINT => {
19602 AlterTableAction::AlterConstraint(AlterConstraint { syntax })
19603 }
19604 SyntaxKind::ATTACH_PARTITION => {
19605 AlterTableAction::AttachPartition(AttachPartition { syntax })
19606 }
19607 SyntaxKind::CLUSTER_ON => AlterTableAction::ClusterOn(ClusterOn { syntax }),
19608 SyntaxKind::DETACH_PARTITION => {
19609 AlterTableAction::DetachPartition(DetachPartition { syntax })
19610 }
19611 SyntaxKind::DISABLE_RLS => AlterTableAction::DisableRls(DisableRls { syntax }),
19612 SyntaxKind::DISABLE_RULE => AlterTableAction::DisableRule(DisableRule { syntax }),
19613 SyntaxKind::DISABLE_TRIGGER => {
19614 AlterTableAction::DisableTrigger(DisableTrigger { syntax })
19615 }
19616 SyntaxKind::DROP_COLUMN => AlterTableAction::DropColumn(DropColumn { syntax }),
19617 SyntaxKind::DROP_CONSTRAINT => {
19618 AlterTableAction::DropConstraint(DropConstraint { syntax })
19619 }
19620 SyntaxKind::ENABLE_ALWAYS_RULE => {
19621 AlterTableAction::EnableAlwaysRule(EnableAlwaysRule { syntax })
19622 }
19623 SyntaxKind::ENABLE_ALWAYS_TRIGGER => {
19624 AlterTableAction::EnableAlwaysTrigger(EnableAlwaysTrigger { syntax })
19625 }
19626 SyntaxKind::ENABLE_REPLICA_RULE => {
19627 AlterTableAction::EnableReplicaRule(EnableReplicaRule { syntax })
19628 }
19629 SyntaxKind::ENABLE_REPLICA_TRIGGER => {
19630 AlterTableAction::EnableReplicaTrigger(EnableReplicaTrigger { syntax })
19631 }
19632 SyntaxKind::ENABLE_RLS => AlterTableAction::EnableRls(EnableRls { syntax }),
19633 SyntaxKind::ENABLE_RULE => AlterTableAction::EnableRule(EnableRule { syntax }),
19634 SyntaxKind::ENABLE_TRIGGER => AlterTableAction::EnableTrigger(EnableTrigger { syntax }),
19635 SyntaxKind::FORCE_RLS => AlterTableAction::ForceRls(ForceRls { syntax }),
19636 SyntaxKind::INHERIT => AlterTableAction::Inherit(Inherit { syntax }),
19637 SyntaxKind::NO_FORCE_RLS => AlterTableAction::NoForceRls(NoForceRls { syntax }),
19638 SyntaxKind::NO_INHERIT => AlterTableAction::NoInherit(NoInherit { syntax }),
19639 SyntaxKind::NOT_OF => AlterTableAction::NotOf(NotOf { syntax }),
19640 SyntaxKind::OF_TYPE => AlterTableAction::OfType(OfType { syntax }),
19641 SyntaxKind::OPTIONS_LIST => AlterTableAction::OptionsList(OptionsList { syntax }),
19642 SyntaxKind::OWNER_TO => AlterTableAction::OwnerTo(OwnerTo { syntax }),
19643 SyntaxKind::RENAME_COLUMN => AlterTableAction::RenameColumn(RenameColumn { syntax }),
19644 SyntaxKind::RENAME_CONSTRAINT => {
19645 AlterTableAction::RenameConstraint(RenameConstraint { syntax })
19646 }
19647 SyntaxKind::RENAME_TABLE => AlterTableAction::RenameTable(RenameTable { syntax }),
19648 SyntaxKind::REPLICA_IDENTITY => {
19649 AlterTableAction::ReplicaIdentity(ReplicaIdentity { syntax })
19650 }
19651 SyntaxKind::RESET_STORAGE_PARAMS => {
19652 AlterTableAction::ResetStorageParams(ResetStorageParams { syntax })
19653 }
19654 SyntaxKind::SET_ACCESS_METHOD => {
19655 AlterTableAction::SetAccessMethod(SetAccessMethod { syntax })
19656 }
19657 SyntaxKind::SET_LOGGED => AlterTableAction::SetLogged(SetLogged { syntax }),
19658 SyntaxKind::SET_SCHEMA => AlterTableAction::SetSchema(SetSchema { syntax }),
19659 SyntaxKind::SET_STORAGE_PARAMS => {
19660 AlterTableAction::SetStorageParams(SetStorageParams { syntax })
19661 }
19662 SyntaxKind::SET_TABLESPACE => AlterTableAction::SetTablespace(SetTablespace { syntax }),
19663 SyntaxKind::SET_UNLOGGED => AlterTableAction::SetUnlogged(SetUnlogged { syntax }),
19664 SyntaxKind::SET_WITHOUT_CLUSTER => {
19665 AlterTableAction::SetWithoutCluster(SetWithoutCluster { syntax })
19666 }
19667 SyntaxKind::SET_WITHOUT_OIDS => {
19668 AlterTableAction::SetWithoutOids(SetWithoutOids { syntax })
19669 }
19670 SyntaxKind::VALIDATE_CONSTRAINT => {
19671 AlterTableAction::ValidateConstraint(ValidateConstraint { syntax })
19672 }
19673 _ => {
19674 return None;
19675 }
19676 };
19677 Some(res)
19678 }
19679 #[inline]
19680 fn syntax(&self) -> &SyntaxNode {
19681 match self {
19682 AlterTableAction::AddColumn(it) => &it.syntax,
19683 AlterTableAction::AddConstraint(it) => &it.syntax,
19684 AlterTableAction::AlterColumn(it) => &it.syntax,
19685 AlterTableAction::AlterConstraint(it) => &it.syntax,
19686 AlterTableAction::AttachPartition(it) => &it.syntax,
19687 AlterTableAction::ClusterOn(it) => &it.syntax,
19688 AlterTableAction::DetachPartition(it) => &it.syntax,
19689 AlterTableAction::DisableRls(it) => &it.syntax,
19690 AlterTableAction::DisableRule(it) => &it.syntax,
19691 AlterTableAction::DisableTrigger(it) => &it.syntax,
19692 AlterTableAction::DropColumn(it) => &it.syntax,
19693 AlterTableAction::DropConstraint(it) => &it.syntax,
19694 AlterTableAction::EnableAlwaysRule(it) => &it.syntax,
19695 AlterTableAction::EnableAlwaysTrigger(it) => &it.syntax,
19696 AlterTableAction::EnableReplicaRule(it) => &it.syntax,
19697 AlterTableAction::EnableReplicaTrigger(it) => &it.syntax,
19698 AlterTableAction::EnableRls(it) => &it.syntax,
19699 AlterTableAction::EnableRule(it) => &it.syntax,
19700 AlterTableAction::EnableTrigger(it) => &it.syntax,
19701 AlterTableAction::ForceRls(it) => &it.syntax,
19702 AlterTableAction::Inherit(it) => &it.syntax,
19703 AlterTableAction::NoForceRls(it) => &it.syntax,
19704 AlterTableAction::NoInherit(it) => &it.syntax,
19705 AlterTableAction::NotOf(it) => &it.syntax,
19706 AlterTableAction::OfType(it) => &it.syntax,
19707 AlterTableAction::OptionsList(it) => &it.syntax,
19708 AlterTableAction::OwnerTo(it) => &it.syntax,
19709 AlterTableAction::RenameColumn(it) => &it.syntax,
19710 AlterTableAction::RenameConstraint(it) => &it.syntax,
19711 AlterTableAction::RenameTable(it) => &it.syntax,
19712 AlterTableAction::ReplicaIdentity(it) => &it.syntax,
19713 AlterTableAction::ResetStorageParams(it) => &it.syntax,
19714 AlterTableAction::SetAccessMethod(it) => &it.syntax,
19715 AlterTableAction::SetLogged(it) => &it.syntax,
19716 AlterTableAction::SetSchema(it) => &it.syntax,
19717 AlterTableAction::SetStorageParams(it) => &it.syntax,
19718 AlterTableAction::SetTablespace(it) => &it.syntax,
19719 AlterTableAction::SetUnlogged(it) => &it.syntax,
19720 AlterTableAction::SetWithoutCluster(it) => &it.syntax,
19721 AlterTableAction::SetWithoutOids(it) => &it.syntax,
19722 AlterTableAction::ValidateConstraint(it) => &it.syntax,
19723 }
19724 }
19725}
19726impl From<AddColumn> for AlterTableAction {
19727 #[inline]
19728 fn from(node: AddColumn) -> AlterTableAction {
19729 AlterTableAction::AddColumn(node)
19730 }
19731}
19732impl From<AddConstraint> for AlterTableAction {
19733 #[inline]
19734 fn from(node: AddConstraint) -> AlterTableAction {
19735 AlterTableAction::AddConstraint(node)
19736 }
19737}
19738impl From<AlterColumn> for AlterTableAction {
19739 #[inline]
19740 fn from(node: AlterColumn) -> AlterTableAction {
19741 AlterTableAction::AlterColumn(node)
19742 }
19743}
19744impl From<AlterConstraint> for AlterTableAction {
19745 #[inline]
19746 fn from(node: AlterConstraint) -> AlterTableAction {
19747 AlterTableAction::AlterConstraint(node)
19748 }
19749}
19750impl From<AttachPartition> for AlterTableAction {
19751 #[inline]
19752 fn from(node: AttachPartition) -> AlterTableAction {
19753 AlterTableAction::AttachPartition(node)
19754 }
19755}
19756impl From<ClusterOn> for AlterTableAction {
19757 #[inline]
19758 fn from(node: ClusterOn) -> AlterTableAction {
19759 AlterTableAction::ClusterOn(node)
19760 }
19761}
19762impl From<DetachPartition> for AlterTableAction {
19763 #[inline]
19764 fn from(node: DetachPartition) -> AlterTableAction {
19765 AlterTableAction::DetachPartition(node)
19766 }
19767}
19768impl From<DisableRls> for AlterTableAction {
19769 #[inline]
19770 fn from(node: DisableRls) -> AlterTableAction {
19771 AlterTableAction::DisableRls(node)
19772 }
19773}
19774impl From<DisableRule> for AlterTableAction {
19775 #[inline]
19776 fn from(node: DisableRule) -> AlterTableAction {
19777 AlterTableAction::DisableRule(node)
19778 }
19779}
19780impl From<DisableTrigger> for AlterTableAction {
19781 #[inline]
19782 fn from(node: DisableTrigger) -> AlterTableAction {
19783 AlterTableAction::DisableTrigger(node)
19784 }
19785}
19786impl From<DropColumn> for AlterTableAction {
19787 #[inline]
19788 fn from(node: DropColumn) -> AlterTableAction {
19789 AlterTableAction::DropColumn(node)
19790 }
19791}
19792impl From<DropConstraint> for AlterTableAction {
19793 #[inline]
19794 fn from(node: DropConstraint) -> AlterTableAction {
19795 AlterTableAction::DropConstraint(node)
19796 }
19797}
19798impl From<EnableAlwaysRule> for AlterTableAction {
19799 #[inline]
19800 fn from(node: EnableAlwaysRule) -> AlterTableAction {
19801 AlterTableAction::EnableAlwaysRule(node)
19802 }
19803}
19804impl From<EnableAlwaysTrigger> for AlterTableAction {
19805 #[inline]
19806 fn from(node: EnableAlwaysTrigger) -> AlterTableAction {
19807 AlterTableAction::EnableAlwaysTrigger(node)
19808 }
19809}
19810impl From<EnableReplicaRule> for AlterTableAction {
19811 #[inline]
19812 fn from(node: EnableReplicaRule) -> AlterTableAction {
19813 AlterTableAction::EnableReplicaRule(node)
19814 }
19815}
19816impl From<EnableReplicaTrigger> for AlterTableAction {
19817 #[inline]
19818 fn from(node: EnableReplicaTrigger) -> AlterTableAction {
19819 AlterTableAction::EnableReplicaTrigger(node)
19820 }
19821}
19822impl From<EnableRls> for AlterTableAction {
19823 #[inline]
19824 fn from(node: EnableRls) -> AlterTableAction {
19825 AlterTableAction::EnableRls(node)
19826 }
19827}
19828impl From<EnableRule> for AlterTableAction {
19829 #[inline]
19830 fn from(node: EnableRule) -> AlterTableAction {
19831 AlterTableAction::EnableRule(node)
19832 }
19833}
19834impl From<EnableTrigger> for AlterTableAction {
19835 #[inline]
19836 fn from(node: EnableTrigger) -> AlterTableAction {
19837 AlterTableAction::EnableTrigger(node)
19838 }
19839}
19840impl From<ForceRls> for AlterTableAction {
19841 #[inline]
19842 fn from(node: ForceRls) -> AlterTableAction {
19843 AlterTableAction::ForceRls(node)
19844 }
19845}
19846impl From<Inherit> for AlterTableAction {
19847 #[inline]
19848 fn from(node: Inherit) -> AlterTableAction {
19849 AlterTableAction::Inherit(node)
19850 }
19851}
19852impl From<NoForceRls> for AlterTableAction {
19853 #[inline]
19854 fn from(node: NoForceRls) -> AlterTableAction {
19855 AlterTableAction::NoForceRls(node)
19856 }
19857}
19858impl From<NoInherit> for AlterTableAction {
19859 #[inline]
19860 fn from(node: NoInherit) -> AlterTableAction {
19861 AlterTableAction::NoInherit(node)
19862 }
19863}
19864impl From<NotOf> for AlterTableAction {
19865 #[inline]
19866 fn from(node: NotOf) -> AlterTableAction {
19867 AlterTableAction::NotOf(node)
19868 }
19869}
19870impl From<OfType> for AlterTableAction {
19871 #[inline]
19872 fn from(node: OfType) -> AlterTableAction {
19873 AlterTableAction::OfType(node)
19874 }
19875}
19876impl From<OptionsList> for AlterTableAction {
19877 #[inline]
19878 fn from(node: OptionsList) -> AlterTableAction {
19879 AlterTableAction::OptionsList(node)
19880 }
19881}
19882impl From<OwnerTo> for AlterTableAction {
19883 #[inline]
19884 fn from(node: OwnerTo) -> AlterTableAction {
19885 AlterTableAction::OwnerTo(node)
19886 }
19887}
19888impl From<RenameColumn> for AlterTableAction {
19889 #[inline]
19890 fn from(node: RenameColumn) -> AlterTableAction {
19891 AlterTableAction::RenameColumn(node)
19892 }
19893}
19894impl From<RenameConstraint> for AlterTableAction {
19895 #[inline]
19896 fn from(node: RenameConstraint) -> AlterTableAction {
19897 AlterTableAction::RenameConstraint(node)
19898 }
19899}
19900impl From<RenameTable> for AlterTableAction {
19901 #[inline]
19902 fn from(node: RenameTable) -> AlterTableAction {
19903 AlterTableAction::RenameTable(node)
19904 }
19905}
19906impl From<ReplicaIdentity> for AlterTableAction {
19907 #[inline]
19908 fn from(node: ReplicaIdentity) -> AlterTableAction {
19909 AlterTableAction::ReplicaIdentity(node)
19910 }
19911}
19912impl From<ResetStorageParams> for AlterTableAction {
19913 #[inline]
19914 fn from(node: ResetStorageParams) -> AlterTableAction {
19915 AlterTableAction::ResetStorageParams(node)
19916 }
19917}
19918impl From<SetAccessMethod> for AlterTableAction {
19919 #[inline]
19920 fn from(node: SetAccessMethod) -> AlterTableAction {
19921 AlterTableAction::SetAccessMethod(node)
19922 }
19923}
19924impl From<SetLogged> for AlterTableAction {
19925 #[inline]
19926 fn from(node: SetLogged) -> AlterTableAction {
19927 AlterTableAction::SetLogged(node)
19928 }
19929}
19930impl From<SetSchema> for AlterTableAction {
19931 #[inline]
19932 fn from(node: SetSchema) -> AlterTableAction {
19933 AlterTableAction::SetSchema(node)
19934 }
19935}
19936impl From<SetStorageParams> for AlterTableAction {
19937 #[inline]
19938 fn from(node: SetStorageParams) -> AlterTableAction {
19939 AlterTableAction::SetStorageParams(node)
19940 }
19941}
19942impl From<SetTablespace> for AlterTableAction {
19943 #[inline]
19944 fn from(node: SetTablespace) -> AlterTableAction {
19945 AlterTableAction::SetTablespace(node)
19946 }
19947}
19948impl From<SetUnlogged> for AlterTableAction {
19949 #[inline]
19950 fn from(node: SetUnlogged) -> AlterTableAction {
19951 AlterTableAction::SetUnlogged(node)
19952 }
19953}
19954impl From<SetWithoutCluster> for AlterTableAction {
19955 #[inline]
19956 fn from(node: SetWithoutCluster) -> AlterTableAction {
19957 AlterTableAction::SetWithoutCluster(node)
19958 }
19959}
19960impl From<SetWithoutOids> for AlterTableAction {
19961 #[inline]
19962 fn from(node: SetWithoutOids) -> AlterTableAction {
19963 AlterTableAction::SetWithoutOids(node)
19964 }
19965}
19966impl From<ValidateConstraint> for AlterTableAction {
19967 #[inline]
19968 fn from(node: ValidateConstraint) -> AlterTableAction {
19969 AlterTableAction::ValidateConstraint(node)
19970 }
19971}
19972impl AstNode for ColumnConstraint {
19973 #[inline]
19974 fn can_cast(kind: SyntaxKind) -> bool {
19975 matches!(
19976 kind,
19977 SyntaxKind::CHECK_CONSTRAINT
19978 | SyntaxKind::EXCLUDE_CONSTRAINT
19979 | SyntaxKind::NOT_NULL_CONSTRAINT
19980 | SyntaxKind::PRIMARY_KEY_CONSTRAINT
19981 | SyntaxKind::REFERENCES_CONSTRAINT
19982 | SyntaxKind::UNIQUE_CONSTRAINT
19983 )
19984 }
19985 #[inline]
19986 fn cast(syntax: SyntaxNode) -> Option<Self> {
19987 let res = match syntax.kind() {
19988 SyntaxKind::CHECK_CONSTRAINT => {
19989 ColumnConstraint::CheckConstraint(CheckConstraint { syntax })
19990 }
19991 SyntaxKind::EXCLUDE_CONSTRAINT => {
19992 ColumnConstraint::ExcludeConstraint(ExcludeConstraint { syntax })
19993 }
19994 SyntaxKind::NOT_NULL_CONSTRAINT => {
19995 ColumnConstraint::NotNullConstraint(NotNullConstraint { syntax })
19996 }
19997 SyntaxKind::PRIMARY_KEY_CONSTRAINT => {
19998 ColumnConstraint::PrimaryKeyConstraint(PrimaryKeyConstraint { syntax })
19999 }
20000 SyntaxKind::REFERENCES_CONSTRAINT => {
20001 ColumnConstraint::ReferencesConstraint(ReferencesConstraint { syntax })
20002 }
20003 SyntaxKind::UNIQUE_CONSTRAINT => {
20004 ColumnConstraint::UniqueConstraint(UniqueConstraint { syntax })
20005 }
20006 _ => {
20007 return None;
20008 }
20009 };
20010 Some(res)
20011 }
20012 #[inline]
20013 fn syntax(&self) -> &SyntaxNode {
20014 match self {
20015 ColumnConstraint::CheckConstraint(it) => &it.syntax,
20016 ColumnConstraint::ExcludeConstraint(it) => &it.syntax,
20017 ColumnConstraint::NotNullConstraint(it) => &it.syntax,
20018 ColumnConstraint::PrimaryKeyConstraint(it) => &it.syntax,
20019 ColumnConstraint::ReferencesConstraint(it) => &it.syntax,
20020 ColumnConstraint::UniqueConstraint(it) => &it.syntax,
20021 }
20022 }
20023}
20024impl From<CheckConstraint> for ColumnConstraint {
20025 #[inline]
20026 fn from(node: CheckConstraint) -> ColumnConstraint {
20027 ColumnConstraint::CheckConstraint(node)
20028 }
20029}
20030impl From<ExcludeConstraint> for ColumnConstraint {
20031 #[inline]
20032 fn from(node: ExcludeConstraint) -> ColumnConstraint {
20033 ColumnConstraint::ExcludeConstraint(node)
20034 }
20035}
20036impl From<NotNullConstraint> for ColumnConstraint {
20037 #[inline]
20038 fn from(node: NotNullConstraint) -> ColumnConstraint {
20039 ColumnConstraint::NotNullConstraint(node)
20040 }
20041}
20042impl From<PrimaryKeyConstraint> for ColumnConstraint {
20043 #[inline]
20044 fn from(node: PrimaryKeyConstraint) -> ColumnConstraint {
20045 ColumnConstraint::PrimaryKeyConstraint(node)
20046 }
20047}
20048impl From<ReferencesConstraint> for ColumnConstraint {
20049 #[inline]
20050 fn from(node: ReferencesConstraint) -> ColumnConstraint {
20051 ColumnConstraint::ReferencesConstraint(node)
20052 }
20053}
20054impl From<UniqueConstraint> for ColumnConstraint {
20055 #[inline]
20056 fn from(node: UniqueConstraint) -> ColumnConstraint {
20057 ColumnConstraint::UniqueConstraint(node)
20058 }
20059}
20060impl AstNode for Constraint {
20061 #[inline]
20062 fn can_cast(kind: SyntaxKind) -> bool {
20063 matches!(
20064 kind,
20065 SyntaxKind::CHECK_CONSTRAINT
20066 | SyntaxKind::DEFAULT_CONSTRAINT
20067 | SyntaxKind::FOREIGN_KEY_CONSTRAINT
20068 | SyntaxKind::GENERATED_CONSTRAINT
20069 | SyntaxKind::NOT_NULL_CONSTRAINT
20070 | SyntaxKind::NULL_CONSTRAINT
20071 | SyntaxKind::PRIMARY_KEY_CONSTRAINT
20072 | SyntaxKind::REFERENCES_CONSTRAINT
20073 | SyntaxKind::UNIQUE_CONSTRAINT
20074 )
20075 }
20076 #[inline]
20077 fn cast(syntax: SyntaxNode) -> Option<Self> {
20078 let res = match syntax.kind() {
20079 SyntaxKind::CHECK_CONSTRAINT => Constraint::CheckConstraint(CheckConstraint { syntax }),
20080 SyntaxKind::DEFAULT_CONSTRAINT => {
20081 Constraint::DefaultConstraint(DefaultConstraint { syntax })
20082 }
20083 SyntaxKind::FOREIGN_KEY_CONSTRAINT => {
20084 Constraint::ForeignKeyConstraint(ForeignKeyConstraint { syntax })
20085 }
20086 SyntaxKind::GENERATED_CONSTRAINT => {
20087 Constraint::GeneratedConstraint(GeneratedConstraint { syntax })
20088 }
20089 SyntaxKind::NOT_NULL_CONSTRAINT => {
20090 Constraint::NotNullConstraint(NotNullConstraint { syntax })
20091 }
20092 SyntaxKind::NULL_CONSTRAINT => Constraint::NullConstraint(NullConstraint { syntax }),
20093 SyntaxKind::PRIMARY_KEY_CONSTRAINT => {
20094 Constraint::PrimaryKeyConstraint(PrimaryKeyConstraint { syntax })
20095 }
20096 SyntaxKind::REFERENCES_CONSTRAINT => {
20097 Constraint::ReferencesConstraint(ReferencesConstraint { syntax })
20098 }
20099 SyntaxKind::UNIQUE_CONSTRAINT => {
20100 Constraint::UniqueConstraint(UniqueConstraint { syntax })
20101 }
20102 _ => {
20103 return None;
20104 }
20105 };
20106 Some(res)
20107 }
20108 #[inline]
20109 fn syntax(&self) -> &SyntaxNode {
20110 match self {
20111 Constraint::CheckConstraint(it) => &it.syntax,
20112 Constraint::DefaultConstraint(it) => &it.syntax,
20113 Constraint::ForeignKeyConstraint(it) => &it.syntax,
20114 Constraint::GeneratedConstraint(it) => &it.syntax,
20115 Constraint::NotNullConstraint(it) => &it.syntax,
20116 Constraint::NullConstraint(it) => &it.syntax,
20117 Constraint::PrimaryKeyConstraint(it) => &it.syntax,
20118 Constraint::ReferencesConstraint(it) => &it.syntax,
20119 Constraint::UniqueConstraint(it) => &it.syntax,
20120 }
20121 }
20122}
20123impl From<CheckConstraint> for Constraint {
20124 #[inline]
20125 fn from(node: CheckConstraint) -> Constraint {
20126 Constraint::CheckConstraint(node)
20127 }
20128}
20129impl From<DefaultConstraint> for Constraint {
20130 #[inline]
20131 fn from(node: DefaultConstraint) -> Constraint {
20132 Constraint::DefaultConstraint(node)
20133 }
20134}
20135impl From<ForeignKeyConstraint> for Constraint {
20136 #[inline]
20137 fn from(node: ForeignKeyConstraint) -> Constraint {
20138 Constraint::ForeignKeyConstraint(node)
20139 }
20140}
20141impl From<GeneratedConstraint> for Constraint {
20142 #[inline]
20143 fn from(node: GeneratedConstraint) -> Constraint {
20144 Constraint::GeneratedConstraint(node)
20145 }
20146}
20147impl From<NotNullConstraint> for Constraint {
20148 #[inline]
20149 fn from(node: NotNullConstraint) -> Constraint {
20150 Constraint::NotNullConstraint(node)
20151 }
20152}
20153impl From<NullConstraint> for Constraint {
20154 #[inline]
20155 fn from(node: NullConstraint) -> Constraint {
20156 Constraint::NullConstraint(node)
20157 }
20158}
20159impl From<PrimaryKeyConstraint> for Constraint {
20160 #[inline]
20161 fn from(node: PrimaryKeyConstraint) -> Constraint {
20162 Constraint::PrimaryKeyConstraint(node)
20163 }
20164}
20165impl From<ReferencesConstraint> for Constraint {
20166 #[inline]
20167 fn from(node: ReferencesConstraint) -> Constraint {
20168 Constraint::ReferencesConstraint(node)
20169 }
20170}
20171impl From<UniqueConstraint> for Constraint {
20172 #[inline]
20173 fn from(node: UniqueConstraint) -> Constraint {
20174 Constraint::UniqueConstraint(node)
20175 }
20176}
20177impl AstNode for Expr {
20178 #[inline]
20179 fn can_cast(kind: SyntaxKind) -> bool {
20180 matches!(
20181 kind,
20182 SyntaxKind::ARRAY_EXPR
20183 | SyntaxKind::BETWEEN_EXPR
20184 | SyntaxKind::BIN_EXPR
20185 | SyntaxKind::CALL_EXPR
20186 | SyntaxKind::CASE_EXPR
20187 | SyntaxKind::CAST_EXPR
20188 | SyntaxKind::FIELD_EXPR
20189 | SyntaxKind::INDEX_EXPR
20190 | SyntaxKind::LITERAL
20191 | SyntaxKind::NAME_REF
20192 )
20193 }
20194 #[inline]
20195 fn cast(syntax: SyntaxNode) -> Option<Self> {
20196 let res = match syntax.kind() {
20197 SyntaxKind::ARRAY_EXPR => Expr::ArrayExpr(ArrayExpr { syntax }),
20198 SyntaxKind::BETWEEN_EXPR => Expr::BetweenExpr(BetweenExpr { syntax }),
20199 SyntaxKind::BIN_EXPR => Expr::BinExpr(BinExpr { syntax }),
20200 SyntaxKind::CALL_EXPR => Expr::CallExpr(CallExpr { syntax }),
20201 SyntaxKind::CASE_EXPR => Expr::CaseExpr(CaseExpr { syntax }),
20202 SyntaxKind::CAST_EXPR => Expr::CastExpr(CastExpr { syntax }),
20203 SyntaxKind::FIELD_EXPR => Expr::FieldExpr(FieldExpr { syntax }),
20204 SyntaxKind::INDEX_EXPR => Expr::IndexExpr(IndexExpr { syntax }),
20205 SyntaxKind::LITERAL => Expr::Literal(Literal { syntax }),
20206 SyntaxKind::NAME_REF => Expr::NameRef(NameRef { syntax }),
20207 _ => {
20208 return None;
20209 }
20210 };
20211 Some(res)
20212 }
20213 #[inline]
20214 fn syntax(&self) -> &SyntaxNode {
20215 match self {
20216 Expr::ArrayExpr(it) => &it.syntax,
20217 Expr::BetweenExpr(it) => &it.syntax,
20218 Expr::BinExpr(it) => &it.syntax,
20219 Expr::CallExpr(it) => &it.syntax,
20220 Expr::CaseExpr(it) => &it.syntax,
20221 Expr::CastExpr(it) => &it.syntax,
20222 Expr::FieldExpr(it) => &it.syntax,
20223 Expr::IndexExpr(it) => &it.syntax,
20224 Expr::Literal(it) => &it.syntax,
20225 Expr::NameRef(it) => &it.syntax,
20226 }
20227 }
20228}
20229impl From<ArrayExpr> for Expr {
20230 #[inline]
20231 fn from(node: ArrayExpr) -> Expr {
20232 Expr::ArrayExpr(node)
20233 }
20234}
20235impl From<BetweenExpr> for Expr {
20236 #[inline]
20237 fn from(node: BetweenExpr) -> Expr {
20238 Expr::BetweenExpr(node)
20239 }
20240}
20241impl From<BinExpr> for Expr {
20242 #[inline]
20243 fn from(node: BinExpr) -> Expr {
20244 Expr::BinExpr(node)
20245 }
20246}
20247impl From<CallExpr> for Expr {
20248 #[inline]
20249 fn from(node: CallExpr) -> Expr {
20250 Expr::CallExpr(node)
20251 }
20252}
20253impl From<CaseExpr> for Expr {
20254 #[inline]
20255 fn from(node: CaseExpr) -> Expr {
20256 Expr::CaseExpr(node)
20257 }
20258}
20259impl From<CastExpr> for Expr {
20260 #[inline]
20261 fn from(node: CastExpr) -> Expr {
20262 Expr::CastExpr(node)
20263 }
20264}
20265impl From<FieldExpr> for Expr {
20266 #[inline]
20267 fn from(node: FieldExpr) -> Expr {
20268 Expr::FieldExpr(node)
20269 }
20270}
20271impl From<IndexExpr> for Expr {
20272 #[inline]
20273 fn from(node: IndexExpr) -> Expr {
20274 Expr::IndexExpr(node)
20275 }
20276}
20277impl From<Literal> for Expr {
20278 #[inline]
20279 fn from(node: Literal) -> Expr {
20280 Expr::Literal(node)
20281 }
20282}
20283impl From<NameRef> for Expr {
20284 #[inline]
20285 fn from(node: NameRef) -> Expr {
20286 Expr::NameRef(node)
20287 }
20288}
20289impl AstNode for FuncOption {
20290 #[inline]
20291 fn can_cast(kind: SyntaxKind) -> bool {
20292 matches!(
20293 kind,
20294 SyntaxKind::AS_FUNC_OPTION
20295 | SyntaxKind::BEGIN_FUNC_OPTION
20296 | SyntaxKind::COST_FUNC_OPTION
20297 | SyntaxKind::LANGUAGE_FUNC_OPTION
20298 | SyntaxKind::LEAKPROOF_FUNC_OPTION
20299 | SyntaxKind::PARALLEL_FUNC_OPTION
20300 | SyntaxKind::RESET_FUNC_OPTION
20301 | SyntaxKind::RETURN_FUNC_OPTION
20302 | SyntaxKind::ROWS_FUNC_OPTION
20303 | SyntaxKind::SECURITY_FUNC_OPTION
20304 | SyntaxKind::SET_FUNC_OPTION
20305 | SyntaxKind::STRICT_FUNC_OPTION
20306 | SyntaxKind::SUPPORT_FUNC_OPTION
20307 | SyntaxKind::TRANSFORM_FUNC_OPTION
20308 | SyntaxKind::VOLATILITY_FUNC_OPTION
20309 | SyntaxKind::WINDOW_FUNC_OPTION
20310 )
20311 }
20312 #[inline]
20313 fn cast(syntax: SyntaxNode) -> Option<Self> {
20314 let res = match syntax.kind() {
20315 SyntaxKind::AS_FUNC_OPTION => FuncOption::AsFuncOption(AsFuncOption { syntax }),
20316 SyntaxKind::BEGIN_FUNC_OPTION => {
20317 FuncOption::BeginFuncOption(BeginFuncOption { syntax })
20318 }
20319 SyntaxKind::COST_FUNC_OPTION => FuncOption::CostFuncOption(CostFuncOption { syntax }),
20320 SyntaxKind::LANGUAGE_FUNC_OPTION => {
20321 FuncOption::LanguageFuncOption(LanguageFuncOption { syntax })
20322 }
20323 SyntaxKind::LEAKPROOF_FUNC_OPTION => {
20324 FuncOption::LeakproofFuncOption(LeakproofFuncOption { syntax })
20325 }
20326 SyntaxKind::PARALLEL_FUNC_OPTION => {
20327 FuncOption::ParallelFuncOption(ParallelFuncOption { syntax })
20328 }
20329 SyntaxKind::RESET_FUNC_OPTION => {
20330 FuncOption::ResetFuncOption(ResetFuncOption { syntax })
20331 }
20332 SyntaxKind::RETURN_FUNC_OPTION => {
20333 FuncOption::ReturnFuncOption(ReturnFuncOption { syntax })
20334 }
20335 SyntaxKind::ROWS_FUNC_OPTION => FuncOption::RowsFuncOption(RowsFuncOption { syntax }),
20336 SyntaxKind::SECURITY_FUNC_OPTION => {
20337 FuncOption::SecurityFuncOption(SecurityFuncOption { syntax })
20338 }
20339 SyntaxKind::SET_FUNC_OPTION => FuncOption::SetFuncOption(SetFuncOption { syntax }),
20340 SyntaxKind::STRICT_FUNC_OPTION => {
20341 FuncOption::StrictFuncOption(StrictFuncOption { syntax })
20342 }
20343 SyntaxKind::SUPPORT_FUNC_OPTION => {
20344 FuncOption::SupportFuncOption(SupportFuncOption { syntax })
20345 }
20346 SyntaxKind::TRANSFORM_FUNC_OPTION => {
20347 FuncOption::TransformFuncOption(TransformFuncOption { syntax })
20348 }
20349 SyntaxKind::VOLATILITY_FUNC_OPTION => {
20350 FuncOption::VolatilityFuncOption(VolatilityFuncOption { syntax })
20351 }
20352 SyntaxKind::WINDOW_FUNC_OPTION => {
20353 FuncOption::WindowFuncOption(WindowFuncOption { syntax })
20354 }
20355 _ => {
20356 return None;
20357 }
20358 };
20359 Some(res)
20360 }
20361 #[inline]
20362 fn syntax(&self) -> &SyntaxNode {
20363 match self {
20364 FuncOption::AsFuncOption(it) => &it.syntax,
20365 FuncOption::BeginFuncOption(it) => &it.syntax,
20366 FuncOption::CostFuncOption(it) => &it.syntax,
20367 FuncOption::LanguageFuncOption(it) => &it.syntax,
20368 FuncOption::LeakproofFuncOption(it) => &it.syntax,
20369 FuncOption::ParallelFuncOption(it) => &it.syntax,
20370 FuncOption::ResetFuncOption(it) => &it.syntax,
20371 FuncOption::ReturnFuncOption(it) => &it.syntax,
20372 FuncOption::RowsFuncOption(it) => &it.syntax,
20373 FuncOption::SecurityFuncOption(it) => &it.syntax,
20374 FuncOption::SetFuncOption(it) => &it.syntax,
20375 FuncOption::StrictFuncOption(it) => &it.syntax,
20376 FuncOption::SupportFuncOption(it) => &it.syntax,
20377 FuncOption::TransformFuncOption(it) => &it.syntax,
20378 FuncOption::VolatilityFuncOption(it) => &it.syntax,
20379 FuncOption::WindowFuncOption(it) => &it.syntax,
20380 }
20381 }
20382}
20383impl From<AsFuncOption> for FuncOption {
20384 #[inline]
20385 fn from(node: AsFuncOption) -> FuncOption {
20386 FuncOption::AsFuncOption(node)
20387 }
20388}
20389impl From<BeginFuncOption> for FuncOption {
20390 #[inline]
20391 fn from(node: BeginFuncOption) -> FuncOption {
20392 FuncOption::BeginFuncOption(node)
20393 }
20394}
20395impl From<CostFuncOption> for FuncOption {
20396 #[inline]
20397 fn from(node: CostFuncOption) -> FuncOption {
20398 FuncOption::CostFuncOption(node)
20399 }
20400}
20401impl From<LanguageFuncOption> for FuncOption {
20402 #[inline]
20403 fn from(node: LanguageFuncOption) -> FuncOption {
20404 FuncOption::LanguageFuncOption(node)
20405 }
20406}
20407impl From<LeakproofFuncOption> for FuncOption {
20408 #[inline]
20409 fn from(node: LeakproofFuncOption) -> FuncOption {
20410 FuncOption::LeakproofFuncOption(node)
20411 }
20412}
20413impl From<ParallelFuncOption> for FuncOption {
20414 #[inline]
20415 fn from(node: ParallelFuncOption) -> FuncOption {
20416 FuncOption::ParallelFuncOption(node)
20417 }
20418}
20419impl From<ResetFuncOption> for FuncOption {
20420 #[inline]
20421 fn from(node: ResetFuncOption) -> FuncOption {
20422 FuncOption::ResetFuncOption(node)
20423 }
20424}
20425impl From<ReturnFuncOption> for FuncOption {
20426 #[inline]
20427 fn from(node: ReturnFuncOption) -> FuncOption {
20428 FuncOption::ReturnFuncOption(node)
20429 }
20430}
20431impl From<RowsFuncOption> for FuncOption {
20432 #[inline]
20433 fn from(node: RowsFuncOption) -> FuncOption {
20434 FuncOption::RowsFuncOption(node)
20435 }
20436}
20437impl From<SecurityFuncOption> for FuncOption {
20438 #[inline]
20439 fn from(node: SecurityFuncOption) -> FuncOption {
20440 FuncOption::SecurityFuncOption(node)
20441 }
20442}
20443impl From<SetFuncOption> for FuncOption {
20444 #[inline]
20445 fn from(node: SetFuncOption) -> FuncOption {
20446 FuncOption::SetFuncOption(node)
20447 }
20448}
20449impl From<StrictFuncOption> for FuncOption {
20450 #[inline]
20451 fn from(node: StrictFuncOption) -> FuncOption {
20452 FuncOption::StrictFuncOption(node)
20453 }
20454}
20455impl From<SupportFuncOption> for FuncOption {
20456 #[inline]
20457 fn from(node: SupportFuncOption) -> FuncOption {
20458 FuncOption::SupportFuncOption(node)
20459 }
20460}
20461impl From<TransformFuncOption> for FuncOption {
20462 #[inline]
20463 fn from(node: TransformFuncOption) -> FuncOption {
20464 FuncOption::TransformFuncOption(node)
20465 }
20466}
20467impl From<VolatilityFuncOption> for FuncOption {
20468 #[inline]
20469 fn from(node: VolatilityFuncOption) -> FuncOption {
20470 FuncOption::VolatilityFuncOption(node)
20471 }
20472}
20473impl From<WindowFuncOption> for FuncOption {
20474 #[inline]
20475 fn from(node: WindowFuncOption) -> FuncOption {
20476 FuncOption::WindowFuncOption(node)
20477 }
20478}
20479impl AstNode for JoinType {
20480 #[inline]
20481 fn can_cast(kind: SyntaxKind) -> bool {
20482 matches!(
20483 kind,
20484 SyntaxKind::JOIN_CROSS
20485 | SyntaxKind::JOIN_FULL
20486 | SyntaxKind::JOIN_INNER
20487 | SyntaxKind::JOIN_LEFT
20488 | SyntaxKind::JOIN_RIGHT
20489 )
20490 }
20491 #[inline]
20492 fn cast(syntax: SyntaxNode) -> Option<Self> {
20493 let res = match syntax.kind() {
20494 SyntaxKind::JOIN_CROSS => JoinType::JoinCross(JoinCross { syntax }),
20495 SyntaxKind::JOIN_FULL => JoinType::JoinFull(JoinFull { syntax }),
20496 SyntaxKind::JOIN_INNER => JoinType::JoinInner(JoinInner { syntax }),
20497 SyntaxKind::JOIN_LEFT => JoinType::JoinLeft(JoinLeft { syntax }),
20498 SyntaxKind::JOIN_RIGHT => JoinType::JoinRight(JoinRight { syntax }),
20499 _ => {
20500 return None;
20501 }
20502 };
20503 Some(res)
20504 }
20505 #[inline]
20506 fn syntax(&self) -> &SyntaxNode {
20507 match self {
20508 JoinType::JoinCross(it) => &it.syntax,
20509 JoinType::JoinFull(it) => &it.syntax,
20510 JoinType::JoinInner(it) => &it.syntax,
20511 JoinType::JoinLeft(it) => &it.syntax,
20512 JoinType::JoinRight(it) => &it.syntax,
20513 }
20514 }
20515}
20516impl From<JoinCross> for JoinType {
20517 #[inline]
20518 fn from(node: JoinCross) -> JoinType {
20519 JoinType::JoinCross(node)
20520 }
20521}
20522impl From<JoinFull> for JoinType {
20523 #[inline]
20524 fn from(node: JoinFull) -> JoinType {
20525 JoinType::JoinFull(node)
20526 }
20527}
20528impl From<JoinInner> for JoinType {
20529 #[inline]
20530 fn from(node: JoinInner) -> JoinType {
20531 JoinType::JoinInner(node)
20532 }
20533}
20534impl From<JoinLeft> for JoinType {
20535 #[inline]
20536 fn from(node: JoinLeft) -> JoinType {
20537 JoinType::JoinLeft(node)
20538 }
20539}
20540impl From<JoinRight> for JoinType {
20541 #[inline]
20542 fn from(node: JoinRight) -> JoinType {
20543 JoinType::JoinRight(node)
20544 }
20545}
20546impl AstNode for JsonBehavior {
20547 #[inline]
20548 fn can_cast(kind: SyntaxKind) -> bool {
20549 matches!(
20550 kind,
20551 SyntaxKind::JSON_BEHAVIOR_DEFAULT
20552 | SyntaxKind::JSON_BEHAVIOR_EMPTY_ARRAY
20553 | SyntaxKind::JSON_BEHAVIOR_EMPTY_OBJECT
20554 | SyntaxKind::JSON_BEHAVIOR_ERROR
20555 | SyntaxKind::JSON_BEHAVIOR_FALSE
20556 | SyntaxKind::JSON_BEHAVIOR_NULL
20557 | SyntaxKind::JSON_BEHAVIOR_TRUE
20558 | SyntaxKind::JSON_BEHAVIOR_UNKNOWN
20559 )
20560 }
20561 #[inline]
20562 fn cast(syntax: SyntaxNode) -> Option<Self> {
20563 let res = match syntax.kind() {
20564 SyntaxKind::JSON_BEHAVIOR_DEFAULT => {
20565 JsonBehavior::JsonBehaviorDefault(JsonBehaviorDefault { syntax })
20566 }
20567 SyntaxKind::JSON_BEHAVIOR_EMPTY_ARRAY => {
20568 JsonBehavior::JsonBehaviorEmptyArray(JsonBehaviorEmptyArray { syntax })
20569 }
20570 SyntaxKind::JSON_BEHAVIOR_EMPTY_OBJECT => {
20571 JsonBehavior::JsonBehaviorEmptyObject(JsonBehaviorEmptyObject { syntax })
20572 }
20573 SyntaxKind::JSON_BEHAVIOR_ERROR => {
20574 JsonBehavior::JsonBehaviorError(JsonBehaviorError { syntax })
20575 }
20576 SyntaxKind::JSON_BEHAVIOR_FALSE => {
20577 JsonBehavior::JsonBehaviorFalse(JsonBehaviorFalse { syntax })
20578 }
20579 SyntaxKind::JSON_BEHAVIOR_NULL => {
20580 JsonBehavior::JsonBehaviorNull(JsonBehaviorNull { syntax })
20581 }
20582 SyntaxKind::JSON_BEHAVIOR_TRUE => {
20583 JsonBehavior::JsonBehaviorTrue(JsonBehaviorTrue { syntax })
20584 }
20585 SyntaxKind::JSON_BEHAVIOR_UNKNOWN => {
20586 JsonBehavior::JsonBehaviorUnknown(JsonBehaviorUnknown { syntax })
20587 }
20588 _ => {
20589 return None;
20590 }
20591 };
20592 Some(res)
20593 }
20594 #[inline]
20595 fn syntax(&self) -> &SyntaxNode {
20596 match self {
20597 JsonBehavior::JsonBehaviorDefault(it) => &it.syntax,
20598 JsonBehavior::JsonBehaviorEmptyArray(it) => &it.syntax,
20599 JsonBehavior::JsonBehaviorEmptyObject(it) => &it.syntax,
20600 JsonBehavior::JsonBehaviorError(it) => &it.syntax,
20601 JsonBehavior::JsonBehaviorFalse(it) => &it.syntax,
20602 JsonBehavior::JsonBehaviorNull(it) => &it.syntax,
20603 JsonBehavior::JsonBehaviorTrue(it) => &it.syntax,
20604 JsonBehavior::JsonBehaviorUnknown(it) => &it.syntax,
20605 }
20606 }
20607}
20608impl From<JsonBehaviorDefault> for JsonBehavior {
20609 #[inline]
20610 fn from(node: JsonBehaviorDefault) -> JsonBehavior {
20611 JsonBehavior::JsonBehaviorDefault(node)
20612 }
20613}
20614impl From<JsonBehaviorEmptyArray> for JsonBehavior {
20615 #[inline]
20616 fn from(node: JsonBehaviorEmptyArray) -> JsonBehavior {
20617 JsonBehavior::JsonBehaviorEmptyArray(node)
20618 }
20619}
20620impl From<JsonBehaviorEmptyObject> for JsonBehavior {
20621 #[inline]
20622 fn from(node: JsonBehaviorEmptyObject) -> JsonBehavior {
20623 JsonBehavior::JsonBehaviorEmptyObject(node)
20624 }
20625}
20626impl From<JsonBehaviorError> for JsonBehavior {
20627 #[inline]
20628 fn from(node: JsonBehaviorError) -> JsonBehavior {
20629 JsonBehavior::JsonBehaviorError(node)
20630 }
20631}
20632impl From<JsonBehaviorFalse> for JsonBehavior {
20633 #[inline]
20634 fn from(node: JsonBehaviorFalse) -> JsonBehavior {
20635 JsonBehavior::JsonBehaviorFalse(node)
20636 }
20637}
20638impl From<JsonBehaviorNull> for JsonBehavior {
20639 #[inline]
20640 fn from(node: JsonBehaviorNull) -> JsonBehavior {
20641 JsonBehavior::JsonBehaviorNull(node)
20642 }
20643}
20644impl From<JsonBehaviorTrue> for JsonBehavior {
20645 #[inline]
20646 fn from(node: JsonBehaviorTrue) -> JsonBehavior {
20647 JsonBehavior::JsonBehaviorTrue(node)
20648 }
20649}
20650impl From<JsonBehaviorUnknown> for JsonBehavior {
20651 #[inline]
20652 fn from(node: JsonBehaviorUnknown) -> JsonBehavior {
20653 JsonBehavior::JsonBehaviorUnknown(node)
20654 }
20655}
20656impl AstNode for MatchType {
20657 #[inline]
20658 fn can_cast(kind: SyntaxKind) -> bool {
20659 matches!(
20660 kind,
20661 SyntaxKind::MATCH_FULL | SyntaxKind::MATCH_PARTIAL | SyntaxKind::MATCH_SIMPLE
20662 )
20663 }
20664 #[inline]
20665 fn cast(syntax: SyntaxNode) -> Option<Self> {
20666 let res = match syntax.kind() {
20667 SyntaxKind::MATCH_FULL => MatchType::MatchFull(MatchFull { syntax }),
20668 SyntaxKind::MATCH_PARTIAL => MatchType::MatchPartial(MatchPartial { syntax }),
20669 SyntaxKind::MATCH_SIMPLE => MatchType::MatchSimple(MatchSimple { syntax }),
20670 _ => {
20671 return None;
20672 }
20673 };
20674 Some(res)
20675 }
20676 #[inline]
20677 fn syntax(&self) -> &SyntaxNode {
20678 match self {
20679 MatchType::MatchFull(it) => &it.syntax,
20680 MatchType::MatchPartial(it) => &it.syntax,
20681 MatchType::MatchSimple(it) => &it.syntax,
20682 }
20683 }
20684}
20685impl From<MatchFull> for MatchType {
20686 #[inline]
20687 fn from(node: MatchFull) -> MatchType {
20688 MatchType::MatchFull(node)
20689 }
20690}
20691impl From<MatchPartial> for MatchType {
20692 #[inline]
20693 fn from(node: MatchPartial) -> MatchType {
20694 MatchType::MatchPartial(node)
20695 }
20696}
20697impl From<MatchSimple> for MatchType {
20698 #[inline]
20699 fn from(node: MatchSimple) -> MatchType {
20700 MatchType::MatchSimple(node)
20701 }
20702}
20703impl AstNode for OnCommitAction {
20704 #[inline]
20705 fn can_cast(kind: SyntaxKind) -> bool {
20706 matches!(
20707 kind,
20708 SyntaxKind::DELETE_ROWS | SyntaxKind::DROP | SyntaxKind::PRESERVE_ROWS
20709 )
20710 }
20711 #[inline]
20712 fn cast(syntax: SyntaxNode) -> Option<Self> {
20713 let res = match syntax.kind() {
20714 SyntaxKind::DELETE_ROWS => OnCommitAction::DeleteRows(DeleteRows { syntax }),
20715 SyntaxKind::DROP => OnCommitAction::Drop(Drop { syntax }),
20716 SyntaxKind::PRESERVE_ROWS => OnCommitAction::PreserveRows(PreserveRows { syntax }),
20717 _ => {
20718 return None;
20719 }
20720 };
20721 Some(res)
20722 }
20723 #[inline]
20724 fn syntax(&self) -> &SyntaxNode {
20725 match self {
20726 OnCommitAction::DeleteRows(it) => &it.syntax,
20727 OnCommitAction::Drop(it) => &it.syntax,
20728 OnCommitAction::PreserveRows(it) => &it.syntax,
20729 }
20730 }
20731}
20732impl From<DeleteRows> for OnCommitAction {
20733 #[inline]
20734 fn from(node: DeleteRows) -> OnCommitAction {
20735 OnCommitAction::DeleteRows(node)
20736 }
20737}
20738impl From<Drop> for OnCommitAction {
20739 #[inline]
20740 fn from(node: Drop) -> OnCommitAction {
20741 OnCommitAction::Drop(node)
20742 }
20743}
20744impl From<PreserveRows> for OnCommitAction {
20745 #[inline]
20746 fn from(node: PreserveRows) -> OnCommitAction {
20747 OnCommitAction::PreserveRows(node)
20748 }
20749}
20750impl AstNode for ParamMode {
20751 #[inline]
20752 fn can_cast(kind: SyntaxKind) -> bool {
20753 matches!(
20754 kind,
20755 SyntaxKind::PARAM_IN
20756 | SyntaxKind::PARAM_IN_OUT
20757 | SyntaxKind::PARAM_OUT
20758 | SyntaxKind::PARAM_VARIADIC
20759 )
20760 }
20761 #[inline]
20762 fn cast(syntax: SyntaxNode) -> Option<Self> {
20763 let res = match syntax.kind() {
20764 SyntaxKind::PARAM_IN => ParamMode::ParamIn(ParamIn { syntax }),
20765 SyntaxKind::PARAM_IN_OUT => ParamMode::ParamInOut(ParamInOut { syntax }),
20766 SyntaxKind::PARAM_OUT => ParamMode::ParamOut(ParamOut { syntax }),
20767 SyntaxKind::PARAM_VARIADIC => ParamMode::ParamVariadic(ParamVariadic { syntax }),
20768 _ => {
20769 return None;
20770 }
20771 };
20772 Some(res)
20773 }
20774 #[inline]
20775 fn syntax(&self) -> &SyntaxNode {
20776 match self {
20777 ParamMode::ParamIn(it) => &it.syntax,
20778 ParamMode::ParamInOut(it) => &it.syntax,
20779 ParamMode::ParamOut(it) => &it.syntax,
20780 ParamMode::ParamVariadic(it) => &it.syntax,
20781 }
20782 }
20783}
20784impl From<ParamIn> for ParamMode {
20785 #[inline]
20786 fn from(node: ParamIn) -> ParamMode {
20787 ParamMode::ParamIn(node)
20788 }
20789}
20790impl From<ParamInOut> for ParamMode {
20791 #[inline]
20792 fn from(node: ParamInOut) -> ParamMode {
20793 ParamMode::ParamInOut(node)
20794 }
20795}
20796impl From<ParamOut> for ParamMode {
20797 #[inline]
20798 fn from(node: ParamOut) -> ParamMode {
20799 ParamMode::ParamOut(node)
20800 }
20801}
20802impl From<ParamVariadic> for ParamMode {
20803 #[inline]
20804 fn from(node: ParamVariadic) -> ParamMode {
20805 ParamMode::ParamVariadic(node)
20806 }
20807}
20808impl AstNode for PartitionType {
20809 #[inline]
20810 fn can_cast(kind: SyntaxKind) -> bool {
20811 matches!(
20812 kind,
20813 SyntaxKind::PARTITION_DEFAULT
20814 | SyntaxKind::PARTITION_FOR_VALUES_FROM
20815 | SyntaxKind::PARTITION_FOR_VALUES_IN
20816 | SyntaxKind::PARTITION_FOR_VALUES_WITH
20817 )
20818 }
20819 #[inline]
20820 fn cast(syntax: SyntaxNode) -> Option<Self> {
20821 let res = match syntax.kind() {
20822 SyntaxKind::PARTITION_DEFAULT => {
20823 PartitionType::PartitionDefault(PartitionDefault { syntax })
20824 }
20825 SyntaxKind::PARTITION_FOR_VALUES_FROM => {
20826 PartitionType::PartitionForValuesFrom(PartitionForValuesFrom { syntax })
20827 }
20828 SyntaxKind::PARTITION_FOR_VALUES_IN => {
20829 PartitionType::PartitionForValuesIn(PartitionForValuesIn { syntax })
20830 }
20831 SyntaxKind::PARTITION_FOR_VALUES_WITH => {
20832 PartitionType::PartitionForValuesWith(PartitionForValuesWith { syntax })
20833 }
20834 _ => {
20835 return None;
20836 }
20837 };
20838 Some(res)
20839 }
20840 #[inline]
20841 fn syntax(&self) -> &SyntaxNode {
20842 match self {
20843 PartitionType::PartitionDefault(it) => &it.syntax,
20844 PartitionType::PartitionForValuesFrom(it) => &it.syntax,
20845 PartitionType::PartitionForValuesIn(it) => &it.syntax,
20846 PartitionType::PartitionForValuesWith(it) => &it.syntax,
20847 }
20848 }
20849}
20850impl From<PartitionDefault> for PartitionType {
20851 #[inline]
20852 fn from(node: PartitionDefault) -> PartitionType {
20853 PartitionType::PartitionDefault(node)
20854 }
20855}
20856impl From<PartitionForValuesFrom> for PartitionType {
20857 #[inline]
20858 fn from(node: PartitionForValuesFrom) -> PartitionType {
20859 PartitionType::PartitionForValuesFrom(node)
20860 }
20861}
20862impl From<PartitionForValuesIn> for PartitionType {
20863 #[inline]
20864 fn from(node: PartitionForValuesIn) -> PartitionType {
20865 PartitionType::PartitionForValuesIn(node)
20866 }
20867}
20868impl From<PartitionForValuesWith> for PartitionType {
20869 #[inline]
20870 fn from(node: PartitionForValuesWith) -> PartitionType {
20871 PartitionType::PartitionForValuesWith(node)
20872 }
20873}
20874impl AstNode for RefAction {
20875 #[inline]
20876 fn can_cast(kind: SyntaxKind) -> bool {
20877 matches!(
20878 kind,
20879 SyntaxKind::CASCADE
20880 | SyntaxKind::NO_ACTION
20881 | SyntaxKind::RESTRICT
20882 | SyntaxKind::SET_DEFAULT_COLUMNS
20883 | SyntaxKind::SET_NULL_COLUMNS
20884 )
20885 }
20886 #[inline]
20887 fn cast(syntax: SyntaxNode) -> Option<Self> {
20888 let res = match syntax.kind() {
20889 SyntaxKind::CASCADE => RefAction::Cascade(Cascade { syntax }),
20890 SyntaxKind::NO_ACTION => RefAction::NoAction(NoAction { syntax }),
20891 SyntaxKind::RESTRICT => RefAction::Restrict(Restrict { syntax }),
20892 SyntaxKind::SET_DEFAULT_COLUMNS => {
20893 RefAction::SetDefaultColumns(SetDefaultColumns { syntax })
20894 }
20895 SyntaxKind::SET_NULL_COLUMNS => RefAction::SetNullColumns(SetNullColumns { syntax }),
20896 _ => {
20897 return None;
20898 }
20899 };
20900 Some(res)
20901 }
20902 #[inline]
20903 fn syntax(&self) -> &SyntaxNode {
20904 match self {
20905 RefAction::Cascade(it) => &it.syntax,
20906 RefAction::NoAction(it) => &it.syntax,
20907 RefAction::Restrict(it) => &it.syntax,
20908 RefAction::SetDefaultColumns(it) => &it.syntax,
20909 RefAction::SetNullColumns(it) => &it.syntax,
20910 }
20911 }
20912}
20913impl From<Cascade> for RefAction {
20914 #[inline]
20915 fn from(node: Cascade) -> RefAction {
20916 RefAction::Cascade(node)
20917 }
20918}
20919impl From<NoAction> for RefAction {
20920 #[inline]
20921 fn from(node: NoAction) -> RefAction {
20922 RefAction::NoAction(node)
20923 }
20924}
20925impl From<Restrict> for RefAction {
20926 #[inline]
20927 fn from(node: Restrict) -> RefAction {
20928 RefAction::Restrict(node)
20929 }
20930}
20931impl From<SetDefaultColumns> for RefAction {
20932 #[inline]
20933 fn from(node: SetDefaultColumns) -> RefAction {
20934 RefAction::SetDefaultColumns(node)
20935 }
20936}
20937impl From<SetNullColumns> for RefAction {
20938 #[inline]
20939 fn from(node: SetNullColumns) -> RefAction {
20940 RefAction::SetNullColumns(node)
20941 }
20942}
20943impl AstNode for Stmt {
20944 #[inline]
20945 fn can_cast(kind: SyntaxKind) -> bool {
20946 matches!(
20947 kind,
20948 SyntaxKind::ALTER_AGGREGATE
20949 | SyntaxKind::ALTER_COLLATION
20950 | SyntaxKind::ALTER_CONVERSION
20951 | SyntaxKind::ALTER_DATABASE
20952 | SyntaxKind::ALTER_DEFAULT_PRIVILEGES
20953 | SyntaxKind::ALTER_DOMAIN
20954 | SyntaxKind::ALTER_EVENT_TRIGGER
20955 | SyntaxKind::ALTER_EXTENSION
20956 | SyntaxKind::ALTER_FOREIGN_DATA_WRAPPER
20957 | SyntaxKind::ALTER_FOREIGN_TABLE
20958 | SyntaxKind::ALTER_FUNCTION
20959 | SyntaxKind::ALTER_GROUP
20960 | SyntaxKind::ALTER_INDEX
20961 | SyntaxKind::ALTER_LANGUAGE
20962 | SyntaxKind::ALTER_LARGE_OBJECT
20963 | SyntaxKind::ALTER_MATERIALIZED_VIEW
20964 | SyntaxKind::ALTER_OPERATOR
20965 | SyntaxKind::ALTER_OPERATOR_CLASS
20966 | SyntaxKind::ALTER_OPERATOR_FAMILY
20967 | SyntaxKind::ALTER_POLICY
20968 | SyntaxKind::ALTER_PROCEDURE
20969 | SyntaxKind::ALTER_PUBLICATION
20970 | SyntaxKind::ALTER_ROLE
20971 | SyntaxKind::ALTER_ROUTINE
20972 | SyntaxKind::ALTER_RULE
20973 | SyntaxKind::ALTER_SCHEMA
20974 | SyntaxKind::ALTER_SEQUENCE
20975 | SyntaxKind::ALTER_SERVER
20976 | SyntaxKind::ALTER_STATISTICS
20977 | SyntaxKind::ALTER_SUBSCRIPTION
20978 | SyntaxKind::ALTER_SYSTEM
20979 | SyntaxKind::ALTER_TABLE
20980 | SyntaxKind::ALTER_TABLESPACE
20981 | SyntaxKind::ALTER_TEXT_SEARCH_CONFIGURATION
20982 | SyntaxKind::ALTER_TEXT_SEARCH_DICTIONARY
20983 | SyntaxKind::ALTER_TEXT_SEARCH_PARSER
20984 | SyntaxKind::ALTER_TEXT_SEARCH_TEMPLATE
20985 | SyntaxKind::ALTER_TRIGGER
20986 | SyntaxKind::ALTER_TYPE
20987 | SyntaxKind::ALTER_USER
20988 | SyntaxKind::ALTER_USER_MAPPING
20989 | SyntaxKind::ALTER_VIEW
20990 | SyntaxKind::ANALYZE
20991 | SyntaxKind::BEGIN
20992 | SyntaxKind::CALL
20993 | SyntaxKind::CHECKPOINT
20994 | SyntaxKind::CLOSE
20995 | SyntaxKind::CLUSTER
20996 | SyntaxKind::COMMENT_ON
20997 | SyntaxKind::COMMIT
20998 | SyntaxKind::COPY
20999 | SyntaxKind::CREATE_ACCESS_METHOD
21000 | SyntaxKind::CREATE_AGGREGATE
21001 | SyntaxKind::CREATE_CAST
21002 | SyntaxKind::CREATE_COLLATION
21003 | SyntaxKind::CREATE_CONVERSION
21004 | SyntaxKind::CREATE_DATABASE
21005 | SyntaxKind::CREATE_DOMAIN
21006 | SyntaxKind::CREATE_EVENT_TRIGGER
21007 | SyntaxKind::CREATE_EXTENSION
21008 | SyntaxKind::CREATE_FOREIGN_DATA_WRAPPER
21009 | SyntaxKind::CREATE_FOREIGN_TABLE
21010 | SyntaxKind::CREATE_FUNCTION
21011 | SyntaxKind::CREATE_GROUP
21012 | SyntaxKind::CREATE_INDEX
21013 | SyntaxKind::CREATE_LANGUAGE
21014 | SyntaxKind::CREATE_MATERIALIZED_VIEW
21015 | SyntaxKind::CREATE_OPERATOR
21016 | SyntaxKind::CREATE_OPERATOR_CLASS
21017 | SyntaxKind::CREATE_OPERATOR_FAMILY
21018 | SyntaxKind::CREATE_POLICY
21019 | SyntaxKind::CREATE_PROCEDURE
21020 | SyntaxKind::CREATE_PUBLICATION
21021 | SyntaxKind::CREATE_ROLE
21022 | SyntaxKind::CREATE_RULE
21023 | SyntaxKind::CREATE_SCHEMA
21024 | SyntaxKind::CREATE_SEQUENCE
21025 | SyntaxKind::CREATE_SERVER
21026 | SyntaxKind::CREATE_STATISTICS
21027 | SyntaxKind::CREATE_SUBSCRIPTION
21028 | SyntaxKind::CREATE_TABLE
21029 | SyntaxKind::CREATE_TABLE_AS
21030 | SyntaxKind::CREATE_TABLESPACE
21031 | SyntaxKind::CREATE_TEXT_SEARCH_CONFIGURATION
21032 | SyntaxKind::CREATE_TEXT_SEARCH_DICTIONARY
21033 | SyntaxKind::CREATE_TEXT_SEARCH_PARSER
21034 | SyntaxKind::CREATE_TEXT_SEARCH_TEMPLATE
21035 | SyntaxKind::CREATE_TRANSFORM
21036 | SyntaxKind::CREATE_TRIGGER
21037 | SyntaxKind::CREATE_TYPE
21038 | SyntaxKind::CREATE_USER
21039 | SyntaxKind::CREATE_USER_MAPPING
21040 | SyntaxKind::CREATE_VIEW
21041 | SyntaxKind::DEALLOCATE
21042 | SyntaxKind::DECLARE
21043 | SyntaxKind::DELETE
21044 | SyntaxKind::DISCARD
21045 | SyntaxKind::DO
21046 | SyntaxKind::DROP_ACCESS_METHOD
21047 | SyntaxKind::DROP_AGGREGATE
21048 | SyntaxKind::DROP_CAST
21049 | SyntaxKind::DROP_COLLATION
21050 | SyntaxKind::DROP_CONVERSION
21051 | SyntaxKind::DROP_DATABASE
21052 | SyntaxKind::DROP_DOMAIN
21053 | SyntaxKind::DROP_EVENT_TRIGGER
21054 | SyntaxKind::DROP_EXTENSION
21055 | SyntaxKind::DROP_FOREIGN_DATA_WRAPPER
21056 | SyntaxKind::DROP_FOREIGN_TABLE
21057 | SyntaxKind::DROP_FUNCTION
21058 | SyntaxKind::DROP_GROUP
21059 | SyntaxKind::DROP_INDEX
21060 | SyntaxKind::DROP_LANGUAGE
21061 | SyntaxKind::DROP_MATERIALIZED_VIEW
21062 | SyntaxKind::DROP_OPERATOR
21063 | SyntaxKind::DROP_OPERATOR_CLASS
21064 | SyntaxKind::DROP_OPERATOR_FAMILY
21065 | SyntaxKind::DROP_OWNED
21066 | SyntaxKind::DROP_POLICY
21067 | SyntaxKind::DROP_PROCEDURE
21068 | SyntaxKind::DROP_PUBLICATION
21069 | SyntaxKind::DROP_ROLE
21070 | SyntaxKind::DROP_ROUTINE
21071 | SyntaxKind::DROP_RULE
21072 | SyntaxKind::DROP_SCHEMA
21073 | SyntaxKind::DROP_SEQUENCE
21074 | SyntaxKind::DROP_SERVER
21075 | SyntaxKind::DROP_STATISTICS
21076 | SyntaxKind::DROP_SUBSCRIPTION
21077 | SyntaxKind::DROP_TABLE
21078 | SyntaxKind::DROP_TABLESPACE
21079 | SyntaxKind::DROP_TEXT_SEARCH_CONFIG
21080 | SyntaxKind::DROP_TEXT_SEARCH_DICT
21081 | SyntaxKind::DROP_TEXT_SEARCH_PARSER
21082 | SyntaxKind::DROP_TEXT_SEARCH_TEMPLATE
21083 | SyntaxKind::DROP_TRANSFORM
21084 | SyntaxKind::DROP_TRIGGER
21085 | SyntaxKind::DROP_TYPE
21086 | SyntaxKind::DROP_USER
21087 | SyntaxKind::DROP_USER_MAPPING
21088 | SyntaxKind::DROP_VIEW
21089 | SyntaxKind::EXECUTE
21090 | SyntaxKind::EXPLAIN
21091 | SyntaxKind::FETCH
21092 | SyntaxKind::GRANT
21093 | SyntaxKind::IMPORT_FOREIGN_SCHEMA
21094 | SyntaxKind::INSERT
21095 | SyntaxKind::LISTEN
21096 | SyntaxKind::LOAD
21097 | SyntaxKind::LOCK
21098 | SyntaxKind::MERGE
21099 | SyntaxKind::MOVE
21100 | SyntaxKind::NOTIFY
21101 | SyntaxKind::PAREN_SELECT
21102 | SyntaxKind::PREPARE
21103 | SyntaxKind::PREPARE_TRANSACTION
21104 | SyntaxKind::REASSIGN
21105 | SyntaxKind::REFRESH
21106 | SyntaxKind::REINDEX
21107 | SyntaxKind::RELEASE_SAVEPOINT
21108 | SyntaxKind::RESET
21109 | SyntaxKind::REVOKE
21110 | SyntaxKind::ROLLBACK
21111 | SyntaxKind::SAVEPOINT
21112 | SyntaxKind::SECURITY_LABEL
21113 | SyntaxKind::SELECT
21114 | SyntaxKind::SELECT_INTO
21115 | SyntaxKind::SET
21116 | SyntaxKind::SET_CONSTRAINTS
21117 | SyntaxKind::SET_ROLE
21118 | SyntaxKind::SET_SESSION_AUTH
21119 | SyntaxKind::SET_TRANSACTION
21120 | SyntaxKind::SHOW
21121 | SyntaxKind::TRUNCATE
21122 | SyntaxKind::UNLISTEN
21123 | SyntaxKind::UPDATE
21124 | SyntaxKind::VACUUM
21125 | SyntaxKind::VALUES
21126 )
21127 }
21128 #[inline]
21129 fn cast(syntax: SyntaxNode) -> Option<Self> {
21130 let res = match syntax.kind() {
21131 SyntaxKind::ALTER_AGGREGATE => Stmt::AlterAggregate(AlterAggregate { syntax }),
21132 SyntaxKind::ALTER_COLLATION => Stmt::AlterCollation(AlterCollation { syntax }),
21133 SyntaxKind::ALTER_CONVERSION => Stmt::AlterConversion(AlterConversion { syntax }),
21134 SyntaxKind::ALTER_DATABASE => Stmt::AlterDatabase(AlterDatabase { syntax }),
21135 SyntaxKind::ALTER_DEFAULT_PRIVILEGES => {
21136 Stmt::AlterDefaultPrivileges(AlterDefaultPrivileges { syntax })
21137 }
21138 SyntaxKind::ALTER_DOMAIN => Stmt::AlterDomain(AlterDomain { syntax }),
21139 SyntaxKind::ALTER_EVENT_TRIGGER => {
21140 Stmt::AlterEventTrigger(AlterEventTrigger { syntax })
21141 }
21142 SyntaxKind::ALTER_EXTENSION => Stmt::AlterExtension(AlterExtension { syntax }),
21143 SyntaxKind::ALTER_FOREIGN_DATA_WRAPPER => {
21144 Stmt::AlterForeignDataWrapper(AlterForeignDataWrapper { syntax })
21145 }
21146 SyntaxKind::ALTER_FOREIGN_TABLE => {
21147 Stmt::AlterForeignTable(AlterForeignTable { syntax })
21148 }
21149 SyntaxKind::ALTER_FUNCTION => Stmt::AlterFunction(AlterFunction { syntax }),
21150 SyntaxKind::ALTER_GROUP => Stmt::AlterGroup(AlterGroup { syntax }),
21151 SyntaxKind::ALTER_INDEX => Stmt::AlterIndex(AlterIndex { syntax }),
21152 SyntaxKind::ALTER_LANGUAGE => Stmt::AlterLanguage(AlterLanguage { syntax }),
21153 SyntaxKind::ALTER_LARGE_OBJECT => Stmt::AlterLargeObject(AlterLargeObject { syntax }),
21154 SyntaxKind::ALTER_MATERIALIZED_VIEW => {
21155 Stmt::AlterMaterializedView(AlterMaterializedView { syntax })
21156 }
21157 SyntaxKind::ALTER_OPERATOR => Stmt::AlterOperator(AlterOperator { syntax }),
21158 SyntaxKind::ALTER_OPERATOR_CLASS => {
21159 Stmt::AlterOperatorClass(AlterOperatorClass { syntax })
21160 }
21161 SyntaxKind::ALTER_OPERATOR_FAMILY => {
21162 Stmt::AlterOperatorFamily(AlterOperatorFamily { syntax })
21163 }
21164 SyntaxKind::ALTER_POLICY => Stmt::AlterPolicy(AlterPolicy { syntax }),
21165 SyntaxKind::ALTER_PROCEDURE => Stmt::AlterProcedure(AlterProcedure { syntax }),
21166 SyntaxKind::ALTER_PUBLICATION => Stmt::AlterPublication(AlterPublication { syntax }),
21167 SyntaxKind::ALTER_ROLE => Stmt::AlterRole(AlterRole { syntax }),
21168 SyntaxKind::ALTER_ROUTINE => Stmt::AlterRoutine(AlterRoutine { syntax }),
21169 SyntaxKind::ALTER_RULE => Stmt::AlterRule(AlterRule { syntax }),
21170 SyntaxKind::ALTER_SCHEMA => Stmt::AlterSchema(AlterSchema { syntax }),
21171 SyntaxKind::ALTER_SEQUENCE => Stmt::AlterSequence(AlterSequence { syntax }),
21172 SyntaxKind::ALTER_SERVER => Stmt::AlterServer(AlterServer { syntax }),
21173 SyntaxKind::ALTER_STATISTICS => Stmt::AlterStatistics(AlterStatistics { syntax }),
21174 SyntaxKind::ALTER_SUBSCRIPTION => Stmt::AlterSubscription(AlterSubscription { syntax }),
21175 SyntaxKind::ALTER_SYSTEM => Stmt::AlterSystem(AlterSystem { syntax }),
21176 SyntaxKind::ALTER_TABLE => Stmt::AlterTable(AlterTable { syntax }),
21177 SyntaxKind::ALTER_TABLESPACE => Stmt::AlterTablespace(AlterTablespace { syntax }),
21178 SyntaxKind::ALTER_TEXT_SEARCH_CONFIGURATION => {
21179 Stmt::AlterTextSearchConfiguration(AlterTextSearchConfiguration { syntax })
21180 }
21181 SyntaxKind::ALTER_TEXT_SEARCH_DICTIONARY => {
21182 Stmt::AlterTextSearchDictionary(AlterTextSearchDictionary { syntax })
21183 }
21184 SyntaxKind::ALTER_TEXT_SEARCH_PARSER => {
21185 Stmt::AlterTextSearchParser(AlterTextSearchParser { syntax })
21186 }
21187 SyntaxKind::ALTER_TEXT_SEARCH_TEMPLATE => {
21188 Stmt::AlterTextSearchTemplate(AlterTextSearchTemplate { syntax })
21189 }
21190 SyntaxKind::ALTER_TRIGGER => Stmt::AlterTrigger(AlterTrigger { syntax }),
21191 SyntaxKind::ALTER_TYPE => Stmt::AlterType(AlterType { syntax }),
21192 SyntaxKind::ALTER_USER => Stmt::AlterUser(AlterUser { syntax }),
21193 SyntaxKind::ALTER_USER_MAPPING => Stmt::AlterUserMapping(AlterUserMapping { syntax }),
21194 SyntaxKind::ALTER_VIEW => Stmt::AlterView(AlterView { syntax }),
21195 SyntaxKind::ANALYZE => Stmt::Analyze(Analyze { syntax }),
21196 SyntaxKind::BEGIN => Stmt::Begin(Begin { syntax }),
21197 SyntaxKind::CALL => Stmt::Call(Call { syntax }),
21198 SyntaxKind::CHECKPOINT => Stmt::Checkpoint(Checkpoint { syntax }),
21199 SyntaxKind::CLOSE => Stmt::Close(Close { syntax }),
21200 SyntaxKind::CLUSTER => Stmt::Cluster(Cluster { syntax }),
21201 SyntaxKind::COMMENT_ON => Stmt::CommentOn(CommentOn { syntax }),
21202 SyntaxKind::COMMIT => Stmt::Commit(Commit { syntax }),
21203 SyntaxKind::COPY => Stmt::Copy(Copy { syntax }),
21204 SyntaxKind::CREATE_ACCESS_METHOD => {
21205 Stmt::CreateAccessMethod(CreateAccessMethod { syntax })
21206 }
21207 SyntaxKind::CREATE_AGGREGATE => Stmt::CreateAggregate(CreateAggregate { syntax }),
21208 SyntaxKind::CREATE_CAST => Stmt::CreateCast(CreateCast { syntax }),
21209 SyntaxKind::CREATE_COLLATION => Stmt::CreateCollation(CreateCollation { syntax }),
21210 SyntaxKind::CREATE_CONVERSION => Stmt::CreateConversion(CreateConversion { syntax }),
21211 SyntaxKind::CREATE_DATABASE => Stmt::CreateDatabase(CreateDatabase { syntax }),
21212 SyntaxKind::CREATE_DOMAIN => Stmt::CreateDomain(CreateDomain { syntax }),
21213 SyntaxKind::CREATE_EVENT_TRIGGER => {
21214 Stmt::CreateEventTrigger(CreateEventTrigger { syntax })
21215 }
21216 SyntaxKind::CREATE_EXTENSION => Stmt::CreateExtension(CreateExtension { syntax }),
21217 SyntaxKind::CREATE_FOREIGN_DATA_WRAPPER => {
21218 Stmt::CreateForeignDataWrapper(CreateForeignDataWrapper { syntax })
21219 }
21220 SyntaxKind::CREATE_FOREIGN_TABLE => {
21221 Stmt::CreateForeignTable(CreateForeignTable { syntax })
21222 }
21223 SyntaxKind::CREATE_FUNCTION => Stmt::CreateFunction(CreateFunction { syntax }),
21224 SyntaxKind::CREATE_GROUP => Stmt::CreateGroup(CreateGroup { syntax }),
21225 SyntaxKind::CREATE_INDEX => Stmt::CreateIndex(CreateIndex { syntax }),
21226 SyntaxKind::CREATE_LANGUAGE => Stmt::CreateLanguage(CreateLanguage { syntax }),
21227 SyntaxKind::CREATE_MATERIALIZED_VIEW => {
21228 Stmt::CreateMaterializedView(CreateMaterializedView { syntax })
21229 }
21230 SyntaxKind::CREATE_OPERATOR => Stmt::CreateOperator(CreateOperator { syntax }),
21231 SyntaxKind::CREATE_OPERATOR_CLASS => {
21232 Stmt::CreateOperatorClass(CreateOperatorClass { syntax })
21233 }
21234 SyntaxKind::CREATE_OPERATOR_FAMILY => {
21235 Stmt::CreateOperatorFamily(CreateOperatorFamily { syntax })
21236 }
21237 SyntaxKind::CREATE_POLICY => Stmt::CreatePolicy(CreatePolicy { syntax }),
21238 SyntaxKind::CREATE_PROCEDURE => Stmt::CreateProcedure(CreateProcedure { syntax }),
21239 SyntaxKind::CREATE_PUBLICATION => Stmt::CreatePublication(CreatePublication { syntax }),
21240 SyntaxKind::CREATE_ROLE => Stmt::CreateRole(CreateRole { syntax }),
21241 SyntaxKind::CREATE_RULE => Stmt::CreateRule(CreateRule { syntax }),
21242 SyntaxKind::CREATE_SCHEMA => Stmt::CreateSchema(CreateSchema { syntax }),
21243 SyntaxKind::CREATE_SEQUENCE => Stmt::CreateSequence(CreateSequence { syntax }),
21244 SyntaxKind::CREATE_SERVER => Stmt::CreateServer(CreateServer { syntax }),
21245 SyntaxKind::CREATE_STATISTICS => Stmt::CreateStatistics(CreateStatistics { syntax }),
21246 SyntaxKind::CREATE_SUBSCRIPTION => {
21247 Stmt::CreateSubscription(CreateSubscription { syntax })
21248 }
21249 SyntaxKind::CREATE_TABLE => Stmt::CreateTable(CreateTable { syntax }),
21250 SyntaxKind::CREATE_TABLE_AS => Stmt::CreateTableAs(CreateTableAs { syntax }),
21251 SyntaxKind::CREATE_TABLESPACE => Stmt::CreateTablespace(CreateTablespace { syntax }),
21252 SyntaxKind::CREATE_TEXT_SEARCH_CONFIGURATION => {
21253 Stmt::CreateTextSearchConfiguration(CreateTextSearchConfiguration { syntax })
21254 }
21255 SyntaxKind::CREATE_TEXT_SEARCH_DICTIONARY => {
21256 Stmt::CreateTextSearchDictionary(CreateTextSearchDictionary { syntax })
21257 }
21258 SyntaxKind::CREATE_TEXT_SEARCH_PARSER => {
21259 Stmt::CreateTextSearchParser(CreateTextSearchParser { syntax })
21260 }
21261 SyntaxKind::CREATE_TEXT_SEARCH_TEMPLATE => {
21262 Stmt::CreateTextSearchTemplate(CreateTextSearchTemplate { syntax })
21263 }
21264 SyntaxKind::CREATE_TRANSFORM => Stmt::CreateTransform(CreateTransform { syntax }),
21265 SyntaxKind::CREATE_TRIGGER => Stmt::CreateTrigger(CreateTrigger { syntax }),
21266 SyntaxKind::CREATE_TYPE => Stmt::CreateType(CreateType { syntax }),
21267 SyntaxKind::CREATE_USER => Stmt::CreateUser(CreateUser { syntax }),
21268 SyntaxKind::CREATE_USER_MAPPING => {
21269 Stmt::CreateUserMapping(CreateUserMapping { syntax })
21270 }
21271 SyntaxKind::CREATE_VIEW => Stmt::CreateView(CreateView { syntax }),
21272 SyntaxKind::DEALLOCATE => Stmt::Deallocate(Deallocate { syntax }),
21273 SyntaxKind::DECLARE => Stmt::Declare(Declare { syntax }),
21274 SyntaxKind::DELETE => Stmt::Delete(Delete { syntax }),
21275 SyntaxKind::DISCARD => Stmt::Discard(Discard { syntax }),
21276 SyntaxKind::DO => Stmt::Do(Do { syntax }),
21277 SyntaxKind::DROP_ACCESS_METHOD => Stmt::DropAccessMethod(DropAccessMethod { syntax }),
21278 SyntaxKind::DROP_AGGREGATE => Stmt::DropAggregate(DropAggregate { syntax }),
21279 SyntaxKind::DROP_CAST => Stmt::DropCast(DropCast { syntax }),
21280 SyntaxKind::DROP_COLLATION => Stmt::DropCollation(DropCollation { syntax }),
21281 SyntaxKind::DROP_CONVERSION => Stmt::DropConversion(DropConversion { syntax }),
21282 SyntaxKind::DROP_DATABASE => Stmt::DropDatabase(DropDatabase { syntax }),
21283 SyntaxKind::DROP_DOMAIN => Stmt::DropDomain(DropDomain { syntax }),
21284 SyntaxKind::DROP_EVENT_TRIGGER => Stmt::DropEventTrigger(DropEventTrigger { syntax }),
21285 SyntaxKind::DROP_EXTENSION => Stmt::DropExtension(DropExtension { syntax }),
21286 SyntaxKind::DROP_FOREIGN_DATA_WRAPPER => {
21287 Stmt::DropForeignDataWrapper(DropForeignDataWrapper { syntax })
21288 }
21289 SyntaxKind::DROP_FOREIGN_TABLE => Stmt::DropForeignTable(DropForeignTable { syntax }),
21290 SyntaxKind::DROP_FUNCTION => Stmt::DropFunction(DropFunction { syntax }),
21291 SyntaxKind::DROP_GROUP => Stmt::DropGroup(DropGroup { syntax }),
21292 SyntaxKind::DROP_INDEX => Stmt::DropIndex(DropIndex { syntax }),
21293 SyntaxKind::DROP_LANGUAGE => Stmt::DropLanguage(DropLanguage { syntax }),
21294 SyntaxKind::DROP_MATERIALIZED_VIEW => {
21295 Stmt::DropMaterializedView(DropMaterializedView { syntax })
21296 }
21297 SyntaxKind::DROP_OPERATOR => Stmt::DropOperator(DropOperator { syntax }),
21298 SyntaxKind::DROP_OPERATOR_CLASS => {
21299 Stmt::DropOperatorClass(DropOperatorClass { syntax })
21300 }
21301 SyntaxKind::DROP_OPERATOR_FAMILY => {
21302 Stmt::DropOperatorFamily(DropOperatorFamily { syntax })
21303 }
21304 SyntaxKind::DROP_OWNED => Stmt::DropOwned(DropOwned { syntax }),
21305 SyntaxKind::DROP_POLICY => Stmt::DropPolicy(DropPolicy { syntax }),
21306 SyntaxKind::DROP_PROCEDURE => Stmt::DropProcedure(DropProcedure { syntax }),
21307 SyntaxKind::DROP_PUBLICATION => Stmt::DropPublication(DropPublication { syntax }),
21308 SyntaxKind::DROP_ROLE => Stmt::DropRole(DropRole { syntax }),
21309 SyntaxKind::DROP_ROUTINE => Stmt::DropRoutine(DropRoutine { syntax }),
21310 SyntaxKind::DROP_RULE => Stmt::DropRule(DropRule { syntax }),
21311 SyntaxKind::DROP_SCHEMA => Stmt::DropSchema(DropSchema { syntax }),
21312 SyntaxKind::DROP_SEQUENCE => Stmt::DropSequence(DropSequence { syntax }),
21313 SyntaxKind::DROP_SERVER => Stmt::DropServer(DropServer { syntax }),
21314 SyntaxKind::DROP_STATISTICS => Stmt::DropStatistics(DropStatistics { syntax }),
21315 SyntaxKind::DROP_SUBSCRIPTION => Stmt::DropSubscription(DropSubscription { syntax }),
21316 SyntaxKind::DROP_TABLE => Stmt::DropTable(DropTable { syntax }),
21317 SyntaxKind::DROP_TABLESPACE => Stmt::DropTablespace(DropTablespace { syntax }),
21318 SyntaxKind::DROP_TEXT_SEARCH_CONFIG => {
21319 Stmt::DropTextSearchConfig(DropTextSearchConfig { syntax })
21320 }
21321 SyntaxKind::DROP_TEXT_SEARCH_DICT => {
21322 Stmt::DropTextSearchDict(DropTextSearchDict { syntax })
21323 }
21324 SyntaxKind::DROP_TEXT_SEARCH_PARSER => {
21325 Stmt::DropTextSearchParser(DropTextSearchParser { syntax })
21326 }
21327 SyntaxKind::DROP_TEXT_SEARCH_TEMPLATE => {
21328 Stmt::DropTextSearchTemplate(DropTextSearchTemplate { syntax })
21329 }
21330 SyntaxKind::DROP_TRANSFORM => Stmt::DropTransform(DropTransform { syntax }),
21331 SyntaxKind::DROP_TRIGGER => Stmt::DropTrigger(DropTrigger { syntax }),
21332 SyntaxKind::DROP_TYPE => Stmt::DropType(DropType { syntax }),
21333 SyntaxKind::DROP_USER => Stmt::DropUser(DropUser { syntax }),
21334 SyntaxKind::DROP_USER_MAPPING => Stmt::DropUserMapping(DropUserMapping { syntax }),
21335 SyntaxKind::DROP_VIEW => Stmt::DropView(DropView { syntax }),
21336 SyntaxKind::EXECUTE => Stmt::Execute(Execute { syntax }),
21337 SyntaxKind::EXPLAIN => Stmt::Explain(Explain { syntax }),
21338 SyntaxKind::FETCH => Stmt::Fetch(Fetch { syntax }),
21339 SyntaxKind::GRANT => Stmt::Grant(Grant { syntax }),
21340 SyntaxKind::IMPORT_FOREIGN_SCHEMA => {
21341 Stmt::ImportForeignSchema(ImportForeignSchema { syntax })
21342 }
21343 SyntaxKind::INSERT => Stmt::Insert(Insert { syntax }),
21344 SyntaxKind::LISTEN => Stmt::Listen(Listen { syntax }),
21345 SyntaxKind::LOAD => Stmt::Load(Load { syntax }),
21346 SyntaxKind::LOCK => Stmt::Lock(Lock { syntax }),
21347 SyntaxKind::MERGE => Stmt::Merge(Merge { syntax }),
21348 SyntaxKind::MOVE => Stmt::Move(Move { syntax }),
21349 SyntaxKind::NOTIFY => Stmt::Notify(Notify { syntax }),
21350 SyntaxKind::PAREN_SELECT => Stmt::ParenSelect(ParenSelect { syntax }),
21351 SyntaxKind::PREPARE => Stmt::Prepare(Prepare { syntax }),
21352 SyntaxKind::PREPARE_TRANSACTION => {
21353 Stmt::PrepareTransaction(PrepareTransaction { syntax })
21354 }
21355 SyntaxKind::REASSIGN => Stmt::Reassign(Reassign { syntax }),
21356 SyntaxKind::REFRESH => Stmt::Refresh(Refresh { syntax }),
21357 SyntaxKind::REINDEX => Stmt::Reindex(Reindex { syntax }),
21358 SyntaxKind::RELEASE_SAVEPOINT => Stmt::ReleaseSavepoint(ReleaseSavepoint { syntax }),
21359 SyntaxKind::RESET => Stmt::Reset(Reset { syntax }),
21360 SyntaxKind::REVOKE => Stmt::Revoke(Revoke { syntax }),
21361 SyntaxKind::ROLLBACK => Stmt::Rollback(Rollback { syntax }),
21362 SyntaxKind::SAVEPOINT => Stmt::Savepoint(Savepoint { syntax }),
21363 SyntaxKind::SECURITY_LABEL => Stmt::SecurityLabel(SecurityLabel { syntax }),
21364 SyntaxKind::SELECT => Stmt::Select(Select { syntax }),
21365 SyntaxKind::SELECT_INTO => Stmt::SelectInto(SelectInto { syntax }),
21366 SyntaxKind::SET => Stmt::Set(Set { syntax }),
21367 SyntaxKind::SET_CONSTRAINTS => Stmt::SetConstraints(SetConstraints { syntax }),
21368 SyntaxKind::SET_ROLE => Stmt::SetRole(SetRole { syntax }),
21369 SyntaxKind::SET_SESSION_AUTH => Stmt::SetSessionAuth(SetSessionAuth { syntax }),
21370 SyntaxKind::SET_TRANSACTION => Stmt::SetTransaction(SetTransaction { syntax }),
21371 SyntaxKind::SHOW => Stmt::Show(Show { syntax }),
21372 SyntaxKind::TRUNCATE => Stmt::Truncate(Truncate { syntax }),
21373 SyntaxKind::UNLISTEN => Stmt::Unlisten(Unlisten { syntax }),
21374 SyntaxKind::UPDATE => Stmt::Update(Update { syntax }),
21375 SyntaxKind::VACUUM => Stmt::Vacuum(Vacuum { syntax }),
21376 SyntaxKind::VALUES => Stmt::Values(Values { syntax }),
21377 _ => {
21378 return None;
21379 }
21380 };
21381 Some(res)
21382 }
21383 #[inline]
21384 fn syntax(&self) -> &SyntaxNode {
21385 match self {
21386 Stmt::AlterAggregate(it) => &it.syntax,
21387 Stmt::AlterCollation(it) => &it.syntax,
21388 Stmt::AlterConversion(it) => &it.syntax,
21389 Stmt::AlterDatabase(it) => &it.syntax,
21390 Stmt::AlterDefaultPrivileges(it) => &it.syntax,
21391 Stmt::AlterDomain(it) => &it.syntax,
21392 Stmt::AlterEventTrigger(it) => &it.syntax,
21393 Stmt::AlterExtension(it) => &it.syntax,
21394 Stmt::AlterForeignDataWrapper(it) => &it.syntax,
21395 Stmt::AlterForeignTable(it) => &it.syntax,
21396 Stmt::AlterFunction(it) => &it.syntax,
21397 Stmt::AlterGroup(it) => &it.syntax,
21398 Stmt::AlterIndex(it) => &it.syntax,
21399 Stmt::AlterLanguage(it) => &it.syntax,
21400 Stmt::AlterLargeObject(it) => &it.syntax,
21401 Stmt::AlterMaterializedView(it) => &it.syntax,
21402 Stmt::AlterOperator(it) => &it.syntax,
21403 Stmt::AlterOperatorClass(it) => &it.syntax,
21404 Stmt::AlterOperatorFamily(it) => &it.syntax,
21405 Stmt::AlterPolicy(it) => &it.syntax,
21406 Stmt::AlterProcedure(it) => &it.syntax,
21407 Stmt::AlterPublication(it) => &it.syntax,
21408 Stmt::AlterRole(it) => &it.syntax,
21409 Stmt::AlterRoutine(it) => &it.syntax,
21410 Stmt::AlterRule(it) => &it.syntax,
21411 Stmt::AlterSchema(it) => &it.syntax,
21412 Stmt::AlterSequence(it) => &it.syntax,
21413 Stmt::AlterServer(it) => &it.syntax,
21414 Stmt::AlterStatistics(it) => &it.syntax,
21415 Stmt::AlterSubscription(it) => &it.syntax,
21416 Stmt::AlterSystem(it) => &it.syntax,
21417 Stmt::AlterTable(it) => &it.syntax,
21418 Stmt::AlterTablespace(it) => &it.syntax,
21419 Stmt::AlterTextSearchConfiguration(it) => &it.syntax,
21420 Stmt::AlterTextSearchDictionary(it) => &it.syntax,
21421 Stmt::AlterTextSearchParser(it) => &it.syntax,
21422 Stmt::AlterTextSearchTemplate(it) => &it.syntax,
21423 Stmt::AlterTrigger(it) => &it.syntax,
21424 Stmt::AlterType(it) => &it.syntax,
21425 Stmt::AlterUser(it) => &it.syntax,
21426 Stmt::AlterUserMapping(it) => &it.syntax,
21427 Stmt::AlterView(it) => &it.syntax,
21428 Stmt::Analyze(it) => &it.syntax,
21429 Stmt::Begin(it) => &it.syntax,
21430 Stmt::Call(it) => &it.syntax,
21431 Stmt::Checkpoint(it) => &it.syntax,
21432 Stmt::Close(it) => &it.syntax,
21433 Stmt::Cluster(it) => &it.syntax,
21434 Stmt::CommentOn(it) => &it.syntax,
21435 Stmt::Commit(it) => &it.syntax,
21436 Stmt::Copy(it) => &it.syntax,
21437 Stmt::CreateAccessMethod(it) => &it.syntax,
21438 Stmt::CreateAggregate(it) => &it.syntax,
21439 Stmt::CreateCast(it) => &it.syntax,
21440 Stmt::CreateCollation(it) => &it.syntax,
21441 Stmt::CreateConversion(it) => &it.syntax,
21442 Stmt::CreateDatabase(it) => &it.syntax,
21443 Stmt::CreateDomain(it) => &it.syntax,
21444 Stmt::CreateEventTrigger(it) => &it.syntax,
21445 Stmt::CreateExtension(it) => &it.syntax,
21446 Stmt::CreateForeignDataWrapper(it) => &it.syntax,
21447 Stmt::CreateForeignTable(it) => &it.syntax,
21448 Stmt::CreateFunction(it) => &it.syntax,
21449 Stmt::CreateGroup(it) => &it.syntax,
21450 Stmt::CreateIndex(it) => &it.syntax,
21451 Stmt::CreateLanguage(it) => &it.syntax,
21452 Stmt::CreateMaterializedView(it) => &it.syntax,
21453 Stmt::CreateOperator(it) => &it.syntax,
21454 Stmt::CreateOperatorClass(it) => &it.syntax,
21455 Stmt::CreateOperatorFamily(it) => &it.syntax,
21456 Stmt::CreatePolicy(it) => &it.syntax,
21457 Stmt::CreateProcedure(it) => &it.syntax,
21458 Stmt::CreatePublication(it) => &it.syntax,
21459 Stmt::CreateRole(it) => &it.syntax,
21460 Stmt::CreateRule(it) => &it.syntax,
21461 Stmt::CreateSchema(it) => &it.syntax,
21462 Stmt::CreateSequence(it) => &it.syntax,
21463 Stmt::CreateServer(it) => &it.syntax,
21464 Stmt::CreateStatistics(it) => &it.syntax,
21465 Stmt::CreateSubscription(it) => &it.syntax,
21466 Stmt::CreateTable(it) => &it.syntax,
21467 Stmt::CreateTableAs(it) => &it.syntax,
21468 Stmt::CreateTablespace(it) => &it.syntax,
21469 Stmt::CreateTextSearchConfiguration(it) => &it.syntax,
21470 Stmt::CreateTextSearchDictionary(it) => &it.syntax,
21471 Stmt::CreateTextSearchParser(it) => &it.syntax,
21472 Stmt::CreateTextSearchTemplate(it) => &it.syntax,
21473 Stmt::CreateTransform(it) => &it.syntax,
21474 Stmt::CreateTrigger(it) => &it.syntax,
21475 Stmt::CreateType(it) => &it.syntax,
21476 Stmt::CreateUser(it) => &it.syntax,
21477 Stmt::CreateUserMapping(it) => &it.syntax,
21478 Stmt::CreateView(it) => &it.syntax,
21479 Stmt::Deallocate(it) => &it.syntax,
21480 Stmt::Declare(it) => &it.syntax,
21481 Stmt::Delete(it) => &it.syntax,
21482 Stmt::Discard(it) => &it.syntax,
21483 Stmt::Do(it) => &it.syntax,
21484 Stmt::DropAccessMethod(it) => &it.syntax,
21485 Stmt::DropAggregate(it) => &it.syntax,
21486 Stmt::DropCast(it) => &it.syntax,
21487 Stmt::DropCollation(it) => &it.syntax,
21488 Stmt::DropConversion(it) => &it.syntax,
21489 Stmt::DropDatabase(it) => &it.syntax,
21490 Stmt::DropDomain(it) => &it.syntax,
21491 Stmt::DropEventTrigger(it) => &it.syntax,
21492 Stmt::DropExtension(it) => &it.syntax,
21493 Stmt::DropForeignDataWrapper(it) => &it.syntax,
21494 Stmt::DropForeignTable(it) => &it.syntax,
21495 Stmt::DropFunction(it) => &it.syntax,
21496 Stmt::DropGroup(it) => &it.syntax,
21497 Stmt::DropIndex(it) => &it.syntax,
21498 Stmt::DropLanguage(it) => &it.syntax,
21499 Stmt::DropMaterializedView(it) => &it.syntax,
21500 Stmt::DropOperator(it) => &it.syntax,
21501 Stmt::DropOperatorClass(it) => &it.syntax,
21502 Stmt::DropOperatorFamily(it) => &it.syntax,
21503 Stmt::DropOwned(it) => &it.syntax,
21504 Stmt::DropPolicy(it) => &it.syntax,
21505 Stmt::DropProcedure(it) => &it.syntax,
21506 Stmt::DropPublication(it) => &it.syntax,
21507 Stmt::DropRole(it) => &it.syntax,
21508 Stmt::DropRoutine(it) => &it.syntax,
21509 Stmt::DropRule(it) => &it.syntax,
21510 Stmt::DropSchema(it) => &it.syntax,
21511 Stmt::DropSequence(it) => &it.syntax,
21512 Stmt::DropServer(it) => &it.syntax,
21513 Stmt::DropStatistics(it) => &it.syntax,
21514 Stmt::DropSubscription(it) => &it.syntax,
21515 Stmt::DropTable(it) => &it.syntax,
21516 Stmt::DropTablespace(it) => &it.syntax,
21517 Stmt::DropTextSearchConfig(it) => &it.syntax,
21518 Stmt::DropTextSearchDict(it) => &it.syntax,
21519 Stmt::DropTextSearchParser(it) => &it.syntax,
21520 Stmt::DropTextSearchTemplate(it) => &it.syntax,
21521 Stmt::DropTransform(it) => &it.syntax,
21522 Stmt::DropTrigger(it) => &it.syntax,
21523 Stmt::DropType(it) => &it.syntax,
21524 Stmt::DropUser(it) => &it.syntax,
21525 Stmt::DropUserMapping(it) => &it.syntax,
21526 Stmt::DropView(it) => &it.syntax,
21527 Stmt::Execute(it) => &it.syntax,
21528 Stmt::Explain(it) => &it.syntax,
21529 Stmt::Fetch(it) => &it.syntax,
21530 Stmt::Grant(it) => &it.syntax,
21531 Stmt::ImportForeignSchema(it) => &it.syntax,
21532 Stmt::Insert(it) => &it.syntax,
21533 Stmt::Listen(it) => &it.syntax,
21534 Stmt::Load(it) => &it.syntax,
21535 Stmt::Lock(it) => &it.syntax,
21536 Stmt::Merge(it) => &it.syntax,
21537 Stmt::Move(it) => &it.syntax,
21538 Stmt::Notify(it) => &it.syntax,
21539 Stmt::ParenSelect(it) => &it.syntax,
21540 Stmt::Prepare(it) => &it.syntax,
21541 Stmt::PrepareTransaction(it) => &it.syntax,
21542 Stmt::Reassign(it) => &it.syntax,
21543 Stmt::Refresh(it) => &it.syntax,
21544 Stmt::Reindex(it) => &it.syntax,
21545 Stmt::ReleaseSavepoint(it) => &it.syntax,
21546 Stmt::Reset(it) => &it.syntax,
21547 Stmt::Revoke(it) => &it.syntax,
21548 Stmt::Rollback(it) => &it.syntax,
21549 Stmt::Savepoint(it) => &it.syntax,
21550 Stmt::SecurityLabel(it) => &it.syntax,
21551 Stmt::Select(it) => &it.syntax,
21552 Stmt::SelectInto(it) => &it.syntax,
21553 Stmt::Set(it) => &it.syntax,
21554 Stmt::SetConstraints(it) => &it.syntax,
21555 Stmt::SetRole(it) => &it.syntax,
21556 Stmt::SetSessionAuth(it) => &it.syntax,
21557 Stmt::SetTransaction(it) => &it.syntax,
21558 Stmt::Show(it) => &it.syntax,
21559 Stmt::Truncate(it) => &it.syntax,
21560 Stmt::Unlisten(it) => &it.syntax,
21561 Stmt::Update(it) => &it.syntax,
21562 Stmt::Vacuum(it) => &it.syntax,
21563 Stmt::Values(it) => &it.syntax,
21564 }
21565 }
21566}
21567impl From<AlterAggregate> for Stmt {
21568 #[inline]
21569 fn from(node: AlterAggregate) -> Stmt {
21570 Stmt::AlterAggregate(node)
21571 }
21572}
21573impl From<AlterCollation> for Stmt {
21574 #[inline]
21575 fn from(node: AlterCollation) -> Stmt {
21576 Stmt::AlterCollation(node)
21577 }
21578}
21579impl From<AlterConversion> for Stmt {
21580 #[inline]
21581 fn from(node: AlterConversion) -> Stmt {
21582 Stmt::AlterConversion(node)
21583 }
21584}
21585impl From<AlterDatabase> for Stmt {
21586 #[inline]
21587 fn from(node: AlterDatabase) -> Stmt {
21588 Stmt::AlterDatabase(node)
21589 }
21590}
21591impl From<AlterDefaultPrivileges> for Stmt {
21592 #[inline]
21593 fn from(node: AlterDefaultPrivileges) -> Stmt {
21594 Stmt::AlterDefaultPrivileges(node)
21595 }
21596}
21597impl From<AlterDomain> for Stmt {
21598 #[inline]
21599 fn from(node: AlterDomain) -> Stmt {
21600 Stmt::AlterDomain(node)
21601 }
21602}
21603impl From<AlterEventTrigger> for Stmt {
21604 #[inline]
21605 fn from(node: AlterEventTrigger) -> Stmt {
21606 Stmt::AlterEventTrigger(node)
21607 }
21608}
21609impl From<AlterExtension> for Stmt {
21610 #[inline]
21611 fn from(node: AlterExtension) -> Stmt {
21612 Stmt::AlterExtension(node)
21613 }
21614}
21615impl From<AlterForeignDataWrapper> for Stmt {
21616 #[inline]
21617 fn from(node: AlterForeignDataWrapper) -> Stmt {
21618 Stmt::AlterForeignDataWrapper(node)
21619 }
21620}
21621impl From<AlterForeignTable> for Stmt {
21622 #[inline]
21623 fn from(node: AlterForeignTable) -> Stmt {
21624 Stmt::AlterForeignTable(node)
21625 }
21626}
21627impl From<AlterFunction> for Stmt {
21628 #[inline]
21629 fn from(node: AlterFunction) -> Stmt {
21630 Stmt::AlterFunction(node)
21631 }
21632}
21633impl From<AlterGroup> for Stmt {
21634 #[inline]
21635 fn from(node: AlterGroup) -> Stmt {
21636 Stmt::AlterGroup(node)
21637 }
21638}
21639impl From<AlterIndex> for Stmt {
21640 #[inline]
21641 fn from(node: AlterIndex) -> Stmt {
21642 Stmt::AlterIndex(node)
21643 }
21644}
21645impl From<AlterLanguage> for Stmt {
21646 #[inline]
21647 fn from(node: AlterLanguage) -> Stmt {
21648 Stmt::AlterLanguage(node)
21649 }
21650}
21651impl From<AlterLargeObject> for Stmt {
21652 #[inline]
21653 fn from(node: AlterLargeObject) -> Stmt {
21654 Stmt::AlterLargeObject(node)
21655 }
21656}
21657impl From<AlterMaterializedView> for Stmt {
21658 #[inline]
21659 fn from(node: AlterMaterializedView) -> Stmt {
21660 Stmt::AlterMaterializedView(node)
21661 }
21662}
21663impl From<AlterOperator> for Stmt {
21664 #[inline]
21665 fn from(node: AlterOperator) -> Stmt {
21666 Stmt::AlterOperator(node)
21667 }
21668}
21669impl From<AlterOperatorClass> for Stmt {
21670 #[inline]
21671 fn from(node: AlterOperatorClass) -> Stmt {
21672 Stmt::AlterOperatorClass(node)
21673 }
21674}
21675impl From<AlterOperatorFamily> for Stmt {
21676 #[inline]
21677 fn from(node: AlterOperatorFamily) -> Stmt {
21678 Stmt::AlterOperatorFamily(node)
21679 }
21680}
21681impl From<AlterPolicy> for Stmt {
21682 #[inline]
21683 fn from(node: AlterPolicy) -> Stmt {
21684 Stmt::AlterPolicy(node)
21685 }
21686}
21687impl From<AlterProcedure> for Stmt {
21688 #[inline]
21689 fn from(node: AlterProcedure) -> Stmt {
21690 Stmt::AlterProcedure(node)
21691 }
21692}
21693impl From<AlterPublication> for Stmt {
21694 #[inline]
21695 fn from(node: AlterPublication) -> Stmt {
21696 Stmt::AlterPublication(node)
21697 }
21698}
21699impl From<AlterRole> for Stmt {
21700 #[inline]
21701 fn from(node: AlterRole) -> Stmt {
21702 Stmt::AlterRole(node)
21703 }
21704}
21705impl From<AlterRoutine> for Stmt {
21706 #[inline]
21707 fn from(node: AlterRoutine) -> Stmt {
21708 Stmt::AlterRoutine(node)
21709 }
21710}
21711impl From<AlterRule> for Stmt {
21712 #[inline]
21713 fn from(node: AlterRule) -> Stmt {
21714 Stmt::AlterRule(node)
21715 }
21716}
21717impl From<AlterSchema> for Stmt {
21718 #[inline]
21719 fn from(node: AlterSchema) -> Stmt {
21720 Stmt::AlterSchema(node)
21721 }
21722}
21723impl From<AlterSequence> for Stmt {
21724 #[inline]
21725 fn from(node: AlterSequence) -> Stmt {
21726 Stmt::AlterSequence(node)
21727 }
21728}
21729impl From<AlterServer> for Stmt {
21730 #[inline]
21731 fn from(node: AlterServer) -> Stmt {
21732 Stmt::AlterServer(node)
21733 }
21734}
21735impl From<AlterStatistics> for Stmt {
21736 #[inline]
21737 fn from(node: AlterStatistics) -> Stmt {
21738 Stmt::AlterStatistics(node)
21739 }
21740}
21741impl From<AlterSubscription> for Stmt {
21742 #[inline]
21743 fn from(node: AlterSubscription) -> Stmt {
21744 Stmt::AlterSubscription(node)
21745 }
21746}
21747impl From<AlterSystem> for Stmt {
21748 #[inline]
21749 fn from(node: AlterSystem) -> Stmt {
21750 Stmt::AlterSystem(node)
21751 }
21752}
21753impl From<AlterTable> for Stmt {
21754 #[inline]
21755 fn from(node: AlterTable) -> Stmt {
21756 Stmt::AlterTable(node)
21757 }
21758}
21759impl From<AlterTablespace> for Stmt {
21760 #[inline]
21761 fn from(node: AlterTablespace) -> Stmt {
21762 Stmt::AlterTablespace(node)
21763 }
21764}
21765impl From<AlterTextSearchConfiguration> for Stmt {
21766 #[inline]
21767 fn from(node: AlterTextSearchConfiguration) -> Stmt {
21768 Stmt::AlterTextSearchConfiguration(node)
21769 }
21770}
21771impl From<AlterTextSearchDictionary> for Stmt {
21772 #[inline]
21773 fn from(node: AlterTextSearchDictionary) -> Stmt {
21774 Stmt::AlterTextSearchDictionary(node)
21775 }
21776}
21777impl From<AlterTextSearchParser> for Stmt {
21778 #[inline]
21779 fn from(node: AlterTextSearchParser) -> Stmt {
21780 Stmt::AlterTextSearchParser(node)
21781 }
21782}
21783impl From<AlterTextSearchTemplate> for Stmt {
21784 #[inline]
21785 fn from(node: AlterTextSearchTemplate) -> Stmt {
21786 Stmt::AlterTextSearchTemplate(node)
21787 }
21788}
21789impl From<AlterTrigger> for Stmt {
21790 #[inline]
21791 fn from(node: AlterTrigger) -> Stmt {
21792 Stmt::AlterTrigger(node)
21793 }
21794}
21795impl From<AlterType> for Stmt {
21796 #[inline]
21797 fn from(node: AlterType) -> Stmt {
21798 Stmt::AlterType(node)
21799 }
21800}
21801impl From<AlterUser> for Stmt {
21802 #[inline]
21803 fn from(node: AlterUser) -> Stmt {
21804 Stmt::AlterUser(node)
21805 }
21806}
21807impl From<AlterUserMapping> for Stmt {
21808 #[inline]
21809 fn from(node: AlterUserMapping) -> Stmt {
21810 Stmt::AlterUserMapping(node)
21811 }
21812}
21813impl From<AlterView> for Stmt {
21814 #[inline]
21815 fn from(node: AlterView) -> Stmt {
21816 Stmt::AlterView(node)
21817 }
21818}
21819impl From<Analyze> for Stmt {
21820 #[inline]
21821 fn from(node: Analyze) -> Stmt {
21822 Stmt::Analyze(node)
21823 }
21824}
21825impl From<Begin> for Stmt {
21826 #[inline]
21827 fn from(node: Begin) -> Stmt {
21828 Stmt::Begin(node)
21829 }
21830}
21831impl From<Call> for Stmt {
21832 #[inline]
21833 fn from(node: Call) -> Stmt {
21834 Stmt::Call(node)
21835 }
21836}
21837impl From<Checkpoint> for Stmt {
21838 #[inline]
21839 fn from(node: Checkpoint) -> Stmt {
21840 Stmt::Checkpoint(node)
21841 }
21842}
21843impl From<Close> for Stmt {
21844 #[inline]
21845 fn from(node: Close) -> Stmt {
21846 Stmt::Close(node)
21847 }
21848}
21849impl From<Cluster> for Stmt {
21850 #[inline]
21851 fn from(node: Cluster) -> Stmt {
21852 Stmt::Cluster(node)
21853 }
21854}
21855impl From<CommentOn> for Stmt {
21856 #[inline]
21857 fn from(node: CommentOn) -> Stmt {
21858 Stmt::CommentOn(node)
21859 }
21860}
21861impl From<Commit> for Stmt {
21862 #[inline]
21863 fn from(node: Commit) -> Stmt {
21864 Stmt::Commit(node)
21865 }
21866}
21867impl From<Copy> for Stmt {
21868 #[inline]
21869 fn from(node: Copy) -> Stmt {
21870 Stmt::Copy(node)
21871 }
21872}
21873impl From<CreateAccessMethod> for Stmt {
21874 #[inline]
21875 fn from(node: CreateAccessMethod) -> Stmt {
21876 Stmt::CreateAccessMethod(node)
21877 }
21878}
21879impl From<CreateAggregate> for Stmt {
21880 #[inline]
21881 fn from(node: CreateAggregate) -> Stmt {
21882 Stmt::CreateAggregate(node)
21883 }
21884}
21885impl From<CreateCast> for Stmt {
21886 #[inline]
21887 fn from(node: CreateCast) -> Stmt {
21888 Stmt::CreateCast(node)
21889 }
21890}
21891impl From<CreateCollation> for Stmt {
21892 #[inline]
21893 fn from(node: CreateCollation) -> Stmt {
21894 Stmt::CreateCollation(node)
21895 }
21896}
21897impl From<CreateConversion> for Stmt {
21898 #[inline]
21899 fn from(node: CreateConversion) -> Stmt {
21900 Stmt::CreateConversion(node)
21901 }
21902}
21903impl From<CreateDatabase> for Stmt {
21904 #[inline]
21905 fn from(node: CreateDatabase) -> Stmt {
21906 Stmt::CreateDatabase(node)
21907 }
21908}
21909impl From<CreateDomain> for Stmt {
21910 #[inline]
21911 fn from(node: CreateDomain) -> Stmt {
21912 Stmt::CreateDomain(node)
21913 }
21914}
21915impl From<CreateEventTrigger> for Stmt {
21916 #[inline]
21917 fn from(node: CreateEventTrigger) -> Stmt {
21918 Stmt::CreateEventTrigger(node)
21919 }
21920}
21921impl From<CreateExtension> for Stmt {
21922 #[inline]
21923 fn from(node: CreateExtension) -> Stmt {
21924 Stmt::CreateExtension(node)
21925 }
21926}
21927impl From<CreateForeignDataWrapper> for Stmt {
21928 #[inline]
21929 fn from(node: CreateForeignDataWrapper) -> Stmt {
21930 Stmt::CreateForeignDataWrapper(node)
21931 }
21932}
21933impl From<CreateForeignTable> for Stmt {
21934 #[inline]
21935 fn from(node: CreateForeignTable) -> Stmt {
21936 Stmt::CreateForeignTable(node)
21937 }
21938}
21939impl From<CreateFunction> for Stmt {
21940 #[inline]
21941 fn from(node: CreateFunction) -> Stmt {
21942 Stmt::CreateFunction(node)
21943 }
21944}
21945impl From<CreateGroup> for Stmt {
21946 #[inline]
21947 fn from(node: CreateGroup) -> Stmt {
21948 Stmt::CreateGroup(node)
21949 }
21950}
21951impl From<CreateIndex> for Stmt {
21952 #[inline]
21953 fn from(node: CreateIndex) -> Stmt {
21954 Stmt::CreateIndex(node)
21955 }
21956}
21957impl From<CreateLanguage> for Stmt {
21958 #[inline]
21959 fn from(node: CreateLanguage) -> Stmt {
21960 Stmt::CreateLanguage(node)
21961 }
21962}
21963impl From<CreateMaterializedView> for Stmt {
21964 #[inline]
21965 fn from(node: CreateMaterializedView) -> Stmt {
21966 Stmt::CreateMaterializedView(node)
21967 }
21968}
21969impl From<CreateOperator> for Stmt {
21970 #[inline]
21971 fn from(node: CreateOperator) -> Stmt {
21972 Stmt::CreateOperator(node)
21973 }
21974}
21975impl From<CreateOperatorClass> for Stmt {
21976 #[inline]
21977 fn from(node: CreateOperatorClass) -> Stmt {
21978 Stmt::CreateOperatorClass(node)
21979 }
21980}
21981impl From<CreateOperatorFamily> for Stmt {
21982 #[inline]
21983 fn from(node: CreateOperatorFamily) -> Stmt {
21984 Stmt::CreateOperatorFamily(node)
21985 }
21986}
21987impl From<CreatePolicy> for Stmt {
21988 #[inline]
21989 fn from(node: CreatePolicy) -> Stmt {
21990 Stmt::CreatePolicy(node)
21991 }
21992}
21993impl From<CreateProcedure> for Stmt {
21994 #[inline]
21995 fn from(node: CreateProcedure) -> Stmt {
21996 Stmt::CreateProcedure(node)
21997 }
21998}
21999impl From<CreatePublication> for Stmt {
22000 #[inline]
22001 fn from(node: CreatePublication) -> Stmt {
22002 Stmt::CreatePublication(node)
22003 }
22004}
22005impl From<CreateRole> for Stmt {
22006 #[inline]
22007 fn from(node: CreateRole) -> Stmt {
22008 Stmt::CreateRole(node)
22009 }
22010}
22011impl From<CreateRule> for Stmt {
22012 #[inline]
22013 fn from(node: CreateRule) -> Stmt {
22014 Stmt::CreateRule(node)
22015 }
22016}
22017impl From<CreateSchema> for Stmt {
22018 #[inline]
22019 fn from(node: CreateSchema) -> Stmt {
22020 Stmt::CreateSchema(node)
22021 }
22022}
22023impl From<CreateSequence> for Stmt {
22024 #[inline]
22025 fn from(node: CreateSequence) -> Stmt {
22026 Stmt::CreateSequence(node)
22027 }
22028}
22029impl From<CreateServer> for Stmt {
22030 #[inline]
22031 fn from(node: CreateServer) -> Stmt {
22032 Stmt::CreateServer(node)
22033 }
22034}
22035impl From<CreateStatistics> for Stmt {
22036 #[inline]
22037 fn from(node: CreateStatistics) -> Stmt {
22038 Stmt::CreateStatistics(node)
22039 }
22040}
22041impl From<CreateSubscription> for Stmt {
22042 #[inline]
22043 fn from(node: CreateSubscription) -> Stmt {
22044 Stmt::CreateSubscription(node)
22045 }
22046}
22047impl From<CreateTable> for Stmt {
22048 #[inline]
22049 fn from(node: CreateTable) -> Stmt {
22050 Stmt::CreateTable(node)
22051 }
22052}
22053impl From<CreateTableAs> for Stmt {
22054 #[inline]
22055 fn from(node: CreateTableAs) -> Stmt {
22056 Stmt::CreateTableAs(node)
22057 }
22058}
22059impl From<CreateTablespace> for Stmt {
22060 #[inline]
22061 fn from(node: CreateTablespace) -> Stmt {
22062 Stmt::CreateTablespace(node)
22063 }
22064}
22065impl From<CreateTextSearchConfiguration> for Stmt {
22066 #[inline]
22067 fn from(node: CreateTextSearchConfiguration) -> Stmt {
22068 Stmt::CreateTextSearchConfiguration(node)
22069 }
22070}
22071impl From<CreateTextSearchDictionary> for Stmt {
22072 #[inline]
22073 fn from(node: CreateTextSearchDictionary) -> Stmt {
22074 Stmt::CreateTextSearchDictionary(node)
22075 }
22076}
22077impl From<CreateTextSearchParser> for Stmt {
22078 #[inline]
22079 fn from(node: CreateTextSearchParser) -> Stmt {
22080 Stmt::CreateTextSearchParser(node)
22081 }
22082}
22083impl From<CreateTextSearchTemplate> for Stmt {
22084 #[inline]
22085 fn from(node: CreateTextSearchTemplate) -> Stmt {
22086 Stmt::CreateTextSearchTemplate(node)
22087 }
22088}
22089impl From<CreateTransform> for Stmt {
22090 #[inline]
22091 fn from(node: CreateTransform) -> Stmt {
22092 Stmt::CreateTransform(node)
22093 }
22094}
22095impl From<CreateTrigger> for Stmt {
22096 #[inline]
22097 fn from(node: CreateTrigger) -> Stmt {
22098 Stmt::CreateTrigger(node)
22099 }
22100}
22101impl From<CreateType> for Stmt {
22102 #[inline]
22103 fn from(node: CreateType) -> Stmt {
22104 Stmt::CreateType(node)
22105 }
22106}
22107impl From<CreateUser> for Stmt {
22108 #[inline]
22109 fn from(node: CreateUser) -> Stmt {
22110 Stmt::CreateUser(node)
22111 }
22112}
22113impl From<CreateUserMapping> for Stmt {
22114 #[inline]
22115 fn from(node: CreateUserMapping) -> Stmt {
22116 Stmt::CreateUserMapping(node)
22117 }
22118}
22119impl From<CreateView> for Stmt {
22120 #[inline]
22121 fn from(node: CreateView) -> Stmt {
22122 Stmt::CreateView(node)
22123 }
22124}
22125impl From<Deallocate> for Stmt {
22126 #[inline]
22127 fn from(node: Deallocate) -> Stmt {
22128 Stmt::Deallocate(node)
22129 }
22130}
22131impl From<Declare> for Stmt {
22132 #[inline]
22133 fn from(node: Declare) -> Stmt {
22134 Stmt::Declare(node)
22135 }
22136}
22137impl From<Delete> for Stmt {
22138 #[inline]
22139 fn from(node: Delete) -> Stmt {
22140 Stmt::Delete(node)
22141 }
22142}
22143impl From<Discard> for Stmt {
22144 #[inline]
22145 fn from(node: Discard) -> Stmt {
22146 Stmt::Discard(node)
22147 }
22148}
22149impl From<Do> for Stmt {
22150 #[inline]
22151 fn from(node: Do) -> Stmt {
22152 Stmt::Do(node)
22153 }
22154}
22155impl From<DropAccessMethod> for Stmt {
22156 #[inline]
22157 fn from(node: DropAccessMethod) -> Stmt {
22158 Stmt::DropAccessMethod(node)
22159 }
22160}
22161impl From<DropAggregate> for Stmt {
22162 #[inline]
22163 fn from(node: DropAggregate) -> Stmt {
22164 Stmt::DropAggregate(node)
22165 }
22166}
22167impl From<DropCast> for Stmt {
22168 #[inline]
22169 fn from(node: DropCast) -> Stmt {
22170 Stmt::DropCast(node)
22171 }
22172}
22173impl From<DropCollation> for Stmt {
22174 #[inline]
22175 fn from(node: DropCollation) -> Stmt {
22176 Stmt::DropCollation(node)
22177 }
22178}
22179impl From<DropConversion> for Stmt {
22180 #[inline]
22181 fn from(node: DropConversion) -> Stmt {
22182 Stmt::DropConversion(node)
22183 }
22184}
22185impl From<DropDatabase> for Stmt {
22186 #[inline]
22187 fn from(node: DropDatabase) -> Stmt {
22188 Stmt::DropDatabase(node)
22189 }
22190}
22191impl From<DropDomain> for Stmt {
22192 #[inline]
22193 fn from(node: DropDomain) -> Stmt {
22194 Stmt::DropDomain(node)
22195 }
22196}
22197impl From<DropEventTrigger> for Stmt {
22198 #[inline]
22199 fn from(node: DropEventTrigger) -> Stmt {
22200 Stmt::DropEventTrigger(node)
22201 }
22202}
22203impl From<DropExtension> for Stmt {
22204 #[inline]
22205 fn from(node: DropExtension) -> Stmt {
22206 Stmt::DropExtension(node)
22207 }
22208}
22209impl From<DropForeignDataWrapper> for Stmt {
22210 #[inline]
22211 fn from(node: DropForeignDataWrapper) -> Stmt {
22212 Stmt::DropForeignDataWrapper(node)
22213 }
22214}
22215impl From<DropForeignTable> for Stmt {
22216 #[inline]
22217 fn from(node: DropForeignTable) -> Stmt {
22218 Stmt::DropForeignTable(node)
22219 }
22220}
22221impl From<DropFunction> for Stmt {
22222 #[inline]
22223 fn from(node: DropFunction) -> Stmt {
22224 Stmt::DropFunction(node)
22225 }
22226}
22227impl From<DropGroup> for Stmt {
22228 #[inline]
22229 fn from(node: DropGroup) -> Stmt {
22230 Stmt::DropGroup(node)
22231 }
22232}
22233impl From<DropIndex> for Stmt {
22234 #[inline]
22235 fn from(node: DropIndex) -> Stmt {
22236 Stmt::DropIndex(node)
22237 }
22238}
22239impl From<DropLanguage> for Stmt {
22240 #[inline]
22241 fn from(node: DropLanguage) -> Stmt {
22242 Stmt::DropLanguage(node)
22243 }
22244}
22245impl From<DropMaterializedView> for Stmt {
22246 #[inline]
22247 fn from(node: DropMaterializedView) -> Stmt {
22248 Stmt::DropMaterializedView(node)
22249 }
22250}
22251impl From<DropOperator> for Stmt {
22252 #[inline]
22253 fn from(node: DropOperator) -> Stmt {
22254 Stmt::DropOperator(node)
22255 }
22256}
22257impl From<DropOperatorClass> for Stmt {
22258 #[inline]
22259 fn from(node: DropOperatorClass) -> Stmt {
22260 Stmt::DropOperatorClass(node)
22261 }
22262}
22263impl From<DropOperatorFamily> for Stmt {
22264 #[inline]
22265 fn from(node: DropOperatorFamily) -> Stmt {
22266 Stmt::DropOperatorFamily(node)
22267 }
22268}
22269impl From<DropOwned> for Stmt {
22270 #[inline]
22271 fn from(node: DropOwned) -> Stmt {
22272 Stmt::DropOwned(node)
22273 }
22274}
22275impl From<DropPolicy> for Stmt {
22276 #[inline]
22277 fn from(node: DropPolicy) -> Stmt {
22278 Stmt::DropPolicy(node)
22279 }
22280}
22281impl From<DropProcedure> for Stmt {
22282 #[inline]
22283 fn from(node: DropProcedure) -> Stmt {
22284 Stmt::DropProcedure(node)
22285 }
22286}
22287impl From<DropPublication> for Stmt {
22288 #[inline]
22289 fn from(node: DropPublication) -> Stmt {
22290 Stmt::DropPublication(node)
22291 }
22292}
22293impl From<DropRole> for Stmt {
22294 #[inline]
22295 fn from(node: DropRole) -> Stmt {
22296 Stmt::DropRole(node)
22297 }
22298}
22299impl From<DropRoutine> for Stmt {
22300 #[inline]
22301 fn from(node: DropRoutine) -> Stmt {
22302 Stmt::DropRoutine(node)
22303 }
22304}
22305impl From<DropRule> for Stmt {
22306 #[inline]
22307 fn from(node: DropRule) -> Stmt {
22308 Stmt::DropRule(node)
22309 }
22310}
22311impl From<DropSchema> for Stmt {
22312 #[inline]
22313 fn from(node: DropSchema) -> Stmt {
22314 Stmt::DropSchema(node)
22315 }
22316}
22317impl From<DropSequence> for Stmt {
22318 #[inline]
22319 fn from(node: DropSequence) -> Stmt {
22320 Stmt::DropSequence(node)
22321 }
22322}
22323impl From<DropServer> for Stmt {
22324 #[inline]
22325 fn from(node: DropServer) -> Stmt {
22326 Stmt::DropServer(node)
22327 }
22328}
22329impl From<DropStatistics> for Stmt {
22330 #[inline]
22331 fn from(node: DropStatistics) -> Stmt {
22332 Stmt::DropStatistics(node)
22333 }
22334}
22335impl From<DropSubscription> for Stmt {
22336 #[inline]
22337 fn from(node: DropSubscription) -> Stmt {
22338 Stmt::DropSubscription(node)
22339 }
22340}
22341impl From<DropTable> for Stmt {
22342 #[inline]
22343 fn from(node: DropTable) -> Stmt {
22344 Stmt::DropTable(node)
22345 }
22346}
22347impl From<DropTablespace> for Stmt {
22348 #[inline]
22349 fn from(node: DropTablespace) -> Stmt {
22350 Stmt::DropTablespace(node)
22351 }
22352}
22353impl From<DropTextSearchConfig> for Stmt {
22354 #[inline]
22355 fn from(node: DropTextSearchConfig) -> Stmt {
22356 Stmt::DropTextSearchConfig(node)
22357 }
22358}
22359impl From<DropTextSearchDict> for Stmt {
22360 #[inline]
22361 fn from(node: DropTextSearchDict) -> Stmt {
22362 Stmt::DropTextSearchDict(node)
22363 }
22364}
22365impl From<DropTextSearchParser> for Stmt {
22366 #[inline]
22367 fn from(node: DropTextSearchParser) -> Stmt {
22368 Stmt::DropTextSearchParser(node)
22369 }
22370}
22371impl From<DropTextSearchTemplate> for Stmt {
22372 #[inline]
22373 fn from(node: DropTextSearchTemplate) -> Stmt {
22374 Stmt::DropTextSearchTemplate(node)
22375 }
22376}
22377impl From<DropTransform> for Stmt {
22378 #[inline]
22379 fn from(node: DropTransform) -> Stmt {
22380 Stmt::DropTransform(node)
22381 }
22382}
22383impl From<DropTrigger> for Stmt {
22384 #[inline]
22385 fn from(node: DropTrigger) -> Stmt {
22386 Stmt::DropTrigger(node)
22387 }
22388}
22389impl From<DropType> for Stmt {
22390 #[inline]
22391 fn from(node: DropType) -> Stmt {
22392 Stmt::DropType(node)
22393 }
22394}
22395impl From<DropUser> for Stmt {
22396 #[inline]
22397 fn from(node: DropUser) -> Stmt {
22398 Stmt::DropUser(node)
22399 }
22400}
22401impl From<DropUserMapping> for Stmt {
22402 #[inline]
22403 fn from(node: DropUserMapping) -> Stmt {
22404 Stmt::DropUserMapping(node)
22405 }
22406}
22407impl From<DropView> for Stmt {
22408 #[inline]
22409 fn from(node: DropView) -> Stmt {
22410 Stmt::DropView(node)
22411 }
22412}
22413impl From<Execute> for Stmt {
22414 #[inline]
22415 fn from(node: Execute) -> Stmt {
22416 Stmt::Execute(node)
22417 }
22418}
22419impl From<Explain> for Stmt {
22420 #[inline]
22421 fn from(node: Explain) -> Stmt {
22422 Stmt::Explain(node)
22423 }
22424}
22425impl From<Fetch> for Stmt {
22426 #[inline]
22427 fn from(node: Fetch) -> Stmt {
22428 Stmt::Fetch(node)
22429 }
22430}
22431impl From<Grant> for Stmt {
22432 #[inline]
22433 fn from(node: Grant) -> Stmt {
22434 Stmt::Grant(node)
22435 }
22436}
22437impl From<ImportForeignSchema> for Stmt {
22438 #[inline]
22439 fn from(node: ImportForeignSchema) -> Stmt {
22440 Stmt::ImportForeignSchema(node)
22441 }
22442}
22443impl From<Insert> for Stmt {
22444 #[inline]
22445 fn from(node: Insert) -> Stmt {
22446 Stmt::Insert(node)
22447 }
22448}
22449impl From<Listen> for Stmt {
22450 #[inline]
22451 fn from(node: Listen) -> Stmt {
22452 Stmt::Listen(node)
22453 }
22454}
22455impl From<Load> for Stmt {
22456 #[inline]
22457 fn from(node: Load) -> Stmt {
22458 Stmt::Load(node)
22459 }
22460}
22461impl From<Lock> for Stmt {
22462 #[inline]
22463 fn from(node: Lock) -> Stmt {
22464 Stmt::Lock(node)
22465 }
22466}
22467impl From<Merge> for Stmt {
22468 #[inline]
22469 fn from(node: Merge) -> Stmt {
22470 Stmt::Merge(node)
22471 }
22472}
22473impl From<Move> for Stmt {
22474 #[inline]
22475 fn from(node: Move) -> Stmt {
22476 Stmt::Move(node)
22477 }
22478}
22479impl From<Notify> for Stmt {
22480 #[inline]
22481 fn from(node: Notify) -> Stmt {
22482 Stmt::Notify(node)
22483 }
22484}
22485impl From<ParenSelect> for Stmt {
22486 #[inline]
22487 fn from(node: ParenSelect) -> Stmt {
22488 Stmt::ParenSelect(node)
22489 }
22490}
22491impl From<Prepare> for Stmt {
22492 #[inline]
22493 fn from(node: Prepare) -> Stmt {
22494 Stmt::Prepare(node)
22495 }
22496}
22497impl From<PrepareTransaction> for Stmt {
22498 #[inline]
22499 fn from(node: PrepareTransaction) -> Stmt {
22500 Stmt::PrepareTransaction(node)
22501 }
22502}
22503impl From<Reassign> for Stmt {
22504 #[inline]
22505 fn from(node: Reassign) -> Stmt {
22506 Stmt::Reassign(node)
22507 }
22508}
22509impl From<Refresh> for Stmt {
22510 #[inline]
22511 fn from(node: Refresh) -> Stmt {
22512 Stmt::Refresh(node)
22513 }
22514}
22515impl From<Reindex> for Stmt {
22516 #[inline]
22517 fn from(node: Reindex) -> Stmt {
22518 Stmt::Reindex(node)
22519 }
22520}
22521impl From<ReleaseSavepoint> for Stmt {
22522 #[inline]
22523 fn from(node: ReleaseSavepoint) -> Stmt {
22524 Stmt::ReleaseSavepoint(node)
22525 }
22526}
22527impl From<Reset> for Stmt {
22528 #[inline]
22529 fn from(node: Reset) -> Stmt {
22530 Stmt::Reset(node)
22531 }
22532}
22533impl From<Revoke> for Stmt {
22534 #[inline]
22535 fn from(node: Revoke) -> Stmt {
22536 Stmt::Revoke(node)
22537 }
22538}
22539impl From<Rollback> for Stmt {
22540 #[inline]
22541 fn from(node: Rollback) -> Stmt {
22542 Stmt::Rollback(node)
22543 }
22544}
22545impl From<Savepoint> for Stmt {
22546 #[inline]
22547 fn from(node: Savepoint) -> Stmt {
22548 Stmt::Savepoint(node)
22549 }
22550}
22551impl From<SecurityLabel> for Stmt {
22552 #[inline]
22553 fn from(node: SecurityLabel) -> Stmt {
22554 Stmt::SecurityLabel(node)
22555 }
22556}
22557impl From<Select> for Stmt {
22558 #[inline]
22559 fn from(node: Select) -> Stmt {
22560 Stmt::Select(node)
22561 }
22562}
22563impl From<SelectInto> for Stmt {
22564 #[inline]
22565 fn from(node: SelectInto) -> Stmt {
22566 Stmt::SelectInto(node)
22567 }
22568}
22569impl From<Set> for Stmt {
22570 #[inline]
22571 fn from(node: Set) -> Stmt {
22572 Stmt::Set(node)
22573 }
22574}
22575impl From<SetConstraints> for Stmt {
22576 #[inline]
22577 fn from(node: SetConstraints) -> Stmt {
22578 Stmt::SetConstraints(node)
22579 }
22580}
22581impl From<SetRole> for Stmt {
22582 #[inline]
22583 fn from(node: SetRole) -> Stmt {
22584 Stmt::SetRole(node)
22585 }
22586}
22587impl From<SetSessionAuth> for Stmt {
22588 #[inline]
22589 fn from(node: SetSessionAuth) -> Stmt {
22590 Stmt::SetSessionAuth(node)
22591 }
22592}
22593impl From<SetTransaction> for Stmt {
22594 #[inline]
22595 fn from(node: SetTransaction) -> Stmt {
22596 Stmt::SetTransaction(node)
22597 }
22598}
22599impl From<Show> for Stmt {
22600 #[inline]
22601 fn from(node: Show) -> Stmt {
22602 Stmt::Show(node)
22603 }
22604}
22605impl From<Truncate> for Stmt {
22606 #[inline]
22607 fn from(node: Truncate) -> Stmt {
22608 Stmt::Truncate(node)
22609 }
22610}
22611impl From<Unlisten> for Stmt {
22612 #[inline]
22613 fn from(node: Unlisten) -> Stmt {
22614 Stmt::Unlisten(node)
22615 }
22616}
22617impl From<Update> for Stmt {
22618 #[inline]
22619 fn from(node: Update) -> Stmt {
22620 Stmt::Update(node)
22621 }
22622}
22623impl From<Vacuum> for Stmt {
22624 #[inline]
22625 fn from(node: Vacuum) -> Stmt {
22626 Stmt::Vacuum(node)
22627 }
22628}
22629impl From<Values> for Stmt {
22630 #[inline]
22631 fn from(node: Values) -> Stmt {
22632 Stmt::Values(node)
22633 }
22634}
22635impl AstNode for TableArg {
22636 #[inline]
22637 fn can_cast(kind: SyntaxKind) -> bool {
22638 matches!(kind, SyntaxKind::COLUMN | SyntaxKind::LIKE_CLAUSE)
22639 }
22640 #[inline]
22641 fn cast(syntax: SyntaxNode) -> Option<Self> {
22642 let res = match syntax.kind() {
22643 SyntaxKind::COLUMN => TableArg::Column(Column { syntax }),
22644 SyntaxKind::LIKE_CLAUSE => TableArg::LikeClause(LikeClause { syntax }),
22645 _ => {
22646 if let Some(result) = TableConstraint::cast(syntax) {
22647 return Some(TableArg::TableConstraint(result));
22648 }
22649 return None;
22650 }
22651 };
22652 Some(res)
22653 }
22654 #[inline]
22655 fn syntax(&self) -> &SyntaxNode {
22656 match self {
22657 TableArg::Column(it) => &it.syntax,
22658 TableArg::LikeClause(it) => &it.syntax,
22659 TableArg::TableConstraint(it) => it.syntax(),
22660 }
22661 }
22662}
22663impl From<Column> for TableArg {
22664 #[inline]
22665 fn from(node: Column) -> TableArg {
22666 TableArg::Column(node)
22667 }
22668}
22669impl From<LikeClause> for TableArg {
22670 #[inline]
22671 fn from(node: LikeClause) -> TableArg {
22672 TableArg::LikeClause(node)
22673 }
22674}
22675impl AstNode for TableConstraint {
22676 #[inline]
22677 fn can_cast(kind: SyntaxKind) -> bool {
22678 matches!(
22679 kind,
22680 SyntaxKind::CHECK_CONSTRAINT
22681 | SyntaxKind::EXCLUDE_CONSTRAINT
22682 | SyntaxKind::FOREIGN_KEY_CONSTRAINT
22683 | SyntaxKind::PRIMARY_KEY_CONSTRAINT
22684 | SyntaxKind::UNIQUE_CONSTRAINT
22685 )
22686 }
22687 #[inline]
22688 fn cast(syntax: SyntaxNode) -> Option<Self> {
22689 let res = match syntax.kind() {
22690 SyntaxKind::CHECK_CONSTRAINT => {
22691 TableConstraint::CheckConstraint(CheckConstraint { syntax })
22692 }
22693 SyntaxKind::EXCLUDE_CONSTRAINT => {
22694 TableConstraint::ExcludeConstraint(ExcludeConstraint { syntax })
22695 }
22696 SyntaxKind::FOREIGN_KEY_CONSTRAINT => {
22697 TableConstraint::ForeignKeyConstraint(ForeignKeyConstraint { syntax })
22698 }
22699 SyntaxKind::PRIMARY_KEY_CONSTRAINT => {
22700 TableConstraint::PrimaryKeyConstraint(PrimaryKeyConstraint { syntax })
22701 }
22702 SyntaxKind::UNIQUE_CONSTRAINT => {
22703 TableConstraint::UniqueConstraint(UniqueConstraint { syntax })
22704 }
22705 _ => {
22706 return None;
22707 }
22708 };
22709 Some(res)
22710 }
22711 #[inline]
22712 fn syntax(&self) -> &SyntaxNode {
22713 match self {
22714 TableConstraint::CheckConstraint(it) => &it.syntax,
22715 TableConstraint::ExcludeConstraint(it) => &it.syntax,
22716 TableConstraint::ForeignKeyConstraint(it) => &it.syntax,
22717 TableConstraint::PrimaryKeyConstraint(it) => &it.syntax,
22718 TableConstraint::UniqueConstraint(it) => &it.syntax,
22719 }
22720 }
22721}
22722impl From<CheckConstraint> for TableConstraint {
22723 #[inline]
22724 fn from(node: CheckConstraint) -> TableConstraint {
22725 TableConstraint::CheckConstraint(node)
22726 }
22727}
22728impl From<ExcludeConstraint> for TableConstraint {
22729 #[inline]
22730 fn from(node: ExcludeConstraint) -> TableConstraint {
22731 TableConstraint::ExcludeConstraint(node)
22732 }
22733}
22734impl From<ForeignKeyConstraint> for TableConstraint {
22735 #[inline]
22736 fn from(node: ForeignKeyConstraint) -> TableConstraint {
22737 TableConstraint::ForeignKeyConstraint(node)
22738 }
22739}
22740impl From<PrimaryKeyConstraint> for TableConstraint {
22741 #[inline]
22742 fn from(node: PrimaryKeyConstraint) -> TableConstraint {
22743 TableConstraint::PrimaryKeyConstraint(node)
22744 }
22745}
22746impl From<UniqueConstraint> for TableConstraint {
22747 #[inline]
22748 fn from(node: UniqueConstraint) -> TableConstraint {
22749 TableConstraint::UniqueConstraint(node)
22750 }
22751}
22752impl AstNode for Timezone {
22753 #[inline]
22754 fn can_cast(kind: SyntaxKind) -> bool {
22755 matches!(
22756 kind,
22757 SyntaxKind::WITH_TIMEZONE | SyntaxKind::WITHOUT_TIMEZONE
22758 )
22759 }
22760 #[inline]
22761 fn cast(syntax: SyntaxNode) -> Option<Self> {
22762 let res = match syntax.kind() {
22763 SyntaxKind::WITH_TIMEZONE => Timezone::WithTimezone(WithTimezone { syntax }),
22764 SyntaxKind::WITHOUT_TIMEZONE => Timezone::WithoutTimezone(WithoutTimezone { syntax }),
22765 _ => {
22766 return None;
22767 }
22768 };
22769 Some(res)
22770 }
22771 #[inline]
22772 fn syntax(&self) -> &SyntaxNode {
22773 match self {
22774 Timezone::WithTimezone(it) => &it.syntax,
22775 Timezone::WithoutTimezone(it) => &it.syntax,
22776 }
22777 }
22778}
22779impl From<WithTimezone> for Timezone {
22780 #[inline]
22781 fn from(node: WithTimezone) -> Timezone {
22782 Timezone::WithTimezone(node)
22783 }
22784}
22785impl From<WithoutTimezone> for Timezone {
22786 #[inline]
22787 fn from(node: WithoutTimezone) -> Timezone {
22788 Timezone::WithoutTimezone(node)
22789 }
22790}
22791impl AstNode for TransactionMode {
22792 #[inline]
22793 fn can_cast(kind: SyntaxKind) -> bool {
22794 matches!(
22795 kind,
22796 SyntaxKind::DEFERRABLE
22797 | SyntaxKind::NOT_DEFERRABLE
22798 | SyntaxKind::READ_COMMITTED
22799 | SyntaxKind::READ_ONLY
22800 | SyntaxKind::READ_UNCOMMITTED
22801 | SyntaxKind::READ_WRITE
22802 | SyntaxKind::REPEATABLE_READ
22803 | SyntaxKind::SERIALIZABLE
22804 )
22805 }
22806 #[inline]
22807 fn cast(syntax: SyntaxNode) -> Option<Self> {
22808 let res = match syntax.kind() {
22809 SyntaxKind::DEFERRABLE => TransactionMode::Deferrable(Deferrable { syntax }),
22810 SyntaxKind::NOT_DEFERRABLE => TransactionMode::NotDeferrable(NotDeferrable { syntax }),
22811 SyntaxKind::READ_COMMITTED => TransactionMode::ReadCommitted(ReadCommitted { syntax }),
22812 SyntaxKind::READ_ONLY => TransactionMode::ReadOnly(ReadOnly { syntax }),
22813 SyntaxKind::READ_UNCOMMITTED => {
22814 TransactionMode::ReadUncommitted(ReadUncommitted { syntax })
22815 }
22816 SyntaxKind::READ_WRITE => TransactionMode::ReadWrite(ReadWrite { syntax }),
22817 SyntaxKind::REPEATABLE_READ => {
22818 TransactionMode::RepeatableRead(RepeatableRead { syntax })
22819 }
22820 SyntaxKind::SERIALIZABLE => TransactionMode::Serializable(Serializable { syntax }),
22821 _ => {
22822 return None;
22823 }
22824 };
22825 Some(res)
22826 }
22827 #[inline]
22828 fn syntax(&self) -> &SyntaxNode {
22829 match self {
22830 TransactionMode::Deferrable(it) => &it.syntax,
22831 TransactionMode::NotDeferrable(it) => &it.syntax,
22832 TransactionMode::ReadCommitted(it) => &it.syntax,
22833 TransactionMode::ReadOnly(it) => &it.syntax,
22834 TransactionMode::ReadUncommitted(it) => &it.syntax,
22835 TransactionMode::ReadWrite(it) => &it.syntax,
22836 TransactionMode::RepeatableRead(it) => &it.syntax,
22837 TransactionMode::Serializable(it) => &it.syntax,
22838 }
22839 }
22840}
22841impl From<Deferrable> for TransactionMode {
22842 #[inline]
22843 fn from(node: Deferrable) -> TransactionMode {
22844 TransactionMode::Deferrable(node)
22845 }
22846}
22847impl From<NotDeferrable> for TransactionMode {
22848 #[inline]
22849 fn from(node: NotDeferrable) -> TransactionMode {
22850 TransactionMode::NotDeferrable(node)
22851 }
22852}
22853impl From<ReadCommitted> for TransactionMode {
22854 #[inline]
22855 fn from(node: ReadCommitted) -> TransactionMode {
22856 TransactionMode::ReadCommitted(node)
22857 }
22858}
22859impl From<ReadOnly> for TransactionMode {
22860 #[inline]
22861 fn from(node: ReadOnly) -> TransactionMode {
22862 TransactionMode::ReadOnly(node)
22863 }
22864}
22865impl From<ReadUncommitted> for TransactionMode {
22866 #[inline]
22867 fn from(node: ReadUncommitted) -> TransactionMode {
22868 TransactionMode::ReadUncommitted(node)
22869 }
22870}
22871impl From<ReadWrite> for TransactionMode {
22872 #[inline]
22873 fn from(node: ReadWrite) -> TransactionMode {
22874 TransactionMode::ReadWrite(node)
22875 }
22876}
22877impl From<RepeatableRead> for TransactionMode {
22878 #[inline]
22879 fn from(node: RepeatableRead) -> TransactionMode {
22880 TransactionMode::RepeatableRead(node)
22881 }
22882}
22883impl From<Serializable> for TransactionMode {
22884 #[inline]
22885 fn from(node: Serializable) -> TransactionMode {
22886 TransactionMode::Serializable(node)
22887 }
22888}
22889impl AstNode for Type {
22890 #[inline]
22891 fn can_cast(kind: SyntaxKind) -> bool {
22892 matches!(
22893 kind,
22894 SyntaxKind::ARRAY_TYPE
22895 | SyntaxKind::BIT_TYPE
22896 | SyntaxKind::CHAR_TYPE
22897 | SyntaxKind::DOUBLE_TYPE
22898 | SyntaxKind::INTERVAL_TYPE
22899 | SyntaxKind::PATH_TYPE
22900 | SyntaxKind::PERCENT_TYPE
22901 | SyntaxKind::TIME_TYPE
22902 )
22903 }
22904 #[inline]
22905 fn cast(syntax: SyntaxNode) -> Option<Self> {
22906 let res = match syntax.kind() {
22907 SyntaxKind::ARRAY_TYPE => Type::ArrayType(ArrayType { syntax }),
22908 SyntaxKind::BIT_TYPE => Type::BitType(BitType { syntax }),
22909 SyntaxKind::CHAR_TYPE => Type::CharType(CharType { syntax }),
22910 SyntaxKind::DOUBLE_TYPE => Type::DoubleType(DoubleType { syntax }),
22911 SyntaxKind::INTERVAL_TYPE => Type::IntervalType(IntervalType { syntax }),
22912 SyntaxKind::PATH_TYPE => Type::PathType(PathType { syntax }),
22913 SyntaxKind::PERCENT_TYPE => Type::PercentType(PercentType { syntax }),
22914 SyntaxKind::TIME_TYPE => Type::TimeType(TimeType { syntax }),
22915 _ => {
22916 return None;
22917 }
22918 };
22919 Some(res)
22920 }
22921 #[inline]
22922 fn syntax(&self) -> &SyntaxNode {
22923 match self {
22924 Type::ArrayType(it) => &it.syntax,
22925 Type::BitType(it) => &it.syntax,
22926 Type::CharType(it) => &it.syntax,
22927 Type::DoubleType(it) => &it.syntax,
22928 Type::IntervalType(it) => &it.syntax,
22929 Type::PathType(it) => &it.syntax,
22930 Type::PercentType(it) => &it.syntax,
22931 Type::TimeType(it) => &it.syntax,
22932 }
22933 }
22934}
22935impl From<ArrayType> for Type {
22936 #[inline]
22937 fn from(node: ArrayType) -> Type {
22938 Type::ArrayType(node)
22939 }
22940}
22941impl From<BitType> for Type {
22942 #[inline]
22943 fn from(node: BitType) -> Type {
22944 Type::BitType(node)
22945 }
22946}
22947impl From<CharType> for Type {
22948 #[inline]
22949 fn from(node: CharType) -> Type {
22950 Type::CharType(node)
22951 }
22952}
22953impl From<DoubleType> for Type {
22954 #[inline]
22955 fn from(node: DoubleType) -> Type {
22956 Type::DoubleType(node)
22957 }
22958}
22959impl From<IntervalType> for Type {
22960 #[inline]
22961 fn from(node: IntervalType) -> Type {
22962 Type::IntervalType(node)
22963 }
22964}
22965impl From<PathType> for Type {
22966 #[inline]
22967 fn from(node: PathType) -> Type {
22968 Type::PathType(node)
22969 }
22970}
22971impl From<PercentType> for Type {
22972 #[inline]
22973 fn from(node: PercentType) -> Type {
22974 Type::PercentType(node)
22975 }
22976}
22977impl From<TimeType> for Type {
22978 #[inline]
22979 fn from(node: TimeType) -> Type {
22980 Type::TimeType(node)
22981 }
22982}
22983impl AstNode for WithQuery {
22984 #[inline]
22985 fn can_cast(kind: SyntaxKind) -> bool {
22986 matches!(
22987 kind,
22988 SyntaxKind::DELETE
22989 | SyntaxKind::INSERT
22990 | SyntaxKind::MERGE
22991 | SyntaxKind::SELECT
22992 | SyntaxKind::UPDATE
22993 | SyntaxKind::VALUES
22994 )
22995 }
22996 #[inline]
22997 fn cast(syntax: SyntaxNode) -> Option<Self> {
22998 let res = match syntax.kind() {
22999 SyntaxKind::DELETE => WithQuery::Delete(Delete { syntax }),
23000 SyntaxKind::INSERT => WithQuery::Insert(Insert { syntax }),
23001 SyntaxKind::MERGE => WithQuery::Merge(Merge { syntax }),
23002 SyntaxKind::SELECT => WithQuery::Select(Select { syntax }),
23003 SyntaxKind::UPDATE => WithQuery::Update(Update { syntax }),
23004 SyntaxKind::VALUES => WithQuery::Values(Values { syntax }),
23005 _ => {
23006 return None;
23007 }
23008 };
23009 Some(res)
23010 }
23011 #[inline]
23012 fn syntax(&self) -> &SyntaxNode {
23013 match self {
23014 WithQuery::Delete(it) => &it.syntax,
23015 WithQuery::Insert(it) => &it.syntax,
23016 WithQuery::Merge(it) => &it.syntax,
23017 WithQuery::Select(it) => &it.syntax,
23018 WithQuery::Update(it) => &it.syntax,
23019 WithQuery::Values(it) => &it.syntax,
23020 }
23021 }
23022}
23023impl From<Delete> for WithQuery {
23024 #[inline]
23025 fn from(node: Delete) -> WithQuery {
23026 WithQuery::Delete(node)
23027 }
23028}
23029impl From<Insert> for WithQuery {
23030 #[inline]
23031 fn from(node: Insert) -> WithQuery {
23032 WithQuery::Insert(node)
23033 }
23034}
23035impl From<Merge> for WithQuery {
23036 #[inline]
23037 fn from(node: Merge) -> WithQuery {
23038 WithQuery::Merge(node)
23039 }
23040}
23041impl From<Select> for WithQuery {
23042 #[inline]
23043 fn from(node: Select) -> WithQuery {
23044 WithQuery::Select(node)
23045 }
23046}
23047impl From<Update> for WithQuery {
23048 #[inline]
23049 fn from(node: Update) -> WithQuery {
23050 WithQuery::Update(node)
23051 }
23052}
23053impl From<Values> for WithQuery {
23054 #[inline]
23055 fn from(node: Values) -> WithQuery {
23056 WithQuery::Values(node)
23057 }
23058}