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(&self) -> Option<Name> {
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 AddOpClassOptions {
106 pub(crate) syntax: SyntaxNode,
107}
108impl AddOpClassOptions {
109 #[inline]
110 pub fn operator_class_option_list(&self) -> Option<OperatorClassOptionList> {
111 support::child(&self.syntax)
112 }
113 #[inline]
114 pub fn add_token(&self) -> Option<SyntaxToken> {
115 support::token(&self.syntax, SyntaxKind::ADD_KW)
116 }
117}
118
119#[derive(Debug, Clone, PartialEq, Eq, Hash)]
120pub struct Aggregate {
121 pub(crate) syntax: SyntaxNode,
122}
123impl Aggregate {
124 #[inline]
125 pub fn param_list(&self) -> Option<ParamList> {
126 support::child(&self.syntax)
127 }
128 #[inline]
129 pub fn path(&self) -> Option<Path> {
130 support::child(&self.syntax)
131 }
132}
133
134#[derive(Debug, Clone, PartialEq, Eq, Hash)]
135pub struct Alias {
136 pub(crate) syntax: SyntaxNode,
137}
138impl Alias {
139 #[inline]
140 pub fn column_list(&self) -> Option<ColumnList> {
141 support::child(&self.syntax)
142 }
143 #[inline]
144 pub fn name(&self) -> Option<Name> {
145 support::child(&self.syntax)
146 }
147 #[inline]
148 pub fn as_token(&self) -> Option<SyntaxToken> {
149 support::token(&self.syntax, SyntaxKind::AS_KW)
150 }
151}
152
153#[derive(Debug, Clone, PartialEq, Eq, Hash)]
154pub struct AllFn {
155 pub(crate) syntax: SyntaxNode,
156}
157impl AllFn {
158 #[inline]
159 pub fn expr(&self) -> Option<Expr> {
160 support::child(&self.syntax)
161 }
162 #[inline]
163 pub fn select_variant(&self) -> Option<SelectVariant> {
164 support::child(&self.syntax)
165 }
166 #[inline]
167 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
168 support::token(&self.syntax, SyntaxKind::L_PAREN)
169 }
170 #[inline]
171 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
172 support::token(&self.syntax, SyntaxKind::R_PAREN)
173 }
174 #[inline]
175 pub fn all_token(&self) -> Option<SyntaxToken> {
176 support::token(&self.syntax, SyntaxKind::ALL_KW)
177 }
178}
179
180#[derive(Debug, Clone, PartialEq, Eq, Hash)]
181pub struct AlterAggregate {
182 pub(crate) syntax: SyntaxNode,
183}
184impl AlterAggregate {
185 #[inline]
186 pub fn aggregate(&self) -> Option<Aggregate> {
187 support::child(&self.syntax)
188 }
189 #[inline]
190 pub fn aggregate_token(&self) -> Option<SyntaxToken> {
191 support::token(&self.syntax, SyntaxKind::AGGREGATE_KW)
192 }
193 #[inline]
194 pub fn alter_token(&self) -> Option<SyntaxToken> {
195 support::token(&self.syntax, SyntaxKind::ALTER_KW)
196 }
197}
198
199#[derive(Debug, Clone, PartialEq, Eq, Hash)]
200pub struct AlterCollation {
201 pub(crate) syntax: SyntaxNode,
202}
203impl AlterCollation {
204 #[inline]
205 pub fn owner_to(&self) -> Option<OwnerTo> {
206 support::child(&self.syntax)
207 }
208 #[inline]
209 pub fn path(&self) -> Option<Path> {
210 support::child(&self.syntax)
211 }
212 #[inline]
213 pub fn refresh_version(&self) -> Option<RefreshVersion> {
214 support::child(&self.syntax)
215 }
216 #[inline]
217 pub fn rename_to(&self) -> Option<RenameTo> {
218 support::child(&self.syntax)
219 }
220 #[inline]
221 pub fn set_schema(&self) -> Option<SetSchema> {
222 support::child(&self.syntax)
223 }
224 #[inline]
225 pub fn alter_token(&self) -> Option<SyntaxToken> {
226 support::token(&self.syntax, SyntaxKind::ALTER_KW)
227 }
228 #[inline]
229 pub fn collation_token(&self) -> Option<SyntaxToken> {
230 support::token(&self.syntax, SyntaxKind::COLLATION_KW)
231 }
232}
233
234#[derive(Debug, Clone, PartialEq, Eq, Hash)]
235pub struct AlterColumn {
236 pub(crate) syntax: SyntaxNode,
237}
238impl AlterColumn {
239 #[inline]
240 pub fn name_ref(&self) -> Option<NameRef> {
241 support::child(&self.syntax)
242 }
243 #[inline]
244 pub fn option(&self) -> Option<AlterColumnOption> {
245 support::child(&self.syntax)
246 }
247 #[inline]
248 pub fn alter_token(&self) -> Option<SyntaxToken> {
249 support::token(&self.syntax, SyntaxKind::ALTER_KW)
250 }
251 #[inline]
252 pub fn column_token(&self) -> Option<SyntaxToken> {
253 support::token(&self.syntax, SyntaxKind::COLUMN_KW)
254 }
255}
256
257#[derive(Debug, Clone, PartialEq, Eq, Hash)]
258pub struct AlterConstraint {
259 pub(crate) syntax: SyntaxNode,
260}
261impl AlterConstraint {
262 #[inline]
263 pub fn option(&self) -> Option<AlterColumnOption> {
264 support::child(&self.syntax)
265 }
266 #[inline]
267 pub fn alter_token(&self) -> Option<SyntaxToken> {
268 support::token(&self.syntax, SyntaxKind::ALTER_KW)
269 }
270 #[inline]
271 pub fn constraint_token(&self) -> Option<SyntaxToken> {
272 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
273 }
274}
275
276#[derive(Debug, Clone, PartialEq, Eq, Hash)]
277pub struct AlterConversion {
278 pub(crate) syntax: SyntaxNode,
279}
280impl AlterConversion {
281 #[inline]
282 pub fn owner_to(&self) -> Option<OwnerTo> {
283 support::child(&self.syntax)
284 }
285 #[inline]
286 pub fn path(&self) -> Option<Path> {
287 support::child(&self.syntax)
288 }
289 #[inline]
290 pub fn rename_to(&self) -> Option<RenameTo> {
291 support::child(&self.syntax)
292 }
293 #[inline]
294 pub fn set_schema(&self) -> Option<SetSchema> {
295 support::child(&self.syntax)
296 }
297 #[inline]
298 pub fn alter_token(&self) -> Option<SyntaxToken> {
299 support::token(&self.syntax, SyntaxKind::ALTER_KW)
300 }
301 #[inline]
302 pub fn conversion_token(&self) -> Option<SyntaxToken> {
303 support::token(&self.syntax, SyntaxKind::CONVERSION_KW)
304 }
305}
306
307#[derive(Debug, Clone, PartialEq, Eq, Hash)]
308pub struct AlterDatabase {
309 pub(crate) syntax: SyntaxNode,
310}
311impl AlterDatabase {
312 #[inline]
313 pub fn create_database_option_list(&self) -> Option<CreateDatabaseOptionList> {
314 support::child(&self.syntax)
315 }
316 #[inline]
317 pub fn name_ref(&self) -> Option<NameRef> {
318 support::child(&self.syntax)
319 }
320 #[inline]
321 pub fn owner_to(&self) -> Option<OwnerTo> {
322 support::child(&self.syntax)
323 }
324 #[inline]
325 pub fn refresh_collation_version(&self) -> Option<RefreshCollationVersion> {
326 support::child(&self.syntax)
327 }
328 #[inline]
329 pub fn rename_to(&self) -> Option<RenameTo> {
330 support::child(&self.syntax)
331 }
332 #[inline]
333 pub fn reset_config_param(&self) -> Option<ResetConfigParam> {
334 support::child(&self.syntax)
335 }
336 #[inline]
337 pub fn set_config_param(&self) -> Option<SetConfigParam> {
338 support::child(&self.syntax)
339 }
340 #[inline]
341 pub fn set_tablespace(&self) -> Option<SetTablespace> {
342 support::child(&self.syntax)
343 }
344 #[inline]
345 pub fn alter_token(&self) -> Option<SyntaxToken> {
346 support::token(&self.syntax, SyntaxKind::ALTER_KW)
347 }
348 #[inline]
349 pub fn database_token(&self) -> Option<SyntaxToken> {
350 support::token(&self.syntax, SyntaxKind::DATABASE_KW)
351 }
352}
353
354#[derive(Debug, Clone, PartialEq, Eq, Hash)]
355pub struct AlterDefaultPrivileges {
356 pub(crate) syntax: SyntaxNode,
357}
358impl AlterDefaultPrivileges {
359 #[inline]
360 pub fn grant_default_privileges(&self) -> Option<GrantDefaultPrivileges> {
361 support::child(&self.syntax)
362 }
363 #[inline]
364 pub fn name_refs(&self) -> AstChildren<NameRef> {
365 support::children(&self.syntax)
366 }
367 #[inline]
368 pub fn revoke_default_privileges(&self) -> Option<RevokeDefaultPrivileges> {
369 support::child(&self.syntax)
370 }
371 #[inline]
372 pub fn role_list(&self) -> Option<RoleList> {
373 support::child(&self.syntax)
374 }
375 #[inline]
376 pub fn alter_token(&self) -> Option<SyntaxToken> {
377 support::token(&self.syntax, SyntaxKind::ALTER_KW)
378 }
379 #[inline]
380 pub fn default_token(&self) -> Option<SyntaxToken> {
381 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
382 }
383 #[inline]
384 pub fn for_token(&self) -> Option<SyntaxToken> {
385 support::token(&self.syntax, SyntaxKind::FOR_KW)
386 }
387 #[inline]
388 pub fn in_token(&self) -> Option<SyntaxToken> {
389 support::token(&self.syntax, SyntaxKind::IN_KW)
390 }
391 #[inline]
392 pub fn privileges_token(&self) -> Option<SyntaxToken> {
393 support::token(&self.syntax, SyntaxKind::PRIVILEGES_KW)
394 }
395 #[inline]
396 pub fn role_token(&self) -> Option<SyntaxToken> {
397 support::token(&self.syntax, SyntaxKind::ROLE_KW)
398 }
399 #[inline]
400 pub fn schema_token(&self) -> Option<SyntaxToken> {
401 support::token(&self.syntax, SyntaxKind::SCHEMA_KW)
402 }
403 #[inline]
404 pub fn user_token(&self) -> Option<SyntaxToken> {
405 support::token(&self.syntax, SyntaxKind::USER_KW)
406 }
407}
408
409#[derive(Debug, Clone, PartialEq, Eq, Hash)]
410pub struct AlterDomain {
411 pub(crate) syntax: SyntaxNode,
412}
413impl AlterDomain {
414 #[inline]
415 pub fn action(&self) -> Option<AlterDomainAction> {
416 support::child(&self.syntax)
417 }
418 #[inline]
419 pub fn path(&self) -> Option<Path> {
420 support::child(&self.syntax)
421 }
422 #[inline]
423 pub fn alter_token(&self) -> Option<SyntaxToken> {
424 support::token(&self.syntax, SyntaxKind::ALTER_KW)
425 }
426 #[inline]
427 pub fn domain_token(&self) -> Option<SyntaxToken> {
428 support::token(&self.syntax, SyntaxKind::DOMAIN_KW)
429 }
430}
431
432#[derive(Debug, Clone, PartialEq, Eq, Hash)]
433pub struct AlterEventTrigger {
434 pub(crate) syntax: SyntaxNode,
435}
436impl AlterEventTrigger {
437 #[inline]
438 pub fn name_ref(&self) -> Option<NameRef> {
439 support::child(&self.syntax)
440 }
441 #[inline]
442 pub fn owner_to(&self) -> Option<OwnerTo> {
443 support::child(&self.syntax)
444 }
445 #[inline]
446 pub fn rename_to(&self) -> Option<RenameTo> {
447 support::child(&self.syntax)
448 }
449 #[inline]
450 pub fn alter_token(&self) -> Option<SyntaxToken> {
451 support::token(&self.syntax, SyntaxKind::ALTER_KW)
452 }
453 #[inline]
454 pub fn always_token(&self) -> Option<SyntaxToken> {
455 support::token(&self.syntax, SyntaxKind::ALWAYS_KW)
456 }
457 #[inline]
458 pub fn disable_token(&self) -> Option<SyntaxToken> {
459 support::token(&self.syntax, SyntaxKind::DISABLE_KW)
460 }
461 #[inline]
462 pub fn enable_token(&self) -> Option<SyntaxToken> {
463 support::token(&self.syntax, SyntaxKind::ENABLE_KW)
464 }
465 #[inline]
466 pub fn event_token(&self) -> Option<SyntaxToken> {
467 support::token(&self.syntax, SyntaxKind::EVENT_KW)
468 }
469 #[inline]
470 pub fn replica_token(&self) -> Option<SyntaxToken> {
471 support::token(&self.syntax, SyntaxKind::REPLICA_KW)
472 }
473 #[inline]
474 pub fn trigger_token(&self) -> Option<SyntaxToken> {
475 support::token(&self.syntax, SyntaxKind::TRIGGER_KW)
476 }
477}
478
479#[derive(Debug, Clone, PartialEq, Eq, Hash)]
480pub struct AlterExtension {
481 pub(crate) syntax: SyntaxNode,
482}
483impl AlterExtension {
484 #[inline]
485 pub fn name_ref(&self) -> Option<NameRef> {
486 support::child(&self.syntax)
487 }
488 #[inline]
489 pub fn alter_token(&self) -> Option<SyntaxToken> {
490 support::token(&self.syntax, SyntaxKind::ALTER_KW)
491 }
492 #[inline]
493 pub fn extension_token(&self) -> Option<SyntaxToken> {
494 support::token(&self.syntax, SyntaxKind::EXTENSION_KW)
495 }
496}
497
498#[derive(Debug, Clone, PartialEq, Eq, Hash)]
499pub struct AlterForeignDataWrapper {
500 pub(crate) syntax: SyntaxNode,
501}
502impl AlterForeignDataWrapper {
503 #[inline]
504 pub fn fdw_option_list(&self) -> Option<FdwOptionList> {
505 support::child(&self.syntax)
506 }
507 #[inline]
508 pub fn name_ref(&self) -> Option<NameRef> {
509 support::child(&self.syntax)
510 }
511 #[inline]
512 pub fn owner_to(&self) -> Option<OwnerTo> {
513 support::child(&self.syntax)
514 }
515 #[inline]
516 pub fn rename_to(&self) -> Option<RenameTo> {
517 support::child(&self.syntax)
518 }
519 #[inline]
520 pub fn alter_token(&self) -> Option<SyntaxToken> {
521 support::token(&self.syntax, SyntaxKind::ALTER_KW)
522 }
523 #[inline]
524 pub fn data_token(&self) -> Option<SyntaxToken> {
525 support::token(&self.syntax, SyntaxKind::DATA_KW)
526 }
527 #[inline]
528 pub fn foreign_token(&self) -> Option<SyntaxToken> {
529 support::token(&self.syntax, SyntaxKind::FOREIGN_KW)
530 }
531 #[inline]
532 pub fn wrapper_token(&self) -> Option<SyntaxToken> {
533 support::token(&self.syntax, SyntaxKind::WRAPPER_KW)
534 }
535}
536
537#[derive(Debug, Clone, PartialEq, Eq, Hash)]
538pub struct AlterForeignTable {
539 pub(crate) syntax: SyntaxNode,
540}
541impl AlterForeignTable {
542 #[inline]
543 pub fn alter_table_actions(&self) -> AstChildren<AlterTableAction> {
544 support::children(&self.syntax)
545 }
546 #[inline]
547 pub fn if_exists(&self) -> Option<IfExists> {
548 support::child(&self.syntax)
549 }
550 #[inline]
551 pub fn relation_name(&self) -> Option<RelationName> {
552 support::child(&self.syntax)
553 }
554 #[inline]
555 pub fn rename_column(&self) -> Option<RenameColumn> {
556 support::child(&self.syntax)
557 }
558 #[inline]
559 pub fn rename_to(&self) -> Option<RenameTo> {
560 support::child(&self.syntax)
561 }
562 #[inline]
563 pub fn set_schema(&self) -> Option<SetSchema> {
564 support::child(&self.syntax)
565 }
566 #[inline]
567 pub fn alter_token(&self) -> Option<SyntaxToken> {
568 support::token(&self.syntax, SyntaxKind::ALTER_KW)
569 }
570 #[inline]
571 pub fn foreign_token(&self) -> Option<SyntaxToken> {
572 support::token(&self.syntax, SyntaxKind::FOREIGN_KW)
573 }
574 #[inline]
575 pub fn table_token(&self) -> Option<SyntaxToken> {
576 support::token(&self.syntax, SyntaxKind::TABLE_KW)
577 }
578}
579
580#[derive(Debug, Clone, PartialEq, Eq, Hash)]
581pub struct AlterFunction {
582 pub(crate) syntax: SyntaxNode,
583}
584impl AlterFunction {
585 #[inline]
586 pub fn depends_on_extension(&self) -> Option<DependsOnExtension> {
587 support::child(&self.syntax)
588 }
589 #[inline]
590 pub fn func_option_list(&self) -> Option<FuncOptionList> {
591 support::child(&self.syntax)
592 }
593 #[inline]
594 pub fn function_sig(&self) -> Option<FunctionSig> {
595 support::child(&self.syntax)
596 }
597 #[inline]
598 pub fn no_depends_on_extension(&self) -> Option<NoDependsOnExtension> {
599 support::child(&self.syntax)
600 }
601 #[inline]
602 pub fn owner_to(&self) -> Option<OwnerTo> {
603 support::child(&self.syntax)
604 }
605 #[inline]
606 pub fn rename_to(&self) -> Option<RenameTo> {
607 support::child(&self.syntax)
608 }
609 #[inline]
610 pub fn set_schema(&self) -> Option<SetSchema> {
611 support::child(&self.syntax)
612 }
613 #[inline]
614 pub fn alter_token(&self) -> Option<SyntaxToken> {
615 support::token(&self.syntax, SyntaxKind::ALTER_KW)
616 }
617 #[inline]
618 pub fn function_token(&self) -> Option<SyntaxToken> {
619 support::token(&self.syntax, SyntaxKind::FUNCTION_KW)
620 }
621 #[inline]
622 pub fn restrict_token(&self) -> Option<SyntaxToken> {
623 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
624 }
625}
626
627#[derive(Debug, Clone, PartialEq, Eq, Hash)]
628pub struct AlterGroup {
629 pub(crate) syntax: SyntaxNode,
630}
631impl AlterGroup {
632 #[inline]
633 pub fn name_refs(&self) -> AstChildren<NameRef> {
634 support::children(&self.syntax)
635 }
636 #[inline]
637 pub fn rename_to(&self) -> Option<RenameTo> {
638 support::child(&self.syntax)
639 }
640 #[inline]
641 pub fn role(&self) -> Option<Role> {
642 support::child(&self.syntax)
643 }
644 #[inline]
645 pub fn add_token(&self) -> Option<SyntaxToken> {
646 support::token(&self.syntax, SyntaxKind::ADD_KW)
647 }
648 #[inline]
649 pub fn alter_token(&self) -> Option<SyntaxToken> {
650 support::token(&self.syntax, SyntaxKind::ALTER_KW)
651 }
652 #[inline]
653 pub fn drop_token(&self) -> Option<SyntaxToken> {
654 support::token(&self.syntax, SyntaxKind::DROP_KW)
655 }
656 #[inline]
657 pub fn group_token(&self) -> Option<SyntaxToken> {
658 support::token(&self.syntax, SyntaxKind::GROUP_KW)
659 }
660 #[inline]
661 pub fn user_token(&self) -> Option<SyntaxToken> {
662 support::token(&self.syntax, SyntaxKind::USER_KW)
663 }
664}
665
666#[derive(Debug, Clone, PartialEq, Eq, Hash)]
667pub struct AlterIndex {
668 pub(crate) syntax: SyntaxNode,
669}
670impl AlterIndex {
671 #[inline]
672 pub fn if_exists(&self) -> Option<IfExists> {
673 support::child(&self.syntax)
674 }
675 #[inline]
676 pub fn path(&self) -> Option<Path> {
677 support::child(&self.syntax)
678 }
679 #[inline]
680 pub fn alter_token(&self) -> Option<SyntaxToken> {
681 support::token(&self.syntax, SyntaxKind::ALTER_KW)
682 }
683 #[inline]
684 pub fn index_token(&self) -> Option<SyntaxToken> {
685 support::token(&self.syntax, SyntaxKind::INDEX_KW)
686 }
687}
688
689#[derive(Debug, Clone, PartialEq, Eq, Hash)]
690pub struct AlterLanguage {
691 pub(crate) syntax: SyntaxNode,
692}
693impl AlterLanguage {
694 #[inline]
695 pub fn name_ref(&self) -> Option<NameRef> {
696 support::child(&self.syntax)
697 }
698 #[inline]
699 pub fn owner_to(&self) -> Option<OwnerTo> {
700 support::child(&self.syntax)
701 }
702 #[inline]
703 pub fn rename_to(&self) -> Option<RenameTo> {
704 support::child(&self.syntax)
705 }
706 #[inline]
707 pub fn alter_token(&self) -> Option<SyntaxToken> {
708 support::token(&self.syntax, SyntaxKind::ALTER_KW)
709 }
710 #[inline]
711 pub fn language_token(&self) -> Option<SyntaxToken> {
712 support::token(&self.syntax, SyntaxKind::LANGUAGE_KW)
713 }
714}
715
716#[derive(Debug, Clone, PartialEq, Eq, Hash)]
717pub struct AlterLargeObject {
718 pub(crate) syntax: SyntaxNode,
719}
720impl AlterLargeObject {
721 #[inline]
722 pub fn alter_token(&self) -> Option<SyntaxToken> {
723 support::token(&self.syntax, SyntaxKind::ALTER_KW)
724 }
725 #[inline]
726 pub fn large_token(&self) -> Option<SyntaxToken> {
727 support::token(&self.syntax, SyntaxKind::LARGE_KW)
728 }
729 #[inline]
730 pub fn object_token(&self) -> Option<SyntaxToken> {
731 support::token(&self.syntax, SyntaxKind::OBJECT_KW)
732 }
733}
734
735#[derive(Debug, Clone, PartialEq, Eq, Hash)]
736pub struct AlterMaterializedView {
737 pub(crate) syntax: SyntaxNode,
738}
739impl AlterMaterializedView {
740 #[inline]
741 pub fn action(&self) -> AstChildren<AlterMaterializedViewAction> {
742 support::children(&self.syntax)
743 }
744 #[inline]
745 pub fn if_exists(&self) -> Option<IfExists> {
746 support::child(&self.syntax)
747 }
748 #[inline]
749 pub fn name(&self) -> Option<Name> {
750 support::child(&self.syntax)
751 }
752 #[inline]
753 pub fn name_ref(&self) -> Option<NameRef> {
754 support::child(&self.syntax)
755 }
756 #[inline]
757 pub fn path(&self) -> Option<Path> {
758 support::child(&self.syntax)
759 }
760 #[inline]
761 pub fn role_list(&self) -> Option<RoleList> {
762 support::child(&self.syntax)
763 }
764 #[inline]
765 pub fn all_token(&self) -> Option<SyntaxToken> {
766 support::token(&self.syntax, SyntaxKind::ALL_KW)
767 }
768 #[inline]
769 pub fn alter_token(&self) -> Option<SyntaxToken> {
770 support::token(&self.syntax, SyntaxKind::ALTER_KW)
771 }
772 #[inline]
773 pub fn by_token(&self) -> Option<SyntaxToken> {
774 support::token(&self.syntax, SyntaxKind::BY_KW)
775 }
776 #[inline]
777 pub fn in_token(&self) -> Option<SyntaxToken> {
778 support::token(&self.syntax, SyntaxKind::IN_KW)
779 }
780 #[inline]
781 pub fn materialized_token(&self) -> Option<SyntaxToken> {
782 support::token(&self.syntax, SyntaxKind::MATERIALIZED_KW)
783 }
784 #[inline]
785 pub fn nowait_token(&self) -> Option<SyntaxToken> {
786 support::token(&self.syntax, SyntaxKind::NOWAIT_KW)
787 }
788 #[inline]
789 pub fn owned_token(&self) -> Option<SyntaxToken> {
790 support::token(&self.syntax, SyntaxKind::OWNED_KW)
791 }
792 #[inline]
793 pub fn set_token(&self) -> Option<SyntaxToken> {
794 support::token(&self.syntax, SyntaxKind::SET_KW)
795 }
796 #[inline]
797 pub fn tablespace_token(&self) -> Option<SyntaxToken> {
798 support::token(&self.syntax, SyntaxKind::TABLESPACE_KW)
799 }
800 #[inline]
801 pub fn view_token(&self) -> Option<SyntaxToken> {
802 support::token(&self.syntax, SyntaxKind::VIEW_KW)
803 }
804}
805
806#[derive(Debug, Clone, PartialEq, Eq, Hash)]
807pub struct AlterOperator {
808 pub(crate) syntax: SyntaxNode,
809}
810impl AlterOperator {
811 #[inline]
812 pub fn op_sig(&self) -> Option<OpSig> {
813 support::child(&self.syntax)
814 }
815 #[inline]
816 pub fn owner_to(&self) -> Option<OwnerTo> {
817 support::child(&self.syntax)
818 }
819 #[inline]
820 pub fn set_options(&self) -> Option<SetOptions> {
821 support::child(&self.syntax)
822 }
823 #[inline]
824 pub fn set_schema(&self) -> Option<SetSchema> {
825 support::child(&self.syntax)
826 }
827 #[inline]
828 pub fn alter_token(&self) -> Option<SyntaxToken> {
829 support::token(&self.syntax, SyntaxKind::ALTER_KW)
830 }
831 #[inline]
832 pub fn operator_token(&self) -> Option<SyntaxToken> {
833 support::token(&self.syntax, SyntaxKind::OPERATOR_KW)
834 }
835}
836
837#[derive(Debug, Clone, PartialEq, Eq, Hash)]
838pub struct AlterOperatorClass {
839 pub(crate) syntax: SyntaxNode,
840}
841impl AlterOperatorClass {
842 #[inline]
843 pub fn name_ref(&self) -> Option<NameRef> {
844 support::child(&self.syntax)
845 }
846 #[inline]
847 pub fn owner_to(&self) -> Option<OwnerTo> {
848 support::child(&self.syntax)
849 }
850 #[inline]
851 pub fn path(&self) -> Option<Path> {
852 support::child(&self.syntax)
853 }
854 #[inline]
855 pub fn rename_to(&self) -> Option<RenameTo> {
856 support::child(&self.syntax)
857 }
858 #[inline]
859 pub fn set_schema(&self) -> Option<SetSchema> {
860 support::child(&self.syntax)
861 }
862 #[inline]
863 pub fn alter_token(&self) -> Option<SyntaxToken> {
864 support::token(&self.syntax, SyntaxKind::ALTER_KW)
865 }
866 #[inline]
867 pub fn class_token(&self) -> Option<SyntaxToken> {
868 support::token(&self.syntax, SyntaxKind::CLASS_KW)
869 }
870 #[inline]
871 pub fn operator_token(&self) -> Option<SyntaxToken> {
872 support::token(&self.syntax, SyntaxKind::OPERATOR_KW)
873 }
874 #[inline]
875 pub fn using_token(&self) -> Option<SyntaxToken> {
876 support::token(&self.syntax, SyntaxKind::USING_KW)
877 }
878}
879
880#[derive(Debug, Clone, PartialEq, Eq, Hash)]
881pub struct AlterOperatorFamily {
882 pub(crate) syntax: SyntaxNode,
883}
884impl AlterOperatorFamily {
885 #[inline]
886 pub fn add_op_class_options(&self) -> Option<AddOpClassOptions> {
887 support::child(&self.syntax)
888 }
889 #[inline]
890 pub fn drop_op_class_options(&self) -> Option<DropOpClassOptions> {
891 support::child(&self.syntax)
892 }
893 #[inline]
894 pub fn name_ref(&self) -> Option<NameRef> {
895 support::child(&self.syntax)
896 }
897 #[inline]
898 pub fn owner_to(&self) -> Option<OwnerTo> {
899 support::child(&self.syntax)
900 }
901 #[inline]
902 pub fn path(&self) -> Option<Path> {
903 support::child(&self.syntax)
904 }
905 #[inline]
906 pub fn rename_to(&self) -> Option<RenameTo> {
907 support::child(&self.syntax)
908 }
909 #[inline]
910 pub fn set_schema(&self) -> Option<SetSchema> {
911 support::child(&self.syntax)
912 }
913 #[inline]
914 pub fn alter_token(&self) -> Option<SyntaxToken> {
915 support::token(&self.syntax, SyntaxKind::ALTER_KW)
916 }
917 #[inline]
918 pub fn family_token(&self) -> Option<SyntaxToken> {
919 support::token(&self.syntax, SyntaxKind::FAMILY_KW)
920 }
921 #[inline]
922 pub fn operator_token(&self) -> Option<SyntaxToken> {
923 support::token(&self.syntax, SyntaxKind::OPERATOR_KW)
924 }
925 #[inline]
926 pub fn using_token(&self) -> Option<SyntaxToken> {
927 support::token(&self.syntax, SyntaxKind::USING_KW)
928 }
929}
930
931#[derive(Debug, Clone, PartialEq, Eq, Hash)]
932pub struct AlterOption {
933 pub(crate) syntax: SyntaxNode,
934}
935impl AlterOption {
936 #[inline]
937 pub fn literal(&self) -> Option<Literal> {
938 support::child(&self.syntax)
939 }
940 #[inline]
941 pub fn name_ref(&self) -> Option<NameRef> {
942 support::child(&self.syntax)
943 }
944 #[inline]
945 pub fn add_token(&self) -> Option<SyntaxToken> {
946 support::token(&self.syntax, SyntaxKind::ADD_KW)
947 }
948 #[inline]
949 pub fn drop_token(&self) -> Option<SyntaxToken> {
950 support::token(&self.syntax, SyntaxKind::DROP_KW)
951 }
952 #[inline]
953 pub fn set_token(&self) -> Option<SyntaxToken> {
954 support::token(&self.syntax, SyntaxKind::SET_KW)
955 }
956}
957
958#[derive(Debug, Clone, PartialEq, Eq, Hash)]
959pub struct AlterOptionList {
960 pub(crate) syntax: SyntaxNode,
961}
962impl AlterOptionList {
963 #[inline]
964 pub fn alter_options(&self) -> AstChildren<AlterOption> {
965 support::children(&self.syntax)
966 }
967}
968
969#[derive(Debug, Clone, PartialEq, Eq, Hash)]
970pub struct AlterPolicy {
971 pub(crate) syntax: SyntaxNode,
972}
973impl AlterPolicy {
974 #[inline]
975 pub fn expr(&self) -> Option<Expr> {
976 support::child(&self.syntax)
977 }
978 #[inline]
979 pub fn name_ref(&self) -> Option<NameRef> {
980 support::child(&self.syntax)
981 }
982 #[inline]
983 pub fn on_table(&self) -> Option<OnTable> {
984 support::child(&self.syntax)
985 }
986 #[inline]
987 pub fn rename_to(&self) -> Option<RenameTo> {
988 support::child(&self.syntax)
989 }
990 #[inline]
991 pub fn role_list(&self) -> Option<RoleList> {
992 support::child(&self.syntax)
993 }
994 #[inline]
995 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
996 support::token(&self.syntax, SyntaxKind::L_PAREN)
997 }
998 #[inline]
999 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
1000 support::token(&self.syntax, SyntaxKind::R_PAREN)
1001 }
1002 #[inline]
1003 pub fn alter_token(&self) -> Option<SyntaxToken> {
1004 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1005 }
1006 #[inline]
1007 pub fn check_token(&self) -> Option<SyntaxToken> {
1008 support::token(&self.syntax, SyntaxKind::CHECK_KW)
1009 }
1010 #[inline]
1011 pub fn policy_token(&self) -> Option<SyntaxToken> {
1012 support::token(&self.syntax, SyntaxKind::POLICY_KW)
1013 }
1014 #[inline]
1015 pub fn to_token(&self) -> Option<SyntaxToken> {
1016 support::token(&self.syntax, SyntaxKind::TO_KW)
1017 }
1018 #[inline]
1019 pub fn using_token(&self) -> Option<SyntaxToken> {
1020 support::token(&self.syntax, SyntaxKind::USING_KW)
1021 }
1022 #[inline]
1023 pub fn with_token(&self) -> Option<SyntaxToken> {
1024 support::token(&self.syntax, SyntaxKind::WITH_KW)
1025 }
1026}
1027
1028#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1029pub struct AlterProcedure {
1030 pub(crate) syntax: SyntaxNode,
1031}
1032impl AlterProcedure {
1033 #[inline]
1034 pub fn depends_on_extension(&self) -> Option<DependsOnExtension> {
1035 support::child(&self.syntax)
1036 }
1037 #[inline]
1038 pub fn func_option_list(&self) -> Option<FuncOptionList> {
1039 support::child(&self.syntax)
1040 }
1041 #[inline]
1042 pub fn function_sig(&self) -> Option<FunctionSig> {
1043 support::child(&self.syntax)
1044 }
1045 #[inline]
1046 pub fn no_depends_on_extension(&self) -> Option<NoDependsOnExtension> {
1047 support::child(&self.syntax)
1048 }
1049 #[inline]
1050 pub fn owner_to(&self) -> Option<OwnerTo> {
1051 support::child(&self.syntax)
1052 }
1053 #[inline]
1054 pub fn rename_to(&self) -> Option<RenameTo> {
1055 support::child(&self.syntax)
1056 }
1057 #[inline]
1058 pub fn set_schema(&self) -> Option<SetSchema> {
1059 support::child(&self.syntax)
1060 }
1061 #[inline]
1062 pub fn alter_token(&self) -> Option<SyntaxToken> {
1063 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1064 }
1065 #[inline]
1066 pub fn procedure_token(&self) -> Option<SyntaxToken> {
1067 support::token(&self.syntax, SyntaxKind::PROCEDURE_KW)
1068 }
1069 #[inline]
1070 pub fn restrict_token(&self) -> Option<SyntaxToken> {
1071 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
1072 }
1073}
1074
1075#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1076pub struct AlterPublication {
1077 pub(crate) syntax: SyntaxNode,
1078}
1079impl AlterPublication {
1080 #[inline]
1081 pub fn name_ref(&self) -> Option<NameRef> {
1082 support::child(&self.syntax)
1083 }
1084 #[inline]
1085 pub fn alter_token(&self) -> Option<SyntaxToken> {
1086 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1087 }
1088 #[inline]
1089 pub fn publication_token(&self) -> Option<SyntaxToken> {
1090 support::token(&self.syntax, SyntaxKind::PUBLICATION_KW)
1091 }
1092}
1093
1094#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1095pub struct AlterRole {
1096 pub(crate) syntax: SyntaxNode,
1097}
1098impl AlterRole {
1099 #[inline]
1100 pub fn role(&self) -> Option<Role> {
1101 support::child(&self.syntax)
1102 }
1103 #[inline]
1104 pub fn alter_token(&self) -> Option<SyntaxToken> {
1105 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1106 }
1107 #[inline]
1108 pub fn role_token(&self) -> Option<SyntaxToken> {
1109 support::token(&self.syntax, SyntaxKind::ROLE_KW)
1110 }
1111}
1112
1113#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1114pub struct AlterRoutine {
1115 pub(crate) syntax: SyntaxNode,
1116}
1117impl AlterRoutine {
1118 #[inline]
1119 pub fn depends_on_extension(&self) -> Option<DependsOnExtension> {
1120 support::child(&self.syntax)
1121 }
1122 #[inline]
1123 pub fn func_option_list(&self) -> Option<FuncOptionList> {
1124 support::child(&self.syntax)
1125 }
1126 #[inline]
1127 pub fn function_sig(&self) -> Option<FunctionSig> {
1128 support::child(&self.syntax)
1129 }
1130 #[inline]
1131 pub fn no_depends_on_extension(&self) -> Option<NoDependsOnExtension> {
1132 support::child(&self.syntax)
1133 }
1134 #[inline]
1135 pub fn owner_to(&self) -> Option<OwnerTo> {
1136 support::child(&self.syntax)
1137 }
1138 #[inline]
1139 pub fn rename_to(&self) -> Option<RenameTo> {
1140 support::child(&self.syntax)
1141 }
1142 #[inline]
1143 pub fn set_schema(&self) -> Option<SetSchema> {
1144 support::child(&self.syntax)
1145 }
1146 #[inline]
1147 pub fn alter_token(&self) -> Option<SyntaxToken> {
1148 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1149 }
1150 #[inline]
1151 pub fn restrict_token(&self) -> Option<SyntaxToken> {
1152 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
1153 }
1154 #[inline]
1155 pub fn routine_token(&self) -> Option<SyntaxToken> {
1156 support::token(&self.syntax, SyntaxKind::ROUTINE_KW)
1157 }
1158}
1159
1160#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1161pub struct AlterRule {
1162 pub(crate) syntax: SyntaxNode,
1163}
1164impl AlterRule {
1165 #[inline]
1166 pub fn name_ref(&self) -> Option<NameRef> {
1167 support::child(&self.syntax)
1168 }
1169 #[inline]
1170 pub fn on_table(&self) -> Option<OnTable> {
1171 support::child(&self.syntax)
1172 }
1173 #[inline]
1174 pub fn rename_to(&self) -> Option<RenameTo> {
1175 support::child(&self.syntax)
1176 }
1177 #[inline]
1178 pub fn alter_token(&self) -> Option<SyntaxToken> {
1179 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1180 }
1181 #[inline]
1182 pub fn on_token(&self) -> Option<SyntaxToken> {
1183 support::token(&self.syntax, SyntaxKind::ON_KW)
1184 }
1185 #[inline]
1186 pub fn rule_token(&self) -> Option<SyntaxToken> {
1187 support::token(&self.syntax, SyntaxKind::RULE_KW)
1188 }
1189}
1190
1191#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1192pub struct AlterSchema {
1193 pub(crate) syntax: SyntaxNode,
1194}
1195impl AlterSchema {
1196 #[inline]
1197 pub fn name_ref(&self) -> Option<NameRef> {
1198 support::child(&self.syntax)
1199 }
1200 #[inline]
1201 pub fn owner_to(&self) -> Option<OwnerTo> {
1202 support::child(&self.syntax)
1203 }
1204 #[inline]
1205 pub fn rename_to(&self) -> Option<RenameTo> {
1206 support::child(&self.syntax)
1207 }
1208 #[inline]
1209 pub fn alter_token(&self) -> Option<SyntaxToken> {
1210 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1211 }
1212 #[inline]
1213 pub fn schema_token(&self) -> Option<SyntaxToken> {
1214 support::token(&self.syntax, SyntaxKind::SCHEMA_KW)
1215 }
1216}
1217
1218#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1219pub struct AlterSequence {
1220 pub(crate) syntax: SyntaxNode,
1221}
1222impl AlterSequence {
1223 #[inline]
1224 pub fn if_exists(&self) -> Option<IfExists> {
1225 support::child(&self.syntax)
1226 }
1227 #[inline]
1228 pub fn path(&self) -> Option<Path> {
1229 support::child(&self.syntax)
1230 }
1231 #[inline]
1232 pub fn alter_token(&self) -> Option<SyntaxToken> {
1233 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1234 }
1235 #[inline]
1236 pub fn sequence_token(&self) -> Option<SyntaxToken> {
1237 support::token(&self.syntax, SyntaxKind::SEQUENCE_KW)
1238 }
1239}
1240
1241#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1242pub struct AlterServer {
1243 pub(crate) syntax: SyntaxNode,
1244}
1245impl AlterServer {
1246 #[inline]
1247 pub fn alter_option_list(&self) -> Option<AlterOptionList> {
1248 support::child(&self.syntax)
1249 }
1250 #[inline]
1251 pub fn name_ref(&self) -> Option<NameRef> {
1252 support::child(&self.syntax)
1253 }
1254 #[inline]
1255 pub fn alter_token(&self) -> Option<SyntaxToken> {
1256 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1257 }
1258 #[inline]
1259 pub fn server_token(&self) -> Option<SyntaxToken> {
1260 support::token(&self.syntax, SyntaxKind::SERVER_KW)
1261 }
1262}
1263
1264#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1265pub struct AlterSetStatistics {
1266 pub(crate) syntax: SyntaxNode,
1267}
1268impl AlterSetStatistics {
1269 #[inline]
1270 pub fn literal(&self) -> Option<Literal> {
1271 support::child(&self.syntax)
1272 }
1273 #[inline]
1274 pub fn name_ref(&self) -> Option<NameRef> {
1275 support::child(&self.syntax)
1276 }
1277 #[inline]
1278 pub fn column_token(&self) -> Option<SyntaxToken> {
1279 support::token(&self.syntax, SyntaxKind::COLUMN_KW)
1280 }
1281 #[inline]
1282 pub fn set_token(&self) -> Option<SyntaxToken> {
1283 support::token(&self.syntax, SyntaxKind::SET_KW)
1284 }
1285 #[inline]
1286 pub fn statistics_token(&self) -> Option<SyntaxToken> {
1287 support::token(&self.syntax, SyntaxKind::STATISTICS_KW)
1288 }
1289}
1290
1291#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1292pub struct AlterStatistics {
1293 pub(crate) syntax: SyntaxNode,
1294}
1295impl AlterStatistics {
1296 #[inline]
1297 pub fn path(&self) -> Option<Path> {
1298 support::child(&self.syntax)
1299 }
1300 #[inline]
1301 pub fn alter_token(&self) -> Option<SyntaxToken> {
1302 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1303 }
1304 #[inline]
1305 pub fn statistics_token(&self) -> Option<SyntaxToken> {
1306 support::token(&self.syntax, SyntaxKind::STATISTICS_KW)
1307 }
1308}
1309
1310#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1311pub struct AlterSubscription {
1312 pub(crate) syntax: SyntaxNode,
1313}
1314impl AlterSubscription {
1315 #[inline]
1316 pub fn name_ref(&self) -> Option<NameRef> {
1317 support::child(&self.syntax)
1318 }
1319 #[inline]
1320 pub fn alter_token(&self) -> Option<SyntaxToken> {
1321 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1322 }
1323 #[inline]
1324 pub fn subscription_token(&self) -> Option<SyntaxToken> {
1325 support::token(&self.syntax, SyntaxKind::SUBSCRIPTION_KW)
1326 }
1327}
1328
1329#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1330pub struct AlterSystem {
1331 pub(crate) syntax: SyntaxNode,
1332}
1333impl AlterSystem {
1334 #[inline]
1335 pub fn alter_token(&self) -> Option<SyntaxToken> {
1336 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1337 }
1338 #[inline]
1339 pub fn set_token(&self) -> Option<SyntaxToken> {
1340 support::token(&self.syntax, SyntaxKind::SET_KW)
1341 }
1342 #[inline]
1343 pub fn system_token(&self) -> Option<SyntaxToken> {
1344 support::token(&self.syntax, SyntaxKind::SYSTEM_KW)
1345 }
1346}
1347
1348#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1349pub struct AlterTable {
1350 pub(crate) syntax: SyntaxNode,
1351}
1352impl AlterTable {
1353 #[inline]
1354 pub fn actions(&self) -> AstChildren<AlterTableAction> {
1355 support::children(&self.syntax)
1356 }
1357 #[inline]
1358 pub fn relation_name(&self) -> Option<RelationName> {
1359 support::child(&self.syntax)
1360 }
1361 #[inline]
1362 pub fn alter_token(&self) -> Option<SyntaxToken> {
1363 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1364 }
1365 #[inline]
1366 pub fn table_token(&self) -> Option<SyntaxToken> {
1367 support::token(&self.syntax, SyntaxKind::TABLE_KW)
1368 }
1369}
1370
1371#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1372pub struct AlterTablespace {
1373 pub(crate) syntax: SyntaxNode,
1374}
1375impl AlterTablespace {
1376 #[inline]
1377 pub fn owner_to(&self) -> Option<OwnerTo> {
1378 support::child(&self.syntax)
1379 }
1380 #[inline]
1381 pub fn path(&self) -> Option<Path> {
1382 support::child(&self.syntax)
1383 }
1384 #[inline]
1385 pub fn rename_to(&self) -> Option<RenameTo> {
1386 support::child(&self.syntax)
1387 }
1388 #[inline]
1389 pub fn reset_options(&self) -> Option<ResetOptions> {
1390 support::child(&self.syntax)
1391 }
1392 #[inline]
1393 pub fn set_options(&self) -> Option<SetOptions> {
1394 support::child(&self.syntax)
1395 }
1396 #[inline]
1397 pub fn alter_token(&self) -> Option<SyntaxToken> {
1398 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1399 }
1400 #[inline]
1401 pub fn tablespace_token(&self) -> Option<SyntaxToken> {
1402 support::token(&self.syntax, SyntaxKind::TABLESPACE_KW)
1403 }
1404}
1405
1406#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1407pub struct AlterTextSearchConfiguration {
1408 pub(crate) syntax: SyntaxNode,
1409}
1410impl AlterTextSearchConfiguration {
1411 #[inline]
1412 pub fn owner_to(&self) -> Option<OwnerTo> {
1413 support::child(&self.syntax)
1414 }
1415 #[inline]
1416 pub fn path(&self) -> Option<Path> {
1417 support::child(&self.syntax)
1418 }
1419 #[inline]
1420 pub fn rename_to(&self) -> Option<RenameTo> {
1421 support::child(&self.syntax)
1422 }
1423 #[inline]
1424 pub fn set_schema(&self) -> Option<SetSchema> {
1425 support::child(&self.syntax)
1426 }
1427 #[inline]
1428 pub fn alter_token(&self) -> Option<SyntaxToken> {
1429 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1430 }
1431 #[inline]
1432 pub fn configuration_token(&self) -> Option<SyntaxToken> {
1433 support::token(&self.syntax, SyntaxKind::CONFIGURATION_KW)
1434 }
1435 #[inline]
1436 pub fn search_token(&self) -> Option<SyntaxToken> {
1437 support::token(&self.syntax, SyntaxKind::SEARCH_KW)
1438 }
1439 #[inline]
1440 pub fn text_token(&self) -> Option<SyntaxToken> {
1441 support::token(&self.syntax, SyntaxKind::TEXT_KW)
1442 }
1443}
1444
1445#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1446pub struct AlterTextSearchDictionary {
1447 pub(crate) syntax: SyntaxNode,
1448}
1449impl AlterTextSearchDictionary {
1450 #[inline]
1451 pub fn attribute_list(&self) -> Option<AttributeList> {
1452 support::child(&self.syntax)
1453 }
1454 #[inline]
1455 pub fn owner_to(&self) -> Option<OwnerTo> {
1456 support::child(&self.syntax)
1457 }
1458 #[inline]
1459 pub fn path(&self) -> Option<Path> {
1460 support::child(&self.syntax)
1461 }
1462 #[inline]
1463 pub fn rename_to(&self) -> Option<RenameTo> {
1464 support::child(&self.syntax)
1465 }
1466 #[inline]
1467 pub fn set_schema(&self) -> Option<SetSchema> {
1468 support::child(&self.syntax)
1469 }
1470 #[inline]
1471 pub fn alter_token(&self) -> Option<SyntaxToken> {
1472 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1473 }
1474 #[inline]
1475 pub fn dictionary_token(&self) -> Option<SyntaxToken> {
1476 support::token(&self.syntax, SyntaxKind::DICTIONARY_KW)
1477 }
1478 #[inline]
1479 pub fn search_token(&self) -> Option<SyntaxToken> {
1480 support::token(&self.syntax, SyntaxKind::SEARCH_KW)
1481 }
1482 #[inline]
1483 pub fn text_token(&self) -> Option<SyntaxToken> {
1484 support::token(&self.syntax, SyntaxKind::TEXT_KW)
1485 }
1486}
1487
1488#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1489pub struct AlterTextSearchParser {
1490 pub(crate) syntax: SyntaxNode,
1491}
1492impl AlterTextSearchParser {
1493 #[inline]
1494 pub fn path(&self) -> Option<Path> {
1495 support::child(&self.syntax)
1496 }
1497 #[inline]
1498 pub fn rename_to(&self) -> Option<RenameTo> {
1499 support::child(&self.syntax)
1500 }
1501 #[inline]
1502 pub fn set_schema(&self) -> Option<SetSchema> {
1503 support::child(&self.syntax)
1504 }
1505 #[inline]
1506 pub fn alter_token(&self) -> Option<SyntaxToken> {
1507 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1508 }
1509 #[inline]
1510 pub fn parser_token(&self) -> Option<SyntaxToken> {
1511 support::token(&self.syntax, SyntaxKind::PARSER_KW)
1512 }
1513 #[inline]
1514 pub fn search_token(&self) -> Option<SyntaxToken> {
1515 support::token(&self.syntax, SyntaxKind::SEARCH_KW)
1516 }
1517 #[inline]
1518 pub fn text_token(&self) -> Option<SyntaxToken> {
1519 support::token(&self.syntax, SyntaxKind::TEXT_KW)
1520 }
1521}
1522
1523#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1524pub struct AlterTextSearchTemplate {
1525 pub(crate) syntax: SyntaxNode,
1526}
1527impl AlterTextSearchTemplate {
1528 #[inline]
1529 pub fn path(&self) -> Option<Path> {
1530 support::child(&self.syntax)
1531 }
1532 #[inline]
1533 pub fn rename_to(&self) -> Option<RenameTo> {
1534 support::child(&self.syntax)
1535 }
1536 #[inline]
1537 pub fn set_schema(&self) -> Option<SetSchema> {
1538 support::child(&self.syntax)
1539 }
1540 #[inline]
1541 pub fn alter_token(&self) -> Option<SyntaxToken> {
1542 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1543 }
1544 #[inline]
1545 pub fn search_token(&self) -> Option<SyntaxToken> {
1546 support::token(&self.syntax, SyntaxKind::SEARCH_KW)
1547 }
1548 #[inline]
1549 pub fn template_token(&self) -> Option<SyntaxToken> {
1550 support::token(&self.syntax, SyntaxKind::TEMPLATE_KW)
1551 }
1552 #[inline]
1553 pub fn text_token(&self) -> Option<SyntaxToken> {
1554 support::token(&self.syntax, SyntaxKind::TEXT_KW)
1555 }
1556}
1557
1558#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1559pub struct AlterTrigger {
1560 pub(crate) syntax: SyntaxNode,
1561}
1562impl AlterTrigger {
1563 #[inline]
1564 pub fn depends_on_extension(&self) -> Option<DependsOnExtension> {
1565 support::child(&self.syntax)
1566 }
1567 #[inline]
1568 pub fn name_ref(&self) -> Option<NameRef> {
1569 support::child(&self.syntax)
1570 }
1571 #[inline]
1572 pub fn no_depends_on_extension(&self) -> Option<NoDependsOnExtension> {
1573 support::child(&self.syntax)
1574 }
1575 #[inline]
1576 pub fn on_table(&self) -> Option<OnTable> {
1577 support::child(&self.syntax)
1578 }
1579 #[inline]
1580 pub fn rename_to(&self) -> Option<RenameTo> {
1581 support::child(&self.syntax)
1582 }
1583 #[inline]
1584 pub fn alter_token(&self) -> Option<SyntaxToken> {
1585 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1586 }
1587 #[inline]
1588 pub fn trigger_token(&self) -> Option<SyntaxToken> {
1589 support::token(&self.syntax, SyntaxKind::TRIGGER_KW)
1590 }
1591}
1592
1593#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1594pub struct AlterType {
1595 pub(crate) syntax: SyntaxNode,
1596}
1597impl AlterType {
1598 #[inline]
1599 pub fn path(&self) -> Option<Path> {
1600 support::child(&self.syntax)
1601 }
1602 #[inline]
1603 pub fn alter_token(&self) -> Option<SyntaxToken> {
1604 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1605 }
1606 #[inline]
1607 pub fn type_token(&self) -> Option<SyntaxToken> {
1608 support::token(&self.syntax, SyntaxKind::TYPE_KW)
1609 }
1610}
1611
1612#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1613pub struct AlterUser {
1614 pub(crate) syntax: SyntaxNode,
1615}
1616impl AlterUser {
1617 #[inline]
1618 pub fn role(&self) -> Option<Role> {
1619 support::child(&self.syntax)
1620 }
1621 #[inline]
1622 pub fn alter_token(&self) -> Option<SyntaxToken> {
1623 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1624 }
1625 #[inline]
1626 pub fn user_token(&self) -> Option<SyntaxToken> {
1627 support::token(&self.syntax, SyntaxKind::USER_KW)
1628 }
1629}
1630
1631#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1632pub struct AlterUserMapping {
1633 pub(crate) syntax: SyntaxNode,
1634}
1635impl AlterUserMapping {
1636 #[inline]
1637 pub fn alter_option_list(&self) -> Option<AlterOptionList> {
1638 support::child(&self.syntax)
1639 }
1640 #[inline]
1641 pub fn name_ref(&self) -> Option<NameRef> {
1642 support::child(&self.syntax)
1643 }
1644 #[inline]
1645 pub fn role(&self) -> Option<Role> {
1646 support::child(&self.syntax)
1647 }
1648 #[inline]
1649 pub fn alter_token(&self) -> Option<SyntaxToken> {
1650 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1651 }
1652 #[inline]
1653 pub fn for_token(&self) -> Option<SyntaxToken> {
1654 support::token(&self.syntax, SyntaxKind::FOR_KW)
1655 }
1656 #[inline]
1657 pub fn mapping_token(&self) -> Option<SyntaxToken> {
1658 support::token(&self.syntax, SyntaxKind::MAPPING_KW)
1659 }
1660 #[inline]
1661 pub fn server_token(&self) -> Option<SyntaxToken> {
1662 support::token(&self.syntax, SyntaxKind::SERVER_KW)
1663 }
1664 #[inline]
1665 pub fn user_token(&self) -> Option<SyntaxToken> {
1666 support::token(&self.syntax, SyntaxKind::USER_KW)
1667 }
1668}
1669
1670#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1671pub struct AlterView {
1672 pub(crate) syntax: SyntaxNode,
1673}
1674impl AlterView {
1675 #[inline]
1676 pub fn path(&self) -> Option<Path> {
1677 support::child(&self.syntax)
1678 }
1679 #[inline]
1680 pub fn alter_token(&self) -> Option<SyntaxToken> {
1681 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1682 }
1683 #[inline]
1684 pub fn view_token(&self) -> Option<SyntaxToken> {
1685 support::token(&self.syntax, SyntaxKind::VIEW_KW)
1686 }
1687}
1688
1689#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1690pub struct Analyze {
1691 pub(crate) syntax: SyntaxNode,
1692}
1693impl Analyze {
1694 #[inline]
1695 pub fn option_item_list(&self) -> Option<OptionItemList> {
1696 support::child(&self.syntax)
1697 }
1698 #[inline]
1699 pub fn table_and_columns_list(&self) -> Option<TableAndColumnsList> {
1700 support::child(&self.syntax)
1701 }
1702 #[inline]
1703 pub fn analyse_token(&self) -> Option<SyntaxToken> {
1704 support::token(&self.syntax, SyntaxKind::ANALYSE_KW)
1705 }
1706 #[inline]
1707 pub fn analyze_token(&self) -> Option<SyntaxToken> {
1708 support::token(&self.syntax, SyntaxKind::ANALYZE_KW)
1709 }
1710 #[inline]
1711 pub fn verbose_token(&self) -> Option<SyntaxToken> {
1712 support::token(&self.syntax, SyntaxKind::VERBOSE_KW)
1713 }
1714}
1715
1716#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1717pub struct AnyFn {
1718 pub(crate) syntax: SyntaxNode,
1719}
1720impl AnyFn {
1721 #[inline]
1722 pub fn expr(&self) -> Option<Expr> {
1723 support::child(&self.syntax)
1724 }
1725 #[inline]
1726 pub fn select_variant(&self) -> Option<SelectVariant> {
1727 support::child(&self.syntax)
1728 }
1729 #[inline]
1730 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
1731 support::token(&self.syntax, SyntaxKind::L_PAREN)
1732 }
1733 #[inline]
1734 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
1735 support::token(&self.syntax, SyntaxKind::R_PAREN)
1736 }
1737 #[inline]
1738 pub fn any_token(&self) -> Option<SyntaxToken> {
1739 support::token(&self.syntax, SyntaxKind::ANY_KW)
1740 }
1741}
1742
1743#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1744pub struct Arg {
1745 pub(crate) syntax: SyntaxNode,
1746}
1747impl Arg {
1748 #[inline]
1749 pub fn expr(&self) -> Option<Expr> {
1750 support::child(&self.syntax)
1751 }
1752}
1753
1754#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1755pub struct ArgList {
1756 pub(crate) syntax: SyntaxNode,
1757}
1758impl ArgList {
1759 #[inline]
1760 pub fn args(&self) -> AstChildren<Expr> {
1761 support::children(&self.syntax)
1762 }
1763 #[inline]
1764 pub fn expr(&self) -> Option<Expr> {
1765 support::child(&self.syntax)
1766 }
1767 #[inline]
1768 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
1769 support::token(&self.syntax, SyntaxKind::L_PAREN)
1770 }
1771 #[inline]
1772 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
1773 support::token(&self.syntax, SyntaxKind::R_PAREN)
1774 }
1775 #[inline]
1776 pub fn star_token(&self) -> Option<SyntaxToken> {
1777 support::token(&self.syntax, SyntaxKind::STAR)
1778 }
1779 #[inline]
1780 pub fn all_token(&self) -> Option<SyntaxToken> {
1781 support::token(&self.syntax, SyntaxKind::ALL_KW)
1782 }
1783 #[inline]
1784 pub fn distinct_token(&self) -> Option<SyntaxToken> {
1785 support::token(&self.syntax, SyntaxKind::DISTINCT_KW)
1786 }
1787 #[inline]
1788 pub fn variadic_token(&self) -> Option<SyntaxToken> {
1789 support::token(&self.syntax, SyntaxKind::VARIADIC_KW)
1790 }
1791}
1792
1793#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1794pub struct ArrayExpr {
1795 pub(crate) syntax: SyntaxNode,
1796}
1797impl ArrayExpr {
1798 #[inline]
1799 pub fn exprs(&self) -> AstChildren<Expr> {
1800 support::children(&self.syntax)
1801 }
1802 #[inline]
1803 pub fn select(&self) -> Option<Select> {
1804 support::child(&self.syntax)
1805 }
1806 #[inline]
1807 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
1808 support::token(&self.syntax, SyntaxKind::L_PAREN)
1809 }
1810 #[inline]
1811 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
1812 support::token(&self.syntax, SyntaxKind::R_PAREN)
1813 }
1814 #[inline]
1815 pub fn l_brack_token(&self) -> Option<SyntaxToken> {
1816 support::token(&self.syntax, SyntaxKind::L_BRACK)
1817 }
1818 #[inline]
1819 pub fn r_brack_token(&self) -> Option<SyntaxToken> {
1820 support::token(&self.syntax, SyntaxKind::R_BRACK)
1821 }
1822 #[inline]
1823 pub fn array_token(&self) -> Option<SyntaxToken> {
1824 support::token(&self.syntax, SyntaxKind::ARRAY_KW)
1825 }
1826}
1827
1828#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1829pub struct ArrayType {
1830 pub(crate) syntax: SyntaxNode,
1831}
1832impl ArrayType {
1833 #[inline]
1834 pub fn expr(&self) -> Option<Expr> {
1835 support::child(&self.syntax)
1836 }
1837 #[inline]
1838 pub fn name_ref(&self) -> Option<NameRef> {
1839 support::child(&self.syntax)
1840 }
1841 #[inline]
1842 pub fn ty(&self) -> Option<Type> {
1843 support::child(&self.syntax)
1844 }
1845 #[inline]
1846 pub fn l_brack_token(&self) -> Option<SyntaxToken> {
1847 support::token(&self.syntax, SyntaxKind::L_BRACK)
1848 }
1849 #[inline]
1850 pub fn r_brack_token(&self) -> Option<SyntaxToken> {
1851 support::token(&self.syntax, SyntaxKind::R_BRACK)
1852 }
1853 #[inline]
1854 pub fn array_token(&self) -> Option<SyntaxToken> {
1855 support::token(&self.syntax, SyntaxKind::ARRAY_KW)
1856 }
1857}
1858
1859#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1860pub struct AsFuncOption {
1861 pub(crate) syntax: SyntaxNode,
1862}
1863impl AsFuncOption {
1864 #[inline]
1865 pub fn definition(&self) -> Option<Literal> {
1866 support::child(&self.syntax)
1867 }
1868 #[inline]
1869 pub fn link_symbol(&self) -> Option<Literal> {
1870 support::child(&self.syntax)
1871 }
1872 #[inline]
1873 pub fn obj_file(&self) -> Option<Literal> {
1874 support::child(&self.syntax)
1875 }
1876 #[inline]
1877 pub fn comma_token(&self) -> Option<SyntaxToken> {
1878 support::token(&self.syntax, SyntaxKind::COMMA)
1879 }
1880 #[inline]
1881 pub fn as_token(&self) -> Option<SyntaxToken> {
1882 support::token(&self.syntax, SyntaxKind::AS_KW)
1883 }
1884}
1885
1886#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1887pub struct AsName {
1888 pub(crate) syntax: SyntaxNode,
1889}
1890impl AsName {
1891 #[inline]
1892 pub fn name(&self) -> Option<Name> {
1893 support::child(&self.syntax)
1894 }
1895 #[inline]
1896 pub fn as_token(&self) -> Option<SyntaxToken> {
1897 support::token(&self.syntax, SyntaxKind::AS_KW)
1898 }
1899}
1900
1901#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1902pub struct AtTimeZone {
1903 pub(crate) syntax: SyntaxNode,
1904}
1905impl AtTimeZone {
1906 #[inline]
1907 pub fn at_token(&self) -> Option<SyntaxToken> {
1908 support::token(&self.syntax, SyntaxKind::AT_KW)
1909 }
1910 #[inline]
1911 pub fn time_token(&self) -> Option<SyntaxToken> {
1912 support::token(&self.syntax, SyntaxKind::TIME_KW)
1913 }
1914 #[inline]
1915 pub fn zone_token(&self) -> Option<SyntaxToken> {
1916 support::token(&self.syntax, SyntaxKind::ZONE_KW)
1917 }
1918}
1919
1920#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1921pub struct AttachPartition {
1922 pub(crate) syntax: SyntaxNode,
1923}
1924impl AttachPartition {
1925 #[inline]
1926 pub fn partition_type(&self) -> Option<PartitionType> {
1927 support::child(&self.syntax)
1928 }
1929 #[inline]
1930 pub fn path(&self) -> Option<Path> {
1931 support::child(&self.syntax)
1932 }
1933 #[inline]
1934 pub fn attach_token(&self) -> Option<SyntaxToken> {
1935 support::token(&self.syntax, SyntaxKind::ATTACH_KW)
1936 }
1937 #[inline]
1938 pub fn partition_token(&self) -> Option<SyntaxToken> {
1939 support::token(&self.syntax, SyntaxKind::PARTITION_KW)
1940 }
1941}
1942
1943#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1944pub struct AttributeList {
1945 pub(crate) syntax: SyntaxNode,
1946}
1947impl AttributeList {
1948 #[inline]
1949 pub fn attribute_options(&self) -> AstChildren<AttributeOption> {
1950 support::children(&self.syntax)
1951 }
1952 #[inline]
1953 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
1954 support::token(&self.syntax, SyntaxKind::L_PAREN)
1955 }
1956 #[inline]
1957 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
1958 support::token(&self.syntax, SyntaxKind::R_PAREN)
1959 }
1960}
1961
1962#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1963pub struct AttributeOption {
1964 pub(crate) syntax: SyntaxNode,
1965}
1966impl AttributeOption {
1967 #[inline]
1968 pub fn attribute_value(&self) -> Option<AttributeValue> {
1969 support::child(&self.syntax)
1970 }
1971 #[inline]
1972 pub fn name(&self) -> Option<Name> {
1973 support::child(&self.syntax)
1974 }
1975 #[inline]
1976 pub fn dot_token(&self) -> Option<SyntaxToken> {
1977 support::token(&self.syntax, SyntaxKind::DOT)
1978 }
1979 #[inline]
1980 pub fn eq_token(&self) -> Option<SyntaxToken> {
1981 support::token(&self.syntax, SyntaxKind::EQ)
1982 }
1983}
1984
1985#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1986pub struct AttributeValue {
1987 pub(crate) syntax: SyntaxNode,
1988}
1989impl AttributeValue {
1990 #[inline]
1991 pub fn literal(&self) -> Option<Literal> {
1992 support::child(&self.syntax)
1993 }
1994 #[inline]
1995 pub fn op(&self) -> Option<Op> {
1996 support::child(&self.syntax)
1997 }
1998 #[inline]
1999 pub fn ty(&self) -> Option<Type> {
2000 support::child(&self.syntax)
2001 }
2002 #[inline]
2003 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
2004 support::token(&self.syntax, SyntaxKind::L_PAREN)
2005 }
2006 #[inline]
2007 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
2008 support::token(&self.syntax, SyntaxKind::R_PAREN)
2009 }
2010 #[inline]
2011 pub fn none_token(&self) -> Option<SyntaxToken> {
2012 support::token(&self.syntax, SyntaxKind::NONE_KW)
2013 }
2014 #[inline]
2015 pub fn operator_token(&self) -> Option<SyntaxToken> {
2016 support::token(&self.syntax, SyntaxKind::OPERATOR_KW)
2017 }
2018}
2019
2020#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2021pub struct Begin {
2022 pub(crate) syntax: SyntaxNode,
2023}
2024impl Begin {
2025 #[inline]
2026 pub fn transaction_mode_list(&self) -> Option<TransactionModeList> {
2027 support::child(&self.syntax)
2028 }
2029 #[inline]
2030 pub fn begin_token(&self) -> Option<SyntaxToken> {
2031 support::token(&self.syntax, SyntaxKind::BEGIN_KW)
2032 }
2033 #[inline]
2034 pub fn start_token(&self) -> Option<SyntaxToken> {
2035 support::token(&self.syntax, SyntaxKind::START_KW)
2036 }
2037 #[inline]
2038 pub fn transaction_token(&self) -> Option<SyntaxToken> {
2039 support::token(&self.syntax, SyntaxKind::TRANSACTION_KW)
2040 }
2041 #[inline]
2042 pub fn work_token(&self) -> Option<SyntaxToken> {
2043 support::token(&self.syntax, SyntaxKind::WORK_KW)
2044 }
2045}
2046
2047#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2048pub struct BeginFuncOption {
2049 pub(crate) syntax: SyntaxNode,
2050}
2051impl BeginFuncOption {
2052 #[inline]
2053 pub fn return_func_option(&self) -> Option<ReturnFuncOption> {
2054 support::child(&self.syntax)
2055 }
2056 #[inline]
2057 pub fn stmt(&self) -> Option<Stmt> {
2058 support::child(&self.syntax)
2059 }
2060 #[inline]
2061 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
2062 support::token(&self.syntax, SyntaxKind::SEMICOLON)
2063 }
2064}
2065
2066#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2067pub struct BeginFuncOptionList {
2068 pub(crate) syntax: SyntaxNode,
2069}
2070impl BeginFuncOptionList {
2071 #[inline]
2072 pub fn begin_func_options(&self) -> AstChildren<BeginFuncOption> {
2073 support::children(&self.syntax)
2074 }
2075 #[inline]
2076 pub fn atomic_token(&self) -> Option<SyntaxToken> {
2077 support::token(&self.syntax, SyntaxKind::ATOMIC_KW)
2078 }
2079 #[inline]
2080 pub fn begin_token(&self) -> Option<SyntaxToken> {
2081 support::token(&self.syntax, SyntaxKind::BEGIN_KW)
2082 }
2083 #[inline]
2084 pub fn end_token(&self) -> Option<SyntaxToken> {
2085 support::token(&self.syntax, SyntaxKind::END_KW)
2086 }
2087}
2088
2089#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2090pub struct BetweenExpr {
2091 pub(crate) syntax: SyntaxNode,
2092}
2093impl BetweenExpr {
2094 #[inline]
2095 pub fn and_token(&self) -> Option<SyntaxToken> {
2096 support::token(&self.syntax, SyntaxKind::AND_KW)
2097 }
2098 #[inline]
2099 pub fn between_token(&self) -> Option<SyntaxToken> {
2100 support::token(&self.syntax, SyntaxKind::BETWEEN_KW)
2101 }
2102}
2103
2104#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2105pub struct BinExpr {
2106 pub(crate) syntax: SyntaxNode,
2107}
2108impl BinExpr {
2109 #[inline]
2110 pub fn op(&self) -> Option<Op> {
2111 support::child(&self.syntax)
2112 }
2113}
2114
2115#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2116pub struct BitType {
2117 pub(crate) syntax: SyntaxNode,
2118}
2119impl BitType {
2120 #[inline]
2121 pub fn arg_list(&self) -> Option<ArgList> {
2122 support::child(&self.syntax)
2123 }
2124 #[inline]
2125 pub fn bit_token(&self) -> Option<SyntaxToken> {
2126 support::token(&self.syntax, SyntaxKind::BIT_KW)
2127 }
2128 #[inline]
2129 pub fn varying_token(&self) -> Option<SyntaxToken> {
2130 support::token(&self.syntax, SyntaxKind::VARYING_KW)
2131 }
2132}
2133
2134#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2135pub struct Call {
2136 pub(crate) syntax: SyntaxNode,
2137}
2138impl Call {
2139 #[inline]
2140 pub fn arg_list(&self) -> Option<ArgList> {
2141 support::child(&self.syntax)
2142 }
2143 #[inline]
2144 pub fn path(&self) -> Option<Path> {
2145 support::child(&self.syntax)
2146 }
2147 #[inline]
2148 pub fn call_token(&self) -> Option<SyntaxToken> {
2149 support::token(&self.syntax, SyntaxKind::CALL_KW)
2150 }
2151}
2152
2153#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2154pub struct CallExpr {
2155 pub(crate) syntax: SyntaxNode,
2156}
2157impl CallExpr {
2158 #[inline]
2159 pub fn all_fn(&self) -> Option<AllFn> {
2160 support::child(&self.syntax)
2161 }
2162 #[inline]
2163 pub fn any_fn(&self) -> Option<AnyFn> {
2164 support::child(&self.syntax)
2165 }
2166 #[inline]
2167 pub fn arg_list(&self) -> Option<ArgList> {
2168 support::child(&self.syntax)
2169 }
2170 #[inline]
2171 pub fn exists_fn(&self) -> Option<ExistsFn> {
2172 support::child(&self.syntax)
2173 }
2174 #[inline]
2175 pub fn expr(&self) -> Option<Expr> {
2176 support::child(&self.syntax)
2177 }
2178 #[inline]
2179 pub fn extract_fn(&self) -> Option<ExtractFn> {
2180 support::child(&self.syntax)
2181 }
2182 #[inline]
2183 pub fn filter_clause(&self) -> Option<FilterClause> {
2184 support::child(&self.syntax)
2185 }
2186 #[inline]
2187 pub fn json_array_agg_fn(&self) -> Option<JsonArrayAggFn> {
2188 support::child(&self.syntax)
2189 }
2190 #[inline]
2191 pub fn json_array_fn(&self) -> Option<JsonArrayFn> {
2192 support::child(&self.syntax)
2193 }
2194 #[inline]
2195 pub fn json_exists_fn(&self) -> Option<JsonExistsFn> {
2196 support::child(&self.syntax)
2197 }
2198 #[inline]
2199 pub fn json_fn(&self) -> Option<JsonFn> {
2200 support::child(&self.syntax)
2201 }
2202 #[inline]
2203 pub fn json_object_agg_fn(&self) -> Option<JsonObjectAggFn> {
2204 support::child(&self.syntax)
2205 }
2206 #[inline]
2207 pub fn json_object_fn(&self) -> Option<JsonObjectFn> {
2208 support::child(&self.syntax)
2209 }
2210 #[inline]
2211 pub fn json_query_fn(&self) -> Option<JsonQueryFn> {
2212 support::child(&self.syntax)
2213 }
2214 #[inline]
2215 pub fn json_scalar_fn(&self) -> Option<JsonScalarFn> {
2216 support::child(&self.syntax)
2217 }
2218 #[inline]
2219 pub fn json_serialize_fn(&self) -> Option<JsonSerializeFn> {
2220 support::child(&self.syntax)
2221 }
2222 #[inline]
2223 pub fn json_value_fn(&self) -> Option<JsonValueFn> {
2224 support::child(&self.syntax)
2225 }
2226 #[inline]
2227 pub fn over_clause(&self) -> Option<OverClause> {
2228 support::child(&self.syntax)
2229 }
2230 #[inline]
2231 pub fn overlay_fn(&self) -> Option<OverlayFn> {
2232 support::child(&self.syntax)
2233 }
2234 #[inline]
2235 pub fn position_fn(&self) -> Option<PositionFn> {
2236 support::child(&self.syntax)
2237 }
2238 #[inline]
2239 pub fn some_fn(&self) -> Option<SomeFn> {
2240 support::child(&self.syntax)
2241 }
2242 #[inline]
2243 pub fn substring_fn(&self) -> Option<SubstringFn> {
2244 support::child(&self.syntax)
2245 }
2246 #[inline]
2247 pub fn trim_fn(&self) -> Option<TrimFn> {
2248 support::child(&self.syntax)
2249 }
2250 #[inline]
2251 pub fn within_clause(&self) -> Option<WithinClause> {
2252 support::child(&self.syntax)
2253 }
2254 #[inline]
2255 pub fn xml_element_fn(&self) -> Option<XmlElementFn> {
2256 support::child(&self.syntax)
2257 }
2258 #[inline]
2259 pub fn xml_exists_fn(&self) -> Option<XmlExistsFn> {
2260 support::child(&self.syntax)
2261 }
2262 #[inline]
2263 pub fn xml_forest_fn(&self) -> Option<XmlForestFn> {
2264 support::child(&self.syntax)
2265 }
2266 #[inline]
2267 pub fn xml_parse_fn(&self) -> Option<XmlParseFn> {
2268 support::child(&self.syntax)
2269 }
2270 #[inline]
2271 pub fn xml_pi_fn(&self) -> Option<XmlPiFn> {
2272 support::child(&self.syntax)
2273 }
2274 #[inline]
2275 pub fn xml_root_fn(&self) -> Option<XmlRootFn> {
2276 support::child(&self.syntax)
2277 }
2278 #[inline]
2279 pub fn xml_serialize_fn(&self) -> Option<XmlSerializeFn> {
2280 support::child(&self.syntax)
2281 }
2282}
2283
2284#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2285pub struct Cascade {
2286 pub(crate) syntax: SyntaxNode,
2287}
2288impl Cascade {
2289 #[inline]
2290 pub fn cascade_token(&self) -> Option<SyntaxToken> {
2291 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
2292 }
2293}
2294
2295#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2296pub struct CaseExpr {
2297 pub(crate) syntax: SyntaxNode,
2298}
2299impl CaseExpr {
2300 #[inline]
2301 pub fn else_clause(&self) -> Option<ElseClause> {
2302 support::child(&self.syntax)
2303 }
2304 #[inline]
2305 pub fn expr(&self) -> Option<Expr> {
2306 support::child(&self.syntax)
2307 }
2308 #[inline]
2309 pub fn when_clause_list(&self) -> Option<WhenClauseList> {
2310 support::child(&self.syntax)
2311 }
2312 #[inline]
2313 pub fn case_token(&self) -> Option<SyntaxToken> {
2314 support::token(&self.syntax, SyntaxKind::CASE_KW)
2315 }
2316}
2317
2318#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2319pub struct CastExpr {
2320 pub(crate) syntax: SyntaxNode,
2321}
2322impl CastExpr {
2323 #[inline]
2324 pub fn colon_colon(&self) -> Option<ColonColon> {
2325 support::child(&self.syntax)
2326 }
2327 #[inline]
2328 pub fn expr(&self) -> Option<Expr> {
2329 support::child(&self.syntax)
2330 }
2331 #[inline]
2332 pub fn literal(&self) -> Option<Literal> {
2333 support::child(&self.syntax)
2334 }
2335 #[inline]
2336 pub fn ty(&self) -> Option<Type> {
2337 support::child(&self.syntax)
2338 }
2339 #[inline]
2340 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
2341 support::token(&self.syntax, SyntaxKind::L_PAREN)
2342 }
2343 #[inline]
2344 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
2345 support::token(&self.syntax, SyntaxKind::R_PAREN)
2346 }
2347 #[inline]
2348 pub fn as_token(&self) -> Option<SyntaxToken> {
2349 support::token(&self.syntax, SyntaxKind::AS_KW)
2350 }
2351 #[inline]
2352 pub fn cast_token(&self) -> Option<SyntaxToken> {
2353 support::token(&self.syntax, SyntaxKind::CAST_KW)
2354 }
2355 #[inline]
2356 pub fn treat_token(&self) -> Option<SyntaxToken> {
2357 support::token(&self.syntax, SyntaxKind::TREAT_KW)
2358 }
2359}
2360
2361#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2362pub struct CastSig {
2363 pub(crate) syntax: SyntaxNode,
2364}
2365impl CastSig {
2366 #[inline]
2367 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
2368 support::token(&self.syntax, SyntaxKind::L_PAREN)
2369 }
2370 #[inline]
2371 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
2372 support::token(&self.syntax, SyntaxKind::R_PAREN)
2373 }
2374 #[inline]
2375 pub fn as_token(&self) -> Option<SyntaxToken> {
2376 support::token(&self.syntax, SyntaxKind::AS_KW)
2377 }
2378}
2379
2380#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2381pub struct CharType {
2382 pub(crate) syntax: SyntaxNode,
2383}
2384impl CharType {
2385 #[inline]
2386 pub fn arg_list(&self) -> Option<ArgList> {
2387 support::child(&self.syntax)
2388 }
2389 #[inline]
2390 pub fn char_token(&self) -> Option<SyntaxToken> {
2391 support::token(&self.syntax, SyntaxKind::CHAR_KW)
2392 }
2393 #[inline]
2394 pub fn character_token(&self) -> Option<SyntaxToken> {
2395 support::token(&self.syntax, SyntaxKind::CHARACTER_KW)
2396 }
2397 #[inline]
2398 pub fn nchar_token(&self) -> Option<SyntaxToken> {
2399 support::token(&self.syntax, SyntaxKind::NCHAR_KW)
2400 }
2401 #[inline]
2402 pub fn varchar_token(&self) -> Option<SyntaxToken> {
2403 support::token(&self.syntax, SyntaxKind::VARCHAR_KW)
2404 }
2405 #[inline]
2406 pub fn varying_token(&self) -> Option<SyntaxToken> {
2407 support::token(&self.syntax, SyntaxKind::VARYING_KW)
2408 }
2409}
2410
2411#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2412pub struct CheckConstraint {
2413 pub(crate) syntax: SyntaxNode,
2414}
2415impl CheckConstraint {
2416 #[inline]
2417 pub fn expr(&self) -> Option<Expr> {
2418 support::child(&self.syntax)
2419 }
2420 #[inline]
2421 pub fn name(&self) -> Option<Name> {
2422 support::child(&self.syntax)
2423 }
2424 #[inline]
2425 pub fn no_inherit(&self) -> Option<NoInherit> {
2426 support::child(&self.syntax)
2427 }
2428 #[inline]
2429 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
2430 support::token(&self.syntax, SyntaxKind::L_PAREN)
2431 }
2432 #[inline]
2433 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
2434 support::token(&self.syntax, SyntaxKind::R_PAREN)
2435 }
2436 #[inline]
2437 pub fn check_token(&self) -> Option<SyntaxToken> {
2438 support::token(&self.syntax, SyntaxKind::CHECK_KW)
2439 }
2440 #[inline]
2441 pub fn constraint_token(&self) -> Option<SyntaxToken> {
2442 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
2443 }
2444}
2445
2446#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2447pub struct Checkpoint {
2448 pub(crate) syntax: SyntaxNode,
2449}
2450impl Checkpoint {
2451 #[inline]
2452 pub fn checkpoint_token(&self) -> Option<SyntaxToken> {
2453 support::token(&self.syntax, SyntaxKind::CHECKPOINT_KW)
2454 }
2455}
2456
2457#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2458pub struct Close {
2459 pub(crate) syntax: SyntaxNode,
2460}
2461impl Close {
2462 #[inline]
2463 pub fn name_ref(&self) -> Option<NameRef> {
2464 support::child(&self.syntax)
2465 }
2466 #[inline]
2467 pub fn close_token(&self) -> Option<SyntaxToken> {
2468 support::token(&self.syntax, SyntaxKind::CLOSE_KW)
2469 }
2470}
2471
2472#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2473pub struct Cluster {
2474 pub(crate) syntax: SyntaxNode,
2475}
2476impl Cluster {
2477 #[inline]
2478 pub fn option_item_list(&self) -> Option<OptionItemList> {
2479 support::child(&self.syntax)
2480 }
2481 #[inline]
2482 pub fn path(&self) -> Option<Path> {
2483 support::child(&self.syntax)
2484 }
2485 #[inline]
2486 pub fn using_method(&self) -> Option<UsingMethod> {
2487 support::child(&self.syntax)
2488 }
2489 #[inline]
2490 pub fn cluster_token(&self) -> Option<SyntaxToken> {
2491 support::token(&self.syntax, SyntaxKind::CLUSTER_KW)
2492 }
2493 #[inline]
2494 pub fn verbose_token(&self) -> Option<SyntaxToken> {
2495 support::token(&self.syntax, SyntaxKind::VERBOSE_KW)
2496 }
2497}
2498
2499#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2500pub struct ClusterOn {
2501 pub(crate) syntax: SyntaxNode,
2502}
2503impl ClusterOn {
2504 #[inline]
2505 pub fn cluster_token(&self) -> Option<SyntaxToken> {
2506 support::token(&self.syntax, SyntaxKind::CLUSTER_KW)
2507 }
2508 #[inline]
2509 pub fn on_token(&self) -> Option<SyntaxToken> {
2510 support::token(&self.syntax, SyntaxKind::ON_KW)
2511 }
2512}
2513
2514#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2515pub struct Collate {
2516 pub(crate) syntax: SyntaxNode,
2517}
2518impl Collate {
2519 #[inline]
2520 pub fn path(&self) -> Option<Path> {
2521 support::child(&self.syntax)
2522 }
2523 #[inline]
2524 pub fn collate_token(&self) -> Option<SyntaxToken> {
2525 support::token(&self.syntax, SyntaxKind::COLLATE_KW)
2526 }
2527}
2528
2529#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2530pub struct ColonColon {
2531 pub(crate) syntax: SyntaxNode,
2532}
2533impl ColonColon {
2534 #[inline]
2535 pub fn colon_token(&self) -> Option<SyntaxToken> {
2536 support::token(&self.syntax, SyntaxKind::COLON)
2537 }
2538}
2539
2540#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2541pub struct ColonEq {
2542 pub(crate) syntax: SyntaxNode,
2543}
2544impl ColonEq {
2545 #[inline]
2546 pub fn colon_token(&self) -> Option<SyntaxToken> {
2547 support::token(&self.syntax, SyntaxKind::COLON)
2548 }
2549 #[inline]
2550 pub fn eq_token(&self) -> Option<SyntaxToken> {
2551 support::token(&self.syntax, SyntaxKind::EQ)
2552 }
2553}
2554
2555#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2556pub struct Column {
2557 pub(crate) syntax: SyntaxNode,
2558}
2559impl Column {
2560 #[inline]
2561 pub fn collate(&self) -> Option<Collate> {
2562 support::child(&self.syntax)
2563 }
2564 #[inline]
2565 pub fn compression_method(&self) -> Option<CompressionMethod> {
2566 support::child(&self.syntax)
2567 }
2568 #[inline]
2569 pub fn constraint(&self) -> Option<ColumnConstraint> {
2570 support::child(&self.syntax)
2571 }
2572 #[inline]
2573 pub fn deferrable_constraint_option(&self) -> Option<DeferrableConstraintOption> {
2574 support::child(&self.syntax)
2575 }
2576 #[inline]
2577 pub fn enforced(&self) -> Option<Enforced> {
2578 support::child(&self.syntax)
2579 }
2580 #[inline]
2581 pub fn index_expr(&self) -> Option<IndexExpr> {
2582 support::child(&self.syntax)
2583 }
2584 #[inline]
2585 pub fn initially_deferred_constraint_option(
2586 &self,
2587 ) -> Option<InitiallyDeferredConstraintOption> {
2588 support::child(&self.syntax)
2589 }
2590 #[inline]
2591 pub fn initially_immediate_constraint_option(
2592 &self,
2593 ) -> Option<InitiallyImmediateConstraintOption> {
2594 support::child(&self.syntax)
2595 }
2596 #[inline]
2597 pub fn name(&self) -> Option<Name> {
2598 support::child(&self.syntax)
2599 }
2600 #[inline]
2601 pub fn name_ref(&self) -> Option<NameRef> {
2602 support::child(&self.syntax)
2603 }
2604 #[inline]
2605 pub fn not_deferrable_constraint_option(&self) -> Option<NotDeferrableConstraintOption> {
2606 support::child(&self.syntax)
2607 }
2608 #[inline]
2609 pub fn not_enforced(&self) -> Option<NotEnforced> {
2610 support::child(&self.syntax)
2611 }
2612 #[inline]
2613 pub fn storage(&self) -> Option<Storage> {
2614 support::child(&self.syntax)
2615 }
2616 #[inline]
2617 pub fn ty(&self) -> Option<Type> {
2618 support::child(&self.syntax)
2619 }
2620 #[inline]
2621 pub fn with_options(&self) -> Option<WithOptions> {
2622 support::child(&self.syntax)
2623 }
2624 #[inline]
2625 pub fn period_token(&self) -> Option<SyntaxToken> {
2626 support::token(&self.syntax, SyntaxKind::PERIOD_KW)
2627 }
2628}
2629
2630#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2631pub struct ColumnList {
2632 pub(crate) syntax: SyntaxNode,
2633}
2634impl ColumnList {
2635 #[inline]
2636 pub fn columns(&self) -> AstChildren<Column> {
2637 support::children(&self.syntax)
2638 }
2639 #[inline]
2640 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
2641 support::token(&self.syntax, SyntaxKind::L_PAREN)
2642 }
2643 #[inline]
2644 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
2645 support::token(&self.syntax, SyntaxKind::R_PAREN)
2646 }
2647}
2648
2649#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2650pub struct CommentOn {
2651 pub(crate) syntax: SyntaxNode,
2652}
2653impl CommentOn {
2654 #[inline]
2655 pub fn literal(&self) -> Option<Literal> {
2656 support::child(&self.syntax)
2657 }
2658 #[inline]
2659 pub fn name_ref(&self) -> Option<NameRef> {
2660 support::child(&self.syntax)
2661 }
2662 #[inline]
2663 pub fn path(&self) -> Option<Path> {
2664 support::child(&self.syntax)
2665 }
2666 #[inline]
2667 pub fn comment_token(&self) -> Option<SyntaxToken> {
2668 support::token(&self.syntax, SyntaxKind::COMMENT_KW)
2669 }
2670 #[inline]
2671 pub fn constraint_token(&self) -> Option<SyntaxToken> {
2672 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
2673 }
2674 #[inline]
2675 pub fn domain_token(&self) -> Option<SyntaxToken> {
2676 support::token(&self.syntax, SyntaxKind::DOMAIN_KW)
2677 }
2678 #[inline]
2679 pub fn is_token(&self) -> Option<SyntaxToken> {
2680 support::token(&self.syntax, SyntaxKind::IS_KW)
2681 }
2682 #[inline]
2683 pub fn null_token(&self) -> Option<SyntaxToken> {
2684 support::token(&self.syntax, SyntaxKind::NULL_KW)
2685 }
2686 #[inline]
2687 pub fn on_token(&self) -> Option<SyntaxToken> {
2688 support::token(&self.syntax, SyntaxKind::ON_KW)
2689 }
2690 #[inline]
2691 pub fn table_token(&self) -> Option<SyntaxToken> {
2692 support::token(&self.syntax, SyntaxKind::TABLE_KW)
2693 }
2694}
2695
2696#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2697pub struct Commit {
2698 pub(crate) syntax: SyntaxNode,
2699}
2700impl Commit {
2701 #[inline]
2702 pub fn literal(&self) -> Option<Literal> {
2703 support::child(&self.syntax)
2704 }
2705 #[inline]
2706 pub fn and_token(&self) -> Option<SyntaxToken> {
2707 support::token(&self.syntax, SyntaxKind::AND_KW)
2708 }
2709 #[inline]
2710 pub fn chain_token(&self) -> Option<SyntaxToken> {
2711 support::token(&self.syntax, SyntaxKind::CHAIN_KW)
2712 }
2713 #[inline]
2714 pub fn commit_token(&self) -> Option<SyntaxToken> {
2715 support::token(&self.syntax, SyntaxKind::COMMIT_KW)
2716 }
2717 #[inline]
2718 pub fn no_token(&self) -> Option<SyntaxToken> {
2719 support::token(&self.syntax, SyntaxKind::NO_KW)
2720 }
2721 #[inline]
2722 pub fn prepared_token(&self) -> Option<SyntaxToken> {
2723 support::token(&self.syntax, SyntaxKind::PREPARED_KW)
2724 }
2725 #[inline]
2726 pub fn transaction_token(&self) -> Option<SyntaxToken> {
2727 support::token(&self.syntax, SyntaxKind::TRANSACTION_KW)
2728 }
2729 #[inline]
2730 pub fn work_token(&self) -> Option<SyntaxToken> {
2731 support::token(&self.syntax, SyntaxKind::WORK_KW)
2732 }
2733}
2734
2735#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2736pub struct CompoundSelect {
2737 pub(crate) syntax: SyntaxNode,
2738}
2739impl CompoundSelect {
2740 #[inline]
2741 pub fn except_token(&self) -> Option<SyntaxToken> {
2742 support::token(&self.syntax, SyntaxKind::EXCEPT_KW)
2743 }
2744 #[inline]
2745 pub fn intersect_token(&self) -> Option<SyntaxToken> {
2746 support::token(&self.syntax, SyntaxKind::INTERSECT_KW)
2747 }
2748 #[inline]
2749 pub fn union_token(&self) -> Option<SyntaxToken> {
2750 support::token(&self.syntax, SyntaxKind::UNION_KW)
2751 }
2752}
2753
2754#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2755pub struct CompressionMethod {
2756 pub(crate) syntax: SyntaxNode,
2757}
2758impl CompressionMethod {
2759 #[inline]
2760 pub fn compression_token(&self) -> Option<SyntaxToken> {
2761 support::token(&self.syntax, SyntaxKind::COMPRESSION_KW)
2762 }
2763 #[inline]
2764 pub fn default_token(&self) -> Option<SyntaxToken> {
2765 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
2766 }
2767 #[inline]
2768 pub fn ident_token(&self) -> Option<SyntaxToken> {
2769 support::token(&self.syntax, SyntaxKind::IDENT)
2770 }
2771}
2772
2773#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2774pub struct ConflictDoNothing {
2775 pub(crate) syntax: SyntaxNode,
2776}
2777impl ConflictDoNothing {
2778 #[inline]
2779 pub fn do_token(&self) -> Option<SyntaxToken> {
2780 support::token(&self.syntax, SyntaxKind::DO_KW)
2781 }
2782 #[inline]
2783 pub fn nothing_token(&self) -> Option<SyntaxToken> {
2784 support::token(&self.syntax, SyntaxKind::NOTHING_KW)
2785 }
2786}
2787
2788#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2789pub struct ConflictDoUpdateSet {
2790 pub(crate) syntax: SyntaxNode,
2791}
2792impl ConflictDoUpdateSet {
2793 #[inline]
2794 pub fn set_clause(&self) -> Option<SetClause> {
2795 support::child(&self.syntax)
2796 }
2797 #[inline]
2798 pub fn where_clause(&self) -> Option<WhereClause> {
2799 support::child(&self.syntax)
2800 }
2801 #[inline]
2802 pub fn do_token(&self) -> Option<SyntaxToken> {
2803 support::token(&self.syntax, SyntaxKind::DO_KW)
2804 }
2805 #[inline]
2806 pub fn update_token(&self) -> Option<SyntaxToken> {
2807 support::token(&self.syntax, SyntaxKind::UPDATE_KW)
2808 }
2809}
2810
2811#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2812pub struct ConflictIndexItem {
2813 pub(crate) syntax: SyntaxNode,
2814}
2815impl ConflictIndexItem {
2816 #[inline]
2817 pub fn collate(&self) -> Option<Collate> {
2818 support::child(&self.syntax)
2819 }
2820 #[inline]
2821 pub fn expr(&self) -> Option<Expr> {
2822 support::child(&self.syntax)
2823 }
2824 #[inline]
2825 pub fn ident_token(&self) -> Option<SyntaxToken> {
2826 support::token(&self.syntax, SyntaxKind::IDENT)
2827 }
2828}
2829
2830#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2831pub struct ConflictIndexItemList {
2832 pub(crate) syntax: SyntaxNode,
2833}
2834impl ConflictIndexItemList {
2835 #[inline]
2836 pub fn conflict_index_items(&self) -> AstChildren<ConflictIndexItem> {
2837 support::children(&self.syntax)
2838 }
2839 #[inline]
2840 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
2841 support::token(&self.syntax, SyntaxKind::L_PAREN)
2842 }
2843 #[inline]
2844 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
2845 support::token(&self.syntax, SyntaxKind::R_PAREN)
2846 }
2847}
2848
2849#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2850pub struct ConflictOnConstraint {
2851 pub(crate) syntax: SyntaxNode,
2852}
2853impl ConflictOnConstraint {
2854 #[inline]
2855 pub fn name_ref(&self) -> Option<NameRef> {
2856 support::child(&self.syntax)
2857 }
2858 #[inline]
2859 pub fn constraint_token(&self) -> Option<SyntaxToken> {
2860 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
2861 }
2862 #[inline]
2863 pub fn on_token(&self) -> Option<SyntaxToken> {
2864 support::token(&self.syntax, SyntaxKind::ON_KW)
2865 }
2866}
2867
2868#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2869pub struct ConflictOnIndex {
2870 pub(crate) syntax: SyntaxNode,
2871}
2872impl ConflictOnIndex {
2873 #[inline]
2874 pub fn conflict_index_item_list(&self) -> Option<ConflictIndexItemList> {
2875 support::child(&self.syntax)
2876 }
2877 #[inline]
2878 pub fn where_clause(&self) -> Option<WhereClause> {
2879 support::child(&self.syntax)
2880 }
2881}
2882
2883#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2884pub struct ConstraintExclusion {
2885 pub(crate) syntax: SyntaxNode,
2886}
2887impl ConstraintExclusion {
2888 #[inline]
2889 pub fn expr(&self) -> Option<Expr> {
2890 support::child(&self.syntax)
2891 }
2892 #[inline]
2893 pub fn op(&self) -> Option<Op> {
2894 support::child(&self.syntax)
2895 }
2896 #[inline]
2897 pub fn with_token(&self) -> Option<SyntaxToken> {
2898 support::token(&self.syntax, SyntaxKind::WITH_KW)
2899 }
2900}
2901
2902#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2903pub struct ConstraintExclusionList {
2904 pub(crate) syntax: SyntaxNode,
2905}
2906impl ConstraintExclusionList {
2907 #[inline]
2908 pub fn constraint_exclusions(&self) -> AstChildren<ConstraintExclusion> {
2909 support::children(&self.syntax)
2910 }
2911 #[inline]
2912 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
2913 support::token(&self.syntax, SyntaxKind::L_PAREN)
2914 }
2915 #[inline]
2916 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
2917 support::token(&self.syntax, SyntaxKind::R_PAREN)
2918 }
2919}
2920
2921#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2922pub struct ConstraintIncludeClause {
2923 pub(crate) syntax: SyntaxNode,
2924}
2925impl ConstraintIncludeClause {
2926 #[inline]
2927 pub fn include_token(&self) -> Option<SyntaxToken> {
2928 support::token(&self.syntax, SyntaxKind::INCLUDE_KW)
2929 }
2930}
2931
2932#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2933pub struct ConstraintIndexMethod {
2934 pub(crate) syntax: SyntaxNode,
2935}
2936impl ConstraintIndexMethod {
2937 #[inline]
2938 pub fn using_token(&self) -> Option<SyntaxToken> {
2939 support::token(&self.syntax, SyntaxKind::USING_KW)
2940 }
2941}
2942
2943#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2944pub struct ConstraintIndexTablespace {
2945 pub(crate) syntax: SyntaxNode,
2946}
2947impl ConstraintIndexTablespace {
2948 #[inline]
2949 pub fn name_ref(&self) -> Option<NameRef> {
2950 support::child(&self.syntax)
2951 }
2952 #[inline]
2953 pub fn index_token(&self) -> Option<SyntaxToken> {
2954 support::token(&self.syntax, SyntaxKind::INDEX_KW)
2955 }
2956 #[inline]
2957 pub fn tablespace_token(&self) -> Option<SyntaxToken> {
2958 support::token(&self.syntax, SyntaxKind::TABLESPACE_KW)
2959 }
2960 #[inline]
2961 pub fn using_token(&self) -> Option<SyntaxToken> {
2962 support::token(&self.syntax, SyntaxKind::USING_KW)
2963 }
2964}
2965
2966#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2967pub struct Copy {
2968 pub(crate) syntax: SyntaxNode,
2969}
2970impl Copy {
2971 #[inline]
2972 pub fn column_list(&self) -> Option<ColumnList> {
2973 support::child(&self.syntax)
2974 }
2975 #[inline]
2976 pub fn literal(&self) -> Option<Literal> {
2977 support::child(&self.syntax)
2978 }
2979 #[inline]
2980 pub fn path(&self) -> Option<Path> {
2981 support::child(&self.syntax)
2982 }
2983 #[inline]
2984 pub fn preparable_stmt(&self) -> Option<PreparableStmt> {
2985 support::child(&self.syntax)
2986 }
2987 #[inline]
2988 pub fn where_clause(&self) -> Option<WhereClause> {
2989 support::child(&self.syntax)
2990 }
2991 #[inline]
2992 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
2993 support::token(&self.syntax, SyntaxKind::L_PAREN)
2994 }
2995 #[inline]
2996 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
2997 support::token(&self.syntax, SyntaxKind::R_PAREN)
2998 }
2999 #[inline]
3000 pub fn binary_token(&self) -> Option<SyntaxToken> {
3001 support::token(&self.syntax, SyntaxKind::BINARY_KW)
3002 }
3003 #[inline]
3004 pub fn copy_token(&self) -> Option<SyntaxToken> {
3005 support::token(&self.syntax, SyntaxKind::COPY_KW)
3006 }
3007 #[inline]
3008 pub fn from_token(&self) -> Option<SyntaxToken> {
3009 support::token(&self.syntax, SyntaxKind::FROM_KW)
3010 }
3011 #[inline]
3012 pub fn program_token(&self) -> Option<SyntaxToken> {
3013 support::token(&self.syntax, SyntaxKind::PROGRAM_KW)
3014 }
3015 #[inline]
3016 pub fn stdin_token(&self) -> Option<SyntaxToken> {
3017 support::token(&self.syntax, SyntaxKind::STDIN_KW)
3018 }
3019 #[inline]
3020 pub fn stdout_token(&self) -> Option<SyntaxToken> {
3021 support::token(&self.syntax, SyntaxKind::STDOUT_KW)
3022 }
3023 #[inline]
3024 pub fn to_token(&self) -> Option<SyntaxToken> {
3025 support::token(&self.syntax, SyntaxKind::TO_KW)
3026 }
3027 #[inline]
3028 pub fn with_token(&self) -> Option<SyntaxToken> {
3029 support::token(&self.syntax, SyntaxKind::WITH_KW)
3030 }
3031}
3032
3033#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3034pub struct CopyOption {
3035 pub(crate) syntax: SyntaxNode,
3036}
3037impl CopyOption {
3038 #[inline]
3039 pub fn name(&self) -> Option<Name> {
3040 support::child(&self.syntax)
3041 }
3042}
3043
3044#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3045pub struct CopyOptionList {
3046 pub(crate) syntax: SyntaxNode,
3047}
3048impl CopyOptionList {
3049 #[inline]
3050 pub fn copy_options(&self) -> AstChildren<CopyOption> {
3051 support::children(&self.syntax)
3052 }
3053 #[inline]
3054 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
3055 support::token(&self.syntax, SyntaxKind::L_PAREN)
3056 }
3057 #[inline]
3058 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
3059 support::token(&self.syntax, SyntaxKind::R_PAREN)
3060 }
3061}
3062
3063#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3064pub struct CostFuncOption {
3065 pub(crate) syntax: SyntaxNode,
3066}
3067impl CostFuncOption {
3068 #[inline]
3069 pub fn cost_token(&self) -> Option<SyntaxToken> {
3070 support::token(&self.syntax, SyntaxKind::COST_KW)
3071 }
3072}
3073
3074#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3075pub struct CreateAccessMethod {
3076 pub(crate) syntax: SyntaxNode,
3077}
3078impl CreateAccessMethod {
3079 #[inline]
3080 pub fn handler_clause(&self) -> Option<HandlerClause> {
3081 support::child(&self.syntax)
3082 }
3083 #[inline]
3084 pub fn name(&self) -> Option<Path> {
3085 support::child(&self.syntax)
3086 }
3087 #[inline]
3088 pub fn access_token(&self) -> Option<SyntaxToken> {
3089 support::token(&self.syntax, SyntaxKind::ACCESS_KW)
3090 }
3091 #[inline]
3092 pub fn create_token(&self) -> Option<SyntaxToken> {
3093 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3094 }
3095 #[inline]
3096 pub fn index_token(&self) -> Option<SyntaxToken> {
3097 support::token(&self.syntax, SyntaxKind::INDEX_KW)
3098 }
3099 #[inline]
3100 pub fn method_token(&self) -> Option<SyntaxToken> {
3101 support::token(&self.syntax, SyntaxKind::METHOD_KW)
3102 }
3103 #[inline]
3104 pub fn table_token(&self) -> Option<SyntaxToken> {
3105 support::token(&self.syntax, SyntaxKind::TABLE_KW)
3106 }
3107 #[inline]
3108 pub fn type_token(&self) -> Option<SyntaxToken> {
3109 support::token(&self.syntax, SyntaxKind::TYPE_KW)
3110 }
3111}
3112
3113#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3114pub struct CreateAggregate {
3115 pub(crate) syntax: SyntaxNode,
3116}
3117impl CreateAggregate {
3118 #[inline]
3119 pub fn or_replace(&self) -> Option<OrReplace> {
3120 support::child(&self.syntax)
3121 }
3122 #[inline]
3123 pub fn param_list(&self) -> Option<ParamList> {
3124 support::child(&self.syntax)
3125 }
3126 #[inline]
3127 pub fn path(&self) -> Option<Path> {
3128 support::child(&self.syntax)
3129 }
3130 #[inline]
3131 pub fn aggregate_token(&self) -> Option<SyntaxToken> {
3132 support::token(&self.syntax, SyntaxKind::AGGREGATE_KW)
3133 }
3134 #[inline]
3135 pub fn create_token(&self) -> Option<SyntaxToken> {
3136 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3137 }
3138}
3139
3140#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3141pub struct CreateCast {
3142 pub(crate) syntax: SyntaxNode,
3143}
3144impl CreateCast {
3145 #[inline]
3146 pub fn cast_sig(&self) -> Option<CastSig> {
3147 support::child(&self.syntax)
3148 }
3149 #[inline]
3150 pub fn function_sig(&self) -> Option<FunctionSig> {
3151 support::child(&self.syntax)
3152 }
3153 #[inline]
3154 pub fn as_token(&self) -> Option<SyntaxToken> {
3155 support::token(&self.syntax, SyntaxKind::AS_KW)
3156 }
3157 #[inline]
3158 pub fn assignment_token(&self) -> Option<SyntaxToken> {
3159 support::token(&self.syntax, SyntaxKind::ASSIGNMENT_KW)
3160 }
3161 #[inline]
3162 pub fn cast_token(&self) -> Option<SyntaxToken> {
3163 support::token(&self.syntax, SyntaxKind::CAST_KW)
3164 }
3165 #[inline]
3166 pub fn create_token(&self) -> Option<SyntaxToken> {
3167 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3168 }
3169 #[inline]
3170 pub fn function_token(&self) -> Option<SyntaxToken> {
3171 support::token(&self.syntax, SyntaxKind::FUNCTION_KW)
3172 }
3173 #[inline]
3174 pub fn implicit_token(&self) -> Option<SyntaxToken> {
3175 support::token(&self.syntax, SyntaxKind::IMPLICIT_KW)
3176 }
3177 #[inline]
3178 pub fn inout_token(&self) -> Option<SyntaxToken> {
3179 support::token(&self.syntax, SyntaxKind::INOUT_KW)
3180 }
3181 #[inline]
3182 pub fn with_token(&self) -> Option<SyntaxToken> {
3183 support::token(&self.syntax, SyntaxKind::WITH_KW)
3184 }
3185 #[inline]
3186 pub fn without_token(&self) -> Option<SyntaxToken> {
3187 support::token(&self.syntax, SyntaxKind::WITHOUT_KW)
3188 }
3189}
3190
3191#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3192pub struct CreateCollation {
3193 pub(crate) syntax: SyntaxNode,
3194}
3195impl CreateCollation {
3196 #[inline]
3197 pub fn path(&self) -> Option<Path> {
3198 support::child(&self.syntax)
3199 }
3200 #[inline]
3201 pub fn collation_token(&self) -> Option<SyntaxToken> {
3202 support::token(&self.syntax, SyntaxKind::COLLATION_KW)
3203 }
3204 #[inline]
3205 pub fn create_token(&self) -> Option<SyntaxToken> {
3206 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3207 }
3208}
3209
3210#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3211pub struct CreateConversion {
3212 pub(crate) syntax: SyntaxNode,
3213}
3214impl CreateConversion {
3215 #[inline]
3216 pub fn literal(&self) -> Option<Literal> {
3217 support::child(&self.syntax)
3218 }
3219 #[inline]
3220 pub fn path(&self) -> Option<Path> {
3221 support::child(&self.syntax)
3222 }
3223 #[inline]
3224 pub fn conversion_token(&self) -> Option<SyntaxToken> {
3225 support::token(&self.syntax, SyntaxKind::CONVERSION_KW)
3226 }
3227 #[inline]
3228 pub fn create_token(&self) -> Option<SyntaxToken> {
3229 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3230 }
3231 #[inline]
3232 pub fn default_token(&self) -> Option<SyntaxToken> {
3233 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
3234 }
3235 #[inline]
3236 pub fn for_token(&self) -> Option<SyntaxToken> {
3237 support::token(&self.syntax, SyntaxKind::FOR_KW)
3238 }
3239 #[inline]
3240 pub fn from_token(&self) -> Option<SyntaxToken> {
3241 support::token(&self.syntax, SyntaxKind::FROM_KW)
3242 }
3243 #[inline]
3244 pub fn to_token(&self) -> Option<SyntaxToken> {
3245 support::token(&self.syntax, SyntaxKind::TO_KW)
3246 }
3247}
3248
3249#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3250pub struct CreateDatabase {
3251 pub(crate) syntax: SyntaxNode,
3252}
3253impl CreateDatabase {
3254 #[inline]
3255 pub fn create_database_option_list(&self) -> Option<CreateDatabaseOptionList> {
3256 support::child(&self.syntax)
3257 }
3258 #[inline]
3259 pub fn name(&self) -> Option<Name> {
3260 support::child(&self.syntax)
3261 }
3262 #[inline]
3263 pub fn create_token(&self) -> Option<SyntaxToken> {
3264 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3265 }
3266 #[inline]
3267 pub fn database_token(&self) -> Option<SyntaxToken> {
3268 support::token(&self.syntax, SyntaxKind::DATABASE_KW)
3269 }
3270}
3271
3272#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3273pub struct CreateDatabaseOption {
3274 pub(crate) syntax: SyntaxNode,
3275}
3276impl CreateDatabaseOption {
3277 #[inline]
3278 pub fn literal(&self) -> Option<Literal> {
3279 support::child(&self.syntax)
3280 }
3281 #[inline]
3282 pub fn eq_token(&self) -> Option<SyntaxToken> {
3283 support::token(&self.syntax, SyntaxKind::EQ)
3284 }
3285 #[inline]
3286 pub fn connection_token(&self) -> Option<SyntaxToken> {
3287 support::token(&self.syntax, SyntaxKind::CONNECTION_KW)
3288 }
3289 #[inline]
3290 pub fn default_token(&self) -> Option<SyntaxToken> {
3291 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
3292 }
3293 #[inline]
3294 pub fn encoding_token(&self) -> Option<SyntaxToken> {
3295 support::token(&self.syntax, SyntaxKind::ENCODING_KW)
3296 }
3297 #[inline]
3298 pub fn ident_token(&self) -> Option<SyntaxToken> {
3299 support::token(&self.syntax, SyntaxKind::IDENT)
3300 }
3301 #[inline]
3302 pub fn limit_token(&self) -> Option<SyntaxToken> {
3303 support::token(&self.syntax, SyntaxKind::LIMIT_KW)
3304 }
3305 #[inline]
3306 pub fn owner_token(&self) -> Option<SyntaxToken> {
3307 support::token(&self.syntax, SyntaxKind::OWNER_KW)
3308 }
3309 #[inline]
3310 pub fn tablespace_token(&self) -> Option<SyntaxToken> {
3311 support::token(&self.syntax, SyntaxKind::TABLESPACE_KW)
3312 }
3313 #[inline]
3314 pub fn template_token(&self) -> Option<SyntaxToken> {
3315 support::token(&self.syntax, SyntaxKind::TEMPLATE_KW)
3316 }
3317}
3318
3319#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3320pub struct CreateDatabaseOptionList {
3321 pub(crate) syntax: SyntaxNode,
3322}
3323impl CreateDatabaseOptionList {
3324 #[inline]
3325 pub fn create_database_options(&self) -> AstChildren<CreateDatabaseOption> {
3326 support::children(&self.syntax)
3327 }
3328 #[inline]
3329 pub fn with_token(&self) -> Option<SyntaxToken> {
3330 support::token(&self.syntax, SyntaxKind::WITH_KW)
3331 }
3332}
3333
3334#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3335pub struct CreateDomain {
3336 pub(crate) syntax: SyntaxNode,
3337}
3338impl CreateDomain {
3339 #[inline]
3340 pub fn collate(&self) -> Option<Collate> {
3341 support::child(&self.syntax)
3342 }
3343 #[inline]
3344 pub fn constraints(&self) -> AstChildren<Constraint> {
3345 support::children(&self.syntax)
3346 }
3347 #[inline]
3348 pub fn path(&self) -> Option<Path> {
3349 support::child(&self.syntax)
3350 }
3351 #[inline]
3352 pub fn ty(&self) -> Option<Type> {
3353 support::child(&self.syntax)
3354 }
3355 #[inline]
3356 pub fn as_token(&self) -> Option<SyntaxToken> {
3357 support::token(&self.syntax, SyntaxKind::AS_KW)
3358 }
3359 #[inline]
3360 pub fn create_token(&self) -> Option<SyntaxToken> {
3361 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3362 }
3363 #[inline]
3364 pub fn domain_token(&self) -> Option<SyntaxToken> {
3365 support::token(&self.syntax, SyntaxKind::DOMAIN_KW)
3366 }
3367}
3368
3369#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3370pub struct CreateEventTrigger {
3371 pub(crate) syntax: SyntaxNode,
3372}
3373impl CreateEventTrigger {
3374 #[inline]
3375 pub fn call_expr(&self) -> Option<CallExpr> {
3376 support::child(&self.syntax)
3377 }
3378 #[inline]
3379 pub fn event_trigger_when_clause(&self) -> Option<EventTriggerWhenClause> {
3380 support::child(&self.syntax)
3381 }
3382 #[inline]
3383 pub fn name(&self) -> Option<Name> {
3384 support::child(&self.syntax)
3385 }
3386 #[inline]
3387 pub fn name_ref(&self) -> Option<NameRef> {
3388 support::child(&self.syntax)
3389 }
3390 #[inline]
3391 pub fn create_token(&self) -> Option<SyntaxToken> {
3392 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3393 }
3394 #[inline]
3395 pub fn event_token(&self) -> Option<SyntaxToken> {
3396 support::token(&self.syntax, SyntaxKind::EVENT_KW)
3397 }
3398 #[inline]
3399 pub fn execute_token(&self) -> Option<SyntaxToken> {
3400 support::token(&self.syntax, SyntaxKind::EXECUTE_KW)
3401 }
3402 #[inline]
3403 pub fn function_token(&self) -> Option<SyntaxToken> {
3404 support::token(&self.syntax, SyntaxKind::FUNCTION_KW)
3405 }
3406 #[inline]
3407 pub fn on_token(&self) -> Option<SyntaxToken> {
3408 support::token(&self.syntax, SyntaxKind::ON_KW)
3409 }
3410 #[inline]
3411 pub fn procedure_token(&self) -> Option<SyntaxToken> {
3412 support::token(&self.syntax, SyntaxKind::PROCEDURE_KW)
3413 }
3414 #[inline]
3415 pub fn trigger_token(&self) -> Option<SyntaxToken> {
3416 support::token(&self.syntax, SyntaxKind::TRIGGER_KW)
3417 }
3418}
3419
3420#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3421pub struct CreateExtension {
3422 pub(crate) syntax: SyntaxNode,
3423}
3424impl CreateExtension {
3425 #[inline]
3426 pub fn if_not_exists(&self) -> Option<IfNotExists> {
3427 support::child(&self.syntax)
3428 }
3429 #[inline]
3430 pub fn name(&self) -> Option<Name> {
3431 support::child(&self.syntax)
3432 }
3433 #[inline]
3434 pub fn create_token(&self) -> Option<SyntaxToken> {
3435 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3436 }
3437 #[inline]
3438 pub fn extension_token(&self) -> Option<SyntaxToken> {
3439 support::token(&self.syntax, SyntaxKind::EXTENSION_KW)
3440 }
3441}
3442
3443#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3444pub struct CreateForeignDataWrapper {
3445 pub(crate) syntax: SyntaxNode,
3446}
3447impl CreateForeignDataWrapper {
3448 #[inline]
3449 pub fn alter_option_list(&self) -> Option<AlterOptionList> {
3450 support::child(&self.syntax)
3451 }
3452 #[inline]
3453 pub fn fdw_option_list(&self) -> Option<FdwOptionList> {
3454 support::child(&self.syntax)
3455 }
3456 #[inline]
3457 pub fn name(&self) -> Option<Name> {
3458 support::child(&self.syntax)
3459 }
3460 #[inline]
3461 pub fn create_token(&self) -> Option<SyntaxToken> {
3462 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3463 }
3464 #[inline]
3465 pub fn data_token(&self) -> Option<SyntaxToken> {
3466 support::token(&self.syntax, SyntaxKind::DATA_KW)
3467 }
3468 #[inline]
3469 pub fn foreign_token(&self) -> Option<SyntaxToken> {
3470 support::token(&self.syntax, SyntaxKind::FOREIGN_KW)
3471 }
3472 #[inline]
3473 pub fn wrapper_token(&self) -> Option<SyntaxToken> {
3474 support::token(&self.syntax, SyntaxKind::WRAPPER_KW)
3475 }
3476}
3477
3478#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3479pub struct CreateForeignTable {
3480 pub(crate) syntax: SyntaxNode,
3481}
3482impl CreateForeignTable {
3483 #[inline]
3484 pub fn alter_option_list(&self) -> Option<AlterOptionList> {
3485 support::child(&self.syntax)
3486 }
3487 #[inline]
3488 pub fn if_not_exists(&self) -> Option<IfNotExists> {
3489 support::child(&self.syntax)
3490 }
3491 #[inline]
3492 pub fn inherits(&self) -> Option<Inherits> {
3493 support::child(&self.syntax)
3494 }
3495 #[inline]
3496 pub fn name_ref(&self) -> Option<NameRef> {
3497 support::child(&self.syntax)
3498 }
3499 #[inline]
3500 pub fn partition_of(&self) -> Option<PartitionOf> {
3501 support::child(&self.syntax)
3502 }
3503 #[inline]
3504 pub fn partition_type(&self) -> Option<PartitionType> {
3505 support::child(&self.syntax)
3506 }
3507 #[inline]
3508 pub fn path(&self) -> Option<Path> {
3509 support::child(&self.syntax)
3510 }
3511 #[inline]
3512 pub fn table_arg_list(&self) -> Option<TableArgList> {
3513 support::child(&self.syntax)
3514 }
3515 #[inline]
3516 pub fn create_token(&self) -> Option<SyntaxToken> {
3517 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3518 }
3519 #[inline]
3520 pub fn foreign_token(&self) -> Option<SyntaxToken> {
3521 support::token(&self.syntax, SyntaxKind::FOREIGN_KW)
3522 }
3523 #[inline]
3524 pub fn server_token(&self) -> Option<SyntaxToken> {
3525 support::token(&self.syntax, SyntaxKind::SERVER_KW)
3526 }
3527 #[inline]
3528 pub fn table_token(&self) -> Option<SyntaxToken> {
3529 support::token(&self.syntax, SyntaxKind::TABLE_KW)
3530 }
3531}
3532
3533#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3534pub struct CreateFunction {
3535 pub(crate) syntax: SyntaxNode,
3536}
3537impl CreateFunction {
3538 #[inline]
3539 pub fn option_list(&self) -> Option<FuncOptionList> {
3540 support::child(&self.syntax)
3541 }
3542 #[inline]
3543 pub fn or_replace(&self) -> Option<OrReplace> {
3544 support::child(&self.syntax)
3545 }
3546 #[inline]
3547 pub fn param_list(&self) -> Option<ParamList> {
3548 support::child(&self.syntax)
3549 }
3550 #[inline]
3551 pub fn path(&self) -> Option<Path> {
3552 support::child(&self.syntax)
3553 }
3554 #[inline]
3555 pub fn ret_type(&self) -> Option<RetType> {
3556 support::child(&self.syntax)
3557 }
3558 #[inline]
3559 pub fn create_token(&self) -> Option<SyntaxToken> {
3560 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3561 }
3562 #[inline]
3563 pub fn function_token(&self) -> Option<SyntaxToken> {
3564 support::token(&self.syntax, SyntaxKind::FUNCTION_KW)
3565 }
3566}
3567
3568#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3569pub struct CreateGroup {
3570 pub(crate) syntax: SyntaxNode,
3571}
3572impl CreateGroup {
3573 #[inline]
3574 pub fn name(&self) -> Option<Name> {
3575 support::child(&self.syntax)
3576 }
3577 #[inline]
3578 pub fn role_option_list(&self) -> Option<RoleOptionList> {
3579 support::child(&self.syntax)
3580 }
3581 #[inline]
3582 pub fn create_token(&self) -> Option<SyntaxToken> {
3583 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3584 }
3585 #[inline]
3586 pub fn group_token(&self) -> Option<SyntaxToken> {
3587 support::token(&self.syntax, SyntaxKind::GROUP_KW)
3588 }
3589}
3590
3591#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3592pub struct CreateIndex {
3593 pub(crate) syntax: SyntaxNode,
3594}
3595impl CreateIndex {
3596 #[inline]
3597 pub fn constraint_include_clause(&self) -> Option<ConstraintIncludeClause> {
3598 support::child(&self.syntax)
3599 }
3600 #[inline]
3601 pub fn if_not_exists(&self) -> Option<IfNotExists> {
3602 support::child(&self.syntax)
3603 }
3604 #[inline]
3605 pub fn name(&self) -> Option<Name> {
3606 support::child(&self.syntax)
3607 }
3608 #[inline]
3609 pub fn nulls_distinct(&self) -> Option<NullsDistinct> {
3610 support::child(&self.syntax)
3611 }
3612 #[inline]
3613 pub fn nulls_not_distinct(&self) -> Option<NullsNotDistinct> {
3614 support::child(&self.syntax)
3615 }
3616 #[inline]
3617 pub fn partition_item_list(&self) -> Option<PartitionItemList> {
3618 support::child(&self.syntax)
3619 }
3620 #[inline]
3621 pub fn relation_name(&self) -> Option<RelationName> {
3622 support::child(&self.syntax)
3623 }
3624 #[inline]
3625 pub fn tablespace(&self) -> Option<Tablespace> {
3626 support::child(&self.syntax)
3627 }
3628 #[inline]
3629 pub fn using_method(&self) -> Option<UsingMethod> {
3630 support::child(&self.syntax)
3631 }
3632 #[inline]
3633 pub fn where_clause(&self) -> Option<WhereClause> {
3634 support::child(&self.syntax)
3635 }
3636 #[inline]
3637 pub fn with_params(&self) -> Option<WithParams> {
3638 support::child(&self.syntax)
3639 }
3640 #[inline]
3641 pub fn concurrently_token(&self) -> Option<SyntaxToken> {
3642 support::token(&self.syntax, SyntaxKind::CONCURRENTLY_KW)
3643 }
3644 #[inline]
3645 pub fn create_token(&self) -> Option<SyntaxToken> {
3646 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3647 }
3648 #[inline]
3649 pub fn index_token(&self) -> Option<SyntaxToken> {
3650 support::token(&self.syntax, SyntaxKind::INDEX_KW)
3651 }
3652 #[inline]
3653 pub fn on_token(&self) -> Option<SyntaxToken> {
3654 support::token(&self.syntax, SyntaxKind::ON_KW)
3655 }
3656 #[inline]
3657 pub fn unique_token(&self) -> Option<SyntaxToken> {
3658 support::token(&self.syntax, SyntaxKind::UNIQUE_KW)
3659 }
3660}
3661
3662#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3663pub struct CreateLanguage {
3664 pub(crate) syntax: SyntaxNode,
3665}
3666impl CreateLanguage {
3667 #[inline]
3668 pub fn name(&self) -> Option<Name> {
3669 support::child(&self.syntax)
3670 }
3671 #[inline]
3672 pub fn or_replace(&self) -> Option<OrReplace> {
3673 support::child(&self.syntax)
3674 }
3675 #[inline]
3676 pub fn path(&self) -> Option<Path> {
3677 support::child(&self.syntax)
3678 }
3679 #[inline]
3680 pub fn create_token(&self) -> Option<SyntaxToken> {
3681 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3682 }
3683 #[inline]
3684 pub fn handler_token(&self) -> Option<SyntaxToken> {
3685 support::token(&self.syntax, SyntaxKind::HANDLER_KW)
3686 }
3687 #[inline]
3688 pub fn inline_token(&self) -> Option<SyntaxToken> {
3689 support::token(&self.syntax, SyntaxKind::INLINE_KW)
3690 }
3691 #[inline]
3692 pub fn language_token(&self) -> Option<SyntaxToken> {
3693 support::token(&self.syntax, SyntaxKind::LANGUAGE_KW)
3694 }
3695 #[inline]
3696 pub fn procedural_token(&self) -> Option<SyntaxToken> {
3697 support::token(&self.syntax, SyntaxKind::PROCEDURAL_KW)
3698 }
3699 #[inline]
3700 pub fn trusted_token(&self) -> Option<SyntaxToken> {
3701 support::token(&self.syntax, SyntaxKind::TRUSTED_KW)
3702 }
3703 #[inline]
3704 pub fn validator_token(&self) -> Option<SyntaxToken> {
3705 support::token(&self.syntax, SyntaxKind::VALIDATOR_KW)
3706 }
3707}
3708
3709#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3710pub struct CreateMaterializedView {
3711 pub(crate) syntax: SyntaxNode,
3712}
3713impl CreateMaterializedView {
3714 #[inline]
3715 pub fn column_list(&self) -> Option<ColumnList> {
3716 support::child(&self.syntax)
3717 }
3718 #[inline]
3719 pub fn if_not_exists(&self) -> Option<IfNotExists> {
3720 support::child(&self.syntax)
3721 }
3722 #[inline]
3723 pub fn path(&self) -> Option<Path> {
3724 support::child(&self.syntax)
3725 }
3726 #[inline]
3727 pub fn query(&self) -> Option<SelectVariant> {
3728 support::child(&self.syntax)
3729 }
3730 #[inline]
3731 pub fn tablespace(&self) -> Option<Tablespace> {
3732 support::child(&self.syntax)
3733 }
3734 #[inline]
3735 pub fn using_method(&self) -> Option<UsingMethod> {
3736 support::child(&self.syntax)
3737 }
3738 #[inline]
3739 pub fn with_data(&self) -> Option<WithData> {
3740 support::child(&self.syntax)
3741 }
3742 #[inline]
3743 pub fn with_no_data(&self) -> Option<WithNoData> {
3744 support::child(&self.syntax)
3745 }
3746 #[inline]
3747 pub fn with_params(&self) -> Option<WithParams> {
3748 support::child(&self.syntax)
3749 }
3750 #[inline]
3751 pub fn as_token(&self) -> Option<SyntaxToken> {
3752 support::token(&self.syntax, SyntaxKind::AS_KW)
3753 }
3754 #[inline]
3755 pub fn create_token(&self) -> Option<SyntaxToken> {
3756 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3757 }
3758 #[inline]
3759 pub fn materialized_token(&self) -> Option<SyntaxToken> {
3760 support::token(&self.syntax, SyntaxKind::MATERIALIZED_KW)
3761 }
3762 #[inline]
3763 pub fn view_token(&self) -> Option<SyntaxToken> {
3764 support::token(&self.syntax, SyntaxKind::VIEW_KW)
3765 }
3766}
3767
3768#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3769pub struct CreateOperator {
3770 pub(crate) syntax: SyntaxNode,
3771}
3772impl CreateOperator {
3773 #[inline]
3774 pub fn attribute_list(&self) -> Option<AttributeList> {
3775 support::child(&self.syntax)
3776 }
3777 #[inline]
3778 pub fn op(&self) -> Option<Op> {
3779 support::child(&self.syntax)
3780 }
3781 #[inline]
3782 pub fn path(&self) -> Option<Path> {
3783 support::child(&self.syntax)
3784 }
3785 #[inline]
3786 pub fn create_token(&self) -> Option<SyntaxToken> {
3787 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3788 }
3789 #[inline]
3790 pub fn operator_token(&self) -> Option<SyntaxToken> {
3791 support::token(&self.syntax, SyntaxKind::OPERATOR_KW)
3792 }
3793}
3794
3795#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3796pub struct CreateOperatorClass {
3797 pub(crate) syntax: SyntaxNode,
3798}
3799impl CreateOperatorClass {
3800 #[inline]
3801 pub fn name_ref(&self) -> Option<NameRef> {
3802 support::child(&self.syntax)
3803 }
3804 #[inline]
3805 pub fn operator_class_option_list(&self) -> Option<OperatorClassOptionList> {
3806 support::child(&self.syntax)
3807 }
3808 #[inline]
3809 pub fn path(&self) -> Option<Path> {
3810 support::child(&self.syntax)
3811 }
3812 #[inline]
3813 pub fn ty(&self) -> Option<Type> {
3814 support::child(&self.syntax)
3815 }
3816 #[inline]
3817 pub fn as_token(&self) -> Option<SyntaxToken> {
3818 support::token(&self.syntax, SyntaxKind::AS_KW)
3819 }
3820 #[inline]
3821 pub fn class_token(&self) -> Option<SyntaxToken> {
3822 support::token(&self.syntax, SyntaxKind::CLASS_KW)
3823 }
3824 #[inline]
3825 pub fn create_token(&self) -> Option<SyntaxToken> {
3826 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3827 }
3828 #[inline]
3829 pub fn default_token(&self) -> Option<SyntaxToken> {
3830 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
3831 }
3832 #[inline]
3833 pub fn family_token(&self) -> Option<SyntaxToken> {
3834 support::token(&self.syntax, SyntaxKind::FAMILY_KW)
3835 }
3836 #[inline]
3837 pub fn for_token(&self) -> Option<SyntaxToken> {
3838 support::token(&self.syntax, SyntaxKind::FOR_KW)
3839 }
3840 #[inline]
3841 pub fn operator_token(&self) -> Option<SyntaxToken> {
3842 support::token(&self.syntax, SyntaxKind::OPERATOR_KW)
3843 }
3844 #[inline]
3845 pub fn type_token(&self) -> Option<SyntaxToken> {
3846 support::token(&self.syntax, SyntaxKind::TYPE_KW)
3847 }
3848 #[inline]
3849 pub fn using_token(&self) -> Option<SyntaxToken> {
3850 support::token(&self.syntax, SyntaxKind::USING_KW)
3851 }
3852}
3853
3854#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3855pub struct CreateOperatorFamily {
3856 pub(crate) syntax: SyntaxNode,
3857}
3858impl CreateOperatorFamily {
3859 #[inline]
3860 pub fn name_ref(&self) -> Option<NameRef> {
3861 support::child(&self.syntax)
3862 }
3863 #[inline]
3864 pub fn path(&self) -> Option<Path> {
3865 support::child(&self.syntax)
3866 }
3867 #[inline]
3868 pub fn create_token(&self) -> Option<SyntaxToken> {
3869 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3870 }
3871 #[inline]
3872 pub fn family_token(&self) -> Option<SyntaxToken> {
3873 support::token(&self.syntax, SyntaxKind::FAMILY_KW)
3874 }
3875 #[inline]
3876 pub fn operator_token(&self) -> Option<SyntaxToken> {
3877 support::token(&self.syntax, SyntaxKind::OPERATOR_KW)
3878 }
3879 #[inline]
3880 pub fn using_token(&self) -> Option<SyntaxToken> {
3881 support::token(&self.syntax, SyntaxKind::USING_KW)
3882 }
3883}
3884
3885#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3886pub struct CreatePolicy {
3887 pub(crate) syntax: SyntaxNode,
3888}
3889impl CreatePolicy {
3890 #[inline]
3891 pub fn expr(&self) -> Option<Expr> {
3892 support::child(&self.syntax)
3893 }
3894 #[inline]
3895 pub fn name(&self) -> Option<Name> {
3896 support::child(&self.syntax)
3897 }
3898 #[inline]
3899 pub fn on_table(&self) -> Option<OnTable> {
3900 support::child(&self.syntax)
3901 }
3902 #[inline]
3903 pub fn role_list(&self) -> Option<RoleList> {
3904 support::child(&self.syntax)
3905 }
3906 #[inline]
3907 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
3908 support::token(&self.syntax, SyntaxKind::L_PAREN)
3909 }
3910 #[inline]
3911 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
3912 support::token(&self.syntax, SyntaxKind::R_PAREN)
3913 }
3914 #[inline]
3915 pub fn all_token(&self) -> Option<SyntaxToken> {
3916 support::token(&self.syntax, SyntaxKind::ALL_KW)
3917 }
3918 #[inline]
3919 pub fn as_token(&self) -> Option<SyntaxToken> {
3920 support::token(&self.syntax, SyntaxKind::AS_KW)
3921 }
3922 #[inline]
3923 pub fn check_token(&self) -> Option<SyntaxToken> {
3924 support::token(&self.syntax, SyntaxKind::CHECK_KW)
3925 }
3926 #[inline]
3927 pub fn create_token(&self) -> Option<SyntaxToken> {
3928 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3929 }
3930 #[inline]
3931 pub fn delete_token(&self) -> Option<SyntaxToken> {
3932 support::token(&self.syntax, SyntaxKind::DELETE_KW)
3933 }
3934 #[inline]
3935 pub fn for_token(&self) -> Option<SyntaxToken> {
3936 support::token(&self.syntax, SyntaxKind::FOR_KW)
3937 }
3938 #[inline]
3939 pub fn ident_token(&self) -> Option<SyntaxToken> {
3940 support::token(&self.syntax, SyntaxKind::IDENT)
3941 }
3942 #[inline]
3943 pub fn insert_token(&self) -> Option<SyntaxToken> {
3944 support::token(&self.syntax, SyntaxKind::INSERT_KW)
3945 }
3946 #[inline]
3947 pub fn policy_token(&self) -> Option<SyntaxToken> {
3948 support::token(&self.syntax, SyntaxKind::POLICY_KW)
3949 }
3950 #[inline]
3951 pub fn select_token(&self) -> Option<SyntaxToken> {
3952 support::token(&self.syntax, SyntaxKind::SELECT_KW)
3953 }
3954 #[inline]
3955 pub fn to_token(&self) -> Option<SyntaxToken> {
3956 support::token(&self.syntax, SyntaxKind::TO_KW)
3957 }
3958 #[inline]
3959 pub fn update_token(&self) -> Option<SyntaxToken> {
3960 support::token(&self.syntax, SyntaxKind::UPDATE_KW)
3961 }
3962 #[inline]
3963 pub fn using_token(&self) -> Option<SyntaxToken> {
3964 support::token(&self.syntax, SyntaxKind::USING_KW)
3965 }
3966 #[inline]
3967 pub fn with_token(&self) -> Option<SyntaxToken> {
3968 support::token(&self.syntax, SyntaxKind::WITH_KW)
3969 }
3970}
3971
3972#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3973pub struct CreateProcedure {
3974 pub(crate) syntax: SyntaxNode,
3975}
3976impl CreateProcedure {
3977 #[inline]
3978 pub fn option_list(&self) -> Option<FuncOptionList> {
3979 support::child(&self.syntax)
3980 }
3981 #[inline]
3982 pub fn or_replace(&self) -> Option<OrReplace> {
3983 support::child(&self.syntax)
3984 }
3985 #[inline]
3986 pub fn param_list(&self) -> Option<ParamList> {
3987 support::child(&self.syntax)
3988 }
3989 #[inline]
3990 pub fn path(&self) -> Option<Path> {
3991 support::child(&self.syntax)
3992 }
3993 #[inline]
3994 pub fn create_token(&self) -> Option<SyntaxToken> {
3995 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3996 }
3997 #[inline]
3998 pub fn procedure_token(&self) -> Option<SyntaxToken> {
3999 support::token(&self.syntax, SyntaxKind::PROCEDURE_KW)
4000 }
4001}
4002
4003#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4004pub struct CreatePublication {
4005 pub(crate) syntax: SyntaxNode,
4006}
4007impl CreatePublication {
4008 #[inline]
4009 pub fn name(&self) -> Option<Name> {
4010 support::child(&self.syntax)
4011 }
4012 #[inline]
4013 pub fn publication_objects(&self) -> AstChildren<PublicationObject> {
4014 support::children(&self.syntax)
4015 }
4016 #[inline]
4017 pub fn with_params(&self) -> Option<WithParams> {
4018 support::child(&self.syntax)
4019 }
4020 #[inline]
4021 pub fn all_token(&self) -> Option<SyntaxToken> {
4022 support::token(&self.syntax, SyntaxKind::ALL_KW)
4023 }
4024 #[inline]
4025 pub fn create_token(&self) -> Option<SyntaxToken> {
4026 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4027 }
4028 #[inline]
4029 pub fn for_token(&self) -> Option<SyntaxToken> {
4030 support::token(&self.syntax, SyntaxKind::FOR_KW)
4031 }
4032 #[inline]
4033 pub fn publication_token(&self) -> Option<SyntaxToken> {
4034 support::token(&self.syntax, SyntaxKind::PUBLICATION_KW)
4035 }
4036 #[inline]
4037 pub fn tables_token(&self) -> Option<SyntaxToken> {
4038 support::token(&self.syntax, SyntaxKind::TABLES_KW)
4039 }
4040}
4041
4042#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4043pub struct CreateRole {
4044 pub(crate) syntax: SyntaxNode,
4045}
4046impl CreateRole {
4047 #[inline]
4048 pub fn name(&self) -> Option<Name> {
4049 support::child(&self.syntax)
4050 }
4051 #[inline]
4052 pub fn role_option_list(&self) -> Option<RoleOptionList> {
4053 support::child(&self.syntax)
4054 }
4055 #[inline]
4056 pub fn create_token(&self) -> Option<SyntaxToken> {
4057 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4058 }
4059 #[inline]
4060 pub fn role_token(&self) -> Option<SyntaxToken> {
4061 support::token(&self.syntax, SyntaxKind::ROLE_KW)
4062 }
4063}
4064
4065#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4066pub struct CreateRule {
4067 pub(crate) syntax: SyntaxNode,
4068}
4069impl CreateRule {
4070 #[inline]
4071 pub fn name(&self) -> Option<Name> {
4072 support::child(&self.syntax)
4073 }
4074 #[inline]
4075 pub fn or_replace(&self) -> Option<OrReplace> {
4076 support::child(&self.syntax)
4077 }
4078 #[inline]
4079 pub fn path(&self) -> Option<Path> {
4080 support::child(&self.syntax)
4081 }
4082 #[inline]
4083 pub fn stmt(&self) -> Option<Stmt> {
4084 support::child(&self.syntax)
4085 }
4086 #[inline]
4087 pub fn stmts(&self) -> AstChildren<Stmt> {
4088 support::children(&self.syntax)
4089 }
4090 #[inline]
4091 pub fn where_clause(&self) -> Option<WhereClause> {
4092 support::child(&self.syntax)
4093 }
4094 #[inline]
4095 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
4096 support::token(&self.syntax, SyntaxKind::L_PAREN)
4097 }
4098 #[inline]
4099 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
4100 support::token(&self.syntax, SyntaxKind::R_PAREN)
4101 }
4102 #[inline]
4103 pub fn also_token(&self) -> Option<SyntaxToken> {
4104 support::token(&self.syntax, SyntaxKind::ALSO_KW)
4105 }
4106 #[inline]
4107 pub fn as_token(&self) -> Option<SyntaxToken> {
4108 support::token(&self.syntax, SyntaxKind::AS_KW)
4109 }
4110 #[inline]
4111 pub fn create_token(&self) -> Option<SyntaxToken> {
4112 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4113 }
4114 #[inline]
4115 pub fn delete_token(&self) -> Option<SyntaxToken> {
4116 support::token(&self.syntax, SyntaxKind::DELETE_KW)
4117 }
4118 #[inline]
4119 pub fn do_token(&self) -> Option<SyntaxToken> {
4120 support::token(&self.syntax, SyntaxKind::DO_KW)
4121 }
4122 #[inline]
4123 pub fn ident_token(&self) -> Option<SyntaxToken> {
4124 support::token(&self.syntax, SyntaxKind::IDENT)
4125 }
4126 #[inline]
4127 pub fn insert_token(&self) -> Option<SyntaxToken> {
4128 support::token(&self.syntax, SyntaxKind::INSERT_KW)
4129 }
4130 #[inline]
4131 pub fn instead_token(&self) -> Option<SyntaxToken> {
4132 support::token(&self.syntax, SyntaxKind::INSTEAD_KW)
4133 }
4134 #[inline]
4135 pub fn nothing_token(&self) -> Option<SyntaxToken> {
4136 support::token(&self.syntax, SyntaxKind::NOTHING_KW)
4137 }
4138 #[inline]
4139 pub fn on_token(&self) -> Option<SyntaxToken> {
4140 support::token(&self.syntax, SyntaxKind::ON_KW)
4141 }
4142 #[inline]
4143 pub fn rule_token(&self) -> Option<SyntaxToken> {
4144 support::token(&self.syntax, SyntaxKind::RULE_KW)
4145 }
4146 #[inline]
4147 pub fn select_token(&self) -> Option<SyntaxToken> {
4148 support::token(&self.syntax, SyntaxKind::SELECT_KW)
4149 }
4150 #[inline]
4151 pub fn to_token(&self) -> Option<SyntaxToken> {
4152 support::token(&self.syntax, SyntaxKind::TO_KW)
4153 }
4154 #[inline]
4155 pub fn update_token(&self) -> Option<SyntaxToken> {
4156 support::token(&self.syntax, SyntaxKind::UPDATE_KW)
4157 }
4158}
4159
4160#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4161pub struct CreateSchema {
4162 pub(crate) syntax: SyntaxNode,
4163}
4164impl CreateSchema {
4165 #[inline]
4166 pub fn if_not_exists(&self) -> Option<IfNotExists> {
4167 support::child(&self.syntax)
4168 }
4169 #[inline]
4170 pub fn name(&self) -> Option<Name> {
4171 support::child(&self.syntax)
4172 }
4173 #[inline]
4174 pub fn schema_authorization(&self) -> Option<SchemaAuthorization> {
4175 support::child(&self.syntax)
4176 }
4177 #[inline]
4178 pub fn schema_elements(&self) -> AstChildren<SchemaElement> {
4179 support::children(&self.syntax)
4180 }
4181 #[inline]
4182 pub fn create_token(&self) -> Option<SyntaxToken> {
4183 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4184 }
4185 #[inline]
4186 pub fn schema_token(&self) -> Option<SyntaxToken> {
4187 support::token(&self.syntax, SyntaxKind::SCHEMA_KW)
4188 }
4189}
4190
4191#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4192pub struct CreateSequence {
4193 pub(crate) syntax: SyntaxNode,
4194}
4195impl CreateSequence {
4196 #[inline]
4197 pub fn if_not_exists(&self) -> Option<IfNotExists> {
4198 support::child(&self.syntax)
4199 }
4200 #[inline]
4201 pub fn path(&self) -> Option<Path> {
4202 support::child(&self.syntax)
4203 }
4204 #[inline]
4205 pub fn sequence_options(&self) -> AstChildren<SequenceOption> {
4206 support::children(&self.syntax)
4207 }
4208 #[inline]
4209 pub fn create_token(&self) -> Option<SyntaxToken> {
4210 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4211 }
4212 #[inline]
4213 pub fn sequence_token(&self) -> Option<SyntaxToken> {
4214 support::token(&self.syntax, SyntaxKind::SEQUENCE_KW)
4215 }
4216 #[inline]
4217 pub fn temp_token(&self) -> Option<SyntaxToken> {
4218 support::token(&self.syntax, SyntaxKind::TEMP_KW)
4219 }
4220 #[inline]
4221 pub fn temporary_token(&self) -> Option<SyntaxToken> {
4222 support::token(&self.syntax, SyntaxKind::TEMPORARY_KW)
4223 }
4224 #[inline]
4225 pub fn unlogged_token(&self) -> Option<SyntaxToken> {
4226 support::token(&self.syntax, SyntaxKind::UNLOGGED_KW)
4227 }
4228}
4229
4230#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4231pub struct CreateServer {
4232 pub(crate) syntax: SyntaxNode,
4233}
4234impl CreateServer {
4235 #[inline]
4236 pub fn alter_option_list(&self) -> Option<AlterOptionList> {
4237 support::child(&self.syntax)
4238 }
4239 #[inline]
4240 pub fn if_not_exists(&self) -> Option<IfNotExists> {
4241 support::child(&self.syntax)
4242 }
4243 #[inline]
4244 pub fn literal(&self) -> Option<Literal> {
4245 support::child(&self.syntax)
4246 }
4247 #[inline]
4248 pub fn name(&self) -> Option<Name> {
4249 support::child(&self.syntax)
4250 }
4251 #[inline]
4252 pub fn name_ref(&self) -> Option<NameRef> {
4253 support::child(&self.syntax)
4254 }
4255 #[inline]
4256 pub fn create_token(&self) -> Option<SyntaxToken> {
4257 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4258 }
4259 #[inline]
4260 pub fn data_token(&self) -> Option<SyntaxToken> {
4261 support::token(&self.syntax, SyntaxKind::DATA_KW)
4262 }
4263 #[inline]
4264 pub fn foreign_token(&self) -> Option<SyntaxToken> {
4265 support::token(&self.syntax, SyntaxKind::FOREIGN_KW)
4266 }
4267 #[inline]
4268 pub fn server_token(&self) -> Option<SyntaxToken> {
4269 support::token(&self.syntax, SyntaxKind::SERVER_KW)
4270 }
4271 #[inline]
4272 pub fn type_token(&self) -> Option<SyntaxToken> {
4273 support::token(&self.syntax, SyntaxKind::TYPE_KW)
4274 }
4275 #[inline]
4276 pub fn version_token(&self) -> Option<SyntaxToken> {
4277 support::token(&self.syntax, SyntaxKind::VERSION_KW)
4278 }
4279 #[inline]
4280 pub fn wrapper_token(&self) -> Option<SyntaxToken> {
4281 support::token(&self.syntax, SyntaxKind::WRAPPER_KW)
4282 }
4283}
4284
4285#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4286pub struct CreateStatistics {
4287 pub(crate) syntax: SyntaxNode,
4288}
4289impl CreateStatistics {
4290 #[inline]
4291 pub fn from_table(&self) -> Option<FromTable> {
4292 support::child(&self.syntax)
4293 }
4294 #[inline]
4295 pub fn name_refs(&self) -> AstChildren<NameRef> {
4296 support::children(&self.syntax)
4297 }
4298 #[inline]
4299 pub fn path(&self) -> Option<Path> {
4300 support::child(&self.syntax)
4301 }
4302 #[inline]
4303 pub fn create_token(&self) -> Option<SyntaxToken> {
4304 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4305 }
4306 #[inline]
4307 pub fn on_token(&self) -> Option<SyntaxToken> {
4308 support::token(&self.syntax, SyntaxKind::ON_KW)
4309 }
4310 #[inline]
4311 pub fn statistics_token(&self) -> Option<SyntaxToken> {
4312 support::token(&self.syntax, SyntaxKind::STATISTICS_KW)
4313 }
4314}
4315
4316#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4317pub struct CreateSubscription {
4318 pub(crate) syntax: SyntaxNode,
4319}
4320impl CreateSubscription {
4321 #[inline]
4322 pub fn literal(&self) -> Option<Literal> {
4323 support::child(&self.syntax)
4324 }
4325 #[inline]
4326 pub fn name(&self) -> Option<Name> {
4327 support::child(&self.syntax)
4328 }
4329 #[inline]
4330 pub fn name_refs(&self) -> AstChildren<NameRef> {
4331 support::children(&self.syntax)
4332 }
4333 #[inline]
4334 pub fn with_params(&self) -> Option<WithParams> {
4335 support::child(&self.syntax)
4336 }
4337 #[inline]
4338 pub fn connection_token(&self) -> Option<SyntaxToken> {
4339 support::token(&self.syntax, SyntaxKind::CONNECTION_KW)
4340 }
4341 #[inline]
4342 pub fn create_token(&self) -> Option<SyntaxToken> {
4343 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4344 }
4345 #[inline]
4346 pub fn publication_token(&self) -> Option<SyntaxToken> {
4347 support::token(&self.syntax, SyntaxKind::PUBLICATION_KW)
4348 }
4349 #[inline]
4350 pub fn subscription_token(&self) -> Option<SyntaxToken> {
4351 support::token(&self.syntax, SyntaxKind::SUBSCRIPTION_KW)
4352 }
4353}
4354
4355#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4356pub struct CreateTable {
4357 pub(crate) syntax: SyntaxNode,
4358}
4359impl CreateTable {
4360 #[inline]
4361 pub fn if_not_exists(&self) -> Option<IfNotExists> {
4362 support::child(&self.syntax)
4363 }
4364 #[inline]
4365 pub fn inherits(&self) -> Option<Inherits> {
4366 support::child(&self.syntax)
4367 }
4368 #[inline]
4369 pub fn of_type(&self) -> Option<OfType> {
4370 support::child(&self.syntax)
4371 }
4372 #[inline]
4373 pub fn on_commit(&self) -> Option<OnCommit> {
4374 support::child(&self.syntax)
4375 }
4376 #[inline]
4377 pub fn partition_by(&self) -> Option<PartitionBy> {
4378 support::child(&self.syntax)
4379 }
4380 #[inline]
4381 pub fn partition_of(&self) -> Option<PartitionOf> {
4382 support::child(&self.syntax)
4383 }
4384 #[inline]
4385 pub fn path(&self) -> Option<Path> {
4386 support::child(&self.syntax)
4387 }
4388 #[inline]
4389 pub fn table_arg_list(&self) -> Option<TableArgList> {
4390 support::child(&self.syntax)
4391 }
4392 #[inline]
4393 pub fn tablespace(&self) -> Option<Tablespace> {
4394 support::child(&self.syntax)
4395 }
4396 #[inline]
4397 pub fn using_method(&self) -> Option<UsingMethod> {
4398 support::child(&self.syntax)
4399 }
4400 #[inline]
4401 pub fn with_params(&self) -> Option<WithParams> {
4402 support::child(&self.syntax)
4403 }
4404 #[inline]
4405 pub fn without_oids(&self) -> Option<WithoutOids> {
4406 support::child(&self.syntax)
4407 }
4408 #[inline]
4409 pub fn create_token(&self) -> Option<SyntaxToken> {
4410 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4411 }
4412 #[inline]
4413 pub fn global_token(&self) -> Option<SyntaxToken> {
4414 support::token(&self.syntax, SyntaxKind::GLOBAL_KW)
4415 }
4416 #[inline]
4417 pub fn local_token(&self) -> Option<SyntaxToken> {
4418 support::token(&self.syntax, SyntaxKind::LOCAL_KW)
4419 }
4420 #[inline]
4421 pub fn table_token(&self) -> Option<SyntaxToken> {
4422 support::token(&self.syntax, SyntaxKind::TABLE_KW)
4423 }
4424 #[inline]
4425 pub fn temp_token(&self) -> Option<SyntaxToken> {
4426 support::token(&self.syntax, SyntaxKind::TEMP_KW)
4427 }
4428 #[inline]
4429 pub fn temporary_token(&self) -> Option<SyntaxToken> {
4430 support::token(&self.syntax, SyntaxKind::TEMPORARY_KW)
4431 }
4432 #[inline]
4433 pub fn unlogged_token(&self) -> Option<SyntaxToken> {
4434 support::token(&self.syntax, SyntaxKind::UNLOGGED_KW)
4435 }
4436}
4437
4438#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4439pub struct CreateTableAs {
4440 pub(crate) syntax: SyntaxNode,
4441}
4442impl CreateTableAs {
4443 #[inline]
4444 pub fn if_not_exists(&self) -> Option<IfNotExists> {
4445 support::child(&self.syntax)
4446 }
4447 #[inline]
4448 pub fn on_commit(&self) -> Option<OnCommit> {
4449 support::child(&self.syntax)
4450 }
4451 #[inline]
4452 pub fn path(&self) -> Option<Path> {
4453 support::child(&self.syntax)
4454 }
4455 #[inline]
4456 pub fn query(&self) -> Option<SelectVariant> {
4457 support::child(&self.syntax)
4458 }
4459 #[inline]
4460 pub fn tablespace(&self) -> Option<Tablespace> {
4461 support::child(&self.syntax)
4462 }
4463 #[inline]
4464 pub fn using_method(&self) -> Option<UsingMethod> {
4465 support::child(&self.syntax)
4466 }
4467 #[inline]
4468 pub fn with_data(&self) -> Option<WithData> {
4469 support::child(&self.syntax)
4470 }
4471 #[inline]
4472 pub fn with_no_data(&self) -> Option<WithNoData> {
4473 support::child(&self.syntax)
4474 }
4475 #[inline]
4476 pub fn with_params(&self) -> Option<WithParams> {
4477 support::child(&self.syntax)
4478 }
4479 #[inline]
4480 pub fn without_oids(&self) -> Option<WithoutOids> {
4481 support::child(&self.syntax)
4482 }
4483 #[inline]
4484 pub fn as_token(&self) -> Option<SyntaxToken> {
4485 support::token(&self.syntax, SyntaxKind::AS_KW)
4486 }
4487 #[inline]
4488 pub fn create_token(&self) -> Option<SyntaxToken> {
4489 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4490 }
4491 #[inline]
4492 pub fn global_token(&self) -> Option<SyntaxToken> {
4493 support::token(&self.syntax, SyntaxKind::GLOBAL_KW)
4494 }
4495 #[inline]
4496 pub fn local_token(&self) -> Option<SyntaxToken> {
4497 support::token(&self.syntax, SyntaxKind::LOCAL_KW)
4498 }
4499 #[inline]
4500 pub fn table_token(&self) -> Option<SyntaxToken> {
4501 support::token(&self.syntax, SyntaxKind::TABLE_KW)
4502 }
4503 #[inline]
4504 pub fn temp_token(&self) -> Option<SyntaxToken> {
4505 support::token(&self.syntax, SyntaxKind::TEMP_KW)
4506 }
4507 #[inline]
4508 pub fn temporary_token(&self) -> Option<SyntaxToken> {
4509 support::token(&self.syntax, SyntaxKind::TEMPORARY_KW)
4510 }
4511 #[inline]
4512 pub fn unlogged_token(&self) -> Option<SyntaxToken> {
4513 support::token(&self.syntax, SyntaxKind::UNLOGGED_KW)
4514 }
4515}
4516
4517#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4518pub struct CreateTablespace {
4519 pub(crate) syntax: SyntaxNode,
4520}
4521impl CreateTablespace {
4522 #[inline]
4523 pub fn literal(&self) -> Option<Literal> {
4524 support::child(&self.syntax)
4525 }
4526 #[inline]
4527 pub fn name(&self) -> Option<Name> {
4528 support::child(&self.syntax)
4529 }
4530 #[inline]
4531 pub fn role(&self) -> Option<Role> {
4532 support::child(&self.syntax)
4533 }
4534 #[inline]
4535 pub fn with_params(&self) -> Option<WithParams> {
4536 support::child(&self.syntax)
4537 }
4538 #[inline]
4539 pub fn create_token(&self) -> Option<SyntaxToken> {
4540 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4541 }
4542 #[inline]
4543 pub fn location_token(&self) -> Option<SyntaxToken> {
4544 support::token(&self.syntax, SyntaxKind::LOCATION_KW)
4545 }
4546 #[inline]
4547 pub fn owner_token(&self) -> Option<SyntaxToken> {
4548 support::token(&self.syntax, SyntaxKind::OWNER_KW)
4549 }
4550 #[inline]
4551 pub fn tablespace_token(&self) -> Option<SyntaxToken> {
4552 support::token(&self.syntax, SyntaxKind::TABLESPACE_KW)
4553 }
4554}
4555
4556#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4557pub struct CreateTextSearchConfiguration {
4558 pub(crate) syntax: SyntaxNode,
4559}
4560impl CreateTextSearchConfiguration {
4561 #[inline]
4562 pub fn attribute_list(&self) -> Option<AttributeList> {
4563 support::child(&self.syntax)
4564 }
4565 #[inline]
4566 pub fn path(&self) -> Option<Path> {
4567 support::child(&self.syntax)
4568 }
4569 #[inline]
4570 pub fn configuration_token(&self) -> Option<SyntaxToken> {
4571 support::token(&self.syntax, SyntaxKind::CONFIGURATION_KW)
4572 }
4573 #[inline]
4574 pub fn create_token(&self) -> Option<SyntaxToken> {
4575 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4576 }
4577 #[inline]
4578 pub fn search_token(&self) -> Option<SyntaxToken> {
4579 support::token(&self.syntax, SyntaxKind::SEARCH_KW)
4580 }
4581 #[inline]
4582 pub fn text_token(&self) -> Option<SyntaxToken> {
4583 support::token(&self.syntax, SyntaxKind::TEXT_KW)
4584 }
4585}
4586
4587#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4588pub struct CreateTextSearchDictionary {
4589 pub(crate) syntax: SyntaxNode,
4590}
4591impl CreateTextSearchDictionary {
4592 #[inline]
4593 pub fn attribute_list(&self) -> Option<AttributeList> {
4594 support::child(&self.syntax)
4595 }
4596 #[inline]
4597 pub fn path(&self) -> Option<Path> {
4598 support::child(&self.syntax)
4599 }
4600 #[inline]
4601 pub fn create_token(&self) -> Option<SyntaxToken> {
4602 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4603 }
4604 #[inline]
4605 pub fn dictionary_token(&self) -> Option<SyntaxToken> {
4606 support::token(&self.syntax, SyntaxKind::DICTIONARY_KW)
4607 }
4608 #[inline]
4609 pub fn search_token(&self) -> Option<SyntaxToken> {
4610 support::token(&self.syntax, SyntaxKind::SEARCH_KW)
4611 }
4612 #[inline]
4613 pub fn text_token(&self) -> Option<SyntaxToken> {
4614 support::token(&self.syntax, SyntaxKind::TEXT_KW)
4615 }
4616}
4617
4618#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4619pub struct CreateTextSearchParser {
4620 pub(crate) syntax: SyntaxNode,
4621}
4622impl CreateTextSearchParser {
4623 #[inline]
4624 pub fn attribute_list(&self) -> Option<AttributeList> {
4625 support::child(&self.syntax)
4626 }
4627 #[inline]
4628 pub fn path(&self) -> Option<Path> {
4629 support::child(&self.syntax)
4630 }
4631 #[inline]
4632 pub fn create_token(&self) -> Option<SyntaxToken> {
4633 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4634 }
4635 #[inline]
4636 pub fn parser_token(&self) -> Option<SyntaxToken> {
4637 support::token(&self.syntax, SyntaxKind::PARSER_KW)
4638 }
4639 #[inline]
4640 pub fn search_token(&self) -> Option<SyntaxToken> {
4641 support::token(&self.syntax, SyntaxKind::SEARCH_KW)
4642 }
4643 #[inline]
4644 pub fn text_token(&self) -> Option<SyntaxToken> {
4645 support::token(&self.syntax, SyntaxKind::TEXT_KW)
4646 }
4647}
4648
4649#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4650pub struct CreateTextSearchTemplate {
4651 pub(crate) syntax: SyntaxNode,
4652}
4653impl CreateTextSearchTemplate {
4654 #[inline]
4655 pub fn attribute_list(&self) -> Option<AttributeList> {
4656 support::child(&self.syntax)
4657 }
4658 #[inline]
4659 pub fn path(&self) -> Option<Path> {
4660 support::child(&self.syntax)
4661 }
4662 #[inline]
4663 pub fn create_token(&self) -> Option<SyntaxToken> {
4664 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4665 }
4666 #[inline]
4667 pub fn search_token(&self) -> Option<SyntaxToken> {
4668 support::token(&self.syntax, SyntaxKind::SEARCH_KW)
4669 }
4670 #[inline]
4671 pub fn template_token(&self) -> Option<SyntaxToken> {
4672 support::token(&self.syntax, SyntaxKind::TEMPLATE_KW)
4673 }
4674 #[inline]
4675 pub fn text_token(&self) -> Option<SyntaxToken> {
4676 support::token(&self.syntax, SyntaxKind::TEXT_KW)
4677 }
4678}
4679
4680#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4681pub struct CreateTransform {
4682 pub(crate) syntax: SyntaxNode,
4683}
4684impl CreateTransform {
4685 #[inline]
4686 pub fn from_func(&self) -> Option<TransformFromFunc> {
4687 support::child(&self.syntax)
4688 }
4689 #[inline]
4690 pub fn language(&self) -> Option<NameRef> {
4691 support::child(&self.syntax)
4692 }
4693 #[inline]
4694 pub fn or_replace(&self) -> Option<OrReplace> {
4695 support::child(&self.syntax)
4696 }
4697 #[inline]
4698 pub fn to_func(&self) -> Option<TransformToFunc> {
4699 support::child(&self.syntax)
4700 }
4701 #[inline]
4702 pub fn ty(&self) -> Option<Type> {
4703 support::child(&self.syntax)
4704 }
4705 #[inline]
4706 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
4707 support::token(&self.syntax, SyntaxKind::L_PAREN)
4708 }
4709 #[inline]
4710 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
4711 support::token(&self.syntax, SyntaxKind::R_PAREN)
4712 }
4713 #[inline]
4714 pub fn comma_token(&self) -> Option<SyntaxToken> {
4715 support::token(&self.syntax, SyntaxKind::COMMA)
4716 }
4717 #[inline]
4718 pub fn create_token(&self) -> Option<SyntaxToken> {
4719 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4720 }
4721 #[inline]
4722 pub fn for_token(&self) -> Option<SyntaxToken> {
4723 support::token(&self.syntax, SyntaxKind::FOR_KW)
4724 }
4725 #[inline]
4726 pub fn language_token(&self) -> Option<SyntaxToken> {
4727 support::token(&self.syntax, SyntaxKind::LANGUAGE_KW)
4728 }
4729 #[inline]
4730 pub fn transform_token(&self) -> Option<SyntaxToken> {
4731 support::token(&self.syntax, SyntaxKind::TRANSFORM_KW)
4732 }
4733}
4734
4735#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4736pub struct CreateTrigger {
4737 pub(crate) syntax: SyntaxNode,
4738}
4739impl CreateTrigger {
4740 #[inline]
4741 pub fn call_expr(&self) -> Option<CallExpr> {
4742 support::child(&self.syntax)
4743 }
4744 #[inline]
4745 pub fn deferrable_constraint_option(&self) -> Option<DeferrableConstraintOption> {
4746 support::child(&self.syntax)
4747 }
4748 #[inline]
4749 pub fn from_table(&self) -> Option<FromTable> {
4750 support::child(&self.syntax)
4751 }
4752 #[inline]
4753 pub fn initially_deferred_constraint_option(
4754 &self,
4755 ) -> Option<InitiallyDeferredConstraintOption> {
4756 support::child(&self.syntax)
4757 }
4758 #[inline]
4759 pub fn initially_immediate_constraint_option(
4760 &self,
4761 ) -> Option<InitiallyImmediateConstraintOption> {
4762 support::child(&self.syntax)
4763 }
4764 #[inline]
4765 pub fn name(&self) -> Option<Name> {
4766 support::child(&self.syntax)
4767 }
4768 #[inline]
4769 pub fn not_deferrable_constraint_option(&self) -> Option<NotDeferrableConstraintOption> {
4770 support::child(&self.syntax)
4771 }
4772 #[inline]
4773 pub fn on_table(&self) -> Option<OnTable> {
4774 support::child(&self.syntax)
4775 }
4776 #[inline]
4777 pub fn or_replace(&self) -> Option<OrReplace> {
4778 support::child(&self.syntax)
4779 }
4780 #[inline]
4781 pub fn referencing(&self) -> Option<Referencing> {
4782 support::child(&self.syntax)
4783 }
4784 #[inline]
4785 pub fn timing(&self) -> Option<Timing> {
4786 support::child(&self.syntax)
4787 }
4788 #[inline]
4789 pub fn trigger_event_list(&self) -> Option<TriggerEventList> {
4790 support::child(&self.syntax)
4791 }
4792 #[inline]
4793 pub fn when_condition(&self) -> Option<WhenCondition> {
4794 support::child(&self.syntax)
4795 }
4796 #[inline]
4797 pub fn constraint_token(&self) -> Option<SyntaxToken> {
4798 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
4799 }
4800 #[inline]
4801 pub fn create_token(&self) -> Option<SyntaxToken> {
4802 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4803 }
4804 #[inline]
4805 pub fn each_token(&self) -> Option<SyntaxToken> {
4806 support::token(&self.syntax, SyntaxKind::EACH_KW)
4807 }
4808 #[inline]
4809 pub fn execute_token(&self) -> Option<SyntaxToken> {
4810 support::token(&self.syntax, SyntaxKind::EXECUTE_KW)
4811 }
4812 #[inline]
4813 pub fn for_token(&self) -> Option<SyntaxToken> {
4814 support::token(&self.syntax, SyntaxKind::FOR_KW)
4815 }
4816 #[inline]
4817 pub fn function_token(&self) -> Option<SyntaxToken> {
4818 support::token(&self.syntax, SyntaxKind::FUNCTION_KW)
4819 }
4820 #[inline]
4821 pub fn procedure_token(&self) -> Option<SyntaxToken> {
4822 support::token(&self.syntax, SyntaxKind::PROCEDURE_KW)
4823 }
4824 #[inline]
4825 pub fn row_token(&self) -> Option<SyntaxToken> {
4826 support::token(&self.syntax, SyntaxKind::ROW_KW)
4827 }
4828 #[inline]
4829 pub fn statement_token(&self) -> Option<SyntaxToken> {
4830 support::token(&self.syntax, SyntaxKind::STATEMENT_KW)
4831 }
4832 #[inline]
4833 pub fn trigger_token(&self) -> Option<SyntaxToken> {
4834 support::token(&self.syntax, SyntaxKind::TRIGGER_KW)
4835 }
4836}
4837
4838#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4839pub struct CreateType {
4840 pub(crate) syntax: SyntaxNode,
4841}
4842impl CreateType {
4843 #[inline]
4844 pub fn attribute_list(&self) -> Option<AttributeList> {
4845 support::child(&self.syntax)
4846 }
4847 #[inline]
4848 pub fn column_list(&self) -> Option<ColumnList> {
4849 support::child(&self.syntax)
4850 }
4851 #[inline]
4852 pub fn path(&self) -> Option<Path> {
4853 support::child(&self.syntax)
4854 }
4855 #[inline]
4856 pub fn variant_list(&self) -> Option<VariantList> {
4857 support::child(&self.syntax)
4858 }
4859 #[inline]
4860 pub fn as_token(&self) -> Option<SyntaxToken> {
4861 support::token(&self.syntax, SyntaxKind::AS_KW)
4862 }
4863 #[inline]
4864 pub fn create_token(&self) -> Option<SyntaxToken> {
4865 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4866 }
4867 #[inline]
4868 pub fn enum_token(&self) -> Option<SyntaxToken> {
4869 support::token(&self.syntax, SyntaxKind::ENUM_KW)
4870 }
4871 #[inline]
4872 pub fn range_token(&self) -> Option<SyntaxToken> {
4873 support::token(&self.syntax, SyntaxKind::RANGE_KW)
4874 }
4875 #[inline]
4876 pub fn type_token(&self) -> Option<SyntaxToken> {
4877 support::token(&self.syntax, SyntaxKind::TYPE_KW)
4878 }
4879}
4880
4881#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4882pub struct CreateUser {
4883 pub(crate) syntax: SyntaxNode,
4884}
4885impl CreateUser {
4886 #[inline]
4887 pub fn name(&self) -> Option<Name> {
4888 support::child(&self.syntax)
4889 }
4890 #[inline]
4891 pub fn role_option_list(&self) -> Option<RoleOptionList> {
4892 support::child(&self.syntax)
4893 }
4894 #[inline]
4895 pub fn create_token(&self) -> Option<SyntaxToken> {
4896 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4897 }
4898 #[inline]
4899 pub fn user_token(&self) -> Option<SyntaxToken> {
4900 support::token(&self.syntax, SyntaxKind::USER_KW)
4901 }
4902}
4903
4904#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4905pub struct CreateUserMapping {
4906 pub(crate) syntax: SyntaxNode,
4907}
4908impl CreateUserMapping {
4909 #[inline]
4910 pub fn alter_option_list(&self) -> Option<AlterOptionList> {
4911 support::child(&self.syntax)
4912 }
4913 #[inline]
4914 pub fn if_not_exists(&self) -> Option<IfNotExists> {
4915 support::child(&self.syntax)
4916 }
4917 #[inline]
4918 pub fn name_ref(&self) -> Option<NameRef> {
4919 support::child(&self.syntax)
4920 }
4921 #[inline]
4922 pub fn role(&self) -> Option<Role> {
4923 support::child(&self.syntax)
4924 }
4925 #[inline]
4926 pub fn create_token(&self) -> Option<SyntaxToken> {
4927 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4928 }
4929 #[inline]
4930 pub fn for_token(&self) -> Option<SyntaxToken> {
4931 support::token(&self.syntax, SyntaxKind::FOR_KW)
4932 }
4933 #[inline]
4934 pub fn mapping_token(&self) -> Option<SyntaxToken> {
4935 support::token(&self.syntax, SyntaxKind::MAPPING_KW)
4936 }
4937 #[inline]
4938 pub fn server_token(&self) -> Option<SyntaxToken> {
4939 support::token(&self.syntax, SyntaxKind::SERVER_KW)
4940 }
4941 #[inline]
4942 pub fn user_token(&self) -> Option<SyntaxToken> {
4943 support::token(&self.syntax, SyntaxKind::USER_KW)
4944 }
4945}
4946
4947#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4948pub struct CreateView {
4949 pub(crate) syntax: SyntaxNode,
4950}
4951impl CreateView {
4952 #[inline]
4953 pub fn column_list(&self) -> Option<ColumnList> {
4954 support::child(&self.syntax)
4955 }
4956 #[inline]
4957 pub fn or_replace(&self) -> Option<OrReplace> {
4958 support::child(&self.syntax)
4959 }
4960 #[inline]
4961 pub fn path(&self) -> Option<Path> {
4962 support::child(&self.syntax)
4963 }
4964 #[inline]
4965 pub fn query(&self) -> Option<SelectVariant> {
4966 support::child(&self.syntax)
4967 }
4968 #[inline]
4969 pub fn with_params(&self) -> Option<WithParams> {
4970 support::child(&self.syntax)
4971 }
4972 #[inline]
4973 pub fn as_token(&self) -> Option<SyntaxToken> {
4974 support::token(&self.syntax, SyntaxKind::AS_KW)
4975 }
4976 #[inline]
4977 pub fn cascaded_token(&self) -> Option<SyntaxToken> {
4978 support::token(&self.syntax, SyntaxKind::CASCADED_KW)
4979 }
4980 #[inline]
4981 pub fn check_token(&self) -> Option<SyntaxToken> {
4982 support::token(&self.syntax, SyntaxKind::CHECK_KW)
4983 }
4984 #[inline]
4985 pub fn create_token(&self) -> Option<SyntaxToken> {
4986 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4987 }
4988 #[inline]
4989 pub fn local_token(&self) -> Option<SyntaxToken> {
4990 support::token(&self.syntax, SyntaxKind::LOCAL_KW)
4991 }
4992 #[inline]
4993 pub fn option_token(&self) -> Option<SyntaxToken> {
4994 support::token(&self.syntax, SyntaxKind::OPTION_KW)
4995 }
4996 #[inline]
4997 pub fn recursive_token(&self) -> Option<SyntaxToken> {
4998 support::token(&self.syntax, SyntaxKind::RECURSIVE_KW)
4999 }
5000 #[inline]
5001 pub fn temp_token(&self) -> Option<SyntaxToken> {
5002 support::token(&self.syntax, SyntaxKind::TEMP_KW)
5003 }
5004 #[inline]
5005 pub fn temporary_token(&self) -> Option<SyntaxToken> {
5006 support::token(&self.syntax, SyntaxKind::TEMPORARY_KW)
5007 }
5008 #[inline]
5009 pub fn view_token(&self) -> Option<SyntaxToken> {
5010 support::token(&self.syntax, SyntaxKind::VIEW_KW)
5011 }
5012 #[inline]
5013 pub fn with_token(&self) -> Option<SyntaxToken> {
5014 support::token(&self.syntax, SyntaxKind::WITH_KW)
5015 }
5016}
5017
5018#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5019pub struct CustomOp {
5020 pub(crate) syntax: SyntaxNode,
5021}
5022impl CustomOp {
5023 #[inline]
5024 pub fn bang_token(&self) -> Option<SyntaxToken> {
5025 support::token(&self.syntax, SyntaxKind::BANG)
5026 }
5027 #[inline]
5028 pub fn pound_token(&self) -> Option<SyntaxToken> {
5029 support::token(&self.syntax, SyntaxKind::POUND)
5030 }
5031 #[inline]
5032 pub fn percent_token(&self) -> Option<SyntaxToken> {
5033 support::token(&self.syntax, SyntaxKind::PERCENT)
5034 }
5035 #[inline]
5036 pub fn amp_token(&self) -> Option<SyntaxToken> {
5037 support::token(&self.syntax, SyntaxKind::AMP)
5038 }
5039 #[inline]
5040 pub fn star_token(&self) -> Option<SyntaxToken> {
5041 support::token(&self.syntax, SyntaxKind::STAR)
5042 }
5043 #[inline]
5044 pub fn plus_token(&self) -> Option<SyntaxToken> {
5045 support::token(&self.syntax, SyntaxKind::PLUS)
5046 }
5047 #[inline]
5048 pub fn minus_token(&self) -> Option<SyntaxToken> {
5049 support::token(&self.syntax, SyntaxKind::MINUS)
5050 }
5051 #[inline]
5052 pub fn slash_token(&self) -> Option<SyntaxToken> {
5053 support::token(&self.syntax, SyntaxKind::SLASH)
5054 }
5055 #[inline]
5056 pub fn l_angle_token(&self) -> Option<SyntaxToken> {
5057 support::token(&self.syntax, SyntaxKind::L_ANGLE)
5058 }
5059 #[inline]
5060 pub fn eq_token(&self) -> Option<SyntaxToken> {
5061 support::token(&self.syntax, SyntaxKind::EQ)
5062 }
5063 #[inline]
5064 pub fn r_angle_token(&self) -> Option<SyntaxToken> {
5065 support::token(&self.syntax, SyntaxKind::R_ANGLE)
5066 }
5067 #[inline]
5068 pub fn question_token(&self) -> Option<SyntaxToken> {
5069 support::token(&self.syntax, SyntaxKind::QUESTION)
5070 }
5071 #[inline]
5072 pub fn at_token(&self) -> Option<SyntaxToken> {
5073 support::token(&self.syntax, SyntaxKind::AT)
5074 }
5075 #[inline]
5076 pub fn caret_token(&self) -> Option<SyntaxToken> {
5077 support::token(&self.syntax, SyntaxKind::CARET)
5078 }
5079 #[inline]
5080 pub fn backtick_token(&self) -> Option<SyntaxToken> {
5081 support::token(&self.syntax, SyntaxKind::BACKTICK)
5082 }
5083 #[inline]
5084 pub fn pipe_token(&self) -> Option<SyntaxToken> {
5085 support::token(&self.syntax, SyntaxKind::PIPE)
5086 }
5087 #[inline]
5088 pub fn tilde_token(&self) -> Option<SyntaxToken> {
5089 support::token(&self.syntax, SyntaxKind::TILDE)
5090 }
5091}
5092
5093#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5094pub struct Deallocate {
5095 pub(crate) syntax: SyntaxNode,
5096}
5097impl Deallocate {
5098 #[inline]
5099 pub fn name_ref(&self) -> Option<NameRef> {
5100 support::child(&self.syntax)
5101 }
5102 #[inline]
5103 pub fn all_token(&self) -> Option<SyntaxToken> {
5104 support::token(&self.syntax, SyntaxKind::ALL_KW)
5105 }
5106 #[inline]
5107 pub fn deallocate_token(&self) -> Option<SyntaxToken> {
5108 support::token(&self.syntax, SyntaxKind::DEALLOCATE_KW)
5109 }
5110 #[inline]
5111 pub fn prepare_token(&self) -> Option<SyntaxToken> {
5112 support::token(&self.syntax, SyntaxKind::PREPARE_KW)
5113 }
5114}
5115
5116#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5117pub struct Declare {
5118 pub(crate) syntax: SyntaxNode,
5119}
5120impl Declare {
5121 #[inline]
5122 pub fn name(&self) -> Option<Name> {
5123 support::child(&self.syntax)
5124 }
5125 #[inline]
5126 pub fn query(&self) -> Option<SelectVariant> {
5127 support::child(&self.syntax)
5128 }
5129 #[inline]
5130 pub fn asensitive_token(&self) -> Option<SyntaxToken> {
5131 support::token(&self.syntax, SyntaxKind::ASENSITIVE_KW)
5132 }
5133 #[inline]
5134 pub fn binary_token(&self) -> Option<SyntaxToken> {
5135 support::token(&self.syntax, SyntaxKind::BINARY_KW)
5136 }
5137 #[inline]
5138 pub fn cursor_token(&self) -> Option<SyntaxToken> {
5139 support::token(&self.syntax, SyntaxKind::CURSOR_KW)
5140 }
5141 #[inline]
5142 pub fn declare_token(&self) -> Option<SyntaxToken> {
5143 support::token(&self.syntax, SyntaxKind::DECLARE_KW)
5144 }
5145 #[inline]
5146 pub fn for_token(&self) -> Option<SyntaxToken> {
5147 support::token(&self.syntax, SyntaxKind::FOR_KW)
5148 }
5149 #[inline]
5150 pub fn hold_token(&self) -> Option<SyntaxToken> {
5151 support::token(&self.syntax, SyntaxKind::HOLD_KW)
5152 }
5153 #[inline]
5154 pub fn insensitive_token(&self) -> Option<SyntaxToken> {
5155 support::token(&self.syntax, SyntaxKind::INSENSITIVE_KW)
5156 }
5157 #[inline]
5158 pub fn no_token(&self) -> Option<SyntaxToken> {
5159 support::token(&self.syntax, SyntaxKind::NO_KW)
5160 }
5161 #[inline]
5162 pub fn scroll_token(&self) -> Option<SyntaxToken> {
5163 support::token(&self.syntax, SyntaxKind::SCROLL_KW)
5164 }
5165 #[inline]
5166 pub fn with_token(&self) -> Option<SyntaxToken> {
5167 support::token(&self.syntax, SyntaxKind::WITH_KW)
5168 }
5169 #[inline]
5170 pub fn without_token(&self) -> Option<SyntaxToken> {
5171 support::token(&self.syntax, SyntaxKind::WITHOUT_KW)
5172 }
5173}
5174
5175#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5176pub struct DefaultConstraint {
5177 pub(crate) syntax: SyntaxNode,
5178}
5179impl DefaultConstraint {
5180 #[inline]
5181 pub fn expr(&self) -> Option<Expr> {
5182 support::child(&self.syntax)
5183 }
5184 #[inline]
5185 pub fn name_ref(&self) -> Option<NameRef> {
5186 support::child(&self.syntax)
5187 }
5188 #[inline]
5189 pub fn constraint_token(&self) -> Option<SyntaxToken> {
5190 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
5191 }
5192 #[inline]
5193 pub fn default_token(&self) -> Option<SyntaxToken> {
5194 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
5195 }
5196}
5197
5198#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5199pub struct Deferrable {
5200 pub(crate) syntax: SyntaxNode,
5201}
5202impl Deferrable {
5203 #[inline]
5204 pub fn deferrable_token(&self) -> Option<SyntaxToken> {
5205 support::token(&self.syntax, SyntaxKind::DEFERRABLE_KW)
5206 }
5207}
5208
5209#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5210pub struct DeferrableConstraintOption {
5211 pub(crate) syntax: SyntaxNode,
5212}
5213impl DeferrableConstraintOption {
5214 #[inline]
5215 pub fn deferrable_token(&self) -> Option<SyntaxToken> {
5216 support::token(&self.syntax, SyntaxKind::DEFERRABLE_KW)
5217 }
5218}
5219
5220#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5221pub struct Delete {
5222 pub(crate) syntax: SyntaxNode,
5223}
5224impl Delete {
5225 #[inline]
5226 pub fn alias(&self) -> Option<Alias> {
5227 support::child(&self.syntax)
5228 }
5229 #[inline]
5230 pub fn relation_name(&self) -> Option<RelationName> {
5231 support::child(&self.syntax)
5232 }
5233 #[inline]
5234 pub fn returning_clause(&self) -> Option<ReturningClause> {
5235 support::child(&self.syntax)
5236 }
5237 #[inline]
5238 pub fn using_clause(&self) -> Option<UsingClause> {
5239 support::child(&self.syntax)
5240 }
5241 #[inline]
5242 pub fn where_clause(&self) -> Option<WhereClause> {
5243 support::child(&self.syntax)
5244 }
5245 #[inline]
5246 pub fn where_current_of(&self) -> Option<WhereCurrentOf> {
5247 support::child(&self.syntax)
5248 }
5249 #[inline]
5250 pub fn with_clause(&self) -> Option<WithClause> {
5251 support::child(&self.syntax)
5252 }
5253 #[inline]
5254 pub fn delete_token(&self) -> Option<SyntaxToken> {
5255 support::token(&self.syntax, SyntaxKind::DELETE_KW)
5256 }
5257 #[inline]
5258 pub fn from_token(&self) -> Option<SyntaxToken> {
5259 support::token(&self.syntax, SyntaxKind::FROM_KW)
5260 }
5261}
5262
5263#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5264pub struct DeleteRows {
5265 pub(crate) syntax: SyntaxNode,
5266}
5267impl DeleteRows {
5268 #[inline]
5269 pub fn delete_token(&self) -> Option<SyntaxToken> {
5270 support::token(&self.syntax, SyntaxKind::DELETE_KW)
5271 }
5272 #[inline]
5273 pub fn rows_token(&self) -> Option<SyntaxToken> {
5274 support::token(&self.syntax, SyntaxKind::ROWS_KW)
5275 }
5276}
5277
5278#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5279pub struct DependsOnExtension {
5280 pub(crate) syntax: SyntaxNode,
5281}
5282impl DependsOnExtension {
5283 #[inline]
5284 pub fn name_ref(&self) -> Option<NameRef> {
5285 support::child(&self.syntax)
5286 }
5287 #[inline]
5288 pub fn depends_token(&self) -> Option<SyntaxToken> {
5289 support::token(&self.syntax, SyntaxKind::DEPENDS_KW)
5290 }
5291 #[inline]
5292 pub fn extension_token(&self) -> Option<SyntaxToken> {
5293 support::token(&self.syntax, SyntaxKind::EXTENSION_KW)
5294 }
5295 #[inline]
5296 pub fn on_token(&self) -> Option<SyntaxToken> {
5297 support::token(&self.syntax, SyntaxKind::ON_KW)
5298 }
5299}
5300
5301#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5302pub struct DetachPartition {
5303 pub(crate) syntax: SyntaxNode,
5304}
5305impl DetachPartition {
5306 #[inline]
5307 pub fn detach_token(&self) -> Option<SyntaxToken> {
5308 support::token(&self.syntax, SyntaxKind::DETACH_KW)
5309 }
5310 #[inline]
5311 pub fn partition_token(&self) -> Option<SyntaxToken> {
5312 support::token(&self.syntax, SyntaxKind::PARTITION_KW)
5313 }
5314}
5315
5316#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5317pub struct DisableRls {
5318 pub(crate) syntax: SyntaxNode,
5319}
5320impl DisableRls {
5321 #[inline]
5322 pub fn disable_token(&self) -> Option<SyntaxToken> {
5323 support::token(&self.syntax, SyntaxKind::DISABLE_KW)
5324 }
5325 #[inline]
5326 pub fn level_token(&self) -> Option<SyntaxToken> {
5327 support::token(&self.syntax, SyntaxKind::LEVEL_KW)
5328 }
5329 #[inline]
5330 pub fn row_token(&self) -> Option<SyntaxToken> {
5331 support::token(&self.syntax, SyntaxKind::ROW_KW)
5332 }
5333 #[inline]
5334 pub fn security_token(&self) -> Option<SyntaxToken> {
5335 support::token(&self.syntax, SyntaxKind::SECURITY_KW)
5336 }
5337}
5338
5339#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5340pub struct DisableRule {
5341 pub(crate) syntax: SyntaxNode,
5342}
5343impl DisableRule {
5344 #[inline]
5345 pub fn disable_token(&self) -> Option<SyntaxToken> {
5346 support::token(&self.syntax, SyntaxKind::DISABLE_KW)
5347 }
5348 #[inline]
5349 pub fn rule_token(&self) -> Option<SyntaxToken> {
5350 support::token(&self.syntax, SyntaxKind::RULE_KW)
5351 }
5352}
5353
5354#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5355pub struct DisableTrigger {
5356 pub(crate) syntax: SyntaxNode,
5357}
5358impl DisableTrigger {
5359 #[inline]
5360 pub fn disable_token(&self) -> Option<SyntaxToken> {
5361 support::token(&self.syntax, SyntaxKind::DISABLE_KW)
5362 }
5363 #[inline]
5364 pub fn trigger_token(&self) -> Option<SyntaxToken> {
5365 support::token(&self.syntax, SyntaxKind::TRIGGER_KW)
5366 }
5367}
5368
5369#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5370pub struct Discard {
5371 pub(crate) syntax: SyntaxNode,
5372}
5373impl Discard {
5374 #[inline]
5375 pub fn all_token(&self) -> Option<SyntaxToken> {
5376 support::token(&self.syntax, SyntaxKind::ALL_KW)
5377 }
5378 #[inline]
5379 pub fn discard_token(&self) -> Option<SyntaxToken> {
5380 support::token(&self.syntax, SyntaxKind::DISCARD_KW)
5381 }
5382 #[inline]
5383 pub fn plans_token(&self) -> Option<SyntaxToken> {
5384 support::token(&self.syntax, SyntaxKind::PLANS_KW)
5385 }
5386 #[inline]
5387 pub fn sequences_token(&self) -> Option<SyntaxToken> {
5388 support::token(&self.syntax, SyntaxKind::SEQUENCES_KW)
5389 }
5390 #[inline]
5391 pub fn temp_token(&self) -> Option<SyntaxToken> {
5392 support::token(&self.syntax, SyntaxKind::TEMP_KW)
5393 }
5394 #[inline]
5395 pub fn temporary_token(&self) -> Option<SyntaxToken> {
5396 support::token(&self.syntax, SyntaxKind::TEMPORARY_KW)
5397 }
5398}
5399
5400#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5401pub struct DistinctClause {
5402 pub(crate) syntax: SyntaxNode,
5403}
5404impl DistinctClause {
5405 #[inline]
5406 pub fn exprs(&self) -> AstChildren<Expr> {
5407 support::children(&self.syntax)
5408 }
5409 #[inline]
5410 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
5411 support::token(&self.syntax, SyntaxKind::L_PAREN)
5412 }
5413 #[inline]
5414 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
5415 support::token(&self.syntax, SyntaxKind::R_PAREN)
5416 }
5417 #[inline]
5418 pub fn distinct_token(&self) -> Option<SyntaxToken> {
5419 support::token(&self.syntax, SyntaxKind::DISTINCT_KW)
5420 }
5421 #[inline]
5422 pub fn on_token(&self) -> Option<SyntaxToken> {
5423 support::token(&self.syntax, SyntaxKind::ON_KW)
5424 }
5425}
5426
5427#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5428pub struct Do {
5429 pub(crate) syntax: SyntaxNode,
5430}
5431impl Do {
5432 #[inline]
5433 pub fn do_token(&self) -> Option<SyntaxToken> {
5434 support::token(&self.syntax, SyntaxKind::DO_KW)
5435 }
5436}
5437
5438#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5439pub struct DoubleType {
5440 pub(crate) syntax: SyntaxNode,
5441}
5442impl DoubleType {
5443 #[inline]
5444 pub fn double_token(&self) -> Option<SyntaxToken> {
5445 support::token(&self.syntax, SyntaxKind::DOUBLE_KW)
5446 }
5447 #[inline]
5448 pub fn precision_token(&self) -> Option<SyntaxToken> {
5449 support::token(&self.syntax, SyntaxKind::PRECISION_KW)
5450 }
5451}
5452
5453#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5454pub struct Drop {
5455 pub(crate) syntax: SyntaxNode,
5456}
5457impl Drop {
5458 #[inline]
5459 pub fn drop_token(&self) -> Option<SyntaxToken> {
5460 support::token(&self.syntax, SyntaxKind::DROP_KW)
5461 }
5462}
5463
5464#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5465pub struct DropAccessMethod {
5466 pub(crate) syntax: SyntaxNode,
5467}
5468impl DropAccessMethod {
5469 #[inline]
5470 pub fn if_exists(&self) -> Option<IfExists> {
5471 support::child(&self.syntax)
5472 }
5473 #[inline]
5474 pub fn name_ref(&self) -> Option<NameRef> {
5475 support::child(&self.syntax)
5476 }
5477 #[inline]
5478 pub fn access_token(&self) -> Option<SyntaxToken> {
5479 support::token(&self.syntax, SyntaxKind::ACCESS_KW)
5480 }
5481 #[inline]
5482 pub fn cascade_token(&self) -> Option<SyntaxToken> {
5483 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
5484 }
5485 #[inline]
5486 pub fn drop_token(&self) -> Option<SyntaxToken> {
5487 support::token(&self.syntax, SyntaxKind::DROP_KW)
5488 }
5489 #[inline]
5490 pub fn method_token(&self) -> Option<SyntaxToken> {
5491 support::token(&self.syntax, SyntaxKind::METHOD_KW)
5492 }
5493 #[inline]
5494 pub fn restrict_token(&self) -> Option<SyntaxToken> {
5495 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
5496 }
5497}
5498
5499#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5500pub struct DropAggregate {
5501 pub(crate) syntax: SyntaxNode,
5502}
5503impl DropAggregate {
5504 #[inline]
5505 pub fn aggregates(&self) -> AstChildren<Aggregate> {
5506 support::children(&self.syntax)
5507 }
5508 #[inline]
5509 pub fn if_exists(&self) -> Option<IfExists> {
5510 support::child(&self.syntax)
5511 }
5512 #[inline]
5513 pub fn aggregate_token(&self) -> Option<SyntaxToken> {
5514 support::token(&self.syntax, SyntaxKind::AGGREGATE_KW)
5515 }
5516 #[inline]
5517 pub fn cascade_token(&self) -> Option<SyntaxToken> {
5518 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
5519 }
5520 #[inline]
5521 pub fn drop_token(&self) -> Option<SyntaxToken> {
5522 support::token(&self.syntax, SyntaxKind::DROP_KW)
5523 }
5524 #[inline]
5525 pub fn restrict_token(&self) -> Option<SyntaxToken> {
5526 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
5527 }
5528}
5529
5530#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5531pub struct DropCast {
5532 pub(crate) syntax: SyntaxNode,
5533}
5534impl DropCast {
5535 #[inline]
5536 pub fn cast_sig(&self) -> Option<CastSig> {
5537 support::child(&self.syntax)
5538 }
5539 #[inline]
5540 pub fn if_exists(&self) -> Option<IfExists> {
5541 support::child(&self.syntax)
5542 }
5543 #[inline]
5544 pub fn cascade_token(&self) -> Option<SyntaxToken> {
5545 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
5546 }
5547 #[inline]
5548 pub fn cast_token(&self) -> Option<SyntaxToken> {
5549 support::token(&self.syntax, SyntaxKind::CAST_KW)
5550 }
5551 #[inline]
5552 pub fn drop_token(&self) -> Option<SyntaxToken> {
5553 support::token(&self.syntax, SyntaxKind::DROP_KW)
5554 }
5555 #[inline]
5556 pub fn restrict_token(&self) -> Option<SyntaxToken> {
5557 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
5558 }
5559}
5560
5561#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5562pub struct DropCollation {
5563 pub(crate) syntax: SyntaxNode,
5564}
5565impl DropCollation {
5566 #[inline]
5567 pub fn if_exists(&self) -> Option<IfExists> {
5568 support::child(&self.syntax)
5569 }
5570 #[inline]
5571 pub fn paths(&self) -> AstChildren<Path> {
5572 support::children(&self.syntax)
5573 }
5574 #[inline]
5575 pub fn cascade_token(&self) -> Option<SyntaxToken> {
5576 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
5577 }
5578 #[inline]
5579 pub fn collation_token(&self) -> Option<SyntaxToken> {
5580 support::token(&self.syntax, SyntaxKind::COLLATION_KW)
5581 }
5582 #[inline]
5583 pub fn drop_token(&self) -> Option<SyntaxToken> {
5584 support::token(&self.syntax, SyntaxKind::DROP_KW)
5585 }
5586 #[inline]
5587 pub fn restrict_token(&self) -> Option<SyntaxToken> {
5588 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
5589 }
5590}
5591
5592#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5593pub struct DropColumn {
5594 pub(crate) syntax: SyntaxNode,
5595}
5596impl DropColumn {
5597 #[inline]
5598 pub fn if_exists(&self) -> Option<IfExists> {
5599 support::child(&self.syntax)
5600 }
5601 #[inline]
5602 pub fn name_ref(&self) -> Option<NameRef> {
5603 support::child(&self.syntax)
5604 }
5605 #[inline]
5606 pub fn cascade_token(&self) -> Option<SyntaxToken> {
5607 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
5608 }
5609 #[inline]
5610 pub fn column_token(&self) -> Option<SyntaxToken> {
5611 support::token(&self.syntax, SyntaxKind::COLUMN_KW)
5612 }
5613 #[inline]
5614 pub fn drop_token(&self) -> Option<SyntaxToken> {
5615 support::token(&self.syntax, SyntaxKind::DROP_KW)
5616 }
5617 #[inline]
5618 pub fn restrict_token(&self) -> Option<SyntaxToken> {
5619 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
5620 }
5621}
5622
5623#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5624pub struct DropConstraint {
5625 pub(crate) syntax: SyntaxNode,
5626}
5627impl DropConstraint {
5628 #[inline]
5629 pub fn if_exists(&self) -> Option<IfExists> {
5630 support::child(&self.syntax)
5631 }
5632 #[inline]
5633 pub fn name_ref(&self) -> Option<NameRef> {
5634 support::child(&self.syntax)
5635 }
5636 #[inline]
5637 pub fn cascade_token(&self) -> Option<SyntaxToken> {
5638 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
5639 }
5640 #[inline]
5641 pub fn constraint_token(&self) -> Option<SyntaxToken> {
5642 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
5643 }
5644 #[inline]
5645 pub fn drop_token(&self) -> Option<SyntaxToken> {
5646 support::token(&self.syntax, SyntaxKind::DROP_KW)
5647 }
5648 #[inline]
5649 pub fn restrict_token(&self) -> Option<SyntaxToken> {
5650 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
5651 }
5652}
5653
5654#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5655pub struct DropConversion {
5656 pub(crate) syntax: SyntaxNode,
5657}
5658impl DropConversion {
5659 #[inline]
5660 pub fn if_exists(&self) -> Option<IfExists> {
5661 support::child(&self.syntax)
5662 }
5663 #[inline]
5664 pub fn path(&self) -> Option<Path> {
5665 support::child(&self.syntax)
5666 }
5667 #[inline]
5668 pub fn cascade_token(&self) -> Option<SyntaxToken> {
5669 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
5670 }
5671 #[inline]
5672 pub fn conversion_token(&self) -> Option<SyntaxToken> {
5673 support::token(&self.syntax, SyntaxKind::CONVERSION_KW)
5674 }
5675 #[inline]
5676 pub fn drop_token(&self) -> Option<SyntaxToken> {
5677 support::token(&self.syntax, SyntaxKind::DROP_KW)
5678 }
5679 #[inline]
5680 pub fn restrict_token(&self) -> Option<SyntaxToken> {
5681 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
5682 }
5683}
5684
5685#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5686pub struct DropDatabase {
5687 pub(crate) syntax: SyntaxNode,
5688}
5689impl DropDatabase {
5690 #[inline]
5691 pub fn if_exists(&self) -> Option<IfExists> {
5692 support::child(&self.syntax)
5693 }
5694 #[inline]
5695 pub fn name_ref(&self) -> Option<NameRef> {
5696 support::child(&self.syntax)
5697 }
5698 #[inline]
5699 pub fn database_token(&self) -> Option<SyntaxToken> {
5700 support::token(&self.syntax, SyntaxKind::DATABASE_KW)
5701 }
5702 #[inline]
5703 pub fn drop_token(&self) -> Option<SyntaxToken> {
5704 support::token(&self.syntax, SyntaxKind::DROP_KW)
5705 }
5706}
5707
5708#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5709pub struct DropDefault {
5710 pub(crate) syntax: SyntaxNode,
5711}
5712impl DropDefault {
5713 #[inline]
5714 pub fn default_token(&self) -> Option<SyntaxToken> {
5715 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
5716 }
5717 #[inline]
5718 pub fn drop_token(&self) -> Option<SyntaxToken> {
5719 support::token(&self.syntax, SyntaxKind::DROP_KW)
5720 }
5721}
5722
5723#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5724pub struct DropDomain {
5725 pub(crate) syntax: SyntaxNode,
5726}
5727impl DropDomain {
5728 #[inline]
5729 pub fn if_exists(&self) -> Option<IfExists> {
5730 support::child(&self.syntax)
5731 }
5732 #[inline]
5733 pub fn paths(&self) -> AstChildren<Path> {
5734 support::children(&self.syntax)
5735 }
5736 #[inline]
5737 pub fn cascade_token(&self) -> Option<SyntaxToken> {
5738 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
5739 }
5740 #[inline]
5741 pub fn domain_token(&self) -> Option<SyntaxToken> {
5742 support::token(&self.syntax, SyntaxKind::DOMAIN_KW)
5743 }
5744 #[inline]
5745 pub fn drop_token(&self) -> Option<SyntaxToken> {
5746 support::token(&self.syntax, SyntaxKind::DROP_KW)
5747 }
5748 #[inline]
5749 pub fn restrict_token(&self) -> Option<SyntaxToken> {
5750 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
5751 }
5752}
5753
5754#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5755pub struct DropEventTrigger {
5756 pub(crate) syntax: SyntaxNode,
5757}
5758impl DropEventTrigger {
5759 #[inline]
5760 pub fn if_exists(&self) -> Option<IfExists> {
5761 support::child(&self.syntax)
5762 }
5763 #[inline]
5764 pub fn name_ref(&self) -> Option<NameRef> {
5765 support::child(&self.syntax)
5766 }
5767 #[inline]
5768 pub fn cascade_token(&self) -> Option<SyntaxToken> {
5769 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
5770 }
5771 #[inline]
5772 pub fn drop_token(&self) -> Option<SyntaxToken> {
5773 support::token(&self.syntax, SyntaxKind::DROP_KW)
5774 }
5775 #[inline]
5776 pub fn event_token(&self) -> Option<SyntaxToken> {
5777 support::token(&self.syntax, SyntaxKind::EVENT_KW)
5778 }
5779 #[inline]
5780 pub fn restrict_token(&self) -> Option<SyntaxToken> {
5781 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
5782 }
5783 #[inline]
5784 pub fn trigger_token(&self) -> Option<SyntaxToken> {
5785 support::token(&self.syntax, SyntaxKind::TRIGGER_KW)
5786 }
5787}
5788
5789#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5790pub struct DropExpression {
5791 pub(crate) syntax: SyntaxNode,
5792}
5793impl DropExpression {
5794 #[inline]
5795 pub fn if_exists(&self) -> Option<IfExists> {
5796 support::child(&self.syntax)
5797 }
5798 #[inline]
5799 pub fn drop_token(&self) -> Option<SyntaxToken> {
5800 support::token(&self.syntax, SyntaxKind::DROP_KW)
5801 }
5802 #[inline]
5803 pub fn expression_token(&self) -> Option<SyntaxToken> {
5804 support::token(&self.syntax, SyntaxKind::EXPRESSION_KW)
5805 }
5806}
5807
5808#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5809pub struct DropExtension {
5810 pub(crate) syntax: SyntaxNode,
5811}
5812impl DropExtension {
5813 #[inline]
5814 pub fn if_exists(&self) -> Option<IfExists> {
5815 support::child(&self.syntax)
5816 }
5817 #[inline]
5818 pub fn name_refs(&self) -> AstChildren<NameRef> {
5819 support::children(&self.syntax)
5820 }
5821 #[inline]
5822 pub fn cascade_token(&self) -> Option<SyntaxToken> {
5823 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
5824 }
5825 #[inline]
5826 pub fn drop_token(&self) -> Option<SyntaxToken> {
5827 support::token(&self.syntax, SyntaxKind::DROP_KW)
5828 }
5829 #[inline]
5830 pub fn extension_token(&self) -> Option<SyntaxToken> {
5831 support::token(&self.syntax, SyntaxKind::EXTENSION_KW)
5832 }
5833 #[inline]
5834 pub fn restrict_token(&self) -> Option<SyntaxToken> {
5835 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
5836 }
5837}
5838
5839#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5840pub struct DropForeignDataWrapper {
5841 pub(crate) syntax: SyntaxNode,
5842}
5843impl DropForeignDataWrapper {
5844 #[inline]
5845 pub fn if_exists(&self) -> Option<IfExists> {
5846 support::child(&self.syntax)
5847 }
5848 #[inline]
5849 pub fn name_refs(&self) -> AstChildren<NameRef> {
5850 support::children(&self.syntax)
5851 }
5852 #[inline]
5853 pub fn cascade_token(&self) -> Option<SyntaxToken> {
5854 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
5855 }
5856 #[inline]
5857 pub fn data_token(&self) -> Option<SyntaxToken> {
5858 support::token(&self.syntax, SyntaxKind::DATA_KW)
5859 }
5860 #[inline]
5861 pub fn drop_token(&self) -> Option<SyntaxToken> {
5862 support::token(&self.syntax, SyntaxKind::DROP_KW)
5863 }
5864 #[inline]
5865 pub fn foreign_token(&self) -> Option<SyntaxToken> {
5866 support::token(&self.syntax, SyntaxKind::FOREIGN_KW)
5867 }
5868 #[inline]
5869 pub fn restrict_token(&self) -> Option<SyntaxToken> {
5870 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
5871 }
5872 #[inline]
5873 pub fn wrapper_token(&self) -> Option<SyntaxToken> {
5874 support::token(&self.syntax, SyntaxKind::WRAPPER_KW)
5875 }
5876}
5877
5878#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5879pub struct DropForeignTable {
5880 pub(crate) syntax: SyntaxNode,
5881}
5882impl DropForeignTable {
5883 #[inline]
5884 pub fn if_exists(&self) -> Option<IfExists> {
5885 support::child(&self.syntax)
5886 }
5887 #[inline]
5888 pub fn path(&self) -> Option<Path> {
5889 support::child(&self.syntax)
5890 }
5891 #[inline]
5892 pub fn cascade_token(&self) -> Option<SyntaxToken> {
5893 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
5894 }
5895 #[inline]
5896 pub fn drop_token(&self) -> Option<SyntaxToken> {
5897 support::token(&self.syntax, SyntaxKind::DROP_KW)
5898 }
5899 #[inline]
5900 pub fn foreign_token(&self) -> Option<SyntaxToken> {
5901 support::token(&self.syntax, SyntaxKind::FOREIGN_KW)
5902 }
5903 #[inline]
5904 pub fn restrict_token(&self) -> Option<SyntaxToken> {
5905 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
5906 }
5907 #[inline]
5908 pub fn table_token(&self) -> Option<SyntaxToken> {
5909 support::token(&self.syntax, SyntaxKind::TABLE_KW)
5910 }
5911}
5912
5913#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5914pub struct DropFunction {
5915 pub(crate) syntax: SyntaxNode,
5916}
5917impl DropFunction {
5918 #[inline]
5919 pub fn function_sig_list(&self) -> Option<FunctionSigList> {
5920 support::child(&self.syntax)
5921 }
5922 #[inline]
5923 pub fn if_exists(&self) -> Option<IfExists> {
5924 support::child(&self.syntax)
5925 }
5926 #[inline]
5927 pub fn cascade_token(&self) -> Option<SyntaxToken> {
5928 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
5929 }
5930 #[inline]
5931 pub fn drop_token(&self) -> Option<SyntaxToken> {
5932 support::token(&self.syntax, SyntaxKind::DROP_KW)
5933 }
5934 #[inline]
5935 pub fn function_token(&self) -> Option<SyntaxToken> {
5936 support::token(&self.syntax, SyntaxKind::FUNCTION_KW)
5937 }
5938 #[inline]
5939 pub fn restrict_token(&self) -> Option<SyntaxToken> {
5940 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
5941 }
5942}
5943
5944#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5945pub struct DropGroup {
5946 pub(crate) syntax: SyntaxNode,
5947}
5948impl DropGroup {
5949 #[inline]
5950 pub fn if_exists(&self) -> Option<IfExists> {
5951 support::child(&self.syntax)
5952 }
5953 #[inline]
5954 pub fn name_refs(&self) -> AstChildren<NameRef> {
5955 support::children(&self.syntax)
5956 }
5957 #[inline]
5958 pub fn drop_token(&self) -> Option<SyntaxToken> {
5959 support::token(&self.syntax, SyntaxKind::DROP_KW)
5960 }
5961 #[inline]
5962 pub fn group_token(&self) -> Option<SyntaxToken> {
5963 support::token(&self.syntax, SyntaxKind::GROUP_KW)
5964 }
5965}
5966
5967#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5968pub struct DropIdentity {
5969 pub(crate) syntax: SyntaxNode,
5970}
5971impl DropIdentity {
5972 #[inline]
5973 pub fn if_exists(&self) -> Option<IfExists> {
5974 support::child(&self.syntax)
5975 }
5976 #[inline]
5977 pub fn drop_token(&self) -> Option<SyntaxToken> {
5978 support::token(&self.syntax, SyntaxKind::DROP_KW)
5979 }
5980 #[inline]
5981 pub fn identity_token(&self) -> Option<SyntaxToken> {
5982 support::token(&self.syntax, SyntaxKind::IDENTITY_KW)
5983 }
5984}
5985
5986#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5987pub struct DropIndex {
5988 pub(crate) syntax: SyntaxNode,
5989}
5990impl DropIndex {
5991 #[inline]
5992 pub fn if_exists(&self) -> Option<IfExists> {
5993 support::child(&self.syntax)
5994 }
5995 #[inline]
5996 pub fn paths(&self) -> AstChildren<Path> {
5997 support::children(&self.syntax)
5998 }
5999 #[inline]
6000 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6001 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6002 }
6003 #[inline]
6004 pub fn concurrently_token(&self) -> Option<SyntaxToken> {
6005 support::token(&self.syntax, SyntaxKind::CONCURRENTLY_KW)
6006 }
6007 #[inline]
6008 pub fn drop_token(&self) -> Option<SyntaxToken> {
6009 support::token(&self.syntax, SyntaxKind::DROP_KW)
6010 }
6011 #[inline]
6012 pub fn index_token(&self) -> Option<SyntaxToken> {
6013 support::token(&self.syntax, SyntaxKind::INDEX_KW)
6014 }
6015 #[inline]
6016 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6017 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6018 }
6019}
6020
6021#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6022pub struct DropLanguage {
6023 pub(crate) syntax: SyntaxNode,
6024}
6025impl DropLanguage {
6026 #[inline]
6027 pub fn if_exists(&self) -> Option<IfExists> {
6028 support::child(&self.syntax)
6029 }
6030 #[inline]
6031 pub fn name_ref(&self) -> Option<NameRef> {
6032 support::child(&self.syntax)
6033 }
6034 #[inline]
6035 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6036 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6037 }
6038 #[inline]
6039 pub fn drop_token(&self) -> Option<SyntaxToken> {
6040 support::token(&self.syntax, SyntaxKind::DROP_KW)
6041 }
6042 #[inline]
6043 pub fn language_token(&self) -> Option<SyntaxToken> {
6044 support::token(&self.syntax, SyntaxKind::LANGUAGE_KW)
6045 }
6046 #[inline]
6047 pub fn procedural_token(&self) -> Option<SyntaxToken> {
6048 support::token(&self.syntax, SyntaxKind::PROCEDURAL_KW)
6049 }
6050 #[inline]
6051 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6052 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6053 }
6054}
6055
6056#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6057pub struct DropMaterializedView {
6058 pub(crate) syntax: SyntaxNode,
6059}
6060impl DropMaterializedView {
6061 #[inline]
6062 pub fn if_exists(&self) -> Option<IfExists> {
6063 support::child(&self.syntax)
6064 }
6065 #[inline]
6066 pub fn paths(&self) -> AstChildren<Path> {
6067 support::children(&self.syntax)
6068 }
6069 #[inline]
6070 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6071 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6072 }
6073 #[inline]
6074 pub fn drop_token(&self) -> Option<SyntaxToken> {
6075 support::token(&self.syntax, SyntaxKind::DROP_KW)
6076 }
6077 #[inline]
6078 pub fn materialized_token(&self) -> Option<SyntaxToken> {
6079 support::token(&self.syntax, SyntaxKind::MATERIALIZED_KW)
6080 }
6081 #[inline]
6082 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6083 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6084 }
6085 #[inline]
6086 pub fn view_token(&self) -> Option<SyntaxToken> {
6087 support::token(&self.syntax, SyntaxKind::VIEW_KW)
6088 }
6089}
6090
6091#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6092pub struct DropNotNull {
6093 pub(crate) syntax: SyntaxNode,
6094}
6095impl DropNotNull {
6096 #[inline]
6097 pub fn drop_token(&self) -> Option<SyntaxToken> {
6098 support::token(&self.syntax, SyntaxKind::DROP_KW)
6099 }
6100 #[inline]
6101 pub fn not_token(&self) -> Option<SyntaxToken> {
6102 support::token(&self.syntax, SyntaxKind::NOT_KW)
6103 }
6104 #[inline]
6105 pub fn null_token(&self) -> Option<SyntaxToken> {
6106 support::token(&self.syntax, SyntaxKind::NULL_KW)
6107 }
6108}
6109
6110#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6111pub struct DropOpClassOption {
6112 pub(crate) syntax: SyntaxNode,
6113}
6114impl DropOpClassOption {
6115 #[inline]
6116 pub fn literal(&self) -> Option<Literal> {
6117 support::child(&self.syntax)
6118 }
6119 #[inline]
6120 pub fn param_list(&self) -> Option<ParamList> {
6121 support::child(&self.syntax)
6122 }
6123 #[inline]
6124 pub fn function_token(&self) -> Option<SyntaxToken> {
6125 support::token(&self.syntax, SyntaxKind::FUNCTION_KW)
6126 }
6127 #[inline]
6128 pub fn operator_token(&self) -> Option<SyntaxToken> {
6129 support::token(&self.syntax, SyntaxKind::OPERATOR_KW)
6130 }
6131}
6132
6133#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6134pub struct DropOpClassOptionList {
6135 pub(crate) syntax: SyntaxNode,
6136}
6137impl DropOpClassOptionList {
6138 #[inline]
6139 pub fn drop_op_class_options(&self) -> AstChildren<DropOpClassOption> {
6140 support::children(&self.syntax)
6141 }
6142}
6143
6144#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6145pub struct DropOpClassOptions {
6146 pub(crate) syntax: SyntaxNode,
6147}
6148impl DropOpClassOptions {
6149 #[inline]
6150 pub fn drop_op_class_option_list(&self) -> Option<DropOpClassOptionList> {
6151 support::child(&self.syntax)
6152 }
6153 #[inline]
6154 pub fn drop_token(&self) -> Option<SyntaxToken> {
6155 support::token(&self.syntax, SyntaxKind::DROP_KW)
6156 }
6157}
6158
6159#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6160pub struct DropOperator {
6161 pub(crate) syntax: SyntaxNode,
6162}
6163impl DropOperator {
6164 #[inline]
6165 pub fn if_exists(&self) -> Option<IfExists> {
6166 support::child(&self.syntax)
6167 }
6168 #[inline]
6169 pub fn op_sig_list(&self) -> Option<OpSigList> {
6170 support::child(&self.syntax)
6171 }
6172 #[inline]
6173 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6174 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6175 }
6176 #[inline]
6177 pub fn drop_token(&self) -> Option<SyntaxToken> {
6178 support::token(&self.syntax, SyntaxKind::DROP_KW)
6179 }
6180 #[inline]
6181 pub fn operator_token(&self) -> Option<SyntaxToken> {
6182 support::token(&self.syntax, SyntaxKind::OPERATOR_KW)
6183 }
6184 #[inline]
6185 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6186 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6187 }
6188}
6189
6190#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6191pub struct DropOperatorClass {
6192 pub(crate) syntax: SyntaxNode,
6193}
6194impl DropOperatorClass {
6195 #[inline]
6196 pub fn if_exists(&self) -> Option<IfExists> {
6197 support::child(&self.syntax)
6198 }
6199 #[inline]
6200 pub fn name_ref(&self) -> Option<NameRef> {
6201 support::child(&self.syntax)
6202 }
6203 #[inline]
6204 pub fn path(&self) -> Option<Path> {
6205 support::child(&self.syntax)
6206 }
6207 #[inline]
6208 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6209 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6210 }
6211 #[inline]
6212 pub fn class_token(&self) -> Option<SyntaxToken> {
6213 support::token(&self.syntax, SyntaxKind::CLASS_KW)
6214 }
6215 #[inline]
6216 pub fn drop_token(&self) -> Option<SyntaxToken> {
6217 support::token(&self.syntax, SyntaxKind::DROP_KW)
6218 }
6219 #[inline]
6220 pub fn operator_token(&self) -> Option<SyntaxToken> {
6221 support::token(&self.syntax, SyntaxKind::OPERATOR_KW)
6222 }
6223 #[inline]
6224 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6225 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6226 }
6227 #[inline]
6228 pub fn using_token(&self) -> Option<SyntaxToken> {
6229 support::token(&self.syntax, SyntaxKind::USING_KW)
6230 }
6231}
6232
6233#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6234pub struct DropOperatorFamily {
6235 pub(crate) syntax: SyntaxNode,
6236}
6237impl DropOperatorFamily {
6238 #[inline]
6239 pub fn if_exists(&self) -> Option<IfExists> {
6240 support::child(&self.syntax)
6241 }
6242 #[inline]
6243 pub fn name_ref(&self) -> Option<NameRef> {
6244 support::child(&self.syntax)
6245 }
6246 #[inline]
6247 pub fn path(&self) -> Option<Path> {
6248 support::child(&self.syntax)
6249 }
6250 #[inline]
6251 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6252 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6253 }
6254 #[inline]
6255 pub fn drop_token(&self) -> Option<SyntaxToken> {
6256 support::token(&self.syntax, SyntaxKind::DROP_KW)
6257 }
6258 #[inline]
6259 pub fn family_token(&self) -> Option<SyntaxToken> {
6260 support::token(&self.syntax, SyntaxKind::FAMILY_KW)
6261 }
6262 #[inline]
6263 pub fn operator_token(&self) -> Option<SyntaxToken> {
6264 support::token(&self.syntax, SyntaxKind::OPERATOR_KW)
6265 }
6266 #[inline]
6267 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6268 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6269 }
6270 #[inline]
6271 pub fn using_token(&self) -> Option<SyntaxToken> {
6272 support::token(&self.syntax, SyntaxKind::USING_KW)
6273 }
6274}
6275
6276#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6277pub struct DropOwned {
6278 pub(crate) syntax: SyntaxNode,
6279}
6280impl DropOwned {
6281 #[inline]
6282 pub fn role_list(&self) -> Option<RoleList> {
6283 support::child(&self.syntax)
6284 }
6285 #[inline]
6286 pub fn by_token(&self) -> Option<SyntaxToken> {
6287 support::token(&self.syntax, SyntaxKind::BY_KW)
6288 }
6289 #[inline]
6290 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6291 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6292 }
6293 #[inline]
6294 pub fn drop_token(&self) -> Option<SyntaxToken> {
6295 support::token(&self.syntax, SyntaxKind::DROP_KW)
6296 }
6297 #[inline]
6298 pub fn owned_token(&self) -> Option<SyntaxToken> {
6299 support::token(&self.syntax, SyntaxKind::OWNED_KW)
6300 }
6301 #[inline]
6302 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6303 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6304 }
6305}
6306
6307#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6308pub struct DropPolicy {
6309 pub(crate) syntax: SyntaxNode,
6310}
6311impl DropPolicy {
6312 #[inline]
6313 pub fn if_exists(&self) -> Option<IfExists> {
6314 support::child(&self.syntax)
6315 }
6316 #[inline]
6317 pub fn name_ref(&self) -> Option<NameRef> {
6318 support::child(&self.syntax)
6319 }
6320 #[inline]
6321 pub fn on_table(&self) -> Option<OnTable> {
6322 support::child(&self.syntax)
6323 }
6324 #[inline]
6325 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6326 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6327 }
6328 #[inline]
6329 pub fn drop_token(&self) -> Option<SyntaxToken> {
6330 support::token(&self.syntax, SyntaxKind::DROP_KW)
6331 }
6332 #[inline]
6333 pub fn policy_token(&self) -> Option<SyntaxToken> {
6334 support::token(&self.syntax, SyntaxKind::POLICY_KW)
6335 }
6336 #[inline]
6337 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6338 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6339 }
6340}
6341
6342#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6343pub struct DropProcedure {
6344 pub(crate) syntax: SyntaxNode,
6345}
6346impl DropProcedure {
6347 #[inline]
6348 pub fn function_sig_list(&self) -> Option<FunctionSigList> {
6349 support::child(&self.syntax)
6350 }
6351 #[inline]
6352 pub fn if_exists(&self) -> Option<IfExists> {
6353 support::child(&self.syntax)
6354 }
6355 #[inline]
6356 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6357 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6358 }
6359 #[inline]
6360 pub fn drop_token(&self) -> Option<SyntaxToken> {
6361 support::token(&self.syntax, SyntaxKind::DROP_KW)
6362 }
6363 #[inline]
6364 pub fn procedure_token(&self) -> Option<SyntaxToken> {
6365 support::token(&self.syntax, SyntaxKind::PROCEDURE_KW)
6366 }
6367 #[inline]
6368 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6369 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6370 }
6371}
6372
6373#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6374pub struct DropPublication {
6375 pub(crate) syntax: SyntaxNode,
6376}
6377impl DropPublication {
6378 #[inline]
6379 pub fn if_exists(&self) -> Option<IfExists> {
6380 support::child(&self.syntax)
6381 }
6382 #[inline]
6383 pub fn name_refs(&self) -> AstChildren<NameRef> {
6384 support::children(&self.syntax)
6385 }
6386 #[inline]
6387 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6388 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6389 }
6390 #[inline]
6391 pub fn drop_token(&self) -> Option<SyntaxToken> {
6392 support::token(&self.syntax, SyntaxKind::DROP_KW)
6393 }
6394 #[inline]
6395 pub fn publication_token(&self) -> Option<SyntaxToken> {
6396 support::token(&self.syntax, SyntaxKind::PUBLICATION_KW)
6397 }
6398 #[inline]
6399 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6400 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6401 }
6402}
6403
6404#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6405pub struct DropRole {
6406 pub(crate) syntax: SyntaxNode,
6407}
6408impl DropRole {
6409 #[inline]
6410 pub fn if_exists(&self) -> Option<IfExists> {
6411 support::child(&self.syntax)
6412 }
6413 #[inline]
6414 pub fn name_refs(&self) -> AstChildren<NameRef> {
6415 support::children(&self.syntax)
6416 }
6417 #[inline]
6418 pub fn drop_token(&self) -> Option<SyntaxToken> {
6419 support::token(&self.syntax, SyntaxKind::DROP_KW)
6420 }
6421 #[inline]
6422 pub fn role_token(&self) -> Option<SyntaxToken> {
6423 support::token(&self.syntax, SyntaxKind::ROLE_KW)
6424 }
6425}
6426
6427#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6428pub struct DropRoutine {
6429 pub(crate) syntax: SyntaxNode,
6430}
6431impl DropRoutine {
6432 #[inline]
6433 pub fn function_sig_list(&self) -> Option<FunctionSigList> {
6434 support::child(&self.syntax)
6435 }
6436 #[inline]
6437 pub fn if_exists(&self) -> Option<IfExists> {
6438 support::child(&self.syntax)
6439 }
6440 #[inline]
6441 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6442 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6443 }
6444 #[inline]
6445 pub fn drop_token(&self) -> Option<SyntaxToken> {
6446 support::token(&self.syntax, SyntaxKind::DROP_KW)
6447 }
6448 #[inline]
6449 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6450 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6451 }
6452 #[inline]
6453 pub fn routine_token(&self) -> Option<SyntaxToken> {
6454 support::token(&self.syntax, SyntaxKind::ROUTINE_KW)
6455 }
6456}
6457
6458#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6459pub struct DropRule {
6460 pub(crate) syntax: SyntaxNode,
6461}
6462impl DropRule {
6463 #[inline]
6464 pub fn if_exists(&self) -> Option<IfExists> {
6465 support::child(&self.syntax)
6466 }
6467 #[inline]
6468 pub fn name_ref(&self) -> Option<NameRef> {
6469 support::child(&self.syntax)
6470 }
6471 #[inline]
6472 pub fn on_table(&self) -> Option<OnTable> {
6473 support::child(&self.syntax)
6474 }
6475 #[inline]
6476 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6477 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6478 }
6479 #[inline]
6480 pub fn drop_token(&self) -> Option<SyntaxToken> {
6481 support::token(&self.syntax, SyntaxKind::DROP_KW)
6482 }
6483 #[inline]
6484 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6485 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6486 }
6487 #[inline]
6488 pub fn rule_token(&self) -> Option<SyntaxToken> {
6489 support::token(&self.syntax, SyntaxKind::RULE_KW)
6490 }
6491}
6492
6493#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6494pub struct DropSchema {
6495 pub(crate) syntax: SyntaxNode,
6496}
6497impl DropSchema {
6498 #[inline]
6499 pub fn if_exists(&self) -> Option<IfExists> {
6500 support::child(&self.syntax)
6501 }
6502 #[inline]
6503 pub fn name_refs(&self) -> AstChildren<NameRef> {
6504 support::children(&self.syntax)
6505 }
6506 #[inline]
6507 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6508 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6509 }
6510 #[inline]
6511 pub fn drop_token(&self) -> Option<SyntaxToken> {
6512 support::token(&self.syntax, SyntaxKind::DROP_KW)
6513 }
6514 #[inline]
6515 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6516 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6517 }
6518 #[inline]
6519 pub fn schema_token(&self) -> Option<SyntaxToken> {
6520 support::token(&self.syntax, SyntaxKind::SCHEMA_KW)
6521 }
6522}
6523
6524#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6525pub struct DropSequence {
6526 pub(crate) syntax: SyntaxNode,
6527}
6528impl DropSequence {
6529 #[inline]
6530 pub fn if_exists(&self) -> Option<IfExists> {
6531 support::child(&self.syntax)
6532 }
6533 #[inline]
6534 pub fn paths(&self) -> AstChildren<Path> {
6535 support::children(&self.syntax)
6536 }
6537 #[inline]
6538 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6539 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6540 }
6541 #[inline]
6542 pub fn drop_token(&self) -> Option<SyntaxToken> {
6543 support::token(&self.syntax, SyntaxKind::DROP_KW)
6544 }
6545 #[inline]
6546 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6547 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6548 }
6549 #[inline]
6550 pub fn sequence_token(&self) -> Option<SyntaxToken> {
6551 support::token(&self.syntax, SyntaxKind::SEQUENCE_KW)
6552 }
6553}
6554
6555#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6556pub struct DropServer {
6557 pub(crate) syntax: SyntaxNode,
6558}
6559impl DropServer {
6560 #[inline]
6561 pub fn if_exists(&self) -> Option<IfExists> {
6562 support::child(&self.syntax)
6563 }
6564 #[inline]
6565 pub fn name_ref(&self) -> Option<NameRef> {
6566 support::child(&self.syntax)
6567 }
6568 #[inline]
6569 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6570 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6571 }
6572 #[inline]
6573 pub fn drop_token(&self) -> Option<SyntaxToken> {
6574 support::token(&self.syntax, SyntaxKind::DROP_KW)
6575 }
6576 #[inline]
6577 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6578 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6579 }
6580 #[inline]
6581 pub fn server_token(&self) -> Option<SyntaxToken> {
6582 support::token(&self.syntax, SyntaxKind::SERVER_KW)
6583 }
6584}
6585
6586#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6587pub struct DropStatistics {
6588 pub(crate) syntax: SyntaxNode,
6589}
6590impl DropStatistics {
6591 #[inline]
6592 pub fn if_exists(&self) -> Option<IfExists> {
6593 support::child(&self.syntax)
6594 }
6595 #[inline]
6596 pub fn paths(&self) -> AstChildren<Path> {
6597 support::children(&self.syntax)
6598 }
6599 #[inline]
6600 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6601 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6602 }
6603 #[inline]
6604 pub fn drop_token(&self) -> Option<SyntaxToken> {
6605 support::token(&self.syntax, SyntaxKind::DROP_KW)
6606 }
6607 #[inline]
6608 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6609 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6610 }
6611 #[inline]
6612 pub fn statistics_token(&self) -> Option<SyntaxToken> {
6613 support::token(&self.syntax, SyntaxKind::STATISTICS_KW)
6614 }
6615}
6616
6617#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6618pub struct DropSubscription {
6619 pub(crate) syntax: SyntaxNode,
6620}
6621impl DropSubscription {
6622 #[inline]
6623 pub fn if_exists(&self) -> Option<IfExists> {
6624 support::child(&self.syntax)
6625 }
6626 #[inline]
6627 pub fn name_ref(&self) -> Option<NameRef> {
6628 support::child(&self.syntax)
6629 }
6630 #[inline]
6631 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6632 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6633 }
6634 #[inline]
6635 pub fn drop_token(&self) -> Option<SyntaxToken> {
6636 support::token(&self.syntax, SyntaxKind::DROP_KW)
6637 }
6638 #[inline]
6639 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6640 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6641 }
6642 #[inline]
6643 pub fn subscription_token(&self) -> Option<SyntaxToken> {
6644 support::token(&self.syntax, SyntaxKind::SUBSCRIPTION_KW)
6645 }
6646}
6647
6648#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6649pub struct DropTable {
6650 pub(crate) syntax: SyntaxNode,
6651}
6652impl DropTable {
6653 #[inline]
6654 pub fn if_exists(&self) -> Option<IfExists> {
6655 support::child(&self.syntax)
6656 }
6657 #[inline]
6658 pub fn path(&self) -> Option<Path> {
6659 support::child(&self.syntax)
6660 }
6661 #[inline]
6662 pub fn comma_token(&self) -> Option<SyntaxToken> {
6663 support::token(&self.syntax, SyntaxKind::COMMA)
6664 }
6665 #[inline]
6666 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6667 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6668 }
6669 #[inline]
6670 pub fn drop_token(&self) -> Option<SyntaxToken> {
6671 support::token(&self.syntax, SyntaxKind::DROP_KW)
6672 }
6673 #[inline]
6674 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6675 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6676 }
6677 #[inline]
6678 pub fn table_token(&self) -> Option<SyntaxToken> {
6679 support::token(&self.syntax, SyntaxKind::TABLE_KW)
6680 }
6681}
6682
6683#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6684pub struct DropTablespace {
6685 pub(crate) syntax: SyntaxNode,
6686}
6687impl DropTablespace {
6688 #[inline]
6689 pub fn if_exists(&self) -> Option<IfExists> {
6690 support::child(&self.syntax)
6691 }
6692 #[inline]
6693 pub fn name_ref(&self) -> Option<NameRef> {
6694 support::child(&self.syntax)
6695 }
6696 #[inline]
6697 pub fn drop_token(&self) -> Option<SyntaxToken> {
6698 support::token(&self.syntax, SyntaxKind::DROP_KW)
6699 }
6700 #[inline]
6701 pub fn tablespace_token(&self) -> Option<SyntaxToken> {
6702 support::token(&self.syntax, SyntaxKind::TABLESPACE_KW)
6703 }
6704}
6705
6706#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6707pub struct DropTextSearchConfig {
6708 pub(crate) syntax: SyntaxNode,
6709}
6710impl DropTextSearchConfig {
6711 #[inline]
6712 pub fn if_exists(&self) -> Option<IfExists> {
6713 support::child(&self.syntax)
6714 }
6715 #[inline]
6716 pub fn path(&self) -> Option<Path> {
6717 support::child(&self.syntax)
6718 }
6719 #[inline]
6720 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6721 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6722 }
6723 #[inline]
6724 pub fn configuration_token(&self) -> Option<SyntaxToken> {
6725 support::token(&self.syntax, SyntaxKind::CONFIGURATION_KW)
6726 }
6727 #[inline]
6728 pub fn drop_token(&self) -> Option<SyntaxToken> {
6729 support::token(&self.syntax, SyntaxKind::DROP_KW)
6730 }
6731 #[inline]
6732 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6733 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6734 }
6735 #[inline]
6736 pub fn search_token(&self) -> Option<SyntaxToken> {
6737 support::token(&self.syntax, SyntaxKind::SEARCH_KW)
6738 }
6739 #[inline]
6740 pub fn text_token(&self) -> Option<SyntaxToken> {
6741 support::token(&self.syntax, SyntaxKind::TEXT_KW)
6742 }
6743}
6744
6745#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6746pub struct DropTextSearchDict {
6747 pub(crate) syntax: SyntaxNode,
6748}
6749impl DropTextSearchDict {
6750 #[inline]
6751 pub fn if_exists(&self) -> Option<IfExists> {
6752 support::child(&self.syntax)
6753 }
6754 #[inline]
6755 pub fn path(&self) -> Option<Path> {
6756 support::child(&self.syntax)
6757 }
6758 #[inline]
6759 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6760 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6761 }
6762 #[inline]
6763 pub fn dictionary_token(&self) -> Option<SyntaxToken> {
6764 support::token(&self.syntax, SyntaxKind::DICTIONARY_KW)
6765 }
6766 #[inline]
6767 pub fn drop_token(&self) -> Option<SyntaxToken> {
6768 support::token(&self.syntax, SyntaxKind::DROP_KW)
6769 }
6770 #[inline]
6771 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6772 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6773 }
6774 #[inline]
6775 pub fn search_token(&self) -> Option<SyntaxToken> {
6776 support::token(&self.syntax, SyntaxKind::SEARCH_KW)
6777 }
6778 #[inline]
6779 pub fn text_token(&self) -> Option<SyntaxToken> {
6780 support::token(&self.syntax, SyntaxKind::TEXT_KW)
6781 }
6782}
6783
6784#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6785pub struct DropTextSearchParser {
6786 pub(crate) syntax: SyntaxNode,
6787}
6788impl DropTextSearchParser {
6789 #[inline]
6790 pub fn if_exists(&self) -> Option<IfExists> {
6791 support::child(&self.syntax)
6792 }
6793 #[inline]
6794 pub fn path(&self) -> Option<Path> {
6795 support::child(&self.syntax)
6796 }
6797 #[inline]
6798 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6799 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6800 }
6801 #[inline]
6802 pub fn drop_token(&self) -> Option<SyntaxToken> {
6803 support::token(&self.syntax, SyntaxKind::DROP_KW)
6804 }
6805 #[inline]
6806 pub fn parser_token(&self) -> Option<SyntaxToken> {
6807 support::token(&self.syntax, SyntaxKind::PARSER_KW)
6808 }
6809 #[inline]
6810 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6811 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6812 }
6813 #[inline]
6814 pub fn search_token(&self) -> Option<SyntaxToken> {
6815 support::token(&self.syntax, SyntaxKind::SEARCH_KW)
6816 }
6817 #[inline]
6818 pub fn text_token(&self) -> Option<SyntaxToken> {
6819 support::token(&self.syntax, SyntaxKind::TEXT_KW)
6820 }
6821}
6822
6823#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6824pub struct DropTextSearchTemplate {
6825 pub(crate) syntax: SyntaxNode,
6826}
6827impl DropTextSearchTemplate {
6828 #[inline]
6829 pub fn if_exists(&self) -> Option<IfExists> {
6830 support::child(&self.syntax)
6831 }
6832 #[inline]
6833 pub fn path(&self) -> Option<Path> {
6834 support::child(&self.syntax)
6835 }
6836 #[inline]
6837 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6838 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6839 }
6840 #[inline]
6841 pub fn drop_token(&self) -> Option<SyntaxToken> {
6842 support::token(&self.syntax, SyntaxKind::DROP_KW)
6843 }
6844 #[inline]
6845 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6846 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6847 }
6848 #[inline]
6849 pub fn search_token(&self) -> Option<SyntaxToken> {
6850 support::token(&self.syntax, SyntaxKind::SEARCH_KW)
6851 }
6852 #[inline]
6853 pub fn template_token(&self) -> Option<SyntaxToken> {
6854 support::token(&self.syntax, SyntaxKind::TEMPLATE_KW)
6855 }
6856 #[inline]
6857 pub fn text_token(&self) -> Option<SyntaxToken> {
6858 support::token(&self.syntax, SyntaxKind::TEXT_KW)
6859 }
6860}
6861
6862#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6863pub struct DropTransform {
6864 pub(crate) syntax: SyntaxNode,
6865}
6866impl DropTransform {
6867 #[inline]
6868 pub fn if_exists(&self) -> Option<IfExists> {
6869 support::child(&self.syntax)
6870 }
6871 #[inline]
6872 pub fn language(&self) -> Option<NameRef> {
6873 support::child(&self.syntax)
6874 }
6875 #[inline]
6876 pub fn ty(&self) -> Option<Type> {
6877 support::child(&self.syntax)
6878 }
6879 #[inline]
6880 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6881 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6882 }
6883 #[inline]
6884 pub fn drop_token(&self) -> Option<SyntaxToken> {
6885 support::token(&self.syntax, SyntaxKind::DROP_KW)
6886 }
6887 #[inline]
6888 pub fn for_token(&self) -> Option<SyntaxToken> {
6889 support::token(&self.syntax, SyntaxKind::FOR_KW)
6890 }
6891 #[inline]
6892 pub fn language_token(&self) -> Option<SyntaxToken> {
6893 support::token(&self.syntax, SyntaxKind::LANGUAGE_KW)
6894 }
6895 #[inline]
6896 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6897 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6898 }
6899 #[inline]
6900 pub fn transform_token(&self) -> Option<SyntaxToken> {
6901 support::token(&self.syntax, SyntaxKind::TRANSFORM_KW)
6902 }
6903}
6904
6905#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6906pub struct DropTrigger {
6907 pub(crate) syntax: SyntaxNode,
6908}
6909impl DropTrigger {
6910 #[inline]
6911 pub fn if_exists(&self) -> Option<IfExists> {
6912 support::child(&self.syntax)
6913 }
6914 #[inline]
6915 pub fn on_table(&self) -> Option<OnTable> {
6916 support::child(&self.syntax)
6917 }
6918 #[inline]
6919 pub fn path(&self) -> Option<Path> {
6920 support::child(&self.syntax)
6921 }
6922 #[inline]
6923 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6924 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6925 }
6926 #[inline]
6927 pub fn drop_token(&self) -> Option<SyntaxToken> {
6928 support::token(&self.syntax, SyntaxKind::DROP_KW)
6929 }
6930 #[inline]
6931 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6932 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6933 }
6934 #[inline]
6935 pub fn trigger_token(&self) -> Option<SyntaxToken> {
6936 support::token(&self.syntax, SyntaxKind::TRIGGER_KW)
6937 }
6938}
6939
6940#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6941pub struct DropType {
6942 pub(crate) syntax: SyntaxNode,
6943}
6944impl DropType {
6945 #[inline]
6946 pub fn if_exists(&self) -> Option<IfExists> {
6947 support::child(&self.syntax)
6948 }
6949 #[inline]
6950 pub fn paths(&self) -> AstChildren<Path> {
6951 support::children(&self.syntax)
6952 }
6953 #[inline]
6954 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6955 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6956 }
6957 #[inline]
6958 pub fn drop_token(&self) -> Option<SyntaxToken> {
6959 support::token(&self.syntax, SyntaxKind::DROP_KW)
6960 }
6961 #[inline]
6962 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6963 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6964 }
6965 #[inline]
6966 pub fn type_token(&self) -> Option<SyntaxToken> {
6967 support::token(&self.syntax, SyntaxKind::TYPE_KW)
6968 }
6969}
6970
6971#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6972pub struct DropUser {
6973 pub(crate) syntax: SyntaxNode,
6974}
6975impl DropUser {
6976 #[inline]
6977 pub fn if_exists(&self) -> Option<IfExists> {
6978 support::child(&self.syntax)
6979 }
6980 #[inline]
6981 pub fn name_refs(&self) -> AstChildren<NameRef> {
6982 support::children(&self.syntax)
6983 }
6984 #[inline]
6985 pub fn drop_token(&self) -> Option<SyntaxToken> {
6986 support::token(&self.syntax, SyntaxKind::DROP_KW)
6987 }
6988 #[inline]
6989 pub fn user_token(&self) -> Option<SyntaxToken> {
6990 support::token(&self.syntax, SyntaxKind::USER_KW)
6991 }
6992}
6993
6994#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6995pub struct DropUserMapping {
6996 pub(crate) syntax: SyntaxNode,
6997}
6998impl DropUserMapping {
6999 #[inline]
7000 pub fn if_exists(&self) -> Option<IfExists> {
7001 support::child(&self.syntax)
7002 }
7003 #[inline]
7004 pub fn name_ref(&self) -> Option<NameRef> {
7005 support::child(&self.syntax)
7006 }
7007 #[inline]
7008 pub fn role(&self) -> Option<Role> {
7009 support::child(&self.syntax)
7010 }
7011 #[inline]
7012 pub fn drop_token(&self) -> Option<SyntaxToken> {
7013 support::token(&self.syntax, SyntaxKind::DROP_KW)
7014 }
7015 #[inline]
7016 pub fn for_token(&self) -> Option<SyntaxToken> {
7017 support::token(&self.syntax, SyntaxKind::FOR_KW)
7018 }
7019 #[inline]
7020 pub fn mapping_token(&self) -> Option<SyntaxToken> {
7021 support::token(&self.syntax, SyntaxKind::MAPPING_KW)
7022 }
7023 #[inline]
7024 pub fn server_token(&self) -> Option<SyntaxToken> {
7025 support::token(&self.syntax, SyntaxKind::SERVER_KW)
7026 }
7027 #[inline]
7028 pub fn user_token(&self) -> Option<SyntaxToken> {
7029 support::token(&self.syntax, SyntaxKind::USER_KW)
7030 }
7031}
7032
7033#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7034pub struct DropView {
7035 pub(crate) syntax: SyntaxNode,
7036}
7037impl DropView {
7038 #[inline]
7039 pub fn if_exists(&self) -> Option<IfExists> {
7040 support::child(&self.syntax)
7041 }
7042 #[inline]
7043 pub fn path(&self) -> Option<Path> {
7044 support::child(&self.syntax)
7045 }
7046 #[inline]
7047 pub fn cascade_token(&self) -> Option<SyntaxToken> {
7048 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
7049 }
7050 #[inline]
7051 pub fn drop_token(&self) -> Option<SyntaxToken> {
7052 support::token(&self.syntax, SyntaxKind::DROP_KW)
7053 }
7054 #[inline]
7055 pub fn restrict_token(&self) -> Option<SyntaxToken> {
7056 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
7057 }
7058 #[inline]
7059 pub fn view_token(&self) -> Option<SyntaxToken> {
7060 support::token(&self.syntax, SyntaxKind::VIEW_KW)
7061 }
7062}
7063
7064#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7065pub struct ElseClause {
7066 pub(crate) syntax: SyntaxNode,
7067}
7068impl ElseClause {
7069 #[inline]
7070 pub fn expr(&self) -> Option<Expr> {
7071 support::child(&self.syntax)
7072 }
7073 #[inline]
7074 pub fn else_token(&self) -> Option<SyntaxToken> {
7075 support::token(&self.syntax, SyntaxKind::ELSE_KW)
7076 }
7077}
7078
7079#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7080pub struct EnableAlwaysRule {
7081 pub(crate) syntax: SyntaxNode,
7082}
7083impl EnableAlwaysRule {
7084 #[inline]
7085 pub fn always_token(&self) -> Option<SyntaxToken> {
7086 support::token(&self.syntax, SyntaxKind::ALWAYS_KW)
7087 }
7088 #[inline]
7089 pub fn enable_token(&self) -> Option<SyntaxToken> {
7090 support::token(&self.syntax, SyntaxKind::ENABLE_KW)
7091 }
7092 #[inline]
7093 pub fn rule_token(&self) -> Option<SyntaxToken> {
7094 support::token(&self.syntax, SyntaxKind::RULE_KW)
7095 }
7096}
7097
7098#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7099pub struct EnableAlwaysTrigger {
7100 pub(crate) syntax: SyntaxNode,
7101}
7102impl EnableAlwaysTrigger {
7103 #[inline]
7104 pub fn always_token(&self) -> Option<SyntaxToken> {
7105 support::token(&self.syntax, SyntaxKind::ALWAYS_KW)
7106 }
7107 #[inline]
7108 pub fn enable_token(&self) -> Option<SyntaxToken> {
7109 support::token(&self.syntax, SyntaxKind::ENABLE_KW)
7110 }
7111 #[inline]
7112 pub fn trigger_token(&self) -> Option<SyntaxToken> {
7113 support::token(&self.syntax, SyntaxKind::TRIGGER_KW)
7114 }
7115}
7116
7117#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7118pub struct EnableReplicaRule {
7119 pub(crate) syntax: SyntaxNode,
7120}
7121impl EnableReplicaRule {
7122 #[inline]
7123 pub fn enable_token(&self) -> Option<SyntaxToken> {
7124 support::token(&self.syntax, SyntaxKind::ENABLE_KW)
7125 }
7126 #[inline]
7127 pub fn replica_token(&self) -> Option<SyntaxToken> {
7128 support::token(&self.syntax, SyntaxKind::REPLICA_KW)
7129 }
7130 #[inline]
7131 pub fn rule_token(&self) -> Option<SyntaxToken> {
7132 support::token(&self.syntax, SyntaxKind::RULE_KW)
7133 }
7134}
7135
7136#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7137pub struct EnableReplicaTrigger {
7138 pub(crate) syntax: SyntaxNode,
7139}
7140impl EnableReplicaTrigger {
7141 #[inline]
7142 pub fn enable_token(&self) -> Option<SyntaxToken> {
7143 support::token(&self.syntax, SyntaxKind::ENABLE_KW)
7144 }
7145 #[inline]
7146 pub fn replica_token(&self) -> Option<SyntaxToken> {
7147 support::token(&self.syntax, SyntaxKind::REPLICA_KW)
7148 }
7149 #[inline]
7150 pub fn trigger_token(&self) -> Option<SyntaxToken> {
7151 support::token(&self.syntax, SyntaxKind::TRIGGER_KW)
7152 }
7153}
7154
7155#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7156pub struct EnableRls {
7157 pub(crate) syntax: SyntaxNode,
7158}
7159impl EnableRls {
7160 #[inline]
7161 pub fn enable_token(&self) -> Option<SyntaxToken> {
7162 support::token(&self.syntax, SyntaxKind::ENABLE_KW)
7163 }
7164 #[inline]
7165 pub fn level_token(&self) -> Option<SyntaxToken> {
7166 support::token(&self.syntax, SyntaxKind::LEVEL_KW)
7167 }
7168 #[inline]
7169 pub fn row_token(&self) -> Option<SyntaxToken> {
7170 support::token(&self.syntax, SyntaxKind::ROW_KW)
7171 }
7172 #[inline]
7173 pub fn security_token(&self) -> Option<SyntaxToken> {
7174 support::token(&self.syntax, SyntaxKind::SECURITY_KW)
7175 }
7176}
7177
7178#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7179pub struct EnableRule {
7180 pub(crate) syntax: SyntaxNode,
7181}
7182impl EnableRule {
7183 #[inline]
7184 pub fn enable_token(&self) -> Option<SyntaxToken> {
7185 support::token(&self.syntax, SyntaxKind::ENABLE_KW)
7186 }
7187 #[inline]
7188 pub fn rule_token(&self) -> Option<SyntaxToken> {
7189 support::token(&self.syntax, SyntaxKind::RULE_KW)
7190 }
7191}
7192
7193#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7194pub struct EnableTrigger {
7195 pub(crate) syntax: SyntaxNode,
7196}
7197impl EnableTrigger {
7198 #[inline]
7199 pub fn enable_token(&self) -> Option<SyntaxToken> {
7200 support::token(&self.syntax, SyntaxKind::ENABLE_KW)
7201 }
7202 #[inline]
7203 pub fn trigger_token(&self) -> Option<SyntaxToken> {
7204 support::token(&self.syntax, SyntaxKind::TRIGGER_KW)
7205 }
7206}
7207
7208#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7209pub struct Enforced {
7210 pub(crate) syntax: SyntaxNode,
7211}
7212impl Enforced {
7213 #[inline]
7214 pub fn enforced_token(&self) -> Option<SyntaxToken> {
7215 support::token(&self.syntax, SyntaxKind::ENFORCED_KW)
7216 }
7217}
7218
7219#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7220pub struct EventTriggerWhen {
7221 pub(crate) syntax: SyntaxNode,
7222}
7223impl EventTriggerWhen {
7224 #[inline]
7225 pub fn literals(&self) -> AstChildren<Literal> {
7226 support::children(&self.syntax)
7227 }
7228 #[inline]
7229 pub fn name_ref(&self) -> Option<NameRef> {
7230 support::child(&self.syntax)
7231 }
7232 #[inline]
7233 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
7234 support::token(&self.syntax, SyntaxKind::L_PAREN)
7235 }
7236 #[inline]
7237 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
7238 support::token(&self.syntax, SyntaxKind::R_PAREN)
7239 }
7240 #[inline]
7241 pub fn in_token(&self) -> Option<SyntaxToken> {
7242 support::token(&self.syntax, SyntaxKind::IN_KW)
7243 }
7244}
7245
7246#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7247pub struct EventTriggerWhenClause {
7248 pub(crate) syntax: SyntaxNode,
7249}
7250impl EventTriggerWhenClause {
7251 #[inline]
7252 pub fn event_trigger_whens(&self) -> AstChildren<EventTriggerWhen> {
7253 support::children(&self.syntax)
7254 }
7255 #[inline]
7256 pub fn when_token(&self) -> Option<SyntaxToken> {
7257 support::token(&self.syntax, SyntaxKind::WHEN_KW)
7258 }
7259}
7260
7261#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7262pub struct ExceptTables {
7263 pub(crate) syntax: SyntaxNode,
7264}
7265impl ExceptTables {
7266 #[inline]
7267 pub fn name_refs(&self) -> AstChildren<NameRef> {
7268 support::children(&self.syntax)
7269 }
7270 #[inline]
7271 pub fn except_token(&self) -> Option<SyntaxToken> {
7272 support::token(&self.syntax, SyntaxKind::EXCEPT_KW)
7273 }
7274}
7275
7276#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7277pub struct ExcludeConstraint {
7278 pub(crate) syntax: SyntaxNode,
7279}
7280impl ExcludeConstraint {
7281 #[inline]
7282 pub fn constraint_exclusion_list(&self) -> Option<ConstraintExclusionList> {
7283 support::child(&self.syntax)
7284 }
7285 #[inline]
7286 pub fn constraint_index_method(&self) -> Option<ConstraintIndexMethod> {
7287 support::child(&self.syntax)
7288 }
7289 #[inline]
7290 pub fn name(&self) -> Option<Name> {
7291 support::child(&self.syntax)
7292 }
7293 #[inline]
7294 pub fn where_condition_clause(&self) -> Option<WhereConditionClause> {
7295 support::child(&self.syntax)
7296 }
7297 #[inline]
7298 pub fn constraint_token(&self) -> Option<SyntaxToken> {
7299 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
7300 }
7301 #[inline]
7302 pub fn exclude_token(&self) -> Option<SyntaxToken> {
7303 support::token(&self.syntax, SyntaxKind::EXCLUDE_KW)
7304 }
7305}
7306
7307#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7308pub struct Execute {
7309 pub(crate) syntax: SyntaxNode,
7310}
7311impl Execute {
7312 #[inline]
7313 pub fn arg_list(&self) -> Option<ArgList> {
7314 support::child(&self.syntax)
7315 }
7316 #[inline]
7317 pub fn name_ref(&self) -> Option<NameRef> {
7318 support::child(&self.syntax)
7319 }
7320 #[inline]
7321 pub fn execute_token(&self) -> Option<SyntaxToken> {
7322 support::token(&self.syntax, SyntaxKind::EXECUTE_KW)
7323 }
7324}
7325
7326#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7327pub struct ExistsFn {
7328 pub(crate) syntax: SyntaxNode,
7329}
7330impl ExistsFn {
7331 #[inline]
7332 pub fn select_variant(&self) -> Option<SelectVariant> {
7333 support::child(&self.syntax)
7334 }
7335 #[inline]
7336 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
7337 support::token(&self.syntax, SyntaxKind::L_PAREN)
7338 }
7339 #[inline]
7340 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
7341 support::token(&self.syntax, SyntaxKind::R_PAREN)
7342 }
7343 #[inline]
7344 pub fn exists_token(&self) -> Option<SyntaxToken> {
7345 support::token(&self.syntax, SyntaxKind::EXISTS_KW)
7346 }
7347}
7348
7349#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7350pub struct Explain {
7351 pub(crate) syntax: SyntaxNode,
7352}
7353impl Explain {
7354 #[inline]
7355 pub fn explain_stmt(&self) -> Option<ExplainStmt> {
7356 support::child(&self.syntax)
7357 }
7358 #[inline]
7359 pub fn analyse_token(&self) -> Option<SyntaxToken> {
7360 support::token(&self.syntax, SyntaxKind::ANALYSE_KW)
7361 }
7362 #[inline]
7363 pub fn analyze_token(&self) -> Option<SyntaxToken> {
7364 support::token(&self.syntax, SyntaxKind::ANALYZE_KW)
7365 }
7366 #[inline]
7367 pub fn explain_token(&self) -> Option<SyntaxToken> {
7368 support::token(&self.syntax, SyntaxKind::EXPLAIN_KW)
7369 }
7370 #[inline]
7371 pub fn verbose_token(&self) -> Option<SyntaxToken> {
7372 support::token(&self.syntax, SyntaxKind::VERBOSE_KW)
7373 }
7374}
7375
7376#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7377pub struct ExprAsName {
7378 pub(crate) syntax: SyntaxNode,
7379}
7380impl ExprAsName {
7381 #[inline]
7382 pub fn as_name(&self) -> Option<AsName> {
7383 support::child(&self.syntax)
7384 }
7385 #[inline]
7386 pub fn expr(&self) -> Option<Expr> {
7387 support::child(&self.syntax)
7388 }
7389}
7390
7391#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7392pub struct ExprType {
7393 pub(crate) syntax: SyntaxNode,
7394}
7395impl ExprType {
7396 #[inline]
7397 pub fn expr(&self) -> Option<Expr> {
7398 support::child(&self.syntax)
7399 }
7400}
7401
7402#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7403pub struct ExtractFn {
7404 pub(crate) syntax: SyntaxNode,
7405}
7406impl ExtractFn {
7407 #[inline]
7408 pub fn expr(&self) -> Option<Expr> {
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 #[inline]
7420 pub fn day_token(&self) -> Option<SyntaxToken> {
7421 support::token(&self.syntax, SyntaxKind::DAY_KW)
7422 }
7423 #[inline]
7424 pub fn extract_token(&self) -> Option<SyntaxToken> {
7425 support::token(&self.syntax, SyntaxKind::EXTRACT_KW)
7426 }
7427 #[inline]
7428 pub fn from_token(&self) -> Option<SyntaxToken> {
7429 support::token(&self.syntax, SyntaxKind::FROM_KW)
7430 }
7431 #[inline]
7432 pub fn hour_token(&self) -> Option<SyntaxToken> {
7433 support::token(&self.syntax, SyntaxKind::HOUR_KW)
7434 }
7435 #[inline]
7436 pub fn ident_token(&self) -> Option<SyntaxToken> {
7437 support::token(&self.syntax, SyntaxKind::IDENT)
7438 }
7439 #[inline]
7440 pub fn minute_token(&self) -> Option<SyntaxToken> {
7441 support::token(&self.syntax, SyntaxKind::MINUTE_KW)
7442 }
7443 #[inline]
7444 pub fn month_token(&self) -> Option<SyntaxToken> {
7445 support::token(&self.syntax, SyntaxKind::MONTH_KW)
7446 }
7447 #[inline]
7448 pub fn second_token(&self) -> Option<SyntaxToken> {
7449 support::token(&self.syntax, SyntaxKind::SECOND_KW)
7450 }
7451 #[inline]
7452 pub fn string_token(&self) -> Option<SyntaxToken> {
7453 support::token(&self.syntax, SyntaxKind::STRING_KW)
7454 }
7455 #[inline]
7456 pub fn year_token(&self) -> Option<SyntaxToken> {
7457 support::token(&self.syntax, SyntaxKind::YEAR_KW)
7458 }
7459}
7460
7461#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7462pub struct FatArrow {
7463 pub(crate) syntax: SyntaxNode,
7464}
7465impl FatArrow {
7466 #[inline]
7467 pub fn eq_token(&self) -> Option<SyntaxToken> {
7468 support::token(&self.syntax, SyntaxKind::EQ)
7469 }
7470 #[inline]
7471 pub fn r_angle_token(&self) -> Option<SyntaxToken> {
7472 support::token(&self.syntax, SyntaxKind::R_ANGLE)
7473 }
7474}
7475
7476#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7477pub struct FdwOption {
7478 pub(crate) syntax: SyntaxNode,
7479}
7480impl FdwOption {
7481 #[inline]
7482 pub fn alter_option_list(&self) -> Option<AlterOptionList> {
7483 support::child(&self.syntax)
7484 }
7485 #[inline]
7486 pub fn path(&self) -> Option<Path> {
7487 support::child(&self.syntax)
7488 }
7489 #[inline]
7490 pub fn handler_token(&self) -> Option<SyntaxToken> {
7491 support::token(&self.syntax, SyntaxKind::HANDLER_KW)
7492 }
7493 #[inline]
7494 pub fn no_token(&self) -> Option<SyntaxToken> {
7495 support::token(&self.syntax, SyntaxKind::NO_KW)
7496 }
7497 #[inline]
7498 pub fn options_token(&self) -> Option<SyntaxToken> {
7499 support::token(&self.syntax, SyntaxKind::OPTIONS_KW)
7500 }
7501 #[inline]
7502 pub fn validator_token(&self) -> Option<SyntaxToken> {
7503 support::token(&self.syntax, SyntaxKind::VALIDATOR_KW)
7504 }
7505}
7506
7507#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7508pub struct FdwOptionList {
7509 pub(crate) syntax: SyntaxNode,
7510}
7511impl FdwOptionList {
7512 #[inline]
7513 pub fn fdw_options(&self) -> AstChildren<FdwOption> {
7514 support::children(&self.syntax)
7515 }
7516}
7517
7518#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7519pub struct Fetch {
7520 pub(crate) syntax: SyntaxNode,
7521}
7522impl Fetch {
7523 #[inline]
7524 pub fn name_ref(&self) -> Option<NameRef> {
7525 support::child(&self.syntax)
7526 }
7527 #[inline]
7528 pub fn fetch_token(&self) -> Option<SyntaxToken> {
7529 support::token(&self.syntax, SyntaxKind::FETCH_KW)
7530 }
7531 #[inline]
7532 pub fn from_token(&self) -> Option<SyntaxToken> {
7533 support::token(&self.syntax, SyntaxKind::FROM_KW)
7534 }
7535 #[inline]
7536 pub fn in_token(&self) -> Option<SyntaxToken> {
7537 support::token(&self.syntax, SyntaxKind::IN_KW)
7538 }
7539}
7540
7541#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7542pub struct FetchClause {
7543 pub(crate) syntax: SyntaxNode,
7544}
7545impl FetchClause {
7546 #[inline]
7547 pub fn expr(&self) -> Option<Expr> {
7548 support::child(&self.syntax)
7549 }
7550 #[inline]
7551 pub fn fetch_token(&self) -> Option<SyntaxToken> {
7552 support::token(&self.syntax, SyntaxKind::FETCH_KW)
7553 }
7554 #[inline]
7555 pub fn first_token(&self) -> Option<SyntaxToken> {
7556 support::token(&self.syntax, SyntaxKind::FIRST_KW)
7557 }
7558 #[inline]
7559 pub fn next_token(&self) -> Option<SyntaxToken> {
7560 support::token(&self.syntax, SyntaxKind::NEXT_KW)
7561 }
7562 #[inline]
7563 pub fn only_token(&self) -> Option<SyntaxToken> {
7564 support::token(&self.syntax, SyntaxKind::ONLY_KW)
7565 }
7566 #[inline]
7567 pub fn row_token(&self) -> Option<SyntaxToken> {
7568 support::token(&self.syntax, SyntaxKind::ROW_KW)
7569 }
7570 #[inline]
7571 pub fn rows_token(&self) -> Option<SyntaxToken> {
7572 support::token(&self.syntax, SyntaxKind::ROWS_KW)
7573 }
7574 #[inline]
7575 pub fn ties_token(&self) -> Option<SyntaxToken> {
7576 support::token(&self.syntax, SyntaxKind::TIES_KW)
7577 }
7578 #[inline]
7579 pub fn with_token(&self) -> Option<SyntaxToken> {
7580 support::token(&self.syntax, SyntaxKind::WITH_KW)
7581 }
7582}
7583
7584#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7585pub struct FieldExpr {
7586 pub(crate) syntax: SyntaxNode,
7587}
7588impl FieldExpr {
7589 #[inline]
7590 pub fn star_token(&self) -> Option<SyntaxToken> {
7591 support::token(&self.syntax, SyntaxKind::STAR)
7592 }
7593 #[inline]
7594 pub fn dot_token(&self) -> Option<SyntaxToken> {
7595 support::token(&self.syntax, SyntaxKind::DOT)
7596 }
7597}
7598
7599#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7600pub struct FilterClause {
7601 pub(crate) syntax: SyntaxNode,
7602}
7603impl FilterClause {
7604 #[inline]
7605 pub fn expr(&self) -> Option<Expr> {
7606 support::child(&self.syntax)
7607 }
7608 #[inline]
7609 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
7610 support::token(&self.syntax, SyntaxKind::L_PAREN)
7611 }
7612 #[inline]
7613 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
7614 support::token(&self.syntax, SyntaxKind::R_PAREN)
7615 }
7616 #[inline]
7617 pub fn filter_token(&self) -> Option<SyntaxToken> {
7618 support::token(&self.syntax, SyntaxKind::FILTER_KW)
7619 }
7620 #[inline]
7621 pub fn where_token(&self) -> Option<SyntaxToken> {
7622 support::token(&self.syntax, SyntaxKind::WHERE_KW)
7623 }
7624}
7625
7626#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7627pub struct ForProvider {
7628 pub(crate) syntax: SyntaxNode,
7629}
7630impl ForProvider {
7631 #[inline]
7632 pub fn literal(&self) -> Option<Literal> {
7633 support::child(&self.syntax)
7634 }
7635 #[inline]
7636 pub fn name_ref(&self) -> Option<NameRef> {
7637 support::child(&self.syntax)
7638 }
7639 #[inline]
7640 pub fn for_token(&self) -> Option<SyntaxToken> {
7641 support::token(&self.syntax, SyntaxKind::FOR_KW)
7642 }
7643}
7644
7645#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7646pub struct ForceRls {
7647 pub(crate) syntax: SyntaxNode,
7648}
7649impl ForceRls {
7650 #[inline]
7651 pub fn force_token(&self) -> Option<SyntaxToken> {
7652 support::token(&self.syntax, SyntaxKind::FORCE_KW)
7653 }
7654 #[inline]
7655 pub fn level_token(&self) -> Option<SyntaxToken> {
7656 support::token(&self.syntax, SyntaxKind::LEVEL_KW)
7657 }
7658 #[inline]
7659 pub fn row_token(&self) -> Option<SyntaxToken> {
7660 support::token(&self.syntax, SyntaxKind::ROW_KW)
7661 }
7662 #[inline]
7663 pub fn security_token(&self) -> Option<SyntaxToken> {
7664 support::token(&self.syntax, SyntaxKind::SECURITY_KW)
7665 }
7666}
7667
7668#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7669pub struct ForeignKeyConstraint {
7670 pub(crate) syntax: SyntaxNode,
7671}
7672impl ForeignKeyConstraint {
7673 #[inline]
7674 pub fn match_type(&self) -> Option<MatchType> {
7675 support::child(&self.syntax)
7676 }
7677 #[inline]
7678 pub fn name(&self) -> Option<Name> {
7679 support::child(&self.syntax)
7680 }
7681 #[inline]
7682 pub fn on_delete_action(&self) -> Option<OnDeleteAction> {
7683 support::child(&self.syntax)
7684 }
7685 #[inline]
7686 pub fn on_update_action(&self) -> Option<OnUpdateAction> {
7687 support::child(&self.syntax)
7688 }
7689 #[inline]
7690 pub fn path(&self) -> Option<Path> {
7691 support::child(&self.syntax)
7692 }
7693 #[inline]
7694 pub fn constraint_token(&self) -> Option<SyntaxToken> {
7695 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
7696 }
7697 #[inline]
7698 pub fn foreign_token(&self) -> Option<SyntaxToken> {
7699 support::token(&self.syntax, SyntaxKind::FOREIGN_KW)
7700 }
7701 #[inline]
7702 pub fn key_token(&self) -> Option<SyntaxToken> {
7703 support::token(&self.syntax, SyntaxKind::KEY_KW)
7704 }
7705 #[inline]
7706 pub fn references_token(&self) -> Option<SyntaxToken> {
7707 support::token(&self.syntax, SyntaxKind::REFERENCES_KW)
7708 }
7709}
7710
7711#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7712pub struct FrameClause {
7713 pub(crate) syntax: SyntaxNode,
7714}
7715impl FrameClause {
7716 #[inline]
7717 pub fn groups_token(&self) -> Option<SyntaxToken> {
7718 support::token(&self.syntax, SyntaxKind::GROUPS_KW)
7719 }
7720 #[inline]
7721 pub fn range_token(&self) -> Option<SyntaxToken> {
7722 support::token(&self.syntax, SyntaxKind::RANGE_KW)
7723 }
7724 #[inline]
7725 pub fn rows_token(&self) -> Option<SyntaxToken> {
7726 support::token(&self.syntax, SyntaxKind::ROWS_KW)
7727 }
7728}
7729
7730#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7731pub struct FromClause {
7732 pub(crate) syntax: SyntaxNode,
7733}
7734impl FromClause {
7735 #[inline]
7736 pub fn from_items(&self) -> AstChildren<FromItem> {
7737 support::children(&self.syntax)
7738 }
7739 #[inline]
7740 pub fn join_exprs(&self) -> AstChildren<JoinExpr> {
7741 support::children(&self.syntax)
7742 }
7743 #[inline]
7744 pub fn from_token(&self) -> Option<SyntaxToken> {
7745 support::token(&self.syntax, SyntaxKind::FROM_KW)
7746 }
7747}
7748
7749#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7750pub struct FromItem {
7751 pub(crate) syntax: SyntaxNode,
7752}
7753impl FromItem {
7754 #[inline]
7755 pub fn alias(&self) -> Option<Alias> {
7756 support::child(&self.syntax)
7757 }
7758 #[inline]
7759 pub fn call_expr(&self) -> Option<CallExpr> {
7760 support::child(&self.syntax)
7761 }
7762 #[inline]
7763 pub fn cast_expr(&self) -> Option<CastExpr> {
7764 support::child(&self.syntax)
7765 }
7766 #[inline]
7767 pub fn field_expr(&self) -> Option<FieldExpr> {
7768 support::child(&self.syntax)
7769 }
7770 #[inline]
7771 pub fn json_table(&self) -> Option<JsonTable> {
7772 support::child(&self.syntax)
7773 }
7774 #[inline]
7775 pub fn name_ref(&self) -> Option<NameRef> {
7776 support::child(&self.syntax)
7777 }
7778 #[inline]
7779 pub fn paren_expr(&self) -> Option<ParenExpr> {
7780 support::child(&self.syntax)
7781 }
7782 #[inline]
7783 pub fn paren_select(&self) -> Option<ParenSelect> {
7784 support::child(&self.syntax)
7785 }
7786 #[inline]
7787 pub fn tablesample_clause(&self) -> Option<TablesampleClause> {
7788 support::child(&self.syntax)
7789 }
7790 #[inline]
7791 pub fn xml_table(&self) -> Option<XmlTable> {
7792 support::child(&self.syntax)
7793 }
7794 #[inline]
7795 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
7796 support::token(&self.syntax, SyntaxKind::L_PAREN)
7797 }
7798 #[inline]
7799 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
7800 support::token(&self.syntax, SyntaxKind::R_PAREN)
7801 }
7802 #[inline]
7803 pub fn star_token(&self) -> Option<SyntaxToken> {
7804 support::token(&self.syntax, SyntaxKind::STAR)
7805 }
7806 #[inline]
7807 pub fn from_token(&self) -> Option<SyntaxToken> {
7808 support::token(&self.syntax, SyntaxKind::FROM_KW)
7809 }
7810 #[inline]
7811 pub fn lateral_token(&self) -> Option<SyntaxToken> {
7812 support::token(&self.syntax, SyntaxKind::LATERAL_KW)
7813 }
7814 #[inline]
7815 pub fn only_token(&self) -> Option<SyntaxToken> {
7816 support::token(&self.syntax, SyntaxKind::ONLY_KW)
7817 }
7818 #[inline]
7819 pub fn ordinality_token(&self) -> Option<SyntaxToken> {
7820 support::token(&self.syntax, SyntaxKind::ORDINALITY_KW)
7821 }
7822 #[inline]
7823 pub fn rows_token(&self) -> Option<SyntaxToken> {
7824 support::token(&self.syntax, SyntaxKind::ROWS_KW)
7825 }
7826 #[inline]
7827 pub fn with_token(&self) -> Option<SyntaxToken> {
7828 support::token(&self.syntax, SyntaxKind::WITH_KW)
7829 }
7830}
7831
7832#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7833pub struct FromServer {
7834 pub(crate) syntax: SyntaxNode,
7835}
7836impl FromServer {
7837 #[inline]
7838 pub fn name_ref(&self) -> Option<NameRef> {
7839 support::child(&self.syntax)
7840 }
7841 #[inline]
7842 pub fn from_token(&self) -> Option<SyntaxToken> {
7843 support::token(&self.syntax, SyntaxKind::FROM_KW)
7844 }
7845 #[inline]
7846 pub fn server_token(&self) -> Option<SyntaxToken> {
7847 support::token(&self.syntax, SyntaxKind::SERVER_KW)
7848 }
7849}
7850
7851#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7852pub struct FromTable {
7853 pub(crate) syntax: SyntaxNode,
7854}
7855impl FromTable {
7856 #[inline]
7857 pub fn path(&self) -> Option<Path> {
7858 support::child(&self.syntax)
7859 }
7860 #[inline]
7861 pub fn from_token(&self) -> Option<SyntaxToken> {
7862 support::token(&self.syntax, SyntaxKind::FROM_KW)
7863 }
7864}
7865
7866#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7867pub struct FuncOptionList {
7868 pub(crate) syntax: SyntaxNode,
7869}
7870impl FuncOptionList {
7871 #[inline]
7872 pub fn options(&self) -> AstChildren<FuncOption> {
7873 support::children(&self.syntax)
7874 }
7875}
7876
7877#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7878pub struct FunctionSig {
7879 pub(crate) syntax: SyntaxNode,
7880}
7881impl FunctionSig {
7882 #[inline]
7883 pub fn param_list(&self) -> Option<ParamList> {
7884 support::child(&self.syntax)
7885 }
7886 #[inline]
7887 pub fn path(&self) -> Option<Path> {
7888 support::child(&self.syntax)
7889 }
7890}
7891
7892#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7893pub struct FunctionSigList {
7894 pub(crate) syntax: SyntaxNode,
7895}
7896impl FunctionSigList {
7897 #[inline]
7898 pub fn function_sigs(&self) -> AstChildren<FunctionSig> {
7899 support::children(&self.syntax)
7900 }
7901}
7902
7903#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7904pub struct GeneratedConstraint {
7905 pub(crate) syntax: SyntaxNode,
7906}
7907impl GeneratedConstraint {
7908 #[inline]
7909 pub fn expr(&self) -> Option<Expr> {
7910 support::child(&self.syntax)
7911 }
7912 #[inline]
7913 pub fn name_ref(&self) -> Option<NameRef> {
7914 support::child(&self.syntax)
7915 }
7916 #[inline]
7917 pub fn sequence_option_list(&self) -> Option<SequenceOptionList> {
7918 support::child(&self.syntax)
7919 }
7920 #[inline]
7921 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
7922 support::token(&self.syntax, SyntaxKind::L_PAREN)
7923 }
7924 #[inline]
7925 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
7926 support::token(&self.syntax, SyntaxKind::R_PAREN)
7927 }
7928 #[inline]
7929 pub fn always_token(&self) -> Option<SyntaxToken> {
7930 support::token(&self.syntax, SyntaxKind::ALWAYS_KW)
7931 }
7932 #[inline]
7933 pub fn as_token(&self) -> Option<SyntaxToken> {
7934 support::token(&self.syntax, SyntaxKind::AS_KW)
7935 }
7936 #[inline]
7937 pub fn by_token(&self) -> Option<SyntaxToken> {
7938 support::token(&self.syntax, SyntaxKind::BY_KW)
7939 }
7940 #[inline]
7941 pub fn constraint_token(&self) -> Option<SyntaxToken> {
7942 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
7943 }
7944 #[inline]
7945 pub fn default_token(&self) -> Option<SyntaxToken> {
7946 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
7947 }
7948 #[inline]
7949 pub fn generated_token(&self) -> Option<SyntaxToken> {
7950 support::token(&self.syntax, SyntaxKind::GENERATED_KW)
7951 }
7952 #[inline]
7953 pub fn identity_token(&self) -> Option<SyntaxToken> {
7954 support::token(&self.syntax, SyntaxKind::IDENTITY_KW)
7955 }
7956 #[inline]
7957 pub fn stored_token(&self) -> Option<SyntaxToken> {
7958 support::token(&self.syntax, SyntaxKind::STORED_KW)
7959 }
7960}
7961
7962#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7963pub struct Grant {
7964 pub(crate) syntax: SyntaxNode,
7965}
7966impl Grant {
7967 #[inline]
7968 pub fn name_refs(&self) -> AstChildren<NameRef> {
7969 support::children(&self.syntax)
7970 }
7971 #[inline]
7972 pub fn paths(&self) -> AstChildren<Path> {
7973 support::children(&self.syntax)
7974 }
7975 #[inline]
7976 pub fn revoke_command_list(&self) -> Option<RevokeCommandList> {
7977 support::child(&self.syntax)
7978 }
7979 #[inline]
7980 pub fn role(&self) -> Option<Role> {
7981 support::child(&self.syntax)
7982 }
7983 #[inline]
7984 pub fn role_list(&self) -> Option<RoleList> {
7985 support::child(&self.syntax)
7986 }
7987 #[inline]
7988 pub fn all_token(&self) -> Option<SyntaxToken> {
7989 support::token(&self.syntax, SyntaxKind::ALL_KW)
7990 }
7991 #[inline]
7992 pub fn by_token(&self) -> Option<SyntaxToken> {
7993 support::token(&self.syntax, SyntaxKind::BY_KW)
7994 }
7995 #[inline]
7996 pub fn grant_token(&self) -> Option<SyntaxToken> {
7997 support::token(&self.syntax, SyntaxKind::GRANT_KW)
7998 }
7999 #[inline]
8000 pub fn granted_token(&self) -> Option<SyntaxToken> {
8001 support::token(&self.syntax, SyntaxKind::GRANTED_KW)
8002 }
8003 #[inline]
8004 pub fn in_token(&self) -> Option<SyntaxToken> {
8005 support::token(&self.syntax, SyntaxKind::IN_KW)
8006 }
8007 #[inline]
8008 pub fn on_token(&self) -> Option<SyntaxToken> {
8009 support::token(&self.syntax, SyntaxKind::ON_KW)
8010 }
8011 #[inline]
8012 pub fn option_token(&self) -> Option<SyntaxToken> {
8013 support::token(&self.syntax, SyntaxKind::OPTION_KW)
8014 }
8015 #[inline]
8016 pub fn privileges_token(&self) -> Option<SyntaxToken> {
8017 support::token(&self.syntax, SyntaxKind::PRIVILEGES_KW)
8018 }
8019 #[inline]
8020 pub fn schema_token(&self) -> Option<SyntaxToken> {
8021 support::token(&self.syntax, SyntaxKind::SCHEMA_KW)
8022 }
8023 #[inline]
8024 pub fn table_token(&self) -> Option<SyntaxToken> {
8025 support::token(&self.syntax, SyntaxKind::TABLE_KW)
8026 }
8027 #[inline]
8028 pub fn tables_token(&self) -> Option<SyntaxToken> {
8029 support::token(&self.syntax, SyntaxKind::TABLES_KW)
8030 }
8031 #[inline]
8032 pub fn to_token(&self) -> Option<SyntaxToken> {
8033 support::token(&self.syntax, SyntaxKind::TO_KW)
8034 }
8035 #[inline]
8036 pub fn with_token(&self) -> Option<SyntaxToken> {
8037 support::token(&self.syntax, SyntaxKind::WITH_KW)
8038 }
8039}
8040
8041#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8042pub struct GrantDefaultPrivileges {
8043 pub(crate) syntax: SyntaxNode,
8044}
8045impl GrantDefaultPrivileges {
8046 #[inline]
8047 pub fn privilege_target(&self) -> Option<PrivilegeTarget> {
8048 support::child(&self.syntax)
8049 }
8050 #[inline]
8051 pub fn privileges(&self) -> Option<Privileges> {
8052 support::child(&self.syntax)
8053 }
8054 #[inline]
8055 pub fn role_list(&self) -> Option<RoleList> {
8056 support::child(&self.syntax)
8057 }
8058 #[inline]
8059 pub fn grant_token(&self) -> Option<SyntaxToken> {
8060 support::token(&self.syntax, SyntaxKind::GRANT_KW)
8061 }
8062 #[inline]
8063 pub fn on_token(&self) -> Option<SyntaxToken> {
8064 support::token(&self.syntax, SyntaxKind::ON_KW)
8065 }
8066 #[inline]
8067 pub fn option_token(&self) -> Option<SyntaxToken> {
8068 support::token(&self.syntax, SyntaxKind::OPTION_KW)
8069 }
8070 #[inline]
8071 pub fn to_token(&self) -> Option<SyntaxToken> {
8072 support::token(&self.syntax, SyntaxKind::TO_KW)
8073 }
8074 #[inline]
8075 pub fn with_token(&self) -> Option<SyntaxToken> {
8076 support::token(&self.syntax, SyntaxKind::WITH_KW)
8077 }
8078}
8079
8080#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8081pub struct GroupByClause {
8082 pub(crate) syntax: SyntaxNode,
8083}
8084impl GroupByClause {
8085 #[inline]
8086 pub fn group_by_list(&self) -> Option<GroupByList> {
8087 support::child(&self.syntax)
8088 }
8089 #[inline]
8090 pub fn all_token(&self) -> Option<SyntaxToken> {
8091 support::token(&self.syntax, SyntaxKind::ALL_KW)
8092 }
8093 #[inline]
8094 pub fn by_token(&self) -> Option<SyntaxToken> {
8095 support::token(&self.syntax, SyntaxKind::BY_KW)
8096 }
8097 #[inline]
8098 pub fn distinct_token(&self) -> Option<SyntaxToken> {
8099 support::token(&self.syntax, SyntaxKind::DISTINCT_KW)
8100 }
8101 #[inline]
8102 pub fn group_token(&self) -> Option<SyntaxToken> {
8103 support::token(&self.syntax, SyntaxKind::GROUP_KW)
8104 }
8105}
8106
8107#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8108pub struct GroupByList {
8109 pub(crate) syntax: SyntaxNode,
8110}
8111impl GroupByList {
8112 #[inline]
8113 pub fn group_bys(&self) -> AstChildren<GroupBy> {
8114 support::children(&self.syntax)
8115 }
8116}
8117
8118#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8119pub struct GroupingCube {
8120 pub(crate) syntax: SyntaxNode,
8121}
8122impl GroupingCube {
8123 #[inline]
8124 pub fn expr(&self) -> Option<Expr> {
8125 support::child(&self.syntax)
8126 }
8127 #[inline]
8128 pub fn cube_token(&self) -> Option<SyntaxToken> {
8129 support::token(&self.syntax, SyntaxKind::CUBE_KW)
8130 }
8131}
8132
8133#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8134pub struct GroupingExpr {
8135 pub(crate) syntax: SyntaxNode,
8136}
8137impl GroupingExpr {
8138 #[inline]
8139 pub fn expr(&self) -> Option<Expr> {
8140 support::child(&self.syntax)
8141 }
8142}
8143
8144#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8145pub struct GroupingRollup {
8146 pub(crate) syntax: SyntaxNode,
8147}
8148impl GroupingRollup {
8149 #[inline]
8150 pub fn expr(&self) -> Option<Expr> {
8151 support::child(&self.syntax)
8152 }
8153 #[inline]
8154 pub fn rollup_token(&self) -> Option<SyntaxToken> {
8155 support::token(&self.syntax, SyntaxKind::ROLLUP_KW)
8156 }
8157}
8158
8159#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8160pub struct GroupingSets {
8161 pub(crate) syntax: SyntaxNode,
8162}
8163impl GroupingSets {
8164 #[inline]
8165 pub fn expr(&self) -> Option<Expr> {
8166 support::child(&self.syntax)
8167 }
8168 #[inline]
8169 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
8170 support::token(&self.syntax, SyntaxKind::L_PAREN)
8171 }
8172 #[inline]
8173 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
8174 support::token(&self.syntax, SyntaxKind::R_PAREN)
8175 }
8176 #[inline]
8177 pub fn grouping_token(&self) -> Option<SyntaxToken> {
8178 support::token(&self.syntax, SyntaxKind::GROUPING_KW)
8179 }
8180 #[inline]
8181 pub fn sets_token(&self) -> Option<SyntaxToken> {
8182 support::token(&self.syntax, SyntaxKind::SETS_KW)
8183 }
8184}
8185
8186#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8187pub struct Gteq {
8188 pub(crate) syntax: SyntaxNode,
8189}
8190impl Gteq {
8191 #[inline]
8192 pub fn eq_token(&self) -> Option<SyntaxToken> {
8193 support::token(&self.syntax, SyntaxKind::EQ)
8194 }
8195 #[inline]
8196 pub fn r_angle_token(&self) -> Option<SyntaxToken> {
8197 support::token(&self.syntax, SyntaxKind::R_ANGLE)
8198 }
8199}
8200
8201#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8202pub struct HandlerClause {
8203 pub(crate) syntax: SyntaxNode,
8204}
8205impl HandlerClause {
8206 #[inline]
8207 pub fn path(&self) -> Option<Path> {
8208 support::child(&self.syntax)
8209 }
8210 #[inline]
8211 pub fn handler_token(&self) -> Option<SyntaxToken> {
8212 support::token(&self.syntax, SyntaxKind::HANDLER_KW)
8213 }
8214}
8215
8216#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8217pub struct HavingClause {
8218 pub(crate) syntax: SyntaxNode,
8219}
8220impl HavingClause {
8221 #[inline]
8222 pub fn expr(&self) -> Option<Expr> {
8223 support::child(&self.syntax)
8224 }
8225 #[inline]
8226 pub fn having_token(&self) -> Option<SyntaxToken> {
8227 support::token(&self.syntax, SyntaxKind::HAVING_KW)
8228 }
8229}
8230
8231#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8232pub struct IfExists {
8233 pub(crate) syntax: SyntaxNode,
8234}
8235impl IfExists {
8236 #[inline]
8237 pub fn exists_token(&self) -> Option<SyntaxToken> {
8238 support::token(&self.syntax, SyntaxKind::EXISTS_KW)
8239 }
8240 #[inline]
8241 pub fn if_token(&self) -> Option<SyntaxToken> {
8242 support::token(&self.syntax, SyntaxKind::IF_KW)
8243 }
8244}
8245
8246#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8247pub struct IfNotExists {
8248 pub(crate) syntax: SyntaxNode,
8249}
8250impl IfNotExists {
8251 #[inline]
8252 pub fn exists_token(&self) -> Option<SyntaxToken> {
8253 support::token(&self.syntax, SyntaxKind::EXISTS_KW)
8254 }
8255 #[inline]
8256 pub fn if_token(&self) -> Option<SyntaxToken> {
8257 support::token(&self.syntax, SyntaxKind::IF_KW)
8258 }
8259 #[inline]
8260 pub fn not_token(&self) -> Option<SyntaxToken> {
8261 support::token(&self.syntax, SyntaxKind::NOT_KW)
8262 }
8263}
8264
8265#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8266pub struct ImportForeignSchema {
8267 pub(crate) syntax: SyntaxNode,
8268}
8269impl ImportForeignSchema {
8270 #[inline]
8271 pub fn alter_option_list(&self) -> Option<AlterOptionList> {
8272 support::child(&self.syntax)
8273 }
8274 #[inline]
8275 pub fn except_tables(&self) -> Option<ExceptTables> {
8276 support::child(&self.syntax)
8277 }
8278 #[inline]
8279 pub fn from_server(&self) -> Option<FromServer> {
8280 support::child(&self.syntax)
8281 }
8282 #[inline]
8283 pub fn into_schema(&self) -> Option<IntoSchema> {
8284 support::child(&self.syntax)
8285 }
8286 #[inline]
8287 pub fn limit_to_tables(&self) -> Option<LimitToTables> {
8288 support::child(&self.syntax)
8289 }
8290 #[inline]
8291 pub fn name_ref(&self) -> Option<NameRef> {
8292 support::child(&self.syntax)
8293 }
8294 #[inline]
8295 pub fn foreign_token(&self) -> Option<SyntaxToken> {
8296 support::token(&self.syntax, SyntaxKind::FOREIGN_KW)
8297 }
8298 #[inline]
8299 pub fn import_token(&self) -> Option<SyntaxToken> {
8300 support::token(&self.syntax, SyntaxKind::IMPORT_KW)
8301 }
8302 #[inline]
8303 pub fn schema_token(&self) -> Option<SyntaxToken> {
8304 support::token(&self.syntax, SyntaxKind::SCHEMA_KW)
8305 }
8306}
8307
8308#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8309pub struct IndexExpr {
8310 pub(crate) syntax: SyntaxNode,
8311}
8312impl IndexExpr {
8313 #[inline]
8314 pub fn l_brack_token(&self) -> Option<SyntaxToken> {
8315 support::token(&self.syntax, SyntaxKind::L_BRACK)
8316 }
8317 #[inline]
8318 pub fn r_brack_token(&self) -> Option<SyntaxToken> {
8319 support::token(&self.syntax, SyntaxKind::R_BRACK)
8320 }
8321}
8322
8323#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8324pub struct Inherit {
8325 pub(crate) syntax: SyntaxNode,
8326}
8327impl Inherit {
8328 #[inline]
8329 pub fn path(&self) -> Option<Path> {
8330 support::child(&self.syntax)
8331 }
8332 #[inline]
8333 pub fn inherit_token(&self) -> Option<SyntaxToken> {
8334 support::token(&self.syntax, SyntaxKind::INHERIT_KW)
8335 }
8336}
8337
8338#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8339pub struct InheritTable {
8340 pub(crate) syntax: SyntaxNode,
8341}
8342impl InheritTable {
8343 #[inline]
8344 pub fn path(&self) -> Option<Path> {
8345 support::child(&self.syntax)
8346 }
8347 #[inline]
8348 pub fn inherit_token(&self) -> Option<SyntaxToken> {
8349 support::token(&self.syntax, SyntaxKind::INHERIT_KW)
8350 }
8351}
8352
8353#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8354pub struct Inherits {
8355 pub(crate) syntax: SyntaxNode,
8356}
8357impl Inherits {
8358 #[inline]
8359 pub fn paths(&self) -> AstChildren<Path> {
8360 support::children(&self.syntax)
8361 }
8362 #[inline]
8363 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
8364 support::token(&self.syntax, SyntaxKind::L_PAREN)
8365 }
8366 #[inline]
8367 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
8368 support::token(&self.syntax, SyntaxKind::R_PAREN)
8369 }
8370 #[inline]
8371 pub fn inherits_token(&self) -> Option<SyntaxToken> {
8372 support::token(&self.syntax, SyntaxKind::INHERITS_KW)
8373 }
8374}
8375
8376#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8377pub struct InitiallyDeferredConstraintOption {
8378 pub(crate) syntax: SyntaxNode,
8379}
8380impl InitiallyDeferredConstraintOption {
8381 #[inline]
8382 pub fn deferred_token(&self) -> Option<SyntaxToken> {
8383 support::token(&self.syntax, SyntaxKind::DEFERRED_KW)
8384 }
8385 #[inline]
8386 pub fn initially_token(&self) -> Option<SyntaxToken> {
8387 support::token(&self.syntax, SyntaxKind::INITIALLY_KW)
8388 }
8389}
8390
8391#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8392pub struct InitiallyImmediateConstraintOption {
8393 pub(crate) syntax: SyntaxNode,
8394}
8395impl InitiallyImmediateConstraintOption {
8396 #[inline]
8397 pub fn immediate_token(&self) -> Option<SyntaxToken> {
8398 support::token(&self.syntax, SyntaxKind::IMMEDIATE_KW)
8399 }
8400 #[inline]
8401 pub fn initially_token(&self) -> Option<SyntaxToken> {
8402 support::token(&self.syntax, SyntaxKind::INITIALLY_KW)
8403 }
8404}
8405
8406#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8407pub struct Insert {
8408 pub(crate) syntax: SyntaxNode,
8409}
8410impl Insert {
8411 #[inline]
8412 pub fn alias(&self) -> Option<Alias> {
8413 support::child(&self.syntax)
8414 }
8415 #[inline]
8416 pub fn column_list(&self) -> Option<ColumnList> {
8417 support::child(&self.syntax)
8418 }
8419 #[inline]
8420 pub fn on_conflict_clause(&self) -> Option<OnConflictClause> {
8421 support::child(&self.syntax)
8422 }
8423 #[inline]
8424 pub fn path(&self) -> Option<Path> {
8425 support::child(&self.syntax)
8426 }
8427 #[inline]
8428 pub fn returning_clause(&self) -> Option<ReturningClause> {
8429 support::child(&self.syntax)
8430 }
8431 #[inline]
8432 pub fn stmt(&self) -> Option<Stmt> {
8433 support::child(&self.syntax)
8434 }
8435 #[inline]
8436 pub fn values(&self) -> Option<Values> {
8437 support::child(&self.syntax)
8438 }
8439 #[inline]
8440 pub fn with_clause(&self) -> Option<WithClause> {
8441 support::child(&self.syntax)
8442 }
8443 #[inline]
8444 pub fn default_token(&self) -> Option<SyntaxToken> {
8445 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
8446 }
8447 #[inline]
8448 pub fn insert_token(&self) -> Option<SyntaxToken> {
8449 support::token(&self.syntax, SyntaxKind::INSERT_KW)
8450 }
8451 #[inline]
8452 pub fn into_token(&self) -> Option<SyntaxToken> {
8453 support::token(&self.syntax, SyntaxKind::INTO_KW)
8454 }
8455 #[inline]
8456 pub fn overriding_token(&self) -> Option<SyntaxToken> {
8457 support::token(&self.syntax, SyntaxKind::OVERRIDING_KW)
8458 }
8459 #[inline]
8460 pub fn system_token(&self) -> Option<SyntaxToken> {
8461 support::token(&self.syntax, SyntaxKind::SYSTEM_KW)
8462 }
8463 #[inline]
8464 pub fn user_token(&self) -> Option<SyntaxToken> {
8465 support::token(&self.syntax, SyntaxKind::USER_KW)
8466 }
8467 #[inline]
8468 pub fn value_token(&self) -> Option<SyntaxToken> {
8469 support::token(&self.syntax, SyntaxKind::VALUE_KW)
8470 }
8471 #[inline]
8472 pub fn values_token(&self) -> Option<SyntaxToken> {
8473 support::token(&self.syntax, SyntaxKind::VALUES_KW)
8474 }
8475}
8476
8477#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8478pub struct IntervalType {
8479 pub(crate) syntax: SyntaxNode,
8480}
8481impl IntervalType {
8482 #[inline]
8483 pub fn literal(&self) -> Option<Literal> {
8484 support::child(&self.syntax)
8485 }
8486 #[inline]
8487 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
8488 support::token(&self.syntax, SyntaxKind::L_PAREN)
8489 }
8490 #[inline]
8491 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
8492 support::token(&self.syntax, SyntaxKind::R_PAREN)
8493 }
8494 #[inline]
8495 pub fn day_token(&self) -> Option<SyntaxToken> {
8496 support::token(&self.syntax, SyntaxKind::DAY_KW)
8497 }
8498 #[inline]
8499 pub fn hour_token(&self) -> Option<SyntaxToken> {
8500 support::token(&self.syntax, SyntaxKind::HOUR_KW)
8501 }
8502 #[inline]
8503 pub fn interval_token(&self) -> Option<SyntaxToken> {
8504 support::token(&self.syntax, SyntaxKind::INTERVAL_KW)
8505 }
8506 #[inline]
8507 pub fn minute_token(&self) -> Option<SyntaxToken> {
8508 support::token(&self.syntax, SyntaxKind::MINUTE_KW)
8509 }
8510 #[inline]
8511 pub fn month_token(&self) -> Option<SyntaxToken> {
8512 support::token(&self.syntax, SyntaxKind::MONTH_KW)
8513 }
8514 #[inline]
8515 pub fn second_token(&self) -> Option<SyntaxToken> {
8516 support::token(&self.syntax, SyntaxKind::SECOND_KW)
8517 }
8518 #[inline]
8519 pub fn to_token(&self) -> Option<SyntaxToken> {
8520 support::token(&self.syntax, SyntaxKind::TO_KW)
8521 }
8522 #[inline]
8523 pub fn year_token(&self) -> Option<SyntaxToken> {
8524 support::token(&self.syntax, SyntaxKind::YEAR_KW)
8525 }
8526}
8527
8528#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8529pub struct IntoClause {
8530 pub(crate) syntax: SyntaxNode,
8531}
8532impl IntoClause {
8533 #[inline]
8534 pub fn path(&self) -> Option<Path> {
8535 support::child(&self.syntax)
8536 }
8537 #[inline]
8538 pub fn into_token(&self) -> Option<SyntaxToken> {
8539 support::token(&self.syntax, SyntaxKind::INTO_KW)
8540 }
8541}
8542
8543#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8544pub struct IntoSchema {
8545 pub(crate) syntax: SyntaxNode,
8546}
8547impl IntoSchema {
8548 #[inline]
8549 pub fn name_ref(&self) -> Option<NameRef> {
8550 support::child(&self.syntax)
8551 }
8552 #[inline]
8553 pub fn into_token(&self) -> Option<SyntaxToken> {
8554 support::token(&self.syntax, SyntaxKind::INTO_KW)
8555 }
8556}
8557
8558#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8559pub struct IsDistinctFrom {
8560 pub(crate) syntax: SyntaxNode,
8561}
8562impl IsDistinctFrom {
8563 #[inline]
8564 pub fn distinct_token(&self) -> Option<SyntaxToken> {
8565 support::token(&self.syntax, SyntaxKind::DISTINCT_KW)
8566 }
8567 #[inline]
8568 pub fn from_token(&self) -> Option<SyntaxToken> {
8569 support::token(&self.syntax, SyntaxKind::FROM_KW)
8570 }
8571 #[inline]
8572 pub fn is_token(&self) -> Option<SyntaxToken> {
8573 support::token(&self.syntax, SyntaxKind::IS_KW)
8574 }
8575}
8576
8577#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8578pub struct IsJson {
8579 pub(crate) syntax: SyntaxNode,
8580}
8581impl IsJson {
8582 #[inline]
8583 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
8584 support::child(&self.syntax)
8585 }
8586 #[inline]
8587 pub fn is_token(&self) -> Option<SyntaxToken> {
8588 support::token(&self.syntax, SyntaxKind::IS_KW)
8589 }
8590 #[inline]
8591 pub fn json_token(&self) -> Option<SyntaxToken> {
8592 support::token(&self.syntax, SyntaxKind::JSON_KW)
8593 }
8594}
8595
8596#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8597pub struct IsJsonArray {
8598 pub(crate) syntax: SyntaxNode,
8599}
8600impl IsJsonArray {
8601 #[inline]
8602 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
8603 support::child(&self.syntax)
8604 }
8605 #[inline]
8606 pub fn array_token(&self) -> Option<SyntaxToken> {
8607 support::token(&self.syntax, SyntaxKind::ARRAY_KW)
8608 }
8609 #[inline]
8610 pub fn is_token(&self) -> Option<SyntaxToken> {
8611 support::token(&self.syntax, SyntaxKind::IS_KW)
8612 }
8613 #[inline]
8614 pub fn json_token(&self) -> Option<SyntaxToken> {
8615 support::token(&self.syntax, SyntaxKind::JSON_KW)
8616 }
8617}
8618
8619#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8620pub struct IsJsonObject {
8621 pub(crate) syntax: SyntaxNode,
8622}
8623impl IsJsonObject {
8624 #[inline]
8625 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
8626 support::child(&self.syntax)
8627 }
8628 #[inline]
8629 pub fn is_token(&self) -> Option<SyntaxToken> {
8630 support::token(&self.syntax, SyntaxKind::IS_KW)
8631 }
8632 #[inline]
8633 pub fn json_token(&self) -> Option<SyntaxToken> {
8634 support::token(&self.syntax, SyntaxKind::JSON_KW)
8635 }
8636 #[inline]
8637 pub fn object_token(&self) -> Option<SyntaxToken> {
8638 support::token(&self.syntax, SyntaxKind::OBJECT_KW)
8639 }
8640}
8641
8642#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8643pub struct IsJsonScalar {
8644 pub(crate) syntax: SyntaxNode,
8645}
8646impl IsJsonScalar {
8647 #[inline]
8648 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
8649 support::child(&self.syntax)
8650 }
8651 #[inline]
8652 pub fn is_token(&self) -> Option<SyntaxToken> {
8653 support::token(&self.syntax, SyntaxKind::IS_KW)
8654 }
8655 #[inline]
8656 pub fn json_token(&self) -> Option<SyntaxToken> {
8657 support::token(&self.syntax, SyntaxKind::JSON_KW)
8658 }
8659 #[inline]
8660 pub fn scalar_token(&self) -> Option<SyntaxToken> {
8661 support::token(&self.syntax, SyntaxKind::SCALAR_KW)
8662 }
8663}
8664
8665#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8666pub struct IsJsonValue {
8667 pub(crate) syntax: SyntaxNode,
8668}
8669impl IsJsonValue {
8670 #[inline]
8671 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
8672 support::child(&self.syntax)
8673 }
8674 #[inline]
8675 pub fn is_token(&self) -> Option<SyntaxToken> {
8676 support::token(&self.syntax, SyntaxKind::IS_KW)
8677 }
8678 #[inline]
8679 pub fn json_token(&self) -> Option<SyntaxToken> {
8680 support::token(&self.syntax, SyntaxKind::JSON_KW)
8681 }
8682 #[inline]
8683 pub fn value_token(&self) -> Option<SyntaxToken> {
8684 support::token(&self.syntax, SyntaxKind::VALUE_KW)
8685 }
8686}
8687
8688#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8689pub struct IsNormalized {
8690 pub(crate) syntax: SyntaxNode,
8691}
8692impl IsNormalized {
8693 #[inline]
8694 pub fn unicode_normal_form(&self) -> Option<UnicodeNormalForm> {
8695 support::child(&self.syntax)
8696 }
8697 #[inline]
8698 pub fn is_token(&self) -> Option<SyntaxToken> {
8699 support::token(&self.syntax, SyntaxKind::IS_KW)
8700 }
8701 #[inline]
8702 pub fn normalized_token(&self) -> Option<SyntaxToken> {
8703 support::token(&self.syntax, SyntaxKind::NORMALIZED_KW)
8704 }
8705}
8706
8707#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8708pub struct IsNot {
8709 pub(crate) syntax: SyntaxNode,
8710}
8711impl IsNot {
8712 #[inline]
8713 pub fn is_token(&self) -> Option<SyntaxToken> {
8714 support::token(&self.syntax, SyntaxKind::IS_KW)
8715 }
8716 #[inline]
8717 pub fn not_token(&self) -> Option<SyntaxToken> {
8718 support::token(&self.syntax, SyntaxKind::NOT_KW)
8719 }
8720}
8721
8722#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8723pub struct IsNotDistinctFrom {
8724 pub(crate) syntax: SyntaxNode,
8725}
8726impl IsNotDistinctFrom {
8727 #[inline]
8728 pub fn distinct_token(&self) -> Option<SyntaxToken> {
8729 support::token(&self.syntax, SyntaxKind::DISTINCT_KW)
8730 }
8731 #[inline]
8732 pub fn from_token(&self) -> Option<SyntaxToken> {
8733 support::token(&self.syntax, SyntaxKind::FROM_KW)
8734 }
8735 #[inline]
8736 pub fn is_token(&self) -> Option<SyntaxToken> {
8737 support::token(&self.syntax, SyntaxKind::IS_KW)
8738 }
8739 #[inline]
8740 pub fn not_token(&self) -> Option<SyntaxToken> {
8741 support::token(&self.syntax, SyntaxKind::NOT_KW)
8742 }
8743}
8744
8745#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8746pub struct IsNotJson {
8747 pub(crate) syntax: SyntaxNode,
8748}
8749impl IsNotJson {
8750 #[inline]
8751 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
8752 support::child(&self.syntax)
8753 }
8754 #[inline]
8755 pub fn is_token(&self) -> Option<SyntaxToken> {
8756 support::token(&self.syntax, SyntaxKind::IS_KW)
8757 }
8758 #[inline]
8759 pub fn json_token(&self) -> Option<SyntaxToken> {
8760 support::token(&self.syntax, SyntaxKind::JSON_KW)
8761 }
8762 #[inline]
8763 pub fn not_token(&self) -> Option<SyntaxToken> {
8764 support::token(&self.syntax, SyntaxKind::NOT_KW)
8765 }
8766}
8767
8768#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8769pub struct IsNotJsonArray {
8770 pub(crate) syntax: SyntaxNode,
8771}
8772impl IsNotJsonArray {
8773 #[inline]
8774 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
8775 support::child(&self.syntax)
8776 }
8777 #[inline]
8778 pub fn array_token(&self) -> Option<SyntaxToken> {
8779 support::token(&self.syntax, SyntaxKind::ARRAY_KW)
8780 }
8781 #[inline]
8782 pub fn is_token(&self) -> Option<SyntaxToken> {
8783 support::token(&self.syntax, SyntaxKind::IS_KW)
8784 }
8785 #[inline]
8786 pub fn json_token(&self) -> Option<SyntaxToken> {
8787 support::token(&self.syntax, SyntaxKind::JSON_KW)
8788 }
8789 #[inline]
8790 pub fn not_token(&self) -> Option<SyntaxToken> {
8791 support::token(&self.syntax, SyntaxKind::NOT_KW)
8792 }
8793}
8794
8795#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8796pub struct IsNotJsonObject {
8797 pub(crate) syntax: SyntaxNode,
8798}
8799impl IsNotJsonObject {
8800 #[inline]
8801 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
8802 support::child(&self.syntax)
8803 }
8804 #[inline]
8805 pub fn is_token(&self) -> Option<SyntaxToken> {
8806 support::token(&self.syntax, SyntaxKind::IS_KW)
8807 }
8808 #[inline]
8809 pub fn json_token(&self) -> Option<SyntaxToken> {
8810 support::token(&self.syntax, SyntaxKind::JSON_KW)
8811 }
8812 #[inline]
8813 pub fn not_token(&self) -> Option<SyntaxToken> {
8814 support::token(&self.syntax, SyntaxKind::NOT_KW)
8815 }
8816 #[inline]
8817 pub fn object_token(&self) -> Option<SyntaxToken> {
8818 support::token(&self.syntax, SyntaxKind::OBJECT_KW)
8819 }
8820}
8821
8822#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8823pub struct IsNotJsonScalar {
8824 pub(crate) syntax: SyntaxNode,
8825}
8826impl IsNotJsonScalar {
8827 #[inline]
8828 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
8829 support::child(&self.syntax)
8830 }
8831 #[inline]
8832 pub fn is_token(&self) -> Option<SyntaxToken> {
8833 support::token(&self.syntax, SyntaxKind::IS_KW)
8834 }
8835 #[inline]
8836 pub fn json_token(&self) -> Option<SyntaxToken> {
8837 support::token(&self.syntax, SyntaxKind::JSON_KW)
8838 }
8839 #[inline]
8840 pub fn not_token(&self) -> Option<SyntaxToken> {
8841 support::token(&self.syntax, SyntaxKind::NOT_KW)
8842 }
8843 #[inline]
8844 pub fn scalar_token(&self) -> Option<SyntaxToken> {
8845 support::token(&self.syntax, SyntaxKind::SCALAR_KW)
8846 }
8847}
8848
8849#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8850pub struct IsNotJsonValue {
8851 pub(crate) syntax: SyntaxNode,
8852}
8853impl IsNotJsonValue {
8854 #[inline]
8855 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
8856 support::child(&self.syntax)
8857 }
8858 #[inline]
8859 pub fn is_token(&self) -> Option<SyntaxToken> {
8860 support::token(&self.syntax, SyntaxKind::IS_KW)
8861 }
8862 #[inline]
8863 pub fn json_token(&self) -> Option<SyntaxToken> {
8864 support::token(&self.syntax, SyntaxKind::JSON_KW)
8865 }
8866 #[inline]
8867 pub fn not_token(&self) -> Option<SyntaxToken> {
8868 support::token(&self.syntax, SyntaxKind::NOT_KW)
8869 }
8870 #[inline]
8871 pub fn value_token(&self) -> Option<SyntaxToken> {
8872 support::token(&self.syntax, SyntaxKind::VALUE_KW)
8873 }
8874}
8875
8876#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8877pub struct IsNotNormalized {
8878 pub(crate) syntax: SyntaxNode,
8879}
8880impl IsNotNormalized {
8881 #[inline]
8882 pub fn unicode_normal_form(&self) -> Option<UnicodeNormalForm> {
8883 support::child(&self.syntax)
8884 }
8885 #[inline]
8886 pub fn is_token(&self) -> Option<SyntaxToken> {
8887 support::token(&self.syntax, SyntaxKind::IS_KW)
8888 }
8889 #[inline]
8890 pub fn normalized_token(&self) -> Option<SyntaxToken> {
8891 support::token(&self.syntax, SyntaxKind::NORMALIZED_KW)
8892 }
8893 #[inline]
8894 pub fn not_token(&self) -> Option<SyntaxToken> {
8895 support::token(&self.syntax, SyntaxKind::NOT_KW)
8896 }
8897}
8898
8899#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8900pub struct Join {
8901 pub(crate) syntax: SyntaxNode,
8902}
8903impl Join {
8904 #[inline]
8905 pub fn from_item(&self) -> Option<FromItem> {
8906 support::child(&self.syntax)
8907 }
8908 #[inline]
8909 pub fn join_type(&self) -> Option<JoinType> {
8910 support::child(&self.syntax)
8911 }
8912 #[inline]
8913 pub fn on_clause(&self) -> Option<OnClause> {
8914 support::child(&self.syntax)
8915 }
8916 #[inline]
8917 pub fn using_clause(&self) -> Option<JoinUsingClause> {
8918 support::child(&self.syntax)
8919 }
8920 #[inline]
8921 pub fn natural_token(&self) -> Option<SyntaxToken> {
8922 support::token(&self.syntax, SyntaxKind::NATURAL_KW)
8923 }
8924}
8925
8926#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8927pub struct JoinCross {
8928 pub(crate) syntax: SyntaxNode,
8929}
8930impl JoinCross {
8931 #[inline]
8932 pub fn cross_token(&self) -> Option<SyntaxToken> {
8933 support::token(&self.syntax, SyntaxKind::CROSS_KW)
8934 }
8935 #[inline]
8936 pub fn join_token(&self) -> Option<SyntaxToken> {
8937 support::token(&self.syntax, SyntaxKind::JOIN_KW)
8938 }
8939}
8940
8941#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8942pub struct JoinExpr {
8943 pub(crate) syntax: SyntaxNode,
8944}
8945impl JoinExpr {
8946 #[inline]
8947 pub fn from_item(&self) -> Option<FromItem> {
8948 support::child(&self.syntax)
8949 }
8950 #[inline]
8951 pub fn join(&self) -> Option<Join> {
8952 support::child(&self.syntax)
8953 }
8954 #[inline]
8955 pub fn join_expr(&self) -> Option<JoinExpr> {
8956 support::child(&self.syntax)
8957 }
8958}
8959
8960#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8961pub struct JoinFull {
8962 pub(crate) syntax: SyntaxNode,
8963}
8964impl JoinFull {
8965 #[inline]
8966 pub fn full_token(&self) -> Option<SyntaxToken> {
8967 support::token(&self.syntax, SyntaxKind::FULL_KW)
8968 }
8969 #[inline]
8970 pub fn join_token(&self) -> Option<SyntaxToken> {
8971 support::token(&self.syntax, SyntaxKind::JOIN_KW)
8972 }
8973 #[inline]
8974 pub fn outer_token(&self) -> Option<SyntaxToken> {
8975 support::token(&self.syntax, SyntaxKind::OUTER_KW)
8976 }
8977}
8978
8979#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8980pub struct JoinInner {
8981 pub(crate) syntax: SyntaxNode,
8982}
8983impl JoinInner {
8984 #[inline]
8985 pub fn inner_token(&self) -> Option<SyntaxToken> {
8986 support::token(&self.syntax, SyntaxKind::INNER_KW)
8987 }
8988 #[inline]
8989 pub fn join_token(&self) -> Option<SyntaxToken> {
8990 support::token(&self.syntax, SyntaxKind::JOIN_KW)
8991 }
8992}
8993
8994#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8995pub struct JoinLeft {
8996 pub(crate) syntax: SyntaxNode,
8997}
8998impl JoinLeft {
8999 #[inline]
9000 pub fn join_token(&self) -> Option<SyntaxToken> {
9001 support::token(&self.syntax, SyntaxKind::JOIN_KW)
9002 }
9003 #[inline]
9004 pub fn left_token(&self) -> Option<SyntaxToken> {
9005 support::token(&self.syntax, SyntaxKind::LEFT_KW)
9006 }
9007 #[inline]
9008 pub fn outer_token(&self) -> Option<SyntaxToken> {
9009 support::token(&self.syntax, SyntaxKind::OUTER_KW)
9010 }
9011}
9012
9013#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9014pub struct JoinRight {
9015 pub(crate) syntax: SyntaxNode,
9016}
9017impl JoinRight {
9018 #[inline]
9019 pub fn join_token(&self) -> Option<SyntaxToken> {
9020 support::token(&self.syntax, SyntaxKind::JOIN_KW)
9021 }
9022 #[inline]
9023 pub fn outer_token(&self) -> Option<SyntaxToken> {
9024 support::token(&self.syntax, SyntaxKind::OUTER_KW)
9025 }
9026 #[inline]
9027 pub fn right_token(&self) -> Option<SyntaxToken> {
9028 support::token(&self.syntax, SyntaxKind::RIGHT_KW)
9029 }
9030}
9031
9032#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9033pub struct JoinUsingClause {
9034 pub(crate) syntax: SyntaxNode,
9035}
9036impl JoinUsingClause {
9037 #[inline]
9038 pub fn alias(&self) -> Option<Alias> {
9039 support::child(&self.syntax)
9040 }
9041 #[inline]
9042 pub fn column_list(&self) -> Option<ColumnList> {
9043 support::child(&self.syntax)
9044 }
9045 #[inline]
9046 pub fn using_token(&self) -> Option<SyntaxToken> {
9047 support::token(&self.syntax, SyntaxKind::USING_KW)
9048 }
9049}
9050
9051#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9052pub struct JsonArrayAggFn {
9053 pub(crate) syntax: SyntaxNode,
9054}
9055impl JsonArrayAggFn {
9056 #[inline]
9057 pub fn expr(&self) -> Option<Expr> {
9058 support::child(&self.syntax)
9059 }
9060 #[inline]
9061 pub fn json_null_clause(&self) -> Option<JsonNullClause> {
9062 support::child(&self.syntax)
9063 }
9064 #[inline]
9065 pub fn json_returning_clause(&self) -> Option<JsonReturningClause> {
9066 support::child(&self.syntax)
9067 }
9068 #[inline]
9069 pub fn json_select_formats(&self) -> AstChildren<JsonSelectFormat> {
9070 support::children(&self.syntax)
9071 }
9072 #[inline]
9073 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
9074 support::token(&self.syntax, SyntaxKind::L_PAREN)
9075 }
9076 #[inline]
9077 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
9078 support::token(&self.syntax, SyntaxKind::R_PAREN)
9079 }
9080 #[inline]
9081 pub fn json_arrayagg_token(&self) -> Option<SyntaxToken> {
9082 support::token(&self.syntax, SyntaxKind::JSON_ARRAYAGG_KW)
9083 }
9084}
9085
9086#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9087pub struct JsonArrayFn {
9088 pub(crate) syntax: SyntaxNode,
9089}
9090impl JsonArrayFn {
9091 #[inline]
9092 pub fn json_expr_formats(&self) -> AstChildren<JsonExprFormat> {
9093 support::children(&self.syntax)
9094 }
9095 #[inline]
9096 pub fn json_null_clause(&self) -> Option<JsonNullClause> {
9097 support::child(&self.syntax)
9098 }
9099 #[inline]
9100 pub fn json_returning_clause(&self) -> Option<JsonReturningClause> {
9101 support::child(&self.syntax)
9102 }
9103 #[inline]
9104 pub fn json_select_formats(&self) -> AstChildren<JsonSelectFormat> {
9105 support::children(&self.syntax)
9106 }
9107 #[inline]
9108 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
9109 support::token(&self.syntax, SyntaxKind::L_PAREN)
9110 }
9111 #[inline]
9112 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
9113 support::token(&self.syntax, SyntaxKind::R_PAREN)
9114 }
9115 #[inline]
9116 pub fn json_array_token(&self) -> Option<SyntaxToken> {
9117 support::token(&self.syntax, SyntaxKind::JSON_ARRAY_KW)
9118 }
9119}
9120
9121#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9122pub struct JsonBehaviorClause {
9123 pub(crate) syntax: SyntaxNode,
9124}
9125impl JsonBehaviorClause {
9126 #[inline]
9127 pub fn json_behavior(&self) -> Option<JsonBehavior> {
9128 support::child(&self.syntax)
9129 }
9130}
9131
9132#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9133pub struct JsonBehaviorDefault {
9134 pub(crate) syntax: SyntaxNode,
9135}
9136impl JsonBehaviorDefault {
9137 #[inline]
9138 pub fn expr(&self) -> Option<Expr> {
9139 support::child(&self.syntax)
9140 }
9141 #[inline]
9142 pub fn default_token(&self) -> Option<SyntaxToken> {
9143 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
9144 }
9145}
9146
9147#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9148pub struct JsonBehaviorEmptyArray {
9149 pub(crate) syntax: SyntaxNode,
9150}
9151impl JsonBehaviorEmptyArray {
9152 #[inline]
9153 pub fn array_token(&self) -> Option<SyntaxToken> {
9154 support::token(&self.syntax, SyntaxKind::ARRAY_KW)
9155 }
9156 #[inline]
9157 pub fn empty_token(&self) -> Option<SyntaxToken> {
9158 support::token(&self.syntax, SyntaxKind::EMPTY_KW)
9159 }
9160}
9161
9162#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9163pub struct JsonBehaviorEmptyObject {
9164 pub(crate) syntax: SyntaxNode,
9165}
9166impl JsonBehaviorEmptyObject {
9167 #[inline]
9168 pub fn empty_token(&self) -> Option<SyntaxToken> {
9169 support::token(&self.syntax, SyntaxKind::EMPTY_KW)
9170 }
9171 #[inline]
9172 pub fn object_token(&self) -> Option<SyntaxToken> {
9173 support::token(&self.syntax, SyntaxKind::OBJECT_KW)
9174 }
9175}
9176
9177#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9178pub struct JsonBehaviorError {
9179 pub(crate) syntax: SyntaxNode,
9180}
9181impl JsonBehaviorError {
9182 #[inline]
9183 pub fn error_token(&self) -> Option<SyntaxToken> {
9184 support::token(&self.syntax, SyntaxKind::ERROR_KW)
9185 }
9186}
9187
9188#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9189pub struct JsonBehaviorFalse {
9190 pub(crate) syntax: SyntaxNode,
9191}
9192impl JsonBehaviorFalse {
9193 #[inline]
9194 pub fn false_token(&self) -> Option<SyntaxToken> {
9195 support::token(&self.syntax, SyntaxKind::FALSE_KW)
9196 }
9197}
9198
9199#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9200pub struct JsonBehaviorNull {
9201 pub(crate) syntax: SyntaxNode,
9202}
9203impl JsonBehaviorNull {
9204 #[inline]
9205 pub fn null_token(&self) -> Option<SyntaxToken> {
9206 support::token(&self.syntax, SyntaxKind::NULL_KW)
9207 }
9208}
9209
9210#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9211pub struct JsonBehaviorTrue {
9212 pub(crate) syntax: SyntaxNode,
9213}
9214impl JsonBehaviorTrue {
9215 #[inline]
9216 pub fn true_token(&self) -> Option<SyntaxToken> {
9217 support::token(&self.syntax, SyntaxKind::TRUE_KW)
9218 }
9219}
9220
9221#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9222pub struct JsonBehaviorUnknown {
9223 pub(crate) syntax: SyntaxNode,
9224}
9225impl JsonBehaviorUnknown {
9226 #[inline]
9227 pub fn unknown_token(&self) -> Option<SyntaxToken> {
9228 support::token(&self.syntax, SyntaxKind::UNKNOWN_KW)
9229 }
9230}
9231
9232#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9233pub struct JsonEncodingClause {
9234 pub(crate) syntax: SyntaxNode,
9235}
9236impl JsonEncodingClause {
9237 #[inline]
9238 pub fn name_ref(&self) -> Option<NameRef> {
9239 support::child(&self.syntax)
9240 }
9241 #[inline]
9242 pub fn encoding_token(&self) -> Option<SyntaxToken> {
9243 support::token(&self.syntax, SyntaxKind::ENCODING_KW)
9244 }
9245}
9246
9247#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9248pub struct JsonExistsFn {
9249 pub(crate) syntax: SyntaxNode,
9250}
9251impl JsonExistsFn {
9252 #[inline]
9253 pub fn expr(&self) -> Option<Expr> {
9254 support::child(&self.syntax)
9255 }
9256 #[inline]
9257 pub fn json_format_clause(&self) -> Option<JsonFormatClause> {
9258 support::child(&self.syntax)
9259 }
9260 #[inline]
9261 pub fn json_on_error_clause(&self) -> Option<JsonOnErrorClause> {
9262 support::child(&self.syntax)
9263 }
9264 #[inline]
9265 pub fn json_passing_clause(&self) -> Option<JsonPassingClause> {
9266 support::child(&self.syntax)
9267 }
9268 #[inline]
9269 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
9270 support::token(&self.syntax, SyntaxKind::L_PAREN)
9271 }
9272 #[inline]
9273 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
9274 support::token(&self.syntax, SyntaxKind::R_PAREN)
9275 }
9276 #[inline]
9277 pub fn comma_token(&self) -> Option<SyntaxToken> {
9278 support::token(&self.syntax, SyntaxKind::COMMA)
9279 }
9280 #[inline]
9281 pub fn json_exists_token(&self) -> Option<SyntaxToken> {
9282 support::token(&self.syntax, SyntaxKind::JSON_EXISTS_KW)
9283 }
9284}
9285
9286#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9287pub struct JsonExprFormat {
9288 pub(crate) syntax: SyntaxNode,
9289}
9290impl JsonExprFormat {
9291 #[inline]
9292 pub fn expr(&self) -> Option<Expr> {
9293 support::child(&self.syntax)
9294 }
9295 #[inline]
9296 pub fn json_format_clause(&self) -> Option<JsonFormatClause> {
9297 support::child(&self.syntax)
9298 }
9299}
9300
9301#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9302pub struct JsonFn {
9303 pub(crate) syntax: SyntaxNode,
9304}
9305impl JsonFn {
9306 #[inline]
9307 pub fn json_expr_format(&self) -> Option<JsonExprFormat> {
9308 support::child(&self.syntax)
9309 }
9310 #[inline]
9311 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
9312 support::child(&self.syntax)
9313 }
9314 #[inline]
9315 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
9316 support::token(&self.syntax, SyntaxKind::L_PAREN)
9317 }
9318 #[inline]
9319 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
9320 support::token(&self.syntax, SyntaxKind::R_PAREN)
9321 }
9322 #[inline]
9323 pub fn json_token(&self) -> Option<SyntaxToken> {
9324 support::token(&self.syntax, SyntaxKind::JSON_KW)
9325 }
9326}
9327
9328#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9329pub struct JsonFormatClause {
9330 pub(crate) syntax: SyntaxNode,
9331}
9332impl JsonFormatClause {
9333 #[inline]
9334 pub fn json_encoding_clause(&self) -> Option<JsonEncodingClause> {
9335 support::child(&self.syntax)
9336 }
9337 #[inline]
9338 pub fn format_token(&self) -> Option<SyntaxToken> {
9339 support::token(&self.syntax, SyntaxKind::FORMAT_KW)
9340 }
9341 #[inline]
9342 pub fn json_token(&self) -> Option<SyntaxToken> {
9343 support::token(&self.syntax, SyntaxKind::JSON_KW)
9344 }
9345}
9346
9347#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9348pub struct JsonKeyValue {
9349 pub(crate) syntax: SyntaxNode,
9350}
9351impl JsonKeyValue {
9352 #[inline]
9353 pub fn expr(&self) -> Option<Expr> {
9354 support::child(&self.syntax)
9355 }
9356 #[inline]
9357 pub fn json_value_expr(&self) -> Option<JsonValueExpr> {
9358 support::child(&self.syntax)
9359 }
9360 #[inline]
9361 pub fn colon_token(&self) -> Option<SyntaxToken> {
9362 support::token(&self.syntax, SyntaxKind::COLON)
9363 }
9364}
9365
9366#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9367pub struct JsonKeysUniqueClause {
9368 pub(crate) syntax: SyntaxNode,
9369}
9370impl JsonKeysUniqueClause {
9371 #[inline]
9372 pub fn keys_token(&self) -> Option<SyntaxToken> {
9373 support::token(&self.syntax, SyntaxKind::KEYS_KW)
9374 }
9375 #[inline]
9376 pub fn unique_token(&self) -> Option<SyntaxToken> {
9377 support::token(&self.syntax, SyntaxKind::UNIQUE_KW)
9378 }
9379 #[inline]
9380 pub fn with_token(&self) -> Option<SyntaxToken> {
9381 support::token(&self.syntax, SyntaxKind::WITH_KW)
9382 }
9383 #[inline]
9384 pub fn without_token(&self) -> Option<SyntaxToken> {
9385 support::token(&self.syntax, SyntaxKind::WITHOUT_KW)
9386 }
9387}
9388
9389#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9390pub struct JsonNullClause {
9391 pub(crate) syntax: SyntaxNode,
9392}
9393impl JsonNullClause {
9394 #[inline]
9395 pub fn absent_token(&self) -> Option<SyntaxToken> {
9396 support::token(&self.syntax, SyntaxKind::ABSENT_KW)
9397 }
9398 #[inline]
9399 pub fn null_token(&self) -> Option<SyntaxToken> {
9400 support::token(&self.syntax, SyntaxKind::NULL_KW)
9401 }
9402 #[inline]
9403 pub fn on_token(&self) -> Option<SyntaxToken> {
9404 support::token(&self.syntax, SyntaxKind::ON_KW)
9405 }
9406}
9407
9408#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9409pub struct JsonObjectAggFn {
9410 pub(crate) syntax: SyntaxNode,
9411}
9412impl JsonObjectAggFn {
9413 #[inline]
9414 pub fn json_key_value(&self) -> Option<JsonKeyValue> {
9415 support::child(&self.syntax)
9416 }
9417 #[inline]
9418 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
9419 support::child(&self.syntax)
9420 }
9421 #[inline]
9422 pub fn json_null_clause(&self) -> Option<JsonNullClause> {
9423 support::child(&self.syntax)
9424 }
9425 #[inline]
9426 pub fn returning_clause(&self) -> Option<ReturningClause> {
9427 support::child(&self.syntax)
9428 }
9429 #[inline]
9430 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
9431 support::token(&self.syntax, SyntaxKind::L_PAREN)
9432 }
9433 #[inline]
9434 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
9435 support::token(&self.syntax, SyntaxKind::R_PAREN)
9436 }
9437 #[inline]
9438 pub fn json_objectagg_token(&self) -> Option<SyntaxToken> {
9439 support::token(&self.syntax, SyntaxKind::JSON_OBJECTAGG_KW)
9440 }
9441}
9442
9443#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9444pub struct JsonObjectFn {
9445 pub(crate) syntax: SyntaxNode,
9446}
9447impl JsonObjectFn {
9448 #[inline]
9449 pub fn json_key_values(&self) -> AstChildren<JsonKeyValue> {
9450 support::children(&self.syntax)
9451 }
9452 #[inline]
9453 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
9454 support::child(&self.syntax)
9455 }
9456 #[inline]
9457 pub fn json_null_clause(&self) -> Option<JsonNullClause> {
9458 support::child(&self.syntax)
9459 }
9460 #[inline]
9461 pub fn json_returning_clause(&self) -> Option<JsonReturningClause> {
9462 support::child(&self.syntax)
9463 }
9464 #[inline]
9465 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
9466 support::token(&self.syntax, SyntaxKind::L_PAREN)
9467 }
9468 #[inline]
9469 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
9470 support::token(&self.syntax, SyntaxKind::R_PAREN)
9471 }
9472 #[inline]
9473 pub fn json_object_token(&self) -> Option<SyntaxToken> {
9474 support::token(&self.syntax, SyntaxKind::JSON_OBJECT_KW)
9475 }
9476}
9477
9478#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9479pub struct JsonOnEmptyClause {
9480 pub(crate) syntax: SyntaxNode,
9481}
9482impl JsonOnEmptyClause {
9483 #[inline]
9484 pub fn json_behavior(&self) -> Option<JsonBehavior> {
9485 support::child(&self.syntax)
9486 }
9487 #[inline]
9488 pub fn empty_token(&self) -> Option<SyntaxToken> {
9489 support::token(&self.syntax, SyntaxKind::EMPTY_KW)
9490 }
9491 #[inline]
9492 pub fn on_token(&self) -> Option<SyntaxToken> {
9493 support::token(&self.syntax, SyntaxKind::ON_KW)
9494 }
9495}
9496
9497#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9498pub struct JsonOnErrorClause {
9499 pub(crate) syntax: SyntaxNode,
9500}
9501impl JsonOnErrorClause {
9502 #[inline]
9503 pub fn json_behavior(&self) -> Option<JsonBehavior> {
9504 support::child(&self.syntax)
9505 }
9506 #[inline]
9507 pub fn error_token(&self) -> Option<SyntaxToken> {
9508 support::token(&self.syntax, SyntaxKind::ERROR_KW)
9509 }
9510 #[inline]
9511 pub fn on_token(&self) -> Option<SyntaxToken> {
9512 support::token(&self.syntax, SyntaxKind::ON_KW)
9513 }
9514}
9515
9516#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9517pub struct JsonPassingArg {
9518 pub(crate) syntax: SyntaxNode,
9519}
9520impl JsonPassingArg {
9521 #[inline]
9522 pub fn expr(&self) -> Option<Expr> {
9523 support::child(&self.syntax)
9524 }
9525}
9526
9527#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9528pub struct JsonPassingClause {
9529 pub(crate) syntax: SyntaxNode,
9530}
9531impl JsonPassingClause {
9532 #[inline]
9533 pub fn json_passing_args(&self) -> AstChildren<JsonPassingArg> {
9534 support::children(&self.syntax)
9535 }
9536 #[inline]
9537 pub fn passing_token(&self) -> Option<SyntaxToken> {
9538 support::token(&self.syntax, SyntaxKind::PASSING_KW)
9539 }
9540}
9541
9542#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9543pub struct JsonPathClause {
9544 pub(crate) syntax: SyntaxNode,
9545}
9546impl JsonPathClause {
9547 #[inline]
9548 pub fn expr(&self) -> Option<Expr> {
9549 support::child(&self.syntax)
9550 }
9551 #[inline]
9552 pub fn path_token(&self) -> Option<SyntaxToken> {
9553 support::token(&self.syntax, SyntaxKind::PATH_KW)
9554 }
9555}
9556
9557#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9558pub struct JsonQueryFn {
9559 pub(crate) syntax: SyntaxNode,
9560}
9561impl JsonQueryFn {
9562 #[inline]
9563 pub fn expr(&self) -> Option<Expr> {
9564 support::child(&self.syntax)
9565 }
9566 #[inline]
9567 pub fn json_behavior_clause(&self) -> Option<JsonBehaviorClause> {
9568 support::child(&self.syntax)
9569 }
9570 #[inline]
9571 pub fn json_format_clause(&self) -> Option<JsonFormatClause> {
9572 support::child(&self.syntax)
9573 }
9574 #[inline]
9575 pub fn json_passing_clause(&self) -> Option<JsonPassingClause> {
9576 support::child(&self.syntax)
9577 }
9578 #[inline]
9579 pub fn json_quotes_clause(&self) -> Option<JsonQuotesClause> {
9580 support::child(&self.syntax)
9581 }
9582 #[inline]
9583 pub fn json_returning_clause(&self) -> Option<JsonReturningClause> {
9584 support::child(&self.syntax)
9585 }
9586 #[inline]
9587 pub fn json_wrapper_behavior_clause(&self) -> Option<JsonWrapperBehaviorClause> {
9588 support::child(&self.syntax)
9589 }
9590 #[inline]
9591 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
9592 support::token(&self.syntax, SyntaxKind::L_PAREN)
9593 }
9594 #[inline]
9595 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
9596 support::token(&self.syntax, SyntaxKind::R_PAREN)
9597 }
9598 #[inline]
9599 pub fn comma_token(&self) -> Option<SyntaxToken> {
9600 support::token(&self.syntax, SyntaxKind::COMMA)
9601 }
9602 #[inline]
9603 pub fn json_query_token(&self) -> Option<SyntaxToken> {
9604 support::token(&self.syntax, SyntaxKind::JSON_QUERY_KW)
9605 }
9606}
9607
9608#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9609pub struct JsonQuotesClause {
9610 pub(crate) syntax: SyntaxNode,
9611}
9612impl JsonQuotesClause {
9613 #[inline]
9614 pub fn keep_token(&self) -> Option<SyntaxToken> {
9615 support::token(&self.syntax, SyntaxKind::KEEP_KW)
9616 }
9617 #[inline]
9618 pub fn omit_token(&self) -> Option<SyntaxToken> {
9619 support::token(&self.syntax, SyntaxKind::OMIT_KW)
9620 }
9621 #[inline]
9622 pub fn quotes_token(&self) -> Option<SyntaxToken> {
9623 support::token(&self.syntax, SyntaxKind::QUOTES_KW)
9624 }
9625}
9626
9627#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9628pub struct JsonReturningClause {
9629 pub(crate) syntax: SyntaxNode,
9630}
9631impl JsonReturningClause {
9632 #[inline]
9633 pub fn ty(&self) -> Option<Type> {
9634 support::child(&self.syntax)
9635 }
9636 #[inline]
9637 pub fn returning_token(&self) -> Option<SyntaxToken> {
9638 support::token(&self.syntax, SyntaxKind::RETURNING_KW)
9639 }
9640}
9641
9642#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9643pub struct JsonScalarFn {
9644 pub(crate) syntax: SyntaxNode,
9645}
9646impl JsonScalarFn {
9647 #[inline]
9648 pub fn expr(&self) -> Option<Expr> {
9649 support::child(&self.syntax)
9650 }
9651 #[inline]
9652 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
9653 support::token(&self.syntax, SyntaxKind::L_PAREN)
9654 }
9655 #[inline]
9656 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
9657 support::token(&self.syntax, SyntaxKind::R_PAREN)
9658 }
9659 #[inline]
9660 pub fn json_scalar_token(&self) -> Option<SyntaxToken> {
9661 support::token(&self.syntax, SyntaxKind::JSON_SCALAR_KW)
9662 }
9663}
9664
9665#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9666pub struct JsonSelectFormat {
9667 pub(crate) syntax: SyntaxNode,
9668}
9669impl JsonSelectFormat {
9670 #[inline]
9671 pub fn json_format_clause(&self) -> Option<JsonFormatClause> {
9672 support::child(&self.syntax)
9673 }
9674 #[inline]
9675 pub fn select_variant(&self) -> Option<SelectVariant> {
9676 support::child(&self.syntax)
9677 }
9678}
9679
9680#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9681pub struct JsonSerializeFn {
9682 pub(crate) syntax: SyntaxNode,
9683}
9684impl JsonSerializeFn {
9685 #[inline]
9686 pub fn expr(&self) -> Option<Expr> {
9687 support::child(&self.syntax)
9688 }
9689 #[inline]
9690 pub fn json_format_clause(&self) -> Option<JsonFormatClause> {
9691 support::child(&self.syntax)
9692 }
9693 #[inline]
9694 pub fn json_returning_clause(&self) -> Option<JsonReturningClause> {
9695 support::child(&self.syntax)
9696 }
9697 #[inline]
9698 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
9699 support::token(&self.syntax, SyntaxKind::L_PAREN)
9700 }
9701 #[inline]
9702 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
9703 support::token(&self.syntax, SyntaxKind::R_PAREN)
9704 }
9705 #[inline]
9706 pub fn json_serialize_token(&self) -> Option<SyntaxToken> {
9707 support::token(&self.syntax, SyntaxKind::JSON_SERIALIZE_KW)
9708 }
9709}
9710
9711#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9712pub struct JsonTable {
9713 pub(crate) syntax: SyntaxNode,
9714}
9715impl JsonTable {
9716 #[inline]
9717 pub fn expr(&self) -> Option<Expr> {
9718 support::child(&self.syntax)
9719 }
9720 #[inline]
9721 pub fn json_format_clause(&self) -> Option<JsonFormatClause> {
9722 support::child(&self.syntax)
9723 }
9724 #[inline]
9725 pub fn json_on_error_clause(&self) -> Option<JsonOnErrorClause> {
9726 support::child(&self.syntax)
9727 }
9728 #[inline]
9729 pub fn json_passing_clause(&self) -> Option<JsonPassingClause> {
9730 support::child(&self.syntax)
9731 }
9732 #[inline]
9733 pub fn json_table_column_list(&self) -> Option<JsonTableColumnList> {
9734 support::child(&self.syntax)
9735 }
9736 #[inline]
9737 pub fn name(&self) -> Option<Name> {
9738 support::child(&self.syntax)
9739 }
9740 #[inline]
9741 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
9742 support::token(&self.syntax, SyntaxKind::L_PAREN)
9743 }
9744 #[inline]
9745 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
9746 support::token(&self.syntax, SyntaxKind::R_PAREN)
9747 }
9748 #[inline]
9749 pub fn comma_token(&self) -> Option<SyntaxToken> {
9750 support::token(&self.syntax, SyntaxKind::COMMA)
9751 }
9752 #[inline]
9753 pub fn as_token(&self) -> Option<SyntaxToken> {
9754 support::token(&self.syntax, SyntaxKind::AS_KW)
9755 }
9756 #[inline]
9757 pub fn json_table_token(&self) -> Option<SyntaxToken> {
9758 support::token(&self.syntax, SyntaxKind::JSON_TABLE_KW)
9759 }
9760}
9761
9762#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9763pub struct JsonTableColumn {
9764 pub(crate) syntax: SyntaxNode,
9765}
9766impl JsonTableColumn {
9767 #[inline]
9768 pub fn expr(&self) -> Option<Expr> {
9769 support::child(&self.syntax)
9770 }
9771 #[inline]
9772 pub fn json_format_clause(&self) -> Option<JsonFormatClause> {
9773 support::child(&self.syntax)
9774 }
9775 #[inline]
9776 pub fn json_on_empty_clause(&self) -> Option<JsonOnEmptyClause> {
9777 support::child(&self.syntax)
9778 }
9779 #[inline]
9780 pub fn json_on_error_clause(&self) -> Option<JsonOnErrorClause> {
9781 support::child(&self.syntax)
9782 }
9783 #[inline]
9784 pub fn json_path_clause(&self) -> Option<JsonPathClause> {
9785 support::child(&self.syntax)
9786 }
9787 #[inline]
9788 pub fn json_quotes_clause(&self) -> Option<JsonQuotesClause> {
9789 support::child(&self.syntax)
9790 }
9791 #[inline]
9792 pub fn json_table_column_list(&self) -> Option<JsonTableColumnList> {
9793 support::child(&self.syntax)
9794 }
9795 #[inline]
9796 pub fn json_wrapper_behavior_clause(&self) -> Option<JsonWrapperBehaviorClause> {
9797 support::child(&self.syntax)
9798 }
9799 #[inline]
9800 pub fn name(&self) -> Option<Name> {
9801 support::child(&self.syntax)
9802 }
9803 #[inline]
9804 pub fn ty(&self) -> Option<Type> {
9805 support::child(&self.syntax)
9806 }
9807 #[inline]
9808 pub fn as_token(&self) -> Option<SyntaxToken> {
9809 support::token(&self.syntax, SyntaxKind::AS_KW)
9810 }
9811 #[inline]
9812 pub fn exists_token(&self) -> Option<SyntaxToken> {
9813 support::token(&self.syntax, SyntaxKind::EXISTS_KW)
9814 }
9815 #[inline]
9816 pub fn for_token(&self) -> Option<SyntaxToken> {
9817 support::token(&self.syntax, SyntaxKind::FOR_KW)
9818 }
9819 #[inline]
9820 pub fn nested_token(&self) -> Option<SyntaxToken> {
9821 support::token(&self.syntax, SyntaxKind::NESTED_KW)
9822 }
9823 #[inline]
9824 pub fn ordinality_token(&self) -> Option<SyntaxToken> {
9825 support::token(&self.syntax, SyntaxKind::ORDINALITY_KW)
9826 }
9827 #[inline]
9828 pub fn path_token(&self) -> Option<SyntaxToken> {
9829 support::token(&self.syntax, SyntaxKind::PATH_KW)
9830 }
9831}
9832
9833#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9834pub struct JsonTableColumnList {
9835 pub(crate) syntax: SyntaxNode,
9836}
9837impl JsonTableColumnList {
9838 #[inline]
9839 pub fn json_table_columns(&self) -> AstChildren<JsonTableColumn> {
9840 support::children(&self.syntax)
9841 }
9842 #[inline]
9843 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
9844 support::token(&self.syntax, SyntaxKind::L_PAREN)
9845 }
9846 #[inline]
9847 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
9848 support::token(&self.syntax, SyntaxKind::R_PAREN)
9849 }
9850 #[inline]
9851 pub fn columns_token(&self) -> Option<SyntaxToken> {
9852 support::token(&self.syntax, SyntaxKind::COLUMNS_KW)
9853 }
9854}
9855
9856#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9857pub struct JsonValueExpr {
9858 pub(crate) syntax: SyntaxNode,
9859}
9860impl JsonValueExpr {
9861 #[inline]
9862 pub fn expr(&self) -> Option<Expr> {
9863 support::child(&self.syntax)
9864 }
9865 #[inline]
9866 pub fn json_format_clause(&self) -> Option<JsonFormatClause> {
9867 support::child(&self.syntax)
9868 }
9869}
9870
9871#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9872pub struct JsonValueFn {
9873 pub(crate) syntax: SyntaxNode,
9874}
9875impl JsonValueFn {
9876 #[inline]
9877 pub fn expr(&self) -> Option<Expr> {
9878 support::child(&self.syntax)
9879 }
9880 #[inline]
9881 pub fn json_behavior_clause(&self) -> Option<JsonBehaviorClause> {
9882 support::child(&self.syntax)
9883 }
9884 #[inline]
9885 pub fn json_format_clause(&self) -> Option<JsonFormatClause> {
9886 support::child(&self.syntax)
9887 }
9888 #[inline]
9889 pub fn json_passing_clause(&self) -> Option<JsonPassingClause> {
9890 support::child(&self.syntax)
9891 }
9892 #[inline]
9893 pub fn json_returning_clause(&self) -> Option<JsonReturningClause> {
9894 support::child(&self.syntax)
9895 }
9896 #[inline]
9897 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
9898 support::token(&self.syntax, SyntaxKind::L_PAREN)
9899 }
9900 #[inline]
9901 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
9902 support::token(&self.syntax, SyntaxKind::R_PAREN)
9903 }
9904 #[inline]
9905 pub fn comma_token(&self) -> Option<SyntaxToken> {
9906 support::token(&self.syntax, SyntaxKind::COMMA)
9907 }
9908 #[inline]
9909 pub fn json_value_token(&self) -> Option<SyntaxToken> {
9910 support::token(&self.syntax, SyntaxKind::JSON_VALUE_KW)
9911 }
9912}
9913
9914#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9915pub struct JsonWrapperBehaviorClause {
9916 pub(crate) syntax: SyntaxNode,
9917}
9918impl JsonWrapperBehaviorClause {
9919 #[inline]
9920 pub fn array_token(&self) -> Option<SyntaxToken> {
9921 support::token(&self.syntax, SyntaxKind::ARRAY_KW)
9922 }
9923 #[inline]
9924 pub fn conditional_token(&self) -> Option<SyntaxToken> {
9925 support::token(&self.syntax, SyntaxKind::CONDITIONAL_KW)
9926 }
9927 #[inline]
9928 pub fn unconditional_token(&self) -> Option<SyntaxToken> {
9929 support::token(&self.syntax, SyntaxKind::UNCONDITIONAL_KW)
9930 }
9931 #[inline]
9932 pub fn with_token(&self) -> Option<SyntaxToken> {
9933 support::token(&self.syntax, SyntaxKind::WITH_KW)
9934 }
9935 #[inline]
9936 pub fn without_token(&self) -> Option<SyntaxToken> {
9937 support::token(&self.syntax, SyntaxKind::WITHOUT_KW)
9938 }
9939 #[inline]
9940 pub fn wrapper_token(&self) -> Option<SyntaxToken> {
9941 support::token(&self.syntax, SyntaxKind::WRAPPER_KW)
9942 }
9943}
9944
9945#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9946pub struct LanguageFuncOption {
9947 pub(crate) syntax: SyntaxNode,
9948}
9949impl LanguageFuncOption {
9950 #[inline]
9951 pub fn name_ref(&self) -> Option<NameRef> {
9952 support::child(&self.syntax)
9953 }
9954 #[inline]
9955 pub fn language_token(&self) -> Option<SyntaxToken> {
9956 support::token(&self.syntax, SyntaxKind::LANGUAGE_KW)
9957 }
9958}
9959
9960#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9961pub struct LeakproofFuncOption {
9962 pub(crate) syntax: SyntaxNode,
9963}
9964impl LeakproofFuncOption {
9965 #[inline]
9966 pub fn leakproof_token(&self) -> Option<SyntaxToken> {
9967 support::token(&self.syntax, SyntaxKind::LEAKPROOF_KW)
9968 }
9969 #[inline]
9970 pub fn not_token(&self) -> Option<SyntaxToken> {
9971 support::token(&self.syntax, SyntaxKind::NOT_KW)
9972 }
9973}
9974
9975#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9976pub struct LikeClause {
9977 pub(crate) syntax: SyntaxNode,
9978}
9979impl LikeClause {
9980 #[inline]
9981 pub fn like_options(&self) -> AstChildren<LikeOption> {
9982 support::children(&self.syntax)
9983 }
9984 #[inline]
9985 pub fn path(&self) -> Option<Path> {
9986 support::child(&self.syntax)
9987 }
9988 #[inline]
9989 pub fn like_token(&self) -> Option<SyntaxToken> {
9990 support::token(&self.syntax, SyntaxKind::LIKE_KW)
9991 }
9992}
9993
9994#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9995pub struct LikeOption {
9996 pub(crate) syntax: SyntaxNode,
9997}
9998impl LikeOption {
9999 #[inline]
10000 pub fn all_token(&self) -> Option<SyntaxToken> {
10001 support::token(&self.syntax, SyntaxKind::ALL_KW)
10002 }
10003 #[inline]
10004 pub fn comments_token(&self) -> Option<SyntaxToken> {
10005 support::token(&self.syntax, SyntaxKind::COMMENTS_KW)
10006 }
10007 #[inline]
10008 pub fn compression_token(&self) -> Option<SyntaxToken> {
10009 support::token(&self.syntax, SyntaxKind::COMPRESSION_KW)
10010 }
10011 #[inline]
10012 pub fn constraints_token(&self) -> Option<SyntaxToken> {
10013 support::token(&self.syntax, SyntaxKind::CONSTRAINTS_KW)
10014 }
10015 #[inline]
10016 pub fn defaults_token(&self) -> Option<SyntaxToken> {
10017 support::token(&self.syntax, SyntaxKind::DEFAULTS_KW)
10018 }
10019 #[inline]
10020 pub fn excluding_token(&self) -> Option<SyntaxToken> {
10021 support::token(&self.syntax, SyntaxKind::EXCLUDING_KW)
10022 }
10023 #[inline]
10024 pub fn generated_token(&self) -> Option<SyntaxToken> {
10025 support::token(&self.syntax, SyntaxKind::GENERATED_KW)
10026 }
10027 #[inline]
10028 pub fn identity_token(&self) -> Option<SyntaxToken> {
10029 support::token(&self.syntax, SyntaxKind::IDENTITY_KW)
10030 }
10031 #[inline]
10032 pub fn including_token(&self) -> Option<SyntaxToken> {
10033 support::token(&self.syntax, SyntaxKind::INCLUDING_KW)
10034 }
10035 #[inline]
10036 pub fn indexes_token(&self) -> Option<SyntaxToken> {
10037 support::token(&self.syntax, SyntaxKind::INDEXES_KW)
10038 }
10039 #[inline]
10040 pub fn statistics_token(&self) -> Option<SyntaxToken> {
10041 support::token(&self.syntax, SyntaxKind::STATISTICS_KW)
10042 }
10043 #[inline]
10044 pub fn storage_token(&self) -> Option<SyntaxToken> {
10045 support::token(&self.syntax, SyntaxKind::STORAGE_KW)
10046 }
10047}
10048
10049#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10050pub struct LimitClause {
10051 pub(crate) syntax: SyntaxNode,
10052}
10053impl LimitClause {
10054 #[inline]
10055 pub fn expr(&self) -> Option<Expr> {
10056 support::child(&self.syntax)
10057 }
10058 #[inline]
10059 pub fn all_token(&self) -> Option<SyntaxToken> {
10060 support::token(&self.syntax, SyntaxKind::ALL_KW)
10061 }
10062 #[inline]
10063 pub fn limit_token(&self) -> Option<SyntaxToken> {
10064 support::token(&self.syntax, SyntaxKind::LIMIT_KW)
10065 }
10066}
10067
10068#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10069pub struct LimitToTables {
10070 pub(crate) syntax: SyntaxNode,
10071}
10072impl LimitToTables {
10073 #[inline]
10074 pub fn name_refs(&self) -> AstChildren<NameRef> {
10075 support::children(&self.syntax)
10076 }
10077 #[inline]
10078 pub fn limit_token(&self) -> Option<SyntaxToken> {
10079 support::token(&self.syntax, SyntaxKind::LIMIT_KW)
10080 }
10081 #[inline]
10082 pub fn to_token(&self) -> Option<SyntaxToken> {
10083 support::token(&self.syntax, SyntaxKind::TO_KW)
10084 }
10085}
10086
10087#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10088pub struct Listen {
10089 pub(crate) syntax: SyntaxNode,
10090}
10091impl Listen {
10092 #[inline]
10093 pub fn name(&self) -> Option<Name> {
10094 support::child(&self.syntax)
10095 }
10096 #[inline]
10097 pub fn listen_token(&self) -> Option<SyntaxToken> {
10098 support::token(&self.syntax, SyntaxKind::LISTEN_KW)
10099 }
10100}
10101
10102#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10103pub struct Literal {
10104 pub(crate) syntax: SyntaxNode,
10105}
10106impl Literal {}
10107
10108#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10109pub struct Load {
10110 pub(crate) syntax: SyntaxNode,
10111}
10112impl Load {
10113 #[inline]
10114 pub fn literal(&self) -> Option<Literal> {
10115 support::child(&self.syntax)
10116 }
10117 #[inline]
10118 pub fn load_token(&self) -> Option<SyntaxToken> {
10119 support::token(&self.syntax, SyntaxKind::LOAD_KW)
10120 }
10121}
10122
10123#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10124pub struct Lock {
10125 pub(crate) syntax: SyntaxNode,
10126}
10127impl Lock {
10128 #[inline]
10129 pub fn table_list(&self) -> Option<TableList> {
10130 support::child(&self.syntax)
10131 }
10132 #[inline]
10133 pub fn lock_token(&self) -> Option<SyntaxToken> {
10134 support::token(&self.syntax, SyntaxKind::LOCK_KW)
10135 }
10136 #[inline]
10137 pub fn table_token(&self) -> Option<SyntaxToken> {
10138 support::token(&self.syntax, SyntaxKind::TABLE_KW)
10139 }
10140}
10141
10142#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10143pub struct LockingClause {
10144 pub(crate) syntax: SyntaxNode,
10145}
10146impl LockingClause {
10147 #[inline]
10148 pub fn for_token(&self) -> Option<SyntaxToken> {
10149 support::token(&self.syntax, SyntaxKind::FOR_KW)
10150 }
10151}
10152
10153#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10154pub struct Lteq {
10155 pub(crate) syntax: SyntaxNode,
10156}
10157impl Lteq {
10158 #[inline]
10159 pub fn l_angle_token(&self) -> Option<SyntaxToken> {
10160 support::token(&self.syntax, SyntaxKind::L_ANGLE)
10161 }
10162 #[inline]
10163 pub fn eq_token(&self) -> Option<SyntaxToken> {
10164 support::token(&self.syntax, SyntaxKind::EQ)
10165 }
10166}
10167
10168#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10169pub struct MatchFull {
10170 pub(crate) syntax: SyntaxNode,
10171}
10172impl MatchFull {
10173 #[inline]
10174 pub fn full_token(&self) -> Option<SyntaxToken> {
10175 support::token(&self.syntax, SyntaxKind::FULL_KW)
10176 }
10177 #[inline]
10178 pub fn match_token(&self) -> Option<SyntaxToken> {
10179 support::token(&self.syntax, SyntaxKind::MATCH_KW)
10180 }
10181}
10182
10183#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10184pub struct MatchPartial {
10185 pub(crate) syntax: SyntaxNode,
10186}
10187impl MatchPartial {
10188 #[inline]
10189 pub fn match_token(&self) -> Option<SyntaxToken> {
10190 support::token(&self.syntax, SyntaxKind::MATCH_KW)
10191 }
10192 #[inline]
10193 pub fn partial_token(&self) -> Option<SyntaxToken> {
10194 support::token(&self.syntax, SyntaxKind::PARTIAL_KW)
10195 }
10196}
10197
10198#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10199pub struct MatchSimple {
10200 pub(crate) syntax: SyntaxNode,
10201}
10202impl MatchSimple {
10203 #[inline]
10204 pub fn match_token(&self) -> Option<SyntaxToken> {
10205 support::token(&self.syntax, SyntaxKind::MATCH_KW)
10206 }
10207 #[inline]
10208 pub fn simple_token(&self) -> Option<SyntaxToken> {
10209 support::token(&self.syntax, SyntaxKind::SIMPLE_KW)
10210 }
10211}
10212
10213#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10214pub struct Materialized {
10215 pub(crate) syntax: SyntaxNode,
10216}
10217impl Materialized {
10218 #[inline]
10219 pub fn materialized_token(&self) -> Option<SyntaxToken> {
10220 support::token(&self.syntax, SyntaxKind::MATERIALIZED_KW)
10221 }
10222}
10223
10224#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10225pub struct Merge {
10226 pub(crate) syntax: SyntaxNode,
10227}
10228impl Merge {
10229 #[inline]
10230 pub fn alias(&self) -> Option<Alias> {
10231 support::child(&self.syntax)
10232 }
10233 #[inline]
10234 pub fn merge_when_clauses(&self) -> AstChildren<MergeWhenClause> {
10235 support::children(&self.syntax)
10236 }
10237 #[inline]
10238 pub fn relation_name(&self) -> Option<RelationName> {
10239 support::child(&self.syntax)
10240 }
10241 #[inline]
10242 pub fn using_on_clause(&self) -> Option<UsingOnClause> {
10243 support::child(&self.syntax)
10244 }
10245 #[inline]
10246 pub fn into_token(&self) -> Option<SyntaxToken> {
10247 support::token(&self.syntax, SyntaxKind::INTO_KW)
10248 }
10249 #[inline]
10250 pub fn merge_token(&self) -> Option<SyntaxToken> {
10251 support::token(&self.syntax, SyntaxKind::MERGE_KW)
10252 }
10253}
10254
10255#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10256pub struct MergeDelete {
10257 pub(crate) syntax: SyntaxNode,
10258}
10259impl MergeDelete {
10260 #[inline]
10261 pub fn delete_token(&self) -> Option<SyntaxToken> {
10262 support::token(&self.syntax, SyntaxKind::DELETE_KW)
10263 }
10264}
10265
10266#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10267pub struct MergeDoNothing {
10268 pub(crate) syntax: SyntaxNode,
10269}
10270impl MergeDoNothing {
10271 #[inline]
10272 pub fn do_token(&self) -> Option<SyntaxToken> {
10273 support::token(&self.syntax, SyntaxKind::DO_KW)
10274 }
10275 #[inline]
10276 pub fn nothing_token(&self) -> Option<SyntaxToken> {
10277 support::token(&self.syntax, SyntaxKind::NOTHING_KW)
10278 }
10279}
10280
10281#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10282pub struct MergeInsert {
10283 pub(crate) syntax: SyntaxNode,
10284}
10285impl MergeInsert {
10286 #[inline]
10287 pub fn column_list(&self) -> Option<ColumnList> {
10288 support::child(&self.syntax)
10289 }
10290 #[inline]
10291 pub fn values(&self) -> Option<Values> {
10292 support::child(&self.syntax)
10293 }
10294 #[inline]
10295 pub fn default_token(&self) -> Option<SyntaxToken> {
10296 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
10297 }
10298 #[inline]
10299 pub fn insert_token(&self) -> Option<SyntaxToken> {
10300 support::token(&self.syntax, SyntaxKind::INSERT_KW)
10301 }
10302 #[inline]
10303 pub fn overriding_token(&self) -> Option<SyntaxToken> {
10304 support::token(&self.syntax, SyntaxKind::OVERRIDING_KW)
10305 }
10306 #[inline]
10307 pub fn system_token(&self) -> Option<SyntaxToken> {
10308 support::token(&self.syntax, SyntaxKind::SYSTEM_KW)
10309 }
10310 #[inline]
10311 pub fn user_token(&self) -> Option<SyntaxToken> {
10312 support::token(&self.syntax, SyntaxKind::USER_KW)
10313 }
10314 #[inline]
10315 pub fn values_token(&self) -> Option<SyntaxToken> {
10316 support::token(&self.syntax, SyntaxKind::VALUES_KW)
10317 }
10318}
10319
10320#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10321pub struct MergePartitions {
10322 pub(crate) syntax: SyntaxNode,
10323}
10324impl MergePartitions {
10325 #[inline]
10326 pub fn path(&self) -> Option<Path> {
10327 support::child(&self.syntax)
10328 }
10329 #[inline]
10330 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
10331 support::token(&self.syntax, SyntaxKind::L_PAREN)
10332 }
10333 #[inline]
10334 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
10335 support::token(&self.syntax, SyntaxKind::R_PAREN)
10336 }
10337 #[inline]
10338 pub fn into_token(&self) -> Option<SyntaxToken> {
10339 support::token(&self.syntax, SyntaxKind::INTO_KW)
10340 }
10341 #[inline]
10342 pub fn merge_token(&self) -> Option<SyntaxToken> {
10343 support::token(&self.syntax, SyntaxKind::MERGE_KW)
10344 }
10345 #[inline]
10346 pub fn partitions_token(&self) -> Option<SyntaxToken> {
10347 support::token(&self.syntax, SyntaxKind::PARTITIONS_KW)
10348 }
10349}
10350
10351#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10352pub struct MergeUpdate {
10353 pub(crate) syntax: SyntaxNode,
10354}
10355impl MergeUpdate {
10356 #[inline]
10357 pub fn set_clause(&self) -> Option<SetClause> {
10358 support::child(&self.syntax)
10359 }
10360 #[inline]
10361 pub fn set_token(&self) -> Option<SyntaxToken> {
10362 support::token(&self.syntax, SyntaxKind::SET_KW)
10363 }
10364 #[inline]
10365 pub fn update_token(&self) -> Option<SyntaxToken> {
10366 support::token(&self.syntax, SyntaxKind::UPDATE_KW)
10367 }
10368}
10369
10370#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10371pub struct MergeWhenMatched {
10372 pub(crate) syntax: SyntaxNode,
10373}
10374impl MergeWhenMatched {
10375 #[inline]
10376 pub fn expr(&self) -> Option<Expr> {
10377 support::child(&self.syntax)
10378 }
10379 #[inline]
10380 pub fn merge_action(&self) -> Option<MergeAction> {
10381 support::child(&self.syntax)
10382 }
10383 #[inline]
10384 pub fn and_token(&self) -> Option<SyntaxToken> {
10385 support::token(&self.syntax, SyntaxKind::AND_KW)
10386 }
10387 #[inline]
10388 pub fn matched_token(&self) -> Option<SyntaxToken> {
10389 support::token(&self.syntax, SyntaxKind::MATCHED_KW)
10390 }
10391 #[inline]
10392 pub fn then_token(&self) -> Option<SyntaxToken> {
10393 support::token(&self.syntax, SyntaxKind::THEN_KW)
10394 }
10395 #[inline]
10396 pub fn when_token(&self) -> Option<SyntaxToken> {
10397 support::token(&self.syntax, SyntaxKind::WHEN_KW)
10398 }
10399}
10400
10401#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10402pub struct MergeWhenNotMatchedSource {
10403 pub(crate) syntax: SyntaxNode,
10404}
10405impl MergeWhenNotMatchedSource {
10406 #[inline]
10407 pub fn expr(&self) -> Option<Expr> {
10408 support::child(&self.syntax)
10409 }
10410 #[inline]
10411 pub fn merge_action(&self) -> Option<MergeAction> {
10412 support::child(&self.syntax)
10413 }
10414 #[inline]
10415 pub fn and_token(&self) -> Option<SyntaxToken> {
10416 support::token(&self.syntax, SyntaxKind::AND_KW)
10417 }
10418 #[inline]
10419 pub fn by_token(&self) -> Option<SyntaxToken> {
10420 support::token(&self.syntax, SyntaxKind::BY_KW)
10421 }
10422 #[inline]
10423 pub fn matched_token(&self) -> Option<SyntaxToken> {
10424 support::token(&self.syntax, SyntaxKind::MATCHED_KW)
10425 }
10426 #[inline]
10427 pub fn not_token(&self) -> Option<SyntaxToken> {
10428 support::token(&self.syntax, SyntaxKind::NOT_KW)
10429 }
10430 #[inline]
10431 pub fn source_token(&self) -> Option<SyntaxToken> {
10432 support::token(&self.syntax, SyntaxKind::SOURCE_KW)
10433 }
10434 #[inline]
10435 pub fn then_token(&self) -> Option<SyntaxToken> {
10436 support::token(&self.syntax, SyntaxKind::THEN_KW)
10437 }
10438 #[inline]
10439 pub fn when_token(&self) -> Option<SyntaxToken> {
10440 support::token(&self.syntax, SyntaxKind::WHEN_KW)
10441 }
10442}
10443
10444#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10445pub struct MergeWhenNotMatchedTarget {
10446 pub(crate) syntax: SyntaxNode,
10447}
10448impl MergeWhenNotMatchedTarget {
10449 #[inline]
10450 pub fn expr(&self) -> Option<Expr> {
10451 support::child(&self.syntax)
10452 }
10453 #[inline]
10454 pub fn merge_action(&self) -> Option<MergeAction> {
10455 support::child(&self.syntax)
10456 }
10457 #[inline]
10458 pub fn and_token(&self) -> Option<SyntaxToken> {
10459 support::token(&self.syntax, SyntaxKind::AND_KW)
10460 }
10461 #[inline]
10462 pub fn by_token(&self) -> Option<SyntaxToken> {
10463 support::token(&self.syntax, SyntaxKind::BY_KW)
10464 }
10465 #[inline]
10466 pub fn matched_token(&self) -> Option<SyntaxToken> {
10467 support::token(&self.syntax, SyntaxKind::MATCHED_KW)
10468 }
10469 #[inline]
10470 pub fn not_token(&self) -> Option<SyntaxToken> {
10471 support::token(&self.syntax, SyntaxKind::NOT_KW)
10472 }
10473 #[inline]
10474 pub fn target_token(&self) -> Option<SyntaxToken> {
10475 support::token(&self.syntax, SyntaxKind::TARGET_KW)
10476 }
10477 #[inline]
10478 pub fn then_token(&self) -> Option<SyntaxToken> {
10479 support::token(&self.syntax, SyntaxKind::THEN_KW)
10480 }
10481 #[inline]
10482 pub fn when_token(&self) -> Option<SyntaxToken> {
10483 support::token(&self.syntax, SyntaxKind::WHEN_KW)
10484 }
10485}
10486
10487#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10488pub struct Move {
10489 pub(crate) syntax: SyntaxNode,
10490}
10491impl Move {
10492 #[inline]
10493 pub fn name_ref(&self) -> Option<NameRef> {
10494 support::child(&self.syntax)
10495 }
10496 #[inline]
10497 pub fn from_token(&self) -> Option<SyntaxToken> {
10498 support::token(&self.syntax, SyntaxKind::FROM_KW)
10499 }
10500 #[inline]
10501 pub fn in_token(&self) -> Option<SyntaxToken> {
10502 support::token(&self.syntax, SyntaxKind::IN_KW)
10503 }
10504 #[inline]
10505 pub fn move_token(&self) -> Option<SyntaxToken> {
10506 support::token(&self.syntax, SyntaxKind::MOVE_KW)
10507 }
10508}
10509
10510#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10511pub struct Name {
10512 pub(crate) syntax: SyntaxNode,
10513}
10514impl Name {
10515 #[inline]
10516 pub fn ident_token(&self) -> Option<SyntaxToken> {
10517 support::token(&self.syntax, SyntaxKind::IDENT)
10518 }
10519}
10520
10521#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10522pub struct NameRef {
10523 pub(crate) syntax: SyntaxNode,
10524}
10525impl NameRef {
10526 #[inline]
10527 pub fn ident_token(&self) -> Option<SyntaxToken> {
10528 support::token(&self.syntax, SyntaxKind::IDENT)
10529 }
10530}
10531
10532#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10533pub struct NamedArg {
10534 pub(crate) syntax: SyntaxNode,
10535}
10536impl NamedArg {
10537 #[inline]
10538 pub fn expr(&self) -> Option<Expr> {
10539 support::child(&self.syntax)
10540 }
10541 #[inline]
10542 pub fn fat_arrow(&self) -> Option<FatArrow> {
10543 support::child(&self.syntax)
10544 }
10545 #[inline]
10546 pub fn name_ref(&self) -> Option<NameRef> {
10547 support::child(&self.syntax)
10548 }
10549}
10550
10551#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10552pub struct Neq {
10553 pub(crate) syntax: SyntaxNode,
10554}
10555impl Neq {
10556 #[inline]
10557 pub fn bang_token(&self) -> Option<SyntaxToken> {
10558 support::token(&self.syntax, SyntaxKind::BANG)
10559 }
10560 #[inline]
10561 pub fn eq_token(&self) -> Option<SyntaxToken> {
10562 support::token(&self.syntax, SyntaxKind::EQ)
10563 }
10564}
10565
10566#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10567pub struct Neqb {
10568 pub(crate) syntax: SyntaxNode,
10569}
10570impl Neqb {
10571 #[inline]
10572 pub fn l_angle_token(&self) -> Option<SyntaxToken> {
10573 support::token(&self.syntax, SyntaxKind::L_ANGLE)
10574 }
10575 #[inline]
10576 pub fn r_angle_token(&self) -> Option<SyntaxToken> {
10577 support::token(&self.syntax, SyntaxKind::R_ANGLE)
10578 }
10579}
10580
10581#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10582pub struct NoAction {
10583 pub(crate) syntax: SyntaxNode,
10584}
10585impl NoAction {
10586 #[inline]
10587 pub fn action_token(&self) -> Option<SyntaxToken> {
10588 support::token(&self.syntax, SyntaxKind::ACTION_KW)
10589 }
10590 #[inline]
10591 pub fn no_token(&self) -> Option<SyntaxToken> {
10592 support::token(&self.syntax, SyntaxKind::NO_KW)
10593 }
10594}
10595
10596#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10597pub struct NoDependsOnExtension {
10598 pub(crate) syntax: SyntaxNode,
10599}
10600impl NoDependsOnExtension {
10601 #[inline]
10602 pub fn name_ref(&self) -> Option<NameRef> {
10603 support::child(&self.syntax)
10604 }
10605 #[inline]
10606 pub fn depends_token(&self) -> Option<SyntaxToken> {
10607 support::token(&self.syntax, SyntaxKind::DEPENDS_KW)
10608 }
10609 #[inline]
10610 pub fn extension_token(&self) -> Option<SyntaxToken> {
10611 support::token(&self.syntax, SyntaxKind::EXTENSION_KW)
10612 }
10613 #[inline]
10614 pub fn no_token(&self) -> Option<SyntaxToken> {
10615 support::token(&self.syntax, SyntaxKind::NO_KW)
10616 }
10617 #[inline]
10618 pub fn on_token(&self) -> Option<SyntaxToken> {
10619 support::token(&self.syntax, SyntaxKind::ON_KW)
10620 }
10621}
10622
10623#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10624pub struct NoForceRls {
10625 pub(crate) syntax: SyntaxNode,
10626}
10627impl NoForceRls {
10628 #[inline]
10629 pub fn force_token(&self) -> Option<SyntaxToken> {
10630 support::token(&self.syntax, SyntaxKind::FORCE_KW)
10631 }
10632 #[inline]
10633 pub fn level_token(&self) -> Option<SyntaxToken> {
10634 support::token(&self.syntax, SyntaxKind::LEVEL_KW)
10635 }
10636 #[inline]
10637 pub fn no_token(&self) -> Option<SyntaxToken> {
10638 support::token(&self.syntax, SyntaxKind::NO_KW)
10639 }
10640 #[inline]
10641 pub fn row_token(&self) -> Option<SyntaxToken> {
10642 support::token(&self.syntax, SyntaxKind::ROW_KW)
10643 }
10644 #[inline]
10645 pub fn security_token(&self) -> Option<SyntaxToken> {
10646 support::token(&self.syntax, SyntaxKind::SECURITY_KW)
10647 }
10648}
10649
10650#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10651pub struct NoInherit {
10652 pub(crate) syntax: SyntaxNode,
10653}
10654impl NoInherit {
10655 #[inline]
10656 pub fn path(&self) -> Option<Path> {
10657 support::child(&self.syntax)
10658 }
10659 #[inline]
10660 pub fn inherit_token(&self) -> Option<SyntaxToken> {
10661 support::token(&self.syntax, SyntaxKind::INHERIT_KW)
10662 }
10663 #[inline]
10664 pub fn no_token(&self) -> Option<SyntaxToken> {
10665 support::token(&self.syntax, SyntaxKind::NO_KW)
10666 }
10667}
10668
10669#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10670pub struct NoInheritTable {
10671 pub(crate) syntax: SyntaxNode,
10672}
10673impl NoInheritTable {
10674 #[inline]
10675 pub fn path(&self) -> Option<Path> {
10676 support::child(&self.syntax)
10677 }
10678 #[inline]
10679 pub fn inherit_token(&self) -> Option<SyntaxToken> {
10680 support::token(&self.syntax, SyntaxKind::INHERIT_KW)
10681 }
10682 #[inline]
10683 pub fn no_token(&self) -> Option<SyntaxToken> {
10684 support::token(&self.syntax, SyntaxKind::NO_KW)
10685 }
10686}
10687
10688#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10689pub struct NonStandardParam {
10690 pub(crate) syntax: SyntaxNode,
10691}
10692impl NonStandardParam {
10693 #[inline]
10694 pub fn name_ref(&self) -> Option<NameRef> {
10695 support::child(&self.syntax)
10696 }
10697 #[inline]
10698 pub fn colon_token(&self) -> Option<SyntaxToken> {
10699 support::token(&self.syntax, SyntaxKind::COLON)
10700 }
10701}
10702
10703#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10704pub struct NotDeferrable {
10705 pub(crate) syntax: SyntaxNode,
10706}
10707impl NotDeferrable {
10708 #[inline]
10709 pub fn deferrable_token(&self) -> Option<SyntaxToken> {
10710 support::token(&self.syntax, SyntaxKind::DEFERRABLE_KW)
10711 }
10712 #[inline]
10713 pub fn not_token(&self) -> Option<SyntaxToken> {
10714 support::token(&self.syntax, SyntaxKind::NOT_KW)
10715 }
10716}
10717
10718#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10719pub struct NotDeferrableConstraintOption {
10720 pub(crate) syntax: SyntaxNode,
10721}
10722impl NotDeferrableConstraintOption {
10723 #[inline]
10724 pub fn deferrable_token(&self) -> Option<SyntaxToken> {
10725 support::token(&self.syntax, SyntaxKind::DEFERRABLE_KW)
10726 }
10727 #[inline]
10728 pub fn not_token(&self) -> Option<SyntaxToken> {
10729 support::token(&self.syntax, SyntaxKind::NOT_KW)
10730 }
10731}
10732
10733#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10734pub struct NotEnforced {
10735 pub(crate) syntax: SyntaxNode,
10736}
10737impl NotEnforced {
10738 #[inline]
10739 pub fn enforced_token(&self) -> Option<SyntaxToken> {
10740 support::token(&self.syntax, SyntaxKind::ENFORCED_KW)
10741 }
10742 #[inline]
10743 pub fn not_token(&self) -> Option<SyntaxToken> {
10744 support::token(&self.syntax, SyntaxKind::NOT_KW)
10745 }
10746}
10747
10748#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10749pub struct NotIlike {
10750 pub(crate) syntax: SyntaxNode,
10751}
10752impl NotIlike {
10753 #[inline]
10754 pub fn ilike_token(&self) -> Option<SyntaxToken> {
10755 support::token(&self.syntax, SyntaxKind::ILIKE_KW)
10756 }
10757 #[inline]
10758 pub fn not_token(&self) -> Option<SyntaxToken> {
10759 support::token(&self.syntax, SyntaxKind::NOT_KW)
10760 }
10761}
10762
10763#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10764pub struct NotIn {
10765 pub(crate) syntax: SyntaxNode,
10766}
10767impl NotIn {
10768 #[inline]
10769 pub fn in_token(&self) -> Option<SyntaxToken> {
10770 support::token(&self.syntax, SyntaxKind::IN_KW)
10771 }
10772 #[inline]
10773 pub fn not_token(&self) -> Option<SyntaxToken> {
10774 support::token(&self.syntax, SyntaxKind::NOT_KW)
10775 }
10776}
10777
10778#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10779pub struct NotLike {
10780 pub(crate) syntax: SyntaxNode,
10781}
10782impl NotLike {
10783 #[inline]
10784 pub fn like_token(&self) -> Option<SyntaxToken> {
10785 support::token(&self.syntax, SyntaxKind::LIKE_KW)
10786 }
10787 #[inline]
10788 pub fn not_token(&self) -> Option<SyntaxToken> {
10789 support::token(&self.syntax, SyntaxKind::NOT_KW)
10790 }
10791}
10792
10793#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10794pub struct NotMaterialized {
10795 pub(crate) syntax: SyntaxNode,
10796}
10797impl NotMaterialized {
10798 #[inline]
10799 pub fn materialized_token(&self) -> Option<SyntaxToken> {
10800 support::token(&self.syntax, SyntaxKind::MATERIALIZED_KW)
10801 }
10802 #[inline]
10803 pub fn not_token(&self) -> Option<SyntaxToken> {
10804 support::token(&self.syntax, SyntaxKind::NOT_KW)
10805 }
10806}
10807
10808#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10809pub struct NotNullConstraint {
10810 pub(crate) syntax: SyntaxNode,
10811}
10812impl NotNullConstraint {
10813 #[inline]
10814 pub fn name_ref(&self) -> Option<NameRef> {
10815 support::child(&self.syntax)
10816 }
10817 #[inline]
10818 pub fn no_inherit(&self) -> Option<NoInherit> {
10819 support::child(&self.syntax)
10820 }
10821 #[inline]
10822 pub fn constraint_token(&self) -> Option<SyntaxToken> {
10823 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
10824 }
10825 #[inline]
10826 pub fn not_token(&self) -> Option<SyntaxToken> {
10827 support::token(&self.syntax, SyntaxKind::NOT_KW)
10828 }
10829 #[inline]
10830 pub fn null_token(&self) -> Option<SyntaxToken> {
10831 support::token(&self.syntax, SyntaxKind::NULL_KW)
10832 }
10833}
10834
10835#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10836pub struct NotOf {
10837 pub(crate) syntax: SyntaxNode,
10838}
10839impl NotOf {
10840 #[inline]
10841 pub fn not_token(&self) -> Option<SyntaxToken> {
10842 support::token(&self.syntax, SyntaxKind::NOT_KW)
10843 }
10844 #[inline]
10845 pub fn of_token(&self) -> Option<SyntaxToken> {
10846 support::token(&self.syntax, SyntaxKind::OF_KW)
10847 }
10848}
10849
10850#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10851pub struct NotSimilarTo {
10852 pub(crate) syntax: SyntaxNode,
10853}
10854impl NotSimilarTo {
10855 #[inline]
10856 pub fn not_token(&self) -> Option<SyntaxToken> {
10857 support::token(&self.syntax, SyntaxKind::NOT_KW)
10858 }
10859 #[inline]
10860 pub fn similar_token(&self) -> Option<SyntaxToken> {
10861 support::token(&self.syntax, SyntaxKind::SIMILAR_KW)
10862 }
10863 #[inline]
10864 pub fn to_token(&self) -> Option<SyntaxToken> {
10865 support::token(&self.syntax, SyntaxKind::TO_KW)
10866 }
10867}
10868
10869#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10870pub struct NotValid {
10871 pub(crate) syntax: SyntaxNode,
10872}
10873impl NotValid {
10874 #[inline]
10875 pub fn not_token(&self) -> Option<SyntaxToken> {
10876 support::token(&self.syntax, SyntaxKind::NOT_KW)
10877 }
10878 #[inline]
10879 pub fn valid_token(&self) -> Option<SyntaxToken> {
10880 support::token(&self.syntax, SyntaxKind::VALID_KW)
10881 }
10882}
10883
10884#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10885pub struct Notify {
10886 pub(crate) syntax: SyntaxNode,
10887}
10888impl Notify {
10889 #[inline]
10890 pub fn literal(&self) -> Option<Literal> {
10891 support::child(&self.syntax)
10892 }
10893 #[inline]
10894 pub fn name_ref(&self) -> Option<NameRef> {
10895 support::child(&self.syntax)
10896 }
10897 #[inline]
10898 pub fn comma_token(&self) -> Option<SyntaxToken> {
10899 support::token(&self.syntax, SyntaxKind::COMMA)
10900 }
10901 #[inline]
10902 pub fn notify_token(&self) -> Option<SyntaxToken> {
10903 support::token(&self.syntax, SyntaxKind::NOTIFY_KW)
10904 }
10905}
10906
10907#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10908pub struct NullConstraint {
10909 pub(crate) syntax: SyntaxNode,
10910}
10911impl NullConstraint {
10912 #[inline]
10913 pub fn name_ref(&self) -> Option<NameRef> {
10914 support::child(&self.syntax)
10915 }
10916 #[inline]
10917 pub fn constraint_token(&self) -> Option<SyntaxToken> {
10918 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
10919 }
10920 #[inline]
10921 pub fn null_token(&self) -> Option<SyntaxToken> {
10922 support::token(&self.syntax, SyntaxKind::NULL_KW)
10923 }
10924}
10925
10926#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10927pub struct NullsDistinct {
10928 pub(crate) syntax: SyntaxNode,
10929}
10930impl NullsDistinct {
10931 #[inline]
10932 pub fn distinct_token(&self) -> Option<SyntaxToken> {
10933 support::token(&self.syntax, SyntaxKind::DISTINCT_KW)
10934 }
10935 #[inline]
10936 pub fn nulls_token(&self) -> Option<SyntaxToken> {
10937 support::token(&self.syntax, SyntaxKind::NULLS_KW)
10938 }
10939}
10940
10941#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10942pub struct NullsFirst {
10943 pub(crate) syntax: SyntaxNode,
10944}
10945impl NullsFirst {
10946 #[inline]
10947 pub fn first_token(&self) -> Option<SyntaxToken> {
10948 support::token(&self.syntax, SyntaxKind::FIRST_KW)
10949 }
10950 #[inline]
10951 pub fn nulls_token(&self) -> Option<SyntaxToken> {
10952 support::token(&self.syntax, SyntaxKind::NULLS_KW)
10953 }
10954}
10955
10956#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10957pub struct NullsLast {
10958 pub(crate) syntax: SyntaxNode,
10959}
10960impl NullsLast {
10961 #[inline]
10962 pub fn last_token(&self) -> Option<SyntaxToken> {
10963 support::token(&self.syntax, SyntaxKind::LAST_KW)
10964 }
10965 #[inline]
10966 pub fn nulls_token(&self) -> Option<SyntaxToken> {
10967 support::token(&self.syntax, SyntaxKind::NULLS_KW)
10968 }
10969}
10970
10971#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10972pub struct NullsNotDistinct {
10973 pub(crate) syntax: SyntaxNode,
10974}
10975impl NullsNotDistinct {
10976 #[inline]
10977 pub fn distinct_token(&self) -> Option<SyntaxToken> {
10978 support::token(&self.syntax, SyntaxKind::DISTINCT_KW)
10979 }
10980 #[inline]
10981 pub fn not_token(&self) -> Option<SyntaxToken> {
10982 support::token(&self.syntax, SyntaxKind::NOT_KW)
10983 }
10984 #[inline]
10985 pub fn nulls_token(&self) -> Option<SyntaxToken> {
10986 support::token(&self.syntax, SyntaxKind::NULLS_KW)
10987 }
10988}
10989
10990#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10991pub struct OfType {
10992 pub(crate) syntax: SyntaxNode,
10993}
10994impl OfType {
10995 #[inline]
10996 pub fn ty(&self) -> Option<Type> {
10997 support::child(&self.syntax)
10998 }
10999 #[inline]
11000 pub fn of_token(&self) -> Option<SyntaxToken> {
11001 support::token(&self.syntax, SyntaxKind::OF_KW)
11002 }
11003}
11004
11005#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11006pub struct OffsetClause {
11007 pub(crate) syntax: SyntaxNode,
11008}
11009impl OffsetClause {
11010 #[inline]
11011 pub fn expr(&self) -> Option<Expr> {
11012 support::child(&self.syntax)
11013 }
11014 #[inline]
11015 pub fn offset_token(&self) -> Option<SyntaxToken> {
11016 support::token(&self.syntax, SyntaxKind::OFFSET_KW)
11017 }
11018 #[inline]
11019 pub fn row_token(&self) -> Option<SyntaxToken> {
11020 support::token(&self.syntax, SyntaxKind::ROW_KW)
11021 }
11022 #[inline]
11023 pub fn rows_token(&self) -> Option<SyntaxToken> {
11024 support::token(&self.syntax, SyntaxKind::ROWS_KW)
11025 }
11026}
11027
11028#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11029pub struct OnClause {
11030 pub(crate) syntax: SyntaxNode,
11031}
11032impl OnClause {
11033 #[inline]
11034 pub fn expr(&self) -> Option<Expr> {
11035 support::child(&self.syntax)
11036 }
11037 #[inline]
11038 pub fn on_token(&self) -> Option<SyntaxToken> {
11039 support::token(&self.syntax, SyntaxKind::ON_KW)
11040 }
11041}
11042
11043#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11044pub struct OnCommit {
11045 pub(crate) syntax: SyntaxNode,
11046}
11047impl OnCommit {
11048 #[inline]
11049 pub fn on_commit_action(&self) -> Option<OnCommitAction> {
11050 support::child(&self.syntax)
11051 }
11052 #[inline]
11053 pub fn commit_token(&self) -> Option<SyntaxToken> {
11054 support::token(&self.syntax, SyntaxKind::COMMIT_KW)
11055 }
11056 #[inline]
11057 pub fn on_token(&self) -> Option<SyntaxToken> {
11058 support::token(&self.syntax, SyntaxKind::ON_KW)
11059 }
11060}
11061
11062#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11063pub struct OnConflictClause {
11064 pub(crate) syntax: SyntaxNode,
11065}
11066impl OnConflictClause {
11067 #[inline]
11068 pub fn conflict_action(&self) -> Option<ConflictAction> {
11069 support::child(&self.syntax)
11070 }
11071 #[inline]
11072 pub fn conflict_target(&self) -> Option<ConflictTarget> {
11073 support::child(&self.syntax)
11074 }
11075 #[inline]
11076 pub fn conflict_token(&self) -> Option<SyntaxToken> {
11077 support::token(&self.syntax, SyntaxKind::CONFLICT_KW)
11078 }
11079 #[inline]
11080 pub fn on_token(&self) -> Option<SyntaxToken> {
11081 support::token(&self.syntax, SyntaxKind::ON_KW)
11082 }
11083}
11084
11085#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11086pub struct OnDeleteAction {
11087 pub(crate) syntax: SyntaxNode,
11088}
11089impl OnDeleteAction {
11090 #[inline]
11091 pub fn ref_action(&self) -> Option<RefAction> {
11092 support::child(&self.syntax)
11093 }
11094 #[inline]
11095 pub fn delete_token(&self) -> Option<SyntaxToken> {
11096 support::token(&self.syntax, SyntaxKind::DELETE_KW)
11097 }
11098 #[inline]
11099 pub fn on_token(&self) -> Option<SyntaxToken> {
11100 support::token(&self.syntax, SyntaxKind::ON_KW)
11101 }
11102}
11103
11104#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11105pub struct OnTable {
11106 pub(crate) syntax: SyntaxNode,
11107}
11108impl OnTable {
11109 #[inline]
11110 pub fn path(&self) -> Option<Path> {
11111 support::child(&self.syntax)
11112 }
11113 #[inline]
11114 pub fn on_token(&self) -> Option<SyntaxToken> {
11115 support::token(&self.syntax, SyntaxKind::ON_KW)
11116 }
11117}
11118
11119#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11120pub struct OnUpdateAction {
11121 pub(crate) syntax: SyntaxNode,
11122}
11123impl OnUpdateAction {
11124 #[inline]
11125 pub fn ref_action(&self) -> Option<RefAction> {
11126 support::child(&self.syntax)
11127 }
11128 #[inline]
11129 pub fn on_token(&self) -> Option<SyntaxToken> {
11130 support::token(&self.syntax, SyntaxKind::ON_KW)
11131 }
11132 #[inline]
11133 pub fn update_token(&self) -> Option<SyntaxToken> {
11134 support::token(&self.syntax, SyntaxKind::UPDATE_KW)
11135 }
11136}
11137
11138#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11139pub struct Op {
11140 pub(crate) syntax: SyntaxNode,
11141}
11142impl Op {
11143 #[inline]
11144 pub fn at_time_zone(&self) -> Option<AtTimeZone> {
11145 support::child(&self.syntax)
11146 }
11147 #[inline]
11148 pub fn colon_colon(&self) -> Option<ColonColon> {
11149 support::child(&self.syntax)
11150 }
11151 #[inline]
11152 pub fn colon_eq(&self) -> Option<ColonEq> {
11153 support::child(&self.syntax)
11154 }
11155 #[inline]
11156 pub fn custom_op(&self) -> Option<CustomOp> {
11157 support::child(&self.syntax)
11158 }
11159 #[inline]
11160 pub fn fat_arrow(&self) -> Option<FatArrow> {
11161 support::child(&self.syntax)
11162 }
11163 #[inline]
11164 pub fn gteq(&self) -> Option<Gteq> {
11165 support::child(&self.syntax)
11166 }
11167 #[inline]
11168 pub fn is_distinct_from(&self) -> Option<IsDistinctFrom> {
11169 support::child(&self.syntax)
11170 }
11171 #[inline]
11172 pub fn is_json(&self) -> Option<IsJson> {
11173 support::child(&self.syntax)
11174 }
11175 #[inline]
11176 pub fn is_json_array(&self) -> Option<IsJsonArray> {
11177 support::child(&self.syntax)
11178 }
11179 #[inline]
11180 pub fn is_json_object(&self) -> Option<IsJsonObject> {
11181 support::child(&self.syntax)
11182 }
11183 #[inline]
11184 pub fn is_json_scalar(&self) -> Option<IsJsonScalar> {
11185 support::child(&self.syntax)
11186 }
11187 #[inline]
11188 pub fn is_json_value(&self) -> Option<IsJsonValue> {
11189 support::child(&self.syntax)
11190 }
11191 #[inline]
11192 pub fn is_not(&self) -> Option<IsNot> {
11193 support::child(&self.syntax)
11194 }
11195 #[inline]
11196 pub fn is_not_distinct_from(&self) -> Option<IsNotDistinctFrom> {
11197 support::child(&self.syntax)
11198 }
11199 #[inline]
11200 pub fn is_not_json(&self) -> Option<IsNotJson> {
11201 support::child(&self.syntax)
11202 }
11203 #[inline]
11204 pub fn is_not_json_array(&self) -> Option<IsNotJsonArray> {
11205 support::child(&self.syntax)
11206 }
11207 #[inline]
11208 pub fn is_not_json_scalar(&self) -> Option<IsNotJsonScalar> {
11209 support::child(&self.syntax)
11210 }
11211 #[inline]
11212 pub fn is_not_json_value(&self) -> Option<IsNotJsonValue> {
11213 support::child(&self.syntax)
11214 }
11215 #[inline]
11216 pub fn lteq(&self) -> Option<Lteq> {
11217 support::child(&self.syntax)
11218 }
11219 #[inline]
11220 pub fn neq(&self) -> Option<Neq> {
11221 support::child(&self.syntax)
11222 }
11223 #[inline]
11224 pub fn neqb(&self) -> Option<Neqb> {
11225 support::child(&self.syntax)
11226 }
11227 #[inline]
11228 pub fn not_ilike(&self) -> Option<NotIlike> {
11229 support::child(&self.syntax)
11230 }
11231 #[inline]
11232 pub fn not_in(&self) -> Option<NotIn> {
11233 support::child(&self.syntax)
11234 }
11235 #[inline]
11236 pub fn not_like(&self) -> Option<NotLike> {
11237 support::child(&self.syntax)
11238 }
11239 #[inline]
11240 pub fn not_similar_to(&self) -> Option<NotSimilarTo> {
11241 support::child(&self.syntax)
11242 }
11243 #[inline]
11244 pub fn operator_call(&self) -> Option<OperatorCall> {
11245 support::child(&self.syntax)
11246 }
11247 #[inline]
11248 pub fn similar_to(&self) -> Option<SimilarTo> {
11249 support::child(&self.syntax)
11250 }
11251 #[inline]
11252 pub fn percent_token(&self) -> Option<SyntaxToken> {
11253 support::token(&self.syntax, SyntaxKind::PERCENT)
11254 }
11255 #[inline]
11256 pub fn plus_token(&self) -> Option<SyntaxToken> {
11257 support::token(&self.syntax, SyntaxKind::PLUS)
11258 }
11259 #[inline]
11260 pub fn minus_token(&self) -> Option<SyntaxToken> {
11261 support::token(&self.syntax, SyntaxKind::MINUS)
11262 }
11263 #[inline]
11264 pub fn slash_token(&self) -> Option<SyntaxToken> {
11265 support::token(&self.syntax, SyntaxKind::SLASH)
11266 }
11267 #[inline]
11268 pub fn colon_token(&self) -> Option<SyntaxToken> {
11269 support::token(&self.syntax, SyntaxKind::COLON)
11270 }
11271 #[inline]
11272 pub fn l_angle_token(&self) -> Option<SyntaxToken> {
11273 support::token(&self.syntax, SyntaxKind::L_ANGLE)
11274 }
11275 #[inline]
11276 pub fn eq_token(&self) -> Option<SyntaxToken> {
11277 support::token(&self.syntax, SyntaxKind::EQ)
11278 }
11279 #[inline]
11280 pub fn r_angle_token(&self) -> Option<SyntaxToken> {
11281 support::token(&self.syntax, SyntaxKind::R_ANGLE)
11282 }
11283 #[inline]
11284 pub fn caret_token(&self) -> Option<SyntaxToken> {
11285 support::token(&self.syntax, SyntaxKind::CARET)
11286 }
11287 #[inline]
11288 pub fn and_token(&self) -> Option<SyntaxToken> {
11289 support::token(&self.syntax, SyntaxKind::AND_KW)
11290 }
11291 #[inline]
11292 pub fn collate_token(&self) -> Option<SyntaxToken> {
11293 support::token(&self.syntax, SyntaxKind::COLLATE_KW)
11294 }
11295 #[inline]
11296 pub fn ilike_token(&self) -> Option<SyntaxToken> {
11297 support::token(&self.syntax, SyntaxKind::ILIKE_KW)
11298 }
11299 #[inline]
11300 pub fn in_token(&self) -> Option<SyntaxToken> {
11301 support::token(&self.syntax, SyntaxKind::IN_KW)
11302 }
11303 #[inline]
11304 pub fn is_token(&self) -> Option<SyntaxToken> {
11305 support::token(&self.syntax, SyntaxKind::IS_KW)
11306 }
11307 #[inline]
11308 pub fn like_token(&self) -> Option<SyntaxToken> {
11309 support::token(&self.syntax, SyntaxKind::LIKE_KW)
11310 }
11311 #[inline]
11312 pub fn or_token(&self) -> Option<SyntaxToken> {
11313 support::token(&self.syntax, SyntaxKind::OR_KW)
11314 }
11315 #[inline]
11316 pub fn overlaps_token(&self) -> Option<SyntaxToken> {
11317 support::token(&self.syntax, SyntaxKind::OVERLAPS_KW)
11318 }
11319 #[inline]
11320 pub fn value_token(&self) -> Option<SyntaxToken> {
11321 support::token(&self.syntax, SyntaxKind::VALUE_KW)
11322 }
11323}
11324
11325#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11326pub struct OpClassOption {
11327 pub(crate) syntax: SyntaxNode,
11328}
11329impl OpClassOption {
11330 #[inline]
11331 pub fn function_sig(&self) -> Option<FunctionSig> {
11332 support::child(&self.syntax)
11333 }
11334 #[inline]
11335 pub fn literal(&self) -> Option<Literal> {
11336 support::child(&self.syntax)
11337 }
11338 #[inline]
11339 pub fn op(&self) -> Option<Op> {
11340 support::child(&self.syntax)
11341 }
11342 #[inline]
11343 pub fn param_list(&self) -> Option<ParamList> {
11344 support::child(&self.syntax)
11345 }
11346 #[inline]
11347 pub fn path(&self) -> Option<Path> {
11348 support::child(&self.syntax)
11349 }
11350 #[inline]
11351 pub fn ty(&self) -> Option<Type> {
11352 support::child(&self.syntax)
11353 }
11354 #[inline]
11355 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
11356 support::token(&self.syntax, SyntaxKind::L_PAREN)
11357 }
11358 #[inline]
11359 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
11360 support::token(&self.syntax, SyntaxKind::R_PAREN)
11361 }
11362 #[inline]
11363 pub fn comma_token(&self) -> Option<SyntaxToken> {
11364 support::token(&self.syntax, SyntaxKind::COMMA)
11365 }
11366 #[inline]
11367 pub fn by_token(&self) -> Option<SyntaxToken> {
11368 support::token(&self.syntax, SyntaxKind::BY_KW)
11369 }
11370 #[inline]
11371 pub fn for_token(&self) -> Option<SyntaxToken> {
11372 support::token(&self.syntax, SyntaxKind::FOR_KW)
11373 }
11374 #[inline]
11375 pub fn function_token(&self) -> Option<SyntaxToken> {
11376 support::token(&self.syntax, SyntaxKind::FUNCTION_KW)
11377 }
11378 #[inline]
11379 pub fn operator_token(&self) -> Option<SyntaxToken> {
11380 support::token(&self.syntax, SyntaxKind::OPERATOR_KW)
11381 }
11382 #[inline]
11383 pub fn order_token(&self) -> Option<SyntaxToken> {
11384 support::token(&self.syntax, SyntaxKind::ORDER_KW)
11385 }
11386 #[inline]
11387 pub fn search_token(&self) -> Option<SyntaxToken> {
11388 support::token(&self.syntax, SyntaxKind::SEARCH_KW)
11389 }
11390 #[inline]
11391 pub fn storage_token(&self) -> Option<SyntaxToken> {
11392 support::token(&self.syntax, SyntaxKind::STORAGE_KW)
11393 }
11394}
11395
11396#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11397pub struct OpSig {
11398 pub(crate) syntax: SyntaxNode,
11399}
11400impl OpSig {
11401 #[inline]
11402 pub fn op(&self) -> Option<Op> {
11403 support::child(&self.syntax)
11404 }
11405 #[inline]
11406 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
11407 support::token(&self.syntax, SyntaxKind::L_PAREN)
11408 }
11409 #[inline]
11410 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
11411 support::token(&self.syntax, SyntaxKind::R_PAREN)
11412 }
11413 #[inline]
11414 pub fn comma_token(&self) -> Option<SyntaxToken> {
11415 support::token(&self.syntax, SyntaxKind::COMMA)
11416 }
11417 #[inline]
11418 pub fn none_token(&self) -> Option<SyntaxToken> {
11419 support::token(&self.syntax, SyntaxKind::NONE_KW)
11420 }
11421}
11422
11423#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11424pub struct OpSigList {
11425 pub(crate) syntax: SyntaxNode,
11426}
11427impl OpSigList {
11428 #[inline]
11429 pub fn op_sigs(&self) -> AstChildren<OpSig> {
11430 support::children(&self.syntax)
11431 }
11432}
11433
11434#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11435pub struct OperatorCall {
11436 pub(crate) syntax: SyntaxNode,
11437}
11438impl OperatorCall {
11439 #[inline]
11440 pub fn op(&self) -> Option<Op> {
11441 support::child(&self.syntax)
11442 }
11443 #[inline]
11444 pub fn path(&self) -> Option<Path> {
11445 support::child(&self.syntax)
11446 }
11447 #[inline]
11448 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
11449 support::token(&self.syntax, SyntaxKind::L_PAREN)
11450 }
11451 #[inline]
11452 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
11453 support::token(&self.syntax, SyntaxKind::R_PAREN)
11454 }
11455 #[inline]
11456 pub fn dot_token(&self) -> Option<SyntaxToken> {
11457 support::token(&self.syntax, SyntaxKind::DOT)
11458 }
11459 #[inline]
11460 pub fn operator_token(&self) -> Option<SyntaxToken> {
11461 support::token(&self.syntax, SyntaxKind::OPERATOR_KW)
11462 }
11463}
11464
11465#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11466pub struct OperatorClassOptionList {
11467 pub(crate) syntax: SyntaxNode,
11468}
11469impl OperatorClassOptionList {
11470 #[inline]
11471 pub fn op_class_options(&self) -> AstChildren<OpClassOption> {
11472 support::children(&self.syntax)
11473 }
11474}
11475
11476#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11477pub struct OptionItem {
11478 pub(crate) syntax: SyntaxNode,
11479}
11480impl OptionItem {
11481 #[inline]
11482 pub fn expr(&self) -> Option<Expr> {
11483 support::child(&self.syntax)
11484 }
11485 #[inline]
11486 pub fn default_token(&self) -> Option<SyntaxToken> {
11487 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
11488 }
11489}
11490
11491#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11492pub struct OptionItemList {
11493 pub(crate) syntax: SyntaxNode,
11494}
11495impl OptionItemList {
11496 #[inline]
11497 pub fn option_items(&self) -> AstChildren<OptionItem> {
11498 support::children(&self.syntax)
11499 }
11500 #[inline]
11501 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
11502 support::token(&self.syntax, SyntaxKind::L_PAREN)
11503 }
11504 #[inline]
11505 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
11506 support::token(&self.syntax, SyntaxKind::R_PAREN)
11507 }
11508}
11509
11510#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11511pub struct OrReplace {
11512 pub(crate) syntax: SyntaxNode,
11513}
11514impl OrReplace {
11515 #[inline]
11516 pub fn or_token(&self) -> Option<SyntaxToken> {
11517 support::token(&self.syntax, SyntaxKind::OR_KW)
11518 }
11519 #[inline]
11520 pub fn replace_token(&self) -> Option<SyntaxToken> {
11521 support::token(&self.syntax, SyntaxKind::REPLACE_KW)
11522 }
11523}
11524
11525#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11526pub struct OrderByClause {
11527 pub(crate) syntax: SyntaxNode,
11528}
11529impl OrderByClause {
11530 #[inline]
11531 pub fn sort_by_list(&self) -> Option<SortByList> {
11532 support::child(&self.syntax)
11533 }
11534 #[inline]
11535 pub fn by_token(&self) -> Option<SyntaxToken> {
11536 support::token(&self.syntax, SyntaxKind::BY_KW)
11537 }
11538 #[inline]
11539 pub fn order_token(&self) -> Option<SyntaxToken> {
11540 support::token(&self.syntax, SyntaxKind::ORDER_KW)
11541 }
11542}
11543
11544#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11545pub struct OverClause {
11546 pub(crate) syntax: SyntaxNode,
11547}
11548impl OverClause {
11549 #[inline]
11550 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
11551 support::token(&self.syntax, SyntaxKind::L_PAREN)
11552 }
11553 #[inline]
11554 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
11555 support::token(&self.syntax, SyntaxKind::R_PAREN)
11556 }
11557 #[inline]
11558 pub fn over_token(&self) -> Option<SyntaxToken> {
11559 support::token(&self.syntax, SyntaxKind::OVER_KW)
11560 }
11561}
11562
11563#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11564pub struct OverlayFn {
11565 pub(crate) syntax: SyntaxNode,
11566}
11567impl OverlayFn {
11568 #[inline]
11569 pub fn expr(&self) -> Option<Expr> {
11570 support::child(&self.syntax)
11571 }
11572 #[inline]
11573 pub fn exprs(&self) -> AstChildren<Expr> {
11574 support::children(&self.syntax)
11575 }
11576 #[inline]
11577 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
11578 support::token(&self.syntax, SyntaxKind::L_PAREN)
11579 }
11580 #[inline]
11581 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
11582 support::token(&self.syntax, SyntaxKind::R_PAREN)
11583 }
11584 #[inline]
11585 pub fn for_token(&self) -> Option<SyntaxToken> {
11586 support::token(&self.syntax, SyntaxKind::FOR_KW)
11587 }
11588 #[inline]
11589 pub fn from_token(&self) -> Option<SyntaxToken> {
11590 support::token(&self.syntax, SyntaxKind::FROM_KW)
11591 }
11592 #[inline]
11593 pub fn overlay_token(&self) -> Option<SyntaxToken> {
11594 support::token(&self.syntax, SyntaxKind::OVERLAY_KW)
11595 }
11596 #[inline]
11597 pub fn placing_token(&self) -> Option<SyntaxToken> {
11598 support::token(&self.syntax, SyntaxKind::PLACING_KW)
11599 }
11600}
11601
11602#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11603pub struct OwnerTo {
11604 pub(crate) syntax: SyntaxNode,
11605}
11606impl OwnerTo {
11607 #[inline]
11608 pub fn role(&self) -> Option<Role> {
11609 support::child(&self.syntax)
11610 }
11611 #[inline]
11612 pub fn owner_token(&self) -> Option<SyntaxToken> {
11613 support::token(&self.syntax, SyntaxKind::OWNER_KW)
11614 }
11615 #[inline]
11616 pub fn to_token(&self) -> Option<SyntaxToken> {
11617 support::token(&self.syntax, SyntaxKind::TO_KW)
11618 }
11619}
11620
11621#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11622pub struct ParallelFuncOption {
11623 pub(crate) syntax: SyntaxNode,
11624}
11625impl ParallelFuncOption {
11626 #[inline]
11627 pub fn ident_token(&self) -> Option<SyntaxToken> {
11628 support::token(&self.syntax, SyntaxKind::IDENT)
11629 }
11630 #[inline]
11631 pub fn parallel_token(&self) -> Option<SyntaxToken> {
11632 support::token(&self.syntax, SyntaxKind::PARALLEL_KW)
11633 }
11634}
11635
11636#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11637pub struct Param {
11638 pub(crate) syntax: SyntaxNode,
11639}
11640impl Param {
11641 #[inline]
11642 pub fn mode(&self) -> Option<ParamMode> {
11643 support::child(&self.syntax)
11644 }
11645 #[inline]
11646 pub fn name(&self) -> Option<Name> {
11647 support::child(&self.syntax)
11648 }
11649 #[inline]
11650 pub fn param_default(&self) -> Option<ParamDefault> {
11651 support::child(&self.syntax)
11652 }
11653 #[inline]
11654 pub fn ty(&self) -> Option<Type> {
11655 support::child(&self.syntax)
11656 }
11657}
11658
11659#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11660pub struct ParamDefault {
11661 pub(crate) syntax: SyntaxNode,
11662}
11663impl ParamDefault {
11664 #[inline]
11665 pub fn expr(&self) -> Option<Expr> {
11666 support::child(&self.syntax)
11667 }
11668 #[inline]
11669 pub fn eq_token(&self) -> Option<SyntaxToken> {
11670 support::token(&self.syntax, SyntaxKind::EQ)
11671 }
11672 #[inline]
11673 pub fn default_token(&self) -> Option<SyntaxToken> {
11674 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
11675 }
11676}
11677
11678#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11679pub struct ParamIn {
11680 pub(crate) syntax: SyntaxNode,
11681}
11682impl ParamIn {
11683 #[inline]
11684 pub fn in_token(&self) -> Option<SyntaxToken> {
11685 support::token(&self.syntax, SyntaxKind::IN_KW)
11686 }
11687}
11688
11689#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11690pub struct ParamInOut {
11691 pub(crate) syntax: SyntaxNode,
11692}
11693impl ParamInOut {
11694 #[inline]
11695 pub fn in_token(&self) -> Option<SyntaxToken> {
11696 support::token(&self.syntax, SyntaxKind::IN_KW)
11697 }
11698 #[inline]
11699 pub fn inout_token(&self) -> Option<SyntaxToken> {
11700 support::token(&self.syntax, SyntaxKind::INOUT_KW)
11701 }
11702 #[inline]
11703 pub fn out_token(&self) -> Option<SyntaxToken> {
11704 support::token(&self.syntax, SyntaxKind::OUT_KW)
11705 }
11706}
11707
11708#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11709pub struct ParamList {
11710 pub(crate) syntax: SyntaxNode,
11711}
11712impl ParamList {
11713 #[inline]
11714 pub fn params(&self) -> AstChildren<Param> {
11715 support::children(&self.syntax)
11716 }
11717}
11718
11719#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11720pub struct ParamOut {
11721 pub(crate) syntax: SyntaxNode,
11722}
11723impl ParamOut {
11724 #[inline]
11725 pub fn out_token(&self) -> Option<SyntaxToken> {
11726 support::token(&self.syntax, SyntaxKind::OUT_KW)
11727 }
11728}
11729
11730#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11731pub struct ParamVariadic {
11732 pub(crate) syntax: SyntaxNode,
11733}
11734impl ParamVariadic {
11735 #[inline]
11736 pub fn variadic_token(&self) -> Option<SyntaxToken> {
11737 support::token(&self.syntax, SyntaxKind::VARIADIC_KW)
11738 }
11739}
11740
11741#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11742pub struct ParenExpr {
11743 pub(crate) syntax: SyntaxNode,
11744}
11745impl ParenExpr {
11746 #[inline]
11747 pub fn expr(&self) -> Option<Expr> {
11748 support::child(&self.syntax)
11749 }
11750 #[inline]
11751 pub fn from_item(&self) -> Option<FromItem> {
11752 support::child(&self.syntax)
11753 }
11754 #[inline]
11755 pub fn select(&self) -> Option<Select> {
11756 support::child(&self.syntax)
11757 }
11758 #[inline]
11759 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
11760 support::token(&self.syntax, SyntaxKind::L_PAREN)
11761 }
11762 #[inline]
11763 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
11764 support::token(&self.syntax, SyntaxKind::R_PAREN)
11765 }
11766}
11767
11768#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11769pub struct ParenSelect {
11770 pub(crate) syntax: SyntaxNode,
11771}
11772impl ParenSelect {
11773 #[inline]
11774 pub fn select(&self) -> Option<SelectVariant> {
11775 support::child(&self.syntax)
11776 }
11777 #[inline]
11778 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
11779 support::token(&self.syntax, SyntaxKind::L_PAREN)
11780 }
11781 #[inline]
11782 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
11783 support::token(&self.syntax, SyntaxKind::R_PAREN)
11784 }
11785}
11786
11787#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11788pub struct Partition {
11789 pub(crate) syntax: SyntaxNode,
11790}
11791impl Partition {
11792 #[inline]
11793 pub fn partition_type(&self) -> Option<PartitionType> {
11794 support::child(&self.syntax)
11795 }
11796 #[inline]
11797 pub fn path(&self) -> Option<Path> {
11798 support::child(&self.syntax)
11799 }
11800 #[inline]
11801 pub fn partition_token(&self) -> Option<SyntaxToken> {
11802 support::token(&self.syntax, SyntaxKind::PARTITION_KW)
11803 }
11804}
11805
11806#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11807pub struct PartitionBy {
11808 pub(crate) syntax: SyntaxNode,
11809}
11810impl PartitionBy {
11811 #[inline]
11812 pub fn partition_item_list(&self) -> Option<PartitionItemList> {
11813 support::child(&self.syntax)
11814 }
11815 #[inline]
11816 pub fn by_token(&self) -> Option<SyntaxToken> {
11817 support::token(&self.syntax, SyntaxKind::BY_KW)
11818 }
11819 #[inline]
11820 pub fn ident_token(&self) -> Option<SyntaxToken> {
11821 support::token(&self.syntax, SyntaxKind::IDENT)
11822 }
11823 #[inline]
11824 pub fn partition_token(&self) -> Option<SyntaxToken> {
11825 support::token(&self.syntax, SyntaxKind::PARTITION_KW)
11826 }
11827 #[inline]
11828 pub fn range_token(&self) -> Option<SyntaxToken> {
11829 support::token(&self.syntax, SyntaxKind::RANGE_KW)
11830 }
11831}
11832
11833#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11834pub struct PartitionDefault {
11835 pub(crate) syntax: SyntaxNode,
11836}
11837impl PartitionDefault {
11838 #[inline]
11839 pub fn default_token(&self) -> Option<SyntaxToken> {
11840 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
11841 }
11842}
11843
11844#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11845pub struct PartitionForValuesFrom {
11846 pub(crate) syntax: SyntaxNode,
11847}
11848impl PartitionForValuesFrom {
11849 #[inline]
11850 pub fn exprs(&self) -> AstChildren<Expr> {
11851 support::children(&self.syntax)
11852 }
11853 #[inline]
11854 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
11855 support::token(&self.syntax, SyntaxKind::L_PAREN)
11856 }
11857 #[inline]
11858 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
11859 support::token(&self.syntax, SyntaxKind::R_PAREN)
11860 }
11861 #[inline]
11862 pub fn for_token(&self) -> Option<SyntaxToken> {
11863 support::token(&self.syntax, SyntaxKind::FOR_KW)
11864 }
11865 #[inline]
11866 pub fn from_token(&self) -> Option<SyntaxToken> {
11867 support::token(&self.syntax, SyntaxKind::FROM_KW)
11868 }
11869 #[inline]
11870 pub fn to_token(&self) -> Option<SyntaxToken> {
11871 support::token(&self.syntax, SyntaxKind::TO_KW)
11872 }
11873 #[inline]
11874 pub fn values_token(&self) -> Option<SyntaxToken> {
11875 support::token(&self.syntax, SyntaxKind::VALUES_KW)
11876 }
11877}
11878
11879#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11880pub struct PartitionForValuesIn {
11881 pub(crate) syntax: SyntaxNode,
11882}
11883impl PartitionForValuesIn {
11884 #[inline]
11885 pub fn exprs(&self) -> AstChildren<Expr> {
11886 support::children(&self.syntax)
11887 }
11888 #[inline]
11889 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
11890 support::token(&self.syntax, SyntaxKind::L_PAREN)
11891 }
11892 #[inline]
11893 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
11894 support::token(&self.syntax, SyntaxKind::R_PAREN)
11895 }
11896 #[inline]
11897 pub fn for_token(&self) -> Option<SyntaxToken> {
11898 support::token(&self.syntax, SyntaxKind::FOR_KW)
11899 }
11900 #[inline]
11901 pub fn in_token(&self) -> Option<SyntaxToken> {
11902 support::token(&self.syntax, SyntaxKind::IN_KW)
11903 }
11904 #[inline]
11905 pub fn values_token(&self) -> Option<SyntaxToken> {
11906 support::token(&self.syntax, SyntaxKind::VALUES_KW)
11907 }
11908}
11909
11910#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11911pub struct PartitionForValuesWith {
11912 pub(crate) syntax: SyntaxNode,
11913}
11914impl PartitionForValuesWith {
11915 #[inline]
11916 pub fn literal(&self) -> Option<Literal> {
11917 support::child(&self.syntax)
11918 }
11919 #[inline]
11920 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
11921 support::token(&self.syntax, SyntaxKind::L_PAREN)
11922 }
11923 #[inline]
11924 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
11925 support::token(&self.syntax, SyntaxKind::R_PAREN)
11926 }
11927 #[inline]
11928 pub fn comma_token(&self) -> Option<SyntaxToken> {
11929 support::token(&self.syntax, SyntaxKind::COMMA)
11930 }
11931 #[inline]
11932 pub fn for_token(&self) -> Option<SyntaxToken> {
11933 support::token(&self.syntax, SyntaxKind::FOR_KW)
11934 }
11935 #[inline]
11936 pub fn ident_token(&self) -> Option<SyntaxToken> {
11937 support::token(&self.syntax, SyntaxKind::IDENT)
11938 }
11939 #[inline]
11940 pub fn values_token(&self) -> Option<SyntaxToken> {
11941 support::token(&self.syntax, SyntaxKind::VALUES_KW)
11942 }
11943 #[inline]
11944 pub fn with_token(&self) -> Option<SyntaxToken> {
11945 support::token(&self.syntax, SyntaxKind::WITH_KW)
11946 }
11947}
11948
11949#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11950pub struct PartitionItem {
11951 pub(crate) syntax: SyntaxNode,
11952}
11953impl PartitionItem {
11954 #[inline]
11955 pub fn collate(&self) -> Option<Collate> {
11956 support::child(&self.syntax)
11957 }
11958 #[inline]
11959 pub fn expr(&self) -> Option<Expr> {
11960 support::child(&self.syntax)
11961 }
11962}
11963
11964#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11965pub struct PartitionItemList {
11966 pub(crate) syntax: SyntaxNode,
11967}
11968impl PartitionItemList {
11969 #[inline]
11970 pub fn partition_items(&self) -> AstChildren<PartitionItem> {
11971 support::children(&self.syntax)
11972 }
11973 #[inline]
11974 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
11975 support::token(&self.syntax, SyntaxKind::L_PAREN)
11976 }
11977 #[inline]
11978 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
11979 support::token(&self.syntax, SyntaxKind::R_PAREN)
11980 }
11981}
11982
11983#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11984pub struct PartitionList {
11985 pub(crate) syntax: SyntaxNode,
11986}
11987impl PartitionList {
11988 #[inline]
11989 pub fn partitions(&self) -> AstChildren<Partition> {
11990 support::children(&self.syntax)
11991 }
11992 #[inline]
11993 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
11994 support::token(&self.syntax, SyntaxKind::L_PAREN)
11995 }
11996 #[inline]
11997 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
11998 support::token(&self.syntax, SyntaxKind::R_PAREN)
11999 }
12000}
12001
12002#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12003pub struct PartitionOf {
12004 pub(crate) syntax: SyntaxNode,
12005}
12006impl PartitionOf {
12007 #[inline]
12008 pub fn ty(&self) -> Option<Type> {
12009 support::child(&self.syntax)
12010 }
12011 #[inline]
12012 pub fn of_token(&self) -> Option<SyntaxToken> {
12013 support::token(&self.syntax, SyntaxKind::OF_KW)
12014 }
12015 #[inline]
12016 pub fn partition_token(&self) -> Option<SyntaxToken> {
12017 support::token(&self.syntax, SyntaxKind::PARTITION_KW)
12018 }
12019}
12020
12021#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12022pub struct Path {
12023 pub(crate) syntax: SyntaxNode,
12024}
12025impl Path {
12026 #[inline]
12027 pub fn qualifier(&self) -> Option<Path> {
12028 support::child(&self.syntax)
12029 }
12030 #[inline]
12031 pub fn segment(&self) -> Option<PathSegment> {
12032 support::child(&self.syntax)
12033 }
12034 #[inline]
12035 pub fn dot_token(&self) -> Option<SyntaxToken> {
12036 support::token(&self.syntax, SyntaxKind::DOT)
12037 }
12038}
12039
12040#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12041pub struct PathSegment {
12042 pub(crate) syntax: SyntaxNode,
12043}
12044impl PathSegment {
12045 #[inline]
12046 pub fn name(&self) -> Option<Name> {
12047 support::child(&self.syntax)
12048 }
12049 #[inline]
12050 pub fn name_ref(&self) -> Option<NameRef> {
12051 support::child(&self.syntax)
12052 }
12053}
12054
12055#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12056pub struct PathType {
12057 pub(crate) syntax: SyntaxNode,
12058}
12059impl PathType {
12060 #[inline]
12061 pub fn arg_list(&self) -> Option<ArgList> {
12062 support::child(&self.syntax)
12063 }
12064 #[inline]
12065 pub fn path(&self) -> Option<Path> {
12066 support::child(&self.syntax)
12067 }
12068}
12069
12070#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12071pub struct PercentType {
12072 pub(crate) syntax: SyntaxNode,
12073}
12074impl PercentType {
12075 #[inline]
12076 pub fn percent_token(&self) -> Option<SyntaxToken> {
12077 support::token(&self.syntax, SyntaxKind::PERCENT)
12078 }
12079 #[inline]
12080 pub fn type_token(&self) -> Option<SyntaxToken> {
12081 support::token(&self.syntax, SyntaxKind::TYPE_KW)
12082 }
12083}
12084
12085#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12086pub struct PercentTypeClause {
12087 pub(crate) syntax: SyntaxNode,
12088}
12089impl PercentTypeClause {
12090 #[inline]
12091 pub fn path(&self) -> Option<Path> {
12092 support::child(&self.syntax)
12093 }
12094 #[inline]
12095 pub fn percent_type_clause(&self) -> Option<PercentTypeClause> {
12096 support::child(&self.syntax)
12097 }
12098}
12099
12100#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12101pub struct PositionFn {
12102 pub(crate) syntax: SyntaxNode,
12103}
12104impl PositionFn {
12105 #[inline]
12106 pub fn expr(&self) -> Option<Expr> {
12107 support::child(&self.syntax)
12108 }
12109 #[inline]
12110 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
12111 support::token(&self.syntax, SyntaxKind::L_PAREN)
12112 }
12113 #[inline]
12114 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
12115 support::token(&self.syntax, SyntaxKind::R_PAREN)
12116 }
12117 #[inline]
12118 pub fn in_token(&self) -> Option<SyntaxToken> {
12119 support::token(&self.syntax, SyntaxKind::IN_KW)
12120 }
12121 #[inline]
12122 pub fn position_token(&self) -> Option<SyntaxToken> {
12123 support::token(&self.syntax, SyntaxKind::POSITION_KW)
12124 }
12125}
12126
12127#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12128pub struct PostfixExpr {
12129 pub(crate) syntax: SyntaxNode,
12130}
12131impl PostfixExpr {
12132 #[inline]
12133 pub fn expr(&self) -> Option<Expr> {
12134 support::child(&self.syntax)
12135 }
12136}
12137
12138#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12139pub struct PrefixExpr {
12140 pub(crate) syntax: SyntaxNode,
12141}
12142impl PrefixExpr {
12143 #[inline]
12144 pub fn expr(&self) -> Option<Expr> {
12145 support::child(&self.syntax)
12146 }
12147}
12148
12149#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12150pub struct Prepare {
12151 pub(crate) syntax: SyntaxNode,
12152}
12153impl Prepare {
12154 #[inline]
12155 pub fn name(&self) -> Option<Name> {
12156 support::child(&self.syntax)
12157 }
12158 #[inline]
12159 pub fn preparable_stmt(&self) -> Option<PreparableStmt> {
12160 support::child(&self.syntax)
12161 }
12162 #[inline]
12163 pub fn as_token(&self) -> Option<SyntaxToken> {
12164 support::token(&self.syntax, SyntaxKind::AS_KW)
12165 }
12166 #[inline]
12167 pub fn prepare_token(&self) -> Option<SyntaxToken> {
12168 support::token(&self.syntax, SyntaxKind::PREPARE_KW)
12169 }
12170}
12171
12172#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12173pub struct PrepareTransaction {
12174 pub(crate) syntax: SyntaxNode,
12175}
12176impl PrepareTransaction {
12177 #[inline]
12178 pub fn literal(&self) -> Option<Literal> {
12179 support::child(&self.syntax)
12180 }
12181 #[inline]
12182 pub fn prepare_token(&self) -> Option<SyntaxToken> {
12183 support::token(&self.syntax, SyntaxKind::PREPARE_KW)
12184 }
12185 #[inline]
12186 pub fn transaction_token(&self) -> Option<SyntaxToken> {
12187 support::token(&self.syntax, SyntaxKind::TRANSACTION_KW)
12188 }
12189}
12190
12191#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12192pub struct PreserveRows {
12193 pub(crate) syntax: SyntaxNode,
12194}
12195impl PreserveRows {
12196 #[inline]
12197 pub fn preserve_token(&self) -> Option<SyntaxToken> {
12198 support::token(&self.syntax, SyntaxKind::PRESERVE_KW)
12199 }
12200 #[inline]
12201 pub fn rows_token(&self) -> Option<SyntaxToken> {
12202 support::token(&self.syntax, SyntaxKind::ROWS_KW)
12203 }
12204}
12205
12206#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12207pub struct PrimaryKeyConstraint {
12208 pub(crate) syntax: SyntaxNode,
12209}
12210impl PrimaryKeyConstraint {
12211 #[inline]
12212 pub fn column_list(&self) -> Option<ColumnList> {
12213 support::child(&self.syntax)
12214 }
12215 #[inline]
12216 pub fn name(&self) -> Option<Name> {
12217 support::child(&self.syntax)
12218 }
12219 #[inline]
12220 pub fn partition_item_list(&self) -> Option<PartitionItemList> {
12221 support::child(&self.syntax)
12222 }
12223 #[inline]
12224 pub fn using_index(&self) -> Option<UsingIndex> {
12225 support::child(&self.syntax)
12226 }
12227 #[inline]
12228 pub fn constraint_token(&self) -> Option<SyntaxToken> {
12229 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
12230 }
12231 #[inline]
12232 pub fn key_token(&self) -> Option<SyntaxToken> {
12233 support::token(&self.syntax, SyntaxKind::KEY_KW)
12234 }
12235 #[inline]
12236 pub fn primary_token(&self) -> Option<SyntaxToken> {
12237 support::token(&self.syntax, SyntaxKind::PRIMARY_KW)
12238 }
12239}
12240
12241#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12242pub struct PrivilegeTarget {
12243 pub(crate) syntax: SyntaxNode,
12244}
12245impl PrivilegeTarget {
12246 #[inline]
12247 pub fn functions_token(&self) -> Option<SyntaxToken> {
12248 support::token(&self.syntax, SyntaxKind::FUNCTIONS_KW)
12249 }
12250 #[inline]
12251 pub fn large_token(&self) -> Option<SyntaxToken> {
12252 support::token(&self.syntax, SyntaxKind::LARGE_KW)
12253 }
12254 #[inline]
12255 pub fn objects_token(&self) -> Option<SyntaxToken> {
12256 support::token(&self.syntax, SyntaxKind::OBJECTS_KW)
12257 }
12258 #[inline]
12259 pub fn routines_token(&self) -> Option<SyntaxToken> {
12260 support::token(&self.syntax, SyntaxKind::ROUTINES_KW)
12261 }
12262 #[inline]
12263 pub fn schemas_token(&self) -> Option<SyntaxToken> {
12264 support::token(&self.syntax, SyntaxKind::SCHEMAS_KW)
12265 }
12266 #[inline]
12267 pub fn sequences_token(&self) -> Option<SyntaxToken> {
12268 support::token(&self.syntax, SyntaxKind::SEQUENCES_KW)
12269 }
12270 #[inline]
12271 pub fn tables_token(&self) -> Option<SyntaxToken> {
12272 support::token(&self.syntax, SyntaxKind::TABLES_KW)
12273 }
12274 #[inline]
12275 pub fn types_token(&self) -> Option<SyntaxToken> {
12276 support::token(&self.syntax, SyntaxKind::TYPES_KW)
12277 }
12278}
12279
12280#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12281pub struct Privileges {
12282 pub(crate) syntax: SyntaxNode,
12283}
12284impl Privileges {
12285 #[inline]
12286 pub fn column_list(&self) -> Option<ColumnList> {
12287 support::child(&self.syntax)
12288 }
12289 #[inline]
12290 pub fn revoke_command_list(&self) -> Option<RevokeCommandList> {
12291 support::child(&self.syntax)
12292 }
12293 #[inline]
12294 pub fn all_token(&self) -> Option<SyntaxToken> {
12295 support::token(&self.syntax, SyntaxKind::ALL_KW)
12296 }
12297 #[inline]
12298 pub fn privileges_token(&self) -> Option<SyntaxToken> {
12299 support::token(&self.syntax, SyntaxKind::PRIVILEGES_KW)
12300 }
12301}
12302
12303#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12304pub struct PublicationObject {
12305 pub(crate) syntax: SyntaxNode,
12306}
12307impl PublicationObject {
12308 #[inline]
12309 pub fn column_list(&self) -> Option<ColumnList> {
12310 support::child(&self.syntax)
12311 }
12312 #[inline]
12313 pub fn name_ref(&self) -> Option<NameRef> {
12314 support::child(&self.syntax)
12315 }
12316 #[inline]
12317 pub fn path(&self) -> Option<Path> {
12318 support::child(&self.syntax)
12319 }
12320 #[inline]
12321 pub fn where_condition_clause(&self) -> Option<WhereConditionClause> {
12322 support::child(&self.syntax)
12323 }
12324 #[inline]
12325 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
12326 support::token(&self.syntax, SyntaxKind::L_PAREN)
12327 }
12328 #[inline]
12329 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
12330 support::token(&self.syntax, SyntaxKind::R_PAREN)
12331 }
12332 #[inline]
12333 pub fn star_token(&self) -> Option<SyntaxToken> {
12334 support::token(&self.syntax, SyntaxKind::STAR)
12335 }
12336 #[inline]
12337 pub fn current_schema_token(&self) -> Option<SyntaxToken> {
12338 support::token(&self.syntax, SyntaxKind::CURRENT_SCHEMA_KW)
12339 }
12340 #[inline]
12341 pub fn in_token(&self) -> Option<SyntaxToken> {
12342 support::token(&self.syntax, SyntaxKind::IN_KW)
12343 }
12344 #[inline]
12345 pub fn only_token(&self) -> Option<SyntaxToken> {
12346 support::token(&self.syntax, SyntaxKind::ONLY_KW)
12347 }
12348 #[inline]
12349 pub fn schema_token(&self) -> Option<SyntaxToken> {
12350 support::token(&self.syntax, SyntaxKind::SCHEMA_KW)
12351 }
12352 #[inline]
12353 pub fn table_token(&self) -> Option<SyntaxToken> {
12354 support::token(&self.syntax, SyntaxKind::TABLE_KW)
12355 }
12356 #[inline]
12357 pub fn tables_token(&self) -> Option<SyntaxToken> {
12358 support::token(&self.syntax, SyntaxKind::TABLES_KW)
12359 }
12360}
12361
12362#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12363pub struct ReadCommitted {
12364 pub(crate) syntax: SyntaxNode,
12365}
12366impl ReadCommitted {
12367 #[inline]
12368 pub fn committed_token(&self) -> Option<SyntaxToken> {
12369 support::token(&self.syntax, SyntaxKind::COMMITTED_KW)
12370 }
12371 #[inline]
12372 pub fn isolation_token(&self) -> Option<SyntaxToken> {
12373 support::token(&self.syntax, SyntaxKind::ISOLATION_KW)
12374 }
12375 #[inline]
12376 pub fn level_token(&self) -> Option<SyntaxToken> {
12377 support::token(&self.syntax, SyntaxKind::LEVEL_KW)
12378 }
12379 #[inline]
12380 pub fn read_token(&self) -> Option<SyntaxToken> {
12381 support::token(&self.syntax, SyntaxKind::READ_KW)
12382 }
12383}
12384
12385#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12386pub struct ReadOnly {
12387 pub(crate) syntax: SyntaxNode,
12388}
12389impl ReadOnly {
12390 #[inline]
12391 pub fn only_token(&self) -> Option<SyntaxToken> {
12392 support::token(&self.syntax, SyntaxKind::ONLY_KW)
12393 }
12394 #[inline]
12395 pub fn read_token(&self) -> Option<SyntaxToken> {
12396 support::token(&self.syntax, SyntaxKind::READ_KW)
12397 }
12398}
12399
12400#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12401pub struct ReadUncommitted {
12402 pub(crate) syntax: SyntaxNode,
12403}
12404impl ReadUncommitted {
12405 #[inline]
12406 pub fn isolation_token(&self) -> Option<SyntaxToken> {
12407 support::token(&self.syntax, SyntaxKind::ISOLATION_KW)
12408 }
12409 #[inline]
12410 pub fn level_token(&self) -> Option<SyntaxToken> {
12411 support::token(&self.syntax, SyntaxKind::LEVEL_KW)
12412 }
12413 #[inline]
12414 pub fn read_token(&self) -> Option<SyntaxToken> {
12415 support::token(&self.syntax, SyntaxKind::READ_KW)
12416 }
12417 #[inline]
12418 pub fn uncommitted_token(&self) -> Option<SyntaxToken> {
12419 support::token(&self.syntax, SyntaxKind::UNCOMMITTED_KW)
12420 }
12421}
12422
12423#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12424pub struct ReadWrite {
12425 pub(crate) syntax: SyntaxNode,
12426}
12427impl ReadWrite {
12428 #[inline]
12429 pub fn read_token(&self) -> Option<SyntaxToken> {
12430 support::token(&self.syntax, SyntaxKind::READ_KW)
12431 }
12432 #[inline]
12433 pub fn write_token(&self) -> Option<SyntaxToken> {
12434 support::token(&self.syntax, SyntaxKind::WRITE_KW)
12435 }
12436}
12437
12438#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12439pub struct Reassign {
12440 pub(crate) syntax: SyntaxNode,
12441}
12442impl Reassign {
12443 #[inline]
12444 pub fn new_roles(&self) -> Option<RoleList> {
12445 support::child(&self.syntax)
12446 }
12447 #[inline]
12448 pub fn old_roles(&self) -> Option<RoleList> {
12449 support::child(&self.syntax)
12450 }
12451 #[inline]
12452 pub fn by_token(&self) -> Option<SyntaxToken> {
12453 support::token(&self.syntax, SyntaxKind::BY_KW)
12454 }
12455 #[inline]
12456 pub fn owned_token(&self) -> Option<SyntaxToken> {
12457 support::token(&self.syntax, SyntaxKind::OWNED_KW)
12458 }
12459 #[inline]
12460 pub fn reassign_token(&self) -> Option<SyntaxToken> {
12461 support::token(&self.syntax, SyntaxKind::REASSIGN_KW)
12462 }
12463 #[inline]
12464 pub fn to_token(&self) -> Option<SyntaxToken> {
12465 support::token(&self.syntax, SyntaxKind::TO_KW)
12466 }
12467}
12468
12469#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12470pub struct ReferencesConstraint {
12471 pub(crate) syntax: SyntaxNode,
12472}
12473impl ReferencesConstraint {
12474 #[inline]
12475 pub fn match_type(&self) -> Option<MatchType> {
12476 support::child(&self.syntax)
12477 }
12478 #[inline]
12479 pub fn name(&self) -> Option<Name> {
12480 support::child(&self.syntax)
12481 }
12482 #[inline]
12483 pub fn name_ref(&self) -> Option<NameRef> {
12484 support::child(&self.syntax)
12485 }
12486 #[inline]
12487 pub fn on_delete_action(&self) -> Option<OnDeleteAction> {
12488 support::child(&self.syntax)
12489 }
12490 #[inline]
12491 pub fn on_update_action(&self) -> Option<OnUpdateAction> {
12492 support::child(&self.syntax)
12493 }
12494 #[inline]
12495 pub fn path(&self) -> Option<Path> {
12496 support::child(&self.syntax)
12497 }
12498 #[inline]
12499 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
12500 support::token(&self.syntax, SyntaxKind::L_PAREN)
12501 }
12502 #[inline]
12503 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
12504 support::token(&self.syntax, SyntaxKind::R_PAREN)
12505 }
12506 #[inline]
12507 pub fn constraint_token(&self) -> Option<SyntaxToken> {
12508 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
12509 }
12510 #[inline]
12511 pub fn references_token(&self) -> Option<SyntaxToken> {
12512 support::token(&self.syntax, SyntaxKind::REFERENCES_KW)
12513 }
12514}
12515
12516#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12517pub struct Referencing {
12518 pub(crate) syntax: SyntaxNode,
12519}
12520impl Referencing {
12521 #[inline]
12522 pub fn referencing_tables(&self) -> AstChildren<ReferencingTable> {
12523 support::children(&self.syntax)
12524 }
12525 #[inline]
12526 pub fn referencing_token(&self) -> Option<SyntaxToken> {
12527 support::token(&self.syntax, SyntaxKind::REFERENCING_KW)
12528 }
12529}
12530
12531#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12532pub struct ReferencingTable {
12533 pub(crate) syntax: SyntaxNode,
12534}
12535impl ReferencingTable {
12536 #[inline]
12537 pub fn name_ref(&self) -> Option<NameRef> {
12538 support::child(&self.syntax)
12539 }
12540 #[inline]
12541 pub fn as_token(&self) -> Option<SyntaxToken> {
12542 support::token(&self.syntax, SyntaxKind::AS_KW)
12543 }
12544 #[inline]
12545 pub fn new_token(&self) -> Option<SyntaxToken> {
12546 support::token(&self.syntax, SyntaxKind::NEW_KW)
12547 }
12548 #[inline]
12549 pub fn old_token(&self) -> Option<SyntaxToken> {
12550 support::token(&self.syntax, SyntaxKind::OLD_KW)
12551 }
12552 #[inline]
12553 pub fn table_token(&self) -> Option<SyntaxToken> {
12554 support::token(&self.syntax, SyntaxKind::TABLE_KW)
12555 }
12556}
12557
12558#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12559pub struct Refresh {
12560 pub(crate) syntax: SyntaxNode,
12561}
12562impl Refresh {
12563 #[inline]
12564 pub fn path(&self) -> Option<Path> {
12565 support::child(&self.syntax)
12566 }
12567 #[inline]
12568 pub fn with_data(&self) -> Option<WithData> {
12569 support::child(&self.syntax)
12570 }
12571 #[inline]
12572 pub fn with_no_data(&self) -> Option<WithNoData> {
12573 support::child(&self.syntax)
12574 }
12575 #[inline]
12576 pub fn concurrently_token(&self) -> Option<SyntaxToken> {
12577 support::token(&self.syntax, SyntaxKind::CONCURRENTLY_KW)
12578 }
12579 #[inline]
12580 pub fn materialized_token(&self) -> Option<SyntaxToken> {
12581 support::token(&self.syntax, SyntaxKind::MATERIALIZED_KW)
12582 }
12583 #[inline]
12584 pub fn refresh_token(&self) -> Option<SyntaxToken> {
12585 support::token(&self.syntax, SyntaxKind::REFRESH_KW)
12586 }
12587 #[inline]
12588 pub fn view_token(&self) -> Option<SyntaxToken> {
12589 support::token(&self.syntax, SyntaxKind::VIEW_KW)
12590 }
12591}
12592
12593#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12594pub struct RefreshCollationVersion {
12595 pub(crate) syntax: SyntaxNode,
12596}
12597impl RefreshCollationVersion {
12598 #[inline]
12599 pub fn collation_token(&self) -> Option<SyntaxToken> {
12600 support::token(&self.syntax, SyntaxKind::COLLATION_KW)
12601 }
12602 #[inline]
12603 pub fn refresh_token(&self) -> Option<SyntaxToken> {
12604 support::token(&self.syntax, SyntaxKind::REFRESH_KW)
12605 }
12606 #[inline]
12607 pub fn version_token(&self) -> Option<SyntaxToken> {
12608 support::token(&self.syntax, SyntaxKind::VERSION_KW)
12609 }
12610}
12611
12612#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12613pub struct RefreshVersion {
12614 pub(crate) syntax: SyntaxNode,
12615}
12616impl RefreshVersion {
12617 #[inline]
12618 pub fn refresh_token(&self) -> Option<SyntaxToken> {
12619 support::token(&self.syntax, SyntaxKind::REFRESH_KW)
12620 }
12621 #[inline]
12622 pub fn version_token(&self) -> Option<SyntaxToken> {
12623 support::token(&self.syntax, SyntaxKind::VERSION_KW)
12624 }
12625}
12626
12627#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12628pub struct Reindex {
12629 pub(crate) syntax: SyntaxNode,
12630}
12631impl Reindex {
12632 #[inline]
12633 pub fn path(&self) -> Option<Path> {
12634 support::child(&self.syntax)
12635 }
12636 #[inline]
12637 pub fn database_token(&self) -> Option<SyntaxToken> {
12638 support::token(&self.syntax, SyntaxKind::DATABASE_KW)
12639 }
12640 #[inline]
12641 pub fn index_token(&self) -> Option<SyntaxToken> {
12642 support::token(&self.syntax, SyntaxKind::INDEX_KW)
12643 }
12644 #[inline]
12645 pub fn reindex_token(&self) -> Option<SyntaxToken> {
12646 support::token(&self.syntax, SyntaxKind::REINDEX_KW)
12647 }
12648 #[inline]
12649 pub fn schema_token(&self) -> Option<SyntaxToken> {
12650 support::token(&self.syntax, SyntaxKind::SCHEMA_KW)
12651 }
12652 #[inline]
12653 pub fn system_token(&self) -> Option<SyntaxToken> {
12654 support::token(&self.syntax, SyntaxKind::SYSTEM_KW)
12655 }
12656 #[inline]
12657 pub fn table_token(&self) -> Option<SyntaxToken> {
12658 support::token(&self.syntax, SyntaxKind::TABLE_KW)
12659 }
12660}
12661
12662#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12663pub struct RelationName {
12664 pub(crate) syntax: SyntaxNode,
12665}
12666impl RelationName {
12667 #[inline]
12668 pub fn path(&self) -> Option<Path> {
12669 support::child(&self.syntax)
12670 }
12671 #[inline]
12672 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
12673 support::token(&self.syntax, SyntaxKind::L_PAREN)
12674 }
12675 #[inline]
12676 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
12677 support::token(&self.syntax, SyntaxKind::R_PAREN)
12678 }
12679 #[inline]
12680 pub fn star_token(&self) -> Option<SyntaxToken> {
12681 support::token(&self.syntax, SyntaxKind::STAR)
12682 }
12683 #[inline]
12684 pub fn only_token(&self) -> Option<SyntaxToken> {
12685 support::token(&self.syntax, SyntaxKind::ONLY_KW)
12686 }
12687}
12688
12689#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12690pub struct ReleaseSavepoint {
12691 pub(crate) syntax: SyntaxNode,
12692}
12693impl ReleaseSavepoint {
12694 #[inline]
12695 pub fn name_ref(&self) -> Option<NameRef> {
12696 support::child(&self.syntax)
12697 }
12698 #[inline]
12699 pub fn release_token(&self) -> Option<SyntaxToken> {
12700 support::token(&self.syntax, SyntaxKind::RELEASE_KW)
12701 }
12702 #[inline]
12703 pub fn savepoint_token(&self) -> Option<SyntaxToken> {
12704 support::token(&self.syntax, SyntaxKind::SAVEPOINT_KW)
12705 }
12706}
12707
12708#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12709pub struct RenameColumn {
12710 pub(crate) syntax: SyntaxNode,
12711}
12712impl RenameColumn {
12713 #[inline]
12714 pub fn column_token(&self) -> Option<SyntaxToken> {
12715 support::token(&self.syntax, SyntaxKind::COLUMN_KW)
12716 }
12717 #[inline]
12718 pub fn rename_token(&self) -> Option<SyntaxToken> {
12719 support::token(&self.syntax, SyntaxKind::RENAME_KW)
12720 }
12721 #[inline]
12722 pub fn to_token(&self) -> Option<SyntaxToken> {
12723 support::token(&self.syntax, SyntaxKind::TO_KW)
12724 }
12725}
12726
12727#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12728pub struct RenameConstraint {
12729 pub(crate) syntax: SyntaxNode,
12730}
12731impl RenameConstraint {
12732 #[inline]
12733 pub fn name(&self) -> Option<Name> {
12734 support::child(&self.syntax)
12735 }
12736 #[inline]
12737 pub fn name_ref(&self) -> Option<NameRef> {
12738 support::child(&self.syntax)
12739 }
12740 #[inline]
12741 pub fn constraint_token(&self) -> Option<SyntaxToken> {
12742 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
12743 }
12744 #[inline]
12745 pub fn rename_token(&self) -> Option<SyntaxToken> {
12746 support::token(&self.syntax, SyntaxKind::RENAME_KW)
12747 }
12748 #[inline]
12749 pub fn to_token(&self) -> Option<SyntaxToken> {
12750 support::token(&self.syntax, SyntaxKind::TO_KW)
12751 }
12752}
12753
12754#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12755pub struct RenameTo {
12756 pub(crate) syntax: SyntaxNode,
12757}
12758impl RenameTo {
12759 #[inline]
12760 pub fn name(&self) -> Option<Name> {
12761 support::child(&self.syntax)
12762 }
12763 #[inline]
12764 pub fn rename_token(&self) -> Option<SyntaxToken> {
12765 support::token(&self.syntax, SyntaxKind::RENAME_KW)
12766 }
12767 #[inline]
12768 pub fn to_token(&self) -> Option<SyntaxToken> {
12769 support::token(&self.syntax, SyntaxKind::TO_KW)
12770 }
12771}
12772
12773#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12774pub struct RepeatableClause {
12775 pub(crate) syntax: SyntaxNode,
12776}
12777impl RepeatableClause {
12778 #[inline]
12779 pub fn expr(&self) -> Option<Expr> {
12780 support::child(&self.syntax)
12781 }
12782 #[inline]
12783 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
12784 support::token(&self.syntax, SyntaxKind::L_PAREN)
12785 }
12786 #[inline]
12787 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
12788 support::token(&self.syntax, SyntaxKind::R_PAREN)
12789 }
12790 #[inline]
12791 pub fn repeatable_token(&self) -> Option<SyntaxToken> {
12792 support::token(&self.syntax, SyntaxKind::REPEATABLE_KW)
12793 }
12794}
12795
12796#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12797pub struct RepeatableRead {
12798 pub(crate) syntax: SyntaxNode,
12799}
12800impl RepeatableRead {
12801 #[inline]
12802 pub fn isolation_token(&self) -> Option<SyntaxToken> {
12803 support::token(&self.syntax, SyntaxKind::ISOLATION_KW)
12804 }
12805 #[inline]
12806 pub fn level_token(&self) -> Option<SyntaxToken> {
12807 support::token(&self.syntax, SyntaxKind::LEVEL_KW)
12808 }
12809 #[inline]
12810 pub fn read_token(&self) -> Option<SyntaxToken> {
12811 support::token(&self.syntax, SyntaxKind::READ_KW)
12812 }
12813 #[inline]
12814 pub fn repeatable_token(&self) -> Option<SyntaxToken> {
12815 support::token(&self.syntax, SyntaxKind::REPEATABLE_KW)
12816 }
12817}
12818
12819#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12820pub struct ReplicaIdentity {
12821 pub(crate) syntax: SyntaxNode,
12822}
12823impl ReplicaIdentity {
12824 #[inline]
12825 pub fn identity_token(&self) -> Option<SyntaxToken> {
12826 support::token(&self.syntax, SyntaxKind::IDENTITY_KW)
12827 }
12828 #[inline]
12829 pub fn replica_token(&self) -> Option<SyntaxToken> {
12830 support::token(&self.syntax, SyntaxKind::REPLICA_KW)
12831 }
12832}
12833
12834#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12835pub struct Reset {
12836 pub(crate) syntax: SyntaxNode,
12837}
12838impl Reset {
12839 #[inline]
12840 pub fn name_ref(&self) -> Option<NameRef> {
12841 support::child(&self.syntax)
12842 }
12843 #[inline]
12844 pub fn all_token(&self) -> Option<SyntaxToken> {
12845 support::token(&self.syntax, SyntaxKind::ALL_KW)
12846 }
12847 #[inline]
12848 pub fn reset_token(&self) -> Option<SyntaxToken> {
12849 support::token(&self.syntax, SyntaxKind::RESET_KW)
12850 }
12851}
12852
12853#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12854pub struct ResetConfigParam {
12855 pub(crate) syntax: SyntaxNode,
12856}
12857impl ResetConfigParam {
12858 #[inline]
12859 pub fn path(&self) -> Option<Path> {
12860 support::child(&self.syntax)
12861 }
12862 #[inline]
12863 pub fn all_token(&self) -> Option<SyntaxToken> {
12864 support::token(&self.syntax, SyntaxKind::ALL_KW)
12865 }
12866 #[inline]
12867 pub fn reset_token(&self) -> Option<SyntaxToken> {
12868 support::token(&self.syntax, SyntaxKind::RESET_KW)
12869 }
12870}
12871
12872#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12873pub struct ResetFuncOption {
12874 pub(crate) syntax: SyntaxNode,
12875}
12876impl ResetFuncOption {
12877 #[inline]
12878 pub fn name_ref(&self) -> Option<NameRef> {
12879 support::child(&self.syntax)
12880 }
12881 #[inline]
12882 pub fn reset_token(&self) -> Option<SyntaxToken> {
12883 support::token(&self.syntax, SyntaxKind::RESET_KW)
12884 }
12885}
12886
12887#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12888pub struct ResetOptions {
12889 pub(crate) syntax: SyntaxNode,
12890}
12891impl ResetOptions {
12892 #[inline]
12893 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
12894 support::token(&self.syntax, SyntaxKind::L_PAREN)
12895 }
12896 #[inline]
12897 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
12898 support::token(&self.syntax, SyntaxKind::R_PAREN)
12899 }
12900 #[inline]
12901 pub fn reset_token(&self) -> Option<SyntaxToken> {
12902 support::token(&self.syntax, SyntaxKind::RESET_KW)
12903 }
12904}
12905
12906#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12907pub struct ResetSessionAuth {
12908 pub(crate) syntax: SyntaxNode,
12909}
12910impl ResetSessionAuth {
12911 #[inline]
12912 pub fn authorization_token(&self) -> Option<SyntaxToken> {
12913 support::token(&self.syntax, SyntaxKind::AUTHORIZATION_KW)
12914 }
12915 #[inline]
12916 pub fn reset_token(&self) -> Option<SyntaxToken> {
12917 support::token(&self.syntax, SyntaxKind::RESET_KW)
12918 }
12919 #[inline]
12920 pub fn session_token(&self) -> Option<SyntaxToken> {
12921 support::token(&self.syntax, SyntaxKind::SESSION_KW)
12922 }
12923}
12924
12925#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12926pub struct Restart {
12927 pub(crate) syntax: SyntaxNode,
12928}
12929impl Restart {
12930 #[inline]
12931 pub fn restart_token(&self) -> Option<SyntaxToken> {
12932 support::token(&self.syntax, SyntaxKind::RESTART_KW)
12933 }
12934 #[inline]
12935 pub fn with_token(&self) -> Option<SyntaxToken> {
12936 support::token(&self.syntax, SyntaxKind::WITH_KW)
12937 }
12938}
12939
12940#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12941pub struct Restrict {
12942 pub(crate) syntax: SyntaxNode,
12943}
12944impl Restrict {
12945 #[inline]
12946 pub fn restrict_token(&self) -> Option<SyntaxToken> {
12947 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
12948 }
12949}
12950
12951#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12952pub struct RetType {
12953 pub(crate) syntax: SyntaxNode,
12954}
12955impl RetType {
12956 #[inline]
12957 pub fn ty(&self) -> Option<Type> {
12958 support::child(&self.syntax)
12959 }
12960 #[inline]
12961 pub fn returns_token(&self) -> Option<SyntaxToken> {
12962 support::token(&self.syntax, SyntaxKind::RETURNS_KW)
12963 }
12964}
12965
12966#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12967pub struct ReturnFuncOption {
12968 pub(crate) syntax: SyntaxNode,
12969}
12970impl ReturnFuncOption {
12971 #[inline]
12972 pub fn expr(&self) -> Option<Expr> {
12973 support::child(&self.syntax)
12974 }
12975 #[inline]
12976 pub fn return_token(&self) -> Option<SyntaxToken> {
12977 support::token(&self.syntax, SyntaxKind::RETURN_KW)
12978 }
12979}
12980
12981#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12982pub struct ReturningClause {
12983 pub(crate) syntax: SyntaxNode,
12984}
12985impl ReturningClause {
12986 #[inline]
12987 pub fn returning_option_list(&self) -> Option<ReturningOptionList> {
12988 support::child(&self.syntax)
12989 }
12990 #[inline]
12991 pub fn target_list(&self) -> Option<TargetList> {
12992 support::child(&self.syntax)
12993 }
12994 #[inline]
12995 pub fn returning_token(&self) -> Option<SyntaxToken> {
12996 support::token(&self.syntax, SyntaxKind::RETURNING_KW)
12997 }
12998}
12999
13000#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13001pub struct ReturningOption {
13002 pub(crate) syntax: SyntaxNode,
13003}
13004impl ReturningOption {
13005 #[inline]
13006 pub fn name(&self) -> Option<Name> {
13007 support::child(&self.syntax)
13008 }
13009 #[inline]
13010 pub fn as_token(&self) -> Option<SyntaxToken> {
13011 support::token(&self.syntax, SyntaxKind::AS_KW)
13012 }
13013 #[inline]
13014 pub fn new_token(&self) -> Option<SyntaxToken> {
13015 support::token(&self.syntax, SyntaxKind::NEW_KW)
13016 }
13017 #[inline]
13018 pub fn old_token(&self) -> Option<SyntaxToken> {
13019 support::token(&self.syntax, SyntaxKind::OLD_KW)
13020 }
13021}
13022
13023#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13024pub struct ReturningOptionList {
13025 pub(crate) syntax: SyntaxNode,
13026}
13027impl ReturningOptionList {
13028 #[inline]
13029 pub fn returning_options(&self) -> AstChildren<ReturningOption> {
13030 support::children(&self.syntax)
13031 }
13032 #[inline]
13033 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
13034 support::token(&self.syntax, SyntaxKind::L_PAREN)
13035 }
13036 #[inline]
13037 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
13038 support::token(&self.syntax, SyntaxKind::R_PAREN)
13039 }
13040 #[inline]
13041 pub fn with_token(&self) -> Option<SyntaxToken> {
13042 support::token(&self.syntax, SyntaxKind::WITH_KW)
13043 }
13044}
13045
13046#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13047pub struct Revoke {
13048 pub(crate) syntax: SyntaxNode,
13049}
13050impl Revoke {
13051 #[inline]
13052 pub fn name_refs(&self) -> AstChildren<NameRef> {
13053 support::children(&self.syntax)
13054 }
13055 #[inline]
13056 pub fn paths(&self) -> AstChildren<Path> {
13057 support::children(&self.syntax)
13058 }
13059 #[inline]
13060 pub fn revoke_command_list(&self) -> Option<RevokeCommandList> {
13061 support::child(&self.syntax)
13062 }
13063 #[inline]
13064 pub fn role(&self) -> Option<Role> {
13065 support::child(&self.syntax)
13066 }
13067 #[inline]
13068 pub fn role_list(&self) -> Option<RoleList> {
13069 support::child(&self.syntax)
13070 }
13071 #[inline]
13072 pub fn all_token(&self) -> Option<SyntaxToken> {
13073 support::token(&self.syntax, SyntaxKind::ALL_KW)
13074 }
13075 #[inline]
13076 pub fn by_token(&self) -> Option<SyntaxToken> {
13077 support::token(&self.syntax, SyntaxKind::BY_KW)
13078 }
13079 #[inline]
13080 pub fn cascade_token(&self) -> Option<SyntaxToken> {
13081 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
13082 }
13083 #[inline]
13084 pub fn for_token(&self) -> Option<SyntaxToken> {
13085 support::token(&self.syntax, SyntaxKind::FOR_KW)
13086 }
13087 #[inline]
13088 pub fn from_token(&self) -> Option<SyntaxToken> {
13089 support::token(&self.syntax, SyntaxKind::FROM_KW)
13090 }
13091 #[inline]
13092 pub fn grant_token(&self) -> Option<SyntaxToken> {
13093 support::token(&self.syntax, SyntaxKind::GRANT_KW)
13094 }
13095 #[inline]
13096 pub fn granted_token(&self) -> Option<SyntaxToken> {
13097 support::token(&self.syntax, SyntaxKind::GRANTED_KW)
13098 }
13099 #[inline]
13100 pub fn in_token(&self) -> Option<SyntaxToken> {
13101 support::token(&self.syntax, SyntaxKind::IN_KW)
13102 }
13103 #[inline]
13104 pub fn on_token(&self) -> Option<SyntaxToken> {
13105 support::token(&self.syntax, SyntaxKind::ON_KW)
13106 }
13107 #[inline]
13108 pub fn option_token(&self) -> Option<SyntaxToken> {
13109 support::token(&self.syntax, SyntaxKind::OPTION_KW)
13110 }
13111 #[inline]
13112 pub fn privileges_token(&self) -> Option<SyntaxToken> {
13113 support::token(&self.syntax, SyntaxKind::PRIVILEGES_KW)
13114 }
13115 #[inline]
13116 pub fn restrict_token(&self) -> Option<SyntaxToken> {
13117 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
13118 }
13119 #[inline]
13120 pub fn revoke_token(&self) -> Option<SyntaxToken> {
13121 support::token(&self.syntax, SyntaxKind::REVOKE_KW)
13122 }
13123 #[inline]
13124 pub fn schema_token(&self) -> Option<SyntaxToken> {
13125 support::token(&self.syntax, SyntaxKind::SCHEMA_KW)
13126 }
13127 #[inline]
13128 pub fn table_token(&self) -> Option<SyntaxToken> {
13129 support::token(&self.syntax, SyntaxKind::TABLE_KW)
13130 }
13131 #[inline]
13132 pub fn tables_token(&self) -> Option<SyntaxToken> {
13133 support::token(&self.syntax, SyntaxKind::TABLES_KW)
13134 }
13135}
13136
13137#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13138pub struct RevokeCommand {
13139 pub(crate) syntax: SyntaxNode,
13140}
13141impl RevokeCommand {
13142 #[inline]
13143 pub fn role(&self) -> Option<Role> {
13144 support::child(&self.syntax)
13145 }
13146 #[inline]
13147 pub fn all_token(&self) -> Option<SyntaxToken> {
13148 support::token(&self.syntax, SyntaxKind::ALL_KW)
13149 }
13150 #[inline]
13151 pub fn alter_token(&self) -> Option<SyntaxToken> {
13152 support::token(&self.syntax, SyntaxKind::ALTER_KW)
13153 }
13154 #[inline]
13155 pub fn create_token(&self) -> Option<SyntaxToken> {
13156 support::token(&self.syntax, SyntaxKind::CREATE_KW)
13157 }
13158 #[inline]
13159 pub fn delete_token(&self) -> Option<SyntaxToken> {
13160 support::token(&self.syntax, SyntaxKind::DELETE_KW)
13161 }
13162 #[inline]
13163 pub fn execute_token(&self) -> Option<SyntaxToken> {
13164 support::token(&self.syntax, SyntaxKind::EXECUTE_KW)
13165 }
13166 #[inline]
13167 pub fn ident_token(&self) -> Option<SyntaxToken> {
13168 support::token(&self.syntax, SyntaxKind::IDENT)
13169 }
13170 #[inline]
13171 pub fn insert_token(&self) -> Option<SyntaxToken> {
13172 support::token(&self.syntax, SyntaxKind::INSERT_KW)
13173 }
13174 #[inline]
13175 pub fn references_token(&self) -> Option<SyntaxToken> {
13176 support::token(&self.syntax, SyntaxKind::REFERENCES_KW)
13177 }
13178 #[inline]
13179 pub fn select_token(&self) -> Option<SyntaxToken> {
13180 support::token(&self.syntax, SyntaxKind::SELECT_KW)
13181 }
13182 #[inline]
13183 pub fn system_token(&self) -> Option<SyntaxToken> {
13184 support::token(&self.syntax, SyntaxKind::SYSTEM_KW)
13185 }
13186 #[inline]
13187 pub fn temp_token(&self) -> Option<SyntaxToken> {
13188 support::token(&self.syntax, SyntaxKind::TEMP_KW)
13189 }
13190 #[inline]
13191 pub fn temporary_token(&self) -> Option<SyntaxToken> {
13192 support::token(&self.syntax, SyntaxKind::TEMPORARY_KW)
13193 }
13194 #[inline]
13195 pub fn trigger_token(&self) -> Option<SyntaxToken> {
13196 support::token(&self.syntax, SyntaxKind::TRIGGER_KW)
13197 }
13198 #[inline]
13199 pub fn truncate_token(&self) -> Option<SyntaxToken> {
13200 support::token(&self.syntax, SyntaxKind::TRUNCATE_KW)
13201 }
13202 #[inline]
13203 pub fn update_token(&self) -> Option<SyntaxToken> {
13204 support::token(&self.syntax, SyntaxKind::UPDATE_KW)
13205 }
13206}
13207
13208#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13209pub struct RevokeCommandList {
13210 pub(crate) syntax: SyntaxNode,
13211}
13212impl RevokeCommandList {
13213 #[inline]
13214 pub fn revoke_commands(&self) -> AstChildren<RevokeCommand> {
13215 support::children(&self.syntax)
13216 }
13217}
13218
13219#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13220pub struct RevokeDefaultPrivileges {
13221 pub(crate) syntax: SyntaxNode,
13222}
13223impl RevokeDefaultPrivileges {
13224 #[inline]
13225 pub fn privilege_target(&self) -> Option<PrivilegeTarget> {
13226 support::child(&self.syntax)
13227 }
13228 #[inline]
13229 pub fn privileges(&self) -> Option<Privileges> {
13230 support::child(&self.syntax)
13231 }
13232 #[inline]
13233 pub fn role_list(&self) -> Option<RoleList> {
13234 support::child(&self.syntax)
13235 }
13236 #[inline]
13237 pub fn cascade_token(&self) -> Option<SyntaxToken> {
13238 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
13239 }
13240 #[inline]
13241 pub fn for_token(&self) -> Option<SyntaxToken> {
13242 support::token(&self.syntax, SyntaxKind::FOR_KW)
13243 }
13244 #[inline]
13245 pub fn from_token(&self) -> Option<SyntaxToken> {
13246 support::token(&self.syntax, SyntaxKind::FROM_KW)
13247 }
13248 #[inline]
13249 pub fn grant_token(&self) -> Option<SyntaxToken> {
13250 support::token(&self.syntax, SyntaxKind::GRANT_KW)
13251 }
13252 #[inline]
13253 pub fn on_token(&self) -> Option<SyntaxToken> {
13254 support::token(&self.syntax, SyntaxKind::ON_KW)
13255 }
13256 #[inline]
13257 pub fn option_token(&self) -> Option<SyntaxToken> {
13258 support::token(&self.syntax, SyntaxKind::OPTION_KW)
13259 }
13260 #[inline]
13261 pub fn restrict_token(&self) -> Option<SyntaxToken> {
13262 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
13263 }
13264 #[inline]
13265 pub fn revoke_token(&self) -> Option<SyntaxToken> {
13266 support::token(&self.syntax, SyntaxKind::REVOKE_KW)
13267 }
13268}
13269
13270#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13271pub struct Role {
13272 pub(crate) syntax: SyntaxNode,
13273}
13274impl Role {
13275 #[inline]
13276 pub fn name_ref(&self) -> Option<NameRef> {
13277 support::child(&self.syntax)
13278 }
13279 #[inline]
13280 pub fn current_role_token(&self) -> Option<SyntaxToken> {
13281 support::token(&self.syntax, SyntaxKind::CURRENT_ROLE_KW)
13282 }
13283 #[inline]
13284 pub fn current_user_token(&self) -> Option<SyntaxToken> {
13285 support::token(&self.syntax, SyntaxKind::CURRENT_USER_KW)
13286 }
13287 #[inline]
13288 pub fn group_token(&self) -> Option<SyntaxToken> {
13289 support::token(&self.syntax, SyntaxKind::GROUP_KW)
13290 }
13291 #[inline]
13292 pub fn session_user_token(&self) -> Option<SyntaxToken> {
13293 support::token(&self.syntax, SyntaxKind::SESSION_USER_KW)
13294 }
13295}
13296
13297#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13298pub struct RoleList {
13299 pub(crate) syntax: SyntaxNode,
13300}
13301impl RoleList {
13302 #[inline]
13303 pub fn roles(&self) -> AstChildren<Role> {
13304 support::children(&self.syntax)
13305 }
13306}
13307
13308#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13309pub struct RoleOption {
13310 pub(crate) syntax: SyntaxNode,
13311}
13312impl RoleOption {
13313 #[inline]
13314 pub fn inherit_token(&self) -> Option<SyntaxToken> {
13315 support::token(&self.syntax, SyntaxKind::INHERIT_KW)
13316 }
13317}
13318
13319#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13320pub struct RoleOptionList {
13321 pub(crate) syntax: SyntaxNode,
13322}
13323impl RoleOptionList {
13324 #[inline]
13325 pub fn role_options(&self) -> AstChildren<RoleOption> {
13326 support::children(&self.syntax)
13327 }
13328 #[inline]
13329 pub fn with_token(&self) -> Option<SyntaxToken> {
13330 support::token(&self.syntax, SyntaxKind::WITH_KW)
13331 }
13332}
13333
13334#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13335pub struct Rollback {
13336 pub(crate) syntax: SyntaxNode,
13337}
13338impl Rollback {
13339 #[inline]
13340 pub fn literal(&self) -> Option<Literal> {
13341 support::child(&self.syntax)
13342 }
13343 #[inline]
13344 pub fn name_ref(&self) -> Option<NameRef> {
13345 support::child(&self.syntax)
13346 }
13347 #[inline]
13348 pub fn abort_token(&self) -> Option<SyntaxToken> {
13349 support::token(&self.syntax, SyntaxKind::ABORT_KW)
13350 }
13351 #[inline]
13352 pub fn and_token(&self) -> Option<SyntaxToken> {
13353 support::token(&self.syntax, SyntaxKind::AND_KW)
13354 }
13355 #[inline]
13356 pub fn chain_token(&self) -> Option<SyntaxToken> {
13357 support::token(&self.syntax, SyntaxKind::CHAIN_KW)
13358 }
13359 #[inline]
13360 pub fn no_token(&self) -> Option<SyntaxToken> {
13361 support::token(&self.syntax, SyntaxKind::NO_KW)
13362 }
13363 #[inline]
13364 pub fn prepared_token(&self) -> Option<SyntaxToken> {
13365 support::token(&self.syntax, SyntaxKind::PREPARED_KW)
13366 }
13367 #[inline]
13368 pub fn rollback_token(&self) -> Option<SyntaxToken> {
13369 support::token(&self.syntax, SyntaxKind::ROLLBACK_KW)
13370 }
13371 #[inline]
13372 pub fn savepoint_token(&self) -> Option<SyntaxToken> {
13373 support::token(&self.syntax, SyntaxKind::SAVEPOINT_KW)
13374 }
13375 #[inline]
13376 pub fn to_token(&self) -> Option<SyntaxToken> {
13377 support::token(&self.syntax, SyntaxKind::TO_KW)
13378 }
13379 #[inline]
13380 pub fn transaction_token(&self) -> Option<SyntaxToken> {
13381 support::token(&self.syntax, SyntaxKind::TRANSACTION_KW)
13382 }
13383 #[inline]
13384 pub fn work_token(&self) -> Option<SyntaxToken> {
13385 support::token(&self.syntax, SyntaxKind::WORK_KW)
13386 }
13387}
13388
13389#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13390pub struct Row {
13391 pub(crate) syntax: SyntaxNode,
13392}
13393impl Row {
13394 #[inline]
13395 pub fn exprs(&self) -> AstChildren<Expr> {
13396 support::children(&self.syntax)
13397 }
13398}
13399
13400#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13401pub struct RowList {
13402 pub(crate) syntax: SyntaxNode,
13403}
13404impl RowList {
13405 #[inline]
13406 pub fn rows(&self) -> AstChildren<Row> {
13407 support::children(&self.syntax)
13408 }
13409}
13410
13411#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13412pub struct RowsFuncOption {
13413 pub(crate) syntax: SyntaxNode,
13414}
13415impl RowsFuncOption {
13416 #[inline]
13417 pub fn rows_token(&self) -> Option<SyntaxToken> {
13418 support::token(&self.syntax, SyntaxKind::ROWS_KW)
13419 }
13420}
13421
13422#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13423pub struct Savepoint {
13424 pub(crate) syntax: SyntaxNode,
13425}
13426impl Savepoint {
13427 #[inline]
13428 pub fn name(&self) -> Option<Name> {
13429 support::child(&self.syntax)
13430 }
13431 #[inline]
13432 pub fn savepoint_token(&self) -> Option<SyntaxToken> {
13433 support::token(&self.syntax, SyntaxKind::SAVEPOINT_KW)
13434 }
13435}
13436
13437#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13438pub struct SchemaAuthorization {
13439 pub(crate) syntax: SyntaxNode,
13440}
13441impl SchemaAuthorization {
13442 #[inline]
13443 pub fn role(&self) -> Option<Role> {
13444 support::child(&self.syntax)
13445 }
13446 #[inline]
13447 pub fn authorization_token(&self) -> Option<SyntaxToken> {
13448 support::token(&self.syntax, SyntaxKind::AUTHORIZATION_KW)
13449 }
13450}
13451
13452#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13453pub struct SecurityFuncOption {
13454 pub(crate) syntax: SyntaxNode,
13455}
13456impl SecurityFuncOption {
13457 #[inline]
13458 pub fn definer_token(&self) -> Option<SyntaxToken> {
13459 support::token(&self.syntax, SyntaxKind::DEFINER_KW)
13460 }
13461 #[inline]
13462 pub fn invoker_token(&self) -> Option<SyntaxToken> {
13463 support::token(&self.syntax, SyntaxKind::INVOKER_KW)
13464 }
13465 #[inline]
13466 pub fn security_token(&self) -> Option<SyntaxToken> {
13467 support::token(&self.syntax, SyntaxKind::SECURITY_KW)
13468 }
13469}
13470
13471#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13472pub struct SecurityLabel {
13473 pub(crate) syntax: SyntaxNode,
13474}
13475impl SecurityLabel {
13476 #[inline]
13477 pub fn aggregate(&self) -> Option<Aggregate> {
13478 support::child(&self.syntax)
13479 }
13480 #[inline]
13481 pub fn for_provider(&self) -> Option<ForProvider> {
13482 support::child(&self.syntax)
13483 }
13484 #[inline]
13485 pub fn function_sig(&self) -> Option<FunctionSig> {
13486 support::child(&self.syntax)
13487 }
13488 #[inline]
13489 pub fn literal(&self) -> Option<Literal> {
13490 support::child(&self.syntax)
13491 }
13492 #[inline]
13493 pub fn path(&self) -> Option<Path> {
13494 support::child(&self.syntax)
13495 }
13496 #[inline]
13497 pub fn aggregate_token(&self) -> Option<SyntaxToken> {
13498 support::token(&self.syntax, SyntaxKind::AGGREGATE_KW)
13499 }
13500 #[inline]
13501 pub fn column_token(&self) -> Option<SyntaxToken> {
13502 support::token(&self.syntax, SyntaxKind::COLUMN_KW)
13503 }
13504 #[inline]
13505 pub fn database_token(&self) -> Option<SyntaxToken> {
13506 support::token(&self.syntax, SyntaxKind::DATABASE_KW)
13507 }
13508 #[inline]
13509 pub fn domain_token(&self) -> Option<SyntaxToken> {
13510 support::token(&self.syntax, SyntaxKind::DOMAIN_KW)
13511 }
13512 #[inline]
13513 pub fn event_token(&self) -> Option<SyntaxToken> {
13514 support::token(&self.syntax, SyntaxKind::EVENT_KW)
13515 }
13516 #[inline]
13517 pub fn foreign_token(&self) -> Option<SyntaxToken> {
13518 support::token(&self.syntax, SyntaxKind::FOREIGN_KW)
13519 }
13520 #[inline]
13521 pub fn function_token(&self) -> Option<SyntaxToken> {
13522 support::token(&self.syntax, SyntaxKind::FUNCTION_KW)
13523 }
13524 #[inline]
13525 pub fn is_token(&self) -> Option<SyntaxToken> {
13526 support::token(&self.syntax, SyntaxKind::IS_KW)
13527 }
13528 #[inline]
13529 pub fn label_token(&self) -> Option<SyntaxToken> {
13530 support::token(&self.syntax, SyntaxKind::LABEL_KW)
13531 }
13532 #[inline]
13533 pub fn language_token(&self) -> Option<SyntaxToken> {
13534 support::token(&self.syntax, SyntaxKind::LANGUAGE_KW)
13535 }
13536 #[inline]
13537 pub fn large_token(&self) -> Option<SyntaxToken> {
13538 support::token(&self.syntax, SyntaxKind::LARGE_KW)
13539 }
13540 #[inline]
13541 pub fn materialized_token(&self) -> Option<SyntaxToken> {
13542 support::token(&self.syntax, SyntaxKind::MATERIALIZED_KW)
13543 }
13544 #[inline]
13545 pub fn null_token(&self) -> Option<SyntaxToken> {
13546 support::token(&self.syntax, SyntaxKind::NULL_KW)
13547 }
13548 #[inline]
13549 pub fn object_token(&self) -> Option<SyntaxToken> {
13550 support::token(&self.syntax, SyntaxKind::OBJECT_KW)
13551 }
13552 #[inline]
13553 pub fn on_token(&self) -> Option<SyntaxToken> {
13554 support::token(&self.syntax, SyntaxKind::ON_KW)
13555 }
13556 #[inline]
13557 pub fn procedural_token(&self) -> Option<SyntaxToken> {
13558 support::token(&self.syntax, SyntaxKind::PROCEDURAL_KW)
13559 }
13560 #[inline]
13561 pub fn procedure_token(&self) -> Option<SyntaxToken> {
13562 support::token(&self.syntax, SyntaxKind::PROCEDURE_KW)
13563 }
13564 #[inline]
13565 pub fn publication_token(&self) -> Option<SyntaxToken> {
13566 support::token(&self.syntax, SyntaxKind::PUBLICATION_KW)
13567 }
13568 #[inline]
13569 pub fn role_token(&self) -> Option<SyntaxToken> {
13570 support::token(&self.syntax, SyntaxKind::ROLE_KW)
13571 }
13572 #[inline]
13573 pub fn routine_token(&self) -> Option<SyntaxToken> {
13574 support::token(&self.syntax, SyntaxKind::ROUTINE_KW)
13575 }
13576 #[inline]
13577 pub fn schema_token(&self) -> Option<SyntaxToken> {
13578 support::token(&self.syntax, SyntaxKind::SCHEMA_KW)
13579 }
13580 #[inline]
13581 pub fn security_token(&self) -> Option<SyntaxToken> {
13582 support::token(&self.syntax, SyntaxKind::SECURITY_KW)
13583 }
13584 #[inline]
13585 pub fn sequence_token(&self) -> Option<SyntaxToken> {
13586 support::token(&self.syntax, SyntaxKind::SEQUENCE_KW)
13587 }
13588 #[inline]
13589 pub fn subscription_token(&self) -> Option<SyntaxToken> {
13590 support::token(&self.syntax, SyntaxKind::SUBSCRIPTION_KW)
13591 }
13592 #[inline]
13593 pub fn table_token(&self) -> Option<SyntaxToken> {
13594 support::token(&self.syntax, SyntaxKind::TABLE_KW)
13595 }
13596 #[inline]
13597 pub fn tablespace_token(&self) -> Option<SyntaxToken> {
13598 support::token(&self.syntax, SyntaxKind::TABLESPACE_KW)
13599 }
13600 #[inline]
13601 pub fn trigger_token(&self) -> Option<SyntaxToken> {
13602 support::token(&self.syntax, SyntaxKind::TRIGGER_KW)
13603 }
13604 #[inline]
13605 pub fn type_token(&self) -> Option<SyntaxToken> {
13606 support::token(&self.syntax, SyntaxKind::TYPE_KW)
13607 }
13608 #[inline]
13609 pub fn view_token(&self) -> Option<SyntaxToken> {
13610 support::token(&self.syntax, SyntaxKind::VIEW_KW)
13611 }
13612}
13613
13614#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13615pub struct Select {
13616 pub(crate) syntax: SyntaxNode,
13617}
13618impl Select {
13619 #[inline]
13620 pub fn fetch_clause(&self) -> Option<FetchClause> {
13621 support::child(&self.syntax)
13622 }
13623 #[inline]
13624 pub fn filter_clause(&self) -> Option<FilterClause> {
13625 support::child(&self.syntax)
13626 }
13627 #[inline]
13628 pub fn from_clause(&self) -> Option<FromClause> {
13629 support::child(&self.syntax)
13630 }
13631 #[inline]
13632 pub fn group_by_clause(&self) -> Option<GroupByClause> {
13633 support::child(&self.syntax)
13634 }
13635 #[inline]
13636 pub fn having_clause(&self) -> Option<HavingClause> {
13637 support::child(&self.syntax)
13638 }
13639 #[inline]
13640 pub fn limit_clause(&self) -> Option<LimitClause> {
13641 support::child(&self.syntax)
13642 }
13643 #[inline]
13644 pub fn locking_clauses(&self) -> AstChildren<LockingClause> {
13645 support::children(&self.syntax)
13646 }
13647 #[inline]
13648 pub fn offset_clause(&self) -> Option<OffsetClause> {
13649 support::child(&self.syntax)
13650 }
13651 #[inline]
13652 pub fn order_by_clause(&self) -> Option<OrderByClause> {
13653 support::child(&self.syntax)
13654 }
13655 #[inline]
13656 pub fn select_clause(&self) -> Option<SelectClause> {
13657 support::child(&self.syntax)
13658 }
13659 #[inline]
13660 pub fn where_clause(&self) -> Option<WhereClause> {
13661 support::child(&self.syntax)
13662 }
13663 #[inline]
13664 pub fn window_clause(&self) -> Option<WindowClause> {
13665 support::child(&self.syntax)
13666 }
13667 #[inline]
13668 pub fn with_clause(&self) -> Option<WithClause> {
13669 support::child(&self.syntax)
13670 }
13671}
13672
13673#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13674pub struct SelectClause {
13675 pub(crate) syntax: SyntaxNode,
13676}
13677impl SelectClause {
13678 #[inline]
13679 pub fn distinct_clause(&self) -> Option<DistinctClause> {
13680 support::child(&self.syntax)
13681 }
13682 #[inline]
13683 pub fn target_list(&self) -> Option<TargetList> {
13684 support::child(&self.syntax)
13685 }
13686 #[inline]
13687 pub fn all_token(&self) -> Option<SyntaxToken> {
13688 support::token(&self.syntax, SyntaxKind::ALL_KW)
13689 }
13690 #[inline]
13691 pub fn select_token(&self) -> Option<SyntaxToken> {
13692 support::token(&self.syntax, SyntaxKind::SELECT_KW)
13693 }
13694}
13695
13696#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13697pub struct SelectInto {
13698 pub(crate) syntax: SyntaxNode,
13699}
13700impl SelectInto {
13701 #[inline]
13702 pub fn filter_clause(&self) -> Option<FilterClause> {
13703 support::child(&self.syntax)
13704 }
13705 #[inline]
13706 pub fn from_clause(&self) -> Option<FromClause> {
13707 support::child(&self.syntax)
13708 }
13709 #[inline]
13710 pub fn group_by_clause(&self) -> Option<GroupByClause> {
13711 support::child(&self.syntax)
13712 }
13713 #[inline]
13714 pub fn having_clause(&self) -> Option<HavingClause> {
13715 support::child(&self.syntax)
13716 }
13717 #[inline]
13718 pub fn into_clause(&self) -> Option<IntoClause> {
13719 support::child(&self.syntax)
13720 }
13721 #[inline]
13722 pub fn limit_clause(&self) -> Option<LimitClause> {
13723 support::child(&self.syntax)
13724 }
13725 #[inline]
13726 pub fn locking_clauses(&self) -> AstChildren<LockingClause> {
13727 support::children(&self.syntax)
13728 }
13729 #[inline]
13730 pub fn offset_clause(&self) -> Option<OffsetClause> {
13731 support::child(&self.syntax)
13732 }
13733 #[inline]
13734 pub fn order_by_clause(&self) -> Option<OrderByClause> {
13735 support::child(&self.syntax)
13736 }
13737 #[inline]
13738 pub fn select_clause(&self) -> Option<SelectClause> {
13739 support::child(&self.syntax)
13740 }
13741 #[inline]
13742 pub fn where_clause(&self) -> Option<WhereClause> {
13743 support::child(&self.syntax)
13744 }
13745 #[inline]
13746 pub fn window_clause(&self) -> Option<WindowClause> {
13747 support::child(&self.syntax)
13748 }
13749 #[inline]
13750 pub fn with_clause(&self) -> Option<WithClause> {
13751 support::child(&self.syntax)
13752 }
13753}
13754
13755#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13756pub struct SequenceOption {
13757 pub(crate) syntax: SyntaxNode,
13758}
13759impl SequenceOption {
13760 #[inline]
13761 pub fn literal(&self) -> Option<Literal> {
13762 support::child(&self.syntax)
13763 }
13764 #[inline]
13765 pub fn name_ref(&self) -> Option<NameRef> {
13766 support::child(&self.syntax)
13767 }
13768 #[inline]
13769 pub fn path(&self) -> Option<Path> {
13770 support::child(&self.syntax)
13771 }
13772 #[inline]
13773 pub fn ty(&self) -> Option<Type> {
13774 support::child(&self.syntax)
13775 }
13776 #[inline]
13777 pub fn as_token(&self) -> Option<SyntaxToken> {
13778 support::token(&self.syntax, SyntaxKind::AS_KW)
13779 }
13780 #[inline]
13781 pub fn by_token(&self) -> Option<SyntaxToken> {
13782 support::token(&self.syntax, SyntaxKind::BY_KW)
13783 }
13784 #[inline]
13785 pub fn cycle_token(&self) -> Option<SyntaxToken> {
13786 support::token(&self.syntax, SyntaxKind::CYCLE_KW)
13787 }
13788 #[inline]
13789 pub fn increment_token(&self) -> Option<SyntaxToken> {
13790 support::token(&self.syntax, SyntaxKind::INCREMENT_KW)
13791 }
13792 #[inline]
13793 pub fn logged_token(&self) -> Option<SyntaxToken> {
13794 support::token(&self.syntax, SyntaxKind::LOGGED_KW)
13795 }
13796 #[inline]
13797 pub fn maxvalue_token(&self) -> Option<SyntaxToken> {
13798 support::token(&self.syntax, SyntaxKind::MAXVALUE_KW)
13799 }
13800 #[inline]
13801 pub fn minvalue_token(&self) -> Option<SyntaxToken> {
13802 support::token(&self.syntax, SyntaxKind::MINVALUE_KW)
13803 }
13804 #[inline]
13805 pub fn name_token(&self) -> Option<SyntaxToken> {
13806 support::token(&self.syntax, SyntaxKind::NAME_KW)
13807 }
13808 #[inline]
13809 pub fn no_token(&self) -> Option<SyntaxToken> {
13810 support::token(&self.syntax, SyntaxKind::NO_KW)
13811 }
13812 #[inline]
13813 pub fn none_token(&self) -> Option<SyntaxToken> {
13814 support::token(&self.syntax, SyntaxKind::NONE_KW)
13815 }
13816 #[inline]
13817 pub fn owned_token(&self) -> Option<SyntaxToken> {
13818 support::token(&self.syntax, SyntaxKind::OWNED_KW)
13819 }
13820 #[inline]
13821 pub fn restart_token(&self) -> Option<SyntaxToken> {
13822 support::token(&self.syntax, SyntaxKind::RESTART_KW)
13823 }
13824 #[inline]
13825 pub fn sequence_token(&self) -> Option<SyntaxToken> {
13826 support::token(&self.syntax, SyntaxKind::SEQUENCE_KW)
13827 }
13828 #[inline]
13829 pub fn start_token(&self) -> Option<SyntaxToken> {
13830 support::token(&self.syntax, SyntaxKind::START_KW)
13831 }
13832 #[inline]
13833 pub fn unlogged_token(&self) -> Option<SyntaxToken> {
13834 support::token(&self.syntax, SyntaxKind::UNLOGGED_KW)
13835 }
13836 #[inline]
13837 pub fn with_token(&self) -> Option<SyntaxToken> {
13838 support::token(&self.syntax, SyntaxKind::WITH_KW)
13839 }
13840}
13841
13842#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13843pub struct SequenceOptionList {
13844 pub(crate) syntax: SyntaxNode,
13845}
13846impl SequenceOptionList {
13847 #[inline]
13848 pub fn sequence_options(&self) -> AstChildren<SequenceOption> {
13849 support::children(&self.syntax)
13850 }
13851 #[inline]
13852 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
13853 support::token(&self.syntax, SyntaxKind::L_PAREN)
13854 }
13855 #[inline]
13856 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
13857 support::token(&self.syntax, SyntaxKind::R_PAREN)
13858 }
13859}
13860
13861#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13862pub struct Serializable {
13863 pub(crate) syntax: SyntaxNode,
13864}
13865impl Serializable {
13866 #[inline]
13867 pub fn isolation_token(&self) -> Option<SyntaxToken> {
13868 support::token(&self.syntax, SyntaxKind::ISOLATION_KW)
13869 }
13870 #[inline]
13871 pub fn level_token(&self) -> Option<SyntaxToken> {
13872 support::token(&self.syntax, SyntaxKind::LEVEL_KW)
13873 }
13874 #[inline]
13875 pub fn serializable_token(&self) -> Option<SyntaxToken> {
13876 support::token(&self.syntax, SyntaxKind::SERIALIZABLE_KW)
13877 }
13878}
13879
13880#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13881pub struct Set {
13882 pub(crate) syntax: SyntaxNode,
13883}
13884impl Set {
13885 #[inline]
13886 pub fn config_value(&self) -> Option<ConfigValue> {
13887 support::child(&self.syntax)
13888 }
13889 #[inline]
13890 pub fn config_values(&self) -> AstChildren<ConfigValue> {
13891 support::children(&self.syntax)
13892 }
13893 #[inline]
13894 pub fn literal(&self) -> Option<Literal> {
13895 support::child(&self.syntax)
13896 }
13897 #[inline]
13898 pub fn path(&self) -> Option<Path> {
13899 support::child(&self.syntax)
13900 }
13901 #[inline]
13902 pub fn eq_token(&self) -> Option<SyntaxToken> {
13903 support::token(&self.syntax, SyntaxKind::EQ)
13904 }
13905 #[inline]
13906 pub fn catalog_token(&self) -> Option<SyntaxToken> {
13907 support::token(&self.syntax, SyntaxKind::CATALOG_KW)
13908 }
13909 #[inline]
13910 pub fn content_token(&self) -> Option<SyntaxToken> {
13911 support::token(&self.syntax, SyntaxKind::CONTENT_KW)
13912 }
13913 #[inline]
13914 pub fn current_token(&self) -> Option<SyntaxToken> {
13915 support::token(&self.syntax, SyntaxKind::CURRENT_KW)
13916 }
13917 #[inline]
13918 pub fn default_token(&self) -> Option<SyntaxToken> {
13919 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
13920 }
13921 #[inline]
13922 pub fn document_token(&self) -> Option<SyntaxToken> {
13923 support::token(&self.syntax, SyntaxKind::DOCUMENT_KW)
13924 }
13925 #[inline]
13926 pub fn from_token(&self) -> Option<SyntaxToken> {
13927 support::token(&self.syntax, SyntaxKind::FROM_KW)
13928 }
13929 #[inline]
13930 pub fn local_token(&self) -> Option<SyntaxToken> {
13931 support::token(&self.syntax, SyntaxKind::LOCAL_KW)
13932 }
13933 #[inline]
13934 pub fn option_token(&self) -> Option<SyntaxToken> {
13935 support::token(&self.syntax, SyntaxKind::OPTION_KW)
13936 }
13937 #[inline]
13938 pub fn schema_token(&self) -> Option<SyntaxToken> {
13939 support::token(&self.syntax, SyntaxKind::SCHEMA_KW)
13940 }
13941 #[inline]
13942 pub fn session_token(&self) -> Option<SyntaxToken> {
13943 support::token(&self.syntax, SyntaxKind::SESSION_KW)
13944 }
13945 #[inline]
13946 pub fn set_token(&self) -> Option<SyntaxToken> {
13947 support::token(&self.syntax, SyntaxKind::SET_KW)
13948 }
13949 #[inline]
13950 pub fn time_token(&self) -> Option<SyntaxToken> {
13951 support::token(&self.syntax, SyntaxKind::TIME_KW)
13952 }
13953 #[inline]
13954 pub fn to_token(&self) -> Option<SyntaxToken> {
13955 support::token(&self.syntax, SyntaxKind::TO_KW)
13956 }
13957 #[inline]
13958 pub fn xml_token(&self) -> Option<SyntaxToken> {
13959 support::token(&self.syntax, SyntaxKind::XML_KW)
13960 }
13961 #[inline]
13962 pub fn zone_token(&self) -> Option<SyntaxToken> {
13963 support::token(&self.syntax, SyntaxKind::ZONE_KW)
13964 }
13965}
13966
13967#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13968pub struct SetAccessMethod {
13969 pub(crate) syntax: SyntaxNode,
13970}
13971impl SetAccessMethod {
13972 #[inline]
13973 pub fn name_ref(&self) -> Option<NameRef> {
13974 support::child(&self.syntax)
13975 }
13976 #[inline]
13977 pub fn access_token(&self) -> Option<SyntaxToken> {
13978 support::token(&self.syntax, SyntaxKind::ACCESS_KW)
13979 }
13980 #[inline]
13981 pub fn method_token(&self) -> Option<SyntaxToken> {
13982 support::token(&self.syntax, SyntaxKind::METHOD_KW)
13983 }
13984 #[inline]
13985 pub fn set_token(&self) -> Option<SyntaxToken> {
13986 support::token(&self.syntax, SyntaxKind::SET_KW)
13987 }
13988}
13989
13990#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13991pub struct SetClause {
13992 pub(crate) syntax: SyntaxNode,
13993}
13994impl SetClause {
13995 #[inline]
13996 pub fn set_column_list(&self) -> Option<SetColumnList> {
13997 support::child(&self.syntax)
13998 }
13999 #[inline]
14000 pub fn set_token(&self) -> Option<SyntaxToken> {
14001 support::token(&self.syntax, SyntaxKind::SET_KW)
14002 }
14003}
14004
14005#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14006pub struct SetColumnList {
14007 pub(crate) syntax: SyntaxNode,
14008}
14009impl SetColumnList {
14010 #[inline]
14011 pub fn set_columns(&self) -> AstChildren<SetColumn> {
14012 support::children(&self.syntax)
14013 }
14014}
14015
14016#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14017pub struct SetCompression {
14018 pub(crate) syntax: SyntaxNode,
14019}
14020impl SetCompression {
14021 #[inline]
14022 pub fn compression_token(&self) -> Option<SyntaxToken> {
14023 support::token(&self.syntax, SyntaxKind::COMPRESSION_KW)
14024 }
14025 #[inline]
14026 pub fn set_token(&self) -> Option<SyntaxToken> {
14027 support::token(&self.syntax, SyntaxKind::SET_KW)
14028 }
14029}
14030
14031#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14032pub struct SetConfigParam {
14033 pub(crate) syntax: SyntaxNode,
14034}
14035impl SetConfigParam {
14036 #[inline]
14037 pub fn path(&self) -> Option<Path> {
14038 support::child(&self.syntax)
14039 }
14040 #[inline]
14041 pub fn set_token(&self) -> Option<SyntaxToken> {
14042 support::token(&self.syntax, SyntaxKind::SET_KW)
14043 }
14044}
14045
14046#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14047pub struct SetConstraints {
14048 pub(crate) syntax: SyntaxNode,
14049}
14050impl SetConstraints {
14051 #[inline]
14052 pub fn paths(&self) -> AstChildren<Path> {
14053 support::children(&self.syntax)
14054 }
14055 #[inline]
14056 pub fn all_token(&self) -> Option<SyntaxToken> {
14057 support::token(&self.syntax, SyntaxKind::ALL_KW)
14058 }
14059 #[inline]
14060 pub fn constraints_token(&self) -> Option<SyntaxToken> {
14061 support::token(&self.syntax, SyntaxKind::CONSTRAINTS_KW)
14062 }
14063 #[inline]
14064 pub fn deferred_token(&self) -> Option<SyntaxToken> {
14065 support::token(&self.syntax, SyntaxKind::DEFERRED_KW)
14066 }
14067 #[inline]
14068 pub fn immediate_token(&self) -> Option<SyntaxToken> {
14069 support::token(&self.syntax, SyntaxKind::IMMEDIATE_KW)
14070 }
14071 #[inline]
14072 pub fn set_token(&self) -> Option<SyntaxToken> {
14073 support::token(&self.syntax, SyntaxKind::SET_KW)
14074 }
14075}
14076
14077#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14078pub struct SetDefault {
14079 pub(crate) syntax: SyntaxNode,
14080}
14081impl SetDefault {
14082 #[inline]
14083 pub fn expr(&self) -> Option<Expr> {
14084 support::child(&self.syntax)
14085 }
14086 #[inline]
14087 pub fn default_token(&self) -> Option<SyntaxToken> {
14088 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
14089 }
14090 #[inline]
14091 pub fn set_token(&self) -> Option<SyntaxToken> {
14092 support::token(&self.syntax, SyntaxKind::SET_KW)
14093 }
14094}
14095
14096#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14097pub struct SetDefaultColumns {
14098 pub(crate) syntax: SyntaxNode,
14099}
14100impl SetDefaultColumns {
14101 #[inline]
14102 pub fn column_list(&self) -> Option<ColumnList> {
14103 support::child(&self.syntax)
14104 }
14105 #[inline]
14106 pub fn default_token(&self) -> Option<SyntaxToken> {
14107 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
14108 }
14109 #[inline]
14110 pub fn set_token(&self) -> Option<SyntaxToken> {
14111 support::token(&self.syntax, SyntaxKind::SET_KW)
14112 }
14113}
14114
14115#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14116pub struct SetExpr {
14117 pub(crate) syntax: SyntaxNode,
14118}
14119impl SetExpr {
14120 #[inline]
14121 pub fn expr(&self) -> Option<Expr> {
14122 support::child(&self.syntax)
14123 }
14124 #[inline]
14125 pub fn default_token(&self) -> Option<SyntaxToken> {
14126 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
14127 }
14128}
14129
14130#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14131pub struct SetExprList {
14132 pub(crate) syntax: SyntaxNode,
14133}
14134impl SetExprList {
14135 #[inline]
14136 pub fn set_exprs(&self) -> AstChildren<SetExpr> {
14137 support::children(&self.syntax)
14138 }
14139 #[inline]
14140 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
14141 support::token(&self.syntax, SyntaxKind::L_PAREN)
14142 }
14143 #[inline]
14144 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
14145 support::token(&self.syntax, SyntaxKind::R_PAREN)
14146 }
14147 #[inline]
14148 pub fn row_token(&self) -> Option<SyntaxToken> {
14149 support::token(&self.syntax, SyntaxKind::ROW_KW)
14150 }
14151}
14152
14153#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14154pub struct SetExpression {
14155 pub(crate) syntax: SyntaxNode,
14156}
14157impl SetExpression {
14158 #[inline]
14159 pub fn expr(&self) -> Option<Expr> {
14160 support::child(&self.syntax)
14161 }
14162 #[inline]
14163 pub fn expression_token(&self) -> Option<SyntaxToken> {
14164 support::token(&self.syntax, SyntaxKind::EXPRESSION_KW)
14165 }
14166 #[inline]
14167 pub fn set_token(&self) -> Option<SyntaxToken> {
14168 support::token(&self.syntax, SyntaxKind::SET_KW)
14169 }
14170}
14171
14172#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14173pub struct SetFuncOption {
14174 pub(crate) syntax: SyntaxNode,
14175}
14176impl SetFuncOption {
14177 #[inline]
14178 pub fn set_token(&self) -> Option<SyntaxToken> {
14179 support::token(&self.syntax, SyntaxKind::SET_KW)
14180 }
14181}
14182
14183#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14184pub struct SetGenerated {
14185 pub(crate) syntax: SyntaxNode,
14186}
14187impl SetGenerated {
14188 #[inline]
14189 pub fn set_token(&self) -> Option<SyntaxToken> {
14190 support::token(&self.syntax, SyntaxKind::SET_KW)
14191 }
14192}
14193
14194#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14195pub struct SetGeneratedOptions {
14196 pub(crate) syntax: SyntaxNode,
14197}
14198impl SetGeneratedOptions {
14199 #[inline]
14200 pub fn generated_token(&self) -> Option<SyntaxToken> {
14201 support::token(&self.syntax, SyntaxKind::GENERATED_KW)
14202 }
14203 #[inline]
14204 pub fn set_token(&self) -> Option<SyntaxToken> {
14205 support::token(&self.syntax, SyntaxKind::SET_KW)
14206 }
14207}
14208
14209#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14210pub struct SetLogged {
14211 pub(crate) syntax: SyntaxNode,
14212}
14213impl SetLogged {
14214 #[inline]
14215 pub fn logged_token(&self) -> Option<SyntaxToken> {
14216 support::token(&self.syntax, SyntaxKind::LOGGED_KW)
14217 }
14218 #[inline]
14219 pub fn set_token(&self) -> Option<SyntaxToken> {
14220 support::token(&self.syntax, SyntaxKind::SET_KW)
14221 }
14222}
14223
14224#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14225pub struct SetMultipleColumns {
14226 pub(crate) syntax: SyntaxNode,
14227}
14228impl SetMultipleColumns {
14229 #[inline]
14230 pub fn column_list(&self) -> Option<ColumnList> {
14231 support::child(&self.syntax)
14232 }
14233 #[inline]
14234 pub fn paren_select(&self) -> Option<ParenSelect> {
14235 support::child(&self.syntax)
14236 }
14237 #[inline]
14238 pub fn set_expr_list(&self) -> Option<SetExprList> {
14239 support::child(&self.syntax)
14240 }
14241 #[inline]
14242 pub fn eq_token(&self) -> Option<SyntaxToken> {
14243 support::token(&self.syntax, SyntaxKind::EQ)
14244 }
14245}
14246
14247#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14248pub struct SetNotNull {
14249 pub(crate) syntax: SyntaxNode,
14250}
14251impl SetNotNull {
14252 #[inline]
14253 pub fn not_token(&self) -> Option<SyntaxToken> {
14254 support::token(&self.syntax, SyntaxKind::NOT_KW)
14255 }
14256 #[inline]
14257 pub fn null_token(&self) -> Option<SyntaxToken> {
14258 support::token(&self.syntax, SyntaxKind::NULL_KW)
14259 }
14260 #[inline]
14261 pub fn set_token(&self) -> Option<SyntaxToken> {
14262 support::token(&self.syntax, SyntaxKind::SET_KW)
14263 }
14264}
14265
14266#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14267pub struct SetNullColumns {
14268 pub(crate) syntax: SyntaxNode,
14269}
14270impl SetNullColumns {
14271 #[inline]
14272 pub fn column_list(&self) -> Option<ColumnList> {
14273 support::child(&self.syntax)
14274 }
14275 #[inline]
14276 pub fn null_token(&self) -> Option<SyntaxToken> {
14277 support::token(&self.syntax, SyntaxKind::NULL_KW)
14278 }
14279 #[inline]
14280 pub fn set_token(&self) -> Option<SyntaxToken> {
14281 support::token(&self.syntax, SyntaxKind::SET_KW)
14282 }
14283}
14284
14285#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14286pub struct SetOptions {
14287 pub(crate) syntax: SyntaxNode,
14288}
14289impl SetOptions {
14290 #[inline]
14291 pub fn attribute_list(&self) -> Option<AttributeList> {
14292 support::child(&self.syntax)
14293 }
14294 #[inline]
14295 pub fn set_token(&self) -> Option<SyntaxToken> {
14296 support::token(&self.syntax, SyntaxKind::SET_KW)
14297 }
14298}
14299
14300#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14301pub struct SetOptionsList {
14302 pub(crate) syntax: SyntaxNode,
14303}
14304impl SetOptionsList {
14305 #[inline]
14306 pub fn alter_option_list(&self) -> Option<AlterOptionList> {
14307 support::child(&self.syntax)
14308 }
14309 #[inline]
14310 pub fn options_token(&self) -> Option<SyntaxToken> {
14311 support::token(&self.syntax, SyntaxKind::OPTIONS_KW)
14312 }
14313 #[inline]
14314 pub fn set_token(&self) -> Option<SyntaxToken> {
14315 support::token(&self.syntax, SyntaxKind::SET_KW)
14316 }
14317}
14318
14319#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14320pub struct SetRole {
14321 pub(crate) syntax: SyntaxNode,
14322}
14323impl SetRole {
14324 #[inline]
14325 pub fn role(&self) -> Option<Role> {
14326 support::child(&self.syntax)
14327 }
14328 #[inline]
14329 pub fn local_token(&self) -> Option<SyntaxToken> {
14330 support::token(&self.syntax, SyntaxKind::LOCAL_KW)
14331 }
14332 #[inline]
14333 pub fn none_token(&self) -> Option<SyntaxToken> {
14334 support::token(&self.syntax, SyntaxKind::NONE_KW)
14335 }
14336 #[inline]
14337 pub fn reset_token(&self) -> Option<SyntaxToken> {
14338 support::token(&self.syntax, SyntaxKind::RESET_KW)
14339 }
14340 #[inline]
14341 pub fn role_token(&self) -> Option<SyntaxToken> {
14342 support::token(&self.syntax, SyntaxKind::ROLE_KW)
14343 }
14344 #[inline]
14345 pub fn session_token(&self) -> Option<SyntaxToken> {
14346 support::token(&self.syntax, SyntaxKind::SESSION_KW)
14347 }
14348 #[inline]
14349 pub fn set_token(&self) -> Option<SyntaxToken> {
14350 support::token(&self.syntax, SyntaxKind::SET_KW)
14351 }
14352}
14353
14354#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14355pub struct SetSchema {
14356 pub(crate) syntax: SyntaxNode,
14357}
14358impl SetSchema {
14359 #[inline]
14360 pub fn name_ref(&self) -> Option<NameRef> {
14361 support::child(&self.syntax)
14362 }
14363 #[inline]
14364 pub fn schema_token(&self) -> Option<SyntaxToken> {
14365 support::token(&self.syntax, SyntaxKind::SCHEMA_KW)
14366 }
14367 #[inline]
14368 pub fn set_token(&self) -> Option<SyntaxToken> {
14369 support::token(&self.syntax, SyntaxKind::SET_KW)
14370 }
14371}
14372
14373#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14374pub struct SetSequenceOption {
14375 pub(crate) syntax: SyntaxNode,
14376}
14377impl SetSequenceOption {
14378 #[inline]
14379 pub fn set_token(&self) -> Option<SyntaxToken> {
14380 support::token(&self.syntax, SyntaxKind::SET_KW)
14381 }
14382}
14383
14384#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14385pub struct SetSessionAuth {
14386 pub(crate) syntax: SyntaxNode,
14387}
14388impl SetSessionAuth {
14389 #[inline]
14390 pub fn literal(&self) -> Option<Literal> {
14391 support::child(&self.syntax)
14392 }
14393 #[inline]
14394 pub fn role(&self) -> Option<Role> {
14395 support::child(&self.syntax)
14396 }
14397 #[inline]
14398 pub fn authorization_token(&self) -> Option<SyntaxToken> {
14399 support::token(&self.syntax, SyntaxKind::AUTHORIZATION_KW)
14400 }
14401 #[inline]
14402 pub fn default_token(&self) -> Option<SyntaxToken> {
14403 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
14404 }
14405 #[inline]
14406 pub fn local_token(&self) -> Option<SyntaxToken> {
14407 support::token(&self.syntax, SyntaxKind::LOCAL_KW)
14408 }
14409 #[inline]
14410 pub fn session_token(&self) -> Option<SyntaxToken> {
14411 support::token(&self.syntax, SyntaxKind::SESSION_KW)
14412 }
14413 #[inline]
14414 pub fn set_token(&self) -> Option<SyntaxToken> {
14415 support::token(&self.syntax, SyntaxKind::SET_KW)
14416 }
14417}
14418
14419#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14420pub struct SetSingleColumn {
14421 pub(crate) syntax: SyntaxNode,
14422}
14423impl SetSingleColumn {
14424 #[inline]
14425 pub fn column(&self) -> Option<Column> {
14426 support::child(&self.syntax)
14427 }
14428 #[inline]
14429 pub fn set_expr(&self) -> Option<SetExpr> {
14430 support::child(&self.syntax)
14431 }
14432 #[inline]
14433 pub fn eq_token(&self) -> Option<SyntaxToken> {
14434 support::token(&self.syntax, SyntaxKind::EQ)
14435 }
14436}
14437
14438#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14439pub struct SetStatistics {
14440 pub(crate) syntax: SyntaxNode,
14441}
14442impl SetStatistics {
14443 #[inline]
14444 pub fn set_token(&self) -> Option<SyntaxToken> {
14445 support::token(&self.syntax, SyntaxKind::SET_KW)
14446 }
14447 #[inline]
14448 pub fn statistics_token(&self) -> Option<SyntaxToken> {
14449 support::token(&self.syntax, SyntaxKind::STATISTICS_KW)
14450 }
14451}
14452
14453#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14454pub struct SetStorage {
14455 pub(crate) syntax: SyntaxNode,
14456}
14457impl SetStorage {
14458 #[inline]
14459 pub fn set_token(&self) -> Option<SyntaxToken> {
14460 support::token(&self.syntax, SyntaxKind::SET_KW)
14461 }
14462 #[inline]
14463 pub fn storage_token(&self) -> Option<SyntaxToken> {
14464 support::token(&self.syntax, SyntaxKind::STORAGE_KW)
14465 }
14466}
14467
14468#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14469pub struct SetTablespace {
14470 pub(crate) syntax: SyntaxNode,
14471}
14472impl SetTablespace {
14473 #[inline]
14474 pub fn path(&self) -> Option<Path> {
14475 support::child(&self.syntax)
14476 }
14477 #[inline]
14478 pub fn set_token(&self) -> Option<SyntaxToken> {
14479 support::token(&self.syntax, SyntaxKind::SET_KW)
14480 }
14481 #[inline]
14482 pub fn tablespace_token(&self) -> Option<SyntaxToken> {
14483 support::token(&self.syntax, SyntaxKind::TABLESPACE_KW)
14484 }
14485}
14486
14487#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14488pub struct SetTransaction {
14489 pub(crate) syntax: SyntaxNode,
14490}
14491impl SetTransaction {
14492 #[inline]
14493 pub fn literal(&self) -> Option<Literal> {
14494 support::child(&self.syntax)
14495 }
14496 #[inline]
14497 pub fn transaction_mode_list(&self) -> Option<TransactionModeList> {
14498 support::child(&self.syntax)
14499 }
14500 #[inline]
14501 pub fn as_token(&self) -> Option<SyntaxToken> {
14502 support::token(&self.syntax, SyntaxKind::AS_KW)
14503 }
14504 #[inline]
14505 pub fn characteristics_token(&self) -> Option<SyntaxToken> {
14506 support::token(&self.syntax, SyntaxKind::CHARACTERISTICS_KW)
14507 }
14508 #[inline]
14509 pub fn session_token(&self) -> Option<SyntaxToken> {
14510 support::token(&self.syntax, SyntaxKind::SESSION_KW)
14511 }
14512 #[inline]
14513 pub fn set_token(&self) -> Option<SyntaxToken> {
14514 support::token(&self.syntax, SyntaxKind::SET_KW)
14515 }
14516 #[inline]
14517 pub fn snapshot_token(&self) -> Option<SyntaxToken> {
14518 support::token(&self.syntax, SyntaxKind::SNAPSHOT_KW)
14519 }
14520 #[inline]
14521 pub fn transaction_token(&self) -> Option<SyntaxToken> {
14522 support::token(&self.syntax, SyntaxKind::TRANSACTION_KW)
14523 }
14524}
14525
14526#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14527pub struct SetType {
14528 pub(crate) syntax: SyntaxNode,
14529}
14530impl SetType {
14531 #[inline]
14532 pub fn collate(&self) -> Option<Collate> {
14533 support::child(&self.syntax)
14534 }
14535 #[inline]
14536 pub fn ty(&self) -> Option<Type> {
14537 support::child(&self.syntax)
14538 }
14539 #[inline]
14540 pub fn set_token(&self) -> Option<SyntaxToken> {
14541 support::token(&self.syntax, SyntaxKind::SET_KW)
14542 }
14543 #[inline]
14544 pub fn type_token(&self) -> Option<SyntaxToken> {
14545 support::token(&self.syntax, SyntaxKind::TYPE_KW)
14546 }
14547}
14548
14549#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14550pub struct SetUnlogged {
14551 pub(crate) syntax: SyntaxNode,
14552}
14553impl SetUnlogged {
14554 #[inline]
14555 pub fn set_token(&self) -> Option<SyntaxToken> {
14556 support::token(&self.syntax, SyntaxKind::SET_KW)
14557 }
14558 #[inline]
14559 pub fn unlogged_token(&self) -> Option<SyntaxToken> {
14560 support::token(&self.syntax, SyntaxKind::UNLOGGED_KW)
14561 }
14562}
14563
14564#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14565pub struct SetWithoutCluster {
14566 pub(crate) syntax: SyntaxNode,
14567}
14568impl SetWithoutCluster {
14569 #[inline]
14570 pub fn cluster_token(&self) -> Option<SyntaxToken> {
14571 support::token(&self.syntax, SyntaxKind::CLUSTER_KW)
14572 }
14573 #[inline]
14574 pub fn set_token(&self) -> Option<SyntaxToken> {
14575 support::token(&self.syntax, SyntaxKind::SET_KW)
14576 }
14577 #[inline]
14578 pub fn without_token(&self) -> Option<SyntaxToken> {
14579 support::token(&self.syntax, SyntaxKind::WITHOUT_KW)
14580 }
14581}
14582
14583#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14584pub struct SetWithoutOids {
14585 pub(crate) syntax: SyntaxNode,
14586}
14587impl SetWithoutOids {
14588 #[inline]
14589 pub fn oids_token(&self) -> Option<SyntaxToken> {
14590 support::token(&self.syntax, SyntaxKind::OIDS_KW)
14591 }
14592 #[inline]
14593 pub fn set_token(&self) -> Option<SyntaxToken> {
14594 support::token(&self.syntax, SyntaxKind::SET_KW)
14595 }
14596 #[inline]
14597 pub fn without_token(&self) -> Option<SyntaxToken> {
14598 support::token(&self.syntax, SyntaxKind::WITHOUT_KW)
14599 }
14600}
14601
14602#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14603pub struct Show {
14604 pub(crate) syntax: SyntaxNode,
14605}
14606impl Show {
14607 #[inline]
14608 pub fn show_token(&self) -> Option<SyntaxToken> {
14609 support::token(&self.syntax, SyntaxKind::SHOW_KW)
14610 }
14611}
14612
14613#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14614pub struct SimilarTo {
14615 pub(crate) syntax: SyntaxNode,
14616}
14617impl SimilarTo {
14618 #[inline]
14619 pub fn similar_token(&self) -> Option<SyntaxToken> {
14620 support::token(&self.syntax, SyntaxKind::SIMILAR_KW)
14621 }
14622 #[inline]
14623 pub fn to_token(&self) -> Option<SyntaxToken> {
14624 support::token(&self.syntax, SyntaxKind::TO_KW)
14625 }
14626}
14627
14628#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14629pub struct SliceExpr {
14630 pub(crate) syntax: SyntaxNode,
14631}
14632impl SliceExpr {
14633 #[inline]
14634 pub fn l_brack_token(&self) -> Option<SyntaxToken> {
14635 support::token(&self.syntax, SyntaxKind::L_BRACK)
14636 }
14637 #[inline]
14638 pub fn r_brack_token(&self) -> Option<SyntaxToken> {
14639 support::token(&self.syntax, SyntaxKind::R_BRACK)
14640 }
14641 #[inline]
14642 pub fn colon_token(&self) -> Option<SyntaxToken> {
14643 support::token(&self.syntax, SyntaxKind::COLON)
14644 }
14645}
14646
14647#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14648pub struct SomeFn {
14649 pub(crate) syntax: SyntaxNode,
14650}
14651impl SomeFn {
14652 #[inline]
14653 pub fn expr(&self) -> Option<Expr> {
14654 support::child(&self.syntax)
14655 }
14656 #[inline]
14657 pub fn select_variant(&self) -> Option<SelectVariant> {
14658 support::child(&self.syntax)
14659 }
14660 #[inline]
14661 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
14662 support::token(&self.syntax, SyntaxKind::L_PAREN)
14663 }
14664 #[inline]
14665 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
14666 support::token(&self.syntax, SyntaxKind::R_PAREN)
14667 }
14668 #[inline]
14669 pub fn some_token(&self) -> Option<SyntaxToken> {
14670 support::token(&self.syntax, SyntaxKind::SOME_KW)
14671 }
14672}
14673
14674#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14675pub struct SortAsc {
14676 pub(crate) syntax: SyntaxNode,
14677}
14678impl SortAsc {
14679 #[inline]
14680 pub fn asc_token(&self) -> Option<SyntaxToken> {
14681 support::token(&self.syntax, SyntaxKind::ASC_KW)
14682 }
14683}
14684
14685#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14686pub struct SortBy {
14687 pub(crate) syntax: SyntaxNode,
14688}
14689impl SortBy {
14690 #[inline]
14691 pub fn expr(&self) -> Option<Expr> {
14692 support::child(&self.syntax)
14693 }
14694 #[inline]
14695 pub fn nulls_first(&self) -> Option<NullsFirst> {
14696 support::child(&self.syntax)
14697 }
14698 #[inline]
14699 pub fn nulls_last(&self) -> Option<NullsLast> {
14700 support::child(&self.syntax)
14701 }
14702 #[inline]
14703 pub fn sort_asc(&self) -> Option<SortAsc> {
14704 support::child(&self.syntax)
14705 }
14706 #[inline]
14707 pub fn sort_desc(&self) -> Option<SortDesc> {
14708 support::child(&self.syntax)
14709 }
14710 #[inline]
14711 pub fn sort_using(&self) -> Option<SortUsing> {
14712 support::child(&self.syntax)
14713 }
14714}
14715
14716#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14717pub struct SortByList {
14718 pub(crate) syntax: SyntaxNode,
14719}
14720impl SortByList {
14721 #[inline]
14722 pub fn sort_bys(&self) -> AstChildren<SortBy> {
14723 support::children(&self.syntax)
14724 }
14725}
14726
14727#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14728pub struct SortDesc {
14729 pub(crate) syntax: SyntaxNode,
14730}
14731impl SortDesc {
14732 #[inline]
14733 pub fn desc_token(&self) -> Option<SyntaxToken> {
14734 support::token(&self.syntax, SyntaxKind::DESC_KW)
14735 }
14736}
14737
14738#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14739pub struct SortUsing {
14740 pub(crate) syntax: SyntaxNode,
14741}
14742impl SortUsing {
14743 #[inline]
14744 pub fn op(&self) -> Option<Op> {
14745 support::child(&self.syntax)
14746 }
14747 #[inline]
14748 pub fn using_token(&self) -> Option<SyntaxToken> {
14749 support::token(&self.syntax, SyntaxKind::USING_KW)
14750 }
14751}
14752
14753#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14754pub struct SourceFile {
14755 pub(crate) syntax: SyntaxNode,
14756}
14757impl SourceFile {
14758 #[inline]
14759 pub fn stmts(&self) -> AstChildren<Stmt> {
14760 support::children(&self.syntax)
14761 }
14762}
14763
14764#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14765pub struct SplitPartition {
14766 pub(crate) syntax: SyntaxNode,
14767}
14768impl SplitPartition {
14769 #[inline]
14770 pub fn partition_list(&self) -> Option<PartitionList> {
14771 support::child(&self.syntax)
14772 }
14773 #[inline]
14774 pub fn into_token(&self) -> Option<SyntaxToken> {
14775 support::token(&self.syntax, SyntaxKind::INTO_KW)
14776 }
14777 #[inline]
14778 pub fn partition_token(&self) -> Option<SyntaxToken> {
14779 support::token(&self.syntax, SyntaxKind::PARTITION_KW)
14780 }
14781 #[inline]
14782 pub fn split_token(&self) -> Option<SyntaxToken> {
14783 support::token(&self.syntax, SyntaxKind::SPLIT_KW)
14784 }
14785}
14786
14787#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14788pub struct Storage {
14789 pub(crate) syntax: SyntaxNode,
14790}
14791impl Storage {
14792 #[inline]
14793 pub fn default_token(&self) -> Option<SyntaxToken> {
14794 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
14795 }
14796 #[inline]
14797 pub fn external_token(&self) -> Option<SyntaxToken> {
14798 support::token(&self.syntax, SyntaxKind::EXTERNAL_KW)
14799 }
14800 #[inline]
14801 pub fn ident_token(&self) -> Option<SyntaxToken> {
14802 support::token(&self.syntax, SyntaxKind::IDENT)
14803 }
14804 #[inline]
14805 pub fn storage_token(&self) -> Option<SyntaxToken> {
14806 support::token(&self.syntax, SyntaxKind::STORAGE_KW)
14807 }
14808}
14809
14810#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14811pub struct StrictFuncOption {
14812 pub(crate) syntax: SyntaxNode,
14813}
14814impl StrictFuncOption {
14815 #[inline]
14816 pub fn called_token(&self) -> Option<SyntaxToken> {
14817 support::token(&self.syntax, SyntaxKind::CALLED_KW)
14818 }
14819 #[inline]
14820 pub fn input_token(&self) -> Option<SyntaxToken> {
14821 support::token(&self.syntax, SyntaxKind::INPUT_KW)
14822 }
14823 #[inline]
14824 pub fn null_token(&self) -> Option<SyntaxToken> {
14825 support::token(&self.syntax, SyntaxKind::NULL_KW)
14826 }
14827 #[inline]
14828 pub fn on_token(&self) -> Option<SyntaxToken> {
14829 support::token(&self.syntax, SyntaxKind::ON_KW)
14830 }
14831 #[inline]
14832 pub fn returns_token(&self) -> Option<SyntaxToken> {
14833 support::token(&self.syntax, SyntaxKind::RETURNS_KW)
14834 }
14835 #[inline]
14836 pub fn strict_token(&self) -> Option<SyntaxToken> {
14837 support::token(&self.syntax, SyntaxKind::STRICT_KW)
14838 }
14839}
14840
14841#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14842pub struct SubstringFn {
14843 pub(crate) syntax: SyntaxNode,
14844}
14845impl SubstringFn {
14846 #[inline]
14847 pub fn expr(&self) -> Option<Expr> {
14848 support::child(&self.syntax)
14849 }
14850 #[inline]
14851 pub fn exprs(&self) -> AstChildren<Expr> {
14852 support::children(&self.syntax)
14853 }
14854 #[inline]
14855 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
14856 support::token(&self.syntax, SyntaxKind::L_PAREN)
14857 }
14858 #[inline]
14859 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
14860 support::token(&self.syntax, SyntaxKind::R_PAREN)
14861 }
14862 #[inline]
14863 pub fn for_token(&self) -> Option<SyntaxToken> {
14864 support::token(&self.syntax, SyntaxKind::FOR_KW)
14865 }
14866 #[inline]
14867 pub fn from_token(&self) -> Option<SyntaxToken> {
14868 support::token(&self.syntax, SyntaxKind::FROM_KW)
14869 }
14870 #[inline]
14871 pub fn similar_token(&self) -> Option<SyntaxToken> {
14872 support::token(&self.syntax, SyntaxKind::SIMILAR_KW)
14873 }
14874 #[inline]
14875 pub fn substring_token(&self) -> Option<SyntaxToken> {
14876 support::token(&self.syntax, SyntaxKind::SUBSTRING_KW)
14877 }
14878}
14879
14880#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14881pub struct SupportFuncOption {
14882 pub(crate) syntax: SyntaxNode,
14883}
14884impl SupportFuncOption {
14885 #[inline]
14886 pub fn support_token(&self) -> Option<SyntaxToken> {
14887 support::token(&self.syntax, SyntaxKind::SUPPORT_KW)
14888 }
14889}
14890
14891#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14892pub struct Table {
14893 pub(crate) syntax: SyntaxNode,
14894}
14895impl Table {
14896 #[inline]
14897 pub fn relation_name(&self) -> Option<RelationName> {
14898 support::child(&self.syntax)
14899 }
14900 #[inline]
14901 pub fn table_token(&self) -> Option<SyntaxToken> {
14902 support::token(&self.syntax, SyntaxKind::TABLE_KW)
14903 }
14904}
14905
14906#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14907pub struct TableAndColumns {
14908 pub(crate) syntax: SyntaxNode,
14909}
14910impl TableAndColumns {
14911 #[inline]
14912 pub fn column_list(&self) -> Option<ColumnList> {
14913 support::child(&self.syntax)
14914 }
14915 #[inline]
14916 pub fn relation_name(&self) -> Option<RelationName> {
14917 support::child(&self.syntax)
14918 }
14919}
14920
14921#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14922pub struct TableAndColumnsList {
14923 pub(crate) syntax: SyntaxNode,
14924}
14925impl TableAndColumnsList {
14926 #[inline]
14927 pub fn table_and_columnss(&self) -> AstChildren<TableAndColumns> {
14928 support::children(&self.syntax)
14929 }
14930}
14931
14932#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14933pub struct TableArgList {
14934 pub(crate) syntax: SyntaxNode,
14935}
14936impl TableArgList {
14937 #[inline]
14938 pub fn args(&self) -> AstChildren<TableArg> {
14939 support::children(&self.syntax)
14940 }
14941 #[inline]
14942 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
14943 support::token(&self.syntax, SyntaxKind::L_PAREN)
14944 }
14945 #[inline]
14946 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
14947 support::token(&self.syntax, SyntaxKind::R_PAREN)
14948 }
14949}
14950
14951#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14952pub struct TableList {
14953 pub(crate) syntax: SyntaxNode,
14954}
14955impl TableList {
14956 #[inline]
14957 pub fn relation_names(&self) -> AstChildren<RelationName> {
14958 support::children(&self.syntax)
14959 }
14960}
14961
14962#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14963pub struct TablesampleClause {
14964 pub(crate) syntax: SyntaxNode,
14965}
14966impl TablesampleClause {
14967 #[inline]
14968 pub fn call_expr(&self) -> Option<CallExpr> {
14969 support::child(&self.syntax)
14970 }
14971 #[inline]
14972 pub fn repeatable_clause(&self) -> Option<RepeatableClause> {
14973 support::child(&self.syntax)
14974 }
14975 #[inline]
14976 pub fn tablesample_token(&self) -> Option<SyntaxToken> {
14977 support::token(&self.syntax, SyntaxKind::TABLESAMPLE_KW)
14978 }
14979}
14980
14981#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14982pub struct Tablespace {
14983 pub(crate) syntax: SyntaxNode,
14984}
14985impl Tablespace {
14986 #[inline]
14987 pub fn name_ref(&self) -> Option<NameRef> {
14988 support::child(&self.syntax)
14989 }
14990 #[inline]
14991 pub fn tablespace_token(&self) -> Option<SyntaxToken> {
14992 support::token(&self.syntax, SyntaxKind::TABLESPACE_KW)
14993 }
14994}
14995
14996#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14997pub struct Target {
14998 pub(crate) syntax: SyntaxNode,
14999}
15000impl Target {
15001 #[inline]
15002 pub fn as_name(&self) -> Option<AsName> {
15003 support::child(&self.syntax)
15004 }
15005 #[inline]
15006 pub fn expr(&self) -> Option<Expr> {
15007 support::child(&self.syntax)
15008 }
15009 #[inline]
15010 pub fn star_token(&self) -> Option<SyntaxToken> {
15011 support::token(&self.syntax, SyntaxKind::STAR)
15012 }
15013}
15014
15015#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15016pub struct TargetList {
15017 pub(crate) syntax: SyntaxNode,
15018}
15019impl TargetList {
15020 #[inline]
15021 pub fn targets(&self) -> AstChildren<Target> {
15022 support::children(&self.syntax)
15023 }
15024}
15025
15026#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15027pub struct TimeType {
15028 pub(crate) syntax: SyntaxNode,
15029}
15030impl TimeType {
15031 #[inline]
15032 pub fn literal(&self) -> Option<Literal> {
15033 support::child(&self.syntax)
15034 }
15035 #[inline]
15036 pub fn timezone(&self) -> Option<Timezone> {
15037 support::child(&self.syntax)
15038 }
15039 #[inline]
15040 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
15041 support::token(&self.syntax, SyntaxKind::L_PAREN)
15042 }
15043 #[inline]
15044 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
15045 support::token(&self.syntax, SyntaxKind::R_PAREN)
15046 }
15047 #[inline]
15048 pub fn time_token(&self) -> Option<SyntaxToken> {
15049 support::token(&self.syntax, SyntaxKind::TIME_KW)
15050 }
15051 #[inline]
15052 pub fn timestamp_token(&self) -> Option<SyntaxToken> {
15053 support::token(&self.syntax, SyntaxKind::TIMESTAMP_KW)
15054 }
15055}
15056
15057#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15058pub struct Timing {
15059 pub(crate) syntax: SyntaxNode,
15060}
15061impl Timing {
15062 #[inline]
15063 pub fn after_token(&self) -> Option<SyntaxToken> {
15064 support::token(&self.syntax, SyntaxKind::AFTER_KW)
15065 }
15066 #[inline]
15067 pub fn before_token(&self) -> Option<SyntaxToken> {
15068 support::token(&self.syntax, SyntaxKind::BEFORE_KW)
15069 }
15070 #[inline]
15071 pub fn instead_token(&self) -> Option<SyntaxToken> {
15072 support::token(&self.syntax, SyntaxKind::INSTEAD_KW)
15073 }
15074 #[inline]
15075 pub fn of_token(&self) -> Option<SyntaxToken> {
15076 support::token(&self.syntax, SyntaxKind::OF_KW)
15077 }
15078}
15079
15080#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15081pub struct TransactionModeList {
15082 pub(crate) syntax: SyntaxNode,
15083}
15084impl TransactionModeList {
15085 #[inline]
15086 pub fn transaction_modes(&self) -> AstChildren<TransactionMode> {
15087 support::children(&self.syntax)
15088 }
15089}
15090
15091#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15092pub struct TransformFromFunc {
15093 pub(crate) syntax: SyntaxNode,
15094}
15095impl TransformFromFunc {
15096 #[inline]
15097 pub fn function_sig(&self) -> Option<FunctionSig> {
15098 support::child(&self.syntax)
15099 }
15100 #[inline]
15101 pub fn from_token(&self) -> Option<SyntaxToken> {
15102 support::token(&self.syntax, SyntaxKind::FROM_KW)
15103 }
15104 #[inline]
15105 pub fn function_token(&self) -> Option<SyntaxToken> {
15106 support::token(&self.syntax, SyntaxKind::FUNCTION_KW)
15107 }
15108 #[inline]
15109 pub fn sql_token(&self) -> Option<SyntaxToken> {
15110 support::token(&self.syntax, SyntaxKind::SQL_KW)
15111 }
15112 #[inline]
15113 pub fn with_token(&self) -> Option<SyntaxToken> {
15114 support::token(&self.syntax, SyntaxKind::WITH_KW)
15115 }
15116}
15117
15118#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15119pub struct TransformFuncOption {
15120 pub(crate) syntax: SyntaxNode,
15121}
15122impl TransformFuncOption {
15123 #[inline]
15124 pub fn transform_token(&self) -> Option<SyntaxToken> {
15125 support::token(&self.syntax, SyntaxKind::TRANSFORM_KW)
15126 }
15127}
15128
15129#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15130pub struct TransformToFunc {
15131 pub(crate) syntax: SyntaxNode,
15132}
15133impl TransformToFunc {
15134 #[inline]
15135 pub fn function_sig(&self) -> Option<FunctionSig> {
15136 support::child(&self.syntax)
15137 }
15138 #[inline]
15139 pub fn function_token(&self) -> Option<SyntaxToken> {
15140 support::token(&self.syntax, SyntaxKind::FUNCTION_KW)
15141 }
15142 #[inline]
15143 pub fn sql_token(&self) -> Option<SyntaxToken> {
15144 support::token(&self.syntax, SyntaxKind::SQL_KW)
15145 }
15146 #[inline]
15147 pub fn to_token(&self) -> Option<SyntaxToken> {
15148 support::token(&self.syntax, SyntaxKind::TO_KW)
15149 }
15150 #[inline]
15151 pub fn with_token(&self) -> Option<SyntaxToken> {
15152 support::token(&self.syntax, SyntaxKind::WITH_KW)
15153 }
15154}
15155
15156#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15157pub struct TriggerEvent {
15158 pub(crate) syntax: SyntaxNode,
15159}
15160impl TriggerEvent {
15161 #[inline]
15162 pub fn trigger_event_update(&self) -> Option<TriggerEventUpdate> {
15163 support::child(&self.syntax)
15164 }
15165 #[inline]
15166 pub fn delete_token(&self) -> Option<SyntaxToken> {
15167 support::token(&self.syntax, SyntaxKind::DELETE_KW)
15168 }
15169 #[inline]
15170 pub fn insert_token(&self) -> Option<SyntaxToken> {
15171 support::token(&self.syntax, SyntaxKind::INSERT_KW)
15172 }
15173 #[inline]
15174 pub fn truncate_token(&self) -> Option<SyntaxToken> {
15175 support::token(&self.syntax, SyntaxKind::TRUNCATE_KW)
15176 }
15177}
15178
15179#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15180pub struct TriggerEventList {
15181 pub(crate) syntax: SyntaxNode,
15182}
15183impl TriggerEventList {
15184 #[inline]
15185 pub fn trigger_events(&self) -> AstChildren<TriggerEvent> {
15186 support::children(&self.syntax)
15187 }
15188}
15189
15190#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15191pub struct TriggerEventUpdate {
15192 pub(crate) syntax: SyntaxNode,
15193}
15194impl TriggerEventUpdate {
15195 #[inline]
15196 pub fn name_refs(&self) -> AstChildren<NameRef> {
15197 support::children(&self.syntax)
15198 }
15199 #[inline]
15200 pub fn of_token(&self) -> Option<SyntaxToken> {
15201 support::token(&self.syntax, SyntaxKind::OF_KW)
15202 }
15203 #[inline]
15204 pub fn update_token(&self) -> Option<SyntaxToken> {
15205 support::token(&self.syntax, SyntaxKind::UPDATE_KW)
15206 }
15207}
15208
15209#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15210pub struct TrimFn {
15211 pub(crate) syntax: SyntaxNode,
15212}
15213impl TrimFn {
15214 #[inline]
15215 pub fn expr(&self) -> Option<Expr> {
15216 support::child(&self.syntax)
15217 }
15218 #[inline]
15219 pub fn exprs(&self) -> AstChildren<Expr> {
15220 support::children(&self.syntax)
15221 }
15222 #[inline]
15223 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
15224 support::token(&self.syntax, SyntaxKind::L_PAREN)
15225 }
15226 #[inline]
15227 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
15228 support::token(&self.syntax, SyntaxKind::R_PAREN)
15229 }
15230 #[inline]
15231 pub fn from_token(&self) -> Option<SyntaxToken> {
15232 support::token(&self.syntax, SyntaxKind::FROM_KW)
15233 }
15234 #[inline]
15235 pub fn trim_token(&self) -> Option<SyntaxToken> {
15236 support::token(&self.syntax, SyntaxKind::TRIM_KW)
15237 }
15238}
15239
15240#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15241pub struct Truncate {
15242 pub(crate) syntax: SyntaxNode,
15243}
15244impl Truncate {
15245 #[inline]
15246 pub fn table_list(&self) -> Option<TableList> {
15247 support::child(&self.syntax)
15248 }
15249 #[inline]
15250 pub fn cascade_token(&self) -> Option<SyntaxToken> {
15251 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
15252 }
15253 #[inline]
15254 pub fn continue_token(&self) -> Option<SyntaxToken> {
15255 support::token(&self.syntax, SyntaxKind::CONTINUE_KW)
15256 }
15257 #[inline]
15258 pub fn identity_token(&self) -> Option<SyntaxToken> {
15259 support::token(&self.syntax, SyntaxKind::IDENTITY_KW)
15260 }
15261 #[inline]
15262 pub fn restart_token(&self) -> Option<SyntaxToken> {
15263 support::token(&self.syntax, SyntaxKind::RESTART_KW)
15264 }
15265 #[inline]
15266 pub fn restrict_token(&self) -> Option<SyntaxToken> {
15267 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
15268 }
15269 #[inline]
15270 pub fn table_token(&self) -> Option<SyntaxToken> {
15271 support::token(&self.syntax, SyntaxKind::TABLE_KW)
15272 }
15273 #[inline]
15274 pub fn truncate_token(&self) -> Option<SyntaxToken> {
15275 support::token(&self.syntax, SyntaxKind::TRUNCATE_KW)
15276 }
15277}
15278
15279#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15280pub struct TupleExpr {
15281 pub(crate) syntax: SyntaxNode,
15282}
15283impl TupleExpr {
15284 #[inline]
15285 pub fn exprs(&self) -> AstChildren<Expr> {
15286 support::children(&self.syntax)
15287 }
15288 #[inline]
15289 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
15290 support::token(&self.syntax, SyntaxKind::L_PAREN)
15291 }
15292 #[inline]
15293 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
15294 support::token(&self.syntax, SyntaxKind::R_PAREN)
15295 }
15296}
15297
15298#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15299pub struct UnicodeNormalForm {
15300 pub(crate) syntax: SyntaxNode,
15301}
15302impl UnicodeNormalForm {
15303 #[inline]
15304 pub fn nfc_token(&self) -> Option<SyntaxToken> {
15305 support::token(&self.syntax, SyntaxKind::NFC_KW)
15306 }
15307 #[inline]
15308 pub fn nfd_token(&self) -> Option<SyntaxToken> {
15309 support::token(&self.syntax, SyntaxKind::NFD_KW)
15310 }
15311 #[inline]
15312 pub fn nfkc_token(&self) -> Option<SyntaxToken> {
15313 support::token(&self.syntax, SyntaxKind::NFKC_KW)
15314 }
15315 #[inline]
15316 pub fn nfkd_token(&self) -> Option<SyntaxToken> {
15317 support::token(&self.syntax, SyntaxKind::NFKD_KW)
15318 }
15319}
15320
15321#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15322pub struct UniqueConstraint {
15323 pub(crate) syntax: SyntaxNode,
15324}
15325impl UniqueConstraint {
15326 #[inline]
15327 pub fn column_list(&self) -> Option<ColumnList> {
15328 support::child(&self.syntax)
15329 }
15330 #[inline]
15331 pub fn name(&self) -> Option<Name> {
15332 support::child(&self.syntax)
15333 }
15334 #[inline]
15335 pub fn nulls_distinct(&self) -> Option<NullsDistinct> {
15336 support::child(&self.syntax)
15337 }
15338 #[inline]
15339 pub fn nulls_not_distinct(&self) -> Option<NullsNotDistinct> {
15340 support::child(&self.syntax)
15341 }
15342 #[inline]
15343 pub fn using_index(&self) -> Option<UsingIndex> {
15344 support::child(&self.syntax)
15345 }
15346 #[inline]
15347 pub fn constraint_token(&self) -> Option<SyntaxToken> {
15348 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
15349 }
15350 #[inline]
15351 pub fn unique_token(&self) -> Option<SyntaxToken> {
15352 support::token(&self.syntax, SyntaxKind::UNIQUE_KW)
15353 }
15354}
15355
15356#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15357pub struct Unlisten {
15358 pub(crate) syntax: SyntaxNode,
15359}
15360impl Unlisten {
15361 #[inline]
15362 pub fn name_ref(&self) -> Option<NameRef> {
15363 support::child(&self.syntax)
15364 }
15365 #[inline]
15366 pub fn star_token(&self) -> Option<SyntaxToken> {
15367 support::token(&self.syntax, SyntaxKind::STAR)
15368 }
15369 #[inline]
15370 pub fn unlisten_token(&self) -> Option<SyntaxToken> {
15371 support::token(&self.syntax, SyntaxKind::UNLISTEN_KW)
15372 }
15373}
15374
15375#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15376pub struct Update {
15377 pub(crate) syntax: SyntaxNode,
15378}
15379impl Update {
15380 #[inline]
15381 pub fn alias(&self) -> Option<Alias> {
15382 support::child(&self.syntax)
15383 }
15384 #[inline]
15385 pub fn from_clause(&self) -> Option<FromClause> {
15386 support::child(&self.syntax)
15387 }
15388 #[inline]
15389 pub fn relation_name(&self) -> Option<RelationName> {
15390 support::child(&self.syntax)
15391 }
15392 #[inline]
15393 pub fn returning_clause(&self) -> Option<ReturningClause> {
15394 support::child(&self.syntax)
15395 }
15396 #[inline]
15397 pub fn set_clause(&self) -> Option<SetClause> {
15398 support::child(&self.syntax)
15399 }
15400 #[inline]
15401 pub fn where_clause(&self) -> Option<WhereClause> {
15402 support::child(&self.syntax)
15403 }
15404 #[inline]
15405 pub fn with_clause(&self) -> Option<WithClause> {
15406 support::child(&self.syntax)
15407 }
15408 #[inline]
15409 pub fn update_token(&self) -> Option<SyntaxToken> {
15410 support::token(&self.syntax, SyntaxKind::UPDATE_KW)
15411 }
15412}
15413
15414#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15415pub struct UsingClause {
15416 pub(crate) syntax: SyntaxNode,
15417}
15418impl UsingClause {
15419 #[inline]
15420 pub fn from_items(&self) -> AstChildren<FromItem> {
15421 support::children(&self.syntax)
15422 }
15423 #[inline]
15424 pub fn using_token(&self) -> Option<SyntaxToken> {
15425 support::token(&self.syntax, SyntaxKind::USING_KW)
15426 }
15427}
15428
15429#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15430pub struct UsingIndex {
15431 pub(crate) syntax: SyntaxNode,
15432}
15433impl UsingIndex {
15434 #[inline]
15435 pub fn name_ref(&self) -> Option<NameRef> {
15436 support::child(&self.syntax)
15437 }
15438 #[inline]
15439 pub fn index_token(&self) -> Option<SyntaxToken> {
15440 support::token(&self.syntax, SyntaxKind::INDEX_KW)
15441 }
15442 #[inline]
15443 pub fn using_token(&self) -> Option<SyntaxToken> {
15444 support::token(&self.syntax, SyntaxKind::USING_KW)
15445 }
15446}
15447
15448#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15449pub struct UsingMethod {
15450 pub(crate) syntax: SyntaxNode,
15451}
15452impl UsingMethod {
15453 #[inline]
15454 pub fn name_ref(&self) -> Option<NameRef> {
15455 support::child(&self.syntax)
15456 }
15457 #[inline]
15458 pub fn using_token(&self) -> Option<SyntaxToken> {
15459 support::token(&self.syntax, SyntaxKind::USING_KW)
15460 }
15461}
15462
15463#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15464pub struct UsingOnClause {
15465 pub(crate) syntax: SyntaxNode,
15466}
15467impl UsingOnClause {
15468 #[inline]
15469 pub fn from_item(&self) -> Option<FromItem> {
15470 support::child(&self.syntax)
15471 }
15472 #[inline]
15473 pub fn on_clause(&self) -> Option<OnClause> {
15474 support::child(&self.syntax)
15475 }
15476 #[inline]
15477 pub fn using_token(&self) -> Option<SyntaxToken> {
15478 support::token(&self.syntax, SyntaxKind::USING_KW)
15479 }
15480}
15481
15482#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15483pub struct Vacuum {
15484 pub(crate) syntax: SyntaxNode,
15485}
15486impl Vacuum {
15487 #[inline]
15488 pub fn table_and_columns_list(&self) -> Option<TableAndColumnsList> {
15489 support::child(&self.syntax)
15490 }
15491 #[inline]
15492 pub fn vacuum_option_list(&self) -> Option<VacuumOptionList> {
15493 support::child(&self.syntax)
15494 }
15495 #[inline]
15496 pub fn analyse_token(&self) -> Option<SyntaxToken> {
15497 support::token(&self.syntax, SyntaxKind::ANALYSE_KW)
15498 }
15499 #[inline]
15500 pub fn analyze_token(&self) -> Option<SyntaxToken> {
15501 support::token(&self.syntax, SyntaxKind::ANALYZE_KW)
15502 }
15503 #[inline]
15504 pub fn freeze_token(&self) -> Option<SyntaxToken> {
15505 support::token(&self.syntax, SyntaxKind::FREEZE_KW)
15506 }
15507 #[inline]
15508 pub fn full_token(&self) -> Option<SyntaxToken> {
15509 support::token(&self.syntax, SyntaxKind::FULL_KW)
15510 }
15511 #[inline]
15512 pub fn vacuum_token(&self) -> Option<SyntaxToken> {
15513 support::token(&self.syntax, SyntaxKind::VACUUM_KW)
15514 }
15515 #[inline]
15516 pub fn verbose_token(&self) -> Option<SyntaxToken> {
15517 support::token(&self.syntax, SyntaxKind::VERBOSE_KW)
15518 }
15519}
15520
15521#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15522pub struct VacuumOption {
15523 pub(crate) syntax: SyntaxNode,
15524}
15525impl VacuumOption {
15526 #[inline]
15527 pub fn literal(&self) -> Option<Literal> {
15528 support::child(&self.syntax)
15529 }
15530}
15531
15532#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15533pub struct VacuumOptionList {
15534 pub(crate) syntax: SyntaxNode,
15535}
15536impl VacuumOptionList {
15537 #[inline]
15538 pub fn vacuum_options(&self) -> AstChildren<VacuumOption> {
15539 support::children(&self.syntax)
15540 }
15541 #[inline]
15542 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
15543 support::token(&self.syntax, SyntaxKind::L_PAREN)
15544 }
15545 #[inline]
15546 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
15547 support::token(&self.syntax, SyntaxKind::R_PAREN)
15548 }
15549}
15550
15551#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15552pub struct ValidateConstraint {
15553 pub(crate) syntax: SyntaxNode,
15554}
15555impl ValidateConstraint {
15556 #[inline]
15557 pub fn name_ref(&self) -> Option<NameRef> {
15558 support::child(&self.syntax)
15559 }
15560 #[inline]
15561 pub fn constraint_token(&self) -> Option<SyntaxToken> {
15562 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
15563 }
15564 #[inline]
15565 pub fn validate_token(&self) -> Option<SyntaxToken> {
15566 support::token(&self.syntax, SyntaxKind::VALIDATE_KW)
15567 }
15568}
15569
15570#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15571pub struct Values {
15572 pub(crate) syntax: SyntaxNode,
15573}
15574impl Values {
15575 #[inline]
15576 pub fn row_list(&self) -> Option<RowList> {
15577 support::child(&self.syntax)
15578 }
15579 #[inline]
15580 pub fn values_token(&self) -> Option<SyntaxToken> {
15581 support::token(&self.syntax, SyntaxKind::VALUES_KW)
15582 }
15583}
15584
15585#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15586pub struct Variant {
15587 pub(crate) syntax: SyntaxNode,
15588}
15589impl Variant {
15590 #[inline]
15591 pub fn literal(&self) -> Option<Literal> {
15592 support::child(&self.syntax)
15593 }
15594}
15595
15596#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15597pub struct VariantList {
15598 pub(crate) syntax: SyntaxNode,
15599}
15600impl VariantList {
15601 #[inline]
15602 pub fn variants(&self) -> AstChildren<Variant> {
15603 support::children(&self.syntax)
15604 }
15605 #[inline]
15606 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
15607 support::token(&self.syntax, SyntaxKind::L_PAREN)
15608 }
15609 #[inline]
15610 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
15611 support::token(&self.syntax, SyntaxKind::R_PAREN)
15612 }
15613}
15614
15615#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15616pub struct VolatilityFuncOption {
15617 pub(crate) syntax: SyntaxNode,
15618}
15619impl VolatilityFuncOption {
15620 #[inline]
15621 pub fn immutable_token(&self) -> Option<SyntaxToken> {
15622 support::token(&self.syntax, SyntaxKind::IMMUTABLE_KW)
15623 }
15624 #[inline]
15625 pub fn stable_token(&self) -> Option<SyntaxToken> {
15626 support::token(&self.syntax, SyntaxKind::STABLE_KW)
15627 }
15628 #[inline]
15629 pub fn volatile_token(&self) -> Option<SyntaxToken> {
15630 support::token(&self.syntax, SyntaxKind::VOLATILE_KW)
15631 }
15632}
15633
15634#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15635pub struct WhenClause {
15636 pub(crate) syntax: SyntaxNode,
15637}
15638impl WhenClause {
15639 #[inline]
15640 pub fn then_token(&self) -> Option<SyntaxToken> {
15641 support::token(&self.syntax, SyntaxKind::THEN_KW)
15642 }
15643 #[inline]
15644 pub fn when_token(&self) -> Option<SyntaxToken> {
15645 support::token(&self.syntax, SyntaxKind::WHEN_KW)
15646 }
15647}
15648
15649#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15650pub struct WhenClauseList {
15651 pub(crate) syntax: SyntaxNode,
15652}
15653impl WhenClauseList {
15654 #[inline]
15655 pub fn when_clause(&self) -> Option<WhenClause> {
15656 support::child(&self.syntax)
15657 }
15658 #[inline]
15659 pub fn when_clauses(&self) -> AstChildren<WhenClause> {
15660 support::children(&self.syntax)
15661 }
15662}
15663
15664#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15665pub struct WhenCondition {
15666 pub(crate) syntax: SyntaxNode,
15667}
15668impl WhenCondition {
15669 #[inline]
15670 pub fn expr(&self) -> Option<Expr> {
15671 support::child(&self.syntax)
15672 }
15673 #[inline]
15674 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
15675 support::token(&self.syntax, SyntaxKind::L_PAREN)
15676 }
15677 #[inline]
15678 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
15679 support::token(&self.syntax, SyntaxKind::R_PAREN)
15680 }
15681 #[inline]
15682 pub fn when_token(&self) -> Option<SyntaxToken> {
15683 support::token(&self.syntax, SyntaxKind::WHEN_KW)
15684 }
15685}
15686
15687#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15688pub struct WhereClause {
15689 pub(crate) syntax: SyntaxNode,
15690}
15691impl WhereClause {
15692 #[inline]
15693 pub fn expr(&self) -> Option<Expr> {
15694 support::child(&self.syntax)
15695 }
15696 #[inline]
15697 pub fn where_token(&self) -> Option<SyntaxToken> {
15698 support::token(&self.syntax, SyntaxKind::WHERE_KW)
15699 }
15700}
15701
15702#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15703pub struct WhereConditionClause {
15704 pub(crate) syntax: SyntaxNode,
15705}
15706impl WhereConditionClause {
15707 #[inline]
15708 pub fn expr(&self) -> Option<Expr> {
15709 support::child(&self.syntax)
15710 }
15711 #[inline]
15712 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
15713 support::token(&self.syntax, SyntaxKind::L_PAREN)
15714 }
15715 #[inline]
15716 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
15717 support::token(&self.syntax, SyntaxKind::R_PAREN)
15718 }
15719 #[inline]
15720 pub fn where_token(&self) -> Option<SyntaxToken> {
15721 support::token(&self.syntax, SyntaxKind::WHERE_KW)
15722 }
15723}
15724
15725#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15726pub struct WhereCurrentOf {
15727 pub(crate) syntax: SyntaxNode,
15728}
15729impl WhereCurrentOf {
15730 #[inline]
15731 pub fn name_ref(&self) -> Option<NameRef> {
15732 support::child(&self.syntax)
15733 }
15734 #[inline]
15735 pub fn current_token(&self) -> Option<SyntaxToken> {
15736 support::token(&self.syntax, SyntaxKind::CURRENT_KW)
15737 }
15738 #[inline]
15739 pub fn of_token(&self) -> Option<SyntaxToken> {
15740 support::token(&self.syntax, SyntaxKind::OF_KW)
15741 }
15742 #[inline]
15743 pub fn where_token(&self) -> Option<SyntaxToken> {
15744 support::token(&self.syntax, SyntaxKind::WHERE_KW)
15745 }
15746}
15747
15748#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15749pub struct WindowClause {
15750 pub(crate) syntax: SyntaxNode,
15751}
15752impl WindowClause {
15753 #[inline]
15754 pub fn window_defs(&self) -> AstChildren<WindowDef> {
15755 support::children(&self.syntax)
15756 }
15757 #[inline]
15758 pub fn window_token(&self) -> Option<SyntaxToken> {
15759 support::token(&self.syntax, SyntaxKind::WINDOW_KW)
15760 }
15761}
15762
15763#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15764pub struct WindowDef {
15765 pub(crate) syntax: SyntaxNode,
15766}
15767impl WindowDef {
15768 #[inline]
15769 pub fn name(&self) -> Option<Name> {
15770 support::child(&self.syntax)
15771 }
15772 #[inline]
15773 pub fn window_spec(&self) -> Option<WindowSpec> {
15774 support::child(&self.syntax)
15775 }
15776 #[inline]
15777 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
15778 support::token(&self.syntax, SyntaxKind::L_PAREN)
15779 }
15780 #[inline]
15781 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
15782 support::token(&self.syntax, SyntaxKind::R_PAREN)
15783 }
15784 #[inline]
15785 pub fn as_token(&self) -> Option<SyntaxToken> {
15786 support::token(&self.syntax, SyntaxKind::AS_KW)
15787 }
15788}
15789
15790#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15791pub struct WindowFuncOption {
15792 pub(crate) syntax: SyntaxNode,
15793}
15794impl WindowFuncOption {
15795 #[inline]
15796 pub fn window_token(&self) -> Option<SyntaxToken> {
15797 support::token(&self.syntax, SyntaxKind::WINDOW_KW)
15798 }
15799}
15800
15801#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15802pub struct WindowSpec {
15803 pub(crate) syntax: SyntaxNode,
15804}
15805impl WindowSpec {
15806 #[inline]
15807 pub fn exprs(&self) -> AstChildren<Expr> {
15808 support::children(&self.syntax)
15809 }
15810 #[inline]
15811 pub fn frame_clause(&self) -> Option<FrameClause> {
15812 support::child(&self.syntax)
15813 }
15814 #[inline]
15815 pub fn order_by_clause(&self) -> Option<OrderByClause> {
15816 support::child(&self.syntax)
15817 }
15818 #[inline]
15819 pub fn by_token(&self) -> Option<SyntaxToken> {
15820 support::token(&self.syntax, SyntaxKind::BY_KW)
15821 }
15822 #[inline]
15823 pub fn ident_token(&self) -> Option<SyntaxToken> {
15824 support::token(&self.syntax, SyntaxKind::IDENT)
15825 }
15826 #[inline]
15827 pub fn partition_token(&self) -> Option<SyntaxToken> {
15828 support::token(&self.syntax, SyntaxKind::PARTITION_KW)
15829 }
15830}
15831
15832#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15833pub struct WithClause {
15834 pub(crate) syntax: SyntaxNode,
15835}
15836impl WithClause {
15837 #[inline]
15838 pub fn with_tables(&self) -> AstChildren<WithTable> {
15839 support::children(&self.syntax)
15840 }
15841 #[inline]
15842 pub fn recursive_token(&self) -> Option<SyntaxToken> {
15843 support::token(&self.syntax, SyntaxKind::RECURSIVE_KW)
15844 }
15845 #[inline]
15846 pub fn with_token(&self) -> Option<SyntaxToken> {
15847 support::token(&self.syntax, SyntaxKind::WITH_KW)
15848 }
15849}
15850
15851#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15852pub struct WithData {
15853 pub(crate) syntax: SyntaxNode,
15854}
15855impl WithData {
15856 #[inline]
15857 pub fn data_token(&self) -> Option<SyntaxToken> {
15858 support::token(&self.syntax, SyntaxKind::DATA_KW)
15859 }
15860 #[inline]
15861 pub fn with_token(&self) -> Option<SyntaxToken> {
15862 support::token(&self.syntax, SyntaxKind::WITH_KW)
15863 }
15864}
15865
15866#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15867pub struct WithNoData {
15868 pub(crate) syntax: SyntaxNode,
15869}
15870impl WithNoData {
15871 #[inline]
15872 pub fn data_token(&self) -> Option<SyntaxToken> {
15873 support::token(&self.syntax, SyntaxKind::DATA_KW)
15874 }
15875 #[inline]
15876 pub fn no_token(&self) -> Option<SyntaxToken> {
15877 support::token(&self.syntax, SyntaxKind::NO_KW)
15878 }
15879 #[inline]
15880 pub fn with_token(&self) -> Option<SyntaxToken> {
15881 support::token(&self.syntax, SyntaxKind::WITH_KW)
15882 }
15883}
15884
15885#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15886pub struct WithOptions {
15887 pub(crate) syntax: SyntaxNode,
15888}
15889impl WithOptions {
15890 #[inline]
15891 pub fn options_token(&self) -> Option<SyntaxToken> {
15892 support::token(&self.syntax, SyntaxKind::OPTIONS_KW)
15893 }
15894 #[inline]
15895 pub fn with_token(&self) -> Option<SyntaxToken> {
15896 support::token(&self.syntax, SyntaxKind::WITH_KW)
15897 }
15898}
15899
15900#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15901pub struct WithParams {
15902 pub(crate) syntax: SyntaxNode,
15903}
15904impl WithParams {
15905 #[inline]
15906 pub fn attribute_list(&self) -> Option<AttributeList> {
15907 support::child(&self.syntax)
15908 }
15909 #[inline]
15910 pub fn with_token(&self) -> Option<SyntaxToken> {
15911 support::token(&self.syntax, SyntaxKind::WITH_KW)
15912 }
15913}
15914
15915#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15916pub struct WithTable {
15917 pub(crate) syntax: SyntaxNode,
15918}
15919impl WithTable {
15920 #[inline]
15921 pub fn column_list(&self) -> Option<ColumnList> {
15922 support::child(&self.syntax)
15923 }
15924 #[inline]
15925 pub fn materialized(&self) -> Option<Materialized> {
15926 support::child(&self.syntax)
15927 }
15928 #[inline]
15929 pub fn name(&self) -> Option<Name> {
15930 support::child(&self.syntax)
15931 }
15932 #[inline]
15933 pub fn not_materialized(&self) -> Option<NotMaterialized> {
15934 support::child(&self.syntax)
15935 }
15936 #[inline]
15937 pub fn query(&self) -> Option<WithQuery> {
15938 support::child(&self.syntax)
15939 }
15940 #[inline]
15941 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
15942 support::token(&self.syntax, SyntaxKind::L_PAREN)
15943 }
15944 #[inline]
15945 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
15946 support::token(&self.syntax, SyntaxKind::R_PAREN)
15947 }
15948 #[inline]
15949 pub fn as_token(&self) -> Option<SyntaxToken> {
15950 support::token(&self.syntax, SyntaxKind::AS_KW)
15951 }
15952}
15953
15954#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15955pub struct WithTimezone {
15956 pub(crate) syntax: SyntaxNode,
15957}
15958impl WithTimezone {
15959 #[inline]
15960 pub fn time_token(&self) -> Option<SyntaxToken> {
15961 support::token(&self.syntax, SyntaxKind::TIME_KW)
15962 }
15963 #[inline]
15964 pub fn with_token(&self) -> Option<SyntaxToken> {
15965 support::token(&self.syntax, SyntaxKind::WITH_KW)
15966 }
15967 #[inline]
15968 pub fn zone_token(&self) -> Option<SyntaxToken> {
15969 support::token(&self.syntax, SyntaxKind::ZONE_KW)
15970 }
15971}
15972
15973#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15974pub struct WithinClause {
15975 pub(crate) syntax: SyntaxNode,
15976}
15977impl WithinClause {
15978 #[inline]
15979 pub fn order_by_clause(&self) -> Option<OrderByClause> {
15980 support::child(&self.syntax)
15981 }
15982 #[inline]
15983 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
15984 support::token(&self.syntax, SyntaxKind::L_PAREN)
15985 }
15986 #[inline]
15987 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
15988 support::token(&self.syntax, SyntaxKind::R_PAREN)
15989 }
15990 #[inline]
15991 pub fn group_token(&self) -> Option<SyntaxToken> {
15992 support::token(&self.syntax, SyntaxKind::GROUP_KW)
15993 }
15994 #[inline]
15995 pub fn within_token(&self) -> Option<SyntaxToken> {
15996 support::token(&self.syntax, SyntaxKind::WITHIN_KW)
15997 }
15998}
15999
16000#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16001pub struct WithoutOids {
16002 pub(crate) syntax: SyntaxNode,
16003}
16004impl WithoutOids {
16005 #[inline]
16006 pub fn oids_token(&self) -> Option<SyntaxToken> {
16007 support::token(&self.syntax, SyntaxKind::OIDS_KW)
16008 }
16009 #[inline]
16010 pub fn without_token(&self) -> Option<SyntaxToken> {
16011 support::token(&self.syntax, SyntaxKind::WITHOUT_KW)
16012 }
16013}
16014
16015#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16016pub struct WithoutTimezone {
16017 pub(crate) syntax: SyntaxNode,
16018}
16019impl WithoutTimezone {
16020 #[inline]
16021 pub fn time_token(&self) -> Option<SyntaxToken> {
16022 support::token(&self.syntax, SyntaxKind::TIME_KW)
16023 }
16024 #[inline]
16025 pub fn without_token(&self) -> Option<SyntaxToken> {
16026 support::token(&self.syntax, SyntaxKind::WITHOUT_KW)
16027 }
16028 #[inline]
16029 pub fn zone_token(&self) -> Option<SyntaxToken> {
16030 support::token(&self.syntax, SyntaxKind::ZONE_KW)
16031 }
16032}
16033
16034#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16035pub struct XmlAttributeList {
16036 pub(crate) syntax: SyntaxNode,
16037}
16038impl XmlAttributeList {
16039 #[inline]
16040 pub fn expr_as_names(&self) -> AstChildren<ExprAsName> {
16041 support::children(&self.syntax)
16042 }
16043}
16044
16045#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16046pub struct XmlColumnOption {
16047 pub(crate) syntax: SyntaxNode,
16048}
16049impl XmlColumnOption {
16050 #[inline]
16051 pub fn expr(&self) -> Option<Expr> {
16052 support::child(&self.syntax)
16053 }
16054 #[inline]
16055 pub fn default_token(&self) -> Option<SyntaxToken> {
16056 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
16057 }
16058 #[inline]
16059 pub fn ident_token(&self) -> Option<SyntaxToken> {
16060 support::token(&self.syntax, SyntaxKind::IDENT)
16061 }
16062 #[inline]
16063 pub fn not_token(&self) -> Option<SyntaxToken> {
16064 support::token(&self.syntax, SyntaxKind::NOT_KW)
16065 }
16066 #[inline]
16067 pub fn null_token(&self) -> Option<SyntaxToken> {
16068 support::token(&self.syntax, SyntaxKind::NULL_KW)
16069 }
16070 #[inline]
16071 pub fn path_token(&self) -> Option<SyntaxToken> {
16072 support::token(&self.syntax, SyntaxKind::PATH_KW)
16073 }
16074}
16075
16076#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16077pub struct XmlColumnOptionList {
16078 pub(crate) syntax: SyntaxNode,
16079}
16080impl XmlColumnOptionList {
16081 #[inline]
16082 pub fn xml_column_option(&self) -> Option<XmlColumnOption> {
16083 support::child(&self.syntax)
16084 }
16085 #[inline]
16086 pub fn xml_column_options(&self) -> AstChildren<XmlColumnOption> {
16087 support::children(&self.syntax)
16088 }
16089}
16090
16091#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16092pub struct XmlElementFn {
16093 pub(crate) syntax: SyntaxNode,
16094}
16095impl XmlElementFn {
16096 #[inline]
16097 pub fn exprs(&self) -> AstChildren<Expr> {
16098 support::children(&self.syntax)
16099 }
16100 #[inline]
16101 pub fn name(&self) -> Option<Name> {
16102 support::child(&self.syntax)
16103 }
16104 #[inline]
16105 pub fn xml_attribute_list(&self) -> Option<XmlAttributeList> {
16106 support::child(&self.syntax)
16107 }
16108 #[inline]
16109 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
16110 support::token(&self.syntax, SyntaxKind::L_PAREN)
16111 }
16112 #[inline]
16113 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
16114 support::token(&self.syntax, SyntaxKind::R_PAREN)
16115 }
16116 #[inline]
16117 pub fn comma_token(&self) -> Option<SyntaxToken> {
16118 support::token(&self.syntax, SyntaxKind::COMMA)
16119 }
16120 #[inline]
16121 pub fn name_token(&self) -> Option<SyntaxToken> {
16122 support::token(&self.syntax, SyntaxKind::NAME_KW)
16123 }
16124 #[inline]
16125 pub fn xmlattributes_token(&self) -> Option<SyntaxToken> {
16126 support::token(&self.syntax, SyntaxKind::XMLATTRIBUTES_KW)
16127 }
16128 #[inline]
16129 pub fn xmlelement_token(&self) -> Option<SyntaxToken> {
16130 support::token(&self.syntax, SyntaxKind::XMLELEMENT_KW)
16131 }
16132}
16133
16134#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16135pub struct XmlExistsFn {
16136 pub(crate) syntax: SyntaxNode,
16137}
16138impl XmlExistsFn {
16139 #[inline]
16140 pub fn expr(&self) -> Option<Expr> {
16141 support::child(&self.syntax)
16142 }
16143 #[inline]
16144 pub fn xml_passing_mech(&self) -> Option<XmlPassingMech> {
16145 support::child(&self.syntax)
16146 }
16147 #[inline]
16148 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
16149 support::token(&self.syntax, SyntaxKind::L_PAREN)
16150 }
16151 #[inline]
16152 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
16153 support::token(&self.syntax, SyntaxKind::R_PAREN)
16154 }
16155 #[inline]
16156 pub fn passing_token(&self) -> Option<SyntaxToken> {
16157 support::token(&self.syntax, SyntaxKind::PASSING_KW)
16158 }
16159 #[inline]
16160 pub fn xmlexists_token(&self) -> Option<SyntaxToken> {
16161 support::token(&self.syntax, SyntaxKind::XMLEXISTS_KW)
16162 }
16163}
16164
16165#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16166pub struct XmlForestFn {
16167 pub(crate) syntax: SyntaxNode,
16168}
16169impl XmlForestFn {
16170 #[inline]
16171 pub fn xml_attribute_list(&self) -> Option<XmlAttributeList> {
16172 support::child(&self.syntax)
16173 }
16174 #[inline]
16175 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
16176 support::token(&self.syntax, SyntaxKind::L_PAREN)
16177 }
16178 #[inline]
16179 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
16180 support::token(&self.syntax, SyntaxKind::R_PAREN)
16181 }
16182 #[inline]
16183 pub fn xmlforest_token(&self) -> Option<SyntaxToken> {
16184 support::token(&self.syntax, SyntaxKind::XMLFOREST_KW)
16185 }
16186}
16187
16188#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16189pub struct XmlNamespace {
16190 pub(crate) syntax: SyntaxNode,
16191}
16192impl XmlNamespace {
16193 #[inline]
16194 pub fn expr(&self) -> Option<Expr> {
16195 support::child(&self.syntax)
16196 }
16197 #[inline]
16198 pub fn name(&self) -> Option<Name> {
16199 support::child(&self.syntax)
16200 }
16201 #[inline]
16202 pub fn as_token(&self) -> Option<SyntaxToken> {
16203 support::token(&self.syntax, SyntaxKind::AS_KW)
16204 }
16205 #[inline]
16206 pub fn default_token(&self) -> Option<SyntaxToken> {
16207 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
16208 }
16209}
16210
16211#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16212pub struct XmlNamespaceList {
16213 pub(crate) syntax: SyntaxNode,
16214}
16215impl XmlNamespaceList {
16216 #[inline]
16217 pub fn xml_namespaces(&self) -> AstChildren<XmlNamespace> {
16218 support::children(&self.syntax)
16219 }
16220 #[inline]
16221 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
16222 support::token(&self.syntax, SyntaxKind::L_PAREN)
16223 }
16224 #[inline]
16225 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
16226 support::token(&self.syntax, SyntaxKind::R_PAREN)
16227 }
16228}
16229
16230#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16231pub struct XmlParseFn {
16232 pub(crate) syntax: SyntaxNode,
16233}
16234impl XmlParseFn {
16235 #[inline]
16236 pub fn expr(&self) -> Option<Expr> {
16237 support::child(&self.syntax)
16238 }
16239 #[inline]
16240 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
16241 support::token(&self.syntax, SyntaxKind::L_PAREN)
16242 }
16243 #[inline]
16244 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
16245 support::token(&self.syntax, SyntaxKind::R_PAREN)
16246 }
16247 #[inline]
16248 pub fn content_token(&self) -> Option<SyntaxToken> {
16249 support::token(&self.syntax, SyntaxKind::CONTENT_KW)
16250 }
16251 #[inline]
16252 pub fn document_token(&self) -> Option<SyntaxToken> {
16253 support::token(&self.syntax, SyntaxKind::DOCUMENT_KW)
16254 }
16255 #[inline]
16256 pub fn preserve_token(&self) -> Option<SyntaxToken> {
16257 support::token(&self.syntax, SyntaxKind::PRESERVE_KW)
16258 }
16259 #[inline]
16260 pub fn strip_token(&self) -> Option<SyntaxToken> {
16261 support::token(&self.syntax, SyntaxKind::STRIP_KW)
16262 }
16263 #[inline]
16264 pub fn whitespace_token(&self) -> Option<SyntaxToken> {
16265 support::token(&self.syntax, SyntaxKind::WHITESPACE_KW)
16266 }
16267 #[inline]
16268 pub fn xmlparse_token(&self) -> Option<SyntaxToken> {
16269 support::token(&self.syntax, SyntaxKind::XMLPARSE_KW)
16270 }
16271}
16272
16273#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16274pub struct XmlPassingMech {
16275 pub(crate) syntax: SyntaxNode,
16276}
16277impl XmlPassingMech {
16278 #[inline]
16279 pub fn by_token(&self) -> Option<SyntaxToken> {
16280 support::token(&self.syntax, SyntaxKind::BY_KW)
16281 }
16282 #[inline]
16283 pub fn ref_token(&self) -> Option<SyntaxToken> {
16284 support::token(&self.syntax, SyntaxKind::REF_KW)
16285 }
16286 #[inline]
16287 pub fn value_token(&self) -> Option<SyntaxToken> {
16288 support::token(&self.syntax, SyntaxKind::VALUE_KW)
16289 }
16290}
16291
16292#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16293pub struct XmlPiFn {
16294 pub(crate) syntax: SyntaxNode,
16295}
16296impl XmlPiFn {
16297 #[inline]
16298 pub fn expr(&self) -> Option<Expr> {
16299 support::child(&self.syntax)
16300 }
16301 #[inline]
16302 pub fn name(&self) -> Option<Name> {
16303 support::child(&self.syntax)
16304 }
16305 #[inline]
16306 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
16307 support::token(&self.syntax, SyntaxKind::L_PAREN)
16308 }
16309 #[inline]
16310 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
16311 support::token(&self.syntax, SyntaxKind::R_PAREN)
16312 }
16313 #[inline]
16314 pub fn comma_token(&self) -> Option<SyntaxToken> {
16315 support::token(&self.syntax, SyntaxKind::COMMA)
16316 }
16317 #[inline]
16318 pub fn name_token(&self) -> Option<SyntaxToken> {
16319 support::token(&self.syntax, SyntaxKind::NAME_KW)
16320 }
16321 #[inline]
16322 pub fn xmlpi_token(&self) -> Option<SyntaxToken> {
16323 support::token(&self.syntax, SyntaxKind::XMLPI_KW)
16324 }
16325}
16326
16327#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16328pub struct XmlRootFn {
16329 pub(crate) syntax: SyntaxNode,
16330}
16331impl XmlRootFn {
16332 #[inline]
16333 pub fn expr(&self) -> Option<Expr> {
16334 support::child(&self.syntax)
16335 }
16336 #[inline]
16337 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
16338 support::token(&self.syntax, SyntaxKind::L_PAREN)
16339 }
16340 #[inline]
16341 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
16342 support::token(&self.syntax, SyntaxKind::R_PAREN)
16343 }
16344 #[inline]
16345 pub fn comma_token(&self) -> Option<SyntaxToken> {
16346 support::token(&self.syntax, SyntaxKind::COMMA)
16347 }
16348 #[inline]
16349 pub fn no_token(&self) -> Option<SyntaxToken> {
16350 support::token(&self.syntax, SyntaxKind::NO_KW)
16351 }
16352 #[inline]
16353 pub fn standalone_token(&self) -> Option<SyntaxToken> {
16354 support::token(&self.syntax, SyntaxKind::STANDALONE_KW)
16355 }
16356 #[inline]
16357 pub fn value_token(&self) -> Option<SyntaxToken> {
16358 support::token(&self.syntax, SyntaxKind::VALUE_KW)
16359 }
16360 #[inline]
16361 pub fn version_token(&self) -> Option<SyntaxToken> {
16362 support::token(&self.syntax, SyntaxKind::VERSION_KW)
16363 }
16364 #[inline]
16365 pub fn xmlroot_token(&self) -> Option<SyntaxToken> {
16366 support::token(&self.syntax, SyntaxKind::XMLROOT_KW)
16367 }
16368 #[inline]
16369 pub fn yes_token(&self) -> Option<SyntaxToken> {
16370 support::token(&self.syntax, SyntaxKind::YES_KW)
16371 }
16372}
16373
16374#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16375pub struct XmlRowPassingClause {
16376 pub(crate) syntax: SyntaxNode,
16377}
16378impl XmlRowPassingClause {
16379 #[inline]
16380 pub fn expr(&self) -> Option<Expr> {
16381 support::child(&self.syntax)
16382 }
16383 #[inline]
16384 pub fn xml_passing_mech(&self) -> Option<XmlPassingMech> {
16385 support::child(&self.syntax)
16386 }
16387 #[inline]
16388 pub fn passing_token(&self) -> Option<SyntaxToken> {
16389 support::token(&self.syntax, SyntaxKind::PASSING_KW)
16390 }
16391}
16392
16393#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16394pub struct XmlSerializeFn {
16395 pub(crate) syntax: SyntaxNode,
16396}
16397impl XmlSerializeFn {
16398 #[inline]
16399 pub fn expr(&self) -> Option<Expr> {
16400 support::child(&self.syntax)
16401 }
16402 #[inline]
16403 pub fn ty(&self) -> Option<Type> {
16404 support::child(&self.syntax)
16405 }
16406 #[inline]
16407 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
16408 support::token(&self.syntax, SyntaxKind::L_PAREN)
16409 }
16410 #[inline]
16411 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
16412 support::token(&self.syntax, SyntaxKind::R_PAREN)
16413 }
16414 #[inline]
16415 pub fn as_token(&self) -> Option<SyntaxToken> {
16416 support::token(&self.syntax, SyntaxKind::AS_KW)
16417 }
16418 #[inline]
16419 pub fn content_token(&self) -> Option<SyntaxToken> {
16420 support::token(&self.syntax, SyntaxKind::CONTENT_KW)
16421 }
16422 #[inline]
16423 pub fn document_token(&self) -> Option<SyntaxToken> {
16424 support::token(&self.syntax, SyntaxKind::DOCUMENT_KW)
16425 }
16426 #[inline]
16427 pub fn ident_token(&self) -> Option<SyntaxToken> {
16428 support::token(&self.syntax, SyntaxKind::IDENT)
16429 }
16430 #[inline]
16431 pub fn no_token(&self) -> Option<SyntaxToken> {
16432 support::token(&self.syntax, SyntaxKind::NO_KW)
16433 }
16434 #[inline]
16435 pub fn xmlserialize_token(&self) -> Option<SyntaxToken> {
16436 support::token(&self.syntax, SyntaxKind::XMLSERIALIZE_KW)
16437 }
16438}
16439
16440#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16441pub struct XmlTable {
16442 pub(crate) syntax: SyntaxNode,
16443}
16444impl XmlTable {
16445 #[inline]
16446 pub fn xml_namespace_list(&self) -> Option<XmlNamespaceList> {
16447 support::child(&self.syntax)
16448 }
16449 #[inline]
16450 pub fn xml_row_passing_clause(&self) -> Option<XmlRowPassingClause> {
16451 support::child(&self.syntax)
16452 }
16453 #[inline]
16454 pub fn xml_table_column_list(&self) -> Option<XmlTableColumnList> {
16455 support::child(&self.syntax)
16456 }
16457 #[inline]
16458 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
16459 support::token(&self.syntax, SyntaxKind::L_PAREN)
16460 }
16461 #[inline]
16462 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
16463 support::token(&self.syntax, SyntaxKind::R_PAREN)
16464 }
16465 #[inline]
16466 pub fn comma_token(&self) -> Option<SyntaxToken> {
16467 support::token(&self.syntax, SyntaxKind::COMMA)
16468 }
16469 #[inline]
16470 pub fn xmlnamespaces_token(&self) -> Option<SyntaxToken> {
16471 support::token(&self.syntax, SyntaxKind::XMLNAMESPACES_KW)
16472 }
16473 #[inline]
16474 pub fn xmltable_token(&self) -> Option<SyntaxToken> {
16475 support::token(&self.syntax, SyntaxKind::XMLTABLE_KW)
16476 }
16477}
16478
16479#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16480pub struct XmlTableColumn {
16481 pub(crate) syntax: SyntaxNode,
16482}
16483impl XmlTableColumn {
16484 #[inline]
16485 pub fn name(&self) -> Option<Name> {
16486 support::child(&self.syntax)
16487 }
16488 #[inline]
16489 pub fn ty(&self) -> Option<Type> {
16490 support::child(&self.syntax)
16491 }
16492 #[inline]
16493 pub fn xml_column_option_list(&self) -> Option<XmlColumnOptionList> {
16494 support::child(&self.syntax)
16495 }
16496 #[inline]
16497 pub fn for_token(&self) -> Option<SyntaxToken> {
16498 support::token(&self.syntax, SyntaxKind::FOR_KW)
16499 }
16500 #[inline]
16501 pub fn ordinality_token(&self) -> Option<SyntaxToken> {
16502 support::token(&self.syntax, SyntaxKind::ORDINALITY_KW)
16503 }
16504}
16505
16506#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16507pub struct XmlTableColumnList {
16508 pub(crate) syntax: SyntaxNode,
16509}
16510impl XmlTableColumnList {
16511 #[inline]
16512 pub fn xml_table_columns(&self) -> AstChildren<XmlTableColumn> {
16513 support::children(&self.syntax)
16514 }
16515}
16516
16517#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16518pub enum AlterColumnOption {
16519 AddGenerated(AddGenerated),
16520 DropDefault(DropDefault),
16521 DropExpression(DropExpression),
16522 DropIdentity(DropIdentity),
16523 DropNotNull(DropNotNull),
16524 ResetOptions(ResetOptions),
16525 Restart(Restart),
16526 SetCompression(SetCompression),
16527 SetDefault(SetDefault),
16528 SetExpression(SetExpression),
16529 SetGenerated(SetGenerated),
16530 SetGeneratedOptions(SetGeneratedOptions),
16531 SetNotNull(SetNotNull),
16532 SetOptions(SetOptions),
16533 SetOptionsList(SetOptionsList),
16534 SetSequenceOption(SetSequenceOption),
16535 SetStatistics(SetStatistics),
16536 SetStorage(SetStorage),
16537 SetType(SetType),
16538}
16539
16540#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16541pub enum AlterDomainAction {
16542 AddConstraint(AddConstraint),
16543 DropConstraint(DropConstraint),
16544 DropDefault(DropDefault),
16545 DropNotNull(DropNotNull),
16546 OwnerTo(OwnerTo),
16547 RenameConstraint(RenameConstraint),
16548 RenameTo(RenameTo),
16549 SetDefault(SetDefault),
16550 SetNotNull(SetNotNull),
16551 SetSchema(SetSchema),
16552 ValidateConstraint(ValidateConstraint),
16553}
16554
16555#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16556pub enum AlterMaterializedViewAction {
16557 DependsOnExtension(DependsOnExtension),
16558 NoDependsOnExtension(NoDependsOnExtension),
16559 RenameColumn(RenameColumn),
16560 RenameTo(RenameTo),
16561 SetSchema(SetSchema),
16562 AlterTableAction(AlterTableAction),
16563}
16564
16565#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16566pub enum AlterTableAction {
16567 AddColumn(AddColumn),
16568 AddConstraint(AddConstraint),
16569 AlterColumn(AlterColumn),
16570 AlterConstraint(AlterConstraint),
16571 AttachPartition(AttachPartition),
16572 ClusterOn(ClusterOn),
16573 DetachPartition(DetachPartition),
16574 DisableRls(DisableRls),
16575 DisableRule(DisableRule),
16576 DisableTrigger(DisableTrigger),
16577 DropColumn(DropColumn),
16578 DropConstraint(DropConstraint),
16579 EnableAlwaysRule(EnableAlwaysRule),
16580 EnableAlwaysTrigger(EnableAlwaysTrigger),
16581 EnableReplicaRule(EnableReplicaRule),
16582 EnableReplicaTrigger(EnableReplicaTrigger),
16583 EnableRls(EnableRls),
16584 EnableRule(EnableRule),
16585 EnableTrigger(EnableTrigger),
16586 ForceRls(ForceRls),
16587 InheritTable(InheritTable),
16588 MergePartitions(MergePartitions),
16589 NoForceRls(NoForceRls),
16590 NoInheritTable(NoInheritTable),
16591 NotOf(NotOf),
16592 OfType(OfType),
16593 OptionItemList(OptionItemList),
16594 OwnerTo(OwnerTo),
16595 RenameColumn(RenameColumn),
16596 RenameConstraint(RenameConstraint),
16597 RenameTo(RenameTo),
16598 ReplicaIdentity(ReplicaIdentity),
16599 ResetOptions(ResetOptions),
16600 SetAccessMethod(SetAccessMethod),
16601 SetLogged(SetLogged),
16602 SetOptions(SetOptions),
16603 SetSchema(SetSchema),
16604 SetTablespace(SetTablespace),
16605 SetUnlogged(SetUnlogged),
16606 SetWithoutCluster(SetWithoutCluster),
16607 SetWithoutOids(SetWithoutOids),
16608 SplitPartition(SplitPartition),
16609 ValidateConstraint(ValidateConstraint),
16610}
16611
16612#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16613pub enum ColumnConstraint {
16614 CheckConstraint(CheckConstraint),
16615 DefaultConstraint(DefaultConstraint),
16616 ExcludeConstraint(ExcludeConstraint),
16617 NotNullConstraint(NotNullConstraint),
16618 PrimaryKeyConstraint(PrimaryKeyConstraint),
16619 ReferencesConstraint(ReferencesConstraint),
16620 UniqueConstraint(UniqueConstraint),
16621}
16622
16623#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16624pub enum ConfigValue {
16625 Literal(Literal),
16626 NameRef(NameRef),
16627}
16628
16629#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16630pub enum ConflictAction {
16631 ConflictDoNothing(ConflictDoNothing),
16632 ConflictDoUpdateSet(ConflictDoUpdateSet),
16633}
16634
16635#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16636pub enum ConflictTarget {
16637 ConflictOnConstraint(ConflictOnConstraint),
16638 ConflictOnIndex(ConflictOnIndex),
16639}
16640
16641#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16642pub enum Constraint {
16643 CheckConstraint(CheckConstraint),
16644 DefaultConstraint(DefaultConstraint),
16645 ForeignKeyConstraint(ForeignKeyConstraint),
16646 GeneratedConstraint(GeneratedConstraint),
16647 NotNullConstraint(NotNullConstraint),
16648 NullConstraint(NullConstraint),
16649 PrimaryKeyConstraint(PrimaryKeyConstraint),
16650 ReferencesConstraint(ReferencesConstraint),
16651 UniqueConstraint(UniqueConstraint),
16652}
16653
16654#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16655pub enum ExplainStmt {
16656 CompoundSelect(CompoundSelect),
16657 CreateMaterializedView(CreateMaterializedView),
16658 CreateTableAs(CreateTableAs),
16659 Declare(Declare),
16660 Delete(Delete),
16661 Execute(Execute),
16662 Insert(Insert),
16663 Merge(Merge),
16664 ParenSelect(ParenSelect),
16665 Select(Select),
16666 SelectInto(SelectInto),
16667 Table(Table),
16668 Update(Update),
16669 Values(Values),
16670}
16671
16672#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16673pub enum Expr {
16674 ArrayExpr(ArrayExpr),
16675 BetweenExpr(BetweenExpr),
16676 BinExpr(BinExpr),
16677 CallExpr(CallExpr),
16678 CaseExpr(CaseExpr),
16679 CastExpr(CastExpr),
16680 FieldExpr(FieldExpr),
16681 IndexExpr(IndexExpr),
16682 Literal(Literal),
16683 NameRef(NameRef),
16684 ParenExpr(ParenExpr),
16685 PostfixExpr(PostfixExpr),
16686 PrefixExpr(PrefixExpr),
16687 SliceExpr(SliceExpr),
16688 TupleExpr(TupleExpr),
16689}
16690
16691#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16692pub enum FuncOption {
16693 AsFuncOption(AsFuncOption),
16694 BeginFuncOptionList(BeginFuncOptionList),
16695 CostFuncOption(CostFuncOption),
16696 LanguageFuncOption(LanguageFuncOption),
16697 LeakproofFuncOption(LeakproofFuncOption),
16698 ParallelFuncOption(ParallelFuncOption),
16699 ResetFuncOption(ResetFuncOption),
16700 ReturnFuncOption(ReturnFuncOption),
16701 RowsFuncOption(RowsFuncOption),
16702 SecurityFuncOption(SecurityFuncOption),
16703 SetFuncOption(SetFuncOption),
16704 StrictFuncOption(StrictFuncOption),
16705 SupportFuncOption(SupportFuncOption),
16706 TransformFuncOption(TransformFuncOption),
16707 VolatilityFuncOption(VolatilityFuncOption),
16708 WindowFuncOption(WindowFuncOption),
16709}
16710
16711#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16712pub enum GroupBy {
16713 GroupingCube(GroupingCube),
16714 GroupingExpr(GroupingExpr),
16715 GroupingRollup(GroupingRollup),
16716 GroupingSets(GroupingSets),
16717}
16718
16719#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16720pub enum JoinType {
16721 JoinCross(JoinCross),
16722 JoinFull(JoinFull),
16723 JoinInner(JoinInner),
16724 JoinLeft(JoinLeft),
16725 JoinRight(JoinRight),
16726}
16727
16728#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16729pub enum JsonBehavior {
16730 JsonBehaviorDefault(JsonBehaviorDefault),
16731 JsonBehaviorEmptyArray(JsonBehaviorEmptyArray),
16732 JsonBehaviorEmptyObject(JsonBehaviorEmptyObject),
16733 JsonBehaviorError(JsonBehaviorError),
16734 JsonBehaviorFalse(JsonBehaviorFalse),
16735 JsonBehaviorNull(JsonBehaviorNull),
16736 JsonBehaviorTrue(JsonBehaviorTrue),
16737 JsonBehaviorUnknown(JsonBehaviorUnknown),
16738}
16739
16740#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16741pub enum MatchType {
16742 MatchFull(MatchFull),
16743 MatchPartial(MatchPartial),
16744 MatchSimple(MatchSimple),
16745}
16746
16747#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16748pub enum MergeAction {
16749 MergeDelete(MergeDelete),
16750 MergeDoNothing(MergeDoNothing),
16751 MergeInsert(MergeInsert),
16752 MergeUpdate(MergeUpdate),
16753}
16754
16755#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16756pub enum MergeWhenClause {
16757 MergeWhenMatched(MergeWhenMatched),
16758 MergeWhenNotMatchedSource(MergeWhenNotMatchedSource),
16759 MergeWhenNotMatchedTarget(MergeWhenNotMatchedTarget),
16760}
16761
16762#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16763pub enum OnCommitAction {
16764 DeleteRows(DeleteRows),
16765 Drop(Drop),
16766 PreserveRows(PreserveRows),
16767}
16768
16769#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16770pub enum ParamMode {
16771 ParamIn(ParamIn),
16772 ParamInOut(ParamInOut),
16773 ParamOut(ParamOut),
16774 ParamVariadic(ParamVariadic),
16775}
16776
16777#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16778pub enum PartitionType {
16779 PartitionDefault(PartitionDefault),
16780 PartitionForValuesFrom(PartitionForValuesFrom),
16781 PartitionForValuesIn(PartitionForValuesIn),
16782 PartitionForValuesWith(PartitionForValuesWith),
16783}
16784
16785#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16786pub enum PreparableStmt {
16787 CompoundSelect(CompoundSelect),
16788 Delete(Delete),
16789 Insert(Insert),
16790 Merge(Merge),
16791 Select(Select),
16792 SelectInto(SelectInto),
16793 Table(Table),
16794 Update(Update),
16795 Values(Values),
16796}
16797
16798#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16799pub enum RefAction {
16800 Cascade(Cascade),
16801 NoAction(NoAction),
16802 Restrict(Restrict),
16803 SetDefaultColumns(SetDefaultColumns),
16804 SetNullColumns(SetNullColumns),
16805}
16806
16807#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16808pub enum SchemaElement {
16809 CreateIndex(CreateIndex),
16810 CreateSequence(CreateSequence),
16811 CreateTable(CreateTable),
16812 CreateTrigger(CreateTrigger),
16813 CreateView(CreateView),
16814 Grant(Grant),
16815}
16816
16817#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16818pub enum SelectVariant {
16819 CompoundSelect(CompoundSelect),
16820 ParenSelect(ParenSelect),
16821 Select(Select),
16822 SelectInto(SelectInto),
16823 Table(Table),
16824 Values(Values),
16825}
16826
16827#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16828pub enum SetColumn {
16829 SetMultipleColumns(SetMultipleColumns),
16830 SetSingleColumn(SetSingleColumn),
16831}
16832
16833#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16834pub enum Stmt {
16835 AlterAggregate(AlterAggregate),
16836 AlterCollation(AlterCollation),
16837 AlterConversion(AlterConversion),
16838 AlterDatabase(AlterDatabase),
16839 AlterDefaultPrivileges(AlterDefaultPrivileges),
16840 AlterDomain(AlterDomain),
16841 AlterEventTrigger(AlterEventTrigger),
16842 AlterExtension(AlterExtension),
16843 AlterForeignDataWrapper(AlterForeignDataWrapper),
16844 AlterForeignTable(AlterForeignTable),
16845 AlterFunction(AlterFunction),
16846 AlterGroup(AlterGroup),
16847 AlterIndex(AlterIndex),
16848 AlterLanguage(AlterLanguage),
16849 AlterLargeObject(AlterLargeObject),
16850 AlterMaterializedView(AlterMaterializedView),
16851 AlterOperator(AlterOperator),
16852 AlterOperatorClass(AlterOperatorClass),
16853 AlterOperatorFamily(AlterOperatorFamily),
16854 AlterPolicy(AlterPolicy),
16855 AlterProcedure(AlterProcedure),
16856 AlterPublication(AlterPublication),
16857 AlterRole(AlterRole),
16858 AlterRoutine(AlterRoutine),
16859 AlterRule(AlterRule),
16860 AlterSchema(AlterSchema),
16861 AlterSequence(AlterSequence),
16862 AlterServer(AlterServer),
16863 AlterStatistics(AlterStatistics),
16864 AlterSubscription(AlterSubscription),
16865 AlterSystem(AlterSystem),
16866 AlterTable(AlterTable),
16867 AlterTablespace(AlterTablespace),
16868 AlterTextSearchConfiguration(AlterTextSearchConfiguration),
16869 AlterTextSearchDictionary(AlterTextSearchDictionary),
16870 AlterTextSearchParser(AlterTextSearchParser),
16871 AlterTextSearchTemplate(AlterTextSearchTemplate),
16872 AlterTrigger(AlterTrigger),
16873 AlterType(AlterType),
16874 AlterUser(AlterUser),
16875 AlterUserMapping(AlterUserMapping),
16876 AlterView(AlterView),
16877 Analyze(Analyze),
16878 Begin(Begin),
16879 Call(Call),
16880 Checkpoint(Checkpoint),
16881 Close(Close),
16882 Cluster(Cluster),
16883 CommentOn(CommentOn),
16884 Commit(Commit),
16885 Copy(Copy),
16886 CreateAccessMethod(CreateAccessMethod),
16887 CreateAggregate(CreateAggregate),
16888 CreateCast(CreateCast),
16889 CreateCollation(CreateCollation),
16890 CreateConversion(CreateConversion),
16891 CreateDatabase(CreateDatabase),
16892 CreateDomain(CreateDomain),
16893 CreateEventTrigger(CreateEventTrigger),
16894 CreateExtension(CreateExtension),
16895 CreateForeignDataWrapper(CreateForeignDataWrapper),
16896 CreateForeignTable(CreateForeignTable),
16897 CreateFunction(CreateFunction),
16898 CreateGroup(CreateGroup),
16899 CreateIndex(CreateIndex),
16900 CreateLanguage(CreateLanguage),
16901 CreateMaterializedView(CreateMaterializedView),
16902 CreateOperator(CreateOperator),
16903 CreateOperatorClass(CreateOperatorClass),
16904 CreateOperatorFamily(CreateOperatorFamily),
16905 CreatePolicy(CreatePolicy),
16906 CreateProcedure(CreateProcedure),
16907 CreatePublication(CreatePublication),
16908 CreateRole(CreateRole),
16909 CreateRule(CreateRule),
16910 CreateSchema(CreateSchema),
16911 CreateSequence(CreateSequence),
16912 CreateServer(CreateServer),
16913 CreateStatistics(CreateStatistics),
16914 CreateSubscription(CreateSubscription),
16915 CreateTable(CreateTable),
16916 CreateTableAs(CreateTableAs),
16917 CreateTablespace(CreateTablespace),
16918 CreateTextSearchConfiguration(CreateTextSearchConfiguration),
16919 CreateTextSearchDictionary(CreateTextSearchDictionary),
16920 CreateTextSearchParser(CreateTextSearchParser),
16921 CreateTextSearchTemplate(CreateTextSearchTemplate),
16922 CreateTransform(CreateTransform),
16923 CreateTrigger(CreateTrigger),
16924 CreateType(CreateType),
16925 CreateUser(CreateUser),
16926 CreateUserMapping(CreateUserMapping),
16927 CreateView(CreateView),
16928 Deallocate(Deallocate),
16929 Declare(Declare),
16930 Delete(Delete),
16931 Discard(Discard),
16932 Do(Do),
16933 DropAccessMethod(DropAccessMethod),
16934 DropAggregate(DropAggregate),
16935 DropCast(DropCast),
16936 DropCollation(DropCollation),
16937 DropConversion(DropConversion),
16938 DropDatabase(DropDatabase),
16939 DropDomain(DropDomain),
16940 DropEventTrigger(DropEventTrigger),
16941 DropExtension(DropExtension),
16942 DropForeignDataWrapper(DropForeignDataWrapper),
16943 DropForeignTable(DropForeignTable),
16944 DropFunction(DropFunction),
16945 DropGroup(DropGroup),
16946 DropIndex(DropIndex),
16947 DropLanguage(DropLanguage),
16948 DropMaterializedView(DropMaterializedView),
16949 DropOperator(DropOperator),
16950 DropOperatorClass(DropOperatorClass),
16951 DropOperatorFamily(DropOperatorFamily),
16952 DropOwned(DropOwned),
16953 DropPolicy(DropPolicy),
16954 DropProcedure(DropProcedure),
16955 DropPublication(DropPublication),
16956 DropRole(DropRole),
16957 DropRoutine(DropRoutine),
16958 DropRule(DropRule),
16959 DropSchema(DropSchema),
16960 DropSequence(DropSequence),
16961 DropServer(DropServer),
16962 DropStatistics(DropStatistics),
16963 DropSubscription(DropSubscription),
16964 DropTable(DropTable),
16965 DropTablespace(DropTablespace),
16966 DropTextSearchConfig(DropTextSearchConfig),
16967 DropTextSearchDict(DropTextSearchDict),
16968 DropTextSearchParser(DropTextSearchParser),
16969 DropTextSearchTemplate(DropTextSearchTemplate),
16970 DropTransform(DropTransform),
16971 DropTrigger(DropTrigger),
16972 DropType(DropType),
16973 DropUser(DropUser),
16974 DropUserMapping(DropUserMapping),
16975 DropView(DropView),
16976 Execute(Execute),
16977 Explain(Explain),
16978 Fetch(Fetch),
16979 Grant(Grant),
16980 ImportForeignSchema(ImportForeignSchema),
16981 Insert(Insert),
16982 Listen(Listen),
16983 Load(Load),
16984 Lock(Lock),
16985 Merge(Merge),
16986 Move(Move),
16987 Notify(Notify),
16988 ParenSelect(ParenSelect),
16989 Prepare(Prepare),
16990 PrepareTransaction(PrepareTransaction),
16991 Reassign(Reassign),
16992 Refresh(Refresh),
16993 Reindex(Reindex),
16994 ReleaseSavepoint(ReleaseSavepoint),
16995 Reset(Reset),
16996 ResetSessionAuth(ResetSessionAuth),
16997 Revoke(Revoke),
16998 Rollback(Rollback),
16999 Savepoint(Savepoint),
17000 SecurityLabel(SecurityLabel),
17001 Select(Select),
17002 SelectInto(SelectInto),
17003 Set(Set),
17004 SetConstraints(SetConstraints),
17005 SetRole(SetRole),
17006 SetSessionAuth(SetSessionAuth),
17007 SetTransaction(SetTransaction),
17008 Show(Show),
17009 Table(Table),
17010 Truncate(Truncate),
17011 Unlisten(Unlisten),
17012 Update(Update),
17013 Vacuum(Vacuum),
17014 Values(Values),
17015}
17016
17017#[derive(Debug, Clone, PartialEq, Eq, Hash)]
17018pub enum TableArg {
17019 Column(Column),
17020 LikeClause(LikeClause),
17021 TableConstraint(TableConstraint),
17022}
17023
17024#[derive(Debug, Clone, PartialEq, Eq, Hash)]
17025pub enum TableConstraint {
17026 CheckConstraint(CheckConstraint),
17027 ExcludeConstraint(ExcludeConstraint),
17028 ForeignKeyConstraint(ForeignKeyConstraint),
17029 PrimaryKeyConstraint(PrimaryKeyConstraint),
17030 UniqueConstraint(UniqueConstraint),
17031}
17032
17033#[derive(Debug, Clone, PartialEq, Eq, Hash)]
17034pub enum Timezone {
17035 WithTimezone(WithTimezone),
17036 WithoutTimezone(WithoutTimezone),
17037}
17038
17039#[derive(Debug, Clone, PartialEq, Eq, Hash)]
17040pub enum TransactionMode {
17041 Deferrable(Deferrable),
17042 NotDeferrable(NotDeferrable),
17043 ReadCommitted(ReadCommitted),
17044 ReadOnly(ReadOnly),
17045 ReadUncommitted(ReadUncommitted),
17046 ReadWrite(ReadWrite),
17047 RepeatableRead(RepeatableRead),
17048 Serializable(Serializable),
17049}
17050
17051#[derive(Debug, Clone, PartialEq, Eq, Hash)]
17052pub enum Type {
17053 ArrayType(ArrayType),
17054 BitType(BitType),
17055 CharType(CharType),
17056 DoubleType(DoubleType),
17057 ExprType(ExprType),
17058 IntervalType(IntervalType),
17059 PathType(PathType),
17060 PercentType(PercentType),
17061 TimeType(TimeType),
17062}
17063
17064#[derive(Debug, Clone, PartialEq, Eq, Hash)]
17065pub enum WithQuery {
17066 CompoundSelect(CompoundSelect),
17067 Delete(Delete),
17068 Insert(Insert),
17069 Merge(Merge),
17070 ParenSelect(ParenSelect),
17071 Select(Select),
17072 Table(Table),
17073 Update(Update),
17074 Values(Values),
17075}
17076impl AstNode for AddColumn {
17077 #[inline]
17078 fn can_cast(kind: SyntaxKind) -> bool {
17079 kind == SyntaxKind::ADD_COLUMN
17080 }
17081 #[inline]
17082 fn cast(syntax: SyntaxNode) -> Option<Self> {
17083 if Self::can_cast(syntax.kind()) {
17084 Some(Self { syntax })
17085 } else {
17086 None
17087 }
17088 }
17089 #[inline]
17090 fn syntax(&self) -> &SyntaxNode {
17091 &self.syntax
17092 }
17093}
17094impl AstNode for AddConstraint {
17095 #[inline]
17096 fn can_cast(kind: SyntaxKind) -> bool {
17097 kind == SyntaxKind::ADD_CONSTRAINT
17098 }
17099 #[inline]
17100 fn cast(syntax: SyntaxNode) -> Option<Self> {
17101 if Self::can_cast(syntax.kind()) {
17102 Some(Self { syntax })
17103 } else {
17104 None
17105 }
17106 }
17107 #[inline]
17108 fn syntax(&self) -> &SyntaxNode {
17109 &self.syntax
17110 }
17111}
17112impl AstNode for AddGenerated {
17113 #[inline]
17114 fn can_cast(kind: SyntaxKind) -> bool {
17115 kind == SyntaxKind::ADD_GENERATED
17116 }
17117 #[inline]
17118 fn cast(syntax: SyntaxNode) -> Option<Self> {
17119 if Self::can_cast(syntax.kind()) {
17120 Some(Self { syntax })
17121 } else {
17122 None
17123 }
17124 }
17125 #[inline]
17126 fn syntax(&self) -> &SyntaxNode {
17127 &self.syntax
17128 }
17129}
17130impl AstNode for AddOpClassOptions {
17131 #[inline]
17132 fn can_cast(kind: SyntaxKind) -> bool {
17133 kind == SyntaxKind::ADD_OP_CLASS_OPTIONS
17134 }
17135 #[inline]
17136 fn cast(syntax: SyntaxNode) -> Option<Self> {
17137 if Self::can_cast(syntax.kind()) {
17138 Some(Self { syntax })
17139 } else {
17140 None
17141 }
17142 }
17143 #[inline]
17144 fn syntax(&self) -> &SyntaxNode {
17145 &self.syntax
17146 }
17147}
17148impl AstNode for Aggregate {
17149 #[inline]
17150 fn can_cast(kind: SyntaxKind) -> bool {
17151 kind == SyntaxKind::AGGREGATE
17152 }
17153 #[inline]
17154 fn cast(syntax: SyntaxNode) -> Option<Self> {
17155 if Self::can_cast(syntax.kind()) {
17156 Some(Self { syntax })
17157 } else {
17158 None
17159 }
17160 }
17161 #[inline]
17162 fn syntax(&self) -> &SyntaxNode {
17163 &self.syntax
17164 }
17165}
17166impl AstNode for Alias {
17167 #[inline]
17168 fn can_cast(kind: SyntaxKind) -> bool {
17169 kind == SyntaxKind::ALIAS
17170 }
17171 #[inline]
17172 fn cast(syntax: SyntaxNode) -> Option<Self> {
17173 if Self::can_cast(syntax.kind()) {
17174 Some(Self { syntax })
17175 } else {
17176 None
17177 }
17178 }
17179 #[inline]
17180 fn syntax(&self) -> &SyntaxNode {
17181 &self.syntax
17182 }
17183}
17184impl AstNode for AllFn {
17185 #[inline]
17186 fn can_cast(kind: SyntaxKind) -> bool {
17187 kind == SyntaxKind::ALL_FN
17188 }
17189 #[inline]
17190 fn cast(syntax: SyntaxNode) -> Option<Self> {
17191 if Self::can_cast(syntax.kind()) {
17192 Some(Self { syntax })
17193 } else {
17194 None
17195 }
17196 }
17197 #[inline]
17198 fn syntax(&self) -> &SyntaxNode {
17199 &self.syntax
17200 }
17201}
17202impl AstNode for AlterAggregate {
17203 #[inline]
17204 fn can_cast(kind: SyntaxKind) -> bool {
17205 kind == SyntaxKind::ALTER_AGGREGATE
17206 }
17207 #[inline]
17208 fn cast(syntax: SyntaxNode) -> Option<Self> {
17209 if Self::can_cast(syntax.kind()) {
17210 Some(Self { syntax })
17211 } else {
17212 None
17213 }
17214 }
17215 #[inline]
17216 fn syntax(&self) -> &SyntaxNode {
17217 &self.syntax
17218 }
17219}
17220impl AstNode for AlterCollation {
17221 #[inline]
17222 fn can_cast(kind: SyntaxKind) -> bool {
17223 kind == SyntaxKind::ALTER_COLLATION
17224 }
17225 #[inline]
17226 fn cast(syntax: SyntaxNode) -> Option<Self> {
17227 if Self::can_cast(syntax.kind()) {
17228 Some(Self { syntax })
17229 } else {
17230 None
17231 }
17232 }
17233 #[inline]
17234 fn syntax(&self) -> &SyntaxNode {
17235 &self.syntax
17236 }
17237}
17238impl AstNode for AlterColumn {
17239 #[inline]
17240 fn can_cast(kind: SyntaxKind) -> bool {
17241 kind == SyntaxKind::ALTER_COLUMN
17242 }
17243 #[inline]
17244 fn cast(syntax: SyntaxNode) -> Option<Self> {
17245 if Self::can_cast(syntax.kind()) {
17246 Some(Self { syntax })
17247 } else {
17248 None
17249 }
17250 }
17251 #[inline]
17252 fn syntax(&self) -> &SyntaxNode {
17253 &self.syntax
17254 }
17255}
17256impl AstNode for AlterConstraint {
17257 #[inline]
17258 fn can_cast(kind: SyntaxKind) -> bool {
17259 kind == SyntaxKind::ALTER_CONSTRAINT
17260 }
17261 #[inline]
17262 fn cast(syntax: SyntaxNode) -> Option<Self> {
17263 if Self::can_cast(syntax.kind()) {
17264 Some(Self { syntax })
17265 } else {
17266 None
17267 }
17268 }
17269 #[inline]
17270 fn syntax(&self) -> &SyntaxNode {
17271 &self.syntax
17272 }
17273}
17274impl AstNode for AlterConversion {
17275 #[inline]
17276 fn can_cast(kind: SyntaxKind) -> bool {
17277 kind == SyntaxKind::ALTER_CONVERSION
17278 }
17279 #[inline]
17280 fn cast(syntax: SyntaxNode) -> Option<Self> {
17281 if Self::can_cast(syntax.kind()) {
17282 Some(Self { syntax })
17283 } else {
17284 None
17285 }
17286 }
17287 #[inline]
17288 fn syntax(&self) -> &SyntaxNode {
17289 &self.syntax
17290 }
17291}
17292impl AstNode for AlterDatabase {
17293 #[inline]
17294 fn can_cast(kind: SyntaxKind) -> bool {
17295 kind == SyntaxKind::ALTER_DATABASE
17296 }
17297 #[inline]
17298 fn cast(syntax: SyntaxNode) -> Option<Self> {
17299 if Self::can_cast(syntax.kind()) {
17300 Some(Self { syntax })
17301 } else {
17302 None
17303 }
17304 }
17305 #[inline]
17306 fn syntax(&self) -> &SyntaxNode {
17307 &self.syntax
17308 }
17309}
17310impl AstNode for AlterDefaultPrivileges {
17311 #[inline]
17312 fn can_cast(kind: SyntaxKind) -> bool {
17313 kind == SyntaxKind::ALTER_DEFAULT_PRIVILEGES
17314 }
17315 #[inline]
17316 fn cast(syntax: SyntaxNode) -> Option<Self> {
17317 if Self::can_cast(syntax.kind()) {
17318 Some(Self { syntax })
17319 } else {
17320 None
17321 }
17322 }
17323 #[inline]
17324 fn syntax(&self) -> &SyntaxNode {
17325 &self.syntax
17326 }
17327}
17328impl AstNode for AlterDomain {
17329 #[inline]
17330 fn can_cast(kind: SyntaxKind) -> bool {
17331 kind == SyntaxKind::ALTER_DOMAIN
17332 }
17333 #[inline]
17334 fn cast(syntax: SyntaxNode) -> Option<Self> {
17335 if Self::can_cast(syntax.kind()) {
17336 Some(Self { syntax })
17337 } else {
17338 None
17339 }
17340 }
17341 #[inline]
17342 fn syntax(&self) -> &SyntaxNode {
17343 &self.syntax
17344 }
17345}
17346impl AstNode for AlterEventTrigger {
17347 #[inline]
17348 fn can_cast(kind: SyntaxKind) -> bool {
17349 kind == SyntaxKind::ALTER_EVENT_TRIGGER
17350 }
17351 #[inline]
17352 fn cast(syntax: SyntaxNode) -> Option<Self> {
17353 if Self::can_cast(syntax.kind()) {
17354 Some(Self { syntax })
17355 } else {
17356 None
17357 }
17358 }
17359 #[inline]
17360 fn syntax(&self) -> &SyntaxNode {
17361 &self.syntax
17362 }
17363}
17364impl AstNode for AlterExtension {
17365 #[inline]
17366 fn can_cast(kind: SyntaxKind) -> bool {
17367 kind == SyntaxKind::ALTER_EXTENSION
17368 }
17369 #[inline]
17370 fn cast(syntax: SyntaxNode) -> Option<Self> {
17371 if Self::can_cast(syntax.kind()) {
17372 Some(Self { syntax })
17373 } else {
17374 None
17375 }
17376 }
17377 #[inline]
17378 fn syntax(&self) -> &SyntaxNode {
17379 &self.syntax
17380 }
17381}
17382impl AstNode for AlterForeignDataWrapper {
17383 #[inline]
17384 fn can_cast(kind: SyntaxKind) -> bool {
17385 kind == SyntaxKind::ALTER_FOREIGN_DATA_WRAPPER
17386 }
17387 #[inline]
17388 fn cast(syntax: SyntaxNode) -> Option<Self> {
17389 if Self::can_cast(syntax.kind()) {
17390 Some(Self { syntax })
17391 } else {
17392 None
17393 }
17394 }
17395 #[inline]
17396 fn syntax(&self) -> &SyntaxNode {
17397 &self.syntax
17398 }
17399}
17400impl AstNode for AlterForeignTable {
17401 #[inline]
17402 fn can_cast(kind: SyntaxKind) -> bool {
17403 kind == SyntaxKind::ALTER_FOREIGN_TABLE
17404 }
17405 #[inline]
17406 fn cast(syntax: SyntaxNode) -> Option<Self> {
17407 if Self::can_cast(syntax.kind()) {
17408 Some(Self { syntax })
17409 } else {
17410 None
17411 }
17412 }
17413 #[inline]
17414 fn syntax(&self) -> &SyntaxNode {
17415 &self.syntax
17416 }
17417}
17418impl AstNode for AlterFunction {
17419 #[inline]
17420 fn can_cast(kind: SyntaxKind) -> bool {
17421 kind == SyntaxKind::ALTER_FUNCTION
17422 }
17423 #[inline]
17424 fn cast(syntax: SyntaxNode) -> Option<Self> {
17425 if Self::can_cast(syntax.kind()) {
17426 Some(Self { syntax })
17427 } else {
17428 None
17429 }
17430 }
17431 #[inline]
17432 fn syntax(&self) -> &SyntaxNode {
17433 &self.syntax
17434 }
17435}
17436impl AstNode for AlterGroup {
17437 #[inline]
17438 fn can_cast(kind: SyntaxKind) -> bool {
17439 kind == SyntaxKind::ALTER_GROUP
17440 }
17441 #[inline]
17442 fn cast(syntax: SyntaxNode) -> Option<Self> {
17443 if Self::can_cast(syntax.kind()) {
17444 Some(Self { syntax })
17445 } else {
17446 None
17447 }
17448 }
17449 #[inline]
17450 fn syntax(&self) -> &SyntaxNode {
17451 &self.syntax
17452 }
17453}
17454impl AstNode for AlterIndex {
17455 #[inline]
17456 fn can_cast(kind: SyntaxKind) -> bool {
17457 kind == SyntaxKind::ALTER_INDEX
17458 }
17459 #[inline]
17460 fn cast(syntax: SyntaxNode) -> Option<Self> {
17461 if Self::can_cast(syntax.kind()) {
17462 Some(Self { syntax })
17463 } else {
17464 None
17465 }
17466 }
17467 #[inline]
17468 fn syntax(&self) -> &SyntaxNode {
17469 &self.syntax
17470 }
17471}
17472impl AstNode for AlterLanguage {
17473 #[inline]
17474 fn can_cast(kind: SyntaxKind) -> bool {
17475 kind == SyntaxKind::ALTER_LANGUAGE
17476 }
17477 #[inline]
17478 fn cast(syntax: SyntaxNode) -> Option<Self> {
17479 if Self::can_cast(syntax.kind()) {
17480 Some(Self { syntax })
17481 } else {
17482 None
17483 }
17484 }
17485 #[inline]
17486 fn syntax(&self) -> &SyntaxNode {
17487 &self.syntax
17488 }
17489}
17490impl AstNode for AlterLargeObject {
17491 #[inline]
17492 fn can_cast(kind: SyntaxKind) -> bool {
17493 kind == SyntaxKind::ALTER_LARGE_OBJECT
17494 }
17495 #[inline]
17496 fn cast(syntax: SyntaxNode) -> Option<Self> {
17497 if Self::can_cast(syntax.kind()) {
17498 Some(Self { syntax })
17499 } else {
17500 None
17501 }
17502 }
17503 #[inline]
17504 fn syntax(&self) -> &SyntaxNode {
17505 &self.syntax
17506 }
17507}
17508impl AstNode for AlterMaterializedView {
17509 #[inline]
17510 fn can_cast(kind: SyntaxKind) -> bool {
17511 kind == SyntaxKind::ALTER_MATERIALIZED_VIEW
17512 }
17513 #[inline]
17514 fn cast(syntax: SyntaxNode) -> Option<Self> {
17515 if Self::can_cast(syntax.kind()) {
17516 Some(Self { syntax })
17517 } else {
17518 None
17519 }
17520 }
17521 #[inline]
17522 fn syntax(&self) -> &SyntaxNode {
17523 &self.syntax
17524 }
17525}
17526impl AstNode for AlterOperator {
17527 #[inline]
17528 fn can_cast(kind: SyntaxKind) -> bool {
17529 kind == SyntaxKind::ALTER_OPERATOR
17530 }
17531 #[inline]
17532 fn cast(syntax: SyntaxNode) -> Option<Self> {
17533 if Self::can_cast(syntax.kind()) {
17534 Some(Self { syntax })
17535 } else {
17536 None
17537 }
17538 }
17539 #[inline]
17540 fn syntax(&self) -> &SyntaxNode {
17541 &self.syntax
17542 }
17543}
17544impl AstNode for AlterOperatorClass {
17545 #[inline]
17546 fn can_cast(kind: SyntaxKind) -> bool {
17547 kind == SyntaxKind::ALTER_OPERATOR_CLASS
17548 }
17549 #[inline]
17550 fn cast(syntax: SyntaxNode) -> Option<Self> {
17551 if Self::can_cast(syntax.kind()) {
17552 Some(Self { syntax })
17553 } else {
17554 None
17555 }
17556 }
17557 #[inline]
17558 fn syntax(&self) -> &SyntaxNode {
17559 &self.syntax
17560 }
17561}
17562impl AstNode for AlterOperatorFamily {
17563 #[inline]
17564 fn can_cast(kind: SyntaxKind) -> bool {
17565 kind == SyntaxKind::ALTER_OPERATOR_FAMILY
17566 }
17567 #[inline]
17568 fn cast(syntax: SyntaxNode) -> Option<Self> {
17569 if Self::can_cast(syntax.kind()) {
17570 Some(Self { syntax })
17571 } else {
17572 None
17573 }
17574 }
17575 #[inline]
17576 fn syntax(&self) -> &SyntaxNode {
17577 &self.syntax
17578 }
17579}
17580impl AstNode for AlterOption {
17581 #[inline]
17582 fn can_cast(kind: SyntaxKind) -> bool {
17583 kind == SyntaxKind::ALTER_OPTION
17584 }
17585 #[inline]
17586 fn cast(syntax: SyntaxNode) -> Option<Self> {
17587 if Self::can_cast(syntax.kind()) {
17588 Some(Self { syntax })
17589 } else {
17590 None
17591 }
17592 }
17593 #[inline]
17594 fn syntax(&self) -> &SyntaxNode {
17595 &self.syntax
17596 }
17597}
17598impl AstNode for AlterOptionList {
17599 #[inline]
17600 fn can_cast(kind: SyntaxKind) -> bool {
17601 kind == SyntaxKind::ALTER_OPTION_LIST
17602 }
17603 #[inline]
17604 fn cast(syntax: SyntaxNode) -> Option<Self> {
17605 if Self::can_cast(syntax.kind()) {
17606 Some(Self { syntax })
17607 } else {
17608 None
17609 }
17610 }
17611 #[inline]
17612 fn syntax(&self) -> &SyntaxNode {
17613 &self.syntax
17614 }
17615}
17616impl AstNode for AlterPolicy {
17617 #[inline]
17618 fn can_cast(kind: SyntaxKind) -> bool {
17619 kind == SyntaxKind::ALTER_POLICY
17620 }
17621 #[inline]
17622 fn cast(syntax: SyntaxNode) -> Option<Self> {
17623 if Self::can_cast(syntax.kind()) {
17624 Some(Self { syntax })
17625 } else {
17626 None
17627 }
17628 }
17629 #[inline]
17630 fn syntax(&self) -> &SyntaxNode {
17631 &self.syntax
17632 }
17633}
17634impl AstNode for AlterProcedure {
17635 #[inline]
17636 fn can_cast(kind: SyntaxKind) -> bool {
17637 kind == SyntaxKind::ALTER_PROCEDURE
17638 }
17639 #[inline]
17640 fn cast(syntax: SyntaxNode) -> Option<Self> {
17641 if Self::can_cast(syntax.kind()) {
17642 Some(Self { syntax })
17643 } else {
17644 None
17645 }
17646 }
17647 #[inline]
17648 fn syntax(&self) -> &SyntaxNode {
17649 &self.syntax
17650 }
17651}
17652impl AstNode for AlterPublication {
17653 #[inline]
17654 fn can_cast(kind: SyntaxKind) -> bool {
17655 kind == SyntaxKind::ALTER_PUBLICATION
17656 }
17657 #[inline]
17658 fn cast(syntax: SyntaxNode) -> Option<Self> {
17659 if Self::can_cast(syntax.kind()) {
17660 Some(Self { syntax })
17661 } else {
17662 None
17663 }
17664 }
17665 #[inline]
17666 fn syntax(&self) -> &SyntaxNode {
17667 &self.syntax
17668 }
17669}
17670impl AstNode for AlterRole {
17671 #[inline]
17672 fn can_cast(kind: SyntaxKind) -> bool {
17673 kind == SyntaxKind::ALTER_ROLE
17674 }
17675 #[inline]
17676 fn cast(syntax: SyntaxNode) -> Option<Self> {
17677 if Self::can_cast(syntax.kind()) {
17678 Some(Self { syntax })
17679 } else {
17680 None
17681 }
17682 }
17683 #[inline]
17684 fn syntax(&self) -> &SyntaxNode {
17685 &self.syntax
17686 }
17687}
17688impl AstNode for AlterRoutine {
17689 #[inline]
17690 fn can_cast(kind: SyntaxKind) -> bool {
17691 kind == SyntaxKind::ALTER_ROUTINE
17692 }
17693 #[inline]
17694 fn cast(syntax: SyntaxNode) -> Option<Self> {
17695 if Self::can_cast(syntax.kind()) {
17696 Some(Self { syntax })
17697 } else {
17698 None
17699 }
17700 }
17701 #[inline]
17702 fn syntax(&self) -> &SyntaxNode {
17703 &self.syntax
17704 }
17705}
17706impl AstNode for AlterRule {
17707 #[inline]
17708 fn can_cast(kind: SyntaxKind) -> bool {
17709 kind == SyntaxKind::ALTER_RULE
17710 }
17711 #[inline]
17712 fn cast(syntax: SyntaxNode) -> Option<Self> {
17713 if Self::can_cast(syntax.kind()) {
17714 Some(Self { syntax })
17715 } else {
17716 None
17717 }
17718 }
17719 #[inline]
17720 fn syntax(&self) -> &SyntaxNode {
17721 &self.syntax
17722 }
17723}
17724impl AstNode for AlterSchema {
17725 #[inline]
17726 fn can_cast(kind: SyntaxKind) -> bool {
17727 kind == SyntaxKind::ALTER_SCHEMA
17728 }
17729 #[inline]
17730 fn cast(syntax: SyntaxNode) -> Option<Self> {
17731 if Self::can_cast(syntax.kind()) {
17732 Some(Self { syntax })
17733 } else {
17734 None
17735 }
17736 }
17737 #[inline]
17738 fn syntax(&self) -> &SyntaxNode {
17739 &self.syntax
17740 }
17741}
17742impl AstNode for AlterSequence {
17743 #[inline]
17744 fn can_cast(kind: SyntaxKind) -> bool {
17745 kind == SyntaxKind::ALTER_SEQUENCE
17746 }
17747 #[inline]
17748 fn cast(syntax: SyntaxNode) -> Option<Self> {
17749 if Self::can_cast(syntax.kind()) {
17750 Some(Self { syntax })
17751 } else {
17752 None
17753 }
17754 }
17755 #[inline]
17756 fn syntax(&self) -> &SyntaxNode {
17757 &self.syntax
17758 }
17759}
17760impl AstNode for AlterServer {
17761 #[inline]
17762 fn can_cast(kind: SyntaxKind) -> bool {
17763 kind == SyntaxKind::ALTER_SERVER
17764 }
17765 #[inline]
17766 fn cast(syntax: SyntaxNode) -> Option<Self> {
17767 if Self::can_cast(syntax.kind()) {
17768 Some(Self { syntax })
17769 } else {
17770 None
17771 }
17772 }
17773 #[inline]
17774 fn syntax(&self) -> &SyntaxNode {
17775 &self.syntax
17776 }
17777}
17778impl AstNode for AlterSetStatistics {
17779 #[inline]
17780 fn can_cast(kind: SyntaxKind) -> bool {
17781 kind == SyntaxKind::ALTER_SET_STATISTICS
17782 }
17783 #[inline]
17784 fn cast(syntax: SyntaxNode) -> Option<Self> {
17785 if Self::can_cast(syntax.kind()) {
17786 Some(Self { syntax })
17787 } else {
17788 None
17789 }
17790 }
17791 #[inline]
17792 fn syntax(&self) -> &SyntaxNode {
17793 &self.syntax
17794 }
17795}
17796impl AstNode for AlterStatistics {
17797 #[inline]
17798 fn can_cast(kind: SyntaxKind) -> bool {
17799 kind == SyntaxKind::ALTER_STATISTICS
17800 }
17801 #[inline]
17802 fn cast(syntax: SyntaxNode) -> Option<Self> {
17803 if Self::can_cast(syntax.kind()) {
17804 Some(Self { syntax })
17805 } else {
17806 None
17807 }
17808 }
17809 #[inline]
17810 fn syntax(&self) -> &SyntaxNode {
17811 &self.syntax
17812 }
17813}
17814impl AstNode for AlterSubscription {
17815 #[inline]
17816 fn can_cast(kind: SyntaxKind) -> bool {
17817 kind == SyntaxKind::ALTER_SUBSCRIPTION
17818 }
17819 #[inline]
17820 fn cast(syntax: SyntaxNode) -> Option<Self> {
17821 if Self::can_cast(syntax.kind()) {
17822 Some(Self { syntax })
17823 } else {
17824 None
17825 }
17826 }
17827 #[inline]
17828 fn syntax(&self) -> &SyntaxNode {
17829 &self.syntax
17830 }
17831}
17832impl AstNode for AlterSystem {
17833 #[inline]
17834 fn can_cast(kind: SyntaxKind) -> bool {
17835 kind == SyntaxKind::ALTER_SYSTEM
17836 }
17837 #[inline]
17838 fn cast(syntax: SyntaxNode) -> Option<Self> {
17839 if Self::can_cast(syntax.kind()) {
17840 Some(Self { syntax })
17841 } else {
17842 None
17843 }
17844 }
17845 #[inline]
17846 fn syntax(&self) -> &SyntaxNode {
17847 &self.syntax
17848 }
17849}
17850impl AstNode for AlterTable {
17851 #[inline]
17852 fn can_cast(kind: SyntaxKind) -> bool {
17853 kind == SyntaxKind::ALTER_TABLE
17854 }
17855 #[inline]
17856 fn cast(syntax: SyntaxNode) -> Option<Self> {
17857 if Self::can_cast(syntax.kind()) {
17858 Some(Self { syntax })
17859 } else {
17860 None
17861 }
17862 }
17863 #[inline]
17864 fn syntax(&self) -> &SyntaxNode {
17865 &self.syntax
17866 }
17867}
17868impl AstNode for AlterTablespace {
17869 #[inline]
17870 fn can_cast(kind: SyntaxKind) -> bool {
17871 kind == SyntaxKind::ALTER_TABLESPACE
17872 }
17873 #[inline]
17874 fn cast(syntax: SyntaxNode) -> Option<Self> {
17875 if Self::can_cast(syntax.kind()) {
17876 Some(Self { syntax })
17877 } else {
17878 None
17879 }
17880 }
17881 #[inline]
17882 fn syntax(&self) -> &SyntaxNode {
17883 &self.syntax
17884 }
17885}
17886impl AstNode for AlterTextSearchConfiguration {
17887 #[inline]
17888 fn can_cast(kind: SyntaxKind) -> bool {
17889 kind == SyntaxKind::ALTER_TEXT_SEARCH_CONFIGURATION
17890 }
17891 #[inline]
17892 fn cast(syntax: SyntaxNode) -> Option<Self> {
17893 if Self::can_cast(syntax.kind()) {
17894 Some(Self { syntax })
17895 } else {
17896 None
17897 }
17898 }
17899 #[inline]
17900 fn syntax(&self) -> &SyntaxNode {
17901 &self.syntax
17902 }
17903}
17904impl AstNode for AlterTextSearchDictionary {
17905 #[inline]
17906 fn can_cast(kind: SyntaxKind) -> bool {
17907 kind == SyntaxKind::ALTER_TEXT_SEARCH_DICTIONARY
17908 }
17909 #[inline]
17910 fn cast(syntax: SyntaxNode) -> Option<Self> {
17911 if Self::can_cast(syntax.kind()) {
17912 Some(Self { syntax })
17913 } else {
17914 None
17915 }
17916 }
17917 #[inline]
17918 fn syntax(&self) -> &SyntaxNode {
17919 &self.syntax
17920 }
17921}
17922impl AstNode for AlterTextSearchParser {
17923 #[inline]
17924 fn can_cast(kind: SyntaxKind) -> bool {
17925 kind == SyntaxKind::ALTER_TEXT_SEARCH_PARSER
17926 }
17927 #[inline]
17928 fn cast(syntax: SyntaxNode) -> Option<Self> {
17929 if Self::can_cast(syntax.kind()) {
17930 Some(Self { syntax })
17931 } else {
17932 None
17933 }
17934 }
17935 #[inline]
17936 fn syntax(&self) -> &SyntaxNode {
17937 &self.syntax
17938 }
17939}
17940impl AstNode for AlterTextSearchTemplate {
17941 #[inline]
17942 fn can_cast(kind: SyntaxKind) -> bool {
17943 kind == SyntaxKind::ALTER_TEXT_SEARCH_TEMPLATE
17944 }
17945 #[inline]
17946 fn cast(syntax: SyntaxNode) -> Option<Self> {
17947 if Self::can_cast(syntax.kind()) {
17948 Some(Self { syntax })
17949 } else {
17950 None
17951 }
17952 }
17953 #[inline]
17954 fn syntax(&self) -> &SyntaxNode {
17955 &self.syntax
17956 }
17957}
17958impl AstNode for AlterTrigger {
17959 #[inline]
17960 fn can_cast(kind: SyntaxKind) -> bool {
17961 kind == SyntaxKind::ALTER_TRIGGER
17962 }
17963 #[inline]
17964 fn cast(syntax: SyntaxNode) -> Option<Self> {
17965 if Self::can_cast(syntax.kind()) {
17966 Some(Self { syntax })
17967 } else {
17968 None
17969 }
17970 }
17971 #[inline]
17972 fn syntax(&self) -> &SyntaxNode {
17973 &self.syntax
17974 }
17975}
17976impl AstNode for AlterType {
17977 #[inline]
17978 fn can_cast(kind: SyntaxKind) -> bool {
17979 kind == SyntaxKind::ALTER_TYPE
17980 }
17981 #[inline]
17982 fn cast(syntax: SyntaxNode) -> Option<Self> {
17983 if Self::can_cast(syntax.kind()) {
17984 Some(Self { syntax })
17985 } else {
17986 None
17987 }
17988 }
17989 #[inline]
17990 fn syntax(&self) -> &SyntaxNode {
17991 &self.syntax
17992 }
17993}
17994impl AstNode for AlterUser {
17995 #[inline]
17996 fn can_cast(kind: SyntaxKind) -> bool {
17997 kind == SyntaxKind::ALTER_USER
17998 }
17999 #[inline]
18000 fn cast(syntax: SyntaxNode) -> Option<Self> {
18001 if Self::can_cast(syntax.kind()) {
18002 Some(Self { syntax })
18003 } else {
18004 None
18005 }
18006 }
18007 #[inline]
18008 fn syntax(&self) -> &SyntaxNode {
18009 &self.syntax
18010 }
18011}
18012impl AstNode for AlterUserMapping {
18013 #[inline]
18014 fn can_cast(kind: SyntaxKind) -> bool {
18015 kind == SyntaxKind::ALTER_USER_MAPPING
18016 }
18017 #[inline]
18018 fn cast(syntax: SyntaxNode) -> Option<Self> {
18019 if Self::can_cast(syntax.kind()) {
18020 Some(Self { syntax })
18021 } else {
18022 None
18023 }
18024 }
18025 #[inline]
18026 fn syntax(&self) -> &SyntaxNode {
18027 &self.syntax
18028 }
18029}
18030impl AstNode for AlterView {
18031 #[inline]
18032 fn can_cast(kind: SyntaxKind) -> bool {
18033 kind == SyntaxKind::ALTER_VIEW
18034 }
18035 #[inline]
18036 fn cast(syntax: SyntaxNode) -> Option<Self> {
18037 if Self::can_cast(syntax.kind()) {
18038 Some(Self { syntax })
18039 } else {
18040 None
18041 }
18042 }
18043 #[inline]
18044 fn syntax(&self) -> &SyntaxNode {
18045 &self.syntax
18046 }
18047}
18048impl AstNode for Analyze {
18049 #[inline]
18050 fn can_cast(kind: SyntaxKind) -> bool {
18051 kind == SyntaxKind::ANALYZE
18052 }
18053 #[inline]
18054 fn cast(syntax: SyntaxNode) -> Option<Self> {
18055 if Self::can_cast(syntax.kind()) {
18056 Some(Self { syntax })
18057 } else {
18058 None
18059 }
18060 }
18061 #[inline]
18062 fn syntax(&self) -> &SyntaxNode {
18063 &self.syntax
18064 }
18065}
18066impl AstNode for AnyFn {
18067 #[inline]
18068 fn can_cast(kind: SyntaxKind) -> bool {
18069 kind == SyntaxKind::ANY_FN
18070 }
18071 #[inline]
18072 fn cast(syntax: SyntaxNode) -> Option<Self> {
18073 if Self::can_cast(syntax.kind()) {
18074 Some(Self { syntax })
18075 } else {
18076 None
18077 }
18078 }
18079 #[inline]
18080 fn syntax(&self) -> &SyntaxNode {
18081 &self.syntax
18082 }
18083}
18084impl AstNode for Arg {
18085 #[inline]
18086 fn can_cast(kind: SyntaxKind) -> bool {
18087 kind == SyntaxKind::ARG
18088 }
18089 #[inline]
18090 fn cast(syntax: SyntaxNode) -> Option<Self> {
18091 if Self::can_cast(syntax.kind()) {
18092 Some(Self { syntax })
18093 } else {
18094 None
18095 }
18096 }
18097 #[inline]
18098 fn syntax(&self) -> &SyntaxNode {
18099 &self.syntax
18100 }
18101}
18102impl AstNode for ArgList {
18103 #[inline]
18104 fn can_cast(kind: SyntaxKind) -> bool {
18105 kind == SyntaxKind::ARG_LIST
18106 }
18107 #[inline]
18108 fn cast(syntax: SyntaxNode) -> Option<Self> {
18109 if Self::can_cast(syntax.kind()) {
18110 Some(Self { syntax })
18111 } else {
18112 None
18113 }
18114 }
18115 #[inline]
18116 fn syntax(&self) -> &SyntaxNode {
18117 &self.syntax
18118 }
18119}
18120impl AstNode for ArrayExpr {
18121 #[inline]
18122 fn can_cast(kind: SyntaxKind) -> bool {
18123 kind == SyntaxKind::ARRAY_EXPR
18124 }
18125 #[inline]
18126 fn cast(syntax: SyntaxNode) -> Option<Self> {
18127 if Self::can_cast(syntax.kind()) {
18128 Some(Self { syntax })
18129 } else {
18130 None
18131 }
18132 }
18133 #[inline]
18134 fn syntax(&self) -> &SyntaxNode {
18135 &self.syntax
18136 }
18137}
18138impl AstNode for ArrayType {
18139 #[inline]
18140 fn can_cast(kind: SyntaxKind) -> bool {
18141 kind == SyntaxKind::ARRAY_TYPE
18142 }
18143 #[inline]
18144 fn cast(syntax: SyntaxNode) -> Option<Self> {
18145 if Self::can_cast(syntax.kind()) {
18146 Some(Self { syntax })
18147 } else {
18148 None
18149 }
18150 }
18151 #[inline]
18152 fn syntax(&self) -> &SyntaxNode {
18153 &self.syntax
18154 }
18155}
18156impl AstNode for AsFuncOption {
18157 #[inline]
18158 fn can_cast(kind: SyntaxKind) -> bool {
18159 kind == SyntaxKind::AS_FUNC_OPTION
18160 }
18161 #[inline]
18162 fn cast(syntax: SyntaxNode) -> Option<Self> {
18163 if Self::can_cast(syntax.kind()) {
18164 Some(Self { syntax })
18165 } else {
18166 None
18167 }
18168 }
18169 #[inline]
18170 fn syntax(&self) -> &SyntaxNode {
18171 &self.syntax
18172 }
18173}
18174impl AstNode for AsName {
18175 #[inline]
18176 fn can_cast(kind: SyntaxKind) -> bool {
18177 kind == SyntaxKind::AS_NAME
18178 }
18179 #[inline]
18180 fn cast(syntax: SyntaxNode) -> Option<Self> {
18181 if Self::can_cast(syntax.kind()) {
18182 Some(Self { syntax })
18183 } else {
18184 None
18185 }
18186 }
18187 #[inline]
18188 fn syntax(&self) -> &SyntaxNode {
18189 &self.syntax
18190 }
18191}
18192impl AstNode for AtTimeZone {
18193 #[inline]
18194 fn can_cast(kind: SyntaxKind) -> bool {
18195 kind == SyntaxKind::AT_TIME_ZONE
18196 }
18197 #[inline]
18198 fn cast(syntax: SyntaxNode) -> Option<Self> {
18199 if Self::can_cast(syntax.kind()) {
18200 Some(Self { syntax })
18201 } else {
18202 None
18203 }
18204 }
18205 #[inline]
18206 fn syntax(&self) -> &SyntaxNode {
18207 &self.syntax
18208 }
18209}
18210impl AstNode for AttachPartition {
18211 #[inline]
18212 fn can_cast(kind: SyntaxKind) -> bool {
18213 kind == SyntaxKind::ATTACH_PARTITION
18214 }
18215 #[inline]
18216 fn cast(syntax: SyntaxNode) -> Option<Self> {
18217 if Self::can_cast(syntax.kind()) {
18218 Some(Self { syntax })
18219 } else {
18220 None
18221 }
18222 }
18223 #[inline]
18224 fn syntax(&self) -> &SyntaxNode {
18225 &self.syntax
18226 }
18227}
18228impl AstNode for AttributeList {
18229 #[inline]
18230 fn can_cast(kind: SyntaxKind) -> bool {
18231 kind == SyntaxKind::ATTRIBUTE_LIST
18232 }
18233 #[inline]
18234 fn cast(syntax: SyntaxNode) -> Option<Self> {
18235 if Self::can_cast(syntax.kind()) {
18236 Some(Self { syntax })
18237 } else {
18238 None
18239 }
18240 }
18241 #[inline]
18242 fn syntax(&self) -> &SyntaxNode {
18243 &self.syntax
18244 }
18245}
18246impl AstNode for AttributeOption {
18247 #[inline]
18248 fn can_cast(kind: SyntaxKind) -> bool {
18249 kind == SyntaxKind::ATTRIBUTE_OPTION
18250 }
18251 #[inline]
18252 fn cast(syntax: SyntaxNode) -> Option<Self> {
18253 if Self::can_cast(syntax.kind()) {
18254 Some(Self { syntax })
18255 } else {
18256 None
18257 }
18258 }
18259 #[inline]
18260 fn syntax(&self) -> &SyntaxNode {
18261 &self.syntax
18262 }
18263}
18264impl AstNode for AttributeValue {
18265 #[inline]
18266 fn can_cast(kind: SyntaxKind) -> bool {
18267 kind == SyntaxKind::ATTRIBUTE_VALUE
18268 }
18269 #[inline]
18270 fn cast(syntax: SyntaxNode) -> Option<Self> {
18271 if Self::can_cast(syntax.kind()) {
18272 Some(Self { syntax })
18273 } else {
18274 None
18275 }
18276 }
18277 #[inline]
18278 fn syntax(&self) -> &SyntaxNode {
18279 &self.syntax
18280 }
18281}
18282impl AstNode for Begin {
18283 #[inline]
18284 fn can_cast(kind: SyntaxKind) -> bool {
18285 kind == SyntaxKind::BEGIN
18286 }
18287 #[inline]
18288 fn cast(syntax: SyntaxNode) -> Option<Self> {
18289 if Self::can_cast(syntax.kind()) {
18290 Some(Self { syntax })
18291 } else {
18292 None
18293 }
18294 }
18295 #[inline]
18296 fn syntax(&self) -> &SyntaxNode {
18297 &self.syntax
18298 }
18299}
18300impl AstNode for BeginFuncOption {
18301 #[inline]
18302 fn can_cast(kind: SyntaxKind) -> bool {
18303 kind == SyntaxKind::BEGIN_FUNC_OPTION
18304 }
18305 #[inline]
18306 fn cast(syntax: SyntaxNode) -> Option<Self> {
18307 if Self::can_cast(syntax.kind()) {
18308 Some(Self { syntax })
18309 } else {
18310 None
18311 }
18312 }
18313 #[inline]
18314 fn syntax(&self) -> &SyntaxNode {
18315 &self.syntax
18316 }
18317}
18318impl AstNode for BeginFuncOptionList {
18319 #[inline]
18320 fn can_cast(kind: SyntaxKind) -> bool {
18321 kind == SyntaxKind::BEGIN_FUNC_OPTION_LIST
18322 }
18323 #[inline]
18324 fn cast(syntax: SyntaxNode) -> Option<Self> {
18325 if Self::can_cast(syntax.kind()) {
18326 Some(Self { syntax })
18327 } else {
18328 None
18329 }
18330 }
18331 #[inline]
18332 fn syntax(&self) -> &SyntaxNode {
18333 &self.syntax
18334 }
18335}
18336impl AstNode for BetweenExpr {
18337 #[inline]
18338 fn can_cast(kind: SyntaxKind) -> bool {
18339 kind == SyntaxKind::BETWEEN_EXPR
18340 }
18341 #[inline]
18342 fn cast(syntax: SyntaxNode) -> Option<Self> {
18343 if Self::can_cast(syntax.kind()) {
18344 Some(Self { syntax })
18345 } else {
18346 None
18347 }
18348 }
18349 #[inline]
18350 fn syntax(&self) -> &SyntaxNode {
18351 &self.syntax
18352 }
18353}
18354impl AstNode for BinExpr {
18355 #[inline]
18356 fn can_cast(kind: SyntaxKind) -> bool {
18357 kind == SyntaxKind::BIN_EXPR
18358 }
18359 #[inline]
18360 fn cast(syntax: SyntaxNode) -> Option<Self> {
18361 if Self::can_cast(syntax.kind()) {
18362 Some(Self { syntax })
18363 } else {
18364 None
18365 }
18366 }
18367 #[inline]
18368 fn syntax(&self) -> &SyntaxNode {
18369 &self.syntax
18370 }
18371}
18372impl AstNode for BitType {
18373 #[inline]
18374 fn can_cast(kind: SyntaxKind) -> bool {
18375 kind == SyntaxKind::BIT_TYPE
18376 }
18377 #[inline]
18378 fn cast(syntax: SyntaxNode) -> Option<Self> {
18379 if Self::can_cast(syntax.kind()) {
18380 Some(Self { syntax })
18381 } else {
18382 None
18383 }
18384 }
18385 #[inline]
18386 fn syntax(&self) -> &SyntaxNode {
18387 &self.syntax
18388 }
18389}
18390impl AstNode for Call {
18391 #[inline]
18392 fn can_cast(kind: SyntaxKind) -> bool {
18393 kind == SyntaxKind::CALL
18394 }
18395 #[inline]
18396 fn cast(syntax: SyntaxNode) -> Option<Self> {
18397 if Self::can_cast(syntax.kind()) {
18398 Some(Self { syntax })
18399 } else {
18400 None
18401 }
18402 }
18403 #[inline]
18404 fn syntax(&self) -> &SyntaxNode {
18405 &self.syntax
18406 }
18407}
18408impl AstNode for CallExpr {
18409 #[inline]
18410 fn can_cast(kind: SyntaxKind) -> bool {
18411 kind == SyntaxKind::CALL_EXPR
18412 }
18413 #[inline]
18414 fn cast(syntax: SyntaxNode) -> Option<Self> {
18415 if Self::can_cast(syntax.kind()) {
18416 Some(Self { syntax })
18417 } else {
18418 None
18419 }
18420 }
18421 #[inline]
18422 fn syntax(&self) -> &SyntaxNode {
18423 &self.syntax
18424 }
18425}
18426impl AstNode for Cascade {
18427 #[inline]
18428 fn can_cast(kind: SyntaxKind) -> bool {
18429 kind == SyntaxKind::CASCADE
18430 }
18431 #[inline]
18432 fn cast(syntax: SyntaxNode) -> Option<Self> {
18433 if Self::can_cast(syntax.kind()) {
18434 Some(Self { syntax })
18435 } else {
18436 None
18437 }
18438 }
18439 #[inline]
18440 fn syntax(&self) -> &SyntaxNode {
18441 &self.syntax
18442 }
18443}
18444impl AstNode for CaseExpr {
18445 #[inline]
18446 fn can_cast(kind: SyntaxKind) -> bool {
18447 kind == SyntaxKind::CASE_EXPR
18448 }
18449 #[inline]
18450 fn cast(syntax: SyntaxNode) -> Option<Self> {
18451 if Self::can_cast(syntax.kind()) {
18452 Some(Self { syntax })
18453 } else {
18454 None
18455 }
18456 }
18457 #[inline]
18458 fn syntax(&self) -> &SyntaxNode {
18459 &self.syntax
18460 }
18461}
18462impl AstNode for CastExpr {
18463 #[inline]
18464 fn can_cast(kind: SyntaxKind) -> bool {
18465 kind == SyntaxKind::CAST_EXPR
18466 }
18467 #[inline]
18468 fn cast(syntax: SyntaxNode) -> Option<Self> {
18469 if Self::can_cast(syntax.kind()) {
18470 Some(Self { syntax })
18471 } else {
18472 None
18473 }
18474 }
18475 #[inline]
18476 fn syntax(&self) -> &SyntaxNode {
18477 &self.syntax
18478 }
18479}
18480impl AstNode for CastSig {
18481 #[inline]
18482 fn can_cast(kind: SyntaxKind) -> bool {
18483 kind == SyntaxKind::CAST_SIG
18484 }
18485 #[inline]
18486 fn cast(syntax: SyntaxNode) -> Option<Self> {
18487 if Self::can_cast(syntax.kind()) {
18488 Some(Self { syntax })
18489 } else {
18490 None
18491 }
18492 }
18493 #[inline]
18494 fn syntax(&self) -> &SyntaxNode {
18495 &self.syntax
18496 }
18497}
18498impl AstNode for CharType {
18499 #[inline]
18500 fn can_cast(kind: SyntaxKind) -> bool {
18501 kind == SyntaxKind::CHAR_TYPE
18502 }
18503 #[inline]
18504 fn cast(syntax: SyntaxNode) -> Option<Self> {
18505 if Self::can_cast(syntax.kind()) {
18506 Some(Self { syntax })
18507 } else {
18508 None
18509 }
18510 }
18511 #[inline]
18512 fn syntax(&self) -> &SyntaxNode {
18513 &self.syntax
18514 }
18515}
18516impl AstNode for CheckConstraint {
18517 #[inline]
18518 fn can_cast(kind: SyntaxKind) -> bool {
18519 kind == SyntaxKind::CHECK_CONSTRAINT
18520 }
18521 #[inline]
18522 fn cast(syntax: SyntaxNode) -> Option<Self> {
18523 if Self::can_cast(syntax.kind()) {
18524 Some(Self { syntax })
18525 } else {
18526 None
18527 }
18528 }
18529 #[inline]
18530 fn syntax(&self) -> &SyntaxNode {
18531 &self.syntax
18532 }
18533}
18534impl AstNode for Checkpoint {
18535 #[inline]
18536 fn can_cast(kind: SyntaxKind) -> bool {
18537 kind == SyntaxKind::CHECKPOINT
18538 }
18539 #[inline]
18540 fn cast(syntax: SyntaxNode) -> Option<Self> {
18541 if Self::can_cast(syntax.kind()) {
18542 Some(Self { syntax })
18543 } else {
18544 None
18545 }
18546 }
18547 #[inline]
18548 fn syntax(&self) -> &SyntaxNode {
18549 &self.syntax
18550 }
18551}
18552impl AstNode for Close {
18553 #[inline]
18554 fn can_cast(kind: SyntaxKind) -> bool {
18555 kind == SyntaxKind::CLOSE
18556 }
18557 #[inline]
18558 fn cast(syntax: SyntaxNode) -> Option<Self> {
18559 if Self::can_cast(syntax.kind()) {
18560 Some(Self { syntax })
18561 } else {
18562 None
18563 }
18564 }
18565 #[inline]
18566 fn syntax(&self) -> &SyntaxNode {
18567 &self.syntax
18568 }
18569}
18570impl AstNode for Cluster {
18571 #[inline]
18572 fn can_cast(kind: SyntaxKind) -> bool {
18573 kind == SyntaxKind::CLUSTER
18574 }
18575 #[inline]
18576 fn cast(syntax: SyntaxNode) -> Option<Self> {
18577 if Self::can_cast(syntax.kind()) {
18578 Some(Self { syntax })
18579 } else {
18580 None
18581 }
18582 }
18583 #[inline]
18584 fn syntax(&self) -> &SyntaxNode {
18585 &self.syntax
18586 }
18587}
18588impl AstNode for ClusterOn {
18589 #[inline]
18590 fn can_cast(kind: SyntaxKind) -> bool {
18591 kind == SyntaxKind::CLUSTER_ON
18592 }
18593 #[inline]
18594 fn cast(syntax: SyntaxNode) -> Option<Self> {
18595 if Self::can_cast(syntax.kind()) {
18596 Some(Self { syntax })
18597 } else {
18598 None
18599 }
18600 }
18601 #[inline]
18602 fn syntax(&self) -> &SyntaxNode {
18603 &self.syntax
18604 }
18605}
18606impl AstNode for Collate {
18607 #[inline]
18608 fn can_cast(kind: SyntaxKind) -> bool {
18609 kind == SyntaxKind::COLLATE
18610 }
18611 #[inline]
18612 fn cast(syntax: SyntaxNode) -> Option<Self> {
18613 if Self::can_cast(syntax.kind()) {
18614 Some(Self { syntax })
18615 } else {
18616 None
18617 }
18618 }
18619 #[inline]
18620 fn syntax(&self) -> &SyntaxNode {
18621 &self.syntax
18622 }
18623}
18624impl AstNode for ColonColon {
18625 #[inline]
18626 fn can_cast(kind: SyntaxKind) -> bool {
18627 kind == SyntaxKind::COLON_COLON
18628 }
18629 #[inline]
18630 fn cast(syntax: SyntaxNode) -> Option<Self> {
18631 if Self::can_cast(syntax.kind()) {
18632 Some(Self { syntax })
18633 } else {
18634 None
18635 }
18636 }
18637 #[inline]
18638 fn syntax(&self) -> &SyntaxNode {
18639 &self.syntax
18640 }
18641}
18642impl AstNode for ColonEq {
18643 #[inline]
18644 fn can_cast(kind: SyntaxKind) -> bool {
18645 kind == SyntaxKind::COLON_EQ
18646 }
18647 #[inline]
18648 fn cast(syntax: SyntaxNode) -> Option<Self> {
18649 if Self::can_cast(syntax.kind()) {
18650 Some(Self { syntax })
18651 } else {
18652 None
18653 }
18654 }
18655 #[inline]
18656 fn syntax(&self) -> &SyntaxNode {
18657 &self.syntax
18658 }
18659}
18660impl AstNode for Column {
18661 #[inline]
18662 fn can_cast(kind: SyntaxKind) -> bool {
18663 kind == SyntaxKind::COLUMN
18664 }
18665 #[inline]
18666 fn cast(syntax: SyntaxNode) -> Option<Self> {
18667 if Self::can_cast(syntax.kind()) {
18668 Some(Self { syntax })
18669 } else {
18670 None
18671 }
18672 }
18673 #[inline]
18674 fn syntax(&self) -> &SyntaxNode {
18675 &self.syntax
18676 }
18677}
18678impl AstNode for ColumnList {
18679 #[inline]
18680 fn can_cast(kind: SyntaxKind) -> bool {
18681 kind == SyntaxKind::COLUMN_LIST
18682 }
18683 #[inline]
18684 fn cast(syntax: SyntaxNode) -> Option<Self> {
18685 if Self::can_cast(syntax.kind()) {
18686 Some(Self { syntax })
18687 } else {
18688 None
18689 }
18690 }
18691 #[inline]
18692 fn syntax(&self) -> &SyntaxNode {
18693 &self.syntax
18694 }
18695}
18696impl AstNode for CommentOn {
18697 #[inline]
18698 fn can_cast(kind: SyntaxKind) -> bool {
18699 kind == SyntaxKind::COMMENT_ON
18700 }
18701 #[inline]
18702 fn cast(syntax: SyntaxNode) -> Option<Self> {
18703 if Self::can_cast(syntax.kind()) {
18704 Some(Self { syntax })
18705 } else {
18706 None
18707 }
18708 }
18709 #[inline]
18710 fn syntax(&self) -> &SyntaxNode {
18711 &self.syntax
18712 }
18713}
18714impl AstNode for Commit {
18715 #[inline]
18716 fn can_cast(kind: SyntaxKind) -> bool {
18717 kind == SyntaxKind::COMMIT
18718 }
18719 #[inline]
18720 fn cast(syntax: SyntaxNode) -> Option<Self> {
18721 if Self::can_cast(syntax.kind()) {
18722 Some(Self { syntax })
18723 } else {
18724 None
18725 }
18726 }
18727 #[inline]
18728 fn syntax(&self) -> &SyntaxNode {
18729 &self.syntax
18730 }
18731}
18732impl AstNode for CompoundSelect {
18733 #[inline]
18734 fn can_cast(kind: SyntaxKind) -> bool {
18735 kind == SyntaxKind::COMPOUND_SELECT
18736 }
18737 #[inline]
18738 fn cast(syntax: SyntaxNode) -> Option<Self> {
18739 if Self::can_cast(syntax.kind()) {
18740 Some(Self { syntax })
18741 } else {
18742 None
18743 }
18744 }
18745 #[inline]
18746 fn syntax(&self) -> &SyntaxNode {
18747 &self.syntax
18748 }
18749}
18750impl AstNode for CompressionMethod {
18751 #[inline]
18752 fn can_cast(kind: SyntaxKind) -> bool {
18753 kind == SyntaxKind::COMPRESSION_METHOD
18754 }
18755 #[inline]
18756 fn cast(syntax: SyntaxNode) -> Option<Self> {
18757 if Self::can_cast(syntax.kind()) {
18758 Some(Self { syntax })
18759 } else {
18760 None
18761 }
18762 }
18763 #[inline]
18764 fn syntax(&self) -> &SyntaxNode {
18765 &self.syntax
18766 }
18767}
18768impl AstNode for ConflictDoNothing {
18769 #[inline]
18770 fn can_cast(kind: SyntaxKind) -> bool {
18771 kind == SyntaxKind::CONFLICT_DO_NOTHING
18772 }
18773 #[inline]
18774 fn cast(syntax: SyntaxNode) -> Option<Self> {
18775 if Self::can_cast(syntax.kind()) {
18776 Some(Self { syntax })
18777 } else {
18778 None
18779 }
18780 }
18781 #[inline]
18782 fn syntax(&self) -> &SyntaxNode {
18783 &self.syntax
18784 }
18785}
18786impl AstNode for ConflictDoUpdateSet {
18787 #[inline]
18788 fn can_cast(kind: SyntaxKind) -> bool {
18789 kind == SyntaxKind::CONFLICT_DO_UPDATE_SET
18790 }
18791 #[inline]
18792 fn cast(syntax: SyntaxNode) -> Option<Self> {
18793 if Self::can_cast(syntax.kind()) {
18794 Some(Self { syntax })
18795 } else {
18796 None
18797 }
18798 }
18799 #[inline]
18800 fn syntax(&self) -> &SyntaxNode {
18801 &self.syntax
18802 }
18803}
18804impl AstNode for ConflictIndexItem {
18805 #[inline]
18806 fn can_cast(kind: SyntaxKind) -> bool {
18807 kind == SyntaxKind::CONFLICT_INDEX_ITEM
18808 }
18809 #[inline]
18810 fn cast(syntax: SyntaxNode) -> Option<Self> {
18811 if Self::can_cast(syntax.kind()) {
18812 Some(Self { syntax })
18813 } else {
18814 None
18815 }
18816 }
18817 #[inline]
18818 fn syntax(&self) -> &SyntaxNode {
18819 &self.syntax
18820 }
18821}
18822impl AstNode for ConflictIndexItemList {
18823 #[inline]
18824 fn can_cast(kind: SyntaxKind) -> bool {
18825 kind == SyntaxKind::CONFLICT_INDEX_ITEM_LIST
18826 }
18827 #[inline]
18828 fn cast(syntax: SyntaxNode) -> Option<Self> {
18829 if Self::can_cast(syntax.kind()) {
18830 Some(Self { syntax })
18831 } else {
18832 None
18833 }
18834 }
18835 #[inline]
18836 fn syntax(&self) -> &SyntaxNode {
18837 &self.syntax
18838 }
18839}
18840impl AstNode for ConflictOnConstraint {
18841 #[inline]
18842 fn can_cast(kind: SyntaxKind) -> bool {
18843 kind == SyntaxKind::CONFLICT_ON_CONSTRAINT
18844 }
18845 #[inline]
18846 fn cast(syntax: SyntaxNode) -> Option<Self> {
18847 if Self::can_cast(syntax.kind()) {
18848 Some(Self { syntax })
18849 } else {
18850 None
18851 }
18852 }
18853 #[inline]
18854 fn syntax(&self) -> &SyntaxNode {
18855 &self.syntax
18856 }
18857}
18858impl AstNode for ConflictOnIndex {
18859 #[inline]
18860 fn can_cast(kind: SyntaxKind) -> bool {
18861 kind == SyntaxKind::CONFLICT_ON_INDEX
18862 }
18863 #[inline]
18864 fn cast(syntax: SyntaxNode) -> Option<Self> {
18865 if Self::can_cast(syntax.kind()) {
18866 Some(Self { syntax })
18867 } else {
18868 None
18869 }
18870 }
18871 #[inline]
18872 fn syntax(&self) -> &SyntaxNode {
18873 &self.syntax
18874 }
18875}
18876impl AstNode for ConstraintExclusion {
18877 #[inline]
18878 fn can_cast(kind: SyntaxKind) -> bool {
18879 kind == SyntaxKind::CONSTRAINT_EXCLUSION
18880 }
18881 #[inline]
18882 fn cast(syntax: SyntaxNode) -> Option<Self> {
18883 if Self::can_cast(syntax.kind()) {
18884 Some(Self { syntax })
18885 } else {
18886 None
18887 }
18888 }
18889 #[inline]
18890 fn syntax(&self) -> &SyntaxNode {
18891 &self.syntax
18892 }
18893}
18894impl AstNode for ConstraintExclusionList {
18895 #[inline]
18896 fn can_cast(kind: SyntaxKind) -> bool {
18897 kind == SyntaxKind::CONSTRAINT_EXCLUSION_LIST
18898 }
18899 #[inline]
18900 fn cast(syntax: SyntaxNode) -> Option<Self> {
18901 if Self::can_cast(syntax.kind()) {
18902 Some(Self { syntax })
18903 } else {
18904 None
18905 }
18906 }
18907 #[inline]
18908 fn syntax(&self) -> &SyntaxNode {
18909 &self.syntax
18910 }
18911}
18912impl AstNode for ConstraintIncludeClause {
18913 #[inline]
18914 fn can_cast(kind: SyntaxKind) -> bool {
18915 kind == SyntaxKind::CONSTRAINT_INCLUDE_CLAUSE
18916 }
18917 #[inline]
18918 fn cast(syntax: SyntaxNode) -> Option<Self> {
18919 if Self::can_cast(syntax.kind()) {
18920 Some(Self { syntax })
18921 } else {
18922 None
18923 }
18924 }
18925 #[inline]
18926 fn syntax(&self) -> &SyntaxNode {
18927 &self.syntax
18928 }
18929}
18930impl AstNode for ConstraintIndexMethod {
18931 #[inline]
18932 fn can_cast(kind: SyntaxKind) -> bool {
18933 kind == SyntaxKind::CONSTRAINT_INDEX_METHOD
18934 }
18935 #[inline]
18936 fn cast(syntax: SyntaxNode) -> Option<Self> {
18937 if Self::can_cast(syntax.kind()) {
18938 Some(Self { syntax })
18939 } else {
18940 None
18941 }
18942 }
18943 #[inline]
18944 fn syntax(&self) -> &SyntaxNode {
18945 &self.syntax
18946 }
18947}
18948impl AstNode for ConstraintIndexTablespace {
18949 #[inline]
18950 fn can_cast(kind: SyntaxKind) -> bool {
18951 kind == SyntaxKind::CONSTRAINT_INDEX_TABLESPACE
18952 }
18953 #[inline]
18954 fn cast(syntax: SyntaxNode) -> Option<Self> {
18955 if Self::can_cast(syntax.kind()) {
18956 Some(Self { syntax })
18957 } else {
18958 None
18959 }
18960 }
18961 #[inline]
18962 fn syntax(&self) -> &SyntaxNode {
18963 &self.syntax
18964 }
18965}
18966impl AstNode for Copy {
18967 #[inline]
18968 fn can_cast(kind: SyntaxKind) -> bool {
18969 kind == SyntaxKind::COPY
18970 }
18971 #[inline]
18972 fn cast(syntax: SyntaxNode) -> Option<Self> {
18973 if Self::can_cast(syntax.kind()) {
18974 Some(Self { syntax })
18975 } else {
18976 None
18977 }
18978 }
18979 #[inline]
18980 fn syntax(&self) -> &SyntaxNode {
18981 &self.syntax
18982 }
18983}
18984impl AstNode for CopyOption {
18985 #[inline]
18986 fn can_cast(kind: SyntaxKind) -> bool {
18987 kind == SyntaxKind::COPY_OPTION
18988 }
18989 #[inline]
18990 fn cast(syntax: SyntaxNode) -> Option<Self> {
18991 if Self::can_cast(syntax.kind()) {
18992 Some(Self { syntax })
18993 } else {
18994 None
18995 }
18996 }
18997 #[inline]
18998 fn syntax(&self) -> &SyntaxNode {
18999 &self.syntax
19000 }
19001}
19002impl AstNode for CopyOptionList {
19003 #[inline]
19004 fn can_cast(kind: SyntaxKind) -> bool {
19005 kind == SyntaxKind::COPY_OPTION_LIST
19006 }
19007 #[inline]
19008 fn cast(syntax: SyntaxNode) -> Option<Self> {
19009 if Self::can_cast(syntax.kind()) {
19010 Some(Self { syntax })
19011 } else {
19012 None
19013 }
19014 }
19015 #[inline]
19016 fn syntax(&self) -> &SyntaxNode {
19017 &self.syntax
19018 }
19019}
19020impl AstNode for CostFuncOption {
19021 #[inline]
19022 fn can_cast(kind: SyntaxKind) -> bool {
19023 kind == SyntaxKind::COST_FUNC_OPTION
19024 }
19025 #[inline]
19026 fn cast(syntax: SyntaxNode) -> Option<Self> {
19027 if Self::can_cast(syntax.kind()) {
19028 Some(Self { syntax })
19029 } else {
19030 None
19031 }
19032 }
19033 #[inline]
19034 fn syntax(&self) -> &SyntaxNode {
19035 &self.syntax
19036 }
19037}
19038impl AstNode for CreateAccessMethod {
19039 #[inline]
19040 fn can_cast(kind: SyntaxKind) -> bool {
19041 kind == SyntaxKind::CREATE_ACCESS_METHOD
19042 }
19043 #[inline]
19044 fn cast(syntax: SyntaxNode) -> Option<Self> {
19045 if Self::can_cast(syntax.kind()) {
19046 Some(Self { syntax })
19047 } else {
19048 None
19049 }
19050 }
19051 #[inline]
19052 fn syntax(&self) -> &SyntaxNode {
19053 &self.syntax
19054 }
19055}
19056impl AstNode for CreateAggregate {
19057 #[inline]
19058 fn can_cast(kind: SyntaxKind) -> bool {
19059 kind == SyntaxKind::CREATE_AGGREGATE
19060 }
19061 #[inline]
19062 fn cast(syntax: SyntaxNode) -> Option<Self> {
19063 if Self::can_cast(syntax.kind()) {
19064 Some(Self { syntax })
19065 } else {
19066 None
19067 }
19068 }
19069 #[inline]
19070 fn syntax(&self) -> &SyntaxNode {
19071 &self.syntax
19072 }
19073}
19074impl AstNode for CreateCast {
19075 #[inline]
19076 fn can_cast(kind: SyntaxKind) -> bool {
19077 kind == SyntaxKind::CREATE_CAST
19078 }
19079 #[inline]
19080 fn cast(syntax: SyntaxNode) -> Option<Self> {
19081 if Self::can_cast(syntax.kind()) {
19082 Some(Self { syntax })
19083 } else {
19084 None
19085 }
19086 }
19087 #[inline]
19088 fn syntax(&self) -> &SyntaxNode {
19089 &self.syntax
19090 }
19091}
19092impl AstNode for CreateCollation {
19093 #[inline]
19094 fn can_cast(kind: SyntaxKind) -> bool {
19095 kind == SyntaxKind::CREATE_COLLATION
19096 }
19097 #[inline]
19098 fn cast(syntax: SyntaxNode) -> Option<Self> {
19099 if Self::can_cast(syntax.kind()) {
19100 Some(Self { syntax })
19101 } else {
19102 None
19103 }
19104 }
19105 #[inline]
19106 fn syntax(&self) -> &SyntaxNode {
19107 &self.syntax
19108 }
19109}
19110impl AstNode for CreateConversion {
19111 #[inline]
19112 fn can_cast(kind: SyntaxKind) -> bool {
19113 kind == SyntaxKind::CREATE_CONVERSION
19114 }
19115 #[inline]
19116 fn cast(syntax: SyntaxNode) -> Option<Self> {
19117 if Self::can_cast(syntax.kind()) {
19118 Some(Self { syntax })
19119 } else {
19120 None
19121 }
19122 }
19123 #[inline]
19124 fn syntax(&self) -> &SyntaxNode {
19125 &self.syntax
19126 }
19127}
19128impl AstNode for CreateDatabase {
19129 #[inline]
19130 fn can_cast(kind: SyntaxKind) -> bool {
19131 kind == SyntaxKind::CREATE_DATABASE
19132 }
19133 #[inline]
19134 fn cast(syntax: SyntaxNode) -> Option<Self> {
19135 if Self::can_cast(syntax.kind()) {
19136 Some(Self { syntax })
19137 } else {
19138 None
19139 }
19140 }
19141 #[inline]
19142 fn syntax(&self) -> &SyntaxNode {
19143 &self.syntax
19144 }
19145}
19146impl AstNode for CreateDatabaseOption {
19147 #[inline]
19148 fn can_cast(kind: SyntaxKind) -> bool {
19149 kind == SyntaxKind::CREATE_DATABASE_OPTION
19150 }
19151 #[inline]
19152 fn cast(syntax: SyntaxNode) -> Option<Self> {
19153 if Self::can_cast(syntax.kind()) {
19154 Some(Self { syntax })
19155 } else {
19156 None
19157 }
19158 }
19159 #[inline]
19160 fn syntax(&self) -> &SyntaxNode {
19161 &self.syntax
19162 }
19163}
19164impl AstNode for CreateDatabaseOptionList {
19165 #[inline]
19166 fn can_cast(kind: SyntaxKind) -> bool {
19167 kind == SyntaxKind::CREATE_DATABASE_OPTION_LIST
19168 }
19169 #[inline]
19170 fn cast(syntax: SyntaxNode) -> Option<Self> {
19171 if Self::can_cast(syntax.kind()) {
19172 Some(Self { syntax })
19173 } else {
19174 None
19175 }
19176 }
19177 #[inline]
19178 fn syntax(&self) -> &SyntaxNode {
19179 &self.syntax
19180 }
19181}
19182impl AstNode for CreateDomain {
19183 #[inline]
19184 fn can_cast(kind: SyntaxKind) -> bool {
19185 kind == SyntaxKind::CREATE_DOMAIN
19186 }
19187 #[inline]
19188 fn cast(syntax: SyntaxNode) -> Option<Self> {
19189 if Self::can_cast(syntax.kind()) {
19190 Some(Self { syntax })
19191 } else {
19192 None
19193 }
19194 }
19195 #[inline]
19196 fn syntax(&self) -> &SyntaxNode {
19197 &self.syntax
19198 }
19199}
19200impl AstNode for CreateEventTrigger {
19201 #[inline]
19202 fn can_cast(kind: SyntaxKind) -> bool {
19203 kind == SyntaxKind::CREATE_EVENT_TRIGGER
19204 }
19205 #[inline]
19206 fn cast(syntax: SyntaxNode) -> Option<Self> {
19207 if Self::can_cast(syntax.kind()) {
19208 Some(Self { syntax })
19209 } else {
19210 None
19211 }
19212 }
19213 #[inline]
19214 fn syntax(&self) -> &SyntaxNode {
19215 &self.syntax
19216 }
19217}
19218impl AstNode for CreateExtension {
19219 #[inline]
19220 fn can_cast(kind: SyntaxKind) -> bool {
19221 kind == SyntaxKind::CREATE_EXTENSION
19222 }
19223 #[inline]
19224 fn cast(syntax: SyntaxNode) -> Option<Self> {
19225 if Self::can_cast(syntax.kind()) {
19226 Some(Self { syntax })
19227 } else {
19228 None
19229 }
19230 }
19231 #[inline]
19232 fn syntax(&self) -> &SyntaxNode {
19233 &self.syntax
19234 }
19235}
19236impl AstNode for CreateForeignDataWrapper {
19237 #[inline]
19238 fn can_cast(kind: SyntaxKind) -> bool {
19239 kind == SyntaxKind::CREATE_FOREIGN_DATA_WRAPPER
19240 }
19241 #[inline]
19242 fn cast(syntax: SyntaxNode) -> Option<Self> {
19243 if Self::can_cast(syntax.kind()) {
19244 Some(Self { syntax })
19245 } else {
19246 None
19247 }
19248 }
19249 #[inline]
19250 fn syntax(&self) -> &SyntaxNode {
19251 &self.syntax
19252 }
19253}
19254impl AstNode for CreateForeignTable {
19255 #[inline]
19256 fn can_cast(kind: SyntaxKind) -> bool {
19257 kind == SyntaxKind::CREATE_FOREIGN_TABLE
19258 }
19259 #[inline]
19260 fn cast(syntax: SyntaxNode) -> Option<Self> {
19261 if Self::can_cast(syntax.kind()) {
19262 Some(Self { syntax })
19263 } else {
19264 None
19265 }
19266 }
19267 #[inline]
19268 fn syntax(&self) -> &SyntaxNode {
19269 &self.syntax
19270 }
19271}
19272impl AstNode for CreateFunction {
19273 #[inline]
19274 fn can_cast(kind: SyntaxKind) -> bool {
19275 kind == SyntaxKind::CREATE_FUNCTION
19276 }
19277 #[inline]
19278 fn cast(syntax: SyntaxNode) -> Option<Self> {
19279 if Self::can_cast(syntax.kind()) {
19280 Some(Self { syntax })
19281 } else {
19282 None
19283 }
19284 }
19285 #[inline]
19286 fn syntax(&self) -> &SyntaxNode {
19287 &self.syntax
19288 }
19289}
19290impl AstNode for CreateGroup {
19291 #[inline]
19292 fn can_cast(kind: SyntaxKind) -> bool {
19293 kind == SyntaxKind::CREATE_GROUP
19294 }
19295 #[inline]
19296 fn cast(syntax: SyntaxNode) -> Option<Self> {
19297 if Self::can_cast(syntax.kind()) {
19298 Some(Self { syntax })
19299 } else {
19300 None
19301 }
19302 }
19303 #[inline]
19304 fn syntax(&self) -> &SyntaxNode {
19305 &self.syntax
19306 }
19307}
19308impl AstNode for CreateIndex {
19309 #[inline]
19310 fn can_cast(kind: SyntaxKind) -> bool {
19311 kind == SyntaxKind::CREATE_INDEX
19312 }
19313 #[inline]
19314 fn cast(syntax: SyntaxNode) -> Option<Self> {
19315 if Self::can_cast(syntax.kind()) {
19316 Some(Self { syntax })
19317 } else {
19318 None
19319 }
19320 }
19321 #[inline]
19322 fn syntax(&self) -> &SyntaxNode {
19323 &self.syntax
19324 }
19325}
19326impl AstNode for CreateLanguage {
19327 #[inline]
19328 fn can_cast(kind: SyntaxKind) -> bool {
19329 kind == SyntaxKind::CREATE_LANGUAGE
19330 }
19331 #[inline]
19332 fn cast(syntax: SyntaxNode) -> Option<Self> {
19333 if Self::can_cast(syntax.kind()) {
19334 Some(Self { syntax })
19335 } else {
19336 None
19337 }
19338 }
19339 #[inline]
19340 fn syntax(&self) -> &SyntaxNode {
19341 &self.syntax
19342 }
19343}
19344impl AstNode for CreateMaterializedView {
19345 #[inline]
19346 fn can_cast(kind: SyntaxKind) -> bool {
19347 kind == SyntaxKind::CREATE_MATERIALIZED_VIEW
19348 }
19349 #[inline]
19350 fn cast(syntax: SyntaxNode) -> Option<Self> {
19351 if Self::can_cast(syntax.kind()) {
19352 Some(Self { syntax })
19353 } else {
19354 None
19355 }
19356 }
19357 #[inline]
19358 fn syntax(&self) -> &SyntaxNode {
19359 &self.syntax
19360 }
19361}
19362impl AstNode for CreateOperator {
19363 #[inline]
19364 fn can_cast(kind: SyntaxKind) -> bool {
19365 kind == SyntaxKind::CREATE_OPERATOR
19366 }
19367 #[inline]
19368 fn cast(syntax: SyntaxNode) -> Option<Self> {
19369 if Self::can_cast(syntax.kind()) {
19370 Some(Self { syntax })
19371 } else {
19372 None
19373 }
19374 }
19375 #[inline]
19376 fn syntax(&self) -> &SyntaxNode {
19377 &self.syntax
19378 }
19379}
19380impl AstNode for CreateOperatorClass {
19381 #[inline]
19382 fn can_cast(kind: SyntaxKind) -> bool {
19383 kind == SyntaxKind::CREATE_OPERATOR_CLASS
19384 }
19385 #[inline]
19386 fn cast(syntax: SyntaxNode) -> Option<Self> {
19387 if Self::can_cast(syntax.kind()) {
19388 Some(Self { syntax })
19389 } else {
19390 None
19391 }
19392 }
19393 #[inline]
19394 fn syntax(&self) -> &SyntaxNode {
19395 &self.syntax
19396 }
19397}
19398impl AstNode for CreateOperatorFamily {
19399 #[inline]
19400 fn can_cast(kind: SyntaxKind) -> bool {
19401 kind == SyntaxKind::CREATE_OPERATOR_FAMILY
19402 }
19403 #[inline]
19404 fn cast(syntax: SyntaxNode) -> Option<Self> {
19405 if Self::can_cast(syntax.kind()) {
19406 Some(Self { syntax })
19407 } else {
19408 None
19409 }
19410 }
19411 #[inline]
19412 fn syntax(&self) -> &SyntaxNode {
19413 &self.syntax
19414 }
19415}
19416impl AstNode for CreatePolicy {
19417 #[inline]
19418 fn can_cast(kind: SyntaxKind) -> bool {
19419 kind == SyntaxKind::CREATE_POLICY
19420 }
19421 #[inline]
19422 fn cast(syntax: SyntaxNode) -> Option<Self> {
19423 if Self::can_cast(syntax.kind()) {
19424 Some(Self { syntax })
19425 } else {
19426 None
19427 }
19428 }
19429 #[inline]
19430 fn syntax(&self) -> &SyntaxNode {
19431 &self.syntax
19432 }
19433}
19434impl AstNode for CreateProcedure {
19435 #[inline]
19436 fn can_cast(kind: SyntaxKind) -> bool {
19437 kind == SyntaxKind::CREATE_PROCEDURE
19438 }
19439 #[inline]
19440 fn cast(syntax: SyntaxNode) -> Option<Self> {
19441 if Self::can_cast(syntax.kind()) {
19442 Some(Self { syntax })
19443 } else {
19444 None
19445 }
19446 }
19447 #[inline]
19448 fn syntax(&self) -> &SyntaxNode {
19449 &self.syntax
19450 }
19451}
19452impl AstNode for CreatePublication {
19453 #[inline]
19454 fn can_cast(kind: SyntaxKind) -> bool {
19455 kind == SyntaxKind::CREATE_PUBLICATION
19456 }
19457 #[inline]
19458 fn cast(syntax: SyntaxNode) -> Option<Self> {
19459 if Self::can_cast(syntax.kind()) {
19460 Some(Self { syntax })
19461 } else {
19462 None
19463 }
19464 }
19465 #[inline]
19466 fn syntax(&self) -> &SyntaxNode {
19467 &self.syntax
19468 }
19469}
19470impl AstNode for CreateRole {
19471 #[inline]
19472 fn can_cast(kind: SyntaxKind) -> bool {
19473 kind == SyntaxKind::CREATE_ROLE
19474 }
19475 #[inline]
19476 fn cast(syntax: SyntaxNode) -> Option<Self> {
19477 if Self::can_cast(syntax.kind()) {
19478 Some(Self { syntax })
19479 } else {
19480 None
19481 }
19482 }
19483 #[inline]
19484 fn syntax(&self) -> &SyntaxNode {
19485 &self.syntax
19486 }
19487}
19488impl AstNode for CreateRule {
19489 #[inline]
19490 fn can_cast(kind: SyntaxKind) -> bool {
19491 kind == SyntaxKind::CREATE_RULE
19492 }
19493 #[inline]
19494 fn cast(syntax: SyntaxNode) -> Option<Self> {
19495 if Self::can_cast(syntax.kind()) {
19496 Some(Self { syntax })
19497 } else {
19498 None
19499 }
19500 }
19501 #[inline]
19502 fn syntax(&self) -> &SyntaxNode {
19503 &self.syntax
19504 }
19505}
19506impl AstNode for CreateSchema {
19507 #[inline]
19508 fn can_cast(kind: SyntaxKind) -> bool {
19509 kind == SyntaxKind::CREATE_SCHEMA
19510 }
19511 #[inline]
19512 fn cast(syntax: SyntaxNode) -> Option<Self> {
19513 if Self::can_cast(syntax.kind()) {
19514 Some(Self { syntax })
19515 } else {
19516 None
19517 }
19518 }
19519 #[inline]
19520 fn syntax(&self) -> &SyntaxNode {
19521 &self.syntax
19522 }
19523}
19524impl AstNode for CreateSequence {
19525 #[inline]
19526 fn can_cast(kind: SyntaxKind) -> bool {
19527 kind == SyntaxKind::CREATE_SEQUENCE
19528 }
19529 #[inline]
19530 fn cast(syntax: SyntaxNode) -> Option<Self> {
19531 if Self::can_cast(syntax.kind()) {
19532 Some(Self { syntax })
19533 } else {
19534 None
19535 }
19536 }
19537 #[inline]
19538 fn syntax(&self) -> &SyntaxNode {
19539 &self.syntax
19540 }
19541}
19542impl AstNode for CreateServer {
19543 #[inline]
19544 fn can_cast(kind: SyntaxKind) -> bool {
19545 kind == SyntaxKind::CREATE_SERVER
19546 }
19547 #[inline]
19548 fn cast(syntax: SyntaxNode) -> Option<Self> {
19549 if Self::can_cast(syntax.kind()) {
19550 Some(Self { syntax })
19551 } else {
19552 None
19553 }
19554 }
19555 #[inline]
19556 fn syntax(&self) -> &SyntaxNode {
19557 &self.syntax
19558 }
19559}
19560impl AstNode for CreateStatistics {
19561 #[inline]
19562 fn can_cast(kind: SyntaxKind) -> bool {
19563 kind == SyntaxKind::CREATE_STATISTICS
19564 }
19565 #[inline]
19566 fn cast(syntax: SyntaxNode) -> Option<Self> {
19567 if Self::can_cast(syntax.kind()) {
19568 Some(Self { syntax })
19569 } else {
19570 None
19571 }
19572 }
19573 #[inline]
19574 fn syntax(&self) -> &SyntaxNode {
19575 &self.syntax
19576 }
19577}
19578impl AstNode for CreateSubscription {
19579 #[inline]
19580 fn can_cast(kind: SyntaxKind) -> bool {
19581 kind == SyntaxKind::CREATE_SUBSCRIPTION
19582 }
19583 #[inline]
19584 fn cast(syntax: SyntaxNode) -> Option<Self> {
19585 if Self::can_cast(syntax.kind()) {
19586 Some(Self { syntax })
19587 } else {
19588 None
19589 }
19590 }
19591 #[inline]
19592 fn syntax(&self) -> &SyntaxNode {
19593 &self.syntax
19594 }
19595}
19596impl AstNode for CreateTable {
19597 #[inline]
19598 fn can_cast(kind: SyntaxKind) -> bool {
19599 kind == SyntaxKind::CREATE_TABLE
19600 }
19601 #[inline]
19602 fn cast(syntax: SyntaxNode) -> Option<Self> {
19603 if Self::can_cast(syntax.kind()) {
19604 Some(Self { syntax })
19605 } else {
19606 None
19607 }
19608 }
19609 #[inline]
19610 fn syntax(&self) -> &SyntaxNode {
19611 &self.syntax
19612 }
19613}
19614impl AstNode for CreateTableAs {
19615 #[inline]
19616 fn can_cast(kind: SyntaxKind) -> bool {
19617 kind == SyntaxKind::CREATE_TABLE_AS
19618 }
19619 #[inline]
19620 fn cast(syntax: SyntaxNode) -> Option<Self> {
19621 if Self::can_cast(syntax.kind()) {
19622 Some(Self { syntax })
19623 } else {
19624 None
19625 }
19626 }
19627 #[inline]
19628 fn syntax(&self) -> &SyntaxNode {
19629 &self.syntax
19630 }
19631}
19632impl AstNode for CreateTablespace {
19633 #[inline]
19634 fn can_cast(kind: SyntaxKind) -> bool {
19635 kind == SyntaxKind::CREATE_TABLESPACE
19636 }
19637 #[inline]
19638 fn cast(syntax: SyntaxNode) -> Option<Self> {
19639 if Self::can_cast(syntax.kind()) {
19640 Some(Self { syntax })
19641 } else {
19642 None
19643 }
19644 }
19645 #[inline]
19646 fn syntax(&self) -> &SyntaxNode {
19647 &self.syntax
19648 }
19649}
19650impl AstNode for CreateTextSearchConfiguration {
19651 #[inline]
19652 fn can_cast(kind: SyntaxKind) -> bool {
19653 kind == SyntaxKind::CREATE_TEXT_SEARCH_CONFIGURATION
19654 }
19655 #[inline]
19656 fn cast(syntax: SyntaxNode) -> Option<Self> {
19657 if Self::can_cast(syntax.kind()) {
19658 Some(Self { syntax })
19659 } else {
19660 None
19661 }
19662 }
19663 #[inline]
19664 fn syntax(&self) -> &SyntaxNode {
19665 &self.syntax
19666 }
19667}
19668impl AstNode for CreateTextSearchDictionary {
19669 #[inline]
19670 fn can_cast(kind: SyntaxKind) -> bool {
19671 kind == SyntaxKind::CREATE_TEXT_SEARCH_DICTIONARY
19672 }
19673 #[inline]
19674 fn cast(syntax: SyntaxNode) -> Option<Self> {
19675 if Self::can_cast(syntax.kind()) {
19676 Some(Self { syntax })
19677 } else {
19678 None
19679 }
19680 }
19681 #[inline]
19682 fn syntax(&self) -> &SyntaxNode {
19683 &self.syntax
19684 }
19685}
19686impl AstNode for CreateTextSearchParser {
19687 #[inline]
19688 fn can_cast(kind: SyntaxKind) -> bool {
19689 kind == SyntaxKind::CREATE_TEXT_SEARCH_PARSER
19690 }
19691 #[inline]
19692 fn cast(syntax: SyntaxNode) -> Option<Self> {
19693 if Self::can_cast(syntax.kind()) {
19694 Some(Self { syntax })
19695 } else {
19696 None
19697 }
19698 }
19699 #[inline]
19700 fn syntax(&self) -> &SyntaxNode {
19701 &self.syntax
19702 }
19703}
19704impl AstNode for CreateTextSearchTemplate {
19705 #[inline]
19706 fn can_cast(kind: SyntaxKind) -> bool {
19707 kind == SyntaxKind::CREATE_TEXT_SEARCH_TEMPLATE
19708 }
19709 #[inline]
19710 fn cast(syntax: SyntaxNode) -> Option<Self> {
19711 if Self::can_cast(syntax.kind()) {
19712 Some(Self { syntax })
19713 } else {
19714 None
19715 }
19716 }
19717 #[inline]
19718 fn syntax(&self) -> &SyntaxNode {
19719 &self.syntax
19720 }
19721}
19722impl AstNode for CreateTransform {
19723 #[inline]
19724 fn can_cast(kind: SyntaxKind) -> bool {
19725 kind == SyntaxKind::CREATE_TRANSFORM
19726 }
19727 #[inline]
19728 fn cast(syntax: SyntaxNode) -> Option<Self> {
19729 if Self::can_cast(syntax.kind()) {
19730 Some(Self { syntax })
19731 } else {
19732 None
19733 }
19734 }
19735 #[inline]
19736 fn syntax(&self) -> &SyntaxNode {
19737 &self.syntax
19738 }
19739}
19740impl AstNode for CreateTrigger {
19741 #[inline]
19742 fn can_cast(kind: SyntaxKind) -> bool {
19743 kind == SyntaxKind::CREATE_TRIGGER
19744 }
19745 #[inline]
19746 fn cast(syntax: SyntaxNode) -> Option<Self> {
19747 if Self::can_cast(syntax.kind()) {
19748 Some(Self { syntax })
19749 } else {
19750 None
19751 }
19752 }
19753 #[inline]
19754 fn syntax(&self) -> &SyntaxNode {
19755 &self.syntax
19756 }
19757}
19758impl AstNode for CreateType {
19759 #[inline]
19760 fn can_cast(kind: SyntaxKind) -> bool {
19761 kind == SyntaxKind::CREATE_TYPE
19762 }
19763 #[inline]
19764 fn cast(syntax: SyntaxNode) -> Option<Self> {
19765 if Self::can_cast(syntax.kind()) {
19766 Some(Self { syntax })
19767 } else {
19768 None
19769 }
19770 }
19771 #[inline]
19772 fn syntax(&self) -> &SyntaxNode {
19773 &self.syntax
19774 }
19775}
19776impl AstNode for CreateUser {
19777 #[inline]
19778 fn can_cast(kind: SyntaxKind) -> bool {
19779 kind == SyntaxKind::CREATE_USER
19780 }
19781 #[inline]
19782 fn cast(syntax: SyntaxNode) -> Option<Self> {
19783 if Self::can_cast(syntax.kind()) {
19784 Some(Self { syntax })
19785 } else {
19786 None
19787 }
19788 }
19789 #[inline]
19790 fn syntax(&self) -> &SyntaxNode {
19791 &self.syntax
19792 }
19793}
19794impl AstNode for CreateUserMapping {
19795 #[inline]
19796 fn can_cast(kind: SyntaxKind) -> bool {
19797 kind == SyntaxKind::CREATE_USER_MAPPING
19798 }
19799 #[inline]
19800 fn cast(syntax: SyntaxNode) -> Option<Self> {
19801 if Self::can_cast(syntax.kind()) {
19802 Some(Self { syntax })
19803 } else {
19804 None
19805 }
19806 }
19807 #[inline]
19808 fn syntax(&self) -> &SyntaxNode {
19809 &self.syntax
19810 }
19811}
19812impl AstNode for CreateView {
19813 #[inline]
19814 fn can_cast(kind: SyntaxKind) -> bool {
19815 kind == SyntaxKind::CREATE_VIEW
19816 }
19817 #[inline]
19818 fn cast(syntax: SyntaxNode) -> Option<Self> {
19819 if Self::can_cast(syntax.kind()) {
19820 Some(Self { syntax })
19821 } else {
19822 None
19823 }
19824 }
19825 #[inline]
19826 fn syntax(&self) -> &SyntaxNode {
19827 &self.syntax
19828 }
19829}
19830impl AstNode for CustomOp {
19831 #[inline]
19832 fn can_cast(kind: SyntaxKind) -> bool {
19833 kind == SyntaxKind::CUSTOM_OP
19834 }
19835 #[inline]
19836 fn cast(syntax: SyntaxNode) -> Option<Self> {
19837 if Self::can_cast(syntax.kind()) {
19838 Some(Self { syntax })
19839 } else {
19840 None
19841 }
19842 }
19843 #[inline]
19844 fn syntax(&self) -> &SyntaxNode {
19845 &self.syntax
19846 }
19847}
19848impl AstNode for Deallocate {
19849 #[inline]
19850 fn can_cast(kind: SyntaxKind) -> bool {
19851 kind == SyntaxKind::DEALLOCATE
19852 }
19853 #[inline]
19854 fn cast(syntax: SyntaxNode) -> Option<Self> {
19855 if Self::can_cast(syntax.kind()) {
19856 Some(Self { syntax })
19857 } else {
19858 None
19859 }
19860 }
19861 #[inline]
19862 fn syntax(&self) -> &SyntaxNode {
19863 &self.syntax
19864 }
19865}
19866impl AstNode for Declare {
19867 #[inline]
19868 fn can_cast(kind: SyntaxKind) -> bool {
19869 kind == SyntaxKind::DECLARE
19870 }
19871 #[inline]
19872 fn cast(syntax: SyntaxNode) -> Option<Self> {
19873 if Self::can_cast(syntax.kind()) {
19874 Some(Self { syntax })
19875 } else {
19876 None
19877 }
19878 }
19879 #[inline]
19880 fn syntax(&self) -> &SyntaxNode {
19881 &self.syntax
19882 }
19883}
19884impl AstNode for DefaultConstraint {
19885 #[inline]
19886 fn can_cast(kind: SyntaxKind) -> bool {
19887 kind == SyntaxKind::DEFAULT_CONSTRAINT
19888 }
19889 #[inline]
19890 fn cast(syntax: SyntaxNode) -> Option<Self> {
19891 if Self::can_cast(syntax.kind()) {
19892 Some(Self { syntax })
19893 } else {
19894 None
19895 }
19896 }
19897 #[inline]
19898 fn syntax(&self) -> &SyntaxNode {
19899 &self.syntax
19900 }
19901}
19902impl AstNode for Deferrable {
19903 #[inline]
19904 fn can_cast(kind: SyntaxKind) -> bool {
19905 kind == SyntaxKind::DEFERRABLE
19906 }
19907 #[inline]
19908 fn cast(syntax: SyntaxNode) -> Option<Self> {
19909 if Self::can_cast(syntax.kind()) {
19910 Some(Self { syntax })
19911 } else {
19912 None
19913 }
19914 }
19915 #[inline]
19916 fn syntax(&self) -> &SyntaxNode {
19917 &self.syntax
19918 }
19919}
19920impl AstNode for DeferrableConstraintOption {
19921 #[inline]
19922 fn can_cast(kind: SyntaxKind) -> bool {
19923 kind == SyntaxKind::DEFERRABLE_CONSTRAINT_OPTION
19924 }
19925 #[inline]
19926 fn cast(syntax: SyntaxNode) -> Option<Self> {
19927 if Self::can_cast(syntax.kind()) {
19928 Some(Self { syntax })
19929 } else {
19930 None
19931 }
19932 }
19933 #[inline]
19934 fn syntax(&self) -> &SyntaxNode {
19935 &self.syntax
19936 }
19937}
19938impl AstNode for Delete {
19939 #[inline]
19940 fn can_cast(kind: SyntaxKind) -> bool {
19941 kind == SyntaxKind::DELETE
19942 }
19943 #[inline]
19944 fn cast(syntax: SyntaxNode) -> Option<Self> {
19945 if Self::can_cast(syntax.kind()) {
19946 Some(Self { syntax })
19947 } else {
19948 None
19949 }
19950 }
19951 #[inline]
19952 fn syntax(&self) -> &SyntaxNode {
19953 &self.syntax
19954 }
19955}
19956impl AstNode for DeleteRows {
19957 #[inline]
19958 fn can_cast(kind: SyntaxKind) -> bool {
19959 kind == SyntaxKind::DELETE_ROWS
19960 }
19961 #[inline]
19962 fn cast(syntax: SyntaxNode) -> Option<Self> {
19963 if Self::can_cast(syntax.kind()) {
19964 Some(Self { syntax })
19965 } else {
19966 None
19967 }
19968 }
19969 #[inline]
19970 fn syntax(&self) -> &SyntaxNode {
19971 &self.syntax
19972 }
19973}
19974impl AstNode for DependsOnExtension {
19975 #[inline]
19976 fn can_cast(kind: SyntaxKind) -> bool {
19977 kind == SyntaxKind::DEPENDS_ON_EXTENSION
19978 }
19979 #[inline]
19980 fn cast(syntax: SyntaxNode) -> Option<Self> {
19981 if Self::can_cast(syntax.kind()) {
19982 Some(Self { syntax })
19983 } else {
19984 None
19985 }
19986 }
19987 #[inline]
19988 fn syntax(&self) -> &SyntaxNode {
19989 &self.syntax
19990 }
19991}
19992impl AstNode for DetachPartition {
19993 #[inline]
19994 fn can_cast(kind: SyntaxKind) -> bool {
19995 kind == SyntaxKind::DETACH_PARTITION
19996 }
19997 #[inline]
19998 fn cast(syntax: SyntaxNode) -> Option<Self> {
19999 if Self::can_cast(syntax.kind()) {
20000 Some(Self { syntax })
20001 } else {
20002 None
20003 }
20004 }
20005 #[inline]
20006 fn syntax(&self) -> &SyntaxNode {
20007 &self.syntax
20008 }
20009}
20010impl AstNode for DisableRls {
20011 #[inline]
20012 fn can_cast(kind: SyntaxKind) -> bool {
20013 kind == SyntaxKind::DISABLE_RLS
20014 }
20015 #[inline]
20016 fn cast(syntax: SyntaxNode) -> Option<Self> {
20017 if Self::can_cast(syntax.kind()) {
20018 Some(Self { syntax })
20019 } else {
20020 None
20021 }
20022 }
20023 #[inline]
20024 fn syntax(&self) -> &SyntaxNode {
20025 &self.syntax
20026 }
20027}
20028impl AstNode for DisableRule {
20029 #[inline]
20030 fn can_cast(kind: SyntaxKind) -> bool {
20031 kind == SyntaxKind::DISABLE_RULE
20032 }
20033 #[inline]
20034 fn cast(syntax: SyntaxNode) -> Option<Self> {
20035 if Self::can_cast(syntax.kind()) {
20036 Some(Self { syntax })
20037 } else {
20038 None
20039 }
20040 }
20041 #[inline]
20042 fn syntax(&self) -> &SyntaxNode {
20043 &self.syntax
20044 }
20045}
20046impl AstNode for DisableTrigger {
20047 #[inline]
20048 fn can_cast(kind: SyntaxKind) -> bool {
20049 kind == SyntaxKind::DISABLE_TRIGGER
20050 }
20051 #[inline]
20052 fn cast(syntax: SyntaxNode) -> Option<Self> {
20053 if Self::can_cast(syntax.kind()) {
20054 Some(Self { syntax })
20055 } else {
20056 None
20057 }
20058 }
20059 #[inline]
20060 fn syntax(&self) -> &SyntaxNode {
20061 &self.syntax
20062 }
20063}
20064impl AstNode for Discard {
20065 #[inline]
20066 fn can_cast(kind: SyntaxKind) -> bool {
20067 kind == SyntaxKind::DISCARD
20068 }
20069 #[inline]
20070 fn cast(syntax: SyntaxNode) -> Option<Self> {
20071 if Self::can_cast(syntax.kind()) {
20072 Some(Self { syntax })
20073 } else {
20074 None
20075 }
20076 }
20077 #[inline]
20078 fn syntax(&self) -> &SyntaxNode {
20079 &self.syntax
20080 }
20081}
20082impl AstNode for DistinctClause {
20083 #[inline]
20084 fn can_cast(kind: SyntaxKind) -> bool {
20085 kind == SyntaxKind::DISTINCT_CLAUSE
20086 }
20087 #[inline]
20088 fn cast(syntax: SyntaxNode) -> Option<Self> {
20089 if Self::can_cast(syntax.kind()) {
20090 Some(Self { syntax })
20091 } else {
20092 None
20093 }
20094 }
20095 #[inline]
20096 fn syntax(&self) -> &SyntaxNode {
20097 &self.syntax
20098 }
20099}
20100impl AstNode for Do {
20101 #[inline]
20102 fn can_cast(kind: SyntaxKind) -> bool {
20103 kind == SyntaxKind::DO
20104 }
20105 #[inline]
20106 fn cast(syntax: SyntaxNode) -> Option<Self> {
20107 if Self::can_cast(syntax.kind()) {
20108 Some(Self { syntax })
20109 } else {
20110 None
20111 }
20112 }
20113 #[inline]
20114 fn syntax(&self) -> &SyntaxNode {
20115 &self.syntax
20116 }
20117}
20118impl AstNode for DoubleType {
20119 #[inline]
20120 fn can_cast(kind: SyntaxKind) -> bool {
20121 kind == SyntaxKind::DOUBLE_TYPE
20122 }
20123 #[inline]
20124 fn cast(syntax: SyntaxNode) -> Option<Self> {
20125 if Self::can_cast(syntax.kind()) {
20126 Some(Self { syntax })
20127 } else {
20128 None
20129 }
20130 }
20131 #[inline]
20132 fn syntax(&self) -> &SyntaxNode {
20133 &self.syntax
20134 }
20135}
20136impl AstNode for Drop {
20137 #[inline]
20138 fn can_cast(kind: SyntaxKind) -> bool {
20139 kind == SyntaxKind::DROP
20140 }
20141 #[inline]
20142 fn cast(syntax: SyntaxNode) -> Option<Self> {
20143 if Self::can_cast(syntax.kind()) {
20144 Some(Self { syntax })
20145 } else {
20146 None
20147 }
20148 }
20149 #[inline]
20150 fn syntax(&self) -> &SyntaxNode {
20151 &self.syntax
20152 }
20153}
20154impl AstNode for DropAccessMethod {
20155 #[inline]
20156 fn can_cast(kind: SyntaxKind) -> bool {
20157 kind == SyntaxKind::DROP_ACCESS_METHOD
20158 }
20159 #[inline]
20160 fn cast(syntax: SyntaxNode) -> Option<Self> {
20161 if Self::can_cast(syntax.kind()) {
20162 Some(Self { syntax })
20163 } else {
20164 None
20165 }
20166 }
20167 #[inline]
20168 fn syntax(&self) -> &SyntaxNode {
20169 &self.syntax
20170 }
20171}
20172impl AstNode for DropAggregate {
20173 #[inline]
20174 fn can_cast(kind: SyntaxKind) -> bool {
20175 kind == SyntaxKind::DROP_AGGREGATE
20176 }
20177 #[inline]
20178 fn cast(syntax: SyntaxNode) -> Option<Self> {
20179 if Self::can_cast(syntax.kind()) {
20180 Some(Self { syntax })
20181 } else {
20182 None
20183 }
20184 }
20185 #[inline]
20186 fn syntax(&self) -> &SyntaxNode {
20187 &self.syntax
20188 }
20189}
20190impl AstNode for DropCast {
20191 #[inline]
20192 fn can_cast(kind: SyntaxKind) -> bool {
20193 kind == SyntaxKind::DROP_CAST
20194 }
20195 #[inline]
20196 fn cast(syntax: SyntaxNode) -> Option<Self> {
20197 if Self::can_cast(syntax.kind()) {
20198 Some(Self { syntax })
20199 } else {
20200 None
20201 }
20202 }
20203 #[inline]
20204 fn syntax(&self) -> &SyntaxNode {
20205 &self.syntax
20206 }
20207}
20208impl AstNode for DropCollation {
20209 #[inline]
20210 fn can_cast(kind: SyntaxKind) -> bool {
20211 kind == SyntaxKind::DROP_COLLATION
20212 }
20213 #[inline]
20214 fn cast(syntax: SyntaxNode) -> Option<Self> {
20215 if Self::can_cast(syntax.kind()) {
20216 Some(Self { syntax })
20217 } else {
20218 None
20219 }
20220 }
20221 #[inline]
20222 fn syntax(&self) -> &SyntaxNode {
20223 &self.syntax
20224 }
20225}
20226impl AstNode for DropColumn {
20227 #[inline]
20228 fn can_cast(kind: SyntaxKind) -> bool {
20229 kind == SyntaxKind::DROP_COLUMN
20230 }
20231 #[inline]
20232 fn cast(syntax: SyntaxNode) -> Option<Self> {
20233 if Self::can_cast(syntax.kind()) {
20234 Some(Self { syntax })
20235 } else {
20236 None
20237 }
20238 }
20239 #[inline]
20240 fn syntax(&self) -> &SyntaxNode {
20241 &self.syntax
20242 }
20243}
20244impl AstNode for DropConstraint {
20245 #[inline]
20246 fn can_cast(kind: SyntaxKind) -> bool {
20247 kind == SyntaxKind::DROP_CONSTRAINT
20248 }
20249 #[inline]
20250 fn cast(syntax: SyntaxNode) -> Option<Self> {
20251 if Self::can_cast(syntax.kind()) {
20252 Some(Self { syntax })
20253 } else {
20254 None
20255 }
20256 }
20257 #[inline]
20258 fn syntax(&self) -> &SyntaxNode {
20259 &self.syntax
20260 }
20261}
20262impl AstNode for DropConversion {
20263 #[inline]
20264 fn can_cast(kind: SyntaxKind) -> bool {
20265 kind == SyntaxKind::DROP_CONVERSION
20266 }
20267 #[inline]
20268 fn cast(syntax: SyntaxNode) -> Option<Self> {
20269 if Self::can_cast(syntax.kind()) {
20270 Some(Self { syntax })
20271 } else {
20272 None
20273 }
20274 }
20275 #[inline]
20276 fn syntax(&self) -> &SyntaxNode {
20277 &self.syntax
20278 }
20279}
20280impl AstNode for DropDatabase {
20281 #[inline]
20282 fn can_cast(kind: SyntaxKind) -> bool {
20283 kind == SyntaxKind::DROP_DATABASE
20284 }
20285 #[inline]
20286 fn cast(syntax: SyntaxNode) -> Option<Self> {
20287 if Self::can_cast(syntax.kind()) {
20288 Some(Self { syntax })
20289 } else {
20290 None
20291 }
20292 }
20293 #[inline]
20294 fn syntax(&self) -> &SyntaxNode {
20295 &self.syntax
20296 }
20297}
20298impl AstNode for DropDefault {
20299 #[inline]
20300 fn can_cast(kind: SyntaxKind) -> bool {
20301 kind == SyntaxKind::DROP_DEFAULT
20302 }
20303 #[inline]
20304 fn cast(syntax: SyntaxNode) -> Option<Self> {
20305 if Self::can_cast(syntax.kind()) {
20306 Some(Self { syntax })
20307 } else {
20308 None
20309 }
20310 }
20311 #[inline]
20312 fn syntax(&self) -> &SyntaxNode {
20313 &self.syntax
20314 }
20315}
20316impl AstNode for DropDomain {
20317 #[inline]
20318 fn can_cast(kind: SyntaxKind) -> bool {
20319 kind == SyntaxKind::DROP_DOMAIN
20320 }
20321 #[inline]
20322 fn cast(syntax: SyntaxNode) -> Option<Self> {
20323 if Self::can_cast(syntax.kind()) {
20324 Some(Self { syntax })
20325 } else {
20326 None
20327 }
20328 }
20329 #[inline]
20330 fn syntax(&self) -> &SyntaxNode {
20331 &self.syntax
20332 }
20333}
20334impl AstNode for DropEventTrigger {
20335 #[inline]
20336 fn can_cast(kind: SyntaxKind) -> bool {
20337 kind == SyntaxKind::DROP_EVENT_TRIGGER
20338 }
20339 #[inline]
20340 fn cast(syntax: SyntaxNode) -> Option<Self> {
20341 if Self::can_cast(syntax.kind()) {
20342 Some(Self { syntax })
20343 } else {
20344 None
20345 }
20346 }
20347 #[inline]
20348 fn syntax(&self) -> &SyntaxNode {
20349 &self.syntax
20350 }
20351}
20352impl AstNode for DropExpression {
20353 #[inline]
20354 fn can_cast(kind: SyntaxKind) -> bool {
20355 kind == SyntaxKind::DROP_EXPRESSION
20356 }
20357 #[inline]
20358 fn cast(syntax: SyntaxNode) -> Option<Self> {
20359 if Self::can_cast(syntax.kind()) {
20360 Some(Self { syntax })
20361 } else {
20362 None
20363 }
20364 }
20365 #[inline]
20366 fn syntax(&self) -> &SyntaxNode {
20367 &self.syntax
20368 }
20369}
20370impl AstNode for DropExtension {
20371 #[inline]
20372 fn can_cast(kind: SyntaxKind) -> bool {
20373 kind == SyntaxKind::DROP_EXTENSION
20374 }
20375 #[inline]
20376 fn cast(syntax: SyntaxNode) -> Option<Self> {
20377 if Self::can_cast(syntax.kind()) {
20378 Some(Self { syntax })
20379 } else {
20380 None
20381 }
20382 }
20383 #[inline]
20384 fn syntax(&self) -> &SyntaxNode {
20385 &self.syntax
20386 }
20387}
20388impl AstNode for DropForeignDataWrapper {
20389 #[inline]
20390 fn can_cast(kind: SyntaxKind) -> bool {
20391 kind == SyntaxKind::DROP_FOREIGN_DATA_WRAPPER
20392 }
20393 #[inline]
20394 fn cast(syntax: SyntaxNode) -> Option<Self> {
20395 if Self::can_cast(syntax.kind()) {
20396 Some(Self { syntax })
20397 } else {
20398 None
20399 }
20400 }
20401 #[inline]
20402 fn syntax(&self) -> &SyntaxNode {
20403 &self.syntax
20404 }
20405}
20406impl AstNode for DropForeignTable {
20407 #[inline]
20408 fn can_cast(kind: SyntaxKind) -> bool {
20409 kind == SyntaxKind::DROP_FOREIGN_TABLE
20410 }
20411 #[inline]
20412 fn cast(syntax: SyntaxNode) -> Option<Self> {
20413 if Self::can_cast(syntax.kind()) {
20414 Some(Self { syntax })
20415 } else {
20416 None
20417 }
20418 }
20419 #[inline]
20420 fn syntax(&self) -> &SyntaxNode {
20421 &self.syntax
20422 }
20423}
20424impl AstNode for DropFunction {
20425 #[inline]
20426 fn can_cast(kind: SyntaxKind) -> bool {
20427 kind == SyntaxKind::DROP_FUNCTION
20428 }
20429 #[inline]
20430 fn cast(syntax: SyntaxNode) -> Option<Self> {
20431 if Self::can_cast(syntax.kind()) {
20432 Some(Self { syntax })
20433 } else {
20434 None
20435 }
20436 }
20437 #[inline]
20438 fn syntax(&self) -> &SyntaxNode {
20439 &self.syntax
20440 }
20441}
20442impl AstNode for DropGroup {
20443 #[inline]
20444 fn can_cast(kind: SyntaxKind) -> bool {
20445 kind == SyntaxKind::DROP_GROUP
20446 }
20447 #[inline]
20448 fn cast(syntax: SyntaxNode) -> Option<Self> {
20449 if Self::can_cast(syntax.kind()) {
20450 Some(Self { syntax })
20451 } else {
20452 None
20453 }
20454 }
20455 #[inline]
20456 fn syntax(&self) -> &SyntaxNode {
20457 &self.syntax
20458 }
20459}
20460impl AstNode for DropIdentity {
20461 #[inline]
20462 fn can_cast(kind: SyntaxKind) -> bool {
20463 kind == SyntaxKind::DROP_IDENTITY
20464 }
20465 #[inline]
20466 fn cast(syntax: SyntaxNode) -> Option<Self> {
20467 if Self::can_cast(syntax.kind()) {
20468 Some(Self { syntax })
20469 } else {
20470 None
20471 }
20472 }
20473 #[inline]
20474 fn syntax(&self) -> &SyntaxNode {
20475 &self.syntax
20476 }
20477}
20478impl AstNode for DropIndex {
20479 #[inline]
20480 fn can_cast(kind: SyntaxKind) -> bool {
20481 kind == SyntaxKind::DROP_INDEX
20482 }
20483 #[inline]
20484 fn cast(syntax: SyntaxNode) -> Option<Self> {
20485 if Self::can_cast(syntax.kind()) {
20486 Some(Self { syntax })
20487 } else {
20488 None
20489 }
20490 }
20491 #[inline]
20492 fn syntax(&self) -> &SyntaxNode {
20493 &self.syntax
20494 }
20495}
20496impl AstNode for DropLanguage {
20497 #[inline]
20498 fn can_cast(kind: SyntaxKind) -> bool {
20499 kind == SyntaxKind::DROP_LANGUAGE
20500 }
20501 #[inline]
20502 fn cast(syntax: SyntaxNode) -> Option<Self> {
20503 if Self::can_cast(syntax.kind()) {
20504 Some(Self { syntax })
20505 } else {
20506 None
20507 }
20508 }
20509 #[inline]
20510 fn syntax(&self) -> &SyntaxNode {
20511 &self.syntax
20512 }
20513}
20514impl AstNode for DropMaterializedView {
20515 #[inline]
20516 fn can_cast(kind: SyntaxKind) -> bool {
20517 kind == SyntaxKind::DROP_MATERIALIZED_VIEW
20518 }
20519 #[inline]
20520 fn cast(syntax: SyntaxNode) -> Option<Self> {
20521 if Self::can_cast(syntax.kind()) {
20522 Some(Self { syntax })
20523 } else {
20524 None
20525 }
20526 }
20527 #[inline]
20528 fn syntax(&self) -> &SyntaxNode {
20529 &self.syntax
20530 }
20531}
20532impl AstNode for DropNotNull {
20533 #[inline]
20534 fn can_cast(kind: SyntaxKind) -> bool {
20535 kind == SyntaxKind::DROP_NOT_NULL
20536 }
20537 #[inline]
20538 fn cast(syntax: SyntaxNode) -> Option<Self> {
20539 if Self::can_cast(syntax.kind()) {
20540 Some(Self { syntax })
20541 } else {
20542 None
20543 }
20544 }
20545 #[inline]
20546 fn syntax(&self) -> &SyntaxNode {
20547 &self.syntax
20548 }
20549}
20550impl AstNode for DropOpClassOption {
20551 #[inline]
20552 fn can_cast(kind: SyntaxKind) -> bool {
20553 kind == SyntaxKind::DROP_OP_CLASS_OPTION
20554 }
20555 #[inline]
20556 fn cast(syntax: SyntaxNode) -> Option<Self> {
20557 if Self::can_cast(syntax.kind()) {
20558 Some(Self { syntax })
20559 } else {
20560 None
20561 }
20562 }
20563 #[inline]
20564 fn syntax(&self) -> &SyntaxNode {
20565 &self.syntax
20566 }
20567}
20568impl AstNode for DropOpClassOptionList {
20569 #[inline]
20570 fn can_cast(kind: SyntaxKind) -> bool {
20571 kind == SyntaxKind::DROP_OP_CLASS_OPTION_LIST
20572 }
20573 #[inline]
20574 fn cast(syntax: SyntaxNode) -> Option<Self> {
20575 if Self::can_cast(syntax.kind()) {
20576 Some(Self { syntax })
20577 } else {
20578 None
20579 }
20580 }
20581 #[inline]
20582 fn syntax(&self) -> &SyntaxNode {
20583 &self.syntax
20584 }
20585}
20586impl AstNode for DropOpClassOptions {
20587 #[inline]
20588 fn can_cast(kind: SyntaxKind) -> bool {
20589 kind == SyntaxKind::DROP_OP_CLASS_OPTIONS
20590 }
20591 #[inline]
20592 fn cast(syntax: SyntaxNode) -> Option<Self> {
20593 if Self::can_cast(syntax.kind()) {
20594 Some(Self { syntax })
20595 } else {
20596 None
20597 }
20598 }
20599 #[inline]
20600 fn syntax(&self) -> &SyntaxNode {
20601 &self.syntax
20602 }
20603}
20604impl AstNode for DropOperator {
20605 #[inline]
20606 fn can_cast(kind: SyntaxKind) -> bool {
20607 kind == SyntaxKind::DROP_OPERATOR
20608 }
20609 #[inline]
20610 fn cast(syntax: SyntaxNode) -> Option<Self> {
20611 if Self::can_cast(syntax.kind()) {
20612 Some(Self { syntax })
20613 } else {
20614 None
20615 }
20616 }
20617 #[inline]
20618 fn syntax(&self) -> &SyntaxNode {
20619 &self.syntax
20620 }
20621}
20622impl AstNode for DropOperatorClass {
20623 #[inline]
20624 fn can_cast(kind: SyntaxKind) -> bool {
20625 kind == SyntaxKind::DROP_OPERATOR_CLASS
20626 }
20627 #[inline]
20628 fn cast(syntax: SyntaxNode) -> Option<Self> {
20629 if Self::can_cast(syntax.kind()) {
20630 Some(Self { syntax })
20631 } else {
20632 None
20633 }
20634 }
20635 #[inline]
20636 fn syntax(&self) -> &SyntaxNode {
20637 &self.syntax
20638 }
20639}
20640impl AstNode for DropOperatorFamily {
20641 #[inline]
20642 fn can_cast(kind: SyntaxKind) -> bool {
20643 kind == SyntaxKind::DROP_OPERATOR_FAMILY
20644 }
20645 #[inline]
20646 fn cast(syntax: SyntaxNode) -> Option<Self> {
20647 if Self::can_cast(syntax.kind()) {
20648 Some(Self { syntax })
20649 } else {
20650 None
20651 }
20652 }
20653 #[inline]
20654 fn syntax(&self) -> &SyntaxNode {
20655 &self.syntax
20656 }
20657}
20658impl AstNode for DropOwned {
20659 #[inline]
20660 fn can_cast(kind: SyntaxKind) -> bool {
20661 kind == SyntaxKind::DROP_OWNED
20662 }
20663 #[inline]
20664 fn cast(syntax: SyntaxNode) -> Option<Self> {
20665 if Self::can_cast(syntax.kind()) {
20666 Some(Self { syntax })
20667 } else {
20668 None
20669 }
20670 }
20671 #[inline]
20672 fn syntax(&self) -> &SyntaxNode {
20673 &self.syntax
20674 }
20675}
20676impl AstNode for DropPolicy {
20677 #[inline]
20678 fn can_cast(kind: SyntaxKind) -> bool {
20679 kind == SyntaxKind::DROP_POLICY
20680 }
20681 #[inline]
20682 fn cast(syntax: SyntaxNode) -> Option<Self> {
20683 if Self::can_cast(syntax.kind()) {
20684 Some(Self { syntax })
20685 } else {
20686 None
20687 }
20688 }
20689 #[inline]
20690 fn syntax(&self) -> &SyntaxNode {
20691 &self.syntax
20692 }
20693}
20694impl AstNode for DropProcedure {
20695 #[inline]
20696 fn can_cast(kind: SyntaxKind) -> bool {
20697 kind == SyntaxKind::DROP_PROCEDURE
20698 }
20699 #[inline]
20700 fn cast(syntax: SyntaxNode) -> Option<Self> {
20701 if Self::can_cast(syntax.kind()) {
20702 Some(Self { syntax })
20703 } else {
20704 None
20705 }
20706 }
20707 #[inline]
20708 fn syntax(&self) -> &SyntaxNode {
20709 &self.syntax
20710 }
20711}
20712impl AstNode for DropPublication {
20713 #[inline]
20714 fn can_cast(kind: SyntaxKind) -> bool {
20715 kind == SyntaxKind::DROP_PUBLICATION
20716 }
20717 #[inline]
20718 fn cast(syntax: SyntaxNode) -> Option<Self> {
20719 if Self::can_cast(syntax.kind()) {
20720 Some(Self { syntax })
20721 } else {
20722 None
20723 }
20724 }
20725 #[inline]
20726 fn syntax(&self) -> &SyntaxNode {
20727 &self.syntax
20728 }
20729}
20730impl AstNode for DropRole {
20731 #[inline]
20732 fn can_cast(kind: SyntaxKind) -> bool {
20733 kind == SyntaxKind::DROP_ROLE
20734 }
20735 #[inline]
20736 fn cast(syntax: SyntaxNode) -> Option<Self> {
20737 if Self::can_cast(syntax.kind()) {
20738 Some(Self { syntax })
20739 } else {
20740 None
20741 }
20742 }
20743 #[inline]
20744 fn syntax(&self) -> &SyntaxNode {
20745 &self.syntax
20746 }
20747}
20748impl AstNode for DropRoutine {
20749 #[inline]
20750 fn can_cast(kind: SyntaxKind) -> bool {
20751 kind == SyntaxKind::DROP_ROUTINE
20752 }
20753 #[inline]
20754 fn cast(syntax: SyntaxNode) -> Option<Self> {
20755 if Self::can_cast(syntax.kind()) {
20756 Some(Self { syntax })
20757 } else {
20758 None
20759 }
20760 }
20761 #[inline]
20762 fn syntax(&self) -> &SyntaxNode {
20763 &self.syntax
20764 }
20765}
20766impl AstNode for DropRule {
20767 #[inline]
20768 fn can_cast(kind: SyntaxKind) -> bool {
20769 kind == SyntaxKind::DROP_RULE
20770 }
20771 #[inline]
20772 fn cast(syntax: SyntaxNode) -> Option<Self> {
20773 if Self::can_cast(syntax.kind()) {
20774 Some(Self { syntax })
20775 } else {
20776 None
20777 }
20778 }
20779 #[inline]
20780 fn syntax(&self) -> &SyntaxNode {
20781 &self.syntax
20782 }
20783}
20784impl AstNode for DropSchema {
20785 #[inline]
20786 fn can_cast(kind: SyntaxKind) -> bool {
20787 kind == SyntaxKind::DROP_SCHEMA
20788 }
20789 #[inline]
20790 fn cast(syntax: SyntaxNode) -> Option<Self> {
20791 if Self::can_cast(syntax.kind()) {
20792 Some(Self { syntax })
20793 } else {
20794 None
20795 }
20796 }
20797 #[inline]
20798 fn syntax(&self) -> &SyntaxNode {
20799 &self.syntax
20800 }
20801}
20802impl AstNode for DropSequence {
20803 #[inline]
20804 fn can_cast(kind: SyntaxKind) -> bool {
20805 kind == SyntaxKind::DROP_SEQUENCE
20806 }
20807 #[inline]
20808 fn cast(syntax: SyntaxNode) -> Option<Self> {
20809 if Self::can_cast(syntax.kind()) {
20810 Some(Self { syntax })
20811 } else {
20812 None
20813 }
20814 }
20815 #[inline]
20816 fn syntax(&self) -> &SyntaxNode {
20817 &self.syntax
20818 }
20819}
20820impl AstNode for DropServer {
20821 #[inline]
20822 fn can_cast(kind: SyntaxKind) -> bool {
20823 kind == SyntaxKind::DROP_SERVER
20824 }
20825 #[inline]
20826 fn cast(syntax: SyntaxNode) -> Option<Self> {
20827 if Self::can_cast(syntax.kind()) {
20828 Some(Self { syntax })
20829 } else {
20830 None
20831 }
20832 }
20833 #[inline]
20834 fn syntax(&self) -> &SyntaxNode {
20835 &self.syntax
20836 }
20837}
20838impl AstNode for DropStatistics {
20839 #[inline]
20840 fn can_cast(kind: SyntaxKind) -> bool {
20841 kind == SyntaxKind::DROP_STATISTICS
20842 }
20843 #[inline]
20844 fn cast(syntax: SyntaxNode) -> Option<Self> {
20845 if Self::can_cast(syntax.kind()) {
20846 Some(Self { syntax })
20847 } else {
20848 None
20849 }
20850 }
20851 #[inline]
20852 fn syntax(&self) -> &SyntaxNode {
20853 &self.syntax
20854 }
20855}
20856impl AstNode for DropSubscription {
20857 #[inline]
20858 fn can_cast(kind: SyntaxKind) -> bool {
20859 kind == SyntaxKind::DROP_SUBSCRIPTION
20860 }
20861 #[inline]
20862 fn cast(syntax: SyntaxNode) -> Option<Self> {
20863 if Self::can_cast(syntax.kind()) {
20864 Some(Self { syntax })
20865 } else {
20866 None
20867 }
20868 }
20869 #[inline]
20870 fn syntax(&self) -> &SyntaxNode {
20871 &self.syntax
20872 }
20873}
20874impl AstNode for DropTable {
20875 #[inline]
20876 fn can_cast(kind: SyntaxKind) -> bool {
20877 kind == SyntaxKind::DROP_TABLE
20878 }
20879 #[inline]
20880 fn cast(syntax: SyntaxNode) -> Option<Self> {
20881 if Self::can_cast(syntax.kind()) {
20882 Some(Self { syntax })
20883 } else {
20884 None
20885 }
20886 }
20887 #[inline]
20888 fn syntax(&self) -> &SyntaxNode {
20889 &self.syntax
20890 }
20891}
20892impl AstNode for DropTablespace {
20893 #[inline]
20894 fn can_cast(kind: SyntaxKind) -> bool {
20895 kind == SyntaxKind::DROP_TABLESPACE
20896 }
20897 #[inline]
20898 fn cast(syntax: SyntaxNode) -> Option<Self> {
20899 if Self::can_cast(syntax.kind()) {
20900 Some(Self { syntax })
20901 } else {
20902 None
20903 }
20904 }
20905 #[inline]
20906 fn syntax(&self) -> &SyntaxNode {
20907 &self.syntax
20908 }
20909}
20910impl AstNode for DropTextSearchConfig {
20911 #[inline]
20912 fn can_cast(kind: SyntaxKind) -> bool {
20913 kind == SyntaxKind::DROP_TEXT_SEARCH_CONFIG
20914 }
20915 #[inline]
20916 fn cast(syntax: SyntaxNode) -> Option<Self> {
20917 if Self::can_cast(syntax.kind()) {
20918 Some(Self { syntax })
20919 } else {
20920 None
20921 }
20922 }
20923 #[inline]
20924 fn syntax(&self) -> &SyntaxNode {
20925 &self.syntax
20926 }
20927}
20928impl AstNode for DropTextSearchDict {
20929 #[inline]
20930 fn can_cast(kind: SyntaxKind) -> bool {
20931 kind == SyntaxKind::DROP_TEXT_SEARCH_DICT
20932 }
20933 #[inline]
20934 fn cast(syntax: SyntaxNode) -> Option<Self> {
20935 if Self::can_cast(syntax.kind()) {
20936 Some(Self { syntax })
20937 } else {
20938 None
20939 }
20940 }
20941 #[inline]
20942 fn syntax(&self) -> &SyntaxNode {
20943 &self.syntax
20944 }
20945}
20946impl AstNode for DropTextSearchParser {
20947 #[inline]
20948 fn can_cast(kind: SyntaxKind) -> bool {
20949 kind == SyntaxKind::DROP_TEXT_SEARCH_PARSER
20950 }
20951 #[inline]
20952 fn cast(syntax: SyntaxNode) -> Option<Self> {
20953 if Self::can_cast(syntax.kind()) {
20954 Some(Self { syntax })
20955 } else {
20956 None
20957 }
20958 }
20959 #[inline]
20960 fn syntax(&self) -> &SyntaxNode {
20961 &self.syntax
20962 }
20963}
20964impl AstNode for DropTextSearchTemplate {
20965 #[inline]
20966 fn can_cast(kind: SyntaxKind) -> bool {
20967 kind == SyntaxKind::DROP_TEXT_SEARCH_TEMPLATE
20968 }
20969 #[inline]
20970 fn cast(syntax: SyntaxNode) -> Option<Self> {
20971 if Self::can_cast(syntax.kind()) {
20972 Some(Self { syntax })
20973 } else {
20974 None
20975 }
20976 }
20977 #[inline]
20978 fn syntax(&self) -> &SyntaxNode {
20979 &self.syntax
20980 }
20981}
20982impl AstNode for DropTransform {
20983 #[inline]
20984 fn can_cast(kind: SyntaxKind) -> bool {
20985 kind == SyntaxKind::DROP_TRANSFORM
20986 }
20987 #[inline]
20988 fn cast(syntax: SyntaxNode) -> Option<Self> {
20989 if Self::can_cast(syntax.kind()) {
20990 Some(Self { syntax })
20991 } else {
20992 None
20993 }
20994 }
20995 #[inline]
20996 fn syntax(&self) -> &SyntaxNode {
20997 &self.syntax
20998 }
20999}
21000impl AstNode for DropTrigger {
21001 #[inline]
21002 fn can_cast(kind: SyntaxKind) -> bool {
21003 kind == SyntaxKind::DROP_TRIGGER
21004 }
21005 #[inline]
21006 fn cast(syntax: SyntaxNode) -> Option<Self> {
21007 if Self::can_cast(syntax.kind()) {
21008 Some(Self { syntax })
21009 } else {
21010 None
21011 }
21012 }
21013 #[inline]
21014 fn syntax(&self) -> &SyntaxNode {
21015 &self.syntax
21016 }
21017}
21018impl AstNode for DropType {
21019 #[inline]
21020 fn can_cast(kind: SyntaxKind) -> bool {
21021 kind == SyntaxKind::DROP_TYPE
21022 }
21023 #[inline]
21024 fn cast(syntax: SyntaxNode) -> Option<Self> {
21025 if Self::can_cast(syntax.kind()) {
21026 Some(Self { syntax })
21027 } else {
21028 None
21029 }
21030 }
21031 #[inline]
21032 fn syntax(&self) -> &SyntaxNode {
21033 &self.syntax
21034 }
21035}
21036impl AstNode for DropUser {
21037 #[inline]
21038 fn can_cast(kind: SyntaxKind) -> bool {
21039 kind == SyntaxKind::DROP_USER
21040 }
21041 #[inline]
21042 fn cast(syntax: SyntaxNode) -> Option<Self> {
21043 if Self::can_cast(syntax.kind()) {
21044 Some(Self { syntax })
21045 } else {
21046 None
21047 }
21048 }
21049 #[inline]
21050 fn syntax(&self) -> &SyntaxNode {
21051 &self.syntax
21052 }
21053}
21054impl AstNode for DropUserMapping {
21055 #[inline]
21056 fn can_cast(kind: SyntaxKind) -> bool {
21057 kind == SyntaxKind::DROP_USER_MAPPING
21058 }
21059 #[inline]
21060 fn cast(syntax: SyntaxNode) -> Option<Self> {
21061 if Self::can_cast(syntax.kind()) {
21062 Some(Self { syntax })
21063 } else {
21064 None
21065 }
21066 }
21067 #[inline]
21068 fn syntax(&self) -> &SyntaxNode {
21069 &self.syntax
21070 }
21071}
21072impl AstNode for DropView {
21073 #[inline]
21074 fn can_cast(kind: SyntaxKind) -> bool {
21075 kind == SyntaxKind::DROP_VIEW
21076 }
21077 #[inline]
21078 fn cast(syntax: SyntaxNode) -> Option<Self> {
21079 if Self::can_cast(syntax.kind()) {
21080 Some(Self { syntax })
21081 } else {
21082 None
21083 }
21084 }
21085 #[inline]
21086 fn syntax(&self) -> &SyntaxNode {
21087 &self.syntax
21088 }
21089}
21090impl AstNode for ElseClause {
21091 #[inline]
21092 fn can_cast(kind: SyntaxKind) -> bool {
21093 kind == SyntaxKind::ELSE_CLAUSE
21094 }
21095 #[inline]
21096 fn cast(syntax: SyntaxNode) -> Option<Self> {
21097 if Self::can_cast(syntax.kind()) {
21098 Some(Self { syntax })
21099 } else {
21100 None
21101 }
21102 }
21103 #[inline]
21104 fn syntax(&self) -> &SyntaxNode {
21105 &self.syntax
21106 }
21107}
21108impl AstNode for EnableAlwaysRule {
21109 #[inline]
21110 fn can_cast(kind: SyntaxKind) -> bool {
21111 kind == SyntaxKind::ENABLE_ALWAYS_RULE
21112 }
21113 #[inline]
21114 fn cast(syntax: SyntaxNode) -> Option<Self> {
21115 if Self::can_cast(syntax.kind()) {
21116 Some(Self { syntax })
21117 } else {
21118 None
21119 }
21120 }
21121 #[inline]
21122 fn syntax(&self) -> &SyntaxNode {
21123 &self.syntax
21124 }
21125}
21126impl AstNode for EnableAlwaysTrigger {
21127 #[inline]
21128 fn can_cast(kind: SyntaxKind) -> bool {
21129 kind == SyntaxKind::ENABLE_ALWAYS_TRIGGER
21130 }
21131 #[inline]
21132 fn cast(syntax: SyntaxNode) -> Option<Self> {
21133 if Self::can_cast(syntax.kind()) {
21134 Some(Self { syntax })
21135 } else {
21136 None
21137 }
21138 }
21139 #[inline]
21140 fn syntax(&self) -> &SyntaxNode {
21141 &self.syntax
21142 }
21143}
21144impl AstNode for EnableReplicaRule {
21145 #[inline]
21146 fn can_cast(kind: SyntaxKind) -> bool {
21147 kind == SyntaxKind::ENABLE_REPLICA_RULE
21148 }
21149 #[inline]
21150 fn cast(syntax: SyntaxNode) -> Option<Self> {
21151 if Self::can_cast(syntax.kind()) {
21152 Some(Self { syntax })
21153 } else {
21154 None
21155 }
21156 }
21157 #[inline]
21158 fn syntax(&self) -> &SyntaxNode {
21159 &self.syntax
21160 }
21161}
21162impl AstNode for EnableReplicaTrigger {
21163 #[inline]
21164 fn can_cast(kind: SyntaxKind) -> bool {
21165 kind == SyntaxKind::ENABLE_REPLICA_TRIGGER
21166 }
21167 #[inline]
21168 fn cast(syntax: SyntaxNode) -> Option<Self> {
21169 if Self::can_cast(syntax.kind()) {
21170 Some(Self { syntax })
21171 } else {
21172 None
21173 }
21174 }
21175 #[inline]
21176 fn syntax(&self) -> &SyntaxNode {
21177 &self.syntax
21178 }
21179}
21180impl AstNode for EnableRls {
21181 #[inline]
21182 fn can_cast(kind: SyntaxKind) -> bool {
21183 kind == SyntaxKind::ENABLE_RLS
21184 }
21185 #[inline]
21186 fn cast(syntax: SyntaxNode) -> Option<Self> {
21187 if Self::can_cast(syntax.kind()) {
21188 Some(Self { syntax })
21189 } else {
21190 None
21191 }
21192 }
21193 #[inline]
21194 fn syntax(&self) -> &SyntaxNode {
21195 &self.syntax
21196 }
21197}
21198impl AstNode for EnableRule {
21199 #[inline]
21200 fn can_cast(kind: SyntaxKind) -> bool {
21201 kind == SyntaxKind::ENABLE_RULE
21202 }
21203 #[inline]
21204 fn cast(syntax: SyntaxNode) -> Option<Self> {
21205 if Self::can_cast(syntax.kind()) {
21206 Some(Self { syntax })
21207 } else {
21208 None
21209 }
21210 }
21211 #[inline]
21212 fn syntax(&self) -> &SyntaxNode {
21213 &self.syntax
21214 }
21215}
21216impl AstNode for EnableTrigger {
21217 #[inline]
21218 fn can_cast(kind: SyntaxKind) -> bool {
21219 kind == SyntaxKind::ENABLE_TRIGGER
21220 }
21221 #[inline]
21222 fn cast(syntax: SyntaxNode) -> Option<Self> {
21223 if Self::can_cast(syntax.kind()) {
21224 Some(Self { syntax })
21225 } else {
21226 None
21227 }
21228 }
21229 #[inline]
21230 fn syntax(&self) -> &SyntaxNode {
21231 &self.syntax
21232 }
21233}
21234impl AstNode for Enforced {
21235 #[inline]
21236 fn can_cast(kind: SyntaxKind) -> bool {
21237 kind == SyntaxKind::ENFORCED
21238 }
21239 #[inline]
21240 fn cast(syntax: SyntaxNode) -> Option<Self> {
21241 if Self::can_cast(syntax.kind()) {
21242 Some(Self { syntax })
21243 } else {
21244 None
21245 }
21246 }
21247 #[inline]
21248 fn syntax(&self) -> &SyntaxNode {
21249 &self.syntax
21250 }
21251}
21252impl AstNode for EventTriggerWhen {
21253 #[inline]
21254 fn can_cast(kind: SyntaxKind) -> bool {
21255 kind == SyntaxKind::EVENT_TRIGGER_WHEN
21256 }
21257 #[inline]
21258 fn cast(syntax: SyntaxNode) -> Option<Self> {
21259 if Self::can_cast(syntax.kind()) {
21260 Some(Self { syntax })
21261 } else {
21262 None
21263 }
21264 }
21265 #[inline]
21266 fn syntax(&self) -> &SyntaxNode {
21267 &self.syntax
21268 }
21269}
21270impl AstNode for EventTriggerWhenClause {
21271 #[inline]
21272 fn can_cast(kind: SyntaxKind) -> bool {
21273 kind == SyntaxKind::EVENT_TRIGGER_WHEN_CLAUSE
21274 }
21275 #[inline]
21276 fn cast(syntax: SyntaxNode) -> Option<Self> {
21277 if Self::can_cast(syntax.kind()) {
21278 Some(Self { syntax })
21279 } else {
21280 None
21281 }
21282 }
21283 #[inline]
21284 fn syntax(&self) -> &SyntaxNode {
21285 &self.syntax
21286 }
21287}
21288impl AstNode for ExceptTables {
21289 #[inline]
21290 fn can_cast(kind: SyntaxKind) -> bool {
21291 kind == SyntaxKind::EXCEPT_TABLES
21292 }
21293 #[inline]
21294 fn cast(syntax: SyntaxNode) -> Option<Self> {
21295 if Self::can_cast(syntax.kind()) {
21296 Some(Self { syntax })
21297 } else {
21298 None
21299 }
21300 }
21301 #[inline]
21302 fn syntax(&self) -> &SyntaxNode {
21303 &self.syntax
21304 }
21305}
21306impl AstNode for ExcludeConstraint {
21307 #[inline]
21308 fn can_cast(kind: SyntaxKind) -> bool {
21309 kind == SyntaxKind::EXCLUDE_CONSTRAINT
21310 }
21311 #[inline]
21312 fn cast(syntax: SyntaxNode) -> Option<Self> {
21313 if Self::can_cast(syntax.kind()) {
21314 Some(Self { syntax })
21315 } else {
21316 None
21317 }
21318 }
21319 #[inline]
21320 fn syntax(&self) -> &SyntaxNode {
21321 &self.syntax
21322 }
21323}
21324impl AstNode for Execute {
21325 #[inline]
21326 fn can_cast(kind: SyntaxKind) -> bool {
21327 kind == SyntaxKind::EXECUTE
21328 }
21329 #[inline]
21330 fn cast(syntax: SyntaxNode) -> Option<Self> {
21331 if Self::can_cast(syntax.kind()) {
21332 Some(Self { syntax })
21333 } else {
21334 None
21335 }
21336 }
21337 #[inline]
21338 fn syntax(&self) -> &SyntaxNode {
21339 &self.syntax
21340 }
21341}
21342impl AstNode for ExistsFn {
21343 #[inline]
21344 fn can_cast(kind: SyntaxKind) -> bool {
21345 kind == SyntaxKind::EXISTS_FN
21346 }
21347 #[inline]
21348 fn cast(syntax: SyntaxNode) -> Option<Self> {
21349 if Self::can_cast(syntax.kind()) {
21350 Some(Self { syntax })
21351 } else {
21352 None
21353 }
21354 }
21355 #[inline]
21356 fn syntax(&self) -> &SyntaxNode {
21357 &self.syntax
21358 }
21359}
21360impl AstNode for Explain {
21361 #[inline]
21362 fn can_cast(kind: SyntaxKind) -> bool {
21363 kind == SyntaxKind::EXPLAIN
21364 }
21365 #[inline]
21366 fn cast(syntax: SyntaxNode) -> Option<Self> {
21367 if Self::can_cast(syntax.kind()) {
21368 Some(Self { syntax })
21369 } else {
21370 None
21371 }
21372 }
21373 #[inline]
21374 fn syntax(&self) -> &SyntaxNode {
21375 &self.syntax
21376 }
21377}
21378impl AstNode for ExprAsName {
21379 #[inline]
21380 fn can_cast(kind: SyntaxKind) -> bool {
21381 kind == SyntaxKind::EXPR_AS_NAME
21382 }
21383 #[inline]
21384 fn cast(syntax: SyntaxNode) -> Option<Self> {
21385 if Self::can_cast(syntax.kind()) {
21386 Some(Self { syntax })
21387 } else {
21388 None
21389 }
21390 }
21391 #[inline]
21392 fn syntax(&self) -> &SyntaxNode {
21393 &self.syntax
21394 }
21395}
21396impl AstNode for ExprType {
21397 #[inline]
21398 fn can_cast(kind: SyntaxKind) -> bool {
21399 kind == SyntaxKind::EXPR_TYPE
21400 }
21401 #[inline]
21402 fn cast(syntax: SyntaxNode) -> Option<Self> {
21403 if Self::can_cast(syntax.kind()) {
21404 Some(Self { syntax })
21405 } else {
21406 None
21407 }
21408 }
21409 #[inline]
21410 fn syntax(&self) -> &SyntaxNode {
21411 &self.syntax
21412 }
21413}
21414impl AstNode for ExtractFn {
21415 #[inline]
21416 fn can_cast(kind: SyntaxKind) -> bool {
21417 kind == SyntaxKind::EXTRACT_FN
21418 }
21419 #[inline]
21420 fn cast(syntax: SyntaxNode) -> Option<Self> {
21421 if Self::can_cast(syntax.kind()) {
21422 Some(Self { syntax })
21423 } else {
21424 None
21425 }
21426 }
21427 #[inline]
21428 fn syntax(&self) -> &SyntaxNode {
21429 &self.syntax
21430 }
21431}
21432impl AstNode for FatArrow {
21433 #[inline]
21434 fn can_cast(kind: SyntaxKind) -> bool {
21435 kind == SyntaxKind::FAT_ARROW
21436 }
21437 #[inline]
21438 fn cast(syntax: SyntaxNode) -> Option<Self> {
21439 if Self::can_cast(syntax.kind()) {
21440 Some(Self { syntax })
21441 } else {
21442 None
21443 }
21444 }
21445 #[inline]
21446 fn syntax(&self) -> &SyntaxNode {
21447 &self.syntax
21448 }
21449}
21450impl AstNode for FdwOption {
21451 #[inline]
21452 fn can_cast(kind: SyntaxKind) -> bool {
21453 kind == SyntaxKind::FDW_OPTION
21454 }
21455 #[inline]
21456 fn cast(syntax: SyntaxNode) -> Option<Self> {
21457 if Self::can_cast(syntax.kind()) {
21458 Some(Self { syntax })
21459 } else {
21460 None
21461 }
21462 }
21463 #[inline]
21464 fn syntax(&self) -> &SyntaxNode {
21465 &self.syntax
21466 }
21467}
21468impl AstNode for FdwOptionList {
21469 #[inline]
21470 fn can_cast(kind: SyntaxKind) -> bool {
21471 kind == SyntaxKind::FDW_OPTION_LIST
21472 }
21473 #[inline]
21474 fn cast(syntax: SyntaxNode) -> Option<Self> {
21475 if Self::can_cast(syntax.kind()) {
21476 Some(Self { syntax })
21477 } else {
21478 None
21479 }
21480 }
21481 #[inline]
21482 fn syntax(&self) -> &SyntaxNode {
21483 &self.syntax
21484 }
21485}
21486impl AstNode for Fetch {
21487 #[inline]
21488 fn can_cast(kind: SyntaxKind) -> bool {
21489 kind == SyntaxKind::FETCH
21490 }
21491 #[inline]
21492 fn cast(syntax: SyntaxNode) -> Option<Self> {
21493 if Self::can_cast(syntax.kind()) {
21494 Some(Self { syntax })
21495 } else {
21496 None
21497 }
21498 }
21499 #[inline]
21500 fn syntax(&self) -> &SyntaxNode {
21501 &self.syntax
21502 }
21503}
21504impl AstNode for FetchClause {
21505 #[inline]
21506 fn can_cast(kind: SyntaxKind) -> bool {
21507 kind == SyntaxKind::FETCH_CLAUSE
21508 }
21509 #[inline]
21510 fn cast(syntax: SyntaxNode) -> Option<Self> {
21511 if Self::can_cast(syntax.kind()) {
21512 Some(Self { syntax })
21513 } else {
21514 None
21515 }
21516 }
21517 #[inline]
21518 fn syntax(&self) -> &SyntaxNode {
21519 &self.syntax
21520 }
21521}
21522impl AstNode for FieldExpr {
21523 #[inline]
21524 fn can_cast(kind: SyntaxKind) -> bool {
21525 kind == SyntaxKind::FIELD_EXPR
21526 }
21527 #[inline]
21528 fn cast(syntax: SyntaxNode) -> Option<Self> {
21529 if Self::can_cast(syntax.kind()) {
21530 Some(Self { syntax })
21531 } else {
21532 None
21533 }
21534 }
21535 #[inline]
21536 fn syntax(&self) -> &SyntaxNode {
21537 &self.syntax
21538 }
21539}
21540impl AstNode for FilterClause {
21541 #[inline]
21542 fn can_cast(kind: SyntaxKind) -> bool {
21543 kind == SyntaxKind::FILTER_CLAUSE
21544 }
21545 #[inline]
21546 fn cast(syntax: SyntaxNode) -> Option<Self> {
21547 if Self::can_cast(syntax.kind()) {
21548 Some(Self { syntax })
21549 } else {
21550 None
21551 }
21552 }
21553 #[inline]
21554 fn syntax(&self) -> &SyntaxNode {
21555 &self.syntax
21556 }
21557}
21558impl AstNode for ForProvider {
21559 #[inline]
21560 fn can_cast(kind: SyntaxKind) -> bool {
21561 kind == SyntaxKind::FOR_PROVIDER
21562 }
21563 #[inline]
21564 fn cast(syntax: SyntaxNode) -> Option<Self> {
21565 if Self::can_cast(syntax.kind()) {
21566 Some(Self { syntax })
21567 } else {
21568 None
21569 }
21570 }
21571 #[inline]
21572 fn syntax(&self) -> &SyntaxNode {
21573 &self.syntax
21574 }
21575}
21576impl AstNode for ForceRls {
21577 #[inline]
21578 fn can_cast(kind: SyntaxKind) -> bool {
21579 kind == SyntaxKind::FORCE_RLS
21580 }
21581 #[inline]
21582 fn cast(syntax: SyntaxNode) -> Option<Self> {
21583 if Self::can_cast(syntax.kind()) {
21584 Some(Self { syntax })
21585 } else {
21586 None
21587 }
21588 }
21589 #[inline]
21590 fn syntax(&self) -> &SyntaxNode {
21591 &self.syntax
21592 }
21593}
21594impl AstNode for ForeignKeyConstraint {
21595 #[inline]
21596 fn can_cast(kind: SyntaxKind) -> bool {
21597 kind == SyntaxKind::FOREIGN_KEY_CONSTRAINT
21598 }
21599 #[inline]
21600 fn cast(syntax: SyntaxNode) -> Option<Self> {
21601 if Self::can_cast(syntax.kind()) {
21602 Some(Self { syntax })
21603 } else {
21604 None
21605 }
21606 }
21607 #[inline]
21608 fn syntax(&self) -> &SyntaxNode {
21609 &self.syntax
21610 }
21611}
21612impl AstNode for FrameClause {
21613 #[inline]
21614 fn can_cast(kind: SyntaxKind) -> bool {
21615 kind == SyntaxKind::FRAME_CLAUSE
21616 }
21617 #[inline]
21618 fn cast(syntax: SyntaxNode) -> Option<Self> {
21619 if Self::can_cast(syntax.kind()) {
21620 Some(Self { syntax })
21621 } else {
21622 None
21623 }
21624 }
21625 #[inline]
21626 fn syntax(&self) -> &SyntaxNode {
21627 &self.syntax
21628 }
21629}
21630impl AstNode for FromClause {
21631 #[inline]
21632 fn can_cast(kind: SyntaxKind) -> bool {
21633 kind == SyntaxKind::FROM_CLAUSE
21634 }
21635 #[inline]
21636 fn cast(syntax: SyntaxNode) -> Option<Self> {
21637 if Self::can_cast(syntax.kind()) {
21638 Some(Self { syntax })
21639 } else {
21640 None
21641 }
21642 }
21643 #[inline]
21644 fn syntax(&self) -> &SyntaxNode {
21645 &self.syntax
21646 }
21647}
21648impl AstNode for FromItem {
21649 #[inline]
21650 fn can_cast(kind: SyntaxKind) -> bool {
21651 kind == SyntaxKind::FROM_ITEM
21652 }
21653 #[inline]
21654 fn cast(syntax: SyntaxNode) -> Option<Self> {
21655 if Self::can_cast(syntax.kind()) {
21656 Some(Self { syntax })
21657 } else {
21658 None
21659 }
21660 }
21661 #[inline]
21662 fn syntax(&self) -> &SyntaxNode {
21663 &self.syntax
21664 }
21665}
21666impl AstNode for FromServer {
21667 #[inline]
21668 fn can_cast(kind: SyntaxKind) -> bool {
21669 kind == SyntaxKind::FROM_SERVER
21670 }
21671 #[inline]
21672 fn cast(syntax: SyntaxNode) -> Option<Self> {
21673 if Self::can_cast(syntax.kind()) {
21674 Some(Self { syntax })
21675 } else {
21676 None
21677 }
21678 }
21679 #[inline]
21680 fn syntax(&self) -> &SyntaxNode {
21681 &self.syntax
21682 }
21683}
21684impl AstNode for FromTable {
21685 #[inline]
21686 fn can_cast(kind: SyntaxKind) -> bool {
21687 kind == SyntaxKind::FROM_TABLE
21688 }
21689 #[inline]
21690 fn cast(syntax: SyntaxNode) -> Option<Self> {
21691 if Self::can_cast(syntax.kind()) {
21692 Some(Self { syntax })
21693 } else {
21694 None
21695 }
21696 }
21697 #[inline]
21698 fn syntax(&self) -> &SyntaxNode {
21699 &self.syntax
21700 }
21701}
21702impl AstNode for FuncOptionList {
21703 #[inline]
21704 fn can_cast(kind: SyntaxKind) -> bool {
21705 kind == SyntaxKind::FUNC_OPTION_LIST
21706 }
21707 #[inline]
21708 fn cast(syntax: SyntaxNode) -> Option<Self> {
21709 if Self::can_cast(syntax.kind()) {
21710 Some(Self { syntax })
21711 } else {
21712 None
21713 }
21714 }
21715 #[inline]
21716 fn syntax(&self) -> &SyntaxNode {
21717 &self.syntax
21718 }
21719}
21720impl AstNode for FunctionSig {
21721 #[inline]
21722 fn can_cast(kind: SyntaxKind) -> bool {
21723 kind == SyntaxKind::FUNCTION_SIG
21724 }
21725 #[inline]
21726 fn cast(syntax: SyntaxNode) -> Option<Self> {
21727 if Self::can_cast(syntax.kind()) {
21728 Some(Self { syntax })
21729 } else {
21730 None
21731 }
21732 }
21733 #[inline]
21734 fn syntax(&self) -> &SyntaxNode {
21735 &self.syntax
21736 }
21737}
21738impl AstNode for FunctionSigList {
21739 #[inline]
21740 fn can_cast(kind: SyntaxKind) -> bool {
21741 kind == SyntaxKind::FUNCTION_SIG_LIST
21742 }
21743 #[inline]
21744 fn cast(syntax: SyntaxNode) -> Option<Self> {
21745 if Self::can_cast(syntax.kind()) {
21746 Some(Self { syntax })
21747 } else {
21748 None
21749 }
21750 }
21751 #[inline]
21752 fn syntax(&self) -> &SyntaxNode {
21753 &self.syntax
21754 }
21755}
21756impl AstNode for GeneratedConstraint {
21757 #[inline]
21758 fn can_cast(kind: SyntaxKind) -> bool {
21759 kind == SyntaxKind::GENERATED_CONSTRAINT
21760 }
21761 #[inline]
21762 fn cast(syntax: SyntaxNode) -> Option<Self> {
21763 if Self::can_cast(syntax.kind()) {
21764 Some(Self { syntax })
21765 } else {
21766 None
21767 }
21768 }
21769 #[inline]
21770 fn syntax(&self) -> &SyntaxNode {
21771 &self.syntax
21772 }
21773}
21774impl AstNode for Grant {
21775 #[inline]
21776 fn can_cast(kind: SyntaxKind) -> bool {
21777 kind == SyntaxKind::GRANT
21778 }
21779 #[inline]
21780 fn cast(syntax: SyntaxNode) -> Option<Self> {
21781 if Self::can_cast(syntax.kind()) {
21782 Some(Self { syntax })
21783 } else {
21784 None
21785 }
21786 }
21787 #[inline]
21788 fn syntax(&self) -> &SyntaxNode {
21789 &self.syntax
21790 }
21791}
21792impl AstNode for GrantDefaultPrivileges {
21793 #[inline]
21794 fn can_cast(kind: SyntaxKind) -> bool {
21795 kind == SyntaxKind::GRANT_DEFAULT_PRIVILEGES
21796 }
21797 #[inline]
21798 fn cast(syntax: SyntaxNode) -> Option<Self> {
21799 if Self::can_cast(syntax.kind()) {
21800 Some(Self { syntax })
21801 } else {
21802 None
21803 }
21804 }
21805 #[inline]
21806 fn syntax(&self) -> &SyntaxNode {
21807 &self.syntax
21808 }
21809}
21810impl AstNode for GroupByClause {
21811 #[inline]
21812 fn can_cast(kind: SyntaxKind) -> bool {
21813 kind == SyntaxKind::GROUP_BY_CLAUSE
21814 }
21815 #[inline]
21816 fn cast(syntax: SyntaxNode) -> Option<Self> {
21817 if Self::can_cast(syntax.kind()) {
21818 Some(Self { syntax })
21819 } else {
21820 None
21821 }
21822 }
21823 #[inline]
21824 fn syntax(&self) -> &SyntaxNode {
21825 &self.syntax
21826 }
21827}
21828impl AstNode for GroupByList {
21829 #[inline]
21830 fn can_cast(kind: SyntaxKind) -> bool {
21831 kind == SyntaxKind::GROUP_BY_LIST
21832 }
21833 #[inline]
21834 fn cast(syntax: SyntaxNode) -> Option<Self> {
21835 if Self::can_cast(syntax.kind()) {
21836 Some(Self { syntax })
21837 } else {
21838 None
21839 }
21840 }
21841 #[inline]
21842 fn syntax(&self) -> &SyntaxNode {
21843 &self.syntax
21844 }
21845}
21846impl AstNode for GroupingCube {
21847 #[inline]
21848 fn can_cast(kind: SyntaxKind) -> bool {
21849 kind == SyntaxKind::GROUPING_CUBE
21850 }
21851 #[inline]
21852 fn cast(syntax: SyntaxNode) -> Option<Self> {
21853 if Self::can_cast(syntax.kind()) {
21854 Some(Self { syntax })
21855 } else {
21856 None
21857 }
21858 }
21859 #[inline]
21860 fn syntax(&self) -> &SyntaxNode {
21861 &self.syntax
21862 }
21863}
21864impl AstNode for GroupingExpr {
21865 #[inline]
21866 fn can_cast(kind: SyntaxKind) -> bool {
21867 kind == SyntaxKind::GROUPING_EXPR
21868 }
21869 #[inline]
21870 fn cast(syntax: SyntaxNode) -> Option<Self> {
21871 if Self::can_cast(syntax.kind()) {
21872 Some(Self { syntax })
21873 } else {
21874 None
21875 }
21876 }
21877 #[inline]
21878 fn syntax(&self) -> &SyntaxNode {
21879 &self.syntax
21880 }
21881}
21882impl AstNode for GroupingRollup {
21883 #[inline]
21884 fn can_cast(kind: SyntaxKind) -> bool {
21885 kind == SyntaxKind::GROUPING_ROLLUP
21886 }
21887 #[inline]
21888 fn cast(syntax: SyntaxNode) -> Option<Self> {
21889 if Self::can_cast(syntax.kind()) {
21890 Some(Self { syntax })
21891 } else {
21892 None
21893 }
21894 }
21895 #[inline]
21896 fn syntax(&self) -> &SyntaxNode {
21897 &self.syntax
21898 }
21899}
21900impl AstNode for GroupingSets {
21901 #[inline]
21902 fn can_cast(kind: SyntaxKind) -> bool {
21903 kind == SyntaxKind::GROUPING_SETS
21904 }
21905 #[inline]
21906 fn cast(syntax: SyntaxNode) -> Option<Self> {
21907 if Self::can_cast(syntax.kind()) {
21908 Some(Self { syntax })
21909 } else {
21910 None
21911 }
21912 }
21913 #[inline]
21914 fn syntax(&self) -> &SyntaxNode {
21915 &self.syntax
21916 }
21917}
21918impl AstNode for Gteq {
21919 #[inline]
21920 fn can_cast(kind: SyntaxKind) -> bool {
21921 kind == SyntaxKind::GTEQ
21922 }
21923 #[inline]
21924 fn cast(syntax: SyntaxNode) -> Option<Self> {
21925 if Self::can_cast(syntax.kind()) {
21926 Some(Self { syntax })
21927 } else {
21928 None
21929 }
21930 }
21931 #[inline]
21932 fn syntax(&self) -> &SyntaxNode {
21933 &self.syntax
21934 }
21935}
21936impl AstNode for HandlerClause {
21937 #[inline]
21938 fn can_cast(kind: SyntaxKind) -> bool {
21939 kind == SyntaxKind::HANDLER_CLAUSE
21940 }
21941 #[inline]
21942 fn cast(syntax: SyntaxNode) -> Option<Self> {
21943 if Self::can_cast(syntax.kind()) {
21944 Some(Self { syntax })
21945 } else {
21946 None
21947 }
21948 }
21949 #[inline]
21950 fn syntax(&self) -> &SyntaxNode {
21951 &self.syntax
21952 }
21953}
21954impl AstNode for HavingClause {
21955 #[inline]
21956 fn can_cast(kind: SyntaxKind) -> bool {
21957 kind == SyntaxKind::HAVING_CLAUSE
21958 }
21959 #[inline]
21960 fn cast(syntax: SyntaxNode) -> Option<Self> {
21961 if Self::can_cast(syntax.kind()) {
21962 Some(Self { syntax })
21963 } else {
21964 None
21965 }
21966 }
21967 #[inline]
21968 fn syntax(&self) -> &SyntaxNode {
21969 &self.syntax
21970 }
21971}
21972impl AstNode for IfExists {
21973 #[inline]
21974 fn can_cast(kind: SyntaxKind) -> bool {
21975 kind == SyntaxKind::IF_EXISTS
21976 }
21977 #[inline]
21978 fn cast(syntax: SyntaxNode) -> Option<Self> {
21979 if Self::can_cast(syntax.kind()) {
21980 Some(Self { syntax })
21981 } else {
21982 None
21983 }
21984 }
21985 #[inline]
21986 fn syntax(&self) -> &SyntaxNode {
21987 &self.syntax
21988 }
21989}
21990impl AstNode for IfNotExists {
21991 #[inline]
21992 fn can_cast(kind: SyntaxKind) -> bool {
21993 kind == SyntaxKind::IF_NOT_EXISTS
21994 }
21995 #[inline]
21996 fn cast(syntax: SyntaxNode) -> Option<Self> {
21997 if Self::can_cast(syntax.kind()) {
21998 Some(Self { syntax })
21999 } else {
22000 None
22001 }
22002 }
22003 #[inline]
22004 fn syntax(&self) -> &SyntaxNode {
22005 &self.syntax
22006 }
22007}
22008impl AstNode for ImportForeignSchema {
22009 #[inline]
22010 fn can_cast(kind: SyntaxKind) -> bool {
22011 kind == SyntaxKind::IMPORT_FOREIGN_SCHEMA
22012 }
22013 #[inline]
22014 fn cast(syntax: SyntaxNode) -> Option<Self> {
22015 if Self::can_cast(syntax.kind()) {
22016 Some(Self { syntax })
22017 } else {
22018 None
22019 }
22020 }
22021 #[inline]
22022 fn syntax(&self) -> &SyntaxNode {
22023 &self.syntax
22024 }
22025}
22026impl AstNode for IndexExpr {
22027 #[inline]
22028 fn can_cast(kind: SyntaxKind) -> bool {
22029 kind == SyntaxKind::INDEX_EXPR
22030 }
22031 #[inline]
22032 fn cast(syntax: SyntaxNode) -> Option<Self> {
22033 if Self::can_cast(syntax.kind()) {
22034 Some(Self { syntax })
22035 } else {
22036 None
22037 }
22038 }
22039 #[inline]
22040 fn syntax(&self) -> &SyntaxNode {
22041 &self.syntax
22042 }
22043}
22044impl AstNode for Inherit {
22045 #[inline]
22046 fn can_cast(kind: SyntaxKind) -> bool {
22047 kind == SyntaxKind::INHERIT
22048 }
22049 #[inline]
22050 fn cast(syntax: SyntaxNode) -> Option<Self> {
22051 if Self::can_cast(syntax.kind()) {
22052 Some(Self { syntax })
22053 } else {
22054 None
22055 }
22056 }
22057 #[inline]
22058 fn syntax(&self) -> &SyntaxNode {
22059 &self.syntax
22060 }
22061}
22062impl AstNode for InheritTable {
22063 #[inline]
22064 fn can_cast(kind: SyntaxKind) -> bool {
22065 kind == SyntaxKind::INHERIT_TABLE
22066 }
22067 #[inline]
22068 fn cast(syntax: SyntaxNode) -> Option<Self> {
22069 if Self::can_cast(syntax.kind()) {
22070 Some(Self { syntax })
22071 } else {
22072 None
22073 }
22074 }
22075 #[inline]
22076 fn syntax(&self) -> &SyntaxNode {
22077 &self.syntax
22078 }
22079}
22080impl AstNode for Inherits {
22081 #[inline]
22082 fn can_cast(kind: SyntaxKind) -> bool {
22083 kind == SyntaxKind::INHERITS
22084 }
22085 #[inline]
22086 fn cast(syntax: SyntaxNode) -> Option<Self> {
22087 if Self::can_cast(syntax.kind()) {
22088 Some(Self { syntax })
22089 } else {
22090 None
22091 }
22092 }
22093 #[inline]
22094 fn syntax(&self) -> &SyntaxNode {
22095 &self.syntax
22096 }
22097}
22098impl AstNode for InitiallyDeferredConstraintOption {
22099 #[inline]
22100 fn can_cast(kind: SyntaxKind) -> bool {
22101 kind == SyntaxKind::INITIALLY_DEFERRED_CONSTRAINT_OPTION
22102 }
22103 #[inline]
22104 fn cast(syntax: SyntaxNode) -> Option<Self> {
22105 if Self::can_cast(syntax.kind()) {
22106 Some(Self { syntax })
22107 } else {
22108 None
22109 }
22110 }
22111 #[inline]
22112 fn syntax(&self) -> &SyntaxNode {
22113 &self.syntax
22114 }
22115}
22116impl AstNode for InitiallyImmediateConstraintOption {
22117 #[inline]
22118 fn can_cast(kind: SyntaxKind) -> bool {
22119 kind == SyntaxKind::INITIALLY_IMMEDIATE_CONSTRAINT_OPTION
22120 }
22121 #[inline]
22122 fn cast(syntax: SyntaxNode) -> Option<Self> {
22123 if Self::can_cast(syntax.kind()) {
22124 Some(Self { syntax })
22125 } else {
22126 None
22127 }
22128 }
22129 #[inline]
22130 fn syntax(&self) -> &SyntaxNode {
22131 &self.syntax
22132 }
22133}
22134impl AstNode for Insert {
22135 #[inline]
22136 fn can_cast(kind: SyntaxKind) -> bool {
22137 kind == SyntaxKind::INSERT
22138 }
22139 #[inline]
22140 fn cast(syntax: SyntaxNode) -> Option<Self> {
22141 if Self::can_cast(syntax.kind()) {
22142 Some(Self { syntax })
22143 } else {
22144 None
22145 }
22146 }
22147 #[inline]
22148 fn syntax(&self) -> &SyntaxNode {
22149 &self.syntax
22150 }
22151}
22152impl AstNode for IntervalType {
22153 #[inline]
22154 fn can_cast(kind: SyntaxKind) -> bool {
22155 kind == SyntaxKind::INTERVAL_TYPE
22156 }
22157 #[inline]
22158 fn cast(syntax: SyntaxNode) -> Option<Self> {
22159 if Self::can_cast(syntax.kind()) {
22160 Some(Self { syntax })
22161 } else {
22162 None
22163 }
22164 }
22165 #[inline]
22166 fn syntax(&self) -> &SyntaxNode {
22167 &self.syntax
22168 }
22169}
22170impl AstNode for IntoClause {
22171 #[inline]
22172 fn can_cast(kind: SyntaxKind) -> bool {
22173 kind == SyntaxKind::INTO_CLAUSE
22174 }
22175 #[inline]
22176 fn cast(syntax: SyntaxNode) -> Option<Self> {
22177 if Self::can_cast(syntax.kind()) {
22178 Some(Self { syntax })
22179 } else {
22180 None
22181 }
22182 }
22183 #[inline]
22184 fn syntax(&self) -> &SyntaxNode {
22185 &self.syntax
22186 }
22187}
22188impl AstNode for IntoSchema {
22189 #[inline]
22190 fn can_cast(kind: SyntaxKind) -> bool {
22191 kind == SyntaxKind::INTO_SCHEMA
22192 }
22193 #[inline]
22194 fn cast(syntax: SyntaxNode) -> Option<Self> {
22195 if Self::can_cast(syntax.kind()) {
22196 Some(Self { syntax })
22197 } else {
22198 None
22199 }
22200 }
22201 #[inline]
22202 fn syntax(&self) -> &SyntaxNode {
22203 &self.syntax
22204 }
22205}
22206impl AstNode for IsDistinctFrom {
22207 #[inline]
22208 fn can_cast(kind: SyntaxKind) -> bool {
22209 kind == SyntaxKind::IS_DISTINCT_FROM
22210 }
22211 #[inline]
22212 fn cast(syntax: SyntaxNode) -> Option<Self> {
22213 if Self::can_cast(syntax.kind()) {
22214 Some(Self { syntax })
22215 } else {
22216 None
22217 }
22218 }
22219 #[inline]
22220 fn syntax(&self) -> &SyntaxNode {
22221 &self.syntax
22222 }
22223}
22224impl AstNode for IsJson {
22225 #[inline]
22226 fn can_cast(kind: SyntaxKind) -> bool {
22227 kind == SyntaxKind::IS_JSON
22228 }
22229 #[inline]
22230 fn cast(syntax: SyntaxNode) -> Option<Self> {
22231 if Self::can_cast(syntax.kind()) {
22232 Some(Self { syntax })
22233 } else {
22234 None
22235 }
22236 }
22237 #[inline]
22238 fn syntax(&self) -> &SyntaxNode {
22239 &self.syntax
22240 }
22241}
22242impl AstNode for IsJsonArray {
22243 #[inline]
22244 fn can_cast(kind: SyntaxKind) -> bool {
22245 kind == SyntaxKind::IS_JSON_ARRAY
22246 }
22247 #[inline]
22248 fn cast(syntax: SyntaxNode) -> Option<Self> {
22249 if Self::can_cast(syntax.kind()) {
22250 Some(Self { syntax })
22251 } else {
22252 None
22253 }
22254 }
22255 #[inline]
22256 fn syntax(&self) -> &SyntaxNode {
22257 &self.syntax
22258 }
22259}
22260impl AstNode for IsJsonObject {
22261 #[inline]
22262 fn can_cast(kind: SyntaxKind) -> bool {
22263 kind == SyntaxKind::IS_JSON_OBJECT
22264 }
22265 #[inline]
22266 fn cast(syntax: SyntaxNode) -> Option<Self> {
22267 if Self::can_cast(syntax.kind()) {
22268 Some(Self { syntax })
22269 } else {
22270 None
22271 }
22272 }
22273 #[inline]
22274 fn syntax(&self) -> &SyntaxNode {
22275 &self.syntax
22276 }
22277}
22278impl AstNode for IsJsonScalar {
22279 #[inline]
22280 fn can_cast(kind: SyntaxKind) -> bool {
22281 kind == SyntaxKind::IS_JSON_SCALAR
22282 }
22283 #[inline]
22284 fn cast(syntax: SyntaxNode) -> Option<Self> {
22285 if Self::can_cast(syntax.kind()) {
22286 Some(Self { syntax })
22287 } else {
22288 None
22289 }
22290 }
22291 #[inline]
22292 fn syntax(&self) -> &SyntaxNode {
22293 &self.syntax
22294 }
22295}
22296impl AstNode for IsJsonValue {
22297 #[inline]
22298 fn can_cast(kind: SyntaxKind) -> bool {
22299 kind == SyntaxKind::IS_JSON_VALUE
22300 }
22301 #[inline]
22302 fn cast(syntax: SyntaxNode) -> Option<Self> {
22303 if Self::can_cast(syntax.kind()) {
22304 Some(Self { syntax })
22305 } else {
22306 None
22307 }
22308 }
22309 #[inline]
22310 fn syntax(&self) -> &SyntaxNode {
22311 &self.syntax
22312 }
22313}
22314impl AstNode for IsNormalized {
22315 #[inline]
22316 fn can_cast(kind: SyntaxKind) -> bool {
22317 kind == SyntaxKind::IS_NORMALIZED
22318 }
22319 #[inline]
22320 fn cast(syntax: SyntaxNode) -> Option<Self> {
22321 if Self::can_cast(syntax.kind()) {
22322 Some(Self { syntax })
22323 } else {
22324 None
22325 }
22326 }
22327 #[inline]
22328 fn syntax(&self) -> &SyntaxNode {
22329 &self.syntax
22330 }
22331}
22332impl AstNode for IsNot {
22333 #[inline]
22334 fn can_cast(kind: SyntaxKind) -> bool {
22335 kind == SyntaxKind::IS_NOT
22336 }
22337 #[inline]
22338 fn cast(syntax: SyntaxNode) -> Option<Self> {
22339 if Self::can_cast(syntax.kind()) {
22340 Some(Self { syntax })
22341 } else {
22342 None
22343 }
22344 }
22345 #[inline]
22346 fn syntax(&self) -> &SyntaxNode {
22347 &self.syntax
22348 }
22349}
22350impl AstNode for IsNotDistinctFrom {
22351 #[inline]
22352 fn can_cast(kind: SyntaxKind) -> bool {
22353 kind == SyntaxKind::IS_NOT_DISTINCT_FROM
22354 }
22355 #[inline]
22356 fn cast(syntax: SyntaxNode) -> Option<Self> {
22357 if Self::can_cast(syntax.kind()) {
22358 Some(Self { syntax })
22359 } else {
22360 None
22361 }
22362 }
22363 #[inline]
22364 fn syntax(&self) -> &SyntaxNode {
22365 &self.syntax
22366 }
22367}
22368impl AstNode for IsNotJson {
22369 #[inline]
22370 fn can_cast(kind: SyntaxKind) -> bool {
22371 kind == SyntaxKind::IS_NOT_JSON
22372 }
22373 #[inline]
22374 fn cast(syntax: SyntaxNode) -> Option<Self> {
22375 if Self::can_cast(syntax.kind()) {
22376 Some(Self { syntax })
22377 } else {
22378 None
22379 }
22380 }
22381 #[inline]
22382 fn syntax(&self) -> &SyntaxNode {
22383 &self.syntax
22384 }
22385}
22386impl AstNode for IsNotJsonArray {
22387 #[inline]
22388 fn can_cast(kind: SyntaxKind) -> bool {
22389 kind == SyntaxKind::IS_NOT_JSON_ARRAY
22390 }
22391 #[inline]
22392 fn cast(syntax: SyntaxNode) -> Option<Self> {
22393 if Self::can_cast(syntax.kind()) {
22394 Some(Self { syntax })
22395 } else {
22396 None
22397 }
22398 }
22399 #[inline]
22400 fn syntax(&self) -> &SyntaxNode {
22401 &self.syntax
22402 }
22403}
22404impl AstNode for IsNotJsonObject {
22405 #[inline]
22406 fn can_cast(kind: SyntaxKind) -> bool {
22407 kind == SyntaxKind::IS_NOT_JSON_OBJECT
22408 }
22409 #[inline]
22410 fn cast(syntax: SyntaxNode) -> Option<Self> {
22411 if Self::can_cast(syntax.kind()) {
22412 Some(Self { syntax })
22413 } else {
22414 None
22415 }
22416 }
22417 #[inline]
22418 fn syntax(&self) -> &SyntaxNode {
22419 &self.syntax
22420 }
22421}
22422impl AstNode for IsNotJsonScalar {
22423 #[inline]
22424 fn can_cast(kind: SyntaxKind) -> bool {
22425 kind == SyntaxKind::IS_NOT_JSON_SCALAR
22426 }
22427 #[inline]
22428 fn cast(syntax: SyntaxNode) -> Option<Self> {
22429 if Self::can_cast(syntax.kind()) {
22430 Some(Self { syntax })
22431 } else {
22432 None
22433 }
22434 }
22435 #[inline]
22436 fn syntax(&self) -> &SyntaxNode {
22437 &self.syntax
22438 }
22439}
22440impl AstNode for IsNotJsonValue {
22441 #[inline]
22442 fn can_cast(kind: SyntaxKind) -> bool {
22443 kind == SyntaxKind::IS_NOT_JSON_VALUE
22444 }
22445 #[inline]
22446 fn cast(syntax: SyntaxNode) -> Option<Self> {
22447 if Self::can_cast(syntax.kind()) {
22448 Some(Self { syntax })
22449 } else {
22450 None
22451 }
22452 }
22453 #[inline]
22454 fn syntax(&self) -> &SyntaxNode {
22455 &self.syntax
22456 }
22457}
22458impl AstNode for IsNotNormalized {
22459 #[inline]
22460 fn can_cast(kind: SyntaxKind) -> bool {
22461 kind == SyntaxKind::IS_NOT_NORMALIZED
22462 }
22463 #[inline]
22464 fn cast(syntax: SyntaxNode) -> Option<Self> {
22465 if Self::can_cast(syntax.kind()) {
22466 Some(Self { syntax })
22467 } else {
22468 None
22469 }
22470 }
22471 #[inline]
22472 fn syntax(&self) -> &SyntaxNode {
22473 &self.syntax
22474 }
22475}
22476impl AstNode for Join {
22477 #[inline]
22478 fn can_cast(kind: SyntaxKind) -> bool {
22479 kind == SyntaxKind::JOIN
22480 }
22481 #[inline]
22482 fn cast(syntax: SyntaxNode) -> Option<Self> {
22483 if Self::can_cast(syntax.kind()) {
22484 Some(Self { syntax })
22485 } else {
22486 None
22487 }
22488 }
22489 #[inline]
22490 fn syntax(&self) -> &SyntaxNode {
22491 &self.syntax
22492 }
22493}
22494impl AstNode for JoinCross {
22495 #[inline]
22496 fn can_cast(kind: SyntaxKind) -> bool {
22497 kind == SyntaxKind::JOIN_CROSS
22498 }
22499 #[inline]
22500 fn cast(syntax: SyntaxNode) -> Option<Self> {
22501 if Self::can_cast(syntax.kind()) {
22502 Some(Self { syntax })
22503 } else {
22504 None
22505 }
22506 }
22507 #[inline]
22508 fn syntax(&self) -> &SyntaxNode {
22509 &self.syntax
22510 }
22511}
22512impl AstNode for JoinExpr {
22513 #[inline]
22514 fn can_cast(kind: SyntaxKind) -> bool {
22515 kind == SyntaxKind::JOIN_EXPR
22516 }
22517 #[inline]
22518 fn cast(syntax: SyntaxNode) -> Option<Self> {
22519 if Self::can_cast(syntax.kind()) {
22520 Some(Self { syntax })
22521 } else {
22522 None
22523 }
22524 }
22525 #[inline]
22526 fn syntax(&self) -> &SyntaxNode {
22527 &self.syntax
22528 }
22529}
22530impl AstNode for JoinFull {
22531 #[inline]
22532 fn can_cast(kind: SyntaxKind) -> bool {
22533 kind == SyntaxKind::JOIN_FULL
22534 }
22535 #[inline]
22536 fn cast(syntax: SyntaxNode) -> Option<Self> {
22537 if Self::can_cast(syntax.kind()) {
22538 Some(Self { syntax })
22539 } else {
22540 None
22541 }
22542 }
22543 #[inline]
22544 fn syntax(&self) -> &SyntaxNode {
22545 &self.syntax
22546 }
22547}
22548impl AstNode for JoinInner {
22549 #[inline]
22550 fn can_cast(kind: SyntaxKind) -> bool {
22551 kind == SyntaxKind::JOIN_INNER
22552 }
22553 #[inline]
22554 fn cast(syntax: SyntaxNode) -> Option<Self> {
22555 if Self::can_cast(syntax.kind()) {
22556 Some(Self { syntax })
22557 } else {
22558 None
22559 }
22560 }
22561 #[inline]
22562 fn syntax(&self) -> &SyntaxNode {
22563 &self.syntax
22564 }
22565}
22566impl AstNode for JoinLeft {
22567 #[inline]
22568 fn can_cast(kind: SyntaxKind) -> bool {
22569 kind == SyntaxKind::JOIN_LEFT
22570 }
22571 #[inline]
22572 fn cast(syntax: SyntaxNode) -> Option<Self> {
22573 if Self::can_cast(syntax.kind()) {
22574 Some(Self { syntax })
22575 } else {
22576 None
22577 }
22578 }
22579 #[inline]
22580 fn syntax(&self) -> &SyntaxNode {
22581 &self.syntax
22582 }
22583}
22584impl AstNode for JoinRight {
22585 #[inline]
22586 fn can_cast(kind: SyntaxKind) -> bool {
22587 kind == SyntaxKind::JOIN_RIGHT
22588 }
22589 #[inline]
22590 fn cast(syntax: SyntaxNode) -> Option<Self> {
22591 if Self::can_cast(syntax.kind()) {
22592 Some(Self { syntax })
22593 } else {
22594 None
22595 }
22596 }
22597 #[inline]
22598 fn syntax(&self) -> &SyntaxNode {
22599 &self.syntax
22600 }
22601}
22602impl AstNode for JoinUsingClause {
22603 #[inline]
22604 fn can_cast(kind: SyntaxKind) -> bool {
22605 kind == SyntaxKind::JOIN_USING_CLAUSE
22606 }
22607 #[inline]
22608 fn cast(syntax: SyntaxNode) -> Option<Self> {
22609 if Self::can_cast(syntax.kind()) {
22610 Some(Self { syntax })
22611 } else {
22612 None
22613 }
22614 }
22615 #[inline]
22616 fn syntax(&self) -> &SyntaxNode {
22617 &self.syntax
22618 }
22619}
22620impl AstNode for JsonArrayAggFn {
22621 #[inline]
22622 fn can_cast(kind: SyntaxKind) -> bool {
22623 kind == SyntaxKind::JSON_ARRAY_AGG_FN
22624 }
22625 #[inline]
22626 fn cast(syntax: SyntaxNode) -> Option<Self> {
22627 if Self::can_cast(syntax.kind()) {
22628 Some(Self { syntax })
22629 } else {
22630 None
22631 }
22632 }
22633 #[inline]
22634 fn syntax(&self) -> &SyntaxNode {
22635 &self.syntax
22636 }
22637}
22638impl AstNode for JsonArrayFn {
22639 #[inline]
22640 fn can_cast(kind: SyntaxKind) -> bool {
22641 kind == SyntaxKind::JSON_ARRAY_FN
22642 }
22643 #[inline]
22644 fn cast(syntax: SyntaxNode) -> Option<Self> {
22645 if Self::can_cast(syntax.kind()) {
22646 Some(Self { syntax })
22647 } else {
22648 None
22649 }
22650 }
22651 #[inline]
22652 fn syntax(&self) -> &SyntaxNode {
22653 &self.syntax
22654 }
22655}
22656impl AstNode for JsonBehaviorClause {
22657 #[inline]
22658 fn can_cast(kind: SyntaxKind) -> bool {
22659 kind == SyntaxKind::JSON_BEHAVIOR_CLAUSE
22660 }
22661 #[inline]
22662 fn cast(syntax: SyntaxNode) -> Option<Self> {
22663 if Self::can_cast(syntax.kind()) {
22664 Some(Self { syntax })
22665 } else {
22666 None
22667 }
22668 }
22669 #[inline]
22670 fn syntax(&self) -> &SyntaxNode {
22671 &self.syntax
22672 }
22673}
22674impl AstNode for JsonBehaviorDefault {
22675 #[inline]
22676 fn can_cast(kind: SyntaxKind) -> bool {
22677 kind == SyntaxKind::JSON_BEHAVIOR_DEFAULT
22678 }
22679 #[inline]
22680 fn cast(syntax: SyntaxNode) -> Option<Self> {
22681 if Self::can_cast(syntax.kind()) {
22682 Some(Self { syntax })
22683 } else {
22684 None
22685 }
22686 }
22687 #[inline]
22688 fn syntax(&self) -> &SyntaxNode {
22689 &self.syntax
22690 }
22691}
22692impl AstNode for JsonBehaviorEmptyArray {
22693 #[inline]
22694 fn can_cast(kind: SyntaxKind) -> bool {
22695 kind == SyntaxKind::JSON_BEHAVIOR_EMPTY_ARRAY
22696 }
22697 #[inline]
22698 fn cast(syntax: SyntaxNode) -> Option<Self> {
22699 if Self::can_cast(syntax.kind()) {
22700 Some(Self { syntax })
22701 } else {
22702 None
22703 }
22704 }
22705 #[inline]
22706 fn syntax(&self) -> &SyntaxNode {
22707 &self.syntax
22708 }
22709}
22710impl AstNode for JsonBehaviorEmptyObject {
22711 #[inline]
22712 fn can_cast(kind: SyntaxKind) -> bool {
22713 kind == SyntaxKind::JSON_BEHAVIOR_EMPTY_OBJECT
22714 }
22715 #[inline]
22716 fn cast(syntax: SyntaxNode) -> Option<Self> {
22717 if Self::can_cast(syntax.kind()) {
22718 Some(Self { syntax })
22719 } else {
22720 None
22721 }
22722 }
22723 #[inline]
22724 fn syntax(&self) -> &SyntaxNode {
22725 &self.syntax
22726 }
22727}
22728impl AstNode for JsonBehaviorError {
22729 #[inline]
22730 fn can_cast(kind: SyntaxKind) -> bool {
22731 kind == SyntaxKind::JSON_BEHAVIOR_ERROR
22732 }
22733 #[inline]
22734 fn cast(syntax: SyntaxNode) -> Option<Self> {
22735 if Self::can_cast(syntax.kind()) {
22736 Some(Self { syntax })
22737 } else {
22738 None
22739 }
22740 }
22741 #[inline]
22742 fn syntax(&self) -> &SyntaxNode {
22743 &self.syntax
22744 }
22745}
22746impl AstNode for JsonBehaviorFalse {
22747 #[inline]
22748 fn can_cast(kind: SyntaxKind) -> bool {
22749 kind == SyntaxKind::JSON_BEHAVIOR_FALSE
22750 }
22751 #[inline]
22752 fn cast(syntax: SyntaxNode) -> Option<Self> {
22753 if Self::can_cast(syntax.kind()) {
22754 Some(Self { syntax })
22755 } else {
22756 None
22757 }
22758 }
22759 #[inline]
22760 fn syntax(&self) -> &SyntaxNode {
22761 &self.syntax
22762 }
22763}
22764impl AstNode for JsonBehaviorNull {
22765 #[inline]
22766 fn can_cast(kind: SyntaxKind) -> bool {
22767 kind == SyntaxKind::JSON_BEHAVIOR_NULL
22768 }
22769 #[inline]
22770 fn cast(syntax: SyntaxNode) -> Option<Self> {
22771 if Self::can_cast(syntax.kind()) {
22772 Some(Self { syntax })
22773 } else {
22774 None
22775 }
22776 }
22777 #[inline]
22778 fn syntax(&self) -> &SyntaxNode {
22779 &self.syntax
22780 }
22781}
22782impl AstNode for JsonBehaviorTrue {
22783 #[inline]
22784 fn can_cast(kind: SyntaxKind) -> bool {
22785 kind == SyntaxKind::JSON_BEHAVIOR_TRUE
22786 }
22787 #[inline]
22788 fn cast(syntax: SyntaxNode) -> Option<Self> {
22789 if Self::can_cast(syntax.kind()) {
22790 Some(Self { syntax })
22791 } else {
22792 None
22793 }
22794 }
22795 #[inline]
22796 fn syntax(&self) -> &SyntaxNode {
22797 &self.syntax
22798 }
22799}
22800impl AstNode for JsonBehaviorUnknown {
22801 #[inline]
22802 fn can_cast(kind: SyntaxKind) -> bool {
22803 kind == SyntaxKind::JSON_BEHAVIOR_UNKNOWN
22804 }
22805 #[inline]
22806 fn cast(syntax: SyntaxNode) -> Option<Self> {
22807 if Self::can_cast(syntax.kind()) {
22808 Some(Self { syntax })
22809 } else {
22810 None
22811 }
22812 }
22813 #[inline]
22814 fn syntax(&self) -> &SyntaxNode {
22815 &self.syntax
22816 }
22817}
22818impl AstNode for JsonEncodingClause {
22819 #[inline]
22820 fn can_cast(kind: SyntaxKind) -> bool {
22821 kind == SyntaxKind::JSON_ENCODING_CLAUSE
22822 }
22823 #[inline]
22824 fn cast(syntax: SyntaxNode) -> Option<Self> {
22825 if Self::can_cast(syntax.kind()) {
22826 Some(Self { syntax })
22827 } else {
22828 None
22829 }
22830 }
22831 #[inline]
22832 fn syntax(&self) -> &SyntaxNode {
22833 &self.syntax
22834 }
22835}
22836impl AstNode for JsonExistsFn {
22837 #[inline]
22838 fn can_cast(kind: SyntaxKind) -> bool {
22839 kind == SyntaxKind::JSON_EXISTS_FN
22840 }
22841 #[inline]
22842 fn cast(syntax: SyntaxNode) -> Option<Self> {
22843 if Self::can_cast(syntax.kind()) {
22844 Some(Self { syntax })
22845 } else {
22846 None
22847 }
22848 }
22849 #[inline]
22850 fn syntax(&self) -> &SyntaxNode {
22851 &self.syntax
22852 }
22853}
22854impl AstNode for JsonExprFormat {
22855 #[inline]
22856 fn can_cast(kind: SyntaxKind) -> bool {
22857 kind == SyntaxKind::JSON_EXPR_FORMAT
22858 }
22859 #[inline]
22860 fn cast(syntax: SyntaxNode) -> Option<Self> {
22861 if Self::can_cast(syntax.kind()) {
22862 Some(Self { syntax })
22863 } else {
22864 None
22865 }
22866 }
22867 #[inline]
22868 fn syntax(&self) -> &SyntaxNode {
22869 &self.syntax
22870 }
22871}
22872impl AstNode for JsonFn {
22873 #[inline]
22874 fn can_cast(kind: SyntaxKind) -> bool {
22875 kind == SyntaxKind::JSON_FN
22876 }
22877 #[inline]
22878 fn cast(syntax: SyntaxNode) -> Option<Self> {
22879 if Self::can_cast(syntax.kind()) {
22880 Some(Self { syntax })
22881 } else {
22882 None
22883 }
22884 }
22885 #[inline]
22886 fn syntax(&self) -> &SyntaxNode {
22887 &self.syntax
22888 }
22889}
22890impl AstNode for JsonFormatClause {
22891 #[inline]
22892 fn can_cast(kind: SyntaxKind) -> bool {
22893 kind == SyntaxKind::JSON_FORMAT_CLAUSE
22894 }
22895 #[inline]
22896 fn cast(syntax: SyntaxNode) -> Option<Self> {
22897 if Self::can_cast(syntax.kind()) {
22898 Some(Self { syntax })
22899 } else {
22900 None
22901 }
22902 }
22903 #[inline]
22904 fn syntax(&self) -> &SyntaxNode {
22905 &self.syntax
22906 }
22907}
22908impl AstNode for JsonKeyValue {
22909 #[inline]
22910 fn can_cast(kind: SyntaxKind) -> bool {
22911 kind == SyntaxKind::JSON_KEY_VALUE
22912 }
22913 #[inline]
22914 fn cast(syntax: SyntaxNode) -> Option<Self> {
22915 if Self::can_cast(syntax.kind()) {
22916 Some(Self { syntax })
22917 } else {
22918 None
22919 }
22920 }
22921 #[inline]
22922 fn syntax(&self) -> &SyntaxNode {
22923 &self.syntax
22924 }
22925}
22926impl AstNode for JsonKeysUniqueClause {
22927 #[inline]
22928 fn can_cast(kind: SyntaxKind) -> bool {
22929 kind == SyntaxKind::JSON_KEYS_UNIQUE_CLAUSE
22930 }
22931 #[inline]
22932 fn cast(syntax: SyntaxNode) -> Option<Self> {
22933 if Self::can_cast(syntax.kind()) {
22934 Some(Self { syntax })
22935 } else {
22936 None
22937 }
22938 }
22939 #[inline]
22940 fn syntax(&self) -> &SyntaxNode {
22941 &self.syntax
22942 }
22943}
22944impl AstNode for JsonNullClause {
22945 #[inline]
22946 fn can_cast(kind: SyntaxKind) -> bool {
22947 kind == SyntaxKind::JSON_NULL_CLAUSE
22948 }
22949 #[inline]
22950 fn cast(syntax: SyntaxNode) -> Option<Self> {
22951 if Self::can_cast(syntax.kind()) {
22952 Some(Self { syntax })
22953 } else {
22954 None
22955 }
22956 }
22957 #[inline]
22958 fn syntax(&self) -> &SyntaxNode {
22959 &self.syntax
22960 }
22961}
22962impl AstNode for JsonObjectAggFn {
22963 #[inline]
22964 fn can_cast(kind: SyntaxKind) -> bool {
22965 kind == SyntaxKind::JSON_OBJECT_AGG_FN
22966 }
22967 #[inline]
22968 fn cast(syntax: SyntaxNode) -> Option<Self> {
22969 if Self::can_cast(syntax.kind()) {
22970 Some(Self { syntax })
22971 } else {
22972 None
22973 }
22974 }
22975 #[inline]
22976 fn syntax(&self) -> &SyntaxNode {
22977 &self.syntax
22978 }
22979}
22980impl AstNode for JsonObjectFn {
22981 #[inline]
22982 fn can_cast(kind: SyntaxKind) -> bool {
22983 kind == SyntaxKind::JSON_OBJECT_FN
22984 }
22985 #[inline]
22986 fn cast(syntax: SyntaxNode) -> Option<Self> {
22987 if Self::can_cast(syntax.kind()) {
22988 Some(Self { syntax })
22989 } else {
22990 None
22991 }
22992 }
22993 #[inline]
22994 fn syntax(&self) -> &SyntaxNode {
22995 &self.syntax
22996 }
22997}
22998impl AstNode for JsonOnEmptyClause {
22999 #[inline]
23000 fn can_cast(kind: SyntaxKind) -> bool {
23001 kind == SyntaxKind::JSON_ON_EMPTY_CLAUSE
23002 }
23003 #[inline]
23004 fn cast(syntax: SyntaxNode) -> Option<Self> {
23005 if Self::can_cast(syntax.kind()) {
23006 Some(Self { syntax })
23007 } else {
23008 None
23009 }
23010 }
23011 #[inline]
23012 fn syntax(&self) -> &SyntaxNode {
23013 &self.syntax
23014 }
23015}
23016impl AstNode for JsonOnErrorClause {
23017 #[inline]
23018 fn can_cast(kind: SyntaxKind) -> bool {
23019 kind == SyntaxKind::JSON_ON_ERROR_CLAUSE
23020 }
23021 #[inline]
23022 fn cast(syntax: SyntaxNode) -> Option<Self> {
23023 if Self::can_cast(syntax.kind()) {
23024 Some(Self { syntax })
23025 } else {
23026 None
23027 }
23028 }
23029 #[inline]
23030 fn syntax(&self) -> &SyntaxNode {
23031 &self.syntax
23032 }
23033}
23034impl AstNode for JsonPassingArg {
23035 #[inline]
23036 fn can_cast(kind: SyntaxKind) -> bool {
23037 kind == SyntaxKind::JSON_PASSING_ARG
23038 }
23039 #[inline]
23040 fn cast(syntax: SyntaxNode) -> Option<Self> {
23041 if Self::can_cast(syntax.kind()) {
23042 Some(Self { syntax })
23043 } else {
23044 None
23045 }
23046 }
23047 #[inline]
23048 fn syntax(&self) -> &SyntaxNode {
23049 &self.syntax
23050 }
23051}
23052impl AstNode for JsonPassingClause {
23053 #[inline]
23054 fn can_cast(kind: SyntaxKind) -> bool {
23055 kind == SyntaxKind::JSON_PASSING_CLAUSE
23056 }
23057 #[inline]
23058 fn cast(syntax: SyntaxNode) -> Option<Self> {
23059 if Self::can_cast(syntax.kind()) {
23060 Some(Self { syntax })
23061 } else {
23062 None
23063 }
23064 }
23065 #[inline]
23066 fn syntax(&self) -> &SyntaxNode {
23067 &self.syntax
23068 }
23069}
23070impl AstNode for JsonPathClause {
23071 #[inline]
23072 fn can_cast(kind: SyntaxKind) -> bool {
23073 kind == SyntaxKind::JSON_PATH_CLAUSE
23074 }
23075 #[inline]
23076 fn cast(syntax: SyntaxNode) -> Option<Self> {
23077 if Self::can_cast(syntax.kind()) {
23078 Some(Self { syntax })
23079 } else {
23080 None
23081 }
23082 }
23083 #[inline]
23084 fn syntax(&self) -> &SyntaxNode {
23085 &self.syntax
23086 }
23087}
23088impl AstNode for JsonQueryFn {
23089 #[inline]
23090 fn can_cast(kind: SyntaxKind) -> bool {
23091 kind == SyntaxKind::JSON_QUERY_FN
23092 }
23093 #[inline]
23094 fn cast(syntax: SyntaxNode) -> Option<Self> {
23095 if Self::can_cast(syntax.kind()) {
23096 Some(Self { syntax })
23097 } else {
23098 None
23099 }
23100 }
23101 #[inline]
23102 fn syntax(&self) -> &SyntaxNode {
23103 &self.syntax
23104 }
23105}
23106impl AstNode for JsonQuotesClause {
23107 #[inline]
23108 fn can_cast(kind: SyntaxKind) -> bool {
23109 kind == SyntaxKind::JSON_QUOTES_CLAUSE
23110 }
23111 #[inline]
23112 fn cast(syntax: SyntaxNode) -> Option<Self> {
23113 if Self::can_cast(syntax.kind()) {
23114 Some(Self { syntax })
23115 } else {
23116 None
23117 }
23118 }
23119 #[inline]
23120 fn syntax(&self) -> &SyntaxNode {
23121 &self.syntax
23122 }
23123}
23124impl AstNode for JsonReturningClause {
23125 #[inline]
23126 fn can_cast(kind: SyntaxKind) -> bool {
23127 kind == SyntaxKind::JSON_RETURNING_CLAUSE
23128 }
23129 #[inline]
23130 fn cast(syntax: SyntaxNode) -> Option<Self> {
23131 if Self::can_cast(syntax.kind()) {
23132 Some(Self { syntax })
23133 } else {
23134 None
23135 }
23136 }
23137 #[inline]
23138 fn syntax(&self) -> &SyntaxNode {
23139 &self.syntax
23140 }
23141}
23142impl AstNode for JsonScalarFn {
23143 #[inline]
23144 fn can_cast(kind: SyntaxKind) -> bool {
23145 kind == SyntaxKind::JSON_SCALAR_FN
23146 }
23147 #[inline]
23148 fn cast(syntax: SyntaxNode) -> Option<Self> {
23149 if Self::can_cast(syntax.kind()) {
23150 Some(Self { syntax })
23151 } else {
23152 None
23153 }
23154 }
23155 #[inline]
23156 fn syntax(&self) -> &SyntaxNode {
23157 &self.syntax
23158 }
23159}
23160impl AstNode for JsonSelectFormat {
23161 #[inline]
23162 fn can_cast(kind: SyntaxKind) -> bool {
23163 kind == SyntaxKind::JSON_SELECT_FORMAT
23164 }
23165 #[inline]
23166 fn cast(syntax: SyntaxNode) -> Option<Self> {
23167 if Self::can_cast(syntax.kind()) {
23168 Some(Self { syntax })
23169 } else {
23170 None
23171 }
23172 }
23173 #[inline]
23174 fn syntax(&self) -> &SyntaxNode {
23175 &self.syntax
23176 }
23177}
23178impl AstNode for JsonSerializeFn {
23179 #[inline]
23180 fn can_cast(kind: SyntaxKind) -> bool {
23181 kind == SyntaxKind::JSON_SERIALIZE_FN
23182 }
23183 #[inline]
23184 fn cast(syntax: SyntaxNode) -> Option<Self> {
23185 if Self::can_cast(syntax.kind()) {
23186 Some(Self { syntax })
23187 } else {
23188 None
23189 }
23190 }
23191 #[inline]
23192 fn syntax(&self) -> &SyntaxNode {
23193 &self.syntax
23194 }
23195}
23196impl AstNode for JsonTable {
23197 #[inline]
23198 fn can_cast(kind: SyntaxKind) -> bool {
23199 kind == SyntaxKind::JSON_TABLE
23200 }
23201 #[inline]
23202 fn cast(syntax: SyntaxNode) -> Option<Self> {
23203 if Self::can_cast(syntax.kind()) {
23204 Some(Self { syntax })
23205 } else {
23206 None
23207 }
23208 }
23209 #[inline]
23210 fn syntax(&self) -> &SyntaxNode {
23211 &self.syntax
23212 }
23213}
23214impl AstNode for JsonTableColumn {
23215 #[inline]
23216 fn can_cast(kind: SyntaxKind) -> bool {
23217 kind == SyntaxKind::JSON_TABLE_COLUMN
23218 }
23219 #[inline]
23220 fn cast(syntax: SyntaxNode) -> Option<Self> {
23221 if Self::can_cast(syntax.kind()) {
23222 Some(Self { syntax })
23223 } else {
23224 None
23225 }
23226 }
23227 #[inline]
23228 fn syntax(&self) -> &SyntaxNode {
23229 &self.syntax
23230 }
23231}
23232impl AstNode for JsonTableColumnList {
23233 #[inline]
23234 fn can_cast(kind: SyntaxKind) -> bool {
23235 kind == SyntaxKind::JSON_TABLE_COLUMN_LIST
23236 }
23237 #[inline]
23238 fn cast(syntax: SyntaxNode) -> Option<Self> {
23239 if Self::can_cast(syntax.kind()) {
23240 Some(Self { syntax })
23241 } else {
23242 None
23243 }
23244 }
23245 #[inline]
23246 fn syntax(&self) -> &SyntaxNode {
23247 &self.syntax
23248 }
23249}
23250impl AstNode for JsonValueExpr {
23251 #[inline]
23252 fn can_cast(kind: SyntaxKind) -> bool {
23253 kind == SyntaxKind::JSON_VALUE_EXPR
23254 }
23255 #[inline]
23256 fn cast(syntax: SyntaxNode) -> Option<Self> {
23257 if Self::can_cast(syntax.kind()) {
23258 Some(Self { syntax })
23259 } else {
23260 None
23261 }
23262 }
23263 #[inline]
23264 fn syntax(&self) -> &SyntaxNode {
23265 &self.syntax
23266 }
23267}
23268impl AstNode for JsonValueFn {
23269 #[inline]
23270 fn can_cast(kind: SyntaxKind) -> bool {
23271 kind == SyntaxKind::JSON_VALUE_FN
23272 }
23273 #[inline]
23274 fn cast(syntax: SyntaxNode) -> Option<Self> {
23275 if Self::can_cast(syntax.kind()) {
23276 Some(Self { syntax })
23277 } else {
23278 None
23279 }
23280 }
23281 #[inline]
23282 fn syntax(&self) -> &SyntaxNode {
23283 &self.syntax
23284 }
23285}
23286impl AstNode for JsonWrapperBehaviorClause {
23287 #[inline]
23288 fn can_cast(kind: SyntaxKind) -> bool {
23289 kind == SyntaxKind::JSON_WRAPPER_BEHAVIOR_CLAUSE
23290 }
23291 #[inline]
23292 fn cast(syntax: SyntaxNode) -> Option<Self> {
23293 if Self::can_cast(syntax.kind()) {
23294 Some(Self { syntax })
23295 } else {
23296 None
23297 }
23298 }
23299 #[inline]
23300 fn syntax(&self) -> &SyntaxNode {
23301 &self.syntax
23302 }
23303}
23304impl AstNode for LanguageFuncOption {
23305 #[inline]
23306 fn can_cast(kind: SyntaxKind) -> bool {
23307 kind == SyntaxKind::LANGUAGE_FUNC_OPTION
23308 }
23309 #[inline]
23310 fn cast(syntax: SyntaxNode) -> Option<Self> {
23311 if Self::can_cast(syntax.kind()) {
23312 Some(Self { syntax })
23313 } else {
23314 None
23315 }
23316 }
23317 #[inline]
23318 fn syntax(&self) -> &SyntaxNode {
23319 &self.syntax
23320 }
23321}
23322impl AstNode for LeakproofFuncOption {
23323 #[inline]
23324 fn can_cast(kind: SyntaxKind) -> bool {
23325 kind == SyntaxKind::LEAKPROOF_FUNC_OPTION
23326 }
23327 #[inline]
23328 fn cast(syntax: SyntaxNode) -> Option<Self> {
23329 if Self::can_cast(syntax.kind()) {
23330 Some(Self { syntax })
23331 } else {
23332 None
23333 }
23334 }
23335 #[inline]
23336 fn syntax(&self) -> &SyntaxNode {
23337 &self.syntax
23338 }
23339}
23340impl AstNode for LikeClause {
23341 #[inline]
23342 fn can_cast(kind: SyntaxKind) -> bool {
23343 kind == SyntaxKind::LIKE_CLAUSE
23344 }
23345 #[inline]
23346 fn cast(syntax: SyntaxNode) -> Option<Self> {
23347 if Self::can_cast(syntax.kind()) {
23348 Some(Self { syntax })
23349 } else {
23350 None
23351 }
23352 }
23353 #[inline]
23354 fn syntax(&self) -> &SyntaxNode {
23355 &self.syntax
23356 }
23357}
23358impl AstNode for LikeOption {
23359 #[inline]
23360 fn can_cast(kind: SyntaxKind) -> bool {
23361 kind == SyntaxKind::LIKE_OPTION
23362 }
23363 #[inline]
23364 fn cast(syntax: SyntaxNode) -> Option<Self> {
23365 if Self::can_cast(syntax.kind()) {
23366 Some(Self { syntax })
23367 } else {
23368 None
23369 }
23370 }
23371 #[inline]
23372 fn syntax(&self) -> &SyntaxNode {
23373 &self.syntax
23374 }
23375}
23376impl AstNode for LimitClause {
23377 #[inline]
23378 fn can_cast(kind: SyntaxKind) -> bool {
23379 kind == SyntaxKind::LIMIT_CLAUSE
23380 }
23381 #[inline]
23382 fn cast(syntax: SyntaxNode) -> Option<Self> {
23383 if Self::can_cast(syntax.kind()) {
23384 Some(Self { syntax })
23385 } else {
23386 None
23387 }
23388 }
23389 #[inline]
23390 fn syntax(&self) -> &SyntaxNode {
23391 &self.syntax
23392 }
23393}
23394impl AstNode for LimitToTables {
23395 #[inline]
23396 fn can_cast(kind: SyntaxKind) -> bool {
23397 kind == SyntaxKind::LIMIT_TO_TABLES
23398 }
23399 #[inline]
23400 fn cast(syntax: SyntaxNode) -> Option<Self> {
23401 if Self::can_cast(syntax.kind()) {
23402 Some(Self { syntax })
23403 } else {
23404 None
23405 }
23406 }
23407 #[inline]
23408 fn syntax(&self) -> &SyntaxNode {
23409 &self.syntax
23410 }
23411}
23412impl AstNode for Listen {
23413 #[inline]
23414 fn can_cast(kind: SyntaxKind) -> bool {
23415 kind == SyntaxKind::LISTEN
23416 }
23417 #[inline]
23418 fn cast(syntax: SyntaxNode) -> Option<Self> {
23419 if Self::can_cast(syntax.kind()) {
23420 Some(Self { syntax })
23421 } else {
23422 None
23423 }
23424 }
23425 #[inline]
23426 fn syntax(&self) -> &SyntaxNode {
23427 &self.syntax
23428 }
23429}
23430impl AstNode for Literal {
23431 #[inline]
23432 fn can_cast(kind: SyntaxKind) -> bool {
23433 kind == SyntaxKind::LITERAL
23434 }
23435 #[inline]
23436 fn cast(syntax: SyntaxNode) -> Option<Self> {
23437 if Self::can_cast(syntax.kind()) {
23438 Some(Self { syntax })
23439 } else {
23440 None
23441 }
23442 }
23443 #[inline]
23444 fn syntax(&self) -> &SyntaxNode {
23445 &self.syntax
23446 }
23447}
23448impl AstNode for Load {
23449 #[inline]
23450 fn can_cast(kind: SyntaxKind) -> bool {
23451 kind == SyntaxKind::LOAD
23452 }
23453 #[inline]
23454 fn cast(syntax: SyntaxNode) -> Option<Self> {
23455 if Self::can_cast(syntax.kind()) {
23456 Some(Self { syntax })
23457 } else {
23458 None
23459 }
23460 }
23461 #[inline]
23462 fn syntax(&self) -> &SyntaxNode {
23463 &self.syntax
23464 }
23465}
23466impl AstNode for Lock {
23467 #[inline]
23468 fn can_cast(kind: SyntaxKind) -> bool {
23469 kind == SyntaxKind::LOCK
23470 }
23471 #[inline]
23472 fn cast(syntax: SyntaxNode) -> Option<Self> {
23473 if Self::can_cast(syntax.kind()) {
23474 Some(Self { syntax })
23475 } else {
23476 None
23477 }
23478 }
23479 #[inline]
23480 fn syntax(&self) -> &SyntaxNode {
23481 &self.syntax
23482 }
23483}
23484impl AstNode for LockingClause {
23485 #[inline]
23486 fn can_cast(kind: SyntaxKind) -> bool {
23487 kind == SyntaxKind::LOCKING_CLAUSE
23488 }
23489 #[inline]
23490 fn cast(syntax: SyntaxNode) -> Option<Self> {
23491 if Self::can_cast(syntax.kind()) {
23492 Some(Self { syntax })
23493 } else {
23494 None
23495 }
23496 }
23497 #[inline]
23498 fn syntax(&self) -> &SyntaxNode {
23499 &self.syntax
23500 }
23501}
23502impl AstNode for Lteq {
23503 #[inline]
23504 fn can_cast(kind: SyntaxKind) -> bool {
23505 kind == SyntaxKind::LTEQ
23506 }
23507 #[inline]
23508 fn cast(syntax: SyntaxNode) -> Option<Self> {
23509 if Self::can_cast(syntax.kind()) {
23510 Some(Self { syntax })
23511 } else {
23512 None
23513 }
23514 }
23515 #[inline]
23516 fn syntax(&self) -> &SyntaxNode {
23517 &self.syntax
23518 }
23519}
23520impl AstNode for MatchFull {
23521 #[inline]
23522 fn can_cast(kind: SyntaxKind) -> bool {
23523 kind == SyntaxKind::MATCH_FULL
23524 }
23525 #[inline]
23526 fn cast(syntax: SyntaxNode) -> Option<Self> {
23527 if Self::can_cast(syntax.kind()) {
23528 Some(Self { syntax })
23529 } else {
23530 None
23531 }
23532 }
23533 #[inline]
23534 fn syntax(&self) -> &SyntaxNode {
23535 &self.syntax
23536 }
23537}
23538impl AstNode for MatchPartial {
23539 #[inline]
23540 fn can_cast(kind: SyntaxKind) -> bool {
23541 kind == SyntaxKind::MATCH_PARTIAL
23542 }
23543 #[inline]
23544 fn cast(syntax: SyntaxNode) -> Option<Self> {
23545 if Self::can_cast(syntax.kind()) {
23546 Some(Self { syntax })
23547 } else {
23548 None
23549 }
23550 }
23551 #[inline]
23552 fn syntax(&self) -> &SyntaxNode {
23553 &self.syntax
23554 }
23555}
23556impl AstNode for MatchSimple {
23557 #[inline]
23558 fn can_cast(kind: SyntaxKind) -> bool {
23559 kind == SyntaxKind::MATCH_SIMPLE
23560 }
23561 #[inline]
23562 fn cast(syntax: SyntaxNode) -> Option<Self> {
23563 if Self::can_cast(syntax.kind()) {
23564 Some(Self { syntax })
23565 } else {
23566 None
23567 }
23568 }
23569 #[inline]
23570 fn syntax(&self) -> &SyntaxNode {
23571 &self.syntax
23572 }
23573}
23574impl AstNode for Materialized {
23575 #[inline]
23576 fn can_cast(kind: SyntaxKind) -> bool {
23577 kind == SyntaxKind::MATERIALIZED
23578 }
23579 #[inline]
23580 fn cast(syntax: SyntaxNode) -> Option<Self> {
23581 if Self::can_cast(syntax.kind()) {
23582 Some(Self { syntax })
23583 } else {
23584 None
23585 }
23586 }
23587 #[inline]
23588 fn syntax(&self) -> &SyntaxNode {
23589 &self.syntax
23590 }
23591}
23592impl AstNode for Merge {
23593 #[inline]
23594 fn can_cast(kind: SyntaxKind) -> bool {
23595 kind == SyntaxKind::MERGE
23596 }
23597 #[inline]
23598 fn cast(syntax: SyntaxNode) -> Option<Self> {
23599 if Self::can_cast(syntax.kind()) {
23600 Some(Self { syntax })
23601 } else {
23602 None
23603 }
23604 }
23605 #[inline]
23606 fn syntax(&self) -> &SyntaxNode {
23607 &self.syntax
23608 }
23609}
23610impl AstNode for MergeDelete {
23611 #[inline]
23612 fn can_cast(kind: SyntaxKind) -> bool {
23613 kind == SyntaxKind::MERGE_DELETE
23614 }
23615 #[inline]
23616 fn cast(syntax: SyntaxNode) -> Option<Self> {
23617 if Self::can_cast(syntax.kind()) {
23618 Some(Self { syntax })
23619 } else {
23620 None
23621 }
23622 }
23623 #[inline]
23624 fn syntax(&self) -> &SyntaxNode {
23625 &self.syntax
23626 }
23627}
23628impl AstNode for MergeDoNothing {
23629 #[inline]
23630 fn can_cast(kind: SyntaxKind) -> bool {
23631 kind == SyntaxKind::MERGE_DO_NOTHING
23632 }
23633 #[inline]
23634 fn cast(syntax: SyntaxNode) -> Option<Self> {
23635 if Self::can_cast(syntax.kind()) {
23636 Some(Self { syntax })
23637 } else {
23638 None
23639 }
23640 }
23641 #[inline]
23642 fn syntax(&self) -> &SyntaxNode {
23643 &self.syntax
23644 }
23645}
23646impl AstNode for MergeInsert {
23647 #[inline]
23648 fn can_cast(kind: SyntaxKind) -> bool {
23649 kind == SyntaxKind::MERGE_INSERT
23650 }
23651 #[inline]
23652 fn cast(syntax: SyntaxNode) -> Option<Self> {
23653 if Self::can_cast(syntax.kind()) {
23654 Some(Self { syntax })
23655 } else {
23656 None
23657 }
23658 }
23659 #[inline]
23660 fn syntax(&self) -> &SyntaxNode {
23661 &self.syntax
23662 }
23663}
23664impl AstNode for MergePartitions {
23665 #[inline]
23666 fn can_cast(kind: SyntaxKind) -> bool {
23667 kind == SyntaxKind::MERGE_PARTITIONS
23668 }
23669 #[inline]
23670 fn cast(syntax: SyntaxNode) -> Option<Self> {
23671 if Self::can_cast(syntax.kind()) {
23672 Some(Self { syntax })
23673 } else {
23674 None
23675 }
23676 }
23677 #[inline]
23678 fn syntax(&self) -> &SyntaxNode {
23679 &self.syntax
23680 }
23681}
23682impl AstNode for MergeUpdate {
23683 #[inline]
23684 fn can_cast(kind: SyntaxKind) -> bool {
23685 kind == SyntaxKind::MERGE_UPDATE
23686 }
23687 #[inline]
23688 fn cast(syntax: SyntaxNode) -> Option<Self> {
23689 if Self::can_cast(syntax.kind()) {
23690 Some(Self { syntax })
23691 } else {
23692 None
23693 }
23694 }
23695 #[inline]
23696 fn syntax(&self) -> &SyntaxNode {
23697 &self.syntax
23698 }
23699}
23700impl AstNode for MergeWhenMatched {
23701 #[inline]
23702 fn can_cast(kind: SyntaxKind) -> bool {
23703 kind == SyntaxKind::MERGE_WHEN_MATCHED
23704 }
23705 #[inline]
23706 fn cast(syntax: SyntaxNode) -> Option<Self> {
23707 if Self::can_cast(syntax.kind()) {
23708 Some(Self { syntax })
23709 } else {
23710 None
23711 }
23712 }
23713 #[inline]
23714 fn syntax(&self) -> &SyntaxNode {
23715 &self.syntax
23716 }
23717}
23718impl AstNode for MergeWhenNotMatchedSource {
23719 #[inline]
23720 fn can_cast(kind: SyntaxKind) -> bool {
23721 kind == SyntaxKind::MERGE_WHEN_NOT_MATCHED_SOURCE
23722 }
23723 #[inline]
23724 fn cast(syntax: SyntaxNode) -> Option<Self> {
23725 if Self::can_cast(syntax.kind()) {
23726 Some(Self { syntax })
23727 } else {
23728 None
23729 }
23730 }
23731 #[inline]
23732 fn syntax(&self) -> &SyntaxNode {
23733 &self.syntax
23734 }
23735}
23736impl AstNode for MergeWhenNotMatchedTarget {
23737 #[inline]
23738 fn can_cast(kind: SyntaxKind) -> bool {
23739 kind == SyntaxKind::MERGE_WHEN_NOT_MATCHED_TARGET
23740 }
23741 #[inline]
23742 fn cast(syntax: SyntaxNode) -> Option<Self> {
23743 if Self::can_cast(syntax.kind()) {
23744 Some(Self { syntax })
23745 } else {
23746 None
23747 }
23748 }
23749 #[inline]
23750 fn syntax(&self) -> &SyntaxNode {
23751 &self.syntax
23752 }
23753}
23754impl AstNode for Move {
23755 #[inline]
23756 fn can_cast(kind: SyntaxKind) -> bool {
23757 kind == SyntaxKind::MOVE
23758 }
23759 #[inline]
23760 fn cast(syntax: SyntaxNode) -> Option<Self> {
23761 if Self::can_cast(syntax.kind()) {
23762 Some(Self { syntax })
23763 } else {
23764 None
23765 }
23766 }
23767 #[inline]
23768 fn syntax(&self) -> &SyntaxNode {
23769 &self.syntax
23770 }
23771}
23772impl AstNode for Name {
23773 #[inline]
23774 fn can_cast(kind: SyntaxKind) -> bool {
23775 kind == SyntaxKind::NAME
23776 }
23777 #[inline]
23778 fn cast(syntax: SyntaxNode) -> Option<Self> {
23779 if Self::can_cast(syntax.kind()) {
23780 Some(Self { syntax })
23781 } else {
23782 None
23783 }
23784 }
23785 #[inline]
23786 fn syntax(&self) -> &SyntaxNode {
23787 &self.syntax
23788 }
23789}
23790impl AstNode for NameRef {
23791 #[inline]
23792 fn can_cast(kind: SyntaxKind) -> bool {
23793 kind == SyntaxKind::NAME_REF
23794 }
23795 #[inline]
23796 fn cast(syntax: SyntaxNode) -> Option<Self> {
23797 if Self::can_cast(syntax.kind()) {
23798 Some(Self { syntax })
23799 } else {
23800 None
23801 }
23802 }
23803 #[inline]
23804 fn syntax(&self) -> &SyntaxNode {
23805 &self.syntax
23806 }
23807}
23808impl AstNode for NamedArg {
23809 #[inline]
23810 fn can_cast(kind: SyntaxKind) -> bool {
23811 kind == SyntaxKind::NAMED_ARG
23812 }
23813 #[inline]
23814 fn cast(syntax: SyntaxNode) -> Option<Self> {
23815 if Self::can_cast(syntax.kind()) {
23816 Some(Self { syntax })
23817 } else {
23818 None
23819 }
23820 }
23821 #[inline]
23822 fn syntax(&self) -> &SyntaxNode {
23823 &self.syntax
23824 }
23825}
23826impl AstNode for Neq {
23827 #[inline]
23828 fn can_cast(kind: SyntaxKind) -> bool {
23829 kind == SyntaxKind::NEQ
23830 }
23831 #[inline]
23832 fn cast(syntax: SyntaxNode) -> Option<Self> {
23833 if Self::can_cast(syntax.kind()) {
23834 Some(Self { syntax })
23835 } else {
23836 None
23837 }
23838 }
23839 #[inline]
23840 fn syntax(&self) -> &SyntaxNode {
23841 &self.syntax
23842 }
23843}
23844impl AstNode for Neqb {
23845 #[inline]
23846 fn can_cast(kind: SyntaxKind) -> bool {
23847 kind == SyntaxKind::NEQB
23848 }
23849 #[inline]
23850 fn cast(syntax: SyntaxNode) -> Option<Self> {
23851 if Self::can_cast(syntax.kind()) {
23852 Some(Self { syntax })
23853 } else {
23854 None
23855 }
23856 }
23857 #[inline]
23858 fn syntax(&self) -> &SyntaxNode {
23859 &self.syntax
23860 }
23861}
23862impl AstNode for NoAction {
23863 #[inline]
23864 fn can_cast(kind: SyntaxKind) -> bool {
23865 kind == SyntaxKind::NO_ACTION
23866 }
23867 #[inline]
23868 fn cast(syntax: SyntaxNode) -> Option<Self> {
23869 if Self::can_cast(syntax.kind()) {
23870 Some(Self { syntax })
23871 } else {
23872 None
23873 }
23874 }
23875 #[inline]
23876 fn syntax(&self) -> &SyntaxNode {
23877 &self.syntax
23878 }
23879}
23880impl AstNode for NoDependsOnExtension {
23881 #[inline]
23882 fn can_cast(kind: SyntaxKind) -> bool {
23883 kind == SyntaxKind::NO_DEPENDS_ON_EXTENSION
23884 }
23885 #[inline]
23886 fn cast(syntax: SyntaxNode) -> Option<Self> {
23887 if Self::can_cast(syntax.kind()) {
23888 Some(Self { syntax })
23889 } else {
23890 None
23891 }
23892 }
23893 #[inline]
23894 fn syntax(&self) -> &SyntaxNode {
23895 &self.syntax
23896 }
23897}
23898impl AstNode for NoForceRls {
23899 #[inline]
23900 fn can_cast(kind: SyntaxKind) -> bool {
23901 kind == SyntaxKind::NO_FORCE_RLS
23902 }
23903 #[inline]
23904 fn cast(syntax: SyntaxNode) -> Option<Self> {
23905 if Self::can_cast(syntax.kind()) {
23906 Some(Self { syntax })
23907 } else {
23908 None
23909 }
23910 }
23911 #[inline]
23912 fn syntax(&self) -> &SyntaxNode {
23913 &self.syntax
23914 }
23915}
23916impl AstNode for NoInherit {
23917 #[inline]
23918 fn can_cast(kind: SyntaxKind) -> bool {
23919 kind == SyntaxKind::NO_INHERIT
23920 }
23921 #[inline]
23922 fn cast(syntax: SyntaxNode) -> Option<Self> {
23923 if Self::can_cast(syntax.kind()) {
23924 Some(Self { syntax })
23925 } else {
23926 None
23927 }
23928 }
23929 #[inline]
23930 fn syntax(&self) -> &SyntaxNode {
23931 &self.syntax
23932 }
23933}
23934impl AstNode for NoInheritTable {
23935 #[inline]
23936 fn can_cast(kind: SyntaxKind) -> bool {
23937 kind == SyntaxKind::NO_INHERIT_TABLE
23938 }
23939 #[inline]
23940 fn cast(syntax: SyntaxNode) -> Option<Self> {
23941 if Self::can_cast(syntax.kind()) {
23942 Some(Self { syntax })
23943 } else {
23944 None
23945 }
23946 }
23947 #[inline]
23948 fn syntax(&self) -> &SyntaxNode {
23949 &self.syntax
23950 }
23951}
23952impl AstNode for NonStandardParam {
23953 #[inline]
23954 fn can_cast(kind: SyntaxKind) -> bool {
23955 kind == SyntaxKind::NON_STANDARD_PARAM
23956 }
23957 #[inline]
23958 fn cast(syntax: SyntaxNode) -> Option<Self> {
23959 if Self::can_cast(syntax.kind()) {
23960 Some(Self { syntax })
23961 } else {
23962 None
23963 }
23964 }
23965 #[inline]
23966 fn syntax(&self) -> &SyntaxNode {
23967 &self.syntax
23968 }
23969}
23970impl AstNode for NotDeferrable {
23971 #[inline]
23972 fn can_cast(kind: SyntaxKind) -> bool {
23973 kind == SyntaxKind::NOT_DEFERRABLE
23974 }
23975 #[inline]
23976 fn cast(syntax: SyntaxNode) -> Option<Self> {
23977 if Self::can_cast(syntax.kind()) {
23978 Some(Self { syntax })
23979 } else {
23980 None
23981 }
23982 }
23983 #[inline]
23984 fn syntax(&self) -> &SyntaxNode {
23985 &self.syntax
23986 }
23987}
23988impl AstNode for NotDeferrableConstraintOption {
23989 #[inline]
23990 fn can_cast(kind: SyntaxKind) -> bool {
23991 kind == SyntaxKind::NOT_DEFERRABLE_CONSTRAINT_OPTION
23992 }
23993 #[inline]
23994 fn cast(syntax: SyntaxNode) -> Option<Self> {
23995 if Self::can_cast(syntax.kind()) {
23996 Some(Self { syntax })
23997 } else {
23998 None
23999 }
24000 }
24001 #[inline]
24002 fn syntax(&self) -> &SyntaxNode {
24003 &self.syntax
24004 }
24005}
24006impl AstNode for NotEnforced {
24007 #[inline]
24008 fn can_cast(kind: SyntaxKind) -> bool {
24009 kind == SyntaxKind::NOT_ENFORCED
24010 }
24011 #[inline]
24012 fn cast(syntax: SyntaxNode) -> Option<Self> {
24013 if Self::can_cast(syntax.kind()) {
24014 Some(Self { syntax })
24015 } else {
24016 None
24017 }
24018 }
24019 #[inline]
24020 fn syntax(&self) -> &SyntaxNode {
24021 &self.syntax
24022 }
24023}
24024impl AstNode for NotIlike {
24025 #[inline]
24026 fn can_cast(kind: SyntaxKind) -> bool {
24027 kind == SyntaxKind::NOT_ILIKE
24028 }
24029 #[inline]
24030 fn cast(syntax: SyntaxNode) -> Option<Self> {
24031 if Self::can_cast(syntax.kind()) {
24032 Some(Self { syntax })
24033 } else {
24034 None
24035 }
24036 }
24037 #[inline]
24038 fn syntax(&self) -> &SyntaxNode {
24039 &self.syntax
24040 }
24041}
24042impl AstNode for NotIn {
24043 #[inline]
24044 fn can_cast(kind: SyntaxKind) -> bool {
24045 kind == SyntaxKind::NOT_IN
24046 }
24047 #[inline]
24048 fn cast(syntax: SyntaxNode) -> Option<Self> {
24049 if Self::can_cast(syntax.kind()) {
24050 Some(Self { syntax })
24051 } else {
24052 None
24053 }
24054 }
24055 #[inline]
24056 fn syntax(&self) -> &SyntaxNode {
24057 &self.syntax
24058 }
24059}
24060impl AstNode for NotLike {
24061 #[inline]
24062 fn can_cast(kind: SyntaxKind) -> bool {
24063 kind == SyntaxKind::NOT_LIKE
24064 }
24065 #[inline]
24066 fn cast(syntax: SyntaxNode) -> Option<Self> {
24067 if Self::can_cast(syntax.kind()) {
24068 Some(Self { syntax })
24069 } else {
24070 None
24071 }
24072 }
24073 #[inline]
24074 fn syntax(&self) -> &SyntaxNode {
24075 &self.syntax
24076 }
24077}
24078impl AstNode for NotMaterialized {
24079 #[inline]
24080 fn can_cast(kind: SyntaxKind) -> bool {
24081 kind == SyntaxKind::NOT_MATERIALIZED
24082 }
24083 #[inline]
24084 fn cast(syntax: SyntaxNode) -> Option<Self> {
24085 if Self::can_cast(syntax.kind()) {
24086 Some(Self { syntax })
24087 } else {
24088 None
24089 }
24090 }
24091 #[inline]
24092 fn syntax(&self) -> &SyntaxNode {
24093 &self.syntax
24094 }
24095}
24096impl AstNode for NotNullConstraint {
24097 #[inline]
24098 fn can_cast(kind: SyntaxKind) -> bool {
24099 kind == SyntaxKind::NOT_NULL_CONSTRAINT
24100 }
24101 #[inline]
24102 fn cast(syntax: SyntaxNode) -> Option<Self> {
24103 if Self::can_cast(syntax.kind()) {
24104 Some(Self { syntax })
24105 } else {
24106 None
24107 }
24108 }
24109 #[inline]
24110 fn syntax(&self) -> &SyntaxNode {
24111 &self.syntax
24112 }
24113}
24114impl AstNode for NotOf {
24115 #[inline]
24116 fn can_cast(kind: SyntaxKind) -> bool {
24117 kind == SyntaxKind::NOT_OF
24118 }
24119 #[inline]
24120 fn cast(syntax: SyntaxNode) -> Option<Self> {
24121 if Self::can_cast(syntax.kind()) {
24122 Some(Self { syntax })
24123 } else {
24124 None
24125 }
24126 }
24127 #[inline]
24128 fn syntax(&self) -> &SyntaxNode {
24129 &self.syntax
24130 }
24131}
24132impl AstNode for NotSimilarTo {
24133 #[inline]
24134 fn can_cast(kind: SyntaxKind) -> bool {
24135 kind == SyntaxKind::NOT_SIMILAR_TO
24136 }
24137 #[inline]
24138 fn cast(syntax: SyntaxNode) -> Option<Self> {
24139 if Self::can_cast(syntax.kind()) {
24140 Some(Self { syntax })
24141 } else {
24142 None
24143 }
24144 }
24145 #[inline]
24146 fn syntax(&self) -> &SyntaxNode {
24147 &self.syntax
24148 }
24149}
24150impl AstNode for NotValid {
24151 #[inline]
24152 fn can_cast(kind: SyntaxKind) -> bool {
24153 kind == SyntaxKind::NOT_VALID
24154 }
24155 #[inline]
24156 fn cast(syntax: SyntaxNode) -> Option<Self> {
24157 if Self::can_cast(syntax.kind()) {
24158 Some(Self { syntax })
24159 } else {
24160 None
24161 }
24162 }
24163 #[inline]
24164 fn syntax(&self) -> &SyntaxNode {
24165 &self.syntax
24166 }
24167}
24168impl AstNode for Notify {
24169 #[inline]
24170 fn can_cast(kind: SyntaxKind) -> bool {
24171 kind == SyntaxKind::NOTIFY
24172 }
24173 #[inline]
24174 fn cast(syntax: SyntaxNode) -> Option<Self> {
24175 if Self::can_cast(syntax.kind()) {
24176 Some(Self { syntax })
24177 } else {
24178 None
24179 }
24180 }
24181 #[inline]
24182 fn syntax(&self) -> &SyntaxNode {
24183 &self.syntax
24184 }
24185}
24186impl AstNode for NullConstraint {
24187 #[inline]
24188 fn can_cast(kind: SyntaxKind) -> bool {
24189 kind == SyntaxKind::NULL_CONSTRAINT
24190 }
24191 #[inline]
24192 fn cast(syntax: SyntaxNode) -> Option<Self> {
24193 if Self::can_cast(syntax.kind()) {
24194 Some(Self { syntax })
24195 } else {
24196 None
24197 }
24198 }
24199 #[inline]
24200 fn syntax(&self) -> &SyntaxNode {
24201 &self.syntax
24202 }
24203}
24204impl AstNode for NullsDistinct {
24205 #[inline]
24206 fn can_cast(kind: SyntaxKind) -> bool {
24207 kind == SyntaxKind::NULLS_DISTINCT
24208 }
24209 #[inline]
24210 fn cast(syntax: SyntaxNode) -> Option<Self> {
24211 if Self::can_cast(syntax.kind()) {
24212 Some(Self { syntax })
24213 } else {
24214 None
24215 }
24216 }
24217 #[inline]
24218 fn syntax(&self) -> &SyntaxNode {
24219 &self.syntax
24220 }
24221}
24222impl AstNode for NullsFirst {
24223 #[inline]
24224 fn can_cast(kind: SyntaxKind) -> bool {
24225 kind == SyntaxKind::NULLS_FIRST
24226 }
24227 #[inline]
24228 fn cast(syntax: SyntaxNode) -> Option<Self> {
24229 if Self::can_cast(syntax.kind()) {
24230 Some(Self { syntax })
24231 } else {
24232 None
24233 }
24234 }
24235 #[inline]
24236 fn syntax(&self) -> &SyntaxNode {
24237 &self.syntax
24238 }
24239}
24240impl AstNode for NullsLast {
24241 #[inline]
24242 fn can_cast(kind: SyntaxKind) -> bool {
24243 kind == SyntaxKind::NULLS_LAST
24244 }
24245 #[inline]
24246 fn cast(syntax: SyntaxNode) -> Option<Self> {
24247 if Self::can_cast(syntax.kind()) {
24248 Some(Self { syntax })
24249 } else {
24250 None
24251 }
24252 }
24253 #[inline]
24254 fn syntax(&self) -> &SyntaxNode {
24255 &self.syntax
24256 }
24257}
24258impl AstNode for NullsNotDistinct {
24259 #[inline]
24260 fn can_cast(kind: SyntaxKind) -> bool {
24261 kind == SyntaxKind::NULLS_NOT_DISTINCT
24262 }
24263 #[inline]
24264 fn cast(syntax: SyntaxNode) -> Option<Self> {
24265 if Self::can_cast(syntax.kind()) {
24266 Some(Self { syntax })
24267 } else {
24268 None
24269 }
24270 }
24271 #[inline]
24272 fn syntax(&self) -> &SyntaxNode {
24273 &self.syntax
24274 }
24275}
24276impl AstNode for OfType {
24277 #[inline]
24278 fn can_cast(kind: SyntaxKind) -> bool {
24279 kind == SyntaxKind::OF_TYPE
24280 }
24281 #[inline]
24282 fn cast(syntax: SyntaxNode) -> Option<Self> {
24283 if Self::can_cast(syntax.kind()) {
24284 Some(Self { syntax })
24285 } else {
24286 None
24287 }
24288 }
24289 #[inline]
24290 fn syntax(&self) -> &SyntaxNode {
24291 &self.syntax
24292 }
24293}
24294impl AstNode for OffsetClause {
24295 #[inline]
24296 fn can_cast(kind: SyntaxKind) -> bool {
24297 kind == SyntaxKind::OFFSET_CLAUSE
24298 }
24299 #[inline]
24300 fn cast(syntax: SyntaxNode) -> Option<Self> {
24301 if Self::can_cast(syntax.kind()) {
24302 Some(Self { syntax })
24303 } else {
24304 None
24305 }
24306 }
24307 #[inline]
24308 fn syntax(&self) -> &SyntaxNode {
24309 &self.syntax
24310 }
24311}
24312impl AstNode for OnClause {
24313 #[inline]
24314 fn can_cast(kind: SyntaxKind) -> bool {
24315 kind == SyntaxKind::ON_CLAUSE
24316 }
24317 #[inline]
24318 fn cast(syntax: SyntaxNode) -> Option<Self> {
24319 if Self::can_cast(syntax.kind()) {
24320 Some(Self { syntax })
24321 } else {
24322 None
24323 }
24324 }
24325 #[inline]
24326 fn syntax(&self) -> &SyntaxNode {
24327 &self.syntax
24328 }
24329}
24330impl AstNode for OnCommit {
24331 #[inline]
24332 fn can_cast(kind: SyntaxKind) -> bool {
24333 kind == SyntaxKind::ON_COMMIT
24334 }
24335 #[inline]
24336 fn cast(syntax: SyntaxNode) -> Option<Self> {
24337 if Self::can_cast(syntax.kind()) {
24338 Some(Self { syntax })
24339 } else {
24340 None
24341 }
24342 }
24343 #[inline]
24344 fn syntax(&self) -> &SyntaxNode {
24345 &self.syntax
24346 }
24347}
24348impl AstNode for OnConflictClause {
24349 #[inline]
24350 fn can_cast(kind: SyntaxKind) -> bool {
24351 kind == SyntaxKind::ON_CONFLICT_CLAUSE
24352 }
24353 #[inline]
24354 fn cast(syntax: SyntaxNode) -> Option<Self> {
24355 if Self::can_cast(syntax.kind()) {
24356 Some(Self { syntax })
24357 } else {
24358 None
24359 }
24360 }
24361 #[inline]
24362 fn syntax(&self) -> &SyntaxNode {
24363 &self.syntax
24364 }
24365}
24366impl AstNode for OnDeleteAction {
24367 #[inline]
24368 fn can_cast(kind: SyntaxKind) -> bool {
24369 kind == SyntaxKind::ON_DELETE_ACTION
24370 }
24371 #[inline]
24372 fn cast(syntax: SyntaxNode) -> Option<Self> {
24373 if Self::can_cast(syntax.kind()) {
24374 Some(Self { syntax })
24375 } else {
24376 None
24377 }
24378 }
24379 #[inline]
24380 fn syntax(&self) -> &SyntaxNode {
24381 &self.syntax
24382 }
24383}
24384impl AstNode for OnTable {
24385 #[inline]
24386 fn can_cast(kind: SyntaxKind) -> bool {
24387 kind == SyntaxKind::ON_TABLE
24388 }
24389 #[inline]
24390 fn cast(syntax: SyntaxNode) -> Option<Self> {
24391 if Self::can_cast(syntax.kind()) {
24392 Some(Self { syntax })
24393 } else {
24394 None
24395 }
24396 }
24397 #[inline]
24398 fn syntax(&self) -> &SyntaxNode {
24399 &self.syntax
24400 }
24401}
24402impl AstNode for OnUpdateAction {
24403 #[inline]
24404 fn can_cast(kind: SyntaxKind) -> bool {
24405 kind == SyntaxKind::ON_UPDATE_ACTION
24406 }
24407 #[inline]
24408 fn cast(syntax: SyntaxNode) -> Option<Self> {
24409 if Self::can_cast(syntax.kind()) {
24410 Some(Self { syntax })
24411 } else {
24412 None
24413 }
24414 }
24415 #[inline]
24416 fn syntax(&self) -> &SyntaxNode {
24417 &self.syntax
24418 }
24419}
24420impl AstNode for Op {
24421 #[inline]
24422 fn can_cast(kind: SyntaxKind) -> bool {
24423 kind == SyntaxKind::OP
24424 }
24425 #[inline]
24426 fn cast(syntax: SyntaxNode) -> Option<Self> {
24427 if Self::can_cast(syntax.kind()) {
24428 Some(Self { syntax })
24429 } else {
24430 None
24431 }
24432 }
24433 #[inline]
24434 fn syntax(&self) -> &SyntaxNode {
24435 &self.syntax
24436 }
24437}
24438impl AstNode for OpClassOption {
24439 #[inline]
24440 fn can_cast(kind: SyntaxKind) -> bool {
24441 kind == SyntaxKind::OP_CLASS_OPTION
24442 }
24443 #[inline]
24444 fn cast(syntax: SyntaxNode) -> Option<Self> {
24445 if Self::can_cast(syntax.kind()) {
24446 Some(Self { syntax })
24447 } else {
24448 None
24449 }
24450 }
24451 #[inline]
24452 fn syntax(&self) -> &SyntaxNode {
24453 &self.syntax
24454 }
24455}
24456impl AstNode for OpSig {
24457 #[inline]
24458 fn can_cast(kind: SyntaxKind) -> bool {
24459 kind == SyntaxKind::OP_SIG
24460 }
24461 #[inline]
24462 fn cast(syntax: SyntaxNode) -> Option<Self> {
24463 if Self::can_cast(syntax.kind()) {
24464 Some(Self { syntax })
24465 } else {
24466 None
24467 }
24468 }
24469 #[inline]
24470 fn syntax(&self) -> &SyntaxNode {
24471 &self.syntax
24472 }
24473}
24474impl AstNode for OpSigList {
24475 #[inline]
24476 fn can_cast(kind: SyntaxKind) -> bool {
24477 kind == SyntaxKind::OP_SIG_LIST
24478 }
24479 #[inline]
24480 fn cast(syntax: SyntaxNode) -> Option<Self> {
24481 if Self::can_cast(syntax.kind()) {
24482 Some(Self { syntax })
24483 } else {
24484 None
24485 }
24486 }
24487 #[inline]
24488 fn syntax(&self) -> &SyntaxNode {
24489 &self.syntax
24490 }
24491}
24492impl AstNode for OperatorCall {
24493 #[inline]
24494 fn can_cast(kind: SyntaxKind) -> bool {
24495 kind == SyntaxKind::OPERATOR_CALL
24496 }
24497 #[inline]
24498 fn cast(syntax: SyntaxNode) -> Option<Self> {
24499 if Self::can_cast(syntax.kind()) {
24500 Some(Self { syntax })
24501 } else {
24502 None
24503 }
24504 }
24505 #[inline]
24506 fn syntax(&self) -> &SyntaxNode {
24507 &self.syntax
24508 }
24509}
24510impl AstNode for OperatorClassOptionList {
24511 #[inline]
24512 fn can_cast(kind: SyntaxKind) -> bool {
24513 kind == SyntaxKind::OPERATOR_CLASS_OPTION_LIST
24514 }
24515 #[inline]
24516 fn cast(syntax: SyntaxNode) -> Option<Self> {
24517 if Self::can_cast(syntax.kind()) {
24518 Some(Self { syntax })
24519 } else {
24520 None
24521 }
24522 }
24523 #[inline]
24524 fn syntax(&self) -> &SyntaxNode {
24525 &self.syntax
24526 }
24527}
24528impl AstNode for OptionItem {
24529 #[inline]
24530 fn can_cast(kind: SyntaxKind) -> bool {
24531 kind == SyntaxKind::OPTION_ITEM
24532 }
24533 #[inline]
24534 fn cast(syntax: SyntaxNode) -> Option<Self> {
24535 if Self::can_cast(syntax.kind()) {
24536 Some(Self { syntax })
24537 } else {
24538 None
24539 }
24540 }
24541 #[inline]
24542 fn syntax(&self) -> &SyntaxNode {
24543 &self.syntax
24544 }
24545}
24546impl AstNode for OptionItemList {
24547 #[inline]
24548 fn can_cast(kind: SyntaxKind) -> bool {
24549 kind == SyntaxKind::OPTION_ITEM_LIST
24550 }
24551 #[inline]
24552 fn cast(syntax: SyntaxNode) -> Option<Self> {
24553 if Self::can_cast(syntax.kind()) {
24554 Some(Self { syntax })
24555 } else {
24556 None
24557 }
24558 }
24559 #[inline]
24560 fn syntax(&self) -> &SyntaxNode {
24561 &self.syntax
24562 }
24563}
24564impl AstNode for OrReplace {
24565 #[inline]
24566 fn can_cast(kind: SyntaxKind) -> bool {
24567 kind == SyntaxKind::OR_REPLACE
24568 }
24569 #[inline]
24570 fn cast(syntax: SyntaxNode) -> Option<Self> {
24571 if Self::can_cast(syntax.kind()) {
24572 Some(Self { syntax })
24573 } else {
24574 None
24575 }
24576 }
24577 #[inline]
24578 fn syntax(&self) -> &SyntaxNode {
24579 &self.syntax
24580 }
24581}
24582impl AstNode for OrderByClause {
24583 #[inline]
24584 fn can_cast(kind: SyntaxKind) -> bool {
24585 kind == SyntaxKind::ORDER_BY_CLAUSE
24586 }
24587 #[inline]
24588 fn cast(syntax: SyntaxNode) -> Option<Self> {
24589 if Self::can_cast(syntax.kind()) {
24590 Some(Self { syntax })
24591 } else {
24592 None
24593 }
24594 }
24595 #[inline]
24596 fn syntax(&self) -> &SyntaxNode {
24597 &self.syntax
24598 }
24599}
24600impl AstNode for OverClause {
24601 #[inline]
24602 fn can_cast(kind: SyntaxKind) -> bool {
24603 kind == SyntaxKind::OVER_CLAUSE
24604 }
24605 #[inline]
24606 fn cast(syntax: SyntaxNode) -> Option<Self> {
24607 if Self::can_cast(syntax.kind()) {
24608 Some(Self { syntax })
24609 } else {
24610 None
24611 }
24612 }
24613 #[inline]
24614 fn syntax(&self) -> &SyntaxNode {
24615 &self.syntax
24616 }
24617}
24618impl AstNode for OverlayFn {
24619 #[inline]
24620 fn can_cast(kind: SyntaxKind) -> bool {
24621 kind == SyntaxKind::OVERLAY_FN
24622 }
24623 #[inline]
24624 fn cast(syntax: SyntaxNode) -> Option<Self> {
24625 if Self::can_cast(syntax.kind()) {
24626 Some(Self { syntax })
24627 } else {
24628 None
24629 }
24630 }
24631 #[inline]
24632 fn syntax(&self) -> &SyntaxNode {
24633 &self.syntax
24634 }
24635}
24636impl AstNode for OwnerTo {
24637 #[inline]
24638 fn can_cast(kind: SyntaxKind) -> bool {
24639 kind == SyntaxKind::OWNER_TO
24640 }
24641 #[inline]
24642 fn cast(syntax: SyntaxNode) -> Option<Self> {
24643 if Self::can_cast(syntax.kind()) {
24644 Some(Self { syntax })
24645 } else {
24646 None
24647 }
24648 }
24649 #[inline]
24650 fn syntax(&self) -> &SyntaxNode {
24651 &self.syntax
24652 }
24653}
24654impl AstNode for ParallelFuncOption {
24655 #[inline]
24656 fn can_cast(kind: SyntaxKind) -> bool {
24657 kind == SyntaxKind::PARALLEL_FUNC_OPTION
24658 }
24659 #[inline]
24660 fn cast(syntax: SyntaxNode) -> Option<Self> {
24661 if Self::can_cast(syntax.kind()) {
24662 Some(Self { syntax })
24663 } else {
24664 None
24665 }
24666 }
24667 #[inline]
24668 fn syntax(&self) -> &SyntaxNode {
24669 &self.syntax
24670 }
24671}
24672impl AstNode for Param {
24673 #[inline]
24674 fn can_cast(kind: SyntaxKind) -> bool {
24675 kind == SyntaxKind::PARAM
24676 }
24677 #[inline]
24678 fn cast(syntax: SyntaxNode) -> Option<Self> {
24679 if Self::can_cast(syntax.kind()) {
24680 Some(Self { syntax })
24681 } else {
24682 None
24683 }
24684 }
24685 #[inline]
24686 fn syntax(&self) -> &SyntaxNode {
24687 &self.syntax
24688 }
24689}
24690impl AstNode for ParamDefault {
24691 #[inline]
24692 fn can_cast(kind: SyntaxKind) -> bool {
24693 kind == SyntaxKind::PARAM_DEFAULT
24694 }
24695 #[inline]
24696 fn cast(syntax: SyntaxNode) -> Option<Self> {
24697 if Self::can_cast(syntax.kind()) {
24698 Some(Self { syntax })
24699 } else {
24700 None
24701 }
24702 }
24703 #[inline]
24704 fn syntax(&self) -> &SyntaxNode {
24705 &self.syntax
24706 }
24707}
24708impl AstNode for ParamIn {
24709 #[inline]
24710 fn can_cast(kind: SyntaxKind) -> bool {
24711 kind == SyntaxKind::PARAM_IN
24712 }
24713 #[inline]
24714 fn cast(syntax: SyntaxNode) -> Option<Self> {
24715 if Self::can_cast(syntax.kind()) {
24716 Some(Self { syntax })
24717 } else {
24718 None
24719 }
24720 }
24721 #[inline]
24722 fn syntax(&self) -> &SyntaxNode {
24723 &self.syntax
24724 }
24725}
24726impl AstNode for ParamInOut {
24727 #[inline]
24728 fn can_cast(kind: SyntaxKind) -> bool {
24729 kind == SyntaxKind::PARAM_IN_OUT
24730 }
24731 #[inline]
24732 fn cast(syntax: SyntaxNode) -> Option<Self> {
24733 if Self::can_cast(syntax.kind()) {
24734 Some(Self { syntax })
24735 } else {
24736 None
24737 }
24738 }
24739 #[inline]
24740 fn syntax(&self) -> &SyntaxNode {
24741 &self.syntax
24742 }
24743}
24744impl AstNode for ParamList {
24745 #[inline]
24746 fn can_cast(kind: SyntaxKind) -> bool {
24747 kind == SyntaxKind::PARAM_LIST
24748 }
24749 #[inline]
24750 fn cast(syntax: SyntaxNode) -> Option<Self> {
24751 if Self::can_cast(syntax.kind()) {
24752 Some(Self { syntax })
24753 } else {
24754 None
24755 }
24756 }
24757 #[inline]
24758 fn syntax(&self) -> &SyntaxNode {
24759 &self.syntax
24760 }
24761}
24762impl AstNode for ParamOut {
24763 #[inline]
24764 fn can_cast(kind: SyntaxKind) -> bool {
24765 kind == SyntaxKind::PARAM_OUT
24766 }
24767 #[inline]
24768 fn cast(syntax: SyntaxNode) -> Option<Self> {
24769 if Self::can_cast(syntax.kind()) {
24770 Some(Self { syntax })
24771 } else {
24772 None
24773 }
24774 }
24775 #[inline]
24776 fn syntax(&self) -> &SyntaxNode {
24777 &self.syntax
24778 }
24779}
24780impl AstNode for ParamVariadic {
24781 #[inline]
24782 fn can_cast(kind: SyntaxKind) -> bool {
24783 kind == SyntaxKind::PARAM_VARIADIC
24784 }
24785 #[inline]
24786 fn cast(syntax: SyntaxNode) -> Option<Self> {
24787 if Self::can_cast(syntax.kind()) {
24788 Some(Self { syntax })
24789 } else {
24790 None
24791 }
24792 }
24793 #[inline]
24794 fn syntax(&self) -> &SyntaxNode {
24795 &self.syntax
24796 }
24797}
24798impl AstNode for ParenExpr {
24799 #[inline]
24800 fn can_cast(kind: SyntaxKind) -> bool {
24801 kind == SyntaxKind::PAREN_EXPR
24802 }
24803 #[inline]
24804 fn cast(syntax: SyntaxNode) -> Option<Self> {
24805 if Self::can_cast(syntax.kind()) {
24806 Some(Self { syntax })
24807 } else {
24808 None
24809 }
24810 }
24811 #[inline]
24812 fn syntax(&self) -> &SyntaxNode {
24813 &self.syntax
24814 }
24815}
24816impl AstNode for ParenSelect {
24817 #[inline]
24818 fn can_cast(kind: SyntaxKind) -> bool {
24819 kind == SyntaxKind::PAREN_SELECT
24820 }
24821 #[inline]
24822 fn cast(syntax: SyntaxNode) -> Option<Self> {
24823 if Self::can_cast(syntax.kind()) {
24824 Some(Self { syntax })
24825 } else {
24826 None
24827 }
24828 }
24829 #[inline]
24830 fn syntax(&self) -> &SyntaxNode {
24831 &self.syntax
24832 }
24833}
24834impl AstNode for Partition {
24835 #[inline]
24836 fn can_cast(kind: SyntaxKind) -> bool {
24837 kind == SyntaxKind::PARTITION
24838 }
24839 #[inline]
24840 fn cast(syntax: SyntaxNode) -> Option<Self> {
24841 if Self::can_cast(syntax.kind()) {
24842 Some(Self { syntax })
24843 } else {
24844 None
24845 }
24846 }
24847 #[inline]
24848 fn syntax(&self) -> &SyntaxNode {
24849 &self.syntax
24850 }
24851}
24852impl AstNode for PartitionBy {
24853 #[inline]
24854 fn can_cast(kind: SyntaxKind) -> bool {
24855 kind == SyntaxKind::PARTITION_BY
24856 }
24857 #[inline]
24858 fn cast(syntax: SyntaxNode) -> Option<Self> {
24859 if Self::can_cast(syntax.kind()) {
24860 Some(Self { syntax })
24861 } else {
24862 None
24863 }
24864 }
24865 #[inline]
24866 fn syntax(&self) -> &SyntaxNode {
24867 &self.syntax
24868 }
24869}
24870impl AstNode for PartitionDefault {
24871 #[inline]
24872 fn can_cast(kind: SyntaxKind) -> bool {
24873 kind == SyntaxKind::PARTITION_DEFAULT
24874 }
24875 #[inline]
24876 fn cast(syntax: SyntaxNode) -> Option<Self> {
24877 if Self::can_cast(syntax.kind()) {
24878 Some(Self { syntax })
24879 } else {
24880 None
24881 }
24882 }
24883 #[inline]
24884 fn syntax(&self) -> &SyntaxNode {
24885 &self.syntax
24886 }
24887}
24888impl AstNode for PartitionForValuesFrom {
24889 #[inline]
24890 fn can_cast(kind: SyntaxKind) -> bool {
24891 kind == SyntaxKind::PARTITION_FOR_VALUES_FROM
24892 }
24893 #[inline]
24894 fn cast(syntax: SyntaxNode) -> Option<Self> {
24895 if Self::can_cast(syntax.kind()) {
24896 Some(Self { syntax })
24897 } else {
24898 None
24899 }
24900 }
24901 #[inline]
24902 fn syntax(&self) -> &SyntaxNode {
24903 &self.syntax
24904 }
24905}
24906impl AstNode for PartitionForValuesIn {
24907 #[inline]
24908 fn can_cast(kind: SyntaxKind) -> bool {
24909 kind == SyntaxKind::PARTITION_FOR_VALUES_IN
24910 }
24911 #[inline]
24912 fn cast(syntax: SyntaxNode) -> Option<Self> {
24913 if Self::can_cast(syntax.kind()) {
24914 Some(Self { syntax })
24915 } else {
24916 None
24917 }
24918 }
24919 #[inline]
24920 fn syntax(&self) -> &SyntaxNode {
24921 &self.syntax
24922 }
24923}
24924impl AstNode for PartitionForValuesWith {
24925 #[inline]
24926 fn can_cast(kind: SyntaxKind) -> bool {
24927 kind == SyntaxKind::PARTITION_FOR_VALUES_WITH
24928 }
24929 #[inline]
24930 fn cast(syntax: SyntaxNode) -> Option<Self> {
24931 if Self::can_cast(syntax.kind()) {
24932 Some(Self { syntax })
24933 } else {
24934 None
24935 }
24936 }
24937 #[inline]
24938 fn syntax(&self) -> &SyntaxNode {
24939 &self.syntax
24940 }
24941}
24942impl AstNode for PartitionItem {
24943 #[inline]
24944 fn can_cast(kind: SyntaxKind) -> bool {
24945 kind == SyntaxKind::PARTITION_ITEM
24946 }
24947 #[inline]
24948 fn cast(syntax: SyntaxNode) -> Option<Self> {
24949 if Self::can_cast(syntax.kind()) {
24950 Some(Self { syntax })
24951 } else {
24952 None
24953 }
24954 }
24955 #[inline]
24956 fn syntax(&self) -> &SyntaxNode {
24957 &self.syntax
24958 }
24959}
24960impl AstNode for PartitionItemList {
24961 #[inline]
24962 fn can_cast(kind: SyntaxKind) -> bool {
24963 kind == SyntaxKind::PARTITION_ITEM_LIST
24964 }
24965 #[inline]
24966 fn cast(syntax: SyntaxNode) -> Option<Self> {
24967 if Self::can_cast(syntax.kind()) {
24968 Some(Self { syntax })
24969 } else {
24970 None
24971 }
24972 }
24973 #[inline]
24974 fn syntax(&self) -> &SyntaxNode {
24975 &self.syntax
24976 }
24977}
24978impl AstNode for PartitionList {
24979 #[inline]
24980 fn can_cast(kind: SyntaxKind) -> bool {
24981 kind == SyntaxKind::PARTITION_LIST
24982 }
24983 #[inline]
24984 fn cast(syntax: SyntaxNode) -> Option<Self> {
24985 if Self::can_cast(syntax.kind()) {
24986 Some(Self { syntax })
24987 } else {
24988 None
24989 }
24990 }
24991 #[inline]
24992 fn syntax(&self) -> &SyntaxNode {
24993 &self.syntax
24994 }
24995}
24996impl AstNode for PartitionOf {
24997 #[inline]
24998 fn can_cast(kind: SyntaxKind) -> bool {
24999 kind == SyntaxKind::PARTITION_OF
25000 }
25001 #[inline]
25002 fn cast(syntax: SyntaxNode) -> Option<Self> {
25003 if Self::can_cast(syntax.kind()) {
25004 Some(Self { syntax })
25005 } else {
25006 None
25007 }
25008 }
25009 #[inline]
25010 fn syntax(&self) -> &SyntaxNode {
25011 &self.syntax
25012 }
25013}
25014impl AstNode for Path {
25015 #[inline]
25016 fn can_cast(kind: SyntaxKind) -> bool {
25017 kind == SyntaxKind::PATH
25018 }
25019 #[inline]
25020 fn cast(syntax: SyntaxNode) -> Option<Self> {
25021 if Self::can_cast(syntax.kind()) {
25022 Some(Self { syntax })
25023 } else {
25024 None
25025 }
25026 }
25027 #[inline]
25028 fn syntax(&self) -> &SyntaxNode {
25029 &self.syntax
25030 }
25031}
25032impl AstNode for PathSegment {
25033 #[inline]
25034 fn can_cast(kind: SyntaxKind) -> bool {
25035 kind == SyntaxKind::PATH_SEGMENT
25036 }
25037 #[inline]
25038 fn cast(syntax: SyntaxNode) -> Option<Self> {
25039 if Self::can_cast(syntax.kind()) {
25040 Some(Self { syntax })
25041 } else {
25042 None
25043 }
25044 }
25045 #[inline]
25046 fn syntax(&self) -> &SyntaxNode {
25047 &self.syntax
25048 }
25049}
25050impl AstNode for PathType {
25051 #[inline]
25052 fn can_cast(kind: SyntaxKind) -> bool {
25053 kind == SyntaxKind::PATH_TYPE
25054 }
25055 #[inline]
25056 fn cast(syntax: SyntaxNode) -> Option<Self> {
25057 if Self::can_cast(syntax.kind()) {
25058 Some(Self { syntax })
25059 } else {
25060 None
25061 }
25062 }
25063 #[inline]
25064 fn syntax(&self) -> &SyntaxNode {
25065 &self.syntax
25066 }
25067}
25068impl AstNode for PercentType {
25069 #[inline]
25070 fn can_cast(kind: SyntaxKind) -> bool {
25071 kind == SyntaxKind::PERCENT_TYPE
25072 }
25073 #[inline]
25074 fn cast(syntax: SyntaxNode) -> Option<Self> {
25075 if Self::can_cast(syntax.kind()) {
25076 Some(Self { syntax })
25077 } else {
25078 None
25079 }
25080 }
25081 #[inline]
25082 fn syntax(&self) -> &SyntaxNode {
25083 &self.syntax
25084 }
25085}
25086impl AstNode for PercentTypeClause {
25087 #[inline]
25088 fn can_cast(kind: SyntaxKind) -> bool {
25089 kind == SyntaxKind::PERCENT_TYPE_CLAUSE
25090 }
25091 #[inline]
25092 fn cast(syntax: SyntaxNode) -> Option<Self> {
25093 if Self::can_cast(syntax.kind()) {
25094 Some(Self { syntax })
25095 } else {
25096 None
25097 }
25098 }
25099 #[inline]
25100 fn syntax(&self) -> &SyntaxNode {
25101 &self.syntax
25102 }
25103}
25104impl AstNode for PositionFn {
25105 #[inline]
25106 fn can_cast(kind: SyntaxKind) -> bool {
25107 kind == SyntaxKind::POSITION_FN
25108 }
25109 #[inline]
25110 fn cast(syntax: SyntaxNode) -> Option<Self> {
25111 if Self::can_cast(syntax.kind()) {
25112 Some(Self { syntax })
25113 } else {
25114 None
25115 }
25116 }
25117 #[inline]
25118 fn syntax(&self) -> &SyntaxNode {
25119 &self.syntax
25120 }
25121}
25122impl AstNode for PostfixExpr {
25123 #[inline]
25124 fn can_cast(kind: SyntaxKind) -> bool {
25125 kind == SyntaxKind::POSTFIX_EXPR
25126 }
25127 #[inline]
25128 fn cast(syntax: SyntaxNode) -> Option<Self> {
25129 if Self::can_cast(syntax.kind()) {
25130 Some(Self { syntax })
25131 } else {
25132 None
25133 }
25134 }
25135 #[inline]
25136 fn syntax(&self) -> &SyntaxNode {
25137 &self.syntax
25138 }
25139}
25140impl AstNode for PrefixExpr {
25141 #[inline]
25142 fn can_cast(kind: SyntaxKind) -> bool {
25143 kind == SyntaxKind::PREFIX_EXPR
25144 }
25145 #[inline]
25146 fn cast(syntax: SyntaxNode) -> Option<Self> {
25147 if Self::can_cast(syntax.kind()) {
25148 Some(Self { syntax })
25149 } else {
25150 None
25151 }
25152 }
25153 #[inline]
25154 fn syntax(&self) -> &SyntaxNode {
25155 &self.syntax
25156 }
25157}
25158impl AstNode for Prepare {
25159 #[inline]
25160 fn can_cast(kind: SyntaxKind) -> bool {
25161 kind == SyntaxKind::PREPARE
25162 }
25163 #[inline]
25164 fn cast(syntax: SyntaxNode) -> Option<Self> {
25165 if Self::can_cast(syntax.kind()) {
25166 Some(Self { syntax })
25167 } else {
25168 None
25169 }
25170 }
25171 #[inline]
25172 fn syntax(&self) -> &SyntaxNode {
25173 &self.syntax
25174 }
25175}
25176impl AstNode for PrepareTransaction {
25177 #[inline]
25178 fn can_cast(kind: SyntaxKind) -> bool {
25179 kind == SyntaxKind::PREPARE_TRANSACTION
25180 }
25181 #[inline]
25182 fn cast(syntax: SyntaxNode) -> Option<Self> {
25183 if Self::can_cast(syntax.kind()) {
25184 Some(Self { syntax })
25185 } else {
25186 None
25187 }
25188 }
25189 #[inline]
25190 fn syntax(&self) -> &SyntaxNode {
25191 &self.syntax
25192 }
25193}
25194impl AstNode for PreserveRows {
25195 #[inline]
25196 fn can_cast(kind: SyntaxKind) -> bool {
25197 kind == SyntaxKind::PRESERVE_ROWS
25198 }
25199 #[inline]
25200 fn cast(syntax: SyntaxNode) -> Option<Self> {
25201 if Self::can_cast(syntax.kind()) {
25202 Some(Self { syntax })
25203 } else {
25204 None
25205 }
25206 }
25207 #[inline]
25208 fn syntax(&self) -> &SyntaxNode {
25209 &self.syntax
25210 }
25211}
25212impl AstNode for PrimaryKeyConstraint {
25213 #[inline]
25214 fn can_cast(kind: SyntaxKind) -> bool {
25215 kind == SyntaxKind::PRIMARY_KEY_CONSTRAINT
25216 }
25217 #[inline]
25218 fn cast(syntax: SyntaxNode) -> Option<Self> {
25219 if Self::can_cast(syntax.kind()) {
25220 Some(Self { syntax })
25221 } else {
25222 None
25223 }
25224 }
25225 #[inline]
25226 fn syntax(&self) -> &SyntaxNode {
25227 &self.syntax
25228 }
25229}
25230impl AstNode for PrivilegeTarget {
25231 #[inline]
25232 fn can_cast(kind: SyntaxKind) -> bool {
25233 kind == SyntaxKind::PRIVILEGE_TARGET
25234 }
25235 #[inline]
25236 fn cast(syntax: SyntaxNode) -> Option<Self> {
25237 if Self::can_cast(syntax.kind()) {
25238 Some(Self { syntax })
25239 } else {
25240 None
25241 }
25242 }
25243 #[inline]
25244 fn syntax(&self) -> &SyntaxNode {
25245 &self.syntax
25246 }
25247}
25248impl AstNode for Privileges {
25249 #[inline]
25250 fn can_cast(kind: SyntaxKind) -> bool {
25251 kind == SyntaxKind::PRIVILEGES
25252 }
25253 #[inline]
25254 fn cast(syntax: SyntaxNode) -> Option<Self> {
25255 if Self::can_cast(syntax.kind()) {
25256 Some(Self { syntax })
25257 } else {
25258 None
25259 }
25260 }
25261 #[inline]
25262 fn syntax(&self) -> &SyntaxNode {
25263 &self.syntax
25264 }
25265}
25266impl AstNode for PublicationObject {
25267 #[inline]
25268 fn can_cast(kind: SyntaxKind) -> bool {
25269 kind == SyntaxKind::PUBLICATION_OBJECT
25270 }
25271 #[inline]
25272 fn cast(syntax: SyntaxNode) -> Option<Self> {
25273 if Self::can_cast(syntax.kind()) {
25274 Some(Self { syntax })
25275 } else {
25276 None
25277 }
25278 }
25279 #[inline]
25280 fn syntax(&self) -> &SyntaxNode {
25281 &self.syntax
25282 }
25283}
25284impl AstNode for ReadCommitted {
25285 #[inline]
25286 fn can_cast(kind: SyntaxKind) -> bool {
25287 kind == SyntaxKind::READ_COMMITTED
25288 }
25289 #[inline]
25290 fn cast(syntax: SyntaxNode) -> Option<Self> {
25291 if Self::can_cast(syntax.kind()) {
25292 Some(Self { syntax })
25293 } else {
25294 None
25295 }
25296 }
25297 #[inline]
25298 fn syntax(&self) -> &SyntaxNode {
25299 &self.syntax
25300 }
25301}
25302impl AstNode for ReadOnly {
25303 #[inline]
25304 fn can_cast(kind: SyntaxKind) -> bool {
25305 kind == SyntaxKind::READ_ONLY
25306 }
25307 #[inline]
25308 fn cast(syntax: SyntaxNode) -> Option<Self> {
25309 if Self::can_cast(syntax.kind()) {
25310 Some(Self { syntax })
25311 } else {
25312 None
25313 }
25314 }
25315 #[inline]
25316 fn syntax(&self) -> &SyntaxNode {
25317 &self.syntax
25318 }
25319}
25320impl AstNode for ReadUncommitted {
25321 #[inline]
25322 fn can_cast(kind: SyntaxKind) -> bool {
25323 kind == SyntaxKind::READ_UNCOMMITTED
25324 }
25325 #[inline]
25326 fn cast(syntax: SyntaxNode) -> Option<Self> {
25327 if Self::can_cast(syntax.kind()) {
25328 Some(Self { syntax })
25329 } else {
25330 None
25331 }
25332 }
25333 #[inline]
25334 fn syntax(&self) -> &SyntaxNode {
25335 &self.syntax
25336 }
25337}
25338impl AstNode for ReadWrite {
25339 #[inline]
25340 fn can_cast(kind: SyntaxKind) -> bool {
25341 kind == SyntaxKind::READ_WRITE
25342 }
25343 #[inline]
25344 fn cast(syntax: SyntaxNode) -> Option<Self> {
25345 if Self::can_cast(syntax.kind()) {
25346 Some(Self { syntax })
25347 } else {
25348 None
25349 }
25350 }
25351 #[inline]
25352 fn syntax(&self) -> &SyntaxNode {
25353 &self.syntax
25354 }
25355}
25356impl AstNode for Reassign {
25357 #[inline]
25358 fn can_cast(kind: SyntaxKind) -> bool {
25359 kind == SyntaxKind::REASSIGN
25360 }
25361 #[inline]
25362 fn cast(syntax: SyntaxNode) -> Option<Self> {
25363 if Self::can_cast(syntax.kind()) {
25364 Some(Self { syntax })
25365 } else {
25366 None
25367 }
25368 }
25369 #[inline]
25370 fn syntax(&self) -> &SyntaxNode {
25371 &self.syntax
25372 }
25373}
25374impl AstNode for ReferencesConstraint {
25375 #[inline]
25376 fn can_cast(kind: SyntaxKind) -> bool {
25377 kind == SyntaxKind::REFERENCES_CONSTRAINT
25378 }
25379 #[inline]
25380 fn cast(syntax: SyntaxNode) -> Option<Self> {
25381 if Self::can_cast(syntax.kind()) {
25382 Some(Self { syntax })
25383 } else {
25384 None
25385 }
25386 }
25387 #[inline]
25388 fn syntax(&self) -> &SyntaxNode {
25389 &self.syntax
25390 }
25391}
25392impl AstNode for Referencing {
25393 #[inline]
25394 fn can_cast(kind: SyntaxKind) -> bool {
25395 kind == SyntaxKind::REFERENCING
25396 }
25397 #[inline]
25398 fn cast(syntax: SyntaxNode) -> Option<Self> {
25399 if Self::can_cast(syntax.kind()) {
25400 Some(Self { syntax })
25401 } else {
25402 None
25403 }
25404 }
25405 #[inline]
25406 fn syntax(&self) -> &SyntaxNode {
25407 &self.syntax
25408 }
25409}
25410impl AstNode for ReferencingTable {
25411 #[inline]
25412 fn can_cast(kind: SyntaxKind) -> bool {
25413 kind == SyntaxKind::REFERENCING_TABLE
25414 }
25415 #[inline]
25416 fn cast(syntax: SyntaxNode) -> Option<Self> {
25417 if Self::can_cast(syntax.kind()) {
25418 Some(Self { syntax })
25419 } else {
25420 None
25421 }
25422 }
25423 #[inline]
25424 fn syntax(&self) -> &SyntaxNode {
25425 &self.syntax
25426 }
25427}
25428impl AstNode for Refresh {
25429 #[inline]
25430 fn can_cast(kind: SyntaxKind) -> bool {
25431 kind == SyntaxKind::REFRESH
25432 }
25433 #[inline]
25434 fn cast(syntax: SyntaxNode) -> Option<Self> {
25435 if Self::can_cast(syntax.kind()) {
25436 Some(Self { syntax })
25437 } else {
25438 None
25439 }
25440 }
25441 #[inline]
25442 fn syntax(&self) -> &SyntaxNode {
25443 &self.syntax
25444 }
25445}
25446impl AstNode for RefreshCollationVersion {
25447 #[inline]
25448 fn can_cast(kind: SyntaxKind) -> bool {
25449 kind == SyntaxKind::REFRESH_COLLATION_VERSION
25450 }
25451 #[inline]
25452 fn cast(syntax: SyntaxNode) -> Option<Self> {
25453 if Self::can_cast(syntax.kind()) {
25454 Some(Self { syntax })
25455 } else {
25456 None
25457 }
25458 }
25459 #[inline]
25460 fn syntax(&self) -> &SyntaxNode {
25461 &self.syntax
25462 }
25463}
25464impl AstNode for RefreshVersion {
25465 #[inline]
25466 fn can_cast(kind: SyntaxKind) -> bool {
25467 kind == SyntaxKind::REFRESH_VERSION
25468 }
25469 #[inline]
25470 fn cast(syntax: SyntaxNode) -> Option<Self> {
25471 if Self::can_cast(syntax.kind()) {
25472 Some(Self { syntax })
25473 } else {
25474 None
25475 }
25476 }
25477 #[inline]
25478 fn syntax(&self) -> &SyntaxNode {
25479 &self.syntax
25480 }
25481}
25482impl AstNode for Reindex {
25483 #[inline]
25484 fn can_cast(kind: SyntaxKind) -> bool {
25485 kind == SyntaxKind::REINDEX
25486 }
25487 #[inline]
25488 fn cast(syntax: SyntaxNode) -> Option<Self> {
25489 if Self::can_cast(syntax.kind()) {
25490 Some(Self { syntax })
25491 } else {
25492 None
25493 }
25494 }
25495 #[inline]
25496 fn syntax(&self) -> &SyntaxNode {
25497 &self.syntax
25498 }
25499}
25500impl AstNode for RelationName {
25501 #[inline]
25502 fn can_cast(kind: SyntaxKind) -> bool {
25503 kind == SyntaxKind::RELATION_NAME
25504 }
25505 #[inline]
25506 fn cast(syntax: SyntaxNode) -> Option<Self> {
25507 if Self::can_cast(syntax.kind()) {
25508 Some(Self { syntax })
25509 } else {
25510 None
25511 }
25512 }
25513 #[inline]
25514 fn syntax(&self) -> &SyntaxNode {
25515 &self.syntax
25516 }
25517}
25518impl AstNode for ReleaseSavepoint {
25519 #[inline]
25520 fn can_cast(kind: SyntaxKind) -> bool {
25521 kind == SyntaxKind::RELEASE_SAVEPOINT
25522 }
25523 #[inline]
25524 fn cast(syntax: SyntaxNode) -> Option<Self> {
25525 if Self::can_cast(syntax.kind()) {
25526 Some(Self { syntax })
25527 } else {
25528 None
25529 }
25530 }
25531 #[inline]
25532 fn syntax(&self) -> &SyntaxNode {
25533 &self.syntax
25534 }
25535}
25536impl AstNode for RenameColumn {
25537 #[inline]
25538 fn can_cast(kind: SyntaxKind) -> bool {
25539 kind == SyntaxKind::RENAME_COLUMN
25540 }
25541 #[inline]
25542 fn cast(syntax: SyntaxNode) -> Option<Self> {
25543 if Self::can_cast(syntax.kind()) {
25544 Some(Self { syntax })
25545 } else {
25546 None
25547 }
25548 }
25549 #[inline]
25550 fn syntax(&self) -> &SyntaxNode {
25551 &self.syntax
25552 }
25553}
25554impl AstNode for RenameConstraint {
25555 #[inline]
25556 fn can_cast(kind: SyntaxKind) -> bool {
25557 kind == SyntaxKind::RENAME_CONSTRAINT
25558 }
25559 #[inline]
25560 fn cast(syntax: SyntaxNode) -> Option<Self> {
25561 if Self::can_cast(syntax.kind()) {
25562 Some(Self { syntax })
25563 } else {
25564 None
25565 }
25566 }
25567 #[inline]
25568 fn syntax(&self) -> &SyntaxNode {
25569 &self.syntax
25570 }
25571}
25572impl AstNode for RenameTo {
25573 #[inline]
25574 fn can_cast(kind: SyntaxKind) -> bool {
25575 kind == SyntaxKind::RENAME_TO
25576 }
25577 #[inline]
25578 fn cast(syntax: SyntaxNode) -> Option<Self> {
25579 if Self::can_cast(syntax.kind()) {
25580 Some(Self { syntax })
25581 } else {
25582 None
25583 }
25584 }
25585 #[inline]
25586 fn syntax(&self) -> &SyntaxNode {
25587 &self.syntax
25588 }
25589}
25590impl AstNode for RepeatableClause {
25591 #[inline]
25592 fn can_cast(kind: SyntaxKind) -> bool {
25593 kind == SyntaxKind::REPEATABLE_CLAUSE
25594 }
25595 #[inline]
25596 fn cast(syntax: SyntaxNode) -> Option<Self> {
25597 if Self::can_cast(syntax.kind()) {
25598 Some(Self { syntax })
25599 } else {
25600 None
25601 }
25602 }
25603 #[inline]
25604 fn syntax(&self) -> &SyntaxNode {
25605 &self.syntax
25606 }
25607}
25608impl AstNode for RepeatableRead {
25609 #[inline]
25610 fn can_cast(kind: SyntaxKind) -> bool {
25611 kind == SyntaxKind::REPEATABLE_READ
25612 }
25613 #[inline]
25614 fn cast(syntax: SyntaxNode) -> Option<Self> {
25615 if Self::can_cast(syntax.kind()) {
25616 Some(Self { syntax })
25617 } else {
25618 None
25619 }
25620 }
25621 #[inline]
25622 fn syntax(&self) -> &SyntaxNode {
25623 &self.syntax
25624 }
25625}
25626impl AstNode for ReplicaIdentity {
25627 #[inline]
25628 fn can_cast(kind: SyntaxKind) -> bool {
25629 kind == SyntaxKind::REPLICA_IDENTITY
25630 }
25631 #[inline]
25632 fn cast(syntax: SyntaxNode) -> Option<Self> {
25633 if Self::can_cast(syntax.kind()) {
25634 Some(Self { syntax })
25635 } else {
25636 None
25637 }
25638 }
25639 #[inline]
25640 fn syntax(&self) -> &SyntaxNode {
25641 &self.syntax
25642 }
25643}
25644impl AstNode for Reset {
25645 #[inline]
25646 fn can_cast(kind: SyntaxKind) -> bool {
25647 kind == SyntaxKind::RESET
25648 }
25649 #[inline]
25650 fn cast(syntax: SyntaxNode) -> Option<Self> {
25651 if Self::can_cast(syntax.kind()) {
25652 Some(Self { syntax })
25653 } else {
25654 None
25655 }
25656 }
25657 #[inline]
25658 fn syntax(&self) -> &SyntaxNode {
25659 &self.syntax
25660 }
25661}
25662impl AstNode for ResetConfigParam {
25663 #[inline]
25664 fn can_cast(kind: SyntaxKind) -> bool {
25665 kind == SyntaxKind::RESET_CONFIG_PARAM
25666 }
25667 #[inline]
25668 fn cast(syntax: SyntaxNode) -> Option<Self> {
25669 if Self::can_cast(syntax.kind()) {
25670 Some(Self { syntax })
25671 } else {
25672 None
25673 }
25674 }
25675 #[inline]
25676 fn syntax(&self) -> &SyntaxNode {
25677 &self.syntax
25678 }
25679}
25680impl AstNode for ResetFuncOption {
25681 #[inline]
25682 fn can_cast(kind: SyntaxKind) -> bool {
25683 kind == SyntaxKind::RESET_FUNC_OPTION
25684 }
25685 #[inline]
25686 fn cast(syntax: SyntaxNode) -> Option<Self> {
25687 if Self::can_cast(syntax.kind()) {
25688 Some(Self { syntax })
25689 } else {
25690 None
25691 }
25692 }
25693 #[inline]
25694 fn syntax(&self) -> &SyntaxNode {
25695 &self.syntax
25696 }
25697}
25698impl AstNode for ResetOptions {
25699 #[inline]
25700 fn can_cast(kind: SyntaxKind) -> bool {
25701 kind == SyntaxKind::RESET_OPTIONS
25702 }
25703 #[inline]
25704 fn cast(syntax: SyntaxNode) -> Option<Self> {
25705 if Self::can_cast(syntax.kind()) {
25706 Some(Self { syntax })
25707 } else {
25708 None
25709 }
25710 }
25711 #[inline]
25712 fn syntax(&self) -> &SyntaxNode {
25713 &self.syntax
25714 }
25715}
25716impl AstNode for ResetSessionAuth {
25717 #[inline]
25718 fn can_cast(kind: SyntaxKind) -> bool {
25719 kind == SyntaxKind::RESET_SESSION_AUTH
25720 }
25721 #[inline]
25722 fn cast(syntax: SyntaxNode) -> Option<Self> {
25723 if Self::can_cast(syntax.kind()) {
25724 Some(Self { syntax })
25725 } else {
25726 None
25727 }
25728 }
25729 #[inline]
25730 fn syntax(&self) -> &SyntaxNode {
25731 &self.syntax
25732 }
25733}
25734impl AstNode for Restart {
25735 #[inline]
25736 fn can_cast(kind: SyntaxKind) -> bool {
25737 kind == SyntaxKind::RESTART
25738 }
25739 #[inline]
25740 fn cast(syntax: SyntaxNode) -> Option<Self> {
25741 if Self::can_cast(syntax.kind()) {
25742 Some(Self { syntax })
25743 } else {
25744 None
25745 }
25746 }
25747 #[inline]
25748 fn syntax(&self) -> &SyntaxNode {
25749 &self.syntax
25750 }
25751}
25752impl AstNode for Restrict {
25753 #[inline]
25754 fn can_cast(kind: SyntaxKind) -> bool {
25755 kind == SyntaxKind::RESTRICT
25756 }
25757 #[inline]
25758 fn cast(syntax: SyntaxNode) -> Option<Self> {
25759 if Self::can_cast(syntax.kind()) {
25760 Some(Self { syntax })
25761 } else {
25762 None
25763 }
25764 }
25765 #[inline]
25766 fn syntax(&self) -> &SyntaxNode {
25767 &self.syntax
25768 }
25769}
25770impl AstNode for RetType {
25771 #[inline]
25772 fn can_cast(kind: SyntaxKind) -> bool {
25773 kind == SyntaxKind::RET_TYPE
25774 }
25775 #[inline]
25776 fn cast(syntax: SyntaxNode) -> Option<Self> {
25777 if Self::can_cast(syntax.kind()) {
25778 Some(Self { syntax })
25779 } else {
25780 None
25781 }
25782 }
25783 #[inline]
25784 fn syntax(&self) -> &SyntaxNode {
25785 &self.syntax
25786 }
25787}
25788impl AstNode for ReturnFuncOption {
25789 #[inline]
25790 fn can_cast(kind: SyntaxKind) -> bool {
25791 kind == SyntaxKind::RETURN_FUNC_OPTION
25792 }
25793 #[inline]
25794 fn cast(syntax: SyntaxNode) -> Option<Self> {
25795 if Self::can_cast(syntax.kind()) {
25796 Some(Self { syntax })
25797 } else {
25798 None
25799 }
25800 }
25801 #[inline]
25802 fn syntax(&self) -> &SyntaxNode {
25803 &self.syntax
25804 }
25805}
25806impl AstNode for ReturningClause {
25807 #[inline]
25808 fn can_cast(kind: SyntaxKind) -> bool {
25809 kind == SyntaxKind::RETURNING_CLAUSE
25810 }
25811 #[inline]
25812 fn cast(syntax: SyntaxNode) -> Option<Self> {
25813 if Self::can_cast(syntax.kind()) {
25814 Some(Self { syntax })
25815 } else {
25816 None
25817 }
25818 }
25819 #[inline]
25820 fn syntax(&self) -> &SyntaxNode {
25821 &self.syntax
25822 }
25823}
25824impl AstNode for ReturningOption {
25825 #[inline]
25826 fn can_cast(kind: SyntaxKind) -> bool {
25827 kind == SyntaxKind::RETURNING_OPTION
25828 }
25829 #[inline]
25830 fn cast(syntax: SyntaxNode) -> Option<Self> {
25831 if Self::can_cast(syntax.kind()) {
25832 Some(Self { syntax })
25833 } else {
25834 None
25835 }
25836 }
25837 #[inline]
25838 fn syntax(&self) -> &SyntaxNode {
25839 &self.syntax
25840 }
25841}
25842impl AstNode for ReturningOptionList {
25843 #[inline]
25844 fn can_cast(kind: SyntaxKind) -> bool {
25845 kind == SyntaxKind::RETURNING_OPTION_LIST
25846 }
25847 #[inline]
25848 fn cast(syntax: SyntaxNode) -> Option<Self> {
25849 if Self::can_cast(syntax.kind()) {
25850 Some(Self { syntax })
25851 } else {
25852 None
25853 }
25854 }
25855 #[inline]
25856 fn syntax(&self) -> &SyntaxNode {
25857 &self.syntax
25858 }
25859}
25860impl AstNode for Revoke {
25861 #[inline]
25862 fn can_cast(kind: SyntaxKind) -> bool {
25863 kind == SyntaxKind::REVOKE
25864 }
25865 #[inline]
25866 fn cast(syntax: SyntaxNode) -> Option<Self> {
25867 if Self::can_cast(syntax.kind()) {
25868 Some(Self { syntax })
25869 } else {
25870 None
25871 }
25872 }
25873 #[inline]
25874 fn syntax(&self) -> &SyntaxNode {
25875 &self.syntax
25876 }
25877}
25878impl AstNode for RevokeCommand {
25879 #[inline]
25880 fn can_cast(kind: SyntaxKind) -> bool {
25881 kind == SyntaxKind::REVOKE_COMMAND
25882 }
25883 #[inline]
25884 fn cast(syntax: SyntaxNode) -> Option<Self> {
25885 if Self::can_cast(syntax.kind()) {
25886 Some(Self { syntax })
25887 } else {
25888 None
25889 }
25890 }
25891 #[inline]
25892 fn syntax(&self) -> &SyntaxNode {
25893 &self.syntax
25894 }
25895}
25896impl AstNode for RevokeCommandList {
25897 #[inline]
25898 fn can_cast(kind: SyntaxKind) -> bool {
25899 kind == SyntaxKind::REVOKE_COMMAND_LIST
25900 }
25901 #[inline]
25902 fn cast(syntax: SyntaxNode) -> Option<Self> {
25903 if Self::can_cast(syntax.kind()) {
25904 Some(Self { syntax })
25905 } else {
25906 None
25907 }
25908 }
25909 #[inline]
25910 fn syntax(&self) -> &SyntaxNode {
25911 &self.syntax
25912 }
25913}
25914impl AstNode for RevokeDefaultPrivileges {
25915 #[inline]
25916 fn can_cast(kind: SyntaxKind) -> bool {
25917 kind == SyntaxKind::REVOKE_DEFAULT_PRIVILEGES
25918 }
25919 #[inline]
25920 fn cast(syntax: SyntaxNode) -> Option<Self> {
25921 if Self::can_cast(syntax.kind()) {
25922 Some(Self { syntax })
25923 } else {
25924 None
25925 }
25926 }
25927 #[inline]
25928 fn syntax(&self) -> &SyntaxNode {
25929 &self.syntax
25930 }
25931}
25932impl AstNode for Role {
25933 #[inline]
25934 fn can_cast(kind: SyntaxKind) -> bool {
25935 kind == SyntaxKind::ROLE
25936 }
25937 #[inline]
25938 fn cast(syntax: SyntaxNode) -> Option<Self> {
25939 if Self::can_cast(syntax.kind()) {
25940 Some(Self { syntax })
25941 } else {
25942 None
25943 }
25944 }
25945 #[inline]
25946 fn syntax(&self) -> &SyntaxNode {
25947 &self.syntax
25948 }
25949}
25950impl AstNode for RoleList {
25951 #[inline]
25952 fn can_cast(kind: SyntaxKind) -> bool {
25953 kind == SyntaxKind::ROLE_LIST
25954 }
25955 #[inline]
25956 fn cast(syntax: SyntaxNode) -> Option<Self> {
25957 if Self::can_cast(syntax.kind()) {
25958 Some(Self { syntax })
25959 } else {
25960 None
25961 }
25962 }
25963 #[inline]
25964 fn syntax(&self) -> &SyntaxNode {
25965 &self.syntax
25966 }
25967}
25968impl AstNode for RoleOption {
25969 #[inline]
25970 fn can_cast(kind: SyntaxKind) -> bool {
25971 kind == SyntaxKind::ROLE_OPTION
25972 }
25973 #[inline]
25974 fn cast(syntax: SyntaxNode) -> Option<Self> {
25975 if Self::can_cast(syntax.kind()) {
25976 Some(Self { syntax })
25977 } else {
25978 None
25979 }
25980 }
25981 #[inline]
25982 fn syntax(&self) -> &SyntaxNode {
25983 &self.syntax
25984 }
25985}
25986impl AstNode for RoleOptionList {
25987 #[inline]
25988 fn can_cast(kind: SyntaxKind) -> bool {
25989 kind == SyntaxKind::ROLE_OPTION_LIST
25990 }
25991 #[inline]
25992 fn cast(syntax: SyntaxNode) -> Option<Self> {
25993 if Self::can_cast(syntax.kind()) {
25994 Some(Self { syntax })
25995 } else {
25996 None
25997 }
25998 }
25999 #[inline]
26000 fn syntax(&self) -> &SyntaxNode {
26001 &self.syntax
26002 }
26003}
26004impl AstNode for Rollback {
26005 #[inline]
26006 fn can_cast(kind: SyntaxKind) -> bool {
26007 kind == SyntaxKind::ROLLBACK
26008 }
26009 #[inline]
26010 fn cast(syntax: SyntaxNode) -> Option<Self> {
26011 if Self::can_cast(syntax.kind()) {
26012 Some(Self { syntax })
26013 } else {
26014 None
26015 }
26016 }
26017 #[inline]
26018 fn syntax(&self) -> &SyntaxNode {
26019 &self.syntax
26020 }
26021}
26022impl AstNode for Row {
26023 #[inline]
26024 fn can_cast(kind: SyntaxKind) -> bool {
26025 kind == SyntaxKind::ROW
26026 }
26027 #[inline]
26028 fn cast(syntax: SyntaxNode) -> Option<Self> {
26029 if Self::can_cast(syntax.kind()) {
26030 Some(Self { syntax })
26031 } else {
26032 None
26033 }
26034 }
26035 #[inline]
26036 fn syntax(&self) -> &SyntaxNode {
26037 &self.syntax
26038 }
26039}
26040impl AstNode for RowList {
26041 #[inline]
26042 fn can_cast(kind: SyntaxKind) -> bool {
26043 kind == SyntaxKind::ROW_LIST
26044 }
26045 #[inline]
26046 fn cast(syntax: SyntaxNode) -> Option<Self> {
26047 if Self::can_cast(syntax.kind()) {
26048 Some(Self { syntax })
26049 } else {
26050 None
26051 }
26052 }
26053 #[inline]
26054 fn syntax(&self) -> &SyntaxNode {
26055 &self.syntax
26056 }
26057}
26058impl AstNode for RowsFuncOption {
26059 #[inline]
26060 fn can_cast(kind: SyntaxKind) -> bool {
26061 kind == SyntaxKind::ROWS_FUNC_OPTION
26062 }
26063 #[inline]
26064 fn cast(syntax: SyntaxNode) -> Option<Self> {
26065 if Self::can_cast(syntax.kind()) {
26066 Some(Self { syntax })
26067 } else {
26068 None
26069 }
26070 }
26071 #[inline]
26072 fn syntax(&self) -> &SyntaxNode {
26073 &self.syntax
26074 }
26075}
26076impl AstNode for Savepoint {
26077 #[inline]
26078 fn can_cast(kind: SyntaxKind) -> bool {
26079 kind == SyntaxKind::SAVEPOINT
26080 }
26081 #[inline]
26082 fn cast(syntax: SyntaxNode) -> Option<Self> {
26083 if Self::can_cast(syntax.kind()) {
26084 Some(Self { syntax })
26085 } else {
26086 None
26087 }
26088 }
26089 #[inline]
26090 fn syntax(&self) -> &SyntaxNode {
26091 &self.syntax
26092 }
26093}
26094impl AstNode for SchemaAuthorization {
26095 #[inline]
26096 fn can_cast(kind: SyntaxKind) -> bool {
26097 kind == SyntaxKind::SCHEMA_AUTHORIZATION
26098 }
26099 #[inline]
26100 fn cast(syntax: SyntaxNode) -> Option<Self> {
26101 if Self::can_cast(syntax.kind()) {
26102 Some(Self { syntax })
26103 } else {
26104 None
26105 }
26106 }
26107 #[inline]
26108 fn syntax(&self) -> &SyntaxNode {
26109 &self.syntax
26110 }
26111}
26112impl AstNode for SecurityFuncOption {
26113 #[inline]
26114 fn can_cast(kind: SyntaxKind) -> bool {
26115 kind == SyntaxKind::SECURITY_FUNC_OPTION
26116 }
26117 #[inline]
26118 fn cast(syntax: SyntaxNode) -> Option<Self> {
26119 if Self::can_cast(syntax.kind()) {
26120 Some(Self { syntax })
26121 } else {
26122 None
26123 }
26124 }
26125 #[inline]
26126 fn syntax(&self) -> &SyntaxNode {
26127 &self.syntax
26128 }
26129}
26130impl AstNode for SecurityLabel {
26131 #[inline]
26132 fn can_cast(kind: SyntaxKind) -> bool {
26133 kind == SyntaxKind::SECURITY_LABEL
26134 }
26135 #[inline]
26136 fn cast(syntax: SyntaxNode) -> Option<Self> {
26137 if Self::can_cast(syntax.kind()) {
26138 Some(Self { syntax })
26139 } else {
26140 None
26141 }
26142 }
26143 #[inline]
26144 fn syntax(&self) -> &SyntaxNode {
26145 &self.syntax
26146 }
26147}
26148impl AstNode for Select {
26149 #[inline]
26150 fn can_cast(kind: SyntaxKind) -> bool {
26151 kind == SyntaxKind::SELECT
26152 }
26153 #[inline]
26154 fn cast(syntax: SyntaxNode) -> Option<Self> {
26155 if Self::can_cast(syntax.kind()) {
26156 Some(Self { syntax })
26157 } else {
26158 None
26159 }
26160 }
26161 #[inline]
26162 fn syntax(&self) -> &SyntaxNode {
26163 &self.syntax
26164 }
26165}
26166impl AstNode for SelectClause {
26167 #[inline]
26168 fn can_cast(kind: SyntaxKind) -> bool {
26169 kind == SyntaxKind::SELECT_CLAUSE
26170 }
26171 #[inline]
26172 fn cast(syntax: SyntaxNode) -> Option<Self> {
26173 if Self::can_cast(syntax.kind()) {
26174 Some(Self { syntax })
26175 } else {
26176 None
26177 }
26178 }
26179 #[inline]
26180 fn syntax(&self) -> &SyntaxNode {
26181 &self.syntax
26182 }
26183}
26184impl AstNode for SelectInto {
26185 #[inline]
26186 fn can_cast(kind: SyntaxKind) -> bool {
26187 kind == SyntaxKind::SELECT_INTO
26188 }
26189 #[inline]
26190 fn cast(syntax: SyntaxNode) -> Option<Self> {
26191 if Self::can_cast(syntax.kind()) {
26192 Some(Self { syntax })
26193 } else {
26194 None
26195 }
26196 }
26197 #[inline]
26198 fn syntax(&self) -> &SyntaxNode {
26199 &self.syntax
26200 }
26201}
26202impl AstNode for SequenceOption {
26203 #[inline]
26204 fn can_cast(kind: SyntaxKind) -> bool {
26205 kind == SyntaxKind::SEQUENCE_OPTION
26206 }
26207 #[inline]
26208 fn cast(syntax: SyntaxNode) -> Option<Self> {
26209 if Self::can_cast(syntax.kind()) {
26210 Some(Self { syntax })
26211 } else {
26212 None
26213 }
26214 }
26215 #[inline]
26216 fn syntax(&self) -> &SyntaxNode {
26217 &self.syntax
26218 }
26219}
26220impl AstNode for SequenceOptionList {
26221 #[inline]
26222 fn can_cast(kind: SyntaxKind) -> bool {
26223 kind == SyntaxKind::SEQUENCE_OPTION_LIST
26224 }
26225 #[inline]
26226 fn cast(syntax: SyntaxNode) -> Option<Self> {
26227 if Self::can_cast(syntax.kind()) {
26228 Some(Self { syntax })
26229 } else {
26230 None
26231 }
26232 }
26233 #[inline]
26234 fn syntax(&self) -> &SyntaxNode {
26235 &self.syntax
26236 }
26237}
26238impl AstNode for Serializable {
26239 #[inline]
26240 fn can_cast(kind: SyntaxKind) -> bool {
26241 kind == SyntaxKind::SERIALIZABLE
26242 }
26243 #[inline]
26244 fn cast(syntax: SyntaxNode) -> Option<Self> {
26245 if Self::can_cast(syntax.kind()) {
26246 Some(Self { syntax })
26247 } else {
26248 None
26249 }
26250 }
26251 #[inline]
26252 fn syntax(&self) -> &SyntaxNode {
26253 &self.syntax
26254 }
26255}
26256impl AstNode for Set {
26257 #[inline]
26258 fn can_cast(kind: SyntaxKind) -> bool {
26259 kind == SyntaxKind::SET
26260 }
26261 #[inline]
26262 fn cast(syntax: SyntaxNode) -> Option<Self> {
26263 if Self::can_cast(syntax.kind()) {
26264 Some(Self { syntax })
26265 } else {
26266 None
26267 }
26268 }
26269 #[inline]
26270 fn syntax(&self) -> &SyntaxNode {
26271 &self.syntax
26272 }
26273}
26274impl AstNode for SetAccessMethod {
26275 #[inline]
26276 fn can_cast(kind: SyntaxKind) -> bool {
26277 kind == SyntaxKind::SET_ACCESS_METHOD
26278 }
26279 #[inline]
26280 fn cast(syntax: SyntaxNode) -> Option<Self> {
26281 if Self::can_cast(syntax.kind()) {
26282 Some(Self { syntax })
26283 } else {
26284 None
26285 }
26286 }
26287 #[inline]
26288 fn syntax(&self) -> &SyntaxNode {
26289 &self.syntax
26290 }
26291}
26292impl AstNode for SetClause {
26293 #[inline]
26294 fn can_cast(kind: SyntaxKind) -> bool {
26295 kind == SyntaxKind::SET_CLAUSE
26296 }
26297 #[inline]
26298 fn cast(syntax: SyntaxNode) -> Option<Self> {
26299 if Self::can_cast(syntax.kind()) {
26300 Some(Self { syntax })
26301 } else {
26302 None
26303 }
26304 }
26305 #[inline]
26306 fn syntax(&self) -> &SyntaxNode {
26307 &self.syntax
26308 }
26309}
26310impl AstNode for SetColumnList {
26311 #[inline]
26312 fn can_cast(kind: SyntaxKind) -> bool {
26313 kind == SyntaxKind::SET_COLUMN_LIST
26314 }
26315 #[inline]
26316 fn cast(syntax: SyntaxNode) -> Option<Self> {
26317 if Self::can_cast(syntax.kind()) {
26318 Some(Self { syntax })
26319 } else {
26320 None
26321 }
26322 }
26323 #[inline]
26324 fn syntax(&self) -> &SyntaxNode {
26325 &self.syntax
26326 }
26327}
26328impl AstNode for SetCompression {
26329 #[inline]
26330 fn can_cast(kind: SyntaxKind) -> bool {
26331 kind == SyntaxKind::SET_COMPRESSION
26332 }
26333 #[inline]
26334 fn cast(syntax: SyntaxNode) -> Option<Self> {
26335 if Self::can_cast(syntax.kind()) {
26336 Some(Self { syntax })
26337 } else {
26338 None
26339 }
26340 }
26341 #[inline]
26342 fn syntax(&self) -> &SyntaxNode {
26343 &self.syntax
26344 }
26345}
26346impl AstNode for SetConfigParam {
26347 #[inline]
26348 fn can_cast(kind: SyntaxKind) -> bool {
26349 kind == SyntaxKind::SET_CONFIG_PARAM
26350 }
26351 #[inline]
26352 fn cast(syntax: SyntaxNode) -> Option<Self> {
26353 if Self::can_cast(syntax.kind()) {
26354 Some(Self { syntax })
26355 } else {
26356 None
26357 }
26358 }
26359 #[inline]
26360 fn syntax(&self) -> &SyntaxNode {
26361 &self.syntax
26362 }
26363}
26364impl AstNode for SetConstraints {
26365 #[inline]
26366 fn can_cast(kind: SyntaxKind) -> bool {
26367 kind == SyntaxKind::SET_CONSTRAINTS
26368 }
26369 #[inline]
26370 fn cast(syntax: SyntaxNode) -> Option<Self> {
26371 if Self::can_cast(syntax.kind()) {
26372 Some(Self { syntax })
26373 } else {
26374 None
26375 }
26376 }
26377 #[inline]
26378 fn syntax(&self) -> &SyntaxNode {
26379 &self.syntax
26380 }
26381}
26382impl AstNode for SetDefault {
26383 #[inline]
26384 fn can_cast(kind: SyntaxKind) -> bool {
26385 kind == SyntaxKind::SET_DEFAULT
26386 }
26387 #[inline]
26388 fn cast(syntax: SyntaxNode) -> Option<Self> {
26389 if Self::can_cast(syntax.kind()) {
26390 Some(Self { syntax })
26391 } else {
26392 None
26393 }
26394 }
26395 #[inline]
26396 fn syntax(&self) -> &SyntaxNode {
26397 &self.syntax
26398 }
26399}
26400impl AstNode for SetDefaultColumns {
26401 #[inline]
26402 fn can_cast(kind: SyntaxKind) -> bool {
26403 kind == SyntaxKind::SET_DEFAULT_COLUMNS
26404 }
26405 #[inline]
26406 fn cast(syntax: SyntaxNode) -> Option<Self> {
26407 if Self::can_cast(syntax.kind()) {
26408 Some(Self { syntax })
26409 } else {
26410 None
26411 }
26412 }
26413 #[inline]
26414 fn syntax(&self) -> &SyntaxNode {
26415 &self.syntax
26416 }
26417}
26418impl AstNode for SetExpr {
26419 #[inline]
26420 fn can_cast(kind: SyntaxKind) -> bool {
26421 kind == SyntaxKind::SET_EXPR
26422 }
26423 #[inline]
26424 fn cast(syntax: SyntaxNode) -> Option<Self> {
26425 if Self::can_cast(syntax.kind()) {
26426 Some(Self { syntax })
26427 } else {
26428 None
26429 }
26430 }
26431 #[inline]
26432 fn syntax(&self) -> &SyntaxNode {
26433 &self.syntax
26434 }
26435}
26436impl AstNode for SetExprList {
26437 #[inline]
26438 fn can_cast(kind: SyntaxKind) -> bool {
26439 kind == SyntaxKind::SET_EXPR_LIST
26440 }
26441 #[inline]
26442 fn cast(syntax: SyntaxNode) -> Option<Self> {
26443 if Self::can_cast(syntax.kind()) {
26444 Some(Self { syntax })
26445 } else {
26446 None
26447 }
26448 }
26449 #[inline]
26450 fn syntax(&self) -> &SyntaxNode {
26451 &self.syntax
26452 }
26453}
26454impl AstNode for SetExpression {
26455 #[inline]
26456 fn can_cast(kind: SyntaxKind) -> bool {
26457 kind == SyntaxKind::SET_EXPRESSION
26458 }
26459 #[inline]
26460 fn cast(syntax: SyntaxNode) -> Option<Self> {
26461 if Self::can_cast(syntax.kind()) {
26462 Some(Self { syntax })
26463 } else {
26464 None
26465 }
26466 }
26467 #[inline]
26468 fn syntax(&self) -> &SyntaxNode {
26469 &self.syntax
26470 }
26471}
26472impl AstNode for SetFuncOption {
26473 #[inline]
26474 fn can_cast(kind: SyntaxKind) -> bool {
26475 kind == SyntaxKind::SET_FUNC_OPTION
26476 }
26477 #[inline]
26478 fn cast(syntax: SyntaxNode) -> Option<Self> {
26479 if Self::can_cast(syntax.kind()) {
26480 Some(Self { syntax })
26481 } else {
26482 None
26483 }
26484 }
26485 #[inline]
26486 fn syntax(&self) -> &SyntaxNode {
26487 &self.syntax
26488 }
26489}
26490impl AstNode for SetGenerated {
26491 #[inline]
26492 fn can_cast(kind: SyntaxKind) -> bool {
26493 kind == SyntaxKind::SET_GENERATED
26494 }
26495 #[inline]
26496 fn cast(syntax: SyntaxNode) -> Option<Self> {
26497 if Self::can_cast(syntax.kind()) {
26498 Some(Self { syntax })
26499 } else {
26500 None
26501 }
26502 }
26503 #[inline]
26504 fn syntax(&self) -> &SyntaxNode {
26505 &self.syntax
26506 }
26507}
26508impl AstNode for SetGeneratedOptions {
26509 #[inline]
26510 fn can_cast(kind: SyntaxKind) -> bool {
26511 kind == SyntaxKind::SET_GENERATED_OPTIONS
26512 }
26513 #[inline]
26514 fn cast(syntax: SyntaxNode) -> Option<Self> {
26515 if Self::can_cast(syntax.kind()) {
26516 Some(Self { syntax })
26517 } else {
26518 None
26519 }
26520 }
26521 #[inline]
26522 fn syntax(&self) -> &SyntaxNode {
26523 &self.syntax
26524 }
26525}
26526impl AstNode for SetLogged {
26527 #[inline]
26528 fn can_cast(kind: SyntaxKind) -> bool {
26529 kind == SyntaxKind::SET_LOGGED
26530 }
26531 #[inline]
26532 fn cast(syntax: SyntaxNode) -> Option<Self> {
26533 if Self::can_cast(syntax.kind()) {
26534 Some(Self { syntax })
26535 } else {
26536 None
26537 }
26538 }
26539 #[inline]
26540 fn syntax(&self) -> &SyntaxNode {
26541 &self.syntax
26542 }
26543}
26544impl AstNode for SetMultipleColumns {
26545 #[inline]
26546 fn can_cast(kind: SyntaxKind) -> bool {
26547 kind == SyntaxKind::SET_MULTIPLE_COLUMNS
26548 }
26549 #[inline]
26550 fn cast(syntax: SyntaxNode) -> Option<Self> {
26551 if Self::can_cast(syntax.kind()) {
26552 Some(Self { syntax })
26553 } else {
26554 None
26555 }
26556 }
26557 #[inline]
26558 fn syntax(&self) -> &SyntaxNode {
26559 &self.syntax
26560 }
26561}
26562impl AstNode for SetNotNull {
26563 #[inline]
26564 fn can_cast(kind: SyntaxKind) -> bool {
26565 kind == SyntaxKind::SET_NOT_NULL
26566 }
26567 #[inline]
26568 fn cast(syntax: SyntaxNode) -> Option<Self> {
26569 if Self::can_cast(syntax.kind()) {
26570 Some(Self { syntax })
26571 } else {
26572 None
26573 }
26574 }
26575 #[inline]
26576 fn syntax(&self) -> &SyntaxNode {
26577 &self.syntax
26578 }
26579}
26580impl AstNode for SetNullColumns {
26581 #[inline]
26582 fn can_cast(kind: SyntaxKind) -> bool {
26583 kind == SyntaxKind::SET_NULL_COLUMNS
26584 }
26585 #[inline]
26586 fn cast(syntax: SyntaxNode) -> Option<Self> {
26587 if Self::can_cast(syntax.kind()) {
26588 Some(Self { syntax })
26589 } else {
26590 None
26591 }
26592 }
26593 #[inline]
26594 fn syntax(&self) -> &SyntaxNode {
26595 &self.syntax
26596 }
26597}
26598impl AstNode for SetOptions {
26599 #[inline]
26600 fn can_cast(kind: SyntaxKind) -> bool {
26601 kind == SyntaxKind::SET_OPTIONS
26602 }
26603 #[inline]
26604 fn cast(syntax: SyntaxNode) -> Option<Self> {
26605 if Self::can_cast(syntax.kind()) {
26606 Some(Self { syntax })
26607 } else {
26608 None
26609 }
26610 }
26611 #[inline]
26612 fn syntax(&self) -> &SyntaxNode {
26613 &self.syntax
26614 }
26615}
26616impl AstNode for SetOptionsList {
26617 #[inline]
26618 fn can_cast(kind: SyntaxKind) -> bool {
26619 kind == SyntaxKind::SET_OPTIONS_LIST
26620 }
26621 #[inline]
26622 fn cast(syntax: SyntaxNode) -> Option<Self> {
26623 if Self::can_cast(syntax.kind()) {
26624 Some(Self { syntax })
26625 } else {
26626 None
26627 }
26628 }
26629 #[inline]
26630 fn syntax(&self) -> &SyntaxNode {
26631 &self.syntax
26632 }
26633}
26634impl AstNode for SetRole {
26635 #[inline]
26636 fn can_cast(kind: SyntaxKind) -> bool {
26637 kind == SyntaxKind::SET_ROLE
26638 }
26639 #[inline]
26640 fn cast(syntax: SyntaxNode) -> Option<Self> {
26641 if Self::can_cast(syntax.kind()) {
26642 Some(Self { syntax })
26643 } else {
26644 None
26645 }
26646 }
26647 #[inline]
26648 fn syntax(&self) -> &SyntaxNode {
26649 &self.syntax
26650 }
26651}
26652impl AstNode for SetSchema {
26653 #[inline]
26654 fn can_cast(kind: SyntaxKind) -> bool {
26655 kind == SyntaxKind::SET_SCHEMA
26656 }
26657 #[inline]
26658 fn cast(syntax: SyntaxNode) -> Option<Self> {
26659 if Self::can_cast(syntax.kind()) {
26660 Some(Self { syntax })
26661 } else {
26662 None
26663 }
26664 }
26665 #[inline]
26666 fn syntax(&self) -> &SyntaxNode {
26667 &self.syntax
26668 }
26669}
26670impl AstNode for SetSequenceOption {
26671 #[inline]
26672 fn can_cast(kind: SyntaxKind) -> bool {
26673 kind == SyntaxKind::SET_SEQUENCE_OPTION
26674 }
26675 #[inline]
26676 fn cast(syntax: SyntaxNode) -> Option<Self> {
26677 if Self::can_cast(syntax.kind()) {
26678 Some(Self { syntax })
26679 } else {
26680 None
26681 }
26682 }
26683 #[inline]
26684 fn syntax(&self) -> &SyntaxNode {
26685 &self.syntax
26686 }
26687}
26688impl AstNode for SetSessionAuth {
26689 #[inline]
26690 fn can_cast(kind: SyntaxKind) -> bool {
26691 kind == SyntaxKind::SET_SESSION_AUTH
26692 }
26693 #[inline]
26694 fn cast(syntax: SyntaxNode) -> Option<Self> {
26695 if Self::can_cast(syntax.kind()) {
26696 Some(Self { syntax })
26697 } else {
26698 None
26699 }
26700 }
26701 #[inline]
26702 fn syntax(&self) -> &SyntaxNode {
26703 &self.syntax
26704 }
26705}
26706impl AstNode for SetSingleColumn {
26707 #[inline]
26708 fn can_cast(kind: SyntaxKind) -> bool {
26709 kind == SyntaxKind::SET_SINGLE_COLUMN
26710 }
26711 #[inline]
26712 fn cast(syntax: SyntaxNode) -> Option<Self> {
26713 if Self::can_cast(syntax.kind()) {
26714 Some(Self { syntax })
26715 } else {
26716 None
26717 }
26718 }
26719 #[inline]
26720 fn syntax(&self) -> &SyntaxNode {
26721 &self.syntax
26722 }
26723}
26724impl AstNode for SetStatistics {
26725 #[inline]
26726 fn can_cast(kind: SyntaxKind) -> bool {
26727 kind == SyntaxKind::SET_STATISTICS
26728 }
26729 #[inline]
26730 fn cast(syntax: SyntaxNode) -> Option<Self> {
26731 if Self::can_cast(syntax.kind()) {
26732 Some(Self { syntax })
26733 } else {
26734 None
26735 }
26736 }
26737 #[inline]
26738 fn syntax(&self) -> &SyntaxNode {
26739 &self.syntax
26740 }
26741}
26742impl AstNode for SetStorage {
26743 #[inline]
26744 fn can_cast(kind: SyntaxKind) -> bool {
26745 kind == SyntaxKind::SET_STORAGE
26746 }
26747 #[inline]
26748 fn cast(syntax: SyntaxNode) -> Option<Self> {
26749 if Self::can_cast(syntax.kind()) {
26750 Some(Self { syntax })
26751 } else {
26752 None
26753 }
26754 }
26755 #[inline]
26756 fn syntax(&self) -> &SyntaxNode {
26757 &self.syntax
26758 }
26759}
26760impl AstNode for SetTablespace {
26761 #[inline]
26762 fn can_cast(kind: SyntaxKind) -> bool {
26763 kind == SyntaxKind::SET_TABLESPACE
26764 }
26765 #[inline]
26766 fn cast(syntax: SyntaxNode) -> Option<Self> {
26767 if Self::can_cast(syntax.kind()) {
26768 Some(Self { syntax })
26769 } else {
26770 None
26771 }
26772 }
26773 #[inline]
26774 fn syntax(&self) -> &SyntaxNode {
26775 &self.syntax
26776 }
26777}
26778impl AstNode for SetTransaction {
26779 #[inline]
26780 fn can_cast(kind: SyntaxKind) -> bool {
26781 kind == SyntaxKind::SET_TRANSACTION
26782 }
26783 #[inline]
26784 fn cast(syntax: SyntaxNode) -> Option<Self> {
26785 if Self::can_cast(syntax.kind()) {
26786 Some(Self { syntax })
26787 } else {
26788 None
26789 }
26790 }
26791 #[inline]
26792 fn syntax(&self) -> &SyntaxNode {
26793 &self.syntax
26794 }
26795}
26796impl AstNode for SetType {
26797 #[inline]
26798 fn can_cast(kind: SyntaxKind) -> bool {
26799 kind == SyntaxKind::SET_TYPE
26800 }
26801 #[inline]
26802 fn cast(syntax: SyntaxNode) -> Option<Self> {
26803 if Self::can_cast(syntax.kind()) {
26804 Some(Self { syntax })
26805 } else {
26806 None
26807 }
26808 }
26809 #[inline]
26810 fn syntax(&self) -> &SyntaxNode {
26811 &self.syntax
26812 }
26813}
26814impl AstNode for SetUnlogged {
26815 #[inline]
26816 fn can_cast(kind: SyntaxKind) -> bool {
26817 kind == SyntaxKind::SET_UNLOGGED
26818 }
26819 #[inline]
26820 fn cast(syntax: SyntaxNode) -> Option<Self> {
26821 if Self::can_cast(syntax.kind()) {
26822 Some(Self { syntax })
26823 } else {
26824 None
26825 }
26826 }
26827 #[inline]
26828 fn syntax(&self) -> &SyntaxNode {
26829 &self.syntax
26830 }
26831}
26832impl AstNode for SetWithoutCluster {
26833 #[inline]
26834 fn can_cast(kind: SyntaxKind) -> bool {
26835 kind == SyntaxKind::SET_WITHOUT_CLUSTER
26836 }
26837 #[inline]
26838 fn cast(syntax: SyntaxNode) -> Option<Self> {
26839 if Self::can_cast(syntax.kind()) {
26840 Some(Self { syntax })
26841 } else {
26842 None
26843 }
26844 }
26845 #[inline]
26846 fn syntax(&self) -> &SyntaxNode {
26847 &self.syntax
26848 }
26849}
26850impl AstNode for SetWithoutOids {
26851 #[inline]
26852 fn can_cast(kind: SyntaxKind) -> bool {
26853 kind == SyntaxKind::SET_WITHOUT_OIDS
26854 }
26855 #[inline]
26856 fn cast(syntax: SyntaxNode) -> Option<Self> {
26857 if Self::can_cast(syntax.kind()) {
26858 Some(Self { syntax })
26859 } else {
26860 None
26861 }
26862 }
26863 #[inline]
26864 fn syntax(&self) -> &SyntaxNode {
26865 &self.syntax
26866 }
26867}
26868impl AstNode for Show {
26869 #[inline]
26870 fn can_cast(kind: SyntaxKind) -> bool {
26871 kind == SyntaxKind::SHOW
26872 }
26873 #[inline]
26874 fn cast(syntax: SyntaxNode) -> Option<Self> {
26875 if Self::can_cast(syntax.kind()) {
26876 Some(Self { syntax })
26877 } else {
26878 None
26879 }
26880 }
26881 #[inline]
26882 fn syntax(&self) -> &SyntaxNode {
26883 &self.syntax
26884 }
26885}
26886impl AstNode for SimilarTo {
26887 #[inline]
26888 fn can_cast(kind: SyntaxKind) -> bool {
26889 kind == SyntaxKind::SIMILAR_TO
26890 }
26891 #[inline]
26892 fn cast(syntax: SyntaxNode) -> Option<Self> {
26893 if Self::can_cast(syntax.kind()) {
26894 Some(Self { syntax })
26895 } else {
26896 None
26897 }
26898 }
26899 #[inline]
26900 fn syntax(&self) -> &SyntaxNode {
26901 &self.syntax
26902 }
26903}
26904impl AstNode for SliceExpr {
26905 #[inline]
26906 fn can_cast(kind: SyntaxKind) -> bool {
26907 kind == SyntaxKind::SLICE_EXPR
26908 }
26909 #[inline]
26910 fn cast(syntax: SyntaxNode) -> Option<Self> {
26911 if Self::can_cast(syntax.kind()) {
26912 Some(Self { syntax })
26913 } else {
26914 None
26915 }
26916 }
26917 #[inline]
26918 fn syntax(&self) -> &SyntaxNode {
26919 &self.syntax
26920 }
26921}
26922impl AstNode for SomeFn {
26923 #[inline]
26924 fn can_cast(kind: SyntaxKind) -> bool {
26925 kind == SyntaxKind::SOME_FN
26926 }
26927 #[inline]
26928 fn cast(syntax: SyntaxNode) -> Option<Self> {
26929 if Self::can_cast(syntax.kind()) {
26930 Some(Self { syntax })
26931 } else {
26932 None
26933 }
26934 }
26935 #[inline]
26936 fn syntax(&self) -> &SyntaxNode {
26937 &self.syntax
26938 }
26939}
26940impl AstNode for SortAsc {
26941 #[inline]
26942 fn can_cast(kind: SyntaxKind) -> bool {
26943 kind == SyntaxKind::SORT_ASC
26944 }
26945 #[inline]
26946 fn cast(syntax: SyntaxNode) -> Option<Self> {
26947 if Self::can_cast(syntax.kind()) {
26948 Some(Self { syntax })
26949 } else {
26950 None
26951 }
26952 }
26953 #[inline]
26954 fn syntax(&self) -> &SyntaxNode {
26955 &self.syntax
26956 }
26957}
26958impl AstNode for SortBy {
26959 #[inline]
26960 fn can_cast(kind: SyntaxKind) -> bool {
26961 kind == SyntaxKind::SORT_BY
26962 }
26963 #[inline]
26964 fn cast(syntax: SyntaxNode) -> Option<Self> {
26965 if Self::can_cast(syntax.kind()) {
26966 Some(Self { syntax })
26967 } else {
26968 None
26969 }
26970 }
26971 #[inline]
26972 fn syntax(&self) -> &SyntaxNode {
26973 &self.syntax
26974 }
26975}
26976impl AstNode for SortByList {
26977 #[inline]
26978 fn can_cast(kind: SyntaxKind) -> bool {
26979 kind == SyntaxKind::SORT_BY_LIST
26980 }
26981 #[inline]
26982 fn cast(syntax: SyntaxNode) -> Option<Self> {
26983 if Self::can_cast(syntax.kind()) {
26984 Some(Self { syntax })
26985 } else {
26986 None
26987 }
26988 }
26989 #[inline]
26990 fn syntax(&self) -> &SyntaxNode {
26991 &self.syntax
26992 }
26993}
26994impl AstNode for SortDesc {
26995 #[inline]
26996 fn can_cast(kind: SyntaxKind) -> bool {
26997 kind == SyntaxKind::SORT_DESC
26998 }
26999 #[inline]
27000 fn cast(syntax: SyntaxNode) -> Option<Self> {
27001 if Self::can_cast(syntax.kind()) {
27002 Some(Self { syntax })
27003 } else {
27004 None
27005 }
27006 }
27007 #[inline]
27008 fn syntax(&self) -> &SyntaxNode {
27009 &self.syntax
27010 }
27011}
27012impl AstNode for SortUsing {
27013 #[inline]
27014 fn can_cast(kind: SyntaxKind) -> bool {
27015 kind == SyntaxKind::SORT_USING
27016 }
27017 #[inline]
27018 fn cast(syntax: SyntaxNode) -> Option<Self> {
27019 if Self::can_cast(syntax.kind()) {
27020 Some(Self { syntax })
27021 } else {
27022 None
27023 }
27024 }
27025 #[inline]
27026 fn syntax(&self) -> &SyntaxNode {
27027 &self.syntax
27028 }
27029}
27030impl AstNode for SourceFile {
27031 #[inline]
27032 fn can_cast(kind: SyntaxKind) -> bool {
27033 kind == SyntaxKind::SOURCE_FILE
27034 }
27035 #[inline]
27036 fn cast(syntax: SyntaxNode) -> Option<Self> {
27037 if Self::can_cast(syntax.kind()) {
27038 Some(Self { syntax })
27039 } else {
27040 None
27041 }
27042 }
27043 #[inline]
27044 fn syntax(&self) -> &SyntaxNode {
27045 &self.syntax
27046 }
27047}
27048impl AstNode for SplitPartition {
27049 #[inline]
27050 fn can_cast(kind: SyntaxKind) -> bool {
27051 kind == SyntaxKind::SPLIT_PARTITION
27052 }
27053 #[inline]
27054 fn cast(syntax: SyntaxNode) -> Option<Self> {
27055 if Self::can_cast(syntax.kind()) {
27056 Some(Self { syntax })
27057 } else {
27058 None
27059 }
27060 }
27061 #[inline]
27062 fn syntax(&self) -> &SyntaxNode {
27063 &self.syntax
27064 }
27065}
27066impl AstNode for Storage {
27067 #[inline]
27068 fn can_cast(kind: SyntaxKind) -> bool {
27069 kind == SyntaxKind::STORAGE
27070 }
27071 #[inline]
27072 fn cast(syntax: SyntaxNode) -> Option<Self> {
27073 if Self::can_cast(syntax.kind()) {
27074 Some(Self { syntax })
27075 } else {
27076 None
27077 }
27078 }
27079 #[inline]
27080 fn syntax(&self) -> &SyntaxNode {
27081 &self.syntax
27082 }
27083}
27084impl AstNode for StrictFuncOption {
27085 #[inline]
27086 fn can_cast(kind: SyntaxKind) -> bool {
27087 kind == SyntaxKind::STRICT_FUNC_OPTION
27088 }
27089 #[inline]
27090 fn cast(syntax: SyntaxNode) -> Option<Self> {
27091 if Self::can_cast(syntax.kind()) {
27092 Some(Self { syntax })
27093 } else {
27094 None
27095 }
27096 }
27097 #[inline]
27098 fn syntax(&self) -> &SyntaxNode {
27099 &self.syntax
27100 }
27101}
27102impl AstNode for SubstringFn {
27103 #[inline]
27104 fn can_cast(kind: SyntaxKind) -> bool {
27105 kind == SyntaxKind::SUBSTRING_FN
27106 }
27107 #[inline]
27108 fn cast(syntax: SyntaxNode) -> Option<Self> {
27109 if Self::can_cast(syntax.kind()) {
27110 Some(Self { syntax })
27111 } else {
27112 None
27113 }
27114 }
27115 #[inline]
27116 fn syntax(&self) -> &SyntaxNode {
27117 &self.syntax
27118 }
27119}
27120impl AstNode for SupportFuncOption {
27121 #[inline]
27122 fn can_cast(kind: SyntaxKind) -> bool {
27123 kind == SyntaxKind::SUPPORT_FUNC_OPTION
27124 }
27125 #[inline]
27126 fn cast(syntax: SyntaxNode) -> Option<Self> {
27127 if Self::can_cast(syntax.kind()) {
27128 Some(Self { syntax })
27129 } else {
27130 None
27131 }
27132 }
27133 #[inline]
27134 fn syntax(&self) -> &SyntaxNode {
27135 &self.syntax
27136 }
27137}
27138impl AstNode for Table {
27139 #[inline]
27140 fn can_cast(kind: SyntaxKind) -> bool {
27141 kind == SyntaxKind::TABLE
27142 }
27143 #[inline]
27144 fn cast(syntax: SyntaxNode) -> Option<Self> {
27145 if Self::can_cast(syntax.kind()) {
27146 Some(Self { syntax })
27147 } else {
27148 None
27149 }
27150 }
27151 #[inline]
27152 fn syntax(&self) -> &SyntaxNode {
27153 &self.syntax
27154 }
27155}
27156impl AstNode for TableAndColumns {
27157 #[inline]
27158 fn can_cast(kind: SyntaxKind) -> bool {
27159 kind == SyntaxKind::TABLE_AND_COLUMNS
27160 }
27161 #[inline]
27162 fn cast(syntax: SyntaxNode) -> Option<Self> {
27163 if Self::can_cast(syntax.kind()) {
27164 Some(Self { syntax })
27165 } else {
27166 None
27167 }
27168 }
27169 #[inline]
27170 fn syntax(&self) -> &SyntaxNode {
27171 &self.syntax
27172 }
27173}
27174impl AstNode for TableAndColumnsList {
27175 #[inline]
27176 fn can_cast(kind: SyntaxKind) -> bool {
27177 kind == SyntaxKind::TABLE_AND_COLUMNS_LIST
27178 }
27179 #[inline]
27180 fn cast(syntax: SyntaxNode) -> Option<Self> {
27181 if Self::can_cast(syntax.kind()) {
27182 Some(Self { syntax })
27183 } else {
27184 None
27185 }
27186 }
27187 #[inline]
27188 fn syntax(&self) -> &SyntaxNode {
27189 &self.syntax
27190 }
27191}
27192impl AstNode for TableArgList {
27193 #[inline]
27194 fn can_cast(kind: SyntaxKind) -> bool {
27195 kind == SyntaxKind::TABLE_ARG_LIST
27196 }
27197 #[inline]
27198 fn cast(syntax: SyntaxNode) -> Option<Self> {
27199 if Self::can_cast(syntax.kind()) {
27200 Some(Self { syntax })
27201 } else {
27202 None
27203 }
27204 }
27205 #[inline]
27206 fn syntax(&self) -> &SyntaxNode {
27207 &self.syntax
27208 }
27209}
27210impl AstNode for TableList {
27211 #[inline]
27212 fn can_cast(kind: SyntaxKind) -> bool {
27213 kind == SyntaxKind::TABLE_LIST
27214 }
27215 #[inline]
27216 fn cast(syntax: SyntaxNode) -> Option<Self> {
27217 if Self::can_cast(syntax.kind()) {
27218 Some(Self { syntax })
27219 } else {
27220 None
27221 }
27222 }
27223 #[inline]
27224 fn syntax(&self) -> &SyntaxNode {
27225 &self.syntax
27226 }
27227}
27228impl AstNode for TablesampleClause {
27229 #[inline]
27230 fn can_cast(kind: SyntaxKind) -> bool {
27231 kind == SyntaxKind::TABLESAMPLE_CLAUSE
27232 }
27233 #[inline]
27234 fn cast(syntax: SyntaxNode) -> Option<Self> {
27235 if Self::can_cast(syntax.kind()) {
27236 Some(Self { syntax })
27237 } else {
27238 None
27239 }
27240 }
27241 #[inline]
27242 fn syntax(&self) -> &SyntaxNode {
27243 &self.syntax
27244 }
27245}
27246impl AstNode for Tablespace {
27247 #[inline]
27248 fn can_cast(kind: SyntaxKind) -> bool {
27249 kind == SyntaxKind::TABLESPACE
27250 }
27251 #[inline]
27252 fn cast(syntax: SyntaxNode) -> Option<Self> {
27253 if Self::can_cast(syntax.kind()) {
27254 Some(Self { syntax })
27255 } else {
27256 None
27257 }
27258 }
27259 #[inline]
27260 fn syntax(&self) -> &SyntaxNode {
27261 &self.syntax
27262 }
27263}
27264impl AstNode for Target {
27265 #[inline]
27266 fn can_cast(kind: SyntaxKind) -> bool {
27267 kind == SyntaxKind::TARGET
27268 }
27269 #[inline]
27270 fn cast(syntax: SyntaxNode) -> Option<Self> {
27271 if Self::can_cast(syntax.kind()) {
27272 Some(Self { syntax })
27273 } else {
27274 None
27275 }
27276 }
27277 #[inline]
27278 fn syntax(&self) -> &SyntaxNode {
27279 &self.syntax
27280 }
27281}
27282impl AstNode for TargetList {
27283 #[inline]
27284 fn can_cast(kind: SyntaxKind) -> bool {
27285 kind == SyntaxKind::TARGET_LIST
27286 }
27287 #[inline]
27288 fn cast(syntax: SyntaxNode) -> Option<Self> {
27289 if Self::can_cast(syntax.kind()) {
27290 Some(Self { syntax })
27291 } else {
27292 None
27293 }
27294 }
27295 #[inline]
27296 fn syntax(&self) -> &SyntaxNode {
27297 &self.syntax
27298 }
27299}
27300impl AstNode for TimeType {
27301 #[inline]
27302 fn can_cast(kind: SyntaxKind) -> bool {
27303 kind == SyntaxKind::TIME_TYPE
27304 }
27305 #[inline]
27306 fn cast(syntax: SyntaxNode) -> Option<Self> {
27307 if Self::can_cast(syntax.kind()) {
27308 Some(Self { syntax })
27309 } else {
27310 None
27311 }
27312 }
27313 #[inline]
27314 fn syntax(&self) -> &SyntaxNode {
27315 &self.syntax
27316 }
27317}
27318impl AstNode for Timing {
27319 #[inline]
27320 fn can_cast(kind: SyntaxKind) -> bool {
27321 kind == SyntaxKind::TIMING
27322 }
27323 #[inline]
27324 fn cast(syntax: SyntaxNode) -> Option<Self> {
27325 if Self::can_cast(syntax.kind()) {
27326 Some(Self { syntax })
27327 } else {
27328 None
27329 }
27330 }
27331 #[inline]
27332 fn syntax(&self) -> &SyntaxNode {
27333 &self.syntax
27334 }
27335}
27336impl AstNode for TransactionModeList {
27337 #[inline]
27338 fn can_cast(kind: SyntaxKind) -> bool {
27339 kind == SyntaxKind::TRANSACTION_MODE_LIST
27340 }
27341 #[inline]
27342 fn cast(syntax: SyntaxNode) -> Option<Self> {
27343 if Self::can_cast(syntax.kind()) {
27344 Some(Self { syntax })
27345 } else {
27346 None
27347 }
27348 }
27349 #[inline]
27350 fn syntax(&self) -> &SyntaxNode {
27351 &self.syntax
27352 }
27353}
27354impl AstNode for TransformFromFunc {
27355 #[inline]
27356 fn can_cast(kind: SyntaxKind) -> bool {
27357 kind == SyntaxKind::TRANSFORM_FROM_FUNC
27358 }
27359 #[inline]
27360 fn cast(syntax: SyntaxNode) -> Option<Self> {
27361 if Self::can_cast(syntax.kind()) {
27362 Some(Self { syntax })
27363 } else {
27364 None
27365 }
27366 }
27367 #[inline]
27368 fn syntax(&self) -> &SyntaxNode {
27369 &self.syntax
27370 }
27371}
27372impl AstNode for TransformFuncOption {
27373 #[inline]
27374 fn can_cast(kind: SyntaxKind) -> bool {
27375 kind == SyntaxKind::TRANSFORM_FUNC_OPTION
27376 }
27377 #[inline]
27378 fn cast(syntax: SyntaxNode) -> Option<Self> {
27379 if Self::can_cast(syntax.kind()) {
27380 Some(Self { syntax })
27381 } else {
27382 None
27383 }
27384 }
27385 #[inline]
27386 fn syntax(&self) -> &SyntaxNode {
27387 &self.syntax
27388 }
27389}
27390impl AstNode for TransformToFunc {
27391 #[inline]
27392 fn can_cast(kind: SyntaxKind) -> bool {
27393 kind == SyntaxKind::TRANSFORM_TO_FUNC
27394 }
27395 #[inline]
27396 fn cast(syntax: SyntaxNode) -> Option<Self> {
27397 if Self::can_cast(syntax.kind()) {
27398 Some(Self { syntax })
27399 } else {
27400 None
27401 }
27402 }
27403 #[inline]
27404 fn syntax(&self) -> &SyntaxNode {
27405 &self.syntax
27406 }
27407}
27408impl AstNode for TriggerEvent {
27409 #[inline]
27410 fn can_cast(kind: SyntaxKind) -> bool {
27411 kind == SyntaxKind::TRIGGER_EVENT
27412 }
27413 #[inline]
27414 fn cast(syntax: SyntaxNode) -> Option<Self> {
27415 if Self::can_cast(syntax.kind()) {
27416 Some(Self { syntax })
27417 } else {
27418 None
27419 }
27420 }
27421 #[inline]
27422 fn syntax(&self) -> &SyntaxNode {
27423 &self.syntax
27424 }
27425}
27426impl AstNode for TriggerEventList {
27427 #[inline]
27428 fn can_cast(kind: SyntaxKind) -> bool {
27429 kind == SyntaxKind::TRIGGER_EVENT_LIST
27430 }
27431 #[inline]
27432 fn cast(syntax: SyntaxNode) -> Option<Self> {
27433 if Self::can_cast(syntax.kind()) {
27434 Some(Self { syntax })
27435 } else {
27436 None
27437 }
27438 }
27439 #[inline]
27440 fn syntax(&self) -> &SyntaxNode {
27441 &self.syntax
27442 }
27443}
27444impl AstNode for TriggerEventUpdate {
27445 #[inline]
27446 fn can_cast(kind: SyntaxKind) -> bool {
27447 kind == SyntaxKind::TRIGGER_EVENT_UPDATE
27448 }
27449 #[inline]
27450 fn cast(syntax: SyntaxNode) -> Option<Self> {
27451 if Self::can_cast(syntax.kind()) {
27452 Some(Self { syntax })
27453 } else {
27454 None
27455 }
27456 }
27457 #[inline]
27458 fn syntax(&self) -> &SyntaxNode {
27459 &self.syntax
27460 }
27461}
27462impl AstNode for TrimFn {
27463 #[inline]
27464 fn can_cast(kind: SyntaxKind) -> bool {
27465 kind == SyntaxKind::TRIM_FN
27466 }
27467 #[inline]
27468 fn cast(syntax: SyntaxNode) -> Option<Self> {
27469 if Self::can_cast(syntax.kind()) {
27470 Some(Self { syntax })
27471 } else {
27472 None
27473 }
27474 }
27475 #[inline]
27476 fn syntax(&self) -> &SyntaxNode {
27477 &self.syntax
27478 }
27479}
27480impl AstNode for Truncate {
27481 #[inline]
27482 fn can_cast(kind: SyntaxKind) -> bool {
27483 kind == SyntaxKind::TRUNCATE
27484 }
27485 #[inline]
27486 fn cast(syntax: SyntaxNode) -> Option<Self> {
27487 if Self::can_cast(syntax.kind()) {
27488 Some(Self { syntax })
27489 } else {
27490 None
27491 }
27492 }
27493 #[inline]
27494 fn syntax(&self) -> &SyntaxNode {
27495 &self.syntax
27496 }
27497}
27498impl AstNode for TupleExpr {
27499 #[inline]
27500 fn can_cast(kind: SyntaxKind) -> bool {
27501 kind == SyntaxKind::TUPLE_EXPR
27502 }
27503 #[inline]
27504 fn cast(syntax: SyntaxNode) -> Option<Self> {
27505 if Self::can_cast(syntax.kind()) {
27506 Some(Self { syntax })
27507 } else {
27508 None
27509 }
27510 }
27511 #[inline]
27512 fn syntax(&self) -> &SyntaxNode {
27513 &self.syntax
27514 }
27515}
27516impl AstNode for UnicodeNormalForm {
27517 #[inline]
27518 fn can_cast(kind: SyntaxKind) -> bool {
27519 kind == SyntaxKind::UNICODE_NORMAL_FORM
27520 }
27521 #[inline]
27522 fn cast(syntax: SyntaxNode) -> Option<Self> {
27523 if Self::can_cast(syntax.kind()) {
27524 Some(Self { syntax })
27525 } else {
27526 None
27527 }
27528 }
27529 #[inline]
27530 fn syntax(&self) -> &SyntaxNode {
27531 &self.syntax
27532 }
27533}
27534impl AstNode for UniqueConstraint {
27535 #[inline]
27536 fn can_cast(kind: SyntaxKind) -> bool {
27537 kind == SyntaxKind::UNIQUE_CONSTRAINT
27538 }
27539 #[inline]
27540 fn cast(syntax: SyntaxNode) -> Option<Self> {
27541 if Self::can_cast(syntax.kind()) {
27542 Some(Self { syntax })
27543 } else {
27544 None
27545 }
27546 }
27547 #[inline]
27548 fn syntax(&self) -> &SyntaxNode {
27549 &self.syntax
27550 }
27551}
27552impl AstNode for Unlisten {
27553 #[inline]
27554 fn can_cast(kind: SyntaxKind) -> bool {
27555 kind == SyntaxKind::UNLISTEN
27556 }
27557 #[inline]
27558 fn cast(syntax: SyntaxNode) -> Option<Self> {
27559 if Self::can_cast(syntax.kind()) {
27560 Some(Self { syntax })
27561 } else {
27562 None
27563 }
27564 }
27565 #[inline]
27566 fn syntax(&self) -> &SyntaxNode {
27567 &self.syntax
27568 }
27569}
27570impl AstNode for Update {
27571 #[inline]
27572 fn can_cast(kind: SyntaxKind) -> bool {
27573 kind == SyntaxKind::UPDATE
27574 }
27575 #[inline]
27576 fn cast(syntax: SyntaxNode) -> Option<Self> {
27577 if Self::can_cast(syntax.kind()) {
27578 Some(Self { syntax })
27579 } else {
27580 None
27581 }
27582 }
27583 #[inline]
27584 fn syntax(&self) -> &SyntaxNode {
27585 &self.syntax
27586 }
27587}
27588impl AstNode for UsingClause {
27589 #[inline]
27590 fn can_cast(kind: SyntaxKind) -> bool {
27591 kind == SyntaxKind::USING_CLAUSE
27592 }
27593 #[inline]
27594 fn cast(syntax: SyntaxNode) -> Option<Self> {
27595 if Self::can_cast(syntax.kind()) {
27596 Some(Self { syntax })
27597 } else {
27598 None
27599 }
27600 }
27601 #[inline]
27602 fn syntax(&self) -> &SyntaxNode {
27603 &self.syntax
27604 }
27605}
27606impl AstNode for UsingIndex {
27607 #[inline]
27608 fn can_cast(kind: SyntaxKind) -> bool {
27609 kind == SyntaxKind::USING_INDEX
27610 }
27611 #[inline]
27612 fn cast(syntax: SyntaxNode) -> Option<Self> {
27613 if Self::can_cast(syntax.kind()) {
27614 Some(Self { syntax })
27615 } else {
27616 None
27617 }
27618 }
27619 #[inline]
27620 fn syntax(&self) -> &SyntaxNode {
27621 &self.syntax
27622 }
27623}
27624impl AstNode for UsingMethod {
27625 #[inline]
27626 fn can_cast(kind: SyntaxKind) -> bool {
27627 kind == SyntaxKind::USING_METHOD
27628 }
27629 #[inline]
27630 fn cast(syntax: SyntaxNode) -> Option<Self> {
27631 if Self::can_cast(syntax.kind()) {
27632 Some(Self { syntax })
27633 } else {
27634 None
27635 }
27636 }
27637 #[inline]
27638 fn syntax(&self) -> &SyntaxNode {
27639 &self.syntax
27640 }
27641}
27642impl AstNode for UsingOnClause {
27643 #[inline]
27644 fn can_cast(kind: SyntaxKind) -> bool {
27645 kind == SyntaxKind::USING_ON_CLAUSE
27646 }
27647 #[inline]
27648 fn cast(syntax: SyntaxNode) -> Option<Self> {
27649 if Self::can_cast(syntax.kind()) {
27650 Some(Self { syntax })
27651 } else {
27652 None
27653 }
27654 }
27655 #[inline]
27656 fn syntax(&self) -> &SyntaxNode {
27657 &self.syntax
27658 }
27659}
27660impl AstNode for Vacuum {
27661 #[inline]
27662 fn can_cast(kind: SyntaxKind) -> bool {
27663 kind == SyntaxKind::VACUUM
27664 }
27665 #[inline]
27666 fn cast(syntax: SyntaxNode) -> Option<Self> {
27667 if Self::can_cast(syntax.kind()) {
27668 Some(Self { syntax })
27669 } else {
27670 None
27671 }
27672 }
27673 #[inline]
27674 fn syntax(&self) -> &SyntaxNode {
27675 &self.syntax
27676 }
27677}
27678impl AstNode for VacuumOption {
27679 #[inline]
27680 fn can_cast(kind: SyntaxKind) -> bool {
27681 kind == SyntaxKind::VACUUM_OPTION
27682 }
27683 #[inline]
27684 fn cast(syntax: SyntaxNode) -> Option<Self> {
27685 if Self::can_cast(syntax.kind()) {
27686 Some(Self { syntax })
27687 } else {
27688 None
27689 }
27690 }
27691 #[inline]
27692 fn syntax(&self) -> &SyntaxNode {
27693 &self.syntax
27694 }
27695}
27696impl AstNode for VacuumOptionList {
27697 #[inline]
27698 fn can_cast(kind: SyntaxKind) -> bool {
27699 kind == SyntaxKind::VACUUM_OPTION_LIST
27700 }
27701 #[inline]
27702 fn cast(syntax: SyntaxNode) -> Option<Self> {
27703 if Self::can_cast(syntax.kind()) {
27704 Some(Self { syntax })
27705 } else {
27706 None
27707 }
27708 }
27709 #[inline]
27710 fn syntax(&self) -> &SyntaxNode {
27711 &self.syntax
27712 }
27713}
27714impl AstNode for ValidateConstraint {
27715 #[inline]
27716 fn can_cast(kind: SyntaxKind) -> bool {
27717 kind == SyntaxKind::VALIDATE_CONSTRAINT
27718 }
27719 #[inline]
27720 fn cast(syntax: SyntaxNode) -> Option<Self> {
27721 if Self::can_cast(syntax.kind()) {
27722 Some(Self { syntax })
27723 } else {
27724 None
27725 }
27726 }
27727 #[inline]
27728 fn syntax(&self) -> &SyntaxNode {
27729 &self.syntax
27730 }
27731}
27732impl AstNode for Values {
27733 #[inline]
27734 fn can_cast(kind: SyntaxKind) -> bool {
27735 kind == SyntaxKind::VALUES
27736 }
27737 #[inline]
27738 fn cast(syntax: SyntaxNode) -> Option<Self> {
27739 if Self::can_cast(syntax.kind()) {
27740 Some(Self { syntax })
27741 } else {
27742 None
27743 }
27744 }
27745 #[inline]
27746 fn syntax(&self) -> &SyntaxNode {
27747 &self.syntax
27748 }
27749}
27750impl AstNode for Variant {
27751 #[inline]
27752 fn can_cast(kind: SyntaxKind) -> bool {
27753 kind == SyntaxKind::VARIANT
27754 }
27755 #[inline]
27756 fn cast(syntax: SyntaxNode) -> Option<Self> {
27757 if Self::can_cast(syntax.kind()) {
27758 Some(Self { syntax })
27759 } else {
27760 None
27761 }
27762 }
27763 #[inline]
27764 fn syntax(&self) -> &SyntaxNode {
27765 &self.syntax
27766 }
27767}
27768impl AstNode for VariantList {
27769 #[inline]
27770 fn can_cast(kind: SyntaxKind) -> bool {
27771 kind == SyntaxKind::VARIANT_LIST
27772 }
27773 #[inline]
27774 fn cast(syntax: SyntaxNode) -> Option<Self> {
27775 if Self::can_cast(syntax.kind()) {
27776 Some(Self { syntax })
27777 } else {
27778 None
27779 }
27780 }
27781 #[inline]
27782 fn syntax(&self) -> &SyntaxNode {
27783 &self.syntax
27784 }
27785}
27786impl AstNode for VolatilityFuncOption {
27787 #[inline]
27788 fn can_cast(kind: SyntaxKind) -> bool {
27789 kind == SyntaxKind::VOLATILITY_FUNC_OPTION
27790 }
27791 #[inline]
27792 fn cast(syntax: SyntaxNode) -> Option<Self> {
27793 if Self::can_cast(syntax.kind()) {
27794 Some(Self { syntax })
27795 } else {
27796 None
27797 }
27798 }
27799 #[inline]
27800 fn syntax(&self) -> &SyntaxNode {
27801 &self.syntax
27802 }
27803}
27804impl AstNode for WhenClause {
27805 #[inline]
27806 fn can_cast(kind: SyntaxKind) -> bool {
27807 kind == SyntaxKind::WHEN_CLAUSE
27808 }
27809 #[inline]
27810 fn cast(syntax: SyntaxNode) -> Option<Self> {
27811 if Self::can_cast(syntax.kind()) {
27812 Some(Self { syntax })
27813 } else {
27814 None
27815 }
27816 }
27817 #[inline]
27818 fn syntax(&self) -> &SyntaxNode {
27819 &self.syntax
27820 }
27821}
27822impl AstNode for WhenClauseList {
27823 #[inline]
27824 fn can_cast(kind: SyntaxKind) -> bool {
27825 kind == SyntaxKind::WHEN_CLAUSE_LIST
27826 }
27827 #[inline]
27828 fn cast(syntax: SyntaxNode) -> Option<Self> {
27829 if Self::can_cast(syntax.kind()) {
27830 Some(Self { syntax })
27831 } else {
27832 None
27833 }
27834 }
27835 #[inline]
27836 fn syntax(&self) -> &SyntaxNode {
27837 &self.syntax
27838 }
27839}
27840impl AstNode for WhenCondition {
27841 #[inline]
27842 fn can_cast(kind: SyntaxKind) -> bool {
27843 kind == SyntaxKind::WHEN_CONDITION
27844 }
27845 #[inline]
27846 fn cast(syntax: SyntaxNode) -> Option<Self> {
27847 if Self::can_cast(syntax.kind()) {
27848 Some(Self { syntax })
27849 } else {
27850 None
27851 }
27852 }
27853 #[inline]
27854 fn syntax(&self) -> &SyntaxNode {
27855 &self.syntax
27856 }
27857}
27858impl AstNode for WhereClause {
27859 #[inline]
27860 fn can_cast(kind: SyntaxKind) -> bool {
27861 kind == SyntaxKind::WHERE_CLAUSE
27862 }
27863 #[inline]
27864 fn cast(syntax: SyntaxNode) -> Option<Self> {
27865 if Self::can_cast(syntax.kind()) {
27866 Some(Self { syntax })
27867 } else {
27868 None
27869 }
27870 }
27871 #[inline]
27872 fn syntax(&self) -> &SyntaxNode {
27873 &self.syntax
27874 }
27875}
27876impl AstNode for WhereConditionClause {
27877 #[inline]
27878 fn can_cast(kind: SyntaxKind) -> bool {
27879 kind == SyntaxKind::WHERE_CONDITION_CLAUSE
27880 }
27881 #[inline]
27882 fn cast(syntax: SyntaxNode) -> Option<Self> {
27883 if Self::can_cast(syntax.kind()) {
27884 Some(Self { syntax })
27885 } else {
27886 None
27887 }
27888 }
27889 #[inline]
27890 fn syntax(&self) -> &SyntaxNode {
27891 &self.syntax
27892 }
27893}
27894impl AstNode for WhereCurrentOf {
27895 #[inline]
27896 fn can_cast(kind: SyntaxKind) -> bool {
27897 kind == SyntaxKind::WHERE_CURRENT_OF
27898 }
27899 #[inline]
27900 fn cast(syntax: SyntaxNode) -> Option<Self> {
27901 if Self::can_cast(syntax.kind()) {
27902 Some(Self { syntax })
27903 } else {
27904 None
27905 }
27906 }
27907 #[inline]
27908 fn syntax(&self) -> &SyntaxNode {
27909 &self.syntax
27910 }
27911}
27912impl AstNode for WindowClause {
27913 #[inline]
27914 fn can_cast(kind: SyntaxKind) -> bool {
27915 kind == SyntaxKind::WINDOW_CLAUSE
27916 }
27917 #[inline]
27918 fn cast(syntax: SyntaxNode) -> Option<Self> {
27919 if Self::can_cast(syntax.kind()) {
27920 Some(Self { syntax })
27921 } else {
27922 None
27923 }
27924 }
27925 #[inline]
27926 fn syntax(&self) -> &SyntaxNode {
27927 &self.syntax
27928 }
27929}
27930impl AstNode for WindowDef {
27931 #[inline]
27932 fn can_cast(kind: SyntaxKind) -> bool {
27933 kind == SyntaxKind::WINDOW_DEF
27934 }
27935 #[inline]
27936 fn cast(syntax: SyntaxNode) -> Option<Self> {
27937 if Self::can_cast(syntax.kind()) {
27938 Some(Self { syntax })
27939 } else {
27940 None
27941 }
27942 }
27943 #[inline]
27944 fn syntax(&self) -> &SyntaxNode {
27945 &self.syntax
27946 }
27947}
27948impl AstNode for WindowFuncOption {
27949 #[inline]
27950 fn can_cast(kind: SyntaxKind) -> bool {
27951 kind == SyntaxKind::WINDOW_FUNC_OPTION
27952 }
27953 #[inline]
27954 fn cast(syntax: SyntaxNode) -> Option<Self> {
27955 if Self::can_cast(syntax.kind()) {
27956 Some(Self { syntax })
27957 } else {
27958 None
27959 }
27960 }
27961 #[inline]
27962 fn syntax(&self) -> &SyntaxNode {
27963 &self.syntax
27964 }
27965}
27966impl AstNode for WindowSpec {
27967 #[inline]
27968 fn can_cast(kind: SyntaxKind) -> bool {
27969 kind == SyntaxKind::WINDOW_SPEC
27970 }
27971 #[inline]
27972 fn cast(syntax: SyntaxNode) -> Option<Self> {
27973 if Self::can_cast(syntax.kind()) {
27974 Some(Self { syntax })
27975 } else {
27976 None
27977 }
27978 }
27979 #[inline]
27980 fn syntax(&self) -> &SyntaxNode {
27981 &self.syntax
27982 }
27983}
27984impl AstNode for WithClause {
27985 #[inline]
27986 fn can_cast(kind: SyntaxKind) -> bool {
27987 kind == SyntaxKind::WITH_CLAUSE
27988 }
27989 #[inline]
27990 fn cast(syntax: SyntaxNode) -> Option<Self> {
27991 if Self::can_cast(syntax.kind()) {
27992 Some(Self { syntax })
27993 } else {
27994 None
27995 }
27996 }
27997 #[inline]
27998 fn syntax(&self) -> &SyntaxNode {
27999 &self.syntax
28000 }
28001}
28002impl AstNode for WithData {
28003 #[inline]
28004 fn can_cast(kind: SyntaxKind) -> bool {
28005 kind == SyntaxKind::WITH_DATA
28006 }
28007 #[inline]
28008 fn cast(syntax: SyntaxNode) -> Option<Self> {
28009 if Self::can_cast(syntax.kind()) {
28010 Some(Self { syntax })
28011 } else {
28012 None
28013 }
28014 }
28015 #[inline]
28016 fn syntax(&self) -> &SyntaxNode {
28017 &self.syntax
28018 }
28019}
28020impl AstNode for WithNoData {
28021 #[inline]
28022 fn can_cast(kind: SyntaxKind) -> bool {
28023 kind == SyntaxKind::WITH_NO_DATA
28024 }
28025 #[inline]
28026 fn cast(syntax: SyntaxNode) -> Option<Self> {
28027 if Self::can_cast(syntax.kind()) {
28028 Some(Self { syntax })
28029 } else {
28030 None
28031 }
28032 }
28033 #[inline]
28034 fn syntax(&self) -> &SyntaxNode {
28035 &self.syntax
28036 }
28037}
28038impl AstNode for WithOptions {
28039 #[inline]
28040 fn can_cast(kind: SyntaxKind) -> bool {
28041 kind == SyntaxKind::WITH_OPTIONS
28042 }
28043 #[inline]
28044 fn cast(syntax: SyntaxNode) -> Option<Self> {
28045 if Self::can_cast(syntax.kind()) {
28046 Some(Self { syntax })
28047 } else {
28048 None
28049 }
28050 }
28051 #[inline]
28052 fn syntax(&self) -> &SyntaxNode {
28053 &self.syntax
28054 }
28055}
28056impl AstNode for WithParams {
28057 #[inline]
28058 fn can_cast(kind: SyntaxKind) -> bool {
28059 kind == SyntaxKind::WITH_PARAMS
28060 }
28061 #[inline]
28062 fn cast(syntax: SyntaxNode) -> Option<Self> {
28063 if Self::can_cast(syntax.kind()) {
28064 Some(Self { syntax })
28065 } else {
28066 None
28067 }
28068 }
28069 #[inline]
28070 fn syntax(&self) -> &SyntaxNode {
28071 &self.syntax
28072 }
28073}
28074impl AstNode for WithTable {
28075 #[inline]
28076 fn can_cast(kind: SyntaxKind) -> bool {
28077 kind == SyntaxKind::WITH_TABLE
28078 }
28079 #[inline]
28080 fn cast(syntax: SyntaxNode) -> Option<Self> {
28081 if Self::can_cast(syntax.kind()) {
28082 Some(Self { syntax })
28083 } else {
28084 None
28085 }
28086 }
28087 #[inline]
28088 fn syntax(&self) -> &SyntaxNode {
28089 &self.syntax
28090 }
28091}
28092impl AstNode for WithTimezone {
28093 #[inline]
28094 fn can_cast(kind: SyntaxKind) -> bool {
28095 kind == SyntaxKind::WITH_TIMEZONE
28096 }
28097 #[inline]
28098 fn cast(syntax: SyntaxNode) -> Option<Self> {
28099 if Self::can_cast(syntax.kind()) {
28100 Some(Self { syntax })
28101 } else {
28102 None
28103 }
28104 }
28105 #[inline]
28106 fn syntax(&self) -> &SyntaxNode {
28107 &self.syntax
28108 }
28109}
28110impl AstNode for WithinClause {
28111 #[inline]
28112 fn can_cast(kind: SyntaxKind) -> bool {
28113 kind == SyntaxKind::WITHIN_CLAUSE
28114 }
28115 #[inline]
28116 fn cast(syntax: SyntaxNode) -> Option<Self> {
28117 if Self::can_cast(syntax.kind()) {
28118 Some(Self { syntax })
28119 } else {
28120 None
28121 }
28122 }
28123 #[inline]
28124 fn syntax(&self) -> &SyntaxNode {
28125 &self.syntax
28126 }
28127}
28128impl AstNode for WithoutOids {
28129 #[inline]
28130 fn can_cast(kind: SyntaxKind) -> bool {
28131 kind == SyntaxKind::WITHOUT_OIDS
28132 }
28133 #[inline]
28134 fn cast(syntax: SyntaxNode) -> Option<Self> {
28135 if Self::can_cast(syntax.kind()) {
28136 Some(Self { syntax })
28137 } else {
28138 None
28139 }
28140 }
28141 #[inline]
28142 fn syntax(&self) -> &SyntaxNode {
28143 &self.syntax
28144 }
28145}
28146impl AstNode for WithoutTimezone {
28147 #[inline]
28148 fn can_cast(kind: SyntaxKind) -> bool {
28149 kind == SyntaxKind::WITHOUT_TIMEZONE
28150 }
28151 #[inline]
28152 fn cast(syntax: SyntaxNode) -> Option<Self> {
28153 if Self::can_cast(syntax.kind()) {
28154 Some(Self { syntax })
28155 } else {
28156 None
28157 }
28158 }
28159 #[inline]
28160 fn syntax(&self) -> &SyntaxNode {
28161 &self.syntax
28162 }
28163}
28164impl AstNode for XmlAttributeList {
28165 #[inline]
28166 fn can_cast(kind: SyntaxKind) -> bool {
28167 kind == SyntaxKind::XML_ATTRIBUTE_LIST
28168 }
28169 #[inline]
28170 fn cast(syntax: SyntaxNode) -> Option<Self> {
28171 if Self::can_cast(syntax.kind()) {
28172 Some(Self { syntax })
28173 } else {
28174 None
28175 }
28176 }
28177 #[inline]
28178 fn syntax(&self) -> &SyntaxNode {
28179 &self.syntax
28180 }
28181}
28182impl AstNode for XmlColumnOption {
28183 #[inline]
28184 fn can_cast(kind: SyntaxKind) -> bool {
28185 kind == SyntaxKind::XML_COLUMN_OPTION
28186 }
28187 #[inline]
28188 fn cast(syntax: SyntaxNode) -> Option<Self> {
28189 if Self::can_cast(syntax.kind()) {
28190 Some(Self { syntax })
28191 } else {
28192 None
28193 }
28194 }
28195 #[inline]
28196 fn syntax(&self) -> &SyntaxNode {
28197 &self.syntax
28198 }
28199}
28200impl AstNode for XmlColumnOptionList {
28201 #[inline]
28202 fn can_cast(kind: SyntaxKind) -> bool {
28203 kind == SyntaxKind::XML_COLUMN_OPTION_LIST
28204 }
28205 #[inline]
28206 fn cast(syntax: SyntaxNode) -> Option<Self> {
28207 if Self::can_cast(syntax.kind()) {
28208 Some(Self { syntax })
28209 } else {
28210 None
28211 }
28212 }
28213 #[inline]
28214 fn syntax(&self) -> &SyntaxNode {
28215 &self.syntax
28216 }
28217}
28218impl AstNode for XmlElementFn {
28219 #[inline]
28220 fn can_cast(kind: SyntaxKind) -> bool {
28221 kind == SyntaxKind::XML_ELEMENT_FN
28222 }
28223 #[inline]
28224 fn cast(syntax: SyntaxNode) -> Option<Self> {
28225 if Self::can_cast(syntax.kind()) {
28226 Some(Self { syntax })
28227 } else {
28228 None
28229 }
28230 }
28231 #[inline]
28232 fn syntax(&self) -> &SyntaxNode {
28233 &self.syntax
28234 }
28235}
28236impl AstNode for XmlExistsFn {
28237 #[inline]
28238 fn can_cast(kind: SyntaxKind) -> bool {
28239 kind == SyntaxKind::XML_EXISTS_FN
28240 }
28241 #[inline]
28242 fn cast(syntax: SyntaxNode) -> Option<Self> {
28243 if Self::can_cast(syntax.kind()) {
28244 Some(Self { syntax })
28245 } else {
28246 None
28247 }
28248 }
28249 #[inline]
28250 fn syntax(&self) -> &SyntaxNode {
28251 &self.syntax
28252 }
28253}
28254impl AstNode for XmlForestFn {
28255 #[inline]
28256 fn can_cast(kind: SyntaxKind) -> bool {
28257 kind == SyntaxKind::XML_FOREST_FN
28258 }
28259 #[inline]
28260 fn cast(syntax: SyntaxNode) -> Option<Self> {
28261 if Self::can_cast(syntax.kind()) {
28262 Some(Self { syntax })
28263 } else {
28264 None
28265 }
28266 }
28267 #[inline]
28268 fn syntax(&self) -> &SyntaxNode {
28269 &self.syntax
28270 }
28271}
28272impl AstNode for XmlNamespace {
28273 #[inline]
28274 fn can_cast(kind: SyntaxKind) -> bool {
28275 kind == SyntaxKind::XML_NAMESPACE
28276 }
28277 #[inline]
28278 fn cast(syntax: SyntaxNode) -> Option<Self> {
28279 if Self::can_cast(syntax.kind()) {
28280 Some(Self { syntax })
28281 } else {
28282 None
28283 }
28284 }
28285 #[inline]
28286 fn syntax(&self) -> &SyntaxNode {
28287 &self.syntax
28288 }
28289}
28290impl AstNode for XmlNamespaceList {
28291 #[inline]
28292 fn can_cast(kind: SyntaxKind) -> bool {
28293 kind == SyntaxKind::XML_NAMESPACE_LIST
28294 }
28295 #[inline]
28296 fn cast(syntax: SyntaxNode) -> Option<Self> {
28297 if Self::can_cast(syntax.kind()) {
28298 Some(Self { syntax })
28299 } else {
28300 None
28301 }
28302 }
28303 #[inline]
28304 fn syntax(&self) -> &SyntaxNode {
28305 &self.syntax
28306 }
28307}
28308impl AstNode for XmlParseFn {
28309 #[inline]
28310 fn can_cast(kind: SyntaxKind) -> bool {
28311 kind == SyntaxKind::XML_PARSE_FN
28312 }
28313 #[inline]
28314 fn cast(syntax: SyntaxNode) -> Option<Self> {
28315 if Self::can_cast(syntax.kind()) {
28316 Some(Self { syntax })
28317 } else {
28318 None
28319 }
28320 }
28321 #[inline]
28322 fn syntax(&self) -> &SyntaxNode {
28323 &self.syntax
28324 }
28325}
28326impl AstNode for XmlPassingMech {
28327 #[inline]
28328 fn can_cast(kind: SyntaxKind) -> bool {
28329 kind == SyntaxKind::XML_PASSING_MECH
28330 }
28331 #[inline]
28332 fn cast(syntax: SyntaxNode) -> Option<Self> {
28333 if Self::can_cast(syntax.kind()) {
28334 Some(Self { syntax })
28335 } else {
28336 None
28337 }
28338 }
28339 #[inline]
28340 fn syntax(&self) -> &SyntaxNode {
28341 &self.syntax
28342 }
28343}
28344impl AstNode for XmlPiFn {
28345 #[inline]
28346 fn can_cast(kind: SyntaxKind) -> bool {
28347 kind == SyntaxKind::XML_PI_FN
28348 }
28349 #[inline]
28350 fn cast(syntax: SyntaxNode) -> Option<Self> {
28351 if Self::can_cast(syntax.kind()) {
28352 Some(Self { syntax })
28353 } else {
28354 None
28355 }
28356 }
28357 #[inline]
28358 fn syntax(&self) -> &SyntaxNode {
28359 &self.syntax
28360 }
28361}
28362impl AstNode for XmlRootFn {
28363 #[inline]
28364 fn can_cast(kind: SyntaxKind) -> bool {
28365 kind == SyntaxKind::XML_ROOT_FN
28366 }
28367 #[inline]
28368 fn cast(syntax: SyntaxNode) -> Option<Self> {
28369 if Self::can_cast(syntax.kind()) {
28370 Some(Self { syntax })
28371 } else {
28372 None
28373 }
28374 }
28375 #[inline]
28376 fn syntax(&self) -> &SyntaxNode {
28377 &self.syntax
28378 }
28379}
28380impl AstNode for XmlRowPassingClause {
28381 #[inline]
28382 fn can_cast(kind: SyntaxKind) -> bool {
28383 kind == SyntaxKind::XML_ROW_PASSING_CLAUSE
28384 }
28385 #[inline]
28386 fn cast(syntax: SyntaxNode) -> Option<Self> {
28387 if Self::can_cast(syntax.kind()) {
28388 Some(Self { syntax })
28389 } else {
28390 None
28391 }
28392 }
28393 #[inline]
28394 fn syntax(&self) -> &SyntaxNode {
28395 &self.syntax
28396 }
28397}
28398impl AstNode for XmlSerializeFn {
28399 #[inline]
28400 fn can_cast(kind: SyntaxKind) -> bool {
28401 kind == SyntaxKind::XML_SERIALIZE_FN
28402 }
28403 #[inline]
28404 fn cast(syntax: SyntaxNode) -> Option<Self> {
28405 if Self::can_cast(syntax.kind()) {
28406 Some(Self { syntax })
28407 } else {
28408 None
28409 }
28410 }
28411 #[inline]
28412 fn syntax(&self) -> &SyntaxNode {
28413 &self.syntax
28414 }
28415}
28416impl AstNode for XmlTable {
28417 #[inline]
28418 fn can_cast(kind: SyntaxKind) -> bool {
28419 kind == SyntaxKind::XML_TABLE
28420 }
28421 #[inline]
28422 fn cast(syntax: SyntaxNode) -> Option<Self> {
28423 if Self::can_cast(syntax.kind()) {
28424 Some(Self { syntax })
28425 } else {
28426 None
28427 }
28428 }
28429 #[inline]
28430 fn syntax(&self) -> &SyntaxNode {
28431 &self.syntax
28432 }
28433}
28434impl AstNode for XmlTableColumn {
28435 #[inline]
28436 fn can_cast(kind: SyntaxKind) -> bool {
28437 kind == SyntaxKind::XML_TABLE_COLUMN
28438 }
28439 #[inline]
28440 fn cast(syntax: SyntaxNode) -> Option<Self> {
28441 if Self::can_cast(syntax.kind()) {
28442 Some(Self { syntax })
28443 } else {
28444 None
28445 }
28446 }
28447 #[inline]
28448 fn syntax(&self) -> &SyntaxNode {
28449 &self.syntax
28450 }
28451}
28452impl AstNode for XmlTableColumnList {
28453 #[inline]
28454 fn can_cast(kind: SyntaxKind) -> bool {
28455 kind == SyntaxKind::XML_TABLE_COLUMN_LIST
28456 }
28457 #[inline]
28458 fn cast(syntax: SyntaxNode) -> Option<Self> {
28459 if Self::can_cast(syntax.kind()) {
28460 Some(Self { syntax })
28461 } else {
28462 None
28463 }
28464 }
28465 #[inline]
28466 fn syntax(&self) -> &SyntaxNode {
28467 &self.syntax
28468 }
28469}
28470impl AstNode for AlterColumnOption {
28471 #[inline]
28472 fn can_cast(kind: SyntaxKind) -> bool {
28473 matches!(
28474 kind,
28475 SyntaxKind::ADD_GENERATED
28476 | SyntaxKind::DROP_DEFAULT
28477 | SyntaxKind::DROP_EXPRESSION
28478 | SyntaxKind::DROP_IDENTITY
28479 | SyntaxKind::DROP_NOT_NULL
28480 | SyntaxKind::RESET_OPTIONS
28481 | SyntaxKind::RESTART
28482 | SyntaxKind::SET_COMPRESSION
28483 | SyntaxKind::SET_DEFAULT
28484 | SyntaxKind::SET_EXPRESSION
28485 | SyntaxKind::SET_GENERATED
28486 | SyntaxKind::SET_GENERATED_OPTIONS
28487 | SyntaxKind::SET_NOT_NULL
28488 | SyntaxKind::SET_OPTIONS
28489 | SyntaxKind::SET_OPTIONS_LIST
28490 | SyntaxKind::SET_SEQUENCE_OPTION
28491 | SyntaxKind::SET_STATISTICS
28492 | SyntaxKind::SET_STORAGE
28493 | SyntaxKind::SET_TYPE
28494 )
28495 }
28496 #[inline]
28497 fn cast(syntax: SyntaxNode) -> Option<Self> {
28498 let res = match syntax.kind() {
28499 SyntaxKind::ADD_GENERATED => AlterColumnOption::AddGenerated(AddGenerated { syntax }),
28500 SyntaxKind::DROP_DEFAULT => AlterColumnOption::DropDefault(DropDefault { syntax }),
28501 SyntaxKind::DROP_EXPRESSION => {
28502 AlterColumnOption::DropExpression(DropExpression { syntax })
28503 }
28504 SyntaxKind::DROP_IDENTITY => AlterColumnOption::DropIdentity(DropIdentity { syntax }),
28505 SyntaxKind::DROP_NOT_NULL => AlterColumnOption::DropNotNull(DropNotNull { syntax }),
28506 SyntaxKind::RESET_OPTIONS => AlterColumnOption::ResetOptions(ResetOptions { syntax }),
28507 SyntaxKind::RESTART => AlterColumnOption::Restart(Restart { syntax }),
28508 SyntaxKind::SET_COMPRESSION => {
28509 AlterColumnOption::SetCompression(SetCompression { syntax })
28510 }
28511 SyntaxKind::SET_DEFAULT => AlterColumnOption::SetDefault(SetDefault { syntax }),
28512 SyntaxKind::SET_EXPRESSION => {
28513 AlterColumnOption::SetExpression(SetExpression { syntax })
28514 }
28515 SyntaxKind::SET_GENERATED => AlterColumnOption::SetGenerated(SetGenerated { syntax }),
28516 SyntaxKind::SET_GENERATED_OPTIONS => {
28517 AlterColumnOption::SetGeneratedOptions(SetGeneratedOptions { syntax })
28518 }
28519 SyntaxKind::SET_NOT_NULL => AlterColumnOption::SetNotNull(SetNotNull { syntax }),
28520 SyntaxKind::SET_OPTIONS => AlterColumnOption::SetOptions(SetOptions { syntax }),
28521 SyntaxKind::SET_OPTIONS_LIST => {
28522 AlterColumnOption::SetOptionsList(SetOptionsList { syntax })
28523 }
28524 SyntaxKind::SET_SEQUENCE_OPTION => {
28525 AlterColumnOption::SetSequenceOption(SetSequenceOption { syntax })
28526 }
28527 SyntaxKind::SET_STATISTICS => {
28528 AlterColumnOption::SetStatistics(SetStatistics { syntax })
28529 }
28530 SyntaxKind::SET_STORAGE => AlterColumnOption::SetStorage(SetStorage { syntax }),
28531 SyntaxKind::SET_TYPE => AlterColumnOption::SetType(SetType { syntax }),
28532 _ => {
28533 return None;
28534 }
28535 };
28536 Some(res)
28537 }
28538 #[inline]
28539 fn syntax(&self) -> &SyntaxNode {
28540 match self {
28541 AlterColumnOption::AddGenerated(it) => &it.syntax,
28542 AlterColumnOption::DropDefault(it) => &it.syntax,
28543 AlterColumnOption::DropExpression(it) => &it.syntax,
28544 AlterColumnOption::DropIdentity(it) => &it.syntax,
28545 AlterColumnOption::DropNotNull(it) => &it.syntax,
28546 AlterColumnOption::ResetOptions(it) => &it.syntax,
28547 AlterColumnOption::Restart(it) => &it.syntax,
28548 AlterColumnOption::SetCompression(it) => &it.syntax,
28549 AlterColumnOption::SetDefault(it) => &it.syntax,
28550 AlterColumnOption::SetExpression(it) => &it.syntax,
28551 AlterColumnOption::SetGenerated(it) => &it.syntax,
28552 AlterColumnOption::SetGeneratedOptions(it) => &it.syntax,
28553 AlterColumnOption::SetNotNull(it) => &it.syntax,
28554 AlterColumnOption::SetOptions(it) => &it.syntax,
28555 AlterColumnOption::SetOptionsList(it) => &it.syntax,
28556 AlterColumnOption::SetSequenceOption(it) => &it.syntax,
28557 AlterColumnOption::SetStatistics(it) => &it.syntax,
28558 AlterColumnOption::SetStorage(it) => &it.syntax,
28559 AlterColumnOption::SetType(it) => &it.syntax,
28560 }
28561 }
28562}
28563impl From<AddGenerated> for AlterColumnOption {
28564 #[inline]
28565 fn from(node: AddGenerated) -> AlterColumnOption {
28566 AlterColumnOption::AddGenerated(node)
28567 }
28568}
28569impl From<DropDefault> for AlterColumnOption {
28570 #[inline]
28571 fn from(node: DropDefault) -> AlterColumnOption {
28572 AlterColumnOption::DropDefault(node)
28573 }
28574}
28575impl From<DropExpression> for AlterColumnOption {
28576 #[inline]
28577 fn from(node: DropExpression) -> AlterColumnOption {
28578 AlterColumnOption::DropExpression(node)
28579 }
28580}
28581impl From<DropIdentity> for AlterColumnOption {
28582 #[inline]
28583 fn from(node: DropIdentity) -> AlterColumnOption {
28584 AlterColumnOption::DropIdentity(node)
28585 }
28586}
28587impl From<DropNotNull> for AlterColumnOption {
28588 #[inline]
28589 fn from(node: DropNotNull) -> AlterColumnOption {
28590 AlterColumnOption::DropNotNull(node)
28591 }
28592}
28593impl From<ResetOptions> for AlterColumnOption {
28594 #[inline]
28595 fn from(node: ResetOptions) -> AlterColumnOption {
28596 AlterColumnOption::ResetOptions(node)
28597 }
28598}
28599impl From<Restart> for AlterColumnOption {
28600 #[inline]
28601 fn from(node: Restart) -> AlterColumnOption {
28602 AlterColumnOption::Restart(node)
28603 }
28604}
28605impl From<SetCompression> for AlterColumnOption {
28606 #[inline]
28607 fn from(node: SetCompression) -> AlterColumnOption {
28608 AlterColumnOption::SetCompression(node)
28609 }
28610}
28611impl From<SetDefault> for AlterColumnOption {
28612 #[inline]
28613 fn from(node: SetDefault) -> AlterColumnOption {
28614 AlterColumnOption::SetDefault(node)
28615 }
28616}
28617impl From<SetExpression> for AlterColumnOption {
28618 #[inline]
28619 fn from(node: SetExpression) -> AlterColumnOption {
28620 AlterColumnOption::SetExpression(node)
28621 }
28622}
28623impl From<SetGenerated> for AlterColumnOption {
28624 #[inline]
28625 fn from(node: SetGenerated) -> AlterColumnOption {
28626 AlterColumnOption::SetGenerated(node)
28627 }
28628}
28629impl From<SetGeneratedOptions> for AlterColumnOption {
28630 #[inline]
28631 fn from(node: SetGeneratedOptions) -> AlterColumnOption {
28632 AlterColumnOption::SetGeneratedOptions(node)
28633 }
28634}
28635impl From<SetNotNull> for AlterColumnOption {
28636 #[inline]
28637 fn from(node: SetNotNull) -> AlterColumnOption {
28638 AlterColumnOption::SetNotNull(node)
28639 }
28640}
28641impl From<SetOptions> for AlterColumnOption {
28642 #[inline]
28643 fn from(node: SetOptions) -> AlterColumnOption {
28644 AlterColumnOption::SetOptions(node)
28645 }
28646}
28647impl From<SetOptionsList> for AlterColumnOption {
28648 #[inline]
28649 fn from(node: SetOptionsList) -> AlterColumnOption {
28650 AlterColumnOption::SetOptionsList(node)
28651 }
28652}
28653impl From<SetSequenceOption> for AlterColumnOption {
28654 #[inline]
28655 fn from(node: SetSequenceOption) -> AlterColumnOption {
28656 AlterColumnOption::SetSequenceOption(node)
28657 }
28658}
28659impl From<SetStatistics> for AlterColumnOption {
28660 #[inline]
28661 fn from(node: SetStatistics) -> AlterColumnOption {
28662 AlterColumnOption::SetStatistics(node)
28663 }
28664}
28665impl From<SetStorage> for AlterColumnOption {
28666 #[inline]
28667 fn from(node: SetStorage) -> AlterColumnOption {
28668 AlterColumnOption::SetStorage(node)
28669 }
28670}
28671impl From<SetType> for AlterColumnOption {
28672 #[inline]
28673 fn from(node: SetType) -> AlterColumnOption {
28674 AlterColumnOption::SetType(node)
28675 }
28676}
28677impl AstNode for AlterDomainAction {
28678 #[inline]
28679 fn can_cast(kind: SyntaxKind) -> bool {
28680 matches!(
28681 kind,
28682 SyntaxKind::ADD_CONSTRAINT
28683 | SyntaxKind::DROP_CONSTRAINT
28684 | SyntaxKind::DROP_DEFAULT
28685 | SyntaxKind::DROP_NOT_NULL
28686 | SyntaxKind::OWNER_TO
28687 | SyntaxKind::RENAME_CONSTRAINT
28688 | SyntaxKind::RENAME_TO
28689 | SyntaxKind::SET_DEFAULT
28690 | SyntaxKind::SET_NOT_NULL
28691 | SyntaxKind::SET_SCHEMA
28692 | SyntaxKind::VALIDATE_CONSTRAINT
28693 )
28694 }
28695 #[inline]
28696 fn cast(syntax: SyntaxNode) -> Option<Self> {
28697 let res = match syntax.kind() {
28698 SyntaxKind::ADD_CONSTRAINT => {
28699 AlterDomainAction::AddConstraint(AddConstraint { syntax })
28700 }
28701 SyntaxKind::DROP_CONSTRAINT => {
28702 AlterDomainAction::DropConstraint(DropConstraint { syntax })
28703 }
28704 SyntaxKind::DROP_DEFAULT => AlterDomainAction::DropDefault(DropDefault { syntax }),
28705 SyntaxKind::DROP_NOT_NULL => AlterDomainAction::DropNotNull(DropNotNull { syntax }),
28706 SyntaxKind::OWNER_TO => AlterDomainAction::OwnerTo(OwnerTo { syntax }),
28707 SyntaxKind::RENAME_CONSTRAINT => {
28708 AlterDomainAction::RenameConstraint(RenameConstraint { syntax })
28709 }
28710 SyntaxKind::RENAME_TO => AlterDomainAction::RenameTo(RenameTo { syntax }),
28711 SyntaxKind::SET_DEFAULT => AlterDomainAction::SetDefault(SetDefault { syntax }),
28712 SyntaxKind::SET_NOT_NULL => AlterDomainAction::SetNotNull(SetNotNull { syntax }),
28713 SyntaxKind::SET_SCHEMA => AlterDomainAction::SetSchema(SetSchema { syntax }),
28714 SyntaxKind::VALIDATE_CONSTRAINT => {
28715 AlterDomainAction::ValidateConstraint(ValidateConstraint { syntax })
28716 }
28717 _ => {
28718 return None;
28719 }
28720 };
28721 Some(res)
28722 }
28723 #[inline]
28724 fn syntax(&self) -> &SyntaxNode {
28725 match self {
28726 AlterDomainAction::AddConstraint(it) => &it.syntax,
28727 AlterDomainAction::DropConstraint(it) => &it.syntax,
28728 AlterDomainAction::DropDefault(it) => &it.syntax,
28729 AlterDomainAction::DropNotNull(it) => &it.syntax,
28730 AlterDomainAction::OwnerTo(it) => &it.syntax,
28731 AlterDomainAction::RenameConstraint(it) => &it.syntax,
28732 AlterDomainAction::RenameTo(it) => &it.syntax,
28733 AlterDomainAction::SetDefault(it) => &it.syntax,
28734 AlterDomainAction::SetNotNull(it) => &it.syntax,
28735 AlterDomainAction::SetSchema(it) => &it.syntax,
28736 AlterDomainAction::ValidateConstraint(it) => &it.syntax,
28737 }
28738 }
28739}
28740impl From<AddConstraint> for AlterDomainAction {
28741 #[inline]
28742 fn from(node: AddConstraint) -> AlterDomainAction {
28743 AlterDomainAction::AddConstraint(node)
28744 }
28745}
28746impl From<DropConstraint> for AlterDomainAction {
28747 #[inline]
28748 fn from(node: DropConstraint) -> AlterDomainAction {
28749 AlterDomainAction::DropConstraint(node)
28750 }
28751}
28752impl From<DropDefault> for AlterDomainAction {
28753 #[inline]
28754 fn from(node: DropDefault) -> AlterDomainAction {
28755 AlterDomainAction::DropDefault(node)
28756 }
28757}
28758impl From<DropNotNull> for AlterDomainAction {
28759 #[inline]
28760 fn from(node: DropNotNull) -> AlterDomainAction {
28761 AlterDomainAction::DropNotNull(node)
28762 }
28763}
28764impl From<OwnerTo> for AlterDomainAction {
28765 #[inline]
28766 fn from(node: OwnerTo) -> AlterDomainAction {
28767 AlterDomainAction::OwnerTo(node)
28768 }
28769}
28770impl From<RenameConstraint> for AlterDomainAction {
28771 #[inline]
28772 fn from(node: RenameConstraint) -> AlterDomainAction {
28773 AlterDomainAction::RenameConstraint(node)
28774 }
28775}
28776impl From<RenameTo> for AlterDomainAction {
28777 #[inline]
28778 fn from(node: RenameTo) -> AlterDomainAction {
28779 AlterDomainAction::RenameTo(node)
28780 }
28781}
28782impl From<SetDefault> for AlterDomainAction {
28783 #[inline]
28784 fn from(node: SetDefault) -> AlterDomainAction {
28785 AlterDomainAction::SetDefault(node)
28786 }
28787}
28788impl From<SetNotNull> for AlterDomainAction {
28789 #[inline]
28790 fn from(node: SetNotNull) -> AlterDomainAction {
28791 AlterDomainAction::SetNotNull(node)
28792 }
28793}
28794impl From<SetSchema> for AlterDomainAction {
28795 #[inline]
28796 fn from(node: SetSchema) -> AlterDomainAction {
28797 AlterDomainAction::SetSchema(node)
28798 }
28799}
28800impl From<ValidateConstraint> for AlterDomainAction {
28801 #[inline]
28802 fn from(node: ValidateConstraint) -> AlterDomainAction {
28803 AlterDomainAction::ValidateConstraint(node)
28804 }
28805}
28806impl AstNode for AlterMaterializedViewAction {
28807 #[inline]
28808 fn can_cast(kind: SyntaxKind) -> bool {
28809 matches!(
28810 kind,
28811 SyntaxKind::DEPENDS_ON_EXTENSION
28812 | SyntaxKind::NO_DEPENDS_ON_EXTENSION
28813 | SyntaxKind::RENAME_COLUMN
28814 | SyntaxKind::RENAME_TO
28815 | SyntaxKind::SET_SCHEMA
28816 )
28817 }
28818 #[inline]
28819 fn cast(syntax: SyntaxNode) -> Option<Self> {
28820 let res = match syntax.kind() {
28821 SyntaxKind::DEPENDS_ON_EXTENSION => {
28822 AlterMaterializedViewAction::DependsOnExtension(DependsOnExtension { syntax })
28823 }
28824 SyntaxKind::NO_DEPENDS_ON_EXTENSION => {
28825 AlterMaterializedViewAction::NoDependsOnExtension(NoDependsOnExtension { syntax })
28826 }
28827 SyntaxKind::RENAME_COLUMN => {
28828 AlterMaterializedViewAction::RenameColumn(RenameColumn { syntax })
28829 }
28830 SyntaxKind::RENAME_TO => AlterMaterializedViewAction::RenameTo(RenameTo { syntax }),
28831 SyntaxKind::SET_SCHEMA => AlterMaterializedViewAction::SetSchema(SetSchema { syntax }),
28832 _ => {
28833 if let Some(result) = AlterTableAction::cast(syntax) {
28834 return Some(AlterMaterializedViewAction::AlterTableAction(result));
28835 }
28836 return None;
28837 }
28838 };
28839 Some(res)
28840 }
28841 #[inline]
28842 fn syntax(&self) -> &SyntaxNode {
28843 match self {
28844 AlterMaterializedViewAction::DependsOnExtension(it) => &it.syntax,
28845 AlterMaterializedViewAction::NoDependsOnExtension(it) => &it.syntax,
28846 AlterMaterializedViewAction::RenameColumn(it) => &it.syntax,
28847 AlterMaterializedViewAction::RenameTo(it) => &it.syntax,
28848 AlterMaterializedViewAction::SetSchema(it) => &it.syntax,
28849 AlterMaterializedViewAction::AlterTableAction(it) => it.syntax(),
28850 }
28851 }
28852}
28853impl From<DependsOnExtension> for AlterMaterializedViewAction {
28854 #[inline]
28855 fn from(node: DependsOnExtension) -> AlterMaterializedViewAction {
28856 AlterMaterializedViewAction::DependsOnExtension(node)
28857 }
28858}
28859impl From<NoDependsOnExtension> for AlterMaterializedViewAction {
28860 #[inline]
28861 fn from(node: NoDependsOnExtension) -> AlterMaterializedViewAction {
28862 AlterMaterializedViewAction::NoDependsOnExtension(node)
28863 }
28864}
28865impl From<RenameColumn> for AlterMaterializedViewAction {
28866 #[inline]
28867 fn from(node: RenameColumn) -> AlterMaterializedViewAction {
28868 AlterMaterializedViewAction::RenameColumn(node)
28869 }
28870}
28871impl From<RenameTo> for AlterMaterializedViewAction {
28872 #[inline]
28873 fn from(node: RenameTo) -> AlterMaterializedViewAction {
28874 AlterMaterializedViewAction::RenameTo(node)
28875 }
28876}
28877impl From<SetSchema> for AlterMaterializedViewAction {
28878 #[inline]
28879 fn from(node: SetSchema) -> AlterMaterializedViewAction {
28880 AlterMaterializedViewAction::SetSchema(node)
28881 }
28882}
28883impl AstNode for AlterTableAction {
28884 #[inline]
28885 fn can_cast(kind: SyntaxKind) -> bool {
28886 matches!(
28887 kind,
28888 SyntaxKind::ADD_COLUMN
28889 | SyntaxKind::ADD_CONSTRAINT
28890 | SyntaxKind::ALTER_COLUMN
28891 | SyntaxKind::ALTER_CONSTRAINT
28892 | SyntaxKind::ATTACH_PARTITION
28893 | SyntaxKind::CLUSTER_ON
28894 | SyntaxKind::DETACH_PARTITION
28895 | SyntaxKind::DISABLE_RLS
28896 | SyntaxKind::DISABLE_RULE
28897 | SyntaxKind::DISABLE_TRIGGER
28898 | SyntaxKind::DROP_COLUMN
28899 | SyntaxKind::DROP_CONSTRAINT
28900 | SyntaxKind::ENABLE_ALWAYS_RULE
28901 | SyntaxKind::ENABLE_ALWAYS_TRIGGER
28902 | SyntaxKind::ENABLE_REPLICA_RULE
28903 | SyntaxKind::ENABLE_REPLICA_TRIGGER
28904 | SyntaxKind::ENABLE_RLS
28905 | SyntaxKind::ENABLE_RULE
28906 | SyntaxKind::ENABLE_TRIGGER
28907 | SyntaxKind::FORCE_RLS
28908 | SyntaxKind::INHERIT_TABLE
28909 | SyntaxKind::MERGE_PARTITIONS
28910 | SyntaxKind::NO_FORCE_RLS
28911 | SyntaxKind::NO_INHERIT_TABLE
28912 | SyntaxKind::NOT_OF
28913 | SyntaxKind::OF_TYPE
28914 | SyntaxKind::OPTION_ITEM_LIST
28915 | SyntaxKind::OWNER_TO
28916 | SyntaxKind::RENAME_COLUMN
28917 | SyntaxKind::RENAME_CONSTRAINT
28918 | SyntaxKind::RENAME_TO
28919 | SyntaxKind::REPLICA_IDENTITY
28920 | SyntaxKind::RESET_OPTIONS
28921 | SyntaxKind::SET_ACCESS_METHOD
28922 | SyntaxKind::SET_LOGGED
28923 | SyntaxKind::SET_OPTIONS
28924 | SyntaxKind::SET_SCHEMA
28925 | SyntaxKind::SET_TABLESPACE
28926 | SyntaxKind::SET_UNLOGGED
28927 | SyntaxKind::SET_WITHOUT_CLUSTER
28928 | SyntaxKind::SET_WITHOUT_OIDS
28929 | SyntaxKind::SPLIT_PARTITION
28930 | SyntaxKind::VALIDATE_CONSTRAINT
28931 )
28932 }
28933 #[inline]
28934 fn cast(syntax: SyntaxNode) -> Option<Self> {
28935 let res = match syntax.kind() {
28936 SyntaxKind::ADD_COLUMN => AlterTableAction::AddColumn(AddColumn { syntax }),
28937 SyntaxKind::ADD_CONSTRAINT => AlterTableAction::AddConstraint(AddConstraint { syntax }),
28938 SyntaxKind::ALTER_COLUMN => AlterTableAction::AlterColumn(AlterColumn { syntax }),
28939 SyntaxKind::ALTER_CONSTRAINT => {
28940 AlterTableAction::AlterConstraint(AlterConstraint { syntax })
28941 }
28942 SyntaxKind::ATTACH_PARTITION => {
28943 AlterTableAction::AttachPartition(AttachPartition { syntax })
28944 }
28945 SyntaxKind::CLUSTER_ON => AlterTableAction::ClusterOn(ClusterOn { syntax }),
28946 SyntaxKind::DETACH_PARTITION => {
28947 AlterTableAction::DetachPartition(DetachPartition { syntax })
28948 }
28949 SyntaxKind::DISABLE_RLS => AlterTableAction::DisableRls(DisableRls { syntax }),
28950 SyntaxKind::DISABLE_RULE => AlterTableAction::DisableRule(DisableRule { syntax }),
28951 SyntaxKind::DISABLE_TRIGGER => {
28952 AlterTableAction::DisableTrigger(DisableTrigger { syntax })
28953 }
28954 SyntaxKind::DROP_COLUMN => AlterTableAction::DropColumn(DropColumn { syntax }),
28955 SyntaxKind::DROP_CONSTRAINT => {
28956 AlterTableAction::DropConstraint(DropConstraint { syntax })
28957 }
28958 SyntaxKind::ENABLE_ALWAYS_RULE => {
28959 AlterTableAction::EnableAlwaysRule(EnableAlwaysRule { syntax })
28960 }
28961 SyntaxKind::ENABLE_ALWAYS_TRIGGER => {
28962 AlterTableAction::EnableAlwaysTrigger(EnableAlwaysTrigger { syntax })
28963 }
28964 SyntaxKind::ENABLE_REPLICA_RULE => {
28965 AlterTableAction::EnableReplicaRule(EnableReplicaRule { syntax })
28966 }
28967 SyntaxKind::ENABLE_REPLICA_TRIGGER => {
28968 AlterTableAction::EnableReplicaTrigger(EnableReplicaTrigger { syntax })
28969 }
28970 SyntaxKind::ENABLE_RLS => AlterTableAction::EnableRls(EnableRls { syntax }),
28971 SyntaxKind::ENABLE_RULE => AlterTableAction::EnableRule(EnableRule { syntax }),
28972 SyntaxKind::ENABLE_TRIGGER => AlterTableAction::EnableTrigger(EnableTrigger { syntax }),
28973 SyntaxKind::FORCE_RLS => AlterTableAction::ForceRls(ForceRls { syntax }),
28974 SyntaxKind::INHERIT_TABLE => AlterTableAction::InheritTable(InheritTable { syntax }),
28975 SyntaxKind::MERGE_PARTITIONS => {
28976 AlterTableAction::MergePartitions(MergePartitions { syntax })
28977 }
28978 SyntaxKind::NO_FORCE_RLS => AlterTableAction::NoForceRls(NoForceRls { syntax }),
28979 SyntaxKind::NO_INHERIT_TABLE => {
28980 AlterTableAction::NoInheritTable(NoInheritTable { syntax })
28981 }
28982 SyntaxKind::NOT_OF => AlterTableAction::NotOf(NotOf { syntax }),
28983 SyntaxKind::OF_TYPE => AlterTableAction::OfType(OfType { syntax }),
28984 SyntaxKind::OPTION_ITEM_LIST => {
28985 AlterTableAction::OptionItemList(OptionItemList { syntax })
28986 }
28987 SyntaxKind::OWNER_TO => AlterTableAction::OwnerTo(OwnerTo { syntax }),
28988 SyntaxKind::RENAME_COLUMN => AlterTableAction::RenameColumn(RenameColumn { syntax }),
28989 SyntaxKind::RENAME_CONSTRAINT => {
28990 AlterTableAction::RenameConstraint(RenameConstraint { syntax })
28991 }
28992 SyntaxKind::RENAME_TO => AlterTableAction::RenameTo(RenameTo { syntax }),
28993 SyntaxKind::REPLICA_IDENTITY => {
28994 AlterTableAction::ReplicaIdentity(ReplicaIdentity { syntax })
28995 }
28996 SyntaxKind::RESET_OPTIONS => AlterTableAction::ResetOptions(ResetOptions { syntax }),
28997 SyntaxKind::SET_ACCESS_METHOD => {
28998 AlterTableAction::SetAccessMethod(SetAccessMethod { syntax })
28999 }
29000 SyntaxKind::SET_LOGGED => AlterTableAction::SetLogged(SetLogged { syntax }),
29001 SyntaxKind::SET_OPTIONS => AlterTableAction::SetOptions(SetOptions { syntax }),
29002 SyntaxKind::SET_SCHEMA => AlterTableAction::SetSchema(SetSchema { syntax }),
29003 SyntaxKind::SET_TABLESPACE => AlterTableAction::SetTablespace(SetTablespace { syntax }),
29004 SyntaxKind::SET_UNLOGGED => AlterTableAction::SetUnlogged(SetUnlogged { syntax }),
29005 SyntaxKind::SET_WITHOUT_CLUSTER => {
29006 AlterTableAction::SetWithoutCluster(SetWithoutCluster { syntax })
29007 }
29008 SyntaxKind::SET_WITHOUT_OIDS => {
29009 AlterTableAction::SetWithoutOids(SetWithoutOids { syntax })
29010 }
29011 SyntaxKind::SPLIT_PARTITION => {
29012 AlterTableAction::SplitPartition(SplitPartition { syntax })
29013 }
29014 SyntaxKind::VALIDATE_CONSTRAINT => {
29015 AlterTableAction::ValidateConstraint(ValidateConstraint { syntax })
29016 }
29017 _ => {
29018 return None;
29019 }
29020 };
29021 Some(res)
29022 }
29023 #[inline]
29024 fn syntax(&self) -> &SyntaxNode {
29025 match self {
29026 AlterTableAction::AddColumn(it) => &it.syntax,
29027 AlterTableAction::AddConstraint(it) => &it.syntax,
29028 AlterTableAction::AlterColumn(it) => &it.syntax,
29029 AlterTableAction::AlterConstraint(it) => &it.syntax,
29030 AlterTableAction::AttachPartition(it) => &it.syntax,
29031 AlterTableAction::ClusterOn(it) => &it.syntax,
29032 AlterTableAction::DetachPartition(it) => &it.syntax,
29033 AlterTableAction::DisableRls(it) => &it.syntax,
29034 AlterTableAction::DisableRule(it) => &it.syntax,
29035 AlterTableAction::DisableTrigger(it) => &it.syntax,
29036 AlterTableAction::DropColumn(it) => &it.syntax,
29037 AlterTableAction::DropConstraint(it) => &it.syntax,
29038 AlterTableAction::EnableAlwaysRule(it) => &it.syntax,
29039 AlterTableAction::EnableAlwaysTrigger(it) => &it.syntax,
29040 AlterTableAction::EnableReplicaRule(it) => &it.syntax,
29041 AlterTableAction::EnableReplicaTrigger(it) => &it.syntax,
29042 AlterTableAction::EnableRls(it) => &it.syntax,
29043 AlterTableAction::EnableRule(it) => &it.syntax,
29044 AlterTableAction::EnableTrigger(it) => &it.syntax,
29045 AlterTableAction::ForceRls(it) => &it.syntax,
29046 AlterTableAction::InheritTable(it) => &it.syntax,
29047 AlterTableAction::MergePartitions(it) => &it.syntax,
29048 AlterTableAction::NoForceRls(it) => &it.syntax,
29049 AlterTableAction::NoInheritTable(it) => &it.syntax,
29050 AlterTableAction::NotOf(it) => &it.syntax,
29051 AlterTableAction::OfType(it) => &it.syntax,
29052 AlterTableAction::OptionItemList(it) => &it.syntax,
29053 AlterTableAction::OwnerTo(it) => &it.syntax,
29054 AlterTableAction::RenameColumn(it) => &it.syntax,
29055 AlterTableAction::RenameConstraint(it) => &it.syntax,
29056 AlterTableAction::RenameTo(it) => &it.syntax,
29057 AlterTableAction::ReplicaIdentity(it) => &it.syntax,
29058 AlterTableAction::ResetOptions(it) => &it.syntax,
29059 AlterTableAction::SetAccessMethod(it) => &it.syntax,
29060 AlterTableAction::SetLogged(it) => &it.syntax,
29061 AlterTableAction::SetOptions(it) => &it.syntax,
29062 AlterTableAction::SetSchema(it) => &it.syntax,
29063 AlterTableAction::SetTablespace(it) => &it.syntax,
29064 AlterTableAction::SetUnlogged(it) => &it.syntax,
29065 AlterTableAction::SetWithoutCluster(it) => &it.syntax,
29066 AlterTableAction::SetWithoutOids(it) => &it.syntax,
29067 AlterTableAction::SplitPartition(it) => &it.syntax,
29068 AlterTableAction::ValidateConstraint(it) => &it.syntax,
29069 }
29070 }
29071}
29072impl From<AddColumn> for AlterTableAction {
29073 #[inline]
29074 fn from(node: AddColumn) -> AlterTableAction {
29075 AlterTableAction::AddColumn(node)
29076 }
29077}
29078impl From<AddConstraint> for AlterTableAction {
29079 #[inline]
29080 fn from(node: AddConstraint) -> AlterTableAction {
29081 AlterTableAction::AddConstraint(node)
29082 }
29083}
29084impl From<AlterColumn> for AlterTableAction {
29085 #[inline]
29086 fn from(node: AlterColumn) -> AlterTableAction {
29087 AlterTableAction::AlterColumn(node)
29088 }
29089}
29090impl From<AlterConstraint> for AlterTableAction {
29091 #[inline]
29092 fn from(node: AlterConstraint) -> AlterTableAction {
29093 AlterTableAction::AlterConstraint(node)
29094 }
29095}
29096impl From<AttachPartition> for AlterTableAction {
29097 #[inline]
29098 fn from(node: AttachPartition) -> AlterTableAction {
29099 AlterTableAction::AttachPartition(node)
29100 }
29101}
29102impl From<ClusterOn> for AlterTableAction {
29103 #[inline]
29104 fn from(node: ClusterOn) -> AlterTableAction {
29105 AlterTableAction::ClusterOn(node)
29106 }
29107}
29108impl From<DetachPartition> for AlterTableAction {
29109 #[inline]
29110 fn from(node: DetachPartition) -> AlterTableAction {
29111 AlterTableAction::DetachPartition(node)
29112 }
29113}
29114impl From<DisableRls> for AlterTableAction {
29115 #[inline]
29116 fn from(node: DisableRls) -> AlterTableAction {
29117 AlterTableAction::DisableRls(node)
29118 }
29119}
29120impl From<DisableRule> for AlterTableAction {
29121 #[inline]
29122 fn from(node: DisableRule) -> AlterTableAction {
29123 AlterTableAction::DisableRule(node)
29124 }
29125}
29126impl From<DisableTrigger> for AlterTableAction {
29127 #[inline]
29128 fn from(node: DisableTrigger) -> AlterTableAction {
29129 AlterTableAction::DisableTrigger(node)
29130 }
29131}
29132impl From<DropColumn> for AlterTableAction {
29133 #[inline]
29134 fn from(node: DropColumn) -> AlterTableAction {
29135 AlterTableAction::DropColumn(node)
29136 }
29137}
29138impl From<DropConstraint> for AlterTableAction {
29139 #[inline]
29140 fn from(node: DropConstraint) -> AlterTableAction {
29141 AlterTableAction::DropConstraint(node)
29142 }
29143}
29144impl From<EnableAlwaysRule> for AlterTableAction {
29145 #[inline]
29146 fn from(node: EnableAlwaysRule) -> AlterTableAction {
29147 AlterTableAction::EnableAlwaysRule(node)
29148 }
29149}
29150impl From<EnableAlwaysTrigger> for AlterTableAction {
29151 #[inline]
29152 fn from(node: EnableAlwaysTrigger) -> AlterTableAction {
29153 AlterTableAction::EnableAlwaysTrigger(node)
29154 }
29155}
29156impl From<EnableReplicaRule> for AlterTableAction {
29157 #[inline]
29158 fn from(node: EnableReplicaRule) -> AlterTableAction {
29159 AlterTableAction::EnableReplicaRule(node)
29160 }
29161}
29162impl From<EnableReplicaTrigger> for AlterTableAction {
29163 #[inline]
29164 fn from(node: EnableReplicaTrigger) -> AlterTableAction {
29165 AlterTableAction::EnableReplicaTrigger(node)
29166 }
29167}
29168impl From<EnableRls> for AlterTableAction {
29169 #[inline]
29170 fn from(node: EnableRls) -> AlterTableAction {
29171 AlterTableAction::EnableRls(node)
29172 }
29173}
29174impl From<EnableRule> for AlterTableAction {
29175 #[inline]
29176 fn from(node: EnableRule) -> AlterTableAction {
29177 AlterTableAction::EnableRule(node)
29178 }
29179}
29180impl From<EnableTrigger> for AlterTableAction {
29181 #[inline]
29182 fn from(node: EnableTrigger) -> AlterTableAction {
29183 AlterTableAction::EnableTrigger(node)
29184 }
29185}
29186impl From<ForceRls> for AlterTableAction {
29187 #[inline]
29188 fn from(node: ForceRls) -> AlterTableAction {
29189 AlterTableAction::ForceRls(node)
29190 }
29191}
29192impl From<InheritTable> for AlterTableAction {
29193 #[inline]
29194 fn from(node: InheritTable) -> AlterTableAction {
29195 AlterTableAction::InheritTable(node)
29196 }
29197}
29198impl From<MergePartitions> for AlterTableAction {
29199 #[inline]
29200 fn from(node: MergePartitions) -> AlterTableAction {
29201 AlterTableAction::MergePartitions(node)
29202 }
29203}
29204impl From<NoForceRls> for AlterTableAction {
29205 #[inline]
29206 fn from(node: NoForceRls) -> AlterTableAction {
29207 AlterTableAction::NoForceRls(node)
29208 }
29209}
29210impl From<NoInheritTable> for AlterTableAction {
29211 #[inline]
29212 fn from(node: NoInheritTable) -> AlterTableAction {
29213 AlterTableAction::NoInheritTable(node)
29214 }
29215}
29216impl From<NotOf> for AlterTableAction {
29217 #[inline]
29218 fn from(node: NotOf) -> AlterTableAction {
29219 AlterTableAction::NotOf(node)
29220 }
29221}
29222impl From<OfType> for AlterTableAction {
29223 #[inline]
29224 fn from(node: OfType) -> AlterTableAction {
29225 AlterTableAction::OfType(node)
29226 }
29227}
29228impl From<OptionItemList> for AlterTableAction {
29229 #[inline]
29230 fn from(node: OptionItemList) -> AlterTableAction {
29231 AlterTableAction::OptionItemList(node)
29232 }
29233}
29234impl From<OwnerTo> for AlterTableAction {
29235 #[inline]
29236 fn from(node: OwnerTo) -> AlterTableAction {
29237 AlterTableAction::OwnerTo(node)
29238 }
29239}
29240impl From<RenameColumn> for AlterTableAction {
29241 #[inline]
29242 fn from(node: RenameColumn) -> AlterTableAction {
29243 AlterTableAction::RenameColumn(node)
29244 }
29245}
29246impl From<RenameConstraint> for AlterTableAction {
29247 #[inline]
29248 fn from(node: RenameConstraint) -> AlterTableAction {
29249 AlterTableAction::RenameConstraint(node)
29250 }
29251}
29252impl From<RenameTo> for AlterTableAction {
29253 #[inline]
29254 fn from(node: RenameTo) -> AlterTableAction {
29255 AlterTableAction::RenameTo(node)
29256 }
29257}
29258impl From<ReplicaIdentity> for AlterTableAction {
29259 #[inline]
29260 fn from(node: ReplicaIdentity) -> AlterTableAction {
29261 AlterTableAction::ReplicaIdentity(node)
29262 }
29263}
29264impl From<ResetOptions> for AlterTableAction {
29265 #[inline]
29266 fn from(node: ResetOptions) -> AlterTableAction {
29267 AlterTableAction::ResetOptions(node)
29268 }
29269}
29270impl From<SetAccessMethod> for AlterTableAction {
29271 #[inline]
29272 fn from(node: SetAccessMethod) -> AlterTableAction {
29273 AlterTableAction::SetAccessMethod(node)
29274 }
29275}
29276impl From<SetLogged> for AlterTableAction {
29277 #[inline]
29278 fn from(node: SetLogged) -> AlterTableAction {
29279 AlterTableAction::SetLogged(node)
29280 }
29281}
29282impl From<SetOptions> for AlterTableAction {
29283 #[inline]
29284 fn from(node: SetOptions) -> AlterTableAction {
29285 AlterTableAction::SetOptions(node)
29286 }
29287}
29288impl From<SetSchema> for AlterTableAction {
29289 #[inline]
29290 fn from(node: SetSchema) -> AlterTableAction {
29291 AlterTableAction::SetSchema(node)
29292 }
29293}
29294impl From<SetTablespace> for AlterTableAction {
29295 #[inline]
29296 fn from(node: SetTablespace) -> AlterTableAction {
29297 AlterTableAction::SetTablespace(node)
29298 }
29299}
29300impl From<SetUnlogged> for AlterTableAction {
29301 #[inline]
29302 fn from(node: SetUnlogged) -> AlterTableAction {
29303 AlterTableAction::SetUnlogged(node)
29304 }
29305}
29306impl From<SetWithoutCluster> for AlterTableAction {
29307 #[inline]
29308 fn from(node: SetWithoutCluster) -> AlterTableAction {
29309 AlterTableAction::SetWithoutCluster(node)
29310 }
29311}
29312impl From<SetWithoutOids> for AlterTableAction {
29313 #[inline]
29314 fn from(node: SetWithoutOids) -> AlterTableAction {
29315 AlterTableAction::SetWithoutOids(node)
29316 }
29317}
29318impl From<SplitPartition> for AlterTableAction {
29319 #[inline]
29320 fn from(node: SplitPartition) -> AlterTableAction {
29321 AlterTableAction::SplitPartition(node)
29322 }
29323}
29324impl From<ValidateConstraint> for AlterTableAction {
29325 #[inline]
29326 fn from(node: ValidateConstraint) -> AlterTableAction {
29327 AlterTableAction::ValidateConstraint(node)
29328 }
29329}
29330impl AstNode for ColumnConstraint {
29331 #[inline]
29332 fn can_cast(kind: SyntaxKind) -> bool {
29333 matches!(
29334 kind,
29335 SyntaxKind::CHECK_CONSTRAINT
29336 | SyntaxKind::DEFAULT_CONSTRAINT
29337 | SyntaxKind::EXCLUDE_CONSTRAINT
29338 | SyntaxKind::NOT_NULL_CONSTRAINT
29339 | SyntaxKind::PRIMARY_KEY_CONSTRAINT
29340 | SyntaxKind::REFERENCES_CONSTRAINT
29341 | SyntaxKind::UNIQUE_CONSTRAINT
29342 )
29343 }
29344 #[inline]
29345 fn cast(syntax: SyntaxNode) -> Option<Self> {
29346 let res = match syntax.kind() {
29347 SyntaxKind::CHECK_CONSTRAINT => {
29348 ColumnConstraint::CheckConstraint(CheckConstraint { syntax })
29349 }
29350 SyntaxKind::DEFAULT_CONSTRAINT => {
29351 ColumnConstraint::DefaultConstraint(DefaultConstraint { syntax })
29352 }
29353 SyntaxKind::EXCLUDE_CONSTRAINT => {
29354 ColumnConstraint::ExcludeConstraint(ExcludeConstraint { syntax })
29355 }
29356 SyntaxKind::NOT_NULL_CONSTRAINT => {
29357 ColumnConstraint::NotNullConstraint(NotNullConstraint { syntax })
29358 }
29359 SyntaxKind::PRIMARY_KEY_CONSTRAINT => {
29360 ColumnConstraint::PrimaryKeyConstraint(PrimaryKeyConstraint { syntax })
29361 }
29362 SyntaxKind::REFERENCES_CONSTRAINT => {
29363 ColumnConstraint::ReferencesConstraint(ReferencesConstraint { syntax })
29364 }
29365 SyntaxKind::UNIQUE_CONSTRAINT => {
29366 ColumnConstraint::UniqueConstraint(UniqueConstraint { syntax })
29367 }
29368 _ => {
29369 return None;
29370 }
29371 };
29372 Some(res)
29373 }
29374 #[inline]
29375 fn syntax(&self) -> &SyntaxNode {
29376 match self {
29377 ColumnConstraint::CheckConstraint(it) => &it.syntax,
29378 ColumnConstraint::DefaultConstraint(it) => &it.syntax,
29379 ColumnConstraint::ExcludeConstraint(it) => &it.syntax,
29380 ColumnConstraint::NotNullConstraint(it) => &it.syntax,
29381 ColumnConstraint::PrimaryKeyConstraint(it) => &it.syntax,
29382 ColumnConstraint::ReferencesConstraint(it) => &it.syntax,
29383 ColumnConstraint::UniqueConstraint(it) => &it.syntax,
29384 }
29385 }
29386}
29387impl From<CheckConstraint> for ColumnConstraint {
29388 #[inline]
29389 fn from(node: CheckConstraint) -> ColumnConstraint {
29390 ColumnConstraint::CheckConstraint(node)
29391 }
29392}
29393impl From<DefaultConstraint> for ColumnConstraint {
29394 #[inline]
29395 fn from(node: DefaultConstraint) -> ColumnConstraint {
29396 ColumnConstraint::DefaultConstraint(node)
29397 }
29398}
29399impl From<ExcludeConstraint> for ColumnConstraint {
29400 #[inline]
29401 fn from(node: ExcludeConstraint) -> ColumnConstraint {
29402 ColumnConstraint::ExcludeConstraint(node)
29403 }
29404}
29405impl From<NotNullConstraint> for ColumnConstraint {
29406 #[inline]
29407 fn from(node: NotNullConstraint) -> ColumnConstraint {
29408 ColumnConstraint::NotNullConstraint(node)
29409 }
29410}
29411impl From<PrimaryKeyConstraint> for ColumnConstraint {
29412 #[inline]
29413 fn from(node: PrimaryKeyConstraint) -> ColumnConstraint {
29414 ColumnConstraint::PrimaryKeyConstraint(node)
29415 }
29416}
29417impl From<ReferencesConstraint> for ColumnConstraint {
29418 #[inline]
29419 fn from(node: ReferencesConstraint) -> ColumnConstraint {
29420 ColumnConstraint::ReferencesConstraint(node)
29421 }
29422}
29423impl From<UniqueConstraint> for ColumnConstraint {
29424 #[inline]
29425 fn from(node: UniqueConstraint) -> ColumnConstraint {
29426 ColumnConstraint::UniqueConstraint(node)
29427 }
29428}
29429impl AstNode for ConfigValue {
29430 #[inline]
29431 fn can_cast(kind: SyntaxKind) -> bool {
29432 matches!(kind, SyntaxKind::LITERAL | SyntaxKind::NAME_REF)
29433 }
29434 #[inline]
29435 fn cast(syntax: SyntaxNode) -> Option<Self> {
29436 let res = match syntax.kind() {
29437 SyntaxKind::LITERAL => ConfigValue::Literal(Literal { syntax }),
29438 SyntaxKind::NAME_REF => ConfigValue::NameRef(NameRef { syntax }),
29439 _ => {
29440 return None;
29441 }
29442 };
29443 Some(res)
29444 }
29445 #[inline]
29446 fn syntax(&self) -> &SyntaxNode {
29447 match self {
29448 ConfigValue::Literal(it) => &it.syntax,
29449 ConfigValue::NameRef(it) => &it.syntax,
29450 }
29451 }
29452}
29453impl From<Literal> for ConfigValue {
29454 #[inline]
29455 fn from(node: Literal) -> ConfigValue {
29456 ConfigValue::Literal(node)
29457 }
29458}
29459impl From<NameRef> for ConfigValue {
29460 #[inline]
29461 fn from(node: NameRef) -> ConfigValue {
29462 ConfigValue::NameRef(node)
29463 }
29464}
29465impl AstNode for ConflictAction {
29466 #[inline]
29467 fn can_cast(kind: SyntaxKind) -> bool {
29468 matches!(
29469 kind,
29470 SyntaxKind::CONFLICT_DO_NOTHING | SyntaxKind::CONFLICT_DO_UPDATE_SET
29471 )
29472 }
29473 #[inline]
29474 fn cast(syntax: SyntaxNode) -> Option<Self> {
29475 let res = match syntax.kind() {
29476 SyntaxKind::CONFLICT_DO_NOTHING => {
29477 ConflictAction::ConflictDoNothing(ConflictDoNothing { syntax })
29478 }
29479 SyntaxKind::CONFLICT_DO_UPDATE_SET => {
29480 ConflictAction::ConflictDoUpdateSet(ConflictDoUpdateSet { syntax })
29481 }
29482 _ => {
29483 return None;
29484 }
29485 };
29486 Some(res)
29487 }
29488 #[inline]
29489 fn syntax(&self) -> &SyntaxNode {
29490 match self {
29491 ConflictAction::ConflictDoNothing(it) => &it.syntax,
29492 ConflictAction::ConflictDoUpdateSet(it) => &it.syntax,
29493 }
29494 }
29495}
29496impl From<ConflictDoNothing> for ConflictAction {
29497 #[inline]
29498 fn from(node: ConflictDoNothing) -> ConflictAction {
29499 ConflictAction::ConflictDoNothing(node)
29500 }
29501}
29502impl From<ConflictDoUpdateSet> for ConflictAction {
29503 #[inline]
29504 fn from(node: ConflictDoUpdateSet) -> ConflictAction {
29505 ConflictAction::ConflictDoUpdateSet(node)
29506 }
29507}
29508impl AstNode for ConflictTarget {
29509 #[inline]
29510 fn can_cast(kind: SyntaxKind) -> bool {
29511 matches!(
29512 kind,
29513 SyntaxKind::CONFLICT_ON_CONSTRAINT | SyntaxKind::CONFLICT_ON_INDEX
29514 )
29515 }
29516 #[inline]
29517 fn cast(syntax: SyntaxNode) -> Option<Self> {
29518 let res = match syntax.kind() {
29519 SyntaxKind::CONFLICT_ON_CONSTRAINT => {
29520 ConflictTarget::ConflictOnConstraint(ConflictOnConstraint { syntax })
29521 }
29522 SyntaxKind::CONFLICT_ON_INDEX => {
29523 ConflictTarget::ConflictOnIndex(ConflictOnIndex { syntax })
29524 }
29525 _ => {
29526 return None;
29527 }
29528 };
29529 Some(res)
29530 }
29531 #[inline]
29532 fn syntax(&self) -> &SyntaxNode {
29533 match self {
29534 ConflictTarget::ConflictOnConstraint(it) => &it.syntax,
29535 ConflictTarget::ConflictOnIndex(it) => &it.syntax,
29536 }
29537 }
29538}
29539impl From<ConflictOnConstraint> for ConflictTarget {
29540 #[inline]
29541 fn from(node: ConflictOnConstraint) -> ConflictTarget {
29542 ConflictTarget::ConflictOnConstraint(node)
29543 }
29544}
29545impl From<ConflictOnIndex> for ConflictTarget {
29546 #[inline]
29547 fn from(node: ConflictOnIndex) -> ConflictTarget {
29548 ConflictTarget::ConflictOnIndex(node)
29549 }
29550}
29551impl AstNode for Constraint {
29552 #[inline]
29553 fn can_cast(kind: SyntaxKind) -> bool {
29554 matches!(
29555 kind,
29556 SyntaxKind::CHECK_CONSTRAINT
29557 | SyntaxKind::DEFAULT_CONSTRAINT
29558 | SyntaxKind::FOREIGN_KEY_CONSTRAINT
29559 | SyntaxKind::GENERATED_CONSTRAINT
29560 | SyntaxKind::NOT_NULL_CONSTRAINT
29561 | SyntaxKind::NULL_CONSTRAINT
29562 | SyntaxKind::PRIMARY_KEY_CONSTRAINT
29563 | SyntaxKind::REFERENCES_CONSTRAINT
29564 | SyntaxKind::UNIQUE_CONSTRAINT
29565 )
29566 }
29567 #[inline]
29568 fn cast(syntax: SyntaxNode) -> Option<Self> {
29569 let res = match syntax.kind() {
29570 SyntaxKind::CHECK_CONSTRAINT => Constraint::CheckConstraint(CheckConstraint { syntax }),
29571 SyntaxKind::DEFAULT_CONSTRAINT => {
29572 Constraint::DefaultConstraint(DefaultConstraint { syntax })
29573 }
29574 SyntaxKind::FOREIGN_KEY_CONSTRAINT => {
29575 Constraint::ForeignKeyConstraint(ForeignKeyConstraint { syntax })
29576 }
29577 SyntaxKind::GENERATED_CONSTRAINT => {
29578 Constraint::GeneratedConstraint(GeneratedConstraint { syntax })
29579 }
29580 SyntaxKind::NOT_NULL_CONSTRAINT => {
29581 Constraint::NotNullConstraint(NotNullConstraint { syntax })
29582 }
29583 SyntaxKind::NULL_CONSTRAINT => Constraint::NullConstraint(NullConstraint { syntax }),
29584 SyntaxKind::PRIMARY_KEY_CONSTRAINT => {
29585 Constraint::PrimaryKeyConstraint(PrimaryKeyConstraint { syntax })
29586 }
29587 SyntaxKind::REFERENCES_CONSTRAINT => {
29588 Constraint::ReferencesConstraint(ReferencesConstraint { syntax })
29589 }
29590 SyntaxKind::UNIQUE_CONSTRAINT => {
29591 Constraint::UniqueConstraint(UniqueConstraint { syntax })
29592 }
29593 _ => {
29594 return None;
29595 }
29596 };
29597 Some(res)
29598 }
29599 #[inline]
29600 fn syntax(&self) -> &SyntaxNode {
29601 match self {
29602 Constraint::CheckConstraint(it) => &it.syntax,
29603 Constraint::DefaultConstraint(it) => &it.syntax,
29604 Constraint::ForeignKeyConstraint(it) => &it.syntax,
29605 Constraint::GeneratedConstraint(it) => &it.syntax,
29606 Constraint::NotNullConstraint(it) => &it.syntax,
29607 Constraint::NullConstraint(it) => &it.syntax,
29608 Constraint::PrimaryKeyConstraint(it) => &it.syntax,
29609 Constraint::ReferencesConstraint(it) => &it.syntax,
29610 Constraint::UniqueConstraint(it) => &it.syntax,
29611 }
29612 }
29613}
29614impl From<CheckConstraint> for Constraint {
29615 #[inline]
29616 fn from(node: CheckConstraint) -> Constraint {
29617 Constraint::CheckConstraint(node)
29618 }
29619}
29620impl From<DefaultConstraint> for Constraint {
29621 #[inline]
29622 fn from(node: DefaultConstraint) -> Constraint {
29623 Constraint::DefaultConstraint(node)
29624 }
29625}
29626impl From<ForeignKeyConstraint> for Constraint {
29627 #[inline]
29628 fn from(node: ForeignKeyConstraint) -> Constraint {
29629 Constraint::ForeignKeyConstraint(node)
29630 }
29631}
29632impl From<GeneratedConstraint> for Constraint {
29633 #[inline]
29634 fn from(node: GeneratedConstraint) -> Constraint {
29635 Constraint::GeneratedConstraint(node)
29636 }
29637}
29638impl From<NotNullConstraint> for Constraint {
29639 #[inline]
29640 fn from(node: NotNullConstraint) -> Constraint {
29641 Constraint::NotNullConstraint(node)
29642 }
29643}
29644impl From<NullConstraint> for Constraint {
29645 #[inline]
29646 fn from(node: NullConstraint) -> Constraint {
29647 Constraint::NullConstraint(node)
29648 }
29649}
29650impl From<PrimaryKeyConstraint> for Constraint {
29651 #[inline]
29652 fn from(node: PrimaryKeyConstraint) -> Constraint {
29653 Constraint::PrimaryKeyConstraint(node)
29654 }
29655}
29656impl From<ReferencesConstraint> for Constraint {
29657 #[inline]
29658 fn from(node: ReferencesConstraint) -> Constraint {
29659 Constraint::ReferencesConstraint(node)
29660 }
29661}
29662impl From<UniqueConstraint> for Constraint {
29663 #[inline]
29664 fn from(node: UniqueConstraint) -> Constraint {
29665 Constraint::UniqueConstraint(node)
29666 }
29667}
29668impl AstNode for ExplainStmt {
29669 #[inline]
29670 fn can_cast(kind: SyntaxKind) -> bool {
29671 matches!(
29672 kind,
29673 SyntaxKind::COMPOUND_SELECT
29674 | SyntaxKind::CREATE_MATERIALIZED_VIEW
29675 | SyntaxKind::CREATE_TABLE_AS
29676 | SyntaxKind::DECLARE
29677 | SyntaxKind::DELETE
29678 | SyntaxKind::EXECUTE
29679 | SyntaxKind::INSERT
29680 | SyntaxKind::MERGE
29681 | SyntaxKind::PAREN_SELECT
29682 | SyntaxKind::SELECT
29683 | SyntaxKind::SELECT_INTO
29684 | SyntaxKind::TABLE
29685 | SyntaxKind::UPDATE
29686 | SyntaxKind::VALUES
29687 )
29688 }
29689 #[inline]
29690 fn cast(syntax: SyntaxNode) -> Option<Self> {
29691 let res = match syntax.kind() {
29692 SyntaxKind::COMPOUND_SELECT => ExplainStmt::CompoundSelect(CompoundSelect { syntax }),
29693 SyntaxKind::CREATE_MATERIALIZED_VIEW => {
29694 ExplainStmt::CreateMaterializedView(CreateMaterializedView { syntax })
29695 }
29696 SyntaxKind::CREATE_TABLE_AS => ExplainStmt::CreateTableAs(CreateTableAs { syntax }),
29697 SyntaxKind::DECLARE => ExplainStmt::Declare(Declare { syntax }),
29698 SyntaxKind::DELETE => ExplainStmt::Delete(Delete { syntax }),
29699 SyntaxKind::EXECUTE => ExplainStmt::Execute(Execute { syntax }),
29700 SyntaxKind::INSERT => ExplainStmt::Insert(Insert { syntax }),
29701 SyntaxKind::MERGE => ExplainStmt::Merge(Merge { syntax }),
29702 SyntaxKind::PAREN_SELECT => ExplainStmt::ParenSelect(ParenSelect { syntax }),
29703 SyntaxKind::SELECT => ExplainStmt::Select(Select { syntax }),
29704 SyntaxKind::SELECT_INTO => ExplainStmt::SelectInto(SelectInto { syntax }),
29705 SyntaxKind::TABLE => ExplainStmt::Table(Table { syntax }),
29706 SyntaxKind::UPDATE => ExplainStmt::Update(Update { syntax }),
29707 SyntaxKind::VALUES => ExplainStmt::Values(Values { syntax }),
29708 _ => {
29709 return None;
29710 }
29711 };
29712 Some(res)
29713 }
29714 #[inline]
29715 fn syntax(&self) -> &SyntaxNode {
29716 match self {
29717 ExplainStmt::CompoundSelect(it) => &it.syntax,
29718 ExplainStmt::CreateMaterializedView(it) => &it.syntax,
29719 ExplainStmt::CreateTableAs(it) => &it.syntax,
29720 ExplainStmt::Declare(it) => &it.syntax,
29721 ExplainStmt::Delete(it) => &it.syntax,
29722 ExplainStmt::Execute(it) => &it.syntax,
29723 ExplainStmt::Insert(it) => &it.syntax,
29724 ExplainStmt::Merge(it) => &it.syntax,
29725 ExplainStmt::ParenSelect(it) => &it.syntax,
29726 ExplainStmt::Select(it) => &it.syntax,
29727 ExplainStmt::SelectInto(it) => &it.syntax,
29728 ExplainStmt::Table(it) => &it.syntax,
29729 ExplainStmt::Update(it) => &it.syntax,
29730 ExplainStmt::Values(it) => &it.syntax,
29731 }
29732 }
29733}
29734impl From<CompoundSelect> for ExplainStmt {
29735 #[inline]
29736 fn from(node: CompoundSelect) -> ExplainStmt {
29737 ExplainStmt::CompoundSelect(node)
29738 }
29739}
29740impl From<CreateMaterializedView> for ExplainStmt {
29741 #[inline]
29742 fn from(node: CreateMaterializedView) -> ExplainStmt {
29743 ExplainStmt::CreateMaterializedView(node)
29744 }
29745}
29746impl From<CreateTableAs> for ExplainStmt {
29747 #[inline]
29748 fn from(node: CreateTableAs) -> ExplainStmt {
29749 ExplainStmt::CreateTableAs(node)
29750 }
29751}
29752impl From<Declare> for ExplainStmt {
29753 #[inline]
29754 fn from(node: Declare) -> ExplainStmt {
29755 ExplainStmt::Declare(node)
29756 }
29757}
29758impl From<Delete> for ExplainStmt {
29759 #[inline]
29760 fn from(node: Delete) -> ExplainStmt {
29761 ExplainStmt::Delete(node)
29762 }
29763}
29764impl From<Execute> for ExplainStmt {
29765 #[inline]
29766 fn from(node: Execute) -> ExplainStmt {
29767 ExplainStmt::Execute(node)
29768 }
29769}
29770impl From<Insert> for ExplainStmt {
29771 #[inline]
29772 fn from(node: Insert) -> ExplainStmt {
29773 ExplainStmt::Insert(node)
29774 }
29775}
29776impl From<Merge> for ExplainStmt {
29777 #[inline]
29778 fn from(node: Merge) -> ExplainStmt {
29779 ExplainStmt::Merge(node)
29780 }
29781}
29782impl From<ParenSelect> for ExplainStmt {
29783 #[inline]
29784 fn from(node: ParenSelect) -> ExplainStmt {
29785 ExplainStmt::ParenSelect(node)
29786 }
29787}
29788impl From<Select> for ExplainStmt {
29789 #[inline]
29790 fn from(node: Select) -> ExplainStmt {
29791 ExplainStmt::Select(node)
29792 }
29793}
29794impl From<SelectInto> for ExplainStmt {
29795 #[inline]
29796 fn from(node: SelectInto) -> ExplainStmt {
29797 ExplainStmt::SelectInto(node)
29798 }
29799}
29800impl From<Table> for ExplainStmt {
29801 #[inline]
29802 fn from(node: Table) -> ExplainStmt {
29803 ExplainStmt::Table(node)
29804 }
29805}
29806impl From<Update> for ExplainStmt {
29807 #[inline]
29808 fn from(node: Update) -> ExplainStmt {
29809 ExplainStmt::Update(node)
29810 }
29811}
29812impl From<Values> for ExplainStmt {
29813 #[inline]
29814 fn from(node: Values) -> ExplainStmt {
29815 ExplainStmt::Values(node)
29816 }
29817}
29818impl AstNode for Expr {
29819 #[inline]
29820 fn can_cast(kind: SyntaxKind) -> bool {
29821 matches!(
29822 kind,
29823 SyntaxKind::ARRAY_EXPR
29824 | SyntaxKind::BETWEEN_EXPR
29825 | SyntaxKind::BIN_EXPR
29826 | SyntaxKind::CALL_EXPR
29827 | SyntaxKind::CASE_EXPR
29828 | SyntaxKind::CAST_EXPR
29829 | SyntaxKind::FIELD_EXPR
29830 | SyntaxKind::INDEX_EXPR
29831 | SyntaxKind::LITERAL
29832 | SyntaxKind::NAME_REF
29833 | SyntaxKind::PAREN_EXPR
29834 | SyntaxKind::POSTFIX_EXPR
29835 | SyntaxKind::PREFIX_EXPR
29836 | SyntaxKind::SLICE_EXPR
29837 | SyntaxKind::TUPLE_EXPR
29838 )
29839 }
29840 #[inline]
29841 fn cast(syntax: SyntaxNode) -> Option<Self> {
29842 let res = match syntax.kind() {
29843 SyntaxKind::ARRAY_EXPR => Expr::ArrayExpr(ArrayExpr { syntax }),
29844 SyntaxKind::BETWEEN_EXPR => Expr::BetweenExpr(BetweenExpr { syntax }),
29845 SyntaxKind::BIN_EXPR => Expr::BinExpr(BinExpr { syntax }),
29846 SyntaxKind::CALL_EXPR => Expr::CallExpr(CallExpr { syntax }),
29847 SyntaxKind::CASE_EXPR => Expr::CaseExpr(CaseExpr { syntax }),
29848 SyntaxKind::CAST_EXPR => Expr::CastExpr(CastExpr { syntax }),
29849 SyntaxKind::FIELD_EXPR => Expr::FieldExpr(FieldExpr { syntax }),
29850 SyntaxKind::INDEX_EXPR => Expr::IndexExpr(IndexExpr { syntax }),
29851 SyntaxKind::LITERAL => Expr::Literal(Literal { syntax }),
29852 SyntaxKind::NAME_REF => Expr::NameRef(NameRef { syntax }),
29853 SyntaxKind::PAREN_EXPR => Expr::ParenExpr(ParenExpr { syntax }),
29854 SyntaxKind::POSTFIX_EXPR => Expr::PostfixExpr(PostfixExpr { syntax }),
29855 SyntaxKind::PREFIX_EXPR => Expr::PrefixExpr(PrefixExpr { syntax }),
29856 SyntaxKind::SLICE_EXPR => Expr::SliceExpr(SliceExpr { syntax }),
29857 SyntaxKind::TUPLE_EXPR => Expr::TupleExpr(TupleExpr { syntax }),
29858 _ => {
29859 return None;
29860 }
29861 };
29862 Some(res)
29863 }
29864 #[inline]
29865 fn syntax(&self) -> &SyntaxNode {
29866 match self {
29867 Expr::ArrayExpr(it) => &it.syntax,
29868 Expr::BetweenExpr(it) => &it.syntax,
29869 Expr::BinExpr(it) => &it.syntax,
29870 Expr::CallExpr(it) => &it.syntax,
29871 Expr::CaseExpr(it) => &it.syntax,
29872 Expr::CastExpr(it) => &it.syntax,
29873 Expr::FieldExpr(it) => &it.syntax,
29874 Expr::IndexExpr(it) => &it.syntax,
29875 Expr::Literal(it) => &it.syntax,
29876 Expr::NameRef(it) => &it.syntax,
29877 Expr::ParenExpr(it) => &it.syntax,
29878 Expr::PostfixExpr(it) => &it.syntax,
29879 Expr::PrefixExpr(it) => &it.syntax,
29880 Expr::SliceExpr(it) => &it.syntax,
29881 Expr::TupleExpr(it) => &it.syntax,
29882 }
29883 }
29884}
29885impl From<ArrayExpr> for Expr {
29886 #[inline]
29887 fn from(node: ArrayExpr) -> Expr {
29888 Expr::ArrayExpr(node)
29889 }
29890}
29891impl From<BetweenExpr> for Expr {
29892 #[inline]
29893 fn from(node: BetweenExpr) -> Expr {
29894 Expr::BetweenExpr(node)
29895 }
29896}
29897impl From<BinExpr> for Expr {
29898 #[inline]
29899 fn from(node: BinExpr) -> Expr {
29900 Expr::BinExpr(node)
29901 }
29902}
29903impl From<CallExpr> for Expr {
29904 #[inline]
29905 fn from(node: CallExpr) -> Expr {
29906 Expr::CallExpr(node)
29907 }
29908}
29909impl From<CaseExpr> for Expr {
29910 #[inline]
29911 fn from(node: CaseExpr) -> Expr {
29912 Expr::CaseExpr(node)
29913 }
29914}
29915impl From<CastExpr> for Expr {
29916 #[inline]
29917 fn from(node: CastExpr) -> Expr {
29918 Expr::CastExpr(node)
29919 }
29920}
29921impl From<FieldExpr> for Expr {
29922 #[inline]
29923 fn from(node: FieldExpr) -> Expr {
29924 Expr::FieldExpr(node)
29925 }
29926}
29927impl From<IndexExpr> for Expr {
29928 #[inline]
29929 fn from(node: IndexExpr) -> Expr {
29930 Expr::IndexExpr(node)
29931 }
29932}
29933impl From<Literal> for Expr {
29934 #[inline]
29935 fn from(node: Literal) -> Expr {
29936 Expr::Literal(node)
29937 }
29938}
29939impl From<NameRef> for Expr {
29940 #[inline]
29941 fn from(node: NameRef) -> Expr {
29942 Expr::NameRef(node)
29943 }
29944}
29945impl From<ParenExpr> for Expr {
29946 #[inline]
29947 fn from(node: ParenExpr) -> Expr {
29948 Expr::ParenExpr(node)
29949 }
29950}
29951impl From<PostfixExpr> for Expr {
29952 #[inline]
29953 fn from(node: PostfixExpr) -> Expr {
29954 Expr::PostfixExpr(node)
29955 }
29956}
29957impl From<PrefixExpr> for Expr {
29958 #[inline]
29959 fn from(node: PrefixExpr) -> Expr {
29960 Expr::PrefixExpr(node)
29961 }
29962}
29963impl From<SliceExpr> for Expr {
29964 #[inline]
29965 fn from(node: SliceExpr) -> Expr {
29966 Expr::SliceExpr(node)
29967 }
29968}
29969impl From<TupleExpr> for Expr {
29970 #[inline]
29971 fn from(node: TupleExpr) -> Expr {
29972 Expr::TupleExpr(node)
29973 }
29974}
29975impl AstNode for FuncOption {
29976 #[inline]
29977 fn can_cast(kind: SyntaxKind) -> bool {
29978 matches!(
29979 kind,
29980 SyntaxKind::AS_FUNC_OPTION
29981 | SyntaxKind::BEGIN_FUNC_OPTION_LIST
29982 | SyntaxKind::COST_FUNC_OPTION
29983 | SyntaxKind::LANGUAGE_FUNC_OPTION
29984 | SyntaxKind::LEAKPROOF_FUNC_OPTION
29985 | SyntaxKind::PARALLEL_FUNC_OPTION
29986 | SyntaxKind::RESET_FUNC_OPTION
29987 | SyntaxKind::RETURN_FUNC_OPTION
29988 | SyntaxKind::ROWS_FUNC_OPTION
29989 | SyntaxKind::SECURITY_FUNC_OPTION
29990 | SyntaxKind::SET_FUNC_OPTION
29991 | SyntaxKind::STRICT_FUNC_OPTION
29992 | SyntaxKind::SUPPORT_FUNC_OPTION
29993 | SyntaxKind::TRANSFORM_FUNC_OPTION
29994 | SyntaxKind::VOLATILITY_FUNC_OPTION
29995 | SyntaxKind::WINDOW_FUNC_OPTION
29996 )
29997 }
29998 #[inline]
29999 fn cast(syntax: SyntaxNode) -> Option<Self> {
30000 let res = match syntax.kind() {
30001 SyntaxKind::AS_FUNC_OPTION => FuncOption::AsFuncOption(AsFuncOption { syntax }),
30002 SyntaxKind::BEGIN_FUNC_OPTION_LIST => {
30003 FuncOption::BeginFuncOptionList(BeginFuncOptionList { syntax })
30004 }
30005 SyntaxKind::COST_FUNC_OPTION => FuncOption::CostFuncOption(CostFuncOption { syntax }),
30006 SyntaxKind::LANGUAGE_FUNC_OPTION => {
30007 FuncOption::LanguageFuncOption(LanguageFuncOption { syntax })
30008 }
30009 SyntaxKind::LEAKPROOF_FUNC_OPTION => {
30010 FuncOption::LeakproofFuncOption(LeakproofFuncOption { syntax })
30011 }
30012 SyntaxKind::PARALLEL_FUNC_OPTION => {
30013 FuncOption::ParallelFuncOption(ParallelFuncOption { syntax })
30014 }
30015 SyntaxKind::RESET_FUNC_OPTION => {
30016 FuncOption::ResetFuncOption(ResetFuncOption { syntax })
30017 }
30018 SyntaxKind::RETURN_FUNC_OPTION => {
30019 FuncOption::ReturnFuncOption(ReturnFuncOption { syntax })
30020 }
30021 SyntaxKind::ROWS_FUNC_OPTION => FuncOption::RowsFuncOption(RowsFuncOption { syntax }),
30022 SyntaxKind::SECURITY_FUNC_OPTION => {
30023 FuncOption::SecurityFuncOption(SecurityFuncOption { syntax })
30024 }
30025 SyntaxKind::SET_FUNC_OPTION => FuncOption::SetFuncOption(SetFuncOption { syntax }),
30026 SyntaxKind::STRICT_FUNC_OPTION => {
30027 FuncOption::StrictFuncOption(StrictFuncOption { syntax })
30028 }
30029 SyntaxKind::SUPPORT_FUNC_OPTION => {
30030 FuncOption::SupportFuncOption(SupportFuncOption { syntax })
30031 }
30032 SyntaxKind::TRANSFORM_FUNC_OPTION => {
30033 FuncOption::TransformFuncOption(TransformFuncOption { syntax })
30034 }
30035 SyntaxKind::VOLATILITY_FUNC_OPTION => {
30036 FuncOption::VolatilityFuncOption(VolatilityFuncOption { syntax })
30037 }
30038 SyntaxKind::WINDOW_FUNC_OPTION => {
30039 FuncOption::WindowFuncOption(WindowFuncOption { syntax })
30040 }
30041 _ => {
30042 return None;
30043 }
30044 };
30045 Some(res)
30046 }
30047 #[inline]
30048 fn syntax(&self) -> &SyntaxNode {
30049 match self {
30050 FuncOption::AsFuncOption(it) => &it.syntax,
30051 FuncOption::BeginFuncOptionList(it) => &it.syntax,
30052 FuncOption::CostFuncOption(it) => &it.syntax,
30053 FuncOption::LanguageFuncOption(it) => &it.syntax,
30054 FuncOption::LeakproofFuncOption(it) => &it.syntax,
30055 FuncOption::ParallelFuncOption(it) => &it.syntax,
30056 FuncOption::ResetFuncOption(it) => &it.syntax,
30057 FuncOption::ReturnFuncOption(it) => &it.syntax,
30058 FuncOption::RowsFuncOption(it) => &it.syntax,
30059 FuncOption::SecurityFuncOption(it) => &it.syntax,
30060 FuncOption::SetFuncOption(it) => &it.syntax,
30061 FuncOption::StrictFuncOption(it) => &it.syntax,
30062 FuncOption::SupportFuncOption(it) => &it.syntax,
30063 FuncOption::TransformFuncOption(it) => &it.syntax,
30064 FuncOption::VolatilityFuncOption(it) => &it.syntax,
30065 FuncOption::WindowFuncOption(it) => &it.syntax,
30066 }
30067 }
30068}
30069impl From<AsFuncOption> for FuncOption {
30070 #[inline]
30071 fn from(node: AsFuncOption) -> FuncOption {
30072 FuncOption::AsFuncOption(node)
30073 }
30074}
30075impl From<BeginFuncOptionList> for FuncOption {
30076 #[inline]
30077 fn from(node: BeginFuncOptionList) -> FuncOption {
30078 FuncOption::BeginFuncOptionList(node)
30079 }
30080}
30081impl From<CostFuncOption> for FuncOption {
30082 #[inline]
30083 fn from(node: CostFuncOption) -> FuncOption {
30084 FuncOption::CostFuncOption(node)
30085 }
30086}
30087impl From<LanguageFuncOption> for FuncOption {
30088 #[inline]
30089 fn from(node: LanguageFuncOption) -> FuncOption {
30090 FuncOption::LanguageFuncOption(node)
30091 }
30092}
30093impl From<LeakproofFuncOption> for FuncOption {
30094 #[inline]
30095 fn from(node: LeakproofFuncOption) -> FuncOption {
30096 FuncOption::LeakproofFuncOption(node)
30097 }
30098}
30099impl From<ParallelFuncOption> for FuncOption {
30100 #[inline]
30101 fn from(node: ParallelFuncOption) -> FuncOption {
30102 FuncOption::ParallelFuncOption(node)
30103 }
30104}
30105impl From<ResetFuncOption> for FuncOption {
30106 #[inline]
30107 fn from(node: ResetFuncOption) -> FuncOption {
30108 FuncOption::ResetFuncOption(node)
30109 }
30110}
30111impl From<ReturnFuncOption> for FuncOption {
30112 #[inline]
30113 fn from(node: ReturnFuncOption) -> FuncOption {
30114 FuncOption::ReturnFuncOption(node)
30115 }
30116}
30117impl From<RowsFuncOption> for FuncOption {
30118 #[inline]
30119 fn from(node: RowsFuncOption) -> FuncOption {
30120 FuncOption::RowsFuncOption(node)
30121 }
30122}
30123impl From<SecurityFuncOption> for FuncOption {
30124 #[inline]
30125 fn from(node: SecurityFuncOption) -> FuncOption {
30126 FuncOption::SecurityFuncOption(node)
30127 }
30128}
30129impl From<SetFuncOption> for FuncOption {
30130 #[inline]
30131 fn from(node: SetFuncOption) -> FuncOption {
30132 FuncOption::SetFuncOption(node)
30133 }
30134}
30135impl From<StrictFuncOption> for FuncOption {
30136 #[inline]
30137 fn from(node: StrictFuncOption) -> FuncOption {
30138 FuncOption::StrictFuncOption(node)
30139 }
30140}
30141impl From<SupportFuncOption> for FuncOption {
30142 #[inline]
30143 fn from(node: SupportFuncOption) -> FuncOption {
30144 FuncOption::SupportFuncOption(node)
30145 }
30146}
30147impl From<TransformFuncOption> for FuncOption {
30148 #[inline]
30149 fn from(node: TransformFuncOption) -> FuncOption {
30150 FuncOption::TransformFuncOption(node)
30151 }
30152}
30153impl From<VolatilityFuncOption> for FuncOption {
30154 #[inline]
30155 fn from(node: VolatilityFuncOption) -> FuncOption {
30156 FuncOption::VolatilityFuncOption(node)
30157 }
30158}
30159impl From<WindowFuncOption> for FuncOption {
30160 #[inline]
30161 fn from(node: WindowFuncOption) -> FuncOption {
30162 FuncOption::WindowFuncOption(node)
30163 }
30164}
30165impl AstNode for GroupBy {
30166 #[inline]
30167 fn can_cast(kind: SyntaxKind) -> bool {
30168 matches!(
30169 kind,
30170 SyntaxKind::GROUPING_CUBE
30171 | SyntaxKind::GROUPING_EXPR
30172 | SyntaxKind::GROUPING_ROLLUP
30173 | SyntaxKind::GROUPING_SETS
30174 )
30175 }
30176 #[inline]
30177 fn cast(syntax: SyntaxNode) -> Option<Self> {
30178 let res = match syntax.kind() {
30179 SyntaxKind::GROUPING_CUBE => GroupBy::GroupingCube(GroupingCube { syntax }),
30180 SyntaxKind::GROUPING_EXPR => GroupBy::GroupingExpr(GroupingExpr { syntax }),
30181 SyntaxKind::GROUPING_ROLLUP => GroupBy::GroupingRollup(GroupingRollup { syntax }),
30182 SyntaxKind::GROUPING_SETS => GroupBy::GroupingSets(GroupingSets { syntax }),
30183 _ => {
30184 return None;
30185 }
30186 };
30187 Some(res)
30188 }
30189 #[inline]
30190 fn syntax(&self) -> &SyntaxNode {
30191 match self {
30192 GroupBy::GroupingCube(it) => &it.syntax,
30193 GroupBy::GroupingExpr(it) => &it.syntax,
30194 GroupBy::GroupingRollup(it) => &it.syntax,
30195 GroupBy::GroupingSets(it) => &it.syntax,
30196 }
30197 }
30198}
30199impl From<GroupingCube> for GroupBy {
30200 #[inline]
30201 fn from(node: GroupingCube) -> GroupBy {
30202 GroupBy::GroupingCube(node)
30203 }
30204}
30205impl From<GroupingExpr> for GroupBy {
30206 #[inline]
30207 fn from(node: GroupingExpr) -> GroupBy {
30208 GroupBy::GroupingExpr(node)
30209 }
30210}
30211impl From<GroupingRollup> for GroupBy {
30212 #[inline]
30213 fn from(node: GroupingRollup) -> GroupBy {
30214 GroupBy::GroupingRollup(node)
30215 }
30216}
30217impl From<GroupingSets> for GroupBy {
30218 #[inline]
30219 fn from(node: GroupingSets) -> GroupBy {
30220 GroupBy::GroupingSets(node)
30221 }
30222}
30223impl AstNode for JoinType {
30224 #[inline]
30225 fn can_cast(kind: SyntaxKind) -> bool {
30226 matches!(
30227 kind,
30228 SyntaxKind::JOIN_CROSS
30229 | SyntaxKind::JOIN_FULL
30230 | SyntaxKind::JOIN_INNER
30231 | SyntaxKind::JOIN_LEFT
30232 | SyntaxKind::JOIN_RIGHT
30233 )
30234 }
30235 #[inline]
30236 fn cast(syntax: SyntaxNode) -> Option<Self> {
30237 let res = match syntax.kind() {
30238 SyntaxKind::JOIN_CROSS => JoinType::JoinCross(JoinCross { syntax }),
30239 SyntaxKind::JOIN_FULL => JoinType::JoinFull(JoinFull { syntax }),
30240 SyntaxKind::JOIN_INNER => JoinType::JoinInner(JoinInner { syntax }),
30241 SyntaxKind::JOIN_LEFT => JoinType::JoinLeft(JoinLeft { syntax }),
30242 SyntaxKind::JOIN_RIGHT => JoinType::JoinRight(JoinRight { syntax }),
30243 _ => {
30244 return None;
30245 }
30246 };
30247 Some(res)
30248 }
30249 #[inline]
30250 fn syntax(&self) -> &SyntaxNode {
30251 match self {
30252 JoinType::JoinCross(it) => &it.syntax,
30253 JoinType::JoinFull(it) => &it.syntax,
30254 JoinType::JoinInner(it) => &it.syntax,
30255 JoinType::JoinLeft(it) => &it.syntax,
30256 JoinType::JoinRight(it) => &it.syntax,
30257 }
30258 }
30259}
30260impl From<JoinCross> for JoinType {
30261 #[inline]
30262 fn from(node: JoinCross) -> JoinType {
30263 JoinType::JoinCross(node)
30264 }
30265}
30266impl From<JoinFull> for JoinType {
30267 #[inline]
30268 fn from(node: JoinFull) -> JoinType {
30269 JoinType::JoinFull(node)
30270 }
30271}
30272impl From<JoinInner> for JoinType {
30273 #[inline]
30274 fn from(node: JoinInner) -> JoinType {
30275 JoinType::JoinInner(node)
30276 }
30277}
30278impl From<JoinLeft> for JoinType {
30279 #[inline]
30280 fn from(node: JoinLeft) -> JoinType {
30281 JoinType::JoinLeft(node)
30282 }
30283}
30284impl From<JoinRight> for JoinType {
30285 #[inline]
30286 fn from(node: JoinRight) -> JoinType {
30287 JoinType::JoinRight(node)
30288 }
30289}
30290impl AstNode for JsonBehavior {
30291 #[inline]
30292 fn can_cast(kind: SyntaxKind) -> bool {
30293 matches!(
30294 kind,
30295 SyntaxKind::JSON_BEHAVIOR_DEFAULT
30296 | SyntaxKind::JSON_BEHAVIOR_EMPTY_ARRAY
30297 | SyntaxKind::JSON_BEHAVIOR_EMPTY_OBJECT
30298 | SyntaxKind::JSON_BEHAVIOR_ERROR
30299 | SyntaxKind::JSON_BEHAVIOR_FALSE
30300 | SyntaxKind::JSON_BEHAVIOR_NULL
30301 | SyntaxKind::JSON_BEHAVIOR_TRUE
30302 | SyntaxKind::JSON_BEHAVIOR_UNKNOWN
30303 )
30304 }
30305 #[inline]
30306 fn cast(syntax: SyntaxNode) -> Option<Self> {
30307 let res = match syntax.kind() {
30308 SyntaxKind::JSON_BEHAVIOR_DEFAULT => {
30309 JsonBehavior::JsonBehaviorDefault(JsonBehaviorDefault { syntax })
30310 }
30311 SyntaxKind::JSON_BEHAVIOR_EMPTY_ARRAY => {
30312 JsonBehavior::JsonBehaviorEmptyArray(JsonBehaviorEmptyArray { syntax })
30313 }
30314 SyntaxKind::JSON_BEHAVIOR_EMPTY_OBJECT => {
30315 JsonBehavior::JsonBehaviorEmptyObject(JsonBehaviorEmptyObject { syntax })
30316 }
30317 SyntaxKind::JSON_BEHAVIOR_ERROR => {
30318 JsonBehavior::JsonBehaviorError(JsonBehaviorError { syntax })
30319 }
30320 SyntaxKind::JSON_BEHAVIOR_FALSE => {
30321 JsonBehavior::JsonBehaviorFalse(JsonBehaviorFalse { syntax })
30322 }
30323 SyntaxKind::JSON_BEHAVIOR_NULL => {
30324 JsonBehavior::JsonBehaviorNull(JsonBehaviorNull { syntax })
30325 }
30326 SyntaxKind::JSON_BEHAVIOR_TRUE => {
30327 JsonBehavior::JsonBehaviorTrue(JsonBehaviorTrue { syntax })
30328 }
30329 SyntaxKind::JSON_BEHAVIOR_UNKNOWN => {
30330 JsonBehavior::JsonBehaviorUnknown(JsonBehaviorUnknown { syntax })
30331 }
30332 _ => {
30333 return None;
30334 }
30335 };
30336 Some(res)
30337 }
30338 #[inline]
30339 fn syntax(&self) -> &SyntaxNode {
30340 match self {
30341 JsonBehavior::JsonBehaviorDefault(it) => &it.syntax,
30342 JsonBehavior::JsonBehaviorEmptyArray(it) => &it.syntax,
30343 JsonBehavior::JsonBehaviorEmptyObject(it) => &it.syntax,
30344 JsonBehavior::JsonBehaviorError(it) => &it.syntax,
30345 JsonBehavior::JsonBehaviorFalse(it) => &it.syntax,
30346 JsonBehavior::JsonBehaviorNull(it) => &it.syntax,
30347 JsonBehavior::JsonBehaviorTrue(it) => &it.syntax,
30348 JsonBehavior::JsonBehaviorUnknown(it) => &it.syntax,
30349 }
30350 }
30351}
30352impl From<JsonBehaviorDefault> for JsonBehavior {
30353 #[inline]
30354 fn from(node: JsonBehaviorDefault) -> JsonBehavior {
30355 JsonBehavior::JsonBehaviorDefault(node)
30356 }
30357}
30358impl From<JsonBehaviorEmptyArray> for JsonBehavior {
30359 #[inline]
30360 fn from(node: JsonBehaviorEmptyArray) -> JsonBehavior {
30361 JsonBehavior::JsonBehaviorEmptyArray(node)
30362 }
30363}
30364impl From<JsonBehaviorEmptyObject> for JsonBehavior {
30365 #[inline]
30366 fn from(node: JsonBehaviorEmptyObject) -> JsonBehavior {
30367 JsonBehavior::JsonBehaviorEmptyObject(node)
30368 }
30369}
30370impl From<JsonBehaviorError> for JsonBehavior {
30371 #[inline]
30372 fn from(node: JsonBehaviorError) -> JsonBehavior {
30373 JsonBehavior::JsonBehaviorError(node)
30374 }
30375}
30376impl From<JsonBehaviorFalse> for JsonBehavior {
30377 #[inline]
30378 fn from(node: JsonBehaviorFalse) -> JsonBehavior {
30379 JsonBehavior::JsonBehaviorFalse(node)
30380 }
30381}
30382impl From<JsonBehaviorNull> for JsonBehavior {
30383 #[inline]
30384 fn from(node: JsonBehaviorNull) -> JsonBehavior {
30385 JsonBehavior::JsonBehaviorNull(node)
30386 }
30387}
30388impl From<JsonBehaviorTrue> for JsonBehavior {
30389 #[inline]
30390 fn from(node: JsonBehaviorTrue) -> JsonBehavior {
30391 JsonBehavior::JsonBehaviorTrue(node)
30392 }
30393}
30394impl From<JsonBehaviorUnknown> for JsonBehavior {
30395 #[inline]
30396 fn from(node: JsonBehaviorUnknown) -> JsonBehavior {
30397 JsonBehavior::JsonBehaviorUnknown(node)
30398 }
30399}
30400impl AstNode for MatchType {
30401 #[inline]
30402 fn can_cast(kind: SyntaxKind) -> bool {
30403 matches!(
30404 kind,
30405 SyntaxKind::MATCH_FULL | SyntaxKind::MATCH_PARTIAL | SyntaxKind::MATCH_SIMPLE
30406 )
30407 }
30408 #[inline]
30409 fn cast(syntax: SyntaxNode) -> Option<Self> {
30410 let res = match syntax.kind() {
30411 SyntaxKind::MATCH_FULL => MatchType::MatchFull(MatchFull { syntax }),
30412 SyntaxKind::MATCH_PARTIAL => MatchType::MatchPartial(MatchPartial { syntax }),
30413 SyntaxKind::MATCH_SIMPLE => MatchType::MatchSimple(MatchSimple { syntax }),
30414 _ => {
30415 return None;
30416 }
30417 };
30418 Some(res)
30419 }
30420 #[inline]
30421 fn syntax(&self) -> &SyntaxNode {
30422 match self {
30423 MatchType::MatchFull(it) => &it.syntax,
30424 MatchType::MatchPartial(it) => &it.syntax,
30425 MatchType::MatchSimple(it) => &it.syntax,
30426 }
30427 }
30428}
30429impl From<MatchFull> for MatchType {
30430 #[inline]
30431 fn from(node: MatchFull) -> MatchType {
30432 MatchType::MatchFull(node)
30433 }
30434}
30435impl From<MatchPartial> for MatchType {
30436 #[inline]
30437 fn from(node: MatchPartial) -> MatchType {
30438 MatchType::MatchPartial(node)
30439 }
30440}
30441impl From<MatchSimple> for MatchType {
30442 #[inline]
30443 fn from(node: MatchSimple) -> MatchType {
30444 MatchType::MatchSimple(node)
30445 }
30446}
30447impl AstNode for MergeAction {
30448 #[inline]
30449 fn can_cast(kind: SyntaxKind) -> bool {
30450 matches!(
30451 kind,
30452 SyntaxKind::MERGE_DELETE
30453 | SyntaxKind::MERGE_DO_NOTHING
30454 | SyntaxKind::MERGE_INSERT
30455 | SyntaxKind::MERGE_UPDATE
30456 )
30457 }
30458 #[inline]
30459 fn cast(syntax: SyntaxNode) -> Option<Self> {
30460 let res = match syntax.kind() {
30461 SyntaxKind::MERGE_DELETE => MergeAction::MergeDelete(MergeDelete { syntax }),
30462 SyntaxKind::MERGE_DO_NOTHING => MergeAction::MergeDoNothing(MergeDoNothing { syntax }),
30463 SyntaxKind::MERGE_INSERT => MergeAction::MergeInsert(MergeInsert { syntax }),
30464 SyntaxKind::MERGE_UPDATE => MergeAction::MergeUpdate(MergeUpdate { syntax }),
30465 _ => {
30466 return None;
30467 }
30468 };
30469 Some(res)
30470 }
30471 #[inline]
30472 fn syntax(&self) -> &SyntaxNode {
30473 match self {
30474 MergeAction::MergeDelete(it) => &it.syntax,
30475 MergeAction::MergeDoNothing(it) => &it.syntax,
30476 MergeAction::MergeInsert(it) => &it.syntax,
30477 MergeAction::MergeUpdate(it) => &it.syntax,
30478 }
30479 }
30480}
30481impl From<MergeDelete> for MergeAction {
30482 #[inline]
30483 fn from(node: MergeDelete) -> MergeAction {
30484 MergeAction::MergeDelete(node)
30485 }
30486}
30487impl From<MergeDoNothing> for MergeAction {
30488 #[inline]
30489 fn from(node: MergeDoNothing) -> MergeAction {
30490 MergeAction::MergeDoNothing(node)
30491 }
30492}
30493impl From<MergeInsert> for MergeAction {
30494 #[inline]
30495 fn from(node: MergeInsert) -> MergeAction {
30496 MergeAction::MergeInsert(node)
30497 }
30498}
30499impl From<MergeUpdate> for MergeAction {
30500 #[inline]
30501 fn from(node: MergeUpdate) -> MergeAction {
30502 MergeAction::MergeUpdate(node)
30503 }
30504}
30505impl AstNode for MergeWhenClause {
30506 #[inline]
30507 fn can_cast(kind: SyntaxKind) -> bool {
30508 matches!(
30509 kind,
30510 SyntaxKind::MERGE_WHEN_MATCHED
30511 | SyntaxKind::MERGE_WHEN_NOT_MATCHED_SOURCE
30512 | SyntaxKind::MERGE_WHEN_NOT_MATCHED_TARGET
30513 )
30514 }
30515 #[inline]
30516 fn cast(syntax: SyntaxNode) -> Option<Self> {
30517 let res = match syntax.kind() {
30518 SyntaxKind::MERGE_WHEN_MATCHED => {
30519 MergeWhenClause::MergeWhenMatched(MergeWhenMatched { syntax })
30520 }
30521 SyntaxKind::MERGE_WHEN_NOT_MATCHED_SOURCE => {
30522 MergeWhenClause::MergeWhenNotMatchedSource(MergeWhenNotMatchedSource { syntax })
30523 }
30524 SyntaxKind::MERGE_WHEN_NOT_MATCHED_TARGET => {
30525 MergeWhenClause::MergeWhenNotMatchedTarget(MergeWhenNotMatchedTarget { syntax })
30526 }
30527 _ => {
30528 return None;
30529 }
30530 };
30531 Some(res)
30532 }
30533 #[inline]
30534 fn syntax(&self) -> &SyntaxNode {
30535 match self {
30536 MergeWhenClause::MergeWhenMatched(it) => &it.syntax,
30537 MergeWhenClause::MergeWhenNotMatchedSource(it) => &it.syntax,
30538 MergeWhenClause::MergeWhenNotMatchedTarget(it) => &it.syntax,
30539 }
30540 }
30541}
30542impl From<MergeWhenMatched> for MergeWhenClause {
30543 #[inline]
30544 fn from(node: MergeWhenMatched) -> MergeWhenClause {
30545 MergeWhenClause::MergeWhenMatched(node)
30546 }
30547}
30548impl From<MergeWhenNotMatchedSource> for MergeWhenClause {
30549 #[inline]
30550 fn from(node: MergeWhenNotMatchedSource) -> MergeWhenClause {
30551 MergeWhenClause::MergeWhenNotMatchedSource(node)
30552 }
30553}
30554impl From<MergeWhenNotMatchedTarget> for MergeWhenClause {
30555 #[inline]
30556 fn from(node: MergeWhenNotMatchedTarget) -> MergeWhenClause {
30557 MergeWhenClause::MergeWhenNotMatchedTarget(node)
30558 }
30559}
30560impl AstNode for OnCommitAction {
30561 #[inline]
30562 fn can_cast(kind: SyntaxKind) -> bool {
30563 matches!(
30564 kind,
30565 SyntaxKind::DELETE_ROWS | SyntaxKind::DROP | SyntaxKind::PRESERVE_ROWS
30566 )
30567 }
30568 #[inline]
30569 fn cast(syntax: SyntaxNode) -> Option<Self> {
30570 let res = match syntax.kind() {
30571 SyntaxKind::DELETE_ROWS => OnCommitAction::DeleteRows(DeleteRows { syntax }),
30572 SyntaxKind::DROP => OnCommitAction::Drop(Drop { syntax }),
30573 SyntaxKind::PRESERVE_ROWS => OnCommitAction::PreserveRows(PreserveRows { syntax }),
30574 _ => {
30575 return None;
30576 }
30577 };
30578 Some(res)
30579 }
30580 #[inline]
30581 fn syntax(&self) -> &SyntaxNode {
30582 match self {
30583 OnCommitAction::DeleteRows(it) => &it.syntax,
30584 OnCommitAction::Drop(it) => &it.syntax,
30585 OnCommitAction::PreserveRows(it) => &it.syntax,
30586 }
30587 }
30588}
30589impl From<DeleteRows> for OnCommitAction {
30590 #[inline]
30591 fn from(node: DeleteRows) -> OnCommitAction {
30592 OnCommitAction::DeleteRows(node)
30593 }
30594}
30595impl From<Drop> for OnCommitAction {
30596 #[inline]
30597 fn from(node: Drop) -> OnCommitAction {
30598 OnCommitAction::Drop(node)
30599 }
30600}
30601impl From<PreserveRows> for OnCommitAction {
30602 #[inline]
30603 fn from(node: PreserveRows) -> OnCommitAction {
30604 OnCommitAction::PreserveRows(node)
30605 }
30606}
30607impl AstNode for ParamMode {
30608 #[inline]
30609 fn can_cast(kind: SyntaxKind) -> bool {
30610 matches!(
30611 kind,
30612 SyntaxKind::PARAM_IN
30613 | SyntaxKind::PARAM_IN_OUT
30614 | SyntaxKind::PARAM_OUT
30615 | SyntaxKind::PARAM_VARIADIC
30616 )
30617 }
30618 #[inline]
30619 fn cast(syntax: SyntaxNode) -> Option<Self> {
30620 let res = match syntax.kind() {
30621 SyntaxKind::PARAM_IN => ParamMode::ParamIn(ParamIn { syntax }),
30622 SyntaxKind::PARAM_IN_OUT => ParamMode::ParamInOut(ParamInOut { syntax }),
30623 SyntaxKind::PARAM_OUT => ParamMode::ParamOut(ParamOut { syntax }),
30624 SyntaxKind::PARAM_VARIADIC => ParamMode::ParamVariadic(ParamVariadic { syntax }),
30625 _ => {
30626 return None;
30627 }
30628 };
30629 Some(res)
30630 }
30631 #[inline]
30632 fn syntax(&self) -> &SyntaxNode {
30633 match self {
30634 ParamMode::ParamIn(it) => &it.syntax,
30635 ParamMode::ParamInOut(it) => &it.syntax,
30636 ParamMode::ParamOut(it) => &it.syntax,
30637 ParamMode::ParamVariadic(it) => &it.syntax,
30638 }
30639 }
30640}
30641impl From<ParamIn> for ParamMode {
30642 #[inline]
30643 fn from(node: ParamIn) -> ParamMode {
30644 ParamMode::ParamIn(node)
30645 }
30646}
30647impl From<ParamInOut> for ParamMode {
30648 #[inline]
30649 fn from(node: ParamInOut) -> ParamMode {
30650 ParamMode::ParamInOut(node)
30651 }
30652}
30653impl From<ParamOut> for ParamMode {
30654 #[inline]
30655 fn from(node: ParamOut) -> ParamMode {
30656 ParamMode::ParamOut(node)
30657 }
30658}
30659impl From<ParamVariadic> for ParamMode {
30660 #[inline]
30661 fn from(node: ParamVariadic) -> ParamMode {
30662 ParamMode::ParamVariadic(node)
30663 }
30664}
30665impl AstNode for PartitionType {
30666 #[inline]
30667 fn can_cast(kind: SyntaxKind) -> bool {
30668 matches!(
30669 kind,
30670 SyntaxKind::PARTITION_DEFAULT
30671 | SyntaxKind::PARTITION_FOR_VALUES_FROM
30672 | SyntaxKind::PARTITION_FOR_VALUES_IN
30673 | SyntaxKind::PARTITION_FOR_VALUES_WITH
30674 )
30675 }
30676 #[inline]
30677 fn cast(syntax: SyntaxNode) -> Option<Self> {
30678 let res = match syntax.kind() {
30679 SyntaxKind::PARTITION_DEFAULT => {
30680 PartitionType::PartitionDefault(PartitionDefault { syntax })
30681 }
30682 SyntaxKind::PARTITION_FOR_VALUES_FROM => {
30683 PartitionType::PartitionForValuesFrom(PartitionForValuesFrom { syntax })
30684 }
30685 SyntaxKind::PARTITION_FOR_VALUES_IN => {
30686 PartitionType::PartitionForValuesIn(PartitionForValuesIn { syntax })
30687 }
30688 SyntaxKind::PARTITION_FOR_VALUES_WITH => {
30689 PartitionType::PartitionForValuesWith(PartitionForValuesWith { syntax })
30690 }
30691 _ => {
30692 return None;
30693 }
30694 };
30695 Some(res)
30696 }
30697 #[inline]
30698 fn syntax(&self) -> &SyntaxNode {
30699 match self {
30700 PartitionType::PartitionDefault(it) => &it.syntax,
30701 PartitionType::PartitionForValuesFrom(it) => &it.syntax,
30702 PartitionType::PartitionForValuesIn(it) => &it.syntax,
30703 PartitionType::PartitionForValuesWith(it) => &it.syntax,
30704 }
30705 }
30706}
30707impl From<PartitionDefault> for PartitionType {
30708 #[inline]
30709 fn from(node: PartitionDefault) -> PartitionType {
30710 PartitionType::PartitionDefault(node)
30711 }
30712}
30713impl From<PartitionForValuesFrom> for PartitionType {
30714 #[inline]
30715 fn from(node: PartitionForValuesFrom) -> PartitionType {
30716 PartitionType::PartitionForValuesFrom(node)
30717 }
30718}
30719impl From<PartitionForValuesIn> for PartitionType {
30720 #[inline]
30721 fn from(node: PartitionForValuesIn) -> PartitionType {
30722 PartitionType::PartitionForValuesIn(node)
30723 }
30724}
30725impl From<PartitionForValuesWith> for PartitionType {
30726 #[inline]
30727 fn from(node: PartitionForValuesWith) -> PartitionType {
30728 PartitionType::PartitionForValuesWith(node)
30729 }
30730}
30731impl AstNode for PreparableStmt {
30732 #[inline]
30733 fn can_cast(kind: SyntaxKind) -> bool {
30734 matches!(
30735 kind,
30736 SyntaxKind::COMPOUND_SELECT
30737 | SyntaxKind::DELETE
30738 | SyntaxKind::INSERT
30739 | SyntaxKind::MERGE
30740 | SyntaxKind::SELECT
30741 | SyntaxKind::SELECT_INTO
30742 | SyntaxKind::TABLE
30743 | SyntaxKind::UPDATE
30744 | SyntaxKind::VALUES
30745 )
30746 }
30747 #[inline]
30748 fn cast(syntax: SyntaxNode) -> Option<Self> {
30749 let res = match syntax.kind() {
30750 SyntaxKind::COMPOUND_SELECT => {
30751 PreparableStmt::CompoundSelect(CompoundSelect { syntax })
30752 }
30753 SyntaxKind::DELETE => PreparableStmt::Delete(Delete { syntax }),
30754 SyntaxKind::INSERT => PreparableStmt::Insert(Insert { syntax }),
30755 SyntaxKind::MERGE => PreparableStmt::Merge(Merge { syntax }),
30756 SyntaxKind::SELECT => PreparableStmt::Select(Select { syntax }),
30757 SyntaxKind::SELECT_INTO => PreparableStmt::SelectInto(SelectInto { syntax }),
30758 SyntaxKind::TABLE => PreparableStmt::Table(Table { syntax }),
30759 SyntaxKind::UPDATE => PreparableStmt::Update(Update { syntax }),
30760 SyntaxKind::VALUES => PreparableStmt::Values(Values { syntax }),
30761 _ => {
30762 return None;
30763 }
30764 };
30765 Some(res)
30766 }
30767 #[inline]
30768 fn syntax(&self) -> &SyntaxNode {
30769 match self {
30770 PreparableStmt::CompoundSelect(it) => &it.syntax,
30771 PreparableStmt::Delete(it) => &it.syntax,
30772 PreparableStmt::Insert(it) => &it.syntax,
30773 PreparableStmt::Merge(it) => &it.syntax,
30774 PreparableStmt::Select(it) => &it.syntax,
30775 PreparableStmt::SelectInto(it) => &it.syntax,
30776 PreparableStmt::Table(it) => &it.syntax,
30777 PreparableStmt::Update(it) => &it.syntax,
30778 PreparableStmt::Values(it) => &it.syntax,
30779 }
30780 }
30781}
30782impl From<CompoundSelect> for PreparableStmt {
30783 #[inline]
30784 fn from(node: CompoundSelect) -> PreparableStmt {
30785 PreparableStmt::CompoundSelect(node)
30786 }
30787}
30788impl From<Delete> for PreparableStmt {
30789 #[inline]
30790 fn from(node: Delete) -> PreparableStmt {
30791 PreparableStmt::Delete(node)
30792 }
30793}
30794impl From<Insert> for PreparableStmt {
30795 #[inline]
30796 fn from(node: Insert) -> PreparableStmt {
30797 PreparableStmt::Insert(node)
30798 }
30799}
30800impl From<Merge> for PreparableStmt {
30801 #[inline]
30802 fn from(node: Merge) -> PreparableStmt {
30803 PreparableStmt::Merge(node)
30804 }
30805}
30806impl From<Select> for PreparableStmt {
30807 #[inline]
30808 fn from(node: Select) -> PreparableStmt {
30809 PreparableStmt::Select(node)
30810 }
30811}
30812impl From<SelectInto> for PreparableStmt {
30813 #[inline]
30814 fn from(node: SelectInto) -> PreparableStmt {
30815 PreparableStmt::SelectInto(node)
30816 }
30817}
30818impl From<Table> for PreparableStmt {
30819 #[inline]
30820 fn from(node: Table) -> PreparableStmt {
30821 PreparableStmt::Table(node)
30822 }
30823}
30824impl From<Update> for PreparableStmt {
30825 #[inline]
30826 fn from(node: Update) -> PreparableStmt {
30827 PreparableStmt::Update(node)
30828 }
30829}
30830impl From<Values> for PreparableStmt {
30831 #[inline]
30832 fn from(node: Values) -> PreparableStmt {
30833 PreparableStmt::Values(node)
30834 }
30835}
30836impl AstNode for RefAction {
30837 #[inline]
30838 fn can_cast(kind: SyntaxKind) -> bool {
30839 matches!(
30840 kind,
30841 SyntaxKind::CASCADE
30842 | SyntaxKind::NO_ACTION
30843 | SyntaxKind::RESTRICT
30844 | SyntaxKind::SET_DEFAULT_COLUMNS
30845 | SyntaxKind::SET_NULL_COLUMNS
30846 )
30847 }
30848 #[inline]
30849 fn cast(syntax: SyntaxNode) -> Option<Self> {
30850 let res = match syntax.kind() {
30851 SyntaxKind::CASCADE => RefAction::Cascade(Cascade { syntax }),
30852 SyntaxKind::NO_ACTION => RefAction::NoAction(NoAction { syntax }),
30853 SyntaxKind::RESTRICT => RefAction::Restrict(Restrict { syntax }),
30854 SyntaxKind::SET_DEFAULT_COLUMNS => {
30855 RefAction::SetDefaultColumns(SetDefaultColumns { syntax })
30856 }
30857 SyntaxKind::SET_NULL_COLUMNS => RefAction::SetNullColumns(SetNullColumns { syntax }),
30858 _ => {
30859 return None;
30860 }
30861 };
30862 Some(res)
30863 }
30864 #[inline]
30865 fn syntax(&self) -> &SyntaxNode {
30866 match self {
30867 RefAction::Cascade(it) => &it.syntax,
30868 RefAction::NoAction(it) => &it.syntax,
30869 RefAction::Restrict(it) => &it.syntax,
30870 RefAction::SetDefaultColumns(it) => &it.syntax,
30871 RefAction::SetNullColumns(it) => &it.syntax,
30872 }
30873 }
30874}
30875impl From<Cascade> for RefAction {
30876 #[inline]
30877 fn from(node: Cascade) -> RefAction {
30878 RefAction::Cascade(node)
30879 }
30880}
30881impl From<NoAction> for RefAction {
30882 #[inline]
30883 fn from(node: NoAction) -> RefAction {
30884 RefAction::NoAction(node)
30885 }
30886}
30887impl From<Restrict> for RefAction {
30888 #[inline]
30889 fn from(node: Restrict) -> RefAction {
30890 RefAction::Restrict(node)
30891 }
30892}
30893impl From<SetDefaultColumns> for RefAction {
30894 #[inline]
30895 fn from(node: SetDefaultColumns) -> RefAction {
30896 RefAction::SetDefaultColumns(node)
30897 }
30898}
30899impl From<SetNullColumns> for RefAction {
30900 #[inline]
30901 fn from(node: SetNullColumns) -> RefAction {
30902 RefAction::SetNullColumns(node)
30903 }
30904}
30905impl AstNode for SchemaElement {
30906 #[inline]
30907 fn can_cast(kind: SyntaxKind) -> bool {
30908 matches!(
30909 kind,
30910 SyntaxKind::CREATE_INDEX
30911 | SyntaxKind::CREATE_SEQUENCE
30912 | SyntaxKind::CREATE_TABLE
30913 | SyntaxKind::CREATE_TRIGGER
30914 | SyntaxKind::CREATE_VIEW
30915 | SyntaxKind::GRANT
30916 )
30917 }
30918 #[inline]
30919 fn cast(syntax: SyntaxNode) -> Option<Self> {
30920 let res = match syntax.kind() {
30921 SyntaxKind::CREATE_INDEX => SchemaElement::CreateIndex(CreateIndex { syntax }),
30922 SyntaxKind::CREATE_SEQUENCE => SchemaElement::CreateSequence(CreateSequence { syntax }),
30923 SyntaxKind::CREATE_TABLE => SchemaElement::CreateTable(CreateTable { syntax }),
30924 SyntaxKind::CREATE_TRIGGER => SchemaElement::CreateTrigger(CreateTrigger { syntax }),
30925 SyntaxKind::CREATE_VIEW => SchemaElement::CreateView(CreateView { syntax }),
30926 SyntaxKind::GRANT => SchemaElement::Grant(Grant { syntax }),
30927 _ => {
30928 return None;
30929 }
30930 };
30931 Some(res)
30932 }
30933 #[inline]
30934 fn syntax(&self) -> &SyntaxNode {
30935 match self {
30936 SchemaElement::CreateIndex(it) => &it.syntax,
30937 SchemaElement::CreateSequence(it) => &it.syntax,
30938 SchemaElement::CreateTable(it) => &it.syntax,
30939 SchemaElement::CreateTrigger(it) => &it.syntax,
30940 SchemaElement::CreateView(it) => &it.syntax,
30941 SchemaElement::Grant(it) => &it.syntax,
30942 }
30943 }
30944}
30945impl From<CreateIndex> for SchemaElement {
30946 #[inline]
30947 fn from(node: CreateIndex) -> SchemaElement {
30948 SchemaElement::CreateIndex(node)
30949 }
30950}
30951impl From<CreateSequence> for SchemaElement {
30952 #[inline]
30953 fn from(node: CreateSequence) -> SchemaElement {
30954 SchemaElement::CreateSequence(node)
30955 }
30956}
30957impl From<CreateTable> for SchemaElement {
30958 #[inline]
30959 fn from(node: CreateTable) -> SchemaElement {
30960 SchemaElement::CreateTable(node)
30961 }
30962}
30963impl From<CreateTrigger> for SchemaElement {
30964 #[inline]
30965 fn from(node: CreateTrigger) -> SchemaElement {
30966 SchemaElement::CreateTrigger(node)
30967 }
30968}
30969impl From<CreateView> for SchemaElement {
30970 #[inline]
30971 fn from(node: CreateView) -> SchemaElement {
30972 SchemaElement::CreateView(node)
30973 }
30974}
30975impl From<Grant> for SchemaElement {
30976 #[inline]
30977 fn from(node: Grant) -> SchemaElement {
30978 SchemaElement::Grant(node)
30979 }
30980}
30981impl AstNode for SelectVariant {
30982 #[inline]
30983 fn can_cast(kind: SyntaxKind) -> bool {
30984 matches!(
30985 kind,
30986 SyntaxKind::COMPOUND_SELECT
30987 | SyntaxKind::PAREN_SELECT
30988 | SyntaxKind::SELECT
30989 | SyntaxKind::SELECT_INTO
30990 | SyntaxKind::TABLE
30991 | SyntaxKind::VALUES
30992 )
30993 }
30994 #[inline]
30995 fn cast(syntax: SyntaxNode) -> Option<Self> {
30996 let res = match syntax.kind() {
30997 SyntaxKind::COMPOUND_SELECT => SelectVariant::CompoundSelect(CompoundSelect { syntax }),
30998 SyntaxKind::PAREN_SELECT => SelectVariant::ParenSelect(ParenSelect { syntax }),
30999 SyntaxKind::SELECT => SelectVariant::Select(Select { syntax }),
31000 SyntaxKind::SELECT_INTO => SelectVariant::SelectInto(SelectInto { syntax }),
31001 SyntaxKind::TABLE => SelectVariant::Table(Table { syntax }),
31002 SyntaxKind::VALUES => SelectVariant::Values(Values { syntax }),
31003 _ => {
31004 return None;
31005 }
31006 };
31007 Some(res)
31008 }
31009 #[inline]
31010 fn syntax(&self) -> &SyntaxNode {
31011 match self {
31012 SelectVariant::CompoundSelect(it) => &it.syntax,
31013 SelectVariant::ParenSelect(it) => &it.syntax,
31014 SelectVariant::Select(it) => &it.syntax,
31015 SelectVariant::SelectInto(it) => &it.syntax,
31016 SelectVariant::Table(it) => &it.syntax,
31017 SelectVariant::Values(it) => &it.syntax,
31018 }
31019 }
31020}
31021impl From<CompoundSelect> for SelectVariant {
31022 #[inline]
31023 fn from(node: CompoundSelect) -> SelectVariant {
31024 SelectVariant::CompoundSelect(node)
31025 }
31026}
31027impl From<ParenSelect> for SelectVariant {
31028 #[inline]
31029 fn from(node: ParenSelect) -> SelectVariant {
31030 SelectVariant::ParenSelect(node)
31031 }
31032}
31033impl From<Select> for SelectVariant {
31034 #[inline]
31035 fn from(node: Select) -> SelectVariant {
31036 SelectVariant::Select(node)
31037 }
31038}
31039impl From<SelectInto> for SelectVariant {
31040 #[inline]
31041 fn from(node: SelectInto) -> SelectVariant {
31042 SelectVariant::SelectInto(node)
31043 }
31044}
31045impl From<Table> for SelectVariant {
31046 #[inline]
31047 fn from(node: Table) -> SelectVariant {
31048 SelectVariant::Table(node)
31049 }
31050}
31051impl From<Values> for SelectVariant {
31052 #[inline]
31053 fn from(node: Values) -> SelectVariant {
31054 SelectVariant::Values(node)
31055 }
31056}
31057impl AstNode for SetColumn {
31058 #[inline]
31059 fn can_cast(kind: SyntaxKind) -> bool {
31060 matches!(
31061 kind,
31062 SyntaxKind::SET_MULTIPLE_COLUMNS | SyntaxKind::SET_SINGLE_COLUMN
31063 )
31064 }
31065 #[inline]
31066 fn cast(syntax: SyntaxNode) -> Option<Self> {
31067 let res = match syntax.kind() {
31068 SyntaxKind::SET_MULTIPLE_COLUMNS => {
31069 SetColumn::SetMultipleColumns(SetMultipleColumns { syntax })
31070 }
31071 SyntaxKind::SET_SINGLE_COLUMN => SetColumn::SetSingleColumn(SetSingleColumn { syntax }),
31072 _ => {
31073 return None;
31074 }
31075 };
31076 Some(res)
31077 }
31078 #[inline]
31079 fn syntax(&self) -> &SyntaxNode {
31080 match self {
31081 SetColumn::SetMultipleColumns(it) => &it.syntax,
31082 SetColumn::SetSingleColumn(it) => &it.syntax,
31083 }
31084 }
31085}
31086impl From<SetMultipleColumns> for SetColumn {
31087 #[inline]
31088 fn from(node: SetMultipleColumns) -> SetColumn {
31089 SetColumn::SetMultipleColumns(node)
31090 }
31091}
31092impl From<SetSingleColumn> for SetColumn {
31093 #[inline]
31094 fn from(node: SetSingleColumn) -> SetColumn {
31095 SetColumn::SetSingleColumn(node)
31096 }
31097}
31098impl AstNode for Stmt {
31099 #[inline]
31100 fn can_cast(kind: SyntaxKind) -> bool {
31101 matches!(
31102 kind,
31103 SyntaxKind::ALTER_AGGREGATE
31104 | SyntaxKind::ALTER_COLLATION
31105 | SyntaxKind::ALTER_CONVERSION
31106 | SyntaxKind::ALTER_DATABASE
31107 | SyntaxKind::ALTER_DEFAULT_PRIVILEGES
31108 | SyntaxKind::ALTER_DOMAIN
31109 | SyntaxKind::ALTER_EVENT_TRIGGER
31110 | SyntaxKind::ALTER_EXTENSION
31111 | SyntaxKind::ALTER_FOREIGN_DATA_WRAPPER
31112 | SyntaxKind::ALTER_FOREIGN_TABLE
31113 | SyntaxKind::ALTER_FUNCTION
31114 | SyntaxKind::ALTER_GROUP
31115 | SyntaxKind::ALTER_INDEX
31116 | SyntaxKind::ALTER_LANGUAGE
31117 | SyntaxKind::ALTER_LARGE_OBJECT
31118 | SyntaxKind::ALTER_MATERIALIZED_VIEW
31119 | SyntaxKind::ALTER_OPERATOR
31120 | SyntaxKind::ALTER_OPERATOR_CLASS
31121 | SyntaxKind::ALTER_OPERATOR_FAMILY
31122 | SyntaxKind::ALTER_POLICY
31123 | SyntaxKind::ALTER_PROCEDURE
31124 | SyntaxKind::ALTER_PUBLICATION
31125 | SyntaxKind::ALTER_ROLE
31126 | SyntaxKind::ALTER_ROUTINE
31127 | SyntaxKind::ALTER_RULE
31128 | SyntaxKind::ALTER_SCHEMA
31129 | SyntaxKind::ALTER_SEQUENCE
31130 | SyntaxKind::ALTER_SERVER
31131 | SyntaxKind::ALTER_STATISTICS
31132 | SyntaxKind::ALTER_SUBSCRIPTION
31133 | SyntaxKind::ALTER_SYSTEM
31134 | SyntaxKind::ALTER_TABLE
31135 | SyntaxKind::ALTER_TABLESPACE
31136 | SyntaxKind::ALTER_TEXT_SEARCH_CONFIGURATION
31137 | SyntaxKind::ALTER_TEXT_SEARCH_DICTIONARY
31138 | SyntaxKind::ALTER_TEXT_SEARCH_PARSER
31139 | SyntaxKind::ALTER_TEXT_SEARCH_TEMPLATE
31140 | SyntaxKind::ALTER_TRIGGER
31141 | SyntaxKind::ALTER_TYPE
31142 | SyntaxKind::ALTER_USER
31143 | SyntaxKind::ALTER_USER_MAPPING
31144 | SyntaxKind::ALTER_VIEW
31145 | SyntaxKind::ANALYZE
31146 | SyntaxKind::BEGIN
31147 | SyntaxKind::CALL
31148 | SyntaxKind::CHECKPOINT
31149 | SyntaxKind::CLOSE
31150 | SyntaxKind::CLUSTER
31151 | SyntaxKind::COMMENT_ON
31152 | SyntaxKind::COMMIT
31153 | SyntaxKind::COPY
31154 | SyntaxKind::CREATE_ACCESS_METHOD
31155 | SyntaxKind::CREATE_AGGREGATE
31156 | SyntaxKind::CREATE_CAST
31157 | SyntaxKind::CREATE_COLLATION
31158 | SyntaxKind::CREATE_CONVERSION
31159 | SyntaxKind::CREATE_DATABASE
31160 | SyntaxKind::CREATE_DOMAIN
31161 | SyntaxKind::CREATE_EVENT_TRIGGER
31162 | SyntaxKind::CREATE_EXTENSION
31163 | SyntaxKind::CREATE_FOREIGN_DATA_WRAPPER
31164 | SyntaxKind::CREATE_FOREIGN_TABLE
31165 | SyntaxKind::CREATE_FUNCTION
31166 | SyntaxKind::CREATE_GROUP
31167 | SyntaxKind::CREATE_INDEX
31168 | SyntaxKind::CREATE_LANGUAGE
31169 | SyntaxKind::CREATE_MATERIALIZED_VIEW
31170 | SyntaxKind::CREATE_OPERATOR
31171 | SyntaxKind::CREATE_OPERATOR_CLASS
31172 | SyntaxKind::CREATE_OPERATOR_FAMILY
31173 | SyntaxKind::CREATE_POLICY
31174 | SyntaxKind::CREATE_PROCEDURE
31175 | SyntaxKind::CREATE_PUBLICATION
31176 | SyntaxKind::CREATE_ROLE
31177 | SyntaxKind::CREATE_RULE
31178 | SyntaxKind::CREATE_SCHEMA
31179 | SyntaxKind::CREATE_SEQUENCE
31180 | SyntaxKind::CREATE_SERVER
31181 | SyntaxKind::CREATE_STATISTICS
31182 | SyntaxKind::CREATE_SUBSCRIPTION
31183 | SyntaxKind::CREATE_TABLE
31184 | SyntaxKind::CREATE_TABLE_AS
31185 | SyntaxKind::CREATE_TABLESPACE
31186 | SyntaxKind::CREATE_TEXT_SEARCH_CONFIGURATION
31187 | SyntaxKind::CREATE_TEXT_SEARCH_DICTIONARY
31188 | SyntaxKind::CREATE_TEXT_SEARCH_PARSER
31189 | SyntaxKind::CREATE_TEXT_SEARCH_TEMPLATE
31190 | SyntaxKind::CREATE_TRANSFORM
31191 | SyntaxKind::CREATE_TRIGGER
31192 | SyntaxKind::CREATE_TYPE
31193 | SyntaxKind::CREATE_USER
31194 | SyntaxKind::CREATE_USER_MAPPING
31195 | SyntaxKind::CREATE_VIEW
31196 | SyntaxKind::DEALLOCATE
31197 | SyntaxKind::DECLARE
31198 | SyntaxKind::DELETE
31199 | SyntaxKind::DISCARD
31200 | SyntaxKind::DO
31201 | SyntaxKind::DROP_ACCESS_METHOD
31202 | SyntaxKind::DROP_AGGREGATE
31203 | SyntaxKind::DROP_CAST
31204 | SyntaxKind::DROP_COLLATION
31205 | SyntaxKind::DROP_CONVERSION
31206 | SyntaxKind::DROP_DATABASE
31207 | SyntaxKind::DROP_DOMAIN
31208 | SyntaxKind::DROP_EVENT_TRIGGER
31209 | SyntaxKind::DROP_EXTENSION
31210 | SyntaxKind::DROP_FOREIGN_DATA_WRAPPER
31211 | SyntaxKind::DROP_FOREIGN_TABLE
31212 | SyntaxKind::DROP_FUNCTION
31213 | SyntaxKind::DROP_GROUP
31214 | SyntaxKind::DROP_INDEX
31215 | SyntaxKind::DROP_LANGUAGE
31216 | SyntaxKind::DROP_MATERIALIZED_VIEW
31217 | SyntaxKind::DROP_OPERATOR
31218 | SyntaxKind::DROP_OPERATOR_CLASS
31219 | SyntaxKind::DROP_OPERATOR_FAMILY
31220 | SyntaxKind::DROP_OWNED
31221 | SyntaxKind::DROP_POLICY
31222 | SyntaxKind::DROP_PROCEDURE
31223 | SyntaxKind::DROP_PUBLICATION
31224 | SyntaxKind::DROP_ROLE
31225 | SyntaxKind::DROP_ROUTINE
31226 | SyntaxKind::DROP_RULE
31227 | SyntaxKind::DROP_SCHEMA
31228 | SyntaxKind::DROP_SEQUENCE
31229 | SyntaxKind::DROP_SERVER
31230 | SyntaxKind::DROP_STATISTICS
31231 | SyntaxKind::DROP_SUBSCRIPTION
31232 | SyntaxKind::DROP_TABLE
31233 | SyntaxKind::DROP_TABLESPACE
31234 | SyntaxKind::DROP_TEXT_SEARCH_CONFIG
31235 | SyntaxKind::DROP_TEXT_SEARCH_DICT
31236 | SyntaxKind::DROP_TEXT_SEARCH_PARSER
31237 | SyntaxKind::DROP_TEXT_SEARCH_TEMPLATE
31238 | SyntaxKind::DROP_TRANSFORM
31239 | SyntaxKind::DROP_TRIGGER
31240 | SyntaxKind::DROP_TYPE
31241 | SyntaxKind::DROP_USER
31242 | SyntaxKind::DROP_USER_MAPPING
31243 | SyntaxKind::DROP_VIEW
31244 | SyntaxKind::EXECUTE
31245 | SyntaxKind::EXPLAIN
31246 | SyntaxKind::FETCH
31247 | SyntaxKind::GRANT
31248 | SyntaxKind::IMPORT_FOREIGN_SCHEMA
31249 | SyntaxKind::INSERT
31250 | SyntaxKind::LISTEN
31251 | SyntaxKind::LOAD
31252 | SyntaxKind::LOCK
31253 | SyntaxKind::MERGE
31254 | SyntaxKind::MOVE
31255 | SyntaxKind::NOTIFY
31256 | SyntaxKind::PAREN_SELECT
31257 | SyntaxKind::PREPARE
31258 | SyntaxKind::PREPARE_TRANSACTION
31259 | SyntaxKind::REASSIGN
31260 | SyntaxKind::REFRESH
31261 | SyntaxKind::REINDEX
31262 | SyntaxKind::RELEASE_SAVEPOINT
31263 | SyntaxKind::RESET
31264 | SyntaxKind::RESET_SESSION_AUTH
31265 | SyntaxKind::REVOKE
31266 | SyntaxKind::ROLLBACK
31267 | SyntaxKind::SAVEPOINT
31268 | SyntaxKind::SECURITY_LABEL
31269 | SyntaxKind::SELECT
31270 | SyntaxKind::SELECT_INTO
31271 | SyntaxKind::SET
31272 | SyntaxKind::SET_CONSTRAINTS
31273 | SyntaxKind::SET_ROLE
31274 | SyntaxKind::SET_SESSION_AUTH
31275 | SyntaxKind::SET_TRANSACTION
31276 | SyntaxKind::SHOW
31277 | SyntaxKind::TABLE
31278 | SyntaxKind::TRUNCATE
31279 | SyntaxKind::UNLISTEN
31280 | SyntaxKind::UPDATE
31281 | SyntaxKind::VACUUM
31282 | SyntaxKind::VALUES
31283 )
31284 }
31285 #[inline]
31286 fn cast(syntax: SyntaxNode) -> Option<Self> {
31287 let res = match syntax.kind() {
31288 SyntaxKind::ALTER_AGGREGATE => Stmt::AlterAggregate(AlterAggregate { syntax }),
31289 SyntaxKind::ALTER_COLLATION => Stmt::AlterCollation(AlterCollation { syntax }),
31290 SyntaxKind::ALTER_CONVERSION => Stmt::AlterConversion(AlterConversion { syntax }),
31291 SyntaxKind::ALTER_DATABASE => Stmt::AlterDatabase(AlterDatabase { syntax }),
31292 SyntaxKind::ALTER_DEFAULT_PRIVILEGES => {
31293 Stmt::AlterDefaultPrivileges(AlterDefaultPrivileges { syntax })
31294 }
31295 SyntaxKind::ALTER_DOMAIN => Stmt::AlterDomain(AlterDomain { syntax }),
31296 SyntaxKind::ALTER_EVENT_TRIGGER => {
31297 Stmt::AlterEventTrigger(AlterEventTrigger { syntax })
31298 }
31299 SyntaxKind::ALTER_EXTENSION => Stmt::AlterExtension(AlterExtension { syntax }),
31300 SyntaxKind::ALTER_FOREIGN_DATA_WRAPPER => {
31301 Stmt::AlterForeignDataWrapper(AlterForeignDataWrapper { syntax })
31302 }
31303 SyntaxKind::ALTER_FOREIGN_TABLE => {
31304 Stmt::AlterForeignTable(AlterForeignTable { syntax })
31305 }
31306 SyntaxKind::ALTER_FUNCTION => Stmt::AlterFunction(AlterFunction { syntax }),
31307 SyntaxKind::ALTER_GROUP => Stmt::AlterGroup(AlterGroup { syntax }),
31308 SyntaxKind::ALTER_INDEX => Stmt::AlterIndex(AlterIndex { syntax }),
31309 SyntaxKind::ALTER_LANGUAGE => Stmt::AlterLanguage(AlterLanguage { syntax }),
31310 SyntaxKind::ALTER_LARGE_OBJECT => Stmt::AlterLargeObject(AlterLargeObject { syntax }),
31311 SyntaxKind::ALTER_MATERIALIZED_VIEW => {
31312 Stmt::AlterMaterializedView(AlterMaterializedView { syntax })
31313 }
31314 SyntaxKind::ALTER_OPERATOR => Stmt::AlterOperator(AlterOperator { syntax }),
31315 SyntaxKind::ALTER_OPERATOR_CLASS => {
31316 Stmt::AlterOperatorClass(AlterOperatorClass { syntax })
31317 }
31318 SyntaxKind::ALTER_OPERATOR_FAMILY => {
31319 Stmt::AlterOperatorFamily(AlterOperatorFamily { syntax })
31320 }
31321 SyntaxKind::ALTER_POLICY => Stmt::AlterPolicy(AlterPolicy { syntax }),
31322 SyntaxKind::ALTER_PROCEDURE => Stmt::AlterProcedure(AlterProcedure { syntax }),
31323 SyntaxKind::ALTER_PUBLICATION => Stmt::AlterPublication(AlterPublication { syntax }),
31324 SyntaxKind::ALTER_ROLE => Stmt::AlterRole(AlterRole { syntax }),
31325 SyntaxKind::ALTER_ROUTINE => Stmt::AlterRoutine(AlterRoutine { syntax }),
31326 SyntaxKind::ALTER_RULE => Stmt::AlterRule(AlterRule { syntax }),
31327 SyntaxKind::ALTER_SCHEMA => Stmt::AlterSchema(AlterSchema { syntax }),
31328 SyntaxKind::ALTER_SEQUENCE => Stmt::AlterSequence(AlterSequence { syntax }),
31329 SyntaxKind::ALTER_SERVER => Stmt::AlterServer(AlterServer { syntax }),
31330 SyntaxKind::ALTER_STATISTICS => Stmt::AlterStatistics(AlterStatistics { syntax }),
31331 SyntaxKind::ALTER_SUBSCRIPTION => Stmt::AlterSubscription(AlterSubscription { syntax }),
31332 SyntaxKind::ALTER_SYSTEM => Stmt::AlterSystem(AlterSystem { syntax }),
31333 SyntaxKind::ALTER_TABLE => Stmt::AlterTable(AlterTable { syntax }),
31334 SyntaxKind::ALTER_TABLESPACE => Stmt::AlterTablespace(AlterTablespace { syntax }),
31335 SyntaxKind::ALTER_TEXT_SEARCH_CONFIGURATION => {
31336 Stmt::AlterTextSearchConfiguration(AlterTextSearchConfiguration { syntax })
31337 }
31338 SyntaxKind::ALTER_TEXT_SEARCH_DICTIONARY => {
31339 Stmt::AlterTextSearchDictionary(AlterTextSearchDictionary { syntax })
31340 }
31341 SyntaxKind::ALTER_TEXT_SEARCH_PARSER => {
31342 Stmt::AlterTextSearchParser(AlterTextSearchParser { syntax })
31343 }
31344 SyntaxKind::ALTER_TEXT_SEARCH_TEMPLATE => {
31345 Stmt::AlterTextSearchTemplate(AlterTextSearchTemplate { syntax })
31346 }
31347 SyntaxKind::ALTER_TRIGGER => Stmt::AlterTrigger(AlterTrigger { syntax }),
31348 SyntaxKind::ALTER_TYPE => Stmt::AlterType(AlterType { syntax }),
31349 SyntaxKind::ALTER_USER => Stmt::AlterUser(AlterUser { syntax }),
31350 SyntaxKind::ALTER_USER_MAPPING => Stmt::AlterUserMapping(AlterUserMapping { syntax }),
31351 SyntaxKind::ALTER_VIEW => Stmt::AlterView(AlterView { syntax }),
31352 SyntaxKind::ANALYZE => Stmt::Analyze(Analyze { syntax }),
31353 SyntaxKind::BEGIN => Stmt::Begin(Begin { syntax }),
31354 SyntaxKind::CALL => Stmt::Call(Call { syntax }),
31355 SyntaxKind::CHECKPOINT => Stmt::Checkpoint(Checkpoint { syntax }),
31356 SyntaxKind::CLOSE => Stmt::Close(Close { syntax }),
31357 SyntaxKind::CLUSTER => Stmt::Cluster(Cluster { syntax }),
31358 SyntaxKind::COMMENT_ON => Stmt::CommentOn(CommentOn { syntax }),
31359 SyntaxKind::COMMIT => Stmt::Commit(Commit { syntax }),
31360 SyntaxKind::COPY => Stmt::Copy(Copy { syntax }),
31361 SyntaxKind::CREATE_ACCESS_METHOD => {
31362 Stmt::CreateAccessMethod(CreateAccessMethod { syntax })
31363 }
31364 SyntaxKind::CREATE_AGGREGATE => Stmt::CreateAggregate(CreateAggregate { syntax }),
31365 SyntaxKind::CREATE_CAST => Stmt::CreateCast(CreateCast { syntax }),
31366 SyntaxKind::CREATE_COLLATION => Stmt::CreateCollation(CreateCollation { syntax }),
31367 SyntaxKind::CREATE_CONVERSION => Stmt::CreateConversion(CreateConversion { syntax }),
31368 SyntaxKind::CREATE_DATABASE => Stmt::CreateDatabase(CreateDatabase { syntax }),
31369 SyntaxKind::CREATE_DOMAIN => Stmt::CreateDomain(CreateDomain { syntax }),
31370 SyntaxKind::CREATE_EVENT_TRIGGER => {
31371 Stmt::CreateEventTrigger(CreateEventTrigger { syntax })
31372 }
31373 SyntaxKind::CREATE_EXTENSION => Stmt::CreateExtension(CreateExtension { syntax }),
31374 SyntaxKind::CREATE_FOREIGN_DATA_WRAPPER => {
31375 Stmt::CreateForeignDataWrapper(CreateForeignDataWrapper { syntax })
31376 }
31377 SyntaxKind::CREATE_FOREIGN_TABLE => {
31378 Stmt::CreateForeignTable(CreateForeignTable { syntax })
31379 }
31380 SyntaxKind::CREATE_FUNCTION => Stmt::CreateFunction(CreateFunction { syntax }),
31381 SyntaxKind::CREATE_GROUP => Stmt::CreateGroup(CreateGroup { syntax }),
31382 SyntaxKind::CREATE_INDEX => Stmt::CreateIndex(CreateIndex { syntax }),
31383 SyntaxKind::CREATE_LANGUAGE => Stmt::CreateLanguage(CreateLanguage { syntax }),
31384 SyntaxKind::CREATE_MATERIALIZED_VIEW => {
31385 Stmt::CreateMaterializedView(CreateMaterializedView { syntax })
31386 }
31387 SyntaxKind::CREATE_OPERATOR => Stmt::CreateOperator(CreateOperator { syntax }),
31388 SyntaxKind::CREATE_OPERATOR_CLASS => {
31389 Stmt::CreateOperatorClass(CreateOperatorClass { syntax })
31390 }
31391 SyntaxKind::CREATE_OPERATOR_FAMILY => {
31392 Stmt::CreateOperatorFamily(CreateOperatorFamily { syntax })
31393 }
31394 SyntaxKind::CREATE_POLICY => Stmt::CreatePolicy(CreatePolicy { syntax }),
31395 SyntaxKind::CREATE_PROCEDURE => Stmt::CreateProcedure(CreateProcedure { syntax }),
31396 SyntaxKind::CREATE_PUBLICATION => Stmt::CreatePublication(CreatePublication { syntax }),
31397 SyntaxKind::CREATE_ROLE => Stmt::CreateRole(CreateRole { syntax }),
31398 SyntaxKind::CREATE_RULE => Stmt::CreateRule(CreateRule { syntax }),
31399 SyntaxKind::CREATE_SCHEMA => Stmt::CreateSchema(CreateSchema { syntax }),
31400 SyntaxKind::CREATE_SEQUENCE => Stmt::CreateSequence(CreateSequence { syntax }),
31401 SyntaxKind::CREATE_SERVER => Stmt::CreateServer(CreateServer { syntax }),
31402 SyntaxKind::CREATE_STATISTICS => Stmt::CreateStatistics(CreateStatistics { syntax }),
31403 SyntaxKind::CREATE_SUBSCRIPTION => {
31404 Stmt::CreateSubscription(CreateSubscription { syntax })
31405 }
31406 SyntaxKind::CREATE_TABLE => Stmt::CreateTable(CreateTable { syntax }),
31407 SyntaxKind::CREATE_TABLE_AS => Stmt::CreateTableAs(CreateTableAs { syntax }),
31408 SyntaxKind::CREATE_TABLESPACE => Stmt::CreateTablespace(CreateTablespace { syntax }),
31409 SyntaxKind::CREATE_TEXT_SEARCH_CONFIGURATION => {
31410 Stmt::CreateTextSearchConfiguration(CreateTextSearchConfiguration { syntax })
31411 }
31412 SyntaxKind::CREATE_TEXT_SEARCH_DICTIONARY => {
31413 Stmt::CreateTextSearchDictionary(CreateTextSearchDictionary { syntax })
31414 }
31415 SyntaxKind::CREATE_TEXT_SEARCH_PARSER => {
31416 Stmt::CreateTextSearchParser(CreateTextSearchParser { syntax })
31417 }
31418 SyntaxKind::CREATE_TEXT_SEARCH_TEMPLATE => {
31419 Stmt::CreateTextSearchTemplate(CreateTextSearchTemplate { syntax })
31420 }
31421 SyntaxKind::CREATE_TRANSFORM => Stmt::CreateTransform(CreateTransform { syntax }),
31422 SyntaxKind::CREATE_TRIGGER => Stmt::CreateTrigger(CreateTrigger { syntax }),
31423 SyntaxKind::CREATE_TYPE => Stmt::CreateType(CreateType { syntax }),
31424 SyntaxKind::CREATE_USER => Stmt::CreateUser(CreateUser { syntax }),
31425 SyntaxKind::CREATE_USER_MAPPING => {
31426 Stmt::CreateUserMapping(CreateUserMapping { syntax })
31427 }
31428 SyntaxKind::CREATE_VIEW => Stmt::CreateView(CreateView { syntax }),
31429 SyntaxKind::DEALLOCATE => Stmt::Deallocate(Deallocate { syntax }),
31430 SyntaxKind::DECLARE => Stmt::Declare(Declare { syntax }),
31431 SyntaxKind::DELETE => Stmt::Delete(Delete { syntax }),
31432 SyntaxKind::DISCARD => Stmt::Discard(Discard { syntax }),
31433 SyntaxKind::DO => Stmt::Do(Do { syntax }),
31434 SyntaxKind::DROP_ACCESS_METHOD => Stmt::DropAccessMethod(DropAccessMethod { syntax }),
31435 SyntaxKind::DROP_AGGREGATE => Stmt::DropAggregate(DropAggregate { syntax }),
31436 SyntaxKind::DROP_CAST => Stmt::DropCast(DropCast { syntax }),
31437 SyntaxKind::DROP_COLLATION => Stmt::DropCollation(DropCollation { syntax }),
31438 SyntaxKind::DROP_CONVERSION => Stmt::DropConversion(DropConversion { syntax }),
31439 SyntaxKind::DROP_DATABASE => Stmt::DropDatabase(DropDatabase { syntax }),
31440 SyntaxKind::DROP_DOMAIN => Stmt::DropDomain(DropDomain { syntax }),
31441 SyntaxKind::DROP_EVENT_TRIGGER => Stmt::DropEventTrigger(DropEventTrigger { syntax }),
31442 SyntaxKind::DROP_EXTENSION => Stmt::DropExtension(DropExtension { syntax }),
31443 SyntaxKind::DROP_FOREIGN_DATA_WRAPPER => {
31444 Stmt::DropForeignDataWrapper(DropForeignDataWrapper { syntax })
31445 }
31446 SyntaxKind::DROP_FOREIGN_TABLE => Stmt::DropForeignTable(DropForeignTable { syntax }),
31447 SyntaxKind::DROP_FUNCTION => Stmt::DropFunction(DropFunction { syntax }),
31448 SyntaxKind::DROP_GROUP => Stmt::DropGroup(DropGroup { syntax }),
31449 SyntaxKind::DROP_INDEX => Stmt::DropIndex(DropIndex { syntax }),
31450 SyntaxKind::DROP_LANGUAGE => Stmt::DropLanguage(DropLanguage { syntax }),
31451 SyntaxKind::DROP_MATERIALIZED_VIEW => {
31452 Stmt::DropMaterializedView(DropMaterializedView { syntax })
31453 }
31454 SyntaxKind::DROP_OPERATOR => Stmt::DropOperator(DropOperator { syntax }),
31455 SyntaxKind::DROP_OPERATOR_CLASS => {
31456 Stmt::DropOperatorClass(DropOperatorClass { syntax })
31457 }
31458 SyntaxKind::DROP_OPERATOR_FAMILY => {
31459 Stmt::DropOperatorFamily(DropOperatorFamily { syntax })
31460 }
31461 SyntaxKind::DROP_OWNED => Stmt::DropOwned(DropOwned { syntax }),
31462 SyntaxKind::DROP_POLICY => Stmt::DropPolicy(DropPolicy { syntax }),
31463 SyntaxKind::DROP_PROCEDURE => Stmt::DropProcedure(DropProcedure { syntax }),
31464 SyntaxKind::DROP_PUBLICATION => Stmt::DropPublication(DropPublication { syntax }),
31465 SyntaxKind::DROP_ROLE => Stmt::DropRole(DropRole { syntax }),
31466 SyntaxKind::DROP_ROUTINE => Stmt::DropRoutine(DropRoutine { syntax }),
31467 SyntaxKind::DROP_RULE => Stmt::DropRule(DropRule { syntax }),
31468 SyntaxKind::DROP_SCHEMA => Stmt::DropSchema(DropSchema { syntax }),
31469 SyntaxKind::DROP_SEQUENCE => Stmt::DropSequence(DropSequence { syntax }),
31470 SyntaxKind::DROP_SERVER => Stmt::DropServer(DropServer { syntax }),
31471 SyntaxKind::DROP_STATISTICS => Stmt::DropStatistics(DropStatistics { syntax }),
31472 SyntaxKind::DROP_SUBSCRIPTION => Stmt::DropSubscription(DropSubscription { syntax }),
31473 SyntaxKind::DROP_TABLE => Stmt::DropTable(DropTable { syntax }),
31474 SyntaxKind::DROP_TABLESPACE => Stmt::DropTablespace(DropTablespace { syntax }),
31475 SyntaxKind::DROP_TEXT_SEARCH_CONFIG => {
31476 Stmt::DropTextSearchConfig(DropTextSearchConfig { syntax })
31477 }
31478 SyntaxKind::DROP_TEXT_SEARCH_DICT => {
31479 Stmt::DropTextSearchDict(DropTextSearchDict { syntax })
31480 }
31481 SyntaxKind::DROP_TEXT_SEARCH_PARSER => {
31482 Stmt::DropTextSearchParser(DropTextSearchParser { syntax })
31483 }
31484 SyntaxKind::DROP_TEXT_SEARCH_TEMPLATE => {
31485 Stmt::DropTextSearchTemplate(DropTextSearchTemplate { syntax })
31486 }
31487 SyntaxKind::DROP_TRANSFORM => Stmt::DropTransform(DropTransform { syntax }),
31488 SyntaxKind::DROP_TRIGGER => Stmt::DropTrigger(DropTrigger { syntax }),
31489 SyntaxKind::DROP_TYPE => Stmt::DropType(DropType { syntax }),
31490 SyntaxKind::DROP_USER => Stmt::DropUser(DropUser { syntax }),
31491 SyntaxKind::DROP_USER_MAPPING => Stmt::DropUserMapping(DropUserMapping { syntax }),
31492 SyntaxKind::DROP_VIEW => Stmt::DropView(DropView { syntax }),
31493 SyntaxKind::EXECUTE => Stmt::Execute(Execute { syntax }),
31494 SyntaxKind::EXPLAIN => Stmt::Explain(Explain { syntax }),
31495 SyntaxKind::FETCH => Stmt::Fetch(Fetch { syntax }),
31496 SyntaxKind::GRANT => Stmt::Grant(Grant { syntax }),
31497 SyntaxKind::IMPORT_FOREIGN_SCHEMA => {
31498 Stmt::ImportForeignSchema(ImportForeignSchema { syntax })
31499 }
31500 SyntaxKind::INSERT => Stmt::Insert(Insert { syntax }),
31501 SyntaxKind::LISTEN => Stmt::Listen(Listen { syntax }),
31502 SyntaxKind::LOAD => Stmt::Load(Load { syntax }),
31503 SyntaxKind::LOCK => Stmt::Lock(Lock { syntax }),
31504 SyntaxKind::MERGE => Stmt::Merge(Merge { syntax }),
31505 SyntaxKind::MOVE => Stmt::Move(Move { syntax }),
31506 SyntaxKind::NOTIFY => Stmt::Notify(Notify { syntax }),
31507 SyntaxKind::PAREN_SELECT => Stmt::ParenSelect(ParenSelect { syntax }),
31508 SyntaxKind::PREPARE => Stmt::Prepare(Prepare { syntax }),
31509 SyntaxKind::PREPARE_TRANSACTION => {
31510 Stmt::PrepareTransaction(PrepareTransaction { syntax })
31511 }
31512 SyntaxKind::REASSIGN => Stmt::Reassign(Reassign { syntax }),
31513 SyntaxKind::REFRESH => Stmt::Refresh(Refresh { syntax }),
31514 SyntaxKind::REINDEX => Stmt::Reindex(Reindex { syntax }),
31515 SyntaxKind::RELEASE_SAVEPOINT => Stmt::ReleaseSavepoint(ReleaseSavepoint { syntax }),
31516 SyntaxKind::RESET => Stmt::Reset(Reset { syntax }),
31517 SyntaxKind::RESET_SESSION_AUTH => Stmt::ResetSessionAuth(ResetSessionAuth { syntax }),
31518 SyntaxKind::REVOKE => Stmt::Revoke(Revoke { syntax }),
31519 SyntaxKind::ROLLBACK => Stmt::Rollback(Rollback { syntax }),
31520 SyntaxKind::SAVEPOINT => Stmt::Savepoint(Savepoint { syntax }),
31521 SyntaxKind::SECURITY_LABEL => Stmt::SecurityLabel(SecurityLabel { syntax }),
31522 SyntaxKind::SELECT => Stmt::Select(Select { syntax }),
31523 SyntaxKind::SELECT_INTO => Stmt::SelectInto(SelectInto { syntax }),
31524 SyntaxKind::SET => Stmt::Set(Set { syntax }),
31525 SyntaxKind::SET_CONSTRAINTS => Stmt::SetConstraints(SetConstraints { syntax }),
31526 SyntaxKind::SET_ROLE => Stmt::SetRole(SetRole { syntax }),
31527 SyntaxKind::SET_SESSION_AUTH => Stmt::SetSessionAuth(SetSessionAuth { syntax }),
31528 SyntaxKind::SET_TRANSACTION => Stmt::SetTransaction(SetTransaction { syntax }),
31529 SyntaxKind::SHOW => Stmt::Show(Show { syntax }),
31530 SyntaxKind::TABLE => Stmt::Table(Table { syntax }),
31531 SyntaxKind::TRUNCATE => Stmt::Truncate(Truncate { syntax }),
31532 SyntaxKind::UNLISTEN => Stmt::Unlisten(Unlisten { syntax }),
31533 SyntaxKind::UPDATE => Stmt::Update(Update { syntax }),
31534 SyntaxKind::VACUUM => Stmt::Vacuum(Vacuum { syntax }),
31535 SyntaxKind::VALUES => Stmt::Values(Values { syntax }),
31536 _ => {
31537 return None;
31538 }
31539 };
31540 Some(res)
31541 }
31542 #[inline]
31543 fn syntax(&self) -> &SyntaxNode {
31544 match self {
31545 Stmt::AlterAggregate(it) => &it.syntax,
31546 Stmt::AlterCollation(it) => &it.syntax,
31547 Stmt::AlterConversion(it) => &it.syntax,
31548 Stmt::AlterDatabase(it) => &it.syntax,
31549 Stmt::AlterDefaultPrivileges(it) => &it.syntax,
31550 Stmt::AlterDomain(it) => &it.syntax,
31551 Stmt::AlterEventTrigger(it) => &it.syntax,
31552 Stmt::AlterExtension(it) => &it.syntax,
31553 Stmt::AlterForeignDataWrapper(it) => &it.syntax,
31554 Stmt::AlterForeignTable(it) => &it.syntax,
31555 Stmt::AlterFunction(it) => &it.syntax,
31556 Stmt::AlterGroup(it) => &it.syntax,
31557 Stmt::AlterIndex(it) => &it.syntax,
31558 Stmt::AlterLanguage(it) => &it.syntax,
31559 Stmt::AlterLargeObject(it) => &it.syntax,
31560 Stmt::AlterMaterializedView(it) => &it.syntax,
31561 Stmt::AlterOperator(it) => &it.syntax,
31562 Stmt::AlterOperatorClass(it) => &it.syntax,
31563 Stmt::AlterOperatorFamily(it) => &it.syntax,
31564 Stmt::AlterPolicy(it) => &it.syntax,
31565 Stmt::AlterProcedure(it) => &it.syntax,
31566 Stmt::AlterPublication(it) => &it.syntax,
31567 Stmt::AlterRole(it) => &it.syntax,
31568 Stmt::AlterRoutine(it) => &it.syntax,
31569 Stmt::AlterRule(it) => &it.syntax,
31570 Stmt::AlterSchema(it) => &it.syntax,
31571 Stmt::AlterSequence(it) => &it.syntax,
31572 Stmt::AlterServer(it) => &it.syntax,
31573 Stmt::AlterStatistics(it) => &it.syntax,
31574 Stmt::AlterSubscription(it) => &it.syntax,
31575 Stmt::AlterSystem(it) => &it.syntax,
31576 Stmt::AlterTable(it) => &it.syntax,
31577 Stmt::AlterTablespace(it) => &it.syntax,
31578 Stmt::AlterTextSearchConfiguration(it) => &it.syntax,
31579 Stmt::AlterTextSearchDictionary(it) => &it.syntax,
31580 Stmt::AlterTextSearchParser(it) => &it.syntax,
31581 Stmt::AlterTextSearchTemplate(it) => &it.syntax,
31582 Stmt::AlterTrigger(it) => &it.syntax,
31583 Stmt::AlterType(it) => &it.syntax,
31584 Stmt::AlterUser(it) => &it.syntax,
31585 Stmt::AlterUserMapping(it) => &it.syntax,
31586 Stmt::AlterView(it) => &it.syntax,
31587 Stmt::Analyze(it) => &it.syntax,
31588 Stmt::Begin(it) => &it.syntax,
31589 Stmt::Call(it) => &it.syntax,
31590 Stmt::Checkpoint(it) => &it.syntax,
31591 Stmt::Close(it) => &it.syntax,
31592 Stmt::Cluster(it) => &it.syntax,
31593 Stmt::CommentOn(it) => &it.syntax,
31594 Stmt::Commit(it) => &it.syntax,
31595 Stmt::Copy(it) => &it.syntax,
31596 Stmt::CreateAccessMethod(it) => &it.syntax,
31597 Stmt::CreateAggregate(it) => &it.syntax,
31598 Stmt::CreateCast(it) => &it.syntax,
31599 Stmt::CreateCollation(it) => &it.syntax,
31600 Stmt::CreateConversion(it) => &it.syntax,
31601 Stmt::CreateDatabase(it) => &it.syntax,
31602 Stmt::CreateDomain(it) => &it.syntax,
31603 Stmt::CreateEventTrigger(it) => &it.syntax,
31604 Stmt::CreateExtension(it) => &it.syntax,
31605 Stmt::CreateForeignDataWrapper(it) => &it.syntax,
31606 Stmt::CreateForeignTable(it) => &it.syntax,
31607 Stmt::CreateFunction(it) => &it.syntax,
31608 Stmt::CreateGroup(it) => &it.syntax,
31609 Stmt::CreateIndex(it) => &it.syntax,
31610 Stmt::CreateLanguage(it) => &it.syntax,
31611 Stmt::CreateMaterializedView(it) => &it.syntax,
31612 Stmt::CreateOperator(it) => &it.syntax,
31613 Stmt::CreateOperatorClass(it) => &it.syntax,
31614 Stmt::CreateOperatorFamily(it) => &it.syntax,
31615 Stmt::CreatePolicy(it) => &it.syntax,
31616 Stmt::CreateProcedure(it) => &it.syntax,
31617 Stmt::CreatePublication(it) => &it.syntax,
31618 Stmt::CreateRole(it) => &it.syntax,
31619 Stmt::CreateRule(it) => &it.syntax,
31620 Stmt::CreateSchema(it) => &it.syntax,
31621 Stmt::CreateSequence(it) => &it.syntax,
31622 Stmt::CreateServer(it) => &it.syntax,
31623 Stmt::CreateStatistics(it) => &it.syntax,
31624 Stmt::CreateSubscription(it) => &it.syntax,
31625 Stmt::CreateTable(it) => &it.syntax,
31626 Stmt::CreateTableAs(it) => &it.syntax,
31627 Stmt::CreateTablespace(it) => &it.syntax,
31628 Stmt::CreateTextSearchConfiguration(it) => &it.syntax,
31629 Stmt::CreateTextSearchDictionary(it) => &it.syntax,
31630 Stmt::CreateTextSearchParser(it) => &it.syntax,
31631 Stmt::CreateTextSearchTemplate(it) => &it.syntax,
31632 Stmt::CreateTransform(it) => &it.syntax,
31633 Stmt::CreateTrigger(it) => &it.syntax,
31634 Stmt::CreateType(it) => &it.syntax,
31635 Stmt::CreateUser(it) => &it.syntax,
31636 Stmt::CreateUserMapping(it) => &it.syntax,
31637 Stmt::CreateView(it) => &it.syntax,
31638 Stmt::Deallocate(it) => &it.syntax,
31639 Stmt::Declare(it) => &it.syntax,
31640 Stmt::Delete(it) => &it.syntax,
31641 Stmt::Discard(it) => &it.syntax,
31642 Stmt::Do(it) => &it.syntax,
31643 Stmt::DropAccessMethod(it) => &it.syntax,
31644 Stmt::DropAggregate(it) => &it.syntax,
31645 Stmt::DropCast(it) => &it.syntax,
31646 Stmt::DropCollation(it) => &it.syntax,
31647 Stmt::DropConversion(it) => &it.syntax,
31648 Stmt::DropDatabase(it) => &it.syntax,
31649 Stmt::DropDomain(it) => &it.syntax,
31650 Stmt::DropEventTrigger(it) => &it.syntax,
31651 Stmt::DropExtension(it) => &it.syntax,
31652 Stmt::DropForeignDataWrapper(it) => &it.syntax,
31653 Stmt::DropForeignTable(it) => &it.syntax,
31654 Stmt::DropFunction(it) => &it.syntax,
31655 Stmt::DropGroup(it) => &it.syntax,
31656 Stmt::DropIndex(it) => &it.syntax,
31657 Stmt::DropLanguage(it) => &it.syntax,
31658 Stmt::DropMaterializedView(it) => &it.syntax,
31659 Stmt::DropOperator(it) => &it.syntax,
31660 Stmt::DropOperatorClass(it) => &it.syntax,
31661 Stmt::DropOperatorFamily(it) => &it.syntax,
31662 Stmt::DropOwned(it) => &it.syntax,
31663 Stmt::DropPolicy(it) => &it.syntax,
31664 Stmt::DropProcedure(it) => &it.syntax,
31665 Stmt::DropPublication(it) => &it.syntax,
31666 Stmt::DropRole(it) => &it.syntax,
31667 Stmt::DropRoutine(it) => &it.syntax,
31668 Stmt::DropRule(it) => &it.syntax,
31669 Stmt::DropSchema(it) => &it.syntax,
31670 Stmt::DropSequence(it) => &it.syntax,
31671 Stmt::DropServer(it) => &it.syntax,
31672 Stmt::DropStatistics(it) => &it.syntax,
31673 Stmt::DropSubscription(it) => &it.syntax,
31674 Stmt::DropTable(it) => &it.syntax,
31675 Stmt::DropTablespace(it) => &it.syntax,
31676 Stmt::DropTextSearchConfig(it) => &it.syntax,
31677 Stmt::DropTextSearchDict(it) => &it.syntax,
31678 Stmt::DropTextSearchParser(it) => &it.syntax,
31679 Stmt::DropTextSearchTemplate(it) => &it.syntax,
31680 Stmt::DropTransform(it) => &it.syntax,
31681 Stmt::DropTrigger(it) => &it.syntax,
31682 Stmt::DropType(it) => &it.syntax,
31683 Stmt::DropUser(it) => &it.syntax,
31684 Stmt::DropUserMapping(it) => &it.syntax,
31685 Stmt::DropView(it) => &it.syntax,
31686 Stmt::Execute(it) => &it.syntax,
31687 Stmt::Explain(it) => &it.syntax,
31688 Stmt::Fetch(it) => &it.syntax,
31689 Stmt::Grant(it) => &it.syntax,
31690 Stmt::ImportForeignSchema(it) => &it.syntax,
31691 Stmt::Insert(it) => &it.syntax,
31692 Stmt::Listen(it) => &it.syntax,
31693 Stmt::Load(it) => &it.syntax,
31694 Stmt::Lock(it) => &it.syntax,
31695 Stmt::Merge(it) => &it.syntax,
31696 Stmt::Move(it) => &it.syntax,
31697 Stmt::Notify(it) => &it.syntax,
31698 Stmt::ParenSelect(it) => &it.syntax,
31699 Stmt::Prepare(it) => &it.syntax,
31700 Stmt::PrepareTransaction(it) => &it.syntax,
31701 Stmt::Reassign(it) => &it.syntax,
31702 Stmt::Refresh(it) => &it.syntax,
31703 Stmt::Reindex(it) => &it.syntax,
31704 Stmt::ReleaseSavepoint(it) => &it.syntax,
31705 Stmt::Reset(it) => &it.syntax,
31706 Stmt::ResetSessionAuth(it) => &it.syntax,
31707 Stmt::Revoke(it) => &it.syntax,
31708 Stmt::Rollback(it) => &it.syntax,
31709 Stmt::Savepoint(it) => &it.syntax,
31710 Stmt::SecurityLabel(it) => &it.syntax,
31711 Stmt::Select(it) => &it.syntax,
31712 Stmt::SelectInto(it) => &it.syntax,
31713 Stmt::Set(it) => &it.syntax,
31714 Stmt::SetConstraints(it) => &it.syntax,
31715 Stmt::SetRole(it) => &it.syntax,
31716 Stmt::SetSessionAuth(it) => &it.syntax,
31717 Stmt::SetTransaction(it) => &it.syntax,
31718 Stmt::Show(it) => &it.syntax,
31719 Stmt::Table(it) => &it.syntax,
31720 Stmt::Truncate(it) => &it.syntax,
31721 Stmt::Unlisten(it) => &it.syntax,
31722 Stmt::Update(it) => &it.syntax,
31723 Stmt::Vacuum(it) => &it.syntax,
31724 Stmt::Values(it) => &it.syntax,
31725 }
31726 }
31727}
31728impl From<AlterAggregate> for Stmt {
31729 #[inline]
31730 fn from(node: AlterAggregate) -> Stmt {
31731 Stmt::AlterAggregate(node)
31732 }
31733}
31734impl From<AlterCollation> for Stmt {
31735 #[inline]
31736 fn from(node: AlterCollation) -> Stmt {
31737 Stmt::AlterCollation(node)
31738 }
31739}
31740impl From<AlterConversion> for Stmt {
31741 #[inline]
31742 fn from(node: AlterConversion) -> Stmt {
31743 Stmt::AlterConversion(node)
31744 }
31745}
31746impl From<AlterDatabase> for Stmt {
31747 #[inline]
31748 fn from(node: AlterDatabase) -> Stmt {
31749 Stmt::AlterDatabase(node)
31750 }
31751}
31752impl From<AlterDefaultPrivileges> for Stmt {
31753 #[inline]
31754 fn from(node: AlterDefaultPrivileges) -> Stmt {
31755 Stmt::AlterDefaultPrivileges(node)
31756 }
31757}
31758impl From<AlterDomain> for Stmt {
31759 #[inline]
31760 fn from(node: AlterDomain) -> Stmt {
31761 Stmt::AlterDomain(node)
31762 }
31763}
31764impl From<AlterEventTrigger> for Stmt {
31765 #[inline]
31766 fn from(node: AlterEventTrigger) -> Stmt {
31767 Stmt::AlterEventTrigger(node)
31768 }
31769}
31770impl From<AlterExtension> for Stmt {
31771 #[inline]
31772 fn from(node: AlterExtension) -> Stmt {
31773 Stmt::AlterExtension(node)
31774 }
31775}
31776impl From<AlterForeignDataWrapper> for Stmt {
31777 #[inline]
31778 fn from(node: AlterForeignDataWrapper) -> Stmt {
31779 Stmt::AlterForeignDataWrapper(node)
31780 }
31781}
31782impl From<AlterForeignTable> for Stmt {
31783 #[inline]
31784 fn from(node: AlterForeignTable) -> Stmt {
31785 Stmt::AlterForeignTable(node)
31786 }
31787}
31788impl From<AlterFunction> for Stmt {
31789 #[inline]
31790 fn from(node: AlterFunction) -> Stmt {
31791 Stmt::AlterFunction(node)
31792 }
31793}
31794impl From<AlterGroup> for Stmt {
31795 #[inline]
31796 fn from(node: AlterGroup) -> Stmt {
31797 Stmt::AlterGroup(node)
31798 }
31799}
31800impl From<AlterIndex> for Stmt {
31801 #[inline]
31802 fn from(node: AlterIndex) -> Stmt {
31803 Stmt::AlterIndex(node)
31804 }
31805}
31806impl From<AlterLanguage> for Stmt {
31807 #[inline]
31808 fn from(node: AlterLanguage) -> Stmt {
31809 Stmt::AlterLanguage(node)
31810 }
31811}
31812impl From<AlterLargeObject> for Stmt {
31813 #[inline]
31814 fn from(node: AlterLargeObject) -> Stmt {
31815 Stmt::AlterLargeObject(node)
31816 }
31817}
31818impl From<AlterMaterializedView> for Stmt {
31819 #[inline]
31820 fn from(node: AlterMaterializedView) -> Stmt {
31821 Stmt::AlterMaterializedView(node)
31822 }
31823}
31824impl From<AlterOperator> for Stmt {
31825 #[inline]
31826 fn from(node: AlterOperator) -> Stmt {
31827 Stmt::AlterOperator(node)
31828 }
31829}
31830impl From<AlterOperatorClass> for Stmt {
31831 #[inline]
31832 fn from(node: AlterOperatorClass) -> Stmt {
31833 Stmt::AlterOperatorClass(node)
31834 }
31835}
31836impl From<AlterOperatorFamily> for Stmt {
31837 #[inline]
31838 fn from(node: AlterOperatorFamily) -> Stmt {
31839 Stmt::AlterOperatorFamily(node)
31840 }
31841}
31842impl From<AlterPolicy> for Stmt {
31843 #[inline]
31844 fn from(node: AlterPolicy) -> Stmt {
31845 Stmt::AlterPolicy(node)
31846 }
31847}
31848impl From<AlterProcedure> for Stmt {
31849 #[inline]
31850 fn from(node: AlterProcedure) -> Stmt {
31851 Stmt::AlterProcedure(node)
31852 }
31853}
31854impl From<AlterPublication> for Stmt {
31855 #[inline]
31856 fn from(node: AlterPublication) -> Stmt {
31857 Stmt::AlterPublication(node)
31858 }
31859}
31860impl From<AlterRole> for Stmt {
31861 #[inline]
31862 fn from(node: AlterRole) -> Stmt {
31863 Stmt::AlterRole(node)
31864 }
31865}
31866impl From<AlterRoutine> for Stmt {
31867 #[inline]
31868 fn from(node: AlterRoutine) -> Stmt {
31869 Stmt::AlterRoutine(node)
31870 }
31871}
31872impl From<AlterRule> for Stmt {
31873 #[inline]
31874 fn from(node: AlterRule) -> Stmt {
31875 Stmt::AlterRule(node)
31876 }
31877}
31878impl From<AlterSchema> for Stmt {
31879 #[inline]
31880 fn from(node: AlterSchema) -> Stmt {
31881 Stmt::AlterSchema(node)
31882 }
31883}
31884impl From<AlterSequence> for Stmt {
31885 #[inline]
31886 fn from(node: AlterSequence) -> Stmt {
31887 Stmt::AlterSequence(node)
31888 }
31889}
31890impl From<AlterServer> for Stmt {
31891 #[inline]
31892 fn from(node: AlterServer) -> Stmt {
31893 Stmt::AlterServer(node)
31894 }
31895}
31896impl From<AlterStatistics> for Stmt {
31897 #[inline]
31898 fn from(node: AlterStatistics) -> Stmt {
31899 Stmt::AlterStatistics(node)
31900 }
31901}
31902impl From<AlterSubscription> for Stmt {
31903 #[inline]
31904 fn from(node: AlterSubscription) -> Stmt {
31905 Stmt::AlterSubscription(node)
31906 }
31907}
31908impl From<AlterSystem> for Stmt {
31909 #[inline]
31910 fn from(node: AlterSystem) -> Stmt {
31911 Stmt::AlterSystem(node)
31912 }
31913}
31914impl From<AlterTable> for Stmt {
31915 #[inline]
31916 fn from(node: AlterTable) -> Stmt {
31917 Stmt::AlterTable(node)
31918 }
31919}
31920impl From<AlterTablespace> for Stmt {
31921 #[inline]
31922 fn from(node: AlterTablespace) -> Stmt {
31923 Stmt::AlterTablespace(node)
31924 }
31925}
31926impl From<AlterTextSearchConfiguration> for Stmt {
31927 #[inline]
31928 fn from(node: AlterTextSearchConfiguration) -> Stmt {
31929 Stmt::AlterTextSearchConfiguration(node)
31930 }
31931}
31932impl From<AlterTextSearchDictionary> for Stmt {
31933 #[inline]
31934 fn from(node: AlterTextSearchDictionary) -> Stmt {
31935 Stmt::AlterTextSearchDictionary(node)
31936 }
31937}
31938impl From<AlterTextSearchParser> for Stmt {
31939 #[inline]
31940 fn from(node: AlterTextSearchParser) -> Stmt {
31941 Stmt::AlterTextSearchParser(node)
31942 }
31943}
31944impl From<AlterTextSearchTemplate> for Stmt {
31945 #[inline]
31946 fn from(node: AlterTextSearchTemplate) -> Stmt {
31947 Stmt::AlterTextSearchTemplate(node)
31948 }
31949}
31950impl From<AlterTrigger> for Stmt {
31951 #[inline]
31952 fn from(node: AlterTrigger) -> Stmt {
31953 Stmt::AlterTrigger(node)
31954 }
31955}
31956impl From<AlterType> for Stmt {
31957 #[inline]
31958 fn from(node: AlterType) -> Stmt {
31959 Stmt::AlterType(node)
31960 }
31961}
31962impl From<AlterUser> for Stmt {
31963 #[inline]
31964 fn from(node: AlterUser) -> Stmt {
31965 Stmt::AlterUser(node)
31966 }
31967}
31968impl From<AlterUserMapping> for Stmt {
31969 #[inline]
31970 fn from(node: AlterUserMapping) -> Stmt {
31971 Stmt::AlterUserMapping(node)
31972 }
31973}
31974impl From<AlterView> for Stmt {
31975 #[inline]
31976 fn from(node: AlterView) -> Stmt {
31977 Stmt::AlterView(node)
31978 }
31979}
31980impl From<Analyze> for Stmt {
31981 #[inline]
31982 fn from(node: Analyze) -> Stmt {
31983 Stmt::Analyze(node)
31984 }
31985}
31986impl From<Begin> for Stmt {
31987 #[inline]
31988 fn from(node: Begin) -> Stmt {
31989 Stmt::Begin(node)
31990 }
31991}
31992impl From<Call> for Stmt {
31993 #[inline]
31994 fn from(node: Call) -> Stmt {
31995 Stmt::Call(node)
31996 }
31997}
31998impl From<Checkpoint> for Stmt {
31999 #[inline]
32000 fn from(node: Checkpoint) -> Stmt {
32001 Stmt::Checkpoint(node)
32002 }
32003}
32004impl From<Close> for Stmt {
32005 #[inline]
32006 fn from(node: Close) -> Stmt {
32007 Stmt::Close(node)
32008 }
32009}
32010impl From<Cluster> for Stmt {
32011 #[inline]
32012 fn from(node: Cluster) -> Stmt {
32013 Stmt::Cluster(node)
32014 }
32015}
32016impl From<CommentOn> for Stmt {
32017 #[inline]
32018 fn from(node: CommentOn) -> Stmt {
32019 Stmt::CommentOn(node)
32020 }
32021}
32022impl From<Commit> for Stmt {
32023 #[inline]
32024 fn from(node: Commit) -> Stmt {
32025 Stmt::Commit(node)
32026 }
32027}
32028impl From<Copy> for Stmt {
32029 #[inline]
32030 fn from(node: Copy) -> Stmt {
32031 Stmt::Copy(node)
32032 }
32033}
32034impl From<CreateAccessMethod> for Stmt {
32035 #[inline]
32036 fn from(node: CreateAccessMethod) -> Stmt {
32037 Stmt::CreateAccessMethod(node)
32038 }
32039}
32040impl From<CreateAggregate> for Stmt {
32041 #[inline]
32042 fn from(node: CreateAggregate) -> Stmt {
32043 Stmt::CreateAggregate(node)
32044 }
32045}
32046impl From<CreateCast> for Stmt {
32047 #[inline]
32048 fn from(node: CreateCast) -> Stmt {
32049 Stmt::CreateCast(node)
32050 }
32051}
32052impl From<CreateCollation> for Stmt {
32053 #[inline]
32054 fn from(node: CreateCollation) -> Stmt {
32055 Stmt::CreateCollation(node)
32056 }
32057}
32058impl From<CreateConversion> for Stmt {
32059 #[inline]
32060 fn from(node: CreateConversion) -> Stmt {
32061 Stmt::CreateConversion(node)
32062 }
32063}
32064impl From<CreateDatabase> for Stmt {
32065 #[inline]
32066 fn from(node: CreateDatabase) -> Stmt {
32067 Stmt::CreateDatabase(node)
32068 }
32069}
32070impl From<CreateDomain> for Stmt {
32071 #[inline]
32072 fn from(node: CreateDomain) -> Stmt {
32073 Stmt::CreateDomain(node)
32074 }
32075}
32076impl From<CreateEventTrigger> for Stmt {
32077 #[inline]
32078 fn from(node: CreateEventTrigger) -> Stmt {
32079 Stmt::CreateEventTrigger(node)
32080 }
32081}
32082impl From<CreateExtension> for Stmt {
32083 #[inline]
32084 fn from(node: CreateExtension) -> Stmt {
32085 Stmt::CreateExtension(node)
32086 }
32087}
32088impl From<CreateForeignDataWrapper> for Stmt {
32089 #[inline]
32090 fn from(node: CreateForeignDataWrapper) -> Stmt {
32091 Stmt::CreateForeignDataWrapper(node)
32092 }
32093}
32094impl From<CreateForeignTable> for Stmt {
32095 #[inline]
32096 fn from(node: CreateForeignTable) -> Stmt {
32097 Stmt::CreateForeignTable(node)
32098 }
32099}
32100impl From<CreateFunction> for Stmt {
32101 #[inline]
32102 fn from(node: CreateFunction) -> Stmt {
32103 Stmt::CreateFunction(node)
32104 }
32105}
32106impl From<CreateGroup> for Stmt {
32107 #[inline]
32108 fn from(node: CreateGroup) -> Stmt {
32109 Stmt::CreateGroup(node)
32110 }
32111}
32112impl From<CreateIndex> for Stmt {
32113 #[inline]
32114 fn from(node: CreateIndex) -> Stmt {
32115 Stmt::CreateIndex(node)
32116 }
32117}
32118impl From<CreateLanguage> for Stmt {
32119 #[inline]
32120 fn from(node: CreateLanguage) -> Stmt {
32121 Stmt::CreateLanguage(node)
32122 }
32123}
32124impl From<CreateMaterializedView> for Stmt {
32125 #[inline]
32126 fn from(node: CreateMaterializedView) -> Stmt {
32127 Stmt::CreateMaterializedView(node)
32128 }
32129}
32130impl From<CreateOperator> for Stmt {
32131 #[inline]
32132 fn from(node: CreateOperator) -> Stmt {
32133 Stmt::CreateOperator(node)
32134 }
32135}
32136impl From<CreateOperatorClass> for Stmt {
32137 #[inline]
32138 fn from(node: CreateOperatorClass) -> Stmt {
32139 Stmt::CreateOperatorClass(node)
32140 }
32141}
32142impl From<CreateOperatorFamily> for Stmt {
32143 #[inline]
32144 fn from(node: CreateOperatorFamily) -> Stmt {
32145 Stmt::CreateOperatorFamily(node)
32146 }
32147}
32148impl From<CreatePolicy> for Stmt {
32149 #[inline]
32150 fn from(node: CreatePolicy) -> Stmt {
32151 Stmt::CreatePolicy(node)
32152 }
32153}
32154impl From<CreateProcedure> for Stmt {
32155 #[inline]
32156 fn from(node: CreateProcedure) -> Stmt {
32157 Stmt::CreateProcedure(node)
32158 }
32159}
32160impl From<CreatePublication> for Stmt {
32161 #[inline]
32162 fn from(node: CreatePublication) -> Stmt {
32163 Stmt::CreatePublication(node)
32164 }
32165}
32166impl From<CreateRole> for Stmt {
32167 #[inline]
32168 fn from(node: CreateRole) -> Stmt {
32169 Stmt::CreateRole(node)
32170 }
32171}
32172impl From<CreateRule> for Stmt {
32173 #[inline]
32174 fn from(node: CreateRule) -> Stmt {
32175 Stmt::CreateRule(node)
32176 }
32177}
32178impl From<CreateSchema> for Stmt {
32179 #[inline]
32180 fn from(node: CreateSchema) -> Stmt {
32181 Stmt::CreateSchema(node)
32182 }
32183}
32184impl From<CreateSequence> for Stmt {
32185 #[inline]
32186 fn from(node: CreateSequence) -> Stmt {
32187 Stmt::CreateSequence(node)
32188 }
32189}
32190impl From<CreateServer> for Stmt {
32191 #[inline]
32192 fn from(node: CreateServer) -> Stmt {
32193 Stmt::CreateServer(node)
32194 }
32195}
32196impl From<CreateStatistics> for Stmt {
32197 #[inline]
32198 fn from(node: CreateStatistics) -> Stmt {
32199 Stmt::CreateStatistics(node)
32200 }
32201}
32202impl From<CreateSubscription> for Stmt {
32203 #[inline]
32204 fn from(node: CreateSubscription) -> Stmt {
32205 Stmt::CreateSubscription(node)
32206 }
32207}
32208impl From<CreateTable> for Stmt {
32209 #[inline]
32210 fn from(node: CreateTable) -> Stmt {
32211 Stmt::CreateTable(node)
32212 }
32213}
32214impl From<CreateTableAs> for Stmt {
32215 #[inline]
32216 fn from(node: CreateTableAs) -> Stmt {
32217 Stmt::CreateTableAs(node)
32218 }
32219}
32220impl From<CreateTablespace> for Stmt {
32221 #[inline]
32222 fn from(node: CreateTablespace) -> Stmt {
32223 Stmt::CreateTablespace(node)
32224 }
32225}
32226impl From<CreateTextSearchConfiguration> for Stmt {
32227 #[inline]
32228 fn from(node: CreateTextSearchConfiguration) -> Stmt {
32229 Stmt::CreateTextSearchConfiguration(node)
32230 }
32231}
32232impl From<CreateTextSearchDictionary> for Stmt {
32233 #[inline]
32234 fn from(node: CreateTextSearchDictionary) -> Stmt {
32235 Stmt::CreateTextSearchDictionary(node)
32236 }
32237}
32238impl From<CreateTextSearchParser> for Stmt {
32239 #[inline]
32240 fn from(node: CreateTextSearchParser) -> Stmt {
32241 Stmt::CreateTextSearchParser(node)
32242 }
32243}
32244impl From<CreateTextSearchTemplate> for Stmt {
32245 #[inline]
32246 fn from(node: CreateTextSearchTemplate) -> Stmt {
32247 Stmt::CreateTextSearchTemplate(node)
32248 }
32249}
32250impl From<CreateTransform> for Stmt {
32251 #[inline]
32252 fn from(node: CreateTransform) -> Stmt {
32253 Stmt::CreateTransform(node)
32254 }
32255}
32256impl From<CreateTrigger> for Stmt {
32257 #[inline]
32258 fn from(node: CreateTrigger) -> Stmt {
32259 Stmt::CreateTrigger(node)
32260 }
32261}
32262impl From<CreateType> for Stmt {
32263 #[inline]
32264 fn from(node: CreateType) -> Stmt {
32265 Stmt::CreateType(node)
32266 }
32267}
32268impl From<CreateUser> for Stmt {
32269 #[inline]
32270 fn from(node: CreateUser) -> Stmt {
32271 Stmt::CreateUser(node)
32272 }
32273}
32274impl From<CreateUserMapping> for Stmt {
32275 #[inline]
32276 fn from(node: CreateUserMapping) -> Stmt {
32277 Stmt::CreateUserMapping(node)
32278 }
32279}
32280impl From<CreateView> for Stmt {
32281 #[inline]
32282 fn from(node: CreateView) -> Stmt {
32283 Stmt::CreateView(node)
32284 }
32285}
32286impl From<Deallocate> for Stmt {
32287 #[inline]
32288 fn from(node: Deallocate) -> Stmt {
32289 Stmt::Deallocate(node)
32290 }
32291}
32292impl From<Declare> for Stmt {
32293 #[inline]
32294 fn from(node: Declare) -> Stmt {
32295 Stmt::Declare(node)
32296 }
32297}
32298impl From<Delete> for Stmt {
32299 #[inline]
32300 fn from(node: Delete) -> Stmt {
32301 Stmt::Delete(node)
32302 }
32303}
32304impl From<Discard> for Stmt {
32305 #[inline]
32306 fn from(node: Discard) -> Stmt {
32307 Stmt::Discard(node)
32308 }
32309}
32310impl From<Do> for Stmt {
32311 #[inline]
32312 fn from(node: Do) -> Stmt {
32313 Stmt::Do(node)
32314 }
32315}
32316impl From<DropAccessMethod> for Stmt {
32317 #[inline]
32318 fn from(node: DropAccessMethod) -> Stmt {
32319 Stmt::DropAccessMethod(node)
32320 }
32321}
32322impl From<DropAggregate> for Stmt {
32323 #[inline]
32324 fn from(node: DropAggregate) -> Stmt {
32325 Stmt::DropAggregate(node)
32326 }
32327}
32328impl From<DropCast> for Stmt {
32329 #[inline]
32330 fn from(node: DropCast) -> Stmt {
32331 Stmt::DropCast(node)
32332 }
32333}
32334impl From<DropCollation> for Stmt {
32335 #[inline]
32336 fn from(node: DropCollation) -> Stmt {
32337 Stmt::DropCollation(node)
32338 }
32339}
32340impl From<DropConversion> for Stmt {
32341 #[inline]
32342 fn from(node: DropConversion) -> Stmt {
32343 Stmt::DropConversion(node)
32344 }
32345}
32346impl From<DropDatabase> for Stmt {
32347 #[inline]
32348 fn from(node: DropDatabase) -> Stmt {
32349 Stmt::DropDatabase(node)
32350 }
32351}
32352impl From<DropDomain> for Stmt {
32353 #[inline]
32354 fn from(node: DropDomain) -> Stmt {
32355 Stmt::DropDomain(node)
32356 }
32357}
32358impl From<DropEventTrigger> for Stmt {
32359 #[inline]
32360 fn from(node: DropEventTrigger) -> Stmt {
32361 Stmt::DropEventTrigger(node)
32362 }
32363}
32364impl From<DropExtension> for Stmt {
32365 #[inline]
32366 fn from(node: DropExtension) -> Stmt {
32367 Stmt::DropExtension(node)
32368 }
32369}
32370impl From<DropForeignDataWrapper> for Stmt {
32371 #[inline]
32372 fn from(node: DropForeignDataWrapper) -> Stmt {
32373 Stmt::DropForeignDataWrapper(node)
32374 }
32375}
32376impl From<DropForeignTable> for Stmt {
32377 #[inline]
32378 fn from(node: DropForeignTable) -> Stmt {
32379 Stmt::DropForeignTable(node)
32380 }
32381}
32382impl From<DropFunction> for Stmt {
32383 #[inline]
32384 fn from(node: DropFunction) -> Stmt {
32385 Stmt::DropFunction(node)
32386 }
32387}
32388impl From<DropGroup> for Stmt {
32389 #[inline]
32390 fn from(node: DropGroup) -> Stmt {
32391 Stmt::DropGroup(node)
32392 }
32393}
32394impl From<DropIndex> for Stmt {
32395 #[inline]
32396 fn from(node: DropIndex) -> Stmt {
32397 Stmt::DropIndex(node)
32398 }
32399}
32400impl From<DropLanguage> for Stmt {
32401 #[inline]
32402 fn from(node: DropLanguage) -> Stmt {
32403 Stmt::DropLanguage(node)
32404 }
32405}
32406impl From<DropMaterializedView> for Stmt {
32407 #[inline]
32408 fn from(node: DropMaterializedView) -> Stmt {
32409 Stmt::DropMaterializedView(node)
32410 }
32411}
32412impl From<DropOperator> for Stmt {
32413 #[inline]
32414 fn from(node: DropOperator) -> Stmt {
32415 Stmt::DropOperator(node)
32416 }
32417}
32418impl From<DropOperatorClass> for Stmt {
32419 #[inline]
32420 fn from(node: DropOperatorClass) -> Stmt {
32421 Stmt::DropOperatorClass(node)
32422 }
32423}
32424impl From<DropOperatorFamily> for Stmt {
32425 #[inline]
32426 fn from(node: DropOperatorFamily) -> Stmt {
32427 Stmt::DropOperatorFamily(node)
32428 }
32429}
32430impl From<DropOwned> for Stmt {
32431 #[inline]
32432 fn from(node: DropOwned) -> Stmt {
32433 Stmt::DropOwned(node)
32434 }
32435}
32436impl From<DropPolicy> for Stmt {
32437 #[inline]
32438 fn from(node: DropPolicy) -> Stmt {
32439 Stmt::DropPolicy(node)
32440 }
32441}
32442impl From<DropProcedure> for Stmt {
32443 #[inline]
32444 fn from(node: DropProcedure) -> Stmt {
32445 Stmt::DropProcedure(node)
32446 }
32447}
32448impl From<DropPublication> for Stmt {
32449 #[inline]
32450 fn from(node: DropPublication) -> Stmt {
32451 Stmt::DropPublication(node)
32452 }
32453}
32454impl From<DropRole> for Stmt {
32455 #[inline]
32456 fn from(node: DropRole) -> Stmt {
32457 Stmt::DropRole(node)
32458 }
32459}
32460impl From<DropRoutine> for Stmt {
32461 #[inline]
32462 fn from(node: DropRoutine) -> Stmt {
32463 Stmt::DropRoutine(node)
32464 }
32465}
32466impl From<DropRule> for Stmt {
32467 #[inline]
32468 fn from(node: DropRule) -> Stmt {
32469 Stmt::DropRule(node)
32470 }
32471}
32472impl From<DropSchema> for Stmt {
32473 #[inline]
32474 fn from(node: DropSchema) -> Stmt {
32475 Stmt::DropSchema(node)
32476 }
32477}
32478impl From<DropSequence> for Stmt {
32479 #[inline]
32480 fn from(node: DropSequence) -> Stmt {
32481 Stmt::DropSequence(node)
32482 }
32483}
32484impl From<DropServer> for Stmt {
32485 #[inline]
32486 fn from(node: DropServer) -> Stmt {
32487 Stmt::DropServer(node)
32488 }
32489}
32490impl From<DropStatistics> for Stmt {
32491 #[inline]
32492 fn from(node: DropStatistics) -> Stmt {
32493 Stmt::DropStatistics(node)
32494 }
32495}
32496impl From<DropSubscription> for Stmt {
32497 #[inline]
32498 fn from(node: DropSubscription) -> Stmt {
32499 Stmt::DropSubscription(node)
32500 }
32501}
32502impl From<DropTable> for Stmt {
32503 #[inline]
32504 fn from(node: DropTable) -> Stmt {
32505 Stmt::DropTable(node)
32506 }
32507}
32508impl From<DropTablespace> for Stmt {
32509 #[inline]
32510 fn from(node: DropTablespace) -> Stmt {
32511 Stmt::DropTablespace(node)
32512 }
32513}
32514impl From<DropTextSearchConfig> for Stmt {
32515 #[inline]
32516 fn from(node: DropTextSearchConfig) -> Stmt {
32517 Stmt::DropTextSearchConfig(node)
32518 }
32519}
32520impl From<DropTextSearchDict> for Stmt {
32521 #[inline]
32522 fn from(node: DropTextSearchDict) -> Stmt {
32523 Stmt::DropTextSearchDict(node)
32524 }
32525}
32526impl From<DropTextSearchParser> for Stmt {
32527 #[inline]
32528 fn from(node: DropTextSearchParser) -> Stmt {
32529 Stmt::DropTextSearchParser(node)
32530 }
32531}
32532impl From<DropTextSearchTemplate> for Stmt {
32533 #[inline]
32534 fn from(node: DropTextSearchTemplate) -> Stmt {
32535 Stmt::DropTextSearchTemplate(node)
32536 }
32537}
32538impl From<DropTransform> for Stmt {
32539 #[inline]
32540 fn from(node: DropTransform) -> Stmt {
32541 Stmt::DropTransform(node)
32542 }
32543}
32544impl From<DropTrigger> for Stmt {
32545 #[inline]
32546 fn from(node: DropTrigger) -> Stmt {
32547 Stmt::DropTrigger(node)
32548 }
32549}
32550impl From<DropType> for Stmt {
32551 #[inline]
32552 fn from(node: DropType) -> Stmt {
32553 Stmt::DropType(node)
32554 }
32555}
32556impl From<DropUser> for Stmt {
32557 #[inline]
32558 fn from(node: DropUser) -> Stmt {
32559 Stmt::DropUser(node)
32560 }
32561}
32562impl From<DropUserMapping> for Stmt {
32563 #[inline]
32564 fn from(node: DropUserMapping) -> Stmt {
32565 Stmt::DropUserMapping(node)
32566 }
32567}
32568impl From<DropView> for Stmt {
32569 #[inline]
32570 fn from(node: DropView) -> Stmt {
32571 Stmt::DropView(node)
32572 }
32573}
32574impl From<Execute> for Stmt {
32575 #[inline]
32576 fn from(node: Execute) -> Stmt {
32577 Stmt::Execute(node)
32578 }
32579}
32580impl From<Explain> for Stmt {
32581 #[inline]
32582 fn from(node: Explain) -> Stmt {
32583 Stmt::Explain(node)
32584 }
32585}
32586impl From<Fetch> for Stmt {
32587 #[inline]
32588 fn from(node: Fetch) -> Stmt {
32589 Stmt::Fetch(node)
32590 }
32591}
32592impl From<Grant> for Stmt {
32593 #[inline]
32594 fn from(node: Grant) -> Stmt {
32595 Stmt::Grant(node)
32596 }
32597}
32598impl From<ImportForeignSchema> for Stmt {
32599 #[inline]
32600 fn from(node: ImportForeignSchema) -> Stmt {
32601 Stmt::ImportForeignSchema(node)
32602 }
32603}
32604impl From<Insert> for Stmt {
32605 #[inline]
32606 fn from(node: Insert) -> Stmt {
32607 Stmt::Insert(node)
32608 }
32609}
32610impl From<Listen> for Stmt {
32611 #[inline]
32612 fn from(node: Listen) -> Stmt {
32613 Stmt::Listen(node)
32614 }
32615}
32616impl From<Load> for Stmt {
32617 #[inline]
32618 fn from(node: Load) -> Stmt {
32619 Stmt::Load(node)
32620 }
32621}
32622impl From<Lock> for Stmt {
32623 #[inline]
32624 fn from(node: Lock) -> Stmt {
32625 Stmt::Lock(node)
32626 }
32627}
32628impl From<Merge> for Stmt {
32629 #[inline]
32630 fn from(node: Merge) -> Stmt {
32631 Stmt::Merge(node)
32632 }
32633}
32634impl From<Move> for Stmt {
32635 #[inline]
32636 fn from(node: Move) -> Stmt {
32637 Stmt::Move(node)
32638 }
32639}
32640impl From<Notify> for Stmt {
32641 #[inline]
32642 fn from(node: Notify) -> Stmt {
32643 Stmt::Notify(node)
32644 }
32645}
32646impl From<ParenSelect> for Stmt {
32647 #[inline]
32648 fn from(node: ParenSelect) -> Stmt {
32649 Stmt::ParenSelect(node)
32650 }
32651}
32652impl From<Prepare> for Stmt {
32653 #[inline]
32654 fn from(node: Prepare) -> Stmt {
32655 Stmt::Prepare(node)
32656 }
32657}
32658impl From<PrepareTransaction> for Stmt {
32659 #[inline]
32660 fn from(node: PrepareTransaction) -> Stmt {
32661 Stmt::PrepareTransaction(node)
32662 }
32663}
32664impl From<Reassign> for Stmt {
32665 #[inline]
32666 fn from(node: Reassign) -> Stmt {
32667 Stmt::Reassign(node)
32668 }
32669}
32670impl From<Refresh> for Stmt {
32671 #[inline]
32672 fn from(node: Refresh) -> Stmt {
32673 Stmt::Refresh(node)
32674 }
32675}
32676impl From<Reindex> for Stmt {
32677 #[inline]
32678 fn from(node: Reindex) -> Stmt {
32679 Stmt::Reindex(node)
32680 }
32681}
32682impl From<ReleaseSavepoint> for Stmt {
32683 #[inline]
32684 fn from(node: ReleaseSavepoint) -> Stmt {
32685 Stmt::ReleaseSavepoint(node)
32686 }
32687}
32688impl From<Reset> for Stmt {
32689 #[inline]
32690 fn from(node: Reset) -> Stmt {
32691 Stmt::Reset(node)
32692 }
32693}
32694impl From<ResetSessionAuth> for Stmt {
32695 #[inline]
32696 fn from(node: ResetSessionAuth) -> Stmt {
32697 Stmt::ResetSessionAuth(node)
32698 }
32699}
32700impl From<Revoke> for Stmt {
32701 #[inline]
32702 fn from(node: Revoke) -> Stmt {
32703 Stmt::Revoke(node)
32704 }
32705}
32706impl From<Rollback> for Stmt {
32707 #[inline]
32708 fn from(node: Rollback) -> Stmt {
32709 Stmt::Rollback(node)
32710 }
32711}
32712impl From<Savepoint> for Stmt {
32713 #[inline]
32714 fn from(node: Savepoint) -> Stmt {
32715 Stmt::Savepoint(node)
32716 }
32717}
32718impl From<SecurityLabel> for Stmt {
32719 #[inline]
32720 fn from(node: SecurityLabel) -> Stmt {
32721 Stmt::SecurityLabel(node)
32722 }
32723}
32724impl From<Select> for Stmt {
32725 #[inline]
32726 fn from(node: Select) -> Stmt {
32727 Stmt::Select(node)
32728 }
32729}
32730impl From<SelectInto> for Stmt {
32731 #[inline]
32732 fn from(node: SelectInto) -> Stmt {
32733 Stmt::SelectInto(node)
32734 }
32735}
32736impl From<Set> for Stmt {
32737 #[inline]
32738 fn from(node: Set) -> Stmt {
32739 Stmt::Set(node)
32740 }
32741}
32742impl From<SetConstraints> for Stmt {
32743 #[inline]
32744 fn from(node: SetConstraints) -> Stmt {
32745 Stmt::SetConstraints(node)
32746 }
32747}
32748impl From<SetRole> for Stmt {
32749 #[inline]
32750 fn from(node: SetRole) -> Stmt {
32751 Stmt::SetRole(node)
32752 }
32753}
32754impl From<SetSessionAuth> for Stmt {
32755 #[inline]
32756 fn from(node: SetSessionAuth) -> Stmt {
32757 Stmt::SetSessionAuth(node)
32758 }
32759}
32760impl From<SetTransaction> for Stmt {
32761 #[inline]
32762 fn from(node: SetTransaction) -> Stmt {
32763 Stmt::SetTransaction(node)
32764 }
32765}
32766impl From<Show> for Stmt {
32767 #[inline]
32768 fn from(node: Show) -> Stmt {
32769 Stmt::Show(node)
32770 }
32771}
32772impl From<Table> for Stmt {
32773 #[inline]
32774 fn from(node: Table) -> Stmt {
32775 Stmt::Table(node)
32776 }
32777}
32778impl From<Truncate> for Stmt {
32779 #[inline]
32780 fn from(node: Truncate) -> Stmt {
32781 Stmt::Truncate(node)
32782 }
32783}
32784impl From<Unlisten> for Stmt {
32785 #[inline]
32786 fn from(node: Unlisten) -> Stmt {
32787 Stmt::Unlisten(node)
32788 }
32789}
32790impl From<Update> for Stmt {
32791 #[inline]
32792 fn from(node: Update) -> Stmt {
32793 Stmt::Update(node)
32794 }
32795}
32796impl From<Vacuum> for Stmt {
32797 #[inline]
32798 fn from(node: Vacuum) -> Stmt {
32799 Stmt::Vacuum(node)
32800 }
32801}
32802impl From<Values> for Stmt {
32803 #[inline]
32804 fn from(node: Values) -> Stmt {
32805 Stmt::Values(node)
32806 }
32807}
32808impl AstNode for TableArg {
32809 #[inline]
32810 fn can_cast(kind: SyntaxKind) -> bool {
32811 matches!(kind, SyntaxKind::COLUMN | SyntaxKind::LIKE_CLAUSE)
32812 }
32813 #[inline]
32814 fn cast(syntax: SyntaxNode) -> Option<Self> {
32815 let res = match syntax.kind() {
32816 SyntaxKind::COLUMN => TableArg::Column(Column { syntax }),
32817 SyntaxKind::LIKE_CLAUSE => TableArg::LikeClause(LikeClause { syntax }),
32818 _ => {
32819 if let Some(result) = TableConstraint::cast(syntax) {
32820 return Some(TableArg::TableConstraint(result));
32821 }
32822 return None;
32823 }
32824 };
32825 Some(res)
32826 }
32827 #[inline]
32828 fn syntax(&self) -> &SyntaxNode {
32829 match self {
32830 TableArg::Column(it) => &it.syntax,
32831 TableArg::LikeClause(it) => &it.syntax,
32832 TableArg::TableConstraint(it) => it.syntax(),
32833 }
32834 }
32835}
32836impl From<Column> for TableArg {
32837 #[inline]
32838 fn from(node: Column) -> TableArg {
32839 TableArg::Column(node)
32840 }
32841}
32842impl From<LikeClause> for TableArg {
32843 #[inline]
32844 fn from(node: LikeClause) -> TableArg {
32845 TableArg::LikeClause(node)
32846 }
32847}
32848impl AstNode for TableConstraint {
32849 #[inline]
32850 fn can_cast(kind: SyntaxKind) -> bool {
32851 matches!(
32852 kind,
32853 SyntaxKind::CHECK_CONSTRAINT
32854 | SyntaxKind::EXCLUDE_CONSTRAINT
32855 | SyntaxKind::FOREIGN_KEY_CONSTRAINT
32856 | SyntaxKind::PRIMARY_KEY_CONSTRAINT
32857 | SyntaxKind::UNIQUE_CONSTRAINT
32858 )
32859 }
32860 #[inline]
32861 fn cast(syntax: SyntaxNode) -> Option<Self> {
32862 let res = match syntax.kind() {
32863 SyntaxKind::CHECK_CONSTRAINT => {
32864 TableConstraint::CheckConstraint(CheckConstraint { syntax })
32865 }
32866 SyntaxKind::EXCLUDE_CONSTRAINT => {
32867 TableConstraint::ExcludeConstraint(ExcludeConstraint { syntax })
32868 }
32869 SyntaxKind::FOREIGN_KEY_CONSTRAINT => {
32870 TableConstraint::ForeignKeyConstraint(ForeignKeyConstraint { syntax })
32871 }
32872 SyntaxKind::PRIMARY_KEY_CONSTRAINT => {
32873 TableConstraint::PrimaryKeyConstraint(PrimaryKeyConstraint { syntax })
32874 }
32875 SyntaxKind::UNIQUE_CONSTRAINT => {
32876 TableConstraint::UniqueConstraint(UniqueConstraint { syntax })
32877 }
32878 _ => {
32879 return None;
32880 }
32881 };
32882 Some(res)
32883 }
32884 #[inline]
32885 fn syntax(&self) -> &SyntaxNode {
32886 match self {
32887 TableConstraint::CheckConstraint(it) => &it.syntax,
32888 TableConstraint::ExcludeConstraint(it) => &it.syntax,
32889 TableConstraint::ForeignKeyConstraint(it) => &it.syntax,
32890 TableConstraint::PrimaryKeyConstraint(it) => &it.syntax,
32891 TableConstraint::UniqueConstraint(it) => &it.syntax,
32892 }
32893 }
32894}
32895impl From<CheckConstraint> for TableConstraint {
32896 #[inline]
32897 fn from(node: CheckConstraint) -> TableConstraint {
32898 TableConstraint::CheckConstraint(node)
32899 }
32900}
32901impl From<ExcludeConstraint> for TableConstraint {
32902 #[inline]
32903 fn from(node: ExcludeConstraint) -> TableConstraint {
32904 TableConstraint::ExcludeConstraint(node)
32905 }
32906}
32907impl From<ForeignKeyConstraint> for TableConstraint {
32908 #[inline]
32909 fn from(node: ForeignKeyConstraint) -> TableConstraint {
32910 TableConstraint::ForeignKeyConstraint(node)
32911 }
32912}
32913impl From<PrimaryKeyConstraint> for TableConstraint {
32914 #[inline]
32915 fn from(node: PrimaryKeyConstraint) -> TableConstraint {
32916 TableConstraint::PrimaryKeyConstraint(node)
32917 }
32918}
32919impl From<UniqueConstraint> for TableConstraint {
32920 #[inline]
32921 fn from(node: UniqueConstraint) -> TableConstraint {
32922 TableConstraint::UniqueConstraint(node)
32923 }
32924}
32925impl AstNode for Timezone {
32926 #[inline]
32927 fn can_cast(kind: SyntaxKind) -> bool {
32928 matches!(
32929 kind,
32930 SyntaxKind::WITH_TIMEZONE | SyntaxKind::WITHOUT_TIMEZONE
32931 )
32932 }
32933 #[inline]
32934 fn cast(syntax: SyntaxNode) -> Option<Self> {
32935 let res = match syntax.kind() {
32936 SyntaxKind::WITH_TIMEZONE => Timezone::WithTimezone(WithTimezone { syntax }),
32937 SyntaxKind::WITHOUT_TIMEZONE => Timezone::WithoutTimezone(WithoutTimezone { syntax }),
32938 _ => {
32939 return None;
32940 }
32941 };
32942 Some(res)
32943 }
32944 #[inline]
32945 fn syntax(&self) -> &SyntaxNode {
32946 match self {
32947 Timezone::WithTimezone(it) => &it.syntax,
32948 Timezone::WithoutTimezone(it) => &it.syntax,
32949 }
32950 }
32951}
32952impl From<WithTimezone> for Timezone {
32953 #[inline]
32954 fn from(node: WithTimezone) -> Timezone {
32955 Timezone::WithTimezone(node)
32956 }
32957}
32958impl From<WithoutTimezone> for Timezone {
32959 #[inline]
32960 fn from(node: WithoutTimezone) -> Timezone {
32961 Timezone::WithoutTimezone(node)
32962 }
32963}
32964impl AstNode for TransactionMode {
32965 #[inline]
32966 fn can_cast(kind: SyntaxKind) -> bool {
32967 matches!(
32968 kind,
32969 SyntaxKind::DEFERRABLE
32970 | SyntaxKind::NOT_DEFERRABLE
32971 | SyntaxKind::READ_COMMITTED
32972 | SyntaxKind::READ_ONLY
32973 | SyntaxKind::READ_UNCOMMITTED
32974 | SyntaxKind::READ_WRITE
32975 | SyntaxKind::REPEATABLE_READ
32976 | SyntaxKind::SERIALIZABLE
32977 )
32978 }
32979 #[inline]
32980 fn cast(syntax: SyntaxNode) -> Option<Self> {
32981 let res = match syntax.kind() {
32982 SyntaxKind::DEFERRABLE => TransactionMode::Deferrable(Deferrable { syntax }),
32983 SyntaxKind::NOT_DEFERRABLE => TransactionMode::NotDeferrable(NotDeferrable { syntax }),
32984 SyntaxKind::READ_COMMITTED => TransactionMode::ReadCommitted(ReadCommitted { syntax }),
32985 SyntaxKind::READ_ONLY => TransactionMode::ReadOnly(ReadOnly { syntax }),
32986 SyntaxKind::READ_UNCOMMITTED => {
32987 TransactionMode::ReadUncommitted(ReadUncommitted { syntax })
32988 }
32989 SyntaxKind::READ_WRITE => TransactionMode::ReadWrite(ReadWrite { syntax }),
32990 SyntaxKind::REPEATABLE_READ => {
32991 TransactionMode::RepeatableRead(RepeatableRead { syntax })
32992 }
32993 SyntaxKind::SERIALIZABLE => TransactionMode::Serializable(Serializable { syntax }),
32994 _ => {
32995 return None;
32996 }
32997 };
32998 Some(res)
32999 }
33000 #[inline]
33001 fn syntax(&self) -> &SyntaxNode {
33002 match self {
33003 TransactionMode::Deferrable(it) => &it.syntax,
33004 TransactionMode::NotDeferrable(it) => &it.syntax,
33005 TransactionMode::ReadCommitted(it) => &it.syntax,
33006 TransactionMode::ReadOnly(it) => &it.syntax,
33007 TransactionMode::ReadUncommitted(it) => &it.syntax,
33008 TransactionMode::ReadWrite(it) => &it.syntax,
33009 TransactionMode::RepeatableRead(it) => &it.syntax,
33010 TransactionMode::Serializable(it) => &it.syntax,
33011 }
33012 }
33013}
33014impl From<Deferrable> for TransactionMode {
33015 #[inline]
33016 fn from(node: Deferrable) -> TransactionMode {
33017 TransactionMode::Deferrable(node)
33018 }
33019}
33020impl From<NotDeferrable> for TransactionMode {
33021 #[inline]
33022 fn from(node: NotDeferrable) -> TransactionMode {
33023 TransactionMode::NotDeferrable(node)
33024 }
33025}
33026impl From<ReadCommitted> for TransactionMode {
33027 #[inline]
33028 fn from(node: ReadCommitted) -> TransactionMode {
33029 TransactionMode::ReadCommitted(node)
33030 }
33031}
33032impl From<ReadOnly> for TransactionMode {
33033 #[inline]
33034 fn from(node: ReadOnly) -> TransactionMode {
33035 TransactionMode::ReadOnly(node)
33036 }
33037}
33038impl From<ReadUncommitted> for TransactionMode {
33039 #[inline]
33040 fn from(node: ReadUncommitted) -> TransactionMode {
33041 TransactionMode::ReadUncommitted(node)
33042 }
33043}
33044impl From<ReadWrite> for TransactionMode {
33045 #[inline]
33046 fn from(node: ReadWrite) -> TransactionMode {
33047 TransactionMode::ReadWrite(node)
33048 }
33049}
33050impl From<RepeatableRead> for TransactionMode {
33051 #[inline]
33052 fn from(node: RepeatableRead) -> TransactionMode {
33053 TransactionMode::RepeatableRead(node)
33054 }
33055}
33056impl From<Serializable> for TransactionMode {
33057 #[inline]
33058 fn from(node: Serializable) -> TransactionMode {
33059 TransactionMode::Serializable(node)
33060 }
33061}
33062impl AstNode for Type {
33063 #[inline]
33064 fn can_cast(kind: SyntaxKind) -> bool {
33065 matches!(
33066 kind,
33067 SyntaxKind::ARRAY_TYPE
33068 | SyntaxKind::BIT_TYPE
33069 | SyntaxKind::CHAR_TYPE
33070 | SyntaxKind::DOUBLE_TYPE
33071 | SyntaxKind::EXPR_TYPE
33072 | SyntaxKind::INTERVAL_TYPE
33073 | SyntaxKind::PATH_TYPE
33074 | SyntaxKind::PERCENT_TYPE
33075 | SyntaxKind::TIME_TYPE
33076 )
33077 }
33078 #[inline]
33079 fn cast(syntax: SyntaxNode) -> Option<Self> {
33080 let res = match syntax.kind() {
33081 SyntaxKind::ARRAY_TYPE => Type::ArrayType(ArrayType { syntax }),
33082 SyntaxKind::BIT_TYPE => Type::BitType(BitType { syntax }),
33083 SyntaxKind::CHAR_TYPE => Type::CharType(CharType { syntax }),
33084 SyntaxKind::DOUBLE_TYPE => Type::DoubleType(DoubleType { syntax }),
33085 SyntaxKind::EXPR_TYPE => Type::ExprType(ExprType { syntax }),
33086 SyntaxKind::INTERVAL_TYPE => Type::IntervalType(IntervalType { syntax }),
33087 SyntaxKind::PATH_TYPE => Type::PathType(PathType { syntax }),
33088 SyntaxKind::PERCENT_TYPE => Type::PercentType(PercentType { syntax }),
33089 SyntaxKind::TIME_TYPE => Type::TimeType(TimeType { syntax }),
33090 _ => {
33091 return None;
33092 }
33093 };
33094 Some(res)
33095 }
33096 #[inline]
33097 fn syntax(&self) -> &SyntaxNode {
33098 match self {
33099 Type::ArrayType(it) => &it.syntax,
33100 Type::BitType(it) => &it.syntax,
33101 Type::CharType(it) => &it.syntax,
33102 Type::DoubleType(it) => &it.syntax,
33103 Type::ExprType(it) => &it.syntax,
33104 Type::IntervalType(it) => &it.syntax,
33105 Type::PathType(it) => &it.syntax,
33106 Type::PercentType(it) => &it.syntax,
33107 Type::TimeType(it) => &it.syntax,
33108 }
33109 }
33110}
33111impl From<ArrayType> for Type {
33112 #[inline]
33113 fn from(node: ArrayType) -> Type {
33114 Type::ArrayType(node)
33115 }
33116}
33117impl From<BitType> for Type {
33118 #[inline]
33119 fn from(node: BitType) -> Type {
33120 Type::BitType(node)
33121 }
33122}
33123impl From<CharType> for Type {
33124 #[inline]
33125 fn from(node: CharType) -> Type {
33126 Type::CharType(node)
33127 }
33128}
33129impl From<DoubleType> for Type {
33130 #[inline]
33131 fn from(node: DoubleType) -> Type {
33132 Type::DoubleType(node)
33133 }
33134}
33135impl From<ExprType> for Type {
33136 #[inline]
33137 fn from(node: ExprType) -> Type {
33138 Type::ExprType(node)
33139 }
33140}
33141impl From<IntervalType> for Type {
33142 #[inline]
33143 fn from(node: IntervalType) -> Type {
33144 Type::IntervalType(node)
33145 }
33146}
33147impl From<PathType> for Type {
33148 #[inline]
33149 fn from(node: PathType) -> Type {
33150 Type::PathType(node)
33151 }
33152}
33153impl From<PercentType> for Type {
33154 #[inline]
33155 fn from(node: PercentType) -> Type {
33156 Type::PercentType(node)
33157 }
33158}
33159impl From<TimeType> for Type {
33160 #[inline]
33161 fn from(node: TimeType) -> Type {
33162 Type::TimeType(node)
33163 }
33164}
33165impl AstNode for WithQuery {
33166 #[inline]
33167 fn can_cast(kind: SyntaxKind) -> bool {
33168 matches!(
33169 kind,
33170 SyntaxKind::COMPOUND_SELECT
33171 | SyntaxKind::DELETE
33172 | SyntaxKind::INSERT
33173 | SyntaxKind::MERGE
33174 | SyntaxKind::PAREN_SELECT
33175 | SyntaxKind::SELECT
33176 | SyntaxKind::TABLE
33177 | SyntaxKind::UPDATE
33178 | SyntaxKind::VALUES
33179 )
33180 }
33181 #[inline]
33182 fn cast(syntax: SyntaxNode) -> Option<Self> {
33183 let res = match syntax.kind() {
33184 SyntaxKind::COMPOUND_SELECT => WithQuery::CompoundSelect(CompoundSelect { syntax }),
33185 SyntaxKind::DELETE => WithQuery::Delete(Delete { syntax }),
33186 SyntaxKind::INSERT => WithQuery::Insert(Insert { syntax }),
33187 SyntaxKind::MERGE => WithQuery::Merge(Merge { syntax }),
33188 SyntaxKind::PAREN_SELECT => WithQuery::ParenSelect(ParenSelect { syntax }),
33189 SyntaxKind::SELECT => WithQuery::Select(Select { syntax }),
33190 SyntaxKind::TABLE => WithQuery::Table(Table { syntax }),
33191 SyntaxKind::UPDATE => WithQuery::Update(Update { syntax }),
33192 SyntaxKind::VALUES => WithQuery::Values(Values { syntax }),
33193 _ => {
33194 return None;
33195 }
33196 };
33197 Some(res)
33198 }
33199 #[inline]
33200 fn syntax(&self) -> &SyntaxNode {
33201 match self {
33202 WithQuery::CompoundSelect(it) => &it.syntax,
33203 WithQuery::Delete(it) => &it.syntax,
33204 WithQuery::Insert(it) => &it.syntax,
33205 WithQuery::Merge(it) => &it.syntax,
33206 WithQuery::ParenSelect(it) => &it.syntax,
33207 WithQuery::Select(it) => &it.syntax,
33208 WithQuery::Table(it) => &it.syntax,
33209 WithQuery::Update(it) => &it.syntax,
33210 WithQuery::Values(it) => &it.syntax,
33211 }
33212 }
33213}
33214impl From<CompoundSelect> for WithQuery {
33215 #[inline]
33216 fn from(node: CompoundSelect) -> WithQuery {
33217 WithQuery::CompoundSelect(node)
33218 }
33219}
33220impl From<Delete> for WithQuery {
33221 #[inline]
33222 fn from(node: Delete) -> WithQuery {
33223 WithQuery::Delete(node)
33224 }
33225}
33226impl From<Insert> for WithQuery {
33227 #[inline]
33228 fn from(node: Insert) -> WithQuery {
33229 WithQuery::Insert(node)
33230 }
33231}
33232impl From<Merge> for WithQuery {
33233 #[inline]
33234 fn from(node: Merge) -> WithQuery {
33235 WithQuery::Merge(node)
33236 }
33237}
33238impl From<ParenSelect> for WithQuery {
33239 #[inline]
33240 fn from(node: ParenSelect) -> WithQuery {
33241 WithQuery::ParenSelect(node)
33242 }
33243}
33244impl From<Select> for WithQuery {
33245 #[inline]
33246 fn from(node: Select) -> WithQuery {
33247 WithQuery::Select(node)
33248 }
33249}
33250impl From<Table> for WithQuery {
33251 #[inline]
33252 fn from(node: Table) -> WithQuery {
33253 WithQuery::Table(node)
33254 }
33255}
33256impl From<Update> for WithQuery {
33257 #[inline]
33258 fn from(node: Update) -> WithQuery {
33259 WithQuery::Update(node)
33260 }
33261}
33262impl From<Values> for WithQuery {
33263 #[inline]
33264 fn from(node: Values) -> WithQuery {
33265 WithQuery::Values(node)
33266 }
33267}