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 role(&self) -> Option<Role> {
1642 support::child(&self.syntax)
1643 }
1644 #[inline]
1645 pub fn server_name(&self) -> Option<ServerName> {
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 user_token(&self) -> Option<SyntaxToken> {
1662 support::token(&self.syntax, SyntaxKind::USER_KW)
1663 }
1664}
1665
1666#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1667pub struct AlterView {
1668 pub(crate) syntax: SyntaxNode,
1669}
1670impl AlterView {
1671 #[inline]
1672 pub fn path(&self) -> Option<Path> {
1673 support::child(&self.syntax)
1674 }
1675 #[inline]
1676 pub fn alter_token(&self) -> Option<SyntaxToken> {
1677 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1678 }
1679 #[inline]
1680 pub fn view_token(&self) -> Option<SyntaxToken> {
1681 support::token(&self.syntax, SyntaxKind::VIEW_KW)
1682 }
1683}
1684
1685#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1686pub struct Analyze {
1687 pub(crate) syntax: SyntaxNode,
1688}
1689impl Analyze {
1690 #[inline]
1691 pub fn option_item_list(&self) -> Option<OptionItemList> {
1692 support::child(&self.syntax)
1693 }
1694 #[inline]
1695 pub fn table_and_columns_list(&self) -> Option<TableAndColumnsList> {
1696 support::child(&self.syntax)
1697 }
1698 #[inline]
1699 pub fn analyse_token(&self) -> Option<SyntaxToken> {
1700 support::token(&self.syntax, SyntaxKind::ANALYSE_KW)
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 return_func_option(&self) -> Option<ReturnFuncOption> {
2050 support::child(&self.syntax)
2051 }
2052 #[inline]
2053 pub fn stmt(&self) -> Option<Stmt> {
2054 support::child(&self.syntax)
2055 }
2056 #[inline]
2057 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
2058 support::token(&self.syntax, SyntaxKind::SEMICOLON)
2059 }
2060}
2061
2062#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2063pub struct BeginFuncOptionList {
2064 pub(crate) syntax: SyntaxNode,
2065}
2066impl BeginFuncOptionList {
2067 #[inline]
2068 pub fn begin_func_options(&self) -> AstChildren<BeginFuncOption> {
2069 support::children(&self.syntax)
2070 }
2071 #[inline]
2072 pub fn atomic_token(&self) -> Option<SyntaxToken> {
2073 support::token(&self.syntax, SyntaxKind::ATOMIC_KW)
2074 }
2075 #[inline]
2076 pub fn begin_token(&self) -> Option<SyntaxToken> {
2077 support::token(&self.syntax, SyntaxKind::BEGIN_KW)
2078 }
2079 #[inline]
2080 pub fn end_token(&self) -> Option<SyntaxToken> {
2081 support::token(&self.syntax, SyntaxKind::END_KW)
2082 }
2083}
2084
2085#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2086pub struct BetweenExpr {
2087 pub(crate) syntax: SyntaxNode,
2088}
2089impl BetweenExpr {
2090 #[inline]
2091 pub fn and_token(&self) -> Option<SyntaxToken> {
2092 support::token(&self.syntax, SyntaxKind::AND_KW)
2093 }
2094 #[inline]
2095 pub fn between_token(&self) -> Option<SyntaxToken> {
2096 support::token(&self.syntax, SyntaxKind::BETWEEN_KW)
2097 }
2098}
2099
2100#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2101pub struct BinExpr {
2102 pub(crate) syntax: SyntaxNode,
2103}
2104impl BinExpr {
2105 #[inline]
2106 pub fn op(&self) -> Option<Op> {
2107 support::child(&self.syntax)
2108 }
2109}
2110
2111#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2112pub struct BitType {
2113 pub(crate) syntax: SyntaxNode,
2114}
2115impl BitType {
2116 #[inline]
2117 pub fn arg_list(&self) -> Option<ArgList> {
2118 support::child(&self.syntax)
2119 }
2120 #[inline]
2121 pub fn bit_token(&self) -> Option<SyntaxToken> {
2122 support::token(&self.syntax, SyntaxKind::BIT_KW)
2123 }
2124 #[inline]
2125 pub fn varying_token(&self) -> Option<SyntaxToken> {
2126 support::token(&self.syntax, SyntaxKind::VARYING_KW)
2127 }
2128}
2129
2130#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2131pub struct Call {
2132 pub(crate) syntax: SyntaxNode,
2133}
2134impl Call {
2135 #[inline]
2136 pub fn arg_list(&self) -> Option<ArgList> {
2137 support::child(&self.syntax)
2138 }
2139 #[inline]
2140 pub fn path(&self) -> Option<Path> {
2141 support::child(&self.syntax)
2142 }
2143 #[inline]
2144 pub fn call_token(&self) -> Option<SyntaxToken> {
2145 support::token(&self.syntax, SyntaxKind::CALL_KW)
2146 }
2147}
2148
2149#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2150pub struct CallExpr {
2151 pub(crate) syntax: SyntaxNode,
2152}
2153impl CallExpr {
2154 #[inline]
2155 pub fn all_fn(&self) -> Option<AllFn> {
2156 support::child(&self.syntax)
2157 }
2158 #[inline]
2159 pub fn any_fn(&self) -> Option<AnyFn> {
2160 support::child(&self.syntax)
2161 }
2162 #[inline]
2163 pub fn arg_list(&self) -> Option<ArgList> {
2164 support::child(&self.syntax)
2165 }
2166 #[inline]
2167 pub fn exists_fn(&self) -> Option<ExistsFn> {
2168 support::child(&self.syntax)
2169 }
2170 #[inline]
2171 pub fn expr(&self) -> Option<Expr> {
2172 support::child(&self.syntax)
2173 }
2174 #[inline]
2175 pub fn extract_fn(&self) -> Option<ExtractFn> {
2176 support::child(&self.syntax)
2177 }
2178 #[inline]
2179 pub fn filter_clause(&self) -> Option<FilterClause> {
2180 support::child(&self.syntax)
2181 }
2182 #[inline]
2183 pub fn json_array_agg_fn(&self) -> Option<JsonArrayAggFn> {
2184 support::child(&self.syntax)
2185 }
2186 #[inline]
2187 pub fn json_array_fn(&self) -> Option<JsonArrayFn> {
2188 support::child(&self.syntax)
2189 }
2190 #[inline]
2191 pub fn json_exists_fn(&self) -> Option<JsonExistsFn> {
2192 support::child(&self.syntax)
2193 }
2194 #[inline]
2195 pub fn json_fn(&self) -> Option<JsonFn> {
2196 support::child(&self.syntax)
2197 }
2198 #[inline]
2199 pub fn json_object_agg_fn(&self) -> Option<JsonObjectAggFn> {
2200 support::child(&self.syntax)
2201 }
2202 #[inline]
2203 pub fn json_object_fn(&self) -> Option<JsonObjectFn> {
2204 support::child(&self.syntax)
2205 }
2206 #[inline]
2207 pub fn json_query_fn(&self) -> Option<JsonQueryFn> {
2208 support::child(&self.syntax)
2209 }
2210 #[inline]
2211 pub fn json_scalar_fn(&self) -> Option<JsonScalarFn> {
2212 support::child(&self.syntax)
2213 }
2214 #[inline]
2215 pub fn json_serialize_fn(&self) -> Option<JsonSerializeFn> {
2216 support::child(&self.syntax)
2217 }
2218 #[inline]
2219 pub fn json_value_fn(&self) -> Option<JsonValueFn> {
2220 support::child(&self.syntax)
2221 }
2222 #[inline]
2223 pub fn over_clause(&self) -> Option<OverClause> {
2224 support::child(&self.syntax)
2225 }
2226 #[inline]
2227 pub fn overlay_fn(&self) -> Option<OverlayFn> {
2228 support::child(&self.syntax)
2229 }
2230 #[inline]
2231 pub fn position_fn(&self) -> Option<PositionFn> {
2232 support::child(&self.syntax)
2233 }
2234 #[inline]
2235 pub fn some_fn(&self) -> Option<SomeFn> {
2236 support::child(&self.syntax)
2237 }
2238 #[inline]
2239 pub fn substring_fn(&self) -> Option<SubstringFn> {
2240 support::child(&self.syntax)
2241 }
2242 #[inline]
2243 pub fn trim_fn(&self) -> Option<TrimFn> {
2244 support::child(&self.syntax)
2245 }
2246 #[inline]
2247 pub fn within_clause(&self) -> Option<WithinClause> {
2248 support::child(&self.syntax)
2249 }
2250 #[inline]
2251 pub fn xml_element_fn(&self) -> Option<XmlElementFn> {
2252 support::child(&self.syntax)
2253 }
2254 #[inline]
2255 pub fn xml_exists_fn(&self) -> Option<XmlExistsFn> {
2256 support::child(&self.syntax)
2257 }
2258 #[inline]
2259 pub fn xml_forest_fn(&self) -> Option<XmlForestFn> {
2260 support::child(&self.syntax)
2261 }
2262 #[inline]
2263 pub fn xml_parse_fn(&self) -> Option<XmlParseFn> {
2264 support::child(&self.syntax)
2265 }
2266 #[inline]
2267 pub fn xml_pi_fn(&self) -> Option<XmlPiFn> {
2268 support::child(&self.syntax)
2269 }
2270 #[inline]
2271 pub fn xml_root_fn(&self) -> Option<XmlRootFn> {
2272 support::child(&self.syntax)
2273 }
2274 #[inline]
2275 pub fn xml_serialize_fn(&self) -> Option<XmlSerializeFn> {
2276 support::child(&self.syntax)
2277 }
2278}
2279
2280#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2281pub struct Cascade {
2282 pub(crate) syntax: SyntaxNode,
2283}
2284impl Cascade {
2285 #[inline]
2286 pub fn cascade_token(&self) -> Option<SyntaxToken> {
2287 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
2288 }
2289}
2290
2291#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2292pub struct CaseExpr {
2293 pub(crate) syntax: SyntaxNode,
2294}
2295impl CaseExpr {
2296 #[inline]
2297 pub fn else_clause(&self) -> Option<ElseClause> {
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 when_clause_list(&self) -> Option<WhenClauseList> {
2306 support::child(&self.syntax)
2307 }
2308 #[inline]
2309 pub fn case_token(&self) -> Option<SyntaxToken> {
2310 support::token(&self.syntax, SyntaxKind::CASE_KW)
2311 }
2312}
2313
2314#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2315pub struct CastExpr {
2316 pub(crate) syntax: SyntaxNode,
2317}
2318impl CastExpr {
2319 #[inline]
2320 pub fn colon_colon(&self) -> Option<ColonColon> {
2321 support::child(&self.syntax)
2322 }
2323 #[inline]
2324 pub fn expr(&self) -> Option<Expr> {
2325 support::child(&self.syntax)
2326 }
2327 #[inline]
2328 pub fn literal(&self) -> Option<Literal> {
2329 support::child(&self.syntax)
2330 }
2331 #[inline]
2332 pub fn ty(&self) -> Option<Type> {
2333 support::child(&self.syntax)
2334 }
2335 #[inline]
2336 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
2337 support::token(&self.syntax, SyntaxKind::L_PAREN)
2338 }
2339 #[inline]
2340 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
2341 support::token(&self.syntax, SyntaxKind::R_PAREN)
2342 }
2343 #[inline]
2344 pub fn as_token(&self) -> Option<SyntaxToken> {
2345 support::token(&self.syntax, SyntaxKind::AS_KW)
2346 }
2347 #[inline]
2348 pub fn cast_token(&self) -> Option<SyntaxToken> {
2349 support::token(&self.syntax, SyntaxKind::CAST_KW)
2350 }
2351 #[inline]
2352 pub fn treat_token(&self) -> Option<SyntaxToken> {
2353 support::token(&self.syntax, SyntaxKind::TREAT_KW)
2354 }
2355}
2356
2357#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2358pub struct CastSig {
2359 pub(crate) syntax: SyntaxNode,
2360}
2361impl CastSig {
2362 #[inline]
2363 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
2364 support::token(&self.syntax, SyntaxKind::L_PAREN)
2365 }
2366 #[inline]
2367 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
2368 support::token(&self.syntax, SyntaxKind::R_PAREN)
2369 }
2370 #[inline]
2371 pub fn as_token(&self) -> Option<SyntaxToken> {
2372 support::token(&self.syntax, SyntaxKind::AS_KW)
2373 }
2374}
2375
2376#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2377pub struct CharType {
2378 pub(crate) syntax: SyntaxNode,
2379}
2380impl CharType {
2381 #[inline]
2382 pub fn arg_list(&self) -> Option<ArgList> {
2383 support::child(&self.syntax)
2384 }
2385 #[inline]
2386 pub fn char_token(&self) -> Option<SyntaxToken> {
2387 support::token(&self.syntax, SyntaxKind::CHAR_KW)
2388 }
2389 #[inline]
2390 pub fn character_token(&self) -> Option<SyntaxToken> {
2391 support::token(&self.syntax, SyntaxKind::CHARACTER_KW)
2392 }
2393 #[inline]
2394 pub fn nchar_token(&self) -> Option<SyntaxToken> {
2395 support::token(&self.syntax, SyntaxKind::NCHAR_KW)
2396 }
2397 #[inline]
2398 pub fn varchar_token(&self) -> Option<SyntaxToken> {
2399 support::token(&self.syntax, SyntaxKind::VARCHAR_KW)
2400 }
2401 #[inline]
2402 pub fn varying_token(&self) -> Option<SyntaxToken> {
2403 support::token(&self.syntax, SyntaxKind::VARYING_KW)
2404 }
2405}
2406
2407#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2408pub struct CheckConstraint {
2409 pub(crate) syntax: SyntaxNode,
2410}
2411impl CheckConstraint {
2412 #[inline]
2413 pub fn constraint_name(&self) -> Option<ConstraintName> {
2414 support::child(&self.syntax)
2415 }
2416 #[inline]
2417 pub fn expr(&self) -> Option<Expr> {
2418 support::child(&self.syntax)
2419 }
2420 #[inline]
2421 pub fn no_inherit(&self) -> Option<NoInherit> {
2422 support::child(&self.syntax)
2423 }
2424 #[inline]
2425 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
2426 support::token(&self.syntax, SyntaxKind::L_PAREN)
2427 }
2428 #[inline]
2429 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
2430 support::token(&self.syntax, SyntaxKind::R_PAREN)
2431 }
2432 #[inline]
2433 pub fn check_token(&self) -> Option<SyntaxToken> {
2434 support::token(&self.syntax, SyntaxKind::CHECK_KW)
2435 }
2436}
2437
2438#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2439pub struct Checkpoint {
2440 pub(crate) syntax: SyntaxNode,
2441}
2442impl Checkpoint {
2443 #[inline]
2444 pub fn checkpoint_token(&self) -> Option<SyntaxToken> {
2445 support::token(&self.syntax, SyntaxKind::CHECKPOINT_KW)
2446 }
2447}
2448
2449#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2450pub struct Close {
2451 pub(crate) syntax: SyntaxNode,
2452}
2453impl Close {
2454 #[inline]
2455 pub fn name_ref(&self) -> Option<NameRef> {
2456 support::child(&self.syntax)
2457 }
2458 #[inline]
2459 pub fn close_token(&self) -> Option<SyntaxToken> {
2460 support::token(&self.syntax, SyntaxKind::CLOSE_KW)
2461 }
2462}
2463
2464#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2465pub struct Cluster {
2466 pub(crate) syntax: SyntaxNode,
2467}
2468impl Cluster {
2469 #[inline]
2470 pub fn option_item_list(&self) -> Option<OptionItemList> {
2471 support::child(&self.syntax)
2472 }
2473 #[inline]
2474 pub fn path(&self) -> Option<Path> {
2475 support::child(&self.syntax)
2476 }
2477 #[inline]
2478 pub fn using_method(&self) -> Option<UsingMethod> {
2479 support::child(&self.syntax)
2480 }
2481 #[inline]
2482 pub fn cluster_token(&self) -> Option<SyntaxToken> {
2483 support::token(&self.syntax, SyntaxKind::CLUSTER_KW)
2484 }
2485 #[inline]
2486 pub fn verbose_token(&self) -> Option<SyntaxToken> {
2487 support::token(&self.syntax, SyntaxKind::VERBOSE_KW)
2488 }
2489}
2490
2491#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2492pub struct ClusterOn {
2493 pub(crate) syntax: SyntaxNode,
2494}
2495impl ClusterOn {
2496 #[inline]
2497 pub fn cluster_token(&self) -> Option<SyntaxToken> {
2498 support::token(&self.syntax, SyntaxKind::CLUSTER_KW)
2499 }
2500 #[inline]
2501 pub fn on_token(&self) -> Option<SyntaxToken> {
2502 support::token(&self.syntax, SyntaxKind::ON_KW)
2503 }
2504}
2505
2506#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2507pub struct Collate {
2508 pub(crate) syntax: SyntaxNode,
2509}
2510impl Collate {
2511 #[inline]
2512 pub fn path(&self) -> Option<Path> {
2513 support::child(&self.syntax)
2514 }
2515 #[inline]
2516 pub fn collate_token(&self) -> Option<SyntaxToken> {
2517 support::token(&self.syntax, SyntaxKind::COLLATE_KW)
2518 }
2519}
2520
2521#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2522pub struct ColonColon {
2523 pub(crate) syntax: SyntaxNode,
2524}
2525impl ColonColon {
2526 #[inline]
2527 pub fn colon_token(&self) -> Option<SyntaxToken> {
2528 support::token(&self.syntax, SyntaxKind::COLON)
2529 }
2530}
2531
2532#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2533pub struct ColonEq {
2534 pub(crate) syntax: SyntaxNode,
2535}
2536impl ColonEq {
2537 #[inline]
2538 pub fn colon_token(&self) -> Option<SyntaxToken> {
2539 support::token(&self.syntax, SyntaxKind::COLON)
2540 }
2541 #[inline]
2542 pub fn eq_token(&self) -> Option<SyntaxToken> {
2543 support::token(&self.syntax, SyntaxKind::EQ)
2544 }
2545}
2546
2547#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2548pub struct Column {
2549 pub(crate) syntax: SyntaxNode,
2550}
2551impl Column {
2552 #[inline]
2553 pub fn collate(&self) -> Option<Collate> {
2554 support::child(&self.syntax)
2555 }
2556 #[inline]
2557 pub fn compression_method(&self) -> Option<CompressionMethod> {
2558 support::child(&self.syntax)
2559 }
2560 #[inline]
2561 pub fn constraint(&self) -> Option<ColumnConstraint> {
2562 support::child(&self.syntax)
2563 }
2564 #[inline]
2565 pub fn deferrable_constraint_option(&self) -> Option<DeferrableConstraintOption> {
2566 support::child(&self.syntax)
2567 }
2568 #[inline]
2569 pub fn enforced(&self) -> Option<Enforced> {
2570 support::child(&self.syntax)
2571 }
2572 #[inline]
2573 pub fn index_expr(&self) -> Option<IndexExpr> {
2574 support::child(&self.syntax)
2575 }
2576 #[inline]
2577 pub fn initially_deferred_constraint_option(
2578 &self,
2579 ) -> Option<InitiallyDeferredConstraintOption> {
2580 support::child(&self.syntax)
2581 }
2582 #[inline]
2583 pub fn initially_immediate_constraint_option(
2584 &self,
2585 ) -> Option<InitiallyImmediateConstraintOption> {
2586 support::child(&self.syntax)
2587 }
2588 #[inline]
2589 pub fn name(&self) -> Option<Name> {
2590 support::child(&self.syntax)
2591 }
2592 #[inline]
2593 pub fn name_ref(&self) -> Option<NameRef> {
2594 support::child(&self.syntax)
2595 }
2596 #[inline]
2597 pub fn not_deferrable_constraint_option(&self) -> Option<NotDeferrableConstraintOption> {
2598 support::child(&self.syntax)
2599 }
2600 #[inline]
2601 pub fn not_enforced(&self) -> Option<NotEnforced> {
2602 support::child(&self.syntax)
2603 }
2604 #[inline]
2605 pub fn storage(&self) -> Option<Storage> {
2606 support::child(&self.syntax)
2607 }
2608 #[inline]
2609 pub fn ty(&self) -> Option<Type> {
2610 support::child(&self.syntax)
2611 }
2612 #[inline]
2613 pub fn with_options(&self) -> Option<WithOptions> {
2614 support::child(&self.syntax)
2615 }
2616 #[inline]
2617 pub fn period_token(&self) -> Option<SyntaxToken> {
2618 support::token(&self.syntax, SyntaxKind::PERIOD_KW)
2619 }
2620}
2621
2622#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2623pub struct ColumnList {
2624 pub(crate) syntax: SyntaxNode,
2625}
2626impl ColumnList {
2627 #[inline]
2628 pub fn columns(&self) -> AstChildren<Column> {
2629 support::children(&self.syntax)
2630 }
2631 #[inline]
2632 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
2633 support::token(&self.syntax, SyntaxKind::L_PAREN)
2634 }
2635 #[inline]
2636 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
2637 support::token(&self.syntax, SyntaxKind::R_PAREN)
2638 }
2639}
2640
2641#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2642pub struct CommentOn {
2643 pub(crate) syntax: SyntaxNode,
2644}
2645impl CommentOn {
2646 #[inline]
2647 pub fn literal(&self) -> Option<Literal> {
2648 support::child(&self.syntax)
2649 }
2650 #[inline]
2651 pub fn name_ref(&self) -> Option<NameRef> {
2652 support::child(&self.syntax)
2653 }
2654 #[inline]
2655 pub fn path(&self) -> Option<Path> {
2656 support::child(&self.syntax)
2657 }
2658 #[inline]
2659 pub fn comment_token(&self) -> Option<SyntaxToken> {
2660 support::token(&self.syntax, SyntaxKind::COMMENT_KW)
2661 }
2662 #[inline]
2663 pub fn constraint_token(&self) -> Option<SyntaxToken> {
2664 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
2665 }
2666 #[inline]
2667 pub fn domain_token(&self) -> Option<SyntaxToken> {
2668 support::token(&self.syntax, SyntaxKind::DOMAIN_KW)
2669 }
2670 #[inline]
2671 pub fn is_token(&self) -> Option<SyntaxToken> {
2672 support::token(&self.syntax, SyntaxKind::IS_KW)
2673 }
2674 #[inline]
2675 pub fn null_token(&self) -> Option<SyntaxToken> {
2676 support::token(&self.syntax, SyntaxKind::NULL_KW)
2677 }
2678 #[inline]
2679 pub fn on_token(&self) -> Option<SyntaxToken> {
2680 support::token(&self.syntax, SyntaxKind::ON_KW)
2681 }
2682 #[inline]
2683 pub fn table_token(&self) -> Option<SyntaxToken> {
2684 support::token(&self.syntax, SyntaxKind::TABLE_KW)
2685 }
2686}
2687
2688#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2689pub struct Commit {
2690 pub(crate) syntax: SyntaxNode,
2691}
2692impl Commit {
2693 #[inline]
2694 pub fn literal(&self) -> Option<Literal> {
2695 support::child(&self.syntax)
2696 }
2697 #[inline]
2698 pub fn and_token(&self) -> Option<SyntaxToken> {
2699 support::token(&self.syntax, SyntaxKind::AND_KW)
2700 }
2701 #[inline]
2702 pub fn chain_token(&self) -> Option<SyntaxToken> {
2703 support::token(&self.syntax, SyntaxKind::CHAIN_KW)
2704 }
2705 #[inline]
2706 pub fn commit_token(&self) -> Option<SyntaxToken> {
2707 support::token(&self.syntax, SyntaxKind::COMMIT_KW)
2708 }
2709 #[inline]
2710 pub fn no_token(&self) -> Option<SyntaxToken> {
2711 support::token(&self.syntax, SyntaxKind::NO_KW)
2712 }
2713 #[inline]
2714 pub fn prepared_token(&self) -> Option<SyntaxToken> {
2715 support::token(&self.syntax, SyntaxKind::PREPARED_KW)
2716 }
2717 #[inline]
2718 pub fn transaction_token(&self) -> Option<SyntaxToken> {
2719 support::token(&self.syntax, SyntaxKind::TRANSACTION_KW)
2720 }
2721 #[inline]
2722 pub fn work_token(&self) -> Option<SyntaxToken> {
2723 support::token(&self.syntax, SyntaxKind::WORK_KW)
2724 }
2725}
2726
2727#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2728pub struct CompoundSelect {
2729 pub(crate) syntax: SyntaxNode,
2730}
2731impl CompoundSelect {
2732 #[inline]
2733 pub fn except_token(&self) -> Option<SyntaxToken> {
2734 support::token(&self.syntax, SyntaxKind::EXCEPT_KW)
2735 }
2736 #[inline]
2737 pub fn intersect_token(&self) -> Option<SyntaxToken> {
2738 support::token(&self.syntax, SyntaxKind::INTERSECT_KW)
2739 }
2740 #[inline]
2741 pub fn union_token(&self) -> Option<SyntaxToken> {
2742 support::token(&self.syntax, SyntaxKind::UNION_KW)
2743 }
2744}
2745
2746#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2747pub struct CompressionMethod {
2748 pub(crate) syntax: SyntaxNode,
2749}
2750impl CompressionMethod {
2751 #[inline]
2752 pub fn compression_token(&self) -> Option<SyntaxToken> {
2753 support::token(&self.syntax, SyntaxKind::COMPRESSION_KW)
2754 }
2755 #[inline]
2756 pub fn default_token(&self) -> Option<SyntaxToken> {
2757 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
2758 }
2759 #[inline]
2760 pub fn ident_token(&self) -> Option<SyntaxToken> {
2761 support::token(&self.syntax, SyntaxKind::IDENT)
2762 }
2763}
2764
2765#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2766pub struct ConflictDoNothing {
2767 pub(crate) syntax: SyntaxNode,
2768}
2769impl ConflictDoNothing {
2770 #[inline]
2771 pub fn do_token(&self) -> Option<SyntaxToken> {
2772 support::token(&self.syntax, SyntaxKind::DO_KW)
2773 }
2774 #[inline]
2775 pub fn nothing_token(&self) -> Option<SyntaxToken> {
2776 support::token(&self.syntax, SyntaxKind::NOTHING_KW)
2777 }
2778}
2779
2780#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2781pub struct ConflictDoUpdateSet {
2782 pub(crate) syntax: SyntaxNode,
2783}
2784impl ConflictDoUpdateSet {
2785 #[inline]
2786 pub fn set_clause(&self) -> Option<SetClause> {
2787 support::child(&self.syntax)
2788 }
2789 #[inline]
2790 pub fn where_clause(&self) -> Option<WhereClause> {
2791 support::child(&self.syntax)
2792 }
2793 #[inline]
2794 pub fn do_token(&self) -> Option<SyntaxToken> {
2795 support::token(&self.syntax, SyntaxKind::DO_KW)
2796 }
2797 #[inline]
2798 pub fn update_token(&self) -> Option<SyntaxToken> {
2799 support::token(&self.syntax, SyntaxKind::UPDATE_KW)
2800 }
2801}
2802
2803#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2804pub struct ConflictIndexItem {
2805 pub(crate) syntax: SyntaxNode,
2806}
2807impl ConflictIndexItem {
2808 #[inline]
2809 pub fn collate(&self) -> Option<Collate> {
2810 support::child(&self.syntax)
2811 }
2812 #[inline]
2813 pub fn expr(&self) -> Option<Expr> {
2814 support::child(&self.syntax)
2815 }
2816 #[inline]
2817 pub fn ident_token(&self) -> Option<SyntaxToken> {
2818 support::token(&self.syntax, SyntaxKind::IDENT)
2819 }
2820}
2821
2822#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2823pub struct ConflictIndexItemList {
2824 pub(crate) syntax: SyntaxNode,
2825}
2826impl ConflictIndexItemList {
2827 #[inline]
2828 pub fn conflict_index_items(&self) -> AstChildren<ConflictIndexItem> {
2829 support::children(&self.syntax)
2830 }
2831 #[inline]
2832 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
2833 support::token(&self.syntax, SyntaxKind::L_PAREN)
2834 }
2835 #[inline]
2836 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
2837 support::token(&self.syntax, SyntaxKind::R_PAREN)
2838 }
2839}
2840
2841#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2842pub struct ConflictOnConstraint {
2843 pub(crate) syntax: SyntaxNode,
2844}
2845impl ConflictOnConstraint {
2846 #[inline]
2847 pub fn name_ref(&self) -> Option<NameRef> {
2848 support::child(&self.syntax)
2849 }
2850 #[inline]
2851 pub fn constraint_token(&self) -> Option<SyntaxToken> {
2852 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
2853 }
2854 #[inline]
2855 pub fn on_token(&self) -> Option<SyntaxToken> {
2856 support::token(&self.syntax, SyntaxKind::ON_KW)
2857 }
2858}
2859
2860#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2861pub struct ConflictOnIndex {
2862 pub(crate) syntax: SyntaxNode,
2863}
2864impl ConflictOnIndex {
2865 #[inline]
2866 pub fn conflict_index_item_list(&self) -> Option<ConflictIndexItemList> {
2867 support::child(&self.syntax)
2868 }
2869 #[inline]
2870 pub fn where_clause(&self) -> Option<WhereClause> {
2871 support::child(&self.syntax)
2872 }
2873}
2874
2875#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2876pub struct ConstraintExclusion {
2877 pub(crate) syntax: SyntaxNode,
2878}
2879impl ConstraintExclusion {
2880 #[inline]
2881 pub fn expr(&self) -> Option<Expr> {
2882 support::child(&self.syntax)
2883 }
2884 #[inline]
2885 pub fn op(&self) -> Option<Op> {
2886 support::child(&self.syntax)
2887 }
2888 #[inline]
2889 pub fn with_token(&self) -> Option<SyntaxToken> {
2890 support::token(&self.syntax, SyntaxKind::WITH_KW)
2891 }
2892}
2893
2894#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2895pub struct ConstraintExclusionList {
2896 pub(crate) syntax: SyntaxNode,
2897}
2898impl ConstraintExclusionList {
2899 #[inline]
2900 pub fn constraint_exclusions(&self) -> AstChildren<ConstraintExclusion> {
2901 support::children(&self.syntax)
2902 }
2903 #[inline]
2904 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
2905 support::token(&self.syntax, SyntaxKind::L_PAREN)
2906 }
2907 #[inline]
2908 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
2909 support::token(&self.syntax, SyntaxKind::R_PAREN)
2910 }
2911}
2912
2913#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2914pub struct ConstraintIncludeClause {
2915 pub(crate) syntax: SyntaxNode,
2916}
2917impl ConstraintIncludeClause {
2918 #[inline]
2919 pub fn include_token(&self) -> Option<SyntaxToken> {
2920 support::token(&self.syntax, SyntaxKind::INCLUDE_KW)
2921 }
2922}
2923
2924#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2925pub struct ConstraintIndexMethod {
2926 pub(crate) syntax: SyntaxNode,
2927}
2928impl ConstraintIndexMethod {
2929 #[inline]
2930 pub fn using_token(&self) -> Option<SyntaxToken> {
2931 support::token(&self.syntax, SyntaxKind::USING_KW)
2932 }
2933}
2934
2935#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2936pub struct ConstraintIndexTablespace {
2937 pub(crate) syntax: SyntaxNode,
2938}
2939impl ConstraintIndexTablespace {
2940 #[inline]
2941 pub fn name_ref(&self) -> Option<NameRef> {
2942 support::child(&self.syntax)
2943 }
2944 #[inline]
2945 pub fn index_token(&self) -> Option<SyntaxToken> {
2946 support::token(&self.syntax, SyntaxKind::INDEX_KW)
2947 }
2948 #[inline]
2949 pub fn tablespace_token(&self) -> Option<SyntaxToken> {
2950 support::token(&self.syntax, SyntaxKind::TABLESPACE_KW)
2951 }
2952 #[inline]
2953 pub fn using_token(&self) -> Option<SyntaxToken> {
2954 support::token(&self.syntax, SyntaxKind::USING_KW)
2955 }
2956}
2957
2958#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2959pub struct ConstraintName {
2960 pub(crate) syntax: SyntaxNode,
2961}
2962impl ConstraintName {
2963 #[inline]
2964 pub fn name(&self) -> Option<Name> {
2965 support::child(&self.syntax)
2966 }
2967 #[inline]
2968 pub fn constraint_token(&self) -> Option<SyntaxToken> {
2969 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
2970 }
2971}
2972
2973#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2974pub struct Copy {
2975 pub(crate) syntax: SyntaxNode,
2976}
2977impl Copy {
2978 #[inline]
2979 pub fn column_list(&self) -> Option<ColumnList> {
2980 support::child(&self.syntax)
2981 }
2982 #[inline]
2983 pub fn literal(&self) -> Option<Literal> {
2984 support::child(&self.syntax)
2985 }
2986 #[inline]
2987 pub fn path(&self) -> Option<Path> {
2988 support::child(&self.syntax)
2989 }
2990 #[inline]
2991 pub fn preparable_stmt(&self) -> Option<PreparableStmt> {
2992 support::child(&self.syntax)
2993 }
2994 #[inline]
2995 pub fn where_clause(&self) -> Option<WhereClause> {
2996 support::child(&self.syntax)
2997 }
2998 #[inline]
2999 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
3000 support::token(&self.syntax, SyntaxKind::L_PAREN)
3001 }
3002 #[inline]
3003 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
3004 support::token(&self.syntax, SyntaxKind::R_PAREN)
3005 }
3006 #[inline]
3007 pub fn binary_token(&self) -> Option<SyntaxToken> {
3008 support::token(&self.syntax, SyntaxKind::BINARY_KW)
3009 }
3010 #[inline]
3011 pub fn copy_token(&self) -> Option<SyntaxToken> {
3012 support::token(&self.syntax, SyntaxKind::COPY_KW)
3013 }
3014 #[inline]
3015 pub fn from_token(&self) -> Option<SyntaxToken> {
3016 support::token(&self.syntax, SyntaxKind::FROM_KW)
3017 }
3018 #[inline]
3019 pub fn program_token(&self) -> Option<SyntaxToken> {
3020 support::token(&self.syntax, SyntaxKind::PROGRAM_KW)
3021 }
3022 #[inline]
3023 pub fn stdin_token(&self) -> Option<SyntaxToken> {
3024 support::token(&self.syntax, SyntaxKind::STDIN_KW)
3025 }
3026 #[inline]
3027 pub fn stdout_token(&self) -> Option<SyntaxToken> {
3028 support::token(&self.syntax, SyntaxKind::STDOUT_KW)
3029 }
3030 #[inline]
3031 pub fn to_token(&self) -> Option<SyntaxToken> {
3032 support::token(&self.syntax, SyntaxKind::TO_KW)
3033 }
3034 #[inline]
3035 pub fn with_token(&self) -> Option<SyntaxToken> {
3036 support::token(&self.syntax, SyntaxKind::WITH_KW)
3037 }
3038}
3039
3040#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3041pub struct CopyOption {
3042 pub(crate) syntax: SyntaxNode,
3043}
3044impl CopyOption {
3045 #[inline]
3046 pub fn name(&self) -> Option<Name> {
3047 support::child(&self.syntax)
3048 }
3049}
3050
3051#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3052pub struct CopyOptionList {
3053 pub(crate) syntax: SyntaxNode,
3054}
3055impl CopyOptionList {
3056 #[inline]
3057 pub fn copy_options(&self) -> AstChildren<CopyOption> {
3058 support::children(&self.syntax)
3059 }
3060 #[inline]
3061 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
3062 support::token(&self.syntax, SyntaxKind::L_PAREN)
3063 }
3064 #[inline]
3065 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
3066 support::token(&self.syntax, SyntaxKind::R_PAREN)
3067 }
3068}
3069
3070#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3071pub struct CostFuncOption {
3072 pub(crate) syntax: SyntaxNode,
3073}
3074impl CostFuncOption {
3075 #[inline]
3076 pub fn cost_token(&self) -> Option<SyntaxToken> {
3077 support::token(&self.syntax, SyntaxKind::COST_KW)
3078 }
3079}
3080
3081#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3082pub struct CreateAccessMethod {
3083 pub(crate) syntax: SyntaxNode,
3084}
3085impl CreateAccessMethod {
3086 #[inline]
3087 pub fn handler_clause(&self) -> Option<HandlerClause> {
3088 support::child(&self.syntax)
3089 }
3090 #[inline]
3091 pub fn name(&self) -> Option<Path> {
3092 support::child(&self.syntax)
3093 }
3094 #[inline]
3095 pub fn access_token(&self) -> Option<SyntaxToken> {
3096 support::token(&self.syntax, SyntaxKind::ACCESS_KW)
3097 }
3098 #[inline]
3099 pub fn create_token(&self) -> Option<SyntaxToken> {
3100 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3101 }
3102 #[inline]
3103 pub fn index_token(&self) -> Option<SyntaxToken> {
3104 support::token(&self.syntax, SyntaxKind::INDEX_KW)
3105 }
3106 #[inline]
3107 pub fn method_token(&self) -> Option<SyntaxToken> {
3108 support::token(&self.syntax, SyntaxKind::METHOD_KW)
3109 }
3110 #[inline]
3111 pub fn table_token(&self) -> Option<SyntaxToken> {
3112 support::token(&self.syntax, SyntaxKind::TABLE_KW)
3113 }
3114 #[inline]
3115 pub fn type_token(&self) -> Option<SyntaxToken> {
3116 support::token(&self.syntax, SyntaxKind::TYPE_KW)
3117 }
3118}
3119
3120#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3121pub struct CreateAggregate {
3122 pub(crate) syntax: SyntaxNode,
3123}
3124impl CreateAggregate {
3125 #[inline]
3126 pub fn or_replace(&self) -> Option<OrReplace> {
3127 support::child(&self.syntax)
3128 }
3129 #[inline]
3130 pub fn param_list(&self) -> Option<ParamList> {
3131 support::child(&self.syntax)
3132 }
3133 #[inline]
3134 pub fn path(&self) -> Option<Path> {
3135 support::child(&self.syntax)
3136 }
3137 #[inline]
3138 pub fn aggregate_token(&self) -> Option<SyntaxToken> {
3139 support::token(&self.syntax, SyntaxKind::AGGREGATE_KW)
3140 }
3141 #[inline]
3142 pub fn create_token(&self) -> Option<SyntaxToken> {
3143 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3144 }
3145}
3146
3147#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3148pub struct CreateCast {
3149 pub(crate) syntax: SyntaxNode,
3150}
3151impl CreateCast {
3152 #[inline]
3153 pub fn cast_sig(&self) -> Option<CastSig> {
3154 support::child(&self.syntax)
3155 }
3156 #[inline]
3157 pub fn function_sig(&self) -> Option<FunctionSig> {
3158 support::child(&self.syntax)
3159 }
3160 #[inline]
3161 pub fn as_token(&self) -> Option<SyntaxToken> {
3162 support::token(&self.syntax, SyntaxKind::AS_KW)
3163 }
3164 #[inline]
3165 pub fn assignment_token(&self) -> Option<SyntaxToken> {
3166 support::token(&self.syntax, SyntaxKind::ASSIGNMENT_KW)
3167 }
3168 #[inline]
3169 pub fn cast_token(&self) -> Option<SyntaxToken> {
3170 support::token(&self.syntax, SyntaxKind::CAST_KW)
3171 }
3172 #[inline]
3173 pub fn create_token(&self) -> Option<SyntaxToken> {
3174 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3175 }
3176 #[inline]
3177 pub fn function_token(&self) -> Option<SyntaxToken> {
3178 support::token(&self.syntax, SyntaxKind::FUNCTION_KW)
3179 }
3180 #[inline]
3181 pub fn implicit_token(&self) -> Option<SyntaxToken> {
3182 support::token(&self.syntax, SyntaxKind::IMPLICIT_KW)
3183 }
3184 #[inline]
3185 pub fn inout_token(&self) -> Option<SyntaxToken> {
3186 support::token(&self.syntax, SyntaxKind::INOUT_KW)
3187 }
3188 #[inline]
3189 pub fn with_token(&self) -> Option<SyntaxToken> {
3190 support::token(&self.syntax, SyntaxKind::WITH_KW)
3191 }
3192 #[inline]
3193 pub fn without_token(&self) -> Option<SyntaxToken> {
3194 support::token(&self.syntax, SyntaxKind::WITHOUT_KW)
3195 }
3196}
3197
3198#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3199pub struct CreateCollation {
3200 pub(crate) syntax: SyntaxNode,
3201}
3202impl CreateCollation {
3203 #[inline]
3204 pub fn path(&self) -> Option<Path> {
3205 support::child(&self.syntax)
3206 }
3207 #[inline]
3208 pub fn collation_token(&self) -> Option<SyntaxToken> {
3209 support::token(&self.syntax, SyntaxKind::COLLATION_KW)
3210 }
3211 #[inline]
3212 pub fn create_token(&self) -> Option<SyntaxToken> {
3213 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3214 }
3215}
3216
3217#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3218pub struct CreateConversion {
3219 pub(crate) syntax: SyntaxNode,
3220}
3221impl CreateConversion {
3222 #[inline]
3223 pub fn literal(&self) -> Option<Literal> {
3224 support::child(&self.syntax)
3225 }
3226 #[inline]
3227 pub fn path(&self) -> Option<Path> {
3228 support::child(&self.syntax)
3229 }
3230 #[inline]
3231 pub fn conversion_token(&self) -> Option<SyntaxToken> {
3232 support::token(&self.syntax, SyntaxKind::CONVERSION_KW)
3233 }
3234 #[inline]
3235 pub fn create_token(&self) -> Option<SyntaxToken> {
3236 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3237 }
3238 #[inline]
3239 pub fn default_token(&self) -> Option<SyntaxToken> {
3240 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
3241 }
3242 #[inline]
3243 pub fn for_token(&self) -> Option<SyntaxToken> {
3244 support::token(&self.syntax, SyntaxKind::FOR_KW)
3245 }
3246 #[inline]
3247 pub fn from_token(&self) -> Option<SyntaxToken> {
3248 support::token(&self.syntax, SyntaxKind::FROM_KW)
3249 }
3250 #[inline]
3251 pub fn to_token(&self) -> Option<SyntaxToken> {
3252 support::token(&self.syntax, SyntaxKind::TO_KW)
3253 }
3254}
3255
3256#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3257pub struct CreateDatabase {
3258 pub(crate) syntax: SyntaxNode,
3259}
3260impl CreateDatabase {
3261 #[inline]
3262 pub fn create_database_option_list(&self) -> Option<CreateDatabaseOptionList> {
3263 support::child(&self.syntax)
3264 }
3265 #[inline]
3266 pub fn name(&self) -> Option<Name> {
3267 support::child(&self.syntax)
3268 }
3269 #[inline]
3270 pub fn create_token(&self) -> Option<SyntaxToken> {
3271 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3272 }
3273 #[inline]
3274 pub fn database_token(&self) -> Option<SyntaxToken> {
3275 support::token(&self.syntax, SyntaxKind::DATABASE_KW)
3276 }
3277}
3278
3279#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3280pub struct CreateDatabaseOption {
3281 pub(crate) syntax: SyntaxNode,
3282}
3283impl CreateDatabaseOption {
3284 #[inline]
3285 pub fn literal(&self) -> Option<Literal> {
3286 support::child(&self.syntax)
3287 }
3288 #[inline]
3289 pub fn eq_token(&self) -> Option<SyntaxToken> {
3290 support::token(&self.syntax, SyntaxKind::EQ)
3291 }
3292 #[inline]
3293 pub fn connection_token(&self) -> Option<SyntaxToken> {
3294 support::token(&self.syntax, SyntaxKind::CONNECTION_KW)
3295 }
3296 #[inline]
3297 pub fn default_token(&self) -> Option<SyntaxToken> {
3298 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
3299 }
3300 #[inline]
3301 pub fn encoding_token(&self) -> Option<SyntaxToken> {
3302 support::token(&self.syntax, SyntaxKind::ENCODING_KW)
3303 }
3304 #[inline]
3305 pub fn ident_token(&self) -> Option<SyntaxToken> {
3306 support::token(&self.syntax, SyntaxKind::IDENT)
3307 }
3308 #[inline]
3309 pub fn limit_token(&self) -> Option<SyntaxToken> {
3310 support::token(&self.syntax, SyntaxKind::LIMIT_KW)
3311 }
3312 #[inline]
3313 pub fn owner_token(&self) -> Option<SyntaxToken> {
3314 support::token(&self.syntax, SyntaxKind::OWNER_KW)
3315 }
3316 #[inline]
3317 pub fn tablespace_token(&self) -> Option<SyntaxToken> {
3318 support::token(&self.syntax, SyntaxKind::TABLESPACE_KW)
3319 }
3320 #[inline]
3321 pub fn template_token(&self) -> Option<SyntaxToken> {
3322 support::token(&self.syntax, SyntaxKind::TEMPLATE_KW)
3323 }
3324}
3325
3326#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3327pub struct CreateDatabaseOptionList {
3328 pub(crate) syntax: SyntaxNode,
3329}
3330impl CreateDatabaseOptionList {
3331 #[inline]
3332 pub fn create_database_options(&self) -> AstChildren<CreateDatabaseOption> {
3333 support::children(&self.syntax)
3334 }
3335 #[inline]
3336 pub fn with_token(&self) -> Option<SyntaxToken> {
3337 support::token(&self.syntax, SyntaxKind::WITH_KW)
3338 }
3339}
3340
3341#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3342pub struct CreateDomain {
3343 pub(crate) syntax: SyntaxNode,
3344}
3345impl CreateDomain {
3346 #[inline]
3347 pub fn collate(&self) -> Option<Collate> {
3348 support::child(&self.syntax)
3349 }
3350 #[inline]
3351 pub fn constraints(&self) -> AstChildren<Constraint> {
3352 support::children(&self.syntax)
3353 }
3354 #[inline]
3355 pub fn path(&self) -> Option<Path> {
3356 support::child(&self.syntax)
3357 }
3358 #[inline]
3359 pub fn ty(&self) -> Option<Type> {
3360 support::child(&self.syntax)
3361 }
3362 #[inline]
3363 pub fn as_token(&self) -> Option<SyntaxToken> {
3364 support::token(&self.syntax, SyntaxKind::AS_KW)
3365 }
3366 #[inline]
3367 pub fn create_token(&self) -> Option<SyntaxToken> {
3368 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3369 }
3370 #[inline]
3371 pub fn domain_token(&self) -> Option<SyntaxToken> {
3372 support::token(&self.syntax, SyntaxKind::DOMAIN_KW)
3373 }
3374}
3375
3376#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3377pub struct CreateEventTrigger {
3378 pub(crate) syntax: SyntaxNode,
3379}
3380impl CreateEventTrigger {
3381 #[inline]
3382 pub fn call_expr(&self) -> Option<CallExpr> {
3383 support::child(&self.syntax)
3384 }
3385 #[inline]
3386 pub fn event_trigger_when_clause(&self) -> Option<EventTriggerWhenClause> {
3387 support::child(&self.syntax)
3388 }
3389 #[inline]
3390 pub fn name(&self) -> Option<Name> {
3391 support::child(&self.syntax)
3392 }
3393 #[inline]
3394 pub fn name_ref(&self) -> Option<NameRef> {
3395 support::child(&self.syntax)
3396 }
3397 #[inline]
3398 pub fn create_token(&self) -> Option<SyntaxToken> {
3399 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3400 }
3401 #[inline]
3402 pub fn event_token(&self) -> Option<SyntaxToken> {
3403 support::token(&self.syntax, SyntaxKind::EVENT_KW)
3404 }
3405 #[inline]
3406 pub fn execute_token(&self) -> Option<SyntaxToken> {
3407 support::token(&self.syntax, SyntaxKind::EXECUTE_KW)
3408 }
3409 #[inline]
3410 pub fn function_token(&self) -> Option<SyntaxToken> {
3411 support::token(&self.syntax, SyntaxKind::FUNCTION_KW)
3412 }
3413 #[inline]
3414 pub fn on_token(&self) -> Option<SyntaxToken> {
3415 support::token(&self.syntax, SyntaxKind::ON_KW)
3416 }
3417 #[inline]
3418 pub fn procedure_token(&self) -> Option<SyntaxToken> {
3419 support::token(&self.syntax, SyntaxKind::PROCEDURE_KW)
3420 }
3421 #[inline]
3422 pub fn trigger_token(&self) -> Option<SyntaxToken> {
3423 support::token(&self.syntax, SyntaxKind::TRIGGER_KW)
3424 }
3425}
3426
3427#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3428pub struct CreateExtension {
3429 pub(crate) syntax: SyntaxNode,
3430}
3431impl CreateExtension {
3432 #[inline]
3433 pub fn if_not_exists(&self) -> Option<IfNotExists> {
3434 support::child(&self.syntax)
3435 }
3436 #[inline]
3437 pub fn name(&self) -> Option<Name> {
3438 support::child(&self.syntax)
3439 }
3440 #[inline]
3441 pub fn create_token(&self) -> Option<SyntaxToken> {
3442 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3443 }
3444 #[inline]
3445 pub fn extension_token(&self) -> Option<SyntaxToken> {
3446 support::token(&self.syntax, SyntaxKind::EXTENSION_KW)
3447 }
3448}
3449
3450#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3451pub struct CreateForeignDataWrapper {
3452 pub(crate) syntax: SyntaxNode,
3453}
3454impl CreateForeignDataWrapper {
3455 #[inline]
3456 pub fn alter_option_list(&self) -> Option<AlterOptionList> {
3457 support::child(&self.syntax)
3458 }
3459 #[inline]
3460 pub fn fdw_option_list(&self) -> Option<FdwOptionList> {
3461 support::child(&self.syntax)
3462 }
3463 #[inline]
3464 pub fn name(&self) -> Option<Name> {
3465 support::child(&self.syntax)
3466 }
3467 #[inline]
3468 pub fn create_token(&self) -> Option<SyntaxToken> {
3469 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3470 }
3471 #[inline]
3472 pub fn data_token(&self) -> Option<SyntaxToken> {
3473 support::token(&self.syntax, SyntaxKind::DATA_KW)
3474 }
3475 #[inline]
3476 pub fn foreign_token(&self) -> Option<SyntaxToken> {
3477 support::token(&self.syntax, SyntaxKind::FOREIGN_KW)
3478 }
3479 #[inline]
3480 pub fn wrapper_token(&self) -> Option<SyntaxToken> {
3481 support::token(&self.syntax, SyntaxKind::WRAPPER_KW)
3482 }
3483}
3484
3485#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3486pub struct CreateForeignTable {
3487 pub(crate) syntax: SyntaxNode,
3488}
3489impl CreateForeignTable {
3490 #[inline]
3491 pub fn alter_option_list(&self) -> Option<AlterOptionList> {
3492 support::child(&self.syntax)
3493 }
3494 #[inline]
3495 pub fn if_not_exists(&self) -> Option<IfNotExists> {
3496 support::child(&self.syntax)
3497 }
3498 #[inline]
3499 pub fn inherits(&self) -> Option<Inherits> {
3500 support::child(&self.syntax)
3501 }
3502 #[inline]
3503 pub fn partition_of(&self) -> Option<PartitionOf> {
3504 support::child(&self.syntax)
3505 }
3506 #[inline]
3507 pub fn partition_type(&self) -> Option<PartitionType> {
3508 support::child(&self.syntax)
3509 }
3510 #[inline]
3511 pub fn path(&self) -> Option<Path> {
3512 support::child(&self.syntax)
3513 }
3514 #[inline]
3515 pub fn server_name(&self) -> Option<ServerName> {
3516 support::child(&self.syntax)
3517 }
3518 #[inline]
3519 pub fn table_arg_list(&self) -> Option<TableArgList> {
3520 support::child(&self.syntax)
3521 }
3522 #[inline]
3523 pub fn create_token(&self) -> Option<SyntaxToken> {
3524 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3525 }
3526 #[inline]
3527 pub fn foreign_token(&self) -> Option<SyntaxToken> {
3528 support::token(&self.syntax, SyntaxKind::FOREIGN_KW)
3529 }
3530 #[inline]
3531 pub fn table_token(&self) -> Option<SyntaxToken> {
3532 support::token(&self.syntax, SyntaxKind::TABLE_KW)
3533 }
3534}
3535
3536#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3537pub struct CreateFunction {
3538 pub(crate) syntax: SyntaxNode,
3539}
3540impl CreateFunction {
3541 #[inline]
3542 pub fn option_list(&self) -> Option<FuncOptionList> {
3543 support::child(&self.syntax)
3544 }
3545 #[inline]
3546 pub fn or_replace(&self) -> Option<OrReplace> {
3547 support::child(&self.syntax)
3548 }
3549 #[inline]
3550 pub fn param_list(&self) -> Option<ParamList> {
3551 support::child(&self.syntax)
3552 }
3553 #[inline]
3554 pub fn path(&self) -> Option<Path> {
3555 support::child(&self.syntax)
3556 }
3557 #[inline]
3558 pub fn ret_type(&self) -> Option<RetType> {
3559 support::child(&self.syntax)
3560 }
3561 #[inline]
3562 pub fn create_token(&self) -> Option<SyntaxToken> {
3563 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3564 }
3565 #[inline]
3566 pub fn function_token(&self) -> Option<SyntaxToken> {
3567 support::token(&self.syntax, SyntaxKind::FUNCTION_KW)
3568 }
3569}
3570
3571#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3572pub struct CreateGroup {
3573 pub(crate) syntax: SyntaxNode,
3574}
3575impl CreateGroup {
3576 #[inline]
3577 pub fn name(&self) -> Option<Name> {
3578 support::child(&self.syntax)
3579 }
3580 #[inline]
3581 pub fn role_option_list(&self) -> Option<RoleOptionList> {
3582 support::child(&self.syntax)
3583 }
3584 #[inline]
3585 pub fn create_token(&self) -> Option<SyntaxToken> {
3586 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3587 }
3588 #[inline]
3589 pub fn group_token(&self) -> Option<SyntaxToken> {
3590 support::token(&self.syntax, SyntaxKind::GROUP_KW)
3591 }
3592}
3593
3594#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3595pub struct CreateIndex {
3596 pub(crate) syntax: SyntaxNode,
3597}
3598impl CreateIndex {
3599 #[inline]
3600 pub fn constraint_include_clause(&self) -> Option<ConstraintIncludeClause> {
3601 support::child(&self.syntax)
3602 }
3603 #[inline]
3604 pub fn if_not_exists(&self) -> Option<IfNotExists> {
3605 support::child(&self.syntax)
3606 }
3607 #[inline]
3608 pub fn name(&self) -> Option<Name> {
3609 support::child(&self.syntax)
3610 }
3611 #[inline]
3612 pub fn nulls_distinct(&self) -> Option<NullsDistinct> {
3613 support::child(&self.syntax)
3614 }
3615 #[inline]
3616 pub fn nulls_not_distinct(&self) -> Option<NullsNotDistinct> {
3617 support::child(&self.syntax)
3618 }
3619 #[inline]
3620 pub fn partition_item_list(&self) -> Option<PartitionItemList> {
3621 support::child(&self.syntax)
3622 }
3623 #[inline]
3624 pub fn relation_name(&self) -> Option<RelationName> {
3625 support::child(&self.syntax)
3626 }
3627 #[inline]
3628 pub fn tablespace(&self) -> Option<Tablespace> {
3629 support::child(&self.syntax)
3630 }
3631 #[inline]
3632 pub fn using_method(&self) -> Option<UsingMethod> {
3633 support::child(&self.syntax)
3634 }
3635 #[inline]
3636 pub fn where_clause(&self) -> Option<WhereClause> {
3637 support::child(&self.syntax)
3638 }
3639 #[inline]
3640 pub fn with_params(&self) -> Option<WithParams> {
3641 support::child(&self.syntax)
3642 }
3643 #[inline]
3644 pub fn concurrently_token(&self) -> Option<SyntaxToken> {
3645 support::token(&self.syntax, SyntaxKind::CONCURRENTLY_KW)
3646 }
3647 #[inline]
3648 pub fn create_token(&self) -> Option<SyntaxToken> {
3649 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3650 }
3651 #[inline]
3652 pub fn index_token(&self) -> Option<SyntaxToken> {
3653 support::token(&self.syntax, SyntaxKind::INDEX_KW)
3654 }
3655 #[inline]
3656 pub fn on_token(&self) -> Option<SyntaxToken> {
3657 support::token(&self.syntax, SyntaxKind::ON_KW)
3658 }
3659 #[inline]
3660 pub fn unique_token(&self) -> Option<SyntaxToken> {
3661 support::token(&self.syntax, SyntaxKind::UNIQUE_KW)
3662 }
3663}
3664
3665#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3666pub struct CreateLanguage {
3667 pub(crate) syntax: SyntaxNode,
3668}
3669impl CreateLanguage {
3670 #[inline]
3671 pub fn name(&self) -> Option<Name> {
3672 support::child(&self.syntax)
3673 }
3674 #[inline]
3675 pub fn or_replace(&self) -> Option<OrReplace> {
3676 support::child(&self.syntax)
3677 }
3678 #[inline]
3679 pub fn path(&self) -> Option<Path> {
3680 support::child(&self.syntax)
3681 }
3682 #[inline]
3683 pub fn create_token(&self) -> Option<SyntaxToken> {
3684 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3685 }
3686 #[inline]
3687 pub fn handler_token(&self) -> Option<SyntaxToken> {
3688 support::token(&self.syntax, SyntaxKind::HANDLER_KW)
3689 }
3690 #[inline]
3691 pub fn inline_token(&self) -> Option<SyntaxToken> {
3692 support::token(&self.syntax, SyntaxKind::INLINE_KW)
3693 }
3694 #[inline]
3695 pub fn language_token(&self) -> Option<SyntaxToken> {
3696 support::token(&self.syntax, SyntaxKind::LANGUAGE_KW)
3697 }
3698 #[inline]
3699 pub fn procedural_token(&self) -> Option<SyntaxToken> {
3700 support::token(&self.syntax, SyntaxKind::PROCEDURAL_KW)
3701 }
3702 #[inline]
3703 pub fn trusted_token(&self) -> Option<SyntaxToken> {
3704 support::token(&self.syntax, SyntaxKind::TRUSTED_KW)
3705 }
3706 #[inline]
3707 pub fn validator_token(&self) -> Option<SyntaxToken> {
3708 support::token(&self.syntax, SyntaxKind::VALIDATOR_KW)
3709 }
3710}
3711
3712#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3713pub struct CreateMaterializedView {
3714 pub(crate) syntax: SyntaxNode,
3715}
3716impl CreateMaterializedView {
3717 #[inline]
3718 pub fn column_list(&self) -> Option<ColumnList> {
3719 support::child(&self.syntax)
3720 }
3721 #[inline]
3722 pub fn if_not_exists(&self) -> Option<IfNotExists> {
3723 support::child(&self.syntax)
3724 }
3725 #[inline]
3726 pub fn path(&self) -> Option<Path> {
3727 support::child(&self.syntax)
3728 }
3729 #[inline]
3730 pub fn query(&self) -> Option<SelectVariant> {
3731 support::child(&self.syntax)
3732 }
3733 #[inline]
3734 pub fn tablespace(&self) -> Option<Tablespace> {
3735 support::child(&self.syntax)
3736 }
3737 #[inline]
3738 pub fn using_method(&self) -> Option<UsingMethod> {
3739 support::child(&self.syntax)
3740 }
3741 #[inline]
3742 pub fn with_data(&self) -> Option<WithData> {
3743 support::child(&self.syntax)
3744 }
3745 #[inline]
3746 pub fn with_no_data(&self) -> Option<WithNoData> {
3747 support::child(&self.syntax)
3748 }
3749 #[inline]
3750 pub fn with_params(&self) -> Option<WithParams> {
3751 support::child(&self.syntax)
3752 }
3753 #[inline]
3754 pub fn as_token(&self) -> Option<SyntaxToken> {
3755 support::token(&self.syntax, SyntaxKind::AS_KW)
3756 }
3757 #[inline]
3758 pub fn create_token(&self) -> Option<SyntaxToken> {
3759 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3760 }
3761 #[inline]
3762 pub fn materialized_token(&self) -> Option<SyntaxToken> {
3763 support::token(&self.syntax, SyntaxKind::MATERIALIZED_KW)
3764 }
3765 #[inline]
3766 pub fn view_token(&self) -> Option<SyntaxToken> {
3767 support::token(&self.syntax, SyntaxKind::VIEW_KW)
3768 }
3769}
3770
3771#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3772pub struct CreateOperator {
3773 pub(crate) syntax: SyntaxNode,
3774}
3775impl CreateOperator {
3776 #[inline]
3777 pub fn attribute_list(&self) -> Option<AttributeList> {
3778 support::child(&self.syntax)
3779 }
3780 #[inline]
3781 pub fn op(&self) -> Option<Op> {
3782 support::child(&self.syntax)
3783 }
3784 #[inline]
3785 pub fn path(&self) -> Option<Path> {
3786 support::child(&self.syntax)
3787 }
3788 #[inline]
3789 pub fn create_token(&self) -> Option<SyntaxToken> {
3790 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3791 }
3792 #[inline]
3793 pub fn operator_token(&self) -> Option<SyntaxToken> {
3794 support::token(&self.syntax, SyntaxKind::OPERATOR_KW)
3795 }
3796}
3797
3798#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3799pub struct CreateOperatorClass {
3800 pub(crate) syntax: SyntaxNode,
3801}
3802impl CreateOperatorClass {
3803 #[inline]
3804 pub fn name_ref(&self) -> Option<NameRef> {
3805 support::child(&self.syntax)
3806 }
3807 #[inline]
3808 pub fn operator_class_option_list(&self) -> Option<OperatorClassOptionList> {
3809 support::child(&self.syntax)
3810 }
3811 #[inline]
3812 pub fn path(&self) -> Option<Path> {
3813 support::child(&self.syntax)
3814 }
3815 #[inline]
3816 pub fn ty(&self) -> Option<Type> {
3817 support::child(&self.syntax)
3818 }
3819 #[inline]
3820 pub fn as_token(&self) -> Option<SyntaxToken> {
3821 support::token(&self.syntax, SyntaxKind::AS_KW)
3822 }
3823 #[inline]
3824 pub fn class_token(&self) -> Option<SyntaxToken> {
3825 support::token(&self.syntax, SyntaxKind::CLASS_KW)
3826 }
3827 #[inline]
3828 pub fn create_token(&self) -> Option<SyntaxToken> {
3829 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3830 }
3831 #[inline]
3832 pub fn default_token(&self) -> Option<SyntaxToken> {
3833 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
3834 }
3835 #[inline]
3836 pub fn family_token(&self) -> Option<SyntaxToken> {
3837 support::token(&self.syntax, SyntaxKind::FAMILY_KW)
3838 }
3839 #[inline]
3840 pub fn for_token(&self) -> Option<SyntaxToken> {
3841 support::token(&self.syntax, SyntaxKind::FOR_KW)
3842 }
3843 #[inline]
3844 pub fn operator_token(&self) -> Option<SyntaxToken> {
3845 support::token(&self.syntax, SyntaxKind::OPERATOR_KW)
3846 }
3847 #[inline]
3848 pub fn type_token(&self) -> Option<SyntaxToken> {
3849 support::token(&self.syntax, SyntaxKind::TYPE_KW)
3850 }
3851 #[inline]
3852 pub fn using_token(&self) -> Option<SyntaxToken> {
3853 support::token(&self.syntax, SyntaxKind::USING_KW)
3854 }
3855}
3856
3857#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3858pub struct CreateOperatorFamily {
3859 pub(crate) syntax: SyntaxNode,
3860}
3861impl CreateOperatorFamily {
3862 #[inline]
3863 pub fn name_ref(&self) -> Option<NameRef> {
3864 support::child(&self.syntax)
3865 }
3866 #[inline]
3867 pub fn path(&self) -> Option<Path> {
3868 support::child(&self.syntax)
3869 }
3870 #[inline]
3871 pub fn create_token(&self) -> Option<SyntaxToken> {
3872 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3873 }
3874 #[inline]
3875 pub fn family_token(&self) -> Option<SyntaxToken> {
3876 support::token(&self.syntax, SyntaxKind::FAMILY_KW)
3877 }
3878 #[inline]
3879 pub fn operator_token(&self) -> Option<SyntaxToken> {
3880 support::token(&self.syntax, SyntaxKind::OPERATOR_KW)
3881 }
3882 #[inline]
3883 pub fn using_token(&self) -> Option<SyntaxToken> {
3884 support::token(&self.syntax, SyntaxKind::USING_KW)
3885 }
3886}
3887
3888#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3889pub struct CreatePolicy {
3890 pub(crate) syntax: SyntaxNode,
3891}
3892impl CreatePolicy {
3893 #[inline]
3894 pub fn expr(&self) -> Option<Expr> {
3895 support::child(&self.syntax)
3896 }
3897 #[inline]
3898 pub fn name(&self) -> Option<Name> {
3899 support::child(&self.syntax)
3900 }
3901 #[inline]
3902 pub fn on_table(&self) -> Option<OnTable> {
3903 support::child(&self.syntax)
3904 }
3905 #[inline]
3906 pub fn role_list(&self) -> Option<RoleList> {
3907 support::child(&self.syntax)
3908 }
3909 #[inline]
3910 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
3911 support::token(&self.syntax, SyntaxKind::L_PAREN)
3912 }
3913 #[inline]
3914 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
3915 support::token(&self.syntax, SyntaxKind::R_PAREN)
3916 }
3917 #[inline]
3918 pub fn all_token(&self) -> Option<SyntaxToken> {
3919 support::token(&self.syntax, SyntaxKind::ALL_KW)
3920 }
3921 #[inline]
3922 pub fn as_token(&self) -> Option<SyntaxToken> {
3923 support::token(&self.syntax, SyntaxKind::AS_KW)
3924 }
3925 #[inline]
3926 pub fn check_token(&self) -> Option<SyntaxToken> {
3927 support::token(&self.syntax, SyntaxKind::CHECK_KW)
3928 }
3929 #[inline]
3930 pub fn create_token(&self) -> Option<SyntaxToken> {
3931 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3932 }
3933 #[inline]
3934 pub fn delete_token(&self) -> Option<SyntaxToken> {
3935 support::token(&self.syntax, SyntaxKind::DELETE_KW)
3936 }
3937 #[inline]
3938 pub fn for_token(&self) -> Option<SyntaxToken> {
3939 support::token(&self.syntax, SyntaxKind::FOR_KW)
3940 }
3941 #[inline]
3942 pub fn ident_token(&self) -> Option<SyntaxToken> {
3943 support::token(&self.syntax, SyntaxKind::IDENT)
3944 }
3945 #[inline]
3946 pub fn insert_token(&self) -> Option<SyntaxToken> {
3947 support::token(&self.syntax, SyntaxKind::INSERT_KW)
3948 }
3949 #[inline]
3950 pub fn policy_token(&self) -> Option<SyntaxToken> {
3951 support::token(&self.syntax, SyntaxKind::POLICY_KW)
3952 }
3953 #[inline]
3954 pub fn select_token(&self) -> Option<SyntaxToken> {
3955 support::token(&self.syntax, SyntaxKind::SELECT_KW)
3956 }
3957 #[inline]
3958 pub fn to_token(&self) -> Option<SyntaxToken> {
3959 support::token(&self.syntax, SyntaxKind::TO_KW)
3960 }
3961 #[inline]
3962 pub fn update_token(&self) -> Option<SyntaxToken> {
3963 support::token(&self.syntax, SyntaxKind::UPDATE_KW)
3964 }
3965 #[inline]
3966 pub fn using_token(&self) -> Option<SyntaxToken> {
3967 support::token(&self.syntax, SyntaxKind::USING_KW)
3968 }
3969 #[inline]
3970 pub fn with_token(&self) -> Option<SyntaxToken> {
3971 support::token(&self.syntax, SyntaxKind::WITH_KW)
3972 }
3973}
3974
3975#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3976pub struct CreateProcedure {
3977 pub(crate) syntax: SyntaxNode,
3978}
3979impl CreateProcedure {
3980 #[inline]
3981 pub fn option_list(&self) -> Option<FuncOptionList> {
3982 support::child(&self.syntax)
3983 }
3984 #[inline]
3985 pub fn or_replace(&self) -> Option<OrReplace> {
3986 support::child(&self.syntax)
3987 }
3988 #[inline]
3989 pub fn param_list(&self) -> Option<ParamList> {
3990 support::child(&self.syntax)
3991 }
3992 #[inline]
3993 pub fn path(&self) -> Option<Path> {
3994 support::child(&self.syntax)
3995 }
3996 #[inline]
3997 pub fn create_token(&self) -> Option<SyntaxToken> {
3998 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3999 }
4000 #[inline]
4001 pub fn procedure_token(&self) -> Option<SyntaxToken> {
4002 support::token(&self.syntax, SyntaxKind::PROCEDURE_KW)
4003 }
4004}
4005
4006#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4007pub struct CreatePublication {
4008 pub(crate) syntax: SyntaxNode,
4009}
4010impl CreatePublication {
4011 #[inline]
4012 pub fn name(&self) -> Option<Name> {
4013 support::child(&self.syntax)
4014 }
4015 #[inline]
4016 pub fn publication_objects(&self) -> AstChildren<PublicationObject> {
4017 support::children(&self.syntax)
4018 }
4019 #[inline]
4020 pub fn with_params(&self) -> Option<WithParams> {
4021 support::child(&self.syntax)
4022 }
4023 #[inline]
4024 pub fn all_token(&self) -> Option<SyntaxToken> {
4025 support::token(&self.syntax, SyntaxKind::ALL_KW)
4026 }
4027 #[inline]
4028 pub fn create_token(&self) -> Option<SyntaxToken> {
4029 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4030 }
4031 #[inline]
4032 pub fn for_token(&self) -> Option<SyntaxToken> {
4033 support::token(&self.syntax, SyntaxKind::FOR_KW)
4034 }
4035 #[inline]
4036 pub fn publication_token(&self) -> Option<SyntaxToken> {
4037 support::token(&self.syntax, SyntaxKind::PUBLICATION_KW)
4038 }
4039 #[inline]
4040 pub fn tables_token(&self) -> Option<SyntaxToken> {
4041 support::token(&self.syntax, SyntaxKind::TABLES_KW)
4042 }
4043}
4044
4045#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4046pub struct CreateRole {
4047 pub(crate) syntax: SyntaxNode,
4048}
4049impl CreateRole {
4050 #[inline]
4051 pub fn name(&self) -> Option<Name> {
4052 support::child(&self.syntax)
4053 }
4054 #[inline]
4055 pub fn role_option_list(&self) -> Option<RoleOptionList> {
4056 support::child(&self.syntax)
4057 }
4058 #[inline]
4059 pub fn create_token(&self) -> Option<SyntaxToken> {
4060 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4061 }
4062 #[inline]
4063 pub fn role_token(&self) -> Option<SyntaxToken> {
4064 support::token(&self.syntax, SyntaxKind::ROLE_KW)
4065 }
4066}
4067
4068#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4069pub struct CreateRule {
4070 pub(crate) syntax: SyntaxNode,
4071}
4072impl CreateRule {
4073 #[inline]
4074 pub fn name(&self) -> Option<Name> {
4075 support::child(&self.syntax)
4076 }
4077 #[inline]
4078 pub fn or_replace(&self) -> Option<OrReplace> {
4079 support::child(&self.syntax)
4080 }
4081 #[inline]
4082 pub fn path(&self) -> Option<Path> {
4083 support::child(&self.syntax)
4084 }
4085 #[inline]
4086 pub fn stmt(&self) -> Option<Stmt> {
4087 support::child(&self.syntax)
4088 }
4089 #[inline]
4090 pub fn stmts(&self) -> AstChildren<Stmt> {
4091 support::children(&self.syntax)
4092 }
4093 #[inline]
4094 pub fn where_clause(&self) -> Option<WhereClause> {
4095 support::child(&self.syntax)
4096 }
4097 #[inline]
4098 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
4099 support::token(&self.syntax, SyntaxKind::L_PAREN)
4100 }
4101 #[inline]
4102 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
4103 support::token(&self.syntax, SyntaxKind::R_PAREN)
4104 }
4105 #[inline]
4106 pub fn also_token(&self) -> Option<SyntaxToken> {
4107 support::token(&self.syntax, SyntaxKind::ALSO_KW)
4108 }
4109 #[inline]
4110 pub fn as_token(&self) -> Option<SyntaxToken> {
4111 support::token(&self.syntax, SyntaxKind::AS_KW)
4112 }
4113 #[inline]
4114 pub fn create_token(&self) -> Option<SyntaxToken> {
4115 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4116 }
4117 #[inline]
4118 pub fn delete_token(&self) -> Option<SyntaxToken> {
4119 support::token(&self.syntax, SyntaxKind::DELETE_KW)
4120 }
4121 #[inline]
4122 pub fn do_token(&self) -> Option<SyntaxToken> {
4123 support::token(&self.syntax, SyntaxKind::DO_KW)
4124 }
4125 #[inline]
4126 pub fn ident_token(&self) -> Option<SyntaxToken> {
4127 support::token(&self.syntax, SyntaxKind::IDENT)
4128 }
4129 #[inline]
4130 pub fn insert_token(&self) -> Option<SyntaxToken> {
4131 support::token(&self.syntax, SyntaxKind::INSERT_KW)
4132 }
4133 #[inline]
4134 pub fn instead_token(&self) -> Option<SyntaxToken> {
4135 support::token(&self.syntax, SyntaxKind::INSTEAD_KW)
4136 }
4137 #[inline]
4138 pub fn nothing_token(&self) -> Option<SyntaxToken> {
4139 support::token(&self.syntax, SyntaxKind::NOTHING_KW)
4140 }
4141 #[inline]
4142 pub fn on_token(&self) -> Option<SyntaxToken> {
4143 support::token(&self.syntax, SyntaxKind::ON_KW)
4144 }
4145 #[inline]
4146 pub fn rule_token(&self) -> Option<SyntaxToken> {
4147 support::token(&self.syntax, SyntaxKind::RULE_KW)
4148 }
4149 #[inline]
4150 pub fn select_token(&self) -> Option<SyntaxToken> {
4151 support::token(&self.syntax, SyntaxKind::SELECT_KW)
4152 }
4153 #[inline]
4154 pub fn to_token(&self) -> Option<SyntaxToken> {
4155 support::token(&self.syntax, SyntaxKind::TO_KW)
4156 }
4157 #[inline]
4158 pub fn update_token(&self) -> Option<SyntaxToken> {
4159 support::token(&self.syntax, SyntaxKind::UPDATE_KW)
4160 }
4161}
4162
4163#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4164pub struct CreateSchema {
4165 pub(crate) syntax: SyntaxNode,
4166}
4167impl CreateSchema {
4168 #[inline]
4169 pub fn if_not_exists(&self) -> Option<IfNotExists> {
4170 support::child(&self.syntax)
4171 }
4172 #[inline]
4173 pub fn name(&self) -> Option<Name> {
4174 support::child(&self.syntax)
4175 }
4176 #[inline]
4177 pub fn schema_authorization(&self) -> Option<SchemaAuthorization> {
4178 support::child(&self.syntax)
4179 }
4180 #[inline]
4181 pub fn schema_elements(&self) -> AstChildren<SchemaElement> {
4182 support::children(&self.syntax)
4183 }
4184 #[inline]
4185 pub fn create_token(&self) -> Option<SyntaxToken> {
4186 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4187 }
4188 #[inline]
4189 pub fn schema_token(&self) -> Option<SyntaxToken> {
4190 support::token(&self.syntax, SyntaxKind::SCHEMA_KW)
4191 }
4192}
4193
4194#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4195pub struct CreateSequence {
4196 pub(crate) syntax: SyntaxNode,
4197}
4198impl CreateSequence {
4199 #[inline]
4200 pub fn if_not_exists(&self) -> Option<IfNotExists> {
4201 support::child(&self.syntax)
4202 }
4203 #[inline]
4204 pub fn path(&self) -> Option<Path> {
4205 support::child(&self.syntax)
4206 }
4207 #[inline]
4208 pub fn sequence_options(&self) -> AstChildren<SequenceOption> {
4209 support::children(&self.syntax)
4210 }
4211 #[inline]
4212 pub fn create_token(&self) -> Option<SyntaxToken> {
4213 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4214 }
4215 #[inline]
4216 pub fn sequence_token(&self) -> Option<SyntaxToken> {
4217 support::token(&self.syntax, SyntaxKind::SEQUENCE_KW)
4218 }
4219 #[inline]
4220 pub fn temp_token(&self) -> Option<SyntaxToken> {
4221 support::token(&self.syntax, SyntaxKind::TEMP_KW)
4222 }
4223 #[inline]
4224 pub fn temporary_token(&self) -> Option<SyntaxToken> {
4225 support::token(&self.syntax, SyntaxKind::TEMPORARY_KW)
4226 }
4227 #[inline]
4228 pub fn unlogged_token(&self) -> Option<SyntaxToken> {
4229 support::token(&self.syntax, SyntaxKind::UNLOGGED_KW)
4230 }
4231}
4232
4233#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4234pub struct CreateServer {
4235 pub(crate) syntax: SyntaxNode,
4236}
4237impl CreateServer {
4238 #[inline]
4239 pub fn alter_option_list(&self) -> Option<AlterOptionList> {
4240 support::child(&self.syntax)
4241 }
4242 #[inline]
4243 pub fn if_not_exists(&self) -> Option<IfNotExists> {
4244 support::child(&self.syntax)
4245 }
4246 #[inline]
4247 pub fn literal(&self) -> Option<Literal> {
4248 support::child(&self.syntax)
4249 }
4250 #[inline]
4251 pub fn name(&self) -> Option<Name> {
4252 support::child(&self.syntax)
4253 }
4254 #[inline]
4255 pub fn name_ref(&self) -> Option<NameRef> {
4256 support::child(&self.syntax)
4257 }
4258 #[inline]
4259 pub fn create_token(&self) -> Option<SyntaxToken> {
4260 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4261 }
4262 #[inline]
4263 pub fn data_token(&self) -> Option<SyntaxToken> {
4264 support::token(&self.syntax, SyntaxKind::DATA_KW)
4265 }
4266 #[inline]
4267 pub fn foreign_token(&self) -> Option<SyntaxToken> {
4268 support::token(&self.syntax, SyntaxKind::FOREIGN_KW)
4269 }
4270 #[inline]
4271 pub fn server_token(&self) -> Option<SyntaxToken> {
4272 support::token(&self.syntax, SyntaxKind::SERVER_KW)
4273 }
4274 #[inline]
4275 pub fn type_token(&self) -> Option<SyntaxToken> {
4276 support::token(&self.syntax, SyntaxKind::TYPE_KW)
4277 }
4278 #[inline]
4279 pub fn version_token(&self) -> Option<SyntaxToken> {
4280 support::token(&self.syntax, SyntaxKind::VERSION_KW)
4281 }
4282 #[inline]
4283 pub fn wrapper_token(&self) -> Option<SyntaxToken> {
4284 support::token(&self.syntax, SyntaxKind::WRAPPER_KW)
4285 }
4286}
4287
4288#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4289pub struct CreateStatistics {
4290 pub(crate) syntax: SyntaxNode,
4291}
4292impl CreateStatistics {
4293 #[inline]
4294 pub fn from_table(&self) -> Option<FromTable> {
4295 support::child(&self.syntax)
4296 }
4297 #[inline]
4298 pub fn name_refs(&self) -> AstChildren<NameRef> {
4299 support::children(&self.syntax)
4300 }
4301 #[inline]
4302 pub fn path(&self) -> Option<Path> {
4303 support::child(&self.syntax)
4304 }
4305 #[inline]
4306 pub fn create_token(&self) -> Option<SyntaxToken> {
4307 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4308 }
4309 #[inline]
4310 pub fn on_token(&self) -> Option<SyntaxToken> {
4311 support::token(&self.syntax, SyntaxKind::ON_KW)
4312 }
4313 #[inline]
4314 pub fn statistics_token(&self) -> Option<SyntaxToken> {
4315 support::token(&self.syntax, SyntaxKind::STATISTICS_KW)
4316 }
4317}
4318
4319#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4320pub struct CreateSubscription {
4321 pub(crate) syntax: SyntaxNode,
4322}
4323impl CreateSubscription {
4324 #[inline]
4325 pub fn literal(&self) -> Option<Literal> {
4326 support::child(&self.syntax)
4327 }
4328 #[inline]
4329 pub fn name(&self) -> Option<Name> {
4330 support::child(&self.syntax)
4331 }
4332 #[inline]
4333 pub fn name_refs(&self) -> AstChildren<NameRef> {
4334 support::children(&self.syntax)
4335 }
4336 #[inline]
4337 pub fn with_params(&self) -> Option<WithParams> {
4338 support::child(&self.syntax)
4339 }
4340 #[inline]
4341 pub fn connection_token(&self) -> Option<SyntaxToken> {
4342 support::token(&self.syntax, SyntaxKind::CONNECTION_KW)
4343 }
4344 #[inline]
4345 pub fn create_token(&self) -> Option<SyntaxToken> {
4346 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4347 }
4348 #[inline]
4349 pub fn publication_token(&self) -> Option<SyntaxToken> {
4350 support::token(&self.syntax, SyntaxKind::PUBLICATION_KW)
4351 }
4352 #[inline]
4353 pub fn subscription_token(&self) -> Option<SyntaxToken> {
4354 support::token(&self.syntax, SyntaxKind::SUBSCRIPTION_KW)
4355 }
4356}
4357
4358#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4359pub struct CreateTable {
4360 pub(crate) syntax: SyntaxNode,
4361}
4362impl CreateTable {
4363 #[inline]
4364 pub fn if_not_exists(&self) -> Option<IfNotExists> {
4365 support::child(&self.syntax)
4366 }
4367 #[inline]
4368 pub fn inherits(&self) -> Option<Inherits> {
4369 support::child(&self.syntax)
4370 }
4371 #[inline]
4372 pub fn of_type(&self) -> Option<OfType> {
4373 support::child(&self.syntax)
4374 }
4375 #[inline]
4376 pub fn on_commit(&self) -> Option<OnCommit> {
4377 support::child(&self.syntax)
4378 }
4379 #[inline]
4380 pub fn partition_by(&self) -> Option<PartitionBy> {
4381 support::child(&self.syntax)
4382 }
4383 #[inline]
4384 pub fn partition_of(&self) -> Option<PartitionOf> {
4385 support::child(&self.syntax)
4386 }
4387 #[inline]
4388 pub fn path(&self) -> Option<Path> {
4389 support::child(&self.syntax)
4390 }
4391 #[inline]
4392 pub fn table_arg_list(&self) -> Option<TableArgList> {
4393 support::child(&self.syntax)
4394 }
4395 #[inline]
4396 pub fn tablespace(&self) -> Option<Tablespace> {
4397 support::child(&self.syntax)
4398 }
4399 #[inline]
4400 pub fn using_method(&self) -> Option<UsingMethod> {
4401 support::child(&self.syntax)
4402 }
4403 #[inline]
4404 pub fn with_params(&self) -> Option<WithParams> {
4405 support::child(&self.syntax)
4406 }
4407 #[inline]
4408 pub fn without_oids(&self) -> Option<WithoutOids> {
4409 support::child(&self.syntax)
4410 }
4411 #[inline]
4412 pub fn create_token(&self) -> Option<SyntaxToken> {
4413 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4414 }
4415 #[inline]
4416 pub fn global_token(&self) -> Option<SyntaxToken> {
4417 support::token(&self.syntax, SyntaxKind::GLOBAL_KW)
4418 }
4419 #[inline]
4420 pub fn local_token(&self) -> Option<SyntaxToken> {
4421 support::token(&self.syntax, SyntaxKind::LOCAL_KW)
4422 }
4423 #[inline]
4424 pub fn table_token(&self) -> Option<SyntaxToken> {
4425 support::token(&self.syntax, SyntaxKind::TABLE_KW)
4426 }
4427 #[inline]
4428 pub fn temp_token(&self) -> Option<SyntaxToken> {
4429 support::token(&self.syntax, SyntaxKind::TEMP_KW)
4430 }
4431 #[inline]
4432 pub fn temporary_token(&self) -> Option<SyntaxToken> {
4433 support::token(&self.syntax, SyntaxKind::TEMPORARY_KW)
4434 }
4435 #[inline]
4436 pub fn unlogged_token(&self) -> Option<SyntaxToken> {
4437 support::token(&self.syntax, SyntaxKind::UNLOGGED_KW)
4438 }
4439}
4440
4441#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4442pub struct CreateTableAs {
4443 pub(crate) syntax: SyntaxNode,
4444}
4445impl CreateTableAs {
4446 #[inline]
4447 pub fn if_not_exists(&self) -> Option<IfNotExists> {
4448 support::child(&self.syntax)
4449 }
4450 #[inline]
4451 pub fn on_commit(&self) -> Option<OnCommit> {
4452 support::child(&self.syntax)
4453 }
4454 #[inline]
4455 pub fn path(&self) -> Option<Path> {
4456 support::child(&self.syntax)
4457 }
4458 #[inline]
4459 pub fn query(&self) -> Option<SelectVariant> {
4460 support::child(&self.syntax)
4461 }
4462 #[inline]
4463 pub fn tablespace(&self) -> Option<Tablespace> {
4464 support::child(&self.syntax)
4465 }
4466 #[inline]
4467 pub fn using_method(&self) -> Option<UsingMethod> {
4468 support::child(&self.syntax)
4469 }
4470 #[inline]
4471 pub fn with_data(&self) -> Option<WithData> {
4472 support::child(&self.syntax)
4473 }
4474 #[inline]
4475 pub fn with_no_data(&self) -> Option<WithNoData> {
4476 support::child(&self.syntax)
4477 }
4478 #[inline]
4479 pub fn with_params(&self) -> Option<WithParams> {
4480 support::child(&self.syntax)
4481 }
4482 #[inline]
4483 pub fn without_oids(&self) -> Option<WithoutOids> {
4484 support::child(&self.syntax)
4485 }
4486 #[inline]
4487 pub fn as_token(&self) -> Option<SyntaxToken> {
4488 support::token(&self.syntax, SyntaxKind::AS_KW)
4489 }
4490 #[inline]
4491 pub fn create_token(&self) -> Option<SyntaxToken> {
4492 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4493 }
4494 #[inline]
4495 pub fn global_token(&self) -> Option<SyntaxToken> {
4496 support::token(&self.syntax, SyntaxKind::GLOBAL_KW)
4497 }
4498 #[inline]
4499 pub fn local_token(&self) -> Option<SyntaxToken> {
4500 support::token(&self.syntax, SyntaxKind::LOCAL_KW)
4501 }
4502 #[inline]
4503 pub fn table_token(&self) -> Option<SyntaxToken> {
4504 support::token(&self.syntax, SyntaxKind::TABLE_KW)
4505 }
4506 #[inline]
4507 pub fn temp_token(&self) -> Option<SyntaxToken> {
4508 support::token(&self.syntax, SyntaxKind::TEMP_KW)
4509 }
4510 #[inline]
4511 pub fn temporary_token(&self) -> Option<SyntaxToken> {
4512 support::token(&self.syntax, SyntaxKind::TEMPORARY_KW)
4513 }
4514 #[inline]
4515 pub fn unlogged_token(&self) -> Option<SyntaxToken> {
4516 support::token(&self.syntax, SyntaxKind::UNLOGGED_KW)
4517 }
4518}
4519
4520#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4521pub struct CreateTablespace {
4522 pub(crate) syntax: SyntaxNode,
4523}
4524impl CreateTablespace {
4525 #[inline]
4526 pub fn literal(&self) -> Option<Literal> {
4527 support::child(&self.syntax)
4528 }
4529 #[inline]
4530 pub fn name(&self) -> Option<Name> {
4531 support::child(&self.syntax)
4532 }
4533 #[inline]
4534 pub fn role(&self) -> Option<Role> {
4535 support::child(&self.syntax)
4536 }
4537 #[inline]
4538 pub fn with_params(&self) -> Option<WithParams> {
4539 support::child(&self.syntax)
4540 }
4541 #[inline]
4542 pub fn create_token(&self) -> Option<SyntaxToken> {
4543 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4544 }
4545 #[inline]
4546 pub fn location_token(&self) -> Option<SyntaxToken> {
4547 support::token(&self.syntax, SyntaxKind::LOCATION_KW)
4548 }
4549 #[inline]
4550 pub fn owner_token(&self) -> Option<SyntaxToken> {
4551 support::token(&self.syntax, SyntaxKind::OWNER_KW)
4552 }
4553 #[inline]
4554 pub fn tablespace_token(&self) -> Option<SyntaxToken> {
4555 support::token(&self.syntax, SyntaxKind::TABLESPACE_KW)
4556 }
4557}
4558
4559#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4560pub struct CreateTextSearchConfiguration {
4561 pub(crate) syntax: SyntaxNode,
4562}
4563impl CreateTextSearchConfiguration {
4564 #[inline]
4565 pub fn attribute_list(&self) -> Option<AttributeList> {
4566 support::child(&self.syntax)
4567 }
4568 #[inline]
4569 pub fn path(&self) -> Option<Path> {
4570 support::child(&self.syntax)
4571 }
4572 #[inline]
4573 pub fn configuration_token(&self) -> Option<SyntaxToken> {
4574 support::token(&self.syntax, SyntaxKind::CONFIGURATION_KW)
4575 }
4576 #[inline]
4577 pub fn create_token(&self) -> Option<SyntaxToken> {
4578 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4579 }
4580 #[inline]
4581 pub fn search_token(&self) -> Option<SyntaxToken> {
4582 support::token(&self.syntax, SyntaxKind::SEARCH_KW)
4583 }
4584 #[inline]
4585 pub fn text_token(&self) -> Option<SyntaxToken> {
4586 support::token(&self.syntax, SyntaxKind::TEXT_KW)
4587 }
4588}
4589
4590#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4591pub struct CreateTextSearchDictionary {
4592 pub(crate) syntax: SyntaxNode,
4593}
4594impl CreateTextSearchDictionary {
4595 #[inline]
4596 pub fn attribute_list(&self) -> Option<AttributeList> {
4597 support::child(&self.syntax)
4598 }
4599 #[inline]
4600 pub fn path(&self) -> Option<Path> {
4601 support::child(&self.syntax)
4602 }
4603 #[inline]
4604 pub fn create_token(&self) -> Option<SyntaxToken> {
4605 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4606 }
4607 #[inline]
4608 pub fn dictionary_token(&self) -> Option<SyntaxToken> {
4609 support::token(&self.syntax, SyntaxKind::DICTIONARY_KW)
4610 }
4611 #[inline]
4612 pub fn search_token(&self) -> Option<SyntaxToken> {
4613 support::token(&self.syntax, SyntaxKind::SEARCH_KW)
4614 }
4615 #[inline]
4616 pub fn text_token(&self) -> Option<SyntaxToken> {
4617 support::token(&self.syntax, SyntaxKind::TEXT_KW)
4618 }
4619}
4620
4621#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4622pub struct CreateTextSearchParser {
4623 pub(crate) syntax: SyntaxNode,
4624}
4625impl CreateTextSearchParser {
4626 #[inline]
4627 pub fn attribute_list(&self) -> Option<AttributeList> {
4628 support::child(&self.syntax)
4629 }
4630 #[inline]
4631 pub fn path(&self) -> Option<Path> {
4632 support::child(&self.syntax)
4633 }
4634 #[inline]
4635 pub fn create_token(&self) -> Option<SyntaxToken> {
4636 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4637 }
4638 #[inline]
4639 pub fn parser_token(&self) -> Option<SyntaxToken> {
4640 support::token(&self.syntax, SyntaxKind::PARSER_KW)
4641 }
4642 #[inline]
4643 pub fn search_token(&self) -> Option<SyntaxToken> {
4644 support::token(&self.syntax, SyntaxKind::SEARCH_KW)
4645 }
4646 #[inline]
4647 pub fn text_token(&self) -> Option<SyntaxToken> {
4648 support::token(&self.syntax, SyntaxKind::TEXT_KW)
4649 }
4650}
4651
4652#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4653pub struct CreateTextSearchTemplate {
4654 pub(crate) syntax: SyntaxNode,
4655}
4656impl CreateTextSearchTemplate {
4657 #[inline]
4658 pub fn attribute_list(&self) -> Option<AttributeList> {
4659 support::child(&self.syntax)
4660 }
4661 #[inline]
4662 pub fn path(&self) -> Option<Path> {
4663 support::child(&self.syntax)
4664 }
4665 #[inline]
4666 pub fn create_token(&self) -> Option<SyntaxToken> {
4667 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4668 }
4669 #[inline]
4670 pub fn search_token(&self) -> Option<SyntaxToken> {
4671 support::token(&self.syntax, SyntaxKind::SEARCH_KW)
4672 }
4673 #[inline]
4674 pub fn template_token(&self) -> Option<SyntaxToken> {
4675 support::token(&self.syntax, SyntaxKind::TEMPLATE_KW)
4676 }
4677 #[inline]
4678 pub fn text_token(&self) -> Option<SyntaxToken> {
4679 support::token(&self.syntax, SyntaxKind::TEXT_KW)
4680 }
4681}
4682
4683#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4684pub struct CreateTransform {
4685 pub(crate) syntax: SyntaxNode,
4686}
4687impl CreateTransform {
4688 #[inline]
4689 pub fn from_func(&self) -> Option<TransformFromFunc> {
4690 support::child(&self.syntax)
4691 }
4692 #[inline]
4693 pub fn language(&self) -> Option<NameRef> {
4694 support::child(&self.syntax)
4695 }
4696 #[inline]
4697 pub fn or_replace(&self) -> Option<OrReplace> {
4698 support::child(&self.syntax)
4699 }
4700 #[inline]
4701 pub fn to_func(&self) -> Option<TransformToFunc> {
4702 support::child(&self.syntax)
4703 }
4704 #[inline]
4705 pub fn ty(&self) -> Option<Type> {
4706 support::child(&self.syntax)
4707 }
4708 #[inline]
4709 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
4710 support::token(&self.syntax, SyntaxKind::L_PAREN)
4711 }
4712 #[inline]
4713 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
4714 support::token(&self.syntax, SyntaxKind::R_PAREN)
4715 }
4716 #[inline]
4717 pub fn comma_token(&self) -> Option<SyntaxToken> {
4718 support::token(&self.syntax, SyntaxKind::COMMA)
4719 }
4720 #[inline]
4721 pub fn create_token(&self) -> Option<SyntaxToken> {
4722 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4723 }
4724 #[inline]
4725 pub fn for_token(&self) -> Option<SyntaxToken> {
4726 support::token(&self.syntax, SyntaxKind::FOR_KW)
4727 }
4728 #[inline]
4729 pub fn language_token(&self) -> Option<SyntaxToken> {
4730 support::token(&self.syntax, SyntaxKind::LANGUAGE_KW)
4731 }
4732 #[inline]
4733 pub fn transform_token(&self) -> Option<SyntaxToken> {
4734 support::token(&self.syntax, SyntaxKind::TRANSFORM_KW)
4735 }
4736}
4737
4738#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4739pub struct CreateTrigger {
4740 pub(crate) syntax: SyntaxNode,
4741}
4742impl CreateTrigger {
4743 #[inline]
4744 pub fn call_expr(&self) -> Option<CallExpr> {
4745 support::child(&self.syntax)
4746 }
4747 #[inline]
4748 pub fn deferrable_constraint_option(&self) -> Option<DeferrableConstraintOption> {
4749 support::child(&self.syntax)
4750 }
4751 #[inline]
4752 pub fn from_table(&self) -> Option<FromTable> {
4753 support::child(&self.syntax)
4754 }
4755 #[inline]
4756 pub fn initially_deferred_constraint_option(
4757 &self,
4758 ) -> Option<InitiallyDeferredConstraintOption> {
4759 support::child(&self.syntax)
4760 }
4761 #[inline]
4762 pub fn initially_immediate_constraint_option(
4763 &self,
4764 ) -> Option<InitiallyImmediateConstraintOption> {
4765 support::child(&self.syntax)
4766 }
4767 #[inline]
4768 pub fn name(&self) -> Option<Name> {
4769 support::child(&self.syntax)
4770 }
4771 #[inline]
4772 pub fn not_deferrable_constraint_option(&self) -> Option<NotDeferrableConstraintOption> {
4773 support::child(&self.syntax)
4774 }
4775 #[inline]
4776 pub fn on_table(&self) -> Option<OnTable> {
4777 support::child(&self.syntax)
4778 }
4779 #[inline]
4780 pub fn or_replace(&self) -> Option<OrReplace> {
4781 support::child(&self.syntax)
4782 }
4783 #[inline]
4784 pub fn referencing(&self) -> Option<Referencing> {
4785 support::child(&self.syntax)
4786 }
4787 #[inline]
4788 pub fn timing(&self) -> Option<Timing> {
4789 support::child(&self.syntax)
4790 }
4791 #[inline]
4792 pub fn trigger_event_list(&self) -> Option<TriggerEventList> {
4793 support::child(&self.syntax)
4794 }
4795 #[inline]
4796 pub fn when_condition(&self) -> Option<WhenCondition> {
4797 support::child(&self.syntax)
4798 }
4799 #[inline]
4800 pub fn constraint_token(&self) -> Option<SyntaxToken> {
4801 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
4802 }
4803 #[inline]
4804 pub fn create_token(&self) -> Option<SyntaxToken> {
4805 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4806 }
4807 #[inline]
4808 pub fn each_token(&self) -> Option<SyntaxToken> {
4809 support::token(&self.syntax, SyntaxKind::EACH_KW)
4810 }
4811 #[inline]
4812 pub fn execute_token(&self) -> Option<SyntaxToken> {
4813 support::token(&self.syntax, SyntaxKind::EXECUTE_KW)
4814 }
4815 #[inline]
4816 pub fn for_token(&self) -> Option<SyntaxToken> {
4817 support::token(&self.syntax, SyntaxKind::FOR_KW)
4818 }
4819 #[inline]
4820 pub fn function_token(&self) -> Option<SyntaxToken> {
4821 support::token(&self.syntax, SyntaxKind::FUNCTION_KW)
4822 }
4823 #[inline]
4824 pub fn procedure_token(&self) -> Option<SyntaxToken> {
4825 support::token(&self.syntax, SyntaxKind::PROCEDURE_KW)
4826 }
4827 #[inline]
4828 pub fn row_token(&self) -> Option<SyntaxToken> {
4829 support::token(&self.syntax, SyntaxKind::ROW_KW)
4830 }
4831 #[inline]
4832 pub fn statement_token(&self) -> Option<SyntaxToken> {
4833 support::token(&self.syntax, SyntaxKind::STATEMENT_KW)
4834 }
4835 #[inline]
4836 pub fn trigger_token(&self) -> Option<SyntaxToken> {
4837 support::token(&self.syntax, SyntaxKind::TRIGGER_KW)
4838 }
4839}
4840
4841#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4842pub struct CreateType {
4843 pub(crate) syntax: SyntaxNode,
4844}
4845impl CreateType {
4846 #[inline]
4847 pub fn attribute_list(&self) -> Option<AttributeList> {
4848 support::child(&self.syntax)
4849 }
4850 #[inline]
4851 pub fn column_list(&self) -> Option<ColumnList> {
4852 support::child(&self.syntax)
4853 }
4854 #[inline]
4855 pub fn path(&self) -> Option<Path> {
4856 support::child(&self.syntax)
4857 }
4858 #[inline]
4859 pub fn variant_list(&self) -> Option<VariantList> {
4860 support::child(&self.syntax)
4861 }
4862 #[inline]
4863 pub fn as_token(&self) -> Option<SyntaxToken> {
4864 support::token(&self.syntax, SyntaxKind::AS_KW)
4865 }
4866 #[inline]
4867 pub fn create_token(&self) -> Option<SyntaxToken> {
4868 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4869 }
4870 #[inline]
4871 pub fn enum_token(&self) -> Option<SyntaxToken> {
4872 support::token(&self.syntax, SyntaxKind::ENUM_KW)
4873 }
4874 #[inline]
4875 pub fn range_token(&self) -> Option<SyntaxToken> {
4876 support::token(&self.syntax, SyntaxKind::RANGE_KW)
4877 }
4878 #[inline]
4879 pub fn type_token(&self) -> Option<SyntaxToken> {
4880 support::token(&self.syntax, SyntaxKind::TYPE_KW)
4881 }
4882}
4883
4884#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4885pub struct CreateUser {
4886 pub(crate) syntax: SyntaxNode,
4887}
4888impl CreateUser {
4889 #[inline]
4890 pub fn name(&self) -> Option<Name> {
4891 support::child(&self.syntax)
4892 }
4893 #[inline]
4894 pub fn role_option_list(&self) -> Option<RoleOptionList> {
4895 support::child(&self.syntax)
4896 }
4897 #[inline]
4898 pub fn create_token(&self) -> Option<SyntaxToken> {
4899 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4900 }
4901 #[inline]
4902 pub fn user_token(&self) -> Option<SyntaxToken> {
4903 support::token(&self.syntax, SyntaxKind::USER_KW)
4904 }
4905}
4906
4907#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4908pub struct CreateUserMapping {
4909 pub(crate) syntax: SyntaxNode,
4910}
4911impl CreateUserMapping {
4912 #[inline]
4913 pub fn alter_option_list(&self) -> Option<AlterOptionList> {
4914 support::child(&self.syntax)
4915 }
4916 #[inline]
4917 pub fn if_not_exists(&self) -> Option<IfNotExists> {
4918 support::child(&self.syntax)
4919 }
4920 #[inline]
4921 pub fn role(&self) -> Option<Role> {
4922 support::child(&self.syntax)
4923 }
4924 #[inline]
4925 pub fn server_name(&self) -> Option<ServerName> {
4926 support::child(&self.syntax)
4927 }
4928 #[inline]
4929 pub fn create_token(&self) -> Option<SyntaxToken> {
4930 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4931 }
4932 #[inline]
4933 pub fn for_token(&self) -> Option<SyntaxToken> {
4934 support::token(&self.syntax, SyntaxKind::FOR_KW)
4935 }
4936 #[inline]
4937 pub fn mapping_token(&self) -> Option<SyntaxToken> {
4938 support::token(&self.syntax, SyntaxKind::MAPPING_KW)
4939 }
4940 #[inline]
4941 pub fn user_token(&self) -> Option<SyntaxToken> {
4942 support::token(&self.syntax, SyntaxKind::USER_KW)
4943 }
4944}
4945
4946#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4947pub struct CreateView {
4948 pub(crate) syntax: SyntaxNode,
4949}
4950impl CreateView {
4951 #[inline]
4952 pub fn column_list(&self) -> Option<ColumnList> {
4953 support::child(&self.syntax)
4954 }
4955 #[inline]
4956 pub fn or_replace(&self) -> Option<OrReplace> {
4957 support::child(&self.syntax)
4958 }
4959 #[inline]
4960 pub fn path(&self) -> Option<Path> {
4961 support::child(&self.syntax)
4962 }
4963 #[inline]
4964 pub fn query(&self) -> Option<SelectVariant> {
4965 support::child(&self.syntax)
4966 }
4967 #[inline]
4968 pub fn with_params(&self) -> Option<WithParams> {
4969 support::child(&self.syntax)
4970 }
4971 #[inline]
4972 pub fn as_token(&self) -> Option<SyntaxToken> {
4973 support::token(&self.syntax, SyntaxKind::AS_KW)
4974 }
4975 #[inline]
4976 pub fn cascaded_token(&self) -> Option<SyntaxToken> {
4977 support::token(&self.syntax, SyntaxKind::CASCADED_KW)
4978 }
4979 #[inline]
4980 pub fn check_token(&self) -> Option<SyntaxToken> {
4981 support::token(&self.syntax, SyntaxKind::CHECK_KW)
4982 }
4983 #[inline]
4984 pub fn create_token(&self) -> Option<SyntaxToken> {
4985 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4986 }
4987 #[inline]
4988 pub fn local_token(&self) -> Option<SyntaxToken> {
4989 support::token(&self.syntax, SyntaxKind::LOCAL_KW)
4990 }
4991 #[inline]
4992 pub fn option_token(&self) -> Option<SyntaxToken> {
4993 support::token(&self.syntax, SyntaxKind::OPTION_KW)
4994 }
4995 #[inline]
4996 pub fn recursive_token(&self) -> Option<SyntaxToken> {
4997 support::token(&self.syntax, SyntaxKind::RECURSIVE_KW)
4998 }
4999 #[inline]
5000 pub fn temp_token(&self) -> Option<SyntaxToken> {
5001 support::token(&self.syntax, SyntaxKind::TEMP_KW)
5002 }
5003 #[inline]
5004 pub fn temporary_token(&self) -> Option<SyntaxToken> {
5005 support::token(&self.syntax, SyntaxKind::TEMPORARY_KW)
5006 }
5007 #[inline]
5008 pub fn view_token(&self) -> Option<SyntaxToken> {
5009 support::token(&self.syntax, SyntaxKind::VIEW_KW)
5010 }
5011 #[inline]
5012 pub fn with_token(&self) -> Option<SyntaxToken> {
5013 support::token(&self.syntax, SyntaxKind::WITH_KW)
5014 }
5015}
5016
5017#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5018pub struct CustomOp {
5019 pub(crate) syntax: SyntaxNode,
5020}
5021impl CustomOp {
5022 #[inline]
5023 pub fn bang_token(&self) -> Option<SyntaxToken> {
5024 support::token(&self.syntax, SyntaxKind::BANG)
5025 }
5026 #[inline]
5027 pub fn pound_token(&self) -> Option<SyntaxToken> {
5028 support::token(&self.syntax, SyntaxKind::POUND)
5029 }
5030 #[inline]
5031 pub fn percent_token(&self) -> Option<SyntaxToken> {
5032 support::token(&self.syntax, SyntaxKind::PERCENT)
5033 }
5034 #[inline]
5035 pub fn amp_token(&self) -> Option<SyntaxToken> {
5036 support::token(&self.syntax, SyntaxKind::AMP)
5037 }
5038 #[inline]
5039 pub fn star_token(&self) -> Option<SyntaxToken> {
5040 support::token(&self.syntax, SyntaxKind::STAR)
5041 }
5042 #[inline]
5043 pub fn plus_token(&self) -> Option<SyntaxToken> {
5044 support::token(&self.syntax, SyntaxKind::PLUS)
5045 }
5046 #[inline]
5047 pub fn minus_token(&self) -> Option<SyntaxToken> {
5048 support::token(&self.syntax, SyntaxKind::MINUS)
5049 }
5050 #[inline]
5051 pub fn slash_token(&self) -> Option<SyntaxToken> {
5052 support::token(&self.syntax, SyntaxKind::SLASH)
5053 }
5054 #[inline]
5055 pub fn l_angle_token(&self) -> Option<SyntaxToken> {
5056 support::token(&self.syntax, SyntaxKind::L_ANGLE)
5057 }
5058 #[inline]
5059 pub fn eq_token(&self) -> Option<SyntaxToken> {
5060 support::token(&self.syntax, SyntaxKind::EQ)
5061 }
5062 #[inline]
5063 pub fn r_angle_token(&self) -> Option<SyntaxToken> {
5064 support::token(&self.syntax, SyntaxKind::R_ANGLE)
5065 }
5066 #[inline]
5067 pub fn question_token(&self) -> Option<SyntaxToken> {
5068 support::token(&self.syntax, SyntaxKind::QUESTION)
5069 }
5070 #[inline]
5071 pub fn at_token(&self) -> Option<SyntaxToken> {
5072 support::token(&self.syntax, SyntaxKind::AT)
5073 }
5074 #[inline]
5075 pub fn caret_token(&self) -> Option<SyntaxToken> {
5076 support::token(&self.syntax, SyntaxKind::CARET)
5077 }
5078 #[inline]
5079 pub fn backtick_token(&self) -> Option<SyntaxToken> {
5080 support::token(&self.syntax, SyntaxKind::BACKTICK)
5081 }
5082 #[inline]
5083 pub fn pipe_token(&self) -> Option<SyntaxToken> {
5084 support::token(&self.syntax, SyntaxKind::PIPE)
5085 }
5086 #[inline]
5087 pub fn tilde_token(&self) -> Option<SyntaxToken> {
5088 support::token(&self.syntax, SyntaxKind::TILDE)
5089 }
5090}
5091
5092#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5093pub struct Deallocate {
5094 pub(crate) syntax: SyntaxNode,
5095}
5096impl Deallocate {
5097 #[inline]
5098 pub fn name_ref(&self) -> Option<NameRef> {
5099 support::child(&self.syntax)
5100 }
5101 #[inline]
5102 pub fn all_token(&self) -> Option<SyntaxToken> {
5103 support::token(&self.syntax, SyntaxKind::ALL_KW)
5104 }
5105 #[inline]
5106 pub fn deallocate_token(&self) -> Option<SyntaxToken> {
5107 support::token(&self.syntax, SyntaxKind::DEALLOCATE_KW)
5108 }
5109 #[inline]
5110 pub fn prepare_token(&self) -> Option<SyntaxToken> {
5111 support::token(&self.syntax, SyntaxKind::PREPARE_KW)
5112 }
5113}
5114
5115#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5116pub struct Declare {
5117 pub(crate) syntax: SyntaxNode,
5118}
5119impl Declare {
5120 #[inline]
5121 pub fn name(&self) -> Option<Name> {
5122 support::child(&self.syntax)
5123 }
5124 #[inline]
5125 pub fn query(&self) -> Option<SelectVariant> {
5126 support::child(&self.syntax)
5127 }
5128 #[inline]
5129 pub fn asensitive_token(&self) -> Option<SyntaxToken> {
5130 support::token(&self.syntax, SyntaxKind::ASENSITIVE_KW)
5131 }
5132 #[inline]
5133 pub fn binary_token(&self) -> Option<SyntaxToken> {
5134 support::token(&self.syntax, SyntaxKind::BINARY_KW)
5135 }
5136 #[inline]
5137 pub fn cursor_token(&self) -> Option<SyntaxToken> {
5138 support::token(&self.syntax, SyntaxKind::CURSOR_KW)
5139 }
5140 #[inline]
5141 pub fn declare_token(&self) -> Option<SyntaxToken> {
5142 support::token(&self.syntax, SyntaxKind::DECLARE_KW)
5143 }
5144 #[inline]
5145 pub fn for_token(&self) -> Option<SyntaxToken> {
5146 support::token(&self.syntax, SyntaxKind::FOR_KW)
5147 }
5148 #[inline]
5149 pub fn hold_token(&self) -> Option<SyntaxToken> {
5150 support::token(&self.syntax, SyntaxKind::HOLD_KW)
5151 }
5152 #[inline]
5153 pub fn insensitive_token(&self) -> Option<SyntaxToken> {
5154 support::token(&self.syntax, SyntaxKind::INSENSITIVE_KW)
5155 }
5156 #[inline]
5157 pub fn no_token(&self) -> Option<SyntaxToken> {
5158 support::token(&self.syntax, SyntaxKind::NO_KW)
5159 }
5160 #[inline]
5161 pub fn scroll_token(&self) -> Option<SyntaxToken> {
5162 support::token(&self.syntax, SyntaxKind::SCROLL_KW)
5163 }
5164 #[inline]
5165 pub fn with_token(&self) -> Option<SyntaxToken> {
5166 support::token(&self.syntax, SyntaxKind::WITH_KW)
5167 }
5168 #[inline]
5169 pub fn without_token(&self) -> Option<SyntaxToken> {
5170 support::token(&self.syntax, SyntaxKind::WITHOUT_KW)
5171 }
5172}
5173
5174#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5175pub struct DefaultConstraint {
5176 pub(crate) syntax: SyntaxNode,
5177}
5178impl DefaultConstraint {
5179 #[inline]
5180 pub fn expr(&self) -> Option<Expr> {
5181 support::child(&self.syntax)
5182 }
5183 #[inline]
5184 pub fn name_ref(&self) -> Option<NameRef> {
5185 support::child(&self.syntax)
5186 }
5187 #[inline]
5188 pub fn constraint_token(&self) -> Option<SyntaxToken> {
5189 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
5190 }
5191 #[inline]
5192 pub fn default_token(&self) -> Option<SyntaxToken> {
5193 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
5194 }
5195}
5196
5197#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5198pub struct Deferrable {
5199 pub(crate) syntax: SyntaxNode,
5200}
5201impl Deferrable {
5202 #[inline]
5203 pub fn deferrable_token(&self) -> Option<SyntaxToken> {
5204 support::token(&self.syntax, SyntaxKind::DEFERRABLE_KW)
5205 }
5206}
5207
5208#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5209pub struct DeferrableConstraintOption {
5210 pub(crate) syntax: SyntaxNode,
5211}
5212impl DeferrableConstraintOption {
5213 #[inline]
5214 pub fn deferrable_token(&self) -> Option<SyntaxToken> {
5215 support::token(&self.syntax, SyntaxKind::DEFERRABLE_KW)
5216 }
5217}
5218
5219#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5220pub struct Delete {
5221 pub(crate) syntax: SyntaxNode,
5222}
5223impl Delete {
5224 #[inline]
5225 pub fn alias(&self) -> Option<Alias> {
5226 support::child(&self.syntax)
5227 }
5228 #[inline]
5229 pub fn relation_name(&self) -> Option<RelationName> {
5230 support::child(&self.syntax)
5231 }
5232 #[inline]
5233 pub fn returning_clause(&self) -> Option<ReturningClause> {
5234 support::child(&self.syntax)
5235 }
5236 #[inline]
5237 pub fn using_clause(&self) -> Option<UsingClause> {
5238 support::child(&self.syntax)
5239 }
5240 #[inline]
5241 pub fn where_clause(&self) -> Option<WhereClause> {
5242 support::child(&self.syntax)
5243 }
5244 #[inline]
5245 pub fn where_current_of(&self) -> Option<WhereCurrentOf> {
5246 support::child(&self.syntax)
5247 }
5248 #[inline]
5249 pub fn with_clause(&self) -> Option<WithClause> {
5250 support::child(&self.syntax)
5251 }
5252 #[inline]
5253 pub fn delete_token(&self) -> Option<SyntaxToken> {
5254 support::token(&self.syntax, SyntaxKind::DELETE_KW)
5255 }
5256 #[inline]
5257 pub fn from_token(&self) -> Option<SyntaxToken> {
5258 support::token(&self.syntax, SyntaxKind::FROM_KW)
5259 }
5260}
5261
5262#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5263pub struct DeleteRows {
5264 pub(crate) syntax: SyntaxNode,
5265}
5266impl DeleteRows {
5267 #[inline]
5268 pub fn delete_token(&self) -> Option<SyntaxToken> {
5269 support::token(&self.syntax, SyntaxKind::DELETE_KW)
5270 }
5271 #[inline]
5272 pub fn rows_token(&self) -> Option<SyntaxToken> {
5273 support::token(&self.syntax, SyntaxKind::ROWS_KW)
5274 }
5275}
5276
5277#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5278pub struct DependsOnExtension {
5279 pub(crate) syntax: SyntaxNode,
5280}
5281impl DependsOnExtension {
5282 #[inline]
5283 pub fn name_ref(&self) -> Option<NameRef> {
5284 support::child(&self.syntax)
5285 }
5286 #[inline]
5287 pub fn depends_token(&self) -> Option<SyntaxToken> {
5288 support::token(&self.syntax, SyntaxKind::DEPENDS_KW)
5289 }
5290 #[inline]
5291 pub fn extension_token(&self) -> Option<SyntaxToken> {
5292 support::token(&self.syntax, SyntaxKind::EXTENSION_KW)
5293 }
5294 #[inline]
5295 pub fn on_token(&self) -> Option<SyntaxToken> {
5296 support::token(&self.syntax, SyntaxKind::ON_KW)
5297 }
5298}
5299
5300#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5301pub struct DetachPartition {
5302 pub(crate) syntax: SyntaxNode,
5303}
5304impl DetachPartition {
5305 #[inline]
5306 pub fn detach_token(&self) -> Option<SyntaxToken> {
5307 support::token(&self.syntax, SyntaxKind::DETACH_KW)
5308 }
5309 #[inline]
5310 pub fn partition_token(&self) -> Option<SyntaxToken> {
5311 support::token(&self.syntax, SyntaxKind::PARTITION_KW)
5312 }
5313}
5314
5315#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5316pub struct DisableRls {
5317 pub(crate) syntax: SyntaxNode,
5318}
5319impl DisableRls {
5320 #[inline]
5321 pub fn disable_token(&self) -> Option<SyntaxToken> {
5322 support::token(&self.syntax, SyntaxKind::DISABLE_KW)
5323 }
5324 #[inline]
5325 pub fn level_token(&self) -> Option<SyntaxToken> {
5326 support::token(&self.syntax, SyntaxKind::LEVEL_KW)
5327 }
5328 #[inline]
5329 pub fn row_token(&self) -> Option<SyntaxToken> {
5330 support::token(&self.syntax, SyntaxKind::ROW_KW)
5331 }
5332 #[inline]
5333 pub fn security_token(&self) -> Option<SyntaxToken> {
5334 support::token(&self.syntax, SyntaxKind::SECURITY_KW)
5335 }
5336}
5337
5338#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5339pub struct DisableRule {
5340 pub(crate) syntax: SyntaxNode,
5341}
5342impl DisableRule {
5343 #[inline]
5344 pub fn disable_token(&self) -> Option<SyntaxToken> {
5345 support::token(&self.syntax, SyntaxKind::DISABLE_KW)
5346 }
5347 #[inline]
5348 pub fn rule_token(&self) -> Option<SyntaxToken> {
5349 support::token(&self.syntax, SyntaxKind::RULE_KW)
5350 }
5351}
5352
5353#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5354pub struct DisableTrigger {
5355 pub(crate) syntax: SyntaxNode,
5356}
5357impl DisableTrigger {
5358 #[inline]
5359 pub fn disable_token(&self) -> Option<SyntaxToken> {
5360 support::token(&self.syntax, SyntaxKind::DISABLE_KW)
5361 }
5362 #[inline]
5363 pub fn trigger_token(&self) -> Option<SyntaxToken> {
5364 support::token(&self.syntax, SyntaxKind::TRIGGER_KW)
5365 }
5366}
5367
5368#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5369pub struct Discard {
5370 pub(crate) syntax: SyntaxNode,
5371}
5372impl Discard {
5373 #[inline]
5374 pub fn all_token(&self) -> Option<SyntaxToken> {
5375 support::token(&self.syntax, SyntaxKind::ALL_KW)
5376 }
5377 #[inline]
5378 pub fn discard_token(&self) -> Option<SyntaxToken> {
5379 support::token(&self.syntax, SyntaxKind::DISCARD_KW)
5380 }
5381 #[inline]
5382 pub fn plans_token(&self) -> Option<SyntaxToken> {
5383 support::token(&self.syntax, SyntaxKind::PLANS_KW)
5384 }
5385 #[inline]
5386 pub fn sequences_token(&self) -> Option<SyntaxToken> {
5387 support::token(&self.syntax, SyntaxKind::SEQUENCES_KW)
5388 }
5389 #[inline]
5390 pub fn temp_token(&self) -> Option<SyntaxToken> {
5391 support::token(&self.syntax, SyntaxKind::TEMP_KW)
5392 }
5393 #[inline]
5394 pub fn temporary_token(&self) -> Option<SyntaxToken> {
5395 support::token(&self.syntax, SyntaxKind::TEMPORARY_KW)
5396 }
5397}
5398
5399#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5400pub struct DistinctClause {
5401 pub(crate) syntax: SyntaxNode,
5402}
5403impl DistinctClause {
5404 #[inline]
5405 pub fn exprs(&self) -> AstChildren<Expr> {
5406 support::children(&self.syntax)
5407 }
5408 #[inline]
5409 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
5410 support::token(&self.syntax, SyntaxKind::L_PAREN)
5411 }
5412 #[inline]
5413 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
5414 support::token(&self.syntax, SyntaxKind::R_PAREN)
5415 }
5416 #[inline]
5417 pub fn distinct_token(&self) -> Option<SyntaxToken> {
5418 support::token(&self.syntax, SyntaxKind::DISTINCT_KW)
5419 }
5420 #[inline]
5421 pub fn on_token(&self) -> Option<SyntaxToken> {
5422 support::token(&self.syntax, SyntaxKind::ON_KW)
5423 }
5424}
5425
5426#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5427pub struct Do {
5428 pub(crate) syntax: SyntaxNode,
5429}
5430impl Do {
5431 #[inline]
5432 pub fn do_token(&self) -> Option<SyntaxToken> {
5433 support::token(&self.syntax, SyntaxKind::DO_KW)
5434 }
5435}
5436
5437#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5438pub struct DoubleType {
5439 pub(crate) syntax: SyntaxNode,
5440}
5441impl DoubleType {
5442 #[inline]
5443 pub fn double_token(&self) -> Option<SyntaxToken> {
5444 support::token(&self.syntax, SyntaxKind::DOUBLE_KW)
5445 }
5446 #[inline]
5447 pub fn precision_token(&self) -> Option<SyntaxToken> {
5448 support::token(&self.syntax, SyntaxKind::PRECISION_KW)
5449 }
5450}
5451
5452#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5453pub struct Drop {
5454 pub(crate) syntax: SyntaxNode,
5455}
5456impl Drop {
5457 #[inline]
5458 pub fn drop_token(&self) -> Option<SyntaxToken> {
5459 support::token(&self.syntax, SyntaxKind::DROP_KW)
5460 }
5461}
5462
5463#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5464pub struct DropAccessMethod {
5465 pub(crate) syntax: SyntaxNode,
5466}
5467impl DropAccessMethod {
5468 #[inline]
5469 pub fn if_exists(&self) -> Option<IfExists> {
5470 support::child(&self.syntax)
5471 }
5472 #[inline]
5473 pub fn name_ref(&self) -> Option<NameRef> {
5474 support::child(&self.syntax)
5475 }
5476 #[inline]
5477 pub fn access_token(&self) -> Option<SyntaxToken> {
5478 support::token(&self.syntax, SyntaxKind::ACCESS_KW)
5479 }
5480 #[inline]
5481 pub fn cascade_token(&self) -> Option<SyntaxToken> {
5482 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
5483 }
5484 #[inline]
5485 pub fn drop_token(&self) -> Option<SyntaxToken> {
5486 support::token(&self.syntax, SyntaxKind::DROP_KW)
5487 }
5488 #[inline]
5489 pub fn method_token(&self) -> Option<SyntaxToken> {
5490 support::token(&self.syntax, SyntaxKind::METHOD_KW)
5491 }
5492 #[inline]
5493 pub fn restrict_token(&self) -> Option<SyntaxToken> {
5494 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
5495 }
5496}
5497
5498#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5499pub struct DropAggregate {
5500 pub(crate) syntax: SyntaxNode,
5501}
5502impl DropAggregate {
5503 #[inline]
5504 pub fn aggregates(&self) -> AstChildren<Aggregate> {
5505 support::children(&self.syntax)
5506 }
5507 #[inline]
5508 pub fn if_exists(&self) -> Option<IfExists> {
5509 support::child(&self.syntax)
5510 }
5511 #[inline]
5512 pub fn aggregate_token(&self) -> Option<SyntaxToken> {
5513 support::token(&self.syntax, SyntaxKind::AGGREGATE_KW)
5514 }
5515 #[inline]
5516 pub fn cascade_token(&self) -> Option<SyntaxToken> {
5517 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
5518 }
5519 #[inline]
5520 pub fn drop_token(&self) -> Option<SyntaxToken> {
5521 support::token(&self.syntax, SyntaxKind::DROP_KW)
5522 }
5523 #[inline]
5524 pub fn restrict_token(&self) -> Option<SyntaxToken> {
5525 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
5526 }
5527}
5528
5529#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5530pub struct DropCast {
5531 pub(crate) syntax: SyntaxNode,
5532}
5533impl DropCast {
5534 #[inline]
5535 pub fn cast_sig(&self) -> Option<CastSig> {
5536 support::child(&self.syntax)
5537 }
5538 #[inline]
5539 pub fn if_exists(&self) -> Option<IfExists> {
5540 support::child(&self.syntax)
5541 }
5542 #[inline]
5543 pub fn cascade_token(&self) -> Option<SyntaxToken> {
5544 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
5545 }
5546 #[inline]
5547 pub fn cast_token(&self) -> Option<SyntaxToken> {
5548 support::token(&self.syntax, SyntaxKind::CAST_KW)
5549 }
5550 #[inline]
5551 pub fn drop_token(&self) -> Option<SyntaxToken> {
5552 support::token(&self.syntax, SyntaxKind::DROP_KW)
5553 }
5554 #[inline]
5555 pub fn restrict_token(&self) -> Option<SyntaxToken> {
5556 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
5557 }
5558}
5559
5560#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5561pub struct DropCollation {
5562 pub(crate) syntax: SyntaxNode,
5563}
5564impl DropCollation {
5565 #[inline]
5566 pub fn if_exists(&self) -> Option<IfExists> {
5567 support::child(&self.syntax)
5568 }
5569 #[inline]
5570 pub fn paths(&self) -> AstChildren<Path> {
5571 support::children(&self.syntax)
5572 }
5573 #[inline]
5574 pub fn cascade_token(&self) -> Option<SyntaxToken> {
5575 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
5576 }
5577 #[inline]
5578 pub fn collation_token(&self) -> Option<SyntaxToken> {
5579 support::token(&self.syntax, SyntaxKind::COLLATION_KW)
5580 }
5581 #[inline]
5582 pub fn drop_token(&self) -> Option<SyntaxToken> {
5583 support::token(&self.syntax, SyntaxKind::DROP_KW)
5584 }
5585 #[inline]
5586 pub fn restrict_token(&self) -> Option<SyntaxToken> {
5587 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
5588 }
5589}
5590
5591#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5592pub struct DropColumn {
5593 pub(crate) syntax: SyntaxNode,
5594}
5595impl DropColumn {
5596 #[inline]
5597 pub fn if_exists(&self) -> Option<IfExists> {
5598 support::child(&self.syntax)
5599 }
5600 #[inline]
5601 pub fn name_ref(&self) -> Option<NameRef> {
5602 support::child(&self.syntax)
5603 }
5604 #[inline]
5605 pub fn cascade_token(&self) -> Option<SyntaxToken> {
5606 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
5607 }
5608 #[inline]
5609 pub fn column_token(&self) -> Option<SyntaxToken> {
5610 support::token(&self.syntax, SyntaxKind::COLUMN_KW)
5611 }
5612 #[inline]
5613 pub fn drop_token(&self) -> Option<SyntaxToken> {
5614 support::token(&self.syntax, SyntaxKind::DROP_KW)
5615 }
5616 #[inline]
5617 pub fn restrict_token(&self) -> Option<SyntaxToken> {
5618 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
5619 }
5620}
5621
5622#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5623pub struct DropConstraint {
5624 pub(crate) syntax: SyntaxNode,
5625}
5626impl DropConstraint {
5627 #[inline]
5628 pub fn if_exists(&self) -> Option<IfExists> {
5629 support::child(&self.syntax)
5630 }
5631 #[inline]
5632 pub fn name_ref(&self) -> Option<NameRef> {
5633 support::child(&self.syntax)
5634 }
5635 #[inline]
5636 pub fn cascade_token(&self) -> Option<SyntaxToken> {
5637 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
5638 }
5639 #[inline]
5640 pub fn constraint_token(&self) -> Option<SyntaxToken> {
5641 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
5642 }
5643 #[inline]
5644 pub fn drop_token(&self) -> Option<SyntaxToken> {
5645 support::token(&self.syntax, SyntaxKind::DROP_KW)
5646 }
5647 #[inline]
5648 pub fn restrict_token(&self) -> Option<SyntaxToken> {
5649 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
5650 }
5651}
5652
5653#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5654pub struct DropConversion {
5655 pub(crate) syntax: SyntaxNode,
5656}
5657impl DropConversion {
5658 #[inline]
5659 pub fn if_exists(&self) -> Option<IfExists> {
5660 support::child(&self.syntax)
5661 }
5662 #[inline]
5663 pub fn path(&self) -> Option<Path> {
5664 support::child(&self.syntax)
5665 }
5666 #[inline]
5667 pub fn cascade_token(&self) -> Option<SyntaxToken> {
5668 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
5669 }
5670 #[inline]
5671 pub fn conversion_token(&self) -> Option<SyntaxToken> {
5672 support::token(&self.syntax, SyntaxKind::CONVERSION_KW)
5673 }
5674 #[inline]
5675 pub fn drop_token(&self) -> Option<SyntaxToken> {
5676 support::token(&self.syntax, SyntaxKind::DROP_KW)
5677 }
5678 #[inline]
5679 pub fn restrict_token(&self) -> Option<SyntaxToken> {
5680 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
5681 }
5682}
5683
5684#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5685pub struct DropDatabase {
5686 pub(crate) syntax: SyntaxNode,
5687}
5688impl DropDatabase {
5689 #[inline]
5690 pub fn if_exists(&self) -> Option<IfExists> {
5691 support::child(&self.syntax)
5692 }
5693 #[inline]
5694 pub fn name_ref(&self) -> Option<NameRef> {
5695 support::child(&self.syntax)
5696 }
5697 #[inline]
5698 pub fn database_token(&self) -> Option<SyntaxToken> {
5699 support::token(&self.syntax, SyntaxKind::DATABASE_KW)
5700 }
5701 #[inline]
5702 pub fn drop_token(&self) -> Option<SyntaxToken> {
5703 support::token(&self.syntax, SyntaxKind::DROP_KW)
5704 }
5705}
5706
5707#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5708pub struct DropDefault {
5709 pub(crate) syntax: SyntaxNode,
5710}
5711impl DropDefault {
5712 #[inline]
5713 pub fn default_token(&self) -> Option<SyntaxToken> {
5714 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
5715 }
5716 #[inline]
5717 pub fn drop_token(&self) -> Option<SyntaxToken> {
5718 support::token(&self.syntax, SyntaxKind::DROP_KW)
5719 }
5720}
5721
5722#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5723pub struct DropDomain {
5724 pub(crate) syntax: SyntaxNode,
5725}
5726impl DropDomain {
5727 #[inline]
5728 pub fn if_exists(&self) -> Option<IfExists> {
5729 support::child(&self.syntax)
5730 }
5731 #[inline]
5732 pub fn paths(&self) -> AstChildren<Path> {
5733 support::children(&self.syntax)
5734 }
5735 #[inline]
5736 pub fn cascade_token(&self) -> Option<SyntaxToken> {
5737 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
5738 }
5739 #[inline]
5740 pub fn domain_token(&self) -> Option<SyntaxToken> {
5741 support::token(&self.syntax, SyntaxKind::DOMAIN_KW)
5742 }
5743 #[inline]
5744 pub fn drop_token(&self) -> Option<SyntaxToken> {
5745 support::token(&self.syntax, SyntaxKind::DROP_KW)
5746 }
5747 #[inline]
5748 pub fn restrict_token(&self) -> Option<SyntaxToken> {
5749 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
5750 }
5751}
5752
5753#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5754pub struct DropEventTrigger {
5755 pub(crate) syntax: SyntaxNode,
5756}
5757impl DropEventTrigger {
5758 #[inline]
5759 pub fn if_exists(&self) -> Option<IfExists> {
5760 support::child(&self.syntax)
5761 }
5762 #[inline]
5763 pub fn name_ref(&self) -> Option<NameRef> {
5764 support::child(&self.syntax)
5765 }
5766 #[inline]
5767 pub fn cascade_token(&self) -> Option<SyntaxToken> {
5768 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
5769 }
5770 #[inline]
5771 pub fn drop_token(&self) -> Option<SyntaxToken> {
5772 support::token(&self.syntax, SyntaxKind::DROP_KW)
5773 }
5774 #[inline]
5775 pub fn event_token(&self) -> Option<SyntaxToken> {
5776 support::token(&self.syntax, SyntaxKind::EVENT_KW)
5777 }
5778 #[inline]
5779 pub fn restrict_token(&self) -> Option<SyntaxToken> {
5780 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
5781 }
5782 #[inline]
5783 pub fn trigger_token(&self) -> Option<SyntaxToken> {
5784 support::token(&self.syntax, SyntaxKind::TRIGGER_KW)
5785 }
5786}
5787
5788#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5789pub struct DropExpression {
5790 pub(crate) syntax: SyntaxNode,
5791}
5792impl DropExpression {
5793 #[inline]
5794 pub fn if_exists(&self) -> Option<IfExists> {
5795 support::child(&self.syntax)
5796 }
5797 #[inline]
5798 pub fn drop_token(&self) -> Option<SyntaxToken> {
5799 support::token(&self.syntax, SyntaxKind::DROP_KW)
5800 }
5801 #[inline]
5802 pub fn expression_token(&self) -> Option<SyntaxToken> {
5803 support::token(&self.syntax, SyntaxKind::EXPRESSION_KW)
5804 }
5805}
5806
5807#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5808pub struct DropExtension {
5809 pub(crate) syntax: SyntaxNode,
5810}
5811impl DropExtension {
5812 #[inline]
5813 pub fn if_exists(&self) -> Option<IfExists> {
5814 support::child(&self.syntax)
5815 }
5816 #[inline]
5817 pub fn name_refs(&self) -> AstChildren<NameRef> {
5818 support::children(&self.syntax)
5819 }
5820 #[inline]
5821 pub fn cascade_token(&self) -> Option<SyntaxToken> {
5822 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
5823 }
5824 #[inline]
5825 pub fn drop_token(&self) -> Option<SyntaxToken> {
5826 support::token(&self.syntax, SyntaxKind::DROP_KW)
5827 }
5828 #[inline]
5829 pub fn extension_token(&self) -> Option<SyntaxToken> {
5830 support::token(&self.syntax, SyntaxKind::EXTENSION_KW)
5831 }
5832 #[inline]
5833 pub fn restrict_token(&self) -> Option<SyntaxToken> {
5834 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
5835 }
5836}
5837
5838#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5839pub struct DropForeignDataWrapper {
5840 pub(crate) syntax: SyntaxNode,
5841}
5842impl DropForeignDataWrapper {
5843 #[inline]
5844 pub fn if_exists(&self) -> Option<IfExists> {
5845 support::child(&self.syntax)
5846 }
5847 #[inline]
5848 pub fn name_refs(&self) -> AstChildren<NameRef> {
5849 support::children(&self.syntax)
5850 }
5851 #[inline]
5852 pub fn cascade_token(&self) -> Option<SyntaxToken> {
5853 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
5854 }
5855 #[inline]
5856 pub fn data_token(&self) -> Option<SyntaxToken> {
5857 support::token(&self.syntax, SyntaxKind::DATA_KW)
5858 }
5859 #[inline]
5860 pub fn drop_token(&self) -> Option<SyntaxToken> {
5861 support::token(&self.syntax, SyntaxKind::DROP_KW)
5862 }
5863 #[inline]
5864 pub fn foreign_token(&self) -> Option<SyntaxToken> {
5865 support::token(&self.syntax, SyntaxKind::FOREIGN_KW)
5866 }
5867 #[inline]
5868 pub fn restrict_token(&self) -> Option<SyntaxToken> {
5869 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
5870 }
5871 #[inline]
5872 pub fn wrapper_token(&self) -> Option<SyntaxToken> {
5873 support::token(&self.syntax, SyntaxKind::WRAPPER_KW)
5874 }
5875}
5876
5877#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5878pub struct DropForeignTable {
5879 pub(crate) syntax: SyntaxNode,
5880}
5881impl DropForeignTable {
5882 #[inline]
5883 pub fn if_exists(&self) -> Option<IfExists> {
5884 support::child(&self.syntax)
5885 }
5886 #[inline]
5887 pub fn path(&self) -> Option<Path> {
5888 support::child(&self.syntax)
5889 }
5890 #[inline]
5891 pub fn cascade_token(&self) -> Option<SyntaxToken> {
5892 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
5893 }
5894 #[inline]
5895 pub fn drop_token(&self) -> Option<SyntaxToken> {
5896 support::token(&self.syntax, SyntaxKind::DROP_KW)
5897 }
5898 #[inline]
5899 pub fn foreign_token(&self) -> Option<SyntaxToken> {
5900 support::token(&self.syntax, SyntaxKind::FOREIGN_KW)
5901 }
5902 #[inline]
5903 pub fn restrict_token(&self) -> Option<SyntaxToken> {
5904 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
5905 }
5906 #[inline]
5907 pub fn table_token(&self) -> Option<SyntaxToken> {
5908 support::token(&self.syntax, SyntaxKind::TABLE_KW)
5909 }
5910}
5911
5912#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5913pub struct DropFunction {
5914 pub(crate) syntax: SyntaxNode,
5915}
5916impl DropFunction {
5917 #[inline]
5918 pub fn function_sig_list(&self) -> Option<FunctionSigList> {
5919 support::child(&self.syntax)
5920 }
5921 #[inline]
5922 pub fn if_exists(&self) -> Option<IfExists> {
5923 support::child(&self.syntax)
5924 }
5925 #[inline]
5926 pub fn cascade_token(&self) -> Option<SyntaxToken> {
5927 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
5928 }
5929 #[inline]
5930 pub fn drop_token(&self) -> Option<SyntaxToken> {
5931 support::token(&self.syntax, SyntaxKind::DROP_KW)
5932 }
5933 #[inline]
5934 pub fn function_token(&self) -> Option<SyntaxToken> {
5935 support::token(&self.syntax, SyntaxKind::FUNCTION_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 DropGroup {
5945 pub(crate) syntax: SyntaxNode,
5946}
5947impl DropGroup {
5948 #[inline]
5949 pub fn if_exists(&self) -> Option<IfExists> {
5950 support::child(&self.syntax)
5951 }
5952 #[inline]
5953 pub fn name_refs(&self) -> AstChildren<NameRef> {
5954 support::children(&self.syntax)
5955 }
5956 #[inline]
5957 pub fn drop_token(&self) -> Option<SyntaxToken> {
5958 support::token(&self.syntax, SyntaxKind::DROP_KW)
5959 }
5960 #[inline]
5961 pub fn group_token(&self) -> Option<SyntaxToken> {
5962 support::token(&self.syntax, SyntaxKind::GROUP_KW)
5963 }
5964}
5965
5966#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5967pub struct DropIdentity {
5968 pub(crate) syntax: SyntaxNode,
5969}
5970impl DropIdentity {
5971 #[inline]
5972 pub fn if_exists(&self) -> Option<IfExists> {
5973 support::child(&self.syntax)
5974 }
5975 #[inline]
5976 pub fn drop_token(&self) -> Option<SyntaxToken> {
5977 support::token(&self.syntax, SyntaxKind::DROP_KW)
5978 }
5979 #[inline]
5980 pub fn identity_token(&self) -> Option<SyntaxToken> {
5981 support::token(&self.syntax, SyntaxKind::IDENTITY_KW)
5982 }
5983}
5984
5985#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5986pub struct DropIndex {
5987 pub(crate) syntax: SyntaxNode,
5988}
5989impl DropIndex {
5990 #[inline]
5991 pub fn if_exists(&self) -> Option<IfExists> {
5992 support::child(&self.syntax)
5993 }
5994 #[inline]
5995 pub fn paths(&self) -> AstChildren<Path> {
5996 support::children(&self.syntax)
5997 }
5998 #[inline]
5999 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6000 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6001 }
6002 #[inline]
6003 pub fn concurrently_token(&self) -> Option<SyntaxToken> {
6004 support::token(&self.syntax, SyntaxKind::CONCURRENTLY_KW)
6005 }
6006 #[inline]
6007 pub fn drop_token(&self) -> Option<SyntaxToken> {
6008 support::token(&self.syntax, SyntaxKind::DROP_KW)
6009 }
6010 #[inline]
6011 pub fn index_token(&self) -> Option<SyntaxToken> {
6012 support::token(&self.syntax, SyntaxKind::INDEX_KW)
6013 }
6014 #[inline]
6015 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6016 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6017 }
6018}
6019
6020#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6021pub struct DropLanguage {
6022 pub(crate) syntax: SyntaxNode,
6023}
6024impl DropLanguage {
6025 #[inline]
6026 pub fn if_exists(&self) -> Option<IfExists> {
6027 support::child(&self.syntax)
6028 }
6029 #[inline]
6030 pub fn name_ref(&self) -> Option<NameRef> {
6031 support::child(&self.syntax)
6032 }
6033 #[inline]
6034 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6035 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6036 }
6037 #[inline]
6038 pub fn drop_token(&self) -> Option<SyntaxToken> {
6039 support::token(&self.syntax, SyntaxKind::DROP_KW)
6040 }
6041 #[inline]
6042 pub fn language_token(&self) -> Option<SyntaxToken> {
6043 support::token(&self.syntax, SyntaxKind::LANGUAGE_KW)
6044 }
6045 #[inline]
6046 pub fn procedural_token(&self) -> Option<SyntaxToken> {
6047 support::token(&self.syntax, SyntaxKind::PROCEDURAL_KW)
6048 }
6049 #[inline]
6050 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6051 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6052 }
6053}
6054
6055#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6056pub struct DropMaterializedView {
6057 pub(crate) syntax: SyntaxNode,
6058}
6059impl DropMaterializedView {
6060 #[inline]
6061 pub fn if_exists(&self) -> Option<IfExists> {
6062 support::child(&self.syntax)
6063 }
6064 #[inline]
6065 pub fn paths(&self) -> AstChildren<Path> {
6066 support::children(&self.syntax)
6067 }
6068 #[inline]
6069 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6070 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6071 }
6072 #[inline]
6073 pub fn drop_token(&self) -> Option<SyntaxToken> {
6074 support::token(&self.syntax, SyntaxKind::DROP_KW)
6075 }
6076 #[inline]
6077 pub fn materialized_token(&self) -> Option<SyntaxToken> {
6078 support::token(&self.syntax, SyntaxKind::MATERIALIZED_KW)
6079 }
6080 #[inline]
6081 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6082 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6083 }
6084 #[inline]
6085 pub fn view_token(&self) -> Option<SyntaxToken> {
6086 support::token(&self.syntax, SyntaxKind::VIEW_KW)
6087 }
6088}
6089
6090#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6091pub struct DropNotNull {
6092 pub(crate) syntax: SyntaxNode,
6093}
6094impl DropNotNull {
6095 #[inline]
6096 pub fn drop_token(&self) -> Option<SyntaxToken> {
6097 support::token(&self.syntax, SyntaxKind::DROP_KW)
6098 }
6099 #[inline]
6100 pub fn not_token(&self) -> Option<SyntaxToken> {
6101 support::token(&self.syntax, SyntaxKind::NOT_KW)
6102 }
6103 #[inline]
6104 pub fn null_token(&self) -> Option<SyntaxToken> {
6105 support::token(&self.syntax, SyntaxKind::NULL_KW)
6106 }
6107}
6108
6109#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6110pub struct DropOpClassOption {
6111 pub(crate) syntax: SyntaxNode,
6112}
6113impl DropOpClassOption {
6114 #[inline]
6115 pub fn literal(&self) -> Option<Literal> {
6116 support::child(&self.syntax)
6117 }
6118 #[inline]
6119 pub fn param_list(&self) -> Option<ParamList> {
6120 support::child(&self.syntax)
6121 }
6122 #[inline]
6123 pub fn function_token(&self) -> Option<SyntaxToken> {
6124 support::token(&self.syntax, SyntaxKind::FUNCTION_KW)
6125 }
6126 #[inline]
6127 pub fn operator_token(&self) -> Option<SyntaxToken> {
6128 support::token(&self.syntax, SyntaxKind::OPERATOR_KW)
6129 }
6130}
6131
6132#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6133pub struct DropOpClassOptionList {
6134 pub(crate) syntax: SyntaxNode,
6135}
6136impl DropOpClassOptionList {
6137 #[inline]
6138 pub fn drop_op_class_options(&self) -> AstChildren<DropOpClassOption> {
6139 support::children(&self.syntax)
6140 }
6141}
6142
6143#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6144pub struct DropOpClassOptions {
6145 pub(crate) syntax: SyntaxNode,
6146}
6147impl DropOpClassOptions {
6148 #[inline]
6149 pub fn drop_op_class_option_list(&self) -> Option<DropOpClassOptionList> {
6150 support::child(&self.syntax)
6151 }
6152 #[inline]
6153 pub fn drop_token(&self) -> Option<SyntaxToken> {
6154 support::token(&self.syntax, SyntaxKind::DROP_KW)
6155 }
6156}
6157
6158#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6159pub struct DropOperator {
6160 pub(crate) syntax: SyntaxNode,
6161}
6162impl DropOperator {
6163 #[inline]
6164 pub fn if_exists(&self) -> Option<IfExists> {
6165 support::child(&self.syntax)
6166 }
6167 #[inline]
6168 pub fn op_sig_list(&self) -> Option<OpSigList> {
6169 support::child(&self.syntax)
6170 }
6171 #[inline]
6172 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6173 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6174 }
6175 #[inline]
6176 pub fn drop_token(&self) -> Option<SyntaxToken> {
6177 support::token(&self.syntax, SyntaxKind::DROP_KW)
6178 }
6179 #[inline]
6180 pub fn operator_token(&self) -> Option<SyntaxToken> {
6181 support::token(&self.syntax, SyntaxKind::OPERATOR_KW)
6182 }
6183 #[inline]
6184 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6185 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6186 }
6187}
6188
6189#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6190pub struct DropOperatorClass {
6191 pub(crate) syntax: SyntaxNode,
6192}
6193impl DropOperatorClass {
6194 #[inline]
6195 pub fn if_exists(&self) -> Option<IfExists> {
6196 support::child(&self.syntax)
6197 }
6198 #[inline]
6199 pub fn name_ref(&self) -> Option<NameRef> {
6200 support::child(&self.syntax)
6201 }
6202 #[inline]
6203 pub fn path(&self) -> Option<Path> {
6204 support::child(&self.syntax)
6205 }
6206 #[inline]
6207 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6208 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6209 }
6210 #[inline]
6211 pub fn class_token(&self) -> Option<SyntaxToken> {
6212 support::token(&self.syntax, SyntaxKind::CLASS_KW)
6213 }
6214 #[inline]
6215 pub fn drop_token(&self) -> Option<SyntaxToken> {
6216 support::token(&self.syntax, SyntaxKind::DROP_KW)
6217 }
6218 #[inline]
6219 pub fn operator_token(&self) -> Option<SyntaxToken> {
6220 support::token(&self.syntax, SyntaxKind::OPERATOR_KW)
6221 }
6222 #[inline]
6223 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6224 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6225 }
6226 #[inline]
6227 pub fn using_token(&self) -> Option<SyntaxToken> {
6228 support::token(&self.syntax, SyntaxKind::USING_KW)
6229 }
6230}
6231
6232#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6233pub struct DropOperatorFamily {
6234 pub(crate) syntax: SyntaxNode,
6235}
6236impl DropOperatorFamily {
6237 #[inline]
6238 pub fn if_exists(&self) -> Option<IfExists> {
6239 support::child(&self.syntax)
6240 }
6241 #[inline]
6242 pub fn name_ref(&self) -> Option<NameRef> {
6243 support::child(&self.syntax)
6244 }
6245 #[inline]
6246 pub fn path(&self) -> Option<Path> {
6247 support::child(&self.syntax)
6248 }
6249 #[inline]
6250 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6251 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6252 }
6253 #[inline]
6254 pub fn drop_token(&self) -> Option<SyntaxToken> {
6255 support::token(&self.syntax, SyntaxKind::DROP_KW)
6256 }
6257 #[inline]
6258 pub fn family_token(&self) -> Option<SyntaxToken> {
6259 support::token(&self.syntax, SyntaxKind::FAMILY_KW)
6260 }
6261 #[inline]
6262 pub fn operator_token(&self) -> Option<SyntaxToken> {
6263 support::token(&self.syntax, SyntaxKind::OPERATOR_KW)
6264 }
6265 #[inline]
6266 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6267 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6268 }
6269 #[inline]
6270 pub fn using_token(&self) -> Option<SyntaxToken> {
6271 support::token(&self.syntax, SyntaxKind::USING_KW)
6272 }
6273}
6274
6275#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6276pub struct DropOwned {
6277 pub(crate) syntax: SyntaxNode,
6278}
6279impl DropOwned {
6280 #[inline]
6281 pub fn role_list(&self) -> Option<RoleList> {
6282 support::child(&self.syntax)
6283 }
6284 #[inline]
6285 pub fn by_token(&self) -> Option<SyntaxToken> {
6286 support::token(&self.syntax, SyntaxKind::BY_KW)
6287 }
6288 #[inline]
6289 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6290 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6291 }
6292 #[inline]
6293 pub fn drop_token(&self) -> Option<SyntaxToken> {
6294 support::token(&self.syntax, SyntaxKind::DROP_KW)
6295 }
6296 #[inline]
6297 pub fn owned_token(&self) -> Option<SyntaxToken> {
6298 support::token(&self.syntax, SyntaxKind::OWNED_KW)
6299 }
6300 #[inline]
6301 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6302 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6303 }
6304}
6305
6306#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6307pub struct DropPolicy {
6308 pub(crate) syntax: SyntaxNode,
6309}
6310impl DropPolicy {
6311 #[inline]
6312 pub fn if_exists(&self) -> Option<IfExists> {
6313 support::child(&self.syntax)
6314 }
6315 #[inline]
6316 pub fn name_ref(&self) -> Option<NameRef> {
6317 support::child(&self.syntax)
6318 }
6319 #[inline]
6320 pub fn on_table(&self) -> Option<OnTable> {
6321 support::child(&self.syntax)
6322 }
6323 #[inline]
6324 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6325 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6326 }
6327 #[inline]
6328 pub fn drop_token(&self) -> Option<SyntaxToken> {
6329 support::token(&self.syntax, SyntaxKind::DROP_KW)
6330 }
6331 #[inline]
6332 pub fn policy_token(&self) -> Option<SyntaxToken> {
6333 support::token(&self.syntax, SyntaxKind::POLICY_KW)
6334 }
6335 #[inline]
6336 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6337 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6338 }
6339}
6340
6341#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6342pub struct DropProcedure {
6343 pub(crate) syntax: SyntaxNode,
6344}
6345impl DropProcedure {
6346 #[inline]
6347 pub fn function_sig_list(&self) -> Option<FunctionSigList> {
6348 support::child(&self.syntax)
6349 }
6350 #[inline]
6351 pub fn if_exists(&self) -> Option<IfExists> {
6352 support::child(&self.syntax)
6353 }
6354 #[inline]
6355 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6356 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6357 }
6358 #[inline]
6359 pub fn drop_token(&self) -> Option<SyntaxToken> {
6360 support::token(&self.syntax, SyntaxKind::DROP_KW)
6361 }
6362 #[inline]
6363 pub fn procedure_token(&self) -> Option<SyntaxToken> {
6364 support::token(&self.syntax, SyntaxKind::PROCEDURE_KW)
6365 }
6366 #[inline]
6367 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6368 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6369 }
6370}
6371
6372#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6373pub struct DropPublication {
6374 pub(crate) syntax: SyntaxNode,
6375}
6376impl DropPublication {
6377 #[inline]
6378 pub fn if_exists(&self) -> Option<IfExists> {
6379 support::child(&self.syntax)
6380 }
6381 #[inline]
6382 pub fn name_refs(&self) -> AstChildren<NameRef> {
6383 support::children(&self.syntax)
6384 }
6385 #[inline]
6386 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6387 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6388 }
6389 #[inline]
6390 pub fn drop_token(&self) -> Option<SyntaxToken> {
6391 support::token(&self.syntax, SyntaxKind::DROP_KW)
6392 }
6393 #[inline]
6394 pub fn publication_token(&self) -> Option<SyntaxToken> {
6395 support::token(&self.syntax, SyntaxKind::PUBLICATION_KW)
6396 }
6397 #[inline]
6398 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6399 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6400 }
6401}
6402
6403#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6404pub struct DropRole {
6405 pub(crate) syntax: SyntaxNode,
6406}
6407impl DropRole {
6408 #[inline]
6409 pub fn if_exists(&self) -> Option<IfExists> {
6410 support::child(&self.syntax)
6411 }
6412 #[inline]
6413 pub fn name_refs(&self) -> AstChildren<NameRef> {
6414 support::children(&self.syntax)
6415 }
6416 #[inline]
6417 pub fn drop_token(&self) -> Option<SyntaxToken> {
6418 support::token(&self.syntax, SyntaxKind::DROP_KW)
6419 }
6420 #[inline]
6421 pub fn role_token(&self) -> Option<SyntaxToken> {
6422 support::token(&self.syntax, SyntaxKind::ROLE_KW)
6423 }
6424}
6425
6426#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6427pub struct DropRoutine {
6428 pub(crate) syntax: SyntaxNode,
6429}
6430impl DropRoutine {
6431 #[inline]
6432 pub fn function_sig_list(&self) -> Option<FunctionSigList> {
6433 support::child(&self.syntax)
6434 }
6435 #[inline]
6436 pub fn if_exists(&self) -> Option<IfExists> {
6437 support::child(&self.syntax)
6438 }
6439 #[inline]
6440 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6441 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6442 }
6443 #[inline]
6444 pub fn drop_token(&self) -> Option<SyntaxToken> {
6445 support::token(&self.syntax, SyntaxKind::DROP_KW)
6446 }
6447 #[inline]
6448 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6449 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6450 }
6451 #[inline]
6452 pub fn routine_token(&self) -> Option<SyntaxToken> {
6453 support::token(&self.syntax, SyntaxKind::ROUTINE_KW)
6454 }
6455}
6456
6457#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6458pub struct DropRule {
6459 pub(crate) syntax: SyntaxNode,
6460}
6461impl DropRule {
6462 #[inline]
6463 pub fn if_exists(&self) -> Option<IfExists> {
6464 support::child(&self.syntax)
6465 }
6466 #[inline]
6467 pub fn name_ref(&self) -> Option<NameRef> {
6468 support::child(&self.syntax)
6469 }
6470 #[inline]
6471 pub fn on_table(&self) -> Option<OnTable> {
6472 support::child(&self.syntax)
6473 }
6474 #[inline]
6475 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6476 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6477 }
6478 #[inline]
6479 pub fn drop_token(&self) -> Option<SyntaxToken> {
6480 support::token(&self.syntax, SyntaxKind::DROP_KW)
6481 }
6482 #[inline]
6483 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6484 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6485 }
6486 #[inline]
6487 pub fn rule_token(&self) -> Option<SyntaxToken> {
6488 support::token(&self.syntax, SyntaxKind::RULE_KW)
6489 }
6490}
6491
6492#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6493pub struct DropSchema {
6494 pub(crate) syntax: SyntaxNode,
6495}
6496impl DropSchema {
6497 #[inline]
6498 pub fn if_exists(&self) -> Option<IfExists> {
6499 support::child(&self.syntax)
6500 }
6501 #[inline]
6502 pub fn name_refs(&self) -> AstChildren<NameRef> {
6503 support::children(&self.syntax)
6504 }
6505 #[inline]
6506 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6507 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6508 }
6509 #[inline]
6510 pub fn drop_token(&self) -> Option<SyntaxToken> {
6511 support::token(&self.syntax, SyntaxKind::DROP_KW)
6512 }
6513 #[inline]
6514 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6515 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6516 }
6517 #[inline]
6518 pub fn schema_token(&self) -> Option<SyntaxToken> {
6519 support::token(&self.syntax, SyntaxKind::SCHEMA_KW)
6520 }
6521}
6522
6523#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6524pub struct DropSequence {
6525 pub(crate) syntax: SyntaxNode,
6526}
6527impl DropSequence {
6528 #[inline]
6529 pub fn if_exists(&self) -> Option<IfExists> {
6530 support::child(&self.syntax)
6531 }
6532 #[inline]
6533 pub fn paths(&self) -> AstChildren<Path> {
6534 support::children(&self.syntax)
6535 }
6536 #[inline]
6537 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6538 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6539 }
6540 #[inline]
6541 pub fn drop_token(&self) -> Option<SyntaxToken> {
6542 support::token(&self.syntax, SyntaxKind::DROP_KW)
6543 }
6544 #[inline]
6545 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6546 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6547 }
6548 #[inline]
6549 pub fn sequence_token(&self) -> Option<SyntaxToken> {
6550 support::token(&self.syntax, SyntaxKind::SEQUENCE_KW)
6551 }
6552}
6553
6554#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6555pub struct DropServer {
6556 pub(crate) syntax: SyntaxNode,
6557}
6558impl DropServer {
6559 #[inline]
6560 pub fn if_exists(&self) -> Option<IfExists> {
6561 support::child(&self.syntax)
6562 }
6563 #[inline]
6564 pub fn name_ref(&self) -> Option<NameRef> {
6565 support::child(&self.syntax)
6566 }
6567 #[inline]
6568 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6569 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6570 }
6571 #[inline]
6572 pub fn drop_token(&self) -> Option<SyntaxToken> {
6573 support::token(&self.syntax, SyntaxKind::DROP_KW)
6574 }
6575 #[inline]
6576 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6577 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6578 }
6579 #[inline]
6580 pub fn server_token(&self) -> Option<SyntaxToken> {
6581 support::token(&self.syntax, SyntaxKind::SERVER_KW)
6582 }
6583}
6584
6585#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6586pub struct DropStatistics {
6587 pub(crate) syntax: SyntaxNode,
6588}
6589impl DropStatistics {
6590 #[inline]
6591 pub fn if_exists(&self) -> Option<IfExists> {
6592 support::child(&self.syntax)
6593 }
6594 #[inline]
6595 pub fn paths(&self) -> AstChildren<Path> {
6596 support::children(&self.syntax)
6597 }
6598 #[inline]
6599 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6600 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6601 }
6602 #[inline]
6603 pub fn drop_token(&self) -> Option<SyntaxToken> {
6604 support::token(&self.syntax, SyntaxKind::DROP_KW)
6605 }
6606 #[inline]
6607 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6608 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6609 }
6610 #[inline]
6611 pub fn statistics_token(&self) -> Option<SyntaxToken> {
6612 support::token(&self.syntax, SyntaxKind::STATISTICS_KW)
6613 }
6614}
6615
6616#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6617pub struct DropSubscription {
6618 pub(crate) syntax: SyntaxNode,
6619}
6620impl DropSubscription {
6621 #[inline]
6622 pub fn if_exists(&self) -> Option<IfExists> {
6623 support::child(&self.syntax)
6624 }
6625 #[inline]
6626 pub fn name_ref(&self) -> Option<NameRef> {
6627 support::child(&self.syntax)
6628 }
6629 #[inline]
6630 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6631 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6632 }
6633 #[inline]
6634 pub fn drop_token(&self) -> Option<SyntaxToken> {
6635 support::token(&self.syntax, SyntaxKind::DROP_KW)
6636 }
6637 #[inline]
6638 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6639 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6640 }
6641 #[inline]
6642 pub fn subscription_token(&self) -> Option<SyntaxToken> {
6643 support::token(&self.syntax, SyntaxKind::SUBSCRIPTION_KW)
6644 }
6645}
6646
6647#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6648pub struct DropTable {
6649 pub(crate) syntax: SyntaxNode,
6650}
6651impl DropTable {
6652 #[inline]
6653 pub fn if_exists(&self) -> Option<IfExists> {
6654 support::child(&self.syntax)
6655 }
6656 #[inline]
6657 pub fn path(&self) -> Option<Path> {
6658 support::child(&self.syntax)
6659 }
6660 #[inline]
6661 pub fn comma_token(&self) -> Option<SyntaxToken> {
6662 support::token(&self.syntax, SyntaxKind::COMMA)
6663 }
6664 #[inline]
6665 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6666 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6667 }
6668 #[inline]
6669 pub fn drop_token(&self) -> Option<SyntaxToken> {
6670 support::token(&self.syntax, SyntaxKind::DROP_KW)
6671 }
6672 #[inline]
6673 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6674 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6675 }
6676 #[inline]
6677 pub fn table_token(&self) -> Option<SyntaxToken> {
6678 support::token(&self.syntax, SyntaxKind::TABLE_KW)
6679 }
6680}
6681
6682#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6683pub struct DropTablespace {
6684 pub(crate) syntax: SyntaxNode,
6685}
6686impl DropTablespace {
6687 #[inline]
6688 pub fn if_exists(&self) -> Option<IfExists> {
6689 support::child(&self.syntax)
6690 }
6691 #[inline]
6692 pub fn name_ref(&self) -> Option<NameRef> {
6693 support::child(&self.syntax)
6694 }
6695 #[inline]
6696 pub fn drop_token(&self) -> Option<SyntaxToken> {
6697 support::token(&self.syntax, SyntaxKind::DROP_KW)
6698 }
6699 #[inline]
6700 pub fn tablespace_token(&self) -> Option<SyntaxToken> {
6701 support::token(&self.syntax, SyntaxKind::TABLESPACE_KW)
6702 }
6703}
6704
6705#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6706pub struct DropTextSearchConfig {
6707 pub(crate) syntax: SyntaxNode,
6708}
6709impl DropTextSearchConfig {
6710 #[inline]
6711 pub fn if_exists(&self) -> Option<IfExists> {
6712 support::child(&self.syntax)
6713 }
6714 #[inline]
6715 pub fn path(&self) -> Option<Path> {
6716 support::child(&self.syntax)
6717 }
6718 #[inline]
6719 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6720 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6721 }
6722 #[inline]
6723 pub fn configuration_token(&self) -> Option<SyntaxToken> {
6724 support::token(&self.syntax, SyntaxKind::CONFIGURATION_KW)
6725 }
6726 #[inline]
6727 pub fn drop_token(&self) -> Option<SyntaxToken> {
6728 support::token(&self.syntax, SyntaxKind::DROP_KW)
6729 }
6730 #[inline]
6731 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6732 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6733 }
6734 #[inline]
6735 pub fn search_token(&self) -> Option<SyntaxToken> {
6736 support::token(&self.syntax, SyntaxKind::SEARCH_KW)
6737 }
6738 #[inline]
6739 pub fn text_token(&self) -> Option<SyntaxToken> {
6740 support::token(&self.syntax, SyntaxKind::TEXT_KW)
6741 }
6742}
6743
6744#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6745pub struct DropTextSearchDict {
6746 pub(crate) syntax: SyntaxNode,
6747}
6748impl DropTextSearchDict {
6749 #[inline]
6750 pub fn if_exists(&self) -> Option<IfExists> {
6751 support::child(&self.syntax)
6752 }
6753 #[inline]
6754 pub fn path(&self) -> Option<Path> {
6755 support::child(&self.syntax)
6756 }
6757 #[inline]
6758 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6759 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6760 }
6761 #[inline]
6762 pub fn dictionary_token(&self) -> Option<SyntaxToken> {
6763 support::token(&self.syntax, SyntaxKind::DICTIONARY_KW)
6764 }
6765 #[inline]
6766 pub fn drop_token(&self) -> Option<SyntaxToken> {
6767 support::token(&self.syntax, SyntaxKind::DROP_KW)
6768 }
6769 #[inline]
6770 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6771 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6772 }
6773 #[inline]
6774 pub fn search_token(&self) -> Option<SyntaxToken> {
6775 support::token(&self.syntax, SyntaxKind::SEARCH_KW)
6776 }
6777 #[inline]
6778 pub fn text_token(&self) -> Option<SyntaxToken> {
6779 support::token(&self.syntax, SyntaxKind::TEXT_KW)
6780 }
6781}
6782
6783#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6784pub struct DropTextSearchParser {
6785 pub(crate) syntax: SyntaxNode,
6786}
6787impl DropTextSearchParser {
6788 #[inline]
6789 pub fn if_exists(&self) -> Option<IfExists> {
6790 support::child(&self.syntax)
6791 }
6792 #[inline]
6793 pub fn path(&self) -> Option<Path> {
6794 support::child(&self.syntax)
6795 }
6796 #[inline]
6797 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6798 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6799 }
6800 #[inline]
6801 pub fn drop_token(&self) -> Option<SyntaxToken> {
6802 support::token(&self.syntax, SyntaxKind::DROP_KW)
6803 }
6804 #[inline]
6805 pub fn parser_token(&self) -> Option<SyntaxToken> {
6806 support::token(&self.syntax, SyntaxKind::PARSER_KW)
6807 }
6808 #[inline]
6809 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6810 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6811 }
6812 #[inline]
6813 pub fn search_token(&self) -> Option<SyntaxToken> {
6814 support::token(&self.syntax, SyntaxKind::SEARCH_KW)
6815 }
6816 #[inline]
6817 pub fn text_token(&self) -> Option<SyntaxToken> {
6818 support::token(&self.syntax, SyntaxKind::TEXT_KW)
6819 }
6820}
6821
6822#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6823pub struct DropTextSearchTemplate {
6824 pub(crate) syntax: SyntaxNode,
6825}
6826impl DropTextSearchTemplate {
6827 #[inline]
6828 pub fn if_exists(&self) -> Option<IfExists> {
6829 support::child(&self.syntax)
6830 }
6831 #[inline]
6832 pub fn path(&self) -> Option<Path> {
6833 support::child(&self.syntax)
6834 }
6835 #[inline]
6836 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6837 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6838 }
6839 #[inline]
6840 pub fn drop_token(&self) -> Option<SyntaxToken> {
6841 support::token(&self.syntax, SyntaxKind::DROP_KW)
6842 }
6843 #[inline]
6844 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6845 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6846 }
6847 #[inline]
6848 pub fn search_token(&self) -> Option<SyntaxToken> {
6849 support::token(&self.syntax, SyntaxKind::SEARCH_KW)
6850 }
6851 #[inline]
6852 pub fn template_token(&self) -> Option<SyntaxToken> {
6853 support::token(&self.syntax, SyntaxKind::TEMPLATE_KW)
6854 }
6855 #[inline]
6856 pub fn text_token(&self) -> Option<SyntaxToken> {
6857 support::token(&self.syntax, SyntaxKind::TEXT_KW)
6858 }
6859}
6860
6861#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6862pub struct DropTransform {
6863 pub(crate) syntax: SyntaxNode,
6864}
6865impl DropTransform {
6866 #[inline]
6867 pub fn if_exists(&self) -> Option<IfExists> {
6868 support::child(&self.syntax)
6869 }
6870 #[inline]
6871 pub fn language(&self) -> Option<NameRef> {
6872 support::child(&self.syntax)
6873 }
6874 #[inline]
6875 pub fn ty(&self) -> Option<Type> {
6876 support::child(&self.syntax)
6877 }
6878 #[inline]
6879 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6880 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6881 }
6882 #[inline]
6883 pub fn drop_token(&self) -> Option<SyntaxToken> {
6884 support::token(&self.syntax, SyntaxKind::DROP_KW)
6885 }
6886 #[inline]
6887 pub fn for_token(&self) -> Option<SyntaxToken> {
6888 support::token(&self.syntax, SyntaxKind::FOR_KW)
6889 }
6890 #[inline]
6891 pub fn language_token(&self) -> Option<SyntaxToken> {
6892 support::token(&self.syntax, SyntaxKind::LANGUAGE_KW)
6893 }
6894 #[inline]
6895 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6896 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6897 }
6898 #[inline]
6899 pub fn transform_token(&self) -> Option<SyntaxToken> {
6900 support::token(&self.syntax, SyntaxKind::TRANSFORM_KW)
6901 }
6902}
6903
6904#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6905pub struct DropTrigger {
6906 pub(crate) syntax: SyntaxNode,
6907}
6908impl DropTrigger {
6909 #[inline]
6910 pub fn if_exists(&self) -> Option<IfExists> {
6911 support::child(&self.syntax)
6912 }
6913 #[inline]
6914 pub fn on_table(&self) -> Option<OnTable> {
6915 support::child(&self.syntax)
6916 }
6917 #[inline]
6918 pub fn path(&self) -> Option<Path> {
6919 support::child(&self.syntax)
6920 }
6921 #[inline]
6922 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6923 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6924 }
6925 #[inline]
6926 pub fn drop_token(&self) -> Option<SyntaxToken> {
6927 support::token(&self.syntax, SyntaxKind::DROP_KW)
6928 }
6929 #[inline]
6930 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6931 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6932 }
6933 #[inline]
6934 pub fn trigger_token(&self) -> Option<SyntaxToken> {
6935 support::token(&self.syntax, SyntaxKind::TRIGGER_KW)
6936 }
6937}
6938
6939#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6940pub struct DropType {
6941 pub(crate) syntax: SyntaxNode,
6942}
6943impl DropType {
6944 #[inline]
6945 pub fn if_exists(&self) -> Option<IfExists> {
6946 support::child(&self.syntax)
6947 }
6948 #[inline]
6949 pub fn paths(&self) -> AstChildren<Path> {
6950 support::children(&self.syntax)
6951 }
6952 #[inline]
6953 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6954 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6955 }
6956 #[inline]
6957 pub fn drop_token(&self) -> Option<SyntaxToken> {
6958 support::token(&self.syntax, SyntaxKind::DROP_KW)
6959 }
6960 #[inline]
6961 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6962 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6963 }
6964 #[inline]
6965 pub fn type_token(&self) -> Option<SyntaxToken> {
6966 support::token(&self.syntax, SyntaxKind::TYPE_KW)
6967 }
6968}
6969
6970#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6971pub struct DropUser {
6972 pub(crate) syntax: SyntaxNode,
6973}
6974impl DropUser {
6975 #[inline]
6976 pub fn if_exists(&self) -> Option<IfExists> {
6977 support::child(&self.syntax)
6978 }
6979 #[inline]
6980 pub fn name_refs(&self) -> AstChildren<NameRef> {
6981 support::children(&self.syntax)
6982 }
6983 #[inline]
6984 pub fn drop_token(&self) -> Option<SyntaxToken> {
6985 support::token(&self.syntax, SyntaxKind::DROP_KW)
6986 }
6987 #[inline]
6988 pub fn user_token(&self) -> Option<SyntaxToken> {
6989 support::token(&self.syntax, SyntaxKind::USER_KW)
6990 }
6991}
6992
6993#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6994pub struct DropUserMapping {
6995 pub(crate) syntax: SyntaxNode,
6996}
6997impl DropUserMapping {
6998 #[inline]
6999 pub fn if_exists(&self) -> Option<IfExists> {
7000 support::child(&self.syntax)
7001 }
7002 #[inline]
7003 pub fn role(&self) -> Option<Role> {
7004 support::child(&self.syntax)
7005 }
7006 #[inline]
7007 pub fn server_name(&self) -> Option<ServerName> {
7008 support::child(&self.syntax)
7009 }
7010 #[inline]
7011 pub fn drop_token(&self) -> Option<SyntaxToken> {
7012 support::token(&self.syntax, SyntaxKind::DROP_KW)
7013 }
7014 #[inline]
7015 pub fn for_token(&self) -> Option<SyntaxToken> {
7016 support::token(&self.syntax, SyntaxKind::FOR_KW)
7017 }
7018 #[inline]
7019 pub fn mapping_token(&self) -> Option<SyntaxToken> {
7020 support::token(&self.syntax, SyntaxKind::MAPPING_KW)
7021 }
7022 #[inline]
7023 pub fn user_token(&self) -> Option<SyntaxToken> {
7024 support::token(&self.syntax, SyntaxKind::USER_KW)
7025 }
7026}
7027
7028#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7029pub struct DropView {
7030 pub(crate) syntax: SyntaxNode,
7031}
7032impl DropView {
7033 #[inline]
7034 pub fn if_exists(&self) -> Option<IfExists> {
7035 support::child(&self.syntax)
7036 }
7037 #[inline]
7038 pub fn path(&self) -> Option<Path> {
7039 support::child(&self.syntax)
7040 }
7041 #[inline]
7042 pub fn cascade_token(&self) -> Option<SyntaxToken> {
7043 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
7044 }
7045 #[inline]
7046 pub fn drop_token(&self) -> Option<SyntaxToken> {
7047 support::token(&self.syntax, SyntaxKind::DROP_KW)
7048 }
7049 #[inline]
7050 pub fn restrict_token(&self) -> Option<SyntaxToken> {
7051 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
7052 }
7053 #[inline]
7054 pub fn view_token(&self) -> Option<SyntaxToken> {
7055 support::token(&self.syntax, SyntaxKind::VIEW_KW)
7056 }
7057}
7058
7059#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7060pub struct ElseClause {
7061 pub(crate) syntax: SyntaxNode,
7062}
7063impl ElseClause {
7064 #[inline]
7065 pub fn expr(&self) -> Option<Expr> {
7066 support::child(&self.syntax)
7067 }
7068 #[inline]
7069 pub fn else_token(&self) -> Option<SyntaxToken> {
7070 support::token(&self.syntax, SyntaxKind::ELSE_KW)
7071 }
7072}
7073
7074#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7075pub struct EnableAlwaysRule {
7076 pub(crate) syntax: SyntaxNode,
7077}
7078impl EnableAlwaysRule {
7079 #[inline]
7080 pub fn always_token(&self) -> Option<SyntaxToken> {
7081 support::token(&self.syntax, SyntaxKind::ALWAYS_KW)
7082 }
7083 #[inline]
7084 pub fn enable_token(&self) -> Option<SyntaxToken> {
7085 support::token(&self.syntax, SyntaxKind::ENABLE_KW)
7086 }
7087 #[inline]
7088 pub fn rule_token(&self) -> Option<SyntaxToken> {
7089 support::token(&self.syntax, SyntaxKind::RULE_KW)
7090 }
7091}
7092
7093#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7094pub struct EnableAlwaysTrigger {
7095 pub(crate) syntax: SyntaxNode,
7096}
7097impl EnableAlwaysTrigger {
7098 #[inline]
7099 pub fn always_token(&self) -> Option<SyntaxToken> {
7100 support::token(&self.syntax, SyntaxKind::ALWAYS_KW)
7101 }
7102 #[inline]
7103 pub fn enable_token(&self) -> Option<SyntaxToken> {
7104 support::token(&self.syntax, SyntaxKind::ENABLE_KW)
7105 }
7106 #[inline]
7107 pub fn trigger_token(&self) -> Option<SyntaxToken> {
7108 support::token(&self.syntax, SyntaxKind::TRIGGER_KW)
7109 }
7110}
7111
7112#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7113pub struct EnableReplicaRule {
7114 pub(crate) syntax: SyntaxNode,
7115}
7116impl EnableReplicaRule {
7117 #[inline]
7118 pub fn enable_token(&self) -> Option<SyntaxToken> {
7119 support::token(&self.syntax, SyntaxKind::ENABLE_KW)
7120 }
7121 #[inline]
7122 pub fn replica_token(&self) -> Option<SyntaxToken> {
7123 support::token(&self.syntax, SyntaxKind::REPLICA_KW)
7124 }
7125 #[inline]
7126 pub fn rule_token(&self) -> Option<SyntaxToken> {
7127 support::token(&self.syntax, SyntaxKind::RULE_KW)
7128 }
7129}
7130
7131#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7132pub struct EnableReplicaTrigger {
7133 pub(crate) syntax: SyntaxNode,
7134}
7135impl EnableReplicaTrigger {
7136 #[inline]
7137 pub fn enable_token(&self) -> Option<SyntaxToken> {
7138 support::token(&self.syntax, SyntaxKind::ENABLE_KW)
7139 }
7140 #[inline]
7141 pub fn replica_token(&self) -> Option<SyntaxToken> {
7142 support::token(&self.syntax, SyntaxKind::REPLICA_KW)
7143 }
7144 #[inline]
7145 pub fn trigger_token(&self) -> Option<SyntaxToken> {
7146 support::token(&self.syntax, SyntaxKind::TRIGGER_KW)
7147 }
7148}
7149
7150#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7151pub struct EnableRls {
7152 pub(crate) syntax: SyntaxNode,
7153}
7154impl EnableRls {
7155 #[inline]
7156 pub fn enable_token(&self) -> Option<SyntaxToken> {
7157 support::token(&self.syntax, SyntaxKind::ENABLE_KW)
7158 }
7159 #[inline]
7160 pub fn level_token(&self) -> Option<SyntaxToken> {
7161 support::token(&self.syntax, SyntaxKind::LEVEL_KW)
7162 }
7163 #[inline]
7164 pub fn row_token(&self) -> Option<SyntaxToken> {
7165 support::token(&self.syntax, SyntaxKind::ROW_KW)
7166 }
7167 #[inline]
7168 pub fn security_token(&self) -> Option<SyntaxToken> {
7169 support::token(&self.syntax, SyntaxKind::SECURITY_KW)
7170 }
7171}
7172
7173#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7174pub struct EnableRule {
7175 pub(crate) syntax: SyntaxNode,
7176}
7177impl EnableRule {
7178 #[inline]
7179 pub fn enable_token(&self) -> Option<SyntaxToken> {
7180 support::token(&self.syntax, SyntaxKind::ENABLE_KW)
7181 }
7182 #[inline]
7183 pub fn rule_token(&self) -> Option<SyntaxToken> {
7184 support::token(&self.syntax, SyntaxKind::RULE_KW)
7185 }
7186}
7187
7188#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7189pub struct EnableTrigger {
7190 pub(crate) syntax: SyntaxNode,
7191}
7192impl EnableTrigger {
7193 #[inline]
7194 pub fn enable_token(&self) -> Option<SyntaxToken> {
7195 support::token(&self.syntax, SyntaxKind::ENABLE_KW)
7196 }
7197 #[inline]
7198 pub fn trigger_token(&self) -> Option<SyntaxToken> {
7199 support::token(&self.syntax, SyntaxKind::TRIGGER_KW)
7200 }
7201}
7202
7203#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7204pub struct Enforced {
7205 pub(crate) syntax: SyntaxNode,
7206}
7207impl Enforced {
7208 #[inline]
7209 pub fn enforced_token(&self) -> Option<SyntaxToken> {
7210 support::token(&self.syntax, SyntaxKind::ENFORCED_KW)
7211 }
7212}
7213
7214#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7215pub struct EventTriggerWhen {
7216 pub(crate) syntax: SyntaxNode,
7217}
7218impl EventTriggerWhen {
7219 #[inline]
7220 pub fn literals(&self) -> AstChildren<Literal> {
7221 support::children(&self.syntax)
7222 }
7223 #[inline]
7224 pub fn name_ref(&self) -> Option<NameRef> {
7225 support::child(&self.syntax)
7226 }
7227 #[inline]
7228 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
7229 support::token(&self.syntax, SyntaxKind::L_PAREN)
7230 }
7231 #[inline]
7232 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
7233 support::token(&self.syntax, SyntaxKind::R_PAREN)
7234 }
7235 #[inline]
7236 pub fn in_token(&self) -> Option<SyntaxToken> {
7237 support::token(&self.syntax, SyntaxKind::IN_KW)
7238 }
7239}
7240
7241#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7242pub struct EventTriggerWhenClause {
7243 pub(crate) syntax: SyntaxNode,
7244}
7245impl EventTriggerWhenClause {
7246 #[inline]
7247 pub fn event_trigger_whens(&self) -> AstChildren<EventTriggerWhen> {
7248 support::children(&self.syntax)
7249 }
7250 #[inline]
7251 pub fn when_token(&self) -> Option<SyntaxToken> {
7252 support::token(&self.syntax, SyntaxKind::WHEN_KW)
7253 }
7254}
7255
7256#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7257pub struct ExceptTables {
7258 pub(crate) syntax: SyntaxNode,
7259}
7260impl ExceptTables {
7261 #[inline]
7262 pub fn name_refs(&self) -> AstChildren<NameRef> {
7263 support::children(&self.syntax)
7264 }
7265 #[inline]
7266 pub fn except_token(&self) -> Option<SyntaxToken> {
7267 support::token(&self.syntax, SyntaxKind::EXCEPT_KW)
7268 }
7269}
7270
7271#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7272pub struct ExcludeConstraint {
7273 pub(crate) syntax: SyntaxNode,
7274}
7275impl ExcludeConstraint {
7276 #[inline]
7277 pub fn constraint_exclusion_list(&self) -> Option<ConstraintExclusionList> {
7278 support::child(&self.syntax)
7279 }
7280 #[inline]
7281 pub fn constraint_index_method(&self) -> Option<ConstraintIndexMethod> {
7282 support::child(&self.syntax)
7283 }
7284 #[inline]
7285 pub fn constraint_name(&self) -> Option<ConstraintName> {
7286 support::child(&self.syntax)
7287 }
7288 #[inline]
7289 pub fn where_condition_clause(&self) -> Option<WhereConditionClause> {
7290 support::child(&self.syntax)
7291 }
7292 #[inline]
7293 pub fn exclude_token(&self) -> Option<SyntaxToken> {
7294 support::token(&self.syntax, SyntaxKind::EXCLUDE_KW)
7295 }
7296}
7297
7298#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7299pub struct Execute {
7300 pub(crate) syntax: SyntaxNode,
7301}
7302impl Execute {
7303 #[inline]
7304 pub fn arg_list(&self) -> Option<ArgList> {
7305 support::child(&self.syntax)
7306 }
7307 #[inline]
7308 pub fn name_ref(&self) -> Option<NameRef> {
7309 support::child(&self.syntax)
7310 }
7311 #[inline]
7312 pub fn execute_token(&self) -> Option<SyntaxToken> {
7313 support::token(&self.syntax, SyntaxKind::EXECUTE_KW)
7314 }
7315}
7316
7317#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7318pub struct ExistsFn {
7319 pub(crate) syntax: SyntaxNode,
7320}
7321impl ExistsFn {
7322 #[inline]
7323 pub fn select_variant(&self) -> Option<SelectVariant> {
7324 support::child(&self.syntax)
7325 }
7326 #[inline]
7327 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
7328 support::token(&self.syntax, SyntaxKind::L_PAREN)
7329 }
7330 #[inline]
7331 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
7332 support::token(&self.syntax, SyntaxKind::R_PAREN)
7333 }
7334 #[inline]
7335 pub fn exists_token(&self) -> Option<SyntaxToken> {
7336 support::token(&self.syntax, SyntaxKind::EXISTS_KW)
7337 }
7338}
7339
7340#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7341pub struct Explain {
7342 pub(crate) syntax: SyntaxNode,
7343}
7344impl Explain {
7345 #[inline]
7346 pub fn explain_stmt(&self) -> Option<ExplainStmt> {
7347 support::child(&self.syntax)
7348 }
7349 #[inline]
7350 pub fn analyse_token(&self) -> Option<SyntaxToken> {
7351 support::token(&self.syntax, SyntaxKind::ANALYSE_KW)
7352 }
7353 #[inline]
7354 pub fn analyze_token(&self) -> Option<SyntaxToken> {
7355 support::token(&self.syntax, SyntaxKind::ANALYZE_KW)
7356 }
7357 #[inline]
7358 pub fn explain_token(&self) -> Option<SyntaxToken> {
7359 support::token(&self.syntax, SyntaxKind::EXPLAIN_KW)
7360 }
7361 #[inline]
7362 pub fn verbose_token(&self) -> Option<SyntaxToken> {
7363 support::token(&self.syntax, SyntaxKind::VERBOSE_KW)
7364 }
7365}
7366
7367#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7368pub struct ExprAsName {
7369 pub(crate) syntax: SyntaxNode,
7370}
7371impl ExprAsName {
7372 #[inline]
7373 pub fn as_name(&self) -> Option<AsName> {
7374 support::child(&self.syntax)
7375 }
7376 #[inline]
7377 pub fn expr(&self) -> Option<Expr> {
7378 support::child(&self.syntax)
7379 }
7380}
7381
7382#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7383pub struct ExprType {
7384 pub(crate) syntax: SyntaxNode,
7385}
7386impl ExprType {
7387 #[inline]
7388 pub fn expr(&self) -> Option<Expr> {
7389 support::child(&self.syntax)
7390 }
7391}
7392
7393#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7394pub struct ExtractFn {
7395 pub(crate) syntax: SyntaxNode,
7396}
7397impl ExtractFn {
7398 #[inline]
7399 pub fn expr(&self) -> Option<Expr> {
7400 support::child(&self.syntax)
7401 }
7402 #[inline]
7403 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
7404 support::token(&self.syntax, SyntaxKind::L_PAREN)
7405 }
7406 #[inline]
7407 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
7408 support::token(&self.syntax, SyntaxKind::R_PAREN)
7409 }
7410 #[inline]
7411 pub fn day_token(&self) -> Option<SyntaxToken> {
7412 support::token(&self.syntax, SyntaxKind::DAY_KW)
7413 }
7414 #[inline]
7415 pub fn extract_token(&self) -> Option<SyntaxToken> {
7416 support::token(&self.syntax, SyntaxKind::EXTRACT_KW)
7417 }
7418 #[inline]
7419 pub fn from_token(&self) -> Option<SyntaxToken> {
7420 support::token(&self.syntax, SyntaxKind::FROM_KW)
7421 }
7422 #[inline]
7423 pub fn hour_token(&self) -> Option<SyntaxToken> {
7424 support::token(&self.syntax, SyntaxKind::HOUR_KW)
7425 }
7426 #[inline]
7427 pub fn ident_token(&self) -> Option<SyntaxToken> {
7428 support::token(&self.syntax, SyntaxKind::IDENT)
7429 }
7430 #[inline]
7431 pub fn minute_token(&self) -> Option<SyntaxToken> {
7432 support::token(&self.syntax, SyntaxKind::MINUTE_KW)
7433 }
7434 #[inline]
7435 pub fn month_token(&self) -> Option<SyntaxToken> {
7436 support::token(&self.syntax, SyntaxKind::MONTH_KW)
7437 }
7438 #[inline]
7439 pub fn second_token(&self) -> Option<SyntaxToken> {
7440 support::token(&self.syntax, SyntaxKind::SECOND_KW)
7441 }
7442 #[inline]
7443 pub fn string_token(&self) -> Option<SyntaxToken> {
7444 support::token(&self.syntax, SyntaxKind::STRING_KW)
7445 }
7446 #[inline]
7447 pub fn year_token(&self) -> Option<SyntaxToken> {
7448 support::token(&self.syntax, SyntaxKind::YEAR_KW)
7449 }
7450}
7451
7452#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7453pub struct FatArrow {
7454 pub(crate) syntax: SyntaxNode,
7455}
7456impl FatArrow {
7457 #[inline]
7458 pub fn eq_token(&self) -> Option<SyntaxToken> {
7459 support::token(&self.syntax, SyntaxKind::EQ)
7460 }
7461 #[inline]
7462 pub fn r_angle_token(&self) -> Option<SyntaxToken> {
7463 support::token(&self.syntax, SyntaxKind::R_ANGLE)
7464 }
7465}
7466
7467#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7468pub struct FdwOption {
7469 pub(crate) syntax: SyntaxNode,
7470}
7471impl FdwOption {
7472 #[inline]
7473 pub fn alter_option_list(&self) -> Option<AlterOptionList> {
7474 support::child(&self.syntax)
7475 }
7476 #[inline]
7477 pub fn path(&self) -> Option<Path> {
7478 support::child(&self.syntax)
7479 }
7480 #[inline]
7481 pub fn handler_token(&self) -> Option<SyntaxToken> {
7482 support::token(&self.syntax, SyntaxKind::HANDLER_KW)
7483 }
7484 #[inline]
7485 pub fn no_token(&self) -> Option<SyntaxToken> {
7486 support::token(&self.syntax, SyntaxKind::NO_KW)
7487 }
7488 #[inline]
7489 pub fn options_token(&self) -> Option<SyntaxToken> {
7490 support::token(&self.syntax, SyntaxKind::OPTIONS_KW)
7491 }
7492 #[inline]
7493 pub fn validator_token(&self) -> Option<SyntaxToken> {
7494 support::token(&self.syntax, SyntaxKind::VALIDATOR_KW)
7495 }
7496}
7497
7498#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7499pub struct FdwOptionList {
7500 pub(crate) syntax: SyntaxNode,
7501}
7502impl FdwOptionList {
7503 #[inline]
7504 pub fn fdw_options(&self) -> AstChildren<FdwOption> {
7505 support::children(&self.syntax)
7506 }
7507}
7508
7509#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7510pub struct Fetch {
7511 pub(crate) syntax: SyntaxNode,
7512}
7513impl Fetch {
7514 #[inline]
7515 pub fn name_ref(&self) -> Option<NameRef> {
7516 support::child(&self.syntax)
7517 }
7518 #[inline]
7519 pub fn fetch_token(&self) -> Option<SyntaxToken> {
7520 support::token(&self.syntax, SyntaxKind::FETCH_KW)
7521 }
7522 #[inline]
7523 pub fn from_token(&self) -> Option<SyntaxToken> {
7524 support::token(&self.syntax, SyntaxKind::FROM_KW)
7525 }
7526 #[inline]
7527 pub fn in_token(&self) -> Option<SyntaxToken> {
7528 support::token(&self.syntax, SyntaxKind::IN_KW)
7529 }
7530}
7531
7532#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7533pub struct FetchClause {
7534 pub(crate) syntax: SyntaxNode,
7535}
7536impl FetchClause {
7537 #[inline]
7538 pub fn expr(&self) -> Option<Expr> {
7539 support::child(&self.syntax)
7540 }
7541 #[inline]
7542 pub fn fetch_token(&self) -> Option<SyntaxToken> {
7543 support::token(&self.syntax, SyntaxKind::FETCH_KW)
7544 }
7545 #[inline]
7546 pub fn first_token(&self) -> Option<SyntaxToken> {
7547 support::token(&self.syntax, SyntaxKind::FIRST_KW)
7548 }
7549 #[inline]
7550 pub fn next_token(&self) -> Option<SyntaxToken> {
7551 support::token(&self.syntax, SyntaxKind::NEXT_KW)
7552 }
7553 #[inline]
7554 pub fn only_token(&self) -> Option<SyntaxToken> {
7555 support::token(&self.syntax, SyntaxKind::ONLY_KW)
7556 }
7557 #[inline]
7558 pub fn row_token(&self) -> Option<SyntaxToken> {
7559 support::token(&self.syntax, SyntaxKind::ROW_KW)
7560 }
7561 #[inline]
7562 pub fn rows_token(&self) -> Option<SyntaxToken> {
7563 support::token(&self.syntax, SyntaxKind::ROWS_KW)
7564 }
7565 #[inline]
7566 pub fn ties_token(&self) -> Option<SyntaxToken> {
7567 support::token(&self.syntax, SyntaxKind::TIES_KW)
7568 }
7569 #[inline]
7570 pub fn with_token(&self) -> Option<SyntaxToken> {
7571 support::token(&self.syntax, SyntaxKind::WITH_KW)
7572 }
7573}
7574
7575#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7576pub struct FieldExpr {
7577 pub(crate) syntax: SyntaxNode,
7578}
7579impl FieldExpr {
7580 #[inline]
7581 pub fn star_token(&self) -> Option<SyntaxToken> {
7582 support::token(&self.syntax, SyntaxKind::STAR)
7583 }
7584 #[inline]
7585 pub fn dot_token(&self) -> Option<SyntaxToken> {
7586 support::token(&self.syntax, SyntaxKind::DOT)
7587 }
7588}
7589
7590#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7591pub struct FilterClause {
7592 pub(crate) syntax: SyntaxNode,
7593}
7594impl FilterClause {
7595 #[inline]
7596 pub fn expr(&self) -> Option<Expr> {
7597 support::child(&self.syntax)
7598 }
7599 #[inline]
7600 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
7601 support::token(&self.syntax, SyntaxKind::L_PAREN)
7602 }
7603 #[inline]
7604 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
7605 support::token(&self.syntax, SyntaxKind::R_PAREN)
7606 }
7607 #[inline]
7608 pub fn filter_token(&self) -> Option<SyntaxToken> {
7609 support::token(&self.syntax, SyntaxKind::FILTER_KW)
7610 }
7611 #[inline]
7612 pub fn where_token(&self) -> Option<SyntaxToken> {
7613 support::token(&self.syntax, SyntaxKind::WHERE_KW)
7614 }
7615}
7616
7617#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7618pub struct ForProvider {
7619 pub(crate) syntax: SyntaxNode,
7620}
7621impl ForProvider {
7622 #[inline]
7623 pub fn literal(&self) -> Option<Literal> {
7624 support::child(&self.syntax)
7625 }
7626 #[inline]
7627 pub fn name_ref(&self) -> Option<NameRef> {
7628 support::child(&self.syntax)
7629 }
7630 #[inline]
7631 pub fn for_token(&self) -> Option<SyntaxToken> {
7632 support::token(&self.syntax, SyntaxKind::FOR_KW)
7633 }
7634}
7635
7636#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7637pub struct ForceRls {
7638 pub(crate) syntax: SyntaxNode,
7639}
7640impl ForceRls {
7641 #[inline]
7642 pub fn force_token(&self) -> Option<SyntaxToken> {
7643 support::token(&self.syntax, SyntaxKind::FORCE_KW)
7644 }
7645 #[inline]
7646 pub fn level_token(&self) -> Option<SyntaxToken> {
7647 support::token(&self.syntax, SyntaxKind::LEVEL_KW)
7648 }
7649 #[inline]
7650 pub fn row_token(&self) -> Option<SyntaxToken> {
7651 support::token(&self.syntax, SyntaxKind::ROW_KW)
7652 }
7653 #[inline]
7654 pub fn security_token(&self) -> Option<SyntaxToken> {
7655 support::token(&self.syntax, SyntaxKind::SECURITY_KW)
7656 }
7657}
7658
7659#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7660pub struct ForeignKeyConstraint {
7661 pub(crate) syntax: SyntaxNode,
7662}
7663impl ForeignKeyConstraint {
7664 #[inline]
7665 pub fn constraint_name(&self) -> Option<ConstraintName> {
7666 support::child(&self.syntax)
7667 }
7668 #[inline]
7669 pub fn match_type(&self) -> Option<MatchType> {
7670 support::child(&self.syntax)
7671 }
7672 #[inline]
7673 pub fn on_delete_action(&self) -> Option<OnDeleteAction> {
7674 support::child(&self.syntax)
7675 }
7676 #[inline]
7677 pub fn on_update_action(&self) -> Option<OnUpdateAction> {
7678 support::child(&self.syntax)
7679 }
7680 #[inline]
7681 pub fn path(&self) -> Option<Path> {
7682 support::child(&self.syntax)
7683 }
7684 #[inline]
7685 pub fn foreign_token(&self) -> Option<SyntaxToken> {
7686 support::token(&self.syntax, SyntaxKind::FOREIGN_KW)
7687 }
7688 #[inline]
7689 pub fn key_token(&self) -> Option<SyntaxToken> {
7690 support::token(&self.syntax, SyntaxKind::KEY_KW)
7691 }
7692 #[inline]
7693 pub fn references_token(&self) -> Option<SyntaxToken> {
7694 support::token(&self.syntax, SyntaxKind::REFERENCES_KW)
7695 }
7696}
7697
7698#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7699pub struct FrameClause {
7700 pub(crate) syntax: SyntaxNode,
7701}
7702impl FrameClause {
7703 #[inline]
7704 pub fn groups_token(&self) -> Option<SyntaxToken> {
7705 support::token(&self.syntax, SyntaxKind::GROUPS_KW)
7706 }
7707 #[inline]
7708 pub fn range_token(&self) -> Option<SyntaxToken> {
7709 support::token(&self.syntax, SyntaxKind::RANGE_KW)
7710 }
7711 #[inline]
7712 pub fn rows_token(&self) -> Option<SyntaxToken> {
7713 support::token(&self.syntax, SyntaxKind::ROWS_KW)
7714 }
7715}
7716
7717#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7718pub struct FromClause {
7719 pub(crate) syntax: SyntaxNode,
7720}
7721impl FromClause {
7722 #[inline]
7723 pub fn from_items(&self) -> AstChildren<FromItem> {
7724 support::children(&self.syntax)
7725 }
7726 #[inline]
7727 pub fn join_exprs(&self) -> AstChildren<JoinExpr> {
7728 support::children(&self.syntax)
7729 }
7730 #[inline]
7731 pub fn from_token(&self) -> Option<SyntaxToken> {
7732 support::token(&self.syntax, SyntaxKind::FROM_KW)
7733 }
7734}
7735
7736#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7737pub struct FromItem {
7738 pub(crate) syntax: SyntaxNode,
7739}
7740impl FromItem {
7741 #[inline]
7742 pub fn alias(&self) -> Option<Alias> {
7743 support::child(&self.syntax)
7744 }
7745 #[inline]
7746 pub fn call_expr(&self) -> Option<CallExpr> {
7747 support::child(&self.syntax)
7748 }
7749 #[inline]
7750 pub fn cast_expr(&self) -> Option<CastExpr> {
7751 support::child(&self.syntax)
7752 }
7753 #[inline]
7754 pub fn field_expr(&self) -> Option<FieldExpr> {
7755 support::child(&self.syntax)
7756 }
7757 #[inline]
7758 pub fn json_table(&self) -> Option<JsonTable> {
7759 support::child(&self.syntax)
7760 }
7761 #[inline]
7762 pub fn name_ref(&self) -> Option<NameRef> {
7763 support::child(&self.syntax)
7764 }
7765 #[inline]
7766 pub fn paren_expr(&self) -> Option<ParenExpr> {
7767 support::child(&self.syntax)
7768 }
7769 #[inline]
7770 pub fn paren_select(&self) -> Option<ParenSelect> {
7771 support::child(&self.syntax)
7772 }
7773 #[inline]
7774 pub fn tablesample_clause(&self) -> Option<TablesampleClause> {
7775 support::child(&self.syntax)
7776 }
7777 #[inline]
7778 pub fn xml_table(&self) -> Option<XmlTable> {
7779 support::child(&self.syntax)
7780 }
7781 #[inline]
7782 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
7783 support::token(&self.syntax, SyntaxKind::L_PAREN)
7784 }
7785 #[inline]
7786 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
7787 support::token(&self.syntax, SyntaxKind::R_PAREN)
7788 }
7789 #[inline]
7790 pub fn star_token(&self) -> Option<SyntaxToken> {
7791 support::token(&self.syntax, SyntaxKind::STAR)
7792 }
7793 #[inline]
7794 pub fn from_token(&self) -> Option<SyntaxToken> {
7795 support::token(&self.syntax, SyntaxKind::FROM_KW)
7796 }
7797 #[inline]
7798 pub fn lateral_token(&self) -> Option<SyntaxToken> {
7799 support::token(&self.syntax, SyntaxKind::LATERAL_KW)
7800 }
7801 #[inline]
7802 pub fn only_token(&self) -> Option<SyntaxToken> {
7803 support::token(&self.syntax, SyntaxKind::ONLY_KW)
7804 }
7805 #[inline]
7806 pub fn ordinality_token(&self) -> Option<SyntaxToken> {
7807 support::token(&self.syntax, SyntaxKind::ORDINALITY_KW)
7808 }
7809 #[inline]
7810 pub fn rows_token(&self) -> Option<SyntaxToken> {
7811 support::token(&self.syntax, SyntaxKind::ROWS_KW)
7812 }
7813 #[inline]
7814 pub fn with_token(&self) -> Option<SyntaxToken> {
7815 support::token(&self.syntax, SyntaxKind::WITH_KW)
7816 }
7817}
7818
7819#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7820pub struct FromTable {
7821 pub(crate) syntax: SyntaxNode,
7822}
7823impl FromTable {
7824 #[inline]
7825 pub fn path(&self) -> Option<Path> {
7826 support::child(&self.syntax)
7827 }
7828 #[inline]
7829 pub fn from_token(&self) -> Option<SyntaxToken> {
7830 support::token(&self.syntax, SyntaxKind::FROM_KW)
7831 }
7832}
7833
7834#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7835pub struct FuncOptionList {
7836 pub(crate) syntax: SyntaxNode,
7837}
7838impl FuncOptionList {
7839 #[inline]
7840 pub fn options(&self) -> AstChildren<FuncOption> {
7841 support::children(&self.syntax)
7842 }
7843}
7844
7845#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7846pub struct FunctionSig {
7847 pub(crate) syntax: SyntaxNode,
7848}
7849impl FunctionSig {
7850 #[inline]
7851 pub fn param_list(&self) -> Option<ParamList> {
7852 support::child(&self.syntax)
7853 }
7854 #[inline]
7855 pub fn path(&self) -> Option<Path> {
7856 support::child(&self.syntax)
7857 }
7858}
7859
7860#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7861pub struct FunctionSigList {
7862 pub(crate) syntax: SyntaxNode,
7863}
7864impl FunctionSigList {
7865 #[inline]
7866 pub fn function_sigs(&self) -> AstChildren<FunctionSig> {
7867 support::children(&self.syntax)
7868 }
7869}
7870
7871#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7872pub struct GeneratedConstraint {
7873 pub(crate) syntax: SyntaxNode,
7874}
7875impl GeneratedConstraint {
7876 #[inline]
7877 pub fn expr(&self) -> Option<Expr> {
7878 support::child(&self.syntax)
7879 }
7880 #[inline]
7881 pub fn name_ref(&self) -> Option<NameRef> {
7882 support::child(&self.syntax)
7883 }
7884 #[inline]
7885 pub fn sequence_option_list(&self) -> Option<SequenceOptionList> {
7886 support::child(&self.syntax)
7887 }
7888 #[inline]
7889 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
7890 support::token(&self.syntax, SyntaxKind::L_PAREN)
7891 }
7892 #[inline]
7893 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
7894 support::token(&self.syntax, SyntaxKind::R_PAREN)
7895 }
7896 #[inline]
7897 pub fn always_token(&self) -> Option<SyntaxToken> {
7898 support::token(&self.syntax, SyntaxKind::ALWAYS_KW)
7899 }
7900 #[inline]
7901 pub fn as_token(&self) -> Option<SyntaxToken> {
7902 support::token(&self.syntax, SyntaxKind::AS_KW)
7903 }
7904 #[inline]
7905 pub fn by_token(&self) -> Option<SyntaxToken> {
7906 support::token(&self.syntax, SyntaxKind::BY_KW)
7907 }
7908 #[inline]
7909 pub fn constraint_token(&self) -> Option<SyntaxToken> {
7910 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
7911 }
7912 #[inline]
7913 pub fn default_token(&self) -> Option<SyntaxToken> {
7914 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
7915 }
7916 #[inline]
7917 pub fn generated_token(&self) -> Option<SyntaxToken> {
7918 support::token(&self.syntax, SyntaxKind::GENERATED_KW)
7919 }
7920 #[inline]
7921 pub fn identity_token(&self) -> Option<SyntaxToken> {
7922 support::token(&self.syntax, SyntaxKind::IDENTITY_KW)
7923 }
7924 #[inline]
7925 pub fn stored_token(&self) -> Option<SyntaxToken> {
7926 support::token(&self.syntax, SyntaxKind::STORED_KW)
7927 }
7928}
7929
7930#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7931pub struct Grant {
7932 pub(crate) syntax: SyntaxNode,
7933}
7934impl Grant {
7935 #[inline]
7936 pub fn name_refs(&self) -> AstChildren<NameRef> {
7937 support::children(&self.syntax)
7938 }
7939 #[inline]
7940 pub fn paths(&self) -> AstChildren<Path> {
7941 support::children(&self.syntax)
7942 }
7943 #[inline]
7944 pub fn revoke_command_list(&self) -> Option<RevokeCommandList> {
7945 support::child(&self.syntax)
7946 }
7947 #[inline]
7948 pub fn role(&self) -> Option<Role> {
7949 support::child(&self.syntax)
7950 }
7951 #[inline]
7952 pub fn role_list(&self) -> Option<RoleList> {
7953 support::child(&self.syntax)
7954 }
7955 #[inline]
7956 pub fn all_token(&self) -> Option<SyntaxToken> {
7957 support::token(&self.syntax, SyntaxKind::ALL_KW)
7958 }
7959 #[inline]
7960 pub fn by_token(&self) -> Option<SyntaxToken> {
7961 support::token(&self.syntax, SyntaxKind::BY_KW)
7962 }
7963 #[inline]
7964 pub fn grant_token(&self) -> Option<SyntaxToken> {
7965 support::token(&self.syntax, SyntaxKind::GRANT_KW)
7966 }
7967 #[inline]
7968 pub fn granted_token(&self) -> Option<SyntaxToken> {
7969 support::token(&self.syntax, SyntaxKind::GRANTED_KW)
7970 }
7971 #[inline]
7972 pub fn in_token(&self) -> Option<SyntaxToken> {
7973 support::token(&self.syntax, SyntaxKind::IN_KW)
7974 }
7975 #[inline]
7976 pub fn on_token(&self) -> Option<SyntaxToken> {
7977 support::token(&self.syntax, SyntaxKind::ON_KW)
7978 }
7979 #[inline]
7980 pub fn option_token(&self) -> Option<SyntaxToken> {
7981 support::token(&self.syntax, SyntaxKind::OPTION_KW)
7982 }
7983 #[inline]
7984 pub fn privileges_token(&self) -> Option<SyntaxToken> {
7985 support::token(&self.syntax, SyntaxKind::PRIVILEGES_KW)
7986 }
7987 #[inline]
7988 pub fn schema_token(&self) -> Option<SyntaxToken> {
7989 support::token(&self.syntax, SyntaxKind::SCHEMA_KW)
7990 }
7991 #[inline]
7992 pub fn table_token(&self) -> Option<SyntaxToken> {
7993 support::token(&self.syntax, SyntaxKind::TABLE_KW)
7994 }
7995 #[inline]
7996 pub fn tables_token(&self) -> Option<SyntaxToken> {
7997 support::token(&self.syntax, SyntaxKind::TABLES_KW)
7998 }
7999 #[inline]
8000 pub fn to_token(&self) -> Option<SyntaxToken> {
8001 support::token(&self.syntax, SyntaxKind::TO_KW)
8002 }
8003 #[inline]
8004 pub fn with_token(&self) -> Option<SyntaxToken> {
8005 support::token(&self.syntax, SyntaxKind::WITH_KW)
8006 }
8007}
8008
8009#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8010pub struct GrantDefaultPrivileges {
8011 pub(crate) syntax: SyntaxNode,
8012}
8013impl GrantDefaultPrivileges {
8014 #[inline]
8015 pub fn privilege_target(&self) -> Option<PrivilegeTarget> {
8016 support::child(&self.syntax)
8017 }
8018 #[inline]
8019 pub fn privileges(&self) -> Option<Privileges> {
8020 support::child(&self.syntax)
8021 }
8022 #[inline]
8023 pub fn role_list(&self) -> Option<RoleList> {
8024 support::child(&self.syntax)
8025 }
8026 #[inline]
8027 pub fn grant_token(&self) -> Option<SyntaxToken> {
8028 support::token(&self.syntax, SyntaxKind::GRANT_KW)
8029 }
8030 #[inline]
8031 pub fn on_token(&self) -> Option<SyntaxToken> {
8032 support::token(&self.syntax, SyntaxKind::ON_KW)
8033 }
8034 #[inline]
8035 pub fn option_token(&self) -> Option<SyntaxToken> {
8036 support::token(&self.syntax, SyntaxKind::OPTION_KW)
8037 }
8038 #[inline]
8039 pub fn to_token(&self) -> Option<SyntaxToken> {
8040 support::token(&self.syntax, SyntaxKind::TO_KW)
8041 }
8042 #[inline]
8043 pub fn with_token(&self) -> Option<SyntaxToken> {
8044 support::token(&self.syntax, SyntaxKind::WITH_KW)
8045 }
8046}
8047
8048#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8049pub struct GroupByClause {
8050 pub(crate) syntax: SyntaxNode,
8051}
8052impl GroupByClause {
8053 #[inline]
8054 pub fn group_by_list(&self) -> Option<GroupByList> {
8055 support::child(&self.syntax)
8056 }
8057 #[inline]
8058 pub fn all_token(&self) -> Option<SyntaxToken> {
8059 support::token(&self.syntax, SyntaxKind::ALL_KW)
8060 }
8061 #[inline]
8062 pub fn by_token(&self) -> Option<SyntaxToken> {
8063 support::token(&self.syntax, SyntaxKind::BY_KW)
8064 }
8065 #[inline]
8066 pub fn distinct_token(&self) -> Option<SyntaxToken> {
8067 support::token(&self.syntax, SyntaxKind::DISTINCT_KW)
8068 }
8069 #[inline]
8070 pub fn group_token(&self) -> Option<SyntaxToken> {
8071 support::token(&self.syntax, SyntaxKind::GROUP_KW)
8072 }
8073}
8074
8075#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8076pub struct GroupByList {
8077 pub(crate) syntax: SyntaxNode,
8078}
8079impl GroupByList {
8080 #[inline]
8081 pub fn group_bys(&self) -> AstChildren<GroupBy> {
8082 support::children(&self.syntax)
8083 }
8084}
8085
8086#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8087pub struct GroupingCube {
8088 pub(crate) syntax: SyntaxNode,
8089}
8090impl GroupingCube {
8091 #[inline]
8092 pub fn expr(&self) -> Option<Expr> {
8093 support::child(&self.syntax)
8094 }
8095 #[inline]
8096 pub fn cube_token(&self) -> Option<SyntaxToken> {
8097 support::token(&self.syntax, SyntaxKind::CUBE_KW)
8098 }
8099}
8100
8101#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8102pub struct GroupingExpr {
8103 pub(crate) syntax: SyntaxNode,
8104}
8105impl GroupingExpr {
8106 #[inline]
8107 pub fn expr(&self) -> Option<Expr> {
8108 support::child(&self.syntax)
8109 }
8110}
8111
8112#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8113pub struct GroupingRollup {
8114 pub(crate) syntax: SyntaxNode,
8115}
8116impl GroupingRollup {
8117 #[inline]
8118 pub fn expr(&self) -> Option<Expr> {
8119 support::child(&self.syntax)
8120 }
8121 #[inline]
8122 pub fn rollup_token(&self) -> Option<SyntaxToken> {
8123 support::token(&self.syntax, SyntaxKind::ROLLUP_KW)
8124 }
8125}
8126
8127#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8128pub struct GroupingSets {
8129 pub(crate) syntax: SyntaxNode,
8130}
8131impl GroupingSets {
8132 #[inline]
8133 pub fn expr(&self) -> Option<Expr> {
8134 support::child(&self.syntax)
8135 }
8136 #[inline]
8137 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
8138 support::token(&self.syntax, SyntaxKind::L_PAREN)
8139 }
8140 #[inline]
8141 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
8142 support::token(&self.syntax, SyntaxKind::R_PAREN)
8143 }
8144 #[inline]
8145 pub fn grouping_token(&self) -> Option<SyntaxToken> {
8146 support::token(&self.syntax, SyntaxKind::GROUPING_KW)
8147 }
8148 #[inline]
8149 pub fn sets_token(&self) -> Option<SyntaxToken> {
8150 support::token(&self.syntax, SyntaxKind::SETS_KW)
8151 }
8152}
8153
8154#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8155pub struct Gteq {
8156 pub(crate) syntax: SyntaxNode,
8157}
8158impl Gteq {
8159 #[inline]
8160 pub fn eq_token(&self) -> Option<SyntaxToken> {
8161 support::token(&self.syntax, SyntaxKind::EQ)
8162 }
8163 #[inline]
8164 pub fn r_angle_token(&self) -> Option<SyntaxToken> {
8165 support::token(&self.syntax, SyntaxKind::R_ANGLE)
8166 }
8167}
8168
8169#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8170pub struct HandlerClause {
8171 pub(crate) syntax: SyntaxNode,
8172}
8173impl HandlerClause {
8174 #[inline]
8175 pub fn path(&self) -> Option<Path> {
8176 support::child(&self.syntax)
8177 }
8178 #[inline]
8179 pub fn handler_token(&self) -> Option<SyntaxToken> {
8180 support::token(&self.syntax, SyntaxKind::HANDLER_KW)
8181 }
8182}
8183
8184#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8185pub struct HavingClause {
8186 pub(crate) syntax: SyntaxNode,
8187}
8188impl HavingClause {
8189 #[inline]
8190 pub fn expr(&self) -> Option<Expr> {
8191 support::child(&self.syntax)
8192 }
8193 #[inline]
8194 pub fn having_token(&self) -> Option<SyntaxToken> {
8195 support::token(&self.syntax, SyntaxKind::HAVING_KW)
8196 }
8197}
8198
8199#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8200pub struct IfExists {
8201 pub(crate) syntax: SyntaxNode,
8202}
8203impl IfExists {
8204 #[inline]
8205 pub fn exists_token(&self) -> Option<SyntaxToken> {
8206 support::token(&self.syntax, SyntaxKind::EXISTS_KW)
8207 }
8208 #[inline]
8209 pub fn if_token(&self) -> Option<SyntaxToken> {
8210 support::token(&self.syntax, SyntaxKind::IF_KW)
8211 }
8212}
8213
8214#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8215pub struct IfNotExists {
8216 pub(crate) syntax: SyntaxNode,
8217}
8218impl IfNotExists {
8219 #[inline]
8220 pub fn exists_token(&self) -> Option<SyntaxToken> {
8221 support::token(&self.syntax, SyntaxKind::EXISTS_KW)
8222 }
8223 #[inline]
8224 pub fn if_token(&self) -> Option<SyntaxToken> {
8225 support::token(&self.syntax, SyntaxKind::IF_KW)
8226 }
8227 #[inline]
8228 pub fn not_token(&self) -> Option<SyntaxToken> {
8229 support::token(&self.syntax, SyntaxKind::NOT_KW)
8230 }
8231}
8232
8233#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8234pub struct ImportForeignSchema {
8235 pub(crate) syntax: SyntaxNode,
8236}
8237impl ImportForeignSchema {
8238 #[inline]
8239 pub fn alter_option_list(&self) -> Option<AlterOptionList> {
8240 support::child(&self.syntax)
8241 }
8242 #[inline]
8243 pub fn except_tables(&self) -> Option<ExceptTables> {
8244 support::child(&self.syntax)
8245 }
8246 #[inline]
8247 pub fn into_schema(&self) -> Option<IntoSchema> {
8248 support::child(&self.syntax)
8249 }
8250 #[inline]
8251 pub fn limit_to_tables(&self) -> Option<LimitToTables> {
8252 support::child(&self.syntax)
8253 }
8254 #[inline]
8255 pub fn name_ref(&self) -> Option<NameRef> {
8256 support::child(&self.syntax)
8257 }
8258 #[inline]
8259 pub fn server_name(&self) -> Option<ServerName> {
8260 support::child(&self.syntax)
8261 }
8262 #[inline]
8263 pub fn foreign_token(&self) -> Option<SyntaxToken> {
8264 support::token(&self.syntax, SyntaxKind::FOREIGN_KW)
8265 }
8266 #[inline]
8267 pub fn from_token(&self) -> Option<SyntaxToken> {
8268 support::token(&self.syntax, SyntaxKind::FROM_KW)
8269 }
8270 #[inline]
8271 pub fn import_token(&self) -> Option<SyntaxToken> {
8272 support::token(&self.syntax, SyntaxKind::IMPORT_KW)
8273 }
8274 #[inline]
8275 pub fn schema_token(&self) -> Option<SyntaxToken> {
8276 support::token(&self.syntax, SyntaxKind::SCHEMA_KW)
8277 }
8278}
8279
8280#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8281pub struct IndexExpr {
8282 pub(crate) syntax: SyntaxNode,
8283}
8284impl IndexExpr {
8285 #[inline]
8286 pub fn l_brack_token(&self) -> Option<SyntaxToken> {
8287 support::token(&self.syntax, SyntaxKind::L_BRACK)
8288 }
8289 #[inline]
8290 pub fn r_brack_token(&self) -> Option<SyntaxToken> {
8291 support::token(&self.syntax, SyntaxKind::R_BRACK)
8292 }
8293}
8294
8295#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8296pub struct Inherit {
8297 pub(crate) syntax: SyntaxNode,
8298}
8299impl Inherit {
8300 #[inline]
8301 pub fn path(&self) -> Option<Path> {
8302 support::child(&self.syntax)
8303 }
8304 #[inline]
8305 pub fn inherit_token(&self) -> Option<SyntaxToken> {
8306 support::token(&self.syntax, SyntaxKind::INHERIT_KW)
8307 }
8308}
8309
8310#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8311pub struct InheritTable {
8312 pub(crate) syntax: SyntaxNode,
8313}
8314impl InheritTable {
8315 #[inline]
8316 pub fn path(&self) -> Option<Path> {
8317 support::child(&self.syntax)
8318 }
8319 #[inline]
8320 pub fn inherit_token(&self) -> Option<SyntaxToken> {
8321 support::token(&self.syntax, SyntaxKind::INHERIT_KW)
8322 }
8323}
8324
8325#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8326pub struct Inherits {
8327 pub(crate) syntax: SyntaxNode,
8328}
8329impl Inherits {
8330 #[inline]
8331 pub fn paths(&self) -> AstChildren<Path> {
8332 support::children(&self.syntax)
8333 }
8334 #[inline]
8335 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
8336 support::token(&self.syntax, SyntaxKind::L_PAREN)
8337 }
8338 #[inline]
8339 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
8340 support::token(&self.syntax, SyntaxKind::R_PAREN)
8341 }
8342 #[inline]
8343 pub fn inherits_token(&self) -> Option<SyntaxToken> {
8344 support::token(&self.syntax, SyntaxKind::INHERITS_KW)
8345 }
8346}
8347
8348#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8349pub struct InitiallyDeferredConstraintOption {
8350 pub(crate) syntax: SyntaxNode,
8351}
8352impl InitiallyDeferredConstraintOption {
8353 #[inline]
8354 pub fn deferred_token(&self) -> Option<SyntaxToken> {
8355 support::token(&self.syntax, SyntaxKind::DEFERRED_KW)
8356 }
8357 #[inline]
8358 pub fn initially_token(&self) -> Option<SyntaxToken> {
8359 support::token(&self.syntax, SyntaxKind::INITIALLY_KW)
8360 }
8361}
8362
8363#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8364pub struct InitiallyImmediateConstraintOption {
8365 pub(crate) syntax: SyntaxNode,
8366}
8367impl InitiallyImmediateConstraintOption {
8368 #[inline]
8369 pub fn immediate_token(&self) -> Option<SyntaxToken> {
8370 support::token(&self.syntax, SyntaxKind::IMMEDIATE_KW)
8371 }
8372 #[inline]
8373 pub fn initially_token(&self) -> Option<SyntaxToken> {
8374 support::token(&self.syntax, SyntaxKind::INITIALLY_KW)
8375 }
8376}
8377
8378#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8379pub struct Insert {
8380 pub(crate) syntax: SyntaxNode,
8381}
8382impl Insert {
8383 #[inline]
8384 pub fn alias(&self) -> Option<Alias> {
8385 support::child(&self.syntax)
8386 }
8387 #[inline]
8388 pub fn column_list(&self) -> Option<ColumnList> {
8389 support::child(&self.syntax)
8390 }
8391 #[inline]
8392 pub fn on_conflict_clause(&self) -> Option<OnConflictClause> {
8393 support::child(&self.syntax)
8394 }
8395 #[inline]
8396 pub fn path(&self) -> Option<Path> {
8397 support::child(&self.syntax)
8398 }
8399 #[inline]
8400 pub fn returning_clause(&self) -> Option<ReturningClause> {
8401 support::child(&self.syntax)
8402 }
8403 #[inline]
8404 pub fn stmt(&self) -> Option<Stmt> {
8405 support::child(&self.syntax)
8406 }
8407 #[inline]
8408 pub fn values(&self) -> Option<Values> {
8409 support::child(&self.syntax)
8410 }
8411 #[inline]
8412 pub fn with_clause(&self) -> Option<WithClause> {
8413 support::child(&self.syntax)
8414 }
8415 #[inline]
8416 pub fn default_token(&self) -> Option<SyntaxToken> {
8417 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
8418 }
8419 #[inline]
8420 pub fn insert_token(&self) -> Option<SyntaxToken> {
8421 support::token(&self.syntax, SyntaxKind::INSERT_KW)
8422 }
8423 #[inline]
8424 pub fn into_token(&self) -> Option<SyntaxToken> {
8425 support::token(&self.syntax, SyntaxKind::INTO_KW)
8426 }
8427 #[inline]
8428 pub fn overriding_token(&self) -> Option<SyntaxToken> {
8429 support::token(&self.syntax, SyntaxKind::OVERRIDING_KW)
8430 }
8431 #[inline]
8432 pub fn system_token(&self) -> Option<SyntaxToken> {
8433 support::token(&self.syntax, SyntaxKind::SYSTEM_KW)
8434 }
8435 #[inline]
8436 pub fn user_token(&self) -> Option<SyntaxToken> {
8437 support::token(&self.syntax, SyntaxKind::USER_KW)
8438 }
8439 #[inline]
8440 pub fn value_token(&self) -> Option<SyntaxToken> {
8441 support::token(&self.syntax, SyntaxKind::VALUE_KW)
8442 }
8443 #[inline]
8444 pub fn values_token(&self) -> Option<SyntaxToken> {
8445 support::token(&self.syntax, SyntaxKind::VALUES_KW)
8446 }
8447}
8448
8449#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8450pub struct IntervalType {
8451 pub(crate) syntax: SyntaxNode,
8452}
8453impl IntervalType {
8454 #[inline]
8455 pub fn literal(&self) -> Option<Literal> {
8456 support::child(&self.syntax)
8457 }
8458 #[inline]
8459 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
8460 support::token(&self.syntax, SyntaxKind::L_PAREN)
8461 }
8462 #[inline]
8463 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
8464 support::token(&self.syntax, SyntaxKind::R_PAREN)
8465 }
8466 #[inline]
8467 pub fn day_token(&self) -> Option<SyntaxToken> {
8468 support::token(&self.syntax, SyntaxKind::DAY_KW)
8469 }
8470 #[inline]
8471 pub fn hour_token(&self) -> Option<SyntaxToken> {
8472 support::token(&self.syntax, SyntaxKind::HOUR_KW)
8473 }
8474 #[inline]
8475 pub fn interval_token(&self) -> Option<SyntaxToken> {
8476 support::token(&self.syntax, SyntaxKind::INTERVAL_KW)
8477 }
8478 #[inline]
8479 pub fn minute_token(&self) -> Option<SyntaxToken> {
8480 support::token(&self.syntax, SyntaxKind::MINUTE_KW)
8481 }
8482 #[inline]
8483 pub fn month_token(&self) -> Option<SyntaxToken> {
8484 support::token(&self.syntax, SyntaxKind::MONTH_KW)
8485 }
8486 #[inline]
8487 pub fn second_token(&self) -> Option<SyntaxToken> {
8488 support::token(&self.syntax, SyntaxKind::SECOND_KW)
8489 }
8490 #[inline]
8491 pub fn to_token(&self) -> Option<SyntaxToken> {
8492 support::token(&self.syntax, SyntaxKind::TO_KW)
8493 }
8494 #[inline]
8495 pub fn year_token(&self) -> Option<SyntaxToken> {
8496 support::token(&self.syntax, SyntaxKind::YEAR_KW)
8497 }
8498}
8499
8500#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8501pub struct IntoClause {
8502 pub(crate) syntax: SyntaxNode,
8503}
8504impl IntoClause {
8505 #[inline]
8506 pub fn path(&self) -> Option<Path> {
8507 support::child(&self.syntax)
8508 }
8509 #[inline]
8510 pub fn into_token(&self) -> Option<SyntaxToken> {
8511 support::token(&self.syntax, SyntaxKind::INTO_KW)
8512 }
8513}
8514
8515#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8516pub struct IntoSchema {
8517 pub(crate) syntax: SyntaxNode,
8518}
8519impl IntoSchema {
8520 #[inline]
8521 pub fn name_ref(&self) -> Option<NameRef> {
8522 support::child(&self.syntax)
8523 }
8524 #[inline]
8525 pub fn into_token(&self) -> Option<SyntaxToken> {
8526 support::token(&self.syntax, SyntaxKind::INTO_KW)
8527 }
8528}
8529
8530#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8531pub struct IsDistinctFrom {
8532 pub(crate) syntax: SyntaxNode,
8533}
8534impl IsDistinctFrom {
8535 #[inline]
8536 pub fn distinct_token(&self) -> Option<SyntaxToken> {
8537 support::token(&self.syntax, SyntaxKind::DISTINCT_KW)
8538 }
8539 #[inline]
8540 pub fn from_token(&self) -> Option<SyntaxToken> {
8541 support::token(&self.syntax, SyntaxKind::FROM_KW)
8542 }
8543 #[inline]
8544 pub fn is_token(&self) -> Option<SyntaxToken> {
8545 support::token(&self.syntax, SyntaxKind::IS_KW)
8546 }
8547}
8548
8549#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8550pub struct IsJson {
8551 pub(crate) syntax: SyntaxNode,
8552}
8553impl IsJson {
8554 #[inline]
8555 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
8556 support::child(&self.syntax)
8557 }
8558 #[inline]
8559 pub fn is_token(&self) -> Option<SyntaxToken> {
8560 support::token(&self.syntax, SyntaxKind::IS_KW)
8561 }
8562 #[inline]
8563 pub fn json_token(&self) -> Option<SyntaxToken> {
8564 support::token(&self.syntax, SyntaxKind::JSON_KW)
8565 }
8566}
8567
8568#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8569pub struct IsJsonArray {
8570 pub(crate) syntax: SyntaxNode,
8571}
8572impl IsJsonArray {
8573 #[inline]
8574 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
8575 support::child(&self.syntax)
8576 }
8577 #[inline]
8578 pub fn array_token(&self) -> Option<SyntaxToken> {
8579 support::token(&self.syntax, SyntaxKind::ARRAY_KW)
8580 }
8581 #[inline]
8582 pub fn is_token(&self) -> Option<SyntaxToken> {
8583 support::token(&self.syntax, SyntaxKind::IS_KW)
8584 }
8585 #[inline]
8586 pub fn json_token(&self) -> Option<SyntaxToken> {
8587 support::token(&self.syntax, SyntaxKind::JSON_KW)
8588 }
8589}
8590
8591#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8592pub struct IsJsonObject {
8593 pub(crate) syntax: SyntaxNode,
8594}
8595impl IsJsonObject {
8596 #[inline]
8597 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
8598 support::child(&self.syntax)
8599 }
8600 #[inline]
8601 pub fn is_token(&self) -> Option<SyntaxToken> {
8602 support::token(&self.syntax, SyntaxKind::IS_KW)
8603 }
8604 #[inline]
8605 pub fn json_token(&self) -> Option<SyntaxToken> {
8606 support::token(&self.syntax, SyntaxKind::JSON_KW)
8607 }
8608 #[inline]
8609 pub fn object_token(&self) -> Option<SyntaxToken> {
8610 support::token(&self.syntax, SyntaxKind::OBJECT_KW)
8611 }
8612}
8613
8614#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8615pub struct IsJsonScalar {
8616 pub(crate) syntax: SyntaxNode,
8617}
8618impl IsJsonScalar {
8619 #[inline]
8620 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
8621 support::child(&self.syntax)
8622 }
8623 #[inline]
8624 pub fn is_token(&self) -> Option<SyntaxToken> {
8625 support::token(&self.syntax, SyntaxKind::IS_KW)
8626 }
8627 #[inline]
8628 pub fn json_token(&self) -> Option<SyntaxToken> {
8629 support::token(&self.syntax, SyntaxKind::JSON_KW)
8630 }
8631 #[inline]
8632 pub fn scalar_token(&self) -> Option<SyntaxToken> {
8633 support::token(&self.syntax, SyntaxKind::SCALAR_KW)
8634 }
8635}
8636
8637#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8638pub struct IsJsonValue {
8639 pub(crate) syntax: SyntaxNode,
8640}
8641impl IsJsonValue {
8642 #[inline]
8643 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
8644 support::child(&self.syntax)
8645 }
8646 #[inline]
8647 pub fn is_token(&self) -> Option<SyntaxToken> {
8648 support::token(&self.syntax, SyntaxKind::IS_KW)
8649 }
8650 #[inline]
8651 pub fn json_token(&self) -> Option<SyntaxToken> {
8652 support::token(&self.syntax, SyntaxKind::JSON_KW)
8653 }
8654 #[inline]
8655 pub fn value_token(&self) -> Option<SyntaxToken> {
8656 support::token(&self.syntax, SyntaxKind::VALUE_KW)
8657 }
8658}
8659
8660#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8661pub struct IsNormalized {
8662 pub(crate) syntax: SyntaxNode,
8663}
8664impl IsNormalized {
8665 #[inline]
8666 pub fn unicode_normal_form(&self) -> Option<UnicodeNormalForm> {
8667 support::child(&self.syntax)
8668 }
8669 #[inline]
8670 pub fn is_token(&self) -> Option<SyntaxToken> {
8671 support::token(&self.syntax, SyntaxKind::IS_KW)
8672 }
8673 #[inline]
8674 pub fn normalized_token(&self) -> Option<SyntaxToken> {
8675 support::token(&self.syntax, SyntaxKind::NORMALIZED_KW)
8676 }
8677}
8678
8679#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8680pub struct IsNot {
8681 pub(crate) syntax: SyntaxNode,
8682}
8683impl IsNot {
8684 #[inline]
8685 pub fn is_token(&self) -> Option<SyntaxToken> {
8686 support::token(&self.syntax, SyntaxKind::IS_KW)
8687 }
8688 #[inline]
8689 pub fn not_token(&self) -> Option<SyntaxToken> {
8690 support::token(&self.syntax, SyntaxKind::NOT_KW)
8691 }
8692}
8693
8694#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8695pub struct IsNotDistinctFrom {
8696 pub(crate) syntax: SyntaxNode,
8697}
8698impl IsNotDistinctFrom {
8699 #[inline]
8700 pub fn distinct_token(&self) -> Option<SyntaxToken> {
8701 support::token(&self.syntax, SyntaxKind::DISTINCT_KW)
8702 }
8703 #[inline]
8704 pub fn from_token(&self) -> Option<SyntaxToken> {
8705 support::token(&self.syntax, SyntaxKind::FROM_KW)
8706 }
8707 #[inline]
8708 pub fn is_token(&self) -> Option<SyntaxToken> {
8709 support::token(&self.syntax, SyntaxKind::IS_KW)
8710 }
8711 #[inline]
8712 pub fn not_token(&self) -> Option<SyntaxToken> {
8713 support::token(&self.syntax, SyntaxKind::NOT_KW)
8714 }
8715}
8716
8717#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8718pub struct IsNotJson {
8719 pub(crate) syntax: SyntaxNode,
8720}
8721impl IsNotJson {
8722 #[inline]
8723 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
8724 support::child(&self.syntax)
8725 }
8726 #[inline]
8727 pub fn is_token(&self) -> Option<SyntaxToken> {
8728 support::token(&self.syntax, SyntaxKind::IS_KW)
8729 }
8730 #[inline]
8731 pub fn json_token(&self) -> Option<SyntaxToken> {
8732 support::token(&self.syntax, SyntaxKind::JSON_KW)
8733 }
8734 #[inline]
8735 pub fn not_token(&self) -> Option<SyntaxToken> {
8736 support::token(&self.syntax, SyntaxKind::NOT_KW)
8737 }
8738}
8739
8740#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8741pub struct IsNotJsonArray {
8742 pub(crate) syntax: SyntaxNode,
8743}
8744impl IsNotJsonArray {
8745 #[inline]
8746 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
8747 support::child(&self.syntax)
8748 }
8749 #[inline]
8750 pub fn array_token(&self) -> Option<SyntaxToken> {
8751 support::token(&self.syntax, SyntaxKind::ARRAY_KW)
8752 }
8753 #[inline]
8754 pub fn is_token(&self) -> Option<SyntaxToken> {
8755 support::token(&self.syntax, SyntaxKind::IS_KW)
8756 }
8757 #[inline]
8758 pub fn json_token(&self) -> Option<SyntaxToken> {
8759 support::token(&self.syntax, SyntaxKind::JSON_KW)
8760 }
8761 #[inline]
8762 pub fn not_token(&self) -> Option<SyntaxToken> {
8763 support::token(&self.syntax, SyntaxKind::NOT_KW)
8764 }
8765}
8766
8767#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8768pub struct IsNotJsonObject {
8769 pub(crate) syntax: SyntaxNode,
8770}
8771impl IsNotJsonObject {
8772 #[inline]
8773 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
8774 support::child(&self.syntax)
8775 }
8776 #[inline]
8777 pub fn is_token(&self) -> Option<SyntaxToken> {
8778 support::token(&self.syntax, SyntaxKind::IS_KW)
8779 }
8780 #[inline]
8781 pub fn json_token(&self) -> Option<SyntaxToken> {
8782 support::token(&self.syntax, SyntaxKind::JSON_KW)
8783 }
8784 #[inline]
8785 pub fn not_token(&self) -> Option<SyntaxToken> {
8786 support::token(&self.syntax, SyntaxKind::NOT_KW)
8787 }
8788 #[inline]
8789 pub fn object_token(&self) -> Option<SyntaxToken> {
8790 support::token(&self.syntax, SyntaxKind::OBJECT_KW)
8791 }
8792}
8793
8794#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8795pub struct IsNotJsonScalar {
8796 pub(crate) syntax: SyntaxNode,
8797}
8798impl IsNotJsonScalar {
8799 #[inline]
8800 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
8801 support::child(&self.syntax)
8802 }
8803 #[inline]
8804 pub fn is_token(&self) -> Option<SyntaxToken> {
8805 support::token(&self.syntax, SyntaxKind::IS_KW)
8806 }
8807 #[inline]
8808 pub fn json_token(&self) -> Option<SyntaxToken> {
8809 support::token(&self.syntax, SyntaxKind::JSON_KW)
8810 }
8811 #[inline]
8812 pub fn not_token(&self) -> Option<SyntaxToken> {
8813 support::token(&self.syntax, SyntaxKind::NOT_KW)
8814 }
8815 #[inline]
8816 pub fn scalar_token(&self) -> Option<SyntaxToken> {
8817 support::token(&self.syntax, SyntaxKind::SCALAR_KW)
8818 }
8819}
8820
8821#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8822pub struct IsNotJsonValue {
8823 pub(crate) syntax: SyntaxNode,
8824}
8825impl IsNotJsonValue {
8826 #[inline]
8827 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
8828 support::child(&self.syntax)
8829 }
8830 #[inline]
8831 pub fn is_token(&self) -> Option<SyntaxToken> {
8832 support::token(&self.syntax, SyntaxKind::IS_KW)
8833 }
8834 #[inline]
8835 pub fn json_token(&self) -> Option<SyntaxToken> {
8836 support::token(&self.syntax, SyntaxKind::JSON_KW)
8837 }
8838 #[inline]
8839 pub fn not_token(&self) -> Option<SyntaxToken> {
8840 support::token(&self.syntax, SyntaxKind::NOT_KW)
8841 }
8842 #[inline]
8843 pub fn value_token(&self) -> Option<SyntaxToken> {
8844 support::token(&self.syntax, SyntaxKind::VALUE_KW)
8845 }
8846}
8847
8848#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8849pub struct IsNotNormalized {
8850 pub(crate) syntax: SyntaxNode,
8851}
8852impl IsNotNormalized {
8853 #[inline]
8854 pub fn unicode_normal_form(&self) -> Option<UnicodeNormalForm> {
8855 support::child(&self.syntax)
8856 }
8857 #[inline]
8858 pub fn is_token(&self) -> Option<SyntaxToken> {
8859 support::token(&self.syntax, SyntaxKind::IS_KW)
8860 }
8861 #[inline]
8862 pub fn normalized_token(&self) -> Option<SyntaxToken> {
8863 support::token(&self.syntax, SyntaxKind::NORMALIZED_KW)
8864 }
8865 #[inline]
8866 pub fn not_token(&self) -> Option<SyntaxToken> {
8867 support::token(&self.syntax, SyntaxKind::NOT_KW)
8868 }
8869}
8870
8871#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8872pub struct Join {
8873 pub(crate) syntax: SyntaxNode,
8874}
8875impl Join {
8876 #[inline]
8877 pub fn from_item(&self) -> Option<FromItem> {
8878 support::child(&self.syntax)
8879 }
8880 #[inline]
8881 pub fn join_type(&self) -> Option<JoinType> {
8882 support::child(&self.syntax)
8883 }
8884 #[inline]
8885 pub fn on_clause(&self) -> Option<OnClause> {
8886 support::child(&self.syntax)
8887 }
8888 #[inline]
8889 pub fn using_clause(&self) -> Option<JoinUsingClause> {
8890 support::child(&self.syntax)
8891 }
8892 #[inline]
8893 pub fn natural_token(&self) -> Option<SyntaxToken> {
8894 support::token(&self.syntax, SyntaxKind::NATURAL_KW)
8895 }
8896}
8897
8898#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8899pub struct JoinCross {
8900 pub(crate) syntax: SyntaxNode,
8901}
8902impl JoinCross {
8903 #[inline]
8904 pub fn cross_token(&self) -> Option<SyntaxToken> {
8905 support::token(&self.syntax, SyntaxKind::CROSS_KW)
8906 }
8907 #[inline]
8908 pub fn join_token(&self) -> Option<SyntaxToken> {
8909 support::token(&self.syntax, SyntaxKind::JOIN_KW)
8910 }
8911}
8912
8913#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8914pub struct JoinExpr {
8915 pub(crate) syntax: SyntaxNode,
8916}
8917impl JoinExpr {
8918 #[inline]
8919 pub fn from_item(&self) -> Option<FromItem> {
8920 support::child(&self.syntax)
8921 }
8922 #[inline]
8923 pub fn join(&self) -> Option<Join> {
8924 support::child(&self.syntax)
8925 }
8926 #[inline]
8927 pub fn join_expr(&self) -> Option<JoinExpr> {
8928 support::child(&self.syntax)
8929 }
8930}
8931
8932#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8933pub struct JoinFull {
8934 pub(crate) syntax: SyntaxNode,
8935}
8936impl JoinFull {
8937 #[inline]
8938 pub fn full_token(&self) -> Option<SyntaxToken> {
8939 support::token(&self.syntax, SyntaxKind::FULL_KW)
8940 }
8941 #[inline]
8942 pub fn join_token(&self) -> Option<SyntaxToken> {
8943 support::token(&self.syntax, SyntaxKind::JOIN_KW)
8944 }
8945 #[inline]
8946 pub fn outer_token(&self) -> Option<SyntaxToken> {
8947 support::token(&self.syntax, SyntaxKind::OUTER_KW)
8948 }
8949}
8950
8951#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8952pub struct JoinInner {
8953 pub(crate) syntax: SyntaxNode,
8954}
8955impl JoinInner {
8956 #[inline]
8957 pub fn inner_token(&self) -> Option<SyntaxToken> {
8958 support::token(&self.syntax, SyntaxKind::INNER_KW)
8959 }
8960 #[inline]
8961 pub fn join_token(&self) -> Option<SyntaxToken> {
8962 support::token(&self.syntax, SyntaxKind::JOIN_KW)
8963 }
8964}
8965
8966#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8967pub struct JoinLeft {
8968 pub(crate) syntax: SyntaxNode,
8969}
8970impl JoinLeft {
8971 #[inline]
8972 pub fn join_token(&self) -> Option<SyntaxToken> {
8973 support::token(&self.syntax, SyntaxKind::JOIN_KW)
8974 }
8975 #[inline]
8976 pub fn left_token(&self) -> Option<SyntaxToken> {
8977 support::token(&self.syntax, SyntaxKind::LEFT_KW)
8978 }
8979 #[inline]
8980 pub fn outer_token(&self) -> Option<SyntaxToken> {
8981 support::token(&self.syntax, SyntaxKind::OUTER_KW)
8982 }
8983}
8984
8985#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8986pub struct JoinRight {
8987 pub(crate) syntax: SyntaxNode,
8988}
8989impl JoinRight {
8990 #[inline]
8991 pub fn join_token(&self) -> Option<SyntaxToken> {
8992 support::token(&self.syntax, SyntaxKind::JOIN_KW)
8993 }
8994 #[inline]
8995 pub fn outer_token(&self) -> Option<SyntaxToken> {
8996 support::token(&self.syntax, SyntaxKind::OUTER_KW)
8997 }
8998 #[inline]
8999 pub fn right_token(&self) -> Option<SyntaxToken> {
9000 support::token(&self.syntax, SyntaxKind::RIGHT_KW)
9001 }
9002}
9003
9004#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9005pub struct JoinUsingClause {
9006 pub(crate) syntax: SyntaxNode,
9007}
9008impl JoinUsingClause {
9009 #[inline]
9010 pub fn alias(&self) -> Option<Alias> {
9011 support::child(&self.syntax)
9012 }
9013 #[inline]
9014 pub fn column_list(&self) -> Option<ColumnList> {
9015 support::child(&self.syntax)
9016 }
9017 #[inline]
9018 pub fn using_token(&self) -> Option<SyntaxToken> {
9019 support::token(&self.syntax, SyntaxKind::USING_KW)
9020 }
9021}
9022
9023#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9024pub struct JsonArrayAggFn {
9025 pub(crate) syntax: SyntaxNode,
9026}
9027impl JsonArrayAggFn {
9028 #[inline]
9029 pub fn expr(&self) -> Option<Expr> {
9030 support::child(&self.syntax)
9031 }
9032 #[inline]
9033 pub fn json_null_clause(&self) -> Option<JsonNullClause> {
9034 support::child(&self.syntax)
9035 }
9036 #[inline]
9037 pub fn json_returning_clause(&self) -> Option<JsonReturningClause> {
9038 support::child(&self.syntax)
9039 }
9040 #[inline]
9041 pub fn json_select_formats(&self) -> AstChildren<JsonSelectFormat> {
9042 support::children(&self.syntax)
9043 }
9044 #[inline]
9045 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
9046 support::token(&self.syntax, SyntaxKind::L_PAREN)
9047 }
9048 #[inline]
9049 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
9050 support::token(&self.syntax, SyntaxKind::R_PAREN)
9051 }
9052 #[inline]
9053 pub fn json_arrayagg_token(&self) -> Option<SyntaxToken> {
9054 support::token(&self.syntax, SyntaxKind::JSON_ARRAYAGG_KW)
9055 }
9056}
9057
9058#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9059pub struct JsonArrayFn {
9060 pub(crate) syntax: SyntaxNode,
9061}
9062impl JsonArrayFn {
9063 #[inline]
9064 pub fn json_expr_formats(&self) -> AstChildren<JsonExprFormat> {
9065 support::children(&self.syntax)
9066 }
9067 #[inline]
9068 pub fn json_null_clause(&self) -> Option<JsonNullClause> {
9069 support::child(&self.syntax)
9070 }
9071 #[inline]
9072 pub fn json_returning_clause(&self) -> Option<JsonReturningClause> {
9073 support::child(&self.syntax)
9074 }
9075 #[inline]
9076 pub fn json_select_formats(&self) -> AstChildren<JsonSelectFormat> {
9077 support::children(&self.syntax)
9078 }
9079 #[inline]
9080 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
9081 support::token(&self.syntax, SyntaxKind::L_PAREN)
9082 }
9083 #[inline]
9084 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
9085 support::token(&self.syntax, SyntaxKind::R_PAREN)
9086 }
9087 #[inline]
9088 pub fn json_array_token(&self) -> Option<SyntaxToken> {
9089 support::token(&self.syntax, SyntaxKind::JSON_ARRAY_KW)
9090 }
9091}
9092
9093#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9094pub struct JsonBehaviorClause {
9095 pub(crate) syntax: SyntaxNode,
9096}
9097impl JsonBehaviorClause {
9098 #[inline]
9099 pub fn json_behavior(&self) -> Option<JsonBehavior> {
9100 support::child(&self.syntax)
9101 }
9102}
9103
9104#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9105pub struct JsonBehaviorDefault {
9106 pub(crate) syntax: SyntaxNode,
9107}
9108impl JsonBehaviorDefault {
9109 #[inline]
9110 pub fn expr(&self) -> Option<Expr> {
9111 support::child(&self.syntax)
9112 }
9113 #[inline]
9114 pub fn default_token(&self) -> Option<SyntaxToken> {
9115 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
9116 }
9117}
9118
9119#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9120pub struct JsonBehaviorEmptyArray {
9121 pub(crate) syntax: SyntaxNode,
9122}
9123impl JsonBehaviorEmptyArray {
9124 #[inline]
9125 pub fn array_token(&self) -> Option<SyntaxToken> {
9126 support::token(&self.syntax, SyntaxKind::ARRAY_KW)
9127 }
9128 #[inline]
9129 pub fn empty_token(&self) -> Option<SyntaxToken> {
9130 support::token(&self.syntax, SyntaxKind::EMPTY_KW)
9131 }
9132}
9133
9134#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9135pub struct JsonBehaviorEmptyObject {
9136 pub(crate) syntax: SyntaxNode,
9137}
9138impl JsonBehaviorEmptyObject {
9139 #[inline]
9140 pub fn empty_token(&self) -> Option<SyntaxToken> {
9141 support::token(&self.syntax, SyntaxKind::EMPTY_KW)
9142 }
9143 #[inline]
9144 pub fn object_token(&self) -> Option<SyntaxToken> {
9145 support::token(&self.syntax, SyntaxKind::OBJECT_KW)
9146 }
9147}
9148
9149#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9150pub struct JsonBehaviorError {
9151 pub(crate) syntax: SyntaxNode,
9152}
9153impl JsonBehaviorError {
9154 #[inline]
9155 pub fn error_token(&self) -> Option<SyntaxToken> {
9156 support::token(&self.syntax, SyntaxKind::ERROR_KW)
9157 }
9158}
9159
9160#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9161pub struct JsonBehaviorFalse {
9162 pub(crate) syntax: SyntaxNode,
9163}
9164impl JsonBehaviorFalse {
9165 #[inline]
9166 pub fn false_token(&self) -> Option<SyntaxToken> {
9167 support::token(&self.syntax, SyntaxKind::FALSE_KW)
9168 }
9169}
9170
9171#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9172pub struct JsonBehaviorNull {
9173 pub(crate) syntax: SyntaxNode,
9174}
9175impl JsonBehaviorNull {
9176 #[inline]
9177 pub fn null_token(&self) -> Option<SyntaxToken> {
9178 support::token(&self.syntax, SyntaxKind::NULL_KW)
9179 }
9180}
9181
9182#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9183pub struct JsonBehaviorTrue {
9184 pub(crate) syntax: SyntaxNode,
9185}
9186impl JsonBehaviorTrue {
9187 #[inline]
9188 pub fn true_token(&self) -> Option<SyntaxToken> {
9189 support::token(&self.syntax, SyntaxKind::TRUE_KW)
9190 }
9191}
9192
9193#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9194pub struct JsonBehaviorUnknown {
9195 pub(crate) syntax: SyntaxNode,
9196}
9197impl JsonBehaviorUnknown {
9198 #[inline]
9199 pub fn unknown_token(&self) -> Option<SyntaxToken> {
9200 support::token(&self.syntax, SyntaxKind::UNKNOWN_KW)
9201 }
9202}
9203
9204#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9205pub struct JsonEncodingClause {
9206 pub(crate) syntax: SyntaxNode,
9207}
9208impl JsonEncodingClause {
9209 #[inline]
9210 pub fn name_ref(&self) -> Option<NameRef> {
9211 support::child(&self.syntax)
9212 }
9213 #[inline]
9214 pub fn encoding_token(&self) -> Option<SyntaxToken> {
9215 support::token(&self.syntax, SyntaxKind::ENCODING_KW)
9216 }
9217}
9218
9219#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9220pub struct JsonExistsFn {
9221 pub(crate) syntax: SyntaxNode,
9222}
9223impl JsonExistsFn {
9224 #[inline]
9225 pub fn expr(&self) -> Option<Expr> {
9226 support::child(&self.syntax)
9227 }
9228 #[inline]
9229 pub fn json_format_clause(&self) -> Option<JsonFormatClause> {
9230 support::child(&self.syntax)
9231 }
9232 #[inline]
9233 pub fn json_on_error_clause(&self) -> Option<JsonOnErrorClause> {
9234 support::child(&self.syntax)
9235 }
9236 #[inline]
9237 pub fn json_passing_clause(&self) -> Option<JsonPassingClause> {
9238 support::child(&self.syntax)
9239 }
9240 #[inline]
9241 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
9242 support::token(&self.syntax, SyntaxKind::L_PAREN)
9243 }
9244 #[inline]
9245 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
9246 support::token(&self.syntax, SyntaxKind::R_PAREN)
9247 }
9248 #[inline]
9249 pub fn comma_token(&self) -> Option<SyntaxToken> {
9250 support::token(&self.syntax, SyntaxKind::COMMA)
9251 }
9252 #[inline]
9253 pub fn json_exists_token(&self) -> Option<SyntaxToken> {
9254 support::token(&self.syntax, SyntaxKind::JSON_EXISTS_KW)
9255 }
9256}
9257
9258#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9259pub struct JsonExprFormat {
9260 pub(crate) syntax: SyntaxNode,
9261}
9262impl JsonExprFormat {
9263 #[inline]
9264 pub fn expr(&self) -> Option<Expr> {
9265 support::child(&self.syntax)
9266 }
9267 #[inline]
9268 pub fn json_format_clause(&self) -> Option<JsonFormatClause> {
9269 support::child(&self.syntax)
9270 }
9271}
9272
9273#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9274pub struct JsonFn {
9275 pub(crate) syntax: SyntaxNode,
9276}
9277impl JsonFn {
9278 #[inline]
9279 pub fn json_expr_format(&self) -> Option<JsonExprFormat> {
9280 support::child(&self.syntax)
9281 }
9282 #[inline]
9283 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
9284 support::child(&self.syntax)
9285 }
9286 #[inline]
9287 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
9288 support::token(&self.syntax, SyntaxKind::L_PAREN)
9289 }
9290 #[inline]
9291 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
9292 support::token(&self.syntax, SyntaxKind::R_PAREN)
9293 }
9294 #[inline]
9295 pub fn json_token(&self) -> Option<SyntaxToken> {
9296 support::token(&self.syntax, SyntaxKind::JSON_KW)
9297 }
9298}
9299
9300#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9301pub struct JsonFormatClause {
9302 pub(crate) syntax: SyntaxNode,
9303}
9304impl JsonFormatClause {
9305 #[inline]
9306 pub fn json_encoding_clause(&self) -> Option<JsonEncodingClause> {
9307 support::child(&self.syntax)
9308 }
9309 #[inline]
9310 pub fn format_token(&self) -> Option<SyntaxToken> {
9311 support::token(&self.syntax, SyntaxKind::FORMAT_KW)
9312 }
9313 #[inline]
9314 pub fn json_token(&self) -> Option<SyntaxToken> {
9315 support::token(&self.syntax, SyntaxKind::JSON_KW)
9316 }
9317}
9318
9319#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9320pub struct JsonKeyValue {
9321 pub(crate) syntax: SyntaxNode,
9322}
9323impl JsonKeyValue {
9324 #[inline]
9325 pub fn expr(&self) -> Option<Expr> {
9326 support::child(&self.syntax)
9327 }
9328 #[inline]
9329 pub fn json_value_expr(&self) -> Option<JsonValueExpr> {
9330 support::child(&self.syntax)
9331 }
9332 #[inline]
9333 pub fn colon_token(&self) -> Option<SyntaxToken> {
9334 support::token(&self.syntax, SyntaxKind::COLON)
9335 }
9336}
9337
9338#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9339pub struct JsonKeysUniqueClause {
9340 pub(crate) syntax: SyntaxNode,
9341}
9342impl JsonKeysUniqueClause {
9343 #[inline]
9344 pub fn keys_token(&self) -> Option<SyntaxToken> {
9345 support::token(&self.syntax, SyntaxKind::KEYS_KW)
9346 }
9347 #[inline]
9348 pub fn unique_token(&self) -> Option<SyntaxToken> {
9349 support::token(&self.syntax, SyntaxKind::UNIQUE_KW)
9350 }
9351 #[inline]
9352 pub fn with_token(&self) -> Option<SyntaxToken> {
9353 support::token(&self.syntax, SyntaxKind::WITH_KW)
9354 }
9355 #[inline]
9356 pub fn without_token(&self) -> Option<SyntaxToken> {
9357 support::token(&self.syntax, SyntaxKind::WITHOUT_KW)
9358 }
9359}
9360
9361#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9362pub struct JsonNullClause {
9363 pub(crate) syntax: SyntaxNode,
9364}
9365impl JsonNullClause {
9366 #[inline]
9367 pub fn absent_token(&self) -> Option<SyntaxToken> {
9368 support::token(&self.syntax, SyntaxKind::ABSENT_KW)
9369 }
9370 #[inline]
9371 pub fn null_token(&self) -> Option<SyntaxToken> {
9372 support::token(&self.syntax, SyntaxKind::NULL_KW)
9373 }
9374 #[inline]
9375 pub fn on_token(&self) -> Option<SyntaxToken> {
9376 support::token(&self.syntax, SyntaxKind::ON_KW)
9377 }
9378}
9379
9380#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9381pub struct JsonObjectAggFn {
9382 pub(crate) syntax: SyntaxNode,
9383}
9384impl JsonObjectAggFn {
9385 #[inline]
9386 pub fn json_key_value(&self) -> Option<JsonKeyValue> {
9387 support::child(&self.syntax)
9388 }
9389 #[inline]
9390 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
9391 support::child(&self.syntax)
9392 }
9393 #[inline]
9394 pub fn json_null_clause(&self) -> Option<JsonNullClause> {
9395 support::child(&self.syntax)
9396 }
9397 #[inline]
9398 pub fn json_returning_clause(&self) -> Option<JsonReturningClause> {
9399 support::child(&self.syntax)
9400 }
9401 #[inline]
9402 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
9403 support::token(&self.syntax, SyntaxKind::L_PAREN)
9404 }
9405 #[inline]
9406 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
9407 support::token(&self.syntax, SyntaxKind::R_PAREN)
9408 }
9409 #[inline]
9410 pub fn json_objectagg_token(&self) -> Option<SyntaxToken> {
9411 support::token(&self.syntax, SyntaxKind::JSON_OBJECTAGG_KW)
9412 }
9413}
9414
9415#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9416pub struct JsonObjectFn {
9417 pub(crate) syntax: SyntaxNode,
9418}
9419impl JsonObjectFn {
9420 #[inline]
9421 pub fn json_key_values(&self) -> AstChildren<JsonKeyValue> {
9422 support::children(&self.syntax)
9423 }
9424 #[inline]
9425 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
9426 support::child(&self.syntax)
9427 }
9428 #[inline]
9429 pub fn json_null_clause(&self) -> Option<JsonNullClause> {
9430 support::child(&self.syntax)
9431 }
9432 #[inline]
9433 pub fn json_returning_clause(&self) -> Option<JsonReturningClause> {
9434 support::child(&self.syntax)
9435 }
9436 #[inline]
9437 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
9438 support::token(&self.syntax, SyntaxKind::L_PAREN)
9439 }
9440 #[inline]
9441 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
9442 support::token(&self.syntax, SyntaxKind::R_PAREN)
9443 }
9444 #[inline]
9445 pub fn json_object_token(&self) -> Option<SyntaxToken> {
9446 support::token(&self.syntax, SyntaxKind::JSON_OBJECT_KW)
9447 }
9448}
9449
9450#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9451pub struct JsonOnEmptyClause {
9452 pub(crate) syntax: SyntaxNode,
9453}
9454impl JsonOnEmptyClause {
9455 #[inline]
9456 pub fn json_behavior(&self) -> Option<JsonBehavior> {
9457 support::child(&self.syntax)
9458 }
9459 #[inline]
9460 pub fn empty_token(&self) -> Option<SyntaxToken> {
9461 support::token(&self.syntax, SyntaxKind::EMPTY_KW)
9462 }
9463 #[inline]
9464 pub fn on_token(&self) -> Option<SyntaxToken> {
9465 support::token(&self.syntax, SyntaxKind::ON_KW)
9466 }
9467}
9468
9469#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9470pub struct JsonOnErrorClause {
9471 pub(crate) syntax: SyntaxNode,
9472}
9473impl JsonOnErrorClause {
9474 #[inline]
9475 pub fn json_behavior(&self) -> Option<JsonBehavior> {
9476 support::child(&self.syntax)
9477 }
9478 #[inline]
9479 pub fn error_token(&self) -> Option<SyntaxToken> {
9480 support::token(&self.syntax, SyntaxKind::ERROR_KW)
9481 }
9482 #[inline]
9483 pub fn on_token(&self) -> Option<SyntaxToken> {
9484 support::token(&self.syntax, SyntaxKind::ON_KW)
9485 }
9486}
9487
9488#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9489pub struct JsonPassingArg {
9490 pub(crate) syntax: SyntaxNode,
9491}
9492impl JsonPassingArg {
9493 #[inline]
9494 pub fn expr(&self) -> Option<Expr> {
9495 support::child(&self.syntax)
9496 }
9497}
9498
9499#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9500pub struct JsonPassingClause {
9501 pub(crate) syntax: SyntaxNode,
9502}
9503impl JsonPassingClause {
9504 #[inline]
9505 pub fn json_passing_args(&self) -> AstChildren<JsonPassingArg> {
9506 support::children(&self.syntax)
9507 }
9508 #[inline]
9509 pub fn passing_token(&self) -> Option<SyntaxToken> {
9510 support::token(&self.syntax, SyntaxKind::PASSING_KW)
9511 }
9512}
9513
9514#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9515pub struct JsonPathClause {
9516 pub(crate) syntax: SyntaxNode,
9517}
9518impl JsonPathClause {
9519 #[inline]
9520 pub fn expr(&self) -> Option<Expr> {
9521 support::child(&self.syntax)
9522 }
9523 #[inline]
9524 pub fn path_token(&self) -> Option<SyntaxToken> {
9525 support::token(&self.syntax, SyntaxKind::PATH_KW)
9526 }
9527}
9528
9529#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9530pub struct JsonQueryFn {
9531 pub(crate) syntax: SyntaxNode,
9532}
9533impl JsonQueryFn {
9534 #[inline]
9535 pub fn expr(&self) -> Option<Expr> {
9536 support::child(&self.syntax)
9537 }
9538 #[inline]
9539 pub fn json_behavior_clause(&self) -> Option<JsonBehaviorClause> {
9540 support::child(&self.syntax)
9541 }
9542 #[inline]
9543 pub fn json_format_clause(&self) -> Option<JsonFormatClause> {
9544 support::child(&self.syntax)
9545 }
9546 #[inline]
9547 pub fn json_passing_clause(&self) -> Option<JsonPassingClause> {
9548 support::child(&self.syntax)
9549 }
9550 #[inline]
9551 pub fn json_quotes_clause(&self) -> Option<JsonQuotesClause> {
9552 support::child(&self.syntax)
9553 }
9554 #[inline]
9555 pub fn json_returning_clause(&self) -> Option<JsonReturningClause> {
9556 support::child(&self.syntax)
9557 }
9558 #[inline]
9559 pub fn json_wrapper_behavior_clause(&self) -> Option<JsonWrapperBehaviorClause> {
9560 support::child(&self.syntax)
9561 }
9562 #[inline]
9563 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
9564 support::token(&self.syntax, SyntaxKind::L_PAREN)
9565 }
9566 #[inline]
9567 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
9568 support::token(&self.syntax, SyntaxKind::R_PAREN)
9569 }
9570 #[inline]
9571 pub fn comma_token(&self) -> Option<SyntaxToken> {
9572 support::token(&self.syntax, SyntaxKind::COMMA)
9573 }
9574 #[inline]
9575 pub fn json_query_token(&self) -> Option<SyntaxToken> {
9576 support::token(&self.syntax, SyntaxKind::JSON_QUERY_KW)
9577 }
9578}
9579
9580#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9581pub struct JsonQuotesClause {
9582 pub(crate) syntax: SyntaxNode,
9583}
9584impl JsonQuotesClause {
9585 #[inline]
9586 pub fn keep_token(&self) -> Option<SyntaxToken> {
9587 support::token(&self.syntax, SyntaxKind::KEEP_KW)
9588 }
9589 #[inline]
9590 pub fn omit_token(&self) -> Option<SyntaxToken> {
9591 support::token(&self.syntax, SyntaxKind::OMIT_KW)
9592 }
9593 #[inline]
9594 pub fn quotes_token(&self) -> Option<SyntaxToken> {
9595 support::token(&self.syntax, SyntaxKind::QUOTES_KW)
9596 }
9597}
9598
9599#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9600pub struct JsonReturningClause {
9601 pub(crate) syntax: SyntaxNode,
9602}
9603impl JsonReturningClause {
9604 #[inline]
9605 pub fn ty(&self) -> Option<Type> {
9606 support::child(&self.syntax)
9607 }
9608 #[inline]
9609 pub fn returning_token(&self) -> Option<SyntaxToken> {
9610 support::token(&self.syntax, SyntaxKind::RETURNING_KW)
9611 }
9612}
9613
9614#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9615pub struct JsonScalarFn {
9616 pub(crate) syntax: SyntaxNode,
9617}
9618impl JsonScalarFn {
9619 #[inline]
9620 pub fn expr(&self) -> Option<Expr> {
9621 support::child(&self.syntax)
9622 }
9623 #[inline]
9624 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
9625 support::token(&self.syntax, SyntaxKind::L_PAREN)
9626 }
9627 #[inline]
9628 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
9629 support::token(&self.syntax, SyntaxKind::R_PAREN)
9630 }
9631 #[inline]
9632 pub fn json_scalar_token(&self) -> Option<SyntaxToken> {
9633 support::token(&self.syntax, SyntaxKind::JSON_SCALAR_KW)
9634 }
9635}
9636
9637#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9638pub struct JsonSelectFormat {
9639 pub(crate) syntax: SyntaxNode,
9640}
9641impl JsonSelectFormat {
9642 #[inline]
9643 pub fn json_format_clause(&self) -> Option<JsonFormatClause> {
9644 support::child(&self.syntax)
9645 }
9646 #[inline]
9647 pub fn select_variant(&self) -> Option<SelectVariant> {
9648 support::child(&self.syntax)
9649 }
9650}
9651
9652#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9653pub struct JsonSerializeFn {
9654 pub(crate) syntax: SyntaxNode,
9655}
9656impl JsonSerializeFn {
9657 #[inline]
9658 pub fn expr(&self) -> Option<Expr> {
9659 support::child(&self.syntax)
9660 }
9661 #[inline]
9662 pub fn json_format_clause(&self) -> Option<JsonFormatClause> {
9663 support::child(&self.syntax)
9664 }
9665 #[inline]
9666 pub fn json_returning_clause(&self) -> Option<JsonReturningClause> {
9667 support::child(&self.syntax)
9668 }
9669 #[inline]
9670 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
9671 support::token(&self.syntax, SyntaxKind::L_PAREN)
9672 }
9673 #[inline]
9674 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
9675 support::token(&self.syntax, SyntaxKind::R_PAREN)
9676 }
9677 #[inline]
9678 pub fn json_serialize_token(&self) -> Option<SyntaxToken> {
9679 support::token(&self.syntax, SyntaxKind::JSON_SERIALIZE_KW)
9680 }
9681}
9682
9683#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9684pub struct JsonTable {
9685 pub(crate) syntax: SyntaxNode,
9686}
9687impl JsonTable {
9688 #[inline]
9689 pub fn expr(&self) -> Option<Expr> {
9690 support::child(&self.syntax)
9691 }
9692 #[inline]
9693 pub fn json_format_clause(&self) -> Option<JsonFormatClause> {
9694 support::child(&self.syntax)
9695 }
9696 #[inline]
9697 pub fn json_on_error_clause(&self) -> Option<JsonOnErrorClause> {
9698 support::child(&self.syntax)
9699 }
9700 #[inline]
9701 pub fn json_passing_clause(&self) -> Option<JsonPassingClause> {
9702 support::child(&self.syntax)
9703 }
9704 #[inline]
9705 pub fn json_table_column_list(&self) -> Option<JsonTableColumnList> {
9706 support::child(&self.syntax)
9707 }
9708 #[inline]
9709 pub fn name(&self) -> Option<Name> {
9710 support::child(&self.syntax)
9711 }
9712 #[inline]
9713 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
9714 support::token(&self.syntax, SyntaxKind::L_PAREN)
9715 }
9716 #[inline]
9717 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
9718 support::token(&self.syntax, SyntaxKind::R_PAREN)
9719 }
9720 #[inline]
9721 pub fn comma_token(&self) -> Option<SyntaxToken> {
9722 support::token(&self.syntax, SyntaxKind::COMMA)
9723 }
9724 #[inline]
9725 pub fn as_token(&self) -> Option<SyntaxToken> {
9726 support::token(&self.syntax, SyntaxKind::AS_KW)
9727 }
9728 #[inline]
9729 pub fn json_table_token(&self) -> Option<SyntaxToken> {
9730 support::token(&self.syntax, SyntaxKind::JSON_TABLE_KW)
9731 }
9732}
9733
9734#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9735pub struct JsonTableColumn {
9736 pub(crate) syntax: SyntaxNode,
9737}
9738impl JsonTableColumn {
9739 #[inline]
9740 pub fn expr(&self) -> Option<Expr> {
9741 support::child(&self.syntax)
9742 }
9743 #[inline]
9744 pub fn json_format_clause(&self) -> Option<JsonFormatClause> {
9745 support::child(&self.syntax)
9746 }
9747 #[inline]
9748 pub fn json_on_empty_clause(&self) -> Option<JsonOnEmptyClause> {
9749 support::child(&self.syntax)
9750 }
9751 #[inline]
9752 pub fn json_on_error_clause(&self) -> Option<JsonOnErrorClause> {
9753 support::child(&self.syntax)
9754 }
9755 #[inline]
9756 pub fn json_path_clause(&self) -> Option<JsonPathClause> {
9757 support::child(&self.syntax)
9758 }
9759 #[inline]
9760 pub fn json_quotes_clause(&self) -> Option<JsonQuotesClause> {
9761 support::child(&self.syntax)
9762 }
9763 #[inline]
9764 pub fn json_table_column_list(&self) -> Option<JsonTableColumnList> {
9765 support::child(&self.syntax)
9766 }
9767 #[inline]
9768 pub fn json_wrapper_behavior_clause(&self) -> Option<JsonWrapperBehaviorClause> {
9769 support::child(&self.syntax)
9770 }
9771 #[inline]
9772 pub fn name(&self) -> Option<Name> {
9773 support::child(&self.syntax)
9774 }
9775 #[inline]
9776 pub fn ty(&self) -> Option<Type> {
9777 support::child(&self.syntax)
9778 }
9779 #[inline]
9780 pub fn as_token(&self) -> Option<SyntaxToken> {
9781 support::token(&self.syntax, SyntaxKind::AS_KW)
9782 }
9783 #[inline]
9784 pub fn exists_token(&self) -> Option<SyntaxToken> {
9785 support::token(&self.syntax, SyntaxKind::EXISTS_KW)
9786 }
9787 #[inline]
9788 pub fn for_token(&self) -> Option<SyntaxToken> {
9789 support::token(&self.syntax, SyntaxKind::FOR_KW)
9790 }
9791 #[inline]
9792 pub fn nested_token(&self) -> Option<SyntaxToken> {
9793 support::token(&self.syntax, SyntaxKind::NESTED_KW)
9794 }
9795 #[inline]
9796 pub fn ordinality_token(&self) -> Option<SyntaxToken> {
9797 support::token(&self.syntax, SyntaxKind::ORDINALITY_KW)
9798 }
9799 #[inline]
9800 pub fn path_token(&self) -> Option<SyntaxToken> {
9801 support::token(&self.syntax, SyntaxKind::PATH_KW)
9802 }
9803}
9804
9805#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9806pub struct JsonTableColumnList {
9807 pub(crate) syntax: SyntaxNode,
9808}
9809impl JsonTableColumnList {
9810 #[inline]
9811 pub fn json_table_columns(&self) -> AstChildren<JsonTableColumn> {
9812 support::children(&self.syntax)
9813 }
9814 #[inline]
9815 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
9816 support::token(&self.syntax, SyntaxKind::L_PAREN)
9817 }
9818 #[inline]
9819 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
9820 support::token(&self.syntax, SyntaxKind::R_PAREN)
9821 }
9822 #[inline]
9823 pub fn columns_token(&self) -> Option<SyntaxToken> {
9824 support::token(&self.syntax, SyntaxKind::COLUMNS_KW)
9825 }
9826}
9827
9828#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9829pub struct JsonValueExpr {
9830 pub(crate) syntax: SyntaxNode,
9831}
9832impl JsonValueExpr {
9833 #[inline]
9834 pub fn expr(&self) -> Option<Expr> {
9835 support::child(&self.syntax)
9836 }
9837 #[inline]
9838 pub fn json_format_clause(&self) -> Option<JsonFormatClause> {
9839 support::child(&self.syntax)
9840 }
9841}
9842
9843#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9844pub struct JsonValueFn {
9845 pub(crate) syntax: SyntaxNode,
9846}
9847impl JsonValueFn {
9848 #[inline]
9849 pub fn expr(&self) -> Option<Expr> {
9850 support::child(&self.syntax)
9851 }
9852 #[inline]
9853 pub fn json_behavior_clause(&self) -> Option<JsonBehaviorClause> {
9854 support::child(&self.syntax)
9855 }
9856 #[inline]
9857 pub fn json_format_clause(&self) -> Option<JsonFormatClause> {
9858 support::child(&self.syntax)
9859 }
9860 #[inline]
9861 pub fn json_passing_clause(&self) -> Option<JsonPassingClause> {
9862 support::child(&self.syntax)
9863 }
9864 #[inline]
9865 pub fn json_returning_clause(&self) -> Option<JsonReturningClause> {
9866 support::child(&self.syntax)
9867 }
9868 #[inline]
9869 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
9870 support::token(&self.syntax, SyntaxKind::L_PAREN)
9871 }
9872 #[inline]
9873 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
9874 support::token(&self.syntax, SyntaxKind::R_PAREN)
9875 }
9876 #[inline]
9877 pub fn comma_token(&self) -> Option<SyntaxToken> {
9878 support::token(&self.syntax, SyntaxKind::COMMA)
9879 }
9880 #[inline]
9881 pub fn json_value_token(&self) -> Option<SyntaxToken> {
9882 support::token(&self.syntax, SyntaxKind::JSON_VALUE_KW)
9883 }
9884}
9885
9886#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9887pub struct JsonWrapperBehaviorClause {
9888 pub(crate) syntax: SyntaxNode,
9889}
9890impl JsonWrapperBehaviorClause {
9891 #[inline]
9892 pub fn array_token(&self) -> Option<SyntaxToken> {
9893 support::token(&self.syntax, SyntaxKind::ARRAY_KW)
9894 }
9895 #[inline]
9896 pub fn conditional_token(&self) -> Option<SyntaxToken> {
9897 support::token(&self.syntax, SyntaxKind::CONDITIONAL_KW)
9898 }
9899 #[inline]
9900 pub fn unconditional_token(&self) -> Option<SyntaxToken> {
9901 support::token(&self.syntax, SyntaxKind::UNCONDITIONAL_KW)
9902 }
9903 #[inline]
9904 pub fn with_token(&self) -> Option<SyntaxToken> {
9905 support::token(&self.syntax, SyntaxKind::WITH_KW)
9906 }
9907 #[inline]
9908 pub fn without_token(&self) -> Option<SyntaxToken> {
9909 support::token(&self.syntax, SyntaxKind::WITHOUT_KW)
9910 }
9911 #[inline]
9912 pub fn wrapper_token(&self) -> Option<SyntaxToken> {
9913 support::token(&self.syntax, SyntaxKind::WRAPPER_KW)
9914 }
9915}
9916
9917#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9918pub struct LanguageFuncOption {
9919 pub(crate) syntax: SyntaxNode,
9920}
9921impl LanguageFuncOption {
9922 #[inline]
9923 pub fn name_ref(&self) -> Option<NameRef> {
9924 support::child(&self.syntax)
9925 }
9926 #[inline]
9927 pub fn language_token(&self) -> Option<SyntaxToken> {
9928 support::token(&self.syntax, SyntaxKind::LANGUAGE_KW)
9929 }
9930}
9931
9932#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9933pub struct LeakproofFuncOption {
9934 pub(crate) syntax: SyntaxNode,
9935}
9936impl LeakproofFuncOption {
9937 #[inline]
9938 pub fn leakproof_token(&self) -> Option<SyntaxToken> {
9939 support::token(&self.syntax, SyntaxKind::LEAKPROOF_KW)
9940 }
9941 #[inline]
9942 pub fn not_token(&self) -> Option<SyntaxToken> {
9943 support::token(&self.syntax, SyntaxKind::NOT_KW)
9944 }
9945}
9946
9947#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9948pub struct LikeClause {
9949 pub(crate) syntax: SyntaxNode,
9950}
9951impl LikeClause {
9952 #[inline]
9953 pub fn like_options(&self) -> AstChildren<LikeOption> {
9954 support::children(&self.syntax)
9955 }
9956 #[inline]
9957 pub fn path(&self) -> Option<Path> {
9958 support::child(&self.syntax)
9959 }
9960 #[inline]
9961 pub fn like_token(&self) -> Option<SyntaxToken> {
9962 support::token(&self.syntax, SyntaxKind::LIKE_KW)
9963 }
9964}
9965
9966#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9967pub struct LikeOption {
9968 pub(crate) syntax: SyntaxNode,
9969}
9970impl LikeOption {
9971 #[inline]
9972 pub fn all_token(&self) -> Option<SyntaxToken> {
9973 support::token(&self.syntax, SyntaxKind::ALL_KW)
9974 }
9975 #[inline]
9976 pub fn comments_token(&self) -> Option<SyntaxToken> {
9977 support::token(&self.syntax, SyntaxKind::COMMENTS_KW)
9978 }
9979 #[inline]
9980 pub fn compression_token(&self) -> Option<SyntaxToken> {
9981 support::token(&self.syntax, SyntaxKind::COMPRESSION_KW)
9982 }
9983 #[inline]
9984 pub fn constraints_token(&self) -> Option<SyntaxToken> {
9985 support::token(&self.syntax, SyntaxKind::CONSTRAINTS_KW)
9986 }
9987 #[inline]
9988 pub fn defaults_token(&self) -> Option<SyntaxToken> {
9989 support::token(&self.syntax, SyntaxKind::DEFAULTS_KW)
9990 }
9991 #[inline]
9992 pub fn excluding_token(&self) -> Option<SyntaxToken> {
9993 support::token(&self.syntax, SyntaxKind::EXCLUDING_KW)
9994 }
9995 #[inline]
9996 pub fn generated_token(&self) -> Option<SyntaxToken> {
9997 support::token(&self.syntax, SyntaxKind::GENERATED_KW)
9998 }
9999 #[inline]
10000 pub fn identity_token(&self) -> Option<SyntaxToken> {
10001 support::token(&self.syntax, SyntaxKind::IDENTITY_KW)
10002 }
10003 #[inline]
10004 pub fn including_token(&self) -> Option<SyntaxToken> {
10005 support::token(&self.syntax, SyntaxKind::INCLUDING_KW)
10006 }
10007 #[inline]
10008 pub fn indexes_token(&self) -> Option<SyntaxToken> {
10009 support::token(&self.syntax, SyntaxKind::INDEXES_KW)
10010 }
10011 #[inline]
10012 pub fn statistics_token(&self) -> Option<SyntaxToken> {
10013 support::token(&self.syntax, SyntaxKind::STATISTICS_KW)
10014 }
10015 #[inline]
10016 pub fn storage_token(&self) -> Option<SyntaxToken> {
10017 support::token(&self.syntax, SyntaxKind::STORAGE_KW)
10018 }
10019}
10020
10021#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10022pub struct LimitClause {
10023 pub(crate) syntax: SyntaxNode,
10024}
10025impl LimitClause {
10026 #[inline]
10027 pub fn expr(&self) -> Option<Expr> {
10028 support::child(&self.syntax)
10029 }
10030 #[inline]
10031 pub fn all_token(&self) -> Option<SyntaxToken> {
10032 support::token(&self.syntax, SyntaxKind::ALL_KW)
10033 }
10034 #[inline]
10035 pub fn limit_token(&self) -> Option<SyntaxToken> {
10036 support::token(&self.syntax, SyntaxKind::LIMIT_KW)
10037 }
10038}
10039
10040#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10041pub struct LimitToTables {
10042 pub(crate) syntax: SyntaxNode,
10043}
10044impl LimitToTables {
10045 #[inline]
10046 pub fn name_refs(&self) -> AstChildren<NameRef> {
10047 support::children(&self.syntax)
10048 }
10049 #[inline]
10050 pub fn limit_token(&self) -> Option<SyntaxToken> {
10051 support::token(&self.syntax, SyntaxKind::LIMIT_KW)
10052 }
10053 #[inline]
10054 pub fn to_token(&self) -> Option<SyntaxToken> {
10055 support::token(&self.syntax, SyntaxKind::TO_KW)
10056 }
10057}
10058
10059#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10060pub struct Listen {
10061 pub(crate) syntax: SyntaxNode,
10062}
10063impl Listen {
10064 #[inline]
10065 pub fn name(&self) -> Option<Name> {
10066 support::child(&self.syntax)
10067 }
10068 #[inline]
10069 pub fn listen_token(&self) -> Option<SyntaxToken> {
10070 support::token(&self.syntax, SyntaxKind::LISTEN_KW)
10071 }
10072}
10073
10074#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10075pub struct Literal {
10076 pub(crate) syntax: SyntaxNode,
10077}
10078impl Literal {}
10079
10080#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10081pub struct Load {
10082 pub(crate) syntax: SyntaxNode,
10083}
10084impl Load {
10085 #[inline]
10086 pub fn literal(&self) -> Option<Literal> {
10087 support::child(&self.syntax)
10088 }
10089 #[inline]
10090 pub fn load_token(&self) -> Option<SyntaxToken> {
10091 support::token(&self.syntax, SyntaxKind::LOAD_KW)
10092 }
10093}
10094
10095#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10096pub struct Lock {
10097 pub(crate) syntax: SyntaxNode,
10098}
10099impl Lock {
10100 #[inline]
10101 pub fn table_list(&self) -> Option<TableList> {
10102 support::child(&self.syntax)
10103 }
10104 #[inline]
10105 pub fn lock_token(&self) -> Option<SyntaxToken> {
10106 support::token(&self.syntax, SyntaxKind::LOCK_KW)
10107 }
10108 #[inline]
10109 pub fn table_token(&self) -> Option<SyntaxToken> {
10110 support::token(&self.syntax, SyntaxKind::TABLE_KW)
10111 }
10112}
10113
10114#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10115pub struct LockingClause {
10116 pub(crate) syntax: SyntaxNode,
10117}
10118impl LockingClause {
10119 #[inline]
10120 pub fn for_token(&self) -> Option<SyntaxToken> {
10121 support::token(&self.syntax, SyntaxKind::FOR_KW)
10122 }
10123}
10124
10125#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10126pub struct Lteq {
10127 pub(crate) syntax: SyntaxNode,
10128}
10129impl Lteq {
10130 #[inline]
10131 pub fn l_angle_token(&self) -> Option<SyntaxToken> {
10132 support::token(&self.syntax, SyntaxKind::L_ANGLE)
10133 }
10134 #[inline]
10135 pub fn eq_token(&self) -> Option<SyntaxToken> {
10136 support::token(&self.syntax, SyntaxKind::EQ)
10137 }
10138}
10139
10140#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10141pub struct MatchFull {
10142 pub(crate) syntax: SyntaxNode,
10143}
10144impl MatchFull {
10145 #[inline]
10146 pub fn full_token(&self) -> Option<SyntaxToken> {
10147 support::token(&self.syntax, SyntaxKind::FULL_KW)
10148 }
10149 #[inline]
10150 pub fn match_token(&self) -> Option<SyntaxToken> {
10151 support::token(&self.syntax, SyntaxKind::MATCH_KW)
10152 }
10153}
10154
10155#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10156pub struct MatchPartial {
10157 pub(crate) syntax: SyntaxNode,
10158}
10159impl MatchPartial {
10160 #[inline]
10161 pub fn match_token(&self) -> Option<SyntaxToken> {
10162 support::token(&self.syntax, SyntaxKind::MATCH_KW)
10163 }
10164 #[inline]
10165 pub fn partial_token(&self) -> Option<SyntaxToken> {
10166 support::token(&self.syntax, SyntaxKind::PARTIAL_KW)
10167 }
10168}
10169
10170#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10171pub struct MatchSimple {
10172 pub(crate) syntax: SyntaxNode,
10173}
10174impl MatchSimple {
10175 #[inline]
10176 pub fn match_token(&self) -> Option<SyntaxToken> {
10177 support::token(&self.syntax, SyntaxKind::MATCH_KW)
10178 }
10179 #[inline]
10180 pub fn simple_token(&self) -> Option<SyntaxToken> {
10181 support::token(&self.syntax, SyntaxKind::SIMPLE_KW)
10182 }
10183}
10184
10185#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10186pub struct Materialized {
10187 pub(crate) syntax: SyntaxNode,
10188}
10189impl Materialized {
10190 #[inline]
10191 pub fn materialized_token(&self) -> Option<SyntaxToken> {
10192 support::token(&self.syntax, SyntaxKind::MATERIALIZED_KW)
10193 }
10194}
10195
10196#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10197pub struct Merge {
10198 pub(crate) syntax: SyntaxNode,
10199}
10200impl Merge {
10201 #[inline]
10202 pub fn alias(&self) -> Option<Alias> {
10203 support::child(&self.syntax)
10204 }
10205 #[inline]
10206 pub fn merge_when_clauses(&self) -> AstChildren<MergeWhenClause> {
10207 support::children(&self.syntax)
10208 }
10209 #[inline]
10210 pub fn relation_name(&self) -> Option<RelationName> {
10211 support::child(&self.syntax)
10212 }
10213 #[inline]
10214 pub fn returning_clause(&self) -> Option<ReturningClause> {
10215 support::child(&self.syntax)
10216 }
10217 #[inline]
10218 pub fn using_on_clause(&self) -> Option<UsingOnClause> {
10219 support::child(&self.syntax)
10220 }
10221 #[inline]
10222 pub fn into_token(&self) -> Option<SyntaxToken> {
10223 support::token(&self.syntax, SyntaxKind::INTO_KW)
10224 }
10225 #[inline]
10226 pub fn merge_token(&self) -> Option<SyntaxToken> {
10227 support::token(&self.syntax, SyntaxKind::MERGE_KW)
10228 }
10229}
10230
10231#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10232pub struct MergeDelete {
10233 pub(crate) syntax: SyntaxNode,
10234}
10235impl MergeDelete {
10236 #[inline]
10237 pub fn delete_token(&self) -> Option<SyntaxToken> {
10238 support::token(&self.syntax, SyntaxKind::DELETE_KW)
10239 }
10240}
10241
10242#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10243pub struct MergeDoNothing {
10244 pub(crate) syntax: SyntaxNode,
10245}
10246impl MergeDoNothing {
10247 #[inline]
10248 pub fn do_token(&self) -> Option<SyntaxToken> {
10249 support::token(&self.syntax, SyntaxKind::DO_KW)
10250 }
10251 #[inline]
10252 pub fn nothing_token(&self) -> Option<SyntaxToken> {
10253 support::token(&self.syntax, SyntaxKind::NOTHING_KW)
10254 }
10255}
10256
10257#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10258pub struct MergeInsert {
10259 pub(crate) syntax: SyntaxNode,
10260}
10261impl MergeInsert {
10262 #[inline]
10263 pub fn column_list(&self) -> Option<ColumnList> {
10264 support::child(&self.syntax)
10265 }
10266 #[inline]
10267 pub fn values(&self) -> Option<Values> {
10268 support::child(&self.syntax)
10269 }
10270 #[inline]
10271 pub fn default_token(&self) -> Option<SyntaxToken> {
10272 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
10273 }
10274 #[inline]
10275 pub fn insert_token(&self) -> Option<SyntaxToken> {
10276 support::token(&self.syntax, SyntaxKind::INSERT_KW)
10277 }
10278 #[inline]
10279 pub fn overriding_token(&self) -> Option<SyntaxToken> {
10280 support::token(&self.syntax, SyntaxKind::OVERRIDING_KW)
10281 }
10282 #[inline]
10283 pub fn system_token(&self) -> Option<SyntaxToken> {
10284 support::token(&self.syntax, SyntaxKind::SYSTEM_KW)
10285 }
10286 #[inline]
10287 pub fn user_token(&self) -> Option<SyntaxToken> {
10288 support::token(&self.syntax, SyntaxKind::USER_KW)
10289 }
10290 #[inline]
10291 pub fn values_token(&self) -> Option<SyntaxToken> {
10292 support::token(&self.syntax, SyntaxKind::VALUES_KW)
10293 }
10294}
10295
10296#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10297pub struct MergePartitions {
10298 pub(crate) syntax: SyntaxNode,
10299}
10300impl MergePartitions {
10301 #[inline]
10302 pub fn path(&self) -> Option<Path> {
10303 support::child(&self.syntax)
10304 }
10305 #[inline]
10306 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
10307 support::token(&self.syntax, SyntaxKind::L_PAREN)
10308 }
10309 #[inline]
10310 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
10311 support::token(&self.syntax, SyntaxKind::R_PAREN)
10312 }
10313 #[inline]
10314 pub fn into_token(&self) -> Option<SyntaxToken> {
10315 support::token(&self.syntax, SyntaxKind::INTO_KW)
10316 }
10317 #[inline]
10318 pub fn merge_token(&self) -> Option<SyntaxToken> {
10319 support::token(&self.syntax, SyntaxKind::MERGE_KW)
10320 }
10321 #[inline]
10322 pub fn partitions_token(&self) -> Option<SyntaxToken> {
10323 support::token(&self.syntax, SyntaxKind::PARTITIONS_KW)
10324 }
10325}
10326
10327#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10328pub struct MergeUpdate {
10329 pub(crate) syntax: SyntaxNode,
10330}
10331impl MergeUpdate {
10332 #[inline]
10333 pub fn set_clause(&self) -> Option<SetClause> {
10334 support::child(&self.syntax)
10335 }
10336 #[inline]
10337 pub fn set_token(&self) -> Option<SyntaxToken> {
10338 support::token(&self.syntax, SyntaxKind::SET_KW)
10339 }
10340 #[inline]
10341 pub fn update_token(&self) -> Option<SyntaxToken> {
10342 support::token(&self.syntax, SyntaxKind::UPDATE_KW)
10343 }
10344}
10345
10346#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10347pub struct MergeWhenMatched {
10348 pub(crate) syntax: SyntaxNode,
10349}
10350impl MergeWhenMatched {
10351 #[inline]
10352 pub fn expr(&self) -> Option<Expr> {
10353 support::child(&self.syntax)
10354 }
10355 #[inline]
10356 pub fn merge_action(&self) -> Option<MergeAction> {
10357 support::child(&self.syntax)
10358 }
10359 #[inline]
10360 pub fn and_token(&self) -> Option<SyntaxToken> {
10361 support::token(&self.syntax, SyntaxKind::AND_KW)
10362 }
10363 #[inline]
10364 pub fn matched_token(&self) -> Option<SyntaxToken> {
10365 support::token(&self.syntax, SyntaxKind::MATCHED_KW)
10366 }
10367 #[inline]
10368 pub fn then_token(&self) -> Option<SyntaxToken> {
10369 support::token(&self.syntax, SyntaxKind::THEN_KW)
10370 }
10371 #[inline]
10372 pub fn when_token(&self) -> Option<SyntaxToken> {
10373 support::token(&self.syntax, SyntaxKind::WHEN_KW)
10374 }
10375}
10376
10377#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10378pub struct MergeWhenNotMatchedSource {
10379 pub(crate) syntax: SyntaxNode,
10380}
10381impl MergeWhenNotMatchedSource {
10382 #[inline]
10383 pub fn expr(&self) -> Option<Expr> {
10384 support::child(&self.syntax)
10385 }
10386 #[inline]
10387 pub fn merge_action(&self) -> Option<MergeAction> {
10388 support::child(&self.syntax)
10389 }
10390 #[inline]
10391 pub fn and_token(&self) -> Option<SyntaxToken> {
10392 support::token(&self.syntax, SyntaxKind::AND_KW)
10393 }
10394 #[inline]
10395 pub fn by_token(&self) -> Option<SyntaxToken> {
10396 support::token(&self.syntax, SyntaxKind::BY_KW)
10397 }
10398 #[inline]
10399 pub fn matched_token(&self) -> Option<SyntaxToken> {
10400 support::token(&self.syntax, SyntaxKind::MATCHED_KW)
10401 }
10402 #[inline]
10403 pub fn not_token(&self) -> Option<SyntaxToken> {
10404 support::token(&self.syntax, SyntaxKind::NOT_KW)
10405 }
10406 #[inline]
10407 pub fn source_token(&self) -> Option<SyntaxToken> {
10408 support::token(&self.syntax, SyntaxKind::SOURCE_KW)
10409 }
10410 #[inline]
10411 pub fn then_token(&self) -> Option<SyntaxToken> {
10412 support::token(&self.syntax, SyntaxKind::THEN_KW)
10413 }
10414 #[inline]
10415 pub fn when_token(&self) -> Option<SyntaxToken> {
10416 support::token(&self.syntax, SyntaxKind::WHEN_KW)
10417 }
10418}
10419
10420#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10421pub struct MergeWhenNotMatchedTarget {
10422 pub(crate) syntax: SyntaxNode,
10423}
10424impl MergeWhenNotMatchedTarget {
10425 #[inline]
10426 pub fn expr(&self) -> Option<Expr> {
10427 support::child(&self.syntax)
10428 }
10429 #[inline]
10430 pub fn merge_action(&self) -> Option<MergeAction> {
10431 support::child(&self.syntax)
10432 }
10433 #[inline]
10434 pub fn and_token(&self) -> Option<SyntaxToken> {
10435 support::token(&self.syntax, SyntaxKind::AND_KW)
10436 }
10437 #[inline]
10438 pub fn by_token(&self) -> Option<SyntaxToken> {
10439 support::token(&self.syntax, SyntaxKind::BY_KW)
10440 }
10441 #[inline]
10442 pub fn matched_token(&self) -> Option<SyntaxToken> {
10443 support::token(&self.syntax, SyntaxKind::MATCHED_KW)
10444 }
10445 #[inline]
10446 pub fn not_token(&self) -> Option<SyntaxToken> {
10447 support::token(&self.syntax, SyntaxKind::NOT_KW)
10448 }
10449 #[inline]
10450 pub fn target_token(&self) -> Option<SyntaxToken> {
10451 support::token(&self.syntax, SyntaxKind::TARGET_KW)
10452 }
10453 #[inline]
10454 pub fn then_token(&self) -> Option<SyntaxToken> {
10455 support::token(&self.syntax, SyntaxKind::THEN_KW)
10456 }
10457 #[inline]
10458 pub fn when_token(&self) -> Option<SyntaxToken> {
10459 support::token(&self.syntax, SyntaxKind::WHEN_KW)
10460 }
10461}
10462
10463#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10464pub struct Move {
10465 pub(crate) syntax: SyntaxNode,
10466}
10467impl Move {
10468 #[inline]
10469 pub fn name_ref(&self) -> Option<NameRef> {
10470 support::child(&self.syntax)
10471 }
10472 #[inline]
10473 pub fn from_token(&self) -> Option<SyntaxToken> {
10474 support::token(&self.syntax, SyntaxKind::FROM_KW)
10475 }
10476 #[inline]
10477 pub fn in_token(&self) -> Option<SyntaxToken> {
10478 support::token(&self.syntax, SyntaxKind::IN_KW)
10479 }
10480 #[inline]
10481 pub fn move_token(&self) -> Option<SyntaxToken> {
10482 support::token(&self.syntax, SyntaxKind::MOVE_KW)
10483 }
10484}
10485
10486#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10487pub struct Name {
10488 pub(crate) syntax: SyntaxNode,
10489}
10490impl Name {
10491 #[inline]
10492 pub fn ident_token(&self) -> Option<SyntaxToken> {
10493 support::token(&self.syntax, SyntaxKind::IDENT)
10494 }
10495}
10496
10497#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10498pub struct NameRef {
10499 pub(crate) syntax: SyntaxNode,
10500}
10501impl NameRef {
10502 #[inline]
10503 pub fn ident_token(&self) -> Option<SyntaxToken> {
10504 support::token(&self.syntax, SyntaxKind::IDENT)
10505 }
10506}
10507
10508#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10509pub struct NamedArg {
10510 pub(crate) syntax: SyntaxNode,
10511}
10512impl NamedArg {
10513 #[inline]
10514 pub fn expr(&self) -> Option<Expr> {
10515 support::child(&self.syntax)
10516 }
10517 #[inline]
10518 pub fn fat_arrow(&self) -> Option<FatArrow> {
10519 support::child(&self.syntax)
10520 }
10521 #[inline]
10522 pub fn name_ref(&self) -> Option<NameRef> {
10523 support::child(&self.syntax)
10524 }
10525}
10526
10527#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10528pub struct Neq {
10529 pub(crate) syntax: SyntaxNode,
10530}
10531impl Neq {
10532 #[inline]
10533 pub fn bang_token(&self) -> Option<SyntaxToken> {
10534 support::token(&self.syntax, SyntaxKind::BANG)
10535 }
10536 #[inline]
10537 pub fn eq_token(&self) -> Option<SyntaxToken> {
10538 support::token(&self.syntax, SyntaxKind::EQ)
10539 }
10540}
10541
10542#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10543pub struct Neqb {
10544 pub(crate) syntax: SyntaxNode,
10545}
10546impl Neqb {
10547 #[inline]
10548 pub fn l_angle_token(&self) -> Option<SyntaxToken> {
10549 support::token(&self.syntax, SyntaxKind::L_ANGLE)
10550 }
10551 #[inline]
10552 pub fn r_angle_token(&self) -> Option<SyntaxToken> {
10553 support::token(&self.syntax, SyntaxKind::R_ANGLE)
10554 }
10555}
10556
10557#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10558pub struct NoAction {
10559 pub(crate) syntax: SyntaxNode,
10560}
10561impl NoAction {
10562 #[inline]
10563 pub fn action_token(&self) -> Option<SyntaxToken> {
10564 support::token(&self.syntax, SyntaxKind::ACTION_KW)
10565 }
10566 #[inline]
10567 pub fn no_token(&self) -> Option<SyntaxToken> {
10568 support::token(&self.syntax, SyntaxKind::NO_KW)
10569 }
10570}
10571
10572#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10573pub struct NoDependsOnExtension {
10574 pub(crate) syntax: SyntaxNode,
10575}
10576impl NoDependsOnExtension {
10577 #[inline]
10578 pub fn name_ref(&self) -> Option<NameRef> {
10579 support::child(&self.syntax)
10580 }
10581 #[inline]
10582 pub fn depends_token(&self) -> Option<SyntaxToken> {
10583 support::token(&self.syntax, SyntaxKind::DEPENDS_KW)
10584 }
10585 #[inline]
10586 pub fn extension_token(&self) -> Option<SyntaxToken> {
10587 support::token(&self.syntax, SyntaxKind::EXTENSION_KW)
10588 }
10589 #[inline]
10590 pub fn no_token(&self) -> Option<SyntaxToken> {
10591 support::token(&self.syntax, SyntaxKind::NO_KW)
10592 }
10593 #[inline]
10594 pub fn on_token(&self) -> Option<SyntaxToken> {
10595 support::token(&self.syntax, SyntaxKind::ON_KW)
10596 }
10597}
10598
10599#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10600pub struct NoForceRls {
10601 pub(crate) syntax: SyntaxNode,
10602}
10603impl NoForceRls {
10604 #[inline]
10605 pub fn force_token(&self) -> Option<SyntaxToken> {
10606 support::token(&self.syntax, SyntaxKind::FORCE_KW)
10607 }
10608 #[inline]
10609 pub fn level_token(&self) -> Option<SyntaxToken> {
10610 support::token(&self.syntax, SyntaxKind::LEVEL_KW)
10611 }
10612 #[inline]
10613 pub fn no_token(&self) -> Option<SyntaxToken> {
10614 support::token(&self.syntax, SyntaxKind::NO_KW)
10615 }
10616 #[inline]
10617 pub fn row_token(&self) -> Option<SyntaxToken> {
10618 support::token(&self.syntax, SyntaxKind::ROW_KW)
10619 }
10620 #[inline]
10621 pub fn security_token(&self) -> Option<SyntaxToken> {
10622 support::token(&self.syntax, SyntaxKind::SECURITY_KW)
10623 }
10624}
10625
10626#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10627pub struct NoInherit {
10628 pub(crate) syntax: SyntaxNode,
10629}
10630impl NoInherit {
10631 #[inline]
10632 pub fn path(&self) -> Option<Path> {
10633 support::child(&self.syntax)
10634 }
10635 #[inline]
10636 pub fn inherit_token(&self) -> Option<SyntaxToken> {
10637 support::token(&self.syntax, SyntaxKind::INHERIT_KW)
10638 }
10639 #[inline]
10640 pub fn no_token(&self) -> Option<SyntaxToken> {
10641 support::token(&self.syntax, SyntaxKind::NO_KW)
10642 }
10643}
10644
10645#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10646pub struct NoInheritTable {
10647 pub(crate) syntax: SyntaxNode,
10648}
10649impl NoInheritTable {
10650 #[inline]
10651 pub fn path(&self) -> Option<Path> {
10652 support::child(&self.syntax)
10653 }
10654 #[inline]
10655 pub fn inherit_token(&self) -> Option<SyntaxToken> {
10656 support::token(&self.syntax, SyntaxKind::INHERIT_KW)
10657 }
10658 #[inline]
10659 pub fn no_token(&self) -> Option<SyntaxToken> {
10660 support::token(&self.syntax, SyntaxKind::NO_KW)
10661 }
10662}
10663
10664#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10665pub struct NonStandardParam {
10666 pub(crate) syntax: SyntaxNode,
10667}
10668impl NonStandardParam {
10669 #[inline]
10670 pub fn name_ref(&self) -> Option<NameRef> {
10671 support::child(&self.syntax)
10672 }
10673 #[inline]
10674 pub fn colon_token(&self) -> Option<SyntaxToken> {
10675 support::token(&self.syntax, SyntaxKind::COLON)
10676 }
10677}
10678
10679#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10680pub struct NotDeferrable {
10681 pub(crate) syntax: SyntaxNode,
10682}
10683impl NotDeferrable {
10684 #[inline]
10685 pub fn deferrable_token(&self) -> Option<SyntaxToken> {
10686 support::token(&self.syntax, SyntaxKind::DEFERRABLE_KW)
10687 }
10688 #[inline]
10689 pub fn not_token(&self) -> Option<SyntaxToken> {
10690 support::token(&self.syntax, SyntaxKind::NOT_KW)
10691 }
10692}
10693
10694#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10695pub struct NotDeferrableConstraintOption {
10696 pub(crate) syntax: SyntaxNode,
10697}
10698impl NotDeferrableConstraintOption {
10699 #[inline]
10700 pub fn deferrable_token(&self) -> Option<SyntaxToken> {
10701 support::token(&self.syntax, SyntaxKind::DEFERRABLE_KW)
10702 }
10703 #[inline]
10704 pub fn not_token(&self) -> Option<SyntaxToken> {
10705 support::token(&self.syntax, SyntaxKind::NOT_KW)
10706 }
10707}
10708
10709#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10710pub struct NotEnforced {
10711 pub(crate) syntax: SyntaxNode,
10712}
10713impl NotEnforced {
10714 #[inline]
10715 pub fn enforced_token(&self) -> Option<SyntaxToken> {
10716 support::token(&self.syntax, SyntaxKind::ENFORCED_KW)
10717 }
10718 #[inline]
10719 pub fn not_token(&self) -> Option<SyntaxToken> {
10720 support::token(&self.syntax, SyntaxKind::NOT_KW)
10721 }
10722}
10723
10724#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10725pub struct NotIlike {
10726 pub(crate) syntax: SyntaxNode,
10727}
10728impl NotIlike {
10729 #[inline]
10730 pub fn ilike_token(&self) -> Option<SyntaxToken> {
10731 support::token(&self.syntax, SyntaxKind::ILIKE_KW)
10732 }
10733 #[inline]
10734 pub fn not_token(&self) -> Option<SyntaxToken> {
10735 support::token(&self.syntax, SyntaxKind::NOT_KW)
10736 }
10737}
10738
10739#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10740pub struct NotIn {
10741 pub(crate) syntax: SyntaxNode,
10742}
10743impl NotIn {
10744 #[inline]
10745 pub fn in_token(&self) -> Option<SyntaxToken> {
10746 support::token(&self.syntax, SyntaxKind::IN_KW)
10747 }
10748 #[inline]
10749 pub fn not_token(&self) -> Option<SyntaxToken> {
10750 support::token(&self.syntax, SyntaxKind::NOT_KW)
10751 }
10752}
10753
10754#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10755pub struct NotLike {
10756 pub(crate) syntax: SyntaxNode,
10757}
10758impl NotLike {
10759 #[inline]
10760 pub fn like_token(&self) -> Option<SyntaxToken> {
10761 support::token(&self.syntax, SyntaxKind::LIKE_KW)
10762 }
10763 #[inline]
10764 pub fn not_token(&self) -> Option<SyntaxToken> {
10765 support::token(&self.syntax, SyntaxKind::NOT_KW)
10766 }
10767}
10768
10769#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10770pub struct NotMaterialized {
10771 pub(crate) syntax: SyntaxNode,
10772}
10773impl NotMaterialized {
10774 #[inline]
10775 pub fn materialized_token(&self) -> Option<SyntaxToken> {
10776 support::token(&self.syntax, SyntaxKind::MATERIALIZED_KW)
10777 }
10778 #[inline]
10779 pub fn not_token(&self) -> Option<SyntaxToken> {
10780 support::token(&self.syntax, SyntaxKind::NOT_KW)
10781 }
10782}
10783
10784#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10785pub struct NotNullConstraint {
10786 pub(crate) syntax: SyntaxNode,
10787}
10788impl NotNullConstraint {
10789 #[inline]
10790 pub fn name_ref(&self) -> Option<NameRef> {
10791 support::child(&self.syntax)
10792 }
10793 #[inline]
10794 pub fn no_inherit(&self) -> Option<NoInherit> {
10795 support::child(&self.syntax)
10796 }
10797 #[inline]
10798 pub fn constraint_token(&self) -> Option<SyntaxToken> {
10799 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
10800 }
10801 #[inline]
10802 pub fn not_token(&self) -> Option<SyntaxToken> {
10803 support::token(&self.syntax, SyntaxKind::NOT_KW)
10804 }
10805 #[inline]
10806 pub fn null_token(&self) -> Option<SyntaxToken> {
10807 support::token(&self.syntax, SyntaxKind::NULL_KW)
10808 }
10809}
10810
10811#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10812pub struct NotOf {
10813 pub(crate) syntax: SyntaxNode,
10814}
10815impl NotOf {
10816 #[inline]
10817 pub fn not_token(&self) -> Option<SyntaxToken> {
10818 support::token(&self.syntax, SyntaxKind::NOT_KW)
10819 }
10820 #[inline]
10821 pub fn of_token(&self) -> Option<SyntaxToken> {
10822 support::token(&self.syntax, SyntaxKind::OF_KW)
10823 }
10824}
10825
10826#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10827pub struct NotSimilarTo {
10828 pub(crate) syntax: SyntaxNode,
10829}
10830impl NotSimilarTo {
10831 #[inline]
10832 pub fn not_token(&self) -> Option<SyntaxToken> {
10833 support::token(&self.syntax, SyntaxKind::NOT_KW)
10834 }
10835 #[inline]
10836 pub fn similar_token(&self) -> Option<SyntaxToken> {
10837 support::token(&self.syntax, SyntaxKind::SIMILAR_KW)
10838 }
10839 #[inline]
10840 pub fn to_token(&self) -> Option<SyntaxToken> {
10841 support::token(&self.syntax, SyntaxKind::TO_KW)
10842 }
10843}
10844
10845#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10846pub struct NotValid {
10847 pub(crate) syntax: SyntaxNode,
10848}
10849impl NotValid {
10850 #[inline]
10851 pub fn not_token(&self) -> Option<SyntaxToken> {
10852 support::token(&self.syntax, SyntaxKind::NOT_KW)
10853 }
10854 #[inline]
10855 pub fn valid_token(&self) -> Option<SyntaxToken> {
10856 support::token(&self.syntax, SyntaxKind::VALID_KW)
10857 }
10858}
10859
10860#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10861pub struct Notify {
10862 pub(crate) syntax: SyntaxNode,
10863}
10864impl Notify {
10865 #[inline]
10866 pub fn literal(&self) -> Option<Literal> {
10867 support::child(&self.syntax)
10868 }
10869 #[inline]
10870 pub fn name_ref(&self) -> Option<NameRef> {
10871 support::child(&self.syntax)
10872 }
10873 #[inline]
10874 pub fn comma_token(&self) -> Option<SyntaxToken> {
10875 support::token(&self.syntax, SyntaxKind::COMMA)
10876 }
10877 #[inline]
10878 pub fn notify_token(&self) -> Option<SyntaxToken> {
10879 support::token(&self.syntax, SyntaxKind::NOTIFY_KW)
10880 }
10881}
10882
10883#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10884pub struct NullConstraint {
10885 pub(crate) syntax: SyntaxNode,
10886}
10887impl NullConstraint {
10888 #[inline]
10889 pub fn name_ref(&self) -> Option<NameRef> {
10890 support::child(&self.syntax)
10891 }
10892 #[inline]
10893 pub fn constraint_token(&self) -> Option<SyntaxToken> {
10894 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
10895 }
10896 #[inline]
10897 pub fn null_token(&self) -> Option<SyntaxToken> {
10898 support::token(&self.syntax, SyntaxKind::NULL_KW)
10899 }
10900}
10901
10902#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10903pub struct NullsDistinct {
10904 pub(crate) syntax: SyntaxNode,
10905}
10906impl NullsDistinct {
10907 #[inline]
10908 pub fn distinct_token(&self) -> Option<SyntaxToken> {
10909 support::token(&self.syntax, SyntaxKind::DISTINCT_KW)
10910 }
10911 #[inline]
10912 pub fn nulls_token(&self) -> Option<SyntaxToken> {
10913 support::token(&self.syntax, SyntaxKind::NULLS_KW)
10914 }
10915}
10916
10917#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10918pub struct NullsFirst {
10919 pub(crate) syntax: SyntaxNode,
10920}
10921impl NullsFirst {
10922 #[inline]
10923 pub fn first_token(&self) -> Option<SyntaxToken> {
10924 support::token(&self.syntax, SyntaxKind::FIRST_KW)
10925 }
10926 #[inline]
10927 pub fn nulls_token(&self) -> Option<SyntaxToken> {
10928 support::token(&self.syntax, SyntaxKind::NULLS_KW)
10929 }
10930}
10931
10932#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10933pub struct NullsLast {
10934 pub(crate) syntax: SyntaxNode,
10935}
10936impl NullsLast {
10937 #[inline]
10938 pub fn last_token(&self) -> Option<SyntaxToken> {
10939 support::token(&self.syntax, SyntaxKind::LAST_KW)
10940 }
10941 #[inline]
10942 pub fn nulls_token(&self) -> Option<SyntaxToken> {
10943 support::token(&self.syntax, SyntaxKind::NULLS_KW)
10944 }
10945}
10946
10947#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10948pub struct NullsNotDistinct {
10949 pub(crate) syntax: SyntaxNode,
10950}
10951impl NullsNotDistinct {
10952 #[inline]
10953 pub fn distinct_token(&self) -> Option<SyntaxToken> {
10954 support::token(&self.syntax, SyntaxKind::DISTINCT_KW)
10955 }
10956 #[inline]
10957 pub fn not_token(&self) -> Option<SyntaxToken> {
10958 support::token(&self.syntax, SyntaxKind::NOT_KW)
10959 }
10960 #[inline]
10961 pub fn nulls_token(&self) -> Option<SyntaxToken> {
10962 support::token(&self.syntax, SyntaxKind::NULLS_KW)
10963 }
10964}
10965
10966#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10967pub struct OfType {
10968 pub(crate) syntax: SyntaxNode,
10969}
10970impl OfType {
10971 #[inline]
10972 pub fn ty(&self) -> Option<Type> {
10973 support::child(&self.syntax)
10974 }
10975 #[inline]
10976 pub fn of_token(&self) -> Option<SyntaxToken> {
10977 support::token(&self.syntax, SyntaxKind::OF_KW)
10978 }
10979}
10980
10981#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10982pub struct OffsetClause {
10983 pub(crate) syntax: SyntaxNode,
10984}
10985impl OffsetClause {
10986 #[inline]
10987 pub fn expr(&self) -> Option<Expr> {
10988 support::child(&self.syntax)
10989 }
10990 #[inline]
10991 pub fn offset_token(&self) -> Option<SyntaxToken> {
10992 support::token(&self.syntax, SyntaxKind::OFFSET_KW)
10993 }
10994 #[inline]
10995 pub fn row_token(&self) -> Option<SyntaxToken> {
10996 support::token(&self.syntax, SyntaxKind::ROW_KW)
10997 }
10998 #[inline]
10999 pub fn rows_token(&self) -> Option<SyntaxToken> {
11000 support::token(&self.syntax, SyntaxKind::ROWS_KW)
11001 }
11002}
11003
11004#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11005pub struct OnClause {
11006 pub(crate) syntax: SyntaxNode,
11007}
11008impl OnClause {
11009 #[inline]
11010 pub fn expr(&self) -> Option<Expr> {
11011 support::child(&self.syntax)
11012 }
11013 #[inline]
11014 pub fn on_token(&self) -> Option<SyntaxToken> {
11015 support::token(&self.syntax, SyntaxKind::ON_KW)
11016 }
11017}
11018
11019#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11020pub struct OnCommit {
11021 pub(crate) syntax: SyntaxNode,
11022}
11023impl OnCommit {
11024 #[inline]
11025 pub fn on_commit_action(&self) -> Option<OnCommitAction> {
11026 support::child(&self.syntax)
11027 }
11028 #[inline]
11029 pub fn commit_token(&self) -> Option<SyntaxToken> {
11030 support::token(&self.syntax, SyntaxKind::COMMIT_KW)
11031 }
11032 #[inline]
11033 pub fn on_token(&self) -> Option<SyntaxToken> {
11034 support::token(&self.syntax, SyntaxKind::ON_KW)
11035 }
11036}
11037
11038#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11039pub struct OnConflictClause {
11040 pub(crate) syntax: SyntaxNode,
11041}
11042impl OnConflictClause {
11043 #[inline]
11044 pub fn conflict_action(&self) -> Option<ConflictAction> {
11045 support::child(&self.syntax)
11046 }
11047 #[inline]
11048 pub fn conflict_target(&self) -> Option<ConflictTarget> {
11049 support::child(&self.syntax)
11050 }
11051 #[inline]
11052 pub fn conflict_token(&self) -> Option<SyntaxToken> {
11053 support::token(&self.syntax, SyntaxKind::CONFLICT_KW)
11054 }
11055 #[inline]
11056 pub fn on_token(&self) -> Option<SyntaxToken> {
11057 support::token(&self.syntax, SyntaxKind::ON_KW)
11058 }
11059}
11060
11061#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11062pub struct OnDeleteAction {
11063 pub(crate) syntax: SyntaxNode,
11064}
11065impl OnDeleteAction {
11066 #[inline]
11067 pub fn ref_action(&self) -> Option<RefAction> {
11068 support::child(&self.syntax)
11069 }
11070 #[inline]
11071 pub fn delete_token(&self) -> Option<SyntaxToken> {
11072 support::token(&self.syntax, SyntaxKind::DELETE_KW)
11073 }
11074 #[inline]
11075 pub fn on_token(&self) -> Option<SyntaxToken> {
11076 support::token(&self.syntax, SyntaxKind::ON_KW)
11077 }
11078}
11079
11080#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11081pub struct OnTable {
11082 pub(crate) syntax: SyntaxNode,
11083}
11084impl OnTable {
11085 #[inline]
11086 pub fn path(&self) -> Option<Path> {
11087 support::child(&self.syntax)
11088 }
11089 #[inline]
11090 pub fn on_token(&self) -> Option<SyntaxToken> {
11091 support::token(&self.syntax, SyntaxKind::ON_KW)
11092 }
11093}
11094
11095#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11096pub struct OnUpdateAction {
11097 pub(crate) syntax: SyntaxNode,
11098}
11099impl OnUpdateAction {
11100 #[inline]
11101 pub fn ref_action(&self) -> Option<RefAction> {
11102 support::child(&self.syntax)
11103 }
11104 #[inline]
11105 pub fn on_token(&self) -> Option<SyntaxToken> {
11106 support::token(&self.syntax, SyntaxKind::ON_KW)
11107 }
11108 #[inline]
11109 pub fn update_token(&self) -> Option<SyntaxToken> {
11110 support::token(&self.syntax, SyntaxKind::UPDATE_KW)
11111 }
11112}
11113
11114#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11115pub struct Op {
11116 pub(crate) syntax: SyntaxNode,
11117}
11118impl Op {
11119 #[inline]
11120 pub fn at_time_zone(&self) -> Option<AtTimeZone> {
11121 support::child(&self.syntax)
11122 }
11123 #[inline]
11124 pub fn colon_colon(&self) -> Option<ColonColon> {
11125 support::child(&self.syntax)
11126 }
11127 #[inline]
11128 pub fn colon_eq(&self) -> Option<ColonEq> {
11129 support::child(&self.syntax)
11130 }
11131 #[inline]
11132 pub fn custom_op(&self) -> Option<CustomOp> {
11133 support::child(&self.syntax)
11134 }
11135 #[inline]
11136 pub fn fat_arrow(&self) -> Option<FatArrow> {
11137 support::child(&self.syntax)
11138 }
11139 #[inline]
11140 pub fn gteq(&self) -> Option<Gteq> {
11141 support::child(&self.syntax)
11142 }
11143 #[inline]
11144 pub fn is_distinct_from(&self) -> Option<IsDistinctFrom> {
11145 support::child(&self.syntax)
11146 }
11147 #[inline]
11148 pub fn is_json(&self) -> Option<IsJson> {
11149 support::child(&self.syntax)
11150 }
11151 #[inline]
11152 pub fn is_json_array(&self) -> Option<IsJsonArray> {
11153 support::child(&self.syntax)
11154 }
11155 #[inline]
11156 pub fn is_json_object(&self) -> Option<IsJsonObject> {
11157 support::child(&self.syntax)
11158 }
11159 #[inline]
11160 pub fn is_json_scalar(&self) -> Option<IsJsonScalar> {
11161 support::child(&self.syntax)
11162 }
11163 #[inline]
11164 pub fn is_json_value(&self) -> Option<IsJsonValue> {
11165 support::child(&self.syntax)
11166 }
11167 #[inline]
11168 pub fn is_not(&self) -> Option<IsNot> {
11169 support::child(&self.syntax)
11170 }
11171 #[inline]
11172 pub fn is_not_distinct_from(&self) -> Option<IsNotDistinctFrom> {
11173 support::child(&self.syntax)
11174 }
11175 #[inline]
11176 pub fn is_not_json(&self) -> Option<IsNotJson> {
11177 support::child(&self.syntax)
11178 }
11179 #[inline]
11180 pub fn is_not_json_array(&self) -> Option<IsNotJsonArray> {
11181 support::child(&self.syntax)
11182 }
11183 #[inline]
11184 pub fn is_not_json_scalar(&self) -> Option<IsNotJsonScalar> {
11185 support::child(&self.syntax)
11186 }
11187 #[inline]
11188 pub fn is_not_json_value(&self) -> Option<IsNotJsonValue> {
11189 support::child(&self.syntax)
11190 }
11191 #[inline]
11192 pub fn lteq(&self) -> Option<Lteq> {
11193 support::child(&self.syntax)
11194 }
11195 #[inline]
11196 pub fn neq(&self) -> Option<Neq> {
11197 support::child(&self.syntax)
11198 }
11199 #[inline]
11200 pub fn neqb(&self) -> Option<Neqb> {
11201 support::child(&self.syntax)
11202 }
11203 #[inline]
11204 pub fn not_ilike(&self) -> Option<NotIlike> {
11205 support::child(&self.syntax)
11206 }
11207 #[inline]
11208 pub fn not_in(&self) -> Option<NotIn> {
11209 support::child(&self.syntax)
11210 }
11211 #[inline]
11212 pub fn not_like(&self) -> Option<NotLike> {
11213 support::child(&self.syntax)
11214 }
11215 #[inline]
11216 pub fn not_similar_to(&self) -> Option<NotSimilarTo> {
11217 support::child(&self.syntax)
11218 }
11219 #[inline]
11220 pub fn operator_call(&self) -> Option<OperatorCall> {
11221 support::child(&self.syntax)
11222 }
11223 #[inline]
11224 pub fn similar_to(&self) -> Option<SimilarTo> {
11225 support::child(&self.syntax)
11226 }
11227 #[inline]
11228 pub fn percent_token(&self) -> Option<SyntaxToken> {
11229 support::token(&self.syntax, SyntaxKind::PERCENT)
11230 }
11231 #[inline]
11232 pub fn plus_token(&self) -> Option<SyntaxToken> {
11233 support::token(&self.syntax, SyntaxKind::PLUS)
11234 }
11235 #[inline]
11236 pub fn minus_token(&self) -> Option<SyntaxToken> {
11237 support::token(&self.syntax, SyntaxKind::MINUS)
11238 }
11239 #[inline]
11240 pub fn slash_token(&self) -> Option<SyntaxToken> {
11241 support::token(&self.syntax, SyntaxKind::SLASH)
11242 }
11243 #[inline]
11244 pub fn colon_token(&self) -> Option<SyntaxToken> {
11245 support::token(&self.syntax, SyntaxKind::COLON)
11246 }
11247 #[inline]
11248 pub fn l_angle_token(&self) -> Option<SyntaxToken> {
11249 support::token(&self.syntax, SyntaxKind::L_ANGLE)
11250 }
11251 #[inline]
11252 pub fn eq_token(&self) -> Option<SyntaxToken> {
11253 support::token(&self.syntax, SyntaxKind::EQ)
11254 }
11255 #[inline]
11256 pub fn r_angle_token(&self) -> Option<SyntaxToken> {
11257 support::token(&self.syntax, SyntaxKind::R_ANGLE)
11258 }
11259 #[inline]
11260 pub fn caret_token(&self) -> Option<SyntaxToken> {
11261 support::token(&self.syntax, SyntaxKind::CARET)
11262 }
11263 #[inline]
11264 pub fn and_token(&self) -> Option<SyntaxToken> {
11265 support::token(&self.syntax, SyntaxKind::AND_KW)
11266 }
11267 #[inline]
11268 pub fn collate_token(&self) -> Option<SyntaxToken> {
11269 support::token(&self.syntax, SyntaxKind::COLLATE_KW)
11270 }
11271 #[inline]
11272 pub fn ilike_token(&self) -> Option<SyntaxToken> {
11273 support::token(&self.syntax, SyntaxKind::ILIKE_KW)
11274 }
11275 #[inline]
11276 pub fn in_token(&self) -> Option<SyntaxToken> {
11277 support::token(&self.syntax, SyntaxKind::IN_KW)
11278 }
11279 #[inline]
11280 pub fn is_token(&self) -> Option<SyntaxToken> {
11281 support::token(&self.syntax, SyntaxKind::IS_KW)
11282 }
11283 #[inline]
11284 pub fn like_token(&self) -> Option<SyntaxToken> {
11285 support::token(&self.syntax, SyntaxKind::LIKE_KW)
11286 }
11287 #[inline]
11288 pub fn or_token(&self) -> Option<SyntaxToken> {
11289 support::token(&self.syntax, SyntaxKind::OR_KW)
11290 }
11291 #[inline]
11292 pub fn overlaps_token(&self) -> Option<SyntaxToken> {
11293 support::token(&self.syntax, SyntaxKind::OVERLAPS_KW)
11294 }
11295 #[inline]
11296 pub fn value_token(&self) -> Option<SyntaxToken> {
11297 support::token(&self.syntax, SyntaxKind::VALUE_KW)
11298 }
11299}
11300
11301#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11302pub struct OpClassOption {
11303 pub(crate) syntax: SyntaxNode,
11304}
11305impl OpClassOption {
11306 #[inline]
11307 pub fn function_sig(&self) -> Option<FunctionSig> {
11308 support::child(&self.syntax)
11309 }
11310 #[inline]
11311 pub fn literal(&self) -> Option<Literal> {
11312 support::child(&self.syntax)
11313 }
11314 #[inline]
11315 pub fn op(&self) -> Option<Op> {
11316 support::child(&self.syntax)
11317 }
11318 #[inline]
11319 pub fn param_list(&self) -> Option<ParamList> {
11320 support::child(&self.syntax)
11321 }
11322 #[inline]
11323 pub fn path(&self) -> Option<Path> {
11324 support::child(&self.syntax)
11325 }
11326 #[inline]
11327 pub fn ty(&self) -> Option<Type> {
11328 support::child(&self.syntax)
11329 }
11330 #[inline]
11331 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
11332 support::token(&self.syntax, SyntaxKind::L_PAREN)
11333 }
11334 #[inline]
11335 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
11336 support::token(&self.syntax, SyntaxKind::R_PAREN)
11337 }
11338 #[inline]
11339 pub fn comma_token(&self) -> Option<SyntaxToken> {
11340 support::token(&self.syntax, SyntaxKind::COMMA)
11341 }
11342 #[inline]
11343 pub fn by_token(&self) -> Option<SyntaxToken> {
11344 support::token(&self.syntax, SyntaxKind::BY_KW)
11345 }
11346 #[inline]
11347 pub fn for_token(&self) -> Option<SyntaxToken> {
11348 support::token(&self.syntax, SyntaxKind::FOR_KW)
11349 }
11350 #[inline]
11351 pub fn function_token(&self) -> Option<SyntaxToken> {
11352 support::token(&self.syntax, SyntaxKind::FUNCTION_KW)
11353 }
11354 #[inline]
11355 pub fn operator_token(&self) -> Option<SyntaxToken> {
11356 support::token(&self.syntax, SyntaxKind::OPERATOR_KW)
11357 }
11358 #[inline]
11359 pub fn order_token(&self) -> Option<SyntaxToken> {
11360 support::token(&self.syntax, SyntaxKind::ORDER_KW)
11361 }
11362 #[inline]
11363 pub fn search_token(&self) -> Option<SyntaxToken> {
11364 support::token(&self.syntax, SyntaxKind::SEARCH_KW)
11365 }
11366 #[inline]
11367 pub fn storage_token(&self) -> Option<SyntaxToken> {
11368 support::token(&self.syntax, SyntaxKind::STORAGE_KW)
11369 }
11370}
11371
11372#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11373pub struct OpSig {
11374 pub(crate) syntax: SyntaxNode,
11375}
11376impl OpSig {
11377 #[inline]
11378 pub fn op(&self) -> Option<Op> {
11379 support::child(&self.syntax)
11380 }
11381 #[inline]
11382 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
11383 support::token(&self.syntax, SyntaxKind::L_PAREN)
11384 }
11385 #[inline]
11386 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
11387 support::token(&self.syntax, SyntaxKind::R_PAREN)
11388 }
11389 #[inline]
11390 pub fn comma_token(&self) -> Option<SyntaxToken> {
11391 support::token(&self.syntax, SyntaxKind::COMMA)
11392 }
11393 #[inline]
11394 pub fn none_token(&self) -> Option<SyntaxToken> {
11395 support::token(&self.syntax, SyntaxKind::NONE_KW)
11396 }
11397}
11398
11399#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11400pub struct OpSigList {
11401 pub(crate) syntax: SyntaxNode,
11402}
11403impl OpSigList {
11404 #[inline]
11405 pub fn op_sigs(&self) -> AstChildren<OpSig> {
11406 support::children(&self.syntax)
11407 }
11408}
11409
11410#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11411pub struct OperatorCall {
11412 pub(crate) syntax: SyntaxNode,
11413}
11414impl OperatorCall {
11415 #[inline]
11416 pub fn op(&self) -> Option<Op> {
11417 support::child(&self.syntax)
11418 }
11419 #[inline]
11420 pub fn path(&self) -> Option<Path> {
11421 support::child(&self.syntax)
11422 }
11423 #[inline]
11424 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
11425 support::token(&self.syntax, SyntaxKind::L_PAREN)
11426 }
11427 #[inline]
11428 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
11429 support::token(&self.syntax, SyntaxKind::R_PAREN)
11430 }
11431 #[inline]
11432 pub fn dot_token(&self) -> Option<SyntaxToken> {
11433 support::token(&self.syntax, SyntaxKind::DOT)
11434 }
11435 #[inline]
11436 pub fn operator_token(&self) -> Option<SyntaxToken> {
11437 support::token(&self.syntax, SyntaxKind::OPERATOR_KW)
11438 }
11439}
11440
11441#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11442pub struct OperatorClassOptionList {
11443 pub(crate) syntax: SyntaxNode,
11444}
11445impl OperatorClassOptionList {
11446 #[inline]
11447 pub fn op_class_options(&self) -> AstChildren<OpClassOption> {
11448 support::children(&self.syntax)
11449 }
11450}
11451
11452#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11453pub struct OptionItem {
11454 pub(crate) syntax: SyntaxNode,
11455}
11456impl OptionItem {
11457 #[inline]
11458 pub fn expr(&self) -> Option<Expr> {
11459 support::child(&self.syntax)
11460 }
11461 #[inline]
11462 pub fn default_token(&self) -> Option<SyntaxToken> {
11463 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
11464 }
11465}
11466
11467#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11468pub struct OptionItemList {
11469 pub(crate) syntax: SyntaxNode,
11470}
11471impl OptionItemList {
11472 #[inline]
11473 pub fn option_items(&self) -> AstChildren<OptionItem> {
11474 support::children(&self.syntax)
11475 }
11476 #[inline]
11477 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
11478 support::token(&self.syntax, SyntaxKind::L_PAREN)
11479 }
11480 #[inline]
11481 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
11482 support::token(&self.syntax, SyntaxKind::R_PAREN)
11483 }
11484}
11485
11486#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11487pub struct OrReplace {
11488 pub(crate) syntax: SyntaxNode,
11489}
11490impl OrReplace {
11491 #[inline]
11492 pub fn or_token(&self) -> Option<SyntaxToken> {
11493 support::token(&self.syntax, SyntaxKind::OR_KW)
11494 }
11495 #[inline]
11496 pub fn replace_token(&self) -> Option<SyntaxToken> {
11497 support::token(&self.syntax, SyntaxKind::REPLACE_KW)
11498 }
11499}
11500
11501#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11502pub struct OrderByClause {
11503 pub(crate) syntax: SyntaxNode,
11504}
11505impl OrderByClause {
11506 #[inline]
11507 pub fn sort_by_list(&self) -> Option<SortByList> {
11508 support::child(&self.syntax)
11509 }
11510 #[inline]
11511 pub fn by_token(&self) -> Option<SyntaxToken> {
11512 support::token(&self.syntax, SyntaxKind::BY_KW)
11513 }
11514 #[inline]
11515 pub fn order_token(&self) -> Option<SyntaxToken> {
11516 support::token(&self.syntax, SyntaxKind::ORDER_KW)
11517 }
11518}
11519
11520#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11521pub struct OverClause {
11522 pub(crate) syntax: SyntaxNode,
11523}
11524impl OverClause {
11525 #[inline]
11526 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
11527 support::token(&self.syntax, SyntaxKind::L_PAREN)
11528 }
11529 #[inline]
11530 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
11531 support::token(&self.syntax, SyntaxKind::R_PAREN)
11532 }
11533 #[inline]
11534 pub fn over_token(&self) -> Option<SyntaxToken> {
11535 support::token(&self.syntax, SyntaxKind::OVER_KW)
11536 }
11537}
11538
11539#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11540pub struct OverlayFn {
11541 pub(crate) syntax: SyntaxNode,
11542}
11543impl OverlayFn {
11544 #[inline]
11545 pub fn expr(&self) -> Option<Expr> {
11546 support::child(&self.syntax)
11547 }
11548 #[inline]
11549 pub fn exprs(&self) -> AstChildren<Expr> {
11550 support::children(&self.syntax)
11551 }
11552 #[inline]
11553 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
11554 support::token(&self.syntax, SyntaxKind::L_PAREN)
11555 }
11556 #[inline]
11557 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
11558 support::token(&self.syntax, SyntaxKind::R_PAREN)
11559 }
11560 #[inline]
11561 pub fn for_token(&self) -> Option<SyntaxToken> {
11562 support::token(&self.syntax, SyntaxKind::FOR_KW)
11563 }
11564 #[inline]
11565 pub fn from_token(&self) -> Option<SyntaxToken> {
11566 support::token(&self.syntax, SyntaxKind::FROM_KW)
11567 }
11568 #[inline]
11569 pub fn overlay_token(&self) -> Option<SyntaxToken> {
11570 support::token(&self.syntax, SyntaxKind::OVERLAY_KW)
11571 }
11572 #[inline]
11573 pub fn placing_token(&self) -> Option<SyntaxToken> {
11574 support::token(&self.syntax, SyntaxKind::PLACING_KW)
11575 }
11576}
11577
11578#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11579pub struct OwnerTo {
11580 pub(crate) syntax: SyntaxNode,
11581}
11582impl OwnerTo {
11583 #[inline]
11584 pub fn role(&self) -> Option<Role> {
11585 support::child(&self.syntax)
11586 }
11587 #[inline]
11588 pub fn owner_token(&self) -> Option<SyntaxToken> {
11589 support::token(&self.syntax, SyntaxKind::OWNER_KW)
11590 }
11591 #[inline]
11592 pub fn to_token(&self) -> Option<SyntaxToken> {
11593 support::token(&self.syntax, SyntaxKind::TO_KW)
11594 }
11595}
11596
11597#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11598pub struct ParallelFuncOption {
11599 pub(crate) syntax: SyntaxNode,
11600}
11601impl ParallelFuncOption {
11602 #[inline]
11603 pub fn ident_token(&self) -> Option<SyntaxToken> {
11604 support::token(&self.syntax, SyntaxKind::IDENT)
11605 }
11606 #[inline]
11607 pub fn parallel_token(&self) -> Option<SyntaxToken> {
11608 support::token(&self.syntax, SyntaxKind::PARALLEL_KW)
11609 }
11610}
11611
11612#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11613pub struct Param {
11614 pub(crate) syntax: SyntaxNode,
11615}
11616impl Param {
11617 #[inline]
11618 pub fn mode(&self) -> Option<ParamMode> {
11619 support::child(&self.syntax)
11620 }
11621 #[inline]
11622 pub fn name(&self) -> Option<Name> {
11623 support::child(&self.syntax)
11624 }
11625 #[inline]
11626 pub fn param_default(&self) -> Option<ParamDefault> {
11627 support::child(&self.syntax)
11628 }
11629 #[inline]
11630 pub fn ty(&self) -> Option<Type> {
11631 support::child(&self.syntax)
11632 }
11633}
11634
11635#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11636pub struct ParamDefault {
11637 pub(crate) syntax: SyntaxNode,
11638}
11639impl ParamDefault {
11640 #[inline]
11641 pub fn expr(&self) -> Option<Expr> {
11642 support::child(&self.syntax)
11643 }
11644 #[inline]
11645 pub fn eq_token(&self) -> Option<SyntaxToken> {
11646 support::token(&self.syntax, SyntaxKind::EQ)
11647 }
11648 #[inline]
11649 pub fn default_token(&self) -> Option<SyntaxToken> {
11650 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
11651 }
11652}
11653
11654#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11655pub struct ParamIn {
11656 pub(crate) syntax: SyntaxNode,
11657}
11658impl ParamIn {
11659 #[inline]
11660 pub fn in_token(&self) -> Option<SyntaxToken> {
11661 support::token(&self.syntax, SyntaxKind::IN_KW)
11662 }
11663}
11664
11665#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11666pub struct ParamInOut {
11667 pub(crate) syntax: SyntaxNode,
11668}
11669impl ParamInOut {
11670 #[inline]
11671 pub fn in_token(&self) -> Option<SyntaxToken> {
11672 support::token(&self.syntax, SyntaxKind::IN_KW)
11673 }
11674 #[inline]
11675 pub fn inout_token(&self) -> Option<SyntaxToken> {
11676 support::token(&self.syntax, SyntaxKind::INOUT_KW)
11677 }
11678 #[inline]
11679 pub fn out_token(&self) -> Option<SyntaxToken> {
11680 support::token(&self.syntax, SyntaxKind::OUT_KW)
11681 }
11682}
11683
11684#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11685pub struct ParamList {
11686 pub(crate) syntax: SyntaxNode,
11687}
11688impl ParamList {
11689 #[inline]
11690 pub fn params(&self) -> AstChildren<Param> {
11691 support::children(&self.syntax)
11692 }
11693}
11694
11695#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11696pub struct ParamOut {
11697 pub(crate) syntax: SyntaxNode,
11698}
11699impl ParamOut {
11700 #[inline]
11701 pub fn out_token(&self) -> Option<SyntaxToken> {
11702 support::token(&self.syntax, SyntaxKind::OUT_KW)
11703 }
11704}
11705
11706#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11707pub struct ParamVariadic {
11708 pub(crate) syntax: SyntaxNode,
11709}
11710impl ParamVariadic {
11711 #[inline]
11712 pub fn variadic_token(&self) -> Option<SyntaxToken> {
11713 support::token(&self.syntax, SyntaxKind::VARIADIC_KW)
11714 }
11715}
11716
11717#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11718pub struct ParenExpr {
11719 pub(crate) syntax: SyntaxNode,
11720}
11721impl ParenExpr {
11722 #[inline]
11723 pub fn expr(&self) -> Option<Expr> {
11724 support::child(&self.syntax)
11725 }
11726 #[inline]
11727 pub fn from_item(&self) -> Option<FromItem> {
11728 support::child(&self.syntax)
11729 }
11730 #[inline]
11731 pub fn select(&self) -> Option<Select> {
11732 support::child(&self.syntax)
11733 }
11734 #[inline]
11735 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
11736 support::token(&self.syntax, SyntaxKind::L_PAREN)
11737 }
11738 #[inline]
11739 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
11740 support::token(&self.syntax, SyntaxKind::R_PAREN)
11741 }
11742}
11743
11744#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11745pub struct ParenSelect {
11746 pub(crate) syntax: SyntaxNode,
11747}
11748impl ParenSelect {
11749 #[inline]
11750 pub fn select(&self) -> Option<SelectVariant> {
11751 support::child(&self.syntax)
11752 }
11753 #[inline]
11754 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
11755 support::token(&self.syntax, SyntaxKind::L_PAREN)
11756 }
11757 #[inline]
11758 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
11759 support::token(&self.syntax, SyntaxKind::R_PAREN)
11760 }
11761}
11762
11763#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11764pub struct Partition {
11765 pub(crate) syntax: SyntaxNode,
11766}
11767impl Partition {
11768 #[inline]
11769 pub fn partition_type(&self) -> Option<PartitionType> {
11770 support::child(&self.syntax)
11771 }
11772 #[inline]
11773 pub fn path(&self) -> Option<Path> {
11774 support::child(&self.syntax)
11775 }
11776 #[inline]
11777 pub fn partition_token(&self) -> Option<SyntaxToken> {
11778 support::token(&self.syntax, SyntaxKind::PARTITION_KW)
11779 }
11780}
11781
11782#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11783pub struct PartitionBy {
11784 pub(crate) syntax: SyntaxNode,
11785}
11786impl PartitionBy {
11787 #[inline]
11788 pub fn partition_item_list(&self) -> Option<PartitionItemList> {
11789 support::child(&self.syntax)
11790 }
11791 #[inline]
11792 pub fn by_token(&self) -> Option<SyntaxToken> {
11793 support::token(&self.syntax, SyntaxKind::BY_KW)
11794 }
11795 #[inline]
11796 pub fn ident_token(&self) -> Option<SyntaxToken> {
11797 support::token(&self.syntax, SyntaxKind::IDENT)
11798 }
11799 #[inline]
11800 pub fn partition_token(&self) -> Option<SyntaxToken> {
11801 support::token(&self.syntax, SyntaxKind::PARTITION_KW)
11802 }
11803 #[inline]
11804 pub fn range_token(&self) -> Option<SyntaxToken> {
11805 support::token(&self.syntax, SyntaxKind::RANGE_KW)
11806 }
11807}
11808
11809#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11810pub struct PartitionDefault {
11811 pub(crate) syntax: SyntaxNode,
11812}
11813impl PartitionDefault {
11814 #[inline]
11815 pub fn default_token(&self) -> Option<SyntaxToken> {
11816 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
11817 }
11818}
11819
11820#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11821pub struct PartitionForValuesFrom {
11822 pub(crate) syntax: SyntaxNode,
11823}
11824impl PartitionForValuesFrom {
11825 #[inline]
11826 pub fn exprs(&self) -> AstChildren<Expr> {
11827 support::children(&self.syntax)
11828 }
11829 #[inline]
11830 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
11831 support::token(&self.syntax, SyntaxKind::L_PAREN)
11832 }
11833 #[inline]
11834 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
11835 support::token(&self.syntax, SyntaxKind::R_PAREN)
11836 }
11837 #[inline]
11838 pub fn for_token(&self) -> Option<SyntaxToken> {
11839 support::token(&self.syntax, SyntaxKind::FOR_KW)
11840 }
11841 #[inline]
11842 pub fn from_token(&self) -> Option<SyntaxToken> {
11843 support::token(&self.syntax, SyntaxKind::FROM_KW)
11844 }
11845 #[inline]
11846 pub fn to_token(&self) -> Option<SyntaxToken> {
11847 support::token(&self.syntax, SyntaxKind::TO_KW)
11848 }
11849 #[inline]
11850 pub fn values_token(&self) -> Option<SyntaxToken> {
11851 support::token(&self.syntax, SyntaxKind::VALUES_KW)
11852 }
11853}
11854
11855#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11856pub struct PartitionForValuesIn {
11857 pub(crate) syntax: SyntaxNode,
11858}
11859impl PartitionForValuesIn {
11860 #[inline]
11861 pub fn exprs(&self) -> AstChildren<Expr> {
11862 support::children(&self.syntax)
11863 }
11864 #[inline]
11865 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
11866 support::token(&self.syntax, SyntaxKind::L_PAREN)
11867 }
11868 #[inline]
11869 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
11870 support::token(&self.syntax, SyntaxKind::R_PAREN)
11871 }
11872 #[inline]
11873 pub fn for_token(&self) -> Option<SyntaxToken> {
11874 support::token(&self.syntax, SyntaxKind::FOR_KW)
11875 }
11876 #[inline]
11877 pub fn in_token(&self) -> Option<SyntaxToken> {
11878 support::token(&self.syntax, SyntaxKind::IN_KW)
11879 }
11880 #[inline]
11881 pub fn values_token(&self) -> Option<SyntaxToken> {
11882 support::token(&self.syntax, SyntaxKind::VALUES_KW)
11883 }
11884}
11885
11886#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11887pub struct PartitionForValuesWith {
11888 pub(crate) syntax: SyntaxNode,
11889}
11890impl PartitionForValuesWith {
11891 #[inline]
11892 pub fn literal(&self) -> Option<Literal> {
11893 support::child(&self.syntax)
11894 }
11895 #[inline]
11896 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
11897 support::token(&self.syntax, SyntaxKind::L_PAREN)
11898 }
11899 #[inline]
11900 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
11901 support::token(&self.syntax, SyntaxKind::R_PAREN)
11902 }
11903 #[inline]
11904 pub fn comma_token(&self) -> Option<SyntaxToken> {
11905 support::token(&self.syntax, SyntaxKind::COMMA)
11906 }
11907 #[inline]
11908 pub fn for_token(&self) -> Option<SyntaxToken> {
11909 support::token(&self.syntax, SyntaxKind::FOR_KW)
11910 }
11911 #[inline]
11912 pub fn ident_token(&self) -> Option<SyntaxToken> {
11913 support::token(&self.syntax, SyntaxKind::IDENT)
11914 }
11915 #[inline]
11916 pub fn values_token(&self) -> Option<SyntaxToken> {
11917 support::token(&self.syntax, SyntaxKind::VALUES_KW)
11918 }
11919 #[inline]
11920 pub fn with_token(&self) -> Option<SyntaxToken> {
11921 support::token(&self.syntax, SyntaxKind::WITH_KW)
11922 }
11923}
11924
11925#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11926pub struct PartitionItem {
11927 pub(crate) syntax: SyntaxNode,
11928}
11929impl PartitionItem {
11930 #[inline]
11931 pub fn collate(&self) -> Option<Collate> {
11932 support::child(&self.syntax)
11933 }
11934 #[inline]
11935 pub fn expr(&self) -> Option<Expr> {
11936 support::child(&self.syntax)
11937 }
11938}
11939
11940#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11941pub struct PartitionItemList {
11942 pub(crate) syntax: SyntaxNode,
11943}
11944impl PartitionItemList {
11945 #[inline]
11946 pub fn partition_items(&self) -> AstChildren<PartitionItem> {
11947 support::children(&self.syntax)
11948 }
11949 #[inline]
11950 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
11951 support::token(&self.syntax, SyntaxKind::L_PAREN)
11952 }
11953 #[inline]
11954 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
11955 support::token(&self.syntax, SyntaxKind::R_PAREN)
11956 }
11957}
11958
11959#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11960pub struct PartitionList {
11961 pub(crate) syntax: SyntaxNode,
11962}
11963impl PartitionList {
11964 #[inline]
11965 pub fn partitions(&self) -> AstChildren<Partition> {
11966 support::children(&self.syntax)
11967 }
11968 #[inline]
11969 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
11970 support::token(&self.syntax, SyntaxKind::L_PAREN)
11971 }
11972 #[inline]
11973 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
11974 support::token(&self.syntax, SyntaxKind::R_PAREN)
11975 }
11976}
11977
11978#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11979pub struct PartitionOf {
11980 pub(crate) syntax: SyntaxNode,
11981}
11982impl PartitionOf {
11983 #[inline]
11984 pub fn ty(&self) -> Option<Type> {
11985 support::child(&self.syntax)
11986 }
11987 #[inline]
11988 pub fn of_token(&self) -> Option<SyntaxToken> {
11989 support::token(&self.syntax, SyntaxKind::OF_KW)
11990 }
11991 #[inline]
11992 pub fn partition_token(&self) -> Option<SyntaxToken> {
11993 support::token(&self.syntax, SyntaxKind::PARTITION_KW)
11994 }
11995}
11996
11997#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11998pub struct Path {
11999 pub(crate) syntax: SyntaxNode,
12000}
12001impl Path {
12002 #[inline]
12003 pub fn qualifier(&self) -> Option<Path> {
12004 support::child(&self.syntax)
12005 }
12006 #[inline]
12007 pub fn segment(&self) -> Option<PathSegment> {
12008 support::child(&self.syntax)
12009 }
12010 #[inline]
12011 pub fn dot_token(&self) -> Option<SyntaxToken> {
12012 support::token(&self.syntax, SyntaxKind::DOT)
12013 }
12014}
12015
12016#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12017pub struct PathSegment {
12018 pub(crate) syntax: SyntaxNode,
12019}
12020impl PathSegment {
12021 #[inline]
12022 pub fn name(&self) -> Option<Name> {
12023 support::child(&self.syntax)
12024 }
12025 #[inline]
12026 pub fn name_ref(&self) -> Option<NameRef> {
12027 support::child(&self.syntax)
12028 }
12029}
12030
12031#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12032pub struct PathType {
12033 pub(crate) syntax: SyntaxNode,
12034}
12035impl PathType {
12036 #[inline]
12037 pub fn arg_list(&self) -> Option<ArgList> {
12038 support::child(&self.syntax)
12039 }
12040 #[inline]
12041 pub fn path(&self) -> Option<Path> {
12042 support::child(&self.syntax)
12043 }
12044}
12045
12046#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12047pub struct PercentType {
12048 pub(crate) syntax: SyntaxNode,
12049}
12050impl PercentType {
12051 #[inline]
12052 pub fn percent_token(&self) -> Option<SyntaxToken> {
12053 support::token(&self.syntax, SyntaxKind::PERCENT)
12054 }
12055 #[inline]
12056 pub fn type_token(&self) -> Option<SyntaxToken> {
12057 support::token(&self.syntax, SyntaxKind::TYPE_KW)
12058 }
12059}
12060
12061#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12062pub struct PercentTypeClause {
12063 pub(crate) syntax: SyntaxNode,
12064}
12065impl PercentTypeClause {
12066 #[inline]
12067 pub fn path(&self) -> Option<Path> {
12068 support::child(&self.syntax)
12069 }
12070 #[inline]
12071 pub fn percent_type_clause(&self) -> Option<PercentTypeClause> {
12072 support::child(&self.syntax)
12073 }
12074}
12075
12076#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12077pub struct PositionFn {
12078 pub(crate) syntax: SyntaxNode,
12079}
12080impl PositionFn {
12081 #[inline]
12082 pub fn expr(&self) -> Option<Expr> {
12083 support::child(&self.syntax)
12084 }
12085 #[inline]
12086 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
12087 support::token(&self.syntax, SyntaxKind::L_PAREN)
12088 }
12089 #[inline]
12090 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
12091 support::token(&self.syntax, SyntaxKind::R_PAREN)
12092 }
12093 #[inline]
12094 pub fn in_token(&self) -> Option<SyntaxToken> {
12095 support::token(&self.syntax, SyntaxKind::IN_KW)
12096 }
12097 #[inline]
12098 pub fn position_token(&self) -> Option<SyntaxToken> {
12099 support::token(&self.syntax, SyntaxKind::POSITION_KW)
12100 }
12101}
12102
12103#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12104pub struct PostfixExpr {
12105 pub(crate) syntax: SyntaxNode,
12106}
12107impl PostfixExpr {
12108 #[inline]
12109 pub fn expr(&self) -> Option<Expr> {
12110 support::child(&self.syntax)
12111 }
12112}
12113
12114#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12115pub struct PrefixExpr {
12116 pub(crate) syntax: SyntaxNode,
12117}
12118impl PrefixExpr {
12119 #[inline]
12120 pub fn expr(&self) -> Option<Expr> {
12121 support::child(&self.syntax)
12122 }
12123}
12124
12125#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12126pub struct Prepare {
12127 pub(crate) syntax: SyntaxNode,
12128}
12129impl Prepare {
12130 #[inline]
12131 pub fn name(&self) -> Option<Name> {
12132 support::child(&self.syntax)
12133 }
12134 #[inline]
12135 pub fn preparable_stmt(&self) -> Option<PreparableStmt> {
12136 support::child(&self.syntax)
12137 }
12138 #[inline]
12139 pub fn as_token(&self) -> Option<SyntaxToken> {
12140 support::token(&self.syntax, SyntaxKind::AS_KW)
12141 }
12142 #[inline]
12143 pub fn prepare_token(&self) -> Option<SyntaxToken> {
12144 support::token(&self.syntax, SyntaxKind::PREPARE_KW)
12145 }
12146}
12147
12148#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12149pub struct PrepareTransaction {
12150 pub(crate) syntax: SyntaxNode,
12151}
12152impl PrepareTransaction {
12153 #[inline]
12154 pub fn literal(&self) -> Option<Literal> {
12155 support::child(&self.syntax)
12156 }
12157 #[inline]
12158 pub fn prepare_token(&self) -> Option<SyntaxToken> {
12159 support::token(&self.syntax, SyntaxKind::PREPARE_KW)
12160 }
12161 #[inline]
12162 pub fn transaction_token(&self) -> Option<SyntaxToken> {
12163 support::token(&self.syntax, SyntaxKind::TRANSACTION_KW)
12164 }
12165}
12166
12167#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12168pub struct PreserveRows {
12169 pub(crate) syntax: SyntaxNode,
12170}
12171impl PreserveRows {
12172 #[inline]
12173 pub fn preserve_token(&self) -> Option<SyntaxToken> {
12174 support::token(&self.syntax, SyntaxKind::PRESERVE_KW)
12175 }
12176 #[inline]
12177 pub fn rows_token(&self) -> Option<SyntaxToken> {
12178 support::token(&self.syntax, SyntaxKind::ROWS_KW)
12179 }
12180}
12181
12182#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12183pub struct PrimaryKeyConstraint {
12184 pub(crate) syntax: SyntaxNode,
12185}
12186impl PrimaryKeyConstraint {
12187 #[inline]
12188 pub fn column_list(&self) -> Option<ColumnList> {
12189 support::child(&self.syntax)
12190 }
12191 #[inline]
12192 pub fn constraint_name(&self) -> Option<ConstraintName> {
12193 support::child(&self.syntax)
12194 }
12195 #[inline]
12196 pub fn partition_item_list(&self) -> Option<PartitionItemList> {
12197 support::child(&self.syntax)
12198 }
12199 #[inline]
12200 pub fn using_index(&self) -> Option<UsingIndex> {
12201 support::child(&self.syntax)
12202 }
12203 #[inline]
12204 pub fn key_token(&self) -> Option<SyntaxToken> {
12205 support::token(&self.syntax, SyntaxKind::KEY_KW)
12206 }
12207 #[inline]
12208 pub fn primary_token(&self) -> Option<SyntaxToken> {
12209 support::token(&self.syntax, SyntaxKind::PRIMARY_KW)
12210 }
12211}
12212
12213#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12214pub struct PrivilegeTarget {
12215 pub(crate) syntax: SyntaxNode,
12216}
12217impl PrivilegeTarget {
12218 #[inline]
12219 pub fn functions_token(&self) -> Option<SyntaxToken> {
12220 support::token(&self.syntax, SyntaxKind::FUNCTIONS_KW)
12221 }
12222 #[inline]
12223 pub fn large_token(&self) -> Option<SyntaxToken> {
12224 support::token(&self.syntax, SyntaxKind::LARGE_KW)
12225 }
12226 #[inline]
12227 pub fn objects_token(&self) -> Option<SyntaxToken> {
12228 support::token(&self.syntax, SyntaxKind::OBJECTS_KW)
12229 }
12230 #[inline]
12231 pub fn routines_token(&self) -> Option<SyntaxToken> {
12232 support::token(&self.syntax, SyntaxKind::ROUTINES_KW)
12233 }
12234 #[inline]
12235 pub fn schemas_token(&self) -> Option<SyntaxToken> {
12236 support::token(&self.syntax, SyntaxKind::SCHEMAS_KW)
12237 }
12238 #[inline]
12239 pub fn sequences_token(&self) -> Option<SyntaxToken> {
12240 support::token(&self.syntax, SyntaxKind::SEQUENCES_KW)
12241 }
12242 #[inline]
12243 pub fn tables_token(&self) -> Option<SyntaxToken> {
12244 support::token(&self.syntax, SyntaxKind::TABLES_KW)
12245 }
12246 #[inline]
12247 pub fn types_token(&self) -> Option<SyntaxToken> {
12248 support::token(&self.syntax, SyntaxKind::TYPES_KW)
12249 }
12250}
12251
12252#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12253pub struct Privileges {
12254 pub(crate) syntax: SyntaxNode,
12255}
12256impl Privileges {
12257 #[inline]
12258 pub fn column_list(&self) -> Option<ColumnList> {
12259 support::child(&self.syntax)
12260 }
12261 #[inline]
12262 pub fn revoke_command_list(&self) -> Option<RevokeCommandList> {
12263 support::child(&self.syntax)
12264 }
12265 #[inline]
12266 pub fn all_token(&self) -> Option<SyntaxToken> {
12267 support::token(&self.syntax, SyntaxKind::ALL_KW)
12268 }
12269 #[inline]
12270 pub fn privileges_token(&self) -> Option<SyntaxToken> {
12271 support::token(&self.syntax, SyntaxKind::PRIVILEGES_KW)
12272 }
12273}
12274
12275#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12276pub struct PublicationObject {
12277 pub(crate) syntax: SyntaxNode,
12278}
12279impl PublicationObject {
12280 #[inline]
12281 pub fn column_list(&self) -> Option<ColumnList> {
12282 support::child(&self.syntax)
12283 }
12284 #[inline]
12285 pub fn name_ref(&self) -> Option<NameRef> {
12286 support::child(&self.syntax)
12287 }
12288 #[inline]
12289 pub fn path(&self) -> Option<Path> {
12290 support::child(&self.syntax)
12291 }
12292 #[inline]
12293 pub fn where_condition_clause(&self) -> Option<WhereConditionClause> {
12294 support::child(&self.syntax)
12295 }
12296 #[inline]
12297 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
12298 support::token(&self.syntax, SyntaxKind::L_PAREN)
12299 }
12300 #[inline]
12301 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
12302 support::token(&self.syntax, SyntaxKind::R_PAREN)
12303 }
12304 #[inline]
12305 pub fn star_token(&self) -> Option<SyntaxToken> {
12306 support::token(&self.syntax, SyntaxKind::STAR)
12307 }
12308 #[inline]
12309 pub fn current_schema_token(&self) -> Option<SyntaxToken> {
12310 support::token(&self.syntax, SyntaxKind::CURRENT_SCHEMA_KW)
12311 }
12312 #[inline]
12313 pub fn in_token(&self) -> Option<SyntaxToken> {
12314 support::token(&self.syntax, SyntaxKind::IN_KW)
12315 }
12316 #[inline]
12317 pub fn only_token(&self) -> Option<SyntaxToken> {
12318 support::token(&self.syntax, SyntaxKind::ONLY_KW)
12319 }
12320 #[inline]
12321 pub fn schema_token(&self) -> Option<SyntaxToken> {
12322 support::token(&self.syntax, SyntaxKind::SCHEMA_KW)
12323 }
12324 #[inline]
12325 pub fn table_token(&self) -> Option<SyntaxToken> {
12326 support::token(&self.syntax, SyntaxKind::TABLE_KW)
12327 }
12328 #[inline]
12329 pub fn tables_token(&self) -> Option<SyntaxToken> {
12330 support::token(&self.syntax, SyntaxKind::TABLES_KW)
12331 }
12332}
12333
12334#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12335pub struct ReadCommitted {
12336 pub(crate) syntax: SyntaxNode,
12337}
12338impl ReadCommitted {
12339 #[inline]
12340 pub fn committed_token(&self) -> Option<SyntaxToken> {
12341 support::token(&self.syntax, SyntaxKind::COMMITTED_KW)
12342 }
12343 #[inline]
12344 pub fn isolation_token(&self) -> Option<SyntaxToken> {
12345 support::token(&self.syntax, SyntaxKind::ISOLATION_KW)
12346 }
12347 #[inline]
12348 pub fn level_token(&self) -> Option<SyntaxToken> {
12349 support::token(&self.syntax, SyntaxKind::LEVEL_KW)
12350 }
12351 #[inline]
12352 pub fn read_token(&self) -> Option<SyntaxToken> {
12353 support::token(&self.syntax, SyntaxKind::READ_KW)
12354 }
12355}
12356
12357#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12358pub struct ReadOnly {
12359 pub(crate) syntax: SyntaxNode,
12360}
12361impl ReadOnly {
12362 #[inline]
12363 pub fn only_token(&self) -> Option<SyntaxToken> {
12364 support::token(&self.syntax, SyntaxKind::ONLY_KW)
12365 }
12366 #[inline]
12367 pub fn read_token(&self) -> Option<SyntaxToken> {
12368 support::token(&self.syntax, SyntaxKind::READ_KW)
12369 }
12370}
12371
12372#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12373pub struct ReadUncommitted {
12374 pub(crate) syntax: SyntaxNode,
12375}
12376impl ReadUncommitted {
12377 #[inline]
12378 pub fn isolation_token(&self) -> Option<SyntaxToken> {
12379 support::token(&self.syntax, SyntaxKind::ISOLATION_KW)
12380 }
12381 #[inline]
12382 pub fn level_token(&self) -> Option<SyntaxToken> {
12383 support::token(&self.syntax, SyntaxKind::LEVEL_KW)
12384 }
12385 #[inline]
12386 pub fn read_token(&self) -> Option<SyntaxToken> {
12387 support::token(&self.syntax, SyntaxKind::READ_KW)
12388 }
12389 #[inline]
12390 pub fn uncommitted_token(&self) -> Option<SyntaxToken> {
12391 support::token(&self.syntax, SyntaxKind::UNCOMMITTED_KW)
12392 }
12393}
12394
12395#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12396pub struct ReadWrite {
12397 pub(crate) syntax: SyntaxNode,
12398}
12399impl ReadWrite {
12400 #[inline]
12401 pub fn read_token(&self) -> Option<SyntaxToken> {
12402 support::token(&self.syntax, SyntaxKind::READ_KW)
12403 }
12404 #[inline]
12405 pub fn write_token(&self) -> Option<SyntaxToken> {
12406 support::token(&self.syntax, SyntaxKind::WRITE_KW)
12407 }
12408}
12409
12410#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12411pub struct Reassign {
12412 pub(crate) syntax: SyntaxNode,
12413}
12414impl Reassign {
12415 #[inline]
12416 pub fn new_roles(&self) -> Option<RoleList> {
12417 support::child(&self.syntax)
12418 }
12419 #[inline]
12420 pub fn old_roles(&self) -> Option<RoleList> {
12421 support::child(&self.syntax)
12422 }
12423 #[inline]
12424 pub fn by_token(&self) -> Option<SyntaxToken> {
12425 support::token(&self.syntax, SyntaxKind::BY_KW)
12426 }
12427 #[inline]
12428 pub fn owned_token(&self) -> Option<SyntaxToken> {
12429 support::token(&self.syntax, SyntaxKind::OWNED_KW)
12430 }
12431 #[inline]
12432 pub fn reassign_token(&self) -> Option<SyntaxToken> {
12433 support::token(&self.syntax, SyntaxKind::REASSIGN_KW)
12434 }
12435 #[inline]
12436 pub fn to_token(&self) -> Option<SyntaxToken> {
12437 support::token(&self.syntax, SyntaxKind::TO_KW)
12438 }
12439}
12440
12441#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12442pub struct ReferencesConstraint {
12443 pub(crate) syntax: SyntaxNode,
12444}
12445impl ReferencesConstraint {
12446 #[inline]
12447 pub fn column(&self) -> Option<NameRef> {
12448 support::child(&self.syntax)
12449 }
12450 #[inline]
12451 pub fn constraint_name(&self) -> Option<ConstraintName> {
12452 support::child(&self.syntax)
12453 }
12454 #[inline]
12455 pub fn match_type(&self) -> Option<MatchType> {
12456 support::child(&self.syntax)
12457 }
12458 #[inline]
12459 pub fn on_delete_action(&self) -> Option<OnDeleteAction> {
12460 support::child(&self.syntax)
12461 }
12462 #[inline]
12463 pub fn on_update_action(&self) -> Option<OnUpdateAction> {
12464 support::child(&self.syntax)
12465 }
12466 #[inline]
12467 pub fn table(&self) -> Option<Path> {
12468 support::child(&self.syntax)
12469 }
12470 #[inline]
12471 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
12472 support::token(&self.syntax, SyntaxKind::L_PAREN)
12473 }
12474 #[inline]
12475 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
12476 support::token(&self.syntax, SyntaxKind::R_PAREN)
12477 }
12478 #[inline]
12479 pub fn references_token(&self) -> Option<SyntaxToken> {
12480 support::token(&self.syntax, SyntaxKind::REFERENCES_KW)
12481 }
12482}
12483
12484#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12485pub struct Referencing {
12486 pub(crate) syntax: SyntaxNode,
12487}
12488impl Referencing {
12489 #[inline]
12490 pub fn referencing_tables(&self) -> AstChildren<ReferencingTable> {
12491 support::children(&self.syntax)
12492 }
12493 #[inline]
12494 pub fn referencing_token(&self) -> Option<SyntaxToken> {
12495 support::token(&self.syntax, SyntaxKind::REFERENCING_KW)
12496 }
12497}
12498
12499#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12500pub struct ReferencingTable {
12501 pub(crate) syntax: SyntaxNode,
12502}
12503impl ReferencingTable {
12504 #[inline]
12505 pub fn name_ref(&self) -> Option<NameRef> {
12506 support::child(&self.syntax)
12507 }
12508 #[inline]
12509 pub fn as_token(&self) -> Option<SyntaxToken> {
12510 support::token(&self.syntax, SyntaxKind::AS_KW)
12511 }
12512 #[inline]
12513 pub fn new_token(&self) -> Option<SyntaxToken> {
12514 support::token(&self.syntax, SyntaxKind::NEW_KW)
12515 }
12516 #[inline]
12517 pub fn old_token(&self) -> Option<SyntaxToken> {
12518 support::token(&self.syntax, SyntaxKind::OLD_KW)
12519 }
12520 #[inline]
12521 pub fn table_token(&self) -> Option<SyntaxToken> {
12522 support::token(&self.syntax, SyntaxKind::TABLE_KW)
12523 }
12524}
12525
12526#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12527pub struct Refresh {
12528 pub(crate) syntax: SyntaxNode,
12529}
12530impl Refresh {
12531 #[inline]
12532 pub fn path(&self) -> Option<Path> {
12533 support::child(&self.syntax)
12534 }
12535 #[inline]
12536 pub fn with_data(&self) -> Option<WithData> {
12537 support::child(&self.syntax)
12538 }
12539 #[inline]
12540 pub fn with_no_data(&self) -> Option<WithNoData> {
12541 support::child(&self.syntax)
12542 }
12543 #[inline]
12544 pub fn concurrently_token(&self) -> Option<SyntaxToken> {
12545 support::token(&self.syntax, SyntaxKind::CONCURRENTLY_KW)
12546 }
12547 #[inline]
12548 pub fn materialized_token(&self) -> Option<SyntaxToken> {
12549 support::token(&self.syntax, SyntaxKind::MATERIALIZED_KW)
12550 }
12551 #[inline]
12552 pub fn refresh_token(&self) -> Option<SyntaxToken> {
12553 support::token(&self.syntax, SyntaxKind::REFRESH_KW)
12554 }
12555 #[inline]
12556 pub fn view_token(&self) -> Option<SyntaxToken> {
12557 support::token(&self.syntax, SyntaxKind::VIEW_KW)
12558 }
12559}
12560
12561#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12562pub struct RefreshCollationVersion {
12563 pub(crate) syntax: SyntaxNode,
12564}
12565impl RefreshCollationVersion {
12566 #[inline]
12567 pub fn collation_token(&self) -> Option<SyntaxToken> {
12568 support::token(&self.syntax, SyntaxKind::COLLATION_KW)
12569 }
12570 #[inline]
12571 pub fn refresh_token(&self) -> Option<SyntaxToken> {
12572 support::token(&self.syntax, SyntaxKind::REFRESH_KW)
12573 }
12574 #[inline]
12575 pub fn version_token(&self) -> Option<SyntaxToken> {
12576 support::token(&self.syntax, SyntaxKind::VERSION_KW)
12577 }
12578}
12579
12580#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12581pub struct RefreshVersion {
12582 pub(crate) syntax: SyntaxNode,
12583}
12584impl RefreshVersion {
12585 #[inline]
12586 pub fn refresh_token(&self) -> Option<SyntaxToken> {
12587 support::token(&self.syntax, SyntaxKind::REFRESH_KW)
12588 }
12589 #[inline]
12590 pub fn version_token(&self) -> Option<SyntaxToken> {
12591 support::token(&self.syntax, SyntaxKind::VERSION_KW)
12592 }
12593}
12594
12595#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12596pub struct Reindex {
12597 pub(crate) syntax: SyntaxNode,
12598}
12599impl Reindex {
12600 #[inline]
12601 pub fn path(&self) -> Option<Path> {
12602 support::child(&self.syntax)
12603 }
12604 #[inline]
12605 pub fn database_token(&self) -> Option<SyntaxToken> {
12606 support::token(&self.syntax, SyntaxKind::DATABASE_KW)
12607 }
12608 #[inline]
12609 pub fn index_token(&self) -> Option<SyntaxToken> {
12610 support::token(&self.syntax, SyntaxKind::INDEX_KW)
12611 }
12612 #[inline]
12613 pub fn reindex_token(&self) -> Option<SyntaxToken> {
12614 support::token(&self.syntax, SyntaxKind::REINDEX_KW)
12615 }
12616 #[inline]
12617 pub fn schema_token(&self) -> Option<SyntaxToken> {
12618 support::token(&self.syntax, SyntaxKind::SCHEMA_KW)
12619 }
12620 #[inline]
12621 pub fn system_token(&self) -> Option<SyntaxToken> {
12622 support::token(&self.syntax, SyntaxKind::SYSTEM_KW)
12623 }
12624 #[inline]
12625 pub fn table_token(&self) -> Option<SyntaxToken> {
12626 support::token(&self.syntax, SyntaxKind::TABLE_KW)
12627 }
12628}
12629
12630#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12631pub struct RelationName {
12632 pub(crate) syntax: SyntaxNode,
12633}
12634impl RelationName {
12635 #[inline]
12636 pub fn path(&self) -> Option<Path> {
12637 support::child(&self.syntax)
12638 }
12639 #[inline]
12640 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
12641 support::token(&self.syntax, SyntaxKind::L_PAREN)
12642 }
12643 #[inline]
12644 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
12645 support::token(&self.syntax, SyntaxKind::R_PAREN)
12646 }
12647 #[inline]
12648 pub fn star_token(&self) -> Option<SyntaxToken> {
12649 support::token(&self.syntax, SyntaxKind::STAR)
12650 }
12651 #[inline]
12652 pub fn only_token(&self) -> Option<SyntaxToken> {
12653 support::token(&self.syntax, SyntaxKind::ONLY_KW)
12654 }
12655}
12656
12657#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12658pub struct ReleaseSavepoint {
12659 pub(crate) syntax: SyntaxNode,
12660}
12661impl ReleaseSavepoint {
12662 #[inline]
12663 pub fn name_ref(&self) -> Option<NameRef> {
12664 support::child(&self.syntax)
12665 }
12666 #[inline]
12667 pub fn release_token(&self) -> Option<SyntaxToken> {
12668 support::token(&self.syntax, SyntaxKind::RELEASE_KW)
12669 }
12670 #[inline]
12671 pub fn savepoint_token(&self) -> Option<SyntaxToken> {
12672 support::token(&self.syntax, SyntaxKind::SAVEPOINT_KW)
12673 }
12674}
12675
12676#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12677pub struct RenameColumn {
12678 pub(crate) syntax: SyntaxNode,
12679}
12680impl RenameColumn {
12681 #[inline]
12682 pub fn column_token(&self) -> Option<SyntaxToken> {
12683 support::token(&self.syntax, SyntaxKind::COLUMN_KW)
12684 }
12685 #[inline]
12686 pub fn rename_token(&self) -> Option<SyntaxToken> {
12687 support::token(&self.syntax, SyntaxKind::RENAME_KW)
12688 }
12689 #[inline]
12690 pub fn to_token(&self) -> Option<SyntaxToken> {
12691 support::token(&self.syntax, SyntaxKind::TO_KW)
12692 }
12693}
12694
12695#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12696pub struct RenameConstraint {
12697 pub(crate) syntax: SyntaxNode,
12698}
12699impl RenameConstraint {
12700 #[inline]
12701 pub fn name(&self) -> Option<Name> {
12702 support::child(&self.syntax)
12703 }
12704 #[inline]
12705 pub fn name_ref(&self) -> Option<NameRef> {
12706 support::child(&self.syntax)
12707 }
12708 #[inline]
12709 pub fn constraint_token(&self) -> Option<SyntaxToken> {
12710 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
12711 }
12712 #[inline]
12713 pub fn rename_token(&self) -> Option<SyntaxToken> {
12714 support::token(&self.syntax, SyntaxKind::RENAME_KW)
12715 }
12716 #[inline]
12717 pub fn to_token(&self) -> Option<SyntaxToken> {
12718 support::token(&self.syntax, SyntaxKind::TO_KW)
12719 }
12720}
12721
12722#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12723pub struct RenameTo {
12724 pub(crate) syntax: SyntaxNode,
12725}
12726impl RenameTo {
12727 #[inline]
12728 pub fn name(&self) -> Option<Name> {
12729 support::child(&self.syntax)
12730 }
12731 #[inline]
12732 pub fn rename_token(&self) -> Option<SyntaxToken> {
12733 support::token(&self.syntax, SyntaxKind::RENAME_KW)
12734 }
12735 #[inline]
12736 pub fn to_token(&self) -> Option<SyntaxToken> {
12737 support::token(&self.syntax, SyntaxKind::TO_KW)
12738 }
12739}
12740
12741#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12742pub struct RepeatableClause {
12743 pub(crate) syntax: SyntaxNode,
12744}
12745impl RepeatableClause {
12746 #[inline]
12747 pub fn expr(&self) -> Option<Expr> {
12748 support::child(&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 repeatable_token(&self) -> Option<SyntaxToken> {
12760 support::token(&self.syntax, SyntaxKind::REPEATABLE_KW)
12761 }
12762}
12763
12764#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12765pub struct RepeatableRead {
12766 pub(crate) syntax: SyntaxNode,
12767}
12768impl RepeatableRead {
12769 #[inline]
12770 pub fn isolation_token(&self) -> Option<SyntaxToken> {
12771 support::token(&self.syntax, SyntaxKind::ISOLATION_KW)
12772 }
12773 #[inline]
12774 pub fn level_token(&self) -> Option<SyntaxToken> {
12775 support::token(&self.syntax, SyntaxKind::LEVEL_KW)
12776 }
12777 #[inline]
12778 pub fn read_token(&self) -> Option<SyntaxToken> {
12779 support::token(&self.syntax, SyntaxKind::READ_KW)
12780 }
12781 #[inline]
12782 pub fn repeatable_token(&self) -> Option<SyntaxToken> {
12783 support::token(&self.syntax, SyntaxKind::REPEATABLE_KW)
12784 }
12785}
12786
12787#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12788pub struct ReplicaIdentity {
12789 pub(crate) syntax: SyntaxNode,
12790}
12791impl ReplicaIdentity {
12792 #[inline]
12793 pub fn identity_token(&self) -> Option<SyntaxToken> {
12794 support::token(&self.syntax, SyntaxKind::IDENTITY_KW)
12795 }
12796 #[inline]
12797 pub fn replica_token(&self) -> Option<SyntaxToken> {
12798 support::token(&self.syntax, SyntaxKind::REPLICA_KW)
12799 }
12800}
12801
12802#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12803pub struct Reset {
12804 pub(crate) syntax: SyntaxNode,
12805}
12806impl Reset {
12807 #[inline]
12808 pub fn name_ref(&self) -> Option<NameRef> {
12809 support::child(&self.syntax)
12810 }
12811 #[inline]
12812 pub fn all_token(&self) -> Option<SyntaxToken> {
12813 support::token(&self.syntax, SyntaxKind::ALL_KW)
12814 }
12815 #[inline]
12816 pub fn reset_token(&self) -> Option<SyntaxToken> {
12817 support::token(&self.syntax, SyntaxKind::RESET_KW)
12818 }
12819}
12820
12821#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12822pub struct ResetConfigParam {
12823 pub(crate) syntax: SyntaxNode,
12824}
12825impl ResetConfigParam {
12826 #[inline]
12827 pub fn path(&self) -> Option<Path> {
12828 support::child(&self.syntax)
12829 }
12830 #[inline]
12831 pub fn all_token(&self) -> Option<SyntaxToken> {
12832 support::token(&self.syntax, SyntaxKind::ALL_KW)
12833 }
12834 #[inline]
12835 pub fn reset_token(&self) -> Option<SyntaxToken> {
12836 support::token(&self.syntax, SyntaxKind::RESET_KW)
12837 }
12838}
12839
12840#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12841pub struct ResetFuncOption {
12842 pub(crate) syntax: SyntaxNode,
12843}
12844impl ResetFuncOption {
12845 #[inline]
12846 pub fn name_ref(&self) -> Option<NameRef> {
12847 support::child(&self.syntax)
12848 }
12849 #[inline]
12850 pub fn reset_token(&self) -> Option<SyntaxToken> {
12851 support::token(&self.syntax, SyntaxKind::RESET_KW)
12852 }
12853}
12854
12855#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12856pub struct ResetOptions {
12857 pub(crate) syntax: SyntaxNode,
12858}
12859impl ResetOptions {
12860 #[inline]
12861 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
12862 support::token(&self.syntax, SyntaxKind::L_PAREN)
12863 }
12864 #[inline]
12865 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
12866 support::token(&self.syntax, SyntaxKind::R_PAREN)
12867 }
12868 #[inline]
12869 pub fn reset_token(&self) -> Option<SyntaxToken> {
12870 support::token(&self.syntax, SyntaxKind::RESET_KW)
12871 }
12872}
12873
12874#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12875pub struct ResetSessionAuth {
12876 pub(crate) syntax: SyntaxNode,
12877}
12878impl ResetSessionAuth {
12879 #[inline]
12880 pub fn authorization_token(&self) -> Option<SyntaxToken> {
12881 support::token(&self.syntax, SyntaxKind::AUTHORIZATION_KW)
12882 }
12883 #[inline]
12884 pub fn reset_token(&self) -> Option<SyntaxToken> {
12885 support::token(&self.syntax, SyntaxKind::RESET_KW)
12886 }
12887 #[inline]
12888 pub fn session_token(&self) -> Option<SyntaxToken> {
12889 support::token(&self.syntax, SyntaxKind::SESSION_KW)
12890 }
12891}
12892
12893#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12894pub struct Restart {
12895 pub(crate) syntax: SyntaxNode,
12896}
12897impl Restart {
12898 #[inline]
12899 pub fn restart_token(&self) -> Option<SyntaxToken> {
12900 support::token(&self.syntax, SyntaxKind::RESTART_KW)
12901 }
12902 #[inline]
12903 pub fn with_token(&self) -> Option<SyntaxToken> {
12904 support::token(&self.syntax, SyntaxKind::WITH_KW)
12905 }
12906}
12907
12908#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12909pub struct Restrict {
12910 pub(crate) syntax: SyntaxNode,
12911}
12912impl Restrict {
12913 #[inline]
12914 pub fn restrict_token(&self) -> Option<SyntaxToken> {
12915 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
12916 }
12917}
12918
12919#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12920pub struct RetType {
12921 pub(crate) syntax: SyntaxNode,
12922}
12923impl RetType {
12924 #[inline]
12925 pub fn ty(&self) -> Option<Type> {
12926 support::child(&self.syntax)
12927 }
12928 #[inline]
12929 pub fn returns_token(&self) -> Option<SyntaxToken> {
12930 support::token(&self.syntax, SyntaxKind::RETURNS_KW)
12931 }
12932}
12933
12934#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12935pub struct ReturnFuncOption {
12936 pub(crate) syntax: SyntaxNode,
12937}
12938impl ReturnFuncOption {
12939 #[inline]
12940 pub fn expr(&self) -> Option<Expr> {
12941 support::child(&self.syntax)
12942 }
12943 #[inline]
12944 pub fn return_token(&self) -> Option<SyntaxToken> {
12945 support::token(&self.syntax, SyntaxKind::RETURN_KW)
12946 }
12947}
12948
12949#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12950pub struct ReturningClause {
12951 pub(crate) syntax: SyntaxNode,
12952}
12953impl ReturningClause {
12954 #[inline]
12955 pub fn returning_option_list(&self) -> Option<ReturningOptionList> {
12956 support::child(&self.syntax)
12957 }
12958 #[inline]
12959 pub fn target_list(&self) -> Option<TargetList> {
12960 support::child(&self.syntax)
12961 }
12962 #[inline]
12963 pub fn returning_token(&self) -> Option<SyntaxToken> {
12964 support::token(&self.syntax, SyntaxKind::RETURNING_KW)
12965 }
12966}
12967
12968#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12969pub struct ReturningOption {
12970 pub(crate) syntax: SyntaxNode,
12971}
12972impl ReturningOption {
12973 #[inline]
12974 pub fn name(&self) -> Option<Name> {
12975 support::child(&self.syntax)
12976 }
12977 #[inline]
12978 pub fn as_token(&self) -> Option<SyntaxToken> {
12979 support::token(&self.syntax, SyntaxKind::AS_KW)
12980 }
12981 #[inline]
12982 pub fn new_token(&self) -> Option<SyntaxToken> {
12983 support::token(&self.syntax, SyntaxKind::NEW_KW)
12984 }
12985 #[inline]
12986 pub fn old_token(&self) -> Option<SyntaxToken> {
12987 support::token(&self.syntax, SyntaxKind::OLD_KW)
12988 }
12989}
12990
12991#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12992pub struct ReturningOptionList {
12993 pub(crate) syntax: SyntaxNode,
12994}
12995impl ReturningOptionList {
12996 #[inline]
12997 pub fn returning_options(&self) -> AstChildren<ReturningOption> {
12998 support::children(&self.syntax)
12999 }
13000 #[inline]
13001 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
13002 support::token(&self.syntax, SyntaxKind::L_PAREN)
13003 }
13004 #[inline]
13005 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
13006 support::token(&self.syntax, SyntaxKind::R_PAREN)
13007 }
13008 #[inline]
13009 pub fn with_token(&self) -> Option<SyntaxToken> {
13010 support::token(&self.syntax, SyntaxKind::WITH_KW)
13011 }
13012}
13013
13014#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13015pub struct Revoke {
13016 pub(crate) syntax: SyntaxNode,
13017}
13018impl Revoke {
13019 #[inline]
13020 pub fn name_refs(&self) -> AstChildren<NameRef> {
13021 support::children(&self.syntax)
13022 }
13023 #[inline]
13024 pub fn paths(&self) -> AstChildren<Path> {
13025 support::children(&self.syntax)
13026 }
13027 #[inline]
13028 pub fn revoke_command_list(&self) -> Option<RevokeCommandList> {
13029 support::child(&self.syntax)
13030 }
13031 #[inline]
13032 pub fn role(&self) -> Option<Role> {
13033 support::child(&self.syntax)
13034 }
13035 #[inline]
13036 pub fn role_list(&self) -> Option<RoleList> {
13037 support::child(&self.syntax)
13038 }
13039 #[inline]
13040 pub fn all_token(&self) -> Option<SyntaxToken> {
13041 support::token(&self.syntax, SyntaxKind::ALL_KW)
13042 }
13043 #[inline]
13044 pub fn by_token(&self) -> Option<SyntaxToken> {
13045 support::token(&self.syntax, SyntaxKind::BY_KW)
13046 }
13047 #[inline]
13048 pub fn cascade_token(&self) -> Option<SyntaxToken> {
13049 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
13050 }
13051 #[inline]
13052 pub fn for_token(&self) -> Option<SyntaxToken> {
13053 support::token(&self.syntax, SyntaxKind::FOR_KW)
13054 }
13055 #[inline]
13056 pub fn from_token(&self) -> Option<SyntaxToken> {
13057 support::token(&self.syntax, SyntaxKind::FROM_KW)
13058 }
13059 #[inline]
13060 pub fn grant_token(&self) -> Option<SyntaxToken> {
13061 support::token(&self.syntax, SyntaxKind::GRANT_KW)
13062 }
13063 #[inline]
13064 pub fn granted_token(&self) -> Option<SyntaxToken> {
13065 support::token(&self.syntax, SyntaxKind::GRANTED_KW)
13066 }
13067 #[inline]
13068 pub fn in_token(&self) -> Option<SyntaxToken> {
13069 support::token(&self.syntax, SyntaxKind::IN_KW)
13070 }
13071 #[inline]
13072 pub fn on_token(&self) -> Option<SyntaxToken> {
13073 support::token(&self.syntax, SyntaxKind::ON_KW)
13074 }
13075 #[inline]
13076 pub fn option_token(&self) -> Option<SyntaxToken> {
13077 support::token(&self.syntax, SyntaxKind::OPTION_KW)
13078 }
13079 #[inline]
13080 pub fn privileges_token(&self) -> Option<SyntaxToken> {
13081 support::token(&self.syntax, SyntaxKind::PRIVILEGES_KW)
13082 }
13083 #[inline]
13084 pub fn restrict_token(&self) -> Option<SyntaxToken> {
13085 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
13086 }
13087 #[inline]
13088 pub fn revoke_token(&self) -> Option<SyntaxToken> {
13089 support::token(&self.syntax, SyntaxKind::REVOKE_KW)
13090 }
13091 #[inline]
13092 pub fn schema_token(&self) -> Option<SyntaxToken> {
13093 support::token(&self.syntax, SyntaxKind::SCHEMA_KW)
13094 }
13095 #[inline]
13096 pub fn table_token(&self) -> Option<SyntaxToken> {
13097 support::token(&self.syntax, SyntaxKind::TABLE_KW)
13098 }
13099 #[inline]
13100 pub fn tables_token(&self) -> Option<SyntaxToken> {
13101 support::token(&self.syntax, SyntaxKind::TABLES_KW)
13102 }
13103}
13104
13105#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13106pub struct RevokeCommand {
13107 pub(crate) syntax: SyntaxNode,
13108}
13109impl RevokeCommand {
13110 #[inline]
13111 pub fn role(&self) -> Option<Role> {
13112 support::child(&self.syntax)
13113 }
13114 #[inline]
13115 pub fn all_token(&self) -> Option<SyntaxToken> {
13116 support::token(&self.syntax, SyntaxKind::ALL_KW)
13117 }
13118 #[inline]
13119 pub fn alter_token(&self) -> Option<SyntaxToken> {
13120 support::token(&self.syntax, SyntaxKind::ALTER_KW)
13121 }
13122 #[inline]
13123 pub fn create_token(&self) -> Option<SyntaxToken> {
13124 support::token(&self.syntax, SyntaxKind::CREATE_KW)
13125 }
13126 #[inline]
13127 pub fn delete_token(&self) -> Option<SyntaxToken> {
13128 support::token(&self.syntax, SyntaxKind::DELETE_KW)
13129 }
13130 #[inline]
13131 pub fn execute_token(&self) -> Option<SyntaxToken> {
13132 support::token(&self.syntax, SyntaxKind::EXECUTE_KW)
13133 }
13134 #[inline]
13135 pub fn ident_token(&self) -> Option<SyntaxToken> {
13136 support::token(&self.syntax, SyntaxKind::IDENT)
13137 }
13138 #[inline]
13139 pub fn insert_token(&self) -> Option<SyntaxToken> {
13140 support::token(&self.syntax, SyntaxKind::INSERT_KW)
13141 }
13142 #[inline]
13143 pub fn references_token(&self) -> Option<SyntaxToken> {
13144 support::token(&self.syntax, SyntaxKind::REFERENCES_KW)
13145 }
13146 #[inline]
13147 pub fn select_token(&self) -> Option<SyntaxToken> {
13148 support::token(&self.syntax, SyntaxKind::SELECT_KW)
13149 }
13150 #[inline]
13151 pub fn system_token(&self) -> Option<SyntaxToken> {
13152 support::token(&self.syntax, SyntaxKind::SYSTEM_KW)
13153 }
13154 #[inline]
13155 pub fn temp_token(&self) -> Option<SyntaxToken> {
13156 support::token(&self.syntax, SyntaxKind::TEMP_KW)
13157 }
13158 #[inline]
13159 pub fn temporary_token(&self) -> Option<SyntaxToken> {
13160 support::token(&self.syntax, SyntaxKind::TEMPORARY_KW)
13161 }
13162 #[inline]
13163 pub fn trigger_token(&self) -> Option<SyntaxToken> {
13164 support::token(&self.syntax, SyntaxKind::TRIGGER_KW)
13165 }
13166 #[inline]
13167 pub fn truncate_token(&self) -> Option<SyntaxToken> {
13168 support::token(&self.syntax, SyntaxKind::TRUNCATE_KW)
13169 }
13170 #[inline]
13171 pub fn update_token(&self) -> Option<SyntaxToken> {
13172 support::token(&self.syntax, SyntaxKind::UPDATE_KW)
13173 }
13174}
13175
13176#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13177pub struct RevokeCommandList {
13178 pub(crate) syntax: SyntaxNode,
13179}
13180impl RevokeCommandList {
13181 #[inline]
13182 pub fn revoke_commands(&self) -> AstChildren<RevokeCommand> {
13183 support::children(&self.syntax)
13184 }
13185}
13186
13187#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13188pub struct RevokeDefaultPrivileges {
13189 pub(crate) syntax: SyntaxNode,
13190}
13191impl RevokeDefaultPrivileges {
13192 #[inline]
13193 pub fn privilege_target(&self) -> Option<PrivilegeTarget> {
13194 support::child(&self.syntax)
13195 }
13196 #[inline]
13197 pub fn privileges(&self) -> Option<Privileges> {
13198 support::child(&self.syntax)
13199 }
13200 #[inline]
13201 pub fn role_list(&self) -> Option<RoleList> {
13202 support::child(&self.syntax)
13203 }
13204 #[inline]
13205 pub fn cascade_token(&self) -> Option<SyntaxToken> {
13206 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
13207 }
13208 #[inline]
13209 pub fn for_token(&self) -> Option<SyntaxToken> {
13210 support::token(&self.syntax, SyntaxKind::FOR_KW)
13211 }
13212 #[inline]
13213 pub fn from_token(&self) -> Option<SyntaxToken> {
13214 support::token(&self.syntax, SyntaxKind::FROM_KW)
13215 }
13216 #[inline]
13217 pub fn grant_token(&self) -> Option<SyntaxToken> {
13218 support::token(&self.syntax, SyntaxKind::GRANT_KW)
13219 }
13220 #[inline]
13221 pub fn on_token(&self) -> Option<SyntaxToken> {
13222 support::token(&self.syntax, SyntaxKind::ON_KW)
13223 }
13224 #[inline]
13225 pub fn option_token(&self) -> Option<SyntaxToken> {
13226 support::token(&self.syntax, SyntaxKind::OPTION_KW)
13227 }
13228 #[inline]
13229 pub fn restrict_token(&self) -> Option<SyntaxToken> {
13230 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
13231 }
13232 #[inline]
13233 pub fn revoke_token(&self) -> Option<SyntaxToken> {
13234 support::token(&self.syntax, SyntaxKind::REVOKE_KW)
13235 }
13236}
13237
13238#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13239pub struct Role {
13240 pub(crate) syntax: SyntaxNode,
13241}
13242impl Role {
13243 #[inline]
13244 pub fn name_ref(&self) -> Option<NameRef> {
13245 support::child(&self.syntax)
13246 }
13247 #[inline]
13248 pub fn current_role_token(&self) -> Option<SyntaxToken> {
13249 support::token(&self.syntax, SyntaxKind::CURRENT_ROLE_KW)
13250 }
13251 #[inline]
13252 pub fn current_user_token(&self) -> Option<SyntaxToken> {
13253 support::token(&self.syntax, SyntaxKind::CURRENT_USER_KW)
13254 }
13255 #[inline]
13256 pub fn group_token(&self) -> Option<SyntaxToken> {
13257 support::token(&self.syntax, SyntaxKind::GROUP_KW)
13258 }
13259 #[inline]
13260 pub fn session_user_token(&self) -> Option<SyntaxToken> {
13261 support::token(&self.syntax, SyntaxKind::SESSION_USER_KW)
13262 }
13263}
13264
13265#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13266pub struct RoleList {
13267 pub(crate) syntax: SyntaxNode,
13268}
13269impl RoleList {
13270 #[inline]
13271 pub fn roles(&self) -> AstChildren<Role> {
13272 support::children(&self.syntax)
13273 }
13274}
13275
13276#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13277pub struct RoleOption {
13278 pub(crate) syntax: SyntaxNode,
13279}
13280impl RoleOption {
13281 #[inline]
13282 pub fn inherit_token(&self) -> Option<SyntaxToken> {
13283 support::token(&self.syntax, SyntaxKind::INHERIT_KW)
13284 }
13285}
13286
13287#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13288pub struct RoleOptionList {
13289 pub(crate) syntax: SyntaxNode,
13290}
13291impl RoleOptionList {
13292 #[inline]
13293 pub fn role_options(&self) -> AstChildren<RoleOption> {
13294 support::children(&self.syntax)
13295 }
13296 #[inline]
13297 pub fn with_token(&self) -> Option<SyntaxToken> {
13298 support::token(&self.syntax, SyntaxKind::WITH_KW)
13299 }
13300}
13301
13302#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13303pub struct Rollback {
13304 pub(crate) syntax: SyntaxNode,
13305}
13306impl Rollback {
13307 #[inline]
13308 pub fn literal(&self) -> Option<Literal> {
13309 support::child(&self.syntax)
13310 }
13311 #[inline]
13312 pub fn name_ref(&self) -> Option<NameRef> {
13313 support::child(&self.syntax)
13314 }
13315 #[inline]
13316 pub fn abort_token(&self) -> Option<SyntaxToken> {
13317 support::token(&self.syntax, SyntaxKind::ABORT_KW)
13318 }
13319 #[inline]
13320 pub fn and_token(&self) -> Option<SyntaxToken> {
13321 support::token(&self.syntax, SyntaxKind::AND_KW)
13322 }
13323 #[inline]
13324 pub fn chain_token(&self) -> Option<SyntaxToken> {
13325 support::token(&self.syntax, SyntaxKind::CHAIN_KW)
13326 }
13327 #[inline]
13328 pub fn no_token(&self) -> Option<SyntaxToken> {
13329 support::token(&self.syntax, SyntaxKind::NO_KW)
13330 }
13331 #[inline]
13332 pub fn prepared_token(&self) -> Option<SyntaxToken> {
13333 support::token(&self.syntax, SyntaxKind::PREPARED_KW)
13334 }
13335 #[inline]
13336 pub fn rollback_token(&self) -> Option<SyntaxToken> {
13337 support::token(&self.syntax, SyntaxKind::ROLLBACK_KW)
13338 }
13339 #[inline]
13340 pub fn savepoint_token(&self) -> Option<SyntaxToken> {
13341 support::token(&self.syntax, SyntaxKind::SAVEPOINT_KW)
13342 }
13343 #[inline]
13344 pub fn to_token(&self) -> Option<SyntaxToken> {
13345 support::token(&self.syntax, SyntaxKind::TO_KW)
13346 }
13347 #[inline]
13348 pub fn transaction_token(&self) -> Option<SyntaxToken> {
13349 support::token(&self.syntax, SyntaxKind::TRANSACTION_KW)
13350 }
13351 #[inline]
13352 pub fn work_token(&self) -> Option<SyntaxToken> {
13353 support::token(&self.syntax, SyntaxKind::WORK_KW)
13354 }
13355}
13356
13357#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13358pub struct Row {
13359 pub(crate) syntax: SyntaxNode,
13360}
13361impl Row {
13362 #[inline]
13363 pub fn exprs(&self) -> AstChildren<Expr> {
13364 support::children(&self.syntax)
13365 }
13366}
13367
13368#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13369pub struct RowList {
13370 pub(crate) syntax: SyntaxNode,
13371}
13372impl RowList {
13373 #[inline]
13374 pub fn rows(&self) -> AstChildren<Row> {
13375 support::children(&self.syntax)
13376 }
13377}
13378
13379#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13380pub struct RowsFuncOption {
13381 pub(crate) syntax: SyntaxNode,
13382}
13383impl RowsFuncOption {
13384 #[inline]
13385 pub fn rows_token(&self) -> Option<SyntaxToken> {
13386 support::token(&self.syntax, SyntaxKind::ROWS_KW)
13387 }
13388}
13389
13390#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13391pub struct Savepoint {
13392 pub(crate) syntax: SyntaxNode,
13393}
13394impl Savepoint {
13395 #[inline]
13396 pub fn name(&self) -> Option<Name> {
13397 support::child(&self.syntax)
13398 }
13399 #[inline]
13400 pub fn savepoint_token(&self) -> Option<SyntaxToken> {
13401 support::token(&self.syntax, SyntaxKind::SAVEPOINT_KW)
13402 }
13403}
13404
13405#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13406pub struct SchemaAuthorization {
13407 pub(crate) syntax: SyntaxNode,
13408}
13409impl SchemaAuthorization {
13410 #[inline]
13411 pub fn role(&self) -> Option<Role> {
13412 support::child(&self.syntax)
13413 }
13414 #[inline]
13415 pub fn authorization_token(&self) -> Option<SyntaxToken> {
13416 support::token(&self.syntax, SyntaxKind::AUTHORIZATION_KW)
13417 }
13418}
13419
13420#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13421pub struct SecurityFuncOption {
13422 pub(crate) syntax: SyntaxNode,
13423}
13424impl SecurityFuncOption {
13425 #[inline]
13426 pub fn definer_token(&self) -> Option<SyntaxToken> {
13427 support::token(&self.syntax, SyntaxKind::DEFINER_KW)
13428 }
13429 #[inline]
13430 pub fn invoker_token(&self) -> Option<SyntaxToken> {
13431 support::token(&self.syntax, SyntaxKind::INVOKER_KW)
13432 }
13433 #[inline]
13434 pub fn security_token(&self) -> Option<SyntaxToken> {
13435 support::token(&self.syntax, SyntaxKind::SECURITY_KW)
13436 }
13437}
13438
13439#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13440pub struct SecurityLabel {
13441 pub(crate) syntax: SyntaxNode,
13442}
13443impl SecurityLabel {
13444 #[inline]
13445 pub fn aggregate(&self) -> Option<Aggregate> {
13446 support::child(&self.syntax)
13447 }
13448 #[inline]
13449 pub fn for_provider(&self) -> Option<ForProvider> {
13450 support::child(&self.syntax)
13451 }
13452 #[inline]
13453 pub fn function_sig(&self) -> Option<FunctionSig> {
13454 support::child(&self.syntax)
13455 }
13456 #[inline]
13457 pub fn literal(&self) -> Option<Literal> {
13458 support::child(&self.syntax)
13459 }
13460 #[inline]
13461 pub fn path(&self) -> Option<Path> {
13462 support::child(&self.syntax)
13463 }
13464 #[inline]
13465 pub fn aggregate_token(&self) -> Option<SyntaxToken> {
13466 support::token(&self.syntax, SyntaxKind::AGGREGATE_KW)
13467 }
13468 #[inline]
13469 pub fn column_token(&self) -> Option<SyntaxToken> {
13470 support::token(&self.syntax, SyntaxKind::COLUMN_KW)
13471 }
13472 #[inline]
13473 pub fn database_token(&self) -> Option<SyntaxToken> {
13474 support::token(&self.syntax, SyntaxKind::DATABASE_KW)
13475 }
13476 #[inline]
13477 pub fn domain_token(&self) -> Option<SyntaxToken> {
13478 support::token(&self.syntax, SyntaxKind::DOMAIN_KW)
13479 }
13480 #[inline]
13481 pub fn event_token(&self) -> Option<SyntaxToken> {
13482 support::token(&self.syntax, SyntaxKind::EVENT_KW)
13483 }
13484 #[inline]
13485 pub fn foreign_token(&self) -> Option<SyntaxToken> {
13486 support::token(&self.syntax, SyntaxKind::FOREIGN_KW)
13487 }
13488 #[inline]
13489 pub fn function_token(&self) -> Option<SyntaxToken> {
13490 support::token(&self.syntax, SyntaxKind::FUNCTION_KW)
13491 }
13492 #[inline]
13493 pub fn is_token(&self) -> Option<SyntaxToken> {
13494 support::token(&self.syntax, SyntaxKind::IS_KW)
13495 }
13496 #[inline]
13497 pub fn label_token(&self) -> Option<SyntaxToken> {
13498 support::token(&self.syntax, SyntaxKind::LABEL_KW)
13499 }
13500 #[inline]
13501 pub fn language_token(&self) -> Option<SyntaxToken> {
13502 support::token(&self.syntax, SyntaxKind::LANGUAGE_KW)
13503 }
13504 #[inline]
13505 pub fn large_token(&self) -> Option<SyntaxToken> {
13506 support::token(&self.syntax, SyntaxKind::LARGE_KW)
13507 }
13508 #[inline]
13509 pub fn materialized_token(&self) -> Option<SyntaxToken> {
13510 support::token(&self.syntax, SyntaxKind::MATERIALIZED_KW)
13511 }
13512 #[inline]
13513 pub fn null_token(&self) -> Option<SyntaxToken> {
13514 support::token(&self.syntax, SyntaxKind::NULL_KW)
13515 }
13516 #[inline]
13517 pub fn object_token(&self) -> Option<SyntaxToken> {
13518 support::token(&self.syntax, SyntaxKind::OBJECT_KW)
13519 }
13520 #[inline]
13521 pub fn on_token(&self) -> Option<SyntaxToken> {
13522 support::token(&self.syntax, SyntaxKind::ON_KW)
13523 }
13524 #[inline]
13525 pub fn procedural_token(&self) -> Option<SyntaxToken> {
13526 support::token(&self.syntax, SyntaxKind::PROCEDURAL_KW)
13527 }
13528 #[inline]
13529 pub fn procedure_token(&self) -> Option<SyntaxToken> {
13530 support::token(&self.syntax, SyntaxKind::PROCEDURE_KW)
13531 }
13532 #[inline]
13533 pub fn publication_token(&self) -> Option<SyntaxToken> {
13534 support::token(&self.syntax, SyntaxKind::PUBLICATION_KW)
13535 }
13536 #[inline]
13537 pub fn role_token(&self) -> Option<SyntaxToken> {
13538 support::token(&self.syntax, SyntaxKind::ROLE_KW)
13539 }
13540 #[inline]
13541 pub fn routine_token(&self) -> Option<SyntaxToken> {
13542 support::token(&self.syntax, SyntaxKind::ROUTINE_KW)
13543 }
13544 #[inline]
13545 pub fn schema_token(&self) -> Option<SyntaxToken> {
13546 support::token(&self.syntax, SyntaxKind::SCHEMA_KW)
13547 }
13548 #[inline]
13549 pub fn security_token(&self) -> Option<SyntaxToken> {
13550 support::token(&self.syntax, SyntaxKind::SECURITY_KW)
13551 }
13552 #[inline]
13553 pub fn sequence_token(&self) -> Option<SyntaxToken> {
13554 support::token(&self.syntax, SyntaxKind::SEQUENCE_KW)
13555 }
13556 #[inline]
13557 pub fn subscription_token(&self) -> Option<SyntaxToken> {
13558 support::token(&self.syntax, SyntaxKind::SUBSCRIPTION_KW)
13559 }
13560 #[inline]
13561 pub fn table_token(&self) -> Option<SyntaxToken> {
13562 support::token(&self.syntax, SyntaxKind::TABLE_KW)
13563 }
13564 #[inline]
13565 pub fn tablespace_token(&self) -> Option<SyntaxToken> {
13566 support::token(&self.syntax, SyntaxKind::TABLESPACE_KW)
13567 }
13568 #[inline]
13569 pub fn trigger_token(&self) -> Option<SyntaxToken> {
13570 support::token(&self.syntax, SyntaxKind::TRIGGER_KW)
13571 }
13572 #[inline]
13573 pub fn type_token(&self) -> Option<SyntaxToken> {
13574 support::token(&self.syntax, SyntaxKind::TYPE_KW)
13575 }
13576 #[inline]
13577 pub fn view_token(&self) -> Option<SyntaxToken> {
13578 support::token(&self.syntax, SyntaxKind::VIEW_KW)
13579 }
13580}
13581
13582#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13583pub struct Select {
13584 pub(crate) syntax: SyntaxNode,
13585}
13586impl Select {
13587 #[inline]
13588 pub fn fetch_clause(&self) -> Option<FetchClause> {
13589 support::child(&self.syntax)
13590 }
13591 #[inline]
13592 pub fn filter_clause(&self) -> Option<FilterClause> {
13593 support::child(&self.syntax)
13594 }
13595 #[inline]
13596 pub fn from_clause(&self) -> Option<FromClause> {
13597 support::child(&self.syntax)
13598 }
13599 #[inline]
13600 pub fn group_by_clause(&self) -> Option<GroupByClause> {
13601 support::child(&self.syntax)
13602 }
13603 #[inline]
13604 pub fn having_clause(&self) -> Option<HavingClause> {
13605 support::child(&self.syntax)
13606 }
13607 #[inline]
13608 pub fn limit_clause(&self) -> Option<LimitClause> {
13609 support::child(&self.syntax)
13610 }
13611 #[inline]
13612 pub fn locking_clauses(&self) -> AstChildren<LockingClause> {
13613 support::children(&self.syntax)
13614 }
13615 #[inline]
13616 pub fn offset_clause(&self) -> Option<OffsetClause> {
13617 support::child(&self.syntax)
13618 }
13619 #[inline]
13620 pub fn order_by_clause(&self) -> Option<OrderByClause> {
13621 support::child(&self.syntax)
13622 }
13623 #[inline]
13624 pub fn select_clause(&self) -> Option<SelectClause> {
13625 support::child(&self.syntax)
13626 }
13627 #[inline]
13628 pub fn where_clause(&self) -> Option<WhereClause> {
13629 support::child(&self.syntax)
13630 }
13631 #[inline]
13632 pub fn window_clause(&self) -> Option<WindowClause> {
13633 support::child(&self.syntax)
13634 }
13635 #[inline]
13636 pub fn with_clause(&self) -> Option<WithClause> {
13637 support::child(&self.syntax)
13638 }
13639}
13640
13641#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13642pub struct SelectClause {
13643 pub(crate) syntax: SyntaxNode,
13644}
13645impl SelectClause {
13646 #[inline]
13647 pub fn distinct_clause(&self) -> Option<DistinctClause> {
13648 support::child(&self.syntax)
13649 }
13650 #[inline]
13651 pub fn target_list(&self) -> Option<TargetList> {
13652 support::child(&self.syntax)
13653 }
13654 #[inline]
13655 pub fn all_token(&self) -> Option<SyntaxToken> {
13656 support::token(&self.syntax, SyntaxKind::ALL_KW)
13657 }
13658 #[inline]
13659 pub fn select_token(&self) -> Option<SyntaxToken> {
13660 support::token(&self.syntax, SyntaxKind::SELECT_KW)
13661 }
13662}
13663
13664#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13665pub struct SelectInto {
13666 pub(crate) syntax: SyntaxNode,
13667}
13668impl SelectInto {
13669 #[inline]
13670 pub fn filter_clause(&self) -> Option<FilterClause> {
13671 support::child(&self.syntax)
13672 }
13673 #[inline]
13674 pub fn from_clause(&self) -> Option<FromClause> {
13675 support::child(&self.syntax)
13676 }
13677 #[inline]
13678 pub fn group_by_clause(&self) -> Option<GroupByClause> {
13679 support::child(&self.syntax)
13680 }
13681 #[inline]
13682 pub fn having_clause(&self) -> Option<HavingClause> {
13683 support::child(&self.syntax)
13684 }
13685 #[inline]
13686 pub fn into_clause(&self) -> Option<IntoClause> {
13687 support::child(&self.syntax)
13688 }
13689 #[inline]
13690 pub fn limit_clause(&self) -> Option<LimitClause> {
13691 support::child(&self.syntax)
13692 }
13693 #[inline]
13694 pub fn locking_clauses(&self) -> AstChildren<LockingClause> {
13695 support::children(&self.syntax)
13696 }
13697 #[inline]
13698 pub fn offset_clause(&self) -> Option<OffsetClause> {
13699 support::child(&self.syntax)
13700 }
13701 #[inline]
13702 pub fn order_by_clause(&self) -> Option<OrderByClause> {
13703 support::child(&self.syntax)
13704 }
13705 #[inline]
13706 pub fn select_clause(&self) -> Option<SelectClause> {
13707 support::child(&self.syntax)
13708 }
13709 #[inline]
13710 pub fn where_clause(&self) -> Option<WhereClause> {
13711 support::child(&self.syntax)
13712 }
13713 #[inline]
13714 pub fn window_clause(&self) -> Option<WindowClause> {
13715 support::child(&self.syntax)
13716 }
13717 #[inline]
13718 pub fn with_clause(&self) -> Option<WithClause> {
13719 support::child(&self.syntax)
13720 }
13721}
13722
13723#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13724pub struct SequenceOption {
13725 pub(crate) syntax: SyntaxNode,
13726}
13727impl SequenceOption {
13728 #[inline]
13729 pub fn literal(&self) -> Option<Literal> {
13730 support::child(&self.syntax)
13731 }
13732 #[inline]
13733 pub fn name_ref(&self) -> Option<NameRef> {
13734 support::child(&self.syntax)
13735 }
13736 #[inline]
13737 pub fn path(&self) -> Option<Path> {
13738 support::child(&self.syntax)
13739 }
13740 #[inline]
13741 pub fn ty(&self) -> Option<Type> {
13742 support::child(&self.syntax)
13743 }
13744 #[inline]
13745 pub fn as_token(&self) -> Option<SyntaxToken> {
13746 support::token(&self.syntax, SyntaxKind::AS_KW)
13747 }
13748 #[inline]
13749 pub fn by_token(&self) -> Option<SyntaxToken> {
13750 support::token(&self.syntax, SyntaxKind::BY_KW)
13751 }
13752 #[inline]
13753 pub fn cycle_token(&self) -> Option<SyntaxToken> {
13754 support::token(&self.syntax, SyntaxKind::CYCLE_KW)
13755 }
13756 #[inline]
13757 pub fn increment_token(&self) -> Option<SyntaxToken> {
13758 support::token(&self.syntax, SyntaxKind::INCREMENT_KW)
13759 }
13760 #[inline]
13761 pub fn logged_token(&self) -> Option<SyntaxToken> {
13762 support::token(&self.syntax, SyntaxKind::LOGGED_KW)
13763 }
13764 #[inline]
13765 pub fn maxvalue_token(&self) -> Option<SyntaxToken> {
13766 support::token(&self.syntax, SyntaxKind::MAXVALUE_KW)
13767 }
13768 #[inline]
13769 pub fn minvalue_token(&self) -> Option<SyntaxToken> {
13770 support::token(&self.syntax, SyntaxKind::MINVALUE_KW)
13771 }
13772 #[inline]
13773 pub fn name_token(&self) -> Option<SyntaxToken> {
13774 support::token(&self.syntax, SyntaxKind::NAME_KW)
13775 }
13776 #[inline]
13777 pub fn no_token(&self) -> Option<SyntaxToken> {
13778 support::token(&self.syntax, SyntaxKind::NO_KW)
13779 }
13780 #[inline]
13781 pub fn none_token(&self) -> Option<SyntaxToken> {
13782 support::token(&self.syntax, SyntaxKind::NONE_KW)
13783 }
13784 #[inline]
13785 pub fn owned_token(&self) -> Option<SyntaxToken> {
13786 support::token(&self.syntax, SyntaxKind::OWNED_KW)
13787 }
13788 #[inline]
13789 pub fn restart_token(&self) -> Option<SyntaxToken> {
13790 support::token(&self.syntax, SyntaxKind::RESTART_KW)
13791 }
13792 #[inline]
13793 pub fn sequence_token(&self) -> Option<SyntaxToken> {
13794 support::token(&self.syntax, SyntaxKind::SEQUENCE_KW)
13795 }
13796 #[inline]
13797 pub fn start_token(&self) -> Option<SyntaxToken> {
13798 support::token(&self.syntax, SyntaxKind::START_KW)
13799 }
13800 #[inline]
13801 pub fn unlogged_token(&self) -> Option<SyntaxToken> {
13802 support::token(&self.syntax, SyntaxKind::UNLOGGED_KW)
13803 }
13804 #[inline]
13805 pub fn with_token(&self) -> Option<SyntaxToken> {
13806 support::token(&self.syntax, SyntaxKind::WITH_KW)
13807 }
13808}
13809
13810#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13811pub struct SequenceOptionList {
13812 pub(crate) syntax: SyntaxNode,
13813}
13814impl SequenceOptionList {
13815 #[inline]
13816 pub fn sequence_options(&self) -> AstChildren<SequenceOption> {
13817 support::children(&self.syntax)
13818 }
13819 #[inline]
13820 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
13821 support::token(&self.syntax, SyntaxKind::L_PAREN)
13822 }
13823 #[inline]
13824 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
13825 support::token(&self.syntax, SyntaxKind::R_PAREN)
13826 }
13827}
13828
13829#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13830pub struct Serializable {
13831 pub(crate) syntax: SyntaxNode,
13832}
13833impl Serializable {
13834 #[inline]
13835 pub fn isolation_token(&self) -> Option<SyntaxToken> {
13836 support::token(&self.syntax, SyntaxKind::ISOLATION_KW)
13837 }
13838 #[inline]
13839 pub fn level_token(&self) -> Option<SyntaxToken> {
13840 support::token(&self.syntax, SyntaxKind::LEVEL_KW)
13841 }
13842 #[inline]
13843 pub fn serializable_token(&self) -> Option<SyntaxToken> {
13844 support::token(&self.syntax, SyntaxKind::SERIALIZABLE_KW)
13845 }
13846}
13847
13848#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13849pub struct ServerName {
13850 pub(crate) syntax: SyntaxNode,
13851}
13852impl ServerName {
13853 #[inline]
13854 pub fn name_ref(&self) -> Option<NameRef> {
13855 support::child(&self.syntax)
13856 }
13857 #[inline]
13858 pub fn server_token(&self) -> Option<SyntaxToken> {
13859 support::token(&self.syntax, SyntaxKind::SERVER_KW)
13860 }
13861}
13862
13863#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13864pub struct Set {
13865 pub(crate) syntax: SyntaxNode,
13866}
13867impl Set {
13868 #[inline]
13869 pub fn config_value(&self) -> Option<ConfigValue> {
13870 support::child(&self.syntax)
13871 }
13872 #[inline]
13873 pub fn config_values(&self) -> AstChildren<ConfigValue> {
13874 support::children(&self.syntax)
13875 }
13876 #[inline]
13877 pub fn literal(&self) -> Option<Literal> {
13878 support::child(&self.syntax)
13879 }
13880 #[inline]
13881 pub fn path(&self) -> Option<Path> {
13882 support::child(&self.syntax)
13883 }
13884 #[inline]
13885 pub fn eq_token(&self) -> Option<SyntaxToken> {
13886 support::token(&self.syntax, SyntaxKind::EQ)
13887 }
13888 #[inline]
13889 pub fn catalog_token(&self) -> Option<SyntaxToken> {
13890 support::token(&self.syntax, SyntaxKind::CATALOG_KW)
13891 }
13892 #[inline]
13893 pub fn content_token(&self) -> Option<SyntaxToken> {
13894 support::token(&self.syntax, SyntaxKind::CONTENT_KW)
13895 }
13896 #[inline]
13897 pub fn current_token(&self) -> Option<SyntaxToken> {
13898 support::token(&self.syntax, SyntaxKind::CURRENT_KW)
13899 }
13900 #[inline]
13901 pub fn default_token(&self) -> Option<SyntaxToken> {
13902 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
13903 }
13904 #[inline]
13905 pub fn document_token(&self) -> Option<SyntaxToken> {
13906 support::token(&self.syntax, SyntaxKind::DOCUMENT_KW)
13907 }
13908 #[inline]
13909 pub fn from_token(&self) -> Option<SyntaxToken> {
13910 support::token(&self.syntax, SyntaxKind::FROM_KW)
13911 }
13912 #[inline]
13913 pub fn local_token(&self) -> Option<SyntaxToken> {
13914 support::token(&self.syntax, SyntaxKind::LOCAL_KW)
13915 }
13916 #[inline]
13917 pub fn option_token(&self) -> Option<SyntaxToken> {
13918 support::token(&self.syntax, SyntaxKind::OPTION_KW)
13919 }
13920 #[inline]
13921 pub fn schema_token(&self) -> Option<SyntaxToken> {
13922 support::token(&self.syntax, SyntaxKind::SCHEMA_KW)
13923 }
13924 #[inline]
13925 pub fn session_token(&self) -> Option<SyntaxToken> {
13926 support::token(&self.syntax, SyntaxKind::SESSION_KW)
13927 }
13928 #[inline]
13929 pub fn set_token(&self) -> Option<SyntaxToken> {
13930 support::token(&self.syntax, SyntaxKind::SET_KW)
13931 }
13932 #[inline]
13933 pub fn time_token(&self) -> Option<SyntaxToken> {
13934 support::token(&self.syntax, SyntaxKind::TIME_KW)
13935 }
13936 #[inline]
13937 pub fn to_token(&self) -> Option<SyntaxToken> {
13938 support::token(&self.syntax, SyntaxKind::TO_KW)
13939 }
13940 #[inline]
13941 pub fn xml_token(&self) -> Option<SyntaxToken> {
13942 support::token(&self.syntax, SyntaxKind::XML_KW)
13943 }
13944 #[inline]
13945 pub fn zone_token(&self) -> Option<SyntaxToken> {
13946 support::token(&self.syntax, SyntaxKind::ZONE_KW)
13947 }
13948}
13949
13950#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13951pub struct SetAccessMethod {
13952 pub(crate) syntax: SyntaxNode,
13953}
13954impl SetAccessMethod {
13955 #[inline]
13956 pub fn name_ref(&self) -> Option<NameRef> {
13957 support::child(&self.syntax)
13958 }
13959 #[inline]
13960 pub fn access_token(&self) -> Option<SyntaxToken> {
13961 support::token(&self.syntax, SyntaxKind::ACCESS_KW)
13962 }
13963 #[inline]
13964 pub fn method_token(&self) -> Option<SyntaxToken> {
13965 support::token(&self.syntax, SyntaxKind::METHOD_KW)
13966 }
13967 #[inline]
13968 pub fn set_token(&self) -> Option<SyntaxToken> {
13969 support::token(&self.syntax, SyntaxKind::SET_KW)
13970 }
13971}
13972
13973#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13974pub struct SetClause {
13975 pub(crate) syntax: SyntaxNode,
13976}
13977impl SetClause {
13978 #[inline]
13979 pub fn set_column_list(&self) -> Option<SetColumnList> {
13980 support::child(&self.syntax)
13981 }
13982 #[inline]
13983 pub fn set_token(&self) -> Option<SyntaxToken> {
13984 support::token(&self.syntax, SyntaxKind::SET_KW)
13985 }
13986}
13987
13988#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13989pub struct SetColumnList {
13990 pub(crate) syntax: SyntaxNode,
13991}
13992impl SetColumnList {
13993 #[inline]
13994 pub fn set_columns(&self) -> AstChildren<SetColumn> {
13995 support::children(&self.syntax)
13996 }
13997}
13998
13999#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14000pub struct SetCompression {
14001 pub(crate) syntax: SyntaxNode,
14002}
14003impl SetCompression {
14004 #[inline]
14005 pub fn compression_token(&self) -> Option<SyntaxToken> {
14006 support::token(&self.syntax, SyntaxKind::COMPRESSION_KW)
14007 }
14008 #[inline]
14009 pub fn set_token(&self) -> Option<SyntaxToken> {
14010 support::token(&self.syntax, SyntaxKind::SET_KW)
14011 }
14012}
14013
14014#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14015pub struct SetConfigParam {
14016 pub(crate) syntax: SyntaxNode,
14017}
14018impl SetConfigParam {
14019 #[inline]
14020 pub fn path(&self) -> Option<Path> {
14021 support::child(&self.syntax)
14022 }
14023 #[inline]
14024 pub fn set_token(&self) -> Option<SyntaxToken> {
14025 support::token(&self.syntax, SyntaxKind::SET_KW)
14026 }
14027}
14028
14029#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14030pub struct SetConstraints {
14031 pub(crate) syntax: SyntaxNode,
14032}
14033impl SetConstraints {
14034 #[inline]
14035 pub fn paths(&self) -> AstChildren<Path> {
14036 support::children(&self.syntax)
14037 }
14038 #[inline]
14039 pub fn all_token(&self) -> Option<SyntaxToken> {
14040 support::token(&self.syntax, SyntaxKind::ALL_KW)
14041 }
14042 #[inline]
14043 pub fn constraints_token(&self) -> Option<SyntaxToken> {
14044 support::token(&self.syntax, SyntaxKind::CONSTRAINTS_KW)
14045 }
14046 #[inline]
14047 pub fn deferred_token(&self) -> Option<SyntaxToken> {
14048 support::token(&self.syntax, SyntaxKind::DEFERRED_KW)
14049 }
14050 #[inline]
14051 pub fn immediate_token(&self) -> Option<SyntaxToken> {
14052 support::token(&self.syntax, SyntaxKind::IMMEDIATE_KW)
14053 }
14054 #[inline]
14055 pub fn set_token(&self) -> Option<SyntaxToken> {
14056 support::token(&self.syntax, SyntaxKind::SET_KW)
14057 }
14058}
14059
14060#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14061pub struct SetDefault {
14062 pub(crate) syntax: SyntaxNode,
14063}
14064impl SetDefault {
14065 #[inline]
14066 pub fn expr(&self) -> Option<Expr> {
14067 support::child(&self.syntax)
14068 }
14069 #[inline]
14070 pub fn default_token(&self) -> Option<SyntaxToken> {
14071 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
14072 }
14073 #[inline]
14074 pub fn set_token(&self) -> Option<SyntaxToken> {
14075 support::token(&self.syntax, SyntaxKind::SET_KW)
14076 }
14077}
14078
14079#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14080pub struct SetDefaultColumns {
14081 pub(crate) syntax: SyntaxNode,
14082}
14083impl SetDefaultColumns {
14084 #[inline]
14085 pub fn column_list(&self) -> Option<ColumnList> {
14086 support::child(&self.syntax)
14087 }
14088 #[inline]
14089 pub fn default_token(&self) -> Option<SyntaxToken> {
14090 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
14091 }
14092 #[inline]
14093 pub fn set_token(&self) -> Option<SyntaxToken> {
14094 support::token(&self.syntax, SyntaxKind::SET_KW)
14095 }
14096}
14097
14098#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14099pub struct SetExpr {
14100 pub(crate) syntax: SyntaxNode,
14101}
14102impl SetExpr {
14103 #[inline]
14104 pub fn expr(&self) -> Option<Expr> {
14105 support::child(&self.syntax)
14106 }
14107 #[inline]
14108 pub fn default_token(&self) -> Option<SyntaxToken> {
14109 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
14110 }
14111}
14112
14113#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14114pub struct SetExprList {
14115 pub(crate) syntax: SyntaxNode,
14116}
14117impl SetExprList {
14118 #[inline]
14119 pub fn set_exprs(&self) -> AstChildren<SetExpr> {
14120 support::children(&self.syntax)
14121 }
14122 #[inline]
14123 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
14124 support::token(&self.syntax, SyntaxKind::L_PAREN)
14125 }
14126 #[inline]
14127 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
14128 support::token(&self.syntax, SyntaxKind::R_PAREN)
14129 }
14130 #[inline]
14131 pub fn row_token(&self) -> Option<SyntaxToken> {
14132 support::token(&self.syntax, SyntaxKind::ROW_KW)
14133 }
14134}
14135
14136#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14137pub struct SetExpression {
14138 pub(crate) syntax: SyntaxNode,
14139}
14140impl SetExpression {
14141 #[inline]
14142 pub fn expr(&self) -> Option<Expr> {
14143 support::child(&self.syntax)
14144 }
14145 #[inline]
14146 pub fn expression_token(&self) -> Option<SyntaxToken> {
14147 support::token(&self.syntax, SyntaxKind::EXPRESSION_KW)
14148 }
14149 #[inline]
14150 pub fn set_token(&self) -> Option<SyntaxToken> {
14151 support::token(&self.syntax, SyntaxKind::SET_KW)
14152 }
14153}
14154
14155#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14156pub struct SetFuncOption {
14157 pub(crate) syntax: SyntaxNode,
14158}
14159impl SetFuncOption {
14160 #[inline]
14161 pub fn set_token(&self) -> Option<SyntaxToken> {
14162 support::token(&self.syntax, SyntaxKind::SET_KW)
14163 }
14164}
14165
14166#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14167pub struct SetGenerated {
14168 pub(crate) syntax: SyntaxNode,
14169}
14170impl SetGenerated {
14171 #[inline]
14172 pub fn set_token(&self) -> Option<SyntaxToken> {
14173 support::token(&self.syntax, SyntaxKind::SET_KW)
14174 }
14175}
14176
14177#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14178pub struct SetGeneratedOptions {
14179 pub(crate) syntax: SyntaxNode,
14180}
14181impl SetGeneratedOptions {
14182 #[inline]
14183 pub fn generated_token(&self) -> Option<SyntaxToken> {
14184 support::token(&self.syntax, SyntaxKind::GENERATED_KW)
14185 }
14186 #[inline]
14187 pub fn set_token(&self) -> Option<SyntaxToken> {
14188 support::token(&self.syntax, SyntaxKind::SET_KW)
14189 }
14190}
14191
14192#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14193pub struct SetLogged {
14194 pub(crate) syntax: SyntaxNode,
14195}
14196impl SetLogged {
14197 #[inline]
14198 pub fn logged_token(&self) -> Option<SyntaxToken> {
14199 support::token(&self.syntax, SyntaxKind::LOGGED_KW)
14200 }
14201 #[inline]
14202 pub fn set_token(&self) -> Option<SyntaxToken> {
14203 support::token(&self.syntax, SyntaxKind::SET_KW)
14204 }
14205}
14206
14207#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14208pub struct SetMultipleColumns {
14209 pub(crate) syntax: SyntaxNode,
14210}
14211impl SetMultipleColumns {
14212 #[inline]
14213 pub fn column_list(&self) -> Option<ColumnList> {
14214 support::child(&self.syntax)
14215 }
14216 #[inline]
14217 pub fn paren_select(&self) -> Option<ParenSelect> {
14218 support::child(&self.syntax)
14219 }
14220 #[inline]
14221 pub fn set_expr_list(&self) -> Option<SetExprList> {
14222 support::child(&self.syntax)
14223 }
14224 #[inline]
14225 pub fn eq_token(&self) -> Option<SyntaxToken> {
14226 support::token(&self.syntax, SyntaxKind::EQ)
14227 }
14228}
14229
14230#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14231pub struct SetNotNull {
14232 pub(crate) syntax: SyntaxNode,
14233}
14234impl SetNotNull {
14235 #[inline]
14236 pub fn not_token(&self) -> Option<SyntaxToken> {
14237 support::token(&self.syntax, SyntaxKind::NOT_KW)
14238 }
14239 #[inline]
14240 pub fn null_token(&self) -> Option<SyntaxToken> {
14241 support::token(&self.syntax, SyntaxKind::NULL_KW)
14242 }
14243 #[inline]
14244 pub fn set_token(&self) -> Option<SyntaxToken> {
14245 support::token(&self.syntax, SyntaxKind::SET_KW)
14246 }
14247}
14248
14249#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14250pub struct SetNullColumns {
14251 pub(crate) syntax: SyntaxNode,
14252}
14253impl SetNullColumns {
14254 #[inline]
14255 pub fn column_list(&self) -> Option<ColumnList> {
14256 support::child(&self.syntax)
14257 }
14258 #[inline]
14259 pub fn null_token(&self) -> Option<SyntaxToken> {
14260 support::token(&self.syntax, SyntaxKind::NULL_KW)
14261 }
14262 #[inline]
14263 pub fn set_token(&self) -> Option<SyntaxToken> {
14264 support::token(&self.syntax, SyntaxKind::SET_KW)
14265 }
14266}
14267
14268#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14269pub struct SetOptions {
14270 pub(crate) syntax: SyntaxNode,
14271}
14272impl SetOptions {
14273 #[inline]
14274 pub fn attribute_list(&self) -> Option<AttributeList> {
14275 support::child(&self.syntax)
14276 }
14277 #[inline]
14278 pub fn set_token(&self) -> Option<SyntaxToken> {
14279 support::token(&self.syntax, SyntaxKind::SET_KW)
14280 }
14281}
14282
14283#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14284pub struct SetOptionsList {
14285 pub(crate) syntax: SyntaxNode,
14286}
14287impl SetOptionsList {
14288 #[inline]
14289 pub fn alter_option_list(&self) -> Option<AlterOptionList> {
14290 support::child(&self.syntax)
14291 }
14292 #[inline]
14293 pub fn options_token(&self) -> Option<SyntaxToken> {
14294 support::token(&self.syntax, SyntaxKind::OPTIONS_KW)
14295 }
14296 #[inline]
14297 pub fn set_token(&self) -> Option<SyntaxToken> {
14298 support::token(&self.syntax, SyntaxKind::SET_KW)
14299 }
14300}
14301
14302#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14303pub struct SetRole {
14304 pub(crate) syntax: SyntaxNode,
14305}
14306impl SetRole {
14307 #[inline]
14308 pub fn role(&self) -> Option<Role> {
14309 support::child(&self.syntax)
14310 }
14311 #[inline]
14312 pub fn local_token(&self) -> Option<SyntaxToken> {
14313 support::token(&self.syntax, SyntaxKind::LOCAL_KW)
14314 }
14315 #[inline]
14316 pub fn none_token(&self) -> Option<SyntaxToken> {
14317 support::token(&self.syntax, SyntaxKind::NONE_KW)
14318 }
14319 #[inline]
14320 pub fn reset_token(&self) -> Option<SyntaxToken> {
14321 support::token(&self.syntax, SyntaxKind::RESET_KW)
14322 }
14323 #[inline]
14324 pub fn role_token(&self) -> Option<SyntaxToken> {
14325 support::token(&self.syntax, SyntaxKind::ROLE_KW)
14326 }
14327 #[inline]
14328 pub fn session_token(&self) -> Option<SyntaxToken> {
14329 support::token(&self.syntax, SyntaxKind::SESSION_KW)
14330 }
14331 #[inline]
14332 pub fn set_token(&self) -> Option<SyntaxToken> {
14333 support::token(&self.syntax, SyntaxKind::SET_KW)
14334 }
14335}
14336
14337#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14338pub struct SetSchema {
14339 pub(crate) syntax: SyntaxNode,
14340}
14341impl SetSchema {
14342 #[inline]
14343 pub fn name_ref(&self) -> Option<NameRef> {
14344 support::child(&self.syntax)
14345 }
14346 #[inline]
14347 pub fn schema_token(&self) -> Option<SyntaxToken> {
14348 support::token(&self.syntax, SyntaxKind::SCHEMA_KW)
14349 }
14350 #[inline]
14351 pub fn set_token(&self) -> Option<SyntaxToken> {
14352 support::token(&self.syntax, SyntaxKind::SET_KW)
14353 }
14354}
14355
14356#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14357pub struct SetSequenceOption {
14358 pub(crate) syntax: SyntaxNode,
14359}
14360impl SetSequenceOption {
14361 #[inline]
14362 pub fn set_token(&self) -> Option<SyntaxToken> {
14363 support::token(&self.syntax, SyntaxKind::SET_KW)
14364 }
14365}
14366
14367#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14368pub struct SetSessionAuth {
14369 pub(crate) syntax: SyntaxNode,
14370}
14371impl SetSessionAuth {
14372 #[inline]
14373 pub fn literal(&self) -> Option<Literal> {
14374 support::child(&self.syntax)
14375 }
14376 #[inline]
14377 pub fn role(&self) -> Option<Role> {
14378 support::child(&self.syntax)
14379 }
14380 #[inline]
14381 pub fn authorization_token(&self) -> Option<SyntaxToken> {
14382 support::token(&self.syntax, SyntaxKind::AUTHORIZATION_KW)
14383 }
14384 #[inline]
14385 pub fn default_token(&self) -> Option<SyntaxToken> {
14386 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
14387 }
14388 #[inline]
14389 pub fn local_token(&self) -> Option<SyntaxToken> {
14390 support::token(&self.syntax, SyntaxKind::LOCAL_KW)
14391 }
14392 #[inline]
14393 pub fn session_token(&self) -> Option<SyntaxToken> {
14394 support::token(&self.syntax, SyntaxKind::SESSION_KW)
14395 }
14396 #[inline]
14397 pub fn set_token(&self) -> Option<SyntaxToken> {
14398 support::token(&self.syntax, SyntaxKind::SET_KW)
14399 }
14400}
14401
14402#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14403pub struct SetSingleColumn {
14404 pub(crate) syntax: SyntaxNode,
14405}
14406impl SetSingleColumn {
14407 #[inline]
14408 pub fn column(&self) -> Option<Column> {
14409 support::child(&self.syntax)
14410 }
14411 #[inline]
14412 pub fn set_expr(&self) -> Option<SetExpr> {
14413 support::child(&self.syntax)
14414 }
14415 #[inline]
14416 pub fn eq_token(&self) -> Option<SyntaxToken> {
14417 support::token(&self.syntax, SyntaxKind::EQ)
14418 }
14419}
14420
14421#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14422pub struct SetStatistics {
14423 pub(crate) syntax: SyntaxNode,
14424}
14425impl SetStatistics {
14426 #[inline]
14427 pub fn set_token(&self) -> Option<SyntaxToken> {
14428 support::token(&self.syntax, SyntaxKind::SET_KW)
14429 }
14430 #[inline]
14431 pub fn statistics_token(&self) -> Option<SyntaxToken> {
14432 support::token(&self.syntax, SyntaxKind::STATISTICS_KW)
14433 }
14434}
14435
14436#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14437pub struct SetStorage {
14438 pub(crate) syntax: SyntaxNode,
14439}
14440impl SetStorage {
14441 #[inline]
14442 pub fn set_token(&self) -> Option<SyntaxToken> {
14443 support::token(&self.syntax, SyntaxKind::SET_KW)
14444 }
14445 #[inline]
14446 pub fn storage_token(&self) -> Option<SyntaxToken> {
14447 support::token(&self.syntax, SyntaxKind::STORAGE_KW)
14448 }
14449}
14450
14451#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14452pub struct SetTablespace {
14453 pub(crate) syntax: SyntaxNode,
14454}
14455impl SetTablespace {
14456 #[inline]
14457 pub fn path(&self) -> Option<Path> {
14458 support::child(&self.syntax)
14459 }
14460 #[inline]
14461 pub fn set_token(&self) -> Option<SyntaxToken> {
14462 support::token(&self.syntax, SyntaxKind::SET_KW)
14463 }
14464 #[inline]
14465 pub fn tablespace_token(&self) -> Option<SyntaxToken> {
14466 support::token(&self.syntax, SyntaxKind::TABLESPACE_KW)
14467 }
14468}
14469
14470#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14471pub struct SetTransaction {
14472 pub(crate) syntax: SyntaxNode,
14473}
14474impl SetTransaction {
14475 #[inline]
14476 pub fn literal(&self) -> Option<Literal> {
14477 support::child(&self.syntax)
14478 }
14479 #[inline]
14480 pub fn transaction_mode_list(&self) -> Option<TransactionModeList> {
14481 support::child(&self.syntax)
14482 }
14483 #[inline]
14484 pub fn as_token(&self) -> Option<SyntaxToken> {
14485 support::token(&self.syntax, SyntaxKind::AS_KW)
14486 }
14487 #[inline]
14488 pub fn characteristics_token(&self) -> Option<SyntaxToken> {
14489 support::token(&self.syntax, SyntaxKind::CHARACTERISTICS_KW)
14490 }
14491 #[inline]
14492 pub fn session_token(&self) -> Option<SyntaxToken> {
14493 support::token(&self.syntax, SyntaxKind::SESSION_KW)
14494 }
14495 #[inline]
14496 pub fn set_token(&self) -> Option<SyntaxToken> {
14497 support::token(&self.syntax, SyntaxKind::SET_KW)
14498 }
14499 #[inline]
14500 pub fn snapshot_token(&self) -> Option<SyntaxToken> {
14501 support::token(&self.syntax, SyntaxKind::SNAPSHOT_KW)
14502 }
14503 #[inline]
14504 pub fn transaction_token(&self) -> Option<SyntaxToken> {
14505 support::token(&self.syntax, SyntaxKind::TRANSACTION_KW)
14506 }
14507}
14508
14509#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14510pub struct SetType {
14511 pub(crate) syntax: SyntaxNode,
14512}
14513impl SetType {
14514 #[inline]
14515 pub fn collate(&self) -> Option<Collate> {
14516 support::child(&self.syntax)
14517 }
14518 #[inline]
14519 pub fn ty(&self) -> Option<Type> {
14520 support::child(&self.syntax)
14521 }
14522 #[inline]
14523 pub fn set_token(&self) -> Option<SyntaxToken> {
14524 support::token(&self.syntax, SyntaxKind::SET_KW)
14525 }
14526 #[inline]
14527 pub fn type_token(&self) -> Option<SyntaxToken> {
14528 support::token(&self.syntax, SyntaxKind::TYPE_KW)
14529 }
14530}
14531
14532#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14533pub struct SetUnlogged {
14534 pub(crate) syntax: SyntaxNode,
14535}
14536impl SetUnlogged {
14537 #[inline]
14538 pub fn set_token(&self) -> Option<SyntaxToken> {
14539 support::token(&self.syntax, SyntaxKind::SET_KW)
14540 }
14541 #[inline]
14542 pub fn unlogged_token(&self) -> Option<SyntaxToken> {
14543 support::token(&self.syntax, SyntaxKind::UNLOGGED_KW)
14544 }
14545}
14546
14547#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14548pub struct SetWithoutCluster {
14549 pub(crate) syntax: SyntaxNode,
14550}
14551impl SetWithoutCluster {
14552 #[inline]
14553 pub fn cluster_token(&self) -> Option<SyntaxToken> {
14554 support::token(&self.syntax, SyntaxKind::CLUSTER_KW)
14555 }
14556 #[inline]
14557 pub fn set_token(&self) -> Option<SyntaxToken> {
14558 support::token(&self.syntax, SyntaxKind::SET_KW)
14559 }
14560 #[inline]
14561 pub fn without_token(&self) -> Option<SyntaxToken> {
14562 support::token(&self.syntax, SyntaxKind::WITHOUT_KW)
14563 }
14564}
14565
14566#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14567pub struct SetWithoutOids {
14568 pub(crate) syntax: SyntaxNode,
14569}
14570impl SetWithoutOids {
14571 #[inline]
14572 pub fn oids_token(&self) -> Option<SyntaxToken> {
14573 support::token(&self.syntax, SyntaxKind::OIDS_KW)
14574 }
14575 #[inline]
14576 pub fn set_token(&self) -> Option<SyntaxToken> {
14577 support::token(&self.syntax, SyntaxKind::SET_KW)
14578 }
14579 #[inline]
14580 pub fn without_token(&self) -> Option<SyntaxToken> {
14581 support::token(&self.syntax, SyntaxKind::WITHOUT_KW)
14582 }
14583}
14584
14585#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14586pub struct Show {
14587 pub(crate) syntax: SyntaxNode,
14588}
14589impl Show {
14590 #[inline]
14591 pub fn show_token(&self) -> Option<SyntaxToken> {
14592 support::token(&self.syntax, SyntaxKind::SHOW_KW)
14593 }
14594}
14595
14596#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14597pub struct SimilarTo {
14598 pub(crate) syntax: SyntaxNode,
14599}
14600impl SimilarTo {
14601 #[inline]
14602 pub fn similar_token(&self) -> Option<SyntaxToken> {
14603 support::token(&self.syntax, SyntaxKind::SIMILAR_KW)
14604 }
14605 #[inline]
14606 pub fn to_token(&self) -> Option<SyntaxToken> {
14607 support::token(&self.syntax, SyntaxKind::TO_KW)
14608 }
14609}
14610
14611#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14612pub struct SliceExpr {
14613 pub(crate) syntax: SyntaxNode,
14614}
14615impl SliceExpr {
14616 #[inline]
14617 pub fn l_brack_token(&self) -> Option<SyntaxToken> {
14618 support::token(&self.syntax, SyntaxKind::L_BRACK)
14619 }
14620 #[inline]
14621 pub fn r_brack_token(&self) -> Option<SyntaxToken> {
14622 support::token(&self.syntax, SyntaxKind::R_BRACK)
14623 }
14624 #[inline]
14625 pub fn colon_token(&self) -> Option<SyntaxToken> {
14626 support::token(&self.syntax, SyntaxKind::COLON)
14627 }
14628}
14629
14630#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14631pub struct SomeFn {
14632 pub(crate) syntax: SyntaxNode,
14633}
14634impl SomeFn {
14635 #[inline]
14636 pub fn expr(&self) -> Option<Expr> {
14637 support::child(&self.syntax)
14638 }
14639 #[inline]
14640 pub fn select_variant(&self) -> Option<SelectVariant> {
14641 support::child(&self.syntax)
14642 }
14643 #[inline]
14644 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
14645 support::token(&self.syntax, SyntaxKind::L_PAREN)
14646 }
14647 #[inline]
14648 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
14649 support::token(&self.syntax, SyntaxKind::R_PAREN)
14650 }
14651 #[inline]
14652 pub fn some_token(&self) -> Option<SyntaxToken> {
14653 support::token(&self.syntax, SyntaxKind::SOME_KW)
14654 }
14655}
14656
14657#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14658pub struct SortAsc {
14659 pub(crate) syntax: SyntaxNode,
14660}
14661impl SortAsc {
14662 #[inline]
14663 pub fn asc_token(&self) -> Option<SyntaxToken> {
14664 support::token(&self.syntax, SyntaxKind::ASC_KW)
14665 }
14666}
14667
14668#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14669pub struct SortBy {
14670 pub(crate) syntax: SyntaxNode,
14671}
14672impl SortBy {
14673 #[inline]
14674 pub fn expr(&self) -> Option<Expr> {
14675 support::child(&self.syntax)
14676 }
14677 #[inline]
14678 pub fn nulls_first(&self) -> Option<NullsFirst> {
14679 support::child(&self.syntax)
14680 }
14681 #[inline]
14682 pub fn nulls_last(&self) -> Option<NullsLast> {
14683 support::child(&self.syntax)
14684 }
14685 #[inline]
14686 pub fn sort_asc(&self) -> Option<SortAsc> {
14687 support::child(&self.syntax)
14688 }
14689 #[inline]
14690 pub fn sort_desc(&self) -> Option<SortDesc> {
14691 support::child(&self.syntax)
14692 }
14693 #[inline]
14694 pub fn sort_using(&self) -> Option<SortUsing> {
14695 support::child(&self.syntax)
14696 }
14697}
14698
14699#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14700pub struct SortByList {
14701 pub(crate) syntax: SyntaxNode,
14702}
14703impl SortByList {
14704 #[inline]
14705 pub fn sort_bys(&self) -> AstChildren<SortBy> {
14706 support::children(&self.syntax)
14707 }
14708}
14709
14710#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14711pub struct SortDesc {
14712 pub(crate) syntax: SyntaxNode,
14713}
14714impl SortDesc {
14715 #[inline]
14716 pub fn desc_token(&self) -> Option<SyntaxToken> {
14717 support::token(&self.syntax, SyntaxKind::DESC_KW)
14718 }
14719}
14720
14721#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14722pub struct SortUsing {
14723 pub(crate) syntax: SyntaxNode,
14724}
14725impl SortUsing {
14726 #[inline]
14727 pub fn op(&self) -> Option<Op> {
14728 support::child(&self.syntax)
14729 }
14730 #[inline]
14731 pub fn using_token(&self) -> Option<SyntaxToken> {
14732 support::token(&self.syntax, SyntaxKind::USING_KW)
14733 }
14734}
14735
14736#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14737pub struct SourceFile {
14738 pub(crate) syntax: SyntaxNode,
14739}
14740impl SourceFile {
14741 #[inline]
14742 pub fn stmts(&self) -> AstChildren<Stmt> {
14743 support::children(&self.syntax)
14744 }
14745}
14746
14747#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14748pub struct SplitPartition {
14749 pub(crate) syntax: SyntaxNode,
14750}
14751impl SplitPartition {
14752 #[inline]
14753 pub fn partition_list(&self) -> Option<PartitionList> {
14754 support::child(&self.syntax)
14755 }
14756 #[inline]
14757 pub fn into_token(&self) -> Option<SyntaxToken> {
14758 support::token(&self.syntax, SyntaxKind::INTO_KW)
14759 }
14760 #[inline]
14761 pub fn partition_token(&self) -> Option<SyntaxToken> {
14762 support::token(&self.syntax, SyntaxKind::PARTITION_KW)
14763 }
14764 #[inline]
14765 pub fn split_token(&self) -> Option<SyntaxToken> {
14766 support::token(&self.syntax, SyntaxKind::SPLIT_KW)
14767 }
14768}
14769
14770#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14771pub struct Storage {
14772 pub(crate) syntax: SyntaxNode,
14773}
14774impl Storage {
14775 #[inline]
14776 pub fn default_token(&self) -> Option<SyntaxToken> {
14777 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
14778 }
14779 #[inline]
14780 pub fn external_token(&self) -> Option<SyntaxToken> {
14781 support::token(&self.syntax, SyntaxKind::EXTERNAL_KW)
14782 }
14783 #[inline]
14784 pub fn ident_token(&self) -> Option<SyntaxToken> {
14785 support::token(&self.syntax, SyntaxKind::IDENT)
14786 }
14787 #[inline]
14788 pub fn storage_token(&self) -> Option<SyntaxToken> {
14789 support::token(&self.syntax, SyntaxKind::STORAGE_KW)
14790 }
14791}
14792
14793#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14794pub struct StrictFuncOption {
14795 pub(crate) syntax: SyntaxNode,
14796}
14797impl StrictFuncOption {
14798 #[inline]
14799 pub fn called_token(&self) -> Option<SyntaxToken> {
14800 support::token(&self.syntax, SyntaxKind::CALLED_KW)
14801 }
14802 #[inline]
14803 pub fn input_token(&self) -> Option<SyntaxToken> {
14804 support::token(&self.syntax, SyntaxKind::INPUT_KW)
14805 }
14806 #[inline]
14807 pub fn null_token(&self) -> Option<SyntaxToken> {
14808 support::token(&self.syntax, SyntaxKind::NULL_KW)
14809 }
14810 #[inline]
14811 pub fn on_token(&self) -> Option<SyntaxToken> {
14812 support::token(&self.syntax, SyntaxKind::ON_KW)
14813 }
14814 #[inline]
14815 pub fn returns_token(&self) -> Option<SyntaxToken> {
14816 support::token(&self.syntax, SyntaxKind::RETURNS_KW)
14817 }
14818 #[inline]
14819 pub fn strict_token(&self) -> Option<SyntaxToken> {
14820 support::token(&self.syntax, SyntaxKind::STRICT_KW)
14821 }
14822}
14823
14824#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14825pub struct SubstringFn {
14826 pub(crate) syntax: SyntaxNode,
14827}
14828impl SubstringFn {
14829 #[inline]
14830 pub fn expr(&self) -> Option<Expr> {
14831 support::child(&self.syntax)
14832 }
14833 #[inline]
14834 pub fn exprs(&self) -> AstChildren<Expr> {
14835 support::children(&self.syntax)
14836 }
14837 #[inline]
14838 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
14839 support::token(&self.syntax, SyntaxKind::L_PAREN)
14840 }
14841 #[inline]
14842 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
14843 support::token(&self.syntax, SyntaxKind::R_PAREN)
14844 }
14845 #[inline]
14846 pub fn for_token(&self) -> Option<SyntaxToken> {
14847 support::token(&self.syntax, SyntaxKind::FOR_KW)
14848 }
14849 #[inline]
14850 pub fn from_token(&self) -> Option<SyntaxToken> {
14851 support::token(&self.syntax, SyntaxKind::FROM_KW)
14852 }
14853 #[inline]
14854 pub fn similar_token(&self) -> Option<SyntaxToken> {
14855 support::token(&self.syntax, SyntaxKind::SIMILAR_KW)
14856 }
14857 #[inline]
14858 pub fn substring_token(&self) -> Option<SyntaxToken> {
14859 support::token(&self.syntax, SyntaxKind::SUBSTRING_KW)
14860 }
14861}
14862
14863#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14864pub struct SupportFuncOption {
14865 pub(crate) syntax: SyntaxNode,
14866}
14867impl SupportFuncOption {
14868 #[inline]
14869 pub fn support_token(&self) -> Option<SyntaxToken> {
14870 support::token(&self.syntax, SyntaxKind::SUPPORT_KW)
14871 }
14872}
14873
14874#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14875pub struct Table {
14876 pub(crate) syntax: SyntaxNode,
14877}
14878impl Table {
14879 #[inline]
14880 pub fn relation_name(&self) -> Option<RelationName> {
14881 support::child(&self.syntax)
14882 }
14883 #[inline]
14884 pub fn table_token(&self) -> Option<SyntaxToken> {
14885 support::token(&self.syntax, SyntaxKind::TABLE_KW)
14886 }
14887}
14888
14889#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14890pub struct TableAndColumns {
14891 pub(crate) syntax: SyntaxNode,
14892}
14893impl TableAndColumns {
14894 #[inline]
14895 pub fn column_list(&self) -> Option<ColumnList> {
14896 support::child(&self.syntax)
14897 }
14898 #[inline]
14899 pub fn relation_name(&self) -> Option<RelationName> {
14900 support::child(&self.syntax)
14901 }
14902}
14903
14904#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14905pub struct TableAndColumnsList {
14906 pub(crate) syntax: SyntaxNode,
14907}
14908impl TableAndColumnsList {
14909 #[inline]
14910 pub fn table_and_columnss(&self) -> AstChildren<TableAndColumns> {
14911 support::children(&self.syntax)
14912 }
14913}
14914
14915#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14916pub struct TableArgList {
14917 pub(crate) syntax: SyntaxNode,
14918}
14919impl TableArgList {
14920 #[inline]
14921 pub fn args(&self) -> AstChildren<TableArg> {
14922 support::children(&self.syntax)
14923 }
14924 #[inline]
14925 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
14926 support::token(&self.syntax, SyntaxKind::L_PAREN)
14927 }
14928 #[inline]
14929 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
14930 support::token(&self.syntax, SyntaxKind::R_PAREN)
14931 }
14932}
14933
14934#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14935pub struct TableList {
14936 pub(crate) syntax: SyntaxNode,
14937}
14938impl TableList {
14939 #[inline]
14940 pub fn relation_names(&self) -> AstChildren<RelationName> {
14941 support::children(&self.syntax)
14942 }
14943}
14944
14945#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14946pub struct TablesampleClause {
14947 pub(crate) syntax: SyntaxNode,
14948}
14949impl TablesampleClause {
14950 #[inline]
14951 pub fn call_expr(&self) -> Option<CallExpr> {
14952 support::child(&self.syntax)
14953 }
14954 #[inline]
14955 pub fn repeatable_clause(&self) -> Option<RepeatableClause> {
14956 support::child(&self.syntax)
14957 }
14958 #[inline]
14959 pub fn tablesample_token(&self) -> Option<SyntaxToken> {
14960 support::token(&self.syntax, SyntaxKind::TABLESAMPLE_KW)
14961 }
14962}
14963
14964#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14965pub struct Tablespace {
14966 pub(crate) syntax: SyntaxNode,
14967}
14968impl Tablespace {
14969 #[inline]
14970 pub fn name_ref(&self) -> Option<NameRef> {
14971 support::child(&self.syntax)
14972 }
14973 #[inline]
14974 pub fn tablespace_token(&self) -> Option<SyntaxToken> {
14975 support::token(&self.syntax, SyntaxKind::TABLESPACE_KW)
14976 }
14977}
14978
14979#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14980pub struct Target {
14981 pub(crate) syntax: SyntaxNode,
14982}
14983impl Target {
14984 #[inline]
14985 pub fn as_name(&self) -> Option<AsName> {
14986 support::child(&self.syntax)
14987 }
14988 #[inline]
14989 pub fn expr(&self) -> Option<Expr> {
14990 support::child(&self.syntax)
14991 }
14992 #[inline]
14993 pub fn star_token(&self) -> Option<SyntaxToken> {
14994 support::token(&self.syntax, SyntaxKind::STAR)
14995 }
14996}
14997
14998#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14999pub struct TargetList {
15000 pub(crate) syntax: SyntaxNode,
15001}
15002impl TargetList {
15003 #[inline]
15004 pub fn targets(&self) -> AstChildren<Target> {
15005 support::children(&self.syntax)
15006 }
15007}
15008
15009#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15010pub struct TimeType {
15011 pub(crate) syntax: SyntaxNode,
15012}
15013impl TimeType {
15014 #[inline]
15015 pub fn literal(&self) -> Option<Literal> {
15016 support::child(&self.syntax)
15017 }
15018 #[inline]
15019 pub fn timezone(&self) -> Option<Timezone> {
15020 support::child(&self.syntax)
15021 }
15022 #[inline]
15023 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
15024 support::token(&self.syntax, SyntaxKind::L_PAREN)
15025 }
15026 #[inline]
15027 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
15028 support::token(&self.syntax, SyntaxKind::R_PAREN)
15029 }
15030 #[inline]
15031 pub fn time_token(&self) -> Option<SyntaxToken> {
15032 support::token(&self.syntax, SyntaxKind::TIME_KW)
15033 }
15034 #[inline]
15035 pub fn timestamp_token(&self) -> Option<SyntaxToken> {
15036 support::token(&self.syntax, SyntaxKind::TIMESTAMP_KW)
15037 }
15038}
15039
15040#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15041pub struct Timing {
15042 pub(crate) syntax: SyntaxNode,
15043}
15044impl Timing {
15045 #[inline]
15046 pub fn after_token(&self) -> Option<SyntaxToken> {
15047 support::token(&self.syntax, SyntaxKind::AFTER_KW)
15048 }
15049 #[inline]
15050 pub fn before_token(&self) -> Option<SyntaxToken> {
15051 support::token(&self.syntax, SyntaxKind::BEFORE_KW)
15052 }
15053 #[inline]
15054 pub fn instead_token(&self) -> Option<SyntaxToken> {
15055 support::token(&self.syntax, SyntaxKind::INSTEAD_KW)
15056 }
15057 #[inline]
15058 pub fn of_token(&self) -> Option<SyntaxToken> {
15059 support::token(&self.syntax, SyntaxKind::OF_KW)
15060 }
15061}
15062
15063#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15064pub struct TransactionModeList {
15065 pub(crate) syntax: SyntaxNode,
15066}
15067impl TransactionModeList {
15068 #[inline]
15069 pub fn transaction_modes(&self) -> AstChildren<TransactionMode> {
15070 support::children(&self.syntax)
15071 }
15072}
15073
15074#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15075pub struct TransformFromFunc {
15076 pub(crate) syntax: SyntaxNode,
15077}
15078impl TransformFromFunc {
15079 #[inline]
15080 pub fn function_sig(&self) -> Option<FunctionSig> {
15081 support::child(&self.syntax)
15082 }
15083 #[inline]
15084 pub fn from_token(&self) -> Option<SyntaxToken> {
15085 support::token(&self.syntax, SyntaxKind::FROM_KW)
15086 }
15087 #[inline]
15088 pub fn function_token(&self) -> Option<SyntaxToken> {
15089 support::token(&self.syntax, SyntaxKind::FUNCTION_KW)
15090 }
15091 #[inline]
15092 pub fn sql_token(&self) -> Option<SyntaxToken> {
15093 support::token(&self.syntax, SyntaxKind::SQL_KW)
15094 }
15095 #[inline]
15096 pub fn with_token(&self) -> Option<SyntaxToken> {
15097 support::token(&self.syntax, SyntaxKind::WITH_KW)
15098 }
15099}
15100
15101#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15102pub struct TransformFuncOption {
15103 pub(crate) syntax: SyntaxNode,
15104}
15105impl TransformFuncOption {
15106 #[inline]
15107 pub fn transform_token(&self) -> Option<SyntaxToken> {
15108 support::token(&self.syntax, SyntaxKind::TRANSFORM_KW)
15109 }
15110}
15111
15112#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15113pub struct TransformToFunc {
15114 pub(crate) syntax: SyntaxNode,
15115}
15116impl TransformToFunc {
15117 #[inline]
15118 pub fn function_sig(&self) -> Option<FunctionSig> {
15119 support::child(&self.syntax)
15120 }
15121 #[inline]
15122 pub fn function_token(&self) -> Option<SyntaxToken> {
15123 support::token(&self.syntax, SyntaxKind::FUNCTION_KW)
15124 }
15125 #[inline]
15126 pub fn sql_token(&self) -> Option<SyntaxToken> {
15127 support::token(&self.syntax, SyntaxKind::SQL_KW)
15128 }
15129 #[inline]
15130 pub fn to_token(&self) -> Option<SyntaxToken> {
15131 support::token(&self.syntax, SyntaxKind::TO_KW)
15132 }
15133 #[inline]
15134 pub fn with_token(&self) -> Option<SyntaxToken> {
15135 support::token(&self.syntax, SyntaxKind::WITH_KW)
15136 }
15137}
15138
15139#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15140pub struct TriggerEvent {
15141 pub(crate) syntax: SyntaxNode,
15142}
15143impl TriggerEvent {
15144 #[inline]
15145 pub fn trigger_event_update(&self) -> Option<TriggerEventUpdate> {
15146 support::child(&self.syntax)
15147 }
15148 #[inline]
15149 pub fn delete_token(&self) -> Option<SyntaxToken> {
15150 support::token(&self.syntax, SyntaxKind::DELETE_KW)
15151 }
15152 #[inline]
15153 pub fn insert_token(&self) -> Option<SyntaxToken> {
15154 support::token(&self.syntax, SyntaxKind::INSERT_KW)
15155 }
15156 #[inline]
15157 pub fn truncate_token(&self) -> Option<SyntaxToken> {
15158 support::token(&self.syntax, SyntaxKind::TRUNCATE_KW)
15159 }
15160}
15161
15162#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15163pub struct TriggerEventList {
15164 pub(crate) syntax: SyntaxNode,
15165}
15166impl TriggerEventList {
15167 #[inline]
15168 pub fn trigger_events(&self) -> AstChildren<TriggerEvent> {
15169 support::children(&self.syntax)
15170 }
15171}
15172
15173#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15174pub struct TriggerEventUpdate {
15175 pub(crate) syntax: SyntaxNode,
15176}
15177impl TriggerEventUpdate {
15178 #[inline]
15179 pub fn name_refs(&self) -> AstChildren<NameRef> {
15180 support::children(&self.syntax)
15181 }
15182 #[inline]
15183 pub fn of_token(&self) -> Option<SyntaxToken> {
15184 support::token(&self.syntax, SyntaxKind::OF_KW)
15185 }
15186 #[inline]
15187 pub fn update_token(&self) -> Option<SyntaxToken> {
15188 support::token(&self.syntax, SyntaxKind::UPDATE_KW)
15189 }
15190}
15191
15192#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15193pub struct TrimFn {
15194 pub(crate) syntax: SyntaxNode,
15195}
15196impl TrimFn {
15197 #[inline]
15198 pub fn expr(&self) -> Option<Expr> {
15199 support::child(&self.syntax)
15200 }
15201 #[inline]
15202 pub fn exprs(&self) -> AstChildren<Expr> {
15203 support::children(&self.syntax)
15204 }
15205 #[inline]
15206 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
15207 support::token(&self.syntax, SyntaxKind::L_PAREN)
15208 }
15209 #[inline]
15210 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
15211 support::token(&self.syntax, SyntaxKind::R_PAREN)
15212 }
15213 #[inline]
15214 pub fn from_token(&self) -> Option<SyntaxToken> {
15215 support::token(&self.syntax, SyntaxKind::FROM_KW)
15216 }
15217 #[inline]
15218 pub fn trim_token(&self) -> Option<SyntaxToken> {
15219 support::token(&self.syntax, SyntaxKind::TRIM_KW)
15220 }
15221}
15222
15223#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15224pub struct Truncate {
15225 pub(crate) syntax: SyntaxNode,
15226}
15227impl Truncate {
15228 #[inline]
15229 pub fn table_list(&self) -> Option<TableList> {
15230 support::child(&self.syntax)
15231 }
15232 #[inline]
15233 pub fn cascade_token(&self) -> Option<SyntaxToken> {
15234 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
15235 }
15236 #[inline]
15237 pub fn continue_token(&self) -> Option<SyntaxToken> {
15238 support::token(&self.syntax, SyntaxKind::CONTINUE_KW)
15239 }
15240 #[inline]
15241 pub fn identity_token(&self) -> Option<SyntaxToken> {
15242 support::token(&self.syntax, SyntaxKind::IDENTITY_KW)
15243 }
15244 #[inline]
15245 pub fn restart_token(&self) -> Option<SyntaxToken> {
15246 support::token(&self.syntax, SyntaxKind::RESTART_KW)
15247 }
15248 #[inline]
15249 pub fn restrict_token(&self) -> Option<SyntaxToken> {
15250 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
15251 }
15252 #[inline]
15253 pub fn table_token(&self) -> Option<SyntaxToken> {
15254 support::token(&self.syntax, SyntaxKind::TABLE_KW)
15255 }
15256 #[inline]
15257 pub fn truncate_token(&self) -> Option<SyntaxToken> {
15258 support::token(&self.syntax, SyntaxKind::TRUNCATE_KW)
15259 }
15260}
15261
15262#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15263pub struct TupleExpr {
15264 pub(crate) syntax: SyntaxNode,
15265}
15266impl TupleExpr {
15267 #[inline]
15268 pub fn exprs(&self) -> AstChildren<Expr> {
15269 support::children(&self.syntax)
15270 }
15271 #[inline]
15272 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
15273 support::token(&self.syntax, SyntaxKind::L_PAREN)
15274 }
15275 #[inline]
15276 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
15277 support::token(&self.syntax, SyntaxKind::R_PAREN)
15278 }
15279}
15280
15281#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15282pub struct UnicodeNormalForm {
15283 pub(crate) syntax: SyntaxNode,
15284}
15285impl UnicodeNormalForm {
15286 #[inline]
15287 pub fn nfc_token(&self) -> Option<SyntaxToken> {
15288 support::token(&self.syntax, SyntaxKind::NFC_KW)
15289 }
15290 #[inline]
15291 pub fn nfd_token(&self) -> Option<SyntaxToken> {
15292 support::token(&self.syntax, SyntaxKind::NFD_KW)
15293 }
15294 #[inline]
15295 pub fn nfkc_token(&self) -> Option<SyntaxToken> {
15296 support::token(&self.syntax, SyntaxKind::NFKC_KW)
15297 }
15298 #[inline]
15299 pub fn nfkd_token(&self) -> Option<SyntaxToken> {
15300 support::token(&self.syntax, SyntaxKind::NFKD_KW)
15301 }
15302}
15303
15304#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15305pub struct UniqueConstraint {
15306 pub(crate) syntax: SyntaxNode,
15307}
15308impl UniqueConstraint {
15309 #[inline]
15310 pub fn column_list(&self) -> Option<ColumnList> {
15311 support::child(&self.syntax)
15312 }
15313 #[inline]
15314 pub fn constraint_name(&self) -> Option<ConstraintName> {
15315 support::child(&self.syntax)
15316 }
15317 #[inline]
15318 pub fn nulls_distinct(&self) -> Option<NullsDistinct> {
15319 support::child(&self.syntax)
15320 }
15321 #[inline]
15322 pub fn nulls_not_distinct(&self) -> Option<NullsNotDistinct> {
15323 support::child(&self.syntax)
15324 }
15325 #[inline]
15326 pub fn using_index(&self) -> Option<UsingIndex> {
15327 support::child(&self.syntax)
15328 }
15329 #[inline]
15330 pub fn unique_token(&self) -> Option<SyntaxToken> {
15331 support::token(&self.syntax, SyntaxKind::UNIQUE_KW)
15332 }
15333}
15334
15335#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15336pub struct Unlisten {
15337 pub(crate) syntax: SyntaxNode,
15338}
15339impl Unlisten {
15340 #[inline]
15341 pub fn name_ref(&self) -> Option<NameRef> {
15342 support::child(&self.syntax)
15343 }
15344 #[inline]
15345 pub fn star_token(&self) -> Option<SyntaxToken> {
15346 support::token(&self.syntax, SyntaxKind::STAR)
15347 }
15348 #[inline]
15349 pub fn unlisten_token(&self) -> Option<SyntaxToken> {
15350 support::token(&self.syntax, SyntaxKind::UNLISTEN_KW)
15351 }
15352}
15353
15354#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15355pub struct Update {
15356 pub(crate) syntax: SyntaxNode,
15357}
15358impl Update {
15359 #[inline]
15360 pub fn alias(&self) -> Option<Alias> {
15361 support::child(&self.syntax)
15362 }
15363 #[inline]
15364 pub fn from_clause(&self) -> Option<FromClause> {
15365 support::child(&self.syntax)
15366 }
15367 #[inline]
15368 pub fn relation_name(&self) -> Option<RelationName> {
15369 support::child(&self.syntax)
15370 }
15371 #[inline]
15372 pub fn returning_clause(&self) -> Option<ReturningClause> {
15373 support::child(&self.syntax)
15374 }
15375 #[inline]
15376 pub fn set_clause(&self) -> Option<SetClause> {
15377 support::child(&self.syntax)
15378 }
15379 #[inline]
15380 pub fn where_clause(&self) -> Option<WhereClause> {
15381 support::child(&self.syntax)
15382 }
15383 #[inline]
15384 pub fn with_clause(&self) -> Option<WithClause> {
15385 support::child(&self.syntax)
15386 }
15387 #[inline]
15388 pub fn update_token(&self) -> Option<SyntaxToken> {
15389 support::token(&self.syntax, SyntaxKind::UPDATE_KW)
15390 }
15391}
15392
15393#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15394pub struct UsingClause {
15395 pub(crate) syntax: SyntaxNode,
15396}
15397impl UsingClause {
15398 #[inline]
15399 pub fn from_items(&self) -> AstChildren<FromItem> {
15400 support::children(&self.syntax)
15401 }
15402 #[inline]
15403 pub fn using_token(&self) -> Option<SyntaxToken> {
15404 support::token(&self.syntax, SyntaxKind::USING_KW)
15405 }
15406}
15407
15408#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15409pub struct UsingIndex {
15410 pub(crate) syntax: SyntaxNode,
15411}
15412impl UsingIndex {
15413 #[inline]
15414 pub fn name_ref(&self) -> Option<NameRef> {
15415 support::child(&self.syntax)
15416 }
15417 #[inline]
15418 pub fn index_token(&self) -> Option<SyntaxToken> {
15419 support::token(&self.syntax, SyntaxKind::INDEX_KW)
15420 }
15421 #[inline]
15422 pub fn using_token(&self) -> Option<SyntaxToken> {
15423 support::token(&self.syntax, SyntaxKind::USING_KW)
15424 }
15425}
15426
15427#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15428pub struct UsingMethod {
15429 pub(crate) syntax: SyntaxNode,
15430}
15431impl UsingMethod {
15432 #[inline]
15433 pub fn name_ref(&self) -> Option<NameRef> {
15434 support::child(&self.syntax)
15435 }
15436 #[inline]
15437 pub fn using_token(&self) -> Option<SyntaxToken> {
15438 support::token(&self.syntax, SyntaxKind::USING_KW)
15439 }
15440}
15441
15442#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15443pub struct UsingOnClause {
15444 pub(crate) syntax: SyntaxNode,
15445}
15446impl UsingOnClause {
15447 #[inline]
15448 pub fn from_item(&self) -> Option<FromItem> {
15449 support::child(&self.syntax)
15450 }
15451 #[inline]
15452 pub fn on_clause(&self) -> Option<OnClause> {
15453 support::child(&self.syntax)
15454 }
15455 #[inline]
15456 pub fn using_token(&self) -> Option<SyntaxToken> {
15457 support::token(&self.syntax, SyntaxKind::USING_KW)
15458 }
15459}
15460
15461#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15462pub struct Vacuum {
15463 pub(crate) syntax: SyntaxNode,
15464}
15465impl Vacuum {
15466 #[inline]
15467 pub fn table_and_columns_list(&self) -> Option<TableAndColumnsList> {
15468 support::child(&self.syntax)
15469 }
15470 #[inline]
15471 pub fn vacuum_option_list(&self) -> Option<VacuumOptionList> {
15472 support::child(&self.syntax)
15473 }
15474 #[inline]
15475 pub fn analyse_token(&self) -> Option<SyntaxToken> {
15476 support::token(&self.syntax, SyntaxKind::ANALYSE_KW)
15477 }
15478 #[inline]
15479 pub fn analyze_token(&self) -> Option<SyntaxToken> {
15480 support::token(&self.syntax, SyntaxKind::ANALYZE_KW)
15481 }
15482 #[inline]
15483 pub fn freeze_token(&self) -> Option<SyntaxToken> {
15484 support::token(&self.syntax, SyntaxKind::FREEZE_KW)
15485 }
15486 #[inline]
15487 pub fn full_token(&self) -> Option<SyntaxToken> {
15488 support::token(&self.syntax, SyntaxKind::FULL_KW)
15489 }
15490 #[inline]
15491 pub fn vacuum_token(&self) -> Option<SyntaxToken> {
15492 support::token(&self.syntax, SyntaxKind::VACUUM_KW)
15493 }
15494 #[inline]
15495 pub fn verbose_token(&self) -> Option<SyntaxToken> {
15496 support::token(&self.syntax, SyntaxKind::VERBOSE_KW)
15497 }
15498}
15499
15500#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15501pub struct VacuumOption {
15502 pub(crate) syntax: SyntaxNode,
15503}
15504impl VacuumOption {
15505 #[inline]
15506 pub fn literal(&self) -> Option<Literal> {
15507 support::child(&self.syntax)
15508 }
15509}
15510
15511#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15512pub struct VacuumOptionList {
15513 pub(crate) syntax: SyntaxNode,
15514}
15515impl VacuumOptionList {
15516 #[inline]
15517 pub fn vacuum_options(&self) -> AstChildren<VacuumOption> {
15518 support::children(&self.syntax)
15519 }
15520 #[inline]
15521 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
15522 support::token(&self.syntax, SyntaxKind::L_PAREN)
15523 }
15524 #[inline]
15525 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
15526 support::token(&self.syntax, SyntaxKind::R_PAREN)
15527 }
15528}
15529
15530#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15531pub struct ValidateConstraint {
15532 pub(crate) syntax: SyntaxNode,
15533}
15534impl ValidateConstraint {
15535 #[inline]
15536 pub fn name_ref(&self) -> Option<NameRef> {
15537 support::child(&self.syntax)
15538 }
15539 #[inline]
15540 pub fn constraint_token(&self) -> Option<SyntaxToken> {
15541 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
15542 }
15543 #[inline]
15544 pub fn validate_token(&self) -> Option<SyntaxToken> {
15545 support::token(&self.syntax, SyntaxKind::VALIDATE_KW)
15546 }
15547}
15548
15549#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15550pub struct Values {
15551 pub(crate) syntax: SyntaxNode,
15552}
15553impl Values {
15554 #[inline]
15555 pub fn row_list(&self) -> Option<RowList> {
15556 support::child(&self.syntax)
15557 }
15558 #[inline]
15559 pub fn values_token(&self) -> Option<SyntaxToken> {
15560 support::token(&self.syntax, SyntaxKind::VALUES_KW)
15561 }
15562}
15563
15564#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15565pub struct Variant {
15566 pub(crate) syntax: SyntaxNode,
15567}
15568impl Variant {
15569 #[inline]
15570 pub fn literal(&self) -> Option<Literal> {
15571 support::child(&self.syntax)
15572 }
15573}
15574
15575#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15576pub struct VariantList {
15577 pub(crate) syntax: SyntaxNode,
15578}
15579impl VariantList {
15580 #[inline]
15581 pub fn variants(&self) -> AstChildren<Variant> {
15582 support::children(&self.syntax)
15583 }
15584 #[inline]
15585 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
15586 support::token(&self.syntax, SyntaxKind::L_PAREN)
15587 }
15588 #[inline]
15589 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
15590 support::token(&self.syntax, SyntaxKind::R_PAREN)
15591 }
15592}
15593
15594#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15595pub struct VolatilityFuncOption {
15596 pub(crate) syntax: SyntaxNode,
15597}
15598impl VolatilityFuncOption {
15599 #[inline]
15600 pub fn immutable_token(&self) -> Option<SyntaxToken> {
15601 support::token(&self.syntax, SyntaxKind::IMMUTABLE_KW)
15602 }
15603 #[inline]
15604 pub fn stable_token(&self) -> Option<SyntaxToken> {
15605 support::token(&self.syntax, SyntaxKind::STABLE_KW)
15606 }
15607 #[inline]
15608 pub fn volatile_token(&self) -> Option<SyntaxToken> {
15609 support::token(&self.syntax, SyntaxKind::VOLATILE_KW)
15610 }
15611}
15612
15613#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15614pub struct WhenClause {
15615 pub(crate) syntax: SyntaxNode,
15616}
15617impl WhenClause {
15618 #[inline]
15619 pub fn then_token(&self) -> Option<SyntaxToken> {
15620 support::token(&self.syntax, SyntaxKind::THEN_KW)
15621 }
15622 #[inline]
15623 pub fn when_token(&self) -> Option<SyntaxToken> {
15624 support::token(&self.syntax, SyntaxKind::WHEN_KW)
15625 }
15626}
15627
15628#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15629pub struct WhenClauseList {
15630 pub(crate) syntax: SyntaxNode,
15631}
15632impl WhenClauseList {
15633 #[inline]
15634 pub fn when_clause(&self) -> Option<WhenClause> {
15635 support::child(&self.syntax)
15636 }
15637 #[inline]
15638 pub fn when_clauses(&self) -> AstChildren<WhenClause> {
15639 support::children(&self.syntax)
15640 }
15641}
15642
15643#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15644pub struct WhenCondition {
15645 pub(crate) syntax: SyntaxNode,
15646}
15647impl WhenCondition {
15648 #[inline]
15649 pub fn expr(&self) -> Option<Expr> {
15650 support::child(&self.syntax)
15651 }
15652 #[inline]
15653 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
15654 support::token(&self.syntax, SyntaxKind::L_PAREN)
15655 }
15656 #[inline]
15657 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
15658 support::token(&self.syntax, SyntaxKind::R_PAREN)
15659 }
15660 #[inline]
15661 pub fn when_token(&self) -> Option<SyntaxToken> {
15662 support::token(&self.syntax, SyntaxKind::WHEN_KW)
15663 }
15664}
15665
15666#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15667pub struct WhereClause {
15668 pub(crate) syntax: SyntaxNode,
15669}
15670impl WhereClause {
15671 #[inline]
15672 pub fn expr(&self) -> Option<Expr> {
15673 support::child(&self.syntax)
15674 }
15675 #[inline]
15676 pub fn where_token(&self) -> Option<SyntaxToken> {
15677 support::token(&self.syntax, SyntaxKind::WHERE_KW)
15678 }
15679}
15680
15681#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15682pub struct WhereConditionClause {
15683 pub(crate) syntax: SyntaxNode,
15684}
15685impl WhereConditionClause {
15686 #[inline]
15687 pub fn expr(&self) -> Option<Expr> {
15688 support::child(&self.syntax)
15689 }
15690 #[inline]
15691 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
15692 support::token(&self.syntax, SyntaxKind::L_PAREN)
15693 }
15694 #[inline]
15695 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
15696 support::token(&self.syntax, SyntaxKind::R_PAREN)
15697 }
15698 #[inline]
15699 pub fn where_token(&self) -> Option<SyntaxToken> {
15700 support::token(&self.syntax, SyntaxKind::WHERE_KW)
15701 }
15702}
15703
15704#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15705pub struct WhereCurrentOf {
15706 pub(crate) syntax: SyntaxNode,
15707}
15708impl WhereCurrentOf {
15709 #[inline]
15710 pub fn name_ref(&self) -> Option<NameRef> {
15711 support::child(&self.syntax)
15712 }
15713 #[inline]
15714 pub fn current_token(&self) -> Option<SyntaxToken> {
15715 support::token(&self.syntax, SyntaxKind::CURRENT_KW)
15716 }
15717 #[inline]
15718 pub fn of_token(&self) -> Option<SyntaxToken> {
15719 support::token(&self.syntax, SyntaxKind::OF_KW)
15720 }
15721 #[inline]
15722 pub fn where_token(&self) -> Option<SyntaxToken> {
15723 support::token(&self.syntax, SyntaxKind::WHERE_KW)
15724 }
15725}
15726
15727#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15728pub struct WindowClause {
15729 pub(crate) syntax: SyntaxNode,
15730}
15731impl WindowClause {
15732 #[inline]
15733 pub fn window_defs(&self) -> AstChildren<WindowDef> {
15734 support::children(&self.syntax)
15735 }
15736 #[inline]
15737 pub fn window_token(&self) -> Option<SyntaxToken> {
15738 support::token(&self.syntax, SyntaxKind::WINDOW_KW)
15739 }
15740}
15741
15742#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15743pub struct WindowDef {
15744 pub(crate) syntax: SyntaxNode,
15745}
15746impl WindowDef {
15747 #[inline]
15748 pub fn name(&self) -> Option<Name> {
15749 support::child(&self.syntax)
15750 }
15751 #[inline]
15752 pub fn window_spec(&self) -> Option<WindowSpec> {
15753 support::child(&self.syntax)
15754 }
15755 #[inline]
15756 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
15757 support::token(&self.syntax, SyntaxKind::L_PAREN)
15758 }
15759 #[inline]
15760 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
15761 support::token(&self.syntax, SyntaxKind::R_PAREN)
15762 }
15763 #[inline]
15764 pub fn as_token(&self) -> Option<SyntaxToken> {
15765 support::token(&self.syntax, SyntaxKind::AS_KW)
15766 }
15767}
15768
15769#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15770pub struct WindowFuncOption {
15771 pub(crate) syntax: SyntaxNode,
15772}
15773impl WindowFuncOption {
15774 #[inline]
15775 pub fn window_token(&self) -> Option<SyntaxToken> {
15776 support::token(&self.syntax, SyntaxKind::WINDOW_KW)
15777 }
15778}
15779
15780#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15781pub struct WindowSpec {
15782 pub(crate) syntax: SyntaxNode,
15783}
15784impl WindowSpec {
15785 #[inline]
15786 pub fn exprs(&self) -> AstChildren<Expr> {
15787 support::children(&self.syntax)
15788 }
15789 #[inline]
15790 pub fn frame_clause(&self) -> Option<FrameClause> {
15791 support::child(&self.syntax)
15792 }
15793 #[inline]
15794 pub fn order_by_clause(&self) -> Option<OrderByClause> {
15795 support::child(&self.syntax)
15796 }
15797 #[inline]
15798 pub fn by_token(&self) -> Option<SyntaxToken> {
15799 support::token(&self.syntax, SyntaxKind::BY_KW)
15800 }
15801 #[inline]
15802 pub fn ident_token(&self) -> Option<SyntaxToken> {
15803 support::token(&self.syntax, SyntaxKind::IDENT)
15804 }
15805 #[inline]
15806 pub fn partition_token(&self) -> Option<SyntaxToken> {
15807 support::token(&self.syntax, SyntaxKind::PARTITION_KW)
15808 }
15809}
15810
15811#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15812pub struct WithClause {
15813 pub(crate) syntax: SyntaxNode,
15814}
15815impl WithClause {
15816 #[inline]
15817 pub fn with_tables(&self) -> AstChildren<WithTable> {
15818 support::children(&self.syntax)
15819 }
15820 #[inline]
15821 pub fn recursive_token(&self) -> Option<SyntaxToken> {
15822 support::token(&self.syntax, SyntaxKind::RECURSIVE_KW)
15823 }
15824 #[inline]
15825 pub fn with_token(&self) -> Option<SyntaxToken> {
15826 support::token(&self.syntax, SyntaxKind::WITH_KW)
15827 }
15828}
15829
15830#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15831pub struct WithData {
15832 pub(crate) syntax: SyntaxNode,
15833}
15834impl WithData {
15835 #[inline]
15836 pub fn data_token(&self) -> Option<SyntaxToken> {
15837 support::token(&self.syntax, SyntaxKind::DATA_KW)
15838 }
15839 #[inline]
15840 pub fn with_token(&self) -> Option<SyntaxToken> {
15841 support::token(&self.syntax, SyntaxKind::WITH_KW)
15842 }
15843}
15844
15845#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15846pub struct WithNoData {
15847 pub(crate) syntax: SyntaxNode,
15848}
15849impl WithNoData {
15850 #[inline]
15851 pub fn data_token(&self) -> Option<SyntaxToken> {
15852 support::token(&self.syntax, SyntaxKind::DATA_KW)
15853 }
15854 #[inline]
15855 pub fn no_token(&self) -> Option<SyntaxToken> {
15856 support::token(&self.syntax, SyntaxKind::NO_KW)
15857 }
15858 #[inline]
15859 pub fn with_token(&self) -> Option<SyntaxToken> {
15860 support::token(&self.syntax, SyntaxKind::WITH_KW)
15861 }
15862}
15863
15864#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15865pub struct WithOptions {
15866 pub(crate) syntax: SyntaxNode,
15867}
15868impl WithOptions {
15869 #[inline]
15870 pub fn options_token(&self) -> Option<SyntaxToken> {
15871 support::token(&self.syntax, SyntaxKind::OPTIONS_KW)
15872 }
15873 #[inline]
15874 pub fn with_token(&self) -> Option<SyntaxToken> {
15875 support::token(&self.syntax, SyntaxKind::WITH_KW)
15876 }
15877}
15878
15879#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15880pub struct WithParams {
15881 pub(crate) syntax: SyntaxNode,
15882}
15883impl WithParams {
15884 #[inline]
15885 pub fn attribute_list(&self) -> Option<AttributeList> {
15886 support::child(&self.syntax)
15887 }
15888 #[inline]
15889 pub fn with_token(&self) -> Option<SyntaxToken> {
15890 support::token(&self.syntax, SyntaxKind::WITH_KW)
15891 }
15892}
15893
15894#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15895pub struct WithTable {
15896 pub(crate) syntax: SyntaxNode,
15897}
15898impl WithTable {
15899 #[inline]
15900 pub fn column_list(&self) -> Option<ColumnList> {
15901 support::child(&self.syntax)
15902 }
15903 #[inline]
15904 pub fn materialized(&self) -> Option<Materialized> {
15905 support::child(&self.syntax)
15906 }
15907 #[inline]
15908 pub fn name(&self) -> Option<Name> {
15909 support::child(&self.syntax)
15910 }
15911 #[inline]
15912 pub fn not_materialized(&self) -> Option<NotMaterialized> {
15913 support::child(&self.syntax)
15914 }
15915 #[inline]
15916 pub fn query(&self) -> Option<WithQuery> {
15917 support::child(&self.syntax)
15918 }
15919 #[inline]
15920 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
15921 support::token(&self.syntax, SyntaxKind::L_PAREN)
15922 }
15923 #[inline]
15924 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
15925 support::token(&self.syntax, SyntaxKind::R_PAREN)
15926 }
15927 #[inline]
15928 pub fn as_token(&self) -> Option<SyntaxToken> {
15929 support::token(&self.syntax, SyntaxKind::AS_KW)
15930 }
15931}
15932
15933#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15934pub struct WithTimezone {
15935 pub(crate) syntax: SyntaxNode,
15936}
15937impl WithTimezone {
15938 #[inline]
15939 pub fn time_token(&self) -> Option<SyntaxToken> {
15940 support::token(&self.syntax, SyntaxKind::TIME_KW)
15941 }
15942 #[inline]
15943 pub fn with_token(&self) -> Option<SyntaxToken> {
15944 support::token(&self.syntax, SyntaxKind::WITH_KW)
15945 }
15946 #[inline]
15947 pub fn zone_token(&self) -> Option<SyntaxToken> {
15948 support::token(&self.syntax, SyntaxKind::ZONE_KW)
15949 }
15950}
15951
15952#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15953pub struct WithinClause {
15954 pub(crate) syntax: SyntaxNode,
15955}
15956impl WithinClause {
15957 #[inline]
15958 pub fn order_by_clause(&self) -> Option<OrderByClause> {
15959 support::child(&self.syntax)
15960 }
15961 #[inline]
15962 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
15963 support::token(&self.syntax, SyntaxKind::L_PAREN)
15964 }
15965 #[inline]
15966 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
15967 support::token(&self.syntax, SyntaxKind::R_PAREN)
15968 }
15969 #[inline]
15970 pub fn group_token(&self) -> Option<SyntaxToken> {
15971 support::token(&self.syntax, SyntaxKind::GROUP_KW)
15972 }
15973 #[inline]
15974 pub fn within_token(&self) -> Option<SyntaxToken> {
15975 support::token(&self.syntax, SyntaxKind::WITHIN_KW)
15976 }
15977}
15978
15979#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15980pub struct WithoutOids {
15981 pub(crate) syntax: SyntaxNode,
15982}
15983impl WithoutOids {
15984 #[inline]
15985 pub fn oids_token(&self) -> Option<SyntaxToken> {
15986 support::token(&self.syntax, SyntaxKind::OIDS_KW)
15987 }
15988 #[inline]
15989 pub fn without_token(&self) -> Option<SyntaxToken> {
15990 support::token(&self.syntax, SyntaxKind::WITHOUT_KW)
15991 }
15992}
15993
15994#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15995pub struct WithoutTimezone {
15996 pub(crate) syntax: SyntaxNode,
15997}
15998impl WithoutTimezone {
15999 #[inline]
16000 pub fn time_token(&self) -> Option<SyntaxToken> {
16001 support::token(&self.syntax, SyntaxKind::TIME_KW)
16002 }
16003 #[inline]
16004 pub fn without_token(&self) -> Option<SyntaxToken> {
16005 support::token(&self.syntax, SyntaxKind::WITHOUT_KW)
16006 }
16007 #[inline]
16008 pub fn zone_token(&self) -> Option<SyntaxToken> {
16009 support::token(&self.syntax, SyntaxKind::ZONE_KW)
16010 }
16011}
16012
16013#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16014pub struct XmlAttributeList {
16015 pub(crate) syntax: SyntaxNode,
16016}
16017impl XmlAttributeList {
16018 #[inline]
16019 pub fn expr_as_names(&self) -> AstChildren<ExprAsName> {
16020 support::children(&self.syntax)
16021 }
16022}
16023
16024#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16025pub struct XmlColumnOption {
16026 pub(crate) syntax: SyntaxNode,
16027}
16028impl XmlColumnOption {
16029 #[inline]
16030 pub fn expr(&self) -> Option<Expr> {
16031 support::child(&self.syntax)
16032 }
16033 #[inline]
16034 pub fn default_token(&self) -> Option<SyntaxToken> {
16035 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
16036 }
16037 #[inline]
16038 pub fn ident_token(&self) -> Option<SyntaxToken> {
16039 support::token(&self.syntax, SyntaxKind::IDENT)
16040 }
16041 #[inline]
16042 pub fn not_token(&self) -> Option<SyntaxToken> {
16043 support::token(&self.syntax, SyntaxKind::NOT_KW)
16044 }
16045 #[inline]
16046 pub fn null_token(&self) -> Option<SyntaxToken> {
16047 support::token(&self.syntax, SyntaxKind::NULL_KW)
16048 }
16049 #[inline]
16050 pub fn path_token(&self) -> Option<SyntaxToken> {
16051 support::token(&self.syntax, SyntaxKind::PATH_KW)
16052 }
16053}
16054
16055#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16056pub struct XmlColumnOptionList {
16057 pub(crate) syntax: SyntaxNode,
16058}
16059impl XmlColumnOptionList {
16060 #[inline]
16061 pub fn xml_column_option(&self) -> Option<XmlColumnOption> {
16062 support::child(&self.syntax)
16063 }
16064 #[inline]
16065 pub fn xml_column_options(&self) -> AstChildren<XmlColumnOption> {
16066 support::children(&self.syntax)
16067 }
16068}
16069
16070#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16071pub struct XmlElementFn {
16072 pub(crate) syntax: SyntaxNode,
16073}
16074impl XmlElementFn {
16075 #[inline]
16076 pub fn exprs(&self) -> AstChildren<Expr> {
16077 support::children(&self.syntax)
16078 }
16079 #[inline]
16080 pub fn name(&self) -> Option<Name> {
16081 support::child(&self.syntax)
16082 }
16083 #[inline]
16084 pub fn xml_attribute_list(&self) -> Option<XmlAttributeList> {
16085 support::child(&self.syntax)
16086 }
16087 #[inline]
16088 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
16089 support::token(&self.syntax, SyntaxKind::L_PAREN)
16090 }
16091 #[inline]
16092 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
16093 support::token(&self.syntax, SyntaxKind::R_PAREN)
16094 }
16095 #[inline]
16096 pub fn comma_token(&self) -> Option<SyntaxToken> {
16097 support::token(&self.syntax, SyntaxKind::COMMA)
16098 }
16099 #[inline]
16100 pub fn name_token(&self) -> Option<SyntaxToken> {
16101 support::token(&self.syntax, SyntaxKind::NAME_KW)
16102 }
16103 #[inline]
16104 pub fn xmlattributes_token(&self) -> Option<SyntaxToken> {
16105 support::token(&self.syntax, SyntaxKind::XMLATTRIBUTES_KW)
16106 }
16107 #[inline]
16108 pub fn xmlelement_token(&self) -> Option<SyntaxToken> {
16109 support::token(&self.syntax, SyntaxKind::XMLELEMENT_KW)
16110 }
16111}
16112
16113#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16114pub struct XmlExistsFn {
16115 pub(crate) syntax: SyntaxNode,
16116}
16117impl XmlExistsFn {
16118 #[inline]
16119 pub fn expr(&self) -> Option<Expr> {
16120 support::child(&self.syntax)
16121 }
16122 #[inline]
16123 pub fn xml_passing_mech(&self) -> Option<XmlPassingMech> {
16124 support::child(&self.syntax)
16125 }
16126 #[inline]
16127 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
16128 support::token(&self.syntax, SyntaxKind::L_PAREN)
16129 }
16130 #[inline]
16131 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
16132 support::token(&self.syntax, SyntaxKind::R_PAREN)
16133 }
16134 #[inline]
16135 pub fn passing_token(&self) -> Option<SyntaxToken> {
16136 support::token(&self.syntax, SyntaxKind::PASSING_KW)
16137 }
16138 #[inline]
16139 pub fn xmlexists_token(&self) -> Option<SyntaxToken> {
16140 support::token(&self.syntax, SyntaxKind::XMLEXISTS_KW)
16141 }
16142}
16143
16144#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16145pub struct XmlForestFn {
16146 pub(crate) syntax: SyntaxNode,
16147}
16148impl XmlForestFn {
16149 #[inline]
16150 pub fn xml_attribute_list(&self) -> Option<XmlAttributeList> {
16151 support::child(&self.syntax)
16152 }
16153 #[inline]
16154 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
16155 support::token(&self.syntax, SyntaxKind::L_PAREN)
16156 }
16157 #[inline]
16158 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
16159 support::token(&self.syntax, SyntaxKind::R_PAREN)
16160 }
16161 #[inline]
16162 pub fn xmlforest_token(&self) -> Option<SyntaxToken> {
16163 support::token(&self.syntax, SyntaxKind::XMLFOREST_KW)
16164 }
16165}
16166
16167#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16168pub struct XmlNamespace {
16169 pub(crate) syntax: SyntaxNode,
16170}
16171impl XmlNamespace {
16172 #[inline]
16173 pub fn expr(&self) -> Option<Expr> {
16174 support::child(&self.syntax)
16175 }
16176 #[inline]
16177 pub fn name(&self) -> Option<Name> {
16178 support::child(&self.syntax)
16179 }
16180 #[inline]
16181 pub fn as_token(&self) -> Option<SyntaxToken> {
16182 support::token(&self.syntax, SyntaxKind::AS_KW)
16183 }
16184 #[inline]
16185 pub fn default_token(&self) -> Option<SyntaxToken> {
16186 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
16187 }
16188}
16189
16190#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16191pub struct XmlNamespaceList {
16192 pub(crate) syntax: SyntaxNode,
16193}
16194impl XmlNamespaceList {
16195 #[inline]
16196 pub fn xml_namespaces(&self) -> AstChildren<XmlNamespace> {
16197 support::children(&self.syntax)
16198 }
16199 #[inline]
16200 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
16201 support::token(&self.syntax, SyntaxKind::L_PAREN)
16202 }
16203 #[inline]
16204 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
16205 support::token(&self.syntax, SyntaxKind::R_PAREN)
16206 }
16207}
16208
16209#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16210pub struct XmlParseFn {
16211 pub(crate) syntax: SyntaxNode,
16212}
16213impl XmlParseFn {
16214 #[inline]
16215 pub fn expr(&self) -> Option<Expr> {
16216 support::child(&self.syntax)
16217 }
16218 #[inline]
16219 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
16220 support::token(&self.syntax, SyntaxKind::L_PAREN)
16221 }
16222 #[inline]
16223 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
16224 support::token(&self.syntax, SyntaxKind::R_PAREN)
16225 }
16226 #[inline]
16227 pub fn content_token(&self) -> Option<SyntaxToken> {
16228 support::token(&self.syntax, SyntaxKind::CONTENT_KW)
16229 }
16230 #[inline]
16231 pub fn document_token(&self) -> Option<SyntaxToken> {
16232 support::token(&self.syntax, SyntaxKind::DOCUMENT_KW)
16233 }
16234 #[inline]
16235 pub fn preserve_token(&self) -> Option<SyntaxToken> {
16236 support::token(&self.syntax, SyntaxKind::PRESERVE_KW)
16237 }
16238 #[inline]
16239 pub fn strip_token(&self) -> Option<SyntaxToken> {
16240 support::token(&self.syntax, SyntaxKind::STRIP_KW)
16241 }
16242 #[inline]
16243 pub fn whitespace_token(&self) -> Option<SyntaxToken> {
16244 support::token(&self.syntax, SyntaxKind::WHITESPACE_KW)
16245 }
16246 #[inline]
16247 pub fn xmlparse_token(&self) -> Option<SyntaxToken> {
16248 support::token(&self.syntax, SyntaxKind::XMLPARSE_KW)
16249 }
16250}
16251
16252#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16253pub struct XmlPassingMech {
16254 pub(crate) syntax: SyntaxNode,
16255}
16256impl XmlPassingMech {
16257 #[inline]
16258 pub fn by_token(&self) -> Option<SyntaxToken> {
16259 support::token(&self.syntax, SyntaxKind::BY_KW)
16260 }
16261 #[inline]
16262 pub fn ref_token(&self) -> Option<SyntaxToken> {
16263 support::token(&self.syntax, SyntaxKind::REF_KW)
16264 }
16265 #[inline]
16266 pub fn value_token(&self) -> Option<SyntaxToken> {
16267 support::token(&self.syntax, SyntaxKind::VALUE_KW)
16268 }
16269}
16270
16271#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16272pub struct XmlPiFn {
16273 pub(crate) syntax: SyntaxNode,
16274}
16275impl XmlPiFn {
16276 #[inline]
16277 pub fn expr(&self) -> Option<Expr> {
16278 support::child(&self.syntax)
16279 }
16280 #[inline]
16281 pub fn name(&self) -> Option<Name> {
16282 support::child(&self.syntax)
16283 }
16284 #[inline]
16285 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
16286 support::token(&self.syntax, SyntaxKind::L_PAREN)
16287 }
16288 #[inline]
16289 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
16290 support::token(&self.syntax, SyntaxKind::R_PAREN)
16291 }
16292 #[inline]
16293 pub fn comma_token(&self) -> Option<SyntaxToken> {
16294 support::token(&self.syntax, SyntaxKind::COMMA)
16295 }
16296 #[inline]
16297 pub fn name_token(&self) -> Option<SyntaxToken> {
16298 support::token(&self.syntax, SyntaxKind::NAME_KW)
16299 }
16300 #[inline]
16301 pub fn xmlpi_token(&self) -> Option<SyntaxToken> {
16302 support::token(&self.syntax, SyntaxKind::XMLPI_KW)
16303 }
16304}
16305
16306#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16307pub struct XmlRootFn {
16308 pub(crate) syntax: SyntaxNode,
16309}
16310impl XmlRootFn {
16311 #[inline]
16312 pub fn expr(&self) -> Option<Expr> {
16313 support::child(&self.syntax)
16314 }
16315 #[inline]
16316 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
16317 support::token(&self.syntax, SyntaxKind::L_PAREN)
16318 }
16319 #[inline]
16320 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
16321 support::token(&self.syntax, SyntaxKind::R_PAREN)
16322 }
16323 #[inline]
16324 pub fn comma_token(&self) -> Option<SyntaxToken> {
16325 support::token(&self.syntax, SyntaxKind::COMMA)
16326 }
16327 #[inline]
16328 pub fn no_token(&self) -> Option<SyntaxToken> {
16329 support::token(&self.syntax, SyntaxKind::NO_KW)
16330 }
16331 #[inline]
16332 pub fn standalone_token(&self) -> Option<SyntaxToken> {
16333 support::token(&self.syntax, SyntaxKind::STANDALONE_KW)
16334 }
16335 #[inline]
16336 pub fn value_token(&self) -> Option<SyntaxToken> {
16337 support::token(&self.syntax, SyntaxKind::VALUE_KW)
16338 }
16339 #[inline]
16340 pub fn version_token(&self) -> Option<SyntaxToken> {
16341 support::token(&self.syntax, SyntaxKind::VERSION_KW)
16342 }
16343 #[inline]
16344 pub fn xmlroot_token(&self) -> Option<SyntaxToken> {
16345 support::token(&self.syntax, SyntaxKind::XMLROOT_KW)
16346 }
16347 #[inline]
16348 pub fn yes_token(&self) -> Option<SyntaxToken> {
16349 support::token(&self.syntax, SyntaxKind::YES_KW)
16350 }
16351}
16352
16353#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16354pub struct XmlRowPassingClause {
16355 pub(crate) syntax: SyntaxNode,
16356}
16357impl XmlRowPassingClause {
16358 #[inline]
16359 pub fn expr(&self) -> Option<Expr> {
16360 support::child(&self.syntax)
16361 }
16362 #[inline]
16363 pub fn xml_passing_mech(&self) -> Option<XmlPassingMech> {
16364 support::child(&self.syntax)
16365 }
16366 #[inline]
16367 pub fn passing_token(&self) -> Option<SyntaxToken> {
16368 support::token(&self.syntax, SyntaxKind::PASSING_KW)
16369 }
16370}
16371
16372#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16373pub struct XmlSerializeFn {
16374 pub(crate) syntax: SyntaxNode,
16375}
16376impl XmlSerializeFn {
16377 #[inline]
16378 pub fn expr(&self) -> Option<Expr> {
16379 support::child(&self.syntax)
16380 }
16381 #[inline]
16382 pub fn ty(&self) -> Option<Type> {
16383 support::child(&self.syntax)
16384 }
16385 #[inline]
16386 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
16387 support::token(&self.syntax, SyntaxKind::L_PAREN)
16388 }
16389 #[inline]
16390 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
16391 support::token(&self.syntax, SyntaxKind::R_PAREN)
16392 }
16393 #[inline]
16394 pub fn as_token(&self) -> Option<SyntaxToken> {
16395 support::token(&self.syntax, SyntaxKind::AS_KW)
16396 }
16397 #[inline]
16398 pub fn content_token(&self) -> Option<SyntaxToken> {
16399 support::token(&self.syntax, SyntaxKind::CONTENT_KW)
16400 }
16401 #[inline]
16402 pub fn document_token(&self) -> Option<SyntaxToken> {
16403 support::token(&self.syntax, SyntaxKind::DOCUMENT_KW)
16404 }
16405 #[inline]
16406 pub fn ident_token(&self) -> Option<SyntaxToken> {
16407 support::token(&self.syntax, SyntaxKind::IDENT)
16408 }
16409 #[inline]
16410 pub fn no_token(&self) -> Option<SyntaxToken> {
16411 support::token(&self.syntax, SyntaxKind::NO_KW)
16412 }
16413 #[inline]
16414 pub fn xmlserialize_token(&self) -> Option<SyntaxToken> {
16415 support::token(&self.syntax, SyntaxKind::XMLSERIALIZE_KW)
16416 }
16417}
16418
16419#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16420pub struct XmlTable {
16421 pub(crate) syntax: SyntaxNode,
16422}
16423impl XmlTable {
16424 #[inline]
16425 pub fn xml_namespace_list(&self) -> Option<XmlNamespaceList> {
16426 support::child(&self.syntax)
16427 }
16428 #[inline]
16429 pub fn xml_row_passing_clause(&self) -> Option<XmlRowPassingClause> {
16430 support::child(&self.syntax)
16431 }
16432 #[inline]
16433 pub fn xml_table_column_list(&self) -> Option<XmlTableColumnList> {
16434 support::child(&self.syntax)
16435 }
16436 #[inline]
16437 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
16438 support::token(&self.syntax, SyntaxKind::L_PAREN)
16439 }
16440 #[inline]
16441 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
16442 support::token(&self.syntax, SyntaxKind::R_PAREN)
16443 }
16444 #[inline]
16445 pub fn comma_token(&self) -> Option<SyntaxToken> {
16446 support::token(&self.syntax, SyntaxKind::COMMA)
16447 }
16448 #[inline]
16449 pub fn xmlnamespaces_token(&self) -> Option<SyntaxToken> {
16450 support::token(&self.syntax, SyntaxKind::XMLNAMESPACES_KW)
16451 }
16452 #[inline]
16453 pub fn xmltable_token(&self) -> Option<SyntaxToken> {
16454 support::token(&self.syntax, SyntaxKind::XMLTABLE_KW)
16455 }
16456}
16457
16458#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16459pub struct XmlTableColumn {
16460 pub(crate) syntax: SyntaxNode,
16461}
16462impl XmlTableColumn {
16463 #[inline]
16464 pub fn name(&self) -> Option<Name> {
16465 support::child(&self.syntax)
16466 }
16467 #[inline]
16468 pub fn ty(&self) -> Option<Type> {
16469 support::child(&self.syntax)
16470 }
16471 #[inline]
16472 pub fn xml_column_option_list(&self) -> Option<XmlColumnOptionList> {
16473 support::child(&self.syntax)
16474 }
16475 #[inline]
16476 pub fn for_token(&self) -> Option<SyntaxToken> {
16477 support::token(&self.syntax, SyntaxKind::FOR_KW)
16478 }
16479 #[inline]
16480 pub fn ordinality_token(&self) -> Option<SyntaxToken> {
16481 support::token(&self.syntax, SyntaxKind::ORDINALITY_KW)
16482 }
16483}
16484
16485#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16486pub struct XmlTableColumnList {
16487 pub(crate) syntax: SyntaxNode,
16488}
16489impl XmlTableColumnList {
16490 #[inline]
16491 pub fn xml_table_columns(&self) -> AstChildren<XmlTableColumn> {
16492 support::children(&self.syntax)
16493 }
16494}
16495
16496#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16497pub enum AlterColumnOption {
16498 AddGenerated(AddGenerated),
16499 DropDefault(DropDefault),
16500 DropExpression(DropExpression),
16501 DropIdentity(DropIdentity),
16502 DropNotNull(DropNotNull),
16503 ResetOptions(ResetOptions),
16504 Restart(Restart),
16505 SetCompression(SetCompression),
16506 SetDefault(SetDefault),
16507 SetExpression(SetExpression),
16508 SetGenerated(SetGenerated),
16509 SetGeneratedOptions(SetGeneratedOptions),
16510 SetNotNull(SetNotNull),
16511 SetOptions(SetOptions),
16512 SetOptionsList(SetOptionsList),
16513 SetSequenceOption(SetSequenceOption),
16514 SetStatistics(SetStatistics),
16515 SetStorage(SetStorage),
16516 SetType(SetType),
16517}
16518
16519#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16520pub enum AlterDomainAction {
16521 AddConstraint(AddConstraint),
16522 DropConstraint(DropConstraint),
16523 DropDefault(DropDefault),
16524 DropNotNull(DropNotNull),
16525 OwnerTo(OwnerTo),
16526 RenameConstraint(RenameConstraint),
16527 RenameTo(RenameTo),
16528 SetDefault(SetDefault),
16529 SetNotNull(SetNotNull),
16530 SetSchema(SetSchema),
16531 ValidateConstraint(ValidateConstraint),
16532}
16533
16534#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16535pub enum AlterMaterializedViewAction {
16536 DependsOnExtension(DependsOnExtension),
16537 NoDependsOnExtension(NoDependsOnExtension),
16538 RenameColumn(RenameColumn),
16539 RenameTo(RenameTo),
16540 SetSchema(SetSchema),
16541 AlterTableAction(AlterTableAction),
16542}
16543
16544#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16545pub enum AlterTableAction {
16546 AddColumn(AddColumn),
16547 AddConstraint(AddConstraint),
16548 AlterColumn(AlterColumn),
16549 AlterConstraint(AlterConstraint),
16550 AttachPartition(AttachPartition),
16551 ClusterOn(ClusterOn),
16552 DetachPartition(DetachPartition),
16553 DisableRls(DisableRls),
16554 DisableRule(DisableRule),
16555 DisableTrigger(DisableTrigger),
16556 DropColumn(DropColumn),
16557 DropConstraint(DropConstraint),
16558 EnableAlwaysRule(EnableAlwaysRule),
16559 EnableAlwaysTrigger(EnableAlwaysTrigger),
16560 EnableReplicaRule(EnableReplicaRule),
16561 EnableReplicaTrigger(EnableReplicaTrigger),
16562 EnableRls(EnableRls),
16563 EnableRule(EnableRule),
16564 EnableTrigger(EnableTrigger),
16565 ForceRls(ForceRls),
16566 InheritTable(InheritTable),
16567 MergePartitions(MergePartitions),
16568 NoForceRls(NoForceRls),
16569 NoInheritTable(NoInheritTable),
16570 NotOf(NotOf),
16571 OfType(OfType),
16572 OptionItemList(OptionItemList),
16573 OwnerTo(OwnerTo),
16574 RenameColumn(RenameColumn),
16575 RenameConstraint(RenameConstraint),
16576 RenameTo(RenameTo),
16577 ReplicaIdentity(ReplicaIdentity),
16578 ResetOptions(ResetOptions),
16579 SetAccessMethod(SetAccessMethod),
16580 SetLogged(SetLogged),
16581 SetOptions(SetOptions),
16582 SetSchema(SetSchema),
16583 SetTablespace(SetTablespace),
16584 SetUnlogged(SetUnlogged),
16585 SetWithoutCluster(SetWithoutCluster),
16586 SetWithoutOids(SetWithoutOids),
16587 SplitPartition(SplitPartition),
16588 ValidateConstraint(ValidateConstraint),
16589}
16590
16591#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16592pub enum ColumnConstraint {
16593 CheckConstraint(CheckConstraint),
16594 DefaultConstraint(DefaultConstraint),
16595 ExcludeConstraint(ExcludeConstraint),
16596 NotNullConstraint(NotNullConstraint),
16597 PrimaryKeyConstraint(PrimaryKeyConstraint),
16598 ReferencesConstraint(ReferencesConstraint),
16599 UniqueConstraint(UniqueConstraint),
16600}
16601
16602#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16603pub enum ConfigValue {
16604 Literal(Literal),
16605 NameRef(NameRef),
16606}
16607
16608#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16609pub enum ConflictAction {
16610 ConflictDoNothing(ConflictDoNothing),
16611 ConflictDoUpdateSet(ConflictDoUpdateSet),
16612}
16613
16614#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16615pub enum ConflictTarget {
16616 ConflictOnConstraint(ConflictOnConstraint),
16617 ConflictOnIndex(ConflictOnIndex),
16618}
16619
16620#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16621pub enum Constraint {
16622 CheckConstraint(CheckConstraint),
16623 DefaultConstraint(DefaultConstraint),
16624 ForeignKeyConstraint(ForeignKeyConstraint),
16625 GeneratedConstraint(GeneratedConstraint),
16626 NotNullConstraint(NotNullConstraint),
16627 NullConstraint(NullConstraint),
16628 PrimaryKeyConstraint(PrimaryKeyConstraint),
16629 ReferencesConstraint(ReferencesConstraint),
16630 UniqueConstraint(UniqueConstraint),
16631}
16632
16633#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16634pub enum ExplainStmt {
16635 CompoundSelect(CompoundSelect),
16636 CreateMaterializedView(CreateMaterializedView),
16637 CreateTableAs(CreateTableAs),
16638 Declare(Declare),
16639 Delete(Delete),
16640 Execute(Execute),
16641 Insert(Insert),
16642 Merge(Merge),
16643 ParenSelect(ParenSelect),
16644 Select(Select),
16645 SelectInto(SelectInto),
16646 Table(Table),
16647 Update(Update),
16648 Values(Values),
16649}
16650
16651#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16652pub enum Expr {
16653 ArrayExpr(ArrayExpr),
16654 BetweenExpr(BetweenExpr),
16655 BinExpr(BinExpr),
16656 CallExpr(CallExpr),
16657 CaseExpr(CaseExpr),
16658 CastExpr(CastExpr),
16659 FieldExpr(FieldExpr),
16660 IndexExpr(IndexExpr),
16661 Literal(Literal),
16662 NameRef(NameRef),
16663 ParenExpr(ParenExpr),
16664 PostfixExpr(PostfixExpr),
16665 PrefixExpr(PrefixExpr),
16666 SliceExpr(SliceExpr),
16667 TupleExpr(TupleExpr),
16668}
16669
16670#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16671pub enum FuncOption {
16672 AsFuncOption(AsFuncOption),
16673 BeginFuncOptionList(BeginFuncOptionList),
16674 CostFuncOption(CostFuncOption),
16675 LanguageFuncOption(LanguageFuncOption),
16676 LeakproofFuncOption(LeakproofFuncOption),
16677 ParallelFuncOption(ParallelFuncOption),
16678 ResetFuncOption(ResetFuncOption),
16679 ReturnFuncOption(ReturnFuncOption),
16680 RowsFuncOption(RowsFuncOption),
16681 SecurityFuncOption(SecurityFuncOption),
16682 SetFuncOption(SetFuncOption),
16683 StrictFuncOption(StrictFuncOption),
16684 SupportFuncOption(SupportFuncOption),
16685 TransformFuncOption(TransformFuncOption),
16686 VolatilityFuncOption(VolatilityFuncOption),
16687 WindowFuncOption(WindowFuncOption),
16688}
16689
16690#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16691pub enum GroupBy {
16692 GroupingCube(GroupingCube),
16693 GroupingExpr(GroupingExpr),
16694 GroupingRollup(GroupingRollup),
16695 GroupingSets(GroupingSets),
16696}
16697
16698#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16699pub enum JoinType {
16700 JoinCross(JoinCross),
16701 JoinFull(JoinFull),
16702 JoinInner(JoinInner),
16703 JoinLeft(JoinLeft),
16704 JoinRight(JoinRight),
16705}
16706
16707#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16708pub enum JsonBehavior {
16709 JsonBehaviorDefault(JsonBehaviorDefault),
16710 JsonBehaviorEmptyArray(JsonBehaviorEmptyArray),
16711 JsonBehaviorEmptyObject(JsonBehaviorEmptyObject),
16712 JsonBehaviorError(JsonBehaviorError),
16713 JsonBehaviorFalse(JsonBehaviorFalse),
16714 JsonBehaviorNull(JsonBehaviorNull),
16715 JsonBehaviorTrue(JsonBehaviorTrue),
16716 JsonBehaviorUnknown(JsonBehaviorUnknown),
16717}
16718
16719#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16720pub enum MatchType {
16721 MatchFull(MatchFull),
16722 MatchPartial(MatchPartial),
16723 MatchSimple(MatchSimple),
16724}
16725
16726#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16727pub enum MergeAction {
16728 MergeDelete(MergeDelete),
16729 MergeDoNothing(MergeDoNothing),
16730 MergeInsert(MergeInsert),
16731 MergeUpdate(MergeUpdate),
16732}
16733
16734#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16735pub enum MergeWhenClause {
16736 MergeWhenMatched(MergeWhenMatched),
16737 MergeWhenNotMatchedSource(MergeWhenNotMatchedSource),
16738 MergeWhenNotMatchedTarget(MergeWhenNotMatchedTarget),
16739}
16740
16741#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16742pub enum OnCommitAction {
16743 DeleteRows(DeleteRows),
16744 Drop(Drop),
16745 PreserveRows(PreserveRows),
16746}
16747
16748#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16749pub enum ParamMode {
16750 ParamIn(ParamIn),
16751 ParamInOut(ParamInOut),
16752 ParamOut(ParamOut),
16753 ParamVariadic(ParamVariadic),
16754}
16755
16756#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16757pub enum PartitionType {
16758 PartitionDefault(PartitionDefault),
16759 PartitionForValuesFrom(PartitionForValuesFrom),
16760 PartitionForValuesIn(PartitionForValuesIn),
16761 PartitionForValuesWith(PartitionForValuesWith),
16762}
16763
16764#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16765pub enum PreparableStmt {
16766 CompoundSelect(CompoundSelect),
16767 Delete(Delete),
16768 Insert(Insert),
16769 Merge(Merge),
16770 Select(Select),
16771 SelectInto(SelectInto),
16772 Table(Table),
16773 Update(Update),
16774 Values(Values),
16775}
16776
16777#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16778pub enum RefAction {
16779 Cascade(Cascade),
16780 NoAction(NoAction),
16781 Restrict(Restrict),
16782 SetDefaultColumns(SetDefaultColumns),
16783 SetNullColumns(SetNullColumns),
16784}
16785
16786#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16787pub enum SchemaElement {
16788 CreateIndex(CreateIndex),
16789 CreateSequence(CreateSequence),
16790 CreateTable(CreateTable),
16791 CreateTrigger(CreateTrigger),
16792 CreateView(CreateView),
16793 Grant(Grant),
16794}
16795
16796#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16797pub enum SelectVariant {
16798 CompoundSelect(CompoundSelect),
16799 ParenSelect(ParenSelect),
16800 Select(Select),
16801 SelectInto(SelectInto),
16802 Table(Table),
16803 Values(Values),
16804}
16805
16806#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16807pub enum SetColumn {
16808 SetMultipleColumns(SetMultipleColumns),
16809 SetSingleColumn(SetSingleColumn),
16810}
16811
16812#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16813pub enum Stmt {
16814 AlterAggregate(AlterAggregate),
16815 AlterCollation(AlterCollation),
16816 AlterConversion(AlterConversion),
16817 AlterDatabase(AlterDatabase),
16818 AlterDefaultPrivileges(AlterDefaultPrivileges),
16819 AlterDomain(AlterDomain),
16820 AlterEventTrigger(AlterEventTrigger),
16821 AlterExtension(AlterExtension),
16822 AlterForeignDataWrapper(AlterForeignDataWrapper),
16823 AlterForeignTable(AlterForeignTable),
16824 AlterFunction(AlterFunction),
16825 AlterGroup(AlterGroup),
16826 AlterIndex(AlterIndex),
16827 AlterLanguage(AlterLanguage),
16828 AlterLargeObject(AlterLargeObject),
16829 AlterMaterializedView(AlterMaterializedView),
16830 AlterOperator(AlterOperator),
16831 AlterOperatorClass(AlterOperatorClass),
16832 AlterOperatorFamily(AlterOperatorFamily),
16833 AlterPolicy(AlterPolicy),
16834 AlterProcedure(AlterProcedure),
16835 AlterPublication(AlterPublication),
16836 AlterRole(AlterRole),
16837 AlterRoutine(AlterRoutine),
16838 AlterRule(AlterRule),
16839 AlterSchema(AlterSchema),
16840 AlterSequence(AlterSequence),
16841 AlterServer(AlterServer),
16842 AlterStatistics(AlterStatistics),
16843 AlterSubscription(AlterSubscription),
16844 AlterSystem(AlterSystem),
16845 AlterTable(AlterTable),
16846 AlterTablespace(AlterTablespace),
16847 AlterTextSearchConfiguration(AlterTextSearchConfiguration),
16848 AlterTextSearchDictionary(AlterTextSearchDictionary),
16849 AlterTextSearchParser(AlterTextSearchParser),
16850 AlterTextSearchTemplate(AlterTextSearchTemplate),
16851 AlterTrigger(AlterTrigger),
16852 AlterType(AlterType),
16853 AlterUser(AlterUser),
16854 AlterUserMapping(AlterUserMapping),
16855 AlterView(AlterView),
16856 Analyze(Analyze),
16857 Begin(Begin),
16858 Call(Call),
16859 Checkpoint(Checkpoint),
16860 Close(Close),
16861 Cluster(Cluster),
16862 CommentOn(CommentOn),
16863 Commit(Commit),
16864 Copy(Copy),
16865 CreateAccessMethod(CreateAccessMethod),
16866 CreateAggregate(CreateAggregate),
16867 CreateCast(CreateCast),
16868 CreateCollation(CreateCollation),
16869 CreateConversion(CreateConversion),
16870 CreateDatabase(CreateDatabase),
16871 CreateDomain(CreateDomain),
16872 CreateEventTrigger(CreateEventTrigger),
16873 CreateExtension(CreateExtension),
16874 CreateForeignDataWrapper(CreateForeignDataWrapper),
16875 CreateForeignTable(CreateForeignTable),
16876 CreateFunction(CreateFunction),
16877 CreateGroup(CreateGroup),
16878 CreateIndex(CreateIndex),
16879 CreateLanguage(CreateLanguage),
16880 CreateMaterializedView(CreateMaterializedView),
16881 CreateOperator(CreateOperator),
16882 CreateOperatorClass(CreateOperatorClass),
16883 CreateOperatorFamily(CreateOperatorFamily),
16884 CreatePolicy(CreatePolicy),
16885 CreateProcedure(CreateProcedure),
16886 CreatePublication(CreatePublication),
16887 CreateRole(CreateRole),
16888 CreateRule(CreateRule),
16889 CreateSchema(CreateSchema),
16890 CreateSequence(CreateSequence),
16891 CreateServer(CreateServer),
16892 CreateStatistics(CreateStatistics),
16893 CreateSubscription(CreateSubscription),
16894 CreateTable(CreateTable),
16895 CreateTableAs(CreateTableAs),
16896 CreateTablespace(CreateTablespace),
16897 CreateTextSearchConfiguration(CreateTextSearchConfiguration),
16898 CreateTextSearchDictionary(CreateTextSearchDictionary),
16899 CreateTextSearchParser(CreateTextSearchParser),
16900 CreateTextSearchTemplate(CreateTextSearchTemplate),
16901 CreateTransform(CreateTransform),
16902 CreateTrigger(CreateTrigger),
16903 CreateType(CreateType),
16904 CreateUser(CreateUser),
16905 CreateUserMapping(CreateUserMapping),
16906 CreateView(CreateView),
16907 Deallocate(Deallocate),
16908 Declare(Declare),
16909 Delete(Delete),
16910 Discard(Discard),
16911 Do(Do),
16912 DropAccessMethod(DropAccessMethod),
16913 DropAggregate(DropAggregate),
16914 DropCast(DropCast),
16915 DropCollation(DropCollation),
16916 DropConversion(DropConversion),
16917 DropDatabase(DropDatabase),
16918 DropDomain(DropDomain),
16919 DropEventTrigger(DropEventTrigger),
16920 DropExtension(DropExtension),
16921 DropForeignDataWrapper(DropForeignDataWrapper),
16922 DropForeignTable(DropForeignTable),
16923 DropFunction(DropFunction),
16924 DropGroup(DropGroup),
16925 DropIndex(DropIndex),
16926 DropLanguage(DropLanguage),
16927 DropMaterializedView(DropMaterializedView),
16928 DropOperator(DropOperator),
16929 DropOperatorClass(DropOperatorClass),
16930 DropOperatorFamily(DropOperatorFamily),
16931 DropOwned(DropOwned),
16932 DropPolicy(DropPolicy),
16933 DropProcedure(DropProcedure),
16934 DropPublication(DropPublication),
16935 DropRole(DropRole),
16936 DropRoutine(DropRoutine),
16937 DropRule(DropRule),
16938 DropSchema(DropSchema),
16939 DropSequence(DropSequence),
16940 DropServer(DropServer),
16941 DropStatistics(DropStatistics),
16942 DropSubscription(DropSubscription),
16943 DropTable(DropTable),
16944 DropTablespace(DropTablespace),
16945 DropTextSearchConfig(DropTextSearchConfig),
16946 DropTextSearchDict(DropTextSearchDict),
16947 DropTextSearchParser(DropTextSearchParser),
16948 DropTextSearchTemplate(DropTextSearchTemplate),
16949 DropTransform(DropTransform),
16950 DropTrigger(DropTrigger),
16951 DropType(DropType),
16952 DropUser(DropUser),
16953 DropUserMapping(DropUserMapping),
16954 DropView(DropView),
16955 Execute(Execute),
16956 Explain(Explain),
16957 Fetch(Fetch),
16958 Grant(Grant),
16959 ImportForeignSchema(ImportForeignSchema),
16960 Insert(Insert),
16961 Listen(Listen),
16962 Load(Load),
16963 Lock(Lock),
16964 Merge(Merge),
16965 Move(Move),
16966 Notify(Notify),
16967 ParenSelect(ParenSelect),
16968 Prepare(Prepare),
16969 PrepareTransaction(PrepareTransaction),
16970 Reassign(Reassign),
16971 Refresh(Refresh),
16972 Reindex(Reindex),
16973 ReleaseSavepoint(ReleaseSavepoint),
16974 Reset(Reset),
16975 ResetSessionAuth(ResetSessionAuth),
16976 Revoke(Revoke),
16977 Rollback(Rollback),
16978 Savepoint(Savepoint),
16979 SecurityLabel(SecurityLabel),
16980 Select(Select),
16981 SelectInto(SelectInto),
16982 Set(Set),
16983 SetConstraints(SetConstraints),
16984 SetRole(SetRole),
16985 SetSessionAuth(SetSessionAuth),
16986 SetTransaction(SetTransaction),
16987 Show(Show),
16988 Table(Table),
16989 Truncate(Truncate),
16990 Unlisten(Unlisten),
16991 Update(Update),
16992 Vacuum(Vacuum),
16993 Values(Values),
16994}
16995
16996#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16997pub enum TableArg {
16998 Column(Column),
16999 LikeClause(LikeClause),
17000 TableConstraint(TableConstraint),
17001}
17002
17003#[derive(Debug, Clone, PartialEq, Eq, Hash)]
17004pub enum TableConstraint {
17005 CheckConstraint(CheckConstraint),
17006 ExcludeConstraint(ExcludeConstraint),
17007 ForeignKeyConstraint(ForeignKeyConstraint),
17008 PrimaryKeyConstraint(PrimaryKeyConstraint),
17009 UniqueConstraint(UniqueConstraint),
17010}
17011
17012#[derive(Debug, Clone, PartialEq, Eq, Hash)]
17013pub enum Timezone {
17014 WithTimezone(WithTimezone),
17015 WithoutTimezone(WithoutTimezone),
17016}
17017
17018#[derive(Debug, Clone, PartialEq, Eq, Hash)]
17019pub enum TransactionMode {
17020 Deferrable(Deferrable),
17021 NotDeferrable(NotDeferrable),
17022 ReadCommitted(ReadCommitted),
17023 ReadOnly(ReadOnly),
17024 ReadUncommitted(ReadUncommitted),
17025 ReadWrite(ReadWrite),
17026 RepeatableRead(RepeatableRead),
17027 Serializable(Serializable),
17028}
17029
17030#[derive(Debug, Clone, PartialEq, Eq, Hash)]
17031pub enum Type {
17032 ArrayType(ArrayType),
17033 BitType(BitType),
17034 CharType(CharType),
17035 DoubleType(DoubleType),
17036 ExprType(ExprType),
17037 IntervalType(IntervalType),
17038 PathType(PathType),
17039 PercentType(PercentType),
17040 TimeType(TimeType),
17041}
17042
17043#[derive(Debug, Clone, PartialEq, Eq, Hash)]
17044pub enum WithQuery {
17045 CompoundSelect(CompoundSelect),
17046 Delete(Delete),
17047 Insert(Insert),
17048 Merge(Merge),
17049 ParenSelect(ParenSelect),
17050 Select(Select),
17051 Table(Table),
17052 Update(Update),
17053 Values(Values),
17054}
17055impl AstNode for AddColumn {
17056 #[inline]
17057 fn can_cast(kind: SyntaxKind) -> bool {
17058 kind == SyntaxKind::ADD_COLUMN
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 AddConstraint {
17074 #[inline]
17075 fn can_cast(kind: SyntaxKind) -> bool {
17076 kind == SyntaxKind::ADD_CONSTRAINT
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 AddGenerated {
17092 #[inline]
17093 fn can_cast(kind: SyntaxKind) -> bool {
17094 kind == SyntaxKind::ADD_GENERATED
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 AddOpClassOptions {
17110 #[inline]
17111 fn can_cast(kind: SyntaxKind) -> bool {
17112 kind == SyntaxKind::ADD_OP_CLASS_OPTIONS
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 Aggregate {
17128 #[inline]
17129 fn can_cast(kind: SyntaxKind) -> bool {
17130 kind == SyntaxKind::AGGREGATE
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 Alias {
17146 #[inline]
17147 fn can_cast(kind: SyntaxKind) -> bool {
17148 kind == SyntaxKind::ALIAS
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 AllFn {
17164 #[inline]
17165 fn can_cast(kind: SyntaxKind) -> bool {
17166 kind == SyntaxKind::ALL_FN
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 AlterAggregate {
17182 #[inline]
17183 fn can_cast(kind: SyntaxKind) -> bool {
17184 kind == SyntaxKind::ALTER_AGGREGATE
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 AlterCollation {
17200 #[inline]
17201 fn can_cast(kind: SyntaxKind) -> bool {
17202 kind == SyntaxKind::ALTER_COLLATION
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 AlterColumn {
17218 #[inline]
17219 fn can_cast(kind: SyntaxKind) -> bool {
17220 kind == SyntaxKind::ALTER_COLUMN
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 AlterConstraint {
17236 #[inline]
17237 fn can_cast(kind: SyntaxKind) -> bool {
17238 kind == SyntaxKind::ALTER_CONSTRAINT
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 AlterConversion {
17254 #[inline]
17255 fn can_cast(kind: SyntaxKind) -> bool {
17256 kind == SyntaxKind::ALTER_CONVERSION
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 AlterDatabase {
17272 #[inline]
17273 fn can_cast(kind: SyntaxKind) -> bool {
17274 kind == SyntaxKind::ALTER_DATABASE
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 AlterDefaultPrivileges {
17290 #[inline]
17291 fn can_cast(kind: SyntaxKind) -> bool {
17292 kind == SyntaxKind::ALTER_DEFAULT_PRIVILEGES
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 AlterDomain {
17308 #[inline]
17309 fn can_cast(kind: SyntaxKind) -> bool {
17310 kind == SyntaxKind::ALTER_DOMAIN
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 AlterEventTrigger {
17326 #[inline]
17327 fn can_cast(kind: SyntaxKind) -> bool {
17328 kind == SyntaxKind::ALTER_EVENT_TRIGGER
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 AlterExtension {
17344 #[inline]
17345 fn can_cast(kind: SyntaxKind) -> bool {
17346 kind == SyntaxKind::ALTER_EXTENSION
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 AlterForeignDataWrapper {
17362 #[inline]
17363 fn can_cast(kind: SyntaxKind) -> bool {
17364 kind == SyntaxKind::ALTER_FOREIGN_DATA_WRAPPER
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 AlterForeignTable {
17380 #[inline]
17381 fn can_cast(kind: SyntaxKind) -> bool {
17382 kind == SyntaxKind::ALTER_FOREIGN_TABLE
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 AlterFunction {
17398 #[inline]
17399 fn can_cast(kind: SyntaxKind) -> bool {
17400 kind == SyntaxKind::ALTER_FUNCTION
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 AlterGroup {
17416 #[inline]
17417 fn can_cast(kind: SyntaxKind) -> bool {
17418 kind == SyntaxKind::ALTER_GROUP
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 AlterIndex {
17434 #[inline]
17435 fn can_cast(kind: SyntaxKind) -> bool {
17436 kind == SyntaxKind::ALTER_INDEX
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 AlterLanguage {
17452 #[inline]
17453 fn can_cast(kind: SyntaxKind) -> bool {
17454 kind == SyntaxKind::ALTER_LANGUAGE
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 AlterLargeObject {
17470 #[inline]
17471 fn can_cast(kind: SyntaxKind) -> bool {
17472 kind == SyntaxKind::ALTER_LARGE_OBJECT
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 AlterMaterializedView {
17488 #[inline]
17489 fn can_cast(kind: SyntaxKind) -> bool {
17490 kind == SyntaxKind::ALTER_MATERIALIZED_VIEW
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 AlterOperator {
17506 #[inline]
17507 fn can_cast(kind: SyntaxKind) -> bool {
17508 kind == SyntaxKind::ALTER_OPERATOR
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 AlterOperatorClass {
17524 #[inline]
17525 fn can_cast(kind: SyntaxKind) -> bool {
17526 kind == SyntaxKind::ALTER_OPERATOR_CLASS
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 AlterOperatorFamily {
17542 #[inline]
17543 fn can_cast(kind: SyntaxKind) -> bool {
17544 kind == SyntaxKind::ALTER_OPERATOR_FAMILY
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 AlterOption {
17560 #[inline]
17561 fn can_cast(kind: SyntaxKind) -> bool {
17562 kind == SyntaxKind::ALTER_OPTION
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 AlterOptionList {
17578 #[inline]
17579 fn can_cast(kind: SyntaxKind) -> bool {
17580 kind == SyntaxKind::ALTER_OPTION_LIST
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 AlterPolicy {
17596 #[inline]
17597 fn can_cast(kind: SyntaxKind) -> bool {
17598 kind == SyntaxKind::ALTER_POLICY
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 AlterProcedure {
17614 #[inline]
17615 fn can_cast(kind: SyntaxKind) -> bool {
17616 kind == SyntaxKind::ALTER_PROCEDURE
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 AlterPublication {
17632 #[inline]
17633 fn can_cast(kind: SyntaxKind) -> bool {
17634 kind == SyntaxKind::ALTER_PUBLICATION
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 AlterRole {
17650 #[inline]
17651 fn can_cast(kind: SyntaxKind) -> bool {
17652 kind == SyntaxKind::ALTER_ROLE
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 AlterRoutine {
17668 #[inline]
17669 fn can_cast(kind: SyntaxKind) -> bool {
17670 kind == SyntaxKind::ALTER_ROUTINE
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 AlterRule {
17686 #[inline]
17687 fn can_cast(kind: SyntaxKind) -> bool {
17688 kind == SyntaxKind::ALTER_RULE
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 AlterSchema {
17704 #[inline]
17705 fn can_cast(kind: SyntaxKind) -> bool {
17706 kind == SyntaxKind::ALTER_SCHEMA
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 AlterSequence {
17722 #[inline]
17723 fn can_cast(kind: SyntaxKind) -> bool {
17724 kind == SyntaxKind::ALTER_SEQUENCE
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 AlterServer {
17740 #[inline]
17741 fn can_cast(kind: SyntaxKind) -> bool {
17742 kind == SyntaxKind::ALTER_SERVER
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 AlterSetStatistics {
17758 #[inline]
17759 fn can_cast(kind: SyntaxKind) -> bool {
17760 kind == SyntaxKind::ALTER_SET_STATISTICS
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 AlterStatistics {
17776 #[inline]
17777 fn can_cast(kind: SyntaxKind) -> bool {
17778 kind == SyntaxKind::ALTER_STATISTICS
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 AlterSubscription {
17794 #[inline]
17795 fn can_cast(kind: SyntaxKind) -> bool {
17796 kind == SyntaxKind::ALTER_SUBSCRIPTION
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 AlterSystem {
17812 #[inline]
17813 fn can_cast(kind: SyntaxKind) -> bool {
17814 kind == SyntaxKind::ALTER_SYSTEM
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 AlterTable {
17830 #[inline]
17831 fn can_cast(kind: SyntaxKind) -> bool {
17832 kind == SyntaxKind::ALTER_TABLE
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 AlterTablespace {
17848 #[inline]
17849 fn can_cast(kind: SyntaxKind) -> bool {
17850 kind == SyntaxKind::ALTER_TABLESPACE
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 AlterTextSearchConfiguration {
17866 #[inline]
17867 fn can_cast(kind: SyntaxKind) -> bool {
17868 kind == SyntaxKind::ALTER_TEXT_SEARCH_CONFIGURATION
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 AlterTextSearchDictionary {
17884 #[inline]
17885 fn can_cast(kind: SyntaxKind) -> bool {
17886 kind == SyntaxKind::ALTER_TEXT_SEARCH_DICTIONARY
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 AlterTextSearchParser {
17902 #[inline]
17903 fn can_cast(kind: SyntaxKind) -> bool {
17904 kind == SyntaxKind::ALTER_TEXT_SEARCH_PARSER
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 AlterTextSearchTemplate {
17920 #[inline]
17921 fn can_cast(kind: SyntaxKind) -> bool {
17922 kind == SyntaxKind::ALTER_TEXT_SEARCH_TEMPLATE
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 AlterTrigger {
17938 #[inline]
17939 fn can_cast(kind: SyntaxKind) -> bool {
17940 kind == SyntaxKind::ALTER_TRIGGER
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 AlterType {
17956 #[inline]
17957 fn can_cast(kind: SyntaxKind) -> bool {
17958 kind == SyntaxKind::ALTER_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 AlterUser {
17974 #[inline]
17975 fn can_cast(kind: SyntaxKind) -> bool {
17976 kind == SyntaxKind::ALTER_USER
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 AlterUserMapping {
17992 #[inline]
17993 fn can_cast(kind: SyntaxKind) -> bool {
17994 kind == SyntaxKind::ALTER_USER_MAPPING
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 AlterView {
18010 #[inline]
18011 fn can_cast(kind: SyntaxKind) -> bool {
18012 kind == SyntaxKind::ALTER_VIEW
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 Analyze {
18028 #[inline]
18029 fn can_cast(kind: SyntaxKind) -> bool {
18030 kind == SyntaxKind::ANALYZE
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 AnyFn {
18046 #[inline]
18047 fn can_cast(kind: SyntaxKind) -> bool {
18048 kind == SyntaxKind::ANY_FN
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 Arg {
18064 #[inline]
18065 fn can_cast(kind: SyntaxKind) -> bool {
18066 kind == SyntaxKind::ARG
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 ArgList {
18082 #[inline]
18083 fn can_cast(kind: SyntaxKind) -> bool {
18084 kind == SyntaxKind::ARG_LIST
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 ArrayExpr {
18100 #[inline]
18101 fn can_cast(kind: SyntaxKind) -> bool {
18102 kind == SyntaxKind::ARRAY_EXPR
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 ArrayType {
18118 #[inline]
18119 fn can_cast(kind: SyntaxKind) -> bool {
18120 kind == SyntaxKind::ARRAY_TYPE
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 AsFuncOption {
18136 #[inline]
18137 fn can_cast(kind: SyntaxKind) -> bool {
18138 kind == SyntaxKind::AS_FUNC_OPTION
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 AsName {
18154 #[inline]
18155 fn can_cast(kind: SyntaxKind) -> bool {
18156 kind == SyntaxKind::AS_NAME
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 AtTimeZone {
18172 #[inline]
18173 fn can_cast(kind: SyntaxKind) -> bool {
18174 kind == SyntaxKind::AT_TIME_ZONE
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 AttachPartition {
18190 #[inline]
18191 fn can_cast(kind: SyntaxKind) -> bool {
18192 kind == SyntaxKind::ATTACH_PARTITION
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 AttributeList {
18208 #[inline]
18209 fn can_cast(kind: SyntaxKind) -> bool {
18210 kind == SyntaxKind::ATTRIBUTE_LIST
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 AttributeOption {
18226 #[inline]
18227 fn can_cast(kind: SyntaxKind) -> bool {
18228 kind == SyntaxKind::ATTRIBUTE_OPTION
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 AttributeValue {
18244 #[inline]
18245 fn can_cast(kind: SyntaxKind) -> bool {
18246 kind == SyntaxKind::ATTRIBUTE_VALUE
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 Begin {
18262 #[inline]
18263 fn can_cast(kind: SyntaxKind) -> bool {
18264 kind == SyntaxKind::BEGIN
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 BeginFuncOption {
18280 #[inline]
18281 fn can_cast(kind: SyntaxKind) -> bool {
18282 kind == SyntaxKind::BEGIN_FUNC_OPTION
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 BeginFuncOptionList {
18298 #[inline]
18299 fn can_cast(kind: SyntaxKind) -> bool {
18300 kind == SyntaxKind::BEGIN_FUNC_OPTION_LIST
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 BetweenExpr {
18316 #[inline]
18317 fn can_cast(kind: SyntaxKind) -> bool {
18318 kind == SyntaxKind::BETWEEN_EXPR
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 BinExpr {
18334 #[inline]
18335 fn can_cast(kind: SyntaxKind) -> bool {
18336 kind == SyntaxKind::BIN_EXPR
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 BitType {
18352 #[inline]
18353 fn can_cast(kind: SyntaxKind) -> bool {
18354 kind == SyntaxKind::BIT_TYPE
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 Call {
18370 #[inline]
18371 fn can_cast(kind: SyntaxKind) -> bool {
18372 kind == SyntaxKind::CALL
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 CallExpr {
18388 #[inline]
18389 fn can_cast(kind: SyntaxKind) -> bool {
18390 kind == SyntaxKind::CALL_EXPR
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 Cascade {
18406 #[inline]
18407 fn can_cast(kind: SyntaxKind) -> bool {
18408 kind == SyntaxKind::CASCADE
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 CaseExpr {
18424 #[inline]
18425 fn can_cast(kind: SyntaxKind) -> bool {
18426 kind == SyntaxKind::CASE_EXPR
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 CastExpr {
18442 #[inline]
18443 fn can_cast(kind: SyntaxKind) -> bool {
18444 kind == SyntaxKind::CAST_EXPR
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 CastSig {
18460 #[inline]
18461 fn can_cast(kind: SyntaxKind) -> bool {
18462 kind == SyntaxKind::CAST_SIG
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 CharType {
18478 #[inline]
18479 fn can_cast(kind: SyntaxKind) -> bool {
18480 kind == SyntaxKind::CHAR_TYPE
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 CheckConstraint {
18496 #[inline]
18497 fn can_cast(kind: SyntaxKind) -> bool {
18498 kind == SyntaxKind::CHECK_CONSTRAINT
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 Checkpoint {
18514 #[inline]
18515 fn can_cast(kind: SyntaxKind) -> bool {
18516 kind == SyntaxKind::CHECKPOINT
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 Close {
18532 #[inline]
18533 fn can_cast(kind: SyntaxKind) -> bool {
18534 kind == SyntaxKind::CLOSE
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 Cluster {
18550 #[inline]
18551 fn can_cast(kind: SyntaxKind) -> bool {
18552 kind == SyntaxKind::CLUSTER
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 ClusterOn {
18568 #[inline]
18569 fn can_cast(kind: SyntaxKind) -> bool {
18570 kind == SyntaxKind::CLUSTER_ON
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 Collate {
18586 #[inline]
18587 fn can_cast(kind: SyntaxKind) -> bool {
18588 kind == SyntaxKind::COLLATE
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 ColonColon {
18604 #[inline]
18605 fn can_cast(kind: SyntaxKind) -> bool {
18606 kind == SyntaxKind::COLON_COLON
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 ColonEq {
18622 #[inline]
18623 fn can_cast(kind: SyntaxKind) -> bool {
18624 kind == SyntaxKind::COLON_EQ
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 Column {
18640 #[inline]
18641 fn can_cast(kind: SyntaxKind) -> bool {
18642 kind == SyntaxKind::COLUMN
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 ColumnList {
18658 #[inline]
18659 fn can_cast(kind: SyntaxKind) -> bool {
18660 kind == SyntaxKind::COLUMN_LIST
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 CommentOn {
18676 #[inline]
18677 fn can_cast(kind: SyntaxKind) -> bool {
18678 kind == SyntaxKind::COMMENT_ON
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 Commit {
18694 #[inline]
18695 fn can_cast(kind: SyntaxKind) -> bool {
18696 kind == SyntaxKind::COMMIT
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 CompoundSelect {
18712 #[inline]
18713 fn can_cast(kind: SyntaxKind) -> bool {
18714 kind == SyntaxKind::COMPOUND_SELECT
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 CompressionMethod {
18730 #[inline]
18731 fn can_cast(kind: SyntaxKind) -> bool {
18732 kind == SyntaxKind::COMPRESSION_METHOD
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 ConflictDoNothing {
18748 #[inline]
18749 fn can_cast(kind: SyntaxKind) -> bool {
18750 kind == SyntaxKind::CONFLICT_DO_NOTHING
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 ConflictDoUpdateSet {
18766 #[inline]
18767 fn can_cast(kind: SyntaxKind) -> bool {
18768 kind == SyntaxKind::CONFLICT_DO_UPDATE_SET
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 ConflictIndexItem {
18784 #[inline]
18785 fn can_cast(kind: SyntaxKind) -> bool {
18786 kind == SyntaxKind::CONFLICT_INDEX_ITEM
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 ConflictIndexItemList {
18802 #[inline]
18803 fn can_cast(kind: SyntaxKind) -> bool {
18804 kind == SyntaxKind::CONFLICT_INDEX_ITEM_LIST
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 ConflictOnConstraint {
18820 #[inline]
18821 fn can_cast(kind: SyntaxKind) -> bool {
18822 kind == SyntaxKind::CONFLICT_ON_CONSTRAINT
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 ConflictOnIndex {
18838 #[inline]
18839 fn can_cast(kind: SyntaxKind) -> bool {
18840 kind == SyntaxKind::CONFLICT_ON_INDEX
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 ConstraintExclusion {
18856 #[inline]
18857 fn can_cast(kind: SyntaxKind) -> bool {
18858 kind == SyntaxKind::CONSTRAINT_EXCLUSION
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 ConstraintExclusionList {
18874 #[inline]
18875 fn can_cast(kind: SyntaxKind) -> bool {
18876 kind == SyntaxKind::CONSTRAINT_EXCLUSION_LIST
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 ConstraintIncludeClause {
18892 #[inline]
18893 fn can_cast(kind: SyntaxKind) -> bool {
18894 kind == SyntaxKind::CONSTRAINT_INCLUDE_CLAUSE
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 ConstraintIndexMethod {
18910 #[inline]
18911 fn can_cast(kind: SyntaxKind) -> bool {
18912 kind == SyntaxKind::CONSTRAINT_INDEX_METHOD
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 ConstraintIndexTablespace {
18928 #[inline]
18929 fn can_cast(kind: SyntaxKind) -> bool {
18930 kind == SyntaxKind::CONSTRAINT_INDEX_TABLESPACE
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 ConstraintName {
18946 #[inline]
18947 fn can_cast(kind: SyntaxKind) -> bool {
18948 kind == SyntaxKind::CONSTRAINT_NAME
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 Copy {
18964 #[inline]
18965 fn can_cast(kind: SyntaxKind) -> bool {
18966 kind == SyntaxKind::COPY
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 CopyOption {
18982 #[inline]
18983 fn can_cast(kind: SyntaxKind) -> bool {
18984 kind == SyntaxKind::COPY_OPTION
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 CopyOptionList {
19000 #[inline]
19001 fn can_cast(kind: SyntaxKind) -> bool {
19002 kind == SyntaxKind::COPY_OPTION_LIST
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 CostFuncOption {
19018 #[inline]
19019 fn can_cast(kind: SyntaxKind) -> bool {
19020 kind == SyntaxKind::COST_FUNC_OPTION
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 CreateAccessMethod {
19036 #[inline]
19037 fn can_cast(kind: SyntaxKind) -> bool {
19038 kind == SyntaxKind::CREATE_ACCESS_METHOD
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 CreateAggregate {
19054 #[inline]
19055 fn can_cast(kind: SyntaxKind) -> bool {
19056 kind == SyntaxKind::CREATE_AGGREGATE
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 CreateCast {
19072 #[inline]
19073 fn can_cast(kind: SyntaxKind) -> bool {
19074 kind == SyntaxKind::CREATE_CAST
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 CreateCollation {
19090 #[inline]
19091 fn can_cast(kind: SyntaxKind) -> bool {
19092 kind == SyntaxKind::CREATE_COLLATION
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 CreateConversion {
19108 #[inline]
19109 fn can_cast(kind: SyntaxKind) -> bool {
19110 kind == SyntaxKind::CREATE_CONVERSION
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 CreateDatabase {
19126 #[inline]
19127 fn can_cast(kind: SyntaxKind) -> bool {
19128 kind == SyntaxKind::CREATE_DATABASE
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 CreateDatabaseOption {
19144 #[inline]
19145 fn can_cast(kind: SyntaxKind) -> bool {
19146 kind == SyntaxKind::CREATE_DATABASE_OPTION
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 CreateDatabaseOptionList {
19162 #[inline]
19163 fn can_cast(kind: SyntaxKind) -> bool {
19164 kind == SyntaxKind::CREATE_DATABASE_OPTION_LIST
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 CreateDomain {
19180 #[inline]
19181 fn can_cast(kind: SyntaxKind) -> bool {
19182 kind == SyntaxKind::CREATE_DOMAIN
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 CreateEventTrigger {
19198 #[inline]
19199 fn can_cast(kind: SyntaxKind) -> bool {
19200 kind == SyntaxKind::CREATE_EVENT_TRIGGER
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 CreateExtension {
19216 #[inline]
19217 fn can_cast(kind: SyntaxKind) -> bool {
19218 kind == SyntaxKind::CREATE_EXTENSION
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 CreateForeignDataWrapper {
19234 #[inline]
19235 fn can_cast(kind: SyntaxKind) -> bool {
19236 kind == SyntaxKind::CREATE_FOREIGN_DATA_WRAPPER
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 CreateForeignTable {
19252 #[inline]
19253 fn can_cast(kind: SyntaxKind) -> bool {
19254 kind == SyntaxKind::CREATE_FOREIGN_TABLE
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 CreateFunction {
19270 #[inline]
19271 fn can_cast(kind: SyntaxKind) -> bool {
19272 kind == SyntaxKind::CREATE_FUNCTION
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 CreateGroup {
19288 #[inline]
19289 fn can_cast(kind: SyntaxKind) -> bool {
19290 kind == SyntaxKind::CREATE_GROUP
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 CreateIndex {
19306 #[inline]
19307 fn can_cast(kind: SyntaxKind) -> bool {
19308 kind == SyntaxKind::CREATE_INDEX
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 CreateLanguage {
19324 #[inline]
19325 fn can_cast(kind: SyntaxKind) -> bool {
19326 kind == SyntaxKind::CREATE_LANGUAGE
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 CreateMaterializedView {
19342 #[inline]
19343 fn can_cast(kind: SyntaxKind) -> bool {
19344 kind == SyntaxKind::CREATE_MATERIALIZED_VIEW
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 CreateOperator {
19360 #[inline]
19361 fn can_cast(kind: SyntaxKind) -> bool {
19362 kind == SyntaxKind::CREATE_OPERATOR
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 CreateOperatorClass {
19378 #[inline]
19379 fn can_cast(kind: SyntaxKind) -> bool {
19380 kind == SyntaxKind::CREATE_OPERATOR_CLASS
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 CreateOperatorFamily {
19396 #[inline]
19397 fn can_cast(kind: SyntaxKind) -> bool {
19398 kind == SyntaxKind::CREATE_OPERATOR_FAMILY
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 CreatePolicy {
19414 #[inline]
19415 fn can_cast(kind: SyntaxKind) -> bool {
19416 kind == SyntaxKind::CREATE_POLICY
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 CreateProcedure {
19432 #[inline]
19433 fn can_cast(kind: SyntaxKind) -> bool {
19434 kind == SyntaxKind::CREATE_PROCEDURE
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 CreatePublication {
19450 #[inline]
19451 fn can_cast(kind: SyntaxKind) -> bool {
19452 kind == SyntaxKind::CREATE_PUBLICATION
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 CreateRole {
19468 #[inline]
19469 fn can_cast(kind: SyntaxKind) -> bool {
19470 kind == SyntaxKind::CREATE_ROLE
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 CreateRule {
19486 #[inline]
19487 fn can_cast(kind: SyntaxKind) -> bool {
19488 kind == SyntaxKind::CREATE_RULE
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 CreateSchema {
19504 #[inline]
19505 fn can_cast(kind: SyntaxKind) -> bool {
19506 kind == SyntaxKind::CREATE_SCHEMA
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 CreateSequence {
19522 #[inline]
19523 fn can_cast(kind: SyntaxKind) -> bool {
19524 kind == SyntaxKind::CREATE_SEQUENCE
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 CreateServer {
19540 #[inline]
19541 fn can_cast(kind: SyntaxKind) -> bool {
19542 kind == SyntaxKind::CREATE_SERVER
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 CreateStatistics {
19558 #[inline]
19559 fn can_cast(kind: SyntaxKind) -> bool {
19560 kind == SyntaxKind::CREATE_STATISTICS
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 CreateSubscription {
19576 #[inline]
19577 fn can_cast(kind: SyntaxKind) -> bool {
19578 kind == SyntaxKind::CREATE_SUBSCRIPTION
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 CreateTable {
19594 #[inline]
19595 fn can_cast(kind: SyntaxKind) -> bool {
19596 kind == SyntaxKind::CREATE_TABLE
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 CreateTableAs {
19612 #[inline]
19613 fn can_cast(kind: SyntaxKind) -> bool {
19614 kind == SyntaxKind::CREATE_TABLE_AS
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 CreateTablespace {
19630 #[inline]
19631 fn can_cast(kind: SyntaxKind) -> bool {
19632 kind == SyntaxKind::CREATE_TABLESPACE
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 CreateTextSearchConfiguration {
19648 #[inline]
19649 fn can_cast(kind: SyntaxKind) -> bool {
19650 kind == SyntaxKind::CREATE_TEXT_SEARCH_CONFIGURATION
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 CreateTextSearchDictionary {
19666 #[inline]
19667 fn can_cast(kind: SyntaxKind) -> bool {
19668 kind == SyntaxKind::CREATE_TEXT_SEARCH_DICTIONARY
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 CreateTextSearchParser {
19684 #[inline]
19685 fn can_cast(kind: SyntaxKind) -> bool {
19686 kind == SyntaxKind::CREATE_TEXT_SEARCH_PARSER
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 CreateTextSearchTemplate {
19702 #[inline]
19703 fn can_cast(kind: SyntaxKind) -> bool {
19704 kind == SyntaxKind::CREATE_TEXT_SEARCH_TEMPLATE
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 CreateTransform {
19720 #[inline]
19721 fn can_cast(kind: SyntaxKind) -> bool {
19722 kind == SyntaxKind::CREATE_TRANSFORM
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 CreateTrigger {
19738 #[inline]
19739 fn can_cast(kind: SyntaxKind) -> bool {
19740 kind == SyntaxKind::CREATE_TRIGGER
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 CreateType {
19756 #[inline]
19757 fn can_cast(kind: SyntaxKind) -> bool {
19758 kind == SyntaxKind::CREATE_TYPE
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 CreateUser {
19774 #[inline]
19775 fn can_cast(kind: SyntaxKind) -> bool {
19776 kind == SyntaxKind::CREATE_USER
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 CreateUserMapping {
19792 #[inline]
19793 fn can_cast(kind: SyntaxKind) -> bool {
19794 kind == SyntaxKind::CREATE_USER_MAPPING
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 CreateView {
19810 #[inline]
19811 fn can_cast(kind: SyntaxKind) -> bool {
19812 kind == SyntaxKind::CREATE_VIEW
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 CustomOp {
19828 #[inline]
19829 fn can_cast(kind: SyntaxKind) -> bool {
19830 kind == SyntaxKind::CUSTOM_OP
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 Deallocate {
19846 #[inline]
19847 fn can_cast(kind: SyntaxKind) -> bool {
19848 kind == SyntaxKind::DEALLOCATE
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 Declare {
19864 #[inline]
19865 fn can_cast(kind: SyntaxKind) -> bool {
19866 kind == SyntaxKind::DECLARE
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 DefaultConstraint {
19882 #[inline]
19883 fn can_cast(kind: SyntaxKind) -> bool {
19884 kind == SyntaxKind::DEFAULT_CONSTRAINT
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 Deferrable {
19900 #[inline]
19901 fn can_cast(kind: SyntaxKind) -> bool {
19902 kind == SyntaxKind::DEFERRABLE
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 DeferrableConstraintOption {
19918 #[inline]
19919 fn can_cast(kind: SyntaxKind) -> bool {
19920 kind == SyntaxKind::DEFERRABLE_CONSTRAINT_OPTION
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 Delete {
19936 #[inline]
19937 fn can_cast(kind: SyntaxKind) -> bool {
19938 kind == SyntaxKind::DELETE
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 DeleteRows {
19954 #[inline]
19955 fn can_cast(kind: SyntaxKind) -> bool {
19956 kind == SyntaxKind::DELETE_ROWS
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 DependsOnExtension {
19972 #[inline]
19973 fn can_cast(kind: SyntaxKind) -> bool {
19974 kind == SyntaxKind::DEPENDS_ON_EXTENSION
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 DetachPartition {
19990 #[inline]
19991 fn can_cast(kind: SyntaxKind) -> bool {
19992 kind == SyntaxKind::DETACH_PARTITION
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 DisableRls {
20008 #[inline]
20009 fn can_cast(kind: SyntaxKind) -> bool {
20010 kind == SyntaxKind::DISABLE_RLS
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 DisableRule {
20026 #[inline]
20027 fn can_cast(kind: SyntaxKind) -> bool {
20028 kind == SyntaxKind::DISABLE_RULE
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 DisableTrigger {
20044 #[inline]
20045 fn can_cast(kind: SyntaxKind) -> bool {
20046 kind == SyntaxKind::DISABLE_TRIGGER
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 Discard {
20062 #[inline]
20063 fn can_cast(kind: SyntaxKind) -> bool {
20064 kind == SyntaxKind::DISCARD
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 DistinctClause {
20080 #[inline]
20081 fn can_cast(kind: SyntaxKind) -> bool {
20082 kind == SyntaxKind::DISTINCT_CLAUSE
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 Do {
20098 #[inline]
20099 fn can_cast(kind: SyntaxKind) -> bool {
20100 kind == SyntaxKind::DO
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 DoubleType {
20116 #[inline]
20117 fn can_cast(kind: SyntaxKind) -> bool {
20118 kind == SyntaxKind::DOUBLE_TYPE
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 Drop {
20134 #[inline]
20135 fn can_cast(kind: SyntaxKind) -> bool {
20136 kind == SyntaxKind::DROP
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 DropAccessMethod {
20152 #[inline]
20153 fn can_cast(kind: SyntaxKind) -> bool {
20154 kind == SyntaxKind::DROP_ACCESS_METHOD
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 DropAggregate {
20170 #[inline]
20171 fn can_cast(kind: SyntaxKind) -> bool {
20172 kind == SyntaxKind::DROP_AGGREGATE
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 DropCast {
20188 #[inline]
20189 fn can_cast(kind: SyntaxKind) -> bool {
20190 kind == SyntaxKind::DROP_CAST
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 DropCollation {
20206 #[inline]
20207 fn can_cast(kind: SyntaxKind) -> bool {
20208 kind == SyntaxKind::DROP_COLLATION
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 DropColumn {
20224 #[inline]
20225 fn can_cast(kind: SyntaxKind) -> bool {
20226 kind == SyntaxKind::DROP_COLUMN
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 DropConstraint {
20242 #[inline]
20243 fn can_cast(kind: SyntaxKind) -> bool {
20244 kind == SyntaxKind::DROP_CONSTRAINT
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 DropConversion {
20260 #[inline]
20261 fn can_cast(kind: SyntaxKind) -> bool {
20262 kind == SyntaxKind::DROP_CONVERSION
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 DropDatabase {
20278 #[inline]
20279 fn can_cast(kind: SyntaxKind) -> bool {
20280 kind == SyntaxKind::DROP_DATABASE
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 DropDefault {
20296 #[inline]
20297 fn can_cast(kind: SyntaxKind) -> bool {
20298 kind == SyntaxKind::DROP_DEFAULT
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 DropDomain {
20314 #[inline]
20315 fn can_cast(kind: SyntaxKind) -> bool {
20316 kind == SyntaxKind::DROP_DOMAIN
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 DropEventTrigger {
20332 #[inline]
20333 fn can_cast(kind: SyntaxKind) -> bool {
20334 kind == SyntaxKind::DROP_EVENT_TRIGGER
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 DropExpression {
20350 #[inline]
20351 fn can_cast(kind: SyntaxKind) -> bool {
20352 kind == SyntaxKind::DROP_EXPRESSION
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 DropExtension {
20368 #[inline]
20369 fn can_cast(kind: SyntaxKind) -> bool {
20370 kind == SyntaxKind::DROP_EXTENSION
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 DropForeignDataWrapper {
20386 #[inline]
20387 fn can_cast(kind: SyntaxKind) -> bool {
20388 kind == SyntaxKind::DROP_FOREIGN_DATA_WRAPPER
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 DropForeignTable {
20404 #[inline]
20405 fn can_cast(kind: SyntaxKind) -> bool {
20406 kind == SyntaxKind::DROP_FOREIGN_TABLE
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 DropFunction {
20422 #[inline]
20423 fn can_cast(kind: SyntaxKind) -> bool {
20424 kind == SyntaxKind::DROP_FUNCTION
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 DropGroup {
20440 #[inline]
20441 fn can_cast(kind: SyntaxKind) -> bool {
20442 kind == SyntaxKind::DROP_GROUP
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 DropIdentity {
20458 #[inline]
20459 fn can_cast(kind: SyntaxKind) -> bool {
20460 kind == SyntaxKind::DROP_IDENTITY
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 DropIndex {
20476 #[inline]
20477 fn can_cast(kind: SyntaxKind) -> bool {
20478 kind == SyntaxKind::DROP_INDEX
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 DropLanguage {
20494 #[inline]
20495 fn can_cast(kind: SyntaxKind) -> bool {
20496 kind == SyntaxKind::DROP_LANGUAGE
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 DropMaterializedView {
20512 #[inline]
20513 fn can_cast(kind: SyntaxKind) -> bool {
20514 kind == SyntaxKind::DROP_MATERIALIZED_VIEW
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 DropNotNull {
20530 #[inline]
20531 fn can_cast(kind: SyntaxKind) -> bool {
20532 kind == SyntaxKind::DROP_NOT_NULL
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 DropOpClassOption {
20548 #[inline]
20549 fn can_cast(kind: SyntaxKind) -> bool {
20550 kind == SyntaxKind::DROP_OP_CLASS_OPTION
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 DropOpClassOptionList {
20566 #[inline]
20567 fn can_cast(kind: SyntaxKind) -> bool {
20568 kind == SyntaxKind::DROP_OP_CLASS_OPTION_LIST
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 DropOpClassOptions {
20584 #[inline]
20585 fn can_cast(kind: SyntaxKind) -> bool {
20586 kind == SyntaxKind::DROP_OP_CLASS_OPTIONS
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 DropOperator {
20602 #[inline]
20603 fn can_cast(kind: SyntaxKind) -> bool {
20604 kind == SyntaxKind::DROP_OPERATOR
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 DropOperatorClass {
20620 #[inline]
20621 fn can_cast(kind: SyntaxKind) -> bool {
20622 kind == SyntaxKind::DROP_OPERATOR_CLASS
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 DropOperatorFamily {
20638 #[inline]
20639 fn can_cast(kind: SyntaxKind) -> bool {
20640 kind == SyntaxKind::DROP_OPERATOR_FAMILY
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 DropOwned {
20656 #[inline]
20657 fn can_cast(kind: SyntaxKind) -> bool {
20658 kind == SyntaxKind::DROP_OWNED
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 DropPolicy {
20674 #[inline]
20675 fn can_cast(kind: SyntaxKind) -> bool {
20676 kind == SyntaxKind::DROP_POLICY
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 DropProcedure {
20692 #[inline]
20693 fn can_cast(kind: SyntaxKind) -> bool {
20694 kind == SyntaxKind::DROP_PROCEDURE
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 DropPublication {
20710 #[inline]
20711 fn can_cast(kind: SyntaxKind) -> bool {
20712 kind == SyntaxKind::DROP_PUBLICATION
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 DropRole {
20728 #[inline]
20729 fn can_cast(kind: SyntaxKind) -> bool {
20730 kind == SyntaxKind::DROP_ROLE
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 DropRoutine {
20746 #[inline]
20747 fn can_cast(kind: SyntaxKind) -> bool {
20748 kind == SyntaxKind::DROP_ROUTINE
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 DropRule {
20764 #[inline]
20765 fn can_cast(kind: SyntaxKind) -> bool {
20766 kind == SyntaxKind::DROP_RULE
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 DropSchema {
20782 #[inline]
20783 fn can_cast(kind: SyntaxKind) -> bool {
20784 kind == SyntaxKind::DROP_SCHEMA
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 DropSequence {
20800 #[inline]
20801 fn can_cast(kind: SyntaxKind) -> bool {
20802 kind == SyntaxKind::DROP_SEQUENCE
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 DropServer {
20818 #[inline]
20819 fn can_cast(kind: SyntaxKind) -> bool {
20820 kind == SyntaxKind::DROP_SERVER
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 DropStatistics {
20836 #[inline]
20837 fn can_cast(kind: SyntaxKind) -> bool {
20838 kind == SyntaxKind::DROP_STATISTICS
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 DropSubscription {
20854 #[inline]
20855 fn can_cast(kind: SyntaxKind) -> bool {
20856 kind == SyntaxKind::DROP_SUBSCRIPTION
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 DropTable {
20872 #[inline]
20873 fn can_cast(kind: SyntaxKind) -> bool {
20874 kind == SyntaxKind::DROP_TABLE
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 DropTablespace {
20890 #[inline]
20891 fn can_cast(kind: SyntaxKind) -> bool {
20892 kind == SyntaxKind::DROP_TABLESPACE
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 DropTextSearchConfig {
20908 #[inline]
20909 fn can_cast(kind: SyntaxKind) -> bool {
20910 kind == SyntaxKind::DROP_TEXT_SEARCH_CONFIG
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 DropTextSearchDict {
20926 #[inline]
20927 fn can_cast(kind: SyntaxKind) -> bool {
20928 kind == SyntaxKind::DROP_TEXT_SEARCH_DICT
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 DropTextSearchParser {
20944 #[inline]
20945 fn can_cast(kind: SyntaxKind) -> bool {
20946 kind == SyntaxKind::DROP_TEXT_SEARCH_PARSER
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 DropTextSearchTemplate {
20962 #[inline]
20963 fn can_cast(kind: SyntaxKind) -> bool {
20964 kind == SyntaxKind::DROP_TEXT_SEARCH_TEMPLATE
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 DropTransform {
20980 #[inline]
20981 fn can_cast(kind: SyntaxKind) -> bool {
20982 kind == SyntaxKind::DROP_TRANSFORM
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 DropTrigger {
20998 #[inline]
20999 fn can_cast(kind: SyntaxKind) -> bool {
21000 kind == SyntaxKind::DROP_TRIGGER
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 DropType {
21016 #[inline]
21017 fn can_cast(kind: SyntaxKind) -> bool {
21018 kind == SyntaxKind::DROP_TYPE
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 DropUser {
21034 #[inline]
21035 fn can_cast(kind: SyntaxKind) -> bool {
21036 kind == SyntaxKind::DROP_USER
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 DropUserMapping {
21052 #[inline]
21053 fn can_cast(kind: SyntaxKind) -> bool {
21054 kind == SyntaxKind::DROP_USER_MAPPING
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 DropView {
21070 #[inline]
21071 fn can_cast(kind: SyntaxKind) -> bool {
21072 kind == SyntaxKind::DROP_VIEW
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 ElseClause {
21088 #[inline]
21089 fn can_cast(kind: SyntaxKind) -> bool {
21090 kind == SyntaxKind::ELSE_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 EnableAlwaysRule {
21106 #[inline]
21107 fn can_cast(kind: SyntaxKind) -> bool {
21108 kind == SyntaxKind::ENABLE_ALWAYS_RULE
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 EnableAlwaysTrigger {
21124 #[inline]
21125 fn can_cast(kind: SyntaxKind) -> bool {
21126 kind == SyntaxKind::ENABLE_ALWAYS_TRIGGER
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 EnableReplicaRule {
21142 #[inline]
21143 fn can_cast(kind: SyntaxKind) -> bool {
21144 kind == SyntaxKind::ENABLE_REPLICA_RULE
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 EnableReplicaTrigger {
21160 #[inline]
21161 fn can_cast(kind: SyntaxKind) -> bool {
21162 kind == SyntaxKind::ENABLE_REPLICA_TRIGGER
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 EnableRls {
21178 #[inline]
21179 fn can_cast(kind: SyntaxKind) -> bool {
21180 kind == SyntaxKind::ENABLE_RLS
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 EnableRule {
21196 #[inline]
21197 fn can_cast(kind: SyntaxKind) -> bool {
21198 kind == SyntaxKind::ENABLE_RULE
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 EnableTrigger {
21214 #[inline]
21215 fn can_cast(kind: SyntaxKind) -> bool {
21216 kind == SyntaxKind::ENABLE_TRIGGER
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 Enforced {
21232 #[inline]
21233 fn can_cast(kind: SyntaxKind) -> bool {
21234 kind == SyntaxKind::ENFORCED
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 EventTriggerWhen {
21250 #[inline]
21251 fn can_cast(kind: SyntaxKind) -> bool {
21252 kind == SyntaxKind::EVENT_TRIGGER_WHEN
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 EventTriggerWhenClause {
21268 #[inline]
21269 fn can_cast(kind: SyntaxKind) -> bool {
21270 kind == SyntaxKind::EVENT_TRIGGER_WHEN_CLAUSE
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 ExceptTables {
21286 #[inline]
21287 fn can_cast(kind: SyntaxKind) -> bool {
21288 kind == SyntaxKind::EXCEPT_TABLES
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 ExcludeConstraint {
21304 #[inline]
21305 fn can_cast(kind: SyntaxKind) -> bool {
21306 kind == SyntaxKind::EXCLUDE_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 Execute {
21322 #[inline]
21323 fn can_cast(kind: SyntaxKind) -> bool {
21324 kind == SyntaxKind::EXECUTE
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 ExistsFn {
21340 #[inline]
21341 fn can_cast(kind: SyntaxKind) -> bool {
21342 kind == SyntaxKind::EXISTS_FN
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 Explain {
21358 #[inline]
21359 fn can_cast(kind: SyntaxKind) -> bool {
21360 kind == SyntaxKind::EXPLAIN
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 ExprAsName {
21376 #[inline]
21377 fn can_cast(kind: SyntaxKind) -> bool {
21378 kind == SyntaxKind::EXPR_AS_NAME
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 ExprType {
21394 #[inline]
21395 fn can_cast(kind: SyntaxKind) -> bool {
21396 kind == SyntaxKind::EXPR_TYPE
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 ExtractFn {
21412 #[inline]
21413 fn can_cast(kind: SyntaxKind) -> bool {
21414 kind == SyntaxKind::EXTRACT_FN
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 FatArrow {
21430 #[inline]
21431 fn can_cast(kind: SyntaxKind) -> bool {
21432 kind == SyntaxKind::FAT_ARROW
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 FdwOption {
21448 #[inline]
21449 fn can_cast(kind: SyntaxKind) -> bool {
21450 kind == SyntaxKind::FDW_OPTION
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 FdwOptionList {
21466 #[inline]
21467 fn can_cast(kind: SyntaxKind) -> bool {
21468 kind == SyntaxKind::FDW_OPTION_LIST
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 Fetch {
21484 #[inline]
21485 fn can_cast(kind: SyntaxKind) -> bool {
21486 kind == SyntaxKind::FETCH
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 FetchClause {
21502 #[inline]
21503 fn can_cast(kind: SyntaxKind) -> bool {
21504 kind == SyntaxKind::FETCH_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 FieldExpr {
21520 #[inline]
21521 fn can_cast(kind: SyntaxKind) -> bool {
21522 kind == SyntaxKind::FIELD_EXPR
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 FilterClause {
21538 #[inline]
21539 fn can_cast(kind: SyntaxKind) -> bool {
21540 kind == SyntaxKind::FILTER_CLAUSE
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 ForProvider {
21556 #[inline]
21557 fn can_cast(kind: SyntaxKind) -> bool {
21558 kind == SyntaxKind::FOR_PROVIDER
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 ForceRls {
21574 #[inline]
21575 fn can_cast(kind: SyntaxKind) -> bool {
21576 kind == SyntaxKind::FORCE_RLS
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 ForeignKeyConstraint {
21592 #[inline]
21593 fn can_cast(kind: SyntaxKind) -> bool {
21594 kind == SyntaxKind::FOREIGN_KEY_CONSTRAINT
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 FrameClause {
21610 #[inline]
21611 fn can_cast(kind: SyntaxKind) -> bool {
21612 kind == SyntaxKind::FRAME_CLAUSE
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 FromClause {
21628 #[inline]
21629 fn can_cast(kind: SyntaxKind) -> bool {
21630 kind == SyntaxKind::FROM_CLAUSE
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 FromItem {
21646 #[inline]
21647 fn can_cast(kind: SyntaxKind) -> bool {
21648 kind == SyntaxKind::FROM_ITEM
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 FromTable {
21664 #[inline]
21665 fn can_cast(kind: SyntaxKind) -> bool {
21666 kind == SyntaxKind::FROM_TABLE
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 FuncOptionList {
21682 #[inline]
21683 fn can_cast(kind: SyntaxKind) -> bool {
21684 kind == SyntaxKind::FUNC_OPTION_LIST
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 FunctionSig {
21700 #[inline]
21701 fn can_cast(kind: SyntaxKind) -> bool {
21702 kind == SyntaxKind::FUNCTION_SIG
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 FunctionSigList {
21718 #[inline]
21719 fn can_cast(kind: SyntaxKind) -> bool {
21720 kind == SyntaxKind::FUNCTION_SIG_LIST
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 GeneratedConstraint {
21736 #[inline]
21737 fn can_cast(kind: SyntaxKind) -> bool {
21738 kind == SyntaxKind::GENERATED_CONSTRAINT
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 Grant {
21754 #[inline]
21755 fn can_cast(kind: SyntaxKind) -> bool {
21756 kind == SyntaxKind::GRANT
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 GrantDefaultPrivileges {
21772 #[inline]
21773 fn can_cast(kind: SyntaxKind) -> bool {
21774 kind == SyntaxKind::GRANT_DEFAULT_PRIVILEGES
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 GroupByClause {
21790 #[inline]
21791 fn can_cast(kind: SyntaxKind) -> bool {
21792 kind == SyntaxKind::GROUP_BY_CLAUSE
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 GroupByList {
21808 #[inline]
21809 fn can_cast(kind: SyntaxKind) -> bool {
21810 kind == SyntaxKind::GROUP_BY_LIST
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 GroupingCube {
21826 #[inline]
21827 fn can_cast(kind: SyntaxKind) -> bool {
21828 kind == SyntaxKind::GROUPING_CUBE
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 GroupingExpr {
21844 #[inline]
21845 fn can_cast(kind: SyntaxKind) -> bool {
21846 kind == SyntaxKind::GROUPING_EXPR
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 GroupingRollup {
21862 #[inline]
21863 fn can_cast(kind: SyntaxKind) -> bool {
21864 kind == SyntaxKind::GROUPING_ROLLUP
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 GroupingSets {
21880 #[inline]
21881 fn can_cast(kind: SyntaxKind) -> bool {
21882 kind == SyntaxKind::GROUPING_SETS
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 Gteq {
21898 #[inline]
21899 fn can_cast(kind: SyntaxKind) -> bool {
21900 kind == SyntaxKind::GTEQ
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 HandlerClause {
21916 #[inline]
21917 fn can_cast(kind: SyntaxKind) -> bool {
21918 kind == SyntaxKind::HANDLER_CLAUSE
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 HavingClause {
21934 #[inline]
21935 fn can_cast(kind: SyntaxKind) -> bool {
21936 kind == SyntaxKind::HAVING_CLAUSE
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 IfExists {
21952 #[inline]
21953 fn can_cast(kind: SyntaxKind) -> bool {
21954 kind == SyntaxKind::IF_EXISTS
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 IfNotExists {
21970 #[inline]
21971 fn can_cast(kind: SyntaxKind) -> bool {
21972 kind == SyntaxKind::IF_NOT_EXISTS
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 ImportForeignSchema {
21988 #[inline]
21989 fn can_cast(kind: SyntaxKind) -> bool {
21990 kind == SyntaxKind::IMPORT_FOREIGN_SCHEMA
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 IndexExpr {
22006 #[inline]
22007 fn can_cast(kind: SyntaxKind) -> bool {
22008 kind == SyntaxKind::INDEX_EXPR
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 Inherit {
22024 #[inline]
22025 fn can_cast(kind: SyntaxKind) -> bool {
22026 kind == SyntaxKind::INHERIT
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 InheritTable {
22042 #[inline]
22043 fn can_cast(kind: SyntaxKind) -> bool {
22044 kind == SyntaxKind::INHERIT_TABLE
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 Inherits {
22060 #[inline]
22061 fn can_cast(kind: SyntaxKind) -> bool {
22062 kind == SyntaxKind::INHERITS
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 InitiallyDeferredConstraintOption {
22078 #[inline]
22079 fn can_cast(kind: SyntaxKind) -> bool {
22080 kind == SyntaxKind::INITIALLY_DEFERRED_CONSTRAINT_OPTION
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 InitiallyImmediateConstraintOption {
22096 #[inline]
22097 fn can_cast(kind: SyntaxKind) -> bool {
22098 kind == SyntaxKind::INITIALLY_IMMEDIATE_CONSTRAINT_OPTION
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 Insert {
22114 #[inline]
22115 fn can_cast(kind: SyntaxKind) -> bool {
22116 kind == SyntaxKind::INSERT
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 IntervalType {
22132 #[inline]
22133 fn can_cast(kind: SyntaxKind) -> bool {
22134 kind == SyntaxKind::INTERVAL_TYPE
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 IntoClause {
22150 #[inline]
22151 fn can_cast(kind: SyntaxKind) -> bool {
22152 kind == SyntaxKind::INTO_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 IntoSchema {
22168 #[inline]
22169 fn can_cast(kind: SyntaxKind) -> bool {
22170 kind == SyntaxKind::INTO_SCHEMA
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 IsDistinctFrom {
22186 #[inline]
22187 fn can_cast(kind: SyntaxKind) -> bool {
22188 kind == SyntaxKind::IS_DISTINCT_FROM
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 IsJson {
22204 #[inline]
22205 fn can_cast(kind: SyntaxKind) -> bool {
22206 kind == SyntaxKind::IS_JSON
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 IsJsonArray {
22222 #[inline]
22223 fn can_cast(kind: SyntaxKind) -> bool {
22224 kind == SyntaxKind::IS_JSON_ARRAY
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 IsJsonObject {
22240 #[inline]
22241 fn can_cast(kind: SyntaxKind) -> bool {
22242 kind == SyntaxKind::IS_JSON_OBJECT
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 IsJsonScalar {
22258 #[inline]
22259 fn can_cast(kind: SyntaxKind) -> bool {
22260 kind == SyntaxKind::IS_JSON_SCALAR
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 IsJsonValue {
22276 #[inline]
22277 fn can_cast(kind: SyntaxKind) -> bool {
22278 kind == SyntaxKind::IS_JSON_VALUE
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 IsNormalized {
22294 #[inline]
22295 fn can_cast(kind: SyntaxKind) -> bool {
22296 kind == SyntaxKind::IS_NORMALIZED
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 IsNot {
22312 #[inline]
22313 fn can_cast(kind: SyntaxKind) -> bool {
22314 kind == SyntaxKind::IS_NOT
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 IsNotDistinctFrom {
22330 #[inline]
22331 fn can_cast(kind: SyntaxKind) -> bool {
22332 kind == SyntaxKind::IS_NOT_DISTINCT_FROM
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 IsNotJson {
22348 #[inline]
22349 fn can_cast(kind: SyntaxKind) -> bool {
22350 kind == SyntaxKind::IS_NOT_JSON
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 IsNotJsonArray {
22366 #[inline]
22367 fn can_cast(kind: SyntaxKind) -> bool {
22368 kind == SyntaxKind::IS_NOT_JSON_ARRAY
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 IsNotJsonObject {
22384 #[inline]
22385 fn can_cast(kind: SyntaxKind) -> bool {
22386 kind == SyntaxKind::IS_NOT_JSON_OBJECT
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 IsNotJsonScalar {
22402 #[inline]
22403 fn can_cast(kind: SyntaxKind) -> bool {
22404 kind == SyntaxKind::IS_NOT_JSON_SCALAR
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 IsNotJsonValue {
22420 #[inline]
22421 fn can_cast(kind: SyntaxKind) -> bool {
22422 kind == SyntaxKind::IS_NOT_JSON_VALUE
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 IsNotNormalized {
22438 #[inline]
22439 fn can_cast(kind: SyntaxKind) -> bool {
22440 kind == SyntaxKind::IS_NOT_NORMALIZED
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 Join {
22456 #[inline]
22457 fn can_cast(kind: SyntaxKind) -> bool {
22458 kind == SyntaxKind::JOIN
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 JoinCross {
22474 #[inline]
22475 fn can_cast(kind: SyntaxKind) -> bool {
22476 kind == SyntaxKind::JOIN_CROSS
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 JoinExpr {
22492 #[inline]
22493 fn can_cast(kind: SyntaxKind) -> bool {
22494 kind == SyntaxKind::JOIN_EXPR
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 JoinFull {
22510 #[inline]
22511 fn can_cast(kind: SyntaxKind) -> bool {
22512 kind == SyntaxKind::JOIN_FULL
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 JoinInner {
22528 #[inline]
22529 fn can_cast(kind: SyntaxKind) -> bool {
22530 kind == SyntaxKind::JOIN_INNER
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 JoinLeft {
22546 #[inline]
22547 fn can_cast(kind: SyntaxKind) -> bool {
22548 kind == SyntaxKind::JOIN_LEFT
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 JoinRight {
22564 #[inline]
22565 fn can_cast(kind: SyntaxKind) -> bool {
22566 kind == SyntaxKind::JOIN_RIGHT
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 JoinUsingClause {
22582 #[inline]
22583 fn can_cast(kind: SyntaxKind) -> bool {
22584 kind == SyntaxKind::JOIN_USING_CLAUSE
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 JsonArrayAggFn {
22600 #[inline]
22601 fn can_cast(kind: SyntaxKind) -> bool {
22602 kind == SyntaxKind::JSON_ARRAY_AGG_FN
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 JsonArrayFn {
22618 #[inline]
22619 fn can_cast(kind: SyntaxKind) -> bool {
22620 kind == SyntaxKind::JSON_ARRAY_FN
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 JsonBehaviorClause {
22636 #[inline]
22637 fn can_cast(kind: SyntaxKind) -> bool {
22638 kind == SyntaxKind::JSON_BEHAVIOR_CLAUSE
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 JsonBehaviorDefault {
22654 #[inline]
22655 fn can_cast(kind: SyntaxKind) -> bool {
22656 kind == SyntaxKind::JSON_BEHAVIOR_DEFAULT
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 JsonBehaviorEmptyArray {
22672 #[inline]
22673 fn can_cast(kind: SyntaxKind) -> bool {
22674 kind == SyntaxKind::JSON_BEHAVIOR_EMPTY_ARRAY
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 JsonBehaviorEmptyObject {
22690 #[inline]
22691 fn can_cast(kind: SyntaxKind) -> bool {
22692 kind == SyntaxKind::JSON_BEHAVIOR_EMPTY_OBJECT
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 JsonBehaviorError {
22708 #[inline]
22709 fn can_cast(kind: SyntaxKind) -> bool {
22710 kind == SyntaxKind::JSON_BEHAVIOR_ERROR
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 JsonBehaviorFalse {
22726 #[inline]
22727 fn can_cast(kind: SyntaxKind) -> bool {
22728 kind == SyntaxKind::JSON_BEHAVIOR_FALSE
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 JsonBehaviorNull {
22744 #[inline]
22745 fn can_cast(kind: SyntaxKind) -> bool {
22746 kind == SyntaxKind::JSON_BEHAVIOR_NULL
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 JsonBehaviorTrue {
22762 #[inline]
22763 fn can_cast(kind: SyntaxKind) -> bool {
22764 kind == SyntaxKind::JSON_BEHAVIOR_TRUE
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 JsonBehaviorUnknown {
22780 #[inline]
22781 fn can_cast(kind: SyntaxKind) -> bool {
22782 kind == SyntaxKind::JSON_BEHAVIOR_UNKNOWN
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 JsonEncodingClause {
22798 #[inline]
22799 fn can_cast(kind: SyntaxKind) -> bool {
22800 kind == SyntaxKind::JSON_ENCODING_CLAUSE
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 JsonExistsFn {
22816 #[inline]
22817 fn can_cast(kind: SyntaxKind) -> bool {
22818 kind == SyntaxKind::JSON_EXISTS_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 JsonExprFormat {
22834 #[inline]
22835 fn can_cast(kind: SyntaxKind) -> bool {
22836 kind == SyntaxKind::JSON_EXPR_FORMAT
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 JsonFn {
22852 #[inline]
22853 fn can_cast(kind: SyntaxKind) -> bool {
22854 kind == SyntaxKind::JSON_FN
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 JsonFormatClause {
22870 #[inline]
22871 fn can_cast(kind: SyntaxKind) -> bool {
22872 kind == SyntaxKind::JSON_FORMAT_CLAUSE
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 JsonKeyValue {
22888 #[inline]
22889 fn can_cast(kind: SyntaxKind) -> bool {
22890 kind == SyntaxKind::JSON_KEY_VALUE
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 JsonKeysUniqueClause {
22906 #[inline]
22907 fn can_cast(kind: SyntaxKind) -> bool {
22908 kind == SyntaxKind::JSON_KEYS_UNIQUE_CLAUSE
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 JsonNullClause {
22924 #[inline]
22925 fn can_cast(kind: SyntaxKind) -> bool {
22926 kind == SyntaxKind::JSON_NULL_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 JsonObjectAggFn {
22942 #[inline]
22943 fn can_cast(kind: SyntaxKind) -> bool {
22944 kind == SyntaxKind::JSON_OBJECT_AGG_FN
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 JsonObjectFn {
22960 #[inline]
22961 fn can_cast(kind: SyntaxKind) -> bool {
22962 kind == SyntaxKind::JSON_OBJECT_FN
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 JsonOnEmptyClause {
22978 #[inline]
22979 fn can_cast(kind: SyntaxKind) -> bool {
22980 kind == SyntaxKind::JSON_ON_EMPTY_CLAUSE
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 JsonOnErrorClause {
22996 #[inline]
22997 fn can_cast(kind: SyntaxKind) -> bool {
22998 kind == SyntaxKind::JSON_ON_ERROR_CLAUSE
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 JsonPassingArg {
23014 #[inline]
23015 fn can_cast(kind: SyntaxKind) -> bool {
23016 kind == SyntaxKind::JSON_PASSING_ARG
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 JsonPassingClause {
23032 #[inline]
23033 fn can_cast(kind: SyntaxKind) -> bool {
23034 kind == SyntaxKind::JSON_PASSING_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 JsonPathClause {
23050 #[inline]
23051 fn can_cast(kind: SyntaxKind) -> bool {
23052 kind == SyntaxKind::JSON_PATH_CLAUSE
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 JsonQueryFn {
23068 #[inline]
23069 fn can_cast(kind: SyntaxKind) -> bool {
23070 kind == SyntaxKind::JSON_QUERY_FN
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 JsonQuotesClause {
23086 #[inline]
23087 fn can_cast(kind: SyntaxKind) -> bool {
23088 kind == SyntaxKind::JSON_QUOTES_CLAUSE
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 JsonReturningClause {
23104 #[inline]
23105 fn can_cast(kind: SyntaxKind) -> bool {
23106 kind == SyntaxKind::JSON_RETURNING_CLAUSE
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 JsonScalarFn {
23122 #[inline]
23123 fn can_cast(kind: SyntaxKind) -> bool {
23124 kind == SyntaxKind::JSON_SCALAR_FN
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 JsonSelectFormat {
23140 #[inline]
23141 fn can_cast(kind: SyntaxKind) -> bool {
23142 kind == SyntaxKind::JSON_SELECT_FORMAT
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 JsonSerializeFn {
23158 #[inline]
23159 fn can_cast(kind: SyntaxKind) -> bool {
23160 kind == SyntaxKind::JSON_SERIALIZE_FN
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 JsonTable {
23176 #[inline]
23177 fn can_cast(kind: SyntaxKind) -> bool {
23178 kind == SyntaxKind::JSON_TABLE
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 JsonTableColumn {
23194 #[inline]
23195 fn can_cast(kind: SyntaxKind) -> bool {
23196 kind == SyntaxKind::JSON_TABLE_COLUMN
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 JsonTableColumnList {
23212 #[inline]
23213 fn can_cast(kind: SyntaxKind) -> bool {
23214 kind == SyntaxKind::JSON_TABLE_COLUMN_LIST
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 JsonValueExpr {
23230 #[inline]
23231 fn can_cast(kind: SyntaxKind) -> bool {
23232 kind == SyntaxKind::JSON_VALUE_EXPR
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 JsonValueFn {
23248 #[inline]
23249 fn can_cast(kind: SyntaxKind) -> bool {
23250 kind == SyntaxKind::JSON_VALUE_FN
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 JsonWrapperBehaviorClause {
23266 #[inline]
23267 fn can_cast(kind: SyntaxKind) -> bool {
23268 kind == SyntaxKind::JSON_WRAPPER_BEHAVIOR_CLAUSE
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 LanguageFuncOption {
23284 #[inline]
23285 fn can_cast(kind: SyntaxKind) -> bool {
23286 kind == SyntaxKind::LANGUAGE_FUNC_OPTION
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 LeakproofFuncOption {
23302 #[inline]
23303 fn can_cast(kind: SyntaxKind) -> bool {
23304 kind == SyntaxKind::LEAKPROOF_FUNC_OPTION
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 LikeClause {
23320 #[inline]
23321 fn can_cast(kind: SyntaxKind) -> bool {
23322 kind == SyntaxKind::LIKE_CLAUSE
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 LikeOption {
23338 #[inline]
23339 fn can_cast(kind: SyntaxKind) -> bool {
23340 kind == SyntaxKind::LIKE_OPTION
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 LimitClause {
23356 #[inline]
23357 fn can_cast(kind: SyntaxKind) -> bool {
23358 kind == SyntaxKind::LIMIT_CLAUSE
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 LimitToTables {
23374 #[inline]
23375 fn can_cast(kind: SyntaxKind) -> bool {
23376 kind == SyntaxKind::LIMIT_TO_TABLES
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 Listen {
23392 #[inline]
23393 fn can_cast(kind: SyntaxKind) -> bool {
23394 kind == SyntaxKind::LISTEN
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 Literal {
23410 #[inline]
23411 fn can_cast(kind: SyntaxKind) -> bool {
23412 kind == SyntaxKind::LITERAL
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 Load {
23428 #[inline]
23429 fn can_cast(kind: SyntaxKind) -> bool {
23430 kind == SyntaxKind::LOAD
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 Lock {
23446 #[inline]
23447 fn can_cast(kind: SyntaxKind) -> bool {
23448 kind == SyntaxKind::LOCK
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 LockingClause {
23464 #[inline]
23465 fn can_cast(kind: SyntaxKind) -> bool {
23466 kind == SyntaxKind::LOCKING_CLAUSE
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 Lteq {
23482 #[inline]
23483 fn can_cast(kind: SyntaxKind) -> bool {
23484 kind == SyntaxKind::LTEQ
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 MatchFull {
23500 #[inline]
23501 fn can_cast(kind: SyntaxKind) -> bool {
23502 kind == SyntaxKind::MATCH_FULL
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 MatchPartial {
23518 #[inline]
23519 fn can_cast(kind: SyntaxKind) -> bool {
23520 kind == SyntaxKind::MATCH_PARTIAL
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 MatchSimple {
23536 #[inline]
23537 fn can_cast(kind: SyntaxKind) -> bool {
23538 kind == SyntaxKind::MATCH_SIMPLE
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 Materialized {
23554 #[inline]
23555 fn can_cast(kind: SyntaxKind) -> bool {
23556 kind == SyntaxKind::MATERIALIZED
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 Merge {
23572 #[inline]
23573 fn can_cast(kind: SyntaxKind) -> bool {
23574 kind == SyntaxKind::MERGE
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 MergeDelete {
23590 #[inline]
23591 fn can_cast(kind: SyntaxKind) -> bool {
23592 kind == SyntaxKind::MERGE_DELETE
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 MergeDoNothing {
23608 #[inline]
23609 fn can_cast(kind: SyntaxKind) -> bool {
23610 kind == SyntaxKind::MERGE_DO_NOTHING
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 MergeInsert {
23626 #[inline]
23627 fn can_cast(kind: SyntaxKind) -> bool {
23628 kind == SyntaxKind::MERGE_INSERT
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 MergePartitions {
23644 #[inline]
23645 fn can_cast(kind: SyntaxKind) -> bool {
23646 kind == SyntaxKind::MERGE_PARTITIONS
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 MergeUpdate {
23662 #[inline]
23663 fn can_cast(kind: SyntaxKind) -> bool {
23664 kind == SyntaxKind::MERGE_UPDATE
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 MergeWhenMatched {
23680 #[inline]
23681 fn can_cast(kind: SyntaxKind) -> bool {
23682 kind == SyntaxKind::MERGE_WHEN_MATCHED
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 MergeWhenNotMatchedSource {
23698 #[inline]
23699 fn can_cast(kind: SyntaxKind) -> bool {
23700 kind == SyntaxKind::MERGE_WHEN_NOT_MATCHED_SOURCE
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 MergeWhenNotMatchedTarget {
23716 #[inline]
23717 fn can_cast(kind: SyntaxKind) -> bool {
23718 kind == SyntaxKind::MERGE_WHEN_NOT_MATCHED_TARGET
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 Move {
23734 #[inline]
23735 fn can_cast(kind: SyntaxKind) -> bool {
23736 kind == SyntaxKind::MOVE
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 Name {
23752 #[inline]
23753 fn can_cast(kind: SyntaxKind) -> bool {
23754 kind == SyntaxKind::NAME
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 NameRef {
23770 #[inline]
23771 fn can_cast(kind: SyntaxKind) -> bool {
23772 kind == SyntaxKind::NAME_REF
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 NamedArg {
23788 #[inline]
23789 fn can_cast(kind: SyntaxKind) -> bool {
23790 kind == SyntaxKind::NAMED_ARG
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 Neq {
23806 #[inline]
23807 fn can_cast(kind: SyntaxKind) -> bool {
23808 kind == SyntaxKind::NEQ
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 Neqb {
23824 #[inline]
23825 fn can_cast(kind: SyntaxKind) -> bool {
23826 kind == SyntaxKind::NEQB
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 NoAction {
23842 #[inline]
23843 fn can_cast(kind: SyntaxKind) -> bool {
23844 kind == SyntaxKind::NO_ACTION
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 NoDependsOnExtension {
23860 #[inline]
23861 fn can_cast(kind: SyntaxKind) -> bool {
23862 kind == SyntaxKind::NO_DEPENDS_ON_EXTENSION
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 NoForceRls {
23878 #[inline]
23879 fn can_cast(kind: SyntaxKind) -> bool {
23880 kind == SyntaxKind::NO_FORCE_RLS
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 NoInherit {
23896 #[inline]
23897 fn can_cast(kind: SyntaxKind) -> bool {
23898 kind == SyntaxKind::NO_INHERIT
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 NoInheritTable {
23914 #[inline]
23915 fn can_cast(kind: SyntaxKind) -> bool {
23916 kind == SyntaxKind::NO_INHERIT_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 NonStandardParam {
23932 #[inline]
23933 fn can_cast(kind: SyntaxKind) -> bool {
23934 kind == SyntaxKind::NON_STANDARD_PARAM
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 NotDeferrable {
23950 #[inline]
23951 fn can_cast(kind: SyntaxKind) -> bool {
23952 kind == SyntaxKind::NOT_DEFERRABLE
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 NotDeferrableConstraintOption {
23968 #[inline]
23969 fn can_cast(kind: SyntaxKind) -> bool {
23970 kind == SyntaxKind::NOT_DEFERRABLE_CONSTRAINT_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 NotEnforced {
23986 #[inline]
23987 fn can_cast(kind: SyntaxKind) -> bool {
23988 kind == SyntaxKind::NOT_ENFORCED
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 NotIlike {
24004 #[inline]
24005 fn can_cast(kind: SyntaxKind) -> bool {
24006 kind == SyntaxKind::NOT_ILIKE
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 NotIn {
24022 #[inline]
24023 fn can_cast(kind: SyntaxKind) -> bool {
24024 kind == SyntaxKind::NOT_IN
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 NotLike {
24040 #[inline]
24041 fn can_cast(kind: SyntaxKind) -> bool {
24042 kind == SyntaxKind::NOT_LIKE
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 NotMaterialized {
24058 #[inline]
24059 fn can_cast(kind: SyntaxKind) -> bool {
24060 kind == SyntaxKind::NOT_MATERIALIZED
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 NotNullConstraint {
24076 #[inline]
24077 fn can_cast(kind: SyntaxKind) -> bool {
24078 kind == SyntaxKind::NOT_NULL_CONSTRAINT
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 NotOf {
24094 #[inline]
24095 fn can_cast(kind: SyntaxKind) -> bool {
24096 kind == SyntaxKind::NOT_OF
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 NotSimilarTo {
24112 #[inline]
24113 fn can_cast(kind: SyntaxKind) -> bool {
24114 kind == SyntaxKind::NOT_SIMILAR_TO
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 NotValid {
24130 #[inline]
24131 fn can_cast(kind: SyntaxKind) -> bool {
24132 kind == SyntaxKind::NOT_VALID
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 Notify {
24148 #[inline]
24149 fn can_cast(kind: SyntaxKind) -> bool {
24150 kind == SyntaxKind::NOTIFY
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 NullConstraint {
24166 #[inline]
24167 fn can_cast(kind: SyntaxKind) -> bool {
24168 kind == SyntaxKind::NULL_CONSTRAINT
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 NullsDistinct {
24184 #[inline]
24185 fn can_cast(kind: SyntaxKind) -> bool {
24186 kind == SyntaxKind::NULLS_DISTINCT
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 NullsFirst {
24202 #[inline]
24203 fn can_cast(kind: SyntaxKind) -> bool {
24204 kind == SyntaxKind::NULLS_FIRST
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 NullsLast {
24220 #[inline]
24221 fn can_cast(kind: SyntaxKind) -> bool {
24222 kind == SyntaxKind::NULLS_LAST
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 NullsNotDistinct {
24238 #[inline]
24239 fn can_cast(kind: SyntaxKind) -> bool {
24240 kind == SyntaxKind::NULLS_NOT_DISTINCT
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 OfType {
24256 #[inline]
24257 fn can_cast(kind: SyntaxKind) -> bool {
24258 kind == SyntaxKind::OF_TYPE
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 OffsetClause {
24274 #[inline]
24275 fn can_cast(kind: SyntaxKind) -> bool {
24276 kind == SyntaxKind::OFFSET_CLAUSE
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 OnClause {
24292 #[inline]
24293 fn can_cast(kind: SyntaxKind) -> bool {
24294 kind == SyntaxKind::ON_CLAUSE
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 OnCommit {
24310 #[inline]
24311 fn can_cast(kind: SyntaxKind) -> bool {
24312 kind == SyntaxKind::ON_COMMIT
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 OnConflictClause {
24328 #[inline]
24329 fn can_cast(kind: SyntaxKind) -> bool {
24330 kind == SyntaxKind::ON_CONFLICT_CLAUSE
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 OnDeleteAction {
24346 #[inline]
24347 fn can_cast(kind: SyntaxKind) -> bool {
24348 kind == SyntaxKind::ON_DELETE_ACTION
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 OnTable {
24364 #[inline]
24365 fn can_cast(kind: SyntaxKind) -> bool {
24366 kind == SyntaxKind::ON_TABLE
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 OnUpdateAction {
24382 #[inline]
24383 fn can_cast(kind: SyntaxKind) -> bool {
24384 kind == SyntaxKind::ON_UPDATE_ACTION
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 Op {
24400 #[inline]
24401 fn can_cast(kind: SyntaxKind) -> bool {
24402 kind == SyntaxKind::OP
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 OpClassOption {
24418 #[inline]
24419 fn can_cast(kind: SyntaxKind) -> bool {
24420 kind == SyntaxKind::OP_CLASS_OPTION
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 OpSig {
24436 #[inline]
24437 fn can_cast(kind: SyntaxKind) -> bool {
24438 kind == SyntaxKind::OP_SIG
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 OpSigList {
24454 #[inline]
24455 fn can_cast(kind: SyntaxKind) -> bool {
24456 kind == SyntaxKind::OP_SIG_LIST
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 OperatorCall {
24472 #[inline]
24473 fn can_cast(kind: SyntaxKind) -> bool {
24474 kind == SyntaxKind::OPERATOR_CALL
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 OperatorClassOptionList {
24490 #[inline]
24491 fn can_cast(kind: SyntaxKind) -> bool {
24492 kind == SyntaxKind::OPERATOR_CLASS_OPTION_LIST
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 OptionItem {
24508 #[inline]
24509 fn can_cast(kind: SyntaxKind) -> bool {
24510 kind == SyntaxKind::OPTION_ITEM
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 OptionItemList {
24526 #[inline]
24527 fn can_cast(kind: SyntaxKind) -> bool {
24528 kind == SyntaxKind::OPTION_ITEM_LIST
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 OrReplace {
24544 #[inline]
24545 fn can_cast(kind: SyntaxKind) -> bool {
24546 kind == SyntaxKind::OR_REPLACE
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 OrderByClause {
24562 #[inline]
24563 fn can_cast(kind: SyntaxKind) -> bool {
24564 kind == SyntaxKind::ORDER_BY_CLAUSE
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 OverClause {
24580 #[inline]
24581 fn can_cast(kind: SyntaxKind) -> bool {
24582 kind == SyntaxKind::OVER_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 OverlayFn {
24598 #[inline]
24599 fn can_cast(kind: SyntaxKind) -> bool {
24600 kind == SyntaxKind::OVERLAY_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 OwnerTo {
24616 #[inline]
24617 fn can_cast(kind: SyntaxKind) -> bool {
24618 kind == SyntaxKind::OWNER_TO
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 ParallelFuncOption {
24634 #[inline]
24635 fn can_cast(kind: SyntaxKind) -> bool {
24636 kind == SyntaxKind::PARALLEL_FUNC_OPTION
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 Param {
24652 #[inline]
24653 fn can_cast(kind: SyntaxKind) -> bool {
24654 kind == SyntaxKind::PARAM
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 ParamDefault {
24670 #[inline]
24671 fn can_cast(kind: SyntaxKind) -> bool {
24672 kind == SyntaxKind::PARAM_DEFAULT
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 ParamIn {
24688 #[inline]
24689 fn can_cast(kind: SyntaxKind) -> bool {
24690 kind == SyntaxKind::PARAM_IN
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 ParamInOut {
24706 #[inline]
24707 fn can_cast(kind: SyntaxKind) -> bool {
24708 kind == SyntaxKind::PARAM_IN_OUT
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 ParamList {
24724 #[inline]
24725 fn can_cast(kind: SyntaxKind) -> bool {
24726 kind == SyntaxKind::PARAM_LIST
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 ParamOut {
24742 #[inline]
24743 fn can_cast(kind: SyntaxKind) -> bool {
24744 kind == SyntaxKind::PARAM_OUT
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 ParamVariadic {
24760 #[inline]
24761 fn can_cast(kind: SyntaxKind) -> bool {
24762 kind == SyntaxKind::PARAM_VARIADIC
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 ParenExpr {
24778 #[inline]
24779 fn can_cast(kind: SyntaxKind) -> bool {
24780 kind == SyntaxKind::PAREN_EXPR
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 ParenSelect {
24796 #[inline]
24797 fn can_cast(kind: SyntaxKind) -> bool {
24798 kind == SyntaxKind::PAREN_SELECT
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 Partition {
24814 #[inline]
24815 fn can_cast(kind: SyntaxKind) -> bool {
24816 kind == SyntaxKind::PARTITION
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 PartitionBy {
24832 #[inline]
24833 fn can_cast(kind: SyntaxKind) -> bool {
24834 kind == SyntaxKind::PARTITION_BY
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 PartitionDefault {
24850 #[inline]
24851 fn can_cast(kind: SyntaxKind) -> bool {
24852 kind == SyntaxKind::PARTITION_DEFAULT
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 PartitionForValuesFrom {
24868 #[inline]
24869 fn can_cast(kind: SyntaxKind) -> bool {
24870 kind == SyntaxKind::PARTITION_FOR_VALUES_FROM
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 PartitionForValuesIn {
24886 #[inline]
24887 fn can_cast(kind: SyntaxKind) -> bool {
24888 kind == SyntaxKind::PARTITION_FOR_VALUES_IN
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 PartitionForValuesWith {
24904 #[inline]
24905 fn can_cast(kind: SyntaxKind) -> bool {
24906 kind == SyntaxKind::PARTITION_FOR_VALUES_WITH
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 PartitionItem {
24922 #[inline]
24923 fn can_cast(kind: SyntaxKind) -> bool {
24924 kind == SyntaxKind::PARTITION_ITEM
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 PartitionItemList {
24940 #[inline]
24941 fn can_cast(kind: SyntaxKind) -> bool {
24942 kind == SyntaxKind::PARTITION_ITEM_LIST
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 PartitionList {
24958 #[inline]
24959 fn can_cast(kind: SyntaxKind) -> bool {
24960 kind == SyntaxKind::PARTITION_LIST
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 PartitionOf {
24976 #[inline]
24977 fn can_cast(kind: SyntaxKind) -> bool {
24978 kind == SyntaxKind::PARTITION_OF
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 Path {
24994 #[inline]
24995 fn can_cast(kind: SyntaxKind) -> bool {
24996 kind == SyntaxKind::PATH
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 PathSegment {
25012 #[inline]
25013 fn can_cast(kind: SyntaxKind) -> bool {
25014 kind == SyntaxKind::PATH_SEGMENT
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 PathType {
25030 #[inline]
25031 fn can_cast(kind: SyntaxKind) -> bool {
25032 kind == SyntaxKind::PATH_TYPE
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 PercentType {
25048 #[inline]
25049 fn can_cast(kind: SyntaxKind) -> bool {
25050 kind == SyntaxKind::PERCENT_TYPE
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 PercentTypeClause {
25066 #[inline]
25067 fn can_cast(kind: SyntaxKind) -> bool {
25068 kind == SyntaxKind::PERCENT_TYPE_CLAUSE
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 PositionFn {
25084 #[inline]
25085 fn can_cast(kind: SyntaxKind) -> bool {
25086 kind == SyntaxKind::POSITION_FN
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 PostfixExpr {
25102 #[inline]
25103 fn can_cast(kind: SyntaxKind) -> bool {
25104 kind == SyntaxKind::POSTFIX_EXPR
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 PrefixExpr {
25120 #[inline]
25121 fn can_cast(kind: SyntaxKind) -> bool {
25122 kind == SyntaxKind::PREFIX_EXPR
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 Prepare {
25138 #[inline]
25139 fn can_cast(kind: SyntaxKind) -> bool {
25140 kind == SyntaxKind::PREPARE
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 PrepareTransaction {
25156 #[inline]
25157 fn can_cast(kind: SyntaxKind) -> bool {
25158 kind == SyntaxKind::PREPARE_TRANSACTION
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 PreserveRows {
25174 #[inline]
25175 fn can_cast(kind: SyntaxKind) -> bool {
25176 kind == SyntaxKind::PRESERVE_ROWS
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 PrimaryKeyConstraint {
25192 #[inline]
25193 fn can_cast(kind: SyntaxKind) -> bool {
25194 kind == SyntaxKind::PRIMARY_KEY_CONSTRAINT
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 PrivilegeTarget {
25210 #[inline]
25211 fn can_cast(kind: SyntaxKind) -> bool {
25212 kind == SyntaxKind::PRIVILEGE_TARGET
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 Privileges {
25228 #[inline]
25229 fn can_cast(kind: SyntaxKind) -> bool {
25230 kind == SyntaxKind::PRIVILEGES
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 PublicationObject {
25246 #[inline]
25247 fn can_cast(kind: SyntaxKind) -> bool {
25248 kind == SyntaxKind::PUBLICATION_OBJECT
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 ReadCommitted {
25264 #[inline]
25265 fn can_cast(kind: SyntaxKind) -> bool {
25266 kind == SyntaxKind::READ_COMMITTED
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 ReadOnly {
25282 #[inline]
25283 fn can_cast(kind: SyntaxKind) -> bool {
25284 kind == SyntaxKind::READ_ONLY
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 ReadUncommitted {
25300 #[inline]
25301 fn can_cast(kind: SyntaxKind) -> bool {
25302 kind == SyntaxKind::READ_UNCOMMITTED
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 ReadWrite {
25318 #[inline]
25319 fn can_cast(kind: SyntaxKind) -> bool {
25320 kind == SyntaxKind::READ_WRITE
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 Reassign {
25336 #[inline]
25337 fn can_cast(kind: SyntaxKind) -> bool {
25338 kind == SyntaxKind::REASSIGN
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 ReferencesConstraint {
25354 #[inline]
25355 fn can_cast(kind: SyntaxKind) -> bool {
25356 kind == SyntaxKind::REFERENCES_CONSTRAINT
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 Referencing {
25372 #[inline]
25373 fn can_cast(kind: SyntaxKind) -> bool {
25374 kind == SyntaxKind::REFERENCING
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 ReferencingTable {
25390 #[inline]
25391 fn can_cast(kind: SyntaxKind) -> bool {
25392 kind == SyntaxKind::REFERENCING_TABLE
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 Refresh {
25408 #[inline]
25409 fn can_cast(kind: SyntaxKind) -> bool {
25410 kind == SyntaxKind::REFRESH
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 RefreshCollationVersion {
25426 #[inline]
25427 fn can_cast(kind: SyntaxKind) -> bool {
25428 kind == SyntaxKind::REFRESH_COLLATION_VERSION
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 RefreshVersion {
25444 #[inline]
25445 fn can_cast(kind: SyntaxKind) -> bool {
25446 kind == SyntaxKind::REFRESH_VERSION
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 Reindex {
25462 #[inline]
25463 fn can_cast(kind: SyntaxKind) -> bool {
25464 kind == SyntaxKind::REINDEX
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 RelationName {
25480 #[inline]
25481 fn can_cast(kind: SyntaxKind) -> bool {
25482 kind == SyntaxKind::RELATION_NAME
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 ReleaseSavepoint {
25498 #[inline]
25499 fn can_cast(kind: SyntaxKind) -> bool {
25500 kind == SyntaxKind::RELEASE_SAVEPOINT
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 RenameColumn {
25516 #[inline]
25517 fn can_cast(kind: SyntaxKind) -> bool {
25518 kind == SyntaxKind::RENAME_COLUMN
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 RenameConstraint {
25534 #[inline]
25535 fn can_cast(kind: SyntaxKind) -> bool {
25536 kind == SyntaxKind::RENAME_CONSTRAINT
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 RenameTo {
25552 #[inline]
25553 fn can_cast(kind: SyntaxKind) -> bool {
25554 kind == SyntaxKind::RENAME_TO
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 RepeatableClause {
25570 #[inline]
25571 fn can_cast(kind: SyntaxKind) -> bool {
25572 kind == SyntaxKind::REPEATABLE_CLAUSE
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 RepeatableRead {
25588 #[inline]
25589 fn can_cast(kind: SyntaxKind) -> bool {
25590 kind == SyntaxKind::REPEATABLE_READ
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 ReplicaIdentity {
25606 #[inline]
25607 fn can_cast(kind: SyntaxKind) -> bool {
25608 kind == SyntaxKind::REPLICA_IDENTITY
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 Reset {
25624 #[inline]
25625 fn can_cast(kind: SyntaxKind) -> bool {
25626 kind == SyntaxKind::RESET
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 ResetConfigParam {
25642 #[inline]
25643 fn can_cast(kind: SyntaxKind) -> bool {
25644 kind == SyntaxKind::RESET_CONFIG_PARAM
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 ResetFuncOption {
25660 #[inline]
25661 fn can_cast(kind: SyntaxKind) -> bool {
25662 kind == SyntaxKind::RESET_FUNC_OPTION
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 ResetOptions {
25678 #[inline]
25679 fn can_cast(kind: SyntaxKind) -> bool {
25680 kind == SyntaxKind::RESET_OPTIONS
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 ResetSessionAuth {
25696 #[inline]
25697 fn can_cast(kind: SyntaxKind) -> bool {
25698 kind == SyntaxKind::RESET_SESSION_AUTH
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 Restart {
25714 #[inline]
25715 fn can_cast(kind: SyntaxKind) -> bool {
25716 kind == SyntaxKind::RESTART
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 Restrict {
25732 #[inline]
25733 fn can_cast(kind: SyntaxKind) -> bool {
25734 kind == SyntaxKind::RESTRICT
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 RetType {
25750 #[inline]
25751 fn can_cast(kind: SyntaxKind) -> bool {
25752 kind == SyntaxKind::RET_TYPE
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 ReturnFuncOption {
25768 #[inline]
25769 fn can_cast(kind: SyntaxKind) -> bool {
25770 kind == SyntaxKind::RETURN_FUNC_OPTION
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 ReturningClause {
25786 #[inline]
25787 fn can_cast(kind: SyntaxKind) -> bool {
25788 kind == SyntaxKind::RETURNING_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 ReturningOption {
25804 #[inline]
25805 fn can_cast(kind: SyntaxKind) -> bool {
25806 kind == SyntaxKind::RETURNING_OPTION
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 ReturningOptionList {
25822 #[inline]
25823 fn can_cast(kind: SyntaxKind) -> bool {
25824 kind == SyntaxKind::RETURNING_OPTION_LIST
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 Revoke {
25840 #[inline]
25841 fn can_cast(kind: SyntaxKind) -> bool {
25842 kind == SyntaxKind::REVOKE
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 RevokeCommand {
25858 #[inline]
25859 fn can_cast(kind: SyntaxKind) -> bool {
25860 kind == SyntaxKind::REVOKE_COMMAND
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 RevokeCommandList {
25876 #[inline]
25877 fn can_cast(kind: SyntaxKind) -> bool {
25878 kind == SyntaxKind::REVOKE_COMMAND_LIST
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 RevokeDefaultPrivileges {
25894 #[inline]
25895 fn can_cast(kind: SyntaxKind) -> bool {
25896 kind == SyntaxKind::REVOKE_DEFAULT_PRIVILEGES
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 Role {
25912 #[inline]
25913 fn can_cast(kind: SyntaxKind) -> bool {
25914 kind == SyntaxKind::ROLE
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 RoleList {
25930 #[inline]
25931 fn can_cast(kind: SyntaxKind) -> bool {
25932 kind == SyntaxKind::ROLE_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 RoleOption {
25948 #[inline]
25949 fn can_cast(kind: SyntaxKind) -> bool {
25950 kind == SyntaxKind::ROLE_OPTION
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 RoleOptionList {
25966 #[inline]
25967 fn can_cast(kind: SyntaxKind) -> bool {
25968 kind == SyntaxKind::ROLE_OPTION_LIST
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 Rollback {
25984 #[inline]
25985 fn can_cast(kind: SyntaxKind) -> bool {
25986 kind == SyntaxKind::ROLLBACK
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 Row {
26002 #[inline]
26003 fn can_cast(kind: SyntaxKind) -> bool {
26004 kind == SyntaxKind::ROW
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 RowList {
26020 #[inline]
26021 fn can_cast(kind: SyntaxKind) -> bool {
26022 kind == SyntaxKind::ROW_LIST
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 RowsFuncOption {
26038 #[inline]
26039 fn can_cast(kind: SyntaxKind) -> bool {
26040 kind == SyntaxKind::ROWS_FUNC_OPTION
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 Savepoint {
26056 #[inline]
26057 fn can_cast(kind: SyntaxKind) -> bool {
26058 kind == SyntaxKind::SAVEPOINT
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 SchemaAuthorization {
26074 #[inline]
26075 fn can_cast(kind: SyntaxKind) -> bool {
26076 kind == SyntaxKind::SCHEMA_AUTHORIZATION
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 SecurityFuncOption {
26092 #[inline]
26093 fn can_cast(kind: SyntaxKind) -> bool {
26094 kind == SyntaxKind::SECURITY_FUNC_OPTION
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 SecurityLabel {
26110 #[inline]
26111 fn can_cast(kind: SyntaxKind) -> bool {
26112 kind == SyntaxKind::SECURITY_LABEL
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 Select {
26128 #[inline]
26129 fn can_cast(kind: SyntaxKind) -> bool {
26130 kind == SyntaxKind::SELECT
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 SelectClause {
26146 #[inline]
26147 fn can_cast(kind: SyntaxKind) -> bool {
26148 kind == SyntaxKind::SELECT_CLAUSE
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 SelectInto {
26164 #[inline]
26165 fn can_cast(kind: SyntaxKind) -> bool {
26166 kind == SyntaxKind::SELECT_INTO
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 SequenceOption {
26182 #[inline]
26183 fn can_cast(kind: SyntaxKind) -> bool {
26184 kind == SyntaxKind::SEQUENCE_OPTION
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 SequenceOptionList {
26200 #[inline]
26201 fn can_cast(kind: SyntaxKind) -> bool {
26202 kind == SyntaxKind::SEQUENCE_OPTION_LIST
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 Serializable {
26218 #[inline]
26219 fn can_cast(kind: SyntaxKind) -> bool {
26220 kind == SyntaxKind::SERIALIZABLE
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 ServerName {
26236 #[inline]
26237 fn can_cast(kind: SyntaxKind) -> bool {
26238 kind == SyntaxKind::SERVER_NAME
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 Set {
26254 #[inline]
26255 fn can_cast(kind: SyntaxKind) -> bool {
26256 kind == SyntaxKind::SET
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 SetAccessMethod {
26272 #[inline]
26273 fn can_cast(kind: SyntaxKind) -> bool {
26274 kind == SyntaxKind::SET_ACCESS_METHOD
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 SetClause {
26290 #[inline]
26291 fn can_cast(kind: SyntaxKind) -> bool {
26292 kind == SyntaxKind::SET_CLAUSE
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 SetColumnList {
26308 #[inline]
26309 fn can_cast(kind: SyntaxKind) -> bool {
26310 kind == SyntaxKind::SET_COLUMN_LIST
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 SetCompression {
26326 #[inline]
26327 fn can_cast(kind: SyntaxKind) -> bool {
26328 kind == SyntaxKind::SET_COMPRESSION
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 SetConfigParam {
26344 #[inline]
26345 fn can_cast(kind: SyntaxKind) -> bool {
26346 kind == SyntaxKind::SET_CONFIG_PARAM
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 SetConstraints {
26362 #[inline]
26363 fn can_cast(kind: SyntaxKind) -> bool {
26364 kind == SyntaxKind::SET_CONSTRAINTS
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 SetDefault {
26380 #[inline]
26381 fn can_cast(kind: SyntaxKind) -> bool {
26382 kind == SyntaxKind::SET_DEFAULT
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 SetDefaultColumns {
26398 #[inline]
26399 fn can_cast(kind: SyntaxKind) -> bool {
26400 kind == SyntaxKind::SET_DEFAULT_COLUMNS
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 SetExpr {
26416 #[inline]
26417 fn can_cast(kind: SyntaxKind) -> bool {
26418 kind == SyntaxKind::SET_EXPR
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 SetExprList {
26434 #[inline]
26435 fn can_cast(kind: SyntaxKind) -> bool {
26436 kind == SyntaxKind::SET_EXPR_LIST
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 SetExpression {
26452 #[inline]
26453 fn can_cast(kind: SyntaxKind) -> bool {
26454 kind == SyntaxKind::SET_EXPRESSION
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 SetFuncOption {
26470 #[inline]
26471 fn can_cast(kind: SyntaxKind) -> bool {
26472 kind == SyntaxKind::SET_FUNC_OPTION
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 SetGenerated {
26488 #[inline]
26489 fn can_cast(kind: SyntaxKind) -> bool {
26490 kind == SyntaxKind::SET_GENERATED
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 SetGeneratedOptions {
26506 #[inline]
26507 fn can_cast(kind: SyntaxKind) -> bool {
26508 kind == SyntaxKind::SET_GENERATED_OPTIONS
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 SetLogged {
26524 #[inline]
26525 fn can_cast(kind: SyntaxKind) -> bool {
26526 kind == SyntaxKind::SET_LOGGED
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 SetMultipleColumns {
26542 #[inline]
26543 fn can_cast(kind: SyntaxKind) -> bool {
26544 kind == SyntaxKind::SET_MULTIPLE_COLUMNS
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 SetNotNull {
26560 #[inline]
26561 fn can_cast(kind: SyntaxKind) -> bool {
26562 kind == SyntaxKind::SET_NOT_NULL
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 SetNullColumns {
26578 #[inline]
26579 fn can_cast(kind: SyntaxKind) -> bool {
26580 kind == SyntaxKind::SET_NULL_COLUMNS
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 SetOptions {
26596 #[inline]
26597 fn can_cast(kind: SyntaxKind) -> bool {
26598 kind == SyntaxKind::SET_OPTIONS
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 SetOptionsList {
26614 #[inline]
26615 fn can_cast(kind: SyntaxKind) -> bool {
26616 kind == SyntaxKind::SET_OPTIONS_LIST
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 SetRole {
26632 #[inline]
26633 fn can_cast(kind: SyntaxKind) -> bool {
26634 kind == SyntaxKind::SET_ROLE
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 SetSchema {
26650 #[inline]
26651 fn can_cast(kind: SyntaxKind) -> bool {
26652 kind == SyntaxKind::SET_SCHEMA
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 SetSequenceOption {
26668 #[inline]
26669 fn can_cast(kind: SyntaxKind) -> bool {
26670 kind == SyntaxKind::SET_SEQUENCE_OPTION
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 SetSessionAuth {
26686 #[inline]
26687 fn can_cast(kind: SyntaxKind) -> bool {
26688 kind == SyntaxKind::SET_SESSION_AUTH
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 SetSingleColumn {
26704 #[inline]
26705 fn can_cast(kind: SyntaxKind) -> bool {
26706 kind == SyntaxKind::SET_SINGLE_COLUMN
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 SetStatistics {
26722 #[inline]
26723 fn can_cast(kind: SyntaxKind) -> bool {
26724 kind == SyntaxKind::SET_STATISTICS
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 SetStorage {
26740 #[inline]
26741 fn can_cast(kind: SyntaxKind) -> bool {
26742 kind == SyntaxKind::SET_STORAGE
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 SetTablespace {
26758 #[inline]
26759 fn can_cast(kind: SyntaxKind) -> bool {
26760 kind == SyntaxKind::SET_TABLESPACE
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 SetTransaction {
26776 #[inline]
26777 fn can_cast(kind: SyntaxKind) -> bool {
26778 kind == SyntaxKind::SET_TRANSACTION
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 SetType {
26794 #[inline]
26795 fn can_cast(kind: SyntaxKind) -> bool {
26796 kind == SyntaxKind::SET_TYPE
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 SetUnlogged {
26812 #[inline]
26813 fn can_cast(kind: SyntaxKind) -> bool {
26814 kind == SyntaxKind::SET_UNLOGGED
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 SetWithoutCluster {
26830 #[inline]
26831 fn can_cast(kind: SyntaxKind) -> bool {
26832 kind == SyntaxKind::SET_WITHOUT_CLUSTER
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 SetWithoutOids {
26848 #[inline]
26849 fn can_cast(kind: SyntaxKind) -> bool {
26850 kind == SyntaxKind::SET_WITHOUT_OIDS
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 Show {
26866 #[inline]
26867 fn can_cast(kind: SyntaxKind) -> bool {
26868 kind == SyntaxKind::SHOW
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 SimilarTo {
26884 #[inline]
26885 fn can_cast(kind: SyntaxKind) -> bool {
26886 kind == SyntaxKind::SIMILAR_TO
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 SliceExpr {
26902 #[inline]
26903 fn can_cast(kind: SyntaxKind) -> bool {
26904 kind == SyntaxKind::SLICE_EXPR
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 SomeFn {
26920 #[inline]
26921 fn can_cast(kind: SyntaxKind) -> bool {
26922 kind == SyntaxKind::SOME_FN
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 SortAsc {
26938 #[inline]
26939 fn can_cast(kind: SyntaxKind) -> bool {
26940 kind == SyntaxKind::SORT_ASC
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 SortBy {
26956 #[inline]
26957 fn can_cast(kind: SyntaxKind) -> bool {
26958 kind == SyntaxKind::SORT_BY
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 SortByList {
26974 #[inline]
26975 fn can_cast(kind: SyntaxKind) -> bool {
26976 kind == SyntaxKind::SORT_BY_LIST
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 SortDesc {
26992 #[inline]
26993 fn can_cast(kind: SyntaxKind) -> bool {
26994 kind == SyntaxKind::SORT_DESC
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 SortUsing {
27010 #[inline]
27011 fn can_cast(kind: SyntaxKind) -> bool {
27012 kind == SyntaxKind::SORT_USING
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 SourceFile {
27028 #[inline]
27029 fn can_cast(kind: SyntaxKind) -> bool {
27030 kind == SyntaxKind::SOURCE_FILE
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 SplitPartition {
27046 #[inline]
27047 fn can_cast(kind: SyntaxKind) -> bool {
27048 kind == SyntaxKind::SPLIT_PARTITION
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 Storage {
27064 #[inline]
27065 fn can_cast(kind: SyntaxKind) -> bool {
27066 kind == SyntaxKind::STORAGE
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 StrictFuncOption {
27082 #[inline]
27083 fn can_cast(kind: SyntaxKind) -> bool {
27084 kind == SyntaxKind::STRICT_FUNC_OPTION
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 SubstringFn {
27100 #[inline]
27101 fn can_cast(kind: SyntaxKind) -> bool {
27102 kind == SyntaxKind::SUBSTRING_FN
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 SupportFuncOption {
27118 #[inline]
27119 fn can_cast(kind: SyntaxKind) -> bool {
27120 kind == SyntaxKind::SUPPORT_FUNC_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 Table {
27136 #[inline]
27137 fn can_cast(kind: SyntaxKind) -> bool {
27138 kind == SyntaxKind::TABLE
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 TableAndColumns {
27154 #[inline]
27155 fn can_cast(kind: SyntaxKind) -> bool {
27156 kind == SyntaxKind::TABLE_AND_COLUMNS
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 TableAndColumnsList {
27172 #[inline]
27173 fn can_cast(kind: SyntaxKind) -> bool {
27174 kind == SyntaxKind::TABLE_AND_COLUMNS_LIST
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 TableArgList {
27190 #[inline]
27191 fn can_cast(kind: SyntaxKind) -> bool {
27192 kind == SyntaxKind::TABLE_ARG_LIST
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 TableList {
27208 #[inline]
27209 fn can_cast(kind: SyntaxKind) -> bool {
27210 kind == SyntaxKind::TABLE_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 TablesampleClause {
27226 #[inline]
27227 fn can_cast(kind: SyntaxKind) -> bool {
27228 kind == SyntaxKind::TABLESAMPLE_CLAUSE
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 Tablespace {
27244 #[inline]
27245 fn can_cast(kind: SyntaxKind) -> bool {
27246 kind == SyntaxKind::TABLESPACE
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 Target {
27262 #[inline]
27263 fn can_cast(kind: SyntaxKind) -> bool {
27264 kind == SyntaxKind::TARGET
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 TargetList {
27280 #[inline]
27281 fn can_cast(kind: SyntaxKind) -> bool {
27282 kind == SyntaxKind::TARGET_LIST
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 TimeType {
27298 #[inline]
27299 fn can_cast(kind: SyntaxKind) -> bool {
27300 kind == SyntaxKind::TIME_TYPE
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 Timing {
27316 #[inline]
27317 fn can_cast(kind: SyntaxKind) -> bool {
27318 kind == SyntaxKind::TIMING
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 TransactionModeList {
27334 #[inline]
27335 fn can_cast(kind: SyntaxKind) -> bool {
27336 kind == SyntaxKind::TRANSACTION_MODE_LIST
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 TransformFromFunc {
27352 #[inline]
27353 fn can_cast(kind: SyntaxKind) -> bool {
27354 kind == SyntaxKind::TRANSFORM_FROM_FUNC
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 TransformFuncOption {
27370 #[inline]
27371 fn can_cast(kind: SyntaxKind) -> bool {
27372 kind == SyntaxKind::TRANSFORM_FUNC_OPTION
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 TransformToFunc {
27388 #[inline]
27389 fn can_cast(kind: SyntaxKind) -> bool {
27390 kind == SyntaxKind::TRANSFORM_TO_FUNC
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 TriggerEvent {
27406 #[inline]
27407 fn can_cast(kind: SyntaxKind) -> bool {
27408 kind == SyntaxKind::TRIGGER_EVENT
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 TriggerEventList {
27424 #[inline]
27425 fn can_cast(kind: SyntaxKind) -> bool {
27426 kind == SyntaxKind::TRIGGER_EVENT_LIST
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 TriggerEventUpdate {
27442 #[inline]
27443 fn can_cast(kind: SyntaxKind) -> bool {
27444 kind == SyntaxKind::TRIGGER_EVENT_UPDATE
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 TrimFn {
27460 #[inline]
27461 fn can_cast(kind: SyntaxKind) -> bool {
27462 kind == SyntaxKind::TRIM_FN
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 Truncate {
27478 #[inline]
27479 fn can_cast(kind: SyntaxKind) -> bool {
27480 kind == SyntaxKind::TRUNCATE
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 TupleExpr {
27496 #[inline]
27497 fn can_cast(kind: SyntaxKind) -> bool {
27498 kind == SyntaxKind::TUPLE_EXPR
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 UnicodeNormalForm {
27514 #[inline]
27515 fn can_cast(kind: SyntaxKind) -> bool {
27516 kind == SyntaxKind::UNICODE_NORMAL_FORM
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 UniqueConstraint {
27532 #[inline]
27533 fn can_cast(kind: SyntaxKind) -> bool {
27534 kind == SyntaxKind::UNIQUE_CONSTRAINT
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 Unlisten {
27550 #[inline]
27551 fn can_cast(kind: SyntaxKind) -> bool {
27552 kind == SyntaxKind::UNLISTEN
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 Update {
27568 #[inline]
27569 fn can_cast(kind: SyntaxKind) -> bool {
27570 kind == SyntaxKind::UPDATE
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 UsingClause {
27586 #[inline]
27587 fn can_cast(kind: SyntaxKind) -> bool {
27588 kind == SyntaxKind::USING_CLAUSE
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 UsingIndex {
27604 #[inline]
27605 fn can_cast(kind: SyntaxKind) -> bool {
27606 kind == SyntaxKind::USING_INDEX
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 UsingMethod {
27622 #[inline]
27623 fn can_cast(kind: SyntaxKind) -> bool {
27624 kind == SyntaxKind::USING_METHOD
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 UsingOnClause {
27640 #[inline]
27641 fn can_cast(kind: SyntaxKind) -> bool {
27642 kind == SyntaxKind::USING_ON_CLAUSE
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 Vacuum {
27658 #[inline]
27659 fn can_cast(kind: SyntaxKind) -> bool {
27660 kind == SyntaxKind::VACUUM
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 VacuumOption {
27676 #[inline]
27677 fn can_cast(kind: SyntaxKind) -> bool {
27678 kind == SyntaxKind::VACUUM_OPTION
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 VacuumOptionList {
27694 #[inline]
27695 fn can_cast(kind: SyntaxKind) -> bool {
27696 kind == SyntaxKind::VACUUM_OPTION_LIST
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 ValidateConstraint {
27712 #[inline]
27713 fn can_cast(kind: SyntaxKind) -> bool {
27714 kind == SyntaxKind::VALIDATE_CONSTRAINT
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 Values {
27730 #[inline]
27731 fn can_cast(kind: SyntaxKind) -> bool {
27732 kind == SyntaxKind::VALUES
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 Variant {
27748 #[inline]
27749 fn can_cast(kind: SyntaxKind) -> bool {
27750 kind == SyntaxKind::VARIANT
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 VariantList {
27766 #[inline]
27767 fn can_cast(kind: SyntaxKind) -> bool {
27768 kind == SyntaxKind::VARIANT_LIST
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 VolatilityFuncOption {
27784 #[inline]
27785 fn can_cast(kind: SyntaxKind) -> bool {
27786 kind == SyntaxKind::VOLATILITY_FUNC_OPTION
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 WhenClause {
27802 #[inline]
27803 fn can_cast(kind: SyntaxKind) -> bool {
27804 kind == SyntaxKind::WHEN_CLAUSE
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 WhenClauseList {
27820 #[inline]
27821 fn can_cast(kind: SyntaxKind) -> bool {
27822 kind == SyntaxKind::WHEN_CLAUSE_LIST
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 WhenCondition {
27838 #[inline]
27839 fn can_cast(kind: SyntaxKind) -> bool {
27840 kind == SyntaxKind::WHEN_CONDITION
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 WhereClause {
27856 #[inline]
27857 fn can_cast(kind: SyntaxKind) -> bool {
27858 kind == SyntaxKind::WHERE_CLAUSE
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 WhereConditionClause {
27874 #[inline]
27875 fn can_cast(kind: SyntaxKind) -> bool {
27876 kind == SyntaxKind::WHERE_CONDITION_CLAUSE
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 WhereCurrentOf {
27892 #[inline]
27893 fn can_cast(kind: SyntaxKind) -> bool {
27894 kind == SyntaxKind::WHERE_CURRENT_OF
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 WindowClause {
27910 #[inline]
27911 fn can_cast(kind: SyntaxKind) -> bool {
27912 kind == SyntaxKind::WINDOW_CLAUSE
27913 }
27914 #[inline]
27915 fn cast(syntax: SyntaxNode) -> Option<Self> {
27916 if Self::can_cast(syntax.kind()) {
27917 Some(Self { syntax })
27918 } else {
27919 None
27920 }
27921 }
27922 #[inline]
27923 fn syntax(&self) -> &SyntaxNode {
27924 &self.syntax
27925 }
27926}
27927impl AstNode for WindowDef {
27928 #[inline]
27929 fn can_cast(kind: SyntaxKind) -> bool {
27930 kind == SyntaxKind::WINDOW_DEF
27931 }
27932 #[inline]
27933 fn cast(syntax: SyntaxNode) -> Option<Self> {
27934 if Self::can_cast(syntax.kind()) {
27935 Some(Self { syntax })
27936 } else {
27937 None
27938 }
27939 }
27940 #[inline]
27941 fn syntax(&self) -> &SyntaxNode {
27942 &self.syntax
27943 }
27944}
27945impl AstNode for WindowFuncOption {
27946 #[inline]
27947 fn can_cast(kind: SyntaxKind) -> bool {
27948 kind == SyntaxKind::WINDOW_FUNC_OPTION
27949 }
27950 #[inline]
27951 fn cast(syntax: SyntaxNode) -> Option<Self> {
27952 if Self::can_cast(syntax.kind()) {
27953 Some(Self { syntax })
27954 } else {
27955 None
27956 }
27957 }
27958 #[inline]
27959 fn syntax(&self) -> &SyntaxNode {
27960 &self.syntax
27961 }
27962}
27963impl AstNode for WindowSpec {
27964 #[inline]
27965 fn can_cast(kind: SyntaxKind) -> bool {
27966 kind == SyntaxKind::WINDOW_SPEC
27967 }
27968 #[inline]
27969 fn cast(syntax: SyntaxNode) -> Option<Self> {
27970 if Self::can_cast(syntax.kind()) {
27971 Some(Self { syntax })
27972 } else {
27973 None
27974 }
27975 }
27976 #[inline]
27977 fn syntax(&self) -> &SyntaxNode {
27978 &self.syntax
27979 }
27980}
27981impl AstNode for WithClause {
27982 #[inline]
27983 fn can_cast(kind: SyntaxKind) -> bool {
27984 kind == SyntaxKind::WITH_CLAUSE
27985 }
27986 #[inline]
27987 fn cast(syntax: SyntaxNode) -> Option<Self> {
27988 if Self::can_cast(syntax.kind()) {
27989 Some(Self { syntax })
27990 } else {
27991 None
27992 }
27993 }
27994 #[inline]
27995 fn syntax(&self) -> &SyntaxNode {
27996 &self.syntax
27997 }
27998}
27999impl AstNode for WithData {
28000 #[inline]
28001 fn can_cast(kind: SyntaxKind) -> bool {
28002 kind == SyntaxKind::WITH_DATA
28003 }
28004 #[inline]
28005 fn cast(syntax: SyntaxNode) -> Option<Self> {
28006 if Self::can_cast(syntax.kind()) {
28007 Some(Self { syntax })
28008 } else {
28009 None
28010 }
28011 }
28012 #[inline]
28013 fn syntax(&self) -> &SyntaxNode {
28014 &self.syntax
28015 }
28016}
28017impl AstNode for WithNoData {
28018 #[inline]
28019 fn can_cast(kind: SyntaxKind) -> bool {
28020 kind == SyntaxKind::WITH_NO_DATA
28021 }
28022 #[inline]
28023 fn cast(syntax: SyntaxNode) -> Option<Self> {
28024 if Self::can_cast(syntax.kind()) {
28025 Some(Self { syntax })
28026 } else {
28027 None
28028 }
28029 }
28030 #[inline]
28031 fn syntax(&self) -> &SyntaxNode {
28032 &self.syntax
28033 }
28034}
28035impl AstNode for WithOptions {
28036 #[inline]
28037 fn can_cast(kind: SyntaxKind) -> bool {
28038 kind == SyntaxKind::WITH_OPTIONS
28039 }
28040 #[inline]
28041 fn cast(syntax: SyntaxNode) -> Option<Self> {
28042 if Self::can_cast(syntax.kind()) {
28043 Some(Self { syntax })
28044 } else {
28045 None
28046 }
28047 }
28048 #[inline]
28049 fn syntax(&self) -> &SyntaxNode {
28050 &self.syntax
28051 }
28052}
28053impl AstNode for WithParams {
28054 #[inline]
28055 fn can_cast(kind: SyntaxKind) -> bool {
28056 kind == SyntaxKind::WITH_PARAMS
28057 }
28058 #[inline]
28059 fn cast(syntax: SyntaxNode) -> Option<Self> {
28060 if Self::can_cast(syntax.kind()) {
28061 Some(Self { syntax })
28062 } else {
28063 None
28064 }
28065 }
28066 #[inline]
28067 fn syntax(&self) -> &SyntaxNode {
28068 &self.syntax
28069 }
28070}
28071impl AstNode for WithTable {
28072 #[inline]
28073 fn can_cast(kind: SyntaxKind) -> bool {
28074 kind == SyntaxKind::WITH_TABLE
28075 }
28076 #[inline]
28077 fn cast(syntax: SyntaxNode) -> Option<Self> {
28078 if Self::can_cast(syntax.kind()) {
28079 Some(Self { syntax })
28080 } else {
28081 None
28082 }
28083 }
28084 #[inline]
28085 fn syntax(&self) -> &SyntaxNode {
28086 &self.syntax
28087 }
28088}
28089impl AstNode for WithTimezone {
28090 #[inline]
28091 fn can_cast(kind: SyntaxKind) -> bool {
28092 kind == SyntaxKind::WITH_TIMEZONE
28093 }
28094 #[inline]
28095 fn cast(syntax: SyntaxNode) -> Option<Self> {
28096 if Self::can_cast(syntax.kind()) {
28097 Some(Self { syntax })
28098 } else {
28099 None
28100 }
28101 }
28102 #[inline]
28103 fn syntax(&self) -> &SyntaxNode {
28104 &self.syntax
28105 }
28106}
28107impl AstNode for WithinClause {
28108 #[inline]
28109 fn can_cast(kind: SyntaxKind) -> bool {
28110 kind == SyntaxKind::WITHIN_CLAUSE
28111 }
28112 #[inline]
28113 fn cast(syntax: SyntaxNode) -> Option<Self> {
28114 if Self::can_cast(syntax.kind()) {
28115 Some(Self { syntax })
28116 } else {
28117 None
28118 }
28119 }
28120 #[inline]
28121 fn syntax(&self) -> &SyntaxNode {
28122 &self.syntax
28123 }
28124}
28125impl AstNode for WithoutOids {
28126 #[inline]
28127 fn can_cast(kind: SyntaxKind) -> bool {
28128 kind == SyntaxKind::WITHOUT_OIDS
28129 }
28130 #[inline]
28131 fn cast(syntax: SyntaxNode) -> Option<Self> {
28132 if Self::can_cast(syntax.kind()) {
28133 Some(Self { syntax })
28134 } else {
28135 None
28136 }
28137 }
28138 #[inline]
28139 fn syntax(&self) -> &SyntaxNode {
28140 &self.syntax
28141 }
28142}
28143impl AstNode for WithoutTimezone {
28144 #[inline]
28145 fn can_cast(kind: SyntaxKind) -> bool {
28146 kind == SyntaxKind::WITHOUT_TIMEZONE
28147 }
28148 #[inline]
28149 fn cast(syntax: SyntaxNode) -> Option<Self> {
28150 if Self::can_cast(syntax.kind()) {
28151 Some(Self { syntax })
28152 } else {
28153 None
28154 }
28155 }
28156 #[inline]
28157 fn syntax(&self) -> &SyntaxNode {
28158 &self.syntax
28159 }
28160}
28161impl AstNode for XmlAttributeList {
28162 #[inline]
28163 fn can_cast(kind: SyntaxKind) -> bool {
28164 kind == SyntaxKind::XML_ATTRIBUTE_LIST
28165 }
28166 #[inline]
28167 fn cast(syntax: SyntaxNode) -> Option<Self> {
28168 if Self::can_cast(syntax.kind()) {
28169 Some(Self { syntax })
28170 } else {
28171 None
28172 }
28173 }
28174 #[inline]
28175 fn syntax(&self) -> &SyntaxNode {
28176 &self.syntax
28177 }
28178}
28179impl AstNode for XmlColumnOption {
28180 #[inline]
28181 fn can_cast(kind: SyntaxKind) -> bool {
28182 kind == SyntaxKind::XML_COLUMN_OPTION
28183 }
28184 #[inline]
28185 fn cast(syntax: SyntaxNode) -> Option<Self> {
28186 if Self::can_cast(syntax.kind()) {
28187 Some(Self { syntax })
28188 } else {
28189 None
28190 }
28191 }
28192 #[inline]
28193 fn syntax(&self) -> &SyntaxNode {
28194 &self.syntax
28195 }
28196}
28197impl AstNode for XmlColumnOptionList {
28198 #[inline]
28199 fn can_cast(kind: SyntaxKind) -> bool {
28200 kind == SyntaxKind::XML_COLUMN_OPTION_LIST
28201 }
28202 #[inline]
28203 fn cast(syntax: SyntaxNode) -> Option<Self> {
28204 if Self::can_cast(syntax.kind()) {
28205 Some(Self { syntax })
28206 } else {
28207 None
28208 }
28209 }
28210 #[inline]
28211 fn syntax(&self) -> &SyntaxNode {
28212 &self.syntax
28213 }
28214}
28215impl AstNode for XmlElementFn {
28216 #[inline]
28217 fn can_cast(kind: SyntaxKind) -> bool {
28218 kind == SyntaxKind::XML_ELEMENT_FN
28219 }
28220 #[inline]
28221 fn cast(syntax: SyntaxNode) -> Option<Self> {
28222 if Self::can_cast(syntax.kind()) {
28223 Some(Self { syntax })
28224 } else {
28225 None
28226 }
28227 }
28228 #[inline]
28229 fn syntax(&self) -> &SyntaxNode {
28230 &self.syntax
28231 }
28232}
28233impl AstNode for XmlExistsFn {
28234 #[inline]
28235 fn can_cast(kind: SyntaxKind) -> bool {
28236 kind == SyntaxKind::XML_EXISTS_FN
28237 }
28238 #[inline]
28239 fn cast(syntax: SyntaxNode) -> Option<Self> {
28240 if Self::can_cast(syntax.kind()) {
28241 Some(Self { syntax })
28242 } else {
28243 None
28244 }
28245 }
28246 #[inline]
28247 fn syntax(&self) -> &SyntaxNode {
28248 &self.syntax
28249 }
28250}
28251impl AstNode for XmlForestFn {
28252 #[inline]
28253 fn can_cast(kind: SyntaxKind) -> bool {
28254 kind == SyntaxKind::XML_FOREST_FN
28255 }
28256 #[inline]
28257 fn cast(syntax: SyntaxNode) -> Option<Self> {
28258 if Self::can_cast(syntax.kind()) {
28259 Some(Self { syntax })
28260 } else {
28261 None
28262 }
28263 }
28264 #[inline]
28265 fn syntax(&self) -> &SyntaxNode {
28266 &self.syntax
28267 }
28268}
28269impl AstNode for XmlNamespace {
28270 #[inline]
28271 fn can_cast(kind: SyntaxKind) -> bool {
28272 kind == SyntaxKind::XML_NAMESPACE
28273 }
28274 #[inline]
28275 fn cast(syntax: SyntaxNode) -> Option<Self> {
28276 if Self::can_cast(syntax.kind()) {
28277 Some(Self { syntax })
28278 } else {
28279 None
28280 }
28281 }
28282 #[inline]
28283 fn syntax(&self) -> &SyntaxNode {
28284 &self.syntax
28285 }
28286}
28287impl AstNode for XmlNamespaceList {
28288 #[inline]
28289 fn can_cast(kind: SyntaxKind) -> bool {
28290 kind == SyntaxKind::XML_NAMESPACE_LIST
28291 }
28292 #[inline]
28293 fn cast(syntax: SyntaxNode) -> Option<Self> {
28294 if Self::can_cast(syntax.kind()) {
28295 Some(Self { syntax })
28296 } else {
28297 None
28298 }
28299 }
28300 #[inline]
28301 fn syntax(&self) -> &SyntaxNode {
28302 &self.syntax
28303 }
28304}
28305impl AstNode for XmlParseFn {
28306 #[inline]
28307 fn can_cast(kind: SyntaxKind) -> bool {
28308 kind == SyntaxKind::XML_PARSE_FN
28309 }
28310 #[inline]
28311 fn cast(syntax: SyntaxNode) -> Option<Self> {
28312 if Self::can_cast(syntax.kind()) {
28313 Some(Self { syntax })
28314 } else {
28315 None
28316 }
28317 }
28318 #[inline]
28319 fn syntax(&self) -> &SyntaxNode {
28320 &self.syntax
28321 }
28322}
28323impl AstNode for XmlPassingMech {
28324 #[inline]
28325 fn can_cast(kind: SyntaxKind) -> bool {
28326 kind == SyntaxKind::XML_PASSING_MECH
28327 }
28328 #[inline]
28329 fn cast(syntax: SyntaxNode) -> Option<Self> {
28330 if Self::can_cast(syntax.kind()) {
28331 Some(Self { syntax })
28332 } else {
28333 None
28334 }
28335 }
28336 #[inline]
28337 fn syntax(&self) -> &SyntaxNode {
28338 &self.syntax
28339 }
28340}
28341impl AstNode for XmlPiFn {
28342 #[inline]
28343 fn can_cast(kind: SyntaxKind) -> bool {
28344 kind == SyntaxKind::XML_PI_FN
28345 }
28346 #[inline]
28347 fn cast(syntax: SyntaxNode) -> Option<Self> {
28348 if Self::can_cast(syntax.kind()) {
28349 Some(Self { syntax })
28350 } else {
28351 None
28352 }
28353 }
28354 #[inline]
28355 fn syntax(&self) -> &SyntaxNode {
28356 &self.syntax
28357 }
28358}
28359impl AstNode for XmlRootFn {
28360 #[inline]
28361 fn can_cast(kind: SyntaxKind) -> bool {
28362 kind == SyntaxKind::XML_ROOT_FN
28363 }
28364 #[inline]
28365 fn cast(syntax: SyntaxNode) -> Option<Self> {
28366 if Self::can_cast(syntax.kind()) {
28367 Some(Self { syntax })
28368 } else {
28369 None
28370 }
28371 }
28372 #[inline]
28373 fn syntax(&self) -> &SyntaxNode {
28374 &self.syntax
28375 }
28376}
28377impl AstNode for XmlRowPassingClause {
28378 #[inline]
28379 fn can_cast(kind: SyntaxKind) -> bool {
28380 kind == SyntaxKind::XML_ROW_PASSING_CLAUSE
28381 }
28382 #[inline]
28383 fn cast(syntax: SyntaxNode) -> Option<Self> {
28384 if Self::can_cast(syntax.kind()) {
28385 Some(Self { syntax })
28386 } else {
28387 None
28388 }
28389 }
28390 #[inline]
28391 fn syntax(&self) -> &SyntaxNode {
28392 &self.syntax
28393 }
28394}
28395impl AstNode for XmlSerializeFn {
28396 #[inline]
28397 fn can_cast(kind: SyntaxKind) -> bool {
28398 kind == SyntaxKind::XML_SERIALIZE_FN
28399 }
28400 #[inline]
28401 fn cast(syntax: SyntaxNode) -> Option<Self> {
28402 if Self::can_cast(syntax.kind()) {
28403 Some(Self { syntax })
28404 } else {
28405 None
28406 }
28407 }
28408 #[inline]
28409 fn syntax(&self) -> &SyntaxNode {
28410 &self.syntax
28411 }
28412}
28413impl AstNode for XmlTable {
28414 #[inline]
28415 fn can_cast(kind: SyntaxKind) -> bool {
28416 kind == SyntaxKind::XML_TABLE
28417 }
28418 #[inline]
28419 fn cast(syntax: SyntaxNode) -> Option<Self> {
28420 if Self::can_cast(syntax.kind()) {
28421 Some(Self { syntax })
28422 } else {
28423 None
28424 }
28425 }
28426 #[inline]
28427 fn syntax(&self) -> &SyntaxNode {
28428 &self.syntax
28429 }
28430}
28431impl AstNode for XmlTableColumn {
28432 #[inline]
28433 fn can_cast(kind: SyntaxKind) -> bool {
28434 kind == SyntaxKind::XML_TABLE_COLUMN
28435 }
28436 #[inline]
28437 fn cast(syntax: SyntaxNode) -> Option<Self> {
28438 if Self::can_cast(syntax.kind()) {
28439 Some(Self { syntax })
28440 } else {
28441 None
28442 }
28443 }
28444 #[inline]
28445 fn syntax(&self) -> &SyntaxNode {
28446 &self.syntax
28447 }
28448}
28449impl AstNode for XmlTableColumnList {
28450 #[inline]
28451 fn can_cast(kind: SyntaxKind) -> bool {
28452 kind == SyntaxKind::XML_TABLE_COLUMN_LIST
28453 }
28454 #[inline]
28455 fn cast(syntax: SyntaxNode) -> Option<Self> {
28456 if Self::can_cast(syntax.kind()) {
28457 Some(Self { syntax })
28458 } else {
28459 None
28460 }
28461 }
28462 #[inline]
28463 fn syntax(&self) -> &SyntaxNode {
28464 &self.syntax
28465 }
28466}
28467impl AstNode for AlterColumnOption {
28468 #[inline]
28469 fn can_cast(kind: SyntaxKind) -> bool {
28470 matches!(
28471 kind,
28472 SyntaxKind::ADD_GENERATED
28473 | SyntaxKind::DROP_DEFAULT
28474 | SyntaxKind::DROP_EXPRESSION
28475 | SyntaxKind::DROP_IDENTITY
28476 | SyntaxKind::DROP_NOT_NULL
28477 | SyntaxKind::RESET_OPTIONS
28478 | SyntaxKind::RESTART
28479 | SyntaxKind::SET_COMPRESSION
28480 | SyntaxKind::SET_DEFAULT
28481 | SyntaxKind::SET_EXPRESSION
28482 | SyntaxKind::SET_GENERATED
28483 | SyntaxKind::SET_GENERATED_OPTIONS
28484 | SyntaxKind::SET_NOT_NULL
28485 | SyntaxKind::SET_OPTIONS
28486 | SyntaxKind::SET_OPTIONS_LIST
28487 | SyntaxKind::SET_SEQUENCE_OPTION
28488 | SyntaxKind::SET_STATISTICS
28489 | SyntaxKind::SET_STORAGE
28490 | SyntaxKind::SET_TYPE
28491 )
28492 }
28493 #[inline]
28494 fn cast(syntax: SyntaxNode) -> Option<Self> {
28495 let res = match syntax.kind() {
28496 SyntaxKind::ADD_GENERATED => AlterColumnOption::AddGenerated(AddGenerated { syntax }),
28497 SyntaxKind::DROP_DEFAULT => AlterColumnOption::DropDefault(DropDefault { syntax }),
28498 SyntaxKind::DROP_EXPRESSION => {
28499 AlterColumnOption::DropExpression(DropExpression { syntax })
28500 }
28501 SyntaxKind::DROP_IDENTITY => AlterColumnOption::DropIdentity(DropIdentity { syntax }),
28502 SyntaxKind::DROP_NOT_NULL => AlterColumnOption::DropNotNull(DropNotNull { syntax }),
28503 SyntaxKind::RESET_OPTIONS => AlterColumnOption::ResetOptions(ResetOptions { syntax }),
28504 SyntaxKind::RESTART => AlterColumnOption::Restart(Restart { syntax }),
28505 SyntaxKind::SET_COMPRESSION => {
28506 AlterColumnOption::SetCompression(SetCompression { syntax })
28507 }
28508 SyntaxKind::SET_DEFAULT => AlterColumnOption::SetDefault(SetDefault { syntax }),
28509 SyntaxKind::SET_EXPRESSION => {
28510 AlterColumnOption::SetExpression(SetExpression { syntax })
28511 }
28512 SyntaxKind::SET_GENERATED => AlterColumnOption::SetGenerated(SetGenerated { syntax }),
28513 SyntaxKind::SET_GENERATED_OPTIONS => {
28514 AlterColumnOption::SetGeneratedOptions(SetGeneratedOptions { syntax })
28515 }
28516 SyntaxKind::SET_NOT_NULL => AlterColumnOption::SetNotNull(SetNotNull { syntax }),
28517 SyntaxKind::SET_OPTIONS => AlterColumnOption::SetOptions(SetOptions { syntax }),
28518 SyntaxKind::SET_OPTIONS_LIST => {
28519 AlterColumnOption::SetOptionsList(SetOptionsList { syntax })
28520 }
28521 SyntaxKind::SET_SEQUENCE_OPTION => {
28522 AlterColumnOption::SetSequenceOption(SetSequenceOption { syntax })
28523 }
28524 SyntaxKind::SET_STATISTICS => {
28525 AlterColumnOption::SetStatistics(SetStatistics { syntax })
28526 }
28527 SyntaxKind::SET_STORAGE => AlterColumnOption::SetStorage(SetStorage { syntax }),
28528 SyntaxKind::SET_TYPE => AlterColumnOption::SetType(SetType { syntax }),
28529 _ => {
28530 return None;
28531 }
28532 };
28533 Some(res)
28534 }
28535 #[inline]
28536 fn syntax(&self) -> &SyntaxNode {
28537 match self {
28538 AlterColumnOption::AddGenerated(it) => &it.syntax,
28539 AlterColumnOption::DropDefault(it) => &it.syntax,
28540 AlterColumnOption::DropExpression(it) => &it.syntax,
28541 AlterColumnOption::DropIdentity(it) => &it.syntax,
28542 AlterColumnOption::DropNotNull(it) => &it.syntax,
28543 AlterColumnOption::ResetOptions(it) => &it.syntax,
28544 AlterColumnOption::Restart(it) => &it.syntax,
28545 AlterColumnOption::SetCompression(it) => &it.syntax,
28546 AlterColumnOption::SetDefault(it) => &it.syntax,
28547 AlterColumnOption::SetExpression(it) => &it.syntax,
28548 AlterColumnOption::SetGenerated(it) => &it.syntax,
28549 AlterColumnOption::SetGeneratedOptions(it) => &it.syntax,
28550 AlterColumnOption::SetNotNull(it) => &it.syntax,
28551 AlterColumnOption::SetOptions(it) => &it.syntax,
28552 AlterColumnOption::SetOptionsList(it) => &it.syntax,
28553 AlterColumnOption::SetSequenceOption(it) => &it.syntax,
28554 AlterColumnOption::SetStatistics(it) => &it.syntax,
28555 AlterColumnOption::SetStorage(it) => &it.syntax,
28556 AlterColumnOption::SetType(it) => &it.syntax,
28557 }
28558 }
28559}
28560impl From<AddGenerated> for AlterColumnOption {
28561 #[inline]
28562 fn from(node: AddGenerated) -> AlterColumnOption {
28563 AlterColumnOption::AddGenerated(node)
28564 }
28565}
28566impl From<DropDefault> for AlterColumnOption {
28567 #[inline]
28568 fn from(node: DropDefault) -> AlterColumnOption {
28569 AlterColumnOption::DropDefault(node)
28570 }
28571}
28572impl From<DropExpression> for AlterColumnOption {
28573 #[inline]
28574 fn from(node: DropExpression) -> AlterColumnOption {
28575 AlterColumnOption::DropExpression(node)
28576 }
28577}
28578impl From<DropIdentity> for AlterColumnOption {
28579 #[inline]
28580 fn from(node: DropIdentity) -> AlterColumnOption {
28581 AlterColumnOption::DropIdentity(node)
28582 }
28583}
28584impl From<DropNotNull> for AlterColumnOption {
28585 #[inline]
28586 fn from(node: DropNotNull) -> AlterColumnOption {
28587 AlterColumnOption::DropNotNull(node)
28588 }
28589}
28590impl From<ResetOptions> for AlterColumnOption {
28591 #[inline]
28592 fn from(node: ResetOptions) -> AlterColumnOption {
28593 AlterColumnOption::ResetOptions(node)
28594 }
28595}
28596impl From<Restart> for AlterColumnOption {
28597 #[inline]
28598 fn from(node: Restart) -> AlterColumnOption {
28599 AlterColumnOption::Restart(node)
28600 }
28601}
28602impl From<SetCompression> for AlterColumnOption {
28603 #[inline]
28604 fn from(node: SetCompression) -> AlterColumnOption {
28605 AlterColumnOption::SetCompression(node)
28606 }
28607}
28608impl From<SetDefault> for AlterColumnOption {
28609 #[inline]
28610 fn from(node: SetDefault) -> AlterColumnOption {
28611 AlterColumnOption::SetDefault(node)
28612 }
28613}
28614impl From<SetExpression> for AlterColumnOption {
28615 #[inline]
28616 fn from(node: SetExpression) -> AlterColumnOption {
28617 AlterColumnOption::SetExpression(node)
28618 }
28619}
28620impl From<SetGenerated> for AlterColumnOption {
28621 #[inline]
28622 fn from(node: SetGenerated) -> AlterColumnOption {
28623 AlterColumnOption::SetGenerated(node)
28624 }
28625}
28626impl From<SetGeneratedOptions> for AlterColumnOption {
28627 #[inline]
28628 fn from(node: SetGeneratedOptions) -> AlterColumnOption {
28629 AlterColumnOption::SetGeneratedOptions(node)
28630 }
28631}
28632impl From<SetNotNull> for AlterColumnOption {
28633 #[inline]
28634 fn from(node: SetNotNull) -> AlterColumnOption {
28635 AlterColumnOption::SetNotNull(node)
28636 }
28637}
28638impl From<SetOptions> for AlterColumnOption {
28639 #[inline]
28640 fn from(node: SetOptions) -> AlterColumnOption {
28641 AlterColumnOption::SetOptions(node)
28642 }
28643}
28644impl From<SetOptionsList> for AlterColumnOption {
28645 #[inline]
28646 fn from(node: SetOptionsList) -> AlterColumnOption {
28647 AlterColumnOption::SetOptionsList(node)
28648 }
28649}
28650impl From<SetSequenceOption> for AlterColumnOption {
28651 #[inline]
28652 fn from(node: SetSequenceOption) -> AlterColumnOption {
28653 AlterColumnOption::SetSequenceOption(node)
28654 }
28655}
28656impl From<SetStatistics> for AlterColumnOption {
28657 #[inline]
28658 fn from(node: SetStatistics) -> AlterColumnOption {
28659 AlterColumnOption::SetStatistics(node)
28660 }
28661}
28662impl From<SetStorage> for AlterColumnOption {
28663 #[inline]
28664 fn from(node: SetStorage) -> AlterColumnOption {
28665 AlterColumnOption::SetStorage(node)
28666 }
28667}
28668impl From<SetType> for AlterColumnOption {
28669 #[inline]
28670 fn from(node: SetType) -> AlterColumnOption {
28671 AlterColumnOption::SetType(node)
28672 }
28673}
28674impl AstNode for AlterDomainAction {
28675 #[inline]
28676 fn can_cast(kind: SyntaxKind) -> bool {
28677 matches!(
28678 kind,
28679 SyntaxKind::ADD_CONSTRAINT
28680 | SyntaxKind::DROP_CONSTRAINT
28681 | SyntaxKind::DROP_DEFAULT
28682 | SyntaxKind::DROP_NOT_NULL
28683 | SyntaxKind::OWNER_TO
28684 | SyntaxKind::RENAME_CONSTRAINT
28685 | SyntaxKind::RENAME_TO
28686 | SyntaxKind::SET_DEFAULT
28687 | SyntaxKind::SET_NOT_NULL
28688 | SyntaxKind::SET_SCHEMA
28689 | SyntaxKind::VALIDATE_CONSTRAINT
28690 )
28691 }
28692 #[inline]
28693 fn cast(syntax: SyntaxNode) -> Option<Self> {
28694 let res = match syntax.kind() {
28695 SyntaxKind::ADD_CONSTRAINT => {
28696 AlterDomainAction::AddConstraint(AddConstraint { syntax })
28697 }
28698 SyntaxKind::DROP_CONSTRAINT => {
28699 AlterDomainAction::DropConstraint(DropConstraint { syntax })
28700 }
28701 SyntaxKind::DROP_DEFAULT => AlterDomainAction::DropDefault(DropDefault { syntax }),
28702 SyntaxKind::DROP_NOT_NULL => AlterDomainAction::DropNotNull(DropNotNull { syntax }),
28703 SyntaxKind::OWNER_TO => AlterDomainAction::OwnerTo(OwnerTo { syntax }),
28704 SyntaxKind::RENAME_CONSTRAINT => {
28705 AlterDomainAction::RenameConstraint(RenameConstraint { syntax })
28706 }
28707 SyntaxKind::RENAME_TO => AlterDomainAction::RenameTo(RenameTo { syntax }),
28708 SyntaxKind::SET_DEFAULT => AlterDomainAction::SetDefault(SetDefault { syntax }),
28709 SyntaxKind::SET_NOT_NULL => AlterDomainAction::SetNotNull(SetNotNull { syntax }),
28710 SyntaxKind::SET_SCHEMA => AlterDomainAction::SetSchema(SetSchema { syntax }),
28711 SyntaxKind::VALIDATE_CONSTRAINT => {
28712 AlterDomainAction::ValidateConstraint(ValidateConstraint { syntax })
28713 }
28714 _ => {
28715 return None;
28716 }
28717 };
28718 Some(res)
28719 }
28720 #[inline]
28721 fn syntax(&self) -> &SyntaxNode {
28722 match self {
28723 AlterDomainAction::AddConstraint(it) => &it.syntax,
28724 AlterDomainAction::DropConstraint(it) => &it.syntax,
28725 AlterDomainAction::DropDefault(it) => &it.syntax,
28726 AlterDomainAction::DropNotNull(it) => &it.syntax,
28727 AlterDomainAction::OwnerTo(it) => &it.syntax,
28728 AlterDomainAction::RenameConstraint(it) => &it.syntax,
28729 AlterDomainAction::RenameTo(it) => &it.syntax,
28730 AlterDomainAction::SetDefault(it) => &it.syntax,
28731 AlterDomainAction::SetNotNull(it) => &it.syntax,
28732 AlterDomainAction::SetSchema(it) => &it.syntax,
28733 AlterDomainAction::ValidateConstraint(it) => &it.syntax,
28734 }
28735 }
28736}
28737impl From<AddConstraint> for AlterDomainAction {
28738 #[inline]
28739 fn from(node: AddConstraint) -> AlterDomainAction {
28740 AlterDomainAction::AddConstraint(node)
28741 }
28742}
28743impl From<DropConstraint> for AlterDomainAction {
28744 #[inline]
28745 fn from(node: DropConstraint) -> AlterDomainAction {
28746 AlterDomainAction::DropConstraint(node)
28747 }
28748}
28749impl From<DropDefault> for AlterDomainAction {
28750 #[inline]
28751 fn from(node: DropDefault) -> AlterDomainAction {
28752 AlterDomainAction::DropDefault(node)
28753 }
28754}
28755impl From<DropNotNull> for AlterDomainAction {
28756 #[inline]
28757 fn from(node: DropNotNull) -> AlterDomainAction {
28758 AlterDomainAction::DropNotNull(node)
28759 }
28760}
28761impl From<OwnerTo> for AlterDomainAction {
28762 #[inline]
28763 fn from(node: OwnerTo) -> AlterDomainAction {
28764 AlterDomainAction::OwnerTo(node)
28765 }
28766}
28767impl From<RenameConstraint> for AlterDomainAction {
28768 #[inline]
28769 fn from(node: RenameConstraint) -> AlterDomainAction {
28770 AlterDomainAction::RenameConstraint(node)
28771 }
28772}
28773impl From<RenameTo> for AlterDomainAction {
28774 #[inline]
28775 fn from(node: RenameTo) -> AlterDomainAction {
28776 AlterDomainAction::RenameTo(node)
28777 }
28778}
28779impl From<SetDefault> for AlterDomainAction {
28780 #[inline]
28781 fn from(node: SetDefault) -> AlterDomainAction {
28782 AlterDomainAction::SetDefault(node)
28783 }
28784}
28785impl From<SetNotNull> for AlterDomainAction {
28786 #[inline]
28787 fn from(node: SetNotNull) -> AlterDomainAction {
28788 AlterDomainAction::SetNotNull(node)
28789 }
28790}
28791impl From<SetSchema> for AlterDomainAction {
28792 #[inline]
28793 fn from(node: SetSchema) -> AlterDomainAction {
28794 AlterDomainAction::SetSchema(node)
28795 }
28796}
28797impl From<ValidateConstraint> for AlterDomainAction {
28798 #[inline]
28799 fn from(node: ValidateConstraint) -> AlterDomainAction {
28800 AlterDomainAction::ValidateConstraint(node)
28801 }
28802}
28803impl AstNode for AlterMaterializedViewAction {
28804 #[inline]
28805 fn can_cast(kind: SyntaxKind) -> bool {
28806 matches!(
28807 kind,
28808 SyntaxKind::DEPENDS_ON_EXTENSION
28809 | SyntaxKind::NO_DEPENDS_ON_EXTENSION
28810 | SyntaxKind::RENAME_COLUMN
28811 | SyntaxKind::RENAME_TO
28812 | SyntaxKind::SET_SCHEMA
28813 )
28814 }
28815 #[inline]
28816 fn cast(syntax: SyntaxNode) -> Option<Self> {
28817 let res = match syntax.kind() {
28818 SyntaxKind::DEPENDS_ON_EXTENSION => {
28819 AlterMaterializedViewAction::DependsOnExtension(DependsOnExtension { syntax })
28820 }
28821 SyntaxKind::NO_DEPENDS_ON_EXTENSION => {
28822 AlterMaterializedViewAction::NoDependsOnExtension(NoDependsOnExtension { syntax })
28823 }
28824 SyntaxKind::RENAME_COLUMN => {
28825 AlterMaterializedViewAction::RenameColumn(RenameColumn { syntax })
28826 }
28827 SyntaxKind::RENAME_TO => AlterMaterializedViewAction::RenameTo(RenameTo { syntax }),
28828 SyntaxKind::SET_SCHEMA => AlterMaterializedViewAction::SetSchema(SetSchema { syntax }),
28829 _ => {
28830 if let Some(result) = AlterTableAction::cast(syntax) {
28831 return Some(AlterMaterializedViewAction::AlterTableAction(result));
28832 }
28833 return None;
28834 }
28835 };
28836 Some(res)
28837 }
28838 #[inline]
28839 fn syntax(&self) -> &SyntaxNode {
28840 match self {
28841 AlterMaterializedViewAction::DependsOnExtension(it) => &it.syntax,
28842 AlterMaterializedViewAction::NoDependsOnExtension(it) => &it.syntax,
28843 AlterMaterializedViewAction::RenameColumn(it) => &it.syntax,
28844 AlterMaterializedViewAction::RenameTo(it) => &it.syntax,
28845 AlterMaterializedViewAction::SetSchema(it) => &it.syntax,
28846 AlterMaterializedViewAction::AlterTableAction(it) => it.syntax(),
28847 }
28848 }
28849}
28850impl From<DependsOnExtension> for AlterMaterializedViewAction {
28851 #[inline]
28852 fn from(node: DependsOnExtension) -> AlterMaterializedViewAction {
28853 AlterMaterializedViewAction::DependsOnExtension(node)
28854 }
28855}
28856impl From<NoDependsOnExtension> for AlterMaterializedViewAction {
28857 #[inline]
28858 fn from(node: NoDependsOnExtension) -> AlterMaterializedViewAction {
28859 AlterMaterializedViewAction::NoDependsOnExtension(node)
28860 }
28861}
28862impl From<RenameColumn> for AlterMaterializedViewAction {
28863 #[inline]
28864 fn from(node: RenameColumn) -> AlterMaterializedViewAction {
28865 AlterMaterializedViewAction::RenameColumn(node)
28866 }
28867}
28868impl From<RenameTo> for AlterMaterializedViewAction {
28869 #[inline]
28870 fn from(node: RenameTo) -> AlterMaterializedViewAction {
28871 AlterMaterializedViewAction::RenameTo(node)
28872 }
28873}
28874impl From<SetSchema> for AlterMaterializedViewAction {
28875 #[inline]
28876 fn from(node: SetSchema) -> AlterMaterializedViewAction {
28877 AlterMaterializedViewAction::SetSchema(node)
28878 }
28879}
28880impl AstNode for AlterTableAction {
28881 #[inline]
28882 fn can_cast(kind: SyntaxKind) -> bool {
28883 matches!(
28884 kind,
28885 SyntaxKind::ADD_COLUMN
28886 | SyntaxKind::ADD_CONSTRAINT
28887 | SyntaxKind::ALTER_COLUMN
28888 | SyntaxKind::ALTER_CONSTRAINT
28889 | SyntaxKind::ATTACH_PARTITION
28890 | SyntaxKind::CLUSTER_ON
28891 | SyntaxKind::DETACH_PARTITION
28892 | SyntaxKind::DISABLE_RLS
28893 | SyntaxKind::DISABLE_RULE
28894 | SyntaxKind::DISABLE_TRIGGER
28895 | SyntaxKind::DROP_COLUMN
28896 | SyntaxKind::DROP_CONSTRAINT
28897 | SyntaxKind::ENABLE_ALWAYS_RULE
28898 | SyntaxKind::ENABLE_ALWAYS_TRIGGER
28899 | SyntaxKind::ENABLE_REPLICA_RULE
28900 | SyntaxKind::ENABLE_REPLICA_TRIGGER
28901 | SyntaxKind::ENABLE_RLS
28902 | SyntaxKind::ENABLE_RULE
28903 | SyntaxKind::ENABLE_TRIGGER
28904 | SyntaxKind::FORCE_RLS
28905 | SyntaxKind::INHERIT_TABLE
28906 | SyntaxKind::MERGE_PARTITIONS
28907 | SyntaxKind::NO_FORCE_RLS
28908 | SyntaxKind::NO_INHERIT_TABLE
28909 | SyntaxKind::NOT_OF
28910 | SyntaxKind::OF_TYPE
28911 | SyntaxKind::OPTION_ITEM_LIST
28912 | SyntaxKind::OWNER_TO
28913 | SyntaxKind::RENAME_COLUMN
28914 | SyntaxKind::RENAME_CONSTRAINT
28915 | SyntaxKind::RENAME_TO
28916 | SyntaxKind::REPLICA_IDENTITY
28917 | SyntaxKind::RESET_OPTIONS
28918 | SyntaxKind::SET_ACCESS_METHOD
28919 | SyntaxKind::SET_LOGGED
28920 | SyntaxKind::SET_OPTIONS
28921 | SyntaxKind::SET_SCHEMA
28922 | SyntaxKind::SET_TABLESPACE
28923 | SyntaxKind::SET_UNLOGGED
28924 | SyntaxKind::SET_WITHOUT_CLUSTER
28925 | SyntaxKind::SET_WITHOUT_OIDS
28926 | SyntaxKind::SPLIT_PARTITION
28927 | SyntaxKind::VALIDATE_CONSTRAINT
28928 )
28929 }
28930 #[inline]
28931 fn cast(syntax: SyntaxNode) -> Option<Self> {
28932 let res = match syntax.kind() {
28933 SyntaxKind::ADD_COLUMN => AlterTableAction::AddColumn(AddColumn { syntax }),
28934 SyntaxKind::ADD_CONSTRAINT => AlterTableAction::AddConstraint(AddConstraint { syntax }),
28935 SyntaxKind::ALTER_COLUMN => AlterTableAction::AlterColumn(AlterColumn { syntax }),
28936 SyntaxKind::ALTER_CONSTRAINT => {
28937 AlterTableAction::AlterConstraint(AlterConstraint { syntax })
28938 }
28939 SyntaxKind::ATTACH_PARTITION => {
28940 AlterTableAction::AttachPartition(AttachPartition { syntax })
28941 }
28942 SyntaxKind::CLUSTER_ON => AlterTableAction::ClusterOn(ClusterOn { syntax }),
28943 SyntaxKind::DETACH_PARTITION => {
28944 AlterTableAction::DetachPartition(DetachPartition { syntax })
28945 }
28946 SyntaxKind::DISABLE_RLS => AlterTableAction::DisableRls(DisableRls { syntax }),
28947 SyntaxKind::DISABLE_RULE => AlterTableAction::DisableRule(DisableRule { syntax }),
28948 SyntaxKind::DISABLE_TRIGGER => {
28949 AlterTableAction::DisableTrigger(DisableTrigger { syntax })
28950 }
28951 SyntaxKind::DROP_COLUMN => AlterTableAction::DropColumn(DropColumn { syntax }),
28952 SyntaxKind::DROP_CONSTRAINT => {
28953 AlterTableAction::DropConstraint(DropConstraint { syntax })
28954 }
28955 SyntaxKind::ENABLE_ALWAYS_RULE => {
28956 AlterTableAction::EnableAlwaysRule(EnableAlwaysRule { syntax })
28957 }
28958 SyntaxKind::ENABLE_ALWAYS_TRIGGER => {
28959 AlterTableAction::EnableAlwaysTrigger(EnableAlwaysTrigger { syntax })
28960 }
28961 SyntaxKind::ENABLE_REPLICA_RULE => {
28962 AlterTableAction::EnableReplicaRule(EnableReplicaRule { syntax })
28963 }
28964 SyntaxKind::ENABLE_REPLICA_TRIGGER => {
28965 AlterTableAction::EnableReplicaTrigger(EnableReplicaTrigger { syntax })
28966 }
28967 SyntaxKind::ENABLE_RLS => AlterTableAction::EnableRls(EnableRls { syntax }),
28968 SyntaxKind::ENABLE_RULE => AlterTableAction::EnableRule(EnableRule { syntax }),
28969 SyntaxKind::ENABLE_TRIGGER => AlterTableAction::EnableTrigger(EnableTrigger { syntax }),
28970 SyntaxKind::FORCE_RLS => AlterTableAction::ForceRls(ForceRls { syntax }),
28971 SyntaxKind::INHERIT_TABLE => AlterTableAction::InheritTable(InheritTable { syntax }),
28972 SyntaxKind::MERGE_PARTITIONS => {
28973 AlterTableAction::MergePartitions(MergePartitions { syntax })
28974 }
28975 SyntaxKind::NO_FORCE_RLS => AlterTableAction::NoForceRls(NoForceRls { syntax }),
28976 SyntaxKind::NO_INHERIT_TABLE => {
28977 AlterTableAction::NoInheritTable(NoInheritTable { syntax })
28978 }
28979 SyntaxKind::NOT_OF => AlterTableAction::NotOf(NotOf { syntax }),
28980 SyntaxKind::OF_TYPE => AlterTableAction::OfType(OfType { syntax }),
28981 SyntaxKind::OPTION_ITEM_LIST => {
28982 AlterTableAction::OptionItemList(OptionItemList { syntax })
28983 }
28984 SyntaxKind::OWNER_TO => AlterTableAction::OwnerTo(OwnerTo { syntax }),
28985 SyntaxKind::RENAME_COLUMN => AlterTableAction::RenameColumn(RenameColumn { syntax }),
28986 SyntaxKind::RENAME_CONSTRAINT => {
28987 AlterTableAction::RenameConstraint(RenameConstraint { syntax })
28988 }
28989 SyntaxKind::RENAME_TO => AlterTableAction::RenameTo(RenameTo { syntax }),
28990 SyntaxKind::REPLICA_IDENTITY => {
28991 AlterTableAction::ReplicaIdentity(ReplicaIdentity { syntax })
28992 }
28993 SyntaxKind::RESET_OPTIONS => AlterTableAction::ResetOptions(ResetOptions { syntax }),
28994 SyntaxKind::SET_ACCESS_METHOD => {
28995 AlterTableAction::SetAccessMethod(SetAccessMethod { syntax })
28996 }
28997 SyntaxKind::SET_LOGGED => AlterTableAction::SetLogged(SetLogged { syntax }),
28998 SyntaxKind::SET_OPTIONS => AlterTableAction::SetOptions(SetOptions { syntax }),
28999 SyntaxKind::SET_SCHEMA => AlterTableAction::SetSchema(SetSchema { syntax }),
29000 SyntaxKind::SET_TABLESPACE => AlterTableAction::SetTablespace(SetTablespace { syntax }),
29001 SyntaxKind::SET_UNLOGGED => AlterTableAction::SetUnlogged(SetUnlogged { syntax }),
29002 SyntaxKind::SET_WITHOUT_CLUSTER => {
29003 AlterTableAction::SetWithoutCluster(SetWithoutCluster { syntax })
29004 }
29005 SyntaxKind::SET_WITHOUT_OIDS => {
29006 AlterTableAction::SetWithoutOids(SetWithoutOids { syntax })
29007 }
29008 SyntaxKind::SPLIT_PARTITION => {
29009 AlterTableAction::SplitPartition(SplitPartition { syntax })
29010 }
29011 SyntaxKind::VALIDATE_CONSTRAINT => {
29012 AlterTableAction::ValidateConstraint(ValidateConstraint { syntax })
29013 }
29014 _ => {
29015 return None;
29016 }
29017 };
29018 Some(res)
29019 }
29020 #[inline]
29021 fn syntax(&self) -> &SyntaxNode {
29022 match self {
29023 AlterTableAction::AddColumn(it) => &it.syntax,
29024 AlterTableAction::AddConstraint(it) => &it.syntax,
29025 AlterTableAction::AlterColumn(it) => &it.syntax,
29026 AlterTableAction::AlterConstraint(it) => &it.syntax,
29027 AlterTableAction::AttachPartition(it) => &it.syntax,
29028 AlterTableAction::ClusterOn(it) => &it.syntax,
29029 AlterTableAction::DetachPartition(it) => &it.syntax,
29030 AlterTableAction::DisableRls(it) => &it.syntax,
29031 AlterTableAction::DisableRule(it) => &it.syntax,
29032 AlterTableAction::DisableTrigger(it) => &it.syntax,
29033 AlterTableAction::DropColumn(it) => &it.syntax,
29034 AlterTableAction::DropConstraint(it) => &it.syntax,
29035 AlterTableAction::EnableAlwaysRule(it) => &it.syntax,
29036 AlterTableAction::EnableAlwaysTrigger(it) => &it.syntax,
29037 AlterTableAction::EnableReplicaRule(it) => &it.syntax,
29038 AlterTableAction::EnableReplicaTrigger(it) => &it.syntax,
29039 AlterTableAction::EnableRls(it) => &it.syntax,
29040 AlterTableAction::EnableRule(it) => &it.syntax,
29041 AlterTableAction::EnableTrigger(it) => &it.syntax,
29042 AlterTableAction::ForceRls(it) => &it.syntax,
29043 AlterTableAction::InheritTable(it) => &it.syntax,
29044 AlterTableAction::MergePartitions(it) => &it.syntax,
29045 AlterTableAction::NoForceRls(it) => &it.syntax,
29046 AlterTableAction::NoInheritTable(it) => &it.syntax,
29047 AlterTableAction::NotOf(it) => &it.syntax,
29048 AlterTableAction::OfType(it) => &it.syntax,
29049 AlterTableAction::OptionItemList(it) => &it.syntax,
29050 AlterTableAction::OwnerTo(it) => &it.syntax,
29051 AlterTableAction::RenameColumn(it) => &it.syntax,
29052 AlterTableAction::RenameConstraint(it) => &it.syntax,
29053 AlterTableAction::RenameTo(it) => &it.syntax,
29054 AlterTableAction::ReplicaIdentity(it) => &it.syntax,
29055 AlterTableAction::ResetOptions(it) => &it.syntax,
29056 AlterTableAction::SetAccessMethod(it) => &it.syntax,
29057 AlterTableAction::SetLogged(it) => &it.syntax,
29058 AlterTableAction::SetOptions(it) => &it.syntax,
29059 AlterTableAction::SetSchema(it) => &it.syntax,
29060 AlterTableAction::SetTablespace(it) => &it.syntax,
29061 AlterTableAction::SetUnlogged(it) => &it.syntax,
29062 AlterTableAction::SetWithoutCluster(it) => &it.syntax,
29063 AlterTableAction::SetWithoutOids(it) => &it.syntax,
29064 AlterTableAction::SplitPartition(it) => &it.syntax,
29065 AlterTableAction::ValidateConstraint(it) => &it.syntax,
29066 }
29067 }
29068}
29069impl From<AddColumn> for AlterTableAction {
29070 #[inline]
29071 fn from(node: AddColumn) -> AlterTableAction {
29072 AlterTableAction::AddColumn(node)
29073 }
29074}
29075impl From<AddConstraint> for AlterTableAction {
29076 #[inline]
29077 fn from(node: AddConstraint) -> AlterTableAction {
29078 AlterTableAction::AddConstraint(node)
29079 }
29080}
29081impl From<AlterColumn> for AlterTableAction {
29082 #[inline]
29083 fn from(node: AlterColumn) -> AlterTableAction {
29084 AlterTableAction::AlterColumn(node)
29085 }
29086}
29087impl From<AlterConstraint> for AlterTableAction {
29088 #[inline]
29089 fn from(node: AlterConstraint) -> AlterTableAction {
29090 AlterTableAction::AlterConstraint(node)
29091 }
29092}
29093impl From<AttachPartition> for AlterTableAction {
29094 #[inline]
29095 fn from(node: AttachPartition) -> AlterTableAction {
29096 AlterTableAction::AttachPartition(node)
29097 }
29098}
29099impl From<ClusterOn> for AlterTableAction {
29100 #[inline]
29101 fn from(node: ClusterOn) -> AlterTableAction {
29102 AlterTableAction::ClusterOn(node)
29103 }
29104}
29105impl From<DetachPartition> for AlterTableAction {
29106 #[inline]
29107 fn from(node: DetachPartition) -> AlterTableAction {
29108 AlterTableAction::DetachPartition(node)
29109 }
29110}
29111impl From<DisableRls> for AlterTableAction {
29112 #[inline]
29113 fn from(node: DisableRls) -> AlterTableAction {
29114 AlterTableAction::DisableRls(node)
29115 }
29116}
29117impl From<DisableRule> for AlterTableAction {
29118 #[inline]
29119 fn from(node: DisableRule) -> AlterTableAction {
29120 AlterTableAction::DisableRule(node)
29121 }
29122}
29123impl From<DisableTrigger> for AlterTableAction {
29124 #[inline]
29125 fn from(node: DisableTrigger) -> AlterTableAction {
29126 AlterTableAction::DisableTrigger(node)
29127 }
29128}
29129impl From<DropColumn> for AlterTableAction {
29130 #[inline]
29131 fn from(node: DropColumn) -> AlterTableAction {
29132 AlterTableAction::DropColumn(node)
29133 }
29134}
29135impl From<DropConstraint> for AlterTableAction {
29136 #[inline]
29137 fn from(node: DropConstraint) -> AlterTableAction {
29138 AlterTableAction::DropConstraint(node)
29139 }
29140}
29141impl From<EnableAlwaysRule> for AlterTableAction {
29142 #[inline]
29143 fn from(node: EnableAlwaysRule) -> AlterTableAction {
29144 AlterTableAction::EnableAlwaysRule(node)
29145 }
29146}
29147impl From<EnableAlwaysTrigger> for AlterTableAction {
29148 #[inline]
29149 fn from(node: EnableAlwaysTrigger) -> AlterTableAction {
29150 AlterTableAction::EnableAlwaysTrigger(node)
29151 }
29152}
29153impl From<EnableReplicaRule> for AlterTableAction {
29154 #[inline]
29155 fn from(node: EnableReplicaRule) -> AlterTableAction {
29156 AlterTableAction::EnableReplicaRule(node)
29157 }
29158}
29159impl From<EnableReplicaTrigger> for AlterTableAction {
29160 #[inline]
29161 fn from(node: EnableReplicaTrigger) -> AlterTableAction {
29162 AlterTableAction::EnableReplicaTrigger(node)
29163 }
29164}
29165impl From<EnableRls> for AlterTableAction {
29166 #[inline]
29167 fn from(node: EnableRls) -> AlterTableAction {
29168 AlterTableAction::EnableRls(node)
29169 }
29170}
29171impl From<EnableRule> for AlterTableAction {
29172 #[inline]
29173 fn from(node: EnableRule) -> AlterTableAction {
29174 AlterTableAction::EnableRule(node)
29175 }
29176}
29177impl From<EnableTrigger> for AlterTableAction {
29178 #[inline]
29179 fn from(node: EnableTrigger) -> AlterTableAction {
29180 AlterTableAction::EnableTrigger(node)
29181 }
29182}
29183impl From<ForceRls> for AlterTableAction {
29184 #[inline]
29185 fn from(node: ForceRls) -> AlterTableAction {
29186 AlterTableAction::ForceRls(node)
29187 }
29188}
29189impl From<InheritTable> for AlterTableAction {
29190 #[inline]
29191 fn from(node: InheritTable) -> AlterTableAction {
29192 AlterTableAction::InheritTable(node)
29193 }
29194}
29195impl From<MergePartitions> for AlterTableAction {
29196 #[inline]
29197 fn from(node: MergePartitions) -> AlterTableAction {
29198 AlterTableAction::MergePartitions(node)
29199 }
29200}
29201impl From<NoForceRls> for AlterTableAction {
29202 #[inline]
29203 fn from(node: NoForceRls) -> AlterTableAction {
29204 AlterTableAction::NoForceRls(node)
29205 }
29206}
29207impl From<NoInheritTable> for AlterTableAction {
29208 #[inline]
29209 fn from(node: NoInheritTable) -> AlterTableAction {
29210 AlterTableAction::NoInheritTable(node)
29211 }
29212}
29213impl From<NotOf> for AlterTableAction {
29214 #[inline]
29215 fn from(node: NotOf) -> AlterTableAction {
29216 AlterTableAction::NotOf(node)
29217 }
29218}
29219impl From<OfType> for AlterTableAction {
29220 #[inline]
29221 fn from(node: OfType) -> AlterTableAction {
29222 AlterTableAction::OfType(node)
29223 }
29224}
29225impl From<OptionItemList> for AlterTableAction {
29226 #[inline]
29227 fn from(node: OptionItemList) -> AlterTableAction {
29228 AlterTableAction::OptionItemList(node)
29229 }
29230}
29231impl From<OwnerTo> for AlterTableAction {
29232 #[inline]
29233 fn from(node: OwnerTo) -> AlterTableAction {
29234 AlterTableAction::OwnerTo(node)
29235 }
29236}
29237impl From<RenameColumn> for AlterTableAction {
29238 #[inline]
29239 fn from(node: RenameColumn) -> AlterTableAction {
29240 AlterTableAction::RenameColumn(node)
29241 }
29242}
29243impl From<RenameConstraint> for AlterTableAction {
29244 #[inline]
29245 fn from(node: RenameConstraint) -> AlterTableAction {
29246 AlterTableAction::RenameConstraint(node)
29247 }
29248}
29249impl From<RenameTo> for AlterTableAction {
29250 #[inline]
29251 fn from(node: RenameTo) -> AlterTableAction {
29252 AlterTableAction::RenameTo(node)
29253 }
29254}
29255impl From<ReplicaIdentity> for AlterTableAction {
29256 #[inline]
29257 fn from(node: ReplicaIdentity) -> AlterTableAction {
29258 AlterTableAction::ReplicaIdentity(node)
29259 }
29260}
29261impl From<ResetOptions> for AlterTableAction {
29262 #[inline]
29263 fn from(node: ResetOptions) -> AlterTableAction {
29264 AlterTableAction::ResetOptions(node)
29265 }
29266}
29267impl From<SetAccessMethod> for AlterTableAction {
29268 #[inline]
29269 fn from(node: SetAccessMethod) -> AlterTableAction {
29270 AlterTableAction::SetAccessMethod(node)
29271 }
29272}
29273impl From<SetLogged> for AlterTableAction {
29274 #[inline]
29275 fn from(node: SetLogged) -> AlterTableAction {
29276 AlterTableAction::SetLogged(node)
29277 }
29278}
29279impl From<SetOptions> for AlterTableAction {
29280 #[inline]
29281 fn from(node: SetOptions) -> AlterTableAction {
29282 AlterTableAction::SetOptions(node)
29283 }
29284}
29285impl From<SetSchema> for AlterTableAction {
29286 #[inline]
29287 fn from(node: SetSchema) -> AlterTableAction {
29288 AlterTableAction::SetSchema(node)
29289 }
29290}
29291impl From<SetTablespace> for AlterTableAction {
29292 #[inline]
29293 fn from(node: SetTablespace) -> AlterTableAction {
29294 AlterTableAction::SetTablespace(node)
29295 }
29296}
29297impl From<SetUnlogged> for AlterTableAction {
29298 #[inline]
29299 fn from(node: SetUnlogged) -> AlterTableAction {
29300 AlterTableAction::SetUnlogged(node)
29301 }
29302}
29303impl From<SetWithoutCluster> for AlterTableAction {
29304 #[inline]
29305 fn from(node: SetWithoutCluster) -> AlterTableAction {
29306 AlterTableAction::SetWithoutCluster(node)
29307 }
29308}
29309impl From<SetWithoutOids> for AlterTableAction {
29310 #[inline]
29311 fn from(node: SetWithoutOids) -> AlterTableAction {
29312 AlterTableAction::SetWithoutOids(node)
29313 }
29314}
29315impl From<SplitPartition> for AlterTableAction {
29316 #[inline]
29317 fn from(node: SplitPartition) -> AlterTableAction {
29318 AlterTableAction::SplitPartition(node)
29319 }
29320}
29321impl From<ValidateConstraint> for AlterTableAction {
29322 #[inline]
29323 fn from(node: ValidateConstraint) -> AlterTableAction {
29324 AlterTableAction::ValidateConstraint(node)
29325 }
29326}
29327impl AstNode for ColumnConstraint {
29328 #[inline]
29329 fn can_cast(kind: SyntaxKind) -> bool {
29330 matches!(
29331 kind,
29332 SyntaxKind::CHECK_CONSTRAINT
29333 | SyntaxKind::DEFAULT_CONSTRAINT
29334 | SyntaxKind::EXCLUDE_CONSTRAINT
29335 | SyntaxKind::NOT_NULL_CONSTRAINT
29336 | SyntaxKind::PRIMARY_KEY_CONSTRAINT
29337 | SyntaxKind::REFERENCES_CONSTRAINT
29338 | SyntaxKind::UNIQUE_CONSTRAINT
29339 )
29340 }
29341 #[inline]
29342 fn cast(syntax: SyntaxNode) -> Option<Self> {
29343 let res = match syntax.kind() {
29344 SyntaxKind::CHECK_CONSTRAINT => {
29345 ColumnConstraint::CheckConstraint(CheckConstraint { syntax })
29346 }
29347 SyntaxKind::DEFAULT_CONSTRAINT => {
29348 ColumnConstraint::DefaultConstraint(DefaultConstraint { syntax })
29349 }
29350 SyntaxKind::EXCLUDE_CONSTRAINT => {
29351 ColumnConstraint::ExcludeConstraint(ExcludeConstraint { syntax })
29352 }
29353 SyntaxKind::NOT_NULL_CONSTRAINT => {
29354 ColumnConstraint::NotNullConstraint(NotNullConstraint { syntax })
29355 }
29356 SyntaxKind::PRIMARY_KEY_CONSTRAINT => {
29357 ColumnConstraint::PrimaryKeyConstraint(PrimaryKeyConstraint { syntax })
29358 }
29359 SyntaxKind::REFERENCES_CONSTRAINT => {
29360 ColumnConstraint::ReferencesConstraint(ReferencesConstraint { syntax })
29361 }
29362 SyntaxKind::UNIQUE_CONSTRAINT => {
29363 ColumnConstraint::UniqueConstraint(UniqueConstraint { syntax })
29364 }
29365 _ => {
29366 return None;
29367 }
29368 };
29369 Some(res)
29370 }
29371 #[inline]
29372 fn syntax(&self) -> &SyntaxNode {
29373 match self {
29374 ColumnConstraint::CheckConstraint(it) => &it.syntax,
29375 ColumnConstraint::DefaultConstraint(it) => &it.syntax,
29376 ColumnConstraint::ExcludeConstraint(it) => &it.syntax,
29377 ColumnConstraint::NotNullConstraint(it) => &it.syntax,
29378 ColumnConstraint::PrimaryKeyConstraint(it) => &it.syntax,
29379 ColumnConstraint::ReferencesConstraint(it) => &it.syntax,
29380 ColumnConstraint::UniqueConstraint(it) => &it.syntax,
29381 }
29382 }
29383}
29384impl From<CheckConstraint> for ColumnConstraint {
29385 #[inline]
29386 fn from(node: CheckConstraint) -> ColumnConstraint {
29387 ColumnConstraint::CheckConstraint(node)
29388 }
29389}
29390impl From<DefaultConstraint> for ColumnConstraint {
29391 #[inline]
29392 fn from(node: DefaultConstraint) -> ColumnConstraint {
29393 ColumnConstraint::DefaultConstraint(node)
29394 }
29395}
29396impl From<ExcludeConstraint> for ColumnConstraint {
29397 #[inline]
29398 fn from(node: ExcludeConstraint) -> ColumnConstraint {
29399 ColumnConstraint::ExcludeConstraint(node)
29400 }
29401}
29402impl From<NotNullConstraint> for ColumnConstraint {
29403 #[inline]
29404 fn from(node: NotNullConstraint) -> ColumnConstraint {
29405 ColumnConstraint::NotNullConstraint(node)
29406 }
29407}
29408impl From<PrimaryKeyConstraint> for ColumnConstraint {
29409 #[inline]
29410 fn from(node: PrimaryKeyConstraint) -> ColumnConstraint {
29411 ColumnConstraint::PrimaryKeyConstraint(node)
29412 }
29413}
29414impl From<ReferencesConstraint> for ColumnConstraint {
29415 #[inline]
29416 fn from(node: ReferencesConstraint) -> ColumnConstraint {
29417 ColumnConstraint::ReferencesConstraint(node)
29418 }
29419}
29420impl From<UniqueConstraint> for ColumnConstraint {
29421 #[inline]
29422 fn from(node: UniqueConstraint) -> ColumnConstraint {
29423 ColumnConstraint::UniqueConstraint(node)
29424 }
29425}
29426impl AstNode for ConfigValue {
29427 #[inline]
29428 fn can_cast(kind: SyntaxKind) -> bool {
29429 matches!(kind, SyntaxKind::LITERAL | SyntaxKind::NAME_REF)
29430 }
29431 #[inline]
29432 fn cast(syntax: SyntaxNode) -> Option<Self> {
29433 let res = match syntax.kind() {
29434 SyntaxKind::LITERAL => ConfigValue::Literal(Literal { syntax }),
29435 SyntaxKind::NAME_REF => ConfigValue::NameRef(NameRef { syntax }),
29436 _ => {
29437 return None;
29438 }
29439 };
29440 Some(res)
29441 }
29442 #[inline]
29443 fn syntax(&self) -> &SyntaxNode {
29444 match self {
29445 ConfigValue::Literal(it) => &it.syntax,
29446 ConfigValue::NameRef(it) => &it.syntax,
29447 }
29448 }
29449}
29450impl From<Literal> for ConfigValue {
29451 #[inline]
29452 fn from(node: Literal) -> ConfigValue {
29453 ConfigValue::Literal(node)
29454 }
29455}
29456impl From<NameRef> for ConfigValue {
29457 #[inline]
29458 fn from(node: NameRef) -> ConfigValue {
29459 ConfigValue::NameRef(node)
29460 }
29461}
29462impl AstNode for ConflictAction {
29463 #[inline]
29464 fn can_cast(kind: SyntaxKind) -> bool {
29465 matches!(
29466 kind,
29467 SyntaxKind::CONFLICT_DO_NOTHING | SyntaxKind::CONFLICT_DO_UPDATE_SET
29468 )
29469 }
29470 #[inline]
29471 fn cast(syntax: SyntaxNode) -> Option<Self> {
29472 let res = match syntax.kind() {
29473 SyntaxKind::CONFLICT_DO_NOTHING => {
29474 ConflictAction::ConflictDoNothing(ConflictDoNothing { syntax })
29475 }
29476 SyntaxKind::CONFLICT_DO_UPDATE_SET => {
29477 ConflictAction::ConflictDoUpdateSet(ConflictDoUpdateSet { syntax })
29478 }
29479 _ => {
29480 return None;
29481 }
29482 };
29483 Some(res)
29484 }
29485 #[inline]
29486 fn syntax(&self) -> &SyntaxNode {
29487 match self {
29488 ConflictAction::ConflictDoNothing(it) => &it.syntax,
29489 ConflictAction::ConflictDoUpdateSet(it) => &it.syntax,
29490 }
29491 }
29492}
29493impl From<ConflictDoNothing> for ConflictAction {
29494 #[inline]
29495 fn from(node: ConflictDoNothing) -> ConflictAction {
29496 ConflictAction::ConflictDoNothing(node)
29497 }
29498}
29499impl From<ConflictDoUpdateSet> for ConflictAction {
29500 #[inline]
29501 fn from(node: ConflictDoUpdateSet) -> ConflictAction {
29502 ConflictAction::ConflictDoUpdateSet(node)
29503 }
29504}
29505impl AstNode for ConflictTarget {
29506 #[inline]
29507 fn can_cast(kind: SyntaxKind) -> bool {
29508 matches!(
29509 kind,
29510 SyntaxKind::CONFLICT_ON_CONSTRAINT | SyntaxKind::CONFLICT_ON_INDEX
29511 )
29512 }
29513 #[inline]
29514 fn cast(syntax: SyntaxNode) -> Option<Self> {
29515 let res = match syntax.kind() {
29516 SyntaxKind::CONFLICT_ON_CONSTRAINT => {
29517 ConflictTarget::ConflictOnConstraint(ConflictOnConstraint { syntax })
29518 }
29519 SyntaxKind::CONFLICT_ON_INDEX => {
29520 ConflictTarget::ConflictOnIndex(ConflictOnIndex { syntax })
29521 }
29522 _ => {
29523 return None;
29524 }
29525 };
29526 Some(res)
29527 }
29528 #[inline]
29529 fn syntax(&self) -> &SyntaxNode {
29530 match self {
29531 ConflictTarget::ConflictOnConstraint(it) => &it.syntax,
29532 ConflictTarget::ConflictOnIndex(it) => &it.syntax,
29533 }
29534 }
29535}
29536impl From<ConflictOnConstraint> for ConflictTarget {
29537 #[inline]
29538 fn from(node: ConflictOnConstraint) -> ConflictTarget {
29539 ConflictTarget::ConflictOnConstraint(node)
29540 }
29541}
29542impl From<ConflictOnIndex> for ConflictTarget {
29543 #[inline]
29544 fn from(node: ConflictOnIndex) -> ConflictTarget {
29545 ConflictTarget::ConflictOnIndex(node)
29546 }
29547}
29548impl AstNode for Constraint {
29549 #[inline]
29550 fn can_cast(kind: SyntaxKind) -> bool {
29551 matches!(
29552 kind,
29553 SyntaxKind::CHECK_CONSTRAINT
29554 | SyntaxKind::DEFAULT_CONSTRAINT
29555 | SyntaxKind::FOREIGN_KEY_CONSTRAINT
29556 | SyntaxKind::GENERATED_CONSTRAINT
29557 | SyntaxKind::NOT_NULL_CONSTRAINT
29558 | SyntaxKind::NULL_CONSTRAINT
29559 | SyntaxKind::PRIMARY_KEY_CONSTRAINT
29560 | SyntaxKind::REFERENCES_CONSTRAINT
29561 | SyntaxKind::UNIQUE_CONSTRAINT
29562 )
29563 }
29564 #[inline]
29565 fn cast(syntax: SyntaxNode) -> Option<Self> {
29566 let res = match syntax.kind() {
29567 SyntaxKind::CHECK_CONSTRAINT => Constraint::CheckConstraint(CheckConstraint { syntax }),
29568 SyntaxKind::DEFAULT_CONSTRAINT => {
29569 Constraint::DefaultConstraint(DefaultConstraint { syntax })
29570 }
29571 SyntaxKind::FOREIGN_KEY_CONSTRAINT => {
29572 Constraint::ForeignKeyConstraint(ForeignKeyConstraint { syntax })
29573 }
29574 SyntaxKind::GENERATED_CONSTRAINT => {
29575 Constraint::GeneratedConstraint(GeneratedConstraint { syntax })
29576 }
29577 SyntaxKind::NOT_NULL_CONSTRAINT => {
29578 Constraint::NotNullConstraint(NotNullConstraint { syntax })
29579 }
29580 SyntaxKind::NULL_CONSTRAINT => Constraint::NullConstraint(NullConstraint { syntax }),
29581 SyntaxKind::PRIMARY_KEY_CONSTRAINT => {
29582 Constraint::PrimaryKeyConstraint(PrimaryKeyConstraint { syntax })
29583 }
29584 SyntaxKind::REFERENCES_CONSTRAINT => {
29585 Constraint::ReferencesConstraint(ReferencesConstraint { syntax })
29586 }
29587 SyntaxKind::UNIQUE_CONSTRAINT => {
29588 Constraint::UniqueConstraint(UniqueConstraint { syntax })
29589 }
29590 _ => {
29591 return None;
29592 }
29593 };
29594 Some(res)
29595 }
29596 #[inline]
29597 fn syntax(&self) -> &SyntaxNode {
29598 match self {
29599 Constraint::CheckConstraint(it) => &it.syntax,
29600 Constraint::DefaultConstraint(it) => &it.syntax,
29601 Constraint::ForeignKeyConstraint(it) => &it.syntax,
29602 Constraint::GeneratedConstraint(it) => &it.syntax,
29603 Constraint::NotNullConstraint(it) => &it.syntax,
29604 Constraint::NullConstraint(it) => &it.syntax,
29605 Constraint::PrimaryKeyConstraint(it) => &it.syntax,
29606 Constraint::ReferencesConstraint(it) => &it.syntax,
29607 Constraint::UniqueConstraint(it) => &it.syntax,
29608 }
29609 }
29610}
29611impl From<CheckConstraint> for Constraint {
29612 #[inline]
29613 fn from(node: CheckConstraint) -> Constraint {
29614 Constraint::CheckConstraint(node)
29615 }
29616}
29617impl From<DefaultConstraint> for Constraint {
29618 #[inline]
29619 fn from(node: DefaultConstraint) -> Constraint {
29620 Constraint::DefaultConstraint(node)
29621 }
29622}
29623impl From<ForeignKeyConstraint> for Constraint {
29624 #[inline]
29625 fn from(node: ForeignKeyConstraint) -> Constraint {
29626 Constraint::ForeignKeyConstraint(node)
29627 }
29628}
29629impl From<GeneratedConstraint> for Constraint {
29630 #[inline]
29631 fn from(node: GeneratedConstraint) -> Constraint {
29632 Constraint::GeneratedConstraint(node)
29633 }
29634}
29635impl From<NotNullConstraint> for Constraint {
29636 #[inline]
29637 fn from(node: NotNullConstraint) -> Constraint {
29638 Constraint::NotNullConstraint(node)
29639 }
29640}
29641impl From<NullConstraint> for Constraint {
29642 #[inline]
29643 fn from(node: NullConstraint) -> Constraint {
29644 Constraint::NullConstraint(node)
29645 }
29646}
29647impl From<PrimaryKeyConstraint> for Constraint {
29648 #[inline]
29649 fn from(node: PrimaryKeyConstraint) -> Constraint {
29650 Constraint::PrimaryKeyConstraint(node)
29651 }
29652}
29653impl From<ReferencesConstraint> for Constraint {
29654 #[inline]
29655 fn from(node: ReferencesConstraint) -> Constraint {
29656 Constraint::ReferencesConstraint(node)
29657 }
29658}
29659impl From<UniqueConstraint> for Constraint {
29660 #[inline]
29661 fn from(node: UniqueConstraint) -> Constraint {
29662 Constraint::UniqueConstraint(node)
29663 }
29664}
29665impl AstNode for ExplainStmt {
29666 #[inline]
29667 fn can_cast(kind: SyntaxKind) -> bool {
29668 matches!(
29669 kind,
29670 SyntaxKind::COMPOUND_SELECT
29671 | SyntaxKind::CREATE_MATERIALIZED_VIEW
29672 | SyntaxKind::CREATE_TABLE_AS
29673 | SyntaxKind::DECLARE
29674 | SyntaxKind::DELETE
29675 | SyntaxKind::EXECUTE
29676 | SyntaxKind::INSERT
29677 | SyntaxKind::MERGE
29678 | SyntaxKind::PAREN_SELECT
29679 | SyntaxKind::SELECT
29680 | SyntaxKind::SELECT_INTO
29681 | SyntaxKind::TABLE
29682 | SyntaxKind::UPDATE
29683 | SyntaxKind::VALUES
29684 )
29685 }
29686 #[inline]
29687 fn cast(syntax: SyntaxNode) -> Option<Self> {
29688 let res = match syntax.kind() {
29689 SyntaxKind::COMPOUND_SELECT => ExplainStmt::CompoundSelect(CompoundSelect { syntax }),
29690 SyntaxKind::CREATE_MATERIALIZED_VIEW => {
29691 ExplainStmt::CreateMaterializedView(CreateMaterializedView { syntax })
29692 }
29693 SyntaxKind::CREATE_TABLE_AS => ExplainStmt::CreateTableAs(CreateTableAs { syntax }),
29694 SyntaxKind::DECLARE => ExplainStmt::Declare(Declare { syntax }),
29695 SyntaxKind::DELETE => ExplainStmt::Delete(Delete { syntax }),
29696 SyntaxKind::EXECUTE => ExplainStmt::Execute(Execute { syntax }),
29697 SyntaxKind::INSERT => ExplainStmt::Insert(Insert { syntax }),
29698 SyntaxKind::MERGE => ExplainStmt::Merge(Merge { syntax }),
29699 SyntaxKind::PAREN_SELECT => ExplainStmt::ParenSelect(ParenSelect { syntax }),
29700 SyntaxKind::SELECT => ExplainStmt::Select(Select { syntax }),
29701 SyntaxKind::SELECT_INTO => ExplainStmt::SelectInto(SelectInto { syntax }),
29702 SyntaxKind::TABLE => ExplainStmt::Table(Table { syntax }),
29703 SyntaxKind::UPDATE => ExplainStmt::Update(Update { syntax }),
29704 SyntaxKind::VALUES => ExplainStmt::Values(Values { syntax }),
29705 _ => {
29706 return None;
29707 }
29708 };
29709 Some(res)
29710 }
29711 #[inline]
29712 fn syntax(&self) -> &SyntaxNode {
29713 match self {
29714 ExplainStmt::CompoundSelect(it) => &it.syntax,
29715 ExplainStmt::CreateMaterializedView(it) => &it.syntax,
29716 ExplainStmt::CreateTableAs(it) => &it.syntax,
29717 ExplainStmt::Declare(it) => &it.syntax,
29718 ExplainStmt::Delete(it) => &it.syntax,
29719 ExplainStmt::Execute(it) => &it.syntax,
29720 ExplainStmt::Insert(it) => &it.syntax,
29721 ExplainStmt::Merge(it) => &it.syntax,
29722 ExplainStmt::ParenSelect(it) => &it.syntax,
29723 ExplainStmt::Select(it) => &it.syntax,
29724 ExplainStmt::SelectInto(it) => &it.syntax,
29725 ExplainStmt::Table(it) => &it.syntax,
29726 ExplainStmt::Update(it) => &it.syntax,
29727 ExplainStmt::Values(it) => &it.syntax,
29728 }
29729 }
29730}
29731impl From<CompoundSelect> for ExplainStmt {
29732 #[inline]
29733 fn from(node: CompoundSelect) -> ExplainStmt {
29734 ExplainStmt::CompoundSelect(node)
29735 }
29736}
29737impl From<CreateMaterializedView> for ExplainStmt {
29738 #[inline]
29739 fn from(node: CreateMaterializedView) -> ExplainStmt {
29740 ExplainStmt::CreateMaterializedView(node)
29741 }
29742}
29743impl From<CreateTableAs> for ExplainStmt {
29744 #[inline]
29745 fn from(node: CreateTableAs) -> ExplainStmt {
29746 ExplainStmt::CreateTableAs(node)
29747 }
29748}
29749impl From<Declare> for ExplainStmt {
29750 #[inline]
29751 fn from(node: Declare) -> ExplainStmt {
29752 ExplainStmt::Declare(node)
29753 }
29754}
29755impl From<Delete> for ExplainStmt {
29756 #[inline]
29757 fn from(node: Delete) -> ExplainStmt {
29758 ExplainStmt::Delete(node)
29759 }
29760}
29761impl From<Execute> for ExplainStmt {
29762 #[inline]
29763 fn from(node: Execute) -> ExplainStmt {
29764 ExplainStmt::Execute(node)
29765 }
29766}
29767impl From<Insert> for ExplainStmt {
29768 #[inline]
29769 fn from(node: Insert) -> ExplainStmt {
29770 ExplainStmt::Insert(node)
29771 }
29772}
29773impl From<Merge> for ExplainStmt {
29774 #[inline]
29775 fn from(node: Merge) -> ExplainStmt {
29776 ExplainStmt::Merge(node)
29777 }
29778}
29779impl From<ParenSelect> for ExplainStmt {
29780 #[inline]
29781 fn from(node: ParenSelect) -> ExplainStmt {
29782 ExplainStmt::ParenSelect(node)
29783 }
29784}
29785impl From<Select> for ExplainStmt {
29786 #[inline]
29787 fn from(node: Select) -> ExplainStmt {
29788 ExplainStmt::Select(node)
29789 }
29790}
29791impl From<SelectInto> for ExplainStmt {
29792 #[inline]
29793 fn from(node: SelectInto) -> ExplainStmt {
29794 ExplainStmt::SelectInto(node)
29795 }
29796}
29797impl From<Table> for ExplainStmt {
29798 #[inline]
29799 fn from(node: Table) -> ExplainStmt {
29800 ExplainStmt::Table(node)
29801 }
29802}
29803impl From<Update> for ExplainStmt {
29804 #[inline]
29805 fn from(node: Update) -> ExplainStmt {
29806 ExplainStmt::Update(node)
29807 }
29808}
29809impl From<Values> for ExplainStmt {
29810 #[inline]
29811 fn from(node: Values) -> ExplainStmt {
29812 ExplainStmt::Values(node)
29813 }
29814}
29815impl AstNode for Expr {
29816 #[inline]
29817 fn can_cast(kind: SyntaxKind) -> bool {
29818 matches!(
29819 kind,
29820 SyntaxKind::ARRAY_EXPR
29821 | SyntaxKind::BETWEEN_EXPR
29822 | SyntaxKind::BIN_EXPR
29823 | SyntaxKind::CALL_EXPR
29824 | SyntaxKind::CASE_EXPR
29825 | SyntaxKind::CAST_EXPR
29826 | SyntaxKind::FIELD_EXPR
29827 | SyntaxKind::INDEX_EXPR
29828 | SyntaxKind::LITERAL
29829 | SyntaxKind::NAME_REF
29830 | SyntaxKind::PAREN_EXPR
29831 | SyntaxKind::POSTFIX_EXPR
29832 | SyntaxKind::PREFIX_EXPR
29833 | SyntaxKind::SLICE_EXPR
29834 | SyntaxKind::TUPLE_EXPR
29835 )
29836 }
29837 #[inline]
29838 fn cast(syntax: SyntaxNode) -> Option<Self> {
29839 let res = match syntax.kind() {
29840 SyntaxKind::ARRAY_EXPR => Expr::ArrayExpr(ArrayExpr { syntax }),
29841 SyntaxKind::BETWEEN_EXPR => Expr::BetweenExpr(BetweenExpr { syntax }),
29842 SyntaxKind::BIN_EXPR => Expr::BinExpr(BinExpr { syntax }),
29843 SyntaxKind::CALL_EXPR => Expr::CallExpr(CallExpr { syntax }),
29844 SyntaxKind::CASE_EXPR => Expr::CaseExpr(CaseExpr { syntax }),
29845 SyntaxKind::CAST_EXPR => Expr::CastExpr(CastExpr { syntax }),
29846 SyntaxKind::FIELD_EXPR => Expr::FieldExpr(FieldExpr { syntax }),
29847 SyntaxKind::INDEX_EXPR => Expr::IndexExpr(IndexExpr { syntax }),
29848 SyntaxKind::LITERAL => Expr::Literal(Literal { syntax }),
29849 SyntaxKind::NAME_REF => Expr::NameRef(NameRef { syntax }),
29850 SyntaxKind::PAREN_EXPR => Expr::ParenExpr(ParenExpr { syntax }),
29851 SyntaxKind::POSTFIX_EXPR => Expr::PostfixExpr(PostfixExpr { syntax }),
29852 SyntaxKind::PREFIX_EXPR => Expr::PrefixExpr(PrefixExpr { syntax }),
29853 SyntaxKind::SLICE_EXPR => Expr::SliceExpr(SliceExpr { syntax }),
29854 SyntaxKind::TUPLE_EXPR => Expr::TupleExpr(TupleExpr { syntax }),
29855 _ => {
29856 return None;
29857 }
29858 };
29859 Some(res)
29860 }
29861 #[inline]
29862 fn syntax(&self) -> &SyntaxNode {
29863 match self {
29864 Expr::ArrayExpr(it) => &it.syntax,
29865 Expr::BetweenExpr(it) => &it.syntax,
29866 Expr::BinExpr(it) => &it.syntax,
29867 Expr::CallExpr(it) => &it.syntax,
29868 Expr::CaseExpr(it) => &it.syntax,
29869 Expr::CastExpr(it) => &it.syntax,
29870 Expr::FieldExpr(it) => &it.syntax,
29871 Expr::IndexExpr(it) => &it.syntax,
29872 Expr::Literal(it) => &it.syntax,
29873 Expr::NameRef(it) => &it.syntax,
29874 Expr::ParenExpr(it) => &it.syntax,
29875 Expr::PostfixExpr(it) => &it.syntax,
29876 Expr::PrefixExpr(it) => &it.syntax,
29877 Expr::SliceExpr(it) => &it.syntax,
29878 Expr::TupleExpr(it) => &it.syntax,
29879 }
29880 }
29881}
29882impl From<ArrayExpr> for Expr {
29883 #[inline]
29884 fn from(node: ArrayExpr) -> Expr {
29885 Expr::ArrayExpr(node)
29886 }
29887}
29888impl From<BetweenExpr> for Expr {
29889 #[inline]
29890 fn from(node: BetweenExpr) -> Expr {
29891 Expr::BetweenExpr(node)
29892 }
29893}
29894impl From<BinExpr> for Expr {
29895 #[inline]
29896 fn from(node: BinExpr) -> Expr {
29897 Expr::BinExpr(node)
29898 }
29899}
29900impl From<CallExpr> for Expr {
29901 #[inline]
29902 fn from(node: CallExpr) -> Expr {
29903 Expr::CallExpr(node)
29904 }
29905}
29906impl From<CaseExpr> for Expr {
29907 #[inline]
29908 fn from(node: CaseExpr) -> Expr {
29909 Expr::CaseExpr(node)
29910 }
29911}
29912impl From<CastExpr> for Expr {
29913 #[inline]
29914 fn from(node: CastExpr) -> Expr {
29915 Expr::CastExpr(node)
29916 }
29917}
29918impl From<FieldExpr> for Expr {
29919 #[inline]
29920 fn from(node: FieldExpr) -> Expr {
29921 Expr::FieldExpr(node)
29922 }
29923}
29924impl From<IndexExpr> for Expr {
29925 #[inline]
29926 fn from(node: IndexExpr) -> Expr {
29927 Expr::IndexExpr(node)
29928 }
29929}
29930impl From<Literal> for Expr {
29931 #[inline]
29932 fn from(node: Literal) -> Expr {
29933 Expr::Literal(node)
29934 }
29935}
29936impl From<NameRef> for Expr {
29937 #[inline]
29938 fn from(node: NameRef) -> Expr {
29939 Expr::NameRef(node)
29940 }
29941}
29942impl From<ParenExpr> for Expr {
29943 #[inline]
29944 fn from(node: ParenExpr) -> Expr {
29945 Expr::ParenExpr(node)
29946 }
29947}
29948impl From<PostfixExpr> for Expr {
29949 #[inline]
29950 fn from(node: PostfixExpr) -> Expr {
29951 Expr::PostfixExpr(node)
29952 }
29953}
29954impl From<PrefixExpr> for Expr {
29955 #[inline]
29956 fn from(node: PrefixExpr) -> Expr {
29957 Expr::PrefixExpr(node)
29958 }
29959}
29960impl From<SliceExpr> for Expr {
29961 #[inline]
29962 fn from(node: SliceExpr) -> Expr {
29963 Expr::SliceExpr(node)
29964 }
29965}
29966impl From<TupleExpr> for Expr {
29967 #[inline]
29968 fn from(node: TupleExpr) -> Expr {
29969 Expr::TupleExpr(node)
29970 }
29971}
29972impl AstNode for FuncOption {
29973 #[inline]
29974 fn can_cast(kind: SyntaxKind) -> bool {
29975 matches!(
29976 kind,
29977 SyntaxKind::AS_FUNC_OPTION
29978 | SyntaxKind::BEGIN_FUNC_OPTION_LIST
29979 | SyntaxKind::COST_FUNC_OPTION
29980 | SyntaxKind::LANGUAGE_FUNC_OPTION
29981 | SyntaxKind::LEAKPROOF_FUNC_OPTION
29982 | SyntaxKind::PARALLEL_FUNC_OPTION
29983 | SyntaxKind::RESET_FUNC_OPTION
29984 | SyntaxKind::RETURN_FUNC_OPTION
29985 | SyntaxKind::ROWS_FUNC_OPTION
29986 | SyntaxKind::SECURITY_FUNC_OPTION
29987 | SyntaxKind::SET_FUNC_OPTION
29988 | SyntaxKind::STRICT_FUNC_OPTION
29989 | SyntaxKind::SUPPORT_FUNC_OPTION
29990 | SyntaxKind::TRANSFORM_FUNC_OPTION
29991 | SyntaxKind::VOLATILITY_FUNC_OPTION
29992 | SyntaxKind::WINDOW_FUNC_OPTION
29993 )
29994 }
29995 #[inline]
29996 fn cast(syntax: SyntaxNode) -> Option<Self> {
29997 let res = match syntax.kind() {
29998 SyntaxKind::AS_FUNC_OPTION => FuncOption::AsFuncOption(AsFuncOption { syntax }),
29999 SyntaxKind::BEGIN_FUNC_OPTION_LIST => {
30000 FuncOption::BeginFuncOptionList(BeginFuncOptionList { syntax })
30001 }
30002 SyntaxKind::COST_FUNC_OPTION => FuncOption::CostFuncOption(CostFuncOption { syntax }),
30003 SyntaxKind::LANGUAGE_FUNC_OPTION => {
30004 FuncOption::LanguageFuncOption(LanguageFuncOption { syntax })
30005 }
30006 SyntaxKind::LEAKPROOF_FUNC_OPTION => {
30007 FuncOption::LeakproofFuncOption(LeakproofFuncOption { syntax })
30008 }
30009 SyntaxKind::PARALLEL_FUNC_OPTION => {
30010 FuncOption::ParallelFuncOption(ParallelFuncOption { syntax })
30011 }
30012 SyntaxKind::RESET_FUNC_OPTION => {
30013 FuncOption::ResetFuncOption(ResetFuncOption { syntax })
30014 }
30015 SyntaxKind::RETURN_FUNC_OPTION => {
30016 FuncOption::ReturnFuncOption(ReturnFuncOption { syntax })
30017 }
30018 SyntaxKind::ROWS_FUNC_OPTION => FuncOption::RowsFuncOption(RowsFuncOption { syntax }),
30019 SyntaxKind::SECURITY_FUNC_OPTION => {
30020 FuncOption::SecurityFuncOption(SecurityFuncOption { syntax })
30021 }
30022 SyntaxKind::SET_FUNC_OPTION => FuncOption::SetFuncOption(SetFuncOption { syntax }),
30023 SyntaxKind::STRICT_FUNC_OPTION => {
30024 FuncOption::StrictFuncOption(StrictFuncOption { syntax })
30025 }
30026 SyntaxKind::SUPPORT_FUNC_OPTION => {
30027 FuncOption::SupportFuncOption(SupportFuncOption { syntax })
30028 }
30029 SyntaxKind::TRANSFORM_FUNC_OPTION => {
30030 FuncOption::TransformFuncOption(TransformFuncOption { syntax })
30031 }
30032 SyntaxKind::VOLATILITY_FUNC_OPTION => {
30033 FuncOption::VolatilityFuncOption(VolatilityFuncOption { syntax })
30034 }
30035 SyntaxKind::WINDOW_FUNC_OPTION => {
30036 FuncOption::WindowFuncOption(WindowFuncOption { syntax })
30037 }
30038 _ => {
30039 return None;
30040 }
30041 };
30042 Some(res)
30043 }
30044 #[inline]
30045 fn syntax(&self) -> &SyntaxNode {
30046 match self {
30047 FuncOption::AsFuncOption(it) => &it.syntax,
30048 FuncOption::BeginFuncOptionList(it) => &it.syntax,
30049 FuncOption::CostFuncOption(it) => &it.syntax,
30050 FuncOption::LanguageFuncOption(it) => &it.syntax,
30051 FuncOption::LeakproofFuncOption(it) => &it.syntax,
30052 FuncOption::ParallelFuncOption(it) => &it.syntax,
30053 FuncOption::ResetFuncOption(it) => &it.syntax,
30054 FuncOption::ReturnFuncOption(it) => &it.syntax,
30055 FuncOption::RowsFuncOption(it) => &it.syntax,
30056 FuncOption::SecurityFuncOption(it) => &it.syntax,
30057 FuncOption::SetFuncOption(it) => &it.syntax,
30058 FuncOption::StrictFuncOption(it) => &it.syntax,
30059 FuncOption::SupportFuncOption(it) => &it.syntax,
30060 FuncOption::TransformFuncOption(it) => &it.syntax,
30061 FuncOption::VolatilityFuncOption(it) => &it.syntax,
30062 FuncOption::WindowFuncOption(it) => &it.syntax,
30063 }
30064 }
30065}
30066impl From<AsFuncOption> for FuncOption {
30067 #[inline]
30068 fn from(node: AsFuncOption) -> FuncOption {
30069 FuncOption::AsFuncOption(node)
30070 }
30071}
30072impl From<BeginFuncOptionList> for FuncOption {
30073 #[inline]
30074 fn from(node: BeginFuncOptionList) -> FuncOption {
30075 FuncOption::BeginFuncOptionList(node)
30076 }
30077}
30078impl From<CostFuncOption> for FuncOption {
30079 #[inline]
30080 fn from(node: CostFuncOption) -> FuncOption {
30081 FuncOption::CostFuncOption(node)
30082 }
30083}
30084impl From<LanguageFuncOption> for FuncOption {
30085 #[inline]
30086 fn from(node: LanguageFuncOption) -> FuncOption {
30087 FuncOption::LanguageFuncOption(node)
30088 }
30089}
30090impl From<LeakproofFuncOption> for FuncOption {
30091 #[inline]
30092 fn from(node: LeakproofFuncOption) -> FuncOption {
30093 FuncOption::LeakproofFuncOption(node)
30094 }
30095}
30096impl From<ParallelFuncOption> for FuncOption {
30097 #[inline]
30098 fn from(node: ParallelFuncOption) -> FuncOption {
30099 FuncOption::ParallelFuncOption(node)
30100 }
30101}
30102impl From<ResetFuncOption> for FuncOption {
30103 #[inline]
30104 fn from(node: ResetFuncOption) -> FuncOption {
30105 FuncOption::ResetFuncOption(node)
30106 }
30107}
30108impl From<ReturnFuncOption> for FuncOption {
30109 #[inline]
30110 fn from(node: ReturnFuncOption) -> FuncOption {
30111 FuncOption::ReturnFuncOption(node)
30112 }
30113}
30114impl From<RowsFuncOption> for FuncOption {
30115 #[inline]
30116 fn from(node: RowsFuncOption) -> FuncOption {
30117 FuncOption::RowsFuncOption(node)
30118 }
30119}
30120impl From<SecurityFuncOption> for FuncOption {
30121 #[inline]
30122 fn from(node: SecurityFuncOption) -> FuncOption {
30123 FuncOption::SecurityFuncOption(node)
30124 }
30125}
30126impl From<SetFuncOption> for FuncOption {
30127 #[inline]
30128 fn from(node: SetFuncOption) -> FuncOption {
30129 FuncOption::SetFuncOption(node)
30130 }
30131}
30132impl From<StrictFuncOption> for FuncOption {
30133 #[inline]
30134 fn from(node: StrictFuncOption) -> FuncOption {
30135 FuncOption::StrictFuncOption(node)
30136 }
30137}
30138impl From<SupportFuncOption> for FuncOption {
30139 #[inline]
30140 fn from(node: SupportFuncOption) -> FuncOption {
30141 FuncOption::SupportFuncOption(node)
30142 }
30143}
30144impl From<TransformFuncOption> for FuncOption {
30145 #[inline]
30146 fn from(node: TransformFuncOption) -> FuncOption {
30147 FuncOption::TransformFuncOption(node)
30148 }
30149}
30150impl From<VolatilityFuncOption> for FuncOption {
30151 #[inline]
30152 fn from(node: VolatilityFuncOption) -> FuncOption {
30153 FuncOption::VolatilityFuncOption(node)
30154 }
30155}
30156impl From<WindowFuncOption> for FuncOption {
30157 #[inline]
30158 fn from(node: WindowFuncOption) -> FuncOption {
30159 FuncOption::WindowFuncOption(node)
30160 }
30161}
30162impl AstNode for GroupBy {
30163 #[inline]
30164 fn can_cast(kind: SyntaxKind) -> bool {
30165 matches!(
30166 kind,
30167 SyntaxKind::GROUPING_CUBE
30168 | SyntaxKind::GROUPING_EXPR
30169 | SyntaxKind::GROUPING_ROLLUP
30170 | SyntaxKind::GROUPING_SETS
30171 )
30172 }
30173 #[inline]
30174 fn cast(syntax: SyntaxNode) -> Option<Self> {
30175 let res = match syntax.kind() {
30176 SyntaxKind::GROUPING_CUBE => GroupBy::GroupingCube(GroupingCube { syntax }),
30177 SyntaxKind::GROUPING_EXPR => GroupBy::GroupingExpr(GroupingExpr { syntax }),
30178 SyntaxKind::GROUPING_ROLLUP => GroupBy::GroupingRollup(GroupingRollup { syntax }),
30179 SyntaxKind::GROUPING_SETS => GroupBy::GroupingSets(GroupingSets { syntax }),
30180 _ => {
30181 return None;
30182 }
30183 };
30184 Some(res)
30185 }
30186 #[inline]
30187 fn syntax(&self) -> &SyntaxNode {
30188 match self {
30189 GroupBy::GroupingCube(it) => &it.syntax,
30190 GroupBy::GroupingExpr(it) => &it.syntax,
30191 GroupBy::GroupingRollup(it) => &it.syntax,
30192 GroupBy::GroupingSets(it) => &it.syntax,
30193 }
30194 }
30195}
30196impl From<GroupingCube> for GroupBy {
30197 #[inline]
30198 fn from(node: GroupingCube) -> GroupBy {
30199 GroupBy::GroupingCube(node)
30200 }
30201}
30202impl From<GroupingExpr> for GroupBy {
30203 #[inline]
30204 fn from(node: GroupingExpr) -> GroupBy {
30205 GroupBy::GroupingExpr(node)
30206 }
30207}
30208impl From<GroupingRollup> for GroupBy {
30209 #[inline]
30210 fn from(node: GroupingRollup) -> GroupBy {
30211 GroupBy::GroupingRollup(node)
30212 }
30213}
30214impl From<GroupingSets> for GroupBy {
30215 #[inline]
30216 fn from(node: GroupingSets) -> GroupBy {
30217 GroupBy::GroupingSets(node)
30218 }
30219}
30220impl AstNode for JoinType {
30221 #[inline]
30222 fn can_cast(kind: SyntaxKind) -> bool {
30223 matches!(
30224 kind,
30225 SyntaxKind::JOIN_CROSS
30226 | SyntaxKind::JOIN_FULL
30227 | SyntaxKind::JOIN_INNER
30228 | SyntaxKind::JOIN_LEFT
30229 | SyntaxKind::JOIN_RIGHT
30230 )
30231 }
30232 #[inline]
30233 fn cast(syntax: SyntaxNode) -> Option<Self> {
30234 let res = match syntax.kind() {
30235 SyntaxKind::JOIN_CROSS => JoinType::JoinCross(JoinCross { syntax }),
30236 SyntaxKind::JOIN_FULL => JoinType::JoinFull(JoinFull { syntax }),
30237 SyntaxKind::JOIN_INNER => JoinType::JoinInner(JoinInner { syntax }),
30238 SyntaxKind::JOIN_LEFT => JoinType::JoinLeft(JoinLeft { syntax }),
30239 SyntaxKind::JOIN_RIGHT => JoinType::JoinRight(JoinRight { syntax }),
30240 _ => {
30241 return None;
30242 }
30243 };
30244 Some(res)
30245 }
30246 #[inline]
30247 fn syntax(&self) -> &SyntaxNode {
30248 match self {
30249 JoinType::JoinCross(it) => &it.syntax,
30250 JoinType::JoinFull(it) => &it.syntax,
30251 JoinType::JoinInner(it) => &it.syntax,
30252 JoinType::JoinLeft(it) => &it.syntax,
30253 JoinType::JoinRight(it) => &it.syntax,
30254 }
30255 }
30256}
30257impl From<JoinCross> for JoinType {
30258 #[inline]
30259 fn from(node: JoinCross) -> JoinType {
30260 JoinType::JoinCross(node)
30261 }
30262}
30263impl From<JoinFull> for JoinType {
30264 #[inline]
30265 fn from(node: JoinFull) -> JoinType {
30266 JoinType::JoinFull(node)
30267 }
30268}
30269impl From<JoinInner> for JoinType {
30270 #[inline]
30271 fn from(node: JoinInner) -> JoinType {
30272 JoinType::JoinInner(node)
30273 }
30274}
30275impl From<JoinLeft> for JoinType {
30276 #[inline]
30277 fn from(node: JoinLeft) -> JoinType {
30278 JoinType::JoinLeft(node)
30279 }
30280}
30281impl From<JoinRight> for JoinType {
30282 #[inline]
30283 fn from(node: JoinRight) -> JoinType {
30284 JoinType::JoinRight(node)
30285 }
30286}
30287impl AstNode for JsonBehavior {
30288 #[inline]
30289 fn can_cast(kind: SyntaxKind) -> bool {
30290 matches!(
30291 kind,
30292 SyntaxKind::JSON_BEHAVIOR_DEFAULT
30293 | SyntaxKind::JSON_BEHAVIOR_EMPTY_ARRAY
30294 | SyntaxKind::JSON_BEHAVIOR_EMPTY_OBJECT
30295 | SyntaxKind::JSON_BEHAVIOR_ERROR
30296 | SyntaxKind::JSON_BEHAVIOR_FALSE
30297 | SyntaxKind::JSON_BEHAVIOR_NULL
30298 | SyntaxKind::JSON_BEHAVIOR_TRUE
30299 | SyntaxKind::JSON_BEHAVIOR_UNKNOWN
30300 )
30301 }
30302 #[inline]
30303 fn cast(syntax: SyntaxNode) -> Option<Self> {
30304 let res = match syntax.kind() {
30305 SyntaxKind::JSON_BEHAVIOR_DEFAULT => {
30306 JsonBehavior::JsonBehaviorDefault(JsonBehaviorDefault { syntax })
30307 }
30308 SyntaxKind::JSON_BEHAVIOR_EMPTY_ARRAY => {
30309 JsonBehavior::JsonBehaviorEmptyArray(JsonBehaviorEmptyArray { syntax })
30310 }
30311 SyntaxKind::JSON_BEHAVIOR_EMPTY_OBJECT => {
30312 JsonBehavior::JsonBehaviorEmptyObject(JsonBehaviorEmptyObject { syntax })
30313 }
30314 SyntaxKind::JSON_BEHAVIOR_ERROR => {
30315 JsonBehavior::JsonBehaviorError(JsonBehaviorError { syntax })
30316 }
30317 SyntaxKind::JSON_BEHAVIOR_FALSE => {
30318 JsonBehavior::JsonBehaviorFalse(JsonBehaviorFalse { syntax })
30319 }
30320 SyntaxKind::JSON_BEHAVIOR_NULL => {
30321 JsonBehavior::JsonBehaviorNull(JsonBehaviorNull { syntax })
30322 }
30323 SyntaxKind::JSON_BEHAVIOR_TRUE => {
30324 JsonBehavior::JsonBehaviorTrue(JsonBehaviorTrue { syntax })
30325 }
30326 SyntaxKind::JSON_BEHAVIOR_UNKNOWN => {
30327 JsonBehavior::JsonBehaviorUnknown(JsonBehaviorUnknown { syntax })
30328 }
30329 _ => {
30330 return None;
30331 }
30332 };
30333 Some(res)
30334 }
30335 #[inline]
30336 fn syntax(&self) -> &SyntaxNode {
30337 match self {
30338 JsonBehavior::JsonBehaviorDefault(it) => &it.syntax,
30339 JsonBehavior::JsonBehaviorEmptyArray(it) => &it.syntax,
30340 JsonBehavior::JsonBehaviorEmptyObject(it) => &it.syntax,
30341 JsonBehavior::JsonBehaviorError(it) => &it.syntax,
30342 JsonBehavior::JsonBehaviorFalse(it) => &it.syntax,
30343 JsonBehavior::JsonBehaviorNull(it) => &it.syntax,
30344 JsonBehavior::JsonBehaviorTrue(it) => &it.syntax,
30345 JsonBehavior::JsonBehaviorUnknown(it) => &it.syntax,
30346 }
30347 }
30348}
30349impl From<JsonBehaviorDefault> for JsonBehavior {
30350 #[inline]
30351 fn from(node: JsonBehaviorDefault) -> JsonBehavior {
30352 JsonBehavior::JsonBehaviorDefault(node)
30353 }
30354}
30355impl From<JsonBehaviorEmptyArray> for JsonBehavior {
30356 #[inline]
30357 fn from(node: JsonBehaviorEmptyArray) -> JsonBehavior {
30358 JsonBehavior::JsonBehaviorEmptyArray(node)
30359 }
30360}
30361impl From<JsonBehaviorEmptyObject> for JsonBehavior {
30362 #[inline]
30363 fn from(node: JsonBehaviorEmptyObject) -> JsonBehavior {
30364 JsonBehavior::JsonBehaviorEmptyObject(node)
30365 }
30366}
30367impl From<JsonBehaviorError> for JsonBehavior {
30368 #[inline]
30369 fn from(node: JsonBehaviorError) -> JsonBehavior {
30370 JsonBehavior::JsonBehaviorError(node)
30371 }
30372}
30373impl From<JsonBehaviorFalse> for JsonBehavior {
30374 #[inline]
30375 fn from(node: JsonBehaviorFalse) -> JsonBehavior {
30376 JsonBehavior::JsonBehaviorFalse(node)
30377 }
30378}
30379impl From<JsonBehaviorNull> for JsonBehavior {
30380 #[inline]
30381 fn from(node: JsonBehaviorNull) -> JsonBehavior {
30382 JsonBehavior::JsonBehaviorNull(node)
30383 }
30384}
30385impl From<JsonBehaviorTrue> for JsonBehavior {
30386 #[inline]
30387 fn from(node: JsonBehaviorTrue) -> JsonBehavior {
30388 JsonBehavior::JsonBehaviorTrue(node)
30389 }
30390}
30391impl From<JsonBehaviorUnknown> for JsonBehavior {
30392 #[inline]
30393 fn from(node: JsonBehaviorUnknown) -> JsonBehavior {
30394 JsonBehavior::JsonBehaviorUnknown(node)
30395 }
30396}
30397impl AstNode for MatchType {
30398 #[inline]
30399 fn can_cast(kind: SyntaxKind) -> bool {
30400 matches!(
30401 kind,
30402 SyntaxKind::MATCH_FULL | SyntaxKind::MATCH_PARTIAL | SyntaxKind::MATCH_SIMPLE
30403 )
30404 }
30405 #[inline]
30406 fn cast(syntax: SyntaxNode) -> Option<Self> {
30407 let res = match syntax.kind() {
30408 SyntaxKind::MATCH_FULL => MatchType::MatchFull(MatchFull { syntax }),
30409 SyntaxKind::MATCH_PARTIAL => MatchType::MatchPartial(MatchPartial { syntax }),
30410 SyntaxKind::MATCH_SIMPLE => MatchType::MatchSimple(MatchSimple { syntax }),
30411 _ => {
30412 return None;
30413 }
30414 };
30415 Some(res)
30416 }
30417 #[inline]
30418 fn syntax(&self) -> &SyntaxNode {
30419 match self {
30420 MatchType::MatchFull(it) => &it.syntax,
30421 MatchType::MatchPartial(it) => &it.syntax,
30422 MatchType::MatchSimple(it) => &it.syntax,
30423 }
30424 }
30425}
30426impl From<MatchFull> for MatchType {
30427 #[inline]
30428 fn from(node: MatchFull) -> MatchType {
30429 MatchType::MatchFull(node)
30430 }
30431}
30432impl From<MatchPartial> for MatchType {
30433 #[inline]
30434 fn from(node: MatchPartial) -> MatchType {
30435 MatchType::MatchPartial(node)
30436 }
30437}
30438impl From<MatchSimple> for MatchType {
30439 #[inline]
30440 fn from(node: MatchSimple) -> MatchType {
30441 MatchType::MatchSimple(node)
30442 }
30443}
30444impl AstNode for MergeAction {
30445 #[inline]
30446 fn can_cast(kind: SyntaxKind) -> bool {
30447 matches!(
30448 kind,
30449 SyntaxKind::MERGE_DELETE
30450 | SyntaxKind::MERGE_DO_NOTHING
30451 | SyntaxKind::MERGE_INSERT
30452 | SyntaxKind::MERGE_UPDATE
30453 )
30454 }
30455 #[inline]
30456 fn cast(syntax: SyntaxNode) -> Option<Self> {
30457 let res = match syntax.kind() {
30458 SyntaxKind::MERGE_DELETE => MergeAction::MergeDelete(MergeDelete { syntax }),
30459 SyntaxKind::MERGE_DO_NOTHING => MergeAction::MergeDoNothing(MergeDoNothing { syntax }),
30460 SyntaxKind::MERGE_INSERT => MergeAction::MergeInsert(MergeInsert { syntax }),
30461 SyntaxKind::MERGE_UPDATE => MergeAction::MergeUpdate(MergeUpdate { syntax }),
30462 _ => {
30463 return None;
30464 }
30465 };
30466 Some(res)
30467 }
30468 #[inline]
30469 fn syntax(&self) -> &SyntaxNode {
30470 match self {
30471 MergeAction::MergeDelete(it) => &it.syntax,
30472 MergeAction::MergeDoNothing(it) => &it.syntax,
30473 MergeAction::MergeInsert(it) => &it.syntax,
30474 MergeAction::MergeUpdate(it) => &it.syntax,
30475 }
30476 }
30477}
30478impl From<MergeDelete> for MergeAction {
30479 #[inline]
30480 fn from(node: MergeDelete) -> MergeAction {
30481 MergeAction::MergeDelete(node)
30482 }
30483}
30484impl From<MergeDoNothing> for MergeAction {
30485 #[inline]
30486 fn from(node: MergeDoNothing) -> MergeAction {
30487 MergeAction::MergeDoNothing(node)
30488 }
30489}
30490impl From<MergeInsert> for MergeAction {
30491 #[inline]
30492 fn from(node: MergeInsert) -> MergeAction {
30493 MergeAction::MergeInsert(node)
30494 }
30495}
30496impl From<MergeUpdate> for MergeAction {
30497 #[inline]
30498 fn from(node: MergeUpdate) -> MergeAction {
30499 MergeAction::MergeUpdate(node)
30500 }
30501}
30502impl AstNode for MergeWhenClause {
30503 #[inline]
30504 fn can_cast(kind: SyntaxKind) -> bool {
30505 matches!(
30506 kind,
30507 SyntaxKind::MERGE_WHEN_MATCHED
30508 | SyntaxKind::MERGE_WHEN_NOT_MATCHED_SOURCE
30509 | SyntaxKind::MERGE_WHEN_NOT_MATCHED_TARGET
30510 )
30511 }
30512 #[inline]
30513 fn cast(syntax: SyntaxNode) -> Option<Self> {
30514 let res = match syntax.kind() {
30515 SyntaxKind::MERGE_WHEN_MATCHED => {
30516 MergeWhenClause::MergeWhenMatched(MergeWhenMatched { syntax })
30517 }
30518 SyntaxKind::MERGE_WHEN_NOT_MATCHED_SOURCE => {
30519 MergeWhenClause::MergeWhenNotMatchedSource(MergeWhenNotMatchedSource { syntax })
30520 }
30521 SyntaxKind::MERGE_WHEN_NOT_MATCHED_TARGET => {
30522 MergeWhenClause::MergeWhenNotMatchedTarget(MergeWhenNotMatchedTarget { syntax })
30523 }
30524 _ => {
30525 return None;
30526 }
30527 };
30528 Some(res)
30529 }
30530 #[inline]
30531 fn syntax(&self) -> &SyntaxNode {
30532 match self {
30533 MergeWhenClause::MergeWhenMatched(it) => &it.syntax,
30534 MergeWhenClause::MergeWhenNotMatchedSource(it) => &it.syntax,
30535 MergeWhenClause::MergeWhenNotMatchedTarget(it) => &it.syntax,
30536 }
30537 }
30538}
30539impl From<MergeWhenMatched> for MergeWhenClause {
30540 #[inline]
30541 fn from(node: MergeWhenMatched) -> MergeWhenClause {
30542 MergeWhenClause::MergeWhenMatched(node)
30543 }
30544}
30545impl From<MergeWhenNotMatchedSource> for MergeWhenClause {
30546 #[inline]
30547 fn from(node: MergeWhenNotMatchedSource) -> MergeWhenClause {
30548 MergeWhenClause::MergeWhenNotMatchedSource(node)
30549 }
30550}
30551impl From<MergeWhenNotMatchedTarget> for MergeWhenClause {
30552 #[inline]
30553 fn from(node: MergeWhenNotMatchedTarget) -> MergeWhenClause {
30554 MergeWhenClause::MergeWhenNotMatchedTarget(node)
30555 }
30556}
30557impl AstNode for OnCommitAction {
30558 #[inline]
30559 fn can_cast(kind: SyntaxKind) -> bool {
30560 matches!(
30561 kind,
30562 SyntaxKind::DELETE_ROWS | SyntaxKind::DROP | SyntaxKind::PRESERVE_ROWS
30563 )
30564 }
30565 #[inline]
30566 fn cast(syntax: SyntaxNode) -> Option<Self> {
30567 let res = match syntax.kind() {
30568 SyntaxKind::DELETE_ROWS => OnCommitAction::DeleteRows(DeleteRows { syntax }),
30569 SyntaxKind::DROP => OnCommitAction::Drop(Drop { syntax }),
30570 SyntaxKind::PRESERVE_ROWS => OnCommitAction::PreserveRows(PreserveRows { syntax }),
30571 _ => {
30572 return None;
30573 }
30574 };
30575 Some(res)
30576 }
30577 #[inline]
30578 fn syntax(&self) -> &SyntaxNode {
30579 match self {
30580 OnCommitAction::DeleteRows(it) => &it.syntax,
30581 OnCommitAction::Drop(it) => &it.syntax,
30582 OnCommitAction::PreserveRows(it) => &it.syntax,
30583 }
30584 }
30585}
30586impl From<DeleteRows> for OnCommitAction {
30587 #[inline]
30588 fn from(node: DeleteRows) -> OnCommitAction {
30589 OnCommitAction::DeleteRows(node)
30590 }
30591}
30592impl From<Drop> for OnCommitAction {
30593 #[inline]
30594 fn from(node: Drop) -> OnCommitAction {
30595 OnCommitAction::Drop(node)
30596 }
30597}
30598impl From<PreserveRows> for OnCommitAction {
30599 #[inline]
30600 fn from(node: PreserveRows) -> OnCommitAction {
30601 OnCommitAction::PreserveRows(node)
30602 }
30603}
30604impl AstNode for ParamMode {
30605 #[inline]
30606 fn can_cast(kind: SyntaxKind) -> bool {
30607 matches!(
30608 kind,
30609 SyntaxKind::PARAM_IN
30610 | SyntaxKind::PARAM_IN_OUT
30611 | SyntaxKind::PARAM_OUT
30612 | SyntaxKind::PARAM_VARIADIC
30613 )
30614 }
30615 #[inline]
30616 fn cast(syntax: SyntaxNode) -> Option<Self> {
30617 let res = match syntax.kind() {
30618 SyntaxKind::PARAM_IN => ParamMode::ParamIn(ParamIn { syntax }),
30619 SyntaxKind::PARAM_IN_OUT => ParamMode::ParamInOut(ParamInOut { syntax }),
30620 SyntaxKind::PARAM_OUT => ParamMode::ParamOut(ParamOut { syntax }),
30621 SyntaxKind::PARAM_VARIADIC => ParamMode::ParamVariadic(ParamVariadic { syntax }),
30622 _ => {
30623 return None;
30624 }
30625 };
30626 Some(res)
30627 }
30628 #[inline]
30629 fn syntax(&self) -> &SyntaxNode {
30630 match self {
30631 ParamMode::ParamIn(it) => &it.syntax,
30632 ParamMode::ParamInOut(it) => &it.syntax,
30633 ParamMode::ParamOut(it) => &it.syntax,
30634 ParamMode::ParamVariadic(it) => &it.syntax,
30635 }
30636 }
30637}
30638impl From<ParamIn> for ParamMode {
30639 #[inline]
30640 fn from(node: ParamIn) -> ParamMode {
30641 ParamMode::ParamIn(node)
30642 }
30643}
30644impl From<ParamInOut> for ParamMode {
30645 #[inline]
30646 fn from(node: ParamInOut) -> ParamMode {
30647 ParamMode::ParamInOut(node)
30648 }
30649}
30650impl From<ParamOut> for ParamMode {
30651 #[inline]
30652 fn from(node: ParamOut) -> ParamMode {
30653 ParamMode::ParamOut(node)
30654 }
30655}
30656impl From<ParamVariadic> for ParamMode {
30657 #[inline]
30658 fn from(node: ParamVariadic) -> ParamMode {
30659 ParamMode::ParamVariadic(node)
30660 }
30661}
30662impl AstNode for PartitionType {
30663 #[inline]
30664 fn can_cast(kind: SyntaxKind) -> bool {
30665 matches!(
30666 kind,
30667 SyntaxKind::PARTITION_DEFAULT
30668 | SyntaxKind::PARTITION_FOR_VALUES_FROM
30669 | SyntaxKind::PARTITION_FOR_VALUES_IN
30670 | SyntaxKind::PARTITION_FOR_VALUES_WITH
30671 )
30672 }
30673 #[inline]
30674 fn cast(syntax: SyntaxNode) -> Option<Self> {
30675 let res = match syntax.kind() {
30676 SyntaxKind::PARTITION_DEFAULT => {
30677 PartitionType::PartitionDefault(PartitionDefault { syntax })
30678 }
30679 SyntaxKind::PARTITION_FOR_VALUES_FROM => {
30680 PartitionType::PartitionForValuesFrom(PartitionForValuesFrom { syntax })
30681 }
30682 SyntaxKind::PARTITION_FOR_VALUES_IN => {
30683 PartitionType::PartitionForValuesIn(PartitionForValuesIn { syntax })
30684 }
30685 SyntaxKind::PARTITION_FOR_VALUES_WITH => {
30686 PartitionType::PartitionForValuesWith(PartitionForValuesWith { syntax })
30687 }
30688 _ => {
30689 return None;
30690 }
30691 };
30692 Some(res)
30693 }
30694 #[inline]
30695 fn syntax(&self) -> &SyntaxNode {
30696 match self {
30697 PartitionType::PartitionDefault(it) => &it.syntax,
30698 PartitionType::PartitionForValuesFrom(it) => &it.syntax,
30699 PartitionType::PartitionForValuesIn(it) => &it.syntax,
30700 PartitionType::PartitionForValuesWith(it) => &it.syntax,
30701 }
30702 }
30703}
30704impl From<PartitionDefault> for PartitionType {
30705 #[inline]
30706 fn from(node: PartitionDefault) -> PartitionType {
30707 PartitionType::PartitionDefault(node)
30708 }
30709}
30710impl From<PartitionForValuesFrom> for PartitionType {
30711 #[inline]
30712 fn from(node: PartitionForValuesFrom) -> PartitionType {
30713 PartitionType::PartitionForValuesFrom(node)
30714 }
30715}
30716impl From<PartitionForValuesIn> for PartitionType {
30717 #[inline]
30718 fn from(node: PartitionForValuesIn) -> PartitionType {
30719 PartitionType::PartitionForValuesIn(node)
30720 }
30721}
30722impl From<PartitionForValuesWith> for PartitionType {
30723 #[inline]
30724 fn from(node: PartitionForValuesWith) -> PartitionType {
30725 PartitionType::PartitionForValuesWith(node)
30726 }
30727}
30728impl AstNode for PreparableStmt {
30729 #[inline]
30730 fn can_cast(kind: SyntaxKind) -> bool {
30731 matches!(
30732 kind,
30733 SyntaxKind::COMPOUND_SELECT
30734 | SyntaxKind::DELETE
30735 | SyntaxKind::INSERT
30736 | SyntaxKind::MERGE
30737 | SyntaxKind::SELECT
30738 | SyntaxKind::SELECT_INTO
30739 | SyntaxKind::TABLE
30740 | SyntaxKind::UPDATE
30741 | SyntaxKind::VALUES
30742 )
30743 }
30744 #[inline]
30745 fn cast(syntax: SyntaxNode) -> Option<Self> {
30746 let res = match syntax.kind() {
30747 SyntaxKind::COMPOUND_SELECT => {
30748 PreparableStmt::CompoundSelect(CompoundSelect { syntax })
30749 }
30750 SyntaxKind::DELETE => PreparableStmt::Delete(Delete { syntax }),
30751 SyntaxKind::INSERT => PreparableStmt::Insert(Insert { syntax }),
30752 SyntaxKind::MERGE => PreparableStmt::Merge(Merge { syntax }),
30753 SyntaxKind::SELECT => PreparableStmt::Select(Select { syntax }),
30754 SyntaxKind::SELECT_INTO => PreparableStmt::SelectInto(SelectInto { syntax }),
30755 SyntaxKind::TABLE => PreparableStmt::Table(Table { syntax }),
30756 SyntaxKind::UPDATE => PreparableStmt::Update(Update { syntax }),
30757 SyntaxKind::VALUES => PreparableStmt::Values(Values { syntax }),
30758 _ => {
30759 return None;
30760 }
30761 };
30762 Some(res)
30763 }
30764 #[inline]
30765 fn syntax(&self) -> &SyntaxNode {
30766 match self {
30767 PreparableStmt::CompoundSelect(it) => &it.syntax,
30768 PreparableStmt::Delete(it) => &it.syntax,
30769 PreparableStmt::Insert(it) => &it.syntax,
30770 PreparableStmt::Merge(it) => &it.syntax,
30771 PreparableStmt::Select(it) => &it.syntax,
30772 PreparableStmt::SelectInto(it) => &it.syntax,
30773 PreparableStmt::Table(it) => &it.syntax,
30774 PreparableStmt::Update(it) => &it.syntax,
30775 PreparableStmt::Values(it) => &it.syntax,
30776 }
30777 }
30778}
30779impl From<CompoundSelect> for PreparableStmt {
30780 #[inline]
30781 fn from(node: CompoundSelect) -> PreparableStmt {
30782 PreparableStmt::CompoundSelect(node)
30783 }
30784}
30785impl From<Delete> for PreparableStmt {
30786 #[inline]
30787 fn from(node: Delete) -> PreparableStmt {
30788 PreparableStmt::Delete(node)
30789 }
30790}
30791impl From<Insert> for PreparableStmt {
30792 #[inline]
30793 fn from(node: Insert) -> PreparableStmt {
30794 PreparableStmt::Insert(node)
30795 }
30796}
30797impl From<Merge> for PreparableStmt {
30798 #[inline]
30799 fn from(node: Merge) -> PreparableStmt {
30800 PreparableStmt::Merge(node)
30801 }
30802}
30803impl From<Select> for PreparableStmt {
30804 #[inline]
30805 fn from(node: Select) -> PreparableStmt {
30806 PreparableStmt::Select(node)
30807 }
30808}
30809impl From<SelectInto> for PreparableStmt {
30810 #[inline]
30811 fn from(node: SelectInto) -> PreparableStmt {
30812 PreparableStmt::SelectInto(node)
30813 }
30814}
30815impl From<Table> for PreparableStmt {
30816 #[inline]
30817 fn from(node: Table) -> PreparableStmt {
30818 PreparableStmt::Table(node)
30819 }
30820}
30821impl From<Update> for PreparableStmt {
30822 #[inline]
30823 fn from(node: Update) -> PreparableStmt {
30824 PreparableStmt::Update(node)
30825 }
30826}
30827impl From<Values> for PreparableStmt {
30828 #[inline]
30829 fn from(node: Values) -> PreparableStmt {
30830 PreparableStmt::Values(node)
30831 }
30832}
30833impl AstNode for RefAction {
30834 #[inline]
30835 fn can_cast(kind: SyntaxKind) -> bool {
30836 matches!(
30837 kind,
30838 SyntaxKind::CASCADE
30839 | SyntaxKind::NO_ACTION
30840 | SyntaxKind::RESTRICT
30841 | SyntaxKind::SET_DEFAULT_COLUMNS
30842 | SyntaxKind::SET_NULL_COLUMNS
30843 )
30844 }
30845 #[inline]
30846 fn cast(syntax: SyntaxNode) -> Option<Self> {
30847 let res = match syntax.kind() {
30848 SyntaxKind::CASCADE => RefAction::Cascade(Cascade { syntax }),
30849 SyntaxKind::NO_ACTION => RefAction::NoAction(NoAction { syntax }),
30850 SyntaxKind::RESTRICT => RefAction::Restrict(Restrict { syntax }),
30851 SyntaxKind::SET_DEFAULT_COLUMNS => {
30852 RefAction::SetDefaultColumns(SetDefaultColumns { syntax })
30853 }
30854 SyntaxKind::SET_NULL_COLUMNS => RefAction::SetNullColumns(SetNullColumns { syntax }),
30855 _ => {
30856 return None;
30857 }
30858 };
30859 Some(res)
30860 }
30861 #[inline]
30862 fn syntax(&self) -> &SyntaxNode {
30863 match self {
30864 RefAction::Cascade(it) => &it.syntax,
30865 RefAction::NoAction(it) => &it.syntax,
30866 RefAction::Restrict(it) => &it.syntax,
30867 RefAction::SetDefaultColumns(it) => &it.syntax,
30868 RefAction::SetNullColumns(it) => &it.syntax,
30869 }
30870 }
30871}
30872impl From<Cascade> for RefAction {
30873 #[inline]
30874 fn from(node: Cascade) -> RefAction {
30875 RefAction::Cascade(node)
30876 }
30877}
30878impl From<NoAction> for RefAction {
30879 #[inline]
30880 fn from(node: NoAction) -> RefAction {
30881 RefAction::NoAction(node)
30882 }
30883}
30884impl From<Restrict> for RefAction {
30885 #[inline]
30886 fn from(node: Restrict) -> RefAction {
30887 RefAction::Restrict(node)
30888 }
30889}
30890impl From<SetDefaultColumns> for RefAction {
30891 #[inline]
30892 fn from(node: SetDefaultColumns) -> RefAction {
30893 RefAction::SetDefaultColumns(node)
30894 }
30895}
30896impl From<SetNullColumns> for RefAction {
30897 #[inline]
30898 fn from(node: SetNullColumns) -> RefAction {
30899 RefAction::SetNullColumns(node)
30900 }
30901}
30902impl AstNode for SchemaElement {
30903 #[inline]
30904 fn can_cast(kind: SyntaxKind) -> bool {
30905 matches!(
30906 kind,
30907 SyntaxKind::CREATE_INDEX
30908 | SyntaxKind::CREATE_SEQUENCE
30909 | SyntaxKind::CREATE_TABLE
30910 | SyntaxKind::CREATE_TRIGGER
30911 | SyntaxKind::CREATE_VIEW
30912 | SyntaxKind::GRANT
30913 )
30914 }
30915 #[inline]
30916 fn cast(syntax: SyntaxNode) -> Option<Self> {
30917 let res = match syntax.kind() {
30918 SyntaxKind::CREATE_INDEX => SchemaElement::CreateIndex(CreateIndex { syntax }),
30919 SyntaxKind::CREATE_SEQUENCE => SchemaElement::CreateSequence(CreateSequence { syntax }),
30920 SyntaxKind::CREATE_TABLE => SchemaElement::CreateTable(CreateTable { syntax }),
30921 SyntaxKind::CREATE_TRIGGER => SchemaElement::CreateTrigger(CreateTrigger { syntax }),
30922 SyntaxKind::CREATE_VIEW => SchemaElement::CreateView(CreateView { syntax }),
30923 SyntaxKind::GRANT => SchemaElement::Grant(Grant { syntax }),
30924 _ => {
30925 return None;
30926 }
30927 };
30928 Some(res)
30929 }
30930 #[inline]
30931 fn syntax(&self) -> &SyntaxNode {
30932 match self {
30933 SchemaElement::CreateIndex(it) => &it.syntax,
30934 SchemaElement::CreateSequence(it) => &it.syntax,
30935 SchemaElement::CreateTable(it) => &it.syntax,
30936 SchemaElement::CreateTrigger(it) => &it.syntax,
30937 SchemaElement::CreateView(it) => &it.syntax,
30938 SchemaElement::Grant(it) => &it.syntax,
30939 }
30940 }
30941}
30942impl From<CreateIndex> for SchemaElement {
30943 #[inline]
30944 fn from(node: CreateIndex) -> SchemaElement {
30945 SchemaElement::CreateIndex(node)
30946 }
30947}
30948impl From<CreateSequence> for SchemaElement {
30949 #[inline]
30950 fn from(node: CreateSequence) -> SchemaElement {
30951 SchemaElement::CreateSequence(node)
30952 }
30953}
30954impl From<CreateTable> for SchemaElement {
30955 #[inline]
30956 fn from(node: CreateTable) -> SchemaElement {
30957 SchemaElement::CreateTable(node)
30958 }
30959}
30960impl From<CreateTrigger> for SchemaElement {
30961 #[inline]
30962 fn from(node: CreateTrigger) -> SchemaElement {
30963 SchemaElement::CreateTrigger(node)
30964 }
30965}
30966impl From<CreateView> for SchemaElement {
30967 #[inline]
30968 fn from(node: CreateView) -> SchemaElement {
30969 SchemaElement::CreateView(node)
30970 }
30971}
30972impl From<Grant> for SchemaElement {
30973 #[inline]
30974 fn from(node: Grant) -> SchemaElement {
30975 SchemaElement::Grant(node)
30976 }
30977}
30978impl AstNode for SelectVariant {
30979 #[inline]
30980 fn can_cast(kind: SyntaxKind) -> bool {
30981 matches!(
30982 kind,
30983 SyntaxKind::COMPOUND_SELECT
30984 | SyntaxKind::PAREN_SELECT
30985 | SyntaxKind::SELECT
30986 | SyntaxKind::SELECT_INTO
30987 | SyntaxKind::TABLE
30988 | SyntaxKind::VALUES
30989 )
30990 }
30991 #[inline]
30992 fn cast(syntax: SyntaxNode) -> Option<Self> {
30993 let res = match syntax.kind() {
30994 SyntaxKind::COMPOUND_SELECT => SelectVariant::CompoundSelect(CompoundSelect { syntax }),
30995 SyntaxKind::PAREN_SELECT => SelectVariant::ParenSelect(ParenSelect { syntax }),
30996 SyntaxKind::SELECT => SelectVariant::Select(Select { syntax }),
30997 SyntaxKind::SELECT_INTO => SelectVariant::SelectInto(SelectInto { syntax }),
30998 SyntaxKind::TABLE => SelectVariant::Table(Table { syntax }),
30999 SyntaxKind::VALUES => SelectVariant::Values(Values { syntax }),
31000 _ => {
31001 return None;
31002 }
31003 };
31004 Some(res)
31005 }
31006 #[inline]
31007 fn syntax(&self) -> &SyntaxNode {
31008 match self {
31009 SelectVariant::CompoundSelect(it) => &it.syntax,
31010 SelectVariant::ParenSelect(it) => &it.syntax,
31011 SelectVariant::Select(it) => &it.syntax,
31012 SelectVariant::SelectInto(it) => &it.syntax,
31013 SelectVariant::Table(it) => &it.syntax,
31014 SelectVariant::Values(it) => &it.syntax,
31015 }
31016 }
31017}
31018impl From<CompoundSelect> for SelectVariant {
31019 #[inline]
31020 fn from(node: CompoundSelect) -> SelectVariant {
31021 SelectVariant::CompoundSelect(node)
31022 }
31023}
31024impl From<ParenSelect> for SelectVariant {
31025 #[inline]
31026 fn from(node: ParenSelect) -> SelectVariant {
31027 SelectVariant::ParenSelect(node)
31028 }
31029}
31030impl From<Select> for SelectVariant {
31031 #[inline]
31032 fn from(node: Select) -> SelectVariant {
31033 SelectVariant::Select(node)
31034 }
31035}
31036impl From<SelectInto> for SelectVariant {
31037 #[inline]
31038 fn from(node: SelectInto) -> SelectVariant {
31039 SelectVariant::SelectInto(node)
31040 }
31041}
31042impl From<Table> for SelectVariant {
31043 #[inline]
31044 fn from(node: Table) -> SelectVariant {
31045 SelectVariant::Table(node)
31046 }
31047}
31048impl From<Values> for SelectVariant {
31049 #[inline]
31050 fn from(node: Values) -> SelectVariant {
31051 SelectVariant::Values(node)
31052 }
31053}
31054impl AstNode for SetColumn {
31055 #[inline]
31056 fn can_cast(kind: SyntaxKind) -> bool {
31057 matches!(
31058 kind,
31059 SyntaxKind::SET_MULTIPLE_COLUMNS | SyntaxKind::SET_SINGLE_COLUMN
31060 )
31061 }
31062 #[inline]
31063 fn cast(syntax: SyntaxNode) -> Option<Self> {
31064 let res = match syntax.kind() {
31065 SyntaxKind::SET_MULTIPLE_COLUMNS => {
31066 SetColumn::SetMultipleColumns(SetMultipleColumns { syntax })
31067 }
31068 SyntaxKind::SET_SINGLE_COLUMN => SetColumn::SetSingleColumn(SetSingleColumn { syntax }),
31069 _ => {
31070 return None;
31071 }
31072 };
31073 Some(res)
31074 }
31075 #[inline]
31076 fn syntax(&self) -> &SyntaxNode {
31077 match self {
31078 SetColumn::SetMultipleColumns(it) => &it.syntax,
31079 SetColumn::SetSingleColumn(it) => &it.syntax,
31080 }
31081 }
31082}
31083impl From<SetMultipleColumns> for SetColumn {
31084 #[inline]
31085 fn from(node: SetMultipleColumns) -> SetColumn {
31086 SetColumn::SetMultipleColumns(node)
31087 }
31088}
31089impl From<SetSingleColumn> for SetColumn {
31090 #[inline]
31091 fn from(node: SetSingleColumn) -> SetColumn {
31092 SetColumn::SetSingleColumn(node)
31093 }
31094}
31095impl AstNode for Stmt {
31096 #[inline]
31097 fn can_cast(kind: SyntaxKind) -> bool {
31098 matches!(
31099 kind,
31100 SyntaxKind::ALTER_AGGREGATE
31101 | SyntaxKind::ALTER_COLLATION
31102 | SyntaxKind::ALTER_CONVERSION
31103 | SyntaxKind::ALTER_DATABASE
31104 | SyntaxKind::ALTER_DEFAULT_PRIVILEGES
31105 | SyntaxKind::ALTER_DOMAIN
31106 | SyntaxKind::ALTER_EVENT_TRIGGER
31107 | SyntaxKind::ALTER_EXTENSION
31108 | SyntaxKind::ALTER_FOREIGN_DATA_WRAPPER
31109 | SyntaxKind::ALTER_FOREIGN_TABLE
31110 | SyntaxKind::ALTER_FUNCTION
31111 | SyntaxKind::ALTER_GROUP
31112 | SyntaxKind::ALTER_INDEX
31113 | SyntaxKind::ALTER_LANGUAGE
31114 | SyntaxKind::ALTER_LARGE_OBJECT
31115 | SyntaxKind::ALTER_MATERIALIZED_VIEW
31116 | SyntaxKind::ALTER_OPERATOR
31117 | SyntaxKind::ALTER_OPERATOR_CLASS
31118 | SyntaxKind::ALTER_OPERATOR_FAMILY
31119 | SyntaxKind::ALTER_POLICY
31120 | SyntaxKind::ALTER_PROCEDURE
31121 | SyntaxKind::ALTER_PUBLICATION
31122 | SyntaxKind::ALTER_ROLE
31123 | SyntaxKind::ALTER_ROUTINE
31124 | SyntaxKind::ALTER_RULE
31125 | SyntaxKind::ALTER_SCHEMA
31126 | SyntaxKind::ALTER_SEQUENCE
31127 | SyntaxKind::ALTER_SERVER
31128 | SyntaxKind::ALTER_STATISTICS
31129 | SyntaxKind::ALTER_SUBSCRIPTION
31130 | SyntaxKind::ALTER_SYSTEM
31131 | SyntaxKind::ALTER_TABLE
31132 | SyntaxKind::ALTER_TABLESPACE
31133 | SyntaxKind::ALTER_TEXT_SEARCH_CONFIGURATION
31134 | SyntaxKind::ALTER_TEXT_SEARCH_DICTIONARY
31135 | SyntaxKind::ALTER_TEXT_SEARCH_PARSER
31136 | SyntaxKind::ALTER_TEXT_SEARCH_TEMPLATE
31137 | SyntaxKind::ALTER_TRIGGER
31138 | SyntaxKind::ALTER_TYPE
31139 | SyntaxKind::ALTER_USER
31140 | SyntaxKind::ALTER_USER_MAPPING
31141 | SyntaxKind::ALTER_VIEW
31142 | SyntaxKind::ANALYZE
31143 | SyntaxKind::BEGIN
31144 | SyntaxKind::CALL
31145 | SyntaxKind::CHECKPOINT
31146 | SyntaxKind::CLOSE
31147 | SyntaxKind::CLUSTER
31148 | SyntaxKind::COMMENT_ON
31149 | SyntaxKind::COMMIT
31150 | SyntaxKind::COPY
31151 | SyntaxKind::CREATE_ACCESS_METHOD
31152 | SyntaxKind::CREATE_AGGREGATE
31153 | SyntaxKind::CREATE_CAST
31154 | SyntaxKind::CREATE_COLLATION
31155 | SyntaxKind::CREATE_CONVERSION
31156 | SyntaxKind::CREATE_DATABASE
31157 | SyntaxKind::CREATE_DOMAIN
31158 | SyntaxKind::CREATE_EVENT_TRIGGER
31159 | SyntaxKind::CREATE_EXTENSION
31160 | SyntaxKind::CREATE_FOREIGN_DATA_WRAPPER
31161 | SyntaxKind::CREATE_FOREIGN_TABLE
31162 | SyntaxKind::CREATE_FUNCTION
31163 | SyntaxKind::CREATE_GROUP
31164 | SyntaxKind::CREATE_INDEX
31165 | SyntaxKind::CREATE_LANGUAGE
31166 | SyntaxKind::CREATE_MATERIALIZED_VIEW
31167 | SyntaxKind::CREATE_OPERATOR
31168 | SyntaxKind::CREATE_OPERATOR_CLASS
31169 | SyntaxKind::CREATE_OPERATOR_FAMILY
31170 | SyntaxKind::CREATE_POLICY
31171 | SyntaxKind::CREATE_PROCEDURE
31172 | SyntaxKind::CREATE_PUBLICATION
31173 | SyntaxKind::CREATE_ROLE
31174 | SyntaxKind::CREATE_RULE
31175 | SyntaxKind::CREATE_SCHEMA
31176 | SyntaxKind::CREATE_SEQUENCE
31177 | SyntaxKind::CREATE_SERVER
31178 | SyntaxKind::CREATE_STATISTICS
31179 | SyntaxKind::CREATE_SUBSCRIPTION
31180 | SyntaxKind::CREATE_TABLE
31181 | SyntaxKind::CREATE_TABLE_AS
31182 | SyntaxKind::CREATE_TABLESPACE
31183 | SyntaxKind::CREATE_TEXT_SEARCH_CONFIGURATION
31184 | SyntaxKind::CREATE_TEXT_SEARCH_DICTIONARY
31185 | SyntaxKind::CREATE_TEXT_SEARCH_PARSER
31186 | SyntaxKind::CREATE_TEXT_SEARCH_TEMPLATE
31187 | SyntaxKind::CREATE_TRANSFORM
31188 | SyntaxKind::CREATE_TRIGGER
31189 | SyntaxKind::CREATE_TYPE
31190 | SyntaxKind::CREATE_USER
31191 | SyntaxKind::CREATE_USER_MAPPING
31192 | SyntaxKind::CREATE_VIEW
31193 | SyntaxKind::DEALLOCATE
31194 | SyntaxKind::DECLARE
31195 | SyntaxKind::DELETE
31196 | SyntaxKind::DISCARD
31197 | SyntaxKind::DO
31198 | SyntaxKind::DROP_ACCESS_METHOD
31199 | SyntaxKind::DROP_AGGREGATE
31200 | SyntaxKind::DROP_CAST
31201 | SyntaxKind::DROP_COLLATION
31202 | SyntaxKind::DROP_CONVERSION
31203 | SyntaxKind::DROP_DATABASE
31204 | SyntaxKind::DROP_DOMAIN
31205 | SyntaxKind::DROP_EVENT_TRIGGER
31206 | SyntaxKind::DROP_EXTENSION
31207 | SyntaxKind::DROP_FOREIGN_DATA_WRAPPER
31208 | SyntaxKind::DROP_FOREIGN_TABLE
31209 | SyntaxKind::DROP_FUNCTION
31210 | SyntaxKind::DROP_GROUP
31211 | SyntaxKind::DROP_INDEX
31212 | SyntaxKind::DROP_LANGUAGE
31213 | SyntaxKind::DROP_MATERIALIZED_VIEW
31214 | SyntaxKind::DROP_OPERATOR
31215 | SyntaxKind::DROP_OPERATOR_CLASS
31216 | SyntaxKind::DROP_OPERATOR_FAMILY
31217 | SyntaxKind::DROP_OWNED
31218 | SyntaxKind::DROP_POLICY
31219 | SyntaxKind::DROP_PROCEDURE
31220 | SyntaxKind::DROP_PUBLICATION
31221 | SyntaxKind::DROP_ROLE
31222 | SyntaxKind::DROP_ROUTINE
31223 | SyntaxKind::DROP_RULE
31224 | SyntaxKind::DROP_SCHEMA
31225 | SyntaxKind::DROP_SEQUENCE
31226 | SyntaxKind::DROP_SERVER
31227 | SyntaxKind::DROP_STATISTICS
31228 | SyntaxKind::DROP_SUBSCRIPTION
31229 | SyntaxKind::DROP_TABLE
31230 | SyntaxKind::DROP_TABLESPACE
31231 | SyntaxKind::DROP_TEXT_SEARCH_CONFIG
31232 | SyntaxKind::DROP_TEXT_SEARCH_DICT
31233 | SyntaxKind::DROP_TEXT_SEARCH_PARSER
31234 | SyntaxKind::DROP_TEXT_SEARCH_TEMPLATE
31235 | SyntaxKind::DROP_TRANSFORM
31236 | SyntaxKind::DROP_TRIGGER
31237 | SyntaxKind::DROP_TYPE
31238 | SyntaxKind::DROP_USER
31239 | SyntaxKind::DROP_USER_MAPPING
31240 | SyntaxKind::DROP_VIEW
31241 | SyntaxKind::EXECUTE
31242 | SyntaxKind::EXPLAIN
31243 | SyntaxKind::FETCH
31244 | SyntaxKind::GRANT
31245 | SyntaxKind::IMPORT_FOREIGN_SCHEMA
31246 | SyntaxKind::INSERT
31247 | SyntaxKind::LISTEN
31248 | SyntaxKind::LOAD
31249 | SyntaxKind::LOCK
31250 | SyntaxKind::MERGE
31251 | SyntaxKind::MOVE
31252 | SyntaxKind::NOTIFY
31253 | SyntaxKind::PAREN_SELECT
31254 | SyntaxKind::PREPARE
31255 | SyntaxKind::PREPARE_TRANSACTION
31256 | SyntaxKind::REASSIGN
31257 | SyntaxKind::REFRESH
31258 | SyntaxKind::REINDEX
31259 | SyntaxKind::RELEASE_SAVEPOINT
31260 | SyntaxKind::RESET
31261 | SyntaxKind::RESET_SESSION_AUTH
31262 | SyntaxKind::REVOKE
31263 | SyntaxKind::ROLLBACK
31264 | SyntaxKind::SAVEPOINT
31265 | SyntaxKind::SECURITY_LABEL
31266 | SyntaxKind::SELECT
31267 | SyntaxKind::SELECT_INTO
31268 | SyntaxKind::SET
31269 | SyntaxKind::SET_CONSTRAINTS
31270 | SyntaxKind::SET_ROLE
31271 | SyntaxKind::SET_SESSION_AUTH
31272 | SyntaxKind::SET_TRANSACTION
31273 | SyntaxKind::SHOW
31274 | SyntaxKind::TABLE
31275 | SyntaxKind::TRUNCATE
31276 | SyntaxKind::UNLISTEN
31277 | SyntaxKind::UPDATE
31278 | SyntaxKind::VACUUM
31279 | SyntaxKind::VALUES
31280 )
31281 }
31282 #[inline]
31283 fn cast(syntax: SyntaxNode) -> Option<Self> {
31284 let res = match syntax.kind() {
31285 SyntaxKind::ALTER_AGGREGATE => Stmt::AlterAggregate(AlterAggregate { syntax }),
31286 SyntaxKind::ALTER_COLLATION => Stmt::AlterCollation(AlterCollation { syntax }),
31287 SyntaxKind::ALTER_CONVERSION => Stmt::AlterConversion(AlterConversion { syntax }),
31288 SyntaxKind::ALTER_DATABASE => Stmt::AlterDatabase(AlterDatabase { syntax }),
31289 SyntaxKind::ALTER_DEFAULT_PRIVILEGES => {
31290 Stmt::AlterDefaultPrivileges(AlterDefaultPrivileges { syntax })
31291 }
31292 SyntaxKind::ALTER_DOMAIN => Stmt::AlterDomain(AlterDomain { syntax }),
31293 SyntaxKind::ALTER_EVENT_TRIGGER => {
31294 Stmt::AlterEventTrigger(AlterEventTrigger { syntax })
31295 }
31296 SyntaxKind::ALTER_EXTENSION => Stmt::AlterExtension(AlterExtension { syntax }),
31297 SyntaxKind::ALTER_FOREIGN_DATA_WRAPPER => {
31298 Stmt::AlterForeignDataWrapper(AlterForeignDataWrapper { syntax })
31299 }
31300 SyntaxKind::ALTER_FOREIGN_TABLE => {
31301 Stmt::AlterForeignTable(AlterForeignTable { syntax })
31302 }
31303 SyntaxKind::ALTER_FUNCTION => Stmt::AlterFunction(AlterFunction { syntax }),
31304 SyntaxKind::ALTER_GROUP => Stmt::AlterGroup(AlterGroup { syntax }),
31305 SyntaxKind::ALTER_INDEX => Stmt::AlterIndex(AlterIndex { syntax }),
31306 SyntaxKind::ALTER_LANGUAGE => Stmt::AlterLanguage(AlterLanguage { syntax }),
31307 SyntaxKind::ALTER_LARGE_OBJECT => Stmt::AlterLargeObject(AlterLargeObject { syntax }),
31308 SyntaxKind::ALTER_MATERIALIZED_VIEW => {
31309 Stmt::AlterMaterializedView(AlterMaterializedView { syntax })
31310 }
31311 SyntaxKind::ALTER_OPERATOR => Stmt::AlterOperator(AlterOperator { syntax }),
31312 SyntaxKind::ALTER_OPERATOR_CLASS => {
31313 Stmt::AlterOperatorClass(AlterOperatorClass { syntax })
31314 }
31315 SyntaxKind::ALTER_OPERATOR_FAMILY => {
31316 Stmt::AlterOperatorFamily(AlterOperatorFamily { syntax })
31317 }
31318 SyntaxKind::ALTER_POLICY => Stmt::AlterPolicy(AlterPolicy { syntax }),
31319 SyntaxKind::ALTER_PROCEDURE => Stmt::AlterProcedure(AlterProcedure { syntax }),
31320 SyntaxKind::ALTER_PUBLICATION => Stmt::AlterPublication(AlterPublication { syntax }),
31321 SyntaxKind::ALTER_ROLE => Stmt::AlterRole(AlterRole { syntax }),
31322 SyntaxKind::ALTER_ROUTINE => Stmt::AlterRoutine(AlterRoutine { syntax }),
31323 SyntaxKind::ALTER_RULE => Stmt::AlterRule(AlterRule { syntax }),
31324 SyntaxKind::ALTER_SCHEMA => Stmt::AlterSchema(AlterSchema { syntax }),
31325 SyntaxKind::ALTER_SEQUENCE => Stmt::AlterSequence(AlterSequence { syntax }),
31326 SyntaxKind::ALTER_SERVER => Stmt::AlterServer(AlterServer { syntax }),
31327 SyntaxKind::ALTER_STATISTICS => Stmt::AlterStatistics(AlterStatistics { syntax }),
31328 SyntaxKind::ALTER_SUBSCRIPTION => Stmt::AlterSubscription(AlterSubscription { syntax }),
31329 SyntaxKind::ALTER_SYSTEM => Stmt::AlterSystem(AlterSystem { syntax }),
31330 SyntaxKind::ALTER_TABLE => Stmt::AlterTable(AlterTable { syntax }),
31331 SyntaxKind::ALTER_TABLESPACE => Stmt::AlterTablespace(AlterTablespace { syntax }),
31332 SyntaxKind::ALTER_TEXT_SEARCH_CONFIGURATION => {
31333 Stmt::AlterTextSearchConfiguration(AlterTextSearchConfiguration { syntax })
31334 }
31335 SyntaxKind::ALTER_TEXT_SEARCH_DICTIONARY => {
31336 Stmt::AlterTextSearchDictionary(AlterTextSearchDictionary { syntax })
31337 }
31338 SyntaxKind::ALTER_TEXT_SEARCH_PARSER => {
31339 Stmt::AlterTextSearchParser(AlterTextSearchParser { syntax })
31340 }
31341 SyntaxKind::ALTER_TEXT_SEARCH_TEMPLATE => {
31342 Stmt::AlterTextSearchTemplate(AlterTextSearchTemplate { syntax })
31343 }
31344 SyntaxKind::ALTER_TRIGGER => Stmt::AlterTrigger(AlterTrigger { syntax }),
31345 SyntaxKind::ALTER_TYPE => Stmt::AlterType(AlterType { syntax }),
31346 SyntaxKind::ALTER_USER => Stmt::AlterUser(AlterUser { syntax }),
31347 SyntaxKind::ALTER_USER_MAPPING => Stmt::AlterUserMapping(AlterUserMapping { syntax }),
31348 SyntaxKind::ALTER_VIEW => Stmt::AlterView(AlterView { syntax }),
31349 SyntaxKind::ANALYZE => Stmt::Analyze(Analyze { syntax }),
31350 SyntaxKind::BEGIN => Stmt::Begin(Begin { syntax }),
31351 SyntaxKind::CALL => Stmt::Call(Call { syntax }),
31352 SyntaxKind::CHECKPOINT => Stmt::Checkpoint(Checkpoint { syntax }),
31353 SyntaxKind::CLOSE => Stmt::Close(Close { syntax }),
31354 SyntaxKind::CLUSTER => Stmt::Cluster(Cluster { syntax }),
31355 SyntaxKind::COMMENT_ON => Stmt::CommentOn(CommentOn { syntax }),
31356 SyntaxKind::COMMIT => Stmt::Commit(Commit { syntax }),
31357 SyntaxKind::COPY => Stmt::Copy(Copy { syntax }),
31358 SyntaxKind::CREATE_ACCESS_METHOD => {
31359 Stmt::CreateAccessMethod(CreateAccessMethod { syntax })
31360 }
31361 SyntaxKind::CREATE_AGGREGATE => Stmt::CreateAggregate(CreateAggregate { syntax }),
31362 SyntaxKind::CREATE_CAST => Stmt::CreateCast(CreateCast { syntax }),
31363 SyntaxKind::CREATE_COLLATION => Stmt::CreateCollation(CreateCollation { syntax }),
31364 SyntaxKind::CREATE_CONVERSION => Stmt::CreateConversion(CreateConversion { syntax }),
31365 SyntaxKind::CREATE_DATABASE => Stmt::CreateDatabase(CreateDatabase { syntax }),
31366 SyntaxKind::CREATE_DOMAIN => Stmt::CreateDomain(CreateDomain { syntax }),
31367 SyntaxKind::CREATE_EVENT_TRIGGER => {
31368 Stmt::CreateEventTrigger(CreateEventTrigger { syntax })
31369 }
31370 SyntaxKind::CREATE_EXTENSION => Stmt::CreateExtension(CreateExtension { syntax }),
31371 SyntaxKind::CREATE_FOREIGN_DATA_WRAPPER => {
31372 Stmt::CreateForeignDataWrapper(CreateForeignDataWrapper { syntax })
31373 }
31374 SyntaxKind::CREATE_FOREIGN_TABLE => {
31375 Stmt::CreateForeignTable(CreateForeignTable { syntax })
31376 }
31377 SyntaxKind::CREATE_FUNCTION => Stmt::CreateFunction(CreateFunction { syntax }),
31378 SyntaxKind::CREATE_GROUP => Stmt::CreateGroup(CreateGroup { syntax }),
31379 SyntaxKind::CREATE_INDEX => Stmt::CreateIndex(CreateIndex { syntax }),
31380 SyntaxKind::CREATE_LANGUAGE => Stmt::CreateLanguage(CreateLanguage { syntax }),
31381 SyntaxKind::CREATE_MATERIALIZED_VIEW => {
31382 Stmt::CreateMaterializedView(CreateMaterializedView { syntax })
31383 }
31384 SyntaxKind::CREATE_OPERATOR => Stmt::CreateOperator(CreateOperator { syntax }),
31385 SyntaxKind::CREATE_OPERATOR_CLASS => {
31386 Stmt::CreateOperatorClass(CreateOperatorClass { syntax })
31387 }
31388 SyntaxKind::CREATE_OPERATOR_FAMILY => {
31389 Stmt::CreateOperatorFamily(CreateOperatorFamily { syntax })
31390 }
31391 SyntaxKind::CREATE_POLICY => Stmt::CreatePolicy(CreatePolicy { syntax }),
31392 SyntaxKind::CREATE_PROCEDURE => Stmt::CreateProcedure(CreateProcedure { syntax }),
31393 SyntaxKind::CREATE_PUBLICATION => Stmt::CreatePublication(CreatePublication { syntax }),
31394 SyntaxKind::CREATE_ROLE => Stmt::CreateRole(CreateRole { syntax }),
31395 SyntaxKind::CREATE_RULE => Stmt::CreateRule(CreateRule { syntax }),
31396 SyntaxKind::CREATE_SCHEMA => Stmt::CreateSchema(CreateSchema { syntax }),
31397 SyntaxKind::CREATE_SEQUENCE => Stmt::CreateSequence(CreateSequence { syntax }),
31398 SyntaxKind::CREATE_SERVER => Stmt::CreateServer(CreateServer { syntax }),
31399 SyntaxKind::CREATE_STATISTICS => Stmt::CreateStatistics(CreateStatistics { syntax }),
31400 SyntaxKind::CREATE_SUBSCRIPTION => {
31401 Stmt::CreateSubscription(CreateSubscription { syntax })
31402 }
31403 SyntaxKind::CREATE_TABLE => Stmt::CreateTable(CreateTable { syntax }),
31404 SyntaxKind::CREATE_TABLE_AS => Stmt::CreateTableAs(CreateTableAs { syntax }),
31405 SyntaxKind::CREATE_TABLESPACE => Stmt::CreateTablespace(CreateTablespace { syntax }),
31406 SyntaxKind::CREATE_TEXT_SEARCH_CONFIGURATION => {
31407 Stmt::CreateTextSearchConfiguration(CreateTextSearchConfiguration { syntax })
31408 }
31409 SyntaxKind::CREATE_TEXT_SEARCH_DICTIONARY => {
31410 Stmt::CreateTextSearchDictionary(CreateTextSearchDictionary { syntax })
31411 }
31412 SyntaxKind::CREATE_TEXT_SEARCH_PARSER => {
31413 Stmt::CreateTextSearchParser(CreateTextSearchParser { syntax })
31414 }
31415 SyntaxKind::CREATE_TEXT_SEARCH_TEMPLATE => {
31416 Stmt::CreateTextSearchTemplate(CreateTextSearchTemplate { syntax })
31417 }
31418 SyntaxKind::CREATE_TRANSFORM => Stmt::CreateTransform(CreateTransform { syntax }),
31419 SyntaxKind::CREATE_TRIGGER => Stmt::CreateTrigger(CreateTrigger { syntax }),
31420 SyntaxKind::CREATE_TYPE => Stmt::CreateType(CreateType { syntax }),
31421 SyntaxKind::CREATE_USER => Stmt::CreateUser(CreateUser { syntax }),
31422 SyntaxKind::CREATE_USER_MAPPING => {
31423 Stmt::CreateUserMapping(CreateUserMapping { syntax })
31424 }
31425 SyntaxKind::CREATE_VIEW => Stmt::CreateView(CreateView { syntax }),
31426 SyntaxKind::DEALLOCATE => Stmt::Deallocate(Deallocate { syntax }),
31427 SyntaxKind::DECLARE => Stmt::Declare(Declare { syntax }),
31428 SyntaxKind::DELETE => Stmt::Delete(Delete { syntax }),
31429 SyntaxKind::DISCARD => Stmt::Discard(Discard { syntax }),
31430 SyntaxKind::DO => Stmt::Do(Do { syntax }),
31431 SyntaxKind::DROP_ACCESS_METHOD => Stmt::DropAccessMethod(DropAccessMethod { syntax }),
31432 SyntaxKind::DROP_AGGREGATE => Stmt::DropAggregate(DropAggregate { syntax }),
31433 SyntaxKind::DROP_CAST => Stmt::DropCast(DropCast { syntax }),
31434 SyntaxKind::DROP_COLLATION => Stmt::DropCollation(DropCollation { syntax }),
31435 SyntaxKind::DROP_CONVERSION => Stmt::DropConversion(DropConversion { syntax }),
31436 SyntaxKind::DROP_DATABASE => Stmt::DropDatabase(DropDatabase { syntax }),
31437 SyntaxKind::DROP_DOMAIN => Stmt::DropDomain(DropDomain { syntax }),
31438 SyntaxKind::DROP_EVENT_TRIGGER => Stmt::DropEventTrigger(DropEventTrigger { syntax }),
31439 SyntaxKind::DROP_EXTENSION => Stmt::DropExtension(DropExtension { syntax }),
31440 SyntaxKind::DROP_FOREIGN_DATA_WRAPPER => {
31441 Stmt::DropForeignDataWrapper(DropForeignDataWrapper { syntax })
31442 }
31443 SyntaxKind::DROP_FOREIGN_TABLE => Stmt::DropForeignTable(DropForeignTable { syntax }),
31444 SyntaxKind::DROP_FUNCTION => Stmt::DropFunction(DropFunction { syntax }),
31445 SyntaxKind::DROP_GROUP => Stmt::DropGroup(DropGroup { syntax }),
31446 SyntaxKind::DROP_INDEX => Stmt::DropIndex(DropIndex { syntax }),
31447 SyntaxKind::DROP_LANGUAGE => Stmt::DropLanguage(DropLanguage { syntax }),
31448 SyntaxKind::DROP_MATERIALIZED_VIEW => {
31449 Stmt::DropMaterializedView(DropMaterializedView { syntax })
31450 }
31451 SyntaxKind::DROP_OPERATOR => Stmt::DropOperator(DropOperator { syntax }),
31452 SyntaxKind::DROP_OPERATOR_CLASS => {
31453 Stmt::DropOperatorClass(DropOperatorClass { syntax })
31454 }
31455 SyntaxKind::DROP_OPERATOR_FAMILY => {
31456 Stmt::DropOperatorFamily(DropOperatorFamily { syntax })
31457 }
31458 SyntaxKind::DROP_OWNED => Stmt::DropOwned(DropOwned { syntax }),
31459 SyntaxKind::DROP_POLICY => Stmt::DropPolicy(DropPolicy { syntax }),
31460 SyntaxKind::DROP_PROCEDURE => Stmt::DropProcedure(DropProcedure { syntax }),
31461 SyntaxKind::DROP_PUBLICATION => Stmt::DropPublication(DropPublication { syntax }),
31462 SyntaxKind::DROP_ROLE => Stmt::DropRole(DropRole { syntax }),
31463 SyntaxKind::DROP_ROUTINE => Stmt::DropRoutine(DropRoutine { syntax }),
31464 SyntaxKind::DROP_RULE => Stmt::DropRule(DropRule { syntax }),
31465 SyntaxKind::DROP_SCHEMA => Stmt::DropSchema(DropSchema { syntax }),
31466 SyntaxKind::DROP_SEQUENCE => Stmt::DropSequence(DropSequence { syntax }),
31467 SyntaxKind::DROP_SERVER => Stmt::DropServer(DropServer { syntax }),
31468 SyntaxKind::DROP_STATISTICS => Stmt::DropStatistics(DropStatistics { syntax }),
31469 SyntaxKind::DROP_SUBSCRIPTION => Stmt::DropSubscription(DropSubscription { syntax }),
31470 SyntaxKind::DROP_TABLE => Stmt::DropTable(DropTable { syntax }),
31471 SyntaxKind::DROP_TABLESPACE => Stmt::DropTablespace(DropTablespace { syntax }),
31472 SyntaxKind::DROP_TEXT_SEARCH_CONFIG => {
31473 Stmt::DropTextSearchConfig(DropTextSearchConfig { syntax })
31474 }
31475 SyntaxKind::DROP_TEXT_SEARCH_DICT => {
31476 Stmt::DropTextSearchDict(DropTextSearchDict { syntax })
31477 }
31478 SyntaxKind::DROP_TEXT_SEARCH_PARSER => {
31479 Stmt::DropTextSearchParser(DropTextSearchParser { syntax })
31480 }
31481 SyntaxKind::DROP_TEXT_SEARCH_TEMPLATE => {
31482 Stmt::DropTextSearchTemplate(DropTextSearchTemplate { syntax })
31483 }
31484 SyntaxKind::DROP_TRANSFORM => Stmt::DropTransform(DropTransform { syntax }),
31485 SyntaxKind::DROP_TRIGGER => Stmt::DropTrigger(DropTrigger { syntax }),
31486 SyntaxKind::DROP_TYPE => Stmt::DropType(DropType { syntax }),
31487 SyntaxKind::DROP_USER => Stmt::DropUser(DropUser { syntax }),
31488 SyntaxKind::DROP_USER_MAPPING => Stmt::DropUserMapping(DropUserMapping { syntax }),
31489 SyntaxKind::DROP_VIEW => Stmt::DropView(DropView { syntax }),
31490 SyntaxKind::EXECUTE => Stmt::Execute(Execute { syntax }),
31491 SyntaxKind::EXPLAIN => Stmt::Explain(Explain { syntax }),
31492 SyntaxKind::FETCH => Stmt::Fetch(Fetch { syntax }),
31493 SyntaxKind::GRANT => Stmt::Grant(Grant { syntax }),
31494 SyntaxKind::IMPORT_FOREIGN_SCHEMA => {
31495 Stmt::ImportForeignSchema(ImportForeignSchema { syntax })
31496 }
31497 SyntaxKind::INSERT => Stmt::Insert(Insert { syntax }),
31498 SyntaxKind::LISTEN => Stmt::Listen(Listen { syntax }),
31499 SyntaxKind::LOAD => Stmt::Load(Load { syntax }),
31500 SyntaxKind::LOCK => Stmt::Lock(Lock { syntax }),
31501 SyntaxKind::MERGE => Stmt::Merge(Merge { syntax }),
31502 SyntaxKind::MOVE => Stmt::Move(Move { syntax }),
31503 SyntaxKind::NOTIFY => Stmt::Notify(Notify { syntax }),
31504 SyntaxKind::PAREN_SELECT => Stmt::ParenSelect(ParenSelect { syntax }),
31505 SyntaxKind::PREPARE => Stmt::Prepare(Prepare { syntax }),
31506 SyntaxKind::PREPARE_TRANSACTION => {
31507 Stmt::PrepareTransaction(PrepareTransaction { syntax })
31508 }
31509 SyntaxKind::REASSIGN => Stmt::Reassign(Reassign { syntax }),
31510 SyntaxKind::REFRESH => Stmt::Refresh(Refresh { syntax }),
31511 SyntaxKind::REINDEX => Stmt::Reindex(Reindex { syntax }),
31512 SyntaxKind::RELEASE_SAVEPOINT => Stmt::ReleaseSavepoint(ReleaseSavepoint { syntax }),
31513 SyntaxKind::RESET => Stmt::Reset(Reset { syntax }),
31514 SyntaxKind::RESET_SESSION_AUTH => Stmt::ResetSessionAuth(ResetSessionAuth { syntax }),
31515 SyntaxKind::REVOKE => Stmt::Revoke(Revoke { syntax }),
31516 SyntaxKind::ROLLBACK => Stmt::Rollback(Rollback { syntax }),
31517 SyntaxKind::SAVEPOINT => Stmt::Savepoint(Savepoint { syntax }),
31518 SyntaxKind::SECURITY_LABEL => Stmt::SecurityLabel(SecurityLabel { syntax }),
31519 SyntaxKind::SELECT => Stmt::Select(Select { syntax }),
31520 SyntaxKind::SELECT_INTO => Stmt::SelectInto(SelectInto { syntax }),
31521 SyntaxKind::SET => Stmt::Set(Set { syntax }),
31522 SyntaxKind::SET_CONSTRAINTS => Stmt::SetConstraints(SetConstraints { syntax }),
31523 SyntaxKind::SET_ROLE => Stmt::SetRole(SetRole { syntax }),
31524 SyntaxKind::SET_SESSION_AUTH => Stmt::SetSessionAuth(SetSessionAuth { syntax }),
31525 SyntaxKind::SET_TRANSACTION => Stmt::SetTransaction(SetTransaction { syntax }),
31526 SyntaxKind::SHOW => Stmt::Show(Show { syntax }),
31527 SyntaxKind::TABLE => Stmt::Table(Table { syntax }),
31528 SyntaxKind::TRUNCATE => Stmt::Truncate(Truncate { syntax }),
31529 SyntaxKind::UNLISTEN => Stmt::Unlisten(Unlisten { syntax }),
31530 SyntaxKind::UPDATE => Stmt::Update(Update { syntax }),
31531 SyntaxKind::VACUUM => Stmt::Vacuum(Vacuum { syntax }),
31532 SyntaxKind::VALUES => Stmt::Values(Values { syntax }),
31533 _ => {
31534 return None;
31535 }
31536 };
31537 Some(res)
31538 }
31539 #[inline]
31540 fn syntax(&self) -> &SyntaxNode {
31541 match self {
31542 Stmt::AlterAggregate(it) => &it.syntax,
31543 Stmt::AlterCollation(it) => &it.syntax,
31544 Stmt::AlterConversion(it) => &it.syntax,
31545 Stmt::AlterDatabase(it) => &it.syntax,
31546 Stmt::AlterDefaultPrivileges(it) => &it.syntax,
31547 Stmt::AlterDomain(it) => &it.syntax,
31548 Stmt::AlterEventTrigger(it) => &it.syntax,
31549 Stmt::AlterExtension(it) => &it.syntax,
31550 Stmt::AlterForeignDataWrapper(it) => &it.syntax,
31551 Stmt::AlterForeignTable(it) => &it.syntax,
31552 Stmt::AlterFunction(it) => &it.syntax,
31553 Stmt::AlterGroup(it) => &it.syntax,
31554 Stmt::AlterIndex(it) => &it.syntax,
31555 Stmt::AlterLanguage(it) => &it.syntax,
31556 Stmt::AlterLargeObject(it) => &it.syntax,
31557 Stmt::AlterMaterializedView(it) => &it.syntax,
31558 Stmt::AlterOperator(it) => &it.syntax,
31559 Stmt::AlterOperatorClass(it) => &it.syntax,
31560 Stmt::AlterOperatorFamily(it) => &it.syntax,
31561 Stmt::AlterPolicy(it) => &it.syntax,
31562 Stmt::AlterProcedure(it) => &it.syntax,
31563 Stmt::AlterPublication(it) => &it.syntax,
31564 Stmt::AlterRole(it) => &it.syntax,
31565 Stmt::AlterRoutine(it) => &it.syntax,
31566 Stmt::AlterRule(it) => &it.syntax,
31567 Stmt::AlterSchema(it) => &it.syntax,
31568 Stmt::AlterSequence(it) => &it.syntax,
31569 Stmt::AlterServer(it) => &it.syntax,
31570 Stmt::AlterStatistics(it) => &it.syntax,
31571 Stmt::AlterSubscription(it) => &it.syntax,
31572 Stmt::AlterSystem(it) => &it.syntax,
31573 Stmt::AlterTable(it) => &it.syntax,
31574 Stmt::AlterTablespace(it) => &it.syntax,
31575 Stmt::AlterTextSearchConfiguration(it) => &it.syntax,
31576 Stmt::AlterTextSearchDictionary(it) => &it.syntax,
31577 Stmt::AlterTextSearchParser(it) => &it.syntax,
31578 Stmt::AlterTextSearchTemplate(it) => &it.syntax,
31579 Stmt::AlterTrigger(it) => &it.syntax,
31580 Stmt::AlterType(it) => &it.syntax,
31581 Stmt::AlterUser(it) => &it.syntax,
31582 Stmt::AlterUserMapping(it) => &it.syntax,
31583 Stmt::AlterView(it) => &it.syntax,
31584 Stmt::Analyze(it) => &it.syntax,
31585 Stmt::Begin(it) => &it.syntax,
31586 Stmt::Call(it) => &it.syntax,
31587 Stmt::Checkpoint(it) => &it.syntax,
31588 Stmt::Close(it) => &it.syntax,
31589 Stmt::Cluster(it) => &it.syntax,
31590 Stmt::CommentOn(it) => &it.syntax,
31591 Stmt::Commit(it) => &it.syntax,
31592 Stmt::Copy(it) => &it.syntax,
31593 Stmt::CreateAccessMethod(it) => &it.syntax,
31594 Stmt::CreateAggregate(it) => &it.syntax,
31595 Stmt::CreateCast(it) => &it.syntax,
31596 Stmt::CreateCollation(it) => &it.syntax,
31597 Stmt::CreateConversion(it) => &it.syntax,
31598 Stmt::CreateDatabase(it) => &it.syntax,
31599 Stmt::CreateDomain(it) => &it.syntax,
31600 Stmt::CreateEventTrigger(it) => &it.syntax,
31601 Stmt::CreateExtension(it) => &it.syntax,
31602 Stmt::CreateForeignDataWrapper(it) => &it.syntax,
31603 Stmt::CreateForeignTable(it) => &it.syntax,
31604 Stmt::CreateFunction(it) => &it.syntax,
31605 Stmt::CreateGroup(it) => &it.syntax,
31606 Stmt::CreateIndex(it) => &it.syntax,
31607 Stmt::CreateLanguage(it) => &it.syntax,
31608 Stmt::CreateMaterializedView(it) => &it.syntax,
31609 Stmt::CreateOperator(it) => &it.syntax,
31610 Stmt::CreateOperatorClass(it) => &it.syntax,
31611 Stmt::CreateOperatorFamily(it) => &it.syntax,
31612 Stmt::CreatePolicy(it) => &it.syntax,
31613 Stmt::CreateProcedure(it) => &it.syntax,
31614 Stmt::CreatePublication(it) => &it.syntax,
31615 Stmt::CreateRole(it) => &it.syntax,
31616 Stmt::CreateRule(it) => &it.syntax,
31617 Stmt::CreateSchema(it) => &it.syntax,
31618 Stmt::CreateSequence(it) => &it.syntax,
31619 Stmt::CreateServer(it) => &it.syntax,
31620 Stmt::CreateStatistics(it) => &it.syntax,
31621 Stmt::CreateSubscription(it) => &it.syntax,
31622 Stmt::CreateTable(it) => &it.syntax,
31623 Stmt::CreateTableAs(it) => &it.syntax,
31624 Stmt::CreateTablespace(it) => &it.syntax,
31625 Stmt::CreateTextSearchConfiguration(it) => &it.syntax,
31626 Stmt::CreateTextSearchDictionary(it) => &it.syntax,
31627 Stmt::CreateTextSearchParser(it) => &it.syntax,
31628 Stmt::CreateTextSearchTemplate(it) => &it.syntax,
31629 Stmt::CreateTransform(it) => &it.syntax,
31630 Stmt::CreateTrigger(it) => &it.syntax,
31631 Stmt::CreateType(it) => &it.syntax,
31632 Stmt::CreateUser(it) => &it.syntax,
31633 Stmt::CreateUserMapping(it) => &it.syntax,
31634 Stmt::CreateView(it) => &it.syntax,
31635 Stmt::Deallocate(it) => &it.syntax,
31636 Stmt::Declare(it) => &it.syntax,
31637 Stmt::Delete(it) => &it.syntax,
31638 Stmt::Discard(it) => &it.syntax,
31639 Stmt::Do(it) => &it.syntax,
31640 Stmt::DropAccessMethod(it) => &it.syntax,
31641 Stmt::DropAggregate(it) => &it.syntax,
31642 Stmt::DropCast(it) => &it.syntax,
31643 Stmt::DropCollation(it) => &it.syntax,
31644 Stmt::DropConversion(it) => &it.syntax,
31645 Stmt::DropDatabase(it) => &it.syntax,
31646 Stmt::DropDomain(it) => &it.syntax,
31647 Stmt::DropEventTrigger(it) => &it.syntax,
31648 Stmt::DropExtension(it) => &it.syntax,
31649 Stmt::DropForeignDataWrapper(it) => &it.syntax,
31650 Stmt::DropForeignTable(it) => &it.syntax,
31651 Stmt::DropFunction(it) => &it.syntax,
31652 Stmt::DropGroup(it) => &it.syntax,
31653 Stmt::DropIndex(it) => &it.syntax,
31654 Stmt::DropLanguage(it) => &it.syntax,
31655 Stmt::DropMaterializedView(it) => &it.syntax,
31656 Stmt::DropOperator(it) => &it.syntax,
31657 Stmt::DropOperatorClass(it) => &it.syntax,
31658 Stmt::DropOperatorFamily(it) => &it.syntax,
31659 Stmt::DropOwned(it) => &it.syntax,
31660 Stmt::DropPolicy(it) => &it.syntax,
31661 Stmt::DropProcedure(it) => &it.syntax,
31662 Stmt::DropPublication(it) => &it.syntax,
31663 Stmt::DropRole(it) => &it.syntax,
31664 Stmt::DropRoutine(it) => &it.syntax,
31665 Stmt::DropRule(it) => &it.syntax,
31666 Stmt::DropSchema(it) => &it.syntax,
31667 Stmt::DropSequence(it) => &it.syntax,
31668 Stmt::DropServer(it) => &it.syntax,
31669 Stmt::DropStatistics(it) => &it.syntax,
31670 Stmt::DropSubscription(it) => &it.syntax,
31671 Stmt::DropTable(it) => &it.syntax,
31672 Stmt::DropTablespace(it) => &it.syntax,
31673 Stmt::DropTextSearchConfig(it) => &it.syntax,
31674 Stmt::DropTextSearchDict(it) => &it.syntax,
31675 Stmt::DropTextSearchParser(it) => &it.syntax,
31676 Stmt::DropTextSearchTemplate(it) => &it.syntax,
31677 Stmt::DropTransform(it) => &it.syntax,
31678 Stmt::DropTrigger(it) => &it.syntax,
31679 Stmt::DropType(it) => &it.syntax,
31680 Stmt::DropUser(it) => &it.syntax,
31681 Stmt::DropUserMapping(it) => &it.syntax,
31682 Stmt::DropView(it) => &it.syntax,
31683 Stmt::Execute(it) => &it.syntax,
31684 Stmt::Explain(it) => &it.syntax,
31685 Stmt::Fetch(it) => &it.syntax,
31686 Stmt::Grant(it) => &it.syntax,
31687 Stmt::ImportForeignSchema(it) => &it.syntax,
31688 Stmt::Insert(it) => &it.syntax,
31689 Stmt::Listen(it) => &it.syntax,
31690 Stmt::Load(it) => &it.syntax,
31691 Stmt::Lock(it) => &it.syntax,
31692 Stmt::Merge(it) => &it.syntax,
31693 Stmt::Move(it) => &it.syntax,
31694 Stmt::Notify(it) => &it.syntax,
31695 Stmt::ParenSelect(it) => &it.syntax,
31696 Stmt::Prepare(it) => &it.syntax,
31697 Stmt::PrepareTransaction(it) => &it.syntax,
31698 Stmt::Reassign(it) => &it.syntax,
31699 Stmt::Refresh(it) => &it.syntax,
31700 Stmt::Reindex(it) => &it.syntax,
31701 Stmt::ReleaseSavepoint(it) => &it.syntax,
31702 Stmt::Reset(it) => &it.syntax,
31703 Stmt::ResetSessionAuth(it) => &it.syntax,
31704 Stmt::Revoke(it) => &it.syntax,
31705 Stmt::Rollback(it) => &it.syntax,
31706 Stmt::Savepoint(it) => &it.syntax,
31707 Stmt::SecurityLabel(it) => &it.syntax,
31708 Stmt::Select(it) => &it.syntax,
31709 Stmt::SelectInto(it) => &it.syntax,
31710 Stmt::Set(it) => &it.syntax,
31711 Stmt::SetConstraints(it) => &it.syntax,
31712 Stmt::SetRole(it) => &it.syntax,
31713 Stmt::SetSessionAuth(it) => &it.syntax,
31714 Stmt::SetTransaction(it) => &it.syntax,
31715 Stmt::Show(it) => &it.syntax,
31716 Stmt::Table(it) => &it.syntax,
31717 Stmt::Truncate(it) => &it.syntax,
31718 Stmt::Unlisten(it) => &it.syntax,
31719 Stmt::Update(it) => &it.syntax,
31720 Stmt::Vacuum(it) => &it.syntax,
31721 Stmt::Values(it) => &it.syntax,
31722 }
31723 }
31724}
31725impl From<AlterAggregate> for Stmt {
31726 #[inline]
31727 fn from(node: AlterAggregate) -> Stmt {
31728 Stmt::AlterAggregate(node)
31729 }
31730}
31731impl From<AlterCollation> for Stmt {
31732 #[inline]
31733 fn from(node: AlterCollation) -> Stmt {
31734 Stmt::AlterCollation(node)
31735 }
31736}
31737impl From<AlterConversion> for Stmt {
31738 #[inline]
31739 fn from(node: AlterConversion) -> Stmt {
31740 Stmt::AlterConversion(node)
31741 }
31742}
31743impl From<AlterDatabase> for Stmt {
31744 #[inline]
31745 fn from(node: AlterDatabase) -> Stmt {
31746 Stmt::AlterDatabase(node)
31747 }
31748}
31749impl From<AlterDefaultPrivileges> for Stmt {
31750 #[inline]
31751 fn from(node: AlterDefaultPrivileges) -> Stmt {
31752 Stmt::AlterDefaultPrivileges(node)
31753 }
31754}
31755impl From<AlterDomain> for Stmt {
31756 #[inline]
31757 fn from(node: AlterDomain) -> Stmt {
31758 Stmt::AlterDomain(node)
31759 }
31760}
31761impl From<AlterEventTrigger> for Stmt {
31762 #[inline]
31763 fn from(node: AlterEventTrigger) -> Stmt {
31764 Stmt::AlterEventTrigger(node)
31765 }
31766}
31767impl From<AlterExtension> for Stmt {
31768 #[inline]
31769 fn from(node: AlterExtension) -> Stmt {
31770 Stmt::AlterExtension(node)
31771 }
31772}
31773impl From<AlterForeignDataWrapper> for Stmt {
31774 #[inline]
31775 fn from(node: AlterForeignDataWrapper) -> Stmt {
31776 Stmt::AlterForeignDataWrapper(node)
31777 }
31778}
31779impl From<AlterForeignTable> for Stmt {
31780 #[inline]
31781 fn from(node: AlterForeignTable) -> Stmt {
31782 Stmt::AlterForeignTable(node)
31783 }
31784}
31785impl From<AlterFunction> for Stmt {
31786 #[inline]
31787 fn from(node: AlterFunction) -> Stmt {
31788 Stmt::AlterFunction(node)
31789 }
31790}
31791impl From<AlterGroup> for Stmt {
31792 #[inline]
31793 fn from(node: AlterGroup) -> Stmt {
31794 Stmt::AlterGroup(node)
31795 }
31796}
31797impl From<AlterIndex> for Stmt {
31798 #[inline]
31799 fn from(node: AlterIndex) -> Stmt {
31800 Stmt::AlterIndex(node)
31801 }
31802}
31803impl From<AlterLanguage> for Stmt {
31804 #[inline]
31805 fn from(node: AlterLanguage) -> Stmt {
31806 Stmt::AlterLanguage(node)
31807 }
31808}
31809impl From<AlterLargeObject> for Stmt {
31810 #[inline]
31811 fn from(node: AlterLargeObject) -> Stmt {
31812 Stmt::AlterLargeObject(node)
31813 }
31814}
31815impl From<AlterMaterializedView> for Stmt {
31816 #[inline]
31817 fn from(node: AlterMaterializedView) -> Stmt {
31818 Stmt::AlterMaterializedView(node)
31819 }
31820}
31821impl From<AlterOperator> for Stmt {
31822 #[inline]
31823 fn from(node: AlterOperator) -> Stmt {
31824 Stmt::AlterOperator(node)
31825 }
31826}
31827impl From<AlterOperatorClass> for Stmt {
31828 #[inline]
31829 fn from(node: AlterOperatorClass) -> Stmt {
31830 Stmt::AlterOperatorClass(node)
31831 }
31832}
31833impl From<AlterOperatorFamily> for Stmt {
31834 #[inline]
31835 fn from(node: AlterOperatorFamily) -> Stmt {
31836 Stmt::AlterOperatorFamily(node)
31837 }
31838}
31839impl From<AlterPolicy> for Stmt {
31840 #[inline]
31841 fn from(node: AlterPolicy) -> Stmt {
31842 Stmt::AlterPolicy(node)
31843 }
31844}
31845impl From<AlterProcedure> for Stmt {
31846 #[inline]
31847 fn from(node: AlterProcedure) -> Stmt {
31848 Stmt::AlterProcedure(node)
31849 }
31850}
31851impl From<AlterPublication> for Stmt {
31852 #[inline]
31853 fn from(node: AlterPublication) -> Stmt {
31854 Stmt::AlterPublication(node)
31855 }
31856}
31857impl From<AlterRole> for Stmt {
31858 #[inline]
31859 fn from(node: AlterRole) -> Stmt {
31860 Stmt::AlterRole(node)
31861 }
31862}
31863impl From<AlterRoutine> for Stmt {
31864 #[inline]
31865 fn from(node: AlterRoutine) -> Stmt {
31866 Stmt::AlterRoutine(node)
31867 }
31868}
31869impl From<AlterRule> for Stmt {
31870 #[inline]
31871 fn from(node: AlterRule) -> Stmt {
31872 Stmt::AlterRule(node)
31873 }
31874}
31875impl From<AlterSchema> for Stmt {
31876 #[inline]
31877 fn from(node: AlterSchema) -> Stmt {
31878 Stmt::AlterSchema(node)
31879 }
31880}
31881impl From<AlterSequence> for Stmt {
31882 #[inline]
31883 fn from(node: AlterSequence) -> Stmt {
31884 Stmt::AlterSequence(node)
31885 }
31886}
31887impl From<AlterServer> for Stmt {
31888 #[inline]
31889 fn from(node: AlterServer) -> Stmt {
31890 Stmt::AlterServer(node)
31891 }
31892}
31893impl From<AlterStatistics> for Stmt {
31894 #[inline]
31895 fn from(node: AlterStatistics) -> Stmt {
31896 Stmt::AlterStatistics(node)
31897 }
31898}
31899impl From<AlterSubscription> for Stmt {
31900 #[inline]
31901 fn from(node: AlterSubscription) -> Stmt {
31902 Stmt::AlterSubscription(node)
31903 }
31904}
31905impl From<AlterSystem> for Stmt {
31906 #[inline]
31907 fn from(node: AlterSystem) -> Stmt {
31908 Stmt::AlterSystem(node)
31909 }
31910}
31911impl From<AlterTable> for Stmt {
31912 #[inline]
31913 fn from(node: AlterTable) -> Stmt {
31914 Stmt::AlterTable(node)
31915 }
31916}
31917impl From<AlterTablespace> for Stmt {
31918 #[inline]
31919 fn from(node: AlterTablespace) -> Stmt {
31920 Stmt::AlterTablespace(node)
31921 }
31922}
31923impl From<AlterTextSearchConfiguration> for Stmt {
31924 #[inline]
31925 fn from(node: AlterTextSearchConfiguration) -> Stmt {
31926 Stmt::AlterTextSearchConfiguration(node)
31927 }
31928}
31929impl From<AlterTextSearchDictionary> for Stmt {
31930 #[inline]
31931 fn from(node: AlterTextSearchDictionary) -> Stmt {
31932 Stmt::AlterTextSearchDictionary(node)
31933 }
31934}
31935impl From<AlterTextSearchParser> for Stmt {
31936 #[inline]
31937 fn from(node: AlterTextSearchParser) -> Stmt {
31938 Stmt::AlterTextSearchParser(node)
31939 }
31940}
31941impl From<AlterTextSearchTemplate> for Stmt {
31942 #[inline]
31943 fn from(node: AlterTextSearchTemplate) -> Stmt {
31944 Stmt::AlterTextSearchTemplate(node)
31945 }
31946}
31947impl From<AlterTrigger> for Stmt {
31948 #[inline]
31949 fn from(node: AlterTrigger) -> Stmt {
31950 Stmt::AlterTrigger(node)
31951 }
31952}
31953impl From<AlterType> for Stmt {
31954 #[inline]
31955 fn from(node: AlterType) -> Stmt {
31956 Stmt::AlterType(node)
31957 }
31958}
31959impl From<AlterUser> for Stmt {
31960 #[inline]
31961 fn from(node: AlterUser) -> Stmt {
31962 Stmt::AlterUser(node)
31963 }
31964}
31965impl From<AlterUserMapping> for Stmt {
31966 #[inline]
31967 fn from(node: AlterUserMapping) -> Stmt {
31968 Stmt::AlterUserMapping(node)
31969 }
31970}
31971impl From<AlterView> for Stmt {
31972 #[inline]
31973 fn from(node: AlterView) -> Stmt {
31974 Stmt::AlterView(node)
31975 }
31976}
31977impl From<Analyze> for Stmt {
31978 #[inline]
31979 fn from(node: Analyze) -> Stmt {
31980 Stmt::Analyze(node)
31981 }
31982}
31983impl From<Begin> for Stmt {
31984 #[inline]
31985 fn from(node: Begin) -> Stmt {
31986 Stmt::Begin(node)
31987 }
31988}
31989impl From<Call> for Stmt {
31990 #[inline]
31991 fn from(node: Call) -> Stmt {
31992 Stmt::Call(node)
31993 }
31994}
31995impl From<Checkpoint> for Stmt {
31996 #[inline]
31997 fn from(node: Checkpoint) -> Stmt {
31998 Stmt::Checkpoint(node)
31999 }
32000}
32001impl From<Close> for Stmt {
32002 #[inline]
32003 fn from(node: Close) -> Stmt {
32004 Stmt::Close(node)
32005 }
32006}
32007impl From<Cluster> for Stmt {
32008 #[inline]
32009 fn from(node: Cluster) -> Stmt {
32010 Stmt::Cluster(node)
32011 }
32012}
32013impl From<CommentOn> for Stmt {
32014 #[inline]
32015 fn from(node: CommentOn) -> Stmt {
32016 Stmt::CommentOn(node)
32017 }
32018}
32019impl From<Commit> for Stmt {
32020 #[inline]
32021 fn from(node: Commit) -> Stmt {
32022 Stmt::Commit(node)
32023 }
32024}
32025impl From<Copy> for Stmt {
32026 #[inline]
32027 fn from(node: Copy) -> Stmt {
32028 Stmt::Copy(node)
32029 }
32030}
32031impl From<CreateAccessMethod> for Stmt {
32032 #[inline]
32033 fn from(node: CreateAccessMethod) -> Stmt {
32034 Stmt::CreateAccessMethod(node)
32035 }
32036}
32037impl From<CreateAggregate> for Stmt {
32038 #[inline]
32039 fn from(node: CreateAggregate) -> Stmt {
32040 Stmt::CreateAggregate(node)
32041 }
32042}
32043impl From<CreateCast> for Stmt {
32044 #[inline]
32045 fn from(node: CreateCast) -> Stmt {
32046 Stmt::CreateCast(node)
32047 }
32048}
32049impl From<CreateCollation> for Stmt {
32050 #[inline]
32051 fn from(node: CreateCollation) -> Stmt {
32052 Stmt::CreateCollation(node)
32053 }
32054}
32055impl From<CreateConversion> for Stmt {
32056 #[inline]
32057 fn from(node: CreateConversion) -> Stmt {
32058 Stmt::CreateConversion(node)
32059 }
32060}
32061impl From<CreateDatabase> for Stmt {
32062 #[inline]
32063 fn from(node: CreateDatabase) -> Stmt {
32064 Stmt::CreateDatabase(node)
32065 }
32066}
32067impl From<CreateDomain> for Stmt {
32068 #[inline]
32069 fn from(node: CreateDomain) -> Stmt {
32070 Stmt::CreateDomain(node)
32071 }
32072}
32073impl From<CreateEventTrigger> for Stmt {
32074 #[inline]
32075 fn from(node: CreateEventTrigger) -> Stmt {
32076 Stmt::CreateEventTrigger(node)
32077 }
32078}
32079impl From<CreateExtension> for Stmt {
32080 #[inline]
32081 fn from(node: CreateExtension) -> Stmt {
32082 Stmt::CreateExtension(node)
32083 }
32084}
32085impl From<CreateForeignDataWrapper> for Stmt {
32086 #[inline]
32087 fn from(node: CreateForeignDataWrapper) -> Stmt {
32088 Stmt::CreateForeignDataWrapper(node)
32089 }
32090}
32091impl From<CreateForeignTable> for Stmt {
32092 #[inline]
32093 fn from(node: CreateForeignTable) -> Stmt {
32094 Stmt::CreateForeignTable(node)
32095 }
32096}
32097impl From<CreateFunction> for Stmt {
32098 #[inline]
32099 fn from(node: CreateFunction) -> Stmt {
32100 Stmt::CreateFunction(node)
32101 }
32102}
32103impl From<CreateGroup> for Stmt {
32104 #[inline]
32105 fn from(node: CreateGroup) -> Stmt {
32106 Stmt::CreateGroup(node)
32107 }
32108}
32109impl From<CreateIndex> for Stmt {
32110 #[inline]
32111 fn from(node: CreateIndex) -> Stmt {
32112 Stmt::CreateIndex(node)
32113 }
32114}
32115impl From<CreateLanguage> for Stmt {
32116 #[inline]
32117 fn from(node: CreateLanguage) -> Stmt {
32118 Stmt::CreateLanguage(node)
32119 }
32120}
32121impl From<CreateMaterializedView> for Stmt {
32122 #[inline]
32123 fn from(node: CreateMaterializedView) -> Stmt {
32124 Stmt::CreateMaterializedView(node)
32125 }
32126}
32127impl From<CreateOperator> for Stmt {
32128 #[inline]
32129 fn from(node: CreateOperator) -> Stmt {
32130 Stmt::CreateOperator(node)
32131 }
32132}
32133impl From<CreateOperatorClass> for Stmt {
32134 #[inline]
32135 fn from(node: CreateOperatorClass) -> Stmt {
32136 Stmt::CreateOperatorClass(node)
32137 }
32138}
32139impl From<CreateOperatorFamily> for Stmt {
32140 #[inline]
32141 fn from(node: CreateOperatorFamily) -> Stmt {
32142 Stmt::CreateOperatorFamily(node)
32143 }
32144}
32145impl From<CreatePolicy> for Stmt {
32146 #[inline]
32147 fn from(node: CreatePolicy) -> Stmt {
32148 Stmt::CreatePolicy(node)
32149 }
32150}
32151impl From<CreateProcedure> for Stmt {
32152 #[inline]
32153 fn from(node: CreateProcedure) -> Stmt {
32154 Stmt::CreateProcedure(node)
32155 }
32156}
32157impl From<CreatePublication> for Stmt {
32158 #[inline]
32159 fn from(node: CreatePublication) -> Stmt {
32160 Stmt::CreatePublication(node)
32161 }
32162}
32163impl From<CreateRole> for Stmt {
32164 #[inline]
32165 fn from(node: CreateRole) -> Stmt {
32166 Stmt::CreateRole(node)
32167 }
32168}
32169impl From<CreateRule> for Stmt {
32170 #[inline]
32171 fn from(node: CreateRule) -> Stmt {
32172 Stmt::CreateRule(node)
32173 }
32174}
32175impl From<CreateSchema> for Stmt {
32176 #[inline]
32177 fn from(node: CreateSchema) -> Stmt {
32178 Stmt::CreateSchema(node)
32179 }
32180}
32181impl From<CreateSequence> for Stmt {
32182 #[inline]
32183 fn from(node: CreateSequence) -> Stmt {
32184 Stmt::CreateSequence(node)
32185 }
32186}
32187impl From<CreateServer> for Stmt {
32188 #[inline]
32189 fn from(node: CreateServer) -> Stmt {
32190 Stmt::CreateServer(node)
32191 }
32192}
32193impl From<CreateStatistics> for Stmt {
32194 #[inline]
32195 fn from(node: CreateStatistics) -> Stmt {
32196 Stmt::CreateStatistics(node)
32197 }
32198}
32199impl From<CreateSubscription> for Stmt {
32200 #[inline]
32201 fn from(node: CreateSubscription) -> Stmt {
32202 Stmt::CreateSubscription(node)
32203 }
32204}
32205impl From<CreateTable> for Stmt {
32206 #[inline]
32207 fn from(node: CreateTable) -> Stmt {
32208 Stmt::CreateTable(node)
32209 }
32210}
32211impl From<CreateTableAs> for Stmt {
32212 #[inline]
32213 fn from(node: CreateTableAs) -> Stmt {
32214 Stmt::CreateTableAs(node)
32215 }
32216}
32217impl From<CreateTablespace> for Stmt {
32218 #[inline]
32219 fn from(node: CreateTablespace) -> Stmt {
32220 Stmt::CreateTablespace(node)
32221 }
32222}
32223impl From<CreateTextSearchConfiguration> for Stmt {
32224 #[inline]
32225 fn from(node: CreateTextSearchConfiguration) -> Stmt {
32226 Stmt::CreateTextSearchConfiguration(node)
32227 }
32228}
32229impl From<CreateTextSearchDictionary> for Stmt {
32230 #[inline]
32231 fn from(node: CreateTextSearchDictionary) -> Stmt {
32232 Stmt::CreateTextSearchDictionary(node)
32233 }
32234}
32235impl From<CreateTextSearchParser> for Stmt {
32236 #[inline]
32237 fn from(node: CreateTextSearchParser) -> Stmt {
32238 Stmt::CreateTextSearchParser(node)
32239 }
32240}
32241impl From<CreateTextSearchTemplate> for Stmt {
32242 #[inline]
32243 fn from(node: CreateTextSearchTemplate) -> Stmt {
32244 Stmt::CreateTextSearchTemplate(node)
32245 }
32246}
32247impl From<CreateTransform> for Stmt {
32248 #[inline]
32249 fn from(node: CreateTransform) -> Stmt {
32250 Stmt::CreateTransform(node)
32251 }
32252}
32253impl From<CreateTrigger> for Stmt {
32254 #[inline]
32255 fn from(node: CreateTrigger) -> Stmt {
32256 Stmt::CreateTrigger(node)
32257 }
32258}
32259impl From<CreateType> for Stmt {
32260 #[inline]
32261 fn from(node: CreateType) -> Stmt {
32262 Stmt::CreateType(node)
32263 }
32264}
32265impl From<CreateUser> for Stmt {
32266 #[inline]
32267 fn from(node: CreateUser) -> Stmt {
32268 Stmt::CreateUser(node)
32269 }
32270}
32271impl From<CreateUserMapping> for Stmt {
32272 #[inline]
32273 fn from(node: CreateUserMapping) -> Stmt {
32274 Stmt::CreateUserMapping(node)
32275 }
32276}
32277impl From<CreateView> for Stmt {
32278 #[inline]
32279 fn from(node: CreateView) -> Stmt {
32280 Stmt::CreateView(node)
32281 }
32282}
32283impl From<Deallocate> for Stmt {
32284 #[inline]
32285 fn from(node: Deallocate) -> Stmt {
32286 Stmt::Deallocate(node)
32287 }
32288}
32289impl From<Declare> for Stmt {
32290 #[inline]
32291 fn from(node: Declare) -> Stmt {
32292 Stmt::Declare(node)
32293 }
32294}
32295impl From<Delete> for Stmt {
32296 #[inline]
32297 fn from(node: Delete) -> Stmt {
32298 Stmt::Delete(node)
32299 }
32300}
32301impl From<Discard> for Stmt {
32302 #[inline]
32303 fn from(node: Discard) -> Stmt {
32304 Stmt::Discard(node)
32305 }
32306}
32307impl From<Do> for Stmt {
32308 #[inline]
32309 fn from(node: Do) -> Stmt {
32310 Stmt::Do(node)
32311 }
32312}
32313impl From<DropAccessMethod> for Stmt {
32314 #[inline]
32315 fn from(node: DropAccessMethod) -> Stmt {
32316 Stmt::DropAccessMethod(node)
32317 }
32318}
32319impl From<DropAggregate> for Stmt {
32320 #[inline]
32321 fn from(node: DropAggregate) -> Stmt {
32322 Stmt::DropAggregate(node)
32323 }
32324}
32325impl From<DropCast> for Stmt {
32326 #[inline]
32327 fn from(node: DropCast) -> Stmt {
32328 Stmt::DropCast(node)
32329 }
32330}
32331impl From<DropCollation> for Stmt {
32332 #[inline]
32333 fn from(node: DropCollation) -> Stmt {
32334 Stmt::DropCollation(node)
32335 }
32336}
32337impl From<DropConversion> for Stmt {
32338 #[inline]
32339 fn from(node: DropConversion) -> Stmt {
32340 Stmt::DropConversion(node)
32341 }
32342}
32343impl From<DropDatabase> for Stmt {
32344 #[inline]
32345 fn from(node: DropDatabase) -> Stmt {
32346 Stmt::DropDatabase(node)
32347 }
32348}
32349impl From<DropDomain> for Stmt {
32350 #[inline]
32351 fn from(node: DropDomain) -> Stmt {
32352 Stmt::DropDomain(node)
32353 }
32354}
32355impl From<DropEventTrigger> for Stmt {
32356 #[inline]
32357 fn from(node: DropEventTrigger) -> Stmt {
32358 Stmt::DropEventTrigger(node)
32359 }
32360}
32361impl From<DropExtension> for Stmt {
32362 #[inline]
32363 fn from(node: DropExtension) -> Stmt {
32364 Stmt::DropExtension(node)
32365 }
32366}
32367impl From<DropForeignDataWrapper> for Stmt {
32368 #[inline]
32369 fn from(node: DropForeignDataWrapper) -> Stmt {
32370 Stmt::DropForeignDataWrapper(node)
32371 }
32372}
32373impl From<DropForeignTable> for Stmt {
32374 #[inline]
32375 fn from(node: DropForeignTable) -> Stmt {
32376 Stmt::DropForeignTable(node)
32377 }
32378}
32379impl From<DropFunction> for Stmt {
32380 #[inline]
32381 fn from(node: DropFunction) -> Stmt {
32382 Stmt::DropFunction(node)
32383 }
32384}
32385impl From<DropGroup> for Stmt {
32386 #[inline]
32387 fn from(node: DropGroup) -> Stmt {
32388 Stmt::DropGroup(node)
32389 }
32390}
32391impl From<DropIndex> for Stmt {
32392 #[inline]
32393 fn from(node: DropIndex) -> Stmt {
32394 Stmt::DropIndex(node)
32395 }
32396}
32397impl From<DropLanguage> for Stmt {
32398 #[inline]
32399 fn from(node: DropLanguage) -> Stmt {
32400 Stmt::DropLanguage(node)
32401 }
32402}
32403impl From<DropMaterializedView> for Stmt {
32404 #[inline]
32405 fn from(node: DropMaterializedView) -> Stmt {
32406 Stmt::DropMaterializedView(node)
32407 }
32408}
32409impl From<DropOperator> for Stmt {
32410 #[inline]
32411 fn from(node: DropOperator) -> Stmt {
32412 Stmt::DropOperator(node)
32413 }
32414}
32415impl From<DropOperatorClass> for Stmt {
32416 #[inline]
32417 fn from(node: DropOperatorClass) -> Stmt {
32418 Stmt::DropOperatorClass(node)
32419 }
32420}
32421impl From<DropOperatorFamily> for Stmt {
32422 #[inline]
32423 fn from(node: DropOperatorFamily) -> Stmt {
32424 Stmt::DropOperatorFamily(node)
32425 }
32426}
32427impl From<DropOwned> for Stmt {
32428 #[inline]
32429 fn from(node: DropOwned) -> Stmt {
32430 Stmt::DropOwned(node)
32431 }
32432}
32433impl From<DropPolicy> for Stmt {
32434 #[inline]
32435 fn from(node: DropPolicy) -> Stmt {
32436 Stmt::DropPolicy(node)
32437 }
32438}
32439impl From<DropProcedure> for Stmt {
32440 #[inline]
32441 fn from(node: DropProcedure) -> Stmt {
32442 Stmt::DropProcedure(node)
32443 }
32444}
32445impl From<DropPublication> for Stmt {
32446 #[inline]
32447 fn from(node: DropPublication) -> Stmt {
32448 Stmt::DropPublication(node)
32449 }
32450}
32451impl From<DropRole> for Stmt {
32452 #[inline]
32453 fn from(node: DropRole) -> Stmt {
32454 Stmt::DropRole(node)
32455 }
32456}
32457impl From<DropRoutine> for Stmt {
32458 #[inline]
32459 fn from(node: DropRoutine) -> Stmt {
32460 Stmt::DropRoutine(node)
32461 }
32462}
32463impl From<DropRule> for Stmt {
32464 #[inline]
32465 fn from(node: DropRule) -> Stmt {
32466 Stmt::DropRule(node)
32467 }
32468}
32469impl From<DropSchema> for Stmt {
32470 #[inline]
32471 fn from(node: DropSchema) -> Stmt {
32472 Stmt::DropSchema(node)
32473 }
32474}
32475impl From<DropSequence> for Stmt {
32476 #[inline]
32477 fn from(node: DropSequence) -> Stmt {
32478 Stmt::DropSequence(node)
32479 }
32480}
32481impl From<DropServer> for Stmt {
32482 #[inline]
32483 fn from(node: DropServer) -> Stmt {
32484 Stmt::DropServer(node)
32485 }
32486}
32487impl From<DropStatistics> for Stmt {
32488 #[inline]
32489 fn from(node: DropStatistics) -> Stmt {
32490 Stmt::DropStatistics(node)
32491 }
32492}
32493impl From<DropSubscription> for Stmt {
32494 #[inline]
32495 fn from(node: DropSubscription) -> Stmt {
32496 Stmt::DropSubscription(node)
32497 }
32498}
32499impl From<DropTable> for Stmt {
32500 #[inline]
32501 fn from(node: DropTable) -> Stmt {
32502 Stmt::DropTable(node)
32503 }
32504}
32505impl From<DropTablespace> for Stmt {
32506 #[inline]
32507 fn from(node: DropTablespace) -> Stmt {
32508 Stmt::DropTablespace(node)
32509 }
32510}
32511impl From<DropTextSearchConfig> for Stmt {
32512 #[inline]
32513 fn from(node: DropTextSearchConfig) -> Stmt {
32514 Stmt::DropTextSearchConfig(node)
32515 }
32516}
32517impl From<DropTextSearchDict> for Stmt {
32518 #[inline]
32519 fn from(node: DropTextSearchDict) -> Stmt {
32520 Stmt::DropTextSearchDict(node)
32521 }
32522}
32523impl From<DropTextSearchParser> for Stmt {
32524 #[inline]
32525 fn from(node: DropTextSearchParser) -> Stmt {
32526 Stmt::DropTextSearchParser(node)
32527 }
32528}
32529impl From<DropTextSearchTemplate> for Stmt {
32530 #[inline]
32531 fn from(node: DropTextSearchTemplate) -> Stmt {
32532 Stmt::DropTextSearchTemplate(node)
32533 }
32534}
32535impl From<DropTransform> for Stmt {
32536 #[inline]
32537 fn from(node: DropTransform) -> Stmt {
32538 Stmt::DropTransform(node)
32539 }
32540}
32541impl From<DropTrigger> for Stmt {
32542 #[inline]
32543 fn from(node: DropTrigger) -> Stmt {
32544 Stmt::DropTrigger(node)
32545 }
32546}
32547impl From<DropType> for Stmt {
32548 #[inline]
32549 fn from(node: DropType) -> Stmt {
32550 Stmt::DropType(node)
32551 }
32552}
32553impl From<DropUser> for Stmt {
32554 #[inline]
32555 fn from(node: DropUser) -> Stmt {
32556 Stmt::DropUser(node)
32557 }
32558}
32559impl From<DropUserMapping> for Stmt {
32560 #[inline]
32561 fn from(node: DropUserMapping) -> Stmt {
32562 Stmt::DropUserMapping(node)
32563 }
32564}
32565impl From<DropView> for Stmt {
32566 #[inline]
32567 fn from(node: DropView) -> Stmt {
32568 Stmt::DropView(node)
32569 }
32570}
32571impl From<Execute> for Stmt {
32572 #[inline]
32573 fn from(node: Execute) -> Stmt {
32574 Stmt::Execute(node)
32575 }
32576}
32577impl From<Explain> for Stmt {
32578 #[inline]
32579 fn from(node: Explain) -> Stmt {
32580 Stmt::Explain(node)
32581 }
32582}
32583impl From<Fetch> for Stmt {
32584 #[inline]
32585 fn from(node: Fetch) -> Stmt {
32586 Stmt::Fetch(node)
32587 }
32588}
32589impl From<Grant> for Stmt {
32590 #[inline]
32591 fn from(node: Grant) -> Stmt {
32592 Stmt::Grant(node)
32593 }
32594}
32595impl From<ImportForeignSchema> for Stmt {
32596 #[inline]
32597 fn from(node: ImportForeignSchema) -> Stmt {
32598 Stmt::ImportForeignSchema(node)
32599 }
32600}
32601impl From<Insert> for Stmt {
32602 #[inline]
32603 fn from(node: Insert) -> Stmt {
32604 Stmt::Insert(node)
32605 }
32606}
32607impl From<Listen> for Stmt {
32608 #[inline]
32609 fn from(node: Listen) -> Stmt {
32610 Stmt::Listen(node)
32611 }
32612}
32613impl From<Load> for Stmt {
32614 #[inline]
32615 fn from(node: Load) -> Stmt {
32616 Stmt::Load(node)
32617 }
32618}
32619impl From<Lock> for Stmt {
32620 #[inline]
32621 fn from(node: Lock) -> Stmt {
32622 Stmt::Lock(node)
32623 }
32624}
32625impl From<Merge> for Stmt {
32626 #[inline]
32627 fn from(node: Merge) -> Stmt {
32628 Stmt::Merge(node)
32629 }
32630}
32631impl From<Move> for Stmt {
32632 #[inline]
32633 fn from(node: Move) -> Stmt {
32634 Stmt::Move(node)
32635 }
32636}
32637impl From<Notify> for Stmt {
32638 #[inline]
32639 fn from(node: Notify) -> Stmt {
32640 Stmt::Notify(node)
32641 }
32642}
32643impl From<ParenSelect> for Stmt {
32644 #[inline]
32645 fn from(node: ParenSelect) -> Stmt {
32646 Stmt::ParenSelect(node)
32647 }
32648}
32649impl From<Prepare> for Stmt {
32650 #[inline]
32651 fn from(node: Prepare) -> Stmt {
32652 Stmt::Prepare(node)
32653 }
32654}
32655impl From<PrepareTransaction> for Stmt {
32656 #[inline]
32657 fn from(node: PrepareTransaction) -> Stmt {
32658 Stmt::PrepareTransaction(node)
32659 }
32660}
32661impl From<Reassign> for Stmt {
32662 #[inline]
32663 fn from(node: Reassign) -> Stmt {
32664 Stmt::Reassign(node)
32665 }
32666}
32667impl From<Refresh> for Stmt {
32668 #[inline]
32669 fn from(node: Refresh) -> Stmt {
32670 Stmt::Refresh(node)
32671 }
32672}
32673impl From<Reindex> for Stmt {
32674 #[inline]
32675 fn from(node: Reindex) -> Stmt {
32676 Stmt::Reindex(node)
32677 }
32678}
32679impl From<ReleaseSavepoint> for Stmt {
32680 #[inline]
32681 fn from(node: ReleaseSavepoint) -> Stmt {
32682 Stmt::ReleaseSavepoint(node)
32683 }
32684}
32685impl From<Reset> for Stmt {
32686 #[inline]
32687 fn from(node: Reset) -> Stmt {
32688 Stmt::Reset(node)
32689 }
32690}
32691impl From<ResetSessionAuth> for Stmt {
32692 #[inline]
32693 fn from(node: ResetSessionAuth) -> Stmt {
32694 Stmt::ResetSessionAuth(node)
32695 }
32696}
32697impl From<Revoke> for Stmt {
32698 #[inline]
32699 fn from(node: Revoke) -> Stmt {
32700 Stmt::Revoke(node)
32701 }
32702}
32703impl From<Rollback> for Stmt {
32704 #[inline]
32705 fn from(node: Rollback) -> Stmt {
32706 Stmt::Rollback(node)
32707 }
32708}
32709impl From<Savepoint> for Stmt {
32710 #[inline]
32711 fn from(node: Savepoint) -> Stmt {
32712 Stmt::Savepoint(node)
32713 }
32714}
32715impl From<SecurityLabel> for Stmt {
32716 #[inline]
32717 fn from(node: SecurityLabel) -> Stmt {
32718 Stmt::SecurityLabel(node)
32719 }
32720}
32721impl From<Select> for Stmt {
32722 #[inline]
32723 fn from(node: Select) -> Stmt {
32724 Stmt::Select(node)
32725 }
32726}
32727impl From<SelectInto> for Stmt {
32728 #[inline]
32729 fn from(node: SelectInto) -> Stmt {
32730 Stmt::SelectInto(node)
32731 }
32732}
32733impl From<Set> for Stmt {
32734 #[inline]
32735 fn from(node: Set) -> Stmt {
32736 Stmt::Set(node)
32737 }
32738}
32739impl From<SetConstraints> for Stmt {
32740 #[inline]
32741 fn from(node: SetConstraints) -> Stmt {
32742 Stmt::SetConstraints(node)
32743 }
32744}
32745impl From<SetRole> for Stmt {
32746 #[inline]
32747 fn from(node: SetRole) -> Stmt {
32748 Stmt::SetRole(node)
32749 }
32750}
32751impl From<SetSessionAuth> for Stmt {
32752 #[inline]
32753 fn from(node: SetSessionAuth) -> Stmt {
32754 Stmt::SetSessionAuth(node)
32755 }
32756}
32757impl From<SetTransaction> for Stmt {
32758 #[inline]
32759 fn from(node: SetTransaction) -> Stmt {
32760 Stmt::SetTransaction(node)
32761 }
32762}
32763impl From<Show> for Stmt {
32764 #[inline]
32765 fn from(node: Show) -> Stmt {
32766 Stmt::Show(node)
32767 }
32768}
32769impl From<Table> for Stmt {
32770 #[inline]
32771 fn from(node: Table) -> Stmt {
32772 Stmt::Table(node)
32773 }
32774}
32775impl From<Truncate> for Stmt {
32776 #[inline]
32777 fn from(node: Truncate) -> Stmt {
32778 Stmt::Truncate(node)
32779 }
32780}
32781impl From<Unlisten> for Stmt {
32782 #[inline]
32783 fn from(node: Unlisten) -> Stmt {
32784 Stmt::Unlisten(node)
32785 }
32786}
32787impl From<Update> for Stmt {
32788 #[inline]
32789 fn from(node: Update) -> Stmt {
32790 Stmt::Update(node)
32791 }
32792}
32793impl From<Vacuum> for Stmt {
32794 #[inline]
32795 fn from(node: Vacuum) -> Stmt {
32796 Stmt::Vacuum(node)
32797 }
32798}
32799impl From<Values> for Stmt {
32800 #[inline]
32801 fn from(node: Values) -> Stmt {
32802 Stmt::Values(node)
32803 }
32804}
32805impl AstNode for TableArg {
32806 #[inline]
32807 fn can_cast(kind: SyntaxKind) -> bool {
32808 matches!(kind, SyntaxKind::COLUMN | SyntaxKind::LIKE_CLAUSE)
32809 }
32810 #[inline]
32811 fn cast(syntax: SyntaxNode) -> Option<Self> {
32812 let res = match syntax.kind() {
32813 SyntaxKind::COLUMN => TableArg::Column(Column { syntax }),
32814 SyntaxKind::LIKE_CLAUSE => TableArg::LikeClause(LikeClause { syntax }),
32815 _ => {
32816 if let Some(result) = TableConstraint::cast(syntax) {
32817 return Some(TableArg::TableConstraint(result));
32818 }
32819 return None;
32820 }
32821 };
32822 Some(res)
32823 }
32824 #[inline]
32825 fn syntax(&self) -> &SyntaxNode {
32826 match self {
32827 TableArg::Column(it) => &it.syntax,
32828 TableArg::LikeClause(it) => &it.syntax,
32829 TableArg::TableConstraint(it) => it.syntax(),
32830 }
32831 }
32832}
32833impl From<Column> for TableArg {
32834 #[inline]
32835 fn from(node: Column) -> TableArg {
32836 TableArg::Column(node)
32837 }
32838}
32839impl From<LikeClause> for TableArg {
32840 #[inline]
32841 fn from(node: LikeClause) -> TableArg {
32842 TableArg::LikeClause(node)
32843 }
32844}
32845impl AstNode for TableConstraint {
32846 #[inline]
32847 fn can_cast(kind: SyntaxKind) -> bool {
32848 matches!(
32849 kind,
32850 SyntaxKind::CHECK_CONSTRAINT
32851 | SyntaxKind::EXCLUDE_CONSTRAINT
32852 | SyntaxKind::FOREIGN_KEY_CONSTRAINT
32853 | SyntaxKind::PRIMARY_KEY_CONSTRAINT
32854 | SyntaxKind::UNIQUE_CONSTRAINT
32855 )
32856 }
32857 #[inline]
32858 fn cast(syntax: SyntaxNode) -> Option<Self> {
32859 let res = match syntax.kind() {
32860 SyntaxKind::CHECK_CONSTRAINT => {
32861 TableConstraint::CheckConstraint(CheckConstraint { syntax })
32862 }
32863 SyntaxKind::EXCLUDE_CONSTRAINT => {
32864 TableConstraint::ExcludeConstraint(ExcludeConstraint { syntax })
32865 }
32866 SyntaxKind::FOREIGN_KEY_CONSTRAINT => {
32867 TableConstraint::ForeignKeyConstraint(ForeignKeyConstraint { syntax })
32868 }
32869 SyntaxKind::PRIMARY_KEY_CONSTRAINT => {
32870 TableConstraint::PrimaryKeyConstraint(PrimaryKeyConstraint { syntax })
32871 }
32872 SyntaxKind::UNIQUE_CONSTRAINT => {
32873 TableConstraint::UniqueConstraint(UniqueConstraint { syntax })
32874 }
32875 _ => {
32876 return None;
32877 }
32878 };
32879 Some(res)
32880 }
32881 #[inline]
32882 fn syntax(&self) -> &SyntaxNode {
32883 match self {
32884 TableConstraint::CheckConstraint(it) => &it.syntax,
32885 TableConstraint::ExcludeConstraint(it) => &it.syntax,
32886 TableConstraint::ForeignKeyConstraint(it) => &it.syntax,
32887 TableConstraint::PrimaryKeyConstraint(it) => &it.syntax,
32888 TableConstraint::UniqueConstraint(it) => &it.syntax,
32889 }
32890 }
32891}
32892impl From<CheckConstraint> for TableConstraint {
32893 #[inline]
32894 fn from(node: CheckConstraint) -> TableConstraint {
32895 TableConstraint::CheckConstraint(node)
32896 }
32897}
32898impl From<ExcludeConstraint> for TableConstraint {
32899 #[inline]
32900 fn from(node: ExcludeConstraint) -> TableConstraint {
32901 TableConstraint::ExcludeConstraint(node)
32902 }
32903}
32904impl From<ForeignKeyConstraint> for TableConstraint {
32905 #[inline]
32906 fn from(node: ForeignKeyConstraint) -> TableConstraint {
32907 TableConstraint::ForeignKeyConstraint(node)
32908 }
32909}
32910impl From<PrimaryKeyConstraint> for TableConstraint {
32911 #[inline]
32912 fn from(node: PrimaryKeyConstraint) -> TableConstraint {
32913 TableConstraint::PrimaryKeyConstraint(node)
32914 }
32915}
32916impl From<UniqueConstraint> for TableConstraint {
32917 #[inline]
32918 fn from(node: UniqueConstraint) -> TableConstraint {
32919 TableConstraint::UniqueConstraint(node)
32920 }
32921}
32922impl AstNode for Timezone {
32923 #[inline]
32924 fn can_cast(kind: SyntaxKind) -> bool {
32925 matches!(
32926 kind,
32927 SyntaxKind::WITH_TIMEZONE | SyntaxKind::WITHOUT_TIMEZONE
32928 )
32929 }
32930 #[inline]
32931 fn cast(syntax: SyntaxNode) -> Option<Self> {
32932 let res = match syntax.kind() {
32933 SyntaxKind::WITH_TIMEZONE => Timezone::WithTimezone(WithTimezone { syntax }),
32934 SyntaxKind::WITHOUT_TIMEZONE => Timezone::WithoutTimezone(WithoutTimezone { syntax }),
32935 _ => {
32936 return None;
32937 }
32938 };
32939 Some(res)
32940 }
32941 #[inline]
32942 fn syntax(&self) -> &SyntaxNode {
32943 match self {
32944 Timezone::WithTimezone(it) => &it.syntax,
32945 Timezone::WithoutTimezone(it) => &it.syntax,
32946 }
32947 }
32948}
32949impl From<WithTimezone> for Timezone {
32950 #[inline]
32951 fn from(node: WithTimezone) -> Timezone {
32952 Timezone::WithTimezone(node)
32953 }
32954}
32955impl From<WithoutTimezone> for Timezone {
32956 #[inline]
32957 fn from(node: WithoutTimezone) -> Timezone {
32958 Timezone::WithoutTimezone(node)
32959 }
32960}
32961impl AstNode for TransactionMode {
32962 #[inline]
32963 fn can_cast(kind: SyntaxKind) -> bool {
32964 matches!(
32965 kind,
32966 SyntaxKind::DEFERRABLE
32967 | SyntaxKind::NOT_DEFERRABLE
32968 | SyntaxKind::READ_COMMITTED
32969 | SyntaxKind::READ_ONLY
32970 | SyntaxKind::READ_UNCOMMITTED
32971 | SyntaxKind::READ_WRITE
32972 | SyntaxKind::REPEATABLE_READ
32973 | SyntaxKind::SERIALIZABLE
32974 )
32975 }
32976 #[inline]
32977 fn cast(syntax: SyntaxNode) -> Option<Self> {
32978 let res = match syntax.kind() {
32979 SyntaxKind::DEFERRABLE => TransactionMode::Deferrable(Deferrable { syntax }),
32980 SyntaxKind::NOT_DEFERRABLE => TransactionMode::NotDeferrable(NotDeferrable { syntax }),
32981 SyntaxKind::READ_COMMITTED => TransactionMode::ReadCommitted(ReadCommitted { syntax }),
32982 SyntaxKind::READ_ONLY => TransactionMode::ReadOnly(ReadOnly { syntax }),
32983 SyntaxKind::READ_UNCOMMITTED => {
32984 TransactionMode::ReadUncommitted(ReadUncommitted { syntax })
32985 }
32986 SyntaxKind::READ_WRITE => TransactionMode::ReadWrite(ReadWrite { syntax }),
32987 SyntaxKind::REPEATABLE_READ => {
32988 TransactionMode::RepeatableRead(RepeatableRead { syntax })
32989 }
32990 SyntaxKind::SERIALIZABLE => TransactionMode::Serializable(Serializable { syntax }),
32991 _ => {
32992 return None;
32993 }
32994 };
32995 Some(res)
32996 }
32997 #[inline]
32998 fn syntax(&self) -> &SyntaxNode {
32999 match self {
33000 TransactionMode::Deferrable(it) => &it.syntax,
33001 TransactionMode::NotDeferrable(it) => &it.syntax,
33002 TransactionMode::ReadCommitted(it) => &it.syntax,
33003 TransactionMode::ReadOnly(it) => &it.syntax,
33004 TransactionMode::ReadUncommitted(it) => &it.syntax,
33005 TransactionMode::ReadWrite(it) => &it.syntax,
33006 TransactionMode::RepeatableRead(it) => &it.syntax,
33007 TransactionMode::Serializable(it) => &it.syntax,
33008 }
33009 }
33010}
33011impl From<Deferrable> for TransactionMode {
33012 #[inline]
33013 fn from(node: Deferrable) -> TransactionMode {
33014 TransactionMode::Deferrable(node)
33015 }
33016}
33017impl From<NotDeferrable> for TransactionMode {
33018 #[inline]
33019 fn from(node: NotDeferrable) -> TransactionMode {
33020 TransactionMode::NotDeferrable(node)
33021 }
33022}
33023impl From<ReadCommitted> for TransactionMode {
33024 #[inline]
33025 fn from(node: ReadCommitted) -> TransactionMode {
33026 TransactionMode::ReadCommitted(node)
33027 }
33028}
33029impl From<ReadOnly> for TransactionMode {
33030 #[inline]
33031 fn from(node: ReadOnly) -> TransactionMode {
33032 TransactionMode::ReadOnly(node)
33033 }
33034}
33035impl From<ReadUncommitted> for TransactionMode {
33036 #[inline]
33037 fn from(node: ReadUncommitted) -> TransactionMode {
33038 TransactionMode::ReadUncommitted(node)
33039 }
33040}
33041impl From<ReadWrite> for TransactionMode {
33042 #[inline]
33043 fn from(node: ReadWrite) -> TransactionMode {
33044 TransactionMode::ReadWrite(node)
33045 }
33046}
33047impl From<RepeatableRead> for TransactionMode {
33048 #[inline]
33049 fn from(node: RepeatableRead) -> TransactionMode {
33050 TransactionMode::RepeatableRead(node)
33051 }
33052}
33053impl From<Serializable> for TransactionMode {
33054 #[inline]
33055 fn from(node: Serializable) -> TransactionMode {
33056 TransactionMode::Serializable(node)
33057 }
33058}
33059impl AstNode for Type {
33060 #[inline]
33061 fn can_cast(kind: SyntaxKind) -> bool {
33062 matches!(
33063 kind,
33064 SyntaxKind::ARRAY_TYPE
33065 | SyntaxKind::BIT_TYPE
33066 | SyntaxKind::CHAR_TYPE
33067 | SyntaxKind::DOUBLE_TYPE
33068 | SyntaxKind::EXPR_TYPE
33069 | SyntaxKind::INTERVAL_TYPE
33070 | SyntaxKind::PATH_TYPE
33071 | SyntaxKind::PERCENT_TYPE
33072 | SyntaxKind::TIME_TYPE
33073 )
33074 }
33075 #[inline]
33076 fn cast(syntax: SyntaxNode) -> Option<Self> {
33077 let res = match syntax.kind() {
33078 SyntaxKind::ARRAY_TYPE => Type::ArrayType(ArrayType { syntax }),
33079 SyntaxKind::BIT_TYPE => Type::BitType(BitType { syntax }),
33080 SyntaxKind::CHAR_TYPE => Type::CharType(CharType { syntax }),
33081 SyntaxKind::DOUBLE_TYPE => Type::DoubleType(DoubleType { syntax }),
33082 SyntaxKind::EXPR_TYPE => Type::ExprType(ExprType { syntax }),
33083 SyntaxKind::INTERVAL_TYPE => Type::IntervalType(IntervalType { syntax }),
33084 SyntaxKind::PATH_TYPE => Type::PathType(PathType { syntax }),
33085 SyntaxKind::PERCENT_TYPE => Type::PercentType(PercentType { syntax }),
33086 SyntaxKind::TIME_TYPE => Type::TimeType(TimeType { syntax }),
33087 _ => {
33088 return None;
33089 }
33090 };
33091 Some(res)
33092 }
33093 #[inline]
33094 fn syntax(&self) -> &SyntaxNode {
33095 match self {
33096 Type::ArrayType(it) => &it.syntax,
33097 Type::BitType(it) => &it.syntax,
33098 Type::CharType(it) => &it.syntax,
33099 Type::DoubleType(it) => &it.syntax,
33100 Type::ExprType(it) => &it.syntax,
33101 Type::IntervalType(it) => &it.syntax,
33102 Type::PathType(it) => &it.syntax,
33103 Type::PercentType(it) => &it.syntax,
33104 Type::TimeType(it) => &it.syntax,
33105 }
33106 }
33107}
33108impl From<ArrayType> for Type {
33109 #[inline]
33110 fn from(node: ArrayType) -> Type {
33111 Type::ArrayType(node)
33112 }
33113}
33114impl From<BitType> for Type {
33115 #[inline]
33116 fn from(node: BitType) -> Type {
33117 Type::BitType(node)
33118 }
33119}
33120impl From<CharType> for Type {
33121 #[inline]
33122 fn from(node: CharType) -> Type {
33123 Type::CharType(node)
33124 }
33125}
33126impl From<DoubleType> for Type {
33127 #[inline]
33128 fn from(node: DoubleType) -> Type {
33129 Type::DoubleType(node)
33130 }
33131}
33132impl From<ExprType> for Type {
33133 #[inline]
33134 fn from(node: ExprType) -> Type {
33135 Type::ExprType(node)
33136 }
33137}
33138impl From<IntervalType> for Type {
33139 #[inline]
33140 fn from(node: IntervalType) -> Type {
33141 Type::IntervalType(node)
33142 }
33143}
33144impl From<PathType> for Type {
33145 #[inline]
33146 fn from(node: PathType) -> Type {
33147 Type::PathType(node)
33148 }
33149}
33150impl From<PercentType> for Type {
33151 #[inline]
33152 fn from(node: PercentType) -> Type {
33153 Type::PercentType(node)
33154 }
33155}
33156impl From<TimeType> for Type {
33157 #[inline]
33158 fn from(node: TimeType) -> Type {
33159 Type::TimeType(node)
33160 }
33161}
33162impl AstNode for WithQuery {
33163 #[inline]
33164 fn can_cast(kind: SyntaxKind) -> bool {
33165 matches!(
33166 kind,
33167 SyntaxKind::COMPOUND_SELECT
33168 | SyntaxKind::DELETE
33169 | SyntaxKind::INSERT
33170 | SyntaxKind::MERGE
33171 | SyntaxKind::PAREN_SELECT
33172 | SyntaxKind::SELECT
33173 | SyntaxKind::TABLE
33174 | SyntaxKind::UPDATE
33175 | SyntaxKind::VALUES
33176 )
33177 }
33178 #[inline]
33179 fn cast(syntax: SyntaxNode) -> Option<Self> {
33180 let res = match syntax.kind() {
33181 SyntaxKind::COMPOUND_SELECT => WithQuery::CompoundSelect(CompoundSelect { syntax }),
33182 SyntaxKind::DELETE => WithQuery::Delete(Delete { syntax }),
33183 SyntaxKind::INSERT => WithQuery::Insert(Insert { syntax }),
33184 SyntaxKind::MERGE => WithQuery::Merge(Merge { syntax }),
33185 SyntaxKind::PAREN_SELECT => WithQuery::ParenSelect(ParenSelect { syntax }),
33186 SyntaxKind::SELECT => WithQuery::Select(Select { syntax }),
33187 SyntaxKind::TABLE => WithQuery::Table(Table { syntax }),
33188 SyntaxKind::UPDATE => WithQuery::Update(Update { syntax }),
33189 SyntaxKind::VALUES => WithQuery::Values(Values { syntax }),
33190 _ => {
33191 return None;
33192 }
33193 };
33194 Some(res)
33195 }
33196 #[inline]
33197 fn syntax(&self) -> &SyntaxNode {
33198 match self {
33199 WithQuery::CompoundSelect(it) => &it.syntax,
33200 WithQuery::Delete(it) => &it.syntax,
33201 WithQuery::Insert(it) => &it.syntax,
33202 WithQuery::Merge(it) => &it.syntax,
33203 WithQuery::ParenSelect(it) => &it.syntax,
33204 WithQuery::Select(it) => &it.syntax,
33205 WithQuery::Table(it) => &it.syntax,
33206 WithQuery::Update(it) => &it.syntax,
33207 WithQuery::Values(it) => &it.syntax,
33208 }
33209 }
33210}
33211impl From<CompoundSelect> for WithQuery {
33212 #[inline]
33213 fn from(node: CompoundSelect) -> WithQuery {
33214 WithQuery::CompoundSelect(node)
33215 }
33216}
33217impl From<Delete> for WithQuery {
33218 #[inline]
33219 fn from(node: Delete) -> WithQuery {
33220 WithQuery::Delete(node)
33221 }
33222}
33223impl From<Insert> for WithQuery {
33224 #[inline]
33225 fn from(node: Insert) -> WithQuery {
33226 WithQuery::Insert(node)
33227 }
33228}
33229impl From<Merge> for WithQuery {
33230 #[inline]
33231 fn from(node: Merge) -> WithQuery {
33232 WithQuery::Merge(node)
33233 }
33234}
33235impl From<ParenSelect> for WithQuery {
33236 #[inline]
33237 fn from(node: ParenSelect) -> WithQuery {
33238 WithQuery::ParenSelect(node)
33239 }
33240}
33241impl From<Select> for WithQuery {
33242 #[inline]
33243 fn from(node: Select) -> WithQuery {
33244 WithQuery::Select(node)
33245 }
33246}
33247impl From<Table> for WithQuery {
33248 #[inline]
33249 fn from(node: Table) -> WithQuery {
33250 WithQuery::Table(node)
33251 }
33252}
33253impl From<Update> for WithQuery {
33254 #[inline]
33255 fn from(node: Update) -> WithQuery {
33256 WithQuery::Update(node)
33257 }
33258}
33259impl From<Values> for WithQuery {
33260 #[inline]
33261 fn from(node: Values) -> WithQuery {
33262 WithQuery::Values(node)
33263 }
33264}