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 relation_names(&self) -> AstChildren<RelationName> {
1700 support::children(&self.syntax)
1701 }
1702 #[inline]
1703 pub fn analyze_token(&self) -> Option<SyntaxToken> {
1704 support::token(&self.syntax, SyntaxKind::ANALYZE_KW)
1705 }
1706 #[inline]
1707 pub fn verbose_token(&self) -> Option<SyntaxToken> {
1708 support::token(&self.syntax, SyntaxKind::VERBOSE_KW)
1709 }
1710}
1711
1712#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1713pub struct AnyFn {
1714 pub(crate) syntax: SyntaxNode,
1715}
1716impl AnyFn {
1717 #[inline]
1718 pub fn expr(&self) -> Option<Expr> {
1719 support::child(&self.syntax)
1720 }
1721 #[inline]
1722 pub fn select_variant(&self) -> Option<SelectVariant> {
1723 support::child(&self.syntax)
1724 }
1725 #[inline]
1726 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
1727 support::token(&self.syntax, SyntaxKind::L_PAREN)
1728 }
1729 #[inline]
1730 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
1731 support::token(&self.syntax, SyntaxKind::R_PAREN)
1732 }
1733 #[inline]
1734 pub fn any_token(&self) -> Option<SyntaxToken> {
1735 support::token(&self.syntax, SyntaxKind::ANY_KW)
1736 }
1737}
1738
1739#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1740pub struct Arg {
1741 pub(crate) syntax: SyntaxNode,
1742}
1743impl Arg {
1744 #[inline]
1745 pub fn expr(&self) -> Option<Expr> {
1746 support::child(&self.syntax)
1747 }
1748}
1749
1750#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1751pub struct ArgList {
1752 pub(crate) syntax: SyntaxNode,
1753}
1754impl ArgList {
1755 #[inline]
1756 pub fn args(&self) -> AstChildren<Expr> {
1757 support::children(&self.syntax)
1758 }
1759 #[inline]
1760 pub fn expr(&self) -> Option<Expr> {
1761 support::child(&self.syntax)
1762 }
1763 #[inline]
1764 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
1765 support::token(&self.syntax, SyntaxKind::L_PAREN)
1766 }
1767 #[inline]
1768 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
1769 support::token(&self.syntax, SyntaxKind::R_PAREN)
1770 }
1771 #[inline]
1772 pub fn star_token(&self) -> Option<SyntaxToken> {
1773 support::token(&self.syntax, SyntaxKind::STAR)
1774 }
1775 #[inline]
1776 pub fn all_token(&self) -> Option<SyntaxToken> {
1777 support::token(&self.syntax, SyntaxKind::ALL_KW)
1778 }
1779 #[inline]
1780 pub fn distinct_token(&self) -> Option<SyntaxToken> {
1781 support::token(&self.syntax, SyntaxKind::DISTINCT_KW)
1782 }
1783 #[inline]
1784 pub fn variadic_token(&self) -> Option<SyntaxToken> {
1785 support::token(&self.syntax, SyntaxKind::VARIADIC_KW)
1786 }
1787}
1788
1789#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1790pub struct ArrayExpr {
1791 pub(crate) syntax: SyntaxNode,
1792}
1793impl ArrayExpr {
1794 #[inline]
1795 pub fn exprs(&self) -> AstChildren<Expr> {
1796 support::children(&self.syntax)
1797 }
1798 #[inline]
1799 pub fn select(&self) -> Option<Select> {
1800 support::child(&self.syntax)
1801 }
1802 #[inline]
1803 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
1804 support::token(&self.syntax, SyntaxKind::L_PAREN)
1805 }
1806 #[inline]
1807 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
1808 support::token(&self.syntax, SyntaxKind::R_PAREN)
1809 }
1810 #[inline]
1811 pub fn l_brack_token(&self) -> Option<SyntaxToken> {
1812 support::token(&self.syntax, SyntaxKind::L_BRACK)
1813 }
1814 #[inline]
1815 pub fn r_brack_token(&self) -> Option<SyntaxToken> {
1816 support::token(&self.syntax, SyntaxKind::R_BRACK)
1817 }
1818 #[inline]
1819 pub fn array_token(&self) -> Option<SyntaxToken> {
1820 support::token(&self.syntax, SyntaxKind::ARRAY_KW)
1821 }
1822}
1823
1824#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1825pub struct ArrayType {
1826 pub(crate) syntax: SyntaxNode,
1827}
1828impl ArrayType {
1829 #[inline]
1830 pub fn expr(&self) -> Option<Expr> {
1831 support::child(&self.syntax)
1832 }
1833 #[inline]
1834 pub fn name_ref(&self) -> Option<NameRef> {
1835 support::child(&self.syntax)
1836 }
1837 #[inline]
1838 pub fn ty(&self) -> Option<Type> {
1839 support::child(&self.syntax)
1840 }
1841 #[inline]
1842 pub fn l_brack_token(&self) -> Option<SyntaxToken> {
1843 support::token(&self.syntax, SyntaxKind::L_BRACK)
1844 }
1845 #[inline]
1846 pub fn r_brack_token(&self) -> Option<SyntaxToken> {
1847 support::token(&self.syntax, SyntaxKind::R_BRACK)
1848 }
1849 #[inline]
1850 pub fn array_token(&self) -> Option<SyntaxToken> {
1851 support::token(&self.syntax, SyntaxKind::ARRAY_KW)
1852 }
1853}
1854
1855#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1856pub struct AsFuncOption {
1857 pub(crate) syntax: SyntaxNode,
1858}
1859impl AsFuncOption {
1860 #[inline]
1861 pub fn definition(&self) -> Option<Literal> {
1862 support::child(&self.syntax)
1863 }
1864 #[inline]
1865 pub fn link_symbol(&self) -> Option<Literal> {
1866 support::child(&self.syntax)
1867 }
1868 #[inline]
1869 pub fn obj_file(&self) -> Option<Literal> {
1870 support::child(&self.syntax)
1871 }
1872 #[inline]
1873 pub fn comma_token(&self) -> Option<SyntaxToken> {
1874 support::token(&self.syntax, SyntaxKind::COMMA)
1875 }
1876 #[inline]
1877 pub fn as_token(&self) -> Option<SyntaxToken> {
1878 support::token(&self.syntax, SyntaxKind::AS_KW)
1879 }
1880}
1881
1882#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1883pub struct AsName {
1884 pub(crate) syntax: SyntaxNode,
1885}
1886impl AsName {
1887 #[inline]
1888 pub fn name(&self) -> Option<Name> {
1889 support::child(&self.syntax)
1890 }
1891 #[inline]
1892 pub fn as_token(&self) -> Option<SyntaxToken> {
1893 support::token(&self.syntax, SyntaxKind::AS_KW)
1894 }
1895}
1896
1897#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1898pub struct AtTimeZone {
1899 pub(crate) syntax: SyntaxNode,
1900}
1901impl AtTimeZone {
1902 #[inline]
1903 pub fn at_token(&self) -> Option<SyntaxToken> {
1904 support::token(&self.syntax, SyntaxKind::AT_KW)
1905 }
1906 #[inline]
1907 pub fn time_token(&self) -> Option<SyntaxToken> {
1908 support::token(&self.syntax, SyntaxKind::TIME_KW)
1909 }
1910 #[inline]
1911 pub fn zone_token(&self) -> Option<SyntaxToken> {
1912 support::token(&self.syntax, SyntaxKind::ZONE_KW)
1913 }
1914}
1915
1916#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1917pub struct AttachPartition {
1918 pub(crate) syntax: SyntaxNode,
1919}
1920impl AttachPartition {
1921 #[inline]
1922 pub fn partition_type(&self) -> Option<PartitionType> {
1923 support::child(&self.syntax)
1924 }
1925 #[inline]
1926 pub fn path(&self) -> Option<Path> {
1927 support::child(&self.syntax)
1928 }
1929 #[inline]
1930 pub fn attach_token(&self) -> Option<SyntaxToken> {
1931 support::token(&self.syntax, SyntaxKind::ATTACH_KW)
1932 }
1933 #[inline]
1934 pub fn partition_token(&self) -> Option<SyntaxToken> {
1935 support::token(&self.syntax, SyntaxKind::PARTITION_KW)
1936 }
1937}
1938
1939#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1940pub struct AttributeList {
1941 pub(crate) syntax: SyntaxNode,
1942}
1943impl AttributeList {
1944 #[inline]
1945 pub fn attribute_options(&self) -> AstChildren<AttributeOption> {
1946 support::children(&self.syntax)
1947 }
1948 #[inline]
1949 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
1950 support::token(&self.syntax, SyntaxKind::L_PAREN)
1951 }
1952 #[inline]
1953 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
1954 support::token(&self.syntax, SyntaxKind::R_PAREN)
1955 }
1956}
1957
1958#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1959pub struct AttributeOption {
1960 pub(crate) syntax: SyntaxNode,
1961}
1962impl AttributeOption {
1963 #[inline]
1964 pub fn attribute_value(&self) -> Option<AttributeValue> {
1965 support::child(&self.syntax)
1966 }
1967 #[inline]
1968 pub fn name(&self) -> Option<Name> {
1969 support::child(&self.syntax)
1970 }
1971 #[inline]
1972 pub fn dot_token(&self) -> Option<SyntaxToken> {
1973 support::token(&self.syntax, SyntaxKind::DOT)
1974 }
1975 #[inline]
1976 pub fn eq_token(&self) -> Option<SyntaxToken> {
1977 support::token(&self.syntax, SyntaxKind::EQ)
1978 }
1979}
1980
1981#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1982pub struct AttributeValue {
1983 pub(crate) syntax: SyntaxNode,
1984}
1985impl AttributeValue {
1986 #[inline]
1987 pub fn literal(&self) -> Option<Literal> {
1988 support::child(&self.syntax)
1989 }
1990 #[inline]
1991 pub fn op(&self) -> Option<Op> {
1992 support::child(&self.syntax)
1993 }
1994 #[inline]
1995 pub fn ty(&self) -> Option<Type> {
1996 support::child(&self.syntax)
1997 }
1998 #[inline]
1999 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
2000 support::token(&self.syntax, SyntaxKind::L_PAREN)
2001 }
2002 #[inline]
2003 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
2004 support::token(&self.syntax, SyntaxKind::R_PAREN)
2005 }
2006 #[inline]
2007 pub fn none_token(&self) -> Option<SyntaxToken> {
2008 support::token(&self.syntax, SyntaxKind::NONE_KW)
2009 }
2010 #[inline]
2011 pub fn operator_token(&self) -> Option<SyntaxToken> {
2012 support::token(&self.syntax, SyntaxKind::OPERATOR_KW)
2013 }
2014}
2015
2016#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2017pub struct Begin {
2018 pub(crate) syntax: SyntaxNode,
2019}
2020impl Begin {
2021 #[inline]
2022 pub fn transaction_mode_list(&self) -> Option<TransactionModeList> {
2023 support::child(&self.syntax)
2024 }
2025 #[inline]
2026 pub fn begin_token(&self) -> Option<SyntaxToken> {
2027 support::token(&self.syntax, SyntaxKind::BEGIN_KW)
2028 }
2029 #[inline]
2030 pub fn start_token(&self) -> Option<SyntaxToken> {
2031 support::token(&self.syntax, SyntaxKind::START_KW)
2032 }
2033 #[inline]
2034 pub fn transaction_token(&self) -> Option<SyntaxToken> {
2035 support::token(&self.syntax, SyntaxKind::TRANSACTION_KW)
2036 }
2037 #[inline]
2038 pub fn work_token(&self) -> Option<SyntaxToken> {
2039 support::token(&self.syntax, SyntaxKind::WORK_KW)
2040 }
2041}
2042
2043#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2044pub struct BeginFuncOption {
2045 pub(crate) syntax: SyntaxNode,
2046}
2047impl BeginFuncOption {
2048 #[inline]
2049 pub fn atomic_token(&self) -> Option<SyntaxToken> {
2050 support::token(&self.syntax, SyntaxKind::ATOMIC_KW)
2051 }
2052 #[inline]
2053 pub fn begin_token(&self) -> Option<SyntaxToken> {
2054 support::token(&self.syntax, SyntaxKind::BEGIN_KW)
2055 }
2056 #[inline]
2057 pub fn end_token(&self) -> Option<SyntaxToken> {
2058 support::token(&self.syntax, SyntaxKind::END_KW)
2059 }
2060}
2061
2062#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2063pub struct BetweenExpr {
2064 pub(crate) syntax: SyntaxNode,
2065}
2066impl BetweenExpr {
2067 #[inline]
2068 pub fn and_token(&self) -> Option<SyntaxToken> {
2069 support::token(&self.syntax, SyntaxKind::AND_KW)
2070 }
2071 #[inline]
2072 pub fn between_token(&self) -> Option<SyntaxToken> {
2073 support::token(&self.syntax, SyntaxKind::BETWEEN_KW)
2074 }
2075}
2076
2077#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2078pub struct BinExpr {
2079 pub(crate) syntax: SyntaxNode,
2080}
2081impl BinExpr {
2082 #[inline]
2083 pub fn op(&self) -> Option<Op> {
2084 support::child(&self.syntax)
2085 }
2086}
2087
2088#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2089pub struct BitType {
2090 pub(crate) syntax: SyntaxNode,
2091}
2092impl BitType {
2093 #[inline]
2094 pub fn arg_list(&self) -> Option<ArgList> {
2095 support::child(&self.syntax)
2096 }
2097 #[inline]
2098 pub fn bit_token(&self) -> Option<SyntaxToken> {
2099 support::token(&self.syntax, SyntaxKind::BIT_KW)
2100 }
2101 #[inline]
2102 pub fn varying_token(&self) -> Option<SyntaxToken> {
2103 support::token(&self.syntax, SyntaxKind::VARYING_KW)
2104 }
2105}
2106
2107#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2108pub struct Call {
2109 pub(crate) syntax: SyntaxNode,
2110}
2111impl Call {
2112 #[inline]
2113 pub fn arg_list(&self) -> Option<ArgList> {
2114 support::child(&self.syntax)
2115 }
2116 #[inline]
2117 pub fn path(&self) -> Option<Path> {
2118 support::child(&self.syntax)
2119 }
2120 #[inline]
2121 pub fn call_token(&self) -> Option<SyntaxToken> {
2122 support::token(&self.syntax, SyntaxKind::CALL_KW)
2123 }
2124}
2125
2126#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2127pub struct CallExpr {
2128 pub(crate) syntax: SyntaxNode,
2129}
2130impl CallExpr {
2131 #[inline]
2132 pub fn all_fn(&self) -> Option<AllFn> {
2133 support::child(&self.syntax)
2134 }
2135 #[inline]
2136 pub fn any_fn(&self) -> Option<AnyFn> {
2137 support::child(&self.syntax)
2138 }
2139 #[inline]
2140 pub fn arg_list(&self) -> Option<ArgList> {
2141 support::child(&self.syntax)
2142 }
2143 #[inline]
2144 pub fn exists_fn(&self) -> Option<ExistsFn> {
2145 support::child(&self.syntax)
2146 }
2147 #[inline]
2148 pub fn expr(&self) -> Option<Expr> {
2149 support::child(&self.syntax)
2150 }
2151 #[inline]
2152 pub fn extract_fn(&self) -> Option<ExtractFn> {
2153 support::child(&self.syntax)
2154 }
2155 #[inline]
2156 pub fn filter_clause(&self) -> Option<FilterClause> {
2157 support::child(&self.syntax)
2158 }
2159 #[inline]
2160 pub fn json_array_agg_fn(&self) -> Option<JsonArrayAggFn> {
2161 support::child(&self.syntax)
2162 }
2163 #[inline]
2164 pub fn json_array_fn(&self) -> Option<JsonArrayFn> {
2165 support::child(&self.syntax)
2166 }
2167 #[inline]
2168 pub fn json_exists_fn(&self) -> Option<JsonExistsFn> {
2169 support::child(&self.syntax)
2170 }
2171 #[inline]
2172 pub fn json_fn(&self) -> Option<JsonFn> {
2173 support::child(&self.syntax)
2174 }
2175 #[inline]
2176 pub fn json_object_agg_fn(&self) -> Option<JsonObjectAggFn> {
2177 support::child(&self.syntax)
2178 }
2179 #[inline]
2180 pub fn json_object_fn(&self) -> Option<JsonObjectFn> {
2181 support::child(&self.syntax)
2182 }
2183 #[inline]
2184 pub fn json_query_fn(&self) -> Option<JsonQueryFn> {
2185 support::child(&self.syntax)
2186 }
2187 #[inline]
2188 pub fn json_scalar_fn(&self) -> Option<JsonScalarFn> {
2189 support::child(&self.syntax)
2190 }
2191 #[inline]
2192 pub fn json_serialize_fn(&self) -> Option<JsonSerializeFn> {
2193 support::child(&self.syntax)
2194 }
2195 #[inline]
2196 pub fn json_value_fn(&self) -> Option<JsonValueFn> {
2197 support::child(&self.syntax)
2198 }
2199 #[inline]
2200 pub fn over_clause(&self) -> Option<OverClause> {
2201 support::child(&self.syntax)
2202 }
2203 #[inline]
2204 pub fn overlay_fn(&self) -> Option<OverlayFn> {
2205 support::child(&self.syntax)
2206 }
2207 #[inline]
2208 pub fn position_fn(&self) -> Option<PositionFn> {
2209 support::child(&self.syntax)
2210 }
2211 #[inline]
2212 pub fn some_fn(&self) -> Option<SomeFn> {
2213 support::child(&self.syntax)
2214 }
2215 #[inline]
2216 pub fn substring_fn(&self) -> Option<SubstringFn> {
2217 support::child(&self.syntax)
2218 }
2219 #[inline]
2220 pub fn trim_fn(&self) -> Option<TrimFn> {
2221 support::child(&self.syntax)
2222 }
2223 #[inline]
2224 pub fn within_clause(&self) -> Option<WithinClause> {
2225 support::child(&self.syntax)
2226 }
2227 #[inline]
2228 pub fn xml_element_fn(&self) -> Option<XmlElementFn> {
2229 support::child(&self.syntax)
2230 }
2231 #[inline]
2232 pub fn xml_exists_fn(&self) -> Option<XmlExistsFn> {
2233 support::child(&self.syntax)
2234 }
2235 #[inline]
2236 pub fn xml_forest_fn(&self) -> Option<XmlForestFn> {
2237 support::child(&self.syntax)
2238 }
2239 #[inline]
2240 pub fn xml_parse_fn(&self) -> Option<XmlParseFn> {
2241 support::child(&self.syntax)
2242 }
2243 #[inline]
2244 pub fn xml_pi_fn(&self) -> Option<XmlPiFn> {
2245 support::child(&self.syntax)
2246 }
2247 #[inline]
2248 pub fn xml_root_fn(&self) -> Option<XmlRootFn> {
2249 support::child(&self.syntax)
2250 }
2251 #[inline]
2252 pub fn xml_serialize_fn(&self) -> Option<XmlSerializeFn> {
2253 support::child(&self.syntax)
2254 }
2255}
2256
2257#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2258pub struct Cascade {
2259 pub(crate) syntax: SyntaxNode,
2260}
2261impl Cascade {
2262 #[inline]
2263 pub fn cascade_token(&self) -> Option<SyntaxToken> {
2264 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
2265 }
2266}
2267
2268#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2269pub struct CaseExpr {
2270 pub(crate) syntax: SyntaxNode,
2271}
2272impl CaseExpr {
2273 #[inline]
2274 pub fn else_clause(&self) -> Option<ElseClause> {
2275 support::child(&self.syntax)
2276 }
2277 #[inline]
2278 pub fn expr(&self) -> Option<Expr> {
2279 support::child(&self.syntax)
2280 }
2281 #[inline]
2282 pub fn when_clause_list(&self) -> Option<WhenClauseList> {
2283 support::child(&self.syntax)
2284 }
2285 #[inline]
2286 pub fn case_token(&self) -> Option<SyntaxToken> {
2287 support::token(&self.syntax, SyntaxKind::CASE_KW)
2288 }
2289}
2290
2291#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2292pub struct CastExpr {
2293 pub(crate) syntax: SyntaxNode,
2294}
2295impl CastExpr {
2296 #[inline]
2297 pub fn colon_colon(&self) -> Option<ColonColon> {
2298 support::child(&self.syntax)
2299 }
2300 #[inline]
2301 pub fn expr(&self) -> Option<Expr> {
2302 support::child(&self.syntax)
2303 }
2304 #[inline]
2305 pub fn literal(&self) -> Option<Literal> {
2306 support::child(&self.syntax)
2307 }
2308 #[inline]
2309 pub fn ty(&self) -> Option<Type> {
2310 support::child(&self.syntax)
2311 }
2312 #[inline]
2313 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
2314 support::token(&self.syntax, SyntaxKind::L_PAREN)
2315 }
2316 #[inline]
2317 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
2318 support::token(&self.syntax, SyntaxKind::R_PAREN)
2319 }
2320 #[inline]
2321 pub fn as_token(&self) -> Option<SyntaxToken> {
2322 support::token(&self.syntax, SyntaxKind::AS_KW)
2323 }
2324 #[inline]
2325 pub fn cast_token(&self) -> Option<SyntaxToken> {
2326 support::token(&self.syntax, SyntaxKind::CAST_KW)
2327 }
2328 #[inline]
2329 pub fn treat_token(&self) -> Option<SyntaxToken> {
2330 support::token(&self.syntax, SyntaxKind::TREAT_KW)
2331 }
2332}
2333
2334#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2335pub struct CastSig {
2336 pub(crate) syntax: SyntaxNode,
2337}
2338impl CastSig {
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}
2352
2353#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2354pub struct CharType {
2355 pub(crate) syntax: SyntaxNode,
2356}
2357impl CharType {
2358 #[inline]
2359 pub fn arg_list(&self) -> Option<ArgList> {
2360 support::child(&self.syntax)
2361 }
2362 #[inline]
2363 pub fn char_token(&self) -> Option<SyntaxToken> {
2364 support::token(&self.syntax, SyntaxKind::CHAR_KW)
2365 }
2366 #[inline]
2367 pub fn character_token(&self) -> Option<SyntaxToken> {
2368 support::token(&self.syntax, SyntaxKind::CHARACTER_KW)
2369 }
2370 #[inline]
2371 pub fn nchar_token(&self) -> Option<SyntaxToken> {
2372 support::token(&self.syntax, SyntaxKind::NCHAR_KW)
2373 }
2374 #[inline]
2375 pub fn varchar_token(&self) -> Option<SyntaxToken> {
2376 support::token(&self.syntax, SyntaxKind::VARCHAR_KW)
2377 }
2378 #[inline]
2379 pub fn varying_token(&self) -> Option<SyntaxToken> {
2380 support::token(&self.syntax, SyntaxKind::VARYING_KW)
2381 }
2382}
2383
2384#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2385pub struct CheckConstraint {
2386 pub(crate) syntax: SyntaxNode,
2387}
2388impl CheckConstraint {
2389 #[inline]
2390 pub fn expr(&self) -> Option<Expr> {
2391 support::child(&self.syntax)
2392 }
2393 #[inline]
2394 pub fn name(&self) -> Option<Name> {
2395 support::child(&self.syntax)
2396 }
2397 #[inline]
2398 pub fn no_inherit(&self) -> Option<NoInherit> {
2399 support::child(&self.syntax)
2400 }
2401 #[inline]
2402 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
2403 support::token(&self.syntax, SyntaxKind::L_PAREN)
2404 }
2405 #[inline]
2406 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
2407 support::token(&self.syntax, SyntaxKind::R_PAREN)
2408 }
2409 #[inline]
2410 pub fn check_token(&self) -> Option<SyntaxToken> {
2411 support::token(&self.syntax, SyntaxKind::CHECK_KW)
2412 }
2413 #[inline]
2414 pub fn constraint_token(&self) -> Option<SyntaxToken> {
2415 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
2416 }
2417}
2418
2419#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2420pub struct Checkpoint {
2421 pub(crate) syntax: SyntaxNode,
2422}
2423impl Checkpoint {
2424 #[inline]
2425 pub fn checkpoint_token(&self) -> Option<SyntaxToken> {
2426 support::token(&self.syntax, SyntaxKind::CHECKPOINT_KW)
2427 }
2428}
2429
2430#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2431pub struct Close {
2432 pub(crate) syntax: SyntaxNode,
2433}
2434impl Close {
2435 #[inline]
2436 pub fn name_ref(&self) -> Option<NameRef> {
2437 support::child(&self.syntax)
2438 }
2439 #[inline]
2440 pub fn close_token(&self) -> Option<SyntaxToken> {
2441 support::token(&self.syntax, SyntaxKind::CLOSE_KW)
2442 }
2443}
2444
2445#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2446pub struct Cluster {
2447 pub(crate) syntax: SyntaxNode,
2448}
2449impl Cluster {
2450 #[inline]
2451 pub fn option_item_list(&self) -> Option<OptionItemList> {
2452 support::child(&self.syntax)
2453 }
2454 #[inline]
2455 pub fn path(&self) -> Option<Path> {
2456 support::child(&self.syntax)
2457 }
2458 #[inline]
2459 pub fn using_method(&self) -> Option<UsingMethod> {
2460 support::child(&self.syntax)
2461 }
2462 #[inline]
2463 pub fn cluster_token(&self) -> Option<SyntaxToken> {
2464 support::token(&self.syntax, SyntaxKind::CLUSTER_KW)
2465 }
2466 #[inline]
2467 pub fn verbose_token(&self) -> Option<SyntaxToken> {
2468 support::token(&self.syntax, SyntaxKind::VERBOSE_KW)
2469 }
2470}
2471
2472#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2473pub struct ClusterOn {
2474 pub(crate) syntax: SyntaxNode,
2475}
2476impl ClusterOn {
2477 #[inline]
2478 pub fn cluster_token(&self) -> Option<SyntaxToken> {
2479 support::token(&self.syntax, SyntaxKind::CLUSTER_KW)
2480 }
2481 #[inline]
2482 pub fn on_token(&self) -> Option<SyntaxToken> {
2483 support::token(&self.syntax, SyntaxKind::ON_KW)
2484 }
2485}
2486
2487#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2488pub struct Collate {
2489 pub(crate) syntax: SyntaxNode,
2490}
2491impl Collate {
2492 #[inline]
2493 pub fn path(&self) -> Option<Path> {
2494 support::child(&self.syntax)
2495 }
2496 #[inline]
2497 pub fn collate_token(&self) -> Option<SyntaxToken> {
2498 support::token(&self.syntax, SyntaxKind::COLLATE_KW)
2499 }
2500}
2501
2502#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2503pub struct ColonColon {
2504 pub(crate) syntax: SyntaxNode,
2505}
2506impl ColonColon {
2507 #[inline]
2508 pub fn colon_token(&self) -> Option<SyntaxToken> {
2509 support::token(&self.syntax, SyntaxKind::COLON)
2510 }
2511}
2512
2513#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2514pub struct ColonEq {
2515 pub(crate) syntax: SyntaxNode,
2516}
2517impl ColonEq {
2518 #[inline]
2519 pub fn colon_token(&self) -> Option<SyntaxToken> {
2520 support::token(&self.syntax, SyntaxKind::COLON)
2521 }
2522 #[inline]
2523 pub fn eq_token(&self) -> Option<SyntaxToken> {
2524 support::token(&self.syntax, SyntaxKind::EQ)
2525 }
2526}
2527
2528#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2529pub struct Column {
2530 pub(crate) syntax: SyntaxNode,
2531}
2532impl Column {
2533 #[inline]
2534 pub fn collate(&self) -> Option<Collate> {
2535 support::child(&self.syntax)
2536 }
2537 #[inline]
2538 pub fn compression_method(&self) -> Option<CompressionMethod> {
2539 support::child(&self.syntax)
2540 }
2541 #[inline]
2542 pub fn constraint(&self) -> Option<ColumnConstraint> {
2543 support::child(&self.syntax)
2544 }
2545 #[inline]
2546 pub fn deferrable_constraint_option(&self) -> Option<DeferrableConstraintOption> {
2547 support::child(&self.syntax)
2548 }
2549 #[inline]
2550 pub fn enforced(&self) -> Option<Enforced> {
2551 support::child(&self.syntax)
2552 }
2553 #[inline]
2554 pub fn index_expr(&self) -> Option<IndexExpr> {
2555 support::child(&self.syntax)
2556 }
2557 #[inline]
2558 pub fn initially_deferred_constraint_option(
2559 &self,
2560 ) -> Option<InitiallyDeferredConstraintOption> {
2561 support::child(&self.syntax)
2562 }
2563 #[inline]
2564 pub fn initially_immediate_constraint_option(
2565 &self,
2566 ) -> Option<InitiallyImmediateConstraintOption> {
2567 support::child(&self.syntax)
2568 }
2569 #[inline]
2570 pub fn name(&self) -> Option<Name> {
2571 support::child(&self.syntax)
2572 }
2573 #[inline]
2574 pub fn name_ref(&self) -> Option<NameRef> {
2575 support::child(&self.syntax)
2576 }
2577 #[inline]
2578 pub fn not_deferrable_constraint_option(&self) -> Option<NotDeferrableConstraintOption> {
2579 support::child(&self.syntax)
2580 }
2581 #[inline]
2582 pub fn not_enforced(&self) -> Option<NotEnforced> {
2583 support::child(&self.syntax)
2584 }
2585 #[inline]
2586 pub fn storage(&self) -> Option<Storage> {
2587 support::child(&self.syntax)
2588 }
2589 #[inline]
2590 pub fn ty(&self) -> Option<Type> {
2591 support::child(&self.syntax)
2592 }
2593 #[inline]
2594 pub fn with_options(&self) -> Option<WithOptions> {
2595 support::child(&self.syntax)
2596 }
2597 #[inline]
2598 pub fn period_token(&self) -> Option<SyntaxToken> {
2599 support::token(&self.syntax, SyntaxKind::PERIOD_KW)
2600 }
2601}
2602
2603#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2604pub struct ColumnList {
2605 pub(crate) syntax: SyntaxNode,
2606}
2607impl ColumnList {
2608 #[inline]
2609 pub fn columns(&self) -> AstChildren<Column> {
2610 support::children(&self.syntax)
2611 }
2612 #[inline]
2613 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
2614 support::token(&self.syntax, SyntaxKind::L_PAREN)
2615 }
2616 #[inline]
2617 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
2618 support::token(&self.syntax, SyntaxKind::R_PAREN)
2619 }
2620}
2621
2622#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2623pub struct CommentOn {
2624 pub(crate) syntax: SyntaxNode,
2625}
2626impl CommentOn {
2627 #[inline]
2628 pub fn literal(&self) -> Option<Literal> {
2629 support::child(&self.syntax)
2630 }
2631 #[inline]
2632 pub fn name_ref(&self) -> Option<NameRef> {
2633 support::child(&self.syntax)
2634 }
2635 #[inline]
2636 pub fn path(&self) -> Option<Path> {
2637 support::child(&self.syntax)
2638 }
2639 #[inline]
2640 pub fn comment_token(&self) -> Option<SyntaxToken> {
2641 support::token(&self.syntax, SyntaxKind::COMMENT_KW)
2642 }
2643 #[inline]
2644 pub fn constraint_token(&self) -> Option<SyntaxToken> {
2645 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
2646 }
2647 #[inline]
2648 pub fn domain_token(&self) -> Option<SyntaxToken> {
2649 support::token(&self.syntax, SyntaxKind::DOMAIN_KW)
2650 }
2651 #[inline]
2652 pub fn is_token(&self) -> Option<SyntaxToken> {
2653 support::token(&self.syntax, SyntaxKind::IS_KW)
2654 }
2655 #[inline]
2656 pub fn null_token(&self) -> Option<SyntaxToken> {
2657 support::token(&self.syntax, SyntaxKind::NULL_KW)
2658 }
2659 #[inline]
2660 pub fn on_token(&self) -> Option<SyntaxToken> {
2661 support::token(&self.syntax, SyntaxKind::ON_KW)
2662 }
2663 #[inline]
2664 pub fn table_token(&self) -> Option<SyntaxToken> {
2665 support::token(&self.syntax, SyntaxKind::TABLE_KW)
2666 }
2667}
2668
2669#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2670pub struct Commit {
2671 pub(crate) syntax: SyntaxNode,
2672}
2673impl Commit {
2674 #[inline]
2675 pub fn literal(&self) -> Option<Literal> {
2676 support::child(&self.syntax)
2677 }
2678 #[inline]
2679 pub fn and_token(&self) -> Option<SyntaxToken> {
2680 support::token(&self.syntax, SyntaxKind::AND_KW)
2681 }
2682 #[inline]
2683 pub fn chain_token(&self) -> Option<SyntaxToken> {
2684 support::token(&self.syntax, SyntaxKind::CHAIN_KW)
2685 }
2686 #[inline]
2687 pub fn commit_token(&self) -> Option<SyntaxToken> {
2688 support::token(&self.syntax, SyntaxKind::COMMIT_KW)
2689 }
2690 #[inline]
2691 pub fn no_token(&self) -> Option<SyntaxToken> {
2692 support::token(&self.syntax, SyntaxKind::NO_KW)
2693 }
2694 #[inline]
2695 pub fn prepared_token(&self) -> Option<SyntaxToken> {
2696 support::token(&self.syntax, SyntaxKind::PREPARED_KW)
2697 }
2698 #[inline]
2699 pub fn transaction_token(&self) -> Option<SyntaxToken> {
2700 support::token(&self.syntax, SyntaxKind::TRANSACTION_KW)
2701 }
2702 #[inline]
2703 pub fn work_token(&self) -> Option<SyntaxToken> {
2704 support::token(&self.syntax, SyntaxKind::WORK_KW)
2705 }
2706}
2707
2708#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2709pub struct CompoundSelect {
2710 pub(crate) syntax: SyntaxNode,
2711}
2712impl CompoundSelect {
2713 #[inline]
2714 pub fn except_token(&self) -> Option<SyntaxToken> {
2715 support::token(&self.syntax, SyntaxKind::EXCEPT_KW)
2716 }
2717 #[inline]
2718 pub fn intersect_token(&self) -> Option<SyntaxToken> {
2719 support::token(&self.syntax, SyntaxKind::INTERSECT_KW)
2720 }
2721 #[inline]
2722 pub fn union_token(&self) -> Option<SyntaxToken> {
2723 support::token(&self.syntax, SyntaxKind::UNION_KW)
2724 }
2725}
2726
2727#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2728pub struct CompressionMethod {
2729 pub(crate) syntax: SyntaxNode,
2730}
2731impl CompressionMethod {
2732 #[inline]
2733 pub fn compression_token(&self) -> Option<SyntaxToken> {
2734 support::token(&self.syntax, SyntaxKind::COMPRESSION_KW)
2735 }
2736 #[inline]
2737 pub fn default_token(&self) -> Option<SyntaxToken> {
2738 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
2739 }
2740 #[inline]
2741 pub fn ident_token(&self) -> Option<SyntaxToken> {
2742 support::token(&self.syntax, SyntaxKind::IDENT)
2743 }
2744}
2745
2746#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2747pub struct ConflictDoNothing {
2748 pub(crate) syntax: SyntaxNode,
2749}
2750impl ConflictDoNothing {
2751 #[inline]
2752 pub fn do_token(&self) -> Option<SyntaxToken> {
2753 support::token(&self.syntax, SyntaxKind::DO_KW)
2754 }
2755 #[inline]
2756 pub fn nothing_token(&self) -> Option<SyntaxToken> {
2757 support::token(&self.syntax, SyntaxKind::NOTHING_KW)
2758 }
2759}
2760
2761#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2762pub struct ConflictDoUpdateSet {
2763 pub(crate) syntax: SyntaxNode,
2764}
2765impl ConflictDoUpdateSet {
2766 #[inline]
2767 pub fn set_clause(&self) -> Option<SetClause> {
2768 support::child(&self.syntax)
2769 }
2770 #[inline]
2771 pub fn where_clause(&self) -> Option<WhereClause> {
2772 support::child(&self.syntax)
2773 }
2774 #[inline]
2775 pub fn do_token(&self) -> Option<SyntaxToken> {
2776 support::token(&self.syntax, SyntaxKind::DO_KW)
2777 }
2778 #[inline]
2779 pub fn update_token(&self) -> Option<SyntaxToken> {
2780 support::token(&self.syntax, SyntaxKind::UPDATE_KW)
2781 }
2782}
2783
2784#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2785pub struct ConflictIndexItem {
2786 pub(crate) syntax: SyntaxNode,
2787}
2788impl ConflictIndexItem {
2789 #[inline]
2790 pub fn collate(&self) -> Option<Collate> {
2791 support::child(&self.syntax)
2792 }
2793 #[inline]
2794 pub fn expr(&self) -> Option<Expr> {
2795 support::child(&self.syntax)
2796 }
2797 #[inline]
2798 pub fn ident_token(&self) -> Option<SyntaxToken> {
2799 support::token(&self.syntax, SyntaxKind::IDENT)
2800 }
2801}
2802
2803#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2804pub struct ConflictIndexItemList {
2805 pub(crate) syntax: SyntaxNode,
2806}
2807impl ConflictIndexItemList {
2808 #[inline]
2809 pub fn conflict_index_items(&self) -> AstChildren<ConflictIndexItem> {
2810 support::children(&self.syntax)
2811 }
2812 #[inline]
2813 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
2814 support::token(&self.syntax, SyntaxKind::L_PAREN)
2815 }
2816 #[inline]
2817 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
2818 support::token(&self.syntax, SyntaxKind::R_PAREN)
2819 }
2820}
2821
2822#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2823pub struct ConflictOnConstraint {
2824 pub(crate) syntax: SyntaxNode,
2825}
2826impl ConflictOnConstraint {
2827 #[inline]
2828 pub fn name_ref(&self) -> Option<NameRef> {
2829 support::child(&self.syntax)
2830 }
2831 #[inline]
2832 pub fn constraint_token(&self) -> Option<SyntaxToken> {
2833 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
2834 }
2835 #[inline]
2836 pub fn on_token(&self) -> Option<SyntaxToken> {
2837 support::token(&self.syntax, SyntaxKind::ON_KW)
2838 }
2839}
2840
2841#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2842pub struct ConflictOnIndex {
2843 pub(crate) syntax: SyntaxNode,
2844}
2845impl ConflictOnIndex {
2846 #[inline]
2847 pub fn conflict_index_item_list(&self) -> Option<ConflictIndexItemList> {
2848 support::child(&self.syntax)
2849 }
2850 #[inline]
2851 pub fn where_clause(&self) -> Option<WhereClause> {
2852 support::child(&self.syntax)
2853 }
2854}
2855
2856#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2857pub struct ConstraintExclusion {
2858 pub(crate) syntax: SyntaxNode,
2859}
2860impl ConstraintExclusion {
2861 #[inline]
2862 pub fn expr(&self) -> Option<Expr> {
2863 support::child(&self.syntax)
2864 }
2865 #[inline]
2866 pub fn op(&self) -> Option<Op> {
2867 support::child(&self.syntax)
2868 }
2869 #[inline]
2870 pub fn with_token(&self) -> Option<SyntaxToken> {
2871 support::token(&self.syntax, SyntaxKind::WITH_KW)
2872 }
2873}
2874
2875#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2876pub struct ConstraintExclusionList {
2877 pub(crate) syntax: SyntaxNode,
2878}
2879impl ConstraintExclusionList {
2880 #[inline]
2881 pub fn constraint_exclusions(&self) -> AstChildren<ConstraintExclusion> {
2882 support::children(&self.syntax)
2883 }
2884 #[inline]
2885 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
2886 support::token(&self.syntax, SyntaxKind::L_PAREN)
2887 }
2888 #[inline]
2889 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
2890 support::token(&self.syntax, SyntaxKind::R_PAREN)
2891 }
2892}
2893
2894#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2895pub struct ConstraintIncludeClause {
2896 pub(crate) syntax: SyntaxNode,
2897}
2898impl ConstraintIncludeClause {
2899 #[inline]
2900 pub fn include_token(&self) -> Option<SyntaxToken> {
2901 support::token(&self.syntax, SyntaxKind::INCLUDE_KW)
2902 }
2903}
2904
2905#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2906pub struct ConstraintIndexMethod {
2907 pub(crate) syntax: SyntaxNode,
2908}
2909impl ConstraintIndexMethod {
2910 #[inline]
2911 pub fn using_token(&self) -> Option<SyntaxToken> {
2912 support::token(&self.syntax, SyntaxKind::USING_KW)
2913 }
2914}
2915
2916#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2917pub struct ConstraintIndexTablespace {
2918 pub(crate) syntax: SyntaxNode,
2919}
2920impl ConstraintIndexTablespace {
2921 #[inline]
2922 pub fn name_ref(&self) -> Option<NameRef> {
2923 support::child(&self.syntax)
2924 }
2925 #[inline]
2926 pub fn index_token(&self) -> Option<SyntaxToken> {
2927 support::token(&self.syntax, SyntaxKind::INDEX_KW)
2928 }
2929 #[inline]
2930 pub fn tablespace_token(&self) -> Option<SyntaxToken> {
2931 support::token(&self.syntax, SyntaxKind::TABLESPACE_KW)
2932 }
2933 #[inline]
2934 pub fn using_token(&self) -> Option<SyntaxToken> {
2935 support::token(&self.syntax, SyntaxKind::USING_KW)
2936 }
2937}
2938
2939#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2940pub struct Copy {
2941 pub(crate) syntax: SyntaxNode,
2942}
2943impl Copy {
2944 #[inline]
2945 pub fn column_list(&self) -> Option<ColumnList> {
2946 support::child(&self.syntax)
2947 }
2948 #[inline]
2949 pub fn literal(&self) -> Option<Literal> {
2950 support::child(&self.syntax)
2951 }
2952 #[inline]
2953 pub fn path(&self) -> Option<Path> {
2954 support::child(&self.syntax)
2955 }
2956 #[inline]
2957 pub fn preparable_stmt(&self) -> Option<PreparableStmt> {
2958 support::child(&self.syntax)
2959 }
2960 #[inline]
2961 pub fn where_clause(&self) -> Option<WhereClause> {
2962 support::child(&self.syntax)
2963 }
2964 #[inline]
2965 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
2966 support::token(&self.syntax, SyntaxKind::L_PAREN)
2967 }
2968 #[inline]
2969 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
2970 support::token(&self.syntax, SyntaxKind::R_PAREN)
2971 }
2972 #[inline]
2973 pub fn binary_token(&self) -> Option<SyntaxToken> {
2974 support::token(&self.syntax, SyntaxKind::BINARY_KW)
2975 }
2976 #[inline]
2977 pub fn copy_token(&self) -> Option<SyntaxToken> {
2978 support::token(&self.syntax, SyntaxKind::COPY_KW)
2979 }
2980 #[inline]
2981 pub fn from_token(&self) -> Option<SyntaxToken> {
2982 support::token(&self.syntax, SyntaxKind::FROM_KW)
2983 }
2984 #[inline]
2985 pub fn program_token(&self) -> Option<SyntaxToken> {
2986 support::token(&self.syntax, SyntaxKind::PROGRAM_KW)
2987 }
2988 #[inline]
2989 pub fn stdin_token(&self) -> Option<SyntaxToken> {
2990 support::token(&self.syntax, SyntaxKind::STDIN_KW)
2991 }
2992 #[inline]
2993 pub fn stdout_token(&self) -> Option<SyntaxToken> {
2994 support::token(&self.syntax, SyntaxKind::STDOUT_KW)
2995 }
2996 #[inline]
2997 pub fn to_token(&self) -> Option<SyntaxToken> {
2998 support::token(&self.syntax, SyntaxKind::TO_KW)
2999 }
3000}
3001
3002#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3003pub struct CostFuncOption {
3004 pub(crate) syntax: SyntaxNode,
3005}
3006impl CostFuncOption {
3007 #[inline]
3008 pub fn cost_token(&self) -> Option<SyntaxToken> {
3009 support::token(&self.syntax, SyntaxKind::COST_KW)
3010 }
3011}
3012
3013#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3014pub struct CreateAccessMethod {
3015 pub(crate) syntax: SyntaxNode,
3016}
3017impl CreateAccessMethod {
3018 #[inline]
3019 pub fn handler_clause(&self) -> Option<HandlerClause> {
3020 support::child(&self.syntax)
3021 }
3022 #[inline]
3023 pub fn name(&self) -> Option<Path> {
3024 support::child(&self.syntax)
3025 }
3026 #[inline]
3027 pub fn access_token(&self) -> Option<SyntaxToken> {
3028 support::token(&self.syntax, SyntaxKind::ACCESS_KW)
3029 }
3030 #[inline]
3031 pub fn create_token(&self) -> Option<SyntaxToken> {
3032 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3033 }
3034 #[inline]
3035 pub fn index_token(&self) -> Option<SyntaxToken> {
3036 support::token(&self.syntax, SyntaxKind::INDEX_KW)
3037 }
3038 #[inline]
3039 pub fn method_token(&self) -> Option<SyntaxToken> {
3040 support::token(&self.syntax, SyntaxKind::METHOD_KW)
3041 }
3042 #[inline]
3043 pub fn table_token(&self) -> Option<SyntaxToken> {
3044 support::token(&self.syntax, SyntaxKind::TABLE_KW)
3045 }
3046 #[inline]
3047 pub fn type_token(&self) -> Option<SyntaxToken> {
3048 support::token(&self.syntax, SyntaxKind::TYPE_KW)
3049 }
3050}
3051
3052#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3053pub struct CreateAggregate {
3054 pub(crate) syntax: SyntaxNode,
3055}
3056impl CreateAggregate {
3057 #[inline]
3058 pub fn or_replace(&self) -> Option<OrReplace> {
3059 support::child(&self.syntax)
3060 }
3061 #[inline]
3062 pub fn param_list(&self) -> Option<ParamList> {
3063 support::child(&self.syntax)
3064 }
3065 #[inline]
3066 pub fn path(&self) -> Option<Path> {
3067 support::child(&self.syntax)
3068 }
3069 #[inline]
3070 pub fn aggregate_token(&self) -> Option<SyntaxToken> {
3071 support::token(&self.syntax, SyntaxKind::AGGREGATE_KW)
3072 }
3073 #[inline]
3074 pub fn create_token(&self) -> Option<SyntaxToken> {
3075 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3076 }
3077}
3078
3079#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3080pub struct CreateCast {
3081 pub(crate) syntax: SyntaxNode,
3082}
3083impl CreateCast {
3084 #[inline]
3085 pub fn cast_sig(&self) -> Option<CastSig> {
3086 support::child(&self.syntax)
3087 }
3088 #[inline]
3089 pub fn function_sig(&self) -> Option<FunctionSig> {
3090 support::child(&self.syntax)
3091 }
3092 #[inline]
3093 pub fn as_token(&self) -> Option<SyntaxToken> {
3094 support::token(&self.syntax, SyntaxKind::AS_KW)
3095 }
3096 #[inline]
3097 pub fn assignment_token(&self) -> Option<SyntaxToken> {
3098 support::token(&self.syntax, SyntaxKind::ASSIGNMENT_KW)
3099 }
3100 #[inline]
3101 pub fn cast_token(&self) -> Option<SyntaxToken> {
3102 support::token(&self.syntax, SyntaxKind::CAST_KW)
3103 }
3104 #[inline]
3105 pub fn create_token(&self) -> Option<SyntaxToken> {
3106 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3107 }
3108 #[inline]
3109 pub fn function_token(&self) -> Option<SyntaxToken> {
3110 support::token(&self.syntax, SyntaxKind::FUNCTION_KW)
3111 }
3112 #[inline]
3113 pub fn implicit_token(&self) -> Option<SyntaxToken> {
3114 support::token(&self.syntax, SyntaxKind::IMPLICIT_KW)
3115 }
3116 #[inline]
3117 pub fn inout_token(&self) -> Option<SyntaxToken> {
3118 support::token(&self.syntax, SyntaxKind::INOUT_KW)
3119 }
3120 #[inline]
3121 pub fn with_token(&self) -> Option<SyntaxToken> {
3122 support::token(&self.syntax, SyntaxKind::WITH_KW)
3123 }
3124 #[inline]
3125 pub fn without_token(&self) -> Option<SyntaxToken> {
3126 support::token(&self.syntax, SyntaxKind::WITHOUT_KW)
3127 }
3128}
3129
3130#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3131pub struct CreateCollation {
3132 pub(crate) syntax: SyntaxNode,
3133}
3134impl CreateCollation {
3135 #[inline]
3136 pub fn path(&self) -> Option<Path> {
3137 support::child(&self.syntax)
3138 }
3139 #[inline]
3140 pub fn collation_token(&self) -> Option<SyntaxToken> {
3141 support::token(&self.syntax, SyntaxKind::COLLATION_KW)
3142 }
3143 #[inline]
3144 pub fn create_token(&self) -> Option<SyntaxToken> {
3145 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3146 }
3147}
3148
3149#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3150pub struct CreateConversion {
3151 pub(crate) syntax: SyntaxNode,
3152}
3153impl CreateConversion {
3154 #[inline]
3155 pub fn literal(&self) -> Option<Literal> {
3156 support::child(&self.syntax)
3157 }
3158 #[inline]
3159 pub fn path(&self) -> Option<Path> {
3160 support::child(&self.syntax)
3161 }
3162 #[inline]
3163 pub fn conversion_token(&self) -> Option<SyntaxToken> {
3164 support::token(&self.syntax, SyntaxKind::CONVERSION_KW)
3165 }
3166 #[inline]
3167 pub fn create_token(&self) -> Option<SyntaxToken> {
3168 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3169 }
3170 #[inline]
3171 pub fn default_token(&self) -> Option<SyntaxToken> {
3172 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
3173 }
3174 #[inline]
3175 pub fn for_token(&self) -> Option<SyntaxToken> {
3176 support::token(&self.syntax, SyntaxKind::FOR_KW)
3177 }
3178 #[inline]
3179 pub fn from_token(&self) -> Option<SyntaxToken> {
3180 support::token(&self.syntax, SyntaxKind::FROM_KW)
3181 }
3182 #[inline]
3183 pub fn to_token(&self) -> Option<SyntaxToken> {
3184 support::token(&self.syntax, SyntaxKind::TO_KW)
3185 }
3186}
3187
3188#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3189pub struct CreateDatabase {
3190 pub(crate) syntax: SyntaxNode,
3191}
3192impl CreateDatabase {
3193 #[inline]
3194 pub fn create_database_option_list(&self) -> Option<CreateDatabaseOptionList> {
3195 support::child(&self.syntax)
3196 }
3197 #[inline]
3198 pub fn name(&self) -> Option<Name> {
3199 support::child(&self.syntax)
3200 }
3201 #[inline]
3202 pub fn create_token(&self) -> Option<SyntaxToken> {
3203 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3204 }
3205 #[inline]
3206 pub fn database_token(&self) -> Option<SyntaxToken> {
3207 support::token(&self.syntax, SyntaxKind::DATABASE_KW)
3208 }
3209}
3210
3211#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3212pub struct CreateDatabaseOption {
3213 pub(crate) syntax: SyntaxNode,
3214}
3215impl CreateDatabaseOption {
3216 #[inline]
3217 pub fn literal(&self) -> Option<Literal> {
3218 support::child(&self.syntax)
3219 }
3220 #[inline]
3221 pub fn eq_token(&self) -> Option<SyntaxToken> {
3222 support::token(&self.syntax, SyntaxKind::EQ)
3223 }
3224 #[inline]
3225 pub fn connection_token(&self) -> Option<SyntaxToken> {
3226 support::token(&self.syntax, SyntaxKind::CONNECTION_KW)
3227 }
3228 #[inline]
3229 pub fn default_token(&self) -> Option<SyntaxToken> {
3230 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
3231 }
3232 #[inline]
3233 pub fn encoding_token(&self) -> Option<SyntaxToken> {
3234 support::token(&self.syntax, SyntaxKind::ENCODING_KW)
3235 }
3236 #[inline]
3237 pub fn ident_token(&self) -> Option<SyntaxToken> {
3238 support::token(&self.syntax, SyntaxKind::IDENT)
3239 }
3240 #[inline]
3241 pub fn limit_token(&self) -> Option<SyntaxToken> {
3242 support::token(&self.syntax, SyntaxKind::LIMIT_KW)
3243 }
3244 #[inline]
3245 pub fn owner_token(&self) -> Option<SyntaxToken> {
3246 support::token(&self.syntax, SyntaxKind::OWNER_KW)
3247 }
3248 #[inline]
3249 pub fn tablespace_token(&self) -> Option<SyntaxToken> {
3250 support::token(&self.syntax, SyntaxKind::TABLESPACE_KW)
3251 }
3252 #[inline]
3253 pub fn template_token(&self) -> Option<SyntaxToken> {
3254 support::token(&self.syntax, SyntaxKind::TEMPLATE_KW)
3255 }
3256}
3257
3258#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3259pub struct CreateDatabaseOptionList {
3260 pub(crate) syntax: SyntaxNode,
3261}
3262impl CreateDatabaseOptionList {
3263 #[inline]
3264 pub fn create_database_options(&self) -> AstChildren<CreateDatabaseOption> {
3265 support::children(&self.syntax)
3266 }
3267 #[inline]
3268 pub fn with_token(&self) -> Option<SyntaxToken> {
3269 support::token(&self.syntax, SyntaxKind::WITH_KW)
3270 }
3271}
3272
3273#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3274pub struct CreateDomain {
3275 pub(crate) syntax: SyntaxNode,
3276}
3277impl CreateDomain {
3278 #[inline]
3279 pub fn collate(&self) -> Option<Collate> {
3280 support::child(&self.syntax)
3281 }
3282 #[inline]
3283 pub fn constraints(&self) -> AstChildren<Constraint> {
3284 support::children(&self.syntax)
3285 }
3286 #[inline]
3287 pub fn path(&self) -> Option<Path> {
3288 support::child(&self.syntax)
3289 }
3290 #[inline]
3291 pub fn ty(&self) -> Option<Type> {
3292 support::child(&self.syntax)
3293 }
3294 #[inline]
3295 pub fn as_token(&self) -> Option<SyntaxToken> {
3296 support::token(&self.syntax, SyntaxKind::AS_KW)
3297 }
3298 #[inline]
3299 pub fn create_token(&self) -> Option<SyntaxToken> {
3300 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3301 }
3302 #[inline]
3303 pub fn domain_token(&self) -> Option<SyntaxToken> {
3304 support::token(&self.syntax, SyntaxKind::DOMAIN_KW)
3305 }
3306}
3307
3308#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3309pub struct CreateEventTrigger {
3310 pub(crate) syntax: SyntaxNode,
3311}
3312impl CreateEventTrigger {
3313 #[inline]
3314 pub fn call_expr(&self) -> Option<CallExpr> {
3315 support::child(&self.syntax)
3316 }
3317 #[inline]
3318 pub fn event_trigger_when_clause(&self) -> Option<EventTriggerWhenClause> {
3319 support::child(&self.syntax)
3320 }
3321 #[inline]
3322 pub fn name(&self) -> Option<Name> {
3323 support::child(&self.syntax)
3324 }
3325 #[inline]
3326 pub fn name_ref(&self) -> Option<NameRef> {
3327 support::child(&self.syntax)
3328 }
3329 #[inline]
3330 pub fn create_token(&self) -> Option<SyntaxToken> {
3331 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3332 }
3333 #[inline]
3334 pub fn event_token(&self) -> Option<SyntaxToken> {
3335 support::token(&self.syntax, SyntaxKind::EVENT_KW)
3336 }
3337 #[inline]
3338 pub fn execute_token(&self) -> Option<SyntaxToken> {
3339 support::token(&self.syntax, SyntaxKind::EXECUTE_KW)
3340 }
3341 #[inline]
3342 pub fn function_token(&self) -> Option<SyntaxToken> {
3343 support::token(&self.syntax, SyntaxKind::FUNCTION_KW)
3344 }
3345 #[inline]
3346 pub fn on_token(&self) -> Option<SyntaxToken> {
3347 support::token(&self.syntax, SyntaxKind::ON_KW)
3348 }
3349 #[inline]
3350 pub fn procedure_token(&self) -> Option<SyntaxToken> {
3351 support::token(&self.syntax, SyntaxKind::PROCEDURE_KW)
3352 }
3353 #[inline]
3354 pub fn trigger_token(&self) -> Option<SyntaxToken> {
3355 support::token(&self.syntax, SyntaxKind::TRIGGER_KW)
3356 }
3357}
3358
3359#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3360pub struct CreateExtension {
3361 pub(crate) syntax: SyntaxNode,
3362}
3363impl CreateExtension {
3364 #[inline]
3365 pub fn if_not_exists(&self) -> Option<IfNotExists> {
3366 support::child(&self.syntax)
3367 }
3368 #[inline]
3369 pub fn name(&self) -> Option<Name> {
3370 support::child(&self.syntax)
3371 }
3372 #[inline]
3373 pub fn create_token(&self) -> Option<SyntaxToken> {
3374 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3375 }
3376 #[inline]
3377 pub fn extension_token(&self) -> Option<SyntaxToken> {
3378 support::token(&self.syntax, SyntaxKind::EXTENSION_KW)
3379 }
3380}
3381
3382#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3383pub struct CreateForeignDataWrapper {
3384 pub(crate) syntax: SyntaxNode,
3385}
3386impl CreateForeignDataWrapper {
3387 #[inline]
3388 pub fn alter_option_list(&self) -> Option<AlterOptionList> {
3389 support::child(&self.syntax)
3390 }
3391 #[inline]
3392 pub fn fdw_option_list(&self) -> Option<FdwOptionList> {
3393 support::child(&self.syntax)
3394 }
3395 #[inline]
3396 pub fn name(&self) -> Option<Name> {
3397 support::child(&self.syntax)
3398 }
3399 #[inline]
3400 pub fn create_token(&self) -> Option<SyntaxToken> {
3401 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3402 }
3403 #[inline]
3404 pub fn data_token(&self) -> Option<SyntaxToken> {
3405 support::token(&self.syntax, SyntaxKind::DATA_KW)
3406 }
3407 #[inline]
3408 pub fn foreign_token(&self) -> Option<SyntaxToken> {
3409 support::token(&self.syntax, SyntaxKind::FOREIGN_KW)
3410 }
3411 #[inline]
3412 pub fn wrapper_token(&self) -> Option<SyntaxToken> {
3413 support::token(&self.syntax, SyntaxKind::WRAPPER_KW)
3414 }
3415}
3416
3417#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3418pub struct CreateForeignTable {
3419 pub(crate) syntax: SyntaxNode,
3420}
3421impl CreateForeignTable {
3422 #[inline]
3423 pub fn alter_option_list(&self) -> Option<AlterOptionList> {
3424 support::child(&self.syntax)
3425 }
3426 #[inline]
3427 pub fn if_not_exists(&self) -> Option<IfNotExists> {
3428 support::child(&self.syntax)
3429 }
3430 #[inline]
3431 pub fn inherits(&self) -> Option<Inherits> {
3432 support::child(&self.syntax)
3433 }
3434 #[inline]
3435 pub fn name_ref(&self) -> Option<NameRef> {
3436 support::child(&self.syntax)
3437 }
3438 #[inline]
3439 pub fn partition_of(&self) -> Option<PartitionOf> {
3440 support::child(&self.syntax)
3441 }
3442 #[inline]
3443 pub fn partition_type(&self) -> Option<PartitionType> {
3444 support::child(&self.syntax)
3445 }
3446 #[inline]
3447 pub fn path(&self) -> Option<Path> {
3448 support::child(&self.syntax)
3449 }
3450 #[inline]
3451 pub fn table_arg_list(&self) -> Option<TableArgList> {
3452 support::child(&self.syntax)
3453 }
3454 #[inline]
3455 pub fn create_token(&self) -> Option<SyntaxToken> {
3456 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3457 }
3458 #[inline]
3459 pub fn foreign_token(&self) -> Option<SyntaxToken> {
3460 support::token(&self.syntax, SyntaxKind::FOREIGN_KW)
3461 }
3462 #[inline]
3463 pub fn server_token(&self) -> Option<SyntaxToken> {
3464 support::token(&self.syntax, SyntaxKind::SERVER_KW)
3465 }
3466 #[inline]
3467 pub fn table_token(&self) -> Option<SyntaxToken> {
3468 support::token(&self.syntax, SyntaxKind::TABLE_KW)
3469 }
3470}
3471
3472#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3473pub struct CreateFunction {
3474 pub(crate) syntax: SyntaxNode,
3475}
3476impl CreateFunction {
3477 #[inline]
3478 pub fn option_list(&self) -> Option<FuncOptionList> {
3479 support::child(&self.syntax)
3480 }
3481 #[inline]
3482 pub fn or_replace(&self) -> Option<OrReplace> {
3483 support::child(&self.syntax)
3484 }
3485 #[inline]
3486 pub fn param_list(&self) -> Option<ParamList> {
3487 support::child(&self.syntax)
3488 }
3489 #[inline]
3490 pub fn path(&self) -> Option<Path> {
3491 support::child(&self.syntax)
3492 }
3493 #[inline]
3494 pub fn ret_type(&self) -> Option<RetType> {
3495 support::child(&self.syntax)
3496 }
3497 #[inline]
3498 pub fn create_token(&self) -> Option<SyntaxToken> {
3499 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3500 }
3501 #[inline]
3502 pub fn function_token(&self) -> Option<SyntaxToken> {
3503 support::token(&self.syntax, SyntaxKind::FUNCTION_KW)
3504 }
3505}
3506
3507#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3508pub struct CreateGroup {
3509 pub(crate) syntax: SyntaxNode,
3510}
3511impl CreateGroup {
3512 #[inline]
3513 pub fn name(&self) -> Option<Name> {
3514 support::child(&self.syntax)
3515 }
3516 #[inline]
3517 pub fn role_option_list(&self) -> Option<RoleOptionList> {
3518 support::child(&self.syntax)
3519 }
3520 #[inline]
3521 pub fn create_token(&self) -> Option<SyntaxToken> {
3522 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3523 }
3524 #[inline]
3525 pub fn group_token(&self) -> Option<SyntaxToken> {
3526 support::token(&self.syntax, SyntaxKind::GROUP_KW)
3527 }
3528}
3529
3530#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3531pub struct CreateIndex {
3532 pub(crate) syntax: SyntaxNode,
3533}
3534impl CreateIndex {
3535 #[inline]
3536 pub fn constraint_include_clause(&self) -> Option<ConstraintIncludeClause> {
3537 support::child(&self.syntax)
3538 }
3539 #[inline]
3540 pub fn if_not_exists(&self) -> Option<IfNotExists> {
3541 support::child(&self.syntax)
3542 }
3543 #[inline]
3544 pub fn name(&self) -> Option<Name> {
3545 support::child(&self.syntax)
3546 }
3547 #[inline]
3548 pub fn nulls_distinct(&self) -> Option<NullsDistinct> {
3549 support::child(&self.syntax)
3550 }
3551 #[inline]
3552 pub fn nulls_not_distinct(&self) -> Option<NullsNotDistinct> {
3553 support::child(&self.syntax)
3554 }
3555 #[inline]
3556 pub fn partition_item_list(&self) -> Option<PartitionItemList> {
3557 support::child(&self.syntax)
3558 }
3559 #[inline]
3560 pub fn relation_name(&self) -> Option<RelationName> {
3561 support::child(&self.syntax)
3562 }
3563 #[inline]
3564 pub fn tablespace(&self) -> Option<Tablespace> {
3565 support::child(&self.syntax)
3566 }
3567 #[inline]
3568 pub fn using_method(&self) -> Option<UsingMethod> {
3569 support::child(&self.syntax)
3570 }
3571 #[inline]
3572 pub fn where_clause(&self) -> Option<WhereClause> {
3573 support::child(&self.syntax)
3574 }
3575 #[inline]
3576 pub fn with_params(&self) -> Option<WithParams> {
3577 support::child(&self.syntax)
3578 }
3579 #[inline]
3580 pub fn concurrently_token(&self) -> Option<SyntaxToken> {
3581 support::token(&self.syntax, SyntaxKind::CONCURRENTLY_KW)
3582 }
3583 #[inline]
3584 pub fn create_token(&self) -> Option<SyntaxToken> {
3585 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3586 }
3587 #[inline]
3588 pub fn index_token(&self) -> Option<SyntaxToken> {
3589 support::token(&self.syntax, SyntaxKind::INDEX_KW)
3590 }
3591 #[inline]
3592 pub fn on_token(&self) -> Option<SyntaxToken> {
3593 support::token(&self.syntax, SyntaxKind::ON_KW)
3594 }
3595 #[inline]
3596 pub fn unique_token(&self) -> Option<SyntaxToken> {
3597 support::token(&self.syntax, SyntaxKind::UNIQUE_KW)
3598 }
3599}
3600
3601#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3602pub struct CreateLanguage {
3603 pub(crate) syntax: SyntaxNode,
3604}
3605impl CreateLanguage {
3606 #[inline]
3607 pub fn name(&self) -> Option<Name> {
3608 support::child(&self.syntax)
3609 }
3610 #[inline]
3611 pub fn or_replace(&self) -> Option<OrReplace> {
3612 support::child(&self.syntax)
3613 }
3614 #[inline]
3615 pub fn path(&self) -> Option<Path> {
3616 support::child(&self.syntax)
3617 }
3618 #[inline]
3619 pub fn create_token(&self) -> Option<SyntaxToken> {
3620 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3621 }
3622 #[inline]
3623 pub fn handler_token(&self) -> Option<SyntaxToken> {
3624 support::token(&self.syntax, SyntaxKind::HANDLER_KW)
3625 }
3626 #[inline]
3627 pub fn inline_token(&self) -> Option<SyntaxToken> {
3628 support::token(&self.syntax, SyntaxKind::INLINE_KW)
3629 }
3630 #[inline]
3631 pub fn language_token(&self) -> Option<SyntaxToken> {
3632 support::token(&self.syntax, SyntaxKind::LANGUAGE_KW)
3633 }
3634 #[inline]
3635 pub fn procedural_token(&self) -> Option<SyntaxToken> {
3636 support::token(&self.syntax, SyntaxKind::PROCEDURAL_KW)
3637 }
3638 #[inline]
3639 pub fn trusted_token(&self) -> Option<SyntaxToken> {
3640 support::token(&self.syntax, SyntaxKind::TRUSTED_KW)
3641 }
3642 #[inline]
3643 pub fn validator_token(&self) -> Option<SyntaxToken> {
3644 support::token(&self.syntax, SyntaxKind::VALIDATOR_KW)
3645 }
3646}
3647
3648#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3649pub struct CreateMaterializedView {
3650 pub(crate) syntax: SyntaxNode,
3651}
3652impl CreateMaterializedView {
3653 #[inline]
3654 pub fn column_list(&self) -> Option<ColumnList> {
3655 support::child(&self.syntax)
3656 }
3657 #[inline]
3658 pub fn if_not_exists(&self) -> Option<IfNotExists> {
3659 support::child(&self.syntax)
3660 }
3661 #[inline]
3662 pub fn path(&self) -> Option<Path> {
3663 support::child(&self.syntax)
3664 }
3665 #[inline]
3666 pub fn query(&self) -> Option<SelectVariant> {
3667 support::child(&self.syntax)
3668 }
3669 #[inline]
3670 pub fn tablespace(&self) -> Option<Tablespace> {
3671 support::child(&self.syntax)
3672 }
3673 #[inline]
3674 pub fn using_method(&self) -> Option<UsingMethod> {
3675 support::child(&self.syntax)
3676 }
3677 #[inline]
3678 pub fn with_data(&self) -> Option<WithData> {
3679 support::child(&self.syntax)
3680 }
3681 #[inline]
3682 pub fn with_no_data(&self) -> Option<WithNoData> {
3683 support::child(&self.syntax)
3684 }
3685 #[inline]
3686 pub fn with_params(&self) -> Option<WithParams> {
3687 support::child(&self.syntax)
3688 }
3689 #[inline]
3690 pub fn as_token(&self) -> Option<SyntaxToken> {
3691 support::token(&self.syntax, SyntaxKind::AS_KW)
3692 }
3693 #[inline]
3694 pub fn create_token(&self) -> Option<SyntaxToken> {
3695 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3696 }
3697 #[inline]
3698 pub fn materialized_token(&self) -> Option<SyntaxToken> {
3699 support::token(&self.syntax, SyntaxKind::MATERIALIZED_KW)
3700 }
3701 #[inline]
3702 pub fn view_token(&self) -> Option<SyntaxToken> {
3703 support::token(&self.syntax, SyntaxKind::VIEW_KW)
3704 }
3705}
3706
3707#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3708pub struct CreateOperator {
3709 pub(crate) syntax: SyntaxNode,
3710}
3711impl CreateOperator {
3712 #[inline]
3713 pub fn attribute_list(&self) -> Option<AttributeList> {
3714 support::child(&self.syntax)
3715 }
3716 #[inline]
3717 pub fn op(&self) -> Option<Op> {
3718 support::child(&self.syntax)
3719 }
3720 #[inline]
3721 pub fn path(&self) -> Option<Path> {
3722 support::child(&self.syntax)
3723 }
3724 #[inline]
3725 pub fn create_token(&self) -> Option<SyntaxToken> {
3726 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3727 }
3728 #[inline]
3729 pub fn operator_token(&self) -> Option<SyntaxToken> {
3730 support::token(&self.syntax, SyntaxKind::OPERATOR_KW)
3731 }
3732}
3733
3734#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3735pub struct CreateOperatorClass {
3736 pub(crate) syntax: SyntaxNode,
3737}
3738impl CreateOperatorClass {
3739 #[inline]
3740 pub fn name_ref(&self) -> Option<NameRef> {
3741 support::child(&self.syntax)
3742 }
3743 #[inline]
3744 pub fn operator_class_option_list(&self) -> Option<OperatorClassOptionList> {
3745 support::child(&self.syntax)
3746 }
3747 #[inline]
3748 pub fn path(&self) -> Option<Path> {
3749 support::child(&self.syntax)
3750 }
3751 #[inline]
3752 pub fn ty(&self) -> Option<Type> {
3753 support::child(&self.syntax)
3754 }
3755 #[inline]
3756 pub fn as_token(&self) -> Option<SyntaxToken> {
3757 support::token(&self.syntax, SyntaxKind::AS_KW)
3758 }
3759 #[inline]
3760 pub fn class_token(&self) -> Option<SyntaxToken> {
3761 support::token(&self.syntax, SyntaxKind::CLASS_KW)
3762 }
3763 #[inline]
3764 pub fn create_token(&self) -> Option<SyntaxToken> {
3765 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3766 }
3767 #[inline]
3768 pub fn default_token(&self) -> Option<SyntaxToken> {
3769 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
3770 }
3771 #[inline]
3772 pub fn family_token(&self) -> Option<SyntaxToken> {
3773 support::token(&self.syntax, SyntaxKind::FAMILY_KW)
3774 }
3775 #[inline]
3776 pub fn for_token(&self) -> Option<SyntaxToken> {
3777 support::token(&self.syntax, SyntaxKind::FOR_KW)
3778 }
3779 #[inline]
3780 pub fn operator_token(&self) -> Option<SyntaxToken> {
3781 support::token(&self.syntax, SyntaxKind::OPERATOR_KW)
3782 }
3783 #[inline]
3784 pub fn type_token(&self) -> Option<SyntaxToken> {
3785 support::token(&self.syntax, SyntaxKind::TYPE_KW)
3786 }
3787 #[inline]
3788 pub fn using_token(&self) -> Option<SyntaxToken> {
3789 support::token(&self.syntax, SyntaxKind::USING_KW)
3790 }
3791}
3792
3793#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3794pub struct CreateOperatorFamily {
3795 pub(crate) syntax: SyntaxNode,
3796}
3797impl CreateOperatorFamily {
3798 #[inline]
3799 pub fn name_ref(&self) -> Option<NameRef> {
3800 support::child(&self.syntax)
3801 }
3802 #[inline]
3803 pub fn path(&self) -> Option<Path> {
3804 support::child(&self.syntax)
3805 }
3806 #[inline]
3807 pub fn create_token(&self) -> Option<SyntaxToken> {
3808 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3809 }
3810 #[inline]
3811 pub fn family_token(&self) -> Option<SyntaxToken> {
3812 support::token(&self.syntax, SyntaxKind::FAMILY_KW)
3813 }
3814 #[inline]
3815 pub fn operator_token(&self) -> Option<SyntaxToken> {
3816 support::token(&self.syntax, SyntaxKind::OPERATOR_KW)
3817 }
3818 #[inline]
3819 pub fn using_token(&self) -> Option<SyntaxToken> {
3820 support::token(&self.syntax, SyntaxKind::USING_KW)
3821 }
3822}
3823
3824#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3825pub struct CreatePolicy {
3826 pub(crate) syntax: SyntaxNode,
3827}
3828impl CreatePolicy {
3829 #[inline]
3830 pub fn expr(&self) -> Option<Expr> {
3831 support::child(&self.syntax)
3832 }
3833 #[inline]
3834 pub fn name(&self) -> Option<Name> {
3835 support::child(&self.syntax)
3836 }
3837 #[inline]
3838 pub fn on_table(&self) -> Option<OnTable> {
3839 support::child(&self.syntax)
3840 }
3841 #[inline]
3842 pub fn role_list(&self) -> Option<RoleList> {
3843 support::child(&self.syntax)
3844 }
3845 #[inline]
3846 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
3847 support::token(&self.syntax, SyntaxKind::L_PAREN)
3848 }
3849 #[inline]
3850 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
3851 support::token(&self.syntax, SyntaxKind::R_PAREN)
3852 }
3853 #[inline]
3854 pub fn all_token(&self) -> Option<SyntaxToken> {
3855 support::token(&self.syntax, SyntaxKind::ALL_KW)
3856 }
3857 #[inline]
3858 pub fn as_token(&self) -> Option<SyntaxToken> {
3859 support::token(&self.syntax, SyntaxKind::AS_KW)
3860 }
3861 #[inline]
3862 pub fn check_token(&self) -> Option<SyntaxToken> {
3863 support::token(&self.syntax, SyntaxKind::CHECK_KW)
3864 }
3865 #[inline]
3866 pub fn create_token(&self) -> Option<SyntaxToken> {
3867 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3868 }
3869 #[inline]
3870 pub fn delete_token(&self) -> Option<SyntaxToken> {
3871 support::token(&self.syntax, SyntaxKind::DELETE_KW)
3872 }
3873 #[inline]
3874 pub fn for_token(&self) -> Option<SyntaxToken> {
3875 support::token(&self.syntax, SyntaxKind::FOR_KW)
3876 }
3877 #[inline]
3878 pub fn ident_token(&self) -> Option<SyntaxToken> {
3879 support::token(&self.syntax, SyntaxKind::IDENT)
3880 }
3881 #[inline]
3882 pub fn insert_token(&self) -> Option<SyntaxToken> {
3883 support::token(&self.syntax, SyntaxKind::INSERT_KW)
3884 }
3885 #[inline]
3886 pub fn policy_token(&self) -> Option<SyntaxToken> {
3887 support::token(&self.syntax, SyntaxKind::POLICY_KW)
3888 }
3889 #[inline]
3890 pub fn select_token(&self) -> Option<SyntaxToken> {
3891 support::token(&self.syntax, SyntaxKind::SELECT_KW)
3892 }
3893 #[inline]
3894 pub fn to_token(&self) -> Option<SyntaxToken> {
3895 support::token(&self.syntax, SyntaxKind::TO_KW)
3896 }
3897 #[inline]
3898 pub fn update_token(&self) -> Option<SyntaxToken> {
3899 support::token(&self.syntax, SyntaxKind::UPDATE_KW)
3900 }
3901 #[inline]
3902 pub fn using_token(&self) -> Option<SyntaxToken> {
3903 support::token(&self.syntax, SyntaxKind::USING_KW)
3904 }
3905 #[inline]
3906 pub fn with_token(&self) -> Option<SyntaxToken> {
3907 support::token(&self.syntax, SyntaxKind::WITH_KW)
3908 }
3909}
3910
3911#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3912pub struct CreateProcedure {
3913 pub(crate) syntax: SyntaxNode,
3914}
3915impl CreateProcedure {
3916 #[inline]
3917 pub fn option_list(&self) -> Option<FuncOptionList> {
3918 support::child(&self.syntax)
3919 }
3920 #[inline]
3921 pub fn or_replace(&self) -> Option<OrReplace> {
3922 support::child(&self.syntax)
3923 }
3924 #[inline]
3925 pub fn param_list(&self) -> Option<ParamList> {
3926 support::child(&self.syntax)
3927 }
3928 #[inline]
3929 pub fn path(&self) -> Option<Path> {
3930 support::child(&self.syntax)
3931 }
3932 #[inline]
3933 pub fn create_token(&self) -> Option<SyntaxToken> {
3934 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3935 }
3936 #[inline]
3937 pub fn procedure_token(&self) -> Option<SyntaxToken> {
3938 support::token(&self.syntax, SyntaxKind::PROCEDURE_KW)
3939 }
3940}
3941
3942#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3943pub struct CreatePublication {
3944 pub(crate) syntax: SyntaxNode,
3945}
3946impl CreatePublication {
3947 #[inline]
3948 pub fn name(&self) -> Option<Name> {
3949 support::child(&self.syntax)
3950 }
3951 #[inline]
3952 pub fn publication_objects(&self) -> AstChildren<PublicationObject> {
3953 support::children(&self.syntax)
3954 }
3955 #[inline]
3956 pub fn with_params(&self) -> Option<WithParams> {
3957 support::child(&self.syntax)
3958 }
3959 #[inline]
3960 pub fn all_token(&self) -> Option<SyntaxToken> {
3961 support::token(&self.syntax, SyntaxKind::ALL_KW)
3962 }
3963 #[inline]
3964 pub fn create_token(&self) -> Option<SyntaxToken> {
3965 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3966 }
3967 #[inline]
3968 pub fn for_token(&self) -> Option<SyntaxToken> {
3969 support::token(&self.syntax, SyntaxKind::FOR_KW)
3970 }
3971 #[inline]
3972 pub fn publication_token(&self) -> Option<SyntaxToken> {
3973 support::token(&self.syntax, SyntaxKind::PUBLICATION_KW)
3974 }
3975 #[inline]
3976 pub fn tables_token(&self) -> Option<SyntaxToken> {
3977 support::token(&self.syntax, SyntaxKind::TABLES_KW)
3978 }
3979}
3980
3981#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3982pub struct CreateRole {
3983 pub(crate) syntax: SyntaxNode,
3984}
3985impl CreateRole {
3986 #[inline]
3987 pub fn name(&self) -> Option<Name> {
3988 support::child(&self.syntax)
3989 }
3990 #[inline]
3991 pub fn role_option_list(&self) -> Option<RoleOptionList> {
3992 support::child(&self.syntax)
3993 }
3994 #[inline]
3995 pub fn create_token(&self) -> Option<SyntaxToken> {
3996 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3997 }
3998 #[inline]
3999 pub fn role_token(&self) -> Option<SyntaxToken> {
4000 support::token(&self.syntax, SyntaxKind::ROLE_KW)
4001 }
4002}
4003
4004#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4005pub struct CreateRule {
4006 pub(crate) syntax: SyntaxNode,
4007}
4008impl CreateRule {
4009 #[inline]
4010 pub fn name(&self) -> Option<Name> {
4011 support::child(&self.syntax)
4012 }
4013 #[inline]
4014 pub fn or_replace(&self) -> Option<OrReplace> {
4015 support::child(&self.syntax)
4016 }
4017 #[inline]
4018 pub fn path(&self) -> Option<Path> {
4019 support::child(&self.syntax)
4020 }
4021 #[inline]
4022 pub fn stmt(&self) -> Option<Stmt> {
4023 support::child(&self.syntax)
4024 }
4025 #[inline]
4026 pub fn stmts(&self) -> AstChildren<Stmt> {
4027 support::children(&self.syntax)
4028 }
4029 #[inline]
4030 pub fn where_clause(&self) -> Option<WhereClause> {
4031 support::child(&self.syntax)
4032 }
4033 #[inline]
4034 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
4035 support::token(&self.syntax, SyntaxKind::L_PAREN)
4036 }
4037 #[inline]
4038 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
4039 support::token(&self.syntax, SyntaxKind::R_PAREN)
4040 }
4041 #[inline]
4042 pub fn also_token(&self) -> Option<SyntaxToken> {
4043 support::token(&self.syntax, SyntaxKind::ALSO_KW)
4044 }
4045 #[inline]
4046 pub fn as_token(&self) -> Option<SyntaxToken> {
4047 support::token(&self.syntax, SyntaxKind::AS_KW)
4048 }
4049 #[inline]
4050 pub fn create_token(&self) -> Option<SyntaxToken> {
4051 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4052 }
4053 #[inline]
4054 pub fn delete_token(&self) -> Option<SyntaxToken> {
4055 support::token(&self.syntax, SyntaxKind::DELETE_KW)
4056 }
4057 #[inline]
4058 pub fn do_token(&self) -> Option<SyntaxToken> {
4059 support::token(&self.syntax, SyntaxKind::DO_KW)
4060 }
4061 #[inline]
4062 pub fn ident_token(&self) -> Option<SyntaxToken> {
4063 support::token(&self.syntax, SyntaxKind::IDENT)
4064 }
4065 #[inline]
4066 pub fn insert_token(&self) -> Option<SyntaxToken> {
4067 support::token(&self.syntax, SyntaxKind::INSERT_KW)
4068 }
4069 #[inline]
4070 pub fn instead_token(&self) -> Option<SyntaxToken> {
4071 support::token(&self.syntax, SyntaxKind::INSTEAD_KW)
4072 }
4073 #[inline]
4074 pub fn nothing_token(&self) -> Option<SyntaxToken> {
4075 support::token(&self.syntax, SyntaxKind::NOTHING_KW)
4076 }
4077 #[inline]
4078 pub fn on_token(&self) -> Option<SyntaxToken> {
4079 support::token(&self.syntax, SyntaxKind::ON_KW)
4080 }
4081 #[inline]
4082 pub fn rule_token(&self) -> Option<SyntaxToken> {
4083 support::token(&self.syntax, SyntaxKind::RULE_KW)
4084 }
4085 #[inline]
4086 pub fn select_token(&self) -> Option<SyntaxToken> {
4087 support::token(&self.syntax, SyntaxKind::SELECT_KW)
4088 }
4089 #[inline]
4090 pub fn to_token(&self) -> Option<SyntaxToken> {
4091 support::token(&self.syntax, SyntaxKind::TO_KW)
4092 }
4093 #[inline]
4094 pub fn update_token(&self) -> Option<SyntaxToken> {
4095 support::token(&self.syntax, SyntaxKind::UPDATE_KW)
4096 }
4097}
4098
4099#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4100pub struct CreateSchema {
4101 pub(crate) syntax: SyntaxNode,
4102}
4103impl CreateSchema {
4104 #[inline]
4105 pub fn if_not_exists(&self) -> Option<IfNotExists> {
4106 support::child(&self.syntax)
4107 }
4108 #[inline]
4109 pub fn name(&self) -> Option<Name> {
4110 support::child(&self.syntax)
4111 }
4112 #[inline]
4113 pub fn schema_authorization(&self) -> Option<SchemaAuthorization> {
4114 support::child(&self.syntax)
4115 }
4116 #[inline]
4117 pub fn schema_elements(&self) -> AstChildren<SchemaElement> {
4118 support::children(&self.syntax)
4119 }
4120 #[inline]
4121 pub fn create_token(&self) -> Option<SyntaxToken> {
4122 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4123 }
4124 #[inline]
4125 pub fn schema_token(&self) -> Option<SyntaxToken> {
4126 support::token(&self.syntax, SyntaxKind::SCHEMA_KW)
4127 }
4128}
4129
4130#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4131pub struct CreateSequence {
4132 pub(crate) syntax: SyntaxNode,
4133}
4134impl CreateSequence {
4135 #[inline]
4136 pub fn if_not_exists(&self) -> Option<IfNotExists> {
4137 support::child(&self.syntax)
4138 }
4139 #[inline]
4140 pub fn path(&self) -> Option<Path> {
4141 support::child(&self.syntax)
4142 }
4143 #[inline]
4144 pub fn sequence_options(&self) -> AstChildren<SequenceOption> {
4145 support::children(&self.syntax)
4146 }
4147 #[inline]
4148 pub fn create_token(&self) -> Option<SyntaxToken> {
4149 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4150 }
4151 #[inline]
4152 pub fn sequence_token(&self) -> Option<SyntaxToken> {
4153 support::token(&self.syntax, SyntaxKind::SEQUENCE_KW)
4154 }
4155 #[inline]
4156 pub fn temp_token(&self) -> Option<SyntaxToken> {
4157 support::token(&self.syntax, SyntaxKind::TEMP_KW)
4158 }
4159 #[inline]
4160 pub fn temporary_token(&self) -> Option<SyntaxToken> {
4161 support::token(&self.syntax, SyntaxKind::TEMPORARY_KW)
4162 }
4163 #[inline]
4164 pub fn unlogged_token(&self) -> Option<SyntaxToken> {
4165 support::token(&self.syntax, SyntaxKind::UNLOGGED_KW)
4166 }
4167}
4168
4169#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4170pub struct CreateServer {
4171 pub(crate) syntax: SyntaxNode,
4172}
4173impl CreateServer {
4174 #[inline]
4175 pub fn alter_option_list(&self) -> Option<AlterOptionList> {
4176 support::child(&self.syntax)
4177 }
4178 #[inline]
4179 pub fn if_not_exists(&self) -> Option<IfNotExists> {
4180 support::child(&self.syntax)
4181 }
4182 #[inline]
4183 pub fn literal(&self) -> Option<Literal> {
4184 support::child(&self.syntax)
4185 }
4186 #[inline]
4187 pub fn name(&self) -> Option<Name> {
4188 support::child(&self.syntax)
4189 }
4190 #[inline]
4191 pub fn name_ref(&self) -> Option<NameRef> {
4192 support::child(&self.syntax)
4193 }
4194 #[inline]
4195 pub fn create_token(&self) -> Option<SyntaxToken> {
4196 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4197 }
4198 #[inline]
4199 pub fn data_token(&self) -> Option<SyntaxToken> {
4200 support::token(&self.syntax, SyntaxKind::DATA_KW)
4201 }
4202 #[inline]
4203 pub fn foreign_token(&self) -> Option<SyntaxToken> {
4204 support::token(&self.syntax, SyntaxKind::FOREIGN_KW)
4205 }
4206 #[inline]
4207 pub fn server_token(&self) -> Option<SyntaxToken> {
4208 support::token(&self.syntax, SyntaxKind::SERVER_KW)
4209 }
4210 #[inline]
4211 pub fn type_token(&self) -> Option<SyntaxToken> {
4212 support::token(&self.syntax, SyntaxKind::TYPE_KW)
4213 }
4214 #[inline]
4215 pub fn version_token(&self) -> Option<SyntaxToken> {
4216 support::token(&self.syntax, SyntaxKind::VERSION_KW)
4217 }
4218 #[inline]
4219 pub fn wrapper_token(&self) -> Option<SyntaxToken> {
4220 support::token(&self.syntax, SyntaxKind::WRAPPER_KW)
4221 }
4222}
4223
4224#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4225pub struct CreateStatistics {
4226 pub(crate) syntax: SyntaxNode,
4227}
4228impl CreateStatistics {
4229 #[inline]
4230 pub fn from_table(&self) -> Option<FromTable> {
4231 support::child(&self.syntax)
4232 }
4233 #[inline]
4234 pub fn name_refs(&self) -> AstChildren<NameRef> {
4235 support::children(&self.syntax)
4236 }
4237 #[inline]
4238 pub fn path(&self) -> Option<Path> {
4239 support::child(&self.syntax)
4240 }
4241 #[inline]
4242 pub fn create_token(&self) -> Option<SyntaxToken> {
4243 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4244 }
4245 #[inline]
4246 pub fn on_token(&self) -> Option<SyntaxToken> {
4247 support::token(&self.syntax, SyntaxKind::ON_KW)
4248 }
4249 #[inline]
4250 pub fn statistics_token(&self) -> Option<SyntaxToken> {
4251 support::token(&self.syntax, SyntaxKind::STATISTICS_KW)
4252 }
4253}
4254
4255#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4256pub struct CreateSubscription {
4257 pub(crate) syntax: SyntaxNode,
4258}
4259impl CreateSubscription {
4260 #[inline]
4261 pub fn literal(&self) -> Option<Literal> {
4262 support::child(&self.syntax)
4263 }
4264 #[inline]
4265 pub fn name(&self) -> Option<Name> {
4266 support::child(&self.syntax)
4267 }
4268 #[inline]
4269 pub fn name_refs(&self) -> AstChildren<NameRef> {
4270 support::children(&self.syntax)
4271 }
4272 #[inline]
4273 pub fn with_params(&self) -> Option<WithParams> {
4274 support::child(&self.syntax)
4275 }
4276 #[inline]
4277 pub fn connection_token(&self) -> Option<SyntaxToken> {
4278 support::token(&self.syntax, SyntaxKind::CONNECTION_KW)
4279 }
4280 #[inline]
4281 pub fn create_token(&self) -> Option<SyntaxToken> {
4282 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4283 }
4284 #[inline]
4285 pub fn publication_token(&self) -> Option<SyntaxToken> {
4286 support::token(&self.syntax, SyntaxKind::PUBLICATION_KW)
4287 }
4288 #[inline]
4289 pub fn subscription_token(&self) -> Option<SyntaxToken> {
4290 support::token(&self.syntax, SyntaxKind::SUBSCRIPTION_KW)
4291 }
4292}
4293
4294#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4295pub struct CreateTable {
4296 pub(crate) syntax: SyntaxNode,
4297}
4298impl CreateTable {
4299 #[inline]
4300 pub fn if_not_exists(&self) -> Option<IfNotExists> {
4301 support::child(&self.syntax)
4302 }
4303 #[inline]
4304 pub fn inherits(&self) -> Option<Inherits> {
4305 support::child(&self.syntax)
4306 }
4307 #[inline]
4308 pub fn of_type(&self) -> Option<OfType> {
4309 support::child(&self.syntax)
4310 }
4311 #[inline]
4312 pub fn on_commit(&self) -> Option<OnCommit> {
4313 support::child(&self.syntax)
4314 }
4315 #[inline]
4316 pub fn partition_by(&self) -> Option<PartitionBy> {
4317 support::child(&self.syntax)
4318 }
4319 #[inline]
4320 pub fn partition_of(&self) -> Option<PartitionOf> {
4321 support::child(&self.syntax)
4322 }
4323 #[inline]
4324 pub fn path(&self) -> Option<Path> {
4325 support::child(&self.syntax)
4326 }
4327 #[inline]
4328 pub fn table_arg_list(&self) -> Option<TableArgList> {
4329 support::child(&self.syntax)
4330 }
4331 #[inline]
4332 pub fn tablespace(&self) -> Option<Tablespace> {
4333 support::child(&self.syntax)
4334 }
4335 #[inline]
4336 pub fn using_method(&self) -> Option<UsingMethod> {
4337 support::child(&self.syntax)
4338 }
4339 #[inline]
4340 pub fn with_params(&self) -> Option<WithParams> {
4341 support::child(&self.syntax)
4342 }
4343 #[inline]
4344 pub fn without_oids(&self) -> Option<WithoutOids> {
4345 support::child(&self.syntax)
4346 }
4347 #[inline]
4348 pub fn create_token(&self) -> Option<SyntaxToken> {
4349 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4350 }
4351 #[inline]
4352 pub fn global_token(&self) -> Option<SyntaxToken> {
4353 support::token(&self.syntax, SyntaxKind::GLOBAL_KW)
4354 }
4355 #[inline]
4356 pub fn local_token(&self) -> Option<SyntaxToken> {
4357 support::token(&self.syntax, SyntaxKind::LOCAL_KW)
4358 }
4359 #[inline]
4360 pub fn table_token(&self) -> Option<SyntaxToken> {
4361 support::token(&self.syntax, SyntaxKind::TABLE_KW)
4362 }
4363 #[inline]
4364 pub fn temp_token(&self) -> Option<SyntaxToken> {
4365 support::token(&self.syntax, SyntaxKind::TEMP_KW)
4366 }
4367 #[inline]
4368 pub fn temporary_token(&self) -> Option<SyntaxToken> {
4369 support::token(&self.syntax, SyntaxKind::TEMPORARY_KW)
4370 }
4371 #[inline]
4372 pub fn unlogged_token(&self) -> Option<SyntaxToken> {
4373 support::token(&self.syntax, SyntaxKind::UNLOGGED_KW)
4374 }
4375}
4376
4377#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4378pub struct CreateTableAs {
4379 pub(crate) syntax: SyntaxNode,
4380}
4381impl CreateTableAs {
4382 #[inline]
4383 pub fn if_not_exists(&self) -> Option<IfNotExists> {
4384 support::child(&self.syntax)
4385 }
4386 #[inline]
4387 pub fn on_commit(&self) -> Option<OnCommit> {
4388 support::child(&self.syntax)
4389 }
4390 #[inline]
4391 pub fn path(&self) -> Option<Path> {
4392 support::child(&self.syntax)
4393 }
4394 #[inline]
4395 pub fn query(&self) -> Option<SelectVariant> {
4396 support::child(&self.syntax)
4397 }
4398 #[inline]
4399 pub fn tablespace(&self) -> Option<Tablespace> {
4400 support::child(&self.syntax)
4401 }
4402 #[inline]
4403 pub fn using_method(&self) -> Option<UsingMethod> {
4404 support::child(&self.syntax)
4405 }
4406 #[inline]
4407 pub fn with_data(&self) -> Option<WithData> {
4408 support::child(&self.syntax)
4409 }
4410 #[inline]
4411 pub fn with_no_data(&self) -> Option<WithNoData> {
4412 support::child(&self.syntax)
4413 }
4414 #[inline]
4415 pub fn with_params(&self) -> Option<WithParams> {
4416 support::child(&self.syntax)
4417 }
4418 #[inline]
4419 pub fn without_oids(&self) -> Option<WithoutOids> {
4420 support::child(&self.syntax)
4421 }
4422 #[inline]
4423 pub fn as_token(&self) -> Option<SyntaxToken> {
4424 support::token(&self.syntax, SyntaxKind::AS_KW)
4425 }
4426 #[inline]
4427 pub fn create_token(&self) -> Option<SyntaxToken> {
4428 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4429 }
4430 #[inline]
4431 pub fn global_token(&self) -> Option<SyntaxToken> {
4432 support::token(&self.syntax, SyntaxKind::GLOBAL_KW)
4433 }
4434 #[inline]
4435 pub fn local_token(&self) -> Option<SyntaxToken> {
4436 support::token(&self.syntax, SyntaxKind::LOCAL_KW)
4437 }
4438 #[inline]
4439 pub fn table_token(&self) -> Option<SyntaxToken> {
4440 support::token(&self.syntax, SyntaxKind::TABLE_KW)
4441 }
4442 #[inline]
4443 pub fn temp_token(&self) -> Option<SyntaxToken> {
4444 support::token(&self.syntax, SyntaxKind::TEMP_KW)
4445 }
4446 #[inline]
4447 pub fn temporary_token(&self) -> Option<SyntaxToken> {
4448 support::token(&self.syntax, SyntaxKind::TEMPORARY_KW)
4449 }
4450 #[inline]
4451 pub fn unlogged_token(&self) -> Option<SyntaxToken> {
4452 support::token(&self.syntax, SyntaxKind::UNLOGGED_KW)
4453 }
4454}
4455
4456#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4457pub struct CreateTablespace {
4458 pub(crate) syntax: SyntaxNode,
4459}
4460impl CreateTablespace {
4461 #[inline]
4462 pub fn literal(&self) -> Option<Literal> {
4463 support::child(&self.syntax)
4464 }
4465 #[inline]
4466 pub fn name(&self) -> Option<Name> {
4467 support::child(&self.syntax)
4468 }
4469 #[inline]
4470 pub fn role(&self) -> Option<Role> {
4471 support::child(&self.syntax)
4472 }
4473 #[inline]
4474 pub fn with_params(&self) -> Option<WithParams> {
4475 support::child(&self.syntax)
4476 }
4477 #[inline]
4478 pub fn create_token(&self) -> Option<SyntaxToken> {
4479 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4480 }
4481 #[inline]
4482 pub fn location_token(&self) -> Option<SyntaxToken> {
4483 support::token(&self.syntax, SyntaxKind::LOCATION_KW)
4484 }
4485 #[inline]
4486 pub fn owner_token(&self) -> Option<SyntaxToken> {
4487 support::token(&self.syntax, SyntaxKind::OWNER_KW)
4488 }
4489 #[inline]
4490 pub fn tablespace_token(&self) -> Option<SyntaxToken> {
4491 support::token(&self.syntax, SyntaxKind::TABLESPACE_KW)
4492 }
4493}
4494
4495#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4496pub struct CreateTextSearchConfiguration {
4497 pub(crate) syntax: SyntaxNode,
4498}
4499impl CreateTextSearchConfiguration {
4500 #[inline]
4501 pub fn attribute_list(&self) -> Option<AttributeList> {
4502 support::child(&self.syntax)
4503 }
4504 #[inline]
4505 pub fn path(&self) -> Option<Path> {
4506 support::child(&self.syntax)
4507 }
4508 #[inline]
4509 pub fn configuration_token(&self) -> Option<SyntaxToken> {
4510 support::token(&self.syntax, SyntaxKind::CONFIGURATION_KW)
4511 }
4512 #[inline]
4513 pub fn create_token(&self) -> Option<SyntaxToken> {
4514 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4515 }
4516 #[inline]
4517 pub fn search_token(&self) -> Option<SyntaxToken> {
4518 support::token(&self.syntax, SyntaxKind::SEARCH_KW)
4519 }
4520 #[inline]
4521 pub fn text_token(&self) -> Option<SyntaxToken> {
4522 support::token(&self.syntax, SyntaxKind::TEXT_KW)
4523 }
4524}
4525
4526#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4527pub struct CreateTextSearchDictionary {
4528 pub(crate) syntax: SyntaxNode,
4529}
4530impl CreateTextSearchDictionary {
4531 #[inline]
4532 pub fn attribute_list(&self) -> Option<AttributeList> {
4533 support::child(&self.syntax)
4534 }
4535 #[inline]
4536 pub fn path(&self) -> Option<Path> {
4537 support::child(&self.syntax)
4538 }
4539 #[inline]
4540 pub fn create_token(&self) -> Option<SyntaxToken> {
4541 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4542 }
4543 #[inline]
4544 pub fn dictionary_token(&self) -> Option<SyntaxToken> {
4545 support::token(&self.syntax, SyntaxKind::DICTIONARY_KW)
4546 }
4547 #[inline]
4548 pub fn search_token(&self) -> Option<SyntaxToken> {
4549 support::token(&self.syntax, SyntaxKind::SEARCH_KW)
4550 }
4551 #[inline]
4552 pub fn text_token(&self) -> Option<SyntaxToken> {
4553 support::token(&self.syntax, SyntaxKind::TEXT_KW)
4554 }
4555}
4556
4557#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4558pub struct CreateTextSearchParser {
4559 pub(crate) syntax: SyntaxNode,
4560}
4561impl CreateTextSearchParser {
4562 #[inline]
4563 pub fn attribute_list(&self) -> Option<AttributeList> {
4564 support::child(&self.syntax)
4565 }
4566 #[inline]
4567 pub fn path(&self) -> Option<Path> {
4568 support::child(&self.syntax)
4569 }
4570 #[inline]
4571 pub fn create_token(&self) -> Option<SyntaxToken> {
4572 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4573 }
4574 #[inline]
4575 pub fn parser_token(&self) -> Option<SyntaxToken> {
4576 support::token(&self.syntax, SyntaxKind::PARSER_KW)
4577 }
4578 #[inline]
4579 pub fn search_token(&self) -> Option<SyntaxToken> {
4580 support::token(&self.syntax, SyntaxKind::SEARCH_KW)
4581 }
4582 #[inline]
4583 pub fn text_token(&self) -> Option<SyntaxToken> {
4584 support::token(&self.syntax, SyntaxKind::TEXT_KW)
4585 }
4586}
4587
4588#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4589pub struct CreateTextSearchTemplate {
4590 pub(crate) syntax: SyntaxNode,
4591}
4592impl CreateTextSearchTemplate {
4593 #[inline]
4594 pub fn attribute_list(&self) -> Option<AttributeList> {
4595 support::child(&self.syntax)
4596 }
4597 #[inline]
4598 pub fn path(&self) -> Option<Path> {
4599 support::child(&self.syntax)
4600 }
4601 #[inline]
4602 pub fn create_token(&self) -> Option<SyntaxToken> {
4603 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4604 }
4605 #[inline]
4606 pub fn search_token(&self) -> Option<SyntaxToken> {
4607 support::token(&self.syntax, SyntaxKind::SEARCH_KW)
4608 }
4609 #[inline]
4610 pub fn template_token(&self) -> Option<SyntaxToken> {
4611 support::token(&self.syntax, SyntaxKind::TEMPLATE_KW)
4612 }
4613 #[inline]
4614 pub fn text_token(&self) -> Option<SyntaxToken> {
4615 support::token(&self.syntax, SyntaxKind::TEXT_KW)
4616 }
4617}
4618
4619#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4620pub struct CreateTransform {
4621 pub(crate) syntax: SyntaxNode,
4622}
4623impl CreateTransform {
4624 #[inline]
4625 pub fn from_func(&self) -> Option<TransformFromFunc> {
4626 support::child(&self.syntax)
4627 }
4628 #[inline]
4629 pub fn language(&self) -> Option<NameRef> {
4630 support::child(&self.syntax)
4631 }
4632 #[inline]
4633 pub fn or_replace(&self) -> Option<OrReplace> {
4634 support::child(&self.syntax)
4635 }
4636 #[inline]
4637 pub fn to_func(&self) -> Option<TransformToFunc> {
4638 support::child(&self.syntax)
4639 }
4640 #[inline]
4641 pub fn ty(&self) -> Option<Type> {
4642 support::child(&self.syntax)
4643 }
4644 #[inline]
4645 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
4646 support::token(&self.syntax, SyntaxKind::L_PAREN)
4647 }
4648 #[inline]
4649 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
4650 support::token(&self.syntax, SyntaxKind::R_PAREN)
4651 }
4652 #[inline]
4653 pub fn comma_token(&self) -> Option<SyntaxToken> {
4654 support::token(&self.syntax, SyntaxKind::COMMA)
4655 }
4656 #[inline]
4657 pub fn create_token(&self) -> Option<SyntaxToken> {
4658 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4659 }
4660 #[inline]
4661 pub fn for_token(&self) -> Option<SyntaxToken> {
4662 support::token(&self.syntax, SyntaxKind::FOR_KW)
4663 }
4664 #[inline]
4665 pub fn language_token(&self) -> Option<SyntaxToken> {
4666 support::token(&self.syntax, SyntaxKind::LANGUAGE_KW)
4667 }
4668 #[inline]
4669 pub fn transform_token(&self) -> Option<SyntaxToken> {
4670 support::token(&self.syntax, SyntaxKind::TRANSFORM_KW)
4671 }
4672}
4673
4674#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4675pub struct CreateTrigger {
4676 pub(crate) syntax: SyntaxNode,
4677}
4678impl CreateTrigger {
4679 #[inline]
4680 pub fn call_expr(&self) -> Option<CallExpr> {
4681 support::child(&self.syntax)
4682 }
4683 #[inline]
4684 pub fn deferrable_constraint_option(&self) -> Option<DeferrableConstraintOption> {
4685 support::child(&self.syntax)
4686 }
4687 #[inline]
4688 pub fn from_table(&self) -> Option<FromTable> {
4689 support::child(&self.syntax)
4690 }
4691 #[inline]
4692 pub fn initially_deferred_constraint_option(
4693 &self,
4694 ) -> Option<InitiallyDeferredConstraintOption> {
4695 support::child(&self.syntax)
4696 }
4697 #[inline]
4698 pub fn initially_immediate_constraint_option(
4699 &self,
4700 ) -> Option<InitiallyImmediateConstraintOption> {
4701 support::child(&self.syntax)
4702 }
4703 #[inline]
4704 pub fn name(&self) -> Option<Name> {
4705 support::child(&self.syntax)
4706 }
4707 #[inline]
4708 pub fn not_deferrable_constraint_option(&self) -> Option<NotDeferrableConstraintOption> {
4709 support::child(&self.syntax)
4710 }
4711 #[inline]
4712 pub fn on_table(&self) -> Option<OnTable> {
4713 support::child(&self.syntax)
4714 }
4715 #[inline]
4716 pub fn or_replace(&self) -> Option<OrReplace> {
4717 support::child(&self.syntax)
4718 }
4719 #[inline]
4720 pub fn referencing(&self) -> Option<Referencing> {
4721 support::child(&self.syntax)
4722 }
4723 #[inline]
4724 pub fn timing(&self) -> Option<Timing> {
4725 support::child(&self.syntax)
4726 }
4727 #[inline]
4728 pub fn trigger_event_list(&self) -> Option<TriggerEventList> {
4729 support::child(&self.syntax)
4730 }
4731 #[inline]
4732 pub fn when_condition(&self) -> Option<WhenCondition> {
4733 support::child(&self.syntax)
4734 }
4735 #[inline]
4736 pub fn constraint_token(&self) -> Option<SyntaxToken> {
4737 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
4738 }
4739 #[inline]
4740 pub fn create_token(&self) -> Option<SyntaxToken> {
4741 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4742 }
4743 #[inline]
4744 pub fn each_token(&self) -> Option<SyntaxToken> {
4745 support::token(&self.syntax, SyntaxKind::EACH_KW)
4746 }
4747 #[inline]
4748 pub fn execute_token(&self) -> Option<SyntaxToken> {
4749 support::token(&self.syntax, SyntaxKind::EXECUTE_KW)
4750 }
4751 #[inline]
4752 pub fn for_token(&self) -> Option<SyntaxToken> {
4753 support::token(&self.syntax, SyntaxKind::FOR_KW)
4754 }
4755 #[inline]
4756 pub fn function_token(&self) -> Option<SyntaxToken> {
4757 support::token(&self.syntax, SyntaxKind::FUNCTION_KW)
4758 }
4759 #[inline]
4760 pub fn procedure_token(&self) -> Option<SyntaxToken> {
4761 support::token(&self.syntax, SyntaxKind::PROCEDURE_KW)
4762 }
4763 #[inline]
4764 pub fn row_token(&self) -> Option<SyntaxToken> {
4765 support::token(&self.syntax, SyntaxKind::ROW_KW)
4766 }
4767 #[inline]
4768 pub fn statement_token(&self) -> Option<SyntaxToken> {
4769 support::token(&self.syntax, SyntaxKind::STATEMENT_KW)
4770 }
4771 #[inline]
4772 pub fn trigger_token(&self) -> Option<SyntaxToken> {
4773 support::token(&self.syntax, SyntaxKind::TRIGGER_KW)
4774 }
4775}
4776
4777#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4778pub struct CreateType {
4779 pub(crate) syntax: SyntaxNode,
4780}
4781impl CreateType {
4782 #[inline]
4783 pub fn attribute_list(&self) -> Option<AttributeList> {
4784 support::child(&self.syntax)
4785 }
4786 #[inline]
4787 pub fn column_list(&self) -> Option<ColumnList> {
4788 support::child(&self.syntax)
4789 }
4790 #[inline]
4791 pub fn path(&self) -> Option<Path> {
4792 support::child(&self.syntax)
4793 }
4794 #[inline]
4795 pub fn variant_list(&self) -> Option<VariantList> {
4796 support::child(&self.syntax)
4797 }
4798 #[inline]
4799 pub fn as_token(&self) -> Option<SyntaxToken> {
4800 support::token(&self.syntax, SyntaxKind::AS_KW)
4801 }
4802 #[inline]
4803 pub fn create_token(&self) -> Option<SyntaxToken> {
4804 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4805 }
4806 #[inline]
4807 pub fn enum_token(&self) -> Option<SyntaxToken> {
4808 support::token(&self.syntax, SyntaxKind::ENUM_KW)
4809 }
4810 #[inline]
4811 pub fn range_token(&self) -> Option<SyntaxToken> {
4812 support::token(&self.syntax, SyntaxKind::RANGE_KW)
4813 }
4814 #[inline]
4815 pub fn type_token(&self) -> Option<SyntaxToken> {
4816 support::token(&self.syntax, SyntaxKind::TYPE_KW)
4817 }
4818}
4819
4820#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4821pub struct CreateUser {
4822 pub(crate) syntax: SyntaxNode,
4823}
4824impl CreateUser {
4825 #[inline]
4826 pub fn name(&self) -> Option<Name> {
4827 support::child(&self.syntax)
4828 }
4829 #[inline]
4830 pub fn role_option_list(&self) -> Option<RoleOptionList> {
4831 support::child(&self.syntax)
4832 }
4833 #[inline]
4834 pub fn create_token(&self) -> Option<SyntaxToken> {
4835 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4836 }
4837 #[inline]
4838 pub fn user_token(&self) -> Option<SyntaxToken> {
4839 support::token(&self.syntax, SyntaxKind::USER_KW)
4840 }
4841}
4842
4843#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4844pub struct CreateUserMapping {
4845 pub(crate) syntax: SyntaxNode,
4846}
4847impl CreateUserMapping {
4848 #[inline]
4849 pub fn alter_option_list(&self) -> Option<AlterOptionList> {
4850 support::child(&self.syntax)
4851 }
4852 #[inline]
4853 pub fn if_not_exists(&self) -> Option<IfNotExists> {
4854 support::child(&self.syntax)
4855 }
4856 #[inline]
4857 pub fn name_ref(&self) -> Option<NameRef> {
4858 support::child(&self.syntax)
4859 }
4860 #[inline]
4861 pub fn role(&self) -> Option<Role> {
4862 support::child(&self.syntax)
4863 }
4864 #[inline]
4865 pub fn create_token(&self) -> Option<SyntaxToken> {
4866 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4867 }
4868 #[inline]
4869 pub fn for_token(&self) -> Option<SyntaxToken> {
4870 support::token(&self.syntax, SyntaxKind::FOR_KW)
4871 }
4872 #[inline]
4873 pub fn mapping_token(&self) -> Option<SyntaxToken> {
4874 support::token(&self.syntax, SyntaxKind::MAPPING_KW)
4875 }
4876 #[inline]
4877 pub fn server_token(&self) -> Option<SyntaxToken> {
4878 support::token(&self.syntax, SyntaxKind::SERVER_KW)
4879 }
4880 #[inline]
4881 pub fn user_token(&self) -> Option<SyntaxToken> {
4882 support::token(&self.syntax, SyntaxKind::USER_KW)
4883 }
4884}
4885
4886#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4887pub struct CreateView {
4888 pub(crate) syntax: SyntaxNode,
4889}
4890impl CreateView {
4891 #[inline]
4892 pub fn column_list(&self) -> Option<ColumnList> {
4893 support::child(&self.syntax)
4894 }
4895 #[inline]
4896 pub fn or_replace(&self) -> Option<OrReplace> {
4897 support::child(&self.syntax)
4898 }
4899 #[inline]
4900 pub fn path(&self) -> Option<Path> {
4901 support::child(&self.syntax)
4902 }
4903 #[inline]
4904 pub fn query(&self) -> Option<SelectVariant> {
4905 support::child(&self.syntax)
4906 }
4907 #[inline]
4908 pub fn with_params(&self) -> Option<WithParams> {
4909 support::child(&self.syntax)
4910 }
4911 #[inline]
4912 pub fn as_token(&self) -> Option<SyntaxToken> {
4913 support::token(&self.syntax, SyntaxKind::AS_KW)
4914 }
4915 #[inline]
4916 pub fn cascaded_token(&self) -> Option<SyntaxToken> {
4917 support::token(&self.syntax, SyntaxKind::CASCADED_KW)
4918 }
4919 #[inline]
4920 pub fn check_token(&self) -> Option<SyntaxToken> {
4921 support::token(&self.syntax, SyntaxKind::CHECK_KW)
4922 }
4923 #[inline]
4924 pub fn create_token(&self) -> Option<SyntaxToken> {
4925 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4926 }
4927 #[inline]
4928 pub fn local_token(&self) -> Option<SyntaxToken> {
4929 support::token(&self.syntax, SyntaxKind::LOCAL_KW)
4930 }
4931 #[inline]
4932 pub fn option_token(&self) -> Option<SyntaxToken> {
4933 support::token(&self.syntax, SyntaxKind::OPTION_KW)
4934 }
4935 #[inline]
4936 pub fn recursive_token(&self) -> Option<SyntaxToken> {
4937 support::token(&self.syntax, SyntaxKind::RECURSIVE_KW)
4938 }
4939 #[inline]
4940 pub fn temp_token(&self) -> Option<SyntaxToken> {
4941 support::token(&self.syntax, SyntaxKind::TEMP_KW)
4942 }
4943 #[inline]
4944 pub fn temporary_token(&self) -> Option<SyntaxToken> {
4945 support::token(&self.syntax, SyntaxKind::TEMPORARY_KW)
4946 }
4947 #[inline]
4948 pub fn view_token(&self) -> Option<SyntaxToken> {
4949 support::token(&self.syntax, SyntaxKind::VIEW_KW)
4950 }
4951 #[inline]
4952 pub fn with_token(&self) -> Option<SyntaxToken> {
4953 support::token(&self.syntax, SyntaxKind::WITH_KW)
4954 }
4955}
4956
4957#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4958pub struct CustomOp {
4959 pub(crate) syntax: SyntaxNode,
4960}
4961impl CustomOp {
4962 #[inline]
4963 pub fn bang_token(&self) -> Option<SyntaxToken> {
4964 support::token(&self.syntax, SyntaxKind::BANG)
4965 }
4966 #[inline]
4967 pub fn pound_token(&self) -> Option<SyntaxToken> {
4968 support::token(&self.syntax, SyntaxKind::POUND)
4969 }
4970 #[inline]
4971 pub fn percent_token(&self) -> Option<SyntaxToken> {
4972 support::token(&self.syntax, SyntaxKind::PERCENT)
4973 }
4974 #[inline]
4975 pub fn amp_token(&self) -> Option<SyntaxToken> {
4976 support::token(&self.syntax, SyntaxKind::AMP)
4977 }
4978 #[inline]
4979 pub fn star_token(&self) -> Option<SyntaxToken> {
4980 support::token(&self.syntax, SyntaxKind::STAR)
4981 }
4982 #[inline]
4983 pub fn plus_token(&self) -> Option<SyntaxToken> {
4984 support::token(&self.syntax, SyntaxKind::PLUS)
4985 }
4986 #[inline]
4987 pub fn minus_token(&self) -> Option<SyntaxToken> {
4988 support::token(&self.syntax, SyntaxKind::MINUS)
4989 }
4990 #[inline]
4991 pub fn slash_token(&self) -> Option<SyntaxToken> {
4992 support::token(&self.syntax, SyntaxKind::SLASH)
4993 }
4994 #[inline]
4995 pub fn l_angle_token(&self) -> Option<SyntaxToken> {
4996 support::token(&self.syntax, SyntaxKind::L_ANGLE)
4997 }
4998 #[inline]
4999 pub fn eq_token(&self) -> Option<SyntaxToken> {
5000 support::token(&self.syntax, SyntaxKind::EQ)
5001 }
5002 #[inline]
5003 pub fn r_angle_token(&self) -> Option<SyntaxToken> {
5004 support::token(&self.syntax, SyntaxKind::R_ANGLE)
5005 }
5006 #[inline]
5007 pub fn question_token(&self) -> Option<SyntaxToken> {
5008 support::token(&self.syntax, SyntaxKind::QUESTION)
5009 }
5010 #[inline]
5011 pub fn at_token(&self) -> Option<SyntaxToken> {
5012 support::token(&self.syntax, SyntaxKind::AT)
5013 }
5014 #[inline]
5015 pub fn caret_token(&self) -> Option<SyntaxToken> {
5016 support::token(&self.syntax, SyntaxKind::CARET)
5017 }
5018 #[inline]
5019 pub fn backtick_token(&self) -> Option<SyntaxToken> {
5020 support::token(&self.syntax, SyntaxKind::BACKTICK)
5021 }
5022 #[inline]
5023 pub fn pipe_token(&self) -> Option<SyntaxToken> {
5024 support::token(&self.syntax, SyntaxKind::PIPE)
5025 }
5026 #[inline]
5027 pub fn tilde_token(&self) -> Option<SyntaxToken> {
5028 support::token(&self.syntax, SyntaxKind::TILDE)
5029 }
5030}
5031
5032#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5033pub struct Deallocate {
5034 pub(crate) syntax: SyntaxNode,
5035}
5036impl Deallocate {
5037 #[inline]
5038 pub fn name_ref(&self) -> Option<NameRef> {
5039 support::child(&self.syntax)
5040 }
5041 #[inline]
5042 pub fn all_token(&self) -> Option<SyntaxToken> {
5043 support::token(&self.syntax, SyntaxKind::ALL_KW)
5044 }
5045 #[inline]
5046 pub fn deallocate_token(&self) -> Option<SyntaxToken> {
5047 support::token(&self.syntax, SyntaxKind::DEALLOCATE_KW)
5048 }
5049 #[inline]
5050 pub fn prepare_token(&self) -> Option<SyntaxToken> {
5051 support::token(&self.syntax, SyntaxKind::PREPARE_KW)
5052 }
5053}
5054
5055#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5056pub struct Declare {
5057 pub(crate) syntax: SyntaxNode,
5058}
5059impl Declare {
5060 #[inline]
5061 pub fn name(&self) -> Option<Name> {
5062 support::child(&self.syntax)
5063 }
5064 #[inline]
5065 pub fn query(&self) -> Option<SelectVariant> {
5066 support::child(&self.syntax)
5067 }
5068 #[inline]
5069 pub fn asensitive_token(&self) -> Option<SyntaxToken> {
5070 support::token(&self.syntax, SyntaxKind::ASENSITIVE_KW)
5071 }
5072 #[inline]
5073 pub fn binary_token(&self) -> Option<SyntaxToken> {
5074 support::token(&self.syntax, SyntaxKind::BINARY_KW)
5075 }
5076 #[inline]
5077 pub fn cursor_token(&self) -> Option<SyntaxToken> {
5078 support::token(&self.syntax, SyntaxKind::CURSOR_KW)
5079 }
5080 #[inline]
5081 pub fn declare_token(&self) -> Option<SyntaxToken> {
5082 support::token(&self.syntax, SyntaxKind::DECLARE_KW)
5083 }
5084 #[inline]
5085 pub fn for_token(&self) -> Option<SyntaxToken> {
5086 support::token(&self.syntax, SyntaxKind::FOR_KW)
5087 }
5088 #[inline]
5089 pub fn hold_token(&self) -> Option<SyntaxToken> {
5090 support::token(&self.syntax, SyntaxKind::HOLD_KW)
5091 }
5092 #[inline]
5093 pub fn insensitive_token(&self) -> Option<SyntaxToken> {
5094 support::token(&self.syntax, SyntaxKind::INSENSITIVE_KW)
5095 }
5096 #[inline]
5097 pub fn no_token(&self) -> Option<SyntaxToken> {
5098 support::token(&self.syntax, SyntaxKind::NO_KW)
5099 }
5100 #[inline]
5101 pub fn scroll_token(&self) -> Option<SyntaxToken> {
5102 support::token(&self.syntax, SyntaxKind::SCROLL_KW)
5103 }
5104 #[inline]
5105 pub fn with_token(&self) -> Option<SyntaxToken> {
5106 support::token(&self.syntax, SyntaxKind::WITH_KW)
5107 }
5108 #[inline]
5109 pub fn without_token(&self) -> Option<SyntaxToken> {
5110 support::token(&self.syntax, SyntaxKind::WITHOUT_KW)
5111 }
5112}
5113
5114#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5115pub struct DefaultConstraint {
5116 pub(crate) syntax: SyntaxNode,
5117}
5118impl DefaultConstraint {
5119 #[inline]
5120 pub fn expr(&self) -> Option<Expr> {
5121 support::child(&self.syntax)
5122 }
5123 #[inline]
5124 pub fn name_ref(&self) -> Option<NameRef> {
5125 support::child(&self.syntax)
5126 }
5127 #[inline]
5128 pub fn constraint_token(&self) -> Option<SyntaxToken> {
5129 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
5130 }
5131 #[inline]
5132 pub fn default_token(&self) -> Option<SyntaxToken> {
5133 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
5134 }
5135}
5136
5137#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5138pub struct Deferrable {
5139 pub(crate) syntax: SyntaxNode,
5140}
5141impl Deferrable {
5142 #[inline]
5143 pub fn deferrable_token(&self) -> Option<SyntaxToken> {
5144 support::token(&self.syntax, SyntaxKind::DEFERRABLE_KW)
5145 }
5146}
5147
5148#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5149pub struct DeferrableConstraintOption {
5150 pub(crate) syntax: SyntaxNode,
5151}
5152impl DeferrableConstraintOption {
5153 #[inline]
5154 pub fn deferrable_token(&self) -> Option<SyntaxToken> {
5155 support::token(&self.syntax, SyntaxKind::DEFERRABLE_KW)
5156 }
5157}
5158
5159#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5160pub struct Delete {
5161 pub(crate) syntax: SyntaxNode,
5162}
5163impl Delete {
5164 #[inline]
5165 pub fn alias(&self) -> Option<Alias> {
5166 support::child(&self.syntax)
5167 }
5168 #[inline]
5169 pub fn relation_name(&self) -> Option<RelationName> {
5170 support::child(&self.syntax)
5171 }
5172 #[inline]
5173 pub fn returning_clause(&self) -> Option<ReturningClause> {
5174 support::child(&self.syntax)
5175 }
5176 #[inline]
5177 pub fn using_clause(&self) -> Option<UsingClause> {
5178 support::child(&self.syntax)
5179 }
5180 #[inline]
5181 pub fn where_clause(&self) -> Option<WhereClause> {
5182 support::child(&self.syntax)
5183 }
5184 #[inline]
5185 pub fn where_current_of(&self) -> Option<WhereCurrentOf> {
5186 support::child(&self.syntax)
5187 }
5188 #[inline]
5189 pub fn delete_token(&self) -> Option<SyntaxToken> {
5190 support::token(&self.syntax, SyntaxKind::DELETE_KW)
5191 }
5192 #[inline]
5193 pub fn from_token(&self) -> Option<SyntaxToken> {
5194 support::token(&self.syntax, SyntaxKind::FROM_KW)
5195 }
5196}
5197
5198#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5199pub struct DeleteRows {
5200 pub(crate) syntax: SyntaxNode,
5201}
5202impl DeleteRows {
5203 #[inline]
5204 pub fn delete_token(&self) -> Option<SyntaxToken> {
5205 support::token(&self.syntax, SyntaxKind::DELETE_KW)
5206 }
5207 #[inline]
5208 pub fn rows_token(&self) -> Option<SyntaxToken> {
5209 support::token(&self.syntax, SyntaxKind::ROWS_KW)
5210 }
5211}
5212
5213#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5214pub struct DependsOnExtension {
5215 pub(crate) syntax: SyntaxNode,
5216}
5217impl DependsOnExtension {
5218 #[inline]
5219 pub fn name_ref(&self) -> Option<NameRef> {
5220 support::child(&self.syntax)
5221 }
5222 #[inline]
5223 pub fn depends_token(&self) -> Option<SyntaxToken> {
5224 support::token(&self.syntax, SyntaxKind::DEPENDS_KW)
5225 }
5226 #[inline]
5227 pub fn extension_token(&self) -> Option<SyntaxToken> {
5228 support::token(&self.syntax, SyntaxKind::EXTENSION_KW)
5229 }
5230 #[inline]
5231 pub fn on_token(&self) -> Option<SyntaxToken> {
5232 support::token(&self.syntax, SyntaxKind::ON_KW)
5233 }
5234}
5235
5236#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5237pub struct DetachPartition {
5238 pub(crate) syntax: SyntaxNode,
5239}
5240impl DetachPartition {
5241 #[inline]
5242 pub fn detach_token(&self) -> Option<SyntaxToken> {
5243 support::token(&self.syntax, SyntaxKind::DETACH_KW)
5244 }
5245 #[inline]
5246 pub fn partition_token(&self) -> Option<SyntaxToken> {
5247 support::token(&self.syntax, SyntaxKind::PARTITION_KW)
5248 }
5249}
5250
5251#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5252pub struct DisableRls {
5253 pub(crate) syntax: SyntaxNode,
5254}
5255impl DisableRls {
5256 #[inline]
5257 pub fn disable_token(&self) -> Option<SyntaxToken> {
5258 support::token(&self.syntax, SyntaxKind::DISABLE_KW)
5259 }
5260 #[inline]
5261 pub fn level_token(&self) -> Option<SyntaxToken> {
5262 support::token(&self.syntax, SyntaxKind::LEVEL_KW)
5263 }
5264 #[inline]
5265 pub fn row_token(&self) -> Option<SyntaxToken> {
5266 support::token(&self.syntax, SyntaxKind::ROW_KW)
5267 }
5268 #[inline]
5269 pub fn security_token(&self) -> Option<SyntaxToken> {
5270 support::token(&self.syntax, SyntaxKind::SECURITY_KW)
5271 }
5272}
5273
5274#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5275pub struct DisableRule {
5276 pub(crate) syntax: SyntaxNode,
5277}
5278impl DisableRule {
5279 #[inline]
5280 pub fn disable_token(&self) -> Option<SyntaxToken> {
5281 support::token(&self.syntax, SyntaxKind::DISABLE_KW)
5282 }
5283 #[inline]
5284 pub fn rule_token(&self) -> Option<SyntaxToken> {
5285 support::token(&self.syntax, SyntaxKind::RULE_KW)
5286 }
5287}
5288
5289#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5290pub struct DisableTrigger {
5291 pub(crate) syntax: SyntaxNode,
5292}
5293impl DisableTrigger {
5294 #[inline]
5295 pub fn disable_token(&self) -> Option<SyntaxToken> {
5296 support::token(&self.syntax, SyntaxKind::DISABLE_KW)
5297 }
5298 #[inline]
5299 pub fn trigger_token(&self) -> Option<SyntaxToken> {
5300 support::token(&self.syntax, SyntaxKind::TRIGGER_KW)
5301 }
5302}
5303
5304#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5305pub struct Discard {
5306 pub(crate) syntax: SyntaxNode,
5307}
5308impl Discard {
5309 #[inline]
5310 pub fn all_token(&self) -> Option<SyntaxToken> {
5311 support::token(&self.syntax, SyntaxKind::ALL_KW)
5312 }
5313 #[inline]
5314 pub fn discard_token(&self) -> Option<SyntaxToken> {
5315 support::token(&self.syntax, SyntaxKind::DISCARD_KW)
5316 }
5317 #[inline]
5318 pub fn plans_token(&self) -> Option<SyntaxToken> {
5319 support::token(&self.syntax, SyntaxKind::PLANS_KW)
5320 }
5321 #[inline]
5322 pub fn sequences_token(&self) -> Option<SyntaxToken> {
5323 support::token(&self.syntax, SyntaxKind::SEQUENCES_KW)
5324 }
5325 #[inline]
5326 pub fn temp_token(&self) -> Option<SyntaxToken> {
5327 support::token(&self.syntax, SyntaxKind::TEMP_KW)
5328 }
5329 #[inline]
5330 pub fn temporary_token(&self) -> Option<SyntaxToken> {
5331 support::token(&self.syntax, SyntaxKind::TEMPORARY_KW)
5332 }
5333}
5334
5335#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5336pub struct DistinctClause {
5337 pub(crate) syntax: SyntaxNode,
5338}
5339impl DistinctClause {
5340 #[inline]
5341 pub fn exprs(&self) -> AstChildren<Expr> {
5342 support::children(&self.syntax)
5343 }
5344 #[inline]
5345 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
5346 support::token(&self.syntax, SyntaxKind::L_PAREN)
5347 }
5348 #[inline]
5349 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
5350 support::token(&self.syntax, SyntaxKind::R_PAREN)
5351 }
5352 #[inline]
5353 pub fn distinct_token(&self) -> Option<SyntaxToken> {
5354 support::token(&self.syntax, SyntaxKind::DISTINCT_KW)
5355 }
5356 #[inline]
5357 pub fn on_token(&self) -> Option<SyntaxToken> {
5358 support::token(&self.syntax, SyntaxKind::ON_KW)
5359 }
5360}
5361
5362#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5363pub struct Do {
5364 pub(crate) syntax: SyntaxNode,
5365}
5366impl Do {
5367 #[inline]
5368 pub fn do_token(&self) -> Option<SyntaxToken> {
5369 support::token(&self.syntax, SyntaxKind::DO_KW)
5370 }
5371}
5372
5373#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5374pub struct DoubleType {
5375 pub(crate) syntax: SyntaxNode,
5376}
5377impl DoubleType {
5378 #[inline]
5379 pub fn double_token(&self) -> Option<SyntaxToken> {
5380 support::token(&self.syntax, SyntaxKind::DOUBLE_KW)
5381 }
5382 #[inline]
5383 pub fn precision_token(&self) -> Option<SyntaxToken> {
5384 support::token(&self.syntax, SyntaxKind::PRECISION_KW)
5385 }
5386}
5387
5388#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5389pub struct Drop {
5390 pub(crate) syntax: SyntaxNode,
5391}
5392impl Drop {
5393 #[inline]
5394 pub fn drop_token(&self) -> Option<SyntaxToken> {
5395 support::token(&self.syntax, SyntaxKind::DROP_KW)
5396 }
5397}
5398
5399#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5400pub struct DropAccessMethod {
5401 pub(crate) syntax: SyntaxNode,
5402}
5403impl DropAccessMethod {
5404 #[inline]
5405 pub fn if_exists(&self) -> Option<IfExists> {
5406 support::child(&self.syntax)
5407 }
5408 #[inline]
5409 pub fn name_ref(&self) -> Option<NameRef> {
5410 support::child(&self.syntax)
5411 }
5412 #[inline]
5413 pub fn access_token(&self) -> Option<SyntaxToken> {
5414 support::token(&self.syntax, SyntaxKind::ACCESS_KW)
5415 }
5416 #[inline]
5417 pub fn drop_token(&self) -> Option<SyntaxToken> {
5418 support::token(&self.syntax, SyntaxKind::DROP_KW)
5419 }
5420 #[inline]
5421 pub fn method_token(&self) -> Option<SyntaxToken> {
5422 support::token(&self.syntax, SyntaxKind::METHOD_KW)
5423 }
5424}
5425
5426#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5427pub struct DropAggregate {
5428 pub(crate) syntax: SyntaxNode,
5429}
5430impl DropAggregate {
5431 #[inline]
5432 pub fn aggregates(&self) -> AstChildren<Aggregate> {
5433 support::children(&self.syntax)
5434 }
5435 #[inline]
5436 pub fn if_exists(&self) -> Option<IfExists> {
5437 support::child(&self.syntax)
5438 }
5439 #[inline]
5440 pub fn aggregate_token(&self) -> Option<SyntaxToken> {
5441 support::token(&self.syntax, SyntaxKind::AGGREGATE_KW)
5442 }
5443 #[inline]
5444 pub fn drop_token(&self) -> Option<SyntaxToken> {
5445 support::token(&self.syntax, SyntaxKind::DROP_KW)
5446 }
5447}
5448
5449#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5450pub struct DropCast {
5451 pub(crate) syntax: SyntaxNode,
5452}
5453impl DropCast {
5454 #[inline]
5455 pub fn cast_sig(&self) -> Option<CastSig> {
5456 support::child(&self.syntax)
5457 }
5458 #[inline]
5459 pub fn if_exists(&self) -> Option<IfExists> {
5460 support::child(&self.syntax)
5461 }
5462 #[inline]
5463 pub fn cascade_token(&self) -> Option<SyntaxToken> {
5464 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
5465 }
5466 #[inline]
5467 pub fn cast_token(&self) -> Option<SyntaxToken> {
5468 support::token(&self.syntax, SyntaxKind::CAST_KW)
5469 }
5470 #[inline]
5471 pub fn drop_token(&self) -> Option<SyntaxToken> {
5472 support::token(&self.syntax, SyntaxKind::DROP_KW)
5473 }
5474 #[inline]
5475 pub fn restrict_token(&self) -> Option<SyntaxToken> {
5476 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
5477 }
5478}
5479
5480#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5481pub struct DropCollation {
5482 pub(crate) syntax: SyntaxNode,
5483}
5484impl DropCollation {
5485 #[inline]
5486 pub fn if_exists(&self) -> Option<IfExists> {
5487 support::child(&self.syntax)
5488 }
5489 #[inline]
5490 pub fn paths(&self) -> AstChildren<Path> {
5491 support::children(&self.syntax)
5492 }
5493 #[inline]
5494 pub fn collation_token(&self) -> Option<SyntaxToken> {
5495 support::token(&self.syntax, SyntaxKind::COLLATION_KW)
5496 }
5497 #[inline]
5498 pub fn drop_token(&self) -> Option<SyntaxToken> {
5499 support::token(&self.syntax, SyntaxKind::DROP_KW)
5500 }
5501}
5502
5503#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5504pub struct DropColumn {
5505 pub(crate) syntax: SyntaxNode,
5506}
5507impl DropColumn {
5508 #[inline]
5509 pub fn if_exists(&self) -> Option<IfExists> {
5510 support::child(&self.syntax)
5511 }
5512 #[inline]
5513 pub fn name_ref(&self) -> Option<NameRef> {
5514 support::child(&self.syntax)
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 column_token(&self) -> Option<SyntaxToken> {
5522 support::token(&self.syntax, SyntaxKind::COLUMN_KW)
5523 }
5524 #[inline]
5525 pub fn drop_token(&self) -> Option<SyntaxToken> {
5526 support::token(&self.syntax, SyntaxKind::DROP_KW)
5527 }
5528 #[inline]
5529 pub fn restrict_token(&self) -> Option<SyntaxToken> {
5530 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
5531 }
5532}
5533
5534#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5535pub struct DropConstraint {
5536 pub(crate) syntax: SyntaxNode,
5537}
5538impl DropConstraint {
5539 #[inline]
5540 pub fn if_exists(&self) -> Option<IfExists> {
5541 support::child(&self.syntax)
5542 }
5543 #[inline]
5544 pub fn name_ref(&self) -> Option<NameRef> {
5545 support::child(&self.syntax)
5546 }
5547 #[inline]
5548 pub fn cascade_token(&self) -> Option<SyntaxToken> {
5549 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
5550 }
5551 #[inline]
5552 pub fn constraint_token(&self) -> Option<SyntaxToken> {
5553 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
5554 }
5555 #[inline]
5556 pub fn drop_token(&self) -> Option<SyntaxToken> {
5557 support::token(&self.syntax, SyntaxKind::DROP_KW)
5558 }
5559 #[inline]
5560 pub fn restrict_token(&self) -> Option<SyntaxToken> {
5561 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
5562 }
5563}
5564
5565#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5566pub struct DropConversion {
5567 pub(crate) syntax: SyntaxNode,
5568}
5569impl DropConversion {
5570 #[inline]
5571 pub fn if_exists(&self) -> Option<IfExists> {
5572 support::child(&self.syntax)
5573 }
5574 #[inline]
5575 pub fn path(&self) -> Option<Path> {
5576 support::child(&self.syntax)
5577 }
5578 #[inline]
5579 pub fn cascade_token(&self) -> Option<SyntaxToken> {
5580 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
5581 }
5582 #[inline]
5583 pub fn conversion_token(&self) -> Option<SyntaxToken> {
5584 support::token(&self.syntax, SyntaxKind::CONVERSION_KW)
5585 }
5586 #[inline]
5587 pub fn drop_token(&self) -> Option<SyntaxToken> {
5588 support::token(&self.syntax, SyntaxKind::DROP_KW)
5589 }
5590 #[inline]
5591 pub fn restrict_token(&self) -> Option<SyntaxToken> {
5592 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
5593 }
5594}
5595
5596#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5597pub struct DropDatabase {
5598 pub(crate) syntax: SyntaxNode,
5599}
5600impl DropDatabase {
5601 #[inline]
5602 pub fn if_exists(&self) -> Option<IfExists> {
5603 support::child(&self.syntax)
5604 }
5605 #[inline]
5606 pub fn name_ref(&self) -> Option<NameRef> {
5607 support::child(&self.syntax)
5608 }
5609 #[inline]
5610 pub fn database_token(&self) -> Option<SyntaxToken> {
5611 support::token(&self.syntax, SyntaxKind::DATABASE_KW)
5612 }
5613 #[inline]
5614 pub fn drop_token(&self) -> Option<SyntaxToken> {
5615 support::token(&self.syntax, SyntaxKind::DROP_KW)
5616 }
5617}
5618
5619#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5620pub struct DropDefault {
5621 pub(crate) syntax: SyntaxNode,
5622}
5623impl DropDefault {
5624 #[inline]
5625 pub fn default_token(&self) -> Option<SyntaxToken> {
5626 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
5627 }
5628 #[inline]
5629 pub fn drop_token(&self) -> Option<SyntaxToken> {
5630 support::token(&self.syntax, SyntaxKind::DROP_KW)
5631 }
5632}
5633
5634#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5635pub struct DropDomain {
5636 pub(crate) syntax: SyntaxNode,
5637}
5638impl DropDomain {
5639 #[inline]
5640 pub fn if_exists(&self) -> Option<IfExists> {
5641 support::child(&self.syntax)
5642 }
5643 #[inline]
5644 pub fn paths(&self) -> AstChildren<Path> {
5645 support::children(&self.syntax)
5646 }
5647 #[inline]
5648 pub fn cascade_token(&self) -> Option<SyntaxToken> {
5649 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
5650 }
5651 #[inline]
5652 pub fn domain_token(&self) -> Option<SyntaxToken> {
5653 support::token(&self.syntax, SyntaxKind::DOMAIN_KW)
5654 }
5655 #[inline]
5656 pub fn drop_token(&self) -> Option<SyntaxToken> {
5657 support::token(&self.syntax, SyntaxKind::DROP_KW)
5658 }
5659 #[inline]
5660 pub fn restrict_token(&self) -> Option<SyntaxToken> {
5661 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
5662 }
5663}
5664
5665#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5666pub struct DropEventTrigger {
5667 pub(crate) syntax: SyntaxNode,
5668}
5669impl DropEventTrigger {
5670 #[inline]
5671 pub fn if_exists(&self) -> Option<IfExists> {
5672 support::child(&self.syntax)
5673 }
5674 #[inline]
5675 pub fn name_ref(&self) -> Option<NameRef> {
5676 support::child(&self.syntax)
5677 }
5678 #[inline]
5679 pub fn drop_token(&self) -> Option<SyntaxToken> {
5680 support::token(&self.syntax, SyntaxKind::DROP_KW)
5681 }
5682 #[inline]
5683 pub fn event_token(&self) -> Option<SyntaxToken> {
5684 support::token(&self.syntax, SyntaxKind::EVENT_KW)
5685 }
5686 #[inline]
5687 pub fn trigger_token(&self) -> Option<SyntaxToken> {
5688 support::token(&self.syntax, SyntaxKind::TRIGGER_KW)
5689 }
5690}
5691
5692#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5693pub struct DropExpression {
5694 pub(crate) syntax: SyntaxNode,
5695}
5696impl DropExpression {
5697 #[inline]
5698 pub fn if_exists(&self) -> Option<IfExists> {
5699 support::child(&self.syntax)
5700 }
5701 #[inline]
5702 pub fn drop_token(&self) -> Option<SyntaxToken> {
5703 support::token(&self.syntax, SyntaxKind::DROP_KW)
5704 }
5705 #[inline]
5706 pub fn expression_token(&self) -> Option<SyntaxToken> {
5707 support::token(&self.syntax, SyntaxKind::EXPRESSION_KW)
5708 }
5709}
5710
5711#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5712pub struct DropExtension {
5713 pub(crate) syntax: SyntaxNode,
5714}
5715impl DropExtension {
5716 #[inline]
5717 pub fn if_exists(&self) -> Option<IfExists> {
5718 support::child(&self.syntax)
5719 }
5720 #[inline]
5721 pub fn name_refs(&self) -> AstChildren<NameRef> {
5722 support::children(&self.syntax)
5723 }
5724 #[inline]
5725 pub fn drop_token(&self) -> Option<SyntaxToken> {
5726 support::token(&self.syntax, SyntaxKind::DROP_KW)
5727 }
5728 #[inline]
5729 pub fn extension_token(&self) -> Option<SyntaxToken> {
5730 support::token(&self.syntax, SyntaxKind::EXTENSION_KW)
5731 }
5732}
5733
5734#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5735pub struct DropForeignDataWrapper {
5736 pub(crate) syntax: SyntaxNode,
5737}
5738impl DropForeignDataWrapper {
5739 #[inline]
5740 pub fn if_exists(&self) -> Option<IfExists> {
5741 support::child(&self.syntax)
5742 }
5743 #[inline]
5744 pub fn name_refs(&self) -> AstChildren<NameRef> {
5745 support::children(&self.syntax)
5746 }
5747 #[inline]
5748 pub fn cascade_token(&self) -> Option<SyntaxToken> {
5749 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
5750 }
5751 #[inline]
5752 pub fn data_token(&self) -> Option<SyntaxToken> {
5753 support::token(&self.syntax, SyntaxKind::DATA_KW)
5754 }
5755 #[inline]
5756 pub fn drop_token(&self) -> Option<SyntaxToken> {
5757 support::token(&self.syntax, SyntaxKind::DROP_KW)
5758 }
5759 #[inline]
5760 pub fn foreign_token(&self) -> Option<SyntaxToken> {
5761 support::token(&self.syntax, SyntaxKind::FOREIGN_KW)
5762 }
5763 #[inline]
5764 pub fn restrict_token(&self) -> Option<SyntaxToken> {
5765 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
5766 }
5767 #[inline]
5768 pub fn wrapper_token(&self) -> Option<SyntaxToken> {
5769 support::token(&self.syntax, SyntaxKind::WRAPPER_KW)
5770 }
5771}
5772
5773#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5774pub struct DropForeignTable {
5775 pub(crate) syntax: SyntaxNode,
5776}
5777impl DropForeignTable {
5778 #[inline]
5779 pub fn if_exists(&self) -> Option<IfExists> {
5780 support::child(&self.syntax)
5781 }
5782 #[inline]
5783 pub fn path(&self) -> Option<Path> {
5784 support::child(&self.syntax)
5785 }
5786 #[inline]
5787 pub fn cascade_token(&self) -> Option<SyntaxToken> {
5788 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
5789 }
5790 #[inline]
5791 pub fn drop_token(&self) -> Option<SyntaxToken> {
5792 support::token(&self.syntax, SyntaxKind::DROP_KW)
5793 }
5794 #[inline]
5795 pub fn foreign_token(&self) -> Option<SyntaxToken> {
5796 support::token(&self.syntax, SyntaxKind::FOREIGN_KW)
5797 }
5798 #[inline]
5799 pub fn restrict_token(&self) -> Option<SyntaxToken> {
5800 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
5801 }
5802 #[inline]
5803 pub fn table_token(&self) -> Option<SyntaxToken> {
5804 support::token(&self.syntax, SyntaxKind::TABLE_KW)
5805 }
5806}
5807
5808#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5809pub struct DropFunction {
5810 pub(crate) syntax: SyntaxNode,
5811}
5812impl DropFunction {
5813 #[inline]
5814 pub fn function_sig_list(&self) -> Option<FunctionSigList> {
5815 support::child(&self.syntax)
5816 }
5817 #[inline]
5818 pub fn if_exists(&self) -> Option<IfExists> {
5819 support::child(&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 function_token(&self) -> Option<SyntaxToken> {
5831 support::token(&self.syntax, SyntaxKind::FUNCTION_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 DropGroup {
5841 pub(crate) syntax: SyntaxNode,
5842}
5843impl DropGroup {
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 drop_token(&self) -> Option<SyntaxToken> {
5854 support::token(&self.syntax, SyntaxKind::DROP_KW)
5855 }
5856 #[inline]
5857 pub fn group_token(&self) -> Option<SyntaxToken> {
5858 support::token(&self.syntax, SyntaxKind::GROUP_KW)
5859 }
5860}
5861
5862#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5863pub struct DropIdentity {
5864 pub(crate) syntax: SyntaxNode,
5865}
5866impl DropIdentity {
5867 #[inline]
5868 pub fn if_exists(&self) -> Option<IfExists> {
5869 support::child(&self.syntax)
5870 }
5871 #[inline]
5872 pub fn drop_token(&self) -> Option<SyntaxToken> {
5873 support::token(&self.syntax, SyntaxKind::DROP_KW)
5874 }
5875 #[inline]
5876 pub fn identity_token(&self) -> Option<SyntaxToken> {
5877 support::token(&self.syntax, SyntaxKind::IDENTITY_KW)
5878 }
5879}
5880
5881#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5882pub struct DropIndex {
5883 pub(crate) syntax: SyntaxNode,
5884}
5885impl DropIndex {
5886 #[inline]
5887 pub fn if_exists(&self) -> Option<IfExists> {
5888 support::child(&self.syntax)
5889 }
5890 #[inline]
5891 pub fn paths(&self) -> AstChildren<Path> {
5892 support::children(&self.syntax)
5893 }
5894 #[inline]
5895 pub fn concurrently_token(&self) -> Option<SyntaxToken> {
5896 support::token(&self.syntax, SyntaxKind::CONCURRENTLY_KW)
5897 }
5898 #[inline]
5899 pub fn drop_token(&self) -> Option<SyntaxToken> {
5900 support::token(&self.syntax, SyntaxKind::DROP_KW)
5901 }
5902 #[inline]
5903 pub fn index_token(&self) -> Option<SyntaxToken> {
5904 support::token(&self.syntax, SyntaxKind::INDEX_KW)
5905 }
5906}
5907
5908#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5909pub struct DropLanguage {
5910 pub(crate) syntax: SyntaxNode,
5911}
5912impl DropLanguage {
5913 #[inline]
5914 pub fn if_exists(&self) -> Option<IfExists> {
5915 support::child(&self.syntax)
5916 }
5917 #[inline]
5918 pub fn name_ref(&self) -> Option<NameRef> {
5919 support::child(&self.syntax)
5920 }
5921 #[inline]
5922 pub fn cascade_token(&self) -> Option<SyntaxToken> {
5923 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
5924 }
5925 #[inline]
5926 pub fn drop_token(&self) -> Option<SyntaxToken> {
5927 support::token(&self.syntax, SyntaxKind::DROP_KW)
5928 }
5929 #[inline]
5930 pub fn language_token(&self) -> Option<SyntaxToken> {
5931 support::token(&self.syntax, SyntaxKind::LANGUAGE_KW)
5932 }
5933 #[inline]
5934 pub fn procedural_token(&self) -> Option<SyntaxToken> {
5935 support::token(&self.syntax, SyntaxKind::PROCEDURAL_KW)
5936 }
5937 #[inline]
5938 pub fn restrict_token(&self) -> Option<SyntaxToken> {
5939 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
5940 }
5941}
5942
5943#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5944pub struct DropMaterializedView {
5945 pub(crate) syntax: SyntaxNode,
5946}
5947impl DropMaterializedView {
5948 #[inline]
5949 pub fn if_exists(&self) -> Option<IfExists> {
5950 support::child(&self.syntax)
5951 }
5952 #[inline]
5953 pub fn paths(&self) -> AstChildren<Path> {
5954 support::children(&self.syntax)
5955 }
5956 #[inline]
5957 pub fn cascade_token(&self) -> Option<SyntaxToken> {
5958 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
5959 }
5960 #[inline]
5961 pub fn drop_token(&self) -> Option<SyntaxToken> {
5962 support::token(&self.syntax, SyntaxKind::DROP_KW)
5963 }
5964 #[inline]
5965 pub fn materialized_token(&self) -> Option<SyntaxToken> {
5966 support::token(&self.syntax, SyntaxKind::MATERIALIZED_KW)
5967 }
5968 #[inline]
5969 pub fn restrict_token(&self) -> Option<SyntaxToken> {
5970 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
5971 }
5972 #[inline]
5973 pub fn view_token(&self) -> Option<SyntaxToken> {
5974 support::token(&self.syntax, SyntaxKind::VIEW_KW)
5975 }
5976}
5977
5978#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5979pub struct DropNotNull {
5980 pub(crate) syntax: SyntaxNode,
5981}
5982impl DropNotNull {
5983 #[inline]
5984 pub fn drop_token(&self) -> Option<SyntaxToken> {
5985 support::token(&self.syntax, SyntaxKind::DROP_KW)
5986 }
5987 #[inline]
5988 pub fn not_token(&self) -> Option<SyntaxToken> {
5989 support::token(&self.syntax, SyntaxKind::NOT_KW)
5990 }
5991 #[inline]
5992 pub fn null_token(&self) -> Option<SyntaxToken> {
5993 support::token(&self.syntax, SyntaxKind::NULL_KW)
5994 }
5995}
5996
5997#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5998pub struct DropOpClassOption {
5999 pub(crate) syntax: SyntaxNode,
6000}
6001impl DropOpClassOption {
6002 #[inline]
6003 pub fn literal(&self) -> Option<Literal> {
6004 support::child(&self.syntax)
6005 }
6006 #[inline]
6007 pub fn param_list(&self) -> Option<ParamList> {
6008 support::child(&self.syntax)
6009 }
6010 #[inline]
6011 pub fn function_token(&self) -> Option<SyntaxToken> {
6012 support::token(&self.syntax, SyntaxKind::FUNCTION_KW)
6013 }
6014 #[inline]
6015 pub fn operator_token(&self) -> Option<SyntaxToken> {
6016 support::token(&self.syntax, SyntaxKind::OPERATOR_KW)
6017 }
6018}
6019
6020#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6021pub struct DropOpClassOptionList {
6022 pub(crate) syntax: SyntaxNode,
6023}
6024impl DropOpClassOptionList {
6025 #[inline]
6026 pub fn drop_op_class_options(&self) -> AstChildren<DropOpClassOption> {
6027 support::children(&self.syntax)
6028 }
6029}
6030
6031#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6032pub struct DropOpClassOptions {
6033 pub(crate) syntax: SyntaxNode,
6034}
6035impl DropOpClassOptions {
6036 #[inline]
6037 pub fn drop_op_class_option_list(&self) -> Option<DropOpClassOptionList> {
6038 support::child(&self.syntax)
6039 }
6040 #[inline]
6041 pub fn drop_token(&self) -> Option<SyntaxToken> {
6042 support::token(&self.syntax, SyntaxKind::DROP_KW)
6043 }
6044}
6045
6046#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6047pub struct DropOperator {
6048 pub(crate) syntax: SyntaxNode,
6049}
6050impl DropOperator {
6051 #[inline]
6052 pub fn if_exists(&self) -> Option<IfExists> {
6053 support::child(&self.syntax)
6054 }
6055 #[inline]
6056 pub fn op_sig_list(&self) -> Option<OpSigList> {
6057 support::child(&self.syntax)
6058 }
6059 #[inline]
6060 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6061 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6062 }
6063 #[inline]
6064 pub fn drop_token(&self) -> Option<SyntaxToken> {
6065 support::token(&self.syntax, SyntaxKind::DROP_KW)
6066 }
6067 #[inline]
6068 pub fn operator_token(&self) -> Option<SyntaxToken> {
6069 support::token(&self.syntax, SyntaxKind::OPERATOR_KW)
6070 }
6071 #[inline]
6072 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6073 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6074 }
6075}
6076
6077#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6078pub struct DropOperatorClass {
6079 pub(crate) syntax: SyntaxNode,
6080}
6081impl DropOperatorClass {
6082 #[inline]
6083 pub fn if_exists(&self) -> Option<IfExists> {
6084 support::child(&self.syntax)
6085 }
6086 #[inline]
6087 pub fn name_ref(&self) -> Option<NameRef> {
6088 support::child(&self.syntax)
6089 }
6090 #[inline]
6091 pub fn path(&self) -> Option<Path> {
6092 support::child(&self.syntax)
6093 }
6094 #[inline]
6095 pub fn class_token(&self) -> Option<SyntaxToken> {
6096 support::token(&self.syntax, SyntaxKind::CLASS_KW)
6097 }
6098 #[inline]
6099 pub fn drop_token(&self) -> Option<SyntaxToken> {
6100 support::token(&self.syntax, SyntaxKind::DROP_KW)
6101 }
6102 #[inline]
6103 pub fn operator_token(&self) -> Option<SyntaxToken> {
6104 support::token(&self.syntax, SyntaxKind::OPERATOR_KW)
6105 }
6106 #[inline]
6107 pub fn using_token(&self) -> Option<SyntaxToken> {
6108 support::token(&self.syntax, SyntaxKind::USING_KW)
6109 }
6110}
6111
6112#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6113pub struct DropOperatorFamily {
6114 pub(crate) syntax: SyntaxNode,
6115}
6116impl DropOperatorFamily {
6117 #[inline]
6118 pub fn if_exists(&self) -> Option<IfExists> {
6119 support::child(&self.syntax)
6120 }
6121 #[inline]
6122 pub fn name_ref(&self) -> Option<NameRef> {
6123 support::child(&self.syntax)
6124 }
6125 #[inline]
6126 pub fn path(&self) -> Option<Path> {
6127 support::child(&self.syntax)
6128 }
6129 #[inline]
6130 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6131 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6132 }
6133 #[inline]
6134 pub fn drop_token(&self) -> Option<SyntaxToken> {
6135 support::token(&self.syntax, SyntaxKind::DROP_KW)
6136 }
6137 #[inline]
6138 pub fn family_token(&self) -> Option<SyntaxToken> {
6139 support::token(&self.syntax, SyntaxKind::FAMILY_KW)
6140 }
6141 #[inline]
6142 pub fn operator_token(&self) -> Option<SyntaxToken> {
6143 support::token(&self.syntax, SyntaxKind::OPERATOR_KW)
6144 }
6145 #[inline]
6146 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6147 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6148 }
6149 #[inline]
6150 pub fn using_token(&self) -> Option<SyntaxToken> {
6151 support::token(&self.syntax, SyntaxKind::USING_KW)
6152 }
6153}
6154
6155#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6156pub struct DropOwned {
6157 pub(crate) syntax: SyntaxNode,
6158}
6159impl DropOwned {
6160 #[inline]
6161 pub fn role_list(&self) -> Option<RoleList> {
6162 support::child(&self.syntax)
6163 }
6164 #[inline]
6165 pub fn by_token(&self) -> Option<SyntaxToken> {
6166 support::token(&self.syntax, SyntaxKind::BY_KW)
6167 }
6168 #[inline]
6169 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6170 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6171 }
6172 #[inline]
6173 pub fn drop_token(&self) -> Option<SyntaxToken> {
6174 support::token(&self.syntax, SyntaxKind::DROP_KW)
6175 }
6176 #[inline]
6177 pub fn owned_token(&self) -> Option<SyntaxToken> {
6178 support::token(&self.syntax, SyntaxKind::OWNED_KW)
6179 }
6180 #[inline]
6181 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6182 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6183 }
6184}
6185
6186#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6187pub struct DropPolicy {
6188 pub(crate) syntax: SyntaxNode,
6189}
6190impl DropPolicy {
6191 #[inline]
6192 pub fn if_exists(&self) -> Option<IfExists> {
6193 support::child(&self.syntax)
6194 }
6195 #[inline]
6196 pub fn name_ref(&self) -> Option<NameRef> {
6197 support::child(&self.syntax)
6198 }
6199 #[inline]
6200 pub fn on_table(&self) -> Option<OnTable> {
6201 support::child(&self.syntax)
6202 }
6203 #[inline]
6204 pub fn drop_token(&self) -> Option<SyntaxToken> {
6205 support::token(&self.syntax, SyntaxKind::DROP_KW)
6206 }
6207 #[inline]
6208 pub fn policy_token(&self) -> Option<SyntaxToken> {
6209 support::token(&self.syntax, SyntaxKind::POLICY_KW)
6210 }
6211}
6212
6213#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6214pub struct DropProcedure {
6215 pub(crate) syntax: SyntaxNode,
6216}
6217impl DropProcedure {
6218 #[inline]
6219 pub fn function_sig_list(&self) -> Option<FunctionSigList> {
6220 support::child(&self.syntax)
6221 }
6222 #[inline]
6223 pub fn if_exists(&self) -> Option<IfExists> {
6224 support::child(&self.syntax)
6225 }
6226 #[inline]
6227 pub fn drop_token(&self) -> Option<SyntaxToken> {
6228 support::token(&self.syntax, SyntaxKind::DROP_KW)
6229 }
6230 #[inline]
6231 pub fn procedure_token(&self) -> Option<SyntaxToken> {
6232 support::token(&self.syntax, SyntaxKind::PROCEDURE_KW)
6233 }
6234}
6235
6236#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6237pub struct DropPublication {
6238 pub(crate) syntax: SyntaxNode,
6239}
6240impl DropPublication {
6241 #[inline]
6242 pub fn if_exists(&self) -> Option<IfExists> {
6243 support::child(&self.syntax)
6244 }
6245 #[inline]
6246 pub fn name_refs(&self) -> AstChildren<NameRef> {
6247 support::children(&self.syntax)
6248 }
6249 #[inline]
6250 pub fn drop_token(&self) -> Option<SyntaxToken> {
6251 support::token(&self.syntax, SyntaxKind::DROP_KW)
6252 }
6253 #[inline]
6254 pub fn publication_token(&self) -> Option<SyntaxToken> {
6255 support::token(&self.syntax, SyntaxKind::PUBLICATION_KW)
6256 }
6257}
6258
6259#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6260pub struct DropRole {
6261 pub(crate) syntax: SyntaxNode,
6262}
6263impl DropRole {
6264 #[inline]
6265 pub fn if_exists(&self) -> Option<IfExists> {
6266 support::child(&self.syntax)
6267 }
6268 #[inline]
6269 pub fn name_refs(&self) -> AstChildren<NameRef> {
6270 support::children(&self.syntax)
6271 }
6272 #[inline]
6273 pub fn drop_token(&self) -> Option<SyntaxToken> {
6274 support::token(&self.syntax, SyntaxKind::DROP_KW)
6275 }
6276 #[inline]
6277 pub fn role_token(&self) -> Option<SyntaxToken> {
6278 support::token(&self.syntax, SyntaxKind::ROLE_KW)
6279 }
6280}
6281
6282#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6283pub struct DropRoutine {
6284 pub(crate) syntax: SyntaxNode,
6285}
6286impl DropRoutine {
6287 #[inline]
6288 pub fn function_sig_list(&self) -> Option<FunctionSigList> {
6289 support::child(&self.syntax)
6290 }
6291 #[inline]
6292 pub fn if_exists(&self) -> Option<IfExists> {
6293 support::child(&self.syntax)
6294 }
6295 #[inline]
6296 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6297 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6298 }
6299 #[inline]
6300 pub fn drop_token(&self) -> Option<SyntaxToken> {
6301 support::token(&self.syntax, SyntaxKind::DROP_KW)
6302 }
6303 #[inline]
6304 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6305 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6306 }
6307 #[inline]
6308 pub fn routine_token(&self) -> Option<SyntaxToken> {
6309 support::token(&self.syntax, SyntaxKind::ROUTINE_KW)
6310 }
6311}
6312
6313#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6314pub struct DropRule {
6315 pub(crate) syntax: SyntaxNode,
6316}
6317impl DropRule {
6318 #[inline]
6319 pub fn if_exists(&self) -> Option<IfExists> {
6320 support::child(&self.syntax)
6321 }
6322 #[inline]
6323 pub fn name_ref(&self) -> Option<NameRef> {
6324 support::child(&self.syntax)
6325 }
6326 #[inline]
6327 pub fn on_table(&self) -> Option<OnTable> {
6328 support::child(&self.syntax)
6329 }
6330 #[inline]
6331 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6332 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6333 }
6334 #[inline]
6335 pub fn drop_token(&self) -> Option<SyntaxToken> {
6336 support::token(&self.syntax, SyntaxKind::DROP_KW)
6337 }
6338 #[inline]
6339 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6340 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6341 }
6342 #[inline]
6343 pub fn rule_token(&self) -> Option<SyntaxToken> {
6344 support::token(&self.syntax, SyntaxKind::RULE_KW)
6345 }
6346}
6347
6348#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6349pub struct DropSchema {
6350 pub(crate) syntax: SyntaxNode,
6351}
6352impl DropSchema {
6353 #[inline]
6354 pub fn if_exists(&self) -> Option<IfExists> {
6355 support::child(&self.syntax)
6356 }
6357 #[inline]
6358 pub fn name_refs(&self) -> AstChildren<NameRef> {
6359 support::children(&self.syntax)
6360 }
6361 #[inline]
6362 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6363 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6364 }
6365 #[inline]
6366 pub fn drop_token(&self) -> Option<SyntaxToken> {
6367 support::token(&self.syntax, SyntaxKind::DROP_KW)
6368 }
6369 #[inline]
6370 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6371 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6372 }
6373 #[inline]
6374 pub fn schema_token(&self) -> Option<SyntaxToken> {
6375 support::token(&self.syntax, SyntaxKind::SCHEMA_KW)
6376 }
6377}
6378
6379#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6380pub struct DropSequence {
6381 pub(crate) syntax: SyntaxNode,
6382}
6383impl DropSequence {
6384 #[inline]
6385 pub fn if_exists(&self) -> Option<IfExists> {
6386 support::child(&self.syntax)
6387 }
6388 #[inline]
6389 pub fn paths(&self) -> AstChildren<Path> {
6390 support::children(&self.syntax)
6391 }
6392 #[inline]
6393 pub fn drop_token(&self) -> Option<SyntaxToken> {
6394 support::token(&self.syntax, SyntaxKind::DROP_KW)
6395 }
6396 #[inline]
6397 pub fn sequence_token(&self) -> Option<SyntaxToken> {
6398 support::token(&self.syntax, SyntaxKind::SEQUENCE_KW)
6399 }
6400}
6401
6402#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6403pub struct DropServer {
6404 pub(crate) syntax: SyntaxNode,
6405}
6406impl DropServer {
6407 #[inline]
6408 pub fn if_exists(&self) -> Option<IfExists> {
6409 support::child(&self.syntax)
6410 }
6411 #[inline]
6412 pub fn name_ref(&self) -> Option<NameRef> {
6413 support::child(&self.syntax)
6414 }
6415 #[inline]
6416 pub fn drop_token(&self) -> Option<SyntaxToken> {
6417 support::token(&self.syntax, SyntaxKind::DROP_KW)
6418 }
6419 #[inline]
6420 pub fn server_token(&self) -> Option<SyntaxToken> {
6421 support::token(&self.syntax, SyntaxKind::SERVER_KW)
6422 }
6423}
6424
6425#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6426pub struct DropStatistics {
6427 pub(crate) syntax: SyntaxNode,
6428}
6429impl DropStatistics {
6430 #[inline]
6431 pub fn if_exists(&self) -> Option<IfExists> {
6432 support::child(&self.syntax)
6433 }
6434 #[inline]
6435 pub fn paths(&self) -> AstChildren<Path> {
6436 support::children(&self.syntax)
6437 }
6438 #[inline]
6439 pub fn drop_token(&self) -> Option<SyntaxToken> {
6440 support::token(&self.syntax, SyntaxKind::DROP_KW)
6441 }
6442 #[inline]
6443 pub fn statistics_token(&self) -> Option<SyntaxToken> {
6444 support::token(&self.syntax, SyntaxKind::STATISTICS_KW)
6445 }
6446}
6447
6448#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6449pub struct DropSubscription {
6450 pub(crate) syntax: SyntaxNode,
6451}
6452impl DropSubscription {
6453 #[inline]
6454 pub fn if_exists(&self) -> Option<IfExists> {
6455 support::child(&self.syntax)
6456 }
6457 #[inline]
6458 pub fn name_ref(&self) -> Option<NameRef> {
6459 support::child(&self.syntax)
6460 }
6461 #[inline]
6462 pub fn drop_token(&self) -> Option<SyntaxToken> {
6463 support::token(&self.syntax, SyntaxKind::DROP_KW)
6464 }
6465 #[inline]
6466 pub fn subscription_token(&self) -> Option<SyntaxToken> {
6467 support::token(&self.syntax, SyntaxKind::SUBSCRIPTION_KW)
6468 }
6469}
6470
6471#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6472pub struct DropTable {
6473 pub(crate) syntax: SyntaxNode,
6474}
6475impl DropTable {
6476 #[inline]
6477 pub fn if_exists(&self) -> Option<IfExists> {
6478 support::child(&self.syntax)
6479 }
6480 #[inline]
6481 pub fn path(&self) -> Option<Path> {
6482 support::child(&self.syntax)
6483 }
6484 #[inline]
6485 pub fn comma_token(&self) -> Option<SyntaxToken> {
6486 support::token(&self.syntax, SyntaxKind::COMMA)
6487 }
6488 #[inline]
6489 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6490 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6491 }
6492 #[inline]
6493 pub fn drop_token(&self) -> Option<SyntaxToken> {
6494 support::token(&self.syntax, SyntaxKind::DROP_KW)
6495 }
6496 #[inline]
6497 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6498 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6499 }
6500 #[inline]
6501 pub fn table_token(&self) -> Option<SyntaxToken> {
6502 support::token(&self.syntax, SyntaxKind::TABLE_KW)
6503 }
6504}
6505
6506#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6507pub struct DropTablespace {
6508 pub(crate) syntax: SyntaxNode,
6509}
6510impl DropTablespace {
6511 #[inline]
6512 pub fn if_exists(&self) -> Option<IfExists> {
6513 support::child(&self.syntax)
6514 }
6515 #[inline]
6516 pub fn name_ref(&self) -> Option<NameRef> {
6517 support::child(&self.syntax)
6518 }
6519 #[inline]
6520 pub fn drop_token(&self) -> Option<SyntaxToken> {
6521 support::token(&self.syntax, SyntaxKind::DROP_KW)
6522 }
6523 #[inline]
6524 pub fn tablespace_token(&self) -> Option<SyntaxToken> {
6525 support::token(&self.syntax, SyntaxKind::TABLESPACE_KW)
6526 }
6527}
6528
6529#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6530pub struct DropTextSearchConfig {
6531 pub(crate) syntax: SyntaxNode,
6532}
6533impl DropTextSearchConfig {
6534 #[inline]
6535 pub fn if_exists(&self) -> Option<IfExists> {
6536 support::child(&self.syntax)
6537 }
6538 #[inline]
6539 pub fn path(&self) -> Option<Path> {
6540 support::child(&self.syntax)
6541 }
6542 #[inline]
6543 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6544 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6545 }
6546 #[inline]
6547 pub fn configuration_token(&self) -> Option<SyntaxToken> {
6548 support::token(&self.syntax, SyntaxKind::CONFIGURATION_KW)
6549 }
6550 #[inline]
6551 pub fn drop_token(&self) -> Option<SyntaxToken> {
6552 support::token(&self.syntax, SyntaxKind::DROP_KW)
6553 }
6554 #[inline]
6555 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6556 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6557 }
6558 #[inline]
6559 pub fn search_token(&self) -> Option<SyntaxToken> {
6560 support::token(&self.syntax, SyntaxKind::SEARCH_KW)
6561 }
6562 #[inline]
6563 pub fn text_token(&self) -> Option<SyntaxToken> {
6564 support::token(&self.syntax, SyntaxKind::TEXT_KW)
6565 }
6566}
6567
6568#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6569pub struct DropTextSearchDict {
6570 pub(crate) syntax: SyntaxNode,
6571}
6572impl DropTextSearchDict {
6573 #[inline]
6574 pub fn if_exists(&self) -> Option<IfExists> {
6575 support::child(&self.syntax)
6576 }
6577 #[inline]
6578 pub fn path(&self) -> Option<Path> {
6579 support::child(&self.syntax)
6580 }
6581 #[inline]
6582 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6583 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6584 }
6585 #[inline]
6586 pub fn dictionary_token(&self) -> Option<SyntaxToken> {
6587 support::token(&self.syntax, SyntaxKind::DICTIONARY_KW)
6588 }
6589 #[inline]
6590 pub fn drop_token(&self) -> Option<SyntaxToken> {
6591 support::token(&self.syntax, SyntaxKind::DROP_KW)
6592 }
6593 #[inline]
6594 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6595 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6596 }
6597 #[inline]
6598 pub fn search_token(&self) -> Option<SyntaxToken> {
6599 support::token(&self.syntax, SyntaxKind::SEARCH_KW)
6600 }
6601 #[inline]
6602 pub fn text_token(&self) -> Option<SyntaxToken> {
6603 support::token(&self.syntax, SyntaxKind::TEXT_KW)
6604 }
6605}
6606
6607#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6608pub struct DropTextSearchParser {
6609 pub(crate) syntax: SyntaxNode,
6610}
6611impl DropTextSearchParser {
6612 #[inline]
6613 pub fn if_exists(&self) -> Option<IfExists> {
6614 support::child(&self.syntax)
6615 }
6616 #[inline]
6617 pub fn path(&self) -> Option<Path> {
6618 support::child(&self.syntax)
6619 }
6620 #[inline]
6621 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6622 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6623 }
6624 #[inline]
6625 pub fn drop_token(&self) -> Option<SyntaxToken> {
6626 support::token(&self.syntax, SyntaxKind::DROP_KW)
6627 }
6628 #[inline]
6629 pub fn parser_token(&self) -> Option<SyntaxToken> {
6630 support::token(&self.syntax, SyntaxKind::PARSER_KW)
6631 }
6632 #[inline]
6633 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6634 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6635 }
6636 #[inline]
6637 pub fn search_token(&self) -> Option<SyntaxToken> {
6638 support::token(&self.syntax, SyntaxKind::SEARCH_KW)
6639 }
6640 #[inline]
6641 pub fn text_token(&self) -> Option<SyntaxToken> {
6642 support::token(&self.syntax, SyntaxKind::TEXT_KW)
6643 }
6644}
6645
6646#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6647pub struct DropTextSearchTemplate {
6648 pub(crate) syntax: SyntaxNode,
6649}
6650impl DropTextSearchTemplate {
6651 #[inline]
6652 pub fn if_exists(&self) -> Option<IfExists> {
6653 support::child(&self.syntax)
6654 }
6655 #[inline]
6656 pub fn path(&self) -> Option<Path> {
6657 support::child(&self.syntax)
6658 }
6659 #[inline]
6660 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6661 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6662 }
6663 #[inline]
6664 pub fn drop_token(&self) -> Option<SyntaxToken> {
6665 support::token(&self.syntax, SyntaxKind::DROP_KW)
6666 }
6667 #[inline]
6668 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6669 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6670 }
6671 #[inline]
6672 pub fn search_token(&self) -> Option<SyntaxToken> {
6673 support::token(&self.syntax, SyntaxKind::SEARCH_KW)
6674 }
6675 #[inline]
6676 pub fn template_token(&self) -> Option<SyntaxToken> {
6677 support::token(&self.syntax, SyntaxKind::TEMPLATE_KW)
6678 }
6679 #[inline]
6680 pub fn text_token(&self) -> Option<SyntaxToken> {
6681 support::token(&self.syntax, SyntaxKind::TEXT_KW)
6682 }
6683}
6684
6685#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6686pub struct DropTransform {
6687 pub(crate) syntax: SyntaxNode,
6688}
6689impl DropTransform {
6690 #[inline]
6691 pub fn if_exists(&self) -> Option<IfExists> {
6692 support::child(&self.syntax)
6693 }
6694 #[inline]
6695 pub fn language(&self) -> Option<NameRef> {
6696 support::child(&self.syntax)
6697 }
6698 #[inline]
6699 pub fn ty(&self) -> Option<Type> {
6700 support::child(&self.syntax)
6701 }
6702 #[inline]
6703 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6704 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6705 }
6706 #[inline]
6707 pub fn drop_token(&self) -> Option<SyntaxToken> {
6708 support::token(&self.syntax, SyntaxKind::DROP_KW)
6709 }
6710 #[inline]
6711 pub fn for_token(&self) -> Option<SyntaxToken> {
6712 support::token(&self.syntax, SyntaxKind::FOR_KW)
6713 }
6714 #[inline]
6715 pub fn language_token(&self) -> Option<SyntaxToken> {
6716 support::token(&self.syntax, SyntaxKind::LANGUAGE_KW)
6717 }
6718 #[inline]
6719 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6720 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6721 }
6722 #[inline]
6723 pub fn transform_token(&self) -> Option<SyntaxToken> {
6724 support::token(&self.syntax, SyntaxKind::TRANSFORM_KW)
6725 }
6726}
6727
6728#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6729pub struct DropTrigger {
6730 pub(crate) syntax: SyntaxNode,
6731}
6732impl DropTrigger {
6733 #[inline]
6734 pub fn if_exists(&self) -> Option<IfExists> {
6735 support::child(&self.syntax)
6736 }
6737 #[inline]
6738 pub fn on_table(&self) -> Option<OnTable> {
6739 support::child(&self.syntax)
6740 }
6741 #[inline]
6742 pub fn path(&self) -> Option<Path> {
6743 support::child(&self.syntax)
6744 }
6745 #[inline]
6746 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6747 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6748 }
6749 #[inline]
6750 pub fn drop_token(&self) -> Option<SyntaxToken> {
6751 support::token(&self.syntax, SyntaxKind::DROP_KW)
6752 }
6753 #[inline]
6754 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6755 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6756 }
6757 #[inline]
6758 pub fn trigger_token(&self) -> Option<SyntaxToken> {
6759 support::token(&self.syntax, SyntaxKind::TRIGGER_KW)
6760 }
6761}
6762
6763#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6764pub struct DropType {
6765 pub(crate) syntax: SyntaxNode,
6766}
6767impl DropType {
6768 #[inline]
6769 pub fn if_exists(&self) -> Option<IfExists> {
6770 support::child(&self.syntax)
6771 }
6772 #[inline]
6773 pub fn paths(&self) -> AstChildren<Path> {
6774 support::children(&self.syntax)
6775 }
6776 #[inline]
6777 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6778 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6779 }
6780 #[inline]
6781 pub fn drop_token(&self) -> Option<SyntaxToken> {
6782 support::token(&self.syntax, SyntaxKind::DROP_KW)
6783 }
6784 #[inline]
6785 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6786 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6787 }
6788 #[inline]
6789 pub fn type_token(&self) -> Option<SyntaxToken> {
6790 support::token(&self.syntax, SyntaxKind::TYPE_KW)
6791 }
6792}
6793
6794#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6795pub struct DropUser {
6796 pub(crate) syntax: SyntaxNode,
6797}
6798impl DropUser {
6799 #[inline]
6800 pub fn if_exists(&self) -> Option<IfExists> {
6801 support::child(&self.syntax)
6802 }
6803 #[inline]
6804 pub fn name_refs(&self) -> AstChildren<NameRef> {
6805 support::children(&self.syntax)
6806 }
6807 #[inline]
6808 pub fn drop_token(&self) -> Option<SyntaxToken> {
6809 support::token(&self.syntax, SyntaxKind::DROP_KW)
6810 }
6811 #[inline]
6812 pub fn user_token(&self) -> Option<SyntaxToken> {
6813 support::token(&self.syntax, SyntaxKind::USER_KW)
6814 }
6815}
6816
6817#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6818pub struct DropUserMapping {
6819 pub(crate) syntax: SyntaxNode,
6820}
6821impl DropUserMapping {
6822 #[inline]
6823 pub fn if_exists(&self) -> Option<IfExists> {
6824 support::child(&self.syntax)
6825 }
6826 #[inline]
6827 pub fn name_ref(&self) -> Option<NameRef> {
6828 support::child(&self.syntax)
6829 }
6830 #[inline]
6831 pub fn role(&self) -> Option<Role> {
6832 support::child(&self.syntax)
6833 }
6834 #[inline]
6835 pub fn drop_token(&self) -> Option<SyntaxToken> {
6836 support::token(&self.syntax, SyntaxKind::DROP_KW)
6837 }
6838 #[inline]
6839 pub fn for_token(&self) -> Option<SyntaxToken> {
6840 support::token(&self.syntax, SyntaxKind::FOR_KW)
6841 }
6842 #[inline]
6843 pub fn mapping_token(&self) -> Option<SyntaxToken> {
6844 support::token(&self.syntax, SyntaxKind::MAPPING_KW)
6845 }
6846 #[inline]
6847 pub fn server_token(&self) -> Option<SyntaxToken> {
6848 support::token(&self.syntax, SyntaxKind::SERVER_KW)
6849 }
6850 #[inline]
6851 pub fn user_token(&self) -> Option<SyntaxToken> {
6852 support::token(&self.syntax, SyntaxKind::USER_KW)
6853 }
6854}
6855
6856#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6857pub struct DropView {
6858 pub(crate) syntax: SyntaxNode,
6859}
6860impl DropView {
6861 #[inline]
6862 pub fn if_exists(&self) -> Option<IfExists> {
6863 support::child(&self.syntax)
6864 }
6865 #[inline]
6866 pub fn path(&self) -> Option<Path> {
6867 support::child(&self.syntax)
6868 }
6869 #[inline]
6870 pub fn drop_token(&self) -> Option<SyntaxToken> {
6871 support::token(&self.syntax, SyntaxKind::DROP_KW)
6872 }
6873 #[inline]
6874 pub fn view_token(&self) -> Option<SyntaxToken> {
6875 support::token(&self.syntax, SyntaxKind::VIEW_KW)
6876 }
6877}
6878
6879#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6880pub struct ElseClause {
6881 pub(crate) syntax: SyntaxNode,
6882}
6883impl ElseClause {
6884 #[inline]
6885 pub fn expr(&self) -> Option<Expr> {
6886 support::child(&self.syntax)
6887 }
6888 #[inline]
6889 pub fn else_token(&self) -> Option<SyntaxToken> {
6890 support::token(&self.syntax, SyntaxKind::ELSE_KW)
6891 }
6892}
6893
6894#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6895pub struct EnableAlwaysRule {
6896 pub(crate) syntax: SyntaxNode,
6897}
6898impl EnableAlwaysRule {
6899 #[inline]
6900 pub fn always_token(&self) -> Option<SyntaxToken> {
6901 support::token(&self.syntax, SyntaxKind::ALWAYS_KW)
6902 }
6903 #[inline]
6904 pub fn enable_token(&self) -> Option<SyntaxToken> {
6905 support::token(&self.syntax, SyntaxKind::ENABLE_KW)
6906 }
6907 #[inline]
6908 pub fn rule_token(&self) -> Option<SyntaxToken> {
6909 support::token(&self.syntax, SyntaxKind::RULE_KW)
6910 }
6911}
6912
6913#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6914pub struct EnableAlwaysTrigger {
6915 pub(crate) syntax: SyntaxNode,
6916}
6917impl EnableAlwaysTrigger {
6918 #[inline]
6919 pub fn always_token(&self) -> Option<SyntaxToken> {
6920 support::token(&self.syntax, SyntaxKind::ALWAYS_KW)
6921 }
6922 #[inline]
6923 pub fn enable_token(&self) -> Option<SyntaxToken> {
6924 support::token(&self.syntax, SyntaxKind::ENABLE_KW)
6925 }
6926 #[inline]
6927 pub fn trigger_token(&self) -> Option<SyntaxToken> {
6928 support::token(&self.syntax, SyntaxKind::TRIGGER_KW)
6929 }
6930}
6931
6932#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6933pub struct EnableReplicaRule {
6934 pub(crate) syntax: SyntaxNode,
6935}
6936impl EnableReplicaRule {
6937 #[inline]
6938 pub fn enable_token(&self) -> Option<SyntaxToken> {
6939 support::token(&self.syntax, SyntaxKind::ENABLE_KW)
6940 }
6941 #[inline]
6942 pub fn replica_token(&self) -> Option<SyntaxToken> {
6943 support::token(&self.syntax, SyntaxKind::REPLICA_KW)
6944 }
6945 #[inline]
6946 pub fn rule_token(&self) -> Option<SyntaxToken> {
6947 support::token(&self.syntax, SyntaxKind::RULE_KW)
6948 }
6949}
6950
6951#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6952pub struct EnableReplicaTrigger {
6953 pub(crate) syntax: SyntaxNode,
6954}
6955impl EnableReplicaTrigger {
6956 #[inline]
6957 pub fn enable_token(&self) -> Option<SyntaxToken> {
6958 support::token(&self.syntax, SyntaxKind::ENABLE_KW)
6959 }
6960 #[inline]
6961 pub fn replica_token(&self) -> Option<SyntaxToken> {
6962 support::token(&self.syntax, SyntaxKind::REPLICA_KW)
6963 }
6964 #[inline]
6965 pub fn trigger_token(&self) -> Option<SyntaxToken> {
6966 support::token(&self.syntax, SyntaxKind::TRIGGER_KW)
6967 }
6968}
6969
6970#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6971pub struct EnableRls {
6972 pub(crate) syntax: SyntaxNode,
6973}
6974impl EnableRls {
6975 #[inline]
6976 pub fn enable_token(&self) -> Option<SyntaxToken> {
6977 support::token(&self.syntax, SyntaxKind::ENABLE_KW)
6978 }
6979 #[inline]
6980 pub fn level_token(&self) -> Option<SyntaxToken> {
6981 support::token(&self.syntax, SyntaxKind::LEVEL_KW)
6982 }
6983 #[inline]
6984 pub fn row_token(&self) -> Option<SyntaxToken> {
6985 support::token(&self.syntax, SyntaxKind::ROW_KW)
6986 }
6987 #[inline]
6988 pub fn security_token(&self) -> Option<SyntaxToken> {
6989 support::token(&self.syntax, SyntaxKind::SECURITY_KW)
6990 }
6991}
6992
6993#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6994pub struct EnableRule {
6995 pub(crate) syntax: SyntaxNode,
6996}
6997impl EnableRule {
6998 #[inline]
6999 pub fn enable_token(&self) -> Option<SyntaxToken> {
7000 support::token(&self.syntax, SyntaxKind::ENABLE_KW)
7001 }
7002 #[inline]
7003 pub fn rule_token(&self) -> Option<SyntaxToken> {
7004 support::token(&self.syntax, SyntaxKind::RULE_KW)
7005 }
7006}
7007
7008#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7009pub struct EnableTrigger {
7010 pub(crate) syntax: SyntaxNode,
7011}
7012impl EnableTrigger {
7013 #[inline]
7014 pub fn enable_token(&self) -> Option<SyntaxToken> {
7015 support::token(&self.syntax, SyntaxKind::ENABLE_KW)
7016 }
7017 #[inline]
7018 pub fn trigger_token(&self) -> Option<SyntaxToken> {
7019 support::token(&self.syntax, SyntaxKind::TRIGGER_KW)
7020 }
7021}
7022
7023#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7024pub struct Enforced {
7025 pub(crate) syntax: SyntaxNode,
7026}
7027impl Enforced {
7028 #[inline]
7029 pub fn enforced_token(&self) -> Option<SyntaxToken> {
7030 support::token(&self.syntax, SyntaxKind::ENFORCED_KW)
7031 }
7032}
7033
7034#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7035pub struct EventTriggerWhen {
7036 pub(crate) syntax: SyntaxNode,
7037}
7038impl EventTriggerWhen {
7039 #[inline]
7040 pub fn literals(&self) -> AstChildren<Literal> {
7041 support::children(&self.syntax)
7042 }
7043 #[inline]
7044 pub fn name_ref(&self) -> Option<NameRef> {
7045 support::child(&self.syntax)
7046 }
7047 #[inline]
7048 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
7049 support::token(&self.syntax, SyntaxKind::L_PAREN)
7050 }
7051 #[inline]
7052 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
7053 support::token(&self.syntax, SyntaxKind::R_PAREN)
7054 }
7055 #[inline]
7056 pub fn in_token(&self) -> Option<SyntaxToken> {
7057 support::token(&self.syntax, SyntaxKind::IN_KW)
7058 }
7059}
7060
7061#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7062pub struct EventTriggerWhenClause {
7063 pub(crate) syntax: SyntaxNode,
7064}
7065impl EventTriggerWhenClause {
7066 #[inline]
7067 pub fn event_trigger_whens(&self) -> AstChildren<EventTriggerWhen> {
7068 support::children(&self.syntax)
7069 }
7070 #[inline]
7071 pub fn when_token(&self) -> Option<SyntaxToken> {
7072 support::token(&self.syntax, SyntaxKind::WHEN_KW)
7073 }
7074}
7075
7076#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7077pub struct ExceptTables {
7078 pub(crate) syntax: SyntaxNode,
7079}
7080impl ExceptTables {
7081 #[inline]
7082 pub fn name_refs(&self) -> AstChildren<NameRef> {
7083 support::children(&self.syntax)
7084 }
7085 #[inline]
7086 pub fn except_token(&self) -> Option<SyntaxToken> {
7087 support::token(&self.syntax, SyntaxKind::EXCEPT_KW)
7088 }
7089}
7090
7091#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7092pub struct ExcludeConstraint {
7093 pub(crate) syntax: SyntaxNode,
7094}
7095impl ExcludeConstraint {
7096 #[inline]
7097 pub fn constraint_exclusion_list(&self) -> Option<ConstraintExclusionList> {
7098 support::child(&self.syntax)
7099 }
7100 #[inline]
7101 pub fn constraint_index_method(&self) -> Option<ConstraintIndexMethod> {
7102 support::child(&self.syntax)
7103 }
7104 #[inline]
7105 pub fn name(&self) -> Option<Name> {
7106 support::child(&self.syntax)
7107 }
7108 #[inline]
7109 pub fn where_condition_clause(&self) -> Option<WhereConditionClause> {
7110 support::child(&self.syntax)
7111 }
7112 #[inline]
7113 pub fn constraint_token(&self) -> Option<SyntaxToken> {
7114 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
7115 }
7116 #[inline]
7117 pub fn exclude_token(&self) -> Option<SyntaxToken> {
7118 support::token(&self.syntax, SyntaxKind::EXCLUDE_KW)
7119 }
7120}
7121
7122#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7123pub struct Execute {
7124 pub(crate) syntax: SyntaxNode,
7125}
7126impl Execute {
7127 #[inline]
7128 pub fn arg_list(&self) -> Option<ArgList> {
7129 support::child(&self.syntax)
7130 }
7131 #[inline]
7132 pub fn name_ref(&self) -> Option<NameRef> {
7133 support::child(&self.syntax)
7134 }
7135 #[inline]
7136 pub fn execute_token(&self) -> Option<SyntaxToken> {
7137 support::token(&self.syntax, SyntaxKind::EXECUTE_KW)
7138 }
7139}
7140
7141#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7142pub struct ExistsFn {
7143 pub(crate) syntax: SyntaxNode,
7144}
7145impl ExistsFn {
7146 #[inline]
7147 pub fn select_variant(&self) -> Option<SelectVariant> {
7148 support::child(&self.syntax)
7149 }
7150 #[inline]
7151 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
7152 support::token(&self.syntax, SyntaxKind::L_PAREN)
7153 }
7154 #[inline]
7155 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
7156 support::token(&self.syntax, SyntaxKind::R_PAREN)
7157 }
7158 #[inline]
7159 pub fn exists_token(&self) -> Option<SyntaxToken> {
7160 support::token(&self.syntax, SyntaxKind::EXISTS_KW)
7161 }
7162}
7163
7164#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7165pub struct Explain {
7166 pub(crate) syntax: SyntaxNode,
7167}
7168impl Explain {
7169 #[inline]
7170 pub fn explain_stmt(&self) -> Option<ExplainStmt> {
7171 support::child(&self.syntax)
7172 }
7173 #[inline]
7174 pub fn explain_token(&self) -> Option<SyntaxToken> {
7175 support::token(&self.syntax, SyntaxKind::EXPLAIN_KW)
7176 }
7177}
7178
7179#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7180pub struct ExprAsName {
7181 pub(crate) syntax: SyntaxNode,
7182}
7183impl ExprAsName {
7184 #[inline]
7185 pub fn as_name(&self) -> Option<AsName> {
7186 support::child(&self.syntax)
7187 }
7188 #[inline]
7189 pub fn expr(&self) -> Option<Expr> {
7190 support::child(&self.syntax)
7191 }
7192}
7193
7194#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7195pub struct ExprType {
7196 pub(crate) syntax: SyntaxNode,
7197}
7198impl ExprType {
7199 #[inline]
7200 pub fn expr(&self) -> Option<Expr> {
7201 support::child(&self.syntax)
7202 }
7203}
7204
7205#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7206pub struct ExtractFn {
7207 pub(crate) syntax: SyntaxNode,
7208}
7209impl ExtractFn {
7210 #[inline]
7211 pub fn expr(&self) -> Option<Expr> {
7212 support::child(&self.syntax)
7213 }
7214 #[inline]
7215 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
7216 support::token(&self.syntax, SyntaxKind::L_PAREN)
7217 }
7218 #[inline]
7219 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
7220 support::token(&self.syntax, SyntaxKind::R_PAREN)
7221 }
7222 #[inline]
7223 pub fn day_token(&self) -> Option<SyntaxToken> {
7224 support::token(&self.syntax, SyntaxKind::DAY_KW)
7225 }
7226 #[inline]
7227 pub fn extract_token(&self) -> Option<SyntaxToken> {
7228 support::token(&self.syntax, SyntaxKind::EXTRACT_KW)
7229 }
7230 #[inline]
7231 pub fn from_token(&self) -> Option<SyntaxToken> {
7232 support::token(&self.syntax, SyntaxKind::FROM_KW)
7233 }
7234 #[inline]
7235 pub fn hour_token(&self) -> Option<SyntaxToken> {
7236 support::token(&self.syntax, SyntaxKind::HOUR_KW)
7237 }
7238 #[inline]
7239 pub fn ident_token(&self) -> Option<SyntaxToken> {
7240 support::token(&self.syntax, SyntaxKind::IDENT)
7241 }
7242 #[inline]
7243 pub fn minute_token(&self) -> Option<SyntaxToken> {
7244 support::token(&self.syntax, SyntaxKind::MINUTE_KW)
7245 }
7246 #[inline]
7247 pub fn month_token(&self) -> Option<SyntaxToken> {
7248 support::token(&self.syntax, SyntaxKind::MONTH_KW)
7249 }
7250 #[inline]
7251 pub fn second_token(&self) -> Option<SyntaxToken> {
7252 support::token(&self.syntax, SyntaxKind::SECOND_KW)
7253 }
7254 #[inline]
7255 pub fn string_token(&self) -> Option<SyntaxToken> {
7256 support::token(&self.syntax, SyntaxKind::STRING_KW)
7257 }
7258 #[inline]
7259 pub fn year_token(&self) -> Option<SyntaxToken> {
7260 support::token(&self.syntax, SyntaxKind::YEAR_KW)
7261 }
7262}
7263
7264#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7265pub struct FatArrow {
7266 pub(crate) syntax: SyntaxNode,
7267}
7268impl FatArrow {
7269 #[inline]
7270 pub fn eq_token(&self) -> Option<SyntaxToken> {
7271 support::token(&self.syntax, SyntaxKind::EQ)
7272 }
7273 #[inline]
7274 pub fn r_angle_token(&self) -> Option<SyntaxToken> {
7275 support::token(&self.syntax, SyntaxKind::R_ANGLE)
7276 }
7277}
7278
7279#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7280pub struct FdwOption {
7281 pub(crate) syntax: SyntaxNode,
7282}
7283impl FdwOption {
7284 #[inline]
7285 pub fn alter_option_list(&self) -> Option<AlterOptionList> {
7286 support::child(&self.syntax)
7287 }
7288 #[inline]
7289 pub fn path(&self) -> Option<Path> {
7290 support::child(&self.syntax)
7291 }
7292 #[inline]
7293 pub fn handler_token(&self) -> Option<SyntaxToken> {
7294 support::token(&self.syntax, SyntaxKind::HANDLER_KW)
7295 }
7296 #[inline]
7297 pub fn no_token(&self) -> Option<SyntaxToken> {
7298 support::token(&self.syntax, SyntaxKind::NO_KW)
7299 }
7300 #[inline]
7301 pub fn options_token(&self) -> Option<SyntaxToken> {
7302 support::token(&self.syntax, SyntaxKind::OPTIONS_KW)
7303 }
7304 #[inline]
7305 pub fn validator_token(&self) -> Option<SyntaxToken> {
7306 support::token(&self.syntax, SyntaxKind::VALIDATOR_KW)
7307 }
7308}
7309
7310#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7311pub struct FdwOptionList {
7312 pub(crate) syntax: SyntaxNode,
7313}
7314impl FdwOptionList {
7315 #[inline]
7316 pub fn fdw_options(&self) -> AstChildren<FdwOption> {
7317 support::children(&self.syntax)
7318 }
7319}
7320
7321#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7322pub struct Fetch {
7323 pub(crate) syntax: SyntaxNode,
7324}
7325impl Fetch {
7326 #[inline]
7327 pub fn name_ref(&self) -> Option<NameRef> {
7328 support::child(&self.syntax)
7329 }
7330 #[inline]
7331 pub fn fetch_token(&self) -> Option<SyntaxToken> {
7332 support::token(&self.syntax, SyntaxKind::FETCH_KW)
7333 }
7334 #[inline]
7335 pub fn from_token(&self) -> Option<SyntaxToken> {
7336 support::token(&self.syntax, SyntaxKind::FROM_KW)
7337 }
7338 #[inline]
7339 pub fn in_token(&self) -> Option<SyntaxToken> {
7340 support::token(&self.syntax, SyntaxKind::IN_KW)
7341 }
7342}
7343
7344#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7345pub struct FetchClause {
7346 pub(crate) syntax: SyntaxNode,
7347}
7348impl FetchClause {
7349 #[inline]
7350 pub fn expr(&self) -> Option<Expr> {
7351 support::child(&self.syntax)
7352 }
7353 #[inline]
7354 pub fn fetch_token(&self) -> Option<SyntaxToken> {
7355 support::token(&self.syntax, SyntaxKind::FETCH_KW)
7356 }
7357 #[inline]
7358 pub fn first_token(&self) -> Option<SyntaxToken> {
7359 support::token(&self.syntax, SyntaxKind::FIRST_KW)
7360 }
7361 #[inline]
7362 pub fn next_token(&self) -> Option<SyntaxToken> {
7363 support::token(&self.syntax, SyntaxKind::NEXT_KW)
7364 }
7365 #[inline]
7366 pub fn only_token(&self) -> Option<SyntaxToken> {
7367 support::token(&self.syntax, SyntaxKind::ONLY_KW)
7368 }
7369 #[inline]
7370 pub fn row_token(&self) -> Option<SyntaxToken> {
7371 support::token(&self.syntax, SyntaxKind::ROW_KW)
7372 }
7373 #[inline]
7374 pub fn rows_token(&self) -> Option<SyntaxToken> {
7375 support::token(&self.syntax, SyntaxKind::ROWS_KW)
7376 }
7377 #[inline]
7378 pub fn ties_token(&self) -> Option<SyntaxToken> {
7379 support::token(&self.syntax, SyntaxKind::TIES_KW)
7380 }
7381 #[inline]
7382 pub fn with_token(&self) -> Option<SyntaxToken> {
7383 support::token(&self.syntax, SyntaxKind::WITH_KW)
7384 }
7385}
7386
7387#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7388pub struct FieldExpr {
7389 pub(crate) syntax: SyntaxNode,
7390}
7391impl FieldExpr {
7392 #[inline]
7393 pub fn star_token(&self) -> Option<SyntaxToken> {
7394 support::token(&self.syntax, SyntaxKind::STAR)
7395 }
7396 #[inline]
7397 pub fn dot_token(&self) -> Option<SyntaxToken> {
7398 support::token(&self.syntax, SyntaxKind::DOT)
7399 }
7400}
7401
7402#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7403pub struct FilterClause {
7404 pub(crate) syntax: SyntaxNode,
7405}
7406impl FilterClause {
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 filter_token(&self) -> Option<SyntaxToken> {
7421 support::token(&self.syntax, SyntaxKind::FILTER_KW)
7422 }
7423 #[inline]
7424 pub fn where_token(&self) -> Option<SyntaxToken> {
7425 support::token(&self.syntax, SyntaxKind::WHERE_KW)
7426 }
7427}
7428
7429#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7430pub struct ForProvider {
7431 pub(crate) syntax: SyntaxNode,
7432}
7433impl ForProvider {
7434 #[inline]
7435 pub fn literal(&self) -> Option<Literal> {
7436 support::child(&self.syntax)
7437 }
7438 #[inline]
7439 pub fn name_ref(&self) -> Option<NameRef> {
7440 support::child(&self.syntax)
7441 }
7442 #[inline]
7443 pub fn for_token(&self) -> Option<SyntaxToken> {
7444 support::token(&self.syntax, SyntaxKind::FOR_KW)
7445 }
7446}
7447
7448#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7449pub struct ForceRls {
7450 pub(crate) syntax: SyntaxNode,
7451}
7452impl ForceRls {
7453 #[inline]
7454 pub fn force_token(&self) -> Option<SyntaxToken> {
7455 support::token(&self.syntax, SyntaxKind::FORCE_KW)
7456 }
7457 #[inline]
7458 pub fn level_token(&self) -> Option<SyntaxToken> {
7459 support::token(&self.syntax, SyntaxKind::LEVEL_KW)
7460 }
7461 #[inline]
7462 pub fn row_token(&self) -> Option<SyntaxToken> {
7463 support::token(&self.syntax, SyntaxKind::ROW_KW)
7464 }
7465 #[inline]
7466 pub fn security_token(&self) -> Option<SyntaxToken> {
7467 support::token(&self.syntax, SyntaxKind::SECURITY_KW)
7468 }
7469}
7470
7471#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7472pub struct ForeignKeyConstraint {
7473 pub(crate) syntax: SyntaxNode,
7474}
7475impl ForeignKeyConstraint {
7476 #[inline]
7477 pub fn match_type(&self) -> Option<MatchType> {
7478 support::child(&self.syntax)
7479 }
7480 #[inline]
7481 pub fn name(&self) -> Option<Name> {
7482 support::child(&self.syntax)
7483 }
7484 #[inline]
7485 pub fn on_delete_action(&self) -> Option<OnDeleteAction> {
7486 support::child(&self.syntax)
7487 }
7488 #[inline]
7489 pub fn on_update_action(&self) -> Option<OnUpdateAction> {
7490 support::child(&self.syntax)
7491 }
7492 #[inline]
7493 pub fn path(&self) -> Option<Path> {
7494 support::child(&self.syntax)
7495 }
7496 #[inline]
7497 pub fn constraint_token(&self) -> Option<SyntaxToken> {
7498 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
7499 }
7500 #[inline]
7501 pub fn foreign_token(&self) -> Option<SyntaxToken> {
7502 support::token(&self.syntax, SyntaxKind::FOREIGN_KW)
7503 }
7504 #[inline]
7505 pub fn key_token(&self) -> Option<SyntaxToken> {
7506 support::token(&self.syntax, SyntaxKind::KEY_KW)
7507 }
7508 #[inline]
7509 pub fn references_token(&self) -> Option<SyntaxToken> {
7510 support::token(&self.syntax, SyntaxKind::REFERENCES_KW)
7511 }
7512}
7513
7514#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7515pub struct FrameClause {
7516 pub(crate) syntax: SyntaxNode,
7517}
7518impl FrameClause {
7519 #[inline]
7520 pub fn groups_token(&self) -> Option<SyntaxToken> {
7521 support::token(&self.syntax, SyntaxKind::GROUPS_KW)
7522 }
7523 #[inline]
7524 pub fn range_token(&self) -> Option<SyntaxToken> {
7525 support::token(&self.syntax, SyntaxKind::RANGE_KW)
7526 }
7527 #[inline]
7528 pub fn rows_token(&self) -> Option<SyntaxToken> {
7529 support::token(&self.syntax, SyntaxKind::ROWS_KW)
7530 }
7531}
7532
7533#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7534pub struct FromClause {
7535 pub(crate) syntax: SyntaxNode,
7536}
7537impl FromClause {
7538 #[inline]
7539 pub fn from_items(&self) -> AstChildren<FromItem> {
7540 support::children(&self.syntax)
7541 }
7542 #[inline]
7543 pub fn join_exprs(&self) -> AstChildren<JoinExpr> {
7544 support::children(&self.syntax)
7545 }
7546 #[inline]
7547 pub fn from_token(&self) -> Option<SyntaxToken> {
7548 support::token(&self.syntax, SyntaxKind::FROM_KW)
7549 }
7550}
7551
7552#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7553pub struct FromItem {
7554 pub(crate) syntax: SyntaxNode,
7555}
7556impl FromItem {
7557 #[inline]
7558 pub fn alias(&self) -> Option<Alias> {
7559 support::child(&self.syntax)
7560 }
7561 #[inline]
7562 pub fn call_expr(&self) -> Option<CallExpr> {
7563 support::child(&self.syntax)
7564 }
7565 #[inline]
7566 pub fn cast_expr(&self) -> Option<CastExpr> {
7567 support::child(&self.syntax)
7568 }
7569 #[inline]
7570 pub fn field_expr(&self) -> Option<FieldExpr> {
7571 support::child(&self.syntax)
7572 }
7573 #[inline]
7574 pub fn json_table(&self) -> Option<JsonTable> {
7575 support::child(&self.syntax)
7576 }
7577 #[inline]
7578 pub fn name_ref(&self) -> Option<NameRef> {
7579 support::child(&self.syntax)
7580 }
7581 #[inline]
7582 pub fn paren_select(&self) -> Option<ParenSelect> {
7583 support::child(&self.syntax)
7584 }
7585 #[inline]
7586 pub fn tablesample_clause(&self) -> Option<TablesampleClause> {
7587 support::child(&self.syntax)
7588 }
7589 #[inline]
7590 pub fn xml_table(&self) -> Option<XmlTable> {
7591 support::child(&self.syntax)
7592 }
7593 #[inline]
7594 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
7595 support::token(&self.syntax, SyntaxKind::L_PAREN)
7596 }
7597 #[inline]
7598 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
7599 support::token(&self.syntax, SyntaxKind::R_PAREN)
7600 }
7601 #[inline]
7602 pub fn from_token(&self) -> Option<SyntaxToken> {
7603 support::token(&self.syntax, SyntaxKind::FROM_KW)
7604 }
7605 #[inline]
7606 pub fn lateral_token(&self) -> Option<SyntaxToken> {
7607 support::token(&self.syntax, SyntaxKind::LATERAL_KW)
7608 }
7609 #[inline]
7610 pub fn only_token(&self) -> Option<SyntaxToken> {
7611 support::token(&self.syntax, SyntaxKind::ONLY_KW)
7612 }
7613 #[inline]
7614 pub fn ordinality_token(&self) -> Option<SyntaxToken> {
7615 support::token(&self.syntax, SyntaxKind::ORDINALITY_KW)
7616 }
7617 #[inline]
7618 pub fn rows_token(&self) -> Option<SyntaxToken> {
7619 support::token(&self.syntax, SyntaxKind::ROWS_KW)
7620 }
7621 #[inline]
7622 pub fn with_token(&self) -> Option<SyntaxToken> {
7623 support::token(&self.syntax, SyntaxKind::WITH_KW)
7624 }
7625}
7626
7627#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7628pub struct FromServer {
7629 pub(crate) syntax: SyntaxNode,
7630}
7631impl FromServer {
7632 #[inline]
7633 pub fn name_ref(&self) -> Option<NameRef> {
7634 support::child(&self.syntax)
7635 }
7636 #[inline]
7637 pub fn from_token(&self) -> Option<SyntaxToken> {
7638 support::token(&self.syntax, SyntaxKind::FROM_KW)
7639 }
7640 #[inline]
7641 pub fn server_token(&self) -> Option<SyntaxToken> {
7642 support::token(&self.syntax, SyntaxKind::SERVER_KW)
7643 }
7644}
7645
7646#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7647pub struct FromTable {
7648 pub(crate) syntax: SyntaxNode,
7649}
7650impl FromTable {
7651 #[inline]
7652 pub fn path(&self) -> Option<Path> {
7653 support::child(&self.syntax)
7654 }
7655 #[inline]
7656 pub fn from_token(&self) -> Option<SyntaxToken> {
7657 support::token(&self.syntax, SyntaxKind::FROM_KW)
7658 }
7659}
7660
7661#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7662pub struct FuncOptionList {
7663 pub(crate) syntax: SyntaxNode,
7664}
7665impl FuncOptionList {
7666 #[inline]
7667 pub fn options(&self) -> AstChildren<FuncOption> {
7668 support::children(&self.syntax)
7669 }
7670}
7671
7672#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7673pub struct FunctionSig {
7674 pub(crate) syntax: SyntaxNode,
7675}
7676impl FunctionSig {
7677 #[inline]
7678 pub fn param_list(&self) -> Option<ParamList> {
7679 support::child(&self.syntax)
7680 }
7681 #[inline]
7682 pub fn path(&self) -> Option<Path> {
7683 support::child(&self.syntax)
7684 }
7685}
7686
7687#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7688pub struct FunctionSigList {
7689 pub(crate) syntax: SyntaxNode,
7690}
7691impl FunctionSigList {
7692 #[inline]
7693 pub fn function_sigs(&self) -> AstChildren<FunctionSig> {
7694 support::children(&self.syntax)
7695 }
7696}
7697
7698#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7699pub struct GeneratedConstraint {
7700 pub(crate) syntax: SyntaxNode,
7701}
7702impl GeneratedConstraint {
7703 #[inline]
7704 pub fn expr(&self) -> Option<Expr> {
7705 support::child(&self.syntax)
7706 }
7707 #[inline]
7708 pub fn name_ref(&self) -> Option<NameRef> {
7709 support::child(&self.syntax)
7710 }
7711 #[inline]
7712 pub fn sequence_option_list(&self) -> Option<SequenceOptionList> {
7713 support::child(&self.syntax)
7714 }
7715 #[inline]
7716 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
7717 support::token(&self.syntax, SyntaxKind::L_PAREN)
7718 }
7719 #[inline]
7720 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
7721 support::token(&self.syntax, SyntaxKind::R_PAREN)
7722 }
7723 #[inline]
7724 pub fn always_token(&self) -> Option<SyntaxToken> {
7725 support::token(&self.syntax, SyntaxKind::ALWAYS_KW)
7726 }
7727 #[inline]
7728 pub fn as_token(&self) -> Option<SyntaxToken> {
7729 support::token(&self.syntax, SyntaxKind::AS_KW)
7730 }
7731 #[inline]
7732 pub fn by_token(&self) -> Option<SyntaxToken> {
7733 support::token(&self.syntax, SyntaxKind::BY_KW)
7734 }
7735 #[inline]
7736 pub fn constraint_token(&self) -> Option<SyntaxToken> {
7737 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
7738 }
7739 #[inline]
7740 pub fn default_token(&self) -> Option<SyntaxToken> {
7741 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
7742 }
7743 #[inline]
7744 pub fn generated_token(&self) -> Option<SyntaxToken> {
7745 support::token(&self.syntax, SyntaxKind::GENERATED_KW)
7746 }
7747 #[inline]
7748 pub fn identity_token(&self) -> Option<SyntaxToken> {
7749 support::token(&self.syntax, SyntaxKind::IDENTITY_KW)
7750 }
7751 #[inline]
7752 pub fn stored_token(&self) -> Option<SyntaxToken> {
7753 support::token(&self.syntax, SyntaxKind::STORED_KW)
7754 }
7755}
7756
7757#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7758pub struct Grant {
7759 pub(crate) syntax: SyntaxNode,
7760}
7761impl Grant {
7762 #[inline]
7763 pub fn name_refs(&self) -> AstChildren<NameRef> {
7764 support::children(&self.syntax)
7765 }
7766 #[inline]
7767 pub fn paths(&self) -> AstChildren<Path> {
7768 support::children(&self.syntax)
7769 }
7770 #[inline]
7771 pub fn revoke_command_list(&self) -> Option<RevokeCommandList> {
7772 support::child(&self.syntax)
7773 }
7774 #[inline]
7775 pub fn role(&self) -> Option<Role> {
7776 support::child(&self.syntax)
7777 }
7778 #[inline]
7779 pub fn role_list(&self) -> Option<RoleList> {
7780 support::child(&self.syntax)
7781 }
7782 #[inline]
7783 pub fn all_token(&self) -> Option<SyntaxToken> {
7784 support::token(&self.syntax, SyntaxKind::ALL_KW)
7785 }
7786 #[inline]
7787 pub fn by_token(&self) -> Option<SyntaxToken> {
7788 support::token(&self.syntax, SyntaxKind::BY_KW)
7789 }
7790 #[inline]
7791 pub fn grant_token(&self) -> Option<SyntaxToken> {
7792 support::token(&self.syntax, SyntaxKind::GRANT_KW)
7793 }
7794 #[inline]
7795 pub fn granted_token(&self) -> Option<SyntaxToken> {
7796 support::token(&self.syntax, SyntaxKind::GRANTED_KW)
7797 }
7798 #[inline]
7799 pub fn in_token(&self) -> Option<SyntaxToken> {
7800 support::token(&self.syntax, SyntaxKind::IN_KW)
7801 }
7802 #[inline]
7803 pub fn on_token(&self) -> Option<SyntaxToken> {
7804 support::token(&self.syntax, SyntaxKind::ON_KW)
7805 }
7806 #[inline]
7807 pub fn option_token(&self) -> Option<SyntaxToken> {
7808 support::token(&self.syntax, SyntaxKind::OPTION_KW)
7809 }
7810 #[inline]
7811 pub fn privileges_token(&self) -> Option<SyntaxToken> {
7812 support::token(&self.syntax, SyntaxKind::PRIVILEGES_KW)
7813 }
7814 #[inline]
7815 pub fn schema_token(&self) -> Option<SyntaxToken> {
7816 support::token(&self.syntax, SyntaxKind::SCHEMA_KW)
7817 }
7818 #[inline]
7819 pub fn table_token(&self) -> Option<SyntaxToken> {
7820 support::token(&self.syntax, SyntaxKind::TABLE_KW)
7821 }
7822 #[inline]
7823 pub fn tables_token(&self) -> Option<SyntaxToken> {
7824 support::token(&self.syntax, SyntaxKind::TABLES_KW)
7825 }
7826 #[inline]
7827 pub fn to_token(&self) -> Option<SyntaxToken> {
7828 support::token(&self.syntax, SyntaxKind::TO_KW)
7829 }
7830 #[inline]
7831 pub fn with_token(&self) -> Option<SyntaxToken> {
7832 support::token(&self.syntax, SyntaxKind::WITH_KW)
7833 }
7834}
7835
7836#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7837pub struct GrantDefaultPrivileges {
7838 pub(crate) syntax: SyntaxNode,
7839}
7840impl GrantDefaultPrivileges {
7841 #[inline]
7842 pub fn privilege_target(&self) -> Option<PrivilegeTarget> {
7843 support::child(&self.syntax)
7844 }
7845 #[inline]
7846 pub fn privileges(&self) -> Option<Privileges> {
7847 support::child(&self.syntax)
7848 }
7849 #[inline]
7850 pub fn role_list(&self) -> Option<RoleList> {
7851 support::child(&self.syntax)
7852 }
7853 #[inline]
7854 pub fn grant_token(&self) -> Option<SyntaxToken> {
7855 support::token(&self.syntax, SyntaxKind::GRANT_KW)
7856 }
7857 #[inline]
7858 pub fn on_token(&self) -> Option<SyntaxToken> {
7859 support::token(&self.syntax, SyntaxKind::ON_KW)
7860 }
7861 #[inline]
7862 pub fn option_token(&self) -> Option<SyntaxToken> {
7863 support::token(&self.syntax, SyntaxKind::OPTION_KW)
7864 }
7865 #[inline]
7866 pub fn to_token(&self) -> Option<SyntaxToken> {
7867 support::token(&self.syntax, SyntaxKind::TO_KW)
7868 }
7869 #[inline]
7870 pub fn with_token(&self) -> Option<SyntaxToken> {
7871 support::token(&self.syntax, SyntaxKind::WITH_KW)
7872 }
7873}
7874
7875#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7876pub struct GroupByClause {
7877 pub(crate) syntax: SyntaxNode,
7878}
7879impl GroupByClause {
7880 #[inline]
7881 pub fn group_by_list(&self) -> Option<GroupByList> {
7882 support::child(&self.syntax)
7883 }
7884 #[inline]
7885 pub fn all_token(&self) -> Option<SyntaxToken> {
7886 support::token(&self.syntax, SyntaxKind::ALL_KW)
7887 }
7888 #[inline]
7889 pub fn by_token(&self) -> Option<SyntaxToken> {
7890 support::token(&self.syntax, SyntaxKind::BY_KW)
7891 }
7892 #[inline]
7893 pub fn distinct_token(&self) -> Option<SyntaxToken> {
7894 support::token(&self.syntax, SyntaxKind::DISTINCT_KW)
7895 }
7896 #[inline]
7897 pub fn group_token(&self) -> Option<SyntaxToken> {
7898 support::token(&self.syntax, SyntaxKind::GROUP_KW)
7899 }
7900}
7901
7902#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7903pub struct GroupByList {
7904 pub(crate) syntax: SyntaxNode,
7905}
7906impl GroupByList {
7907 #[inline]
7908 pub fn group_bys(&self) -> AstChildren<GroupBy> {
7909 support::children(&self.syntax)
7910 }
7911}
7912
7913#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7914pub struct GroupingCube {
7915 pub(crate) syntax: SyntaxNode,
7916}
7917impl GroupingCube {
7918 #[inline]
7919 pub fn expr(&self) -> Option<Expr> {
7920 support::child(&self.syntax)
7921 }
7922 #[inline]
7923 pub fn cube_token(&self) -> Option<SyntaxToken> {
7924 support::token(&self.syntax, SyntaxKind::CUBE_KW)
7925 }
7926}
7927
7928#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7929pub struct GroupingExpr {
7930 pub(crate) syntax: SyntaxNode,
7931}
7932impl GroupingExpr {
7933 #[inline]
7934 pub fn expr(&self) -> Option<Expr> {
7935 support::child(&self.syntax)
7936 }
7937}
7938
7939#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7940pub struct GroupingRollup {
7941 pub(crate) syntax: SyntaxNode,
7942}
7943impl GroupingRollup {
7944 #[inline]
7945 pub fn expr(&self) -> Option<Expr> {
7946 support::child(&self.syntax)
7947 }
7948 #[inline]
7949 pub fn rollup_token(&self) -> Option<SyntaxToken> {
7950 support::token(&self.syntax, SyntaxKind::ROLLUP_KW)
7951 }
7952}
7953
7954#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7955pub struct GroupingSets {
7956 pub(crate) syntax: SyntaxNode,
7957}
7958impl GroupingSets {
7959 #[inline]
7960 pub fn expr(&self) -> Option<Expr> {
7961 support::child(&self.syntax)
7962 }
7963 #[inline]
7964 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
7965 support::token(&self.syntax, SyntaxKind::L_PAREN)
7966 }
7967 #[inline]
7968 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
7969 support::token(&self.syntax, SyntaxKind::R_PAREN)
7970 }
7971 #[inline]
7972 pub fn grouping_token(&self) -> Option<SyntaxToken> {
7973 support::token(&self.syntax, SyntaxKind::GROUPING_KW)
7974 }
7975 #[inline]
7976 pub fn sets_token(&self) -> Option<SyntaxToken> {
7977 support::token(&self.syntax, SyntaxKind::SETS_KW)
7978 }
7979}
7980
7981#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7982pub struct Gteq {
7983 pub(crate) syntax: SyntaxNode,
7984}
7985impl Gteq {
7986 #[inline]
7987 pub fn eq_token(&self) -> Option<SyntaxToken> {
7988 support::token(&self.syntax, SyntaxKind::EQ)
7989 }
7990 #[inline]
7991 pub fn r_angle_token(&self) -> Option<SyntaxToken> {
7992 support::token(&self.syntax, SyntaxKind::R_ANGLE)
7993 }
7994}
7995
7996#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7997pub struct HandlerClause {
7998 pub(crate) syntax: SyntaxNode,
7999}
8000impl HandlerClause {
8001 #[inline]
8002 pub fn path(&self) -> Option<Path> {
8003 support::child(&self.syntax)
8004 }
8005 #[inline]
8006 pub fn handler_token(&self) -> Option<SyntaxToken> {
8007 support::token(&self.syntax, SyntaxKind::HANDLER_KW)
8008 }
8009}
8010
8011#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8012pub struct HavingClause {
8013 pub(crate) syntax: SyntaxNode,
8014}
8015impl HavingClause {
8016 #[inline]
8017 pub fn expr(&self) -> Option<Expr> {
8018 support::child(&self.syntax)
8019 }
8020 #[inline]
8021 pub fn having_token(&self) -> Option<SyntaxToken> {
8022 support::token(&self.syntax, SyntaxKind::HAVING_KW)
8023 }
8024}
8025
8026#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8027pub struct IfExists {
8028 pub(crate) syntax: SyntaxNode,
8029}
8030impl IfExists {
8031 #[inline]
8032 pub fn exists_token(&self) -> Option<SyntaxToken> {
8033 support::token(&self.syntax, SyntaxKind::EXISTS_KW)
8034 }
8035 #[inline]
8036 pub fn if_token(&self) -> Option<SyntaxToken> {
8037 support::token(&self.syntax, SyntaxKind::IF_KW)
8038 }
8039}
8040
8041#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8042pub struct IfNotExists {
8043 pub(crate) syntax: SyntaxNode,
8044}
8045impl IfNotExists {
8046 #[inline]
8047 pub fn exists_token(&self) -> Option<SyntaxToken> {
8048 support::token(&self.syntax, SyntaxKind::EXISTS_KW)
8049 }
8050 #[inline]
8051 pub fn if_token(&self) -> Option<SyntaxToken> {
8052 support::token(&self.syntax, SyntaxKind::IF_KW)
8053 }
8054 #[inline]
8055 pub fn not_token(&self) -> Option<SyntaxToken> {
8056 support::token(&self.syntax, SyntaxKind::NOT_KW)
8057 }
8058}
8059
8060#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8061pub struct ImportForeignSchema {
8062 pub(crate) syntax: SyntaxNode,
8063}
8064impl ImportForeignSchema {
8065 #[inline]
8066 pub fn alter_option_list(&self) -> Option<AlterOptionList> {
8067 support::child(&self.syntax)
8068 }
8069 #[inline]
8070 pub fn except_tables(&self) -> Option<ExceptTables> {
8071 support::child(&self.syntax)
8072 }
8073 #[inline]
8074 pub fn from_server(&self) -> Option<FromServer> {
8075 support::child(&self.syntax)
8076 }
8077 #[inline]
8078 pub fn into_schema(&self) -> Option<IntoSchema> {
8079 support::child(&self.syntax)
8080 }
8081 #[inline]
8082 pub fn limit_to_tables(&self) -> Option<LimitToTables> {
8083 support::child(&self.syntax)
8084 }
8085 #[inline]
8086 pub fn name_ref(&self) -> Option<NameRef> {
8087 support::child(&self.syntax)
8088 }
8089 #[inline]
8090 pub fn foreign_token(&self) -> Option<SyntaxToken> {
8091 support::token(&self.syntax, SyntaxKind::FOREIGN_KW)
8092 }
8093 #[inline]
8094 pub fn import_token(&self) -> Option<SyntaxToken> {
8095 support::token(&self.syntax, SyntaxKind::IMPORT_KW)
8096 }
8097 #[inline]
8098 pub fn schema_token(&self) -> Option<SyntaxToken> {
8099 support::token(&self.syntax, SyntaxKind::SCHEMA_KW)
8100 }
8101}
8102
8103#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8104pub struct IndexExpr {
8105 pub(crate) syntax: SyntaxNode,
8106}
8107impl IndexExpr {
8108 #[inline]
8109 pub fn l_brack_token(&self) -> Option<SyntaxToken> {
8110 support::token(&self.syntax, SyntaxKind::L_BRACK)
8111 }
8112 #[inline]
8113 pub fn r_brack_token(&self) -> Option<SyntaxToken> {
8114 support::token(&self.syntax, SyntaxKind::R_BRACK)
8115 }
8116}
8117
8118#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8119pub struct Inherit {
8120 pub(crate) syntax: SyntaxNode,
8121}
8122impl Inherit {
8123 #[inline]
8124 pub fn path(&self) -> Option<Path> {
8125 support::child(&self.syntax)
8126 }
8127 #[inline]
8128 pub fn inherit_token(&self) -> Option<SyntaxToken> {
8129 support::token(&self.syntax, SyntaxKind::INHERIT_KW)
8130 }
8131}
8132
8133#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8134pub struct InheritTable {
8135 pub(crate) syntax: SyntaxNode,
8136}
8137impl InheritTable {
8138 #[inline]
8139 pub fn path(&self) -> Option<Path> {
8140 support::child(&self.syntax)
8141 }
8142 #[inline]
8143 pub fn inherit_token(&self) -> Option<SyntaxToken> {
8144 support::token(&self.syntax, SyntaxKind::INHERIT_KW)
8145 }
8146}
8147
8148#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8149pub struct Inherits {
8150 pub(crate) syntax: SyntaxNode,
8151}
8152impl Inherits {
8153 #[inline]
8154 pub fn paths(&self) -> AstChildren<Path> {
8155 support::children(&self.syntax)
8156 }
8157 #[inline]
8158 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
8159 support::token(&self.syntax, SyntaxKind::L_PAREN)
8160 }
8161 #[inline]
8162 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
8163 support::token(&self.syntax, SyntaxKind::R_PAREN)
8164 }
8165 #[inline]
8166 pub fn inherits_token(&self) -> Option<SyntaxToken> {
8167 support::token(&self.syntax, SyntaxKind::INHERITS_KW)
8168 }
8169}
8170
8171#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8172pub struct InitiallyDeferredConstraintOption {
8173 pub(crate) syntax: SyntaxNode,
8174}
8175impl InitiallyDeferredConstraintOption {
8176 #[inline]
8177 pub fn deferred_token(&self) -> Option<SyntaxToken> {
8178 support::token(&self.syntax, SyntaxKind::DEFERRED_KW)
8179 }
8180 #[inline]
8181 pub fn initially_token(&self) -> Option<SyntaxToken> {
8182 support::token(&self.syntax, SyntaxKind::INITIALLY_KW)
8183 }
8184}
8185
8186#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8187pub struct InitiallyImmediateConstraintOption {
8188 pub(crate) syntax: SyntaxNode,
8189}
8190impl InitiallyImmediateConstraintOption {
8191 #[inline]
8192 pub fn immediate_token(&self) -> Option<SyntaxToken> {
8193 support::token(&self.syntax, SyntaxKind::IMMEDIATE_KW)
8194 }
8195 #[inline]
8196 pub fn initially_token(&self) -> Option<SyntaxToken> {
8197 support::token(&self.syntax, SyntaxKind::INITIALLY_KW)
8198 }
8199}
8200
8201#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8202pub struct Insert {
8203 pub(crate) syntax: SyntaxNode,
8204}
8205impl Insert {
8206 #[inline]
8207 pub fn alias(&self) -> Option<Alias> {
8208 support::child(&self.syntax)
8209 }
8210 #[inline]
8211 pub fn column_list(&self) -> Option<ColumnList> {
8212 support::child(&self.syntax)
8213 }
8214 #[inline]
8215 pub fn on_conflict_clause(&self) -> Option<OnConflictClause> {
8216 support::child(&self.syntax)
8217 }
8218 #[inline]
8219 pub fn path(&self) -> Option<Path> {
8220 support::child(&self.syntax)
8221 }
8222 #[inline]
8223 pub fn returning_clause(&self) -> Option<ReturningClause> {
8224 support::child(&self.syntax)
8225 }
8226 #[inline]
8227 pub fn stmt(&self) -> Option<Stmt> {
8228 support::child(&self.syntax)
8229 }
8230 #[inline]
8231 pub fn values(&self) -> Option<Values> {
8232 support::child(&self.syntax)
8233 }
8234 #[inline]
8235 pub fn default_token(&self) -> Option<SyntaxToken> {
8236 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
8237 }
8238 #[inline]
8239 pub fn insert_token(&self) -> Option<SyntaxToken> {
8240 support::token(&self.syntax, SyntaxKind::INSERT_KW)
8241 }
8242 #[inline]
8243 pub fn into_token(&self) -> Option<SyntaxToken> {
8244 support::token(&self.syntax, SyntaxKind::INTO_KW)
8245 }
8246 #[inline]
8247 pub fn overriding_token(&self) -> Option<SyntaxToken> {
8248 support::token(&self.syntax, SyntaxKind::OVERRIDING_KW)
8249 }
8250 #[inline]
8251 pub fn system_token(&self) -> Option<SyntaxToken> {
8252 support::token(&self.syntax, SyntaxKind::SYSTEM_KW)
8253 }
8254 #[inline]
8255 pub fn user_token(&self) -> Option<SyntaxToken> {
8256 support::token(&self.syntax, SyntaxKind::USER_KW)
8257 }
8258 #[inline]
8259 pub fn value_token(&self) -> Option<SyntaxToken> {
8260 support::token(&self.syntax, SyntaxKind::VALUE_KW)
8261 }
8262 #[inline]
8263 pub fn values_token(&self) -> Option<SyntaxToken> {
8264 support::token(&self.syntax, SyntaxKind::VALUES_KW)
8265 }
8266}
8267
8268#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8269pub struct IntervalType {
8270 pub(crate) syntax: SyntaxNode,
8271}
8272impl IntervalType {
8273 #[inline]
8274 pub fn literal(&self) -> Option<Literal> {
8275 support::child(&self.syntax)
8276 }
8277 #[inline]
8278 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
8279 support::token(&self.syntax, SyntaxKind::L_PAREN)
8280 }
8281 #[inline]
8282 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
8283 support::token(&self.syntax, SyntaxKind::R_PAREN)
8284 }
8285 #[inline]
8286 pub fn day_token(&self) -> Option<SyntaxToken> {
8287 support::token(&self.syntax, SyntaxKind::DAY_KW)
8288 }
8289 #[inline]
8290 pub fn hour_token(&self) -> Option<SyntaxToken> {
8291 support::token(&self.syntax, SyntaxKind::HOUR_KW)
8292 }
8293 #[inline]
8294 pub fn interval_token(&self) -> Option<SyntaxToken> {
8295 support::token(&self.syntax, SyntaxKind::INTERVAL_KW)
8296 }
8297 #[inline]
8298 pub fn minute_token(&self) -> Option<SyntaxToken> {
8299 support::token(&self.syntax, SyntaxKind::MINUTE_KW)
8300 }
8301 #[inline]
8302 pub fn month_token(&self) -> Option<SyntaxToken> {
8303 support::token(&self.syntax, SyntaxKind::MONTH_KW)
8304 }
8305 #[inline]
8306 pub fn second_token(&self) -> Option<SyntaxToken> {
8307 support::token(&self.syntax, SyntaxKind::SECOND_KW)
8308 }
8309 #[inline]
8310 pub fn to_token(&self) -> Option<SyntaxToken> {
8311 support::token(&self.syntax, SyntaxKind::TO_KW)
8312 }
8313 #[inline]
8314 pub fn year_token(&self) -> Option<SyntaxToken> {
8315 support::token(&self.syntax, SyntaxKind::YEAR_KW)
8316 }
8317}
8318
8319#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8320pub struct IntoClause {
8321 pub(crate) syntax: SyntaxNode,
8322}
8323impl IntoClause {
8324 #[inline]
8325 pub fn path(&self) -> Option<Path> {
8326 support::child(&self.syntax)
8327 }
8328 #[inline]
8329 pub fn into_token(&self) -> Option<SyntaxToken> {
8330 support::token(&self.syntax, SyntaxKind::INTO_KW)
8331 }
8332}
8333
8334#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8335pub struct IntoSchema {
8336 pub(crate) syntax: SyntaxNode,
8337}
8338impl IntoSchema {
8339 #[inline]
8340 pub fn name_ref(&self) -> Option<NameRef> {
8341 support::child(&self.syntax)
8342 }
8343 #[inline]
8344 pub fn into_token(&self) -> Option<SyntaxToken> {
8345 support::token(&self.syntax, SyntaxKind::INTO_KW)
8346 }
8347}
8348
8349#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8350pub struct IsDistinctFrom {
8351 pub(crate) syntax: SyntaxNode,
8352}
8353impl IsDistinctFrom {
8354 #[inline]
8355 pub fn distinct_token(&self) -> Option<SyntaxToken> {
8356 support::token(&self.syntax, SyntaxKind::DISTINCT_KW)
8357 }
8358 #[inline]
8359 pub fn from_token(&self) -> Option<SyntaxToken> {
8360 support::token(&self.syntax, SyntaxKind::FROM_KW)
8361 }
8362 #[inline]
8363 pub fn is_token(&self) -> Option<SyntaxToken> {
8364 support::token(&self.syntax, SyntaxKind::IS_KW)
8365 }
8366}
8367
8368#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8369pub struct IsJson {
8370 pub(crate) syntax: SyntaxNode,
8371}
8372impl IsJson {
8373 #[inline]
8374 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
8375 support::child(&self.syntax)
8376 }
8377 #[inline]
8378 pub fn is_token(&self) -> Option<SyntaxToken> {
8379 support::token(&self.syntax, SyntaxKind::IS_KW)
8380 }
8381 #[inline]
8382 pub fn json_token(&self) -> Option<SyntaxToken> {
8383 support::token(&self.syntax, SyntaxKind::JSON_KW)
8384 }
8385}
8386
8387#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8388pub struct IsJsonArray {
8389 pub(crate) syntax: SyntaxNode,
8390}
8391impl IsJsonArray {
8392 #[inline]
8393 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
8394 support::child(&self.syntax)
8395 }
8396 #[inline]
8397 pub fn array_token(&self) -> Option<SyntaxToken> {
8398 support::token(&self.syntax, SyntaxKind::ARRAY_KW)
8399 }
8400 #[inline]
8401 pub fn is_token(&self) -> Option<SyntaxToken> {
8402 support::token(&self.syntax, SyntaxKind::IS_KW)
8403 }
8404 #[inline]
8405 pub fn json_token(&self) -> Option<SyntaxToken> {
8406 support::token(&self.syntax, SyntaxKind::JSON_KW)
8407 }
8408}
8409
8410#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8411pub struct IsJsonObject {
8412 pub(crate) syntax: SyntaxNode,
8413}
8414impl IsJsonObject {
8415 #[inline]
8416 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
8417 support::child(&self.syntax)
8418 }
8419 #[inline]
8420 pub fn is_token(&self) -> Option<SyntaxToken> {
8421 support::token(&self.syntax, SyntaxKind::IS_KW)
8422 }
8423 #[inline]
8424 pub fn json_token(&self) -> Option<SyntaxToken> {
8425 support::token(&self.syntax, SyntaxKind::JSON_KW)
8426 }
8427 #[inline]
8428 pub fn object_token(&self) -> Option<SyntaxToken> {
8429 support::token(&self.syntax, SyntaxKind::OBJECT_KW)
8430 }
8431}
8432
8433#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8434pub struct IsJsonScalar {
8435 pub(crate) syntax: SyntaxNode,
8436}
8437impl IsJsonScalar {
8438 #[inline]
8439 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
8440 support::child(&self.syntax)
8441 }
8442 #[inline]
8443 pub fn is_token(&self) -> Option<SyntaxToken> {
8444 support::token(&self.syntax, SyntaxKind::IS_KW)
8445 }
8446 #[inline]
8447 pub fn json_token(&self) -> Option<SyntaxToken> {
8448 support::token(&self.syntax, SyntaxKind::JSON_KW)
8449 }
8450 #[inline]
8451 pub fn scalar_token(&self) -> Option<SyntaxToken> {
8452 support::token(&self.syntax, SyntaxKind::SCALAR_KW)
8453 }
8454}
8455
8456#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8457pub struct IsJsonValue {
8458 pub(crate) syntax: SyntaxNode,
8459}
8460impl IsJsonValue {
8461 #[inline]
8462 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
8463 support::child(&self.syntax)
8464 }
8465 #[inline]
8466 pub fn is_token(&self) -> Option<SyntaxToken> {
8467 support::token(&self.syntax, SyntaxKind::IS_KW)
8468 }
8469 #[inline]
8470 pub fn json_token(&self) -> Option<SyntaxToken> {
8471 support::token(&self.syntax, SyntaxKind::JSON_KW)
8472 }
8473 #[inline]
8474 pub fn value_token(&self) -> Option<SyntaxToken> {
8475 support::token(&self.syntax, SyntaxKind::VALUE_KW)
8476 }
8477}
8478
8479#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8480pub struct IsNormalized {
8481 pub(crate) syntax: SyntaxNode,
8482}
8483impl IsNormalized {
8484 #[inline]
8485 pub fn unicode_normal_form(&self) -> Option<UnicodeNormalForm> {
8486 support::child(&self.syntax)
8487 }
8488 #[inline]
8489 pub fn is_token(&self) -> Option<SyntaxToken> {
8490 support::token(&self.syntax, SyntaxKind::IS_KW)
8491 }
8492 #[inline]
8493 pub fn normalized_token(&self) -> Option<SyntaxToken> {
8494 support::token(&self.syntax, SyntaxKind::NORMALIZED_KW)
8495 }
8496}
8497
8498#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8499pub struct IsNot {
8500 pub(crate) syntax: SyntaxNode,
8501}
8502impl IsNot {
8503 #[inline]
8504 pub fn is_token(&self) -> Option<SyntaxToken> {
8505 support::token(&self.syntax, SyntaxKind::IS_KW)
8506 }
8507 #[inline]
8508 pub fn not_token(&self) -> Option<SyntaxToken> {
8509 support::token(&self.syntax, SyntaxKind::NOT_KW)
8510 }
8511}
8512
8513#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8514pub struct IsNotDistinctFrom {
8515 pub(crate) syntax: SyntaxNode,
8516}
8517impl IsNotDistinctFrom {
8518 #[inline]
8519 pub fn distinct_token(&self) -> Option<SyntaxToken> {
8520 support::token(&self.syntax, SyntaxKind::DISTINCT_KW)
8521 }
8522 #[inline]
8523 pub fn from_token(&self) -> Option<SyntaxToken> {
8524 support::token(&self.syntax, SyntaxKind::FROM_KW)
8525 }
8526 #[inline]
8527 pub fn is_token(&self) -> Option<SyntaxToken> {
8528 support::token(&self.syntax, SyntaxKind::IS_KW)
8529 }
8530 #[inline]
8531 pub fn not_token(&self) -> Option<SyntaxToken> {
8532 support::token(&self.syntax, SyntaxKind::NOT_KW)
8533 }
8534}
8535
8536#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8537pub struct IsNotJson {
8538 pub(crate) syntax: SyntaxNode,
8539}
8540impl IsNotJson {
8541 #[inline]
8542 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
8543 support::child(&self.syntax)
8544 }
8545 #[inline]
8546 pub fn is_token(&self) -> Option<SyntaxToken> {
8547 support::token(&self.syntax, SyntaxKind::IS_KW)
8548 }
8549 #[inline]
8550 pub fn json_token(&self) -> Option<SyntaxToken> {
8551 support::token(&self.syntax, SyntaxKind::JSON_KW)
8552 }
8553 #[inline]
8554 pub fn not_token(&self) -> Option<SyntaxToken> {
8555 support::token(&self.syntax, SyntaxKind::NOT_KW)
8556 }
8557}
8558
8559#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8560pub struct IsNotJsonArray {
8561 pub(crate) syntax: SyntaxNode,
8562}
8563impl IsNotJsonArray {
8564 #[inline]
8565 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
8566 support::child(&self.syntax)
8567 }
8568 #[inline]
8569 pub fn array_token(&self) -> Option<SyntaxToken> {
8570 support::token(&self.syntax, SyntaxKind::ARRAY_KW)
8571 }
8572 #[inline]
8573 pub fn is_token(&self) -> Option<SyntaxToken> {
8574 support::token(&self.syntax, SyntaxKind::IS_KW)
8575 }
8576 #[inline]
8577 pub fn json_token(&self) -> Option<SyntaxToken> {
8578 support::token(&self.syntax, SyntaxKind::JSON_KW)
8579 }
8580 #[inline]
8581 pub fn not_token(&self) -> Option<SyntaxToken> {
8582 support::token(&self.syntax, SyntaxKind::NOT_KW)
8583 }
8584}
8585
8586#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8587pub struct IsNotJsonObject {
8588 pub(crate) syntax: SyntaxNode,
8589}
8590impl IsNotJsonObject {
8591 #[inline]
8592 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
8593 support::child(&self.syntax)
8594 }
8595 #[inline]
8596 pub fn is_token(&self) -> Option<SyntaxToken> {
8597 support::token(&self.syntax, SyntaxKind::IS_KW)
8598 }
8599 #[inline]
8600 pub fn json_token(&self) -> Option<SyntaxToken> {
8601 support::token(&self.syntax, SyntaxKind::JSON_KW)
8602 }
8603 #[inline]
8604 pub fn not_token(&self) -> Option<SyntaxToken> {
8605 support::token(&self.syntax, SyntaxKind::NOT_KW)
8606 }
8607 #[inline]
8608 pub fn object_token(&self) -> Option<SyntaxToken> {
8609 support::token(&self.syntax, SyntaxKind::OBJECT_KW)
8610 }
8611}
8612
8613#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8614pub struct IsNotJsonScalar {
8615 pub(crate) syntax: SyntaxNode,
8616}
8617impl IsNotJsonScalar {
8618 #[inline]
8619 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
8620 support::child(&self.syntax)
8621 }
8622 #[inline]
8623 pub fn is_token(&self) -> Option<SyntaxToken> {
8624 support::token(&self.syntax, SyntaxKind::IS_KW)
8625 }
8626 #[inline]
8627 pub fn json_token(&self) -> Option<SyntaxToken> {
8628 support::token(&self.syntax, SyntaxKind::JSON_KW)
8629 }
8630 #[inline]
8631 pub fn not_token(&self) -> Option<SyntaxToken> {
8632 support::token(&self.syntax, SyntaxKind::NOT_KW)
8633 }
8634 #[inline]
8635 pub fn scalar_token(&self) -> Option<SyntaxToken> {
8636 support::token(&self.syntax, SyntaxKind::SCALAR_KW)
8637 }
8638}
8639
8640#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8641pub struct IsNotJsonValue {
8642 pub(crate) syntax: SyntaxNode,
8643}
8644impl IsNotJsonValue {
8645 #[inline]
8646 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
8647 support::child(&self.syntax)
8648 }
8649 #[inline]
8650 pub fn is_token(&self) -> Option<SyntaxToken> {
8651 support::token(&self.syntax, SyntaxKind::IS_KW)
8652 }
8653 #[inline]
8654 pub fn json_token(&self) -> Option<SyntaxToken> {
8655 support::token(&self.syntax, SyntaxKind::JSON_KW)
8656 }
8657 #[inline]
8658 pub fn not_token(&self) -> Option<SyntaxToken> {
8659 support::token(&self.syntax, SyntaxKind::NOT_KW)
8660 }
8661 #[inline]
8662 pub fn value_token(&self) -> Option<SyntaxToken> {
8663 support::token(&self.syntax, SyntaxKind::VALUE_KW)
8664 }
8665}
8666
8667#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8668pub struct IsNotNormalized {
8669 pub(crate) syntax: SyntaxNode,
8670}
8671impl IsNotNormalized {
8672 #[inline]
8673 pub fn unicode_normal_form(&self) -> Option<UnicodeNormalForm> {
8674 support::child(&self.syntax)
8675 }
8676 #[inline]
8677 pub fn is_token(&self) -> Option<SyntaxToken> {
8678 support::token(&self.syntax, SyntaxKind::IS_KW)
8679 }
8680 #[inline]
8681 pub fn normalized_token(&self) -> Option<SyntaxToken> {
8682 support::token(&self.syntax, SyntaxKind::NORMALIZED_KW)
8683 }
8684 #[inline]
8685 pub fn not_token(&self) -> Option<SyntaxToken> {
8686 support::token(&self.syntax, SyntaxKind::NOT_KW)
8687 }
8688}
8689
8690#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8691pub struct Join {
8692 pub(crate) syntax: SyntaxNode,
8693}
8694impl Join {
8695 #[inline]
8696 pub fn from_item(&self) -> Option<FromItem> {
8697 support::child(&self.syntax)
8698 }
8699 #[inline]
8700 pub fn join_type(&self) -> Option<JoinType> {
8701 support::child(&self.syntax)
8702 }
8703 #[inline]
8704 pub fn on_clause(&self) -> Option<OnClause> {
8705 support::child(&self.syntax)
8706 }
8707 #[inline]
8708 pub fn using_clause(&self) -> Option<JoinUsingClause> {
8709 support::child(&self.syntax)
8710 }
8711 #[inline]
8712 pub fn natural_token(&self) -> Option<SyntaxToken> {
8713 support::token(&self.syntax, SyntaxKind::NATURAL_KW)
8714 }
8715}
8716
8717#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8718pub struct JoinCross {
8719 pub(crate) syntax: SyntaxNode,
8720}
8721impl JoinCross {
8722 #[inline]
8723 pub fn cross_token(&self) -> Option<SyntaxToken> {
8724 support::token(&self.syntax, SyntaxKind::CROSS_KW)
8725 }
8726 #[inline]
8727 pub fn join_token(&self) -> Option<SyntaxToken> {
8728 support::token(&self.syntax, SyntaxKind::JOIN_KW)
8729 }
8730}
8731
8732#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8733pub struct JoinExpr {
8734 pub(crate) syntax: SyntaxNode,
8735}
8736impl JoinExpr {
8737 #[inline]
8738 pub fn from_item(&self) -> Option<FromItem> {
8739 support::child(&self.syntax)
8740 }
8741 #[inline]
8742 pub fn join(&self) -> Option<Join> {
8743 support::child(&self.syntax)
8744 }
8745 #[inline]
8746 pub fn join_expr(&self) -> Option<JoinExpr> {
8747 support::child(&self.syntax)
8748 }
8749}
8750
8751#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8752pub struct JoinFull {
8753 pub(crate) syntax: SyntaxNode,
8754}
8755impl JoinFull {
8756 #[inline]
8757 pub fn full_token(&self) -> Option<SyntaxToken> {
8758 support::token(&self.syntax, SyntaxKind::FULL_KW)
8759 }
8760 #[inline]
8761 pub fn join_token(&self) -> Option<SyntaxToken> {
8762 support::token(&self.syntax, SyntaxKind::JOIN_KW)
8763 }
8764 #[inline]
8765 pub fn outer_token(&self) -> Option<SyntaxToken> {
8766 support::token(&self.syntax, SyntaxKind::OUTER_KW)
8767 }
8768}
8769
8770#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8771pub struct JoinInner {
8772 pub(crate) syntax: SyntaxNode,
8773}
8774impl JoinInner {
8775 #[inline]
8776 pub fn inner_token(&self) -> Option<SyntaxToken> {
8777 support::token(&self.syntax, SyntaxKind::INNER_KW)
8778 }
8779 #[inline]
8780 pub fn join_token(&self) -> Option<SyntaxToken> {
8781 support::token(&self.syntax, SyntaxKind::JOIN_KW)
8782 }
8783}
8784
8785#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8786pub struct JoinLeft {
8787 pub(crate) syntax: SyntaxNode,
8788}
8789impl JoinLeft {
8790 #[inline]
8791 pub fn join_token(&self) -> Option<SyntaxToken> {
8792 support::token(&self.syntax, SyntaxKind::JOIN_KW)
8793 }
8794 #[inline]
8795 pub fn left_token(&self) -> Option<SyntaxToken> {
8796 support::token(&self.syntax, SyntaxKind::LEFT_KW)
8797 }
8798 #[inline]
8799 pub fn outer_token(&self) -> Option<SyntaxToken> {
8800 support::token(&self.syntax, SyntaxKind::OUTER_KW)
8801 }
8802}
8803
8804#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8805pub struct JoinRight {
8806 pub(crate) syntax: SyntaxNode,
8807}
8808impl JoinRight {
8809 #[inline]
8810 pub fn join_token(&self) -> Option<SyntaxToken> {
8811 support::token(&self.syntax, SyntaxKind::JOIN_KW)
8812 }
8813 #[inline]
8814 pub fn outer_token(&self) -> Option<SyntaxToken> {
8815 support::token(&self.syntax, SyntaxKind::OUTER_KW)
8816 }
8817 #[inline]
8818 pub fn right_token(&self) -> Option<SyntaxToken> {
8819 support::token(&self.syntax, SyntaxKind::RIGHT_KW)
8820 }
8821}
8822
8823#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8824pub struct JoinUsingClause {
8825 pub(crate) syntax: SyntaxNode,
8826}
8827impl JoinUsingClause {
8828 #[inline]
8829 pub fn alias(&self) -> Option<Alias> {
8830 support::child(&self.syntax)
8831 }
8832 #[inline]
8833 pub fn column_list(&self) -> Option<ColumnList> {
8834 support::child(&self.syntax)
8835 }
8836 #[inline]
8837 pub fn using_token(&self) -> Option<SyntaxToken> {
8838 support::token(&self.syntax, SyntaxKind::USING_KW)
8839 }
8840}
8841
8842#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8843pub struct JsonArrayAggFn {
8844 pub(crate) syntax: SyntaxNode,
8845}
8846impl JsonArrayAggFn {
8847 #[inline]
8848 pub fn expr(&self) -> Option<Expr> {
8849 support::child(&self.syntax)
8850 }
8851 #[inline]
8852 pub fn json_null_clause(&self) -> Option<JsonNullClause> {
8853 support::child(&self.syntax)
8854 }
8855 #[inline]
8856 pub fn json_returning_clause(&self) -> Option<JsonReturningClause> {
8857 support::child(&self.syntax)
8858 }
8859 #[inline]
8860 pub fn json_select_formats(&self) -> AstChildren<JsonSelectFormat> {
8861 support::children(&self.syntax)
8862 }
8863 #[inline]
8864 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
8865 support::token(&self.syntax, SyntaxKind::L_PAREN)
8866 }
8867 #[inline]
8868 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
8869 support::token(&self.syntax, SyntaxKind::R_PAREN)
8870 }
8871 #[inline]
8872 pub fn json_arrayagg_token(&self) -> Option<SyntaxToken> {
8873 support::token(&self.syntax, SyntaxKind::JSON_ARRAYAGG_KW)
8874 }
8875}
8876
8877#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8878pub struct JsonArrayFn {
8879 pub(crate) syntax: SyntaxNode,
8880}
8881impl JsonArrayFn {
8882 #[inline]
8883 pub fn json_expr_formats(&self) -> AstChildren<JsonExprFormat> {
8884 support::children(&self.syntax)
8885 }
8886 #[inline]
8887 pub fn json_null_clause(&self) -> Option<JsonNullClause> {
8888 support::child(&self.syntax)
8889 }
8890 #[inline]
8891 pub fn json_returning_clause(&self) -> Option<JsonReturningClause> {
8892 support::child(&self.syntax)
8893 }
8894 #[inline]
8895 pub fn json_select_formats(&self) -> AstChildren<JsonSelectFormat> {
8896 support::children(&self.syntax)
8897 }
8898 #[inline]
8899 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
8900 support::token(&self.syntax, SyntaxKind::L_PAREN)
8901 }
8902 #[inline]
8903 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
8904 support::token(&self.syntax, SyntaxKind::R_PAREN)
8905 }
8906 #[inline]
8907 pub fn json_array_token(&self) -> Option<SyntaxToken> {
8908 support::token(&self.syntax, SyntaxKind::JSON_ARRAY_KW)
8909 }
8910}
8911
8912#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8913pub struct JsonBehaviorClause {
8914 pub(crate) syntax: SyntaxNode,
8915}
8916impl JsonBehaviorClause {
8917 #[inline]
8918 pub fn json_behavior(&self) -> Option<JsonBehavior> {
8919 support::child(&self.syntax)
8920 }
8921}
8922
8923#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8924pub struct JsonBehaviorDefault {
8925 pub(crate) syntax: SyntaxNode,
8926}
8927impl JsonBehaviorDefault {
8928 #[inline]
8929 pub fn expr(&self) -> Option<Expr> {
8930 support::child(&self.syntax)
8931 }
8932 #[inline]
8933 pub fn default_token(&self) -> Option<SyntaxToken> {
8934 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
8935 }
8936}
8937
8938#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8939pub struct JsonBehaviorEmptyArray {
8940 pub(crate) syntax: SyntaxNode,
8941}
8942impl JsonBehaviorEmptyArray {
8943 #[inline]
8944 pub fn array_token(&self) -> Option<SyntaxToken> {
8945 support::token(&self.syntax, SyntaxKind::ARRAY_KW)
8946 }
8947 #[inline]
8948 pub fn empty_token(&self) -> Option<SyntaxToken> {
8949 support::token(&self.syntax, SyntaxKind::EMPTY_KW)
8950 }
8951}
8952
8953#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8954pub struct JsonBehaviorEmptyObject {
8955 pub(crate) syntax: SyntaxNode,
8956}
8957impl JsonBehaviorEmptyObject {
8958 #[inline]
8959 pub fn empty_token(&self) -> Option<SyntaxToken> {
8960 support::token(&self.syntax, SyntaxKind::EMPTY_KW)
8961 }
8962 #[inline]
8963 pub fn object_token(&self) -> Option<SyntaxToken> {
8964 support::token(&self.syntax, SyntaxKind::OBJECT_KW)
8965 }
8966}
8967
8968#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8969pub struct JsonBehaviorError {
8970 pub(crate) syntax: SyntaxNode,
8971}
8972impl JsonBehaviorError {
8973 #[inline]
8974 pub fn error_token(&self) -> Option<SyntaxToken> {
8975 support::token(&self.syntax, SyntaxKind::ERROR_KW)
8976 }
8977}
8978
8979#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8980pub struct JsonBehaviorFalse {
8981 pub(crate) syntax: SyntaxNode,
8982}
8983impl JsonBehaviorFalse {
8984 #[inline]
8985 pub fn false_token(&self) -> Option<SyntaxToken> {
8986 support::token(&self.syntax, SyntaxKind::FALSE_KW)
8987 }
8988}
8989
8990#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8991pub struct JsonBehaviorNull {
8992 pub(crate) syntax: SyntaxNode,
8993}
8994impl JsonBehaviorNull {
8995 #[inline]
8996 pub fn null_token(&self) -> Option<SyntaxToken> {
8997 support::token(&self.syntax, SyntaxKind::NULL_KW)
8998 }
8999}
9000
9001#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9002pub struct JsonBehaviorTrue {
9003 pub(crate) syntax: SyntaxNode,
9004}
9005impl JsonBehaviorTrue {
9006 #[inline]
9007 pub fn true_token(&self) -> Option<SyntaxToken> {
9008 support::token(&self.syntax, SyntaxKind::TRUE_KW)
9009 }
9010}
9011
9012#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9013pub struct JsonBehaviorUnknown {
9014 pub(crate) syntax: SyntaxNode,
9015}
9016impl JsonBehaviorUnknown {
9017 #[inline]
9018 pub fn unknown_token(&self) -> Option<SyntaxToken> {
9019 support::token(&self.syntax, SyntaxKind::UNKNOWN_KW)
9020 }
9021}
9022
9023#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9024pub struct JsonEncodingClause {
9025 pub(crate) syntax: SyntaxNode,
9026}
9027impl JsonEncodingClause {
9028 #[inline]
9029 pub fn name_ref(&self) -> Option<NameRef> {
9030 support::child(&self.syntax)
9031 }
9032 #[inline]
9033 pub fn encoding_token(&self) -> Option<SyntaxToken> {
9034 support::token(&self.syntax, SyntaxKind::ENCODING_KW)
9035 }
9036}
9037
9038#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9039pub struct JsonExistsFn {
9040 pub(crate) syntax: SyntaxNode,
9041}
9042impl JsonExistsFn {
9043 #[inline]
9044 pub fn expr(&self) -> Option<Expr> {
9045 support::child(&self.syntax)
9046 }
9047 #[inline]
9048 pub fn json_format_clause(&self) -> Option<JsonFormatClause> {
9049 support::child(&self.syntax)
9050 }
9051 #[inline]
9052 pub fn json_on_error_clause(&self) -> Option<JsonOnErrorClause> {
9053 support::child(&self.syntax)
9054 }
9055 #[inline]
9056 pub fn json_passing_clause(&self) -> Option<JsonPassingClause> {
9057 support::child(&self.syntax)
9058 }
9059 #[inline]
9060 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
9061 support::token(&self.syntax, SyntaxKind::L_PAREN)
9062 }
9063 #[inline]
9064 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
9065 support::token(&self.syntax, SyntaxKind::R_PAREN)
9066 }
9067 #[inline]
9068 pub fn comma_token(&self) -> Option<SyntaxToken> {
9069 support::token(&self.syntax, SyntaxKind::COMMA)
9070 }
9071 #[inline]
9072 pub fn json_exists_token(&self) -> Option<SyntaxToken> {
9073 support::token(&self.syntax, SyntaxKind::JSON_EXISTS_KW)
9074 }
9075}
9076
9077#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9078pub struct JsonExprFormat {
9079 pub(crate) syntax: SyntaxNode,
9080}
9081impl JsonExprFormat {
9082 #[inline]
9083 pub fn expr(&self) -> Option<Expr> {
9084 support::child(&self.syntax)
9085 }
9086 #[inline]
9087 pub fn json_format_clause(&self) -> Option<JsonFormatClause> {
9088 support::child(&self.syntax)
9089 }
9090}
9091
9092#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9093pub struct JsonFn {
9094 pub(crate) syntax: SyntaxNode,
9095}
9096impl JsonFn {
9097 #[inline]
9098 pub fn json_expr_format(&self) -> Option<JsonExprFormat> {
9099 support::child(&self.syntax)
9100 }
9101 #[inline]
9102 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
9103 support::child(&self.syntax)
9104 }
9105 #[inline]
9106 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
9107 support::token(&self.syntax, SyntaxKind::L_PAREN)
9108 }
9109 #[inline]
9110 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
9111 support::token(&self.syntax, SyntaxKind::R_PAREN)
9112 }
9113 #[inline]
9114 pub fn json_token(&self) -> Option<SyntaxToken> {
9115 support::token(&self.syntax, SyntaxKind::JSON_KW)
9116 }
9117}
9118
9119#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9120pub struct JsonFormatClause {
9121 pub(crate) syntax: SyntaxNode,
9122}
9123impl JsonFormatClause {
9124 #[inline]
9125 pub fn json_encoding_clause(&self) -> Option<JsonEncodingClause> {
9126 support::child(&self.syntax)
9127 }
9128 #[inline]
9129 pub fn format_token(&self) -> Option<SyntaxToken> {
9130 support::token(&self.syntax, SyntaxKind::FORMAT_KW)
9131 }
9132 #[inline]
9133 pub fn json_token(&self) -> Option<SyntaxToken> {
9134 support::token(&self.syntax, SyntaxKind::JSON_KW)
9135 }
9136}
9137
9138#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9139pub struct JsonKeyValue {
9140 pub(crate) syntax: SyntaxNode,
9141}
9142impl JsonKeyValue {
9143 #[inline]
9144 pub fn expr(&self) -> Option<Expr> {
9145 support::child(&self.syntax)
9146 }
9147 #[inline]
9148 pub fn json_value_expr(&self) -> Option<JsonValueExpr> {
9149 support::child(&self.syntax)
9150 }
9151 #[inline]
9152 pub fn colon_token(&self) -> Option<SyntaxToken> {
9153 support::token(&self.syntax, SyntaxKind::COLON)
9154 }
9155}
9156
9157#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9158pub struct JsonKeysUniqueClause {
9159 pub(crate) syntax: SyntaxNode,
9160}
9161impl JsonKeysUniqueClause {
9162 #[inline]
9163 pub fn keys_token(&self) -> Option<SyntaxToken> {
9164 support::token(&self.syntax, SyntaxKind::KEYS_KW)
9165 }
9166 #[inline]
9167 pub fn unique_token(&self) -> Option<SyntaxToken> {
9168 support::token(&self.syntax, SyntaxKind::UNIQUE_KW)
9169 }
9170 #[inline]
9171 pub fn with_token(&self) -> Option<SyntaxToken> {
9172 support::token(&self.syntax, SyntaxKind::WITH_KW)
9173 }
9174 #[inline]
9175 pub fn without_token(&self) -> Option<SyntaxToken> {
9176 support::token(&self.syntax, SyntaxKind::WITHOUT_KW)
9177 }
9178}
9179
9180#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9181pub struct JsonNullClause {
9182 pub(crate) syntax: SyntaxNode,
9183}
9184impl JsonNullClause {
9185 #[inline]
9186 pub fn absent_token(&self) -> Option<SyntaxToken> {
9187 support::token(&self.syntax, SyntaxKind::ABSENT_KW)
9188 }
9189 #[inline]
9190 pub fn null_token(&self) -> Option<SyntaxToken> {
9191 support::token(&self.syntax, SyntaxKind::NULL_KW)
9192 }
9193 #[inline]
9194 pub fn on_token(&self) -> Option<SyntaxToken> {
9195 support::token(&self.syntax, SyntaxKind::ON_KW)
9196 }
9197}
9198
9199#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9200pub struct JsonObjectAggFn {
9201 pub(crate) syntax: SyntaxNode,
9202}
9203impl JsonObjectAggFn {
9204 #[inline]
9205 pub fn json_key_value(&self) -> Option<JsonKeyValue> {
9206 support::child(&self.syntax)
9207 }
9208 #[inline]
9209 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
9210 support::child(&self.syntax)
9211 }
9212 #[inline]
9213 pub fn json_null_clause(&self) -> Option<JsonNullClause> {
9214 support::child(&self.syntax)
9215 }
9216 #[inline]
9217 pub fn returning_clause(&self) -> Option<ReturningClause> {
9218 support::child(&self.syntax)
9219 }
9220 #[inline]
9221 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
9222 support::token(&self.syntax, SyntaxKind::L_PAREN)
9223 }
9224 #[inline]
9225 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
9226 support::token(&self.syntax, SyntaxKind::R_PAREN)
9227 }
9228 #[inline]
9229 pub fn json_objectagg_token(&self) -> Option<SyntaxToken> {
9230 support::token(&self.syntax, SyntaxKind::JSON_OBJECTAGG_KW)
9231 }
9232}
9233
9234#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9235pub struct JsonObjectFn {
9236 pub(crate) syntax: SyntaxNode,
9237}
9238impl JsonObjectFn {
9239 #[inline]
9240 pub fn json_key_values(&self) -> AstChildren<JsonKeyValue> {
9241 support::children(&self.syntax)
9242 }
9243 #[inline]
9244 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
9245 support::child(&self.syntax)
9246 }
9247 #[inline]
9248 pub fn json_null_clause(&self) -> Option<JsonNullClause> {
9249 support::child(&self.syntax)
9250 }
9251 #[inline]
9252 pub fn json_returning_clause(&self) -> Option<JsonReturningClause> {
9253 support::child(&self.syntax)
9254 }
9255 #[inline]
9256 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
9257 support::token(&self.syntax, SyntaxKind::L_PAREN)
9258 }
9259 #[inline]
9260 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
9261 support::token(&self.syntax, SyntaxKind::R_PAREN)
9262 }
9263 #[inline]
9264 pub fn json_object_token(&self) -> Option<SyntaxToken> {
9265 support::token(&self.syntax, SyntaxKind::JSON_OBJECT_KW)
9266 }
9267}
9268
9269#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9270pub struct JsonOnEmptyClause {
9271 pub(crate) syntax: SyntaxNode,
9272}
9273impl JsonOnEmptyClause {
9274 #[inline]
9275 pub fn json_behavior(&self) -> Option<JsonBehavior> {
9276 support::child(&self.syntax)
9277 }
9278 #[inline]
9279 pub fn empty_token(&self) -> Option<SyntaxToken> {
9280 support::token(&self.syntax, SyntaxKind::EMPTY_KW)
9281 }
9282 #[inline]
9283 pub fn on_token(&self) -> Option<SyntaxToken> {
9284 support::token(&self.syntax, SyntaxKind::ON_KW)
9285 }
9286}
9287
9288#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9289pub struct JsonOnErrorClause {
9290 pub(crate) syntax: SyntaxNode,
9291}
9292impl JsonOnErrorClause {
9293 #[inline]
9294 pub fn json_behavior(&self) -> Option<JsonBehavior> {
9295 support::child(&self.syntax)
9296 }
9297 #[inline]
9298 pub fn error_token(&self) -> Option<SyntaxToken> {
9299 support::token(&self.syntax, SyntaxKind::ERROR_KW)
9300 }
9301 #[inline]
9302 pub fn on_token(&self) -> Option<SyntaxToken> {
9303 support::token(&self.syntax, SyntaxKind::ON_KW)
9304 }
9305}
9306
9307#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9308pub struct JsonPassingArg {
9309 pub(crate) syntax: SyntaxNode,
9310}
9311impl JsonPassingArg {
9312 #[inline]
9313 pub fn expr(&self) -> Option<Expr> {
9314 support::child(&self.syntax)
9315 }
9316}
9317
9318#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9319pub struct JsonPassingClause {
9320 pub(crate) syntax: SyntaxNode,
9321}
9322impl JsonPassingClause {
9323 #[inline]
9324 pub fn json_passing_args(&self) -> AstChildren<JsonPassingArg> {
9325 support::children(&self.syntax)
9326 }
9327 #[inline]
9328 pub fn passing_token(&self) -> Option<SyntaxToken> {
9329 support::token(&self.syntax, SyntaxKind::PASSING_KW)
9330 }
9331}
9332
9333#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9334pub struct JsonPathClause {
9335 pub(crate) syntax: SyntaxNode,
9336}
9337impl JsonPathClause {
9338 #[inline]
9339 pub fn expr(&self) -> Option<Expr> {
9340 support::child(&self.syntax)
9341 }
9342 #[inline]
9343 pub fn path_token(&self) -> Option<SyntaxToken> {
9344 support::token(&self.syntax, SyntaxKind::PATH_KW)
9345 }
9346}
9347
9348#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9349pub struct JsonQueryFn {
9350 pub(crate) syntax: SyntaxNode,
9351}
9352impl JsonQueryFn {
9353 #[inline]
9354 pub fn expr(&self) -> Option<Expr> {
9355 support::child(&self.syntax)
9356 }
9357 #[inline]
9358 pub fn json_behavior_clause(&self) -> Option<JsonBehaviorClause> {
9359 support::child(&self.syntax)
9360 }
9361 #[inline]
9362 pub fn json_format_clause(&self) -> Option<JsonFormatClause> {
9363 support::child(&self.syntax)
9364 }
9365 #[inline]
9366 pub fn json_passing_clause(&self) -> Option<JsonPassingClause> {
9367 support::child(&self.syntax)
9368 }
9369 #[inline]
9370 pub fn json_quotes_clause(&self) -> Option<JsonQuotesClause> {
9371 support::child(&self.syntax)
9372 }
9373 #[inline]
9374 pub fn json_returning_clause(&self) -> Option<JsonReturningClause> {
9375 support::child(&self.syntax)
9376 }
9377 #[inline]
9378 pub fn json_wrapper_behavior_clause(&self) -> Option<JsonWrapperBehaviorClause> {
9379 support::child(&self.syntax)
9380 }
9381 #[inline]
9382 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
9383 support::token(&self.syntax, SyntaxKind::L_PAREN)
9384 }
9385 #[inline]
9386 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
9387 support::token(&self.syntax, SyntaxKind::R_PAREN)
9388 }
9389 #[inline]
9390 pub fn comma_token(&self) -> Option<SyntaxToken> {
9391 support::token(&self.syntax, SyntaxKind::COMMA)
9392 }
9393 #[inline]
9394 pub fn json_query_token(&self) -> Option<SyntaxToken> {
9395 support::token(&self.syntax, SyntaxKind::JSON_QUERY_KW)
9396 }
9397}
9398
9399#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9400pub struct JsonQuotesClause {
9401 pub(crate) syntax: SyntaxNode,
9402}
9403impl JsonQuotesClause {
9404 #[inline]
9405 pub fn keep_token(&self) -> Option<SyntaxToken> {
9406 support::token(&self.syntax, SyntaxKind::KEEP_KW)
9407 }
9408 #[inline]
9409 pub fn omit_token(&self) -> Option<SyntaxToken> {
9410 support::token(&self.syntax, SyntaxKind::OMIT_KW)
9411 }
9412 #[inline]
9413 pub fn quotes_token(&self) -> Option<SyntaxToken> {
9414 support::token(&self.syntax, SyntaxKind::QUOTES_KW)
9415 }
9416}
9417
9418#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9419pub struct JsonReturningClause {
9420 pub(crate) syntax: SyntaxNode,
9421}
9422impl JsonReturningClause {
9423 #[inline]
9424 pub fn ty(&self) -> Option<Type> {
9425 support::child(&self.syntax)
9426 }
9427 #[inline]
9428 pub fn returning_token(&self) -> Option<SyntaxToken> {
9429 support::token(&self.syntax, SyntaxKind::RETURNING_KW)
9430 }
9431}
9432
9433#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9434pub struct JsonScalarFn {
9435 pub(crate) syntax: SyntaxNode,
9436}
9437impl JsonScalarFn {
9438 #[inline]
9439 pub fn expr(&self) -> Option<Expr> {
9440 support::child(&self.syntax)
9441 }
9442 #[inline]
9443 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
9444 support::token(&self.syntax, SyntaxKind::L_PAREN)
9445 }
9446 #[inline]
9447 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
9448 support::token(&self.syntax, SyntaxKind::R_PAREN)
9449 }
9450 #[inline]
9451 pub fn json_scalar_token(&self) -> Option<SyntaxToken> {
9452 support::token(&self.syntax, SyntaxKind::JSON_SCALAR_KW)
9453 }
9454}
9455
9456#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9457pub struct JsonSelectFormat {
9458 pub(crate) syntax: SyntaxNode,
9459}
9460impl JsonSelectFormat {
9461 #[inline]
9462 pub fn json_format_clause(&self) -> Option<JsonFormatClause> {
9463 support::child(&self.syntax)
9464 }
9465 #[inline]
9466 pub fn select_variant(&self) -> Option<SelectVariant> {
9467 support::child(&self.syntax)
9468 }
9469}
9470
9471#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9472pub struct JsonSerializeFn {
9473 pub(crate) syntax: SyntaxNode,
9474}
9475impl JsonSerializeFn {
9476 #[inline]
9477 pub fn expr(&self) -> Option<Expr> {
9478 support::child(&self.syntax)
9479 }
9480 #[inline]
9481 pub fn json_format_clause(&self) -> Option<JsonFormatClause> {
9482 support::child(&self.syntax)
9483 }
9484 #[inline]
9485 pub fn json_returning_clause(&self) -> Option<JsonReturningClause> {
9486 support::child(&self.syntax)
9487 }
9488 #[inline]
9489 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
9490 support::token(&self.syntax, SyntaxKind::L_PAREN)
9491 }
9492 #[inline]
9493 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
9494 support::token(&self.syntax, SyntaxKind::R_PAREN)
9495 }
9496 #[inline]
9497 pub fn json_serialize_token(&self) -> Option<SyntaxToken> {
9498 support::token(&self.syntax, SyntaxKind::JSON_SERIALIZE_KW)
9499 }
9500}
9501
9502#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9503pub struct JsonTable {
9504 pub(crate) syntax: SyntaxNode,
9505}
9506impl JsonTable {
9507 #[inline]
9508 pub fn expr(&self) -> Option<Expr> {
9509 support::child(&self.syntax)
9510 }
9511 #[inline]
9512 pub fn json_format_clause(&self) -> Option<JsonFormatClause> {
9513 support::child(&self.syntax)
9514 }
9515 #[inline]
9516 pub fn json_on_error_clause(&self) -> Option<JsonOnErrorClause> {
9517 support::child(&self.syntax)
9518 }
9519 #[inline]
9520 pub fn json_passing_clause(&self) -> Option<JsonPassingClause> {
9521 support::child(&self.syntax)
9522 }
9523 #[inline]
9524 pub fn json_table_column_list(&self) -> Option<JsonTableColumnList> {
9525 support::child(&self.syntax)
9526 }
9527 #[inline]
9528 pub fn name(&self) -> Option<Name> {
9529 support::child(&self.syntax)
9530 }
9531 #[inline]
9532 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
9533 support::token(&self.syntax, SyntaxKind::L_PAREN)
9534 }
9535 #[inline]
9536 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
9537 support::token(&self.syntax, SyntaxKind::R_PAREN)
9538 }
9539 #[inline]
9540 pub fn comma_token(&self) -> Option<SyntaxToken> {
9541 support::token(&self.syntax, SyntaxKind::COMMA)
9542 }
9543 #[inline]
9544 pub fn as_token(&self) -> Option<SyntaxToken> {
9545 support::token(&self.syntax, SyntaxKind::AS_KW)
9546 }
9547 #[inline]
9548 pub fn json_table_token(&self) -> Option<SyntaxToken> {
9549 support::token(&self.syntax, SyntaxKind::JSON_TABLE_KW)
9550 }
9551}
9552
9553#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9554pub struct JsonTableColumn {
9555 pub(crate) syntax: SyntaxNode,
9556}
9557impl JsonTableColumn {
9558 #[inline]
9559 pub fn expr(&self) -> Option<Expr> {
9560 support::child(&self.syntax)
9561 }
9562 #[inline]
9563 pub fn json_format_clause(&self) -> Option<JsonFormatClause> {
9564 support::child(&self.syntax)
9565 }
9566 #[inline]
9567 pub fn json_on_empty_clause(&self) -> Option<JsonOnEmptyClause> {
9568 support::child(&self.syntax)
9569 }
9570 #[inline]
9571 pub fn json_on_error_clause(&self) -> Option<JsonOnErrorClause> {
9572 support::child(&self.syntax)
9573 }
9574 #[inline]
9575 pub fn json_path_clause(&self) -> Option<JsonPathClause> {
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_table_column_list(&self) -> Option<JsonTableColumnList> {
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 name(&self) -> Option<Name> {
9592 support::child(&self.syntax)
9593 }
9594 #[inline]
9595 pub fn ty(&self) -> Option<Type> {
9596 support::child(&self.syntax)
9597 }
9598 #[inline]
9599 pub fn as_token(&self) -> Option<SyntaxToken> {
9600 support::token(&self.syntax, SyntaxKind::AS_KW)
9601 }
9602 #[inline]
9603 pub fn exists_token(&self) -> Option<SyntaxToken> {
9604 support::token(&self.syntax, SyntaxKind::EXISTS_KW)
9605 }
9606 #[inline]
9607 pub fn for_token(&self) -> Option<SyntaxToken> {
9608 support::token(&self.syntax, SyntaxKind::FOR_KW)
9609 }
9610 #[inline]
9611 pub fn nested_token(&self) -> Option<SyntaxToken> {
9612 support::token(&self.syntax, SyntaxKind::NESTED_KW)
9613 }
9614 #[inline]
9615 pub fn ordinality_token(&self) -> Option<SyntaxToken> {
9616 support::token(&self.syntax, SyntaxKind::ORDINALITY_KW)
9617 }
9618 #[inline]
9619 pub fn path_token(&self) -> Option<SyntaxToken> {
9620 support::token(&self.syntax, SyntaxKind::PATH_KW)
9621 }
9622}
9623
9624#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9625pub struct JsonTableColumnList {
9626 pub(crate) syntax: SyntaxNode,
9627}
9628impl JsonTableColumnList {
9629 #[inline]
9630 pub fn json_table_columns(&self) -> AstChildren<JsonTableColumn> {
9631 support::children(&self.syntax)
9632 }
9633 #[inline]
9634 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
9635 support::token(&self.syntax, SyntaxKind::L_PAREN)
9636 }
9637 #[inline]
9638 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
9639 support::token(&self.syntax, SyntaxKind::R_PAREN)
9640 }
9641 #[inline]
9642 pub fn columns_token(&self) -> Option<SyntaxToken> {
9643 support::token(&self.syntax, SyntaxKind::COLUMNS_KW)
9644 }
9645}
9646
9647#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9648pub struct JsonValueExpr {
9649 pub(crate) syntax: SyntaxNode,
9650}
9651impl JsonValueExpr {
9652 #[inline]
9653 pub fn expr(&self) -> Option<Expr> {
9654 support::child(&self.syntax)
9655 }
9656 #[inline]
9657 pub fn json_format_clause(&self) -> Option<JsonFormatClause> {
9658 support::child(&self.syntax)
9659 }
9660}
9661
9662#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9663pub struct JsonValueFn {
9664 pub(crate) syntax: SyntaxNode,
9665}
9666impl JsonValueFn {
9667 #[inline]
9668 pub fn expr(&self) -> Option<Expr> {
9669 support::child(&self.syntax)
9670 }
9671 #[inline]
9672 pub fn json_behavior_clause(&self) -> Option<JsonBehaviorClause> {
9673 support::child(&self.syntax)
9674 }
9675 #[inline]
9676 pub fn json_format_clause(&self) -> Option<JsonFormatClause> {
9677 support::child(&self.syntax)
9678 }
9679 #[inline]
9680 pub fn json_passing_clause(&self) -> Option<JsonPassingClause> {
9681 support::child(&self.syntax)
9682 }
9683 #[inline]
9684 pub fn json_returning_clause(&self) -> Option<JsonReturningClause> {
9685 support::child(&self.syntax)
9686 }
9687 #[inline]
9688 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
9689 support::token(&self.syntax, SyntaxKind::L_PAREN)
9690 }
9691 #[inline]
9692 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
9693 support::token(&self.syntax, SyntaxKind::R_PAREN)
9694 }
9695 #[inline]
9696 pub fn comma_token(&self) -> Option<SyntaxToken> {
9697 support::token(&self.syntax, SyntaxKind::COMMA)
9698 }
9699 #[inline]
9700 pub fn json_value_token(&self) -> Option<SyntaxToken> {
9701 support::token(&self.syntax, SyntaxKind::JSON_VALUE_KW)
9702 }
9703}
9704
9705#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9706pub struct JsonWrapperBehaviorClause {
9707 pub(crate) syntax: SyntaxNode,
9708}
9709impl JsonWrapperBehaviorClause {
9710 #[inline]
9711 pub fn array_token(&self) -> Option<SyntaxToken> {
9712 support::token(&self.syntax, SyntaxKind::ARRAY_KW)
9713 }
9714 #[inline]
9715 pub fn conditional_token(&self) -> Option<SyntaxToken> {
9716 support::token(&self.syntax, SyntaxKind::CONDITIONAL_KW)
9717 }
9718 #[inline]
9719 pub fn unconditional_token(&self) -> Option<SyntaxToken> {
9720 support::token(&self.syntax, SyntaxKind::UNCONDITIONAL_KW)
9721 }
9722 #[inline]
9723 pub fn with_token(&self) -> Option<SyntaxToken> {
9724 support::token(&self.syntax, SyntaxKind::WITH_KW)
9725 }
9726 #[inline]
9727 pub fn without_token(&self) -> Option<SyntaxToken> {
9728 support::token(&self.syntax, SyntaxKind::WITHOUT_KW)
9729 }
9730 #[inline]
9731 pub fn wrapper_token(&self) -> Option<SyntaxToken> {
9732 support::token(&self.syntax, SyntaxKind::WRAPPER_KW)
9733 }
9734}
9735
9736#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9737pub struct LanguageFuncOption {
9738 pub(crate) syntax: SyntaxNode,
9739}
9740impl LanguageFuncOption {
9741 #[inline]
9742 pub fn name_ref(&self) -> Option<NameRef> {
9743 support::child(&self.syntax)
9744 }
9745 #[inline]
9746 pub fn language_token(&self) -> Option<SyntaxToken> {
9747 support::token(&self.syntax, SyntaxKind::LANGUAGE_KW)
9748 }
9749}
9750
9751#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9752pub struct LeakproofFuncOption {
9753 pub(crate) syntax: SyntaxNode,
9754}
9755impl LeakproofFuncOption {
9756 #[inline]
9757 pub fn leakproof_token(&self) -> Option<SyntaxToken> {
9758 support::token(&self.syntax, SyntaxKind::LEAKPROOF_KW)
9759 }
9760 #[inline]
9761 pub fn not_token(&self) -> Option<SyntaxToken> {
9762 support::token(&self.syntax, SyntaxKind::NOT_KW)
9763 }
9764}
9765
9766#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9767pub struct LikeClause {
9768 pub(crate) syntax: SyntaxNode,
9769}
9770impl LikeClause {
9771 #[inline]
9772 pub fn like_options(&self) -> AstChildren<LikeOption> {
9773 support::children(&self.syntax)
9774 }
9775 #[inline]
9776 pub fn path(&self) -> Option<Path> {
9777 support::child(&self.syntax)
9778 }
9779 #[inline]
9780 pub fn like_token(&self) -> Option<SyntaxToken> {
9781 support::token(&self.syntax, SyntaxKind::LIKE_KW)
9782 }
9783}
9784
9785#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9786pub struct LikeOption {
9787 pub(crate) syntax: SyntaxNode,
9788}
9789impl LikeOption {
9790 #[inline]
9791 pub fn all_token(&self) -> Option<SyntaxToken> {
9792 support::token(&self.syntax, SyntaxKind::ALL_KW)
9793 }
9794 #[inline]
9795 pub fn comments_token(&self) -> Option<SyntaxToken> {
9796 support::token(&self.syntax, SyntaxKind::COMMENTS_KW)
9797 }
9798 #[inline]
9799 pub fn compression_token(&self) -> Option<SyntaxToken> {
9800 support::token(&self.syntax, SyntaxKind::COMPRESSION_KW)
9801 }
9802 #[inline]
9803 pub fn constraints_token(&self) -> Option<SyntaxToken> {
9804 support::token(&self.syntax, SyntaxKind::CONSTRAINTS_KW)
9805 }
9806 #[inline]
9807 pub fn defaults_token(&self) -> Option<SyntaxToken> {
9808 support::token(&self.syntax, SyntaxKind::DEFAULTS_KW)
9809 }
9810 #[inline]
9811 pub fn excluding_token(&self) -> Option<SyntaxToken> {
9812 support::token(&self.syntax, SyntaxKind::EXCLUDING_KW)
9813 }
9814 #[inline]
9815 pub fn generated_token(&self) -> Option<SyntaxToken> {
9816 support::token(&self.syntax, SyntaxKind::GENERATED_KW)
9817 }
9818 #[inline]
9819 pub fn identity_token(&self) -> Option<SyntaxToken> {
9820 support::token(&self.syntax, SyntaxKind::IDENTITY_KW)
9821 }
9822 #[inline]
9823 pub fn including_token(&self) -> Option<SyntaxToken> {
9824 support::token(&self.syntax, SyntaxKind::INCLUDING_KW)
9825 }
9826 #[inline]
9827 pub fn indexes_token(&self) -> Option<SyntaxToken> {
9828 support::token(&self.syntax, SyntaxKind::INDEXES_KW)
9829 }
9830 #[inline]
9831 pub fn statistics_token(&self) -> Option<SyntaxToken> {
9832 support::token(&self.syntax, SyntaxKind::STATISTICS_KW)
9833 }
9834 #[inline]
9835 pub fn storage_token(&self) -> Option<SyntaxToken> {
9836 support::token(&self.syntax, SyntaxKind::STORAGE_KW)
9837 }
9838}
9839
9840#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9841pub struct LimitClause {
9842 pub(crate) syntax: SyntaxNode,
9843}
9844impl LimitClause {
9845 #[inline]
9846 pub fn expr(&self) -> Option<Expr> {
9847 support::child(&self.syntax)
9848 }
9849 #[inline]
9850 pub fn all_token(&self) -> Option<SyntaxToken> {
9851 support::token(&self.syntax, SyntaxKind::ALL_KW)
9852 }
9853 #[inline]
9854 pub fn limit_token(&self) -> Option<SyntaxToken> {
9855 support::token(&self.syntax, SyntaxKind::LIMIT_KW)
9856 }
9857}
9858
9859#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9860pub struct LimitToTables {
9861 pub(crate) syntax: SyntaxNode,
9862}
9863impl LimitToTables {
9864 #[inline]
9865 pub fn name_refs(&self) -> AstChildren<NameRef> {
9866 support::children(&self.syntax)
9867 }
9868 #[inline]
9869 pub fn limit_token(&self) -> Option<SyntaxToken> {
9870 support::token(&self.syntax, SyntaxKind::LIMIT_KW)
9871 }
9872 #[inline]
9873 pub fn to_token(&self) -> Option<SyntaxToken> {
9874 support::token(&self.syntax, SyntaxKind::TO_KW)
9875 }
9876}
9877
9878#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9879pub struct Listen {
9880 pub(crate) syntax: SyntaxNode,
9881}
9882impl Listen {
9883 #[inline]
9884 pub fn name(&self) -> Option<Name> {
9885 support::child(&self.syntax)
9886 }
9887 #[inline]
9888 pub fn listen_token(&self) -> Option<SyntaxToken> {
9889 support::token(&self.syntax, SyntaxKind::LISTEN_KW)
9890 }
9891}
9892
9893#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9894pub struct Literal {
9895 pub(crate) syntax: SyntaxNode,
9896}
9897impl Literal {}
9898
9899#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9900pub struct Load {
9901 pub(crate) syntax: SyntaxNode,
9902}
9903impl Load {
9904 #[inline]
9905 pub fn literal(&self) -> Option<Literal> {
9906 support::child(&self.syntax)
9907 }
9908 #[inline]
9909 pub fn load_token(&self) -> Option<SyntaxToken> {
9910 support::token(&self.syntax, SyntaxKind::LOAD_KW)
9911 }
9912}
9913
9914#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9915pub struct Lock {
9916 pub(crate) syntax: SyntaxNode,
9917}
9918impl Lock {
9919 #[inline]
9920 pub fn table_list(&self) -> Option<TableList> {
9921 support::child(&self.syntax)
9922 }
9923 #[inline]
9924 pub fn lock_token(&self) -> Option<SyntaxToken> {
9925 support::token(&self.syntax, SyntaxKind::LOCK_KW)
9926 }
9927 #[inline]
9928 pub fn table_token(&self) -> Option<SyntaxToken> {
9929 support::token(&self.syntax, SyntaxKind::TABLE_KW)
9930 }
9931}
9932
9933#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9934pub struct LockingClause {
9935 pub(crate) syntax: SyntaxNode,
9936}
9937impl LockingClause {
9938 #[inline]
9939 pub fn for_token(&self) -> Option<SyntaxToken> {
9940 support::token(&self.syntax, SyntaxKind::FOR_KW)
9941 }
9942}
9943
9944#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9945pub struct Lteq {
9946 pub(crate) syntax: SyntaxNode,
9947}
9948impl Lteq {
9949 #[inline]
9950 pub fn l_angle_token(&self) -> Option<SyntaxToken> {
9951 support::token(&self.syntax, SyntaxKind::L_ANGLE)
9952 }
9953 #[inline]
9954 pub fn eq_token(&self) -> Option<SyntaxToken> {
9955 support::token(&self.syntax, SyntaxKind::EQ)
9956 }
9957}
9958
9959#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9960pub struct MatchFull {
9961 pub(crate) syntax: SyntaxNode,
9962}
9963impl MatchFull {
9964 #[inline]
9965 pub fn full_token(&self) -> Option<SyntaxToken> {
9966 support::token(&self.syntax, SyntaxKind::FULL_KW)
9967 }
9968 #[inline]
9969 pub fn match_token(&self) -> Option<SyntaxToken> {
9970 support::token(&self.syntax, SyntaxKind::MATCH_KW)
9971 }
9972}
9973
9974#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9975pub struct MatchPartial {
9976 pub(crate) syntax: SyntaxNode,
9977}
9978impl MatchPartial {
9979 #[inline]
9980 pub fn match_token(&self) -> Option<SyntaxToken> {
9981 support::token(&self.syntax, SyntaxKind::MATCH_KW)
9982 }
9983 #[inline]
9984 pub fn partial_token(&self) -> Option<SyntaxToken> {
9985 support::token(&self.syntax, SyntaxKind::PARTIAL_KW)
9986 }
9987}
9988
9989#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9990pub struct MatchSimple {
9991 pub(crate) syntax: SyntaxNode,
9992}
9993impl MatchSimple {
9994 #[inline]
9995 pub fn match_token(&self) -> Option<SyntaxToken> {
9996 support::token(&self.syntax, SyntaxKind::MATCH_KW)
9997 }
9998 #[inline]
9999 pub fn simple_token(&self) -> Option<SyntaxToken> {
10000 support::token(&self.syntax, SyntaxKind::SIMPLE_KW)
10001 }
10002}
10003
10004#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10005pub struct Materialized {
10006 pub(crate) syntax: SyntaxNode,
10007}
10008impl Materialized {
10009 #[inline]
10010 pub fn materialized_token(&self) -> Option<SyntaxToken> {
10011 support::token(&self.syntax, SyntaxKind::MATERIALIZED_KW)
10012 }
10013}
10014
10015#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10016pub struct Merge {
10017 pub(crate) syntax: SyntaxNode,
10018}
10019impl Merge {
10020 #[inline]
10021 pub fn alias(&self) -> Option<Alias> {
10022 support::child(&self.syntax)
10023 }
10024 #[inline]
10025 pub fn merge_when_clauses(&self) -> AstChildren<MergeWhenClause> {
10026 support::children(&self.syntax)
10027 }
10028 #[inline]
10029 pub fn relation_name(&self) -> Option<RelationName> {
10030 support::child(&self.syntax)
10031 }
10032 #[inline]
10033 pub fn using_on_clause(&self) -> Option<UsingOnClause> {
10034 support::child(&self.syntax)
10035 }
10036 #[inline]
10037 pub fn into_token(&self) -> Option<SyntaxToken> {
10038 support::token(&self.syntax, SyntaxKind::INTO_KW)
10039 }
10040 #[inline]
10041 pub fn merge_token(&self) -> Option<SyntaxToken> {
10042 support::token(&self.syntax, SyntaxKind::MERGE_KW)
10043 }
10044}
10045
10046#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10047pub struct MergeDelete {
10048 pub(crate) syntax: SyntaxNode,
10049}
10050impl MergeDelete {
10051 #[inline]
10052 pub fn delete_token(&self) -> Option<SyntaxToken> {
10053 support::token(&self.syntax, SyntaxKind::DELETE_KW)
10054 }
10055}
10056
10057#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10058pub struct MergeDoNothing {
10059 pub(crate) syntax: SyntaxNode,
10060}
10061impl MergeDoNothing {
10062 #[inline]
10063 pub fn do_token(&self) -> Option<SyntaxToken> {
10064 support::token(&self.syntax, SyntaxKind::DO_KW)
10065 }
10066 #[inline]
10067 pub fn nothing_token(&self) -> Option<SyntaxToken> {
10068 support::token(&self.syntax, SyntaxKind::NOTHING_KW)
10069 }
10070}
10071
10072#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10073pub struct MergeInsert {
10074 pub(crate) syntax: SyntaxNode,
10075}
10076impl MergeInsert {
10077 #[inline]
10078 pub fn column_list(&self) -> Option<ColumnList> {
10079 support::child(&self.syntax)
10080 }
10081 #[inline]
10082 pub fn values(&self) -> Option<Values> {
10083 support::child(&self.syntax)
10084 }
10085 #[inline]
10086 pub fn default_token(&self) -> Option<SyntaxToken> {
10087 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
10088 }
10089 #[inline]
10090 pub fn insert_token(&self) -> Option<SyntaxToken> {
10091 support::token(&self.syntax, SyntaxKind::INSERT_KW)
10092 }
10093 #[inline]
10094 pub fn overriding_token(&self) -> Option<SyntaxToken> {
10095 support::token(&self.syntax, SyntaxKind::OVERRIDING_KW)
10096 }
10097 #[inline]
10098 pub fn system_token(&self) -> Option<SyntaxToken> {
10099 support::token(&self.syntax, SyntaxKind::SYSTEM_KW)
10100 }
10101 #[inline]
10102 pub fn user_token(&self) -> Option<SyntaxToken> {
10103 support::token(&self.syntax, SyntaxKind::USER_KW)
10104 }
10105 #[inline]
10106 pub fn values_token(&self) -> Option<SyntaxToken> {
10107 support::token(&self.syntax, SyntaxKind::VALUES_KW)
10108 }
10109}
10110
10111#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10112pub struct MergeUpdate {
10113 pub(crate) syntax: SyntaxNode,
10114}
10115impl MergeUpdate {
10116 #[inline]
10117 pub fn set_clause(&self) -> Option<SetClause> {
10118 support::child(&self.syntax)
10119 }
10120 #[inline]
10121 pub fn set_token(&self) -> Option<SyntaxToken> {
10122 support::token(&self.syntax, SyntaxKind::SET_KW)
10123 }
10124 #[inline]
10125 pub fn update_token(&self) -> Option<SyntaxToken> {
10126 support::token(&self.syntax, SyntaxKind::UPDATE_KW)
10127 }
10128}
10129
10130#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10131pub struct MergeWhenMatched {
10132 pub(crate) syntax: SyntaxNode,
10133}
10134impl MergeWhenMatched {
10135 #[inline]
10136 pub fn expr(&self) -> Option<Expr> {
10137 support::child(&self.syntax)
10138 }
10139 #[inline]
10140 pub fn merge_action(&self) -> Option<MergeAction> {
10141 support::child(&self.syntax)
10142 }
10143 #[inline]
10144 pub fn and_token(&self) -> Option<SyntaxToken> {
10145 support::token(&self.syntax, SyntaxKind::AND_KW)
10146 }
10147 #[inline]
10148 pub fn matched_token(&self) -> Option<SyntaxToken> {
10149 support::token(&self.syntax, SyntaxKind::MATCHED_KW)
10150 }
10151 #[inline]
10152 pub fn then_token(&self) -> Option<SyntaxToken> {
10153 support::token(&self.syntax, SyntaxKind::THEN_KW)
10154 }
10155 #[inline]
10156 pub fn when_token(&self) -> Option<SyntaxToken> {
10157 support::token(&self.syntax, SyntaxKind::WHEN_KW)
10158 }
10159}
10160
10161#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10162pub struct MergeWhenNotMatchedSource {
10163 pub(crate) syntax: SyntaxNode,
10164}
10165impl MergeWhenNotMatchedSource {
10166 #[inline]
10167 pub fn expr(&self) -> Option<Expr> {
10168 support::child(&self.syntax)
10169 }
10170 #[inline]
10171 pub fn merge_action(&self) -> Option<MergeAction> {
10172 support::child(&self.syntax)
10173 }
10174 #[inline]
10175 pub fn and_token(&self) -> Option<SyntaxToken> {
10176 support::token(&self.syntax, SyntaxKind::AND_KW)
10177 }
10178 #[inline]
10179 pub fn by_token(&self) -> Option<SyntaxToken> {
10180 support::token(&self.syntax, SyntaxKind::BY_KW)
10181 }
10182 #[inline]
10183 pub fn matched_token(&self) -> Option<SyntaxToken> {
10184 support::token(&self.syntax, SyntaxKind::MATCHED_KW)
10185 }
10186 #[inline]
10187 pub fn not_token(&self) -> Option<SyntaxToken> {
10188 support::token(&self.syntax, SyntaxKind::NOT_KW)
10189 }
10190 #[inline]
10191 pub fn source_token(&self) -> Option<SyntaxToken> {
10192 support::token(&self.syntax, SyntaxKind::SOURCE_KW)
10193 }
10194 #[inline]
10195 pub fn then_token(&self) -> Option<SyntaxToken> {
10196 support::token(&self.syntax, SyntaxKind::THEN_KW)
10197 }
10198 #[inline]
10199 pub fn when_token(&self) -> Option<SyntaxToken> {
10200 support::token(&self.syntax, SyntaxKind::WHEN_KW)
10201 }
10202}
10203
10204#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10205pub struct MergeWhenNotMatchedTarget {
10206 pub(crate) syntax: SyntaxNode,
10207}
10208impl MergeWhenNotMatchedTarget {
10209 #[inline]
10210 pub fn expr(&self) -> Option<Expr> {
10211 support::child(&self.syntax)
10212 }
10213 #[inline]
10214 pub fn merge_action(&self) -> Option<MergeAction> {
10215 support::child(&self.syntax)
10216 }
10217 #[inline]
10218 pub fn and_token(&self) -> Option<SyntaxToken> {
10219 support::token(&self.syntax, SyntaxKind::AND_KW)
10220 }
10221 #[inline]
10222 pub fn by_token(&self) -> Option<SyntaxToken> {
10223 support::token(&self.syntax, SyntaxKind::BY_KW)
10224 }
10225 #[inline]
10226 pub fn matched_token(&self) -> Option<SyntaxToken> {
10227 support::token(&self.syntax, SyntaxKind::MATCHED_KW)
10228 }
10229 #[inline]
10230 pub fn not_token(&self) -> Option<SyntaxToken> {
10231 support::token(&self.syntax, SyntaxKind::NOT_KW)
10232 }
10233 #[inline]
10234 pub fn target_token(&self) -> Option<SyntaxToken> {
10235 support::token(&self.syntax, SyntaxKind::TARGET_KW)
10236 }
10237 #[inline]
10238 pub fn then_token(&self) -> Option<SyntaxToken> {
10239 support::token(&self.syntax, SyntaxKind::THEN_KW)
10240 }
10241 #[inline]
10242 pub fn when_token(&self) -> Option<SyntaxToken> {
10243 support::token(&self.syntax, SyntaxKind::WHEN_KW)
10244 }
10245}
10246
10247#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10248pub struct Move {
10249 pub(crate) syntax: SyntaxNode,
10250}
10251impl Move {
10252 #[inline]
10253 pub fn name_ref(&self) -> Option<NameRef> {
10254 support::child(&self.syntax)
10255 }
10256 #[inline]
10257 pub fn from_token(&self) -> Option<SyntaxToken> {
10258 support::token(&self.syntax, SyntaxKind::FROM_KW)
10259 }
10260 #[inline]
10261 pub fn in_token(&self) -> Option<SyntaxToken> {
10262 support::token(&self.syntax, SyntaxKind::IN_KW)
10263 }
10264 #[inline]
10265 pub fn move_token(&self) -> Option<SyntaxToken> {
10266 support::token(&self.syntax, SyntaxKind::MOVE_KW)
10267 }
10268}
10269
10270#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10271pub struct Name {
10272 pub(crate) syntax: SyntaxNode,
10273}
10274impl Name {
10275 #[inline]
10276 pub fn ident_token(&self) -> Option<SyntaxToken> {
10277 support::token(&self.syntax, SyntaxKind::IDENT)
10278 }
10279}
10280
10281#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10282pub struct NameRef {
10283 pub(crate) syntax: SyntaxNode,
10284}
10285impl NameRef {
10286 #[inline]
10287 pub fn ident_token(&self) -> Option<SyntaxToken> {
10288 support::token(&self.syntax, SyntaxKind::IDENT)
10289 }
10290}
10291
10292#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10293pub struct NamedArg {
10294 pub(crate) syntax: SyntaxNode,
10295}
10296impl NamedArg {
10297 #[inline]
10298 pub fn expr(&self) -> Option<Expr> {
10299 support::child(&self.syntax)
10300 }
10301 #[inline]
10302 pub fn fat_arrow(&self) -> Option<FatArrow> {
10303 support::child(&self.syntax)
10304 }
10305 #[inline]
10306 pub fn name_ref(&self) -> Option<NameRef> {
10307 support::child(&self.syntax)
10308 }
10309}
10310
10311#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10312pub struct Neq {
10313 pub(crate) syntax: SyntaxNode,
10314}
10315impl Neq {
10316 #[inline]
10317 pub fn bang_token(&self) -> Option<SyntaxToken> {
10318 support::token(&self.syntax, SyntaxKind::BANG)
10319 }
10320 #[inline]
10321 pub fn eq_token(&self) -> Option<SyntaxToken> {
10322 support::token(&self.syntax, SyntaxKind::EQ)
10323 }
10324}
10325
10326#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10327pub struct Neqb {
10328 pub(crate) syntax: SyntaxNode,
10329}
10330impl Neqb {
10331 #[inline]
10332 pub fn l_angle_token(&self) -> Option<SyntaxToken> {
10333 support::token(&self.syntax, SyntaxKind::L_ANGLE)
10334 }
10335 #[inline]
10336 pub fn r_angle_token(&self) -> Option<SyntaxToken> {
10337 support::token(&self.syntax, SyntaxKind::R_ANGLE)
10338 }
10339}
10340
10341#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10342pub struct NoAction {
10343 pub(crate) syntax: SyntaxNode,
10344}
10345impl NoAction {
10346 #[inline]
10347 pub fn action_token(&self) -> Option<SyntaxToken> {
10348 support::token(&self.syntax, SyntaxKind::ACTION_KW)
10349 }
10350 #[inline]
10351 pub fn no_token(&self) -> Option<SyntaxToken> {
10352 support::token(&self.syntax, SyntaxKind::NO_KW)
10353 }
10354}
10355
10356#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10357pub struct NoDependsOnExtension {
10358 pub(crate) syntax: SyntaxNode,
10359}
10360impl NoDependsOnExtension {
10361 #[inline]
10362 pub fn name_ref(&self) -> Option<NameRef> {
10363 support::child(&self.syntax)
10364 }
10365 #[inline]
10366 pub fn depends_token(&self) -> Option<SyntaxToken> {
10367 support::token(&self.syntax, SyntaxKind::DEPENDS_KW)
10368 }
10369 #[inline]
10370 pub fn extension_token(&self) -> Option<SyntaxToken> {
10371 support::token(&self.syntax, SyntaxKind::EXTENSION_KW)
10372 }
10373 #[inline]
10374 pub fn no_token(&self) -> Option<SyntaxToken> {
10375 support::token(&self.syntax, SyntaxKind::NO_KW)
10376 }
10377 #[inline]
10378 pub fn on_token(&self) -> Option<SyntaxToken> {
10379 support::token(&self.syntax, SyntaxKind::ON_KW)
10380 }
10381}
10382
10383#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10384pub struct NoForceRls {
10385 pub(crate) syntax: SyntaxNode,
10386}
10387impl NoForceRls {
10388 #[inline]
10389 pub fn force_token(&self) -> Option<SyntaxToken> {
10390 support::token(&self.syntax, SyntaxKind::FORCE_KW)
10391 }
10392 #[inline]
10393 pub fn level_token(&self) -> Option<SyntaxToken> {
10394 support::token(&self.syntax, SyntaxKind::LEVEL_KW)
10395 }
10396 #[inline]
10397 pub fn no_token(&self) -> Option<SyntaxToken> {
10398 support::token(&self.syntax, SyntaxKind::NO_KW)
10399 }
10400 #[inline]
10401 pub fn row_token(&self) -> Option<SyntaxToken> {
10402 support::token(&self.syntax, SyntaxKind::ROW_KW)
10403 }
10404 #[inline]
10405 pub fn security_token(&self) -> Option<SyntaxToken> {
10406 support::token(&self.syntax, SyntaxKind::SECURITY_KW)
10407 }
10408}
10409
10410#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10411pub struct NoInherit {
10412 pub(crate) syntax: SyntaxNode,
10413}
10414impl NoInherit {
10415 #[inline]
10416 pub fn path(&self) -> Option<Path> {
10417 support::child(&self.syntax)
10418 }
10419 #[inline]
10420 pub fn inherit_token(&self) -> Option<SyntaxToken> {
10421 support::token(&self.syntax, SyntaxKind::INHERIT_KW)
10422 }
10423 #[inline]
10424 pub fn no_token(&self) -> Option<SyntaxToken> {
10425 support::token(&self.syntax, SyntaxKind::NO_KW)
10426 }
10427}
10428
10429#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10430pub struct NoInheritTable {
10431 pub(crate) syntax: SyntaxNode,
10432}
10433impl NoInheritTable {
10434 #[inline]
10435 pub fn path(&self) -> Option<Path> {
10436 support::child(&self.syntax)
10437 }
10438 #[inline]
10439 pub fn inherit_token(&self) -> Option<SyntaxToken> {
10440 support::token(&self.syntax, SyntaxKind::INHERIT_KW)
10441 }
10442 #[inline]
10443 pub fn no_token(&self) -> Option<SyntaxToken> {
10444 support::token(&self.syntax, SyntaxKind::NO_KW)
10445 }
10446}
10447
10448#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10449pub struct NonStandardParam {
10450 pub(crate) syntax: SyntaxNode,
10451}
10452impl NonStandardParam {
10453 #[inline]
10454 pub fn name_ref(&self) -> Option<NameRef> {
10455 support::child(&self.syntax)
10456 }
10457 #[inline]
10458 pub fn colon_token(&self) -> Option<SyntaxToken> {
10459 support::token(&self.syntax, SyntaxKind::COLON)
10460 }
10461}
10462
10463#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10464pub struct NotDeferrable {
10465 pub(crate) syntax: SyntaxNode,
10466}
10467impl NotDeferrable {
10468 #[inline]
10469 pub fn deferrable_token(&self) -> Option<SyntaxToken> {
10470 support::token(&self.syntax, SyntaxKind::DEFERRABLE_KW)
10471 }
10472 #[inline]
10473 pub fn not_token(&self) -> Option<SyntaxToken> {
10474 support::token(&self.syntax, SyntaxKind::NOT_KW)
10475 }
10476}
10477
10478#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10479pub struct NotDeferrableConstraintOption {
10480 pub(crate) syntax: SyntaxNode,
10481}
10482impl NotDeferrableConstraintOption {
10483 #[inline]
10484 pub fn deferrable_token(&self) -> Option<SyntaxToken> {
10485 support::token(&self.syntax, SyntaxKind::DEFERRABLE_KW)
10486 }
10487 #[inline]
10488 pub fn not_token(&self) -> Option<SyntaxToken> {
10489 support::token(&self.syntax, SyntaxKind::NOT_KW)
10490 }
10491}
10492
10493#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10494pub struct NotEnforced {
10495 pub(crate) syntax: SyntaxNode,
10496}
10497impl NotEnforced {
10498 #[inline]
10499 pub fn enforced_token(&self) -> Option<SyntaxToken> {
10500 support::token(&self.syntax, SyntaxKind::ENFORCED_KW)
10501 }
10502 #[inline]
10503 pub fn not_token(&self) -> Option<SyntaxToken> {
10504 support::token(&self.syntax, SyntaxKind::NOT_KW)
10505 }
10506}
10507
10508#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10509pub struct NotIlike {
10510 pub(crate) syntax: SyntaxNode,
10511}
10512impl NotIlike {
10513 #[inline]
10514 pub fn ilike_token(&self) -> Option<SyntaxToken> {
10515 support::token(&self.syntax, SyntaxKind::ILIKE_KW)
10516 }
10517 #[inline]
10518 pub fn not_token(&self) -> Option<SyntaxToken> {
10519 support::token(&self.syntax, SyntaxKind::NOT_KW)
10520 }
10521}
10522
10523#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10524pub struct NotIn {
10525 pub(crate) syntax: SyntaxNode,
10526}
10527impl NotIn {
10528 #[inline]
10529 pub fn in_token(&self) -> Option<SyntaxToken> {
10530 support::token(&self.syntax, SyntaxKind::IN_KW)
10531 }
10532 #[inline]
10533 pub fn not_token(&self) -> Option<SyntaxToken> {
10534 support::token(&self.syntax, SyntaxKind::NOT_KW)
10535 }
10536}
10537
10538#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10539pub struct NotLike {
10540 pub(crate) syntax: SyntaxNode,
10541}
10542impl NotLike {
10543 #[inline]
10544 pub fn like_token(&self) -> Option<SyntaxToken> {
10545 support::token(&self.syntax, SyntaxKind::LIKE_KW)
10546 }
10547 #[inline]
10548 pub fn not_token(&self) -> Option<SyntaxToken> {
10549 support::token(&self.syntax, SyntaxKind::NOT_KW)
10550 }
10551}
10552
10553#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10554pub struct NotMaterialized {
10555 pub(crate) syntax: SyntaxNode,
10556}
10557impl NotMaterialized {
10558 #[inline]
10559 pub fn materialized_token(&self) -> Option<SyntaxToken> {
10560 support::token(&self.syntax, SyntaxKind::MATERIALIZED_KW)
10561 }
10562 #[inline]
10563 pub fn not_token(&self) -> Option<SyntaxToken> {
10564 support::token(&self.syntax, SyntaxKind::NOT_KW)
10565 }
10566}
10567
10568#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10569pub struct NotNullConstraint {
10570 pub(crate) syntax: SyntaxNode,
10571}
10572impl NotNullConstraint {
10573 #[inline]
10574 pub fn name_ref(&self) -> Option<NameRef> {
10575 support::child(&self.syntax)
10576 }
10577 #[inline]
10578 pub fn no_inherit(&self) -> Option<NoInherit> {
10579 support::child(&self.syntax)
10580 }
10581 #[inline]
10582 pub fn constraint_token(&self) -> Option<SyntaxToken> {
10583 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
10584 }
10585 #[inline]
10586 pub fn not_token(&self) -> Option<SyntaxToken> {
10587 support::token(&self.syntax, SyntaxKind::NOT_KW)
10588 }
10589 #[inline]
10590 pub fn null_token(&self) -> Option<SyntaxToken> {
10591 support::token(&self.syntax, SyntaxKind::NULL_KW)
10592 }
10593}
10594
10595#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10596pub struct NotOf {
10597 pub(crate) syntax: SyntaxNode,
10598}
10599impl NotOf {
10600 #[inline]
10601 pub fn not_token(&self) -> Option<SyntaxToken> {
10602 support::token(&self.syntax, SyntaxKind::NOT_KW)
10603 }
10604 #[inline]
10605 pub fn of_token(&self) -> Option<SyntaxToken> {
10606 support::token(&self.syntax, SyntaxKind::OF_KW)
10607 }
10608}
10609
10610#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10611pub struct NotSimilarTo {
10612 pub(crate) syntax: SyntaxNode,
10613}
10614impl NotSimilarTo {
10615 #[inline]
10616 pub fn not_token(&self) -> Option<SyntaxToken> {
10617 support::token(&self.syntax, SyntaxKind::NOT_KW)
10618 }
10619 #[inline]
10620 pub fn similar_token(&self) -> Option<SyntaxToken> {
10621 support::token(&self.syntax, SyntaxKind::SIMILAR_KW)
10622 }
10623 #[inline]
10624 pub fn to_token(&self) -> Option<SyntaxToken> {
10625 support::token(&self.syntax, SyntaxKind::TO_KW)
10626 }
10627}
10628
10629#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10630pub struct NotValid {
10631 pub(crate) syntax: SyntaxNode,
10632}
10633impl NotValid {
10634 #[inline]
10635 pub fn not_token(&self) -> Option<SyntaxToken> {
10636 support::token(&self.syntax, SyntaxKind::NOT_KW)
10637 }
10638 #[inline]
10639 pub fn valid_token(&self) -> Option<SyntaxToken> {
10640 support::token(&self.syntax, SyntaxKind::VALID_KW)
10641 }
10642}
10643
10644#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10645pub struct Notify {
10646 pub(crate) syntax: SyntaxNode,
10647}
10648impl Notify {
10649 #[inline]
10650 pub fn literal(&self) -> Option<Literal> {
10651 support::child(&self.syntax)
10652 }
10653 #[inline]
10654 pub fn name_ref(&self) -> Option<NameRef> {
10655 support::child(&self.syntax)
10656 }
10657 #[inline]
10658 pub fn comma_token(&self) -> Option<SyntaxToken> {
10659 support::token(&self.syntax, SyntaxKind::COMMA)
10660 }
10661 #[inline]
10662 pub fn notify_token(&self) -> Option<SyntaxToken> {
10663 support::token(&self.syntax, SyntaxKind::NOTIFY_KW)
10664 }
10665}
10666
10667#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10668pub struct NullConstraint {
10669 pub(crate) syntax: SyntaxNode,
10670}
10671impl NullConstraint {
10672 #[inline]
10673 pub fn name_ref(&self) -> Option<NameRef> {
10674 support::child(&self.syntax)
10675 }
10676 #[inline]
10677 pub fn constraint_token(&self) -> Option<SyntaxToken> {
10678 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
10679 }
10680 #[inline]
10681 pub fn null_token(&self) -> Option<SyntaxToken> {
10682 support::token(&self.syntax, SyntaxKind::NULL_KW)
10683 }
10684}
10685
10686#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10687pub struct NullsDistinct {
10688 pub(crate) syntax: SyntaxNode,
10689}
10690impl NullsDistinct {
10691 #[inline]
10692 pub fn distinct_token(&self) -> Option<SyntaxToken> {
10693 support::token(&self.syntax, SyntaxKind::DISTINCT_KW)
10694 }
10695 #[inline]
10696 pub fn nulls_token(&self) -> Option<SyntaxToken> {
10697 support::token(&self.syntax, SyntaxKind::NULLS_KW)
10698 }
10699}
10700
10701#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10702pub struct NullsFirst {
10703 pub(crate) syntax: SyntaxNode,
10704}
10705impl NullsFirst {
10706 #[inline]
10707 pub fn first_token(&self) -> Option<SyntaxToken> {
10708 support::token(&self.syntax, SyntaxKind::FIRST_KW)
10709 }
10710 #[inline]
10711 pub fn nulls_token(&self) -> Option<SyntaxToken> {
10712 support::token(&self.syntax, SyntaxKind::NULLS_KW)
10713 }
10714}
10715
10716#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10717pub struct NullsLast {
10718 pub(crate) syntax: SyntaxNode,
10719}
10720impl NullsLast {
10721 #[inline]
10722 pub fn last_token(&self) -> Option<SyntaxToken> {
10723 support::token(&self.syntax, SyntaxKind::LAST_KW)
10724 }
10725 #[inline]
10726 pub fn nulls_token(&self) -> Option<SyntaxToken> {
10727 support::token(&self.syntax, SyntaxKind::NULLS_KW)
10728 }
10729}
10730
10731#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10732pub struct NullsNotDistinct {
10733 pub(crate) syntax: SyntaxNode,
10734}
10735impl NullsNotDistinct {
10736 #[inline]
10737 pub fn distinct_token(&self) -> Option<SyntaxToken> {
10738 support::token(&self.syntax, SyntaxKind::DISTINCT_KW)
10739 }
10740 #[inline]
10741 pub fn not_token(&self) -> Option<SyntaxToken> {
10742 support::token(&self.syntax, SyntaxKind::NOT_KW)
10743 }
10744 #[inline]
10745 pub fn nulls_token(&self) -> Option<SyntaxToken> {
10746 support::token(&self.syntax, SyntaxKind::NULLS_KW)
10747 }
10748}
10749
10750#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10751pub struct OfType {
10752 pub(crate) syntax: SyntaxNode,
10753}
10754impl OfType {
10755 #[inline]
10756 pub fn ty(&self) -> Option<Type> {
10757 support::child(&self.syntax)
10758 }
10759 #[inline]
10760 pub fn of_token(&self) -> Option<SyntaxToken> {
10761 support::token(&self.syntax, SyntaxKind::OF_KW)
10762 }
10763}
10764
10765#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10766pub struct OffsetClause {
10767 pub(crate) syntax: SyntaxNode,
10768}
10769impl OffsetClause {
10770 #[inline]
10771 pub fn expr(&self) -> Option<Expr> {
10772 support::child(&self.syntax)
10773 }
10774 #[inline]
10775 pub fn offset_token(&self) -> Option<SyntaxToken> {
10776 support::token(&self.syntax, SyntaxKind::OFFSET_KW)
10777 }
10778 #[inline]
10779 pub fn row_token(&self) -> Option<SyntaxToken> {
10780 support::token(&self.syntax, SyntaxKind::ROW_KW)
10781 }
10782 #[inline]
10783 pub fn rows_token(&self) -> Option<SyntaxToken> {
10784 support::token(&self.syntax, SyntaxKind::ROWS_KW)
10785 }
10786}
10787
10788#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10789pub struct OnClause {
10790 pub(crate) syntax: SyntaxNode,
10791}
10792impl OnClause {
10793 #[inline]
10794 pub fn expr(&self) -> Option<Expr> {
10795 support::child(&self.syntax)
10796 }
10797 #[inline]
10798 pub fn on_token(&self) -> Option<SyntaxToken> {
10799 support::token(&self.syntax, SyntaxKind::ON_KW)
10800 }
10801}
10802
10803#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10804pub struct OnCommit {
10805 pub(crate) syntax: SyntaxNode,
10806}
10807impl OnCommit {
10808 #[inline]
10809 pub fn on_commit_action(&self) -> Option<OnCommitAction> {
10810 support::child(&self.syntax)
10811 }
10812 #[inline]
10813 pub fn commit_token(&self) -> Option<SyntaxToken> {
10814 support::token(&self.syntax, SyntaxKind::COMMIT_KW)
10815 }
10816 #[inline]
10817 pub fn on_token(&self) -> Option<SyntaxToken> {
10818 support::token(&self.syntax, SyntaxKind::ON_KW)
10819 }
10820}
10821
10822#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10823pub struct OnConflictClause {
10824 pub(crate) syntax: SyntaxNode,
10825}
10826impl OnConflictClause {
10827 #[inline]
10828 pub fn conflict_action(&self) -> Option<ConflictAction> {
10829 support::child(&self.syntax)
10830 }
10831 #[inline]
10832 pub fn conflict_target(&self) -> Option<ConflictTarget> {
10833 support::child(&self.syntax)
10834 }
10835 #[inline]
10836 pub fn conflict_token(&self) -> Option<SyntaxToken> {
10837 support::token(&self.syntax, SyntaxKind::CONFLICT_KW)
10838 }
10839 #[inline]
10840 pub fn on_token(&self) -> Option<SyntaxToken> {
10841 support::token(&self.syntax, SyntaxKind::ON_KW)
10842 }
10843}
10844
10845#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10846pub struct OnDeleteAction {
10847 pub(crate) syntax: SyntaxNode,
10848}
10849impl OnDeleteAction {
10850 #[inline]
10851 pub fn ref_action(&self) -> Option<RefAction> {
10852 support::child(&self.syntax)
10853 }
10854 #[inline]
10855 pub fn delete_token(&self) -> Option<SyntaxToken> {
10856 support::token(&self.syntax, SyntaxKind::DELETE_KW)
10857 }
10858 #[inline]
10859 pub fn on_token(&self) -> Option<SyntaxToken> {
10860 support::token(&self.syntax, SyntaxKind::ON_KW)
10861 }
10862}
10863
10864#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10865pub struct OnTable {
10866 pub(crate) syntax: SyntaxNode,
10867}
10868impl OnTable {
10869 #[inline]
10870 pub fn path(&self) -> Option<Path> {
10871 support::child(&self.syntax)
10872 }
10873 #[inline]
10874 pub fn on_token(&self) -> Option<SyntaxToken> {
10875 support::token(&self.syntax, SyntaxKind::ON_KW)
10876 }
10877}
10878
10879#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10880pub struct OnUpdateAction {
10881 pub(crate) syntax: SyntaxNode,
10882}
10883impl OnUpdateAction {
10884 #[inline]
10885 pub fn ref_action(&self) -> Option<RefAction> {
10886 support::child(&self.syntax)
10887 }
10888 #[inline]
10889 pub fn on_token(&self) -> Option<SyntaxToken> {
10890 support::token(&self.syntax, SyntaxKind::ON_KW)
10891 }
10892 #[inline]
10893 pub fn update_token(&self) -> Option<SyntaxToken> {
10894 support::token(&self.syntax, SyntaxKind::UPDATE_KW)
10895 }
10896}
10897
10898#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10899pub struct Op {
10900 pub(crate) syntax: SyntaxNode,
10901}
10902impl Op {
10903 #[inline]
10904 pub fn at_time_zone(&self) -> Option<AtTimeZone> {
10905 support::child(&self.syntax)
10906 }
10907 #[inline]
10908 pub fn colon_colon(&self) -> Option<ColonColon> {
10909 support::child(&self.syntax)
10910 }
10911 #[inline]
10912 pub fn colon_eq(&self) -> Option<ColonEq> {
10913 support::child(&self.syntax)
10914 }
10915 #[inline]
10916 pub fn custom_op(&self) -> Option<CustomOp> {
10917 support::child(&self.syntax)
10918 }
10919 #[inline]
10920 pub fn fat_arrow(&self) -> Option<FatArrow> {
10921 support::child(&self.syntax)
10922 }
10923 #[inline]
10924 pub fn gteq(&self) -> Option<Gteq> {
10925 support::child(&self.syntax)
10926 }
10927 #[inline]
10928 pub fn is_distinct_from(&self) -> Option<IsDistinctFrom> {
10929 support::child(&self.syntax)
10930 }
10931 #[inline]
10932 pub fn is_json(&self) -> Option<IsJson> {
10933 support::child(&self.syntax)
10934 }
10935 #[inline]
10936 pub fn is_json_array(&self) -> Option<IsJsonArray> {
10937 support::child(&self.syntax)
10938 }
10939 #[inline]
10940 pub fn is_json_object(&self) -> Option<IsJsonObject> {
10941 support::child(&self.syntax)
10942 }
10943 #[inline]
10944 pub fn is_json_scalar(&self) -> Option<IsJsonScalar> {
10945 support::child(&self.syntax)
10946 }
10947 #[inline]
10948 pub fn is_json_value(&self) -> Option<IsJsonValue> {
10949 support::child(&self.syntax)
10950 }
10951 #[inline]
10952 pub fn is_not(&self) -> Option<IsNot> {
10953 support::child(&self.syntax)
10954 }
10955 #[inline]
10956 pub fn is_not_distinct_from(&self) -> Option<IsNotDistinctFrom> {
10957 support::child(&self.syntax)
10958 }
10959 #[inline]
10960 pub fn is_not_json(&self) -> Option<IsNotJson> {
10961 support::child(&self.syntax)
10962 }
10963 #[inline]
10964 pub fn is_not_json_array(&self) -> Option<IsNotJsonArray> {
10965 support::child(&self.syntax)
10966 }
10967 #[inline]
10968 pub fn is_not_json_scalar(&self) -> Option<IsNotJsonScalar> {
10969 support::child(&self.syntax)
10970 }
10971 #[inline]
10972 pub fn is_not_json_value(&self) -> Option<IsNotJsonValue> {
10973 support::child(&self.syntax)
10974 }
10975 #[inline]
10976 pub fn lteq(&self) -> Option<Lteq> {
10977 support::child(&self.syntax)
10978 }
10979 #[inline]
10980 pub fn neq(&self) -> Option<Neq> {
10981 support::child(&self.syntax)
10982 }
10983 #[inline]
10984 pub fn neqb(&self) -> Option<Neqb> {
10985 support::child(&self.syntax)
10986 }
10987 #[inline]
10988 pub fn not_ilike(&self) -> Option<NotIlike> {
10989 support::child(&self.syntax)
10990 }
10991 #[inline]
10992 pub fn not_in(&self) -> Option<NotIn> {
10993 support::child(&self.syntax)
10994 }
10995 #[inline]
10996 pub fn not_like(&self) -> Option<NotLike> {
10997 support::child(&self.syntax)
10998 }
10999 #[inline]
11000 pub fn not_similar_to(&self) -> Option<NotSimilarTo> {
11001 support::child(&self.syntax)
11002 }
11003 #[inline]
11004 pub fn operator_call(&self) -> Option<OperatorCall> {
11005 support::child(&self.syntax)
11006 }
11007 #[inline]
11008 pub fn similar_to(&self) -> Option<SimilarTo> {
11009 support::child(&self.syntax)
11010 }
11011 #[inline]
11012 pub fn percent_token(&self) -> Option<SyntaxToken> {
11013 support::token(&self.syntax, SyntaxKind::PERCENT)
11014 }
11015 #[inline]
11016 pub fn plus_token(&self) -> Option<SyntaxToken> {
11017 support::token(&self.syntax, SyntaxKind::PLUS)
11018 }
11019 #[inline]
11020 pub fn minus_token(&self) -> Option<SyntaxToken> {
11021 support::token(&self.syntax, SyntaxKind::MINUS)
11022 }
11023 #[inline]
11024 pub fn slash_token(&self) -> Option<SyntaxToken> {
11025 support::token(&self.syntax, SyntaxKind::SLASH)
11026 }
11027 #[inline]
11028 pub fn colon_token(&self) -> Option<SyntaxToken> {
11029 support::token(&self.syntax, SyntaxKind::COLON)
11030 }
11031 #[inline]
11032 pub fn l_angle_token(&self) -> Option<SyntaxToken> {
11033 support::token(&self.syntax, SyntaxKind::L_ANGLE)
11034 }
11035 #[inline]
11036 pub fn eq_token(&self) -> Option<SyntaxToken> {
11037 support::token(&self.syntax, SyntaxKind::EQ)
11038 }
11039 #[inline]
11040 pub fn r_angle_token(&self) -> Option<SyntaxToken> {
11041 support::token(&self.syntax, SyntaxKind::R_ANGLE)
11042 }
11043 #[inline]
11044 pub fn caret_token(&self) -> Option<SyntaxToken> {
11045 support::token(&self.syntax, SyntaxKind::CARET)
11046 }
11047 #[inline]
11048 pub fn and_token(&self) -> Option<SyntaxToken> {
11049 support::token(&self.syntax, SyntaxKind::AND_KW)
11050 }
11051 #[inline]
11052 pub fn collate_token(&self) -> Option<SyntaxToken> {
11053 support::token(&self.syntax, SyntaxKind::COLLATE_KW)
11054 }
11055 #[inline]
11056 pub fn ilike_token(&self) -> Option<SyntaxToken> {
11057 support::token(&self.syntax, SyntaxKind::ILIKE_KW)
11058 }
11059 #[inline]
11060 pub fn in_token(&self) -> Option<SyntaxToken> {
11061 support::token(&self.syntax, SyntaxKind::IN_KW)
11062 }
11063 #[inline]
11064 pub fn is_token(&self) -> Option<SyntaxToken> {
11065 support::token(&self.syntax, SyntaxKind::IS_KW)
11066 }
11067 #[inline]
11068 pub fn like_token(&self) -> Option<SyntaxToken> {
11069 support::token(&self.syntax, SyntaxKind::LIKE_KW)
11070 }
11071 #[inline]
11072 pub fn or_token(&self) -> Option<SyntaxToken> {
11073 support::token(&self.syntax, SyntaxKind::OR_KW)
11074 }
11075 #[inline]
11076 pub fn overlaps_token(&self) -> Option<SyntaxToken> {
11077 support::token(&self.syntax, SyntaxKind::OVERLAPS_KW)
11078 }
11079 #[inline]
11080 pub fn value_token(&self) -> Option<SyntaxToken> {
11081 support::token(&self.syntax, SyntaxKind::VALUE_KW)
11082 }
11083}
11084
11085#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11086pub struct OpClassOption {
11087 pub(crate) syntax: SyntaxNode,
11088}
11089impl OpClassOption {
11090 #[inline]
11091 pub fn function_sig(&self) -> Option<FunctionSig> {
11092 support::child(&self.syntax)
11093 }
11094 #[inline]
11095 pub fn literal(&self) -> Option<Literal> {
11096 support::child(&self.syntax)
11097 }
11098 #[inline]
11099 pub fn op(&self) -> Option<Op> {
11100 support::child(&self.syntax)
11101 }
11102 #[inline]
11103 pub fn param_list(&self) -> Option<ParamList> {
11104 support::child(&self.syntax)
11105 }
11106 #[inline]
11107 pub fn path(&self) -> Option<Path> {
11108 support::child(&self.syntax)
11109 }
11110 #[inline]
11111 pub fn ty(&self) -> Option<Type> {
11112 support::child(&self.syntax)
11113 }
11114 #[inline]
11115 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
11116 support::token(&self.syntax, SyntaxKind::L_PAREN)
11117 }
11118 #[inline]
11119 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
11120 support::token(&self.syntax, SyntaxKind::R_PAREN)
11121 }
11122 #[inline]
11123 pub fn comma_token(&self) -> Option<SyntaxToken> {
11124 support::token(&self.syntax, SyntaxKind::COMMA)
11125 }
11126 #[inline]
11127 pub fn by_token(&self) -> Option<SyntaxToken> {
11128 support::token(&self.syntax, SyntaxKind::BY_KW)
11129 }
11130 #[inline]
11131 pub fn for_token(&self) -> Option<SyntaxToken> {
11132 support::token(&self.syntax, SyntaxKind::FOR_KW)
11133 }
11134 #[inline]
11135 pub fn function_token(&self) -> Option<SyntaxToken> {
11136 support::token(&self.syntax, SyntaxKind::FUNCTION_KW)
11137 }
11138 #[inline]
11139 pub fn operator_token(&self) -> Option<SyntaxToken> {
11140 support::token(&self.syntax, SyntaxKind::OPERATOR_KW)
11141 }
11142 #[inline]
11143 pub fn order_token(&self) -> Option<SyntaxToken> {
11144 support::token(&self.syntax, SyntaxKind::ORDER_KW)
11145 }
11146 #[inline]
11147 pub fn search_token(&self) -> Option<SyntaxToken> {
11148 support::token(&self.syntax, SyntaxKind::SEARCH_KW)
11149 }
11150 #[inline]
11151 pub fn storage_token(&self) -> Option<SyntaxToken> {
11152 support::token(&self.syntax, SyntaxKind::STORAGE_KW)
11153 }
11154}
11155
11156#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11157pub struct OpSig {
11158 pub(crate) syntax: SyntaxNode,
11159}
11160impl OpSig {
11161 #[inline]
11162 pub fn op(&self) -> Option<Op> {
11163 support::child(&self.syntax)
11164 }
11165 #[inline]
11166 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
11167 support::token(&self.syntax, SyntaxKind::L_PAREN)
11168 }
11169 #[inline]
11170 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
11171 support::token(&self.syntax, SyntaxKind::R_PAREN)
11172 }
11173 #[inline]
11174 pub fn comma_token(&self) -> Option<SyntaxToken> {
11175 support::token(&self.syntax, SyntaxKind::COMMA)
11176 }
11177 #[inline]
11178 pub fn none_token(&self) -> Option<SyntaxToken> {
11179 support::token(&self.syntax, SyntaxKind::NONE_KW)
11180 }
11181}
11182
11183#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11184pub struct OpSigList {
11185 pub(crate) syntax: SyntaxNode,
11186}
11187impl OpSigList {
11188 #[inline]
11189 pub fn op_sigs(&self) -> AstChildren<OpSig> {
11190 support::children(&self.syntax)
11191 }
11192}
11193
11194#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11195pub struct OperatorCall {
11196 pub(crate) syntax: SyntaxNode,
11197}
11198impl OperatorCall {
11199 #[inline]
11200 pub fn op(&self) -> Option<Op> {
11201 support::child(&self.syntax)
11202 }
11203 #[inline]
11204 pub fn path(&self) -> Option<Path> {
11205 support::child(&self.syntax)
11206 }
11207 #[inline]
11208 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
11209 support::token(&self.syntax, SyntaxKind::L_PAREN)
11210 }
11211 #[inline]
11212 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
11213 support::token(&self.syntax, SyntaxKind::R_PAREN)
11214 }
11215 #[inline]
11216 pub fn dot_token(&self) -> Option<SyntaxToken> {
11217 support::token(&self.syntax, SyntaxKind::DOT)
11218 }
11219 #[inline]
11220 pub fn operator_token(&self) -> Option<SyntaxToken> {
11221 support::token(&self.syntax, SyntaxKind::OPERATOR_KW)
11222 }
11223}
11224
11225#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11226pub struct OperatorClassOptionList {
11227 pub(crate) syntax: SyntaxNode,
11228}
11229impl OperatorClassOptionList {
11230 #[inline]
11231 pub fn op_class_options(&self) -> AstChildren<OpClassOption> {
11232 support::children(&self.syntax)
11233 }
11234}
11235
11236#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11237pub struct OptionItem {
11238 pub(crate) syntax: SyntaxNode,
11239}
11240impl OptionItem {
11241 #[inline]
11242 pub fn expr(&self) -> Option<Expr> {
11243 support::child(&self.syntax)
11244 }
11245 #[inline]
11246 pub fn default_token(&self) -> Option<SyntaxToken> {
11247 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
11248 }
11249}
11250
11251#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11252pub struct OptionItemList {
11253 pub(crate) syntax: SyntaxNode,
11254}
11255impl OptionItemList {
11256 #[inline]
11257 pub fn option_items(&self) -> AstChildren<OptionItem> {
11258 support::children(&self.syntax)
11259 }
11260 #[inline]
11261 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
11262 support::token(&self.syntax, SyntaxKind::L_PAREN)
11263 }
11264 #[inline]
11265 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
11266 support::token(&self.syntax, SyntaxKind::R_PAREN)
11267 }
11268}
11269
11270#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11271pub struct OrReplace {
11272 pub(crate) syntax: SyntaxNode,
11273}
11274impl OrReplace {
11275 #[inline]
11276 pub fn or_token(&self) -> Option<SyntaxToken> {
11277 support::token(&self.syntax, SyntaxKind::OR_KW)
11278 }
11279 #[inline]
11280 pub fn replace_token(&self) -> Option<SyntaxToken> {
11281 support::token(&self.syntax, SyntaxKind::REPLACE_KW)
11282 }
11283}
11284
11285#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11286pub struct OrderByClause {
11287 pub(crate) syntax: SyntaxNode,
11288}
11289impl OrderByClause {
11290 #[inline]
11291 pub fn sort_by_list(&self) -> Option<SortByList> {
11292 support::child(&self.syntax)
11293 }
11294 #[inline]
11295 pub fn by_token(&self) -> Option<SyntaxToken> {
11296 support::token(&self.syntax, SyntaxKind::BY_KW)
11297 }
11298 #[inline]
11299 pub fn order_token(&self) -> Option<SyntaxToken> {
11300 support::token(&self.syntax, SyntaxKind::ORDER_KW)
11301 }
11302}
11303
11304#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11305pub struct OverClause {
11306 pub(crate) syntax: SyntaxNode,
11307}
11308impl OverClause {
11309 #[inline]
11310 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
11311 support::token(&self.syntax, SyntaxKind::L_PAREN)
11312 }
11313 #[inline]
11314 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
11315 support::token(&self.syntax, SyntaxKind::R_PAREN)
11316 }
11317 #[inline]
11318 pub fn over_token(&self) -> Option<SyntaxToken> {
11319 support::token(&self.syntax, SyntaxKind::OVER_KW)
11320 }
11321}
11322
11323#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11324pub struct OverlayFn {
11325 pub(crate) syntax: SyntaxNode,
11326}
11327impl OverlayFn {
11328 #[inline]
11329 pub fn expr(&self) -> Option<Expr> {
11330 support::child(&self.syntax)
11331 }
11332 #[inline]
11333 pub fn exprs(&self) -> AstChildren<Expr> {
11334 support::children(&self.syntax)
11335 }
11336 #[inline]
11337 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
11338 support::token(&self.syntax, SyntaxKind::L_PAREN)
11339 }
11340 #[inline]
11341 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
11342 support::token(&self.syntax, SyntaxKind::R_PAREN)
11343 }
11344 #[inline]
11345 pub fn for_token(&self) -> Option<SyntaxToken> {
11346 support::token(&self.syntax, SyntaxKind::FOR_KW)
11347 }
11348 #[inline]
11349 pub fn from_token(&self) -> Option<SyntaxToken> {
11350 support::token(&self.syntax, SyntaxKind::FROM_KW)
11351 }
11352 #[inline]
11353 pub fn overlay_token(&self) -> Option<SyntaxToken> {
11354 support::token(&self.syntax, SyntaxKind::OVERLAY_KW)
11355 }
11356 #[inline]
11357 pub fn placing_token(&self) -> Option<SyntaxToken> {
11358 support::token(&self.syntax, SyntaxKind::PLACING_KW)
11359 }
11360}
11361
11362#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11363pub struct OwnerTo {
11364 pub(crate) syntax: SyntaxNode,
11365}
11366impl OwnerTo {
11367 #[inline]
11368 pub fn role(&self) -> Option<Role> {
11369 support::child(&self.syntax)
11370 }
11371 #[inline]
11372 pub fn owner_token(&self) -> Option<SyntaxToken> {
11373 support::token(&self.syntax, SyntaxKind::OWNER_KW)
11374 }
11375 #[inline]
11376 pub fn to_token(&self) -> Option<SyntaxToken> {
11377 support::token(&self.syntax, SyntaxKind::TO_KW)
11378 }
11379}
11380
11381#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11382pub struct ParallelFuncOption {
11383 pub(crate) syntax: SyntaxNode,
11384}
11385impl ParallelFuncOption {
11386 #[inline]
11387 pub fn ident_token(&self) -> Option<SyntaxToken> {
11388 support::token(&self.syntax, SyntaxKind::IDENT)
11389 }
11390 #[inline]
11391 pub fn parallel_token(&self) -> Option<SyntaxToken> {
11392 support::token(&self.syntax, SyntaxKind::PARALLEL_KW)
11393 }
11394}
11395
11396#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11397pub struct Param {
11398 pub(crate) syntax: SyntaxNode,
11399}
11400impl Param {
11401 #[inline]
11402 pub fn mode(&self) -> Option<ParamMode> {
11403 support::child(&self.syntax)
11404 }
11405 #[inline]
11406 pub fn name(&self) -> Option<Name> {
11407 support::child(&self.syntax)
11408 }
11409 #[inline]
11410 pub fn param_default(&self) -> Option<ParamDefault> {
11411 support::child(&self.syntax)
11412 }
11413 #[inline]
11414 pub fn ty(&self) -> Option<Type> {
11415 support::child(&self.syntax)
11416 }
11417}
11418
11419#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11420pub struct ParamDefault {
11421 pub(crate) syntax: SyntaxNode,
11422}
11423impl ParamDefault {
11424 #[inline]
11425 pub fn expr(&self) -> Option<Expr> {
11426 support::child(&self.syntax)
11427 }
11428 #[inline]
11429 pub fn eq_token(&self) -> Option<SyntaxToken> {
11430 support::token(&self.syntax, SyntaxKind::EQ)
11431 }
11432 #[inline]
11433 pub fn default_token(&self) -> Option<SyntaxToken> {
11434 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
11435 }
11436}
11437
11438#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11439pub struct ParamIn {
11440 pub(crate) syntax: SyntaxNode,
11441}
11442impl ParamIn {
11443 #[inline]
11444 pub fn in_token(&self) -> Option<SyntaxToken> {
11445 support::token(&self.syntax, SyntaxKind::IN_KW)
11446 }
11447}
11448
11449#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11450pub struct ParamInOut {
11451 pub(crate) syntax: SyntaxNode,
11452}
11453impl ParamInOut {
11454 #[inline]
11455 pub fn in_token(&self) -> Option<SyntaxToken> {
11456 support::token(&self.syntax, SyntaxKind::IN_KW)
11457 }
11458 #[inline]
11459 pub fn inout_token(&self) -> Option<SyntaxToken> {
11460 support::token(&self.syntax, SyntaxKind::INOUT_KW)
11461 }
11462 #[inline]
11463 pub fn out_token(&self) -> Option<SyntaxToken> {
11464 support::token(&self.syntax, SyntaxKind::OUT_KW)
11465 }
11466}
11467
11468#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11469pub struct ParamList {
11470 pub(crate) syntax: SyntaxNode,
11471}
11472impl ParamList {
11473 #[inline]
11474 pub fn params(&self) -> AstChildren<Param> {
11475 support::children(&self.syntax)
11476 }
11477}
11478
11479#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11480pub struct ParamOut {
11481 pub(crate) syntax: SyntaxNode,
11482}
11483impl ParamOut {
11484 #[inline]
11485 pub fn out_token(&self) -> Option<SyntaxToken> {
11486 support::token(&self.syntax, SyntaxKind::OUT_KW)
11487 }
11488}
11489
11490#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11491pub struct ParamVariadic {
11492 pub(crate) syntax: SyntaxNode,
11493}
11494impl ParamVariadic {
11495 #[inline]
11496 pub fn variadic_token(&self) -> Option<SyntaxToken> {
11497 support::token(&self.syntax, SyntaxKind::VARIADIC_KW)
11498 }
11499}
11500
11501#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11502pub struct ParenExpr {
11503 pub(crate) syntax: SyntaxNode,
11504}
11505impl ParenExpr {
11506 #[inline]
11507 pub fn expr(&self) -> Option<Expr> {
11508 support::child(&self.syntax)
11509 }
11510 #[inline]
11511 pub fn select(&self) -> Option<Select> {
11512 support::child(&self.syntax)
11513 }
11514 #[inline]
11515 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
11516 support::token(&self.syntax, SyntaxKind::L_PAREN)
11517 }
11518 #[inline]
11519 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
11520 support::token(&self.syntax, SyntaxKind::R_PAREN)
11521 }
11522}
11523
11524#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11525pub struct ParenSelect {
11526 pub(crate) syntax: SyntaxNode,
11527}
11528impl ParenSelect {
11529 #[inline]
11530 pub fn select(&self) -> Option<SelectVariant> {
11531 support::child(&self.syntax)
11532 }
11533 #[inline]
11534 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
11535 support::token(&self.syntax, SyntaxKind::L_PAREN)
11536 }
11537 #[inline]
11538 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
11539 support::token(&self.syntax, SyntaxKind::R_PAREN)
11540 }
11541}
11542
11543#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11544pub struct PartitionBy {
11545 pub(crate) syntax: SyntaxNode,
11546}
11547impl PartitionBy {
11548 #[inline]
11549 pub fn partition_item_list(&self) -> Option<PartitionItemList> {
11550 support::child(&self.syntax)
11551 }
11552 #[inline]
11553 pub fn by_token(&self) -> Option<SyntaxToken> {
11554 support::token(&self.syntax, SyntaxKind::BY_KW)
11555 }
11556 #[inline]
11557 pub fn ident_token(&self) -> Option<SyntaxToken> {
11558 support::token(&self.syntax, SyntaxKind::IDENT)
11559 }
11560 #[inline]
11561 pub fn partition_token(&self) -> Option<SyntaxToken> {
11562 support::token(&self.syntax, SyntaxKind::PARTITION_KW)
11563 }
11564 #[inline]
11565 pub fn range_token(&self) -> Option<SyntaxToken> {
11566 support::token(&self.syntax, SyntaxKind::RANGE_KW)
11567 }
11568}
11569
11570#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11571pub struct PartitionDefault {
11572 pub(crate) syntax: SyntaxNode,
11573}
11574impl PartitionDefault {
11575 #[inline]
11576 pub fn default_token(&self) -> Option<SyntaxToken> {
11577 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
11578 }
11579}
11580
11581#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11582pub struct PartitionForValuesFrom {
11583 pub(crate) syntax: SyntaxNode,
11584}
11585impl PartitionForValuesFrom {
11586 #[inline]
11587 pub fn exprs(&self) -> AstChildren<Expr> {
11588 support::children(&self.syntax)
11589 }
11590 #[inline]
11591 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
11592 support::token(&self.syntax, SyntaxKind::L_PAREN)
11593 }
11594 #[inline]
11595 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
11596 support::token(&self.syntax, SyntaxKind::R_PAREN)
11597 }
11598 #[inline]
11599 pub fn for_token(&self) -> Option<SyntaxToken> {
11600 support::token(&self.syntax, SyntaxKind::FOR_KW)
11601 }
11602 #[inline]
11603 pub fn from_token(&self) -> Option<SyntaxToken> {
11604 support::token(&self.syntax, SyntaxKind::FROM_KW)
11605 }
11606 #[inline]
11607 pub fn to_token(&self) -> Option<SyntaxToken> {
11608 support::token(&self.syntax, SyntaxKind::TO_KW)
11609 }
11610 #[inline]
11611 pub fn values_token(&self) -> Option<SyntaxToken> {
11612 support::token(&self.syntax, SyntaxKind::VALUES_KW)
11613 }
11614}
11615
11616#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11617pub struct PartitionForValuesIn {
11618 pub(crate) syntax: SyntaxNode,
11619}
11620impl PartitionForValuesIn {
11621 #[inline]
11622 pub fn exprs(&self) -> AstChildren<Expr> {
11623 support::children(&self.syntax)
11624 }
11625 #[inline]
11626 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
11627 support::token(&self.syntax, SyntaxKind::L_PAREN)
11628 }
11629 #[inline]
11630 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
11631 support::token(&self.syntax, SyntaxKind::R_PAREN)
11632 }
11633 #[inline]
11634 pub fn for_token(&self) -> Option<SyntaxToken> {
11635 support::token(&self.syntax, SyntaxKind::FOR_KW)
11636 }
11637 #[inline]
11638 pub fn in_token(&self) -> Option<SyntaxToken> {
11639 support::token(&self.syntax, SyntaxKind::IN_KW)
11640 }
11641 #[inline]
11642 pub fn values_token(&self) -> Option<SyntaxToken> {
11643 support::token(&self.syntax, SyntaxKind::VALUES_KW)
11644 }
11645}
11646
11647#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11648pub struct PartitionForValuesWith {
11649 pub(crate) syntax: SyntaxNode,
11650}
11651impl PartitionForValuesWith {
11652 #[inline]
11653 pub fn literal(&self) -> Option<Literal> {
11654 support::child(&self.syntax)
11655 }
11656 #[inline]
11657 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
11658 support::token(&self.syntax, SyntaxKind::L_PAREN)
11659 }
11660 #[inline]
11661 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
11662 support::token(&self.syntax, SyntaxKind::R_PAREN)
11663 }
11664 #[inline]
11665 pub fn comma_token(&self) -> Option<SyntaxToken> {
11666 support::token(&self.syntax, SyntaxKind::COMMA)
11667 }
11668 #[inline]
11669 pub fn for_token(&self) -> Option<SyntaxToken> {
11670 support::token(&self.syntax, SyntaxKind::FOR_KW)
11671 }
11672 #[inline]
11673 pub fn ident_token(&self) -> Option<SyntaxToken> {
11674 support::token(&self.syntax, SyntaxKind::IDENT)
11675 }
11676 #[inline]
11677 pub fn values_token(&self) -> Option<SyntaxToken> {
11678 support::token(&self.syntax, SyntaxKind::VALUES_KW)
11679 }
11680 #[inline]
11681 pub fn with_token(&self) -> Option<SyntaxToken> {
11682 support::token(&self.syntax, SyntaxKind::WITH_KW)
11683 }
11684}
11685
11686#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11687pub struct PartitionItem {
11688 pub(crate) syntax: SyntaxNode,
11689}
11690impl PartitionItem {
11691 #[inline]
11692 pub fn collate(&self) -> Option<Collate> {
11693 support::child(&self.syntax)
11694 }
11695 #[inline]
11696 pub fn expr(&self) -> Option<Expr> {
11697 support::child(&self.syntax)
11698 }
11699}
11700
11701#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11702pub struct PartitionItemList {
11703 pub(crate) syntax: SyntaxNode,
11704}
11705impl PartitionItemList {
11706 #[inline]
11707 pub fn partition_items(&self) -> AstChildren<PartitionItem> {
11708 support::children(&self.syntax)
11709 }
11710 #[inline]
11711 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
11712 support::token(&self.syntax, SyntaxKind::L_PAREN)
11713 }
11714 #[inline]
11715 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
11716 support::token(&self.syntax, SyntaxKind::R_PAREN)
11717 }
11718}
11719
11720#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11721pub struct PartitionOf {
11722 pub(crate) syntax: SyntaxNode,
11723}
11724impl PartitionOf {
11725 #[inline]
11726 pub fn ty(&self) -> Option<Type> {
11727 support::child(&self.syntax)
11728 }
11729 #[inline]
11730 pub fn of_token(&self) -> Option<SyntaxToken> {
11731 support::token(&self.syntax, SyntaxKind::OF_KW)
11732 }
11733 #[inline]
11734 pub fn partition_token(&self) -> Option<SyntaxToken> {
11735 support::token(&self.syntax, SyntaxKind::PARTITION_KW)
11736 }
11737}
11738
11739#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11740pub struct Path {
11741 pub(crate) syntax: SyntaxNode,
11742}
11743impl Path {
11744 #[inline]
11745 pub fn qualifier(&self) -> Option<Path> {
11746 support::child(&self.syntax)
11747 }
11748 #[inline]
11749 pub fn segment(&self) -> Option<PathSegment> {
11750 support::child(&self.syntax)
11751 }
11752 #[inline]
11753 pub fn dot_token(&self) -> Option<SyntaxToken> {
11754 support::token(&self.syntax, SyntaxKind::DOT)
11755 }
11756}
11757
11758#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11759pub struct PathSegment {
11760 pub(crate) syntax: SyntaxNode,
11761}
11762impl PathSegment {
11763 #[inline]
11764 pub fn name(&self) -> Option<Name> {
11765 support::child(&self.syntax)
11766 }
11767 #[inline]
11768 pub fn name_ref(&self) -> Option<NameRef> {
11769 support::child(&self.syntax)
11770 }
11771}
11772
11773#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11774pub struct PathType {
11775 pub(crate) syntax: SyntaxNode,
11776}
11777impl PathType {
11778 #[inline]
11779 pub fn arg_list(&self) -> Option<ArgList> {
11780 support::child(&self.syntax)
11781 }
11782 #[inline]
11783 pub fn path(&self) -> Option<Path> {
11784 support::child(&self.syntax)
11785 }
11786}
11787
11788#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11789pub struct PercentType {
11790 pub(crate) syntax: SyntaxNode,
11791}
11792impl PercentType {
11793 #[inline]
11794 pub fn percent_token(&self) -> Option<SyntaxToken> {
11795 support::token(&self.syntax, SyntaxKind::PERCENT)
11796 }
11797 #[inline]
11798 pub fn type_token(&self) -> Option<SyntaxToken> {
11799 support::token(&self.syntax, SyntaxKind::TYPE_KW)
11800 }
11801}
11802
11803#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11804pub struct PercentTypeClause {
11805 pub(crate) syntax: SyntaxNode,
11806}
11807impl PercentTypeClause {
11808 #[inline]
11809 pub fn path(&self) -> Option<Path> {
11810 support::child(&self.syntax)
11811 }
11812 #[inline]
11813 pub fn percent_type_clause(&self) -> Option<PercentTypeClause> {
11814 support::child(&self.syntax)
11815 }
11816}
11817
11818#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11819pub struct PositionFn {
11820 pub(crate) syntax: SyntaxNode,
11821}
11822impl PositionFn {
11823 #[inline]
11824 pub fn expr(&self) -> Option<Expr> {
11825 support::child(&self.syntax)
11826 }
11827 #[inline]
11828 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
11829 support::token(&self.syntax, SyntaxKind::L_PAREN)
11830 }
11831 #[inline]
11832 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
11833 support::token(&self.syntax, SyntaxKind::R_PAREN)
11834 }
11835 #[inline]
11836 pub fn in_token(&self) -> Option<SyntaxToken> {
11837 support::token(&self.syntax, SyntaxKind::IN_KW)
11838 }
11839 #[inline]
11840 pub fn position_token(&self) -> Option<SyntaxToken> {
11841 support::token(&self.syntax, SyntaxKind::POSITION_KW)
11842 }
11843}
11844
11845#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11846pub struct PostfixExpr {
11847 pub(crate) syntax: SyntaxNode,
11848}
11849impl PostfixExpr {
11850 #[inline]
11851 pub fn expr(&self) -> Option<Expr> {
11852 support::child(&self.syntax)
11853 }
11854}
11855
11856#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11857pub struct PrefixExpr {
11858 pub(crate) syntax: SyntaxNode,
11859}
11860impl PrefixExpr {
11861 #[inline]
11862 pub fn expr(&self) -> Option<Expr> {
11863 support::child(&self.syntax)
11864 }
11865}
11866
11867#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11868pub struct Prepare {
11869 pub(crate) syntax: SyntaxNode,
11870}
11871impl Prepare {
11872 #[inline]
11873 pub fn name(&self) -> Option<Name> {
11874 support::child(&self.syntax)
11875 }
11876 #[inline]
11877 pub fn preparable_stmt(&self) -> Option<PreparableStmt> {
11878 support::child(&self.syntax)
11879 }
11880 #[inline]
11881 pub fn as_token(&self) -> Option<SyntaxToken> {
11882 support::token(&self.syntax, SyntaxKind::AS_KW)
11883 }
11884 #[inline]
11885 pub fn prepare_token(&self) -> Option<SyntaxToken> {
11886 support::token(&self.syntax, SyntaxKind::PREPARE_KW)
11887 }
11888}
11889
11890#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11891pub struct PrepareTransaction {
11892 pub(crate) syntax: SyntaxNode,
11893}
11894impl PrepareTransaction {
11895 #[inline]
11896 pub fn literal(&self) -> Option<Literal> {
11897 support::child(&self.syntax)
11898 }
11899 #[inline]
11900 pub fn prepare_token(&self) -> Option<SyntaxToken> {
11901 support::token(&self.syntax, SyntaxKind::PREPARE_KW)
11902 }
11903 #[inline]
11904 pub fn transaction_token(&self) -> Option<SyntaxToken> {
11905 support::token(&self.syntax, SyntaxKind::TRANSACTION_KW)
11906 }
11907}
11908
11909#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11910pub struct PreserveRows {
11911 pub(crate) syntax: SyntaxNode,
11912}
11913impl PreserveRows {
11914 #[inline]
11915 pub fn preserve_token(&self) -> Option<SyntaxToken> {
11916 support::token(&self.syntax, SyntaxKind::PRESERVE_KW)
11917 }
11918 #[inline]
11919 pub fn rows_token(&self) -> Option<SyntaxToken> {
11920 support::token(&self.syntax, SyntaxKind::ROWS_KW)
11921 }
11922}
11923
11924#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11925pub struct PrimaryKeyConstraint {
11926 pub(crate) syntax: SyntaxNode,
11927}
11928impl PrimaryKeyConstraint {
11929 #[inline]
11930 pub fn column_list(&self) -> Option<ColumnList> {
11931 support::child(&self.syntax)
11932 }
11933 #[inline]
11934 pub fn name(&self) -> Option<Name> {
11935 support::child(&self.syntax)
11936 }
11937 #[inline]
11938 pub fn partition_item_list(&self) -> Option<PartitionItemList> {
11939 support::child(&self.syntax)
11940 }
11941 #[inline]
11942 pub fn using_index(&self) -> Option<UsingIndex> {
11943 support::child(&self.syntax)
11944 }
11945 #[inline]
11946 pub fn constraint_token(&self) -> Option<SyntaxToken> {
11947 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
11948 }
11949 #[inline]
11950 pub fn key_token(&self) -> Option<SyntaxToken> {
11951 support::token(&self.syntax, SyntaxKind::KEY_KW)
11952 }
11953 #[inline]
11954 pub fn primary_token(&self) -> Option<SyntaxToken> {
11955 support::token(&self.syntax, SyntaxKind::PRIMARY_KW)
11956 }
11957}
11958
11959#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11960pub struct PrivilegeTarget {
11961 pub(crate) syntax: SyntaxNode,
11962}
11963impl PrivilegeTarget {
11964 #[inline]
11965 pub fn functions_token(&self) -> Option<SyntaxToken> {
11966 support::token(&self.syntax, SyntaxKind::FUNCTIONS_KW)
11967 }
11968 #[inline]
11969 pub fn large_token(&self) -> Option<SyntaxToken> {
11970 support::token(&self.syntax, SyntaxKind::LARGE_KW)
11971 }
11972 #[inline]
11973 pub fn objects_token(&self) -> Option<SyntaxToken> {
11974 support::token(&self.syntax, SyntaxKind::OBJECTS_KW)
11975 }
11976 #[inline]
11977 pub fn routines_token(&self) -> Option<SyntaxToken> {
11978 support::token(&self.syntax, SyntaxKind::ROUTINES_KW)
11979 }
11980 #[inline]
11981 pub fn schemas_token(&self) -> Option<SyntaxToken> {
11982 support::token(&self.syntax, SyntaxKind::SCHEMAS_KW)
11983 }
11984 #[inline]
11985 pub fn sequences_token(&self) -> Option<SyntaxToken> {
11986 support::token(&self.syntax, SyntaxKind::SEQUENCES_KW)
11987 }
11988 #[inline]
11989 pub fn tables_token(&self) -> Option<SyntaxToken> {
11990 support::token(&self.syntax, SyntaxKind::TABLES_KW)
11991 }
11992 #[inline]
11993 pub fn types_token(&self) -> Option<SyntaxToken> {
11994 support::token(&self.syntax, SyntaxKind::TYPES_KW)
11995 }
11996}
11997
11998#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11999pub struct Privileges {
12000 pub(crate) syntax: SyntaxNode,
12001}
12002impl Privileges {
12003 #[inline]
12004 pub fn column_list(&self) -> Option<ColumnList> {
12005 support::child(&self.syntax)
12006 }
12007 #[inline]
12008 pub fn revoke_command_list(&self) -> Option<RevokeCommandList> {
12009 support::child(&self.syntax)
12010 }
12011 #[inline]
12012 pub fn all_token(&self) -> Option<SyntaxToken> {
12013 support::token(&self.syntax, SyntaxKind::ALL_KW)
12014 }
12015 #[inline]
12016 pub fn privileges_token(&self) -> Option<SyntaxToken> {
12017 support::token(&self.syntax, SyntaxKind::PRIVILEGES_KW)
12018 }
12019}
12020
12021#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12022pub struct PublicationObject {
12023 pub(crate) syntax: SyntaxNode,
12024}
12025impl PublicationObject {
12026 #[inline]
12027 pub fn column_list(&self) -> Option<ColumnList> {
12028 support::child(&self.syntax)
12029 }
12030 #[inline]
12031 pub fn name_ref(&self) -> Option<NameRef> {
12032 support::child(&self.syntax)
12033 }
12034 #[inline]
12035 pub fn path(&self) -> Option<Path> {
12036 support::child(&self.syntax)
12037 }
12038 #[inline]
12039 pub fn where_condition_clause(&self) -> Option<WhereConditionClause> {
12040 support::child(&self.syntax)
12041 }
12042 #[inline]
12043 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
12044 support::token(&self.syntax, SyntaxKind::L_PAREN)
12045 }
12046 #[inline]
12047 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
12048 support::token(&self.syntax, SyntaxKind::R_PAREN)
12049 }
12050 #[inline]
12051 pub fn star_token(&self) -> Option<SyntaxToken> {
12052 support::token(&self.syntax, SyntaxKind::STAR)
12053 }
12054 #[inline]
12055 pub fn current_schema_token(&self) -> Option<SyntaxToken> {
12056 support::token(&self.syntax, SyntaxKind::CURRENT_SCHEMA_KW)
12057 }
12058 #[inline]
12059 pub fn in_token(&self) -> Option<SyntaxToken> {
12060 support::token(&self.syntax, SyntaxKind::IN_KW)
12061 }
12062 #[inline]
12063 pub fn only_token(&self) -> Option<SyntaxToken> {
12064 support::token(&self.syntax, SyntaxKind::ONLY_KW)
12065 }
12066 #[inline]
12067 pub fn schema_token(&self) -> Option<SyntaxToken> {
12068 support::token(&self.syntax, SyntaxKind::SCHEMA_KW)
12069 }
12070 #[inline]
12071 pub fn table_token(&self) -> Option<SyntaxToken> {
12072 support::token(&self.syntax, SyntaxKind::TABLE_KW)
12073 }
12074 #[inline]
12075 pub fn tables_token(&self) -> Option<SyntaxToken> {
12076 support::token(&self.syntax, SyntaxKind::TABLES_KW)
12077 }
12078}
12079
12080#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12081pub struct ReadCommitted {
12082 pub(crate) syntax: SyntaxNode,
12083}
12084impl ReadCommitted {
12085 #[inline]
12086 pub fn committed_token(&self) -> Option<SyntaxToken> {
12087 support::token(&self.syntax, SyntaxKind::COMMITTED_KW)
12088 }
12089 #[inline]
12090 pub fn isolation_token(&self) -> Option<SyntaxToken> {
12091 support::token(&self.syntax, SyntaxKind::ISOLATION_KW)
12092 }
12093 #[inline]
12094 pub fn level_token(&self) -> Option<SyntaxToken> {
12095 support::token(&self.syntax, SyntaxKind::LEVEL_KW)
12096 }
12097 #[inline]
12098 pub fn read_token(&self) -> Option<SyntaxToken> {
12099 support::token(&self.syntax, SyntaxKind::READ_KW)
12100 }
12101}
12102
12103#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12104pub struct ReadOnly {
12105 pub(crate) syntax: SyntaxNode,
12106}
12107impl ReadOnly {
12108 #[inline]
12109 pub fn only_token(&self) -> Option<SyntaxToken> {
12110 support::token(&self.syntax, SyntaxKind::ONLY_KW)
12111 }
12112 #[inline]
12113 pub fn read_token(&self) -> Option<SyntaxToken> {
12114 support::token(&self.syntax, SyntaxKind::READ_KW)
12115 }
12116}
12117
12118#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12119pub struct ReadUncommitted {
12120 pub(crate) syntax: SyntaxNode,
12121}
12122impl ReadUncommitted {
12123 #[inline]
12124 pub fn isolation_token(&self) -> Option<SyntaxToken> {
12125 support::token(&self.syntax, SyntaxKind::ISOLATION_KW)
12126 }
12127 #[inline]
12128 pub fn level_token(&self) -> Option<SyntaxToken> {
12129 support::token(&self.syntax, SyntaxKind::LEVEL_KW)
12130 }
12131 #[inline]
12132 pub fn read_token(&self) -> Option<SyntaxToken> {
12133 support::token(&self.syntax, SyntaxKind::READ_KW)
12134 }
12135 #[inline]
12136 pub fn uncommitted_token(&self) -> Option<SyntaxToken> {
12137 support::token(&self.syntax, SyntaxKind::UNCOMMITTED_KW)
12138 }
12139}
12140
12141#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12142pub struct ReadWrite {
12143 pub(crate) syntax: SyntaxNode,
12144}
12145impl ReadWrite {
12146 #[inline]
12147 pub fn read_token(&self) -> Option<SyntaxToken> {
12148 support::token(&self.syntax, SyntaxKind::READ_KW)
12149 }
12150 #[inline]
12151 pub fn write_token(&self) -> Option<SyntaxToken> {
12152 support::token(&self.syntax, SyntaxKind::WRITE_KW)
12153 }
12154}
12155
12156#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12157pub struct Reassign {
12158 pub(crate) syntax: SyntaxNode,
12159}
12160impl Reassign {
12161 #[inline]
12162 pub fn new_roles(&self) -> Option<RoleList> {
12163 support::child(&self.syntax)
12164 }
12165 #[inline]
12166 pub fn old_roles(&self) -> Option<RoleList> {
12167 support::child(&self.syntax)
12168 }
12169 #[inline]
12170 pub fn by_token(&self) -> Option<SyntaxToken> {
12171 support::token(&self.syntax, SyntaxKind::BY_KW)
12172 }
12173 #[inline]
12174 pub fn owned_token(&self) -> Option<SyntaxToken> {
12175 support::token(&self.syntax, SyntaxKind::OWNED_KW)
12176 }
12177 #[inline]
12178 pub fn reassign_token(&self) -> Option<SyntaxToken> {
12179 support::token(&self.syntax, SyntaxKind::REASSIGN_KW)
12180 }
12181 #[inline]
12182 pub fn to_token(&self) -> Option<SyntaxToken> {
12183 support::token(&self.syntax, SyntaxKind::TO_KW)
12184 }
12185}
12186
12187#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12188pub struct ReferencesConstraint {
12189 pub(crate) syntax: SyntaxNode,
12190}
12191impl ReferencesConstraint {
12192 #[inline]
12193 pub fn match_type(&self) -> Option<MatchType> {
12194 support::child(&self.syntax)
12195 }
12196 #[inline]
12197 pub fn name(&self) -> Option<Name> {
12198 support::child(&self.syntax)
12199 }
12200 #[inline]
12201 pub fn name_ref(&self) -> Option<NameRef> {
12202 support::child(&self.syntax)
12203 }
12204 #[inline]
12205 pub fn on_delete_action(&self) -> Option<OnDeleteAction> {
12206 support::child(&self.syntax)
12207 }
12208 #[inline]
12209 pub fn on_update_action(&self) -> Option<OnUpdateAction> {
12210 support::child(&self.syntax)
12211 }
12212 #[inline]
12213 pub fn path(&self) -> Option<Path> {
12214 support::child(&self.syntax)
12215 }
12216 #[inline]
12217 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
12218 support::token(&self.syntax, SyntaxKind::L_PAREN)
12219 }
12220 #[inline]
12221 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
12222 support::token(&self.syntax, SyntaxKind::R_PAREN)
12223 }
12224 #[inline]
12225 pub fn constraint_token(&self) -> Option<SyntaxToken> {
12226 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
12227 }
12228 #[inline]
12229 pub fn references_token(&self) -> Option<SyntaxToken> {
12230 support::token(&self.syntax, SyntaxKind::REFERENCES_KW)
12231 }
12232}
12233
12234#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12235pub struct Referencing {
12236 pub(crate) syntax: SyntaxNode,
12237}
12238impl Referencing {
12239 #[inline]
12240 pub fn referencing_tables(&self) -> AstChildren<ReferencingTable> {
12241 support::children(&self.syntax)
12242 }
12243 #[inline]
12244 pub fn referencing_token(&self) -> Option<SyntaxToken> {
12245 support::token(&self.syntax, SyntaxKind::REFERENCING_KW)
12246 }
12247}
12248
12249#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12250pub struct ReferencingTable {
12251 pub(crate) syntax: SyntaxNode,
12252}
12253impl ReferencingTable {
12254 #[inline]
12255 pub fn name_ref(&self) -> Option<NameRef> {
12256 support::child(&self.syntax)
12257 }
12258 #[inline]
12259 pub fn as_token(&self) -> Option<SyntaxToken> {
12260 support::token(&self.syntax, SyntaxKind::AS_KW)
12261 }
12262 #[inline]
12263 pub fn new_token(&self) -> Option<SyntaxToken> {
12264 support::token(&self.syntax, SyntaxKind::NEW_KW)
12265 }
12266 #[inline]
12267 pub fn old_token(&self) -> Option<SyntaxToken> {
12268 support::token(&self.syntax, SyntaxKind::OLD_KW)
12269 }
12270 #[inline]
12271 pub fn table_token(&self) -> Option<SyntaxToken> {
12272 support::token(&self.syntax, SyntaxKind::TABLE_KW)
12273 }
12274}
12275
12276#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12277pub struct Refresh {
12278 pub(crate) syntax: SyntaxNode,
12279}
12280impl Refresh {
12281 #[inline]
12282 pub fn path(&self) -> Option<Path> {
12283 support::child(&self.syntax)
12284 }
12285 #[inline]
12286 pub fn with_data(&self) -> Option<WithData> {
12287 support::child(&self.syntax)
12288 }
12289 #[inline]
12290 pub fn with_no_data(&self) -> Option<WithNoData> {
12291 support::child(&self.syntax)
12292 }
12293 #[inline]
12294 pub fn concurrently_token(&self) -> Option<SyntaxToken> {
12295 support::token(&self.syntax, SyntaxKind::CONCURRENTLY_KW)
12296 }
12297 #[inline]
12298 pub fn materialized_token(&self) -> Option<SyntaxToken> {
12299 support::token(&self.syntax, SyntaxKind::MATERIALIZED_KW)
12300 }
12301 #[inline]
12302 pub fn refresh_token(&self) -> Option<SyntaxToken> {
12303 support::token(&self.syntax, SyntaxKind::REFRESH_KW)
12304 }
12305 #[inline]
12306 pub fn view_token(&self) -> Option<SyntaxToken> {
12307 support::token(&self.syntax, SyntaxKind::VIEW_KW)
12308 }
12309}
12310
12311#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12312pub struct RefreshCollationVersion {
12313 pub(crate) syntax: SyntaxNode,
12314}
12315impl RefreshCollationVersion {
12316 #[inline]
12317 pub fn collation_token(&self) -> Option<SyntaxToken> {
12318 support::token(&self.syntax, SyntaxKind::COLLATION_KW)
12319 }
12320 #[inline]
12321 pub fn refresh_token(&self) -> Option<SyntaxToken> {
12322 support::token(&self.syntax, SyntaxKind::REFRESH_KW)
12323 }
12324 #[inline]
12325 pub fn version_token(&self) -> Option<SyntaxToken> {
12326 support::token(&self.syntax, SyntaxKind::VERSION_KW)
12327 }
12328}
12329
12330#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12331pub struct RefreshVersion {
12332 pub(crate) syntax: SyntaxNode,
12333}
12334impl RefreshVersion {
12335 #[inline]
12336 pub fn refresh_token(&self) -> Option<SyntaxToken> {
12337 support::token(&self.syntax, SyntaxKind::REFRESH_KW)
12338 }
12339 #[inline]
12340 pub fn version_token(&self) -> Option<SyntaxToken> {
12341 support::token(&self.syntax, SyntaxKind::VERSION_KW)
12342 }
12343}
12344
12345#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12346pub struct Reindex {
12347 pub(crate) syntax: SyntaxNode,
12348}
12349impl Reindex {
12350 #[inline]
12351 pub fn path(&self) -> Option<Path> {
12352 support::child(&self.syntax)
12353 }
12354 #[inline]
12355 pub fn database_token(&self) -> Option<SyntaxToken> {
12356 support::token(&self.syntax, SyntaxKind::DATABASE_KW)
12357 }
12358 #[inline]
12359 pub fn index_token(&self) -> Option<SyntaxToken> {
12360 support::token(&self.syntax, SyntaxKind::INDEX_KW)
12361 }
12362 #[inline]
12363 pub fn reindex_token(&self) -> Option<SyntaxToken> {
12364 support::token(&self.syntax, SyntaxKind::REINDEX_KW)
12365 }
12366 #[inline]
12367 pub fn schema_token(&self) -> Option<SyntaxToken> {
12368 support::token(&self.syntax, SyntaxKind::SCHEMA_KW)
12369 }
12370 #[inline]
12371 pub fn system_token(&self) -> Option<SyntaxToken> {
12372 support::token(&self.syntax, SyntaxKind::SYSTEM_KW)
12373 }
12374 #[inline]
12375 pub fn table_token(&self) -> Option<SyntaxToken> {
12376 support::token(&self.syntax, SyntaxKind::TABLE_KW)
12377 }
12378}
12379
12380#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12381pub struct RelationName {
12382 pub(crate) syntax: SyntaxNode,
12383}
12384impl RelationName {
12385 #[inline]
12386 pub fn path(&self) -> Option<Path> {
12387 support::child(&self.syntax)
12388 }
12389 #[inline]
12390 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
12391 support::token(&self.syntax, SyntaxKind::L_PAREN)
12392 }
12393 #[inline]
12394 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
12395 support::token(&self.syntax, SyntaxKind::R_PAREN)
12396 }
12397 #[inline]
12398 pub fn star_token(&self) -> Option<SyntaxToken> {
12399 support::token(&self.syntax, SyntaxKind::STAR)
12400 }
12401 #[inline]
12402 pub fn only_token(&self) -> Option<SyntaxToken> {
12403 support::token(&self.syntax, SyntaxKind::ONLY_KW)
12404 }
12405}
12406
12407#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12408pub struct ReleaseSavepoint {
12409 pub(crate) syntax: SyntaxNode,
12410}
12411impl ReleaseSavepoint {
12412 #[inline]
12413 pub fn name_ref(&self) -> Option<NameRef> {
12414 support::child(&self.syntax)
12415 }
12416 #[inline]
12417 pub fn release_token(&self) -> Option<SyntaxToken> {
12418 support::token(&self.syntax, SyntaxKind::RELEASE_KW)
12419 }
12420 #[inline]
12421 pub fn savepoint_token(&self) -> Option<SyntaxToken> {
12422 support::token(&self.syntax, SyntaxKind::SAVEPOINT_KW)
12423 }
12424}
12425
12426#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12427pub struct RenameColumn {
12428 pub(crate) syntax: SyntaxNode,
12429}
12430impl RenameColumn {
12431 #[inline]
12432 pub fn column_token(&self) -> Option<SyntaxToken> {
12433 support::token(&self.syntax, SyntaxKind::COLUMN_KW)
12434 }
12435 #[inline]
12436 pub fn rename_token(&self) -> Option<SyntaxToken> {
12437 support::token(&self.syntax, SyntaxKind::RENAME_KW)
12438 }
12439 #[inline]
12440 pub fn to_token(&self) -> Option<SyntaxToken> {
12441 support::token(&self.syntax, SyntaxKind::TO_KW)
12442 }
12443}
12444
12445#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12446pub struct RenameConstraint {
12447 pub(crate) syntax: SyntaxNode,
12448}
12449impl RenameConstraint {
12450 #[inline]
12451 pub fn name(&self) -> Option<Name> {
12452 support::child(&self.syntax)
12453 }
12454 #[inline]
12455 pub fn name_ref(&self) -> Option<NameRef> {
12456 support::child(&self.syntax)
12457 }
12458 #[inline]
12459 pub fn constraint_token(&self) -> Option<SyntaxToken> {
12460 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
12461 }
12462 #[inline]
12463 pub fn rename_token(&self) -> Option<SyntaxToken> {
12464 support::token(&self.syntax, SyntaxKind::RENAME_KW)
12465 }
12466 #[inline]
12467 pub fn to_token(&self) -> Option<SyntaxToken> {
12468 support::token(&self.syntax, SyntaxKind::TO_KW)
12469 }
12470}
12471
12472#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12473pub struct RenameTo {
12474 pub(crate) syntax: SyntaxNode,
12475}
12476impl RenameTo {
12477 #[inline]
12478 pub fn name(&self) -> Option<Name> {
12479 support::child(&self.syntax)
12480 }
12481 #[inline]
12482 pub fn rename_token(&self) -> Option<SyntaxToken> {
12483 support::token(&self.syntax, SyntaxKind::RENAME_KW)
12484 }
12485 #[inline]
12486 pub fn to_token(&self) -> Option<SyntaxToken> {
12487 support::token(&self.syntax, SyntaxKind::TO_KW)
12488 }
12489}
12490
12491#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12492pub struct RepeatableClause {
12493 pub(crate) syntax: SyntaxNode,
12494}
12495impl RepeatableClause {
12496 #[inline]
12497 pub fn expr(&self) -> Option<Expr> {
12498 support::child(&self.syntax)
12499 }
12500 #[inline]
12501 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
12502 support::token(&self.syntax, SyntaxKind::L_PAREN)
12503 }
12504 #[inline]
12505 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
12506 support::token(&self.syntax, SyntaxKind::R_PAREN)
12507 }
12508 #[inline]
12509 pub fn repeatable_token(&self) -> Option<SyntaxToken> {
12510 support::token(&self.syntax, SyntaxKind::REPEATABLE_KW)
12511 }
12512}
12513
12514#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12515pub struct RepeatableRead {
12516 pub(crate) syntax: SyntaxNode,
12517}
12518impl RepeatableRead {
12519 #[inline]
12520 pub fn isolation_token(&self) -> Option<SyntaxToken> {
12521 support::token(&self.syntax, SyntaxKind::ISOLATION_KW)
12522 }
12523 #[inline]
12524 pub fn level_token(&self) -> Option<SyntaxToken> {
12525 support::token(&self.syntax, SyntaxKind::LEVEL_KW)
12526 }
12527 #[inline]
12528 pub fn read_token(&self) -> Option<SyntaxToken> {
12529 support::token(&self.syntax, SyntaxKind::READ_KW)
12530 }
12531 #[inline]
12532 pub fn repeatable_token(&self) -> Option<SyntaxToken> {
12533 support::token(&self.syntax, SyntaxKind::REPEATABLE_KW)
12534 }
12535}
12536
12537#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12538pub struct ReplicaIdentity {
12539 pub(crate) syntax: SyntaxNode,
12540}
12541impl ReplicaIdentity {
12542 #[inline]
12543 pub fn identity_token(&self) -> Option<SyntaxToken> {
12544 support::token(&self.syntax, SyntaxKind::IDENTITY_KW)
12545 }
12546 #[inline]
12547 pub fn replica_token(&self) -> Option<SyntaxToken> {
12548 support::token(&self.syntax, SyntaxKind::REPLICA_KW)
12549 }
12550}
12551
12552#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12553pub struct Reset {
12554 pub(crate) syntax: SyntaxNode,
12555}
12556impl Reset {
12557 #[inline]
12558 pub fn name_ref(&self) -> Option<NameRef> {
12559 support::child(&self.syntax)
12560 }
12561 #[inline]
12562 pub fn all_token(&self) -> Option<SyntaxToken> {
12563 support::token(&self.syntax, SyntaxKind::ALL_KW)
12564 }
12565 #[inline]
12566 pub fn reset_token(&self) -> Option<SyntaxToken> {
12567 support::token(&self.syntax, SyntaxKind::RESET_KW)
12568 }
12569}
12570
12571#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12572pub struct ResetConfigParam {
12573 pub(crate) syntax: SyntaxNode,
12574}
12575impl ResetConfigParam {
12576 #[inline]
12577 pub fn path(&self) -> Option<Path> {
12578 support::child(&self.syntax)
12579 }
12580 #[inline]
12581 pub fn all_token(&self) -> Option<SyntaxToken> {
12582 support::token(&self.syntax, SyntaxKind::ALL_KW)
12583 }
12584 #[inline]
12585 pub fn reset_token(&self) -> Option<SyntaxToken> {
12586 support::token(&self.syntax, SyntaxKind::RESET_KW)
12587 }
12588}
12589
12590#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12591pub struct ResetFuncOption {
12592 pub(crate) syntax: SyntaxNode,
12593}
12594impl ResetFuncOption {
12595 #[inline]
12596 pub fn name_ref(&self) -> Option<NameRef> {
12597 support::child(&self.syntax)
12598 }
12599 #[inline]
12600 pub fn reset_token(&self) -> Option<SyntaxToken> {
12601 support::token(&self.syntax, SyntaxKind::RESET_KW)
12602 }
12603}
12604
12605#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12606pub struct ResetOptions {
12607 pub(crate) syntax: SyntaxNode,
12608}
12609impl ResetOptions {
12610 #[inline]
12611 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
12612 support::token(&self.syntax, SyntaxKind::L_PAREN)
12613 }
12614 #[inline]
12615 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
12616 support::token(&self.syntax, SyntaxKind::R_PAREN)
12617 }
12618 #[inline]
12619 pub fn reset_token(&self) -> Option<SyntaxToken> {
12620 support::token(&self.syntax, SyntaxKind::RESET_KW)
12621 }
12622}
12623
12624#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12625pub struct ResetSessionAuth {
12626 pub(crate) syntax: SyntaxNode,
12627}
12628impl ResetSessionAuth {
12629 #[inline]
12630 pub fn authorization_token(&self) -> Option<SyntaxToken> {
12631 support::token(&self.syntax, SyntaxKind::AUTHORIZATION_KW)
12632 }
12633 #[inline]
12634 pub fn reset_token(&self) -> Option<SyntaxToken> {
12635 support::token(&self.syntax, SyntaxKind::RESET_KW)
12636 }
12637 #[inline]
12638 pub fn session_token(&self) -> Option<SyntaxToken> {
12639 support::token(&self.syntax, SyntaxKind::SESSION_KW)
12640 }
12641}
12642
12643#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12644pub struct Restart {
12645 pub(crate) syntax: SyntaxNode,
12646}
12647impl Restart {
12648 #[inline]
12649 pub fn restart_token(&self) -> Option<SyntaxToken> {
12650 support::token(&self.syntax, SyntaxKind::RESTART_KW)
12651 }
12652 #[inline]
12653 pub fn with_token(&self) -> Option<SyntaxToken> {
12654 support::token(&self.syntax, SyntaxKind::WITH_KW)
12655 }
12656}
12657
12658#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12659pub struct Restrict {
12660 pub(crate) syntax: SyntaxNode,
12661}
12662impl Restrict {
12663 #[inline]
12664 pub fn restrict_token(&self) -> Option<SyntaxToken> {
12665 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
12666 }
12667}
12668
12669#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12670pub struct RetType {
12671 pub(crate) syntax: SyntaxNode,
12672}
12673impl RetType {
12674 #[inline]
12675 pub fn ty(&self) -> Option<Type> {
12676 support::child(&self.syntax)
12677 }
12678 #[inline]
12679 pub fn returns_token(&self) -> Option<SyntaxToken> {
12680 support::token(&self.syntax, SyntaxKind::RETURNS_KW)
12681 }
12682}
12683
12684#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12685pub struct ReturnFuncOption {
12686 pub(crate) syntax: SyntaxNode,
12687}
12688impl ReturnFuncOption {
12689 #[inline]
12690 pub fn expr(&self) -> Option<Expr> {
12691 support::child(&self.syntax)
12692 }
12693 #[inline]
12694 pub fn return_token(&self) -> Option<SyntaxToken> {
12695 support::token(&self.syntax, SyntaxKind::RETURN_KW)
12696 }
12697}
12698
12699#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12700pub struct ReturningClause {
12701 pub(crate) syntax: SyntaxNode,
12702}
12703impl ReturningClause {
12704 #[inline]
12705 pub fn returning_option_list(&self) -> Option<ReturningOptionList> {
12706 support::child(&self.syntax)
12707 }
12708 #[inline]
12709 pub fn target_list(&self) -> Option<TargetList> {
12710 support::child(&self.syntax)
12711 }
12712 #[inline]
12713 pub fn returning_token(&self) -> Option<SyntaxToken> {
12714 support::token(&self.syntax, SyntaxKind::RETURNING_KW)
12715 }
12716}
12717
12718#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12719pub struct ReturningOption {
12720 pub(crate) syntax: SyntaxNode,
12721}
12722impl ReturningOption {
12723 #[inline]
12724 pub fn name(&self) -> Option<Name> {
12725 support::child(&self.syntax)
12726 }
12727 #[inline]
12728 pub fn as_token(&self) -> Option<SyntaxToken> {
12729 support::token(&self.syntax, SyntaxKind::AS_KW)
12730 }
12731 #[inline]
12732 pub fn new_token(&self) -> Option<SyntaxToken> {
12733 support::token(&self.syntax, SyntaxKind::NEW_KW)
12734 }
12735 #[inline]
12736 pub fn old_token(&self) -> Option<SyntaxToken> {
12737 support::token(&self.syntax, SyntaxKind::OLD_KW)
12738 }
12739}
12740
12741#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12742pub struct ReturningOptionList {
12743 pub(crate) syntax: SyntaxNode,
12744}
12745impl ReturningOptionList {
12746 #[inline]
12747 pub fn returning_options(&self) -> AstChildren<ReturningOption> {
12748 support::children(&self.syntax)
12749 }
12750 #[inline]
12751 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
12752 support::token(&self.syntax, SyntaxKind::L_PAREN)
12753 }
12754 #[inline]
12755 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
12756 support::token(&self.syntax, SyntaxKind::R_PAREN)
12757 }
12758 #[inline]
12759 pub fn with_token(&self) -> Option<SyntaxToken> {
12760 support::token(&self.syntax, SyntaxKind::WITH_KW)
12761 }
12762}
12763
12764#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12765pub struct Revoke {
12766 pub(crate) syntax: SyntaxNode,
12767}
12768impl Revoke {
12769 #[inline]
12770 pub fn name_refs(&self) -> AstChildren<NameRef> {
12771 support::children(&self.syntax)
12772 }
12773 #[inline]
12774 pub fn paths(&self) -> AstChildren<Path> {
12775 support::children(&self.syntax)
12776 }
12777 #[inline]
12778 pub fn revoke_command_list(&self) -> Option<RevokeCommandList> {
12779 support::child(&self.syntax)
12780 }
12781 #[inline]
12782 pub fn role(&self) -> Option<Role> {
12783 support::child(&self.syntax)
12784 }
12785 #[inline]
12786 pub fn role_list(&self) -> Option<RoleList> {
12787 support::child(&self.syntax)
12788 }
12789 #[inline]
12790 pub fn all_token(&self) -> Option<SyntaxToken> {
12791 support::token(&self.syntax, SyntaxKind::ALL_KW)
12792 }
12793 #[inline]
12794 pub fn by_token(&self) -> Option<SyntaxToken> {
12795 support::token(&self.syntax, SyntaxKind::BY_KW)
12796 }
12797 #[inline]
12798 pub fn cascade_token(&self) -> Option<SyntaxToken> {
12799 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
12800 }
12801 #[inline]
12802 pub fn for_token(&self) -> Option<SyntaxToken> {
12803 support::token(&self.syntax, SyntaxKind::FOR_KW)
12804 }
12805 #[inline]
12806 pub fn from_token(&self) -> Option<SyntaxToken> {
12807 support::token(&self.syntax, SyntaxKind::FROM_KW)
12808 }
12809 #[inline]
12810 pub fn grant_token(&self) -> Option<SyntaxToken> {
12811 support::token(&self.syntax, SyntaxKind::GRANT_KW)
12812 }
12813 #[inline]
12814 pub fn granted_token(&self) -> Option<SyntaxToken> {
12815 support::token(&self.syntax, SyntaxKind::GRANTED_KW)
12816 }
12817 #[inline]
12818 pub fn in_token(&self) -> Option<SyntaxToken> {
12819 support::token(&self.syntax, SyntaxKind::IN_KW)
12820 }
12821 #[inline]
12822 pub fn on_token(&self) -> Option<SyntaxToken> {
12823 support::token(&self.syntax, SyntaxKind::ON_KW)
12824 }
12825 #[inline]
12826 pub fn option_token(&self) -> Option<SyntaxToken> {
12827 support::token(&self.syntax, SyntaxKind::OPTION_KW)
12828 }
12829 #[inline]
12830 pub fn privileges_token(&self) -> Option<SyntaxToken> {
12831 support::token(&self.syntax, SyntaxKind::PRIVILEGES_KW)
12832 }
12833 #[inline]
12834 pub fn restrict_token(&self) -> Option<SyntaxToken> {
12835 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
12836 }
12837 #[inline]
12838 pub fn revoke_token(&self) -> Option<SyntaxToken> {
12839 support::token(&self.syntax, SyntaxKind::REVOKE_KW)
12840 }
12841 #[inline]
12842 pub fn schema_token(&self) -> Option<SyntaxToken> {
12843 support::token(&self.syntax, SyntaxKind::SCHEMA_KW)
12844 }
12845 #[inline]
12846 pub fn table_token(&self) -> Option<SyntaxToken> {
12847 support::token(&self.syntax, SyntaxKind::TABLE_KW)
12848 }
12849 #[inline]
12850 pub fn tables_token(&self) -> Option<SyntaxToken> {
12851 support::token(&self.syntax, SyntaxKind::TABLES_KW)
12852 }
12853}
12854
12855#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12856pub struct RevokeCommand {
12857 pub(crate) syntax: SyntaxNode,
12858}
12859impl RevokeCommand {
12860 #[inline]
12861 pub fn role(&self) -> Option<Role> {
12862 support::child(&self.syntax)
12863 }
12864 #[inline]
12865 pub fn all_token(&self) -> Option<SyntaxToken> {
12866 support::token(&self.syntax, SyntaxKind::ALL_KW)
12867 }
12868 #[inline]
12869 pub fn alter_token(&self) -> Option<SyntaxToken> {
12870 support::token(&self.syntax, SyntaxKind::ALTER_KW)
12871 }
12872 #[inline]
12873 pub fn create_token(&self) -> Option<SyntaxToken> {
12874 support::token(&self.syntax, SyntaxKind::CREATE_KW)
12875 }
12876 #[inline]
12877 pub fn delete_token(&self) -> Option<SyntaxToken> {
12878 support::token(&self.syntax, SyntaxKind::DELETE_KW)
12879 }
12880 #[inline]
12881 pub fn execute_token(&self) -> Option<SyntaxToken> {
12882 support::token(&self.syntax, SyntaxKind::EXECUTE_KW)
12883 }
12884 #[inline]
12885 pub fn ident_token(&self) -> Option<SyntaxToken> {
12886 support::token(&self.syntax, SyntaxKind::IDENT)
12887 }
12888 #[inline]
12889 pub fn insert_token(&self) -> Option<SyntaxToken> {
12890 support::token(&self.syntax, SyntaxKind::INSERT_KW)
12891 }
12892 #[inline]
12893 pub fn references_token(&self) -> Option<SyntaxToken> {
12894 support::token(&self.syntax, SyntaxKind::REFERENCES_KW)
12895 }
12896 #[inline]
12897 pub fn select_token(&self) -> Option<SyntaxToken> {
12898 support::token(&self.syntax, SyntaxKind::SELECT_KW)
12899 }
12900 #[inline]
12901 pub fn system_token(&self) -> Option<SyntaxToken> {
12902 support::token(&self.syntax, SyntaxKind::SYSTEM_KW)
12903 }
12904 #[inline]
12905 pub fn temp_token(&self) -> Option<SyntaxToken> {
12906 support::token(&self.syntax, SyntaxKind::TEMP_KW)
12907 }
12908 #[inline]
12909 pub fn temporary_token(&self) -> Option<SyntaxToken> {
12910 support::token(&self.syntax, SyntaxKind::TEMPORARY_KW)
12911 }
12912 #[inline]
12913 pub fn trigger_token(&self) -> Option<SyntaxToken> {
12914 support::token(&self.syntax, SyntaxKind::TRIGGER_KW)
12915 }
12916 #[inline]
12917 pub fn truncate_token(&self) -> Option<SyntaxToken> {
12918 support::token(&self.syntax, SyntaxKind::TRUNCATE_KW)
12919 }
12920 #[inline]
12921 pub fn update_token(&self) -> Option<SyntaxToken> {
12922 support::token(&self.syntax, SyntaxKind::UPDATE_KW)
12923 }
12924}
12925
12926#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12927pub struct RevokeCommandList {
12928 pub(crate) syntax: SyntaxNode,
12929}
12930impl RevokeCommandList {
12931 #[inline]
12932 pub fn revoke_commands(&self) -> AstChildren<RevokeCommand> {
12933 support::children(&self.syntax)
12934 }
12935}
12936
12937#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12938pub struct RevokeDefaultPrivileges {
12939 pub(crate) syntax: SyntaxNode,
12940}
12941impl RevokeDefaultPrivileges {
12942 #[inline]
12943 pub fn privilege_target(&self) -> Option<PrivilegeTarget> {
12944 support::child(&self.syntax)
12945 }
12946 #[inline]
12947 pub fn privileges(&self) -> Option<Privileges> {
12948 support::child(&self.syntax)
12949 }
12950 #[inline]
12951 pub fn role_list(&self) -> Option<RoleList> {
12952 support::child(&self.syntax)
12953 }
12954 #[inline]
12955 pub fn cascade_token(&self) -> Option<SyntaxToken> {
12956 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
12957 }
12958 #[inline]
12959 pub fn for_token(&self) -> Option<SyntaxToken> {
12960 support::token(&self.syntax, SyntaxKind::FOR_KW)
12961 }
12962 #[inline]
12963 pub fn from_token(&self) -> Option<SyntaxToken> {
12964 support::token(&self.syntax, SyntaxKind::FROM_KW)
12965 }
12966 #[inline]
12967 pub fn grant_token(&self) -> Option<SyntaxToken> {
12968 support::token(&self.syntax, SyntaxKind::GRANT_KW)
12969 }
12970 #[inline]
12971 pub fn on_token(&self) -> Option<SyntaxToken> {
12972 support::token(&self.syntax, SyntaxKind::ON_KW)
12973 }
12974 #[inline]
12975 pub fn option_token(&self) -> Option<SyntaxToken> {
12976 support::token(&self.syntax, SyntaxKind::OPTION_KW)
12977 }
12978 #[inline]
12979 pub fn restrict_token(&self) -> Option<SyntaxToken> {
12980 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
12981 }
12982 #[inline]
12983 pub fn revoke_token(&self) -> Option<SyntaxToken> {
12984 support::token(&self.syntax, SyntaxKind::REVOKE_KW)
12985 }
12986}
12987
12988#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12989pub struct Role {
12990 pub(crate) syntax: SyntaxNode,
12991}
12992impl Role {
12993 #[inline]
12994 pub fn name_ref(&self) -> Option<NameRef> {
12995 support::child(&self.syntax)
12996 }
12997 #[inline]
12998 pub fn current_role_token(&self) -> Option<SyntaxToken> {
12999 support::token(&self.syntax, SyntaxKind::CURRENT_ROLE_KW)
13000 }
13001 #[inline]
13002 pub fn current_user_token(&self) -> Option<SyntaxToken> {
13003 support::token(&self.syntax, SyntaxKind::CURRENT_USER_KW)
13004 }
13005 #[inline]
13006 pub fn group_token(&self) -> Option<SyntaxToken> {
13007 support::token(&self.syntax, SyntaxKind::GROUP_KW)
13008 }
13009 #[inline]
13010 pub fn session_user_token(&self) -> Option<SyntaxToken> {
13011 support::token(&self.syntax, SyntaxKind::SESSION_USER_KW)
13012 }
13013}
13014
13015#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13016pub struct RoleList {
13017 pub(crate) syntax: SyntaxNode,
13018}
13019impl RoleList {
13020 #[inline]
13021 pub fn roles(&self) -> AstChildren<Role> {
13022 support::children(&self.syntax)
13023 }
13024}
13025
13026#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13027pub struct RoleOption {
13028 pub(crate) syntax: SyntaxNode,
13029}
13030impl RoleOption {
13031 #[inline]
13032 pub fn inherit_token(&self) -> Option<SyntaxToken> {
13033 support::token(&self.syntax, SyntaxKind::INHERIT_KW)
13034 }
13035}
13036
13037#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13038pub struct RoleOptionList {
13039 pub(crate) syntax: SyntaxNode,
13040}
13041impl RoleOptionList {
13042 #[inline]
13043 pub fn role_options(&self) -> AstChildren<RoleOption> {
13044 support::children(&self.syntax)
13045 }
13046 #[inline]
13047 pub fn with_token(&self) -> Option<SyntaxToken> {
13048 support::token(&self.syntax, SyntaxKind::WITH_KW)
13049 }
13050}
13051
13052#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13053pub struct Rollback {
13054 pub(crate) syntax: SyntaxNode,
13055}
13056impl Rollback {
13057 #[inline]
13058 pub fn literal(&self) -> Option<Literal> {
13059 support::child(&self.syntax)
13060 }
13061 #[inline]
13062 pub fn name_ref(&self) -> Option<NameRef> {
13063 support::child(&self.syntax)
13064 }
13065 #[inline]
13066 pub fn abort_token(&self) -> Option<SyntaxToken> {
13067 support::token(&self.syntax, SyntaxKind::ABORT_KW)
13068 }
13069 #[inline]
13070 pub fn and_token(&self) -> Option<SyntaxToken> {
13071 support::token(&self.syntax, SyntaxKind::AND_KW)
13072 }
13073 #[inline]
13074 pub fn chain_token(&self) -> Option<SyntaxToken> {
13075 support::token(&self.syntax, SyntaxKind::CHAIN_KW)
13076 }
13077 #[inline]
13078 pub fn no_token(&self) -> Option<SyntaxToken> {
13079 support::token(&self.syntax, SyntaxKind::NO_KW)
13080 }
13081 #[inline]
13082 pub fn prepared_token(&self) -> Option<SyntaxToken> {
13083 support::token(&self.syntax, SyntaxKind::PREPARED_KW)
13084 }
13085 #[inline]
13086 pub fn rollback_token(&self) -> Option<SyntaxToken> {
13087 support::token(&self.syntax, SyntaxKind::ROLLBACK_KW)
13088 }
13089 #[inline]
13090 pub fn savepoint_token(&self) -> Option<SyntaxToken> {
13091 support::token(&self.syntax, SyntaxKind::SAVEPOINT_KW)
13092 }
13093 #[inline]
13094 pub fn to_token(&self) -> Option<SyntaxToken> {
13095 support::token(&self.syntax, SyntaxKind::TO_KW)
13096 }
13097 #[inline]
13098 pub fn transaction_token(&self) -> Option<SyntaxToken> {
13099 support::token(&self.syntax, SyntaxKind::TRANSACTION_KW)
13100 }
13101 #[inline]
13102 pub fn work_token(&self) -> Option<SyntaxToken> {
13103 support::token(&self.syntax, SyntaxKind::WORK_KW)
13104 }
13105}
13106
13107#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13108pub struct Row {
13109 pub(crate) syntax: SyntaxNode,
13110}
13111impl Row {
13112 #[inline]
13113 pub fn exprs(&self) -> AstChildren<Expr> {
13114 support::children(&self.syntax)
13115 }
13116}
13117
13118#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13119pub struct RowList {
13120 pub(crate) syntax: SyntaxNode,
13121}
13122impl RowList {
13123 #[inline]
13124 pub fn rows(&self) -> AstChildren<Row> {
13125 support::children(&self.syntax)
13126 }
13127}
13128
13129#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13130pub struct RowsFuncOption {
13131 pub(crate) syntax: SyntaxNode,
13132}
13133impl RowsFuncOption {
13134 #[inline]
13135 pub fn rows_token(&self) -> Option<SyntaxToken> {
13136 support::token(&self.syntax, SyntaxKind::ROWS_KW)
13137 }
13138}
13139
13140#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13141pub struct Savepoint {
13142 pub(crate) syntax: SyntaxNode,
13143}
13144impl Savepoint {
13145 #[inline]
13146 pub fn name(&self) -> Option<Name> {
13147 support::child(&self.syntax)
13148 }
13149 #[inline]
13150 pub fn savepoint_token(&self) -> Option<SyntaxToken> {
13151 support::token(&self.syntax, SyntaxKind::SAVEPOINT_KW)
13152 }
13153}
13154
13155#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13156pub struct SchemaAuthorization {
13157 pub(crate) syntax: SyntaxNode,
13158}
13159impl SchemaAuthorization {
13160 #[inline]
13161 pub fn role(&self) -> Option<Role> {
13162 support::child(&self.syntax)
13163 }
13164 #[inline]
13165 pub fn authorization_token(&self) -> Option<SyntaxToken> {
13166 support::token(&self.syntax, SyntaxKind::AUTHORIZATION_KW)
13167 }
13168}
13169
13170#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13171pub struct SecurityFuncOption {
13172 pub(crate) syntax: SyntaxNode,
13173}
13174impl SecurityFuncOption {
13175 #[inline]
13176 pub fn definer_token(&self) -> Option<SyntaxToken> {
13177 support::token(&self.syntax, SyntaxKind::DEFINER_KW)
13178 }
13179 #[inline]
13180 pub fn invoker_token(&self) -> Option<SyntaxToken> {
13181 support::token(&self.syntax, SyntaxKind::INVOKER_KW)
13182 }
13183 #[inline]
13184 pub fn security_token(&self) -> Option<SyntaxToken> {
13185 support::token(&self.syntax, SyntaxKind::SECURITY_KW)
13186 }
13187}
13188
13189#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13190pub struct SecurityLabel {
13191 pub(crate) syntax: SyntaxNode,
13192}
13193impl SecurityLabel {
13194 #[inline]
13195 pub fn aggregate(&self) -> Option<Aggregate> {
13196 support::child(&self.syntax)
13197 }
13198 #[inline]
13199 pub fn for_provider(&self) -> Option<ForProvider> {
13200 support::child(&self.syntax)
13201 }
13202 #[inline]
13203 pub fn function_sig(&self) -> Option<FunctionSig> {
13204 support::child(&self.syntax)
13205 }
13206 #[inline]
13207 pub fn literal(&self) -> Option<Literal> {
13208 support::child(&self.syntax)
13209 }
13210 #[inline]
13211 pub fn path(&self) -> Option<Path> {
13212 support::child(&self.syntax)
13213 }
13214 #[inline]
13215 pub fn aggregate_token(&self) -> Option<SyntaxToken> {
13216 support::token(&self.syntax, SyntaxKind::AGGREGATE_KW)
13217 }
13218 #[inline]
13219 pub fn column_token(&self) -> Option<SyntaxToken> {
13220 support::token(&self.syntax, SyntaxKind::COLUMN_KW)
13221 }
13222 #[inline]
13223 pub fn database_token(&self) -> Option<SyntaxToken> {
13224 support::token(&self.syntax, SyntaxKind::DATABASE_KW)
13225 }
13226 #[inline]
13227 pub fn domain_token(&self) -> Option<SyntaxToken> {
13228 support::token(&self.syntax, SyntaxKind::DOMAIN_KW)
13229 }
13230 #[inline]
13231 pub fn event_token(&self) -> Option<SyntaxToken> {
13232 support::token(&self.syntax, SyntaxKind::EVENT_KW)
13233 }
13234 #[inline]
13235 pub fn foreign_token(&self) -> Option<SyntaxToken> {
13236 support::token(&self.syntax, SyntaxKind::FOREIGN_KW)
13237 }
13238 #[inline]
13239 pub fn function_token(&self) -> Option<SyntaxToken> {
13240 support::token(&self.syntax, SyntaxKind::FUNCTION_KW)
13241 }
13242 #[inline]
13243 pub fn is_token(&self) -> Option<SyntaxToken> {
13244 support::token(&self.syntax, SyntaxKind::IS_KW)
13245 }
13246 #[inline]
13247 pub fn label_token(&self) -> Option<SyntaxToken> {
13248 support::token(&self.syntax, SyntaxKind::LABEL_KW)
13249 }
13250 #[inline]
13251 pub fn language_token(&self) -> Option<SyntaxToken> {
13252 support::token(&self.syntax, SyntaxKind::LANGUAGE_KW)
13253 }
13254 #[inline]
13255 pub fn large_token(&self) -> Option<SyntaxToken> {
13256 support::token(&self.syntax, SyntaxKind::LARGE_KW)
13257 }
13258 #[inline]
13259 pub fn materialized_token(&self) -> Option<SyntaxToken> {
13260 support::token(&self.syntax, SyntaxKind::MATERIALIZED_KW)
13261 }
13262 #[inline]
13263 pub fn null_token(&self) -> Option<SyntaxToken> {
13264 support::token(&self.syntax, SyntaxKind::NULL_KW)
13265 }
13266 #[inline]
13267 pub fn object_token(&self) -> Option<SyntaxToken> {
13268 support::token(&self.syntax, SyntaxKind::OBJECT_KW)
13269 }
13270 #[inline]
13271 pub fn on_token(&self) -> Option<SyntaxToken> {
13272 support::token(&self.syntax, SyntaxKind::ON_KW)
13273 }
13274 #[inline]
13275 pub fn procedural_token(&self) -> Option<SyntaxToken> {
13276 support::token(&self.syntax, SyntaxKind::PROCEDURAL_KW)
13277 }
13278 #[inline]
13279 pub fn procedure_token(&self) -> Option<SyntaxToken> {
13280 support::token(&self.syntax, SyntaxKind::PROCEDURE_KW)
13281 }
13282 #[inline]
13283 pub fn publication_token(&self) -> Option<SyntaxToken> {
13284 support::token(&self.syntax, SyntaxKind::PUBLICATION_KW)
13285 }
13286 #[inline]
13287 pub fn role_token(&self) -> Option<SyntaxToken> {
13288 support::token(&self.syntax, SyntaxKind::ROLE_KW)
13289 }
13290 #[inline]
13291 pub fn routine_token(&self) -> Option<SyntaxToken> {
13292 support::token(&self.syntax, SyntaxKind::ROUTINE_KW)
13293 }
13294 #[inline]
13295 pub fn schema_token(&self) -> Option<SyntaxToken> {
13296 support::token(&self.syntax, SyntaxKind::SCHEMA_KW)
13297 }
13298 #[inline]
13299 pub fn security_token(&self) -> Option<SyntaxToken> {
13300 support::token(&self.syntax, SyntaxKind::SECURITY_KW)
13301 }
13302 #[inline]
13303 pub fn sequence_token(&self) -> Option<SyntaxToken> {
13304 support::token(&self.syntax, SyntaxKind::SEQUENCE_KW)
13305 }
13306 #[inline]
13307 pub fn subscription_token(&self) -> Option<SyntaxToken> {
13308 support::token(&self.syntax, SyntaxKind::SUBSCRIPTION_KW)
13309 }
13310 #[inline]
13311 pub fn table_token(&self) -> Option<SyntaxToken> {
13312 support::token(&self.syntax, SyntaxKind::TABLE_KW)
13313 }
13314 #[inline]
13315 pub fn tablespace_token(&self) -> Option<SyntaxToken> {
13316 support::token(&self.syntax, SyntaxKind::TABLESPACE_KW)
13317 }
13318 #[inline]
13319 pub fn trigger_token(&self) -> Option<SyntaxToken> {
13320 support::token(&self.syntax, SyntaxKind::TRIGGER_KW)
13321 }
13322 #[inline]
13323 pub fn type_token(&self) -> Option<SyntaxToken> {
13324 support::token(&self.syntax, SyntaxKind::TYPE_KW)
13325 }
13326 #[inline]
13327 pub fn view_token(&self) -> Option<SyntaxToken> {
13328 support::token(&self.syntax, SyntaxKind::VIEW_KW)
13329 }
13330}
13331
13332#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13333pub struct Select {
13334 pub(crate) syntax: SyntaxNode,
13335}
13336impl Select {
13337 #[inline]
13338 pub fn fetch_clause(&self) -> Option<FetchClause> {
13339 support::child(&self.syntax)
13340 }
13341 #[inline]
13342 pub fn filter_clause(&self) -> Option<FilterClause> {
13343 support::child(&self.syntax)
13344 }
13345 #[inline]
13346 pub fn from_clause(&self) -> Option<FromClause> {
13347 support::child(&self.syntax)
13348 }
13349 #[inline]
13350 pub fn group_by_clause(&self) -> Option<GroupByClause> {
13351 support::child(&self.syntax)
13352 }
13353 #[inline]
13354 pub fn having_clause(&self) -> Option<HavingClause> {
13355 support::child(&self.syntax)
13356 }
13357 #[inline]
13358 pub fn limit_clause(&self) -> Option<LimitClause> {
13359 support::child(&self.syntax)
13360 }
13361 #[inline]
13362 pub fn locking_clauses(&self) -> AstChildren<LockingClause> {
13363 support::children(&self.syntax)
13364 }
13365 #[inline]
13366 pub fn offset_clause(&self) -> Option<OffsetClause> {
13367 support::child(&self.syntax)
13368 }
13369 #[inline]
13370 pub fn order_by_clause(&self) -> Option<OrderByClause> {
13371 support::child(&self.syntax)
13372 }
13373 #[inline]
13374 pub fn select_clause(&self) -> Option<SelectClause> {
13375 support::child(&self.syntax)
13376 }
13377 #[inline]
13378 pub fn where_clause(&self) -> Option<WhereClause> {
13379 support::child(&self.syntax)
13380 }
13381 #[inline]
13382 pub fn window_clause(&self) -> Option<WindowClause> {
13383 support::child(&self.syntax)
13384 }
13385 #[inline]
13386 pub fn with_clause(&self) -> Option<WithClause> {
13387 support::child(&self.syntax)
13388 }
13389}
13390
13391#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13392pub struct SelectClause {
13393 pub(crate) syntax: SyntaxNode,
13394}
13395impl SelectClause {
13396 #[inline]
13397 pub fn distinct_clause(&self) -> Option<DistinctClause> {
13398 support::child(&self.syntax)
13399 }
13400 #[inline]
13401 pub fn target_list(&self) -> Option<TargetList> {
13402 support::child(&self.syntax)
13403 }
13404 #[inline]
13405 pub fn all_token(&self) -> Option<SyntaxToken> {
13406 support::token(&self.syntax, SyntaxKind::ALL_KW)
13407 }
13408 #[inline]
13409 pub fn select_token(&self) -> Option<SyntaxToken> {
13410 support::token(&self.syntax, SyntaxKind::SELECT_KW)
13411 }
13412}
13413
13414#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13415pub struct SelectInto {
13416 pub(crate) syntax: SyntaxNode,
13417}
13418impl SelectInto {
13419 #[inline]
13420 pub fn filter_clause(&self) -> Option<FilterClause> {
13421 support::child(&self.syntax)
13422 }
13423 #[inline]
13424 pub fn from_clause(&self) -> Option<FromClause> {
13425 support::child(&self.syntax)
13426 }
13427 #[inline]
13428 pub fn group_by_clause(&self) -> Option<GroupByClause> {
13429 support::child(&self.syntax)
13430 }
13431 #[inline]
13432 pub fn having_clause(&self) -> Option<HavingClause> {
13433 support::child(&self.syntax)
13434 }
13435 #[inline]
13436 pub fn into_clause(&self) -> Option<IntoClause> {
13437 support::child(&self.syntax)
13438 }
13439 #[inline]
13440 pub fn limit_clause(&self) -> Option<LimitClause> {
13441 support::child(&self.syntax)
13442 }
13443 #[inline]
13444 pub fn locking_clauses(&self) -> AstChildren<LockingClause> {
13445 support::children(&self.syntax)
13446 }
13447 #[inline]
13448 pub fn offset_clause(&self) -> Option<OffsetClause> {
13449 support::child(&self.syntax)
13450 }
13451 #[inline]
13452 pub fn order_by_clause(&self) -> Option<OrderByClause> {
13453 support::child(&self.syntax)
13454 }
13455 #[inline]
13456 pub fn select_clause(&self) -> Option<SelectClause> {
13457 support::child(&self.syntax)
13458 }
13459 #[inline]
13460 pub fn where_clause(&self) -> Option<WhereClause> {
13461 support::child(&self.syntax)
13462 }
13463 #[inline]
13464 pub fn window_clause(&self) -> Option<WindowClause> {
13465 support::child(&self.syntax)
13466 }
13467 #[inline]
13468 pub fn with_clause(&self) -> Option<WithClause> {
13469 support::child(&self.syntax)
13470 }
13471}
13472
13473#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13474pub struct SequenceOption {
13475 pub(crate) syntax: SyntaxNode,
13476}
13477impl SequenceOption {
13478 #[inline]
13479 pub fn literal(&self) -> Option<Literal> {
13480 support::child(&self.syntax)
13481 }
13482 #[inline]
13483 pub fn name_ref(&self) -> Option<NameRef> {
13484 support::child(&self.syntax)
13485 }
13486 #[inline]
13487 pub fn path(&self) -> Option<Path> {
13488 support::child(&self.syntax)
13489 }
13490 #[inline]
13491 pub fn ty(&self) -> Option<Type> {
13492 support::child(&self.syntax)
13493 }
13494 #[inline]
13495 pub fn as_token(&self) -> Option<SyntaxToken> {
13496 support::token(&self.syntax, SyntaxKind::AS_KW)
13497 }
13498 #[inline]
13499 pub fn by_token(&self) -> Option<SyntaxToken> {
13500 support::token(&self.syntax, SyntaxKind::BY_KW)
13501 }
13502 #[inline]
13503 pub fn cycle_token(&self) -> Option<SyntaxToken> {
13504 support::token(&self.syntax, SyntaxKind::CYCLE_KW)
13505 }
13506 #[inline]
13507 pub fn increment_token(&self) -> Option<SyntaxToken> {
13508 support::token(&self.syntax, SyntaxKind::INCREMENT_KW)
13509 }
13510 #[inline]
13511 pub fn logged_token(&self) -> Option<SyntaxToken> {
13512 support::token(&self.syntax, SyntaxKind::LOGGED_KW)
13513 }
13514 #[inline]
13515 pub fn maxvalue_token(&self) -> Option<SyntaxToken> {
13516 support::token(&self.syntax, SyntaxKind::MAXVALUE_KW)
13517 }
13518 #[inline]
13519 pub fn minvalue_token(&self) -> Option<SyntaxToken> {
13520 support::token(&self.syntax, SyntaxKind::MINVALUE_KW)
13521 }
13522 #[inline]
13523 pub fn name_token(&self) -> Option<SyntaxToken> {
13524 support::token(&self.syntax, SyntaxKind::NAME_KW)
13525 }
13526 #[inline]
13527 pub fn no_token(&self) -> Option<SyntaxToken> {
13528 support::token(&self.syntax, SyntaxKind::NO_KW)
13529 }
13530 #[inline]
13531 pub fn none_token(&self) -> Option<SyntaxToken> {
13532 support::token(&self.syntax, SyntaxKind::NONE_KW)
13533 }
13534 #[inline]
13535 pub fn owned_token(&self) -> Option<SyntaxToken> {
13536 support::token(&self.syntax, SyntaxKind::OWNED_KW)
13537 }
13538 #[inline]
13539 pub fn restart_token(&self) -> Option<SyntaxToken> {
13540 support::token(&self.syntax, SyntaxKind::RESTART_KW)
13541 }
13542 #[inline]
13543 pub fn sequence_token(&self) -> Option<SyntaxToken> {
13544 support::token(&self.syntax, SyntaxKind::SEQUENCE_KW)
13545 }
13546 #[inline]
13547 pub fn start_token(&self) -> Option<SyntaxToken> {
13548 support::token(&self.syntax, SyntaxKind::START_KW)
13549 }
13550 #[inline]
13551 pub fn unlogged_token(&self) -> Option<SyntaxToken> {
13552 support::token(&self.syntax, SyntaxKind::UNLOGGED_KW)
13553 }
13554 #[inline]
13555 pub fn with_token(&self) -> Option<SyntaxToken> {
13556 support::token(&self.syntax, SyntaxKind::WITH_KW)
13557 }
13558}
13559
13560#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13561pub struct SequenceOptionList {
13562 pub(crate) syntax: SyntaxNode,
13563}
13564impl SequenceOptionList {
13565 #[inline]
13566 pub fn sequence_options(&self) -> AstChildren<SequenceOption> {
13567 support::children(&self.syntax)
13568 }
13569 #[inline]
13570 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
13571 support::token(&self.syntax, SyntaxKind::L_PAREN)
13572 }
13573 #[inline]
13574 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
13575 support::token(&self.syntax, SyntaxKind::R_PAREN)
13576 }
13577}
13578
13579#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13580pub struct Serializable {
13581 pub(crate) syntax: SyntaxNode,
13582}
13583impl Serializable {
13584 #[inline]
13585 pub fn isolation_token(&self) -> Option<SyntaxToken> {
13586 support::token(&self.syntax, SyntaxKind::ISOLATION_KW)
13587 }
13588 #[inline]
13589 pub fn level_token(&self) -> Option<SyntaxToken> {
13590 support::token(&self.syntax, SyntaxKind::LEVEL_KW)
13591 }
13592 #[inline]
13593 pub fn serializable_token(&self) -> Option<SyntaxToken> {
13594 support::token(&self.syntax, SyntaxKind::SERIALIZABLE_KW)
13595 }
13596}
13597
13598#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13599pub struct Set {
13600 pub(crate) syntax: SyntaxNode,
13601}
13602impl Set {
13603 #[inline]
13604 pub fn expr(&self) -> Option<Expr> {
13605 support::child(&self.syntax)
13606 }
13607 #[inline]
13608 pub fn path(&self) -> Option<Path> {
13609 support::child(&self.syntax)
13610 }
13611 #[inline]
13612 pub fn eq_token(&self) -> Option<SyntaxToken> {
13613 support::token(&self.syntax, SyntaxKind::EQ)
13614 }
13615 #[inline]
13616 pub fn default_token(&self) -> Option<SyntaxToken> {
13617 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
13618 }
13619 #[inline]
13620 pub fn local_token(&self) -> Option<SyntaxToken> {
13621 support::token(&self.syntax, SyntaxKind::LOCAL_KW)
13622 }
13623 #[inline]
13624 pub fn session_token(&self) -> Option<SyntaxToken> {
13625 support::token(&self.syntax, SyntaxKind::SESSION_KW)
13626 }
13627 #[inline]
13628 pub fn set_token(&self) -> Option<SyntaxToken> {
13629 support::token(&self.syntax, SyntaxKind::SET_KW)
13630 }
13631 #[inline]
13632 pub fn time_token(&self) -> Option<SyntaxToken> {
13633 support::token(&self.syntax, SyntaxKind::TIME_KW)
13634 }
13635 #[inline]
13636 pub fn to_token(&self) -> Option<SyntaxToken> {
13637 support::token(&self.syntax, SyntaxKind::TO_KW)
13638 }
13639 #[inline]
13640 pub fn zone_token(&self) -> Option<SyntaxToken> {
13641 support::token(&self.syntax, SyntaxKind::ZONE_KW)
13642 }
13643}
13644
13645#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13646pub struct SetAccessMethod {
13647 pub(crate) syntax: SyntaxNode,
13648}
13649impl SetAccessMethod {
13650 #[inline]
13651 pub fn name_ref(&self) -> Option<NameRef> {
13652 support::child(&self.syntax)
13653 }
13654 #[inline]
13655 pub fn access_token(&self) -> Option<SyntaxToken> {
13656 support::token(&self.syntax, SyntaxKind::ACCESS_KW)
13657 }
13658 #[inline]
13659 pub fn method_token(&self) -> Option<SyntaxToken> {
13660 support::token(&self.syntax, SyntaxKind::METHOD_KW)
13661 }
13662 #[inline]
13663 pub fn set_token(&self) -> Option<SyntaxToken> {
13664 support::token(&self.syntax, SyntaxKind::SET_KW)
13665 }
13666}
13667
13668#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13669pub struct SetClause {
13670 pub(crate) syntax: SyntaxNode,
13671}
13672impl SetClause {
13673 #[inline]
13674 pub fn set_column_list(&self) -> Option<SetColumnList> {
13675 support::child(&self.syntax)
13676 }
13677 #[inline]
13678 pub fn set_token(&self) -> Option<SyntaxToken> {
13679 support::token(&self.syntax, SyntaxKind::SET_KW)
13680 }
13681}
13682
13683#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13684pub struct SetColumnList {
13685 pub(crate) syntax: SyntaxNode,
13686}
13687impl SetColumnList {
13688 #[inline]
13689 pub fn set_columns(&self) -> AstChildren<SetColumn> {
13690 support::children(&self.syntax)
13691 }
13692}
13693
13694#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13695pub struct SetCompression {
13696 pub(crate) syntax: SyntaxNode,
13697}
13698impl SetCompression {
13699 #[inline]
13700 pub fn compression_token(&self) -> Option<SyntaxToken> {
13701 support::token(&self.syntax, SyntaxKind::COMPRESSION_KW)
13702 }
13703 #[inline]
13704 pub fn set_token(&self) -> Option<SyntaxToken> {
13705 support::token(&self.syntax, SyntaxKind::SET_KW)
13706 }
13707}
13708
13709#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13710pub struct SetConfigParam {
13711 pub(crate) syntax: SyntaxNode,
13712}
13713impl SetConfigParam {
13714 #[inline]
13715 pub fn path(&self) -> Option<Path> {
13716 support::child(&self.syntax)
13717 }
13718 #[inline]
13719 pub fn set_token(&self) -> Option<SyntaxToken> {
13720 support::token(&self.syntax, SyntaxKind::SET_KW)
13721 }
13722}
13723
13724#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13725pub struct SetConstraints {
13726 pub(crate) syntax: SyntaxNode,
13727}
13728impl SetConstraints {
13729 #[inline]
13730 pub fn paths(&self) -> AstChildren<Path> {
13731 support::children(&self.syntax)
13732 }
13733 #[inline]
13734 pub fn all_token(&self) -> Option<SyntaxToken> {
13735 support::token(&self.syntax, SyntaxKind::ALL_KW)
13736 }
13737 #[inline]
13738 pub fn constraints_token(&self) -> Option<SyntaxToken> {
13739 support::token(&self.syntax, SyntaxKind::CONSTRAINTS_KW)
13740 }
13741 #[inline]
13742 pub fn deferred_token(&self) -> Option<SyntaxToken> {
13743 support::token(&self.syntax, SyntaxKind::DEFERRED_KW)
13744 }
13745 #[inline]
13746 pub fn immediate_token(&self) -> Option<SyntaxToken> {
13747 support::token(&self.syntax, SyntaxKind::IMMEDIATE_KW)
13748 }
13749 #[inline]
13750 pub fn set_token(&self) -> Option<SyntaxToken> {
13751 support::token(&self.syntax, SyntaxKind::SET_KW)
13752 }
13753}
13754
13755#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13756pub struct SetDefault {
13757 pub(crate) syntax: SyntaxNode,
13758}
13759impl SetDefault {
13760 #[inline]
13761 pub fn expr(&self) -> Option<Expr> {
13762 support::child(&self.syntax)
13763 }
13764 #[inline]
13765 pub fn default_token(&self) -> Option<SyntaxToken> {
13766 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
13767 }
13768 #[inline]
13769 pub fn set_token(&self) -> Option<SyntaxToken> {
13770 support::token(&self.syntax, SyntaxKind::SET_KW)
13771 }
13772}
13773
13774#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13775pub struct SetDefaultColumns {
13776 pub(crate) syntax: SyntaxNode,
13777}
13778impl SetDefaultColumns {
13779 #[inline]
13780 pub fn column_list(&self) -> Option<ColumnList> {
13781 support::child(&self.syntax)
13782 }
13783 #[inline]
13784 pub fn default_token(&self) -> Option<SyntaxToken> {
13785 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
13786 }
13787 #[inline]
13788 pub fn set_token(&self) -> Option<SyntaxToken> {
13789 support::token(&self.syntax, SyntaxKind::SET_KW)
13790 }
13791}
13792
13793#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13794pub struct SetExpr {
13795 pub(crate) syntax: SyntaxNode,
13796}
13797impl SetExpr {
13798 #[inline]
13799 pub fn expr(&self) -> Option<Expr> {
13800 support::child(&self.syntax)
13801 }
13802 #[inline]
13803 pub fn default_token(&self) -> Option<SyntaxToken> {
13804 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
13805 }
13806}
13807
13808#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13809pub struct SetExprList {
13810 pub(crate) syntax: SyntaxNode,
13811}
13812impl SetExprList {
13813 #[inline]
13814 pub fn set_exprs(&self) -> AstChildren<SetExpr> {
13815 support::children(&self.syntax)
13816 }
13817 #[inline]
13818 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
13819 support::token(&self.syntax, SyntaxKind::L_PAREN)
13820 }
13821 #[inline]
13822 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
13823 support::token(&self.syntax, SyntaxKind::R_PAREN)
13824 }
13825 #[inline]
13826 pub fn row_token(&self) -> Option<SyntaxToken> {
13827 support::token(&self.syntax, SyntaxKind::ROW_KW)
13828 }
13829}
13830
13831#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13832pub struct SetExpression {
13833 pub(crate) syntax: SyntaxNode,
13834}
13835impl SetExpression {
13836 #[inline]
13837 pub fn expr(&self) -> Option<Expr> {
13838 support::child(&self.syntax)
13839 }
13840 #[inline]
13841 pub fn expression_token(&self) -> Option<SyntaxToken> {
13842 support::token(&self.syntax, SyntaxKind::EXPRESSION_KW)
13843 }
13844 #[inline]
13845 pub fn set_token(&self) -> Option<SyntaxToken> {
13846 support::token(&self.syntax, SyntaxKind::SET_KW)
13847 }
13848}
13849
13850#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13851pub struct SetFuncOption {
13852 pub(crate) syntax: SyntaxNode,
13853}
13854impl SetFuncOption {
13855 #[inline]
13856 pub fn set_token(&self) -> Option<SyntaxToken> {
13857 support::token(&self.syntax, SyntaxKind::SET_KW)
13858 }
13859}
13860
13861#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13862pub struct SetGenerated {
13863 pub(crate) syntax: SyntaxNode,
13864}
13865impl SetGenerated {
13866 #[inline]
13867 pub fn set_token(&self) -> Option<SyntaxToken> {
13868 support::token(&self.syntax, SyntaxKind::SET_KW)
13869 }
13870}
13871
13872#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13873pub struct SetGeneratedOptions {
13874 pub(crate) syntax: SyntaxNode,
13875}
13876impl SetGeneratedOptions {
13877 #[inline]
13878 pub fn generated_token(&self) -> Option<SyntaxToken> {
13879 support::token(&self.syntax, SyntaxKind::GENERATED_KW)
13880 }
13881 #[inline]
13882 pub fn set_token(&self) -> Option<SyntaxToken> {
13883 support::token(&self.syntax, SyntaxKind::SET_KW)
13884 }
13885}
13886
13887#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13888pub struct SetLogged {
13889 pub(crate) syntax: SyntaxNode,
13890}
13891impl SetLogged {
13892 #[inline]
13893 pub fn logged_token(&self) -> Option<SyntaxToken> {
13894 support::token(&self.syntax, SyntaxKind::LOGGED_KW)
13895 }
13896 #[inline]
13897 pub fn set_token(&self) -> Option<SyntaxToken> {
13898 support::token(&self.syntax, SyntaxKind::SET_KW)
13899 }
13900}
13901
13902#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13903pub struct SetMultipleColumns {
13904 pub(crate) syntax: SyntaxNode,
13905}
13906impl SetMultipleColumns {
13907 #[inline]
13908 pub fn column_list(&self) -> Option<ColumnList> {
13909 support::child(&self.syntax)
13910 }
13911 #[inline]
13912 pub fn paren_select(&self) -> Option<ParenSelect> {
13913 support::child(&self.syntax)
13914 }
13915 #[inline]
13916 pub fn set_expr_list(&self) -> Option<SetExprList> {
13917 support::child(&self.syntax)
13918 }
13919 #[inline]
13920 pub fn eq_token(&self) -> Option<SyntaxToken> {
13921 support::token(&self.syntax, SyntaxKind::EQ)
13922 }
13923}
13924
13925#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13926pub struct SetNotNull {
13927 pub(crate) syntax: SyntaxNode,
13928}
13929impl SetNotNull {
13930 #[inline]
13931 pub fn not_token(&self) -> Option<SyntaxToken> {
13932 support::token(&self.syntax, SyntaxKind::NOT_KW)
13933 }
13934 #[inline]
13935 pub fn null_token(&self) -> Option<SyntaxToken> {
13936 support::token(&self.syntax, SyntaxKind::NULL_KW)
13937 }
13938 #[inline]
13939 pub fn set_token(&self) -> Option<SyntaxToken> {
13940 support::token(&self.syntax, SyntaxKind::SET_KW)
13941 }
13942}
13943
13944#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13945pub struct SetNullColumns {
13946 pub(crate) syntax: SyntaxNode,
13947}
13948impl SetNullColumns {
13949 #[inline]
13950 pub fn column_list(&self) -> Option<ColumnList> {
13951 support::child(&self.syntax)
13952 }
13953 #[inline]
13954 pub fn null_token(&self) -> Option<SyntaxToken> {
13955 support::token(&self.syntax, SyntaxKind::NULL_KW)
13956 }
13957 #[inline]
13958 pub fn set_token(&self) -> Option<SyntaxToken> {
13959 support::token(&self.syntax, SyntaxKind::SET_KW)
13960 }
13961}
13962
13963#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13964pub struct SetOptions {
13965 pub(crate) syntax: SyntaxNode,
13966}
13967impl SetOptions {
13968 #[inline]
13969 pub fn attribute_list(&self) -> Option<AttributeList> {
13970 support::child(&self.syntax)
13971 }
13972 #[inline]
13973 pub fn set_token(&self) -> Option<SyntaxToken> {
13974 support::token(&self.syntax, SyntaxKind::SET_KW)
13975 }
13976}
13977
13978#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13979pub struct SetOptionsList {
13980 pub(crate) syntax: SyntaxNode,
13981}
13982impl SetOptionsList {
13983 #[inline]
13984 pub fn alter_option_list(&self) -> Option<AlterOptionList> {
13985 support::child(&self.syntax)
13986 }
13987 #[inline]
13988 pub fn options_token(&self) -> Option<SyntaxToken> {
13989 support::token(&self.syntax, SyntaxKind::OPTIONS_KW)
13990 }
13991 #[inline]
13992 pub fn set_token(&self) -> Option<SyntaxToken> {
13993 support::token(&self.syntax, SyntaxKind::SET_KW)
13994 }
13995}
13996
13997#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13998pub struct SetRole {
13999 pub(crate) syntax: SyntaxNode,
14000}
14001impl SetRole {
14002 #[inline]
14003 pub fn role(&self) -> Option<Role> {
14004 support::child(&self.syntax)
14005 }
14006 #[inline]
14007 pub fn local_token(&self) -> Option<SyntaxToken> {
14008 support::token(&self.syntax, SyntaxKind::LOCAL_KW)
14009 }
14010 #[inline]
14011 pub fn none_token(&self) -> Option<SyntaxToken> {
14012 support::token(&self.syntax, SyntaxKind::NONE_KW)
14013 }
14014 #[inline]
14015 pub fn reset_token(&self) -> Option<SyntaxToken> {
14016 support::token(&self.syntax, SyntaxKind::RESET_KW)
14017 }
14018 #[inline]
14019 pub fn role_token(&self) -> Option<SyntaxToken> {
14020 support::token(&self.syntax, SyntaxKind::ROLE_KW)
14021 }
14022 #[inline]
14023 pub fn session_token(&self) -> Option<SyntaxToken> {
14024 support::token(&self.syntax, SyntaxKind::SESSION_KW)
14025 }
14026 #[inline]
14027 pub fn set_token(&self) -> Option<SyntaxToken> {
14028 support::token(&self.syntax, SyntaxKind::SET_KW)
14029 }
14030}
14031
14032#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14033pub struct SetSchema {
14034 pub(crate) syntax: SyntaxNode,
14035}
14036impl SetSchema {
14037 #[inline]
14038 pub fn name_ref(&self) -> Option<NameRef> {
14039 support::child(&self.syntax)
14040 }
14041 #[inline]
14042 pub fn schema_token(&self) -> Option<SyntaxToken> {
14043 support::token(&self.syntax, SyntaxKind::SCHEMA_KW)
14044 }
14045 #[inline]
14046 pub fn set_token(&self) -> Option<SyntaxToken> {
14047 support::token(&self.syntax, SyntaxKind::SET_KW)
14048 }
14049}
14050
14051#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14052pub struct SetSequenceOption {
14053 pub(crate) syntax: SyntaxNode,
14054}
14055impl SetSequenceOption {
14056 #[inline]
14057 pub fn set_token(&self) -> Option<SyntaxToken> {
14058 support::token(&self.syntax, SyntaxKind::SET_KW)
14059 }
14060}
14061
14062#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14063pub struct SetSessionAuth {
14064 pub(crate) syntax: SyntaxNode,
14065}
14066impl SetSessionAuth {
14067 #[inline]
14068 pub fn literal(&self) -> Option<Literal> {
14069 support::child(&self.syntax)
14070 }
14071 #[inline]
14072 pub fn role(&self) -> Option<Role> {
14073 support::child(&self.syntax)
14074 }
14075 #[inline]
14076 pub fn authorization_token(&self) -> Option<SyntaxToken> {
14077 support::token(&self.syntax, SyntaxKind::AUTHORIZATION_KW)
14078 }
14079 #[inline]
14080 pub fn default_token(&self) -> Option<SyntaxToken> {
14081 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
14082 }
14083 #[inline]
14084 pub fn local_token(&self) -> Option<SyntaxToken> {
14085 support::token(&self.syntax, SyntaxKind::LOCAL_KW)
14086 }
14087 #[inline]
14088 pub fn session_token(&self) -> Option<SyntaxToken> {
14089 support::token(&self.syntax, SyntaxKind::SESSION_KW)
14090 }
14091 #[inline]
14092 pub fn set_token(&self) -> Option<SyntaxToken> {
14093 support::token(&self.syntax, SyntaxKind::SET_KW)
14094 }
14095}
14096
14097#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14098pub struct SetSingleColumn {
14099 pub(crate) syntax: SyntaxNode,
14100}
14101impl SetSingleColumn {
14102 #[inline]
14103 pub fn column(&self) -> Option<Column> {
14104 support::child(&self.syntax)
14105 }
14106 #[inline]
14107 pub fn set_expr(&self) -> Option<SetExpr> {
14108 support::child(&self.syntax)
14109 }
14110 #[inline]
14111 pub fn eq_token(&self) -> Option<SyntaxToken> {
14112 support::token(&self.syntax, SyntaxKind::EQ)
14113 }
14114}
14115
14116#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14117pub struct SetStatistics {
14118 pub(crate) syntax: SyntaxNode,
14119}
14120impl SetStatistics {
14121 #[inline]
14122 pub fn set_token(&self) -> Option<SyntaxToken> {
14123 support::token(&self.syntax, SyntaxKind::SET_KW)
14124 }
14125 #[inline]
14126 pub fn statistics_token(&self) -> Option<SyntaxToken> {
14127 support::token(&self.syntax, SyntaxKind::STATISTICS_KW)
14128 }
14129}
14130
14131#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14132pub struct SetStorage {
14133 pub(crate) syntax: SyntaxNode,
14134}
14135impl SetStorage {
14136 #[inline]
14137 pub fn set_token(&self) -> Option<SyntaxToken> {
14138 support::token(&self.syntax, SyntaxKind::SET_KW)
14139 }
14140 #[inline]
14141 pub fn storage_token(&self) -> Option<SyntaxToken> {
14142 support::token(&self.syntax, SyntaxKind::STORAGE_KW)
14143 }
14144}
14145
14146#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14147pub struct SetTablespace {
14148 pub(crate) syntax: SyntaxNode,
14149}
14150impl SetTablespace {
14151 #[inline]
14152 pub fn path(&self) -> Option<Path> {
14153 support::child(&self.syntax)
14154 }
14155 #[inline]
14156 pub fn set_token(&self) -> Option<SyntaxToken> {
14157 support::token(&self.syntax, SyntaxKind::SET_KW)
14158 }
14159 #[inline]
14160 pub fn tablespace_token(&self) -> Option<SyntaxToken> {
14161 support::token(&self.syntax, SyntaxKind::TABLESPACE_KW)
14162 }
14163}
14164
14165#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14166pub struct SetTransaction {
14167 pub(crate) syntax: SyntaxNode,
14168}
14169impl SetTransaction {
14170 #[inline]
14171 pub fn literal(&self) -> Option<Literal> {
14172 support::child(&self.syntax)
14173 }
14174 #[inline]
14175 pub fn transaction_mode_list(&self) -> Option<TransactionModeList> {
14176 support::child(&self.syntax)
14177 }
14178 #[inline]
14179 pub fn as_token(&self) -> Option<SyntaxToken> {
14180 support::token(&self.syntax, SyntaxKind::AS_KW)
14181 }
14182 #[inline]
14183 pub fn characteristics_token(&self) -> Option<SyntaxToken> {
14184 support::token(&self.syntax, SyntaxKind::CHARACTERISTICS_KW)
14185 }
14186 #[inline]
14187 pub fn session_token(&self) -> Option<SyntaxToken> {
14188 support::token(&self.syntax, SyntaxKind::SESSION_KW)
14189 }
14190 #[inline]
14191 pub fn set_token(&self) -> Option<SyntaxToken> {
14192 support::token(&self.syntax, SyntaxKind::SET_KW)
14193 }
14194 #[inline]
14195 pub fn snapshot_token(&self) -> Option<SyntaxToken> {
14196 support::token(&self.syntax, SyntaxKind::SNAPSHOT_KW)
14197 }
14198 #[inline]
14199 pub fn transaction_token(&self) -> Option<SyntaxToken> {
14200 support::token(&self.syntax, SyntaxKind::TRANSACTION_KW)
14201 }
14202}
14203
14204#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14205pub struct SetType {
14206 pub(crate) syntax: SyntaxNode,
14207}
14208impl SetType {
14209 #[inline]
14210 pub fn collate(&self) -> Option<Collate> {
14211 support::child(&self.syntax)
14212 }
14213 #[inline]
14214 pub fn ty(&self) -> Option<Type> {
14215 support::child(&self.syntax)
14216 }
14217 #[inline]
14218 pub fn set_token(&self) -> Option<SyntaxToken> {
14219 support::token(&self.syntax, SyntaxKind::SET_KW)
14220 }
14221 #[inline]
14222 pub fn type_token(&self) -> Option<SyntaxToken> {
14223 support::token(&self.syntax, SyntaxKind::TYPE_KW)
14224 }
14225}
14226
14227#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14228pub struct SetUnlogged {
14229 pub(crate) syntax: SyntaxNode,
14230}
14231impl SetUnlogged {
14232 #[inline]
14233 pub fn set_token(&self) -> Option<SyntaxToken> {
14234 support::token(&self.syntax, SyntaxKind::SET_KW)
14235 }
14236 #[inline]
14237 pub fn unlogged_token(&self) -> Option<SyntaxToken> {
14238 support::token(&self.syntax, SyntaxKind::UNLOGGED_KW)
14239 }
14240}
14241
14242#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14243pub struct SetWithoutCluster {
14244 pub(crate) syntax: SyntaxNode,
14245}
14246impl SetWithoutCluster {
14247 #[inline]
14248 pub fn cluster_token(&self) -> Option<SyntaxToken> {
14249 support::token(&self.syntax, SyntaxKind::CLUSTER_KW)
14250 }
14251 #[inline]
14252 pub fn set_token(&self) -> Option<SyntaxToken> {
14253 support::token(&self.syntax, SyntaxKind::SET_KW)
14254 }
14255 #[inline]
14256 pub fn without_token(&self) -> Option<SyntaxToken> {
14257 support::token(&self.syntax, SyntaxKind::WITHOUT_KW)
14258 }
14259}
14260
14261#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14262pub struct SetWithoutOids {
14263 pub(crate) syntax: SyntaxNode,
14264}
14265impl SetWithoutOids {
14266 #[inline]
14267 pub fn oids_token(&self) -> Option<SyntaxToken> {
14268 support::token(&self.syntax, SyntaxKind::OIDS_KW)
14269 }
14270 #[inline]
14271 pub fn set_token(&self) -> Option<SyntaxToken> {
14272 support::token(&self.syntax, SyntaxKind::SET_KW)
14273 }
14274 #[inline]
14275 pub fn without_token(&self) -> Option<SyntaxToken> {
14276 support::token(&self.syntax, SyntaxKind::WITHOUT_KW)
14277 }
14278}
14279
14280#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14281pub struct Show {
14282 pub(crate) syntax: SyntaxNode,
14283}
14284impl Show {
14285 #[inline]
14286 pub fn show_token(&self) -> Option<SyntaxToken> {
14287 support::token(&self.syntax, SyntaxKind::SHOW_KW)
14288 }
14289}
14290
14291#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14292pub struct SimilarTo {
14293 pub(crate) syntax: SyntaxNode,
14294}
14295impl SimilarTo {
14296 #[inline]
14297 pub fn similar_token(&self) -> Option<SyntaxToken> {
14298 support::token(&self.syntax, SyntaxKind::SIMILAR_KW)
14299 }
14300 #[inline]
14301 pub fn to_token(&self) -> Option<SyntaxToken> {
14302 support::token(&self.syntax, SyntaxKind::TO_KW)
14303 }
14304}
14305
14306#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14307pub struct SliceExpr {
14308 pub(crate) syntax: SyntaxNode,
14309}
14310impl SliceExpr {
14311 #[inline]
14312 pub fn l_brack_token(&self) -> Option<SyntaxToken> {
14313 support::token(&self.syntax, SyntaxKind::L_BRACK)
14314 }
14315 #[inline]
14316 pub fn r_brack_token(&self) -> Option<SyntaxToken> {
14317 support::token(&self.syntax, SyntaxKind::R_BRACK)
14318 }
14319 #[inline]
14320 pub fn colon_token(&self) -> Option<SyntaxToken> {
14321 support::token(&self.syntax, SyntaxKind::COLON)
14322 }
14323}
14324
14325#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14326pub struct SomeFn {
14327 pub(crate) syntax: SyntaxNode,
14328}
14329impl SomeFn {
14330 #[inline]
14331 pub fn expr(&self) -> Option<Expr> {
14332 support::child(&self.syntax)
14333 }
14334 #[inline]
14335 pub fn select_variant(&self) -> Option<SelectVariant> {
14336 support::child(&self.syntax)
14337 }
14338 #[inline]
14339 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
14340 support::token(&self.syntax, SyntaxKind::L_PAREN)
14341 }
14342 #[inline]
14343 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
14344 support::token(&self.syntax, SyntaxKind::R_PAREN)
14345 }
14346 #[inline]
14347 pub fn some_token(&self) -> Option<SyntaxToken> {
14348 support::token(&self.syntax, SyntaxKind::SOME_KW)
14349 }
14350}
14351
14352#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14353pub struct SortAsc {
14354 pub(crate) syntax: SyntaxNode,
14355}
14356impl SortAsc {
14357 #[inline]
14358 pub fn asc_token(&self) -> Option<SyntaxToken> {
14359 support::token(&self.syntax, SyntaxKind::ASC_KW)
14360 }
14361}
14362
14363#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14364pub struct SortBy {
14365 pub(crate) syntax: SyntaxNode,
14366}
14367impl SortBy {
14368 #[inline]
14369 pub fn expr(&self) -> Option<Expr> {
14370 support::child(&self.syntax)
14371 }
14372 #[inline]
14373 pub fn nulls_first(&self) -> Option<NullsFirst> {
14374 support::child(&self.syntax)
14375 }
14376 #[inline]
14377 pub fn nulls_last(&self) -> Option<NullsLast> {
14378 support::child(&self.syntax)
14379 }
14380 #[inline]
14381 pub fn sort_asc(&self) -> Option<SortAsc> {
14382 support::child(&self.syntax)
14383 }
14384 #[inline]
14385 pub fn sort_desc(&self) -> Option<SortDesc> {
14386 support::child(&self.syntax)
14387 }
14388 #[inline]
14389 pub fn sort_using(&self) -> Option<SortUsing> {
14390 support::child(&self.syntax)
14391 }
14392}
14393
14394#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14395pub struct SortByList {
14396 pub(crate) syntax: SyntaxNode,
14397}
14398impl SortByList {
14399 #[inline]
14400 pub fn sort_bys(&self) -> AstChildren<SortBy> {
14401 support::children(&self.syntax)
14402 }
14403}
14404
14405#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14406pub struct SortDesc {
14407 pub(crate) syntax: SyntaxNode,
14408}
14409impl SortDesc {
14410 #[inline]
14411 pub fn desc_token(&self) -> Option<SyntaxToken> {
14412 support::token(&self.syntax, SyntaxKind::DESC_KW)
14413 }
14414}
14415
14416#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14417pub struct SortUsing {
14418 pub(crate) syntax: SyntaxNode,
14419}
14420impl SortUsing {
14421 #[inline]
14422 pub fn op(&self) -> Option<Op> {
14423 support::child(&self.syntax)
14424 }
14425 #[inline]
14426 pub fn using_token(&self) -> Option<SyntaxToken> {
14427 support::token(&self.syntax, SyntaxKind::USING_KW)
14428 }
14429}
14430
14431#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14432pub struct SourceFile {
14433 pub(crate) syntax: SyntaxNode,
14434}
14435impl SourceFile {
14436 #[inline]
14437 pub fn stmts(&self) -> AstChildren<Stmt> {
14438 support::children(&self.syntax)
14439 }
14440}
14441
14442#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14443pub struct Storage {
14444 pub(crate) syntax: SyntaxNode,
14445}
14446impl Storage {
14447 #[inline]
14448 pub fn default_token(&self) -> Option<SyntaxToken> {
14449 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
14450 }
14451 #[inline]
14452 pub fn external_token(&self) -> Option<SyntaxToken> {
14453 support::token(&self.syntax, SyntaxKind::EXTERNAL_KW)
14454 }
14455 #[inline]
14456 pub fn ident_token(&self) -> Option<SyntaxToken> {
14457 support::token(&self.syntax, SyntaxKind::IDENT)
14458 }
14459 #[inline]
14460 pub fn storage_token(&self) -> Option<SyntaxToken> {
14461 support::token(&self.syntax, SyntaxKind::STORAGE_KW)
14462 }
14463}
14464
14465#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14466pub struct StrictFuncOption {
14467 pub(crate) syntax: SyntaxNode,
14468}
14469impl StrictFuncOption {
14470 #[inline]
14471 pub fn called_token(&self) -> Option<SyntaxToken> {
14472 support::token(&self.syntax, SyntaxKind::CALLED_KW)
14473 }
14474 #[inline]
14475 pub fn input_token(&self) -> Option<SyntaxToken> {
14476 support::token(&self.syntax, SyntaxKind::INPUT_KW)
14477 }
14478 #[inline]
14479 pub fn null_token(&self) -> Option<SyntaxToken> {
14480 support::token(&self.syntax, SyntaxKind::NULL_KW)
14481 }
14482 #[inline]
14483 pub fn on_token(&self) -> Option<SyntaxToken> {
14484 support::token(&self.syntax, SyntaxKind::ON_KW)
14485 }
14486 #[inline]
14487 pub fn returns_token(&self) -> Option<SyntaxToken> {
14488 support::token(&self.syntax, SyntaxKind::RETURNS_KW)
14489 }
14490 #[inline]
14491 pub fn strict_token(&self) -> Option<SyntaxToken> {
14492 support::token(&self.syntax, SyntaxKind::STRICT_KW)
14493 }
14494}
14495
14496#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14497pub struct SubstringFn {
14498 pub(crate) syntax: SyntaxNode,
14499}
14500impl SubstringFn {
14501 #[inline]
14502 pub fn expr(&self) -> Option<Expr> {
14503 support::child(&self.syntax)
14504 }
14505 #[inline]
14506 pub fn exprs(&self) -> AstChildren<Expr> {
14507 support::children(&self.syntax)
14508 }
14509 #[inline]
14510 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
14511 support::token(&self.syntax, SyntaxKind::L_PAREN)
14512 }
14513 #[inline]
14514 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
14515 support::token(&self.syntax, SyntaxKind::R_PAREN)
14516 }
14517 #[inline]
14518 pub fn for_token(&self) -> Option<SyntaxToken> {
14519 support::token(&self.syntax, SyntaxKind::FOR_KW)
14520 }
14521 #[inline]
14522 pub fn from_token(&self) -> Option<SyntaxToken> {
14523 support::token(&self.syntax, SyntaxKind::FROM_KW)
14524 }
14525 #[inline]
14526 pub fn similar_token(&self) -> Option<SyntaxToken> {
14527 support::token(&self.syntax, SyntaxKind::SIMILAR_KW)
14528 }
14529 #[inline]
14530 pub fn substring_token(&self) -> Option<SyntaxToken> {
14531 support::token(&self.syntax, SyntaxKind::SUBSTRING_KW)
14532 }
14533}
14534
14535#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14536pub struct SupportFuncOption {
14537 pub(crate) syntax: SyntaxNode,
14538}
14539impl SupportFuncOption {
14540 #[inline]
14541 pub fn support_token(&self) -> Option<SyntaxToken> {
14542 support::token(&self.syntax, SyntaxKind::SUPPORT_KW)
14543 }
14544}
14545
14546#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14547pub struct Table {
14548 pub(crate) syntax: SyntaxNode,
14549}
14550impl Table {
14551 #[inline]
14552 pub fn relation_name(&self) -> Option<RelationName> {
14553 support::child(&self.syntax)
14554 }
14555 #[inline]
14556 pub fn table_token(&self) -> Option<SyntaxToken> {
14557 support::token(&self.syntax, SyntaxKind::TABLE_KW)
14558 }
14559}
14560
14561#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14562pub struct TableArgList {
14563 pub(crate) syntax: SyntaxNode,
14564}
14565impl TableArgList {
14566 #[inline]
14567 pub fn args(&self) -> AstChildren<TableArg> {
14568 support::children(&self.syntax)
14569 }
14570 #[inline]
14571 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
14572 support::token(&self.syntax, SyntaxKind::L_PAREN)
14573 }
14574 #[inline]
14575 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
14576 support::token(&self.syntax, SyntaxKind::R_PAREN)
14577 }
14578}
14579
14580#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14581pub struct TableList {
14582 pub(crate) syntax: SyntaxNode,
14583}
14584impl TableList {
14585 #[inline]
14586 pub fn relation_names(&self) -> AstChildren<RelationName> {
14587 support::children(&self.syntax)
14588 }
14589}
14590
14591#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14592pub struct TablesampleClause {
14593 pub(crate) syntax: SyntaxNode,
14594}
14595impl TablesampleClause {
14596 #[inline]
14597 pub fn call_expr(&self) -> Option<CallExpr> {
14598 support::child(&self.syntax)
14599 }
14600 #[inline]
14601 pub fn repeatable_clause(&self) -> Option<RepeatableClause> {
14602 support::child(&self.syntax)
14603 }
14604 #[inline]
14605 pub fn tablesample_token(&self) -> Option<SyntaxToken> {
14606 support::token(&self.syntax, SyntaxKind::TABLESAMPLE_KW)
14607 }
14608}
14609
14610#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14611pub struct Tablespace {
14612 pub(crate) syntax: SyntaxNode,
14613}
14614impl Tablespace {
14615 #[inline]
14616 pub fn name_ref(&self) -> Option<NameRef> {
14617 support::child(&self.syntax)
14618 }
14619 #[inline]
14620 pub fn tablespace_token(&self) -> Option<SyntaxToken> {
14621 support::token(&self.syntax, SyntaxKind::TABLESPACE_KW)
14622 }
14623}
14624
14625#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14626pub struct Target {
14627 pub(crate) syntax: SyntaxNode,
14628}
14629impl Target {
14630 #[inline]
14631 pub fn as_name(&self) -> Option<AsName> {
14632 support::child(&self.syntax)
14633 }
14634 #[inline]
14635 pub fn expr(&self) -> Option<Expr> {
14636 support::child(&self.syntax)
14637 }
14638 #[inline]
14639 pub fn star_token(&self) -> Option<SyntaxToken> {
14640 support::token(&self.syntax, SyntaxKind::STAR)
14641 }
14642}
14643
14644#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14645pub struct TargetList {
14646 pub(crate) syntax: SyntaxNode,
14647}
14648impl TargetList {
14649 #[inline]
14650 pub fn targets(&self) -> AstChildren<Target> {
14651 support::children(&self.syntax)
14652 }
14653}
14654
14655#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14656pub struct TimeType {
14657 pub(crate) syntax: SyntaxNode,
14658}
14659impl TimeType {
14660 #[inline]
14661 pub fn literal(&self) -> Option<Literal> {
14662 support::child(&self.syntax)
14663 }
14664 #[inline]
14665 pub fn timezone(&self) -> Option<Timezone> {
14666 support::child(&self.syntax)
14667 }
14668 #[inline]
14669 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
14670 support::token(&self.syntax, SyntaxKind::L_PAREN)
14671 }
14672 #[inline]
14673 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
14674 support::token(&self.syntax, SyntaxKind::R_PAREN)
14675 }
14676 #[inline]
14677 pub fn time_token(&self) -> Option<SyntaxToken> {
14678 support::token(&self.syntax, SyntaxKind::TIME_KW)
14679 }
14680 #[inline]
14681 pub fn timestamp_token(&self) -> Option<SyntaxToken> {
14682 support::token(&self.syntax, SyntaxKind::TIMESTAMP_KW)
14683 }
14684}
14685
14686#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14687pub struct Timing {
14688 pub(crate) syntax: SyntaxNode,
14689}
14690impl Timing {
14691 #[inline]
14692 pub fn after_token(&self) -> Option<SyntaxToken> {
14693 support::token(&self.syntax, SyntaxKind::AFTER_KW)
14694 }
14695 #[inline]
14696 pub fn before_token(&self) -> Option<SyntaxToken> {
14697 support::token(&self.syntax, SyntaxKind::BEFORE_KW)
14698 }
14699 #[inline]
14700 pub fn instead_token(&self) -> Option<SyntaxToken> {
14701 support::token(&self.syntax, SyntaxKind::INSTEAD_KW)
14702 }
14703 #[inline]
14704 pub fn of_token(&self) -> Option<SyntaxToken> {
14705 support::token(&self.syntax, SyntaxKind::OF_KW)
14706 }
14707}
14708
14709#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14710pub struct TransactionModeList {
14711 pub(crate) syntax: SyntaxNode,
14712}
14713impl TransactionModeList {
14714 #[inline]
14715 pub fn transaction_modes(&self) -> AstChildren<TransactionMode> {
14716 support::children(&self.syntax)
14717 }
14718}
14719
14720#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14721pub struct TransformFromFunc {
14722 pub(crate) syntax: SyntaxNode,
14723}
14724impl TransformFromFunc {
14725 #[inline]
14726 pub fn function_sig(&self) -> Option<FunctionSig> {
14727 support::child(&self.syntax)
14728 }
14729 #[inline]
14730 pub fn from_token(&self) -> Option<SyntaxToken> {
14731 support::token(&self.syntax, SyntaxKind::FROM_KW)
14732 }
14733 #[inline]
14734 pub fn function_token(&self) -> Option<SyntaxToken> {
14735 support::token(&self.syntax, SyntaxKind::FUNCTION_KW)
14736 }
14737 #[inline]
14738 pub fn sql_token(&self) -> Option<SyntaxToken> {
14739 support::token(&self.syntax, SyntaxKind::SQL_KW)
14740 }
14741 #[inline]
14742 pub fn with_token(&self) -> Option<SyntaxToken> {
14743 support::token(&self.syntax, SyntaxKind::WITH_KW)
14744 }
14745}
14746
14747#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14748pub struct TransformFuncOption {
14749 pub(crate) syntax: SyntaxNode,
14750}
14751impl TransformFuncOption {
14752 #[inline]
14753 pub fn transform_token(&self) -> Option<SyntaxToken> {
14754 support::token(&self.syntax, SyntaxKind::TRANSFORM_KW)
14755 }
14756}
14757
14758#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14759pub struct TransformToFunc {
14760 pub(crate) syntax: SyntaxNode,
14761}
14762impl TransformToFunc {
14763 #[inline]
14764 pub fn function_sig(&self) -> Option<FunctionSig> {
14765 support::child(&self.syntax)
14766 }
14767 #[inline]
14768 pub fn function_token(&self) -> Option<SyntaxToken> {
14769 support::token(&self.syntax, SyntaxKind::FUNCTION_KW)
14770 }
14771 #[inline]
14772 pub fn sql_token(&self) -> Option<SyntaxToken> {
14773 support::token(&self.syntax, SyntaxKind::SQL_KW)
14774 }
14775 #[inline]
14776 pub fn to_token(&self) -> Option<SyntaxToken> {
14777 support::token(&self.syntax, SyntaxKind::TO_KW)
14778 }
14779 #[inline]
14780 pub fn with_token(&self) -> Option<SyntaxToken> {
14781 support::token(&self.syntax, SyntaxKind::WITH_KW)
14782 }
14783}
14784
14785#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14786pub struct TriggerEvent {
14787 pub(crate) syntax: SyntaxNode,
14788}
14789impl TriggerEvent {
14790 #[inline]
14791 pub fn trigger_event_update(&self) -> Option<TriggerEventUpdate> {
14792 support::child(&self.syntax)
14793 }
14794 #[inline]
14795 pub fn delete_token(&self) -> Option<SyntaxToken> {
14796 support::token(&self.syntax, SyntaxKind::DELETE_KW)
14797 }
14798 #[inline]
14799 pub fn insert_token(&self) -> Option<SyntaxToken> {
14800 support::token(&self.syntax, SyntaxKind::INSERT_KW)
14801 }
14802 #[inline]
14803 pub fn truncate_token(&self) -> Option<SyntaxToken> {
14804 support::token(&self.syntax, SyntaxKind::TRUNCATE_KW)
14805 }
14806}
14807
14808#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14809pub struct TriggerEventList {
14810 pub(crate) syntax: SyntaxNode,
14811}
14812impl TriggerEventList {
14813 #[inline]
14814 pub fn trigger_events(&self) -> AstChildren<TriggerEvent> {
14815 support::children(&self.syntax)
14816 }
14817}
14818
14819#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14820pub struct TriggerEventUpdate {
14821 pub(crate) syntax: SyntaxNode,
14822}
14823impl TriggerEventUpdate {
14824 #[inline]
14825 pub fn name_refs(&self) -> AstChildren<NameRef> {
14826 support::children(&self.syntax)
14827 }
14828 #[inline]
14829 pub fn of_token(&self) -> Option<SyntaxToken> {
14830 support::token(&self.syntax, SyntaxKind::OF_KW)
14831 }
14832 #[inline]
14833 pub fn update_token(&self) -> Option<SyntaxToken> {
14834 support::token(&self.syntax, SyntaxKind::UPDATE_KW)
14835 }
14836}
14837
14838#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14839pub struct TrimFn {
14840 pub(crate) syntax: SyntaxNode,
14841}
14842impl TrimFn {
14843 #[inline]
14844 pub fn expr(&self) -> Option<Expr> {
14845 support::child(&self.syntax)
14846 }
14847 #[inline]
14848 pub fn exprs(&self) -> AstChildren<Expr> {
14849 support::children(&self.syntax)
14850 }
14851 #[inline]
14852 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
14853 support::token(&self.syntax, SyntaxKind::L_PAREN)
14854 }
14855 #[inline]
14856 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
14857 support::token(&self.syntax, SyntaxKind::R_PAREN)
14858 }
14859 #[inline]
14860 pub fn from_token(&self) -> Option<SyntaxToken> {
14861 support::token(&self.syntax, SyntaxKind::FROM_KW)
14862 }
14863 #[inline]
14864 pub fn trim_token(&self) -> Option<SyntaxToken> {
14865 support::token(&self.syntax, SyntaxKind::TRIM_KW)
14866 }
14867}
14868
14869#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14870pub struct Truncate {
14871 pub(crate) syntax: SyntaxNode,
14872}
14873impl Truncate {
14874 #[inline]
14875 pub fn table_list(&self) -> Option<TableList> {
14876 support::child(&self.syntax)
14877 }
14878 #[inline]
14879 pub fn cascade_token(&self) -> Option<SyntaxToken> {
14880 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
14881 }
14882 #[inline]
14883 pub fn continue_token(&self) -> Option<SyntaxToken> {
14884 support::token(&self.syntax, SyntaxKind::CONTINUE_KW)
14885 }
14886 #[inline]
14887 pub fn identity_token(&self) -> Option<SyntaxToken> {
14888 support::token(&self.syntax, SyntaxKind::IDENTITY_KW)
14889 }
14890 #[inline]
14891 pub fn restart_token(&self) -> Option<SyntaxToken> {
14892 support::token(&self.syntax, SyntaxKind::RESTART_KW)
14893 }
14894 #[inline]
14895 pub fn restrict_token(&self) -> Option<SyntaxToken> {
14896 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
14897 }
14898 #[inline]
14899 pub fn table_token(&self) -> Option<SyntaxToken> {
14900 support::token(&self.syntax, SyntaxKind::TABLE_KW)
14901 }
14902 #[inline]
14903 pub fn truncate_token(&self) -> Option<SyntaxToken> {
14904 support::token(&self.syntax, SyntaxKind::TRUNCATE_KW)
14905 }
14906}
14907
14908#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14909pub struct TupleExpr {
14910 pub(crate) syntax: SyntaxNode,
14911}
14912impl TupleExpr {
14913 #[inline]
14914 pub fn exprs(&self) -> AstChildren<Expr> {
14915 support::children(&self.syntax)
14916 }
14917 #[inline]
14918 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
14919 support::token(&self.syntax, SyntaxKind::L_PAREN)
14920 }
14921 #[inline]
14922 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
14923 support::token(&self.syntax, SyntaxKind::R_PAREN)
14924 }
14925}
14926
14927#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14928pub struct UnicodeNormalForm {
14929 pub(crate) syntax: SyntaxNode,
14930}
14931impl UnicodeNormalForm {
14932 #[inline]
14933 pub fn nfc_token(&self) -> Option<SyntaxToken> {
14934 support::token(&self.syntax, SyntaxKind::NFC_KW)
14935 }
14936 #[inline]
14937 pub fn nfd_token(&self) -> Option<SyntaxToken> {
14938 support::token(&self.syntax, SyntaxKind::NFD_KW)
14939 }
14940 #[inline]
14941 pub fn nfkc_token(&self) -> Option<SyntaxToken> {
14942 support::token(&self.syntax, SyntaxKind::NFKC_KW)
14943 }
14944 #[inline]
14945 pub fn nfkd_token(&self) -> Option<SyntaxToken> {
14946 support::token(&self.syntax, SyntaxKind::NFKD_KW)
14947 }
14948}
14949
14950#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14951pub struct UniqueConstraint {
14952 pub(crate) syntax: SyntaxNode,
14953}
14954impl UniqueConstraint {
14955 #[inline]
14956 pub fn column_list(&self) -> Option<ColumnList> {
14957 support::child(&self.syntax)
14958 }
14959 #[inline]
14960 pub fn name(&self) -> Option<Name> {
14961 support::child(&self.syntax)
14962 }
14963 #[inline]
14964 pub fn nulls_distinct(&self) -> Option<NullsDistinct> {
14965 support::child(&self.syntax)
14966 }
14967 #[inline]
14968 pub fn nulls_not_distinct(&self) -> Option<NullsNotDistinct> {
14969 support::child(&self.syntax)
14970 }
14971 #[inline]
14972 pub fn using_index(&self) -> Option<UsingIndex> {
14973 support::child(&self.syntax)
14974 }
14975 #[inline]
14976 pub fn constraint_token(&self) -> Option<SyntaxToken> {
14977 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
14978 }
14979 #[inline]
14980 pub fn unique_token(&self) -> Option<SyntaxToken> {
14981 support::token(&self.syntax, SyntaxKind::UNIQUE_KW)
14982 }
14983}
14984
14985#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14986pub struct Unlisten {
14987 pub(crate) syntax: SyntaxNode,
14988}
14989impl Unlisten {
14990 #[inline]
14991 pub fn name_ref(&self) -> Option<NameRef> {
14992 support::child(&self.syntax)
14993 }
14994 #[inline]
14995 pub fn star_token(&self) -> Option<SyntaxToken> {
14996 support::token(&self.syntax, SyntaxKind::STAR)
14997 }
14998 #[inline]
14999 pub fn unlisten_token(&self) -> Option<SyntaxToken> {
15000 support::token(&self.syntax, SyntaxKind::UNLISTEN_KW)
15001 }
15002}
15003
15004#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15005pub struct Update {
15006 pub(crate) syntax: SyntaxNode,
15007}
15008impl Update {
15009 #[inline]
15010 pub fn alias(&self) -> Option<Alias> {
15011 support::child(&self.syntax)
15012 }
15013 #[inline]
15014 pub fn from_clause(&self) -> Option<FromClause> {
15015 support::child(&self.syntax)
15016 }
15017 #[inline]
15018 pub fn relation_name(&self) -> Option<RelationName> {
15019 support::child(&self.syntax)
15020 }
15021 #[inline]
15022 pub fn returning_clause(&self) -> Option<ReturningClause> {
15023 support::child(&self.syntax)
15024 }
15025 #[inline]
15026 pub fn set_clause(&self) -> Option<SetClause> {
15027 support::child(&self.syntax)
15028 }
15029 #[inline]
15030 pub fn where_clause(&self) -> Option<WhereClause> {
15031 support::child(&self.syntax)
15032 }
15033 #[inline]
15034 pub fn update_token(&self) -> Option<SyntaxToken> {
15035 support::token(&self.syntax, SyntaxKind::UPDATE_KW)
15036 }
15037}
15038
15039#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15040pub struct UsingClause {
15041 pub(crate) syntax: SyntaxNode,
15042}
15043impl UsingClause {
15044 #[inline]
15045 pub fn from_items(&self) -> AstChildren<FromItem> {
15046 support::children(&self.syntax)
15047 }
15048 #[inline]
15049 pub fn using_token(&self) -> Option<SyntaxToken> {
15050 support::token(&self.syntax, SyntaxKind::USING_KW)
15051 }
15052}
15053
15054#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15055pub struct UsingIndex {
15056 pub(crate) syntax: SyntaxNode,
15057}
15058impl UsingIndex {
15059 #[inline]
15060 pub fn name_ref(&self) -> Option<NameRef> {
15061 support::child(&self.syntax)
15062 }
15063 #[inline]
15064 pub fn index_token(&self) -> Option<SyntaxToken> {
15065 support::token(&self.syntax, SyntaxKind::INDEX_KW)
15066 }
15067 #[inline]
15068 pub fn using_token(&self) -> Option<SyntaxToken> {
15069 support::token(&self.syntax, SyntaxKind::USING_KW)
15070 }
15071}
15072
15073#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15074pub struct UsingMethod {
15075 pub(crate) syntax: SyntaxNode,
15076}
15077impl UsingMethod {
15078 #[inline]
15079 pub fn name_ref(&self) -> Option<NameRef> {
15080 support::child(&self.syntax)
15081 }
15082 #[inline]
15083 pub fn using_token(&self) -> Option<SyntaxToken> {
15084 support::token(&self.syntax, SyntaxKind::USING_KW)
15085 }
15086}
15087
15088#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15089pub struct UsingOnClause {
15090 pub(crate) syntax: SyntaxNode,
15091}
15092impl UsingOnClause {
15093 #[inline]
15094 pub fn expr(&self) -> Option<Expr> {
15095 support::child(&self.syntax)
15096 }
15097 #[inline]
15098 pub fn from_item(&self) -> Option<FromItem> {
15099 support::child(&self.syntax)
15100 }
15101 #[inline]
15102 pub fn on_token(&self) -> Option<SyntaxToken> {
15103 support::token(&self.syntax, SyntaxKind::ON_KW)
15104 }
15105 #[inline]
15106 pub fn using_token(&self) -> Option<SyntaxToken> {
15107 support::token(&self.syntax, SyntaxKind::USING_KW)
15108 }
15109}
15110
15111#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15112pub struct Vacuum {
15113 pub(crate) syntax: SyntaxNode,
15114}
15115impl Vacuum {
15116 #[inline]
15117 pub fn relation_name(&self) -> Option<RelationName> {
15118 support::child(&self.syntax)
15119 }
15120 #[inline]
15121 pub fn vacuum_option_list(&self) -> Option<VacuumOptionList> {
15122 support::child(&self.syntax)
15123 }
15124 #[inline]
15125 pub fn vacuum_token(&self) -> Option<SyntaxToken> {
15126 support::token(&self.syntax, SyntaxKind::VACUUM_KW)
15127 }
15128}
15129
15130#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15131pub struct VacuumOption {
15132 pub(crate) syntax: SyntaxNode,
15133}
15134impl VacuumOption {
15135 #[inline]
15136 pub fn full_token(&self) -> Option<SyntaxToken> {
15137 support::token(&self.syntax, SyntaxKind::FULL_KW)
15138 }
15139}
15140
15141#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15142pub struct VacuumOptionList {
15143 pub(crate) syntax: SyntaxNode,
15144}
15145impl VacuumOptionList {
15146 #[inline]
15147 pub fn vacuum_options(&self) -> AstChildren<VacuumOption> {
15148 support::children(&self.syntax)
15149 }
15150 #[inline]
15151 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
15152 support::token(&self.syntax, SyntaxKind::L_PAREN)
15153 }
15154 #[inline]
15155 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
15156 support::token(&self.syntax, SyntaxKind::R_PAREN)
15157 }
15158}
15159
15160#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15161pub struct ValidateConstraint {
15162 pub(crate) syntax: SyntaxNode,
15163}
15164impl ValidateConstraint {
15165 #[inline]
15166 pub fn name_ref(&self) -> Option<NameRef> {
15167 support::child(&self.syntax)
15168 }
15169 #[inline]
15170 pub fn constraint_token(&self) -> Option<SyntaxToken> {
15171 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
15172 }
15173 #[inline]
15174 pub fn validate_token(&self) -> Option<SyntaxToken> {
15175 support::token(&self.syntax, SyntaxKind::VALIDATE_KW)
15176 }
15177}
15178
15179#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15180pub struct Values {
15181 pub(crate) syntax: SyntaxNode,
15182}
15183impl Values {
15184 #[inline]
15185 pub fn row_list(&self) -> Option<RowList> {
15186 support::child(&self.syntax)
15187 }
15188 #[inline]
15189 pub fn values_token(&self) -> Option<SyntaxToken> {
15190 support::token(&self.syntax, SyntaxKind::VALUES_KW)
15191 }
15192}
15193
15194#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15195pub struct Variant {
15196 pub(crate) syntax: SyntaxNode,
15197}
15198impl Variant {
15199 #[inline]
15200 pub fn literal(&self) -> Option<Literal> {
15201 support::child(&self.syntax)
15202 }
15203}
15204
15205#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15206pub struct VariantList {
15207 pub(crate) syntax: SyntaxNode,
15208}
15209impl VariantList {
15210 #[inline]
15211 pub fn variants(&self) -> AstChildren<Variant> {
15212 support::children(&self.syntax)
15213 }
15214 #[inline]
15215 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
15216 support::token(&self.syntax, SyntaxKind::L_PAREN)
15217 }
15218 #[inline]
15219 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
15220 support::token(&self.syntax, SyntaxKind::R_PAREN)
15221 }
15222}
15223
15224#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15225pub struct VolatilityFuncOption {
15226 pub(crate) syntax: SyntaxNode,
15227}
15228impl VolatilityFuncOption {
15229 #[inline]
15230 pub fn immutable_token(&self) -> Option<SyntaxToken> {
15231 support::token(&self.syntax, SyntaxKind::IMMUTABLE_KW)
15232 }
15233 #[inline]
15234 pub fn stable_token(&self) -> Option<SyntaxToken> {
15235 support::token(&self.syntax, SyntaxKind::STABLE_KW)
15236 }
15237 #[inline]
15238 pub fn volatile_token(&self) -> Option<SyntaxToken> {
15239 support::token(&self.syntax, SyntaxKind::VOLATILE_KW)
15240 }
15241}
15242
15243#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15244pub struct WhenClause {
15245 pub(crate) syntax: SyntaxNode,
15246}
15247impl WhenClause {
15248 #[inline]
15249 pub fn then_token(&self) -> Option<SyntaxToken> {
15250 support::token(&self.syntax, SyntaxKind::THEN_KW)
15251 }
15252 #[inline]
15253 pub fn when_token(&self) -> Option<SyntaxToken> {
15254 support::token(&self.syntax, SyntaxKind::WHEN_KW)
15255 }
15256}
15257
15258#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15259pub struct WhenClauseList {
15260 pub(crate) syntax: SyntaxNode,
15261}
15262impl WhenClauseList {
15263 #[inline]
15264 pub fn when_clause(&self) -> Option<WhenClause> {
15265 support::child(&self.syntax)
15266 }
15267 #[inline]
15268 pub fn when_clauses(&self) -> AstChildren<WhenClause> {
15269 support::children(&self.syntax)
15270 }
15271}
15272
15273#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15274pub struct WhenCondition {
15275 pub(crate) syntax: SyntaxNode,
15276}
15277impl WhenCondition {
15278 #[inline]
15279 pub fn expr(&self) -> Option<Expr> {
15280 support::child(&self.syntax)
15281 }
15282 #[inline]
15283 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
15284 support::token(&self.syntax, SyntaxKind::L_PAREN)
15285 }
15286 #[inline]
15287 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
15288 support::token(&self.syntax, SyntaxKind::R_PAREN)
15289 }
15290 #[inline]
15291 pub fn when_token(&self) -> Option<SyntaxToken> {
15292 support::token(&self.syntax, SyntaxKind::WHEN_KW)
15293 }
15294}
15295
15296#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15297pub struct WhereClause {
15298 pub(crate) syntax: SyntaxNode,
15299}
15300impl WhereClause {
15301 #[inline]
15302 pub fn expr(&self) -> Option<Expr> {
15303 support::child(&self.syntax)
15304 }
15305 #[inline]
15306 pub fn where_token(&self) -> Option<SyntaxToken> {
15307 support::token(&self.syntax, SyntaxKind::WHERE_KW)
15308 }
15309}
15310
15311#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15312pub struct WhereConditionClause {
15313 pub(crate) syntax: SyntaxNode,
15314}
15315impl WhereConditionClause {
15316 #[inline]
15317 pub fn expr(&self) -> Option<Expr> {
15318 support::child(&self.syntax)
15319 }
15320 #[inline]
15321 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
15322 support::token(&self.syntax, SyntaxKind::L_PAREN)
15323 }
15324 #[inline]
15325 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
15326 support::token(&self.syntax, SyntaxKind::R_PAREN)
15327 }
15328 #[inline]
15329 pub fn where_token(&self) -> Option<SyntaxToken> {
15330 support::token(&self.syntax, SyntaxKind::WHERE_KW)
15331 }
15332}
15333
15334#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15335pub struct WhereCurrentOf {
15336 pub(crate) syntax: SyntaxNode,
15337}
15338impl WhereCurrentOf {
15339 #[inline]
15340 pub fn name_ref(&self) -> Option<NameRef> {
15341 support::child(&self.syntax)
15342 }
15343 #[inline]
15344 pub fn current_token(&self) -> Option<SyntaxToken> {
15345 support::token(&self.syntax, SyntaxKind::CURRENT_KW)
15346 }
15347 #[inline]
15348 pub fn of_token(&self) -> Option<SyntaxToken> {
15349 support::token(&self.syntax, SyntaxKind::OF_KW)
15350 }
15351 #[inline]
15352 pub fn where_token(&self) -> Option<SyntaxToken> {
15353 support::token(&self.syntax, SyntaxKind::WHERE_KW)
15354 }
15355}
15356
15357#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15358pub struct WindowClause {
15359 pub(crate) syntax: SyntaxNode,
15360}
15361impl WindowClause {
15362 #[inline]
15363 pub fn window_defs(&self) -> AstChildren<WindowDef> {
15364 support::children(&self.syntax)
15365 }
15366 #[inline]
15367 pub fn window_token(&self) -> Option<SyntaxToken> {
15368 support::token(&self.syntax, SyntaxKind::WINDOW_KW)
15369 }
15370}
15371
15372#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15373pub struct WindowDef {
15374 pub(crate) syntax: SyntaxNode,
15375}
15376impl WindowDef {
15377 #[inline]
15378 pub fn name(&self) -> Option<Name> {
15379 support::child(&self.syntax)
15380 }
15381 #[inline]
15382 pub fn window_spec(&self) -> Option<WindowSpec> {
15383 support::child(&self.syntax)
15384 }
15385 #[inline]
15386 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
15387 support::token(&self.syntax, SyntaxKind::L_PAREN)
15388 }
15389 #[inline]
15390 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
15391 support::token(&self.syntax, SyntaxKind::R_PAREN)
15392 }
15393 #[inline]
15394 pub fn as_token(&self) -> Option<SyntaxToken> {
15395 support::token(&self.syntax, SyntaxKind::AS_KW)
15396 }
15397}
15398
15399#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15400pub struct WindowFuncOption {
15401 pub(crate) syntax: SyntaxNode,
15402}
15403impl WindowFuncOption {
15404 #[inline]
15405 pub fn window_token(&self) -> Option<SyntaxToken> {
15406 support::token(&self.syntax, SyntaxKind::WINDOW_KW)
15407 }
15408}
15409
15410#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15411pub struct WindowSpec {
15412 pub(crate) syntax: SyntaxNode,
15413}
15414impl WindowSpec {
15415 #[inline]
15416 pub fn exprs(&self) -> AstChildren<Expr> {
15417 support::children(&self.syntax)
15418 }
15419 #[inline]
15420 pub fn frame_clause(&self) -> Option<FrameClause> {
15421 support::child(&self.syntax)
15422 }
15423 #[inline]
15424 pub fn order_by_clause(&self) -> Option<OrderByClause> {
15425 support::child(&self.syntax)
15426 }
15427 #[inline]
15428 pub fn by_token(&self) -> Option<SyntaxToken> {
15429 support::token(&self.syntax, SyntaxKind::BY_KW)
15430 }
15431 #[inline]
15432 pub fn ident_token(&self) -> Option<SyntaxToken> {
15433 support::token(&self.syntax, SyntaxKind::IDENT)
15434 }
15435 #[inline]
15436 pub fn partition_token(&self) -> Option<SyntaxToken> {
15437 support::token(&self.syntax, SyntaxKind::PARTITION_KW)
15438 }
15439}
15440
15441#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15442pub struct WithClause {
15443 pub(crate) syntax: SyntaxNode,
15444}
15445impl WithClause {
15446 #[inline]
15447 pub fn with_tables(&self) -> AstChildren<WithTable> {
15448 support::children(&self.syntax)
15449 }
15450 #[inline]
15451 pub fn recursive_token(&self) -> Option<SyntaxToken> {
15452 support::token(&self.syntax, SyntaxKind::RECURSIVE_KW)
15453 }
15454 #[inline]
15455 pub fn with_token(&self) -> Option<SyntaxToken> {
15456 support::token(&self.syntax, SyntaxKind::WITH_KW)
15457 }
15458}
15459
15460#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15461pub struct WithData {
15462 pub(crate) syntax: SyntaxNode,
15463}
15464impl WithData {
15465 #[inline]
15466 pub fn data_token(&self) -> Option<SyntaxToken> {
15467 support::token(&self.syntax, SyntaxKind::DATA_KW)
15468 }
15469 #[inline]
15470 pub fn with_token(&self) -> Option<SyntaxToken> {
15471 support::token(&self.syntax, SyntaxKind::WITH_KW)
15472 }
15473}
15474
15475#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15476pub struct WithNoData {
15477 pub(crate) syntax: SyntaxNode,
15478}
15479impl WithNoData {
15480 #[inline]
15481 pub fn data_token(&self) -> Option<SyntaxToken> {
15482 support::token(&self.syntax, SyntaxKind::DATA_KW)
15483 }
15484 #[inline]
15485 pub fn no_token(&self) -> Option<SyntaxToken> {
15486 support::token(&self.syntax, SyntaxKind::NO_KW)
15487 }
15488 #[inline]
15489 pub fn with_token(&self) -> Option<SyntaxToken> {
15490 support::token(&self.syntax, SyntaxKind::WITH_KW)
15491 }
15492}
15493
15494#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15495pub struct WithOptions {
15496 pub(crate) syntax: SyntaxNode,
15497}
15498impl WithOptions {
15499 #[inline]
15500 pub fn options_token(&self) -> Option<SyntaxToken> {
15501 support::token(&self.syntax, SyntaxKind::OPTIONS_KW)
15502 }
15503 #[inline]
15504 pub fn with_token(&self) -> Option<SyntaxToken> {
15505 support::token(&self.syntax, SyntaxKind::WITH_KW)
15506 }
15507}
15508
15509#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15510pub struct WithParams {
15511 pub(crate) syntax: SyntaxNode,
15512}
15513impl WithParams {
15514 #[inline]
15515 pub fn attribute_list(&self) -> Option<AttributeList> {
15516 support::child(&self.syntax)
15517 }
15518 #[inline]
15519 pub fn with_token(&self) -> Option<SyntaxToken> {
15520 support::token(&self.syntax, SyntaxKind::WITH_KW)
15521 }
15522}
15523
15524#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15525pub struct WithTable {
15526 pub(crate) syntax: SyntaxNode,
15527}
15528impl WithTable {
15529 #[inline]
15530 pub fn column_list(&self) -> Option<ColumnList> {
15531 support::child(&self.syntax)
15532 }
15533 #[inline]
15534 pub fn materialized(&self) -> Option<Materialized> {
15535 support::child(&self.syntax)
15536 }
15537 #[inline]
15538 pub fn name(&self) -> Option<Name> {
15539 support::child(&self.syntax)
15540 }
15541 #[inline]
15542 pub fn not_materialized(&self) -> Option<NotMaterialized> {
15543 support::child(&self.syntax)
15544 }
15545 #[inline]
15546 pub fn query(&self) -> Option<WithQuery> {
15547 support::child(&self.syntax)
15548 }
15549 #[inline]
15550 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
15551 support::token(&self.syntax, SyntaxKind::L_PAREN)
15552 }
15553 #[inline]
15554 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
15555 support::token(&self.syntax, SyntaxKind::R_PAREN)
15556 }
15557 #[inline]
15558 pub fn as_token(&self) -> Option<SyntaxToken> {
15559 support::token(&self.syntax, SyntaxKind::AS_KW)
15560 }
15561}
15562
15563#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15564pub struct WithTimezone {
15565 pub(crate) syntax: SyntaxNode,
15566}
15567impl WithTimezone {
15568 #[inline]
15569 pub fn time_token(&self) -> Option<SyntaxToken> {
15570 support::token(&self.syntax, SyntaxKind::TIME_KW)
15571 }
15572 #[inline]
15573 pub fn with_token(&self) -> Option<SyntaxToken> {
15574 support::token(&self.syntax, SyntaxKind::WITH_KW)
15575 }
15576 #[inline]
15577 pub fn zone_token(&self) -> Option<SyntaxToken> {
15578 support::token(&self.syntax, SyntaxKind::ZONE_KW)
15579 }
15580}
15581
15582#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15583pub struct WithinClause {
15584 pub(crate) syntax: SyntaxNode,
15585}
15586impl WithinClause {
15587 #[inline]
15588 pub fn order_by_clause(&self) -> Option<OrderByClause> {
15589 support::child(&self.syntax)
15590 }
15591 #[inline]
15592 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
15593 support::token(&self.syntax, SyntaxKind::L_PAREN)
15594 }
15595 #[inline]
15596 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
15597 support::token(&self.syntax, SyntaxKind::R_PAREN)
15598 }
15599 #[inline]
15600 pub fn group_token(&self) -> Option<SyntaxToken> {
15601 support::token(&self.syntax, SyntaxKind::GROUP_KW)
15602 }
15603 #[inline]
15604 pub fn within_token(&self) -> Option<SyntaxToken> {
15605 support::token(&self.syntax, SyntaxKind::WITHIN_KW)
15606 }
15607}
15608
15609#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15610pub struct WithoutOids {
15611 pub(crate) syntax: SyntaxNode,
15612}
15613impl WithoutOids {
15614 #[inline]
15615 pub fn oids_token(&self) -> Option<SyntaxToken> {
15616 support::token(&self.syntax, SyntaxKind::OIDS_KW)
15617 }
15618 #[inline]
15619 pub fn without_token(&self) -> Option<SyntaxToken> {
15620 support::token(&self.syntax, SyntaxKind::WITHOUT_KW)
15621 }
15622}
15623
15624#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15625pub struct WithoutTimezone {
15626 pub(crate) syntax: SyntaxNode,
15627}
15628impl WithoutTimezone {
15629 #[inline]
15630 pub fn time_token(&self) -> Option<SyntaxToken> {
15631 support::token(&self.syntax, SyntaxKind::TIME_KW)
15632 }
15633 #[inline]
15634 pub fn without_token(&self) -> Option<SyntaxToken> {
15635 support::token(&self.syntax, SyntaxKind::WITHOUT_KW)
15636 }
15637 #[inline]
15638 pub fn zone_token(&self) -> Option<SyntaxToken> {
15639 support::token(&self.syntax, SyntaxKind::ZONE_KW)
15640 }
15641}
15642
15643#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15644pub struct XmlAttributeList {
15645 pub(crate) syntax: SyntaxNode,
15646}
15647impl XmlAttributeList {
15648 #[inline]
15649 pub fn expr_as_names(&self) -> AstChildren<ExprAsName> {
15650 support::children(&self.syntax)
15651 }
15652}
15653
15654#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15655pub struct XmlColumnOption {
15656 pub(crate) syntax: SyntaxNode,
15657}
15658impl XmlColumnOption {
15659 #[inline]
15660 pub fn expr(&self) -> Option<Expr> {
15661 support::child(&self.syntax)
15662 }
15663 #[inline]
15664 pub fn default_token(&self) -> Option<SyntaxToken> {
15665 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
15666 }
15667 #[inline]
15668 pub fn ident_token(&self) -> Option<SyntaxToken> {
15669 support::token(&self.syntax, SyntaxKind::IDENT)
15670 }
15671 #[inline]
15672 pub fn not_token(&self) -> Option<SyntaxToken> {
15673 support::token(&self.syntax, SyntaxKind::NOT_KW)
15674 }
15675 #[inline]
15676 pub fn null_token(&self) -> Option<SyntaxToken> {
15677 support::token(&self.syntax, SyntaxKind::NULL_KW)
15678 }
15679 #[inline]
15680 pub fn path_token(&self) -> Option<SyntaxToken> {
15681 support::token(&self.syntax, SyntaxKind::PATH_KW)
15682 }
15683}
15684
15685#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15686pub struct XmlColumnOptionList {
15687 pub(crate) syntax: SyntaxNode,
15688}
15689impl XmlColumnOptionList {
15690 #[inline]
15691 pub fn xml_column_option(&self) -> Option<XmlColumnOption> {
15692 support::child(&self.syntax)
15693 }
15694 #[inline]
15695 pub fn xml_column_options(&self) -> AstChildren<XmlColumnOption> {
15696 support::children(&self.syntax)
15697 }
15698}
15699
15700#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15701pub struct XmlElementFn {
15702 pub(crate) syntax: SyntaxNode,
15703}
15704impl XmlElementFn {
15705 #[inline]
15706 pub fn exprs(&self) -> AstChildren<Expr> {
15707 support::children(&self.syntax)
15708 }
15709 #[inline]
15710 pub fn name(&self) -> Option<Name> {
15711 support::child(&self.syntax)
15712 }
15713 #[inline]
15714 pub fn xml_attribute_list(&self) -> Option<XmlAttributeList> {
15715 support::child(&self.syntax)
15716 }
15717 #[inline]
15718 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
15719 support::token(&self.syntax, SyntaxKind::L_PAREN)
15720 }
15721 #[inline]
15722 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
15723 support::token(&self.syntax, SyntaxKind::R_PAREN)
15724 }
15725 #[inline]
15726 pub fn comma_token(&self) -> Option<SyntaxToken> {
15727 support::token(&self.syntax, SyntaxKind::COMMA)
15728 }
15729 #[inline]
15730 pub fn name_token(&self) -> Option<SyntaxToken> {
15731 support::token(&self.syntax, SyntaxKind::NAME_KW)
15732 }
15733 #[inline]
15734 pub fn xmlattributes_token(&self) -> Option<SyntaxToken> {
15735 support::token(&self.syntax, SyntaxKind::XMLATTRIBUTES_KW)
15736 }
15737 #[inline]
15738 pub fn xmlelement_token(&self) -> Option<SyntaxToken> {
15739 support::token(&self.syntax, SyntaxKind::XMLELEMENT_KW)
15740 }
15741}
15742
15743#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15744pub struct XmlExistsFn {
15745 pub(crate) syntax: SyntaxNode,
15746}
15747impl XmlExistsFn {
15748 #[inline]
15749 pub fn expr(&self) -> Option<Expr> {
15750 support::child(&self.syntax)
15751 }
15752 #[inline]
15753 pub fn xml_passing_mech(&self) -> Option<XmlPassingMech> {
15754 support::child(&self.syntax)
15755 }
15756 #[inline]
15757 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
15758 support::token(&self.syntax, SyntaxKind::L_PAREN)
15759 }
15760 #[inline]
15761 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
15762 support::token(&self.syntax, SyntaxKind::R_PAREN)
15763 }
15764 #[inline]
15765 pub fn passing_token(&self) -> Option<SyntaxToken> {
15766 support::token(&self.syntax, SyntaxKind::PASSING_KW)
15767 }
15768 #[inline]
15769 pub fn xmlexists_token(&self) -> Option<SyntaxToken> {
15770 support::token(&self.syntax, SyntaxKind::XMLEXISTS_KW)
15771 }
15772}
15773
15774#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15775pub struct XmlForestFn {
15776 pub(crate) syntax: SyntaxNode,
15777}
15778impl XmlForestFn {
15779 #[inline]
15780 pub fn xml_attribute_list(&self) -> Option<XmlAttributeList> {
15781 support::child(&self.syntax)
15782 }
15783 #[inline]
15784 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
15785 support::token(&self.syntax, SyntaxKind::L_PAREN)
15786 }
15787 #[inline]
15788 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
15789 support::token(&self.syntax, SyntaxKind::R_PAREN)
15790 }
15791 #[inline]
15792 pub fn xmlforest_token(&self) -> Option<SyntaxToken> {
15793 support::token(&self.syntax, SyntaxKind::XMLFOREST_KW)
15794 }
15795}
15796
15797#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15798pub struct XmlNamespace {
15799 pub(crate) syntax: SyntaxNode,
15800}
15801impl XmlNamespace {
15802 #[inline]
15803 pub fn expr(&self) -> Option<Expr> {
15804 support::child(&self.syntax)
15805 }
15806 #[inline]
15807 pub fn name(&self) -> Option<Name> {
15808 support::child(&self.syntax)
15809 }
15810 #[inline]
15811 pub fn as_token(&self) -> Option<SyntaxToken> {
15812 support::token(&self.syntax, SyntaxKind::AS_KW)
15813 }
15814 #[inline]
15815 pub fn default_token(&self) -> Option<SyntaxToken> {
15816 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
15817 }
15818}
15819
15820#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15821pub struct XmlNamespaceList {
15822 pub(crate) syntax: SyntaxNode,
15823}
15824impl XmlNamespaceList {
15825 #[inline]
15826 pub fn xml_namespaces(&self) -> AstChildren<XmlNamespace> {
15827 support::children(&self.syntax)
15828 }
15829 #[inline]
15830 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
15831 support::token(&self.syntax, SyntaxKind::L_PAREN)
15832 }
15833 #[inline]
15834 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
15835 support::token(&self.syntax, SyntaxKind::R_PAREN)
15836 }
15837}
15838
15839#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15840pub struct XmlParseFn {
15841 pub(crate) syntax: SyntaxNode,
15842}
15843impl XmlParseFn {
15844 #[inline]
15845 pub fn expr(&self) -> Option<Expr> {
15846 support::child(&self.syntax)
15847 }
15848 #[inline]
15849 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
15850 support::token(&self.syntax, SyntaxKind::L_PAREN)
15851 }
15852 #[inline]
15853 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
15854 support::token(&self.syntax, SyntaxKind::R_PAREN)
15855 }
15856 #[inline]
15857 pub fn content_token(&self) -> Option<SyntaxToken> {
15858 support::token(&self.syntax, SyntaxKind::CONTENT_KW)
15859 }
15860 #[inline]
15861 pub fn document_token(&self) -> Option<SyntaxToken> {
15862 support::token(&self.syntax, SyntaxKind::DOCUMENT_KW)
15863 }
15864 #[inline]
15865 pub fn preserve_token(&self) -> Option<SyntaxToken> {
15866 support::token(&self.syntax, SyntaxKind::PRESERVE_KW)
15867 }
15868 #[inline]
15869 pub fn strip_token(&self) -> Option<SyntaxToken> {
15870 support::token(&self.syntax, SyntaxKind::STRIP_KW)
15871 }
15872 #[inline]
15873 pub fn whitespace_token(&self) -> Option<SyntaxToken> {
15874 support::token(&self.syntax, SyntaxKind::WHITESPACE_KW)
15875 }
15876 #[inline]
15877 pub fn xmlparse_token(&self) -> Option<SyntaxToken> {
15878 support::token(&self.syntax, SyntaxKind::XMLPARSE_KW)
15879 }
15880}
15881
15882#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15883pub struct XmlPassingMech {
15884 pub(crate) syntax: SyntaxNode,
15885}
15886impl XmlPassingMech {
15887 #[inline]
15888 pub fn by_token(&self) -> Option<SyntaxToken> {
15889 support::token(&self.syntax, SyntaxKind::BY_KW)
15890 }
15891 #[inline]
15892 pub fn ref_token(&self) -> Option<SyntaxToken> {
15893 support::token(&self.syntax, SyntaxKind::REF_KW)
15894 }
15895 #[inline]
15896 pub fn value_token(&self) -> Option<SyntaxToken> {
15897 support::token(&self.syntax, SyntaxKind::VALUE_KW)
15898 }
15899}
15900
15901#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15902pub struct XmlPiFn {
15903 pub(crate) syntax: SyntaxNode,
15904}
15905impl XmlPiFn {
15906 #[inline]
15907 pub fn expr(&self) -> Option<Expr> {
15908 support::child(&self.syntax)
15909 }
15910 #[inline]
15911 pub fn name(&self) -> Option<Name> {
15912 support::child(&self.syntax)
15913 }
15914 #[inline]
15915 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
15916 support::token(&self.syntax, SyntaxKind::L_PAREN)
15917 }
15918 #[inline]
15919 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
15920 support::token(&self.syntax, SyntaxKind::R_PAREN)
15921 }
15922 #[inline]
15923 pub fn comma_token(&self) -> Option<SyntaxToken> {
15924 support::token(&self.syntax, SyntaxKind::COMMA)
15925 }
15926 #[inline]
15927 pub fn name_token(&self) -> Option<SyntaxToken> {
15928 support::token(&self.syntax, SyntaxKind::NAME_KW)
15929 }
15930 #[inline]
15931 pub fn xmlpi_token(&self) -> Option<SyntaxToken> {
15932 support::token(&self.syntax, SyntaxKind::XMLPI_KW)
15933 }
15934}
15935
15936#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15937pub struct XmlRootFn {
15938 pub(crate) syntax: SyntaxNode,
15939}
15940impl XmlRootFn {
15941 #[inline]
15942 pub fn expr(&self) -> Option<Expr> {
15943 support::child(&self.syntax)
15944 }
15945 #[inline]
15946 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
15947 support::token(&self.syntax, SyntaxKind::L_PAREN)
15948 }
15949 #[inline]
15950 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
15951 support::token(&self.syntax, SyntaxKind::R_PAREN)
15952 }
15953 #[inline]
15954 pub fn comma_token(&self) -> Option<SyntaxToken> {
15955 support::token(&self.syntax, SyntaxKind::COMMA)
15956 }
15957 #[inline]
15958 pub fn no_token(&self) -> Option<SyntaxToken> {
15959 support::token(&self.syntax, SyntaxKind::NO_KW)
15960 }
15961 #[inline]
15962 pub fn standalone_token(&self) -> Option<SyntaxToken> {
15963 support::token(&self.syntax, SyntaxKind::STANDALONE_KW)
15964 }
15965 #[inline]
15966 pub fn value_token(&self) -> Option<SyntaxToken> {
15967 support::token(&self.syntax, SyntaxKind::VALUE_KW)
15968 }
15969 #[inline]
15970 pub fn version_token(&self) -> Option<SyntaxToken> {
15971 support::token(&self.syntax, SyntaxKind::VERSION_KW)
15972 }
15973 #[inline]
15974 pub fn xmlroot_token(&self) -> Option<SyntaxToken> {
15975 support::token(&self.syntax, SyntaxKind::XMLROOT_KW)
15976 }
15977 #[inline]
15978 pub fn yes_token(&self) -> Option<SyntaxToken> {
15979 support::token(&self.syntax, SyntaxKind::YES_KW)
15980 }
15981}
15982
15983#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15984pub struct XmlRowPassingClause {
15985 pub(crate) syntax: SyntaxNode,
15986}
15987impl XmlRowPassingClause {
15988 #[inline]
15989 pub fn expr(&self) -> Option<Expr> {
15990 support::child(&self.syntax)
15991 }
15992 #[inline]
15993 pub fn xml_passing_mech(&self) -> Option<XmlPassingMech> {
15994 support::child(&self.syntax)
15995 }
15996 #[inline]
15997 pub fn passing_token(&self) -> Option<SyntaxToken> {
15998 support::token(&self.syntax, SyntaxKind::PASSING_KW)
15999 }
16000}
16001
16002#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16003pub struct XmlSerializeFn {
16004 pub(crate) syntax: SyntaxNode,
16005}
16006impl XmlSerializeFn {
16007 #[inline]
16008 pub fn expr(&self) -> Option<Expr> {
16009 support::child(&self.syntax)
16010 }
16011 #[inline]
16012 pub fn ty(&self) -> Option<Type> {
16013 support::child(&self.syntax)
16014 }
16015 #[inline]
16016 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
16017 support::token(&self.syntax, SyntaxKind::L_PAREN)
16018 }
16019 #[inline]
16020 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
16021 support::token(&self.syntax, SyntaxKind::R_PAREN)
16022 }
16023 #[inline]
16024 pub fn as_token(&self) -> Option<SyntaxToken> {
16025 support::token(&self.syntax, SyntaxKind::AS_KW)
16026 }
16027 #[inline]
16028 pub fn content_token(&self) -> Option<SyntaxToken> {
16029 support::token(&self.syntax, SyntaxKind::CONTENT_KW)
16030 }
16031 #[inline]
16032 pub fn document_token(&self) -> Option<SyntaxToken> {
16033 support::token(&self.syntax, SyntaxKind::DOCUMENT_KW)
16034 }
16035 #[inline]
16036 pub fn ident_token(&self) -> Option<SyntaxToken> {
16037 support::token(&self.syntax, SyntaxKind::IDENT)
16038 }
16039 #[inline]
16040 pub fn no_token(&self) -> Option<SyntaxToken> {
16041 support::token(&self.syntax, SyntaxKind::NO_KW)
16042 }
16043 #[inline]
16044 pub fn xmlserialize_token(&self) -> Option<SyntaxToken> {
16045 support::token(&self.syntax, SyntaxKind::XMLSERIALIZE_KW)
16046 }
16047}
16048
16049#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16050pub struct XmlTable {
16051 pub(crate) syntax: SyntaxNode,
16052}
16053impl XmlTable {
16054 #[inline]
16055 pub fn xml_namespace_list(&self) -> Option<XmlNamespaceList> {
16056 support::child(&self.syntax)
16057 }
16058 #[inline]
16059 pub fn xml_row_passing_clause(&self) -> Option<XmlRowPassingClause> {
16060 support::child(&self.syntax)
16061 }
16062 #[inline]
16063 pub fn xml_table_column_list(&self) -> Option<XmlTableColumnList> {
16064 support::child(&self.syntax)
16065 }
16066 #[inline]
16067 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
16068 support::token(&self.syntax, SyntaxKind::L_PAREN)
16069 }
16070 #[inline]
16071 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
16072 support::token(&self.syntax, SyntaxKind::R_PAREN)
16073 }
16074 #[inline]
16075 pub fn comma_token(&self) -> Option<SyntaxToken> {
16076 support::token(&self.syntax, SyntaxKind::COMMA)
16077 }
16078 #[inline]
16079 pub fn xmlnamespaces_token(&self) -> Option<SyntaxToken> {
16080 support::token(&self.syntax, SyntaxKind::XMLNAMESPACES_KW)
16081 }
16082 #[inline]
16083 pub fn xmltable_token(&self) -> Option<SyntaxToken> {
16084 support::token(&self.syntax, SyntaxKind::XMLTABLE_KW)
16085 }
16086}
16087
16088#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16089pub struct XmlTableColumn {
16090 pub(crate) syntax: SyntaxNode,
16091}
16092impl XmlTableColumn {
16093 #[inline]
16094 pub fn name(&self) -> Option<Name> {
16095 support::child(&self.syntax)
16096 }
16097 #[inline]
16098 pub fn ty(&self) -> Option<Type> {
16099 support::child(&self.syntax)
16100 }
16101 #[inline]
16102 pub fn xml_column_option_list(&self) -> Option<XmlColumnOptionList> {
16103 support::child(&self.syntax)
16104 }
16105 #[inline]
16106 pub fn for_token(&self) -> Option<SyntaxToken> {
16107 support::token(&self.syntax, SyntaxKind::FOR_KW)
16108 }
16109 #[inline]
16110 pub fn ordinality_token(&self) -> Option<SyntaxToken> {
16111 support::token(&self.syntax, SyntaxKind::ORDINALITY_KW)
16112 }
16113}
16114
16115#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16116pub struct XmlTableColumnList {
16117 pub(crate) syntax: SyntaxNode,
16118}
16119impl XmlTableColumnList {
16120 #[inline]
16121 pub fn xml_table_columns(&self) -> AstChildren<XmlTableColumn> {
16122 support::children(&self.syntax)
16123 }
16124}
16125
16126#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16127pub enum AlterColumnOption {
16128 AddGenerated(AddGenerated),
16129 DropDefault(DropDefault),
16130 DropExpression(DropExpression),
16131 DropIdentity(DropIdentity),
16132 DropNotNull(DropNotNull),
16133 ResetOptions(ResetOptions),
16134 Restart(Restart),
16135 SetCompression(SetCompression),
16136 SetDefault(SetDefault),
16137 SetExpression(SetExpression),
16138 SetGenerated(SetGenerated),
16139 SetGeneratedOptions(SetGeneratedOptions),
16140 SetNotNull(SetNotNull),
16141 SetOptions(SetOptions),
16142 SetOptionsList(SetOptionsList),
16143 SetSequenceOption(SetSequenceOption),
16144 SetStatistics(SetStatistics),
16145 SetStorage(SetStorage),
16146 SetType(SetType),
16147}
16148
16149#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16150pub enum AlterDomainAction {
16151 AddConstraint(AddConstraint),
16152 DropConstraint(DropConstraint),
16153 DropDefault(DropDefault),
16154 DropNotNull(DropNotNull),
16155 OwnerTo(OwnerTo),
16156 RenameConstraint(RenameConstraint),
16157 RenameTo(RenameTo),
16158 SetDefault(SetDefault),
16159 SetNotNull(SetNotNull),
16160 SetSchema(SetSchema),
16161 ValidateConstraint(ValidateConstraint),
16162}
16163
16164#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16165pub enum AlterMaterializedViewAction {
16166 DependsOnExtension(DependsOnExtension),
16167 NoDependsOnExtension(NoDependsOnExtension),
16168 RenameColumn(RenameColumn),
16169 RenameTo(RenameTo),
16170 SetSchema(SetSchema),
16171 AlterTableAction(AlterTableAction),
16172}
16173
16174#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16175pub enum AlterTableAction {
16176 AddColumn(AddColumn),
16177 AddConstraint(AddConstraint),
16178 AlterColumn(AlterColumn),
16179 AlterConstraint(AlterConstraint),
16180 AttachPartition(AttachPartition),
16181 ClusterOn(ClusterOn),
16182 DetachPartition(DetachPartition),
16183 DisableRls(DisableRls),
16184 DisableRule(DisableRule),
16185 DisableTrigger(DisableTrigger),
16186 DropColumn(DropColumn),
16187 DropConstraint(DropConstraint),
16188 EnableAlwaysRule(EnableAlwaysRule),
16189 EnableAlwaysTrigger(EnableAlwaysTrigger),
16190 EnableReplicaRule(EnableReplicaRule),
16191 EnableReplicaTrigger(EnableReplicaTrigger),
16192 EnableRls(EnableRls),
16193 EnableRule(EnableRule),
16194 EnableTrigger(EnableTrigger),
16195 ForceRls(ForceRls),
16196 InheritTable(InheritTable),
16197 NoForceRls(NoForceRls),
16198 NoInheritTable(NoInheritTable),
16199 NotOf(NotOf),
16200 OfType(OfType),
16201 OptionItemList(OptionItemList),
16202 OwnerTo(OwnerTo),
16203 RenameColumn(RenameColumn),
16204 RenameConstraint(RenameConstraint),
16205 RenameTo(RenameTo),
16206 ReplicaIdentity(ReplicaIdentity),
16207 ResetOptions(ResetOptions),
16208 SetAccessMethod(SetAccessMethod),
16209 SetLogged(SetLogged),
16210 SetOptions(SetOptions),
16211 SetSchema(SetSchema),
16212 SetTablespace(SetTablespace),
16213 SetUnlogged(SetUnlogged),
16214 SetWithoutCluster(SetWithoutCluster),
16215 SetWithoutOids(SetWithoutOids),
16216 ValidateConstraint(ValidateConstraint),
16217}
16218
16219#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16220pub enum ColumnConstraint {
16221 CheckConstraint(CheckConstraint),
16222 DefaultConstraint(DefaultConstraint),
16223 ExcludeConstraint(ExcludeConstraint),
16224 NotNullConstraint(NotNullConstraint),
16225 PrimaryKeyConstraint(PrimaryKeyConstraint),
16226 ReferencesConstraint(ReferencesConstraint),
16227 UniqueConstraint(UniqueConstraint),
16228}
16229
16230#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16231pub enum ConflictAction {
16232 ConflictDoNothing(ConflictDoNothing),
16233 ConflictDoUpdateSet(ConflictDoUpdateSet),
16234}
16235
16236#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16237pub enum ConflictTarget {
16238 ConflictOnConstraint(ConflictOnConstraint),
16239 ConflictOnIndex(ConflictOnIndex),
16240}
16241
16242#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16243pub enum Constraint {
16244 CheckConstraint(CheckConstraint),
16245 DefaultConstraint(DefaultConstraint),
16246 ForeignKeyConstraint(ForeignKeyConstraint),
16247 GeneratedConstraint(GeneratedConstraint),
16248 NotNullConstraint(NotNullConstraint),
16249 NullConstraint(NullConstraint),
16250 PrimaryKeyConstraint(PrimaryKeyConstraint),
16251 ReferencesConstraint(ReferencesConstraint),
16252 UniqueConstraint(UniqueConstraint),
16253}
16254
16255#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16256pub enum ExplainStmt {
16257 CompoundSelect(CompoundSelect),
16258 CreateMaterializedView(CreateMaterializedView),
16259 CreateTableAs(CreateTableAs),
16260 Declare(Declare),
16261 Delete(Delete),
16262 Execute(Execute),
16263 Insert(Insert),
16264 Merge(Merge),
16265 ParenSelect(ParenSelect),
16266 Select(Select),
16267 SelectInto(SelectInto),
16268 Table(Table),
16269 Update(Update),
16270 Values(Values),
16271}
16272
16273#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16274pub enum Expr {
16275 ArrayExpr(ArrayExpr),
16276 BetweenExpr(BetweenExpr),
16277 BinExpr(BinExpr),
16278 CallExpr(CallExpr),
16279 CaseExpr(CaseExpr),
16280 CastExpr(CastExpr),
16281 FieldExpr(FieldExpr),
16282 IndexExpr(IndexExpr),
16283 Literal(Literal),
16284 NameRef(NameRef),
16285 ParenExpr(ParenExpr),
16286 PostfixExpr(PostfixExpr),
16287 PrefixExpr(PrefixExpr),
16288 SliceExpr(SliceExpr),
16289 TupleExpr(TupleExpr),
16290}
16291
16292#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16293pub enum FuncOption {
16294 AsFuncOption(AsFuncOption),
16295 BeginFuncOption(BeginFuncOption),
16296 CostFuncOption(CostFuncOption),
16297 LanguageFuncOption(LanguageFuncOption),
16298 LeakproofFuncOption(LeakproofFuncOption),
16299 ParallelFuncOption(ParallelFuncOption),
16300 ResetFuncOption(ResetFuncOption),
16301 ReturnFuncOption(ReturnFuncOption),
16302 RowsFuncOption(RowsFuncOption),
16303 SecurityFuncOption(SecurityFuncOption),
16304 SetFuncOption(SetFuncOption),
16305 StrictFuncOption(StrictFuncOption),
16306 SupportFuncOption(SupportFuncOption),
16307 TransformFuncOption(TransformFuncOption),
16308 VolatilityFuncOption(VolatilityFuncOption),
16309 WindowFuncOption(WindowFuncOption),
16310}
16311
16312#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16313pub enum GroupBy {
16314 GroupingCube(GroupingCube),
16315 GroupingExpr(GroupingExpr),
16316 GroupingRollup(GroupingRollup),
16317 GroupingSets(GroupingSets),
16318}
16319
16320#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16321pub enum JoinType {
16322 JoinCross(JoinCross),
16323 JoinFull(JoinFull),
16324 JoinInner(JoinInner),
16325 JoinLeft(JoinLeft),
16326 JoinRight(JoinRight),
16327}
16328
16329#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16330pub enum JsonBehavior {
16331 JsonBehaviorDefault(JsonBehaviorDefault),
16332 JsonBehaviorEmptyArray(JsonBehaviorEmptyArray),
16333 JsonBehaviorEmptyObject(JsonBehaviorEmptyObject),
16334 JsonBehaviorError(JsonBehaviorError),
16335 JsonBehaviorFalse(JsonBehaviorFalse),
16336 JsonBehaviorNull(JsonBehaviorNull),
16337 JsonBehaviorTrue(JsonBehaviorTrue),
16338 JsonBehaviorUnknown(JsonBehaviorUnknown),
16339}
16340
16341#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16342pub enum MatchType {
16343 MatchFull(MatchFull),
16344 MatchPartial(MatchPartial),
16345 MatchSimple(MatchSimple),
16346}
16347
16348#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16349pub enum MergeAction {
16350 MergeDelete(MergeDelete),
16351 MergeDoNothing(MergeDoNothing),
16352 MergeInsert(MergeInsert),
16353 MergeUpdate(MergeUpdate),
16354}
16355
16356#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16357pub enum MergeWhenClause {
16358 MergeWhenMatched(MergeWhenMatched),
16359 MergeWhenNotMatchedSource(MergeWhenNotMatchedSource),
16360 MergeWhenNotMatchedTarget(MergeWhenNotMatchedTarget),
16361}
16362
16363#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16364pub enum OnCommitAction {
16365 DeleteRows(DeleteRows),
16366 Drop(Drop),
16367 PreserveRows(PreserveRows),
16368}
16369
16370#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16371pub enum ParamMode {
16372 ParamIn(ParamIn),
16373 ParamInOut(ParamInOut),
16374 ParamOut(ParamOut),
16375 ParamVariadic(ParamVariadic),
16376}
16377
16378#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16379pub enum PartitionType {
16380 PartitionDefault(PartitionDefault),
16381 PartitionForValuesFrom(PartitionForValuesFrom),
16382 PartitionForValuesIn(PartitionForValuesIn),
16383 PartitionForValuesWith(PartitionForValuesWith),
16384}
16385
16386#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16387pub enum PreparableStmt {
16388 CompoundSelect(CompoundSelect),
16389 Delete(Delete),
16390 Insert(Insert),
16391 Merge(Merge),
16392 Select(Select),
16393 SelectInto(SelectInto),
16394 Table(Table),
16395 Update(Update),
16396 Values(Values),
16397}
16398
16399#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16400pub enum RefAction {
16401 Cascade(Cascade),
16402 NoAction(NoAction),
16403 Restrict(Restrict),
16404 SetDefaultColumns(SetDefaultColumns),
16405 SetNullColumns(SetNullColumns),
16406}
16407
16408#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16409pub enum SchemaElement {
16410 CreateIndex(CreateIndex),
16411 CreateSequence(CreateSequence),
16412 CreateTable(CreateTable),
16413 CreateTrigger(CreateTrigger),
16414 CreateView(CreateView),
16415 Grant(Grant),
16416}
16417
16418#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16419pub enum SelectVariant {
16420 CompoundSelect(CompoundSelect),
16421 ParenSelect(ParenSelect),
16422 Select(Select),
16423 SelectInto(SelectInto),
16424 Table(Table),
16425 Values(Values),
16426}
16427
16428#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16429pub enum SetColumn {
16430 SetMultipleColumns(SetMultipleColumns),
16431 SetSingleColumn(SetSingleColumn),
16432}
16433
16434#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16435pub enum Stmt {
16436 AlterAggregate(AlterAggregate),
16437 AlterCollation(AlterCollation),
16438 AlterConversion(AlterConversion),
16439 AlterDatabase(AlterDatabase),
16440 AlterDefaultPrivileges(AlterDefaultPrivileges),
16441 AlterDomain(AlterDomain),
16442 AlterEventTrigger(AlterEventTrigger),
16443 AlterExtension(AlterExtension),
16444 AlterForeignDataWrapper(AlterForeignDataWrapper),
16445 AlterForeignTable(AlterForeignTable),
16446 AlterFunction(AlterFunction),
16447 AlterGroup(AlterGroup),
16448 AlterIndex(AlterIndex),
16449 AlterLanguage(AlterLanguage),
16450 AlterLargeObject(AlterLargeObject),
16451 AlterMaterializedView(AlterMaterializedView),
16452 AlterOperator(AlterOperator),
16453 AlterOperatorClass(AlterOperatorClass),
16454 AlterOperatorFamily(AlterOperatorFamily),
16455 AlterPolicy(AlterPolicy),
16456 AlterProcedure(AlterProcedure),
16457 AlterPublication(AlterPublication),
16458 AlterRole(AlterRole),
16459 AlterRoutine(AlterRoutine),
16460 AlterRule(AlterRule),
16461 AlterSchema(AlterSchema),
16462 AlterSequence(AlterSequence),
16463 AlterServer(AlterServer),
16464 AlterStatistics(AlterStatistics),
16465 AlterSubscription(AlterSubscription),
16466 AlterSystem(AlterSystem),
16467 AlterTable(AlterTable),
16468 AlterTablespace(AlterTablespace),
16469 AlterTextSearchConfiguration(AlterTextSearchConfiguration),
16470 AlterTextSearchDictionary(AlterTextSearchDictionary),
16471 AlterTextSearchParser(AlterTextSearchParser),
16472 AlterTextSearchTemplate(AlterTextSearchTemplate),
16473 AlterTrigger(AlterTrigger),
16474 AlterType(AlterType),
16475 AlterUser(AlterUser),
16476 AlterUserMapping(AlterUserMapping),
16477 AlterView(AlterView),
16478 Analyze(Analyze),
16479 Begin(Begin),
16480 Call(Call),
16481 Checkpoint(Checkpoint),
16482 Close(Close),
16483 Cluster(Cluster),
16484 CommentOn(CommentOn),
16485 Commit(Commit),
16486 Copy(Copy),
16487 CreateAccessMethod(CreateAccessMethod),
16488 CreateAggregate(CreateAggregate),
16489 CreateCast(CreateCast),
16490 CreateCollation(CreateCollation),
16491 CreateConversion(CreateConversion),
16492 CreateDatabase(CreateDatabase),
16493 CreateDomain(CreateDomain),
16494 CreateEventTrigger(CreateEventTrigger),
16495 CreateExtension(CreateExtension),
16496 CreateForeignDataWrapper(CreateForeignDataWrapper),
16497 CreateForeignTable(CreateForeignTable),
16498 CreateFunction(CreateFunction),
16499 CreateGroup(CreateGroup),
16500 CreateIndex(CreateIndex),
16501 CreateLanguage(CreateLanguage),
16502 CreateMaterializedView(CreateMaterializedView),
16503 CreateOperator(CreateOperator),
16504 CreateOperatorClass(CreateOperatorClass),
16505 CreateOperatorFamily(CreateOperatorFamily),
16506 CreatePolicy(CreatePolicy),
16507 CreateProcedure(CreateProcedure),
16508 CreatePublication(CreatePublication),
16509 CreateRole(CreateRole),
16510 CreateRule(CreateRule),
16511 CreateSchema(CreateSchema),
16512 CreateSequence(CreateSequence),
16513 CreateServer(CreateServer),
16514 CreateStatistics(CreateStatistics),
16515 CreateSubscription(CreateSubscription),
16516 CreateTable(CreateTable),
16517 CreateTableAs(CreateTableAs),
16518 CreateTablespace(CreateTablespace),
16519 CreateTextSearchConfiguration(CreateTextSearchConfiguration),
16520 CreateTextSearchDictionary(CreateTextSearchDictionary),
16521 CreateTextSearchParser(CreateTextSearchParser),
16522 CreateTextSearchTemplate(CreateTextSearchTemplate),
16523 CreateTransform(CreateTransform),
16524 CreateTrigger(CreateTrigger),
16525 CreateType(CreateType),
16526 CreateUser(CreateUser),
16527 CreateUserMapping(CreateUserMapping),
16528 CreateView(CreateView),
16529 Deallocate(Deallocate),
16530 Declare(Declare),
16531 Delete(Delete),
16532 Discard(Discard),
16533 Do(Do),
16534 DropAccessMethod(DropAccessMethod),
16535 DropAggregate(DropAggregate),
16536 DropCast(DropCast),
16537 DropCollation(DropCollation),
16538 DropConversion(DropConversion),
16539 DropDatabase(DropDatabase),
16540 DropDomain(DropDomain),
16541 DropEventTrigger(DropEventTrigger),
16542 DropExtension(DropExtension),
16543 DropForeignDataWrapper(DropForeignDataWrapper),
16544 DropForeignTable(DropForeignTable),
16545 DropFunction(DropFunction),
16546 DropGroup(DropGroup),
16547 DropIndex(DropIndex),
16548 DropLanguage(DropLanguage),
16549 DropMaterializedView(DropMaterializedView),
16550 DropOperator(DropOperator),
16551 DropOperatorClass(DropOperatorClass),
16552 DropOperatorFamily(DropOperatorFamily),
16553 DropOwned(DropOwned),
16554 DropPolicy(DropPolicy),
16555 DropProcedure(DropProcedure),
16556 DropPublication(DropPublication),
16557 DropRole(DropRole),
16558 DropRoutine(DropRoutine),
16559 DropRule(DropRule),
16560 DropSchema(DropSchema),
16561 DropSequence(DropSequence),
16562 DropServer(DropServer),
16563 DropStatistics(DropStatistics),
16564 DropSubscription(DropSubscription),
16565 DropTable(DropTable),
16566 DropTablespace(DropTablespace),
16567 DropTextSearchConfig(DropTextSearchConfig),
16568 DropTextSearchDict(DropTextSearchDict),
16569 DropTextSearchParser(DropTextSearchParser),
16570 DropTextSearchTemplate(DropTextSearchTemplate),
16571 DropTransform(DropTransform),
16572 DropTrigger(DropTrigger),
16573 DropType(DropType),
16574 DropUser(DropUser),
16575 DropUserMapping(DropUserMapping),
16576 DropView(DropView),
16577 Execute(Execute),
16578 Explain(Explain),
16579 Fetch(Fetch),
16580 Grant(Grant),
16581 ImportForeignSchema(ImportForeignSchema),
16582 Insert(Insert),
16583 Listen(Listen),
16584 Load(Load),
16585 Lock(Lock),
16586 Merge(Merge),
16587 Move(Move),
16588 Notify(Notify),
16589 ParenSelect(ParenSelect),
16590 Prepare(Prepare),
16591 PrepareTransaction(PrepareTransaction),
16592 Reassign(Reassign),
16593 Refresh(Refresh),
16594 Reindex(Reindex),
16595 ReleaseSavepoint(ReleaseSavepoint),
16596 Reset(Reset),
16597 ResetSessionAuth(ResetSessionAuth),
16598 Revoke(Revoke),
16599 Rollback(Rollback),
16600 Savepoint(Savepoint),
16601 SecurityLabel(SecurityLabel),
16602 Select(Select),
16603 SelectInto(SelectInto),
16604 Set(Set),
16605 SetConstraints(SetConstraints),
16606 SetRole(SetRole),
16607 SetSessionAuth(SetSessionAuth),
16608 SetTransaction(SetTransaction),
16609 Show(Show),
16610 Table(Table),
16611 Truncate(Truncate),
16612 Unlisten(Unlisten),
16613 Update(Update),
16614 Vacuum(Vacuum),
16615 Values(Values),
16616}
16617
16618#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16619pub enum TableArg {
16620 Column(Column),
16621 LikeClause(LikeClause),
16622 TableConstraint(TableConstraint),
16623}
16624
16625#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16626pub enum TableConstraint {
16627 CheckConstraint(CheckConstraint),
16628 ExcludeConstraint(ExcludeConstraint),
16629 ForeignKeyConstraint(ForeignKeyConstraint),
16630 PrimaryKeyConstraint(PrimaryKeyConstraint),
16631 UniqueConstraint(UniqueConstraint),
16632}
16633
16634#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16635pub enum Timezone {
16636 WithTimezone(WithTimezone),
16637 WithoutTimezone(WithoutTimezone),
16638}
16639
16640#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16641pub enum TransactionMode {
16642 Deferrable(Deferrable),
16643 NotDeferrable(NotDeferrable),
16644 ReadCommitted(ReadCommitted),
16645 ReadOnly(ReadOnly),
16646 ReadUncommitted(ReadUncommitted),
16647 ReadWrite(ReadWrite),
16648 RepeatableRead(RepeatableRead),
16649 Serializable(Serializable),
16650}
16651
16652#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16653pub enum Type {
16654 ArrayType(ArrayType),
16655 BitType(BitType),
16656 CharType(CharType),
16657 DoubleType(DoubleType),
16658 ExprType(ExprType),
16659 IntervalType(IntervalType),
16660 PathType(PathType),
16661 PercentType(PercentType),
16662 TimeType(TimeType),
16663}
16664
16665#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16666pub enum WithQuery {
16667 CompoundSelect(CompoundSelect),
16668 Delete(Delete),
16669 Insert(Insert),
16670 Merge(Merge),
16671 ParenSelect(ParenSelect),
16672 Select(Select),
16673 Table(Table),
16674 Update(Update),
16675 Values(Values),
16676}
16677impl AstNode for AddColumn {
16678 #[inline]
16679 fn can_cast(kind: SyntaxKind) -> bool {
16680 kind == SyntaxKind::ADD_COLUMN
16681 }
16682 #[inline]
16683 fn cast(syntax: SyntaxNode) -> Option<Self> {
16684 if Self::can_cast(syntax.kind()) {
16685 Some(Self { syntax })
16686 } else {
16687 None
16688 }
16689 }
16690 #[inline]
16691 fn syntax(&self) -> &SyntaxNode {
16692 &self.syntax
16693 }
16694}
16695impl AstNode for AddConstraint {
16696 #[inline]
16697 fn can_cast(kind: SyntaxKind) -> bool {
16698 kind == SyntaxKind::ADD_CONSTRAINT
16699 }
16700 #[inline]
16701 fn cast(syntax: SyntaxNode) -> Option<Self> {
16702 if Self::can_cast(syntax.kind()) {
16703 Some(Self { syntax })
16704 } else {
16705 None
16706 }
16707 }
16708 #[inline]
16709 fn syntax(&self) -> &SyntaxNode {
16710 &self.syntax
16711 }
16712}
16713impl AstNode for AddGenerated {
16714 #[inline]
16715 fn can_cast(kind: SyntaxKind) -> bool {
16716 kind == SyntaxKind::ADD_GENERATED
16717 }
16718 #[inline]
16719 fn cast(syntax: SyntaxNode) -> Option<Self> {
16720 if Self::can_cast(syntax.kind()) {
16721 Some(Self { syntax })
16722 } else {
16723 None
16724 }
16725 }
16726 #[inline]
16727 fn syntax(&self) -> &SyntaxNode {
16728 &self.syntax
16729 }
16730}
16731impl AstNode for AddOpClassOptions {
16732 #[inline]
16733 fn can_cast(kind: SyntaxKind) -> bool {
16734 kind == SyntaxKind::ADD_OP_CLASS_OPTIONS
16735 }
16736 #[inline]
16737 fn cast(syntax: SyntaxNode) -> Option<Self> {
16738 if Self::can_cast(syntax.kind()) {
16739 Some(Self { syntax })
16740 } else {
16741 None
16742 }
16743 }
16744 #[inline]
16745 fn syntax(&self) -> &SyntaxNode {
16746 &self.syntax
16747 }
16748}
16749impl AstNode for Aggregate {
16750 #[inline]
16751 fn can_cast(kind: SyntaxKind) -> bool {
16752 kind == SyntaxKind::AGGREGATE
16753 }
16754 #[inline]
16755 fn cast(syntax: SyntaxNode) -> Option<Self> {
16756 if Self::can_cast(syntax.kind()) {
16757 Some(Self { syntax })
16758 } else {
16759 None
16760 }
16761 }
16762 #[inline]
16763 fn syntax(&self) -> &SyntaxNode {
16764 &self.syntax
16765 }
16766}
16767impl AstNode for Alias {
16768 #[inline]
16769 fn can_cast(kind: SyntaxKind) -> bool {
16770 kind == SyntaxKind::ALIAS
16771 }
16772 #[inline]
16773 fn cast(syntax: SyntaxNode) -> Option<Self> {
16774 if Self::can_cast(syntax.kind()) {
16775 Some(Self { syntax })
16776 } else {
16777 None
16778 }
16779 }
16780 #[inline]
16781 fn syntax(&self) -> &SyntaxNode {
16782 &self.syntax
16783 }
16784}
16785impl AstNode for AllFn {
16786 #[inline]
16787 fn can_cast(kind: SyntaxKind) -> bool {
16788 kind == SyntaxKind::ALL_FN
16789 }
16790 #[inline]
16791 fn cast(syntax: SyntaxNode) -> Option<Self> {
16792 if Self::can_cast(syntax.kind()) {
16793 Some(Self { syntax })
16794 } else {
16795 None
16796 }
16797 }
16798 #[inline]
16799 fn syntax(&self) -> &SyntaxNode {
16800 &self.syntax
16801 }
16802}
16803impl AstNode for AlterAggregate {
16804 #[inline]
16805 fn can_cast(kind: SyntaxKind) -> bool {
16806 kind == SyntaxKind::ALTER_AGGREGATE
16807 }
16808 #[inline]
16809 fn cast(syntax: SyntaxNode) -> Option<Self> {
16810 if Self::can_cast(syntax.kind()) {
16811 Some(Self { syntax })
16812 } else {
16813 None
16814 }
16815 }
16816 #[inline]
16817 fn syntax(&self) -> &SyntaxNode {
16818 &self.syntax
16819 }
16820}
16821impl AstNode for AlterCollation {
16822 #[inline]
16823 fn can_cast(kind: SyntaxKind) -> bool {
16824 kind == SyntaxKind::ALTER_COLLATION
16825 }
16826 #[inline]
16827 fn cast(syntax: SyntaxNode) -> Option<Self> {
16828 if Self::can_cast(syntax.kind()) {
16829 Some(Self { syntax })
16830 } else {
16831 None
16832 }
16833 }
16834 #[inline]
16835 fn syntax(&self) -> &SyntaxNode {
16836 &self.syntax
16837 }
16838}
16839impl AstNode for AlterColumn {
16840 #[inline]
16841 fn can_cast(kind: SyntaxKind) -> bool {
16842 kind == SyntaxKind::ALTER_COLUMN
16843 }
16844 #[inline]
16845 fn cast(syntax: SyntaxNode) -> Option<Self> {
16846 if Self::can_cast(syntax.kind()) {
16847 Some(Self { syntax })
16848 } else {
16849 None
16850 }
16851 }
16852 #[inline]
16853 fn syntax(&self) -> &SyntaxNode {
16854 &self.syntax
16855 }
16856}
16857impl AstNode for AlterConstraint {
16858 #[inline]
16859 fn can_cast(kind: SyntaxKind) -> bool {
16860 kind == SyntaxKind::ALTER_CONSTRAINT
16861 }
16862 #[inline]
16863 fn cast(syntax: SyntaxNode) -> Option<Self> {
16864 if Self::can_cast(syntax.kind()) {
16865 Some(Self { syntax })
16866 } else {
16867 None
16868 }
16869 }
16870 #[inline]
16871 fn syntax(&self) -> &SyntaxNode {
16872 &self.syntax
16873 }
16874}
16875impl AstNode for AlterConversion {
16876 #[inline]
16877 fn can_cast(kind: SyntaxKind) -> bool {
16878 kind == SyntaxKind::ALTER_CONVERSION
16879 }
16880 #[inline]
16881 fn cast(syntax: SyntaxNode) -> Option<Self> {
16882 if Self::can_cast(syntax.kind()) {
16883 Some(Self { syntax })
16884 } else {
16885 None
16886 }
16887 }
16888 #[inline]
16889 fn syntax(&self) -> &SyntaxNode {
16890 &self.syntax
16891 }
16892}
16893impl AstNode for AlterDatabase {
16894 #[inline]
16895 fn can_cast(kind: SyntaxKind) -> bool {
16896 kind == SyntaxKind::ALTER_DATABASE
16897 }
16898 #[inline]
16899 fn cast(syntax: SyntaxNode) -> Option<Self> {
16900 if Self::can_cast(syntax.kind()) {
16901 Some(Self { syntax })
16902 } else {
16903 None
16904 }
16905 }
16906 #[inline]
16907 fn syntax(&self) -> &SyntaxNode {
16908 &self.syntax
16909 }
16910}
16911impl AstNode for AlterDefaultPrivileges {
16912 #[inline]
16913 fn can_cast(kind: SyntaxKind) -> bool {
16914 kind == SyntaxKind::ALTER_DEFAULT_PRIVILEGES
16915 }
16916 #[inline]
16917 fn cast(syntax: SyntaxNode) -> Option<Self> {
16918 if Self::can_cast(syntax.kind()) {
16919 Some(Self { syntax })
16920 } else {
16921 None
16922 }
16923 }
16924 #[inline]
16925 fn syntax(&self) -> &SyntaxNode {
16926 &self.syntax
16927 }
16928}
16929impl AstNode for AlterDomain {
16930 #[inline]
16931 fn can_cast(kind: SyntaxKind) -> bool {
16932 kind == SyntaxKind::ALTER_DOMAIN
16933 }
16934 #[inline]
16935 fn cast(syntax: SyntaxNode) -> Option<Self> {
16936 if Self::can_cast(syntax.kind()) {
16937 Some(Self { syntax })
16938 } else {
16939 None
16940 }
16941 }
16942 #[inline]
16943 fn syntax(&self) -> &SyntaxNode {
16944 &self.syntax
16945 }
16946}
16947impl AstNode for AlterEventTrigger {
16948 #[inline]
16949 fn can_cast(kind: SyntaxKind) -> bool {
16950 kind == SyntaxKind::ALTER_EVENT_TRIGGER
16951 }
16952 #[inline]
16953 fn cast(syntax: SyntaxNode) -> Option<Self> {
16954 if Self::can_cast(syntax.kind()) {
16955 Some(Self { syntax })
16956 } else {
16957 None
16958 }
16959 }
16960 #[inline]
16961 fn syntax(&self) -> &SyntaxNode {
16962 &self.syntax
16963 }
16964}
16965impl AstNode for AlterExtension {
16966 #[inline]
16967 fn can_cast(kind: SyntaxKind) -> bool {
16968 kind == SyntaxKind::ALTER_EXTENSION
16969 }
16970 #[inline]
16971 fn cast(syntax: SyntaxNode) -> Option<Self> {
16972 if Self::can_cast(syntax.kind()) {
16973 Some(Self { syntax })
16974 } else {
16975 None
16976 }
16977 }
16978 #[inline]
16979 fn syntax(&self) -> &SyntaxNode {
16980 &self.syntax
16981 }
16982}
16983impl AstNode for AlterForeignDataWrapper {
16984 #[inline]
16985 fn can_cast(kind: SyntaxKind) -> bool {
16986 kind == SyntaxKind::ALTER_FOREIGN_DATA_WRAPPER
16987 }
16988 #[inline]
16989 fn cast(syntax: SyntaxNode) -> Option<Self> {
16990 if Self::can_cast(syntax.kind()) {
16991 Some(Self { syntax })
16992 } else {
16993 None
16994 }
16995 }
16996 #[inline]
16997 fn syntax(&self) -> &SyntaxNode {
16998 &self.syntax
16999 }
17000}
17001impl AstNode for AlterForeignTable {
17002 #[inline]
17003 fn can_cast(kind: SyntaxKind) -> bool {
17004 kind == SyntaxKind::ALTER_FOREIGN_TABLE
17005 }
17006 #[inline]
17007 fn cast(syntax: SyntaxNode) -> Option<Self> {
17008 if Self::can_cast(syntax.kind()) {
17009 Some(Self { syntax })
17010 } else {
17011 None
17012 }
17013 }
17014 #[inline]
17015 fn syntax(&self) -> &SyntaxNode {
17016 &self.syntax
17017 }
17018}
17019impl AstNode for AlterFunction {
17020 #[inline]
17021 fn can_cast(kind: SyntaxKind) -> bool {
17022 kind == SyntaxKind::ALTER_FUNCTION
17023 }
17024 #[inline]
17025 fn cast(syntax: SyntaxNode) -> Option<Self> {
17026 if Self::can_cast(syntax.kind()) {
17027 Some(Self { syntax })
17028 } else {
17029 None
17030 }
17031 }
17032 #[inline]
17033 fn syntax(&self) -> &SyntaxNode {
17034 &self.syntax
17035 }
17036}
17037impl AstNode for AlterGroup {
17038 #[inline]
17039 fn can_cast(kind: SyntaxKind) -> bool {
17040 kind == SyntaxKind::ALTER_GROUP
17041 }
17042 #[inline]
17043 fn cast(syntax: SyntaxNode) -> Option<Self> {
17044 if Self::can_cast(syntax.kind()) {
17045 Some(Self { syntax })
17046 } else {
17047 None
17048 }
17049 }
17050 #[inline]
17051 fn syntax(&self) -> &SyntaxNode {
17052 &self.syntax
17053 }
17054}
17055impl AstNode for AlterIndex {
17056 #[inline]
17057 fn can_cast(kind: SyntaxKind) -> bool {
17058 kind == SyntaxKind::ALTER_INDEX
17059 }
17060 #[inline]
17061 fn cast(syntax: SyntaxNode) -> Option<Self> {
17062 if Self::can_cast(syntax.kind()) {
17063 Some(Self { syntax })
17064 } else {
17065 None
17066 }
17067 }
17068 #[inline]
17069 fn syntax(&self) -> &SyntaxNode {
17070 &self.syntax
17071 }
17072}
17073impl AstNode for AlterLanguage {
17074 #[inline]
17075 fn can_cast(kind: SyntaxKind) -> bool {
17076 kind == SyntaxKind::ALTER_LANGUAGE
17077 }
17078 #[inline]
17079 fn cast(syntax: SyntaxNode) -> Option<Self> {
17080 if Self::can_cast(syntax.kind()) {
17081 Some(Self { syntax })
17082 } else {
17083 None
17084 }
17085 }
17086 #[inline]
17087 fn syntax(&self) -> &SyntaxNode {
17088 &self.syntax
17089 }
17090}
17091impl AstNode for AlterLargeObject {
17092 #[inline]
17093 fn can_cast(kind: SyntaxKind) -> bool {
17094 kind == SyntaxKind::ALTER_LARGE_OBJECT
17095 }
17096 #[inline]
17097 fn cast(syntax: SyntaxNode) -> Option<Self> {
17098 if Self::can_cast(syntax.kind()) {
17099 Some(Self { syntax })
17100 } else {
17101 None
17102 }
17103 }
17104 #[inline]
17105 fn syntax(&self) -> &SyntaxNode {
17106 &self.syntax
17107 }
17108}
17109impl AstNode for AlterMaterializedView {
17110 #[inline]
17111 fn can_cast(kind: SyntaxKind) -> bool {
17112 kind == SyntaxKind::ALTER_MATERIALIZED_VIEW
17113 }
17114 #[inline]
17115 fn cast(syntax: SyntaxNode) -> Option<Self> {
17116 if Self::can_cast(syntax.kind()) {
17117 Some(Self { syntax })
17118 } else {
17119 None
17120 }
17121 }
17122 #[inline]
17123 fn syntax(&self) -> &SyntaxNode {
17124 &self.syntax
17125 }
17126}
17127impl AstNode for AlterOperator {
17128 #[inline]
17129 fn can_cast(kind: SyntaxKind) -> bool {
17130 kind == SyntaxKind::ALTER_OPERATOR
17131 }
17132 #[inline]
17133 fn cast(syntax: SyntaxNode) -> Option<Self> {
17134 if Self::can_cast(syntax.kind()) {
17135 Some(Self { syntax })
17136 } else {
17137 None
17138 }
17139 }
17140 #[inline]
17141 fn syntax(&self) -> &SyntaxNode {
17142 &self.syntax
17143 }
17144}
17145impl AstNode for AlterOperatorClass {
17146 #[inline]
17147 fn can_cast(kind: SyntaxKind) -> bool {
17148 kind == SyntaxKind::ALTER_OPERATOR_CLASS
17149 }
17150 #[inline]
17151 fn cast(syntax: SyntaxNode) -> Option<Self> {
17152 if Self::can_cast(syntax.kind()) {
17153 Some(Self { syntax })
17154 } else {
17155 None
17156 }
17157 }
17158 #[inline]
17159 fn syntax(&self) -> &SyntaxNode {
17160 &self.syntax
17161 }
17162}
17163impl AstNode for AlterOperatorFamily {
17164 #[inline]
17165 fn can_cast(kind: SyntaxKind) -> bool {
17166 kind == SyntaxKind::ALTER_OPERATOR_FAMILY
17167 }
17168 #[inline]
17169 fn cast(syntax: SyntaxNode) -> Option<Self> {
17170 if Self::can_cast(syntax.kind()) {
17171 Some(Self { syntax })
17172 } else {
17173 None
17174 }
17175 }
17176 #[inline]
17177 fn syntax(&self) -> &SyntaxNode {
17178 &self.syntax
17179 }
17180}
17181impl AstNode for AlterOption {
17182 #[inline]
17183 fn can_cast(kind: SyntaxKind) -> bool {
17184 kind == SyntaxKind::ALTER_OPTION
17185 }
17186 #[inline]
17187 fn cast(syntax: SyntaxNode) -> Option<Self> {
17188 if Self::can_cast(syntax.kind()) {
17189 Some(Self { syntax })
17190 } else {
17191 None
17192 }
17193 }
17194 #[inline]
17195 fn syntax(&self) -> &SyntaxNode {
17196 &self.syntax
17197 }
17198}
17199impl AstNode for AlterOptionList {
17200 #[inline]
17201 fn can_cast(kind: SyntaxKind) -> bool {
17202 kind == SyntaxKind::ALTER_OPTION_LIST
17203 }
17204 #[inline]
17205 fn cast(syntax: SyntaxNode) -> Option<Self> {
17206 if Self::can_cast(syntax.kind()) {
17207 Some(Self { syntax })
17208 } else {
17209 None
17210 }
17211 }
17212 #[inline]
17213 fn syntax(&self) -> &SyntaxNode {
17214 &self.syntax
17215 }
17216}
17217impl AstNode for AlterPolicy {
17218 #[inline]
17219 fn can_cast(kind: SyntaxKind) -> bool {
17220 kind == SyntaxKind::ALTER_POLICY
17221 }
17222 #[inline]
17223 fn cast(syntax: SyntaxNode) -> Option<Self> {
17224 if Self::can_cast(syntax.kind()) {
17225 Some(Self { syntax })
17226 } else {
17227 None
17228 }
17229 }
17230 #[inline]
17231 fn syntax(&self) -> &SyntaxNode {
17232 &self.syntax
17233 }
17234}
17235impl AstNode for AlterProcedure {
17236 #[inline]
17237 fn can_cast(kind: SyntaxKind) -> bool {
17238 kind == SyntaxKind::ALTER_PROCEDURE
17239 }
17240 #[inline]
17241 fn cast(syntax: SyntaxNode) -> Option<Self> {
17242 if Self::can_cast(syntax.kind()) {
17243 Some(Self { syntax })
17244 } else {
17245 None
17246 }
17247 }
17248 #[inline]
17249 fn syntax(&self) -> &SyntaxNode {
17250 &self.syntax
17251 }
17252}
17253impl AstNode for AlterPublication {
17254 #[inline]
17255 fn can_cast(kind: SyntaxKind) -> bool {
17256 kind == SyntaxKind::ALTER_PUBLICATION
17257 }
17258 #[inline]
17259 fn cast(syntax: SyntaxNode) -> Option<Self> {
17260 if Self::can_cast(syntax.kind()) {
17261 Some(Self { syntax })
17262 } else {
17263 None
17264 }
17265 }
17266 #[inline]
17267 fn syntax(&self) -> &SyntaxNode {
17268 &self.syntax
17269 }
17270}
17271impl AstNode for AlterRole {
17272 #[inline]
17273 fn can_cast(kind: SyntaxKind) -> bool {
17274 kind == SyntaxKind::ALTER_ROLE
17275 }
17276 #[inline]
17277 fn cast(syntax: SyntaxNode) -> Option<Self> {
17278 if Self::can_cast(syntax.kind()) {
17279 Some(Self { syntax })
17280 } else {
17281 None
17282 }
17283 }
17284 #[inline]
17285 fn syntax(&self) -> &SyntaxNode {
17286 &self.syntax
17287 }
17288}
17289impl AstNode for AlterRoutine {
17290 #[inline]
17291 fn can_cast(kind: SyntaxKind) -> bool {
17292 kind == SyntaxKind::ALTER_ROUTINE
17293 }
17294 #[inline]
17295 fn cast(syntax: SyntaxNode) -> Option<Self> {
17296 if Self::can_cast(syntax.kind()) {
17297 Some(Self { syntax })
17298 } else {
17299 None
17300 }
17301 }
17302 #[inline]
17303 fn syntax(&self) -> &SyntaxNode {
17304 &self.syntax
17305 }
17306}
17307impl AstNode for AlterRule {
17308 #[inline]
17309 fn can_cast(kind: SyntaxKind) -> bool {
17310 kind == SyntaxKind::ALTER_RULE
17311 }
17312 #[inline]
17313 fn cast(syntax: SyntaxNode) -> Option<Self> {
17314 if Self::can_cast(syntax.kind()) {
17315 Some(Self { syntax })
17316 } else {
17317 None
17318 }
17319 }
17320 #[inline]
17321 fn syntax(&self) -> &SyntaxNode {
17322 &self.syntax
17323 }
17324}
17325impl AstNode for AlterSchema {
17326 #[inline]
17327 fn can_cast(kind: SyntaxKind) -> bool {
17328 kind == SyntaxKind::ALTER_SCHEMA
17329 }
17330 #[inline]
17331 fn cast(syntax: SyntaxNode) -> Option<Self> {
17332 if Self::can_cast(syntax.kind()) {
17333 Some(Self { syntax })
17334 } else {
17335 None
17336 }
17337 }
17338 #[inline]
17339 fn syntax(&self) -> &SyntaxNode {
17340 &self.syntax
17341 }
17342}
17343impl AstNode for AlterSequence {
17344 #[inline]
17345 fn can_cast(kind: SyntaxKind) -> bool {
17346 kind == SyntaxKind::ALTER_SEQUENCE
17347 }
17348 #[inline]
17349 fn cast(syntax: SyntaxNode) -> Option<Self> {
17350 if Self::can_cast(syntax.kind()) {
17351 Some(Self { syntax })
17352 } else {
17353 None
17354 }
17355 }
17356 #[inline]
17357 fn syntax(&self) -> &SyntaxNode {
17358 &self.syntax
17359 }
17360}
17361impl AstNode for AlterServer {
17362 #[inline]
17363 fn can_cast(kind: SyntaxKind) -> bool {
17364 kind == SyntaxKind::ALTER_SERVER
17365 }
17366 #[inline]
17367 fn cast(syntax: SyntaxNode) -> Option<Self> {
17368 if Self::can_cast(syntax.kind()) {
17369 Some(Self { syntax })
17370 } else {
17371 None
17372 }
17373 }
17374 #[inline]
17375 fn syntax(&self) -> &SyntaxNode {
17376 &self.syntax
17377 }
17378}
17379impl AstNode for AlterSetStatistics {
17380 #[inline]
17381 fn can_cast(kind: SyntaxKind) -> bool {
17382 kind == SyntaxKind::ALTER_SET_STATISTICS
17383 }
17384 #[inline]
17385 fn cast(syntax: SyntaxNode) -> Option<Self> {
17386 if Self::can_cast(syntax.kind()) {
17387 Some(Self { syntax })
17388 } else {
17389 None
17390 }
17391 }
17392 #[inline]
17393 fn syntax(&self) -> &SyntaxNode {
17394 &self.syntax
17395 }
17396}
17397impl AstNode for AlterStatistics {
17398 #[inline]
17399 fn can_cast(kind: SyntaxKind) -> bool {
17400 kind == SyntaxKind::ALTER_STATISTICS
17401 }
17402 #[inline]
17403 fn cast(syntax: SyntaxNode) -> Option<Self> {
17404 if Self::can_cast(syntax.kind()) {
17405 Some(Self { syntax })
17406 } else {
17407 None
17408 }
17409 }
17410 #[inline]
17411 fn syntax(&self) -> &SyntaxNode {
17412 &self.syntax
17413 }
17414}
17415impl AstNode for AlterSubscription {
17416 #[inline]
17417 fn can_cast(kind: SyntaxKind) -> bool {
17418 kind == SyntaxKind::ALTER_SUBSCRIPTION
17419 }
17420 #[inline]
17421 fn cast(syntax: SyntaxNode) -> Option<Self> {
17422 if Self::can_cast(syntax.kind()) {
17423 Some(Self { syntax })
17424 } else {
17425 None
17426 }
17427 }
17428 #[inline]
17429 fn syntax(&self) -> &SyntaxNode {
17430 &self.syntax
17431 }
17432}
17433impl AstNode for AlterSystem {
17434 #[inline]
17435 fn can_cast(kind: SyntaxKind) -> bool {
17436 kind == SyntaxKind::ALTER_SYSTEM
17437 }
17438 #[inline]
17439 fn cast(syntax: SyntaxNode) -> Option<Self> {
17440 if Self::can_cast(syntax.kind()) {
17441 Some(Self { syntax })
17442 } else {
17443 None
17444 }
17445 }
17446 #[inline]
17447 fn syntax(&self) -> &SyntaxNode {
17448 &self.syntax
17449 }
17450}
17451impl AstNode for AlterTable {
17452 #[inline]
17453 fn can_cast(kind: SyntaxKind) -> bool {
17454 kind == SyntaxKind::ALTER_TABLE
17455 }
17456 #[inline]
17457 fn cast(syntax: SyntaxNode) -> Option<Self> {
17458 if Self::can_cast(syntax.kind()) {
17459 Some(Self { syntax })
17460 } else {
17461 None
17462 }
17463 }
17464 #[inline]
17465 fn syntax(&self) -> &SyntaxNode {
17466 &self.syntax
17467 }
17468}
17469impl AstNode for AlterTablespace {
17470 #[inline]
17471 fn can_cast(kind: SyntaxKind) -> bool {
17472 kind == SyntaxKind::ALTER_TABLESPACE
17473 }
17474 #[inline]
17475 fn cast(syntax: SyntaxNode) -> Option<Self> {
17476 if Self::can_cast(syntax.kind()) {
17477 Some(Self { syntax })
17478 } else {
17479 None
17480 }
17481 }
17482 #[inline]
17483 fn syntax(&self) -> &SyntaxNode {
17484 &self.syntax
17485 }
17486}
17487impl AstNode for AlterTextSearchConfiguration {
17488 #[inline]
17489 fn can_cast(kind: SyntaxKind) -> bool {
17490 kind == SyntaxKind::ALTER_TEXT_SEARCH_CONFIGURATION
17491 }
17492 #[inline]
17493 fn cast(syntax: SyntaxNode) -> Option<Self> {
17494 if Self::can_cast(syntax.kind()) {
17495 Some(Self { syntax })
17496 } else {
17497 None
17498 }
17499 }
17500 #[inline]
17501 fn syntax(&self) -> &SyntaxNode {
17502 &self.syntax
17503 }
17504}
17505impl AstNode for AlterTextSearchDictionary {
17506 #[inline]
17507 fn can_cast(kind: SyntaxKind) -> bool {
17508 kind == SyntaxKind::ALTER_TEXT_SEARCH_DICTIONARY
17509 }
17510 #[inline]
17511 fn cast(syntax: SyntaxNode) -> Option<Self> {
17512 if Self::can_cast(syntax.kind()) {
17513 Some(Self { syntax })
17514 } else {
17515 None
17516 }
17517 }
17518 #[inline]
17519 fn syntax(&self) -> &SyntaxNode {
17520 &self.syntax
17521 }
17522}
17523impl AstNode for AlterTextSearchParser {
17524 #[inline]
17525 fn can_cast(kind: SyntaxKind) -> bool {
17526 kind == SyntaxKind::ALTER_TEXT_SEARCH_PARSER
17527 }
17528 #[inline]
17529 fn cast(syntax: SyntaxNode) -> Option<Self> {
17530 if Self::can_cast(syntax.kind()) {
17531 Some(Self { syntax })
17532 } else {
17533 None
17534 }
17535 }
17536 #[inline]
17537 fn syntax(&self) -> &SyntaxNode {
17538 &self.syntax
17539 }
17540}
17541impl AstNode for AlterTextSearchTemplate {
17542 #[inline]
17543 fn can_cast(kind: SyntaxKind) -> bool {
17544 kind == SyntaxKind::ALTER_TEXT_SEARCH_TEMPLATE
17545 }
17546 #[inline]
17547 fn cast(syntax: SyntaxNode) -> Option<Self> {
17548 if Self::can_cast(syntax.kind()) {
17549 Some(Self { syntax })
17550 } else {
17551 None
17552 }
17553 }
17554 #[inline]
17555 fn syntax(&self) -> &SyntaxNode {
17556 &self.syntax
17557 }
17558}
17559impl AstNode for AlterTrigger {
17560 #[inline]
17561 fn can_cast(kind: SyntaxKind) -> bool {
17562 kind == SyntaxKind::ALTER_TRIGGER
17563 }
17564 #[inline]
17565 fn cast(syntax: SyntaxNode) -> Option<Self> {
17566 if Self::can_cast(syntax.kind()) {
17567 Some(Self { syntax })
17568 } else {
17569 None
17570 }
17571 }
17572 #[inline]
17573 fn syntax(&self) -> &SyntaxNode {
17574 &self.syntax
17575 }
17576}
17577impl AstNode for AlterType {
17578 #[inline]
17579 fn can_cast(kind: SyntaxKind) -> bool {
17580 kind == SyntaxKind::ALTER_TYPE
17581 }
17582 #[inline]
17583 fn cast(syntax: SyntaxNode) -> Option<Self> {
17584 if Self::can_cast(syntax.kind()) {
17585 Some(Self { syntax })
17586 } else {
17587 None
17588 }
17589 }
17590 #[inline]
17591 fn syntax(&self) -> &SyntaxNode {
17592 &self.syntax
17593 }
17594}
17595impl AstNode for AlterUser {
17596 #[inline]
17597 fn can_cast(kind: SyntaxKind) -> bool {
17598 kind == SyntaxKind::ALTER_USER
17599 }
17600 #[inline]
17601 fn cast(syntax: SyntaxNode) -> Option<Self> {
17602 if Self::can_cast(syntax.kind()) {
17603 Some(Self { syntax })
17604 } else {
17605 None
17606 }
17607 }
17608 #[inline]
17609 fn syntax(&self) -> &SyntaxNode {
17610 &self.syntax
17611 }
17612}
17613impl AstNode for AlterUserMapping {
17614 #[inline]
17615 fn can_cast(kind: SyntaxKind) -> bool {
17616 kind == SyntaxKind::ALTER_USER_MAPPING
17617 }
17618 #[inline]
17619 fn cast(syntax: SyntaxNode) -> Option<Self> {
17620 if Self::can_cast(syntax.kind()) {
17621 Some(Self { syntax })
17622 } else {
17623 None
17624 }
17625 }
17626 #[inline]
17627 fn syntax(&self) -> &SyntaxNode {
17628 &self.syntax
17629 }
17630}
17631impl AstNode for AlterView {
17632 #[inline]
17633 fn can_cast(kind: SyntaxKind) -> bool {
17634 kind == SyntaxKind::ALTER_VIEW
17635 }
17636 #[inline]
17637 fn cast(syntax: SyntaxNode) -> Option<Self> {
17638 if Self::can_cast(syntax.kind()) {
17639 Some(Self { syntax })
17640 } else {
17641 None
17642 }
17643 }
17644 #[inline]
17645 fn syntax(&self) -> &SyntaxNode {
17646 &self.syntax
17647 }
17648}
17649impl AstNode for Analyze {
17650 #[inline]
17651 fn can_cast(kind: SyntaxKind) -> bool {
17652 kind == SyntaxKind::ANALYZE
17653 }
17654 #[inline]
17655 fn cast(syntax: SyntaxNode) -> Option<Self> {
17656 if Self::can_cast(syntax.kind()) {
17657 Some(Self { syntax })
17658 } else {
17659 None
17660 }
17661 }
17662 #[inline]
17663 fn syntax(&self) -> &SyntaxNode {
17664 &self.syntax
17665 }
17666}
17667impl AstNode for AnyFn {
17668 #[inline]
17669 fn can_cast(kind: SyntaxKind) -> bool {
17670 kind == SyntaxKind::ANY_FN
17671 }
17672 #[inline]
17673 fn cast(syntax: SyntaxNode) -> Option<Self> {
17674 if Self::can_cast(syntax.kind()) {
17675 Some(Self { syntax })
17676 } else {
17677 None
17678 }
17679 }
17680 #[inline]
17681 fn syntax(&self) -> &SyntaxNode {
17682 &self.syntax
17683 }
17684}
17685impl AstNode for Arg {
17686 #[inline]
17687 fn can_cast(kind: SyntaxKind) -> bool {
17688 kind == SyntaxKind::ARG
17689 }
17690 #[inline]
17691 fn cast(syntax: SyntaxNode) -> Option<Self> {
17692 if Self::can_cast(syntax.kind()) {
17693 Some(Self { syntax })
17694 } else {
17695 None
17696 }
17697 }
17698 #[inline]
17699 fn syntax(&self) -> &SyntaxNode {
17700 &self.syntax
17701 }
17702}
17703impl AstNode for ArgList {
17704 #[inline]
17705 fn can_cast(kind: SyntaxKind) -> bool {
17706 kind == SyntaxKind::ARG_LIST
17707 }
17708 #[inline]
17709 fn cast(syntax: SyntaxNode) -> Option<Self> {
17710 if Self::can_cast(syntax.kind()) {
17711 Some(Self { syntax })
17712 } else {
17713 None
17714 }
17715 }
17716 #[inline]
17717 fn syntax(&self) -> &SyntaxNode {
17718 &self.syntax
17719 }
17720}
17721impl AstNode for ArrayExpr {
17722 #[inline]
17723 fn can_cast(kind: SyntaxKind) -> bool {
17724 kind == SyntaxKind::ARRAY_EXPR
17725 }
17726 #[inline]
17727 fn cast(syntax: SyntaxNode) -> Option<Self> {
17728 if Self::can_cast(syntax.kind()) {
17729 Some(Self { syntax })
17730 } else {
17731 None
17732 }
17733 }
17734 #[inline]
17735 fn syntax(&self) -> &SyntaxNode {
17736 &self.syntax
17737 }
17738}
17739impl AstNode for ArrayType {
17740 #[inline]
17741 fn can_cast(kind: SyntaxKind) -> bool {
17742 kind == SyntaxKind::ARRAY_TYPE
17743 }
17744 #[inline]
17745 fn cast(syntax: SyntaxNode) -> Option<Self> {
17746 if Self::can_cast(syntax.kind()) {
17747 Some(Self { syntax })
17748 } else {
17749 None
17750 }
17751 }
17752 #[inline]
17753 fn syntax(&self) -> &SyntaxNode {
17754 &self.syntax
17755 }
17756}
17757impl AstNode for AsFuncOption {
17758 #[inline]
17759 fn can_cast(kind: SyntaxKind) -> bool {
17760 kind == SyntaxKind::AS_FUNC_OPTION
17761 }
17762 #[inline]
17763 fn cast(syntax: SyntaxNode) -> Option<Self> {
17764 if Self::can_cast(syntax.kind()) {
17765 Some(Self { syntax })
17766 } else {
17767 None
17768 }
17769 }
17770 #[inline]
17771 fn syntax(&self) -> &SyntaxNode {
17772 &self.syntax
17773 }
17774}
17775impl AstNode for AsName {
17776 #[inline]
17777 fn can_cast(kind: SyntaxKind) -> bool {
17778 kind == SyntaxKind::AS_NAME
17779 }
17780 #[inline]
17781 fn cast(syntax: SyntaxNode) -> Option<Self> {
17782 if Self::can_cast(syntax.kind()) {
17783 Some(Self { syntax })
17784 } else {
17785 None
17786 }
17787 }
17788 #[inline]
17789 fn syntax(&self) -> &SyntaxNode {
17790 &self.syntax
17791 }
17792}
17793impl AstNode for AtTimeZone {
17794 #[inline]
17795 fn can_cast(kind: SyntaxKind) -> bool {
17796 kind == SyntaxKind::AT_TIME_ZONE
17797 }
17798 #[inline]
17799 fn cast(syntax: SyntaxNode) -> Option<Self> {
17800 if Self::can_cast(syntax.kind()) {
17801 Some(Self { syntax })
17802 } else {
17803 None
17804 }
17805 }
17806 #[inline]
17807 fn syntax(&self) -> &SyntaxNode {
17808 &self.syntax
17809 }
17810}
17811impl AstNode for AttachPartition {
17812 #[inline]
17813 fn can_cast(kind: SyntaxKind) -> bool {
17814 kind == SyntaxKind::ATTACH_PARTITION
17815 }
17816 #[inline]
17817 fn cast(syntax: SyntaxNode) -> Option<Self> {
17818 if Self::can_cast(syntax.kind()) {
17819 Some(Self { syntax })
17820 } else {
17821 None
17822 }
17823 }
17824 #[inline]
17825 fn syntax(&self) -> &SyntaxNode {
17826 &self.syntax
17827 }
17828}
17829impl AstNode for AttributeList {
17830 #[inline]
17831 fn can_cast(kind: SyntaxKind) -> bool {
17832 kind == SyntaxKind::ATTRIBUTE_LIST
17833 }
17834 #[inline]
17835 fn cast(syntax: SyntaxNode) -> Option<Self> {
17836 if Self::can_cast(syntax.kind()) {
17837 Some(Self { syntax })
17838 } else {
17839 None
17840 }
17841 }
17842 #[inline]
17843 fn syntax(&self) -> &SyntaxNode {
17844 &self.syntax
17845 }
17846}
17847impl AstNode for AttributeOption {
17848 #[inline]
17849 fn can_cast(kind: SyntaxKind) -> bool {
17850 kind == SyntaxKind::ATTRIBUTE_OPTION
17851 }
17852 #[inline]
17853 fn cast(syntax: SyntaxNode) -> Option<Self> {
17854 if Self::can_cast(syntax.kind()) {
17855 Some(Self { syntax })
17856 } else {
17857 None
17858 }
17859 }
17860 #[inline]
17861 fn syntax(&self) -> &SyntaxNode {
17862 &self.syntax
17863 }
17864}
17865impl AstNode for AttributeValue {
17866 #[inline]
17867 fn can_cast(kind: SyntaxKind) -> bool {
17868 kind == SyntaxKind::ATTRIBUTE_VALUE
17869 }
17870 #[inline]
17871 fn cast(syntax: SyntaxNode) -> Option<Self> {
17872 if Self::can_cast(syntax.kind()) {
17873 Some(Self { syntax })
17874 } else {
17875 None
17876 }
17877 }
17878 #[inline]
17879 fn syntax(&self) -> &SyntaxNode {
17880 &self.syntax
17881 }
17882}
17883impl AstNode for Begin {
17884 #[inline]
17885 fn can_cast(kind: SyntaxKind) -> bool {
17886 kind == SyntaxKind::BEGIN
17887 }
17888 #[inline]
17889 fn cast(syntax: SyntaxNode) -> Option<Self> {
17890 if Self::can_cast(syntax.kind()) {
17891 Some(Self { syntax })
17892 } else {
17893 None
17894 }
17895 }
17896 #[inline]
17897 fn syntax(&self) -> &SyntaxNode {
17898 &self.syntax
17899 }
17900}
17901impl AstNode for BeginFuncOption {
17902 #[inline]
17903 fn can_cast(kind: SyntaxKind) -> bool {
17904 kind == SyntaxKind::BEGIN_FUNC_OPTION
17905 }
17906 #[inline]
17907 fn cast(syntax: SyntaxNode) -> Option<Self> {
17908 if Self::can_cast(syntax.kind()) {
17909 Some(Self { syntax })
17910 } else {
17911 None
17912 }
17913 }
17914 #[inline]
17915 fn syntax(&self) -> &SyntaxNode {
17916 &self.syntax
17917 }
17918}
17919impl AstNode for BetweenExpr {
17920 #[inline]
17921 fn can_cast(kind: SyntaxKind) -> bool {
17922 kind == SyntaxKind::BETWEEN_EXPR
17923 }
17924 #[inline]
17925 fn cast(syntax: SyntaxNode) -> Option<Self> {
17926 if Self::can_cast(syntax.kind()) {
17927 Some(Self { syntax })
17928 } else {
17929 None
17930 }
17931 }
17932 #[inline]
17933 fn syntax(&self) -> &SyntaxNode {
17934 &self.syntax
17935 }
17936}
17937impl AstNode for BinExpr {
17938 #[inline]
17939 fn can_cast(kind: SyntaxKind) -> bool {
17940 kind == SyntaxKind::BIN_EXPR
17941 }
17942 #[inline]
17943 fn cast(syntax: SyntaxNode) -> Option<Self> {
17944 if Self::can_cast(syntax.kind()) {
17945 Some(Self { syntax })
17946 } else {
17947 None
17948 }
17949 }
17950 #[inline]
17951 fn syntax(&self) -> &SyntaxNode {
17952 &self.syntax
17953 }
17954}
17955impl AstNode for BitType {
17956 #[inline]
17957 fn can_cast(kind: SyntaxKind) -> bool {
17958 kind == SyntaxKind::BIT_TYPE
17959 }
17960 #[inline]
17961 fn cast(syntax: SyntaxNode) -> Option<Self> {
17962 if Self::can_cast(syntax.kind()) {
17963 Some(Self { syntax })
17964 } else {
17965 None
17966 }
17967 }
17968 #[inline]
17969 fn syntax(&self) -> &SyntaxNode {
17970 &self.syntax
17971 }
17972}
17973impl AstNode for Call {
17974 #[inline]
17975 fn can_cast(kind: SyntaxKind) -> bool {
17976 kind == SyntaxKind::CALL
17977 }
17978 #[inline]
17979 fn cast(syntax: SyntaxNode) -> Option<Self> {
17980 if Self::can_cast(syntax.kind()) {
17981 Some(Self { syntax })
17982 } else {
17983 None
17984 }
17985 }
17986 #[inline]
17987 fn syntax(&self) -> &SyntaxNode {
17988 &self.syntax
17989 }
17990}
17991impl AstNode for CallExpr {
17992 #[inline]
17993 fn can_cast(kind: SyntaxKind) -> bool {
17994 kind == SyntaxKind::CALL_EXPR
17995 }
17996 #[inline]
17997 fn cast(syntax: SyntaxNode) -> Option<Self> {
17998 if Self::can_cast(syntax.kind()) {
17999 Some(Self { syntax })
18000 } else {
18001 None
18002 }
18003 }
18004 #[inline]
18005 fn syntax(&self) -> &SyntaxNode {
18006 &self.syntax
18007 }
18008}
18009impl AstNode for Cascade {
18010 #[inline]
18011 fn can_cast(kind: SyntaxKind) -> bool {
18012 kind == SyntaxKind::CASCADE
18013 }
18014 #[inline]
18015 fn cast(syntax: SyntaxNode) -> Option<Self> {
18016 if Self::can_cast(syntax.kind()) {
18017 Some(Self { syntax })
18018 } else {
18019 None
18020 }
18021 }
18022 #[inline]
18023 fn syntax(&self) -> &SyntaxNode {
18024 &self.syntax
18025 }
18026}
18027impl AstNode for CaseExpr {
18028 #[inline]
18029 fn can_cast(kind: SyntaxKind) -> bool {
18030 kind == SyntaxKind::CASE_EXPR
18031 }
18032 #[inline]
18033 fn cast(syntax: SyntaxNode) -> Option<Self> {
18034 if Self::can_cast(syntax.kind()) {
18035 Some(Self { syntax })
18036 } else {
18037 None
18038 }
18039 }
18040 #[inline]
18041 fn syntax(&self) -> &SyntaxNode {
18042 &self.syntax
18043 }
18044}
18045impl AstNode for CastExpr {
18046 #[inline]
18047 fn can_cast(kind: SyntaxKind) -> bool {
18048 kind == SyntaxKind::CAST_EXPR
18049 }
18050 #[inline]
18051 fn cast(syntax: SyntaxNode) -> Option<Self> {
18052 if Self::can_cast(syntax.kind()) {
18053 Some(Self { syntax })
18054 } else {
18055 None
18056 }
18057 }
18058 #[inline]
18059 fn syntax(&self) -> &SyntaxNode {
18060 &self.syntax
18061 }
18062}
18063impl AstNode for CastSig {
18064 #[inline]
18065 fn can_cast(kind: SyntaxKind) -> bool {
18066 kind == SyntaxKind::CAST_SIG
18067 }
18068 #[inline]
18069 fn cast(syntax: SyntaxNode) -> Option<Self> {
18070 if Self::can_cast(syntax.kind()) {
18071 Some(Self { syntax })
18072 } else {
18073 None
18074 }
18075 }
18076 #[inline]
18077 fn syntax(&self) -> &SyntaxNode {
18078 &self.syntax
18079 }
18080}
18081impl AstNode for CharType {
18082 #[inline]
18083 fn can_cast(kind: SyntaxKind) -> bool {
18084 kind == SyntaxKind::CHAR_TYPE
18085 }
18086 #[inline]
18087 fn cast(syntax: SyntaxNode) -> Option<Self> {
18088 if Self::can_cast(syntax.kind()) {
18089 Some(Self { syntax })
18090 } else {
18091 None
18092 }
18093 }
18094 #[inline]
18095 fn syntax(&self) -> &SyntaxNode {
18096 &self.syntax
18097 }
18098}
18099impl AstNode for CheckConstraint {
18100 #[inline]
18101 fn can_cast(kind: SyntaxKind) -> bool {
18102 kind == SyntaxKind::CHECK_CONSTRAINT
18103 }
18104 #[inline]
18105 fn cast(syntax: SyntaxNode) -> Option<Self> {
18106 if Self::can_cast(syntax.kind()) {
18107 Some(Self { syntax })
18108 } else {
18109 None
18110 }
18111 }
18112 #[inline]
18113 fn syntax(&self) -> &SyntaxNode {
18114 &self.syntax
18115 }
18116}
18117impl AstNode for Checkpoint {
18118 #[inline]
18119 fn can_cast(kind: SyntaxKind) -> bool {
18120 kind == SyntaxKind::CHECKPOINT
18121 }
18122 #[inline]
18123 fn cast(syntax: SyntaxNode) -> Option<Self> {
18124 if Self::can_cast(syntax.kind()) {
18125 Some(Self { syntax })
18126 } else {
18127 None
18128 }
18129 }
18130 #[inline]
18131 fn syntax(&self) -> &SyntaxNode {
18132 &self.syntax
18133 }
18134}
18135impl AstNode for Close {
18136 #[inline]
18137 fn can_cast(kind: SyntaxKind) -> bool {
18138 kind == SyntaxKind::CLOSE
18139 }
18140 #[inline]
18141 fn cast(syntax: SyntaxNode) -> Option<Self> {
18142 if Self::can_cast(syntax.kind()) {
18143 Some(Self { syntax })
18144 } else {
18145 None
18146 }
18147 }
18148 #[inline]
18149 fn syntax(&self) -> &SyntaxNode {
18150 &self.syntax
18151 }
18152}
18153impl AstNode for Cluster {
18154 #[inline]
18155 fn can_cast(kind: SyntaxKind) -> bool {
18156 kind == SyntaxKind::CLUSTER
18157 }
18158 #[inline]
18159 fn cast(syntax: SyntaxNode) -> Option<Self> {
18160 if Self::can_cast(syntax.kind()) {
18161 Some(Self { syntax })
18162 } else {
18163 None
18164 }
18165 }
18166 #[inline]
18167 fn syntax(&self) -> &SyntaxNode {
18168 &self.syntax
18169 }
18170}
18171impl AstNode for ClusterOn {
18172 #[inline]
18173 fn can_cast(kind: SyntaxKind) -> bool {
18174 kind == SyntaxKind::CLUSTER_ON
18175 }
18176 #[inline]
18177 fn cast(syntax: SyntaxNode) -> Option<Self> {
18178 if Self::can_cast(syntax.kind()) {
18179 Some(Self { syntax })
18180 } else {
18181 None
18182 }
18183 }
18184 #[inline]
18185 fn syntax(&self) -> &SyntaxNode {
18186 &self.syntax
18187 }
18188}
18189impl AstNode for Collate {
18190 #[inline]
18191 fn can_cast(kind: SyntaxKind) -> bool {
18192 kind == SyntaxKind::COLLATE
18193 }
18194 #[inline]
18195 fn cast(syntax: SyntaxNode) -> Option<Self> {
18196 if Self::can_cast(syntax.kind()) {
18197 Some(Self { syntax })
18198 } else {
18199 None
18200 }
18201 }
18202 #[inline]
18203 fn syntax(&self) -> &SyntaxNode {
18204 &self.syntax
18205 }
18206}
18207impl AstNode for ColonColon {
18208 #[inline]
18209 fn can_cast(kind: SyntaxKind) -> bool {
18210 kind == SyntaxKind::COLON_COLON
18211 }
18212 #[inline]
18213 fn cast(syntax: SyntaxNode) -> Option<Self> {
18214 if Self::can_cast(syntax.kind()) {
18215 Some(Self { syntax })
18216 } else {
18217 None
18218 }
18219 }
18220 #[inline]
18221 fn syntax(&self) -> &SyntaxNode {
18222 &self.syntax
18223 }
18224}
18225impl AstNode for ColonEq {
18226 #[inline]
18227 fn can_cast(kind: SyntaxKind) -> bool {
18228 kind == SyntaxKind::COLON_EQ
18229 }
18230 #[inline]
18231 fn cast(syntax: SyntaxNode) -> Option<Self> {
18232 if Self::can_cast(syntax.kind()) {
18233 Some(Self { syntax })
18234 } else {
18235 None
18236 }
18237 }
18238 #[inline]
18239 fn syntax(&self) -> &SyntaxNode {
18240 &self.syntax
18241 }
18242}
18243impl AstNode for Column {
18244 #[inline]
18245 fn can_cast(kind: SyntaxKind) -> bool {
18246 kind == SyntaxKind::COLUMN
18247 }
18248 #[inline]
18249 fn cast(syntax: SyntaxNode) -> Option<Self> {
18250 if Self::can_cast(syntax.kind()) {
18251 Some(Self { syntax })
18252 } else {
18253 None
18254 }
18255 }
18256 #[inline]
18257 fn syntax(&self) -> &SyntaxNode {
18258 &self.syntax
18259 }
18260}
18261impl AstNode for ColumnList {
18262 #[inline]
18263 fn can_cast(kind: SyntaxKind) -> bool {
18264 kind == SyntaxKind::COLUMN_LIST
18265 }
18266 #[inline]
18267 fn cast(syntax: SyntaxNode) -> Option<Self> {
18268 if Self::can_cast(syntax.kind()) {
18269 Some(Self { syntax })
18270 } else {
18271 None
18272 }
18273 }
18274 #[inline]
18275 fn syntax(&self) -> &SyntaxNode {
18276 &self.syntax
18277 }
18278}
18279impl AstNode for CommentOn {
18280 #[inline]
18281 fn can_cast(kind: SyntaxKind) -> bool {
18282 kind == SyntaxKind::COMMENT_ON
18283 }
18284 #[inline]
18285 fn cast(syntax: SyntaxNode) -> Option<Self> {
18286 if Self::can_cast(syntax.kind()) {
18287 Some(Self { syntax })
18288 } else {
18289 None
18290 }
18291 }
18292 #[inline]
18293 fn syntax(&self) -> &SyntaxNode {
18294 &self.syntax
18295 }
18296}
18297impl AstNode for Commit {
18298 #[inline]
18299 fn can_cast(kind: SyntaxKind) -> bool {
18300 kind == SyntaxKind::COMMIT
18301 }
18302 #[inline]
18303 fn cast(syntax: SyntaxNode) -> Option<Self> {
18304 if Self::can_cast(syntax.kind()) {
18305 Some(Self { syntax })
18306 } else {
18307 None
18308 }
18309 }
18310 #[inline]
18311 fn syntax(&self) -> &SyntaxNode {
18312 &self.syntax
18313 }
18314}
18315impl AstNode for CompoundSelect {
18316 #[inline]
18317 fn can_cast(kind: SyntaxKind) -> bool {
18318 kind == SyntaxKind::COMPOUND_SELECT
18319 }
18320 #[inline]
18321 fn cast(syntax: SyntaxNode) -> Option<Self> {
18322 if Self::can_cast(syntax.kind()) {
18323 Some(Self { syntax })
18324 } else {
18325 None
18326 }
18327 }
18328 #[inline]
18329 fn syntax(&self) -> &SyntaxNode {
18330 &self.syntax
18331 }
18332}
18333impl AstNode for CompressionMethod {
18334 #[inline]
18335 fn can_cast(kind: SyntaxKind) -> bool {
18336 kind == SyntaxKind::COMPRESSION_METHOD
18337 }
18338 #[inline]
18339 fn cast(syntax: SyntaxNode) -> Option<Self> {
18340 if Self::can_cast(syntax.kind()) {
18341 Some(Self { syntax })
18342 } else {
18343 None
18344 }
18345 }
18346 #[inline]
18347 fn syntax(&self) -> &SyntaxNode {
18348 &self.syntax
18349 }
18350}
18351impl AstNode for ConflictDoNothing {
18352 #[inline]
18353 fn can_cast(kind: SyntaxKind) -> bool {
18354 kind == SyntaxKind::CONFLICT_DO_NOTHING
18355 }
18356 #[inline]
18357 fn cast(syntax: SyntaxNode) -> Option<Self> {
18358 if Self::can_cast(syntax.kind()) {
18359 Some(Self { syntax })
18360 } else {
18361 None
18362 }
18363 }
18364 #[inline]
18365 fn syntax(&self) -> &SyntaxNode {
18366 &self.syntax
18367 }
18368}
18369impl AstNode for ConflictDoUpdateSet {
18370 #[inline]
18371 fn can_cast(kind: SyntaxKind) -> bool {
18372 kind == SyntaxKind::CONFLICT_DO_UPDATE_SET
18373 }
18374 #[inline]
18375 fn cast(syntax: SyntaxNode) -> Option<Self> {
18376 if Self::can_cast(syntax.kind()) {
18377 Some(Self { syntax })
18378 } else {
18379 None
18380 }
18381 }
18382 #[inline]
18383 fn syntax(&self) -> &SyntaxNode {
18384 &self.syntax
18385 }
18386}
18387impl AstNode for ConflictIndexItem {
18388 #[inline]
18389 fn can_cast(kind: SyntaxKind) -> bool {
18390 kind == SyntaxKind::CONFLICT_INDEX_ITEM
18391 }
18392 #[inline]
18393 fn cast(syntax: SyntaxNode) -> Option<Self> {
18394 if Self::can_cast(syntax.kind()) {
18395 Some(Self { syntax })
18396 } else {
18397 None
18398 }
18399 }
18400 #[inline]
18401 fn syntax(&self) -> &SyntaxNode {
18402 &self.syntax
18403 }
18404}
18405impl AstNode for ConflictIndexItemList {
18406 #[inline]
18407 fn can_cast(kind: SyntaxKind) -> bool {
18408 kind == SyntaxKind::CONFLICT_INDEX_ITEM_LIST
18409 }
18410 #[inline]
18411 fn cast(syntax: SyntaxNode) -> Option<Self> {
18412 if Self::can_cast(syntax.kind()) {
18413 Some(Self { syntax })
18414 } else {
18415 None
18416 }
18417 }
18418 #[inline]
18419 fn syntax(&self) -> &SyntaxNode {
18420 &self.syntax
18421 }
18422}
18423impl AstNode for ConflictOnConstraint {
18424 #[inline]
18425 fn can_cast(kind: SyntaxKind) -> bool {
18426 kind == SyntaxKind::CONFLICT_ON_CONSTRAINT
18427 }
18428 #[inline]
18429 fn cast(syntax: SyntaxNode) -> Option<Self> {
18430 if Self::can_cast(syntax.kind()) {
18431 Some(Self { syntax })
18432 } else {
18433 None
18434 }
18435 }
18436 #[inline]
18437 fn syntax(&self) -> &SyntaxNode {
18438 &self.syntax
18439 }
18440}
18441impl AstNode for ConflictOnIndex {
18442 #[inline]
18443 fn can_cast(kind: SyntaxKind) -> bool {
18444 kind == SyntaxKind::CONFLICT_ON_INDEX
18445 }
18446 #[inline]
18447 fn cast(syntax: SyntaxNode) -> Option<Self> {
18448 if Self::can_cast(syntax.kind()) {
18449 Some(Self { syntax })
18450 } else {
18451 None
18452 }
18453 }
18454 #[inline]
18455 fn syntax(&self) -> &SyntaxNode {
18456 &self.syntax
18457 }
18458}
18459impl AstNode for ConstraintExclusion {
18460 #[inline]
18461 fn can_cast(kind: SyntaxKind) -> bool {
18462 kind == SyntaxKind::CONSTRAINT_EXCLUSION
18463 }
18464 #[inline]
18465 fn cast(syntax: SyntaxNode) -> Option<Self> {
18466 if Self::can_cast(syntax.kind()) {
18467 Some(Self { syntax })
18468 } else {
18469 None
18470 }
18471 }
18472 #[inline]
18473 fn syntax(&self) -> &SyntaxNode {
18474 &self.syntax
18475 }
18476}
18477impl AstNode for ConstraintExclusionList {
18478 #[inline]
18479 fn can_cast(kind: SyntaxKind) -> bool {
18480 kind == SyntaxKind::CONSTRAINT_EXCLUSION_LIST
18481 }
18482 #[inline]
18483 fn cast(syntax: SyntaxNode) -> Option<Self> {
18484 if Self::can_cast(syntax.kind()) {
18485 Some(Self { syntax })
18486 } else {
18487 None
18488 }
18489 }
18490 #[inline]
18491 fn syntax(&self) -> &SyntaxNode {
18492 &self.syntax
18493 }
18494}
18495impl AstNode for ConstraintIncludeClause {
18496 #[inline]
18497 fn can_cast(kind: SyntaxKind) -> bool {
18498 kind == SyntaxKind::CONSTRAINT_INCLUDE_CLAUSE
18499 }
18500 #[inline]
18501 fn cast(syntax: SyntaxNode) -> Option<Self> {
18502 if Self::can_cast(syntax.kind()) {
18503 Some(Self { syntax })
18504 } else {
18505 None
18506 }
18507 }
18508 #[inline]
18509 fn syntax(&self) -> &SyntaxNode {
18510 &self.syntax
18511 }
18512}
18513impl AstNode for ConstraintIndexMethod {
18514 #[inline]
18515 fn can_cast(kind: SyntaxKind) -> bool {
18516 kind == SyntaxKind::CONSTRAINT_INDEX_METHOD
18517 }
18518 #[inline]
18519 fn cast(syntax: SyntaxNode) -> Option<Self> {
18520 if Self::can_cast(syntax.kind()) {
18521 Some(Self { syntax })
18522 } else {
18523 None
18524 }
18525 }
18526 #[inline]
18527 fn syntax(&self) -> &SyntaxNode {
18528 &self.syntax
18529 }
18530}
18531impl AstNode for ConstraintIndexTablespace {
18532 #[inline]
18533 fn can_cast(kind: SyntaxKind) -> bool {
18534 kind == SyntaxKind::CONSTRAINT_INDEX_TABLESPACE
18535 }
18536 #[inline]
18537 fn cast(syntax: SyntaxNode) -> Option<Self> {
18538 if Self::can_cast(syntax.kind()) {
18539 Some(Self { syntax })
18540 } else {
18541 None
18542 }
18543 }
18544 #[inline]
18545 fn syntax(&self) -> &SyntaxNode {
18546 &self.syntax
18547 }
18548}
18549impl AstNode for Copy {
18550 #[inline]
18551 fn can_cast(kind: SyntaxKind) -> bool {
18552 kind == SyntaxKind::COPY
18553 }
18554 #[inline]
18555 fn cast(syntax: SyntaxNode) -> Option<Self> {
18556 if Self::can_cast(syntax.kind()) {
18557 Some(Self { syntax })
18558 } else {
18559 None
18560 }
18561 }
18562 #[inline]
18563 fn syntax(&self) -> &SyntaxNode {
18564 &self.syntax
18565 }
18566}
18567impl AstNode for CostFuncOption {
18568 #[inline]
18569 fn can_cast(kind: SyntaxKind) -> bool {
18570 kind == SyntaxKind::COST_FUNC_OPTION
18571 }
18572 #[inline]
18573 fn cast(syntax: SyntaxNode) -> Option<Self> {
18574 if Self::can_cast(syntax.kind()) {
18575 Some(Self { syntax })
18576 } else {
18577 None
18578 }
18579 }
18580 #[inline]
18581 fn syntax(&self) -> &SyntaxNode {
18582 &self.syntax
18583 }
18584}
18585impl AstNode for CreateAccessMethod {
18586 #[inline]
18587 fn can_cast(kind: SyntaxKind) -> bool {
18588 kind == SyntaxKind::CREATE_ACCESS_METHOD
18589 }
18590 #[inline]
18591 fn cast(syntax: SyntaxNode) -> Option<Self> {
18592 if Self::can_cast(syntax.kind()) {
18593 Some(Self { syntax })
18594 } else {
18595 None
18596 }
18597 }
18598 #[inline]
18599 fn syntax(&self) -> &SyntaxNode {
18600 &self.syntax
18601 }
18602}
18603impl AstNode for CreateAggregate {
18604 #[inline]
18605 fn can_cast(kind: SyntaxKind) -> bool {
18606 kind == SyntaxKind::CREATE_AGGREGATE
18607 }
18608 #[inline]
18609 fn cast(syntax: SyntaxNode) -> Option<Self> {
18610 if Self::can_cast(syntax.kind()) {
18611 Some(Self { syntax })
18612 } else {
18613 None
18614 }
18615 }
18616 #[inline]
18617 fn syntax(&self) -> &SyntaxNode {
18618 &self.syntax
18619 }
18620}
18621impl AstNode for CreateCast {
18622 #[inline]
18623 fn can_cast(kind: SyntaxKind) -> bool {
18624 kind == SyntaxKind::CREATE_CAST
18625 }
18626 #[inline]
18627 fn cast(syntax: SyntaxNode) -> Option<Self> {
18628 if Self::can_cast(syntax.kind()) {
18629 Some(Self { syntax })
18630 } else {
18631 None
18632 }
18633 }
18634 #[inline]
18635 fn syntax(&self) -> &SyntaxNode {
18636 &self.syntax
18637 }
18638}
18639impl AstNode for CreateCollation {
18640 #[inline]
18641 fn can_cast(kind: SyntaxKind) -> bool {
18642 kind == SyntaxKind::CREATE_COLLATION
18643 }
18644 #[inline]
18645 fn cast(syntax: SyntaxNode) -> Option<Self> {
18646 if Self::can_cast(syntax.kind()) {
18647 Some(Self { syntax })
18648 } else {
18649 None
18650 }
18651 }
18652 #[inline]
18653 fn syntax(&self) -> &SyntaxNode {
18654 &self.syntax
18655 }
18656}
18657impl AstNode for CreateConversion {
18658 #[inline]
18659 fn can_cast(kind: SyntaxKind) -> bool {
18660 kind == SyntaxKind::CREATE_CONVERSION
18661 }
18662 #[inline]
18663 fn cast(syntax: SyntaxNode) -> Option<Self> {
18664 if Self::can_cast(syntax.kind()) {
18665 Some(Self { syntax })
18666 } else {
18667 None
18668 }
18669 }
18670 #[inline]
18671 fn syntax(&self) -> &SyntaxNode {
18672 &self.syntax
18673 }
18674}
18675impl AstNode for CreateDatabase {
18676 #[inline]
18677 fn can_cast(kind: SyntaxKind) -> bool {
18678 kind == SyntaxKind::CREATE_DATABASE
18679 }
18680 #[inline]
18681 fn cast(syntax: SyntaxNode) -> Option<Self> {
18682 if Self::can_cast(syntax.kind()) {
18683 Some(Self { syntax })
18684 } else {
18685 None
18686 }
18687 }
18688 #[inline]
18689 fn syntax(&self) -> &SyntaxNode {
18690 &self.syntax
18691 }
18692}
18693impl AstNode for CreateDatabaseOption {
18694 #[inline]
18695 fn can_cast(kind: SyntaxKind) -> bool {
18696 kind == SyntaxKind::CREATE_DATABASE_OPTION
18697 }
18698 #[inline]
18699 fn cast(syntax: SyntaxNode) -> Option<Self> {
18700 if Self::can_cast(syntax.kind()) {
18701 Some(Self { syntax })
18702 } else {
18703 None
18704 }
18705 }
18706 #[inline]
18707 fn syntax(&self) -> &SyntaxNode {
18708 &self.syntax
18709 }
18710}
18711impl AstNode for CreateDatabaseOptionList {
18712 #[inline]
18713 fn can_cast(kind: SyntaxKind) -> bool {
18714 kind == SyntaxKind::CREATE_DATABASE_OPTION_LIST
18715 }
18716 #[inline]
18717 fn cast(syntax: SyntaxNode) -> Option<Self> {
18718 if Self::can_cast(syntax.kind()) {
18719 Some(Self { syntax })
18720 } else {
18721 None
18722 }
18723 }
18724 #[inline]
18725 fn syntax(&self) -> &SyntaxNode {
18726 &self.syntax
18727 }
18728}
18729impl AstNode for CreateDomain {
18730 #[inline]
18731 fn can_cast(kind: SyntaxKind) -> bool {
18732 kind == SyntaxKind::CREATE_DOMAIN
18733 }
18734 #[inline]
18735 fn cast(syntax: SyntaxNode) -> Option<Self> {
18736 if Self::can_cast(syntax.kind()) {
18737 Some(Self { syntax })
18738 } else {
18739 None
18740 }
18741 }
18742 #[inline]
18743 fn syntax(&self) -> &SyntaxNode {
18744 &self.syntax
18745 }
18746}
18747impl AstNode for CreateEventTrigger {
18748 #[inline]
18749 fn can_cast(kind: SyntaxKind) -> bool {
18750 kind == SyntaxKind::CREATE_EVENT_TRIGGER
18751 }
18752 #[inline]
18753 fn cast(syntax: SyntaxNode) -> Option<Self> {
18754 if Self::can_cast(syntax.kind()) {
18755 Some(Self { syntax })
18756 } else {
18757 None
18758 }
18759 }
18760 #[inline]
18761 fn syntax(&self) -> &SyntaxNode {
18762 &self.syntax
18763 }
18764}
18765impl AstNode for CreateExtension {
18766 #[inline]
18767 fn can_cast(kind: SyntaxKind) -> bool {
18768 kind == SyntaxKind::CREATE_EXTENSION
18769 }
18770 #[inline]
18771 fn cast(syntax: SyntaxNode) -> Option<Self> {
18772 if Self::can_cast(syntax.kind()) {
18773 Some(Self { syntax })
18774 } else {
18775 None
18776 }
18777 }
18778 #[inline]
18779 fn syntax(&self) -> &SyntaxNode {
18780 &self.syntax
18781 }
18782}
18783impl AstNode for CreateForeignDataWrapper {
18784 #[inline]
18785 fn can_cast(kind: SyntaxKind) -> bool {
18786 kind == SyntaxKind::CREATE_FOREIGN_DATA_WRAPPER
18787 }
18788 #[inline]
18789 fn cast(syntax: SyntaxNode) -> Option<Self> {
18790 if Self::can_cast(syntax.kind()) {
18791 Some(Self { syntax })
18792 } else {
18793 None
18794 }
18795 }
18796 #[inline]
18797 fn syntax(&self) -> &SyntaxNode {
18798 &self.syntax
18799 }
18800}
18801impl AstNode for CreateForeignTable {
18802 #[inline]
18803 fn can_cast(kind: SyntaxKind) -> bool {
18804 kind == SyntaxKind::CREATE_FOREIGN_TABLE
18805 }
18806 #[inline]
18807 fn cast(syntax: SyntaxNode) -> Option<Self> {
18808 if Self::can_cast(syntax.kind()) {
18809 Some(Self { syntax })
18810 } else {
18811 None
18812 }
18813 }
18814 #[inline]
18815 fn syntax(&self) -> &SyntaxNode {
18816 &self.syntax
18817 }
18818}
18819impl AstNode for CreateFunction {
18820 #[inline]
18821 fn can_cast(kind: SyntaxKind) -> bool {
18822 kind == SyntaxKind::CREATE_FUNCTION
18823 }
18824 #[inline]
18825 fn cast(syntax: SyntaxNode) -> Option<Self> {
18826 if Self::can_cast(syntax.kind()) {
18827 Some(Self { syntax })
18828 } else {
18829 None
18830 }
18831 }
18832 #[inline]
18833 fn syntax(&self) -> &SyntaxNode {
18834 &self.syntax
18835 }
18836}
18837impl AstNode for CreateGroup {
18838 #[inline]
18839 fn can_cast(kind: SyntaxKind) -> bool {
18840 kind == SyntaxKind::CREATE_GROUP
18841 }
18842 #[inline]
18843 fn cast(syntax: SyntaxNode) -> Option<Self> {
18844 if Self::can_cast(syntax.kind()) {
18845 Some(Self { syntax })
18846 } else {
18847 None
18848 }
18849 }
18850 #[inline]
18851 fn syntax(&self) -> &SyntaxNode {
18852 &self.syntax
18853 }
18854}
18855impl AstNode for CreateIndex {
18856 #[inline]
18857 fn can_cast(kind: SyntaxKind) -> bool {
18858 kind == SyntaxKind::CREATE_INDEX
18859 }
18860 #[inline]
18861 fn cast(syntax: SyntaxNode) -> Option<Self> {
18862 if Self::can_cast(syntax.kind()) {
18863 Some(Self { syntax })
18864 } else {
18865 None
18866 }
18867 }
18868 #[inline]
18869 fn syntax(&self) -> &SyntaxNode {
18870 &self.syntax
18871 }
18872}
18873impl AstNode for CreateLanguage {
18874 #[inline]
18875 fn can_cast(kind: SyntaxKind) -> bool {
18876 kind == SyntaxKind::CREATE_LANGUAGE
18877 }
18878 #[inline]
18879 fn cast(syntax: SyntaxNode) -> Option<Self> {
18880 if Self::can_cast(syntax.kind()) {
18881 Some(Self { syntax })
18882 } else {
18883 None
18884 }
18885 }
18886 #[inline]
18887 fn syntax(&self) -> &SyntaxNode {
18888 &self.syntax
18889 }
18890}
18891impl AstNode for CreateMaterializedView {
18892 #[inline]
18893 fn can_cast(kind: SyntaxKind) -> bool {
18894 kind == SyntaxKind::CREATE_MATERIALIZED_VIEW
18895 }
18896 #[inline]
18897 fn cast(syntax: SyntaxNode) -> Option<Self> {
18898 if Self::can_cast(syntax.kind()) {
18899 Some(Self { syntax })
18900 } else {
18901 None
18902 }
18903 }
18904 #[inline]
18905 fn syntax(&self) -> &SyntaxNode {
18906 &self.syntax
18907 }
18908}
18909impl AstNode for CreateOperator {
18910 #[inline]
18911 fn can_cast(kind: SyntaxKind) -> bool {
18912 kind == SyntaxKind::CREATE_OPERATOR
18913 }
18914 #[inline]
18915 fn cast(syntax: SyntaxNode) -> Option<Self> {
18916 if Self::can_cast(syntax.kind()) {
18917 Some(Self { syntax })
18918 } else {
18919 None
18920 }
18921 }
18922 #[inline]
18923 fn syntax(&self) -> &SyntaxNode {
18924 &self.syntax
18925 }
18926}
18927impl AstNode for CreateOperatorClass {
18928 #[inline]
18929 fn can_cast(kind: SyntaxKind) -> bool {
18930 kind == SyntaxKind::CREATE_OPERATOR_CLASS
18931 }
18932 #[inline]
18933 fn cast(syntax: SyntaxNode) -> Option<Self> {
18934 if Self::can_cast(syntax.kind()) {
18935 Some(Self { syntax })
18936 } else {
18937 None
18938 }
18939 }
18940 #[inline]
18941 fn syntax(&self) -> &SyntaxNode {
18942 &self.syntax
18943 }
18944}
18945impl AstNode for CreateOperatorFamily {
18946 #[inline]
18947 fn can_cast(kind: SyntaxKind) -> bool {
18948 kind == SyntaxKind::CREATE_OPERATOR_FAMILY
18949 }
18950 #[inline]
18951 fn cast(syntax: SyntaxNode) -> Option<Self> {
18952 if Self::can_cast(syntax.kind()) {
18953 Some(Self { syntax })
18954 } else {
18955 None
18956 }
18957 }
18958 #[inline]
18959 fn syntax(&self) -> &SyntaxNode {
18960 &self.syntax
18961 }
18962}
18963impl AstNode for CreatePolicy {
18964 #[inline]
18965 fn can_cast(kind: SyntaxKind) -> bool {
18966 kind == SyntaxKind::CREATE_POLICY
18967 }
18968 #[inline]
18969 fn cast(syntax: SyntaxNode) -> Option<Self> {
18970 if Self::can_cast(syntax.kind()) {
18971 Some(Self { syntax })
18972 } else {
18973 None
18974 }
18975 }
18976 #[inline]
18977 fn syntax(&self) -> &SyntaxNode {
18978 &self.syntax
18979 }
18980}
18981impl AstNode for CreateProcedure {
18982 #[inline]
18983 fn can_cast(kind: SyntaxKind) -> bool {
18984 kind == SyntaxKind::CREATE_PROCEDURE
18985 }
18986 #[inline]
18987 fn cast(syntax: SyntaxNode) -> Option<Self> {
18988 if Self::can_cast(syntax.kind()) {
18989 Some(Self { syntax })
18990 } else {
18991 None
18992 }
18993 }
18994 #[inline]
18995 fn syntax(&self) -> &SyntaxNode {
18996 &self.syntax
18997 }
18998}
18999impl AstNode for CreatePublication {
19000 #[inline]
19001 fn can_cast(kind: SyntaxKind) -> bool {
19002 kind == SyntaxKind::CREATE_PUBLICATION
19003 }
19004 #[inline]
19005 fn cast(syntax: SyntaxNode) -> Option<Self> {
19006 if Self::can_cast(syntax.kind()) {
19007 Some(Self { syntax })
19008 } else {
19009 None
19010 }
19011 }
19012 #[inline]
19013 fn syntax(&self) -> &SyntaxNode {
19014 &self.syntax
19015 }
19016}
19017impl AstNode for CreateRole {
19018 #[inline]
19019 fn can_cast(kind: SyntaxKind) -> bool {
19020 kind == SyntaxKind::CREATE_ROLE
19021 }
19022 #[inline]
19023 fn cast(syntax: SyntaxNode) -> Option<Self> {
19024 if Self::can_cast(syntax.kind()) {
19025 Some(Self { syntax })
19026 } else {
19027 None
19028 }
19029 }
19030 #[inline]
19031 fn syntax(&self) -> &SyntaxNode {
19032 &self.syntax
19033 }
19034}
19035impl AstNode for CreateRule {
19036 #[inline]
19037 fn can_cast(kind: SyntaxKind) -> bool {
19038 kind == SyntaxKind::CREATE_RULE
19039 }
19040 #[inline]
19041 fn cast(syntax: SyntaxNode) -> Option<Self> {
19042 if Self::can_cast(syntax.kind()) {
19043 Some(Self { syntax })
19044 } else {
19045 None
19046 }
19047 }
19048 #[inline]
19049 fn syntax(&self) -> &SyntaxNode {
19050 &self.syntax
19051 }
19052}
19053impl AstNode for CreateSchema {
19054 #[inline]
19055 fn can_cast(kind: SyntaxKind) -> bool {
19056 kind == SyntaxKind::CREATE_SCHEMA
19057 }
19058 #[inline]
19059 fn cast(syntax: SyntaxNode) -> Option<Self> {
19060 if Self::can_cast(syntax.kind()) {
19061 Some(Self { syntax })
19062 } else {
19063 None
19064 }
19065 }
19066 #[inline]
19067 fn syntax(&self) -> &SyntaxNode {
19068 &self.syntax
19069 }
19070}
19071impl AstNode for CreateSequence {
19072 #[inline]
19073 fn can_cast(kind: SyntaxKind) -> bool {
19074 kind == SyntaxKind::CREATE_SEQUENCE
19075 }
19076 #[inline]
19077 fn cast(syntax: SyntaxNode) -> Option<Self> {
19078 if Self::can_cast(syntax.kind()) {
19079 Some(Self { syntax })
19080 } else {
19081 None
19082 }
19083 }
19084 #[inline]
19085 fn syntax(&self) -> &SyntaxNode {
19086 &self.syntax
19087 }
19088}
19089impl AstNode for CreateServer {
19090 #[inline]
19091 fn can_cast(kind: SyntaxKind) -> bool {
19092 kind == SyntaxKind::CREATE_SERVER
19093 }
19094 #[inline]
19095 fn cast(syntax: SyntaxNode) -> Option<Self> {
19096 if Self::can_cast(syntax.kind()) {
19097 Some(Self { syntax })
19098 } else {
19099 None
19100 }
19101 }
19102 #[inline]
19103 fn syntax(&self) -> &SyntaxNode {
19104 &self.syntax
19105 }
19106}
19107impl AstNode for CreateStatistics {
19108 #[inline]
19109 fn can_cast(kind: SyntaxKind) -> bool {
19110 kind == SyntaxKind::CREATE_STATISTICS
19111 }
19112 #[inline]
19113 fn cast(syntax: SyntaxNode) -> Option<Self> {
19114 if Self::can_cast(syntax.kind()) {
19115 Some(Self { syntax })
19116 } else {
19117 None
19118 }
19119 }
19120 #[inline]
19121 fn syntax(&self) -> &SyntaxNode {
19122 &self.syntax
19123 }
19124}
19125impl AstNode for CreateSubscription {
19126 #[inline]
19127 fn can_cast(kind: SyntaxKind) -> bool {
19128 kind == SyntaxKind::CREATE_SUBSCRIPTION
19129 }
19130 #[inline]
19131 fn cast(syntax: SyntaxNode) -> Option<Self> {
19132 if Self::can_cast(syntax.kind()) {
19133 Some(Self { syntax })
19134 } else {
19135 None
19136 }
19137 }
19138 #[inline]
19139 fn syntax(&self) -> &SyntaxNode {
19140 &self.syntax
19141 }
19142}
19143impl AstNode for CreateTable {
19144 #[inline]
19145 fn can_cast(kind: SyntaxKind) -> bool {
19146 kind == SyntaxKind::CREATE_TABLE
19147 }
19148 #[inline]
19149 fn cast(syntax: SyntaxNode) -> Option<Self> {
19150 if Self::can_cast(syntax.kind()) {
19151 Some(Self { syntax })
19152 } else {
19153 None
19154 }
19155 }
19156 #[inline]
19157 fn syntax(&self) -> &SyntaxNode {
19158 &self.syntax
19159 }
19160}
19161impl AstNode for CreateTableAs {
19162 #[inline]
19163 fn can_cast(kind: SyntaxKind) -> bool {
19164 kind == SyntaxKind::CREATE_TABLE_AS
19165 }
19166 #[inline]
19167 fn cast(syntax: SyntaxNode) -> Option<Self> {
19168 if Self::can_cast(syntax.kind()) {
19169 Some(Self { syntax })
19170 } else {
19171 None
19172 }
19173 }
19174 #[inline]
19175 fn syntax(&self) -> &SyntaxNode {
19176 &self.syntax
19177 }
19178}
19179impl AstNode for CreateTablespace {
19180 #[inline]
19181 fn can_cast(kind: SyntaxKind) -> bool {
19182 kind == SyntaxKind::CREATE_TABLESPACE
19183 }
19184 #[inline]
19185 fn cast(syntax: SyntaxNode) -> Option<Self> {
19186 if Self::can_cast(syntax.kind()) {
19187 Some(Self { syntax })
19188 } else {
19189 None
19190 }
19191 }
19192 #[inline]
19193 fn syntax(&self) -> &SyntaxNode {
19194 &self.syntax
19195 }
19196}
19197impl AstNode for CreateTextSearchConfiguration {
19198 #[inline]
19199 fn can_cast(kind: SyntaxKind) -> bool {
19200 kind == SyntaxKind::CREATE_TEXT_SEARCH_CONFIGURATION
19201 }
19202 #[inline]
19203 fn cast(syntax: SyntaxNode) -> Option<Self> {
19204 if Self::can_cast(syntax.kind()) {
19205 Some(Self { syntax })
19206 } else {
19207 None
19208 }
19209 }
19210 #[inline]
19211 fn syntax(&self) -> &SyntaxNode {
19212 &self.syntax
19213 }
19214}
19215impl AstNode for CreateTextSearchDictionary {
19216 #[inline]
19217 fn can_cast(kind: SyntaxKind) -> bool {
19218 kind == SyntaxKind::CREATE_TEXT_SEARCH_DICTIONARY
19219 }
19220 #[inline]
19221 fn cast(syntax: SyntaxNode) -> Option<Self> {
19222 if Self::can_cast(syntax.kind()) {
19223 Some(Self { syntax })
19224 } else {
19225 None
19226 }
19227 }
19228 #[inline]
19229 fn syntax(&self) -> &SyntaxNode {
19230 &self.syntax
19231 }
19232}
19233impl AstNode for CreateTextSearchParser {
19234 #[inline]
19235 fn can_cast(kind: SyntaxKind) -> bool {
19236 kind == SyntaxKind::CREATE_TEXT_SEARCH_PARSER
19237 }
19238 #[inline]
19239 fn cast(syntax: SyntaxNode) -> Option<Self> {
19240 if Self::can_cast(syntax.kind()) {
19241 Some(Self { syntax })
19242 } else {
19243 None
19244 }
19245 }
19246 #[inline]
19247 fn syntax(&self) -> &SyntaxNode {
19248 &self.syntax
19249 }
19250}
19251impl AstNode for CreateTextSearchTemplate {
19252 #[inline]
19253 fn can_cast(kind: SyntaxKind) -> bool {
19254 kind == SyntaxKind::CREATE_TEXT_SEARCH_TEMPLATE
19255 }
19256 #[inline]
19257 fn cast(syntax: SyntaxNode) -> Option<Self> {
19258 if Self::can_cast(syntax.kind()) {
19259 Some(Self { syntax })
19260 } else {
19261 None
19262 }
19263 }
19264 #[inline]
19265 fn syntax(&self) -> &SyntaxNode {
19266 &self.syntax
19267 }
19268}
19269impl AstNode for CreateTransform {
19270 #[inline]
19271 fn can_cast(kind: SyntaxKind) -> bool {
19272 kind == SyntaxKind::CREATE_TRANSFORM
19273 }
19274 #[inline]
19275 fn cast(syntax: SyntaxNode) -> Option<Self> {
19276 if Self::can_cast(syntax.kind()) {
19277 Some(Self { syntax })
19278 } else {
19279 None
19280 }
19281 }
19282 #[inline]
19283 fn syntax(&self) -> &SyntaxNode {
19284 &self.syntax
19285 }
19286}
19287impl AstNode for CreateTrigger {
19288 #[inline]
19289 fn can_cast(kind: SyntaxKind) -> bool {
19290 kind == SyntaxKind::CREATE_TRIGGER
19291 }
19292 #[inline]
19293 fn cast(syntax: SyntaxNode) -> Option<Self> {
19294 if Self::can_cast(syntax.kind()) {
19295 Some(Self { syntax })
19296 } else {
19297 None
19298 }
19299 }
19300 #[inline]
19301 fn syntax(&self) -> &SyntaxNode {
19302 &self.syntax
19303 }
19304}
19305impl AstNode for CreateType {
19306 #[inline]
19307 fn can_cast(kind: SyntaxKind) -> bool {
19308 kind == SyntaxKind::CREATE_TYPE
19309 }
19310 #[inline]
19311 fn cast(syntax: SyntaxNode) -> Option<Self> {
19312 if Self::can_cast(syntax.kind()) {
19313 Some(Self { syntax })
19314 } else {
19315 None
19316 }
19317 }
19318 #[inline]
19319 fn syntax(&self) -> &SyntaxNode {
19320 &self.syntax
19321 }
19322}
19323impl AstNode for CreateUser {
19324 #[inline]
19325 fn can_cast(kind: SyntaxKind) -> bool {
19326 kind == SyntaxKind::CREATE_USER
19327 }
19328 #[inline]
19329 fn cast(syntax: SyntaxNode) -> Option<Self> {
19330 if Self::can_cast(syntax.kind()) {
19331 Some(Self { syntax })
19332 } else {
19333 None
19334 }
19335 }
19336 #[inline]
19337 fn syntax(&self) -> &SyntaxNode {
19338 &self.syntax
19339 }
19340}
19341impl AstNode for CreateUserMapping {
19342 #[inline]
19343 fn can_cast(kind: SyntaxKind) -> bool {
19344 kind == SyntaxKind::CREATE_USER_MAPPING
19345 }
19346 #[inline]
19347 fn cast(syntax: SyntaxNode) -> Option<Self> {
19348 if Self::can_cast(syntax.kind()) {
19349 Some(Self { syntax })
19350 } else {
19351 None
19352 }
19353 }
19354 #[inline]
19355 fn syntax(&self) -> &SyntaxNode {
19356 &self.syntax
19357 }
19358}
19359impl AstNode for CreateView {
19360 #[inline]
19361 fn can_cast(kind: SyntaxKind) -> bool {
19362 kind == SyntaxKind::CREATE_VIEW
19363 }
19364 #[inline]
19365 fn cast(syntax: SyntaxNode) -> Option<Self> {
19366 if Self::can_cast(syntax.kind()) {
19367 Some(Self { syntax })
19368 } else {
19369 None
19370 }
19371 }
19372 #[inline]
19373 fn syntax(&self) -> &SyntaxNode {
19374 &self.syntax
19375 }
19376}
19377impl AstNode for CustomOp {
19378 #[inline]
19379 fn can_cast(kind: SyntaxKind) -> bool {
19380 kind == SyntaxKind::CUSTOM_OP
19381 }
19382 #[inline]
19383 fn cast(syntax: SyntaxNode) -> Option<Self> {
19384 if Self::can_cast(syntax.kind()) {
19385 Some(Self { syntax })
19386 } else {
19387 None
19388 }
19389 }
19390 #[inline]
19391 fn syntax(&self) -> &SyntaxNode {
19392 &self.syntax
19393 }
19394}
19395impl AstNode for Deallocate {
19396 #[inline]
19397 fn can_cast(kind: SyntaxKind) -> bool {
19398 kind == SyntaxKind::DEALLOCATE
19399 }
19400 #[inline]
19401 fn cast(syntax: SyntaxNode) -> Option<Self> {
19402 if Self::can_cast(syntax.kind()) {
19403 Some(Self { syntax })
19404 } else {
19405 None
19406 }
19407 }
19408 #[inline]
19409 fn syntax(&self) -> &SyntaxNode {
19410 &self.syntax
19411 }
19412}
19413impl AstNode for Declare {
19414 #[inline]
19415 fn can_cast(kind: SyntaxKind) -> bool {
19416 kind == SyntaxKind::DECLARE
19417 }
19418 #[inline]
19419 fn cast(syntax: SyntaxNode) -> Option<Self> {
19420 if Self::can_cast(syntax.kind()) {
19421 Some(Self { syntax })
19422 } else {
19423 None
19424 }
19425 }
19426 #[inline]
19427 fn syntax(&self) -> &SyntaxNode {
19428 &self.syntax
19429 }
19430}
19431impl AstNode for DefaultConstraint {
19432 #[inline]
19433 fn can_cast(kind: SyntaxKind) -> bool {
19434 kind == SyntaxKind::DEFAULT_CONSTRAINT
19435 }
19436 #[inline]
19437 fn cast(syntax: SyntaxNode) -> Option<Self> {
19438 if Self::can_cast(syntax.kind()) {
19439 Some(Self { syntax })
19440 } else {
19441 None
19442 }
19443 }
19444 #[inline]
19445 fn syntax(&self) -> &SyntaxNode {
19446 &self.syntax
19447 }
19448}
19449impl AstNode for Deferrable {
19450 #[inline]
19451 fn can_cast(kind: SyntaxKind) -> bool {
19452 kind == SyntaxKind::DEFERRABLE
19453 }
19454 #[inline]
19455 fn cast(syntax: SyntaxNode) -> Option<Self> {
19456 if Self::can_cast(syntax.kind()) {
19457 Some(Self { syntax })
19458 } else {
19459 None
19460 }
19461 }
19462 #[inline]
19463 fn syntax(&self) -> &SyntaxNode {
19464 &self.syntax
19465 }
19466}
19467impl AstNode for DeferrableConstraintOption {
19468 #[inline]
19469 fn can_cast(kind: SyntaxKind) -> bool {
19470 kind == SyntaxKind::DEFERRABLE_CONSTRAINT_OPTION
19471 }
19472 #[inline]
19473 fn cast(syntax: SyntaxNode) -> Option<Self> {
19474 if Self::can_cast(syntax.kind()) {
19475 Some(Self { syntax })
19476 } else {
19477 None
19478 }
19479 }
19480 #[inline]
19481 fn syntax(&self) -> &SyntaxNode {
19482 &self.syntax
19483 }
19484}
19485impl AstNode for Delete {
19486 #[inline]
19487 fn can_cast(kind: SyntaxKind) -> bool {
19488 kind == SyntaxKind::DELETE
19489 }
19490 #[inline]
19491 fn cast(syntax: SyntaxNode) -> Option<Self> {
19492 if Self::can_cast(syntax.kind()) {
19493 Some(Self { syntax })
19494 } else {
19495 None
19496 }
19497 }
19498 #[inline]
19499 fn syntax(&self) -> &SyntaxNode {
19500 &self.syntax
19501 }
19502}
19503impl AstNode for DeleteRows {
19504 #[inline]
19505 fn can_cast(kind: SyntaxKind) -> bool {
19506 kind == SyntaxKind::DELETE_ROWS
19507 }
19508 #[inline]
19509 fn cast(syntax: SyntaxNode) -> Option<Self> {
19510 if Self::can_cast(syntax.kind()) {
19511 Some(Self { syntax })
19512 } else {
19513 None
19514 }
19515 }
19516 #[inline]
19517 fn syntax(&self) -> &SyntaxNode {
19518 &self.syntax
19519 }
19520}
19521impl AstNode for DependsOnExtension {
19522 #[inline]
19523 fn can_cast(kind: SyntaxKind) -> bool {
19524 kind == SyntaxKind::DEPENDS_ON_EXTENSION
19525 }
19526 #[inline]
19527 fn cast(syntax: SyntaxNode) -> Option<Self> {
19528 if Self::can_cast(syntax.kind()) {
19529 Some(Self { syntax })
19530 } else {
19531 None
19532 }
19533 }
19534 #[inline]
19535 fn syntax(&self) -> &SyntaxNode {
19536 &self.syntax
19537 }
19538}
19539impl AstNode for DetachPartition {
19540 #[inline]
19541 fn can_cast(kind: SyntaxKind) -> bool {
19542 kind == SyntaxKind::DETACH_PARTITION
19543 }
19544 #[inline]
19545 fn cast(syntax: SyntaxNode) -> Option<Self> {
19546 if Self::can_cast(syntax.kind()) {
19547 Some(Self { syntax })
19548 } else {
19549 None
19550 }
19551 }
19552 #[inline]
19553 fn syntax(&self) -> &SyntaxNode {
19554 &self.syntax
19555 }
19556}
19557impl AstNode for DisableRls {
19558 #[inline]
19559 fn can_cast(kind: SyntaxKind) -> bool {
19560 kind == SyntaxKind::DISABLE_RLS
19561 }
19562 #[inline]
19563 fn cast(syntax: SyntaxNode) -> Option<Self> {
19564 if Self::can_cast(syntax.kind()) {
19565 Some(Self { syntax })
19566 } else {
19567 None
19568 }
19569 }
19570 #[inline]
19571 fn syntax(&self) -> &SyntaxNode {
19572 &self.syntax
19573 }
19574}
19575impl AstNode for DisableRule {
19576 #[inline]
19577 fn can_cast(kind: SyntaxKind) -> bool {
19578 kind == SyntaxKind::DISABLE_RULE
19579 }
19580 #[inline]
19581 fn cast(syntax: SyntaxNode) -> Option<Self> {
19582 if Self::can_cast(syntax.kind()) {
19583 Some(Self { syntax })
19584 } else {
19585 None
19586 }
19587 }
19588 #[inline]
19589 fn syntax(&self) -> &SyntaxNode {
19590 &self.syntax
19591 }
19592}
19593impl AstNode for DisableTrigger {
19594 #[inline]
19595 fn can_cast(kind: SyntaxKind) -> bool {
19596 kind == SyntaxKind::DISABLE_TRIGGER
19597 }
19598 #[inline]
19599 fn cast(syntax: SyntaxNode) -> Option<Self> {
19600 if Self::can_cast(syntax.kind()) {
19601 Some(Self { syntax })
19602 } else {
19603 None
19604 }
19605 }
19606 #[inline]
19607 fn syntax(&self) -> &SyntaxNode {
19608 &self.syntax
19609 }
19610}
19611impl AstNode for Discard {
19612 #[inline]
19613 fn can_cast(kind: SyntaxKind) -> bool {
19614 kind == SyntaxKind::DISCARD
19615 }
19616 #[inline]
19617 fn cast(syntax: SyntaxNode) -> Option<Self> {
19618 if Self::can_cast(syntax.kind()) {
19619 Some(Self { syntax })
19620 } else {
19621 None
19622 }
19623 }
19624 #[inline]
19625 fn syntax(&self) -> &SyntaxNode {
19626 &self.syntax
19627 }
19628}
19629impl AstNode for DistinctClause {
19630 #[inline]
19631 fn can_cast(kind: SyntaxKind) -> bool {
19632 kind == SyntaxKind::DISTINCT_CLAUSE
19633 }
19634 #[inline]
19635 fn cast(syntax: SyntaxNode) -> Option<Self> {
19636 if Self::can_cast(syntax.kind()) {
19637 Some(Self { syntax })
19638 } else {
19639 None
19640 }
19641 }
19642 #[inline]
19643 fn syntax(&self) -> &SyntaxNode {
19644 &self.syntax
19645 }
19646}
19647impl AstNode for Do {
19648 #[inline]
19649 fn can_cast(kind: SyntaxKind) -> bool {
19650 kind == SyntaxKind::DO
19651 }
19652 #[inline]
19653 fn cast(syntax: SyntaxNode) -> Option<Self> {
19654 if Self::can_cast(syntax.kind()) {
19655 Some(Self { syntax })
19656 } else {
19657 None
19658 }
19659 }
19660 #[inline]
19661 fn syntax(&self) -> &SyntaxNode {
19662 &self.syntax
19663 }
19664}
19665impl AstNode for DoubleType {
19666 #[inline]
19667 fn can_cast(kind: SyntaxKind) -> bool {
19668 kind == SyntaxKind::DOUBLE_TYPE
19669 }
19670 #[inline]
19671 fn cast(syntax: SyntaxNode) -> Option<Self> {
19672 if Self::can_cast(syntax.kind()) {
19673 Some(Self { syntax })
19674 } else {
19675 None
19676 }
19677 }
19678 #[inline]
19679 fn syntax(&self) -> &SyntaxNode {
19680 &self.syntax
19681 }
19682}
19683impl AstNode for Drop {
19684 #[inline]
19685 fn can_cast(kind: SyntaxKind) -> bool {
19686 kind == SyntaxKind::DROP
19687 }
19688 #[inline]
19689 fn cast(syntax: SyntaxNode) -> Option<Self> {
19690 if Self::can_cast(syntax.kind()) {
19691 Some(Self { syntax })
19692 } else {
19693 None
19694 }
19695 }
19696 #[inline]
19697 fn syntax(&self) -> &SyntaxNode {
19698 &self.syntax
19699 }
19700}
19701impl AstNode for DropAccessMethod {
19702 #[inline]
19703 fn can_cast(kind: SyntaxKind) -> bool {
19704 kind == SyntaxKind::DROP_ACCESS_METHOD
19705 }
19706 #[inline]
19707 fn cast(syntax: SyntaxNode) -> Option<Self> {
19708 if Self::can_cast(syntax.kind()) {
19709 Some(Self { syntax })
19710 } else {
19711 None
19712 }
19713 }
19714 #[inline]
19715 fn syntax(&self) -> &SyntaxNode {
19716 &self.syntax
19717 }
19718}
19719impl AstNode for DropAggregate {
19720 #[inline]
19721 fn can_cast(kind: SyntaxKind) -> bool {
19722 kind == SyntaxKind::DROP_AGGREGATE
19723 }
19724 #[inline]
19725 fn cast(syntax: SyntaxNode) -> Option<Self> {
19726 if Self::can_cast(syntax.kind()) {
19727 Some(Self { syntax })
19728 } else {
19729 None
19730 }
19731 }
19732 #[inline]
19733 fn syntax(&self) -> &SyntaxNode {
19734 &self.syntax
19735 }
19736}
19737impl AstNode for DropCast {
19738 #[inline]
19739 fn can_cast(kind: SyntaxKind) -> bool {
19740 kind == SyntaxKind::DROP_CAST
19741 }
19742 #[inline]
19743 fn cast(syntax: SyntaxNode) -> Option<Self> {
19744 if Self::can_cast(syntax.kind()) {
19745 Some(Self { syntax })
19746 } else {
19747 None
19748 }
19749 }
19750 #[inline]
19751 fn syntax(&self) -> &SyntaxNode {
19752 &self.syntax
19753 }
19754}
19755impl AstNode for DropCollation {
19756 #[inline]
19757 fn can_cast(kind: SyntaxKind) -> bool {
19758 kind == SyntaxKind::DROP_COLLATION
19759 }
19760 #[inline]
19761 fn cast(syntax: SyntaxNode) -> Option<Self> {
19762 if Self::can_cast(syntax.kind()) {
19763 Some(Self { syntax })
19764 } else {
19765 None
19766 }
19767 }
19768 #[inline]
19769 fn syntax(&self) -> &SyntaxNode {
19770 &self.syntax
19771 }
19772}
19773impl AstNode for DropColumn {
19774 #[inline]
19775 fn can_cast(kind: SyntaxKind) -> bool {
19776 kind == SyntaxKind::DROP_COLUMN
19777 }
19778 #[inline]
19779 fn cast(syntax: SyntaxNode) -> Option<Self> {
19780 if Self::can_cast(syntax.kind()) {
19781 Some(Self { syntax })
19782 } else {
19783 None
19784 }
19785 }
19786 #[inline]
19787 fn syntax(&self) -> &SyntaxNode {
19788 &self.syntax
19789 }
19790}
19791impl AstNode for DropConstraint {
19792 #[inline]
19793 fn can_cast(kind: SyntaxKind) -> bool {
19794 kind == SyntaxKind::DROP_CONSTRAINT
19795 }
19796 #[inline]
19797 fn cast(syntax: SyntaxNode) -> Option<Self> {
19798 if Self::can_cast(syntax.kind()) {
19799 Some(Self { syntax })
19800 } else {
19801 None
19802 }
19803 }
19804 #[inline]
19805 fn syntax(&self) -> &SyntaxNode {
19806 &self.syntax
19807 }
19808}
19809impl AstNode for DropConversion {
19810 #[inline]
19811 fn can_cast(kind: SyntaxKind) -> bool {
19812 kind == SyntaxKind::DROP_CONVERSION
19813 }
19814 #[inline]
19815 fn cast(syntax: SyntaxNode) -> Option<Self> {
19816 if Self::can_cast(syntax.kind()) {
19817 Some(Self { syntax })
19818 } else {
19819 None
19820 }
19821 }
19822 #[inline]
19823 fn syntax(&self) -> &SyntaxNode {
19824 &self.syntax
19825 }
19826}
19827impl AstNode for DropDatabase {
19828 #[inline]
19829 fn can_cast(kind: SyntaxKind) -> bool {
19830 kind == SyntaxKind::DROP_DATABASE
19831 }
19832 #[inline]
19833 fn cast(syntax: SyntaxNode) -> Option<Self> {
19834 if Self::can_cast(syntax.kind()) {
19835 Some(Self { syntax })
19836 } else {
19837 None
19838 }
19839 }
19840 #[inline]
19841 fn syntax(&self) -> &SyntaxNode {
19842 &self.syntax
19843 }
19844}
19845impl AstNode for DropDefault {
19846 #[inline]
19847 fn can_cast(kind: SyntaxKind) -> bool {
19848 kind == SyntaxKind::DROP_DEFAULT
19849 }
19850 #[inline]
19851 fn cast(syntax: SyntaxNode) -> Option<Self> {
19852 if Self::can_cast(syntax.kind()) {
19853 Some(Self { syntax })
19854 } else {
19855 None
19856 }
19857 }
19858 #[inline]
19859 fn syntax(&self) -> &SyntaxNode {
19860 &self.syntax
19861 }
19862}
19863impl AstNode for DropDomain {
19864 #[inline]
19865 fn can_cast(kind: SyntaxKind) -> bool {
19866 kind == SyntaxKind::DROP_DOMAIN
19867 }
19868 #[inline]
19869 fn cast(syntax: SyntaxNode) -> Option<Self> {
19870 if Self::can_cast(syntax.kind()) {
19871 Some(Self { syntax })
19872 } else {
19873 None
19874 }
19875 }
19876 #[inline]
19877 fn syntax(&self) -> &SyntaxNode {
19878 &self.syntax
19879 }
19880}
19881impl AstNode for DropEventTrigger {
19882 #[inline]
19883 fn can_cast(kind: SyntaxKind) -> bool {
19884 kind == SyntaxKind::DROP_EVENT_TRIGGER
19885 }
19886 #[inline]
19887 fn cast(syntax: SyntaxNode) -> Option<Self> {
19888 if Self::can_cast(syntax.kind()) {
19889 Some(Self { syntax })
19890 } else {
19891 None
19892 }
19893 }
19894 #[inline]
19895 fn syntax(&self) -> &SyntaxNode {
19896 &self.syntax
19897 }
19898}
19899impl AstNode for DropExpression {
19900 #[inline]
19901 fn can_cast(kind: SyntaxKind) -> bool {
19902 kind == SyntaxKind::DROP_EXPRESSION
19903 }
19904 #[inline]
19905 fn cast(syntax: SyntaxNode) -> Option<Self> {
19906 if Self::can_cast(syntax.kind()) {
19907 Some(Self { syntax })
19908 } else {
19909 None
19910 }
19911 }
19912 #[inline]
19913 fn syntax(&self) -> &SyntaxNode {
19914 &self.syntax
19915 }
19916}
19917impl AstNode for DropExtension {
19918 #[inline]
19919 fn can_cast(kind: SyntaxKind) -> bool {
19920 kind == SyntaxKind::DROP_EXTENSION
19921 }
19922 #[inline]
19923 fn cast(syntax: SyntaxNode) -> Option<Self> {
19924 if Self::can_cast(syntax.kind()) {
19925 Some(Self { syntax })
19926 } else {
19927 None
19928 }
19929 }
19930 #[inline]
19931 fn syntax(&self) -> &SyntaxNode {
19932 &self.syntax
19933 }
19934}
19935impl AstNode for DropForeignDataWrapper {
19936 #[inline]
19937 fn can_cast(kind: SyntaxKind) -> bool {
19938 kind == SyntaxKind::DROP_FOREIGN_DATA_WRAPPER
19939 }
19940 #[inline]
19941 fn cast(syntax: SyntaxNode) -> Option<Self> {
19942 if Self::can_cast(syntax.kind()) {
19943 Some(Self { syntax })
19944 } else {
19945 None
19946 }
19947 }
19948 #[inline]
19949 fn syntax(&self) -> &SyntaxNode {
19950 &self.syntax
19951 }
19952}
19953impl AstNode for DropForeignTable {
19954 #[inline]
19955 fn can_cast(kind: SyntaxKind) -> bool {
19956 kind == SyntaxKind::DROP_FOREIGN_TABLE
19957 }
19958 #[inline]
19959 fn cast(syntax: SyntaxNode) -> Option<Self> {
19960 if Self::can_cast(syntax.kind()) {
19961 Some(Self { syntax })
19962 } else {
19963 None
19964 }
19965 }
19966 #[inline]
19967 fn syntax(&self) -> &SyntaxNode {
19968 &self.syntax
19969 }
19970}
19971impl AstNode for DropFunction {
19972 #[inline]
19973 fn can_cast(kind: SyntaxKind) -> bool {
19974 kind == SyntaxKind::DROP_FUNCTION
19975 }
19976 #[inline]
19977 fn cast(syntax: SyntaxNode) -> Option<Self> {
19978 if Self::can_cast(syntax.kind()) {
19979 Some(Self { syntax })
19980 } else {
19981 None
19982 }
19983 }
19984 #[inline]
19985 fn syntax(&self) -> &SyntaxNode {
19986 &self.syntax
19987 }
19988}
19989impl AstNode for DropGroup {
19990 #[inline]
19991 fn can_cast(kind: SyntaxKind) -> bool {
19992 kind == SyntaxKind::DROP_GROUP
19993 }
19994 #[inline]
19995 fn cast(syntax: SyntaxNode) -> Option<Self> {
19996 if Self::can_cast(syntax.kind()) {
19997 Some(Self { syntax })
19998 } else {
19999 None
20000 }
20001 }
20002 #[inline]
20003 fn syntax(&self) -> &SyntaxNode {
20004 &self.syntax
20005 }
20006}
20007impl AstNode for DropIdentity {
20008 #[inline]
20009 fn can_cast(kind: SyntaxKind) -> bool {
20010 kind == SyntaxKind::DROP_IDENTITY
20011 }
20012 #[inline]
20013 fn cast(syntax: SyntaxNode) -> Option<Self> {
20014 if Self::can_cast(syntax.kind()) {
20015 Some(Self { syntax })
20016 } else {
20017 None
20018 }
20019 }
20020 #[inline]
20021 fn syntax(&self) -> &SyntaxNode {
20022 &self.syntax
20023 }
20024}
20025impl AstNode for DropIndex {
20026 #[inline]
20027 fn can_cast(kind: SyntaxKind) -> bool {
20028 kind == SyntaxKind::DROP_INDEX
20029 }
20030 #[inline]
20031 fn cast(syntax: SyntaxNode) -> Option<Self> {
20032 if Self::can_cast(syntax.kind()) {
20033 Some(Self { syntax })
20034 } else {
20035 None
20036 }
20037 }
20038 #[inline]
20039 fn syntax(&self) -> &SyntaxNode {
20040 &self.syntax
20041 }
20042}
20043impl AstNode for DropLanguage {
20044 #[inline]
20045 fn can_cast(kind: SyntaxKind) -> bool {
20046 kind == SyntaxKind::DROP_LANGUAGE
20047 }
20048 #[inline]
20049 fn cast(syntax: SyntaxNode) -> Option<Self> {
20050 if Self::can_cast(syntax.kind()) {
20051 Some(Self { syntax })
20052 } else {
20053 None
20054 }
20055 }
20056 #[inline]
20057 fn syntax(&self) -> &SyntaxNode {
20058 &self.syntax
20059 }
20060}
20061impl AstNode for DropMaterializedView {
20062 #[inline]
20063 fn can_cast(kind: SyntaxKind) -> bool {
20064 kind == SyntaxKind::DROP_MATERIALIZED_VIEW
20065 }
20066 #[inline]
20067 fn cast(syntax: SyntaxNode) -> Option<Self> {
20068 if Self::can_cast(syntax.kind()) {
20069 Some(Self { syntax })
20070 } else {
20071 None
20072 }
20073 }
20074 #[inline]
20075 fn syntax(&self) -> &SyntaxNode {
20076 &self.syntax
20077 }
20078}
20079impl AstNode for DropNotNull {
20080 #[inline]
20081 fn can_cast(kind: SyntaxKind) -> bool {
20082 kind == SyntaxKind::DROP_NOT_NULL
20083 }
20084 #[inline]
20085 fn cast(syntax: SyntaxNode) -> Option<Self> {
20086 if Self::can_cast(syntax.kind()) {
20087 Some(Self { syntax })
20088 } else {
20089 None
20090 }
20091 }
20092 #[inline]
20093 fn syntax(&self) -> &SyntaxNode {
20094 &self.syntax
20095 }
20096}
20097impl AstNode for DropOpClassOption {
20098 #[inline]
20099 fn can_cast(kind: SyntaxKind) -> bool {
20100 kind == SyntaxKind::DROP_OP_CLASS_OPTION
20101 }
20102 #[inline]
20103 fn cast(syntax: SyntaxNode) -> Option<Self> {
20104 if Self::can_cast(syntax.kind()) {
20105 Some(Self { syntax })
20106 } else {
20107 None
20108 }
20109 }
20110 #[inline]
20111 fn syntax(&self) -> &SyntaxNode {
20112 &self.syntax
20113 }
20114}
20115impl AstNode for DropOpClassOptionList {
20116 #[inline]
20117 fn can_cast(kind: SyntaxKind) -> bool {
20118 kind == SyntaxKind::DROP_OP_CLASS_OPTION_LIST
20119 }
20120 #[inline]
20121 fn cast(syntax: SyntaxNode) -> Option<Self> {
20122 if Self::can_cast(syntax.kind()) {
20123 Some(Self { syntax })
20124 } else {
20125 None
20126 }
20127 }
20128 #[inline]
20129 fn syntax(&self) -> &SyntaxNode {
20130 &self.syntax
20131 }
20132}
20133impl AstNode for DropOpClassOptions {
20134 #[inline]
20135 fn can_cast(kind: SyntaxKind) -> bool {
20136 kind == SyntaxKind::DROP_OP_CLASS_OPTIONS
20137 }
20138 #[inline]
20139 fn cast(syntax: SyntaxNode) -> Option<Self> {
20140 if Self::can_cast(syntax.kind()) {
20141 Some(Self { syntax })
20142 } else {
20143 None
20144 }
20145 }
20146 #[inline]
20147 fn syntax(&self) -> &SyntaxNode {
20148 &self.syntax
20149 }
20150}
20151impl AstNode for DropOperator {
20152 #[inline]
20153 fn can_cast(kind: SyntaxKind) -> bool {
20154 kind == SyntaxKind::DROP_OPERATOR
20155 }
20156 #[inline]
20157 fn cast(syntax: SyntaxNode) -> Option<Self> {
20158 if Self::can_cast(syntax.kind()) {
20159 Some(Self { syntax })
20160 } else {
20161 None
20162 }
20163 }
20164 #[inline]
20165 fn syntax(&self) -> &SyntaxNode {
20166 &self.syntax
20167 }
20168}
20169impl AstNode for DropOperatorClass {
20170 #[inline]
20171 fn can_cast(kind: SyntaxKind) -> bool {
20172 kind == SyntaxKind::DROP_OPERATOR_CLASS
20173 }
20174 #[inline]
20175 fn cast(syntax: SyntaxNode) -> Option<Self> {
20176 if Self::can_cast(syntax.kind()) {
20177 Some(Self { syntax })
20178 } else {
20179 None
20180 }
20181 }
20182 #[inline]
20183 fn syntax(&self) -> &SyntaxNode {
20184 &self.syntax
20185 }
20186}
20187impl AstNode for DropOperatorFamily {
20188 #[inline]
20189 fn can_cast(kind: SyntaxKind) -> bool {
20190 kind == SyntaxKind::DROP_OPERATOR_FAMILY
20191 }
20192 #[inline]
20193 fn cast(syntax: SyntaxNode) -> Option<Self> {
20194 if Self::can_cast(syntax.kind()) {
20195 Some(Self { syntax })
20196 } else {
20197 None
20198 }
20199 }
20200 #[inline]
20201 fn syntax(&self) -> &SyntaxNode {
20202 &self.syntax
20203 }
20204}
20205impl AstNode for DropOwned {
20206 #[inline]
20207 fn can_cast(kind: SyntaxKind) -> bool {
20208 kind == SyntaxKind::DROP_OWNED
20209 }
20210 #[inline]
20211 fn cast(syntax: SyntaxNode) -> Option<Self> {
20212 if Self::can_cast(syntax.kind()) {
20213 Some(Self { syntax })
20214 } else {
20215 None
20216 }
20217 }
20218 #[inline]
20219 fn syntax(&self) -> &SyntaxNode {
20220 &self.syntax
20221 }
20222}
20223impl AstNode for DropPolicy {
20224 #[inline]
20225 fn can_cast(kind: SyntaxKind) -> bool {
20226 kind == SyntaxKind::DROP_POLICY
20227 }
20228 #[inline]
20229 fn cast(syntax: SyntaxNode) -> Option<Self> {
20230 if Self::can_cast(syntax.kind()) {
20231 Some(Self { syntax })
20232 } else {
20233 None
20234 }
20235 }
20236 #[inline]
20237 fn syntax(&self) -> &SyntaxNode {
20238 &self.syntax
20239 }
20240}
20241impl AstNode for DropProcedure {
20242 #[inline]
20243 fn can_cast(kind: SyntaxKind) -> bool {
20244 kind == SyntaxKind::DROP_PROCEDURE
20245 }
20246 #[inline]
20247 fn cast(syntax: SyntaxNode) -> Option<Self> {
20248 if Self::can_cast(syntax.kind()) {
20249 Some(Self { syntax })
20250 } else {
20251 None
20252 }
20253 }
20254 #[inline]
20255 fn syntax(&self) -> &SyntaxNode {
20256 &self.syntax
20257 }
20258}
20259impl AstNode for DropPublication {
20260 #[inline]
20261 fn can_cast(kind: SyntaxKind) -> bool {
20262 kind == SyntaxKind::DROP_PUBLICATION
20263 }
20264 #[inline]
20265 fn cast(syntax: SyntaxNode) -> Option<Self> {
20266 if Self::can_cast(syntax.kind()) {
20267 Some(Self { syntax })
20268 } else {
20269 None
20270 }
20271 }
20272 #[inline]
20273 fn syntax(&self) -> &SyntaxNode {
20274 &self.syntax
20275 }
20276}
20277impl AstNode for DropRole {
20278 #[inline]
20279 fn can_cast(kind: SyntaxKind) -> bool {
20280 kind == SyntaxKind::DROP_ROLE
20281 }
20282 #[inline]
20283 fn cast(syntax: SyntaxNode) -> Option<Self> {
20284 if Self::can_cast(syntax.kind()) {
20285 Some(Self { syntax })
20286 } else {
20287 None
20288 }
20289 }
20290 #[inline]
20291 fn syntax(&self) -> &SyntaxNode {
20292 &self.syntax
20293 }
20294}
20295impl AstNode for DropRoutine {
20296 #[inline]
20297 fn can_cast(kind: SyntaxKind) -> bool {
20298 kind == SyntaxKind::DROP_ROUTINE
20299 }
20300 #[inline]
20301 fn cast(syntax: SyntaxNode) -> Option<Self> {
20302 if Self::can_cast(syntax.kind()) {
20303 Some(Self { syntax })
20304 } else {
20305 None
20306 }
20307 }
20308 #[inline]
20309 fn syntax(&self) -> &SyntaxNode {
20310 &self.syntax
20311 }
20312}
20313impl AstNode for DropRule {
20314 #[inline]
20315 fn can_cast(kind: SyntaxKind) -> bool {
20316 kind == SyntaxKind::DROP_RULE
20317 }
20318 #[inline]
20319 fn cast(syntax: SyntaxNode) -> Option<Self> {
20320 if Self::can_cast(syntax.kind()) {
20321 Some(Self { syntax })
20322 } else {
20323 None
20324 }
20325 }
20326 #[inline]
20327 fn syntax(&self) -> &SyntaxNode {
20328 &self.syntax
20329 }
20330}
20331impl AstNode for DropSchema {
20332 #[inline]
20333 fn can_cast(kind: SyntaxKind) -> bool {
20334 kind == SyntaxKind::DROP_SCHEMA
20335 }
20336 #[inline]
20337 fn cast(syntax: SyntaxNode) -> Option<Self> {
20338 if Self::can_cast(syntax.kind()) {
20339 Some(Self { syntax })
20340 } else {
20341 None
20342 }
20343 }
20344 #[inline]
20345 fn syntax(&self) -> &SyntaxNode {
20346 &self.syntax
20347 }
20348}
20349impl AstNode for DropSequence {
20350 #[inline]
20351 fn can_cast(kind: SyntaxKind) -> bool {
20352 kind == SyntaxKind::DROP_SEQUENCE
20353 }
20354 #[inline]
20355 fn cast(syntax: SyntaxNode) -> Option<Self> {
20356 if Self::can_cast(syntax.kind()) {
20357 Some(Self { syntax })
20358 } else {
20359 None
20360 }
20361 }
20362 #[inline]
20363 fn syntax(&self) -> &SyntaxNode {
20364 &self.syntax
20365 }
20366}
20367impl AstNode for DropServer {
20368 #[inline]
20369 fn can_cast(kind: SyntaxKind) -> bool {
20370 kind == SyntaxKind::DROP_SERVER
20371 }
20372 #[inline]
20373 fn cast(syntax: SyntaxNode) -> Option<Self> {
20374 if Self::can_cast(syntax.kind()) {
20375 Some(Self { syntax })
20376 } else {
20377 None
20378 }
20379 }
20380 #[inline]
20381 fn syntax(&self) -> &SyntaxNode {
20382 &self.syntax
20383 }
20384}
20385impl AstNode for DropStatistics {
20386 #[inline]
20387 fn can_cast(kind: SyntaxKind) -> bool {
20388 kind == SyntaxKind::DROP_STATISTICS
20389 }
20390 #[inline]
20391 fn cast(syntax: SyntaxNode) -> Option<Self> {
20392 if Self::can_cast(syntax.kind()) {
20393 Some(Self { syntax })
20394 } else {
20395 None
20396 }
20397 }
20398 #[inline]
20399 fn syntax(&self) -> &SyntaxNode {
20400 &self.syntax
20401 }
20402}
20403impl AstNode for DropSubscription {
20404 #[inline]
20405 fn can_cast(kind: SyntaxKind) -> bool {
20406 kind == SyntaxKind::DROP_SUBSCRIPTION
20407 }
20408 #[inline]
20409 fn cast(syntax: SyntaxNode) -> Option<Self> {
20410 if Self::can_cast(syntax.kind()) {
20411 Some(Self { syntax })
20412 } else {
20413 None
20414 }
20415 }
20416 #[inline]
20417 fn syntax(&self) -> &SyntaxNode {
20418 &self.syntax
20419 }
20420}
20421impl AstNode for DropTable {
20422 #[inline]
20423 fn can_cast(kind: SyntaxKind) -> bool {
20424 kind == SyntaxKind::DROP_TABLE
20425 }
20426 #[inline]
20427 fn cast(syntax: SyntaxNode) -> Option<Self> {
20428 if Self::can_cast(syntax.kind()) {
20429 Some(Self { syntax })
20430 } else {
20431 None
20432 }
20433 }
20434 #[inline]
20435 fn syntax(&self) -> &SyntaxNode {
20436 &self.syntax
20437 }
20438}
20439impl AstNode for DropTablespace {
20440 #[inline]
20441 fn can_cast(kind: SyntaxKind) -> bool {
20442 kind == SyntaxKind::DROP_TABLESPACE
20443 }
20444 #[inline]
20445 fn cast(syntax: SyntaxNode) -> Option<Self> {
20446 if Self::can_cast(syntax.kind()) {
20447 Some(Self { syntax })
20448 } else {
20449 None
20450 }
20451 }
20452 #[inline]
20453 fn syntax(&self) -> &SyntaxNode {
20454 &self.syntax
20455 }
20456}
20457impl AstNode for DropTextSearchConfig {
20458 #[inline]
20459 fn can_cast(kind: SyntaxKind) -> bool {
20460 kind == SyntaxKind::DROP_TEXT_SEARCH_CONFIG
20461 }
20462 #[inline]
20463 fn cast(syntax: SyntaxNode) -> Option<Self> {
20464 if Self::can_cast(syntax.kind()) {
20465 Some(Self { syntax })
20466 } else {
20467 None
20468 }
20469 }
20470 #[inline]
20471 fn syntax(&self) -> &SyntaxNode {
20472 &self.syntax
20473 }
20474}
20475impl AstNode for DropTextSearchDict {
20476 #[inline]
20477 fn can_cast(kind: SyntaxKind) -> bool {
20478 kind == SyntaxKind::DROP_TEXT_SEARCH_DICT
20479 }
20480 #[inline]
20481 fn cast(syntax: SyntaxNode) -> Option<Self> {
20482 if Self::can_cast(syntax.kind()) {
20483 Some(Self { syntax })
20484 } else {
20485 None
20486 }
20487 }
20488 #[inline]
20489 fn syntax(&self) -> &SyntaxNode {
20490 &self.syntax
20491 }
20492}
20493impl AstNode for DropTextSearchParser {
20494 #[inline]
20495 fn can_cast(kind: SyntaxKind) -> bool {
20496 kind == SyntaxKind::DROP_TEXT_SEARCH_PARSER
20497 }
20498 #[inline]
20499 fn cast(syntax: SyntaxNode) -> Option<Self> {
20500 if Self::can_cast(syntax.kind()) {
20501 Some(Self { syntax })
20502 } else {
20503 None
20504 }
20505 }
20506 #[inline]
20507 fn syntax(&self) -> &SyntaxNode {
20508 &self.syntax
20509 }
20510}
20511impl AstNode for DropTextSearchTemplate {
20512 #[inline]
20513 fn can_cast(kind: SyntaxKind) -> bool {
20514 kind == SyntaxKind::DROP_TEXT_SEARCH_TEMPLATE
20515 }
20516 #[inline]
20517 fn cast(syntax: SyntaxNode) -> Option<Self> {
20518 if Self::can_cast(syntax.kind()) {
20519 Some(Self { syntax })
20520 } else {
20521 None
20522 }
20523 }
20524 #[inline]
20525 fn syntax(&self) -> &SyntaxNode {
20526 &self.syntax
20527 }
20528}
20529impl AstNode for DropTransform {
20530 #[inline]
20531 fn can_cast(kind: SyntaxKind) -> bool {
20532 kind == SyntaxKind::DROP_TRANSFORM
20533 }
20534 #[inline]
20535 fn cast(syntax: SyntaxNode) -> Option<Self> {
20536 if Self::can_cast(syntax.kind()) {
20537 Some(Self { syntax })
20538 } else {
20539 None
20540 }
20541 }
20542 #[inline]
20543 fn syntax(&self) -> &SyntaxNode {
20544 &self.syntax
20545 }
20546}
20547impl AstNode for DropTrigger {
20548 #[inline]
20549 fn can_cast(kind: SyntaxKind) -> bool {
20550 kind == SyntaxKind::DROP_TRIGGER
20551 }
20552 #[inline]
20553 fn cast(syntax: SyntaxNode) -> Option<Self> {
20554 if Self::can_cast(syntax.kind()) {
20555 Some(Self { syntax })
20556 } else {
20557 None
20558 }
20559 }
20560 #[inline]
20561 fn syntax(&self) -> &SyntaxNode {
20562 &self.syntax
20563 }
20564}
20565impl AstNode for DropType {
20566 #[inline]
20567 fn can_cast(kind: SyntaxKind) -> bool {
20568 kind == SyntaxKind::DROP_TYPE
20569 }
20570 #[inline]
20571 fn cast(syntax: SyntaxNode) -> Option<Self> {
20572 if Self::can_cast(syntax.kind()) {
20573 Some(Self { syntax })
20574 } else {
20575 None
20576 }
20577 }
20578 #[inline]
20579 fn syntax(&self) -> &SyntaxNode {
20580 &self.syntax
20581 }
20582}
20583impl AstNode for DropUser {
20584 #[inline]
20585 fn can_cast(kind: SyntaxKind) -> bool {
20586 kind == SyntaxKind::DROP_USER
20587 }
20588 #[inline]
20589 fn cast(syntax: SyntaxNode) -> Option<Self> {
20590 if Self::can_cast(syntax.kind()) {
20591 Some(Self { syntax })
20592 } else {
20593 None
20594 }
20595 }
20596 #[inline]
20597 fn syntax(&self) -> &SyntaxNode {
20598 &self.syntax
20599 }
20600}
20601impl AstNode for DropUserMapping {
20602 #[inline]
20603 fn can_cast(kind: SyntaxKind) -> bool {
20604 kind == SyntaxKind::DROP_USER_MAPPING
20605 }
20606 #[inline]
20607 fn cast(syntax: SyntaxNode) -> Option<Self> {
20608 if Self::can_cast(syntax.kind()) {
20609 Some(Self { syntax })
20610 } else {
20611 None
20612 }
20613 }
20614 #[inline]
20615 fn syntax(&self) -> &SyntaxNode {
20616 &self.syntax
20617 }
20618}
20619impl AstNode for DropView {
20620 #[inline]
20621 fn can_cast(kind: SyntaxKind) -> bool {
20622 kind == SyntaxKind::DROP_VIEW
20623 }
20624 #[inline]
20625 fn cast(syntax: SyntaxNode) -> Option<Self> {
20626 if Self::can_cast(syntax.kind()) {
20627 Some(Self { syntax })
20628 } else {
20629 None
20630 }
20631 }
20632 #[inline]
20633 fn syntax(&self) -> &SyntaxNode {
20634 &self.syntax
20635 }
20636}
20637impl AstNode for ElseClause {
20638 #[inline]
20639 fn can_cast(kind: SyntaxKind) -> bool {
20640 kind == SyntaxKind::ELSE_CLAUSE
20641 }
20642 #[inline]
20643 fn cast(syntax: SyntaxNode) -> Option<Self> {
20644 if Self::can_cast(syntax.kind()) {
20645 Some(Self { syntax })
20646 } else {
20647 None
20648 }
20649 }
20650 #[inline]
20651 fn syntax(&self) -> &SyntaxNode {
20652 &self.syntax
20653 }
20654}
20655impl AstNode for EnableAlwaysRule {
20656 #[inline]
20657 fn can_cast(kind: SyntaxKind) -> bool {
20658 kind == SyntaxKind::ENABLE_ALWAYS_RULE
20659 }
20660 #[inline]
20661 fn cast(syntax: SyntaxNode) -> Option<Self> {
20662 if Self::can_cast(syntax.kind()) {
20663 Some(Self { syntax })
20664 } else {
20665 None
20666 }
20667 }
20668 #[inline]
20669 fn syntax(&self) -> &SyntaxNode {
20670 &self.syntax
20671 }
20672}
20673impl AstNode for EnableAlwaysTrigger {
20674 #[inline]
20675 fn can_cast(kind: SyntaxKind) -> bool {
20676 kind == SyntaxKind::ENABLE_ALWAYS_TRIGGER
20677 }
20678 #[inline]
20679 fn cast(syntax: SyntaxNode) -> Option<Self> {
20680 if Self::can_cast(syntax.kind()) {
20681 Some(Self { syntax })
20682 } else {
20683 None
20684 }
20685 }
20686 #[inline]
20687 fn syntax(&self) -> &SyntaxNode {
20688 &self.syntax
20689 }
20690}
20691impl AstNode for EnableReplicaRule {
20692 #[inline]
20693 fn can_cast(kind: SyntaxKind) -> bool {
20694 kind == SyntaxKind::ENABLE_REPLICA_RULE
20695 }
20696 #[inline]
20697 fn cast(syntax: SyntaxNode) -> Option<Self> {
20698 if Self::can_cast(syntax.kind()) {
20699 Some(Self { syntax })
20700 } else {
20701 None
20702 }
20703 }
20704 #[inline]
20705 fn syntax(&self) -> &SyntaxNode {
20706 &self.syntax
20707 }
20708}
20709impl AstNode for EnableReplicaTrigger {
20710 #[inline]
20711 fn can_cast(kind: SyntaxKind) -> bool {
20712 kind == SyntaxKind::ENABLE_REPLICA_TRIGGER
20713 }
20714 #[inline]
20715 fn cast(syntax: SyntaxNode) -> Option<Self> {
20716 if Self::can_cast(syntax.kind()) {
20717 Some(Self { syntax })
20718 } else {
20719 None
20720 }
20721 }
20722 #[inline]
20723 fn syntax(&self) -> &SyntaxNode {
20724 &self.syntax
20725 }
20726}
20727impl AstNode for EnableRls {
20728 #[inline]
20729 fn can_cast(kind: SyntaxKind) -> bool {
20730 kind == SyntaxKind::ENABLE_RLS
20731 }
20732 #[inline]
20733 fn cast(syntax: SyntaxNode) -> Option<Self> {
20734 if Self::can_cast(syntax.kind()) {
20735 Some(Self { syntax })
20736 } else {
20737 None
20738 }
20739 }
20740 #[inline]
20741 fn syntax(&self) -> &SyntaxNode {
20742 &self.syntax
20743 }
20744}
20745impl AstNode for EnableRule {
20746 #[inline]
20747 fn can_cast(kind: SyntaxKind) -> bool {
20748 kind == SyntaxKind::ENABLE_RULE
20749 }
20750 #[inline]
20751 fn cast(syntax: SyntaxNode) -> Option<Self> {
20752 if Self::can_cast(syntax.kind()) {
20753 Some(Self { syntax })
20754 } else {
20755 None
20756 }
20757 }
20758 #[inline]
20759 fn syntax(&self) -> &SyntaxNode {
20760 &self.syntax
20761 }
20762}
20763impl AstNode for EnableTrigger {
20764 #[inline]
20765 fn can_cast(kind: SyntaxKind) -> bool {
20766 kind == SyntaxKind::ENABLE_TRIGGER
20767 }
20768 #[inline]
20769 fn cast(syntax: SyntaxNode) -> Option<Self> {
20770 if Self::can_cast(syntax.kind()) {
20771 Some(Self { syntax })
20772 } else {
20773 None
20774 }
20775 }
20776 #[inline]
20777 fn syntax(&self) -> &SyntaxNode {
20778 &self.syntax
20779 }
20780}
20781impl AstNode for Enforced {
20782 #[inline]
20783 fn can_cast(kind: SyntaxKind) -> bool {
20784 kind == SyntaxKind::ENFORCED
20785 }
20786 #[inline]
20787 fn cast(syntax: SyntaxNode) -> Option<Self> {
20788 if Self::can_cast(syntax.kind()) {
20789 Some(Self { syntax })
20790 } else {
20791 None
20792 }
20793 }
20794 #[inline]
20795 fn syntax(&self) -> &SyntaxNode {
20796 &self.syntax
20797 }
20798}
20799impl AstNode for EventTriggerWhen {
20800 #[inline]
20801 fn can_cast(kind: SyntaxKind) -> bool {
20802 kind == SyntaxKind::EVENT_TRIGGER_WHEN
20803 }
20804 #[inline]
20805 fn cast(syntax: SyntaxNode) -> Option<Self> {
20806 if Self::can_cast(syntax.kind()) {
20807 Some(Self { syntax })
20808 } else {
20809 None
20810 }
20811 }
20812 #[inline]
20813 fn syntax(&self) -> &SyntaxNode {
20814 &self.syntax
20815 }
20816}
20817impl AstNode for EventTriggerWhenClause {
20818 #[inline]
20819 fn can_cast(kind: SyntaxKind) -> bool {
20820 kind == SyntaxKind::EVENT_TRIGGER_WHEN_CLAUSE
20821 }
20822 #[inline]
20823 fn cast(syntax: SyntaxNode) -> Option<Self> {
20824 if Self::can_cast(syntax.kind()) {
20825 Some(Self { syntax })
20826 } else {
20827 None
20828 }
20829 }
20830 #[inline]
20831 fn syntax(&self) -> &SyntaxNode {
20832 &self.syntax
20833 }
20834}
20835impl AstNode for ExceptTables {
20836 #[inline]
20837 fn can_cast(kind: SyntaxKind) -> bool {
20838 kind == SyntaxKind::EXCEPT_TABLES
20839 }
20840 #[inline]
20841 fn cast(syntax: SyntaxNode) -> Option<Self> {
20842 if Self::can_cast(syntax.kind()) {
20843 Some(Self { syntax })
20844 } else {
20845 None
20846 }
20847 }
20848 #[inline]
20849 fn syntax(&self) -> &SyntaxNode {
20850 &self.syntax
20851 }
20852}
20853impl AstNode for ExcludeConstraint {
20854 #[inline]
20855 fn can_cast(kind: SyntaxKind) -> bool {
20856 kind == SyntaxKind::EXCLUDE_CONSTRAINT
20857 }
20858 #[inline]
20859 fn cast(syntax: SyntaxNode) -> Option<Self> {
20860 if Self::can_cast(syntax.kind()) {
20861 Some(Self { syntax })
20862 } else {
20863 None
20864 }
20865 }
20866 #[inline]
20867 fn syntax(&self) -> &SyntaxNode {
20868 &self.syntax
20869 }
20870}
20871impl AstNode for Execute {
20872 #[inline]
20873 fn can_cast(kind: SyntaxKind) -> bool {
20874 kind == SyntaxKind::EXECUTE
20875 }
20876 #[inline]
20877 fn cast(syntax: SyntaxNode) -> Option<Self> {
20878 if Self::can_cast(syntax.kind()) {
20879 Some(Self { syntax })
20880 } else {
20881 None
20882 }
20883 }
20884 #[inline]
20885 fn syntax(&self) -> &SyntaxNode {
20886 &self.syntax
20887 }
20888}
20889impl AstNode for ExistsFn {
20890 #[inline]
20891 fn can_cast(kind: SyntaxKind) -> bool {
20892 kind == SyntaxKind::EXISTS_FN
20893 }
20894 #[inline]
20895 fn cast(syntax: SyntaxNode) -> Option<Self> {
20896 if Self::can_cast(syntax.kind()) {
20897 Some(Self { syntax })
20898 } else {
20899 None
20900 }
20901 }
20902 #[inline]
20903 fn syntax(&self) -> &SyntaxNode {
20904 &self.syntax
20905 }
20906}
20907impl AstNode for Explain {
20908 #[inline]
20909 fn can_cast(kind: SyntaxKind) -> bool {
20910 kind == SyntaxKind::EXPLAIN
20911 }
20912 #[inline]
20913 fn cast(syntax: SyntaxNode) -> Option<Self> {
20914 if Self::can_cast(syntax.kind()) {
20915 Some(Self { syntax })
20916 } else {
20917 None
20918 }
20919 }
20920 #[inline]
20921 fn syntax(&self) -> &SyntaxNode {
20922 &self.syntax
20923 }
20924}
20925impl AstNode for ExprAsName {
20926 #[inline]
20927 fn can_cast(kind: SyntaxKind) -> bool {
20928 kind == SyntaxKind::EXPR_AS_NAME
20929 }
20930 #[inline]
20931 fn cast(syntax: SyntaxNode) -> Option<Self> {
20932 if Self::can_cast(syntax.kind()) {
20933 Some(Self { syntax })
20934 } else {
20935 None
20936 }
20937 }
20938 #[inline]
20939 fn syntax(&self) -> &SyntaxNode {
20940 &self.syntax
20941 }
20942}
20943impl AstNode for ExprType {
20944 #[inline]
20945 fn can_cast(kind: SyntaxKind) -> bool {
20946 kind == SyntaxKind::EXPR_TYPE
20947 }
20948 #[inline]
20949 fn cast(syntax: SyntaxNode) -> Option<Self> {
20950 if Self::can_cast(syntax.kind()) {
20951 Some(Self { syntax })
20952 } else {
20953 None
20954 }
20955 }
20956 #[inline]
20957 fn syntax(&self) -> &SyntaxNode {
20958 &self.syntax
20959 }
20960}
20961impl AstNode for ExtractFn {
20962 #[inline]
20963 fn can_cast(kind: SyntaxKind) -> bool {
20964 kind == SyntaxKind::EXTRACT_FN
20965 }
20966 #[inline]
20967 fn cast(syntax: SyntaxNode) -> Option<Self> {
20968 if Self::can_cast(syntax.kind()) {
20969 Some(Self { syntax })
20970 } else {
20971 None
20972 }
20973 }
20974 #[inline]
20975 fn syntax(&self) -> &SyntaxNode {
20976 &self.syntax
20977 }
20978}
20979impl AstNode for FatArrow {
20980 #[inline]
20981 fn can_cast(kind: SyntaxKind) -> bool {
20982 kind == SyntaxKind::FAT_ARROW
20983 }
20984 #[inline]
20985 fn cast(syntax: SyntaxNode) -> Option<Self> {
20986 if Self::can_cast(syntax.kind()) {
20987 Some(Self { syntax })
20988 } else {
20989 None
20990 }
20991 }
20992 #[inline]
20993 fn syntax(&self) -> &SyntaxNode {
20994 &self.syntax
20995 }
20996}
20997impl AstNode for FdwOption {
20998 #[inline]
20999 fn can_cast(kind: SyntaxKind) -> bool {
21000 kind == SyntaxKind::FDW_OPTION
21001 }
21002 #[inline]
21003 fn cast(syntax: SyntaxNode) -> Option<Self> {
21004 if Self::can_cast(syntax.kind()) {
21005 Some(Self { syntax })
21006 } else {
21007 None
21008 }
21009 }
21010 #[inline]
21011 fn syntax(&self) -> &SyntaxNode {
21012 &self.syntax
21013 }
21014}
21015impl AstNode for FdwOptionList {
21016 #[inline]
21017 fn can_cast(kind: SyntaxKind) -> bool {
21018 kind == SyntaxKind::FDW_OPTION_LIST
21019 }
21020 #[inline]
21021 fn cast(syntax: SyntaxNode) -> Option<Self> {
21022 if Self::can_cast(syntax.kind()) {
21023 Some(Self { syntax })
21024 } else {
21025 None
21026 }
21027 }
21028 #[inline]
21029 fn syntax(&self) -> &SyntaxNode {
21030 &self.syntax
21031 }
21032}
21033impl AstNode for Fetch {
21034 #[inline]
21035 fn can_cast(kind: SyntaxKind) -> bool {
21036 kind == SyntaxKind::FETCH
21037 }
21038 #[inline]
21039 fn cast(syntax: SyntaxNode) -> Option<Self> {
21040 if Self::can_cast(syntax.kind()) {
21041 Some(Self { syntax })
21042 } else {
21043 None
21044 }
21045 }
21046 #[inline]
21047 fn syntax(&self) -> &SyntaxNode {
21048 &self.syntax
21049 }
21050}
21051impl AstNode for FetchClause {
21052 #[inline]
21053 fn can_cast(kind: SyntaxKind) -> bool {
21054 kind == SyntaxKind::FETCH_CLAUSE
21055 }
21056 #[inline]
21057 fn cast(syntax: SyntaxNode) -> Option<Self> {
21058 if Self::can_cast(syntax.kind()) {
21059 Some(Self { syntax })
21060 } else {
21061 None
21062 }
21063 }
21064 #[inline]
21065 fn syntax(&self) -> &SyntaxNode {
21066 &self.syntax
21067 }
21068}
21069impl AstNode for FieldExpr {
21070 #[inline]
21071 fn can_cast(kind: SyntaxKind) -> bool {
21072 kind == SyntaxKind::FIELD_EXPR
21073 }
21074 #[inline]
21075 fn cast(syntax: SyntaxNode) -> Option<Self> {
21076 if Self::can_cast(syntax.kind()) {
21077 Some(Self { syntax })
21078 } else {
21079 None
21080 }
21081 }
21082 #[inline]
21083 fn syntax(&self) -> &SyntaxNode {
21084 &self.syntax
21085 }
21086}
21087impl AstNode for FilterClause {
21088 #[inline]
21089 fn can_cast(kind: SyntaxKind) -> bool {
21090 kind == SyntaxKind::FILTER_CLAUSE
21091 }
21092 #[inline]
21093 fn cast(syntax: SyntaxNode) -> Option<Self> {
21094 if Self::can_cast(syntax.kind()) {
21095 Some(Self { syntax })
21096 } else {
21097 None
21098 }
21099 }
21100 #[inline]
21101 fn syntax(&self) -> &SyntaxNode {
21102 &self.syntax
21103 }
21104}
21105impl AstNode for ForProvider {
21106 #[inline]
21107 fn can_cast(kind: SyntaxKind) -> bool {
21108 kind == SyntaxKind::FOR_PROVIDER
21109 }
21110 #[inline]
21111 fn cast(syntax: SyntaxNode) -> Option<Self> {
21112 if Self::can_cast(syntax.kind()) {
21113 Some(Self { syntax })
21114 } else {
21115 None
21116 }
21117 }
21118 #[inline]
21119 fn syntax(&self) -> &SyntaxNode {
21120 &self.syntax
21121 }
21122}
21123impl AstNode for ForceRls {
21124 #[inline]
21125 fn can_cast(kind: SyntaxKind) -> bool {
21126 kind == SyntaxKind::FORCE_RLS
21127 }
21128 #[inline]
21129 fn cast(syntax: SyntaxNode) -> Option<Self> {
21130 if Self::can_cast(syntax.kind()) {
21131 Some(Self { syntax })
21132 } else {
21133 None
21134 }
21135 }
21136 #[inline]
21137 fn syntax(&self) -> &SyntaxNode {
21138 &self.syntax
21139 }
21140}
21141impl AstNode for ForeignKeyConstraint {
21142 #[inline]
21143 fn can_cast(kind: SyntaxKind) -> bool {
21144 kind == SyntaxKind::FOREIGN_KEY_CONSTRAINT
21145 }
21146 #[inline]
21147 fn cast(syntax: SyntaxNode) -> Option<Self> {
21148 if Self::can_cast(syntax.kind()) {
21149 Some(Self { syntax })
21150 } else {
21151 None
21152 }
21153 }
21154 #[inline]
21155 fn syntax(&self) -> &SyntaxNode {
21156 &self.syntax
21157 }
21158}
21159impl AstNode for FrameClause {
21160 #[inline]
21161 fn can_cast(kind: SyntaxKind) -> bool {
21162 kind == SyntaxKind::FRAME_CLAUSE
21163 }
21164 #[inline]
21165 fn cast(syntax: SyntaxNode) -> Option<Self> {
21166 if Self::can_cast(syntax.kind()) {
21167 Some(Self { syntax })
21168 } else {
21169 None
21170 }
21171 }
21172 #[inline]
21173 fn syntax(&self) -> &SyntaxNode {
21174 &self.syntax
21175 }
21176}
21177impl AstNode for FromClause {
21178 #[inline]
21179 fn can_cast(kind: SyntaxKind) -> bool {
21180 kind == SyntaxKind::FROM_CLAUSE
21181 }
21182 #[inline]
21183 fn cast(syntax: SyntaxNode) -> Option<Self> {
21184 if Self::can_cast(syntax.kind()) {
21185 Some(Self { syntax })
21186 } else {
21187 None
21188 }
21189 }
21190 #[inline]
21191 fn syntax(&self) -> &SyntaxNode {
21192 &self.syntax
21193 }
21194}
21195impl AstNode for FromItem {
21196 #[inline]
21197 fn can_cast(kind: SyntaxKind) -> bool {
21198 kind == SyntaxKind::FROM_ITEM
21199 }
21200 #[inline]
21201 fn cast(syntax: SyntaxNode) -> Option<Self> {
21202 if Self::can_cast(syntax.kind()) {
21203 Some(Self { syntax })
21204 } else {
21205 None
21206 }
21207 }
21208 #[inline]
21209 fn syntax(&self) -> &SyntaxNode {
21210 &self.syntax
21211 }
21212}
21213impl AstNode for FromServer {
21214 #[inline]
21215 fn can_cast(kind: SyntaxKind) -> bool {
21216 kind == SyntaxKind::FROM_SERVER
21217 }
21218 #[inline]
21219 fn cast(syntax: SyntaxNode) -> Option<Self> {
21220 if Self::can_cast(syntax.kind()) {
21221 Some(Self { syntax })
21222 } else {
21223 None
21224 }
21225 }
21226 #[inline]
21227 fn syntax(&self) -> &SyntaxNode {
21228 &self.syntax
21229 }
21230}
21231impl AstNode for FromTable {
21232 #[inline]
21233 fn can_cast(kind: SyntaxKind) -> bool {
21234 kind == SyntaxKind::FROM_TABLE
21235 }
21236 #[inline]
21237 fn cast(syntax: SyntaxNode) -> Option<Self> {
21238 if Self::can_cast(syntax.kind()) {
21239 Some(Self { syntax })
21240 } else {
21241 None
21242 }
21243 }
21244 #[inline]
21245 fn syntax(&self) -> &SyntaxNode {
21246 &self.syntax
21247 }
21248}
21249impl AstNode for FuncOptionList {
21250 #[inline]
21251 fn can_cast(kind: SyntaxKind) -> bool {
21252 kind == SyntaxKind::FUNC_OPTION_LIST
21253 }
21254 #[inline]
21255 fn cast(syntax: SyntaxNode) -> Option<Self> {
21256 if Self::can_cast(syntax.kind()) {
21257 Some(Self { syntax })
21258 } else {
21259 None
21260 }
21261 }
21262 #[inline]
21263 fn syntax(&self) -> &SyntaxNode {
21264 &self.syntax
21265 }
21266}
21267impl AstNode for FunctionSig {
21268 #[inline]
21269 fn can_cast(kind: SyntaxKind) -> bool {
21270 kind == SyntaxKind::FUNCTION_SIG
21271 }
21272 #[inline]
21273 fn cast(syntax: SyntaxNode) -> Option<Self> {
21274 if Self::can_cast(syntax.kind()) {
21275 Some(Self { syntax })
21276 } else {
21277 None
21278 }
21279 }
21280 #[inline]
21281 fn syntax(&self) -> &SyntaxNode {
21282 &self.syntax
21283 }
21284}
21285impl AstNode for FunctionSigList {
21286 #[inline]
21287 fn can_cast(kind: SyntaxKind) -> bool {
21288 kind == SyntaxKind::FUNCTION_SIG_LIST
21289 }
21290 #[inline]
21291 fn cast(syntax: SyntaxNode) -> Option<Self> {
21292 if Self::can_cast(syntax.kind()) {
21293 Some(Self { syntax })
21294 } else {
21295 None
21296 }
21297 }
21298 #[inline]
21299 fn syntax(&self) -> &SyntaxNode {
21300 &self.syntax
21301 }
21302}
21303impl AstNode for GeneratedConstraint {
21304 #[inline]
21305 fn can_cast(kind: SyntaxKind) -> bool {
21306 kind == SyntaxKind::GENERATED_CONSTRAINT
21307 }
21308 #[inline]
21309 fn cast(syntax: SyntaxNode) -> Option<Self> {
21310 if Self::can_cast(syntax.kind()) {
21311 Some(Self { syntax })
21312 } else {
21313 None
21314 }
21315 }
21316 #[inline]
21317 fn syntax(&self) -> &SyntaxNode {
21318 &self.syntax
21319 }
21320}
21321impl AstNode for Grant {
21322 #[inline]
21323 fn can_cast(kind: SyntaxKind) -> bool {
21324 kind == SyntaxKind::GRANT
21325 }
21326 #[inline]
21327 fn cast(syntax: SyntaxNode) -> Option<Self> {
21328 if Self::can_cast(syntax.kind()) {
21329 Some(Self { syntax })
21330 } else {
21331 None
21332 }
21333 }
21334 #[inline]
21335 fn syntax(&self) -> &SyntaxNode {
21336 &self.syntax
21337 }
21338}
21339impl AstNode for GrantDefaultPrivileges {
21340 #[inline]
21341 fn can_cast(kind: SyntaxKind) -> bool {
21342 kind == SyntaxKind::GRANT_DEFAULT_PRIVILEGES
21343 }
21344 #[inline]
21345 fn cast(syntax: SyntaxNode) -> Option<Self> {
21346 if Self::can_cast(syntax.kind()) {
21347 Some(Self { syntax })
21348 } else {
21349 None
21350 }
21351 }
21352 #[inline]
21353 fn syntax(&self) -> &SyntaxNode {
21354 &self.syntax
21355 }
21356}
21357impl AstNode for GroupByClause {
21358 #[inline]
21359 fn can_cast(kind: SyntaxKind) -> bool {
21360 kind == SyntaxKind::GROUP_BY_CLAUSE
21361 }
21362 #[inline]
21363 fn cast(syntax: SyntaxNode) -> Option<Self> {
21364 if Self::can_cast(syntax.kind()) {
21365 Some(Self { syntax })
21366 } else {
21367 None
21368 }
21369 }
21370 #[inline]
21371 fn syntax(&self) -> &SyntaxNode {
21372 &self.syntax
21373 }
21374}
21375impl AstNode for GroupByList {
21376 #[inline]
21377 fn can_cast(kind: SyntaxKind) -> bool {
21378 kind == SyntaxKind::GROUP_BY_LIST
21379 }
21380 #[inline]
21381 fn cast(syntax: SyntaxNode) -> Option<Self> {
21382 if Self::can_cast(syntax.kind()) {
21383 Some(Self { syntax })
21384 } else {
21385 None
21386 }
21387 }
21388 #[inline]
21389 fn syntax(&self) -> &SyntaxNode {
21390 &self.syntax
21391 }
21392}
21393impl AstNode for GroupingCube {
21394 #[inline]
21395 fn can_cast(kind: SyntaxKind) -> bool {
21396 kind == SyntaxKind::GROUPING_CUBE
21397 }
21398 #[inline]
21399 fn cast(syntax: SyntaxNode) -> Option<Self> {
21400 if Self::can_cast(syntax.kind()) {
21401 Some(Self { syntax })
21402 } else {
21403 None
21404 }
21405 }
21406 #[inline]
21407 fn syntax(&self) -> &SyntaxNode {
21408 &self.syntax
21409 }
21410}
21411impl AstNode for GroupingExpr {
21412 #[inline]
21413 fn can_cast(kind: SyntaxKind) -> bool {
21414 kind == SyntaxKind::GROUPING_EXPR
21415 }
21416 #[inline]
21417 fn cast(syntax: SyntaxNode) -> Option<Self> {
21418 if Self::can_cast(syntax.kind()) {
21419 Some(Self { syntax })
21420 } else {
21421 None
21422 }
21423 }
21424 #[inline]
21425 fn syntax(&self) -> &SyntaxNode {
21426 &self.syntax
21427 }
21428}
21429impl AstNode for GroupingRollup {
21430 #[inline]
21431 fn can_cast(kind: SyntaxKind) -> bool {
21432 kind == SyntaxKind::GROUPING_ROLLUP
21433 }
21434 #[inline]
21435 fn cast(syntax: SyntaxNode) -> Option<Self> {
21436 if Self::can_cast(syntax.kind()) {
21437 Some(Self { syntax })
21438 } else {
21439 None
21440 }
21441 }
21442 #[inline]
21443 fn syntax(&self) -> &SyntaxNode {
21444 &self.syntax
21445 }
21446}
21447impl AstNode for GroupingSets {
21448 #[inline]
21449 fn can_cast(kind: SyntaxKind) -> bool {
21450 kind == SyntaxKind::GROUPING_SETS
21451 }
21452 #[inline]
21453 fn cast(syntax: SyntaxNode) -> Option<Self> {
21454 if Self::can_cast(syntax.kind()) {
21455 Some(Self { syntax })
21456 } else {
21457 None
21458 }
21459 }
21460 #[inline]
21461 fn syntax(&self) -> &SyntaxNode {
21462 &self.syntax
21463 }
21464}
21465impl AstNode for Gteq {
21466 #[inline]
21467 fn can_cast(kind: SyntaxKind) -> bool {
21468 kind == SyntaxKind::GTEQ
21469 }
21470 #[inline]
21471 fn cast(syntax: SyntaxNode) -> Option<Self> {
21472 if Self::can_cast(syntax.kind()) {
21473 Some(Self { syntax })
21474 } else {
21475 None
21476 }
21477 }
21478 #[inline]
21479 fn syntax(&self) -> &SyntaxNode {
21480 &self.syntax
21481 }
21482}
21483impl AstNode for HandlerClause {
21484 #[inline]
21485 fn can_cast(kind: SyntaxKind) -> bool {
21486 kind == SyntaxKind::HANDLER_CLAUSE
21487 }
21488 #[inline]
21489 fn cast(syntax: SyntaxNode) -> Option<Self> {
21490 if Self::can_cast(syntax.kind()) {
21491 Some(Self { syntax })
21492 } else {
21493 None
21494 }
21495 }
21496 #[inline]
21497 fn syntax(&self) -> &SyntaxNode {
21498 &self.syntax
21499 }
21500}
21501impl AstNode for HavingClause {
21502 #[inline]
21503 fn can_cast(kind: SyntaxKind) -> bool {
21504 kind == SyntaxKind::HAVING_CLAUSE
21505 }
21506 #[inline]
21507 fn cast(syntax: SyntaxNode) -> Option<Self> {
21508 if Self::can_cast(syntax.kind()) {
21509 Some(Self { syntax })
21510 } else {
21511 None
21512 }
21513 }
21514 #[inline]
21515 fn syntax(&self) -> &SyntaxNode {
21516 &self.syntax
21517 }
21518}
21519impl AstNode for IfExists {
21520 #[inline]
21521 fn can_cast(kind: SyntaxKind) -> bool {
21522 kind == SyntaxKind::IF_EXISTS
21523 }
21524 #[inline]
21525 fn cast(syntax: SyntaxNode) -> Option<Self> {
21526 if Self::can_cast(syntax.kind()) {
21527 Some(Self { syntax })
21528 } else {
21529 None
21530 }
21531 }
21532 #[inline]
21533 fn syntax(&self) -> &SyntaxNode {
21534 &self.syntax
21535 }
21536}
21537impl AstNode for IfNotExists {
21538 #[inline]
21539 fn can_cast(kind: SyntaxKind) -> bool {
21540 kind == SyntaxKind::IF_NOT_EXISTS
21541 }
21542 #[inline]
21543 fn cast(syntax: SyntaxNode) -> Option<Self> {
21544 if Self::can_cast(syntax.kind()) {
21545 Some(Self { syntax })
21546 } else {
21547 None
21548 }
21549 }
21550 #[inline]
21551 fn syntax(&self) -> &SyntaxNode {
21552 &self.syntax
21553 }
21554}
21555impl AstNode for ImportForeignSchema {
21556 #[inline]
21557 fn can_cast(kind: SyntaxKind) -> bool {
21558 kind == SyntaxKind::IMPORT_FOREIGN_SCHEMA
21559 }
21560 #[inline]
21561 fn cast(syntax: SyntaxNode) -> Option<Self> {
21562 if Self::can_cast(syntax.kind()) {
21563 Some(Self { syntax })
21564 } else {
21565 None
21566 }
21567 }
21568 #[inline]
21569 fn syntax(&self) -> &SyntaxNode {
21570 &self.syntax
21571 }
21572}
21573impl AstNode for IndexExpr {
21574 #[inline]
21575 fn can_cast(kind: SyntaxKind) -> bool {
21576 kind == SyntaxKind::INDEX_EXPR
21577 }
21578 #[inline]
21579 fn cast(syntax: SyntaxNode) -> Option<Self> {
21580 if Self::can_cast(syntax.kind()) {
21581 Some(Self { syntax })
21582 } else {
21583 None
21584 }
21585 }
21586 #[inline]
21587 fn syntax(&self) -> &SyntaxNode {
21588 &self.syntax
21589 }
21590}
21591impl AstNode for Inherit {
21592 #[inline]
21593 fn can_cast(kind: SyntaxKind) -> bool {
21594 kind == SyntaxKind::INHERIT
21595 }
21596 #[inline]
21597 fn cast(syntax: SyntaxNode) -> Option<Self> {
21598 if Self::can_cast(syntax.kind()) {
21599 Some(Self { syntax })
21600 } else {
21601 None
21602 }
21603 }
21604 #[inline]
21605 fn syntax(&self) -> &SyntaxNode {
21606 &self.syntax
21607 }
21608}
21609impl AstNode for InheritTable {
21610 #[inline]
21611 fn can_cast(kind: SyntaxKind) -> bool {
21612 kind == SyntaxKind::INHERIT_TABLE
21613 }
21614 #[inline]
21615 fn cast(syntax: SyntaxNode) -> Option<Self> {
21616 if Self::can_cast(syntax.kind()) {
21617 Some(Self { syntax })
21618 } else {
21619 None
21620 }
21621 }
21622 #[inline]
21623 fn syntax(&self) -> &SyntaxNode {
21624 &self.syntax
21625 }
21626}
21627impl AstNode for Inherits {
21628 #[inline]
21629 fn can_cast(kind: SyntaxKind) -> bool {
21630 kind == SyntaxKind::INHERITS
21631 }
21632 #[inline]
21633 fn cast(syntax: SyntaxNode) -> Option<Self> {
21634 if Self::can_cast(syntax.kind()) {
21635 Some(Self { syntax })
21636 } else {
21637 None
21638 }
21639 }
21640 #[inline]
21641 fn syntax(&self) -> &SyntaxNode {
21642 &self.syntax
21643 }
21644}
21645impl AstNode for InitiallyDeferredConstraintOption {
21646 #[inline]
21647 fn can_cast(kind: SyntaxKind) -> bool {
21648 kind == SyntaxKind::INITIALLY_DEFERRED_CONSTRAINT_OPTION
21649 }
21650 #[inline]
21651 fn cast(syntax: SyntaxNode) -> Option<Self> {
21652 if Self::can_cast(syntax.kind()) {
21653 Some(Self { syntax })
21654 } else {
21655 None
21656 }
21657 }
21658 #[inline]
21659 fn syntax(&self) -> &SyntaxNode {
21660 &self.syntax
21661 }
21662}
21663impl AstNode for InitiallyImmediateConstraintOption {
21664 #[inline]
21665 fn can_cast(kind: SyntaxKind) -> bool {
21666 kind == SyntaxKind::INITIALLY_IMMEDIATE_CONSTRAINT_OPTION
21667 }
21668 #[inline]
21669 fn cast(syntax: SyntaxNode) -> Option<Self> {
21670 if Self::can_cast(syntax.kind()) {
21671 Some(Self { syntax })
21672 } else {
21673 None
21674 }
21675 }
21676 #[inline]
21677 fn syntax(&self) -> &SyntaxNode {
21678 &self.syntax
21679 }
21680}
21681impl AstNode for Insert {
21682 #[inline]
21683 fn can_cast(kind: SyntaxKind) -> bool {
21684 kind == SyntaxKind::INSERT
21685 }
21686 #[inline]
21687 fn cast(syntax: SyntaxNode) -> Option<Self> {
21688 if Self::can_cast(syntax.kind()) {
21689 Some(Self { syntax })
21690 } else {
21691 None
21692 }
21693 }
21694 #[inline]
21695 fn syntax(&self) -> &SyntaxNode {
21696 &self.syntax
21697 }
21698}
21699impl AstNode for IntervalType {
21700 #[inline]
21701 fn can_cast(kind: SyntaxKind) -> bool {
21702 kind == SyntaxKind::INTERVAL_TYPE
21703 }
21704 #[inline]
21705 fn cast(syntax: SyntaxNode) -> Option<Self> {
21706 if Self::can_cast(syntax.kind()) {
21707 Some(Self { syntax })
21708 } else {
21709 None
21710 }
21711 }
21712 #[inline]
21713 fn syntax(&self) -> &SyntaxNode {
21714 &self.syntax
21715 }
21716}
21717impl AstNode for IntoClause {
21718 #[inline]
21719 fn can_cast(kind: SyntaxKind) -> bool {
21720 kind == SyntaxKind::INTO_CLAUSE
21721 }
21722 #[inline]
21723 fn cast(syntax: SyntaxNode) -> Option<Self> {
21724 if Self::can_cast(syntax.kind()) {
21725 Some(Self { syntax })
21726 } else {
21727 None
21728 }
21729 }
21730 #[inline]
21731 fn syntax(&self) -> &SyntaxNode {
21732 &self.syntax
21733 }
21734}
21735impl AstNode for IntoSchema {
21736 #[inline]
21737 fn can_cast(kind: SyntaxKind) -> bool {
21738 kind == SyntaxKind::INTO_SCHEMA
21739 }
21740 #[inline]
21741 fn cast(syntax: SyntaxNode) -> Option<Self> {
21742 if Self::can_cast(syntax.kind()) {
21743 Some(Self { syntax })
21744 } else {
21745 None
21746 }
21747 }
21748 #[inline]
21749 fn syntax(&self) -> &SyntaxNode {
21750 &self.syntax
21751 }
21752}
21753impl AstNode for IsDistinctFrom {
21754 #[inline]
21755 fn can_cast(kind: SyntaxKind) -> bool {
21756 kind == SyntaxKind::IS_DISTINCT_FROM
21757 }
21758 #[inline]
21759 fn cast(syntax: SyntaxNode) -> Option<Self> {
21760 if Self::can_cast(syntax.kind()) {
21761 Some(Self { syntax })
21762 } else {
21763 None
21764 }
21765 }
21766 #[inline]
21767 fn syntax(&self) -> &SyntaxNode {
21768 &self.syntax
21769 }
21770}
21771impl AstNode for IsJson {
21772 #[inline]
21773 fn can_cast(kind: SyntaxKind) -> bool {
21774 kind == SyntaxKind::IS_JSON
21775 }
21776 #[inline]
21777 fn cast(syntax: SyntaxNode) -> Option<Self> {
21778 if Self::can_cast(syntax.kind()) {
21779 Some(Self { syntax })
21780 } else {
21781 None
21782 }
21783 }
21784 #[inline]
21785 fn syntax(&self) -> &SyntaxNode {
21786 &self.syntax
21787 }
21788}
21789impl AstNode for IsJsonArray {
21790 #[inline]
21791 fn can_cast(kind: SyntaxKind) -> bool {
21792 kind == SyntaxKind::IS_JSON_ARRAY
21793 }
21794 #[inline]
21795 fn cast(syntax: SyntaxNode) -> Option<Self> {
21796 if Self::can_cast(syntax.kind()) {
21797 Some(Self { syntax })
21798 } else {
21799 None
21800 }
21801 }
21802 #[inline]
21803 fn syntax(&self) -> &SyntaxNode {
21804 &self.syntax
21805 }
21806}
21807impl AstNode for IsJsonObject {
21808 #[inline]
21809 fn can_cast(kind: SyntaxKind) -> bool {
21810 kind == SyntaxKind::IS_JSON_OBJECT
21811 }
21812 #[inline]
21813 fn cast(syntax: SyntaxNode) -> Option<Self> {
21814 if Self::can_cast(syntax.kind()) {
21815 Some(Self { syntax })
21816 } else {
21817 None
21818 }
21819 }
21820 #[inline]
21821 fn syntax(&self) -> &SyntaxNode {
21822 &self.syntax
21823 }
21824}
21825impl AstNode for IsJsonScalar {
21826 #[inline]
21827 fn can_cast(kind: SyntaxKind) -> bool {
21828 kind == SyntaxKind::IS_JSON_SCALAR
21829 }
21830 #[inline]
21831 fn cast(syntax: SyntaxNode) -> Option<Self> {
21832 if Self::can_cast(syntax.kind()) {
21833 Some(Self { syntax })
21834 } else {
21835 None
21836 }
21837 }
21838 #[inline]
21839 fn syntax(&self) -> &SyntaxNode {
21840 &self.syntax
21841 }
21842}
21843impl AstNode for IsJsonValue {
21844 #[inline]
21845 fn can_cast(kind: SyntaxKind) -> bool {
21846 kind == SyntaxKind::IS_JSON_VALUE
21847 }
21848 #[inline]
21849 fn cast(syntax: SyntaxNode) -> Option<Self> {
21850 if Self::can_cast(syntax.kind()) {
21851 Some(Self { syntax })
21852 } else {
21853 None
21854 }
21855 }
21856 #[inline]
21857 fn syntax(&self) -> &SyntaxNode {
21858 &self.syntax
21859 }
21860}
21861impl AstNode for IsNormalized {
21862 #[inline]
21863 fn can_cast(kind: SyntaxKind) -> bool {
21864 kind == SyntaxKind::IS_NORMALIZED
21865 }
21866 #[inline]
21867 fn cast(syntax: SyntaxNode) -> Option<Self> {
21868 if Self::can_cast(syntax.kind()) {
21869 Some(Self { syntax })
21870 } else {
21871 None
21872 }
21873 }
21874 #[inline]
21875 fn syntax(&self) -> &SyntaxNode {
21876 &self.syntax
21877 }
21878}
21879impl AstNode for IsNot {
21880 #[inline]
21881 fn can_cast(kind: SyntaxKind) -> bool {
21882 kind == SyntaxKind::IS_NOT
21883 }
21884 #[inline]
21885 fn cast(syntax: SyntaxNode) -> Option<Self> {
21886 if Self::can_cast(syntax.kind()) {
21887 Some(Self { syntax })
21888 } else {
21889 None
21890 }
21891 }
21892 #[inline]
21893 fn syntax(&self) -> &SyntaxNode {
21894 &self.syntax
21895 }
21896}
21897impl AstNode for IsNotDistinctFrom {
21898 #[inline]
21899 fn can_cast(kind: SyntaxKind) -> bool {
21900 kind == SyntaxKind::IS_NOT_DISTINCT_FROM
21901 }
21902 #[inline]
21903 fn cast(syntax: SyntaxNode) -> Option<Self> {
21904 if Self::can_cast(syntax.kind()) {
21905 Some(Self { syntax })
21906 } else {
21907 None
21908 }
21909 }
21910 #[inline]
21911 fn syntax(&self) -> &SyntaxNode {
21912 &self.syntax
21913 }
21914}
21915impl AstNode for IsNotJson {
21916 #[inline]
21917 fn can_cast(kind: SyntaxKind) -> bool {
21918 kind == SyntaxKind::IS_NOT_JSON
21919 }
21920 #[inline]
21921 fn cast(syntax: SyntaxNode) -> Option<Self> {
21922 if Self::can_cast(syntax.kind()) {
21923 Some(Self { syntax })
21924 } else {
21925 None
21926 }
21927 }
21928 #[inline]
21929 fn syntax(&self) -> &SyntaxNode {
21930 &self.syntax
21931 }
21932}
21933impl AstNode for IsNotJsonArray {
21934 #[inline]
21935 fn can_cast(kind: SyntaxKind) -> bool {
21936 kind == SyntaxKind::IS_NOT_JSON_ARRAY
21937 }
21938 #[inline]
21939 fn cast(syntax: SyntaxNode) -> Option<Self> {
21940 if Self::can_cast(syntax.kind()) {
21941 Some(Self { syntax })
21942 } else {
21943 None
21944 }
21945 }
21946 #[inline]
21947 fn syntax(&self) -> &SyntaxNode {
21948 &self.syntax
21949 }
21950}
21951impl AstNode for IsNotJsonObject {
21952 #[inline]
21953 fn can_cast(kind: SyntaxKind) -> bool {
21954 kind == SyntaxKind::IS_NOT_JSON_OBJECT
21955 }
21956 #[inline]
21957 fn cast(syntax: SyntaxNode) -> Option<Self> {
21958 if Self::can_cast(syntax.kind()) {
21959 Some(Self { syntax })
21960 } else {
21961 None
21962 }
21963 }
21964 #[inline]
21965 fn syntax(&self) -> &SyntaxNode {
21966 &self.syntax
21967 }
21968}
21969impl AstNode for IsNotJsonScalar {
21970 #[inline]
21971 fn can_cast(kind: SyntaxKind) -> bool {
21972 kind == SyntaxKind::IS_NOT_JSON_SCALAR
21973 }
21974 #[inline]
21975 fn cast(syntax: SyntaxNode) -> Option<Self> {
21976 if Self::can_cast(syntax.kind()) {
21977 Some(Self { syntax })
21978 } else {
21979 None
21980 }
21981 }
21982 #[inline]
21983 fn syntax(&self) -> &SyntaxNode {
21984 &self.syntax
21985 }
21986}
21987impl AstNode for IsNotJsonValue {
21988 #[inline]
21989 fn can_cast(kind: SyntaxKind) -> bool {
21990 kind == SyntaxKind::IS_NOT_JSON_VALUE
21991 }
21992 #[inline]
21993 fn cast(syntax: SyntaxNode) -> Option<Self> {
21994 if Self::can_cast(syntax.kind()) {
21995 Some(Self { syntax })
21996 } else {
21997 None
21998 }
21999 }
22000 #[inline]
22001 fn syntax(&self) -> &SyntaxNode {
22002 &self.syntax
22003 }
22004}
22005impl AstNode for IsNotNormalized {
22006 #[inline]
22007 fn can_cast(kind: SyntaxKind) -> bool {
22008 kind == SyntaxKind::IS_NOT_NORMALIZED
22009 }
22010 #[inline]
22011 fn cast(syntax: SyntaxNode) -> Option<Self> {
22012 if Self::can_cast(syntax.kind()) {
22013 Some(Self { syntax })
22014 } else {
22015 None
22016 }
22017 }
22018 #[inline]
22019 fn syntax(&self) -> &SyntaxNode {
22020 &self.syntax
22021 }
22022}
22023impl AstNode for Join {
22024 #[inline]
22025 fn can_cast(kind: SyntaxKind) -> bool {
22026 kind == SyntaxKind::JOIN
22027 }
22028 #[inline]
22029 fn cast(syntax: SyntaxNode) -> Option<Self> {
22030 if Self::can_cast(syntax.kind()) {
22031 Some(Self { syntax })
22032 } else {
22033 None
22034 }
22035 }
22036 #[inline]
22037 fn syntax(&self) -> &SyntaxNode {
22038 &self.syntax
22039 }
22040}
22041impl AstNode for JoinCross {
22042 #[inline]
22043 fn can_cast(kind: SyntaxKind) -> bool {
22044 kind == SyntaxKind::JOIN_CROSS
22045 }
22046 #[inline]
22047 fn cast(syntax: SyntaxNode) -> Option<Self> {
22048 if Self::can_cast(syntax.kind()) {
22049 Some(Self { syntax })
22050 } else {
22051 None
22052 }
22053 }
22054 #[inline]
22055 fn syntax(&self) -> &SyntaxNode {
22056 &self.syntax
22057 }
22058}
22059impl AstNode for JoinExpr {
22060 #[inline]
22061 fn can_cast(kind: SyntaxKind) -> bool {
22062 kind == SyntaxKind::JOIN_EXPR
22063 }
22064 #[inline]
22065 fn cast(syntax: SyntaxNode) -> Option<Self> {
22066 if Self::can_cast(syntax.kind()) {
22067 Some(Self { syntax })
22068 } else {
22069 None
22070 }
22071 }
22072 #[inline]
22073 fn syntax(&self) -> &SyntaxNode {
22074 &self.syntax
22075 }
22076}
22077impl AstNode for JoinFull {
22078 #[inline]
22079 fn can_cast(kind: SyntaxKind) -> bool {
22080 kind == SyntaxKind::JOIN_FULL
22081 }
22082 #[inline]
22083 fn cast(syntax: SyntaxNode) -> Option<Self> {
22084 if Self::can_cast(syntax.kind()) {
22085 Some(Self { syntax })
22086 } else {
22087 None
22088 }
22089 }
22090 #[inline]
22091 fn syntax(&self) -> &SyntaxNode {
22092 &self.syntax
22093 }
22094}
22095impl AstNode for JoinInner {
22096 #[inline]
22097 fn can_cast(kind: SyntaxKind) -> bool {
22098 kind == SyntaxKind::JOIN_INNER
22099 }
22100 #[inline]
22101 fn cast(syntax: SyntaxNode) -> Option<Self> {
22102 if Self::can_cast(syntax.kind()) {
22103 Some(Self { syntax })
22104 } else {
22105 None
22106 }
22107 }
22108 #[inline]
22109 fn syntax(&self) -> &SyntaxNode {
22110 &self.syntax
22111 }
22112}
22113impl AstNode for JoinLeft {
22114 #[inline]
22115 fn can_cast(kind: SyntaxKind) -> bool {
22116 kind == SyntaxKind::JOIN_LEFT
22117 }
22118 #[inline]
22119 fn cast(syntax: SyntaxNode) -> Option<Self> {
22120 if Self::can_cast(syntax.kind()) {
22121 Some(Self { syntax })
22122 } else {
22123 None
22124 }
22125 }
22126 #[inline]
22127 fn syntax(&self) -> &SyntaxNode {
22128 &self.syntax
22129 }
22130}
22131impl AstNode for JoinRight {
22132 #[inline]
22133 fn can_cast(kind: SyntaxKind) -> bool {
22134 kind == SyntaxKind::JOIN_RIGHT
22135 }
22136 #[inline]
22137 fn cast(syntax: SyntaxNode) -> Option<Self> {
22138 if Self::can_cast(syntax.kind()) {
22139 Some(Self { syntax })
22140 } else {
22141 None
22142 }
22143 }
22144 #[inline]
22145 fn syntax(&self) -> &SyntaxNode {
22146 &self.syntax
22147 }
22148}
22149impl AstNode for JoinUsingClause {
22150 #[inline]
22151 fn can_cast(kind: SyntaxKind) -> bool {
22152 kind == SyntaxKind::JOIN_USING_CLAUSE
22153 }
22154 #[inline]
22155 fn cast(syntax: SyntaxNode) -> Option<Self> {
22156 if Self::can_cast(syntax.kind()) {
22157 Some(Self { syntax })
22158 } else {
22159 None
22160 }
22161 }
22162 #[inline]
22163 fn syntax(&self) -> &SyntaxNode {
22164 &self.syntax
22165 }
22166}
22167impl AstNode for JsonArrayAggFn {
22168 #[inline]
22169 fn can_cast(kind: SyntaxKind) -> bool {
22170 kind == SyntaxKind::JSON_ARRAY_AGG_FN
22171 }
22172 #[inline]
22173 fn cast(syntax: SyntaxNode) -> Option<Self> {
22174 if Self::can_cast(syntax.kind()) {
22175 Some(Self { syntax })
22176 } else {
22177 None
22178 }
22179 }
22180 #[inline]
22181 fn syntax(&self) -> &SyntaxNode {
22182 &self.syntax
22183 }
22184}
22185impl AstNode for JsonArrayFn {
22186 #[inline]
22187 fn can_cast(kind: SyntaxKind) -> bool {
22188 kind == SyntaxKind::JSON_ARRAY_FN
22189 }
22190 #[inline]
22191 fn cast(syntax: SyntaxNode) -> Option<Self> {
22192 if Self::can_cast(syntax.kind()) {
22193 Some(Self { syntax })
22194 } else {
22195 None
22196 }
22197 }
22198 #[inline]
22199 fn syntax(&self) -> &SyntaxNode {
22200 &self.syntax
22201 }
22202}
22203impl AstNode for JsonBehaviorClause {
22204 #[inline]
22205 fn can_cast(kind: SyntaxKind) -> bool {
22206 kind == SyntaxKind::JSON_BEHAVIOR_CLAUSE
22207 }
22208 #[inline]
22209 fn cast(syntax: SyntaxNode) -> Option<Self> {
22210 if Self::can_cast(syntax.kind()) {
22211 Some(Self { syntax })
22212 } else {
22213 None
22214 }
22215 }
22216 #[inline]
22217 fn syntax(&self) -> &SyntaxNode {
22218 &self.syntax
22219 }
22220}
22221impl AstNode for JsonBehaviorDefault {
22222 #[inline]
22223 fn can_cast(kind: SyntaxKind) -> bool {
22224 kind == SyntaxKind::JSON_BEHAVIOR_DEFAULT
22225 }
22226 #[inline]
22227 fn cast(syntax: SyntaxNode) -> Option<Self> {
22228 if Self::can_cast(syntax.kind()) {
22229 Some(Self { syntax })
22230 } else {
22231 None
22232 }
22233 }
22234 #[inline]
22235 fn syntax(&self) -> &SyntaxNode {
22236 &self.syntax
22237 }
22238}
22239impl AstNode for JsonBehaviorEmptyArray {
22240 #[inline]
22241 fn can_cast(kind: SyntaxKind) -> bool {
22242 kind == SyntaxKind::JSON_BEHAVIOR_EMPTY_ARRAY
22243 }
22244 #[inline]
22245 fn cast(syntax: SyntaxNode) -> Option<Self> {
22246 if Self::can_cast(syntax.kind()) {
22247 Some(Self { syntax })
22248 } else {
22249 None
22250 }
22251 }
22252 #[inline]
22253 fn syntax(&self) -> &SyntaxNode {
22254 &self.syntax
22255 }
22256}
22257impl AstNode for JsonBehaviorEmptyObject {
22258 #[inline]
22259 fn can_cast(kind: SyntaxKind) -> bool {
22260 kind == SyntaxKind::JSON_BEHAVIOR_EMPTY_OBJECT
22261 }
22262 #[inline]
22263 fn cast(syntax: SyntaxNode) -> Option<Self> {
22264 if Self::can_cast(syntax.kind()) {
22265 Some(Self { syntax })
22266 } else {
22267 None
22268 }
22269 }
22270 #[inline]
22271 fn syntax(&self) -> &SyntaxNode {
22272 &self.syntax
22273 }
22274}
22275impl AstNode for JsonBehaviorError {
22276 #[inline]
22277 fn can_cast(kind: SyntaxKind) -> bool {
22278 kind == SyntaxKind::JSON_BEHAVIOR_ERROR
22279 }
22280 #[inline]
22281 fn cast(syntax: SyntaxNode) -> Option<Self> {
22282 if Self::can_cast(syntax.kind()) {
22283 Some(Self { syntax })
22284 } else {
22285 None
22286 }
22287 }
22288 #[inline]
22289 fn syntax(&self) -> &SyntaxNode {
22290 &self.syntax
22291 }
22292}
22293impl AstNode for JsonBehaviorFalse {
22294 #[inline]
22295 fn can_cast(kind: SyntaxKind) -> bool {
22296 kind == SyntaxKind::JSON_BEHAVIOR_FALSE
22297 }
22298 #[inline]
22299 fn cast(syntax: SyntaxNode) -> Option<Self> {
22300 if Self::can_cast(syntax.kind()) {
22301 Some(Self { syntax })
22302 } else {
22303 None
22304 }
22305 }
22306 #[inline]
22307 fn syntax(&self) -> &SyntaxNode {
22308 &self.syntax
22309 }
22310}
22311impl AstNode for JsonBehaviorNull {
22312 #[inline]
22313 fn can_cast(kind: SyntaxKind) -> bool {
22314 kind == SyntaxKind::JSON_BEHAVIOR_NULL
22315 }
22316 #[inline]
22317 fn cast(syntax: SyntaxNode) -> Option<Self> {
22318 if Self::can_cast(syntax.kind()) {
22319 Some(Self { syntax })
22320 } else {
22321 None
22322 }
22323 }
22324 #[inline]
22325 fn syntax(&self) -> &SyntaxNode {
22326 &self.syntax
22327 }
22328}
22329impl AstNode for JsonBehaviorTrue {
22330 #[inline]
22331 fn can_cast(kind: SyntaxKind) -> bool {
22332 kind == SyntaxKind::JSON_BEHAVIOR_TRUE
22333 }
22334 #[inline]
22335 fn cast(syntax: SyntaxNode) -> Option<Self> {
22336 if Self::can_cast(syntax.kind()) {
22337 Some(Self { syntax })
22338 } else {
22339 None
22340 }
22341 }
22342 #[inline]
22343 fn syntax(&self) -> &SyntaxNode {
22344 &self.syntax
22345 }
22346}
22347impl AstNode for JsonBehaviorUnknown {
22348 #[inline]
22349 fn can_cast(kind: SyntaxKind) -> bool {
22350 kind == SyntaxKind::JSON_BEHAVIOR_UNKNOWN
22351 }
22352 #[inline]
22353 fn cast(syntax: SyntaxNode) -> Option<Self> {
22354 if Self::can_cast(syntax.kind()) {
22355 Some(Self { syntax })
22356 } else {
22357 None
22358 }
22359 }
22360 #[inline]
22361 fn syntax(&self) -> &SyntaxNode {
22362 &self.syntax
22363 }
22364}
22365impl AstNode for JsonEncodingClause {
22366 #[inline]
22367 fn can_cast(kind: SyntaxKind) -> bool {
22368 kind == SyntaxKind::JSON_ENCODING_CLAUSE
22369 }
22370 #[inline]
22371 fn cast(syntax: SyntaxNode) -> Option<Self> {
22372 if Self::can_cast(syntax.kind()) {
22373 Some(Self { syntax })
22374 } else {
22375 None
22376 }
22377 }
22378 #[inline]
22379 fn syntax(&self) -> &SyntaxNode {
22380 &self.syntax
22381 }
22382}
22383impl AstNode for JsonExistsFn {
22384 #[inline]
22385 fn can_cast(kind: SyntaxKind) -> bool {
22386 kind == SyntaxKind::JSON_EXISTS_FN
22387 }
22388 #[inline]
22389 fn cast(syntax: SyntaxNode) -> Option<Self> {
22390 if Self::can_cast(syntax.kind()) {
22391 Some(Self { syntax })
22392 } else {
22393 None
22394 }
22395 }
22396 #[inline]
22397 fn syntax(&self) -> &SyntaxNode {
22398 &self.syntax
22399 }
22400}
22401impl AstNode for JsonExprFormat {
22402 #[inline]
22403 fn can_cast(kind: SyntaxKind) -> bool {
22404 kind == SyntaxKind::JSON_EXPR_FORMAT
22405 }
22406 #[inline]
22407 fn cast(syntax: SyntaxNode) -> Option<Self> {
22408 if Self::can_cast(syntax.kind()) {
22409 Some(Self { syntax })
22410 } else {
22411 None
22412 }
22413 }
22414 #[inline]
22415 fn syntax(&self) -> &SyntaxNode {
22416 &self.syntax
22417 }
22418}
22419impl AstNode for JsonFn {
22420 #[inline]
22421 fn can_cast(kind: SyntaxKind) -> bool {
22422 kind == SyntaxKind::JSON_FN
22423 }
22424 #[inline]
22425 fn cast(syntax: SyntaxNode) -> Option<Self> {
22426 if Self::can_cast(syntax.kind()) {
22427 Some(Self { syntax })
22428 } else {
22429 None
22430 }
22431 }
22432 #[inline]
22433 fn syntax(&self) -> &SyntaxNode {
22434 &self.syntax
22435 }
22436}
22437impl AstNode for JsonFormatClause {
22438 #[inline]
22439 fn can_cast(kind: SyntaxKind) -> bool {
22440 kind == SyntaxKind::JSON_FORMAT_CLAUSE
22441 }
22442 #[inline]
22443 fn cast(syntax: SyntaxNode) -> Option<Self> {
22444 if Self::can_cast(syntax.kind()) {
22445 Some(Self { syntax })
22446 } else {
22447 None
22448 }
22449 }
22450 #[inline]
22451 fn syntax(&self) -> &SyntaxNode {
22452 &self.syntax
22453 }
22454}
22455impl AstNode for JsonKeyValue {
22456 #[inline]
22457 fn can_cast(kind: SyntaxKind) -> bool {
22458 kind == SyntaxKind::JSON_KEY_VALUE
22459 }
22460 #[inline]
22461 fn cast(syntax: SyntaxNode) -> Option<Self> {
22462 if Self::can_cast(syntax.kind()) {
22463 Some(Self { syntax })
22464 } else {
22465 None
22466 }
22467 }
22468 #[inline]
22469 fn syntax(&self) -> &SyntaxNode {
22470 &self.syntax
22471 }
22472}
22473impl AstNode for JsonKeysUniqueClause {
22474 #[inline]
22475 fn can_cast(kind: SyntaxKind) -> bool {
22476 kind == SyntaxKind::JSON_KEYS_UNIQUE_CLAUSE
22477 }
22478 #[inline]
22479 fn cast(syntax: SyntaxNode) -> Option<Self> {
22480 if Self::can_cast(syntax.kind()) {
22481 Some(Self { syntax })
22482 } else {
22483 None
22484 }
22485 }
22486 #[inline]
22487 fn syntax(&self) -> &SyntaxNode {
22488 &self.syntax
22489 }
22490}
22491impl AstNode for JsonNullClause {
22492 #[inline]
22493 fn can_cast(kind: SyntaxKind) -> bool {
22494 kind == SyntaxKind::JSON_NULL_CLAUSE
22495 }
22496 #[inline]
22497 fn cast(syntax: SyntaxNode) -> Option<Self> {
22498 if Self::can_cast(syntax.kind()) {
22499 Some(Self { syntax })
22500 } else {
22501 None
22502 }
22503 }
22504 #[inline]
22505 fn syntax(&self) -> &SyntaxNode {
22506 &self.syntax
22507 }
22508}
22509impl AstNode for JsonObjectAggFn {
22510 #[inline]
22511 fn can_cast(kind: SyntaxKind) -> bool {
22512 kind == SyntaxKind::JSON_OBJECT_AGG_FN
22513 }
22514 #[inline]
22515 fn cast(syntax: SyntaxNode) -> Option<Self> {
22516 if Self::can_cast(syntax.kind()) {
22517 Some(Self { syntax })
22518 } else {
22519 None
22520 }
22521 }
22522 #[inline]
22523 fn syntax(&self) -> &SyntaxNode {
22524 &self.syntax
22525 }
22526}
22527impl AstNode for JsonObjectFn {
22528 #[inline]
22529 fn can_cast(kind: SyntaxKind) -> bool {
22530 kind == SyntaxKind::JSON_OBJECT_FN
22531 }
22532 #[inline]
22533 fn cast(syntax: SyntaxNode) -> Option<Self> {
22534 if Self::can_cast(syntax.kind()) {
22535 Some(Self { syntax })
22536 } else {
22537 None
22538 }
22539 }
22540 #[inline]
22541 fn syntax(&self) -> &SyntaxNode {
22542 &self.syntax
22543 }
22544}
22545impl AstNode for JsonOnEmptyClause {
22546 #[inline]
22547 fn can_cast(kind: SyntaxKind) -> bool {
22548 kind == SyntaxKind::JSON_ON_EMPTY_CLAUSE
22549 }
22550 #[inline]
22551 fn cast(syntax: SyntaxNode) -> Option<Self> {
22552 if Self::can_cast(syntax.kind()) {
22553 Some(Self { syntax })
22554 } else {
22555 None
22556 }
22557 }
22558 #[inline]
22559 fn syntax(&self) -> &SyntaxNode {
22560 &self.syntax
22561 }
22562}
22563impl AstNode for JsonOnErrorClause {
22564 #[inline]
22565 fn can_cast(kind: SyntaxKind) -> bool {
22566 kind == SyntaxKind::JSON_ON_ERROR_CLAUSE
22567 }
22568 #[inline]
22569 fn cast(syntax: SyntaxNode) -> Option<Self> {
22570 if Self::can_cast(syntax.kind()) {
22571 Some(Self { syntax })
22572 } else {
22573 None
22574 }
22575 }
22576 #[inline]
22577 fn syntax(&self) -> &SyntaxNode {
22578 &self.syntax
22579 }
22580}
22581impl AstNode for JsonPassingArg {
22582 #[inline]
22583 fn can_cast(kind: SyntaxKind) -> bool {
22584 kind == SyntaxKind::JSON_PASSING_ARG
22585 }
22586 #[inline]
22587 fn cast(syntax: SyntaxNode) -> Option<Self> {
22588 if Self::can_cast(syntax.kind()) {
22589 Some(Self { syntax })
22590 } else {
22591 None
22592 }
22593 }
22594 #[inline]
22595 fn syntax(&self) -> &SyntaxNode {
22596 &self.syntax
22597 }
22598}
22599impl AstNode for JsonPassingClause {
22600 #[inline]
22601 fn can_cast(kind: SyntaxKind) -> bool {
22602 kind == SyntaxKind::JSON_PASSING_CLAUSE
22603 }
22604 #[inline]
22605 fn cast(syntax: SyntaxNode) -> Option<Self> {
22606 if Self::can_cast(syntax.kind()) {
22607 Some(Self { syntax })
22608 } else {
22609 None
22610 }
22611 }
22612 #[inline]
22613 fn syntax(&self) -> &SyntaxNode {
22614 &self.syntax
22615 }
22616}
22617impl AstNode for JsonPathClause {
22618 #[inline]
22619 fn can_cast(kind: SyntaxKind) -> bool {
22620 kind == SyntaxKind::JSON_PATH_CLAUSE
22621 }
22622 #[inline]
22623 fn cast(syntax: SyntaxNode) -> Option<Self> {
22624 if Self::can_cast(syntax.kind()) {
22625 Some(Self { syntax })
22626 } else {
22627 None
22628 }
22629 }
22630 #[inline]
22631 fn syntax(&self) -> &SyntaxNode {
22632 &self.syntax
22633 }
22634}
22635impl AstNode for JsonQueryFn {
22636 #[inline]
22637 fn can_cast(kind: SyntaxKind) -> bool {
22638 kind == SyntaxKind::JSON_QUERY_FN
22639 }
22640 #[inline]
22641 fn cast(syntax: SyntaxNode) -> Option<Self> {
22642 if Self::can_cast(syntax.kind()) {
22643 Some(Self { syntax })
22644 } else {
22645 None
22646 }
22647 }
22648 #[inline]
22649 fn syntax(&self) -> &SyntaxNode {
22650 &self.syntax
22651 }
22652}
22653impl AstNode for JsonQuotesClause {
22654 #[inline]
22655 fn can_cast(kind: SyntaxKind) -> bool {
22656 kind == SyntaxKind::JSON_QUOTES_CLAUSE
22657 }
22658 #[inline]
22659 fn cast(syntax: SyntaxNode) -> Option<Self> {
22660 if Self::can_cast(syntax.kind()) {
22661 Some(Self { syntax })
22662 } else {
22663 None
22664 }
22665 }
22666 #[inline]
22667 fn syntax(&self) -> &SyntaxNode {
22668 &self.syntax
22669 }
22670}
22671impl AstNode for JsonReturningClause {
22672 #[inline]
22673 fn can_cast(kind: SyntaxKind) -> bool {
22674 kind == SyntaxKind::JSON_RETURNING_CLAUSE
22675 }
22676 #[inline]
22677 fn cast(syntax: SyntaxNode) -> Option<Self> {
22678 if Self::can_cast(syntax.kind()) {
22679 Some(Self { syntax })
22680 } else {
22681 None
22682 }
22683 }
22684 #[inline]
22685 fn syntax(&self) -> &SyntaxNode {
22686 &self.syntax
22687 }
22688}
22689impl AstNode for JsonScalarFn {
22690 #[inline]
22691 fn can_cast(kind: SyntaxKind) -> bool {
22692 kind == SyntaxKind::JSON_SCALAR_FN
22693 }
22694 #[inline]
22695 fn cast(syntax: SyntaxNode) -> Option<Self> {
22696 if Self::can_cast(syntax.kind()) {
22697 Some(Self { syntax })
22698 } else {
22699 None
22700 }
22701 }
22702 #[inline]
22703 fn syntax(&self) -> &SyntaxNode {
22704 &self.syntax
22705 }
22706}
22707impl AstNode for JsonSelectFormat {
22708 #[inline]
22709 fn can_cast(kind: SyntaxKind) -> bool {
22710 kind == SyntaxKind::JSON_SELECT_FORMAT
22711 }
22712 #[inline]
22713 fn cast(syntax: SyntaxNode) -> Option<Self> {
22714 if Self::can_cast(syntax.kind()) {
22715 Some(Self { syntax })
22716 } else {
22717 None
22718 }
22719 }
22720 #[inline]
22721 fn syntax(&self) -> &SyntaxNode {
22722 &self.syntax
22723 }
22724}
22725impl AstNode for JsonSerializeFn {
22726 #[inline]
22727 fn can_cast(kind: SyntaxKind) -> bool {
22728 kind == SyntaxKind::JSON_SERIALIZE_FN
22729 }
22730 #[inline]
22731 fn cast(syntax: SyntaxNode) -> Option<Self> {
22732 if Self::can_cast(syntax.kind()) {
22733 Some(Self { syntax })
22734 } else {
22735 None
22736 }
22737 }
22738 #[inline]
22739 fn syntax(&self) -> &SyntaxNode {
22740 &self.syntax
22741 }
22742}
22743impl AstNode for JsonTable {
22744 #[inline]
22745 fn can_cast(kind: SyntaxKind) -> bool {
22746 kind == SyntaxKind::JSON_TABLE
22747 }
22748 #[inline]
22749 fn cast(syntax: SyntaxNode) -> Option<Self> {
22750 if Self::can_cast(syntax.kind()) {
22751 Some(Self { syntax })
22752 } else {
22753 None
22754 }
22755 }
22756 #[inline]
22757 fn syntax(&self) -> &SyntaxNode {
22758 &self.syntax
22759 }
22760}
22761impl AstNode for JsonTableColumn {
22762 #[inline]
22763 fn can_cast(kind: SyntaxKind) -> bool {
22764 kind == SyntaxKind::JSON_TABLE_COLUMN
22765 }
22766 #[inline]
22767 fn cast(syntax: SyntaxNode) -> Option<Self> {
22768 if Self::can_cast(syntax.kind()) {
22769 Some(Self { syntax })
22770 } else {
22771 None
22772 }
22773 }
22774 #[inline]
22775 fn syntax(&self) -> &SyntaxNode {
22776 &self.syntax
22777 }
22778}
22779impl AstNode for JsonTableColumnList {
22780 #[inline]
22781 fn can_cast(kind: SyntaxKind) -> bool {
22782 kind == SyntaxKind::JSON_TABLE_COLUMN_LIST
22783 }
22784 #[inline]
22785 fn cast(syntax: SyntaxNode) -> Option<Self> {
22786 if Self::can_cast(syntax.kind()) {
22787 Some(Self { syntax })
22788 } else {
22789 None
22790 }
22791 }
22792 #[inline]
22793 fn syntax(&self) -> &SyntaxNode {
22794 &self.syntax
22795 }
22796}
22797impl AstNode for JsonValueExpr {
22798 #[inline]
22799 fn can_cast(kind: SyntaxKind) -> bool {
22800 kind == SyntaxKind::JSON_VALUE_EXPR
22801 }
22802 #[inline]
22803 fn cast(syntax: SyntaxNode) -> Option<Self> {
22804 if Self::can_cast(syntax.kind()) {
22805 Some(Self { syntax })
22806 } else {
22807 None
22808 }
22809 }
22810 #[inline]
22811 fn syntax(&self) -> &SyntaxNode {
22812 &self.syntax
22813 }
22814}
22815impl AstNode for JsonValueFn {
22816 #[inline]
22817 fn can_cast(kind: SyntaxKind) -> bool {
22818 kind == SyntaxKind::JSON_VALUE_FN
22819 }
22820 #[inline]
22821 fn cast(syntax: SyntaxNode) -> Option<Self> {
22822 if Self::can_cast(syntax.kind()) {
22823 Some(Self { syntax })
22824 } else {
22825 None
22826 }
22827 }
22828 #[inline]
22829 fn syntax(&self) -> &SyntaxNode {
22830 &self.syntax
22831 }
22832}
22833impl AstNode for JsonWrapperBehaviorClause {
22834 #[inline]
22835 fn can_cast(kind: SyntaxKind) -> bool {
22836 kind == SyntaxKind::JSON_WRAPPER_BEHAVIOR_CLAUSE
22837 }
22838 #[inline]
22839 fn cast(syntax: SyntaxNode) -> Option<Self> {
22840 if Self::can_cast(syntax.kind()) {
22841 Some(Self { syntax })
22842 } else {
22843 None
22844 }
22845 }
22846 #[inline]
22847 fn syntax(&self) -> &SyntaxNode {
22848 &self.syntax
22849 }
22850}
22851impl AstNode for LanguageFuncOption {
22852 #[inline]
22853 fn can_cast(kind: SyntaxKind) -> bool {
22854 kind == SyntaxKind::LANGUAGE_FUNC_OPTION
22855 }
22856 #[inline]
22857 fn cast(syntax: SyntaxNode) -> Option<Self> {
22858 if Self::can_cast(syntax.kind()) {
22859 Some(Self { syntax })
22860 } else {
22861 None
22862 }
22863 }
22864 #[inline]
22865 fn syntax(&self) -> &SyntaxNode {
22866 &self.syntax
22867 }
22868}
22869impl AstNode for LeakproofFuncOption {
22870 #[inline]
22871 fn can_cast(kind: SyntaxKind) -> bool {
22872 kind == SyntaxKind::LEAKPROOF_FUNC_OPTION
22873 }
22874 #[inline]
22875 fn cast(syntax: SyntaxNode) -> Option<Self> {
22876 if Self::can_cast(syntax.kind()) {
22877 Some(Self { syntax })
22878 } else {
22879 None
22880 }
22881 }
22882 #[inline]
22883 fn syntax(&self) -> &SyntaxNode {
22884 &self.syntax
22885 }
22886}
22887impl AstNode for LikeClause {
22888 #[inline]
22889 fn can_cast(kind: SyntaxKind) -> bool {
22890 kind == SyntaxKind::LIKE_CLAUSE
22891 }
22892 #[inline]
22893 fn cast(syntax: SyntaxNode) -> Option<Self> {
22894 if Self::can_cast(syntax.kind()) {
22895 Some(Self { syntax })
22896 } else {
22897 None
22898 }
22899 }
22900 #[inline]
22901 fn syntax(&self) -> &SyntaxNode {
22902 &self.syntax
22903 }
22904}
22905impl AstNode for LikeOption {
22906 #[inline]
22907 fn can_cast(kind: SyntaxKind) -> bool {
22908 kind == SyntaxKind::LIKE_OPTION
22909 }
22910 #[inline]
22911 fn cast(syntax: SyntaxNode) -> Option<Self> {
22912 if Self::can_cast(syntax.kind()) {
22913 Some(Self { syntax })
22914 } else {
22915 None
22916 }
22917 }
22918 #[inline]
22919 fn syntax(&self) -> &SyntaxNode {
22920 &self.syntax
22921 }
22922}
22923impl AstNode for LimitClause {
22924 #[inline]
22925 fn can_cast(kind: SyntaxKind) -> bool {
22926 kind == SyntaxKind::LIMIT_CLAUSE
22927 }
22928 #[inline]
22929 fn cast(syntax: SyntaxNode) -> Option<Self> {
22930 if Self::can_cast(syntax.kind()) {
22931 Some(Self { syntax })
22932 } else {
22933 None
22934 }
22935 }
22936 #[inline]
22937 fn syntax(&self) -> &SyntaxNode {
22938 &self.syntax
22939 }
22940}
22941impl AstNode for LimitToTables {
22942 #[inline]
22943 fn can_cast(kind: SyntaxKind) -> bool {
22944 kind == SyntaxKind::LIMIT_TO_TABLES
22945 }
22946 #[inline]
22947 fn cast(syntax: SyntaxNode) -> Option<Self> {
22948 if Self::can_cast(syntax.kind()) {
22949 Some(Self { syntax })
22950 } else {
22951 None
22952 }
22953 }
22954 #[inline]
22955 fn syntax(&self) -> &SyntaxNode {
22956 &self.syntax
22957 }
22958}
22959impl AstNode for Listen {
22960 #[inline]
22961 fn can_cast(kind: SyntaxKind) -> bool {
22962 kind == SyntaxKind::LISTEN
22963 }
22964 #[inline]
22965 fn cast(syntax: SyntaxNode) -> Option<Self> {
22966 if Self::can_cast(syntax.kind()) {
22967 Some(Self { syntax })
22968 } else {
22969 None
22970 }
22971 }
22972 #[inline]
22973 fn syntax(&self) -> &SyntaxNode {
22974 &self.syntax
22975 }
22976}
22977impl AstNode for Literal {
22978 #[inline]
22979 fn can_cast(kind: SyntaxKind) -> bool {
22980 kind == SyntaxKind::LITERAL
22981 }
22982 #[inline]
22983 fn cast(syntax: SyntaxNode) -> Option<Self> {
22984 if Self::can_cast(syntax.kind()) {
22985 Some(Self { syntax })
22986 } else {
22987 None
22988 }
22989 }
22990 #[inline]
22991 fn syntax(&self) -> &SyntaxNode {
22992 &self.syntax
22993 }
22994}
22995impl AstNode for Load {
22996 #[inline]
22997 fn can_cast(kind: SyntaxKind) -> bool {
22998 kind == SyntaxKind::LOAD
22999 }
23000 #[inline]
23001 fn cast(syntax: SyntaxNode) -> Option<Self> {
23002 if Self::can_cast(syntax.kind()) {
23003 Some(Self { syntax })
23004 } else {
23005 None
23006 }
23007 }
23008 #[inline]
23009 fn syntax(&self) -> &SyntaxNode {
23010 &self.syntax
23011 }
23012}
23013impl AstNode for Lock {
23014 #[inline]
23015 fn can_cast(kind: SyntaxKind) -> bool {
23016 kind == SyntaxKind::LOCK
23017 }
23018 #[inline]
23019 fn cast(syntax: SyntaxNode) -> Option<Self> {
23020 if Self::can_cast(syntax.kind()) {
23021 Some(Self { syntax })
23022 } else {
23023 None
23024 }
23025 }
23026 #[inline]
23027 fn syntax(&self) -> &SyntaxNode {
23028 &self.syntax
23029 }
23030}
23031impl AstNode for LockingClause {
23032 #[inline]
23033 fn can_cast(kind: SyntaxKind) -> bool {
23034 kind == SyntaxKind::LOCKING_CLAUSE
23035 }
23036 #[inline]
23037 fn cast(syntax: SyntaxNode) -> Option<Self> {
23038 if Self::can_cast(syntax.kind()) {
23039 Some(Self { syntax })
23040 } else {
23041 None
23042 }
23043 }
23044 #[inline]
23045 fn syntax(&self) -> &SyntaxNode {
23046 &self.syntax
23047 }
23048}
23049impl AstNode for Lteq {
23050 #[inline]
23051 fn can_cast(kind: SyntaxKind) -> bool {
23052 kind == SyntaxKind::LTEQ
23053 }
23054 #[inline]
23055 fn cast(syntax: SyntaxNode) -> Option<Self> {
23056 if Self::can_cast(syntax.kind()) {
23057 Some(Self { syntax })
23058 } else {
23059 None
23060 }
23061 }
23062 #[inline]
23063 fn syntax(&self) -> &SyntaxNode {
23064 &self.syntax
23065 }
23066}
23067impl AstNode for MatchFull {
23068 #[inline]
23069 fn can_cast(kind: SyntaxKind) -> bool {
23070 kind == SyntaxKind::MATCH_FULL
23071 }
23072 #[inline]
23073 fn cast(syntax: SyntaxNode) -> Option<Self> {
23074 if Self::can_cast(syntax.kind()) {
23075 Some(Self { syntax })
23076 } else {
23077 None
23078 }
23079 }
23080 #[inline]
23081 fn syntax(&self) -> &SyntaxNode {
23082 &self.syntax
23083 }
23084}
23085impl AstNode for MatchPartial {
23086 #[inline]
23087 fn can_cast(kind: SyntaxKind) -> bool {
23088 kind == SyntaxKind::MATCH_PARTIAL
23089 }
23090 #[inline]
23091 fn cast(syntax: SyntaxNode) -> Option<Self> {
23092 if Self::can_cast(syntax.kind()) {
23093 Some(Self { syntax })
23094 } else {
23095 None
23096 }
23097 }
23098 #[inline]
23099 fn syntax(&self) -> &SyntaxNode {
23100 &self.syntax
23101 }
23102}
23103impl AstNode for MatchSimple {
23104 #[inline]
23105 fn can_cast(kind: SyntaxKind) -> bool {
23106 kind == SyntaxKind::MATCH_SIMPLE
23107 }
23108 #[inline]
23109 fn cast(syntax: SyntaxNode) -> Option<Self> {
23110 if Self::can_cast(syntax.kind()) {
23111 Some(Self { syntax })
23112 } else {
23113 None
23114 }
23115 }
23116 #[inline]
23117 fn syntax(&self) -> &SyntaxNode {
23118 &self.syntax
23119 }
23120}
23121impl AstNode for Materialized {
23122 #[inline]
23123 fn can_cast(kind: SyntaxKind) -> bool {
23124 kind == SyntaxKind::MATERIALIZED
23125 }
23126 #[inline]
23127 fn cast(syntax: SyntaxNode) -> Option<Self> {
23128 if Self::can_cast(syntax.kind()) {
23129 Some(Self { syntax })
23130 } else {
23131 None
23132 }
23133 }
23134 #[inline]
23135 fn syntax(&self) -> &SyntaxNode {
23136 &self.syntax
23137 }
23138}
23139impl AstNode for Merge {
23140 #[inline]
23141 fn can_cast(kind: SyntaxKind) -> bool {
23142 kind == SyntaxKind::MERGE
23143 }
23144 #[inline]
23145 fn cast(syntax: SyntaxNode) -> Option<Self> {
23146 if Self::can_cast(syntax.kind()) {
23147 Some(Self { syntax })
23148 } else {
23149 None
23150 }
23151 }
23152 #[inline]
23153 fn syntax(&self) -> &SyntaxNode {
23154 &self.syntax
23155 }
23156}
23157impl AstNode for MergeDelete {
23158 #[inline]
23159 fn can_cast(kind: SyntaxKind) -> bool {
23160 kind == SyntaxKind::MERGE_DELETE
23161 }
23162 #[inline]
23163 fn cast(syntax: SyntaxNode) -> Option<Self> {
23164 if Self::can_cast(syntax.kind()) {
23165 Some(Self { syntax })
23166 } else {
23167 None
23168 }
23169 }
23170 #[inline]
23171 fn syntax(&self) -> &SyntaxNode {
23172 &self.syntax
23173 }
23174}
23175impl AstNode for MergeDoNothing {
23176 #[inline]
23177 fn can_cast(kind: SyntaxKind) -> bool {
23178 kind == SyntaxKind::MERGE_DO_NOTHING
23179 }
23180 #[inline]
23181 fn cast(syntax: SyntaxNode) -> Option<Self> {
23182 if Self::can_cast(syntax.kind()) {
23183 Some(Self { syntax })
23184 } else {
23185 None
23186 }
23187 }
23188 #[inline]
23189 fn syntax(&self) -> &SyntaxNode {
23190 &self.syntax
23191 }
23192}
23193impl AstNode for MergeInsert {
23194 #[inline]
23195 fn can_cast(kind: SyntaxKind) -> bool {
23196 kind == SyntaxKind::MERGE_INSERT
23197 }
23198 #[inline]
23199 fn cast(syntax: SyntaxNode) -> Option<Self> {
23200 if Self::can_cast(syntax.kind()) {
23201 Some(Self { syntax })
23202 } else {
23203 None
23204 }
23205 }
23206 #[inline]
23207 fn syntax(&self) -> &SyntaxNode {
23208 &self.syntax
23209 }
23210}
23211impl AstNode for MergeUpdate {
23212 #[inline]
23213 fn can_cast(kind: SyntaxKind) -> bool {
23214 kind == SyntaxKind::MERGE_UPDATE
23215 }
23216 #[inline]
23217 fn cast(syntax: SyntaxNode) -> Option<Self> {
23218 if Self::can_cast(syntax.kind()) {
23219 Some(Self { syntax })
23220 } else {
23221 None
23222 }
23223 }
23224 #[inline]
23225 fn syntax(&self) -> &SyntaxNode {
23226 &self.syntax
23227 }
23228}
23229impl AstNode for MergeWhenMatched {
23230 #[inline]
23231 fn can_cast(kind: SyntaxKind) -> bool {
23232 kind == SyntaxKind::MERGE_WHEN_MATCHED
23233 }
23234 #[inline]
23235 fn cast(syntax: SyntaxNode) -> Option<Self> {
23236 if Self::can_cast(syntax.kind()) {
23237 Some(Self { syntax })
23238 } else {
23239 None
23240 }
23241 }
23242 #[inline]
23243 fn syntax(&self) -> &SyntaxNode {
23244 &self.syntax
23245 }
23246}
23247impl AstNode for MergeWhenNotMatchedSource {
23248 #[inline]
23249 fn can_cast(kind: SyntaxKind) -> bool {
23250 kind == SyntaxKind::MERGE_WHEN_NOT_MATCHED_SOURCE
23251 }
23252 #[inline]
23253 fn cast(syntax: SyntaxNode) -> Option<Self> {
23254 if Self::can_cast(syntax.kind()) {
23255 Some(Self { syntax })
23256 } else {
23257 None
23258 }
23259 }
23260 #[inline]
23261 fn syntax(&self) -> &SyntaxNode {
23262 &self.syntax
23263 }
23264}
23265impl AstNode for MergeWhenNotMatchedTarget {
23266 #[inline]
23267 fn can_cast(kind: SyntaxKind) -> bool {
23268 kind == SyntaxKind::MERGE_WHEN_NOT_MATCHED_TARGET
23269 }
23270 #[inline]
23271 fn cast(syntax: SyntaxNode) -> Option<Self> {
23272 if Self::can_cast(syntax.kind()) {
23273 Some(Self { syntax })
23274 } else {
23275 None
23276 }
23277 }
23278 #[inline]
23279 fn syntax(&self) -> &SyntaxNode {
23280 &self.syntax
23281 }
23282}
23283impl AstNode for Move {
23284 #[inline]
23285 fn can_cast(kind: SyntaxKind) -> bool {
23286 kind == SyntaxKind::MOVE
23287 }
23288 #[inline]
23289 fn cast(syntax: SyntaxNode) -> Option<Self> {
23290 if Self::can_cast(syntax.kind()) {
23291 Some(Self { syntax })
23292 } else {
23293 None
23294 }
23295 }
23296 #[inline]
23297 fn syntax(&self) -> &SyntaxNode {
23298 &self.syntax
23299 }
23300}
23301impl AstNode for Name {
23302 #[inline]
23303 fn can_cast(kind: SyntaxKind) -> bool {
23304 kind == SyntaxKind::NAME
23305 }
23306 #[inline]
23307 fn cast(syntax: SyntaxNode) -> Option<Self> {
23308 if Self::can_cast(syntax.kind()) {
23309 Some(Self { syntax })
23310 } else {
23311 None
23312 }
23313 }
23314 #[inline]
23315 fn syntax(&self) -> &SyntaxNode {
23316 &self.syntax
23317 }
23318}
23319impl AstNode for NameRef {
23320 #[inline]
23321 fn can_cast(kind: SyntaxKind) -> bool {
23322 kind == SyntaxKind::NAME_REF
23323 }
23324 #[inline]
23325 fn cast(syntax: SyntaxNode) -> Option<Self> {
23326 if Self::can_cast(syntax.kind()) {
23327 Some(Self { syntax })
23328 } else {
23329 None
23330 }
23331 }
23332 #[inline]
23333 fn syntax(&self) -> &SyntaxNode {
23334 &self.syntax
23335 }
23336}
23337impl AstNode for NamedArg {
23338 #[inline]
23339 fn can_cast(kind: SyntaxKind) -> bool {
23340 kind == SyntaxKind::NAMED_ARG
23341 }
23342 #[inline]
23343 fn cast(syntax: SyntaxNode) -> Option<Self> {
23344 if Self::can_cast(syntax.kind()) {
23345 Some(Self { syntax })
23346 } else {
23347 None
23348 }
23349 }
23350 #[inline]
23351 fn syntax(&self) -> &SyntaxNode {
23352 &self.syntax
23353 }
23354}
23355impl AstNode for Neq {
23356 #[inline]
23357 fn can_cast(kind: SyntaxKind) -> bool {
23358 kind == SyntaxKind::NEQ
23359 }
23360 #[inline]
23361 fn cast(syntax: SyntaxNode) -> Option<Self> {
23362 if Self::can_cast(syntax.kind()) {
23363 Some(Self { syntax })
23364 } else {
23365 None
23366 }
23367 }
23368 #[inline]
23369 fn syntax(&self) -> &SyntaxNode {
23370 &self.syntax
23371 }
23372}
23373impl AstNode for Neqb {
23374 #[inline]
23375 fn can_cast(kind: SyntaxKind) -> bool {
23376 kind == SyntaxKind::NEQB
23377 }
23378 #[inline]
23379 fn cast(syntax: SyntaxNode) -> Option<Self> {
23380 if Self::can_cast(syntax.kind()) {
23381 Some(Self { syntax })
23382 } else {
23383 None
23384 }
23385 }
23386 #[inline]
23387 fn syntax(&self) -> &SyntaxNode {
23388 &self.syntax
23389 }
23390}
23391impl AstNode for NoAction {
23392 #[inline]
23393 fn can_cast(kind: SyntaxKind) -> bool {
23394 kind == SyntaxKind::NO_ACTION
23395 }
23396 #[inline]
23397 fn cast(syntax: SyntaxNode) -> Option<Self> {
23398 if Self::can_cast(syntax.kind()) {
23399 Some(Self { syntax })
23400 } else {
23401 None
23402 }
23403 }
23404 #[inline]
23405 fn syntax(&self) -> &SyntaxNode {
23406 &self.syntax
23407 }
23408}
23409impl AstNode for NoDependsOnExtension {
23410 #[inline]
23411 fn can_cast(kind: SyntaxKind) -> bool {
23412 kind == SyntaxKind::NO_DEPENDS_ON_EXTENSION
23413 }
23414 #[inline]
23415 fn cast(syntax: SyntaxNode) -> Option<Self> {
23416 if Self::can_cast(syntax.kind()) {
23417 Some(Self { syntax })
23418 } else {
23419 None
23420 }
23421 }
23422 #[inline]
23423 fn syntax(&self) -> &SyntaxNode {
23424 &self.syntax
23425 }
23426}
23427impl AstNode for NoForceRls {
23428 #[inline]
23429 fn can_cast(kind: SyntaxKind) -> bool {
23430 kind == SyntaxKind::NO_FORCE_RLS
23431 }
23432 #[inline]
23433 fn cast(syntax: SyntaxNode) -> Option<Self> {
23434 if Self::can_cast(syntax.kind()) {
23435 Some(Self { syntax })
23436 } else {
23437 None
23438 }
23439 }
23440 #[inline]
23441 fn syntax(&self) -> &SyntaxNode {
23442 &self.syntax
23443 }
23444}
23445impl AstNode for NoInherit {
23446 #[inline]
23447 fn can_cast(kind: SyntaxKind) -> bool {
23448 kind == SyntaxKind::NO_INHERIT
23449 }
23450 #[inline]
23451 fn cast(syntax: SyntaxNode) -> Option<Self> {
23452 if Self::can_cast(syntax.kind()) {
23453 Some(Self { syntax })
23454 } else {
23455 None
23456 }
23457 }
23458 #[inline]
23459 fn syntax(&self) -> &SyntaxNode {
23460 &self.syntax
23461 }
23462}
23463impl AstNode for NoInheritTable {
23464 #[inline]
23465 fn can_cast(kind: SyntaxKind) -> bool {
23466 kind == SyntaxKind::NO_INHERIT_TABLE
23467 }
23468 #[inline]
23469 fn cast(syntax: SyntaxNode) -> Option<Self> {
23470 if Self::can_cast(syntax.kind()) {
23471 Some(Self { syntax })
23472 } else {
23473 None
23474 }
23475 }
23476 #[inline]
23477 fn syntax(&self) -> &SyntaxNode {
23478 &self.syntax
23479 }
23480}
23481impl AstNode for NonStandardParam {
23482 #[inline]
23483 fn can_cast(kind: SyntaxKind) -> bool {
23484 kind == SyntaxKind::NON_STANDARD_PARAM
23485 }
23486 #[inline]
23487 fn cast(syntax: SyntaxNode) -> Option<Self> {
23488 if Self::can_cast(syntax.kind()) {
23489 Some(Self { syntax })
23490 } else {
23491 None
23492 }
23493 }
23494 #[inline]
23495 fn syntax(&self) -> &SyntaxNode {
23496 &self.syntax
23497 }
23498}
23499impl AstNode for NotDeferrable {
23500 #[inline]
23501 fn can_cast(kind: SyntaxKind) -> bool {
23502 kind == SyntaxKind::NOT_DEFERRABLE
23503 }
23504 #[inline]
23505 fn cast(syntax: SyntaxNode) -> Option<Self> {
23506 if Self::can_cast(syntax.kind()) {
23507 Some(Self { syntax })
23508 } else {
23509 None
23510 }
23511 }
23512 #[inline]
23513 fn syntax(&self) -> &SyntaxNode {
23514 &self.syntax
23515 }
23516}
23517impl AstNode for NotDeferrableConstraintOption {
23518 #[inline]
23519 fn can_cast(kind: SyntaxKind) -> bool {
23520 kind == SyntaxKind::NOT_DEFERRABLE_CONSTRAINT_OPTION
23521 }
23522 #[inline]
23523 fn cast(syntax: SyntaxNode) -> Option<Self> {
23524 if Self::can_cast(syntax.kind()) {
23525 Some(Self { syntax })
23526 } else {
23527 None
23528 }
23529 }
23530 #[inline]
23531 fn syntax(&self) -> &SyntaxNode {
23532 &self.syntax
23533 }
23534}
23535impl AstNode for NotEnforced {
23536 #[inline]
23537 fn can_cast(kind: SyntaxKind) -> bool {
23538 kind == SyntaxKind::NOT_ENFORCED
23539 }
23540 #[inline]
23541 fn cast(syntax: SyntaxNode) -> Option<Self> {
23542 if Self::can_cast(syntax.kind()) {
23543 Some(Self { syntax })
23544 } else {
23545 None
23546 }
23547 }
23548 #[inline]
23549 fn syntax(&self) -> &SyntaxNode {
23550 &self.syntax
23551 }
23552}
23553impl AstNode for NotIlike {
23554 #[inline]
23555 fn can_cast(kind: SyntaxKind) -> bool {
23556 kind == SyntaxKind::NOT_ILIKE
23557 }
23558 #[inline]
23559 fn cast(syntax: SyntaxNode) -> Option<Self> {
23560 if Self::can_cast(syntax.kind()) {
23561 Some(Self { syntax })
23562 } else {
23563 None
23564 }
23565 }
23566 #[inline]
23567 fn syntax(&self) -> &SyntaxNode {
23568 &self.syntax
23569 }
23570}
23571impl AstNode for NotIn {
23572 #[inline]
23573 fn can_cast(kind: SyntaxKind) -> bool {
23574 kind == SyntaxKind::NOT_IN
23575 }
23576 #[inline]
23577 fn cast(syntax: SyntaxNode) -> Option<Self> {
23578 if Self::can_cast(syntax.kind()) {
23579 Some(Self { syntax })
23580 } else {
23581 None
23582 }
23583 }
23584 #[inline]
23585 fn syntax(&self) -> &SyntaxNode {
23586 &self.syntax
23587 }
23588}
23589impl AstNode for NotLike {
23590 #[inline]
23591 fn can_cast(kind: SyntaxKind) -> bool {
23592 kind == SyntaxKind::NOT_LIKE
23593 }
23594 #[inline]
23595 fn cast(syntax: SyntaxNode) -> Option<Self> {
23596 if Self::can_cast(syntax.kind()) {
23597 Some(Self { syntax })
23598 } else {
23599 None
23600 }
23601 }
23602 #[inline]
23603 fn syntax(&self) -> &SyntaxNode {
23604 &self.syntax
23605 }
23606}
23607impl AstNode for NotMaterialized {
23608 #[inline]
23609 fn can_cast(kind: SyntaxKind) -> bool {
23610 kind == SyntaxKind::NOT_MATERIALIZED
23611 }
23612 #[inline]
23613 fn cast(syntax: SyntaxNode) -> Option<Self> {
23614 if Self::can_cast(syntax.kind()) {
23615 Some(Self { syntax })
23616 } else {
23617 None
23618 }
23619 }
23620 #[inline]
23621 fn syntax(&self) -> &SyntaxNode {
23622 &self.syntax
23623 }
23624}
23625impl AstNode for NotNullConstraint {
23626 #[inline]
23627 fn can_cast(kind: SyntaxKind) -> bool {
23628 kind == SyntaxKind::NOT_NULL_CONSTRAINT
23629 }
23630 #[inline]
23631 fn cast(syntax: SyntaxNode) -> Option<Self> {
23632 if Self::can_cast(syntax.kind()) {
23633 Some(Self { syntax })
23634 } else {
23635 None
23636 }
23637 }
23638 #[inline]
23639 fn syntax(&self) -> &SyntaxNode {
23640 &self.syntax
23641 }
23642}
23643impl AstNode for NotOf {
23644 #[inline]
23645 fn can_cast(kind: SyntaxKind) -> bool {
23646 kind == SyntaxKind::NOT_OF
23647 }
23648 #[inline]
23649 fn cast(syntax: SyntaxNode) -> Option<Self> {
23650 if Self::can_cast(syntax.kind()) {
23651 Some(Self { syntax })
23652 } else {
23653 None
23654 }
23655 }
23656 #[inline]
23657 fn syntax(&self) -> &SyntaxNode {
23658 &self.syntax
23659 }
23660}
23661impl AstNode for NotSimilarTo {
23662 #[inline]
23663 fn can_cast(kind: SyntaxKind) -> bool {
23664 kind == SyntaxKind::NOT_SIMILAR_TO
23665 }
23666 #[inline]
23667 fn cast(syntax: SyntaxNode) -> Option<Self> {
23668 if Self::can_cast(syntax.kind()) {
23669 Some(Self { syntax })
23670 } else {
23671 None
23672 }
23673 }
23674 #[inline]
23675 fn syntax(&self) -> &SyntaxNode {
23676 &self.syntax
23677 }
23678}
23679impl AstNode for NotValid {
23680 #[inline]
23681 fn can_cast(kind: SyntaxKind) -> bool {
23682 kind == SyntaxKind::NOT_VALID
23683 }
23684 #[inline]
23685 fn cast(syntax: SyntaxNode) -> Option<Self> {
23686 if Self::can_cast(syntax.kind()) {
23687 Some(Self { syntax })
23688 } else {
23689 None
23690 }
23691 }
23692 #[inline]
23693 fn syntax(&self) -> &SyntaxNode {
23694 &self.syntax
23695 }
23696}
23697impl AstNode for Notify {
23698 #[inline]
23699 fn can_cast(kind: SyntaxKind) -> bool {
23700 kind == SyntaxKind::NOTIFY
23701 }
23702 #[inline]
23703 fn cast(syntax: SyntaxNode) -> Option<Self> {
23704 if Self::can_cast(syntax.kind()) {
23705 Some(Self { syntax })
23706 } else {
23707 None
23708 }
23709 }
23710 #[inline]
23711 fn syntax(&self) -> &SyntaxNode {
23712 &self.syntax
23713 }
23714}
23715impl AstNode for NullConstraint {
23716 #[inline]
23717 fn can_cast(kind: SyntaxKind) -> bool {
23718 kind == SyntaxKind::NULL_CONSTRAINT
23719 }
23720 #[inline]
23721 fn cast(syntax: SyntaxNode) -> Option<Self> {
23722 if Self::can_cast(syntax.kind()) {
23723 Some(Self { syntax })
23724 } else {
23725 None
23726 }
23727 }
23728 #[inline]
23729 fn syntax(&self) -> &SyntaxNode {
23730 &self.syntax
23731 }
23732}
23733impl AstNode for NullsDistinct {
23734 #[inline]
23735 fn can_cast(kind: SyntaxKind) -> bool {
23736 kind == SyntaxKind::NULLS_DISTINCT
23737 }
23738 #[inline]
23739 fn cast(syntax: SyntaxNode) -> Option<Self> {
23740 if Self::can_cast(syntax.kind()) {
23741 Some(Self { syntax })
23742 } else {
23743 None
23744 }
23745 }
23746 #[inline]
23747 fn syntax(&self) -> &SyntaxNode {
23748 &self.syntax
23749 }
23750}
23751impl AstNode for NullsFirst {
23752 #[inline]
23753 fn can_cast(kind: SyntaxKind) -> bool {
23754 kind == SyntaxKind::NULLS_FIRST
23755 }
23756 #[inline]
23757 fn cast(syntax: SyntaxNode) -> Option<Self> {
23758 if Self::can_cast(syntax.kind()) {
23759 Some(Self { syntax })
23760 } else {
23761 None
23762 }
23763 }
23764 #[inline]
23765 fn syntax(&self) -> &SyntaxNode {
23766 &self.syntax
23767 }
23768}
23769impl AstNode for NullsLast {
23770 #[inline]
23771 fn can_cast(kind: SyntaxKind) -> bool {
23772 kind == SyntaxKind::NULLS_LAST
23773 }
23774 #[inline]
23775 fn cast(syntax: SyntaxNode) -> Option<Self> {
23776 if Self::can_cast(syntax.kind()) {
23777 Some(Self { syntax })
23778 } else {
23779 None
23780 }
23781 }
23782 #[inline]
23783 fn syntax(&self) -> &SyntaxNode {
23784 &self.syntax
23785 }
23786}
23787impl AstNode for NullsNotDistinct {
23788 #[inline]
23789 fn can_cast(kind: SyntaxKind) -> bool {
23790 kind == SyntaxKind::NULLS_NOT_DISTINCT
23791 }
23792 #[inline]
23793 fn cast(syntax: SyntaxNode) -> Option<Self> {
23794 if Self::can_cast(syntax.kind()) {
23795 Some(Self { syntax })
23796 } else {
23797 None
23798 }
23799 }
23800 #[inline]
23801 fn syntax(&self) -> &SyntaxNode {
23802 &self.syntax
23803 }
23804}
23805impl AstNode for OfType {
23806 #[inline]
23807 fn can_cast(kind: SyntaxKind) -> bool {
23808 kind == SyntaxKind::OF_TYPE
23809 }
23810 #[inline]
23811 fn cast(syntax: SyntaxNode) -> Option<Self> {
23812 if Self::can_cast(syntax.kind()) {
23813 Some(Self { syntax })
23814 } else {
23815 None
23816 }
23817 }
23818 #[inline]
23819 fn syntax(&self) -> &SyntaxNode {
23820 &self.syntax
23821 }
23822}
23823impl AstNode for OffsetClause {
23824 #[inline]
23825 fn can_cast(kind: SyntaxKind) -> bool {
23826 kind == SyntaxKind::OFFSET_CLAUSE
23827 }
23828 #[inline]
23829 fn cast(syntax: SyntaxNode) -> Option<Self> {
23830 if Self::can_cast(syntax.kind()) {
23831 Some(Self { syntax })
23832 } else {
23833 None
23834 }
23835 }
23836 #[inline]
23837 fn syntax(&self) -> &SyntaxNode {
23838 &self.syntax
23839 }
23840}
23841impl AstNode for OnClause {
23842 #[inline]
23843 fn can_cast(kind: SyntaxKind) -> bool {
23844 kind == SyntaxKind::ON_CLAUSE
23845 }
23846 #[inline]
23847 fn cast(syntax: SyntaxNode) -> Option<Self> {
23848 if Self::can_cast(syntax.kind()) {
23849 Some(Self { syntax })
23850 } else {
23851 None
23852 }
23853 }
23854 #[inline]
23855 fn syntax(&self) -> &SyntaxNode {
23856 &self.syntax
23857 }
23858}
23859impl AstNode for OnCommit {
23860 #[inline]
23861 fn can_cast(kind: SyntaxKind) -> bool {
23862 kind == SyntaxKind::ON_COMMIT
23863 }
23864 #[inline]
23865 fn cast(syntax: SyntaxNode) -> Option<Self> {
23866 if Self::can_cast(syntax.kind()) {
23867 Some(Self { syntax })
23868 } else {
23869 None
23870 }
23871 }
23872 #[inline]
23873 fn syntax(&self) -> &SyntaxNode {
23874 &self.syntax
23875 }
23876}
23877impl AstNode for OnConflictClause {
23878 #[inline]
23879 fn can_cast(kind: SyntaxKind) -> bool {
23880 kind == SyntaxKind::ON_CONFLICT_CLAUSE
23881 }
23882 #[inline]
23883 fn cast(syntax: SyntaxNode) -> Option<Self> {
23884 if Self::can_cast(syntax.kind()) {
23885 Some(Self { syntax })
23886 } else {
23887 None
23888 }
23889 }
23890 #[inline]
23891 fn syntax(&self) -> &SyntaxNode {
23892 &self.syntax
23893 }
23894}
23895impl AstNode for OnDeleteAction {
23896 #[inline]
23897 fn can_cast(kind: SyntaxKind) -> bool {
23898 kind == SyntaxKind::ON_DELETE_ACTION
23899 }
23900 #[inline]
23901 fn cast(syntax: SyntaxNode) -> Option<Self> {
23902 if Self::can_cast(syntax.kind()) {
23903 Some(Self { syntax })
23904 } else {
23905 None
23906 }
23907 }
23908 #[inline]
23909 fn syntax(&self) -> &SyntaxNode {
23910 &self.syntax
23911 }
23912}
23913impl AstNode for OnTable {
23914 #[inline]
23915 fn can_cast(kind: SyntaxKind) -> bool {
23916 kind == SyntaxKind::ON_TABLE
23917 }
23918 #[inline]
23919 fn cast(syntax: SyntaxNode) -> Option<Self> {
23920 if Self::can_cast(syntax.kind()) {
23921 Some(Self { syntax })
23922 } else {
23923 None
23924 }
23925 }
23926 #[inline]
23927 fn syntax(&self) -> &SyntaxNode {
23928 &self.syntax
23929 }
23930}
23931impl AstNode for OnUpdateAction {
23932 #[inline]
23933 fn can_cast(kind: SyntaxKind) -> bool {
23934 kind == SyntaxKind::ON_UPDATE_ACTION
23935 }
23936 #[inline]
23937 fn cast(syntax: SyntaxNode) -> Option<Self> {
23938 if Self::can_cast(syntax.kind()) {
23939 Some(Self { syntax })
23940 } else {
23941 None
23942 }
23943 }
23944 #[inline]
23945 fn syntax(&self) -> &SyntaxNode {
23946 &self.syntax
23947 }
23948}
23949impl AstNode for Op {
23950 #[inline]
23951 fn can_cast(kind: SyntaxKind) -> bool {
23952 kind == SyntaxKind::OP
23953 }
23954 #[inline]
23955 fn cast(syntax: SyntaxNode) -> Option<Self> {
23956 if Self::can_cast(syntax.kind()) {
23957 Some(Self { syntax })
23958 } else {
23959 None
23960 }
23961 }
23962 #[inline]
23963 fn syntax(&self) -> &SyntaxNode {
23964 &self.syntax
23965 }
23966}
23967impl AstNode for OpClassOption {
23968 #[inline]
23969 fn can_cast(kind: SyntaxKind) -> bool {
23970 kind == SyntaxKind::OP_CLASS_OPTION
23971 }
23972 #[inline]
23973 fn cast(syntax: SyntaxNode) -> Option<Self> {
23974 if Self::can_cast(syntax.kind()) {
23975 Some(Self { syntax })
23976 } else {
23977 None
23978 }
23979 }
23980 #[inline]
23981 fn syntax(&self) -> &SyntaxNode {
23982 &self.syntax
23983 }
23984}
23985impl AstNode for OpSig {
23986 #[inline]
23987 fn can_cast(kind: SyntaxKind) -> bool {
23988 kind == SyntaxKind::OP_SIG
23989 }
23990 #[inline]
23991 fn cast(syntax: SyntaxNode) -> Option<Self> {
23992 if Self::can_cast(syntax.kind()) {
23993 Some(Self { syntax })
23994 } else {
23995 None
23996 }
23997 }
23998 #[inline]
23999 fn syntax(&self) -> &SyntaxNode {
24000 &self.syntax
24001 }
24002}
24003impl AstNode for OpSigList {
24004 #[inline]
24005 fn can_cast(kind: SyntaxKind) -> bool {
24006 kind == SyntaxKind::OP_SIG_LIST
24007 }
24008 #[inline]
24009 fn cast(syntax: SyntaxNode) -> Option<Self> {
24010 if Self::can_cast(syntax.kind()) {
24011 Some(Self { syntax })
24012 } else {
24013 None
24014 }
24015 }
24016 #[inline]
24017 fn syntax(&self) -> &SyntaxNode {
24018 &self.syntax
24019 }
24020}
24021impl AstNode for OperatorCall {
24022 #[inline]
24023 fn can_cast(kind: SyntaxKind) -> bool {
24024 kind == SyntaxKind::OPERATOR_CALL
24025 }
24026 #[inline]
24027 fn cast(syntax: SyntaxNode) -> Option<Self> {
24028 if Self::can_cast(syntax.kind()) {
24029 Some(Self { syntax })
24030 } else {
24031 None
24032 }
24033 }
24034 #[inline]
24035 fn syntax(&self) -> &SyntaxNode {
24036 &self.syntax
24037 }
24038}
24039impl AstNode for OperatorClassOptionList {
24040 #[inline]
24041 fn can_cast(kind: SyntaxKind) -> bool {
24042 kind == SyntaxKind::OPERATOR_CLASS_OPTION_LIST
24043 }
24044 #[inline]
24045 fn cast(syntax: SyntaxNode) -> Option<Self> {
24046 if Self::can_cast(syntax.kind()) {
24047 Some(Self { syntax })
24048 } else {
24049 None
24050 }
24051 }
24052 #[inline]
24053 fn syntax(&self) -> &SyntaxNode {
24054 &self.syntax
24055 }
24056}
24057impl AstNode for OptionItem {
24058 #[inline]
24059 fn can_cast(kind: SyntaxKind) -> bool {
24060 kind == SyntaxKind::OPTION_ITEM
24061 }
24062 #[inline]
24063 fn cast(syntax: SyntaxNode) -> Option<Self> {
24064 if Self::can_cast(syntax.kind()) {
24065 Some(Self { syntax })
24066 } else {
24067 None
24068 }
24069 }
24070 #[inline]
24071 fn syntax(&self) -> &SyntaxNode {
24072 &self.syntax
24073 }
24074}
24075impl AstNode for OptionItemList {
24076 #[inline]
24077 fn can_cast(kind: SyntaxKind) -> bool {
24078 kind == SyntaxKind::OPTION_ITEM_LIST
24079 }
24080 #[inline]
24081 fn cast(syntax: SyntaxNode) -> Option<Self> {
24082 if Self::can_cast(syntax.kind()) {
24083 Some(Self { syntax })
24084 } else {
24085 None
24086 }
24087 }
24088 #[inline]
24089 fn syntax(&self) -> &SyntaxNode {
24090 &self.syntax
24091 }
24092}
24093impl AstNode for OrReplace {
24094 #[inline]
24095 fn can_cast(kind: SyntaxKind) -> bool {
24096 kind == SyntaxKind::OR_REPLACE
24097 }
24098 #[inline]
24099 fn cast(syntax: SyntaxNode) -> Option<Self> {
24100 if Self::can_cast(syntax.kind()) {
24101 Some(Self { syntax })
24102 } else {
24103 None
24104 }
24105 }
24106 #[inline]
24107 fn syntax(&self) -> &SyntaxNode {
24108 &self.syntax
24109 }
24110}
24111impl AstNode for OrderByClause {
24112 #[inline]
24113 fn can_cast(kind: SyntaxKind) -> bool {
24114 kind == SyntaxKind::ORDER_BY_CLAUSE
24115 }
24116 #[inline]
24117 fn cast(syntax: SyntaxNode) -> Option<Self> {
24118 if Self::can_cast(syntax.kind()) {
24119 Some(Self { syntax })
24120 } else {
24121 None
24122 }
24123 }
24124 #[inline]
24125 fn syntax(&self) -> &SyntaxNode {
24126 &self.syntax
24127 }
24128}
24129impl AstNode for OverClause {
24130 #[inline]
24131 fn can_cast(kind: SyntaxKind) -> bool {
24132 kind == SyntaxKind::OVER_CLAUSE
24133 }
24134 #[inline]
24135 fn cast(syntax: SyntaxNode) -> Option<Self> {
24136 if Self::can_cast(syntax.kind()) {
24137 Some(Self { syntax })
24138 } else {
24139 None
24140 }
24141 }
24142 #[inline]
24143 fn syntax(&self) -> &SyntaxNode {
24144 &self.syntax
24145 }
24146}
24147impl AstNode for OverlayFn {
24148 #[inline]
24149 fn can_cast(kind: SyntaxKind) -> bool {
24150 kind == SyntaxKind::OVERLAY_FN
24151 }
24152 #[inline]
24153 fn cast(syntax: SyntaxNode) -> Option<Self> {
24154 if Self::can_cast(syntax.kind()) {
24155 Some(Self { syntax })
24156 } else {
24157 None
24158 }
24159 }
24160 #[inline]
24161 fn syntax(&self) -> &SyntaxNode {
24162 &self.syntax
24163 }
24164}
24165impl AstNode for OwnerTo {
24166 #[inline]
24167 fn can_cast(kind: SyntaxKind) -> bool {
24168 kind == SyntaxKind::OWNER_TO
24169 }
24170 #[inline]
24171 fn cast(syntax: SyntaxNode) -> Option<Self> {
24172 if Self::can_cast(syntax.kind()) {
24173 Some(Self { syntax })
24174 } else {
24175 None
24176 }
24177 }
24178 #[inline]
24179 fn syntax(&self) -> &SyntaxNode {
24180 &self.syntax
24181 }
24182}
24183impl AstNode for ParallelFuncOption {
24184 #[inline]
24185 fn can_cast(kind: SyntaxKind) -> bool {
24186 kind == SyntaxKind::PARALLEL_FUNC_OPTION
24187 }
24188 #[inline]
24189 fn cast(syntax: SyntaxNode) -> Option<Self> {
24190 if Self::can_cast(syntax.kind()) {
24191 Some(Self { syntax })
24192 } else {
24193 None
24194 }
24195 }
24196 #[inline]
24197 fn syntax(&self) -> &SyntaxNode {
24198 &self.syntax
24199 }
24200}
24201impl AstNode for Param {
24202 #[inline]
24203 fn can_cast(kind: SyntaxKind) -> bool {
24204 kind == SyntaxKind::PARAM
24205 }
24206 #[inline]
24207 fn cast(syntax: SyntaxNode) -> Option<Self> {
24208 if Self::can_cast(syntax.kind()) {
24209 Some(Self { syntax })
24210 } else {
24211 None
24212 }
24213 }
24214 #[inline]
24215 fn syntax(&self) -> &SyntaxNode {
24216 &self.syntax
24217 }
24218}
24219impl AstNode for ParamDefault {
24220 #[inline]
24221 fn can_cast(kind: SyntaxKind) -> bool {
24222 kind == SyntaxKind::PARAM_DEFAULT
24223 }
24224 #[inline]
24225 fn cast(syntax: SyntaxNode) -> Option<Self> {
24226 if Self::can_cast(syntax.kind()) {
24227 Some(Self { syntax })
24228 } else {
24229 None
24230 }
24231 }
24232 #[inline]
24233 fn syntax(&self) -> &SyntaxNode {
24234 &self.syntax
24235 }
24236}
24237impl AstNode for ParamIn {
24238 #[inline]
24239 fn can_cast(kind: SyntaxKind) -> bool {
24240 kind == SyntaxKind::PARAM_IN
24241 }
24242 #[inline]
24243 fn cast(syntax: SyntaxNode) -> Option<Self> {
24244 if Self::can_cast(syntax.kind()) {
24245 Some(Self { syntax })
24246 } else {
24247 None
24248 }
24249 }
24250 #[inline]
24251 fn syntax(&self) -> &SyntaxNode {
24252 &self.syntax
24253 }
24254}
24255impl AstNode for ParamInOut {
24256 #[inline]
24257 fn can_cast(kind: SyntaxKind) -> bool {
24258 kind == SyntaxKind::PARAM_IN_OUT
24259 }
24260 #[inline]
24261 fn cast(syntax: SyntaxNode) -> Option<Self> {
24262 if Self::can_cast(syntax.kind()) {
24263 Some(Self { syntax })
24264 } else {
24265 None
24266 }
24267 }
24268 #[inline]
24269 fn syntax(&self) -> &SyntaxNode {
24270 &self.syntax
24271 }
24272}
24273impl AstNode for ParamList {
24274 #[inline]
24275 fn can_cast(kind: SyntaxKind) -> bool {
24276 kind == SyntaxKind::PARAM_LIST
24277 }
24278 #[inline]
24279 fn cast(syntax: SyntaxNode) -> Option<Self> {
24280 if Self::can_cast(syntax.kind()) {
24281 Some(Self { syntax })
24282 } else {
24283 None
24284 }
24285 }
24286 #[inline]
24287 fn syntax(&self) -> &SyntaxNode {
24288 &self.syntax
24289 }
24290}
24291impl AstNode for ParamOut {
24292 #[inline]
24293 fn can_cast(kind: SyntaxKind) -> bool {
24294 kind == SyntaxKind::PARAM_OUT
24295 }
24296 #[inline]
24297 fn cast(syntax: SyntaxNode) -> Option<Self> {
24298 if Self::can_cast(syntax.kind()) {
24299 Some(Self { syntax })
24300 } else {
24301 None
24302 }
24303 }
24304 #[inline]
24305 fn syntax(&self) -> &SyntaxNode {
24306 &self.syntax
24307 }
24308}
24309impl AstNode for ParamVariadic {
24310 #[inline]
24311 fn can_cast(kind: SyntaxKind) -> bool {
24312 kind == SyntaxKind::PARAM_VARIADIC
24313 }
24314 #[inline]
24315 fn cast(syntax: SyntaxNode) -> Option<Self> {
24316 if Self::can_cast(syntax.kind()) {
24317 Some(Self { syntax })
24318 } else {
24319 None
24320 }
24321 }
24322 #[inline]
24323 fn syntax(&self) -> &SyntaxNode {
24324 &self.syntax
24325 }
24326}
24327impl AstNode for ParenExpr {
24328 #[inline]
24329 fn can_cast(kind: SyntaxKind) -> bool {
24330 kind == SyntaxKind::PAREN_EXPR
24331 }
24332 #[inline]
24333 fn cast(syntax: SyntaxNode) -> Option<Self> {
24334 if Self::can_cast(syntax.kind()) {
24335 Some(Self { syntax })
24336 } else {
24337 None
24338 }
24339 }
24340 #[inline]
24341 fn syntax(&self) -> &SyntaxNode {
24342 &self.syntax
24343 }
24344}
24345impl AstNode for ParenSelect {
24346 #[inline]
24347 fn can_cast(kind: SyntaxKind) -> bool {
24348 kind == SyntaxKind::PAREN_SELECT
24349 }
24350 #[inline]
24351 fn cast(syntax: SyntaxNode) -> Option<Self> {
24352 if Self::can_cast(syntax.kind()) {
24353 Some(Self { syntax })
24354 } else {
24355 None
24356 }
24357 }
24358 #[inline]
24359 fn syntax(&self) -> &SyntaxNode {
24360 &self.syntax
24361 }
24362}
24363impl AstNode for PartitionBy {
24364 #[inline]
24365 fn can_cast(kind: SyntaxKind) -> bool {
24366 kind == SyntaxKind::PARTITION_BY
24367 }
24368 #[inline]
24369 fn cast(syntax: SyntaxNode) -> Option<Self> {
24370 if Self::can_cast(syntax.kind()) {
24371 Some(Self { syntax })
24372 } else {
24373 None
24374 }
24375 }
24376 #[inline]
24377 fn syntax(&self) -> &SyntaxNode {
24378 &self.syntax
24379 }
24380}
24381impl AstNode for PartitionDefault {
24382 #[inline]
24383 fn can_cast(kind: SyntaxKind) -> bool {
24384 kind == SyntaxKind::PARTITION_DEFAULT
24385 }
24386 #[inline]
24387 fn cast(syntax: SyntaxNode) -> Option<Self> {
24388 if Self::can_cast(syntax.kind()) {
24389 Some(Self { syntax })
24390 } else {
24391 None
24392 }
24393 }
24394 #[inline]
24395 fn syntax(&self) -> &SyntaxNode {
24396 &self.syntax
24397 }
24398}
24399impl AstNode for PartitionForValuesFrom {
24400 #[inline]
24401 fn can_cast(kind: SyntaxKind) -> bool {
24402 kind == SyntaxKind::PARTITION_FOR_VALUES_FROM
24403 }
24404 #[inline]
24405 fn cast(syntax: SyntaxNode) -> Option<Self> {
24406 if Self::can_cast(syntax.kind()) {
24407 Some(Self { syntax })
24408 } else {
24409 None
24410 }
24411 }
24412 #[inline]
24413 fn syntax(&self) -> &SyntaxNode {
24414 &self.syntax
24415 }
24416}
24417impl AstNode for PartitionForValuesIn {
24418 #[inline]
24419 fn can_cast(kind: SyntaxKind) -> bool {
24420 kind == SyntaxKind::PARTITION_FOR_VALUES_IN
24421 }
24422 #[inline]
24423 fn cast(syntax: SyntaxNode) -> Option<Self> {
24424 if Self::can_cast(syntax.kind()) {
24425 Some(Self { syntax })
24426 } else {
24427 None
24428 }
24429 }
24430 #[inline]
24431 fn syntax(&self) -> &SyntaxNode {
24432 &self.syntax
24433 }
24434}
24435impl AstNode for PartitionForValuesWith {
24436 #[inline]
24437 fn can_cast(kind: SyntaxKind) -> bool {
24438 kind == SyntaxKind::PARTITION_FOR_VALUES_WITH
24439 }
24440 #[inline]
24441 fn cast(syntax: SyntaxNode) -> Option<Self> {
24442 if Self::can_cast(syntax.kind()) {
24443 Some(Self { syntax })
24444 } else {
24445 None
24446 }
24447 }
24448 #[inline]
24449 fn syntax(&self) -> &SyntaxNode {
24450 &self.syntax
24451 }
24452}
24453impl AstNode for PartitionItem {
24454 #[inline]
24455 fn can_cast(kind: SyntaxKind) -> bool {
24456 kind == SyntaxKind::PARTITION_ITEM
24457 }
24458 #[inline]
24459 fn cast(syntax: SyntaxNode) -> Option<Self> {
24460 if Self::can_cast(syntax.kind()) {
24461 Some(Self { syntax })
24462 } else {
24463 None
24464 }
24465 }
24466 #[inline]
24467 fn syntax(&self) -> &SyntaxNode {
24468 &self.syntax
24469 }
24470}
24471impl AstNode for PartitionItemList {
24472 #[inline]
24473 fn can_cast(kind: SyntaxKind) -> bool {
24474 kind == SyntaxKind::PARTITION_ITEM_LIST
24475 }
24476 #[inline]
24477 fn cast(syntax: SyntaxNode) -> Option<Self> {
24478 if Self::can_cast(syntax.kind()) {
24479 Some(Self { syntax })
24480 } else {
24481 None
24482 }
24483 }
24484 #[inline]
24485 fn syntax(&self) -> &SyntaxNode {
24486 &self.syntax
24487 }
24488}
24489impl AstNode for PartitionOf {
24490 #[inline]
24491 fn can_cast(kind: SyntaxKind) -> bool {
24492 kind == SyntaxKind::PARTITION_OF
24493 }
24494 #[inline]
24495 fn cast(syntax: SyntaxNode) -> Option<Self> {
24496 if Self::can_cast(syntax.kind()) {
24497 Some(Self { syntax })
24498 } else {
24499 None
24500 }
24501 }
24502 #[inline]
24503 fn syntax(&self) -> &SyntaxNode {
24504 &self.syntax
24505 }
24506}
24507impl AstNode for Path {
24508 #[inline]
24509 fn can_cast(kind: SyntaxKind) -> bool {
24510 kind == SyntaxKind::PATH
24511 }
24512 #[inline]
24513 fn cast(syntax: SyntaxNode) -> Option<Self> {
24514 if Self::can_cast(syntax.kind()) {
24515 Some(Self { syntax })
24516 } else {
24517 None
24518 }
24519 }
24520 #[inline]
24521 fn syntax(&self) -> &SyntaxNode {
24522 &self.syntax
24523 }
24524}
24525impl AstNode for PathSegment {
24526 #[inline]
24527 fn can_cast(kind: SyntaxKind) -> bool {
24528 kind == SyntaxKind::PATH_SEGMENT
24529 }
24530 #[inline]
24531 fn cast(syntax: SyntaxNode) -> Option<Self> {
24532 if Self::can_cast(syntax.kind()) {
24533 Some(Self { syntax })
24534 } else {
24535 None
24536 }
24537 }
24538 #[inline]
24539 fn syntax(&self) -> &SyntaxNode {
24540 &self.syntax
24541 }
24542}
24543impl AstNode for PathType {
24544 #[inline]
24545 fn can_cast(kind: SyntaxKind) -> bool {
24546 kind == SyntaxKind::PATH_TYPE
24547 }
24548 #[inline]
24549 fn cast(syntax: SyntaxNode) -> Option<Self> {
24550 if Self::can_cast(syntax.kind()) {
24551 Some(Self { syntax })
24552 } else {
24553 None
24554 }
24555 }
24556 #[inline]
24557 fn syntax(&self) -> &SyntaxNode {
24558 &self.syntax
24559 }
24560}
24561impl AstNode for PercentType {
24562 #[inline]
24563 fn can_cast(kind: SyntaxKind) -> bool {
24564 kind == SyntaxKind::PERCENT_TYPE
24565 }
24566 #[inline]
24567 fn cast(syntax: SyntaxNode) -> Option<Self> {
24568 if Self::can_cast(syntax.kind()) {
24569 Some(Self { syntax })
24570 } else {
24571 None
24572 }
24573 }
24574 #[inline]
24575 fn syntax(&self) -> &SyntaxNode {
24576 &self.syntax
24577 }
24578}
24579impl AstNode for PercentTypeClause {
24580 #[inline]
24581 fn can_cast(kind: SyntaxKind) -> bool {
24582 kind == SyntaxKind::PERCENT_TYPE_CLAUSE
24583 }
24584 #[inline]
24585 fn cast(syntax: SyntaxNode) -> Option<Self> {
24586 if Self::can_cast(syntax.kind()) {
24587 Some(Self { syntax })
24588 } else {
24589 None
24590 }
24591 }
24592 #[inline]
24593 fn syntax(&self) -> &SyntaxNode {
24594 &self.syntax
24595 }
24596}
24597impl AstNode for PositionFn {
24598 #[inline]
24599 fn can_cast(kind: SyntaxKind) -> bool {
24600 kind == SyntaxKind::POSITION_FN
24601 }
24602 #[inline]
24603 fn cast(syntax: SyntaxNode) -> Option<Self> {
24604 if Self::can_cast(syntax.kind()) {
24605 Some(Self { syntax })
24606 } else {
24607 None
24608 }
24609 }
24610 #[inline]
24611 fn syntax(&self) -> &SyntaxNode {
24612 &self.syntax
24613 }
24614}
24615impl AstNode for PostfixExpr {
24616 #[inline]
24617 fn can_cast(kind: SyntaxKind) -> bool {
24618 kind == SyntaxKind::POSTFIX_EXPR
24619 }
24620 #[inline]
24621 fn cast(syntax: SyntaxNode) -> Option<Self> {
24622 if Self::can_cast(syntax.kind()) {
24623 Some(Self { syntax })
24624 } else {
24625 None
24626 }
24627 }
24628 #[inline]
24629 fn syntax(&self) -> &SyntaxNode {
24630 &self.syntax
24631 }
24632}
24633impl AstNode for PrefixExpr {
24634 #[inline]
24635 fn can_cast(kind: SyntaxKind) -> bool {
24636 kind == SyntaxKind::PREFIX_EXPR
24637 }
24638 #[inline]
24639 fn cast(syntax: SyntaxNode) -> Option<Self> {
24640 if Self::can_cast(syntax.kind()) {
24641 Some(Self { syntax })
24642 } else {
24643 None
24644 }
24645 }
24646 #[inline]
24647 fn syntax(&self) -> &SyntaxNode {
24648 &self.syntax
24649 }
24650}
24651impl AstNode for Prepare {
24652 #[inline]
24653 fn can_cast(kind: SyntaxKind) -> bool {
24654 kind == SyntaxKind::PREPARE
24655 }
24656 #[inline]
24657 fn cast(syntax: SyntaxNode) -> Option<Self> {
24658 if Self::can_cast(syntax.kind()) {
24659 Some(Self { syntax })
24660 } else {
24661 None
24662 }
24663 }
24664 #[inline]
24665 fn syntax(&self) -> &SyntaxNode {
24666 &self.syntax
24667 }
24668}
24669impl AstNode for PrepareTransaction {
24670 #[inline]
24671 fn can_cast(kind: SyntaxKind) -> bool {
24672 kind == SyntaxKind::PREPARE_TRANSACTION
24673 }
24674 #[inline]
24675 fn cast(syntax: SyntaxNode) -> Option<Self> {
24676 if Self::can_cast(syntax.kind()) {
24677 Some(Self { syntax })
24678 } else {
24679 None
24680 }
24681 }
24682 #[inline]
24683 fn syntax(&self) -> &SyntaxNode {
24684 &self.syntax
24685 }
24686}
24687impl AstNode for PreserveRows {
24688 #[inline]
24689 fn can_cast(kind: SyntaxKind) -> bool {
24690 kind == SyntaxKind::PRESERVE_ROWS
24691 }
24692 #[inline]
24693 fn cast(syntax: SyntaxNode) -> Option<Self> {
24694 if Self::can_cast(syntax.kind()) {
24695 Some(Self { syntax })
24696 } else {
24697 None
24698 }
24699 }
24700 #[inline]
24701 fn syntax(&self) -> &SyntaxNode {
24702 &self.syntax
24703 }
24704}
24705impl AstNode for PrimaryKeyConstraint {
24706 #[inline]
24707 fn can_cast(kind: SyntaxKind) -> bool {
24708 kind == SyntaxKind::PRIMARY_KEY_CONSTRAINT
24709 }
24710 #[inline]
24711 fn cast(syntax: SyntaxNode) -> Option<Self> {
24712 if Self::can_cast(syntax.kind()) {
24713 Some(Self { syntax })
24714 } else {
24715 None
24716 }
24717 }
24718 #[inline]
24719 fn syntax(&self) -> &SyntaxNode {
24720 &self.syntax
24721 }
24722}
24723impl AstNode for PrivilegeTarget {
24724 #[inline]
24725 fn can_cast(kind: SyntaxKind) -> bool {
24726 kind == SyntaxKind::PRIVILEGE_TARGET
24727 }
24728 #[inline]
24729 fn cast(syntax: SyntaxNode) -> Option<Self> {
24730 if Self::can_cast(syntax.kind()) {
24731 Some(Self { syntax })
24732 } else {
24733 None
24734 }
24735 }
24736 #[inline]
24737 fn syntax(&self) -> &SyntaxNode {
24738 &self.syntax
24739 }
24740}
24741impl AstNode for Privileges {
24742 #[inline]
24743 fn can_cast(kind: SyntaxKind) -> bool {
24744 kind == SyntaxKind::PRIVILEGES
24745 }
24746 #[inline]
24747 fn cast(syntax: SyntaxNode) -> Option<Self> {
24748 if Self::can_cast(syntax.kind()) {
24749 Some(Self { syntax })
24750 } else {
24751 None
24752 }
24753 }
24754 #[inline]
24755 fn syntax(&self) -> &SyntaxNode {
24756 &self.syntax
24757 }
24758}
24759impl AstNode for PublicationObject {
24760 #[inline]
24761 fn can_cast(kind: SyntaxKind) -> bool {
24762 kind == SyntaxKind::PUBLICATION_OBJECT
24763 }
24764 #[inline]
24765 fn cast(syntax: SyntaxNode) -> Option<Self> {
24766 if Self::can_cast(syntax.kind()) {
24767 Some(Self { syntax })
24768 } else {
24769 None
24770 }
24771 }
24772 #[inline]
24773 fn syntax(&self) -> &SyntaxNode {
24774 &self.syntax
24775 }
24776}
24777impl AstNode for ReadCommitted {
24778 #[inline]
24779 fn can_cast(kind: SyntaxKind) -> bool {
24780 kind == SyntaxKind::READ_COMMITTED
24781 }
24782 #[inline]
24783 fn cast(syntax: SyntaxNode) -> Option<Self> {
24784 if Self::can_cast(syntax.kind()) {
24785 Some(Self { syntax })
24786 } else {
24787 None
24788 }
24789 }
24790 #[inline]
24791 fn syntax(&self) -> &SyntaxNode {
24792 &self.syntax
24793 }
24794}
24795impl AstNode for ReadOnly {
24796 #[inline]
24797 fn can_cast(kind: SyntaxKind) -> bool {
24798 kind == SyntaxKind::READ_ONLY
24799 }
24800 #[inline]
24801 fn cast(syntax: SyntaxNode) -> Option<Self> {
24802 if Self::can_cast(syntax.kind()) {
24803 Some(Self { syntax })
24804 } else {
24805 None
24806 }
24807 }
24808 #[inline]
24809 fn syntax(&self) -> &SyntaxNode {
24810 &self.syntax
24811 }
24812}
24813impl AstNode for ReadUncommitted {
24814 #[inline]
24815 fn can_cast(kind: SyntaxKind) -> bool {
24816 kind == SyntaxKind::READ_UNCOMMITTED
24817 }
24818 #[inline]
24819 fn cast(syntax: SyntaxNode) -> Option<Self> {
24820 if Self::can_cast(syntax.kind()) {
24821 Some(Self { syntax })
24822 } else {
24823 None
24824 }
24825 }
24826 #[inline]
24827 fn syntax(&self) -> &SyntaxNode {
24828 &self.syntax
24829 }
24830}
24831impl AstNode for ReadWrite {
24832 #[inline]
24833 fn can_cast(kind: SyntaxKind) -> bool {
24834 kind == SyntaxKind::READ_WRITE
24835 }
24836 #[inline]
24837 fn cast(syntax: SyntaxNode) -> Option<Self> {
24838 if Self::can_cast(syntax.kind()) {
24839 Some(Self { syntax })
24840 } else {
24841 None
24842 }
24843 }
24844 #[inline]
24845 fn syntax(&self) -> &SyntaxNode {
24846 &self.syntax
24847 }
24848}
24849impl AstNode for Reassign {
24850 #[inline]
24851 fn can_cast(kind: SyntaxKind) -> bool {
24852 kind == SyntaxKind::REASSIGN
24853 }
24854 #[inline]
24855 fn cast(syntax: SyntaxNode) -> Option<Self> {
24856 if Self::can_cast(syntax.kind()) {
24857 Some(Self { syntax })
24858 } else {
24859 None
24860 }
24861 }
24862 #[inline]
24863 fn syntax(&self) -> &SyntaxNode {
24864 &self.syntax
24865 }
24866}
24867impl AstNode for ReferencesConstraint {
24868 #[inline]
24869 fn can_cast(kind: SyntaxKind) -> bool {
24870 kind == SyntaxKind::REFERENCES_CONSTRAINT
24871 }
24872 #[inline]
24873 fn cast(syntax: SyntaxNode) -> Option<Self> {
24874 if Self::can_cast(syntax.kind()) {
24875 Some(Self { syntax })
24876 } else {
24877 None
24878 }
24879 }
24880 #[inline]
24881 fn syntax(&self) -> &SyntaxNode {
24882 &self.syntax
24883 }
24884}
24885impl AstNode for Referencing {
24886 #[inline]
24887 fn can_cast(kind: SyntaxKind) -> bool {
24888 kind == SyntaxKind::REFERENCING
24889 }
24890 #[inline]
24891 fn cast(syntax: SyntaxNode) -> Option<Self> {
24892 if Self::can_cast(syntax.kind()) {
24893 Some(Self { syntax })
24894 } else {
24895 None
24896 }
24897 }
24898 #[inline]
24899 fn syntax(&self) -> &SyntaxNode {
24900 &self.syntax
24901 }
24902}
24903impl AstNode for ReferencingTable {
24904 #[inline]
24905 fn can_cast(kind: SyntaxKind) -> bool {
24906 kind == SyntaxKind::REFERENCING_TABLE
24907 }
24908 #[inline]
24909 fn cast(syntax: SyntaxNode) -> Option<Self> {
24910 if Self::can_cast(syntax.kind()) {
24911 Some(Self { syntax })
24912 } else {
24913 None
24914 }
24915 }
24916 #[inline]
24917 fn syntax(&self) -> &SyntaxNode {
24918 &self.syntax
24919 }
24920}
24921impl AstNode for Refresh {
24922 #[inline]
24923 fn can_cast(kind: SyntaxKind) -> bool {
24924 kind == SyntaxKind::REFRESH
24925 }
24926 #[inline]
24927 fn cast(syntax: SyntaxNode) -> Option<Self> {
24928 if Self::can_cast(syntax.kind()) {
24929 Some(Self { syntax })
24930 } else {
24931 None
24932 }
24933 }
24934 #[inline]
24935 fn syntax(&self) -> &SyntaxNode {
24936 &self.syntax
24937 }
24938}
24939impl AstNode for RefreshCollationVersion {
24940 #[inline]
24941 fn can_cast(kind: SyntaxKind) -> bool {
24942 kind == SyntaxKind::REFRESH_COLLATION_VERSION
24943 }
24944 #[inline]
24945 fn cast(syntax: SyntaxNode) -> Option<Self> {
24946 if Self::can_cast(syntax.kind()) {
24947 Some(Self { syntax })
24948 } else {
24949 None
24950 }
24951 }
24952 #[inline]
24953 fn syntax(&self) -> &SyntaxNode {
24954 &self.syntax
24955 }
24956}
24957impl AstNode for RefreshVersion {
24958 #[inline]
24959 fn can_cast(kind: SyntaxKind) -> bool {
24960 kind == SyntaxKind::REFRESH_VERSION
24961 }
24962 #[inline]
24963 fn cast(syntax: SyntaxNode) -> Option<Self> {
24964 if Self::can_cast(syntax.kind()) {
24965 Some(Self { syntax })
24966 } else {
24967 None
24968 }
24969 }
24970 #[inline]
24971 fn syntax(&self) -> &SyntaxNode {
24972 &self.syntax
24973 }
24974}
24975impl AstNode for Reindex {
24976 #[inline]
24977 fn can_cast(kind: SyntaxKind) -> bool {
24978 kind == SyntaxKind::REINDEX
24979 }
24980 #[inline]
24981 fn cast(syntax: SyntaxNode) -> Option<Self> {
24982 if Self::can_cast(syntax.kind()) {
24983 Some(Self { syntax })
24984 } else {
24985 None
24986 }
24987 }
24988 #[inline]
24989 fn syntax(&self) -> &SyntaxNode {
24990 &self.syntax
24991 }
24992}
24993impl AstNode for RelationName {
24994 #[inline]
24995 fn can_cast(kind: SyntaxKind) -> bool {
24996 kind == SyntaxKind::RELATION_NAME
24997 }
24998 #[inline]
24999 fn cast(syntax: SyntaxNode) -> Option<Self> {
25000 if Self::can_cast(syntax.kind()) {
25001 Some(Self { syntax })
25002 } else {
25003 None
25004 }
25005 }
25006 #[inline]
25007 fn syntax(&self) -> &SyntaxNode {
25008 &self.syntax
25009 }
25010}
25011impl AstNode for ReleaseSavepoint {
25012 #[inline]
25013 fn can_cast(kind: SyntaxKind) -> bool {
25014 kind == SyntaxKind::RELEASE_SAVEPOINT
25015 }
25016 #[inline]
25017 fn cast(syntax: SyntaxNode) -> Option<Self> {
25018 if Self::can_cast(syntax.kind()) {
25019 Some(Self { syntax })
25020 } else {
25021 None
25022 }
25023 }
25024 #[inline]
25025 fn syntax(&self) -> &SyntaxNode {
25026 &self.syntax
25027 }
25028}
25029impl AstNode for RenameColumn {
25030 #[inline]
25031 fn can_cast(kind: SyntaxKind) -> bool {
25032 kind == SyntaxKind::RENAME_COLUMN
25033 }
25034 #[inline]
25035 fn cast(syntax: SyntaxNode) -> Option<Self> {
25036 if Self::can_cast(syntax.kind()) {
25037 Some(Self { syntax })
25038 } else {
25039 None
25040 }
25041 }
25042 #[inline]
25043 fn syntax(&self) -> &SyntaxNode {
25044 &self.syntax
25045 }
25046}
25047impl AstNode for RenameConstraint {
25048 #[inline]
25049 fn can_cast(kind: SyntaxKind) -> bool {
25050 kind == SyntaxKind::RENAME_CONSTRAINT
25051 }
25052 #[inline]
25053 fn cast(syntax: SyntaxNode) -> Option<Self> {
25054 if Self::can_cast(syntax.kind()) {
25055 Some(Self { syntax })
25056 } else {
25057 None
25058 }
25059 }
25060 #[inline]
25061 fn syntax(&self) -> &SyntaxNode {
25062 &self.syntax
25063 }
25064}
25065impl AstNode for RenameTo {
25066 #[inline]
25067 fn can_cast(kind: SyntaxKind) -> bool {
25068 kind == SyntaxKind::RENAME_TO
25069 }
25070 #[inline]
25071 fn cast(syntax: SyntaxNode) -> Option<Self> {
25072 if Self::can_cast(syntax.kind()) {
25073 Some(Self { syntax })
25074 } else {
25075 None
25076 }
25077 }
25078 #[inline]
25079 fn syntax(&self) -> &SyntaxNode {
25080 &self.syntax
25081 }
25082}
25083impl AstNode for RepeatableClause {
25084 #[inline]
25085 fn can_cast(kind: SyntaxKind) -> bool {
25086 kind == SyntaxKind::REPEATABLE_CLAUSE
25087 }
25088 #[inline]
25089 fn cast(syntax: SyntaxNode) -> Option<Self> {
25090 if Self::can_cast(syntax.kind()) {
25091 Some(Self { syntax })
25092 } else {
25093 None
25094 }
25095 }
25096 #[inline]
25097 fn syntax(&self) -> &SyntaxNode {
25098 &self.syntax
25099 }
25100}
25101impl AstNode for RepeatableRead {
25102 #[inline]
25103 fn can_cast(kind: SyntaxKind) -> bool {
25104 kind == SyntaxKind::REPEATABLE_READ
25105 }
25106 #[inline]
25107 fn cast(syntax: SyntaxNode) -> Option<Self> {
25108 if Self::can_cast(syntax.kind()) {
25109 Some(Self { syntax })
25110 } else {
25111 None
25112 }
25113 }
25114 #[inline]
25115 fn syntax(&self) -> &SyntaxNode {
25116 &self.syntax
25117 }
25118}
25119impl AstNode for ReplicaIdentity {
25120 #[inline]
25121 fn can_cast(kind: SyntaxKind) -> bool {
25122 kind == SyntaxKind::REPLICA_IDENTITY
25123 }
25124 #[inline]
25125 fn cast(syntax: SyntaxNode) -> Option<Self> {
25126 if Self::can_cast(syntax.kind()) {
25127 Some(Self { syntax })
25128 } else {
25129 None
25130 }
25131 }
25132 #[inline]
25133 fn syntax(&self) -> &SyntaxNode {
25134 &self.syntax
25135 }
25136}
25137impl AstNode for Reset {
25138 #[inline]
25139 fn can_cast(kind: SyntaxKind) -> bool {
25140 kind == SyntaxKind::RESET
25141 }
25142 #[inline]
25143 fn cast(syntax: SyntaxNode) -> Option<Self> {
25144 if Self::can_cast(syntax.kind()) {
25145 Some(Self { syntax })
25146 } else {
25147 None
25148 }
25149 }
25150 #[inline]
25151 fn syntax(&self) -> &SyntaxNode {
25152 &self.syntax
25153 }
25154}
25155impl AstNode for ResetConfigParam {
25156 #[inline]
25157 fn can_cast(kind: SyntaxKind) -> bool {
25158 kind == SyntaxKind::RESET_CONFIG_PARAM
25159 }
25160 #[inline]
25161 fn cast(syntax: SyntaxNode) -> Option<Self> {
25162 if Self::can_cast(syntax.kind()) {
25163 Some(Self { syntax })
25164 } else {
25165 None
25166 }
25167 }
25168 #[inline]
25169 fn syntax(&self) -> &SyntaxNode {
25170 &self.syntax
25171 }
25172}
25173impl AstNode for ResetFuncOption {
25174 #[inline]
25175 fn can_cast(kind: SyntaxKind) -> bool {
25176 kind == SyntaxKind::RESET_FUNC_OPTION
25177 }
25178 #[inline]
25179 fn cast(syntax: SyntaxNode) -> Option<Self> {
25180 if Self::can_cast(syntax.kind()) {
25181 Some(Self { syntax })
25182 } else {
25183 None
25184 }
25185 }
25186 #[inline]
25187 fn syntax(&self) -> &SyntaxNode {
25188 &self.syntax
25189 }
25190}
25191impl AstNode for ResetOptions {
25192 #[inline]
25193 fn can_cast(kind: SyntaxKind) -> bool {
25194 kind == SyntaxKind::RESET_OPTIONS
25195 }
25196 #[inline]
25197 fn cast(syntax: SyntaxNode) -> Option<Self> {
25198 if Self::can_cast(syntax.kind()) {
25199 Some(Self { syntax })
25200 } else {
25201 None
25202 }
25203 }
25204 #[inline]
25205 fn syntax(&self) -> &SyntaxNode {
25206 &self.syntax
25207 }
25208}
25209impl AstNode for ResetSessionAuth {
25210 #[inline]
25211 fn can_cast(kind: SyntaxKind) -> bool {
25212 kind == SyntaxKind::RESET_SESSION_AUTH
25213 }
25214 #[inline]
25215 fn cast(syntax: SyntaxNode) -> Option<Self> {
25216 if Self::can_cast(syntax.kind()) {
25217 Some(Self { syntax })
25218 } else {
25219 None
25220 }
25221 }
25222 #[inline]
25223 fn syntax(&self) -> &SyntaxNode {
25224 &self.syntax
25225 }
25226}
25227impl AstNode for Restart {
25228 #[inline]
25229 fn can_cast(kind: SyntaxKind) -> bool {
25230 kind == SyntaxKind::RESTART
25231 }
25232 #[inline]
25233 fn cast(syntax: SyntaxNode) -> Option<Self> {
25234 if Self::can_cast(syntax.kind()) {
25235 Some(Self { syntax })
25236 } else {
25237 None
25238 }
25239 }
25240 #[inline]
25241 fn syntax(&self) -> &SyntaxNode {
25242 &self.syntax
25243 }
25244}
25245impl AstNode for Restrict {
25246 #[inline]
25247 fn can_cast(kind: SyntaxKind) -> bool {
25248 kind == SyntaxKind::RESTRICT
25249 }
25250 #[inline]
25251 fn cast(syntax: SyntaxNode) -> Option<Self> {
25252 if Self::can_cast(syntax.kind()) {
25253 Some(Self { syntax })
25254 } else {
25255 None
25256 }
25257 }
25258 #[inline]
25259 fn syntax(&self) -> &SyntaxNode {
25260 &self.syntax
25261 }
25262}
25263impl AstNode for RetType {
25264 #[inline]
25265 fn can_cast(kind: SyntaxKind) -> bool {
25266 kind == SyntaxKind::RET_TYPE
25267 }
25268 #[inline]
25269 fn cast(syntax: SyntaxNode) -> Option<Self> {
25270 if Self::can_cast(syntax.kind()) {
25271 Some(Self { syntax })
25272 } else {
25273 None
25274 }
25275 }
25276 #[inline]
25277 fn syntax(&self) -> &SyntaxNode {
25278 &self.syntax
25279 }
25280}
25281impl AstNode for ReturnFuncOption {
25282 #[inline]
25283 fn can_cast(kind: SyntaxKind) -> bool {
25284 kind == SyntaxKind::RETURN_FUNC_OPTION
25285 }
25286 #[inline]
25287 fn cast(syntax: SyntaxNode) -> Option<Self> {
25288 if Self::can_cast(syntax.kind()) {
25289 Some(Self { syntax })
25290 } else {
25291 None
25292 }
25293 }
25294 #[inline]
25295 fn syntax(&self) -> &SyntaxNode {
25296 &self.syntax
25297 }
25298}
25299impl AstNode for ReturningClause {
25300 #[inline]
25301 fn can_cast(kind: SyntaxKind) -> bool {
25302 kind == SyntaxKind::RETURNING_CLAUSE
25303 }
25304 #[inline]
25305 fn cast(syntax: SyntaxNode) -> Option<Self> {
25306 if Self::can_cast(syntax.kind()) {
25307 Some(Self { syntax })
25308 } else {
25309 None
25310 }
25311 }
25312 #[inline]
25313 fn syntax(&self) -> &SyntaxNode {
25314 &self.syntax
25315 }
25316}
25317impl AstNode for ReturningOption {
25318 #[inline]
25319 fn can_cast(kind: SyntaxKind) -> bool {
25320 kind == SyntaxKind::RETURNING_OPTION
25321 }
25322 #[inline]
25323 fn cast(syntax: SyntaxNode) -> Option<Self> {
25324 if Self::can_cast(syntax.kind()) {
25325 Some(Self { syntax })
25326 } else {
25327 None
25328 }
25329 }
25330 #[inline]
25331 fn syntax(&self) -> &SyntaxNode {
25332 &self.syntax
25333 }
25334}
25335impl AstNode for ReturningOptionList {
25336 #[inline]
25337 fn can_cast(kind: SyntaxKind) -> bool {
25338 kind == SyntaxKind::RETURNING_OPTION_LIST
25339 }
25340 #[inline]
25341 fn cast(syntax: SyntaxNode) -> Option<Self> {
25342 if Self::can_cast(syntax.kind()) {
25343 Some(Self { syntax })
25344 } else {
25345 None
25346 }
25347 }
25348 #[inline]
25349 fn syntax(&self) -> &SyntaxNode {
25350 &self.syntax
25351 }
25352}
25353impl AstNode for Revoke {
25354 #[inline]
25355 fn can_cast(kind: SyntaxKind) -> bool {
25356 kind == SyntaxKind::REVOKE
25357 }
25358 #[inline]
25359 fn cast(syntax: SyntaxNode) -> Option<Self> {
25360 if Self::can_cast(syntax.kind()) {
25361 Some(Self { syntax })
25362 } else {
25363 None
25364 }
25365 }
25366 #[inline]
25367 fn syntax(&self) -> &SyntaxNode {
25368 &self.syntax
25369 }
25370}
25371impl AstNode for RevokeCommand {
25372 #[inline]
25373 fn can_cast(kind: SyntaxKind) -> bool {
25374 kind == SyntaxKind::REVOKE_COMMAND
25375 }
25376 #[inline]
25377 fn cast(syntax: SyntaxNode) -> Option<Self> {
25378 if Self::can_cast(syntax.kind()) {
25379 Some(Self { syntax })
25380 } else {
25381 None
25382 }
25383 }
25384 #[inline]
25385 fn syntax(&self) -> &SyntaxNode {
25386 &self.syntax
25387 }
25388}
25389impl AstNode for RevokeCommandList {
25390 #[inline]
25391 fn can_cast(kind: SyntaxKind) -> bool {
25392 kind == SyntaxKind::REVOKE_COMMAND_LIST
25393 }
25394 #[inline]
25395 fn cast(syntax: SyntaxNode) -> Option<Self> {
25396 if Self::can_cast(syntax.kind()) {
25397 Some(Self { syntax })
25398 } else {
25399 None
25400 }
25401 }
25402 #[inline]
25403 fn syntax(&self) -> &SyntaxNode {
25404 &self.syntax
25405 }
25406}
25407impl AstNode for RevokeDefaultPrivileges {
25408 #[inline]
25409 fn can_cast(kind: SyntaxKind) -> bool {
25410 kind == SyntaxKind::REVOKE_DEFAULT_PRIVILEGES
25411 }
25412 #[inline]
25413 fn cast(syntax: SyntaxNode) -> Option<Self> {
25414 if Self::can_cast(syntax.kind()) {
25415 Some(Self { syntax })
25416 } else {
25417 None
25418 }
25419 }
25420 #[inline]
25421 fn syntax(&self) -> &SyntaxNode {
25422 &self.syntax
25423 }
25424}
25425impl AstNode for Role {
25426 #[inline]
25427 fn can_cast(kind: SyntaxKind) -> bool {
25428 kind == SyntaxKind::ROLE
25429 }
25430 #[inline]
25431 fn cast(syntax: SyntaxNode) -> Option<Self> {
25432 if Self::can_cast(syntax.kind()) {
25433 Some(Self { syntax })
25434 } else {
25435 None
25436 }
25437 }
25438 #[inline]
25439 fn syntax(&self) -> &SyntaxNode {
25440 &self.syntax
25441 }
25442}
25443impl AstNode for RoleList {
25444 #[inline]
25445 fn can_cast(kind: SyntaxKind) -> bool {
25446 kind == SyntaxKind::ROLE_LIST
25447 }
25448 #[inline]
25449 fn cast(syntax: SyntaxNode) -> Option<Self> {
25450 if Self::can_cast(syntax.kind()) {
25451 Some(Self { syntax })
25452 } else {
25453 None
25454 }
25455 }
25456 #[inline]
25457 fn syntax(&self) -> &SyntaxNode {
25458 &self.syntax
25459 }
25460}
25461impl AstNode for RoleOption {
25462 #[inline]
25463 fn can_cast(kind: SyntaxKind) -> bool {
25464 kind == SyntaxKind::ROLE_OPTION
25465 }
25466 #[inline]
25467 fn cast(syntax: SyntaxNode) -> Option<Self> {
25468 if Self::can_cast(syntax.kind()) {
25469 Some(Self { syntax })
25470 } else {
25471 None
25472 }
25473 }
25474 #[inline]
25475 fn syntax(&self) -> &SyntaxNode {
25476 &self.syntax
25477 }
25478}
25479impl AstNode for RoleOptionList {
25480 #[inline]
25481 fn can_cast(kind: SyntaxKind) -> bool {
25482 kind == SyntaxKind::ROLE_OPTION_LIST
25483 }
25484 #[inline]
25485 fn cast(syntax: SyntaxNode) -> Option<Self> {
25486 if Self::can_cast(syntax.kind()) {
25487 Some(Self { syntax })
25488 } else {
25489 None
25490 }
25491 }
25492 #[inline]
25493 fn syntax(&self) -> &SyntaxNode {
25494 &self.syntax
25495 }
25496}
25497impl AstNode for Rollback {
25498 #[inline]
25499 fn can_cast(kind: SyntaxKind) -> bool {
25500 kind == SyntaxKind::ROLLBACK
25501 }
25502 #[inline]
25503 fn cast(syntax: SyntaxNode) -> Option<Self> {
25504 if Self::can_cast(syntax.kind()) {
25505 Some(Self { syntax })
25506 } else {
25507 None
25508 }
25509 }
25510 #[inline]
25511 fn syntax(&self) -> &SyntaxNode {
25512 &self.syntax
25513 }
25514}
25515impl AstNode for Row {
25516 #[inline]
25517 fn can_cast(kind: SyntaxKind) -> bool {
25518 kind == SyntaxKind::ROW
25519 }
25520 #[inline]
25521 fn cast(syntax: SyntaxNode) -> Option<Self> {
25522 if Self::can_cast(syntax.kind()) {
25523 Some(Self { syntax })
25524 } else {
25525 None
25526 }
25527 }
25528 #[inline]
25529 fn syntax(&self) -> &SyntaxNode {
25530 &self.syntax
25531 }
25532}
25533impl AstNode for RowList {
25534 #[inline]
25535 fn can_cast(kind: SyntaxKind) -> bool {
25536 kind == SyntaxKind::ROW_LIST
25537 }
25538 #[inline]
25539 fn cast(syntax: SyntaxNode) -> Option<Self> {
25540 if Self::can_cast(syntax.kind()) {
25541 Some(Self { syntax })
25542 } else {
25543 None
25544 }
25545 }
25546 #[inline]
25547 fn syntax(&self) -> &SyntaxNode {
25548 &self.syntax
25549 }
25550}
25551impl AstNode for RowsFuncOption {
25552 #[inline]
25553 fn can_cast(kind: SyntaxKind) -> bool {
25554 kind == SyntaxKind::ROWS_FUNC_OPTION
25555 }
25556 #[inline]
25557 fn cast(syntax: SyntaxNode) -> Option<Self> {
25558 if Self::can_cast(syntax.kind()) {
25559 Some(Self { syntax })
25560 } else {
25561 None
25562 }
25563 }
25564 #[inline]
25565 fn syntax(&self) -> &SyntaxNode {
25566 &self.syntax
25567 }
25568}
25569impl AstNode for Savepoint {
25570 #[inline]
25571 fn can_cast(kind: SyntaxKind) -> bool {
25572 kind == SyntaxKind::SAVEPOINT
25573 }
25574 #[inline]
25575 fn cast(syntax: SyntaxNode) -> Option<Self> {
25576 if Self::can_cast(syntax.kind()) {
25577 Some(Self { syntax })
25578 } else {
25579 None
25580 }
25581 }
25582 #[inline]
25583 fn syntax(&self) -> &SyntaxNode {
25584 &self.syntax
25585 }
25586}
25587impl AstNode for SchemaAuthorization {
25588 #[inline]
25589 fn can_cast(kind: SyntaxKind) -> bool {
25590 kind == SyntaxKind::SCHEMA_AUTHORIZATION
25591 }
25592 #[inline]
25593 fn cast(syntax: SyntaxNode) -> Option<Self> {
25594 if Self::can_cast(syntax.kind()) {
25595 Some(Self { syntax })
25596 } else {
25597 None
25598 }
25599 }
25600 #[inline]
25601 fn syntax(&self) -> &SyntaxNode {
25602 &self.syntax
25603 }
25604}
25605impl AstNode for SecurityFuncOption {
25606 #[inline]
25607 fn can_cast(kind: SyntaxKind) -> bool {
25608 kind == SyntaxKind::SECURITY_FUNC_OPTION
25609 }
25610 #[inline]
25611 fn cast(syntax: SyntaxNode) -> Option<Self> {
25612 if Self::can_cast(syntax.kind()) {
25613 Some(Self { syntax })
25614 } else {
25615 None
25616 }
25617 }
25618 #[inline]
25619 fn syntax(&self) -> &SyntaxNode {
25620 &self.syntax
25621 }
25622}
25623impl AstNode for SecurityLabel {
25624 #[inline]
25625 fn can_cast(kind: SyntaxKind) -> bool {
25626 kind == SyntaxKind::SECURITY_LABEL
25627 }
25628 #[inline]
25629 fn cast(syntax: SyntaxNode) -> Option<Self> {
25630 if Self::can_cast(syntax.kind()) {
25631 Some(Self { syntax })
25632 } else {
25633 None
25634 }
25635 }
25636 #[inline]
25637 fn syntax(&self) -> &SyntaxNode {
25638 &self.syntax
25639 }
25640}
25641impl AstNode for Select {
25642 #[inline]
25643 fn can_cast(kind: SyntaxKind) -> bool {
25644 kind == SyntaxKind::SELECT
25645 }
25646 #[inline]
25647 fn cast(syntax: SyntaxNode) -> Option<Self> {
25648 if Self::can_cast(syntax.kind()) {
25649 Some(Self { syntax })
25650 } else {
25651 None
25652 }
25653 }
25654 #[inline]
25655 fn syntax(&self) -> &SyntaxNode {
25656 &self.syntax
25657 }
25658}
25659impl AstNode for SelectClause {
25660 #[inline]
25661 fn can_cast(kind: SyntaxKind) -> bool {
25662 kind == SyntaxKind::SELECT_CLAUSE
25663 }
25664 #[inline]
25665 fn cast(syntax: SyntaxNode) -> Option<Self> {
25666 if Self::can_cast(syntax.kind()) {
25667 Some(Self { syntax })
25668 } else {
25669 None
25670 }
25671 }
25672 #[inline]
25673 fn syntax(&self) -> &SyntaxNode {
25674 &self.syntax
25675 }
25676}
25677impl AstNode for SelectInto {
25678 #[inline]
25679 fn can_cast(kind: SyntaxKind) -> bool {
25680 kind == SyntaxKind::SELECT_INTO
25681 }
25682 #[inline]
25683 fn cast(syntax: SyntaxNode) -> Option<Self> {
25684 if Self::can_cast(syntax.kind()) {
25685 Some(Self { syntax })
25686 } else {
25687 None
25688 }
25689 }
25690 #[inline]
25691 fn syntax(&self) -> &SyntaxNode {
25692 &self.syntax
25693 }
25694}
25695impl AstNode for SequenceOption {
25696 #[inline]
25697 fn can_cast(kind: SyntaxKind) -> bool {
25698 kind == SyntaxKind::SEQUENCE_OPTION
25699 }
25700 #[inline]
25701 fn cast(syntax: SyntaxNode) -> Option<Self> {
25702 if Self::can_cast(syntax.kind()) {
25703 Some(Self { syntax })
25704 } else {
25705 None
25706 }
25707 }
25708 #[inline]
25709 fn syntax(&self) -> &SyntaxNode {
25710 &self.syntax
25711 }
25712}
25713impl AstNode for SequenceOptionList {
25714 #[inline]
25715 fn can_cast(kind: SyntaxKind) -> bool {
25716 kind == SyntaxKind::SEQUENCE_OPTION_LIST
25717 }
25718 #[inline]
25719 fn cast(syntax: SyntaxNode) -> Option<Self> {
25720 if Self::can_cast(syntax.kind()) {
25721 Some(Self { syntax })
25722 } else {
25723 None
25724 }
25725 }
25726 #[inline]
25727 fn syntax(&self) -> &SyntaxNode {
25728 &self.syntax
25729 }
25730}
25731impl AstNode for Serializable {
25732 #[inline]
25733 fn can_cast(kind: SyntaxKind) -> bool {
25734 kind == SyntaxKind::SERIALIZABLE
25735 }
25736 #[inline]
25737 fn cast(syntax: SyntaxNode) -> Option<Self> {
25738 if Self::can_cast(syntax.kind()) {
25739 Some(Self { syntax })
25740 } else {
25741 None
25742 }
25743 }
25744 #[inline]
25745 fn syntax(&self) -> &SyntaxNode {
25746 &self.syntax
25747 }
25748}
25749impl AstNode for Set {
25750 #[inline]
25751 fn can_cast(kind: SyntaxKind) -> bool {
25752 kind == SyntaxKind::SET
25753 }
25754 #[inline]
25755 fn cast(syntax: SyntaxNode) -> Option<Self> {
25756 if Self::can_cast(syntax.kind()) {
25757 Some(Self { syntax })
25758 } else {
25759 None
25760 }
25761 }
25762 #[inline]
25763 fn syntax(&self) -> &SyntaxNode {
25764 &self.syntax
25765 }
25766}
25767impl AstNode for SetAccessMethod {
25768 #[inline]
25769 fn can_cast(kind: SyntaxKind) -> bool {
25770 kind == SyntaxKind::SET_ACCESS_METHOD
25771 }
25772 #[inline]
25773 fn cast(syntax: SyntaxNode) -> Option<Self> {
25774 if Self::can_cast(syntax.kind()) {
25775 Some(Self { syntax })
25776 } else {
25777 None
25778 }
25779 }
25780 #[inline]
25781 fn syntax(&self) -> &SyntaxNode {
25782 &self.syntax
25783 }
25784}
25785impl AstNode for SetClause {
25786 #[inline]
25787 fn can_cast(kind: SyntaxKind) -> bool {
25788 kind == SyntaxKind::SET_CLAUSE
25789 }
25790 #[inline]
25791 fn cast(syntax: SyntaxNode) -> Option<Self> {
25792 if Self::can_cast(syntax.kind()) {
25793 Some(Self { syntax })
25794 } else {
25795 None
25796 }
25797 }
25798 #[inline]
25799 fn syntax(&self) -> &SyntaxNode {
25800 &self.syntax
25801 }
25802}
25803impl AstNode for SetColumnList {
25804 #[inline]
25805 fn can_cast(kind: SyntaxKind) -> bool {
25806 kind == SyntaxKind::SET_COLUMN_LIST
25807 }
25808 #[inline]
25809 fn cast(syntax: SyntaxNode) -> Option<Self> {
25810 if Self::can_cast(syntax.kind()) {
25811 Some(Self { syntax })
25812 } else {
25813 None
25814 }
25815 }
25816 #[inline]
25817 fn syntax(&self) -> &SyntaxNode {
25818 &self.syntax
25819 }
25820}
25821impl AstNode for SetCompression {
25822 #[inline]
25823 fn can_cast(kind: SyntaxKind) -> bool {
25824 kind == SyntaxKind::SET_COMPRESSION
25825 }
25826 #[inline]
25827 fn cast(syntax: SyntaxNode) -> Option<Self> {
25828 if Self::can_cast(syntax.kind()) {
25829 Some(Self { syntax })
25830 } else {
25831 None
25832 }
25833 }
25834 #[inline]
25835 fn syntax(&self) -> &SyntaxNode {
25836 &self.syntax
25837 }
25838}
25839impl AstNode for SetConfigParam {
25840 #[inline]
25841 fn can_cast(kind: SyntaxKind) -> bool {
25842 kind == SyntaxKind::SET_CONFIG_PARAM
25843 }
25844 #[inline]
25845 fn cast(syntax: SyntaxNode) -> Option<Self> {
25846 if Self::can_cast(syntax.kind()) {
25847 Some(Self { syntax })
25848 } else {
25849 None
25850 }
25851 }
25852 #[inline]
25853 fn syntax(&self) -> &SyntaxNode {
25854 &self.syntax
25855 }
25856}
25857impl AstNode for SetConstraints {
25858 #[inline]
25859 fn can_cast(kind: SyntaxKind) -> bool {
25860 kind == SyntaxKind::SET_CONSTRAINTS
25861 }
25862 #[inline]
25863 fn cast(syntax: SyntaxNode) -> Option<Self> {
25864 if Self::can_cast(syntax.kind()) {
25865 Some(Self { syntax })
25866 } else {
25867 None
25868 }
25869 }
25870 #[inline]
25871 fn syntax(&self) -> &SyntaxNode {
25872 &self.syntax
25873 }
25874}
25875impl AstNode for SetDefault {
25876 #[inline]
25877 fn can_cast(kind: SyntaxKind) -> bool {
25878 kind == SyntaxKind::SET_DEFAULT
25879 }
25880 #[inline]
25881 fn cast(syntax: SyntaxNode) -> Option<Self> {
25882 if Self::can_cast(syntax.kind()) {
25883 Some(Self { syntax })
25884 } else {
25885 None
25886 }
25887 }
25888 #[inline]
25889 fn syntax(&self) -> &SyntaxNode {
25890 &self.syntax
25891 }
25892}
25893impl AstNode for SetDefaultColumns {
25894 #[inline]
25895 fn can_cast(kind: SyntaxKind) -> bool {
25896 kind == SyntaxKind::SET_DEFAULT_COLUMNS
25897 }
25898 #[inline]
25899 fn cast(syntax: SyntaxNode) -> Option<Self> {
25900 if Self::can_cast(syntax.kind()) {
25901 Some(Self { syntax })
25902 } else {
25903 None
25904 }
25905 }
25906 #[inline]
25907 fn syntax(&self) -> &SyntaxNode {
25908 &self.syntax
25909 }
25910}
25911impl AstNode for SetExpr {
25912 #[inline]
25913 fn can_cast(kind: SyntaxKind) -> bool {
25914 kind == SyntaxKind::SET_EXPR
25915 }
25916 #[inline]
25917 fn cast(syntax: SyntaxNode) -> Option<Self> {
25918 if Self::can_cast(syntax.kind()) {
25919 Some(Self { syntax })
25920 } else {
25921 None
25922 }
25923 }
25924 #[inline]
25925 fn syntax(&self) -> &SyntaxNode {
25926 &self.syntax
25927 }
25928}
25929impl AstNode for SetExprList {
25930 #[inline]
25931 fn can_cast(kind: SyntaxKind) -> bool {
25932 kind == SyntaxKind::SET_EXPR_LIST
25933 }
25934 #[inline]
25935 fn cast(syntax: SyntaxNode) -> Option<Self> {
25936 if Self::can_cast(syntax.kind()) {
25937 Some(Self { syntax })
25938 } else {
25939 None
25940 }
25941 }
25942 #[inline]
25943 fn syntax(&self) -> &SyntaxNode {
25944 &self.syntax
25945 }
25946}
25947impl AstNode for SetExpression {
25948 #[inline]
25949 fn can_cast(kind: SyntaxKind) -> bool {
25950 kind == SyntaxKind::SET_EXPRESSION
25951 }
25952 #[inline]
25953 fn cast(syntax: SyntaxNode) -> Option<Self> {
25954 if Self::can_cast(syntax.kind()) {
25955 Some(Self { syntax })
25956 } else {
25957 None
25958 }
25959 }
25960 #[inline]
25961 fn syntax(&self) -> &SyntaxNode {
25962 &self.syntax
25963 }
25964}
25965impl AstNode for SetFuncOption {
25966 #[inline]
25967 fn can_cast(kind: SyntaxKind) -> bool {
25968 kind == SyntaxKind::SET_FUNC_OPTION
25969 }
25970 #[inline]
25971 fn cast(syntax: SyntaxNode) -> Option<Self> {
25972 if Self::can_cast(syntax.kind()) {
25973 Some(Self { syntax })
25974 } else {
25975 None
25976 }
25977 }
25978 #[inline]
25979 fn syntax(&self) -> &SyntaxNode {
25980 &self.syntax
25981 }
25982}
25983impl AstNode for SetGenerated {
25984 #[inline]
25985 fn can_cast(kind: SyntaxKind) -> bool {
25986 kind == SyntaxKind::SET_GENERATED
25987 }
25988 #[inline]
25989 fn cast(syntax: SyntaxNode) -> Option<Self> {
25990 if Self::can_cast(syntax.kind()) {
25991 Some(Self { syntax })
25992 } else {
25993 None
25994 }
25995 }
25996 #[inline]
25997 fn syntax(&self) -> &SyntaxNode {
25998 &self.syntax
25999 }
26000}
26001impl AstNode for SetGeneratedOptions {
26002 #[inline]
26003 fn can_cast(kind: SyntaxKind) -> bool {
26004 kind == SyntaxKind::SET_GENERATED_OPTIONS
26005 }
26006 #[inline]
26007 fn cast(syntax: SyntaxNode) -> Option<Self> {
26008 if Self::can_cast(syntax.kind()) {
26009 Some(Self { syntax })
26010 } else {
26011 None
26012 }
26013 }
26014 #[inline]
26015 fn syntax(&self) -> &SyntaxNode {
26016 &self.syntax
26017 }
26018}
26019impl AstNode for SetLogged {
26020 #[inline]
26021 fn can_cast(kind: SyntaxKind) -> bool {
26022 kind == SyntaxKind::SET_LOGGED
26023 }
26024 #[inline]
26025 fn cast(syntax: SyntaxNode) -> Option<Self> {
26026 if Self::can_cast(syntax.kind()) {
26027 Some(Self { syntax })
26028 } else {
26029 None
26030 }
26031 }
26032 #[inline]
26033 fn syntax(&self) -> &SyntaxNode {
26034 &self.syntax
26035 }
26036}
26037impl AstNode for SetMultipleColumns {
26038 #[inline]
26039 fn can_cast(kind: SyntaxKind) -> bool {
26040 kind == SyntaxKind::SET_MULTIPLE_COLUMNS
26041 }
26042 #[inline]
26043 fn cast(syntax: SyntaxNode) -> Option<Self> {
26044 if Self::can_cast(syntax.kind()) {
26045 Some(Self { syntax })
26046 } else {
26047 None
26048 }
26049 }
26050 #[inline]
26051 fn syntax(&self) -> &SyntaxNode {
26052 &self.syntax
26053 }
26054}
26055impl AstNode for SetNotNull {
26056 #[inline]
26057 fn can_cast(kind: SyntaxKind) -> bool {
26058 kind == SyntaxKind::SET_NOT_NULL
26059 }
26060 #[inline]
26061 fn cast(syntax: SyntaxNode) -> Option<Self> {
26062 if Self::can_cast(syntax.kind()) {
26063 Some(Self { syntax })
26064 } else {
26065 None
26066 }
26067 }
26068 #[inline]
26069 fn syntax(&self) -> &SyntaxNode {
26070 &self.syntax
26071 }
26072}
26073impl AstNode for SetNullColumns {
26074 #[inline]
26075 fn can_cast(kind: SyntaxKind) -> bool {
26076 kind == SyntaxKind::SET_NULL_COLUMNS
26077 }
26078 #[inline]
26079 fn cast(syntax: SyntaxNode) -> Option<Self> {
26080 if Self::can_cast(syntax.kind()) {
26081 Some(Self { syntax })
26082 } else {
26083 None
26084 }
26085 }
26086 #[inline]
26087 fn syntax(&self) -> &SyntaxNode {
26088 &self.syntax
26089 }
26090}
26091impl AstNode for SetOptions {
26092 #[inline]
26093 fn can_cast(kind: SyntaxKind) -> bool {
26094 kind == SyntaxKind::SET_OPTIONS
26095 }
26096 #[inline]
26097 fn cast(syntax: SyntaxNode) -> Option<Self> {
26098 if Self::can_cast(syntax.kind()) {
26099 Some(Self { syntax })
26100 } else {
26101 None
26102 }
26103 }
26104 #[inline]
26105 fn syntax(&self) -> &SyntaxNode {
26106 &self.syntax
26107 }
26108}
26109impl AstNode for SetOptionsList {
26110 #[inline]
26111 fn can_cast(kind: SyntaxKind) -> bool {
26112 kind == SyntaxKind::SET_OPTIONS_LIST
26113 }
26114 #[inline]
26115 fn cast(syntax: SyntaxNode) -> Option<Self> {
26116 if Self::can_cast(syntax.kind()) {
26117 Some(Self { syntax })
26118 } else {
26119 None
26120 }
26121 }
26122 #[inline]
26123 fn syntax(&self) -> &SyntaxNode {
26124 &self.syntax
26125 }
26126}
26127impl AstNode for SetRole {
26128 #[inline]
26129 fn can_cast(kind: SyntaxKind) -> bool {
26130 kind == SyntaxKind::SET_ROLE
26131 }
26132 #[inline]
26133 fn cast(syntax: SyntaxNode) -> Option<Self> {
26134 if Self::can_cast(syntax.kind()) {
26135 Some(Self { syntax })
26136 } else {
26137 None
26138 }
26139 }
26140 #[inline]
26141 fn syntax(&self) -> &SyntaxNode {
26142 &self.syntax
26143 }
26144}
26145impl AstNode for SetSchema {
26146 #[inline]
26147 fn can_cast(kind: SyntaxKind) -> bool {
26148 kind == SyntaxKind::SET_SCHEMA
26149 }
26150 #[inline]
26151 fn cast(syntax: SyntaxNode) -> Option<Self> {
26152 if Self::can_cast(syntax.kind()) {
26153 Some(Self { syntax })
26154 } else {
26155 None
26156 }
26157 }
26158 #[inline]
26159 fn syntax(&self) -> &SyntaxNode {
26160 &self.syntax
26161 }
26162}
26163impl AstNode for SetSequenceOption {
26164 #[inline]
26165 fn can_cast(kind: SyntaxKind) -> bool {
26166 kind == SyntaxKind::SET_SEQUENCE_OPTION
26167 }
26168 #[inline]
26169 fn cast(syntax: SyntaxNode) -> Option<Self> {
26170 if Self::can_cast(syntax.kind()) {
26171 Some(Self { syntax })
26172 } else {
26173 None
26174 }
26175 }
26176 #[inline]
26177 fn syntax(&self) -> &SyntaxNode {
26178 &self.syntax
26179 }
26180}
26181impl AstNode for SetSessionAuth {
26182 #[inline]
26183 fn can_cast(kind: SyntaxKind) -> bool {
26184 kind == SyntaxKind::SET_SESSION_AUTH
26185 }
26186 #[inline]
26187 fn cast(syntax: SyntaxNode) -> Option<Self> {
26188 if Self::can_cast(syntax.kind()) {
26189 Some(Self { syntax })
26190 } else {
26191 None
26192 }
26193 }
26194 #[inline]
26195 fn syntax(&self) -> &SyntaxNode {
26196 &self.syntax
26197 }
26198}
26199impl AstNode for SetSingleColumn {
26200 #[inline]
26201 fn can_cast(kind: SyntaxKind) -> bool {
26202 kind == SyntaxKind::SET_SINGLE_COLUMN
26203 }
26204 #[inline]
26205 fn cast(syntax: SyntaxNode) -> Option<Self> {
26206 if Self::can_cast(syntax.kind()) {
26207 Some(Self { syntax })
26208 } else {
26209 None
26210 }
26211 }
26212 #[inline]
26213 fn syntax(&self) -> &SyntaxNode {
26214 &self.syntax
26215 }
26216}
26217impl AstNode for SetStatistics {
26218 #[inline]
26219 fn can_cast(kind: SyntaxKind) -> bool {
26220 kind == SyntaxKind::SET_STATISTICS
26221 }
26222 #[inline]
26223 fn cast(syntax: SyntaxNode) -> Option<Self> {
26224 if Self::can_cast(syntax.kind()) {
26225 Some(Self { syntax })
26226 } else {
26227 None
26228 }
26229 }
26230 #[inline]
26231 fn syntax(&self) -> &SyntaxNode {
26232 &self.syntax
26233 }
26234}
26235impl AstNode for SetStorage {
26236 #[inline]
26237 fn can_cast(kind: SyntaxKind) -> bool {
26238 kind == SyntaxKind::SET_STORAGE
26239 }
26240 #[inline]
26241 fn cast(syntax: SyntaxNode) -> Option<Self> {
26242 if Self::can_cast(syntax.kind()) {
26243 Some(Self { syntax })
26244 } else {
26245 None
26246 }
26247 }
26248 #[inline]
26249 fn syntax(&self) -> &SyntaxNode {
26250 &self.syntax
26251 }
26252}
26253impl AstNode for SetTablespace {
26254 #[inline]
26255 fn can_cast(kind: SyntaxKind) -> bool {
26256 kind == SyntaxKind::SET_TABLESPACE
26257 }
26258 #[inline]
26259 fn cast(syntax: SyntaxNode) -> Option<Self> {
26260 if Self::can_cast(syntax.kind()) {
26261 Some(Self { syntax })
26262 } else {
26263 None
26264 }
26265 }
26266 #[inline]
26267 fn syntax(&self) -> &SyntaxNode {
26268 &self.syntax
26269 }
26270}
26271impl AstNode for SetTransaction {
26272 #[inline]
26273 fn can_cast(kind: SyntaxKind) -> bool {
26274 kind == SyntaxKind::SET_TRANSACTION
26275 }
26276 #[inline]
26277 fn cast(syntax: SyntaxNode) -> Option<Self> {
26278 if Self::can_cast(syntax.kind()) {
26279 Some(Self { syntax })
26280 } else {
26281 None
26282 }
26283 }
26284 #[inline]
26285 fn syntax(&self) -> &SyntaxNode {
26286 &self.syntax
26287 }
26288}
26289impl AstNode for SetType {
26290 #[inline]
26291 fn can_cast(kind: SyntaxKind) -> bool {
26292 kind == SyntaxKind::SET_TYPE
26293 }
26294 #[inline]
26295 fn cast(syntax: SyntaxNode) -> Option<Self> {
26296 if Self::can_cast(syntax.kind()) {
26297 Some(Self { syntax })
26298 } else {
26299 None
26300 }
26301 }
26302 #[inline]
26303 fn syntax(&self) -> &SyntaxNode {
26304 &self.syntax
26305 }
26306}
26307impl AstNode for SetUnlogged {
26308 #[inline]
26309 fn can_cast(kind: SyntaxKind) -> bool {
26310 kind == SyntaxKind::SET_UNLOGGED
26311 }
26312 #[inline]
26313 fn cast(syntax: SyntaxNode) -> Option<Self> {
26314 if Self::can_cast(syntax.kind()) {
26315 Some(Self { syntax })
26316 } else {
26317 None
26318 }
26319 }
26320 #[inline]
26321 fn syntax(&self) -> &SyntaxNode {
26322 &self.syntax
26323 }
26324}
26325impl AstNode for SetWithoutCluster {
26326 #[inline]
26327 fn can_cast(kind: SyntaxKind) -> bool {
26328 kind == SyntaxKind::SET_WITHOUT_CLUSTER
26329 }
26330 #[inline]
26331 fn cast(syntax: SyntaxNode) -> Option<Self> {
26332 if Self::can_cast(syntax.kind()) {
26333 Some(Self { syntax })
26334 } else {
26335 None
26336 }
26337 }
26338 #[inline]
26339 fn syntax(&self) -> &SyntaxNode {
26340 &self.syntax
26341 }
26342}
26343impl AstNode for SetWithoutOids {
26344 #[inline]
26345 fn can_cast(kind: SyntaxKind) -> bool {
26346 kind == SyntaxKind::SET_WITHOUT_OIDS
26347 }
26348 #[inline]
26349 fn cast(syntax: SyntaxNode) -> Option<Self> {
26350 if Self::can_cast(syntax.kind()) {
26351 Some(Self { syntax })
26352 } else {
26353 None
26354 }
26355 }
26356 #[inline]
26357 fn syntax(&self) -> &SyntaxNode {
26358 &self.syntax
26359 }
26360}
26361impl AstNode for Show {
26362 #[inline]
26363 fn can_cast(kind: SyntaxKind) -> bool {
26364 kind == SyntaxKind::SHOW
26365 }
26366 #[inline]
26367 fn cast(syntax: SyntaxNode) -> Option<Self> {
26368 if Self::can_cast(syntax.kind()) {
26369 Some(Self { syntax })
26370 } else {
26371 None
26372 }
26373 }
26374 #[inline]
26375 fn syntax(&self) -> &SyntaxNode {
26376 &self.syntax
26377 }
26378}
26379impl AstNode for SimilarTo {
26380 #[inline]
26381 fn can_cast(kind: SyntaxKind) -> bool {
26382 kind == SyntaxKind::SIMILAR_TO
26383 }
26384 #[inline]
26385 fn cast(syntax: SyntaxNode) -> Option<Self> {
26386 if Self::can_cast(syntax.kind()) {
26387 Some(Self { syntax })
26388 } else {
26389 None
26390 }
26391 }
26392 #[inline]
26393 fn syntax(&self) -> &SyntaxNode {
26394 &self.syntax
26395 }
26396}
26397impl AstNode for SliceExpr {
26398 #[inline]
26399 fn can_cast(kind: SyntaxKind) -> bool {
26400 kind == SyntaxKind::SLICE_EXPR
26401 }
26402 #[inline]
26403 fn cast(syntax: SyntaxNode) -> Option<Self> {
26404 if Self::can_cast(syntax.kind()) {
26405 Some(Self { syntax })
26406 } else {
26407 None
26408 }
26409 }
26410 #[inline]
26411 fn syntax(&self) -> &SyntaxNode {
26412 &self.syntax
26413 }
26414}
26415impl AstNode for SomeFn {
26416 #[inline]
26417 fn can_cast(kind: SyntaxKind) -> bool {
26418 kind == SyntaxKind::SOME_FN
26419 }
26420 #[inline]
26421 fn cast(syntax: SyntaxNode) -> Option<Self> {
26422 if Self::can_cast(syntax.kind()) {
26423 Some(Self { syntax })
26424 } else {
26425 None
26426 }
26427 }
26428 #[inline]
26429 fn syntax(&self) -> &SyntaxNode {
26430 &self.syntax
26431 }
26432}
26433impl AstNode for SortAsc {
26434 #[inline]
26435 fn can_cast(kind: SyntaxKind) -> bool {
26436 kind == SyntaxKind::SORT_ASC
26437 }
26438 #[inline]
26439 fn cast(syntax: SyntaxNode) -> Option<Self> {
26440 if Self::can_cast(syntax.kind()) {
26441 Some(Self { syntax })
26442 } else {
26443 None
26444 }
26445 }
26446 #[inline]
26447 fn syntax(&self) -> &SyntaxNode {
26448 &self.syntax
26449 }
26450}
26451impl AstNode for SortBy {
26452 #[inline]
26453 fn can_cast(kind: SyntaxKind) -> bool {
26454 kind == SyntaxKind::SORT_BY
26455 }
26456 #[inline]
26457 fn cast(syntax: SyntaxNode) -> Option<Self> {
26458 if Self::can_cast(syntax.kind()) {
26459 Some(Self { syntax })
26460 } else {
26461 None
26462 }
26463 }
26464 #[inline]
26465 fn syntax(&self) -> &SyntaxNode {
26466 &self.syntax
26467 }
26468}
26469impl AstNode for SortByList {
26470 #[inline]
26471 fn can_cast(kind: SyntaxKind) -> bool {
26472 kind == SyntaxKind::SORT_BY_LIST
26473 }
26474 #[inline]
26475 fn cast(syntax: SyntaxNode) -> Option<Self> {
26476 if Self::can_cast(syntax.kind()) {
26477 Some(Self { syntax })
26478 } else {
26479 None
26480 }
26481 }
26482 #[inline]
26483 fn syntax(&self) -> &SyntaxNode {
26484 &self.syntax
26485 }
26486}
26487impl AstNode for SortDesc {
26488 #[inline]
26489 fn can_cast(kind: SyntaxKind) -> bool {
26490 kind == SyntaxKind::SORT_DESC
26491 }
26492 #[inline]
26493 fn cast(syntax: SyntaxNode) -> Option<Self> {
26494 if Self::can_cast(syntax.kind()) {
26495 Some(Self { syntax })
26496 } else {
26497 None
26498 }
26499 }
26500 #[inline]
26501 fn syntax(&self) -> &SyntaxNode {
26502 &self.syntax
26503 }
26504}
26505impl AstNode for SortUsing {
26506 #[inline]
26507 fn can_cast(kind: SyntaxKind) -> bool {
26508 kind == SyntaxKind::SORT_USING
26509 }
26510 #[inline]
26511 fn cast(syntax: SyntaxNode) -> Option<Self> {
26512 if Self::can_cast(syntax.kind()) {
26513 Some(Self { syntax })
26514 } else {
26515 None
26516 }
26517 }
26518 #[inline]
26519 fn syntax(&self) -> &SyntaxNode {
26520 &self.syntax
26521 }
26522}
26523impl AstNode for SourceFile {
26524 #[inline]
26525 fn can_cast(kind: SyntaxKind) -> bool {
26526 kind == SyntaxKind::SOURCE_FILE
26527 }
26528 #[inline]
26529 fn cast(syntax: SyntaxNode) -> Option<Self> {
26530 if Self::can_cast(syntax.kind()) {
26531 Some(Self { syntax })
26532 } else {
26533 None
26534 }
26535 }
26536 #[inline]
26537 fn syntax(&self) -> &SyntaxNode {
26538 &self.syntax
26539 }
26540}
26541impl AstNode for Storage {
26542 #[inline]
26543 fn can_cast(kind: SyntaxKind) -> bool {
26544 kind == SyntaxKind::STORAGE
26545 }
26546 #[inline]
26547 fn cast(syntax: SyntaxNode) -> Option<Self> {
26548 if Self::can_cast(syntax.kind()) {
26549 Some(Self { syntax })
26550 } else {
26551 None
26552 }
26553 }
26554 #[inline]
26555 fn syntax(&self) -> &SyntaxNode {
26556 &self.syntax
26557 }
26558}
26559impl AstNode for StrictFuncOption {
26560 #[inline]
26561 fn can_cast(kind: SyntaxKind) -> bool {
26562 kind == SyntaxKind::STRICT_FUNC_OPTION
26563 }
26564 #[inline]
26565 fn cast(syntax: SyntaxNode) -> Option<Self> {
26566 if Self::can_cast(syntax.kind()) {
26567 Some(Self { syntax })
26568 } else {
26569 None
26570 }
26571 }
26572 #[inline]
26573 fn syntax(&self) -> &SyntaxNode {
26574 &self.syntax
26575 }
26576}
26577impl AstNode for SubstringFn {
26578 #[inline]
26579 fn can_cast(kind: SyntaxKind) -> bool {
26580 kind == SyntaxKind::SUBSTRING_FN
26581 }
26582 #[inline]
26583 fn cast(syntax: SyntaxNode) -> Option<Self> {
26584 if Self::can_cast(syntax.kind()) {
26585 Some(Self { syntax })
26586 } else {
26587 None
26588 }
26589 }
26590 #[inline]
26591 fn syntax(&self) -> &SyntaxNode {
26592 &self.syntax
26593 }
26594}
26595impl AstNode for SupportFuncOption {
26596 #[inline]
26597 fn can_cast(kind: SyntaxKind) -> bool {
26598 kind == SyntaxKind::SUPPORT_FUNC_OPTION
26599 }
26600 #[inline]
26601 fn cast(syntax: SyntaxNode) -> Option<Self> {
26602 if Self::can_cast(syntax.kind()) {
26603 Some(Self { syntax })
26604 } else {
26605 None
26606 }
26607 }
26608 #[inline]
26609 fn syntax(&self) -> &SyntaxNode {
26610 &self.syntax
26611 }
26612}
26613impl AstNode for Table {
26614 #[inline]
26615 fn can_cast(kind: SyntaxKind) -> bool {
26616 kind == SyntaxKind::TABLE
26617 }
26618 #[inline]
26619 fn cast(syntax: SyntaxNode) -> Option<Self> {
26620 if Self::can_cast(syntax.kind()) {
26621 Some(Self { syntax })
26622 } else {
26623 None
26624 }
26625 }
26626 #[inline]
26627 fn syntax(&self) -> &SyntaxNode {
26628 &self.syntax
26629 }
26630}
26631impl AstNode for TableArgList {
26632 #[inline]
26633 fn can_cast(kind: SyntaxKind) -> bool {
26634 kind == SyntaxKind::TABLE_ARG_LIST
26635 }
26636 #[inline]
26637 fn cast(syntax: SyntaxNode) -> Option<Self> {
26638 if Self::can_cast(syntax.kind()) {
26639 Some(Self { syntax })
26640 } else {
26641 None
26642 }
26643 }
26644 #[inline]
26645 fn syntax(&self) -> &SyntaxNode {
26646 &self.syntax
26647 }
26648}
26649impl AstNode for TableList {
26650 #[inline]
26651 fn can_cast(kind: SyntaxKind) -> bool {
26652 kind == SyntaxKind::TABLE_LIST
26653 }
26654 #[inline]
26655 fn cast(syntax: SyntaxNode) -> Option<Self> {
26656 if Self::can_cast(syntax.kind()) {
26657 Some(Self { syntax })
26658 } else {
26659 None
26660 }
26661 }
26662 #[inline]
26663 fn syntax(&self) -> &SyntaxNode {
26664 &self.syntax
26665 }
26666}
26667impl AstNode for TablesampleClause {
26668 #[inline]
26669 fn can_cast(kind: SyntaxKind) -> bool {
26670 kind == SyntaxKind::TABLESAMPLE_CLAUSE
26671 }
26672 #[inline]
26673 fn cast(syntax: SyntaxNode) -> Option<Self> {
26674 if Self::can_cast(syntax.kind()) {
26675 Some(Self { syntax })
26676 } else {
26677 None
26678 }
26679 }
26680 #[inline]
26681 fn syntax(&self) -> &SyntaxNode {
26682 &self.syntax
26683 }
26684}
26685impl AstNode for Tablespace {
26686 #[inline]
26687 fn can_cast(kind: SyntaxKind) -> bool {
26688 kind == SyntaxKind::TABLESPACE
26689 }
26690 #[inline]
26691 fn cast(syntax: SyntaxNode) -> Option<Self> {
26692 if Self::can_cast(syntax.kind()) {
26693 Some(Self { syntax })
26694 } else {
26695 None
26696 }
26697 }
26698 #[inline]
26699 fn syntax(&self) -> &SyntaxNode {
26700 &self.syntax
26701 }
26702}
26703impl AstNode for Target {
26704 #[inline]
26705 fn can_cast(kind: SyntaxKind) -> bool {
26706 kind == SyntaxKind::TARGET
26707 }
26708 #[inline]
26709 fn cast(syntax: SyntaxNode) -> Option<Self> {
26710 if Self::can_cast(syntax.kind()) {
26711 Some(Self { syntax })
26712 } else {
26713 None
26714 }
26715 }
26716 #[inline]
26717 fn syntax(&self) -> &SyntaxNode {
26718 &self.syntax
26719 }
26720}
26721impl AstNode for TargetList {
26722 #[inline]
26723 fn can_cast(kind: SyntaxKind) -> bool {
26724 kind == SyntaxKind::TARGET_LIST
26725 }
26726 #[inline]
26727 fn cast(syntax: SyntaxNode) -> Option<Self> {
26728 if Self::can_cast(syntax.kind()) {
26729 Some(Self { syntax })
26730 } else {
26731 None
26732 }
26733 }
26734 #[inline]
26735 fn syntax(&self) -> &SyntaxNode {
26736 &self.syntax
26737 }
26738}
26739impl AstNode for TimeType {
26740 #[inline]
26741 fn can_cast(kind: SyntaxKind) -> bool {
26742 kind == SyntaxKind::TIME_TYPE
26743 }
26744 #[inline]
26745 fn cast(syntax: SyntaxNode) -> Option<Self> {
26746 if Self::can_cast(syntax.kind()) {
26747 Some(Self { syntax })
26748 } else {
26749 None
26750 }
26751 }
26752 #[inline]
26753 fn syntax(&self) -> &SyntaxNode {
26754 &self.syntax
26755 }
26756}
26757impl AstNode for Timing {
26758 #[inline]
26759 fn can_cast(kind: SyntaxKind) -> bool {
26760 kind == SyntaxKind::TIMING
26761 }
26762 #[inline]
26763 fn cast(syntax: SyntaxNode) -> Option<Self> {
26764 if Self::can_cast(syntax.kind()) {
26765 Some(Self { syntax })
26766 } else {
26767 None
26768 }
26769 }
26770 #[inline]
26771 fn syntax(&self) -> &SyntaxNode {
26772 &self.syntax
26773 }
26774}
26775impl AstNode for TransactionModeList {
26776 #[inline]
26777 fn can_cast(kind: SyntaxKind) -> bool {
26778 kind == SyntaxKind::TRANSACTION_MODE_LIST
26779 }
26780 #[inline]
26781 fn cast(syntax: SyntaxNode) -> Option<Self> {
26782 if Self::can_cast(syntax.kind()) {
26783 Some(Self { syntax })
26784 } else {
26785 None
26786 }
26787 }
26788 #[inline]
26789 fn syntax(&self) -> &SyntaxNode {
26790 &self.syntax
26791 }
26792}
26793impl AstNode for TransformFromFunc {
26794 #[inline]
26795 fn can_cast(kind: SyntaxKind) -> bool {
26796 kind == SyntaxKind::TRANSFORM_FROM_FUNC
26797 }
26798 #[inline]
26799 fn cast(syntax: SyntaxNode) -> Option<Self> {
26800 if Self::can_cast(syntax.kind()) {
26801 Some(Self { syntax })
26802 } else {
26803 None
26804 }
26805 }
26806 #[inline]
26807 fn syntax(&self) -> &SyntaxNode {
26808 &self.syntax
26809 }
26810}
26811impl AstNode for TransformFuncOption {
26812 #[inline]
26813 fn can_cast(kind: SyntaxKind) -> bool {
26814 kind == SyntaxKind::TRANSFORM_FUNC_OPTION
26815 }
26816 #[inline]
26817 fn cast(syntax: SyntaxNode) -> Option<Self> {
26818 if Self::can_cast(syntax.kind()) {
26819 Some(Self { syntax })
26820 } else {
26821 None
26822 }
26823 }
26824 #[inline]
26825 fn syntax(&self) -> &SyntaxNode {
26826 &self.syntax
26827 }
26828}
26829impl AstNode for TransformToFunc {
26830 #[inline]
26831 fn can_cast(kind: SyntaxKind) -> bool {
26832 kind == SyntaxKind::TRANSFORM_TO_FUNC
26833 }
26834 #[inline]
26835 fn cast(syntax: SyntaxNode) -> Option<Self> {
26836 if Self::can_cast(syntax.kind()) {
26837 Some(Self { syntax })
26838 } else {
26839 None
26840 }
26841 }
26842 #[inline]
26843 fn syntax(&self) -> &SyntaxNode {
26844 &self.syntax
26845 }
26846}
26847impl AstNode for TriggerEvent {
26848 #[inline]
26849 fn can_cast(kind: SyntaxKind) -> bool {
26850 kind == SyntaxKind::TRIGGER_EVENT
26851 }
26852 #[inline]
26853 fn cast(syntax: SyntaxNode) -> Option<Self> {
26854 if Self::can_cast(syntax.kind()) {
26855 Some(Self { syntax })
26856 } else {
26857 None
26858 }
26859 }
26860 #[inline]
26861 fn syntax(&self) -> &SyntaxNode {
26862 &self.syntax
26863 }
26864}
26865impl AstNode for TriggerEventList {
26866 #[inline]
26867 fn can_cast(kind: SyntaxKind) -> bool {
26868 kind == SyntaxKind::TRIGGER_EVENT_LIST
26869 }
26870 #[inline]
26871 fn cast(syntax: SyntaxNode) -> Option<Self> {
26872 if Self::can_cast(syntax.kind()) {
26873 Some(Self { syntax })
26874 } else {
26875 None
26876 }
26877 }
26878 #[inline]
26879 fn syntax(&self) -> &SyntaxNode {
26880 &self.syntax
26881 }
26882}
26883impl AstNode for TriggerEventUpdate {
26884 #[inline]
26885 fn can_cast(kind: SyntaxKind) -> bool {
26886 kind == SyntaxKind::TRIGGER_EVENT_UPDATE
26887 }
26888 #[inline]
26889 fn cast(syntax: SyntaxNode) -> Option<Self> {
26890 if Self::can_cast(syntax.kind()) {
26891 Some(Self { syntax })
26892 } else {
26893 None
26894 }
26895 }
26896 #[inline]
26897 fn syntax(&self) -> &SyntaxNode {
26898 &self.syntax
26899 }
26900}
26901impl AstNode for TrimFn {
26902 #[inline]
26903 fn can_cast(kind: SyntaxKind) -> bool {
26904 kind == SyntaxKind::TRIM_FN
26905 }
26906 #[inline]
26907 fn cast(syntax: SyntaxNode) -> Option<Self> {
26908 if Self::can_cast(syntax.kind()) {
26909 Some(Self { syntax })
26910 } else {
26911 None
26912 }
26913 }
26914 #[inline]
26915 fn syntax(&self) -> &SyntaxNode {
26916 &self.syntax
26917 }
26918}
26919impl AstNode for Truncate {
26920 #[inline]
26921 fn can_cast(kind: SyntaxKind) -> bool {
26922 kind == SyntaxKind::TRUNCATE
26923 }
26924 #[inline]
26925 fn cast(syntax: SyntaxNode) -> Option<Self> {
26926 if Self::can_cast(syntax.kind()) {
26927 Some(Self { syntax })
26928 } else {
26929 None
26930 }
26931 }
26932 #[inline]
26933 fn syntax(&self) -> &SyntaxNode {
26934 &self.syntax
26935 }
26936}
26937impl AstNode for TupleExpr {
26938 #[inline]
26939 fn can_cast(kind: SyntaxKind) -> bool {
26940 kind == SyntaxKind::TUPLE_EXPR
26941 }
26942 #[inline]
26943 fn cast(syntax: SyntaxNode) -> Option<Self> {
26944 if Self::can_cast(syntax.kind()) {
26945 Some(Self { syntax })
26946 } else {
26947 None
26948 }
26949 }
26950 #[inline]
26951 fn syntax(&self) -> &SyntaxNode {
26952 &self.syntax
26953 }
26954}
26955impl AstNode for UnicodeNormalForm {
26956 #[inline]
26957 fn can_cast(kind: SyntaxKind) -> bool {
26958 kind == SyntaxKind::UNICODE_NORMAL_FORM
26959 }
26960 #[inline]
26961 fn cast(syntax: SyntaxNode) -> Option<Self> {
26962 if Self::can_cast(syntax.kind()) {
26963 Some(Self { syntax })
26964 } else {
26965 None
26966 }
26967 }
26968 #[inline]
26969 fn syntax(&self) -> &SyntaxNode {
26970 &self.syntax
26971 }
26972}
26973impl AstNode for UniqueConstraint {
26974 #[inline]
26975 fn can_cast(kind: SyntaxKind) -> bool {
26976 kind == SyntaxKind::UNIQUE_CONSTRAINT
26977 }
26978 #[inline]
26979 fn cast(syntax: SyntaxNode) -> Option<Self> {
26980 if Self::can_cast(syntax.kind()) {
26981 Some(Self { syntax })
26982 } else {
26983 None
26984 }
26985 }
26986 #[inline]
26987 fn syntax(&self) -> &SyntaxNode {
26988 &self.syntax
26989 }
26990}
26991impl AstNode for Unlisten {
26992 #[inline]
26993 fn can_cast(kind: SyntaxKind) -> bool {
26994 kind == SyntaxKind::UNLISTEN
26995 }
26996 #[inline]
26997 fn cast(syntax: SyntaxNode) -> Option<Self> {
26998 if Self::can_cast(syntax.kind()) {
26999 Some(Self { syntax })
27000 } else {
27001 None
27002 }
27003 }
27004 #[inline]
27005 fn syntax(&self) -> &SyntaxNode {
27006 &self.syntax
27007 }
27008}
27009impl AstNode for Update {
27010 #[inline]
27011 fn can_cast(kind: SyntaxKind) -> bool {
27012 kind == SyntaxKind::UPDATE
27013 }
27014 #[inline]
27015 fn cast(syntax: SyntaxNode) -> Option<Self> {
27016 if Self::can_cast(syntax.kind()) {
27017 Some(Self { syntax })
27018 } else {
27019 None
27020 }
27021 }
27022 #[inline]
27023 fn syntax(&self) -> &SyntaxNode {
27024 &self.syntax
27025 }
27026}
27027impl AstNode for UsingClause {
27028 #[inline]
27029 fn can_cast(kind: SyntaxKind) -> bool {
27030 kind == SyntaxKind::USING_CLAUSE
27031 }
27032 #[inline]
27033 fn cast(syntax: SyntaxNode) -> Option<Self> {
27034 if Self::can_cast(syntax.kind()) {
27035 Some(Self { syntax })
27036 } else {
27037 None
27038 }
27039 }
27040 #[inline]
27041 fn syntax(&self) -> &SyntaxNode {
27042 &self.syntax
27043 }
27044}
27045impl AstNode for UsingIndex {
27046 #[inline]
27047 fn can_cast(kind: SyntaxKind) -> bool {
27048 kind == SyntaxKind::USING_INDEX
27049 }
27050 #[inline]
27051 fn cast(syntax: SyntaxNode) -> Option<Self> {
27052 if Self::can_cast(syntax.kind()) {
27053 Some(Self { syntax })
27054 } else {
27055 None
27056 }
27057 }
27058 #[inline]
27059 fn syntax(&self) -> &SyntaxNode {
27060 &self.syntax
27061 }
27062}
27063impl AstNode for UsingMethod {
27064 #[inline]
27065 fn can_cast(kind: SyntaxKind) -> bool {
27066 kind == SyntaxKind::USING_METHOD
27067 }
27068 #[inline]
27069 fn cast(syntax: SyntaxNode) -> Option<Self> {
27070 if Self::can_cast(syntax.kind()) {
27071 Some(Self { syntax })
27072 } else {
27073 None
27074 }
27075 }
27076 #[inline]
27077 fn syntax(&self) -> &SyntaxNode {
27078 &self.syntax
27079 }
27080}
27081impl AstNode for UsingOnClause {
27082 #[inline]
27083 fn can_cast(kind: SyntaxKind) -> bool {
27084 kind == SyntaxKind::USING_ON_CLAUSE
27085 }
27086 #[inline]
27087 fn cast(syntax: SyntaxNode) -> Option<Self> {
27088 if Self::can_cast(syntax.kind()) {
27089 Some(Self { syntax })
27090 } else {
27091 None
27092 }
27093 }
27094 #[inline]
27095 fn syntax(&self) -> &SyntaxNode {
27096 &self.syntax
27097 }
27098}
27099impl AstNode for Vacuum {
27100 #[inline]
27101 fn can_cast(kind: SyntaxKind) -> bool {
27102 kind == SyntaxKind::VACUUM
27103 }
27104 #[inline]
27105 fn cast(syntax: SyntaxNode) -> Option<Self> {
27106 if Self::can_cast(syntax.kind()) {
27107 Some(Self { syntax })
27108 } else {
27109 None
27110 }
27111 }
27112 #[inline]
27113 fn syntax(&self) -> &SyntaxNode {
27114 &self.syntax
27115 }
27116}
27117impl AstNode for VacuumOption {
27118 #[inline]
27119 fn can_cast(kind: SyntaxKind) -> bool {
27120 kind == SyntaxKind::VACUUM_OPTION
27121 }
27122 #[inline]
27123 fn cast(syntax: SyntaxNode) -> Option<Self> {
27124 if Self::can_cast(syntax.kind()) {
27125 Some(Self { syntax })
27126 } else {
27127 None
27128 }
27129 }
27130 #[inline]
27131 fn syntax(&self) -> &SyntaxNode {
27132 &self.syntax
27133 }
27134}
27135impl AstNode for VacuumOptionList {
27136 #[inline]
27137 fn can_cast(kind: SyntaxKind) -> bool {
27138 kind == SyntaxKind::VACUUM_OPTION_LIST
27139 }
27140 #[inline]
27141 fn cast(syntax: SyntaxNode) -> Option<Self> {
27142 if Self::can_cast(syntax.kind()) {
27143 Some(Self { syntax })
27144 } else {
27145 None
27146 }
27147 }
27148 #[inline]
27149 fn syntax(&self) -> &SyntaxNode {
27150 &self.syntax
27151 }
27152}
27153impl AstNode for ValidateConstraint {
27154 #[inline]
27155 fn can_cast(kind: SyntaxKind) -> bool {
27156 kind == SyntaxKind::VALIDATE_CONSTRAINT
27157 }
27158 #[inline]
27159 fn cast(syntax: SyntaxNode) -> Option<Self> {
27160 if Self::can_cast(syntax.kind()) {
27161 Some(Self { syntax })
27162 } else {
27163 None
27164 }
27165 }
27166 #[inline]
27167 fn syntax(&self) -> &SyntaxNode {
27168 &self.syntax
27169 }
27170}
27171impl AstNode for Values {
27172 #[inline]
27173 fn can_cast(kind: SyntaxKind) -> bool {
27174 kind == SyntaxKind::VALUES
27175 }
27176 #[inline]
27177 fn cast(syntax: SyntaxNode) -> Option<Self> {
27178 if Self::can_cast(syntax.kind()) {
27179 Some(Self { syntax })
27180 } else {
27181 None
27182 }
27183 }
27184 #[inline]
27185 fn syntax(&self) -> &SyntaxNode {
27186 &self.syntax
27187 }
27188}
27189impl AstNode for Variant {
27190 #[inline]
27191 fn can_cast(kind: SyntaxKind) -> bool {
27192 kind == SyntaxKind::VARIANT
27193 }
27194 #[inline]
27195 fn cast(syntax: SyntaxNode) -> Option<Self> {
27196 if Self::can_cast(syntax.kind()) {
27197 Some(Self { syntax })
27198 } else {
27199 None
27200 }
27201 }
27202 #[inline]
27203 fn syntax(&self) -> &SyntaxNode {
27204 &self.syntax
27205 }
27206}
27207impl AstNode for VariantList {
27208 #[inline]
27209 fn can_cast(kind: SyntaxKind) -> bool {
27210 kind == SyntaxKind::VARIANT_LIST
27211 }
27212 #[inline]
27213 fn cast(syntax: SyntaxNode) -> Option<Self> {
27214 if Self::can_cast(syntax.kind()) {
27215 Some(Self { syntax })
27216 } else {
27217 None
27218 }
27219 }
27220 #[inline]
27221 fn syntax(&self) -> &SyntaxNode {
27222 &self.syntax
27223 }
27224}
27225impl AstNode for VolatilityFuncOption {
27226 #[inline]
27227 fn can_cast(kind: SyntaxKind) -> bool {
27228 kind == SyntaxKind::VOLATILITY_FUNC_OPTION
27229 }
27230 #[inline]
27231 fn cast(syntax: SyntaxNode) -> Option<Self> {
27232 if Self::can_cast(syntax.kind()) {
27233 Some(Self { syntax })
27234 } else {
27235 None
27236 }
27237 }
27238 #[inline]
27239 fn syntax(&self) -> &SyntaxNode {
27240 &self.syntax
27241 }
27242}
27243impl AstNode for WhenClause {
27244 #[inline]
27245 fn can_cast(kind: SyntaxKind) -> bool {
27246 kind == SyntaxKind::WHEN_CLAUSE
27247 }
27248 #[inline]
27249 fn cast(syntax: SyntaxNode) -> Option<Self> {
27250 if Self::can_cast(syntax.kind()) {
27251 Some(Self { syntax })
27252 } else {
27253 None
27254 }
27255 }
27256 #[inline]
27257 fn syntax(&self) -> &SyntaxNode {
27258 &self.syntax
27259 }
27260}
27261impl AstNode for WhenClauseList {
27262 #[inline]
27263 fn can_cast(kind: SyntaxKind) -> bool {
27264 kind == SyntaxKind::WHEN_CLAUSE_LIST
27265 }
27266 #[inline]
27267 fn cast(syntax: SyntaxNode) -> Option<Self> {
27268 if Self::can_cast(syntax.kind()) {
27269 Some(Self { syntax })
27270 } else {
27271 None
27272 }
27273 }
27274 #[inline]
27275 fn syntax(&self) -> &SyntaxNode {
27276 &self.syntax
27277 }
27278}
27279impl AstNode for WhenCondition {
27280 #[inline]
27281 fn can_cast(kind: SyntaxKind) -> bool {
27282 kind == SyntaxKind::WHEN_CONDITION
27283 }
27284 #[inline]
27285 fn cast(syntax: SyntaxNode) -> Option<Self> {
27286 if Self::can_cast(syntax.kind()) {
27287 Some(Self { syntax })
27288 } else {
27289 None
27290 }
27291 }
27292 #[inline]
27293 fn syntax(&self) -> &SyntaxNode {
27294 &self.syntax
27295 }
27296}
27297impl AstNode for WhereClause {
27298 #[inline]
27299 fn can_cast(kind: SyntaxKind) -> bool {
27300 kind == SyntaxKind::WHERE_CLAUSE
27301 }
27302 #[inline]
27303 fn cast(syntax: SyntaxNode) -> Option<Self> {
27304 if Self::can_cast(syntax.kind()) {
27305 Some(Self { syntax })
27306 } else {
27307 None
27308 }
27309 }
27310 #[inline]
27311 fn syntax(&self) -> &SyntaxNode {
27312 &self.syntax
27313 }
27314}
27315impl AstNode for WhereConditionClause {
27316 #[inline]
27317 fn can_cast(kind: SyntaxKind) -> bool {
27318 kind == SyntaxKind::WHERE_CONDITION_CLAUSE
27319 }
27320 #[inline]
27321 fn cast(syntax: SyntaxNode) -> Option<Self> {
27322 if Self::can_cast(syntax.kind()) {
27323 Some(Self { syntax })
27324 } else {
27325 None
27326 }
27327 }
27328 #[inline]
27329 fn syntax(&self) -> &SyntaxNode {
27330 &self.syntax
27331 }
27332}
27333impl AstNode for WhereCurrentOf {
27334 #[inline]
27335 fn can_cast(kind: SyntaxKind) -> bool {
27336 kind == SyntaxKind::WHERE_CURRENT_OF
27337 }
27338 #[inline]
27339 fn cast(syntax: SyntaxNode) -> Option<Self> {
27340 if Self::can_cast(syntax.kind()) {
27341 Some(Self { syntax })
27342 } else {
27343 None
27344 }
27345 }
27346 #[inline]
27347 fn syntax(&self) -> &SyntaxNode {
27348 &self.syntax
27349 }
27350}
27351impl AstNode for WindowClause {
27352 #[inline]
27353 fn can_cast(kind: SyntaxKind) -> bool {
27354 kind == SyntaxKind::WINDOW_CLAUSE
27355 }
27356 #[inline]
27357 fn cast(syntax: SyntaxNode) -> Option<Self> {
27358 if Self::can_cast(syntax.kind()) {
27359 Some(Self { syntax })
27360 } else {
27361 None
27362 }
27363 }
27364 #[inline]
27365 fn syntax(&self) -> &SyntaxNode {
27366 &self.syntax
27367 }
27368}
27369impl AstNode for WindowDef {
27370 #[inline]
27371 fn can_cast(kind: SyntaxKind) -> bool {
27372 kind == SyntaxKind::WINDOW_DEF
27373 }
27374 #[inline]
27375 fn cast(syntax: SyntaxNode) -> Option<Self> {
27376 if Self::can_cast(syntax.kind()) {
27377 Some(Self { syntax })
27378 } else {
27379 None
27380 }
27381 }
27382 #[inline]
27383 fn syntax(&self) -> &SyntaxNode {
27384 &self.syntax
27385 }
27386}
27387impl AstNode for WindowFuncOption {
27388 #[inline]
27389 fn can_cast(kind: SyntaxKind) -> bool {
27390 kind == SyntaxKind::WINDOW_FUNC_OPTION
27391 }
27392 #[inline]
27393 fn cast(syntax: SyntaxNode) -> Option<Self> {
27394 if Self::can_cast(syntax.kind()) {
27395 Some(Self { syntax })
27396 } else {
27397 None
27398 }
27399 }
27400 #[inline]
27401 fn syntax(&self) -> &SyntaxNode {
27402 &self.syntax
27403 }
27404}
27405impl AstNode for WindowSpec {
27406 #[inline]
27407 fn can_cast(kind: SyntaxKind) -> bool {
27408 kind == SyntaxKind::WINDOW_SPEC
27409 }
27410 #[inline]
27411 fn cast(syntax: SyntaxNode) -> Option<Self> {
27412 if Self::can_cast(syntax.kind()) {
27413 Some(Self { syntax })
27414 } else {
27415 None
27416 }
27417 }
27418 #[inline]
27419 fn syntax(&self) -> &SyntaxNode {
27420 &self.syntax
27421 }
27422}
27423impl AstNode for WithClause {
27424 #[inline]
27425 fn can_cast(kind: SyntaxKind) -> bool {
27426 kind == SyntaxKind::WITH_CLAUSE
27427 }
27428 #[inline]
27429 fn cast(syntax: SyntaxNode) -> Option<Self> {
27430 if Self::can_cast(syntax.kind()) {
27431 Some(Self { syntax })
27432 } else {
27433 None
27434 }
27435 }
27436 #[inline]
27437 fn syntax(&self) -> &SyntaxNode {
27438 &self.syntax
27439 }
27440}
27441impl AstNode for WithData {
27442 #[inline]
27443 fn can_cast(kind: SyntaxKind) -> bool {
27444 kind == SyntaxKind::WITH_DATA
27445 }
27446 #[inline]
27447 fn cast(syntax: SyntaxNode) -> Option<Self> {
27448 if Self::can_cast(syntax.kind()) {
27449 Some(Self { syntax })
27450 } else {
27451 None
27452 }
27453 }
27454 #[inline]
27455 fn syntax(&self) -> &SyntaxNode {
27456 &self.syntax
27457 }
27458}
27459impl AstNode for WithNoData {
27460 #[inline]
27461 fn can_cast(kind: SyntaxKind) -> bool {
27462 kind == SyntaxKind::WITH_NO_DATA
27463 }
27464 #[inline]
27465 fn cast(syntax: SyntaxNode) -> Option<Self> {
27466 if Self::can_cast(syntax.kind()) {
27467 Some(Self { syntax })
27468 } else {
27469 None
27470 }
27471 }
27472 #[inline]
27473 fn syntax(&self) -> &SyntaxNode {
27474 &self.syntax
27475 }
27476}
27477impl AstNode for WithOptions {
27478 #[inline]
27479 fn can_cast(kind: SyntaxKind) -> bool {
27480 kind == SyntaxKind::WITH_OPTIONS
27481 }
27482 #[inline]
27483 fn cast(syntax: SyntaxNode) -> Option<Self> {
27484 if Self::can_cast(syntax.kind()) {
27485 Some(Self { syntax })
27486 } else {
27487 None
27488 }
27489 }
27490 #[inline]
27491 fn syntax(&self) -> &SyntaxNode {
27492 &self.syntax
27493 }
27494}
27495impl AstNode for WithParams {
27496 #[inline]
27497 fn can_cast(kind: SyntaxKind) -> bool {
27498 kind == SyntaxKind::WITH_PARAMS
27499 }
27500 #[inline]
27501 fn cast(syntax: SyntaxNode) -> Option<Self> {
27502 if Self::can_cast(syntax.kind()) {
27503 Some(Self { syntax })
27504 } else {
27505 None
27506 }
27507 }
27508 #[inline]
27509 fn syntax(&self) -> &SyntaxNode {
27510 &self.syntax
27511 }
27512}
27513impl AstNode for WithTable {
27514 #[inline]
27515 fn can_cast(kind: SyntaxKind) -> bool {
27516 kind == SyntaxKind::WITH_TABLE
27517 }
27518 #[inline]
27519 fn cast(syntax: SyntaxNode) -> Option<Self> {
27520 if Self::can_cast(syntax.kind()) {
27521 Some(Self { syntax })
27522 } else {
27523 None
27524 }
27525 }
27526 #[inline]
27527 fn syntax(&self) -> &SyntaxNode {
27528 &self.syntax
27529 }
27530}
27531impl AstNode for WithTimezone {
27532 #[inline]
27533 fn can_cast(kind: SyntaxKind) -> bool {
27534 kind == SyntaxKind::WITH_TIMEZONE
27535 }
27536 #[inline]
27537 fn cast(syntax: SyntaxNode) -> Option<Self> {
27538 if Self::can_cast(syntax.kind()) {
27539 Some(Self { syntax })
27540 } else {
27541 None
27542 }
27543 }
27544 #[inline]
27545 fn syntax(&self) -> &SyntaxNode {
27546 &self.syntax
27547 }
27548}
27549impl AstNode for WithinClause {
27550 #[inline]
27551 fn can_cast(kind: SyntaxKind) -> bool {
27552 kind == SyntaxKind::WITHIN_CLAUSE
27553 }
27554 #[inline]
27555 fn cast(syntax: SyntaxNode) -> Option<Self> {
27556 if Self::can_cast(syntax.kind()) {
27557 Some(Self { syntax })
27558 } else {
27559 None
27560 }
27561 }
27562 #[inline]
27563 fn syntax(&self) -> &SyntaxNode {
27564 &self.syntax
27565 }
27566}
27567impl AstNode for WithoutOids {
27568 #[inline]
27569 fn can_cast(kind: SyntaxKind) -> bool {
27570 kind == SyntaxKind::WITHOUT_OIDS
27571 }
27572 #[inline]
27573 fn cast(syntax: SyntaxNode) -> Option<Self> {
27574 if Self::can_cast(syntax.kind()) {
27575 Some(Self { syntax })
27576 } else {
27577 None
27578 }
27579 }
27580 #[inline]
27581 fn syntax(&self) -> &SyntaxNode {
27582 &self.syntax
27583 }
27584}
27585impl AstNode for WithoutTimezone {
27586 #[inline]
27587 fn can_cast(kind: SyntaxKind) -> bool {
27588 kind == SyntaxKind::WITHOUT_TIMEZONE
27589 }
27590 #[inline]
27591 fn cast(syntax: SyntaxNode) -> Option<Self> {
27592 if Self::can_cast(syntax.kind()) {
27593 Some(Self { syntax })
27594 } else {
27595 None
27596 }
27597 }
27598 #[inline]
27599 fn syntax(&self) -> &SyntaxNode {
27600 &self.syntax
27601 }
27602}
27603impl AstNode for XmlAttributeList {
27604 #[inline]
27605 fn can_cast(kind: SyntaxKind) -> bool {
27606 kind == SyntaxKind::XML_ATTRIBUTE_LIST
27607 }
27608 #[inline]
27609 fn cast(syntax: SyntaxNode) -> Option<Self> {
27610 if Self::can_cast(syntax.kind()) {
27611 Some(Self { syntax })
27612 } else {
27613 None
27614 }
27615 }
27616 #[inline]
27617 fn syntax(&self) -> &SyntaxNode {
27618 &self.syntax
27619 }
27620}
27621impl AstNode for XmlColumnOption {
27622 #[inline]
27623 fn can_cast(kind: SyntaxKind) -> bool {
27624 kind == SyntaxKind::XML_COLUMN_OPTION
27625 }
27626 #[inline]
27627 fn cast(syntax: SyntaxNode) -> Option<Self> {
27628 if Self::can_cast(syntax.kind()) {
27629 Some(Self { syntax })
27630 } else {
27631 None
27632 }
27633 }
27634 #[inline]
27635 fn syntax(&self) -> &SyntaxNode {
27636 &self.syntax
27637 }
27638}
27639impl AstNode for XmlColumnOptionList {
27640 #[inline]
27641 fn can_cast(kind: SyntaxKind) -> bool {
27642 kind == SyntaxKind::XML_COLUMN_OPTION_LIST
27643 }
27644 #[inline]
27645 fn cast(syntax: SyntaxNode) -> Option<Self> {
27646 if Self::can_cast(syntax.kind()) {
27647 Some(Self { syntax })
27648 } else {
27649 None
27650 }
27651 }
27652 #[inline]
27653 fn syntax(&self) -> &SyntaxNode {
27654 &self.syntax
27655 }
27656}
27657impl AstNode for XmlElementFn {
27658 #[inline]
27659 fn can_cast(kind: SyntaxKind) -> bool {
27660 kind == SyntaxKind::XML_ELEMENT_FN
27661 }
27662 #[inline]
27663 fn cast(syntax: SyntaxNode) -> Option<Self> {
27664 if Self::can_cast(syntax.kind()) {
27665 Some(Self { syntax })
27666 } else {
27667 None
27668 }
27669 }
27670 #[inline]
27671 fn syntax(&self) -> &SyntaxNode {
27672 &self.syntax
27673 }
27674}
27675impl AstNode for XmlExistsFn {
27676 #[inline]
27677 fn can_cast(kind: SyntaxKind) -> bool {
27678 kind == SyntaxKind::XML_EXISTS_FN
27679 }
27680 #[inline]
27681 fn cast(syntax: SyntaxNode) -> Option<Self> {
27682 if Self::can_cast(syntax.kind()) {
27683 Some(Self { syntax })
27684 } else {
27685 None
27686 }
27687 }
27688 #[inline]
27689 fn syntax(&self) -> &SyntaxNode {
27690 &self.syntax
27691 }
27692}
27693impl AstNode for XmlForestFn {
27694 #[inline]
27695 fn can_cast(kind: SyntaxKind) -> bool {
27696 kind == SyntaxKind::XML_FOREST_FN
27697 }
27698 #[inline]
27699 fn cast(syntax: SyntaxNode) -> Option<Self> {
27700 if Self::can_cast(syntax.kind()) {
27701 Some(Self { syntax })
27702 } else {
27703 None
27704 }
27705 }
27706 #[inline]
27707 fn syntax(&self) -> &SyntaxNode {
27708 &self.syntax
27709 }
27710}
27711impl AstNode for XmlNamespace {
27712 #[inline]
27713 fn can_cast(kind: SyntaxKind) -> bool {
27714 kind == SyntaxKind::XML_NAMESPACE
27715 }
27716 #[inline]
27717 fn cast(syntax: SyntaxNode) -> Option<Self> {
27718 if Self::can_cast(syntax.kind()) {
27719 Some(Self { syntax })
27720 } else {
27721 None
27722 }
27723 }
27724 #[inline]
27725 fn syntax(&self) -> &SyntaxNode {
27726 &self.syntax
27727 }
27728}
27729impl AstNode for XmlNamespaceList {
27730 #[inline]
27731 fn can_cast(kind: SyntaxKind) -> bool {
27732 kind == SyntaxKind::XML_NAMESPACE_LIST
27733 }
27734 #[inline]
27735 fn cast(syntax: SyntaxNode) -> Option<Self> {
27736 if Self::can_cast(syntax.kind()) {
27737 Some(Self { syntax })
27738 } else {
27739 None
27740 }
27741 }
27742 #[inline]
27743 fn syntax(&self) -> &SyntaxNode {
27744 &self.syntax
27745 }
27746}
27747impl AstNode for XmlParseFn {
27748 #[inline]
27749 fn can_cast(kind: SyntaxKind) -> bool {
27750 kind == SyntaxKind::XML_PARSE_FN
27751 }
27752 #[inline]
27753 fn cast(syntax: SyntaxNode) -> Option<Self> {
27754 if Self::can_cast(syntax.kind()) {
27755 Some(Self { syntax })
27756 } else {
27757 None
27758 }
27759 }
27760 #[inline]
27761 fn syntax(&self) -> &SyntaxNode {
27762 &self.syntax
27763 }
27764}
27765impl AstNode for XmlPassingMech {
27766 #[inline]
27767 fn can_cast(kind: SyntaxKind) -> bool {
27768 kind == SyntaxKind::XML_PASSING_MECH
27769 }
27770 #[inline]
27771 fn cast(syntax: SyntaxNode) -> Option<Self> {
27772 if Self::can_cast(syntax.kind()) {
27773 Some(Self { syntax })
27774 } else {
27775 None
27776 }
27777 }
27778 #[inline]
27779 fn syntax(&self) -> &SyntaxNode {
27780 &self.syntax
27781 }
27782}
27783impl AstNode for XmlPiFn {
27784 #[inline]
27785 fn can_cast(kind: SyntaxKind) -> bool {
27786 kind == SyntaxKind::XML_PI_FN
27787 }
27788 #[inline]
27789 fn cast(syntax: SyntaxNode) -> Option<Self> {
27790 if Self::can_cast(syntax.kind()) {
27791 Some(Self { syntax })
27792 } else {
27793 None
27794 }
27795 }
27796 #[inline]
27797 fn syntax(&self) -> &SyntaxNode {
27798 &self.syntax
27799 }
27800}
27801impl AstNode for XmlRootFn {
27802 #[inline]
27803 fn can_cast(kind: SyntaxKind) -> bool {
27804 kind == SyntaxKind::XML_ROOT_FN
27805 }
27806 #[inline]
27807 fn cast(syntax: SyntaxNode) -> Option<Self> {
27808 if Self::can_cast(syntax.kind()) {
27809 Some(Self { syntax })
27810 } else {
27811 None
27812 }
27813 }
27814 #[inline]
27815 fn syntax(&self) -> &SyntaxNode {
27816 &self.syntax
27817 }
27818}
27819impl AstNode for XmlRowPassingClause {
27820 #[inline]
27821 fn can_cast(kind: SyntaxKind) -> bool {
27822 kind == SyntaxKind::XML_ROW_PASSING_CLAUSE
27823 }
27824 #[inline]
27825 fn cast(syntax: SyntaxNode) -> Option<Self> {
27826 if Self::can_cast(syntax.kind()) {
27827 Some(Self { syntax })
27828 } else {
27829 None
27830 }
27831 }
27832 #[inline]
27833 fn syntax(&self) -> &SyntaxNode {
27834 &self.syntax
27835 }
27836}
27837impl AstNode for XmlSerializeFn {
27838 #[inline]
27839 fn can_cast(kind: SyntaxKind) -> bool {
27840 kind == SyntaxKind::XML_SERIALIZE_FN
27841 }
27842 #[inline]
27843 fn cast(syntax: SyntaxNode) -> Option<Self> {
27844 if Self::can_cast(syntax.kind()) {
27845 Some(Self { syntax })
27846 } else {
27847 None
27848 }
27849 }
27850 #[inline]
27851 fn syntax(&self) -> &SyntaxNode {
27852 &self.syntax
27853 }
27854}
27855impl AstNode for XmlTable {
27856 #[inline]
27857 fn can_cast(kind: SyntaxKind) -> bool {
27858 kind == SyntaxKind::XML_TABLE
27859 }
27860 #[inline]
27861 fn cast(syntax: SyntaxNode) -> Option<Self> {
27862 if Self::can_cast(syntax.kind()) {
27863 Some(Self { syntax })
27864 } else {
27865 None
27866 }
27867 }
27868 #[inline]
27869 fn syntax(&self) -> &SyntaxNode {
27870 &self.syntax
27871 }
27872}
27873impl AstNode for XmlTableColumn {
27874 #[inline]
27875 fn can_cast(kind: SyntaxKind) -> bool {
27876 kind == SyntaxKind::XML_TABLE_COLUMN
27877 }
27878 #[inline]
27879 fn cast(syntax: SyntaxNode) -> Option<Self> {
27880 if Self::can_cast(syntax.kind()) {
27881 Some(Self { syntax })
27882 } else {
27883 None
27884 }
27885 }
27886 #[inline]
27887 fn syntax(&self) -> &SyntaxNode {
27888 &self.syntax
27889 }
27890}
27891impl AstNode for XmlTableColumnList {
27892 #[inline]
27893 fn can_cast(kind: SyntaxKind) -> bool {
27894 kind == SyntaxKind::XML_TABLE_COLUMN_LIST
27895 }
27896 #[inline]
27897 fn cast(syntax: SyntaxNode) -> Option<Self> {
27898 if Self::can_cast(syntax.kind()) {
27899 Some(Self { syntax })
27900 } else {
27901 None
27902 }
27903 }
27904 #[inline]
27905 fn syntax(&self) -> &SyntaxNode {
27906 &self.syntax
27907 }
27908}
27909impl AstNode for AlterColumnOption {
27910 #[inline]
27911 fn can_cast(kind: SyntaxKind) -> bool {
27912 matches!(
27913 kind,
27914 SyntaxKind::ADD_GENERATED
27915 | SyntaxKind::DROP_DEFAULT
27916 | SyntaxKind::DROP_EXPRESSION
27917 | SyntaxKind::DROP_IDENTITY
27918 | SyntaxKind::DROP_NOT_NULL
27919 | SyntaxKind::RESET_OPTIONS
27920 | SyntaxKind::RESTART
27921 | SyntaxKind::SET_COMPRESSION
27922 | SyntaxKind::SET_DEFAULT
27923 | SyntaxKind::SET_EXPRESSION
27924 | SyntaxKind::SET_GENERATED
27925 | SyntaxKind::SET_GENERATED_OPTIONS
27926 | SyntaxKind::SET_NOT_NULL
27927 | SyntaxKind::SET_OPTIONS
27928 | SyntaxKind::SET_OPTIONS_LIST
27929 | SyntaxKind::SET_SEQUENCE_OPTION
27930 | SyntaxKind::SET_STATISTICS
27931 | SyntaxKind::SET_STORAGE
27932 | SyntaxKind::SET_TYPE
27933 )
27934 }
27935 #[inline]
27936 fn cast(syntax: SyntaxNode) -> Option<Self> {
27937 let res = match syntax.kind() {
27938 SyntaxKind::ADD_GENERATED => AlterColumnOption::AddGenerated(AddGenerated { syntax }),
27939 SyntaxKind::DROP_DEFAULT => AlterColumnOption::DropDefault(DropDefault { syntax }),
27940 SyntaxKind::DROP_EXPRESSION => {
27941 AlterColumnOption::DropExpression(DropExpression { syntax })
27942 }
27943 SyntaxKind::DROP_IDENTITY => AlterColumnOption::DropIdentity(DropIdentity { syntax }),
27944 SyntaxKind::DROP_NOT_NULL => AlterColumnOption::DropNotNull(DropNotNull { syntax }),
27945 SyntaxKind::RESET_OPTIONS => AlterColumnOption::ResetOptions(ResetOptions { syntax }),
27946 SyntaxKind::RESTART => AlterColumnOption::Restart(Restart { syntax }),
27947 SyntaxKind::SET_COMPRESSION => {
27948 AlterColumnOption::SetCompression(SetCompression { syntax })
27949 }
27950 SyntaxKind::SET_DEFAULT => AlterColumnOption::SetDefault(SetDefault { syntax }),
27951 SyntaxKind::SET_EXPRESSION => {
27952 AlterColumnOption::SetExpression(SetExpression { syntax })
27953 }
27954 SyntaxKind::SET_GENERATED => AlterColumnOption::SetGenerated(SetGenerated { syntax }),
27955 SyntaxKind::SET_GENERATED_OPTIONS => {
27956 AlterColumnOption::SetGeneratedOptions(SetGeneratedOptions { syntax })
27957 }
27958 SyntaxKind::SET_NOT_NULL => AlterColumnOption::SetNotNull(SetNotNull { syntax }),
27959 SyntaxKind::SET_OPTIONS => AlterColumnOption::SetOptions(SetOptions { syntax }),
27960 SyntaxKind::SET_OPTIONS_LIST => {
27961 AlterColumnOption::SetOptionsList(SetOptionsList { syntax })
27962 }
27963 SyntaxKind::SET_SEQUENCE_OPTION => {
27964 AlterColumnOption::SetSequenceOption(SetSequenceOption { syntax })
27965 }
27966 SyntaxKind::SET_STATISTICS => {
27967 AlterColumnOption::SetStatistics(SetStatistics { syntax })
27968 }
27969 SyntaxKind::SET_STORAGE => AlterColumnOption::SetStorage(SetStorage { syntax }),
27970 SyntaxKind::SET_TYPE => AlterColumnOption::SetType(SetType { syntax }),
27971 _ => {
27972 return None;
27973 }
27974 };
27975 Some(res)
27976 }
27977 #[inline]
27978 fn syntax(&self) -> &SyntaxNode {
27979 match self {
27980 AlterColumnOption::AddGenerated(it) => &it.syntax,
27981 AlterColumnOption::DropDefault(it) => &it.syntax,
27982 AlterColumnOption::DropExpression(it) => &it.syntax,
27983 AlterColumnOption::DropIdentity(it) => &it.syntax,
27984 AlterColumnOption::DropNotNull(it) => &it.syntax,
27985 AlterColumnOption::ResetOptions(it) => &it.syntax,
27986 AlterColumnOption::Restart(it) => &it.syntax,
27987 AlterColumnOption::SetCompression(it) => &it.syntax,
27988 AlterColumnOption::SetDefault(it) => &it.syntax,
27989 AlterColumnOption::SetExpression(it) => &it.syntax,
27990 AlterColumnOption::SetGenerated(it) => &it.syntax,
27991 AlterColumnOption::SetGeneratedOptions(it) => &it.syntax,
27992 AlterColumnOption::SetNotNull(it) => &it.syntax,
27993 AlterColumnOption::SetOptions(it) => &it.syntax,
27994 AlterColumnOption::SetOptionsList(it) => &it.syntax,
27995 AlterColumnOption::SetSequenceOption(it) => &it.syntax,
27996 AlterColumnOption::SetStatistics(it) => &it.syntax,
27997 AlterColumnOption::SetStorage(it) => &it.syntax,
27998 AlterColumnOption::SetType(it) => &it.syntax,
27999 }
28000 }
28001}
28002impl From<AddGenerated> for AlterColumnOption {
28003 #[inline]
28004 fn from(node: AddGenerated) -> AlterColumnOption {
28005 AlterColumnOption::AddGenerated(node)
28006 }
28007}
28008impl From<DropDefault> for AlterColumnOption {
28009 #[inline]
28010 fn from(node: DropDefault) -> AlterColumnOption {
28011 AlterColumnOption::DropDefault(node)
28012 }
28013}
28014impl From<DropExpression> for AlterColumnOption {
28015 #[inline]
28016 fn from(node: DropExpression) -> AlterColumnOption {
28017 AlterColumnOption::DropExpression(node)
28018 }
28019}
28020impl From<DropIdentity> for AlterColumnOption {
28021 #[inline]
28022 fn from(node: DropIdentity) -> AlterColumnOption {
28023 AlterColumnOption::DropIdentity(node)
28024 }
28025}
28026impl From<DropNotNull> for AlterColumnOption {
28027 #[inline]
28028 fn from(node: DropNotNull) -> AlterColumnOption {
28029 AlterColumnOption::DropNotNull(node)
28030 }
28031}
28032impl From<ResetOptions> for AlterColumnOption {
28033 #[inline]
28034 fn from(node: ResetOptions) -> AlterColumnOption {
28035 AlterColumnOption::ResetOptions(node)
28036 }
28037}
28038impl From<Restart> for AlterColumnOption {
28039 #[inline]
28040 fn from(node: Restart) -> AlterColumnOption {
28041 AlterColumnOption::Restart(node)
28042 }
28043}
28044impl From<SetCompression> for AlterColumnOption {
28045 #[inline]
28046 fn from(node: SetCompression) -> AlterColumnOption {
28047 AlterColumnOption::SetCompression(node)
28048 }
28049}
28050impl From<SetDefault> for AlterColumnOption {
28051 #[inline]
28052 fn from(node: SetDefault) -> AlterColumnOption {
28053 AlterColumnOption::SetDefault(node)
28054 }
28055}
28056impl From<SetExpression> for AlterColumnOption {
28057 #[inline]
28058 fn from(node: SetExpression) -> AlterColumnOption {
28059 AlterColumnOption::SetExpression(node)
28060 }
28061}
28062impl From<SetGenerated> for AlterColumnOption {
28063 #[inline]
28064 fn from(node: SetGenerated) -> AlterColumnOption {
28065 AlterColumnOption::SetGenerated(node)
28066 }
28067}
28068impl From<SetGeneratedOptions> for AlterColumnOption {
28069 #[inline]
28070 fn from(node: SetGeneratedOptions) -> AlterColumnOption {
28071 AlterColumnOption::SetGeneratedOptions(node)
28072 }
28073}
28074impl From<SetNotNull> for AlterColumnOption {
28075 #[inline]
28076 fn from(node: SetNotNull) -> AlterColumnOption {
28077 AlterColumnOption::SetNotNull(node)
28078 }
28079}
28080impl From<SetOptions> for AlterColumnOption {
28081 #[inline]
28082 fn from(node: SetOptions) -> AlterColumnOption {
28083 AlterColumnOption::SetOptions(node)
28084 }
28085}
28086impl From<SetOptionsList> for AlterColumnOption {
28087 #[inline]
28088 fn from(node: SetOptionsList) -> AlterColumnOption {
28089 AlterColumnOption::SetOptionsList(node)
28090 }
28091}
28092impl From<SetSequenceOption> for AlterColumnOption {
28093 #[inline]
28094 fn from(node: SetSequenceOption) -> AlterColumnOption {
28095 AlterColumnOption::SetSequenceOption(node)
28096 }
28097}
28098impl From<SetStatistics> for AlterColumnOption {
28099 #[inline]
28100 fn from(node: SetStatistics) -> AlterColumnOption {
28101 AlterColumnOption::SetStatistics(node)
28102 }
28103}
28104impl From<SetStorage> for AlterColumnOption {
28105 #[inline]
28106 fn from(node: SetStorage) -> AlterColumnOption {
28107 AlterColumnOption::SetStorage(node)
28108 }
28109}
28110impl From<SetType> for AlterColumnOption {
28111 #[inline]
28112 fn from(node: SetType) -> AlterColumnOption {
28113 AlterColumnOption::SetType(node)
28114 }
28115}
28116impl AstNode for AlterDomainAction {
28117 #[inline]
28118 fn can_cast(kind: SyntaxKind) -> bool {
28119 matches!(
28120 kind,
28121 SyntaxKind::ADD_CONSTRAINT
28122 | SyntaxKind::DROP_CONSTRAINT
28123 | SyntaxKind::DROP_DEFAULT
28124 | SyntaxKind::DROP_NOT_NULL
28125 | SyntaxKind::OWNER_TO
28126 | SyntaxKind::RENAME_CONSTRAINT
28127 | SyntaxKind::RENAME_TO
28128 | SyntaxKind::SET_DEFAULT
28129 | SyntaxKind::SET_NOT_NULL
28130 | SyntaxKind::SET_SCHEMA
28131 | SyntaxKind::VALIDATE_CONSTRAINT
28132 )
28133 }
28134 #[inline]
28135 fn cast(syntax: SyntaxNode) -> Option<Self> {
28136 let res = match syntax.kind() {
28137 SyntaxKind::ADD_CONSTRAINT => {
28138 AlterDomainAction::AddConstraint(AddConstraint { syntax })
28139 }
28140 SyntaxKind::DROP_CONSTRAINT => {
28141 AlterDomainAction::DropConstraint(DropConstraint { syntax })
28142 }
28143 SyntaxKind::DROP_DEFAULT => AlterDomainAction::DropDefault(DropDefault { syntax }),
28144 SyntaxKind::DROP_NOT_NULL => AlterDomainAction::DropNotNull(DropNotNull { syntax }),
28145 SyntaxKind::OWNER_TO => AlterDomainAction::OwnerTo(OwnerTo { syntax }),
28146 SyntaxKind::RENAME_CONSTRAINT => {
28147 AlterDomainAction::RenameConstraint(RenameConstraint { syntax })
28148 }
28149 SyntaxKind::RENAME_TO => AlterDomainAction::RenameTo(RenameTo { syntax }),
28150 SyntaxKind::SET_DEFAULT => AlterDomainAction::SetDefault(SetDefault { syntax }),
28151 SyntaxKind::SET_NOT_NULL => AlterDomainAction::SetNotNull(SetNotNull { syntax }),
28152 SyntaxKind::SET_SCHEMA => AlterDomainAction::SetSchema(SetSchema { syntax }),
28153 SyntaxKind::VALIDATE_CONSTRAINT => {
28154 AlterDomainAction::ValidateConstraint(ValidateConstraint { syntax })
28155 }
28156 _ => {
28157 return None;
28158 }
28159 };
28160 Some(res)
28161 }
28162 #[inline]
28163 fn syntax(&self) -> &SyntaxNode {
28164 match self {
28165 AlterDomainAction::AddConstraint(it) => &it.syntax,
28166 AlterDomainAction::DropConstraint(it) => &it.syntax,
28167 AlterDomainAction::DropDefault(it) => &it.syntax,
28168 AlterDomainAction::DropNotNull(it) => &it.syntax,
28169 AlterDomainAction::OwnerTo(it) => &it.syntax,
28170 AlterDomainAction::RenameConstraint(it) => &it.syntax,
28171 AlterDomainAction::RenameTo(it) => &it.syntax,
28172 AlterDomainAction::SetDefault(it) => &it.syntax,
28173 AlterDomainAction::SetNotNull(it) => &it.syntax,
28174 AlterDomainAction::SetSchema(it) => &it.syntax,
28175 AlterDomainAction::ValidateConstraint(it) => &it.syntax,
28176 }
28177 }
28178}
28179impl From<AddConstraint> for AlterDomainAction {
28180 #[inline]
28181 fn from(node: AddConstraint) -> AlterDomainAction {
28182 AlterDomainAction::AddConstraint(node)
28183 }
28184}
28185impl From<DropConstraint> for AlterDomainAction {
28186 #[inline]
28187 fn from(node: DropConstraint) -> AlterDomainAction {
28188 AlterDomainAction::DropConstraint(node)
28189 }
28190}
28191impl From<DropDefault> for AlterDomainAction {
28192 #[inline]
28193 fn from(node: DropDefault) -> AlterDomainAction {
28194 AlterDomainAction::DropDefault(node)
28195 }
28196}
28197impl From<DropNotNull> for AlterDomainAction {
28198 #[inline]
28199 fn from(node: DropNotNull) -> AlterDomainAction {
28200 AlterDomainAction::DropNotNull(node)
28201 }
28202}
28203impl From<OwnerTo> for AlterDomainAction {
28204 #[inline]
28205 fn from(node: OwnerTo) -> AlterDomainAction {
28206 AlterDomainAction::OwnerTo(node)
28207 }
28208}
28209impl From<RenameConstraint> for AlterDomainAction {
28210 #[inline]
28211 fn from(node: RenameConstraint) -> AlterDomainAction {
28212 AlterDomainAction::RenameConstraint(node)
28213 }
28214}
28215impl From<RenameTo> for AlterDomainAction {
28216 #[inline]
28217 fn from(node: RenameTo) -> AlterDomainAction {
28218 AlterDomainAction::RenameTo(node)
28219 }
28220}
28221impl From<SetDefault> for AlterDomainAction {
28222 #[inline]
28223 fn from(node: SetDefault) -> AlterDomainAction {
28224 AlterDomainAction::SetDefault(node)
28225 }
28226}
28227impl From<SetNotNull> for AlterDomainAction {
28228 #[inline]
28229 fn from(node: SetNotNull) -> AlterDomainAction {
28230 AlterDomainAction::SetNotNull(node)
28231 }
28232}
28233impl From<SetSchema> for AlterDomainAction {
28234 #[inline]
28235 fn from(node: SetSchema) -> AlterDomainAction {
28236 AlterDomainAction::SetSchema(node)
28237 }
28238}
28239impl From<ValidateConstraint> for AlterDomainAction {
28240 #[inline]
28241 fn from(node: ValidateConstraint) -> AlterDomainAction {
28242 AlterDomainAction::ValidateConstraint(node)
28243 }
28244}
28245impl AstNode for AlterMaterializedViewAction {
28246 #[inline]
28247 fn can_cast(kind: SyntaxKind) -> bool {
28248 matches!(
28249 kind,
28250 SyntaxKind::DEPENDS_ON_EXTENSION
28251 | SyntaxKind::NO_DEPENDS_ON_EXTENSION
28252 | SyntaxKind::RENAME_COLUMN
28253 | SyntaxKind::RENAME_TO
28254 | SyntaxKind::SET_SCHEMA
28255 )
28256 }
28257 #[inline]
28258 fn cast(syntax: SyntaxNode) -> Option<Self> {
28259 let res = match syntax.kind() {
28260 SyntaxKind::DEPENDS_ON_EXTENSION => {
28261 AlterMaterializedViewAction::DependsOnExtension(DependsOnExtension { syntax })
28262 }
28263 SyntaxKind::NO_DEPENDS_ON_EXTENSION => {
28264 AlterMaterializedViewAction::NoDependsOnExtension(NoDependsOnExtension { syntax })
28265 }
28266 SyntaxKind::RENAME_COLUMN => {
28267 AlterMaterializedViewAction::RenameColumn(RenameColumn { syntax })
28268 }
28269 SyntaxKind::RENAME_TO => AlterMaterializedViewAction::RenameTo(RenameTo { syntax }),
28270 SyntaxKind::SET_SCHEMA => AlterMaterializedViewAction::SetSchema(SetSchema { syntax }),
28271 _ => {
28272 if let Some(result) = AlterTableAction::cast(syntax) {
28273 return Some(AlterMaterializedViewAction::AlterTableAction(result));
28274 }
28275 return None;
28276 }
28277 };
28278 Some(res)
28279 }
28280 #[inline]
28281 fn syntax(&self) -> &SyntaxNode {
28282 match self {
28283 AlterMaterializedViewAction::DependsOnExtension(it) => &it.syntax,
28284 AlterMaterializedViewAction::NoDependsOnExtension(it) => &it.syntax,
28285 AlterMaterializedViewAction::RenameColumn(it) => &it.syntax,
28286 AlterMaterializedViewAction::RenameTo(it) => &it.syntax,
28287 AlterMaterializedViewAction::SetSchema(it) => &it.syntax,
28288 AlterMaterializedViewAction::AlterTableAction(it) => it.syntax(),
28289 }
28290 }
28291}
28292impl From<DependsOnExtension> for AlterMaterializedViewAction {
28293 #[inline]
28294 fn from(node: DependsOnExtension) -> AlterMaterializedViewAction {
28295 AlterMaterializedViewAction::DependsOnExtension(node)
28296 }
28297}
28298impl From<NoDependsOnExtension> for AlterMaterializedViewAction {
28299 #[inline]
28300 fn from(node: NoDependsOnExtension) -> AlterMaterializedViewAction {
28301 AlterMaterializedViewAction::NoDependsOnExtension(node)
28302 }
28303}
28304impl From<RenameColumn> for AlterMaterializedViewAction {
28305 #[inline]
28306 fn from(node: RenameColumn) -> AlterMaterializedViewAction {
28307 AlterMaterializedViewAction::RenameColumn(node)
28308 }
28309}
28310impl From<RenameTo> for AlterMaterializedViewAction {
28311 #[inline]
28312 fn from(node: RenameTo) -> AlterMaterializedViewAction {
28313 AlterMaterializedViewAction::RenameTo(node)
28314 }
28315}
28316impl From<SetSchema> for AlterMaterializedViewAction {
28317 #[inline]
28318 fn from(node: SetSchema) -> AlterMaterializedViewAction {
28319 AlterMaterializedViewAction::SetSchema(node)
28320 }
28321}
28322impl AstNode for AlterTableAction {
28323 #[inline]
28324 fn can_cast(kind: SyntaxKind) -> bool {
28325 matches!(
28326 kind,
28327 SyntaxKind::ADD_COLUMN
28328 | SyntaxKind::ADD_CONSTRAINT
28329 | SyntaxKind::ALTER_COLUMN
28330 | SyntaxKind::ALTER_CONSTRAINT
28331 | SyntaxKind::ATTACH_PARTITION
28332 | SyntaxKind::CLUSTER_ON
28333 | SyntaxKind::DETACH_PARTITION
28334 | SyntaxKind::DISABLE_RLS
28335 | SyntaxKind::DISABLE_RULE
28336 | SyntaxKind::DISABLE_TRIGGER
28337 | SyntaxKind::DROP_COLUMN
28338 | SyntaxKind::DROP_CONSTRAINT
28339 | SyntaxKind::ENABLE_ALWAYS_RULE
28340 | SyntaxKind::ENABLE_ALWAYS_TRIGGER
28341 | SyntaxKind::ENABLE_REPLICA_RULE
28342 | SyntaxKind::ENABLE_REPLICA_TRIGGER
28343 | SyntaxKind::ENABLE_RLS
28344 | SyntaxKind::ENABLE_RULE
28345 | SyntaxKind::ENABLE_TRIGGER
28346 | SyntaxKind::FORCE_RLS
28347 | SyntaxKind::INHERIT_TABLE
28348 | SyntaxKind::NO_FORCE_RLS
28349 | SyntaxKind::NO_INHERIT_TABLE
28350 | SyntaxKind::NOT_OF
28351 | SyntaxKind::OF_TYPE
28352 | SyntaxKind::OPTION_ITEM_LIST
28353 | SyntaxKind::OWNER_TO
28354 | SyntaxKind::RENAME_COLUMN
28355 | SyntaxKind::RENAME_CONSTRAINT
28356 | SyntaxKind::RENAME_TO
28357 | SyntaxKind::REPLICA_IDENTITY
28358 | SyntaxKind::RESET_OPTIONS
28359 | SyntaxKind::SET_ACCESS_METHOD
28360 | SyntaxKind::SET_LOGGED
28361 | SyntaxKind::SET_OPTIONS
28362 | SyntaxKind::SET_SCHEMA
28363 | SyntaxKind::SET_TABLESPACE
28364 | SyntaxKind::SET_UNLOGGED
28365 | SyntaxKind::SET_WITHOUT_CLUSTER
28366 | SyntaxKind::SET_WITHOUT_OIDS
28367 | SyntaxKind::VALIDATE_CONSTRAINT
28368 )
28369 }
28370 #[inline]
28371 fn cast(syntax: SyntaxNode) -> Option<Self> {
28372 let res = match syntax.kind() {
28373 SyntaxKind::ADD_COLUMN => AlterTableAction::AddColumn(AddColumn { syntax }),
28374 SyntaxKind::ADD_CONSTRAINT => AlterTableAction::AddConstraint(AddConstraint { syntax }),
28375 SyntaxKind::ALTER_COLUMN => AlterTableAction::AlterColumn(AlterColumn { syntax }),
28376 SyntaxKind::ALTER_CONSTRAINT => {
28377 AlterTableAction::AlterConstraint(AlterConstraint { syntax })
28378 }
28379 SyntaxKind::ATTACH_PARTITION => {
28380 AlterTableAction::AttachPartition(AttachPartition { syntax })
28381 }
28382 SyntaxKind::CLUSTER_ON => AlterTableAction::ClusterOn(ClusterOn { syntax }),
28383 SyntaxKind::DETACH_PARTITION => {
28384 AlterTableAction::DetachPartition(DetachPartition { syntax })
28385 }
28386 SyntaxKind::DISABLE_RLS => AlterTableAction::DisableRls(DisableRls { syntax }),
28387 SyntaxKind::DISABLE_RULE => AlterTableAction::DisableRule(DisableRule { syntax }),
28388 SyntaxKind::DISABLE_TRIGGER => {
28389 AlterTableAction::DisableTrigger(DisableTrigger { syntax })
28390 }
28391 SyntaxKind::DROP_COLUMN => AlterTableAction::DropColumn(DropColumn { syntax }),
28392 SyntaxKind::DROP_CONSTRAINT => {
28393 AlterTableAction::DropConstraint(DropConstraint { syntax })
28394 }
28395 SyntaxKind::ENABLE_ALWAYS_RULE => {
28396 AlterTableAction::EnableAlwaysRule(EnableAlwaysRule { syntax })
28397 }
28398 SyntaxKind::ENABLE_ALWAYS_TRIGGER => {
28399 AlterTableAction::EnableAlwaysTrigger(EnableAlwaysTrigger { syntax })
28400 }
28401 SyntaxKind::ENABLE_REPLICA_RULE => {
28402 AlterTableAction::EnableReplicaRule(EnableReplicaRule { syntax })
28403 }
28404 SyntaxKind::ENABLE_REPLICA_TRIGGER => {
28405 AlterTableAction::EnableReplicaTrigger(EnableReplicaTrigger { syntax })
28406 }
28407 SyntaxKind::ENABLE_RLS => AlterTableAction::EnableRls(EnableRls { syntax }),
28408 SyntaxKind::ENABLE_RULE => AlterTableAction::EnableRule(EnableRule { syntax }),
28409 SyntaxKind::ENABLE_TRIGGER => AlterTableAction::EnableTrigger(EnableTrigger { syntax }),
28410 SyntaxKind::FORCE_RLS => AlterTableAction::ForceRls(ForceRls { syntax }),
28411 SyntaxKind::INHERIT_TABLE => AlterTableAction::InheritTable(InheritTable { syntax }),
28412 SyntaxKind::NO_FORCE_RLS => AlterTableAction::NoForceRls(NoForceRls { syntax }),
28413 SyntaxKind::NO_INHERIT_TABLE => {
28414 AlterTableAction::NoInheritTable(NoInheritTable { syntax })
28415 }
28416 SyntaxKind::NOT_OF => AlterTableAction::NotOf(NotOf { syntax }),
28417 SyntaxKind::OF_TYPE => AlterTableAction::OfType(OfType { syntax }),
28418 SyntaxKind::OPTION_ITEM_LIST => {
28419 AlterTableAction::OptionItemList(OptionItemList { syntax })
28420 }
28421 SyntaxKind::OWNER_TO => AlterTableAction::OwnerTo(OwnerTo { syntax }),
28422 SyntaxKind::RENAME_COLUMN => AlterTableAction::RenameColumn(RenameColumn { syntax }),
28423 SyntaxKind::RENAME_CONSTRAINT => {
28424 AlterTableAction::RenameConstraint(RenameConstraint { syntax })
28425 }
28426 SyntaxKind::RENAME_TO => AlterTableAction::RenameTo(RenameTo { syntax }),
28427 SyntaxKind::REPLICA_IDENTITY => {
28428 AlterTableAction::ReplicaIdentity(ReplicaIdentity { syntax })
28429 }
28430 SyntaxKind::RESET_OPTIONS => AlterTableAction::ResetOptions(ResetOptions { syntax }),
28431 SyntaxKind::SET_ACCESS_METHOD => {
28432 AlterTableAction::SetAccessMethod(SetAccessMethod { syntax })
28433 }
28434 SyntaxKind::SET_LOGGED => AlterTableAction::SetLogged(SetLogged { syntax }),
28435 SyntaxKind::SET_OPTIONS => AlterTableAction::SetOptions(SetOptions { syntax }),
28436 SyntaxKind::SET_SCHEMA => AlterTableAction::SetSchema(SetSchema { syntax }),
28437 SyntaxKind::SET_TABLESPACE => AlterTableAction::SetTablespace(SetTablespace { syntax }),
28438 SyntaxKind::SET_UNLOGGED => AlterTableAction::SetUnlogged(SetUnlogged { syntax }),
28439 SyntaxKind::SET_WITHOUT_CLUSTER => {
28440 AlterTableAction::SetWithoutCluster(SetWithoutCluster { syntax })
28441 }
28442 SyntaxKind::SET_WITHOUT_OIDS => {
28443 AlterTableAction::SetWithoutOids(SetWithoutOids { syntax })
28444 }
28445 SyntaxKind::VALIDATE_CONSTRAINT => {
28446 AlterTableAction::ValidateConstraint(ValidateConstraint { syntax })
28447 }
28448 _ => {
28449 return None;
28450 }
28451 };
28452 Some(res)
28453 }
28454 #[inline]
28455 fn syntax(&self) -> &SyntaxNode {
28456 match self {
28457 AlterTableAction::AddColumn(it) => &it.syntax,
28458 AlterTableAction::AddConstraint(it) => &it.syntax,
28459 AlterTableAction::AlterColumn(it) => &it.syntax,
28460 AlterTableAction::AlterConstraint(it) => &it.syntax,
28461 AlterTableAction::AttachPartition(it) => &it.syntax,
28462 AlterTableAction::ClusterOn(it) => &it.syntax,
28463 AlterTableAction::DetachPartition(it) => &it.syntax,
28464 AlterTableAction::DisableRls(it) => &it.syntax,
28465 AlterTableAction::DisableRule(it) => &it.syntax,
28466 AlterTableAction::DisableTrigger(it) => &it.syntax,
28467 AlterTableAction::DropColumn(it) => &it.syntax,
28468 AlterTableAction::DropConstraint(it) => &it.syntax,
28469 AlterTableAction::EnableAlwaysRule(it) => &it.syntax,
28470 AlterTableAction::EnableAlwaysTrigger(it) => &it.syntax,
28471 AlterTableAction::EnableReplicaRule(it) => &it.syntax,
28472 AlterTableAction::EnableReplicaTrigger(it) => &it.syntax,
28473 AlterTableAction::EnableRls(it) => &it.syntax,
28474 AlterTableAction::EnableRule(it) => &it.syntax,
28475 AlterTableAction::EnableTrigger(it) => &it.syntax,
28476 AlterTableAction::ForceRls(it) => &it.syntax,
28477 AlterTableAction::InheritTable(it) => &it.syntax,
28478 AlterTableAction::NoForceRls(it) => &it.syntax,
28479 AlterTableAction::NoInheritTable(it) => &it.syntax,
28480 AlterTableAction::NotOf(it) => &it.syntax,
28481 AlterTableAction::OfType(it) => &it.syntax,
28482 AlterTableAction::OptionItemList(it) => &it.syntax,
28483 AlterTableAction::OwnerTo(it) => &it.syntax,
28484 AlterTableAction::RenameColumn(it) => &it.syntax,
28485 AlterTableAction::RenameConstraint(it) => &it.syntax,
28486 AlterTableAction::RenameTo(it) => &it.syntax,
28487 AlterTableAction::ReplicaIdentity(it) => &it.syntax,
28488 AlterTableAction::ResetOptions(it) => &it.syntax,
28489 AlterTableAction::SetAccessMethod(it) => &it.syntax,
28490 AlterTableAction::SetLogged(it) => &it.syntax,
28491 AlterTableAction::SetOptions(it) => &it.syntax,
28492 AlterTableAction::SetSchema(it) => &it.syntax,
28493 AlterTableAction::SetTablespace(it) => &it.syntax,
28494 AlterTableAction::SetUnlogged(it) => &it.syntax,
28495 AlterTableAction::SetWithoutCluster(it) => &it.syntax,
28496 AlterTableAction::SetWithoutOids(it) => &it.syntax,
28497 AlterTableAction::ValidateConstraint(it) => &it.syntax,
28498 }
28499 }
28500}
28501impl From<AddColumn> for AlterTableAction {
28502 #[inline]
28503 fn from(node: AddColumn) -> AlterTableAction {
28504 AlterTableAction::AddColumn(node)
28505 }
28506}
28507impl From<AddConstraint> for AlterTableAction {
28508 #[inline]
28509 fn from(node: AddConstraint) -> AlterTableAction {
28510 AlterTableAction::AddConstraint(node)
28511 }
28512}
28513impl From<AlterColumn> for AlterTableAction {
28514 #[inline]
28515 fn from(node: AlterColumn) -> AlterTableAction {
28516 AlterTableAction::AlterColumn(node)
28517 }
28518}
28519impl From<AlterConstraint> for AlterTableAction {
28520 #[inline]
28521 fn from(node: AlterConstraint) -> AlterTableAction {
28522 AlterTableAction::AlterConstraint(node)
28523 }
28524}
28525impl From<AttachPartition> for AlterTableAction {
28526 #[inline]
28527 fn from(node: AttachPartition) -> AlterTableAction {
28528 AlterTableAction::AttachPartition(node)
28529 }
28530}
28531impl From<ClusterOn> for AlterTableAction {
28532 #[inline]
28533 fn from(node: ClusterOn) -> AlterTableAction {
28534 AlterTableAction::ClusterOn(node)
28535 }
28536}
28537impl From<DetachPartition> for AlterTableAction {
28538 #[inline]
28539 fn from(node: DetachPartition) -> AlterTableAction {
28540 AlterTableAction::DetachPartition(node)
28541 }
28542}
28543impl From<DisableRls> for AlterTableAction {
28544 #[inline]
28545 fn from(node: DisableRls) -> AlterTableAction {
28546 AlterTableAction::DisableRls(node)
28547 }
28548}
28549impl From<DisableRule> for AlterTableAction {
28550 #[inline]
28551 fn from(node: DisableRule) -> AlterTableAction {
28552 AlterTableAction::DisableRule(node)
28553 }
28554}
28555impl From<DisableTrigger> for AlterTableAction {
28556 #[inline]
28557 fn from(node: DisableTrigger) -> AlterTableAction {
28558 AlterTableAction::DisableTrigger(node)
28559 }
28560}
28561impl From<DropColumn> for AlterTableAction {
28562 #[inline]
28563 fn from(node: DropColumn) -> AlterTableAction {
28564 AlterTableAction::DropColumn(node)
28565 }
28566}
28567impl From<DropConstraint> for AlterTableAction {
28568 #[inline]
28569 fn from(node: DropConstraint) -> AlterTableAction {
28570 AlterTableAction::DropConstraint(node)
28571 }
28572}
28573impl From<EnableAlwaysRule> for AlterTableAction {
28574 #[inline]
28575 fn from(node: EnableAlwaysRule) -> AlterTableAction {
28576 AlterTableAction::EnableAlwaysRule(node)
28577 }
28578}
28579impl From<EnableAlwaysTrigger> for AlterTableAction {
28580 #[inline]
28581 fn from(node: EnableAlwaysTrigger) -> AlterTableAction {
28582 AlterTableAction::EnableAlwaysTrigger(node)
28583 }
28584}
28585impl From<EnableReplicaRule> for AlterTableAction {
28586 #[inline]
28587 fn from(node: EnableReplicaRule) -> AlterTableAction {
28588 AlterTableAction::EnableReplicaRule(node)
28589 }
28590}
28591impl From<EnableReplicaTrigger> for AlterTableAction {
28592 #[inline]
28593 fn from(node: EnableReplicaTrigger) -> AlterTableAction {
28594 AlterTableAction::EnableReplicaTrigger(node)
28595 }
28596}
28597impl From<EnableRls> for AlterTableAction {
28598 #[inline]
28599 fn from(node: EnableRls) -> AlterTableAction {
28600 AlterTableAction::EnableRls(node)
28601 }
28602}
28603impl From<EnableRule> for AlterTableAction {
28604 #[inline]
28605 fn from(node: EnableRule) -> AlterTableAction {
28606 AlterTableAction::EnableRule(node)
28607 }
28608}
28609impl From<EnableTrigger> for AlterTableAction {
28610 #[inline]
28611 fn from(node: EnableTrigger) -> AlterTableAction {
28612 AlterTableAction::EnableTrigger(node)
28613 }
28614}
28615impl From<ForceRls> for AlterTableAction {
28616 #[inline]
28617 fn from(node: ForceRls) -> AlterTableAction {
28618 AlterTableAction::ForceRls(node)
28619 }
28620}
28621impl From<InheritTable> for AlterTableAction {
28622 #[inline]
28623 fn from(node: InheritTable) -> AlterTableAction {
28624 AlterTableAction::InheritTable(node)
28625 }
28626}
28627impl From<NoForceRls> for AlterTableAction {
28628 #[inline]
28629 fn from(node: NoForceRls) -> AlterTableAction {
28630 AlterTableAction::NoForceRls(node)
28631 }
28632}
28633impl From<NoInheritTable> for AlterTableAction {
28634 #[inline]
28635 fn from(node: NoInheritTable) -> AlterTableAction {
28636 AlterTableAction::NoInheritTable(node)
28637 }
28638}
28639impl From<NotOf> for AlterTableAction {
28640 #[inline]
28641 fn from(node: NotOf) -> AlterTableAction {
28642 AlterTableAction::NotOf(node)
28643 }
28644}
28645impl From<OfType> for AlterTableAction {
28646 #[inline]
28647 fn from(node: OfType) -> AlterTableAction {
28648 AlterTableAction::OfType(node)
28649 }
28650}
28651impl From<OptionItemList> for AlterTableAction {
28652 #[inline]
28653 fn from(node: OptionItemList) -> AlterTableAction {
28654 AlterTableAction::OptionItemList(node)
28655 }
28656}
28657impl From<OwnerTo> for AlterTableAction {
28658 #[inline]
28659 fn from(node: OwnerTo) -> AlterTableAction {
28660 AlterTableAction::OwnerTo(node)
28661 }
28662}
28663impl From<RenameColumn> for AlterTableAction {
28664 #[inline]
28665 fn from(node: RenameColumn) -> AlterTableAction {
28666 AlterTableAction::RenameColumn(node)
28667 }
28668}
28669impl From<RenameConstraint> for AlterTableAction {
28670 #[inline]
28671 fn from(node: RenameConstraint) -> AlterTableAction {
28672 AlterTableAction::RenameConstraint(node)
28673 }
28674}
28675impl From<RenameTo> for AlterTableAction {
28676 #[inline]
28677 fn from(node: RenameTo) -> AlterTableAction {
28678 AlterTableAction::RenameTo(node)
28679 }
28680}
28681impl From<ReplicaIdentity> for AlterTableAction {
28682 #[inline]
28683 fn from(node: ReplicaIdentity) -> AlterTableAction {
28684 AlterTableAction::ReplicaIdentity(node)
28685 }
28686}
28687impl From<ResetOptions> for AlterTableAction {
28688 #[inline]
28689 fn from(node: ResetOptions) -> AlterTableAction {
28690 AlterTableAction::ResetOptions(node)
28691 }
28692}
28693impl From<SetAccessMethod> for AlterTableAction {
28694 #[inline]
28695 fn from(node: SetAccessMethod) -> AlterTableAction {
28696 AlterTableAction::SetAccessMethod(node)
28697 }
28698}
28699impl From<SetLogged> for AlterTableAction {
28700 #[inline]
28701 fn from(node: SetLogged) -> AlterTableAction {
28702 AlterTableAction::SetLogged(node)
28703 }
28704}
28705impl From<SetOptions> for AlterTableAction {
28706 #[inline]
28707 fn from(node: SetOptions) -> AlterTableAction {
28708 AlterTableAction::SetOptions(node)
28709 }
28710}
28711impl From<SetSchema> for AlterTableAction {
28712 #[inline]
28713 fn from(node: SetSchema) -> AlterTableAction {
28714 AlterTableAction::SetSchema(node)
28715 }
28716}
28717impl From<SetTablespace> for AlterTableAction {
28718 #[inline]
28719 fn from(node: SetTablespace) -> AlterTableAction {
28720 AlterTableAction::SetTablespace(node)
28721 }
28722}
28723impl From<SetUnlogged> for AlterTableAction {
28724 #[inline]
28725 fn from(node: SetUnlogged) -> AlterTableAction {
28726 AlterTableAction::SetUnlogged(node)
28727 }
28728}
28729impl From<SetWithoutCluster> for AlterTableAction {
28730 #[inline]
28731 fn from(node: SetWithoutCluster) -> AlterTableAction {
28732 AlterTableAction::SetWithoutCluster(node)
28733 }
28734}
28735impl From<SetWithoutOids> for AlterTableAction {
28736 #[inline]
28737 fn from(node: SetWithoutOids) -> AlterTableAction {
28738 AlterTableAction::SetWithoutOids(node)
28739 }
28740}
28741impl From<ValidateConstraint> for AlterTableAction {
28742 #[inline]
28743 fn from(node: ValidateConstraint) -> AlterTableAction {
28744 AlterTableAction::ValidateConstraint(node)
28745 }
28746}
28747impl AstNode for ColumnConstraint {
28748 #[inline]
28749 fn can_cast(kind: SyntaxKind) -> bool {
28750 matches!(
28751 kind,
28752 SyntaxKind::CHECK_CONSTRAINT
28753 | SyntaxKind::DEFAULT_CONSTRAINT
28754 | SyntaxKind::EXCLUDE_CONSTRAINT
28755 | SyntaxKind::NOT_NULL_CONSTRAINT
28756 | SyntaxKind::PRIMARY_KEY_CONSTRAINT
28757 | SyntaxKind::REFERENCES_CONSTRAINT
28758 | SyntaxKind::UNIQUE_CONSTRAINT
28759 )
28760 }
28761 #[inline]
28762 fn cast(syntax: SyntaxNode) -> Option<Self> {
28763 let res = match syntax.kind() {
28764 SyntaxKind::CHECK_CONSTRAINT => {
28765 ColumnConstraint::CheckConstraint(CheckConstraint { syntax })
28766 }
28767 SyntaxKind::DEFAULT_CONSTRAINT => {
28768 ColumnConstraint::DefaultConstraint(DefaultConstraint { syntax })
28769 }
28770 SyntaxKind::EXCLUDE_CONSTRAINT => {
28771 ColumnConstraint::ExcludeConstraint(ExcludeConstraint { syntax })
28772 }
28773 SyntaxKind::NOT_NULL_CONSTRAINT => {
28774 ColumnConstraint::NotNullConstraint(NotNullConstraint { syntax })
28775 }
28776 SyntaxKind::PRIMARY_KEY_CONSTRAINT => {
28777 ColumnConstraint::PrimaryKeyConstraint(PrimaryKeyConstraint { syntax })
28778 }
28779 SyntaxKind::REFERENCES_CONSTRAINT => {
28780 ColumnConstraint::ReferencesConstraint(ReferencesConstraint { syntax })
28781 }
28782 SyntaxKind::UNIQUE_CONSTRAINT => {
28783 ColumnConstraint::UniqueConstraint(UniqueConstraint { syntax })
28784 }
28785 _ => {
28786 return None;
28787 }
28788 };
28789 Some(res)
28790 }
28791 #[inline]
28792 fn syntax(&self) -> &SyntaxNode {
28793 match self {
28794 ColumnConstraint::CheckConstraint(it) => &it.syntax,
28795 ColumnConstraint::DefaultConstraint(it) => &it.syntax,
28796 ColumnConstraint::ExcludeConstraint(it) => &it.syntax,
28797 ColumnConstraint::NotNullConstraint(it) => &it.syntax,
28798 ColumnConstraint::PrimaryKeyConstraint(it) => &it.syntax,
28799 ColumnConstraint::ReferencesConstraint(it) => &it.syntax,
28800 ColumnConstraint::UniqueConstraint(it) => &it.syntax,
28801 }
28802 }
28803}
28804impl From<CheckConstraint> for ColumnConstraint {
28805 #[inline]
28806 fn from(node: CheckConstraint) -> ColumnConstraint {
28807 ColumnConstraint::CheckConstraint(node)
28808 }
28809}
28810impl From<DefaultConstraint> for ColumnConstraint {
28811 #[inline]
28812 fn from(node: DefaultConstraint) -> ColumnConstraint {
28813 ColumnConstraint::DefaultConstraint(node)
28814 }
28815}
28816impl From<ExcludeConstraint> for ColumnConstraint {
28817 #[inline]
28818 fn from(node: ExcludeConstraint) -> ColumnConstraint {
28819 ColumnConstraint::ExcludeConstraint(node)
28820 }
28821}
28822impl From<NotNullConstraint> for ColumnConstraint {
28823 #[inline]
28824 fn from(node: NotNullConstraint) -> ColumnConstraint {
28825 ColumnConstraint::NotNullConstraint(node)
28826 }
28827}
28828impl From<PrimaryKeyConstraint> for ColumnConstraint {
28829 #[inline]
28830 fn from(node: PrimaryKeyConstraint) -> ColumnConstraint {
28831 ColumnConstraint::PrimaryKeyConstraint(node)
28832 }
28833}
28834impl From<ReferencesConstraint> for ColumnConstraint {
28835 #[inline]
28836 fn from(node: ReferencesConstraint) -> ColumnConstraint {
28837 ColumnConstraint::ReferencesConstraint(node)
28838 }
28839}
28840impl From<UniqueConstraint> for ColumnConstraint {
28841 #[inline]
28842 fn from(node: UniqueConstraint) -> ColumnConstraint {
28843 ColumnConstraint::UniqueConstraint(node)
28844 }
28845}
28846impl AstNode for ConflictAction {
28847 #[inline]
28848 fn can_cast(kind: SyntaxKind) -> bool {
28849 matches!(
28850 kind,
28851 SyntaxKind::CONFLICT_DO_NOTHING | SyntaxKind::CONFLICT_DO_UPDATE_SET
28852 )
28853 }
28854 #[inline]
28855 fn cast(syntax: SyntaxNode) -> Option<Self> {
28856 let res = match syntax.kind() {
28857 SyntaxKind::CONFLICT_DO_NOTHING => {
28858 ConflictAction::ConflictDoNothing(ConflictDoNothing { syntax })
28859 }
28860 SyntaxKind::CONFLICT_DO_UPDATE_SET => {
28861 ConflictAction::ConflictDoUpdateSet(ConflictDoUpdateSet { syntax })
28862 }
28863 _ => {
28864 return None;
28865 }
28866 };
28867 Some(res)
28868 }
28869 #[inline]
28870 fn syntax(&self) -> &SyntaxNode {
28871 match self {
28872 ConflictAction::ConflictDoNothing(it) => &it.syntax,
28873 ConflictAction::ConflictDoUpdateSet(it) => &it.syntax,
28874 }
28875 }
28876}
28877impl From<ConflictDoNothing> for ConflictAction {
28878 #[inline]
28879 fn from(node: ConflictDoNothing) -> ConflictAction {
28880 ConflictAction::ConflictDoNothing(node)
28881 }
28882}
28883impl From<ConflictDoUpdateSet> for ConflictAction {
28884 #[inline]
28885 fn from(node: ConflictDoUpdateSet) -> ConflictAction {
28886 ConflictAction::ConflictDoUpdateSet(node)
28887 }
28888}
28889impl AstNode for ConflictTarget {
28890 #[inline]
28891 fn can_cast(kind: SyntaxKind) -> bool {
28892 matches!(
28893 kind,
28894 SyntaxKind::CONFLICT_ON_CONSTRAINT | SyntaxKind::CONFLICT_ON_INDEX
28895 )
28896 }
28897 #[inline]
28898 fn cast(syntax: SyntaxNode) -> Option<Self> {
28899 let res = match syntax.kind() {
28900 SyntaxKind::CONFLICT_ON_CONSTRAINT => {
28901 ConflictTarget::ConflictOnConstraint(ConflictOnConstraint { syntax })
28902 }
28903 SyntaxKind::CONFLICT_ON_INDEX => {
28904 ConflictTarget::ConflictOnIndex(ConflictOnIndex { syntax })
28905 }
28906 _ => {
28907 return None;
28908 }
28909 };
28910 Some(res)
28911 }
28912 #[inline]
28913 fn syntax(&self) -> &SyntaxNode {
28914 match self {
28915 ConflictTarget::ConflictOnConstraint(it) => &it.syntax,
28916 ConflictTarget::ConflictOnIndex(it) => &it.syntax,
28917 }
28918 }
28919}
28920impl From<ConflictOnConstraint> for ConflictTarget {
28921 #[inline]
28922 fn from(node: ConflictOnConstraint) -> ConflictTarget {
28923 ConflictTarget::ConflictOnConstraint(node)
28924 }
28925}
28926impl From<ConflictOnIndex> for ConflictTarget {
28927 #[inline]
28928 fn from(node: ConflictOnIndex) -> ConflictTarget {
28929 ConflictTarget::ConflictOnIndex(node)
28930 }
28931}
28932impl AstNode for Constraint {
28933 #[inline]
28934 fn can_cast(kind: SyntaxKind) -> bool {
28935 matches!(
28936 kind,
28937 SyntaxKind::CHECK_CONSTRAINT
28938 | SyntaxKind::DEFAULT_CONSTRAINT
28939 | SyntaxKind::FOREIGN_KEY_CONSTRAINT
28940 | SyntaxKind::GENERATED_CONSTRAINT
28941 | SyntaxKind::NOT_NULL_CONSTRAINT
28942 | SyntaxKind::NULL_CONSTRAINT
28943 | SyntaxKind::PRIMARY_KEY_CONSTRAINT
28944 | SyntaxKind::REFERENCES_CONSTRAINT
28945 | SyntaxKind::UNIQUE_CONSTRAINT
28946 )
28947 }
28948 #[inline]
28949 fn cast(syntax: SyntaxNode) -> Option<Self> {
28950 let res = match syntax.kind() {
28951 SyntaxKind::CHECK_CONSTRAINT => Constraint::CheckConstraint(CheckConstraint { syntax }),
28952 SyntaxKind::DEFAULT_CONSTRAINT => {
28953 Constraint::DefaultConstraint(DefaultConstraint { syntax })
28954 }
28955 SyntaxKind::FOREIGN_KEY_CONSTRAINT => {
28956 Constraint::ForeignKeyConstraint(ForeignKeyConstraint { syntax })
28957 }
28958 SyntaxKind::GENERATED_CONSTRAINT => {
28959 Constraint::GeneratedConstraint(GeneratedConstraint { syntax })
28960 }
28961 SyntaxKind::NOT_NULL_CONSTRAINT => {
28962 Constraint::NotNullConstraint(NotNullConstraint { syntax })
28963 }
28964 SyntaxKind::NULL_CONSTRAINT => Constraint::NullConstraint(NullConstraint { syntax }),
28965 SyntaxKind::PRIMARY_KEY_CONSTRAINT => {
28966 Constraint::PrimaryKeyConstraint(PrimaryKeyConstraint { syntax })
28967 }
28968 SyntaxKind::REFERENCES_CONSTRAINT => {
28969 Constraint::ReferencesConstraint(ReferencesConstraint { syntax })
28970 }
28971 SyntaxKind::UNIQUE_CONSTRAINT => {
28972 Constraint::UniqueConstraint(UniqueConstraint { syntax })
28973 }
28974 _ => {
28975 return None;
28976 }
28977 };
28978 Some(res)
28979 }
28980 #[inline]
28981 fn syntax(&self) -> &SyntaxNode {
28982 match self {
28983 Constraint::CheckConstraint(it) => &it.syntax,
28984 Constraint::DefaultConstraint(it) => &it.syntax,
28985 Constraint::ForeignKeyConstraint(it) => &it.syntax,
28986 Constraint::GeneratedConstraint(it) => &it.syntax,
28987 Constraint::NotNullConstraint(it) => &it.syntax,
28988 Constraint::NullConstraint(it) => &it.syntax,
28989 Constraint::PrimaryKeyConstraint(it) => &it.syntax,
28990 Constraint::ReferencesConstraint(it) => &it.syntax,
28991 Constraint::UniqueConstraint(it) => &it.syntax,
28992 }
28993 }
28994}
28995impl From<CheckConstraint> for Constraint {
28996 #[inline]
28997 fn from(node: CheckConstraint) -> Constraint {
28998 Constraint::CheckConstraint(node)
28999 }
29000}
29001impl From<DefaultConstraint> for Constraint {
29002 #[inline]
29003 fn from(node: DefaultConstraint) -> Constraint {
29004 Constraint::DefaultConstraint(node)
29005 }
29006}
29007impl From<ForeignKeyConstraint> for Constraint {
29008 #[inline]
29009 fn from(node: ForeignKeyConstraint) -> Constraint {
29010 Constraint::ForeignKeyConstraint(node)
29011 }
29012}
29013impl From<GeneratedConstraint> for Constraint {
29014 #[inline]
29015 fn from(node: GeneratedConstraint) -> Constraint {
29016 Constraint::GeneratedConstraint(node)
29017 }
29018}
29019impl From<NotNullConstraint> for Constraint {
29020 #[inline]
29021 fn from(node: NotNullConstraint) -> Constraint {
29022 Constraint::NotNullConstraint(node)
29023 }
29024}
29025impl From<NullConstraint> for Constraint {
29026 #[inline]
29027 fn from(node: NullConstraint) -> Constraint {
29028 Constraint::NullConstraint(node)
29029 }
29030}
29031impl From<PrimaryKeyConstraint> for Constraint {
29032 #[inline]
29033 fn from(node: PrimaryKeyConstraint) -> Constraint {
29034 Constraint::PrimaryKeyConstraint(node)
29035 }
29036}
29037impl From<ReferencesConstraint> for Constraint {
29038 #[inline]
29039 fn from(node: ReferencesConstraint) -> Constraint {
29040 Constraint::ReferencesConstraint(node)
29041 }
29042}
29043impl From<UniqueConstraint> for Constraint {
29044 #[inline]
29045 fn from(node: UniqueConstraint) -> Constraint {
29046 Constraint::UniqueConstraint(node)
29047 }
29048}
29049impl AstNode for ExplainStmt {
29050 #[inline]
29051 fn can_cast(kind: SyntaxKind) -> bool {
29052 matches!(
29053 kind,
29054 SyntaxKind::COMPOUND_SELECT
29055 | SyntaxKind::CREATE_MATERIALIZED_VIEW
29056 | SyntaxKind::CREATE_TABLE_AS
29057 | SyntaxKind::DECLARE
29058 | SyntaxKind::DELETE
29059 | SyntaxKind::EXECUTE
29060 | SyntaxKind::INSERT
29061 | SyntaxKind::MERGE
29062 | SyntaxKind::PAREN_SELECT
29063 | SyntaxKind::SELECT
29064 | SyntaxKind::SELECT_INTO
29065 | SyntaxKind::TABLE
29066 | SyntaxKind::UPDATE
29067 | SyntaxKind::VALUES
29068 )
29069 }
29070 #[inline]
29071 fn cast(syntax: SyntaxNode) -> Option<Self> {
29072 let res = match syntax.kind() {
29073 SyntaxKind::COMPOUND_SELECT => ExplainStmt::CompoundSelect(CompoundSelect { syntax }),
29074 SyntaxKind::CREATE_MATERIALIZED_VIEW => {
29075 ExplainStmt::CreateMaterializedView(CreateMaterializedView { syntax })
29076 }
29077 SyntaxKind::CREATE_TABLE_AS => ExplainStmt::CreateTableAs(CreateTableAs { syntax }),
29078 SyntaxKind::DECLARE => ExplainStmt::Declare(Declare { syntax }),
29079 SyntaxKind::DELETE => ExplainStmt::Delete(Delete { syntax }),
29080 SyntaxKind::EXECUTE => ExplainStmt::Execute(Execute { syntax }),
29081 SyntaxKind::INSERT => ExplainStmt::Insert(Insert { syntax }),
29082 SyntaxKind::MERGE => ExplainStmt::Merge(Merge { syntax }),
29083 SyntaxKind::PAREN_SELECT => ExplainStmt::ParenSelect(ParenSelect { syntax }),
29084 SyntaxKind::SELECT => ExplainStmt::Select(Select { syntax }),
29085 SyntaxKind::SELECT_INTO => ExplainStmt::SelectInto(SelectInto { syntax }),
29086 SyntaxKind::TABLE => ExplainStmt::Table(Table { syntax }),
29087 SyntaxKind::UPDATE => ExplainStmt::Update(Update { syntax }),
29088 SyntaxKind::VALUES => ExplainStmt::Values(Values { syntax }),
29089 _ => {
29090 return None;
29091 }
29092 };
29093 Some(res)
29094 }
29095 #[inline]
29096 fn syntax(&self) -> &SyntaxNode {
29097 match self {
29098 ExplainStmt::CompoundSelect(it) => &it.syntax,
29099 ExplainStmt::CreateMaterializedView(it) => &it.syntax,
29100 ExplainStmt::CreateTableAs(it) => &it.syntax,
29101 ExplainStmt::Declare(it) => &it.syntax,
29102 ExplainStmt::Delete(it) => &it.syntax,
29103 ExplainStmt::Execute(it) => &it.syntax,
29104 ExplainStmt::Insert(it) => &it.syntax,
29105 ExplainStmt::Merge(it) => &it.syntax,
29106 ExplainStmt::ParenSelect(it) => &it.syntax,
29107 ExplainStmt::Select(it) => &it.syntax,
29108 ExplainStmt::SelectInto(it) => &it.syntax,
29109 ExplainStmt::Table(it) => &it.syntax,
29110 ExplainStmt::Update(it) => &it.syntax,
29111 ExplainStmt::Values(it) => &it.syntax,
29112 }
29113 }
29114}
29115impl From<CompoundSelect> for ExplainStmt {
29116 #[inline]
29117 fn from(node: CompoundSelect) -> ExplainStmt {
29118 ExplainStmt::CompoundSelect(node)
29119 }
29120}
29121impl From<CreateMaterializedView> for ExplainStmt {
29122 #[inline]
29123 fn from(node: CreateMaterializedView) -> ExplainStmt {
29124 ExplainStmt::CreateMaterializedView(node)
29125 }
29126}
29127impl From<CreateTableAs> for ExplainStmt {
29128 #[inline]
29129 fn from(node: CreateTableAs) -> ExplainStmt {
29130 ExplainStmt::CreateTableAs(node)
29131 }
29132}
29133impl From<Declare> for ExplainStmt {
29134 #[inline]
29135 fn from(node: Declare) -> ExplainStmt {
29136 ExplainStmt::Declare(node)
29137 }
29138}
29139impl From<Delete> for ExplainStmt {
29140 #[inline]
29141 fn from(node: Delete) -> ExplainStmt {
29142 ExplainStmt::Delete(node)
29143 }
29144}
29145impl From<Execute> for ExplainStmt {
29146 #[inline]
29147 fn from(node: Execute) -> ExplainStmt {
29148 ExplainStmt::Execute(node)
29149 }
29150}
29151impl From<Insert> for ExplainStmt {
29152 #[inline]
29153 fn from(node: Insert) -> ExplainStmt {
29154 ExplainStmt::Insert(node)
29155 }
29156}
29157impl From<Merge> for ExplainStmt {
29158 #[inline]
29159 fn from(node: Merge) -> ExplainStmt {
29160 ExplainStmt::Merge(node)
29161 }
29162}
29163impl From<ParenSelect> for ExplainStmt {
29164 #[inline]
29165 fn from(node: ParenSelect) -> ExplainStmt {
29166 ExplainStmt::ParenSelect(node)
29167 }
29168}
29169impl From<Select> for ExplainStmt {
29170 #[inline]
29171 fn from(node: Select) -> ExplainStmt {
29172 ExplainStmt::Select(node)
29173 }
29174}
29175impl From<SelectInto> for ExplainStmt {
29176 #[inline]
29177 fn from(node: SelectInto) -> ExplainStmt {
29178 ExplainStmt::SelectInto(node)
29179 }
29180}
29181impl From<Table> for ExplainStmt {
29182 #[inline]
29183 fn from(node: Table) -> ExplainStmt {
29184 ExplainStmt::Table(node)
29185 }
29186}
29187impl From<Update> for ExplainStmt {
29188 #[inline]
29189 fn from(node: Update) -> ExplainStmt {
29190 ExplainStmt::Update(node)
29191 }
29192}
29193impl From<Values> for ExplainStmt {
29194 #[inline]
29195 fn from(node: Values) -> ExplainStmt {
29196 ExplainStmt::Values(node)
29197 }
29198}
29199impl AstNode for Expr {
29200 #[inline]
29201 fn can_cast(kind: SyntaxKind) -> bool {
29202 matches!(
29203 kind,
29204 SyntaxKind::ARRAY_EXPR
29205 | SyntaxKind::BETWEEN_EXPR
29206 | SyntaxKind::BIN_EXPR
29207 | SyntaxKind::CALL_EXPR
29208 | SyntaxKind::CASE_EXPR
29209 | SyntaxKind::CAST_EXPR
29210 | SyntaxKind::FIELD_EXPR
29211 | SyntaxKind::INDEX_EXPR
29212 | SyntaxKind::LITERAL
29213 | SyntaxKind::NAME_REF
29214 | SyntaxKind::PAREN_EXPR
29215 | SyntaxKind::POSTFIX_EXPR
29216 | SyntaxKind::PREFIX_EXPR
29217 | SyntaxKind::SLICE_EXPR
29218 | SyntaxKind::TUPLE_EXPR
29219 )
29220 }
29221 #[inline]
29222 fn cast(syntax: SyntaxNode) -> Option<Self> {
29223 let res = match syntax.kind() {
29224 SyntaxKind::ARRAY_EXPR => Expr::ArrayExpr(ArrayExpr { syntax }),
29225 SyntaxKind::BETWEEN_EXPR => Expr::BetweenExpr(BetweenExpr { syntax }),
29226 SyntaxKind::BIN_EXPR => Expr::BinExpr(BinExpr { syntax }),
29227 SyntaxKind::CALL_EXPR => Expr::CallExpr(CallExpr { syntax }),
29228 SyntaxKind::CASE_EXPR => Expr::CaseExpr(CaseExpr { syntax }),
29229 SyntaxKind::CAST_EXPR => Expr::CastExpr(CastExpr { syntax }),
29230 SyntaxKind::FIELD_EXPR => Expr::FieldExpr(FieldExpr { syntax }),
29231 SyntaxKind::INDEX_EXPR => Expr::IndexExpr(IndexExpr { syntax }),
29232 SyntaxKind::LITERAL => Expr::Literal(Literal { syntax }),
29233 SyntaxKind::NAME_REF => Expr::NameRef(NameRef { syntax }),
29234 SyntaxKind::PAREN_EXPR => Expr::ParenExpr(ParenExpr { syntax }),
29235 SyntaxKind::POSTFIX_EXPR => Expr::PostfixExpr(PostfixExpr { syntax }),
29236 SyntaxKind::PREFIX_EXPR => Expr::PrefixExpr(PrefixExpr { syntax }),
29237 SyntaxKind::SLICE_EXPR => Expr::SliceExpr(SliceExpr { syntax }),
29238 SyntaxKind::TUPLE_EXPR => Expr::TupleExpr(TupleExpr { syntax }),
29239 _ => {
29240 return None;
29241 }
29242 };
29243 Some(res)
29244 }
29245 #[inline]
29246 fn syntax(&self) -> &SyntaxNode {
29247 match self {
29248 Expr::ArrayExpr(it) => &it.syntax,
29249 Expr::BetweenExpr(it) => &it.syntax,
29250 Expr::BinExpr(it) => &it.syntax,
29251 Expr::CallExpr(it) => &it.syntax,
29252 Expr::CaseExpr(it) => &it.syntax,
29253 Expr::CastExpr(it) => &it.syntax,
29254 Expr::FieldExpr(it) => &it.syntax,
29255 Expr::IndexExpr(it) => &it.syntax,
29256 Expr::Literal(it) => &it.syntax,
29257 Expr::NameRef(it) => &it.syntax,
29258 Expr::ParenExpr(it) => &it.syntax,
29259 Expr::PostfixExpr(it) => &it.syntax,
29260 Expr::PrefixExpr(it) => &it.syntax,
29261 Expr::SliceExpr(it) => &it.syntax,
29262 Expr::TupleExpr(it) => &it.syntax,
29263 }
29264 }
29265}
29266impl From<ArrayExpr> for Expr {
29267 #[inline]
29268 fn from(node: ArrayExpr) -> Expr {
29269 Expr::ArrayExpr(node)
29270 }
29271}
29272impl From<BetweenExpr> for Expr {
29273 #[inline]
29274 fn from(node: BetweenExpr) -> Expr {
29275 Expr::BetweenExpr(node)
29276 }
29277}
29278impl From<BinExpr> for Expr {
29279 #[inline]
29280 fn from(node: BinExpr) -> Expr {
29281 Expr::BinExpr(node)
29282 }
29283}
29284impl From<CallExpr> for Expr {
29285 #[inline]
29286 fn from(node: CallExpr) -> Expr {
29287 Expr::CallExpr(node)
29288 }
29289}
29290impl From<CaseExpr> for Expr {
29291 #[inline]
29292 fn from(node: CaseExpr) -> Expr {
29293 Expr::CaseExpr(node)
29294 }
29295}
29296impl From<CastExpr> for Expr {
29297 #[inline]
29298 fn from(node: CastExpr) -> Expr {
29299 Expr::CastExpr(node)
29300 }
29301}
29302impl From<FieldExpr> for Expr {
29303 #[inline]
29304 fn from(node: FieldExpr) -> Expr {
29305 Expr::FieldExpr(node)
29306 }
29307}
29308impl From<IndexExpr> for Expr {
29309 #[inline]
29310 fn from(node: IndexExpr) -> Expr {
29311 Expr::IndexExpr(node)
29312 }
29313}
29314impl From<Literal> for Expr {
29315 #[inline]
29316 fn from(node: Literal) -> Expr {
29317 Expr::Literal(node)
29318 }
29319}
29320impl From<NameRef> for Expr {
29321 #[inline]
29322 fn from(node: NameRef) -> Expr {
29323 Expr::NameRef(node)
29324 }
29325}
29326impl From<ParenExpr> for Expr {
29327 #[inline]
29328 fn from(node: ParenExpr) -> Expr {
29329 Expr::ParenExpr(node)
29330 }
29331}
29332impl From<PostfixExpr> for Expr {
29333 #[inline]
29334 fn from(node: PostfixExpr) -> Expr {
29335 Expr::PostfixExpr(node)
29336 }
29337}
29338impl From<PrefixExpr> for Expr {
29339 #[inline]
29340 fn from(node: PrefixExpr) -> Expr {
29341 Expr::PrefixExpr(node)
29342 }
29343}
29344impl From<SliceExpr> for Expr {
29345 #[inline]
29346 fn from(node: SliceExpr) -> Expr {
29347 Expr::SliceExpr(node)
29348 }
29349}
29350impl From<TupleExpr> for Expr {
29351 #[inline]
29352 fn from(node: TupleExpr) -> Expr {
29353 Expr::TupleExpr(node)
29354 }
29355}
29356impl AstNode for FuncOption {
29357 #[inline]
29358 fn can_cast(kind: SyntaxKind) -> bool {
29359 matches!(
29360 kind,
29361 SyntaxKind::AS_FUNC_OPTION
29362 | SyntaxKind::BEGIN_FUNC_OPTION
29363 | SyntaxKind::COST_FUNC_OPTION
29364 | SyntaxKind::LANGUAGE_FUNC_OPTION
29365 | SyntaxKind::LEAKPROOF_FUNC_OPTION
29366 | SyntaxKind::PARALLEL_FUNC_OPTION
29367 | SyntaxKind::RESET_FUNC_OPTION
29368 | SyntaxKind::RETURN_FUNC_OPTION
29369 | SyntaxKind::ROWS_FUNC_OPTION
29370 | SyntaxKind::SECURITY_FUNC_OPTION
29371 | SyntaxKind::SET_FUNC_OPTION
29372 | SyntaxKind::STRICT_FUNC_OPTION
29373 | SyntaxKind::SUPPORT_FUNC_OPTION
29374 | SyntaxKind::TRANSFORM_FUNC_OPTION
29375 | SyntaxKind::VOLATILITY_FUNC_OPTION
29376 | SyntaxKind::WINDOW_FUNC_OPTION
29377 )
29378 }
29379 #[inline]
29380 fn cast(syntax: SyntaxNode) -> Option<Self> {
29381 let res = match syntax.kind() {
29382 SyntaxKind::AS_FUNC_OPTION => FuncOption::AsFuncOption(AsFuncOption { syntax }),
29383 SyntaxKind::BEGIN_FUNC_OPTION => {
29384 FuncOption::BeginFuncOption(BeginFuncOption { syntax })
29385 }
29386 SyntaxKind::COST_FUNC_OPTION => FuncOption::CostFuncOption(CostFuncOption { syntax }),
29387 SyntaxKind::LANGUAGE_FUNC_OPTION => {
29388 FuncOption::LanguageFuncOption(LanguageFuncOption { syntax })
29389 }
29390 SyntaxKind::LEAKPROOF_FUNC_OPTION => {
29391 FuncOption::LeakproofFuncOption(LeakproofFuncOption { syntax })
29392 }
29393 SyntaxKind::PARALLEL_FUNC_OPTION => {
29394 FuncOption::ParallelFuncOption(ParallelFuncOption { syntax })
29395 }
29396 SyntaxKind::RESET_FUNC_OPTION => {
29397 FuncOption::ResetFuncOption(ResetFuncOption { syntax })
29398 }
29399 SyntaxKind::RETURN_FUNC_OPTION => {
29400 FuncOption::ReturnFuncOption(ReturnFuncOption { syntax })
29401 }
29402 SyntaxKind::ROWS_FUNC_OPTION => FuncOption::RowsFuncOption(RowsFuncOption { syntax }),
29403 SyntaxKind::SECURITY_FUNC_OPTION => {
29404 FuncOption::SecurityFuncOption(SecurityFuncOption { syntax })
29405 }
29406 SyntaxKind::SET_FUNC_OPTION => FuncOption::SetFuncOption(SetFuncOption { syntax }),
29407 SyntaxKind::STRICT_FUNC_OPTION => {
29408 FuncOption::StrictFuncOption(StrictFuncOption { syntax })
29409 }
29410 SyntaxKind::SUPPORT_FUNC_OPTION => {
29411 FuncOption::SupportFuncOption(SupportFuncOption { syntax })
29412 }
29413 SyntaxKind::TRANSFORM_FUNC_OPTION => {
29414 FuncOption::TransformFuncOption(TransformFuncOption { syntax })
29415 }
29416 SyntaxKind::VOLATILITY_FUNC_OPTION => {
29417 FuncOption::VolatilityFuncOption(VolatilityFuncOption { syntax })
29418 }
29419 SyntaxKind::WINDOW_FUNC_OPTION => {
29420 FuncOption::WindowFuncOption(WindowFuncOption { syntax })
29421 }
29422 _ => {
29423 return None;
29424 }
29425 };
29426 Some(res)
29427 }
29428 #[inline]
29429 fn syntax(&self) -> &SyntaxNode {
29430 match self {
29431 FuncOption::AsFuncOption(it) => &it.syntax,
29432 FuncOption::BeginFuncOption(it) => &it.syntax,
29433 FuncOption::CostFuncOption(it) => &it.syntax,
29434 FuncOption::LanguageFuncOption(it) => &it.syntax,
29435 FuncOption::LeakproofFuncOption(it) => &it.syntax,
29436 FuncOption::ParallelFuncOption(it) => &it.syntax,
29437 FuncOption::ResetFuncOption(it) => &it.syntax,
29438 FuncOption::ReturnFuncOption(it) => &it.syntax,
29439 FuncOption::RowsFuncOption(it) => &it.syntax,
29440 FuncOption::SecurityFuncOption(it) => &it.syntax,
29441 FuncOption::SetFuncOption(it) => &it.syntax,
29442 FuncOption::StrictFuncOption(it) => &it.syntax,
29443 FuncOption::SupportFuncOption(it) => &it.syntax,
29444 FuncOption::TransformFuncOption(it) => &it.syntax,
29445 FuncOption::VolatilityFuncOption(it) => &it.syntax,
29446 FuncOption::WindowFuncOption(it) => &it.syntax,
29447 }
29448 }
29449}
29450impl From<AsFuncOption> for FuncOption {
29451 #[inline]
29452 fn from(node: AsFuncOption) -> FuncOption {
29453 FuncOption::AsFuncOption(node)
29454 }
29455}
29456impl From<BeginFuncOption> for FuncOption {
29457 #[inline]
29458 fn from(node: BeginFuncOption) -> FuncOption {
29459 FuncOption::BeginFuncOption(node)
29460 }
29461}
29462impl From<CostFuncOption> for FuncOption {
29463 #[inline]
29464 fn from(node: CostFuncOption) -> FuncOption {
29465 FuncOption::CostFuncOption(node)
29466 }
29467}
29468impl From<LanguageFuncOption> for FuncOption {
29469 #[inline]
29470 fn from(node: LanguageFuncOption) -> FuncOption {
29471 FuncOption::LanguageFuncOption(node)
29472 }
29473}
29474impl From<LeakproofFuncOption> for FuncOption {
29475 #[inline]
29476 fn from(node: LeakproofFuncOption) -> FuncOption {
29477 FuncOption::LeakproofFuncOption(node)
29478 }
29479}
29480impl From<ParallelFuncOption> for FuncOption {
29481 #[inline]
29482 fn from(node: ParallelFuncOption) -> FuncOption {
29483 FuncOption::ParallelFuncOption(node)
29484 }
29485}
29486impl From<ResetFuncOption> for FuncOption {
29487 #[inline]
29488 fn from(node: ResetFuncOption) -> FuncOption {
29489 FuncOption::ResetFuncOption(node)
29490 }
29491}
29492impl From<ReturnFuncOption> for FuncOption {
29493 #[inline]
29494 fn from(node: ReturnFuncOption) -> FuncOption {
29495 FuncOption::ReturnFuncOption(node)
29496 }
29497}
29498impl From<RowsFuncOption> for FuncOption {
29499 #[inline]
29500 fn from(node: RowsFuncOption) -> FuncOption {
29501 FuncOption::RowsFuncOption(node)
29502 }
29503}
29504impl From<SecurityFuncOption> for FuncOption {
29505 #[inline]
29506 fn from(node: SecurityFuncOption) -> FuncOption {
29507 FuncOption::SecurityFuncOption(node)
29508 }
29509}
29510impl From<SetFuncOption> for FuncOption {
29511 #[inline]
29512 fn from(node: SetFuncOption) -> FuncOption {
29513 FuncOption::SetFuncOption(node)
29514 }
29515}
29516impl From<StrictFuncOption> for FuncOption {
29517 #[inline]
29518 fn from(node: StrictFuncOption) -> FuncOption {
29519 FuncOption::StrictFuncOption(node)
29520 }
29521}
29522impl From<SupportFuncOption> for FuncOption {
29523 #[inline]
29524 fn from(node: SupportFuncOption) -> FuncOption {
29525 FuncOption::SupportFuncOption(node)
29526 }
29527}
29528impl From<TransformFuncOption> for FuncOption {
29529 #[inline]
29530 fn from(node: TransformFuncOption) -> FuncOption {
29531 FuncOption::TransformFuncOption(node)
29532 }
29533}
29534impl From<VolatilityFuncOption> for FuncOption {
29535 #[inline]
29536 fn from(node: VolatilityFuncOption) -> FuncOption {
29537 FuncOption::VolatilityFuncOption(node)
29538 }
29539}
29540impl From<WindowFuncOption> for FuncOption {
29541 #[inline]
29542 fn from(node: WindowFuncOption) -> FuncOption {
29543 FuncOption::WindowFuncOption(node)
29544 }
29545}
29546impl AstNode for GroupBy {
29547 #[inline]
29548 fn can_cast(kind: SyntaxKind) -> bool {
29549 matches!(
29550 kind,
29551 SyntaxKind::GROUPING_CUBE
29552 | SyntaxKind::GROUPING_EXPR
29553 | SyntaxKind::GROUPING_ROLLUP
29554 | SyntaxKind::GROUPING_SETS
29555 )
29556 }
29557 #[inline]
29558 fn cast(syntax: SyntaxNode) -> Option<Self> {
29559 let res = match syntax.kind() {
29560 SyntaxKind::GROUPING_CUBE => GroupBy::GroupingCube(GroupingCube { syntax }),
29561 SyntaxKind::GROUPING_EXPR => GroupBy::GroupingExpr(GroupingExpr { syntax }),
29562 SyntaxKind::GROUPING_ROLLUP => GroupBy::GroupingRollup(GroupingRollup { syntax }),
29563 SyntaxKind::GROUPING_SETS => GroupBy::GroupingSets(GroupingSets { syntax }),
29564 _ => {
29565 return None;
29566 }
29567 };
29568 Some(res)
29569 }
29570 #[inline]
29571 fn syntax(&self) -> &SyntaxNode {
29572 match self {
29573 GroupBy::GroupingCube(it) => &it.syntax,
29574 GroupBy::GroupingExpr(it) => &it.syntax,
29575 GroupBy::GroupingRollup(it) => &it.syntax,
29576 GroupBy::GroupingSets(it) => &it.syntax,
29577 }
29578 }
29579}
29580impl From<GroupingCube> for GroupBy {
29581 #[inline]
29582 fn from(node: GroupingCube) -> GroupBy {
29583 GroupBy::GroupingCube(node)
29584 }
29585}
29586impl From<GroupingExpr> for GroupBy {
29587 #[inline]
29588 fn from(node: GroupingExpr) -> GroupBy {
29589 GroupBy::GroupingExpr(node)
29590 }
29591}
29592impl From<GroupingRollup> for GroupBy {
29593 #[inline]
29594 fn from(node: GroupingRollup) -> GroupBy {
29595 GroupBy::GroupingRollup(node)
29596 }
29597}
29598impl From<GroupingSets> for GroupBy {
29599 #[inline]
29600 fn from(node: GroupingSets) -> GroupBy {
29601 GroupBy::GroupingSets(node)
29602 }
29603}
29604impl AstNode for JoinType {
29605 #[inline]
29606 fn can_cast(kind: SyntaxKind) -> bool {
29607 matches!(
29608 kind,
29609 SyntaxKind::JOIN_CROSS
29610 | SyntaxKind::JOIN_FULL
29611 | SyntaxKind::JOIN_INNER
29612 | SyntaxKind::JOIN_LEFT
29613 | SyntaxKind::JOIN_RIGHT
29614 )
29615 }
29616 #[inline]
29617 fn cast(syntax: SyntaxNode) -> Option<Self> {
29618 let res = match syntax.kind() {
29619 SyntaxKind::JOIN_CROSS => JoinType::JoinCross(JoinCross { syntax }),
29620 SyntaxKind::JOIN_FULL => JoinType::JoinFull(JoinFull { syntax }),
29621 SyntaxKind::JOIN_INNER => JoinType::JoinInner(JoinInner { syntax }),
29622 SyntaxKind::JOIN_LEFT => JoinType::JoinLeft(JoinLeft { syntax }),
29623 SyntaxKind::JOIN_RIGHT => JoinType::JoinRight(JoinRight { syntax }),
29624 _ => {
29625 return None;
29626 }
29627 };
29628 Some(res)
29629 }
29630 #[inline]
29631 fn syntax(&self) -> &SyntaxNode {
29632 match self {
29633 JoinType::JoinCross(it) => &it.syntax,
29634 JoinType::JoinFull(it) => &it.syntax,
29635 JoinType::JoinInner(it) => &it.syntax,
29636 JoinType::JoinLeft(it) => &it.syntax,
29637 JoinType::JoinRight(it) => &it.syntax,
29638 }
29639 }
29640}
29641impl From<JoinCross> for JoinType {
29642 #[inline]
29643 fn from(node: JoinCross) -> JoinType {
29644 JoinType::JoinCross(node)
29645 }
29646}
29647impl From<JoinFull> for JoinType {
29648 #[inline]
29649 fn from(node: JoinFull) -> JoinType {
29650 JoinType::JoinFull(node)
29651 }
29652}
29653impl From<JoinInner> for JoinType {
29654 #[inline]
29655 fn from(node: JoinInner) -> JoinType {
29656 JoinType::JoinInner(node)
29657 }
29658}
29659impl From<JoinLeft> for JoinType {
29660 #[inline]
29661 fn from(node: JoinLeft) -> JoinType {
29662 JoinType::JoinLeft(node)
29663 }
29664}
29665impl From<JoinRight> for JoinType {
29666 #[inline]
29667 fn from(node: JoinRight) -> JoinType {
29668 JoinType::JoinRight(node)
29669 }
29670}
29671impl AstNode for JsonBehavior {
29672 #[inline]
29673 fn can_cast(kind: SyntaxKind) -> bool {
29674 matches!(
29675 kind,
29676 SyntaxKind::JSON_BEHAVIOR_DEFAULT
29677 | SyntaxKind::JSON_BEHAVIOR_EMPTY_ARRAY
29678 | SyntaxKind::JSON_BEHAVIOR_EMPTY_OBJECT
29679 | SyntaxKind::JSON_BEHAVIOR_ERROR
29680 | SyntaxKind::JSON_BEHAVIOR_FALSE
29681 | SyntaxKind::JSON_BEHAVIOR_NULL
29682 | SyntaxKind::JSON_BEHAVIOR_TRUE
29683 | SyntaxKind::JSON_BEHAVIOR_UNKNOWN
29684 )
29685 }
29686 #[inline]
29687 fn cast(syntax: SyntaxNode) -> Option<Self> {
29688 let res = match syntax.kind() {
29689 SyntaxKind::JSON_BEHAVIOR_DEFAULT => {
29690 JsonBehavior::JsonBehaviorDefault(JsonBehaviorDefault { syntax })
29691 }
29692 SyntaxKind::JSON_BEHAVIOR_EMPTY_ARRAY => {
29693 JsonBehavior::JsonBehaviorEmptyArray(JsonBehaviorEmptyArray { syntax })
29694 }
29695 SyntaxKind::JSON_BEHAVIOR_EMPTY_OBJECT => {
29696 JsonBehavior::JsonBehaviorEmptyObject(JsonBehaviorEmptyObject { syntax })
29697 }
29698 SyntaxKind::JSON_BEHAVIOR_ERROR => {
29699 JsonBehavior::JsonBehaviorError(JsonBehaviorError { syntax })
29700 }
29701 SyntaxKind::JSON_BEHAVIOR_FALSE => {
29702 JsonBehavior::JsonBehaviorFalse(JsonBehaviorFalse { syntax })
29703 }
29704 SyntaxKind::JSON_BEHAVIOR_NULL => {
29705 JsonBehavior::JsonBehaviorNull(JsonBehaviorNull { syntax })
29706 }
29707 SyntaxKind::JSON_BEHAVIOR_TRUE => {
29708 JsonBehavior::JsonBehaviorTrue(JsonBehaviorTrue { syntax })
29709 }
29710 SyntaxKind::JSON_BEHAVIOR_UNKNOWN => {
29711 JsonBehavior::JsonBehaviorUnknown(JsonBehaviorUnknown { syntax })
29712 }
29713 _ => {
29714 return None;
29715 }
29716 };
29717 Some(res)
29718 }
29719 #[inline]
29720 fn syntax(&self) -> &SyntaxNode {
29721 match self {
29722 JsonBehavior::JsonBehaviorDefault(it) => &it.syntax,
29723 JsonBehavior::JsonBehaviorEmptyArray(it) => &it.syntax,
29724 JsonBehavior::JsonBehaviorEmptyObject(it) => &it.syntax,
29725 JsonBehavior::JsonBehaviorError(it) => &it.syntax,
29726 JsonBehavior::JsonBehaviorFalse(it) => &it.syntax,
29727 JsonBehavior::JsonBehaviorNull(it) => &it.syntax,
29728 JsonBehavior::JsonBehaviorTrue(it) => &it.syntax,
29729 JsonBehavior::JsonBehaviorUnknown(it) => &it.syntax,
29730 }
29731 }
29732}
29733impl From<JsonBehaviorDefault> for JsonBehavior {
29734 #[inline]
29735 fn from(node: JsonBehaviorDefault) -> JsonBehavior {
29736 JsonBehavior::JsonBehaviorDefault(node)
29737 }
29738}
29739impl From<JsonBehaviorEmptyArray> for JsonBehavior {
29740 #[inline]
29741 fn from(node: JsonBehaviorEmptyArray) -> JsonBehavior {
29742 JsonBehavior::JsonBehaviorEmptyArray(node)
29743 }
29744}
29745impl From<JsonBehaviorEmptyObject> for JsonBehavior {
29746 #[inline]
29747 fn from(node: JsonBehaviorEmptyObject) -> JsonBehavior {
29748 JsonBehavior::JsonBehaviorEmptyObject(node)
29749 }
29750}
29751impl From<JsonBehaviorError> for JsonBehavior {
29752 #[inline]
29753 fn from(node: JsonBehaviorError) -> JsonBehavior {
29754 JsonBehavior::JsonBehaviorError(node)
29755 }
29756}
29757impl From<JsonBehaviorFalse> for JsonBehavior {
29758 #[inline]
29759 fn from(node: JsonBehaviorFalse) -> JsonBehavior {
29760 JsonBehavior::JsonBehaviorFalse(node)
29761 }
29762}
29763impl From<JsonBehaviorNull> for JsonBehavior {
29764 #[inline]
29765 fn from(node: JsonBehaviorNull) -> JsonBehavior {
29766 JsonBehavior::JsonBehaviorNull(node)
29767 }
29768}
29769impl From<JsonBehaviorTrue> for JsonBehavior {
29770 #[inline]
29771 fn from(node: JsonBehaviorTrue) -> JsonBehavior {
29772 JsonBehavior::JsonBehaviorTrue(node)
29773 }
29774}
29775impl From<JsonBehaviorUnknown> for JsonBehavior {
29776 #[inline]
29777 fn from(node: JsonBehaviorUnknown) -> JsonBehavior {
29778 JsonBehavior::JsonBehaviorUnknown(node)
29779 }
29780}
29781impl AstNode for MatchType {
29782 #[inline]
29783 fn can_cast(kind: SyntaxKind) -> bool {
29784 matches!(
29785 kind,
29786 SyntaxKind::MATCH_FULL | SyntaxKind::MATCH_PARTIAL | SyntaxKind::MATCH_SIMPLE
29787 )
29788 }
29789 #[inline]
29790 fn cast(syntax: SyntaxNode) -> Option<Self> {
29791 let res = match syntax.kind() {
29792 SyntaxKind::MATCH_FULL => MatchType::MatchFull(MatchFull { syntax }),
29793 SyntaxKind::MATCH_PARTIAL => MatchType::MatchPartial(MatchPartial { syntax }),
29794 SyntaxKind::MATCH_SIMPLE => MatchType::MatchSimple(MatchSimple { syntax }),
29795 _ => {
29796 return None;
29797 }
29798 };
29799 Some(res)
29800 }
29801 #[inline]
29802 fn syntax(&self) -> &SyntaxNode {
29803 match self {
29804 MatchType::MatchFull(it) => &it.syntax,
29805 MatchType::MatchPartial(it) => &it.syntax,
29806 MatchType::MatchSimple(it) => &it.syntax,
29807 }
29808 }
29809}
29810impl From<MatchFull> for MatchType {
29811 #[inline]
29812 fn from(node: MatchFull) -> MatchType {
29813 MatchType::MatchFull(node)
29814 }
29815}
29816impl From<MatchPartial> for MatchType {
29817 #[inline]
29818 fn from(node: MatchPartial) -> MatchType {
29819 MatchType::MatchPartial(node)
29820 }
29821}
29822impl From<MatchSimple> for MatchType {
29823 #[inline]
29824 fn from(node: MatchSimple) -> MatchType {
29825 MatchType::MatchSimple(node)
29826 }
29827}
29828impl AstNode for MergeAction {
29829 #[inline]
29830 fn can_cast(kind: SyntaxKind) -> bool {
29831 matches!(
29832 kind,
29833 SyntaxKind::MERGE_DELETE
29834 | SyntaxKind::MERGE_DO_NOTHING
29835 | SyntaxKind::MERGE_INSERT
29836 | SyntaxKind::MERGE_UPDATE
29837 )
29838 }
29839 #[inline]
29840 fn cast(syntax: SyntaxNode) -> Option<Self> {
29841 let res = match syntax.kind() {
29842 SyntaxKind::MERGE_DELETE => MergeAction::MergeDelete(MergeDelete { syntax }),
29843 SyntaxKind::MERGE_DO_NOTHING => MergeAction::MergeDoNothing(MergeDoNothing { syntax }),
29844 SyntaxKind::MERGE_INSERT => MergeAction::MergeInsert(MergeInsert { syntax }),
29845 SyntaxKind::MERGE_UPDATE => MergeAction::MergeUpdate(MergeUpdate { syntax }),
29846 _ => {
29847 return None;
29848 }
29849 };
29850 Some(res)
29851 }
29852 #[inline]
29853 fn syntax(&self) -> &SyntaxNode {
29854 match self {
29855 MergeAction::MergeDelete(it) => &it.syntax,
29856 MergeAction::MergeDoNothing(it) => &it.syntax,
29857 MergeAction::MergeInsert(it) => &it.syntax,
29858 MergeAction::MergeUpdate(it) => &it.syntax,
29859 }
29860 }
29861}
29862impl From<MergeDelete> for MergeAction {
29863 #[inline]
29864 fn from(node: MergeDelete) -> MergeAction {
29865 MergeAction::MergeDelete(node)
29866 }
29867}
29868impl From<MergeDoNothing> for MergeAction {
29869 #[inline]
29870 fn from(node: MergeDoNothing) -> MergeAction {
29871 MergeAction::MergeDoNothing(node)
29872 }
29873}
29874impl From<MergeInsert> for MergeAction {
29875 #[inline]
29876 fn from(node: MergeInsert) -> MergeAction {
29877 MergeAction::MergeInsert(node)
29878 }
29879}
29880impl From<MergeUpdate> for MergeAction {
29881 #[inline]
29882 fn from(node: MergeUpdate) -> MergeAction {
29883 MergeAction::MergeUpdate(node)
29884 }
29885}
29886impl AstNode for MergeWhenClause {
29887 #[inline]
29888 fn can_cast(kind: SyntaxKind) -> bool {
29889 matches!(
29890 kind,
29891 SyntaxKind::MERGE_WHEN_MATCHED
29892 | SyntaxKind::MERGE_WHEN_NOT_MATCHED_SOURCE
29893 | SyntaxKind::MERGE_WHEN_NOT_MATCHED_TARGET
29894 )
29895 }
29896 #[inline]
29897 fn cast(syntax: SyntaxNode) -> Option<Self> {
29898 let res = match syntax.kind() {
29899 SyntaxKind::MERGE_WHEN_MATCHED => {
29900 MergeWhenClause::MergeWhenMatched(MergeWhenMatched { syntax })
29901 }
29902 SyntaxKind::MERGE_WHEN_NOT_MATCHED_SOURCE => {
29903 MergeWhenClause::MergeWhenNotMatchedSource(MergeWhenNotMatchedSource { syntax })
29904 }
29905 SyntaxKind::MERGE_WHEN_NOT_MATCHED_TARGET => {
29906 MergeWhenClause::MergeWhenNotMatchedTarget(MergeWhenNotMatchedTarget { syntax })
29907 }
29908 _ => {
29909 return None;
29910 }
29911 };
29912 Some(res)
29913 }
29914 #[inline]
29915 fn syntax(&self) -> &SyntaxNode {
29916 match self {
29917 MergeWhenClause::MergeWhenMatched(it) => &it.syntax,
29918 MergeWhenClause::MergeWhenNotMatchedSource(it) => &it.syntax,
29919 MergeWhenClause::MergeWhenNotMatchedTarget(it) => &it.syntax,
29920 }
29921 }
29922}
29923impl From<MergeWhenMatched> for MergeWhenClause {
29924 #[inline]
29925 fn from(node: MergeWhenMatched) -> MergeWhenClause {
29926 MergeWhenClause::MergeWhenMatched(node)
29927 }
29928}
29929impl From<MergeWhenNotMatchedSource> for MergeWhenClause {
29930 #[inline]
29931 fn from(node: MergeWhenNotMatchedSource) -> MergeWhenClause {
29932 MergeWhenClause::MergeWhenNotMatchedSource(node)
29933 }
29934}
29935impl From<MergeWhenNotMatchedTarget> for MergeWhenClause {
29936 #[inline]
29937 fn from(node: MergeWhenNotMatchedTarget) -> MergeWhenClause {
29938 MergeWhenClause::MergeWhenNotMatchedTarget(node)
29939 }
29940}
29941impl AstNode for OnCommitAction {
29942 #[inline]
29943 fn can_cast(kind: SyntaxKind) -> bool {
29944 matches!(
29945 kind,
29946 SyntaxKind::DELETE_ROWS | SyntaxKind::DROP | SyntaxKind::PRESERVE_ROWS
29947 )
29948 }
29949 #[inline]
29950 fn cast(syntax: SyntaxNode) -> Option<Self> {
29951 let res = match syntax.kind() {
29952 SyntaxKind::DELETE_ROWS => OnCommitAction::DeleteRows(DeleteRows { syntax }),
29953 SyntaxKind::DROP => OnCommitAction::Drop(Drop { syntax }),
29954 SyntaxKind::PRESERVE_ROWS => OnCommitAction::PreserveRows(PreserveRows { syntax }),
29955 _ => {
29956 return None;
29957 }
29958 };
29959 Some(res)
29960 }
29961 #[inline]
29962 fn syntax(&self) -> &SyntaxNode {
29963 match self {
29964 OnCommitAction::DeleteRows(it) => &it.syntax,
29965 OnCommitAction::Drop(it) => &it.syntax,
29966 OnCommitAction::PreserveRows(it) => &it.syntax,
29967 }
29968 }
29969}
29970impl From<DeleteRows> for OnCommitAction {
29971 #[inline]
29972 fn from(node: DeleteRows) -> OnCommitAction {
29973 OnCommitAction::DeleteRows(node)
29974 }
29975}
29976impl From<Drop> for OnCommitAction {
29977 #[inline]
29978 fn from(node: Drop) -> OnCommitAction {
29979 OnCommitAction::Drop(node)
29980 }
29981}
29982impl From<PreserveRows> for OnCommitAction {
29983 #[inline]
29984 fn from(node: PreserveRows) -> OnCommitAction {
29985 OnCommitAction::PreserveRows(node)
29986 }
29987}
29988impl AstNode for ParamMode {
29989 #[inline]
29990 fn can_cast(kind: SyntaxKind) -> bool {
29991 matches!(
29992 kind,
29993 SyntaxKind::PARAM_IN
29994 | SyntaxKind::PARAM_IN_OUT
29995 | SyntaxKind::PARAM_OUT
29996 | SyntaxKind::PARAM_VARIADIC
29997 )
29998 }
29999 #[inline]
30000 fn cast(syntax: SyntaxNode) -> Option<Self> {
30001 let res = match syntax.kind() {
30002 SyntaxKind::PARAM_IN => ParamMode::ParamIn(ParamIn { syntax }),
30003 SyntaxKind::PARAM_IN_OUT => ParamMode::ParamInOut(ParamInOut { syntax }),
30004 SyntaxKind::PARAM_OUT => ParamMode::ParamOut(ParamOut { syntax }),
30005 SyntaxKind::PARAM_VARIADIC => ParamMode::ParamVariadic(ParamVariadic { syntax }),
30006 _ => {
30007 return None;
30008 }
30009 };
30010 Some(res)
30011 }
30012 #[inline]
30013 fn syntax(&self) -> &SyntaxNode {
30014 match self {
30015 ParamMode::ParamIn(it) => &it.syntax,
30016 ParamMode::ParamInOut(it) => &it.syntax,
30017 ParamMode::ParamOut(it) => &it.syntax,
30018 ParamMode::ParamVariadic(it) => &it.syntax,
30019 }
30020 }
30021}
30022impl From<ParamIn> for ParamMode {
30023 #[inline]
30024 fn from(node: ParamIn) -> ParamMode {
30025 ParamMode::ParamIn(node)
30026 }
30027}
30028impl From<ParamInOut> for ParamMode {
30029 #[inline]
30030 fn from(node: ParamInOut) -> ParamMode {
30031 ParamMode::ParamInOut(node)
30032 }
30033}
30034impl From<ParamOut> for ParamMode {
30035 #[inline]
30036 fn from(node: ParamOut) -> ParamMode {
30037 ParamMode::ParamOut(node)
30038 }
30039}
30040impl From<ParamVariadic> for ParamMode {
30041 #[inline]
30042 fn from(node: ParamVariadic) -> ParamMode {
30043 ParamMode::ParamVariadic(node)
30044 }
30045}
30046impl AstNode for PartitionType {
30047 #[inline]
30048 fn can_cast(kind: SyntaxKind) -> bool {
30049 matches!(
30050 kind,
30051 SyntaxKind::PARTITION_DEFAULT
30052 | SyntaxKind::PARTITION_FOR_VALUES_FROM
30053 | SyntaxKind::PARTITION_FOR_VALUES_IN
30054 | SyntaxKind::PARTITION_FOR_VALUES_WITH
30055 )
30056 }
30057 #[inline]
30058 fn cast(syntax: SyntaxNode) -> Option<Self> {
30059 let res = match syntax.kind() {
30060 SyntaxKind::PARTITION_DEFAULT => {
30061 PartitionType::PartitionDefault(PartitionDefault { syntax })
30062 }
30063 SyntaxKind::PARTITION_FOR_VALUES_FROM => {
30064 PartitionType::PartitionForValuesFrom(PartitionForValuesFrom { syntax })
30065 }
30066 SyntaxKind::PARTITION_FOR_VALUES_IN => {
30067 PartitionType::PartitionForValuesIn(PartitionForValuesIn { syntax })
30068 }
30069 SyntaxKind::PARTITION_FOR_VALUES_WITH => {
30070 PartitionType::PartitionForValuesWith(PartitionForValuesWith { syntax })
30071 }
30072 _ => {
30073 return None;
30074 }
30075 };
30076 Some(res)
30077 }
30078 #[inline]
30079 fn syntax(&self) -> &SyntaxNode {
30080 match self {
30081 PartitionType::PartitionDefault(it) => &it.syntax,
30082 PartitionType::PartitionForValuesFrom(it) => &it.syntax,
30083 PartitionType::PartitionForValuesIn(it) => &it.syntax,
30084 PartitionType::PartitionForValuesWith(it) => &it.syntax,
30085 }
30086 }
30087}
30088impl From<PartitionDefault> for PartitionType {
30089 #[inline]
30090 fn from(node: PartitionDefault) -> PartitionType {
30091 PartitionType::PartitionDefault(node)
30092 }
30093}
30094impl From<PartitionForValuesFrom> for PartitionType {
30095 #[inline]
30096 fn from(node: PartitionForValuesFrom) -> PartitionType {
30097 PartitionType::PartitionForValuesFrom(node)
30098 }
30099}
30100impl From<PartitionForValuesIn> for PartitionType {
30101 #[inline]
30102 fn from(node: PartitionForValuesIn) -> PartitionType {
30103 PartitionType::PartitionForValuesIn(node)
30104 }
30105}
30106impl From<PartitionForValuesWith> for PartitionType {
30107 #[inline]
30108 fn from(node: PartitionForValuesWith) -> PartitionType {
30109 PartitionType::PartitionForValuesWith(node)
30110 }
30111}
30112impl AstNode for PreparableStmt {
30113 #[inline]
30114 fn can_cast(kind: SyntaxKind) -> bool {
30115 matches!(
30116 kind,
30117 SyntaxKind::COMPOUND_SELECT
30118 | SyntaxKind::DELETE
30119 | SyntaxKind::INSERT
30120 | SyntaxKind::MERGE
30121 | SyntaxKind::SELECT
30122 | SyntaxKind::SELECT_INTO
30123 | SyntaxKind::TABLE
30124 | SyntaxKind::UPDATE
30125 | SyntaxKind::VALUES
30126 )
30127 }
30128 #[inline]
30129 fn cast(syntax: SyntaxNode) -> Option<Self> {
30130 let res = match syntax.kind() {
30131 SyntaxKind::COMPOUND_SELECT => {
30132 PreparableStmt::CompoundSelect(CompoundSelect { syntax })
30133 }
30134 SyntaxKind::DELETE => PreparableStmt::Delete(Delete { syntax }),
30135 SyntaxKind::INSERT => PreparableStmt::Insert(Insert { syntax }),
30136 SyntaxKind::MERGE => PreparableStmt::Merge(Merge { syntax }),
30137 SyntaxKind::SELECT => PreparableStmt::Select(Select { syntax }),
30138 SyntaxKind::SELECT_INTO => PreparableStmt::SelectInto(SelectInto { syntax }),
30139 SyntaxKind::TABLE => PreparableStmt::Table(Table { syntax }),
30140 SyntaxKind::UPDATE => PreparableStmt::Update(Update { syntax }),
30141 SyntaxKind::VALUES => PreparableStmt::Values(Values { syntax }),
30142 _ => {
30143 return None;
30144 }
30145 };
30146 Some(res)
30147 }
30148 #[inline]
30149 fn syntax(&self) -> &SyntaxNode {
30150 match self {
30151 PreparableStmt::CompoundSelect(it) => &it.syntax,
30152 PreparableStmt::Delete(it) => &it.syntax,
30153 PreparableStmt::Insert(it) => &it.syntax,
30154 PreparableStmt::Merge(it) => &it.syntax,
30155 PreparableStmt::Select(it) => &it.syntax,
30156 PreparableStmt::SelectInto(it) => &it.syntax,
30157 PreparableStmt::Table(it) => &it.syntax,
30158 PreparableStmt::Update(it) => &it.syntax,
30159 PreparableStmt::Values(it) => &it.syntax,
30160 }
30161 }
30162}
30163impl From<CompoundSelect> for PreparableStmt {
30164 #[inline]
30165 fn from(node: CompoundSelect) -> PreparableStmt {
30166 PreparableStmt::CompoundSelect(node)
30167 }
30168}
30169impl From<Delete> for PreparableStmt {
30170 #[inline]
30171 fn from(node: Delete) -> PreparableStmt {
30172 PreparableStmt::Delete(node)
30173 }
30174}
30175impl From<Insert> for PreparableStmt {
30176 #[inline]
30177 fn from(node: Insert) -> PreparableStmt {
30178 PreparableStmt::Insert(node)
30179 }
30180}
30181impl From<Merge> for PreparableStmt {
30182 #[inline]
30183 fn from(node: Merge) -> PreparableStmt {
30184 PreparableStmt::Merge(node)
30185 }
30186}
30187impl From<Select> for PreparableStmt {
30188 #[inline]
30189 fn from(node: Select) -> PreparableStmt {
30190 PreparableStmt::Select(node)
30191 }
30192}
30193impl From<SelectInto> for PreparableStmt {
30194 #[inline]
30195 fn from(node: SelectInto) -> PreparableStmt {
30196 PreparableStmt::SelectInto(node)
30197 }
30198}
30199impl From<Table> for PreparableStmt {
30200 #[inline]
30201 fn from(node: Table) -> PreparableStmt {
30202 PreparableStmt::Table(node)
30203 }
30204}
30205impl From<Update> for PreparableStmt {
30206 #[inline]
30207 fn from(node: Update) -> PreparableStmt {
30208 PreparableStmt::Update(node)
30209 }
30210}
30211impl From<Values> for PreparableStmt {
30212 #[inline]
30213 fn from(node: Values) -> PreparableStmt {
30214 PreparableStmt::Values(node)
30215 }
30216}
30217impl AstNode for RefAction {
30218 #[inline]
30219 fn can_cast(kind: SyntaxKind) -> bool {
30220 matches!(
30221 kind,
30222 SyntaxKind::CASCADE
30223 | SyntaxKind::NO_ACTION
30224 | SyntaxKind::RESTRICT
30225 | SyntaxKind::SET_DEFAULT_COLUMNS
30226 | SyntaxKind::SET_NULL_COLUMNS
30227 )
30228 }
30229 #[inline]
30230 fn cast(syntax: SyntaxNode) -> Option<Self> {
30231 let res = match syntax.kind() {
30232 SyntaxKind::CASCADE => RefAction::Cascade(Cascade { syntax }),
30233 SyntaxKind::NO_ACTION => RefAction::NoAction(NoAction { syntax }),
30234 SyntaxKind::RESTRICT => RefAction::Restrict(Restrict { syntax }),
30235 SyntaxKind::SET_DEFAULT_COLUMNS => {
30236 RefAction::SetDefaultColumns(SetDefaultColumns { syntax })
30237 }
30238 SyntaxKind::SET_NULL_COLUMNS => RefAction::SetNullColumns(SetNullColumns { syntax }),
30239 _ => {
30240 return None;
30241 }
30242 };
30243 Some(res)
30244 }
30245 #[inline]
30246 fn syntax(&self) -> &SyntaxNode {
30247 match self {
30248 RefAction::Cascade(it) => &it.syntax,
30249 RefAction::NoAction(it) => &it.syntax,
30250 RefAction::Restrict(it) => &it.syntax,
30251 RefAction::SetDefaultColumns(it) => &it.syntax,
30252 RefAction::SetNullColumns(it) => &it.syntax,
30253 }
30254 }
30255}
30256impl From<Cascade> for RefAction {
30257 #[inline]
30258 fn from(node: Cascade) -> RefAction {
30259 RefAction::Cascade(node)
30260 }
30261}
30262impl From<NoAction> for RefAction {
30263 #[inline]
30264 fn from(node: NoAction) -> RefAction {
30265 RefAction::NoAction(node)
30266 }
30267}
30268impl From<Restrict> for RefAction {
30269 #[inline]
30270 fn from(node: Restrict) -> RefAction {
30271 RefAction::Restrict(node)
30272 }
30273}
30274impl From<SetDefaultColumns> for RefAction {
30275 #[inline]
30276 fn from(node: SetDefaultColumns) -> RefAction {
30277 RefAction::SetDefaultColumns(node)
30278 }
30279}
30280impl From<SetNullColumns> for RefAction {
30281 #[inline]
30282 fn from(node: SetNullColumns) -> RefAction {
30283 RefAction::SetNullColumns(node)
30284 }
30285}
30286impl AstNode for SchemaElement {
30287 #[inline]
30288 fn can_cast(kind: SyntaxKind) -> bool {
30289 matches!(
30290 kind,
30291 SyntaxKind::CREATE_INDEX
30292 | SyntaxKind::CREATE_SEQUENCE
30293 | SyntaxKind::CREATE_TABLE
30294 | SyntaxKind::CREATE_TRIGGER
30295 | SyntaxKind::CREATE_VIEW
30296 | SyntaxKind::GRANT
30297 )
30298 }
30299 #[inline]
30300 fn cast(syntax: SyntaxNode) -> Option<Self> {
30301 let res = match syntax.kind() {
30302 SyntaxKind::CREATE_INDEX => SchemaElement::CreateIndex(CreateIndex { syntax }),
30303 SyntaxKind::CREATE_SEQUENCE => SchemaElement::CreateSequence(CreateSequence { syntax }),
30304 SyntaxKind::CREATE_TABLE => SchemaElement::CreateTable(CreateTable { syntax }),
30305 SyntaxKind::CREATE_TRIGGER => SchemaElement::CreateTrigger(CreateTrigger { syntax }),
30306 SyntaxKind::CREATE_VIEW => SchemaElement::CreateView(CreateView { syntax }),
30307 SyntaxKind::GRANT => SchemaElement::Grant(Grant { syntax }),
30308 _ => {
30309 return None;
30310 }
30311 };
30312 Some(res)
30313 }
30314 #[inline]
30315 fn syntax(&self) -> &SyntaxNode {
30316 match self {
30317 SchemaElement::CreateIndex(it) => &it.syntax,
30318 SchemaElement::CreateSequence(it) => &it.syntax,
30319 SchemaElement::CreateTable(it) => &it.syntax,
30320 SchemaElement::CreateTrigger(it) => &it.syntax,
30321 SchemaElement::CreateView(it) => &it.syntax,
30322 SchemaElement::Grant(it) => &it.syntax,
30323 }
30324 }
30325}
30326impl From<CreateIndex> for SchemaElement {
30327 #[inline]
30328 fn from(node: CreateIndex) -> SchemaElement {
30329 SchemaElement::CreateIndex(node)
30330 }
30331}
30332impl From<CreateSequence> for SchemaElement {
30333 #[inline]
30334 fn from(node: CreateSequence) -> SchemaElement {
30335 SchemaElement::CreateSequence(node)
30336 }
30337}
30338impl From<CreateTable> for SchemaElement {
30339 #[inline]
30340 fn from(node: CreateTable) -> SchemaElement {
30341 SchemaElement::CreateTable(node)
30342 }
30343}
30344impl From<CreateTrigger> for SchemaElement {
30345 #[inline]
30346 fn from(node: CreateTrigger) -> SchemaElement {
30347 SchemaElement::CreateTrigger(node)
30348 }
30349}
30350impl From<CreateView> for SchemaElement {
30351 #[inline]
30352 fn from(node: CreateView) -> SchemaElement {
30353 SchemaElement::CreateView(node)
30354 }
30355}
30356impl From<Grant> for SchemaElement {
30357 #[inline]
30358 fn from(node: Grant) -> SchemaElement {
30359 SchemaElement::Grant(node)
30360 }
30361}
30362impl AstNode for SelectVariant {
30363 #[inline]
30364 fn can_cast(kind: SyntaxKind) -> bool {
30365 matches!(
30366 kind,
30367 SyntaxKind::COMPOUND_SELECT
30368 | SyntaxKind::PAREN_SELECT
30369 | SyntaxKind::SELECT
30370 | SyntaxKind::SELECT_INTO
30371 | SyntaxKind::TABLE
30372 | SyntaxKind::VALUES
30373 )
30374 }
30375 #[inline]
30376 fn cast(syntax: SyntaxNode) -> Option<Self> {
30377 let res = match syntax.kind() {
30378 SyntaxKind::COMPOUND_SELECT => SelectVariant::CompoundSelect(CompoundSelect { syntax }),
30379 SyntaxKind::PAREN_SELECT => SelectVariant::ParenSelect(ParenSelect { syntax }),
30380 SyntaxKind::SELECT => SelectVariant::Select(Select { syntax }),
30381 SyntaxKind::SELECT_INTO => SelectVariant::SelectInto(SelectInto { syntax }),
30382 SyntaxKind::TABLE => SelectVariant::Table(Table { syntax }),
30383 SyntaxKind::VALUES => SelectVariant::Values(Values { syntax }),
30384 _ => {
30385 return None;
30386 }
30387 };
30388 Some(res)
30389 }
30390 #[inline]
30391 fn syntax(&self) -> &SyntaxNode {
30392 match self {
30393 SelectVariant::CompoundSelect(it) => &it.syntax,
30394 SelectVariant::ParenSelect(it) => &it.syntax,
30395 SelectVariant::Select(it) => &it.syntax,
30396 SelectVariant::SelectInto(it) => &it.syntax,
30397 SelectVariant::Table(it) => &it.syntax,
30398 SelectVariant::Values(it) => &it.syntax,
30399 }
30400 }
30401}
30402impl From<CompoundSelect> for SelectVariant {
30403 #[inline]
30404 fn from(node: CompoundSelect) -> SelectVariant {
30405 SelectVariant::CompoundSelect(node)
30406 }
30407}
30408impl From<ParenSelect> for SelectVariant {
30409 #[inline]
30410 fn from(node: ParenSelect) -> SelectVariant {
30411 SelectVariant::ParenSelect(node)
30412 }
30413}
30414impl From<Select> for SelectVariant {
30415 #[inline]
30416 fn from(node: Select) -> SelectVariant {
30417 SelectVariant::Select(node)
30418 }
30419}
30420impl From<SelectInto> for SelectVariant {
30421 #[inline]
30422 fn from(node: SelectInto) -> SelectVariant {
30423 SelectVariant::SelectInto(node)
30424 }
30425}
30426impl From<Table> for SelectVariant {
30427 #[inline]
30428 fn from(node: Table) -> SelectVariant {
30429 SelectVariant::Table(node)
30430 }
30431}
30432impl From<Values> for SelectVariant {
30433 #[inline]
30434 fn from(node: Values) -> SelectVariant {
30435 SelectVariant::Values(node)
30436 }
30437}
30438impl AstNode for SetColumn {
30439 #[inline]
30440 fn can_cast(kind: SyntaxKind) -> bool {
30441 matches!(
30442 kind,
30443 SyntaxKind::SET_MULTIPLE_COLUMNS | SyntaxKind::SET_SINGLE_COLUMN
30444 )
30445 }
30446 #[inline]
30447 fn cast(syntax: SyntaxNode) -> Option<Self> {
30448 let res = match syntax.kind() {
30449 SyntaxKind::SET_MULTIPLE_COLUMNS => {
30450 SetColumn::SetMultipleColumns(SetMultipleColumns { syntax })
30451 }
30452 SyntaxKind::SET_SINGLE_COLUMN => SetColumn::SetSingleColumn(SetSingleColumn { syntax }),
30453 _ => {
30454 return None;
30455 }
30456 };
30457 Some(res)
30458 }
30459 #[inline]
30460 fn syntax(&self) -> &SyntaxNode {
30461 match self {
30462 SetColumn::SetMultipleColumns(it) => &it.syntax,
30463 SetColumn::SetSingleColumn(it) => &it.syntax,
30464 }
30465 }
30466}
30467impl From<SetMultipleColumns> for SetColumn {
30468 #[inline]
30469 fn from(node: SetMultipleColumns) -> SetColumn {
30470 SetColumn::SetMultipleColumns(node)
30471 }
30472}
30473impl From<SetSingleColumn> for SetColumn {
30474 #[inline]
30475 fn from(node: SetSingleColumn) -> SetColumn {
30476 SetColumn::SetSingleColumn(node)
30477 }
30478}
30479impl AstNode for Stmt {
30480 #[inline]
30481 fn can_cast(kind: SyntaxKind) -> bool {
30482 matches!(
30483 kind,
30484 SyntaxKind::ALTER_AGGREGATE
30485 | SyntaxKind::ALTER_COLLATION
30486 | SyntaxKind::ALTER_CONVERSION
30487 | SyntaxKind::ALTER_DATABASE
30488 | SyntaxKind::ALTER_DEFAULT_PRIVILEGES
30489 | SyntaxKind::ALTER_DOMAIN
30490 | SyntaxKind::ALTER_EVENT_TRIGGER
30491 | SyntaxKind::ALTER_EXTENSION
30492 | SyntaxKind::ALTER_FOREIGN_DATA_WRAPPER
30493 | SyntaxKind::ALTER_FOREIGN_TABLE
30494 | SyntaxKind::ALTER_FUNCTION
30495 | SyntaxKind::ALTER_GROUP
30496 | SyntaxKind::ALTER_INDEX
30497 | SyntaxKind::ALTER_LANGUAGE
30498 | SyntaxKind::ALTER_LARGE_OBJECT
30499 | SyntaxKind::ALTER_MATERIALIZED_VIEW
30500 | SyntaxKind::ALTER_OPERATOR
30501 | SyntaxKind::ALTER_OPERATOR_CLASS
30502 | SyntaxKind::ALTER_OPERATOR_FAMILY
30503 | SyntaxKind::ALTER_POLICY
30504 | SyntaxKind::ALTER_PROCEDURE
30505 | SyntaxKind::ALTER_PUBLICATION
30506 | SyntaxKind::ALTER_ROLE
30507 | SyntaxKind::ALTER_ROUTINE
30508 | SyntaxKind::ALTER_RULE
30509 | SyntaxKind::ALTER_SCHEMA
30510 | SyntaxKind::ALTER_SEQUENCE
30511 | SyntaxKind::ALTER_SERVER
30512 | SyntaxKind::ALTER_STATISTICS
30513 | SyntaxKind::ALTER_SUBSCRIPTION
30514 | SyntaxKind::ALTER_SYSTEM
30515 | SyntaxKind::ALTER_TABLE
30516 | SyntaxKind::ALTER_TABLESPACE
30517 | SyntaxKind::ALTER_TEXT_SEARCH_CONFIGURATION
30518 | SyntaxKind::ALTER_TEXT_SEARCH_DICTIONARY
30519 | SyntaxKind::ALTER_TEXT_SEARCH_PARSER
30520 | SyntaxKind::ALTER_TEXT_SEARCH_TEMPLATE
30521 | SyntaxKind::ALTER_TRIGGER
30522 | SyntaxKind::ALTER_TYPE
30523 | SyntaxKind::ALTER_USER
30524 | SyntaxKind::ALTER_USER_MAPPING
30525 | SyntaxKind::ALTER_VIEW
30526 | SyntaxKind::ANALYZE
30527 | SyntaxKind::BEGIN
30528 | SyntaxKind::CALL
30529 | SyntaxKind::CHECKPOINT
30530 | SyntaxKind::CLOSE
30531 | SyntaxKind::CLUSTER
30532 | SyntaxKind::COMMENT_ON
30533 | SyntaxKind::COMMIT
30534 | SyntaxKind::COPY
30535 | SyntaxKind::CREATE_ACCESS_METHOD
30536 | SyntaxKind::CREATE_AGGREGATE
30537 | SyntaxKind::CREATE_CAST
30538 | SyntaxKind::CREATE_COLLATION
30539 | SyntaxKind::CREATE_CONVERSION
30540 | SyntaxKind::CREATE_DATABASE
30541 | SyntaxKind::CREATE_DOMAIN
30542 | SyntaxKind::CREATE_EVENT_TRIGGER
30543 | SyntaxKind::CREATE_EXTENSION
30544 | SyntaxKind::CREATE_FOREIGN_DATA_WRAPPER
30545 | SyntaxKind::CREATE_FOREIGN_TABLE
30546 | SyntaxKind::CREATE_FUNCTION
30547 | SyntaxKind::CREATE_GROUP
30548 | SyntaxKind::CREATE_INDEX
30549 | SyntaxKind::CREATE_LANGUAGE
30550 | SyntaxKind::CREATE_MATERIALIZED_VIEW
30551 | SyntaxKind::CREATE_OPERATOR
30552 | SyntaxKind::CREATE_OPERATOR_CLASS
30553 | SyntaxKind::CREATE_OPERATOR_FAMILY
30554 | SyntaxKind::CREATE_POLICY
30555 | SyntaxKind::CREATE_PROCEDURE
30556 | SyntaxKind::CREATE_PUBLICATION
30557 | SyntaxKind::CREATE_ROLE
30558 | SyntaxKind::CREATE_RULE
30559 | SyntaxKind::CREATE_SCHEMA
30560 | SyntaxKind::CREATE_SEQUENCE
30561 | SyntaxKind::CREATE_SERVER
30562 | SyntaxKind::CREATE_STATISTICS
30563 | SyntaxKind::CREATE_SUBSCRIPTION
30564 | SyntaxKind::CREATE_TABLE
30565 | SyntaxKind::CREATE_TABLE_AS
30566 | SyntaxKind::CREATE_TABLESPACE
30567 | SyntaxKind::CREATE_TEXT_SEARCH_CONFIGURATION
30568 | SyntaxKind::CREATE_TEXT_SEARCH_DICTIONARY
30569 | SyntaxKind::CREATE_TEXT_SEARCH_PARSER
30570 | SyntaxKind::CREATE_TEXT_SEARCH_TEMPLATE
30571 | SyntaxKind::CREATE_TRANSFORM
30572 | SyntaxKind::CREATE_TRIGGER
30573 | SyntaxKind::CREATE_TYPE
30574 | SyntaxKind::CREATE_USER
30575 | SyntaxKind::CREATE_USER_MAPPING
30576 | SyntaxKind::CREATE_VIEW
30577 | SyntaxKind::DEALLOCATE
30578 | SyntaxKind::DECLARE
30579 | SyntaxKind::DELETE
30580 | SyntaxKind::DISCARD
30581 | SyntaxKind::DO
30582 | SyntaxKind::DROP_ACCESS_METHOD
30583 | SyntaxKind::DROP_AGGREGATE
30584 | SyntaxKind::DROP_CAST
30585 | SyntaxKind::DROP_COLLATION
30586 | SyntaxKind::DROP_CONVERSION
30587 | SyntaxKind::DROP_DATABASE
30588 | SyntaxKind::DROP_DOMAIN
30589 | SyntaxKind::DROP_EVENT_TRIGGER
30590 | SyntaxKind::DROP_EXTENSION
30591 | SyntaxKind::DROP_FOREIGN_DATA_WRAPPER
30592 | SyntaxKind::DROP_FOREIGN_TABLE
30593 | SyntaxKind::DROP_FUNCTION
30594 | SyntaxKind::DROP_GROUP
30595 | SyntaxKind::DROP_INDEX
30596 | SyntaxKind::DROP_LANGUAGE
30597 | SyntaxKind::DROP_MATERIALIZED_VIEW
30598 | SyntaxKind::DROP_OPERATOR
30599 | SyntaxKind::DROP_OPERATOR_CLASS
30600 | SyntaxKind::DROP_OPERATOR_FAMILY
30601 | SyntaxKind::DROP_OWNED
30602 | SyntaxKind::DROP_POLICY
30603 | SyntaxKind::DROP_PROCEDURE
30604 | SyntaxKind::DROP_PUBLICATION
30605 | SyntaxKind::DROP_ROLE
30606 | SyntaxKind::DROP_ROUTINE
30607 | SyntaxKind::DROP_RULE
30608 | SyntaxKind::DROP_SCHEMA
30609 | SyntaxKind::DROP_SEQUENCE
30610 | SyntaxKind::DROP_SERVER
30611 | SyntaxKind::DROP_STATISTICS
30612 | SyntaxKind::DROP_SUBSCRIPTION
30613 | SyntaxKind::DROP_TABLE
30614 | SyntaxKind::DROP_TABLESPACE
30615 | SyntaxKind::DROP_TEXT_SEARCH_CONFIG
30616 | SyntaxKind::DROP_TEXT_SEARCH_DICT
30617 | SyntaxKind::DROP_TEXT_SEARCH_PARSER
30618 | SyntaxKind::DROP_TEXT_SEARCH_TEMPLATE
30619 | SyntaxKind::DROP_TRANSFORM
30620 | SyntaxKind::DROP_TRIGGER
30621 | SyntaxKind::DROP_TYPE
30622 | SyntaxKind::DROP_USER
30623 | SyntaxKind::DROP_USER_MAPPING
30624 | SyntaxKind::DROP_VIEW
30625 | SyntaxKind::EXECUTE
30626 | SyntaxKind::EXPLAIN
30627 | SyntaxKind::FETCH
30628 | SyntaxKind::GRANT
30629 | SyntaxKind::IMPORT_FOREIGN_SCHEMA
30630 | SyntaxKind::INSERT
30631 | SyntaxKind::LISTEN
30632 | SyntaxKind::LOAD
30633 | SyntaxKind::LOCK
30634 | SyntaxKind::MERGE
30635 | SyntaxKind::MOVE
30636 | SyntaxKind::NOTIFY
30637 | SyntaxKind::PAREN_SELECT
30638 | SyntaxKind::PREPARE
30639 | SyntaxKind::PREPARE_TRANSACTION
30640 | SyntaxKind::REASSIGN
30641 | SyntaxKind::REFRESH
30642 | SyntaxKind::REINDEX
30643 | SyntaxKind::RELEASE_SAVEPOINT
30644 | SyntaxKind::RESET
30645 | SyntaxKind::RESET_SESSION_AUTH
30646 | SyntaxKind::REVOKE
30647 | SyntaxKind::ROLLBACK
30648 | SyntaxKind::SAVEPOINT
30649 | SyntaxKind::SECURITY_LABEL
30650 | SyntaxKind::SELECT
30651 | SyntaxKind::SELECT_INTO
30652 | SyntaxKind::SET
30653 | SyntaxKind::SET_CONSTRAINTS
30654 | SyntaxKind::SET_ROLE
30655 | SyntaxKind::SET_SESSION_AUTH
30656 | SyntaxKind::SET_TRANSACTION
30657 | SyntaxKind::SHOW
30658 | SyntaxKind::TABLE
30659 | SyntaxKind::TRUNCATE
30660 | SyntaxKind::UNLISTEN
30661 | SyntaxKind::UPDATE
30662 | SyntaxKind::VACUUM
30663 | SyntaxKind::VALUES
30664 )
30665 }
30666 #[inline]
30667 fn cast(syntax: SyntaxNode) -> Option<Self> {
30668 let res = match syntax.kind() {
30669 SyntaxKind::ALTER_AGGREGATE => Stmt::AlterAggregate(AlterAggregate { syntax }),
30670 SyntaxKind::ALTER_COLLATION => Stmt::AlterCollation(AlterCollation { syntax }),
30671 SyntaxKind::ALTER_CONVERSION => Stmt::AlterConversion(AlterConversion { syntax }),
30672 SyntaxKind::ALTER_DATABASE => Stmt::AlterDatabase(AlterDatabase { syntax }),
30673 SyntaxKind::ALTER_DEFAULT_PRIVILEGES => {
30674 Stmt::AlterDefaultPrivileges(AlterDefaultPrivileges { syntax })
30675 }
30676 SyntaxKind::ALTER_DOMAIN => Stmt::AlterDomain(AlterDomain { syntax }),
30677 SyntaxKind::ALTER_EVENT_TRIGGER => {
30678 Stmt::AlterEventTrigger(AlterEventTrigger { syntax })
30679 }
30680 SyntaxKind::ALTER_EXTENSION => Stmt::AlterExtension(AlterExtension { syntax }),
30681 SyntaxKind::ALTER_FOREIGN_DATA_WRAPPER => {
30682 Stmt::AlterForeignDataWrapper(AlterForeignDataWrapper { syntax })
30683 }
30684 SyntaxKind::ALTER_FOREIGN_TABLE => {
30685 Stmt::AlterForeignTable(AlterForeignTable { syntax })
30686 }
30687 SyntaxKind::ALTER_FUNCTION => Stmt::AlterFunction(AlterFunction { syntax }),
30688 SyntaxKind::ALTER_GROUP => Stmt::AlterGroup(AlterGroup { syntax }),
30689 SyntaxKind::ALTER_INDEX => Stmt::AlterIndex(AlterIndex { syntax }),
30690 SyntaxKind::ALTER_LANGUAGE => Stmt::AlterLanguage(AlterLanguage { syntax }),
30691 SyntaxKind::ALTER_LARGE_OBJECT => Stmt::AlterLargeObject(AlterLargeObject { syntax }),
30692 SyntaxKind::ALTER_MATERIALIZED_VIEW => {
30693 Stmt::AlterMaterializedView(AlterMaterializedView { syntax })
30694 }
30695 SyntaxKind::ALTER_OPERATOR => Stmt::AlterOperator(AlterOperator { syntax }),
30696 SyntaxKind::ALTER_OPERATOR_CLASS => {
30697 Stmt::AlterOperatorClass(AlterOperatorClass { syntax })
30698 }
30699 SyntaxKind::ALTER_OPERATOR_FAMILY => {
30700 Stmt::AlterOperatorFamily(AlterOperatorFamily { syntax })
30701 }
30702 SyntaxKind::ALTER_POLICY => Stmt::AlterPolicy(AlterPolicy { syntax }),
30703 SyntaxKind::ALTER_PROCEDURE => Stmt::AlterProcedure(AlterProcedure { syntax }),
30704 SyntaxKind::ALTER_PUBLICATION => Stmt::AlterPublication(AlterPublication { syntax }),
30705 SyntaxKind::ALTER_ROLE => Stmt::AlterRole(AlterRole { syntax }),
30706 SyntaxKind::ALTER_ROUTINE => Stmt::AlterRoutine(AlterRoutine { syntax }),
30707 SyntaxKind::ALTER_RULE => Stmt::AlterRule(AlterRule { syntax }),
30708 SyntaxKind::ALTER_SCHEMA => Stmt::AlterSchema(AlterSchema { syntax }),
30709 SyntaxKind::ALTER_SEQUENCE => Stmt::AlterSequence(AlterSequence { syntax }),
30710 SyntaxKind::ALTER_SERVER => Stmt::AlterServer(AlterServer { syntax }),
30711 SyntaxKind::ALTER_STATISTICS => Stmt::AlterStatistics(AlterStatistics { syntax }),
30712 SyntaxKind::ALTER_SUBSCRIPTION => Stmt::AlterSubscription(AlterSubscription { syntax }),
30713 SyntaxKind::ALTER_SYSTEM => Stmt::AlterSystem(AlterSystem { syntax }),
30714 SyntaxKind::ALTER_TABLE => Stmt::AlterTable(AlterTable { syntax }),
30715 SyntaxKind::ALTER_TABLESPACE => Stmt::AlterTablespace(AlterTablespace { syntax }),
30716 SyntaxKind::ALTER_TEXT_SEARCH_CONFIGURATION => {
30717 Stmt::AlterTextSearchConfiguration(AlterTextSearchConfiguration { syntax })
30718 }
30719 SyntaxKind::ALTER_TEXT_SEARCH_DICTIONARY => {
30720 Stmt::AlterTextSearchDictionary(AlterTextSearchDictionary { syntax })
30721 }
30722 SyntaxKind::ALTER_TEXT_SEARCH_PARSER => {
30723 Stmt::AlterTextSearchParser(AlterTextSearchParser { syntax })
30724 }
30725 SyntaxKind::ALTER_TEXT_SEARCH_TEMPLATE => {
30726 Stmt::AlterTextSearchTemplate(AlterTextSearchTemplate { syntax })
30727 }
30728 SyntaxKind::ALTER_TRIGGER => Stmt::AlterTrigger(AlterTrigger { syntax }),
30729 SyntaxKind::ALTER_TYPE => Stmt::AlterType(AlterType { syntax }),
30730 SyntaxKind::ALTER_USER => Stmt::AlterUser(AlterUser { syntax }),
30731 SyntaxKind::ALTER_USER_MAPPING => Stmt::AlterUserMapping(AlterUserMapping { syntax }),
30732 SyntaxKind::ALTER_VIEW => Stmt::AlterView(AlterView { syntax }),
30733 SyntaxKind::ANALYZE => Stmt::Analyze(Analyze { syntax }),
30734 SyntaxKind::BEGIN => Stmt::Begin(Begin { syntax }),
30735 SyntaxKind::CALL => Stmt::Call(Call { syntax }),
30736 SyntaxKind::CHECKPOINT => Stmt::Checkpoint(Checkpoint { syntax }),
30737 SyntaxKind::CLOSE => Stmt::Close(Close { syntax }),
30738 SyntaxKind::CLUSTER => Stmt::Cluster(Cluster { syntax }),
30739 SyntaxKind::COMMENT_ON => Stmt::CommentOn(CommentOn { syntax }),
30740 SyntaxKind::COMMIT => Stmt::Commit(Commit { syntax }),
30741 SyntaxKind::COPY => Stmt::Copy(Copy { syntax }),
30742 SyntaxKind::CREATE_ACCESS_METHOD => {
30743 Stmt::CreateAccessMethod(CreateAccessMethod { syntax })
30744 }
30745 SyntaxKind::CREATE_AGGREGATE => Stmt::CreateAggregate(CreateAggregate { syntax }),
30746 SyntaxKind::CREATE_CAST => Stmt::CreateCast(CreateCast { syntax }),
30747 SyntaxKind::CREATE_COLLATION => Stmt::CreateCollation(CreateCollation { syntax }),
30748 SyntaxKind::CREATE_CONVERSION => Stmt::CreateConversion(CreateConversion { syntax }),
30749 SyntaxKind::CREATE_DATABASE => Stmt::CreateDatabase(CreateDatabase { syntax }),
30750 SyntaxKind::CREATE_DOMAIN => Stmt::CreateDomain(CreateDomain { syntax }),
30751 SyntaxKind::CREATE_EVENT_TRIGGER => {
30752 Stmt::CreateEventTrigger(CreateEventTrigger { syntax })
30753 }
30754 SyntaxKind::CREATE_EXTENSION => Stmt::CreateExtension(CreateExtension { syntax }),
30755 SyntaxKind::CREATE_FOREIGN_DATA_WRAPPER => {
30756 Stmt::CreateForeignDataWrapper(CreateForeignDataWrapper { syntax })
30757 }
30758 SyntaxKind::CREATE_FOREIGN_TABLE => {
30759 Stmt::CreateForeignTable(CreateForeignTable { syntax })
30760 }
30761 SyntaxKind::CREATE_FUNCTION => Stmt::CreateFunction(CreateFunction { syntax }),
30762 SyntaxKind::CREATE_GROUP => Stmt::CreateGroup(CreateGroup { syntax }),
30763 SyntaxKind::CREATE_INDEX => Stmt::CreateIndex(CreateIndex { syntax }),
30764 SyntaxKind::CREATE_LANGUAGE => Stmt::CreateLanguage(CreateLanguage { syntax }),
30765 SyntaxKind::CREATE_MATERIALIZED_VIEW => {
30766 Stmt::CreateMaterializedView(CreateMaterializedView { syntax })
30767 }
30768 SyntaxKind::CREATE_OPERATOR => Stmt::CreateOperator(CreateOperator { syntax }),
30769 SyntaxKind::CREATE_OPERATOR_CLASS => {
30770 Stmt::CreateOperatorClass(CreateOperatorClass { syntax })
30771 }
30772 SyntaxKind::CREATE_OPERATOR_FAMILY => {
30773 Stmt::CreateOperatorFamily(CreateOperatorFamily { syntax })
30774 }
30775 SyntaxKind::CREATE_POLICY => Stmt::CreatePolicy(CreatePolicy { syntax }),
30776 SyntaxKind::CREATE_PROCEDURE => Stmt::CreateProcedure(CreateProcedure { syntax }),
30777 SyntaxKind::CREATE_PUBLICATION => Stmt::CreatePublication(CreatePublication { syntax }),
30778 SyntaxKind::CREATE_ROLE => Stmt::CreateRole(CreateRole { syntax }),
30779 SyntaxKind::CREATE_RULE => Stmt::CreateRule(CreateRule { syntax }),
30780 SyntaxKind::CREATE_SCHEMA => Stmt::CreateSchema(CreateSchema { syntax }),
30781 SyntaxKind::CREATE_SEQUENCE => Stmt::CreateSequence(CreateSequence { syntax }),
30782 SyntaxKind::CREATE_SERVER => Stmt::CreateServer(CreateServer { syntax }),
30783 SyntaxKind::CREATE_STATISTICS => Stmt::CreateStatistics(CreateStatistics { syntax }),
30784 SyntaxKind::CREATE_SUBSCRIPTION => {
30785 Stmt::CreateSubscription(CreateSubscription { syntax })
30786 }
30787 SyntaxKind::CREATE_TABLE => Stmt::CreateTable(CreateTable { syntax }),
30788 SyntaxKind::CREATE_TABLE_AS => Stmt::CreateTableAs(CreateTableAs { syntax }),
30789 SyntaxKind::CREATE_TABLESPACE => Stmt::CreateTablespace(CreateTablespace { syntax }),
30790 SyntaxKind::CREATE_TEXT_SEARCH_CONFIGURATION => {
30791 Stmt::CreateTextSearchConfiguration(CreateTextSearchConfiguration { syntax })
30792 }
30793 SyntaxKind::CREATE_TEXT_SEARCH_DICTIONARY => {
30794 Stmt::CreateTextSearchDictionary(CreateTextSearchDictionary { syntax })
30795 }
30796 SyntaxKind::CREATE_TEXT_SEARCH_PARSER => {
30797 Stmt::CreateTextSearchParser(CreateTextSearchParser { syntax })
30798 }
30799 SyntaxKind::CREATE_TEXT_SEARCH_TEMPLATE => {
30800 Stmt::CreateTextSearchTemplate(CreateTextSearchTemplate { syntax })
30801 }
30802 SyntaxKind::CREATE_TRANSFORM => Stmt::CreateTransform(CreateTransform { syntax }),
30803 SyntaxKind::CREATE_TRIGGER => Stmt::CreateTrigger(CreateTrigger { syntax }),
30804 SyntaxKind::CREATE_TYPE => Stmt::CreateType(CreateType { syntax }),
30805 SyntaxKind::CREATE_USER => Stmt::CreateUser(CreateUser { syntax }),
30806 SyntaxKind::CREATE_USER_MAPPING => {
30807 Stmt::CreateUserMapping(CreateUserMapping { syntax })
30808 }
30809 SyntaxKind::CREATE_VIEW => Stmt::CreateView(CreateView { syntax }),
30810 SyntaxKind::DEALLOCATE => Stmt::Deallocate(Deallocate { syntax }),
30811 SyntaxKind::DECLARE => Stmt::Declare(Declare { syntax }),
30812 SyntaxKind::DELETE => Stmt::Delete(Delete { syntax }),
30813 SyntaxKind::DISCARD => Stmt::Discard(Discard { syntax }),
30814 SyntaxKind::DO => Stmt::Do(Do { syntax }),
30815 SyntaxKind::DROP_ACCESS_METHOD => Stmt::DropAccessMethod(DropAccessMethod { syntax }),
30816 SyntaxKind::DROP_AGGREGATE => Stmt::DropAggregate(DropAggregate { syntax }),
30817 SyntaxKind::DROP_CAST => Stmt::DropCast(DropCast { syntax }),
30818 SyntaxKind::DROP_COLLATION => Stmt::DropCollation(DropCollation { syntax }),
30819 SyntaxKind::DROP_CONVERSION => Stmt::DropConversion(DropConversion { syntax }),
30820 SyntaxKind::DROP_DATABASE => Stmt::DropDatabase(DropDatabase { syntax }),
30821 SyntaxKind::DROP_DOMAIN => Stmt::DropDomain(DropDomain { syntax }),
30822 SyntaxKind::DROP_EVENT_TRIGGER => Stmt::DropEventTrigger(DropEventTrigger { syntax }),
30823 SyntaxKind::DROP_EXTENSION => Stmt::DropExtension(DropExtension { syntax }),
30824 SyntaxKind::DROP_FOREIGN_DATA_WRAPPER => {
30825 Stmt::DropForeignDataWrapper(DropForeignDataWrapper { syntax })
30826 }
30827 SyntaxKind::DROP_FOREIGN_TABLE => Stmt::DropForeignTable(DropForeignTable { syntax }),
30828 SyntaxKind::DROP_FUNCTION => Stmt::DropFunction(DropFunction { syntax }),
30829 SyntaxKind::DROP_GROUP => Stmt::DropGroup(DropGroup { syntax }),
30830 SyntaxKind::DROP_INDEX => Stmt::DropIndex(DropIndex { syntax }),
30831 SyntaxKind::DROP_LANGUAGE => Stmt::DropLanguage(DropLanguage { syntax }),
30832 SyntaxKind::DROP_MATERIALIZED_VIEW => {
30833 Stmt::DropMaterializedView(DropMaterializedView { syntax })
30834 }
30835 SyntaxKind::DROP_OPERATOR => Stmt::DropOperator(DropOperator { syntax }),
30836 SyntaxKind::DROP_OPERATOR_CLASS => {
30837 Stmt::DropOperatorClass(DropOperatorClass { syntax })
30838 }
30839 SyntaxKind::DROP_OPERATOR_FAMILY => {
30840 Stmt::DropOperatorFamily(DropOperatorFamily { syntax })
30841 }
30842 SyntaxKind::DROP_OWNED => Stmt::DropOwned(DropOwned { syntax }),
30843 SyntaxKind::DROP_POLICY => Stmt::DropPolicy(DropPolicy { syntax }),
30844 SyntaxKind::DROP_PROCEDURE => Stmt::DropProcedure(DropProcedure { syntax }),
30845 SyntaxKind::DROP_PUBLICATION => Stmt::DropPublication(DropPublication { syntax }),
30846 SyntaxKind::DROP_ROLE => Stmt::DropRole(DropRole { syntax }),
30847 SyntaxKind::DROP_ROUTINE => Stmt::DropRoutine(DropRoutine { syntax }),
30848 SyntaxKind::DROP_RULE => Stmt::DropRule(DropRule { syntax }),
30849 SyntaxKind::DROP_SCHEMA => Stmt::DropSchema(DropSchema { syntax }),
30850 SyntaxKind::DROP_SEQUENCE => Stmt::DropSequence(DropSequence { syntax }),
30851 SyntaxKind::DROP_SERVER => Stmt::DropServer(DropServer { syntax }),
30852 SyntaxKind::DROP_STATISTICS => Stmt::DropStatistics(DropStatistics { syntax }),
30853 SyntaxKind::DROP_SUBSCRIPTION => Stmt::DropSubscription(DropSubscription { syntax }),
30854 SyntaxKind::DROP_TABLE => Stmt::DropTable(DropTable { syntax }),
30855 SyntaxKind::DROP_TABLESPACE => Stmt::DropTablespace(DropTablespace { syntax }),
30856 SyntaxKind::DROP_TEXT_SEARCH_CONFIG => {
30857 Stmt::DropTextSearchConfig(DropTextSearchConfig { syntax })
30858 }
30859 SyntaxKind::DROP_TEXT_SEARCH_DICT => {
30860 Stmt::DropTextSearchDict(DropTextSearchDict { syntax })
30861 }
30862 SyntaxKind::DROP_TEXT_SEARCH_PARSER => {
30863 Stmt::DropTextSearchParser(DropTextSearchParser { syntax })
30864 }
30865 SyntaxKind::DROP_TEXT_SEARCH_TEMPLATE => {
30866 Stmt::DropTextSearchTemplate(DropTextSearchTemplate { syntax })
30867 }
30868 SyntaxKind::DROP_TRANSFORM => Stmt::DropTransform(DropTransform { syntax }),
30869 SyntaxKind::DROP_TRIGGER => Stmt::DropTrigger(DropTrigger { syntax }),
30870 SyntaxKind::DROP_TYPE => Stmt::DropType(DropType { syntax }),
30871 SyntaxKind::DROP_USER => Stmt::DropUser(DropUser { syntax }),
30872 SyntaxKind::DROP_USER_MAPPING => Stmt::DropUserMapping(DropUserMapping { syntax }),
30873 SyntaxKind::DROP_VIEW => Stmt::DropView(DropView { syntax }),
30874 SyntaxKind::EXECUTE => Stmt::Execute(Execute { syntax }),
30875 SyntaxKind::EXPLAIN => Stmt::Explain(Explain { syntax }),
30876 SyntaxKind::FETCH => Stmt::Fetch(Fetch { syntax }),
30877 SyntaxKind::GRANT => Stmt::Grant(Grant { syntax }),
30878 SyntaxKind::IMPORT_FOREIGN_SCHEMA => {
30879 Stmt::ImportForeignSchema(ImportForeignSchema { syntax })
30880 }
30881 SyntaxKind::INSERT => Stmt::Insert(Insert { syntax }),
30882 SyntaxKind::LISTEN => Stmt::Listen(Listen { syntax }),
30883 SyntaxKind::LOAD => Stmt::Load(Load { syntax }),
30884 SyntaxKind::LOCK => Stmt::Lock(Lock { syntax }),
30885 SyntaxKind::MERGE => Stmt::Merge(Merge { syntax }),
30886 SyntaxKind::MOVE => Stmt::Move(Move { syntax }),
30887 SyntaxKind::NOTIFY => Stmt::Notify(Notify { syntax }),
30888 SyntaxKind::PAREN_SELECT => Stmt::ParenSelect(ParenSelect { syntax }),
30889 SyntaxKind::PREPARE => Stmt::Prepare(Prepare { syntax }),
30890 SyntaxKind::PREPARE_TRANSACTION => {
30891 Stmt::PrepareTransaction(PrepareTransaction { syntax })
30892 }
30893 SyntaxKind::REASSIGN => Stmt::Reassign(Reassign { syntax }),
30894 SyntaxKind::REFRESH => Stmt::Refresh(Refresh { syntax }),
30895 SyntaxKind::REINDEX => Stmt::Reindex(Reindex { syntax }),
30896 SyntaxKind::RELEASE_SAVEPOINT => Stmt::ReleaseSavepoint(ReleaseSavepoint { syntax }),
30897 SyntaxKind::RESET => Stmt::Reset(Reset { syntax }),
30898 SyntaxKind::RESET_SESSION_AUTH => Stmt::ResetSessionAuth(ResetSessionAuth { syntax }),
30899 SyntaxKind::REVOKE => Stmt::Revoke(Revoke { syntax }),
30900 SyntaxKind::ROLLBACK => Stmt::Rollback(Rollback { syntax }),
30901 SyntaxKind::SAVEPOINT => Stmt::Savepoint(Savepoint { syntax }),
30902 SyntaxKind::SECURITY_LABEL => Stmt::SecurityLabel(SecurityLabel { syntax }),
30903 SyntaxKind::SELECT => Stmt::Select(Select { syntax }),
30904 SyntaxKind::SELECT_INTO => Stmt::SelectInto(SelectInto { syntax }),
30905 SyntaxKind::SET => Stmt::Set(Set { syntax }),
30906 SyntaxKind::SET_CONSTRAINTS => Stmt::SetConstraints(SetConstraints { syntax }),
30907 SyntaxKind::SET_ROLE => Stmt::SetRole(SetRole { syntax }),
30908 SyntaxKind::SET_SESSION_AUTH => Stmt::SetSessionAuth(SetSessionAuth { syntax }),
30909 SyntaxKind::SET_TRANSACTION => Stmt::SetTransaction(SetTransaction { syntax }),
30910 SyntaxKind::SHOW => Stmt::Show(Show { syntax }),
30911 SyntaxKind::TABLE => Stmt::Table(Table { syntax }),
30912 SyntaxKind::TRUNCATE => Stmt::Truncate(Truncate { syntax }),
30913 SyntaxKind::UNLISTEN => Stmt::Unlisten(Unlisten { syntax }),
30914 SyntaxKind::UPDATE => Stmt::Update(Update { syntax }),
30915 SyntaxKind::VACUUM => Stmt::Vacuum(Vacuum { syntax }),
30916 SyntaxKind::VALUES => Stmt::Values(Values { syntax }),
30917 _ => {
30918 return None;
30919 }
30920 };
30921 Some(res)
30922 }
30923 #[inline]
30924 fn syntax(&self) -> &SyntaxNode {
30925 match self {
30926 Stmt::AlterAggregate(it) => &it.syntax,
30927 Stmt::AlterCollation(it) => &it.syntax,
30928 Stmt::AlterConversion(it) => &it.syntax,
30929 Stmt::AlterDatabase(it) => &it.syntax,
30930 Stmt::AlterDefaultPrivileges(it) => &it.syntax,
30931 Stmt::AlterDomain(it) => &it.syntax,
30932 Stmt::AlterEventTrigger(it) => &it.syntax,
30933 Stmt::AlterExtension(it) => &it.syntax,
30934 Stmt::AlterForeignDataWrapper(it) => &it.syntax,
30935 Stmt::AlterForeignTable(it) => &it.syntax,
30936 Stmt::AlterFunction(it) => &it.syntax,
30937 Stmt::AlterGroup(it) => &it.syntax,
30938 Stmt::AlterIndex(it) => &it.syntax,
30939 Stmt::AlterLanguage(it) => &it.syntax,
30940 Stmt::AlterLargeObject(it) => &it.syntax,
30941 Stmt::AlterMaterializedView(it) => &it.syntax,
30942 Stmt::AlterOperator(it) => &it.syntax,
30943 Stmt::AlterOperatorClass(it) => &it.syntax,
30944 Stmt::AlterOperatorFamily(it) => &it.syntax,
30945 Stmt::AlterPolicy(it) => &it.syntax,
30946 Stmt::AlterProcedure(it) => &it.syntax,
30947 Stmt::AlterPublication(it) => &it.syntax,
30948 Stmt::AlterRole(it) => &it.syntax,
30949 Stmt::AlterRoutine(it) => &it.syntax,
30950 Stmt::AlterRule(it) => &it.syntax,
30951 Stmt::AlterSchema(it) => &it.syntax,
30952 Stmt::AlterSequence(it) => &it.syntax,
30953 Stmt::AlterServer(it) => &it.syntax,
30954 Stmt::AlterStatistics(it) => &it.syntax,
30955 Stmt::AlterSubscription(it) => &it.syntax,
30956 Stmt::AlterSystem(it) => &it.syntax,
30957 Stmt::AlterTable(it) => &it.syntax,
30958 Stmt::AlterTablespace(it) => &it.syntax,
30959 Stmt::AlterTextSearchConfiguration(it) => &it.syntax,
30960 Stmt::AlterTextSearchDictionary(it) => &it.syntax,
30961 Stmt::AlterTextSearchParser(it) => &it.syntax,
30962 Stmt::AlterTextSearchTemplate(it) => &it.syntax,
30963 Stmt::AlterTrigger(it) => &it.syntax,
30964 Stmt::AlterType(it) => &it.syntax,
30965 Stmt::AlterUser(it) => &it.syntax,
30966 Stmt::AlterUserMapping(it) => &it.syntax,
30967 Stmt::AlterView(it) => &it.syntax,
30968 Stmt::Analyze(it) => &it.syntax,
30969 Stmt::Begin(it) => &it.syntax,
30970 Stmt::Call(it) => &it.syntax,
30971 Stmt::Checkpoint(it) => &it.syntax,
30972 Stmt::Close(it) => &it.syntax,
30973 Stmt::Cluster(it) => &it.syntax,
30974 Stmt::CommentOn(it) => &it.syntax,
30975 Stmt::Commit(it) => &it.syntax,
30976 Stmt::Copy(it) => &it.syntax,
30977 Stmt::CreateAccessMethod(it) => &it.syntax,
30978 Stmt::CreateAggregate(it) => &it.syntax,
30979 Stmt::CreateCast(it) => &it.syntax,
30980 Stmt::CreateCollation(it) => &it.syntax,
30981 Stmt::CreateConversion(it) => &it.syntax,
30982 Stmt::CreateDatabase(it) => &it.syntax,
30983 Stmt::CreateDomain(it) => &it.syntax,
30984 Stmt::CreateEventTrigger(it) => &it.syntax,
30985 Stmt::CreateExtension(it) => &it.syntax,
30986 Stmt::CreateForeignDataWrapper(it) => &it.syntax,
30987 Stmt::CreateForeignTable(it) => &it.syntax,
30988 Stmt::CreateFunction(it) => &it.syntax,
30989 Stmt::CreateGroup(it) => &it.syntax,
30990 Stmt::CreateIndex(it) => &it.syntax,
30991 Stmt::CreateLanguage(it) => &it.syntax,
30992 Stmt::CreateMaterializedView(it) => &it.syntax,
30993 Stmt::CreateOperator(it) => &it.syntax,
30994 Stmt::CreateOperatorClass(it) => &it.syntax,
30995 Stmt::CreateOperatorFamily(it) => &it.syntax,
30996 Stmt::CreatePolicy(it) => &it.syntax,
30997 Stmt::CreateProcedure(it) => &it.syntax,
30998 Stmt::CreatePublication(it) => &it.syntax,
30999 Stmt::CreateRole(it) => &it.syntax,
31000 Stmt::CreateRule(it) => &it.syntax,
31001 Stmt::CreateSchema(it) => &it.syntax,
31002 Stmt::CreateSequence(it) => &it.syntax,
31003 Stmt::CreateServer(it) => &it.syntax,
31004 Stmt::CreateStatistics(it) => &it.syntax,
31005 Stmt::CreateSubscription(it) => &it.syntax,
31006 Stmt::CreateTable(it) => &it.syntax,
31007 Stmt::CreateTableAs(it) => &it.syntax,
31008 Stmt::CreateTablespace(it) => &it.syntax,
31009 Stmt::CreateTextSearchConfiguration(it) => &it.syntax,
31010 Stmt::CreateTextSearchDictionary(it) => &it.syntax,
31011 Stmt::CreateTextSearchParser(it) => &it.syntax,
31012 Stmt::CreateTextSearchTemplate(it) => &it.syntax,
31013 Stmt::CreateTransform(it) => &it.syntax,
31014 Stmt::CreateTrigger(it) => &it.syntax,
31015 Stmt::CreateType(it) => &it.syntax,
31016 Stmt::CreateUser(it) => &it.syntax,
31017 Stmt::CreateUserMapping(it) => &it.syntax,
31018 Stmt::CreateView(it) => &it.syntax,
31019 Stmt::Deallocate(it) => &it.syntax,
31020 Stmt::Declare(it) => &it.syntax,
31021 Stmt::Delete(it) => &it.syntax,
31022 Stmt::Discard(it) => &it.syntax,
31023 Stmt::Do(it) => &it.syntax,
31024 Stmt::DropAccessMethod(it) => &it.syntax,
31025 Stmt::DropAggregate(it) => &it.syntax,
31026 Stmt::DropCast(it) => &it.syntax,
31027 Stmt::DropCollation(it) => &it.syntax,
31028 Stmt::DropConversion(it) => &it.syntax,
31029 Stmt::DropDatabase(it) => &it.syntax,
31030 Stmt::DropDomain(it) => &it.syntax,
31031 Stmt::DropEventTrigger(it) => &it.syntax,
31032 Stmt::DropExtension(it) => &it.syntax,
31033 Stmt::DropForeignDataWrapper(it) => &it.syntax,
31034 Stmt::DropForeignTable(it) => &it.syntax,
31035 Stmt::DropFunction(it) => &it.syntax,
31036 Stmt::DropGroup(it) => &it.syntax,
31037 Stmt::DropIndex(it) => &it.syntax,
31038 Stmt::DropLanguage(it) => &it.syntax,
31039 Stmt::DropMaterializedView(it) => &it.syntax,
31040 Stmt::DropOperator(it) => &it.syntax,
31041 Stmt::DropOperatorClass(it) => &it.syntax,
31042 Stmt::DropOperatorFamily(it) => &it.syntax,
31043 Stmt::DropOwned(it) => &it.syntax,
31044 Stmt::DropPolicy(it) => &it.syntax,
31045 Stmt::DropProcedure(it) => &it.syntax,
31046 Stmt::DropPublication(it) => &it.syntax,
31047 Stmt::DropRole(it) => &it.syntax,
31048 Stmt::DropRoutine(it) => &it.syntax,
31049 Stmt::DropRule(it) => &it.syntax,
31050 Stmt::DropSchema(it) => &it.syntax,
31051 Stmt::DropSequence(it) => &it.syntax,
31052 Stmt::DropServer(it) => &it.syntax,
31053 Stmt::DropStatistics(it) => &it.syntax,
31054 Stmt::DropSubscription(it) => &it.syntax,
31055 Stmt::DropTable(it) => &it.syntax,
31056 Stmt::DropTablespace(it) => &it.syntax,
31057 Stmt::DropTextSearchConfig(it) => &it.syntax,
31058 Stmt::DropTextSearchDict(it) => &it.syntax,
31059 Stmt::DropTextSearchParser(it) => &it.syntax,
31060 Stmt::DropTextSearchTemplate(it) => &it.syntax,
31061 Stmt::DropTransform(it) => &it.syntax,
31062 Stmt::DropTrigger(it) => &it.syntax,
31063 Stmt::DropType(it) => &it.syntax,
31064 Stmt::DropUser(it) => &it.syntax,
31065 Stmt::DropUserMapping(it) => &it.syntax,
31066 Stmt::DropView(it) => &it.syntax,
31067 Stmt::Execute(it) => &it.syntax,
31068 Stmt::Explain(it) => &it.syntax,
31069 Stmt::Fetch(it) => &it.syntax,
31070 Stmt::Grant(it) => &it.syntax,
31071 Stmt::ImportForeignSchema(it) => &it.syntax,
31072 Stmt::Insert(it) => &it.syntax,
31073 Stmt::Listen(it) => &it.syntax,
31074 Stmt::Load(it) => &it.syntax,
31075 Stmt::Lock(it) => &it.syntax,
31076 Stmt::Merge(it) => &it.syntax,
31077 Stmt::Move(it) => &it.syntax,
31078 Stmt::Notify(it) => &it.syntax,
31079 Stmt::ParenSelect(it) => &it.syntax,
31080 Stmt::Prepare(it) => &it.syntax,
31081 Stmt::PrepareTransaction(it) => &it.syntax,
31082 Stmt::Reassign(it) => &it.syntax,
31083 Stmt::Refresh(it) => &it.syntax,
31084 Stmt::Reindex(it) => &it.syntax,
31085 Stmt::ReleaseSavepoint(it) => &it.syntax,
31086 Stmt::Reset(it) => &it.syntax,
31087 Stmt::ResetSessionAuth(it) => &it.syntax,
31088 Stmt::Revoke(it) => &it.syntax,
31089 Stmt::Rollback(it) => &it.syntax,
31090 Stmt::Savepoint(it) => &it.syntax,
31091 Stmt::SecurityLabel(it) => &it.syntax,
31092 Stmt::Select(it) => &it.syntax,
31093 Stmt::SelectInto(it) => &it.syntax,
31094 Stmt::Set(it) => &it.syntax,
31095 Stmt::SetConstraints(it) => &it.syntax,
31096 Stmt::SetRole(it) => &it.syntax,
31097 Stmt::SetSessionAuth(it) => &it.syntax,
31098 Stmt::SetTransaction(it) => &it.syntax,
31099 Stmt::Show(it) => &it.syntax,
31100 Stmt::Table(it) => &it.syntax,
31101 Stmt::Truncate(it) => &it.syntax,
31102 Stmt::Unlisten(it) => &it.syntax,
31103 Stmt::Update(it) => &it.syntax,
31104 Stmt::Vacuum(it) => &it.syntax,
31105 Stmt::Values(it) => &it.syntax,
31106 }
31107 }
31108}
31109impl From<AlterAggregate> for Stmt {
31110 #[inline]
31111 fn from(node: AlterAggregate) -> Stmt {
31112 Stmt::AlterAggregate(node)
31113 }
31114}
31115impl From<AlterCollation> for Stmt {
31116 #[inline]
31117 fn from(node: AlterCollation) -> Stmt {
31118 Stmt::AlterCollation(node)
31119 }
31120}
31121impl From<AlterConversion> for Stmt {
31122 #[inline]
31123 fn from(node: AlterConversion) -> Stmt {
31124 Stmt::AlterConversion(node)
31125 }
31126}
31127impl From<AlterDatabase> for Stmt {
31128 #[inline]
31129 fn from(node: AlterDatabase) -> Stmt {
31130 Stmt::AlterDatabase(node)
31131 }
31132}
31133impl From<AlterDefaultPrivileges> for Stmt {
31134 #[inline]
31135 fn from(node: AlterDefaultPrivileges) -> Stmt {
31136 Stmt::AlterDefaultPrivileges(node)
31137 }
31138}
31139impl From<AlterDomain> for Stmt {
31140 #[inline]
31141 fn from(node: AlterDomain) -> Stmt {
31142 Stmt::AlterDomain(node)
31143 }
31144}
31145impl From<AlterEventTrigger> for Stmt {
31146 #[inline]
31147 fn from(node: AlterEventTrigger) -> Stmt {
31148 Stmt::AlterEventTrigger(node)
31149 }
31150}
31151impl From<AlterExtension> for Stmt {
31152 #[inline]
31153 fn from(node: AlterExtension) -> Stmt {
31154 Stmt::AlterExtension(node)
31155 }
31156}
31157impl From<AlterForeignDataWrapper> for Stmt {
31158 #[inline]
31159 fn from(node: AlterForeignDataWrapper) -> Stmt {
31160 Stmt::AlterForeignDataWrapper(node)
31161 }
31162}
31163impl From<AlterForeignTable> for Stmt {
31164 #[inline]
31165 fn from(node: AlterForeignTable) -> Stmt {
31166 Stmt::AlterForeignTable(node)
31167 }
31168}
31169impl From<AlterFunction> for Stmt {
31170 #[inline]
31171 fn from(node: AlterFunction) -> Stmt {
31172 Stmt::AlterFunction(node)
31173 }
31174}
31175impl From<AlterGroup> for Stmt {
31176 #[inline]
31177 fn from(node: AlterGroup) -> Stmt {
31178 Stmt::AlterGroup(node)
31179 }
31180}
31181impl From<AlterIndex> for Stmt {
31182 #[inline]
31183 fn from(node: AlterIndex) -> Stmt {
31184 Stmt::AlterIndex(node)
31185 }
31186}
31187impl From<AlterLanguage> for Stmt {
31188 #[inline]
31189 fn from(node: AlterLanguage) -> Stmt {
31190 Stmt::AlterLanguage(node)
31191 }
31192}
31193impl From<AlterLargeObject> for Stmt {
31194 #[inline]
31195 fn from(node: AlterLargeObject) -> Stmt {
31196 Stmt::AlterLargeObject(node)
31197 }
31198}
31199impl From<AlterMaterializedView> for Stmt {
31200 #[inline]
31201 fn from(node: AlterMaterializedView) -> Stmt {
31202 Stmt::AlterMaterializedView(node)
31203 }
31204}
31205impl From<AlterOperator> for Stmt {
31206 #[inline]
31207 fn from(node: AlterOperator) -> Stmt {
31208 Stmt::AlterOperator(node)
31209 }
31210}
31211impl From<AlterOperatorClass> for Stmt {
31212 #[inline]
31213 fn from(node: AlterOperatorClass) -> Stmt {
31214 Stmt::AlterOperatorClass(node)
31215 }
31216}
31217impl From<AlterOperatorFamily> for Stmt {
31218 #[inline]
31219 fn from(node: AlterOperatorFamily) -> Stmt {
31220 Stmt::AlterOperatorFamily(node)
31221 }
31222}
31223impl From<AlterPolicy> for Stmt {
31224 #[inline]
31225 fn from(node: AlterPolicy) -> Stmt {
31226 Stmt::AlterPolicy(node)
31227 }
31228}
31229impl From<AlterProcedure> for Stmt {
31230 #[inline]
31231 fn from(node: AlterProcedure) -> Stmt {
31232 Stmt::AlterProcedure(node)
31233 }
31234}
31235impl From<AlterPublication> for Stmt {
31236 #[inline]
31237 fn from(node: AlterPublication) -> Stmt {
31238 Stmt::AlterPublication(node)
31239 }
31240}
31241impl From<AlterRole> for Stmt {
31242 #[inline]
31243 fn from(node: AlterRole) -> Stmt {
31244 Stmt::AlterRole(node)
31245 }
31246}
31247impl From<AlterRoutine> for Stmt {
31248 #[inline]
31249 fn from(node: AlterRoutine) -> Stmt {
31250 Stmt::AlterRoutine(node)
31251 }
31252}
31253impl From<AlterRule> for Stmt {
31254 #[inline]
31255 fn from(node: AlterRule) -> Stmt {
31256 Stmt::AlterRule(node)
31257 }
31258}
31259impl From<AlterSchema> for Stmt {
31260 #[inline]
31261 fn from(node: AlterSchema) -> Stmt {
31262 Stmt::AlterSchema(node)
31263 }
31264}
31265impl From<AlterSequence> for Stmt {
31266 #[inline]
31267 fn from(node: AlterSequence) -> Stmt {
31268 Stmt::AlterSequence(node)
31269 }
31270}
31271impl From<AlterServer> for Stmt {
31272 #[inline]
31273 fn from(node: AlterServer) -> Stmt {
31274 Stmt::AlterServer(node)
31275 }
31276}
31277impl From<AlterStatistics> for Stmt {
31278 #[inline]
31279 fn from(node: AlterStatistics) -> Stmt {
31280 Stmt::AlterStatistics(node)
31281 }
31282}
31283impl From<AlterSubscription> for Stmt {
31284 #[inline]
31285 fn from(node: AlterSubscription) -> Stmt {
31286 Stmt::AlterSubscription(node)
31287 }
31288}
31289impl From<AlterSystem> for Stmt {
31290 #[inline]
31291 fn from(node: AlterSystem) -> Stmt {
31292 Stmt::AlterSystem(node)
31293 }
31294}
31295impl From<AlterTable> for Stmt {
31296 #[inline]
31297 fn from(node: AlterTable) -> Stmt {
31298 Stmt::AlterTable(node)
31299 }
31300}
31301impl From<AlterTablespace> for Stmt {
31302 #[inline]
31303 fn from(node: AlterTablespace) -> Stmt {
31304 Stmt::AlterTablespace(node)
31305 }
31306}
31307impl From<AlterTextSearchConfiguration> for Stmt {
31308 #[inline]
31309 fn from(node: AlterTextSearchConfiguration) -> Stmt {
31310 Stmt::AlterTextSearchConfiguration(node)
31311 }
31312}
31313impl From<AlterTextSearchDictionary> for Stmt {
31314 #[inline]
31315 fn from(node: AlterTextSearchDictionary) -> Stmt {
31316 Stmt::AlterTextSearchDictionary(node)
31317 }
31318}
31319impl From<AlterTextSearchParser> for Stmt {
31320 #[inline]
31321 fn from(node: AlterTextSearchParser) -> Stmt {
31322 Stmt::AlterTextSearchParser(node)
31323 }
31324}
31325impl From<AlterTextSearchTemplate> for Stmt {
31326 #[inline]
31327 fn from(node: AlterTextSearchTemplate) -> Stmt {
31328 Stmt::AlterTextSearchTemplate(node)
31329 }
31330}
31331impl From<AlterTrigger> for Stmt {
31332 #[inline]
31333 fn from(node: AlterTrigger) -> Stmt {
31334 Stmt::AlterTrigger(node)
31335 }
31336}
31337impl From<AlterType> for Stmt {
31338 #[inline]
31339 fn from(node: AlterType) -> Stmt {
31340 Stmt::AlterType(node)
31341 }
31342}
31343impl From<AlterUser> for Stmt {
31344 #[inline]
31345 fn from(node: AlterUser) -> Stmt {
31346 Stmt::AlterUser(node)
31347 }
31348}
31349impl From<AlterUserMapping> for Stmt {
31350 #[inline]
31351 fn from(node: AlterUserMapping) -> Stmt {
31352 Stmt::AlterUserMapping(node)
31353 }
31354}
31355impl From<AlterView> for Stmt {
31356 #[inline]
31357 fn from(node: AlterView) -> Stmt {
31358 Stmt::AlterView(node)
31359 }
31360}
31361impl From<Analyze> for Stmt {
31362 #[inline]
31363 fn from(node: Analyze) -> Stmt {
31364 Stmt::Analyze(node)
31365 }
31366}
31367impl From<Begin> for Stmt {
31368 #[inline]
31369 fn from(node: Begin) -> Stmt {
31370 Stmt::Begin(node)
31371 }
31372}
31373impl From<Call> for Stmt {
31374 #[inline]
31375 fn from(node: Call) -> Stmt {
31376 Stmt::Call(node)
31377 }
31378}
31379impl From<Checkpoint> for Stmt {
31380 #[inline]
31381 fn from(node: Checkpoint) -> Stmt {
31382 Stmt::Checkpoint(node)
31383 }
31384}
31385impl From<Close> for Stmt {
31386 #[inline]
31387 fn from(node: Close) -> Stmt {
31388 Stmt::Close(node)
31389 }
31390}
31391impl From<Cluster> for Stmt {
31392 #[inline]
31393 fn from(node: Cluster) -> Stmt {
31394 Stmt::Cluster(node)
31395 }
31396}
31397impl From<CommentOn> for Stmt {
31398 #[inline]
31399 fn from(node: CommentOn) -> Stmt {
31400 Stmt::CommentOn(node)
31401 }
31402}
31403impl From<Commit> for Stmt {
31404 #[inline]
31405 fn from(node: Commit) -> Stmt {
31406 Stmt::Commit(node)
31407 }
31408}
31409impl From<Copy> for Stmt {
31410 #[inline]
31411 fn from(node: Copy) -> Stmt {
31412 Stmt::Copy(node)
31413 }
31414}
31415impl From<CreateAccessMethod> for Stmt {
31416 #[inline]
31417 fn from(node: CreateAccessMethod) -> Stmt {
31418 Stmt::CreateAccessMethod(node)
31419 }
31420}
31421impl From<CreateAggregate> for Stmt {
31422 #[inline]
31423 fn from(node: CreateAggregate) -> Stmt {
31424 Stmt::CreateAggregate(node)
31425 }
31426}
31427impl From<CreateCast> for Stmt {
31428 #[inline]
31429 fn from(node: CreateCast) -> Stmt {
31430 Stmt::CreateCast(node)
31431 }
31432}
31433impl From<CreateCollation> for Stmt {
31434 #[inline]
31435 fn from(node: CreateCollation) -> Stmt {
31436 Stmt::CreateCollation(node)
31437 }
31438}
31439impl From<CreateConversion> for Stmt {
31440 #[inline]
31441 fn from(node: CreateConversion) -> Stmt {
31442 Stmt::CreateConversion(node)
31443 }
31444}
31445impl From<CreateDatabase> for Stmt {
31446 #[inline]
31447 fn from(node: CreateDatabase) -> Stmt {
31448 Stmt::CreateDatabase(node)
31449 }
31450}
31451impl From<CreateDomain> for Stmt {
31452 #[inline]
31453 fn from(node: CreateDomain) -> Stmt {
31454 Stmt::CreateDomain(node)
31455 }
31456}
31457impl From<CreateEventTrigger> for Stmt {
31458 #[inline]
31459 fn from(node: CreateEventTrigger) -> Stmt {
31460 Stmt::CreateEventTrigger(node)
31461 }
31462}
31463impl From<CreateExtension> for Stmt {
31464 #[inline]
31465 fn from(node: CreateExtension) -> Stmt {
31466 Stmt::CreateExtension(node)
31467 }
31468}
31469impl From<CreateForeignDataWrapper> for Stmt {
31470 #[inline]
31471 fn from(node: CreateForeignDataWrapper) -> Stmt {
31472 Stmt::CreateForeignDataWrapper(node)
31473 }
31474}
31475impl From<CreateForeignTable> for Stmt {
31476 #[inline]
31477 fn from(node: CreateForeignTable) -> Stmt {
31478 Stmt::CreateForeignTable(node)
31479 }
31480}
31481impl From<CreateFunction> for Stmt {
31482 #[inline]
31483 fn from(node: CreateFunction) -> Stmt {
31484 Stmt::CreateFunction(node)
31485 }
31486}
31487impl From<CreateGroup> for Stmt {
31488 #[inline]
31489 fn from(node: CreateGroup) -> Stmt {
31490 Stmt::CreateGroup(node)
31491 }
31492}
31493impl From<CreateIndex> for Stmt {
31494 #[inline]
31495 fn from(node: CreateIndex) -> Stmt {
31496 Stmt::CreateIndex(node)
31497 }
31498}
31499impl From<CreateLanguage> for Stmt {
31500 #[inline]
31501 fn from(node: CreateLanguage) -> Stmt {
31502 Stmt::CreateLanguage(node)
31503 }
31504}
31505impl From<CreateMaterializedView> for Stmt {
31506 #[inline]
31507 fn from(node: CreateMaterializedView) -> Stmt {
31508 Stmt::CreateMaterializedView(node)
31509 }
31510}
31511impl From<CreateOperator> for Stmt {
31512 #[inline]
31513 fn from(node: CreateOperator) -> Stmt {
31514 Stmt::CreateOperator(node)
31515 }
31516}
31517impl From<CreateOperatorClass> for Stmt {
31518 #[inline]
31519 fn from(node: CreateOperatorClass) -> Stmt {
31520 Stmt::CreateOperatorClass(node)
31521 }
31522}
31523impl From<CreateOperatorFamily> for Stmt {
31524 #[inline]
31525 fn from(node: CreateOperatorFamily) -> Stmt {
31526 Stmt::CreateOperatorFamily(node)
31527 }
31528}
31529impl From<CreatePolicy> for Stmt {
31530 #[inline]
31531 fn from(node: CreatePolicy) -> Stmt {
31532 Stmt::CreatePolicy(node)
31533 }
31534}
31535impl From<CreateProcedure> for Stmt {
31536 #[inline]
31537 fn from(node: CreateProcedure) -> Stmt {
31538 Stmt::CreateProcedure(node)
31539 }
31540}
31541impl From<CreatePublication> for Stmt {
31542 #[inline]
31543 fn from(node: CreatePublication) -> Stmt {
31544 Stmt::CreatePublication(node)
31545 }
31546}
31547impl From<CreateRole> for Stmt {
31548 #[inline]
31549 fn from(node: CreateRole) -> Stmt {
31550 Stmt::CreateRole(node)
31551 }
31552}
31553impl From<CreateRule> for Stmt {
31554 #[inline]
31555 fn from(node: CreateRule) -> Stmt {
31556 Stmt::CreateRule(node)
31557 }
31558}
31559impl From<CreateSchema> for Stmt {
31560 #[inline]
31561 fn from(node: CreateSchema) -> Stmt {
31562 Stmt::CreateSchema(node)
31563 }
31564}
31565impl From<CreateSequence> for Stmt {
31566 #[inline]
31567 fn from(node: CreateSequence) -> Stmt {
31568 Stmt::CreateSequence(node)
31569 }
31570}
31571impl From<CreateServer> for Stmt {
31572 #[inline]
31573 fn from(node: CreateServer) -> Stmt {
31574 Stmt::CreateServer(node)
31575 }
31576}
31577impl From<CreateStatistics> for Stmt {
31578 #[inline]
31579 fn from(node: CreateStatistics) -> Stmt {
31580 Stmt::CreateStatistics(node)
31581 }
31582}
31583impl From<CreateSubscription> for Stmt {
31584 #[inline]
31585 fn from(node: CreateSubscription) -> Stmt {
31586 Stmt::CreateSubscription(node)
31587 }
31588}
31589impl From<CreateTable> for Stmt {
31590 #[inline]
31591 fn from(node: CreateTable) -> Stmt {
31592 Stmt::CreateTable(node)
31593 }
31594}
31595impl From<CreateTableAs> for Stmt {
31596 #[inline]
31597 fn from(node: CreateTableAs) -> Stmt {
31598 Stmt::CreateTableAs(node)
31599 }
31600}
31601impl From<CreateTablespace> for Stmt {
31602 #[inline]
31603 fn from(node: CreateTablespace) -> Stmt {
31604 Stmt::CreateTablespace(node)
31605 }
31606}
31607impl From<CreateTextSearchConfiguration> for Stmt {
31608 #[inline]
31609 fn from(node: CreateTextSearchConfiguration) -> Stmt {
31610 Stmt::CreateTextSearchConfiguration(node)
31611 }
31612}
31613impl From<CreateTextSearchDictionary> for Stmt {
31614 #[inline]
31615 fn from(node: CreateTextSearchDictionary) -> Stmt {
31616 Stmt::CreateTextSearchDictionary(node)
31617 }
31618}
31619impl From<CreateTextSearchParser> for Stmt {
31620 #[inline]
31621 fn from(node: CreateTextSearchParser) -> Stmt {
31622 Stmt::CreateTextSearchParser(node)
31623 }
31624}
31625impl From<CreateTextSearchTemplate> for Stmt {
31626 #[inline]
31627 fn from(node: CreateTextSearchTemplate) -> Stmt {
31628 Stmt::CreateTextSearchTemplate(node)
31629 }
31630}
31631impl From<CreateTransform> for Stmt {
31632 #[inline]
31633 fn from(node: CreateTransform) -> Stmt {
31634 Stmt::CreateTransform(node)
31635 }
31636}
31637impl From<CreateTrigger> for Stmt {
31638 #[inline]
31639 fn from(node: CreateTrigger) -> Stmt {
31640 Stmt::CreateTrigger(node)
31641 }
31642}
31643impl From<CreateType> for Stmt {
31644 #[inline]
31645 fn from(node: CreateType) -> Stmt {
31646 Stmt::CreateType(node)
31647 }
31648}
31649impl From<CreateUser> for Stmt {
31650 #[inline]
31651 fn from(node: CreateUser) -> Stmt {
31652 Stmt::CreateUser(node)
31653 }
31654}
31655impl From<CreateUserMapping> for Stmt {
31656 #[inline]
31657 fn from(node: CreateUserMapping) -> Stmt {
31658 Stmt::CreateUserMapping(node)
31659 }
31660}
31661impl From<CreateView> for Stmt {
31662 #[inline]
31663 fn from(node: CreateView) -> Stmt {
31664 Stmt::CreateView(node)
31665 }
31666}
31667impl From<Deallocate> for Stmt {
31668 #[inline]
31669 fn from(node: Deallocate) -> Stmt {
31670 Stmt::Deallocate(node)
31671 }
31672}
31673impl From<Declare> for Stmt {
31674 #[inline]
31675 fn from(node: Declare) -> Stmt {
31676 Stmt::Declare(node)
31677 }
31678}
31679impl From<Delete> for Stmt {
31680 #[inline]
31681 fn from(node: Delete) -> Stmt {
31682 Stmt::Delete(node)
31683 }
31684}
31685impl From<Discard> for Stmt {
31686 #[inline]
31687 fn from(node: Discard) -> Stmt {
31688 Stmt::Discard(node)
31689 }
31690}
31691impl From<Do> for Stmt {
31692 #[inline]
31693 fn from(node: Do) -> Stmt {
31694 Stmt::Do(node)
31695 }
31696}
31697impl From<DropAccessMethod> for Stmt {
31698 #[inline]
31699 fn from(node: DropAccessMethod) -> Stmt {
31700 Stmt::DropAccessMethod(node)
31701 }
31702}
31703impl From<DropAggregate> for Stmt {
31704 #[inline]
31705 fn from(node: DropAggregate) -> Stmt {
31706 Stmt::DropAggregate(node)
31707 }
31708}
31709impl From<DropCast> for Stmt {
31710 #[inline]
31711 fn from(node: DropCast) -> Stmt {
31712 Stmt::DropCast(node)
31713 }
31714}
31715impl From<DropCollation> for Stmt {
31716 #[inline]
31717 fn from(node: DropCollation) -> Stmt {
31718 Stmt::DropCollation(node)
31719 }
31720}
31721impl From<DropConversion> for Stmt {
31722 #[inline]
31723 fn from(node: DropConversion) -> Stmt {
31724 Stmt::DropConversion(node)
31725 }
31726}
31727impl From<DropDatabase> for Stmt {
31728 #[inline]
31729 fn from(node: DropDatabase) -> Stmt {
31730 Stmt::DropDatabase(node)
31731 }
31732}
31733impl From<DropDomain> for Stmt {
31734 #[inline]
31735 fn from(node: DropDomain) -> Stmt {
31736 Stmt::DropDomain(node)
31737 }
31738}
31739impl From<DropEventTrigger> for Stmt {
31740 #[inline]
31741 fn from(node: DropEventTrigger) -> Stmt {
31742 Stmt::DropEventTrigger(node)
31743 }
31744}
31745impl From<DropExtension> for Stmt {
31746 #[inline]
31747 fn from(node: DropExtension) -> Stmt {
31748 Stmt::DropExtension(node)
31749 }
31750}
31751impl From<DropForeignDataWrapper> for Stmt {
31752 #[inline]
31753 fn from(node: DropForeignDataWrapper) -> Stmt {
31754 Stmt::DropForeignDataWrapper(node)
31755 }
31756}
31757impl From<DropForeignTable> for Stmt {
31758 #[inline]
31759 fn from(node: DropForeignTable) -> Stmt {
31760 Stmt::DropForeignTable(node)
31761 }
31762}
31763impl From<DropFunction> for Stmt {
31764 #[inline]
31765 fn from(node: DropFunction) -> Stmt {
31766 Stmt::DropFunction(node)
31767 }
31768}
31769impl From<DropGroup> for Stmt {
31770 #[inline]
31771 fn from(node: DropGroup) -> Stmt {
31772 Stmt::DropGroup(node)
31773 }
31774}
31775impl From<DropIndex> for Stmt {
31776 #[inline]
31777 fn from(node: DropIndex) -> Stmt {
31778 Stmt::DropIndex(node)
31779 }
31780}
31781impl From<DropLanguage> for Stmt {
31782 #[inline]
31783 fn from(node: DropLanguage) -> Stmt {
31784 Stmt::DropLanguage(node)
31785 }
31786}
31787impl From<DropMaterializedView> for Stmt {
31788 #[inline]
31789 fn from(node: DropMaterializedView) -> Stmt {
31790 Stmt::DropMaterializedView(node)
31791 }
31792}
31793impl From<DropOperator> for Stmt {
31794 #[inline]
31795 fn from(node: DropOperator) -> Stmt {
31796 Stmt::DropOperator(node)
31797 }
31798}
31799impl From<DropOperatorClass> for Stmt {
31800 #[inline]
31801 fn from(node: DropOperatorClass) -> Stmt {
31802 Stmt::DropOperatorClass(node)
31803 }
31804}
31805impl From<DropOperatorFamily> for Stmt {
31806 #[inline]
31807 fn from(node: DropOperatorFamily) -> Stmt {
31808 Stmt::DropOperatorFamily(node)
31809 }
31810}
31811impl From<DropOwned> for Stmt {
31812 #[inline]
31813 fn from(node: DropOwned) -> Stmt {
31814 Stmt::DropOwned(node)
31815 }
31816}
31817impl From<DropPolicy> for Stmt {
31818 #[inline]
31819 fn from(node: DropPolicy) -> Stmt {
31820 Stmt::DropPolicy(node)
31821 }
31822}
31823impl From<DropProcedure> for Stmt {
31824 #[inline]
31825 fn from(node: DropProcedure) -> Stmt {
31826 Stmt::DropProcedure(node)
31827 }
31828}
31829impl From<DropPublication> for Stmt {
31830 #[inline]
31831 fn from(node: DropPublication) -> Stmt {
31832 Stmt::DropPublication(node)
31833 }
31834}
31835impl From<DropRole> for Stmt {
31836 #[inline]
31837 fn from(node: DropRole) -> Stmt {
31838 Stmt::DropRole(node)
31839 }
31840}
31841impl From<DropRoutine> for Stmt {
31842 #[inline]
31843 fn from(node: DropRoutine) -> Stmt {
31844 Stmt::DropRoutine(node)
31845 }
31846}
31847impl From<DropRule> for Stmt {
31848 #[inline]
31849 fn from(node: DropRule) -> Stmt {
31850 Stmt::DropRule(node)
31851 }
31852}
31853impl From<DropSchema> for Stmt {
31854 #[inline]
31855 fn from(node: DropSchema) -> Stmt {
31856 Stmt::DropSchema(node)
31857 }
31858}
31859impl From<DropSequence> for Stmt {
31860 #[inline]
31861 fn from(node: DropSequence) -> Stmt {
31862 Stmt::DropSequence(node)
31863 }
31864}
31865impl From<DropServer> for Stmt {
31866 #[inline]
31867 fn from(node: DropServer) -> Stmt {
31868 Stmt::DropServer(node)
31869 }
31870}
31871impl From<DropStatistics> for Stmt {
31872 #[inline]
31873 fn from(node: DropStatistics) -> Stmt {
31874 Stmt::DropStatistics(node)
31875 }
31876}
31877impl From<DropSubscription> for Stmt {
31878 #[inline]
31879 fn from(node: DropSubscription) -> Stmt {
31880 Stmt::DropSubscription(node)
31881 }
31882}
31883impl From<DropTable> for Stmt {
31884 #[inline]
31885 fn from(node: DropTable) -> Stmt {
31886 Stmt::DropTable(node)
31887 }
31888}
31889impl From<DropTablespace> for Stmt {
31890 #[inline]
31891 fn from(node: DropTablespace) -> Stmt {
31892 Stmt::DropTablespace(node)
31893 }
31894}
31895impl From<DropTextSearchConfig> for Stmt {
31896 #[inline]
31897 fn from(node: DropTextSearchConfig) -> Stmt {
31898 Stmt::DropTextSearchConfig(node)
31899 }
31900}
31901impl From<DropTextSearchDict> for Stmt {
31902 #[inline]
31903 fn from(node: DropTextSearchDict) -> Stmt {
31904 Stmt::DropTextSearchDict(node)
31905 }
31906}
31907impl From<DropTextSearchParser> for Stmt {
31908 #[inline]
31909 fn from(node: DropTextSearchParser) -> Stmt {
31910 Stmt::DropTextSearchParser(node)
31911 }
31912}
31913impl From<DropTextSearchTemplate> for Stmt {
31914 #[inline]
31915 fn from(node: DropTextSearchTemplate) -> Stmt {
31916 Stmt::DropTextSearchTemplate(node)
31917 }
31918}
31919impl From<DropTransform> for Stmt {
31920 #[inline]
31921 fn from(node: DropTransform) -> Stmt {
31922 Stmt::DropTransform(node)
31923 }
31924}
31925impl From<DropTrigger> for Stmt {
31926 #[inline]
31927 fn from(node: DropTrigger) -> Stmt {
31928 Stmt::DropTrigger(node)
31929 }
31930}
31931impl From<DropType> for Stmt {
31932 #[inline]
31933 fn from(node: DropType) -> Stmt {
31934 Stmt::DropType(node)
31935 }
31936}
31937impl From<DropUser> for Stmt {
31938 #[inline]
31939 fn from(node: DropUser) -> Stmt {
31940 Stmt::DropUser(node)
31941 }
31942}
31943impl From<DropUserMapping> for Stmt {
31944 #[inline]
31945 fn from(node: DropUserMapping) -> Stmt {
31946 Stmt::DropUserMapping(node)
31947 }
31948}
31949impl From<DropView> for Stmt {
31950 #[inline]
31951 fn from(node: DropView) -> Stmt {
31952 Stmt::DropView(node)
31953 }
31954}
31955impl From<Execute> for Stmt {
31956 #[inline]
31957 fn from(node: Execute) -> Stmt {
31958 Stmt::Execute(node)
31959 }
31960}
31961impl From<Explain> for Stmt {
31962 #[inline]
31963 fn from(node: Explain) -> Stmt {
31964 Stmt::Explain(node)
31965 }
31966}
31967impl From<Fetch> for Stmt {
31968 #[inline]
31969 fn from(node: Fetch) -> Stmt {
31970 Stmt::Fetch(node)
31971 }
31972}
31973impl From<Grant> for Stmt {
31974 #[inline]
31975 fn from(node: Grant) -> Stmt {
31976 Stmt::Grant(node)
31977 }
31978}
31979impl From<ImportForeignSchema> for Stmt {
31980 #[inline]
31981 fn from(node: ImportForeignSchema) -> Stmt {
31982 Stmt::ImportForeignSchema(node)
31983 }
31984}
31985impl From<Insert> for Stmt {
31986 #[inline]
31987 fn from(node: Insert) -> Stmt {
31988 Stmt::Insert(node)
31989 }
31990}
31991impl From<Listen> for Stmt {
31992 #[inline]
31993 fn from(node: Listen) -> Stmt {
31994 Stmt::Listen(node)
31995 }
31996}
31997impl From<Load> for Stmt {
31998 #[inline]
31999 fn from(node: Load) -> Stmt {
32000 Stmt::Load(node)
32001 }
32002}
32003impl From<Lock> for Stmt {
32004 #[inline]
32005 fn from(node: Lock) -> Stmt {
32006 Stmt::Lock(node)
32007 }
32008}
32009impl From<Merge> for Stmt {
32010 #[inline]
32011 fn from(node: Merge) -> Stmt {
32012 Stmt::Merge(node)
32013 }
32014}
32015impl From<Move> for Stmt {
32016 #[inline]
32017 fn from(node: Move) -> Stmt {
32018 Stmt::Move(node)
32019 }
32020}
32021impl From<Notify> for Stmt {
32022 #[inline]
32023 fn from(node: Notify) -> Stmt {
32024 Stmt::Notify(node)
32025 }
32026}
32027impl From<ParenSelect> for Stmt {
32028 #[inline]
32029 fn from(node: ParenSelect) -> Stmt {
32030 Stmt::ParenSelect(node)
32031 }
32032}
32033impl From<Prepare> for Stmt {
32034 #[inline]
32035 fn from(node: Prepare) -> Stmt {
32036 Stmt::Prepare(node)
32037 }
32038}
32039impl From<PrepareTransaction> for Stmt {
32040 #[inline]
32041 fn from(node: PrepareTransaction) -> Stmt {
32042 Stmt::PrepareTransaction(node)
32043 }
32044}
32045impl From<Reassign> for Stmt {
32046 #[inline]
32047 fn from(node: Reassign) -> Stmt {
32048 Stmt::Reassign(node)
32049 }
32050}
32051impl From<Refresh> for Stmt {
32052 #[inline]
32053 fn from(node: Refresh) -> Stmt {
32054 Stmt::Refresh(node)
32055 }
32056}
32057impl From<Reindex> for Stmt {
32058 #[inline]
32059 fn from(node: Reindex) -> Stmt {
32060 Stmt::Reindex(node)
32061 }
32062}
32063impl From<ReleaseSavepoint> for Stmt {
32064 #[inline]
32065 fn from(node: ReleaseSavepoint) -> Stmt {
32066 Stmt::ReleaseSavepoint(node)
32067 }
32068}
32069impl From<Reset> for Stmt {
32070 #[inline]
32071 fn from(node: Reset) -> Stmt {
32072 Stmt::Reset(node)
32073 }
32074}
32075impl From<ResetSessionAuth> for Stmt {
32076 #[inline]
32077 fn from(node: ResetSessionAuth) -> Stmt {
32078 Stmt::ResetSessionAuth(node)
32079 }
32080}
32081impl From<Revoke> for Stmt {
32082 #[inline]
32083 fn from(node: Revoke) -> Stmt {
32084 Stmt::Revoke(node)
32085 }
32086}
32087impl From<Rollback> for Stmt {
32088 #[inline]
32089 fn from(node: Rollback) -> Stmt {
32090 Stmt::Rollback(node)
32091 }
32092}
32093impl From<Savepoint> for Stmt {
32094 #[inline]
32095 fn from(node: Savepoint) -> Stmt {
32096 Stmt::Savepoint(node)
32097 }
32098}
32099impl From<SecurityLabel> for Stmt {
32100 #[inline]
32101 fn from(node: SecurityLabel) -> Stmt {
32102 Stmt::SecurityLabel(node)
32103 }
32104}
32105impl From<Select> for Stmt {
32106 #[inline]
32107 fn from(node: Select) -> Stmt {
32108 Stmt::Select(node)
32109 }
32110}
32111impl From<SelectInto> for Stmt {
32112 #[inline]
32113 fn from(node: SelectInto) -> Stmt {
32114 Stmt::SelectInto(node)
32115 }
32116}
32117impl From<Set> for Stmt {
32118 #[inline]
32119 fn from(node: Set) -> Stmt {
32120 Stmt::Set(node)
32121 }
32122}
32123impl From<SetConstraints> for Stmt {
32124 #[inline]
32125 fn from(node: SetConstraints) -> Stmt {
32126 Stmt::SetConstraints(node)
32127 }
32128}
32129impl From<SetRole> for Stmt {
32130 #[inline]
32131 fn from(node: SetRole) -> Stmt {
32132 Stmt::SetRole(node)
32133 }
32134}
32135impl From<SetSessionAuth> for Stmt {
32136 #[inline]
32137 fn from(node: SetSessionAuth) -> Stmt {
32138 Stmt::SetSessionAuth(node)
32139 }
32140}
32141impl From<SetTransaction> for Stmt {
32142 #[inline]
32143 fn from(node: SetTransaction) -> Stmt {
32144 Stmt::SetTransaction(node)
32145 }
32146}
32147impl From<Show> for Stmt {
32148 #[inline]
32149 fn from(node: Show) -> Stmt {
32150 Stmt::Show(node)
32151 }
32152}
32153impl From<Table> for Stmt {
32154 #[inline]
32155 fn from(node: Table) -> Stmt {
32156 Stmt::Table(node)
32157 }
32158}
32159impl From<Truncate> for Stmt {
32160 #[inline]
32161 fn from(node: Truncate) -> Stmt {
32162 Stmt::Truncate(node)
32163 }
32164}
32165impl From<Unlisten> for Stmt {
32166 #[inline]
32167 fn from(node: Unlisten) -> Stmt {
32168 Stmt::Unlisten(node)
32169 }
32170}
32171impl From<Update> for Stmt {
32172 #[inline]
32173 fn from(node: Update) -> Stmt {
32174 Stmt::Update(node)
32175 }
32176}
32177impl From<Vacuum> for Stmt {
32178 #[inline]
32179 fn from(node: Vacuum) -> Stmt {
32180 Stmt::Vacuum(node)
32181 }
32182}
32183impl From<Values> for Stmt {
32184 #[inline]
32185 fn from(node: Values) -> Stmt {
32186 Stmt::Values(node)
32187 }
32188}
32189impl AstNode for TableArg {
32190 #[inline]
32191 fn can_cast(kind: SyntaxKind) -> bool {
32192 matches!(kind, SyntaxKind::COLUMN | SyntaxKind::LIKE_CLAUSE)
32193 }
32194 #[inline]
32195 fn cast(syntax: SyntaxNode) -> Option<Self> {
32196 let res = match syntax.kind() {
32197 SyntaxKind::COLUMN => TableArg::Column(Column { syntax }),
32198 SyntaxKind::LIKE_CLAUSE => TableArg::LikeClause(LikeClause { syntax }),
32199 _ => {
32200 if let Some(result) = TableConstraint::cast(syntax) {
32201 return Some(TableArg::TableConstraint(result));
32202 }
32203 return None;
32204 }
32205 };
32206 Some(res)
32207 }
32208 #[inline]
32209 fn syntax(&self) -> &SyntaxNode {
32210 match self {
32211 TableArg::Column(it) => &it.syntax,
32212 TableArg::LikeClause(it) => &it.syntax,
32213 TableArg::TableConstraint(it) => it.syntax(),
32214 }
32215 }
32216}
32217impl From<Column> for TableArg {
32218 #[inline]
32219 fn from(node: Column) -> TableArg {
32220 TableArg::Column(node)
32221 }
32222}
32223impl From<LikeClause> for TableArg {
32224 #[inline]
32225 fn from(node: LikeClause) -> TableArg {
32226 TableArg::LikeClause(node)
32227 }
32228}
32229impl AstNode for TableConstraint {
32230 #[inline]
32231 fn can_cast(kind: SyntaxKind) -> bool {
32232 matches!(
32233 kind,
32234 SyntaxKind::CHECK_CONSTRAINT
32235 | SyntaxKind::EXCLUDE_CONSTRAINT
32236 | SyntaxKind::FOREIGN_KEY_CONSTRAINT
32237 | SyntaxKind::PRIMARY_KEY_CONSTRAINT
32238 | SyntaxKind::UNIQUE_CONSTRAINT
32239 )
32240 }
32241 #[inline]
32242 fn cast(syntax: SyntaxNode) -> Option<Self> {
32243 let res = match syntax.kind() {
32244 SyntaxKind::CHECK_CONSTRAINT => {
32245 TableConstraint::CheckConstraint(CheckConstraint { syntax })
32246 }
32247 SyntaxKind::EXCLUDE_CONSTRAINT => {
32248 TableConstraint::ExcludeConstraint(ExcludeConstraint { syntax })
32249 }
32250 SyntaxKind::FOREIGN_KEY_CONSTRAINT => {
32251 TableConstraint::ForeignKeyConstraint(ForeignKeyConstraint { syntax })
32252 }
32253 SyntaxKind::PRIMARY_KEY_CONSTRAINT => {
32254 TableConstraint::PrimaryKeyConstraint(PrimaryKeyConstraint { syntax })
32255 }
32256 SyntaxKind::UNIQUE_CONSTRAINT => {
32257 TableConstraint::UniqueConstraint(UniqueConstraint { syntax })
32258 }
32259 _ => {
32260 return None;
32261 }
32262 };
32263 Some(res)
32264 }
32265 #[inline]
32266 fn syntax(&self) -> &SyntaxNode {
32267 match self {
32268 TableConstraint::CheckConstraint(it) => &it.syntax,
32269 TableConstraint::ExcludeConstraint(it) => &it.syntax,
32270 TableConstraint::ForeignKeyConstraint(it) => &it.syntax,
32271 TableConstraint::PrimaryKeyConstraint(it) => &it.syntax,
32272 TableConstraint::UniqueConstraint(it) => &it.syntax,
32273 }
32274 }
32275}
32276impl From<CheckConstraint> for TableConstraint {
32277 #[inline]
32278 fn from(node: CheckConstraint) -> TableConstraint {
32279 TableConstraint::CheckConstraint(node)
32280 }
32281}
32282impl From<ExcludeConstraint> for TableConstraint {
32283 #[inline]
32284 fn from(node: ExcludeConstraint) -> TableConstraint {
32285 TableConstraint::ExcludeConstraint(node)
32286 }
32287}
32288impl From<ForeignKeyConstraint> for TableConstraint {
32289 #[inline]
32290 fn from(node: ForeignKeyConstraint) -> TableConstraint {
32291 TableConstraint::ForeignKeyConstraint(node)
32292 }
32293}
32294impl From<PrimaryKeyConstraint> for TableConstraint {
32295 #[inline]
32296 fn from(node: PrimaryKeyConstraint) -> TableConstraint {
32297 TableConstraint::PrimaryKeyConstraint(node)
32298 }
32299}
32300impl From<UniqueConstraint> for TableConstraint {
32301 #[inline]
32302 fn from(node: UniqueConstraint) -> TableConstraint {
32303 TableConstraint::UniqueConstraint(node)
32304 }
32305}
32306impl AstNode for Timezone {
32307 #[inline]
32308 fn can_cast(kind: SyntaxKind) -> bool {
32309 matches!(
32310 kind,
32311 SyntaxKind::WITH_TIMEZONE | SyntaxKind::WITHOUT_TIMEZONE
32312 )
32313 }
32314 #[inline]
32315 fn cast(syntax: SyntaxNode) -> Option<Self> {
32316 let res = match syntax.kind() {
32317 SyntaxKind::WITH_TIMEZONE => Timezone::WithTimezone(WithTimezone { syntax }),
32318 SyntaxKind::WITHOUT_TIMEZONE => Timezone::WithoutTimezone(WithoutTimezone { syntax }),
32319 _ => {
32320 return None;
32321 }
32322 };
32323 Some(res)
32324 }
32325 #[inline]
32326 fn syntax(&self) -> &SyntaxNode {
32327 match self {
32328 Timezone::WithTimezone(it) => &it.syntax,
32329 Timezone::WithoutTimezone(it) => &it.syntax,
32330 }
32331 }
32332}
32333impl From<WithTimezone> for Timezone {
32334 #[inline]
32335 fn from(node: WithTimezone) -> Timezone {
32336 Timezone::WithTimezone(node)
32337 }
32338}
32339impl From<WithoutTimezone> for Timezone {
32340 #[inline]
32341 fn from(node: WithoutTimezone) -> Timezone {
32342 Timezone::WithoutTimezone(node)
32343 }
32344}
32345impl AstNode for TransactionMode {
32346 #[inline]
32347 fn can_cast(kind: SyntaxKind) -> bool {
32348 matches!(
32349 kind,
32350 SyntaxKind::DEFERRABLE
32351 | SyntaxKind::NOT_DEFERRABLE
32352 | SyntaxKind::READ_COMMITTED
32353 | SyntaxKind::READ_ONLY
32354 | SyntaxKind::READ_UNCOMMITTED
32355 | SyntaxKind::READ_WRITE
32356 | SyntaxKind::REPEATABLE_READ
32357 | SyntaxKind::SERIALIZABLE
32358 )
32359 }
32360 #[inline]
32361 fn cast(syntax: SyntaxNode) -> Option<Self> {
32362 let res = match syntax.kind() {
32363 SyntaxKind::DEFERRABLE => TransactionMode::Deferrable(Deferrable { syntax }),
32364 SyntaxKind::NOT_DEFERRABLE => TransactionMode::NotDeferrable(NotDeferrable { syntax }),
32365 SyntaxKind::READ_COMMITTED => TransactionMode::ReadCommitted(ReadCommitted { syntax }),
32366 SyntaxKind::READ_ONLY => TransactionMode::ReadOnly(ReadOnly { syntax }),
32367 SyntaxKind::READ_UNCOMMITTED => {
32368 TransactionMode::ReadUncommitted(ReadUncommitted { syntax })
32369 }
32370 SyntaxKind::READ_WRITE => TransactionMode::ReadWrite(ReadWrite { syntax }),
32371 SyntaxKind::REPEATABLE_READ => {
32372 TransactionMode::RepeatableRead(RepeatableRead { syntax })
32373 }
32374 SyntaxKind::SERIALIZABLE => TransactionMode::Serializable(Serializable { syntax }),
32375 _ => {
32376 return None;
32377 }
32378 };
32379 Some(res)
32380 }
32381 #[inline]
32382 fn syntax(&self) -> &SyntaxNode {
32383 match self {
32384 TransactionMode::Deferrable(it) => &it.syntax,
32385 TransactionMode::NotDeferrable(it) => &it.syntax,
32386 TransactionMode::ReadCommitted(it) => &it.syntax,
32387 TransactionMode::ReadOnly(it) => &it.syntax,
32388 TransactionMode::ReadUncommitted(it) => &it.syntax,
32389 TransactionMode::ReadWrite(it) => &it.syntax,
32390 TransactionMode::RepeatableRead(it) => &it.syntax,
32391 TransactionMode::Serializable(it) => &it.syntax,
32392 }
32393 }
32394}
32395impl From<Deferrable> for TransactionMode {
32396 #[inline]
32397 fn from(node: Deferrable) -> TransactionMode {
32398 TransactionMode::Deferrable(node)
32399 }
32400}
32401impl From<NotDeferrable> for TransactionMode {
32402 #[inline]
32403 fn from(node: NotDeferrable) -> TransactionMode {
32404 TransactionMode::NotDeferrable(node)
32405 }
32406}
32407impl From<ReadCommitted> for TransactionMode {
32408 #[inline]
32409 fn from(node: ReadCommitted) -> TransactionMode {
32410 TransactionMode::ReadCommitted(node)
32411 }
32412}
32413impl From<ReadOnly> for TransactionMode {
32414 #[inline]
32415 fn from(node: ReadOnly) -> TransactionMode {
32416 TransactionMode::ReadOnly(node)
32417 }
32418}
32419impl From<ReadUncommitted> for TransactionMode {
32420 #[inline]
32421 fn from(node: ReadUncommitted) -> TransactionMode {
32422 TransactionMode::ReadUncommitted(node)
32423 }
32424}
32425impl From<ReadWrite> for TransactionMode {
32426 #[inline]
32427 fn from(node: ReadWrite) -> TransactionMode {
32428 TransactionMode::ReadWrite(node)
32429 }
32430}
32431impl From<RepeatableRead> for TransactionMode {
32432 #[inline]
32433 fn from(node: RepeatableRead) -> TransactionMode {
32434 TransactionMode::RepeatableRead(node)
32435 }
32436}
32437impl From<Serializable> for TransactionMode {
32438 #[inline]
32439 fn from(node: Serializable) -> TransactionMode {
32440 TransactionMode::Serializable(node)
32441 }
32442}
32443impl AstNode for Type {
32444 #[inline]
32445 fn can_cast(kind: SyntaxKind) -> bool {
32446 matches!(
32447 kind,
32448 SyntaxKind::ARRAY_TYPE
32449 | SyntaxKind::BIT_TYPE
32450 | SyntaxKind::CHAR_TYPE
32451 | SyntaxKind::DOUBLE_TYPE
32452 | SyntaxKind::EXPR_TYPE
32453 | SyntaxKind::INTERVAL_TYPE
32454 | SyntaxKind::PATH_TYPE
32455 | SyntaxKind::PERCENT_TYPE
32456 | SyntaxKind::TIME_TYPE
32457 )
32458 }
32459 #[inline]
32460 fn cast(syntax: SyntaxNode) -> Option<Self> {
32461 let res = match syntax.kind() {
32462 SyntaxKind::ARRAY_TYPE => Type::ArrayType(ArrayType { syntax }),
32463 SyntaxKind::BIT_TYPE => Type::BitType(BitType { syntax }),
32464 SyntaxKind::CHAR_TYPE => Type::CharType(CharType { syntax }),
32465 SyntaxKind::DOUBLE_TYPE => Type::DoubleType(DoubleType { syntax }),
32466 SyntaxKind::EXPR_TYPE => Type::ExprType(ExprType { syntax }),
32467 SyntaxKind::INTERVAL_TYPE => Type::IntervalType(IntervalType { syntax }),
32468 SyntaxKind::PATH_TYPE => Type::PathType(PathType { syntax }),
32469 SyntaxKind::PERCENT_TYPE => Type::PercentType(PercentType { syntax }),
32470 SyntaxKind::TIME_TYPE => Type::TimeType(TimeType { syntax }),
32471 _ => {
32472 return None;
32473 }
32474 };
32475 Some(res)
32476 }
32477 #[inline]
32478 fn syntax(&self) -> &SyntaxNode {
32479 match self {
32480 Type::ArrayType(it) => &it.syntax,
32481 Type::BitType(it) => &it.syntax,
32482 Type::CharType(it) => &it.syntax,
32483 Type::DoubleType(it) => &it.syntax,
32484 Type::ExprType(it) => &it.syntax,
32485 Type::IntervalType(it) => &it.syntax,
32486 Type::PathType(it) => &it.syntax,
32487 Type::PercentType(it) => &it.syntax,
32488 Type::TimeType(it) => &it.syntax,
32489 }
32490 }
32491}
32492impl From<ArrayType> for Type {
32493 #[inline]
32494 fn from(node: ArrayType) -> Type {
32495 Type::ArrayType(node)
32496 }
32497}
32498impl From<BitType> for Type {
32499 #[inline]
32500 fn from(node: BitType) -> Type {
32501 Type::BitType(node)
32502 }
32503}
32504impl From<CharType> for Type {
32505 #[inline]
32506 fn from(node: CharType) -> Type {
32507 Type::CharType(node)
32508 }
32509}
32510impl From<DoubleType> for Type {
32511 #[inline]
32512 fn from(node: DoubleType) -> Type {
32513 Type::DoubleType(node)
32514 }
32515}
32516impl From<ExprType> for Type {
32517 #[inline]
32518 fn from(node: ExprType) -> Type {
32519 Type::ExprType(node)
32520 }
32521}
32522impl From<IntervalType> for Type {
32523 #[inline]
32524 fn from(node: IntervalType) -> Type {
32525 Type::IntervalType(node)
32526 }
32527}
32528impl From<PathType> for Type {
32529 #[inline]
32530 fn from(node: PathType) -> Type {
32531 Type::PathType(node)
32532 }
32533}
32534impl From<PercentType> for Type {
32535 #[inline]
32536 fn from(node: PercentType) -> Type {
32537 Type::PercentType(node)
32538 }
32539}
32540impl From<TimeType> for Type {
32541 #[inline]
32542 fn from(node: TimeType) -> Type {
32543 Type::TimeType(node)
32544 }
32545}
32546impl AstNode for WithQuery {
32547 #[inline]
32548 fn can_cast(kind: SyntaxKind) -> bool {
32549 matches!(
32550 kind,
32551 SyntaxKind::COMPOUND_SELECT
32552 | SyntaxKind::DELETE
32553 | SyntaxKind::INSERT
32554 | SyntaxKind::MERGE
32555 | SyntaxKind::PAREN_SELECT
32556 | SyntaxKind::SELECT
32557 | SyntaxKind::TABLE
32558 | SyntaxKind::UPDATE
32559 | SyntaxKind::VALUES
32560 )
32561 }
32562 #[inline]
32563 fn cast(syntax: SyntaxNode) -> Option<Self> {
32564 let res = match syntax.kind() {
32565 SyntaxKind::COMPOUND_SELECT => WithQuery::CompoundSelect(CompoundSelect { syntax }),
32566 SyntaxKind::DELETE => WithQuery::Delete(Delete { syntax }),
32567 SyntaxKind::INSERT => WithQuery::Insert(Insert { syntax }),
32568 SyntaxKind::MERGE => WithQuery::Merge(Merge { syntax }),
32569 SyntaxKind::PAREN_SELECT => WithQuery::ParenSelect(ParenSelect { syntax }),
32570 SyntaxKind::SELECT => WithQuery::Select(Select { syntax }),
32571 SyntaxKind::TABLE => WithQuery::Table(Table { syntax }),
32572 SyntaxKind::UPDATE => WithQuery::Update(Update { syntax }),
32573 SyntaxKind::VALUES => WithQuery::Values(Values { syntax }),
32574 _ => {
32575 return None;
32576 }
32577 };
32578 Some(res)
32579 }
32580 #[inline]
32581 fn syntax(&self) -> &SyntaxNode {
32582 match self {
32583 WithQuery::CompoundSelect(it) => &it.syntax,
32584 WithQuery::Delete(it) => &it.syntax,
32585 WithQuery::Insert(it) => &it.syntax,
32586 WithQuery::Merge(it) => &it.syntax,
32587 WithQuery::ParenSelect(it) => &it.syntax,
32588 WithQuery::Select(it) => &it.syntax,
32589 WithQuery::Table(it) => &it.syntax,
32590 WithQuery::Update(it) => &it.syntax,
32591 WithQuery::Values(it) => &it.syntax,
32592 }
32593 }
32594}
32595impl From<CompoundSelect> for WithQuery {
32596 #[inline]
32597 fn from(node: CompoundSelect) -> WithQuery {
32598 WithQuery::CompoundSelect(node)
32599 }
32600}
32601impl From<Delete> for WithQuery {
32602 #[inline]
32603 fn from(node: Delete) -> WithQuery {
32604 WithQuery::Delete(node)
32605 }
32606}
32607impl From<Insert> for WithQuery {
32608 #[inline]
32609 fn from(node: Insert) -> WithQuery {
32610 WithQuery::Insert(node)
32611 }
32612}
32613impl From<Merge> for WithQuery {
32614 #[inline]
32615 fn from(node: Merge) -> WithQuery {
32616 WithQuery::Merge(node)
32617 }
32618}
32619impl From<ParenSelect> for WithQuery {
32620 #[inline]
32621 fn from(node: ParenSelect) -> WithQuery {
32622 WithQuery::ParenSelect(node)
32623 }
32624}
32625impl From<Select> for WithQuery {
32626 #[inline]
32627 fn from(node: Select) -> WithQuery {
32628 WithQuery::Select(node)
32629 }
32630}
32631impl From<Table> for WithQuery {
32632 #[inline]
32633 fn from(node: Table) -> WithQuery {
32634 WithQuery::Table(node)
32635 }
32636}
32637impl From<Update> for WithQuery {
32638 #[inline]
32639 fn from(node: Update) -> WithQuery {
32640 WithQuery::Update(node)
32641 }
32642}
32643impl From<Values> for WithQuery {
32644 #[inline]
32645 fn from(node: Values) -> WithQuery {
32646 WithQuery::Values(node)
32647 }
32648}