1use crate::SyntaxKind;
2use crate::ast::AstNode;
3use crate::ast::{AstChildren, support};
4use crate::syntax_node::SyntaxNode;
5use crate::syntax_node::SyntaxToken;
6
7#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8pub struct AddColumn {
9 pub(crate) syntax: SyntaxNode,
10}
11impl AddColumn {
12 #[inline]
13 pub fn collate(&self) -> Option<Collate> {
14 support::child(&self.syntax)
15 }
16 #[inline]
17 pub fn constraints(&self) -> AstChildren<Constraint> {
18 support::children(&self.syntax)
19 }
20 #[inline]
21 pub fn if_not_exists(&self) -> Option<IfNotExists> {
22 support::child(&self.syntax)
23 }
24 #[inline]
25 pub fn name(&self) -> Option<Name> {
26 support::child(&self.syntax)
27 }
28 #[inline]
29 pub fn ty(&self) -> Option<Type> {
30 support::child(&self.syntax)
31 }
32 #[inline]
33 pub fn add_token(&self) -> Option<SyntaxToken> {
34 support::token(&self.syntax, SyntaxKind::ADD_KW)
35 }
36 #[inline]
37 pub fn column_token(&self) -> Option<SyntaxToken> {
38 support::token(&self.syntax, SyntaxKind::COLUMN_KW)
39 }
40}
41
42#[derive(Debug, Clone, PartialEq, Eq, Hash)]
43pub struct AddConstraint {
44 pub(crate) syntax: SyntaxNode,
45}
46impl AddConstraint {
47 #[inline]
48 pub fn constraint(&self) -> Option<Constraint> {
49 support::child(&self.syntax)
50 }
51 #[inline]
52 pub fn deferrable_constraint_option(&self) -> Option<DeferrableConstraintOption> {
53 support::child(&self.syntax)
54 }
55 #[inline]
56 pub fn enforced(&self) -> Option<Enforced> {
57 support::child(&self.syntax)
58 }
59 #[inline]
60 pub fn initially_deferred_constraint_option(
61 &self,
62 ) -> Option<InitiallyDeferredConstraintOption> {
63 support::child(&self.syntax)
64 }
65 #[inline]
66 pub fn initially_immediate_constraint_option(
67 &self,
68 ) -> Option<InitiallyImmediateConstraintOption> {
69 support::child(&self.syntax)
70 }
71 #[inline]
72 pub fn no_inherit(&self) -> Option<NoInherit> {
73 support::child(&self.syntax)
74 }
75 #[inline]
76 pub fn not_deferrable_constraint_option(&self) -> Option<NotDeferrableConstraintOption> {
77 support::child(&self.syntax)
78 }
79 #[inline]
80 pub fn not_enforced(&self) -> Option<NotEnforced> {
81 support::child(&self.syntax)
82 }
83 #[inline]
84 pub fn not_valid(&self) -> Option<NotValid> {
85 support::child(&self.syntax)
86 }
87 #[inline]
88 pub fn add_token(&self) -> Option<SyntaxToken> {
89 support::token(&self.syntax, SyntaxKind::ADD_KW)
90 }
91}
92
93#[derive(Debug, Clone, PartialEq, Eq, Hash)]
94pub struct AddGenerated {
95 pub(crate) syntax: SyntaxNode,
96}
97impl AddGenerated {
98 #[inline]
99 pub fn add_token(&self) -> Option<SyntaxToken> {
100 support::token(&self.syntax, SyntaxKind::ADD_KW)
101 }
102}
103
104#[derive(Debug, Clone, PartialEq, Eq, Hash)]
105pub struct AddOpClassOptions {
106 pub(crate) syntax: SyntaxNode,
107}
108impl AddOpClassOptions {
109 #[inline]
110 pub fn operator_class_option_list(&self) -> Option<OperatorClassOptionList> {
111 support::child(&self.syntax)
112 }
113 #[inline]
114 pub fn add_token(&self) -> Option<SyntaxToken> {
115 support::token(&self.syntax, SyntaxKind::ADD_KW)
116 }
117}
118
119#[derive(Debug, Clone, PartialEq, Eq, Hash)]
120pub struct Aggregate {
121 pub(crate) syntax: SyntaxNode,
122}
123impl Aggregate {
124 #[inline]
125 pub fn param_list(&self) -> Option<ParamList> {
126 support::child(&self.syntax)
127 }
128 #[inline]
129 pub fn path(&self) -> Option<Path> {
130 support::child(&self.syntax)
131 }
132}
133
134#[derive(Debug, Clone, PartialEq, Eq, Hash)]
135pub struct Alias {
136 pub(crate) syntax: SyntaxNode,
137}
138impl Alias {
139 #[inline]
140 pub fn column_list(&self) -> Option<ColumnList> {
141 support::child(&self.syntax)
142 }
143 #[inline]
144 pub fn name(&self) -> Option<Name> {
145 support::child(&self.syntax)
146 }
147 #[inline]
148 pub fn as_token(&self) -> Option<SyntaxToken> {
149 support::token(&self.syntax, SyntaxKind::AS_KW)
150 }
151}
152
153#[derive(Debug, Clone, PartialEq, Eq, Hash)]
154pub struct AllFn {
155 pub(crate) syntax: SyntaxNode,
156}
157impl AllFn {
158 #[inline]
159 pub fn expr(&self) -> Option<Expr> {
160 support::child(&self.syntax)
161 }
162 #[inline]
163 pub fn select_variant(&self) -> Option<SelectVariant> {
164 support::child(&self.syntax)
165 }
166 #[inline]
167 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
168 support::token(&self.syntax, SyntaxKind::L_PAREN)
169 }
170 #[inline]
171 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
172 support::token(&self.syntax, SyntaxKind::R_PAREN)
173 }
174 #[inline]
175 pub fn all_token(&self) -> Option<SyntaxToken> {
176 support::token(&self.syntax, SyntaxKind::ALL_KW)
177 }
178}
179
180#[derive(Debug, Clone, PartialEq, Eq, Hash)]
181pub struct AlterAggregate {
182 pub(crate) syntax: SyntaxNode,
183}
184impl AlterAggregate {
185 #[inline]
186 pub fn aggregate(&self) -> Option<Aggregate> {
187 support::child(&self.syntax)
188 }
189 #[inline]
190 pub fn aggregate_token(&self) -> Option<SyntaxToken> {
191 support::token(&self.syntax, SyntaxKind::AGGREGATE_KW)
192 }
193 #[inline]
194 pub fn alter_token(&self) -> Option<SyntaxToken> {
195 support::token(&self.syntax, SyntaxKind::ALTER_KW)
196 }
197}
198
199#[derive(Debug, Clone, PartialEq, Eq, Hash)]
200pub struct AlterCollation {
201 pub(crate) syntax: SyntaxNode,
202}
203impl AlterCollation {
204 #[inline]
205 pub fn owner_to(&self) -> Option<OwnerTo> {
206 support::child(&self.syntax)
207 }
208 #[inline]
209 pub fn path(&self) -> Option<Path> {
210 support::child(&self.syntax)
211 }
212 #[inline]
213 pub fn refresh_version(&self) -> Option<RefreshVersion> {
214 support::child(&self.syntax)
215 }
216 #[inline]
217 pub fn rename_to(&self) -> Option<RenameTo> {
218 support::child(&self.syntax)
219 }
220 #[inline]
221 pub fn set_schema(&self) -> Option<SetSchema> {
222 support::child(&self.syntax)
223 }
224 #[inline]
225 pub fn alter_token(&self) -> Option<SyntaxToken> {
226 support::token(&self.syntax, SyntaxKind::ALTER_KW)
227 }
228 #[inline]
229 pub fn collation_token(&self) -> Option<SyntaxToken> {
230 support::token(&self.syntax, SyntaxKind::COLLATION_KW)
231 }
232}
233
234#[derive(Debug, Clone, PartialEq, Eq, Hash)]
235pub struct AlterColumn {
236 pub(crate) syntax: SyntaxNode,
237}
238impl AlterColumn {
239 #[inline]
240 pub fn name_ref(&self) -> Option<NameRef> {
241 support::child(&self.syntax)
242 }
243 #[inline]
244 pub fn option(&self) -> Option<AlterColumnOption> {
245 support::child(&self.syntax)
246 }
247 #[inline]
248 pub fn alter_token(&self) -> Option<SyntaxToken> {
249 support::token(&self.syntax, SyntaxKind::ALTER_KW)
250 }
251 #[inline]
252 pub fn column_token(&self) -> Option<SyntaxToken> {
253 support::token(&self.syntax, SyntaxKind::COLUMN_KW)
254 }
255}
256
257#[derive(Debug, Clone, PartialEq, Eq, Hash)]
258pub struct AlterConstraint {
259 pub(crate) syntax: SyntaxNode,
260}
261impl AlterConstraint {
262 #[inline]
263 pub fn option(&self) -> Option<AlterColumnOption> {
264 support::child(&self.syntax)
265 }
266 #[inline]
267 pub fn alter_token(&self) -> Option<SyntaxToken> {
268 support::token(&self.syntax, SyntaxKind::ALTER_KW)
269 }
270 #[inline]
271 pub fn constraint_token(&self) -> Option<SyntaxToken> {
272 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
273 }
274}
275
276#[derive(Debug, Clone, PartialEq, Eq, Hash)]
277pub struct AlterConversion {
278 pub(crate) syntax: SyntaxNode,
279}
280impl AlterConversion {
281 #[inline]
282 pub fn owner_to(&self) -> Option<OwnerTo> {
283 support::child(&self.syntax)
284 }
285 #[inline]
286 pub fn path(&self) -> Option<Path> {
287 support::child(&self.syntax)
288 }
289 #[inline]
290 pub fn rename_to(&self) -> Option<RenameTo> {
291 support::child(&self.syntax)
292 }
293 #[inline]
294 pub fn set_schema(&self) -> Option<SetSchema> {
295 support::child(&self.syntax)
296 }
297 #[inline]
298 pub fn alter_token(&self) -> Option<SyntaxToken> {
299 support::token(&self.syntax, SyntaxKind::ALTER_KW)
300 }
301 #[inline]
302 pub fn conversion_token(&self) -> Option<SyntaxToken> {
303 support::token(&self.syntax, SyntaxKind::CONVERSION_KW)
304 }
305}
306
307#[derive(Debug, Clone, PartialEq, Eq, Hash)]
308pub struct AlterDatabase {
309 pub(crate) syntax: SyntaxNode,
310}
311impl AlterDatabase {
312 #[inline]
313 pub fn create_database_option_list(&self) -> Option<CreateDatabaseOptionList> {
314 support::child(&self.syntax)
315 }
316 #[inline]
317 pub fn name_ref(&self) -> Option<NameRef> {
318 support::child(&self.syntax)
319 }
320 #[inline]
321 pub fn owner_to(&self) -> Option<OwnerTo> {
322 support::child(&self.syntax)
323 }
324 #[inline]
325 pub fn refresh_collation_version(&self) -> Option<RefreshCollationVersion> {
326 support::child(&self.syntax)
327 }
328 #[inline]
329 pub fn rename_to(&self) -> Option<RenameTo> {
330 support::child(&self.syntax)
331 }
332 #[inline]
333 pub fn reset_config_param(&self) -> Option<ResetConfigParam> {
334 support::child(&self.syntax)
335 }
336 #[inline]
337 pub fn set_config_param(&self) -> Option<SetConfigParam> {
338 support::child(&self.syntax)
339 }
340 #[inline]
341 pub fn set_tablespace(&self) -> Option<SetTablespace> {
342 support::child(&self.syntax)
343 }
344 #[inline]
345 pub fn alter_token(&self) -> Option<SyntaxToken> {
346 support::token(&self.syntax, SyntaxKind::ALTER_KW)
347 }
348 #[inline]
349 pub fn database_token(&self) -> Option<SyntaxToken> {
350 support::token(&self.syntax, SyntaxKind::DATABASE_KW)
351 }
352}
353
354#[derive(Debug, Clone, PartialEq, Eq, Hash)]
355pub struct AlterDefaultPrivileges {
356 pub(crate) syntax: SyntaxNode,
357}
358impl AlterDefaultPrivileges {
359 #[inline]
360 pub fn grant_default_privileges(&self) -> Option<GrantDefaultPrivileges> {
361 support::child(&self.syntax)
362 }
363 #[inline]
364 pub fn name_refs(&self) -> AstChildren<NameRef> {
365 support::children(&self.syntax)
366 }
367 #[inline]
368 pub fn revoke_default_privileges(&self) -> Option<RevokeDefaultPrivileges> {
369 support::child(&self.syntax)
370 }
371 #[inline]
372 pub fn role_list(&self) -> Option<RoleList> {
373 support::child(&self.syntax)
374 }
375 #[inline]
376 pub fn alter_token(&self) -> Option<SyntaxToken> {
377 support::token(&self.syntax, SyntaxKind::ALTER_KW)
378 }
379 #[inline]
380 pub fn default_token(&self) -> Option<SyntaxToken> {
381 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
382 }
383 #[inline]
384 pub fn for_token(&self) -> Option<SyntaxToken> {
385 support::token(&self.syntax, SyntaxKind::FOR_KW)
386 }
387 #[inline]
388 pub fn in_token(&self) -> Option<SyntaxToken> {
389 support::token(&self.syntax, SyntaxKind::IN_KW)
390 }
391 #[inline]
392 pub fn privileges_token(&self) -> Option<SyntaxToken> {
393 support::token(&self.syntax, SyntaxKind::PRIVILEGES_KW)
394 }
395 #[inline]
396 pub fn role_token(&self) -> Option<SyntaxToken> {
397 support::token(&self.syntax, SyntaxKind::ROLE_KW)
398 }
399 #[inline]
400 pub fn schema_token(&self) -> Option<SyntaxToken> {
401 support::token(&self.syntax, SyntaxKind::SCHEMA_KW)
402 }
403 #[inline]
404 pub fn user_token(&self) -> Option<SyntaxToken> {
405 support::token(&self.syntax, SyntaxKind::USER_KW)
406 }
407}
408
409#[derive(Debug, Clone, PartialEq, Eq, Hash)]
410pub struct AlterDomain {
411 pub(crate) syntax: SyntaxNode,
412}
413impl AlterDomain {
414 #[inline]
415 pub fn action(&self) -> Option<AlterDomainAction> {
416 support::child(&self.syntax)
417 }
418 #[inline]
419 pub fn path(&self) -> Option<Path> {
420 support::child(&self.syntax)
421 }
422 #[inline]
423 pub fn alter_token(&self) -> Option<SyntaxToken> {
424 support::token(&self.syntax, SyntaxKind::ALTER_KW)
425 }
426 #[inline]
427 pub fn domain_token(&self) -> Option<SyntaxToken> {
428 support::token(&self.syntax, SyntaxKind::DOMAIN_KW)
429 }
430}
431
432#[derive(Debug, Clone, PartialEq, Eq, Hash)]
433pub struct AlterEventTrigger {
434 pub(crate) syntax: SyntaxNode,
435}
436impl AlterEventTrigger {
437 #[inline]
438 pub fn name_ref(&self) -> Option<NameRef> {
439 support::child(&self.syntax)
440 }
441 #[inline]
442 pub fn owner_to(&self) -> Option<OwnerTo> {
443 support::child(&self.syntax)
444 }
445 #[inline]
446 pub fn rename_to(&self) -> Option<RenameTo> {
447 support::child(&self.syntax)
448 }
449 #[inline]
450 pub fn alter_token(&self) -> Option<SyntaxToken> {
451 support::token(&self.syntax, SyntaxKind::ALTER_KW)
452 }
453 #[inline]
454 pub fn always_token(&self) -> Option<SyntaxToken> {
455 support::token(&self.syntax, SyntaxKind::ALWAYS_KW)
456 }
457 #[inline]
458 pub fn disable_token(&self) -> Option<SyntaxToken> {
459 support::token(&self.syntax, SyntaxKind::DISABLE_KW)
460 }
461 #[inline]
462 pub fn enable_token(&self) -> Option<SyntaxToken> {
463 support::token(&self.syntax, SyntaxKind::ENABLE_KW)
464 }
465 #[inline]
466 pub fn event_token(&self) -> Option<SyntaxToken> {
467 support::token(&self.syntax, SyntaxKind::EVENT_KW)
468 }
469 #[inline]
470 pub fn replica_token(&self) -> Option<SyntaxToken> {
471 support::token(&self.syntax, SyntaxKind::REPLICA_KW)
472 }
473 #[inline]
474 pub fn trigger_token(&self) -> Option<SyntaxToken> {
475 support::token(&self.syntax, SyntaxKind::TRIGGER_KW)
476 }
477}
478
479#[derive(Debug, Clone, PartialEq, Eq, Hash)]
480pub struct AlterExtension {
481 pub(crate) syntax: SyntaxNode,
482}
483impl AlterExtension {
484 #[inline]
485 pub fn name_ref(&self) -> Option<NameRef> {
486 support::child(&self.syntax)
487 }
488 #[inline]
489 pub fn alter_token(&self) -> Option<SyntaxToken> {
490 support::token(&self.syntax, SyntaxKind::ALTER_KW)
491 }
492 #[inline]
493 pub fn extension_token(&self) -> Option<SyntaxToken> {
494 support::token(&self.syntax, SyntaxKind::EXTENSION_KW)
495 }
496}
497
498#[derive(Debug, Clone, PartialEq, Eq, Hash)]
499pub struct AlterForeignDataWrapper {
500 pub(crate) syntax: SyntaxNode,
501}
502impl AlterForeignDataWrapper {
503 #[inline]
504 pub fn fdw_option_list(&self) -> Option<FdwOptionList> {
505 support::child(&self.syntax)
506 }
507 #[inline]
508 pub fn name_ref(&self) -> Option<NameRef> {
509 support::child(&self.syntax)
510 }
511 #[inline]
512 pub fn owner_to(&self) -> Option<OwnerTo> {
513 support::child(&self.syntax)
514 }
515 #[inline]
516 pub fn rename_to(&self) -> Option<RenameTo> {
517 support::child(&self.syntax)
518 }
519 #[inline]
520 pub fn alter_token(&self) -> Option<SyntaxToken> {
521 support::token(&self.syntax, SyntaxKind::ALTER_KW)
522 }
523 #[inline]
524 pub fn data_token(&self) -> Option<SyntaxToken> {
525 support::token(&self.syntax, SyntaxKind::DATA_KW)
526 }
527 #[inline]
528 pub fn foreign_token(&self) -> Option<SyntaxToken> {
529 support::token(&self.syntax, SyntaxKind::FOREIGN_KW)
530 }
531 #[inline]
532 pub fn wrapper_token(&self) -> Option<SyntaxToken> {
533 support::token(&self.syntax, SyntaxKind::WRAPPER_KW)
534 }
535}
536
537#[derive(Debug, Clone, PartialEq, Eq, Hash)]
538pub struct AlterForeignTable {
539 pub(crate) syntax: SyntaxNode,
540}
541impl AlterForeignTable {
542 #[inline]
543 pub fn alter_table_actions(&self) -> AstChildren<AlterTableAction> {
544 support::children(&self.syntax)
545 }
546 #[inline]
547 pub fn if_exists(&self) -> Option<IfExists> {
548 support::child(&self.syntax)
549 }
550 #[inline]
551 pub fn relation_name(&self) -> Option<RelationName> {
552 support::child(&self.syntax)
553 }
554 #[inline]
555 pub fn rename_column(&self) -> Option<RenameColumn> {
556 support::child(&self.syntax)
557 }
558 #[inline]
559 pub fn rename_to(&self) -> Option<RenameTo> {
560 support::child(&self.syntax)
561 }
562 #[inline]
563 pub fn set_schema(&self) -> Option<SetSchema> {
564 support::child(&self.syntax)
565 }
566 #[inline]
567 pub fn alter_token(&self) -> Option<SyntaxToken> {
568 support::token(&self.syntax, SyntaxKind::ALTER_KW)
569 }
570 #[inline]
571 pub fn foreign_token(&self) -> Option<SyntaxToken> {
572 support::token(&self.syntax, SyntaxKind::FOREIGN_KW)
573 }
574 #[inline]
575 pub fn table_token(&self) -> Option<SyntaxToken> {
576 support::token(&self.syntax, SyntaxKind::TABLE_KW)
577 }
578}
579
580#[derive(Debug, Clone, PartialEq, Eq, Hash)]
581pub struct AlterFunction {
582 pub(crate) syntax: SyntaxNode,
583}
584impl AlterFunction {
585 #[inline]
586 pub fn depends_on_extension(&self) -> Option<DependsOnExtension> {
587 support::child(&self.syntax)
588 }
589 #[inline]
590 pub fn func_option_list(&self) -> Option<FuncOptionList> {
591 support::child(&self.syntax)
592 }
593 #[inline]
594 pub fn function_sig(&self) -> Option<FunctionSig> {
595 support::child(&self.syntax)
596 }
597 #[inline]
598 pub fn no_depends_on_extension(&self) -> Option<NoDependsOnExtension> {
599 support::child(&self.syntax)
600 }
601 #[inline]
602 pub fn owner_to(&self) -> Option<OwnerTo> {
603 support::child(&self.syntax)
604 }
605 #[inline]
606 pub fn rename_to(&self) -> Option<RenameTo> {
607 support::child(&self.syntax)
608 }
609 #[inline]
610 pub fn set_schema(&self) -> Option<SetSchema> {
611 support::child(&self.syntax)
612 }
613 #[inline]
614 pub fn alter_token(&self) -> Option<SyntaxToken> {
615 support::token(&self.syntax, SyntaxKind::ALTER_KW)
616 }
617 #[inline]
618 pub fn function_token(&self) -> Option<SyntaxToken> {
619 support::token(&self.syntax, SyntaxKind::FUNCTION_KW)
620 }
621 #[inline]
622 pub fn restrict_token(&self) -> Option<SyntaxToken> {
623 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
624 }
625}
626
627#[derive(Debug, Clone, PartialEq, Eq, Hash)]
628pub struct AlterGroup {
629 pub(crate) syntax: SyntaxNode,
630}
631impl AlterGroup {
632 #[inline]
633 pub fn name_refs(&self) -> AstChildren<NameRef> {
634 support::children(&self.syntax)
635 }
636 #[inline]
637 pub fn rename_to(&self) -> Option<RenameTo> {
638 support::child(&self.syntax)
639 }
640 #[inline]
641 pub fn role(&self) -> Option<Role> {
642 support::child(&self.syntax)
643 }
644 #[inline]
645 pub fn add_token(&self) -> Option<SyntaxToken> {
646 support::token(&self.syntax, SyntaxKind::ADD_KW)
647 }
648 #[inline]
649 pub fn alter_token(&self) -> Option<SyntaxToken> {
650 support::token(&self.syntax, SyntaxKind::ALTER_KW)
651 }
652 #[inline]
653 pub fn drop_token(&self) -> Option<SyntaxToken> {
654 support::token(&self.syntax, SyntaxKind::DROP_KW)
655 }
656 #[inline]
657 pub fn group_token(&self) -> Option<SyntaxToken> {
658 support::token(&self.syntax, SyntaxKind::GROUP_KW)
659 }
660 #[inline]
661 pub fn user_token(&self) -> Option<SyntaxToken> {
662 support::token(&self.syntax, SyntaxKind::USER_KW)
663 }
664}
665
666#[derive(Debug, Clone, PartialEq, Eq, Hash)]
667pub struct AlterIndex {
668 pub(crate) syntax: SyntaxNode,
669}
670impl AlterIndex {
671 #[inline]
672 pub fn if_exists(&self) -> Option<IfExists> {
673 support::child(&self.syntax)
674 }
675 #[inline]
676 pub fn path(&self) -> Option<Path> {
677 support::child(&self.syntax)
678 }
679 #[inline]
680 pub fn alter_token(&self) -> Option<SyntaxToken> {
681 support::token(&self.syntax, SyntaxKind::ALTER_KW)
682 }
683 #[inline]
684 pub fn index_token(&self) -> Option<SyntaxToken> {
685 support::token(&self.syntax, SyntaxKind::INDEX_KW)
686 }
687}
688
689#[derive(Debug, Clone, PartialEq, Eq, Hash)]
690pub struct AlterLanguage {
691 pub(crate) syntax: SyntaxNode,
692}
693impl AlterLanguage {
694 #[inline]
695 pub fn name_ref(&self) -> Option<NameRef> {
696 support::child(&self.syntax)
697 }
698 #[inline]
699 pub fn owner_to(&self) -> Option<OwnerTo> {
700 support::child(&self.syntax)
701 }
702 #[inline]
703 pub fn rename_to(&self) -> Option<RenameTo> {
704 support::child(&self.syntax)
705 }
706 #[inline]
707 pub fn alter_token(&self) -> Option<SyntaxToken> {
708 support::token(&self.syntax, SyntaxKind::ALTER_KW)
709 }
710 #[inline]
711 pub fn language_token(&self) -> Option<SyntaxToken> {
712 support::token(&self.syntax, SyntaxKind::LANGUAGE_KW)
713 }
714}
715
716#[derive(Debug, Clone, PartialEq, Eq, Hash)]
717pub struct AlterLargeObject {
718 pub(crate) syntax: SyntaxNode,
719}
720impl AlterLargeObject {
721 #[inline]
722 pub fn alter_token(&self) -> Option<SyntaxToken> {
723 support::token(&self.syntax, SyntaxKind::ALTER_KW)
724 }
725 #[inline]
726 pub fn large_token(&self) -> Option<SyntaxToken> {
727 support::token(&self.syntax, SyntaxKind::LARGE_KW)
728 }
729 #[inline]
730 pub fn object_token(&self) -> Option<SyntaxToken> {
731 support::token(&self.syntax, SyntaxKind::OBJECT_KW)
732 }
733}
734
735#[derive(Debug, Clone, PartialEq, Eq, Hash)]
736pub struct AlterMaterializedView {
737 pub(crate) syntax: SyntaxNode,
738}
739impl AlterMaterializedView {
740 #[inline]
741 pub fn action(&self) -> AstChildren<AlterMaterializedViewAction> {
742 support::children(&self.syntax)
743 }
744 #[inline]
745 pub fn if_exists(&self) -> Option<IfExists> {
746 support::child(&self.syntax)
747 }
748 #[inline]
749 pub fn name(&self) -> Option<Name> {
750 support::child(&self.syntax)
751 }
752 #[inline]
753 pub fn name_ref(&self) -> Option<NameRef> {
754 support::child(&self.syntax)
755 }
756 #[inline]
757 pub fn path(&self) -> Option<Path> {
758 support::child(&self.syntax)
759 }
760 #[inline]
761 pub fn role_list(&self) -> Option<RoleList> {
762 support::child(&self.syntax)
763 }
764 #[inline]
765 pub fn all_token(&self) -> Option<SyntaxToken> {
766 support::token(&self.syntax, SyntaxKind::ALL_KW)
767 }
768 #[inline]
769 pub fn alter_token(&self) -> Option<SyntaxToken> {
770 support::token(&self.syntax, SyntaxKind::ALTER_KW)
771 }
772 #[inline]
773 pub fn by_token(&self) -> Option<SyntaxToken> {
774 support::token(&self.syntax, SyntaxKind::BY_KW)
775 }
776 #[inline]
777 pub fn in_token(&self) -> Option<SyntaxToken> {
778 support::token(&self.syntax, SyntaxKind::IN_KW)
779 }
780 #[inline]
781 pub fn materialized_token(&self) -> Option<SyntaxToken> {
782 support::token(&self.syntax, SyntaxKind::MATERIALIZED_KW)
783 }
784 #[inline]
785 pub fn nowait_token(&self) -> Option<SyntaxToken> {
786 support::token(&self.syntax, SyntaxKind::NOWAIT_KW)
787 }
788 #[inline]
789 pub fn owned_token(&self) -> Option<SyntaxToken> {
790 support::token(&self.syntax, SyntaxKind::OWNED_KW)
791 }
792 #[inline]
793 pub fn set_token(&self) -> Option<SyntaxToken> {
794 support::token(&self.syntax, SyntaxKind::SET_KW)
795 }
796 #[inline]
797 pub fn tablespace_token(&self) -> Option<SyntaxToken> {
798 support::token(&self.syntax, SyntaxKind::TABLESPACE_KW)
799 }
800 #[inline]
801 pub fn view_token(&self) -> Option<SyntaxToken> {
802 support::token(&self.syntax, SyntaxKind::VIEW_KW)
803 }
804}
805
806#[derive(Debug, Clone, PartialEq, Eq, Hash)]
807pub struct AlterOperator {
808 pub(crate) syntax: SyntaxNode,
809}
810impl AlterOperator {
811 #[inline]
812 pub fn op_sig(&self) -> Option<OpSig> {
813 support::child(&self.syntax)
814 }
815 #[inline]
816 pub fn owner_to(&self) -> Option<OwnerTo> {
817 support::child(&self.syntax)
818 }
819 #[inline]
820 pub fn set_options(&self) -> Option<SetOptions> {
821 support::child(&self.syntax)
822 }
823 #[inline]
824 pub fn set_schema(&self) -> Option<SetSchema> {
825 support::child(&self.syntax)
826 }
827 #[inline]
828 pub fn alter_token(&self) -> Option<SyntaxToken> {
829 support::token(&self.syntax, SyntaxKind::ALTER_KW)
830 }
831 #[inline]
832 pub fn operator_token(&self) -> Option<SyntaxToken> {
833 support::token(&self.syntax, SyntaxKind::OPERATOR_KW)
834 }
835}
836
837#[derive(Debug, Clone, PartialEq, Eq, Hash)]
838pub struct AlterOperatorClass {
839 pub(crate) syntax: SyntaxNode,
840}
841impl AlterOperatorClass {
842 #[inline]
843 pub fn name_ref(&self) -> Option<NameRef> {
844 support::child(&self.syntax)
845 }
846 #[inline]
847 pub fn owner_to(&self) -> Option<OwnerTo> {
848 support::child(&self.syntax)
849 }
850 #[inline]
851 pub fn path(&self) -> Option<Path> {
852 support::child(&self.syntax)
853 }
854 #[inline]
855 pub fn rename_to(&self) -> Option<RenameTo> {
856 support::child(&self.syntax)
857 }
858 #[inline]
859 pub fn set_schema(&self) -> Option<SetSchema> {
860 support::child(&self.syntax)
861 }
862 #[inline]
863 pub fn alter_token(&self) -> Option<SyntaxToken> {
864 support::token(&self.syntax, SyntaxKind::ALTER_KW)
865 }
866 #[inline]
867 pub fn class_token(&self) -> Option<SyntaxToken> {
868 support::token(&self.syntax, SyntaxKind::CLASS_KW)
869 }
870 #[inline]
871 pub fn operator_token(&self) -> Option<SyntaxToken> {
872 support::token(&self.syntax, SyntaxKind::OPERATOR_KW)
873 }
874 #[inline]
875 pub fn using_token(&self) -> Option<SyntaxToken> {
876 support::token(&self.syntax, SyntaxKind::USING_KW)
877 }
878}
879
880#[derive(Debug, Clone, PartialEq, Eq, Hash)]
881pub struct AlterOperatorFamily {
882 pub(crate) syntax: SyntaxNode,
883}
884impl AlterOperatorFamily {
885 #[inline]
886 pub fn add_op_class_options(&self) -> Option<AddOpClassOptions> {
887 support::child(&self.syntax)
888 }
889 #[inline]
890 pub fn drop_op_class_options(&self) -> Option<DropOpClassOptions> {
891 support::child(&self.syntax)
892 }
893 #[inline]
894 pub fn name_ref(&self) -> Option<NameRef> {
895 support::child(&self.syntax)
896 }
897 #[inline]
898 pub fn owner_to(&self) -> Option<OwnerTo> {
899 support::child(&self.syntax)
900 }
901 #[inline]
902 pub fn path(&self) -> Option<Path> {
903 support::child(&self.syntax)
904 }
905 #[inline]
906 pub fn rename_to(&self) -> Option<RenameTo> {
907 support::child(&self.syntax)
908 }
909 #[inline]
910 pub fn set_schema(&self) -> Option<SetSchema> {
911 support::child(&self.syntax)
912 }
913 #[inline]
914 pub fn alter_token(&self) -> Option<SyntaxToken> {
915 support::token(&self.syntax, SyntaxKind::ALTER_KW)
916 }
917 #[inline]
918 pub fn family_token(&self) -> Option<SyntaxToken> {
919 support::token(&self.syntax, SyntaxKind::FAMILY_KW)
920 }
921 #[inline]
922 pub fn operator_token(&self) -> Option<SyntaxToken> {
923 support::token(&self.syntax, SyntaxKind::OPERATOR_KW)
924 }
925 #[inline]
926 pub fn using_token(&self) -> Option<SyntaxToken> {
927 support::token(&self.syntax, SyntaxKind::USING_KW)
928 }
929}
930
931#[derive(Debug, Clone, PartialEq, Eq, Hash)]
932pub struct AlterOption {
933 pub(crate) syntax: SyntaxNode,
934}
935impl AlterOption {
936 #[inline]
937 pub fn literal(&self) -> Option<Literal> {
938 support::child(&self.syntax)
939 }
940 #[inline]
941 pub fn name_ref(&self) -> Option<NameRef> {
942 support::child(&self.syntax)
943 }
944 #[inline]
945 pub fn add_token(&self) -> Option<SyntaxToken> {
946 support::token(&self.syntax, SyntaxKind::ADD_KW)
947 }
948 #[inline]
949 pub fn drop_token(&self) -> Option<SyntaxToken> {
950 support::token(&self.syntax, SyntaxKind::DROP_KW)
951 }
952 #[inline]
953 pub fn set_token(&self) -> Option<SyntaxToken> {
954 support::token(&self.syntax, SyntaxKind::SET_KW)
955 }
956}
957
958#[derive(Debug, Clone, PartialEq, Eq, Hash)]
959pub struct AlterOptionList {
960 pub(crate) syntax: SyntaxNode,
961}
962impl AlterOptionList {
963 #[inline]
964 pub fn alter_options(&self) -> AstChildren<AlterOption> {
965 support::children(&self.syntax)
966 }
967}
968
969#[derive(Debug, Clone, PartialEq, Eq, Hash)]
970pub struct AlterPolicy {
971 pub(crate) syntax: SyntaxNode,
972}
973impl AlterPolicy {
974 #[inline]
975 pub fn expr(&self) -> Option<Expr> {
976 support::child(&self.syntax)
977 }
978 #[inline]
979 pub fn name_ref(&self) -> Option<NameRef> {
980 support::child(&self.syntax)
981 }
982 #[inline]
983 pub fn on_table(&self) -> Option<OnTable> {
984 support::child(&self.syntax)
985 }
986 #[inline]
987 pub fn rename_to(&self) -> Option<RenameTo> {
988 support::child(&self.syntax)
989 }
990 #[inline]
991 pub fn role_list(&self) -> Option<RoleList> {
992 support::child(&self.syntax)
993 }
994 #[inline]
995 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
996 support::token(&self.syntax, SyntaxKind::L_PAREN)
997 }
998 #[inline]
999 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
1000 support::token(&self.syntax, SyntaxKind::R_PAREN)
1001 }
1002 #[inline]
1003 pub fn alter_token(&self) -> Option<SyntaxToken> {
1004 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1005 }
1006 #[inline]
1007 pub fn check_token(&self) -> Option<SyntaxToken> {
1008 support::token(&self.syntax, SyntaxKind::CHECK_KW)
1009 }
1010 #[inline]
1011 pub fn policy_token(&self) -> Option<SyntaxToken> {
1012 support::token(&self.syntax, SyntaxKind::POLICY_KW)
1013 }
1014 #[inline]
1015 pub fn to_token(&self) -> Option<SyntaxToken> {
1016 support::token(&self.syntax, SyntaxKind::TO_KW)
1017 }
1018 #[inline]
1019 pub fn using_token(&self) -> Option<SyntaxToken> {
1020 support::token(&self.syntax, SyntaxKind::USING_KW)
1021 }
1022 #[inline]
1023 pub fn with_token(&self) -> Option<SyntaxToken> {
1024 support::token(&self.syntax, SyntaxKind::WITH_KW)
1025 }
1026}
1027
1028#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1029pub struct AlterProcedure {
1030 pub(crate) syntax: SyntaxNode,
1031}
1032impl AlterProcedure {
1033 #[inline]
1034 pub fn depends_on_extension(&self) -> Option<DependsOnExtension> {
1035 support::child(&self.syntax)
1036 }
1037 #[inline]
1038 pub fn func_option_list(&self) -> Option<FuncOptionList> {
1039 support::child(&self.syntax)
1040 }
1041 #[inline]
1042 pub fn function_sig(&self) -> Option<FunctionSig> {
1043 support::child(&self.syntax)
1044 }
1045 #[inline]
1046 pub fn no_depends_on_extension(&self) -> Option<NoDependsOnExtension> {
1047 support::child(&self.syntax)
1048 }
1049 #[inline]
1050 pub fn owner_to(&self) -> Option<OwnerTo> {
1051 support::child(&self.syntax)
1052 }
1053 #[inline]
1054 pub fn rename_to(&self) -> Option<RenameTo> {
1055 support::child(&self.syntax)
1056 }
1057 #[inline]
1058 pub fn set_schema(&self) -> Option<SetSchema> {
1059 support::child(&self.syntax)
1060 }
1061 #[inline]
1062 pub fn alter_token(&self) -> Option<SyntaxToken> {
1063 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1064 }
1065 #[inline]
1066 pub fn procedure_token(&self) -> Option<SyntaxToken> {
1067 support::token(&self.syntax, SyntaxKind::PROCEDURE_KW)
1068 }
1069 #[inline]
1070 pub fn restrict_token(&self) -> Option<SyntaxToken> {
1071 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
1072 }
1073}
1074
1075#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1076pub struct AlterPublication {
1077 pub(crate) syntax: SyntaxNode,
1078}
1079impl AlterPublication {
1080 #[inline]
1081 pub fn name_ref(&self) -> Option<NameRef> {
1082 support::child(&self.syntax)
1083 }
1084 #[inline]
1085 pub fn alter_token(&self) -> Option<SyntaxToken> {
1086 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1087 }
1088 #[inline]
1089 pub fn publication_token(&self) -> Option<SyntaxToken> {
1090 support::token(&self.syntax, SyntaxKind::PUBLICATION_KW)
1091 }
1092}
1093
1094#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1095pub struct AlterRole {
1096 pub(crate) syntax: SyntaxNode,
1097}
1098impl AlterRole {
1099 #[inline]
1100 pub fn role(&self) -> Option<Role> {
1101 support::child(&self.syntax)
1102 }
1103 #[inline]
1104 pub fn alter_token(&self) -> Option<SyntaxToken> {
1105 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1106 }
1107 #[inline]
1108 pub fn role_token(&self) -> Option<SyntaxToken> {
1109 support::token(&self.syntax, SyntaxKind::ROLE_KW)
1110 }
1111}
1112
1113#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1114pub struct AlterRoutine {
1115 pub(crate) syntax: SyntaxNode,
1116}
1117impl AlterRoutine {
1118 #[inline]
1119 pub fn depends_on_extension(&self) -> Option<DependsOnExtension> {
1120 support::child(&self.syntax)
1121 }
1122 #[inline]
1123 pub fn func_option_list(&self) -> Option<FuncOptionList> {
1124 support::child(&self.syntax)
1125 }
1126 #[inline]
1127 pub fn function_sig(&self) -> Option<FunctionSig> {
1128 support::child(&self.syntax)
1129 }
1130 #[inline]
1131 pub fn no_depends_on_extension(&self) -> Option<NoDependsOnExtension> {
1132 support::child(&self.syntax)
1133 }
1134 #[inline]
1135 pub fn owner_to(&self) -> Option<OwnerTo> {
1136 support::child(&self.syntax)
1137 }
1138 #[inline]
1139 pub fn rename_to(&self) -> Option<RenameTo> {
1140 support::child(&self.syntax)
1141 }
1142 #[inline]
1143 pub fn set_schema(&self) -> Option<SetSchema> {
1144 support::child(&self.syntax)
1145 }
1146 #[inline]
1147 pub fn alter_token(&self) -> Option<SyntaxToken> {
1148 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1149 }
1150 #[inline]
1151 pub fn restrict_token(&self) -> Option<SyntaxToken> {
1152 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
1153 }
1154 #[inline]
1155 pub fn routine_token(&self) -> Option<SyntaxToken> {
1156 support::token(&self.syntax, SyntaxKind::ROUTINE_KW)
1157 }
1158}
1159
1160#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1161pub struct AlterRule {
1162 pub(crate) syntax: SyntaxNode,
1163}
1164impl AlterRule {
1165 #[inline]
1166 pub fn name_ref(&self) -> Option<NameRef> {
1167 support::child(&self.syntax)
1168 }
1169 #[inline]
1170 pub fn on_table(&self) -> Option<OnTable> {
1171 support::child(&self.syntax)
1172 }
1173 #[inline]
1174 pub fn rename_to(&self) -> Option<RenameTo> {
1175 support::child(&self.syntax)
1176 }
1177 #[inline]
1178 pub fn alter_token(&self) -> Option<SyntaxToken> {
1179 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1180 }
1181 #[inline]
1182 pub fn on_token(&self) -> Option<SyntaxToken> {
1183 support::token(&self.syntax, SyntaxKind::ON_KW)
1184 }
1185 #[inline]
1186 pub fn rule_token(&self) -> Option<SyntaxToken> {
1187 support::token(&self.syntax, SyntaxKind::RULE_KW)
1188 }
1189}
1190
1191#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1192pub struct AlterSchema {
1193 pub(crate) syntax: SyntaxNode,
1194}
1195impl AlterSchema {
1196 #[inline]
1197 pub fn name_ref(&self) -> Option<NameRef> {
1198 support::child(&self.syntax)
1199 }
1200 #[inline]
1201 pub fn owner_to(&self) -> Option<OwnerTo> {
1202 support::child(&self.syntax)
1203 }
1204 #[inline]
1205 pub fn rename_to(&self) -> Option<RenameTo> {
1206 support::child(&self.syntax)
1207 }
1208 #[inline]
1209 pub fn alter_token(&self) -> Option<SyntaxToken> {
1210 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1211 }
1212 #[inline]
1213 pub fn schema_token(&self) -> Option<SyntaxToken> {
1214 support::token(&self.syntax, SyntaxKind::SCHEMA_KW)
1215 }
1216}
1217
1218#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1219pub struct AlterSequence {
1220 pub(crate) syntax: SyntaxNode,
1221}
1222impl AlterSequence {
1223 #[inline]
1224 pub fn if_exists(&self) -> Option<IfExists> {
1225 support::child(&self.syntax)
1226 }
1227 #[inline]
1228 pub fn path(&self) -> Option<Path> {
1229 support::child(&self.syntax)
1230 }
1231 #[inline]
1232 pub fn alter_token(&self) -> Option<SyntaxToken> {
1233 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1234 }
1235 #[inline]
1236 pub fn sequence_token(&self) -> Option<SyntaxToken> {
1237 support::token(&self.syntax, SyntaxKind::SEQUENCE_KW)
1238 }
1239}
1240
1241#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1242pub struct AlterServer {
1243 pub(crate) syntax: SyntaxNode,
1244}
1245impl AlterServer {
1246 #[inline]
1247 pub fn alter_option_list(&self) -> Option<AlterOptionList> {
1248 support::child(&self.syntax)
1249 }
1250 #[inline]
1251 pub fn name_ref(&self) -> Option<NameRef> {
1252 support::child(&self.syntax)
1253 }
1254 #[inline]
1255 pub fn alter_token(&self) -> Option<SyntaxToken> {
1256 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1257 }
1258 #[inline]
1259 pub fn server_token(&self) -> Option<SyntaxToken> {
1260 support::token(&self.syntax, SyntaxKind::SERVER_KW)
1261 }
1262}
1263
1264#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1265pub struct AlterSetStatistics {
1266 pub(crate) syntax: SyntaxNode,
1267}
1268impl AlterSetStatistics {
1269 #[inline]
1270 pub fn literal(&self) -> Option<Literal> {
1271 support::child(&self.syntax)
1272 }
1273 #[inline]
1274 pub fn name_ref(&self) -> Option<NameRef> {
1275 support::child(&self.syntax)
1276 }
1277 #[inline]
1278 pub fn column_token(&self) -> Option<SyntaxToken> {
1279 support::token(&self.syntax, SyntaxKind::COLUMN_KW)
1280 }
1281 #[inline]
1282 pub fn set_token(&self) -> Option<SyntaxToken> {
1283 support::token(&self.syntax, SyntaxKind::SET_KW)
1284 }
1285 #[inline]
1286 pub fn statistics_token(&self) -> Option<SyntaxToken> {
1287 support::token(&self.syntax, SyntaxKind::STATISTICS_KW)
1288 }
1289}
1290
1291#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1292pub struct AlterStatistics {
1293 pub(crate) syntax: SyntaxNode,
1294}
1295impl AlterStatistics {
1296 #[inline]
1297 pub fn path(&self) -> Option<Path> {
1298 support::child(&self.syntax)
1299 }
1300 #[inline]
1301 pub fn alter_token(&self) -> Option<SyntaxToken> {
1302 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1303 }
1304 #[inline]
1305 pub fn statistics_token(&self) -> Option<SyntaxToken> {
1306 support::token(&self.syntax, SyntaxKind::STATISTICS_KW)
1307 }
1308}
1309
1310#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1311pub struct AlterSubscription {
1312 pub(crate) syntax: SyntaxNode,
1313}
1314impl AlterSubscription {
1315 #[inline]
1316 pub fn name_ref(&self) -> Option<NameRef> {
1317 support::child(&self.syntax)
1318 }
1319 #[inline]
1320 pub fn alter_token(&self) -> Option<SyntaxToken> {
1321 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1322 }
1323 #[inline]
1324 pub fn subscription_token(&self) -> Option<SyntaxToken> {
1325 support::token(&self.syntax, SyntaxKind::SUBSCRIPTION_KW)
1326 }
1327}
1328
1329#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1330pub struct AlterSystem {
1331 pub(crate) syntax: SyntaxNode,
1332}
1333impl AlterSystem {
1334 #[inline]
1335 pub fn alter_token(&self) -> Option<SyntaxToken> {
1336 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1337 }
1338 #[inline]
1339 pub fn set_token(&self) -> Option<SyntaxToken> {
1340 support::token(&self.syntax, SyntaxKind::SET_KW)
1341 }
1342 #[inline]
1343 pub fn system_token(&self) -> Option<SyntaxToken> {
1344 support::token(&self.syntax, SyntaxKind::SYSTEM_KW)
1345 }
1346}
1347
1348#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1349pub struct AlterTable {
1350 pub(crate) syntax: SyntaxNode,
1351}
1352impl AlterTable {
1353 #[inline]
1354 pub fn actions(&self) -> AstChildren<AlterTableAction> {
1355 support::children(&self.syntax)
1356 }
1357 #[inline]
1358 pub fn relation_name(&self) -> Option<RelationName> {
1359 support::child(&self.syntax)
1360 }
1361 #[inline]
1362 pub fn alter_token(&self) -> Option<SyntaxToken> {
1363 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1364 }
1365 #[inline]
1366 pub fn table_token(&self) -> Option<SyntaxToken> {
1367 support::token(&self.syntax, SyntaxKind::TABLE_KW)
1368 }
1369}
1370
1371#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1372pub struct AlterTablespace {
1373 pub(crate) syntax: SyntaxNode,
1374}
1375impl AlterTablespace {
1376 #[inline]
1377 pub fn owner_to(&self) -> Option<OwnerTo> {
1378 support::child(&self.syntax)
1379 }
1380 #[inline]
1381 pub fn path(&self) -> Option<Path> {
1382 support::child(&self.syntax)
1383 }
1384 #[inline]
1385 pub fn rename_to(&self) -> Option<RenameTo> {
1386 support::child(&self.syntax)
1387 }
1388 #[inline]
1389 pub fn reset_options(&self) -> Option<ResetOptions> {
1390 support::child(&self.syntax)
1391 }
1392 #[inline]
1393 pub fn set_options(&self) -> Option<SetOptions> {
1394 support::child(&self.syntax)
1395 }
1396 #[inline]
1397 pub fn alter_token(&self) -> Option<SyntaxToken> {
1398 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1399 }
1400 #[inline]
1401 pub fn tablespace_token(&self) -> Option<SyntaxToken> {
1402 support::token(&self.syntax, SyntaxKind::TABLESPACE_KW)
1403 }
1404}
1405
1406#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1407pub struct AlterTextSearchConfiguration {
1408 pub(crate) syntax: SyntaxNode,
1409}
1410impl AlterTextSearchConfiguration {
1411 #[inline]
1412 pub fn owner_to(&self) -> Option<OwnerTo> {
1413 support::child(&self.syntax)
1414 }
1415 #[inline]
1416 pub fn path(&self) -> Option<Path> {
1417 support::child(&self.syntax)
1418 }
1419 #[inline]
1420 pub fn rename_to(&self) -> Option<RenameTo> {
1421 support::child(&self.syntax)
1422 }
1423 #[inline]
1424 pub fn set_schema(&self) -> Option<SetSchema> {
1425 support::child(&self.syntax)
1426 }
1427 #[inline]
1428 pub fn alter_token(&self) -> Option<SyntaxToken> {
1429 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1430 }
1431 #[inline]
1432 pub fn configuration_token(&self) -> Option<SyntaxToken> {
1433 support::token(&self.syntax, SyntaxKind::CONFIGURATION_KW)
1434 }
1435 #[inline]
1436 pub fn search_token(&self) -> Option<SyntaxToken> {
1437 support::token(&self.syntax, SyntaxKind::SEARCH_KW)
1438 }
1439 #[inline]
1440 pub fn text_token(&self) -> Option<SyntaxToken> {
1441 support::token(&self.syntax, SyntaxKind::TEXT_KW)
1442 }
1443}
1444
1445#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1446pub struct AlterTextSearchDictionary {
1447 pub(crate) syntax: SyntaxNode,
1448}
1449impl AlterTextSearchDictionary {
1450 #[inline]
1451 pub fn attribute_list(&self) -> Option<AttributeList> {
1452 support::child(&self.syntax)
1453 }
1454 #[inline]
1455 pub fn owner_to(&self) -> Option<OwnerTo> {
1456 support::child(&self.syntax)
1457 }
1458 #[inline]
1459 pub fn path(&self) -> Option<Path> {
1460 support::child(&self.syntax)
1461 }
1462 #[inline]
1463 pub fn rename_to(&self) -> Option<RenameTo> {
1464 support::child(&self.syntax)
1465 }
1466 #[inline]
1467 pub fn set_schema(&self) -> Option<SetSchema> {
1468 support::child(&self.syntax)
1469 }
1470 #[inline]
1471 pub fn alter_token(&self) -> Option<SyntaxToken> {
1472 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1473 }
1474 #[inline]
1475 pub fn dictionary_token(&self) -> Option<SyntaxToken> {
1476 support::token(&self.syntax, SyntaxKind::DICTIONARY_KW)
1477 }
1478 #[inline]
1479 pub fn search_token(&self) -> Option<SyntaxToken> {
1480 support::token(&self.syntax, SyntaxKind::SEARCH_KW)
1481 }
1482 #[inline]
1483 pub fn text_token(&self) -> Option<SyntaxToken> {
1484 support::token(&self.syntax, SyntaxKind::TEXT_KW)
1485 }
1486}
1487
1488#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1489pub struct AlterTextSearchParser {
1490 pub(crate) syntax: SyntaxNode,
1491}
1492impl AlterTextSearchParser {
1493 #[inline]
1494 pub fn path(&self) -> Option<Path> {
1495 support::child(&self.syntax)
1496 }
1497 #[inline]
1498 pub fn rename_to(&self) -> Option<RenameTo> {
1499 support::child(&self.syntax)
1500 }
1501 #[inline]
1502 pub fn set_schema(&self) -> Option<SetSchema> {
1503 support::child(&self.syntax)
1504 }
1505 #[inline]
1506 pub fn alter_token(&self) -> Option<SyntaxToken> {
1507 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1508 }
1509 #[inline]
1510 pub fn parser_token(&self) -> Option<SyntaxToken> {
1511 support::token(&self.syntax, SyntaxKind::PARSER_KW)
1512 }
1513 #[inline]
1514 pub fn search_token(&self) -> Option<SyntaxToken> {
1515 support::token(&self.syntax, SyntaxKind::SEARCH_KW)
1516 }
1517 #[inline]
1518 pub fn text_token(&self) -> Option<SyntaxToken> {
1519 support::token(&self.syntax, SyntaxKind::TEXT_KW)
1520 }
1521}
1522
1523#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1524pub struct AlterTextSearchTemplate {
1525 pub(crate) syntax: SyntaxNode,
1526}
1527impl AlterTextSearchTemplate {
1528 #[inline]
1529 pub fn path(&self) -> Option<Path> {
1530 support::child(&self.syntax)
1531 }
1532 #[inline]
1533 pub fn rename_to(&self) -> Option<RenameTo> {
1534 support::child(&self.syntax)
1535 }
1536 #[inline]
1537 pub fn set_schema(&self) -> Option<SetSchema> {
1538 support::child(&self.syntax)
1539 }
1540 #[inline]
1541 pub fn alter_token(&self) -> Option<SyntaxToken> {
1542 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1543 }
1544 #[inline]
1545 pub fn search_token(&self) -> Option<SyntaxToken> {
1546 support::token(&self.syntax, SyntaxKind::SEARCH_KW)
1547 }
1548 #[inline]
1549 pub fn template_token(&self) -> Option<SyntaxToken> {
1550 support::token(&self.syntax, SyntaxKind::TEMPLATE_KW)
1551 }
1552 #[inline]
1553 pub fn text_token(&self) -> Option<SyntaxToken> {
1554 support::token(&self.syntax, SyntaxKind::TEXT_KW)
1555 }
1556}
1557
1558#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1559pub struct AlterTrigger {
1560 pub(crate) syntax: SyntaxNode,
1561}
1562impl AlterTrigger {
1563 #[inline]
1564 pub fn depends_on_extension(&self) -> Option<DependsOnExtension> {
1565 support::child(&self.syntax)
1566 }
1567 #[inline]
1568 pub fn name_ref(&self) -> Option<NameRef> {
1569 support::child(&self.syntax)
1570 }
1571 #[inline]
1572 pub fn no_depends_on_extension(&self) -> Option<NoDependsOnExtension> {
1573 support::child(&self.syntax)
1574 }
1575 #[inline]
1576 pub fn on_table(&self) -> Option<OnTable> {
1577 support::child(&self.syntax)
1578 }
1579 #[inline]
1580 pub fn rename_to(&self) -> Option<RenameTo> {
1581 support::child(&self.syntax)
1582 }
1583 #[inline]
1584 pub fn alter_token(&self) -> Option<SyntaxToken> {
1585 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1586 }
1587 #[inline]
1588 pub fn trigger_token(&self) -> Option<SyntaxToken> {
1589 support::token(&self.syntax, SyntaxKind::TRIGGER_KW)
1590 }
1591}
1592
1593#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1594pub struct AlterType {
1595 pub(crate) syntax: SyntaxNode,
1596}
1597impl AlterType {
1598 #[inline]
1599 pub fn path(&self) -> Option<Path> {
1600 support::child(&self.syntax)
1601 }
1602 #[inline]
1603 pub fn alter_token(&self) -> Option<SyntaxToken> {
1604 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1605 }
1606 #[inline]
1607 pub fn type_token(&self) -> Option<SyntaxToken> {
1608 support::token(&self.syntax, SyntaxKind::TYPE_KW)
1609 }
1610}
1611
1612#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1613pub struct AlterUser {
1614 pub(crate) syntax: SyntaxNode,
1615}
1616impl AlterUser {
1617 #[inline]
1618 pub fn role(&self) -> Option<Role> {
1619 support::child(&self.syntax)
1620 }
1621 #[inline]
1622 pub fn alter_token(&self) -> Option<SyntaxToken> {
1623 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1624 }
1625 #[inline]
1626 pub fn user_token(&self) -> Option<SyntaxToken> {
1627 support::token(&self.syntax, SyntaxKind::USER_KW)
1628 }
1629}
1630
1631#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1632pub struct AlterUserMapping {
1633 pub(crate) syntax: SyntaxNode,
1634}
1635impl AlterUserMapping {
1636 #[inline]
1637 pub fn alter_option_list(&self) -> Option<AlterOptionList> {
1638 support::child(&self.syntax)
1639 }
1640 #[inline]
1641 pub fn name_ref(&self) -> Option<NameRef> {
1642 support::child(&self.syntax)
1643 }
1644 #[inline]
1645 pub fn role(&self) -> Option<Role> {
1646 support::child(&self.syntax)
1647 }
1648 #[inline]
1649 pub fn alter_token(&self) -> Option<SyntaxToken> {
1650 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1651 }
1652 #[inline]
1653 pub fn for_token(&self) -> Option<SyntaxToken> {
1654 support::token(&self.syntax, SyntaxKind::FOR_KW)
1655 }
1656 #[inline]
1657 pub fn mapping_token(&self) -> Option<SyntaxToken> {
1658 support::token(&self.syntax, SyntaxKind::MAPPING_KW)
1659 }
1660 #[inline]
1661 pub fn server_token(&self) -> Option<SyntaxToken> {
1662 support::token(&self.syntax, SyntaxKind::SERVER_KW)
1663 }
1664 #[inline]
1665 pub fn user_token(&self) -> Option<SyntaxToken> {
1666 support::token(&self.syntax, SyntaxKind::USER_KW)
1667 }
1668}
1669
1670#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1671pub struct AlterView {
1672 pub(crate) syntax: SyntaxNode,
1673}
1674impl AlterView {
1675 #[inline]
1676 pub fn path(&self) -> Option<Path> {
1677 support::child(&self.syntax)
1678 }
1679 #[inline]
1680 pub fn alter_token(&self) -> Option<SyntaxToken> {
1681 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1682 }
1683 #[inline]
1684 pub fn view_token(&self) -> Option<SyntaxToken> {
1685 support::token(&self.syntax, SyntaxKind::VIEW_KW)
1686 }
1687}
1688
1689#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1690pub struct Analyze {
1691 pub(crate) syntax: SyntaxNode,
1692}
1693impl Analyze {
1694 #[inline]
1695 pub fn option_item_list(&self) -> Option<OptionItemList> {
1696 support::child(&self.syntax)
1697 }
1698 #[inline]
1699 pub fn table_and_columns_list(&self) -> Option<TableAndColumnsList> {
1700 support::child(&self.syntax)
1701 }
1702 #[inline]
1703 pub fn analyse_token(&self) -> Option<SyntaxToken> {
1704 support::token(&self.syntax, SyntaxKind::ANALYSE_KW)
1705 }
1706 #[inline]
1707 pub fn analyze_token(&self) -> Option<SyntaxToken> {
1708 support::token(&self.syntax, SyntaxKind::ANALYZE_KW)
1709 }
1710 #[inline]
1711 pub fn verbose_token(&self) -> Option<SyntaxToken> {
1712 support::token(&self.syntax, SyntaxKind::VERBOSE_KW)
1713 }
1714}
1715
1716#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1717pub struct AnyFn {
1718 pub(crate) syntax: SyntaxNode,
1719}
1720impl AnyFn {
1721 #[inline]
1722 pub fn expr(&self) -> Option<Expr> {
1723 support::child(&self.syntax)
1724 }
1725 #[inline]
1726 pub fn select_variant(&self) -> Option<SelectVariant> {
1727 support::child(&self.syntax)
1728 }
1729 #[inline]
1730 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
1731 support::token(&self.syntax, SyntaxKind::L_PAREN)
1732 }
1733 #[inline]
1734 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
1735 support::token(&self.syntax, SyntaxKind::R_PAREN)
1736 }
1737 #[inline]
1738 pub fn any_token(&self) -> Option<SyntaxToken> {
1739 support::token(&self.syntax, SyntaxKind::ANY_KW)
1740 }
1741}
1742
1743#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1744pub struct Arg {
1745 pub(crate) syntax: SyntaxNode,
1746}
1747impl Arg {
1748 #[inline]
1749 pub fn expr(&self) -> Option<Expr> {
1750 support::child(&self.syntax)
1751 }
1752}
1753
1754#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1755pub struct ArgList {
1756 pub(crate) syntax: SyntaxNode,
1757}
1758impl ArgList {
1759 #[inline]
1760 pub fn args(&self) -> AstChildren<Expr> {
1761 support::children(&self.syntax)
1762 }
1763 #[inline]
1764 pub fn expr(&self) -> Option<Expr> {
1765 support::child(&self.syntax)
1766 }
1767 #[inline]
1768 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
1769 support::token(&self.syntax, SyntaxKind::L_PAREN)
1770 }
1771 #[inline]
1772 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
1773 support::token(&self.syntax, SyntaxKind::R_PAREN)
1774 }
1775 #[inline]
1776 pub fn star_token(&self) -> Option<SyntaxToken> {
1777 support::token(&self.syntax, SyntaxKind::STAR)
1778 }
1779 #[inline]
1780 pub fn all_token(&self) -> Option<SyntaxToken> {
1781 support::token(&self.syntax, SyntaxKind::ALL_KW)
1782 }
1783 #[inline]
1784 pub fn distinct_token(&self) -> Option<SyntaxToken> {
1785 support::token(&self.syntax, SyntaxKind::DISTINCT_KW)
1786 }
1787 #[inline]
1788 pub fn variadic_token(&self) -> Option<SyntaxToken> {
1789 support::token(&self.syntax, SyntaxKind::VARIADIC_KW)
1790 }
1791}
1792
1793#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1794pub struct ArrayExpr {
1795 pub(crate) syntax: SyntaxNode,
1796}
1797impl ArrayExpr {
1798 #[inline]
1799 pub fn exprs(&self) -> AstChildren<Expr> {
1800 support::children(&self.syntax)
1801 }
1802 #[inline]
1803 pub fn select(&self) -> Option<Select> {
1804 support::child(&self.syntax)
1805 }
1806 #[inline]
1807 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
1808 support::token(&self.syntax, SyntaxKind::L_PAREN)
1809 }
1810 #[inline]
1811 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
1812 support::token(&self.syntax, SyntaxKind::R_PAREN)
1813 }
1814 #[inline]
1815 pub fn l_brack_token(&self) -> Option<SyntaxToken> {
1816 support::token(&self.syntax, SyntaxKind::L_BRACK)
1817 }
1818 #[inline]
1819 pub fn r_brack_token(&self) -> Option<SyntaxToken> {
1820 support::token(&self.syntax, SyntaxKind::R_BRACK)
1821 }
1822 #[inline]
1823 pub fn array_token(&self) -> Option<SyntaxToken> {
1824 support::token(&self.syntax, SyntaxKind::ARRAY_KW)
1825 }
1826}
1827
1828#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1829pub struct ArrayType {
1830 pub(crate) syntax: SyntaxNode,
1831}
1832impl ArrayType {
1833 #[inline]
1834 pub fn expr(&self) -> Option<Expr> {
1835 support::child(&self.syntax)
1836 }
1837 #[inline]
1838 pub fn name_ref(&self) -> Option<NameRef> {
1839 support::child(&self.syntax)
1840 }
1841 #[inline]
1842 pub fn ty(&self) -> Option<Type> {
1843 support::child(&self.syntax)
1844 }
1845 #[inline]
1846 pub fn l_brack_token(&self) -> Option<SyntaxToken> {
1847 support::token(&self.syntax, SyntaxKind::L_BRACK)
1848 }
1849 #[inline]
1850 pub fn r_brack_token(&self) -> Option<SyntaxToken> {
1851 support::token(&self.syntax, SyntaxKind::R_BRACK)
1852 }
1853 #[inline]
1854 pub fn array_token(&self) -> Option<SyntaxToken> {
1855 support::token(&self.syntax, SyntaxKind::ARRAY_KW)
1856 }
1857}
1858
1859#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1860pub struct AsFuncOption {
1861 pub(crate) syntax: SyntaxNode,
1862}
1863impl AsFuncOption {
1864 #[inline]
1865 pub fn definition(&self) -> Option<Literal> {
1866 support::child(&self.syntax)
1867 }
1868 #[inline]
1869 pub fn link_symbol(&self) -> Option<Literal> {
1870 support::child(&self.syntax)
1871 }
1872 #[inline]
1873 pub fn obj_file(&self) -> Option<Literal> {
1874 support::child(&self.syntax)
1875 }
1876 #[inline]
1877 pub fn comma_token(&self) -> Option<SyntaxToken> {
1878 support::token(&self.syntax, SyntaxKind::COMMA)
1879 }
1880 #[inline]
1881 pub fn as_token(&self) -> Option<SyntaxToken> {
1882 support::token(&self.syntax, SyntaxKind::AS_KW)
1883 }
1884}
1885
1886#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1887pub struct AsName {
1888 pub(crate) syntax: SyntaxNode,
1889}
1890impl AsName {
1891 #[inline]
1892 pub fn name(&self) -> Option<Name> {
1893 support::child(&self.syntax)
1894 }
1895 #[inline]
1896 pub fn as_token(&self) -> Option<SyntaxToken> {
1897 support::token(&self.syntax, SyntaxKind::AS_KW)
1898 }
1899}
1900
1901#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1902pub struct AtTimeZone {
1903 pub(crate) syntax: SyntaxNode,
1904}
1905impl AtTimeZone {
1906 #[inline]
1907 pub fn at_token(&self) -> Option<SyntaxToken> {
1908 support::token(&self.syntax, SyntaxKind::AT_KW)
1909 }
1910 #[inline]
1911 pub fn time_token(&self) -> Option<SyntaxToken> {
1912 support::token(&self.syntax, SyntaxKind::TIME_KW)
1913 }
1914 #[inline]
1915 pub fn zone_token(&self) -> Option<SyntaxToken> {
1916 support::token(&self.syntax, SyntaxKind::ZONE_KW)
1917 }
1918}
1919
1920#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1921pub struct AttachPartition {
1922 pub(crate) syntax: SyntaxNode,
1923}
1924impl AttachPartition {
1925 #[inline]
1926 pub fn partition_type(&self) -> Option<PartitionType> {
1927 support::child(&self.syntax)
1928 }
1929 #[inline]
1930 pub fn path(&self) -> Option<Path> {
1931 support::child(&self.syntax)
1932 }
1933 #[inline]
1934 pub fn attach_token(&self) -> Option<SyntaxToken> {
1935 support::token(&self.syntax, SyntaxKind::ATTACH_KW)
1936 }
1937 #[inline]
1938 pub fn partition_token(&self) -> Option<SyntaxToken> {
1939 support::token(&self.syntax, SyntaxKind::PARTITION_KW)
1940 }
1941}
1942
1943#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1944pub struct AttributeList {
1945 pub(crate) syntax: SyntaxNode,
1946}
1947impl AttributeList {
1948 #[inline]
1949 pub fn attribute_options(&self) -> AstChildren<AttributeOption> {
1950 support::children(&self.syntax)
1951 }
1952 #[inline]
1953 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
1954 support::token(&self.syntax, SyntaxKind::L_PAREN)
1955 }
1956 #[inline]
1957 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
1958 support::token(&self.syntax, SyntaxKind::R_PAREN)
1959 }
1960}
1961
1962#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1963pub struct AttributeOption {
1964 pub(crate) syntax: SyntaxNode,
1965}
1966impl AttributeOption {
1967 #[inline]
1968 pub fn attribute_value(&self) -> Option<AttributeValue> {
1969 support::child(&self.syntax)
1970 }
1971 #[inline]
1972 pub fn name(&self) -> Option<Name> {
1973 support::child(&self.syntax)
1974 }
1975 #[inline]
1976 pub fn dot_token(&self) -> Option<SyntaxToken> {
1977 support::token(&self.syntax, SyntaxKind::DOT)
1978 }
1979 #[inline]
1980 pub fn eq_token(&self) -> Option<SyntaxToken> {
1981 support::token(&self.syntax, SyntaxKind::EQ)
1982 }
1983}
1984
1985#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1986pub struct AttributeValue {
1987 pub(crate) syntax: SyntaxNode,
1988}
1989impl AttributeValue {
1990 #[inline]
1991 pub fn literal(&self) -> Option<Literal> {
1992 support::child(&self.syntax)
1993 }
1994 #[inline]
1995 pub fn op(&self) -> Option<Op> {
1996 support::child(&self.syntax)
1997 }
1998 #[inline]
1999 pub fn ty(&self) -> Option<Type> {
2000 support::child(&self.syntax)
2001 }
2002 #[inline]
2003 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
2004 support::token(&self.syntax, SyntaxKind::L_PAREN)
2005 }
2006 #[inline]
2007 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
2008 support::token(&self.syntax, SyntaxKind::R_PAREN)
2009 }
2010 #[inline]
2011 pub fn none_token(&self) -> Option<SyntaxToken> {
2012 support::token(&self.syntax, SyntaxKind::NONE_KW)
2013 }
2014 #[inline]
2015 pub fn operator_token(&self) -> Option<SyntaxToken> {
2016 support::token(&self.syntax, SyntaxKind::OPERATOR_KW)
2017 }
2018}
2019
2020#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2021pub struct Begin {
2022 pub(crate) syntax: SyntaxNode,
2023}
2024impl Begin {
2025 #[inline]
2026 pub fn transaction_mode_list(&self) -> Option<TransactionModeList> {
2027 support::child(&self.syntax)
2028 }
2029 #[inline]
2030 pub fn begin_token(&self) -> Option<SyntaxToken> {
2031 support::token(&self.syntax, SyntaxKind::BEGIN_KW)
2032 }
2033 #[inline]
2034 pub fn start_token(&self) -> Option<SyntaxToken> {
2035 support::token(&self.syntax, SyntaxKind::START_KW)
2036 }
2037 #[inline]
2038 pub fn transaction_token(&self) -> Option<SyntaxToken> {
2039 support::token(&self.syntax, SyntaxKind::TRANSACTION_KW)
2040 }
2041 #[inline]
2042 pub fn work_token(&self) -> Option<SyntaxToken> {
2043 support::token(&self.syntax, SyntaxKind::WORK_KW)
2044 }
2045}
2046
2047#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2048pub struct BeginFuncOption {
2049 pub(crate) syntax: SyntaxNode,
2050}
2051impl BeginFuncOption {
2052 #[inline]
2053 pub fn return_func_option(&self) -> Option<ReturnFuncOption> {
2054 support::child(&self.syntax)
2055 }
2056 #[inline]
2057 pub fn stmt(&self) -> Option<Stmt> {
2058 support::child(&self.syntax)
2059 }
2060 #[inline]
2061 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
2062 support::token(&self.syntax, SyntaxKind::SEMICOLON)
2063 }
2064}
2065
2066#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2067pub struct BeginFuncOptionList {
2068 pub(crate) syntax: SyntaxNode,
2069}
2070impl BeginFuncOptionList {
2071 #[inline]
2072 pub fn begin_func_options(&self) -> AstChildren<BeginFuncOption> {
2073 support::children(&self.syntax)
2074 }
2075 #[inline]
2076 pub fn atomic_token(&self) -> Option<SyntaxToken> {
2077 support::token(&self.syntax, SyntaxKind::ATOMIC_KW)
2078 }
2079 #[inline]
2080 pub fn begin_token(&self) -> Option<SyntaxToken> {
2081 support::token(&self.syntax, SyntaxKind::BEGIN_KW)
2082 }
2083 #[inline]
2084 pub fn end_token(&self) -> Option<SyntaxToken> {
2085 support::token(&self.syntax, SyntaxKind::END_KW)
2086 }
2087}
2088
2089#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2090pub struct BetweenExpr {
2091 pub(crate) syntax: SyntaxNode,
2092}
2093impl BetweenExpr {
2094 #[inline]
2095 pub fn and_token(&self) -> Option<SyntaxToken> {
2096 support::token(&self.syntax, SyntaxKind::AND_KW)
2097 }
2098 #[inline]
2099 pub fn between_token(&self) -> Option<SyntaxToken> {
2100 support::token(&self.syntax, SyntaxKind::BETWEEN_KW)
2101 }
2102}
2103
2104#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2105pub struct BinExpr {
2106 pub(crate) syntax: SyntaxNode,
2107}
2108impl BinExpr {
2109 #[inline]
2110 pub fn op(&self) -> Option<Op> {
2111 support::child(&self.syntax)
2112 }
2113}
2114
2115#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2116pub struct BitType {
2117 pub(crate) syntax: SyntaxNode,
2118}
2119impl BitType {
2120 #[inline]
2121 pub fn arg_list(&self) -> Option<ArgList> {
2122 support::child(&self.syntax)
2123 }
2124 #[inline]
2125 pub fn bit_token(&self) -> Option<SyntaxToken> {
2126 support::token(&self.syntax, SyntaxKind::BIT_KW)
2127 }
2128 #[inline]
2129 pub fn varying_token(&self) -> Option<SyntaxToken> {
2130 support::token(&self.syntax, SyntaxKind::VARYING_KW)
2131 }
2132}
2133
2134#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2135pub struct Call {
2136 pub(crate) syntax: SyntaxNode,
2137}
2138impl Call {
2139 #[inline]
2140 pub fn arg_list(&self) -> Option<ArgList> {
2141 support::child(&self.syntax)
2142 }
2143 #[inline]
2144 pub fn path(&self) -> Option<Path> {
2145 support::child(&self.syntax)
2146 }
2147 #[inline]
2148 pub fn call_token(&self) -> Option<SyntaxToken> {
2149 support::token(&self.syntax, SyntaxKind::CALL_KW)
2150 }
2151}
2152
2153#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2154pub struct CallExpr {
2155 pub(crate) syntax: SyntaxNode,
2156}
2157impl CallExpr {
2158 #[inline]
2159 pub fn all_fn(&self) -> Option<AllFn> {
2160 support::child(&self.syntax)
2161 }
2162 #[inline]
2163 pub fn any_fn(&self) -> Option<AnyFn> {
2164 support::child(&self.syntax)
2165 }
2166 #[inline]
2167 pub fn arg_list(&self) -> Option<ArgList> {
2168 support::child(&self.syntax)
2169 }
2170 #[inline]
2171 pub fn exists_fn(&self) -> Option<ExistsFn> {
2172 support::child(&self.syntax)
2173 }
2174 #[inline]
2175 pub fn expr(&self) -> Option<Expr> {
2176 support::child(&self.syntax)
2177 }
2178 #[inline]
2179 pub fn extract_fn(&self) -> Option<ExtractFn> {
2180 support::child(&self.syntax)
2181 }
2182 #[inline]
2183 pub fn filter_clause(&self) -> Option<FilterClause> {
2184 support::child(&self.syntax)
2185 }
2186 #[inline]
2187 pub fn json_array_agg_fn(&self) -> Option<JsonArrayAggFn> {
2188 support::child(&self.syntax)
2189 }
2190 #[inline]
2191 pub fn json_array_fn(&self) -> Option<JsonArrayFn> {
2192 support::child(&self.syntax)
2193 }
2194 #[inline]
2195 pub fn json_exists_fn(&self) -> Option<JsonExistsFn> {
2196 support::child(&self.syntax)
2197 }
2198 #[inline]
2199 pub fn json_fn(&self) -> Option<JsonFn> {
2200 support::child(&self.syntax)
2201 }
2202 #[inline]
2203 pub fn json_object_agg_fn(&self) -> Option<JsonObjectAggFn> {
2204 support::child(&self.syntax)
2205 }
2206 #[inline]
2207 pub fn json_object_fn(&self) -> Option<JsonObjectFn> {
2208 support::child(&self.syntax)
2209 }
2210 #[inline]
2211 pub fn json_query_fn(&self) -> Option<JsonQueryFn> {
2212 support::child(&self.syntax)
2213 }
2214 #[inline]
2215 pub fn json_scalar_fn(&self) -> Option<JsonScalarFn> {
2216 support::child(&self.syntax)
2217 }
2218 #[inline]
2219 pub fn json_serialize_fn(&self) -> Option<JsonSerializeFn> {
2220 support::child(&self.syntax)
2221 }
2222 #[inline]
2223 pub fn json_value_fn(&self) -> Option<JsonValueFn> {
2224 support::child(&self.syntax)
2225 }
2226 #[inline]
2227 pub fn over_clause(&self) -> Option<OverClause> {
2228 support::child(&self.syntax)
2229 }
2230 #[inline]
2231 pub fn overlay_fn(&self) -> Option<OverlayFn> {
2232 support::child(&self.syntax)
2233 }
2234 #[inline]
2235 pub fn position_fn(&self) -> Option<PositionFn> {
2236 support::child(&self.syntax)
2237 }
2238 #[inline]
2239 pub fn some_fn(&self) -> Option<SomeFn> {
2240 support::child(&self.syntax)
2241 }
2242 #[inline]
2243 pub fn substring_fn(&self) -> Option<SubstringFn> {
2244 support::child(&self.syntax)
2245 }
2246 #[inline]
2247 pub fn trim_fn(&self) -> Option<TrimFn> {
2248 support::child(&self.syntax)
2249 }
2250 #[inline]
2251 pub fn within_clause(&self) -> Option<WithinClause> {
2252 support::child(&self.syntax)
2253 }
2254 #[inline]
2255 pub fn xml_element_fn(&self) -> Option<XmlElementFn> {
2256 support::child(&self.syntax)
2257 }
2258 #[inline]
2259 pub fn xml_exists_fn(&self) -> Option<XmlExistsFn> {
2260 support::child(&self.syntax)
2261 }
2262 #[inline]
2263 pub fn xml_forest_fn(&self) -> Option<XmlForestFn> {
2264 support::child(&self.syntax)
2265 }
2266 #[inline]
2267 pub fn xml_parse_fn(&self) -> Option<XmlParseFn> {
2268 support::child(&self.syntax)
2269 }
2270 #[inline]
2271 pub fn xml_pi_fn(&self) -> Option<XmlPiFn> {
2272 support::child(&self.syntax)
2273 }
2274 #[inline]
2275 pub fn xml_root_fn(&self) -> Option<XmlRootFn> {
2276 support::child(&self.syntax)
2277 }
2278 #[inline]
2279 pub fn xml_serialize_fn(&self) -> Option<XmlSerializeFn> {
2280 support::child(&self.syntax)
2281 }
2282}
2283
2284#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2285pub struct Cascade {
2286 pub(crate) syntax: SyntaxNode,
2287}
2288impl Cascade {
2289 #[inline]
2290 pub fn cascade_token(&self) -> Option<SyntaxToken> {
2291 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
2292 }
2293}
2294
2295#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2296pub struct CaseExpr {
2297 pub(crate) syntax: SyntaxNode,
2298}
2299impl CaseExpr {
2300 #[inline]
2301 pub fn else_clause(&self) -> Option<ElseClause> {
2302 support::child(&self.syntax)
2303 }
2304 #[inline]
2305 pub fn expr(&self) -> Option<Expr> {
2306 support::child(&self.syntax)
2307 }
2308 #[inline]
2309 pub fn when_clause_list(&self) -> Option<WhenClauseList> {
2310 support::child(&self.syntax)
2311 }
2312 #[inline]
2313 pub fn case_token(&self) -> Option<SyntaxToken> {
2314 support::token(&self.syntax, SyntaxKind::CASE_KW)
2315 }
2316}
2317
2318#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2319pub struct CastExpr {
2320 pub(crate) syntax: SyntaxNode,
2321}
2322impl CastExpr {
2323 #[inline]
2324 pub fn colon_colon(&self) -> Option<ColonColon> {
2325 support::child(&self.syntax)
2326 }
2327 #[inline]
2328 pub fn expr(&self) -> Option<Expr> {
2329 support::child(&self.syntax)
2330 }
2331 #[inline]
2332 pub fn literal(&self) -> Option<Literal> {
2333 support::child(&self.syntax)
2334 }
2335 #[inline]
2336 pub fn ty(&self) -> Option<Type> {
2337 support::child(&self.syntax)
2338 }
2339 #[inline]
2340 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
2341 support::token(&self.syntax, SyntaxKind::L_PAREN)
2342 }
2343 #[inline]
2344 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
2345 support::token(&self.syntax, SyntaxKind::R_PAREN)
2346 }
2347 #[inline]
2348 pub fn as_token(&self) -> Option<SyntaxToken> {
2349 support::token(&self.syntax, SyntaxKind::AS_KW)
2350 }
2351 #[inline]
2352 pub fn cast_token(&self) -> Option<SyntaxToken> {
2353 support::token(&self.syntax, SyntaxKind::CAST_KW)
2354 }
2355 #[inline]
2356 pub fn treat_token(&self) -> Option<SyntaxToken> {
2357 support::token(&self.syntax, SyntaxKind::TREAT_KW)
2358 }
2359}
2360
2361#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2362pub struct CastSig {
2363 pub(crate) syntax: SyntaxNode,
2364}
2365impl CastSig {
2366 #[inline]
2367 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
2368 support::token(&self.syntax, SyntaxKind::L_PAREN)
2369 }
2370 #[inline]
2371 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
2372 support::token(&self.syntax, SyntaxKind::R_PAREN)
2373 }
2374 #[inline]
2375 pub fn as_token(&self) -> Option<SyntaxToken> {
2376 support::token(&self.syntax, SyntaxKind::AS_KW)
2377 }
2378}
2379
2380#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2381pub struct CharType {
2382 pub(crate) syntax: SyntaxNode,
2383}
2384impl CharType {
2385 #[inline]
2386 pub fn arg_list(&self) -> Option<ArgList> {
2387 support::child(&self.syntax)
2388 }
2389 #[inline]
2390 pub fn char_token(&self) -> Option<SyntaxToken> {
2391 support::token(&self.syntax, SyntaxKind::CHAR_KW)
2392 }
2393 #[inline]
2394 pub fn character_token(&self) -> Option<SyntaxToken> {
2395 support::token(&self.syntax, SyntaxKind::CHARACTER_KW)
2396 }
2397 #[inline]
2398 pub fn nchar_token(&self) -> Option<SyntaxToken> {
2399 support::token(&self.syntax, SyntaxKind::NCHAR_KW)
2400 }
2401 #[inline]
2402 pub fn varchar_token(&self) -> Option<SyntaxToken> {
2403 support::token(&self.syntax, SyntaxKind::VARCHAR_KW)
2404 }
2405 #[inline]
2406 pub fn varying_token(&self) -> Option<SyntaxToken> {
2407 support::token(&self.syntax, SyntaxKind::VARYING_KW)
2408 }
2409}
2410
2411#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2412pub struct CheckConstraint {
2413 pub(crate) syntax: SyntaxNode,
2414}
2415impl CheckConstraint {
2416 #[inline]
2417 pub fn expr(&self) -> Option<Expr> {
2418 support::child(&self.syntax)
2419 }
2420 #[inline]
2421 pub fn name(&self) -> Option<Name> {
2422 support::child(&self.syntax)
2423 }
2424 #[inline]
2425 pub fn no_inherit(&self) -> Option<NoInherit> {
2426 support::child(&self.syntax)
2427 }
2428 #[inline]
2429 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
2430 support::token(&self.syntax, SyntaxKind::L_PAREN)
2431 }
2432 #[inline]
2433 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
2434 support::token(&self.syntax, SyntaxKind::R_PAREN)
2435 }
2436 #[inline]
2437 pub fn check_token(&self) -> Option<SyntaxToken> {
2438 support::token(&self.syntax, SyntaxKind::CHECK_KW)
2439 }
2440 #[inline]
2441 pub fn constraint_token(&self) -> Option<SyntaxToken> {
2442 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
2443 }
2444}
2445
2446#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2447pub struct Checkpoint {
2448 pub(crate) syntax: SyntaxNode,
2449}
2450impl Checkpoint {
2451 #[inline]
2452 pub fn checkpoint_token(&self) -> Option<SyntaxToken> {
2453 support::token(&self.syntax, SyntaxKind::CHECKPOINT_KW)
2454 }
2455}
2456
2457#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2458pub struct Close {
2459 pub(crate) syntax: SyntaxNode,
2460}
2461impl Close {
2462 #[inline]
2463 pub fn name_ref(&self) -> Option<NameRef> {
2464 support::child(&self.syntax)
2465 }
2466 #[inline]
2467 pub fn close_token(&self) -> Option<SyntaxToken> {
2468 support::token(&self.syntax, SyntaxKind::CLOSE_KW)
2469 }
2470}
2471
2472#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2473pub struct Cluster {
2474 pub(crate) syntax: SyntaxNode,
2475}
2476impl Cluster {
2477 #[inline]
2478 pub fn option_item_list(&self) -> Option<OptionItemList> {
2479 support::child(&self.syntax)
2480 }
2481 #[inline]
2482 pub fn path(&self) -> Option<Path> {
2483 support::child(&self.syntax)
2484 }
2485 #[inline]
2486 pub fn using_method(&self) -> Option<UsingMethod> {
2487 support::child(&self.syntax)
2488 }
2489 #[inline]
2490 pub fn cluster_token(&self) -> Option<SyntaxToken> {
2491 support::token(&self.syntax, SyntaxKind::CLUSTER_KW)
2492 }
2493 #[inline]
2494 pub fn verbose_token(&self) -> Option<SyntaxToken> {
2495 support::token(&self.syntax, SyntaxKind::VERBOSE_KW)
2496 }
2497}
2498
2499#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2500pub struct ClusterOn {
2501 pub(crate) syntax: SyntaxNode,
2502}
2503impl ClusterOn {
2504 #[inline]
2505 pub fn cluster_token(&self) -> Option<SyntaxToken> {
2506 support::token(&self.syntax, SyntaxKind::CLUSTER_KW)
2507 }
2508 #[inline]
2509 pub fn on_token(&self) -> Option<SyntaxToken> {
2510 support::token(&self.syntax, SyntaxKind::ON_KW)
2511 }
2512}
2513
2514#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2515pub struct Collate {
2516 pub(crate) syntax: SyntaxNode,
2517}
2518impl Collate {
2519 #[inline]
2520 pub fn path(&self) -> Option<Path> {
2521 support::child(&self.syntax)
2522 }
2523 #[inline]
2524 pub fn collate_token(&self) -> Option<SyntaxToken> {
2525 support::token(&self.syntax, SyntaxKind::COLLATE_KW)
2526 }
2527}
2528
2529#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2530pub struct ColonColon {
2531 pub(crate) syntax: SyntaxNode,
2532}
2533impl ColonColon {
2534 #[inline]
2535 pub fn colon_token(&self) -> Option<SyntaxToken> {
2536 support::token(&self.syntax, SyntaxKind::COLON)
2537 }
2538}
2539
2540#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2541pub struct ColonEq {
2542 pub(crate) syntax: SyntaxNode,
2543}
2544impl ColonEq {
2545 #[inline]
2546 pub fn colon_token(&self) -> Option<SyntaxToken> {
2547 support::token(&self.syntax, SyntaxKind::COLON)
2548 }
2549 #[inline]
2550 pub fn eq_token(&self) -> Option<SyntaxToken> {
2551 support::token(&self.syntax, SyntaxKind::EQ)
2552 }
2553}
2554
2555#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2556pub struct Column {
2557 pub(crate) syntax: SyntaxNode,
2558}
2559impl Column {
2560 #[inline]
2561 pub fn collate(&self) -> Option<Collate> {
2562 support::child(&self.syntax)
2563 }
2564 #[inline]
2565 pub fn compression_method(&self) -> Option<CompressionMethod> {
2566 support::child(&self.syntax)
2567 }
2568 #[inline]
2569 pub fn constraint(&self) -> Option<ColumnConstraint> {
2570 support::child(&self.syntax)
2571 }
2572 #[inline]
2573 pub fn deferrable_constraint_option(&self) -> Option<DeferrableConstraintOption> {
2574 support::child(&self.syntax)
2575 }
2576 #[inline]
2577 pub fn enforced(&self) -> Option<Enforced> {
2578 support::child(&self.syntax)
2579 }
2580 #[inline]
2581 pub fn index_expr(&self) -> Option<IndexExpr> {
2582 support::child(&self.syntax)
2583 }
2584 #[inline]
2585 pub fn initially_deferred_constraint_option(
2586 &self,
2587 ) -> Option<InitiallyDeferredConstraintOption> {
2588 support::child(&self.syntax)
2589 }
2590 #[inline]
2591 pub fn initially_immediate_constraint_option(
2592 &self,
2593 ) -> Option<InitiallyImmediateConstraintOption> {
2594 support::child(&self.syntax)
2595 }
2596 #[inline]
2597 pub fn name(&self) -> Option<Name> {
2598 support::child(&self.syntax)
2599 }
2600 #[inline]
2601 pub fn name_ref(&self) -> Option<NameRef> {
2602 support::child(&self.syntax)
2603 }
2604 #[inline]
2605 pub fn not_deferrable_constraint_option(&self) -> Option<NotDeferrableConstraintOption> {
2606 support::child(&self.syntax)
2607 }
2608 #[inline]
2609 pub fn not_enforced(&self) -> Option<NotEnforced> {
2610 support::child(&self.syntax)
2611 }
2612 #[inline]
2613 pub fn storage(&self) -> Option<Storage> {
2614 support::child(&self.syntax)
2615 }
2616 #[inline]
2617 pub fn ty(&self) -> Option<Type> {
2618 support::child(&self.syntax)
2619 }
2620 #[inline]
2621 pub fn with_options(&self) -> Option<WithOptions> {
2622 support::child(&self.syntax)
2623 }
2624 #[inline]
2625 pub fn period_token(&self) -> Option<SyntaxToken> {
2626 support::token(&self.syntax, SyntaxKind::PERIOD_KW)
2627 }
2628}
2629
2630#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2631pub struct ColumnList {
2632 pub(crate) syntax: SyntaxNode,
2633}
2634impl ColumnList {
2635 #[inline]
2636 pub fn columns(&self) -> AstChildren<Column> {
2637 support::children(&self.syntax)
2638 }
2639 #[inline]
2640 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
2641 support::token(&self.syntax, SyntaxKind::L_PAREN)
2642 }
2643 #[inline]
2644 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
2645 support::token(&self.syntax, SyntaxKind::R_PAREN)
2646 }
2647}
2648
2649#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2650pub struct CommentOn {
2651 pub(crate) syntax: SyntaxNode,
2652}
2653impl CommentOn {
2654 #[inline]
2655 pub fn literal(&self) -> Option<Literal> {
2656 support::child(&self.syntax)
2657 }
2658 #[inline]
2659 pub fn name_ref(&self) -> Option<NameRef> {
2660 support::child(&self.syntax)
2661 }
2662 #[inline]
2663 pub fn path(&self) -> Option<Path> {
2664 support::child(&self.syntax)
2665 }
2666 #[inline]
2667 pub fn comment_token(&self) -> Option<SyntaxToken> {
2668 support::token(&self.syntax, SyntaxKind::COMMENT_KW)
2669 }
2670 #[inline]
2671 pub fn constraint_token(&self) -> Option<SyntaxToken> {
2672 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
2673 }
2674 #[inline]
2675 pub fn domain_token(&self) -> Option<SyntaxToken> {
2676 support::token(&self.syntax, SyntaxKind::DOMAIN_KW)
2677 }
2678 #[inline]
2679 pub fn is_token(&self) -> Option<SyntaxToken> {
2680 support::token(&self.syntax, SyntaxKind::IS_KW)
2681 }
2682 #[inline]
2683 pub fn null_token(&self) -> Option<SyntaxToken> {
2684 support::token(&self.syntax, SyntaxKind::NULL_KW)
2685 }
2686 #[inline]
2687 pub fn on_token(&self) -> Option<SyntaxToken> {
2688 support::token(&self.syntax, SyntaxKind::ON_KW)
2689 }
2690 #[inline]
2691 pub fn table_token(&self) -> Option<SyntaxToken> {
2692 support::token(&self.syntax, SyntaxKind::TABLE_KW)
2693 }
2694}
2695
2696#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2697pub struct Commit {
2698 pub(crate) syntax: SyntaxNode,
2699}
2700impl Commit {
2701 #[inline]
2702 pub fn literal(&self) -> Option<Literal> {
2703 support::child(&self.syntax)
2704 }
2705 #[inline]
2706 pub fn and_token(&self) -> Option<SyntaxToken> {
2707 support::token(&self.syntax, SyntaxKind::AND_KW)
2708 }
2709 #[inline]
2710 pub fn chain_token(&self) -> Option<SyntaxToken> {
2711 support::token(&self.syntax, SyntaxKind::CHAIN_KW)
2712 }
2713 #[inline]
2714 pub fn commit_token(&self) -> Option<SyntaxToken> {
2715 support::token(&self.syntax, SyntaxKind::COMMIT_KW)
2716 }
2717 #[inline]
2718 pub fn no_token(&self) -> Option<SyntaxToken> {
2719 support::token(&self.syntax, SyntaxKind::NO_KW)
2720 }
2721 #[inline]
2722 pub fn prepared_token(&self) -> Option<SyntaxToken> {
2723 support::token(&self.syntax, SyntaxKind::PREPARED_KW)
2724 }
2725 #[inline]
2726 pub fn transaction_token(&self) -> Option<SyntaxToken> {
2727 support::token(&self.syntax, SyntaxKind::TRANSACTION_KW)
2728 }
2729 #[inline]
2730 pub fn work_token(&self) -> Option<SyntaxToken> {
2731 support::token(&self.syntax, SyntaxKind::WORK_KW)
2732 }
2733}
2734
2735#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2736pub struct CompoundSelect {
2737 pub(crate) syntax: SyntaxNode,
2738}
2739impl CompoundSelect {
2740 #[inline]
2741 pub fn except_token(&self) -> Option<SyntaxToken> {
2742 support::token(&self.syntax, SyntaxKind::EXCEPT_KW)
2743 }
2744 #[inline]
2745 pub fn intersect_token(&self) -> Option<SyntaxToken> {
2746 support::token(&self.syntax, SyntaxKind::INTERSECT_KW)
2747 }
2748 #[inline]
2749 pub fn union_token(&self) -> Option<SyntaxToken> {
2750 support::token(&self.syntax, SyntaxKind::UNION_KW)
2751 }
2752}
2753
2754#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2755pub struct CompressionMethod {
2756 pub(crate) syntax: SyntaxNode,
2757}
2758impl CompressionMethod {
2759 #[inline]
2760 pub fn compression_token(&self) -> Option<SyntaxToken> {
2761 support::token(&self.syntax, SyntaxKind::COMPRESSION_KW)
2762 }
2763 #[inline]
2764 pub fn default_token(&self) -> Option<SyntaxToken> {
2765 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
2766 }
2767 #[inline]
2768 pub fn ident_token(&self) -> Option<SyntaxToken> {
2769 support::token(&self.syntax, SyntaxKind::IDENT)
2770 }
2771}
2772
2773#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2774pub struct ConflictDoNothing {
2775 pub(crate) syntax: SyntaxNode,
2776}
2777impl ConflictDoNothing {
2778 #[inline]
2779 pub fn do_token(&self) -> Option<SyntaxToken> {
2780 support::token(&self.syntax, SyntaxKind::DO_KW)
2781 }
2782 #[inline]
2783 pub fn nothing_token(&self) -> Option<SyntaxToken> {
2784 support::token(&self.syntax, SyntaxKind::NOTHING_KW)
2785 }
2786}
2787
2788#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2789pub struct ConflictDoUpdateSet {
2790 pub(crate) syntax: SyntaxNode,
2791}
2792impl ConflictDoUpdateSet {
2793 #[inline]
2794 pub fn set_clause(&self) -> Option<SetClause> {
2795 support::child(&self.syntax)
2796 }
2797 #[inline]
2798 pub fn where_clause(&self) -> Option<WhereClause> {
2799 support::child(&self.syntax)
2800 }
2801 #[inline]
2802 pub fn do_token(&self) -> Option<SyntaxToken> {
2803 support::token(&self.syntax, SyntaxKind::DO_KW)
2804 }
2805 #[inline]
2806 pub fn update_token(&self) -> Option<SyntaxToken> {
2807 support::token(&self.syntax, SyntaxKind::UPDATE_KW)
2808 }
2809}
2810
2811#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2812pub struct ConflictIndexItem {
2813 pub(crate) syntax: SyntaxNode,
2814}
2815impl ConflictIndexItem {
2816 #[inline]
2817 pub fn collate(&self) -> Option<Collate> {
2818 support::child(&self.syntax)
2819 }
2820 #[inline]
2821 pub fn expr(&self) -> Option<Expr> {
2822 support::child(&self.syntax)
2823 }
2824 #[inline]
2825 pub fn ident_token(&self) -> Option<SyntaxToken> {
2826 support::token(&self.syntax, SyntaxKind::IDENT)
2827 }
2828}
2829
2830#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2831pub struct ConflictIndexItemList {
2832 pub(crate) syntax: SyntaxNode,
2833}
2834impl ConflictIndexItemList {
2835 #[inline]
2836 pub fn conflict_index_items(&self) -> AstChildren<ConflictIndexItem> {
2837 support::children(&self.syntax)
2838 }
2839 #[inline]
2840 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
2841 support::token(&self.syntax, SyntaxKind::L_PAREN)
2842 }
2843 #[inline]
2844 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
2845 support::token(&self.syntax, SyntaxKind::R_PAREN)
2846 }
2847}
2848
2849#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2850pub struct ConflictOnConstraint {
2851 pub(crate) syntax: SyntaxNode,
2852}
2853impl ConflictOnConstraint {
2854 #[inline]
2855 pub fn name_ref(&self) -> Option<NameRef> {
2856 support::child(&self.syntax)
2857 }
2858 #[inline]
2859 pub fn constraint_token(&self) -> Option<SyntaxToken> {
2860 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
2861 }
2862 #[inline]
2863 pub fn on_token(&self) -> Option<SyntaxToken> {
2864 support::token(&self.syntax, SyntaxKind::ON_KW)
2865 }
2866}
2867
2868#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2869pub struct ConflictOnIndex {
2870 pub(crate) syntax: SyntaxNode,
2871}
2872impl ConflictOnIndex {
2873 #[inline]
2874 pub fn conflict_index_item_list(&self) -> Option<ConflictIndexItemList> {
2875 support::child(&self.syntax)
2876 }
2877 #[inline]
2878 pub fn where_clause(&self) -> Option<WhereClause> {
2879 support::child(&self.syntax)
2880 }
2881}
2882
2883#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2884pub struct ConstraintExclusion {
2885 pub(crate) syntax: SyntaxNode,
2886}
2887impl ConstraintExclusion {
2888 #[inline]
2889 pub fn expr(&self) -> Option<Expr> {
2890 support::child(&self.syntax)
2891 }
2892 #[inline]
2893 pub fn op(&self) -> Option<Op> {
2894 support::child(&self.syntax)
2895 }
2896 #[inline]
2897 pub fn with_token(&self) -> Option<SyntaxToken> {
2898 support::token(&self.syntax, SyntaxKind::WITH_KW)
2899 }
2900}
2901
2902#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2903pub struct ConstraintExclusionList {
2904 pub(crate) syntax: SyntaxNode,
2905}
2906impl ConstraintExclusionList {
2907 #[inline]
2908 pub fn constraint_exclusions(&self) -> AstChildren<ConstraintExclusion> {
2909 support::children(&self.syntax)
2910 }
2911 #[inline]
2912 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
2913 support::token(&self.syntax, SyntaxKind::L_PAREN)
2914 }
2915 #[inline]
2916 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
2917 support::token(&self.syntax, SyntaxKind::R_PAREN)
2918 }
2919}
2920
2921#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2922pub struct ConstraintIncludeClause {
2923 pub(crate) syntax: SyntaxNode,
2924}
2925impl ConstraintIncludeClause {
2926 #[inline]
2927 pub fn include_token(&self) -> Option<SyntaxToken> {
2928 support::token(&self.syntax, SyntaxKind::INCLUDE_KW)
2929 }
2930}
2931
2932#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2933pub struct ConstraintIndexMethod {
2934 pub(crate) syntax: SyntaxNode,
2935}
2936impl ConstraintIndexMethod {
2937 #[inline]
2938 pub fn using_token(&self) -> Option<SyntaxToken> {
2939 support::token(&self.syntax, SyntaxKind::USING_KW)
2940 }
2941}
2942
2943#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2944pub struct ConstraintIndexTablespace {
2945 pub(crate) syntax: SyntaxNode,
2946}
2947impl ConstraintIndexTablespace {
2948 #[inline]
2949 pub fn name_ref(&self) -> Option<NameRef> {
2950 support::child(&self.syntax)
2951 }
2952 #[inline]
2953 pub fn index_token(&self) -> Option<SyntaxToken> {
2954 support::token(&self.syntax, SyntaxKind::INDEX_KW)
2955 }
2956 #[inline]
2957 pub fn tablespace_token(&self) -> Option<SyntaxToken> {
2958 support::token(&self.syntax, SyntaxKind::TABLESPACE_KW)
2959 }
2960 #[inline]
2961 pub fn using_token(&self) -> Option<SyntaxToken> {
2962 support::token(&self.syntax, SyntaxKind::USING_KW)
2963 }
2964}
2965
2966#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2967pub struct Copy {
2968 pub(crate) syntax: SyntaxNode,
2969}
2970impl Copy {
2971 #[inline]
2972 pub fn column_list(&self) -> Option<ColumnList> {
2973 support::child(&self.syntax)
2974 }
2975 #[inline]
2976 pub fn literal(&self) -> Option<Literal> {
2977 support::child(&self.syntax)
2978 }
2979 #[inline]
2980 pub fn path(&self) -> Option<Path> {
2981 support::child(&self.syntax)
2982 }
2983 #[inline]
2984 pub fn preparable_stmt(&self) -> Option<PreparableStmt> {
2985 support::child(&self.syntax)
2986 }
2987 #[inline]
2988 pub fn where_clause(&self) -> Option<WhereClause> {
2989 support::child(&self.syntax)
2990 }
2991 #[inline]
2992 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
2993 support::token(&self.syntax, SyntaxKind::L_PAREN)
2994 }
2995 #[inline]
2996 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
2997 support::token(&self.syntax, SyntaxKind::R_PAREN)
2998 }
2999 #[inline]
3000 pub fn binary_token(&self) -> Option<SyntaxToken> {
3001 support::token(&self.syntax, SyntaxKind::BINARY_KW)
3002 }
3003 #[inline]
3004 pub fn copy_token(&self) -> Option<SyntaxToken> {
3005 support::token(&self.syntax, SyntaxKind::COPY_KW)
3006 }
3007 #[inline]
3008 pub fn from_token(&self) -> Option<SyntaxToken> {
3009 support::token(&self.syntax, SyntaxKind::FROM_KW)
3010 }
3011 #[inline]
3012 pub fn program_token(&self) -> Option<SyntaxToken> {
3013 support::token(&self.syntax, SyntaxKind::PROGRAM_KW)
3014 }
3015 #[inline]
3016 pub fn stdin_token(&self) -> Option<SyntaxToken> {
3017 support::token(&self.syntax, SyntaxKind::STDIN_KW)
3018 }
3019 #[inline]
3020 pub fn stdout_token(&self) -> Option<SyntaxToken> {
3021 support::token(&self.syntax, SyntaxKind::STDOUT_KW)
3022 }
3023 #[inline]
3024 pub fn to_token(&self) -> Option<SyntaxToken> {
3025 support::token(&self.syntax, SyntaxKind::TO_KW)
3026 }
3027 #[inline]
3028 pub fn with_token(&self) -> Option<SyntaxToken> {
3029 support::token(&self.syntax, SyntaxKind::WITH_KW)
3030 }
3031}
3032
3033#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3034pub struct CopyOption {
3035 pub(crate) syntax: SyntaxNode,
3036}
3037impl CopyOption {
3038 #[inline]
3039 pub fn name(&self) -> Option<Name> {
3040 support::child(&self.syntax)
3041 }
3042}
3043
3044#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3045pub struct CopyOptionList {
3046 pub(crate) syntax: SyntaxNode,
3047}
3048impl CopyOptionList {
3049 #[inline]
3050 pub fn copy_options(&self) -> AstChildren<CopyOption> {
3051 support::children(&self.syntax)
3052 }
3053 #[inline]
3054 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
3055 support::token(&self.syntax, SyntaxKind::L_PAREN)
3056 }
3057 #[inline]
3058 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
3059 support::token(&self.syntax, SyntaxKind::R_PAREN)
3060 }
3061}
3062
3063#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3064pub struct CostFuncOption {
3065 pub(crate) syntax: SyntaxNode,
3066}
3067impl CostFuncOption {
3068 #[inline]
3069 pub fn cost_token(&self) -> Option<SyntaxToken> {
3070 support::token(&self.syntax, SyntaxKind::COST_KW)
3071 }
3072}
3073
3074#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3075pub struct CreateAccessMethod {
3076 pub(crate) syntax: SyntaxNode,
3077}
3078impl CreateAccessMethod {
3079 #[inline]
3080 pub fn handler_clause(&self) -> Option<HandlerClause> {
3081 support::child(&self.syntax)
3082 }
3083 #[inline]
3084 pub fn name(&self) -> Option<Path> {
3085 support::child(&self.syntax)
3086 }
3087 #[inline]
3088 pub fn access_token(&self) -> Option<SyntaxToken> {
3089 support::token(&self.syntax, SyntaxKind::ACCESS_KW)
3090 }
3091 #[inline]
3092 pub fn create_token(&self) -> Option<SyntaxToken> {
3093 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3094 }
3095 #[inline]
3096 pub fn index_token(&self) -> Option<SyntaxToken> {
3097 support::token(&self.syntax, SyntaxKind::INDEX_KW)
3098 }
3099 #[inline]
3100 pub fn method_token(&self) -> Option<SyntaxToken> {
3101 support::token(&self.syntax, SyntaxKind::METHOD_KW)
3102 }
3103 #[inline]
3104 pub fn table_token(&self) -> Option<SyntaxToken> {
3105 support::token(&self.syntax, SyntaxKind::TABLE_KW)
3106 }
3107 #[inline]
3108 pub fn type_token(&self) -> Option<SyntaxToken> {
3109 support::token(&self.syntax, SyntaxKind::TYPE_KW)
3110 }
3111}
3112
3113#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3114pub struct CreateAggregate {
3115 pub(crate) syntax: SyntaxNode,
3116}
3117impl CreateAggregate {
3118 #[inline]
3119 pub fn or_replace(&self) -> Option<OrReplace> {
3120 support::child(&self.syntax)
3121 }
3122 #[inline]
3123 pub fn param_list(&self) -> Option<ParamList> {
3124 support::child(&self.syntax)
3125 }
3126 #[inline]
3127 pub fn path(&self) -> Option<Path> {
3128 support::child(&self.syntax)
3129 }
3130 #[inline]
3131 pub fn aggregate_token(&self) -> Option<SyntaxToken> {
3132 support::token(&self.syntax, SyntaxKind::AGGREGATE_KW)
3133 }
3134 #[inline]
3135 pub fn create_token(&self) -> Option<SyntaxToken> {
3136 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3137 }
3138}
3139
3140#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3141pub struct CreateCast {
3142 pub(crate) syntax: SyntaxNode,
3143}
3144impl CreateCast {
3145 #[inline]
3146 pub fn cast_sig(&self) -> Option<CastSig> {
3147 support::child(&self.syntax)
3148 }
3149 #[inline]
3150 pub fn function_sig(&self) -> Option<FunctionSig> {
3151 support::child(&self.syntax)
3152 }
3153 #[inline]
3154 pub fn as_token(&self) -> Option<SyntaxToken> {
3155 support::token(&self.syntax, SyntaxKind::AS_KW)
3156 }
3157 #[inline]
3158 pub fn assignment_token(&self) -> Option<SyntaxToken> {
3159 support::token(&self.syntax, SyntaxKind::ASSIGNMENT_KW)
3160 }
3161 #[inline]
3162 pub fn cast_token(&self) -> Option<SyntaxToken> {
3163 support::token(&self.syntax, SyntaxKind::CAST_KW)
3164 }
3165 #[inline]
3166 pub fn create_token(&self) -> Option<SyntaxToken> {
3167 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3168 }
3169 #[inline]
3170 pub fn function_token(&self) -> Option<SyntaxToken> {
3171 support::token(&self.syntax, SyntaxKind::FUNCTION_KW)
3172 }
3173 #[inline]
3174 pub fn implicit_token(&self) -> Option<SyntaxToken> {
3175 support::token(&self.syntax, SyntaxKind::IMPLICIT_KW)
3176 }
3177 #[inline]
3178 pub fn inout_token(&self) -> Option<SyntaxToken> {
3179 support::token(&self.syntax, SyntaxKind::INOUT_KW)
3180 }
3181 #[inline]
3182 pub fn with_token(&self) -> Option<SyntaxToken> {
3183 support::token(&self.syntax, SyntaxKind::WITH_KW)
3184 }
3185 #[inline]
3186 pub fn without_token(&self) -> Option<SyntaxToken> {
3187 support::token(&self.syntax, SyntaxKind::WITHOUT_KW)
3188 }
3189}
3190
3191#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3192pub struct CreateCollation {
3193 pub(crate) syntax: SyntaxNode,
3194}
3195impl CreateCollation {
3196 #[inline]
3197 pub fn path(&self) -> Option<Path> {
3198 support::child(&self.syntax)
3199 }
3200 #[inline]
3201 pub fn collation_token(&self) -> Option<SyntaxToken> {
3202 support::token(&self.syntax, SyntaxKind::COLLATION_KW)
3203 }
3204 #[inline]
3205 pub fn create_token(&self) -> Option<SyntaxToken> {
3206 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3207 }
3208}
3209
3210#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3211pub struct CreateConversion {
3212 pub(crate) syntax: SyntaxNode,
3213}
3214impl CreateConversion {
3215 #[inline]
3216 pub fn literal(&self) -> Option<Literal> {
3217 support::child(&self.syntax)
3218 }
3219 #[inline]
3220 pub fn path(&self) -> Option<Path> {
3221 support::child(&self.syntax)
3222 }
3223 #[inline]
3224 pub fn conversion_token(&self) -> Option<SyntaxToken> {
3225 support::token(&self.syntax, SyntaxKind::CONVERSION_KW)
3226 }
3227 #[inline]
3228 pub fn create_token(&self) -> Option<SyntaxToken> {
3229 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3230 }
3231 #[inline]
3232 pub fn default_token(&self) -> Option<SyntaxToken> {
3233 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
3234 }
3235 #[inline]
3236 pub fn for_token(&self) -> Option<SyntaxToken> {
3237 support::token(&self.syntax, SyntaxKind::FOR_KW)
3238 }
3239 #[inline]
3240 pub fn from_token(&self) -> Option<SyntaxToken> {
3241 support::token(&self.syntax, SyntaxKind::FROM_KW)
3242 }
3243 #[inline]
3244 pub fn to_token(&self) -> Option<SyntaxToken> {
3245 support::token(&self.syntax, SyntaxKind::TO_KW)
3246 }
3247}
3248
3249#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3250pub struct CreateDatabase {
3251 pub(crate) syntax: SyntaxNode,
3252}
3253impl CreateDatabase {
3254 #[inline]
3255 pub fn create_database_option_list(&self) -> Option<CreateDatabaseOptionList> {
3256 support::child(&self.syntax)
3257 }
3258 #[inline]
3259 pub fn name(&self) -> Option<Name> {
3260 support::child(&self.syntax)
3261 }
3262 #[inline]
3263 pub fn create_token(&self) -> Option<SyntaxToken> {
3264 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3265 }
3266 #[inline]
3267 pub fn database_token(&self) -> Option<SyntaxToken> {
3268 support::token(&self.syntax, SyntaxKind::DATABASE_KW)
3269 }
3270}
3271
3272#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3273pub struct CreateDatabaseOption {
3274 pub(crate) syntax: SyntaxNode,
3275}
3276impl CreateDatabaseOption {
3277 #[inline]
3278 pub fn literal(&self) -> Option<Literal> {
3279 support::child(&self.syntax)
3280 }
3281 #[inline]
3282 pub fn eq_token(&self) -> Option<SyntaxToken> {
3283 support::token(&self.syntax, SyntaxKind::EQ)
3284 }
3285 #[inline]
3286 pub fn connection_token(&self) -> Option<SyntaxToken> {
3287 support::token(&self.syntax, SyntaxKind::CONNECTION_KW)
3288 }
3289 #[inline]
3290 pub fn default_token(&self) -> Option<SyntaxToken> {
3291 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
3292 }
3293 #[inline]
3294 pub fn encoding_token(&self) -> Option<SyntaxToken> {
3295 support::token(&self.syntax, SyntaxKind::ENCODING_KW)
3296 }
3297 #[inline]
3298 pub fn ident_token(&self) -> Option<SyntaxToken> {
3299 support::token(&self.syntax, SyntaxKind::IDENT)
3300 }
3301 #[inline]
3302 pub fn limit_token(&self) -> Option<SyntaxToken> {
3303 support::token(&self.syntax, SyntaxKind::LIMIT_KW)
3304 }
3305 #[inline]
3306 pub fn owner_token(&self) -> Option<SyntaxToken> {
3307 support::token(&self.syntax, SyntaxKind::OWNER_KW)
3308 }
3309 #[inline]
3310 pub fn tablespace_token(&self) -> Option<SyntaxToken> {
3311 support::token(&self.syntax, SyntaxKind::TABLESPACE_KW)
3312 }
3313 #[inline]
3314 pub fn template_token(&self) -> Option<SyntaxToken> {
3315 support::token(&self.syntax, SyntaxKind::TEMPLATE_KW)
3316 }
3317}
3318
3319#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3320pub struct CreateDatabaseOptionList {
3321 pub(crate) syntax: SyntaxNode,
3322}
3323impl CreateDatabaseOptionList {
3324 #[inline]
3325 pub fn create_database_options(&self) -> AstChildren<CreateDatabaseOption> {
3326 support::children(&self.syntax)
3327 }
3328 #[inline]
3329 pub fn with_token(&self) -> Option<SyntaxToken> {
3330 support::token(&self.syntax, SyntaxKind::WITH_KW)
3331 }
3332}
3333
3334#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3335pub struct CreateDomain {
3336 pub(crate) syntax: SyntaxNode,
3337}
3338impl CreateDomain {
3339 #[inline]
3340 pub fn collate(&self) -> Option<Collate> {
3341 support::child(&self.syntax)
3342 }
3343 #[inline]
3344 pub fn constraints(&self) -> AstChildren<Constraint> {
3345 support::children(&self.syntax)
3346 }
3347 #[inline]
3348 pub fn path(&self) -> Option<Path> {
3349 support::child(&self.syntax)
3350 }
3351 #[inline]
3352 pub fn ty(&self) -> Option<Type> {
3353 support::child(&self.syntax)
3354 }
3355 #[inline]
3356 pub fn as_token(&self) -> Option<SyntaxToken> {
3357 support::token(&self.syntax, SyntaxKind::AS_KW)
3358 }
3359 #[inline]
3360 pub fn create_token(&self) -> Option<SyntaxToken> {
3361 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3362 }
3363 #[inline]
3364 pub fn domain_token(&self) -> Option<SyntaxToken> {
3365 support::token(&self.syntax, SyntaxKind::DOMAIN_KW)
3366 }
3367}
3368
3369#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3370pub struct CreateEventTrigger {
3371 pub(crate) syntax: SyntaxNode,
3372}
3373impl CreateEventTrigger {
3374 #[inline]
3375 pub fn call_expr(&self) -> Option<CallExpr> {
3376 support::child(&self.syntax)
3377 }
3378 #[inline]
3379 pub fn event_trigger_when_clause(&self) -> Option<EventTriggerWhenClause> {
3380 support::child(&self.syntax)
3381 }
3382 #[inline]
3383 pub fn name(&self) -> Option<Name> {
3384 support::child(&self.syntax)
3385 }
3386 #[inline]
3387 pub fn name_ref(&self) -> Option<NameRef> {
3388 support::child(&self.syntax)
3389 }
3390 #[inline]
3391 pub fn create_token(&self) -> Option<SyntaxToken> {
3392 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3393 }
3394 #[inline]
3395 pub fn event_token(&self) -> Option<SyntaxToken> {
3396 support::token(&self.syntax, SyntaxKind::EVENT_KW)
3397 }
3398 #[inline]
3399 pub fn execute_token(&self) -> Option<SyntaxToken> {
3400 support::token(&self.syntax, SyntaxKind::EXECUTE_KW)
3401 }
3402 #[inline]
3403 pub fn function_token(&self) -> Option<SyntaxToken> {
3404 support::token(&self.syntax, SyntaxKind::FUNCTION_KW)
3405 }
3406 #[inline]
3407 pub fn on_token(&self) -> Option<SyntaxToken> {
3408 support::token(&self.syntax, SyntaxKind::ON_KW)
3409 }
3410 #[inline]
3411 pub fn procedure_token(&self) -> Option<SyntaxToken> {
3412 support::token(&self.syntax, SyntaxKind::PROCEDURE_KW)
3413 }
3414 #[inline]
3415 pub fn trigger_token(&self) -> Option<SyntaxToken> {
3416 support::token(&self.syntax, SyntaxKind::TRIGGER_KW)
3417 }
3418}
3419
3420#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3421pub struct CreateExtension {
3422 pub(crate) syntax: SyntaxNode,
3423}
3424impl CreateExtension {
3425 #[inline]
3426 pub fn if_not_exists(&self) -> Option<IfNotExists> {
3427 support::child(&self.syntax)
3428 }
3429 #[inline]
3430 pub fn name(&self) -> Option<Name> {
3431 support::child(&self.syntax)
3432 }
3433 #[inline]
3434 pub fn create_token(&self) -> Option<SyntaxToken> {
3435 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3436 }
3437 #[inline]
3438 pub fn extension_token(&self) -> Option<SyntaxToken> {
3439 support::token(&self.syntax, SyntaxKind::EXTENSION_KW)
3440 }
3441}
3442
3443#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3444pub struct CreateForeignDataWrapper {
3445 pub(crate) syntax: SyntaxNode,
3446}
3447impl CreateForeignDataWrapper {
3448 #[inline]
3449 pub fn alter_option_list(&self) -> Option<AlterOptionList> {
3450 support::child(&self.syntax)
3451 }
3452 #[inline]
3453 pub fn fdw_option_list(&self) -> Option<FdwOptionList> {
3454 support::child(&self.syntax)
3455 }
3456 #[inline]
3457 pub fn name(&self) -> Option<Name> {
3458 support::child(&self.syntax)
3459 }
3460 #[inline]
3461 pub fn create_token(&self) -> Option<SyntaxToken> {
3462 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3463 }
3464 #[inline]
3465 pub fn data_token(&self) -> Option<SyntaxToken> {
3466 support::token(&self.syntax, SyntaxKind::DATA_KW)
3467 }
3468 #[inline]
3469 pub fn foreign_token(&self) -> Option<SyntaxToken> {
3470 support::token(&self.syntax, SyntaxKind::FOREIGN_KW)
3471 }
3472 #[inline]
3473 pub fn wrapper_token(&self) -> Option<SyntaxToken> {
3474 support::token(&self.syntax, SyntaxKind::WRAPPER_KW)
3475 }
3476}
3477
3478#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3479pub struct CreateForeignTable {
3480 pub(crate) syntax: SyntaxNode,
3481}
3482impl CreateForeignTable {
3483 #[inline]
3484 pub fn alter_option_list(&self) -> Option<AlterOptionList> {
3485 support::child(&self.syntax)
3486 }
3487 #[inline]
3488 pub fn if_not_exists(&self) -> Option<IfNotExists> {
3489 support::child(&self.syntax)
3490 }
3491 #[inline]
3492 pub fn inherits(&self) -> Option<Inherits> {
3493 support::child(&self.syntax)
3494 }
3495 #[inline]
3496 pub fn name_ref(&self) -> Option<NameRef> {
3497 support::child(&self.syntax)
3498 }
3499 #[inline]
3500 pub fn partition_of(&self) -> Option<PartitionOf> {
3501 support::child(&self.syntax)
3502 }
3503 #[inline]
3504 pub fn partition_type(&self) -> Option<PartitionType> {
3505 support::child(&self.syntax)
3506 }
3507 #[inline]
3508 pub fn path(&self) -> Option<Path> {
3509 support::child(&self.syntax)
3510 }
3511 #[inline]
3512 pub fn table_arg_list(&self) -> Option<TableArgList> {
3513 support::child(&self.syntax)
3514 }
3515 #[inline]
3516 pub fn create_token(&self) -> Option<SyntaxToken> {
3517 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3518 }
3519 #[inline]
3520 pub fn foreign_token(&self) -> Option<SyntaxToken> {
3521 support::token(&self.syntax, SyntaxKind::FOREIGN_KW)
3522 }
3523 #[inline]
3524 pub fn server_token(&self) -> Option<SyntaxToken> {
3525 support::token(&self.syntax, SyntaxKind::SERVER_KW)
3526 }
3527 #[inline]
3528 pub fn table_token(&self) -> Option<SyntaxToken> {
3529 support::token(&self.syntax, SyntaxKind::TABLE_KW)
3530 }
3531}
3532
3533#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3534pub struct CreateFunction {
3535 pub(crate) syntax: SyntaxNode,
3536}
3537impl CreateFunction {
3538 #[inline]
3539 pub fn option_list(&self) -> Option<FuncOptionList> {
3540 support::child(&self.syntax)
3541 }
3542 #[inline]
3543 pub fn or_replace(&self) -> Option<OrReplace> {
3544 support::child(&self.syntax)
3545 }
3546 #[inline]
3547 pub fn param_list(&self) -> Option<ParamList> {
3548 support::child(&self.syntax)
3549 }
3550 #[inline]
3551 pub fn path(&self) -> Option<Path> {
3552 support::child(&self.syntax)
3553 }
3554 #[inline]
3555 pub fn ret_type(&self) -> Option<RetType> {
3556 support::child(&self.syntax)
3557 }
3558 #[inline]
3559 pub fn create_token(&self) -> Option<SyntaxToken> {
3560 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3561 }
3562 #[inline]
3563 pub fn function_token(&self) -> Option<SyntaxToken> {
3564 support::token(&self.syntax, SyntaxKind::FUNCTION_KW)
3565 }
3566}
3567
3568#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3569pub struct CreateGroup {
3570 pub(crate) syntax: SyntaxNode,
3571}
3572impl CreateGroup {
3573 #[inline]
3574 pub fn name(&self) -> Option<Name> {
3575 support::child(&self.syntax)
3576 }
3577 #[inline]
3578 pub fn role_option_list(&self) -> Option<RoleOptionList> {
3579 support::child(&self.syntax)
3580 }
3581 #[inline]
3582 pub fn create_token(&self) -> Option<SyntaxToken> {
3583 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3584 }
3585 #[inline]
3586 pub fn group_token(&self) -> Option<SyntaxToken> {
3587 support::token(&self.syntax, SyntaxKind::GROUP_KW)
3588 }
3589}
3590
3591#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3592pub struct CreateIndex {
3593 pub(crate) syntax: SyntaxNode,
3594}
3595impl CreateIndex {
3596 #[inline]
3597 pub fn constraint_include_clause(&self) -> Option<ConstraintIncludeClause> {
3598 support::child(&self.syntax)
3599 }
3600 #[inline]
3601 pub fn if_not_exists(&self) -> Option<IfNotExists> {
3602 support::child(&self.syntax)
3603 }
3604 #[inline]
3605 pub fn name(&self) -> Option<Name> {
3606 support::child(&self.syntax)
3607 }
3608 #[inline]
3609 pub fn nulls_distinct(&self) -> Option<NullsDistinct> {
3610 support::child(&self.syntax)
3611 }
3612 #[inline]
3613 pub fn nulls_not_distinct(&self) -> Option<NullsNotDistinct> {
3614 support::child(&self.syntax)
3615 }
3616 #[inline]
3617 pub fn partition_item_list(&self) -> Option<PartitionItemList> {
3618 support::child(&self.syntax)
3619 }
3620 #[inline]
3621 pub fn relation_name(&self) -> Option<RelationName> {
3622 support::child(&self.syntax)
3623 }
3624 #[inline]
3625 pub fn tablespace(&self) -> Option<Tablespace> {
3626 support::child(&self.syntax)
3627 }
3628 #[inline]
3629 pub fn using_method(&self) -> Option<UsingMethod> {
3630 support::child(&self.syntax)
3631 }
3632 #[inline]
3633 pub fn where_clause(&self) -> Option<WhereClause> {
3634 support::child(&self.syntax)
3635 }
3636 #[inline]
3637 pub fn with_params(&self) -> Option<WithParams> {
3638 support::child(&self.syntax)
3639 }
3640 #[inline]
3641 pub fn concurrently_token(&self) -> Option<SyntaxToken> {
3642 support::token(&self.syntax, SyntaxKind::CONCURRENTLY_KW)
3643 }
3644 #[inline]
3645 pub fn create_token(&self) -> Option<SyntaxToken> {
3646 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3647 }
3648 #[inline]
3649 pub fn index_token(&self) -> Option<SyntaxToken> {
3650 support::token(&self.syntax, SyntaxKind::INDEX_KW)
3651 }
3652 #[inline]
3653 pub fn on_token(&self) -> Option<SyntaxToken> {
3654 support::token(&self.syntax, SyntaxKind::ON_KW)
3655 }
3656 #[inline]
3657 pub fn unique_token(&self) -> Option<SyntaxToken> {
3658 support::token(&self.syntax, SyntaxKind::UNIQUE_KW)
3659 }
3660}
3661
3662#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3663pub struct CreateLanguage {
3664 pub(crate) syntax: SyntaxNode,
3665}
3666impl CreateLanguage {
3667 #[inline]
3668 pub fn name(&self) -> Option<Name> {
3669 support::child(&self.syntax)
3670 }
3671 #[inline]
3672 pub fn or_replace(&self) -> Option<OrReplace> {
3673 support::child(&self.syntax)
3674 }
3675 #[inline]
3676 pub fn path(&self) -> Option<Path> {
3677 support::child(&self.syntax)
3678 }
3679 #[inline]
3680 pub fn create_token(&self) -> Option<SyntaxToken> {
3681 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3682 }
3683 #[inline]
3684 pub fn handler_token(&self) -> Option<SyntaxToken> {
3685 support::token(&self.syntax, SyntaxKind::HANDLER_KW)
3686 }
3687 #[inline]
3688 pub fn inline_token(&self) -> Option<SyntaxToken> {
3689 support::token(&self.syntax, SyntaxKind::INLINE_KW)
3690 }
3691 #[inline]
3692 pub fn language_token(&self) -> Option<SyntaxToken> {
3693 support::token(&self.syntax, SyntaxKind::LANGUAGE_KW)
3694 }
3695 #[inline]
3696 pub fn procedural_token(&self) -> Option<SyntaxToken> {
3697 support::token(&self.syntax, SyntaxKind::PROCEDURAL_KW)
3698 }
3699 #[inline]
3700 pub fn trusted_token(&self) -> Option<SyntaxToken> {
3701 support::token(&self.syntax, SyntaxKind::TRUSTED_KW)
3702 }
3703 #[inline]
3704 pub fn validator_token(&self) -> Option<SyntaxToken> {
3705 support::token(&self.syntax, SyntaxKind::VALIDATOR_KW)
3706 }
3707}
3708
3709#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3710pub struct CreateMaterializedView {
3711 pub(crate) syntax: SyntaxNode,
3712}
3713impl CreateMaterializedView {
3714 #[inline]
3715 pub fn column_list(&self) -> Option<ColumnList> {
3716 support::child(&self.syntax)
3717 }
3718 #[inline]
3719 pub fn if_not_exists(&self) -> Option<IfNotExists> {
3720 support::child(&self.syntax)
3721 }
3722 #[inline]
3723 pub fn path(&self) -> Option<Path> {
3724 support::child(&self.syntax)
3725 }
3726 #[inline]
3727 pub fn query(&self) -> Option<SelectVariant> {
3728 support::child(&self.syntax)
3729 }
3730 #[inline]
3731 pub fn tablespace(&self) -> Option<Tablespace> {
3732 support::child(&self.syntax)
3733 }
3734 #[inline]
3735 pub fn using_method(&self) -> Option<UsingMethod> {
3736 support::child(&self.syntax)
3737 }
3738 #[inline]
3739 pub fn with_data(&self) -> Option<WithData> {
3740 support::child(&self.syntax)
3741 }
3742 #[inline]
3743 pub fn with_no_data(&self) -> Option<WithNoData> {
3744 support::child(&self.syntax)
3745 }
3746 #[inline]
3747 pub fn with_params(&self) -> Option<WithParams> {
3748 support::child(&self.syntax)
3749 }
3750 #[inline]
3751 pub fn as_token(&self) -> Option<SyntaxToken> {
3752 support::token(&self.syntax, SyntaxKind::AS_KW)
3753 }
3754 #[inline]
3755 pub fn create_token(&self) -> Option<SyntaxToken> {
3756 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3757 }
3758 #[inline]
3759 pub fn materialized_token(&self) -> Option<SyntaxToken> {
3760 support::token(&self.syntax, SyntaxKind::MATERIALIZED_KW)
3761 }
3762 #[inline]
3763 pub fn view_token(&self) -> Option<SyntaxToken> {
3764 support::token(&self.syntax, SyntaxKind::VIEW_KW)
3765 }
3766}
3767
3768#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3769pub struct CreateOperator {
3770 pub(crate) syntax: SyntaxNode,
3771}
3772impl CreateOperator {
3773 #[inline]
3774 pub fn attribute_list(&self) -> Option<AttributeList> {
3775 support::child(&self.syntax)
3776 }
3777 #[inline]
3778 pub fn op(&self) -> Option<Op> {
3779 support::child(&self.syntax)
3780 }
3781 #[inline]
3782 pub fn path(&self) -> Option<Path> {
3783 support::child(&self.syntax)
3784 }
3785 #[inline]
3786 pub fn create_token(&self) -> Option<SyntaxToken> {
3787 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3788 }
3789 #[inline]
3790 pub fn operator_token(&self) -> Option<SyntaxToken> {
3791 support::token(&self.syntax, SyntaxKind::OPERATOR_KW)
3792 }
3793}
3794
3795#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3796pub struct CreateOperatorClass {
3797 pub(crate) syntax: SyntaxNode,
3798}
3799impl CreateOperatorClass {
3800 #[inline]
3801 pub fn name_ref(&self) -> Option<NameRef> {
3802 support::child(&self.syntax)
3803 }
3804 #[inline]
3805 pub fn operator_class_option_list(&self) -> Option<OperatorClassOptionList> {
3806 support::child(&self.syntax)
3807 }
3808 #[inline]
3809 pub fn path(&self) -> Option<Path> {
3810 support::child(&self.syntax)
3811 }
3812 #[inline]
3813 pub fn ty(&self) -> Option<Type> {
3814 support::child(&self.syntax)
3815 }
3816 #[inline]
3817 pub fn as_token(&self) -> Option<SyntaxToken> {
3818 support::token(&self.syntax, SyntaxKind::AS_KW)
3819 }
3820 #[inline]
3821 pub fn class_token(&self) -> Option<SyntaxToken> {
3822 support::token(&self.syntax, SyntaxKind::CLASS_KW)
3823 }
3824 #[inline]
3825 pub fn create_token(&self) -> Option<SyntaxToken> {
3826 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3827 }
3828 #[inline]
3829 pub fn default_token(&self) -> Option<SyntaxToken> {
3830 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
3831 }
3832 #[inline]
3833 pub fn family_token(&self) -> Option<SyntaxToken> {
3834 support::token(&self.syntax, SyntaxKind::FAMILY_KW)
3835 }
3836 #[inline]
3837 pub fn for_token(&self) -> Option<SyntaxToken> {
3838 support::token(&self.syntax, SyntaxKind::FOR_KW)
3839 }
3840 #[inline]
3841 pub fn operator_token(&self) -> Option<SyntaxToken> {
3842 support::token(&self.syntax, SyntaxKind::OPERATOR_KW)
3843 }
3844 #[inline]
3845 pub fn type_token(&self) -> Option<SyntaxToken> {
3846 support::token(&self.syntax, SyntaxKind::TYPE_KW)
3847 }
3848 #[inline]
3849 pub fn using_token(&self) -> Option<SyntaxToken> {
3850 support::token(&self.syntax, SyntaxKind::USING_KW)
3851 }
3852}
3853
3854#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3855pub struct CreateOperatorFamily {
3856 pub(crate) syntax: SyntaxNode,
3857}
3858impl CreateOperatorFamily {
3859 #[inline]
3860 pub fn name_ref(&self) -> Option<NameRef> {
3861 support::child(&self.syntax)
3862 }
3863 #[inline]
3864 pub fn path(&self) -> Option<Path> {
3865 support::child(&self.syntax)
3866 }
3867 #[inline]
3868 pub fn create_token(&self) -> Option<SyntaxToken> {
3869 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3870 }
3871 #[inline]
3872 pub fn family_token(&self) -> Option<SyntaxToken> {
3873 support::token(&self.syntax, SyntaxKind::FAMILY_KW)
3874 }
3875 #[inline]
3876 pub fn operator_token(&self) -> Option<SyntaxToken> {
3877 support::token(&self.syntax, SyntaxKind::OPERATOR_KW)
3878 }
3879 #[inline]
3880 pub fn using_token(&self) -> Option<SyntaxToken> {
3881 support::token(&self.syntax, SyntaxKind::USING_KW)
3882 }
3883}
3884
3885#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3886pub struct CreatePolicy {
3887 pub(crate) syntax: SyntaxNode,
3888}
3889impl CreatePolicy {
3890 #[inline]
3891 pub fn expr(&self) -> Option<Expr> {
3892 support::child(&self.syntax)
3893 }
3894 #[inline]
3895 pub fn name(&self) -> Option<Name> {
3896 support::child(&self.syntax)
3897 }
3898 #[inline]
3899 pub fn on_table(&self) -> Option<OnTable> {
3900 support::child(&self.syntax)
3901 }
3902 #[inline]
3903 pub fn role_list(&self) -> Option<RoleList> {
3904 support::child(&self.syntax)
3905 }
3906 #[inline]
3907 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
3908 support::token(&self.syntax, SyntaxKind::L_PAREN)
3909 }
3910 #[inline]
3911 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
3912 support::token(&self.syntax, SyntaxKind::R_PAREN)
3913 }
3914 #[inline]
3915 pub fn all_token(&self) -> Option<SyntaxToken> {
3916 support::token(&self.syntax, SyntaxKind::ALL_KW)
3917 }
3918 #[inline]
3919 pub fn as_token(&self) -> Option<SyntaxToken> {
3920 support::token(&self.syntax, SyntaxKind::AS_KW)
3921 }
3922 #[inline]
3923 pub fn check_token(&self) -> Option<SyntaxToken> {
3924 support::token(&self.syntax, SyntaxKind::CHECK_KW)
3925 }
3926 #[inline]
3927 pub fn create_token(&self) -> Option<SyntaxToken> {
3928 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3929 }
3930 #[inline]
3931 pub fn delete_token(&self) -> Option<SyntaxToken> {
3932 support::token(&self.syntax, SyntaxKind::DELETE_KW)
3933 }
3934 #[inline]
3935 pub fn for_token(&self) -> Option<SyntaxToken> {
3936 support::token(&self.syntax, SyntaxKind::FOR_KW)
3937 }
3938 #[inline]
3939 pub fn ident_token(&self) -> Option<SyntaxToken> {
3940 support::token(&self.syntax, SyntaxKind::IDENT)
3941 }
3942 #[inline]
3943 pub fn insert_token(&self) -> Option<SyntaxToken> {
3944 support::token(&self.syntax, SyntaxKind::INSERT_KW)
3945 }
3946 #[inline]
3947 pub fn policy_token(&self) -> Option<SyntaxToken> {
3948 support::token(&self.syntax, SyntaxKind::POLICY_KW)
3949 }
3950 #[inline]
3951 pub fn select_token(&self) -> Option<SyntaxToken> {
3952 support::token(&self.syntax, SyntaxKind::SELECT_KW)
3953 }
3954 #[inline]
3955 pub fn to_token(&self) -> Option<SyntaxToken> {
3956 support::token(&self.syntax, SyntaxKind::TO_KW)
3957 }
3958 #[inline]
3959 pub fn update_token(&self) -> Option<SyntaxToken> {
3960 support::token(&self.syntax, SyntaxKind::UPDATE_KW)
3961 }
3962 #[inline]
3963 pub fn using_token(&self) -> Option<SyntaxToken> {
3964 support::token(&self.syntax, SyntaxKind::USING_KW)
3965 }
3966 #[inline]
3967 pub fn with_token(&self) -> Option<SyntaxToken> {
3968 support::token(&self.syntax, SyntaxKind::WITH_KW)
3969 }
3970}
3971
3972#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3973pub struct CreateProcedure {
3974 pub(crate) syntax: SyntaxNode,
3975}
3976impl CreateProcedure {
3977 #[inline]
3978 pub fn option_list(&self) -> Option<FuncOptionList> {
3979 support::child(&self.syntax)
3980 }
3981 #[inline]
3982 pub fn or_replace(&self) -> Option<OrReplace> {
3983 support::child(&self.syntax)
3984 }
3985 #[inline]
3986 pub fn param_list(&self) -> Option<ParamList> {
3987 support::child(&self.syntax)
3988 }
3989 #[inline]
3990 pub fn path(&self) -> Option<Path> {
3991 support::child(&self.syntax)
3992 }
3993 #[inline]
3994 pub fn create_token(&self) -> Option<SyntaxToken> {
3995 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3996 }
3997 #[inline]
3998 pub fn procedure_token(&self) -> Option<SyntaxToken> {
3999 support::token(&self.syntax, SyntaxKind::PROCEDURE_KW)
4000 }
4001}
4002
4003#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4004pub struct CreatePublication {
4005 pub(crate) syntax: SyntaxNode,
4006}
4007impl CreatePublication {
4008 #[inline]
4009 pub fn name(&self) -> Option<Name> {
4010 support::child(&self.syntax)
4011 }
4012 #[inline]
4013 pub fn publication_objects(&self) -> AstChildren<PublicationObject> {
4014 support::children(&self.syntax)
4015 }
4016 #[inline]
4017 pub fn with_params(&self) -> Option<WithParams> {
4018 support::child(&self.syntax)
4019 }
4020 #[inline]
4021 pub fn all_token(&self) -> Option<SyntaxToken> {
4022 support::token(&self.syntax, SyntaxKind::ALL_KW)
4023 }
4024 #[inline]
4025 pub fn create_token(&self) -> Option<SyntaxToken> {
4026 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4027 }
4028 #[inline]
4029 pub fn for_token(&self) -> Option<SyntaxToken> {
4030 support::token(&self.syntax, SyntaxKind::FOR_KW)
4031 }
4032 #[inline]
4033 pub fn publication_token(&self) -> Option<SyntaxToken> {
4034 support::token(&self.syntax, SyntaxKind::PUBLICATION_KW)
4035 }
4036 #[inline]
4037 pub fn tables_token(&self) -> Option<SyntaxToken> {
4038 support::token(&self.syntax, SyntaxKind::TABLES_KW)
4039 }
4040}
4041
4042#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4043pub struct CreateRole {
4044 pub(crate) syntax: SyntaxNode,
4045}
4046impl CreateRole {
4047 #[inline]
4048 pub fn name(&self) -> Option<Name> {
4049 support::child(&self.syntax)
4050 }
4051 #[inline]
4052 pub fn role_option_list(&self) -> Option<RoleOptionList> {
4053 support::child(&self.syntax)
4054 }
4055 #[inline]
4056 pub fn create_token(&self) -> Option<SyntaxToken> {
4057 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4058 }
4059 #[inline]
4060 pub fn role_token(&self) -> Option<SyntaxToken> {
4061 support::token(&self.syntax, SyntaxKind::ROLE_KW)
4062 }
4063}
4064
4065#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4066pub struct CreateRule {
4067 pub(crate) syntax: SyntaxNode,
4068}
4069impl CreateRule {
4070 #[inline]
4071 pub fn name(&self) -> Option<Name> {
4072 support::child(&self.syntax)
4073 }
4074 #[inline]
4075 pub fn or_replace(&self) -> Option<OrReplace> {
4076 support::child(&self.syntax)
4077 }
4078 #[inline]
4079 pub fn path(&self) -> Option<Path> {
4080 support::child(&self.syntax)
4081 }
4082 #[inline]
4083 pub fn stmt(&self) -> Option<Stmt> {
4084 support::child(&self.syntax)
4085 }
4086 #[inline]
4087 pub fn stmts(&self) -> AstChildren<Stmt> {
4088 support::children(&self.syntax)
4089 }
4090 #[inline]
4091 pub fn where_clause(&self) -> Option<WhereClause> {
4092 support::child(&self.syntax)
4093 }
4094 #[inline]
4095 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
4096 support::token(&self.syntax, SyntaxKind::L_PAREN)
4097 }
4098 #[inline]
4099 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
4100 support::token(&self.syntax, SyntaxKind::R_PAREN)
4101 }
4102 #[inline]
4103 pub fn also_token(&self) -> Option<SyntaxToken> {
4104 support::token(&self.syntax, SyntaxKind::ALSO_KW)
4105 }
4106 #[inline]
4107 pub fn as_token(&self) -> Option<SyntaxToken> {
4108 support::token(&self.syntax, SyntaxKind::AS_KW)
4109 }
4110 #[inline]
4111 pub fn create_token(&self) -> Option<SyntaxToken> {
4112 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4113 }
4114 #[inline]
4115 pub fn delete_token(&self) -> Option<SyntaxToken> {
4116 support::token(&self.syntax, SyntaxKind::DELETE_KW)
4117 }
4118 #[inline]
4119 pub fn do_token(&self) -> Option<SyntaxToken> {
4120 support::token(&self.syntax, SyntaxKind::DO_KW)
4121 }
4122 #[inline]
4123 pub fn ident_token(&self) -> Option<SyntaxToken> {
4124 support::token(&self.syntax, SyntaxKind::IDENT)
4125 }
4126 #[inline]
4127 pub fn insert_token(&self) -> Option<SyntaxToken> {
4128 support::token(&self.syntax, SyntaxKind::INSERT_KW)
4129 }
4130 #[inline]
4131 pub fn instead_token(&self) -> Option<SyntaxToken> {
4132 support::token(&self.syntax, SyntaxKind::INSTEAD_KW)
4133 }
4134 #[inline]
4135 pub fn nothing_token(&self) -> Option<SyntaxToken> {
4136 support::token(&self.syntax, SyntaxKind::NOTHING_KW)
4137 }
4138 #[inline]
4139 pub fn on_token(&self) -> Option<SyntaxToken> {
4140 support::token(&self.syntax, SyntaxKind::ON_KW)
4141 }
4142 #[inline]
4143 pub fn rule_token(&self) -> Option<SyntaxToken> {
4144 support::token(&self.syntax, SyntaxKind::RULE_KW)
4145 }
4146 #[inline]
4147 pub fn select_token(&self) -> Option<SyntaxToken> {
4148 support::token(&self.syntax, SyntaxKind::SELECT_KW)
4149 }
4150 #[inline]
4151 pub fn to_token(&self) -> Option<SyntaxToken> {
4152 support::token(&self.syntax, SyntaxKind::TO_KW)
4153 }
4154 #[inline]
4155 pub fn update_token(&self) -> Option<SyntaxToken> {
4156 support::token(&self.syntax, SyntaxKind::UPDATE_KW)
4157 }
4158}
4159
4160#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4161pub struct CreateSchema {
4162 pub(crate) syntax: SyntaxNode,
4163}
4164impl CreateSchema {
4165 #[inline]
4166 pub fn if_not_exists(&self) -> Option<IfNotExists> {
4167 support::child(&self.syntax)
4168 }
4169 #[inline]
4170 pub fn name(&self) -> Option<Name> {
4171 support::child(&self.syntax)
4172 }
4173 #[inline]
4174 pub fn schema_authorization(&self) -> Option<SchemaAuthorization> {
4175 support::child(&self.syntax)
4176 }
4177 #[inline]
4178 pub fn schema_elements(&self) -> AstChildren<SchemaElement> {
4179 support::children(&self.syntax)
4180 }
4181 #[inline]
4182 pub fn create_token(&self) -> Option<SyntaxToken> {
4183 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4184 }
4185 #[inline]
4186 pub fn schema_token(&self) -> Option<SyntaxToken> {
4187 support::token(&self.syntax, SyntaxKind::SCHEMA_KW)
4188 }
4189}
4190
4191#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4192pub struct CreateSequence {
4193 pub(crate) syntax: SyntaxNode,
4194}
4195impl CreateSequence {
4196 #[inline]
4197 pub fn if_not_exists(&self) -> Option<IfNotExists> {
4198 support::child(&self.syntax)
4199 }
4200 #[inline]
4201 pub fn path(&self) -> Option<Path> {
4202 support::child(&self.syntax)
4203 }
4204 #[inline]
4205 pub fn sequence_options(&self) -> AstChildren<SequenceOption> {
4206 support::children(&self.syntax)
4207 }
4208 #[inline]
4209 pub fn create_token(&self) -> Option<SyntaxToken> {
4210 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4211 }
4212 #[inline]
4213 pub fn sequence_token(&self) -> Option<SyntaxToken> {
4214 support::token(&self.syntax, SyntaxKind::SEQUENCE_KW)
4215 }
4216 #[inline]
4217 pub fn temp_token(&self) -> Option<SyntaxToken> {
4218 support::token(&self.syntax, SyntaxKind::TEMP_KW)
4219 }
4220 #[inline]
4221 pub fn temporary_token(&self) -> Option<SyntaxToken> {
4222 support::token(&self.syntax, SyntaxKind::TEMPORARY_KW)
4223 }
4224 #[inline]
4225 pub fn unlogged_token(&self) -> Option<SyntaxToken> {
4226 support::token(&self.syntax, SyntaxKind::UNLOGGED_KW)
4227 }
4228}
4229
4230#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4231pub struct CreateServer {
4232 pub(crate) syntax: SyntaxNode,
4233}
4234impl CreateServer {
4235 #[inline]
4236 pub fn alter_option_list(&self) -> Option<AlterOptionList> {
4237 support::child(&self.syntax)
4238 }
4239 #[inline]
4240 pub fn if_not_exists(&self) -> Option<IfNotExists> {
4241 support::child(&self.syntax)
4242 }
4243 #[inline]
4244 pub fn literal(&self) -> Option<Literal> {
4245 support::child(&self.syntax)
4246 }
4247 #[inline]
4248 pub fn name(&self) -> Option<Name> {
4249 support::child(&self.syntax)
4250 }
4251 #[inline]
4252 pub fn name_ref(&self) -> Option<NameRef> {
4253 support::child(&self.syntax)
4254 }
4255 #[inline]
4256 pub fn create_token(&self) -> Option<SyntaxToken> {
4257 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4258 }
4259 #[inline]
4260 pub fn data_token(&self) -> Option<SyntaxToken> {
4261 support::token(&self.syntax, SyntaxKind::DATA_KW)
4262 }
4263 #[inline]
4264 pub fn foreign_token(&self) -> Option<SyntaxToken> {
4265 support::token(&self.syntax, SyntaxKind::FOREIGN_KW)
4266 }
4267 #[inline]
4268 pub fn server_token(&self) -> Option<SyntaxToken> {
4269 support::token(&self.syntax, SyntaxKind::SERVER_KW)
4270 }
4271 #[inline]
4272 pub fn type_token(&self) -> Option<SyntaxToken> {
4273 support::token(&self.syntax, SyntaxKind::TYPE_KW)
4274 }
4275 #[inline]
4276 pub fn version_token(&self) -> Option<SyntaxToken> {
4277 support::token(&self.syntax, SyntaxKind::VERSION_KW)
4278 }
4279 #[inline]
4280 pub fn wrapper_token(&self) -> Option<SyntaxToken> {
4281 support::token(&self.syntax, SyntaxKind::WRAPPER_KW)
4282 }
4283}
4284
4285#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4286pub struct CreateStatistics {
4287 pub(crate) syntax: SyntaxNode,
4288}
4289impl CreateStatistics {
4290 #[inline]
4291 pub fn from_table(&self) -> Option<FromTable> {
4292 support::child(&self.syntax)
4293 }
4294 #[inline]
4295 pub fn name_refs(&self) -> AstChildren<NameRef> {
4296 support::children(&self.syntax)
4297 }
4298 #[inline]
4299 pub fn path(&self) -> Option<Path> {
4300 support::child(&self.syntax)
4301 }
4302 #[inline]
4303 pub fn create_token(&self) -> Option<SyntaxToken> {
4304 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4305 }
4306 #[inline]
4307 pub fn on_token(&self) -> Option<SyntaxToken> {
4308 support::token(&self.syntax, SyntaxKind::ON_KW)
4309 }
4310 #[inline]
4311 pub fn statistics_token(&self) -> Option<SyntaxToken> {
4312 support::token(&self.syntax, SyntaxKind::STATISTICS_KW)
4313 }
4314}
4315
4316#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4317pub struct CreateSubscription {
4318 pub(crate) syntax: SyntaxNode,
4319}
4320impl CreateSubscription {
4321 #[inline]
4322 pub fn literal(&self) -> Option<Literal> {
4323 support::child(&self.syntax)
4324 }
4325 #[inline]
4326 pub fn name(&self) -> Option<Name> {
4327 support::child(&self.syntax)
4328 }
4329 #[inline]
4330 pub fn name_refs(&self) -> AstChildren<NameRef> {
4331 support::children(&self.syntax)
4332 }
4333 #[inline]
4334 pub fn with_params(&self) -> Option<WithParams> {
4335 support::child(&self.syntax)
4336 }
4337 #[inline]
4338 pub fn connection_token(&self) -> Option<SyntaxToken> {
4339 support::token(&self.syntax, SyntaxKind::CONNECTION_KW)
4340 }
4341 #[inline]
4342 pub fn create_token(&self) -> Option<SyntaxToken> {
4343 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4344 }
4345 #[inline]
4346 pub fn publication_token(&self) -> Option<SyntaxToken> {
4347 support::token(&self.syntax, SyntaxKind::PUBLICATION_KW)
4348 }
4349 #[inline]
4350 pub fn subscription_token(&self) -> Option<SyntaxToken> {
4351 support::token(&self.syntax, SyntaxKind::SUBSCRIPTION_KW)
4352 }
4353}
4354
4355#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4356pub struct CreateTable {
4357 pub(crate) syntax: SyntaxNode,
4358}
4359impl CreateTable {
4360 #[inline]
4361 pub fn if_not_exists(&self) -> Option<IfNotExists> {
4362 support::child(&self.syntax)
4363 }
4364 #[inline]
4365 pub fn inherits(&self) -> Option<Inherits> {
4366 support::child(&self.syntax)
4367 }
4368 #[inline]
4369 pub fn of_type(&self) -> Option<OfType> {
4370 support::child(&self.syntax)
4371 }
4372 #[inline]
4373 pub fn on_commit(&self) -> Option<OnCommit> {
4374 support::child(&self.syntax)
4375 }
4376 #[inline]
4377 pub fn partition_by(&self) -> Option<PartitionBy> {
4378 support::child(&self.syntax)
4379 }
4380 #[inline]
4381 pub fn partition_of(&self) -> Option<PartitionOf> {
4382 support::child(&self.syntax)
4383 }
4384 #[inline]
4385 pub fn path(&self) -> Option<Path> {
4386 support::child(&self.syntax)
4387 }
4388 #[inline]
4389 pub fn table_arg_list(&self) -> Option<TableArgList> {
4390 support::child(&self.syntax)
4391 }
4392 #[inline]
4393 pub fn tablespace(&self) -> Option<Tablespace> {
4394 support::child(&self.syntax)
4395 }
4396 #[inline]
4397 pub fn using_method(&self) -> Option<UsingMethod> {
4398 support::child(&self.syntax)
4399 }
4400 #[inline]
4401 pub fn with_params(&self) -> Option<WithParams> {
4402 support::child(&self.syntax)
4403 }
4404 #[inline]
4405 pub fn without_oids(&self) -> Option<WithoutOids> {
4406 support::child(&self.syntax)
4407 }
4408 #[inline]
4409 pub fn create_token(&self) -> Option<SyntaxToken> {
4410 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4411 }
4412 #[inline]
4413 pub fn global_token(&self) -> Option<SyntaxToken> {
4414 support::token(&self.syntax, SyntaxKind::GLOBAL_KW)
4415 }
4416 #[inline]
4417 pub fn local_token(&self) -> Option<SyntaxToken> {
4418 support::token(&self.syntax, SyntaxKind::LOCAL_KW)
4419 }
4420 #[inline]
4421 pub fn table_token(&self) -> Option<SyntaxToken> {
4422 support::token(&self.syntax, SyntaxKind::TABLE_KW)
4423 }
4424 #[inline]
4425 pub fn temp_token(&self) -> Option<SyntaxToken> {
4426 support::token(&self.syntax, SyntaxKind::TEMP_KW)
4427 }
4428 #[inline]
4429 pub fn temporary_token(&self) -> Option<SyntaxToken> {
4430 support::token(&self.syntax, SyntaxKind::TEMPORARY_KW)
4431 }
4432 #[inline]
4433 pub fn unlogged_token(&self) -> Option<SyntaxToken> {
4434 support::token(&self.syntax, SyntaxKind::UNLOGGED_KW)
4435 }
4436}
4437
4438#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4439pub struct CreateTableAs {
4440 pub(crate) syntax: SyntaxNode,
4441}
4442impl CreateTableAs {
4443 #[inline]
4444 pub fn if_not_exists(&self) -> Option<IfNotExists> {
4445 support::child(&self.syntax)
4446 }
4447 #[inline]
4448 pub fn on_commit(&self) -> Option<OnCommit> {
4449 support::child(&self.syntax)
4450 }
4451 #[inline]
4452 pub fn path(&self) -> Option<Path> {
4453 support::child(&self.syntax)
4454 }
4455 #[inline]
4456 pub fn query(&self) -> Option<SelectVariant> {
4457 support::child(&self.syntax)
4458 }
4459 #[inline]
4460 pub fn tablespace(&self) -> Option<Tablespace> {
4461 support::child(&self.syntax)
4462 }
4463 #[inline]
4464 pub fn using_method(&self) -> Option<UsingMethod> {
4465 support::child(&self.syntax)
4466 }
4467 #[inline]
4468 pub fn with_data(&self) -> Option<WithData> {
4469 support::child(&self.syntax)
4470 }
4471 #[inline]
4472 pub fn with_no_data(&self) -> Option<WithNoData> {
4473 support::child(&self.syntax)
4474 }
4475 #[inline]
4476 pub fn with_params(&self) -> Option<WithParams> {
4477 support::child(&self.syntax)
4478 }
4479 #[inline]
4480 pub fn without_oids(&self) -> Option<WithoutOids> {
4481 support::child(&self.syntax)
4482 }
4483 #[inline]
4484 pub fn as_token(&self) -> Option<SyntaxToken> {
4485 support::token(&self.syntax, SyntaxKind::AS_KW)
4486 }
4487 #[inline]
4488 pub fn create_token(&self) -> Option<SyntaxToken> {
4489 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4490 }
4491 #[inline]
4492 pub fn global_token(&self) -> Option<SyntaxToken> {
4493 support::token(&self.syntax, SyntaxKind::GLOBAL_KW)
4494 }
4495 #[inline]
4496 pub fn local_token(&self) -> Option<SyntaxToken> {
4497 support::token(&self.syntax, SyntaxKind::LOCAL_KW)
4498 }
4499 #[inline]
4500 pub fn table_token(&self) -> Option<SyntaxToken> {
4501 support::token(&self.syntax, SyntaxKind::TABLE_KW)
4502 }
4503 #[inline]
4504 pub fn temp_token(&self) -> Option<SyntaxToken> {
4505 support::token(&self.syntax, SyntaxKind::TEMP_KW)
4506 }
4507 #[inline]
4508 pub fn temporary_token(&self) -> Option<SyntaxToken> {
4509 support::token(&self.syntax, SyntaxKind::TEMPORARY_KW)
4510 }
4511 #[inline]
4512 pub fn unlogged_token(&self) -> Option<SyntaxToken> {
4513 support::token(&self.syntax, SyntaxKind::UNLOGGED_KW)
4514 }
4515}
4516
4517#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4518pub struct CreateTablespace {
4519 pub(crate) syntax: SyntaxNode,
4520}
4521impl CreateTablespace {
4522 #[inline]
4523 pub fn literal(&self) -> Option<Literal> {
4524 support::child(&self.syntax)
4525 }
4526 #[inline]
4527 pub fn name(&self) -> Option<Name> {
4528 support::child(&self.syntax)
4529 }
4530 #[inline]
4531 pub fn role(&self) -> Option<Role> {
4532 support::child(&self.syntax)
4533 }
4534 #[inline]
4535 pub fn with_params(&self) -> Option<WithParams> {
4536 support::child(&self.syntax)
4537 }
4538 #[inline]
4539 pub fn create_token(&self) -> Option<SyntaxToken> {
4540 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4541 }
4542 #[inline]
4543 pub fn location_token(&self) -> Option<SyntaxToken> {
4544 support::token(&self.syntax, SyntaxKind::LOCATION_KW)
4545 }
4546 #[inline]
4547 pub fn owner_token(&self) -> Option<SyntaxToken> {
4548 support::token(&self.syntax, SyntaxKind::OWNER_KW)
4549 }
4550 #[inline]
4551 pub fn tablespace_token(&self) -> Option<SyntaxToken> {
4552 support::token(&self.syntax, SyntaxKind::TABLESPACE_KW)
4553 }
4554}
4555
4556#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4557pub struct CreateTextSearchConfiguration {
4558 pub(crate) syntax: SyntaxNode,
4559}
4560impl CreateTextSearchConfiguration {
4561 #[inline]
4562 pub fn attribute_list(&self) -> Option<AttributeList> {
4563 support::child(&self.syntax)
4564 }
4565 #[inline]
4566 pub fn path(&self) -> Option<Path> {
4567 support::child(&self.syntax)
4568 }
4569 #[inline]
4570 pub fn configuration_token(&self) -> Option<SyntaxToken> {
4571 support::token(&self.syntax, SyntaxKind::CONFIGURATION_KW)
4572 }
4573 #[inline]
4574 pub fn create_token(&self) -> Option<SyntaxToken> {
4575 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4576 }
4577 #[inline]
4578 pub fn search_token(&self) -> Option<SyntaxToken> {
4579 support::token(&self.syntax, SyntaxKind::SEARCH_KW)
4580 }
4581 #[inline]
4582 pub fn text_token(&self) -> Option<SyntaxToken> {
4583 support::token(&self.syntax, SyntaxKind::TEXT_KW)
4584 }
4585}
4586
4587#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4588pub struct CreateTextSearchDictionary {
4589 pub(crate) syntax: SyntaxNode,
4590}
4591impl CreateTextSearchDictionary {
4592 #[inline]
4593 pub fn attribute_list(&self) -> Option<AttributeList> {
4594 support::child(&self.syntax)
4595 }
4596 #[inline]
4597 pub fn path(&self) -> Option<Path> {
4598 support::child(&self.syntax)
4599 }
4600 #[inline]
4601 pub fn create_token(&self) -> Option<SyntaxToken> {
4602 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4603 }
4604 #[inline]
4605 pub fn dictionary_token(&self) -> Option<SyntaxToken> {
4606 support::token(&self.syntax, SyntaxKind::DICTIONARY_KW)
4607 }
4608 #[inline]
4609 pub fn search_token(&self) -> Option<SyntaxToken> {
4610 support::token(&self.syntax, SyntaxKind::SEARCH_KW)
4611 }
4612 #[inline]
4613 pub fn text_token(&self) -> Option<SyntaxToken> {
4614 support::token(&self.syntax, SyntaxKind::TEXT_KW)
4615 }
4616}
4617
4618#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4619pub struct CreateTextSearchParser {
4620 pub(crate) syntax: SyntaxNode,
4621}
4622impl CreateTextSearchParser {
4623 #[inline]
4624 pub fn attribute_list(&self) -> Option<AttributeList> {
4625 support::child(&self.syntax)
4626 }
4627 #[inline]
4628 pub fn path(&self) -> Option<Path> {
4629 support::child(&self.syntax)
4630 }
4631 #[inline]
4632 pub fn create_token(&self) -> Option<SyntaxToken> {
4633 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4634 }
4635 #[inline]
4636 pub fn parser_token(&self) -> Option<SyntaxToken> {
4637 support::token(&self.syntax, SyntaxKind::PARSER_KW)
4638 }
4639 #[inline]
4640 pub fn search_token(&self) -> Option<SyntaxToken> {
4641 support::token(&self.syntax, SyntaxKind::SEARCH_KW)
4642 }
4643 #[inline]
4644 pub fn text_token(&self) -> Option<SyntaxToken> {
4645 support::token(&self.syntax, SyntaxKind::TEXT_KW)
4646 }
4647}
4648
4649#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4650pub struct CreateTextSearchTemplate {
4651 pub(crate) syntax: SyntaxNode,
4652}
4653impl CreateTextSearchTemplate {
4654 #[inline]
4655 pub fn attribute_list(&self) -> Option<AttributeList> {
4656 support::child(&self.syntax)
4657 }
4658 #[inline]
4659 pub fn path(&self) -> Option<Path> {
4660 support::child(&self.syntax)
4661 }
4662 #[inline]
4663 pub fn create_token(&self) -> Option<SyntaxToken> {
4664 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4665 }
4666 #[inline]
4667 pub fn search_token(&self) -> Option<SyntaxToken> {
4668 support::token(&self.syntax, SyntaxKind::SEARCH_KW)
4669 }
4670 #[inline]
4671 pub fn template_token(&self) -> Option<SyntaxToken> {
4672 support::token(&self.syntax, SyntaxKind::TEMPLATE_KW)
4673 }
4674 #[inline]
4675 pub fn text_token(&self) -> Option<SyntaxToken> {
4676 support::token(&self.syntax, SyntaxKind::TEXT_KW)
4677 }
4678}
4679
4680#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4681pub struct CreateTransform {
4682 pub(crate) syntax: SyntaxNode,
4683}
4684impl CreateTransform {
4685 #[inline]
4686 pub fn from_func(&self) -> Option<TransformFromFunc> {
4687 support::child(&self.syntax)
4688 }
4689 #[inline]
4690 pub fn language(&self) -> Option<NameRef> {
4691 support::child(&self.syntax)
4692 }
4693 #[inline]
4694 pub fn or_replace(&self) -> Option<OrReplace> {
4695 support::child(&self.syntax)
4696 }
4697 #[inline]
4698 pub fn to_func(&self) -> Option<TransformToFunc> {
4699 support::child(&self.syntax)
4700 }
4701 #[inline]
4702 pub fn ty(&self) -> Option<Type> {
4703 support::child(&self.syntax)
4704 }
4705 #[inline]
4706 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
4707 support::token(&self.syntax, SyntaxKind::L_PAREN)
4708 }
4709 #[inline]
4710 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
4711 support::token(&self.syntax, SyntaxKind::R_PAREN)
4712 }
4713 #[inline]
4714 pub fn comma_token(&self) -> Option<SyntaxToken> {
4715 support::token(&self.syntax, SyntaxKind::COMMA)
4716 }
4717 #[inline]
4718 pub fn create_token(&self) -> Option<SyntaxToken> {
4719 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4720 }
4721 #[inline]
4722 pub fn for_token(&self) -> Option<SyntaxToken> {
4723 support::token(&self.syntax, SyntaxKind::FOR_KW)
4724 }
4725 #[inline]
4726 pub fn language_token(&self) -> Option<SyntaxToken> {
4727 support::token(&self.syntax, SyntaxKind::LANGUAGE_KW)
4728 }
4729 #[inline]
4730 pub fn transform_token(&self) -> Option<SyntaxToken> {
4731 support::token(&self.syntax, SyntaxKind::TRANSFORM_KW)
4732 }
4733}
4734
4735#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4736pub struct CreateTrigger {
4737 pub(crate) syntax: SyntaxNode,
4738}
4739impl CreateTrigger {
4740 #[inline]
4741 pub fn call_expr(&self) -> Option<CallExpr> {
4742 support::child(&self.syntax)
4743 }
4744 #[inline]
4745 pub fn deferrable_constraint_option(&self) -> Option<DeferrableConstraintOption> {
4746 support::child(&self.syntax)
4747 }
4748 #[inline]
4749 pub fn from_table(&self) -> Option<FromTable> {
4750 support::child(&self.syntax)
4751 }
4752 #[inline]
4753 pub fn initially_deferred_constraint_option(
4754 &self,
4755 ) -> Option<InitiallyDeferredConstraintOption> {
4756 support::child(&self.syntax)
4757 }
4758 #[inline]
4759 pub fn initially_immediate_constraint_option(
4760 &self,
4761 ) -> Option<InitiallyImmediateConstraintOption> {
4762 support::child(&self.syntax)
4763 }
4764 #[inline]
4765 pub fn name(&self) -> Option<Name> {
4766 support::child(&self.syntax)
4767 }
4768 #[inline]
4769 pub fn not_deferrable_constraint_option(&self) -> Option<NotDeferrableConstraintOption> {
4770 support::child(&self.syntax)
4771 }
4772 #[inline]
4773 pub fn on_table(&self) -> Option<OnTable> {
4774 support::child(&self.syntax)
4775 }
4776 #[inline]
4777 pub fn or_replace(&self) -> Option<OrReplace> {
4778 support::child(&self.syntax)
4779 }
4780 #[inline]
4781 pub fn referencing(&self) -> Option<Referencing> {
4782 support::child(&self.syntax)
4783 }
4784 #[inline]
4785 pub fn timing(&self) -> Option<Timing> {
4786 support::child(&self.syntax)
4787 }
4788 #[inline]
4789 pub fn trigger_event_list(&self) -> Option<TriggerEventList> {
4790 support::child(&self.syntax)
4791 }
4792 #[inline]
4793 pub fn when_condition(&self) -> Option<WhenCondition> {
4794 support::child(&self.syntax)
4795 }
4796 #[inline]
4797 pub fn constraint_token(&self) -> Option<SyntaxToken> {
4798 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
4799 }
4800 #[inline]
4801 pub fn create_token(&self) -> Option<SyntaxToken> {
4802 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4803 }
4804 #[inline]
4805 pub fn each_token(&self) -> Option<SyntaxToken> {
4806 support::token(&self.syntax, SyntaxKind::EACH_KW)
4807 }
4808 #[inline]
4809 pub fn execute_token(&self) -> Option<SyntaxToken> {
4810 support::token(&self.syntax, SyntaxKind::EXECUTE_KW)
4811 }
4812 #[inline]
4813 pub fn for_token(&self) -> Option<SyntaxToken> {
4814 support::token(&self.syntax, SyntaxKind::FOR_KW)
4815 }
4816 #[inline]
4817 pub fn function_token(&self) -> Option<SyntaxToken> {
4818 support::token(&self.syntax, SyntaxKind::FUNCTION_KW)
4819 }
4820 #[inline]
4821 pub fn procedure_token(&self) -> Option<SyntaxToken> {
4822 support::token(&self.syntax, SyntaxKind::PROCEDURE_KW)
4823 }
4824 #[inline]
4825 pub fn row_token(&self) -> Option<SyntaxToken> {
4826 support::token(&self.syntax, SyntaxKind::ROW_KW)
4827 }
4828 #[inline]
4829 pub fn statement_token(&self) -> Option<SyntaxToken> {
4830 support::token(&self.syntax, SyntaxKind::STATEMENT_KW)
4831 }
4832 #[inline]
4833 pub fn trigger_token(&self) -> Option<SyntaxToken> {
4834 support::token(&self.syntax, SyntaxKind::TRIGGER_KW)
4835 }
4836}
4837
4838#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4839pub struct CreateType {
4840 pub(crate) syntax: SyntaxNode,
4841}
4842impl CreateType {
4843 #[inline]
4844 pub fn attribute_list(&self) -> Option<AttributeList> {
4845 support::child(&self.syntax)
4846 }
4847 #[inline]
4848 pub fn column_list(&self) -> Option<ColumnList> {
4849 support::child(&self.syntax)
4850 }
4851 #[inline]
4852 pub fn path(&self) -> Option<Path> {
4853 support::child(&self.syntax)
4854 }
4855 #[inline]
4856 pub fn variant_list(&self) -> Option<VariantList> {
4857 support::child(&self.syntax)
4858 }
4859 #[inline]
4860 pub fn as_token(&self) -> Option<SyntaxToken> {
4861 support::token(&self.syntax, SyntaxKind::AS_KW)
4862 }
4863 #[inline]
4864 pub fn create_token(&self) -> Option<SyntaxToken> {
4865 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4866 }
4867 #[inline]
4868 pub fn enum_token(&self) -> Option<SyntaxToken> {
4869 support::token(&self.syntax, SyntaxKind::ENUM_KW)
4870 }
4871 #[inline]
4872 pub fn range_token(&self) -> Option<SyntaxToken> {
4873 support::token(&self.syntax, SyntaxKind::RANGE_KW)
4874 }
4875 #[inline]
4876 pub fn type_token(&self) -> Option<SyntaxToken> {
4877 support::token(&self.syntax, SyntaxKind::TYPE_KW)
4878 }
4879}
4880
4881#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4882pub struct CreateUser {
4883 pub(crate) syntax: SyntaxNode,
4884}
4885impl CreateUser {
4886 #[inline]
4887 pub fn name(&self) -> Option<Name> {
4888 support::child(&self.syntax)
4889 }
4890 #[inline]
4891 pub fn role_option_list(&self) -> Option<RoleOptionList> {
4892 support::child(&self.syntax)
4893 }
4894 #[inline]
4895 pub fn create_token(&self) -> Option<SyntaxToken> {
4896 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4897 }
4898 #[inline]
4899 pub fn user_token(&self) -> Option<SyntaxToken> {
4900 support::token(&self.syntax, SyntaxKind::USER_KW)
4901 }
4902}
4903
4904#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4905pub struct CreateUserMapping {
4906 pub(crate) syntax: SyntaxNode,
4907}
4908impl CreateUserMapping {
4909 #[inline]
4910 pub fn alter_option_list(&self) -> Option<AlterOptionList> {
4911 support::child(&self.syntax)
4912 }
4913 #[inline]
4914 pub fn if_not_exists(&self) -> Option<IfNotExists> {
4915 support::child(&self.syntax)
4916 }
4917 #[inline]
4918 pub fn name_ref(&self) -> Option<NameRef> {
4919 support::child(&self.syntax)
4920 }
4921 #[inline]
4922 pub fn role(&self) -> Option<Role> {
4923 support::child(&self.syntax)
4924 }
4925 #[inline]
4926 pub fn create_token(&self) -> Option<SyntaxToken> {
4927 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4928 }
4929 #[inline]
4930 pub fn for_token(&self) -> Option<SyntaxToken> {
4931 support::token(&self.syntax, SyntaxKind::FOR_KW)
4932 }
4933 #[inline]
4934 pub fn mapping_token(&self) -> Option<SyntaxToken> {
4935 support::token(&self.syntax, SyntaxKind::MAPPING_KW)
4936 }
4937 #[inline]
4938 pub fn server_token(&self) -> Option<SyntaxToken> {
4939 support::token(&self.syntax, SyntaxKind::SERVER_KW)
4940 }
4941 #[inline]
4942 pub fn user_token(&self) -> Option<SyntaxToken> {
4943 support::token(&self.syntax, SyntaxKind::USER_KW)
4944 }
4945}
4946
4947#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4948pub struct CreateView {
4949 pub(crate) syntax: SyntaxNode,
4950}
4951impl CreateView {
4952 #[inline]
4953 pub fn column_list(&self) -> Option<ColumnList> {
4954 support::child(&self.syntax)
4955 }
4956 #[inline]
4957 pub fn or_replace(&self) -> Option<OrReplace> {
4958 support::child(&self.syntax)
4959 }
4960 #[inline]
4961 pub fn path(&self) -> Option<Path> {
4962 support::child(&self.syntax)
4963 }
4964 #[inline]
4965 pub fn query(&self) -> Option<SelectVariant> {
4966 support::child(&self.syntax)
4967 }
4968 #[inline]
4969 pub fn with_params(&self) -> Option<WithParams> {
4970 support::child(&self.syntax)
4971 }
4972 #[inline]
4973 pub fn as_token(&self) -> Option<SyntaxToken> {
4974 support::token(&self.syntax, SyntaxKind::AS_KW)
4975 }
4976 #[inline]
4977 pub fn cascaded_token(&self) -> Option<SyntaxToken> {
4978 support::token(&self.syntax, SyntaxKind::CASCADED_KW)
4979 }
4980 #[inline]
4981 pub fn check_token(&self) -> Option<SyntaxToken> {
4982 support::token(&self.syntax, SyntaxKind::CHECK_KW)
4983 }
4984 #[inline]
4985 pub fn create_token(&self) -> Option<SyntaxToken> {
4986 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4987 }
4988 #[inline]
4989 pub fn local_token(&self) -> Option<SyntaxToken> {
4990 support::token(&self.syntax, SyntaxKind::LOCAL_KW)
4991 }
4992 #[inline]
4993 pub fn option_token(&self) -> Option<SyntaxToken> {
4994 support::token(&self.syntax, SyntaxKind::OPTION_KW)
4995 }
4996 #[inline]
4997 pub fn recursive_token(&self) -> Option<SyntaxToken> {
4998 support::token(&self.syntax, SyntaxKind::RECURSIVE_KW)
4999 }
5000 #[inline]
5001 pub fn temp_token(&self) -> Option<SyntaxToken> {
5002 support::token(&self.syntax, SyntaxKind::TEMP_KW)
5003 }
5004 #[inline]
5005 pub fn temporary_token(&self) -> Option<SyntaxToken> {
5006 support::token(&self.syntax, SyntaxKind::TEMPORARY_KW)
5007 }
5008 #[inline]
5009 pub fn view_token(&self) -> Option<SyntaxToken> {
5010 support::token(&self.syntax, SyntaxKind::VIEW_KW)
5011 }
5012 #[inline]
5013 pub fn with_token(&self) -> Option<SyntaxToken> {
5014 support::token(&self.syntax, SyntaxKind::WITH_KW)
5015 }
5016}
5017
5018#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5019pub struct CustomOp {
5020 pub(crate) syntax: SyntaxNode,
5021}
5022impl CustomOp {
5023 #[inline]
5024 pub fn bang_token(&self) -> Option<SyntaxToken> {
5025 support::token(&self.syntax, SyntaxKind::BANG)
5026 }
5027 #[inline]
5028 pub fn pound_token(&self) -> Option<SyntaxToken> {
5029 support::token(&self.syntax, SyntaxKind::POUND)
5030 }
5031 #[inline]
5032 pub fn percent_token(&self) -> Option<SyntaxToken> {
5033 support::token(&self.syntax, SyntaxKind::PERCENT)
5034 }
5035 #[inline]
5036 pub fn amp_token(&self) -> Option<SyntaxToken> {
5037 support::token(&self.syntax, SyntaxKind::AMP)
5038 }
5039 #[inline]
5040 pub fn star_token(&self) -> Option<SyntaxToken> {
5041 support::token(&self.syntax, SyntaxKind::STAR)
5042 }
5043 #[inline]
5044 pub fn plus_token(&self) -> Option<SyntaxToken> {
5045 support::token(&self.syntax, SyntaxKind::PLUS)
5046 }
5047 #[inline]
5048 pub fn minus_token(&self) -> Option<SyntaxToken> {
5049 support::token(&self.syntax, SyntaxKind::MINUS)
5050 }
5051 #[inline]
5052 pub fn slash_token(&self) -> Option<SyntaxToken> {
5053 support::token(&self.syntax, SyntaxKind::SLASH)
5054 }
5055 #[inline]
5056 pub fn l_angle_token(&self) -> Option<SyntaxToken> {
5057 support::token(&self.syntax, SyntaxKind::L_ANGLE)
5058 }
5059 #[inline]
5060 pub fn eq_token(&self) -> Option<SyntaxToken> {
5061 support::token(&self.syntax, SyntaxKind::EQ)
5062 }
5063 #[inline]
5064 pub fn r_angle_token(&self) -> Option<SyntaxToken> {
5065 support::token(&self.syntax, SyntaxKind::R_ANGLE)
5066 }
5067 #[inline]
5068 pub fn question_token(&self) -> Option<SyntaxToken> {
5069 support::token(&self.syntax, SyntaxKind::QUESTION)
5070 }
5071 #[inline]
5072 pub fn at_token(&self) -> Option<SyntaxToken> {
5073 support::token(&self.syntax, SyntaxKind::AT)
5074 }
5075 #[inline]
5076 pub fn caret_token(&self) -> Option<SyntaxToken> {
5077 support::token(&self.syntax, SyntaxKind::CARET)
5078 }
5079 #[inline]
5080 pub fn backtick_token(&self) -> Option<SyntaxToken> {
5081 support::token(&self.syntax, SyntaxKind::BACKTICK)
5082 }
5083 #[inline]
5084 pub fn pipe_token(&self) -> Option<SyntaxToken> {
5085 support::token(&self.syntax, SyntaxKind::PIPE)
5086 }
5087 #[inline]
5088 pub fn tilde_token(&self) -> Option<SyntaxToken> {
5089 support::token(&self.syntax, SyntaxKind::TILDE)
5090 }
5091}
5092
5093#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5094pub struct Deallocate {
5095 pub(crate) syntax: SyntaxNode,
5096}
5097impl Deallocate {
5098 #[inline]
5099 pub fn name_ref(&self) -> Option<NameRef> {
5100 support::child(&self.syntax)
5101 }
5102 #[inline]
5103 pub fn all_token(&self) -> Option<SyntaxToken> {
5104 support::token(&self.syntax, SyntaxKind::ALL_KW)
5105 }
5106 #[inline]
5107 pub fn deallocate_token(&self) -> Option<SyntaxToken> {
5108 support::token(&self.syntax, SyntaxKind::DEALLOCATE_KW)
5109 }
5110 #[inline]
5111 pub fn prepare_token(&self) -> Option<SyntaxToken> {
5112 support::token(&self.syntax, SyntaxKind::PREPARE_KW)
5113 }
5114}
5115
5116#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5117pub struct Declare {
5118 pub(crate) syntax: SyntaxNode,
5119}
5120impl Declare {
5121 #[inline]
5122 pub fn name(&self) -> Option<Name> {
5123 support::child(&self.syntax)
5124 }
5125 #[inline]
5126 pub fn query(&self) -> Option<SelectVariant> {
5127 support::child(&self.syntax)
5128 }
5129 #[inline]
5130 pub fn asensitive_token(&self) -> Option<SyntaxToken> {
5131 support::token(&self.syntax, SyntaxKind::ASENSITIVE_KW)
5132 }
5133 #[inline]
5134 pub fn binary_token(&self) -> Option<SyntaxToken> {
5135 support::token(&self.syntax, SyntaxKind::BINARY_KW)
5136 }
5137 #[inline]
5138 pub fn cursor_token(&self) -> Option<SyntaxToken> {
5139 support::token(&self.syntax, SyntaxKind::CURSOR_KW)
5140 }
5141 #[inline]
5142 pub fn declare_token(&self) -> Option<SyntaxToken> {
5143 support::token(&self.syntax, SyntaxKind::DECLARE_KW)
5144 }
5145 #[inline]
5146 pub fn for_token(&self) -> Option<SyntaxToken> {
5147 support::token(&self.syntax, SyntaxKind::FOR_KW)
5148 }
5149 #[inline]
5150 pub fn hold_token(&self) -> Option<SyntaxToken> {
5151 support::token(&self.syntax, SyntaxKind::HOLD_KW)
5152 }
5153 #[inline]
5154 pub fn insensitive_token(&self) -> Option<SyntaxToken> {
5155 support::token(&self.syntax, SyntaxKind::INSENSITIVE_KW)
5156 }
5157 #[inline]
5158 pub fn no_token(&self) -> Option<SyntaxToken> {
5159 support::token(&self.syntax, SyntaxKind::NO_KW)
5160 }
5161 #[inline]
5162 pub fn scroll_token(&self) -> Option<SyntaxToken> {
5163 support::token(&self.syntax, SyntaxKind::SCROLL_KW)
5164 }
5165 #[inline]
5166 pub fn with_token(&self) -> Option<SyntaxToken> {
5167 support::token(&self.syntax, SyntaxKind::WITH_KW)
5168 }
5169 #[inline]
5170 pub fn without_token(&self) -> Option<SyntaxToken> {
5171 support::token(&self.syntax, SyntaxKind::WITHOUT_KW)
5172 }
5173}
5174
5175#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5176pub struct DefaultConstraint {
5177 pub(crate) syntax: SyntaxNode,
5178}
5179impl DefaultConstraint {
5180 #[inline]
5181 pub fn expr(&self) -> Option<Expr> {
5182 support::child(&self.syntax)
5183 }
5184 #[inline]
5185 pub fn name_ref(&self) -> Option<NameRef> {
5186 support::child(&self.syntax)
5187 }
5188 #[inline]
5189 pub fn constraint_token(&self) -> Option<SyntaxToken> {
5190 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
5191 }
5192 #[inline]
5193 pub fn default_token(&self) -> Option<SyntaxToken> {
5194 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
5195 }
5196}
5197
5198#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5199pub struct Deferrable {
5200 pub(crate) syntax: SyntaxNode,
5201}
5202impl Deferrable {
5203 #[inline]
5204 pub fn deferrable_token(&self) -> Option<SyntaxToken> {
5205 support::token(&self.syntax, SyntaxKind::DEFERRABLE_KW)
5206 }
5207}
5208
5209#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5210pub struct DeferrableConstraintOption {
5211 pub(crate) syntax: SyntaxNode,
5212}
5213impl DeferrableConstraintOption {
5214 #[inline]
5215 pub fn deferrable_token(&self) -> Option<SyntaxToken> {
5216 support::token(&self.syntax, SyntaxKind::DEFERRABLE_KW)
5217 }
5218}
5219
5220#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5221pub struct Delete {
5222 pub(crate) syntax: SyntaxNode,
5223}
5224impl Delete {
5225 #[inline]
5226 pub fn alias(&self) -> Option<Alias> {
5227 support::child(&self.syntax)
5228 }
5229 #[inline]
5230 pub fn relation_name(&self) -> Option<RelationName> {
5231 support::child(&self.syntax)
5232 }
5233 #[inline]
5234 pub fn returning_clause(&self) -> Option<ReturningClause> {
5235 support::child(&self.syntax)
5236 }
5237 #[inline]
5238 pub fn using_clause(&self) -> Option<UsingClause> {
5239 support::child(&self.syntax)
5240 }
5241 #[inline]
5242 pub fn where_clause(&self) -> Option<WhereClause> {
5243 support::child(&self.syntax)
5244 }
5245 #[inline]
5246 pub fn where_current_of(&self) -> Option<WhereCurrentOf> {
5247 support::child(&self.syntax)
5248 }
5249 #[inline]
5250 pub fn delete_token(&self) -> Option<SyntaxToken> {
5251 support::token(&self.syntax, SyntaxKind::DELETE_KW)
5252 }
5253 #[inline]
5254 pub fn from_token(&self) -> Option<SyntaxToken> {
5255 support::token(&self.syntax, SyntaxKind::FROM_KW)
5256 }
5257}
5258
5259#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5260pub struct DeleteRows {
5261 pub(crate) syntax: SyntaxNode,
5262}
5263impl DeleteRows {
5264 #[inline]
5265 pub fn delete_token(&self) -> Option<SyntaxToken> {
5266 support::token(&self.syntax, SyntaxKind::DELETE_KW)
5267 }
5268 #[inline]
5269 pub fn rows_token(&self) -> Option<SyntaxToken> {
5270 support::token(&self.syntax, SyntaxKind::ROWS_KW)
5271 }
5272}
5273
5274#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5275pub struct DependsOnExtension {
5276 pub(crate) syntax: SyntaxNode,
5277}
5278impl DependsOnExtension {
5279 #[inline]
5280 pub fn name_ref(&self) -> Option<NameRef> {
5281 support::child(&self.syntax)
5282 }
5283 #[inline]
5284 pub fn depends_token(&self) -> Option<SyntaxToken> {
5285 support::token(&self.syntax, SyntaxKind::DEPENDS_KW)
5286 }
5287 #[inline]
5288 pub fn extension_token(&self) -> Option<SyntaxToken> {
5289 support::token(&self.syntax, SyntaxKind::EXTENSION_KW)
5290 }
5291 #[inline]
5292 pub fn on_token(&self) -> Option<SyntaxToken> {
5293 support::token(&self.syntax, SyntaxKind::ON_KW)
5294 }
5295}
5296
5297#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5298pub struct DetachPartition {
5299 pub(crate) syntax: SyntaxNode,
5300}
5301impl DetachPartition {
5302 #[inline]
5303 pub fn detach_token(&self) -> Option<SyntaxToken> {
5304 support::token(&self.syntax, SyntaxKind::DETACH_KW)
5305 }
5306 #[inline]
5307 pub fn partition_token(&self) -> Option<SyntaxToken> {
5308 support::token(&self.syntax, SyntaxKind::PARTITION_KW)
5309 }
5310}
5311
5312#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5313pub struct DisableRls {
5314 pub(crate) syntax: SyntaxNode,
5315}
5316impl DisableRls {
5317 #[inline]
5318 pub fn disable_token(&self) -> Option<SyntaxToken> {
5319 support::token(&self.syntax, SyntaxKind::DISABLE_KW)
5320 }
5321 #[inline]
5322 pub fn level_token(&self) -> Option<SyntaxToken> {
5323 support::token(&self.syntax, SyntaxKind::LEVEL_KW)
5324 }
5325 #[inline]
5326 pub fn row_token(&self) -> Option<SyntaxToken> {
5327 support::token(&self.syntax, SyntaxKind::ROW_KW)
5328 }
5329 #[inline]
5330 pub fn security_token(&self) -> Option<SyntaxToken> {
5331 support::token(&self.syntax, SyntaxKind::SECURITY_KW)
5332 }
5333}
5334
5335#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5336pub struct DisableRule {
5337 pub(crate) syntax: SyntaxNode,
5338}
5339impl DisableRule {
5340 #[inline]
5341 pub fn disable_token(&self) -> Option<SyntaxToken> {
5342 support::token(&self.syntax, SyntaxKind::DISABLE_KW)
5343 }
5344 #[inline]
5345 pub fn rule_token(&self) -> Option<SyntaxToken> {
5346 support::token(&self.syntax, SyntaxKind::RULE_KW)
5347 }
5348}
5349
5350#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5351pub struct DisableTrigger {
5352 pub(crate) syntax: SyntaxNode,
5353}
5354impl DisableTrigger {
5355 #[inline]
5356 pub fn disable_token(&self) -> Option<SyntaxToken> {
5357 support::token(&self.syntax, SyntaxKind::DISABLE_KW)
5358 }
5359 #[inline]
5360 pub fn trigger_token(&self) -> Option<SyntaxToken> {
5361 support::token(&self.syntax, SyntaxKind::TRIGGER_KW)
5362 }
5363}
5364
5365#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5366pub struct Discard {
5367 pub(crate) syntax: SyntaxNode,
5368}
5369impl Discard {
5370 #[inline]
5371 pub fn all_token(&self) -> Option<SyntaxToken> {
5372 support::token(&self.syntax, SyntaxKind::ALL_KW)
5373 }
5374 #[inline]
5375 pub fn discard_token(&self) -> Option<SyntaxToken> {
5376 support::token(&self.syntax, SyntaxKind::DISCARD_KW)
5377 }
5378 #[inline]
5379 pub fn plans_token(&self) -> Option<SyntaxToken> {
5380 support::token(&self.syntax, SyntaxKind::PLANS_KW)
5381 }
5382 #[inline]
5383 pub fn sequences_token(&self) -> Option<SyntaxToken> {
5384 support::token(&self.syntax, SyntaxKind::SEQUENCES_KW)
5385 }
5386 #[inline]
5387 pub fn temp_token(&self) -> Option<SyntaxToken> {
5388 support::token(&self.syntax, SyntaxKind::TEMP_KW)
5389 }
5390 #[inline]
5391 pub fn temporary_token(&self) -> Option<SyntaxToken> {
5392 support::token(&self.syntax, SyntaxKind::TEMPORARY_KW)
5393 }
5394}
5395
5396#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5397pub struct DistinctClause {
5398 pub(crate) syntax: SyntaxNode,
5399}
5400impl DistinctClause {
5401 #[inline]
5402 pub fn exprs(&self) -> AstChildren<Expr> {
5403 support::children(&self.syntax)
5404 }
5405 #[inline]
5406 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
5407 support::token(&self.syntax, SyntaxKind::L_PAREN)
5408 }
5409 #[inline]
5410 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
5411 support::token(&self.syntax, SyntaxKind::R_PAREN)
5412 }
5413 #[inline]
5414 pub fn distinct_token(&self) -> Option<SyntaxToken> {
5415 support::token(&self.syntax, SyntaxKind::DISTINCT_KW)
5416 }
5417 #[inline]
5418 pub fn on_token(&self) -> Option<SyntaxToken> {
5419 support::token(&self.syntax, SyntaxKind::ON_KW)
5420 }
5421}
5422
5423#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5424pub struct Do {
5425 pub(crate) syntax: SyntaxNode,
5426}
5427impl Do {
5428 #[inline]
5429 pub fn do_token(&self) -> Option<SyntaxToken> {
5430 support::token(&self.syntax, SyntaxKind::DO_KW)
5431 }
5432}
5433
5434#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5435pub struct DoubleType {
5436 pub(crate) syntax: SyntaxNode,
5437}
5438impl DoubleType {
5439 #[inline]
5440 pub fn double_token(&self) -> Option<SyntaxToken> {
5441 support::token(&self.syntax, SyntaxKind::DOUBLE_KW)
5442 }
5443 #[inline]
5444 pub fn precision_token(&self) -> Option<SyntaxToken> {
5445 support::token(&self.syntax, SyntaxKind::PRECISION_KW)
5446 }
5447}
5448
5449#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5450pub struct Drop {
5451 pub(crate) syntax: SyntaxNode,
5452}
5453impl Drop {
5454 #[inline]
5455 pub fn drop_token(&self) -> Option<SyntaxToken> {
5456 support::token(&self.syntax, SyntaxKind::DROP_KW)
5457 }
5458}
5459
5460#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5461pub struct DropAccessMethod {
5462 pub(crate) syntax: SyntaxNode,
5463}
5464impl DropAccessMethod {
5465 #[inline]
5466 pub fn if_exists(&self) -> Option<IfExists> {
5467 support::child(&self.syntax)
5468 }
5469 #[inline]
5470 pub fn name_ref(&self) -> Option<NameRef> {
5471 support::child(&self.syntax)
5472 }
5473 #[inline]
5474 pub fn access_token(&self) -> Option<SyntaxToken> {
5475 support::token(&self.syntax, SyntaxKind::ACCESS_KW)
5476 }
5477 #[inline]
5478 pub fn cascade_token(&self) -> Option<SyntaxToken> {
5479 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
5480 }
5481 #[inline]
5482 pub fn drop_token(&self) -> Option<SyntaxToken> {
5483 support::token(&self.syntax, SyntaxKind::DROP_KW)
5484 }
5485 #[inline]
5486 pub fn method_token(&self) -> Option<SyntaxToken> {
5487 support::token(&self.syntax, SyntaxKind::METHOD_KW)
5488 }
5489 #[inline]
5490 pub fn restrict_token(&self) -> Option<SyntaxToken> {
5491 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
5492 }
5493}
5494
5495#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5496pub struct DropAggregate {
5497 pub(crate) syntax: SyntaxNode,
5498}
5499impl DropAggregate {
5500 #[inline]
5501 pub fn aggregates(&self) -> AstChildren<Aggregate> {
5502 support::children(&self.syntax)
5503 }
5504 #[inline]
5505 pub fn if_exists(&self) -> Option<IfExists> {
5506 support::child(&self.syntax)
5507 }
5508 #[inline]
5509 pub fn aggregate_token(&self) -> Option<SyntaxToken> {
5510 support::token(&self.syntax, SyntaxKind::AGGREGATE_KW)
5511 }
5512 #[inline]
5513 pub fn cascade_token(&self) -> Option<SyntaxToken> {
5514 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
5515 }
5516 #[inline]
5517 pub fn drop_token(&self) -> Option<SyntaxToken> {
5518 support::token(&self.syntax, SyntaxKind::DROP_KW)
5519 }
5520 #[inline]
5521 pub fn restrict_token(&self) -> Option<SyntaxToken> {
5522 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
5523 }
5524}
5525
5526#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5527pub struct DropCast {
5528 pub(crate) syntax: SyntaxNode,
5529}
5530impl DropCast {
5531 #[inline]
5532 pub fn cast_sig(&self) -> Option<CastSig> {
5533 support::child(&self.syntax)
5534 }
5535 #[inline]
5536 pub fn if_exists(&self) -> Option<IfExists> {
5537 support::child(&self.syntax)
5538 }
5539 #[inline]
5540 pub fn cascade_token(&self) -> Option<SyntaxToken> {
5541 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
5542 }
5543 #[inline]
5544 pub fn cast_token(&self) -> Option<SyntaxToken> {
5545 support::token(&self.syntax, SyntaxKind::CAST_KW)
5546 }
5547 #[inline]
5548 pub fn drop_token(&self) -> Option<SyntaxToken> {
5549 support::token(&self.syntax, SyntaxKind::DROP_KW)
5550 }
5551 #[inline]
5552 pub fn restrict_token(&self) -> Option<SyntaxToken> {
5553 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
5554 }
5555}
5556
5557#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5558pub struct DropCollation {
5559 pub(crate) syntax: SyntaxNode,
5560}
5561impl DropCollation {
5562 #[inline]
5563 pub fn if_exists(&self) -> Option<IfExists> {
5564 support::child(&self.syntax)
5565 }
5566 #[inline]
5567 pub fn paths(&self) -> AstChildren<Path> {
5568 support::children(&self.syntax)
5569 }
5570 #[inline]
5571 pub fn cascade_token(&self) -> Option<SyntaxToken> {
5572 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
5573 }
5574 #[inline]
5575 pub fn collation_token(&self) -> Option<SyntaxToken> {
5576 support::token(&self.syntax, SyntaxKind::COLLATION_KW)
5577 }
5578 #[inline]
5579 pub fn drop_token(&self) -> Option<SyntaxToken> {
5580 support::token(&self.syntax, SyntaxKind::DROP_KW)
5581 }
5582 #[inline]
5583 pub fn restrict_token(&self) -> Option<SyntaxToken> {
5584 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
5585 }
5586}
5587
5588#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5589pub struct DropColumn {
5590 pub(crate) syntax: SyntaxNode,
5591}
5592impl DropColumn {
5593 #[inline]
5594 pub fn if_exists(&self) -> Option<IfExists> {
5595 support::child(&self.syntax)
5596 }
5597 #[inline]
5598 pub fn name_ref(&self) -> Option<NameRef> {
5599 support::child(&self.syntax)
5600 }
5601 #[inline]
5602 pub fn cascade_token(&self) -> Option<SyntaxToken> {
5603 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
5604 }
5605 #[inline]
5606 pub fn column_token(&self) -> Option<SyntaxToken> {
5607 support::token(&self.syntax, SyntaxKind::COLUMN_KW)
5608 }
5609 #[inline]
5610 pub fn drop_token(&self) -> Option<SyntaxToken> {
5611 support::token(&self.syntax, SyntaxKind::DROP_KW)
5612 }
5613 #[inline]
5614 pub fn restrict_token(&self) -> Option<SyntaxToken> {
5615 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
5616 }
5617}
5618
5619#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5620pub struct DropConstraint {
5621 pub(crate) syntax: SyntaxNode,
5622}
5623impl DropConstraint {
5624 #[inline]
5625 pub fn if_exists(&self) -> Option<IfExists> {
5626 support::child(&self.syntax)
5627 }
5628 #[inline]
5629 pub fn name_ref(&self) -> Option<NameRef> {
5630 support::child(&self.syntax)
5631 }
5632 #[inline]
5633 pub fn cascade_token(&self) -> Option<SyntaxToken> {
5634 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
5635 }
5636 #[inline]
5637 pub fn constraint_token(&self) -> Option<SyntaxToken> {
5638 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
5639 }
5640 #[inline]
5641 pub fn drop_token(&self) -> Option<SyntaxToken> {
5642 support::token(&self.syntax, SyntaxKind::DROP_KW)
5643 }
5644 #[inline]
5645 pub fn restrict_token(&self) -> Option<SyntaxToken> {
5646 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
5647 }
5648}
5649
5650#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5651pub struct DropConversion {
5652 pub(crate) syntax: SyntaxNode,
5653}
5654impl DropConversion {
5655 #[inline]
5656 pub fn if_exists(&self) -> Option<IfExists> {
5657 support::child(&self.syntax)
5658 }
5659 #[inline]
5660 pub fn path(&self) -> Option<Path> {
5661 support::child(&self.syntax)
5662 }
5663 #[inline]
5664 pub fn cascade_token(&self) -> Option<SyntaxToken> {
5665 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
5666 }
5667 #[inline]
5668 pub fn conversion_token(&self) -> Option<SyntaxToken> {
5669 support::token(&self.syntax, SyntaxKind::CONVERSION_KW)
5670 }
5671 #[inline]
5672 pub fn drop_token(&self) -> Option<SyntaxToken> {
5673 support::token(&self.syntax, SyntaxKind::DROP_KW)
5674 }
5675 #[inline]
5676 pub fn restrict_token(&self) -> Option<SyntaxToken> {
5677 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
5678 }
5679}
5680
5681#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5682pub struct DropDatabase {
5683 pub(crate) syntax: SyntaxNode,
5684}
5685impl DropDatabase {
5686 #[inline]
5687 pub fn if_exists(&self) -> Option<IfExists> {
5688 support::child(&self.syntax)
5689 }
5690 #[inline]
5691 pub fn name_ref(&self) -> Option<NameRef> {
5692 support::child(&self.syntax)
5693 }
5694 #[inline]
5695 pub fn database_token(&self) -> Option<SyntaxToken> {
5696 support::token(&self.syntax, SyntaxKind::DATABASE_KW)
5697 }
5698 #[inline]
5699 pub fn drop_token(&self) -> Option<SyntaxToken> {
5700 support::token(&self.syntax, SyntaxKind::DROP_KW)
5701 }
5702}
5703
5704#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5705pub struct DropDefault {
5706 pub(crate) syntax: SyntaxNode,
5707}
5708impl DropDefault {
5709 #[inline]
5710 pub fn default_token(&self) -> Option<SyntaxToken> {
5711 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
5712 }
5713 #[inline]
5714 pub fn drop_token(&self) -> Option<SyntaxToken> {
5715 support::token(&self.syntax, SyntaxKind::DROP_KW)
5716 }
5717}
5718
5719#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5720pub struct DropDomain {
5721 pub(crate) syntax: SyntaxNode,
5722}
5723impl DropDomain {
5724 #[inline]
5725 pub fn if_exists(&self) -> Option<IfExists> {
5726 support::child(&self.syntax)
5727 }
5728 #[inline]
5729 pub fn paths(&self) -> AstChildren<Path> {
5730 support::children(&self.syntax)
5731 }
5732 #[inline]
5733 pub fn cascade_token(&self) -> Option<SyntaxToken> {
5734 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
5735 }
5736 #[inline]
5737 pub fn domain_token(&self) -> Option<SyntaxToken> {
5738 support::token(&self.syntax, SyntaxKind::DOMAIN_KW)
5739 }
5740 #[inline]
5741 pub fn drop_token(&self) -> Option<SyntaxToken> {
5742 support::token(&self.syntax, SyntaxKind::DROP_KW)
5743 }
5744 #[inline]
5745 pub fn restrict_token(&self) -> Option<SyntaxToken> {
5746 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
5747 }
5748}
5749
5750#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5751pub struct DropEventTrigger {
5752 pub(crate) syntax: SyntaxNode,
5753}
5754impl DropEventTrigger {
5755 #[inline]
5756 pub fn if_exists(&self) -> Option<IfExists> {
5757 support::child(&self.syntax)
5758 }
5759 #[inline]
5760 pub fn name_ref(&self) -> Option<NameRef> {
5761 support::child(&self.syntax)
5762 }
5763 #[inline]
5764 pub fn cascade_token(&self) -> Option<SyntaxToken> {
5765 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
5766 }
5767 #[inline]
5768 pub fn drop_token(&self) -> Option<SyntaxToken> {
5769 support::token(&self.syntax, SyntaxKind::DROP_KW)
5770 }
5771 #[inline]
5772 pub fn event_token(&self) -> Option<SyntaxToken> {
5773 support::token(&self.syntax, SyntaxKind::EVENT_KW)
5774 }
5775 #[inline]
5776 pub fn restrict_token(&self) -> Option<SyntaxToken> {
5777 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
5778 }
5779 #[inline]
5780 pub fn trigger_token(&self) -> Option<SyntaxToken> {
5781 support::token(&self.syntax, SyntaxKind::TRIGGER_KW)
5782 }
5783}
5784
5785#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5786pub struct DropExpression {
5787 pub(crate) syntax: SyntaxNode,
5788}
5789impl DropExpression {
5790 #[inline]
5791 pub fn if_exists(&self) -> Option<IfExists> {
5792 support::child(&self.syntax)
5793 }
5794 #[inline]
5795 pub fn drop_token(&self) -> Option<SyntaxToken> {
5796 support::token(&self.syntax, SyntaxKind::DROP_KW)
5797 }
5798 #[inline]
5799 pub fn expression_token(&self) -> Option<SyntaxToken> {
5800 support::token(&self.syntax, SyntaxKind::EXPRESSION_KW)
5801 }
5802}
5803
5804#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5805pub struct DropExtension {
5806 pub(crate) syntax: SyntaxNode,
5807}
5808impl DropExtension {
5809 #[inline]
5810 pub fn if_exists(&self) -> Option<IfExists> {
5811 support::child(&self.syntax)
5812 }
5813 #[inline]
5814 pub fn name_refs(&self) -> AstChildren<NameRef> {
5815 support::children(&self.syntax)
5816 }
5817 #[inline]
5818 pub fn cascade_token(&self) -> Option<SyntaxToken> {
5819 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
5820 }
5821 #[inline]
5822 pub fn drop_token(&self) -> Option<SyntaxToken> {
5823 support::token(&self.syntax, SyntaxKind::DROP_KW)
5824 }
5825 #[inline]
5826 pub fn extension_token(&self) -> Option<SyntaxToken> {
5827 support::token(&self.syntax, SyntaxKind::EXTENSION_KW)
5828 }
5829 #[inline]
5830 pub fn restrict_token(&self) -> Option<SyntaxToken> {
5831 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
5832 }
5833}
5834
5835#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5836pub struct DropForeignDataWrapper {
5837 pub(crate) syntax: SyntaxNode,
5838}
5839impl DropForeignDataWrapper {
5840 #[inline]
5841 pub fn if_exists(&self) -> Option<IfExists> {
5842 support::child(&self.syntax)
5843 }
5844 #[inline]
5845 pub fn name_refs(&self) -> AstChildren<NameRef> {
5846 support::children(&self.syntax)
5847 }
5848 #[inline]
5849 pub fn cascade_token(&self) -> Option<SyntaxToken> {
5850 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
5851 }
5852 #[inline]
5853 pub fn data_token(&self) -> Option<SyntaxToken> {
5854 support::token(&self.syntax, SyntaxKind::DATA_KW)
5855 }
5856 #[inline]
5857 pub fn drop_token(&self) -> Option<SyntaxToken> {
5858 support::token(&self.syntax, SyntaxKind::DROP_KW)
5859 }
5860 #[inline]
5861 pub fn foreign_token(&self) -> Option<SyntaxToken> {
5862 support::token(&self.syntax, SyntaxKind::FOREIGN_KW)
5863 }
5864 #[inline]
5865 pub fn restrict_token(&self) -> Option<SyntaxToken> {
5866 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
5867 }
5868 #[inline]
5869 pub fn wrapper_token(&self) -> Option<SyntaxToken> {
5870 support::token(&self.syntax, SyntaxKind::WRAPPER_KW)
5871 }
5872}
5873
5874#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5875pub struct DropForeignTable {
5876 pub(crate) syntax: SyntaxNode,
5877}
5878impl DropForeignTable {
5879 #[inline]
5880 pub fn if_exists(&self) -> Option<IfExists> {
5881 support::child(&self.syntax)
5882 }
5883 #[inline]
5884 pub fn path(&self) -> Option<Path> {
5885 support::child(&self.syntax)
5886 }
5887 #[inline]
5888 pub fn cascade_token(&self) -> Option<SyntaxToken> {
5889 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
5890 }
5891 #[inline]
5892 pub fn drop_token(&self) -> Option<SyntaxToken> {
5893 support::token(&self.syntax, SyntaxKind::DROP_KW)
5894 }
5895 #[inline]
5896 pub fn foreign_token(&self) -> Option<SyntaxToken> {
5897 support::token(&self.syntax, SyntaxKind::FOREIGN_KW)
5898 }
5899 #[inline]
5900 pub fn restrict_token(&self) -> Option<SyntaxToken> {
5901 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
5902 }
5903 #[inline]
5904 pub fn table_token(&self) -> Option<SyntaxToken> {
5905 support::token(&self.syntax, SyntaxKind::TABLE_KW)
5906 }
5907}
5908
5909#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5910pub struct DropFunction {
5911 pub(crate) syntax: SyntaxNode,
5912}
5913impl DropFunction {
5914 #[inline]
5915 pub fn function_sig_list(&self) -> Option<FunctionSigList> {
5916 support::child(&self.syntax)
5917 }
5918 #[inline]
5919 pub fn if_exists(&self) -> Option<IfExists> {
5920 support::child(&self.syntax)
5921 }
5922 #[inline]
5923 pub fn cascade_token(&self) -> Option<SyntaxToken> {
5924 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
5925 }
5926 #[inline]
5927 pub fn drop_token(&self) -> Option<SyntaxToken> {
5928 support::token(&self.syntax, SyntaxKind::DROP_KW)
5929 }
5930 #[inline]
5931 pub fn function_token(&self) -> Option<SyntaxToken> {
5932 support::token(&self.syntax, SyntaxKind::FUNCTION_KW)
5933 }
5934 #[inline]
5935 pub fn restrict_token(&self) -> Option<SyntaxToken> {
5936 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
5937 }
5938}
5939
5940#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5941pub struct DropGroup {
5942 pub(crate) syntax: SyntaxNode,
5943}
5944impl DropGroup {
5945 #[inline]
5946 pub fn if_exists(&self) -> Option<IfExists> {
5947 support::child(&self.syntax)
5948 }
5949 #[inline]
5950 pub fn name_refs(&self) -> AstChildren<NameRef> {
5951 support::children(&self.syntax)
5952 }
5953 #[inline]
5954 pub fn drop_token(&self) -> Option<SyntaxToken> {
5955 support::token(&self.syntax, SyntaxKind::DROP_KW)
5956 }
5957 #[inline]
5958 pub fn group_token(&self) -> Option<SyntaxToken> {
5959 support::token(&self.syntax, SyntaxKind::GROUP_KW)
5960 }
5961}
5962
5963#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5964pub struct DropIdentity {
5965 pub(crate) syntax: SyntaxNode,
5966}
5967impl DropIdentity {
5968 #[inline]
5969 pub fn if_exists(&self) -> Option<IfExists> {
5970 support::child(&self.syntax)
5971 }
5972 #[inline]
5973 pub fn drop_token(&self) -> Option<SyntaxToken> {
5974 support::token(&self.syntax, SyntaxKind::DROP_KW)
5975 }
5976 #[inline]
5977 pub fn identity_token(&self) -> Option<SyntaxToken> {
5978 support::token(&self.syntax, SyntaxKind::IDENTITY_KW)
5979 }
5980}
5981
5982#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5983pub struct DropIndex {
5984 pub(crate) syntax: SyntaxNode,
5985}
5986impl DropIndex {
5987 #[inline]
5988 pub fn if_exists(&self) -> Option<IfExists> {
5989 support::child(&self.syntax)
5990 }
5991 #[inline]
5992 pub fn paths(&self) -> AstChildren<Path> {
5993 support::children(&self.syntax)
5994 }
5995 #[inline]
5996 pub fn cascade_token(&self) -> Option<SyntaxToken> {
5997 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
5998 }
5999 #[inline]
6000 pub fn concurrently_token(&self) -> Option<SyntaxToken> {
6001 support::token(&self.syntax, SyntaxKind::CONCURRENTLY_KW)
6002 }
6003 #[inline]
6004 pub fn drop_token(&self) -> Option<SyntaxToken> {
6005 support::token(&self.syntax, SyntaxKind::DROP_KW)
6006 }
6007 #[inline]
6008 pub fn index_token(&self) -> Option<SyntaxToken> {
6009 support::token(&self.syntax, SyntaxKind::INDEX_KW)
6010 }
6011 #[inline]
6012 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6013 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6014 }
6015}
6016
6017#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6018pub struct DropLanguage {
6019 pub(crate) syntax: SyntaxNode,
6020}
6021impl DropLanguage {
6022 #[inline]
6023 pub fn if_exists(&self) -> Option<IfExists> {
6024 support::child(&self.syntax)
6025 }
6026 #[inline]
6027 pub fn name_ref(&self) -> Option<NameRef> {
6028 support::child(&self.syntax)
6029 }
6030 #[inline]
6031 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6032 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6033 }
6034 #[inline]
6035 pub fn drop_token(&self) -> Option<SyntaxToken> {
6036 support::token(&self.syntax, SyntaxKind::DROP_KW)
6037 }
6038 #[inline]
6039 pub fn language_token(&self) -> Option<SyntaxToken> {
6040 support::token(&self.syntax, SyntaxKind::LANGUAGE_KW)
6041 }
6042 #[inline]
6043 pub fn procedural_token(&self) -> Option<SyntaxToken> {
6044 support::token(&self.syntax, SyntaxKind::PROCEDURAL_KW)
6045 }
6046 #[inline]
6047 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6048 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6049 }
6050}
6051
6052#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6053pub struct DropMaterializedView {
6054 pub(crate) syntax: SyntaxNode,
6055}
6056impl DropMaterializedView {
6057 #[inline]
6058 pub fn if_exists(&self) -> Option<IfExists> {
6059 support::child(&self.syntax)
6060 }
6061 #[inline]
6062 pub fn paths(&self) -> AstChildren<Path> {
6063 support::children(&self.syntax)
6064 }
6065 #[inline]
6066 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6067 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6068 }
6069 #[inline]
6070 pub fn drop_token(&self) -> Option<SyntaxToken> {
6071 support::token(&self.syntax, SyntaxKind::DROP_KW)
6072 }
6073 #[inline]
6074 pub fn materialized_token(&self) -> Option<SyntaxToken> {
6075 support::token(&self.syntax, SyntaxKind::MATERIALIZED_KW)
6076 }
6077 #[inline]
6078 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6079 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6080 }
6081 #[inline]
6082 pub fn view_token(&self) -> Option<SyntaxToken> {
6083 support::token(&self.syntax, SyntaxKind::VIEW_KW)
6084 }
6085}
6086
6087#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6088pub struct DropNotNull {
6089 pub(crate) syntax: SyntaxNode,
6090}
6091impl DropNotNull {
6092 #[inline]
6093 pub fn drop_token(&self) -> Option<SyntaxToken> {
6094 support::token(&self.syntax, SyntaxKind::DROP_KW)
6095 }
6096 #[inline]
6097 pub fn not_token(&self) -> Option<SyntaxToken> {
6098 support::token(&self.syntax, SyntaxKind::NOT_KW)
6099 }
6100 #[inline]
6101 pub fn null_token(&self) -> Option<SyntaxToken> {
6102 support::token(&self.syntax, SyntaxKind::NULL_KW)
6103 }
6104}
6105
6106#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6107pub struct DropOpClassOption {
6108 pub(crate) syntax: SyntaxNode,
6109}
6110impl DropOpClassOption {
6111 #[inline]
6112 pub fn literal(&self) -> Option<Literal> {
6113 support::child(&self.syntax)
6114 }
6115 #[inline]
6116 pub fn param_list(&self) -> Option<ParamList> {
6117 support::child(&self.syntax)
6118 }
6119 #[inline]
6120 pub fn function_token(&self) -> Option<SyntaxToken> {
6121 support::token(&self.syntax, SyntaxKind::FUNCTION_KW)
6122 }
6123 #[inline]
6124 pub fn operator_token(&self) -> Option<SyntaxToken> {
6125 support::token(&self.syntax, SyntaxKind::OPERATOR_KW)
6126 }
6127}
6128
6129#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6130pub struct DropOpClassOptionList {
6131 pub(crate) syntax: SyntaxNode,
6132}
6133impl DropOpClassOptionList {
6134 #[inline]
6135 pub fn drop_op_class_options(&self) -> AstChildren<DropOpClassOption> {
6136 support::children(&self.syntax)
6137 }
6138}
6139
6140#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6141pub struct DropOpClassOptions {
6142 pub(crate) syntax: SyntaxNode,
6143}
6144impl DropOpClassOptions {
6145 #[inline]
6146 pub fn drop_op_class_option_list(&self) -> Option<DropOpClassOptionList> {
6147 support::child(&self.syntax)
6148 }
6149 #[inline]
6150 pub fn drop_token(&self) -> Option<SyntaxToken> {
6151 support::token(&self.syntax, SyntaxKind::DROP_KW)
6152 }
6153}
6154
6155#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6156pub struct DropOperator {
6157 pub(crate) syntax: SyntaxNode,
6158}
6159impl DropOperator {
6160 #[inline]
6161 pub fn if_exists(&self) -> Option<IfExists> {
6162 support::child(&self.syntax)
6163 }
6164 #[inline]
6165 pub fn op_sig_list(&self) -> Option<OpSigList> {
6166 support::child(&self.syntax)
6167 }
6168 #[inline]
6169 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6170 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6171 }
6172 #[inline]
6173 pub fn drop_token(&self) -> Option<SyntaxToken> {
6174 support::token(&self.syntax, SyntaxKind::DROP_KW)
6175 }
6176 #[inline]
6177 pub fn operator_token(&self) -> Option<SyntaxToken> {
6178 support::token(&self.syntax, SyntaxKind::OPERATOR_KW)
6179 }
6180 #[inline]
6181 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6182 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6183 }
6184}
6185
6186#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6187pub struct DropOperatorClass {
6188 pub(crate) syntax: SyntaxNode,
6189}
6190impl DropOperatorClass {
6191 #[inline]
6192 pub fn if_exists(&self) -> Option<IfExists> {
6193 support::child(&self.syntax)
6194 }
6195 #[inline]
6196 pub fn name_ref(&self) -> Option<NameRef> {
6197 support::child(&self.syntax)
6198 }
6199 #[inline]
6200 pub fn path(&self) -> Option<Path> {
6201 support::child(&self.syntax)
6202 }
6203 #[inline]
6204 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6205 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6206 }
6207 #[inline]
6208 pub fn class_token(&self) -> Option<SyntaxToken> {
6209 support::token(&self.syntax, SyntaxKind::CLASS_KW)
6210 }
6211 #[inline]
6212 pub fn drop_token(&self) -> Option<SyntaxToken> {
6213 support::token(&self.syntax, SyntaxKind::DROP_KW)
6214 }
6215 #[inline]
6216 pub fn operator_token(&self) -> Option<SyntaxToken> {
6217 support::token(&self.syntax, SyntaxKind::OPERATOR_KW)
6218 }
6219 #[inline]
6220 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6221 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6222 }
6223 #[inline]
6224 pub fn using_token(&self) -> Option<SyntaxToken> {
6225 support::token(&self.syntax, SyntaxKind::USING_KW)
6226 }
6227}
6228
6229#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6230pub struct DropOperatorFamily {
6231 pub(crate) syntax: SyntaxNode,
6232}
6233impl DropOperatorFamily {
6234 #[inline]
6235 pub fn if_exists(&self) -> Option<IfExists> {
6236 support::child(&self.syntax)
6237 }
6238 #[inline]
6239 pub fn name_ref(&self) -> Option<NameRef> {
6240 support::child(&self.syntax)
6241 }
6242 #[inline]
6243 pub fn path(&self) -> Option<Path> {
6244 support::child(&self.syntax)
6245 }
6246 #[inline]
6247 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6248 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6249 }
6250 #[inline]
6251 pub fn drop_token(&self) -> Option<SyntaxToken> {
6252 support::token(&self.syntax, SyntaxKind::DROP_KW)
6253 }
6254 #[inline]
6255 pub fn family_token(&self) -> Option<SyntaxToken> {
6256 support::token(&self.syntax, SyntaxKind::FAMILY_KW)
6257 }
6258 #[inline]
6259 pub fn operator_token(&self) -> Option<SyntaxToken> {
6260 support::token(&self.syntax, SyntaxKind::OPERATOR_KW)
6261 }
6262 #[inline]
6263 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6264 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6265 }
6266 #[inline]
6267 pub fn using_token(&self) -> Option<SyntaxToken> {
6268 support::token(&self.syntax, SyntaxKind::USING_KW)
6269 }
6270}
6271
6272#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6273pub struct DropOwned {
6274 pub(crate) syntax: SyntaxNode,
6275}
6276impl DropOwned {
6277 #[inline]
6278 pub fn role_list(&self) -> Option<RoleList> {
6279 support::child(&self.syntax)
6280 }
6281 #[inline]
6282 pub fn by_token(&self) -> Option<SyntaxToken> {
6283 support::token(&self.syntax, SyntaxKind::BY_KW)
6284 }
6285 #[inline]
6286 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6287 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6288 }
6289 #[inline]
6290 pub fn drop_token(&self) -> Option<SyntaxToken> {
6291 support::token(&self.syntax, SyntaxKind::DROP_KW)
6292 }
6293 #[inline]
6294 pub fn owned_token(&self) -> Option<SyntaxToken> {
6295 support::token(&self.syntax, SyntaxKind::OWNED_KW)
6296 }
6297 #[inline]
6298 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6299 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6300 }
6301}
6302
6303#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6304pub struct DropPolicy {
6305 pub(crate) syntax: SyntaxNode,
6306}
6307impl DropPolicy {
6308 #[inline]
6309 pub fn if_exists(&self) -> Option<IfExists> {
6310 support::child(&self.syntax)
6311 }
6312 #[inline]
6313 pub fn name_ref(&self) -> Option<NameRef> {
6314 support::child(&self.syntax)
6315 }
6316 #[inline]
6317 pub fn on_table(&self) -> Option<OnTable> {
6318 support::child(&self.syntax)
6319 }
6320 #[inline]
6321 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6322 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6323 }
6324 #[inline]
6325 pub fn drop_token(&self) -> Option<SyntaxToken> {
6326 support::token(&self.syntax, SyntaxKind::DROP_KW)
6327 }
6328 #[inline]
6329 pub fn policy_token(&self) -> Option<SyntaxToken> {
6330 support::token(&self.syntax, SyntaxKind::POLICY_KW)
6331 }
6332 #[inline]
6333 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6334 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6335 }
6336}
6337
6338#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6339pub struct DropProcedure {
6340 pub(crate) syntax: SyntaxNode,
6341}
6342impl DropProcedure {
6343 #[inline]
6344 pub fn function_sig_list(&self) -> Option<FunctionSigList> {
6345 support::child(&self.syntax)
6346 }
6347 #[inline]
6348 pub fn if_exists(&self) -> Option<IfExists> {
6349 support::child(&self.syntax)
6350 }
6351 #[inline]
6352 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6353 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6354 }
6355 #[inline]
6356 pub fn drop_token(&self) -> Option<SyntaxToken> {
6357 support::token(&self.syntax, SyntaxKind::DROP_KW)
6358 }
6359 #[inline]
6360 pub fn procedure_token(&self) -> Option<SyntaxToken> {
6361 support::token(&self.syntax, SyntaxKind::PROCEDURE_KW)
6362 }
6363 #[inline]
6364 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6365 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6366 }
6367}
6368
6369#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6370pub struct DropPublication {
6371 pub(crate) syntax: SyntaxNode,
6372}
6373impl DropPublication {
6374 #[inline]
6375 pub fn if_exists(&self) -> Option<IfExists> {
6376 support::child(&self.syntax)
6377 }
6378 #[inline]
6379 pub fn name_refs(&self) -> AstChildren<NameRef> {
6380 support::children(&self.syntax)
6381 }
6382 #[inline]
6383 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6384 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6385 }
6386 #[inline]
6387 pub fn drop_token(&self) -> Option<SyntaxToken> {
6388 support::token(&self.syntax, SyntaxKind::DROP_KW)
6389 }
6390 #[inline]
6391 pub fn publication_token(&self) -> Option<SyntaxToken> {
6392 support::token(&self.syntax, SyntaxKind::PUBLICATION_KW)
6393 }
6394 #[inline]
6395 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6396 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6397 }
6398}
6399
6400#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6401pub struct DropRole {
6402 pub(crate) syntax: SyntaxNode,
6403}
6404impl DropRole {
6405 #[inline]
6406 pub fn if_exists(&self) -> Option<IfExists> {
6407 support::child(&self.syntax)
6408 }
6409 #[inline]
6410 pub fn name_refs(&self) -> AstChildren<NameRef> {
6411 support::children(&self.syntax)
6412 }
6413 #[inline]
6414 pub fn drop_token(&self) -> Option<SyntaxToken> {
6415 support::token(&self.syntax, SyntaxKind::DROP_KW)
6416 }
6417 #[inline]
6418 pub fn role_token(&self) -> Option<SyntaxToken> {
6419 support::token(&self.syntax, SyntaxKind::ROLE_KW)
6420 }
6421}
6422
6423#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6424pub struct DropRoutine {
6425 pub(crate) syntax: SyntaxNode,
6426}
6427impl DropRoutine {
6428 #[inline]
6429 pub fn function_sig_list(&self) -> Option<FunctionSigList> {
6430 support::child(&self.syntax)
6431 }
6432 #[inline]
6433 pub fn if_exists(&self) -> Option<IfExists> {
6434 support::child(&self.syntax)
6435 }
6436 #[inline]
6437 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6438 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6439 }
6440 #[inline]
6441 pub fn drop_token(&self) -> Option<SyntaxToken> {
6442 support::token(&self.syntax, SyntaxKind::DROP_KW)
6443 }
6444 #[inline]
6445 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6446 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6447 }
6448 #[inline]
6449 pub fn routine_token(&self) -> Option<SyntaxToken> {
6450 support::token(&self.syntax, SyntaxKind::ROUTINE_KW)
6451 }
6452}
6453
6454#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6455pub struct DropRule {
6456 pub(crate) syntax: SyntaxNode,
6457}
6458impl DropRule {
6459 #[inline]
6460 pub fn if_exists(&self) -> Option<IfExists> {
6461 support::child(&self.syntax)
6462 }
6463 #[inline]
6464 pub fn name_ref(&self) -> Option<NameRef> {
6465 support::child(&self.syntax)
6466 }
6467 #[inline]
6468 pub fn on_table(&self) -> Option<OnTable> {
6469 support::child(&self.syntax)
6470 }
6471 #[inline]
6472 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6473 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6474 }
6475 #[inline]
6476 pub fn drop_token(&self) -> Option<SyntaxToken> {
6477 support::token(&self.syntax, SyntaxKind::DROP_KW)
6478 }
6479 #[inline]
6480 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6481 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6482 }
6483 #[inline]
6484 pub fn rule_token(&self) -> Option<SyntaxToken> {
6485 support::token(&self.syntax, SyntaxKind::RULE_KW)
6486 }
6487}
6488
6489#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6490pub struct DropSchema {
6491 pub(crate) syntax: SyntaxNode,
6492}
6493impl DropSchema {
6494 #[inline]
6495 pub fn if_exists(&self) -> Option<IfExists> {
6496 support::child(&self.syntax)
6497 }
6498 #[inline]
6499 pub fn name_refs(&self) -> AstChildren<NameRef> {
6500 support::children(&self.syntax)
6501 }
6502 #[inline]
6503 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6504 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6505 }
6506 #[inline]
6507 pub fn drop_token(&self) -> Option<SyntaxToken> {
6508 support::token(&self.syntax, SyntaxKind::DROP_KW)
6509 }
6510 #[inline]
6511 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6512 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6513 }
6514 #[inline]
6515 pub fn schema_token(&self) -> Option<SyntaxToken> {
6516 support::token(&self.syntax, SyntaxKind::SCHEMA_KW)
6517 }
6518}
6519
6520#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6521pub struct DropSequence {
6522 pub(crate) syntax: SyntaxNode,
6523}
6524impl DropSequence {
6525 #[inline]
6526 pub fn if_exists(&self) -> Option<IfExists> {
6527 support::child(&self.syntax)
6528 }
6529 #[inline]
6530 pub fn paths(&self) -> AstChildren<Path> {
6531 support::children(&self.syntax)
6532 }
6533 #[inline]
6534 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6535 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6536 }
6537 #[inline]
6538 pub fn drop_token(&self) -> Option<SyntaxToken> {
6539 support::token(&self.syntax, SyntaxKind::DROP_KW)
6540 }
6541 #[inline]
6542 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6543 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6544 }
6545 #[inline]
6546 pub fn sequence_token(&self) -> Option<SyntaxToken> {
6547 support::token(&self.syntax, SyntaxKind::SEQUENCE_KW)
6548 }
6549}
6550
6551#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6552pub struct DropServer {
6553 pub(crate) syntax: SyntaxNode,
6554}
6555impl DropServer {
6556 #[inline]
6557 pub fn if_exists(&self) -> Option<IfExists> {
6558 support::child(&self.syntax)
6559 }
6560 #[inline]
6561 pub fn name_ref(&self) -> Option<NameRef> {
6562 support::child(&self.syntax)
6563 }
6564 #[inline]
6565 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6566 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6567 }
6568 #[inline]
6569 pub fn drop_token(&self) -> Option<SyntaxToken> {
6570 support::token(&self.syntax, SyntaxKind::DROP_KW)
6571 }
6572 #[inline]
6573 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6574 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6575 }
6576 #[inline]
6577 pub fn server_token(&self) -> Option<SyntaxToken> {
6578 support::token(&self.syntax, SyntaxKind::SERVER_KW)
6579 }
6580}
6581
6582#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6583pub struct DropStatistics {
6584 pub(crate) syntax: SyntaxNode,
6585}
6586impl DropStatistics {
6587 #[inline]
6588 pub fn if_exists(&self) -> Option<IfExists> {
6589 support::child(&self.syntax)
6590 }
6591 #[inline]
6592 pub fn paths(&self) -> AstChildren<Path> {
6593 support::children(&self.syntax)
6594 }
6595 #[inline]
6596 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6597 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6598 }
6599 #[inline]
6600 pub fn drop_token(&self) -> Option<SyntaxToken> {
6601 support::token(&self.syntax, SyntaxKind::DROP_KW)
6602 }
6603 #[inline]
6604 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6605 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6606 }
6607 #[inline]
6608 pub fn statistics_token(&self) -> Option<SyntaxToken> {
6609 support::token(&self.syntax, SyntaxKind::STATISTICS_KW)
6610 }
6611}
6612
6613#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6614pub struct DropSubscription {
6615 pub(crate) syntax: SyntaxNode,
6616}
6617impl DropSubscription {
6618 #[inline]
6619 pub fn if_exists(&self) -> Option<IfExists> {
6620 support::child(&self.syntax)
6621 }
6622 #[inline]
6623 pub fn name_ref(&self) -> Option<NameRef> {
6624 support::child(&self.syntax)
6625 }
6626 #[inline]
6627 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6628 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6629 }
6630 #[inline]
6631 pub fn drop_token(&self) -> Option<SyntaxToken> {
6632 support::token(&self.syntax, SyntaxKind::DROP_KW)
6633 }
6634 #[inline]
6635 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6636 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6637 }
6638 #[inline]
6639 pub fn subscription_token(&self) -> Option<SyntaxToken> {
6640 support::token(&self.syntax, SyntaxKind::SUBSCRIPTION_KW)
6641 }
6642}
6643
6644#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6645pub struct DropTable {
6646 pub(crate) syntax: SyntaxNode,
6647}
6648impl DropTable {
6649 #[inline]
6650 pub fn if_exists(&self) -> Option<IfExists> {
6651 support::child(&self.syntax)
6652 }
6653 #[inline]
6654 pub fn path(&self) -> Option<Path> {
6655 support::child(&self.syntax)
6656 }
6657 #[inline]
6658 pub fn comma_token(&self) -> Option<SyntaxToken> {
6659 support::token(&self.syntax, SyntaxKind::COMMA)
6660 }
6661 #[inline]
6662 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6663 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6664 }
6665 #[inline]
6666 pub fn drop_token(&self) -> Option<SyntaxToken> {
6667 support::token(&self.syntax, SyntaxKind::DROP_KW)
6668 }
6669 #[inline]
6670 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6671 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6672 }
6673 #[inline]
6674 pub fn table_token(&self) -> Option<SyntaxToken> {
6675 support::token(&self.syntax, SyntaxKind::TABLE_KW)
6676 }
6677}
6678
6679#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6680pub struct DropTablespace {
6681 pub(crate) syntax: SyntaxNode,
6682}
6683impl DropTablespace {
6684 #[inline]
6685 pub fn if_exists(&self) -> Option<IfExists> {
6686 support::child(&self.syntax)
6687 }
6688 #[inline]
6689 pub fn name_ref(&self) -> Option<NameRef> {
6690 support::child(&self.syntax)
6691 }
6692 #[inline]
6693 pub fn drop_token(&self) -> Option<SyntaxToken> {
6694 support::token(&self.syntax, SyntaxKind::DROP_KW)
6695 }
6696 #[inline]
6697 pub fn tablespace_token(&self) -> Option<SyntaxToken> {
6698 support::token(&self.syntax, SyntaxKind::TABLESPACE_KW)
6699 }
6700}
6701
6702#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6703pub struct DropTextSearchConfig {
6704 pub(crate) syntax: SyntaxNode,
6705}
6706impl DropTextSearchConfig {
6707 #[inline]
6708 pub fn if_exists(&self) -> Option<IfExists> {
6709 support::child(&self.syntax)
6710 }
6711 #[inline]
6712 pub fn path(&self) -> Option<Path> {
6713 support::child(&self.syntax)
6714 }
6715 #[inline]
6716 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6717 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6718 }
6719 #[inline]
6720 pub fn configuration_token(&self) -> Option<SyntaxToken> {
6721 support::token(&self.syntax, SyntaxKind::CONFIGURATION_KW)
6722 }
6723 #[inline]
6724 pub fn drop_token(&self) -> Option<SyntaxToken> {
6725 support::token(&self.syntax, SyntaxKind::DROP_KW)
6726 }
6727 #[inline]
6728 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6729 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6730 }
6731 #[inline]
6732 pub fn search_token(&self) -> Option<SyntaxToken> {
6733 support::token(&self.syntax, SyntaxKind::SEARCH_KW)
6734 }
6735 #[inline]
6736 pub fn text_token(&self) -> Option<SyntaxToken> {
6737 support::token(&self.syntax, SyntaxKind::TEXT_KW)
6738 }
6739}
6740
6741#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6742pub struct DropTextSearchDict {
6743 pub(crate) syntax: SyntaxNode,
6744}
6745impl DropTextSearchDict {
6746 #[inline]
6747 pub fn if_exists(&self) -> Option<IfExists> {
6748 support::child(&self.syntax)
6749 }
6750 #[inline]
6751 pub fn path(&self) -> Option<Path> {
6752 support::child(&self.syntax)
6753 }
6754 #[inline]
6755 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6756 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6757 }
6758 #[inline]
6759 pub fn dictionary_token(&self) -> Option<SyntaxToken> {
6760 support::token(&self.syntax, SyntaxKind::DICTIONARY_KW)
6761 }
6762 #[inline]
6763 pub fn drop_token(&self) -> Option<SyntaxToken> {
6764 support::token(&self.syntax, SyntaxKind::DROP_KW)
6765 }
6766 #[inline]
6767 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6768 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6769 }
6770 #[inline]
6771 pub fn search_token(&self) -> Option<SyntaxToken> {
6772 support::token(&self.syntax, SyntaxKind::SEARCH_KW)
6773 }
6774 #[inline]
6775 pub fn text_token(&self) -> Option<SyntaxToken> {
6776 support::token(&self.syntax, SyntaxKind::TEXT_KW)
6777 }
6778}
6779
6780#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6781pub struct DropTextSearchParser {
6782 pub(crate) syntax: SyntaxNode,
6783}
6784impl DropTextSearchParser {
6785 #[inline]
6786 pub fn if_exists(&self) -> Option<IfExists> {
6787 support::child(&self.syntax)
6788 }
6789 #[inline]
6790 pub fn path(&self) -> Option<Path> {
6791 support::child(&self.syntax)
6792 }
6793 #[inline]
6794 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6795 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6796 }
6797 #[inline]
6798 pub fn drop_token(&self) -> Option<SyntaxToken> {
6799 support::token(&self.syntax, SyntaxKind::DROP_KW)
6800 }
6801 #[inline]
6802 pub fn parser_token(&self) -> Option<SyntaxToken> {
6803 support::token(&self.syntax, SyntaxKind::PARSER_KW)
6804 }
6805 #[inline]
6806 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6807 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6808 }
6809 #[inline]
6810 pub fn search_token(&self) -> Option<SyntaxToken> {
6811 support::token(&self.syntax, SyntaxKind::SEARCH_KW)
6812 }
6813 #[inline]
6814 pub fn text_token(&self) -> Option<SyntaxToken> {
6815 support::token(&self.syntax, SyntaxKind::TEXT_KW)
6816 }
6817}
6818
6819#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6820pub struct DropTextSearchTemplate {
6821 pub(crate) syntax: SyntaxNode,
6822}
6823impl DropTextSearchTemplate {
6824 #[inline]
6825 pub fn if_exists(&self) -> Option<IfExists> {
6826 support::child(&self.syntax)
6827 }
6828 #[inline]
6829 pub fn path(&self) -> Option<Path> {
6830 support::child(&self.syntax)
6831 }
6832 #[inline]
6833 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6834 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6835 }
6836 #[inline]
6837 pub fn drop_token(&self) -> Option<SyntaxToken> {
6838 support::token(&self.syntax, SyntaxKind::DROP_KW)
6839 }
6840 #[inline]
6841 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6842 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6843 }
6844 #[inline]
6845 pub fn search_token(&self) -> Option<SyntaxToken> {
6846 support::token(&self.syntax, SyntaxKind::SEARCH_KW)
6847 }
6848 #[inline]
6849 pub fn template_token(&self) -> Option<SyntaxToken> {
6850 support::token(&self.syntax, SyntaxKind::TEMPLATE_KW)
6851 }
6852 #[inline]
6853 pub fn text_token(&self) -> Option<SyntaxToken> {
6854 support::token(&self.syntax, SyntaxKind::TEXT_KW)
6855 }
6856}
6857
6858#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6859pub struct DropTransform {
6860 pub(crate) syntax: SyntaxNode,
6861}
6862impl DropTransform {
6863 #[inline]
6864 pub fn if_exists(&self) -> Option<IfExists> {
6865 support::child(&self.syntax)
6866 }
6867 #[inline]
6868 pub fn language(&self) -> Option<NameRef> {
6869 support::child(&self.syntax)
6870 }
6871 #[inline]
6872 pub fn ty(&self) -> Option<Type> {
6873 support::child(&self.syntax)
6874 }
6875 #[inline]
6876 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6877 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6878 }
6879 #[inline]
6880 pub fn drop_token(&self) -> Option<SyntaxToken> {
6881 support::token(&self.syntax, SyntaxKind::DROP_KW)
6882 }
6883 #[inline]
6884 pub fn for_token(&self) -> Option<SyntaxToken> {
6885 support::token(&self.syntax, SyntaxKind::FOR_KW)
6886 }
6887 #[inline]
6888 pub fn language_token(&self) -> Option<SyntaxToken> {
6889 support::token(&self.syntax, SyntaxKind::LANGUAGE_KW)
6890 }
6891 #[inline]
6892 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6893 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6894 }
6895 #[inline]
6896 pub fn transform_token(&self) -> Option<SyntaxToken> {
6897 support::token(&self.syntax, SyntaxKind::TRANSFORM_KW)
6898 }
6899}
6900
6901#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6902pub struct DropTrigger {
6903 pub(crate) syntax: SyntaxNode,
6904}
6905impl DropTrigger {
6906 #[inline]
6907 pub fn if_exists(&self) -> Option<IfExists> {
6908 support::child(&self.syntax)
6909 }
6910 #[inline]
6911 pub fn on_table(&self) -> Option<OnTable> {
6912 support::child(&self.syntax)
6913 }
6914 #[inline]
6915 pub fn path(&self) -> Option<Path> {
6916 support::child(&self.syntax)
6917 }
6918 #[inline]
6919 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6920 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6921 }
6922 #[inline]
6923 pub fn drop_token(&self) -> Option<SyntaxToken> {
6924 support::token(&self.syntax, SyntaxKind::DROP_KW)
6925 }
6926 #[inline]
6927 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6928 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6929 }
6930 #[inline]
6931 pub fn trigger_token(&self) -> Option<SyntaxToken> {
6932 support::token(&self.syntax, SyntaxKind::TRIGGER_KW)
6933 }
6934}
6935
6936#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6937pub struct DropType {
6938 pub(crate) syntax: SyntaxNode,
6939}
6940impl DropType {
6941 #[inline]
6942 pub fn if_exists(&self) -> Option<IfExists> {
6943 support::child(&self.syntax)
6944 }
6945 #[inline]
6946 pub fn paths(&self) -> AstChildren<Path> {
6947 support::children(&self.syntax)
6948 }
6949 #[inline]
6950 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6951 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6952 }
6953 #[inline]
6954 pub fn drop_token(&self) -> Option<SyntaxToken> {
6955 support::token(&self.syntax, SyntaxKind::DROP_KW)
6956 }
6957 #[inline]
6958 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6959 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6960 }
6961 #[inline]
6962 pub fn type_token(&self) -> Option<SyntaxToken> {
6963 support::token(&self.syntax, SyntaxKind::TYPE_KW)
6964 }
6965}
6966
6967#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6968pub struct DropUser {
6969 pub(crate) syntax: SyntaxNode,
6970}
6971impl DropUser {
6972 #[inline]
6973 pub fn if_exists(&self) -> Option<IfExists> {
6974 support::child(&self.syntax)
6975 }
6976 #[inline]
6977 pub fn name_refs(&self) -> AstChildren<NameRef> {
6978 support::children(&self.syntax)
6979 }
6980 #[inline]
6981 pub fn drop_token(&self) -> Option<SyntaxToken> {
6982 support::token(&self.syntax, SyntaxKind::DROP_KW)
6983 }
6984 #[inline]
6985 pub fn user_token(&self) -> Option<SyntaxToken> {
6986 support::token(&self.syntax, SyntaxKind::USER_KW)
6987 }
6988}
6989
6990#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6991pub struct DropUserMapping {
6992 pub(crate) syntax: SyntaxNode,
6993}
6994impl DropUserMapping {
6995 #[inline]
6996 pub fn if_exists(&self) -> Option<IfExists> {
6997 support::child(&self.syntax)
6998 }
6999 #[inline]
7000 pub fn name_ref(&self) -> Option<NameRef> {
7001 support::child(&self.syntax)
7002 }
7003 #[inline]
7004 pub fn role(&self) -> Option<Role> {
7005 support::child(&self.syntax)
7006 }
7007 #[inline]
7008 pub fn drop_token(&self) -> Option<SyntaxToken> {
7009 support::token(&self.syntax, SyntaxKind::DROP_KW)
7010 }
7011 #[inline]
7012 pub fn for_token(&self) -> Option<SyntaxToken> {
7013 support::token(&self.syntax, SyntaxKind::FOR_KW)
7014 }
7015 #[inline]
7016 pub fn mapping_token(&self) -> Option<SyntaxToken> {
7017 support::token(&self.syntax, SyntaxKind::MAPPING_KW)
7018 }
7019 #[inline]
7020 pub fn server_token(&self) -> Option<SyntaxToken> {
7021 support::token(&self.syntax, SyntaxKind::SERVER_KW)
7022 }
7023 #[inline]
7024 pub fn user_token(&self) -> Option<SyntaxToken> {
7025 support::token(&self.syntax, SyntaxKind::USER_KW)
7026 }
7027}
7028
7029#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7030pub struct DropView {
7031 pub(crate) syntax: SyntaxNode,
7032}
7033impl DropView {
7034 #[inline]
7035 pub fn if_exists(&self) -> Option<IfExists> {
7036 support::child(&self.syntax)
7037 }
7038 #[inline]
7039 pub fn path(&self) -> Option<Path> {
7040 support::child(&self.syntax)
7041 }
7042 #[inline]
7043 pub fn cascade_token(&self) -> Option<SyntaxToken> {
7044 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
7045 }
7046 #[inline]
7047 pub fn drop_token(&self) -> Option<SyntaxToken> {
7048 support::token(&self.syntax, SyntaxKind::DROP_KW)
7049 }
7050 #[inline]
7051 pub fn restrict_token(&self) -> Option<SyntaxToken> {
7052 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
7053 }
7054 #[inline]
7055 pub fn view_token(&self) -> Option<SyntaxToken> {
7056 support::token(&self.syntax, SyntaxKind::VIEW_KW)
7057 }
7058}
7059
7060#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7061pub struct ElseClause {
7062 pub(crate) syntax: SyntaxNode,
7063}
7064impl ElseClause {
7065 #[inline]
7066 pub fn expr(&self) -> Option<Expr> {
7067 support::child(&self.syntax)
7068 }
7069 #[inline]
7070 pub fn else_token(&self) -> Option<SyntaxToken> {
7071 support::token(&self.syntax, SyntaxKind::ELSE_KW)
7072 }
7073}
7074
7075#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7076pub struct EnableAlwaysRule {
7077 pub(crate) syntax: SyntaxNode,
7078}
7079impl EnableAlwaysRule {
7080 #[inline]
7081 pub fn always_token(&self) -> Option<SyntaxToken> {
7082 support::token(&self.syntax, SyntaxKind::ALWAYS_KW)
7083 }
7084 #[inline]
7085 pub fn enable_token(&self) -> Option<SyntaxToken> {
7086 support::token(&self.syntax, SyntaxKind::ENABLE_KW)
7087 }
7088 #[inline]
7089 pub fn rule_token(&self) -> Option<SyntaxToken> {
7090 support::token(&self.syntax, SyntaxKind::RULE_KW)
7091 }
7092}
7093
7094#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7095pub struct EnableAlwaysTrigger {
7096 pub(crate) syntax: SyntaxNode,
7097}
7098impl EnableAlwaysTrigger {
7099 #[inline]
7100 pub fn always_token(&self) -> Option<SyntaxToken> {
7101 support::token(&self.syntax, SyntaxKind::ALWAYS_KW)
7102 }
7103 #[inline]
7104 pub fn enable_token(&self) -> Option<SyntaxToken> {
7105 support::token(&self.syntax, SyntaxKind::ENABLE_KW)
7106 }
7107 #[inline]
7108 pub fn trigger_token(&self) -> Option<SyntaxToken> {
7109 support::token(&self.syntax, SyntaxKind::TRIGGER_KW)
7110 }
7111}
7112
7113#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7114pub struct EnableReplicaRule {
7115 pub(crate) syntax: SyntaxNode,
7116}
7117impl EnableReplicaRule {
7118 #[inline]
7119 pub fn enable_token(&self) -> Option<SyntaxToken> {
7120 support::token(&self.syntax, SyntaxKind::ENABLE_KW)
7121 }
7122 #[inline]
7123 pub fn replica_token(&self) -> Option<SyntaxToken> {
7124 support::token(&self.syntax, SyntaxKind::REPLICA_KW)
7125 }
7126 #[inline]
7127 pub fn rule_token(&self) -> Option<SyntaxToken> {
7128 support::token(&self.syntax, SyntaxKind::RULE_KW)
7129 }
7130}
7131
7132#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7133pub struct EnableReplicaTrigger {
7134 pub(crate) syntax: SyntaxNode,
7135}
7136impl EnableReplicaTrigger {
7137 #[inline]
7138 pub fn enable_token(&self) -> Option<SyntaxToken> {
7139 support::token(&self.syntax, SyntaxKind::ENABLE_KW)
7140 }
7141 #[inline]
7142 pub fn replica_token(&self) -> Option<SyntaxToken> {
7143 support::token(&self.syntax, SyntaxKind::REPLICA_KW)
7144 }
7145 #[inline]
7146 pub fn trigger_token(&self) -> Option<SyntaxToken> {
7147 support::token(&self.syntax, SyntaxKind::TRIGGER_KW)
7148 }
7149}
7150
7151#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7152pub struct EnableRls {
7153 pub(crate) syntax: SyntaxNode,
7154}
7155impl EnableRls {
7156 #[inline]
7157 pub fn enable_token(&self) -> Option<SyntaxToken> {
7158 support::token(&self.syntax, SyntaxKind::ENABLE_KW)
7159 }
7160 #[inline]
7161 pub fn level_token(&self) -> Option<SyntaxToken> {
7162 support::token(&self.syntax, SyntaxKind::LEVEL_KW)
7163 }
7164 #[inline]
7165 pub fn row_token(&self) -> Option<SyntaxToken> {
7166 support::token(&self.syntax, SyntaxKind::ROW_KW)
7167 }
7168 #[inline]
7169 pub fn security_token(&self) -> Option<SyntaxToken> {
7170 support::token(&self.syntax, SyntaxKind::SECURITY_KW)
7171 }
7172}
7173
7174#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7175pub struct EnableRule {
7176 pub(crate) syntax: SyntaxNode,
7177}
7178impl EnableRule {
7179 #[inline]
7180 pub fn enable_token(&self) -> Option<SyntaxToken> {
7181 support::token(&self.syntax, SyntaxKind::ENABLE_KW)
7182 }
7183 #[inline]
7184 pub fn rule_token(&self) -> Option<SyntaxToken> {
7185 support::token(&self.syntax, SyntaxKind::RULE_KW)
7186 }
7187}
7188
7189#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7190pub struct EnableTrigger {
7191 pub(crate) syntax: SyntaxNode,
7192}
7193impl EnableTrigger {
7194 #[inline]
7195 pub fn enable_token(&self) -> Option<SyntaxToken> {
7196 support::token(&self.syntax, SyntaxKind::ENABLE_KW)
7197 }
7198 #[inline]
7199 pub fn trigger_token(&self) -> Option<SyntaxToken> {
7200 support::token(&self.syntax, SyntaxKind::TRIGGER_KW)
7201 }
7202}
7203
7204#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7205pub struct Enforced {
7206 pub(crate) syntax: SyntaxNode,
7207}
7208impl Enforced {
7209 #[inline]
7210 pub fn enforced_token(&self) -> Option<SyntaxToken> {
7211 support::token(&self.syntax, SyntaxKind::ENFORCED_KW)
7212 }
7213}
7214
7215#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7216pub struct EventTriggerWhen {
7217 pub(crate) syntax: SyntaxNode,
7218}
7219impl EventTriggerWhen {
7220 #[inline]
7221 pub fn literals(&self) -> AstChildren<Literal> {
7222 support::children(&self.syntax)
7223 }
7224 #[inline]
7225 pub fn name_ref(&self) -> Option<NameRef> {
7226 support::child(&self.syntax)
7227 }
7228 #[inline]
7229 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
7230 support::token(&self.syntax, SyntaxKind::L_PAREN)
7231 }
7232 #[inline]
7233 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
7234 support::token(&self.syntax, SyntaxKind::R_PAREN)
7235 }
7236 #[inline]
7237 pub fn in_token(&self) -> Option<SyntaxToken> {
7238 support::token(&self.syntax, SyntaxKind::IN_KW)
7239 }
7240}
7241
7242#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7243pub struct EventTriggerWhenClause {
7244 pub(crate) syntax: SyntaxNode,
7245}
7246impl EventTriggerWhenClause {
7247 #[inline]
7248 pub fn event_trigger_whens(&self) -> AstChildren<EventTriggerWhen> {
7249 support::children(&self.syntax)
7250 }
7251 #[inline]
7252 pub fn when_token(&self) -> Option<SyntaxToken> {
7253 support::token(&self.syntax, SyntaxKind::WHEN_KW)
7254 }
7255}
7256
7257#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7258pub struct ExceptTables {
7259 pub(crate) syntax: SyntaxNode,
7260}
7261impl ExceptTables {
7262 #[inline]
7263 pub fn name_refs(&self) -> AstChildren<NameRef> {
7264 support::children(&self.syntax)
7265 }
7266 #[inline]
7267 pub fn except_token(&self) -> Option<SyntaxToken> {
7268 support::token(&self.syntax, SyntaxKind::EXCEPT_KW)
7269 }
7270}
7271
7272#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7273pub struct ExcludeConstraint {
7274 pub(crate) syntax: SyntaxNode,
7275}
7276impl ExcludeConstraint {
7277 #[inline]
7278 pub fn constraint_exclusion_list(&self) -> Option<ConstraintExclusionList> {
7279 support::child(&self.syntax)
7280 }
7281 #[inline]
7282 pub fn constraint_index_method(&self) -> Option<ConstraintIndexMethod> {
7283 support::child(&self.syntax)
7284 }
7285 #[inline]
7286 pub fn name(&self) -> Option<Name> {
7287 support::child(&self.syntax)
7288 }
7289 #[inline]
7290 pub fn where_condition_clause(&self) -> Option<WhereConditionClause> {
7291 support::child(&self.syntax)
7292 }
7293 #[inline]
7294 pub fn constraint_token(&self) -> Option<SyntaxToken> {
7295 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
7296 }
7297 #[inline]
7298 pub fn exclude_token(&self) -> Option<SyntaxToken> {
7299 support::token(&self.syntax, SyntaxKind::EXCLUDE_KW)
7300 }
7301}
7302
7303#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7304pub struct Execute {
7305 pub(crate) syntax: SyntaxNode,
7306}
7307impl Execute {
7308 #[inline]
7309 pub fn arg_list(&self) -> Option<ArgList> {
7310 support::child(&self.syntax)
7311 }
7312 #[inline]
7313 pub fn name_ref(&self) -> Option<NameRef> {
7314 support::child(&self.syntax)
7315 }
7316 #[inline]
7317 pub fn execute_token(&self) -> Option<SyntaxToken> {
7318 support::token(&self.syntax, SyntaxKind::EXECUTE_KW)
7319 }
7320}
7321
7322#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7323pub struct ExistsFn {
7324 pub(crate) syntax: SyntaxNode,
7325}
7326impl ExistsFn {
7327 #[inline]
7328 pub fn select_variant(&self) -> Option<SelectVariant> {
7329 support::child(&self.syntax)
7330 }
7331 #[inline]
7332 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
7333 support::token(&self.syntax, SyntaxKind::L_PAREN)
7334 }
7335 #[inline]
7336 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
7337 support::token(&self.syntax, SyntaxKind::R_PAREN)
7338 }
7339 #[inline]
7340 pub fn exists_token(&self) -> Option<SyntaxToken> {
7341 support::token(&self.syntax, SyntaxKind::EXISTS_KW)
7342 }
7343}
7344
7345#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7346pub struct Explain {
7347 pub(crate) syntax: SyntaxNode,
7348}
7349impl Explain {
7350 #[inline]
7351 pub fn explain_stmt(&self) -> Option<ExplainStmt> {
7352 support::child(&self.syntax)
7353 }
7354 #[inline]
7355 pub fn analyse_token(&self) -> Option<SyntaxToken> {
7356 support::token(&self.syntax, SyntaxKind::ANALYSE_KW)
7357 }
7358 #[inline]
7359 pub fn analyze_token(&self) -> Option<SyntaxToken> {
7360 support::token(&self.syntax, SyntaxKind::ANALYZE_KW)
7361 }
7362 #[inline]
7363 pub fn explain_token(&self) -> Option<SyntaxToken> {
7364 support::token(&self.syntax, SyntaxKind::EXPLAIN_KW)
7365 }
7366 #[inline]
7367 pub fn verbose_token(&self) -> Option<SyntaxToken> {
7368 support::token(&self.syntax, SyntaxKind::VERBOSE_KW)
7369 }
7370}
7371
7372#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7373pub struct ExprAsName {
7374 pub(crate) syntax: SyntaxNode,
7375}
7376impl ExprAsName {
7377 #[inline]
7378 pub fn as_name(&self) -> Option<AsName> {
7379 support::child(&self.syntax)
7380 }
7381 #[inline]
7382 pub fn expr(&self) -> Option<Expr> {
7383 support::child(&self.syntax)
7384 }
7385}
7386
7387#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7388pub struct ExprType {
7389 pub(crate) syntax: SyntaxNode,
7390}
7391impl ExprType {
7392 #[inline]
7393 pub fn expr(&self) -> Option<Expr> {
7394 support::child(&self.syntax)
7395 }
7396}
7397
7398#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7399pub struct ExtractFn {
7400 pub(crate) syntax: SyntaxNode,
7401}
7402impl ExtractFn {
7403 #[inline]
7404 pub fn expr(&self) -> Option<Expr> {
7405 support::child(&self.syntax)
7406 }
7407 #[inline]
7408 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
7409 support::token(&self.syntax, SyntaxKind::L_PAREN)
7410 }
7411 #[inline]
7412 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
7413 support::token(&self.syntax, SyntaxKind::R_PAREN)
7414 }
7415 #[inline]
7416 pub fn day_token(&self) -> Option<SyntaxToken> {
7417 support::token(&self.syntax, SyntaxKind::DAY_KW)
7418 }
7419 #[inline]
7420 pub fn extract_token(&self) -> Option<SyntaxToken> {
7421 support::token(&self.syntax, SyntaxKind::EXTRACT_KW)
7422 }
7423 #[inline]
7424 pub fn from_token(&self) -> Option<SyntaxToken> {
7425 support::token(&self.syntax, SyntaxKind::FROM_KW)
7426 }
7427 #[inline]
7428 pub fn hour_token(&self) -> Option<SyntaxToken> {
7429 support::token(&self.syntax, SyntaxKind::HOUR_KW)
7430 }
7431 #[inline]
7432 pub fn ident_token(&self) -> Option<SyntaxToken> {
7433 support::token(&self.syntax, SyntaxKind::IDENT)
7434 }
7435 #[inline]
7436 pub fn minute_token(&self) -> Option<SyntaxToken> {
7437 support::token(&self.syntax, SyntaxKind::MINUTE_KW)
7438 }
7439 #[inline]
7440 pub fn month_token(&self) -> Option<SyntaxToken> {
7441 support::token(&self.syntax, SyntaxKind::MONTH_KW)
7442 }
7443 #[inline]
7444 pub fn second_token(&self) -> Option<SyntaxToken> {
7445 support::token(&self.syntax, SyntaxKind::SECOND_KW)
7446 }
7447 #[inline]
7448 pub fn string_token(&self) -> Option<SyntaxToken> {
7449 support::token(&self.syntax, SyntaxKind::STRING_KW)
7450 }
7451 #[inline]
7452 pub fn year_token(&self) -> Option<SyntaxToken> {
7453 support::token(&self.syntax, SyntaxKind::YEAR_KW)
7454 }
7455}
7456
7457#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7458pub struct FatArrow {
7459 pub(crate) syntax: SyntaxNode,
7460}
7461impl FatArrow {
7462 #[inline]
7463 pub fn eq_token(&self) -> Option<SyntaxToken> {
7464 support::token(&self.syntax, SyntaxKind::EQ)
7465 }
7466 #[inline]
7467 pub fn r_angle_token(&self) -> Option<SyntaxToken> {
7468 support::token(&self.syntax, SyntaxKind::R_ANGLE)
7469 }
7470}
7471
7472#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7473pub struct FdwOption {
7474 pub(crate) syntax: SyntaxNode,
7475}
7476impl FdwOption {
7477 #[inline]
7478 pub fn alter_option_list(&self) -> Option<AlterOptionList> {
7479 support::child(&self.syntax)
7480 }
7481 #[inline]
7482 pub fn path(&self) -> Option<Path> {
7483 support::child(&self.syntax)
7484 }
7485 #[inline]
7486 pub fn handler_token(&self) -> Option<SyntaxToken> {
7487 support::token(&self.syntax, SyntaxKind::HANDLER_KW)
7488 }
7489 #[inline]
7490 pub fn no_token(&self) -> Option<SyntaxToken> {
7491 support::token(&self.syntax, SyntaxKind::NO_KW)
7492 }
7493 #[inline]
7494 pub fn options_token(&self) -> Option<SyntaxToken> {
7495 support::token(&self.syntax, SyntaxKind::OPTIONS_KW)
7496 }
7497 #[inline]
7498 pub fn validator_token(&self) -> Option<SyntaxToken> {
7499 support::token(&self.syntax, SyntaxKind::VALIDATOR_KW)
7500 }
7501}
7502
7503#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7504pub struct FdwOptionList {
7505 pub(crate) syntax: SyntaxNode,
7506}
7507impl FdwOptionList {
7508 #[inline]
7509 pub fn fdw_options(&self) -> AstChildren<FdwOption> {
7510 support::children(&self.syntax)
7511 }
7512}
7513
7514#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7515pub struct Fetch {
7516 pub(crate) syntax: SyntaxNode,
7517}
7518impl Fetch {
7519 #[inline]
7520 pub fn name_ref(&self) -> Option<NameRef> {
7521 support::child(&self.syntax)
7522 }
7523 #[inline]
7524 pub fn fetch_token(&self) -> Option<SyntaxToken> {
7525 support::token(&self.syntax, SyntaxKind::FETCH_KW)
7526 }
7527 #[inline]
7528 pub fn from_token(&self) -> Option<SyntaxToken> {
7529 support::token(&self.syntax, SyntaxKind::FROM_KW)
7530 }
7531 #[inline]
7532 pub fn in_token(&self) -> Option<SyntaxToken> {
7533 support::token(&self.syntax, SyntaxKind::IN_KW)
7534 }
7535}
7536
7537#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7538pub struct FetchClause {
7539 pub(crate) syntax: SyntaxNode,
7540}
7541impl FetchClause {
7542 #[inline]
7543 pub fn expr(&self) -> Option<Expr> {
7544 support::child(&self.syntax)
7545 }
7546 #[inline]
7547 pub fn fetch_token(&self) -> Option<SyntaxToken> {
7548 support::token(&self.syntax, SyntaxKind::FETCH_KW)
7549 }
7550 #[inline]
7551 pub fn first_token(&self) -> Option<SyntaxToken> {
7552 support::token(&self.syntax, SyntaxKind::FIRST_KW)
7553 }
7554 #[inline]
7555 pub fn next_token(&self) -> Option<SyntaxToken> {
7556 support::token(&self.syntax, SyntaxKind::NEXT_KW)
7557 }
7558 #[inline]
7559 pub fn only_token(&self) -> Option<SyntaxToken> {
7560 support::token(&self.syntax, SyntaxKind::ONLY_KW)
7561 }
7562 #[inline]
7563 pub fn row_token(&self) -> Option<SyntaxToken> {
7564 support::token(&self.syntax, SyntaxKind::ROW_KW)
7565 }
7566 #[inline]
7567 pub fn rows_token(&self) -> Option<SyntaxToken> {
7568 support::token(&self.syntax, SyntaxKind::ROWS_KW)
7569 }
7570 #[inline]
7571 pub fn ties_token(&self) -> Option<SyntaxToken> {
7572 support::token(&self.syntax, SyntaxKind::TIES_KW)
7573 }
7574 #[inline]
7575 pub fn with_token(&self) -> Option<SyntaxToken> {
7576 support::token(&self.syntax, SyntaxKind::WITH_KW)
7577 }
7578}
7579
7580#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7581pub struct FieldExpr {
7582 pub(crate) syntax: SyntaxNode,
7583}
7584impl FieldExpr {
7585 #[inline]
7586 pub fn star_token(&self) -> Option<SyntaxToken> {
7587 support::token(&self.syntax, SyntaxKind::STAR)
7588 }
7589 #[inline]
7590 pub fn dot_token(&self) -> Option<SyntaxToken> {
7591 support::token(&self.syntax, SyntaxKind::DOT)
7592 }
7593}
7594
7595#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7596pub struct FilterClause {
7597 pub(crate) syntax: SyntaxNode,
7598}
7599impl FilterClause {
7600 #[inline]
7601 pub fn expr(&self) -> Option<Expr> {
7602 support::child(&self.syntax)
7603 }
7604 #[inline]
7605 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
7606 support::token(&self.syntax, SyntaxKind::L_PAREN)
7607 }
7608 #[inline]
7609 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
7610 support::token(&self.syntax, SyntaxKind::R_PAREN)
7611 }
7612 #[inline]
7613 pub fn filter_token(&self) -> Option<SyntaxToken> {
7614 support::token(&self.syntax, SyntaxKind::FILTER_KW)
7615 }
7616 #[inline]
7617 pub fn where_token(&self) -> Option<SyntaxToken> {
7618 support::token(&self.syntax, SyntaxKind::WHERE_KW)
7619 }
7620}
7621
7622#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7623pub struct ForProvider {
7624 pub(crate) syntax: SyntaxNode,
7625}
7626impl ForProvider {
7627 #[inline]
7628 pub fn literal(&self) -> Option<Literal> {
7629 support::child(&self.syntax)
7630 }
7631 #[inline]
7632 pub fn name_ref(&self) -> Option<NameRef> {
7633 support::child(&self.syntax)
7634 }
7635 #[inline]
7636 pub fn for_token(&self) -> Option<SyntaxToken> {
7637 support::token(&self.syntax, SyntaxKind::FOR_KW)
7638 }
7639}
7640
7641#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7642pub struct ForceRls {
7643 pub(crate) syntax: SyntaxNode,
7644}
7645impl ForceRls {
7646 #[inline]
7647 pub fn force_token(&self) -> Option<SyntaxToken> {
7648 support::token(&self.syntax, SyntaxKind::FORCE_KW)
7649 }
7650 #[inline]
7651 pub fn level_token(&self) -> Option<SyntaxToken> {
7652 support::token(&self.syntax, SyntaxKind::LEVEL_KW)
7653 }
7654 #[inline]
7655 pub fn row_token(&self) -> Option<SyntaxToken> {
7656 support::token(&self.syntax, SyntaxKind::ROW_KW)
7657 }
7658 #[inline]
7659 pub fn security_token(&self) -> Option<SyntaxToken> {
7660 support::token(&self.syntax, SyntaxKind::SECURITY_KW)
7661 }
7662}
7663
7664#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7665pub struct ForeignKeyConstraint {
7666 pub(crate) syntax: SyntaxNode,
7667}
7668impl ForeignKeyConstraint {
7669 #[inline]
7670 pub fn match_type(&self) -> Option<MatchType> {
7671 support::child(&self.syntax)
7672 }
7673 #[inline]
7674 pub fn name(&self) -> Option<Name> {
7675 support::child(&self.syntax)
7676 }
7677 #[inline]
7678 pub fn on_delete_action(&self) -> Option<OnDeleteAction> {
7679 support::child(&self.syntax)
7680 }
7681 #[inline]
7682 pub fn on_update_action(&self) -> Option<OnUpdateAction> {
7683 support::child(&self.syntax)
7684 }
7685 #[inline]
7686 pub fn path(&self) -> Option<Path> {
7687 support::child(&self.syntax)
7688 }
7689 #[inline]
7690 pub fn constraint_token(&self) -> Option<SyntaxToken> {
7691 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
7692 }
7693 #[inline]
7694 pub fn foreign_token(&self) -> Option<SyntaxToken> {
7695 support::token(&self.syntax, SyntaxKind::FOREIGN_KW)
7696 }
7697 #[inline]
7698 pub fn key_token(&self) -> Option<SyntaxToken> {
7699 support::token(&self.syntax, SyntaxKind::KEY_KW)
7700 }
7701 #[inline]
7702 pub fn references_token(&self) -> Option<SyntaxToken> {
7703 support::token(&self.syntax, SyntaxKind::REFERENCES_KW)
7704 }
7705}
7706
7707#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7708pub struct FrameClause {
7709 pub(crate) syntax: SyntaxNode,
7710}
7711impl FrameClause {
7712 #[inline]
7713 pub fn groups_token(&self) -> Option<SyntaxToken> {
7714 support::token(&self.syntax, SyntaxKind::GROUPS_KW)
7715 }
7716 #[inline]
7717 pub fn range_token(&self) -> Option<SyntaxToken> {
7718 support::token(&self.syntax, SyntaxKind::RANGE_KW)
7719 }
7720 #[inline]
7721 pub fn rows_token(&self) -> Option<SyntaxToken> {
7722 support::token(&self.syntax, SyntaxKind::ROWS_KW)
7723 }
7724}
7725
7726#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7727pub struct FromClause {
7728 pub(crate) syntax: SyntaxNode,
7729}
7730impl FromClause {
7731 #[inline]
7732 pub fn from_items(&self) -> AstChildren<FromItem> {
7733 support::children(&self.syntax)
7734 }
7735 #[inline]
7736 pub fn join_exprs(&self) -> AstChildren<JoinExpr> {
7737 support::children(&self.syntax)
7738 }
7739 #[inline]
7740 pub fn from_token(&self) -> Option<SyntaxToken> {
7741 support::token(&self.syntax, SyntaxKind::FROM_KW)
7742 }
7743}
7744
7745#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7746pub struct FromItem {
7747 pub(crate) syntax: SyntaxNode,
7748}
7749impl FromItem {
7750 #[inline]
7751 pub fn alias(&self) -> Option<Alias> {
7752 support::child(&self.syntax)
7753 }
7754 #[inline]
7755 pub fn call_expr(&self) -> Option<CallExpr> {
7756 support::child(&self.syntax)
7757 }
7758 #[inline]
7759 pub fn cast_expr(&self) -> Option<CastExpr> {
7760 support::child(&self.syntax)
7761 }
7762 #[inline]
7763 pub fn field_expr(&self) -> Option<FieldExpr> {
7764 support::child(&self.syntax)
7765 }
7766 #[inline]
7767 pub fn json_table(&self) -> Option<JsonTable> {
7768 support::child(&self.syntax)
7769 }
7770 #[inline]
7771 pub fn name_ref(&self) -> Option<NameRef> {
7772 support::child(&self.syntax)
7773 }
7774 #[inline]
7775 pub fn paren_select(&self) -> Option<ParenSelect> {
7776 support::child(&self.syntax)
7777 }
7778 #[inline]
7779 pub fn tablesample_clause(&self) -> Option<TablesampleClause> {
7780 support::child(&self.syntax)
7781 }
7782 #[inline]
7783 pub fn xml_table(&self) -> Option<XmlTable> {
7784 support::child(&self.syntax)
7785 }
7786 #[inline]
7787 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
7788 support::token(&self.syntax, SyntaxKind::L_PAREN)
7789 }
7790 #[inline]
7791 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
7792 support::token(&self.syntax, SyntaxKind::R_PAREN)
7793 }
7794 #[inline]
7795 pub fn star_token(&self) -> Option<SyntaxToken> {
7796 support::token(&self.syntax, SyntaxKind::STAR)
7797 }
7798 #[inline]
7799 pub fn from_token(&self) -> Option<SyntaxToken> {
7800 support::token(&self.syntax, SyntaxKind::FROM_KW)
7801 }
7802 #[inline]
7803 pub fn lateral_token(&self) -> Option<SyntaxToken> {
7804 support::token(&self.syntax, SyntaxKind::LATERAL_KW)
7805 }
7806 #[inline]
7807 pub fn only_token(&self) -> Option<SyntaxToken> {
7808 support::token(&self.syntax, SyntaxKind::ONLY_KW)
7809 }
7810 #[inline]
7811 pub fn ordinality_token(&self) -> Option<SyntaxToken> {
7812 support::token(&self.syntax, SyntaxKind::ORDINALITY_KW)
7813 }
7814 #[inline]
7815 pub fn rows_token(&self) -> Option<SyntaxToken> {
7816 support::token(&self.syntax, SyntaxKind::ROWS_KW)
7817 }
7818 #[inline]
7819 pub fn with_token(&self) -> Option<SyntaxToken> {
7820 support::token(&self.syntax, SyntaxKind::WITH_KW)
7821 }
7822}
7823
7824#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7825pub struct FromServer {
7826 pub(crate) syntax: SyntaxNode,
7827}
7828impl FromServer {
7829 #[inline]
7830 pub fn name_ref(&self) -> Option<NameRef> {
7831 support::child(&self.syntax)
7832 }
7833 #[inline]
7834 pub fn from_token(&self) -> Option<SyntaxToken> {
7835 support::token(&self.syntax, SyntaxKind::FROM_KW)
7836 }
7837 #[inline]
7838 pub fn server_token(&self) -> Option<SyntaxToken> {
7839 support::token(&self.syntax, SyntaxKind::SERVER_KW)
7840 }
7841}
7842
7843#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7844pub struct FromTable {
7845 pub(crate) syntax: SyntaxNode,
7846}
7847impl FromTable {
7848 #[inline]
7849 pub fn path(&self) -> Option<Path> {
7850 support::child(&self.syntax)
7851 }
7852 #[inline]
7853 pub fn from_token(&self) -> Option<SyntaxToken> {
7854 support::token(&self.syntax, SyntaxKind::FROM_KW)
7855 }
7856}
7857
7858#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7859pub struct FuncOptionList {
7860 pub(crate) syntax: SyntaxNode,
7861}
7862impl FuncOptionList {
7863 #[inline]
7864 pub fn options(&self) -> AstChildren<FuncOption> {
7865 support::children(&self.syntax)
7866 }
7867}
7868
7869#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7870pub struct FunctionSig {
7871 pub(crate) syntax: SyntaxNode,
7872}
7873impl FunctionSig {
7874 #[inline]
7875 pub fn param_list(&self) -> Option<ParamList> {
7876 support::child(&self.syntax)
7877 }
7878 #[inline]
7879 pub fn path(&self) -> Option<Path> {
7880 support::child(&self.syntax)
7881 }
7882}
7883
7884#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7885pub struct FunctionSigList {
7886 pub(crate) syntax: SyntaxNode,
7887}
7888impl FunctionSigList {
7889 #[inline]
7890 pub fn function_sigs(&self) -> AstChildren<FunctionSig> {
7891 support::children(&self.syntax)
7892 }
7893}
7894
7895#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7896pub struct GeneratedConstraint {
7897 pub(crate) syntax: SyntaxNode,
7898}
7899impl GeneratedConstraint {
7900 #[inline]
7901 pub fn expr(&self) -> Option<Expr> {
7902 support::child(&self.syntax)
7903 }
7904 #[inline]
7905 pub fn name_ref(&self) -> Option<NameRef> {
7906 support::child(&self.syntax)
7907 }
7908 #[inline]
7909 pub fn sequence_option_list(&self) -> Option<SequenceOptionList> {
7910 support::child(&self.syntax)
7911 }
7912 #[inline]
7913 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
7914 support::token(&self.syntax, SyntaxKind::L_PAREN)
7915 }
7916 #[inline]
7917 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
7918 support::token(&self.syntax, SyntaxKind::R_PAREN)
7919 }
7920 #[inline]
7921 pub fn always_token(&self) -> Option<SyntaxToken> {
7922 support::token(&self.syntax, SyntaxKind::ALWAYS_KW)
7923 }
7924 #[inline]
7925 pub fn as_token(&self) -> Option<SyntaxToken> {
7926 support::token(&self.syntax, SyntaxKind::AS_KW)
7927 }
7928 #[inline]
7929 pub fn by_token(&self) -> Option<SyntaxToken> {
7930 support::token(&self.syntax, SyntaxKind::BY_KW)
7931 }
7932 #[inline]
7933 pub fn constraint_token(&self) -> Option<SyntaxToken> {
7934 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
7935 }
7936 #[inline]
7937 pub fn default_token(&self) -> Option<SyntaxToken> {
7938 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
7939 }
7940 #[inline]
7941 pub fn generated_token(&self) -> Option<SyntaxToken> {
7942 support::token(&self.syntax, SyntaxKind::GENERATED_KW)
7943 }
7944 #[inline]
7945 pub fn identity_token(&self) -> Option<SyntaxToken> {
7946 support::token(&self.syntax, SyntaxKind::IDENTITY_KW)
7947 }
7948 #[inline]
7949 pub fn stored_token(&self) -> Option<SyntaxToken> {
7950 support::token(&self.syntax, SyntaxKind::STORED_KW)
7951 }
7952}
7953
7954#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7955pub struct Grant {
7956 pub(crate) syntax: SyntaxNode,
7957}
7958impl Grant {
7959 #[inline]
7960 pub fn name_refs(&self) -> AstChildren<NameRef> {
7961 support::children(&self.syntax)
7962 }
7963 #[inline]
7964 pub fn paths(&self) -> AstChildren<Path> {
7965 support::children(&self.syntax)
7966 }
7967 #[inline]
7968 pub fn revoke_command_list(&self) -> Option<RevokeCommandList> {
7969 support::child(&self.syntax)
7970 }
7971 #[inline]
7972 pub fn role(&self) -> Option<Role> {
7973 support::child(&self.syntax)
7974 }
7975 #[inline]
7976 pub fn role_list(&self) -> Option<RoleList> {
7977 support::child(&self.syntax)
7978 }
7979 #[inline]
7980 pub fn all_token(&self) -> Option<SyntaxToken> {
7981 support::token(&self.syntax, SyntaxKind::ALL_KW)
7982 }
7983 #[inline]
7984 pub fn by_token(&self) -> Option<SyntaxToken> {
7985 support::token(&self.syntax, SyntaxKind::BY_KW)
7986 }
7987 #[inline]
7988 pub fn grant_token(&self) -> Option<SyntaxToken> {
7989 support::token(&self.syntax, SyntaxKind::GRANT_KW)
7990 }
7991 #[inline]
7992 pub fn granted_token(&self) -> Option<SyntaxToken> {
7993 support::token(&self.syntax, SyntaxKind::GRANTED_KW)
7994 }
7995 #[inline]
7996 pub fn in_token(&self) -> Option<SyntaxToken> {
7997 support::token(&self.syntax, SyntaxKind::IN_KW)
7998 }
7999 #[inline]
8000 pub fn on_token(&self) -> Option<SyntaxToken> {
8001 support::token(&self.syntax, SyntaxKind::ON_KW)
8002 }
8003 #[inline]
8004 pub fn option_token(&self) -> Option<SyntaxToken> {
8005 support::token(&self.syntax, SyntaxKind::OPTION_KW)
8006 }
8007 #[inline]
8008 pub fn privileges_token(&self) -> Option<SyntaxToken> {
8009 support::token(&self.syntax, SyntaxKind::PRIVILEGES_KW)
8010 }
8011 #[inline]
8012 pub fn schema_token(&self) -> Option<SyntaxToken> {
8013 support::token(&self.syntax, SyntaxKind::SCHEMA_KW)
8014 }
8015 #[inline]
8016 pub fn table_token(&self) -> Option<SyntaxToken> {
8017 support::token(&self.syntax, SyntaxKind::TABLE_KW)
8018 }
8019 #[inline]
8020 pub fn tables_token(&self) -> Option<SyntaxToken> {
8021 support::token(&self.syntax, SyntaxKind::TABLES_KW)
8022 }
8023 #[inline]
8024 pub fn to_token(&self) -> Option<SyntaxToken> {
8025 support::token(&self.syntax, SyntaxKind::TO_KW)
8026 }
8027 #[inline]
8028 pub fn with_token(&self) -> Option<SyntaxToken> {
8029 support::token(&self.syntax, SyntaxKind::WITH_KW)
8030 }
8031}
8032
8033#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8034pub struct GrantDefaultPrivileges {
8035 pub(crate) syntax: SyntaxNode,
8036}
8037impl GrantDefaultPrivileges {
8038 #[inline]
8039 pub fn privilege_target(&self) -> Option<PrivilegeTarget> {
8040 support::child(&self.syntax)
8041 }
8042 #[inline]
8043 pub fn privileges(&self) -> Option<Privileges> {
8044 support::child(&self.syntax)
8045 }
8046 #[inline]
8047 pub fn role_list(&self) -> Option<RoleList> {
8048 support::child(&self.syntax)
8049 }
8050 #[inline]
8051 pub fn grant_token(&self) -> Option<SyntaxToken> {
8052 support::token(&self.syntax, SyntaxKind::GRANT_KW)
8053 }
8054 #[inline]
8055 pub fn on_token(&self) -> Option<SyntaxToken> {
8056 support::token(&self.syntax, SyntaxKind::ON_KW)
8057 }
8058 #[inline]
8059 pub fn option_token(&self) -> Option<SyntaxToken> {
8060 support::token(&self.syntax, SyntaxKind::OPTION_KW)
8061 }
8062 #[inline]
8063 pub fn to_token(&self) -> Option<SyntaxToken> {
8064 support::token(&self.syntax, SyntaxKind::TO_KW)
8065 }
8066 #[inline]
8067 pub fn with_token(&self) -> Option<SyntaxToken> {
8068 support::token(&self.syntax, SyntaxKind::WITH_KW)
8069 }
8070}
8071
8072#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8073pub struct GroupByClause {
8074 pub(crate) syntax: SyntaxNode,
8075}
8076impl GroupByClause {
8077 #[inline]
8078 pub fn group_by_list(&self) -> Option<GroupByList> {
8079 support::child(&self.syntax)
8080 }
8081 #[inline]
8082 pub fn all_token(&self) -> Option<SyntaxToken> {
8083 support::token(&self.syntax, SyntaxKind::ALL_KW)
8084 }
8085 #[inline]
8086 pub fn by_token(&self) -> Option<SyntaxToken> {
8087 support::token(&self.syntax, SyntaxKind::BY_KW)
8088 }
8089 #[inline]
8090 pub fn distinct_token(&self) -> Option<SyntaxToken> {
8091 support::token(&self.syntax, SyntaxKind::DISTINCT_KW)
8092 }
8093 #[inline]
8094 pub fn group_token(&self) -> Option<SyntaxToken> {
8095 support::token(&self.syntax, SyntaxKind::GROUP_KW)
8096 }
8097}
8098
8099#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8100pub struct GroupByList {
8101 pub(crate) syntax: SyntaxNode,
8102}
8103impl GroupByList {
8104 #[inline]
8105 pub fn group_bys(&self) -> AstChildren<GroupBy> {
8106 support::children(&self.syntax)
8107 }
8108}
8109
8110#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8111pub struct GroupingCube {
8112 pub(crate) syntax: SyntaxNode,
8113}
8114impl GroupingCube {
8115 #[inline]
8116 pub fn expr(&self) -> Option<Expr> {
8117 support::child(&self.syntax)
8118 }
8119 #[inline]
8120 pub fn cube_token(&self) -> Option<SyntaxToken> {
8121 support::token(&self.syntax, SyntaxKind::CUBE_KW)
8122 }
8123}
8124
8125#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8126pub struct GroupingExpr {
8127 pub(crate) syntax: SyntaxNode,
8128}
8129impl GroupingExpr {
8130 #[inline]
8131 pub fn expr(&self) -> Option<Expr> {
8132 support::child(&self.syntax)
8133 }
8134}
8135
8136#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8137pub struct GroupingRollup {
8138 pub(crate) syntax: SyntaxNode,
8139}
8140impl GroupingRollup {
8141 #[inline]
8142 pub fn expr(&self) -> Option<Expr> {
8143 support::child(&self.syntax)
8144 }
8145 #[inline]
8146 pub fn rollup_token(&self) -> Option<SyntaxToken> {
8147 support::token(&self.syntax, SyntaxKind::ROLLUP_KW)
8148 }
8149}
8150
8151#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8152pub struct GroupingSets {
8153 pub(crate) syntax: SyntaxNode,
8154}
8155impl GroupingSets {
8156 #[inline]
8157 pub fn expr(&self) -> Option<Expr> {
8158 support::child(&self.syntax)
8159 }
8160 #[inline]
8161 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
8162 support::token(&self.syntax, SyntaxKind::L_PAREN)
8163 }
8164 #[inline]
8165 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
8166 support::token(&self.syntax, SyntaxKind::R_PAREN)
8167 }
8168 #[inline]
8169 pub fn grouping_token(&self) -> Option<SyntaxToken> {
8170 support::token(&self.syntax, SyntaxKind::GROUPING_KW)
8171 }
8172 #[inline]
8173 pub fn sets_token(&self) -> Option<SyntaxToken> {
8174 support::token(&self.syntax, SyntaxKind::SETS_KW)
8175 }
8176}
8177
8178#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8179pub struct Gteq {
8180 pub(crate) syntax: SyntaxNode,
8181}
8182impl Gteq {
8183 #[inline]
8184 pub fn eq_token(&self) -> Option<SyntaxToken> {
8185 support::token(&self.syntax, SyntaxKind::EQ)
8186 }
8187 #[inline]
8188 pub fn r_angle_token(&self) -> Option<SyntaxToken> {
8189 support::token(&self.syntax, SyntaxKind::R_ANGLE)
8190 }
8191}
8192
8193#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8194pub struct HandlerClause {
8195 pub(crate) syntax: SyntaxNode,
8196}
8197impl HandlerClause {
8198 #[inline]
8199 pub fn path(&self) -> Option<Path> {
8200 support::child(&self.syntax)
8201 }
8202 #[inline]
8203 pub fn handler_token(&self) -> Option<SyntaxToken> {
8204 support::token(&self.syntax, SyntaxKind::HANDLER_KW)
8205 }
8206}
8207
8208#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8209pub struct HavingClause {
8210 pub(crate) syntax: SyntaxNode,
8211}
8212impl HavingClause {
8213 #[inline]
8214 pub fn expr(&self) -> Option<Expr> {
8215 support::child(&self.syntax)
8216 }
8217 #[inline]
8218 pub fn having_token(&self) -> Option<SyntaxToken> {
8219 support::token(&self.syntax, SyntaxKind::HAVING_KW)
8220 }
8221}
8222
8223#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8224pub struct IfExists {
8225 pub(crate) syntax: SyntaxNode,
8226}
8227impl IfExists {
8228 #[inline]
8229 pub fn exists_token(&self) -> Option<SyntaxToken> {
8230 support::token(&self.syntax, SyntaxKind::EXISTS_KW)
8231 }
8232 #[inline]
8233 pub fn if_token(&self) -> Option<SyntaxToken> {
8234 support::token(&self.syntax, SyntaxKind::IF_KW)
8235 }
8236}
8237
8238#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8239pub struct IfNotExists {
8240 pub(crate) syntax: SyntaxNode,
8241}
8242impl IfNotExists {
8243 #[inline]
8244 pub fn exists_token(&self) -> Option<SyntaxToken> {
8245 support::token(&self.syntax, SyntaxKind::EXISTS_KW)
8246 }
8247 #[inline]
8248 pub fn if_token(&self) -> Option<SyntaxToken> {
8249 support::token(&self.syntax, SyntaxKind::IF_KW)
8250 }
8251 #[inline]
8252 pub fn not_token(&self) -> Option<SyntaxToken> {
8253 support::token(&self.syntax, SyntaxKind::NOT_KW)
8254 }
8255}
8256
8257#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8258pub struct ImportForeignSchema {
8259 pub(crate) syntax: SyntaxNode,
8260}
8261impl ImportForeignSchema {
8262 #[inline]
8263 pub fn alter_option_list(&self) -> Option<AlterOptionList> {
8264 support::child(&self.syntax)
8265 }
8266 #[inline]
8267 pub fn except_tables(&self) -> Option<ExceptTables> {
8268 support::child(&self.syntax)
8269 }
8270 #[inline]
8271 pub fn from_server(&self) -> Option<FromServer> {
8272 support::child(&self.syntax)
8273 }
8274 #[inline]
8275 pub fn into_schema(&self) -> Option<IntoSchema> {
8276 support::child(&self.syntax)
8277 }
8278 #[inline]
8279 pub fn limit_to_tables(&self) -> Option<LimitToTables> {
8280 support::child(&self.syntax)
8281 }
8282 #[inline]
8283 pub fn name_ref(&self) -> Option<NameRef> {
8284 support::child(&self.syntax)
8285 }
8286 #[inline]
8287 pub fn foreign_token(&self) -> Option<SyntaxToken> {
8288 support::token(&self.syntax, SyntaxKind::FOREIGN_KW)
8289 }
8290 #[inline]
8291 pub fn import_token(&self) -> Option<SyntaxToken> {
8292 support::token(&self.syntax, SyntaxKind::IMPORT_KW)
8293 }
8294 #[inline]
8295 pub fn schema_token(&self) -> Option<SyntaxToken> {
8296 support::token(&self.syntax, SyntaxKind::SCHEMA_KW)
8297 }
8298}
8299
8300#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8301pub struct IndexExpr {
8302 pub(crate) syntax: SyntaxNode,
8303}
8304impl IndexExpr {
8305 #[inline]
8306 pub fn l_brack_token(&self) -> Option<SyntaxToken> {
8307 support::token(&self.syntax, SyntaxKind::L_BRACK)
8308 }
8309 #[inline]
8310 pub fn r_brack_token(&self) -> Option<SyntaxToken> {
8311 support::token(&self.syntax, SyntaxKind::R_BRACK)
8312 }
8313}
8314
8315#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8316pub struct Inherit {
8317 pub(crate) syntax: SyntaxNode,
8318}
8319impl Inherit {
8320 #[inline]
8321 pub fn path(&self) -> Option<Path> {
8322 support::child(&self.syntax)
8323 }
8324 #[inline]
8325 pub fn inherit_token(&self) -> Option<SyntaxToken> {
8326 support::token(&self.syntax, SyntaxKind::INHERIT_KW)
8327 }
8328}
8329
8330#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8331pub struct InheritTable {
8332 pub(crate) syntax: SyntaxNode,
8333}
8334impl InheritTable {
8335 #[inline]
8336 pub fn path(&self) -> Option<Path> {
8337 support::child(&self.syntax)
8338 }
8339 #[inline]
8340 pub fn inherit_token(&self) -> Option<SyntaxToken> {
8341 support::token(&self.syntax, SyntaxKind::INHERIT_KW)
8342 }
8343}
8344
8345#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8346pub struct Inherits {
8347 pub(crate) syntax: SyntaxNode,
8348}
8349impl Inherits {
8350 #[inline]
8351 pub fn paths(&self) -> AstChildren<Path> {
8352 support::children(&self.syntax)
8353 }
8354 #[inline]
8355 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
8356 support::token(&self.syntax, SyntaxKind::L_PAREN)
8357 }
8358 #[inline]
8359 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
8360 support::token(&self.syntax, SyntaxKind::R_PAREN)
8361 }
8362 #[inline]
8363 pub fn inherits_token(&self) -> Option<SyntaxToken> {
8364 support::token(&self.syntax, SyntaxKind::INHERITS_KW)
8365 }
8366}
8367
8368#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8369pub struct InitiallyDeferredConstraintOption {
8370 pub(crate) syntax: SyntaxNode,
8371}
8372impl InitiallyDeferredConstraintOption {
8373 #[inline]
8374 pub fn deferred_token(&self) -> Option<SyntaxToken> {
8375 support::token(&self.syntax, SyntaxKind::DEFERRED_KW)
8376 }
8377 #[inline]
8378 pub fn initially_token(&self) -> Option<SyntaxToken> {
8379 support::token(&self.syntax, SyntaxKind::INITIALLY_KW)
8380 }
8381}
8382
8383#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8384pub struct InitiallyImmediateConstraintOption {
8385 pub(crate) syntax: SyntaxNode,
8386}
8387impl InitiallyImmediateConstraintOption {
8388 #[inline]
8389 pub fn immediate_token(&self) -> Option<SyntaxToken> {
8390 support::token(&self.syntax, SyntaxKind::IMMEDIATE_KW)
8391 }
8392 #[inline]
8393 pub fn initially_token(&self) -> Option<SyntaxToken> {
8394 support::token(&self.syntax, SyntaxKind::INITIALLY_KW)
8395 }
8396}
8397
8398#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8399pub struct Insert {
8400 pub(crate) syntax: SyntaxNode,
8401}
8402impl Insert {
8403 #[inline]
8404 pub fn alias(&self) -> Option<Alias> {
8405 support::child(&self.syntax)
8406 }
8407 #[inline]
8408 pub fn column_list(&self) -> Option<ColumnList> {
8409 support::child(&self.syntax)
8410 }
8411 #[inline]
8412 pub fn on_conflict_clause(&self) -> Option<OnConflictClause> {
8413 support::child(&self.syntax)
8414 }
8415 #[inline]
8416 pub fn path(&self) -> Option<Path> {
8417 support::child(&self.syntax)
8418 }
8419 #[inline]
8420 pub fn returning_clause(&self) -> Option<ReturningClause> {
8421 support::child(&self.syntax)
8422 }
8423 #[inline]
8424 pub fn stmt(&self) -> Option<Stmt> {
8425 support::child(&self.syntax)
8426 }
8427 #[inline]
8428 pub fn values(&self) -> Option<Values> {
8429 support::child(&self.syntax)
8430 }
8431 #[inline]
8432 pub fn default_token(&self) -> Option<SyntaxToken> {
8433 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
8434 }
8435 #[inline]
8436 pub fn insert_token(&self) -> Option<SyntaxToken> {
8437 support::token(&self.syntax, SyntaxKind::INSERT_KW)
8438 }
8439 #[inline]
8440 pub fn into_token(&self) -> Option<SyntaxToken> {
8441 support::token(&self.syntax, SyntaxKind::INTO_KW)
8442 }
8443 #[inline]
8444 pub fn overriding_token(&self) -> Option<SyntaxToken> {
8445 support::token(&self.syntax, SyntaxKind::OVERRIDING_KW)
8446 }
8447 #[inline]
8448 pub fn system_token(&self) -> Option<SyntaxToken> {
8449 support::token(&self.syntax, SyntaxKind::SYSTEM_KW)
8450 }
8451 #[inline]
8452 pub fn user_token(&self) -> Option<SyntaxToken> {
8453 support::token(&self.syntax, SyntaxKind::USER_KW)
8454 }
8455 #[inline]
8456 pub fn value_token(&self) -> Option<SyntaxToken> {
8457 support::token(&self.syntax, SyntaxKind::VALUE_KW)
8458 }
8459 #[inline]
8460 pub fn values_token(&self) -> Option<SyntaxToken> {
8461 support::token(&self.syntax, SyntaxKind::VALUES_KW)
8462 }
8463}
8464
8465#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8466pub struct IntervalType {
8467 pub(crate) syntax: SyntaxNode,
8468}
8469impl IntervalType {
8470 #[inline]
8471 pub fn literal(&self) -> Option<Literal> {
8472 support::child(&self.syntax)
8473 }
8474 #[inline]
8475 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
8476 support::token(&self.syntax, SyntaxKind::L_PAREN)
8477 }
8478 #[inline]
8479 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
8480 support::token(&self.syntax, SyntaxKind::R_PAREN)
8481 }
8482 #[inline]
8483 pub fn day_token(&self) -> Option<SyntaxToken> {
8484 support::token(&self.syntax, SyntaxKind::DAY_KW)
8485 }
8486 #[inline]
8487 pub fn hour_token(&self) -> Option<SyntaxToken> {
8488 support::token(&self.syntax, SyntaxKind::HOUR_KW)
8489 }
8490 #[inline]
8491 pub fn interval_token(&self) -> Option<SyntaxToken> {
8492 support::token(&self.syntax, SyntaxKind::INTERVAL_KW)
8493 }
8494 #[inline]
8495 pub fn minute_token(&self) -> Option<SyntaxToken> {
8496 support::token(&self.syntax, SyntaxKind::MINUTE_KW)
8497 }
8498 #[inline]
8499 pub fn month_token(&self) -> Option<SyntaxToken> {
8500 support::token(&self.syntax, SyntaxKind::MONTH_KW)
8501 }
8502 #[inline]
8503 pub fn second_token(&self) -> Option<SyntaxToken> {
8504 support::token(&self.syntax, SyntaxKind::SECOND_KW)
8505 }
8506 #[inline]
8507 pub fn to_token(&self) -> Option<SyntaxToken> {
8508 support::token(&self.syntax, SyntaxKind::TO_KW)
8509 }
8510 #[inline]
8511 pub fn year_token(&self) -> Option<SyntaxToken> {
8512 support::token(&self.syntax, SyntaxKind::YEAR_KW)
8513 }
8514}
8515
8516#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8517pub struct IntoClause {
8518 pub(crate) syntax: SyntaxNode,
8519}
8520impl IntoClause {
8521 #[inline]
8522 pub fn path(&self) -> Option<Path> {
8523 support::child(&self.syntax)
8524 }
8525 #[inline]
8526 pub fn into_token(&self) -> Option<SyntaxToken> {
8527 support::token(&self.syntax, SyntaxKind::INTO_KW)
8528 }
8529}
8530
8531#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8532pub struct IntoSchema {
8533 pub(crate) syntax: SyntaxNode,
8534}
8535impl IntoSchema {
8536 #[inline]
8537 pub fn name_ref(&self) -> Option<NameRef> {
8538 support::child(&self.syntax)
8539 }
8540 #[inline]
8541 pub fn into_token(&self) -> Option<SyntaxToken> {
8542 support::token(&self.syntax, SyntaxKind::INTO_KW)
8543 }
8544}
8545
8546#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8547pub struct IsDistinctFrom {
8548 pub(crate) syntax: SyntaxNode,
8549}
8550impl IsDistinctFrom {
8551 #[inline]
8552 pub fn distinct_token(&self) -> Option<SyntaxToken> {
8553 support::token(&self.syntax, SyntaxKind::DISTINCT_KW)
8554 }
8555 #[inline]
8556 pub fn from_token(&self) -> Option<SyntaxToken> {
8557 support::token(&self.syntax, SyntaxKind::FROM_KW)
8558 }
8559 #[inline]
8560 pub fn is_token(&self) -> Option<SyntaxToken> {
8561 support::token(&self.syntax, SyntaxKind::IS_KW)
8562 }
8563}
8564
8565#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8566pub struct IsJson {
8567 pub(crate) syntax: SyntaxNode,
8568}
8569impl IsJson {
8570 #[inline]
8571 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
8572 support::child(&self.syntax)
8573 }
8574 #[inline]
8575 pub fn is_token(&self) -> Option<SyntaxToken> {
8576 support::token(&self.syntax, SyntaxKind::IS_KW)
8577 }
8578 #[inline]
8579 pub fn json_token(&self) -> Option<SyntaxToken> {
8580 support::token(&self.syntax, SyntaxKind::JSON_KW)
8581 }
8582}
8583
8584#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8585pub struct IsJsonArray {
8586 pub(crate) syntax: SyntaxNode,
8587}
8588impl IsJsonArray {
8589 #[inline]
8590 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
8591 support::child(&self.syntax)
8592 }
8593 #[inline]
8594 pub fn array_token(&self) -> Option<SyntaxToken> {
8595 support::token(&self.syntax, SyntaxKind::ARRAY_KW)
8596 }
8597 #[inline]
8598 pub fn is_token(&self) -> Option<SyntaxToken> {
8599 support::token(&self.syntax, SyntaxKind::IS_KW)
8600 }
8601 #[inline]
8602 pub fn json_token(&self) -> Option<SyntaxToken> {
8603 support::token(&self.syntax, SyntaxKind::JSON_KW)
8604 }
8605}
8606
8607#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8608pub struct IsJsonObject {
8609 pub(crate) syntax: SyntaxNode,
8610}
8611impl IsJsonObject {
8612 #[inline]
8613 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
8614 support::child(&self.syntax)
8615 }
8616 #[inline]
8617 pub fn is_token(&self) -> Option<SyntaxToken> {
8618 support::token(&self.syntax, SyntaxKind::IS_KW)
8619 }
8620 #[inline]
8621 pub fn json_token(&self) -> Option<SyntaxToken> {
8622 support::token(&self.syntax, SyntaxKind::JSON_KW)
8623 }
8624 #[inline]
8625 pub fn object_token(&self) -> Option<SyntaxToken> {
8626 support::token(&self.syntax, SyntaxKind::OBJECT_KW)
8627 }
8628}
8629
8630#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8631pub struct IsJsonScalar {
8632 pub(crate) syntax: SyntaxNode,
8633}
8634impl IsJsonScalar {
8635 #[inline]
8636 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
8637 support::child(&self.syntax)
8638 }
8639 #[inline]
8640 pub fn is_token(&self) -> Option<SyntaxToken> {
8641 support::token(&self.syntax, SyntaxKind::IS_KW)
8642 }
8643 #[inline]
8644 pub fn json_token(&self) -> Option<SyntaxToken> {
8645 support::token(&self.syntax, SyntaxKind::JSON_KW)
8646 }
8647 #[inline]
8648 pub fn scalar_token(&self) -> Option<SyntaxToken> {
8649 support::token(&self.syntax, SyntaxKind::SCALAR_KW)
8650 }
8651}
8652
8653#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8654pub struct IsJsonValue {
8655 pub(crate) syntax: SyntaxNode,
8656}
8657impl IsJsonValue {
8658 #[inline]
8659 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
8660 support::child(&self.syntax)
8661 }
8662 #[inline]
8663 pub fn is_token(&self) -> Option<SyntaxToken> {
8664 support::token(&self.syntax, SyntaxKind::IS_KW)
8665 }
8666 #[inline]
8667 pub fn json_token(&self) -> Option<SyntaxToken> {
8668 support::token(&self.syntax, SyntaxKind::JSON_KW)
8669 }
8670 #[inline]
8671 pub fn value_token(&self) -> Option<SyntaxToken> {
8672 support::token(&self.syntax, SyntaxKind::VALUE_KW)
8673 }
8674}
8675
8676#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8677pub struct IsNormalized {
8678 pub(crate) syntax: SyntaxNode,
8679}
8680impl IsNormalized {
8681 #[inline]
8682 pub fn unicode_normal_form(&self) -> Option<UnicodeNormalForm> {
8683 support::child(&self.syntax)
8684 }
8685 #[inline]
8686 pub fn is_token(&self) -> Option<SyntaxToken> {
8687 support::token(&self.syntax, SyntaxKind::IS_KW)
8688 }
8689 #[inline]
8690 pub fn normalized_token(&self) -> Option<SyntaxToken> {
8691 support::token(&self.syntax, SyntaxKind::NORMALIZED_KW)
8692 }
8693}
8694
8695#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8696pub struct IsNot {
8697 pub(crate) syntax: SyntaxNode,
8698}
8699impl IsNot {
8700 #[inline]
8701 pub fn is_token(&self) -> Option<SyntaxToken> {
8702 support::token(&self.syntax, SyntaxKind::IS_KW)
8703 }
8704 #[inline]
8705 pub fn not_token(&self) -> Option<SyntaxToken> {
8706 support::token(&self.syntax, SyntaxKind::NOT_KW)
8707 }
8708}
8709
8710#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8711pub struct IsNotDistinctFrom {
8712 pub(crate) syntax: SyntaxNode,
8713}
8714impl IsNotDistinctFrom {
8715 #[inline]
8716 pub fn distinct_token(&self) -> Option<SyntaxToken> {
8717 support::token(&self.syntax, SyntaxKind::DISTINCT_KW)
8718 }
8719 #[inline]
8720 pub fn from_token(&self) -> Option<SyntaxToken> {
8721 support::token(&self.syntax, SyntaxKind::FROM_KW)
8722 }
8723 #[inline]
8724 pub fn is_token(&self) -> Option<SyntaxToken> {
8725 support::token(&self.syntax, SyntaxKind::IS_KW)
8726 }
8727 #[inline]
8728 pub fn not_token(&self) -> Option<SyntaxToken> {
8729 support::token(&self.syntax, SyntaxKind::NOT_KW)
8730 }
8731}
8732
8733#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8734pub struct IsNotJson {
8735 pub(crate) syntax: SyntaxNode,
8736}
8737impl IsNotJson {
8738 #[inline]
8739 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
8740 support::child(&self.syntax)
8741 }
8742 #[inline]
8743 pub fn is_token(&self) -> Option<SyntaxToken> {
8744 support::token(&self.syntax, SyntaxKind::IS_KW)
8745 }
8746 #[inline]
8747 pub fn json_token(&self) -> Option<SyntaxToken> {
8748 support::token(&self.syntax, SyntaxKind::JSON_KW)
8749 }
8750 #[inline]
8751 pub fn not_token(&self) -> Option<SyntaxToken> {
8752 support::token(&self.syntax, SyntaxKind::NOT_KW)
8753 }
8754}
8755
8756#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8757pub struct IsNotJsonArray {
8758 pub(crate) syntax: SyntaxNode,
8759}
8760impl IsNotJsonArray {
8761 #[inline]
8762 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
8763 support::child(&self.syntax)
8764 }
8765 #[inline]
8766 pub fn array_token(&self) -> Option<SyntaxToken> {
8767 support::token(&self.syntax, SyntaxKind::ARRAY_KW)
8768 }
8769 #[inline]
8770 pub fn is_token(&self) -> Option<SyntaxToken> {
8771 support::token(&self.syntax, SyntaxKind::IS_KW)
8772 }
8773 #[inline]
8774 pub fn json_token(&self) -> Option<SyntaxToken> {
8775 support::token(&self.syntax, SyntaxKind::JSON_KW)
8776 }
8777 #[inline]
8778 pub fn not_token(&self) -> Option<SyntaxToken> {
8779 support::token(&self.syntax, SyntaxKind::NOT_KW)
8780 }
8781}
8782
8783#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8784pub struct IsNotJsonObject {
8785 pub(crate) syntax: SyntaxNode,
8786}
8787impl IsNotJsonObject {
8788 #[inline]
8789 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
8790 support::child(&self.syntax)
8791 }
8792 #[inline]
8793 pub fn is_token(&self) -> Option<SyntaxToken> {
8794 support::token(&self.syntax, SyntaxKind::IS_KW)
8795 }
8796 #[inline]
8797 pub fn json_token(&self) -> Option<SyntaxToken> {
8798 support::token(&self.syntax, SyntaxKind::JSON_KW)
8799 }
8800 #[inline]
8801 pub fn not_token(&self) -> Option<SyntaxToken> {
8802 support::token(&self.syntax, SyntaxKind::NOT_KW)
8803 }
8804 #[inline]
8805 pub fn object_token(&self) -> Option<SyntaxToken> {
8806 support::token(&self.syntax, SyntaxKind::OBJECT_KW)
8807 }
8808}
8809
8810#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8811pub struct IsNotJsonScalar {
8812 pub(crate) syntax: SyntaxNode,
8813}
8814impl IsNotJsonScalar {
8815 #[inline]
8816 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
8817 support::child(&self.syntax)
8818 }
8819 #[inline]
8820 pub fn is_token(&self) -> Option<SyntaxToken> {
8821 support::token(&self.syntax, SyntaxKind::IS_KW)
8822 }
8823 #[inline]
8824 pub fn json_token(&self) -> Option<SyntaxToken> {
8825 support::token(&self.syntax, SyntaxKind::JSON_KW)
8826 }
8827 #[inline]
8828 pub fn not_token(&self) -> Option<SyntaxToken> {
8829 support::token(&self.syntax, SyntaxKind::NOT_KW)
8830 }
8831 #[inline]
8832 pub fn scalar_token(&self) -> Option<SyntaxToken> {
8833 support::token(&self.syntax, SyntaxKind::SCALAR_KW)
8834 }
8835}
8836
8837#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8838pub struct IsNotJsonValue {
8839 pub(crate) syntax: SyntaxNode,
8840}
8841impl IsNotJsonValue {
8842 #[inline]
8843 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
8844 support::child(&self.syntax)
8845 }
8846 #[inline]
8847 pub fn is_token(&self) -> Option<SyntaxToken> {
8848 support::token(&self.syntax, SyntaxKind::IS_KW)
8849 }
8850 #[inline]
8851 pub fn json_token(&self) -> Option<SyntaxToken> {
8852 support::token(&self.syntax, SyntaxKind::JSON_KW)
8853 }
8854 #[inline]
8855 pub fn not_token(&self) -> Option<SyntaxToken> {
8856 support::token(&self.syntax, SyntaxKind::NOT_KW)
8857 }
8858 #[inline]
8859 pub fn value_token(&self) -> Option<SyntaxToken> {
8860 support::token(&self.syntax, SyntaxKind::VALUE_KW)
8861 }
8862}
8863
8864#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8865pub struct IsNotNormalized {
8866 pub(crate) syntax: SyntaxNode,
8867}
8868impl IsNotNormalized {
8869 #[inline]
8870 pub fn unicode_normal_form(&self) -> Option<UnicodeNormalForm> {
8871 support::child(&self.syntax)
8872 }
8873 #[inline]
8874 pub fn is_token(&self) -> Option<SyntaxToken> {
8875 support::token(&self.syntax, SyntaxKind::IS_KW)
8876 }
8877 #[inline]
8878 pub fn normalized_token(&self) -> Option<SyntaxToken> {
8879 support::token(&self.syntax, SyntaxKind::NORMALIZED_KW)
8880 }
8881 #[inline]
8882 pub fn not_token(&self) -> Option<SyntaxToken> {
8883 support::token(&self.syntax, SyntaxKind::NOT_KW)
8884 }
8885}
8886
8887#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8888pub struct Join {
8889 pub(crate) syntax: SyntaxNode,
8890}
8891impl Join {
8892 #[inline]
8893 pub fn from_item(&self) -> Option<FromItem> {
8894 support::child(&self.syntax)
8895 }
8896 #[inline]
8897 pub fn join_type(&self) -> Option<JoinType> {
8898 support::child(&self.syntax)
8899 }
8900 #[inline]
8901 pub fn on_clause(&self) -> Option<OnClause> {
8902 support::child(&self.syntax)
8903 }
8904 #[inline]
8905 pub fn using_clause(&self) -> Option<JoinUsingClause> {
8906 support::child(&self.syntax)
8907 }
8908 #[inline]
8909 pub fn natural_token(&self) -> Option<SyntaxToken> {
8910 support::token(&self.syntax, SyntaxKind::NATURAL_KW)
8911 }
8912}
8913
8914#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8915pub struct JoinCross {
8916 pub(crate) syntax: SyntaxNode,
8917}
8918impl JoinCross {
8919 #[inline]
8920 pub fn cross_token(&self) -> Option<SyntaxToken> {
8921 support::token(&self.syntax, SyntaxKind::CROSS_KW)
8922 }
8923 #[inline]
8924 pub fn join_token(&self) -> Option<SyntaxToken> {
8925 support::token(&self.syntax, SyntaxKind::JOIN_KW)
8926 }
8927}
8928
8929#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8930pub struct JoinExpr {
8931 pub(crate) syntax: SyntaxNode,
8932}
8933impl JoinExpr {
8934 #[inline]
8935 pub fn from_item(&self) -> Option<FromItem> {
8936 support::child(&self.syntax)
8937 }
8938 #[inline]
8939 pub fn join(&self) -> Option<Join> {
8940 support::child(&self.syntax)
8941 }
8942 #[inline]
8943 pub fn join_expr(&self) -> Option<JoinExpr> {
8944 support::child(&self.syntax)
8945 }
8946}
8947
8948#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8949pub struct JoinFull {
8950 pub(crate) syntax: SyntaxNode,
8951}
8952impl JoinFull {
8953 #[inline]
8954 pub fn full_token(&self) -> Option<SyntaxToken> {
8955 support::token(&self.syntax, SyntaxKind::FULL_KW)
8956 }
8957 #[inline]
8958 pub fn join_token(&self) -> Option<SyntaxToken> {
8959 support::token(&self.syntax, SyntaxKind::JOIN_KW)
8960 }
8961 #[inline]
8962 pub fn outer_token(&self) -> Option<SyntaxToken> {
8963 support::token(&self.syntax, SyntaxKind::OUTER_KW)
8964 }
8965}
8966
8967#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8968pub struct JoinInner {
8969 pub(crate) syntax: SyntaxNode,
8970}
8971impl JoinInner {
8972 #[inline]
8973 pub fn inner_token(&self) -> Option<SyntaxToken> {
8974 support::token(&self.syntax, SyntaxKind::INNER_KW)
8975 }
8976 #[inline]
8977 pub fn join_token(&self) -> Option<SyntaxToken> {
8978 support::token(&self.syntax, SyntaxKind::JOIN_KW)
8979 }
8980}
8981
8982#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8983pub struct JoinLeft {
8984 pub(crate) syntax: SyntaxNode,
8985}
8986impl JoinLeft {
8987 #[inline]
8988 pub fn join_token(&self) -> Option<SyntaxToken> {
8989 support::token(&self.syntax, SyntaxKind::JOIN_KW)
8990 }
8991 #[inline]
8992 pub fn left_token(&self) -> Option<SyntaxToken> {
8993 support::token(&self.syntax, SyntaxKind::LEFT_KW)
8994 }
8995 #[inline]
8996 pub fn outer_token(&self) -> Option<SyntaxToken> {
8997 support::token(&self.syntax, SyntaxKind::OUTER_KW)
8998 }
8999}
9000
9001#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9002pub struct JoinRight {
9003 pub(crate) syntax: SyntaxNode,
9004}
9005impl JoinRight {
9006 #[inline]
9007 pub fn join_token(&self) -> Option<SyntaxToken> {
9008 support::token(&self.syntax, SyntaxKind::JOIN_KW)
9009 }
9010 #[inline]
9011 pub fn outer_token(&self) -> Option<SyntaxToken> {
9012 support::token(&self.syntax, SyntaxKind::OUTER_KW)
9013 }
9014 #[inline]
9015 pub fn right_token(&self) -> Option<SyntaxToken> {
9016 support::token(&self.syntax, SyntaxKind::RIGHT_KW)
9017 }
9018}
9019
9020#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9021pub struct JoinUsingClause {
9022 pub(crate) syntax: SyntaxNode,
9023}
9024impl JoinUsingClause {
9025 #[inline]
9026 pub fn alias(&self) -> Option<Alias> {
9027 support::child(&self.syntax)
9028 }
9029 #[inline]
9030 pub fn column_list(&self) -> Option<ColumnList> {
9031 support::child(&self.syntax)
9032 }
9033 #[inline]
9034 pub fn using_token(&self) -> Option<SyntaxToken> {
9035 support::token(&self.syntax, SyntaxKind::USING_KW)
9036 }
9037}
9038
9039#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9040pub struct JsonArrayAggFn {
9041 pub(crate) syntax: SyntaxNode,
9042}
9043impl JsonArrayAggFn {
9044 #[inline]
9045 pub fn expr(&self) -> Option<Expr> {
9046 support::child(&self.syntax)
9047 }
9048 #[inline]
9049 pub fn json_null_clause(&self) -> Option<JsonNullClause> {
9050 support::child(&self.syntax)
9051 }
9052 #[inline]
9053 pub fn json_returning_clause(&self) -> Option<JsonReturningClause> {
9054 support::child(&self.syntax)
9055 }
9056 #[inline]
9057 pub fn json_select_formats(&self) -> AstChildren<JsonSelectFormat> {
9058 support::children(&self.syntax)
9059 }
9060 #[inline]
9061 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
9062 support::token(&self.syntax, SyntaxKind::L_PAREN)
9063 }
9064 #[inline]
9065 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
9066 support::token(&self.syntax, SyntaxKind::R_PAREN)
9067 }
9068 #[inline]
9069 pub fn json_arrayagg_token(&self) -> Option<SyntaxToken> {
9070 support::token(&self.syntax, SyntaxKind::JSON_ARRAYAGG_KW)
9071 }
9072}
9073
9074#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9075pub struct JsonArrayFn {
9076 pub(crate) syntax: SyntaxNode,
9077}
9078impl JsonArrayFn {
9079 #[inline]
9080 pub fn json_expr_formats(&self) -> AstChildren<JsonExprFormat> {
9081 support::children(&self.syntax)
9082 }
9083 #[inline]
9084 pub fn json_null_clause(&self) -> Option<JsonNullClause> {
9085 support::child(&self.syntax)
9086 }
9087 #[inline]
9088 pub fn json_returning_clause(&self) -> Option<JsonReturningClause> {
9089 support::child(&self.syntax)
9090 }
9091 #[inline]
9092 pub fn json_select_formats(&self) -> AstChildren<JsonSelectFormat> {
9093 support::children(&self.syntax)
9094 }
9095 #[inline]
9096 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
9097 support::token(&self.syntax, SyntaxKind::L_PAREN)
9098 }
9099 #[inline]
9100 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
9101 support::token(&self.syntax, SyntaxKind::R_PAREN)
9102 }
9103 #[inline]
9104 pub fn json_array_token(&self) -> Option<SyntaxToken> {
9105 support::token(&self.syntax, SyntaxKind::JSON_ARRAY_KW)
9106 }
9107}
9108
9109#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9110pub struct JsonBehaviorClause {
9111 pub(crate) syntax: SyntaxNode,
9112}
9113impl JsonBehaviorClause {
9114 #[inline]
9115 pub fn json_behavior(&self) -> Option<JsonBehavior> {
9116 support::child(&self.syntax)
9117 }
9118}
9119
9120#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9121pub struct JsonBehaviorDefault {
9122 pub(crate) syntax: SyntaxNode,
9123}
9124impl JsonBehaviorDefault {
9125 #[inline]
9126 pub fn expr(&self) -> Option<Expr> {
9127 support::child(&self.syntax)
9128 }
9129 #[inline]
9130 pub fn default_token(&self) -> Option<SyntaxToken> {
9131 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
9132 }
9133}
9134
9135#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9136pub struct JsonBehaviorEmptyArray {
9137 pub(crate) syntax: SyntaxNode,
9138}
9139impl JsonBehaviorEmptyArray {
9140 #[inline]
9141 pub fn array_token(&self) -> Option<SyntaxToken> {
9142 support::token(&self.syntax, SyntaxKind::ARRAY_KW)
9143 }
9144 #[inline]
9145 pub fn empty_token(&self) -> Option<SyntaxToken> {
9146 support::token(&self.syntax, SyntaxKind::EMPTY_KW)
9147 }
9148}
9149
9150#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9151pub struct JsonBehaviorEmptyObject {
9152 pub(crate) syntax: SyntaxNode,
9153}
9154impl JsonBehaviorEmptyObject {
9155 #[inline]
9156 pub fn empty_token(&self) -> Option<SyntaxToken> {
9157 support::token(&self.syntax, SyntaxKind::EMPTY_KW)
9158 }
9159 #[inline]
9160 pub fn object_token(&self) -> Option<SyntaxToken> {
9161 support::token(&self.syntax, SyntaxKind::OBJECT_KW)
9162 }
9163}
9164
9165#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9166pub struct JsonBehaviorError {
9167 pub(crate) syntax: SyntaxNode,
9168}
9169impl JsonBehaviorError {
9170 #[inline]
9171 pub fn error_token(&self) -> Option<SyntaxToken> {
9172 support::token(&self.syntax, SyntaxKind::ERROR_KW)
9173 }
9174}
9175
9176#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9177pub struct JsonBehaviorFalse {
9178 pub(crate) syntax: SyntaxNode,
9179}
9180impl JsonBehaviorFalse {
9181 #[inline]
9182 pub fn false_token(&self) -> Option<SyntaxToken> {
9183 support::token(&self.syntax, SyntaxKind::FALSE_KW)
9184 }
9185}
9186
9187#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9188pub struct JsonBehaviorNull {
9189 pub(crate) syntax: SyntaxNode,
9190}
9191impl JsonBehaviorNull {
9192 #[inline]
9193 pub fn null_token(&self) -> Option<SyntaxToken> {
9194 support::token(&self.syntax, SyntaxKind::NULL_KW)
9195 }
9196}
9197
9198#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9199pub struct JsonBehaviorTrue {
9200 pub(crate) syntax: SyntaxNode,
9201}
9202impl JsonBehaviorTrue {
9203 #[inline]
9204 pub fn true_token(&self) -> Option<SyntaxToken> {
9205 support::token(&self.syntax, SyntaxKind::TRUE_KW)
9206 }
9207}
9208
9209#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9210pub struct JsonBehaviorUnknown {
9211 pub(crate) syntax: SyntaxNode,
9212}
9213impl JsonBehaviorUnknown {
9214 #[inline]
9215 pub fn unknown_token(&self) -> Option<SyntaxToken> {
9216 support::token(&self.syntax, SyntaxKind::UNKNOWN_KW)
9217 }
9218}
9219
9220#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9221pub struct JsonEncodingClause {
9222 pub(crate) syntax: SyntaxNode,
9223}
9224impl JsonEncodingClause {
9225 #[inline]
9226 pub fn name_ref(&self) -> Option<NameRef> {
9227 support::child(&self.syntax)
9228 }
9229 #[inline]
9230 pub fn encoding_token(&self) -> Option<SyntaxToken> {
9231 support::token(&self.syntax, SyntaxKind::ENCODING_KW)
9232 }
9233}
9234
9235#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9236pub struct JsonExistsFn {
9237 pub(crate) syntax: SyntaxNode,
9238}
9239impl JsonExistsFn {
9240 #[inline]
9241 pub fn expr(&self) -> Option<Expr> {
9242 support::child(&self.syntax)
9243 }
9244 #[inline]
9245 pub fn json_format_clause(&self) -> Option<JsonFormatClause> {
9246 support::child(&self.syntax)
9247 }
9248 #[inline]
9249 pub fn json_on_error_clause(&self) -> Option<JsonOnErrorClause> {
9250 support::child(&self.syntax)
9251 }
9252 #[inline]
9253 pub fn json_passing_clause(&self) -> Option<JsonPassingClause> {
9254 support::child(&self.syntax)
9255 }
9256 #[inline]
9257 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
9258 support::token(&self.syntax, SyntaxKind::L_PAREN)
9259 }
9260 #[inline]
9261 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
9262 support::token(&self.syntax, SyntaxKind::R_PAREN)
9263 }
9264 #[inline]
9265 pub fn comma_token(&self) -> Option<SyntaxToken> {
9266 support::token(&self.syntax, SyntaxKind::COMMA)
9267 }
9268 #[inline]
9269 pub fn json_exists_token(&self) -> Option<SyntaxToken> {
9270 support::token(&self.syntax, SyntaxKind::JSON_EXISTS_KW)
9271 }
9272}
9273
9274#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9275pub struct JsonExprFormat {
9276 pub(crate) syntax: SyntaxNode,
9277}
9278impl JsonExprFormat {
9279 #[inline]
9280 pub fn expr(&self) -> Option<Expr> {
9281 support::child(&self.syntax)
9282 }
9283 #[inline]
9284 pub fn json_format_clause(&self) -> Option<JsonFormatClause> {
9285 support::child(&self.syntax)
9286 }
9287}
9288
9289#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9290pub struct JsonFn {
9291 pub(crate) syntax: SyntaxNode,
9292}
9293impl JsonFn {
9294 #[inline]
9295 pub fn json_expr_format(&self) -> Option<JsonExprFormat> {
9296 support::child(&self.syntax)
9297 }
9298 #[inline]
9299 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
9300 support::child(&self.syntax)
9301 }
9302 #[inline]
9303 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
9304 support::token(&self.syntax, SyntaxKind::L_PAREN)
9305 }
9306 #[inline]
9307 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
9308 support::token(&self.syntax, SyntaxKind::R_PAREN)
9309 }
9310 #[inline]
9311 pub fn json_token(&self) -> Option<SyntaxToken> {
9312 support::token(&self.syntax, SyntaxKind::JSON_KW)
9313 }
9314}
9315
9316#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9317pub struct JsonFormatClause {
9318 pub(crate) syntax: SyntaxNode,
9319}
9320impl JsonFormatClause {
9321 #[inline]
9322 pub fn json_encoding_clause(&self) -> Option<JsonEncodingClause> {
9323 support::child(&self.syntax)
9324 }
9325 #[inline]
9326 pub fn format_token(&self) -> Option<SyntaxToken> {
9327 support::token(&self.syntax, SyntaxKind::FORMAT_KW)
9328 }
9329 #[inline]
9330 pub fn json_token(&self) -> Option<SyntaxToken> {
9331 support::token(&self.syntax, SyntaxKind::JSON_KW)
9332 }
9333}
9334
9335#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9336pub struct JsonKeyValue {
9337 pub(crate) syntax: SyntaxNode,
9338}
9339impl JsonKeyValue {
9340 #[inline]
9341 pub fn expr(&self) -> Option<Expr> {
9342 support::child(&self.syntax)
9343 }
9344 #[inline]
9345 pub fn json_value_expr(&self) -> Option<JsonValueExpr> {
9346 support::child(&self.syntax)
9347 }
9348 #[inline]
9349 pub fn colon_token(&self) -> Option<SyntaxToken> {
9350 support::token(&self.syntax, SyntaxKind::COLON)
9351 }
9352}
9353
9354#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9355pub struct JsonKeysUniqueClause {
9356 pub(crate) syntax: SyntaxNode,
9357}
9358impl JsonKeysUniqueClause {
9359 #[inline]
9360 pub fn keys_token(&self) -> Option<SyntaxToken> {
9361 support::token(&self.syntax, SyntaxKind::KEYS_KW)
9362 }
9363 #[inline]
9364 pub fn unique_token(&self) -> Option<SyntaxToken> {
9365 support::token(&self.syntax, SyntaxKind::UNIQUE_KW)
9366 }
9367 #[inline]
9368 pub fn with_token(&self) -> Option<SyntaxToken> {
9369 support::token(&self.syntax, SyntaxKind::WITH_KW)
9370 }
9371 #[inline]
9372 pub fn without_token(&self) -> Option<SyntaxToken> {
9373 support::token(&self.syntax, SyntaxKind::WITHOUT_KW)
9374 }
9375}
9376
9377#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9378pub struct JsonNullClause {
9379 pub(crate) syntax: SyntaxNode,
9380}
9381impl JsonNullClause {
9382 #[inline]
9383 pub fn absent_token(&self) -> Option<SyntaxToken> {
9384 support::token(&self.syntax, SyntaxKind::ABSENT_KW)
9385 }
9386 #[inline]
9387 pub fn null_token(&self) -> Option<SyntaxToken> {
9388 support::token(&self.syntax, SyntaxKind::NULL_KW)
9389 }
9390 #[inline]
9391 pub fn on_token(&self) -> Option<SyntaxToken> {
9392 support::token(&self.syntax, SyntaxKind::ON_KW)
9393 }
9394}
9395
9396#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9397pub struct JsonObjectAggFn {
9398 pub(crate) syntax: SyntaxNode,
9399}
9400impl JsonObjectAggFn {
9401 #[inline]
9402 pub fn json_key_value(&self) -> Option<JsonKeyValue> {
9403 support::child(&self.syntax)
9404 }
9405 #[inline]
9406 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
9407 support::child(&self.syntax)
9408 }
9409 #[inline]
9410 pub fn json_null_clause(&self) -> Option<JsonNullClause> {
9411 support::child(&self.syntax)
9412 }
9413 #[inline]
9414 pub fn returning_clause(&self) -> Option<ReturningClause> {
9415 support::child(&self.syntax)
9416 }
9417 #[inline]
9418 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
9419 support::token(&self.syntax, SyntaxKind::L_PAREN)
9420 }
9421 #[inline]
9422 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
9423 support::token(&self.syntax, SyntaxKind::R_PAREN)
9424 }
9425 #[inline]
9426 pub fn json_objectagg_token(&self) -> Option<SyntaxToken> {
9427 support::token(&self.syntax, SyntaxKind::JSON_OBJECTAGG_KW)
9428 }
9429}
9430
9431#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9432pub struct JsonObjectFn {
9433 pub(crate) syntax: SyntaxNode,
9434}
9435impl JsonObjectFn {
9436 #[inline]
9437 pub fn json_key_values(&self) -> AstChildren<JsonKeyValue> {
9438 support::children(&self.syntax)
9439 }
9440 #[inline]
9441 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
9442 support::child(&self.syntax)
9443 }
9444 #[inline]
9445 pub fn json_null_clause(&self) -> Option<JsonNullClause> {
9446 support::child(&self.syntax)
9447 }
9448 #[inline]
9449 pub fn json_returning_clause(&self) -> Option<JsonReturningClause> {
9450 support::child(&self.syntax)
9451 }
9452 #[inline]
9453 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
9454 support::token(&self.syntax, SyntaxKind::L_PAREN)
9455 }
9456 #[inline]
9457 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
9458 support::token(&self.syntax, SyntaxKind::R_PAREN)
9459 }
9460 #[inline]
9461 pub fn json_object_token(&self) -> Option<SyntaxToken> {
9462 support::token(&self.syntax, SyntaxKind::JSON_OBJECT_KW)
9463 }
9464}
9465
9466#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9467pub struct JsonOnEmptyClause {
9468 pub(crate) syntax: SyntaxNode,
9469}
9470impl JsonOnEmptyClause {
9471 #[inline]
9472 pub fn json_behavior(&self) -> Option<JsonBehavior> {
9473 support::child(&self.syntax)
9474 }
9475 #[inline]
9476 pub fn empty_token(&self) -> Option<SyntaxToken> {
9477 support::token(&self.syntax, SyntaxKind::EMPTY_KW)
9478 }
9479 #[inline]
9480 pub fn on_token(&self) -> Option<SyntaxToken> {
9481 support::token(&self.syntax, SyntaxKind::ON_KW)
9482 }
9483}
9484
9485#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9486pub struct JsonOnErrorClause {
9487 pub(crate) syntax: SyntaxNode,
9488}
9489impl JsonOnErrorClause {
9490 #[inline]
9491 pub fn json_behavior(&self) -> Option<JsonBehavior> {
9492 support::child(&self.syntax)
9493 }
9494 #[inline]
9495 pub fn error_token(&self) -> Option<SyntaxToken> {
9496 support::token(&self.syntax, SyntaxKind::ERROR_KW)
9497 }
9498 #[inline]
9499 pub fn on_token(&self) -> Option<SyntaxToken> {
9500 support::token(&self.syntax, SyntaxKind::ON_KW)
9501 }
9502}
9503
9504#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9505pub struct JsonPassingArg {
9506 pub(crate) syntax: SyntaxNode,
9507}
9508impl JsonPassingArg {
9509 #[inline]
9510 pub fn expr(&self) -> Option<Expr> {
9511 support::child(&self.syntax)
9512 }
9513}
9514
9515#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9516pub struct JsonPassingClause {
9517 pub(crate) syntax: SyntaxNode,
9518}
9519impl JsonPassingClause {
9520 #[inline]
9521 pub fn json_passing_args(&self) -> AstChildren<JsonPassingArg> {
9522 support::children(&self.syntax)
9523 }
9524 #[inline]
9525 pub fn passing_token(&self) -> Option<SyntaxToken> {
9526 support::token(&self.syntax, SyntaxKind::PASSING_KW)
9527 }
9528}
9529
9530#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9531pub struct JsonPathClause {
9532 pub(crate) syntax: SyntaxNode,
9533}
9534impl JsonPathClause {
9535 #[inline]
9536 pub fn expr(&self) -> Option<Expr> {
9537 support::child(&self.syntax)
9538 }
9539 #[inline]
9540 pub fn path_token(&self) -> Option<SyntaxToken> {
9541 support::token(&self.syntax, SyntaxKind::PATH_KW)
9542 }
9543}
9544
9545#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9546pub struct JsonQueryFn {
9547 pub(crate) syntax: SyntaxNode,
9548}
9549impl JsonQueryFn {
9550 #[inline]
9551 pub fn expr(&self) -> Option<Expr> {
9552 support::child(&self.syntax)
9553 }
9554 #[inline]
9555 pub fn json_behavior_clause(&self) -> Option<JsonBehaviorClause> {
9556 support::child(&self.syntax)
9557 }
9558 #[inline]
9559 pub fn json_format_clause(&self) -> Option<JsonFormatClause> {
9560 support::child(&self.syntax)
9561 }
9562 #[inline]
9563 pub fn json_passing_clause(&self) -> Option<JsonPassingClause> {
9564 support::child(&self.syntax)
9565 }
9566 #[inline]
9567 pub fn json_quotes_clause(&self) -> Option<JsonQuotesClause> {
9568 support::child(&self.syntax)
9569 }
9570 #[inline]
9571 pub fn json_returning_clause(&self) -> Option<JsonReturningClause> {
9572 support::child(&self.syntax)
9573 }
9574 #[inline]
9575 pub fn json_wrapper_behavior_clause(&self) -> Option<JsonWrapperBehaviorClause> {
9576 support::child(&self.syntax)
9577 }
9578 #[inline]
9579 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
9580 support::token(&self.syntax, SyntaxKind::L_PAREN)
9581 }
9582 #[inline]
9583 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
9584 support::token(&self.syntax, SyntaxKind::R_PAREN)
9585 }
9586 #[inline]
9587 pub fn comma_token(&self) -> Option<SyntaxToken> {
9588 support::token(&self.syntax, SyntaxKind::COMMA)
9589 }
9590 #[inline]
9591 pub fn json_query_token(&self) -> Option<SyntaxToken> {
9592 support::token(&self.syntax, SyntaxKind::JSON_QUERY_KW)
9593 }
9594}
9595
9596#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9597pub struct JsonQuotesClause {
9598 pub(crate) syntax: SyntaxNode,
9599}
9600impl JsonQuotesClause {
9601 #[inline]
9602 pub fn keep_token(&self) -> Option<SyntaxToken> {
9603 support::token(&self.syntax, SyntaxKind::KEEP_KW)
9604 }
9605 #[inline]
9606 pub fn omit_token(&self) -> Option<SyntaxToken> {
9607 support::token(&self.syntax, SyntaxKind::OMIT_KW)
9608 }
9609 #[inline]
9610 pub fn quotes_token(&self) -> Option<SyntaxToken> {
9611 support::token(&self.syntax, SyntaxKind::QUOTES_KW)
9612 }
9613}
9614
9615#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9616pub struct JsonReturningClause {
9617 pub(crate) syntax: SyntaxNode,
9618}
9619impl JsonReturningClause {
9620 #[inline]
9621 pub fn ty(&self) -> Option<Type> {
9622 support::child(&self.syntax)
9623 }
9624 #[inline]
9625 pub fn returning_token(&self) -> Option<SyntaxToken> {
9626 support::token(&self.syntax, SyntaxKind::RETURNING_KW)
9627 }
9628}
9629
9630#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9631pub struct JsonScalarFn {
9632 pub(crate) syntax: SyntaxNode,
9633}
9634impl JsonScalarFn {
9635 #[inline]
9636 pub fn expr(&self) -> Option<Expr> {
9637 support::child(&self.syntax)
9638 }
9639 #[inline]
9640 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
9641 support::token(&self.syntax, SyntaxKind::L_PAREN)
9642 }
9643 #[inline]
9644 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
9645 support::token(&self.syntax, SyntaxKind::R_PAREN)
9646 }
9647 #[inline]
9648 pub fn json_scalar_token(&self) -> Option<SyntaxToken> {
9649 support::token(&self.syntax, SyntaxKind::JSON_SCALAR_KW)
9650 }
9651}
9652
9653#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9654pub struct JsonSelectFormat {
9655 pub(crate) syntax: SyntaxNode,
9656}
9657impl JsonSelectFormat {
9658 #[inline]
9659 pub fn json_format_clause(&self) -> Option<JsonFormatClause> {
9660 support::child(&self.syntax)
9661 }
9662 #[inline]
9663 pub fn select_variant(&self) -> Option<SelectVariant> {
9664 support::child(&self.syntax)
9665 }
9666}
9667
9668#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9669pub struct JsonSerializeFn {
9670 pub(crate) syntax: SyntaxNode,
9671}
9672impl JsonSerializeFn {
9673 #[inline]
9674 pub fn expr(&self) -> Option<Expr> {
9675 support::child(&self.syntax)
9676 }
9677 #[inline]
9678 pub fn json_format_clause(&self) -> Option<JsonFormatClause> {
9679 support::child(&self.syntax)
9680 }
9681 #[inline]
9682 pub fn json_returning_clause(&self) -> Option<JsonReturningClause> {
9683 support::child(&self.syntax)
9684 }
9685 #[inline]
9686 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
9687 support::token(&self.syntax, SyntaxKind::L_PAREN)
9688 }
9689 #[inline]
9690 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
9691 support::token(&self.syntax, SyntaxKind::R_PAREN)
9692 }
9693 #[inline]
9694 pub fn json_serialize_token(&self) -> Option<SyntaxToken> {
9695 support::token(&self.syntax, SyntaxKind::JSON_SERIALIZE_KW)
9696 }
9697}
9698
9699#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9700pub struct JsonTable {
9701 pub(crate) syntax: SyntaxNode,
9702}
9703impl JsonTable {
9704 #[inline]
9705 pub fn expr(&self) -> Option<Expr> {
9706 support::child(&self.syntax)
9707 }
9708 #[inline]
9709 pub fn json_format_clause(&self) -> Option<JsonFormatClause> {
9710 support::child(&self.syntax)
9711 }
9712 #[inline]
9713 pub fn json_on_error_clause(&self) -> Option<JsonOnErrorClause> {
9714 support::child(&self.syntax)
9715 }
9716 #[inline]
9717 pub fn json_passing_clause(&self) -> Option<JsonPassingClause> {
9718 support::child(&self.syntax)
9719 }
9720 #[inline]
9721 pub fn json_table_column_list(&self) -> Option<JsonTableColumnList> {
9722 support::child(&self.syntax)
9723 }
9724 #[inline]
9725 pub fn name(&self) -> Option<Name> {
9726 support::child(&self.syntax)
9727 }
9728 #[inline]
9729 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
9730 support::token(&self.syntax, SyntaxKind::L_PAREN)
9731 }
9732 #[inline]
9733 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
9734 support::token(&self.syntax, SyntaxKind::R_PAREN)
9735 }
9736 #[inline]
9737 pub fn comma_token(&self) -> Option<SyntaxToken> {
9738 support::token(&self.syntax, SyntaxKind::COMMA)
9739 }
9740 #[inline]
9741 pub fn as_token(&self) -> Option<SyntaxToken> {
9742 support::token(&self.syntax, SyntaxKind::AS_KW)
9743 }
9744 #[inline]
9745 pub fn json_table_token(&self) -> Option<SyntaxToken> {
9746 support::token(&self.syntax, SyntaxKind::JSON_TABLE_KW)
9747 }
9748}
9749
9750#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9751pub struct JsonTableColumn {
9752 pub(crate) syntax: SyntaxNode,
9753}
9754impl JsonTableColumn {
9755 #[inline]
9756 pub fn expr(&self) -> Option<Expr> {
9757 support::child(&self.syntax)
9758 }
9759 #[inline]
9760 pub fn json_format_clause(&self) -> Option<JsonFormatClause> {
9761 support::child(&self.syntax)
9762 }
9763 #[inline]
9764 pub fn json_on_empty_clause(&self) -> Option<JsonOnEmptyClause> {
9765 support::child(&self.syntax)
9766 }
9767 #[inline]
9768 pub fn json_on_error_clause(&self) -> Option<JsonOnErrorClause> {
9769 support::child(&self.syntax)
9770 }
9771 #[inline]
9772 pub fn json_path_clause(&self) -> Option<JsonPathClause> {
9773 support::child(&self.syntax)
9774 }
9775 #[inline]
9776 pub fn json_quotes_clause(&self) -> Option<JsonQuotesClause> {
9777 support::child(&self.syntax)
9778 }
9779 #[inline]
9780 pub fn json_table_column_list(&self) -> Option<JsonTableColumnList> {
9781 support::child(&self.syntax)
9782 }
9783 #[inline]
9784 pub fn json_wrapper_behavior_clause(&self) -> Option<JsonWrapperBehaviorClause> {
9785 support::child(&self.syntax)
9786 }
9787 #[inline]
9788 pub fn name(&self) -> Option<Name> {
9789 support::child(&self.syntax)
9790 }
9791 #[inline]
9792 pub fn ty(&self) -> Option<Type> {
9793 support::child(&self.syntax)
9794 }
9795 #[inline]
9796 pub fn as_token(&self) -> Option<SyntaxToken> {
9797 support::token(&self.syntax, SyntaxKind::AS_KW)
9798 }
9799 #[inline]
9800 pub fn exists_token(&self) -> Option<SyntaxToken> {
9801 support::token(&self.syntax, SyntaxKind::EXISTS_KW)
9802 }
9803 #[inline]
9804 pub fn for_token(&self) -> Option<SyntaxToken> {
9805 support::token(&self.syntax, SyntaxKind::FOR_KW)
9806 }
9807 #[inline]
9808 pub fn nested_token(&self) -> Option<SyntaxToken> {
9809 support::token(&self.syntax, SyntaxKind::NESTED_KW)
9810 }
9811 #[inline]
9812 pub fn ordinality_token(&self) -> Option<SyntaxToken> {
9813 support::token(&self.syntax, SyntaxKind::ORDINALITY_KW)
9814 }
9815 #[inline]
9816 pub fn path_token(&self) -> Option<SyntaxToken> {
9817 support::token(&self.syntax, SyntaxKind::PATH_KW)
9818 }
9819}
9820
9821#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9822pub struct JsonTableColumnList {
9823 pub(crate) syntax: SyntaxNode,
9824}
9825impl JsonTableColumnList {
9826 #[inline]
9827 pub fn json_table_columns(&self) -> AstChildren<JsonTableColumn> {
9828 support::children(&self.syntax)
9829 }
9830 #[inline]
9831 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
9832 support::token(&self.syntax, SyntaxKind::L_PAREN)
9833 }
9834 #[inline]
9835 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
9836 support::token(&self.syntax, SyntaxKind::R_PAREN)
9837 }
9838 #[inline]
9839 pub fn columns_token(&self) -> Option<SyntaxToken> {
9840 support::token(&self.syntax, SyntaxKind::COLUMNS_KW)
9841 }
9842}
9843
9844#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9845pub struct JsonValueExpr {
9846 pub(crate) syntax: SyntaxNode,
9847}
9848impl JsonValueExpr {
9849 #[inline]
9850 pub fn expr(&self) -> Option<Expr> {
9851 support::child(&self.syntax)
9852 }
9853 #[inline]
9854 pub fn json_format_clause(&self) -> Option<JsonFormatClause> {
9855 support::child(&self.syntax)
9856 }
9857}
9858
9859#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9860pub struct JsonValueFn {
9861 pub(crate) syntax: SyntaxNode,
9862}
9863impl JsonValueFn {
9864 #[inline]
9865 pub fn expr(&self) -> Option<Expr> {
9866 support::child(&self.syntax)
9867 }
9868 #[inline]
9869 pub fn json_behavior_clause(&self) -> Option<JsonBehaviorClause> {
9870 support::child(&self.syntax)
9871 }
9872 #[inline]
9873 pub fn json_format_clause(&self) -> Option<JsonFormatClause> {
9874 support::child(&self.syntax)
9875 }
9876 #[inline]
9877 pub fn json_passing_clause(&self) -> Option<JsonPassingClause> {
9878 support::child(&self.syntax)
9879 }
9880 #[inline]
9881 pub fn json_returning_clause(&self) -> Option<JsonReturningClause> {
9882 support::child(&self.syntax)
9883 }
9884 #[inline]
9885 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
9886 support::token(&self.syntax, SyntaxKind::L_PAREN)
9887 }
9888 #[inline]
9889 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
9890 support::token(&self.syntax, SyntaxKind::R_PAREN)
9891 }
9892 #[inline]
9893 pub fn comma_token(&self) -> Option<SyntaxToken> {
9894 support::token(&self.syntax, SyntaxKind::COMMA)
9895 }
9896 #[inline]
9897 pub fn json_value_token(&self) -> Option<SyntaxToken> {
9898 support::token(&self.syntax, SyntaxKind::JSON_VALUE_KW)
9899 }
9900}
9901
9902#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9903pub struct JsonWrapperBehaviorClause {
9904 pub(crate) syntax: SyntaxNode,
9905}
9906impl JsonWrapperBehaviorClause {
9907 #[inline]
9908 pub fn array_token(&self) -> Option<SyntaxToken> {
9909 support::token(&self.syntax, SyntaxKind::ARRAY_KW)
9910 }
9911 #[inline]
9912 pub fn conditional_token(&self) -> Option<SyntaxToken> {
9913 support::token(&self.syntax, SyntaxKind::CONDITIONAL_KW)
9914 }
9915 #[inline]
9916 pub fn unconditional_token(&self) -> Option<SyntaxToken> {
9917 support::token(&self.syntax, SyntaxKind::UNCONDITIONAL_KW)
9918 }
9919 #[inline]
9920 pub fn with_token(&self) -> Option<SyntaxToken> {
9921 support::token(&self.syntax, SyntaxKind::WITH_KW)
9922 }
9923 #[inline]
9924 pub fn without_token(&self) -> Option<SyntaxToken> {
9925 support::token(&self.syntax, SyntaxKind::WITHOUT_KW)
9926 }
9927 #[inline]
9928 pub fn wrapper_token(&self) -> Option<SyntaxToken> {
9929 support::token(&self.syntax, SyntaxKind::WRAPPER_KW)
9930 }
9931}
9932
9933#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9934pub struct LanguageFuncOption {
9935 pub(crate) syntax: SyntaxNode,
9936}
9937impl LanguageFuncOption {
9938 #[inline]
9939 pub fn name_ref(&self) -> Option<NameRef> {
9940 support::child(&self.syntax)
9941 }
9942 #[inline]
9943 pub fn language_token(&self) -> Option<SyntaxToken> {
9944 support::token(&self.syntax, SyntaxKind::LANGUAGE_KW)
9945 }
9946}
9947
9948#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9949pub struct LeakproofFuncOption {
9950 pub(crate) syntax: SyntaxNode,
9951}
9952impl LeakproofFuncOption {
9953 #[inline]
9954 pub fn leakproof_token(&self) -> Option<SyntaxToken> {
9955 support::token(&self.syntax, SyntaxKind::LEAKPROOF_KW)
9956 }
9957 #[inline]
9958 pub fn not_token(&self) -> Option<SyntaxToken> {
9959 support::token(&self.syntax, SyntaxKind::NOT_KW)
9960 }
9961}
9962
9963#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9964pub struct LikeClause {
9965 pub(crate) syntax: SyntaxNode,
9966}
9967impl LikeClause {
9968 #[inline]
9969 pub fn like_options(&self) -> AstChildren<LikeOption> {
9970 support::children(&self.syntax)
9971 }
9972 #[inline]
9973 pub fn path(&self) -> Option<Path> {
9974 support::child(&self.syntax)
9975 }
9976 #[inline]
9977 pub fn like_token(&self) -> Option<SyntaxToken> {
9978 support::token(&self.syntax, SyntaxKind::LIKE_KW)
9979 }
9980}
9981
9982#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9983pub struct LikeOption {
9984 pub(crate) syntax: SyntaxNode,
9985}
9986impl LikeOption {
9987 #[inline]
9988 pub fn all_token(&self) -> Option<SyntaxToken> {
9989 support::token(&self.syntax, SyntaxKind::ALL_KW)
9990 }
9991 #[inline]
9992 pub fn comments_token(&self) -> Option<SyntaxToken> {
9993 support::token(&self.syntax, SyntaxKind::COMMENTS_KW)
9994 }
9995 #[inline]
9996 pub fn compression_token(&self) -> Option<SyntaxToken> {
9997 support::token(&self.syntax, SyntaxKind::COMPRESSION_KW)
9998 }
9999 #[inline]
10000 pub fn constraints_token(&self) -> Option<SyntaxToken> {
10001 support::token(&self.syntax, SyntaxKind::CONSTRAINTS_KW)
10002 }
10003 #[inline]
10004 pub fn defaults_token(&self) -> Option<SyntaxToken> {
10005 support::token(&self.syntax, SyntaxKind::DEFAULTS_KW)
10006 }
10007 #[inline]
10008 pub fn excluding_token(&self) -> Option<SyntaxToken> {
10009 support::token(&self.syntax, SyntaxKind::EXCLUDING_KW)
10010 }
10011 #[inline]
10012 pub fn generated_token(&self) -> Option<SyntaxToken> {
10013 support::token(&self.syntax, SyntaxKind::GENERATED_KW)
10014 }
10015 #[inline]
10016 pub fn identity_token(&self) -> Option<SyntaxToken> {
10017 support::token(&self.syntax, SyntaxKind::IDENTITY_KW)
10018 }
10019 #[inline]
10020 pub fn including_token(&self) -> Option<SyntaxToken> {
10021 support::token(&self.syntax, SyntaxKind::INCLUDING_KW)
10022 }
10023 #[inline]
10024 pub fn indexes_token(&self) -> Option<SyntaxToken> {
10025 support::token(&self.syntax, SyntaxKind::INDEXES_KW)
10026 }
10027 #[inline]
10028 pub fn statistics_token(&self) -> Option<SyntaxToken> {
10029 support::token(&self.syntax, SyntaxKind::STATISTICS_KW)
10030 }
10031 #[inline]
10032 pub fn storage_token(&self) -> Option<SyntaxToken> {
10033 support::token(&self.syntax, SyntaxKind::STORAGE_KW)
10034 }
10035}
10036
10037#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10038pub struct LimitClause {
10039 pub(crate) syntax: SyntaxNode,
10040}
10041impl LimitClause {
10042 #[inline]
10043 pub fn expr(&self) -> Option<Expr> {
10044 support::child(&self.syntax)
10045 }
10046 #[inline]
10047 pub fn all_token(&self) -> Option<SyntaxToken> {
10048 support::token(&self.syntax, SyntaxKind::ALL_KW)
10049 }
10050 #[inline]
10051 pub fn limit_token(&self) -> Option<SyntaxToken> {
10052 support::token(&self.syntax, SyntaxKind::LIMIT_KW)
10053 }
10054}
10055
10056#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10057pub struct LimitToTables {
10058 pub(crate) syntax: SyntaxNode,
10059}
10060impl LimitToTables {
10061 #[inline]
10062 pub fn name_refs(&self) -> AstChildren<NameRef> {
10063 support::children(&self.syntax)
10064 }
10065 #[inline]
10066 pub fn limit_token(&self) -> Option<SyntaxToken> {
10067 support::token(&self.syntax, SyntaxKind::LIMIT_KW)
10068 }
10069 #[inline]
10070 pub fn to_token(&self) -> Option<SyntaxToken> {
10071 support::token(&self.syntax, SyntaxKind::TO_KW)
10072 }
10073}
10074
10075#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10076pub struct Listen {
10077 pub(crate) syntax: SyntaxNode,
10078}
10079impl Listen {
10080 #[inline]
10081 pub fn name(&self) -> Option<Name> {
10082 support::child(&self.syntax)
10083 }
10084 #[inline]
10085 pub fn listen_token(&self) -> Option<SyntaxToken> {
10086 support::token(&self.syntax, SyntaxKind::LISTEN_KW)
10087 }
10088}
10089
10090#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10091pub struct Literal {
10092 pub(crate) syntax: SyntaxNode,
10093}
10094impl Literal {}
10095
10096#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10097pub struct Load {
10098 pub(crate) syntax: SyntaxNode,
10099}
10100impl Load {
10101 #[inline]
10102 pub fn literal(&self) -> Option<Literal> {
10103 support::child(&self.syntax)
10104 }
10105 #[inline]
10106 pub fn load_token(&self) -> Option<SyntaxToken> {
10107 support::token(&self.syntax, SyntaxKind::LOAD_KW)
10108 }
10109}
10110
10111#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10112pub struct Lock {
10113 pub(crate) syntax: SyntaxNode,
10114}
10115impl Lock {
10116 #[inline]
10117 pub fn table_list(&self) -> Option<TableList> {
10118 support::child(&self.syntax)
10119 }
10120 #[inline]
10121 pub fn lock_token(&self) -> Option<SyntaxToken> {
10122 support::token(&self.syntax, SyntaxKind::LOCK_KW)
10123 }
10124 #[inline]
10125 pub fn table_token(&self) -> Option<SyntaxToken> {
10126 support::token(&self.syntax, SyntaxKind::TABLE_KW)
10127 }
10128}
10129
10130#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10131pub struct LockingClause {
10132 pub(crate) syntax: SyntaxNode,
10133}
10134impl LockingClause {
10135 #[inline]
10136 pub fn for_token(&self) -> Option<SyntaxToken> {
10137 support::token(&self.syntax, SyntaxKind::FOR_KW)
10138 }
10139}
10140
10141#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10142pub struct Lteq {
10143 pub(crate) syntax: SyntaxNode,
10144}
10145impl Lteq {
10146 #[inline]
10147 pub fn l_angle_token(&self) -> Option<SyntaxToken> {
10148 support::token(&self.syntax, SyntaxKind::L_ANGLE)
10149 }
10150 #[inline]
10151 pub fn eq_token(&self) -> Option<SyntaxToken> {
10152 support::token(&self.syntax, SyntaxKind::EQ)
10153 }
10154}
10155
10156#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10157pub struct MatchFull {
10158 pub(crate) syntax: SyntaxNode,
10159}
10160impl MatchFull {
10161 #[inline]
10162 pub fn full_token(&self) -> Option<SyntaxToken> {
10163 support::token(&self.syntax, SyntaxKind::FULL_KW)
10164 }
10165 #[inline]
10166 pub fn match_token(&self) -> Option<SyntaxToken> {
10167 support::token(&self.syntax, SyntaxKind::MATCH_KW)
10168 }
10169}
10170
10171#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10172pub struct MatchPartial {
10173 pub(crate) syntax: SyntaxNode,
10174}
10175impl MatchPartial {
10176 #[inline]
10177 pub fn match_token(&self) -> Option<SyntaxToken> {
10178 support::token(&self.syntax, SyntaxKind::MATCH_KW)
10179 }
10180 #[inline]
10181 pub fn partial_token(&self) -> Option<SyntaxToken> {
10182 support::token(&self.syntax, SyntaxKind::PARTIAL_KW)
10183 }
10184}
10185
10186#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10187pub struct MatchSimple {
10188 pub(crate) syntax: SyntaxNode,
10189}
10190impl MatchSimple {
10191 #[inline]
10192 pub fn match_token(&self) -> Option<SyntaxToken> {
10193 support::token(&self.syntax, SyntaxKind::MATCH_KW)
10194 }
10195 #[inline]
10196 pub fn simple_token(&self) -> Option<SyntaxToken> {
10197 support::token(&self.syntax, SyntaxKind::SIMPLE_KW)
10198 }
10199}
10200
10201#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10202pub struct Materialized {
10203 pub(crate) syntax: SyntaxNode,
10204}
10205impl Materialized {
10206 #[inline]
10207 pub fn materialized_token(&self) -> Option<SyntaxToken> {
10208 support::token(&self.syntax, SyntaxKind::MATERIALIZED_KW)
10209 }
10210}
10211
10212#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10213pub struct Merge {
10214 pub(crate) syntax: SyntaxNode,
10215}
10216impl Merge {
10217 #[inline]
10218 pub fn alias(&self) -> Option<Alias> {
10219 support::child(&self.syntax)
10220 }
10221 #[inline]
10222 pub fn merge_when_clauses(&self) -> AstChildren<MergeWhenClause> {
10223 support::children(&self.syntax)
10224 }
10225 #[inline]
10226 pub fn relation_name(&self) -> Option<RelationName> {
10227 support::child(&self.syntax)
10228 }
10229 #[inline]
10230 pub fn using_on_clause(&self) -> Option<UsingOnClause> {
10231 support::child(&self.syntax)
10232 }
10233 #[inline]
10234 pub fn into_token(&self) -> Option<SyntaxToken> {
10235 support::token(&self.syntax, SyntaxKind::INTO_KW)
10236 }
10237 #[inline]
10238 pub fn merge_token(&self) -> Option<SyntaxToken> {
10239 support::token(&self.syntax, SyntaxKind::MERGE_KW)
10240 }
10241}
10242
10243#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10244pub struct MergeDelete {
10245 pub(crate) syntax: SyntaxNode,
10246}
10247impl MergeDelete {
10248 #[inline]
10249 pub fn delete_token(&self) -> Option<SyntaxToken> {
10250 support::token(&self.syntax, SyntaxKind::DELETE_KW)
10251 }
10252}
10253
10254#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10255pub struct MergeDoNothing {
10256 pub(crate) syntax: SyntaxNode,
10257}
10258impl MergeDoNothing {
10259 #[inline]
10260 pub fn do_token(&self) -> Option<SyntaxToken> {
10261 support::token(&self.syntax, SyntaxKind::DO_KW)
10262 }
10263 #[inline]
10264 pub fn nothing_token(&self) -> Option<SyntaxToken> {
10265 support::token(&self.syntax, SyntaxKind::NOTHING_KW)
10266 }
10267}
10268
10269#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10270pub struct MergeInsert {
10271 pub(crate) syntax: SyntaxNode,
10272}
10273impl MergeInsert {
10274 #[inline]
10275 pub fn column_list(&self) -> Option<ColumnList> {
10276 support::child(&self.syntax)
10277 }
10278 #[inline]
10279 pub fn values(&self) -> Option<Values> {
10280 support::child(&self.syntax)
10281 }
10282 #[inline]
10283 pub fn default_token(&self) -> Option<SyntaxToken> {
10284 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
10285 }
10286 #[inline]
10287 pub fn insert_token(&self) -> Option<SyntaxToken> {
10288 support::token(&self.syntax, SyntaxKind::INSERT_KW)
10289 }
10290 #[inline]
10291 pub fn overriding_token(&self) -> Option<SyntaxToken> {
10292 support::token(&self.syntax, SyntaxKind::OVERRIDING_KW)
10293 }
10294 #[inline]
10295 pub fn system_token(&self) -> Option<SyntaxToken> {
10296 support::token(&self.syntax, SyntaxKind::SYSTEM_KW)
10297 }
10298 #[inline]
10299 pub fn user_token(&self) -> Option<SyntaxToken> {
10300 support::token(&self.syntax, SyntaxKind::USER_KW)
10301 }
10302 #[inline]
10303 pub fn values_token(&self) -> Option<SyntaxToken> {
10304 support::token(&self.syntax, SyntaxKind::VALUES_KW)
10305 }
10306}
10307
10308#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10309pub struct MergePartitions {
10310 pub(crate) syntax: SyntaxNode,
10311}
10312impl MergePartitions {
10313 #[inline]
10314 pub fn merge_token(&self) -> Option<SyntaxToken> {
10315 support::token(&self.syntax, SyntaxKind::MERGE_KW)
10316 }
10317 #[inline]
10318 pub fn partitions_token(&self) -> Option<SyntaxToken> {
10319 support::token(&self.syntax, SyntaxKind::PARTITIONS_KW)
10320 }
10321}
10322
10323#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10324pub struct MergeUpdate {
10325 pub(crate) syntax: SyntaxNode,
10326}
10327impl MergeUpdate {
10328 #[inline]
10329 pub fn set_clause(&self) -> Option<SetClause> {
10330 support::child(&self.syntax)
10331 }
10332 #[inline]
10333 pub fn set_token(&self) -> Option<SyntaxToken> {
10334 support::token(&self.syntax, SyntaxKind::SET_KW)
10335 }
10336 #[inline]
10337 pub fn update_token(&self) -> Option<SyntaxToken> {
10338 support::token(&self.syntax, SyntaxKind::UPDATE_KW)
10339 }
10340}
10341
10342#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10343pub struct MergeWhenMatched {
10344 pub(crate) syntax: SyntaxNode,
10345}
10346impl MergeWhenMatched {
10347 #[inline]
10348 pub fn expr(&self) -> Option<Expr> {
10349 support::child(&self.syntax)
10350 }
10351 #[inline]
10352 pub fn merge_action(&self) -> Option<MergeAction> {
10353 support::child(&self.syntax)
10354 }
10355 #[inline]
10356 pub fn and_token(&self) -> Option<SyntaxToken> {
10357 support::token(&self.syntax, SyntaxKind::AND_KW)
10358 }
10359 #[inline]
10360 pub fn matched_token(&self) -> Option<SyntaxToken> {
10361 support::token(&self.syntax, SyntaxKind::MATCHED_KW)
10362 }
10363 #[inline]
10364 pub fn then_token(&self) -> Option<SyntaxToken> {
10365 support::token(&self.syntax, SyntaxKind::THEN_KW)
10366 }
10367 #[inline]
10368 pub fn when_token(&self) -> Option<SyntaxToken> {
10369 support::token(&self.syntax, SyntaxKind::WHEN_KW)
10370 }
10371}
10372
10373#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10374pub struct MergeWhenNotMatchedSource {
10375 pub(crate) syntax: SyntaxNode,
10376}
10377impl MergeWhenNotMatchedSource {
10378 #[inline]
10379 pub fn expr(&self) -> Option<Expr> {
10380 support::child(&self.syntax)
10381 }
10382 #[inline]
10383 pub fn merge_action(&self) -> Option<MergeAction> {
10384 support::child(&self.syntax)
10385 }
10386 #[inline]
10387 pub fn and_token(&self) -> Option<SyntaxToken> {
10388 support::token(&self.syntax, SyntaxKind::AND_KW)
10389 }
10390 #[inline]
10391 pub fn by_token(&self) -> Option<SyntaxToken> {
10392 support::token(&self.syntax, SyntaxKind::BY_KW)
10393 }
10394 #[inline]
10395 pub fn matched_token(&self) -> Option<SyntaxToken> {
10396 support::token(&self.syntax, SyntaxKind::MATCHED_KW)
10397 }
10398 #[inline]
10399 pub fn not_token(&self) -> Option<SyntaxToken> {
10400 support::token(&self.syntax, SyntaxKind::NOT_KW)
10401 }
10402 #[inline]
10403 pub fn source_token(&self) -> Option<SyntaxToken> {
10404 support::token(&self.syntax, SyntaxKind::SOURCE_KW)
10405 }
10406 #[inline]
10407 pub fn then_token(&self) -> Option<SyntaxToken> {
10408 support::token(&self.syntax, SyntaxKind::THEN_KW)
10409 }
10410 #[inline]
10411 pub fn when_token(&self) -> Option<SyntaxToken> {
10412 support::token(&self.syntax, SyntaxKind::WHEN_KW)
10413 }
10414}
10415
10416#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10417pub struct MergeWhenNotMatchedTarget {
10418 pub(crate) syntax: SyntaxNode,
10419}
10420impl MergeWhenNotMatchedTarget {
10421 #[inline]
10422 pub fn expr(&self) -> Option<Expr> {
10423 support::child(&self.syntax)
10424 }
10425 #[inline]
10426 pub fn merge_action(&self) -> Option<MergeAction> {
10427 support::child(&self.syntax)
10428 }
10429 #[inline]
10430 pub fn and_token(&self) -> Option<SyntaxToken> {
10431 support::token(&self.syntax, SyntaxKind::AND_KW)
10432 }
10433 #[inline]
10434 pub fn by_token(&self) -> Option<SyntaxToken> {
10435 support::token(&self.syntax, SyntaxKind::BY_KW)
10436 }
10437 #[inline]
10438 pub fn matched_token(&self) -> Option<SyntaxToken> {
10439 support::token(&self.syntax, SyntaxKind::MATCHED_KW)
10440 }
10441 #[inline]
10442 pub fn not_token(&self) -> Option<SyntaxToken> {
10443 support::token(&self.syntax, SyntaxKind::NOT_KW)
10444 }
10445 #[inline]
10446 pub fn target_token(&self) -> Option<SyntaxToken> {
10447 support::token(&self.syntax, SyntaxKind::TARGET_KW)
10448 }
10449 #[inline]
10450 pub fn then_token(&self) -> Option<SyntaxToken> {
10451 support::token(&self.syntax, SyntaxKind::THEN_KW)
10452 }
10453 #[inline]
10454 pub fn when_token(&self) -> Option<SyntaxToken> {
10455 support::token(&self.syntax, SyntaxKind::WHEN_KW)
10456 }
10457}
10458
10459#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10460pub struct Move {
10461 pub(crate) syntax: SyntaxNode,
10462}
10463impl Move {
10464 #[inline]
10465 pub fn name_ref(&self) -> Option<NameRef> {
10466 support::child(&self.syntax)
10467 }
10468 #[inline]
10469 pub fn from_token(&self) -> Option<SyntaxToken> {
10470 support::token(&self.syntax, SyntaxKind::FROM_KW)
10471 }
10472 #[inline]
10473 pub fn in_token(&self) -> Option<SyntaxToken> {
10474 support::token(&self.syntax, SyntaxKind::IN_KW)
10475 }
10476 #[inline]
10477 pub fn move_token(&self) -> Option<SyntaxToken> {
10478 support::token(&self.syntax, SyntaxKind::MOVE_KW)
10479 }
10480}
10481
10482#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10483pub struct Name {
10484 pub(crate) syntax: SyntaxNode,
10485}
10486impl Name {
10487 #[inline]
10488 pub fn ident_token(&self) -> Option<SyntaxToken> {
10489 support::token(&self.syntax, SyntaxKind::IDENT)
10490 }
10491}
10492
10493#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10494pub struct NameRef {
10495 pub(crate) syntax: SyntaxNode,
10496}
10497impl NameRef {
10498 #[inline]
10499 pub fn ident_token(&self) -> Option<SyntaxToken> {
10500 support::token(&self.syntax, SyntaxKind::IDENT)
10501 }
10502}
10503
10504#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10505pub struct NamedArg {
10506 pub(crate) syntax: SyntaxNode,
10507}
10508impl NamedArg {
10509 #[inline]
10510 pub fn expr(&self) -> Option<Expr> {
10511 support::child(&self.syntax)
10512 }
10513 #[inline]
10514 pub fn fat_arrow(&self) -> Option<FatArrow> {
10515 support::child(&self.syntax)
10516 }
10517 #[inline]
10518 pub fn name_ref(&self) -> Option<NameRef> {
10519 support::child(&self.syntax)
10520 }
10521}
10522
10523#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10524pub struct Neq {
10525 pub(crate) syntax: SyntaxNode,
10526}
10527impl Neq {
10528 #[inline]
10529 pub fn bang_token(&self) -> Option<SyntaxToken> {
10530 support::token(&self.syntax, SyntaxKind::BANG)
10531 }
10532 #[inline]
10533 pub fn eq_token(&self) -> Option<SyntaxToken> {
10534 support::token(&self.syntax, SyntaxKind::EQ)
10535 }
10536}
10537
10538#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10539pub struct Neqb {
10540 pub(crate) syntax: SyntaxNode,
10541}
10542impl Neqb {
10543 #[inline]
10544 pub fn l_angle_token(&self) -> Option<SyntaxToken> {
10545 support::token(&self.syntax, SyntaxKind::L_ANGLE)
10546 }
10547 #[inline]
10548 pub fn r_angle_token(&self) -> Option<SyntaxToken> {
10549 support::token(&self.syntax, SyntaxKind::R_ANGLE)
10550 }
10551}
10552
10553#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10554pub struct NoAction {
10555 pub(crate) syntax: SyntaxNode,
10556}
10557impl NoAction {
10558 #[inline]
10559 pub fn action_token(&self) -> Option<SyntaxToken> {
10560 support::token(&self.syntax, SyntaxKind::ACTION_KW)
10561 }
10562 #[inline]
10563 pub fn no_token(&self) -> Option<SyntaxToken> {
10564 support::token(&self.syntax, SyntaxKind::NO_KW)
10565 }
10566}
10567
10568#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10569pub struct NoDependsOnExtension {
10570 pub(crate) syntax: SyntaxNode,
10571}
10572impl NoDependsOnExtension {
10573 #[inline]
10574 pub fn name_ref(&self) -> Option<NameRef> {
10575 support::child(&self.syntax)
10576 }
10577 #[inline]
10578 pub fn depends_token(&self) -> Option<SyntaxToken> {
10579 support::token(&self.syntax, SyntaxKind::DEPENDS_KW)
10580 }
10581 #[inline]
10582 pub fn extension_token(&self) -> Option<SyntaxToken> {
10583 support::token(&self.syntax, SyntaxKind::EXTENSION_KW)
10584 }
10585 #[inline]
10586 pub fn no_token(&self) -> Option<SyntaxToken> {
10587 support::token(&self.syntax, SyntaxKind::NO_KW)
10588 }
10589 #[inline]
10590 pub fn on_token(&self) -> Option<SyntaxToken> {
10591 support::token(&self.syntax, SyntaxKind::ON_KW)
10592 }
10593}
10594
10595#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10596pub struct NoForceRls {
10597 pub(crate) syntax: SyntaxNode,
10598}
10599impl NoForceRls {
10600 #[inline]
10601 pub fn force_token(&self) -> Option<SyntaxToken> {
10602 support::token(&self.syntax, SyntaxKind::FORCE_KW)
10603 }
10604 #[inline]
10605 pub fn level_token(&self) -> Option<SyntaxToken> {
10606 support::token(&self.syntax, SyntaxKind::LEVEL_KW)
10607 }
10608 #[inline]
10609 pub fn no_token(&self) -> Option<SyntaxToken> {
10610 support::token(&self.syntax, SyntaxKind::NO_KW)
10611 }
10612 #[inline]
10613 pub fn row_token(&self) -> Option<SyntaxToken> {
10614 support::token(&self.syntax, SyntaxKind::ROW_KW)
10615 }
10616 #[inline]
10617 pub fn security_token(&self) -> Option<SyntaxToken> {
10618 support::token(&self.syntax, SyntaxKind::SECURITY_KW)
10619 }
10620}
10621
10622#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10623pub struct NoInherit {
10624 pub(crate) syntax: SyntaxNode,
10625}
10626impl NoInherit {
10627 #[inline]
10628 pub fn path(&self) -> Option<Path> {
10629 support::child(&self.syntax)
10630 }
10631 #[inline]
10632 pub fn inherit_token(&self) -> Option<SyntaxToken> {
10633 support::token(&self.syntax, SyntaxKind::INHERIT_KW)
10634 }
10635 #[inline]
10636 pub fn no_token(&self) -> Option<SyntaxToken> {
10637 support::token(&self.syntax, SyntaxKind::NO_KW)
10638 }
10639}
10640
10641#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10642pub struct NoInheritTable {
10643 pub(crate) syntax: SyntaxNode,
10644}
10645impl NoInheritTable {
10646 #[inline]
10647 pub fn path(&self) -> Option<Path> {
10648 support::child(&self.syntax)
10649 }
10650 #[inline]
10651 pub fn inherit_token(&self) -> Option<SyntaxToken> {
10652 support::token(&self.syntax, SyntaxKind::INHERIT_KW)
10653 }
10654 #[inline]
10655 pub fn no_token(&self) -> Option<SyntaxToken> {
10656 support::token(&self.syntax, SyntaxKind::NO_KW)
10657 }
10658}
10659
10660#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10661pub struct NonStandardParam {
10662 pub(crate) syntax: SyntaxNode,
10663}
10664impl NonStandardParam {
10665 #[inline]
10666 pub fn name_ref(&self) -> Option<NameRef> {
10667 support::child(&self.syntax)
10668 }
10669 #[inline]
10670 pub fn colon_token(&self) -> Option<SyntaxToken> {
10671 support::token(&self.syntax, SyntaxKind::COLON)
10672 }
10673}
10674
10675#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10676pub struct NotDeferrable {
10677 pub(crate) syntax: SyntaxNode,
10678}
10679impl NotDeferrable {
10680 #[inline]
10681 pub fn deferrable_token(&self) -> Option<SyntaxToken> {
10682 support::token(&self.syntax, SyntaxKind::DEFERRABLE_KW)
10683 }
10684 #[inline]
10685 pub fn not_token(&self) -> Option<SyntaxToken> {
10686 support::token(&self.syntax, SyntaxKind::NOT_KW)
10687 }
10688}
10689
10690#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10691pub struct NotDeferrableConstraintOption {
10692 pub(crate) syntax: SyntaxNode,
10693}
10694impl NotDeferrableConstraintOption {
10695 #[inline]
10696 pub fn deferrable_token(&self) -> Option<SyntaxToken> {
10697 support::token(&self.syntax, SyntaxKind::DEFERRABLE_KW)
10698 }
10699 #[inline]
10700 pub fn not_token(&self) -> Option<SyntaxToken> {
10701 support::token(&self.syntax, SyntaxKind::NOT_KW)
10702 }
10703}
10704
10705#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10706pub struct NotEnforced {
10707 pub(crate) syntax: SyntaxNode,
10708}
10709impl NotEnforced {
10710 #[inline]
10711 pub fn enforced_token(&self) -> Option<SyntaxToken> {
10712 support::token(&self.syntax, SyntaxKind::ENFORCED_KW)
10713 }
10714 #[inline]
10715 pub fn not_token(&self) -> Option<SyntaxToken> {
10716 support::token(&self.syntax, SyntaxKind::NOT_KW)
10717 }
10718}
10719
10720#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10721pub struct NotIlike {
10722 pub(crate) syntax: SyntaxNode,
10723}
10724impl NotIlike {
10725 #[inline]
10726 pub fn ilike_token(&self) -> Option<SyntaxToken> {
10727 support::token(&self.syntax, SyntaxKind::ILIKE_KW)
10728 }
10729 #[inline]
10730 pub fn not_token(&self) -> Option<SyntaxToken> {
10731 support::token(&self.syntax, SyntaxKind::NOT_KW)
10732 }
10733}
10734
10735#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10736pub struct NotIn {
10737 pub(crate) syntax: SyntaxNode,
10738}
10739impl NotIn {
10740 #[inline]
10741 pub fn in_token(&self) -> Option<SyntaxToken> {
10742 support::token(&self.syntax, SyntaxKind::IN_KW)
10743 }
10744 #[inline]
10745 pub fn not_token(&self) -> Option<SyntaxToken> {
10746 support::token(&self.syntax, SyntaxKind::NOT_KW)
10747 }
10748}
10749
10750#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10751pub struct NotLike {
10752 pub(crate) syntax: SyntaxNode,
10753}
10754impl NotLike {
10755 #[inline]
10756 pub fn like_token(&self) -> Option<SyntaxToken> {
10757 support::token(&self.syntax, SyntaxKind::LIKE_KW)
10758 }
10759 #[inline]
10760 pub fn not_token(&self) -> Option<SyntaxToken> {
10761 support::token(&self.syntax, SyntaxKind::NOT_KW)
10762 }
10763}
10764
10765#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10766pub struct NotMaterialized {
10767 pub(crate) syntax: SyntaxNode,
10768}
10769impl NotMaterialized {
10770 #[inline]
10771 pub fn materialized_token(&self) -> Option<SyntaxToken> {
10772 support::token(&self.syntax, SyntaxKind::MATERIALIZED_KW)
10773 }
10774 #[inline]
10775 pub fn not_token(&self) -> Option<SyntaxToken> {
10776 support::token(&self.syntax, SyntaxKind::NOT_KW)
10777 }
10778}
10779
10780#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10781pub struct NotNullConstraint {
10782 pub(crate) syntax: SyntaxNode,
10783}
10784impl NotNullConstraint {
10785 #[inline]
10786 pub fn name_ref(&self) -> Option<NameRef> {
10787 support::child(&self.syntax)
10788 }
10789 #[inline]
10790 pub fn no_inherit(&self) -> Option<NoInherit> {
10791 support::child(&self.syntax)
10792 }
10793 #[inline]
10794 pub fn constraint_token(&self) -> Option<SyntaxToken> {
10795 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
10796 }
10797 #[inline]
10798 pub fn not_token(&self) -> Option<SyntaxToken> {
10799 support::token(&self.syntax, SyntaxKind::NOT_KW)
10800 }
10801 #[inline]
10802 pub fn null_token(&self) -> Option<SyntaxToken> {
10803 support::token(&self.syntax, SyntaxKind::NULL_KW)
10804 }
10805}
10806
10807#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10808pub struct NotOf {
10809 pub(crate) syntax: SyntaxNode,
10810}
10811impl NotOf {
10812 #[inline]
10813 pub fn not_token(&self) -> Option<SyntaxToken> {
10814 support::token(&self.syntax, SyntaxKind::NOT_KW)
10815 }
10816 #[inline]
10817 pub fn of_token(&self) -> Option<SyntaxToken> {
10818 support::token(&self.syntax, SyntaxKind::OF_KW)
10819 }
10820}
10821
10822#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10823pub struct NotSimilarTo {
10824 pub(crate) syntax: SyntaxNode,
10825}
10826impl NotSimilarTo {
10827 #[inline]
10828 pub fn not_token(&self) -> Option<SyntaxToken> {
10829 support::token(&self.syntax, SyntaxKind::NOT_KW)
10830 }
10831 #[inline]
10832 pub fn similar_token(&self) -> Option<SyntaxToken> {
10833 support::token(&self.syntax, SyntaxKind::SIMILAR_KW)
10834 }
10835 #[inline]
10836 pub fn to_token(&self) -> Option<SyntaxToken> {
10837 support::token(&self.syntax, SyntaxKind::TO_KW)
10838 }
10839}
10840
10841#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10842pub struct NotValid {
10843 pub(crate) syntax: SyntaxNode,
10844}
10845impl NotValid {
10846 #[inline]
10847 pub fn not_token(&self) -> Option<SyntaxToken> {
10848 support::token(&self.syntax, SyntaxKind::NOT_KW)
10849 }
10850 #[inline]
10851 pub fn valid_token(&self) -> Option<SyntaxToken> {
10852 support::token(&self.syntax, SyntaxKind::VALID_KW)
10853 }
10854}
10855
10856#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10857pub struct Notify {
10858 pub(crate) syntax: SyntaxNode,
10859}
10860impl Notify {
10861 #[inline]
10862 pub fn literal(&self) -> Option<Literal> {
10863 support::child(&self.syntax)
10864 }
10865 #[inline]
10866 pub fn name_ref(&self) -> Option<NameRef> {
10867 support::child(&self.syntax)
10868 }
10869 #[inline]
10870 pub fn comma_token(&self) -> Option<SyntaxToken> {
10871 support::token(&self.syntax, SyntaxKind::COMMA)
10872 }
10873 #[inline]
10874 pub fn notify_token(&self) -> Option<SyntaxToken> {
10875 support::token(&self.syntax, SyntaxKind::NOTIFY_KW)
10876 }
10877}
10878
10879#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10880pub struct NullConstraint {
10881 pub(crate) syntax: SyntaxNode,
10882}
10883impl NullConstraint {
10884 #[inline]
10885 pub fn name_ref(&self) -> Option<NameRef> {
10886 support::child(&self.syntax)
10887 }
10888 #[inline]
10889 pub fn constraint_token(&self) -> Option<SyntaxToken> {
10890 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
10891 }
10892 #[inline]
10893 pub fn null_token(&self) -> Option<SyntaxToken> {
10894 support::token(&self.syntax, SyntaxKind::NULL_KW)
10895 }
10896}
10897
10898#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10899pub struct NullsDistinct {
10900 pub(crate) syntax: SyntaxNode,
10901}
10902impl NullsDistinct {
10903 #[inline]
10904 pub fn distinct_token(&self) -> Option<SyntaxToken> {
10905 support::token(&self.syntax, SyntaxKind::DISTINCT_KW)
10906 }
10907 #[inline]
10908 pub fn nulls_token(&self) -> Option<SyntaxToken> {
10909 support::token(&self.syntax, SyntaxKind::NULLS_KW)
10910 }
10911}
10912
10913#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10914pub struct NullsFirst {
10915 pub(crate) syntax: SyntaxNode,
10916}
10917impl NullsFirst {
10918 #[inline]
10919 pub fn first_token(&self) -> Option<SyntaxToken> {
10920 support::token(&self.syntax, SyntaxKind::FIRST_KW)
10921 }
10922 #[inline]
10923 pub fn nulls_token(&self) -> Option<SyntaxToken> {
10924 support::token(&self.syntax, SyntaxKind::NULLS_KW)
10925 }
10926}
10927
10928#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10929pub struct NullsLast {
10930 pub(crate) syntax: SyntaxNode,
10931}
10932impl NullsLast {
10933 #[inline]
10934 pub fn last_token(&self) -> Option<SyntaxToken> {
10935 support::token(&self.syntax, SyntaxKind::LAST_KW)
10936 }
10937 #[inline]
10938 pub fn nulls_token(&self) -> Option<SyntaxToken> {
10939 support::token(&self.syntax, SyntaxKind::NULLS_KW)
10940 }
10941}
10942
10943#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10944pub struct NullsNotDistinct {
10945 pub(crate) syntax: SyntaxNode,
10946}
10947impl NullsNotDistinct {
10948 #[inline]
10949 pub fn distinct_token(&self) -> Option<SyntaxToken> {
10950 support::token(&self.syntax, SyntaxKind::DISTINCT_KW)
10951 }
10952 #[inline]
10953 pub fn not_token(&self) -> Option<SyntaxToken> {
10954 support::token(&self.syntax, SyntaxKind::NOT_KW)
10955 }
10956 #[inline]
10957 pub fn nulls_token(&self) -> Option<SyntaxToken> {
10958 support::token(&self.syntax, SyntaxKind::NULLS_KW)
10959 }
10960}
10961
10962#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10963pub struct OfType {
10964 pub(crate) syntax: SyntaxNode,
10965}
10966impl OfType {
10967 #[inline]
10968 pub fn ty(&self) -> Option<Type> {
10969 support::child(&self.syntax)
10970 }
10971 #[inline]
10972 pub fn of_token(&self) -> Option<SyntaxToken> {
10973 support::token(&self.syntax, SyntaxKind::OF_KW)
10974 }
10975}
10976
10977#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10978pub struct OffsetClause {
10979 pub(crate) syntax: SyntaxNode,
10980}
10981impl OffsetClause {
10982 #[inline]
10983 pub fn expr(&self) -> Option<Expr> {
10984 support::child(&self.syntax)
10985 }
10986 #[inline]
10987 pub fn offset_token(&self) -> Option<SyntaxToken> {
10988 support::token(&self.syntax, SyntaxKind::OFFSET_KW)
10989 }
10990 #[inline]
10991 pub fn row_token(&self) -> Option<SyntaxToken> {
10992 support::token(&self.syntax, SyntaxKind::ROW_KW)
10993 }
10994 #[inline]
10995 pub fn rows_token(&self) -> Option<SyntaxToken> {
10996 support::token(&self.syntax, SyntaxKind::ROWS_KW)
10997 }
10998}
10999
11000#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11001pub struct OnClause {
11002 pub(crate) syntax: SyntaxNode,
11003}
11004impl OnClause {
11005 #[inline]
11006 pub fn expr(&self) -> Option<Expr> {
11007 support::child(&self.syntax)
11008 }
11009 #[inline]
11010 pub fn on_token(&self) -> Option<SyntaxToken> {
11011 support::token(&self.syntax, SyntaxKind::ON_KW)
11012 }
11013}
11014
11015#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11016pub struct OnCommit {
11017 pub(crate) syntax: SyntaxNode,
11018}
11019impl OnCommit {
11020 #[inline]
11021 pub fn on_commit_action(&self) -> Option<OnCommitAction> {
11022 support::child(&self.syntax)
11023 }
11024 #[inline]
11025 pub fn commit_token(&self) -> Option<SyntaxToken> {
11026 support::token(&self.syntax, SyntaxKind::COMMIT_KW)
11027 }
11028 #[inline]
11029 pub fn on_token(&self) -> Option<SyntaxToken> {
11030 support::token(&self.syntax, SyntaxKind::ON_KW)
11031 }
11032}
11033
11034#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11035pub struct OnConflictClause {
11036 pub(crate) syntax: SyntaxNode,
11037}
11038impl OnConflictClause {
11039 #[inline]
11040 pub fn conflict_action(&self) -> Option<ConflictAction> {
11041 support::child(&self.syntax)
11042 }
11043 #[inline]
11044 pub fn conflict_target(&self) -> Option<ConflictTarget> {
11045 support::child(&self.syntax)
11046 }
11047 #[inline]
11048 pub fn conflict_token(&self) -> Option<SyntaxToken> {
11049 support::token(&self.syntax, SyntaxKind::CONFLICT_KW)
11050 }
11051 #[inline]
11052 pub fn on_token(&self) -> Option<SyntaxToken> {
11053 support::token(&self.syntax, SyntaxKind::ON_KW)
11054 }
11055}
11056
11057#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11058pub struct OnDeleteAction {
11059 pub(crate) syntax: SyntaxNode,
11060}
11061impl OnDeleteAction {
11062 #[inline]
11063 pub fn ref_action(&self) -> Option<RefAction> {
11064 support::child(&self.syntax)
11065 }
11066 #[inline]
11067 pub fn delete_token(&self) -> Option<SyntaxToken> {
11068 support::token(&self.syntax, SyntaxKind::DELETE_KW)
11069 }
11070 #[inline]
11071 pub fn on_token(&self) -> Option<SyntaxToken> {
11072 support::token(&self.syntax, SyntaxKind::ON_KW)
11073 }
11074}
11075
11076#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11077pub struct OnTable {
11078 pub(crate) syntax: SyntaxNode,
11079}
11080impl OnTable {
11081 #[inline]
11082 pub fn path(&self) -> Option<Path> {
11083 support::child(&self.syntax)
11084 }
11085 #[inline]
11086 pub fn on_token(&self) -> Option<SyntaxToken> {
11087 support::token(&self.syntax, SyntaxKind::ON_KW)
11088 }
11089}
11090
11091#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11092pub struct OnUpdateAction {
11093 pub(crate) syntax: SyntaxNode,
11094}
11095impl OnUpdateAction {
11096 #[inline]
11097 pub fn ref_action(&self) -> Option<RefAction> {
11098 support::child(&self.syntax)
11099 }
11100 #[inline]
11101 pub fn on_token(&self) -> Option<SyntaxToken> {
11102 support::token(&self.syntax, SyntaxKind::ON_KW)
11103 }
11104 #[inline]
11105 pub fn update_token(&self) -> Option<SyntaxToken> {
11106 support::token(&self.syntax, SyntaxKind::UPDATE_KW)
11107 }
11108}
11109
11110#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11111pub struct Op {
11112 pub(crate) syntax: SyntaxNode,
11113}
11114impl Op {
11115 #[inline]
11116 pub fn at_time_zone(&self) -> Option<AtTimeZone> {
11117 support::child(&self.syntax)
11118 }
11119 #[inline]
11120 pub fn colon_colon(&self) -> Option<ColonColon> {
11121 support::child(&self.syntax)
11122 }
11123 #[inline]
11124 pub fn colon_eq(&self) -> Option<ColonEq> {
11125 support::child(&self.syntax)
11126 }
11127 #[inline]
11128 pub fn custom_op(&self) -> Option<CustomOp> {
11129 support::child(&self.syntax)
11130 }
11131 #[inline]
11132 pub fn fat_arrow(&self) -> Option<FatArrow> {
11133 support::child(&self.syntax)
11134 }
11135 #[inline]
11136 pub fn gteq(&self) -> Option<Gteq> {
11137 support::child(&self.syntax)
11138 }
11139 #[inline]
11140 pub fn is_distinct_from(&self) -> Option<IsDistinctFrom> {
11141 support::child(&self.syntax)
11142 }
11143 #[inline]
11144 pub fn is_json(&self) -> Option<IsJson> {
11145 support::child(&self.syntax)
11146 }
11147 #[inline]
11148 pub fn is_json_array(&self) -> Option<IsJsonArray> {
11149 support::child(&self.syntax)
11150 }
11151 #[inline]
11152 pub fn is_json_object(&self) -> Option<IsJsonObject> {
11153 support::child(&self.syntax)
11154 }
11155 #[inline]
11156 pub fn is_json_scalar(&self) -> Option<IsJsonScalar> {
11157 support::child(&self.syntax)
11158 }
11159 #[inline]
11160 pub fn is_json_value(&self) -> Option<IsJsonValue> {
11161 support::child(&self.syntax)
11162 }
11163 #[inline]
11164 pub fn is_not(&self) -> Option<IsNot> {
11165 support::child(&self.syntax)
11166 }
11167 #[inline]
11168 pub fn is_not_distinct_from(&self) -> Option<IsNotDistinctFrom> {
11169 support::child(&self.syntax)
11170 }
11171 #[inline]
11172 pub fn is_not_json(&self) -> Option<IsNotJson> {
11173 support::child(&self.syntax)
11174 }
11175 #[inline]
11176 pub fn is_not_json_array(&self) -> Option<IsNotJsonArray> {
11177 support::child(&self.syntax)
11178 }
11179 #[inline]
11180 pub fn is_not_json_scalar(&self) -> Option<IsNotJsonScalar> {
11181 support::child(&self.syntax)
11182 }
11183 #[inline]
11184 pub fn is_not_json_value(&self) -> Option<IsNotJsonValue> {
11185 support::child(&self.syntax)
11186 }
11187 #[inline]
11188 pub fn lteq(&self) -> Option<Lteq> {
11189 support::child(&self.syntax)
11190 }
11191 #[inline]
11192 pub fn neq(&self) -> Option<Neq> {
11193 support::child(&self.syntax)
11194 }
11195 #[inline]
11196 pub fn neqb(&self) -> Option<Neqb> {
11197 support::child(&self.syntax)
11198 }
11199 #[inline]
11200 pub fn not_ilike(&self) -> Option<NotIlike> {
11201 support::child(&self.syntax)
11202 }
11203 #[inline]
11204 pub fn not_in(&self) -> Option<NotIn> {
11205 support::child(&self.syntax)
11206 }
11207 #[inline]
11208 pub fn not_like(&self) -> Option<NotLike> {
11209 support::child(&self.syntax)
11210 }
11211 #[inline]
11212 pub fn not_similar_to(&self) -> Option<NotSimilarTo> {
11213 support::child(&self.syntax)
11214 }
11215 #[inline]
11216 pub fn operator_call(&self) -> Option<OperatorCall> {
11217 support::child(&self.syntax)
11218 }
11219 #[inline]
11220 pub fn similar_to(&self) -> Option<SimilarTo> {
11221 support::child(&self.syntax)
11222 }
11223 #[inline]
11224 pub fn percent_token(&self) -> Option<SyntaxToken> {
11225 support::token(&self.syntax, SyntaxKind::PERCENT)
11226 }
11227 #[inline]
11228 pub fn plus_token(&self) -> Option<SyntaxToken> {
11229 support::token(&self.syntax, SyntaxKind::PLUS)
11230 }
11231 #[inline]
11232 pub fn minus_token(&self) -> Option<SyntaxToken> {
11233 support::token(&self.syntax, SyntaxKind::MINUS)
11234 }
11235 #[inline]
11236 pub fn slash_token(&self) -> Option<SyntaxToken> {
11237 support::token(&self.syntax, SyntaxKind::SLASH)
11238 }
11239 #[inline]
11240 pub fn colon_token(&self) -> Option<SyntaxToken> {
11241 support::token(&self.syntax, SyntaxKind::COLON)
11242 }
11243 #[inline]
11244 pub fn l_angle_token(&self) -> Option<SyntaxToken> {
11245 support::token(&self.syntax, SyntaxKind::L_ANGLE)
11246 }
11247 #[inline]
11248 pub fn eq_token(&self) -> Option<SyntaxToken> {
11249 support::token(&self.syntax, SyntaxKind::EQ)
11250 }
11251 #[inline]
11252 pub fn r_angle_token(&self) -> Option<SyntaxToken> {
11253 support::token(&self.syntax, SyntaxKind::R_ANGLE)
11254 }
11255 #[inline]
11256 pub fn caret_token(&self) -> Option<SyntaxToken> {
11257 support::token(&self.syntax, SyntaxKind::CARET)
11258 }
11259 #[inline]
11260 pub fn and_token(&self) -> Option<SyntaxToken> {
11261 support::token(&self.syntax, SyntaxKind::AND_KW)
11262 }
11263 #[inline]
11264 pub fn collate_token(&self) -> Option<SyntaxToken> {
11265 support::token(&self.syntax, SyntaxKind::COLLATE_KW)
11266 }
11267 #[inline]
11268 pub fn ilike_token(&self) -> Option<SyntaxToken> {
11269 support::token(&self.syntax, SyntaxKind::ILIKE_KW)
11270 }
11271 #[inline]
11272 pub fn in_token(&self) -> Option<SyntaxToken> {
11273 support::token(&self.syntax, SyntaxKind::IN_KW)
11274 }
11275 #[inline]
11276 pub fn is_token(&self) -> Option<SyntaxToken> {
11277 support::token(&self.syntax, SyntaxKind::IS_KW)
11278 }
11279 #[inline]
11280 pub fn like_token(&self) -> Option<SyntaxToken> {
11281 support::token(&self.syntax, SyntaxKind::LIKE_KW)
11282 }
11283 #[inline]
11284 pub fn or_token(&self) -> Option<SyntaxToken> {
11285 support::token(&self.syntax, SyntaxKind::OR_KW)
11286 }
11287 #[inline]
11288 pub fn overlaps_token(&self) -> Option<SyntaxToken> {
11289 support::token(&self.syntax, SyntaxKind::OVERLAPS_KW)
11290 }
11291 #[inline]
11292 pub fn value_token(&self) -> Option<SyntaxToken> {
11293 support::token(&self.syntax, SyntaxKind::VALUE_KW)
11294 }
11295}
11296
11297#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11298pub struct OpClassOption {
11299 pub(crate) syntax: SyntaxNode,
11300}
11301impl OpClassOption {
11302 #[inline]
11303 pub fn function_sig(&self) -> Option<FunctionSig> {
11304 support::child(&self.syntax)
11305 }
11306 #[inline]
11307 pub fn literal(&self) -> Option<Literal> {
11308 support::child(&self.syntax)
11309 }
11310 #[inline]
11311 pub fn op(&self) -> Option<Op> {
11312 support::child(&self.syntax)
11313 }
11314 #[inline]
11315 pub fn param_list(&self) -> Option<ParamList> {
11316 support::child(&self.syntax)
11317 }
11318 #[inline]
11319 pub fn path(&self) -> Option<Path> {
11320 support::child(&self.syntax)
11321 }
11322 #[inline]
11323 pub fn ty(&self) -> Option<Type> {
11324 support::child(&self.syntax)
11325 }
11326 #[inline]
11327 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
11328 support::token(&self.syntax, SyntaxKind::L_PAREN)
11329 }
11330 #[inline]
11331 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
11332 support::token(&self.syntax, SyntaxKind::R_PAREN)
11333 }
11334 #[inline]
11335 pub fn comma_token(&self) -> Option<SyntaxToken> {
11336 support::token(&self.syntax, SyntaxKind::COMMA)
11337 }
11338 #[inline]
11339 pub fn by_token(&self) -> Option<SyntaxToken> {
11340 support::token(&self.syntax, SyntaxKind::BY_KW)
11341 }
11342 #[inline]
11343 pub fn for_token(&self) -> Option<SyntaxToken> {
11344 support::token(&self.syntax, SyntaxKind::FOR_KW)
11345 }
11346 #[inline]
11347 pub fn function_token(&self) -> Option<SyntaxToken> {
11348 support::token(&self.syntax, SyntaxKind::FUNCTION_KW)
11349 }
11350 #[inline]
11351 pub fn operator_token(&self) -> Option<SyntaxToken> {
11352 support::token(&self.syntax, SyntaxKind::OPERATOR_KW)
11353 }
11354 #[inline]
11355 pub fn order_token(&self) -> Option<SyntaxToken> {
11356 support::token(&self.syntax, SyntaxKind::ORDER_KW)
11357 }
11358 #[inline]
11359 pub fn search_token(&self) -> Option<SyntaxToken> {
11360 support::token(&self.syntax, SyntaxKind::SEARCH_KW)
11361 }
11362 #[inline]
11363 pub fn storage_token(&self) -> Option<SyntaxToken> {
11364 support::token(&self.syntax, SyntaxKind::STORAGE_KW)
11365 }
11366}
11367
11368#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11369pub struct OpSig {
11370 pub(crate) syntax: SyntaxNode,
11371}
11372impl OpSig {
11373 #[inline]
11374 pub fn op(&self) -> Option<Op> {
11375 support::child(&self.syntax)
11376 }
11377 #[inline]
11378 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
11379 support::token(&self.syntax, SyntaxKind::L_PAREN)
11380 }
11381 #[inline]
11382 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
11383 support::token(&self.syntax, SyntaxKind::R_PAREN)
11384 }
11385 #[inline]
11386 pub fn comma_token(&self) -> Option<SyntaxToken> {
11387 support::token(&self.syntax, SyntaxKind::COMMA)
11388 }
11389 #[inline]
11390 pub fn none_token(&self) -> Option<SyntaxToken> {
11391 support::token(&self.syntax, SyntaxKind::NONE_KW)
11392 }
11393}
11394
11395#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11396pub struct OpSigList {
11397 pub(crate) syntax: SyntaxNode,
11398}
11399impl OpSigList {
11400 #[inline]
11401 pub fn op_sigs(&self) -> AstChildren<OpSig> {
11402 support::children(&self.syntax)
11403 }
11404}
11405
11406#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11407pub struct OperatorCall {
11408 pub(crate) syntax: SyntaxNode,
11409}
11410impl OperatorCall {
11411 #[inline]
11412 pub fn op(&self) -> Option<Op> {
11413 support::child(&self.syntax)
11414 }
11415 #[inline]
11416 pub fn path(&self) -> Option<Path> {
11417 support::child(&self.syntax)
11418 }
11419 #[inline]
11420 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
11421 support::token(&self.syntax, SyntaxKind::L_PAREN)
11422 }
11423 #[inline]
11424 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
11425 support::token(&self.syntax, SyntaxKind::R_PAREN)
11426 }
11427 #[inline]
11428 pub fn dot_token(&self) -> Option<SyntaxToken> {
11429 support::token(&self.syntax, SyntaxKind::DOT)
11430 }
11431 #[inline]
11432 pub fn operator_token(&self) -> Option<SyntaxToken> {
11433 support::token(&self.syntax, SyntaxKind::OPERATOR_KW)
11434 }
11435}
11436
11437#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11438pub struct OperatorClassOptionList {
11439 pub(crate) syntax: SyntaxNode,
11440}
11441impl OperatorClassOptionList {
11442 #[inline]
11443 pub fn op_class_options(&self) -> AstChildren<OpClassOption> {
11444 support::children(&self.syntax)
11445 }
11446}
11447
11448#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11449pub struct OptionItem {
11450 pub(crate) syntax: SyntaxNode,
11451}
11452impl OptionItem {
11453 #[inline]
11454 pub fn expr(&self) -> Option<Expr> {
11455 support::child(&self.syntax)
11456 }
11457 #[inline]
11458 pub fn default_token(&self) -> Option<SyntaxToken> {
11459 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
11460 }
11461}
11462
11463#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11464pub struct OptionItemList {
11465 pub(crate) syntax: SyntaxNode,
11466}
11467impl OptionItemList {
11468 #[inline]
11469 pub fn option_items(&self) -> AstChildren<OptionItem> {
11470 support::children(&self.syntax)
11471 }
11472 #[inline]
11473 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
11474 support::token(&self.syntax, SyntaxKind::L_PAREN)
11475 }
11476 #[inline]
11477 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
11478 support::token(&self.syntax, SyntaxKind::R_PAREN)
11479 }
11480}
11481
11482#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11483pub struct OrReplace {
11484 pub(crate) syntax: SyntaxNode,
11485}
11486impl OrReplace {
11487 #[inline]
11488 pub fn or_token(&self) -> Option<SyntaxToken> {
11489 support::token(&self.syntax, SyntaxKind::OR_KW)
11490 }
11491 #[inline]
11492 pub fn replace_token(&self) -> Option<SyntaxToken> {
11493 support::token(&self.syntax, SyntaxKind::REPLACE_KW)
11494 }
11495}
11496
11497#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11498pub struct OrderByClause {
11499 pub(crate) syntax: SyntaxNode,
11500}
11501impl OrderByClause {
11502 #[inline]
11503 pub fn sort_by_list(&self) -> Option<SortByList> {
11504 support::child(&self.syntax)
11505 }
11506 #[inline]
11507 pub fn by_token(&self) -> Option<SyntaxToken> {
11508 support::token(&self.syntax, SyntaxKind::BY_KW)
11509 }
11510 #[inline]
11511 pub fn order_token(&self) -> Option<SyntaxToken> {
11512 support::token(&self.syntax, SyntaxKind::ORDER_KW)
11513 }
11514}
11515
11516#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11517pub struct OverClause {
11518 pub(crate) syntax: SyntaxNode,
11519}
11520impl OverClause {
11521 #[inline]
11522 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
11523 support::token(&self.syntax, SyntaxKind::L_PAREN)
11524 }
11525 #[inline]
11526 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
11527 support::token(&self.syntax, SyntaxKind::R_PAREN)
11528 }
11529 #[inline]
11530 pub fn over_token(&self) -> Option<SyntaxToken> {
11531 support::token(&self.syntax, SyntaxKind::OVER_KW)
11532 }
11533}
11534
11535#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11536pub struct OverlayFn {
11537 pub(crate) syntax: SyntaxNode,
11538}
11539impl OverlayFn {
11540 #[inline]
11541 pub fn expr(&self) -> Option<Expr> {
11542 support::child(&self.syntax)
11543 }
11544 #[inline]
11545 pub fn exprs(&self) -> AstChildren<Expr> {
11546 support::children(&self.syntax)
11547 }
11548 #[inline]
11549 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
11550 support::token(&self.syntax, SyntaxKind::L_PAREN)
11551 }
11552 #[inline]
11553 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
11554 support::token(&self.syntax, SyntaxKind::R_PAREN)
11555 }
11556 #[inline]
11557 pub fn for_token(&self) -> Option<SyntaxToken> {
11558 support::token(&self.syntax, SyntaxKind::FOR_KW)
11559 }
11560 #[inline]
11561 pub fn from_token(&self) -> Option<SyntaxToken> {
11562 support::token(&self.syntax, SyntaxKind::FROM_KW)
11563 }
11564 #[inline]
11565 pub fn overlay_token(&self) -> Option<SyntaxToken> {
11566 support::token(&self.syntax, SyntaxKind::OVERLAY_KW)
11567 }
11568 #[inline]
11569 pub fn placing_token(&self) -> Option<SyntaxToken> {
11570 support::token(&self.syntax, SyntaxKind::PLACING_KW)
11571 }
11572}
11573
11574#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11575pub struct OwnerTo {
11576 pub(crate) syntax: SyntaxNode,
11577}
11578impl OwnerTo {
11579 #[inline]
11580 pub fn role(&self) -> Option<Role> {
11581 support::child(&self.syntax)
11582 }
11583 #[inline]
11584 pub fn owner_token(&self) -> Option<SyntaxToken> {
11585 support::token(&self.syntax, SyntaxKind::OWNER_KW)
11586 }
11587 #[inline]
11588 pub fn to_token(&self) -> Option<SyntaxToken> {
11589 support::token(&self.syntax, SyntaxKind::TO_KW)
11590 }
11591}
11592
11593#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11594pub struct ParallelFuncOption {
11595 pub(crate) syntax: SyntaxNode,
11596}
11597impl ParallelFuncOption {
11598 #[inline]
11599 pub fn ident_token(&self) -> Option<SyntaxToken> {
11600 support::token(&self.syntax, SyntaxKind::IDENT)
11601 }
11602 #[inline]
11603 pub fn parallel_token(&self) -> Option<SyntaxToken> {
11604 support::token(&self.syntax, SyntaxKind::PARALLEL_KW)
11605 }
11606}
11607
11608#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11609pub struct Param {
11610 pub(crate) syntax: SyntaxNode,
11611}
11612impl Param {
11613 #[inline]
11614 pub fn mode(&self) -> Option<ParamMode> {
11615 support::child(&self.syntax)
11616 }
11617 #[inline]
11618 pub fn name(&self) -> Option<Name> {
11619 support::child(&self.syntax)
11620 }
11621 #[inline]
11622 pub fn param_default(&self) -> Option<ParamDefault> {
11623 support::child(&self.syntax)
11624 }
11625 #[inline]
11626 pub fn ty(&self) -> Option<Type> {
11627 support::child(&self.syntax)
11628 }
11629}
11630
11631#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11632pub struct ParamDefault {
11633 pub(crate) syntax: SyntaxNode,
11634}
11635impl ParamDefault {
11636 #[inline]
11637 pub fn expr(&self) -> Option<Expr> {
11638 support::child(&self.syntax)
11639 }
11640 #[inline]
11641 pub fn eq_token(&self) -> Option<SyntaxToken> {
11642 support::token(&self.syntax, SyntaxKind::EQ)
11643 }
11644 #[inline]
11645 pub fn default_token(&self) -> Option<SyntaxToken> {
11646 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
11647 }
11648}
11649
11650#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11651pub struct ParamIn {
11652 pub(crate) syntax: SyntaxNode,
11653}
11654impl ParamIn {
11655 #[inline]
11656 pub fn in_token(&self) -> Option<SyntaxToken> {
11657 support::token(&self.syntax, SyntaxKind::IN_KW)
11658 }
11659}
11660
11661#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11662pub struct ParamInOut {
11663 pub(crate) syntax: SyntaxNode,
11664}
11665impl ParamInOut {
11666 #[inline]
11667 pub fn in_token(&self) -> Option<SyntaxToken> {
11668 support::token(&self.syntax, SyntaxKind::IN_KW)
11669 }
11670 #[inline]
11671 pub fn inout_token(&self) -> Option<SyntaxToken> {
11672 support::token(&self.syntax, SyntaxKind::INOUT_KW)
11673 }
11674 #[inline]
11675 pub fn out_token(&self) -> Option<SyntaxToken> {
11676 support::token(&self.syntax, SyntaxKind::OUT_KW)
11677 }
11678}
11679
11680#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11681pub struct ParamList {
11682 pub(crate) syntax: SyntaxNode,
11683}
11684impl ParamList {
11685 #[inline]
11686 pub fn params(&self) -> AstChildren<Param> {
11687 support::children(&self.syntax)
11688 }
11689}
11690
11691#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11692pub struct ParamOut {
11693 pub(crate) syntax: SyntaxNode,
11694}
11695impl ParamOut {
11696 #[inline]
11697 pub fn out_token(&self) -> Option<SyntaxToken> {
11698 support::token(&self.syntax, SyntaxKind::OUT_KW)
11699 }
11700}
11701
11702#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11703pub struct ParamVariadic {
11704 pub(crate) syntax: SyntaxNode,
11705}
11706impl ParamVariadic {
11707 #[inline]
11708 pub fn variadic_token(&self) -> Option<SyntaxToken> {
11709 support::token(&self.syntax, SyntaxKind::VARIADIC_KW)
11710 }
11711}
11712
11713#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11714pub struct ParenExpr {
11715 pub(crate) syntax: SyntaxNode,
11716}
11717impl ParenExpr {
11718 #[inline]
11719 pub fn expr(&self) -> Option<Expr> {
11720 support::child(&self.syntax)
11721 }
11722 #[inline]
11723 pub fn select(&self) -> Option<Select> {
11724 support::child(&self.syntax)
11725 }
11726 #[inline]
11727 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
11728 support::token(&self.syntax, SyntaxKind::L_PAREN)
11729 }
11730 #[inline]
11731 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
11732 support::token(&self.syntax, SyntaxKind::R_PAREN)
11733 }
11734}
11735
11736#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11737pub struct ParenSelect {
11738 pub(crate) syntax: SyntaxNode,
11739}
11740impl ParenSelect {
11741 #[inline]
11742 pub fn select(&self) -> Option<SelectVariant> {
11743 support::child(&self.syntax)
11744 }
11745 #[inline]
11746 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
11747 support::token(&self.syntax, SyntaxKind::L_PAREN)
11748 }
11749 #[inline]
11750 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
11751 support::token(&self.syntax, SyntaxKind::R_PAREN)
11752 }
11753}
11754
11755#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11756pub struct Partition {
11757 pub(crate) syntax: SyntaxNode,
11758}
11759impl Partition {
11760 #[inline]
11761 pub fn partition_type(&self) -> Option<PartitionType> {
11762 support::child(&self.syntax)
11763 }
11764 #[inline]
11765 pub fn path(&self) -> Option<Path> {
11766 support::child(&self.syntax)
11767 }
11768 #[inline]
11769 pub fn partition_token(&self) -> Option<SyntaxToken> {
11770 support::token(&self.syntax, SyntaxKind::PARTITION_KW)
11771 }
11772}
11773
11774#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11775pub struct PartitionBy {
11776 pub(crate) syntax: SyntaxNode,
11777}
11778impl PartitionBy {
11779 #[inline]
11780 pub fn partition_item_list(&self) -> Option<PartitionItemList> {
11781 support::child(&self.syntax)
11782 }
11783 #[inline]
11784 pub fn by_token(&self) -> Option<SyntaxToken> {
11785 support::token(&self.syntax, SyntaxKind::BY_KW)
11786 }
11787 #[inline]
11788 pub fn ident_token(&self) -> Option<SyntaxToken> {
11789 support::token(&self.syntax, SyntaxKind::IDENT)
11790 }
11791 #[inline]
11792 pub fn partition_token(&self) -> Option<SyntaxToken> {
11793 support::token(&self.syntax, SyntaxKind::PARTITION_KW)
11794 }
11795 #[inline]
11796 pub fn range_token(&self) -> Option<SyntaxToken> {
11797 support::token(&self.syntax, SyntaxKind::RANGE_KW)
11798 }
11799}
11800
11801#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11802pub struct PartitionDefault {
11803 pub(crate) syntax: SyntaxNode,
11804}
11805impl PartitionDefault {
11806 #[inline]
11807 pub fn default_token(&self) -> Option<SyntaxToken> {
11808 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
11809 }
11810}
11811
11812#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11813pub struct PartitionForValuesFrom {
11814 pub(crate) syntax: SyntaxNode,
11815}
11816impl PartitionForValuesFrom {
11817 #[inline]
11818 pub fn exprs(&self) -> AstChildren<Expr> {
11819 support::children(&self.syntax)
11820 }
11821 #[inline]
11822 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
11823 support::token(&self.syntax, SyntaxKind::L_PAREN)
11824 }
11825 #[inline]
11826 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
11827 support::token(&self.syntax, SyntaxKind::R_PAREN)
11828 }
11829 #[inline]
11830 pub fn for_token(&self) -> Option<SyntaxToken> {
11831 support::token(&self.syntax, SyntaxKind::FOR_KW)
11832 }
11833 #[inline]
11834 pub fn from_token(&self) -> Option<SyntaxToken> {
11835 support::token(&self.syntax, SyntaxKind::FROM_KW)
11836 }
11837 #[inline]
11838 pub fn to_token(&self) -> Option<SyntaxToken> {
11839 support::token(&self.syntax, SyntaxKind::TO_KW)
11840 }
11841 #[inline]
11842 pub fn values_token(&self) -> Option<SyntaxToken> {
11843 support::token(&self.syntax, SyntaxKind::VALUES_KW)
11844 }
11845}
11846
11847#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11848pub struct PartitionForValuesIn {
11849 pub(crate) syntax: SyntaxNode,
11850}
11851impl PartitionForValuesIn {
11852 #[inline]
11853 pub fn exprs(&self) -> AstChildren<Expr> {
11854 support::children(&self.syntax)
11855 }
11856 #[inline]
11857 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
11858 support::token(&self.syntax, SyntaxKind::L_PAREN)
11859 }
11860 #[inline]
11861 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
11862 support::token(&self.syntax, SyntaxKind::R_PAREN)
11863 }
11864 #[inline]
11865 pub fn for_token(&self) -> Option<SyntaxToken> {
11866 support::token(&self.syntax, SyntaxKind::FOR_KW)
11867 }
11868 #[inline]
11869 pub fn in_token(&self) -> Option<SyntaxToken> {
11870 support::token(&self.syntax, SyntaxKind::IN_KW)
11871 }
11872 #[inline]
11873 pub fn values_token(&self) -> Option<SyntaxToken> {
11874 support::token(&self.syntax, SyntaxKind::VALUES_KW)
11875 }
11876}
11877
11878#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11879pub struct PartitionForValuesWith {
11880 pub(crate) syntax: SyntaxNode,
11881}
11882impl PartitionForValuesWith {
11883 #[inline]
11884 pub fn literal(&self) -> Option<Literal> {
11885 support::child(&self.syntax)
11886 }
11887 #[inline]
11888 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
11889 support::token(&self.syntax, SyntaxKind::L_PAREN)
11890 }
11891 #[inline]
11892 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
11893 support::token(&self.syntax, SyntaxKind::R_PAREN)
11894 }
11895 #[inline]
11896 pub fn comma_token(&self) -> Option<SyntaxToken> {
11897 support::token(&self.syntax, SyntaxKind::COMMA)
11898 }
11899 #[inline]
11900 pub fn for_token(&self) -> Option<SyntaxToken> {
11901 support::token(&self.syntax, SyntaxKind::FOR_KW)
11902 }
11903 #[inline]
11904 pub fn ident_token(&self) -> Option<SyntaxToken> {
11905 support::token(&self.syntax, SyntaxKind::IDENT)
11906 }
11907 #[inline]
11908 pub fn values_token(&self) -> Option<SyntaxToken> {
11909 support::token(&self.syntax, SyntaxKind::VALUES_KW)
11910 }
11911 #[inline]
11912 pub fn with_token(&self) -> Option<SyntaxToken> {
11913 support::token(&self.syntax, SyntaxKind::WITH_KW)
11914 }
11915}
11916
11917#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11918pub struct PartitionItem {
11919 pub(crate) syntax: SyntaxNode,
11920}
11921impl PartitionItem {
11922 #[inline]
11923 pub fn collate(&self) -> Option<Collate> {
11924 support::child(&self.syntax)
11925 }
11926 #[inline]
11927 pub fn expr(&self) -> Option<Expr> {
11928 support::child(&self.syntax)
11929 }
11930}
11931
11932#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11933pub struct PartitionItemList {
11934 pub(crate) syntax: SyntaxNode,
11935}
11936impl PartitionItemList {
11937 #[inline]
11938 pub fn partition_items(&self) -> AstChildren<PartitionItem> {
11939 support::children(&self.syntax)
11940 }
11941 #[inline]
11942 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
11943 support::token(&self.syntax, SyntaxKind::L_PAREN)
11944 }
11945 #[inline]
11946 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
11947 support::token(&self.syntax, SyntaxKind::R_PAREN)
11948 }
11949}
11950
11951#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11952pub struct PartitionList {
11953 pub(crate) syntax: SyntaxNode,
11954}
11955impl PartitionList {
11956 #[inline]
11957 pub fn partitions(&self) -> AstChildren<Partition> {
11958 support::children(&self.syntax)
11959 }
11960 #[inline]
11961 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
11962 support::token(&self.syntax, SyntaxKind::L_PAREN)
11963 }
11964 #[inline]
11965 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
11966 support::token(&self.syntax, SyntaxKind::R_PAREN)
11967 }
11968}
11969
11970#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11971pub struct PartitionOf {
11972 pub(crate) syntax: SyntaxNode,
11973}
11974impl PartitionOf {
11975 #[inline]
11976 pub fn ty(&self) -> Option<Type> {
11977 support::child(&self.syntax)
11978 }
11979 #[inline]
11980 pub fn of_token(&self) -> Option<SyntaxToken> {
11981 support::token(&self.syntax, SyntaxKind::OF_KW)
11982 }
11983 #[inline]
11984 pub fn partition_token(&self) -> Option<SyntaxToken> {
11985 support::token(&self.syntax, SyntaxKind::PARTITION_KW)
11986 }
11987}
11988
11989#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11990pub struct Path {
11991 pub(crate) syntax: SyntaxNode,
11992}
11993impl Path {
11994 #[inline]
11995 pub fn qualifier(&self) -> Option<Path> {
11996 support::child(&self.syntax)
11997 }
11998 #[inline]
11999 pub fn segment(&self) -> Option<PathSegment> {
12000 support::child(&self.syntax)
12001 }
12002 #[inline]
12003 pub fn dot_token(&self) -> Option<SyntaxToken> {
12004 support::token(&self.syntax, SyntaxKind::DOT)
12005 }
12006}
12007
12008#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12009pub struct PathSegment {
12010 pub(crate) syntax: SyntaxNode,
12011}
12012impl PathSegment {
12013 #[inline]
12014 pub fn name(&self) -> Option<Name> {
12015 support::child(&self.syntax)
12016 }
12017 #[inline]
12018 pub fn name_ref(&self) -> Option<NameRef> {
12019 support::child(&self.syntax)
12020 }
12021}
12022
12023#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12024pub struct PathType {
12025 pub(crate) syntax: SyntaxNode,
12026}
12027impl PathType {
12028 #[inline]
12029 pub fn arg_list(&self) -> Option<ArgList> {
12030 support::child(&self.syntax)
12031 }
12032 #[inline]
12033 pub fn path(&self) -> Option<Path> {
12034 support::child(&self.syntax)
12035 }
12036}
12037
12038#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12039pub struct PercentType {
12040 pub(crate) syntax: SyntaxNode,
12041}
12042impl PercentType {
12043 #[inline]
12044 pub fn percent_token(&self) -> Option<SyntaxToken> {
12045 support::token(&self.syntax, SyntaxKind::PERCENT)
12046 }
12047 #[inline]
12048 pub fn type_token(&self) -> Option<SyntaxToken> {
12049 support::token(&self.syntax, SyntaxKind::TYPE_KW)
12050 }
12051}
12052
12053#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12054pub struct PercentTypeClause {
12055 pub(crate) syntax: SyntaxNode,
12056}
12057impl PercentTypeClause {
12058 #[inline]
12059 pub fn path(&self) -> Option<Path> {
12060 support::child(&self.syntax)
12061 }
12062 #[inline]
12063 pub fn percent_type_clause(&self) -> Option<PercentTypeClause> {
12064 support::child(&self.syntax)
12065 }
12066}
12067
12068#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12069pub struct PositionFn {
12070 pub(crate) syntax: SyntaxNode,
12071}
12072impl PositionFn {
12073 #[inline]
12074 pub fn expr(&self) -> Option<Expr> {
12075 support::child(&self.syntax)
12076 }
12077 #[inline]
12078 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
12079 support::token(&self.syntax, SyntaxKind::L_PAREN)
12080 }
12081 #[inline]
12082 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
12083 support::token(&self.syntax, SyntaxKind::R_PAREN)
12084 }
12085 #[inline]
12086 pub fn in_token(&self) -> Option<SyntaxToken> {
12087 support::token(&self.syntax, SyntaxKind::IN_KW)
12088 }
12089 #[inline]
12090 pub fn position_token(&self) -> Option<SyntaxToken> {
12091 support::token(&self.syntax, SyntaxKind::POSITION_KW)
12092 }
12093}
12094
12095#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12096pub struct PostfixExpr {
12097 pub(crate) syntax: SyntaxNode,
12098}
12099impl PostfixExpr {
12100 #[inline]
12101 pub fn expr(&self) -> Option<Expr> {
12102 support::child(&self.syntax)
12103 }
12104}
12105
12106#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12107pub struct PrefixExpr {
12108 pub(crate) syntax: SyntaxNode,
12109}
12110impl PrefixExpr {
12111 #[inline]
12112 pub fn expr(&self) -> Option<Expr> {
12113 support::child(&self.syntax)
12114 }
12115}
12116
12117#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12118pub struct Prepare {
12119 pub(crate) syntax: SyntaxNode,
12120}
12121impl Prepare {
12122 #[inline]
12123 pub fn name(&self) -> Option<Name> {
12124 support::child(&self.syntax)
12125 }
12126 #[inline]
12127 pub fn preparable_stmt(&self) -> Option<PreparableStmt> {
12128 support::child(&self.syntax)
12129 }
12130 #[inline]
12131 pub fn as_token(&self) -> Option<SyntaxToken> {
12132 support::token(&self.syntax, SyntaxKind::AS_KW)
12133 }
12134 #[inline]
12135 pub fn prepare_token(&self) -> Option<SyntaxToken> {
12136 support::token(&self.syntax, SyntaxKind::PREPARE_KW)
12137 }
12138}
12139
12140#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12141pub struct PrepareTransaction {
12142 pub(crate) syntax: SyntaxNode,
12143}
12144impl PrepareTransaction {
12145 #[inline]
12146 pub fn literal(&self) -> Option<Literal> {
12147 support::child(&self.syntax)
12148 }
12149 #[inline]
12150 pub fn prepare_token(&self) -> Option<SyntaxToken> {
12151 support::token(&self.syntax, SyntaxKind::PREPARE_KW)
12152 }
12153 #[inline]
12154 pub fn transaction_token(&self) -> Option<SyntaxToken> {
12155 support::token(&self.syntax, SyntaxKind::TRANSACTION_KW)
12156 }
12157}
12158
12159#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12160pub struct PreserveRows {
12161 pub(crate) syntax: SyntaxNode,
12162}
12163impl PreserveRows {
12164 #[inline]
12165 pub fn preserve_token(&self) -> Option<SyntaxToken> {
12166 support::token(&self.syntax, SyntaxKind::PRESERVE_KW)
12167 }
12168 #[inline]
12169 pub fn rows_token(&self) -> Option<SyntaxToken> {
12170 support::token(&self.syntax, SyntaxKind::ROWS_KW)
12171 }
12172}
12173
12174#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12175pub struct PrimaryKeyConstraint {
12176 pub(crate) syntax: SyntaxNode,
12177}
12178impl PrimaryKeyConstraint {
12179 #[inline]
12180 pub fn column_list(&self) -> Option<ColumnList> {
12181 support::child(&self.syntax)
12182 }
12183 #[inline]
12184 pub fn name(&self) -> Option<Name> {
12185 support::child(&self.syntax)
12186 }
12187 #[inline]
12188 pub fn partition_item_list(&self) -> Option<PartitionItemList> {
12189 support::child(&self.syntax)
12190 }
12191 #[inline]
12192 pub fn using_index(&self) -> Option<UsingIndex> {
12193 support::child(&self.syntax)
12194 }
12195 #[inline]
12196 pub fn constraint_token(&self) -> Option<SyntaxToken> {
12197 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
12198 }
12199 #[inline]
12200 pub fn key_token(&self) -> Option<SyntaxToken> {
12201 support::token(&self.syntax, SyntaxKind::KEY_KW)
12202 }
12203 #[inline]
12204 pub fn primary_token(&self) -> Option<SyntaxToken> {
12205 support::token(&self.syntax, SyntaxKind::PRIMARY_KW)
12206 }
12207}
12208
12209#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12210pub struct PrivilegeTarget {
12211 pub(crate) syntax: SyntaxNode,
12212}
12213impl PrivilegeTarget {
12214 #[inline]
12215 pub fn functions_token(&self) -> Option<SyntaxToken> {
12216 support::token(&self.syntax, SyntaxKind::FUNCTIONS_KW)
12217 }
12218 #[inline]
12219 pub fn large_token(&self) -> Option<SyntaxToken> {
12220 support::token(&self.syntax, SyntaxKind::LARGE_KW)
12221 }
12222 #[inline]
12223 pub fn objects_token(&self) -> Option<SyntaxToken> {
12224 support::token(&self.syntax, SyntaxKind::OBJECTS_KW)
12225 }
12226 #[inline]
12227 pub fn routines_token(&self) -> Option<SyntaxToken> {
12228 support::token(&self.syntax, SyntaxKind::ROUTINES_KW)
12229 }
12230 #[inline]
12231 pub fn schemas_token(&self) -> Option<SyntaxToken> {
12232 support::token(&self.syntax, SyntaxKind::SCHEMAS_KW)
12233 }
12234 #[inline]
12235 pub fn sequences_token(&self) -> Option<SyntaxToken> {
12236 support::token(&self.syntax, SyntaxKind::SEQUENCES_KW)
12237 }
12238 #[inline]
12239 pub fn tables_token(&self) -> Option<SyntaxToken> {
12240 support::token(&self.syntax, SyntaxKind::TABLES_KW)
12241 }
12242 #[inline]
12243 pub fn types_token(&self) -> Option<SyntaxToken> {
12244 support::token(&self.syntax, SyntaxKind::TYPES_KW)
12245 }
12246}
12247
12248#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12249pub struct Privileges {
12250 pub(crate) syntax: SyntaxNode,
12251}
12252impl Privileges {
12253 #[inline]
12254 pub fn column_list(&self) -> Option<ColumnList> {
12255 support::child(&self.syntax)
12256 }
12257 #[inline]
12258 pub fn revoke_command_list(&self) -> Option<RevokeCommandList> {
12259 support::child(&self.syntax)
12260 }
12261 #[inline]
12262 pub fn all_token(&self) -> Option<SyntaxToken> {
12263 support::token(&self.syntax, SyntaxKind::ALL_KW)
12264 }
12265 #[inline]
12266 pub fn privileges_token(&self) -> Option<SyntaxToken> {
12267 support::token(&self.syntax, SyntaxKind::PRIVILEGES_KW)
12268 }
12269}
12270
12271#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12272pub struct PublicationObject {
12273 pub(crate) syntax: SyntaxNode,
12274}
12275impl PublicationObject {
12276 #[inline]
12277 pub fn column_list(&self) -> Option<ColumnList> {
12278 support::child(&self.syntax)
12279 }
12280 #[inline]
12281 pub fn name_ref(&self) -> Option<NameRef> {
12282 support::child(&self.syntax)
12283 }
12284 #[inline]
12285 pub fn path(&self) -> Option<Path> {
12286 support::child(&self.syntax)
12287 }
12288 #[inline]
12289 pub fn where_condition_clause(&self) -> Option<WhereConditionClause> {
12290 support::child(&self.syntax)
12291 }
12292 #[inline]
12293 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
12294 support::token(&self.syntax, SyntaxKind::L_PAREN)
12295 }
12296 #[inline]
12297 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
12298 support::token(&self.syntax, SyntaxKind::R_PAREN)
12299 }
12300 #[inline]
12301 pub fn star_token(&self) -> Option<SyntaxToken> {
12302 support::token(&self.syntax, SyntaxKind::STAR)
12303 }
12304 #[inline]
12305 pub fn current_schema_token(&self) -> Option<SyntaxToken> {
12306 support::token(&self.syntax, SyntaxKind::CURRENT_SCHEMA_KW)
12307 }
12308 #[inline]
12309 pub fn in_token(&self) -> Option<SyntaxToken> {
12310 support::token(&self.syntax, SyntaxKind::IN_KW)
12311 }
12312 #[inline]
12313 pub fn only_token(&self) -> Option<SyntaxToken> {
12314 support::token(&self.syntax, SyntaxKind::ONLY_KW)
12315 }
12316 #[inline]
12317 pub fn schema_token(&self) -> Option<SyntaxToken> {
12318 support::token(&self.syntax, SyntaxKind::SCHEMA_KW)
12319 }
12320 #[inline]
12321 pub fn table_token(&self) -> Option<SyntaxToken> {
12322 support::token(&self.syntax, SyntaxKind::TABLE_KW)
12323 }
12324 #[inline]
12325 pub fn tables_token(&self) -> Option<SyntaxToken> {
12326 support::token(&self.syntax, SyntaxKind::TABLES_KW)
12327 }
12328}
12329
12330#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12331pub struct ReadCommitted {
12332 pub(crate) syntax: SyntaxNode,
12333}
12334impl ReadCommitted {
12335 #[inline]
12336 pub fn committed_token(&self) -> Option<SyntaxToken> {
12337 support::token(&self.syntax, SyntaxKind::COMMITTED_KW)
12338 }
12339 #[inline]
12340 pub fn isolation_token(&self) -> Option<SyntaxToken> {
12341 support::token(&self.syntax, SyntaxKind::ISOLATION_KW)
12342 }
12343 #[inline]
12344 pub fn level_token(&self) -> Option<SyntaxToken> {
12345 support::token(&self.syntax, SyntaxKind::LEVEL_KW)
12346 }
12347 #[inline]
12348 pub fn read_token(&self) -> Option<SyntaxToken> {
12349 support::token(&self.syntax, SyntaxKind::READ_KW)
12350 }
12351}
12352
12353#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12354pub struct ReadOnly {
12355 pub(crate) syntax: SyntaxNode,
12356}
12357impl ReadOnly {
12358 #[inline]
12359 pub fn only_token(&self) -> Option<SyntaxToken> {
12360 support::token(&self.syntax, SyntaxKind::ONLY_KW)
12361 }
12362 #[inline]
12363 pub fn read_token(&self) -> Option<SyntaxToken> {
12364 support::token(&self.syntax, SyntaxKind::READ_KW)
12365 }
12366}
12367
12368#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12369pub struct ReadUncommitted {
12370 pub(crate) syntax: SyntaxNode,
12371}
12372impl ReadUncommitted {
12373 #[inline]
12374 pub fn isolation_token(&self) -> Option<SyntaxToken> {
12375 support::token(&self.syntax, SyntaxKind::ISOLATION_KW)
12376 }
12377 #[inline]
12378 pub fn level_token(&self) -> Option<SyntaxToken> {
12379 support::token(&self.syntax, SyntaxKind::LEVEL_KW)
12380 }
12381 #[inline]
12382 pub fn read_token(&self) -> Option<SyntaxToken> {
12383 support::token(&self.syntax, SyntaxKind::READ_KW)
12384 }
12385 #[inline]
12386 pub fn uncommitted_token(&self) -> Option<SyntaxToken> {
12387 support::token(&self.syntax, SyntaxKind::UNCOMMITTED_KW)
12388 }
12389}
12390
12391#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12392pub struct ReadWrite {
12393 pub(crate) syntax: SyntaxNode,
12394}
12395impl ReadWrite {
12396 #[inline]
12397 pub fn read_token(&self) -> Option<SyntaxToken> {
12398 support::token(&self.syntax, SyntaxKind::READ_KW)
12399 }
12400 #[inline]
12401 pub fn write_token(&self) -> Option<SyntaxToken> {
12402 support::token(&self.syntax, SyntaxKind::WRITE_KW)
12403 }
12404}
12405
12406#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12407pub struct Reassign {
12408 pub(crate) syntax: SyntaxNode,
12409}
12410impl Reassign {
12411 #[inline]
12412 pub fn new_roles(&self) -> Option<RoleList> {
12413 support::child(&self.syntax)
12414 }
12415 #[inline]
12416 pub fn old_roles(&self) -> Option<RoleList> {
12417 support::child(&self.syntax)
12418 }
12419 #[inline]
12420 pub fn by_token(&self) -> Option<SyntaxToken> {
12421 support::token(&self.syntax, SyntaxKind::BY_KW)
12422 }
12423 #[inline]
12424 pub fn owned_token(&self) -> Option<SyntaxToken> {
12425 support::token(&self.syntax, SyntaxKind::OWNED_KW)
12426 }
12427 #[inline]
12428 pub fn reassign_token(&self) -> Option<SyntaxToken> {
12429 support::token(&self.syntax, SyntaxKind::REASSIGN_KW)
12430 }
12431 #[inline]
12432 pub fn to_token(&self) -> Option<SyntaxToken> {
12433 support::token(&self.syntax, SyntaxKind::TO_KW)
12434 }
12435}
12436
12437#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12438pub struct ReferencesConstraint {
12439 pub(crate) syntax: SyntaxNode,
12440}
12441impl ReferencesConstraint {
12442 #[inline]
12443 pub fn match_type(&self) -> Option<MatchType> {
12444 support::child(&self.syntax)
12445 }
12446 #[inline]
12447 pub fn name(&self) -> Option<Name> {
12448 support::child(&self.syntax)
12449 }
12450 #[inline]
12451 pub fn name_ref(&self) -> Option<NameRef> {
12452 support::child(&self.syntax)
12453 }
12454 #[inline]
12455 pub fn on_delete_action(&self) -> Option<OnDeleteAction> {
12456 support::child(&self.syntax)
12457 }
12458 #[inline]
12459 pub fn on_update_action(&self) -> Option<OnUpdateAction> {
12460 support::child(&self.syntax)
12461 }
12462 #[inline]
12463 pub fn path(&self) -> Option<Path> {
12464 support::child(&self.syntax)
12465 }
12466 #[inline]
12467 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
12468 support::token(&self.syntax, SyntaxKind::L_PAREN)
12469 }
12470 #[inline]
12471 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
12472 support::token(&self.syntax, SyntaxKind::R_PAREN)
12473 }
12474 #[inline]
12475 pub fn constraint_token(&self) -> Option<SyntaxToken> {
12476 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
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 Set {
13850 pub(crate) syntax: SyntaxNode,
13851}
13852impl Set {
13853 #[inline]
13854 pub fn config_value(&self) -> Option<ConfigValue> {
13855 support::child(&self.syntax)
13856 }
13857 #[inline]
13858 pub fn config_values(&self) -> AstChildren<ConfigValue> {
13859 support::children(&self.syntax)
13860 }
13861 #[inline]
13862 pub fn literal(&self) -> Option<Literal> {
13863 support::child(&self.syntax)
13864 }
13865 #[inline]
13866 pub fn path(&self) -> Option<Path> {
13867 support::child(&self.syntax)
13868 }
13869 #[inline]
13870 pub fn eq_token(&self) -> Option<SyntaxToken> {
13871 support::token(&self.syntax, SyntaxKind::EQ)
13872 }
13873 #[inline]
13874 pub fn catalog_token(&self) -> Option<SyntaxToken> {
13875 support::token(&self.syntax, SyntaxKind::CATALOG_KW)
13876 }
13877 #[inline]
13878 pub fn content_token(&self) -> Option<SyntaxToken> {
13879 support::token(&self.syntax, SyntaxKind::CONTENT_KW)
13880 }
13881 #[inline]
13882 pub fn current_token(&self) -> Option<SyntaxToken> {
13883 support::token(&self.syntax, SyntaxKind::CURRENT_KW)
13884 }
13885 #[inline]
13886 pub fn default_token(&self) -> Option<SyntaxToken> {
13887 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
13888 }
13889 #[inline]
13890 pub fn document_token(&self) -> Option<SyntaxToken> {
13891 support::token(&self.syntax, SyntaxKind::DOCUMENT_KW)
13892 }
13893 #[inline]
13894 pub fn from_token(&self) -> Option<SyntaxToken> {
13895 support::token(&self.syntax, SyntaxKind::FROM_KW)
13896 }
13897 #[inline]
13898 pub fn local_token(&self) -> Option<SyntaxToken> {
13899 support::token(&self.syntax, SyntaxKind::LOCAL_KW)
13900 }
13901 #[inline]
13902 pub fn option_token(&self) -> Option<SyntaxToken> {
13903 support::token(&self.syntax, SyntaxKind::OPTION_KW)
13904 }
13905 #[inline]
13906 pub fn schema_token(&self) -> Option<SyntaxToken> {
13907 support::token(&self.syntax, SyntaxKind::SCHEMA_KW)
13908 }
13909 #[inline]
13910 pub fn session_token(&self) -> Option<SyntaxToken> {
13911 support::token(&self.syntax, SyntaxKind::SESSION_KW)
13912 }
13913 #[inline]
13914 pub fn set_token(&self) -> Option<SyntaxToken> {
13915 support::token(&self.syntax, SyntaxKind::SET_KW)
13916 }
13917 #[inline]
13918 pub fn time_token(&self) -> Option<SyntaxToken> {
13919 support::token(&self.syntax, SyntaxKind::TIME_KW)
13920 }
13921 #[inline]
13922 pub fn to_token(&self) -> Option<SyntaxToken> {
13923 support::token(&self.syntax, SyntaxKind::TO_KW)
13924 }
13925 #[inline]
13926 pub fn xml_token(&self) -> Option<SyntaxToken> {
13927 support::token(&self.syntax, SyntaxKind::XML_KW)
13928 }
13929 #[inline]
13930 pub fn zone_token(&self) -> Option<SyntaxToken> {
13931 support::token(&self.syntax, SyntaxKind::ZONE_KW)
13932 }
13933}
13934
13935#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13936pub struct SetAccessMethod {
13937 pub(crate) syntax: SyntaxNode,
13938}
13939impl SetAccessMethod {
13940 #[inline]
13941 pub fn name_ref(&self) -> Option<NameRef> {
13942 support::child(&self.syntax)
13943 }
13944 #[inline]
13945 pub fn access_token(&self) -> Option<SyntaxToken> {
13946 support::token(&self.syntax, SyntaxKind::ACCESS_KW)
13947 }
13948 #[inline]
13949 pub fn method_token(&self) -> Option<SyntaxToken> {
13950 support::token(&self.syntax, SyntaxKind::METHOD_KW)
13951 }
13952 #[inline]
13953 pub fn set_token(&self) -> Option<SyntaxToken> {
13954 support::token(&self.syntax, SyntaxKind::SET_KW)
13955 }
13956}
13957
13958#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13959pub struct SetClause {
13960 pub(crate) syntax: SyntaxNode,
13961}
13962impl SetClause {
13963 #[inline]
13964 pub fn set_column_list(&self) -> Option<SetColumnList> {
13965 support::child(&self.syntax)
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 SetColumnList {
13975 pub(crate) syntax: SyntaxNode,
13976}
13977impl SetColumnList {
13978 #[inline]
13979 pub fn set_columns(&self) -> AstChildren<SetColumn> {
13980 support::children(&self.syntax)
13981 }
13982}
13983
13984#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13985pub struct SetCompression {
13986 pub(crate) syntax: SyntaxNode,
13987}
13988impl SetCompression {
13989 #[inline]
13990 pub fn compression_token(&self) -> Option<SyntaxToken> {
13991 support::token(&self.syntax, SyntaxKind::COMPRESSION_KW)
13992 }
13993 #[inline]
13994 pub fn set_token(&self) -> Option<SyntaxToken> {
13995 support::token(&self.syntax, SyntaxKind::SET_KW)
13996 }
13997}
13998
13999#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14000pub struct SetConfigParam {
14001 pub(crate) syntax: SyntaxNode,
14002}
14003impl SetConfigParam {
14004 #[inline]
14005 pub fn path(&self) -> Option<Path> {
14006 support::child(&self.syntax)
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 SetConstraints {
14016 pub(crate) syntax: SyntaxNode,
14017}
14018impl SetConstraints {
14019 #[inline]
14020 pub fn paths(&self) -> AstChildren<Path> {
14021 support::children(&self.syntax)
14022 }
14023 #[inline]
14024 pub fn all_token(&self) -> Option<SyntaxToken> {
14025 support::token(&self.syntax, SyntaxKind::ALL_KW)
14026 }
14027 #[inline]
14028 pub fn constraints_token(&self) -> Option<SyntaxToken> {
14029 support::token(&self.syntax, SyntaxKind::CONSTRAINTS_KW)
14030 }
14031 #[inline]
14032 pub fn deferred_token(&self) -> Option<SyntaxToken> {
14033 support::token(&self.syntax, SyntaxKind::DEFERRED_KW)
14034 }
14035 #[inline]
14036 pub fn immediate_token(&self) -> Option<SyntaxToken> {
14037 support::token(&self.syntax, SyntaxKind::IMMEDIATE_KW)
14038 }
14039 #[inline]
14040 pub fn set_token(&self) -> Option<SyntaxToken> {
14041 support::token(&self.syntax, SyntaxKind::SET_KW)
14042 }
14043}
14044
14045#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14046pub struct SetDefault {
14047 pub(crate) syntax: SyntaxNode,
14048}
14049impl SetDefault {
14050 #[inline]
14051 pub fn expr(&self) -> Option<Expr> {
14052 support::child(&self.syntax)
14053 }
14054 #[inline]
14055 pub fn default_token(&self) -> Option<SyntaxToken> {
14056 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
14057 }
14058 #[inline]
14059 pub fn set_token(&self) -> Option<SyntaxToken> {
14060 support::token(&self.syntax, SyntaxKind::SET_KW)
14061 }
14062}
14063
14064#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14065pub struct SetDefaultColumns {
14066 pub(crate) syntax: SyntaxNode,
14067}
14068impl SetDefaultColumns {
14069 #[inline]
14070 pub fn column_list(&self) -> Option<ColumnList> {
14071 support::child(&self.syntax)
14072 }
14073 #[inline]
14074 pub fn default_token(&self) -> Option<SyntaxToken> {
14075 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
14076 }
14077 #[inline]
14078 pub fn set_token(&self) -> Option<SyntaxToken> {
14079 support::token(&self.syntax, SyntaxKind::SET_KW)
14080 }
14081}
14082
14083#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14084pub struct SetExpr {
14085 pub(crate) syntax: SyntaxNode,
14086}
14087impl SetExpr {
14088 #[inline]
14089 pub fn expr(&self) -> Option<Expr> {
14090 support::child(&self.syntax)
14091 }
14092 #[inline]
14093 pub fn default_token(&self) -> Option<SyntaxToken> {
14094 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
14095 }
14096}
14097
14098#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14099pub struct SetExprList {
14100 pub(crate) syntax: SyntaxNode,
14101}
14102impl SetExprList {
14103 #[inline]
14104 pub fn set_exprs(&self) -> AstChildren<SetExpr> {
14105 support::children(&self.syntax)
14106 }
14107 #[inline]
14108 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
14109 support::token(&self.syntax, SyntaxKind::L_PAREN)
14110 }
14111 #[inline]
14112 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
14113 support::token(&self.syntax, SyntaxKind::R_PAREN)
14114 }
14115 #[inline]
14116 pub fn row_token(&self) -> Option<SyntaxToken> {
14117 support::token(&self.syntax, SyntaxKind::ROW_KW)
14118 }
14119}
14120
14121#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14122pub struct SetExpression {
14123 pub(crate) syntax: SyntaxNode,
14124}
14125impl SetExpression {
14126 #[inline]
14127 pub fn expr(&self) -> Option<Expr> {
14128 support::child(&self.syntax)
14129 }
14130 #[inline]
14131 pub fn expression_token(&self) -> Option<SyntaxToken> {
14132 support::token(&self.syntax, SyntaxKind::EXPRESSION_KW)
14133 }
14134 #[inline]
14135 pub fn set_token(&self) -> Option<SyntaxToken> {
14136 support::token(&self.syntax, SyntaxKind::SET_KW)
14137 }
14138}
14139
14140#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14141pub struct SetFuncOption {
14142 pub(crate) syntax: SyntaxNode,
14143}
14144impl SetFuncOption {
14145 #[inline]
14146 pub fn set_token(&self) -> Option<SyntaxToken> {
14147 support::token(&self.syntax, SyntaxKind::SET_KW)
14148 }
14149}
14150
14151#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14152pub struct SetGenerated {
14153 pub(crate) syntax: SyntaxNode,
14154}
14155impl SetGenerated {
14156 #[inline]
14157 pub fn set_token(&self) -> Option<SyntaxToken> {
14158 support::token(&self.syntax, SyntaxKind::SET_KW)
14159 }
14160}
14161
14162#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14163pub struct SetGeneratedOptions {
14164 pub(crate) syntax: SyntaxNode,
14165}
14166impl SetGeneratedOptions {
14167 #[inline]
14168 pub fn generated_token(&self) -> Option<SyntaxToken> {
14169 support::token(&self.syntax, SyntaxKind::GENERATED_KW)
14170 }
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 SetLogged {
14179 pub(crate) syntax: SyntaxNode,
14180}
14181impl SetLogged {
14182 #[inline]
14183 pub fn logged_token(&self) -> Option<SyntaxToken> {
14184 support::token(&self.syntax, SyntaxKind::LOGGED_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 SetMultipleColumns {
14194 pub(crate) syntax: SyntaxNode,
14195}
14196impl SetMultipleColumns {
14197 #[inline]
14198 pub fn column_list(&self) -> Option<ColumnList> {
14199 support::child(&self.syntax)
14200 }
14201 #[inline]
14202 pub fn paren_select(&self) -> Option<ParenSelect> {
14203 support::child(&self.syntax)
14204 }
14205 #[inline]
14206 pub fn set_expr_list(&self) -> Option<SetExprList> {
14207 support::child(&self.syntax)
14208 }
14209 #[inline]
14210 pub fn eq_token(&self) -> Option<SyntaxToken> {
14211 support::token(&self.syntax, SyntaxKind::EQ)
14212 }
14213}
14214
14215#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14216pub struct SetNotNull {
14217 pub(crate) syntax: SyntaxNode,
14218}
14219impl SetNotNull {
14220 #[inline]
14221 pub fn not_token(&self) -> Option<SyntaxToken> {
14222 support::token(&self.syntax, SyntaxKind::NOT_KW)
14223 }
14224 #[inline]
14225 pub fn null_token(&self) -> Option<SyntaxToken> {
14226 support::token(&self.syntax, SyntaxKind::NULL_KW)
14227 }
14228 #[inline]
14229 pub fn set_token(&self) -> Option<SyntaxToken> {
14230 support::token(&self.syntax, SyntaxKind::SET_KW)
14231 }
14232}
14233
14234#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14235pub struct SetNullColumns {
14236 pub(crate) syntax: SyntaxNode,
14237}
14238impl SetNullColumns {
14239 #[inline]
14240 pub fn column_list(&self) -> Option<ColumnList> {
14241 support::child(&self.syntax)
14242 }
14243 #[inline]
14244 pub fn null_token(&self) -> Option<SyntaxToken> {
14245 support::token(&self.syntax, SyntaxKind::NULL_KW)
14246 }
14247 #[inline]
14248 pub fn set_token(&self) -> Option<SyntaxToken> {
14249 support::token(&self.syntax, SyntaxKind::SET_KW)
14250 }
14251}
14252
14253#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14254pub struct SetOptions {
14255 pub(crate) syntax: SyntaxNode,
14256}
14257impl SetOptions {
14258 #[inline]
14259 pub fn attribute_list(&self) -> Option<AttributeList> {
14260 support::child(&self.syntax)
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 SetOptionsList {
14270 pub(crate) syntax: SyntaxNode,
14271}
14272impl SetOptionsList {
14273 #[inline]
14274 pub fn alter_option_list(&self) -> Option<AlterOptionList> {
14275 support::child(&self.syntax)
14276 }
14277 #[inline]
14278 pub fn options_token(&self) -> Option<SyntaxToken> {
14279 support::token(&self.syntax, SyntaxKind::OPTIONS_KW)
14280 }
14281 #[inline]
14282 pub fn set_token(&self) -> Option<SyntaxToken> {
14283 support::token(&self.syntax, SyntaxKind::SET_KW)
14284 }
14285}
14286
14287#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14288pub struct SetRole {
14289 pub(crate) syntax: SyntaxNode,
14290}
14291impl SetRole {
14292 #[inline]
14293 pub fn role(&self) -> Option<Role> {
14294 support::child(&self.syntax)
14295 }
14296 #[inline]
14297 pub fn local_token(&self) -> Option<SyntaxToken> {
14298 support::token(&self.syntax, SyntaxKind::LOCAL_KW)
14299 }
14300 #[inline]
14301 pub fn none_token(&self) -> Option<SyntaxToken> {
14302 support::token(&self.syntax, SyntaxKind::NONE_KW)
14303 }
14304 #[inline]
14305 pub fn reset_token(&self) -> Option<SyntaxToken> {
14306 support::token(&self.syntax, SyntaxKind::RESET_KW)
14307 }
14308 #[inline]
14309 pub fn role_token(&self) -> Option<SyntaxToken> {
14310 support::token(&self.syntax, SyntaxKind::ROLE_KW)
14311 }
14312 #[inline]
14313 pub fn session_token(&self) -> Option<SyntaxToken> {
14314 support::token(&self.syntax, SyntaxKind::SESSION_KW)
14315 }
14316 #[inline]
14317 pub fn set_token(&self) -> Option<SyntaxToken> {
14318 support::token(&self.syntax, SyntaxKind::SET_KW)
14319 }
14320}
14321
14322#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14323pub struct SetSchema {
14324 pub(crate) syntax: SyntaxNode,
14325}
14326impl SetSchema {
14327 #[inline]
14328 pub fn name_ref(&self) -> Option<NameRef> {
14329 support::child(&self.syntax)
14330 }
14331 #[inline]
14332 pub fn schema_token(&self) -> Option<SyntaxToken> {
14333 support::token(&self.syntax, SyntaxKind::SCHEMA_KW)
14334 }
14335 #[inline]
14336 pub fn set_token(&self) -> Option<SyntaxToken> {
14337 support::token(&self.syntax, SyntaxKind::SET_KW)
14338 }
14339}
14340
14341#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14342pub struct SetSequenceOption {
14343 pub(crate) syntax: SyntaxNode,
14344}
14345impl SetSequenceOption {
14346 #[inline]
14347 pub fn set_token(&self) -> Option<SyntaxToken> {
14348 support::token(&self.syntax, SyntaxKind::SET_KW)
14349 }
14350}
14351
14352#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14353pub struct SetSessionAuth {
14354 pub(crate) syntax: SyntaxNode,
14355}
14356impl SetSessionAuth {
14357 #[inline]
14358 pub fn literal(&self) -> Option<Literal> {
14359 support::child(&self.syntax)
14360 }
14361 #[inline]
14362 pub fn role(&self) -> Option<Role> {
14363 support::child(&self.syntax)
14364 }
14365 #[inline]
14366 pub fn authorization_token(&self) -> Option<SyntaxToken> {
14367 support::token(&self.syntax, SyntaxKind::AUTHORIZATION_KW)
14368 }
14369 #[inline]
14370 pub fn default_token(&self) -> Option<SyntaxToken> {
14371 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
14372 }
14373 #[inline]
14374 pub fn local_token(&self) -> Option<SyntaxToken> {
14375 support::token(&self.syntax, SyntaxKind::LOCAL_KW)
14376 }
14377 #[inline]
14378 pub fn session_token(&self) -> Option<SyntaxToken> {
14379 support::token(&self.syntax, SyntaxKind::SESSION_KW)
14380 }
14381 #[inline]
14382 pub fn set_token(&self) -> Option<SyntaxToken> {
14383 support::token(&self.syntax, SyntaxKind::SET_KW)
14384 }
14385}
14386
14387#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14388pub struct SetSingleColumn {
14389 pub(crate) syntax: SyntaxNode,
14390}
14391impl SetSingleColumn {
14392 #[inline]
14393 pub fn column(&self) -> Option<Column> {
14394 support::child(&self.syntax)
14395 }
14396 #[inline]
14397 pub fn set_expr(&self) -> Option<SetExpr> {
14398 support::child(&self.syntax)
14399 }
14400 #[inline]
14401 pub fn eq_token(&self) -> Option<SyntaxToken> {
14402 support::token(&self.syntax, SyntaxKind::EQ)
14403 }
14404}
14405
14406#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14407pub struct SetStatistics {
14408 pub(crate) syntax: SyntaxNode,
14409}
14410impl SetStatistics {
14411 #[inline]
14412 pub fn set_token(&self) -> Option<SyntaxToken> {
14413 support::token(&self.syntax, SyntaxKind::SET_KW)
14414 }
14415 #[inline]
14416 pub fn statistics_token(&self) -> Option<SyntaxToken> {
14417 support::token(&self.syntax, SyntaxKind::STATISTICS_KW)
14418 }
14419}
14420
14421#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14422pub struct SetStorage {
14423 pub(crate) syntax: SyntaxNode,
14424}
14425impl SetStorage {
14426 #[inline]
14427 pub fn set_token(&self) -> Option<SyntaxToken> {
14428 support::token(&self.syntax, SyntaxKind::SET_KW)
14429 }
14430 #[inline]
14431 pub fn storage_token(&self) -> Option<SyntaxToken> {
14432 support::token(&self.syntax, SyntaxKind::STORAGE_KW)
14433 }
14434}
14435
14436#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14437pub struct SetTablespace {
14438 pub(crate) syntax: SyntaxNode,
14439}
14440impl SetTablespace {
14441 #[inline]
14442 pub fn path(&self) -> Option<Path> {
14443 support::child(&self.syntax)
14444 }
14445 #[inline]
14446 pub fn set_token(&self) -> Option<SyntaxToken> {
14447 support::token(&self.syntax, SyntaxKind::SET_KW)
14448 }
14449 #[inline]
14450 pub fn tablespace_token(&self) -> Option<SyntaxToken> {
14451 support::token(&self.syntax, SyntaxKind::TABLESPACE_KW)
14452 }
14453}
14454
14455#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14456pub struct SetTransaction {
14457 pub(crate) syntax: SyntaxNode,
14458}
14459impl SetTransaction {
14460 #[inline]
14461 pub fn literal(&self) -> Option<Literal> {
14462 support::child(&self.syntax)
14463 }
14464 #[inline]
14465 pub fn transaction_mode_list(&self) -> Option<TransactionModeList> {
14466 support::child(&self.syntax)
14467 }
14468 #[inline]
14469 pub fn as_token(&self) -> Option<SyntaxToken> {
14470 support::token(&self.syntax, SyntaxKind::AS_KW)
14471 }
14472 #[inline]
14473 pub fn characteristics_token(&self) -> Option<SyntaxToken> {
14474 support::token(&self.syntax, SyntaxKind::CHARACTERISTICS_KW)
14475 }
14476 #[inline]
14477 pub fn session_token(&self) -> Option<SyntaxToken> {
14478 support::token(&self.syntax, SyntaxKind::SESSION_KW)
14479 }
14480 #[inline]
14481 pub fn set_token(&self) -> Option<SyntaxToken> {
14482 support::token(&self.syntax, SyntaxKind::SET_KW)
14483 }
14484 #[inline]
14485 pub fn snapshot_token(&self) -> Option<SyntaxToken> {
14486 support::token(&self.syntax, SyntaxKind::SNAPSHOT_KW)
14487 }
14488 #[inline]
14489 pub fn transaction_token(&self) -> Option<SyntaxToken> {
14490 support::token(&self.syntax, SyntaxKind::TRANSACTION_KW)
14491 }
14492}
14493
14494#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14495pub struct SetType {
14496 pub(crate) syntax: SyntaxNode,
14497}
14498impl SetType {
14499 #[inline]
14500 pub fn collate(&self) -> Option<Collate> {
14501 support::child(&self.syntax)
14502 }
14503 #[inline]
14504 pub fn ty(&self) -> Option<Type> {
14505 support::child(&self.syntax)
14506 }
14507 #[inline]
14508 pub fn set_token(&self) -> Option<SyntaxToken> {
14509 support::token(&self.syntax, SyntaxKind::SET_KW)
14510 }
14511 #[inline]
14512 pub fn type_token(&self) -> Option<SyntaxToken> {
14513 support::token(&self.syntax, SyntaxKind::TYPE_KW)
14514 }
14515}
14516
14517#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14518pub struct SetUnlogged {
14519 pub(crate) syntax: SyntaxNode,
14520}
14521impl SetUnlogged {
14522 #[inline]
14523 pub fn set_token(&self) -> Option<SyntaxToken> {
14524 support::token(&self.syntax, SyntaxKind::SET_KW)
14525 }
14526 #[inline]
14527 pub fn unlogged_token(&self) -> Option<SyntaxToken> {
14528 support::token(&self.syntax, SyntaxKind::UNLOGGED_KW)
14529 }
14530}
14531
14532#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14533pub struct SetWithoutCluster {
14534 pub(crate) syntax: SyntaxNode,
14535}
14536impl SetWithoutCluster {
14537 #[inline]
14538 pub fn cluster_token(&self) -> Option<SyntaxToken> {
14539 support::token(&self.syntax, SyntaxKind::CLUSTER_KW)
14540 }
14541 #[inline]
14542 pub fn set_token(&self) -> Option<SyntaxToken> {
14543 support::token(&self.syntax, SyntaxKind::SET_KW)
14544 }
14545 #[inline]
14546 pub fn without_token(&self) -> Option<SyntaxToken> {
14547 support::token(&self.syntax, SyntaxKind::WITHOUT_KW)
14548 }
14549}
14550
14551#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14552pub struct SetWithoutOids {
14553 pub(crate) syntax: SyntaxNode,
14554}
14555impl SetWithoutOids {
14556 #[inline]
14557 pub fn oids_token(&self) -> Option<SyntaxToken> {
14558 support::token(&self.syntax, SyntaxKind::OIDS_KW)
14559 }
14560 #[inline]
14561 pub fn set_token(&self) -> Option<SyntaxToken> {
14562 support::token(&self.syntax, SyntaxKind::SET_KW)
14563 }
14564 #[inline]
14565 pub fn without_token(&self) -> Option<SyntaxToken> {
14566 support::token(&self.syntax, SyntaxKind::WITHOUT_KW)
14567 }
14568}
14569
14570#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14571pub struct Show {
14572 pub(crate) syntax: SyntaxNode,
14573}
14574impl Show {
14575 #[inline]
14576 pub fn show_token(&self) -> Option<SyntaxToken> {
14577 support::token(&self.syntax, SyntaxKind::SHOW_KW)
14578 }
14579}
14580
14581#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14582pub struct SimilarTo {
14583 pub(crate) syntax: SyntaxNode,
14584}
14585impl SimilarTo {
14586 #[inline]
14587 pub fn similar_token(&self) -> Option<SyntaxToken> {
14588 support::token(&self.syntax, SyntaxKind::SIMILAR_KW)
14589 }
14590 #[inline]
14591 pub fn to_token(&self) -> Option<SyntaxToken> {
14592 support::token(&self.syntax, SyntaxKind::TO_KW)
14593 }
14594}
14595
14596#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14597pub struct SliceExpr {
14598 pub(crate) syntax: SyntaxNode,
14599}
14600impl SliceExpr {
14601 #[inline]
14602 pub fn l_brack_token(&self) -> Option<SyntaxToken> {
14603 support::token(&self.syntax, SyntaxKind::L_BRACK)
14604 }
14605 #[inline]
14606 pub fn r_brack_token(&self) -> Option<SyntaxToken> {
14607 support::token(&self.syntax, SyntaxKind::R_BRACK)
14608 }
14609 #[inline]
14610 pub fn colon_token(&self) -> Option<SyntaxToken> {
14611 support::token(&self.syntax, SyntaxKind::COLON)
14612 }
14613}
14614
14615#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14616pub struct SomeFn {
14617 pub(crate) syntax: SyntaxNode,
14618}
14619impl SomeFn {
14620 #[inline]
14621 pub fn expr(&self) -> Option<Expr> {
14622 support::child(&self.syntax)
14623 }
14624 #[inline]
14625 pub fn select_variant(&self) -> Option<SelectVariant> {
14626 support::child(&self.syntax)
14627 }
14628 #[inline]
14629 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
14630 support::token(&self.syntax, SyntaxKind::L_PAREN)
14631 }
14632 #[inline]
14633 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
14634 support::token(&self.syntax, SyntaxKind::R_PAREN)
14635 }
14636 #[inline]
14637 pub fn some_token(&self) -> Option<SyntaxToken> {
14638 support::token(&self.syntax, SyntaxKind::SOME_KW)
14639 }
14640}
14641
14642#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14643pub struct SortAsc {
14644 pub(crate) syntax: SyntaxNode,
14645}
14646impl SortAsc {
14647 #[inline]
14648 pub fn asc_token(&self) -> Option<SyntaxToken> {
14649 support::token(&self.syntax, SyntaxKind::ASC_KW)
14650 }
14651}
14652
14653#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14654pub struct SortBy {
14655 pub(crate) syntax: SyntaxNode,
14656}
14657impl SortBy {
14658 #[inline]
14659 pub fn expr(&self) -> Option<Expr> {
14660 support::child(&self.syntax)
14661 }
14662 #[inline]
14663 pub fn nulls_first(&self) -> Option<NullsFirst> {
14664 support::child(&self.syntax)
14665 }
14666 #[inline]
14667 pub fn nulls_last(&self) -> Option<NullsLast> {
14668 support::child(&self.syntax)
14669 }
14670 #[inline]
14671 pub fn sort_asc(&self) -> Option<SortAsc> {
14672 support::child(&self.syntax)
14673 }
14674 #[inline]
14675 pub fn sort_desc(&self) -> Option<SortDesc> {
14676 support::child(&self.syntax)
14677 }
14678 #[inline]
14679 pub fn sort_using(&self) -> Option<SortUsing> {
14680 support::child(&self.syntax)
14681 }
14682}
14683
14684#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14685pub struct SortByList {
14686 pub(crate) syntax: SyntaxNode,
14687}
14688impl SortByList {
14689 #[inline]
14690 pub fn sort_bys(&self) -> AstChildren<SortBy> {
14691 support::children(&self.syntax)
14692 }
14693}
14694
14695#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14696pub struct SortDesc {
14697 pub(crate) syntax: SyntaxNode,
14698}
14699impl SortDesc {
14700 #[inline]
14701 pub fn desc_token(&self) -> Option<SyntaxToken> {
14702 support::token(&self.syntax, SyntaxKind::DESC_KW)
14703 }
14704}
14705
14706#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14707pub struct SortUsing {
14708 pub(crate) syntax: SyntaxNode,
14709}
14710impl SortUsing {
14711 #[inline]
14712 pub fn op(&self) -> Option<Op> {
14713 support::child(&self.syntax)
14714 }
14715 #[inline]
14716 pub fn using_token(&self) -> Option<SyntaxToken> {
14717 support::token(&self.syntax, SyntaxKind::USING_KW)
14718 }
14719}
14720
14721#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14722pub struct SourceFile {
14723 pub(crate) syntax: SyntaxNode,
14724}
14725impl SourceFile {
14726 #[inline]
14727 pub fn stmts(&self) -> AstChildren<Stmt> {
14728 support::children(&self.syntax)
14729 }
14730}
14731
14732#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14733pub struct SplitPartition {
14734 pub(crate) syntax: SyntaxNode,
14735}
14736impl SplitPartition {
14737 #[inline]
14738 pub fn partition_list(&self) -> Option<PartitionList> {
14739 support::child(&self.syntax)
14740 }
14741 #[inline]
14742 pub fn partition_token(&self) -> Option<SyntaxToken> {
14743 support::token(&self.syntax, SyntaxKind::PARTITION_KW)
14744 }
14745 #[inline]
14746 pub fn split_token(&self) -> Option<SyntaxToken> {
14747 support::token(&self.syntax, SyntaxKind::SPLIT_KW)
14748 }
14749}
14750
14751#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14752pub struct Storage {
14753 pub(crate) syntax: SyntaxNode,
14754}
14755impl Storage {
14756 #[inline]
14757 pub fn default_token(&self) -> Option<SyntaxToken> {
14758 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
14759 }
14760 #[inline]
14761 pub fn external_token(&self) -> Option<SyntaxToken> {
14762 support::token(&self.syntax, SyntaxKind::EXTERNAL_KW)
14763 }
14764 #[inline]
14765 pub fn ident_token(&self) -> Option<SyntaxToken> {
14766 support::token(&self.syntax, SyntaxKind::IDENT)
14767 }
14768 #[inline]
14769 pub fn storage_token(&self) -> Option<SyntaxToken> {
14770 support::token(&self.syntax, SyntaxKind::STORAGE_KW)
14771 }
14772}
14773
14774#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14775pub struct StrictFuncOption {
14776 pub(crate) syntax: SyntaxNode,
14777}
14778impl StrictFuncOption {
14779 #[inline]
14780 pub fn called_token(&self) -> Option<SyntaxToken> {
14781 support::token(&self.syntax, SyntaxKind::CALLED_KW)
14782 }
14783 #[inline]
14784 pub fn input_token(&self) -> Option<SyntaxToken> {
14785 support::token(&self.syntax, SyntaxKind::INPUT_KW)
14786 }
14787 #[inline]
14788 pub fn null_token(&self) -> Option<SyntaxToken> {
14789 support::token(&self.syntax, SyntaxKind::NULL_KW)
14790 }
14791 #[inline]
14792 pub fn on_token(&self) -> Option<SyntaxToken> {
14793 support::token(&self.syntax, SyntaxKind::ON_KW)
14794 }
14795 #[inline]
14796 pub fn returns_token(&self) -> Option<SyntaxToken> {
14797 support::token(&self.syntax, SyntaxKind::RETURNS_KW)
14798 }
14799 #[inline]
14800 pub fn strict_token(&self) -> Option<SyntaxToken> {
14801 support::token(&self.syntax, SyntaxKind::STRICT_KW)
14802 }
14803}
14804
14805#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14806pub struct SubstringFn {
14807 pub(crate) syntax: SyntaxNode,
14808}
14809impl SubstringFn {
14810 #[inline]
14811 pub fn expr(&self) -> Option<Expr> {
14812 support::child(&self.syntax)
14813 }
14814 #[inline]
14815 pub fn exprs(&self) -> AstChildren<Expr> {
14816 support::children(&self.syntax)
14817 }
14818 #[inline]
14819 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
14820 support::token(&self.syntax, SyntaxKind::L_PAREN)
14821 }
14822 #[inline]
14823 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
14824 support::token(&self.syntax, SyntaxKind::R_PAREN)
14825 }
14826 #[inline]
14827 pub fn for_token(&self) -> Option<SyntaxToken> {
14828 support::token(&self.syntax, SyntaxKind::FOR_KW)
14829 }
14830 #[inline]
14831 pub fn from_token(&self) -> Option<SyntaxToken> {
14832 support::token(&self.syntax, SyntaxKind::FROM_KW)
14833 }
14834 #[inline]
14835 pub fn similar_token(&self) -> Option<SyntaxToken> {
14836 support::token(&self.syntax, SyntaxKind::SIMILAR_KW)
14837 }
14838 #[inline]
14839 pub fn substring_token(&self) -> Option<SyntaxToken> {
14840 support::token(&self.syntax, SyntaxKind::SUBSTRING_KW)
14841 }
14842}
14843
14844#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14845pub struct SupportFuncOption {
14846 pub(crate) syntax: SyntaxNode,
14847}
14848impl SupportFuncOption {
14849 #[inline]
14850 pub fn support_token(&self) -> Option<SyntaxToken> {
14851 support::token(&self.syntax, SyntaxKind::SUPPORT_KW)
14852 }
14853}
14854
14855#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14856pub struct Table {
14857 pub(crate) syntax: SyntaxNode,
14858}
14859impl Table {
14860 #[inline]
14861 pub fn relation_name(&self) -> Option<RelationName> {
14862 support::child(&self.syntax)
14863 }
14864 #[inline]
14865 pub fn table_token(&self) -> Option<SyntaxToken> {
14866 support::token(&self.syntax, SyntaxKind::TABLE_KW)
14867 }
14868}
14869
14870#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14871pub struct TableAndColumns {
14872 pub(crate) syntax: SyntaxNode,
14873}
14874impl TableAndColumns {
14875 #[inline]
14876 pub fn column_list(&self) -> Option<ColumnList> {
14877 support::child(&self.syntax)
14878 }
14879 #[inline]
14880 pub fn relation_name(&self) -> Option<RelationName> {
14881 support::child(&self.syntax)
14882 }
14883}
14884
14885#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14886pub struct TableAndColumnsList {
14887 pub(crate) syntax: SyntaxNode,
14888}
14889impl TableAndColumnsList {
14890 #[inline]
14891 pub fn table_and_columnss(&self) -> AstChildren<TableAndColumns> {
14892 support::children(&self.syntax)
14893 }
14894}
14895
14896#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14897pub struct TableArgList {
14898 pub(crate) syntax: SyntaxNode,
14899}
14900impl TableArgList {
14901 #[inline]
14902 pub fn args(&self) -> AstChildren<TableArg> {
14903 support::children(&self.syntax)
14904 }
14905 #[inline]
14906 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
14907 support::token(&self.syntax, SyntaxKind::L_PAREN)
14908 }
14909 #[inline]
14910 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
14911 support::token(&self.syntax, SyntaxKind::R_PAREN)
14912 }
14913}
14914
14915#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14916pub struct TableList {
14917 pub(crate) syntax: SyntaxNode,
14918}
14919impl TableList {
14920 #[inline]
14921 pub fn relation_names(&self) -> AstChildren<RelationName> {
14922 support::children(&self.syntax)
14923 }
14924}
14925
14926#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14927pub struct TablesampleClause {
14928 pub(crate) syntax: SyntaxNode,
14929}
14930impl TablesampleClause {
14931 #[inline]
14932 pub fn call_expr(&self) -> Option<CallExpr> {
14933 support::child(&self.syntax)
14934 }
14935 #[inline]
14936 pub fn repeatable_clause(&self) -> Option<RepeatableClause> {
14937 support::child(&self.syntax)
14938 }
14939 #[inline]
14940 pub fn tablesample_token(&self) -> Option<SyntaxToken> {
14941 support::token(&self.syntax, SyntaxKind::TABLESAMPLE_KW)
14942 }
14943}
14944
14945#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14946pub struct Tablespace {
14947 pub(crate) syntax: SyntaxNode,
14948}
14949impl Tablespace {
14950 #[inline]
14951 pub fn name_ref(&self) -> Option<NameRef> {
14952 support::child(&self.syntax)
14953 }
14954 #[inline]
14955 pub fn tablespace_token(&self) -> Option<SyntaxToken> {
14956 support::token(&self.syntax, SyntaxKind::TABLESPACE_KW)
14957 }
14958}
14959
14960#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14961pub struct Target {
14962 pub(crate) syntax: SyntaxNode,
14963}
14964impl Target {
14965 #[inline]
14966 pub fn as_name(&self) -> Option<AsName> {
14967 support::child(&self.syntax)
14968 }
14969 #[inline]
14970 pub fn expr(&self) -> Option<Expr> {
14971 support::child(&self.syntax)
14972 }
14973 #[inline]
14974 pub fn star_token(&self) -> Option<SyntaxToken> {
14975 support::token(&self.syntax, SyntaxKind::STAR)
14976 }
14977}
14978
14979#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14980pub struct TargetList {
14981 pub(crate) syntax: SyntaxNode,
14982}
14983impl TargetList {
14984 #[inline]
14985 pub fn targets(&self) -> AstChildren<Target> {
14986 support::children(&self.syntax)
14987 }
14988}
14989
14990#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14991pub struct TimeType {
14992 pub(crate) syntax: SyntaxNode,
14993}
14994impl TimeType {
14995 #[inline]
14996 pub fn literal(&self) -> Option<Literal> {
14997 support::child(&self.syntax)
14998 }
14999 #[inline]
15000 pub fn timezone(&self) -> Option<Timezone> {
15001 support::child(&self.syntax)
15002 }
15003 #[inline]
15004 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
15005 support::token(&self.syntax, SyntaxKind::L_PAREN)
15006 }
15007 #[inline]
15008 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
15009 support::token(&self.syntax, SyntaxKind::R_PAREN)
15010 }
15011 #[inline]
15012 pub fn time_token(&self) -> Option<SyntaxToken> {
15013 support::token(&self.syntax, SyntaxKind::TIME_KW)
15014 }
15015 #[inline]
15016 pub fn timestamp_token(&self) -> Option<SyntaxToken> {
15017 support::token(&self.syntax, SyntaxKind::TIMESTAMP_KW)
15018 }
15019}
15020
15021#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15022pub struct Timing {
15023 pub(crate) syntax: SyntaxNode,
15024}
15025impl Timing {
15026 #[inline]
15027 pub fn after_token(&self) -> Option<SyntaxToken> {
15028 support::token(&self.syntax, SyntaxKind::AFTER_KW)
15029 }
15030 #[inline]
15031 pub fn before_token(&self) -> Option<SyntaxToken> {
15032 support::token(&self.syntax, SyntaxKind::BEFORE_KW)
15033 }
15034 #[inline]
15035 pub fn instead_token(&self) -> Option<SyntaxToken> {
15036 support::token(&self.syntax, SyntaxKind::INSTEAD_KW)
15037 }
15038 #[inline]
15039 pub fn of_token(&self) -> Option<SyntaxToken> {
15040 support::token(&self.syntax, SyntaxKind::OF_KW)
15041 }
15042}
15043
15044#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15045pub struct TransactionModeList {
15046 pub(crate) syntax: SyntaxNode,
15047}
15048impl TransactionModeList {
15049 #[inline]
15050 pub fn transaction_modes(&self) -> AstChildren<TransactionMode> {
15051 support::children(&self.syntax)
15052 }
15053}
15054
15055#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15056pub struct TransformFromFunc {
15057 pub(crate) syntax: SyntaxNode,
15058}
15059impl TransformFromFunc {
15060 #[inline]
15061 pub fn function_sig(&self) -> Option<FunctionSig> {
15062 support::child(&self.syntax)
15063 }
15064 #[inline]
15065 pub fn from_token(&self) -> Option<SyntaxToken> {
15066 support::token(&self.syntax, SyntaxKind::FROM_KW)
15067 }
15068 #[inline]
15069 pub fn function_token(&self) -> Option<SyntaxToken> {
15070 support::token(&self.syntax, SyntaxKind::FUNCTION_KW)
15071 }
15072 #[inline]
15073 pub fn sql_token(&self) -> Option<SyntaxToken> {
15074 support::token(&self.syntax, SyntaxKind::SQL_KW)
15075 }
15076 #[inline]
15077 pub fn with_token(&self) -> Option<SyntaxToken> {
15078 support::token(&self.syntax, SyntaxKind::WITH_KW)
15079 }
15080}
15081
15082#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15083pub struct TransformFuncOption {
15084 pub(crate) syntax: SyntaxNode,
15085}
15086impl TransformFuncOption {
15087 #[inline]
15088 pub fn transform_token(&self) -> Option<SyntaxToken> {
15089 support::token(&self.syntax, SyntaxKind::TRANSFORM_KW)
15090 }
15091}
15092
15093#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15094pub struct TransformToFunc {
15095 pub(crate) syntax: SyntaxNode,
15096}
15097impl TransformToFunc {
15098 #[inline]
15099 pub fn function_sig(&self) -> Option<FunctionSig> {
15100 support::child(&self.syntax)
15101 }
15102 #[inline]
15103 pub fn function_token(&self) -> Option<SyntaxToken> {
15104 support::token(&self.syntax, SyntaxKind::FUNCTION_KW)
15105 }
15106 #[inline]
15107 pub fn sql_token(&self) -> Option<SyntaxToken> {
15108 support::token(&self.syntax, SyntaxKind::SQL_KW)
15109 }
15110 #[inline]
15111 pub fn to_token(&self) -> Option<SyntaxToken> {
15112 support::token(&self.syntax, SyntaxKind::TO_KW)
15113 }
15114 #[inline]
15115 pub fn with_token(&self) -> Option<SyntaxToken> {
15116 support::token(&self.syntax, SyntaxKind::WITH_KW)
15117 }
15118}
15119
15120#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15121pub struct TriggerEvent {
15122 pub(crate) syntax: SyntaxNode,
15123}
15124impl TriggerEvent {
15125 #[inline]
15126 pub fn trigger_event_update(&self) -> Option<TriggerEventUpdate> {
15127 support::child(&self.syntax)
15128 }
15129 #[inline]
15130 pub fn delete_token(&self) -> Option<SyntaxToken> {
15131 support::token(&self.syntax, SyntaxKind::DELETE_KW)
15132 }
15133 #[inline]
15134 pub fn insert_token(&self) -> Option<SyntaxToken> {
15135 support::token(&self.syntax, SyntaxKind::INSERT_KW)
15136 }
15137 #[inline]
15138 pub fn truncate_token(&self) -> Option<SyntaxToken> {
15139 support::token(&self.syntax, SyntaxKind::TRUNCATE_KW)
15140 }
15141}
15142
15143#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15144pub struct TriggerEventList {
15145 pub(crate) syntax: SyntaxNode,
15146}
15147impl TriggerEventList {
15148 #[inline]
15149 pub fn trigger_events(&self) -> AstChildren<TriggerEvent> {
15150 support::children(&self.syntax)
15151 }
15152}
15153
15154#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15155pub struct TriggerEventUpdate {
15156 pub(crate) syntax: SyntaxNode,
15157}
15158impl TriggerEventUpdate {
15159 #[inline]
15160 pub fn name_refs(&self) -> AstChildren<NameRef> {
15161 support::children(&self.syntax)
15162 }
15163 #[inline]
15164 pub fn of_token(&self) -> Option<SyntaxToken> {
15165 support::token(&self.syntax, SyntaxKind::OF_KW)
15166 }
15167 #[inline]
15168 pub fn update_token(&self) -> Option<SyntaxToken> {
15169 support::token(&self.syntax, SyntaxKind::UPDATE_KW)
15170 }
15171}
15172
15173#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15174pub struct TrimFn {
15175 pub(crate) syntax: SyntaxNode,
15176}
15177impl TrimFn {
15178 #[inline]
15179 pub fn expr(&self) -> Option<Expr> {
15180 support::child(&self.syntax)
15181 }
15182 #[inline]
15183 pub fn exprs(&self) -> AstChildren<Expr> {
15184 support::children(&self.syntax)
15185 }
15186 #[inline]
15187 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
15188 support::token(&self.syntax, SyntaxKind::L_PAREN)
15189 }
15190 #[inline]
15191 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
15192 support::token(&self.syntax, SyntaxKind::R_PAREN)
15193 }
15194 #[inline]
15195 pub fn from_token(&self) -> Option<SyntaxToken> {
15196 support::token(&self.syntax, SyntaxKind::FROM_KW)
15197 }
15198 #[inline]
15199 pub fn trim_token(&self) -> Option<SyntaxToken> {
15200 support::token(&self.syntax, SyntaxKind::TRIM_KW)
15201 }
15202}
15203
15204#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15205pub struct Truncate {
15206 pub(crate) syntax: SyntaxNode,
15207}
15208impl Truncate {
15209 #[inline]
15210 pub fn table_list(&self) -> Option<TableList> {
15211 support::child(&self.syntax)
15212 }
15213 #[inline]
15214 pub fn cascade_token(&self) -> Option<SyntaxToken> {
15215 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
15216 }
15217 #[inline]
15218 pub fn continue_token(&self) -> Option<SyntaxToken> {
15219 support::token(&self.syntax, SyntaxKind::CONTINUE_KW)
15220 }
15221 #[inline]
15222 pub fn identity_token(&self) -> Option<SyntaxToken> {
15223 support::token(&self.syntax, SyntaxKind::IDENTITY_KW)
15224 }
15225 #[inline]
15226 pub fn restart_token(&self) -> Option<SyntaxToken> {
15227 support::token(&self.syntax, SyntaxKind::RESTART_KW)
15228 }
15229 #[inline]
15230 pub fn restrict_token(&self) -> Option<SyntaxToken> {
15231 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
15232 }
15233 #[inline]
15234 pub fn table_token(&self) -> Option<SyntaxToken> {
15235 support::token(&self.syntax, SyntaxKind::TABLE_KW)
15236 }
15237 #[inline]
15238 pub fn truncate_token(&self) -> Option<SyntaxToken> {
15239 support::token(&self.syntax, SyntaxKind::TRUNCATE_KW)
15240 }
15241}
15242
15243#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15244pub struct TupleExpr {
15245 pub(crate) syntax: SyntaxNode,
15246}
15247impl TupleExpr {
15248 #[inline]
15249 pub fn exprs(&self) -> AstChildren<Expr> {
15250 support::children(&self.syntax)
15251 }
15252 #[inline]
15253 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
15254 support::token(&self.syntax, SyntaxKind::L_PAREN)
15255 }
15256 #[inline]
15257 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
15258 support::token(&self.syntax, SyntaxKind::R_PAREN)
15259 }
15260}
15261
15262#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15263pub struct UnicodeNormalForm {
15264 pub(crate) syntax: SyntaxNode,
15265}
15266impl UnicodeNormalForm {
15267 #[inline]
15268 pub fn nfc_token(&self) -> Option<SyntaxToken> {
15269 support::token(&self.syntax, SyntaxKind::NFC_KW)
15270 }
15271 #[inline]
15272 pub fn nfd_token(&self) -> Option<SyntaxToken> {
15273 support::token(&self.syntax, SyntaxKind::NFD_KW)
15274 }
15275 #[inline]
15276 pub fn nfkc_token(&self) -> Option<SyntaxToken> {
15277 support::token(&self.syntax, SyntaxKind::NFKC_KW)
15278 }
15279 #[inline]
15280 pub fn nfkd_token(&self) -> Option<SyntaxToken> {
15281 support::token(&self.syntax, SyntaxKind::NFKD_KW)
15282 }
15283}
15284
15285#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15286pub struct UniqueConstraint {
15287 pub(crate) syntax: SyntaxNode,
15288}
15289impl UniqueConstraint {
15290 #[inline]
15291 pub fn column_list(&self) -> Option<ColumnList> {
15292 support::child(&self.syntax)
15293 }
15294 #[inline]
15295 pub fn name(&self) -> Option<Name> {
15296 support::child(&self.syntax)
15297 }
15298 #[inline]
15299 pub fn nulls_distinct(&self) -> Option<NullsDistinct> {
15300 support::child(&self.syntax)
15301 }
15302 #[inline]
15303 pub fn nulls_not_distinct(&self) -> Option<NullsNotDistinct> {
15304 support::child(&self.syntax)
15305 }
15306 #[inline]
15307 pub fn using_index(&self) -> Option<UsingIndex> {
15308 support::child(&self.syntax)
15309 }
15310 #[inline]
15311 pub fn constraint_token(&self) -> Option<SyntaxToken> {
15312 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
15313 }
15314 #[inline]
15315 pub fn unique_token(&self) -> Option<SyntaxToken> {
15316 support::token(&self.syntax, SyntaxKind::UNIQUE_KW)
15317 }
15318}
15319
15320#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15321pub struct Unlisten {
15322 pub(crate) syntax: SyntaxNode,
15323}
15324impl Unlisten {
15325 #[inline]
15326 pub fn name_ref(&self) -> Option<NameRef> {
15327 support::child(&self.syntax)
15328 }
15329 #[inline]
15330 pub fn star_token(&self) -> Option<SyntaxToken> {
15331 support::token(&self.syntax, SyntaxKind::STAR)
15332 }
15333 #[inline]
15334 pub fn unlisten_token(&self) -> Option<SyntaxToken> {
15335 support::token(&self.syntax, SyntaxKind::UNLISTEN_KW)
15336 }
15337}
15338
15339#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15340pub struct Update {
15341 pub(crate) syntax: SyntaxNode,
15342}
15343impl Update {
15344 #[inline]
15345 pub fn alias(&self) -> Option<Alias> {
15346 support::child(&self.syntax)
15347 }
15348 #[inline]
15349 pub fn from_clause(&self) -> Option<FromClause> {
15350 support::child(&self.syntax)
15351 }
15352 #[inline]
15353 pub fn relation_name(&self) -> Option<RelationName> {
15354 support::child(&self.syntax)
15355 }
15356 #[inline]
15357 pub fn returning_clause(&self) -> Option<ReturningClause> {
15358 support::child(&self.syntax)
15359 }
15360 #[inline]
15361 pub fn set_clause(&self) -> Option<SetClause> {
15362 support::child(&self.syntax)
15363 }
15364 #[inline]
15365 pub fn where_clause(&self) -> Option<WhereClause> {
15366 support::child(&self.syntax)
15367 }
15368 #[inline]
15369 pub fn update_token(&self) -> Option<SyntaxToken> {
15370 support::token(&self.syntax, SyntaxKind::UPDATE_KW)
15371 }
15372}
15373
15374#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15375pub struct UsingClause {
15376 pub(crate) syntax: SyntaxNode,
15377}
15378impl UsingClause {
15379 #[inline]
15380 pub fn from_items(&self) -> AstChildren<FromItem> {
15381 support::children(&self.syntax)
15382 }
15383 #[inline]
15384 pub fn using_token(&self) -> Option<SyntaxToken> {
15385 support::token(&self.syntax, SyntaxKind::USING_KW)
15386 }
15387}
15388
15389#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15390pub struct UsingIndex {
15391 pub(crate) syntax: SyntaxNode,
15392}
15393impl UsingIndex {
15394 #[inline]
15395 pub fn name_ref(&self) -> Option<NameRef> {
15396 support::child(&self.syntax)
15397 }
15398 #[inline]
15399 pub fn index_token(&self) -> Option<SyntaxToken> {
15400 support::token(&self.syntax, SyntaxKind::INDEX_KW)
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 UsingMethod {
15410 pub(crate) syntax: SyntaxNode,
15411}
15412impl UsingMethod {
15413 #[inline]
15414 pub fn name_ref(&self) -> Option<NameRef> {
15415 support::child(&self.syntax)
15416 }
15417 #[inline]
15418 pub fn using_token(&self) -> Option<SyntaxToken> {
15419 support::token(&self.syntax, SyntaxKind::USING_KW)
15420 }
15421}
15422
15423#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15424pub struct UsingOnClause {
15425 pub(crate) syntax: SyntaxNode,
15426}
15427impl UsingOnClause {
15428 #[inline]
15429 pub fn from_item(&self) -> Option<FromItem> {
15430 support::child(&self.syntax)
15431 }
15432 #[inline]
15433 pub fn on_clause(&self) -> Option<OnClause> {
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 Vacuum {
15444 pub(crate) syntax: SyntaxNode,
15445}
15446impl Vacuum {
15447 #[inline]
15448 pub fn table_and_columns_list(&self) -> Option<TableAndColumnsList> {
15449 support::child(&self.syntax)
15450 }
15451 #[inline]
15452 pub fn vacuum_option_list(&self) -> Option<VacuumOptionList> {
15453 support::child(&self.syntax)
15454 }
15455 #[inline]
15456 pub fn analyse_token(&self) -> Option<SyntaxToken> {
15457 support::token(&self.syntax, SyntaxKind::ANALYSE_KW)
15458 }
15459 #[inline]
15460 pub fn analyze_token(&self) -> Option<SyntaxToken> {
15461 support::token(&self.syntax, SyntaxKind::ANALYZE_KW)
15462 }
15463 #[inline]
15464 pub fn freeze_token(&self) -> Option<SyntaxToken> {
15465 support::token(&self.syntax, SyntaxKind::FREEZE_KW)
15466 }
15467 #[inline]
15468 pub fn full_token(&self) -> Option<SyntaxToken> {
15469 support::token(&self.syntax, SyntaxKind::FULL_KW)
15470 }
15471 #[inline]
15472 pub fn vacuum_token(&self) -> Option<SyntaxToken> {
15473 support::token(&self.syntax, SyntaxKind::VACUUM_KW)
15474 }
15475 #[inline]
15476 pub fn verbose_token(&self) -> Option<SyntaxToken> {
15477 support::token(&self.syntax, SyntaxKind::VERBOSE_KW)
15478 }
15479}
15480
15481#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15482pub struct VacuumOption {
15483 pub(crate) syntax: SyntaxNode,
15484}
15485impl VacuumOption {
15486 #[inline]
15487 pub fn literal(&self) -> Option<Literal> {
15488 support::child(&self.syntax)
15489 }
15490}
15491
15492#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15493pub struct VacuumOptionList {
15494 pub(crate) syntax: SyntaxNode,
15495}
15496impl VacuumOptionList {
15497 #[inline]
15498 pub fn vacuum_options(&self) -> AstChildren<VacuumOption> {
15499 support::children(&self.syntax)
15500 }
15501 #[inline]
15502 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
15503 support::token(&self.syntax, SyntaxKind::L_PAREN)
15504 }
15505 #[inline]
15506 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
15507 support::token(&self.syntax, SyntaxKind::R_PAREN)
15508 }
15509}
15510
15511#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15512pub struct ValidateConstraint {
15513 pub(crate) syntax: SyntaxNode,
15514}
15515impl ValidateConstraint {
15516 #[inline]
15517 pub fn name_ref(&self) -> Option<NameRef> {
15518 support::child(&self.syntax)
15519 }
15520 #[inline]
15521 pub fn constraint_token(&self) -> Option<SyntaxToken> {
15522 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
15523 }
15524 #[inline]
15525 pub fn validate_token(&self) -> Option<SyntaxToken> {
15526 support::token(&self.syntax, SyntaxKind::VALIDATE_KW)
15527 }
15528}
15529
15530#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15531pub struct Values {
15532 pub(crate) syntax: SyntaxNode,
15533}
15534impl Values {
15535 #[inline]
15536 pub fn row_list(&self) -> Option<RowList> {
15537 support::child(&self.syntax)
15538 }
15539 #[inline]
15540 pub fn values_token(&self) -> Option<SyntaxToken> {
15541 support::token(&self.syntax, SyntaxKind::VALUES_KW)
15542 }
15543}
15544
15545#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15546pub struct Variant {
15547 pub(crate) syntax: SyntaxNode,
15548}
15549impl Variant {
15550 #[inline]
15551 pub fn literal(&self) -> Option<Literal> {
15552 support::child(&self.syntax)
15553 }
15554}
15555
15556#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15557pub struct VariantList {
15558 pub(crate) syntax: SyntaxNode,
15559}
15560impl VariantList {
15561 #[inline]
15562 pub fn variants(&self) -> AstChildren<Variant> {
15563 support::children(&self.syntax)
15564 }
15565 #[inline]
15566 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
15567 support::token(&self.syntax, SyntaxKind::L_PAREN)
15568 }
15569 #[inline]
15570 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
15571 support::token(&self.syntax, SyntaxKind::R_PAREN)
15572 }
15573}
15574
15575#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15576pub struct VolatilityFuncOption {
15577 pub(crate) syntax: SyntaxNode,
15578}
15579impl VolatilityFuncOption {
15580 #[inline]
15581 pub fn immutable_token(&self) -> Option<SyntaxToken> {
15582 support::token(&self.syntax, SyntaxKind::IMMUTABLE_KW)
15583 }
15584 #[inline]
15585 pub fn stable_token(&self) -> Option<SyntaxToken> {
15586 support::token(&self.syntax, SyntaxKind::STABLE_KW)
15587 }
15588 #[inline]
15589 pub fn volatile_token(&self) -> Option<SyntaxToken> {
15590 support::token(&self.syntax, SyntaxKind::VOLATILE_KW)
15591 }
15592}
15593
15594#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15595pub struct WhenClause {
15596 pub(crate) syntax: SyntaxNode,
15597}
15598impl WhenClause {
15599 #[inline]
15600 pub fn then_token(&self) -> Option<SyntaxToken> {
15601 support::token(&self.syntax, SyntaxKind::THEN_KW)
15602 }
15603 #[inline]
15604 pub fn when_token(&self) -> Option<SyntaxToken> {
15605 support::token(&self.syntax, SyntaxKind::WHEN_KW)
15606 }
15607}
15608
15609#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15610pub struct WhenClauseList {
15611 pub(crate) syntax: SyntaxNode,
15612}
15613impl WhenClauseList {
15614 #[inline]
15615 pub fn when_clause(&self) -> Option<WhenClause> {
15616 support::child(&self.syntax)
15617 }
15618 #[inline]
15619 pub fn when_clauses(&self) -> AstChildren<WhenClause> {
15620 support::children(&self.syntax)
15621 }
15622}
15623
15624#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15625pub struct WhenCondition {
15626 pub(crate) syntax: SyntaxNode,
15627}
15628impl WhenCondition {
15629 #[inline]
15630 pub fn expr(&self) -> Option<Expr> {
15631 support::child(&self.syntax)
15632 }
15633 #[inline]
15634 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
15635 support::token(&self.syntax, SyntaxKind::L_PAREN)
15636 }
15637 #[inline]
15638 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
15639 support::token(&self.syntax, SyntaxKind::R_PAREN)
15640 }
15641 #[inline]
15642 pub fn when_token(&self) -> Option<SyntaxToken> {
15643 support::token(&self.syntax, SyntaxKind::WHEN_KW)
15644 }
15645}
15646
15647#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15648pub struct WhereClause {
15649 pub(crate) syntax: SyntaxNode,
15650}
15651impl WhereClause {
15652 #[inline]
15653 pub fn expr(&self) -> Option<Expr> {
15654 support::child(&self.syntax)
15655 }
15656 #[inline]
15657 pub fn where_token(&self) -> Option<SyntaxToken> {
15658 support::token(&self.syntax, SyntaxKind::WHERE_KW)
15659 }
15660}
15661
15662#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15663pub struct WhereConditionClause {
15664 pub(crate) syntax: SyntaxNode,
15665}
15666impl WhereConditionClause {
15667 #[inline]
15668 pub fn expr(&self) -> Option<Expr> {
15669 support::child(&self.syntax)
15670 }
15671 #[inline]
15672 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
15673 support::token(&self.syntax, SyntaxKind::L_PAREN)
15674 }
15675 #[inline]
15676 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
15677 support::token(&self.syntax, SyntaxKind::R_PAREN)
15678 }
15679 #[inline]
15680 pub fn where_token(&self) -> Option<SyntaxToken> {
15681 support::token(&self.syntax, SyntaxKind::WHERE_KW)
15682 }
15683}
15684
15685#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15686pub struct WhereCurrentOf {
15687 pub(crate) syntax: SyntaxNode,
15688}
15689impl WhereCurrentOf {
15690 #[inline]
15691 pub fn name_ref(&self) -> Option<NameRef> {
15692 support::child(&self.syntax)
15693 }
15694 #[inline]
15695 pub fn current_token(&self) -> Option<SyntaxToken> {
15696 support::token(&self.syntax, SyntaxKind::CURRENT_KW)
15697 }
15698 #[inline]
15699 pub fn of_token(&self) -> Option<SyntaxToken> {
15700 support::token(&self.syntax, SyntaxKind::OF_KW)
15701 }
15702 #[inline]
15703 pub fn where_token(&self) -> Option<SyntaxToken> {
15704 support::token(&self.syntax, SyntaxKind::WHERE_KW)
15705 }
15706}
15707
15708#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15709pub struct WindowClause {
15710 pub(crate) syntax: SyntaxNode,
15711}
15712impl WindowClause {
15713 #[inline]
15714 pub fn window_defs(&self) -> AstChildren<WindowDef> {
15715 support::children(&self.syntax)
15716 }
15717 #[inline]
15718 pub fn window_token(&self) -> Option<SyntaxToken> {
15719 support::token(&self.syntax, SyntaxKind::WINDOW_KW)
15720 }
15721}
15722
15723#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15724pub struct WindowDef {
15725 pub(crate) syntax: SyntaxNode,
15726}
15727impl WindowDef {
15728 #[inline]
15729 pub fn name(&self) -> Option<Name> {
15730 support::child(&self.syntax)
15731 }
15732 #[inline]
15733 pub fn window_spec(&self) -> Option<WindowSpec> {
15734 support::child(&self.syntax)
15735 }
15736 #[inline]
15737 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
15738 support::token(&self.syntax, SyntaxKind::L_PAREN)
15739 }
15740 #[inline]
15741 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
15742 support::token(&self.syntax, SyntaxKind::R_PAREN)
15743 }
15744 #[inline]
15745 pub fn as_token(&self) -> Option<SyntaxToken> {
15746 support::token(&self.syntax, SyntaxKind::AS_KW)
15747 }
15748}
15749
15750#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15751pub struct WindowFuncOption {
15752 pub(crate) syntax: SyntaxNode,
15753}
15754impl WindowFuncOption {
15755 #[inline]
15756 pub fn window_token(&self) -> Option<SyntaxToken> {
15757 support::token(&self.syntax, SyntaxKind::WINDOW_KW)
15758 }
15759}
15760
15761#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15762pub struct WindowSpec {
15763 pub(crate) syntax: SyntaxNode,
15764}
15765impl WindowSpec {
15766 #[inline]
15767 pub fn exprs(&self) -> AstChildren<Expr> {
15768 support::children(&self.syntax)
15769 }
15770 #[inline]
15771 pub fn frame_clause(&self) -> Option<FrameClause> {
15772 support::child(&self.syntax)
15773 }
15774 #[inline]
15775 pub fn order_by_clause(&self) -> Option<OrderByClause> {
15776 support::child(&self.syntax)
15777 }
15778 #[inline]
15779 pub fn by_token(&self) -> Option<SyntaxToken> {
15780 support::token(&self.syntax, SyntaxKind::BY_KW)
15781 }
15782 #[inline]
15783 pub fn ident_token(&self) -> Option<SyntaxToken> {
15784 support::token(&self.syntax, SyntaxKind::IDENT)
15785 }
15786 #[inline]
15787 pub fn partition_token(&self) -> Option<SyntaxToken> {
15788 support::token(&self.syntax, SyntaxKind::PARTITION_KW)
15789 }
15790}
15791
15792#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15793pub struct WithClause {
15794 pub(crate) syntax: SyntaxNode,
15795}
15796impl WithClause {
15797 #[inline]
15798 pub fn with_tables(&self) -> AstChildren<WithTable> {
15799 support::children(&self.syntax)
15800 }
15801 #[inline]
15802 pub fn recursive_token(&self) -> Option<SyntaxToken> {
15803 support::token(&self.syntax, SyntaxKind::RECURSIVE_KW)
15804 }
15805 #[inline]
15806 pub fn with_token(&self) -> Option<SyntaxToken> {
15807 support::token(&self.syntax, SyntaxKind::WITH_KW)
15808 }
15809}
15810
15811#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15812pub struct WithData {
15813 pub(crate) syntax: SyntaxNode,
15814}
15815impl WithData {
15816 #[inline]
15817 pub fn data_token(&self) -> Option<SyntaxToken> {
15818 support::token(&self.syntax, SyntaxKind::DATA_KW)
15819 }
15820 #[inline]
15821 pub fn with_token(&self) -> Option<SyntaxToken> {
15822 support::token(&self.syntax, SyntaxKind::WITH_KW)
15823 }
15824}
15825
15826#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15827pub struct WithNoData {
15828 pub(crate) syntax: SyntaxNode,
15829}
15830impl WithNoData {
15831 #[inline]
15832 pub fn data_token(&self) -> Option<SyntaxToken> {
15833 support::token(&self.syntax, SyntaxKind::DATA_KW)
15834 }
15835 #[inline]
15836 pub fn no_token(&self) -> Option<SyntaxToken> {
15837 support::token(&self.syntax, SyntaxKind::NO_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 WithOptions {
15847 pub(crate) syntax: SyntaxNode,
15848}
15849impl WithOptions {
15850 #[inline]
15851 pub fn options_token(&self) -> Option<SyntaxToken> {
15852 support::token(&self.syntax, SyntaxKind::OPTIONS_KW)
15853 }
15854 #[inline]
15855 pub fn with_token(&self) -> Option<SyntaxToken> {
15856 support::token(&self.syntax, SyntaxKind::WITH_KW)
15857 }
15858}
15859
15860#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15861pub struct WithParams {
15862 pub(crate) syntax: SyntaxNode,
15863}
15864impl WithParams {
15865 #[inline]
15866 pub fn attribute_list(&self) -> Option<AttributeList> {
15867 support::child(&self.syntax)
15868 }
15869 #[inline]
15870 pub fn with_token(&self) -> Option<SyntaxToken> {
15871 support::token(&self.syntax, SyntaxKind::WITH_KW)
15872 }
15873}
15874
15875#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15876pub struct WithTable {
15877 pub(crate) syntax: SyntaxNode,
15878}
15879impl WithTable {
15880 #[inline]
15881 pub fn column_list(&self) -> Option<ColumnList> {
15882 support::child(&self.syntax)
15883 }
15884 #[inline]
15885 pub fn materialized(&self) -> Option<Materialized> {
15886 support::child(&self.syntax)
15887 }
15888 #[inline]
15889 pub fn name(&self) -> Option<Name> {
15890 support::child(&self.syntax)
15891 }
15892 #[inline]
15893 pub fn not_materialized(&self) -> Option<NotMaterialized> {
15894 support::child(&self.syntax)
15895 }
15896 #[inline]
15897 pub fn query(&self) -> Option<WithQuery> {
15898 support::child(&self.syntax)
15899 }
15900 #[inline]
15901 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
15902 support::token(&self.syntax, SyntaxKind::L_PAREN)
15903 }
15904 #[inline]
15905 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
15906 support::token(&self.syntax, SyntaxKind::R_PAREN)
15907 }
15908 #[inline]
15909 pub fn as_token(&self) -> Option<SyntaxToken> {
15910 support::token(&self.syntax, SyntaxKind::AS_KW)
15911 }
15912}
15913
15914#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15915pub struct WithTimezone {
15916 pub(crate) syntax: SyntaxNode,
15917}
15918impl WithTimezone {
15919 #[inline]
15920 pub fn time_token(&self) -> Option<SyntaxToken> {
15921 support::token(&self.syntax, SyntaxKind::TIME_KW)
15922 }
15923 #[inline]
15924 pub fn with_token(&self) -> Option<SyntaxToken> {
15925 support::token(&self.syntax, SyntaxKind::WITH_KW)
15926 }
15927 #[inline]
15928 pub fn zone_token(&self) -> Option<SyntaxToken> {
15929 support::token(&self.syntax, SyntaxKind::ZONE_KW)
15930 }
15931}
15932
15933#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15934pub struct WithinClause {
15935 pub(crate) syntax: SyntaxNode,
15936}
15937impl WithinClause {
15938 #[inline]
15939 pub fn order_by_clause(&self) -> Option<OrderByClause> {
15940 support::child(&self.syntax)
15941 }
15942 #[inline]
15943 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
15944 support::token(&self.syntax, SyntaxKind::L_PAREN)
15945 }
15946 #[inline]
15947 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
15948 support::token(&self.syntax, SyntaxKind::R_PAREN)
15949 }
15950 #[inline]
15951 pub fn group_token(&self) -> Option<SyntaxToken> {
15952 support::token(&self.syntax, SyntaxKind::GROUP_KW)
15953 }
15954 #[inline]
15955 pub fn within_token(&self) -> Option<SyntaxToken> {
15956 support::token(&self.syntax, SyntaxKind::WITHIN_KW)
15957 }
15958}
15959
15960#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15961pub struct WithoutOids {
15962 pub(crate) syntax: SyntaxNode,
15963}
15964impl WithoutOids {
15965 #[inline]
15966 pub fn oids_token(&self) -> Option<SyntaxToken> {
15967 support::token(&self.syntax, SyntaxKind::OIDS_KW)
15968 }
15969 #[inline]
15970 pub fn without_token(&self) -> Option<SyntaxToken> {
15971 support::token(&self.syntax, SyntaxKind::WITHOUT_KW)
15972 }
15973}
15974
15975#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15976pub struct WithoutTimezone {
15977 pub(crate) syntax: SyntaxNode,
15978}
15979impl WithoutTimezone {
15980 #[inline]
15981 pub fn time_token(&self) -> Option<SyntaxToken> {
15982 support::token(&self.syntax, SyntaxKind::TIME_KW)
15983 }
15984 #[inline]
15985 pub fn without_token(&self) -> Option<SyntaxToken> {
15986 support::token(&self.syntax, SyntaxKind::WITHOUT_KW)
15987 }
15988 #[inline]
15989 pub fn zone_token(&self) -> Option<SyntaxToken> {
15990 support::token(&self.syntax, SyntaxKind::ZONE_KW)
15991 }
15992}
15993
15994#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15995pub struct XmlAttributeList {
15996 pub(crate) syntax: SyntaxNode,
15997}
15998impl XmlAttributeList {
15999 #[inline]
16000 pub fn expr_as_names(&self) -> AstChildren<ExprAsName> {
16001 support::children(&self.syntax)
16002 }
16003}
16004
16005#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16006pub struct XmlColumnOption {
16007 pub(crate) syntax: SyntaxNode,
16008}
16009impl XmlColumnOption {
16010 #[inline]
16011 pub fn expr(&self) -> Option<Expr> {
16012 support::child(&self.syntax)
16013 }
16014 #[inline]
16015 pub fn default_token(&self) -> Option<SyntaxToken> {
16016 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
16017 }
16018 #[inline]
16019 pub fn ident_token(&self) -> Option<SyntaxToken> {
16020 support::token(&self.syntax, SyntaxKind::IDENT)
16021 }
16022 #[inline]
16023 pub fn not_token(&self) -> Option<SyntaxToken> {
16024 support::token(&self.syntax, SyntaxKind::NOT_KW)
16025 }
16026 #[inline]
16027 pub fn null_token(&self) -> Option<SyntaxToken> {
16028 support::token(&self.syntax, SyntaxKind::NULL_KW)
16029 }
16030 #[inline]
16031 pub fn path_token(&self) -> Option<SyntaxToken> {
16032 support::token(&self.syntax, SyntaxKind::PATH_KW)
16033 }
16034}
16035
16036#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16037pub struct XmlColumnOptionList {
16038 pub(crate) syntax: SyntaxNode,
16039}
16040impl XmlColumnOptionList {
16041 #[inline]
16042 pub fn xml_column_option(&self) -> Option<XmlColumnOption> {
16043 support::child(&self.syntax)
16044 }
16045 #[inline]
16046 pub fn xml_column_options(&self) -> AstChildren<XmlColumnOption> {
16047 support::children(&self.syntax)
16048 }
16049}
16050
16051#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16052pub struct XmlElementFn {
16053 pub(crate) syntax: SyntaxNode,
16054}
16055impl XmlElementFn {
16056 #[inline]
16057 pub fn exprs(&self) -> AstChildren<Expr> {
16058 support::children(&self.syntax)
16059 }
16060 #[inline]
16061 pub fn name(&self) -> Option<Name> {
16062 support::child(&self.syntax)
16063 }
16064 #[inline]
16065 pub fn xml_attribute_list(&self) -> Option<XmlAttributeList> {
16066 support::child(&self.syntax)
16067 }
16068 #[inline]
16069 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
16070 support::token(&self.syntax, SyntaxKind::L_PAREN)
16071 }
16072 #[inline]
16073 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
16074 support::token(&self.syntax, SyntaxKind::R_PAREN)
16075 }
16076 #[inline]
16077 pub fn comma_token(&self) -> Option<SyntaxToken> {
16078 support::token(&self.syntax, SyntaxKind::COMMA)
16079 }
16080 #[inline]
16081 pub fn name_token(&self) -> Option<SyntaxToken> {
16082 support::token(&self.syntax, SyntaxKind::NAME_KW)
16083 }
16084 #[inline]
16085 pub fn xmlattributes_token(&self) -> Option<SyntaxToken> {
16086 support::token(&self.syntax, SyntaxKind::XMLATTRIBUTES_KW)
16087 }
16088 #[inline]
16089 pub fn xmlelement_token(&self) -> Option<SyntaxToken> {
16090 support::token(&self.syntax, SyntaxKind::XMLELEMENT_KW)
16091 }
16092}
16093
16094#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16095pub struct XmlExistsFn {
16096 pub(crate) syntax: SyntaxNode,
16097}
16098impl XmlExistsFn {
16099 #[inline]
16100 pub fn expr(&self) -> Option<Expr> {
16101 support::child(&self.syntax)
16102 }
16103 #[inline]
16104 pub fn xml_passing_mech(&self) -> Option<XmlPassingMech> {
16105 support::child(&self.syntax)
16106 }
16107 #[inline]
16108 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
16109 support::token(&self.syntax, SyntaxKind::L_PAREN)
16110 }
16111 #[inline]
16112 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
16113 support::token(&self.syntax, SyntaxKind::R_PAREN)
16114 }
16115 #[inline]
16116 pub fn passing_token(&self) -> Option<SyntaxToken> {
16117 support::token(&self.syntax, SyntaxKind::PASSING_KW)
16118 }
16119 #[inline]
16120 pub fn xmlexists_token(&self) -> Option<SyntaxToken> {
16121 support::token(&self.syntax, SyntaxKind::XMLEXISTS_KW)
16122 }
16123}
16124
16125#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16126pub struct XmlForestFn {
16127 pub(crate) syntax: SyntaxNode,
16128}
16129impl XmlForestFn {
16130 #[inline]
16131 pub fn xml_attribute_list(&self) -> Option<XmlAttributeList> {
16132 support::child(&self.syntax)
16133 }
16134 #[inline]
16135 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
16136 support::token(&self.syntax, SyntaxKind::L_PAREN)
16137 }
16138 #[inline]
16139 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
16140 support::token(&self.syntax, SyntaxKind::R_PAREN)
16141 }
16142 #[inline]
16143 pub fn xmlforest_token(&self) -> Option<SyntaxToken> {
16144 support::token(&self.syntax, SyntaxKind::XMLFOREST_KW)
16145 }
16146}
16147
16148#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16149pub struct XmlNamespace {
16150 pub(crate) syntax: SyntaxNode,
16151}
16152impl XmlNamespace {
16153 #[inline]
16154 pub fn expr(&self) -> Option<Expr> {
16155 support::child(&self.syntax)
16156 }
16157 #[inline]
16158 pub fn name(&self) -> Option<Name> {
16159 support::child(&self.syntax)
16160 }
16161 #[inline]
16162 pub fn as_token(&self) -> Option<SyntaxToken> {
16163 support::token(&self.syntax, SyntaxKind::AS_KW)
16164 }
16165 #[inline]
16166 pub fn default_token(&self) -> Option<SyntaxToken> {
16167 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
16168 }
16169}
16170
16171#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16172pub struct XmlNamespaceList {
16173 pub(crate) syntax: SyntaxNode,
16174}
16175impl XmlNamespaceList {
16176 #[inline]
16177 pub fn xml_namespaces(&self) -> AstChildren<XmlNamespace> {
16178 support::children(&self.syntax)
16179 }
16180 #[inline]
16181 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
16182 support::token(&self.syntax, SyntaxKind::L_PAREN)
16183 }
16184 #[inline]
16185 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
16186 support::token(&self.syntax, SyntaxKind::R_PAREN)
16187 }
16188}
16189
16190#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16191pub struct XmlParseFn {
16192 pub(crate) syntax: SyntaxNode,
16193}
16194impl XmlParseFn {
16195 #[inline]
16196 pub fn expr(&self) -> Option<Expr> {
16197 support::child(&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 #[inline]
16208 pub fn content_token(&self) -> Option<SyntaxToken> {
16209 support::token(&self.syntax, SyntaxKind::CONTENT_KW)
16210 }
16211 #[inline]
16212 pub fn document_token(&self) -> Option<SyntaxToken> {
16213 support::token(&self.syntax, SyntaxKind::DOCUMENT_KW)
16214 }
16215 #[inline]
16216 pub fn preserve_token(&self) -> Option<SyntaxToken> {
16217 support::token(&self.syntax, SyntaxKind::PRESERVE_KW)
16218 }
16219 #[inline]
16220 pub fn strip_token(&self) -> Option<SyntaxToken> {
16221 support::token(&self.syntax, SyntaxKind::STRIP_KW)
16222 }
16223 #[inline]
16224 pub fn whitespace_token(&self) -> Option<SyntaxToken> {
16225 support::token(&self.syntax, SyntaxKind::WHITESPACE_KW)
16226 }
16227 #[inline]
16228 pub fn xmlparse_token(&self) -> Option<SyntaxToken> {
16229 support::token(&self.syntax, SyntaxKind::XMLPARSE_KW)
16230 }
16231}
16232
16233#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16234pub struct XmlPassingMech {
16235 pub(crate) syntax: SyntaxNode,
16236}
16237impl XmlPassingMech {
16238 #[inline]
16239 pub fn by_token(&self) -> Option<SyntaxToken> {
16240 support::token(&self.syntax, SyntaxKind::BY_KW)
16241 }
16242 #[inline]
16243 pub fn ref_token(&self) -> Option<SyntaxToken> {
16244 support::token(&self.syntax, SyntaxKind::REF_KW)
16245 }
16246 #[inline]
16247 pub fn value_token(&self) -> Option<SyntaxToken> {
16248 support::token(&self.syntax, SyntaxKind::VALUE_KW)
16249 }
16250}
16251
16252#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16253pub struct XmlPiFn {
16254 pub(crate) syntax: SyntaxNode,
16255}
16256impl XmlPiFn {
16257 #[inline]
16258 pub fn expr(&self) -> Option<Expr> {
16259 support::child(&self.syntax)
16260 }
16261 #[inline]
16262 pub fn name(&self) -> Option<Name> {
16263 support::child(&self.syntax)
16264 }
16265 #[inline]
16266 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
16267 support::token(&self.syntax, SyntaxKind::L_PAREN)
16268 }
16269 #[inline]
16270 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
16271 support::token(&self.syntax, SyntaxKind::R_PAREN)
16272 }
16273 #[inline]
16274 pub fn comma_token(&self) -> Option<SyntaxToken> {
16275 support::token(&self.syntax, SyntaxKind::COMMA)
16276 }
16277 #[inline]
16278 pub fn name_token(&self) -> Option<SyntaxToken> {
16279 support::token(&self.syntax, SyntaxKind::NAME_KW)
16280 }
16281 #[inline]
16282 pub fn xmlpi_token(&self) -> Option<SyntaxToken> {
16283 support::token(&self.syntax, SyntaxKind::XMLPI_KW)
16284 }
16285}
16286
16287#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16288pub struct XmlRootFn {
16289 pub(crate) syntax: SyntaxNode,
16290}
16291impl XmlRootFn {
16292 #[inline]
16293 pub fn expr(&self) -> Option<Expr> {
16294 support::child(&self.syntax)
16295 }
16296 #[inline]
16297 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
16298 support::token(&self.syntax, SyntaxKind::L_PAREN)
16299 }
16300 #[inline]
16301 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
16302 support::token(&self.syntax, SyntaxKind::R_PAREN)
16303 }
16304 #[inline]
16305 pub fn comma_token(&self) -> Option<SyntaxToken> {
16306 support::token(&self.syntax, SyntaxKind::COMMA)
16307 }
16308 #[inline]
16309 pub fn no_token(&self) -> Option<SyntaxToken> {
16310 support::token(&self.syntax, SyntaxKind::NO_KW)
16311 }
16312 #[inline]
16313 pub fn standalone_token(&self) -> Option<SyntaxToken> {
16314 support::token(&self.syntax, SyntaxKind::STANDALONE_KW)
16315 }
16316 #[inline]
16317 pub fn value_token(&self) -> Option<SyntaxToken> {
16318 support::token(&self.syntax, SyntaxKind::VALUE_KW)
16319 }
16320 #[inline]
16321 pub fn version_token(&self) -> Option<SyntaxToken> {
16322 support::token(&self.syntax, SyntaxKind::VERSION_KW)
16323 }
16324 #[inline]
16325 pub fn xmlroot_token(&self) -> Option<SyntaxToken> {
16326 support::token(&self.syntax, SyntaxKind::XMLROOT_KW)
16327 }
16328 #[inline]
16329 pub fn yes_token(&self) -> Option<SyntaxToken> {
16330 support::token(&self.syntax, SyntaxKind::YES_KW)
16331 }
16332}
16333
16334#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16335pub struct XmlRowPassingClause {
16336 pub(crate) syntax: SyntaxNode,
16337}
16338impl XmlRowPassingClause {
16339 #[inline]
16340 pub fn expr(&self) -> Option<Expr> {
16341 support::child(&self.syntax)
16342 }
16343 #[inline]
16344 pub fn xml_passing_mech(&self) -> Option<XmlPassingMech> {
16345 support::child(&self.syntax)
16346 }
16347 #[inline]
16348 pub fn passing_token(&self) -> Option<SyntaxToken> {
16349 support::token(&self.syntax, SyntaxKind::PASSING_KW)
16350 }
16351}
16352
16353#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16354pub struct XmlSerializeFn {
16355 pub(crate) syntax: SyntaxNode,
16356}
16357impl XmlSerializeFn {
16358 #[inline]
16359 pub fn expr(&self) -> Option<Expr> {
16360 support::child(&self.syntax)
16361 }
16362 #[inline]
16363 pub fn ty(&self) -> Option<Type> {
16364 support::child(&self.syntax)
16365 }
16366 #[inline]
16367 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
16368 support::token(&self.syntax, SyntaxKind::L_PAREN)
16369 }
16370 #[inline]
16371 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
16372 support::token(&self.syntax, SyntaxKind::R_PAREN)
16373 }
16374 #[inline]
16375 pub fn as_token(&self) -> Option<SyntaxToken> {
16376 support::token(&self.syntax, SyntaxKind::AS_KW)
16377 }
16378 #[inline]
16379 pub fn content_token(&self) -> Option<SyntaxToken> {
16380 support::token(&self.syntax, SyntaxKind::CONTENT_KW)
16381 }
16382 #[inline]
16383 pub fn document_token(&self) -> Option<SyntaxToken> {
16384 support::token(&self.syntax, SyntaxKind::DOCUMENT_KW)
16385 }
16386 #[inline]
16387 pub fn ident_token(&self) -> Option<SyntaxToken> {
16388 support::token(&self.syntax, SyntaxKind::IDENT)
16389 }
16390 #[inline]
16391 pub fn no_token(&self) -> Option<SyntaxToken> {
16392 support::token(&self.syntax, SyntaxKind::NO_KW)
16393 }
16394 #[inline]
16395 pub fn xmlserialize_token(&self) -> Option<SyntaxToken> {
16396 support::token(&self.syntax, SyntaxKind::XMLSERIALIZE_KW)
16397 }
16398}
16399
16400#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16401pub struct XmlTable {
16402 pub(crate) syntax: SyntaxNode,
16403}
16404impl XmlTable {
16405 #[inline]
16406 pub fn xml_namespace_list(&self) -> Option<XmlNamespaceList> {
16407 support::child(&self.syntax)
16408 }
16409 #[inline]
16410 pub fn xml_row_passing_clause(&self) -> Option<XmlRowPassingClause> {
16411 support::child(&self.syntax)
16412 }
16413 #[inline]
16414 pub fn xml_table_column_list(&self) -> Option<XmlTableColumnList> {
16415 support::child(&self.syntax)
16416 }
16417 #[inline]
16418 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
16419 support::token(&self.syntax, SyntaxKind::L_PAREN)
16420 }
16421 #[inline]
16422 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
16423 support::token(&self.syntax, SyntaxKind::R_PAREN)
16424 }
16425 #[inline]
16426 pub fn comma_token(&self) -> Option<SyntaxToken> {
16427 support::token(&self.syntax, SyntaxKind::COMMA)
16428 }
16429 #[inline]
16430 pub fn xmlnamespaces_token(&self) -> Option<SyntaxToken> {
16431 support::token(&self.syntax, SyntaxKind::XMLNAMESPACES_KW)
16432 }
16433 #[inline]
16434 pub fn xmltable_token(&self) -> Option<SyntaxToken> {
16435 support::token(&self.syntax, SyntaxKind::XMLTABLE_KW)
16436 }
16437}
16438
16439#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16440pub struct XmlTableColumn {
16441 pub(crate) syntax: SyntaxNode,
16442}
16443impl XmlTableColumn {
16444 #[inline]
16445 pub fn name(&self) -> Option<Name> {
16446 support::child(&self.syntax)
16447 }
16448 #[inline]
16449 pub fn ty(&self) -> Option<Type> {
16450 support::child(&self.syntax)
16451 }
16452 #[inline]
16453 pub fn xml_column_option_list(&self) -> Option<XmlColumnOptionList> {
16454 support::child(&self.syntax)
16455 }
16456 #[inline]
16457 pub fn for_token(&self) -> Option<SyntaxToken> {
16458 support::token(&self.syntax, SyntaxKind::FOR_KW)
16459 }
16460 #[inline]
16461 pub fn ordinality_token(&self) -> Option<SyntaxToken> {
16462 support::token(&self.syntax, SyntaxKind::ORDINALITY_KW)
16463 }
16464}
16465
16466#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16467pub struct XmlTableColumnList {
16468 pub(crate) syntax: SyntaxNode,
16469}
16470impl XmlTableColumnList {
16471 #[inline]
16472 pub fn xml_table_columns(&self) -> AstChildren<XmlTableColumn> {
16473 support::children(&self.syntax)
16474 }
16475}
16476
16477#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16478pub enum AlterColumnOption {
16479 AddGenerated(AddGenerated),
16480 DropDefault(DropDefault),
16481 DropExpression(DropExpression),
16482 DropIdentity(DropIdentity),
16483 DropNotNull(DropNotNull),
16484 ResetOptions(ResetOptions),
16485 Restart(Restart),
16486 SetCompression(SetCompression),
16487 SetDefault(SetDefault),
16488 SetExpression(SetExpression),
16489 SetGenerated(SetGenerated),
16490 SetGeneratedOptions(SetGeneratedOptions),
16491 SetNotNull(SetNotNull),
16492 SetOptions(SetOptions),
16493 SetOptionsList(SetOptionsList),
16494 SetSequenceOption(SetSequenceOption),
16495 SetStatistics(SetStatistics),
16496 SetStorage(SetStorage),
16497 SetType(SetType),
16498}
16499
16500#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16501pub enum AlterDomainAction {
16502 AddConstraint(AddConstraint),
16503 DropConstraint(DropConstraint),
16504 DropDefault(DropDefault),
16505 DropNotNull(DropNotNull),
16506 OwnerTo(OwnerTo),
16507 RenameConstraint(RenameConstraint),
16508 RenameTo(RenameTo),
16509 SetDefault(SetDefault),
16510 SetNotNull(SetNotNull),
16511 SetSchema(SetSchema),
16512 ValidateConstraint(ValidateConstraint),
16513}
16514
16515#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16516pub enum AlterMaterializedViewAction {
16517 DependsOnExtension(DependsOnExtension),
16518 NoDependsOnExtension(NoDependsOnExtension),
16519 RenameColumn(RenameColumn),
16520 RenameTo(RenameTo),
16521 SetSchema(SetSchema),
16522 AlterTableAction(AlterTableAction),
16523}
16524
16525#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16526pub enum AlterTableAction {
16527 AddColumn(AddColumn),
16528 AddConstraint(AddConstraint),
16529 AlterColumn(AlterColumn),
16530 AlterConstraint(AlterConstraint),
16531 AttachPartition(AttachPartition),
16532 ClusterOn(ClusterOn),
16533 DetachPartition(DetachPartition),
16534 DisableRls(DisableRls),
16535 DisableRule(DisableRule),
16536 DisableTrigger(DisableTrigger),
16537 DropColumn(DropColumn),
16538 DropConstraint(DropConstraint),
16539 EnableAlwaysRule(EnableAlwaysRule),
16540 EnableAlwaysTrigger(EnableAlwaysTrigger),
16541 EnableReplicaRule(EnableReplicaRule),
16542 EnableReplicaTrigger(EnableReplicaTrigger),
16543 EnableRls(EnableRls),
16544 EnableRule(EnableRule),
16545 EnableTrigger(EnableTrigger),
16546 ForceRls(ForceRls),
16547 InheritTable(InheritTable),
16548 MergePartitions(MergePartitions),
16549 NoForceRls(NoForceRls),
16550 NoInheritTable(NoInheritTable),
16551 NotOf(NotOf),
16552 OfType(OfType),
16553 OptionItemList(OptionItemList),
16554 OwnerTo(OwnerTo),
16555 RenameColumn(RenameColumn),
16556 RenameConstraint(RenameConstraint),
16557 RenameTo(RenameTo),
16558 ReplicaIdentity(ReplicaIdentity),
16559 ResetOptions(ResetOptions),
16560 SetAccessMethod(SetAccessMethod),
16561 SetLogged(SetLogged),
16562 SetOptions(SetOptions),
16563 SetSchema(SetSchema),
16564 SetTablespace(SetTablespace),
16565 SetUnlogged(SetUnlogged),
16566 SetWithoutCluster(SetWithoutCluster),
16567 SetWithoutOids(SetWithoutOids),
16568 SplitPartition(SplitPartition),
16569 ValidateConstraint(ValidateConstraint),
16570}
16571
16572#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16573pub enum ColumnConstraint {
16574 CheckConstraint(CheckConstraint),
16575 DefaultConstraint(DefaultConstraint),
16576 ExcludeConstraint(ExcludeConstraint),
16577 NotNullConstraint(NotNullConstraint),
16578 PrimaryKeyConstraint(PrimaryKeyConstraint),
16579 ReferencesConstraint(ReferencesConstraint),
16580 UniqueConstraint(UniqueConstraint),
16581}
16582
16583#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16584pub enum ConfigValue {
16585 Literal(Literal),
16586 NameRef(NameRef),
16587}
16588
16589#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16590pub enum ConflictAction {
16591 ConflictDoNothing(ConflictDoNothing),
16592 ConflictDoUpdateSet(ConflictDoUpdateSet),
16593}
16594
16595#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16596pub enum ConflictTarget {
16597 ConflictOnConstraint(ConflictOnConstraint),
16598 ConflictOnIndex(ConflictOnIndex),
16599}
16600
16601#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16602pub enum Constraint {
16603 CheckConstraint(CheckConstraint),
16604 DefaultConstraint(DefaultConstraint),
16605 ForeignKeyConstraint(ForeignKeyConstraint),
16606 GeneratedConstraint(GeneratedConstraint),
16607 NotNullConstraint(NotNullConstraint),
16608 NullConstraint(NullConstraint),
16609 PrimaryKeyConstraint(PrimaryKeyConstraint),
16610 ReferencesConstraint(ReferencesConstraint),
16611 UniqueConstraint(UniqueConstraint),
16612}
16613
16614#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16615pub enum ExplainStmt {
16616 CompoundSelect(CompoundSelect),
16617 CreateMaterializedView(CreateMaterializedView),
16618 CreateTableAs(CreateTableAs),
16619 Declare(Declare),
16620 Delete(Delete),
16621 Execute(Execute),
16622 Insert(Insert),
16623 Merge(Merge),
16624 ParenSelect(ParenSelect),
16625 Select(Select),
16626 SelectInto(SelectInto),
16627 Table(Table),
16628 Update(Update),
16629 Values(Values),
16630}
16631
16632#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16633pub enum Expr {
16634 ArrayExpr(ArrayExpr),
16635 BetweenExpr(BetweenExpr),
16636 BinExpr(BinExpr),
16637 CallExpr(CallExpr),
16638 CaseExpr(CaseExpr),
16639 CastExpr(CastExpr),
16640 FieldExpr(FieldExpr),
16641 IndexExpr(IndexExpr),
16642 Literal(Literal),
16643 NameRef(NameRef),
16644 ParenExpr(ParenExpr),
16645 PostfixExpr(PostfixExpr),
16646 PrefixExpr(PrefixExpr),
16647 SliceExpr(SliceExpr),
16648 TupleExpr(TupleExpr),
16649}
16650
16651#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16652pub enum FuncOption {
16653 AsFuncOption(AsFuncOption),
16654 BeginFuncOptionList(BeginFuncOptionList),
16655 CostFuncOption(CostFuncOption),
16656 LanguageFuncOption(LanguageFuncOption),
16657 LeakproofFuncOption(LeakproofFuncOption),
16658 ParallelFuncOption(ParallelFuncOption),
16659 ResetFuncOption(ResetFuncOption),
16660 ReturnFuncOption(ReturnFuncOption),
16661 RowsFuncOption(RowsFuncOption),
16662 SecurityFuncOption(SecurityFuncOption),
16663 SetFuncOption(SetFuncOption),
16664 StrictFuncOption(StrictFuncOption),
16665 SupportFuncOption(SupportFuncOption),
16666 TransformFuncOption(TransformFuncOption),
16667 VolatilityFuncOption(VolatilityFuncOption),
16668 WindowFuncOption(WindowFuncOption),
16669}
16670
16671#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16672pub enum GroupBy {
16673 GroupingCube(GroupingCube),
16674 GroupingExpr(GroupingExpr),
16675 GroupingRollup(GroupingRollup),
16676 GroupingSets(GroupingSets),
16677}
16678
16679#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16680pub enum JoinType {
16681 JoinCross(JoinCross),
16682 JoinFull(JoinFull),
16683 JoinInner(JoinInner),
16684 JoinLeft(JoinLeft),
16685 JoinRight(JoinRight),
16686}
16687
16688#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16689pub enum JsonBehavior {
16690 JsonBehaviorDefault(JsonBehaviorDefault),
16691 JsonBehaviorEmptyArray(JsonBehaviorEmptyArray),
16692 JsonBehaviorEmptyObject(JsonBehaviorEmptyObject),
16693 JsonBehaviorError(JsonBehaviorError),
16694 JsonBehaviorFalse(JsonBehaviorFalse),
16695 JsonBehaviorNull(JsonBehaviorNull),
16696 JsonBehaviorTrue(JsonBehaviorTrue),
16697 JsonBehaviorUnknown(JsonBehaviorUnknown),
16698}
16699
16700#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16701pub enum MatchType {
16702 MatchFull(MatchFull),
16703 MatchPartial(MatchPartial),
16704 MatchSimple(MatchSimple),
16705}
16706
16707#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16708pub enum MergeAction {
16709 MergeDelete(MergeDelete),
16710 MergeDoNothing(MergeDoNothing),
16711 MergeInsert(MergeInsert),
16712 MergeUpdate(MergeUpdate),
16713}
16714
16715#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16716pub enum MergeWhenClause {
16717 MergeWhenMatched(MergeWhenMatched),
16718 MergeWhenNotMatchedSource(MergeWhenNotMatchedSource),
16719 MergeWhenNotMatchedTarget(MergeWhenNotMatchedTarget),
16720}
16721
16722#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16723pub enum OnCommitAction {
16724 DeleteRows(DeleteRows),
16725 Drop(Drop),
16726 PreserveRows(PreserveRows),
16727}
16728
16729#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16730pub enum ParamMode {
16731 ParamIn(ParamIn),
16732 ParamInOut(ParamInOut),
16733 ParamOut(ParamOut),
16734 ParamVariadic(ParamVariadic),
16735}
16736
16737#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16738pub enum PartitionType {
16739 PartitionDefault(PartitionDefault),
16740 PartitionForValuesFrom(PartitionForValuesFrom),
16741 PartitionForValuesIn(PartitionForValuesIn),
16742 PartitionForValuesWith(PartitionForValuesWith),
16743}
16744
16745#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16746pub enum PreparableStmt {
16747 CompoundSelect(CompoundSelect),
16748 Delete(Delete),
16749 Insert(Insert),
16750 Merge(Merge),
16751 Select(Select),
16752 SelectInto(SelectInto),
16753 Table(Table),
16754 Update(Update),
16755 Values(Values),
16756}
16757
16758#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16759pub enum RefAction {
16760 Cascade(Cascade),
16761 NoAction(NoAction),
16762 Restrict(Restrict),
16763 SetDefaultColumns(SetDefaultColumns),
16764 SetNullColumns(SetNullColumns),
16765}
16766
16767#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16768pub enum SchemaElement {
16769 CreateIndex(CreateIndex),
16770 CreateSequence(CreateSequence),
16771 CreateTable(CreateTable),
16772 CreateTrigger(CreateTrigger),
16773 CreateView(CreateView),
16774 Grant(Grant),
16775}
16776
16777#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16778pub enum SelectVariant {
16779 CompoundSelect(CompoundSelect),
16780 ParenSelect(ParenSelect),
16781 Select(Select),
16782 SelectInto(SelectInto),
16783 Table(Table),
16784 Values(Values),
16785}
16786
16787#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16788pub enum SetColumn {
16789 SetMultipleColumns(SetMultipleColumns),
16790 SetSingleColumn(SetSingleColumn),
16791}
16792
16793#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16794pub enum Stmt {
16795 AlterAggregate(AlterAggregate),
16796 AlterCollation(AlterCollation),
16797 AlterConversion(AlterConversion),
16798 AlterDatabase(AlterDatabase),
16799 AlterDefaultPrivileges(AlterDefaultPrivileges),
16800 AlterDomain(AlterDomain),
16801 AlterEventTrigger(AlterEventTrigger),
16802 AlterExtension(AlterExtension),
16803 AlterForeignDataWrapper(AlterForeignDataWrapper),
16804 AlterForeignTable(AlterForeignTable),
16805 AlterFunction(AlterFunction),
16806 AlterGroup(AlterGroup),
16807 AlterIndex(AlterIndex),
16808 AlterLanguage(AlterLanguage),
16809 AlterLargeObject(AlterLargeObject),
16810 AlterMaterializedView(AlterMaterializedView),
16811 AlterOperator(AlterOperator),
16812 AlterOperatorClass(AlterOperatorClass),
16813 AlterOperatorFamily(AlterOperatorFamily),
16814 AlterPolicy(AlterPolicy),
16815 AlterProcedure(AlterProcedure),
16816 AlterPublication(AlterPublication),
16817 AlterRole(AlterRole),
16818 AlterRoutine(AlterRoutine),
16819 AlterRule(AlterRule),
16820 AlterSchema(AlterSchema),
16821 AlterSequence(AlterSequence),
16822 AlterServer(AlterServer),
16823 AlterStatistics(AlterStatistics),
16824 AlterSubscription(AlterSubscription),
16825 AlterSystem(AlterSystem),
16826 AlterTable(AlterTable),
16827 AlterTablespace(AlterTablespace),
16828 AlterTextSearchConfiguration(AlterTextSearchConfiguration),
16829 AlterTextSearchDictionary(AlterTextSearchDictionary),
16830 AlterTextSearchParser(AlterTextSearchParser),
16831 AlterTextSearchTemplate(AlterTextSearchTemplate),
16832 AlterTrigger(AlterTrigger),
16833 AlterType(AlterType),
16834 AlterUser(AlterUser),
16835 AlterUserMapping(AlterUserMapping),
16836 AlterView(AlterView),
16837 Analyze(Analyze),
16838 Begin(Begin),
16839 Call(Call),
16840 Checkpoint(Checkpoint),
16841 Close(Close),
16842 Cluster(Cluster),
16843 CommentOn(CommentOn),
16844 Commit(Commit),
16845 Copy(Copy),
16846 CreateAccessMethod(CreateAccessMethod),
16847 CreateAggregate(CreateAggregate),
16848 CreateCast(CreateCast),
16849 CreateCollation(CreateCollation),
16850 CreateConversion(CreateConversion),
16851 CreateDatabase(CreateDatabase),
16852 CreateDomain(CreateDomain),
16853 CreateEventTrigger(CreateEventTrigger),
16854 CreateExtension(CreateExtension),
16855 CreateForeignDataWrapper(CreateForeignDataWrapper),
16856 CreateForeignTable(CreateForeignTable),
16857 CreateFunction(CreateFunction),
16858 CreateGroup(CreateGroup),
16859 CreateIndex(CreateIndex),
16860 CreateLanguage(CreateLanguage),
16861 CreateMaterializedView(CreateMaterializedView),
16862 CreateOperator(CreateOperator),
16863 CreateOperatorClass(CreateOperatorClass),
16864 CreateOperatorFamily(CreateOperatorFamily),
16865 CreatePolicy(CreatePolicy),
16866 CreateProcedure(CreateProcedure),
16867 CreatePublication(CreatePublication),
16868 CreateRole(CreateRole),
16869 CreateRule(CreateRule),
16870 CreateSchema(CreateSchema),
16871 CreateSequence(CreateSequence),
16872 CreateServer(CreateServer),
16873 CreateStatistics(CreateStatistics),
16874 CreateSubscription(CreateSubscription),
16875 CreateTable(CreateTable),
16876 CreateTableAs(CreateTableAs),
16877 CreateTablespace(CreateTablespace),
16878 CreateTextSearchConfiguration(CreateTextSearchConfiguration),
16879 CreateTextSearchDictionary(CreateTextSearchDictionary),
16880 CreateTextSearchParser(CreateTextSearchParser),
16881 CreateTextSearchTemplate(CreateTextSearchTemplate),
16882 CreateTransform(CreateTransform),
16883 CreateTrigger(CreateTrigger),
16884 CreateType(CreateType),
16885 CreateUser(CreateUser),
16886 CreateUserMapping(CreateUserMapping),
16887 CreateView(CreateView),
16888 Deallocate(Deallocate),
16889 Declare(Declare),
16890 Delete(Delete),
16891 Discard(Discard),
16892 Do(Do),
16893 DropAccessMethod(DropAccessMethod),
16894 DropAggregate(DropAggregate),
16895 DropCast(DropCast),
16896 DropCollation(DropCollation),
16897 DropConversion(DropConversion),
16898 DropDatabase(DropDatabase),
16899 DropDomain(DropDomain),
16900 DropEventTrigger(DropEventTrigger),
16901 DropExtension(DropExtension),
16902 DropForeignDataWrapper(DropForeignDataWrapper),
16903 DropForeignTable(DropForeignTable),
16904 DropFunction(DropFunction),
16905 DropGroup(DropGroup),
16906 DropIndex(DropIndex),
16907 DropLanguage(DropLanguage),
16908 DropMaterializedView(DropMaterializedView),
16909 DropOperator(DropOperator),
16910 DropOperatorClass(DropOperatorClass),
16911 DropOperatorFamily(DropOperatorFamily),
16912 DropOwned(DropOwned),
16913 DropPolicy(DropPolicy),
16914 DropProcedure(DropProcedure),
16915 DropPublication(DropPublication),
16916 DropRole(DropRole),
16917 DropRoutine(DropRoutine),
16918 DropRule(DropRule),
16919 DropSchema(DropSchema),
16920 DropSequence(DropSequence),
16921 DropServer(DropServer),
16922 DropStatistics(DropStatistics),
16923 DropSubscription(DropSubscription),
16924 DropTable(DropTable),
16925 DropTablespace(DropTablespace),
16926 DropTextSearchConfig(DropTextSearchConfig),
16927 DropTextSearchDict(DropTextSearchDict),
16928 DropTextSearchParser(DropTextSearchParser),
16929 DropTextSearchTemplate(DropTextSearchTemplate),
16930 DropTransform(DropTransform),
16931 DropTrigger(DropTrigger),
16932 DropType(DropType),
16933 DropUser(DropUser),
16934 DropUserMapping(DropUserMapping),
16935 DropView(DropView),
16936 Execute(Execute),
16937 Explain(Explain),
16938 Fetch(Fetch),
16939 Grant(Grant),
16940 ImportForeignSchema(ImportForeignSchema),
16941 Insert(Insert),
16942 Listen(Listen),
16943 Load(Load),
16944 Lock(Lock),
16945 Merge(Merge),
16946 Move(Move),
16947 Notify(Notify),
16948 ParenSelect(ParenSelect),
16949 Prepare(Prepare),
16950 PrepareTransaction(PrepareTransaction),
16951 Reassign(Reassign),
16952 Refresh(Refresh),
16953 Reindex(Reindex),
16954 ReleaseSavepoint(ReleaseSavepoint),
16955 Reset(Reset),
16956 ResetSessionAuth(ResetSessionAuth),
16957 Revoke(Revoke),
16958 Rollback(Rollback),
16959 Savepoint(Savepoint),
16960 SecurityLabel(SecurityLabel),
16961 Select(Select),
16962 SelectInto(SelectInto),
16963 Set(Set),
16964 SetConstraints(SetConstraints),
16965 SetRole(SetRole),
16966 SetSessionAuth(SetSessionAuth),
16967 SetTransaction(SetTransaction),
16968 Show(Show),
16969 Table(Table),
16970 Truncate(Truncate),
16971 Unlisten(Unlisten),
16972 Update(Update),
16973 Vacuum(Vacuum),
16974 Values(Values),
16975}
16976
16977#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16978pub enum TableArg {
16979 Column(Column),
16980 LikeClause(LikeClause),
16981 TableConstraint(TableConstraint),
16982}
16983
16984#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16985pub enum TableConstraint {
16986 CheckConstraint(CheckConstraint),
16987 ExcludeConstraint(ExcludeConstraint),
16988 ForeignKeyConstraint(ForeignKeyConstraint),
16989 PrimaryKeyConstraint(PrimaryKeyConstraint),
16990 UniqueConstraint(UniqueConstraint),
16991}
16992
16993#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16994pub enum Timezone {
16995 WithTimezone(WithTimezone),
16996 WithoutTimezone(WithoutTimezone),
16997}
16998
16999#[derive(Debug, Clone, PartialEq, Eq, Hash)]
17000pub enum TransactionMode {
17001 Deferrable(Deferrable),
17002 NotDeferrable(NotDeferrable),
17003 ReadCommitted(ReadCommitted),
17004 ReadOnly(ReadOnly),
17005 ReadUncommitted(ReadUncommitted),
17006 ReadWrite(ReadWrite),
17007 RepeatableRead(RepeatableRead),
17008 Serializable(Serializable),
17009}
17010
17011#[derive(Debug, Clone, PartialEq, Eq, Hash)]
17012pub enum Type {
17013 ArrayType(ArrayType),
17014 BitType(BitType),
17015 CharType(CharType),
17016 DoubleType(DoubleType),
17017 ExprType(ExprType),
17018 IntervalType(IntervalType),
17019 PathType(PathType),
17020 PercentType(PercentType),
17021 TimeType(TimeType),
17022}
17023
17024#[derive(Debug, Clone, PartialEq, Eq, Hash)]
17025pub enum WithQuery {
17026 CompoundSelect(CompoundSelect),
17027 Delete(Delete),
17028 Insert(Insert),
17029 Merge(Merge),
17030 ParenSelect(ParenSelect),
17031 Select(Select),
17032 Table(Table),
17033 Update(Update),
17034 Values(Values),
17035}
17036impl AstNode for AddColumn {
17037 #[inline]
17038 fn can_cast(kind: SyntaxKind) -> bool {
17039 kind == SyntaxKind::ADD_COLUMN
17040 }
17041 #[inline]
17042 fn cast(syntax: SyntaxNode) -> Option<Self> {
17043 if Self::can_cast(syntax.kind()) {
17044 Some(Self { syntax })
17045 } else {
17046 None
17047 }
17048 }
17049 #[inline]
17050 fn syntax(&self) -> &SyntaxNode {
17051 &self.syntax
17052 }
17053}
17054impl AstNode for AddConstraint {
17055 #[inline]
17056 fn can_cast(kind: SyntaxKind) -> bool {
17057 kind == SyntaxKind::ADD_CONSTRAINT
17058 }
17059 #[inline]
17060 fn cast(syntax: SyntaxNode) -> Option<Self> {
17061 if Self::can_cast(syntax.kind()) {
17062 Some(Self { syntax })
17063 } else {
17064 None
17065 }
17066 }
17067 #[inline]
17068 fn syntax(&self) -> &SyntaxNode {
17069 &self.syntax
17070 }
17071}
17072impl AstNode for AddGenerated {
17073 #[inline]
17074 fn can_cast(kind: SyntaxKind) -> bool {
17075 kind == SyntaxKind::ADD_GENERATED
17076 }
17077 #[inline]
17078 fn cast(syntax: SyntaxNode) -> Option<Self> {
17079 if Self::can_cast(syntax.kind()) {
17080 Some(Self { syntax })
17081 } else {
17082 None
17083 }
17084 }
17085 #[inline]
17086 fn syntax(&self) -> &SyntaxNode {
17087 &self.syntax
17088 }
17089}
17090impl AstNode for AddOpClassOptions {
17091 #[inline]
17092 fn can_cast(kind: SyntaxKind) -> bool {
17093 kind == SyntaxKind::ADD_OP_CLASS_OPTIONS
17094 }
17095 #[inline]
17096 fn cast(syntax: SyntaxNode) -> Option<Self> {
17097 if Self::can_cast(syntax.kind()) {
17098 Some(Self { syntax })
17099 } else {
17100 None
17101 }
17102 }
17103 #[inline]
17104 fn syntax(&self) -> &SyntaxNode {
17105 &self.syntax
17106 }
17107}
17108impl AstNode for Aggregate {
17109 #[inline]
17110 fn can_cast(kind: SyntaxKind) -> bool {
17111 kind == SyntaxKind::AGGREGATE
17112 }
17113 #[inline]
17114 fn cast(syntax: SyntaxNode) -> Option<Self> {
17115 if Self::can_cast(syntax.kind()) {
17116 Some(Self { syntax })
17117 } else {
17118 None
17119 }
17120 }
17121 #[inline]
17122 fn syntax(&self) -> &SyntaxNode {
17123 &self.syntax
17124 }
17125}
17126impl AstNode for Alias {
17127 #[inline]
17128 fn can_cast(kind: SyntaxKind) -> bool {
17129 kind == SyntaxKind::ALIAS
17130 }
17131 #[inline]
17132 fn cast(syntax: SyntaxNode) -> Option<Self> {
17133 if Self::can_cast(syntax.kind()) {
17134 Some(Self { syntax })
17135 } else {
17136 None
17137 }
17138 }
17139 #[inline]
17140 fn syntax(&self) -> &SyntaxNode {
17141 &self.syntax
17142 }
17143}
17144impl AstNode for AllFn {
17145 #[inline]
17146 fn can_cast(kind: SyntaxKind) -> bool {
17147 kind == SyntaxKind::ALL_FN
17148 }
17149 #[inline]
17150 fn cast(syntax: SyntaxNode) -> Option<Self> {
17151 if Self::can_cast(syntax.kind()) {
17152 Some(Self { syntax })
17153 } else {
17154 None
17155 }
17156 }
17157 #[inline]
17158 fn syntax(&self) -> &SyntaxNode {
17159 &self.syntax
17160 }
17161}
17162impl AstNode for AlterAggregate {
17163 #[inline]
17164 fn can_cast(kind: SyntaxKind) -> bool {
17165 kind == SyntaxKind::ALTER_AGGREGATE
17166 }
17167 #[inline]
17168 fn cast(syntax: SyntaxNode) -> Option<Self> {
17169 if Self::can_cast(syntax.kind()) {
17170 Some(Self { syntax })
17171 } else {
17172 None
17173 }
17174 }
17175 #[inline]
17176 fn syntax(&self) -> &SyntaxNode {
17177 &self.syntax
17178 }
17179}
17180impl AstNode for AlterCollation {
17181 #[inline]
17182 fn can_cast(kind: SyntaxKind) -> bool {
17183 kind == SyntaxKind::ALTER_COLLATION
17184 }
17185 #[inline]
17186 fn cast(syntax: SyntaxNode) -> Option<Self> {
17187 if Self::can_cast(syntax.kind()) {
17188 Some(Self { syntax })
17189 } else {
17190 None
17191 }
17192 }
17193 #[inline]
17194 fn syntax(&self) -> &SyntaxNode {
17195 &self.syntax
17196 }
17197}
17198impl AstNode for AlterColumn {
17199 #[inline]
17200 fn can_cast(kind: SyntaxKind) -> bool {
17201 kind == SyntaxKind::ALTER_COLUMN
17202 }
17203 #[inline]
17204 fn cast(syntax: SyntaxNode) -> Option<Self> {
17205 if Self::can_cast(syntax.kind()) {
17206 Some(Self { syntax })
17207 } else {
17208 None
17209 }
17210 }
17211 #[inline]
17212 fn syntax(&self) -> &SyntaxNode {
17213 &self.syntax
17214 }
17215}
17216impl AstNode for AlterConstraint {
17217 #[inline]
17218 fn can_cast(kind: SyntaxKind) -> bool {
17219 kind == SyntaxKind::ALTER_CONSTRAINT
17220 }
17221 #[inline]
17222 fn cast(syntax: SyntaxNode) -> Option<Self> {
17223 if Self::can_cast(syntax.kind()) {
17224 Some(Self { syntax })
17225 } else {
17226 None
17227 }
17228 }
17229 #[inline]
17230 fn syntax(&self) -> &SyntaxNode {
17231 &self.syntax
17232 }
17233}
17234impl AstNode for AlterConversion {
17235 #[inline]
17236 fn can_cast(kind: SyntaxKind) -> bool {
17237 kind == SyntaxKind::ALTER_CONVERSION
17238 }
17239 #[inline]
17240 fn cast(syntax: SyntaxNode) -> Option<Self> {
17241 if Self::can_cast(syntax.kind()) {
17242 Some(Self { syntax })
17243 } else {
17244 None
17245 }
17246 }
17247 #[inline]
17248 fn syntax(&self) -> &SyntaxNode {
17249 &self.syntax
17250 }
17251}
17252impl AstNode for AlterDatabase {
17253 #[inline]
17254 fn can_cast(kind: SyntaxKind) -> bool {
17255 kind == SyntaxKind::ALTER_DATABASE
17256 }
17257 #[inline]
17258 fn cast(syntax: SyntaxNode) -> Option<Self> {
17259 if Self::can_cast(syntax.kind()) {
17260 Some(Self { syntax })
17261 } else {
17262 None
17263 }
17264 }
17265 #[inline]
17266 fn syntax(&self) -> &SyntaxNode {
17267 &self.syntax
17268 }
17269}
17270impl AstNode for AlterDefaultPrivileges {
17271 #[inline]
17272 fn can_cast(kind: SyntaxKind) -> bool {
17273 kind == SyntaxKind::ALTER_DEFAULT_PRIVILEGES
17274 }
17275 #[inline]
17276 fn cast(syntax: SyntaxNode) -> Option<Self> {
17277 if Self::can_cast(syntax.kind()) {
17278 Some(Self { syntax })
17279 } else {
17280 None
17281 }
17282 }
17283 #[inline]
17284 fn syntax(&self) -> &SyntaxNode {
17285 &self.syntax
17286 }
17287}
17288impl AstNode for AlterDomain {
17289 #[inline]
17290 fn can_cast(kind: SyntaxKind) -> bool {
17291 kind == SyntaxKind::ALTER_DOMAIN
17292 }
17293 #[inline]
17294 fn cast(syntax: SyntaxNode) -> Option<Self> {
17295 if Self::can_cast(syntax.kind()) {
17296 Some(Self { syntax })
17297 } else {
17298 None
17299 }
17300 }
17301 #[inline]
17302 fn syntax(&self) -> &SyntaxNode {
17303 &self.syntax
17304 }
17305}
17306impl AstNode for AlterEventTrigger {
17307 #[inline]
17308 fn can_cast(kind: SyntaxKind) -> bool {
17309 kind == SyntaxKind::ALTER_EVENT_TRIGGER
17310 }
17311 #[inline]
17312 fn cast(syntax: SyntaxNode) -> Option<Self> {
17313 if Self::can_cast(syntax.kind()) {
17314 Some(Self { syntax })
17315 } else {
17316 None
17317 }
17318 }
17319 #[inline]
17320 fn syntax(&self) -> &SyntaxNode {
17321 &self.syntax
17322 }
17323}
17324impl AstNode for AlterExtension {
17325 #[inline]
17326 fn can_cast(kind: SyntaxKind) -> bool {
17327 kind == SyntaxKind::ALTER_EXTENSION
17328 }
17329 #[inline]
17330 fn cast(syntax: SyntaxNode) -> Option<Self> {
17331 if Self::can_cast(syntax.kind()) {
17332 Some(Self { syntax })
17333 } else {
17334 None
17335 }
17336 }
17337 #[inline]
17338 fn syntax(&self) -> &SyntaxNode {
17339 &self.syntax
17340 }
17341}
17342impl AstNode for AlterForeignDataWrapper {
17343 #[inline]
17344 fn can_cast(kind: SyntaxKind) -> bool {
17345 kind == SyntaxKind::ALTER_FOREIGN_DATA_WRAPPER
17346 }
17347 #[inline]
17348 fn cast(syntax: SyntaxNode) -> Option<Self> {
17349 if Self::can_cast(syntax.kind()) {
17350 Some(Self { syntax })
17351 } else {
17352 None
17353 }
17354 }
17355 #[inline]
17356 fn syntax(&self) -> &SyntaxNode {
17357 &self.syntax
17358 }
17359}
17360impl AstNode for AlterForeignTable {
17361 #[inline]
17362 fn can_cast(kind: SyntaxKind) -> bool {
17363 kind == SyntaxKind::ALTER_FOREIGN_TABLE
17364 }
17365 #[inline]
17366 fn cast(syntax: SyntaxNode) -> Option<Self> {
17367 if Self::can_cast(syntax.kind()) {
17368 Some(Self { syntax })
17369 } else {
17370 None
17371 }
17372 }
17373 #[inline]
17374 fn syntax(&self) -> &SyntaxNode {
17375 &self.syntax
17376 }
17377}
17378impl AstNode for AlterFunction {
17379 #[inline]
17380 fn can_cast(kind: SyntaxKind) -> bool {
17381 kind == SyntaxKind::ALTER_FUNCTION
17382 }
17383 #[inline]
17384 fn cast(syntax: SyntaxNode) -> Option<Self> {
17385 if Self::can_cast(syntax.kind()) {
17386 Some(Self { syntax })
17387 } else {
17388 None
17389 }
17390 }
17391 #[inline]
17392 fn syntax(&self) -> &SyntaxNode {
17393 &self.syntax
17394 }
17395}
17396impl AstNode for AlterGroup {
17397 #[inline]
17398 fn can_cast(kind: SyntaxKind) -> bool {
17399 kind == SyntaxKind::ALTER_GROUP
17400 }
17401 #[inline]
17402 fn cast(syntax: SyntaxNode) -> Option<Self> {
17403 if Self::can_cast(syntax.kind()) {
17404 Some(Self { syntax })
17405 } else {
17406 None
17407 }
17408 }
17409 #[inline]
17410 fn syntax(&self) -> &SyntaxNode {
17411 &self.syntax
17412 }
17413}
17414impl AstNode for AlterIndex {
17415 #[inline]
17416 fn can_cast(kind: SyntaxKind) -> bool {
17417 kind == SyntaxKind::ALTER_INDEX
17418 }
17419 #[inline]
17420 fn cast(syntax: SyntaxNode) -> Option<Self> {
17421 if Self::can_cast(syntax.kind()) {
17422 Some(Self { syntax })
17423 } else {
17424 None
17425 }
17426 }
17427 #[inline]
17428 fn syntax(&self) -> &SyntaxNode {
17429 &self.syntax
17430 }
17431}
17432impl AstNode for AlterLanguage {
17433 #[inline]
17434 fn can_cast(kind: SyntaxKind) -> bool {
17435 kind == SyntaxKind::ALTER_LANGUAGE
17436 }
17437 #[inline]
17438 fn cast(syntax: SyntaxNode) -> Option<Self> {
17439 if Self::can_cast(syntax.kind()) {
17440 Some(Self { syntax })
17441 } else {
17442 None
17443 }
17444 }
17445 #[inline]
17446 fn syntax(&self) -> &SyntaxNode {
17447 &self.syntax
17448 }
17449}
17450impl AstNode for AlterLargeObject {
17451 #[inline]
17452 fn can_cast(kind: SyntaxKind) -> bool {
17453 kind == SyntaxKind::ALTER_LARGE_OBJECT
17454 }
17455 #[inline]
17456 fn cast(syntax: SyntaxNode) -> Option<Self> {
17457 if Self::can_cast(syntax.kind()) {
17458 Some(Self { syntax })
17459 } else {
17460 None
17461 }
17462 }
17463 #[inline]
17464 fn syntax(&self) -> &SyntaxNode {
17465 &self.syntax
17466 }
17467}
17468impl AstNode for AlterMaterializedView {
17469 #[inline]
17470 fn can_cast(kind: SyntaxKind) -> bool {
17471 kind == SyntaxKind::ALTER_MATERIALIZED_VIEW
17472 }
17473 #[inline]
17474 fn cast(syntax: SyntaxNode) -> Option<Self> {
17475 if Self::can_cast(syntax.kind()) {
17476 Some(Self { syntax })
17477 } else {
17478 None
17479 }
17480 }
17481 #[inline]
17482 fn syntax(&self) -> &SyntaxNode {
17483 &self.syntax
17484 }
17485}
17486impl AstNode for AlterOperator {
17487 #[inline]
17488 fn can_cast(kind: SyntaxKind) -> bool {
17489 kind == SyntaxKind::ALTER_OPERATOR
17490 }
17491 #[inline]
17492 fn cast(syntax: SyntaxNode) -> Option<Self> {
17493 if Self::can_cast(syntax.kind()) {
17494 Some(Self { syntax })
17495 } else {
17496 None
17497 }
17498 }
17499 #[inline]
17500 fn syntax(&self) -> &SyntaxNode {
17501 &self.syntax
17502 }
17503}
17504impl AstNode for AlterOperatorClass {
17505 #[inline]
17506 fn can_cast(kind: SyntaxKind) -> bool {
17507 kind == SyntaxKind::ALTER_OPERATOR_CLASS
17508 }
17509 #[inline]
17510 fn cast(syntax: SyntaxNode) -> Option<Self> {
17511 if Self::can_cast(syntax.kind()) {
17512 Some(Self { syntax })
17513 } else {
17514 None
17515 }
17516 }
17517 #[inline]
17518 fn syntax(&self) -> &SyntaxNode {
17519 &self.syntax
17520 }
17521}
17522impl AstNode for AlterOperatorFamily {
17523 #[inline]
17524 fn can_cast(kind: SyntaxKind) -> bool {
17525 kind == SyntaxKind::ALTER_OPERATOR_FAMILY
17526 }
17527 #[inline]
17528 fn cast(syntax: SyntaxNode) -> Option<Self> {
17529 if Self::can_cast(syntax.kind()) {
17530 Some(Self { syntax })
17531 } else {
17532 None
17533 }
17534 }
17535 #[inline]
17536 fn syntax(&self) -> &SyntaxNode {
17537 &self.syntax
17538 }
17539}
17540impl AstNode for AlterOption {
17541 #[inline]
17542 fn can_cast(kind: SyntaxKind) -> bool {
17543 kind == SyntaxKind::ALTER_OPTION
17544 }
17545 #[inline]
17546 fn cast(syntax: SyntaxNode) -> Option<Self> {
17547 if Self::can_cast(syntax.kind()) {
17548 Some(Self { syntax })
17549 } else {
17550 None
17551 }
17552 }
17553 #[inline]
17554 fn syntax(&self) -> &SyntaxNode {
17555 &self.syntax
17556 }
17557}
17558impl AstNode for AlterOptionList {
17559 #[inline]
17560 fn can_cast(kind: SyntaxKind) -> bool {
17561 kind == SyntaxKind::ALTER_OPTION_LIST
17562 }
17563 #[inline]
17564 fn cast(syntax: SyntaxNode) -> Option<Self> {
17565 if Self::can_cast(syntax.kind()) {
17566 Some(Self { syntax })
17567 } else {
17568 None
17569 }
17570 }
17571 #[inline]
17572 fn syntax(&self) -> &SyntaxNode {
17573 &self.syntax
17574 }
17575}
17576impl AstNode for AlterPolicy {
17577 #[inline]
17578 fn can_cast(kind: SyntaxKind) -> bool {
17579 kind == SyntaxKind::ALTER_POLICY
17580 }
17581 #[inline]
17582 fn cast(syntax: SyntaxNode) -> Option<Self> {
17583 if Self::can_cast(syntax.kind()) {
17584 Some(Self { syntax })
17585 } else {
17586 None
17587 }
17588 }
17589 #[inline]
17590 fn syntax(&self) -> &SyntaxNode {
17591 &self.syntax
17592 }
17593}
17594impl AstNode for AlterProcedure {
17595 #[inline]
17596 fn can_cast(kind: SyntaxKind) -> bool {
17597 kind == SyntaxKind::ALTER_PROCEDURE
17598 }
17599 #[inline]
17600 fn cast(syntax: SyntaxNode) -> Option<Self> {
17601 if Self::can_cast(syntax.kind()) {
17602 Some(Self { syntax })
17603 } else {
17604 None
17605 }
17606 }
17607 #[inline]
17608 fn syntax(&self) -> &SyntaxNode {
17609 &self.syntax
17610 }
17611}
17612impl AstNode for AlterPublication {
17613 #[inline]
17614 fn can_cast(kind: SyntaxKind) -> bool {
17615 kind == SyntaxKind::ALTER_PUBLICATION
17616 }
17617 #[inline]
17618 fn cast(syntax: SyntaxNode) -> Option<Self> {
17619 if Self::can_cast(syntax.kind()) {
17620 Some(Self { syntax })
17621 } else {
17622 None
17623 }
17624 }
17625 #[inline]
17626 fn syntax(&self) -> &SyntaxNode {
17627 &self.syntax
17628 }
17629}
17630impl AstNode for AlterRole {
17631 #[inline]
17632 fn can_cast(kind: SyntaxKind) -> bool {
17633 kind == SyntaxKind::ALTER_ROLE
17634 }
17635 #[inline]
17636 fn cast(syntax: SyntaxNode) -> Option<Self> {
17637 if Self::can_cast(syntax.kind()) {
17638 Some(Self { syntax })
17639 } else {
17640 None
17641 }
17642 }
17643 #[inline]
17644 fn syntax(&self) -> &SyntaxNode {
17645 &self.syntax
17646 }
17647}
17648impl AstNode for AlterRoutine {
17649 #[inline]
17650 fn can_cast(kind: SyntaxKind) -> bool {
17651 kind == SyntaxKind::ALTER_ROUTINE
17652 }
17653 #[inline]
17654 fn cast(syntax: SyntaxNode) -> Option<Self> {
17655 if Self::can_cast(syntax.kind()) {
17656 Some(Self { syntax })
17657 } else {
17658 None
17659 }
17660 }
17661 #[inline]
17662 fn syntax(&self) -> &SyntaxNode {
17663 &self.syntax
17664 }
17665}
17666impl AstNode for AlterRule {
17667 #[inline]
17668 fn can_cast(kind: SyntaxKind) -> bool {
17669 kind == SyntaxKind::ALTER_RULE
17670 }
17671 #[inline]
17672 fn cast(syntax: SyntaxNode) -> Option<Self> {
17673 if Self::can_cast(syntax.kind()) {
17674 Some(Self { syntax })
17675 } else {
17676 None
17677 }
17678 }
17679 #[inline]
17680 fn syntax(&self) -> &SyntaxNode {
17681 &self.syntax
17682 }
17683}
17684impl AstNode for AlterSchema {
17685 #[inline]
17686 fn can_cast(kind: SyntaxKind) -> bool {
17687 kind == SyntaxKind::ALTER_SCHEMA
17688 }
17689 #[inline]
17690 fn cast(syntax: SyntaxNode) -> Option<Self> {
17691 if Self::can_cast(syntax.kind()) {
17692 Some(Self { syntax })
17693 } else {
17694 None
17695 }
17696 }
17697 #[inline]
17698 fn syntax(&self) -> &SyntaxNode {
17699 &self.syntax
17700 }
17701}
17702impl AstNode for AlterSequence {
17703 #[inline]
17704 fn can_cast(kind: SyntaxKind) -> bool {
17705 kind == SyntaxKind::ALTER_SEQUENCE
17706 }
17707 #[inline]
17708 fn cast(syntax: SyntaxNode) -> Option<Self> {
17709 if Self::can_cast(syntax.kind()) {
17710 Some(Self { syntax })
17711 } else {
17712 None
17713 }
17714 }
17715 #[inline]
17716 fn syntax(&self) -> &SyntaxNode {
17717 &self.syntax
17718 }
17719}
17720impl AstNode for AlterServer {
17721 #[inline]
17722 fn can_cast(kind: SyntaxKind) -> bool {
17723 kind == SyntaxKind::ALTER_SERVER
17724 }
17725 #[inline]
17726 fn cast(syntax: SyntaxNode) -> Option<Self> {
17727 if Self::can_cast(syntax.kind()) {
17728 Some(Self { syntax })
17729 } else {
17730 None
17731 }
17732 }
17733 #[inline]
17734 fn syntax(&self) -> &SyntaxNode {
17735 &self.syntax
17736 }
17737}
17738impl AstNode for AlterSetStatistics {
17739 #[inline]
17740 fn can_cast(kind: SyntaxKind) -> bool {
17741 kind == SyntaxKind::ALTER_SET_STATISTICS
17742 }
17743 #[inline]
17744 fn cast(syntax: SyntaxNode) -> Option<Self> {
17745 if Self::can_cast(syntax.kind()) {
17746 Some(Self { syntax })
17747 } else {
17748 None
17749 }
17750 }
17751 #[inline]
17752 fn syntax(&self) -> &SyntaxNode {
17753 &self.syntax
17754 }
17755}
17756impl AstNode for AlterStatistics {
17757 #[inline]
17758 fn can_cast(kind: SyntaxKind) -> bool {
17759 kind == SyntaxKind::ALTER_STATISTICS
17760 }
17761 #[inline]
17762 fn cast(syntax: SyntaxNode) -> Option<Self> {
17763 if Self::can_cast(syntax.kind()) {
17764 Some(Self { syntax })
17765 } else {
17766 None
17767 }
17768 }
17769 #[inline]
17770 fn syntax(&self) -> &SyntaxNode {
17771 &self.syntax
17772 }
17773}
17774impl AstNode for AlterSubscription {
17775 #[inline]
17776 fn can_cast(kind: SyntaxKind) -> bool {
17777 kind == SyntaxKind::ALTER_SUBSCRIPTION
17778 }
17779 #[inline]
17780 fn cast(syntax: SyntaxNode) -> Option<Self> {
17781 if Self::can_cast(syntax.kind()) {
17782 Some(Self { syntax })
17783 } else {
17784 None
17785 }
17786 }
17787 #[inline]
17788 fn syntax(&self) -> &SyntaxNode {
17789 &self.syntax
17790 }
17791}
17792impl AstNode for AlterSystem {
17793 #[inline]
17794 fn can_cast(kind: SyntaxKind) -> bool {
17795 kind == SyntaxKind::ALTER_SYSTEM
17796 }
17797 #[inline]
17798 fn cast(syntax: SyntaxNode) -> Option<Self> {
17799 if Self::can_cast(syntax.kind()) {
17800 Some(Self { syntax })
17801 } else {
17802 None
17803 }
17804 }
17805 #[inline]
17806 fn syntax(&self) -> &SyntaxNode {
17807 &self.syntax
17808 }
17809}
17810impl AstNode for AlterTable {
17811 #[inline]
17812 fn can_cast(kind: SyntaxKind) -> bool {
17813 kind == SyntaxKind::ALTER_TABLE
17814 }
17815 #[inline]
17816 fn cast(syntax: SyntaxNode) -> Option<Self> {
17817 if Self::can_cast(syntax.kind()) {
17818 Some(Self { syntax })
17819 } else {
17820 None
17821 }
17822 }
17823 #[inline]
17824 fn syntax(&self) -> &SyntaxNode {
17825 &self.syntax
17826 }
17827}
17828impl AstNode for AlterTablespace {
17829 #[inline]
17830 fn can_cast(kind: SyntaxKind) -> bool {
17831 kind == SyntaxKind::ALTER_TABLESPACE
17832 }
17833 #[inline]
17834 fn cast(syntax: SyntaxNode) -> Option<Self> {
17835 if Self::can_cast(syntax.kind()) {
17836 Some(Self { syntax })
17837 } else {
17838 None
17839 }
17840 }
17841 #[inline]
17842 fn syntax(&self) -> &SyntaxNode {
17843 &self.syntax
17844 }
17845}
17846impl AstNode for AlterTextSearchConfiguration {
17847 #[inline]
17848 fn can_cast(kind: SyntaxKind) -> bool {
17849 kind == SyntaxKind::ALTER_TEXT_SEARCH_CONFIGURATION
17850 }
17851 #[inline]
17852 fn cast(syntax: SyntaxNode) -> Option<Self> {
17853 if Self::can_cast(syntax.kind()) {
17854 Some(Self { syntax })
17855 } else {
17856 None
17857 }
17858 }
17859 #[inline]
17860 fn syntax(&self) -> &SyntaxNode {
17861 &self.syntax
17862 }
17863}
17864impl AstNode for AlterTextSearchDictionary {
17865 #[inline]
17866 fn can_cast(kind: SyntaxKind) -> bool {
17867 kind == SyntaxKind::ALTER_TEXT_SEARCH_DICTIONARY
17868 }
17869 #[inline]
17870 fn cast(syntax: SyntaxNode) -> Option<Self> {
17871 if Self::can_cast(syntax.kind()) {
17872 Some(Self { syntax })
17873 } else {
17874 None
17875 }
17876 }
17877 #[inline]
17878 fn syntax(&self) -> &SyntaxNode {
17879 &self.syntax
17880 }
17881}
17882impl AstNode for AlterTextSearchParser {
17883 #[inline]
17884 fn can_cast(kind: SyntaxKind) -> bool {
17885 kind == SyntaxKind::ALTER_TEXT_SEARCH_PARSER
17886 }
17887 #[inline]
17888 fn cast(syntax: SyntaxNode) -> Option<Self> {
17889 if Self::can_cast(syntax.kind()) {
17890 Some(Self { syntax })
17891 } else {
17892 None
17893 }
17894 }
17895 #[inline]
17896 fn syntax(&self) -> &SyntaxNode {
17897 &self.syntax
17898 }
17899}
17900impl AstNode for AlterTextSearchTemplate {
17901 #[inline]
17902 fn can_cast(kind: SyntaxKind) -> bool {
17903 kind == SyntaxKind::ALTER_TEXT_SEARCH_TEMPLATE
17904 }
17905 #[inline]
17906 fn cast(syntax: SyntaxNode) -> Option<Self> {
17907 if Self::can_cast(syntax.kind()) {
17908 Some(Self { syntax })
17909 } else {
17910 None
17911 }
17912 }
17913 #[inline]
17914 fn syntax(&self) -> &SyntaxNode {
17915 &self.syntax
17916 }
17917}
17918impl AstNode for AlterTrigger {
17919 #[inline]
17920 fn can_cast(kind: SyntaxKind) -> bool {
17921 kind == SyntaxKind::ALTER_TRIGGER
17922 }
17923 #[inline]
17924 fn cast(syntax: SyntaxNode) -> Option<Self> {
17925 if Self::can_cast(syntax.kind()) {
17926 Some(Self { syntax })
17927 } else {
17928 None
17929 }
17930 }
17931 #[inline]
17932 fn syntax(&self) -> &SyntaxNode {
17933 &self.syntax
17934 }
17935}
17936impl AstNode for AlterType {
17937 #[inline]
17938 fn can_cast(kind: SyntaxKind) -> bool {
17939 kind == SyntaxKind::ALTER_TYPE
17940 }
17941 #[inline]
17942 fn cast(syntax: SyntaxNode) -> Option<Self> {
17943 if Self::can_cast(syntax.kind()) {
17944 Some(Self { syntax })
17945 } else {
17946 None
17947 }
17948 }
17949 #[inline]
17950 fn syntax(&self) -> &SyntaxNode {
17951 &self.syntax
17952 }
17953}
17954impl AstNode for AlterUser {
17955 #[inline]
17956 fn can_cast(kind: SyntaxKind) -> bool {
17957 kind == SyntaxKind::ALTER_USER
17958 }
17959 #[inline]
17960 fn cast(syntax: SyntaxNode) -> Option<Self> {
17961 if Self::can_cast(syntax.kind()) {
17962 Some(Self { syntax })
17963 } else {
17964 None
17965 }
17966 }
17967 #[inline]
17968 fn syntax(&self) -> &SyntaxNode {
17969 &self.syntax
17970 }
17971}
17972impl AstNode for AlterUserMapping {
17973 #[inline]
17974 fn can_cast(kind: SyntaxKind) -> bool {
17975 kind == SyntaxKind::ALTER_USER_MAPPING
17976 }
17977 #[inline]
17978 fn cast(syntax: SyntaxNode) -> Option<Self> {
17979 if Self::can_cast(syntax.kind()) {
17980 Some(Self { syntax })
17981 } else {
17982 None
17983 }
17984 }
17985 #[inline]
17986 fn syntax(&self) -> &SyntaxNode {
17987 &self.syntax
17988 }
17989}
17990impl AstNode for AlterView {
17991 #[inline]
17992 fn can_cast(kind: SyntaxKind) -> bool {
17993 kind == SyntaxKind::ALTER_VIEW
17994 }
17995 #[inline]
17996 fn cast(syntax: SyntaxNode) -> Option<Self> {
17997 if Self::can_cast(syntax.kind()) {
17998 Some(Self { syntax })
17999 } else {
18000 None
18001 }
18002 }
18003 #[inline]
18004 fn syntax(&self) -> &SyntaxNode {
18005 &self.syntax
18006 }
18007}
18008impl AstNode for Analyze {
18009 #[inline]
18010 fn can_cast(kind: SyntaxKind) -> bool {
18011 kind == SyntaxKind::ANALYZE
18012 }
18013 #[inline]
18014 fn cast(syntax: SyntaxNode) -> Option<Self> {
18015 if Self::can_cast(syntax.kind()) {
18016 Some(Self { syntax })
18017 } else {
18018 None
18019 }
18020 }
18021 #[inline]
18022 fn syntax(&self) -> &SyntaxNode {
18023 &self.syntax
18024 }
18025}
18026impl AstNode for AnyFn {
18027 #[inline]
18028 fn can_cast(kind: SyntaxKind) -> bool {
18029 kind == SyntaxKind::ANY_FN
18030 }
18031 #[inline]
18032 fn cast(syntax: SyntaxNode) -> Option<Self> {
18033 if Self::can_cast(syntax.kind()) {
18034 Some(Self { syntax })
18035 } else {
18036 None
18037 }
18038 }
18039 #[inline]
18040 fn syntax(&self) -> &SyntaxNode {
18041 &self.syntax
18042 }
18043}
18044impl AstNode for Arg {
18045 #[inline]
18046 fn can_cast(kind: SyntaxKind) -> bool {
18047 kind == SyntaxKind::ARG
18048 }
18049 #[inline]
18050 fn cast(syntax: SyntaxNode) -> Option<Self> {
18051 if Self::can_cast(syntax.kind()) {
18052 Some(Self { syntax })
18053 } else {
18054 None
18055 }
18056 }
18057 #[inline]
18058 fn syntax(&self) -> &SyntaxNode {
18059 &self.syntax
18060 }
18061}
18062impl AstNode for ArgList {
18063 #[inline]
18064 fn can_cast(kind: SyntaxKind) -> bool {
18065 kind == SyntaxKind::ARG_LIST
18066 }
18067 #[inline]
18068 fn cast(syntax: SyntaxNode) -> Option<Self> {
18069 if Self::can_cast(syntax.kind()) {
18070 Some(Self { syntax })
18071 } else {
18072 None
18073 }
18074 }
18075 #[inline]
18076 fn syntax(&self) -> &SyntaxNode {
18077 &self.syntax
18078 }
18079}
18080impl AstNode for ArrayExpr {
18081 #[inline]
18082 fn can_cast(kind: SyntaxKind) -> bool {
18083 kind == SyntaxKind::ARRAY_EXPR
18084 }
18085 #[inline]
18086 fn cast(syntax: SyntaxNode) -> Option<Self> {
18087 if Self::can_cast(syntax.kind()) {
18088 Some(Self { syntax })
18089 } else {
18090 None
18091 }
18092 }
18093 #[inline]
18094 fn syntax(&self) -> &SyntaxNode {
18095 &self.syntax
18096 }
18097}
18098impl AstNode for ArrayType {
18099 #[inline]
18100 fn can_cast(kind: SyntaxKind) -> bool {
18101 kind == SyntaxKind::ARRAY_TYPE
18102 }
18103 #[inline]
18104 fn cast(syntax: SyntaxNode) -> Option<Self> {
18105 if Self::can_cast(syntax.kind()) {
18106 Some(Self { syntax })
18107 } else {
18108 None
18109 }
18110 }
18111 #[inline]
18112 fn syntax(&self) -> &SyntaxNode {
18113 &self.syntax
18114 }
18115}
18116impl AstNode for AsFuncOption {
18117 #[inline]
18118 fn can_cast(kind: SyntaxKind) -> bool {
18119 kind == SyntaxKind::AS_FUNC_OPTION
18120 }
18121 #[inline]
18122 fn cast(syntax: SyntaxNode) -> Option<Self> {
18123 if Self::can_cast(syntax.kind()) {
18124 Some(Self { syntax })
18125 } else {
18126 None
18127 }
18128 }
18129 #[inline]
18130 fn syntax(&self) -> &SyntaxNode {
18131 &self.syntax
18132 }
18133}
18134impl AstNode for AsName {
18135 #[inline]
18136 fn can_cast(kind: SyntaxKind) -> bool {
18137 kind == SyntaxKind::AS_NAME
18138 }
18139 #[inline]
18140 fn cast(syntax: SyntaxNode) -> Option<Self> {
18141 if Self::can_cast(syntax.kind()) {
18142 Some(Self { syntax })
18143 } else {
18144 None
18145 }
18146 }
18147 #[inline]
18148 fn syntax(&self) -> &SyntaxNode {
18149 &self.syntax
18150 }
18151}
18152impl AstNode for AtTimeZone {
18153 #[inline]
18154 fn can_cast(kind: SyntaxKind) -> bool {
18155 kind == SyntaxKind::AT_TIME_ZONE
18156 }
18157 #[inline]
18158 fn cast(syntax: SyntaxNode) -> Option<Self> {
18159 if Self::can_cast(syntax.kind()) {
18160 Some(Self { syntax })
18161 } else {
18162 None
18163 }
18164 }
18165 #[inline]
18166 fn syntax(&self) -> &SyntaxNode {
18167 &self.syntax
18168 }
18169}
18170impl AstNode for AttachPartition {
18171 #[inline]
18172 fn can_cast(kind: SyntaxKind) -> bool {
18173 kind == SyntaxKind::ATTACH_PARTITION
18174 }
18175 #[inline]
18176 fn cast(syntax: SyntaxNode) -> Option<Self> {
18177 if Self::can_cast(syntax.kind()) {
18178 Some(Self { syntax })
18179 } else {
18180 None
18181 }
18182 }
18183 #[inline]
18184 fn syntax(&self) -> &SyntaxNode {
18185 &self.syntax
18186 }
18187}
18188impl AstNode for AttributeList {
18189 #[inline]
18190 fn can_cast(kind: SyntaxKind) -> bool {
18191 kind == SyntaxKind::ATTRIBUTE_LIST
18192 }
18193 #[inline]
18194 fn cast(syntax: SyntaxNode) -> Option<Self> {
18195 if Self::can_cast(syntax.kind()) {
18196 Some(Self { syntax })
18197 } else {
18198 None
18199 }
18200 }
18201 #[inline]
18202 fn syntax(&self) -> &SyntaxNode {
18203 &self.syntax
18204 }
18205}
18206impl AstNode for AttributeOption {
18207 #[inline]
18208 fn can_cast(kind: SyntaxKind) -> bool {
18209 kind == SyntaxKind::ATTRIBUTE_OPTION
18210 }
18211 #[inline]
18212 fn cast(syntax: SyntaxNode) -> Option<Self> {
18213 if Self::can_cast(syntax.kind()) {
18214 Some(Self { syntax })
18215 } else {
18216 None
18217 }
18218 }
18219 #[inline]
18220 fn syntax(&self) -> &SyntaxNode {
18221 &self.syntax
18222 }
18223}
18224impl AstNode for AttributeValue {
18225 #[inline]
18226 fn can_cast(kind: SyntaxKind) -> bool {
18227 kind == SyntaxKind::ATTRIBUTE_VALUE
18228 }
18229 #[inline]
18230 fn cast(syntax: SyntaxNode) -> Option<Self> {
18231 if Self::can_cast(syntax.kind()) {
18232 Some(Self { syntax })
18233 } else {
18234 None
18235 }
18236 }
18237 #[inline]
18238 fn syntax(&self) -> &SyntaxNode {
18239 &self.syntax
18240 }
18241}
18242impl AstNode for Begin {
18243 #[inline]
18244 fn can_cast(kind: SyntaxKind) -> bool {
18245 kind == SyntaxKind::BEGIN
18246 }
18247 #[inline]
18248 fn cast(syntax: SyntaxNode) -> Option<Self> {
18249 if Self::can_cast(syntax.kind()) {
18250 Some(Self { syntax })
18251 } else {
18252 None
18253 }
18254 }
18255 #[inline]
18256 fn syntax(&self) -> &SyntaxNode {
18257 &self.syntax
18258 }
18259}
18260impl AstNode for BeginFuncOption {
18261 #[inline]
18262 fn can_cast(kind: SyntaxKind) -> bool {
18263 kind == SyntaxKind::BEGIN_FUNC_OPTION
18264 }
18265 #[inline]
18266 fn cast(syntax: SyntaxNode) -> Option<Self> {
18267 if Self::can_cast(syntax.kind()) {
18268 Some(Self { syntax })
18269 } else {
18270 None
18271 }
18272 }
18273 #[inline]
18274 fn syntax(&self) -> &SyntaxNode {
18275 &self.syntax
18276 }
18277}
18278impl AstNode for BeginFuncOptionList {
18279 #[inline]
18280 fn can_cast(kind: SyntaxKind) -> bool {
18281 kind == SyntaxKind::BEGIN_FUNC_OPTION_LIST
18282 }
18283 #[inline]
18284 fn cast(syntax: SyntaxNode) -> Option<Self> {
18285 if Self::can_cast(syntax.kind()) {
18286 Some(Self { syntax })
18287 } else {
18288 None
18289 }
18290 }
18291 #[inline]
18292 fn syntax(&self) -> &SyntaxNode {
18293 &self.syntax
18294 }
18295}
18296impl AstNode for BetweenExpr {
18297 #[inline]
18298 fn can_cast(kind: SyntaxKind) -> bool {
18299 kind == SyntaxKind::BETWEEN_EXPR
18300 }
18301 #[inline]
18302 fn cast(syntax: SyntaxNode) -> Option<Self> {
18303 if Self::can_cast(syntax.kind()) {
18304 Some(Self { syntax })
18305 } else {
18306 None
18307 }
18308 }
18309 #[inline]
18310 fn syntax(&self) -> &SyntaxNode {
18311 &self.syntax
18312 }
18313}
18314impl AstNode for BinExpr {
18315 #[inline]
18316 fn can_cast(kind: SyntaxKind) -> bool {
18317 kind == SyntaxKind::BIN_EXPR
18318 }
18319 #[inline]
18320 fn cast(syntax: SyntaxNode) -> Option<Self> {
18321 if Self::can_cast(syntax.kind()) {
18322 Some(Self { syntax })
18323 } else {
18324 None
18325 }
18326 }
18327 #[inline]
18328 fn syntax(&self) -> &SyntaxNode {
18329 &self.syntax
18330 }
18331}
18332impl AstNode for BitType {
18333 #[inline]
18334 fn can_cast(kind: SyntaxKind) -> bool {
18335 kind == SyntaxKind::BIT_TYPE
18336 }
18337 #[inline]
18338 fn cast(syntax: SyntaxNode) -> Option<Self> {
18339 if Self::can_cast(syntax.kind()) {
18340 Some(Self { syntax })
18341 } else {
18342 None
18343 }
18344 }
18345 #[inline]
18346 fn syntax(&self) -> &SyntaxNode {
18347 &self.syntax
18348 }
18349}
18350impl AstNode for Call {
18351 #[inline]
18352 fn can_cast(kind: SyntaxKind) -> bool {
18353 kind == SyntaxKind::CALL
18354 }
18355 #[inline]
18356 fn cast(syntax: SyntaxNode) -> Option<Self> {
18357 if Self::can_cast(syntax.kind()) {
18358 Some(Self { syntax })
18359 } else {
18360 None
18361 }
18362 }
18363 #[inline]
18364 fn syntax(&self) -> &SyntaxNode {
18365 &self.syntax
18366 }
18367}
18368impl AstNode for CallExpr {
18369 #[inline]
18370 fn can_cast(kind: SyntaxKind) -> bool {
18371 kind == SyntaxKind::CALL_EXPR
18372 }
18373 #[inline]
18374 fn cast(syntax: SyntaxNode) -> Option<Self> {
18375 if Self::can_cast(syntax.kind()) {
18376 Some(Self { syntax })
18377 } else {
18378 None
18379 }
18380 }
18381 #[inline]
18382 fn syntax(&self) -> &SyntaxNode {
18383 &self.syntax
18384 }
18385}
18386impl AstNode for Cascade {
18387 #[inline]
18388 fn can_cast(kind: SyntaxKind) -> bool {
18389 kind == SyntaxKind::CASCADE
18390 }
18391 #[inline]
18392 fn cast(syntax: SyntaxNode) -> Option<Self> {
18393 if Self::can_cast(syntax.kind()) {
18394 Some(Self { syntax })
18395 } else {
18396 None
18397 }
18398 }
18399 #[inline]
18400 fn syntax(&self) -> &SyntaxNode {
18401 &self.syntax
18402 }
18403}
18404impl AstNode for CaseExpr {
18405 #[inline]
18406 fn can_cast(kind: SyntaxKind) -> bool {
18407 kind == SyntaxKind::CASE_EXPR
18408 }
18409 #[inline]
18410 fn cast(syntax: SyntaxNode) -> Option<Self> {
18411 if Self::can_cast(syntax.kind()) {
18412 Some(Self { syntax })
18413 } else {
18414 None
18415 }
18416 }
18417 #[inline]
18418 fn syntax(&self) -> &SyntaxNode {
18419 &self.syntax
18420 }
18421}
18422impl AstNode for CastExpr {
18423 #[inline]
18424 fn can_cast(kind: SyntaxKind) -> bool {
18425 kind == SyntaxKind::CAST_EXPR
18426 }
18427 #[inline]
18428 fn cast(syntax: SyntaxNode) -> Option<Self> {
18429 if Self::can_cast(syntax.kind()) {
18430 Some(Self { syntax })
18431 } else {
18432 None
18433 }
18434 }
18435 #[inline]
18436 fn syntax(&self) -> &SyntaxNode {
18437 &self.syntax
18438 }
18439}
18440impl AstNode for CastSig {
18441 #[inline]
18442 fn can_cast(kind: SyntaxKind) -> bool {
18443 kind == SyntaxKind::CAST_SIG
18444 }
18445 #[inline]
18446 fn cast(syntax: SyntaxNode) -> Option<Self> {
18447 if Self::can_cast(syntax.kind()) {
18448 Some(Self { syntax })
18449 } else {
18450 None
18451 }
18452 }
18453 #[inline]
18454 fn syntax(&self) -> &SyntaxNode {
18455 &self.syntax
18456 }
18457}
18458impl AstNode for CharType {
18459 #[inline]
18460 fn can_cast(kind: SyntaxKind) -> bool {
18461 kind == SyntaxKind::CHAR_TYPE
18462 }
18463 #[inline]
18464 fn cast(syntax: SyntaxNode) -> Option<Self> {
18465 if Self::can_cast(syntax.kind()) {
18466 Some(Self { syntax })
18467 } else {
18468 None
18469 }
18470 }
18471 #[inline]
18472 fn syntax(&self) -> &SyntaxNode {
18473 &self.syntax
18474 }
18475}
18476impl AstNode for CheckConstraint {
18477 #[inline]
18478 fn can_cast(kind: SyntaxKind) -> bool {
18479 kind == SyntaxKind::CHECK_CONSTRAINT
18480 }
18481 #[inline]
18482 fn cast(syntax: SyntaxNode) -> Option<Self> {
18483 if Self::can_cast(syntax.kind()) {
18484 Some(Self { syntax })
18485 } else {
18486 None
18487 }
18488 }
18489 #[inline]
18490 fn syntax(&self) -> &SyntaxNode {
18491 &self.syntax
18492 }
18493}
18494impl AstNode for Checkpoint {
18495 #[inline]
18496 fn can_cast(kind: SyntaxKind) -> bool {
18497 kind == SyntaxKind::CHECKPOINT
18498 }
18499 #[inline]
18500 fn cast(syntax: SyntaxNode) -> Option<Self> {
18501 if Self::can_cast(syntax.kind()) {
18502 Some(Self { syntax })
18503 } else {
18504 None
18505 }
18506 }
18507 #[inline]
18508 fn syntax(&self) -> &SyntaxNode {
18509 &self.syntax
18510 }
18511}
18512impl AstNode for Close {
18513 #[inline]
18514 fn can_cast(kind: SyntaxKind) -> bool {
18515 kind == SyntaxKind::CLOSE
18516 }
18517 #[inline]
18518 fn cast(syntax: SyntaxNode) -> Option<Self> {
18519 if Self::can_cast(syntax.kind()) {
18520 Some(Self { syntax })
18521 } else {
18522 None
18523 }
18524 }
18525 #[inline]
18526 fn syntax(&self) -> &SyntaxNode {
18527 &self.syntax
18528 }
18529}
18530impl AstNode for Cluster {
18531 #[inline]
18532 fn can_cast(kind: SyntaxKind) -> bool {
18533 kind == SyntaxKind::CLUSTER
18534 }
18535 #[inline]
18536 fn cast(syntax: SyntaxNode) -> Option<Self> {
18537 if Self::can_cast(syntax.kind()) {
18538 Some(Self { syntax })
18539 } else {
18540 None
18541 }
18542 }
18543 #[inline]
18544 fn syntax(&self) -> &SyntaxNode {
18545 &self.syntax
18546 }
18547}
18548impl AstNode for ClusterOn {
18549 #[inline]
18550 fn can_cast(kind: SyntaxKind) -> bool {
18551 kind == SyntaxKind::CLUSTER_ON
18552 }
18553 #[inline]
18554 fn cast(syntax: SyntaxNode) -> Option<Self> {
18555 if Self::can_cast(syntax.kind()) {
18556 Some(Self { syntax })
18557 } else {
18558 None
18559 }
18560 }
18561 #[inline]
18562 fn syntax(&self) -> &SyntaxNode {
18563 &self.syntax
18564 }
18565}
18566impl AstNode for Collate {
18567 #[inline]
18568 fn can_cast(kind: SyntaxKind) -> bool {
18569 kind == SyntaxKind::COLLATE
18570 }
18571 #[inline]
18572 fn cast(syntax: SyntaxNode) -> Option<Self> {
18573 if Self::can_cast(syntax.kind()) {
18574 Some(Self { syntax })
18575 } else {
18576 None
18577 }
18578 }
18579 #[inline]
18580 fn syntax(&self) -> &SyntaxNode {
18581 &self.syntax
18582 }
18583}
18584impl AstNode for ColonColon {
18585 #[inline]
18586 fn can_cast(kind: SyntaxKind) -> bool {
18587 kind == SyntaxKind::COLON_COLON
18588 }
18589 #[inline]
18590 fn cast(syntax: SyntaxNode) -> Option<Self> {
18591 if Self::can_cast(syntax.kind()) {
18592 Some(Self { syntax })
18593 } else {
18594 None
18595 }
18596 }
18597 #[inline]
18598 fn syntax(&self) -> &SyntaxNode {
18599 &self.syntax
18600 }
18601}
18602impl AstNode for ColonEq {
18603 #[inline]
18604 fn can_cast(kind: SyntaxKind) -> bool {
18605 kind == SyntaxKind::COLON_EQ
18606 }
18607 #[inline]
18608 fn cast(syntax: SyntaxNode) -> Option<Self> {
18609 if Self::can_cast(syntax.kind()) {
18610 Some(Self { syntax })
18611 } else {
18612 None
18613 }
18614 }
18615 #[inline]
18616 fn syntax(&self) -> &SyntaxNode {
18617 &self.syntax
18618 }
18619}
18620impl AstNode for Column {
18621 #[inline]
18622 fn can_cast(kind: SyntaxKind) -> bool {
18623 kind == SyntaxKind::COLUMN
18624 }
18625 #[inline]
18626 fn cast(syntax: SyntaxNode) -> Option<Self> {
18627 if Self::can_cast(syntax.kind()) {
18628 Some(Self { syntax })
18629 } else {
18630 None
18631 }
18632 }
18633 #[inline]
18634 fn syntax(&self) -> &SyntaxNode {
18635 &self.syntax
18636 }
18637}
18638impl AstNode for ColumnList {
18639 #[inline]
18640 fn can_cast(kind: SyntaxKind) -> bool {
18641 kind == SyntaxKind::COLUMN_LIST
18642 }
18643 #[inline]
18644 fn cast(syntax: SyntaxNode) -> Option<Self> {
18645 if Self::can_cast(syntax.kind()) {
18646 Some(Self { syntax })
18647 } else {
18648 None
18649 }
18650 }
18651 #[inline]
18652 fn syntax(&self) -> &SyntaxNode {
18653 &self.syntax
18654 }
18655}
18656impl AstNode for CommentOn {
18657 #[inline]
18658 fn can_cast(kind: SyntaxKind) -> bool {
18659 kind == SyntaxKind::COMMENT_ON
18660 }
18661 #[inline]
18662 fn cast(syntax: SyntaxNode) -> Option<Self> {
18663 if Self::can_cast(syntax.kind()) {
18664 Some(Self { syntax })
18665 } else {
18666 None
18667 }
18668 }
18669 #[inline]
18670 fn syntax(&self) -> &SyntaxNode {
18671 &self.syntax
18672 }
18673}
18674impl AstNode for Commit {
18675 #[inline]
18676 fn can_cast(kind: SyntaxKind) -> bool {
18677 kind == SyntaxKind::COMMIT
18678 }
18679 #[inline]
18680 fn cast(syntax: SyntaxNode) -> Option<Self> {
18681 if Self::can_cast(syntax.kind()) {
18682 Some(Self { syntax })
18683 } else {
18684 None
18685 }
18686 }
18687 #[inline]
18688 fn syntax(&self) -> &SyntaxNode {
18689 &self.syntax
18690 }
18691}
18692impl AstNode for CompoundSelect {
18693 #[inline]
18694 fn can_cast(kind: SyntaxKind) -> bool {
18695 kind == SyntaxKind::COMPOUND_SELECT
18696 }
18697 #[inline]
18698 fn cast(syntax: SyntaxNode) -> Option<Self> {
18699 if Self::can_cast(syntax.kind()) {
18700 Some(Self { syntax })
18701 } else {
18702 None
18703 }
18704 }
18705 #[inline]
18706 fn syntax(&self) -> &SyntaxNode {
18707 &self.syntax
18708 }
18709}
18710impl AstNode for CompressionMethod {
18711 #[inline]
18712 fn can_cast(kind: SyntaxKind) -> bool {
18713 kind == SyntaxKind::COMPRESSION_METHOD
18714 }
18715 #[inline]
18716 fn cast(syntax: SyntaxNode) -> Option<Self> {
18717 if Self::can_cast(syntax.kind()) {
18718 Some(Self { syntax })
18719 } else {
18720 None
18721 }
18722 }
18723 #[inline]
18724 fn syntax(&self) -> &SyntaxNode {
18725 &self.syntax
18726 }
18727}
18728impl AstNode for ConflictDoNothing {
18729 #[inline]
18730 fn can_cast(kind: SyntaxKind) -> bool {
18731 kind == SyntaxKind::CONFLICT_DO_NOTHING
18732 }
18733 #[inline]
18734 fn cast(syntax: SyntaxNode) -> Option<Self> {
18735 if Self::can_cast(syntax.kind()) {
18736 Some(Self { syntax })
18737 } else {
18738 None
18739 }
18740 }
18741 #[inline]
18742 fn syntax(&self) -> &SyntaxNode {
18743 &self.syntax
18744 }
18745}
18746impl AstNode for ConflictDoUpdateSet {
18747 #[inline]
18748 fn can_cast(kind: SyntaxKind) -> bool {
18749 kind == SyntaxKind::CONFLICT_DO_UPDATE_SET
18750 }
18751 #[inline]
18752 fn cast(syntax: SyntaxNode) -> Option<Self> {
18753 if Self::can_cast(syntax.kind()) {
18754 Some(Self { syntax })
18755 } else {
18756 None
18757 }
18758 }
18759 #[inline]
18760 fn syntax(&self) -> &SyntaxNode {
18761 &self.syntax
18762 }
18763}
18764impl AstNode for ConflictIndexItem {
18765 #[inline]
18766 fn can_cast(kind: SyntaxKind) -> bool {
18767 kind == SyntaxKind::CONFLICT_INDEX_ITEM
18768 }
18769 #[inline]
18770 fn cast(syntax: SyntaxNode) -> Option<Self> {
18771 if Self::can_cast(syntax.kind()) {
18772 Some(Self { syntax })
18773 } else {
18774 None
18775 }
18776 }
18777 #[inline]
18778 fn syntax(&self) -> &SyntaxNode {
18779 &self.syntax
18780 }
18781}
18782impl AstNode for ConflictIndexItemList {
18783 #[inline]
18784 fn can_cast(kind: SyntaxKind) -> bool {
18785 kind == SyntaxKind::CONFLICT_INDEX_ITEM_LIST
18786 }
18787 #[inline]
18788 fn cast(syntax: SyntaxNode) -> Option<Self> {
18789 if Self::can_cast(syntax.kind()) {
18790 Some(Self { syntax })
18791 } else {
18792 None
18793 }
18794 }
18795 #[inline]
18796 fn syntax(&self) -> &SyntaxNode {
18797 &self.syntax
18798 }
18799}
18800impl AstNode for ConflictOnConstraint {
18801 #[inline]
18802 fn can_cast(kind: SyntaxKind) -> bool {
18803 kind == SyntaxKind::CONFLICT_ON_CONSTRAINT
18804 }
18805 #[inline]
18806 fn cast(syntax: SyntaxNode) -> Option<Self> {
18807 if Self::can_cast(syntax.kind()) {
18808 Some(Self { syntax })
18809 } else {
18810 None
18811 }
18812 }
18813 #[inline]
18814 fn syntax(&self) -> &SyntaxNode {
18815 &self.syntax
18816 }
18817}
18818impl AstNode for ConflictOnIndex {
18819 #[inline]
18820 fn can_cast(kind: SyntaxKind) -> bool {
18821 kind == SyntaxKind::CONFLICT_ON_INDEX
18822 }
18823 #[inline]
18824 fn cast(syntax: SyntaxNode) -> Option<Self> {
18825 if Self::can_cast(syntax.kind()) {
18826 Some(Self { syntax })
18827 } else {
18828 None
18829 }
18830 }
18831 #[inline]
18832 fn syntax(&self) -> &SyntaxNode {
18833 &self.syntax
18834 }
18835}
18836impl AstNode for ConstraintExclusion {
18837 #[inline]
18838 fn can_cast(kind: SyntaxKind) -> bool {
18839 kind == SyntaxKind::CONSTRAINT_EXCLUSION
18840 }
18841 #[inline]
18842 fn cast(syntax: SyntaxNode) -> Option<Self> {
18843 if Self::can_cast(syntax.kind()) {
18844 Some(Self { syntax })
18845 } else {
18846 None
18847 }
18848 }
18849 #[inline]
18850 fn syntax(&self) -> &SyntaxNode {
18851 &self.syntax
18852 }
18853}
18854impl AstNode for ConstraintExclusionList {
18855 #[inline]
18856 fn can_cast(kind: SyntaxKind) -> bool {
18857 kind == SyntaxKind::CONSTRAINT_EXCLUSION_LIST
18858 }
18859 #[inline]
18860 fn cast(syntax: SyntaxNode) -> Option<Self> {
18861 if Self::can_cast(syntax.kind()) {
18862 Some(Self { syntax })
18863 } else {
18864 None
18865 }
18866 }
18867 #[inline]
18868 fn syntax(&self) -> &SyntaxNode {
18869 &self.syntax
18870 }
18871}
18872impl AstNode for ConstraintIncludeClause {
18873 #[inline]
18874 fn can_cast(kind: SyntaxKind) -> bool {
18875 kind == SyntaxKind::CONSTRAINT_INCLUDE_CLAUSE
18876 }
18877 #[inline]
18878 fn cast(syntax: SyntaxNode) -> Option<Self> {
18879 if Self::can_cast(syntax.kind()) {
18880 Some(Self { syntax })
18881 } else {
18882 None
18883 }
18884 }
18885 #[inline]
18886 fn syntax(&self) -> &SyntaxNode {
18887 &self.syntax
18888 }
18889}
18890impl AstNode for ConstraintIndexMethod {
18891 #[inline]
18892 fn can_cast(kind: SyntaxKind) -> bool {
18893 kind == SyntaxKind::CONSTRAINT_INDEX_METHOD
18894 }
18895 #[inline]
18896 fn cast(syntax: SyntaxNode) -> Option<Self> {
18897 if Self::can_cast(syntax.kind()) {
18898 Some(Self { syntax })
18899 } else {
18900 None
18901 }
18902 }
18903 #[inline]
18904 fn syntax(&self) -> &SyntaxNode {
18905 &self.syntax
18906 }
18907}
18908impl AstNode for ConstraintIndexTablespace {
18909 #[inline]
18910 fn can_cast(kind: SyntaxKind) -> bool {
18911 kind == SyntaxKind::CONSTRAINT_INDEX_TABLESPACE
18912 }
18913 #[inline]
18914 fn cast(syntax: SyntaxNode) -> Option<Self> {
18915 if Self::can_cast(syntax.kind()) {
18916 Some(Self { syntax })
18917 } else {
18918 None
18919 }
18920 }
18921 #[inline]
18922 fn syntax(&self) -> &SyntaxNode {
18923 &self.syntax
18924 }
18925}
18926impl AstNode for Copy {
18927 #[inline]
18928 fn can_cast(kind: SyntaxKind) -> bool {
18929 kind == SyntaxKind::COPY
18930 }
18931 #[inline]
18932 fn cast(syntax: SyntaxNode) -> Option<Self> {
18933 if Self::can_cast(syntax.kind()) {
18934 Some(Self { syntax })
18935 } else {
18936 None
18937 }
18938 }
18939 #[inline]
18940 fn syntax(&self) -> &SyntaxNode {
18941 &self.syntax
18942 }
18943}
18944impl AstNode for CopyOption {
18945 #[inline]
18946 fn can_cast(kind: SyntaxKind) -> bool {
18947 kind == SyntaxKind::COPY_OPTION
18948 }
18949 #[inline]
18950 fn cast(syntax: SyntaxNode) -> Option<Self> {
18951 if Self::can_cast(syntax.kind()) {
18952 Some(Self { syntax })
18953 } else {
18954 None
18955 }
18956 }
18957 #[inline]
18958 fn syntax(&self) -> &SyntaxNode {
18959 &self.syntax
18960 }
18961}
18962impl AstNode for CopyOptionList {
18963 #[inline]
18964 fn can_cast(kind: SyntaxKind) -> bool {
18965 kind == SyntaxKind::COPY_OPTION_LIST
18966 }
18967 #[inline]
18968 fn cast(syntax: SyntaxNode) -> Option<Self> {
18969 if Self::can_cast(syntax.kind()) {
18970 Some(Self { syntax })
18971 } else {
18972 None
18973 }
18974 }
18975 #[inline]
18976 fn syntax(&self) -> &SyntaxNode {
18977 &self.syntax
18978 }
18979}
18980impl AstNode for CostFuncOption {
18981 #[inline]
18982 fn can_cast(kind: SyntaxKind) -> bool {
18983 kind == SyntaxKind::COST_FUNC_OPTION
18984 }
18985 #[inline]
18986 fn cast(syntax: SyntaxNode) -> Option<Self> {
18987 if Self::can_cast(syntax.kind()) {
18988 Some(Self { syntax })
18989 } else {
18990 None
18991 }
18992 }
18993 #[inline]
18994 fn syntax(&self) -> &SyntaxNode {
18995 &self.syntax
18996 }
18997}
18998impl AstNode for CreateAccessMethod {
18999 #[inline]
19000 fn can_cast(kind: SyntaxKind) -> bool {
19001 kind == SyntaxKind::CREATE_ACCESS_METHOD
19002 }
19003 #[inline]
19004 fn cast(syntax: SyntaxNode) -> Option<Self> {
19005 if Self::can_cast(syntax.kind()) {
19006 Some(Self { syntax })
19007 } else {
19008 None
19009 }
19010 }
19011 #[inline]
19012 fn syntax(&self) -> &SyntaxNode {
19013 &self.syntax
19014 }
19015}
19016impl AstNode for CreateAggregate {
19017 #[inline]
19018 fn can_cast(kind: SyntaxKind) -> bool {
19019 kind == SyntaxKind::CREATE_AGGREGATE
19020 }
19021 #[inline]
19022 fn cast(syntax: SyntaxNode) -> Option<Self> {
19023 if Self::can_cast(syntax.kind()) {
19024 Some(Self { syntax })
19025 } else {
19026 None
19027 }
19028 }
19029 #[inline]
19030 fn syntax(&self) -> &SyntaxNode {
19031 &self.syntax
19032 }
19033}
19034impl AstNode for CreateCast {
19035 #[inline]
19036 fn can_cast(kind: SyntaxKind) -> bool {
19037 kind == SyntaxKind::CREATE_CAST
19038 }
19039 #[inline]
19040 fn cast(syntax: SyntaxNode) -> Option<Self> {
19041 if Self::can_cast(syntax.kind()) {
19042 Some(Self { syntax })
19043 } else {
19044 None
19045 }
19046 }
19047 #[inline]
19048 fn syntax(&self) -> &SyntaxNode {
19049 &self.syntax
19050 }
19051}
19052impl AstNode for CreateCollation {
19053 #[inline]
19054 fn can_cast(kind: SyntaxKind) -> bool {
19055 kind == SyntaxKind::CREATE_COLLATION
19056 }
19057 #[inline]
19058 fn cast(syntax: SyntaxNode) -> Option<Self> {
19059 if Self::can_cast(syntax.kind()) {
19060 Some(Self { syntax })
19061 } else {
19062 None
19063 }
19064 }
19065 #[inline]
19066 fn syntax(&self) -> &SyntaxNode {
19067 &self.syntax
19068 }
19069}
19070impl AstNode for CreateConversion {
19071 #[inline]
19072 fn can_cast(kind: SyntaxKind) -> bool {
19073 kind == SyntaxKind::CREATE_CONVERSION
19074 }
19075 #[inline]
19076 fn cast(syntax: SyntaxNode) -> Option<Self> {
19077 if Self::can_cast(syntax.kind()) {
19078 Some(Self { syntax })
19079 } else {
19080 None
19081 }
19082 }
19083 #[inline]
19084 fn syntax(&self) -> &SyntaxNode {
19085 &self.syntax
19086 }
19087}
19088impl AstNode for CreateDatabase {
19089 #[inline]
19090 fn can_cast(kind: SyntaxKind) -> bool {
19091 kind == SyntaxKind::CREATE_DATABASE
19092 }
19093 #[inline]
19094 fn cast(syntax: SyntaxNode) -> Option<Self> {
19095 if Self::can_cast(syntax.kind()) {
19096 Some(Self { syntax })
19097 } else {
19098 None
19099 }
19100 }
19101 #[inline]
19102 fn syntax(&self) -> &SyntaxNode {
19103 &self.syntax
19104 }
19105}
19106impl AstNode for CreateDatabaseOption {
19107 #[inline]
19108 fn can_cast(kind: SyntaxKind) -> bool {
19109 kind == SyntaxKind::CREATE_DATABASE_OPTION
19110 }
19111 #[inline]
19112 fn cast(syntax: SyntaxNode) -> Option<Self> {
19113 if Self::can_cast(syntax.kind()) {
19114 Some(Self { syntax })
19115 } else {
19116 None
19117 }
19118 }
19119 #[inline]
19120 fn syntax(&self) -> &SyntaxNode {
19121 &self.syntax
19122 }
19123}
19124impl AstNode for CreateDatabaseOptionList {
19125 #[inline]
19126 fn can_cast(kind: SyntaxKind) -> bool {
19127 kind == SyntaxKind::CREATE_DATABASE_OPTION_LIST
19128 }
19129 #[inline]
19130 fn cast(syntax: SyntaxNode) -> Option<Self> {
19131 if Self::can_cast(syntax.kind()) {
19132 Some(Self { syntax })
19133 } else {
19134 None
19135 }
19136 }
19137 #[inline]
19138 fn syntax(&self) -> &SyntaxNode {
19139 &self.syntax
19140 }
19141}
19142impl AstNode for CreateDomain {
19143 #[inline]
19144 fn can_cast(kind: SyntaxKind) -> bool {
19145 kind == SyntaxKind::CREATE_DOMAIN
19146 }
19147 #[inline]
19148 fn cast(syntax: SyntaxNode) -> Option<Self> {
19149 if Self::can_cast(syntax.kind()) {
19150 Some(Self { syntax })
19151 } else {
19152 None
19153 }
19154 }
19155 #[inline]
19156 fn syntax(&self) -> &SyntaxNode {
19157 &self.syntax
19158 }
19159}
19160impl AstNode for CreateEventTrigger {
19161 #[inline]
19162 fn can_cast(kind: SyntaxKind) -> bool {
19163 kind == SyntaxKind::CREATE_EVENT_TRIGGER
19164 }
19165 #[inline]
19166 fn cast(syntax: SyntaxNode) -> Option<Self> {
19167 if Self::can_cast(syntax.kind()) {
19168 Some(Self { syntax })
19169 } else {
19170 None
19171 }
19172 }
19173 #[inline]
19174 fn syntax(&self) -> &SyntaxNode {
19175 &self.syntax
19176 }
19177}
19178impl AstNode for CreateExtension {
19179 #[inline]
19180 fn can_cast(kind: SyntaxKind) -> bool {
19181 kind == SyntaxKind::CREATE_EXTENSION
19182 }
19183 #[inline]
19184 fn cast(syntax: SyntaxNode) -> Option<Self> {
19185 if Self::can_cast(syntax.kind()) {
19186 Some(Self { syntax })
19187 } else {
19188 None
19189 }
19190 }
19191 #[inline]
19192 fn syntax(&self) -> &SyntaxNode {
19193 &self.syntax
19194 }
19195}
19196impl AstNode for CreateForeignDataWrapper {
19197 #[inline]
19198 fn can_cast(kind: SyntaxKind) -> bool {
19199 kind == SyntaxKind::CREATE_FOREIGN_DATA_WRAPPER
19200 }
19201 #[inline]
19202 fn cast(syntax: SyntaxNode) -> Option<Self> {
19203 if Self::can_cast(syntax.kind()) {
19204 Some(Self { syntax })
19205 } else {
19206 None
19207 }
19208 }
19209 #[inline]
19210 fn syntax(&self) -> &SyntaxNode {
19211 &self.syntax
19212 }
19213}
19214impl AstNode for CreateForeignTable {
19215 #[inline]
19216 fn can_cast(kind: SyntaxKind) -> bool {
19217 kind == SyntaxKind::CREATE_FOREIGN_TABLE
19218 }
19219 #[inline]
19220 fn cast(syntax: SyntaxNode) -> Option<Self> {
19221 if Self::can_cast(syntax.kind()) {
19222 Some(Self { syntax })
19223 } else {
19224 None
19225 }
19226 }
19227 #[inline]
19228 fn syntax(&self) -> &SyntaxNode {
19229 &self.syntax
19230 }
19231}
19232impl AstNode for CreateFunction {
19233 #[inline]
19234 fn can_cast(kind: SyntaxKind) -> bool {
19235 kind == SyntaxKind::CREATE_FUNCTION
19236 }
19237 #[inline]
19238 fn cast(syntax: SyntaxNode) -> Option<Self> {
19239 if Self::can_cast(syntax.kind()) {
19240 Some(Self { syntax })
19241 } else {
19242 None
19243 }
19244 }
19245 #[inline]
19246 fn syntax(&self) -> &SyntaxNode {
19247 &self.syntax
19248 }
19249}
19250impl AstNode for CreateGroup {
19251 #[inline]
19252 fn can_cast(kind: SyntaxKind) -> bool {
19253 kind == SyntaxKind::CREATE_GROUP
19254 }
19255 #[inline]
19256 fn cast(syntax: SyntaxNode) -> Option<Self> {
19257 if Self::can_cast(syntax.kind()) {
19258 Some(Self { syntax })
19259 } else {
19260 None
19261 }
19262 }
19263 #[inline]
19264 fn syntax(&self) -> &SyntaxNode {
19265 &self.syntax
19266 }
19267}
19268impl AstNode for CreateIndex {
19269 #[inline]
19270 fn can_cast(kind: SyntaxKind) -> bool {
19271 kind == SyntaxKind::CREATE_INDEX
19272 }
19273 #[inline]
19274 fn cast(syntax: SyntaxNode) -> Option<Self> {
19275 if Self::can_cast(syntax.kind()) {
19276 Some(Self { syntax })
19277 } else {
19278 None
19279 }
19280 }
19281 #[inline]
19282 fn syntax(&self) -> &SyntaxNode {
19283 &self.syntax
19284 }
19285}
19286impl AstNode for CreateLanguage {
19287 #[inline]
19288 fn can_cast(kind: SyntaxKind) -> bool {
19289 kind == SyntaxKind::CREATE_LANGUAGE
19290 }
19291 #[inline]
19292 fn cast(syntax: SyntaxNode) -> Option<Self> {
19293 if Self::can_cast(syntax.kind()) {
19294 Some(Self { syntax })
19295 } else {
19296 None
19297 }
19298 }
19299 #[inline]
19300 fn syntax(&self) -> &SyntaxNode {
19301 &self.syntax
19302 }
19303}
19304impl AstNode for CreateMaterializedView {
19305 #[inline]
19306 fn can_cast(kind: SyntaxKind) -> bool {
19307 kind == SyntaxKind::CREATE_MATERIALIZED_VIEW
19308 }
19309 #[inline]
19310 fn cast(syntax: SyntaxNode) -> Option<Self> {
19311 if Self::can_cast(syntax.kind()) {
19312 Some(Self { syntax })
19313 } else {
19314 None
19315 }
19316 }
19317 #[inline]
19318 fn syntax(&self) -> &SyntaxNode {
19319 &self.syntax
19320 }
19321}
19322impl AstNode for CreateOperator {
19323 #[inline]
19324 fn can_cast(kind: SyntaxKind) -> bool {
19325 kind == SyntaxKind::CREATE_OPERATOR
19326 }
19327 #[inline]
19328 fn cast(syntax: SyntaxNode) -> Option<Self> {
19329 if Self::can_cast(syntax.kind()) {
19330 Some(Self { syntax })
19331 } else {
19332 None
19333 }
19334 }
19335 #[inline]
19336 fn syntax(&self) -> &SyntaxNode {
19337 &self.syntax
19338 }
19339}
19340impl AstNode for CreateOperatorClass {
19341 #[inline]
19342 fn can_cast(kind: SyntaxKind) -> bool {
19343 kind == SyntaxKind::CREATE_OPERATOR_CLASS
19344 }
19345 #[inline]
19346 fn cast(syntax: SyntaxNode) -> Option<Self> {
19347 if Self::can_cast(syntax.kind()) {
19348 Some(Self { syntax })
19349 } else {
19350 None
19351 }
19352 }
19353 #[inline]
19354 fn syntax(&self) -> &SyntaxNode {
19355 &self.syntax
19356 }
19357}
19358impl AstNode for CreateOperatorFamily {
19359 #[inline]
19360 fn can_cast(kind: SyntaxKind) -> bool {
19361 kind == SyntaxKind::CREATE_OPERATOR_FAMILY
19362 }
19363 #[inline]
19364 fn cast(syntax: SyntaxNode) -> Option<Self> {
19365 if Self::can_cast(syntax.kind()) {
19366 Some(Self { syntax })
19367 } else {
19368 None
19369 }
19370 }
19371 #[inline]
19372 fn syntax(&self) -> &SyntaxNode {
19373 &self.syntax
19374 }
19375}
19376impl AstNode for CreatePolicy {
19377 #[inline]
19378 fn can_cast(kind: SyntaxKind) -> bool {
19379 kind == SyntaxKind::CREATE_POLICY
19380 }
19381 #[inline]
19382 fn cast(syntax: SyntaxNode) -> Option<Self> {
19383 if Self::can_cast(syntax.kind()) {
19384 Some(Self { syntax })
19385 } else {
19386 None
19387 }
19388 }
19389 #[inline]
19390 fn syntax(&self) -> &SyntaxNode {
19391 &self.syntax
19392 }
19393}
19394impl AstNode for CreateProcedure {
19395 #[inline]
19396 fn can_cast(kind: SyntaxKind) -> bool {
19397 kind == SyntaxKind::CREATE_PROCEDURE
19398 }
19399 #[inline]
19400 fn cast(syntax: SyntaxNode) -> Option<Self> {
19401 if Self::can_cast(syntax.kind()) {
19402 Some(Self { syntax })
19403 } else {
19404 None
19405 }
19406 }
19407 #[inline]
19408 fn syntax(&self) -> &SyntaxNode {
19409 &self.syntax
19410 }
19411}
19412impl AstNode for CreatePublication {
19413 #[inline]
19414 fn can_cast(kind: SyntaxKind) -> bool {
19415 kind == SyntaxKind::CREATE_PUBLICATION
19416 }
19417 #[inline]
19418 fn cast(syntax: SyntaxNode) -> Option<Self> {
19419 if Self::can_cast(syntax.kind()) {
19420 Some(Self { syntax })
19421 } else {
19422 None
19423 }
19424 }
19425 #[inline]
19426 fn syntax(&self) -> &SyntaxNode {
19427 &self.syntax
19428 }
19429}
19430impl AstNode for CreateRole {
19431 #[inline]
19432 fn can_cast(kind: SyntaxKind) -> bool {
19433 kind == SyntaxKind::CREATE_ROLE
19434 }
19435 #[inline]
19436 fn cast(syntax: SyntaxNode) -> Option<Self> {
19437 if Self::can_cast(syntax.kind()) {
19438 Some(Self { syntax })
19439 } else {
19440 None
19441 }
19442 }
19443 #[inline]
19444 fn syntax(&self) -> &SyntaxNode {
19445 &self.syntax
19446 }
19447}
19448impl AstNode for CreateRule {
19449 #[inline]
19450 fn can_cast(kind: SyntaxKind) -> bool {
19451 kind == SyntaxKind::CREATE_RULE
19452 }
19453 #[inline]
19454 fn cast(syntax: SyntaxNode) -> Option<Self> {
19455 if Self::can_cast(syntax.kind()) {
19456 Some(Self { syntax })
19457 } else {
19458 None
19459 }
19460 }
19461 #[inline]
19462 fn syntax(&self) -> &SyntaxNode {
19463 &self.syntax
19464 }
19465}
19466impl AstNode for CreateSchema {
19467 #[inline]
19468 fn can_cast(kind: SyntaxKind) -> bool {
19469 kind == SyntaxKind::CREATE_SCHEMA
19470 }
19471 #[inline]
19472 fn cast(syntax: SyntaxNode) -> Option<Self> {
19473 if Self::can_cast(syntax.kind()) {
19474 Some(Self { syntax })
19475 } else {
19476 None
19477 }
19478 }
19479 #[inline]
19480 fn syntax(&self) -> &SyntaxNode {
19481 &self.syntax
19482 }
19483}
19484impl AstNode for CreateSequence {
19485 #[inline]
19486 fn can_cast(kind: SyntaxKind) -> bool {
19487 kind == SyntaxKind::CREATE_SEQUENCE
19488 }
19489 #[inline]
19490 fn cast(syntax: SyntaxNode) -> Option<Self> {
19491 if Self::can_cast(syntax.kind()) {
19492 Some(Self { syntax })
19493 } else {
19494 None
19495 }
19496 }
19497 #[inline]
19498 fn syntax(&self) -> &SyntaxNode {
19499 &self.syntax
19500 }
19501}
19502impl AstNode for CreateServer {
19503 #[inline]
19504 fn can_cast(kind: SyntaxKind) -> bool {
19505 kind == SyntaxKind::CREATE_SERVER
19506 }
19507 #[inline]
19508 fn cast(syntax: SyntaxNode) -> Option<Self> {
19509 if Self::can_cast(syntax.kind()) {
19510 Some(Self { syntax })
19511 } else {
19512 None
19513 }
19514 }
19515 #[inline]
19516 fn syntax(&self) -> &SyntaxNode {
19517 &self.syntax
19518 }
19519}
19520impl AstNode for CreateStatistics {
19521 #[inline]
19522 fn can_cast(kind: SyntaxKind) -> bool {
19523 kind == SyntaxKind::CREATE_STATISTICS
19524 }
19525 #[inline]
19526 fn cast(syntax: SyntaxNode) -> Option<Self> {
19527 if Self::can_cast(syntax.kind()) {
19528 Some(Self { syntax })
19529 } else {
19530 None
19531 }
19532 }
19533 #[inline]
19534 fn syntax(&self) -> &SyntaxNode {
19535 &self.syntax
19536 }
19537}
19538impl AstNode for CreateSubscription {
19539 #[inline]
19540 fn can_cast(kind: SyntaxKind) -> bool {
19541 kind == SyntaxKind::CREATE_SUBSCRIPTION
19542 }
19543 #[inline]
19544 fn cast(syntax: SyntaxNode) -> Option<Self> {
19545 if Self::can_cast(syntax.kind()) {
19546 Some(Self { syntax })
19547 } else {
19548 None
19549 }
19550 }
19551 #[inline]
19552 fn syntax(&self) -> &SyntaxNode {
19553 &self.syntax
19554 }
19555}
19556impl AstNode for CreateTable {
19557 #[inline]
19558 fn can_cast(kind: SyntaxKind) -> bool {
19559 kind == SyntaxKind::CREATE_TABLE
19560 }
19561 #[inline]
19562 fn cast(syntax: SyntaxNode) -> Option<Self> {
19563 if Self::can_cast(syntax.kind()) {
19564 Some(Self { syntax })
19565 } else {
19566 None
19567 }
19568 }
19569 #[inline]
19570 fn syntax(&self) -> &SyntaxNode {
19571 &self.syntax
19572 }
19573}
19574impl AstNode for CreateTableAs {
19575 #[inline]
19576 fn can_cast(kind: SyntaxKind) -> bool {
19577 kind == SyntaxKind::CREATE_TABLE_AS
19578 }
19579 #[inline]
19580 fn cast(syntax: SyntaxNode) -> Option<Self> {
19581 if Self::can_cast(syntax.kind()) {
19582 Some(Self { syntax })
19583 } else {
19584 None
19585 }
19586 }
19587 #[inline]
19588 fn syntax(&self) -> &SyntaxNode {
19589 &self.syntax
19590 }
19591}
19592impl AstNode for CreateTablespace {
19593 #[inline]
19594 fn can_cast(kind: SyntaxKind) -> bool {
19595 kind == SyntaxKind::CREATE_TABLESPACE
19596 }
19597 #[inline]
19598 fn cast(syntax: SyntaxNode) -> Option<Self> {
19599 if Self::can_cast(syntax.kind()) {
19600 Some(Self { syntax })
19601 } else {
19602 None
19603 }
19604 }
19605 #[inline]
19606 fn syntax(&self) -> &SyntaxNode {
19607 &self.syntax
19608 }
19609}
19610impl AstNode for CreateTextSearchConfiguration {
19611 #[inline]
19612 fn can_cast(kind: SyntaxKind) -> bool {
19613 kind == SyntaxKind::CREATE_TEXT_SEARCH_CONFIGURATION
19614 }
19615 #[inline]
19616 fn cast(syntax: SyntaxNode) -> Option<Self> {
19617 if Self::can_cast(syntax.kind()) {
19618 Some(Self { syntax })
19619 } else {
19620 None
19621 }
19622 }
19623 #[inline]
19624 fn syntax(&self) -> &SyntaxNode {
19625 &self.syntax
19626 }
19627}
19628impl AstNode for CreateTextSearchDictionary {
19629 #[inline]
19630 fn can_cast(kind: SyntaxKind) -> bool {
19631 kind == SyntaxKind::CREATE_TEXT_SEARCH_DICTIONARY
19632 }
19633 #[inline]
19634 fn cast(syntax: SyntaxNode) -> Option<Self> {
19635 if Self::can_cast(syntax.kind()) {
19636 Some(Self { syntax })
19637 } else {
19638 None
19639 }
19640 }
19641 #[inline]
19642 fn syntax(&self) -> &SyntaxNode {
19643 &self.syntax
19644 }
19645}
19646impl AstNode for CreateTextSearchParser {
19647 #[inline]
19648 fn can_cast(kind: SyntaxKind) -> bool {
19649 kind == SyntaxKind::CREATE_TEXT_SEARCH_PARSER
19650 }
19651 #[inline]
19652 fn cast(syntax: SyntaxNode) -> Option<Self> {
19653 if Self::can_cast(syntax.kind()) {
19654 Some(Self { syntax })
19655 } else {
19656 None
19657 }
19658 }
19659 #[inline]
19660 fn syntax(&self) -> &SyntaxNode {
19661 &self.syntax
19662 }
19663}
19664impl AstNode for CreateTextSearchTemplate {
19665 #[inline]
19666 fn can_cast(kind: SyntaxKind) -> bool {
19667 kind == SyntaxKind::CREATE_TEXT_SEARCH_TEMPLATE
19668 }
19669 #[inline]
19670 fn cast(syntax: SyntaxNode) -> Option<Self> {
19671 if Self::can_cast(syntax.kind()) {
19672 Some(Self { syntax })
19673 } else {
19674 None
19675 }
19676 }
19677 #[inline]
19678 fn syntax(&self) -> &SyntaxNode {
19679 &self.syntax
19680 }
19681}
19682impl AstNode for CreateTransform {
19683 #[inline]
19684 fn can_cast(kind: SyntaxKind) -> bool {
19685 kind == SyntaxKind::CREATE_TRANSFORM
19686 }
19687 #[inline]
19688 fn cast(syntax: SyntaxNode) -> Option<Self> {
19689 if Self::can_cast(syntax.kind()) {
19690 Some(Self { syntax })
19691 } else {
19692 None
19693 }
19694 }
19695 #[inline]
19696 fn syntax(&self) -> &SyntaxNode {
19697 &self.syntax
19698 }
19699}
19700impl AstNode for CreateTrigger {
19701 #[inline]
19702 fn can_cast(kind: SyntaxKind) -> bool {
19703 kind == SyntaxKind::CREATE_TRIGGER
19704 }
19705 #[inline]
19706 fn cast(syntax: SyntaxNode) -> Option<Self> {
19707 if Self::can_cast(syntax.kind()) {
19708 Some(Self { syntax })
19709 } else {
19710 None
19711 }
19712 }
19713 #[inline]
19714 fn syntax(&self) -> &SyntaxNode {
19715 &self.syntax
19716 }
19717}
19718impl AstNode for CreateType {
19719 #[inline]
19720 fn can_cast(kind: SyntaxKind) -> bool {
19721 kind == SyntaxKind::CREATE_TYPE
19722 }
19723 #[inline]
19724 fn cast(syntax: SyntaxNode) -> Option<Self> {
19725 if Self::can_cast(syntax.kind()) {
19726 Some(Self { syntax })
19727 } else {
19728 None
19729 }
19730 }
19731 #[inline]
19732 fn syntax(&self) -> &SyntaxNode {
19733 &self.syntax
19734 }
19735}
19736impl AstNode for CreateUser {
19737 #[inline]
19738 fn can_cast(kind: SyntaxKind) -> bool {
19739 kind == SyntaxKind::CREATE_USER
19740 }
19741 #[inline]
19742 fn cast(syntax: SyntaxNode) -> Option<Self> {
19743 if Self::can_cast(syntax.kind()) {
19744 Some(Self { syntax })
19745 } else {
19746 None
19747 }
19748 }
19749 #[inline]
19750 fn syntax(&self) -> &SyntaxNode {
19751 &self.syntax
19752 }
19753}
19754impl AstNode for CreateUserMapping {
19755 #[inline]
19756 fn can_cast(kind: SyntaxKind) -> bool {
19757 kind == SyntaxKind::CREATE_USER_MAPPING
19758 }
19759 #[inline]
19760 fn cast(syntax: SyntaxNode) -> Option<Self> {
19761 if Self::can_cast(syntax.kind()) {
19762 Some(Self { syntax })
19763 } else {
19764 None
19765 }
19766 }
19767 #[inline]
19768 fn syntax(&self) -> &SyntaxNode {
19769 &self.syntax
19770 }
19771}
19772impl AstNode for CreateView {
19773 #[inline]
19774 fn can_cast(kind: SyntaxKind) -> bool {
19775 kind == SyntaxKind::CREATE_VIEW
19776 }
19777 #[inline]
19778 fn cast(syntax: SyntaxNode) -> Option<Self> {
19779 if Self::can_cast(syntax.kind()) {
19780 Some(Self { syntax })
19781 } else {
19782 None
19783 }
19784 }
19785 #[inline]
19786 fn syntax(&self) -> &SyntaxNode {
19787 &self.syntax
19788 }
19789}
19790impl AstNode for CustomOp {
19791 #[inline]
19792 fn can_cast(kind: SyntaxKind) -> bool {
19793 kind == SyntaxKind::CUSTOM_OP
19794 }
19795 #[inline]
19796 fn cast(syntax: SyntaxNode) -> Option<Self> {
19797 if Self::can_cast(syntax.kind()) {
19798 Some(Self { syntax })
19799 } else {
19800 None
19801 }
19802 }
19803 #[inline]
19804 fn syntax(&self) -> &SyntaxNode {
19805 &self.syntax
19806 }
19807}
19808impl AstNode for Deallocate {
19809 #[inline]
19810 fn can_cast(kind: SyntaxKind) -> bool {
19811 kind == SyntaxKind::DEALLOCATE
19812 }
19813 #[inline]
19814 fn cast(syntax: SyntaxNode) -> Option<Self> {
19815 if Self::can_cast(syntax.kind()) {
19816 Some(Self { syntax })
19817 } else {
19818 None
19819 }
19820 }
19821 #[inline]
19822 fn syntax(&self) -> &SyntaxNode {
19823 &self.syntax
19824 }
19825}
19826impl AstNode for Declare {
19827 #[inline]
19828 fn can_cast(kind: SyntaxKind) -> bool {
19829 kind == SyntaxKind::DECLARE
19830 }
19831 #[inline]
19832 fn cast(syntax: SyntaxNode) -> Option<Self> {
19833 if Self::can_cast(syntax.kind()) {
19834 Some(Self { syntax })
19835 } else {
19836 None
19837 }
19838 }
19839 #[inline]
19840 fn syntax(&self) -> &SyntaxNode {
19841 &self.syntax
19842 }
19843}
19844impl AstNode for DefaultConstraint {
19845 #[inline]
19846 fn can_cast(kind: SyntaxKind) -> bool {
19847 kind == SyntaxKind::DEFAULT_CONSTRAINT
19848 }
19849 #[inline]
19850 fn cast(syntax: SyntaxNode) -> Option<Self> {
19851 if Self::can_cast(syntax.kind()) {
19852 Some(Self { syntax })
19853 } else {
19854 None
19855 }
19856 }
19857 #[inline]
19858 fn syntax(&self) -> &SyntaxNode {
19859 &self.syntax
19860 }
19861}
19862impl AstNode for Deferrable {
19863 #[inline]
19864 fn can_cast(kind: SyntaxKind) -> bool {
19865 kind == SyntaxKind::DEFERRABLE
19866 }
19867 #[inline]
19868 fn cast(syntax: SyntaxNode) -> Option<Self> {
19869 if Self::can_cast(syntax.kind()) {
19870 Some(Self { syntax })
19871 } else {
19872 None
19873 }
19874 }
19875 #[inline]
19876 fn syntax(&self) -> &SyntaxNode {
19877 &self.syntax
19878 }
19879}
19880impl AstNode for DeferrableConstraintOption {
19881 #[inline]
19882 fn can_cast(kind: SyntaxKind) -> bool {
19883 kind == SyntaxKind::DEFERRABLE_CONSTRAINT_OPTION
19884 }
19885 #[inline]
19886 fn cast(syntax: SyntaxNode) -> Option<Self> {
19887 if Self::can_cast(syntax.kind()) {
19888 Some(Self { syntax })
19889 } else {
19890 None
19891 }
19892 }
19893 #[inline]
19894 fn syntax(&self) -> &SyntaxNode {
19895 &self.syntax
19896 }
19897}
19898impl AstNode for Delete {
19899 #[inline]
19900 fn can_cast(kind: SyntaxKind) -> bool {
19901 kind == SyntaxKind::DELETE
19902 }
19903 #[inline]
19904 fn cast(syntax: SyntaxNode) -> Option<Self> {
19905 if Self::can_cast(syntax.kind()) {
19906 Some(Self { syntax })
19907 } else {
19908 None
19909 }
19910 }
19911 #[inline]
19912 fn syntax(&self) -> &SyntaxNode {
19913 &self.syntax
19914 }
19915}
19916impl AstNode for DeleteRows {
19917 #[inline]
19918 fn can_cast(kind: SyntaxKind) -> bool {
19919 kind == SyntaxKind::DELETE_ROWS
19920 }
19921 #[inline]
19922 fn cast(syntax: SyntaxNode) -> Option<Self> {
19923 if Self::can_cast(syntax.kind()) {
19924 Some(Self { syntax })
19925 } else {
19926 None
19927 }
19928 }
19929 #[inline]
19930 fn syntax(&self) -> &SyntaxNode {
19931 &self.syntax
19932 }
19933}
19934impl AstNode for DependsOnExtension {
19935 #[inline]
19936 fn can_cast(kind: SyntaxKind) -> bool {
19937 kind == SyntaxKind::DEPENDS_ON_EXTENSION
19938 }
19939 #[inline]
19940 fn cast(syntax: SyntaxNode) -> Option<Self> {
19941 if Self::can_cast(syntax.kind()) {
19942 Some(Self { syntax })
19943 } else {
19944 None
19945 }
19946 }
19947 #[inline]
19948 fn syntax(&self) -> &SyntaxNode {
19949 &self.syntax
19950 }
19951}
19952impl AstNode for DetachPartition {
19953 #[inline]
19954 fn can_cast(kind: SyntaxKind) -> bool {
19955 kind == SyntaxKind::DETACH_PARTITION
19956 }
19957 #[inline]
19958 fn cast(syntax: SyntaxNode) -> Option<Self> {
19959 if Self::can_cast(syntax.kind()) {
19960 Some(Self { syntax })
19961 } else {
19962 None
19963 }
19964 }
19965 #[inline]
19966 fn syntax(&self) -> &SyntaxNode {
19967 &self.syntax
19968 }
19969}
19970impl AstNode for DisableRls {
19971 #[inline]
19972 fn can_cast(kind: SyntaxKind) -> bool {
19973 kind == SyntaxKind::DISABLE_RLS
19974 }
19975 #[inline]
19976 fn cast(syntax: SyntaxNode) -> Option<Self> {
19977 if Self::can_cast(syntax.kind()) {
19978 Some(Self { syntax })
19979 } else {
19980 None
19981 }
19982 }
19983 #[inline]
19984 fn syntax(&self) -> &SyntaxNode {
19985 &self.syntax
19986 }
19987}
19988impl AstNode for DisableRule {
19989 #[inline]
19990 fn can_cast(kind: SyntaxKind) -> bool {
19991 kind == SyntaxKind::DISABLE_RULE
19992 }
19993 #[inline]
19994 fn cast(syntax: SyntaxNode) -> Option<Self> {
19995 if Self::can_cast(syntax.kind()) {
19996 Some(Self { syntax })
19997 } else {
19998 None
19999 }
20000 }
20001 #[inline]
20002 fn syntax(&self) -> &SyntaxNode {
20003 &self.syntax
20004 }
20005}
20006impl AstNode for DisableTrigger {
20007 #[inline]
20008 fn can_cast(kind: SyntaxKind) -> bool {
20009 kind == SyntaxKind::DISABLE_TRIGGER
20010 }
20011 #[inline]
20012 fn cast(syntax: SyntaxNode) -> Option<Self> {
20013 if Self::can_cast(syntax.kind()) {
20014 Some(Self { syntax })
20015 } else {
20016 None
20017 }
20018 }
20019 #[inline]
20020 fn syntax(&self) -> &SyntaxNode {
20021 &self.syntax
20022 }
20023}
20024impl AstNode for Discard {
20025 #[inline]
20026 fn can_cast(kind: SyntaxKind) -> bool {
20027 kind == SyntaxKind::DISCARD
20028 }
20029 #[inline]
20030 fn cast(syntax: SyntaxNode) -> Option<Self> {
20031 if Self::can_cast(syntax.kind()) {
20032 Some(Self { syntax })
20033 } else {
20034 None
20035 }
20036 }
20037 #[inline]
20038 fn syntax(&self) -> &SyntaxNode {
20039 &self.syntax
20040 }
20041}
20042impl AstNode for DistinctClause {
20043 #[inline]
20044 fn can_cast(kind: SyntaxKind) -> bool {
20045 kind == SyntaxKind::DISTINCT_CLAUSE
20046 }
20047 #[inline]
20048 fn cast(syntax: SyntaxNode) -> Option<Self> {
20049 if Self::can_cast(syntax.kind()) {
20050 Some(Self { syntax })
20051 } else {
20052 None
20053 }
20054 }
20055 #[inline]
20056 fn syntax(&self) -> &SyntaxNode {
20057 &self.syntax
20058 }
20059}
20060impl AstNode for Do {
20061 #[inline]
20062 fn can_cast(kind: SyntaxKind) -> bool {
20063 kind == SyntaxKind::DO
20064 }
20065 #[inline]
20066 fn cast(syntax: SyntaxNode) -> Option<Self> {
20067 if Self::can_cast(syntax.kind()) {
20068 Some(Self { syntax })
20069 } else {
20070 None
20071 }
20072 }
20073 #[inline]
20074 fn syntax(&self) -> &SyntaxNode {
20075 &self.syntax
20076 }
20077}
20078impl AstNode for DoubleType {
20079 #[inline]
20080 fn can_cast(kind: SyntaxKind) -> bool {
20081 kind == SyntaxKind::DOUBLE_TYPE
20082 }
20083 #[inline]
20084 fn cast(syntax: SyntaxNode) -> Option<Self> {
20085 if Self::can_cast(syntax.kind()) {
20086 Some(Self { syntax })
20087 } else {
20088 None
20089 }
20090 }
20091 #[inline]
20092 fn syntax(&self) -> &SyntaxNode {
20093 &self.syntax
20094 }
20095}
20096impl AstNode for Drop {
20097 #[inline]
20098 fn can_cast(kind: SyntaxKind) -> bool {
20099 kind == SyntaxKind::DROP
20100 }
20101 #[inline]
20102 fn cast(syntax: SyntaxNode) -> Option<Self> {
20103 if Self::can_cast(syntax.kind()) {
20104 Some(Self { syntax })
20105 } else {
20106 None
20107 }
20108 }
20109 #[inline]
20110 fn syntax(&self) -> &SyntaxNode {
20111 &self.syntax
20112 }
20113}
20114impl AstNode for DropAccessMethod {
20115 #[inline]
20116 fn can_cast(kind: SyntaxKind) -> bool {
20117 kind == SyntaxKind::DROP_ACCESS_METHOD
20118 }
20119 #[inline]
20120 fn cast(syntax: SyntaxNode) -> Option<Self> {
20121 if Self::can_cast(syntax.kind()) {
20122 Some(Self { syntax })
20123 } else {
20124 None
20125 }
20126 }
20127 #[inline]
20128 fn syntax(&self) -> &SyntaxNode {
20129 &self.syntax
20130 }
20131}
20132impl AstNode for DropAggregate {
20133 #[inline]
20134 fn can_cast(kind: SyntaxKind) -> bool {
20135 kind == SyntaxKind::DROP_AGGREGATE
20136 }
20137 #[inline]
20138 fn cast(syntax: SyntaxNode) -> Option<Self> {
20139 if Self::can_cast(syntax.kind()) {
20140 Some(Self { syntax })
20141 } else {
20142 None
20143 }
20144 }
20145 #[inline]
20146 fn syntax(&self) -> &SyntaxNode {
20147 &self.syntax
20148 }
20149}
20150impl AstNode for DropCast {
20151 #[inline]
20152 fn can_cast(kind: SyntaxKind) -> bool {
20153 kind == SyntaxKind::DROP_CAST
20154 }
20155 #[inline]
20156 fn cast(syntax: SyntaxNode) -> Option<Self> {
20157 if Self::can_cast(syntax.kind()) {
20158 Some(Self { syntax })
20159 } else {
20160 None
20161 }
20162 }
20163 #[inline]
20164 fn syntax(&self) -> &SyntaxNode {
20165 &self.syntax
20166 }
20167}
20168impl AstNode for DropCollation {
20169 #[inline]
20170 fn can_cast(kind: SyntaxKind) -> bool {
20171 kind == SyntaxKind::DROP_COLLATION
20172 }
20173 #[inline]
20174 fn cast(syntax: SyntaxNode) -> Option<Self> {
20175 if Self::can_cast(syntax.kind()) {
20176 Some(Self { syntax })
20177 } else {
20178 None
20179 }
20180 }
20181 #[inline]
20182 fn syntax(&self) -> &SyntaxNode {
20183 &self.syntax
20184 }
20185}
20186impl AstNode for DropColumn {
20187 #[inline]
20188 fn can_cast(kind: SyntaxKind) -> bool {
20189 kind == SyntaxKind::DROP_COLUMN
20190 }
20191 #[inline]
20192 fn cast(syntax: SyntaxNode) -> Option<Self> {
20193 if Self::can_cast(syntax.kind()) {
20194 Some(Self { syntax })
20195 } else {
20196 None
20197 }
20198 }
20199 #[inline]
20200 fn syntax(&self) -> &SyntaxNode {
20201 &self.syntax
20202 }
20203}
20204impl AstNode for DropConstraint {
20205 #[inline]
20206 fn can_cast(kind: SyntaxKind) -> bool {
20207 kind == SyntaxKind::DROP_CONSTRAINT
20208 }
20209 #[inline]
20210 fn cast(syntax: SyntaxNode) -> Option<Self> {
20211 if Self::can_cast(syntax.kind()) {
20212 Some(Self { syntax })
20213 } else {
20214 None
20215 }
20216 }
20217 #[inline]
20218 fn syntax(&self) -> &SyntaxNode {
20219 &self.syntax
20220 }
20221}
20222impl AstNode for DropConversion {
20223 #[inline]
20224 fn can_cast(kind: SyntaxKind) -> bool {
20225 kind == SyntaxKind::DROP_CONVERSION
20226 }
20227 #[inline]
20228 fn cast(syntax: SyntaxNode) -> Option<Self> {
20229 if Self::can_cast(syntax.kind()) {
20230 Some(Self { syntax })
20231 } else {
20232 None
20233 }
20234 }
20235 #[inline]
20236 fn syntax(&self) -> &SyntaxNode {
20237 &self.syntax
20238 }
20239}
20240impl AstNode for DropDatabase {
20241 #[inline]
20242 fn can_cast(kind: SyntaxKind) -> bool {
20243 kind == SyntaxKind::DROP_DATABASE
20244 }
20245 #[inline]
20246 fn cast(syntax: SyntaxNode) -> Option<Self> {
20247 if Self::can_cast(syntax.kind()) {
20248 Some(Self { syntax })
20249 } else {
20250 None
20251 }
20252 }
20253 #[inline]
20254 fn syntax(&self) -> &SyntaxNode {
20255 &self.syntax
20256 }
20257}
20258impl AstNode for DropDefault {
20259 #[inline]
20260 fn can_cast(kind: SyntaxKind) -> bool {
20261 kind == SyntaxKind::DROP_DEFAULT
20262 }
20263 #[inline]
20264 fn cast(syntax: SyntaxNode) -> Option<Self> {
20265 if Self::can_cast(syntax.kind()) {
20266 Some(Self { syntax })
20267 } else {
20268 None
20269 }
20270 }
20271 #[inline]
20272 fn syntax(&self) -> &SyntaxNode {
20273 &self.syntax
20274 }
20275}
20276impl AstNode for DropDomain {
20277 #[inline]
20278 fn can_cast(kind: SyntaxKind) -> bool {
20279 kind == SyntaxKind::DROP_DOMAIN
20280 }
20281 #[inline]
20282 fn cast(syntax: SyntaxNode) -> Option<Self> {
20283 if Self::can_cast(syntax.kind()) {
20284 Some(Self { syntax })
20285 } else {
20286 None
20287 }
20288 }
20289 #[inline]
20290 fn syntax(&self) -> &SyntaxNode {
20291 &self.syntax
20292 }
20293}
20294impl AstNode for DropEventTrigger {
20295 #[inline]
20296 fn can_cast(kind: SyntaxKind) -> bool {
20297 kind == SyntaxKind::DROP_EVENT_TRIGGER
20298 }
20299 #[inline]
20300 fn cast(syntax: SyntaxNode) -> Option<Self> {
20301 if Self::can_cast(syntax.kind()) {
20302 Some(Self { syntax })
20303 } else {
20304 None
20305 }
20306 }
20307 #[inline]
20308 fn syntax(&self) -> &SyntaxNode {
20309 &self.syntax
20310 }
20311}
20312impl AstNode for DropExpression {
20313 #[inline]
20314 fn can_cast(kind: SyntaxKind) -> bool {
20315 kind == SyntaxKind::DROP_EXPRESSION
20316 }
20317 #[inline]
20318 fn cast(syntax: SyntaxNode) -> Option<Self> {
20319 if Self::can_cast(syntax.kind()) {
20320 Some(Self { syntax })
20321 } else {
20322 None
20323 }
20324 }
20325 #[inline]
20326 fn syntax(&self) -> &SyntaxNode {
20327 &self.syntax
20328 }
20329}
20330impl AstNode for DropExtension {
20331 #[inline]
20332 fn can_cast(kind: SyntaxKind) -> bool {
20333 kind == SyntaxKind::DROP_EXTENSION
20334 }
20335 #[inline]
20336 fn cast(syntax: SyntaxNode) -> Option<Self> {
20337 if Self::can_cast(syntax.kind()) {
20338 Some(Self { syntax })
20339 } else {
20340 None
20341 }
20342 }
20343 #[inline]
20344 fn syntax(&self) -> &SyntaxNode {
20345 &self.syntax
20346 }
20347}
20348impl AstNode for DropForeignDataWrapper {
20349 #[inline]
20350 fn can_cast(kind: SyntaxKind) -> bool {
20351 kind == SyntaxKind::DROP_FOREIGN_DATA_WRAPPER
20352 }
20353 #[inline]
20354 fn cast(syntax: SyntaxNode) -> Option<Self> {
20355 if Self::can_cast(syntax.kind()) {
20356 Some(Self { syntax })
20357 } else {
20358 None
20359 }
20360 }
20361 #[inline]
20362 fn syntax(&self) -> &SyntaxNode {
20363 &self.syntax
20364 }
20365}
20366impl AstNode for DropForeignTable {
20367 #[inline]
20368 fn can_cast(kind: SyntaxKind) -> bool {
20369 kind == SyntaxKind::DROP_FOREIGN_TABLE
20370 }
20371 #[inline]
20372 fn cast(syntax: SyntaxNode) -> Option<Self> {
20373 if Self::can_cast(syntax.kind()) {
20374 Some(Self { syntax })
20375 } else {
20376 None
20377 }
20378 }
20379 #[inline]
20380 fn syntax(&self) -> &SyntaxNode {
20381 &self.syntax
20382 }
20383}
20384impl AstNode for DropFunction {
20385 #[inline]
20386 fn can_cast(kind: SyntaxKind) -> bool {
20387 kind == SyntaxKind::DROP_FUNCTION
20388 }
20389 #[inline]
20390 fn cast(syntax: SyntaxNode) -> Option<Self> {
20391 if Self::can_cast(syntax.kind()) {
20392 Some(Self { syntax })
20393 } else {
20394 None
20395 }
20396 }
20397 #[inline]
20398 fn syntax(&self) -> &SyntaxNode {
20399 &self.syntax
20400 }
20401}
20402impl AstNode for DropGroup {
20403 #[inline]
20404 fn can_cast(kind: SyntaxKind) -> bool {
20405 kind == SyntaxKind::DROP_GROUP
20406 }
20407 #[inline]
20408 fn cast(syntax: SyntaxNode) -> Option<Self> {
20409 if Self::can_cast(syntax.kind()) {
20410 Some(Self { syntax })
20411 } else {
20412 None
20413 }
20414 }
20415 #[inline]
20416 fn syntax(&self) -> &SyntaxNode {
20417 &self.syntax
20418 }
20419}
20420impl AstNode for DropIdentity {
20421 #[inline]
20422 fn can_cast(kind: SyntaxKind) -> bool {
20423 kind == SyntaxKind::DROP_IDENTITY
20424 }
20425 #[inline]
20426 fn cast(syntax: SyntaxNode) -> Option<Self> {
20427 if Self::can_cast(syntax.kind()) {
20428 Some(Self { syntax })
20429 } else {
20430 None
20431 }
20432 }
20433 #[inline]
20434 fn syntax(&self) -> &SyntaxNode {
20435 &self.syntax
20436 }
20437}
20438impl AstNode for DropIndex {
20439 #[inline]
20440 fn can_cast(kind: SyntaxKind) -> bool {
20441 kind == SyntaxKind::DROP_INDEX
20442 }
20443 #[inline]
20444 fn cast(syntax: SyntaxNode) -> Option<Self> {
20445 if Self::can_cast(syntax.kind()) {
20446 Some(Self { syntax })
20447 } else {
20448 None
20449 }
20450 }
20451 #[inline]
20452 fn syntax(&self) -> &SyntaxNode {
20453 &self.syntax
20454 }
20455}
20456impl AstNode for DropLanguage {
20457 #[inline]
20458 fn can_cast(kind: SyntaxKind) -> bool {
20459 kind == SyntaxKind::DROP_LANGUAGE
20460 }
20461 #[inline]
20462 fn cast(syntax: SyntaxNode) -> Option<Self> {
20463 if Self::can_cast(syntax.kind()) {
20464 Some(Self { syntax })
20465 } else {
20466 None
20467 }
20468 }
20469 #[inline]
20470 fn syntax(&self) -> &SyntaxNode {
20471 &self.syntax
20472 }
20473}
20474impl AstNode for DropMaterializedView {
20475 #[inline]
20476 fn can_cast(kind: SyntaxKind) -> bool {
20477 kind == SyntaxKind::DROP_MATERIALIZED_VIEW
20478 }
20479 #[inline]
20480 fn cast(syntax: SyntaxNode) -> Option<Self> {
20481 if Self::can_cast(syntax.kind()) {
20482 Some(Self { syntax })
20483 } else {
20484 None
20485 }
20486 }
20487 #[inline]
20488 fn syntax(&self) -> &SyntaxNode {
20489 &self.syntax
20490 }
20491}
20492impl AstNode for DropNotNull {
20493 #[inline]
20494 fn can_cast(kind: SyntaxKind) -> bool {
20495 kind == SyntaxKind::DROP_NOT_NULL
20496 }
20497 #[inline]
20498 fn cast(syntax: SyntaxNode) -> Option<Self> {
20499 if Self::can_cast(syntax.kind()) {
20500 Some(Self { syntax })
20501 } else {
20502 None
20503 }
20504 }
20505 #[inline]
20506 fn syntax(&self) -> &SyntaxNode {
20507 &self.syntax
20508 }
20509}
20510impl AstNode for DropOpClassOption {
20511 #[inline]
20512 fn can_cast(kind: SyntaxKind) -> bool {
20513 kind == SyntaxKind::DROP_OP_CLASS_OPTION
20514 }
20515 #[inline]
20516 fn cast(syntax: SyntaxNode) -> Option<Self> {
20517 if Self::can_cast(syntax.kind()) {
20518 Some(Self { syntax })
20519 } else {
20520 None
20521 }
20522 }
20523 #[inline]
20524 fn syntax(&self) -> &SyntaxNode {
20525 &self.syntax
20526 }
20527}
20528impl AstNode for DropOpClassOptionList {
20529 #[inline]
20530 fn can_cast(kind: SyntaxKind) -> bool {
20531 kind == SyntaxKind::DROP_OP_CLASS_OPTION_LIST
20532 }
20533 #[inline]
20534 fn cast(syntax: SyntaxNode) -> Option<Self> {
20535 if Self::can_cast(syntax.kind()) {
20536 Some(Self { syntax })
20537 } else {
20538 None
20539 }
20540 }
20541 #[inline]
20542 fn syntax(&self) -> &SyntaxNode {
20543 &self.syntax
20544 }
20545}
20546impl AstNode for DropOpClassOptions {
20547 #[inline]
20548 fn can_cast(kind: SyntaxKind) -> bool {
20549 kind == SyntaxKind::DROP_OP_CLASS_OPTIONS
20550 }
20551 #[inline]
20552 fn cast(syntax: SyntaxNode) -> Option<Self> {
20553 if Self::can_cast(syntax.kind()) {
20554 Some(Self { syntax })
20555 } else {
20556 None
20557 }
20558 }
20559 #[inline]
20560 fn syntax(&self) -> &SyntaxNode {
20561 &self.syntax
20562 }
20563}
20564impl AstNode for DropOperator {
20565 #[inline]
20566 fn can_cast(kind: SyntaxKind) -> bool {
20567 kind == SyntaxKind::DROP_OPERATOR
20568 }
20569 #[inline]
20570 fn cast(syntax: SyntaxNode) -> Option<Self> {
20571 if Self::can_cast(syntax.kind()) {
20572 Some(Self { syntax })
20573 } else {
20574 None
20575 }
20576 }
20577 #[inline]
20578 fn syntax(&self) -> &SyntaxNode {
20579 &self.syntax
20580 }
20581}
20582impl AstNode for DropOperatorClass {
20583 #[inline]
20584 fn can_cast(kind: SyntaxKind) -> bool {
20585 kind == SyntaxKind::DROP_OPERATOR_CLASS
20586 }
20587 #[inline]
20588 fn cast(syntax: SyntaxNode) -> Option<Self> {
20589 if Self::can_cast(syntax.kind()) {
20590 Some(Self { syntax })
20591 } else {
20592 None
20593 }
20594 }
20595 #[inline]
20596 fn syntax(&self) -> &SyntaxNode {
20597 &self.syntax
20598 }
20599}
20600impl AstNode for DropOperatorFamily {
20601 #[inline]
20602 fn can_cast(kind: SyntaxKind) -> bool {
20603 kind == SyntaxKind::DROP_OPERATOR_FAMILY
20604 }
20605 #[inline]
20606 fn cast(syntax: SyntaxNode) -> Option<Self> {
20607 if Self::can_cast(syntax.kind()) {
20608 Some(Self { syntax })
20609 } else {
20610 None
20611 }
20612 }
20613 #[inline]
20614 fn syntax(&self) -> &SyntaxNode {
20615 &self.syntax
20616 }
20617}
20618impl AstNode for DropOwned {
20619 #[inline]
20620 fn can_cast(kind: SyntaxKind) -> bool {
20621 kind == SyntaxKind::DROP_OWNED
20622 }
20623 #[inline]
20624 fn cast(syntax: SyntaxNode) -> Option<Self> {
20625 if Self::can_cast(syntax.kind()) {
20626 Some(Self { syntax })
20627 } else {
20628 None
20629 }
20630 }
20631 #[inline]
20632 fn syntax(&self) -> &SyntaxNode {
20633 &self.syntax
20634 }
20635}
20636impl AstNode for DropPolicy {
20637 #[inline]
20638 fn can_cast(kind: SyntaxKind) -> bool {
20639 kind == SyntaxKind::DROP_POLICY
20640 }
20641 #[inline]
20642 fn cast(syntax: SyntaxNode) -> Option<Self> {
20643 if Self::can_cast(syntax.kind()) {
20644 Some(Self { syntax })
20645 } else {
20646 None
20647 }
20648 }
20649 #[inline]
20650 fn syntax(&self) -> &SyntaxNode {
20651 &self.syntax
20652 }
20653}
20654impl AstNode for DropProcedure {
20655 #[inline]
20656 fn can_cast(kind: SyntaxKind) -> bool {
20657 kind == SyntaxKind::DROP_PROCEDURE
20658 }
20659 #[inline]
20660 fn cast(syntax: SyntaxNode) -> Option<Self> {
20661 if Self::can_cast(syntax.kind()) {
20662 Some(Self { syntax })
20663 } else {
20664 None
20665 }
20666 }
20667 #[inline]
20668 fn syntax(&self) -> &SyntaxNode {
20669 &self.syntax
20670 }
20671}
20672impl AstNode for DropPublication {
20673 #[inline]
20674 fn can_cast(kind: SyntaxKind) -> bool {
20675 kind == SyntaxKind::DROP_PUBLICATION
20676 }
20677 #[inline]
20678 fn cast(syntax: SyntaxNode) -> Option<Self> {
20679 if Self::can_cast(syntax.kind()) {
20680 Some(Self { syntax })
20681 } else {
20682 None
20683 }
20684 }
20685 #[inline]
20686 fn syntax(&self) -> &SyntaxNode {
20687 &self.syntax
20688 }
20689}
20690impl AstNode for DropRole {
20691 #[inline]
20692 fn can_cast(kind: SyntaxKind) -> bool {
20693 kind == SyntaxKind::DROP_ROLE
20694 }
20695 #[inline]
20696 fn cast(syntax: SyntaxNode) -> Option<Self> {
20697 if Self::can_cast(syntax.kind()) {
20698 Some(Self { syntax })
20699 } else {
20700 None
20701 }
20702 }
20703 #[inline]
20704 fn syntax(&self) -> &SyntaxNode {
20705 &self.syntax
20706 }
20707}
20708impl AstNode for DropRoutine {
20709 #[inline]
20710 fn can_cast(kind: SyntaxKind) -> bool {
20711 kind == SyntaxKind::DROP_ROUTINE
20712 }
20713 #[inline]
20714 fn cast(syntax: SyntaxNode) -> Option<Self> {
20715 if Self::can_cast(syntax.kind()) {
20716 Some(Self { syntax })
20717 } else {
20718 None
20719 }
20720 }
20721 #[inline]
20722 fn syntax(&self) -> &SyntaxNode {
20723 &self.syntax
20724 }
20725}
20726impl AstNode for DropRule {
20727 #[inline]
20728 fn can_cast(kind: SyntaxKind) -> bool {
20729 kind == SyntaxKind::DROP_RULE
20730 }
20731 #[inline]
20732 fn cast(syntax: SyntaxNode) -> Option<Self> {
20733 if Self::can_cast(syntax.kind()) {
20734 Some(Self { syntax })
20735 } else {
20736 None
20737 }
20738 }
20739 #[inline]
20740 fn syntax(&self) -> &SyntaxNode {
20741 &self.syntax
20742 }
20743}
20744impl AstNode for DropSchema {
20745 #[inline]
20746 fn can_cast(kind: SyntaxKind) -> bool {
20747 kind == SyntaxKind::DROP_SCHEMA
20748 }
20749 #[inline]
20750 fn cast(syntax: SyntaxNode) -> Option<Self> {
20751 if Self::can_cast(syntax.kind()) {
20752 Some(Self { syntax })
20753 } else {
20754 None
20755 }
20756 }
20757 #[inline]
20758 fn syntax(&self) -> &SyntaxNode {
20759 &self.syntax
20760 }
20761}
20762impl AstNode for DropSequence {
20763 #[inline]
20764 fn can_cast(kind: SyntaxKind) -> bool {
20765 kind == SyntaxKind::DROP_SEQUENCE
20766 }
20767 #[inline]
20768 fn cast(syntax: SyntaxNode) -> Option<Self> {
20769 if Self::can_cast(syntax.kind()) {
20770 Some(Self { syntax })
20771 } else {
20772 None
20773 }
20774 }
20775 #[inline]
20776 fn syntax(&self) -> &SyntaxNode {
20777 &self.syntax
20778 }
20779}
20780impl AstNode for DropServer {
20781 #[inline]
20782 fn can_cast(kind: SyntaxKind) -> bool {
20783 kind == SyntaxKind::DROP_SERVER
20784 }
20785 #[inline]
20786 fn cast(syntax: SyntaxNode) -> Option<Self> {
20787 if Self::can_cast(syntax.kind()) {
20788 Some(Self { syntax })
20789 } else {
20790 None
20791 }
20792 }
20793 #[inline]
20794 fn syntax(&self) -> &SyntaxNode {
20795 &self.syntax
20796 }
20797}
20798impl AstNode for DropStatistics {
20799 #[inline]
20800 fn can_cast(kind: SyntaxKind) -> bool {
20801 kind == SyntaxKind::DROP_STATISTICS
20802 }
20803 #[inline]
20804 fn cast(syntax: SyntaxNode) -> Option<Self> {
20805 if Self::can_cast(syntax.kind()) {
20806 Some(Self { syntax })
20807 } else {
20808 None
20809 }
20810 }
20811 #[inline]
20812 fn syntax(&self) -> &SyntaxNode {
20813 &self.syntax
20814 }
20815}
20816impl AstNode for DropSubscription {
20817 #[inline]
20818 fn can_cast(kind: SyntaxKind) -> bool {
20819 kind == SyntaxKind::DROP_SUBSCRIPTION
20820 }
20821 #[inline]
20822 fn cast(syntax: SyntaxNode) -> Option<Self> {
20823 if Self::can_cast(syntax.kind()) {
20824 Some(Self { syntax })
20825 } else {
20826 None
20827 }
20828 }
20829 #[inline]
20830 fn syntax(&self) -> &SyntaxNode {
20831 &self.syntax
20832 }
20833}
20834impl AstNode for DropTable {
20835 #[inline]
20836 fn can_cast(kind: SyntaxKind) -> bool {
20837 kind == SyntaxKind::DROP_TABLE
20838 }
20839 #[inline]
20840 fn cast(syntax: SyntaxNode) -> Option<Self> {
20841 if Self::can_cast(syntax.kind()) {
20842 Some(Self { syntax })
20843 } else {
20844 None
20845 }
20846 }
20847 #[inline]
20848 fn syntax(&self) -> &SyntaxNode {
20849 &self.syntax
20850 }
20851}
20852impl AstNode for DropTablespace {
20853 #[inline]
20854 fn can_cast(kind: SyntaxKind) -> bool {
20855 kind == SyntaxKind::DROP_TABLESPACE
20856 }
20857 #[inline]
20858 fn cast(syntax: SyntaxNode) -> Option<Self> {
20859 if Self::can_cast(syntax.kind()) {
20860 Some(Self { syntax })
20861 } else {
20862 None
20863 }
20864 }
20865 #[inline]
20866 fn syntax(&self) -> &SyntaxNode {
20867 &self.syntax
20868 }
20869}
20870impl AstNode for DropTextSearchConfig {
20871 #[inline]
20872 fn can_cast(kind: SyntaxKind) -> bool {
20873 kind == SyntaxKind::DROP_TEXT_SEARCH_CONFIG
20874 }
20875 #[inline]
20876 fn cast(syntax: SyntaxNode) -> Option<Self> {
20877 if Self::can_cast(syntax.kind()) {
20878 Some(Self { syntax })
20879 } else {
20880 None
20881 }
20882 }
20883 #[inline]
20884 fn syntax(&self) -> &SyntaxNode {
20885 &self.syntax
20886 }
20887}
20888impl AstNode for DropTextSearchDict {
20889 #[inline]
20890 fn can_cast(kind: SyntaxKind) -> bool {
20891 kind == SyntaxKind::DROP_TEXT_SEARCH_DICT
20892 }
20893 #[inline]
20894 fn cast(syntax: SyntaxNode) -> Option<Self> {
20895 if Self::can_cast(syntax.kind()) {
20896 Some(Self { syntax })
20897 } else {
20898 None
20899 }
20900 }
20901 #[inline]
20902 fn syntax(&self) -> &SyntaxNode {
20903 &self.syntax
20904 }
20905}
20906impl AstNode for DropTextSearchParser {
20907 #[inline]
20908 fn can_cast(kind: SyntaxKind) -> bool {
20909 kind == SyntaxKind::DROP_TEXT_SEARCH_PARSER
20910 }
20911 #[inline]
20912 fn cast(syntax: SyntaxNode) -> Option<Self> {
20913 if Self::can_cast(syntax.kind()) {
20914 Some(Self { syntax })
20915 } else {
20916 None
20917 }
20918 }
20919 #[inline]
20920 fn syntax(&self) -> &SyntaxNode {
20921 &self.syntax
20922 }
20923}
20924impl AstNode for DropTextSearchTemplate {
20925 #[inline]
20926 fn can_cast(kind: SyntaxKind) -> bool {
20927 kind == SyntaxKind::DROP_TEXT_SEARCH_TEMPLATE
20928 }
20929 #[inline]
20930 fn cast(syntax: SyntaxNode) -> Option<Self> {
20931 if Self::can_cast(syntax.kind()) {
20932 Some(Self { syntax })
20933 } else {
20934 None
20935 }
20936 }
20937 #[inline]
20938 fn syntax(&self) -> &SyntaxNode {
20939 &self.syntax
20940 }
20941}
20942impl AstNode for DropTransform {
20943 #[inline]
20944 fn can_cast(kind: SyntaxKind) -> bool {
20945 kind == SyntaxKind::DROP_TRANSFORM
20946 }
20947 #[inline]
20948 fn cast(syntax: SyntaxNode) -> Option<Self> {
20949 if Self::can_cast(syntax.kind()) {
20950 Some(Self { syntax })
20951 } else {
20952 None
20953 }
20954 }
20955 #[inline]
20956 fn syntax(&self) -> &SyntaxNode {
20957 &self.syntax
20958 }
20959}
20960impl AstNode for DropTrigger {
20961 #[inline]
20962 fn can_cast(kind: SyntaxKind) -> bool {
20963 kind == SyntaxKind::DROP_TRIGGER
20964 }
20965 #[inline]
20966 fn cast(syntax: SyntaxNode) -> Option<Self> {
20967 if Self::can_cast(syntax.kind()) {
20968 Some(Self { syntax })
20969 } else {
20970 None
20971 }
20972 }
20973 #[inline]
20974 fn syntax(&self) -> &SyntaxNode {
20975 &self.syntax
20976 }
20977}
20978impl AstNode for DropType {
20979 #[inline]
20980 fn can_cast(kind: SyntaxKind) -> bool {
20981 kind == SyntaxKind::DROP_TYPE
20982 }
20983 #[inline]
20984 fn cast(syntax: SyntaxNode) -> Option<Self> {
20985 if Self::can_cast(syntax.kind()) {
20986 Some(Self { syntax })
20987 } else {
20988 None
20989 }
20990 }
20991 #[inline]
20992 fn syntax(&self) -> &SyntaxNode {
20993 &self.syntax
20994 }
20995}
20996impl AstNode for DropUser {
20997 #[inline]
20998 fn can_cast(kind: SyntaxKind) -> bool {
20999 kind == SyntaxKind::DROP_USER
21000 }
21001 #[inline]
21002 fn cast(syntax: SyntaxNode) -> Option<Self> {
21003 if Self::can_cast(syntax.kind()) {
21004 Some(Self { syntax })
21005 } else {
21006 None
21007 }
21008 }
21009 #[inline]
21010 fn syntax(&self) -> &SyntaxNode {
21011 &self.syntax
21012 }
21013}
21014impl AstNode for DropUserMapping {
21015 #[inline]
21016 fn can_cast(kind: SyntaxKind) -> bool {
21017 kind == SyntaxKind::DROP_USER_MAPPING
21018 }
21019 #[inline]
21020 fn cast(syntax: SyntaxNode) -> Option<Self> {
21021 if Self::can_cast(syntax.kind()) {
21022 Some(Self { syntax })
21023 } else {
21024 None
21025 }
21026 }
21027 #[inline]
21028 fn syntax(&self) -> &SyntaxNode {
21029 &self.syntax
21030 }
21031}
21032impl AstNode for DropView {
21033 #[inline]
21034 fn can_cast(kind: SyntaxKind) -> bool {
21035 kind == SyntaxKind::DROP_VIEW
21036 }
21037 #[inline]
21038 fn cast(syntax: SyntaxNode) -> Option<Self> {
21039 if Self::can_cast(syntax.kind()) {
21040 Some(Self { syntax })
21041 } else {
21042 None
21043 }
21044 }
21045 #[inline]
21046 fn syntax(&self) -> &SyntaxNode {
21047 &self.syntax
21048 }
21049}
21050impl AstNode for ElseClause {
21051 #[inline]
21052 fn can_cast(kind: SyntaxKind) -> bool {
21053 kind == SyntaxKind::ELSE_CLAUSE
21054 }
21055 #[inline]
21056 fn cast(syntax: SyntaxNode) -> Option<Self> {
21057 if Self::can_cast(syntax.kind()) {
21058 Some(Self { syntax })
21059 } else {
21060 None
21061 }
21062 }
21063 #[inline]
21064 fn syntax(&self) -> &SyntaxNode {
21065 &self.syntax
21066 }
21067}
21068impl AstNode for EnableAlwaysRule {
21069 #[inline]
21070 fn can_cast(kind: SyntaxKind) -> bool {
21071 kind == SyntaxKind::ENABLE_ALWAYS_RULE
21072 }
21073 #[inline]
21074 fn cast(syntax: SyntaxNode) -> Option<Self> {
21075 if Self::can_cast(syntax.kind()) {
21076 Some(Self { syntax })
21077 } else {
21078 None
21079 }
21080 }
21081 #[inline]
21082 fn syntax(&self) -> &SyntaxNode {
21083 &self.syntax
21084 }
21085}
21086impl AstNode for EnableAlwaysTrigger {
21087 #[inline]
21088 fn can_cast(kind: SyntaxKind) -> bool {
21089 kind == SyntaxKind::ENABLE_ALWAYS_TRIGGER
21090 }
21091 #[inline]
21092 fn cast(syntax: SyntaxNode) -> Option<Self> {
21093 if Self::can_cast(syntax.kind()) {
21094 Some(Self { syntax })
21095 } else {
21096 None
21097 }
21098 }
21099 #[inline]
21100 fn syntax(&self) -> &SyntaxNode {
21101 &self.syntax
21102 }
21103}
21104impl AstNode for EnableReplicaRule {
21105 #[inline]
21106 fn can_cast(kind: SyntaxKind) -> bool {
21107 kind == SyntaxKind::ENABLE_REPLICA_RULE
21108 }
21109 #[inline]
21110 fn cast(syntax: SyntaxNode) -> Option<Self> {
21111 if Self::can_cast(syntax.kind()) {
21112 Some(Self { syntax })
21113 } else {
21114 None
21115 }
21116 }
21117 #[inline]
21118 fn syntax(&self) -> &SyntaxNode {
21119 &self.syntax
21120 }
21121}
21122impl AstNode for EnableReplicaTrigger {
21123 #[inline]
21124 fn can_cast(kind: SyntaxKind) -> bool {
21125 kind == SyntaxKind::ENABLE_REPLICA_TRIGGER
21126 }
21127 #[inline]
21128 fn cast(syntax: SyntaxNode) -> Option<Self> {
21129 if Self::can_cast(syntax.kind()) {
21130 Some(Self { syntax })
21131 } else {
21132 None
21133 }
21134 }
21135 #[inline]
21136 fn syntax(&self) -> &SyntaxNode {
21137 &self.syntax
21138 }
21139}
21140impl AstNode for EnableRls {
21141 #[inline]
21142 fn can_cast(kind: SyntaxKind) -> bool {
21143 kind == SyntaxKind::ENABLE_RLS
21144 }
21145 #[inline]
21146 fn cast(syntax: SyntaxNode) -> Option<Self> {
21147 if Self::can_cast(syntax.kind()) {
21148 Some(Self { syntax })
21149 } else {
21150 None
21151 }
21152 }
21153 #[inline]
21154 fn syntax(&self) -> &SyntaxNode {
21155 &self.syntax
21156 }
21157}
21158impl AstNode for EnableRule {
21159 #[inline]
21160 fn can_cast(kind: SyntaxKind) -> bool {
21161 kind == SyntaxKind::ENABLE_RULE
21162 }
21163 #[inline]
21164 fn cast(syntax: SyntaxNode) -> Option<Self> {
21165 if Self::can_cast(syntax.kind()) {
21166 Some(Self { syntax })
21167 } else {
21168 None
21169 }
21170 }
21171 #[inline]
21172 fn syntax(&self) -> &SyntaxNode {
21173 &self.syntax
21174 }
21175}
21176impl AstNode for EnableTrigger {
21177 #[inline]
21178 fn can_cast(kind: SyntaxKind) -> bool {
21179 kind == SyntaxKind::ENABLE_TRIGGER
21180 }
21181 #[inline]
21182 fn cast(syntax: SyntaxNode) -> Option<Self> {
21183 if Self::can_cast(syntax.kind()) {
21184 Some(Self { syntax })
21185 } else {
21186 None
21187 }
21188 }
21189 #[inline]
21190 fn syntax(&self) -> &SyntaxNode {
21191 &self.syntax
21192 }
21193}
21194impl AstNode for Enforced {
21195 #[inline]
21196 fn can_cast(kind: SyntaxKind) -> bool {
21197 kind == SyntaxKind::ENFORCED
21198 }
21199 #[inline]
21200 fn cast(syntax: SyntaxNode) -> Option<Self> {
21201 if Self::can_cast(syntax.kind()) {
21202 Some(Self { syntax })
21203 } else {
21204 None
21205 }
21206 }
21207 #[inline]
21208 fn syntax(&self) -> &SyntaxNode {
21209 &self.syntax
21210 }
21211}
21212impl AstNode for EventTriggerWhen {
21213 #[inline]
21214 fn can_cast(kind: SyntaxKind) -> bool {
21215 kind == SyntaxKind::EVENT_TRIGGER_WHEN
21216 }
21217 #[inline]
21218 fn cast(syntax: SyntaxNode) -> Option<Self> {
21219 if Self::can_cast(syntax.kind()) {
21220 Some(Self { syntax })
21221 } else {
21222 None
21223 }
21224 }
21225 #[inline]
21226 fn syntax(&self) -> &SyntaxNode {
21227 &self.syntax
21228 }
21229}
21230impl AstNode for EventTriggerWhenClause {
21231 #[inline]
21232 fn can_cast(kind: SyntaxKind) -> bool {
21233 kind == SyntaxKind::EVENT_TRIGGER_WHEN_CLAUSE
21234 }
21235 #[inline]
21236 fn cast(syntax: SyntaxNode) -> Option<Self> {
21237 if Self::can_cast(syntax.kind()) {
21238 Some(Self { syntax })
21239 } else {
21240 None
21241 }
21242 }
21243 #[inline]
21244 fn syntax(&self) -> &SyntaxNode {
21245 &self.syntax
21246 }
21247}
21248impl AstNode for ExceptTables {
21249 #[inline]
21250 fn can_cast(kind: SyntaxKind) -> bool {
21251 kind == SyntaxKind::EXCEPT_TABLES
21252 }
21253 #[inline]
21254 fn cast(syntax: SyntaxNode) -> Option<Self> {
21255 if Self::can_cast(syntax.kind()) {
21256 Some(Self { syntax })
21257 } else {
21258 None
21259 }
21260 }
21261 #[inline]
21262 fn syntax(&self) -> &SyntaxNode {
21263 &self.syntax
21264 }
21265}
21266impl AstNode for ExcludeConstraint {
21267 #[inline]
21268 fn can_cast(kind: SyntaxKind) -> bool {
21269 kind == SyntaxKind::EXCLUDE_CONSTRAINT
21270 }
21271 #[inline]
21272 fn cast(syntax: SyntaxNode) -> Option<Self> {
21273 if Self::can_cast(syntax.kind()) {
21274 Some(Self { syntax })
21275 } else {
21276 None
21277 }
21278 }
21279 #[inline]
21280 fn syntax(&self) -> &SyntaxNode {
21281 &self.syntax
21282 }
21283}
21284impl AstNode for Execute {
21285 #[inline]
21286 fn can_cast(kind: SyntaxKind) -> bool {
21287 kind == SyntaxKind::EXECUTE
21288 }
21289 #[inline]
21290 fn cast(syntax: SyntaxNode) -> Option<Self> {
21291 if Self::can_cast(syntax.kind()) {
21292 Some(Self { syntax })
21293 } else {
21294 None
21295 }
21296 }
21297 #[inline]
21298 fn syntax(&self) -> &SyntaxNode {
21299 &self.syntax
21300 }
21301}
21302impl AstNode for ExistsFn {
21303 #[inline]
21304 fn can_cast(kind: SyntaxKind) -> bool {
21305 kind == SyntaxKind::EXISTS_FN
21306 }
21307 #[inline]
21308 fn cast(syntax: SyntaxNode) -> Option<Self> {
21309 if Self::can_cast(syntax.kind()) {
21310 Some(Self { syntax })
21311 } else {
21312 None
21313 }
21314 }
21315 #[inline]
21316 fn syntax(&self) -> &SyntaxNode {
21317 &self.syntax
21318 }
21319}
21320impl AstNode for Explain {
21321 #[inline]
21322 fn can_cast(kind: SyntaxKind) -> bool {
21323 kind == SyntaxKind::EXPLAIN
21324 }
21325 #[inline]
21326 fn cast(syntax: SyntaxNode) -> Option<Self> {
21327 if Self::can_cast(syntax.kind()) {
21328 Some(Self { syntax })
21329 } else {
21330 None
21331 }
21332 }
21333 #[inline]
21334 fn syntax(&self) -> &SyntaxNode {
21335 &self.syntax
21336 }
21337}
21338impl AstNode for ExprAsName {
21339 #[inline]
21340 fn can_cast(kind: SyntaxKind) -> bool {
21341 kind == SyntaxKind::EXPR_AS_NAME
21342 }
21343 #[inline]
21344 fn cast(syntax: SyntaxNode) -> Option<Self> {
21345 if Self::can_cast(syntax.kind()) {
21346 Some(Self { syntax })
21347 } else {
21348 None
21349 }
21350 }
21351 #[inline]
21352 fn syntax(&self) -> &SyntaxNode {
21353 &self.syntax
21354 }
21355}
21356impl AstNode for ExprType {
21357 #[inline]
21358 fn can_cast(kind: SyntaxKind) -> bool {
21359 kind == SyntaxKind::EXPR_TYPE
21360 }
21361 #[inline]
21362 fn cast(syntax: SyntaxNode) -> Option<Self> {
21363 if Self::can_cast(syntax.kind()) {
21364 Some(Self { syntax })
21365 } else {
21366 None
21367 }
21368 }
21369 #[inline]
21370 fn syntax(&self) -> &SyntaxNode {
21371 &self.syntax
21372 }
21373}
21374impl AstNode for ExtractFn {
21375 #[inline]
21376 fn can_cast(kind: SyntaxKind) -> bool {
21377 kind == SyntaxKind::EXTRACT_FN
21378 }
21379 #[inline]
21380 fn cast(syntax: SyntaxNode) -> Option<Self> {
21381 if Self::can_cast(syntax.kind()) {
21382 Some(Self { syntax })
21383 } else {
21384 None
21385 }
21386 }
21387 #[inline]
21388 fn syntax(&self) -> &SyntaxNode {
21389 &self.syntax
21390 }
21391}
21392impl AstNode for FatArrow {
21393 #[inline]
21394 fn can_cast(kind: SyntaxKind) -> bool {
21395 kind == SyntaxKind::FAT_ARROW
21396 }
21397 #[inline]
21398 fn cast(syntax: SyntaxNode) -> Option<Self> {
21399 if Self::can_cast(syntax.kind()) {
21400 Some(Self { syntax })
21401 } else {
21402 None
21403 }
21404 }
21405 #[inline]
21406 fn syntax(&self) -> &SyntaxNode {
21407 &self.syntax
21408 }
21409}
21410impl AstNode for FdwOption {
21411 #[inline]
21412 fn can_cast(kind: SyntaxKind) -> bool {
21413 kind == SyntaxKind::FDW_OPTION
21414 }
21415 #[inline]
21416 fn cast(syntax: SyntaxNode) -> Option<Self> {
21417 if Self::can_cast(syntax.kind()) {
21418 Some(Self { syntax })
21419 } else {
21420 None
21421 }
21422 }
21423 #[inline]
21424 fn syntax(&self) -> &SyntaxNode {
21425 &self.syntax
21426 }
21427}
21428impl AstNode for FdwOptionList {
21429 #[inline]
21430 fn can_cast(kind: SyntaxKind) -> bool {
21431 kind == SyntaxKind::FDW_OPTION_LIST
21432 }
21433 #[inline]
21434 fn cast(syntax: SyntaxNode) -> Option<Self> {
21435 if Self::can_cast(syntax.kind()) {
21436 Some(Self { syntax })
21437 } else {
21438 None
21439 }
21440 }
21441 #[inline]
21442 fn syntax(&self) -> &SyntaxNode {
21443 &self.syntax
21444 }
21445}
21446impl AstNode for Fetch {
21447 #[inline]
21448 fn can_cast(kind: SyntaxKind) -> bool {
21449 kind == SyntaxKind::FETCH
21450 }
21451 #[inline]
21452 fn cast(syntax: SyntaxNode) -> Option<Self> {
21453 if Self::can_cast(syntax.kind()) {
21454 Some(Self { syntax })
21455 } else {
21456 None
21457 }
21458 }
21459 #[inline]
21460 fn syntax(&self) -> &SyntaxNode {
21461 &self.syntax
21462 }
21463}
21464impl AstNode for FetchClause {
21465 #[inline]
21466 fn can_cast(kind: SyntaxKind) -> bool {
21467 kind == SyntaxKind::FETCH_CLAUSE
21468 }
21469 #[inline]
21470 fn cast(syntax: SyntaxNode) -> Option<Self> {
21471 if Self::can_cast(syntax.kind()) {
21472 Some(Self { syntax })
21473 } else {
21474 None
21475 }
21476 }
21477 #[inline]
21478 fn syntax(&self) -> &SyntaxNode {
21479 &self.syntax
21480 }
21481}
21482impl AstNode for FieldExpr {
21483 #[inline]
21484 fn can_cast(kind: SyntaxKind) -> bool {
21485 kind == SyntaxKind::FIELD_EXPR
21486 }
21487 #[inline]
21488 fn cast(syntax: SyntaxNode) -> Option<Self> {
21489 if Self::can_cast(syntax.kind()) {
21490 Some(Self { syntax })
21491 } else {
21492 None
21493 }
21494 }
21495 #[inline]
21496 fn syntax(&self) -> &SyntaxNode {
21497 &self.syntax
21498 }
21499}
21500impl AstNode for FilterClause {
21501 #[inline]
21502 fn can_cast(kind: SyntaxKind) -> bool {
21503 kind == SyntaxKind::FILTER_CLAUSE
21504 }
21505 #[inline]
21506 fn cast(syntax: SyntaxNode) -> Option<Self> {
21507 if Self::can_cast(syntax.kind()) {
21508 Some(Self { syntax })
21509 } else {
21510 None
21511 }
21512 }
21513 #[inline]
21514 fn syntax(&self) -> &SyntaxNode {
21515 &self.syntax
21516 }
21517}
21518impl AstNode for ForProvider {
21519 #[inline]
21520 fn can_cast(kind: SyntaxKind) -> bool {
21521 kind == SyntaxKind::FOR_PROVIDER
21522 }
21523 #[inline]
21524 fn cast(syntax: SyntaxNode) -> Option<Self> {
21525 if Self::can_cast(syntax.kind()) {
21526 Some(Self { syntax })
21527 } else {
21528 None
21529 }
21530 }
21531 #[inline]
21532 fn syntax(&self) -> &SyntaxNode {
21533 &self.syntax
21534 }
21535}
21536impl AstNode for ForceRls {
21537 #[inline]
21538 fn can_cast(kind: SyntaxKind) -> bool {
21539 kind == SyntaxKind::FORCE_RLS
21540 }
21541 #[inline]
21542 fn cast(syntax: SyntaxNode) -> Option<Self> {
21543 if Self::can_cast(syntax.kind()) {
21544 Some(Self { syntax })
21545 } else {
21546 None
21547 }
21548 }
21549 #[inline]
21550 fn syntax(&self) -> &SyntaxNode {
21551 &self.syntax
21552 }
21553}
21554impl AstNode for ForeignKeyConstraint {
21555 #[inline]
21556 fn can_cast(kind: SyntaxKind) -> bool {
21557 kind == SyntaxKind::FOREIGN_KEY_CONSTRAINT
21558 }
21559 #[inline]
21560 fn cast(syntax: SyntaxNode) -> Option<Self> {
21561 if Self::can_cast(syntax.kind()) {
21562 Some(Self { syntax })
21563 } else {
21564 None
21565 }
21566 }
21567 #[inline]
21568 fn syntax(&self) -> &SyntaxNode {
21569 &self.syntax
21570 }
21571}
21572impl AstNode for FrameClause {
21573 #[inline]
21574 fn can_cast(kind: SyntaxKind) -> bool {
21575 kind == SyntaxKind::FRAME_CLAUSE
21576 }
21577 #[inline]
21578 fn cast(syntax: SyntaxNode) -> Option<Self> {
21579 if Self::can_cast(syntax.kind()) {
21580 Some(Self { syntax })
21581 } else {
21582 None
21583 }
21584 }
21585 #[inline]
21586 fn syntax(&self) -> &SyntaxNode {
21587 &self.syntax
21588 }
21589}
21590impl AstNode for FromClause {
21591 #[inline]
21592 fn can_cast(kind: SyntaxKind) -> bool {
21593 kind == SyntaxKind::FROM_CLAUSE
21594 }
21595 #[inline]
21596 fn cast(syntax: SyntaxNode) -> Option<Self> {
21597 if Self::can_cast(syntax.kind()) {
21598 Some(Self { syntax })
21599 } else {
21600 None
21601 }
21602 }
21603 #[inline]
21604 fn syntax(&self) -> &SyntaxNode {
21605 &self.syntax
21606 }
21607}
21608impl AstNode for FromItem {
21609 #[inline]
21610 fn can_cast(kind: SyntaxKind) -> bool {
21611 kind == SyntaxKind::FROM_ITEM
21612 }
21613 #[inline]
21614 fn cast(syntax: SyntaxNode) -> Option<Self> {
21615 if Self::can_cast(syntax.kind()) {
21616 Some(Self { syntax })
21617 } else {
21618 None
21619 }
21620 }
21621 #[inline]
21622 fn syntax(&self) -> &SyntaxNode {
21623 &self.syntax
21624 }
21625}
21626impl AstNode for FromServer {
21627 #[inline]
21628 fn can_cast(kind: SyntaxKind) -> bool {
21629 kind == SyntaxKind::FROM_SERVER
21630 }
21631 #[inline]
21632 fn cast(syntax: SyntaxNode) -> Option<Self> {
21633 if Self::can_cast(syntax.kind()) {
21634 Some(Self { syntax })
21635 } else {
21636 None
21637 }
21638 }
21639 #[inline]
21640 fn syntax(&self) -> &SyntaxNode {
21641 &self.syntax
21642 }
21643}
21644impl AstNode for FromTable {
21645 #[inline]
21646 fn can_cast(kind: SyntaxKind) -> bool {
21647 kind == SyntaxKind::FROM_TABLE
21648 }
21649 #[inline]
21650 fn cast(syntax: SyntaxNode) -> Option<Self> {
21651 if Self::can_cast(syntax.kind()) {
21652 Some(Self { syntax })
21653 } else {
21654 None
21655 }
21656 }
21657 #[inline]
21658 fn syntax(&self) -> &SyntaxNode {
21659 &self.syntax
21660 }
21661}
21662impl AstNode for FuncOptionList {
21663 #[inline]
21664 fn can_cast(kind: SyntaxKind) -> bool {
21665 kind == SyntaxKind::FUNC_OPTION_LIST
21666 }
21667 #[inline]
21668 fn cast(syntax: SyntaxNode) -> Option<Self> {
21669 if Self::can_cast(syntax.kind()) {
21670 Some(Self { syntax })
21671 } else {
21672 None
21673 }
21674 }
21675 #[inline]
21676 fn syntax(&self) -> &SyntaxNode {
21677 &self.syntax
21678 }
21679}
21680impl AstNode for FunctionSig {
21681 #[inline]
21682 fn can_cast(kind: SyntaxKind) -> bool {
21683 kind == SyntaxKind::FUNCTION_SIG
21684 }
21685 #[inline]
21686 fn cast(syntax: SyntaxNode) -> Option<Self> {
21687 if Self::can_cast(syntax.kind()) {
21688 Some(Self { syntax })
21689 } else {
21690 None
21691 }
21692 }
21693 #[inline]
21694 fn syntax(&self) -> &SyntaxNode {
21695 &self.syntax
21696 }
21697}
21698impl AstNode for FunctionSigList {
21699 #[inline]
21700 fn can_cast(kind: SyntaxKind) -> bool {
21701 kind == SyntaxKind::FUNCTION_SIG_LIST
21702 }
21703 #[inline]
21704 fn cast(syntax: SyntaxNode) -> Option<Self> {
21705 if Self::can_cast(syntax.kind()) {
21706 Some(Self { syntax })
21707 } else {
21708 None
21709 }
21710 }
21711 #[inline]
21712 fn syntax(&self) -> &SyntaxNode {
21713 &self.syntax
21714 }
21715}
21716impl AstNode for GeneratedConstraint {
21717 #[inline]
21718 fn can_cast(kind: SyntaxKind) -> bool {
21719 kind == SyntaxKind::GENERATED_CONSTRAINT
21720 }
21721 #[inline]
21722 fn cast(syntax: SyntaxNode) -> Option<Self> {
21723 if Self::can_cast(syntax.kind()) {
21724 Some(Self { syntax })
21725 } else {
21726 None
21727 }
21728 }
21729 #[inline]
21730 fn syntax(&self) -> &SyntaxNode {
21731 &self.syntax
21732 }
21733}
21734impl AstNode for Grant {
21735 #[inline]
21736 fn can_cast(kind: SyntaxKind) -> bool {
21737 kind == SyntaxKind::GRANT
21738 }
21739 #[inline]
21740 fn cast(syntax: SyntaxNode) -> Option<Self> {
21741 if Self::can_cast(syntax.kind()) {
21742 Some(Self { syntax })
21743 } else {
21744 None
21745 }
21746 }
21747 #[inline]
21748 fn syntax(&self) -> &SyntaxNode {
21749 &self.syntax
21750 }
21751}
21752impl AstNode for GrantDefaultPrivileges {
21753 #[inline]
21754 fn can_cast(kind: SyntaxKind) -> bool {
21755 kind == SyntaxKind::GRANT_DEFAULT_PRIVILEGES
21756 }
21757 #[inline]
21758 fn cast(syntax: SyntaxNode) -> Option<Self> {
21759 if Self::can_cast(syntax.kind()) {
21760 Some(Self { syntax })
21761 } else {
21762 None
21763 }
21764 }
21765 #[inline]
21766 fn syntax(&self) -> &SyntaxNode {
21767 &self.syntax
21768 }
21769}
21770impl AstNode for GroupByClause {
21771 #[inline]
21772 fn can_cast(kind: SyntaxKind) -> bool {
21773 kind == SyntaxKind::GROUP_BY_CLAUSE
21774 }
21775 #[inline]
21776 fn cast(syntax: SyntaxNode) -> Option<Self> {
21777 if Self::can_cast(syntax.kind()) {
21778 Some(Self { syntax })
21779 } else {
21780 None
21781 }
21782 }
21783 #[inline]
21784 fn syntax(&self) -> &SyntaxNode {
21785 &self.syntax
21786 }
21787}
21788impl AstNode for GroupByList {
21789 #[inline]
21790 fn can_cast(kind: SyntaxKind) -> bool {
21791 kind == SyntaxKind::GROUP_BY_LIST
21792 }
21793 #[inline]
21794 fn cast(syntax: SyntaxNode) -> Option<Self> {
21795 if Self::can_cast(syntax.kind()) {
21796 Some(Self { syntax })
21797 } else {
21798 None
21799 }
21800 }
21801 #[inline]
21802 fn syntax(&self) -> &SyntaxNode {
21803 &self.syntax
21804 }
21805}
21806impl AstNode for GroupingCube {
21807 #[inline]
21808 fn can_cast(kind: SyntaxKind) -> bool {
21809 kind == SyntaxKind::GROUPING_CUBE
21810 }
21811 #[inline]
21812 fn cast(syntax: SyntaxNode) -> Option<Self> {
21813 if Self::can_cast(syntax.kind()) {
21814 Some(Self { syntax })
21815 } else {
21816 None
21817 }
21818 }
21819 #[inline]
21820 fn syntax(&self) -> &SyntaxNode {
21821 &self.syntax
21822 }
21823}
21824impl AstNode for GroupingExpr {
21825 #[inline]
21826 fn can_cast(kind: SyntaxKind) -> bool {
21827 kind == SyntaxKind::GROUPING_EXPR
21828 }
21829 #[inline]
21830 fn cast(syntax: SyntaxNode) -> Option<Self> {
21831 if Self::can_cast(syntax.kind()) {
21832 Some(Self { syntax })
21833 } else {
21834 None
21835 }
21836 }
21837 #[inline]
21838 fn syntax(&self) -> &SyntaxNode {
21839 &self.syntax
21840 }
21841}
21842impl AstNode for GroupingRollup {
21843 #[inline]
21844 fn can_cast(kind: SyntaxKind) -> bool {
21845 kind == SyntaxKind::GROUPING_ROLLUP
21846 }
21847 #[inline]
21848 fn cast(syntax: SyntaxNode) -> Option<Self> {
21849 if Self::can_cast(syntax.kind()) {
21850 Some(Self { syntax })
21851 } else {
21852 None
21853 }
21854 }
21855 #[inline]
21856 fn syntax(&self) -> &SyntaxNode {
21857 &self.syntax
21858 }
21859}
21860impl AstNode for GroupingSets {
21861 #[inline]
21862 fn can_cast(kind: SyntaxKind) -> bool {
21863 kind == SyntaxKind::GROUPING_SETS
21864 }
21865 #[inline]
21866 fn cast(syntax: SyntaxNode) -> Option<Self> {
21867 if Self::can_cast(syntax.kind()) {
21868 Some(Self { syntax })
21869 } else {
21870 None
21871 }
21872 }
21873 #[inline]
21874 fn syntax(&self) -> &SyntaxNode {
21875 &self.syntax
21876 }
21877}
21878impl AstNode for Gteq {
21879 #[inline]
21880 fn can_cast(kind: SyntaxKind) -> bool {
21881 kind == SyntaxKind::GTEQ
21882 }
21883 #[inline]
21884 fn cast(syntax: SyntaxNode) -> Option<Self> {
21885 if Self::can_cast(syntax.kind()) {
21886 Some(Self { syntax })
21887 } else {
21888 None
21889 }
21890 }
21891 #[inline]
21892 fn syntax(&self) -> &SyntaxNode {
21893 &self.syntax
21894 }
21895}
21896impl AstNode for HandlerClause {
21897 #[inline]
21898 fn can_cast(kind: SyntaxKind) -> bool {
21899 kind == SyntaxKind::HANDLER_CLAUSE
21900 }
21901 #[inline]
21902 fn cast(syntax: SyntaxNode) -> Option<Self> {
21903 if Self::can_cast(syntax.kind()) {
21904 Some(Self { syntax })
21905 } else {
21906 None
21907 }
21908 }
21909 #[inline]
21910 fn syntax(&self) -> &SyntaxNode {
21911 &self.syntax
21912 }
21913}
21914impl AstNode for HavingClause {
21915 #[inline]
21916 fn can_cast(kind: SyntaxKind) -> bool {
21917 kind == SyntaxKind::HAVING_CLAUSE
21918 }
21919 #[inline]
21920 fn cast(syntax: SyntaxNode) -> Option<Self> {
21921 if Self::can_cast(syntax.kind()) {
21922 Some(Self { syntax })
21923 } else {
21924 None
21925 }
21926 }
21927 #[inline]
21928 fn syntax(&self) -> &SyntaxNode {
21929 &self.syntax
21930 }
21931}
21932impl AstNode for IfExists {
21933 #[inline]
21934 fn can_cast(kind: SyntaxKind) -> bool {
21935 kind == SyntaxKind::IF_EXISTS
21936 }
21937 #[inline]
21938 fn cast(syntax: SyntaxNode) -> Option<Self> {
21939 if Self::can_cast(syntax.kind()) {
21940 Some(Self { syntax })
21941 } else {
21942 None
21943 }
21944 }
21945 #[inline]
21946 fn syntax(&self) -> &SyntaxNode {
21947 &self.syntax
21948 }
21949}
21950impl AstNode for IfNotExists {
21951 #[inline]
21952 fn can_cast(kind: SyntaxKind) -> bool {
21953 kind == SyntaxKind::IF_NOT_EXISTS
21954 }
21955 #[inline]
21956 fn cast(syntax: SyntaxNode) -> Option<Self> {
21957 if Self::can_cast(syntax.kind()) {
21958 Some(Self { syntax })
21959 } else {
21960 None
21961 }
21962 }
21963 #[inline]
21964 fn syntax(&self) -> &SyntaxNode {
21965 &self.syntax
21966 }
21967}
21968impl AstNode for ImportForeignSchema {
21969 #[inline]
21970 fn can_cast(kind: SyntaxKind) -> bool {
21971 kind == SyntaxKind::IMPORT_FOREIGN_SCHEMA
21972 }
21973 #[inline]
21974 fn cast(syntax: SyntaxNode) -> Option<Self> {
21975 if Self::can_cast(syntax.kind()) {
21976 Some(Self { syntax })
21977 } else {
21978 None
21979 }
21980 }
21981 #[inline]
21982 fn syntax(&self) -> &SyntaxNode {
21983 &self.syntax
21984 }
21985}
21986impl AstNode for IndexExpr {
21987 #[inline]
21988 fn can_cast(kind: SyntaxKind) -> bool {
21989 kind == SyntaxKind::INDEX_EXPR
21990 }
21991 #[inline]
21992 fn cast(syntax: SyntaxNode) -> Option<Self> {
21993 if Self::can_cast(syntax.kind()) {
21994 Some(Self { syntax })
21995 } else {
21996 None
21997 }
21998 }
21999 #[inline]
22000 fn syntax(&self) -> &SyntaxNode {
22001 &self.syntax
22002 }
22003}
22004impl AstNode for Inherit {
22005 #[inline]
22006 fn can_cast(kind: SyntaxKind) -> bool {
22007 kind == SyntaxKind::INHERIT
22008 }
22009 #[inline]
22010 fn cast(syntax: SyntaxNode) -> Option<Self> {
22011 if Self::can_cast(syntax.kind()) {
22012 Some(Self { syntax })
22013 } else {
22014 None
22015 }
22016 }
22017 #[inline]
22018 fn syntax(&self) -> &SyntaxNode {
22019 &self.syntax
22020 }
22021}
22022impl AstNode for InheritTable {
22023 #[inline]
22024 fn can_cast(kind: SyntaxKind) -> bool {
22025 kind == SyntaxKind::INHERIT_TABLE
22026 }
22027 #[inline]
22028 fn cast(syntax: SyntaxNode) -> Option<Self> {
22029 if Self::can_cast(syntax.kind()) {
22030 Some(Self { syntax })
22031 } else {
22032 None
22033 }
22034 }
22035 #[inline]
22036 fn syntax(&self) -> &SyntaxNode {
22037 &self.syntax
22038 }
22039}
22040impl AstNode for Inherits {
22041 #[inline]
22042 fn can_cast(kind: SyntaxKind) -> bool {
22043 kind == SyntaxKind::INHERITS
22044 }
22045 #[inline]
22046 fn cast(syntax: SyntaxNode) -> Option<Self> {
22047 if Self::can_cast(syntax.kind()) {
22048 Some(Self { syntax })
22049 } else {
22050 None
22051 }
22052 }
22053 #[inline]
22054 fn syntax(&self) -> &SyntaxNode {
22055 &self.syntax
22056 }
22057}
22058impl AstNode for InitiallyDeferredConstraintOption {
22059 #[inline]
22060 fn can_cast(kind: SyntaxKind) -> bool {
22061 kind == SyntaxKind::INITIALLY_DEFERRED_CONSTRAINT_OPTION
22062 }
22063 #[inline]
22064 fn cast(syntax: SyntaxNode) -> Option<Self> {
22065 if Self::can_cast(syntax.kind()) {
22066 Some(Self { syntax })
22067 } else {
22068 None
22069 }
22070 }
22071 #[inline]
22072 fn syntax(&self) -> &SyntaxNode {
22073 &self.syntax
22074 }
22075}
22076impl AstNode for InitiallyImmediateConstraintOption {
22077 #[inline]
22078 fn can_cast(kind: SyntaxKind) -> bool {
22079 kind == SyntaxKind::INITIALLY_IMMEDIATE_CONSTRAINT_OPTION
22080 }
22081 #[inline]
22082 fn cast(syntax: SyntaxNode) -> Option<Self> {
22083 if Self::can_cast(syntax.kind()) {
22084 Some(Self { syntax })
22085 } else {
22086 None
22087 }
22088 }
22089 #[inline]
22090 fn syntax(&self) -> &SyntaxNode {
22091 &self.syntax
22092 }
22093}
22094impl AstNode for Insert {
22095 #[inline]
22096 fn can_cast(kind: SyntaxKind) -> bool {
22097 kind == SyntaxKind::INSERT
22098 }
22099 #[inline]
22100 fn cast(syntax: SyntaxNode) -> Option<Self> {
22101 if Self::can_cast(syntax.kind()) {
22102 Some(Self { syntax })
22103 } else {
22104 None
22105 }
22106 }
22107 #[inline]
22108 fn syntax(&self) -> &SyntaxNode {
22109 &self.syntax
22110 }
22111}
22112impl AstNode for IntervalType {
22113 #[inline]
22114 fn can_cast(kind: SyntaxKind) -> bool {
22115 kind == SyntaxKind::INTERVAL_TYPE
22116 }
22117 #[inline]
22118 fn cast(syntax: SyntaxNode) -> Option<Self> {
22119 if Self::can_cast(syntax.kind()) {
22120 Some(Self { syntax })
22121 } else {
22122 None
22123 }
22124 }
22125 #[inline]
22126 fn syntax(&self) -> &SyntaxNode {
22127 &self.syntax
22128 }
22129}
22130impl AstNode for IntoClause {
22131 #[inline]
22132 fn can_cast(kind: SyntaxKind) -> bool {
22133 kind == SyntaxKind::INTO_CLAUSE
22134 }
22135 #[inline]
22136 fn cast(syntax: SyntaxNode) -> Option<Self> {
22137 if Self::can_cast(syntax.kind()) {
22138 Some(Self { syntax })
22139 } else {
22140 None
22141 }
22142 }
22143 #[inline]
22144 fn syntax(&self) -> &SyntaxNode {
22145 &self.syntax
22146 }
22147}
22148impl AstNode for IntoSchema {
22149 #[inline]
22150 fn can_cast(kind: SyntaxKind) -> bool {
22151 kind == SyntaxKind::INTO_SCHEMA
22152 }
22153 #[inline]
22154 fn cast(syntax: SyntaxNode) -> Option<Self> {
22155 if Self::can_cast(syntax.kind()) {
22156 Some(Self { syntax })
22157 } else {
22158 None
22159 }
22160 }
22161 #[inline]
22162 fn syntax(&self) -> &SyntaxNode {
22163 &self.syntax
22164 }
22165}
22166impl AstNode for IsDistinctFrom {
22167 #[inline]
22168 fn can_cast(kind: SyntaxKind) -> bool {
22169 kind == SyntaxKind::IS_DISTINCT_FROM
22170 }
22171 #[inline]
22172 fn cast(syntax: SyntaxNode) -> Option<Self> {
22173 if Self::can_cast(syntax.kind()) {
22174 Some(Self { syntax })
22175 } else {
22176 None
22177 }
22178 }
22179 #[inline]
22180 fn syntax(&self) -> &SyntaxNode {
22181 &self.syntax
22182 }
22183}
22184impl AstNode for IsJson {
22185 #[inline]
22186 fn can_cast(kind: SyntaxKind) -> bool {
22187 kind == SyntaxKind::IS_JSON
22188 }
22189 #[inline]
22190 fn cast(syntax: SyntaxNode) -> Option<Self> {
22191 if Self::can_cast(syntax.kind()) {
22192 Some(Self { syntax })
22193 } else {
22194 None
22195 }
22196 }
22197 #[inline]
22198 fn syntax(&self) -> &SyntaxNode {
22199 &self.syntax
22200 }
22201}
22202impl AstNode for IsJsonArray {
22203 #[inline]
22204 fn can_cast(kind: SyntaxKind) -> bool {
22205 kind == SyntaxKind::IS_JSON_ARRAY
22206 }
22207 #[inline]
22208 fn cast(syntax: SyntaxNode) -> Option<Self> {
22209 if Self::can_cast(syntax.kind()) {
22210 Some(Self { syntax })
22211 } else {
22212 None
22213 }
22214 }
22215 #[inline]
22216 fn syntax(&self) -> &SyntaxNode {
22217 &self.syntax
22218 }
22219}
22220impl AstNode for IsJsonObject {
22221 #[inline]
22222 fn can_cast(kind: SyntaxKind) -> bool {
22223 kind == SyntaxKind::IS_JSON_OBJECT
22224 }
22225 #[inline]
22226 fn cast(syntax: SyntaxNode) -> Option<Self> {
22227 if Self::can_cast(syntax.kind()) {
22228 Some(Self { syntax })
22229 } else {
22230 None
22231 }
22232 }
22233 #[inline]
22234 fn syntax(&self) -> &SyntaxNode {
22235 &self.syntax
22236 }
22237}
22238impl AstNode for IsJsonScalar {
22239 #[inline]
22240 fn can_cast(kind: SyntaxKind) -> bool {
22241 kind == SyntaxKind::IS_JSON_SCALAR
22242 }
22243 #[inline]
22244 fn cast(syntax: SyntaxNode) -> Option<Self> {
22245 if Self::can_cast(syntax.kind()) {
22246 Some(Self { syntax })
22247 } else {
22248 None
22249 }
22250 }
22251 #[inline]
22252 fn syntax(&self) -> &SyntaxNode {
22253 &self.syntax
22254 }
22255}
22256impl AstNode for IsJsonValue {
22257 #[inline]
22258 fn can_cast(kind: SyntaxKind) -> bool {
22259 kind == SyntaxKind::IS_JSON_VALUE
22260 }
22261 #[inline]
22262 fn cast(syntax: SyntaxNode) -> Option<Self> {
22263 if Self::can_cast(syntax.kind()) {
22264 Some(Self { syntax })
22265 } else {
22266 None
22267 }
22268 }
22269 #[inline]
22270 fn syntax(&self) -> &SyntaxNode {
22271 &self.syntax
22272 }
22273}
22274impl AstNode for IsNormalized {
22275 #[inline]
22276 fn can_cast(kind: SyntaxKind) -> bool {
22277 kind == SyntaxKind::IS_NORMALIZED
22278 }
22279 #[inline]
22280 fn cast(syntax: SyntaxNode) -> Option<Self> {
22281 if Self::can_cast(syntax.kind()) {
22282 Some(Self { syntax })
22283 } else {
22284 None
22285 }
22286 }
22287 #[inline]
22288 fn syntax(&self) -> &SyntaxNode {
22289 &self.syntax
22290 }
22291}
22292impl AstNode for IsNot {
22293 #[inline]
22294 fn can_cast(kind: SyntaxKind) -> bool {
22295 kind == SyntaxKind::IS_NOT
22296 }
22297 #[inline]
22298 fn cast(syntax: SyntaxNode) -> Option<Self> {
22299 if Self::can_cast(syntax.kind()) {
22300 Some(Self { syntax })
22301 } else {
22302 None
22303 }
22304 }
22305 #[inline]
22306 fn syntax(&self) -> &SyntaxNode {
22307 &self.syntax
22308 }
22309}
22310impl AstNode for IsNotDistinctFrom {
22311 #[inline]
22312 fn can_cast(kind: SyntaxKind) -> bool {
22313 kind == SyntaxKind::IS_NOT_DISTINCT_FROM
22314 }
22315 #[inline]
22316 fn cast(syntax: SyntaxNode) -> Option<Self> {
22317 if Self::can_cast(syntax.kind()) {
22318 Some(Self { syntax })
22319 } else {
22320 None
22321 }
22322 }
22323 #[inline]
22324 fn syntax(&self) -> &SyntaxNode {
22325 &self.syntax
22326 }
22327}
22328impl AstNode for IsNotJson {
22329 #[inline]
22330 fn can_cast(kind: SyntaxKind) -> bool {
22331 kind == SyntaxKind::IS_NOT_JSON
22332 }
22333 #[inline]
22334 fn cast(syntax: SyntaxNode) -> Option<Self> {
22335 if Self::can_cast(syntax.kind()) {
22336 Some(Self { syntax })
22337 } else {
22338 None
22339 }
22340 }
22341 #[inline]
22342 fn syntax(&self) -> &SyntaxNode {
22343 &self.syntax
22344 }
22345}
22346impl AstNode for IsNotJsonArray {
22347 #[inline]
22348 fn can_cast(kind: SyntaxKind) -> bool {
22349 kind == SyntaxKind::IS_NOT_JSON_ARRAY
22350 }
22351 #[inline]
22352 fn cast(syntax: SyntaxNode) -> Option<Self> {
22353 if Self::can_cast(syntax.kind()) {
22354 Some(Self { syntax })
22355 } else {
22356 None
22357 }
22358 }
22359 #[inline]
22360 fn syntax(&self) -> &SyntaxNode {
22361 &self.syntax
22362 }
22363}
22364impl AstNode for IsNotJsonObject {
22365 #[inline]
22366 fn can_cast(kind: SyntaxKind) -> bool {
22367 kind == SyntaxKind::IS_NOT_JSON_OBJECT
22368 }
22369 #[inline]
22370 fn cast(syntax: SyntaxNode) -> Option<Self> {
22371 if Self::can_cast(syntax.kind()) {
22372 Some(Self { syntax })
22373 } else {
22374 None
22375 }
22376 }
22377 #[inline]
22378 fn syntax(&self) -> &SyntaxNode {
22379 &self.syntax
22380 }
22381}
22382impl AstNode for IsNotJsonScalar {
22383 #[inline]
22384 fn can_cast(kind: SyntaxKind) -> bool {
22385 kind == SyntaxKind::IS_NOT_JSON_SCALAR
22386 }
22387 #[inline]
22388 fn cast(syntax: SyntaxNode) -> Option<Self> {
22389 if Self::can_cast(syntax.kind()) {
22390 Some(Self { syntax })
22391 } else {
22392 None
22393 }
22394 }
22395 #[inline]
22396 fn syntax(&self) -> &SyntaxNode {
22397 &self.syntax
22398 }
22399}
22400impl AstNode for IsNotJsonValue {
22401 #[inline]
22402 fn can_cast(kind: SyntaxKind) -> bool {
22403 kind == SyntaxKind::IS_NOT_JSON_VALUE
22404 }
22405 #[inline]
22406 fn cast(syntax: SyntaxNode) -> Option<Self> {
22407 if Self::can_cast(syntax.kind()) {
22408 Some(Self { syntax })
22409 } else {
22410 None
22411 }
22412 }
22413 #[inline]
22414 fn syntax(&self) -> &SyntaxNode {
22415 &self.syntax
22416 }
22417}
22418impl AstNode for IsNotNormalized {
22419 #[inline]
22420 fn can_cast(kind: SyntaxKind) -> bool {
22421 kind == SyntaxKind::IS_NOT_NORMALIZED
22422 }
22423 #[inline]
22424 fn cast(syntax: SyntaxNode) -> Option<Self> {
22425 if Self::can_cast(syntax.kind()) {
22426 Some(Self { syntax })
22427 } else {
22428 None
22429 }
22430 }
22431 #[inline]
22432 fn syntax(&self) -> &SyntaxNode {
22433 &self.syntax
22434 }
22435}
22436impl AstNode for Join {
22437 #[inline]
22438 fn can_cast(kind: SyntaxKind) -> bool {
22439 kind == SyntaxKind::JOIN
22440 }
22441 #[inline]
22442 fn cast(syntax: SyntaxNode) -> Option<Self> {
22443 if Self::can_cast(syntax.kind()) {
22444 Some(Self { syntax })
22445 } else {
22446 None
22447 }
22448 }
22449 #[inline]
22450 fn syntax(&self) -> &SyntaxNode {
22451 &self.syntax
22452 }
22453}
22454impl AstNode for JoinCross {
22455 #[inline]
22456 fn can_cast(kind: SyntaxKind) -> bool {
22457 kind == SyntaxKind::JOIN_CROSS
22458 }
22459 #[inline]
22460 fn cast(syntax: SyntaxNode) -> Option<Self> {
22461 if Self::can_cast(syntax.kind()) {
22462 Some(Self { syntax })
22463 } else {
22464 None
22465 }
22466 }
22467 #[inline]
22468 fn syntax(&self) -> &SyntaxNode {
22469 &self.syntax
22470 }
22471}
22472impl AstNode for JoinExpr {
22473 #[inline]
22474 fn can_cast(kind: SyntaxKind) -> bool {
22475 kind == SyntaxKind::JOIN_EXPR
22476 }
22477 #[inline]
22478 fn cast(syntax: SyntaxNode) -> Option<Self> {
22479 if Self::can_cast(syntax.kind()) {
22480 Some(Self { syntax })
22481 } else {
22482 None
22483 }
22484 }
22485 #[inline]
22486 fn syntax(&self) -> &SyntaxNode {
22487 &self.syntax
22488 }
22489}
22490impl AstNode for JoinFull {
22491 #[inline]
22492 fn can_cast(kind: SyntaxKind) -> bool {
22493 kind == SyntaxKind::JOIN_FULL
22494 }
22495 #[inline]
22496 fn cast(syntax: SyntaxNode) -> Option<Self> {
22497 if Self::can_cast(syntax.kind()) {
22498 Some(Self { syntax })
22499 } else {
22500 None
22501 }
22502 }
22503 #[inline]
22504 fn syntax(&self) -> &SyntaxNode {
22505 &self.syntax
22506 }
22507}
22508impl AstNode for JoinInner {
22509 #[inline]
22510 fn can_cast(kind: SyntaxKind) -> bool {
22511 kind == SyntaxKind::JOIN_INNER
22512 }
22513 #[inline]
22514 fn cast(syntax: SyntaxNode) -> Option<Self> {
22515 if Self::can_cast(syntax.kind()) {
22516 Some(Self { syntax })
22517 } else {
22518 None
22519 }
22520 }
22521 #[inline]
22522 fn syntax(&self) -> &SyntaxNode {
22523 &self.syntax
22524 }
22525}
22526impl AstNode for JoinLeft {
22527 #[inline]
22528 fn can_cast(kind: SyntaxKind) -> bool {
22529 kind == SyntaxKind::JOIN_LEFT
22530 }
22531 #[inline]
22532 fn cast(syntax: SyntaxNode) -> Option<Self> {
22533 if Self::can_cast(syntax.kind()) {
22534 Some(Self { syntax })
22535 } else {
22536 None
22537 }
22538 }
22539 #[inline]
22540 fn syntax(&self) -> &SyntaxNode {
22541 &self.syntax
22542 }
22543}
22544impl AstNode for JoinRight {
22545 #[inline]
22546 fn can_cast(kind: SyntaxKind) -> bool {
22547 kind == SyntaxKind::JOIN_RIGHT
22548 }
22549 #[inline]
22550 fn cast(syntax: SyntaxNode) -> Option<Self> {
22551 if Self::can_cast(syntax.kind()) {
22552 Some(Self { syntax })
22553 } else {
22554 None
22555 }
22556 }
22557 #[inline]
22558 fn syntax(&self) -> &SyntaxNode {
22559 &self.syntax
22560 }
22561}
22562impl AstNode for JoinUsingClause {
22563 #[inline]
22564 fn can_cast(kind: SyntaxKind) -> bool {
22565 kind == SyntaxKind::JOIN_USING_CLAUSE
22566 }
22567 #[inline]
22568 fn cast(syntax: SyntaxNode) -> Option<Self> {
22569 if Self::can_cast(syntax.kind()) {
22570 Some(Self { syntax })
22571 } else {
22572 None
22573 }
22574 }
22575 #[inline]
22576 fn syntax(&self) -> &SyntaxNode {
22577 &self.syntax
22578 }
22579}
22580impl AstNode for JsonArrayAggFn {
22581 #[inline]
22582 fn can_cast(kind: SyntaxKind) -> bool {
22583 kind == SyntaxKind::JSON_ARRAY_AGG_FN
22584 }
22585 #[inline]
22586 fn cast(syntax: SyntaxNode) -> Option<Self> {
22587 if Self::can_cast(syntax.kind()) {
22588 Some(Self { syntax })
22589 } else {
22590 None
22591 }
22592 }
22593 #[inline]
22594 fn syntax(&self) -> &SyntaxNode {
22595 &self.syntax
22596 }
22597}
22598impl AstNode for JsonArrayFn {
22599 #[inline]
22600 fn can_cast(kind: SyntaxKind) -> bool {
22601 kind == SyntaxKind::JSON_ARRAY_FN
22602 }
22603 #[inline]
22604 fn cast(syntax: SyntaxNode) -> Option<Self> {
22605 if Self::can_cast(syntax.kind()) {
22606 Some(Self { syntax })
22607 } else {
22608 None
22609 }
22610 }
22611 #[inline]
22612 fn syntax(&self) -> &SyntaxNode {
22613 &self.syntax
22614 }
22615}
22616impl AstNode for JsonBehaviorClause {
22617 #[inline]
22618 fn can_cast(kind: SyntaxKind) -> bool {
22619 kind == SyntaxKind::JSON_BEHAVIOR_CLAUSE
22620 }
22621 #[inline]
22622 fn cast(syntax: SyntaxNode) -> Option<Self> {
22623 if Self::can_cast(syntax.kind()) {
22624 Some(Self { syntax })
22625 } else {
22626 None
22627 }
22628 }
22629 #[inline]
22630 fn syntax(&self) -> &SyntaxNode {
22631 &self.syntax
22632 }
22633}
22634impl AstNode for JsonBehaviorDefault {
22635 #[inline]
22636 fn can_cast(kind: SyntaxKind) -> bool {
22637 kind == SyntaxKind::JSON_BEHAVIOR_DEFAULT
22638 }
22639 #[inline]
22640 fn cast(syntax: SyntaxNode) -> Option<Self> {
22641 if Self::can_cast(syntax.kind()) {
22642 Some(Self { syntax })
22643 } else {
22644 None
22645 }
22646 }
22647 #[inline]
22648 fn syntax(&self) -> &SyntaxNode {
22649 &self.syntax
22650 }
22651}
22652impl AstNode for JsonBehaviorEmptyArray {
22653 #[inline]
22654 fn can_cast(kind: SyntaxKind) -> bool {
22655 kind == SyntaxKind::JSON_BEHAVIOR_EMPTY_ARRAY
22656 }
22657 #[inline]
22658 fn cast(syntax: SyntaxNode) -> Option<Self> {
22659 if Self::can_cast(syntax.kind()) {
22660 Some(Self { syntax })
22661 } else {
22662 None
22663 }
22664 }
22665 #[inline]
22666 fn syntax(&self) -> &SyntaxNode {
22667 &self.syntax
22668 }
22669}
22670impl AstNode for JsonBehaviorEmptyObject {
22671 #[inline]
22672 fn can_cast(kind: SyntaxKind) -> bool {
22673 kind == SyntaxKind::JSON_BEHAVIOR_EMPTY_OBJECT
22674 }
22675 #[inline]
22676 fn cast(syntax: SyntaxNode) -> Option<Self> {
22677 if Self::can_cast(syntax.kind()) {
22678 Some(Self { syntax })
22679 } else {
22680 None
22681 }
22682 }
22683 #[inline]
22684 fn syntax(&self) -> &SyntaxNode {
22685 &self.syntax
22686 }
22687}
22688impl AstNode for JsonBehaviorError {
22689 #[inline]
22690 fn can_cast(kind: SyntaxKind) -> bool {
22691 kind == SyntaxKind::JSON_BEHAVIOR_ERROR
22692 }
22693 #[inline]
22694 fn cast(syntax: SyntaxNode) -> Option<Self> {
22695 if Self::can_cast(syntax.kind()) {
22696 Some(Self { syntax })
22697 } else {
22698 None
22699 }
22700 }
22701 #[inline]
22702 fn syntax(&self) -> &SyntaxNode {
22703 &self.syntax
22704 }
22705}
22706impl AstNode for JsonBehaviorFalse {
22707 #[inline]
22708 fn can_cast(kind: SyntaxKind) -> bool {
22709 kind == SyntaxKind::JSON_BEHAVIOR_FALSE
22710 }
22711 #[inline]
22712 fn cast(syntax: SyntaxNode) -> Option<Self> {
22713 if Self::can_cast(syntax.kind()) {
22714 Some(Self { syntax })
22715 } else {
22716 None
22717 }
22718 }
22719 #[inline]
22720 fn syntax(&self) -> &SyntaxNode {
22721 &self.syntax
22722 }
22723}
22724impl AstNode for JsonBehaviorNull {
22725 #[inline]
22726 fn can_cast(kind: SyntaxKind) -> bool {
22727 kind == SyntaxKind::JSON_BEHAVIOR_NULL
22728 }
22729 #[inline]
22730 fn cast(syntax: SyntaxNode) -> Option<Self> {
22731 if Self::can_cast(syntax.kind()) {
22732 Some(Self { syntax })
22733 } else {
22734 None
22735 }
22736 }
22737 #[inline]
22738 fn syntax(&self) -> &SyntaxNode {
22739 &self.syntax
22740 }
22741}
22742impl AstNode for JsonBehaviorTrue {
22743 #[inline]
22744 fn can_cast(kind: SyntaxKind) -> bool {
22745 kind == SyntaxKind::JSON_BEHAVIOR_TRUE
22746 }
22747 #[inline]
22748 fn cast(syntax: SyntaxNode) -> Option<Self> {
22749 if Self::can_cast(syntax.kind()) {
22750 Some(Self { syntax })
22751 } else {
22752 None
22753 }
22754 }
22755 #[inline]
22756 fn syntax(&self) -> &SyntaxNode {
22757 &self.syntax
22758 }
22759}
22760impl AstNode for JsonBehaviorUnknown {
22761 #[inline]
22762 fn can_cast(kind: SyntaxKind) -> bool {
22763 kind == SyntaxKind::JSON_BEHAVIOR_UNKNOWN
22764 }
22765 #[inline]
22766 fn cast(syntax: SyntaxNode) -> Option<Self> {
22767 if Self::can_cast(syntax.kind()) {
22768 Some(Self { syntax })
22769 } else {
22770 None
22771 }
22772 }
22773 #[inline]
22774 fn syntax(&self) -> &SyntaxNode {
22775 &self.syntax
22776 }
22777}
22778impl AstNode for JsonEncodingClause {
22779 #[inline]
22780 fn can_cast(kind: SyntaxKind) -> bool {
22781 kind == SyntaxKind::JSON_ENCODING_CLAUSE
22782 }
22783 #[inline]
22784 fn cast(syntax: SyntaxNode) -> Option<Self> {
22785 if Self::can_cast(syntax.kind()) {
22786 Some(Self { syntax })
22787 } else {
22788 None
22789 }
22790 }
22791 #[inline]
22792 fn syntax(&self) -> &SyntaxNode {
22793 &self.syntax
22794 }
22795}
22796impl AstNode for JsonExistsFn {
22797 #[inline]
22798 fn can_cast(kind: SyntaxKind) -> bool {
22799 kind == SyntaxKind::JSON_EXISTS_FN
22800 }
22801 #[inline]
22802 fn cast(syntax: SyntaxNode) -> Option<Self> {
22803 if Self::can_cast(syntax.kind()) {
22804 Some(Self { syntax })
22805 } else {
22806 None
22807 }
22808 }
22809 #[inline]
22810 fn syntax(&self) -> &SyntaxNode {
22811 &self.syntax
22812 }
22813}
22814impl AstNode for JsonExprFormat {
22815 #[inline]
22816 fn can_cast(kind: SyntaxKind) -> bool {
22817 kind == SyntaxKind::JSON_EXPR_FORMAT
22818 }
22819 #[inline]
22820 fn cast(syntax: SyntaxNode) -> Option<Self> {
22821 if Self::can_cast(syntax.kind()) {
22822 Some(Self { syntax })
22823 } else {
22824 None
22825 }
22826 }
22827 #[inline]
22828 fn syntax(&self) -> &SyntaxNode {
22829 &self.syntax
22830 }
22831}
22832impl AstNode for JsonFn {
22833 #[inline]
22834 fn can_cast(kind: SyntaxKind) -> bool {
22835 kind == SyntaxKind::JSON_FN
22836 }
22837 #[inline]
22838 fn cast(syntax: SyntaxNode) -> Option<Self> {
22839 if Self::can_cast(syntax.kind()) {
22840 Some(Self { syntax })
22841 } else {
22842 None
22843 }
22844 }
22845 #[inline]
22846 fn syntax(&self) -> &SyntaxNode {
22847 &self.syntax
22848 }
22849}
22850impl AstNode for JsonFormatClause {
22851 #[inline]
22852 fn can_cast(kind: SyntaxKind) -> bool {
22853 kind == SyntaxKind::JSON_FORMAT_CLAUSE
22854 }
22855 #[inline]
22856 fn cast(syntax: SyntaxNode) -> Option<Self> {
22857 if Self::can_cast(syntax.kind()) {
22858 Some(Self { syntax })
22859 } else {
22860 None
22861 }
22862 }
22863 #[inline]
22864 fn syntax(&self) -> &SyntaxNode {
22865 &self.syntax
22866 }
22867}
22868impl AstNode for JsonKeyValue {
22869 #[inline]
22870 fn can_cast(kind: SyntaxKind) -> bool {
22871 kind == SyntaxKind::JSON_KEY_VALUE
22872 }
22873 #[inline]
22874 fn cast(syntax: SyntaxNode) -> Option<Self> {
22875 if Self::can_cast(syntax.kind()) {
22876 Some(Self { syntax })
22877 } else {
22878 None
22879 }
22880 }
22881 #[inline]
22882 fn syntax(&self) -> &SyntaxNode {
22883 &self.syntax
22884 }
22885}
22886impl AstNode for JsonKeysUniqueClause {
22887 #[inline]
22888 fn can_cast(kind: SyntaxKind) -> bool {
22889 kind == SyntaxKind::JSON_KEYS_UNIQUE_CLAUSE
22890 }
22891 #[inline]
22892 fn cast(syntax: SyntaxNode) -> Option<Self> {
22893 if Self::can_cast(syntax.kind()) {
22894 Some(Self { syntax })
22895 } else {
22896 None
22897 }
22898 }
22899 #[inline]
22900 fn syntax(&self) -> &SyntaxNode {
22901 &self.syntax
22902 }
22903}
22904impl AstNode for JsonNullClause {
22905 #[inline]
22906 fn can_cast(kind: SyntaxKind) -> bool {
22907 kind == SyntaxKind::JSON_NULL_CLAUSE
22908 }
22909 #[inline]
22910 fn cast(syntax: SyntaxNode) -> Option<Self> {
22911 if Self::can_cast(syntax.kind()) {
22912 Some(Self { syntax })
22913 } else {
22914 None
22915 }
22916 }
22917 #[inline]
22918 fn syntax(&self) -> &SyntaxNode {
22919 &self.syntax
22920 }
22921}
22922impl AstNode for JsonObjectAggFn {
22923 #[inline]
22924 fn can_cast(kind: SyntaxKind) -> bool {
22925 kind == SyntaxKind::JSON_OBJECT_AGG_FN
22926 }
22927 #[inline]
22928 fn cast(syntax: SyntaxNode) -> Option<Self> {
22929 if Self::can_cast(syntax.kind()) {
22930 Some(Self { syntax })
22931 } else {
22932 None
22933 }
22934 }
22935 #[inline]
22936 fn syntax(&self) -> &SyntaxNode {
22937 &self.syntax
22938 }
22939}
22940impl AstNode for JsonObjectFn {
22941 #[inline]
22942 fn can_cast(kind: SyntaxKind) -> bool {
22943 kind == SyntaxKind::JSON_OBJECT_FN
22944 }
22945 #[inline]
22946 fn cast(syntax: SyntaxNode) -> Option<Self> {
22947 if Self::can_cast(syntax.kind()) {
22948 Some(Self { syntax })
22949 } else {
22950 None
22951 }
22952 }
22953 #[inline]
22954 fn syntax(&self) -> &SyntaxNode {
22955 &self.syntax
22956 }
22957}
22958impl AstNode for JsonOnEmptyClause {
22959 #[inline]
22960 fn can_cast(kind: SyntaxKind) -> bool {
22961 kind == SyntaxKind::JSON_ON_EMPTY_CLAUSE
22962 }
22963 #[inline]
22964 fn cast(syntax: SyntaxNode) -> Option<Self> {
22965 if Self::can_cast(syntax.kind()) {
22966 Some(Self { syntax })
22967 } else {
22968 None
22969 }
22970 }
22971 #[inline]
22972 fn syntax(&self) -> &SyntaxNode {
22973 &self.syntax
22974 }
22975}
22976impl AstNode for JsonOnErrorClause {
22977 #[inline]
22978 fn can_cast(kind: SyntaxKind) -> bool {
22979 kind == SyntaxKind::JSON_ON_ERROR_CLAUSE
22980 }
22981 #[inline]
22982 fn cast(syntax: SyntaxNode) -> Option<Self> {
22983 if Self::can_cast(syntax.kind()) {
22984 Some(Self { syntax })
22985 } else {
22986 None
22987 }
22988 }
22989 #[inline]
22990 fn syntax(&self) -> &SyntaxNode {
22991 &self.syntax
22992 }
22993}
22994impl AstNode for JsonPassingArg {
22995 #[inline]
22996 fn can_cast(kind: SyntaxKind) -> bool {
22997 kind == SyntaxKind::JSON_PASSING_ARG
22998 }
22999 #[inline]
23000 fn cast(syntax: SyntaxNode) -> Option<Self> {
23001 if Self::can_cast(syntax.kind()) {
23002 Some(Self { syntax })
23003 } else {
23004 None
23005 }
23006 }
23007 #[inline]
23008 fn syntax(&self) -> &SyntaxNode {
23009 &self.syntax
23010 }
23011}
23012impl AstNode for JsonPassingClause {
23013 #[inline]
23014 fn can_cast(kind: SyntaxKind) -> bool {
23015 kind == SyntaxKind::JSON_PASSING_CLAUSE
23016 }
23017 #[inline]
23018 fn cast(syntax: SyntaxNode) -> Option<Self> {
23019 if Self::can_cast(syntax.kind()) {
23020 Some(Self { syntax })
23021 } else {
23022 None
23023 }
23024 }
23025 #[inline]
23026 fn syntax(&self) -> &SyntaxNode {
23027 &self.syntax
23028 }
23029}
23030impl AstNode for JsonPathClause {
23031 #[inline]
23032 fn can_cast(kind: SyntaxKind) -> bool {
23033 kind == SyntaxKind::JSON_PATH_CLAUSE
23034 }
23035 #[inline]
23036 fn cast(syntax: SyntaxNode) -> Option<Self> {
23037 if Self::can_cast(syntax.kind()) {
23038 Some(Self { syntax })
23039 } else {
23040 None
23041 }
23042 }
23043 #[inline]
23044 fn syntax(&self) -> &SyntaxNode {
23045 &self.syntax
23046 }
23047}
23048impl AstNode for JsonQueryFn {
23049 #[inline]
23050 fn can_cast(kind: SyntaxKind) -> bool {
23051 kind == SyntaxKind::JSON_QUERY_FN
23052 }
23053 #[inline]
23054 fn cast(syntax: SyntaxNode) -> Option<Self> {
23055 if Self::can_cast(syntax.kind()) {
23056 Some(Self { syntax })
23057 } else {
23058 None
23059 }
23060 }
23061 #[inline]
23062 fn syntax(&self) -> &SyntaxNode {
23063 &self.syntax
23064 }
23065}
23066impl AstNode for JsonQuotesClause {
23067 #[inline]
23068 fn can_cast(kind: SyntaxKind) -> bool {
23069 kind == SyntaxKind::JSON_QUOTES_CLAUSE
23070 }
23071 #[inline]
23072 fn cast(syntax: SyntaxNode) -> Option<Self> {
23073 if Self::can_cast(syntax.kind()) {
23074 Some(Self { syntax })
23075 } else {
23076 None
23077 }
23078 }
23079 #[inline]
23080 fn syntax(&self) -> &SyntaxNode {
23081 &self.syntax
23082 }
23083}
23084impl AstNode for JsonReturningClause {
23085 #[inline]
23086 fn can_cast(kind: SyntaxKind) -> bool {
23087 kind == SyntaxKind::JSON_RETURNING_CLAUSE
23088 }
23089 #[inline]
23090 fn cast(syntax: SyntaxNode) -> Option<Self> {
23091 if Self::can_cast(syntax.kind()) {
23092 Some(Self { syntax })
23093 } else {
23094 None
23095 }
23096 }
23097 #[inline]
23098 fn syntax(&self) -> &SyntaxNode {
23099 &self.syntax
23100 }
23101}
23102impl AstNode for JsonScalarFn {
23103 #[inline]
23104 fn can_cast(kind: SyntaxKind) -> bool {
23105 kind == SyntaxKind::JSON_SCALAR_FN
23106 }
23107 #[inline]
23108 fn cast(syntax: SyntaxNode) -> Option<Self> {
23109 if Self::can_cast(syntax.kind()) {
23110 Some(Self { syntax })
23111 } else {
23112 None
23113 }
23114 }
23115 #[inline]
23116 fn syntax(&self) -> &SyntaxNode {
23117 &self.syntax
23118 }
23119}
23120impl AstNode for JsonSelectFormat {
23121 #[inline]
23122 fn can_cast(kind: SyntaxKind) -> bool {
23123 kind == SyntaxKind::JSON_SELECT_FORMAT
23124 }
23125 #[inline]
23126 fn cast(syntax: SyntaxNode) -> Option<Self> {
23127 if Self::can_cast(syntax.kind()) {
23128 Some(Self { syntax })
23129 } else {
23130 None
23131 }
23132 }
23133 #[inline]
23134 fn syntax(&self) -> &SyntaxNode {
23135 &self.syntax
23136 }
23137}
23138impl AstNode for JsonSerializeFn {
23139 #[inline]
23140 fn can_cast(kind: SyntaxKind) -> bool {
23141 kind == SyntaxKind::JSON_SERIALIZE_FN
23142 }
23143 #[inline]
23144 fn cast(syntax: SyntaxNode) -> Option<Self> {
23145 if Self::can_cast(syntax.kind()) {
23146 Some(Self { syntax })
23147 } else {
23148 None
23149 }
23150 }
23151 #[inline]
23152 fn syntax(&self) -> &SyntaxNode {
23153 &self.syntax
23154 }
23155}
23156impl AstNode for JsonTable {
23157 #[inline]
23158 fn can_cast(kind: SyntaxKind) -> bool {
23159 kind == SyntaxKind::JSON_TABLE
23160 }
23161 #[inline]
23162 fn cast(syntax: SyntaxNode) -> Option<Self> {
23163 if Self::can_cast(syntax.kind()) {
23164 Some(Self { syntax })
23165 } else {
23166 None
23167 }
23168 }
23169 #[inline]
23170 fn syntax(&self) -> &SyntaxNode {
23171 &self.syntax
23172 }
23173}
23174impl AstNode for JsonTableColumn {
23175 #[inline]
23176 fn can_cast(kind: SyntaxKind) -> bool {
23177 kind == SyntaxKind::JSON_TABLE_COLUMN
23178 }
23179 #[inline]
23180 fn cast(syntax: SyntaxNode) -> Option<Self> {
23181 if Self::can_cast(syntax.kind()) {
23182 Some(Self { syntax })
23183 } else {
23184 None
23185 }
23186 }
23187 #[inline]
23188 fn syntax(&self) -> &SyntaxNode {
23189 &self.syntax
23190 }
23191}
23192impl AstNode for JsonTableColumnList {
23193 #[inline]
23194 fn can_cast(kind: SyntaxKind) -> bool {
23195 kind == SyntaxKind::JSON_TABLE_COLUMN_LIST
23196 }
23197 #[inline]
23198 fn cast(syntax: SyntaxNode) -> Option<Self> {
23199 if Self::can_cast(syntax.kind()) {
23200 Some(Self { syntax })
23201 } else {
23202 None
23203 }
23204 }
23205 #[inline]
23206 fn syntax(&self) -> &SyntaxNode {
23207 &self.syntax
23208 }
23209}
23210impl AstNode for JsonValueExpr {
23211 #[inline]
23212 fn can_cast(kind: SyntaxKind) -> bool {
23213 kind == SyntaxKind::JSON_VALUE_EXPR
23214 }
23215 #[inline]
23216 fn cast(syntax: SyntaxNode) -> Option<Self> {
23217 if Self::can_cast(syntax.kind()) {
23218 Some(Self { syntax })
23219 } else {
23220 None
23221 }
23222 }
23223 #[inline]
23224 fn syntax(&self) -> &SyntaxNode {
23225 &self.syntax
23226 }
23227}
23228impl AstNode for JsonValueFn {
23229 #[inline]
23230 fn can_cast(kind: SyntaxKind) -> bool {
23231 kind == SyntaxKind::JSON_VALUE_FN
23232 }
23233 #[inline]
23234 fn cast(syntax: SyntaxNode) -> Option<Self> {
23235 if Self::can_cast(syntax.kind()) {
23236 Some(Self { syntax })
23237 } else {
23238 None
23239 }
23240 }
23241 #[inline]
23242 fn syntax(&self) -> &SyntaxNode {
23243 &self.syntax
23244 }
23245}
23246impl AstNode for JsonWrapperBehaviorClause {
23247 #[inline]
23248 fn can_cast(kind: SyntaxKind) -> bool {
23249 kind == SyntaxKind::JSON_WRAPPER_BEHAVIOR_CLAUSE
23250 }
23251 #[inline]
23252 fn cast(syntax: SyntaxNode) -> Option<Self> {
23253 if Self::can_cast(syntax.kind()) {
23254 Some(Self { syntax })
23255 } else {
23256 None
23257 }
23258 }
23259 #[inline]
23260 fn syntax(&self) -> &SyntaxNode {
23261 &self.syntax
23262 }
23263}
23264impl AstNode for LanguageFuncOption {
23265 #[inline]
23266 fn can_cast(kind: SyntaxKind) -> bool {
23267 kind == SyntaxKind::LANGUAGE_FUNC_OPTION
23268 }
23269 #[inline]
23270 fn cast(syntax: SyntaxNode) -> Option<Self> {
23271 if Self::can_cast(syntax.kind()) {
23272 Some(Self { syntax })
23273 } else {
23274 None
23275 }
23276 }
23277 #[inline]
23278 fn syntax(&self) -> &SyntaxNode {
23279 &self.syntax
23280 }
23281}
23282impl AstNode for LeakproofFuncOption {
23283 #[inline]
23284 fn can_cast(kind: SyntaxKind) -> bool {
23285 kind == SyntaxKind::LEAKPROOF_FUNC_OPTION
23286 }
23287 #[inline]
23288 fn cast(syntax: SyntaxNode) -> Option<Self> {
23289 if Self::can_cast(syntax.kind()) {
23290 Some(Self { syntax })
23291 } else {
23292 None
23293 }
23294 }
23295 #[inline]
23296 fn syntax(&self) -> &SyntaxNode {
23297 &self.syntax
23298 }
23299}
23300impl AstNode for LikeClause {
23301 #[inline]
23302 fn can_cast(kind: SyntaxKind) -> bool {
23303 kind == SyntaxKind::LIKE_CLAUSE
23304 }
23305 #[inline]
23306 fn cast(syntax: SyntaxNode) -> Option<Self> {
23307 if Self::can_cast(syntax.kind()) {
23308 Some(Self { syntax })
23309 } else {
23310 None
23311 }
23312 }
23313 #[inline]
23314 fn syntax(&self) -> &SyntaxNode {
23315 &self.syntax
23316 }
23317}
23318impl AstNode for LikeOption {
23319 #[inline]
23320 fn can_cast(kind: SyntaxKind) -> bool {
23321 kind == SyntaxKind::LIKE_OPTION
23322 }
23323 #[inline]
23324 fn cast(syntax: SyntaxNode) -> Option<Self> {
23325 if Self::can_cast(syntax.kind()) {
23326 Some(Self { syntax })
23327 } else {
23328 None
23329 }
23330 }
23331 #[inline]
23332 fn syntax(&self) -> &SyntaxNode {
23333 &self.syntax
23334 }
23335}
23336impl AstNode for LimitClause {
23337 #[inline]
23338 fn can_cast(kind: SyntaxKind) -> bool {
23339 kind == SyntaxKind::LIMIT_CLAUSE
23340 }
23341 #[inline]
23342 fn cast(syntax: SyntaxNode) -> Option<Self> {
23343 if Self::can_cast(syntax.kind()) {
23344 Some(Self { syntax })
23345 } else {
23346 None
23347 }
23348 }
23349 #[inline]
23350 fn syntax(&self) -> &SyntaxNode {
23351 &self.syntax
23352 }
23353}
23354impl AstNode for LimitToTables {
23355 #[inline]
23356 fn can_cast(kind: SyntaxKind) -> bool {
23357 kind == SyntaxKind::LIMIT_TO_TABLES
23358 }
23359 #[inline]
23360 fn cast(syntax: SyntaxNode) -> Option<Self> {
23361 if Self::can_cast(syntax.kind()) {
23362 Some(Self { syntax })
23363 } else {
23364 None
23365 }
23366 }
23367 #[inline]
23368 fn syntax(&self) -> &SyntaxNode {
23369 &self.syntax
23370 }
23371}
23372impl AstNode for Listen {
23373 #[inline]
23374 fn can_cast(kind: SyntaxKind) -> bool {
23375 kind == SyntaxKind::LISTEN
23376 }
23377 #[inline]
23378 fn cast(syntax: SyntaxNode) -> Option<Self> {
23379 if Self::can_cast(syntax.kind()) {
23380 Some(Self { syntax })
23381 } else {
23382 None
23383 }
23384 }
23385 #[inline]
23386 fn syntax(&self) -> &SyntaxNode {
23387 &self.syntax
23388 }
23389}
23390impl AstNode for Literal {
23391 #[inline]
23392 fn can_cast(kind: SyntaxKind) -> bool {
23393 kind == SyntaxKind::LITERAL
23394 }
23395 #[inline]
23396 fn cast(syntax: SyntaxNode) -> Option<Self> {
23397 if Self::can_cast(syntax.kind()) {
23398 Some(Self { syntax })
23399 } else {
23400 None
23401 }
23402 }
23403 #[inline]
23404 fn syntax(&self) -> &SyntaxNode {
23405 &self.syntax
23406 }
23407}
23408impl AstNode for Load {
23409 #[inline]
23410 fn can_cast(kind: SyntaxKind) -> bool {
23411 kind == SyntaxKind::LOAD
23412 }
23413 #[inline]
23414 fn cast(syntax: SyntaxNode) -> Option<Self> {
23415 if Self::can_cast(syntax.kind()) {
23416 Some(Self { syntax })
23417 } else {
23418 None
23419 }
23420 }
23421 #[inline]
23422 fn syntax(&self) -> &SyntaxNode {
23423 &self.syntax
23424 }
23425}
23426impl AstNode for Lock {
23427 #[inline]
23428 fn can_cast(kind: SyntaxKind) -> bool {
23429 kind == SyntaxKind::LOCK
23430 }
23431 #[inline]
23432 fn cast(syntax: SyntaxNode) -> Option<Self> {
23433 if Self::can_cast(syntax.kind()) {
23434 Some(Self { syntax })
23435 } else {
23436 None
23437 }
23438 }
23439 #[inline]
23440 fn syntax(&self) -> &SyntaxNode {
23441 &self.syntax
23442 }
23443}
23444impl AstNode for LockingClause {
23445 #[inline]
23446 fn can_cast(kind: SyntaxKind) -> bool {
23447 kind == SyntaxKind::LOCKING_CLAUSE
23448 }
23449 #[inline]
23450 fn cast(syntax: SyntaxNode) -> Option<Self> {
23451 if Self::can_cast(syntax.kind()) {
23452 Some(Self { syntax })
23453 } else {
23454 None
23455 }
23456 }
23457 #[inline]
23458 fn syntax(&self) -> &SyntaxNode {
23459 &self.syntax
23460 }
23461}
23462impl AstNode for Lteq {
23463 #[inline]
23464 fn can_cast(kind: SyntaxKind) -> bool {
23465 kind == SyntaxKind::LTEQ
23466 }
23467 #[inline]
23468 fn cast(syntax: SyntaxNode) -> Option<Self> {
23469 if Self::can_cast(syntax.kind()) {
23470 Some(Self { syntax })
23471 } else {
23472 None
23473 }
23474 }
23475 #[inline]
23476 fn syntax(&self) -> &SyntaxNode {
23477 &self.syntax
23478 }
23479}
23480impl AstNode for MatchFull {
23481 #[inline]
23482 fn can_cast(kind: SyntaxKind) -> bool {
23483 kind == SyntaxKind::MATCH_FULL
23484 }
23485 #[inline]
23486 fn cast(syntax: SyntaxNode) -> Option<Self> {
23487 if Self::can_cast(syntax.kind()) {
23488 Some(Self { syntax })
23489 } else {
23490 None
23491 }
23492 }
23493 #[inline]
23494 fn syntax(&self) -> &SyntaxNode {
23495 &self.syntax
23496 }
23497}
23498impl AstNode for MatchPartial {
23499 #[inline]
23500 fn can_cast(kind: SyntaxKind) -> bool {
23501 kind == SyntaxKind::MATCH_PARTIAL
23502 }
23503 #[inline]
23504 fn cast(syntax: SyntaxNode) -> Option<Self> {
23505 if Self::can_cast(syntax.kind()) {
23506 Some(Self { syntax })
23507 } else {
23508 None
23509 }
23510 }
23511 #[inline]
23512 fn syntax(&self) -> &SyntaxNode {
23513 &self.syntax
23514 }
23515}
23516impl AstNode for MatchSimple {
23517 #[inline]
23518 fn can_cast(kind: SyntaxKind) -> bool {
23519 kind == SyntaxKind::MATCH_SIMPLE
23520 }
23521 #[inline]
23522 fn cast(syntax: SyntaxNode) -> Option<Self> {
23523 if Self::can_cast(syntax.kind()) {
23524 Some(Self { syntax })
23525 } else {
23526 None
23527 }
23528 }
23529 #[inline]
23530 fn syntax(&self) -> &SyntaxNode {
23531 &self.syntax
23532 }
23533}
23534impl AstNode for Materialized {
23535 #[inline]
23536 fn can_cast(kind: SyntaxKind) -> bool {
23537 kind == SyntaxKind::MATERIALIZED
23538 }
23539 #[inline]
23540 fn cast(syntax: SyntaxNode) -> Option<Self> {
23541 if Self::can_cast(syntax.kind()) {
23542 Some(Self { syntax })
23543 } else {
23544 None
23545 }
23546 }
23547 #[inline]
23548 fn syntax(&self) -> &SyntaxNode {
23549 &self.syntax
23550 }
23551}
23552impl AstNode for Merge {
23553 #[inline]
23554 fn can_cast(kind: SyntaxKind) -> bool {
23555 kind == SyntaxKind::MERGE
23556 }
23557 #[inline]
23558 fn cast(syntax: SyntaxNode) -> Option<Self> {
23559 if Self::can_cast(syntax.kind()) {
23560 Some(Self { syntax })
23561 } else {
23562 None
23563 }
23564 }
23565 #[inline]
23566 fn syntax(&self) -> &SyntaxNode {
23567 &self.syntax
23568 }
23569}
23570impl AstNode for MergeDelete {
23571 #[inline]
23572 fn can_cast(kind: SyntaxKind) -> bool {
23573 kind == SyntaxKind::MERGE_DELETE
23574 }
23575 #[inline]
23576 fn cast(syntax: SyntaxNode) -> Option<Self> {
23577 if Self::can_cast(syntax.kind()) {
23578 Some(Self { syntax })
23579 } else {
23580 None
23581 }
23582 }
23583 #[inline]
23584 fn syntax(&self) -> &SyntaxNode {
23585 &self.syntax
23586 }
23587}
23588impl AstNode for MergeDoNothing {
23589 #[inline]
23590 fn can_cast(kind: SyntaxKind) -> bool {
23591 kind == SyntaxKind::MERGE_DO_NOTHING
23592 }
23593 #[inline]
23594 fn cast(syntax: SyntaxNode) -> Option<Self> {
23595 if Self::can_cast(syntax.kind()) {
23596 Some(Self { syntax })
23597 } else {
23598 None
23599 }
23600 }
23601 #[inline]
23602 fn syntax(&self) -> &SyntaxNode {
23603 &self.syntax
23604 }
23605}
23606impl AstNode for MergeInsert {
23607 #[inline]
23608 fn can_cast(kind: SyntaxKind) -> bool {
23609 kind == SyntaxKind::MERGE_INSERT
23610 }
23611 #[inline]
23612 fn cast(syntax: SyntaxNode) -> Option<Self> {
23613 if Self::can_cast(syntax.kind()) {
23614 Some(Self { syntax })
23615 } else {
23616 None
23617 }
23618 }
23619 #[inline]
23620 fn syntax(&self) -> &SyntaxNode {
23621 &self.syntax
23622 }
23623}
23624impl AstNode for MergePartitions {
23625 #[inline]
23626 fn can_cast(kind: SyntaxKind) -> bool {
23627 kind == SyntaxKind::MERGE_PARTITIONS
23628 }
23629 #[inline]
23630 fn cast(syntax: SyntaxNode) -> Option<Self> {
23631 if Self::can_cast(syntax.kind()) {
23632 Some(Self { syntax })
23633 } else {
23634 None
23635 }
23636 }
23637 #[inline]
23638 fn syntax(&self) -> &SyntaxNode {
23639 &self.syntax
23640 }
23641}
23642impl AstNode for MergeUpdate {
23643 #[inline]
23644 fn can_cast(kind: SyntaxKind) -> bool {
23645 kind == SyntaxKind::MERGE_UPDATE
23646 }
23647 #[inline]
23648 fn cast(syntax: SyntaxNode) -> Option<Self> {
23649 if Self::can_cast(syntax.kind()) {
23650 Some(Self { syntax })
23651 } else {
23652 None
23653 }
23654 }
23655 #[inline]
23656 fn syntax(&self) -> &SyntaxNode {
23657 &self.syntax
23658 }
23659}
23660impl AstNode for MergeWhenMatched {
23661 #[inline]
23662 fn can_cast(kind: SyntaxKind) -> bool {
23663 kind == SyntaxKind::MERGE_WHEN_MATCHED
23664 }
23665 #[inline]
23666 fn cast(syntax: SyntaxNode) -> Option<Self> {
23667 if Self::can_cast(syntax.kind()) {
23668 Some(Self { syntax })
23669 } else {
23670 None
23671 }
23672 }
23673 #[inline]
23674 fn syntax(&self) -> &SyntaxNode {
23675 &self.syntax
23676 }
23677}
23678impl AstNode for MergeWhenNotMatchedSource {
23679 #[inline]
23680 fn can_cast(kind: SyntaxKind) -> bool {
23681 kind == SyntaxKind::MERGE_WHEN_NOT_MATCHED_SOURCE
23682 }
23683 #[inline]
23684 fn cast(syntax: SyntaxNode) -> Option<Self> {
23685 if Self::can_cast(syntax.kind()) {
23686 Some(Self { syntax })
23687 } else {
23688 None
23689 }
23690 }
23691 #[inline]
23692 fn syntax(&self) -> &SyntaxNode {
23693 &self.syntax
23694 }
23695}
23696impl AstNode for MergeWhenNotMatchedTarget {
23697 #[inline]
23698 fn can_cast(kind: SyntaxKind) -> bool {
23699 kind == SyntaxKind::MERGE_WHEN_NOT_MATCHED_TARGET
23700 }
23701 #[inline]
23702 fn cast(syntax: SyntaxNode) -> Option<Self> {
23703 if Self::can_cast(syntax.kind()) {
23704 Some(Self { syntax })
23705 } else {
23706 None
23707 }
23708 }
23709 #[inline]
23710 fn syntax(&self) -> &SyntaxNode {
23711 &self.syntax
23712 }
23713}
23714impl AstNode for Move {
23715 #[inline]
23716 fn can_cast(kind: SyntaxKind) -> bool {
23717 kind == SyntaxKind::MOVE
23718 }
23719 #[inline]
23720 fn cast(syntax: SyntaxNode) -> Option<Self> {
23721 if Self::can_cast(syntax.kind()) {
23722 Some(Self { syntax })
23723 } else {
23724 None
23725 }
23726 }
23727 #[inline]
23728 fn syntax(&self) -> &SyntaxNode {
23729 &self.syntax
23730 }
23731}
23732impl AstNode for Name {
23733 #[inline]
23734 fn can_cast(kind: SyntaxKind) -> bool {
23735 kind == SyntaxKind::NAME
23736 }
23737 #[inline]
23738 fn cast(syntax: SyntaxNode) -> Option<Self> {
23739 if Self::can_cast(syntax.kind()) {
23740 Some(Self { syntax })
23741 } else {
23742 None
23743 }
23744 }
23745 #[inline]
23746 fn syntax(&self) -> &SyntaxNode {
23747 &self.syntax
23748 }
23749}
23750impl AstNode for NameRef {
23751 #[inline]
23752 fn can_cast(kind: SyntaxKind) -> bool {
23753 kind == SyntaxKind::NAME_REF
23754 }
23755 #[inline]
23756 fn cast(syntax: SyntaxNode) -> Option<Self> {
23757 if Self::can_cast(syntax.kind()) {
23758 Some(Self { syntax })
23759 } else {
23760 None
23761 }
23762 }
23763 #[inline]
23764 fn syntax(&self) -> &SyntaxNode {
23765 &self.syntax
23766 }
23767}
23768impl AstNode for NamedArg {
23769 #[inline]
23770 fn can_cast(kind: SyntaxKind) -> bool {
23771 kind == SyntaxKind::NAMED_ARG
23772 }
23773 #[inline]
23774 fn cast(syntax: SyntaxNode) -> Option<Self> {
23775 if Self::can_cast(syntax.kind()) {
23776 Some(Self { syntax })
23777 } else {
23778 None
23779 }
23780 }
23781 #[inline]
23782 fn syntax(&self) -> &SyntaxNode {
23783 &self.syntax
23784 }
23785}
23786impl AstNode for Neq {
23787 #[inline]
23788 fn can_cast(kind: SyntaxKind) -> bool {
23789 kind == SyntaxKind::NEQ
23790 }
23791 #[inline]
23792 fn cast(syntax: SyntaxNode) -> Option<Self> {
23793 if Self::can_cast(syntax.kind()) {
23794 Some(Self { syntax })
23795 } else {
23796 None
23797 }
23798 }
23799 #[inline]
23800 fn syntax(&self) -> &SyntaxNode {
23801 &self.syntax
23802 }
23803}
23804impl AstNode for Neqb {
23805 #[inline]
23806 fn can_cast(kind: SyntaxKind) -> bool {
23807 kind == SyntaxKind::NEQB
23808 }
23809 #[inline]
23810 fn cast(syntax: SyntaxNode) -> Option<Self> {
23811 if Self::can_cast(syntax.kind()) {
23812 Some(Self { syntax })
23813 } else {
23814 None
23815 }
23816 }
23817 #[inline]
23818 fn syntax(&self) -> &SyntaxNode {
23819 &self.syntax
23820 }
23821}
23822impl AstNode for NoAction {
23823 #[inline]
23824 fn can_cast(kind: SyntaxKind) -> bool {
23825 kind == SyntaxKind::NO_ACTION
23826 }
23827 #[inline]
23828 fn cast(syntax: SyntaxNode) -> Option<Self> {
23829 if Self::can_cast(syntax.kind()) {
23830 Some(Self { syntax })
23831 } else {
23832 None
23833 }
23834 }
23835 #[inline]
23836 fn syntax(&self) -> &SyntaxNode {
23837 &self.syntax
23838 }
23839}
23840impl AstNode for NoDependsOnExtension {
23841 #[inline]
23842 fn can_cast(kind: SyntaxKind) -> bool {
23843 kind == SyntaxKind::NO_DEPENDS_ON_EXTENSION
23844 }
23845 #[inline]
23846 fn cast(syntax: SyntaxNode) -> Option<Self> {
23847 if Self::can_cast(syntax.kind()) {
23848 Some(Self { syntax })
23849 } else {
23850 None
23851 }
23852 }
23853 #[inline]
23854 fn syntax(&self) -> &SyntaxNode {
23855 &self.syntax
23856 }
23857}
23858impl AstNode for NoForceRls {
23859 #[inline]
23860 fn can_cast(kind: SyntaxKind) -> bool {
23861 kind == SyntaxKind::NO_FORCE_RLS
23862 }
23863 #[inline]
23864 fn cast(syntax: SyntaxNode) -> Option<Self> {
23865 if Self::can_cast(syntax.kind()) {
23866 Some(Self { syntax })
23867 } else {
23868 None
23869 }
23870 }
23871 #[inline]
23872 fn syntax(&self) -> &SyntaxNode {
23873 &self.syntax
23874 }
23875}
23876impl AstNode for NoInherit {
23877 #[inline]
23878 fn can_cast(kind: SyntaxKind) -> bool {
23879 kind == SyntaxKind::NO_INHERIT
23880 }
23881 #[inline]
23882 fn cast(syntax: SyntaxNode) -> Option<Self> {
23883 if Self::can_cast(syntax.kind()) {
23884 Some(Self { syntax })
23885 } else {
23886 None
23887 }
23888 }
23889 #[inline]
23890 fn syntax(&self) -> &SyntaxNode {
23891 &self.syntax
23892 }
23893}
23894impl AstNode for NoInheritTable {
23895 #[inline]
23896 fn can_cast(kind: SyntaxKind) -> bool {
23897 kind == SyntaxKind::NO_INHERIT_TABLE
23898 }
23899 #[inline]
23900 fn cast(syntax: SyntaxNode) -> Option<Self> {
23901 if Self::can_cast(syntax.kind()) {
23902 Some(Self { syntax })
23903 } else {
23904 None
23905 }
23906 }
23907 #[inline]
23908 fn syntax(&self) -> &SyntaxNode {
23909 &self.syntax
23910 }
23911}
23912impl AstNode for NonStandardParam {
23913 #[inline]
23914 fn can_cast(kind: SyntaxKind) -> bool {
23915 kind == SyntaxKind::NON_STANDARD_PARAM
23916 }
23917 #[inline]
23918 fn cast(syntax: SyntaxNode) -> Option<Self> {
23919 if Self::can_cast(syntax.kind()) {
23920 Some(Self { syntax })
23921 } else {
23922 None
23923 }
23924 }
23925 #[inline]
23926 fn syntax(&self) -> &SyntaxNode {
23927 &self.syntax
23928 }
23929}
23930impl AstNode for NotDeferrable {
23931 #[inline]
23932 fn can_cast(kind: SyntaxKind) -> bool {
23933 kind == SyntaxKind::NOT_DEFERRABLE
23934 }
23935 #[inline]
23936 fn cast(syntax: SyntaxNode) -> Option<Self> {
23937 if Self::can_cast(syntax.kind()) {
23938 Some(Self { syntax })
23939 } else {
23940 None
23941 }
23942 }
23943 #[inline]
23944 fn syntax(&self) -> &SyntaxNode {
23945 &self.syntax
23946 }
23947}
23948impl AstNode for NotDeferrableConstraintOption {
23949 #[inline]
23950 fn can_cast(kind: SyntaxKind) -> bool {
23951 kind == SyntaxKind::NOT_DEFERRABLE_CONSTRAINT_OPTION
23952 }
23953 #[inline]
23954 fn cast(syntax: SyntaxNode) -> Option<Self> {
23955 if Self::can_cast(syntax.kind()) {
23956 Some(Self { syntax })
23957 } else {
23958 None
23959 }
23960 }
23961 #[inline]
23962 fn syntax(&self) -> &SyntaxNode {
23963 &self.syntax
23964 }
23965}
23966impl AstNode for NotEnforced {
23967 #[inline]
23968 fn can_cast(kind: SyntaxKind) -> bool {
23969 kind == SyntaxKind::NOT_ENFORCED
23970 }
23971 #[inline]
23972 fn cast(syntax: SyntaxNode) -> Option<Self> {
23973 if Self::can_cast(syntax.kind()) {
23974 Some(Self { syntax })
23975 } else {
23976 None
23977 }
23978 }
23979 #[inline]
23980 fn syntax(&self) -> &SyntaxNode {
23981 &self.syntax
23982 }
23983}
23984impl AstNode for NotIlike {
23985 #[inline]
23986 fn can_cast(kind: SyntaxKind) -> bool {
23987 kind == SyntaxKind::NOT_ILIKE
23988 }
23989 #[inline]
23990 fn cast(syntax: SyntaxNode) -> Option<Self> {
23991 if Self::can_cast(syntax.kind()) {
23992 Some(Self { syntax })
23993 } else {
23994 None
23995 }
23996 }
23997 #[inline]
23998 fn syntax(&self) -> &SyntaxNode {
23999 &self.syntax
24000 }
24001}
24002impl AstNode for NotIn {
24003 #[inline]
24004 fn can_cast(kind: SyntaxKind) -> bool {
24005 kind == SyntaxKind::NOT_IN
24006 }
24007 #[inline]
24008 fn cast(syntax: SyntaxNode) -> Option<Self> {
24009 if Self::can_cast(syntax.kind()) {
24010 Some(Self { syntax })
24011 } else {
24012 None
24013 }
24014 }
24015 #[inline]
24016 fn syntax(&self) -> &SyntaxNode {
24017 &self.syntax
24018 }
24019}
24020impl AstNode for NotLike {
24021 #[inline]
24022 fn can_cast(kind: SyntaxKind) -> bool {
24023 kind == SyntaxKind::NOT_LIKE
24024 }
24025 #[inline]
24026 fn cast(syntax: SyntaxNode) -> Option<Self> {
24027 if Self::can_cast(syntax.kind()) {
24028 Some(Self { syntax })
24029 } else {
24030 None
24031 }
24032 }
24033 #[inline]
24034 fn syntax(&self) -> &SyntaxNode {
24035 &self.syntax
24036 }
24037}
24038impl AstNode for NotMaterialized {
24039 #[inline]
24040 fn can_cast(kind: SyntaxKind) -> bool {
24041 kind == SyntaxKind::NOT_MATERIALIZED
24042 }
24043 #[inline]
24044 fn cast(syntax: SyntaxNode) -> Option<Self> {
24045 if Self::can_cast(syntax.kind()) {
24046 Some(Self { syntax })
24047 } else {
24048 None
24049 }
24050 }
24051 #[inline]
24052 fn syntax(&self) -> &SyntaxNode {
24053 &self.syntax
24054 }
24055}
24056impl AstNode for NotNullConstraint {
24057 #[inline]
24058 fn can_cast(kind: SyntaxKind) -> bool {
24059 kind == SyntaxKind::NOT_NULL_CONSTRAINT
24060 }
24061 #[inline]
24062 fn cast(syntax: SyntaxNode) -> Option<Self> {
24063 if Self::can_cast(syntax.kind()) {
24064 Some(Self { syntax })
24065 } else {
24066 None
24067 }
24068 }
24069 #[inline]
24070 fn syntax(&self) -> &SyntaxNode {
24071 &self.syntax
24072 }
24073}
24074impl AstNode for NotOf {
24075 #[inline]
24076 fn can_cast(kind: SyntaxKind) -> bool {
24077 kind == SyntaxKind::NOT_OF
24078 }
24079 #[inline]
24080 fn cast(syntax: SyntaxNode) -> Option<Self> {
24081 if Self::can_cast(syntax.kind()) {
24082 Some(Self { syntax })
24083 } else {
24084 None
24085 }
24086 }
24087 #[inline]
24088 fn syntax(&self) -> &SyntaxNode {
24089 &self.syntax
24090 }
24091}
24092impl AstNode for NotSimilarTo {
24093 #[inline]
24094 fn can_cast(kind: SyntaxKind) -> bool {
24095 kind == SyntaxKind::NOT_SIMILAR_TO
24096 }
24097 #[inline]
24098 fn cast(syntax: SyntaxNode) -> Option<Self> {
24099 if Self::can_cast(syntax.kind()) {
24100 Some(Self { syntax })
24101 } else {
24102 None
24103 }
24104 }
24105 #[inline]
24106 fn syntax(&self) -> &SyntaxNode {
24107 &self.syntax
24108 }
24109}
24110impl AstNode for NotValid {
24111 #[inline]
24112 fn can_cast(kind: SyntaxKind) -> bool {
24113 kind == SyntaxKind::NOT_VALID
24114 }
24115 #[inline]
24116 fn cast(syntax: SyntaxNode) -> Option<Self> {
24117 if Self::can_cast(syntax.kind()) {
24118 Some(Self { syntax })
24119 } else {
24120 None
24121 }
24122 }
24123 #[inline]
24124 fn syntax(&self) -> &SyntaxNode {
24125 &self.syntax
24126 }
24127}
24128impl AstNode for Notify {
24129 #[inline]
24130 fn can_cast(kind: SyntaxKind) -> bool {
24131 kind == SyntaxKind::NOTIFY
24132 }
24133 #[inline]
24134 fn cast(syntax: SyntaxNode) -> Option<Self> {
24135 if Self::can_cast(syntax.kind()) {
24136 Some(Self { syntax })
24137 } else {
24138 None
24139 }
24140 }
24141 #[inline]
24142 fn syntax(&self) -> &SyntaxNode {
24143 &self.syntax
24144 }
24145}
24146impl AstNode for NullConstraint {
24147 #[inline]
24148 fn can_cast(kind: SyntaxKind) -> bool {
24149 kind == SyntaxKind::NULL_CONSTRAINT
24150 }
24151 #[inline]
24152 fn cast(syntax: SyntaxNode) -> Option<Self> {
24153 if Self::can_cast(syntax.kind()) {
24154 Some(Self { syntax })
24155 } else {
24156 None
24157 }
24158 }
24159 #[inline]
24160 fn syntax(&self) -> &SyntaxNode {
24161 &self.syntax
24162 }
24163}
24164impl AstNode for NullsDistinct {
24165 #[inline]
24166 fn can_cast(kind: SyntaxKind) -> bool {
24167 kind == SyntaxKind::NULLS_DISTINCT
24168 }
24169 #[inline]
24170 fn cast(syntax: SyntaxNode) -> Option<Self> {
24171 if Self::can_cast(syntax.kind()) {
24172 Some(Self { syntax })
24173 } else {
24174 None
24175 }
24176 }
24177 #[inline]
24178 fn syntax(&self) -> &SyntaxNode {
24179 &self.syntax
24180 }
24181}
24182impl AstNode for NullsFirst {
24183 #[inline]
24184 fn can_cast(kind: SyntaxKind) -> bool {
24185 kind == SyntaxKind::NULLS_FIRST
24186 }
24187 #[inline]
24188 fn cast(syntax: SyntaxNode) -> Option<Self> {
24189 if Self::can_cast(syntax.kind()) {
24190 Some(Self { syntax })
24191 } else {
24192 None
24193 }
24194 }
24195 #[inline]
24196 fn syntax(&self) -> &SyntaxNode {
24197 &self.syntax
24198 }
24199}
24200impl AstNode for NullsLast {
24201 #[inline]
24202 fn can_cast(kind: SyntaxKind) -> bool {
24203 kind == SyntaxKind::NULLS_LAST
24204 }
24205 #[inline]
24206 fn cast(syntax: SyntaxNode) -> Option<Self> {
24207 if Self::can_cast(syntax.kind()) {
24208 Some(Self { syntax })
24209 } else {
24210 None
24211 }
24212 }
24213 #[inline]
24214 fn syntax(&self) -> &SyntaxNode {
24215 &self.syntax
24216 }
24217}
24218impl AstNode for NullsNotDistinct {
24219 #[inline]
24220 fn can_cast(kind: SyntaxKind) -> bool {
24221 kind == SyntaxKind::NULLS_NOT_DISTINCT
24222 }
24223 #[inline]
24224 fn cast(syntax: SyntaxNode) -> Option<Self> {
24225 if Self::can_cast(syntax.kind()) {
24226 Some(Self { syntax })
24227 } else {
24228 None
24229 }
24230 }
24231 #[inline]
24232 fn syntax(&self) -> &SyntaxNode {
24233 &self.syntax
24234 }
24235}
24236impl AstNode for OfType {
24237 #[inline]
24238 fn can_cast(kind: SyntaxKind) -> bool {
24239 kind == SyntaxKind::OF_TYPE
24240 }
24241 #[inline]
24242 fn cast(syntax: SyntaxNode) -> Option<Self> {
24243 if Self::can_cast(syntax.kind()) {
24244 Some(Self { syntax })
24245 } else {
24246 None
24247 }
24248 }
24249 #[inline]
24250 fn syntax(&self) -> &SyntaxNode {
24251 &self.syntax
24252 }
24253}
24254impl AstNode for OffsetClause {
24255 #[inline]
24256 fn can_cast(kind: SyntaxKind) -> bool {
24257 kind == SyntaxKind::OFFSET_CLAUSE
24258 }
24259 #[inline]
24260 fn cast(syntax: SyntaxNode) -> Option<Self> {
24261 if Self::can_cast(syntax.kind()) {
24262 Some(Self { syntax })
24263 } else {
24264 None
24265 }
24266 }
24267 #[inline]
24268 fn syntax(&self) -> &SyntaxNode {
24269 &self.syntax
24270 }
24271}
24272impl AstNode for OnClause {
24273 #[inline]
24274 fn can_cast(kind: SyntaxKind) -> bool {
24275 kind == SyntaxKind::ON_CLAUSE
24276 }
24277 #[inline]
24278 fn cast(syntax: SyntaxNode) -> Option<Self> {
24279 if Self::can_cast(syntax.kind()) {
24280 Some(Self { syntax })
24281 } else {
24282 None
24283 }
24284 }
24285 #[inline]
24286 fn syntax(&self) -> &SyntaxNode {
24287 &self.syntax
24288 }
24289}
24290impl AstNode for OnCommit {
24291 #[inline]
24292 fn can_cast(kind: SyntaxKind) -> bool {
24293 kind == SyntaxKind::ON_COMMIT
24294 }
24295 #[inline]
24296 fn cast(syntax: SyntaxNode) -> Option<Self> {
24297 if Self::can_cast(syntax.kind()) {
24298 Some(Self { syntax })
24299 } else {
24300 None
24301 }
24302 }
24303 #[inline]
24304 fn syntax(&self) -> &SyntaxNode {
24305 &self.syntax
24306 }
24307}
24308impl AstNode for OnConflictClause {
24309 #[inline]
24310 fn can_cast(kind: SyntaxKind) -> bool {
24311 kind == SyntaxKind::ON_CONFLICT_CLAUSE
24312 }
24313 #[inline]
24314 fn cast(syntax: SyntaxNode) -> Option<Self> {
24315 if Self::can_cast(syntax.kind()) {
24316 Some(Self { syntax })
24317 } else {
24318 None
24319 }
24320 }
24321 #[inline]
24322 fn syntax(&self) -> &SyntaxNode {
24323 &self.syntax
24324 }
24325}
24326impl AstNode for OnDeleteAction {
24327 #[inline]
24328 fn can_cast(kind: SyntaxKind) -> bool {
24329 kind == SyntaxKind::ON_DELETE_ACTION
24330 }
24331 #[inline]
24332 fn cast(syntax: SyntaxNode) -> Option<Self> {
24333 if Self::can_cast(syntax.kind()) {
24334 Some(Self { syntax })
24335 } else {
24336 None
24337 }
24338 }
24339 #[inline]
24340 fn syntax(&self) -> &SyntaxNode {
24341 &self.syntax
24342 }
24343}
24344impl AstNode for OnTable {
24345 #[inline]
24346 fn can_cast(kind: SyntaxKind) -> bool {
24347 kind == SyntaxKind::ON_TABLE
24348 }
24349 #[inline]
24350 fn cast(syntax: SyntaxNode) -> Option<Self> {
24351 if Self::can_cast(syntax.kind()) {
24352 Some(Self { syntax })
24353 } else {
24354 None
24355 }
24356 }
24357 #[inline]
24358 fn syntax(&self) -> &SyntaxNode {
24359 &self.syntax
24360 }
24361}
24362impl AstNode for OnUpdateAction {
24363 #[inline]
24364 fn can_cast(kind: SyntaxKind) -> bool {
24365 kind == SyntaxKind::ON_UPDATE_ACTION
24366 }
24367 #[inline]
24368 fn cast(syntax: SyntaxNode) -> Option<Self> {
24369 if Self::can_cast(syntax.kind()) {
24370 Some(Self { syntax })
24371 } else {
24372 None
24373 }
24374 }
24375 #[inline]
24376 fn syntax(&self) -> &SyntaxNode {
24377 &self.syntax
24378 }
24379}
24380impl AstNode for Op {
24381 #[inline]
24382 fn can_cast(kind: SyntaxKind) -> bool {
24383 kind == SyntaxKind::OP
24384 }
24385 #[inline]
24386 fn cast(syntax: SyntaxNode) -> Option<Self> {
24387 if Self::can_cast(syntax.kind()) {
24388 Some(Self { syntax })
24389 } else {
24390 None
24391 }
24392 }
24393 #[inline]
24394 fn syntax(&self) -> &SyntaxNode {
24395 &self.syntax
24396 }
24397}
24398impl AstNode for OpClassOption {
24399 #[inline]
24400 fn can_cast(kind: SyntaxKind) -> bool {
24401 kind == SyntaxKind::OP_CLASS_OPTION
24402 }
24403 #[inline]
24404 fn cast(syntax: SyntaxNode) -> Option<Self> {
24405 if Self::can_cast(syntax.kind()) {
24406 Some(Self { syntax })
24407 } else {
24408 None
24409 }
24410 }
24411 #[inline]
24412 fn syntax(&self) -> &SyntaxNode {
24413 &self.syntax
24414 }
24415}
24416impl AstNode for OpSig {
24417 #[inline]
24418 fn can_cast(kind: SyntaxKind) -> bool {
24419 kind == SyntaxKind::OP_SIG
24420 }
24421 #[inline]
24422 fn cast(syntax: SyntaxNode) -> Option<Self> {
24423 if Self::can_cast(syntax.kind()) {
24424 Some(Self { syntax })
24425 } else {
24426 None
24427 }
24428 }
24429 #[inline]
24430 fn syntax(&self) -> &SyntaxNode {
24431 &self.syntax
24432 }
24433}
24434impl AstNode for OpSigList {
24435 #[inline]
24436 fn can_cast(kind: SyntaxKind) -> bool {
24437 kind == SyntaxKind::OP_SIG_LIST
24438 }
24439 #[inline]
24440 fn cast(syntax: SyntaxNode) -> Option<Self> {
24441 if Self::can_cast(syntax.kind()) {
24442 Some(Self { syntax })
24443 } else {
24444 None
24445 }
24446 }
24447 #[inline]
24448 fn syntax(&self) -> &SyntaxNode {
24449 &self.syntax
24450 }
24451}
24452impl AstNode for OperatorCall {
24453 #[inline]
24454 fn can_cast(kind: SyntaxKind) -> bool {
24455 kind == SyntaxKind::OPERATOR_CALL
24456 }
24457 #[inline]
24458 fn cast(syntax: SyntaxNode) -> Option<Self> {
24459 if Self::can_cast(syntax.kind()) {
24460 Some(Self { syntax })
24461 } else {
24462 None
24463 }
24464 }
24465 #[inline]
24466 fn syntax(&self) -> &SyntaxNode {
24467 &self.syntax
24468 }
24469}
24470impl AstNode for OperatorClassOptionList {
24471 #[inline]
24472 fn can_cast(kind: SyntaxKind) -> bool {
24473 kind == SyntaxKind::OPERATOR_CLASS_OPTION_LIST
24474 }
24475 #[inline]
24476 fn cast(syntax: SyntaxNode) -> Option<Self> {
24477 if Self::can_cast(syntax.kind()) {
24478 Some(Self { syntax })
24479 } else {
24480 None
24481 }
24482 }
24483 #[inline]
24484 fn syntax(&self) -> &SyntaxNode {
24485 &self.syntax
24486 }
24487}
24488impl AstNode for OptionItem {
24489 #[inline]
24490 fn can_cast(kind: SyntaxKind) -> bool {
24491 kind == SyntaxKind::OPTION_ITEM
24492 }
24493 #[inline]
24494 fn cast(syntax: SyntaxNode) -> Option<Self> {
24495 if Self::can_cast(syntax.kind()) {
24496 Some(Self { syntax })
24497 } else {
24498 None
24499 }
24500 }
24501 #[inline]
24502 fn syntax(&self) -> &SyntaxNode {
24503 &self.syntax
24504 }
24505}
24506impl AstNode for OptionItemList {
24507 #[inline]
24508 fn can_cast(kind: SyntaxKind) -> bool {
24509 kind == SyntaxKind::OPTION_ITEM_LIST
24510 }
24511 #[inline]
24512 fn cast(syntax: SyntaxNode) -> Option<Self> {
24513 if Self::can_cast(syntax.kind()) {
24514 Some(Self { syntax })
24515 } else {
24516 None
24517 }
24518 }
24519 #[inline]
24520 fn syntax(&self) -> &SyntaxNode {
24521 &self.syntax
24522 }
24523}
24524impl AstNode for OrReplace {
24525 #[inline]
24526 fn can_cast(kind: SyntaxKind) -> bool {
24527 kind == SyntaxKind::OR_REPLACE
24528 }
24529 #[inline]
24530 fn cast(syntax: SyntaxNode) -> Option<Self> {
24531 if Self::can_cast(syntax.kind()) {
24532 Some(Self { syntax })
24533 } else {
24534 None
24535 }
24536 }
24537 #[inline]
24538 fn syntax(&self) -> &SyntaxNode {
24539 &self.syntax
24540 }
24541}
24542impl AstNode for OrderByClause {
24543 #[inline]
24544 fn can_cast(kind: SyntaxKind) -> bool {
24545 kind == SyntaxKind::ORDER_BY_CLAUSE
24546 }
24547 #[inline]
24548 fn cast(syntax: SyntaxNode) -> Option<Self> {
24549 if Self::can_cast(syntax.kind()) {
24550 Some(Self { syntax })
24551 } else {
24552 None
24553 }
24554 }
24555 #[inline]
24556 fn syntax(&self) -> &SyntaxNode {
24557 &self.syntax
24558 }
24559}
24560impl AstNode for OverClause {
24561 #[inline]
24562 fn can_cast(kind: SyntaxKind) -> bool {
24563 kind == SyntaxKind::OVER_CLAUSE
24564 }
24565 #[inline]
24566 fn cast(syntax: SyntaxNode) -> Option<Self> {
24567 if Self::can_cast(syntax.kind()) {
24568 Some(Self { syntax })
24569 } else {
24570 None
24571 }
24572 }
24573 #[inline]
24574 fn syntax(&self) -> &SyntaxNode {
24575 &self.syntax
24576 }
24577}
24578impl AstNode for OverlayFn {
24579 #[inline]
24580 fn can_cast(kind: SyntaxKind) -> bool {
24581 kind == SyntaxKind::OVERLAY_FN
24582 }
24583 #[inline]
24584 fn cast(syntax: SyntaxNode) -> Option<Self> {
24585 if Self::can_cast(syntax.kind()) {
24586 Some(Self { syntax })
24587 } else {
24588 None
24589 }
24590 }
24591 #[inline]
24592 fn syntax(&self) -> &SyntaxNode {
24593 &self.syntax
24594 }
24595}
24596impl AstNode for OwnerTo {
24597 #[inline]
24598 fn can_cast(kind: SyntaxKind) -> bool {
24599 kind == SyntaxKind::OWNER_TO
24600 }
24601 #[inline]
24602 fn cast(syntax: SyntaxNode) -> Option<Self> {
24603 if Self::can_cast(syntax.kind()) {
24604 Some(Self { syntax })
24605 } else {
24606 None
24607 }
24608 }
24609 #[inline]
24610 fn syntax(&self) -> &SyntaxNode {
24611 &self.syntax
24612 }
24613}
24614impl AstNode for ParallelFuncOption {
24615 #[inline]
24616 fn can_cast(kind: SyntaxKind) -> bool {
24617 kind == SyntaxKind::PARALLEL_FUNC_OPTION
24618 }
24619 #[inline]
24620 fn cast(syntax: SyntaxNode) -> Option<Self> {
24621 if Self::can_cast(syntax.kind()) {
24622 Some(Self { syntax })
24623 } else {
24624 None
24625 }
24626 }
24627 #[inline]
24628 fn syntax(&self) -> &SyntaxNode {
24629 &self.syntax
24630 }
24631}
24632impl AstNode for Param {
24633 #[inline]
24634 fn can_cast(kind: SyntaxKind) -> bool {
24635 kind == SyntaxKind::PARAM
24636 }
24637 #[inline]
24638 fn cast(syntax: SyntaxNode) -> Option<Self> {
24639 if Self::can_cast(syntax.kind()) {
24640 Some(Self { syntax })
24641 } else {
24642 None
24643 }
24644 }
24645 #[inline]
24646 fn syntax(&self) -> &SyntaxNode {
24647 &self.syntax
24648 }
24649}
24650impl AstNode for ParamDefault {
24651 #[inline]
24652 fn can_cast(kind: SyntaxKind) -> bool {
24653 kind == SyntaxKind::PARAM_DEFAULT
24654 }
24655 #[inline]
24656 fn cast(syntax: SyntaxNode) -> Option<Self> {
24657 if Self::can_cast(syntax.kind()) {
24658 Some(Self { syntax })
24659 } else {
24660 None
24661 }
24662 }
24663 #[inline]
24664 fn syntax(&self) -> &SyntaxNode {
24665 &self.syntax
24666 }
24667}
24668impl AstNode for ParamIn {
24669 #[inline]
24670 fn can_cast(kind: SyntaxKind) -> bool {
24671 kind == SyntaxKind::PARAM_IN
24672 }
24673 #[inline]
24674 fn cast(syntax: SyntaxNode) -> Option<Self> {
24675 if Self::can_cast(syntax.kind()) {
24676 Some(Self { syntax })
24677 } else {
24678 None
24679 }
24680 }
24681 #[inline]
24682 fn syntax(&self) -> &SyntaxNode {
24683 &self.syntax
24684 }
24685}
24686impl AstNode for ParamInOut {
24687 #[inline]
24688 fn can_cast(kind: SyntaxKind) -> bool {
24689 kind == SyntaxKind::PARAM_IN_OUT
24690 }
24691 #[inline]
24692 fn cast(syntax: SyntaxNode) -> Option<Self> {
24693 if Self::can_cast(syntax.kind()) {
24694 Some(Self { syntax })
24695 } else {
24696 None
24697 }
24698 }
24699 #[inline]
24700 fn syntax(&self) -> &SyntaxNode {
24701 &self.syntax
24702 }
24703}
24704impl AstNode for ParamList {
24705 #[inline]
24706 fn can_cast(kind: SyntaxKind) -> bool {
24707 kind == SyntaxKind::PARAM_LIST
24708 }
24709 #[inline]
24710 fn cast(syntax: SyntaxNode) -> Option<Self> {
24711 if Self::can_cast(syntax.kind()) {
24712 Some(Self { syntax })
24713 } else {
24714 None
24715 }
24716 }
24717 #[inline]
24718 fn syntax(&self) -> &SyntaxNode {
24719 &self.syntax
24720 }
24721}
24722impl AstNode for ParamOut {
24723 #[inline]
24724 fn can_cast(kind: SyntaxKind) -> bool {
24725 kind == SyntaxKind::PARAM_OUT
24726 }
24727 #[inline]
24728 fn cast(syntax: SyntaxNode) -> Option<Self> {
24729 if Self::can_cast(syntax.kind()) {
24730 Some(Self { syntax })
24731 } else {
24732 None
24733 }
24734 }
24735 #[inline]
24736 fn syntax(&self) -> &SyntaxNode {
24737 &self.syntax
24738 }
24739}
24740impl AstNode for ParamVariadic {
24741 #[inline]
24742 fn can_cast(kind: SyntaxKind) -> bool {
24743 kind == SyntaxKind::PARAM_VARIADIC
24744 }
24745 #[inline]
24746 fn cast(syntax: SyntaxNode) -> Option<Self> {
24747 if Self::can_cast(syntax.kind()) {
24748 Some(Self { syntax })
24749 } else {
24750 None
24751 }
24752 }
24753 #[inline]
24754 fn syntax(&self) -> &SyntaxNode {
24755 &self.syntax
24756 }
24757}
24758impl AstNode for ParenExpr {
24759 #[inline]
24760 fn can_cast(kind: SyntaxKind) -> bool {
24761 kind == SyntaxKind::PAREN_EXPR
24762 }
24763 #[inline]
24764 fn cast(syntax: SyntaxNode) -> Option<Self> {
24765 if Self::can_cast(syntax.kind()) {
24766 Some(Self { syntax })
24767 } else {
24768 None
24769 }
24770 }
24771 #[inline]
24772 fn syntax(&self) -> &SyntaxNode {
24773 &self.syntax
24774 }
24775}
24776impl AstNode for ParenSelect {
24777 #[inline]
24778 fn can_cast(kind: SyntaxKind) -> bool {
24779 kind == SyntaxKind::PAREN_SELECT
24780 }
24781 #[inline]
24782 fn cast(syntax: SyntaxNode) -> Option<Self> {
24783 if Self::can_cast(syntax.kind()) {
24784 Some(Self { syntax })
24785 } else {
24786 None
24787 }
24788 }
24789 #[inline]
24790 fn syntax(&self) -> &SyntaxNode {
24791 &self.syntax
24792 }
24793}
24794impl AstNode for Partition {
24795 #[inline]
24796 fn can_cast(kind: SyntaxKind) -> bool {
24797 kind == SyntaxKind::PARTITION
24798 }
24799 #[inline]
24800 fn cast(syntax: SyntaxNode) -> Option<Self> {
24801 if Self::can_cast(syntax.kind()) {
24802 Some(Self { syntax })
24803 } else {
24804 None
24805 }
24806 }
24807 #[inline]
24808 fn syntax(&self) -> &SyntaxNode {
24809 &self.syntax
24810 }
24811}
24812impl AstNode for PartitionBy {
24813 #[inline]
24814 fn can_cast(kind: SyntaxKind) -> bool {
24815 kind == SyntaxKind::PARTITION_BY
24816 }
24817 #[inline]
24818 fn cast(syntax: SyntaxNode) -> Option<Self> {
24819 if Self::can_cast(syntax.kind()) {
24820 Some(Self { syntax })
24821 } else {
24822 None
24823 }
24824 }
24825 #[inline]
24826 fn syntax(&self) -> &SyntaxNode {
24827 &self.syntax
24828 }
24829}
24830impl AstNode for PartitionDefault {
24831 #[inline]
24832 fn can_cast(kind: SyntaxKind) -> bool {
24833 kind == SyntaxKind::PARTITION_DEFAULT
24834 }
24835 #[inline]
24836 fn cast(syntax: SyntaxNode) -> Option<Self> {
24837 if Self::can_cast(syntax.kind()) {
24838 Some(Self { syntax })
24839 } else {
24840 None
24841 }
24842 }
24843 #[inline]
24844 fn syntax(&self) -> &SyntaxNode {
24845 &self.syntax
24846 }
24847}
24848impl AstNode for PartitionForValuesFrom {
24849 #[inline]
24850 fn can_cast(kind: SyntaxKind) -> bool {
24851 kind == SyntaxKind::PARTITION_FOR_VALUES_FROM
24852 }
24853 #[inline]
24854 fn cast(syntax: SyntaxNode) -> Option<Self> {
24855 if Self::can_cast(syntax.kind()) {
24856 Some(Self { syntax })
24857 } else {
24858 None
24859 }
24860 }
24861 #[inline]
24862 fn syntax(&self) -> &SyntaxNode {
24863 &self.syntax
24864 }
24865}
24866impl AstNode for PartitionForValuesIn {
24867 #[inline]
24868 fn can_cast(kind: SyntaxKind) -> bool {
24869 kind == SyntaxKind::PARTITION_FOR_VALUES_IN
24870 }
24871 #[inline]
24872 fn cast(syntax: SyntaxNode) -> Option<Self> {
24873 if Self::can_cast(syntax.kind()) {
24874 Some(Self { syntax })
24875 } else {
24876 None
24877 }
24878 }
24879 #[inline]
24880 fn syntax(&self) -> &SyntaxNode {
24881 &self.syntax
24882 }
24883}
24884impl AstNode for PartitionForValuesWith {
24885 #[inline]
24886 fn can_cast(kind: SyntaxKind) -> bool {
24887 kind == SyntaxKind::PARTITION_FOR_VALUES_WITH
24888 }
24889 #[inline]
24890 fn cast(syntax: SyntaxNode) -> Option<Self> {
24891 if Self::can_cast(syntax.kind()) {
24892 Some(Self { syntax })
24893 } else {
24894 None
24895 }
24896 }
24897 #[inline]
24898 fn syntax(&self) -> &SyntaxNode {
24899 &self.syntax
24900 }
24901}
24902impl AstNode for PartitionItem {
24903 #[inline]
24904 fn can_cast(kind: SyntaxKind) -> bool {
24905 kind == SyntaxKind::PARTITION_ITEM
24906 }
24907 #[inline]
24908 fn cast(syntax: SyntaxNode) -> Option<Self> {
24909 if Self::can_cast(syntax.kind()) {
24910 Some(Self { syntax })
24911 } else {
24912 None
24913 }
24914 }
24915 #[inline]
24916 fn syntax(&self) -> &SyntaxNode {
24917 &self.syntax
24918 }
24919}
24920impl AstNode for PartitionItemList {
24921 #[inline]
24922 fn can_cast(kind: SyntaxKind) -> bool {
24923 kind == SyntaxKind::PARTITION_ITEM_LIST
24924 }
24925 #[inline]
24926 fn cast(syntax: SyntaxNode) -> Option<Self> {
24927 if Self::can_cast(syntax.kind()) {
24928 Some(Self { syntax })
24929 } else {
24930 None
24931 }
24932 }
24933 #[inline]
24934 fn syntax(&self) -> &SyntaxNode {
24935 &self.syntax
24936 }
24937}
24938impl AstNode for PartitionList {
24939 #[inline]
24940 fn can_cast(kind: SyntaxKind) -> bool {
24941 kind == SyntaxKind::PARTITION_LIST
24942 }
24943 #[inline]
24944 fn cast(syntax: SyntaxNode) -> Option<Self> {
24945 if Self::can_cast(syntax.kind()) {
24946 Some(Self { syntax })
24947 } else {
24948 None
24949 }
24950 }
24951 #[inline]
24952 fn syntax(&self) -> &SyntaxNode {
24953 &self.syntax
24954 }
24955}
24956impl AstNode for PartitionOf {
24957 #[inline]
24958 fn can_cast(kind: SyntaxKind) -> bool {
24959 kind == SyntaxKind::PARTITION_OF
24960 }
24961 #[inline]
24962 fn cast(syntax: SyntaxNode) -> Option<Self> {
24963 if Self::can_cast(syntax.kind()) {
24964 Some(Self { syntax })
24965 } else {
24966 None
24967 }
24968 }
24969 #[inline]
24970 fn syntax(&self) -> &SyntaxNode {
24971 &self.syntax
24972 }
24973}
24974impl AstNode for Path {
24975 #[inline]
24976 fn can_cast(kind: SyntaxKind) -> bool {
24977 kind == SyntaxKind::PATH
24978 }
24979 #[inline]
24980 fn cast(syntax: SyntaxNode) -> Option<Self> {
24981 if Self::can_cast(syntax.kind()) {
24982 Some(Self { syntax })
24983 } else {
24984 None
24985 }
24986 }
24987 #[inline]
24988 fn syntax(&self) -> &SyntaxNode {
24989 &self.syntax
24990 }
24991}
24992impl AstNode for PathSegment {
24993 #[inline]
24994 fn can_cast(kind: SyntaxKind) -> bool {
24995 kind == SyntaxKind::PATH_SEGMENT
24996 }
24997 #[inline]
24998 fn cast(syntax: SyntaxNode) -> Option<Self> {
24999 if Self::can_cast(syntax.kind()) {
25000 Some(Self { syntax })
25001 } else {
25002 None
25003 }
25004 }
25005 #[inline]
25006 fn syntax(&self) -> &SyntaxNode {
25007 &self.syntax
25008 }
25009}
25010impl AstNode for PathType {
25011 #[inline]
25012 fn can_cast(kind: SyntaxKind) -> bool {
25013 kind == SyntaxKind::PATH_TYPE
25014 }
25015 #[inline]
25016 fn cast(syntax: SyntaxNode) -> Option<Self> {
25017 if Self::can_cast(syntax.kind()) {
25018 Some(Self { syntax })
25019 } else {
25020 None
25021 }
25022 }
25023 #[inline]
25024 fn syntax(&self) -> &SyntaxNode {
25025 &self.syntax
25026 }
25027}
25028impl AstNode for PercentType {
25029 #[inline]
25030 fn can_cast(kind: SyntaxKind) -> bool {
25031 kind == SyntaxKind::PERCENT_TYPE
25032 }
25033 #[inline]
25034 fn cast(syntax: SyntaxNode) -> Option<Self> {
25035 if Self::can_cast(syntax.kind()) {
25036 Some(Self { syntax })
25037 } else {
25038 None
25039 }
25040 }
25041 #[inline]
25042 fn syntax(&self) -> &SyntaxNode {
25043 &self.syntax
25044 }
25045}
25046impl AstNode for PercentTypeClause {
25047 #[inline]
25048 fn can_cast(kind: SyntaxKind) -> bool {
25049 kind == SyntaxKind::PERCENT_TYPE_CLAUSE
25050 }
25051 #[inline]
25052 fn cast(syntax: SyntaxNode) -> Option<Self> {
25053 if Self::can_cast(syntax.kind()) {
25054 Some(Self { syntax })
25055 } else {
25056 None
25057 }
25058 }
25059 #[inline]
25060 fn syntax(&self) -> &SyntaxNode {
25061 &self.syntax
25062 }
25063}
25064impl AstNode for PositionFn {
25065 #[inline]
25066 fn can_cast(kind: SyntaxKind) -> bool {
25067 kind == SyntaxKind::POSITION_FN
25068 }
25069 #[inline]
25070 fn cast(syntax: SyntaxNode) -> Option<Self> {
25071 if Self::can_cast(syntax.kind()) {
25072 Some(Self { syntax })
25073 } else {
25074 None
25075 }
25076 }
25077 #[inline]
25078 fn syntax(&self) -> &SyntaxNode {
25079 &self.syntax
25080 }
25081}
25082impl AstNode for PostfixExpr {
25083 #[inline]
25084 fn can_cast(kind: SyntaxKind) -> bool {
25085 kind == SyntaxKind::POSTFIX_EXPR
25086 }
25087 #[inline]
25088 fn cast(syntax: SyntaxNode) -> Option<Self> {
25089 if Self::can_cast(syntax.kind()) {
25090 Some(Self { syntax })
25091 } else {
25092 None
25093 }
25094 }
25095 #[inline]
25096 fn syntax(&self) -> &SyntaxNode {
25097 &self.syntax
25098 }
25099}
25100impl AstNode for PrefixExpr {
25101 #[inline]
25102 fn can_cast(kind: SyntaxKind) -> bool {
25103 kind == SyntaxKind::PREFIX_EXPR
25104 }
25105 #[inline]
25106 fn cast(syntax: SyntaxNode) -> Option<Self> {
25107 if Self::can_cast(syntax.kind()) {
25108 Some(Self { syntax })
25109 } else {
25110 None
25111 }
25112 }
25113 #[inline]
25114 fn syntax(&self) -> &SyntaxNode {
25115 &self.syntax
25116 }
25117}
25118impl AstNode for Prepare {
25119 #[inline]
25120 fn can_cast(kind: SyntaxKind) -> bool {
25121 kind == SyntaxKind::PREPARE
25122 }
25123 #[inline]
25124 fn cast(syntax: SyntaxNode) -> Option<Self> {
25125 if Self::can_cast(syntax.kind()) {
25126 Some(Self { syntax })
25127 } else {
25128 None
25129 }
25130 }
25131 #[inline]
25132 fn syntax(&self) -> &SyntaxNode {
25133 &self.syntax
25134 }
25135}
25136impl AstNode for PrepareTransaction {
25137 #[inline]
25138 fn can_cast(kind: SyntaxKind) -> bool {
25139 kind == SyntaxKind::PREPARE_TRANSACTION
25140 }
25141 #[inline]
25142 fn cast(syntax: SyntaxNode) -> Option<Self> {
25143 if Self::can_cast(syntax.kind()) {
25144 Some(Self { syntax })
25145 } else {
25146 None
25147 }
25148 }
25149 #[inline]
25150 fn syntax(&self) -> &SyntaxNode {
25151 &self.syntax
25152 }
25153}
25154impl AstNode for PreserveRows {
25155 #[inline]
25156 fn can_cast(kind: SyntaxKind) -> bool {
25157 kind == SyntaxKind::PRESERVE_ROWS
25158 }
25159 #[inline]
25160 fn cast(syntax: SyntaxNode) -> Option<Self> {
25161 if Self::can_cast(syntax.kind()) {
25162 Some(Self { syntax })
25163 } else {
25164 None
25165 }
25166 }
25167 #[inline]
25168 fn syntax(&self) -> &SyntaxNode {
25169 &self.syntax
25170 }
25171}
25172impl AstNode for PrimaryKeyConstraint {
25173 #[inline]
25174 fn can_cast(kind: SyntaxKind) -> bool {
25175 kind == SyntaxKind::PRIMARY_KEY_CONSTRAINT
25176 }
25177 #[inline]
25178 fn cast(syntax: SyntaxNode) -> Option<Self> {
25179 if Self::can_cast(syntax.kind()) {
25180 Some(Self { syntax })
25181 } else {
25182 None
25183 }
25184 }
25185 #[inline]
25186 fn syntax(&self) -> &SyntaxNode {
25187 &self.syntax
25188 }
25189}
25190impl AstNode for PrivilegeTarget {
25191 #[inline]
25192 fn can_cast(kind: SyntaxKind) -> bool {
25193 kind == SyntaxKind::PRIVILEGE_TARGET
25194 }
25195 #[inline]
25196 fn cast(syntax: SyntaxNode) -> Option<Self> {
25197 if Self::can_cast(syntax.kind()) {
25198 Some(Self { syntax })
25199 } else {
25200 None
25201 }
25202 }
25203 #[inline]
25204 fn syntax(&self) -> &SyntaxNode {
25205 &self.syntax
25206 }
25207}
25208impl AstNode for Privileges {
25209 #[inline]
25210 fn can_cast(kind: SyntaxKind) -> bool {
25211 kind == SyntaxKind::PRIVILEGES
25212 }
25213 #[inline]
25214 fn cast(syntax: SyntaxNode) -> Option<Self> {
25215 if Self::can_cast(syntax.kind()) {
25216 Some(Self { syntax })
25217 } else {
25218 None
25219 }
25220 }
25221 #[inline]
25222 fn syntax(&self) -> &SyntaxNode {
25223 &self.syntax
25224 }
25225}
25226impl AstNode for PublicationObject {
25227 #[inline]
25228 fn can_cast(kind: SyntaxKind) -> bool {
25229 kind == SyntaxKind::PUBLICATION_OBJECT
25230 }
25231 #[inline]
25232 fn cast(syntax: SyntaxNode) -> Option<Self> {
25233 if Self::can_cast(syntax.kind()) {
25234 Some(Self { syntax })
25235 } else {
25236 None
25237 }
25238 }
25239 #[inline]
25240 fn syntax(&self) -> &SyntaxNode {
25241 &self.syntax
25242 }
25243}
25244impl AstNode for ReadCommitted {
25245 #[inline]
25246 fn can_cast(kind: SyntaxKind) -> bool {
25247 kind == SyntaxKind::READ_COMMITTED
25248 }
25249 #[inline]
25250 fn cast(syntax: SyntaxNode) -> Option<Self> {
25251 if Self::can_cast(syntax.kind()) {
25252 Some(Self { syntax })
25253 } else {
25254 None
25255 }
25256 }
25257 #[inline]
25258 fn syntax(&self) -> &SyntaxNode {
25259 &self.syntax
25260 }
25261}
25262impl AstNode for ReadOnly {
25263 #[inline]
25264 fn can_cast(kind: SyntaxKind) -> bool {
25265 kind == SyntaxKind::READ_ONLY
25266 }
25267 #[inline]
25268 fn cast(syntax: SyntaxNode) -> Option<Self> {
25269 if Self::can_cast(syntax.kind()) {
25270 Some(Self { syntax })
25271 } else {
25272 None
25273 }
25274 }
25275 #[inline]
25276 fn syntax(&self) -> &SyntaxNode {
25277 &self.syntax
25278 }
25279}
25280impl AstNode for ReadUncommitted {
25281 #[inline]
25282 fn can_cast(kind: SyntaxKind) -> bool {
25283 kind == SyntaxKind::READ_UNCOMMITTED
25284 }
25285 #[inline]
25286 fn cast(syntax: SyntaxNode) -> Option<Self> {
25287 if Self::can_cast(syntax.kind()) {
25288 Some(Self { syntax })
25289 } else {
25290 None
25291 }
25292 }
25293 #[inline]
25294 fn syntax(&self) -> &SyntaxNode {
25295 &self.syntax
25296 }
25297}
25298impl AstNode for ReadWrite {
25299 #[inline]
25300 fn can_cast(kind: SyntaxKind) -> bool {
25301 kind == SyntaxKind::READ_WRITE
25302 }
25303 #[inline]
25304 fn cast(syntax: SyntaxNode) -> Option<Self> {
25305 if Self::can_cast(syntax.kind()) {
25306 Some(Self { syntax })
25307 } else {
25308 None
25309 }
25310 }
25311 #[inline]
25312 fn syntax(&self) -> &SyntaxNode {
25313 &self.syntax
25314 }
25315}
25316impl AstNode for Reassign {
25317 #[inline]
25318 fn can_cast(kind: SyntaxKind) -> bool {
25319 kind == SyntaxKind::REASSIGN
25320 }
25321 #[inline]
25322 fn cast(syntax: SyntaxNode) -> Option<Self> {
25323 if Self::can_cast(syntax.kind()) {
25324 Some(Self { syntax })
25325 } else {
25326 None
25327 }
25328 }
25329 #[inline]
25330 fn syntax(&self) -> &SyntaxNode {
25331 &self.syntax
25332 }
25333}
25334impl AstNode for ReferencesConstraint {
25335 #[inline]
25336 fn can_cast(kind: SyntaxKind) -> bool {
25337 kind == SyntaxKind::REFERENCES_CONSTRAINT
25338 }
25339 #[inline]
25340 fn cast(syntax: SyntaxNode) -> Option<Self> {
25341 if Self::can_cast(syntax.kind()) {
25342 Some(Self { syntax })
25343 } else {
25344 None
25345 }
25346 }
25347 #[inline]
25348 fn syntax(&self) -> &SyntaxNode {
25349 &self.syntax
25350 }
25351}
25352impl AstNode for Referencing {
25353 #[inline]
25354 fn can_cast(kind: SyntaxKind) -> bool {
25355 kind == SyntaxKind::REFERENCING
25356 }
25357 #[inline]
25358 fn cast(syntax: SyntaxNode) -> Option<Self> {
25359 if Self::can_cast(syntax.kind()) {
25360 Some(Self { syntax })
25361 } else {
25362 None
25363 }
25364 }
25365 #[inline]
25366 fn syntax(&self) -> &SyntaxNode {
25367 &self.syntax
25368 }
25369}
25370impl AstNode for ReferencingTable {
25371 #[inline]
25372 fn can_cast(kind: SyntaxKind) -> bool {
25373 kind == SyntaxKind::REFERENCING_TABLE
25374 }
25375 #[inline]
25376 fn cast(syntax: SyntaxNode) -> Option<Self> {
25377 if Self::can_cast(syntax.kind()) {
25378 Some(Self { syntax })
25379 } else {
25380 None
25381 }
25382 }
25383 #[inline]
25384 fn syntax(&self) -> &SyntaxNode {
25385 &self.syntax
25386 }
25387}
25388impl AstNode for Refresh {
25389 #[inline]
25390 fn can_cast(kind: SyntaxKind) -> bool {
25391 kind == SyntaxKind::REFRESH
25392 }
25393 #[inline]
25394 fn cast(syntax: SyntaxNode) -> Option<Self> {
25395 if Self::can_cast(syntax.kind()) {
25396 Some(Self { syntax })
25397 } else {
25398 None
25399 }
25400 }
25401 #[inline]
25402 fn syntax(&self) -> &SyntaxNode {
25403 &self.syntax
25404 }
25405}
25406impl AstNode for RefreshCollationVersion {
25407 #[inline]
25408 fn can_cast(kind: SyntaxKind) -> bool {
25409 kind == SyntaxKind::REFRESH_COLLATION_VERSION
25410 }
25411 #[inline]
25412 fn cast(syntax: SyntaxNode) -> Option<Self> {
25413 if Self::can_cast(syntax.kind()) {
25414 Some(Self { syntax })
25415 } else {
25416 None
25417 }
25418 }
25419 #[inline]
25420 fn syntax(&self) -> &SyntaxNode {
25421 &self.syntax
25422 }
25423}
25424impl AstNode for RefreshVersion {
25425 #[inline]
25426 fn can_cast(kind: SyntaxKind) -> bool {
25427 kind == SyntaxKind::REFRESH_VERSION
25428 }
25429 #[inline]
25430 fn cast(syntax: SyntaxNode) -> Option<Self> {
25431 if Self::can_cast(syntax.kind()) {
25432 Some(Self { syntax })
25433 } else {
25434 None
25435 }
25436 }
25437 #[inline]
25438 fn syntax(&self) -> &SyntaxNode {
25439 &self.syntax
25440 }
25441}
25442impl AstNode for Reindex {
25443 #[inline]
25444 fn can_cast(kind: SyntaxKind) -> bool {
25445 kind == SyntaxKind::REINDEX
25446 }
25447 #[inline]
25448 fn cast(syntax: SyntaxNode) -> Option<Self> {
25449 if Self::can_cast(syntax.kind()) {
25450 Some(Self { syntax })
25451 } else {
25452 None
25453 }
25454 }
25455 #[inline]
25456 fn syntax(&self) -> &SyntaxNode {
25457 &self.syntax
25458 }
25459}
25460impl AstNode for RelationName {
25461 #[inline]
25462 fn can_cast(kind: SyntaxKind) -> bool {
25463 kind == SyntaxKind::RELATION_NAME
25464 }
25465 #[inline]
25466 fn cast(syntax: SyntaxNode) -> Option<Self> {
25467 if Self::can_cast(syntax.kind()) {
25468 Some(Self { syntax })
25469 } else {
25470 None
25471 }
25472 }
25473 #[inline]
25474 fn syntax(&self) -> &SyntaxNode {
25475 &self.syntax
25476 }
25477}
25478impl AstNode for ReleaseSavepoint {
25479 #[inline]
25480 fn can_cast(kind: SyntaxKind) -> bool {
25481 kind == SyntaxKind::RELEASE_SAVEPOINT
25482 }
25483 #[inline]
25484 fn cast(syntax: SyntaxNode) -> Option<Self> {
25485 if Self::can_cast(syntax.kind()) {
25486 Some(Self { syntax })
25487 } else {
25488 None
25489 }
25490 }
25491 #[inline]
25492 fn syntax(&self) -> &SyntaxNode {
25493 &self.syntax
25494 }
25495}
25496impl AstNode for RenameColumn {
25497 #[inline]
25498 fn can_cast(kind: SyntaxKind) -> bool {
25499 kind == SyntaxKind::RENAME_COLUMN
25500 }
25501 #[inline]
25502 fn cast(syntax: SyntaxNode) -> Option<Self> {
25503 if Self::can_cast(syntax.kind()) {
25504 Some(Self { syntax })
25505 } else {
25506 None
25507 }
25508 }
25509 #[inline]
25510 fn syntax(&self) -> &SyntaxNode {
25511 &self.syntax
25512 }
25513}
25514impl AstNode for RenameConstraint {
25515 #[inline]
25516 fn can_cast(kind: SyntaxKind) -> bool {
25517 kind == SyntaxKind::RENAME_CONSTRAINT
25518 }
25519 #[inline]
25520 fn cast(syntax: SyntaxNode) -> Option<Self> {
25521 if Self::can_cast(syntax.kind()) {
25522 Some(Self { syntax })
25523 } else {
25524 None
25525 }
25526 }
25527 #[inline]
25528 fn syntax(&self) -> &SyntaxNode {
25529 &self.syntax
25530 }
25531}
25532impl AstNode for RenameTo {
25533 #[inline]
25534 fn can_cast(kind: SyntaxKind) -> bool {
25535 kind == SyntaxKind::RENAME_TO
25536 }
25537 #[inline]
25538 fn cast(syntax: SyntaxNode) -> Option<Self> {
25539 if Self::can_cast(syntax.kind()) {
25540 Some(Self { syntax })
25541 } else {
25542 None
25543 }
25544 }
25545 #[inline]
25546 fn syntax(&self) -> &SyntaxNode {
25547 &self.syntax
25548 }
25549}
25550impl AstNode for RepeatableClause {
25551 #[inline]
25552 fn can_cast(kind: SyntaxKind) -> bool {
25553 kind == SyntaxKind::REPEATABLE_CLAUSE
25554 }
25555 #[inline]
25556 fn cast(syntax: SyntaxNode) -> Option<Self> {
25557 if Self::can_cast(syntax.kind()) {
25558 Some(Self { syntax })
25559 } else {
25560 None
25561 }
25562 }
25563 #[inline]
25564 fn syntax(&self) -> &SyntaxNode {
25565 &self.syntax
25566 }
25567}
25568impl AstNode for RepeatableRead {
25569 #[inline]
25570 fn can_cast(kind: SyntaxKind) -> bool {
25571 kind == SyntaxKind::REPEATABLE_READ
25572 }
25573 #[inline]
25574 fn cast(syntax: SyntaxNode) -> Option<Self> {
25575 if Self::can_cast(syntax.kind()) {
25576 Some(Self { syntax })
25577 } else {
25578 None
25579 }
25580 }
25581 #[inline]
25582 fn syntax(&self) -> &SyntaxNode {
25583 &self.syntax
25584 }
25585}
25586impl AstNode for ReplicaIdentity {
25587 #[inline]
25588 fn can_cast(kind: SyntaxKind) -> bool {
25589 kind == SyntaxKind::REPLICA_IDENTITY
25590 }
25591 #[inline]
25592 fn cast(syntax: SyntaxNode) -> Option<Self> {
25593 if Self::can_cast(syntax.kind()) {
25594 Some(Self { syntax })
25595 } else {
25596 None
25597 }
25598 }
25599 #[inline]
25600 fn syntax(&self) -> &SyntaxNode {
25601 &self.syntax
25602 }
25603}
25604impl AstNode for Reset {
25605 #[inline]
25606 fn can_cast(kind: SyntaxKind) -> bool {
25607 kind == SyntaxKind::RESET
25608 }
25609 #[inline]
25610 fn cast(syntax: SyntaxNode) -> Option<Self> {
25611 if Self::can_cast(syntax.kind()) {
25612 Some(Self { syntax })
25613 } else {
25614 None
25615 }
25616 }
25617 #[inline]
25618 fn syntax(&self) -> &SyntaxNode {
25619 &self.syntax
25620 }
25621}
25622impl AstNode for ResetConfigParam {
25623 #[inline]
25624 fn can_cast(kind: SyntaxKind) -> bool {
25625 kind == SyntaxKind::RESET_CONFIG_PARAM
25626 }
25627 #[inline]
25628 fn cast(syntax: SyntaxNode) -> Option<Self> {
25629 if Self::can_cast(syntax.kind()) {
25630 Some(Self { syntax })
25631 } else {
25632 None
25633 }
25634 }
25635 #[inline]
25636 fn syntax(&self) -> &SyntaxNode {
25637 &self.syntax
25638 }
25639}
25640impl AstNode for ResetFuncOption {
25641 #[inline]
25642 fn can_cast(kind: SyntaxKind) -> bool {
25643 kind == SyntaxKind::RESET_FUNC_OPTION
25644 }
25645 #[inline]
25646 fn cast(syntax: SyntaxNode) -> Option<Self> {
25647 if Self::can_cast(syntax.kind()) {
25648 Some(Self { syntax })
25649 } else {
25650 None
25651 }
25652 }
25653 #[inline]
25654 fn syntax(&self) -> &SyntaxNode {
25655 &self.syntax
25656 }
25657}
25658impl AstNode for ResetOptions {
25659 #[inline]
25660 fn can_cast(kind: SyntaxKind) -> bool {
25661 kind == SyntaxKind::RESET_OPTIONS
25662 }
25663 #[inline]
25664 fn cast(syntax: SyntaxNode) -> Option<Self> {
25665 if Self::can_cast(syntax.kind()) {
25666 Some(Self { syntax })
25667 } else {
25668 None
25669 }
25670 }
25671 #[inline]
25672 fn syntax(&self) -> &SyntaxNode {
25673 &self.syntax
25674 }
25675}
25676impl AstNode for ResetSessionAuth {
25677 #[inline]
25678 fn can_cast(kind: SyntaxKind) -> bool {
25679 kind == SyntaxKind::RESET_SESSION_AUTH
25680 }
25681 #[inline]
25682 fn cast(syntax: SyntaxNode) -> Option<Self> {
25683 if Self::can_cast(syntax.kind()) {
25684 Some(Self { syntax })
25685 } else {
25686 None
25687 }
25688 }
25689 #[inline]
25690 fn syntax(&self) -> &SyntaxNode {
25691 &self.syntax
25692 }
25693}
25694impl AstNode for Restart {
25695 #[inline]
25696 fn can_cast(kind: SyntaxKind) -> bool {
25697 kind == SyntaxKind::RESTART
25698 }
25699 #[inline]
25700 fn cast(syntax: SyntaxNode) -> Option<Self> {
25701 if Self::can_cast(syntax.kind()) {
25702 Some(Self { syntax })
25703 } else {
25704 None
25705 }
25706 }
25707 #[inline]
25708 fn syntax(&self) -> &SyntaxNode {
25709 &self.syntax
25710 }
25711}
25712impl AstNode for Restrict {
25713 #[inline]
25714 fn can_cast(kind: SyntaxKind) -> bool {
25715 kind == SyntaxKind::RESTRICT
25716 }
25717 #[inline]
25718 fn cast(syntax: SyntaxNode) -> Option<Self> {
25719 if Self::can_cast(syntax.kind()) {
25720 Some(Self { syntax })
25721 } else {
25722 None
25723 }
25724 }
25725 #[inline]
25726 fn syntax(&self) -> &SyntaxNode {
25727 &self.syntax
25728 }
25729}
25730impl AstNode for RetType {
25731 #[inline]
25732 fn can_cast(kind: SyntaxKind) -> bool {
25733 kind == SyntaxKind::RET_TYPE
25734 }
25735 #[inline]
25736 fn cast(syntax: SyntaxNode) -> Option<Self> {
25737 if Self::can_cast(syntax.kind()) {
25738 Some(Self { syntax })
25739 } else {
25740 None
25741 }
25742 }
25743 #[inline]
25744 fn syntax(&self) -> &SyntaxNode {
25745 &self.syntax
25746 }
25747}
25748impl AstNode for ReturnFuncOption {
25749 #[inline]
25750 fn can_cast(kind: SyntaxKind) -> bool {
25751 kind == SyntaxKind::RETURN_FUNC_OPTION
25752 }
25753 #[inline]
25754 fn cast(syntax: SyntaxNode) -> Option<Self> {
25755 if Self::can_cast(syntax.kind()) {
25756 Some(Self { syntax })
25757 } else {
25758 None
25759 }
25760 }
25761 #[inline]
25762 fn syntax(&self) -> &SyntaxNode {
25763 &self.syntax
25764 }
25765}
25766impl AstNode for ReturningClause {
25767 #[inline]
25768 fn can_cast(kind: SyntaxKind) -> bool {
25769 kind == SyntaxKind::RETURNING_CLAUSE
25770 }
25771 #[inline]
25772 fn cast(syntax: SyntaxNode) -> Option<Self> {
25773 if Self::can_cast(syntax.kind()) {
25774 Some(Self { syntax })
25775 } else {
25776 None
25777 }
25778 }
25779 #[inline]
25780 fn syntax(&self) -> &SyntaxNode {
25781 &self.syntax
25782 }
25783}
25784impl AstNode for ReturningOption {
25785 #[inline]
25786 fn can_cast(kind: SyntaxKind) -> bool {
25787 kind == SyntaxKind::RETURNING_OPTION
25788 }
25789 #[inline]
25790 fn cast(syntax: SyntaxNode) -> Option<Self> {
25791 if Self::can_cast(syntax.kind()) {
25792 Some(Self { syntax })
25793 } else {
25794 None
25795 }
25796 }
25797 #[inline]
25798 fn syntax(&self) -> &SyntaxNode {
25799 &self.syntax
25800 }
25801}
25802impl AstNode for ReturningOptionList {
25803 #[inline]
25804 fn can_cast(kind: SyntaxKind) -> bool {
25805 kind == SyntaxKind::RETURNING_OPTION_LIST
25806 }
25807 #[inline]
25808 fn cast(syntax: SyntaxNode) -> Option<Self> {
25809 if Self::can_cast(syntax.kind()) {
25810 Some(Self { syntax })
25811 } else {
25812 None
25813 }
25814 }
25815 #[inline]
25816 fn syntax(&self) -> &SyntaxNode {
25817 &self.syntax
25818 }
25819}
25820impl AstNode for Revoke {
25821 #[inline]
25822 fn can_cast(kind: SyntaxKind) -> bool {
25823 kind == SyntaxKind::REVOKE
25824 }
25825 #[inline]
25826 fn cast(syntax: SyntaxNode) -> Option<Self> {
25827 if Self::can_cast(syntax.kind()) {
25828 Some(Self { syntax })
25829 } else {
25830 None
25831 }
25832 }
25833 #[inline]
25834 fn syntax(&self) -> &SyntaxNode {
25835 &self.syntax
25836 }
25837}
25838impl AstNode for RevokeCommand {
25839 #[inline]
25840 fn can_cast(kind: SyntaxKind) -> bool {
25841 kind == SyntaxKind::REVOKE_COMMAND
25842 }
25843 #[inline]
25844 fn cast(syntax: SyntaxNode) -> Option<Self> {
25845 if Self::can_cast(syntax.kind()) {
25846 Some(Self { syntax })
25847 } else {
25848 None
25849 }
25850 }
25851 #[inline]
25852 fn syntax(&self) -> &SyntaxNode {
25853 &self.syntax
25854 }
25855}
25856impl AstNode for RevokeCommandList {
25857 #[inline]
25858 fn can_cast(kind: SyntaxKind) -> bool {
25859 kind == SyntaxKind::REVOKE_COMMAND_LIST
25860 }
25861 #[inline]
25862 fn cast(syntax: SyntaxNode) -> Option<Self> {
25863 if Self::can_cast(syntax.kind()) {
25864 Some(Self { syntax })
25865 } else {
25866 None
25867 }
25868 }
25869 #[inline]
25870 fn syntax(&self) -> &SyntaxNode {
25871 &self.syntax
25872 }
25873}
25874impl AstNode for RevokeDefaultPrivileges {
25875 #[inline]
25876 fn can_cast(kind: SyntaxKind) -> bool {
25877 kind == SyntaxKind::REVOKE_DEFAULT_PRIVILEGES
25878 }
25879 #[inline]
25880 fn cast(syntax: SyntaxNode) -> Option<Self> {
25881 if Self::can_cast(syntax.kind()) {
25882 Some(Self { syntax })
25883 } else {
25884 None
25885 }
25886 }
25887 #[inline]
25888 fn syntax(&self) -> &SyntaxNode {
25889 &self.syntax
25890 }
25891}
25892impl AstNode for Role {
25893 #[inline]
25894 fn can_cast(kind: SyntaxKind) -> bool {
25895 kind == SyntaxKind::ROLE
25896 }
25897 #[inline]
25898 fn cast(syntax: SyntaxNode) -> Option<Self> {
25899 if Self::can_cast(syntax.kind()) {
25900 Some(Self { syntax })
25901 } else {
25902 None
25903 }
25904 }
25905 #[inline]
25906 fn syntax(&self) -> &SyntaxNode {
25907 &self.syntax
25908 }
25909}
25910impl AstNode for RoleList {
25911 #[inline]
25912 fn can_cast(kind: SyntaxKind) -> bool {
25913 kind == SyntaxKind::ROLE_LIST
25914 }
25915 #[inline]
25916 fn cast(syntax: SyntaxNode) -> Option<Self> {
25917 if Self::can_cast(syntax.kind()) {
25918 Some(Self { syntax })
25919 } else {
25920 None
25921 }
25922 }
25923 #[inline]
25924 fn syntax(&self) -> &SyntaxNode {
25925 &self.syntax
25926 }
25927}
25928impl AstNode for RoleOption {
25929 #[inline]
25930 fn can_cast(kind: SyntaxKind) -> bool {
25931 kind == SyntaxKind::ROLE_OPTION
25932 }
25933 #[inline]
25934 fn cast(syntax: SyntaxNode) -> Option<Self> {
25935 if Self::can_cast(syntax.kind()) {
25936 Some(Self { syntax })
25937 } else {
25938 None
25939 }
25940 }
25941 #[inline]
25942 fn syntax(&self) -> &SyntaxNode {
25943 &self.syntax
25944 }
25945}
25946impl AstNode for RoleOptionList {
25947 #[inline]
25948 fn can_cast(kind: SyntaxKind) -> bool {
25949 kind == SyntaxKind::ROLE_OPTION_LIST
25950 }
25951 #[inline]
25952 fn cast(syntax: SyntaxNode) -> Option<Self> {
25953 if Self::can_cast(syntax.kind()) {
25954 Some(Self { syntax })
25955 } else {
25956 None
25957 }
25958 }
25959 #[inline]
25960 fn syntax(&self) -> &SyntaxNode {
25961 &self.syntax
25962 }
25963}
25964impl AstNode for Rollback {
25965 #[inline]
25966 fn can_cast(kind: SyntaxKind) -> bool {
25967 kind == SyntaxKind::ROLLBACK
25968 }
25969 #[inline]
25970 fn cast(syntax: SyntaxNode) -> Option<Self> {
25971 if Self::can_cast(syntax.kind()) {
25972 Some(Self { syntax })
25973 } else {
25974 None
25975 }
25976 }
25977 #[inline]
25978 fn syntax(&self) -> &SyntaxNode {
25979 &self.syntax
25980 }
25981}
25982impl AstNode for Row {
25983 #[inline]
25984 fn can_cast(kind: SyntaxKind) -> bool {
25985 kind == SyntaxKind::ROW
25986 }
25987 #[inline]
25988 fn cast(syntax: SyntaxNode) -> Option<Self> {
25989 if Self::can_cast(syntax.kind()) {
25990 Some(Self { syntax })
25991 } else {
25992 None
25993 }
25994 }
25995 #[inline]
25996 fn syntax(&self) -> &SyntaxNode {
25997 &self.syntax
25998 }
25999}
26000impl AstNode for RowList {
26001 #[inline]
26002 fn can_cast(kind: SyntaxKind) -> bool {
26003 kind == SyntaxKind::ROW_LIST
26004 }
26005 #[inline]
26006 fn cast(syntax: SyntaxNode) -> Option<Self> {
26007 if Self::can_cast(syntax.kind()) {
26008 Some(Self { syntax })
26009 } else {
26010 None
26011 }
26012 }
26013 #[inline]
26014 fn syntax(&self) -> &SyntaxNode {
26015 &self.syntax
26016 }
26017}
26018impl AstNode for RowsFuncOption {
26019 #[inline]
26020 fn can_cast(kind: SyntaxKind) -> bool {
26021 kind == SyntaxKind::ROWS_FUNC_OPTION
26022 }
26023 #[inline]
26024 fn cast(syntax: SyntaxNode) -> Option<Self> {
26025 if Self::can_cast(syntax.kind()) {
26026 Some(Self { syntax })
26027 } else {
26028 None
26029 }
26030 }
26031 #[inline]
26032 fn syntax(&self) -> &SyntaxNode {
26033 &self.syntax
26034 }
26035}
26036impl AstNode for Savepoint {
26037 #[inline]
26038 fn can_cast(kind: SyntaxKind) -> bool {
26039 kind == SyntaxKind::SAVEPOINT
26040 }
26041 #[inline]
26042 fn cast(syntax: SyntaxNode) -> Option<Self> {
26043 if Self::can_cast(syntax.kind()) {
26044 Some(Self { syntax })
26045 } else {
26046 None
26047 }
26048 }
26049 #[inline]
26050 fn syntax(&self) -> &SyntaxNode {
26051 &self.syntax
26052 }
26053}
26054impl AstNode for SchemaAuthorization {
26055 #[inline]
26056 fn can_cast(kind: SyntaxKind) -> bool {
26057 kind == SyntaxKind::SCHEMA_AUTHORIZATION
26058 }
26059 #[inline]
26060 fn cast(syntax: SyntaxNode) -> Option<Self> {
26061 if Self::can_cast(syntax.kind()) {
26062 Some(Self { syntax })
26063 } else {
26064 None
26065 }
26066 }
26067 #[inline]
26068 fn syntax(&self) -> &SyntaxNode {
26069 &self.syntax
26070 }
26071}
26072impl AstNode for SecurityFuncOption {
26073 #[inline]
26074 fn can_cast(kind: SyntaxKind) -> bool {
26075 kind == SyntaxKind::SECURITY_FUNC_OPTION
26076 }
26077 #[inline]
26078 fn cast(syntax: SyntaxNode) -> Option<Self> {
26079 if Self::can_cast(syntax.kind()) {
26080 Some(Self { syntax })
26081 } else {
26082 None
26083 }
26084 }
26085 #[inline]
26086 fn syntax(&self) -> &SyntaxNode {
26087 &self.syntax
26088 }
26089}
26090impl AstNode for SecurityLabel {
26091 #[inline]
26092 fn can_cast(kind: SyntaxKind) -> bool {
26093 kind == SyntaxKind::SECURITY_LABEL
26094 }
26095 #[inline]
26096 fn cast(syntax: SyntaxNode) -> Option<Self> {
26097 if Self::can_cast(syntax.kind()) {
26098 Some(Self { syntax })
26099 } else {
26100 None
26101 }
26102 }
26103 #[inline]
26104 fn syntax(&self) -> &SyntaxNode {
26105 &self.syntax
26106 }
26107}
26108impl AstNode for Select {
26109 #[inline]
26110 fn can_cast(kind: SyntaxKind) -> bool {
26111 kind == SyntaxKind::SELECT
26112 }
26113 #[inline]
26114 fn cast(syntax: SyntaxNode) -> Option<Self> {
26115 if Self::can_cast(syntax.kind()) {
26116 Some(Self { syntax })
26117 } else {
26118 None
26119 }
26120 }
26121 #[inline]
26122 fn syntax(&self) -> &SyntaxNode {
26123 &self.syntax
26124 }
26125}
26126impl AstNode for SelectClause {
26127 #[inline]
26128 fn can_cast(kind: SyntaxKind) -> bool {
26129 kind == SyntaxKind::SELECT_CLAUSE
26130 }
26131 #[inline]
26132 fn cast(syntax: SyntaxNode) -> Option<Self> {
26133 if Self::can_cast(syntax.kind()) {
26134 Some(Self { syntax })
26135 } else {
26136 None
26137 }
26138 }
26139 #[inline]
26140 fn syntax(&self) -> &SyntaxNode {
26141 &self.syntax
26142 }
26143}
26144impl AstNode for SelectInto {
26145 #[inline]
26146 fn can_cast(kind: SyntaxKind) -> bool {
26147 kind == SyntaxKind::SELECT_INTO
26148 }
26149 #[inline]
26150 fn cast(syntax: SyntaxNode) -> Option<Self> {
26151 if Self::can_cast(syntax.kind()) {
26152 Some(Self { syntax })
26153 } else {
26154 None
26155 }
26156 }
26157 #[inline]
26158 fn syntax(&self) -> &SyntaxNode {
26159 &self.syntax
26160 }
26161}
26162impl AstNode for SequenceOption {
26163 #[inline]
26164 fn can_cast(kind: SyntaxKind) -> bool {
26165 kind == SyntaxKind::SEQUENCE_OPTION
26166 }
26167 #[inline]
26168 fn cast(syntax: SyntaxNode) -> Option<Self> {
26169 if Self::can_cast(syntax.kind()) {
26170 Some(Self { syntax })
26171 } else {
26172 None
26173 }
26174 }
26175 #[inline]
26176 fn syntax(&self) -> &SyntaxNode {
26177 &self.syntax
26178 }
26179}
26180impl AstNode for SequenceOptionList {
26181 #[inline]
26182 fn can_cast(kind: SyntaxKind) -> bool {
26183 kind == SyntaxKind::SEQUENCE_OPTION_LIST
26184 }
26185 #[inline]
26186 fn cast(syntax: SyntaxNode) -> Option<Self> {
26187 if Self::can_cast(syntax.kind()) {
26188 Some(Self { syntax })
26189 } else {
26190 None
26191 }
26192 }
26193 #[inline]
26194 fn syntax(&self) -> &SyntaxNode {
26195 &self.syntax
26196 }
26197}
26198impl AstNode for Serializable {
26199 #[inline]
26200 fn can_cast(kind: SyntaxKind) -> bool {
26201 kind == SyntaxKind::SERIALIZABLE
26202 }
26203 #[inline]
26204 fn cast(syntax: SyntaxNode) -> Option<Self> {
26205 if Self::can_cast(syntax.kind()) {
26206 Some(Self { syntax })
26207 } else {
26208 None
26209 }
26210 }
26211 #[inline]
26212 fn syntax(&self) -> &SyntaxNode {
26213 &self.syntax
26214 }
26215}
26216impl AstNode for Set {
26217 #[inline]
26218 fn can_cast(kind: SyntaxKind) -> bool {
26219 kind == SyntaxKind::SET
26220 }
26221 #[inline]
26222 fn cast(syntax: SyntaxNode) -> Option<Self> {
26223 if Self::can_cast(syntax.kind()) {
26224 Some(Self { syntax })
26225 } else {
26226 None
26227 }
26228 }
26229 #[inline]
26230 fn syntax(&self) -> &SyntaxNode {
26231 &self.syntax
26232 }
26233}
26234impl AstNode for SetAccessMethod {
26235 #[inline]
26236 fn can_cast(kind: SyntaxKind) -> bool {
26237 kind == SyntaxKind::SET_ACCESS_METHOD
26238 }
26239 #[inline]
26240 fn cast(syntax: SyntaxNode) -> Option<Self> {
26241 if Self::can_cast(syntax.kind()) {
26242 Some(Self { syntax })
26243 } else {
26244 None
26245 }
26246 }
26247 #[inline]
26248 fn syntax(&self) -> &SyntaxNode {
26249 &self.syntax
26250 }
26251}
26252impl AstNode for SetClause {
26253 #[inline]
26254 fn can_cast(kind: SyntaxKind) -> bool {
26255 kind == SyntaxKind::SET_CLAUSE
26256 }
26257 #[inline]
26258 fn cast(syntax: SyntaxNode) -> Option<Self> {
26259 if Self::can_cast(syntax.kind()) {
26260 Some(Self { syntax })
26261 } else {
26262 None
26263 }
26264 }
26265 #[inline]
26266 fn syntax(&self) -> &SyntaxNode {
26267 &self.syntax
26268 }
26269}
26270impl AstNode for SetColumnList {
26271 #[inline]
26272 fn can_cast(kind: SyntaxKind) -> bool {
26273 kind == SyntaxKind::SET_COLUMN_LIST
26274 }
26275 #[inline]
26276 fn cast(syntax: SyntaxNode) -> Option<Self> {
26277 if Self::can_cast(syntax.kind()) {
26278 Some(Self { syntax })
26279 } else {
26280 None
26281 }
26282 }
26283 #[inline]
26284 fn syntax(&self) -> &SyntaxNode {
26285 &self.syntax
26286 }
26287}
26288impl AstNode for SetCompression {
26289 #[inline]
26290 fn can_cast(kind: SyntaxKind) -> bool {
26291 kind == SyntaxKind::SET_COMPRESSION
26292 }
26293 #[inline]
26294 fn cast(syntax: SyntaxNode) -> Option<Self> {
26295 if Self::can_cast(syntax.kind()) {
26296 Some(Self { syntax })
26297 } else {
26298 None
26299 }
26300 }
26301 #[inline]
26302 fn syntax(&self) -> &SyntaxNode {
26303 &self.syntax
26304 }
26305}
26306impl AstNode for SetConfigParam {
26307 #[inline]
26308 fn can_cast(kind: SyntaxKind) -> bool {
26309 kind == SyntaxKind::SET_CONFIG_PARAM
26310 }
26311 #[inline]
26312 fn cast(syntax: SyntaxNode) -> Option<Self> {
26313 if Self::can_cast(syntax.kind()) {
26314 Some(Self { syntax })
26315 } else {
26316 None
26317 }
26318 }
26319 #[inline]
26320 fn syntax(&self) -> &SyntaxNode {
26321 &self.syntax
26322 }
26323}
26324impl AstNode for SetConstraints {
26325 #[inline]
26326 fn can_cast(kind: SyntaxKind) -> bool {
26327 kind == SyntaxKind::SET_CONSTRAINTS
26328 }
26329 #[inline]
26330 fn cast(syntax: SyntaxNode) -> Option<Self> {
26331 if Self::can_cast(syntax.kind()) {
26332 Some(Self { syntax })
26333 } else {
26334 None
26335 }
26336 }
26337 #[inline]
26338 fn syntax(&self) -> &SyntaxNode {
26339 &self.syntax
26340 }
26341}
26342impl AstNode for SetDefault {
26343 #[inline]
26344 fn can_cast(kind: SyntaxKind) -> bool {
26345 kind == SyntaxKind::SET_DEFAULT
26346 }
26347 #[inline]
26348 fn cast(syntax: SyntaxNode) -> Option<Self> {
26349 if Self::can_cast(syntax.kind()) {
26350 Some(Self { syntax })
26351 } else {
26352 None
26353 }
26354 }
26355 #[inline]
26356 fn syntax(&self) -> &SyntaxNode {
26357 &self.syntax
26358 }
26359}
26360impl AstNode for SetDefaultColumns {
26361 #[inline]
26362 fn can_cast(kind: SyntaxKind) -> bool {
26363 kind == SyntaxKind::SET_DEFAULT_COLUMNS
26364 }
26365 #[inline]
26366 fn cast(syntax: SyntaxNode) -> Option<Self> {
26367 if Self::can_cast(syntax.kind()) {
26368 Some(Self { syntax })
26369 } else {
26370 None
26371 }
26372 }
26373 #[inline]
26374 fn syntax(&self) -> &SyntaxNode {
26375 &self.syntax
26376 }
26377}
26378impl AstNode for SetExpr {
26379 #[inline]
26380 fn can_cast(kind: SyntaxKind) -> bool {
26381 kind == SyntaxKind::SET_EXPR
26382 }
26383 #[inline]
26384 fn cast(syntax: SyntaxNode) -> Option<Self> {
26385 if Self::can_cast(syntax.kind()) {
26386 Some(Self { syntax })
26387 } else {
26388 None
26389 }
26390 }
26391 #[inline]
26392 fn syntax(&self) -> &SyntaxNode {
26393 &self.syntax
26394 }
26395}
26396impl AstNode for SetExprList {
26397 #[inline]
26398 fn can_cast(kind: SyntaxKind) -> bool {
26399 kind == SyntaxKind::SET_EXPR_LIST
26400 }
26401 #[inline]
26402 fn cast(syntax: SyntaxNode) -> Option<Self> {
26403 if Self::can_cast(syntax.kind()) {
26404 Some(Self { syntax })
26405 } else {
26406 None
26407 }
26408 }
26409 #[inline]
26410 fn syntax(&self) -> &SyntaxNode {
26411 &self.syntax
26412 }
26413}
26414impl AstNode for SetExpression {
26415 #[inline]
26416 fn can_cast(kind: SyntaxKind) -> bool {
26417 kind == SyntaxKind::SET_EXPRESSION
26418 }
26419 #[inline]
26420 fn cast(syntax: SyntaxNode) -> Option<Self> {
26421 if Self::can_cast(syntax.kind()) {
26422 Some(Self { syntax })
26423 } else {
26424 None
26425 }
26426 }
26427 #[inline]
26428 fn syntax(&self) -> &SyntaxNode {
26429 &self.syntax
26430 }
26431}
26432impl AstNode for SetFuncOption {
26433 #[inline]
26434 fn can_cast(kind: SyntaxKind) -> bool {
26435 kind == SyntaxKind::SET_FUNC_OPTION
26436 }
26437 #[inline]
26438 fn cast(syntax: SyntaxNode) -> Option<Self> {
26439 if Self::can_cast(syntax.kind()) {
26440 Some(Self { syntax })
26441 } else {
26442 None
26443 }
26444 }
26445 #[inline]
26446 fn syntax(&self) -> &SyntaxNode {
26447 &self.syntax
26448 }
26449}
26450impl AstNode for SetGenerated {
26451 #[inline]
26452 fn can_cast(kind: SyntaxKind) -> bool {
26453 kind == SyntaxKind::SET_GENERATED
26454 }
26455 #[inline]
26456 fn cast(syntax: SyntaxNode) -> Option<Self> {
26457 if Self::can_cast(syntax.kind()) {
26458 Some(Self { syntax })
26459 } else {
26460 None
26461 }
26462 }
26463 #[inline]
26464 fn syntax(&self) -> &SyntaxNode {
26465 &self.syntax
26466 }
26467}
26468impl AstNode for SetGeneratedOptions {
26469 #[inline]
26470 fn can_cast(kind: SyntaxKind) -> bool {
26471 kind == SyntaxKind::SET_GENERATED_OPTIONS
26472 }
26473 #[inline]
26474 fn cast(syntax: SyntaxNode) -> Option<Self> {
26475 if Self::can_cast(syntax.kind()) {
26476 Some(Self { syntax })
26477 } else {
26478 None
26479 }
26480 }
26481 #[inline]
26482 fn syntax(&self) -> &SyntaxNode {
26483 &self.syntax
26484 }
26485}
26486impl AstNode for SetLogged {
26487 #[inline]
26488 fn can_cast(kind: SyntaxKind) -> bool {
26489 kind == SyntaxKind::SET_LOGGED
26490 }
26491 #[inline]
26492 fn cast(syntax: SyntaxNode) -> Option<Self> {
26493 if Self::can_cast(syntax.kind()) {
26494 Some(Self { syntax })
26495 } else {
26496 None
26497 }
26498 }
26499 #[inline]
26500 fn syntax(&self) -> &SyntaxNode {
26501 &self.syntax
26502 }
26503}
26504impl AstNode for SetMultipleColumns {
26505 #[inline]
26506 fn can_cast(kind: SyntaxKind) -> bool {
26507 kind == SyntaxKind::SET_MULTIPLE_COLUMNS
26508 }
26509 #[inline]
26510 fn cast(syntax: SyntaxNode) -> Option<Self> {
26511 if Self::can_cast(syntax.kind()) {
26512 Some(Self { syntax })
26513 } else {
26514 None
26515 }
26516 }
26517 #[inline]
26518 fn syntax(&self) -> &SyntaxNode {
26519 &self.syntax
26520 }
26521}
26522impl AstNode for SetNotNull {
26523 #[inline]
26524 fn can_cast(kind: SyntaxKind) -> bool {
26525 kind == SyntaxKind::SET_NOT_NULL
26526 }
26527 #[inline]
26528 fn cast(syntax: SyntaxNode) -> Option<Self> {
26529 if Self::can_cast(syntax.kind()) {
26530 Some(Self { syntax })
26531 } else {
26532 None
26533 }
26534 }
26535 #[inline]
26536 fn syntax(&self) -> &SyntaxNode {
26537 &self.syntax
26538 }
26539}
26540impl AstNode for SetNullColumns {
26541 #[inline]
26542 fn can_cast(kind: SyntaxKind) -> bool {
26543 kind == SyntaxKind::SET_NULL_COLUMNS
26544 }
26545 #[inline]
26546 fn cast(syntax: SyntaxNode) -> Option<Self> {
26547 if Self::can_cast(syntax.kind()) {
26548 Some(Self { syntax })
26549 } else {
26550 None
26551 }
26552 }
26553 #[inline]
26554 fn syntax(&self) -> &SyntaxNode {
26555 &self.syntax
26556 }
26557}
26558impl AstNode for SetOptions {
26559 #[inline]
26560 fn can_cast(kind: SyntaxKind) -> bool {
26561 kind == SyntaxKind::SET_OPTIONS
26562 }
26563 #[inline]
26564 fn cast(syntax: SyntaxNode) -> Option<Self> {
26565 if Self::can_cast(syntax.kind()) {
26566 Some(Self { syntax })
26567 } else {
26568 None
26569 }
26570 }
26571 #[inline]
26572 fn syntax(&self) -> &SyntaxNode {
26573 &self.syntax
26574 }
26575}
26576impl AstNode for SetOptionsList {
26577 #[inline]
26578 fn can_cast(kind: SyntaxKind) -> bool {
26579 kind == SyntaxKind::SET_OPTIONS_LIST
26580 }
26581 #[inline]
26582 fn cast(syntax: SyntaxNode) -> Option<Self> {
26583 if Self::can_cast(syntax.kind()) {
26584 Some(Self { syntax })
26585 } else {
26586 None
26587 }
26588 }
26589 #[inline]
26590 fn syntax(&self) -> &SyntaxNode {
26591 &self.syntax
26592 }
26593}
26594impl AstNode for SetRole {
26595 #[inline]
26596 fn can_cast(kind: SyntaxKind) -> bool {
26597 kind == SyntaxKind::SET_ROLE
26598 }
26599 #[inline]
26600 fn cast(syntax: SyntaxNode) -> Option<Self> {
26601 if Self::can_cast(syntax.kind()) {
26602 Some(Self { syntax })
26603 } else {
26604 None
26605 }
26606 }
26607 #[inline]
26608 fn syntax(&self) -> &SyntaxNode {
26609 &self.syntax
26610 }
26611}
26612impl AstNode for SetSchema {
26613 #[inline]
26614 fn can_cast(kind: SyntaxKind) -> bool {
26615 kind == SyntaxKind::SET_SCHEMA
26616 }
26617 #[inline]
26618 fn cast(syntax: SyntaxNode) -> Option<Self> {
26619 if Self::can_cast(syntax.kind()) {
26620 Some(Self { syntax })
26621 } else {
26622 None
26623 }
26624 }
26625 #[inline]
26626 fn syntax(&self) -> &SyntaxNode {
26627 &self.syntax
26628 }
26629}
26630impl AstNode for SetSequenceOption {
26631 #[inline]
26632 fn can_cast(kind: SyntaxKind) -> bool {
26633 kind == SyntaxKind::SET_SEQUENCE_OPTION
26634 }
26635 #[inline]
26636 fn cast(syntax: SyntaxNode) -> Option<Self> {
26637 if Self::can_cast(syntax.kind()) {
26638 Some(Self { syntax })
26639 } else {
26640 None
26641 }
26642 }
26643 #[inline]
26644 fn syntax(&self) -> &SyntaxNode {
26645 &self.syntax
26646 }
26647}
26648impl AstNode for SetSessionAuth {
26649 #[inline]
26650 fn can_cast(kind: SyntaxKind) -> bool {
26651 kind == SyntaxKind::SET_SESSION_AUTH
26652 }
26653 #[inline]
26654 fn cast(syntax: SyntaxNode) -> Option<Self> {
26655 if Self::can_cast(syntax.kind()) {
26656 Some(Self { syntax })
26657 } else {
26658 None
26659 }
26660 }
26661 #[inline]
26662 fn syntax(&self) -> &SyntaxNode {
26663 &self.syntax
26664 }
26665}
26666impl AstNode for SetSingleColumn {
26667 #[inline]
26668 fn can_cast(kind: SyntaxKind) -> bool {
26669 kind == SyntaxKind::SET_SINGLE_COLUMN
26670 }
26671 #[inline]
26672 fn cast(syntax: SyntaxNode) -> Option<Self> {
26673 if Self::can_cast(syntax.kind()) {
26674 Some(Self { syntax })
26675 } else {
26676 None
26677 }
26678 }
26679 #[inline]
26680 fn syntax(&self) -> &SyntaxNode {
26681 &self.syntax
26682 }
26683}
26684impl AstNode for SetStatistics {
26685 #[inline]
26686 fn can_cast(kind: SyntaxKind) -> bool {
26687 kind == SyntaxKind::SET_STATISTICS
26688 }
26689 #[inline]
26690 fn cast(syntax: SyntaxNode) -> Option<Self> {
26691 if Self::can_cast(syntax.kind()) {
26692 Some(Self { syntax })
26693 } else {
26694 None
26695 }
26696 }
26697 #[inline]
26698 fn syntax(&self) -> &SyntaxNode {
26699 &self.syntax
26700 }
26701}
26702impl AstNode for SetStorage {
26703 #[inline]
26704 fn can_cast(kind: SyntaxKind) -> bool {
26705 kind == SyntaxKind::SET_STORAGE
26706 }
26707 #[inline]
26708 fn cast(syntax: SyntaxNode) -> Option<Self> {
26709 if Self::can_cast(syntax.kind()) {
26710 Some(Self { syntax })
26711 } else {
26712 None
26713 }
26714 }
26715 #[inline]
26716 fn syntax(&self) -> &SyntaxNode {
26717 &self.syntax
26718 }
26719}
26720impl AstNode for SetTablespace {
26721 #[inline]
26722 fn can_cast(kind: SyntaxKind) -> bool {
26723 kind == SyntaxKind::SET_TABLESPACE
26724 }
26725 #[inline]
26726 fn cast(syntax: SyntaxNode) -> Option<Self> {
26727 if Self::can_cast(syntax.kind()) {
26728 Some(Self { syntax })
26729 } else {
26730 None
26731 }
26732 }
26733 #[inline]
26734 fn syntax(&self) -> &SyntaxNode {
26735 &self.syntax
26736 }
26737}
26738impl AstNode for SetTransaction {
26739 #[inline]
26740 fn can_cast(kind: SyntaxKind) -> bool {
26741 kind == SyntaxKind::SET_TRANSACTION
26742 }
26743 #[inline]
26744 fn cast(syntax: SyntaxNode) -> Option<Self> {
26745 if Self::can_cast(syntax.kind()) {
26746 Some(Self { syntax })
26747 } else {
26748 None
26749 }
26750 }
26751 #[inline]
26752 fn syntax(&self) -> &SyntaxNode {
26753 &self.syntax
26754 }
26755}
26756impl AstNode for SetType {
26757 #[inline]
26758 fn can_cast(kind: SyntaxKind) -> bool {
26759 kind == SyntaxKind::SET_TYPE
26760 }
26761 #[inline]
26762 fn cast(syntax: SyntaxNode) -> Option<Self> {
26763 if Self::can_cast(syntax.kind()) {
26764 Some(Self { syntax })
26765 } else {
26766 None
26767 }
26768 }
26769 #[inline]
26770 fn syntax(&self) -> &SyntaxNode {
26771 &self.syntax
26772 }
26773}
26774impl AstNode for SetUnlogged {
26775 #[inline]
26776 fn can_cast(kind: SyntaxKind) -> bool {
26777 kind == SyntaxKind::SET_UNLOGGED
26778 }
26779 #[inline]
26780 fn cast(syntax: SyntaxNode) -> Option<Self> {
26781 if Self::can_cast(syntax.kind()) {
26782 Some(Self { syntax })
26783 } else {
26784 None
26785 }
26786 }
26787 #[inline]
26788 fn syntax(&self) -> &SyntaxNode {
26789 &self.syntax
26790 }
26791}
26792impl AstNode for SetWithoutCluster {
26793 #[inline]
26794 fn can_cast(kind: SyntaxKind) -> bool {
26795 kind == SyntaxKind::SET_WITHOUT_CLUSTER
26796 }
26797 #[inline]
26798 fn cast(syntax: SyntaxNode) -> Option<Self> {
26799 if Self::can_cast(syntax.kind()) {
26800 Some(Self { syntax })
26801 } else {
26802 None
26803 }
26804 }
26805 #[inline]
26806 fn syntax(&self) -> &SyntaxNode {
26807 &self.syntax
26808 }
26809}
26810impl AstNode for SetWithoutOids {
26811 #[inline]
26812 fn can_cast(kind: SyntaxKind) -> bool {
26813 kind == SyntaxKind::SET_WITHOUT_OIDS
26814 }
26815 #[inline]
26816 fn cast(syntax: SyntaxNode) -> Option<Self> {
26817 if Self::can_cast(syntax.kind()) {
26818 Some(Self { syntax })
26819 } else {
26820 None
26821 }
26822 }
26823 #[inline]
26824 fn syntax(&self) -> &SyntaxNode {
26825 &self.syntax
26826 }
26827}
26828impl AstNode for Show {
26829 #[inline]
26830 fn can_cast(kind: SyntaxKind) -> bool {
26831 kind == SyntaxKind::SHOW
26832 }
26833 #[inline]
26834 fn cast(syntax: SyntaxNode) -> Option<Self> {
26835 if Self::can_cast(syntax.kind()) {
26836 Some(Self { syntax })
26837 } else {
26838 None
26839 }
26840 }
26841 #[inline]
26842 fn syntax(&self) -> &SyntaxNode {
26843 &self.syntax
26844 }
26845}
26846impl AstNode for SimilarTo {
26847 #[inline]
26848 fn can_cast(kind: SyntaxKind) -> bool {
26849 kind == SyntaxKind::SIMILAR_TO
26850 }
26851 #[inline]
26852 fn cast(syntax: SyntaxNode) -> Option<Self> {
26853 if Self::can_cast(syntax.kind()) {
26854 Some(Self { syntax })
26855 } else {
26856 None
26857 }
26858 }
26859 #[inline]
26860 fn syntax(&self) -> &SyntaxNode {
26861 &self.syntax
26862 }
26863}
26864impl AstNode for SliceExpr {
26865 #[inline]
26866 fn can_cast(kind: SyntaxKind) -> bool {
26867 kind == SyntaxKind::SLICE_EXPR
26868 }
26869 #[inline]
26870 fn cast(syntax: SyntaxNode) -> Option<Self> {
26871 if Self::can_cast(syntax.kind()) {
26872 Some(Self { syntax })
26873 } else {
26874 None
26875 }
26876 }
26877 #[inline]
26878 fn syntax(&self) -> &SyntaxNode {
26879 &self.syntax
26880 }
26881}
26882impl AstNode for SomeFn {
26883 #[inline]
26884 fn can_cast(kind: SyntaxKind) -> bool {
26885 kind == SyntaxKind::SOME_FN
26886 }
26887 #[inline]
26888 fn cast(syntax: SyntaxNode) -> Option<Self> {
26889 if Self::can_cast(syntax.kind()) {
26890 Some(Self { syntax })
26891 } else {
26892 None
26893 }
26894 }
26895 #[inline]
26896 fn syntax(&self) -> &SyntaxNode {
26897 &self.syntax
26898 }
26899}
26900impl AstNode for SortAsc {
26901 #[inline]
26902 fn can_cast(kind: SyntaxKind) -> bool {
26903 kind == SyntaxKind::SORT_ASC
26904 }
26905 #[inline]
26906 fn cast(syntax: SyntaxNode) -> Option<Self> {
26907 if Self::can_cast(syntax.kind()) {
26908 Some(Self { syntax })
26909 } else {
26910 None
26911 }
26912 }
26913 #[inline]
26914 fn syntax(&self) -> &SyntaxNode {
26915 &self.syntax
26916 }
26917}
26918impl AstNode for SortBy {
26919 #[inline]
26920 fn can_cast(kind: SyntaxKind) -> bool {
26921 kind == SyntaxKind::SORT_BY
26922 }
26923 #[inline]
26924 fn cast(syntax: SyntaxNode) -> Option<Self> {
26925 if Self::can_cast(syntax.kind()) {
26926 Some(Self { syntax })
26927 } else {
26928 None
26929 }
26930 }
26931 #[inline]
26932 fn syntax(&self) -> &SyntaxNode {
26933 &self.syntax
26934 }
26935}
26936impl AstNode for SortByList {
26937 #[inline]
26938 fn can_cast(kind: SyntaxKind) -> bool {
26939 kind == SyntaxKind::SORT_BY_LIST
26940 }
26941 #[inline]
26942 fn cast(syntax: SyntaxNode) -> Option<Self> {
26943 if Self::can_cast(syntax.kind()) {
26944 Some(Self { syntax })
26945 } else {
26946 None
26947 }
26948 }
26949 #[inline]
26950 fn syntax(&self) -> &SyntaxNode {
26951 &self.syntax
26952 }
26953}
26954impl AstNode for SortDesc {
26955 #[inline]
26956 fn can_cast(kind: SyntaxKind) -> bool {
26957 kind == SyntaxKind::SORT_DESC
26958 }
26959 #[inline]
26960 fn cast(syntax: SyntaxNode) -> Option<Self> {
26961 if Self::can_cast(syntax.kind()) {
26962 Some(Self { syntax })
26963 } else {
26964 None
26965 }
26966 }
26967 #[inline]
26968 fn syntax(&self) -> &SyntaxNode {
26969 &self.syntax
26970 }
26971}
26972impl AstNode for SortUsing {
26973 #[inline]
26974 fn can_cast(kind: SyntaxKind) -> bool {
26975 kind == SyntaxKind::SORT_USING
26976 }
26977 #[inline]
26978 fn cast(syntax: SyntaxNode) -> Option<Self> {
26979 if Self::can_cast(syntax.kind()) {
26980 Some(Self { syntax })
26981 } else {
26982 None
26983 }
26984 }
26985 #[inline]
26986 fn syntax(&self) -> &SyntaxNode {
26987 &self.syntax
26988 }
26989}
26990impl AstNode for SourceFile {
26991 #[inline]
26992 fn can_cast(kind: SyntaxKind) -> bool {
26993 kind == SyntaxKind::SOURCE_FILE
26994 }
26995 #[inline]
26996 fn cast(syntax: SyntaxNode) -> Option<Self> {
26997 if Self::can_cast(syntax.kind()) {
26998 Some(Self { syntax })
26999 } else {
27000 None
27001 }
27002 }
27003 #[inline]
27004 fn syntax(&self) -> &SyntaxNode {
27005 &self.syntax
27006 }
27007}
27008impl AstNode for SplitPartition {
27009 #[inline]
27010 fn can_cast(kind: SyntaxKind) -> bool {
27011 kind == SyntaxKind::SPLIT_PARTITION
27012 }
27013 #[inline]
27014 fn cast(syntax: SyntaxNode) -> Option<Self> {
27015 if Self::can_cast(syntax.kind()) {
27016 Some(Self { syntax })
27017 } else {
27018 None
27019 }
27020 }
27021 #[inline]
27022 fn syntax(&self) -> &SyntaxNode {
27023 &self.syntax
27024 }
27025}
27026impl AstNode for Storage {
27027 #[inline]
27028 fn can_cast(kind: SyntaxKind) -> bool {
27029 kind == SyntaxKind::STORAGE
27030 }
27031 #[inline]
27032 fn cast(syntax: SyntaxNode) -> Option<Self> {
27033 if Self::can_cast(syntax.kind()) {
27034 Some(Self { syntax })
27035 } else {
27036 None
27037 }
27038 }
27039 #[inline]
27040 fn syntax(&self) -> &SyntaxNode {
27041 &self.syntax
27042 }
27043}
27044impl AstNode for StrictFuncOption {
27045 #[inline]
27046 fn can_cast(kind: SyntaxKind) -> bool {
27047 kind == SyntaxKind::STRICT_FUNC_OPTION
27048 }
27049 #[inline]
27050 fn cast(syntax: SyntaxNode) -> Option<Self> {
27051 if Self::can_cast(syntax.kind()) {
27052 Some(Self { syntax })
27053 } else {
27054 None
27055 }
27056 }
27057 #[inline]
27058 fn syntax(&self) -> &SyntaxNode {
27059 &self.syntax
27060 }
27061}
27062impl AstNode for SubstringFn {
27063 #[inline]
27064 fn can_cast(kind: SyntaxKind) -> bool {
27065 kind == SyntaxKind::SUBSTRING_FN
27066 }
27067 #[inline]
27068 fn cast(syntax: SyntaxNode) -> Option<Self> {
27069 if Self::can_cast(syntax.kind()) {
27070 Some(Self { syntax })
27071 } else {
27072 None
27073 }
27074 }
27075 #[inline]
27076 fn syntax(&self) -> &SyntaxNode {
27077 &self.syntax
27078 }
27079}
27080impl AstNode for SupportFuncOption {
27081 #[inline]
27082 fn can_cast(kind: SyntaxKind) -> bool {
27083 kind == SyntaxKind::SUPPORT_FUNC_OPTION
27084 }
27085 #[inline]
27086 fn cast(syntax: SyntaxNode) -> Option<Self> {
27087 if Self::can_cast(syntax.kind()) {
27088 Some(Self { syntax })
27089 } else {
27090 None
27091 }
27092 }
27093 #[inline]
27094 fn syntax(&self) -> &SyntaxNode {
27095 &self.syntax
27096 }
27097}
27098impl AstNode for Table {
27099 #[inline]
27100 fn can_cast(kind: SyntaxKind) -> bool {
27101 kind == SyntaxKind::TABLE
27102 }
27103 #[inline]
27104 fn cast(syntax: SyntaxNode) -> Option<Self> {
27105 if Self::can_cast(syntax.kind()) {
27106 Some(Self { syntax })
27107 } else {
27108 None
27109 }
27110 }
27111 #[inline]
27112 fn syntax(&self) -> &SyntaxNode {
27113 &self.syntax
27114 }
27115}
27116impl AstNode for TableAndColumns {
27117 #[inline]
27118 fn can_cast(kind: SyntaxKind) -> bool {
27119 kind == SyntaxKind::TABLE_AND_COLUMNS
27120 }
27121 #[inline]
27122 fn cast(syntax: SyntaxNode) -> Option<Self> {
27123 if Self::can_cast(syntax.kind()) {
27124 Some(Self { syntax })
27125 } else {
27126 None
27127 }
27128 }
27129 #[inline]
27130 fn syntax(&self) -> &SyntaxNode {
27131 &self.syntax
27132 }
27133}
27134impl AstNode for TableAndColumnsList {
27135 #[inline]
27136 fn can_cast(kind: SyntaxKind) -> bool {
27137 kind == SyntaxKind::TABLE_AND_COLUMNS_LIST
27138 }
27139 #[inline]
27140 fn cast(syntax: SyntaxNode) -> Option<Self> {
27141 if Self::can_cast(syntax.kind()) {
27142 Some(Self { syntax })
27143 } else {
27144 None
27145 }
27146 }
27147 #[inline]
27148 fn syntax(&self) -> &SyntaxNode {
27149 &self.syntax
27150 }
27151}
27152impl AstNode for TableArgList {
27153 #[inline]
27154 fn can_cast(kind: SyntaxKind) -> bool {
27155 kind == SyntaxKind::TABLE_ARG_LIST
27156 }
27157 #[inline]
27158 fn cast(syntax: SyntaxNode) -> Option<Self> {
27159 if Self::can_cast(syntax.kind()) {
27160 Some(Self { syntax })
27161 } else {
27162 None
27163 }
27164 }
27165 #[inline]
27166 fn syntax(&self) -> &SyntaxNode {
27167 &self.syntax
27168 }
27169}
27170impl AstNode for TableList {
27171 #[inline]
27172 fn can_cast(kind: SyntaxKind) -> bool {
27173 kind == SyntaxKind::TABLE_LIST
27174 }
27175 #[inline]
27176 fn cast(syntax: SyntaxNode) -> Option<Self> {
27177 if Self::can_cast(syntax.kind()) {
27178 Some(Self { syntax })
27179 } else {
27180 None
27181 }
27182 }
27183 #[inline]
27184 fn syntax(&self) -> &SyntaxNode {
27185 &self.syntax
27186 }
27187}
27188impl AstNode for TablesampleClause {
27189 #[inline]
27190 fn can_cast(kind: SyntaxKind) -> bool {
27191 kind == SyntaxKind::TABLESAMPLE_CLAUSE
27192 }
27193 #[inline]
27194 fn cast(syntax: SyntaxNode) -> Option<Self> {
27195 if Self::can_cast(syntax.kind()) {
27196 Some(Self { syntax })
27197 } else {
27198 None
27199 }
27200 }
27201 #[inline]
27202 fn syntax(&self) -> &SyntaxNode {
27203 &self.syntax
27204 }
27205}
27206impl AstNode for Tablespace {
27207 #[inline]
27208 fn can_cast(kind: SyntaxKind) -> bool {
27209 kind == SyntaxKind::TABLESPACE
27210 }
27211 #[inline]
27212 fn cast(syntax: SyntaxNode) -> Option<Self> {
27213 if Self::can_cast(syntax.kind()) {
27214 Some(Self { syntax })
27215 } else {
27216 None
27217 }
27218 }
27219 #[inline]
27220 fn syntax(&self) -> &SyntaxNode {
27221 &self.syntax
27222 }
27223}
27224impl AstNode for Target {
27225 #[inline]
27226 fn can_cast(kind: SyntaxKind) -> bool {
27227 kind == SyntaxKind::TARGET
27228 }
27229 #[inline]
27230 fn cast(syntax: SyntaxNode) -> Option<Self> {
27231 if Self::can_cast(syntax.kind()) {
27232 Some(Self { syntax })
27233 } else {
27234 None
27235 }
27236 }
27237 #[inline]
27238 fn syntax(&self) -> &SyntaxNode {
27239 &self.syntax
27240 }
27241}
27242impl AstNode for TargetList {
27243 #[inline]
27244 fn can_cast(kind: SyntaxKind) -> bool {
27245 kind == SyntaxKind::TARGET_LIST
27246 }
27247 #[inline]
27248 fn cast(syntax: SyntaxNode) -> Option<Self> {
27249 if Self::can_cast(syntax.kind()) {
27250 Some(Self { syntax })
27251 } else {
27252 None
27253 }
27254 }
27255 #[inline]
27256 fn syntax(&self) -> &SyntaxNode {
27257 &self.syntax
27258 }
27259}
27260impl AstNode for TimeType {
27261 #[inline]
27262 fn can_cast(kind: SyntaxKind) -> bool {
27263 kind == SyntaxKind::TIME_TYPE
27264 }
27265 #[inline]
27266 fn cast(syntax: SyntaxNode) -> Option<Self> {
27267 if Self::can_cast(syntax.kind()) {
27268 Some(Self { syntax })
27269 } else {
27270 None
27271 }
27272 }
27273 #[inline]
27274 fn syntax(&self) -> &SyntaxNode {
27275 &self.syntax
27276 }
27277}
27278impl AstNode for Timing {
27279 #[inline]
27280 fn can_cast(kind: SyntaxKind) -> bool {
27281 kind == SyntaxKind::TIMING
27282 }
27283 #[inline]
27284 fn cast(syntax: SyntaxNode) -> Option<Self> {
27285 if Self::can_cast(syntax.kind()) {
27286 Some(Self { syntax })
27287 } else {
27288 None
27289 }
27290 }
27291 #[inline]
27292 fn syntax(&self) -> &SyntaxNode {
27293 &self.syntax
27294 }
27295}
27296impl AstNode for TransactionModeList {
27297 #[inline]
27298 fn can_cast(kind: SyntaxKind) -> bool {
27299 kind == SyntaxKind::TRANSACTION_MODE_LIST
27300 }
27301 #[inline]
27302 fn cast(syntax: SyntaxNode) -> Option<Self> {
27303 if Self::can_cast(syntax.kind()) {
27304 Some(Self { syntax })
27305 } else {
27306 None
27307 }
27308 }
27309 #[inline]
27310 fn syntax(&self) -> &SyntaxNode {
27311 &self.syntax
27312 }
27313}
27314impl AstNode for TransformFromFunc {
27315 #[inline]
27316 fn can_cast(kind: SyntaxKind) -> bool {
27317 kind == SyntaxKind::TRANSFORM_FROM_FUNC
27318 }
27319 #[inline]
27320 fn cast(syntax: SyntaxNode) -> Option<Self> {
27321 if Self::can_cast(syntax.kind()) {
27322 Some(Self { syntax })
27323 } else {
27324 None
27325 }
27326 }
27327 #[inline]
27328 fn syntax(&self) -> &SyntaxNode {
27329 &self.syntax
27330 }
27331}
27332impl AstNode for TransformFuncOption {
27333 #[inline]
27334 fn can_cast(kind: SyntaxKind) -> bool {
27335 kind == SyntaxKind::TRANSFORM_FUNC_OPTION
27336 }
27337 #[inline]
27338 fn cast(syntax: SyntaxNode) -> Option<Self> {
27339 if Self::can_cast(syntax.kind()) {
27340 Some(Self { syntax })
27341 } else {
27342 None
27343 }
27344 }
27345 #[inline]
27346 fn syntax(&self) -> &SyntaxNode {
27347 &self.syntax
27348 }
27349}
27350impl AstNode for TransformToFunc {
27351 #[inline]
27352 fn can_cast(kind: SyntaxKind) -> bool {
27353 kind == SyntaxKind::TRANSFORM_TO_FUNC
27354 }
27355 #[inline]
27356 fn cast(syntax: SyntaxNode) -> Option<Self> {
27357 if Self::can_cast(syntax.kind()) {
27358 Some(Self { syntax })
27359 } else {
27360 None
27361 }
27362 }
27363 #[inline]
27364 fn syntax(&self) -> &SyntaxNode {
27365 &self.syntax
27366 }
27367}
27368impl AstNode for TriggerEvent {
27369 #[inline]
27370 fn can_cast(kind: SyntaxKind) -> bool {
27371 kind == SyntaxKind::TRIGGER_EVENT
27372 }
27373 #[inline]
27374 fn cast(syntax: SyntaxNode) -> Option<Self> {
27375 if Self::can_cast(syntax.kind()) {
27376 Some(Self { syntax })
27377 } else {
27378 None
27379 }
27380 }
27381 #[inline]
27382 fn syntax(&self) -> &SyntaxNode {
27383 &self.syntax
27384 }
27385}
27386impl AstNode for TriggerEventList {
27387 #[inline]
27388 fn can_cast(kind: SyntaxKind) -> bool {
27389 kind == SyntaxKind::TRIGGER_EVENT_LIST
27390 }
27391 #[inline]
27392 fn cast(syntax: SyntaxNode) -> Option<Self> {
27393 if Self::can_cast(syntax.kind()) {
27394 Some(Self { syntax })
27395 } else {
27396 None
27397 }
27398 }
27399 #[inline]
27400 fn syntax(&self) -> &SyntaxNode {
27401 &self.syntax
27402 }
27403}
27404impl AstNode for TriggerEventUpdate {
27405 #[inline]
27406 fn can_cast(kind: SyntaxKind) -> bool {
27407 kind == SyntaxKind::TRIGGER_EVENT_UPDATE
27408 }
27409 #[inline]
27410 fn cast(syntax: SyntaxNode) -> Option<Self> {
27411 if Self::can_cast(syntax.kind()) {
27412 Some(Self { syntax })
27413 } else {
27414 None
27415 }
27416 }
27417 #[inline]
27418 fn syntax(&self) -> &SyntaxNode {
27419 &self.syntax
27420 }
27421}
27422impl AstNode for TrimFn {
27423 #[inline]
27424 fn can_cast(kind: SyntaxKind) -> bool {
27425 kind == SyntaxKind::TRIM_FN
27426 }
27427 #[inline]
27428 fn cast(syntax: SyntaxNode) -> Option<Self> {
27429 if Self::can_cast(syntax.kind()) {
27430 Some(Self { syntax })
27431 } else {
27432 None
27433 }
27434 }
27435 #[inline]
27436 fn syntax(&self) -> &SyntaxNode {
27437 &self.syntax
27438 }
27439}
27440impl AstNode for Truncate {
27441 #[inline]
27442 fn can_cast(kind: SyntaxKind) -> bool {
27443 kind == SyntaxKind::TRUNCATE
27444 }
27445 #[inline]
27446 fn cast(syntax: SyntaxNode) -> Option<Self> {
27447 if Self::can_cast(syntax.kind()) {
27448 Some(Self { syntax })
27449 } else {
27450 None
27451 }
27452 }
27453 #[inline]
27454 fn syntax(&self) -> &SyntaxNode {
27455 &self.syntax
27456 }
27457}
27458impl AstNode for TupleExpr {
27459 #[inline]
27460 fn can_cast(kind: SyntaxKind) -> bool {
27461 kind == SyntaxKind::TUPLE_EXPR
27462 }
27463 #[inline]
27464 fn cast(syntax: SyntaxNode) -> Option<Self> {
27465 if Self::can_cast(syntax.kind()) {
27466 Some(Self { syntax })
27467 } else {
27468 None
27469 }
27470 }
27471 #[inline]
27472 fn syntax(&self) -> &SyntaxNode {
27473 &self.syntax
27474 }
27475}
27476impl AstNode for UnicodeNormalForm {
27477 #[inline]
27478 fn can_cast(kind: SyntaxKind) -> bool {
27479 kind == SyntaxKind::UNICODE_NORMAL_FORM
27480 }
27481 #[inline]
27482 fn cast(syntax: SyntaxNode) -> Option<Self> {
27483 if Self::can_cast(syntax.kind()) {
27484 Some(Self { syntax })
27485 } else {
27486 None
27487 }
27488 }
27489 #[inline]
27490 fn syntax(&self) -> &SyntaxNode {
27491 &self.syntax
27492 }
27493}
27494impl AstNode for UniqueConstraint {
27495 #[inline]
27496 fn can_cast(kind: SyntaxKind) -> bool {
27497 kind == SyntaxKind::UNIQUE_CONSTRAINT
27498 }
27499 #[inline]
27500 fn cast(syntax: SyntaxNode) -> Option<Self> {
27501 if Self::can_cast(syntax.kind()) {
27502 Some(Self { syntax })
27503 } else {
27504 None
27505 }
27506 }
27507 #[inline]
27508 fn syntax(&self) -> &SyntaxNode {
27509 &self.syntax
27510 }
27511}
27512impl AstNode for Unlisten {
27513 #[inline]
27514 fn can_cast(kind: SyntaxKind) -> bool {
27515 kind == SyntaxKind::UNLISTEN
27516 }
27517 #[inline]
27518 fn cast(syntax: SyntaxNode) -> Option<Self> {
27519 if Self::can_cast(syntax.kind()) {
27520 Some(Self { syntax })
27521 } else {
27522 None
27523 }
27524 }
27525 #[inline]
27526 fn syntax(&self) -> &SyntaxNode {
27527 &self.syntax
27528 }
27529}
27530impl AstNode for Update {
27531 #[inline]
27532 fn can_cast(kind: SyntaxKind) -> bool {
27533 kind == SyntaxKind::UPDATE
27534 }
27535 #[inline]
27536 fn cast(syntax: SyntaxNode) -> Option<Self> {
27537 if Self::can_cast(syntax.kind()) {
27538 Some(Self { syntax })
27539 } else {
27540 None
27541 }
27542 }
27543 #[inline]
27544 fn syntax(&self) -> &SyntaxNode {
27545 &self.syntax
27546 }
27547}
27548impl AstNode for UsingClause {
27549 #[inline]
27550 fn can_cast(kind: SyntaxKind) -> bool {
27551 kind == SyntaxKind::USING_CLAUSE
27552 }
27553 #[inline]
27554 fn cast(syntax: SyntaxNode) -> Option<Self> {
27555 if Self::can_cast(syntax.kind()) {
27556 Some(Self { syntax })
27557 } else {
27558 None
27559 }
27560 }
27561 #[inline]
27562 fn syntax(&self) -> &SyntaxNode {
27563 &self.syntax
27564 }
27565}
27566impl AstNode for UsingIndex {
27567 #[inline]
27568 fn can_cast(kind: SyntaxKind) -> bool {
27569 kind == SyntaxKind::USING_INDEX
27570 }
27571 #[inline]
27572 fn cast(syntax: SyntaxNode) -> Option<Self> {
27573 if Self::can_cast(syntax.kind()) {
27574 Some(Self { syntax })
27575 } else {
27576 None
27577 }
27578 }
27579 #[inline]
27580 fn syntax(&self) -> &SyntaxNode {
27581 &self.syntax
27582 }
27583}
27584impl AstNode for UsingMethod {
27585 #[inline]
27586 fn can_cast(kind: SyntaxKind) -> bool {
27587 kind == SyntaxKind::USING_METHOD
27588 }
27589 #[inline]
27590 fn cast(syntax: SyntaxNode) -> Option<Self> {
27591 if Self::can_cast(syntax.kind()) {
27592 Some(Self { syntax })
27593 } else {
27594 None
27595 }
27596 }
27597 #[inline]
27598 fn syntax(&self) -> &SyntaxNode {
27599 &self.syntax
27600 }
27601}
27602impl AstNode for UsingOnClause {
27603 #[inline]
27604 fn can_cast(kind: SyntaxKind) -> bool {
27605 kind == SyntaxKind::USING_ON_CLAUSE
27606 }
27607 #[inline]
27608 fn cast(syntax: SyntaxNode) -> Option<Self> {
27609 if Self::can_cast(syntax.kind()) {
27610 Some(Self { syntax })
27611 } else {
27612 None
27613 }
27614 }
27615 #[inline]
27616 fn syntax(&self) -> &SyntaxNode {
27617 &self.syntax
27618 }
27619}
27620impl AstNode for Vacuum {
27621 #[inline]
27622 fn can_cast(kind: SyntaxKind) -> bool {
27623 kind == SyntaxKind::VACUUM
27624 }
27625 #[inline]
27626 fn cast(syntax: SyntaxNode) -> Option<Self> {
27627 if Self::can_cast(syntax.kind()) {
27628 Some(Self { syntax })
27629 } else {
27630 None
27631 }
27632 }
27633 #[inline]
27634 fn syntax(&self) -> &SyntaxNode {
27635 &self.syntax
27636 }
27637}
27638impl AstNode for VacuumOption {
27639 #[inline]
27640 fn can_cast(kind: SyntaxKind) -> bool {
27641 kind == SyntaxKind::VACUUM_OPTION
27642 }
27643 #[inline]
27644 fn cast(syntax: SyntaxNode) -> Option<Self> {
27645 if Self::can_cast(syntax.kind()) {
27646 Some(Self { syntax })
27647 } else {
27648 None
27649 }
27650 }
27651 #[inline]
27652 fn syntax(&self) -> &SyntaxNode {
27653 &self.syntax
27654 }
27655}
27656impl AstNode for VacuumOptionList {
27657 #[inline]
27658 fn can_cast(kind: SyntaxKind) -> bool {
27659 kind == SyntaxKind::VACUUM_OPTION_LIST
27660 }
27661 #[inline]
27662 fn cast(syntax: SyntaxNode) -> Option<Self> {
27663 if Self::can_cast(syntax.kind()) {
27664 Some(Self { syntax })
27665 } else {
27666 None
27667 }
27668 }
27669 #[inline]
27670 fn syntax(&self) -> &SyntaxNode {
27671 &self.syntax
27672 }
27673}
27674impl AstNode for ValidateConstraint {
27675 #[inline]
27676 fn can_cast(kind: SyntaxKind) -> bool {
27677 kind == SyntaxKind::VALIDATE_CONSTRAINT
27678 }
27679 #[inline]
27680 fn cast(syntax: SyntaxNode) -> Option<Self> {
27681 if Self::can_cast(syntax.kind()) {
27682 Some(Self { syntax })
27683 } else {
27684 None
27685 }
27686 }
27687 #[inline]
27688 fn syntax(&self) -> &SyntaxNode {
27689 &self.syntax
27690 }
27691}
27692impl AstNode for Values {
27693 #[inline]
27694 fn can_cast(kind: SyntaxKind) -> bool {
27695 kind == SyntaxKind::VALUES
27696 }
27697 #[inline]
27698 fn cast(syntax: SyntaxNode) -> Option<Self> {
27699 if Self::can_cast(syntax.kind()) {
27700 Some(Self { syntax })
27701 } else {
27702 None
27703 }
27704 }
27705 #[inline]
27706 fn syntax(&self) -> &SyntaxNode {
27707 &self.syntax
27708 }
27709}
27710impl AstNode for Variant {
27711 #[inline]
27712 fn can_cast(kind: SyntaxKind) -> bool {
27713 kind == SyntaxKind::VARIANT
27714 }
27715 #[inline]
27716 fn cast(syntax: SyntaxNode) -> Option<Self> {
27717 if Self::can_cast(syntax.kind()) {
27718 Some(Self { syntax })
27719 } else {
27720 None
27721 }
27722 }
27723 #[inline]
27724 fn syntax(&self) -> &SyntaxNode {
27725 &self.syntax
27726 }
27727}
27728impl AstNode for VariantList {
27729 #[inline]
27730 fn can_cast(kind: SyntaxKind) -> bool {
27731 kind == SyntaxKind::VARIANT_LIST
27732 }
27733 #[inline]
27734 fn cast(syntax: SyntaxNode) -> Option<Self> {
27735 if Self::can_cast(syntax.kind()) {
27736 Some(Self { syntax })
27737 } else {
27738 None
27739 }
27740 }
27741 #[inline]
27742 fn syntax(&self) -> &SyntaxNode {
27743 &self.syntax
27744 }
27745}
27746impl AstNode for VolatilityFuncOption {
27747 #[inline]
27748 fn can_cast(kind: SyntaxKind) -> bool {
27749 kind == SyntaxKind::VOLATILITY_FUNC_OPTION
27750 }
27751 #[inline]
27752 fn cast(syntax: SyntaxNode) -> Option<Self> {
27753 if Self::can_cast(syntax.kind()) {
27754 Some(Self { syntax })
27755 } else {
27756 None
27757 }
27758 }
27759 #[inline]
27760 fn syntax(&self) -> &SyntaxNode {
27761 &self.syntax
27762 }
27763}
27764impl AstNode for WhenClause {
27765 #[inline]
27766 fn can_cast(kind: SyntaxKind) -> bool {
27767 kind == SyntaxKind::WHEN_CLAUSE
27768 }
27769 #[inline]
27770 fn cast(syntax: SyntaxNode) -> Option<Self> {
27771 if Self::can_cast(syntax.kind()) {
27772 Some(Self { syntax })
27773 } else {
27774 None
27775 }
27776 }
27777 #[inline]
27778 fn syntax(&self) -> &SyntaxNode {
27779 &self.syntax
27780 }
27781}
27782impl AstNode for WhenClauseList {
27783 #[inline]
27784 fn can_cast(kind: SyntaxKind) -> bool {
27785 kind == SyntaxKind::WHEN_CLAUSE_LIST
27786 }
27787 #[inline]
27788 fn cast(syntax: SyntaxNode) -> Option<Self> {
27789 if Self::can_cast(syntax.kind()) {
27790 Some(Self { syntax })
27791 } else {
27792 None
27793 }
27794 }
27795 #[inline]
27796 fn syntax(&self) -> &SyntaxNode {
27797 &self.syntax
27798 }
27799}
27800impl AstNode for WhenCondition {
27801 #[inline]
27802 fn can_cast(kind: SyntaxKind) -> bool {
27803 kind == SyntaxKind::WHEN_CONDITION
27804 }
27805 #[inline]
27806 fn cast(syntax: SyntaxNode) -> Option<Self> {
27807 if Self::can_cast(syntax.kind()) {
27808 Some(Self { syntax })
27809 } else {
27810 None
27811 }
27812 }
27813 #[inline]
27814 fn syntax(&self) -> &SyntaxNode {
27815 &self.syntax
27816 }
27817}
27818impl AstNode for WhereClause {
27819 #[inline]
27820 fn can_cast(kind: SyntaxKind) -> bool {
27821 kind == SyntaxKind::WHERE_CLAUSE
27822 }
27823 #[inline]
27824 fn cast(syntax: SyntaxNode) -> Option<Self> {
27825 if Self::can_cast(syntax.kind()) {
27826 Some(Self { syntax })
27827 } else {
27828 None
27829 }
27830 }
27831 #[inline]
27832 fn syntax(&self) -> &SyntaxNode {
27833 &self.syntax
27834 }
27835}
27836impl AstNode for WhereConditionClause {
27837 #[inline]
27838 fn can_cast(kind: SyntaxKind) -> bool {
27839 kind == SyntaxKind::WHERE_CONDITION_CLAUSE
27840 }
27841 #[inline]
27842 fn cast(syntax: SyntaxNode) -> Option<Self> {
27843 if Self::can_cast(syntax.kind()) {
27844 Some(Self { syntax })
27845 } else {
27846 None
27847 }
27848 }
27849 #[inline]
27850 fn syntax(&self) -> &SyntaxNode {
27851 &self.syntax
27852 }
27853}
27854impl AstNode for WhereCurrentOf {
27855 #[inline]
27856 fn can_cast(kind: SyntaxKind) -> bool {
27857 kind == SyntaxKind::WHERE_CURRENT_OF
27858 }
27859 #[inline]
27860 fn cast(syntax: SyntaxNode) -> Option<Self> {
27861 if Self::can_cast(syntax.kind()) {
27862 Some(Self { syntax })
27863 } else {
27864 None
27865 }
27866 }
27867 #[inline]
27868 fn syntax(&self) -> &SyntaxNode {
27869 &self.syntax
27870 }
27871}
27872impl AstNode for WindowClause {
27873 #[inline]
27874 fn can_cast(kind: SyntaxKind) -> bool {
27875 kind == SyntaxKind::WINDOW_CLAUSE
27876 }
27877 #[inline]
27878 fn cast(syntax: SyntaxNode) -> Option<Self> {
27879 if Self::can_cast(syntax.kind()) {
27880 Some(Self { syntax })
27881 } else {
27882 None
27883 }
27884 }
27885 #[inline]
27886 fn syntax(&self) -> &SyntaxNode {
27887 &self.syntax
27888 }
27889}
27890impl AstNode for WindowDef {
27891 #[inline]
27892 fn can_cast(kind: SyntaxKind) -> bool {
27893 kind == SyntaxKind::WINDOW_DEF
27894 }
27895 #[inline]
27896 fn cast(syntax: SyntaxNode) -> Option<Self> {
27897 if Self::can_cast(syntax.kind()) {
27898 Some(Self { syntax })
27899 } else {
27900 None
27901 }
27902 }
27903 #[inline]
27904 fn syntax(&self) -> &SyntaxNode {
27905 &self.syntax
27906 }
27907}
27908impl AstNode for WindowFuncOption {
27909 #[inline]
27910 fn can_cast(kind: SyntaxKind) -> bool {
27911 kind == SyntaxKind::WINDOW_FUNC_OPTION
27912 }
27913 #[inline]
27914 fn cast(syntax: SyntaxNode) -> Option<Self> {
27915 if Self::can_cast(syntax.kind()) {
27916 Some(Self { syntax })
27917 } else {
27918 None
27919 }
27920 }
27921 #[inline]
27922 fn syntax(&self) -> &SyntaxNode {
27923 &self.syntax
27924 }
27925}
27926impl AstNode for WindowSpec {
27927 #[inline]
27928 fn can_cast(kind: SyntaxKind) -> bool {
27929 kind == SyntaxKind::WINDOW_SPEC
27930 }
27931 #[inline]
27932 fn cast(syntax: SyntaxNode) -> Option<Self> {
27933 if Self::can_cast(syntax.kind()) {
27934 Some(Self { syntax })
27935 } else {
27936 None
27937 }
27938 }
27939 #[inline]
27940 fn syntax(&self) -> &SyntaxNode {
27941 &self.syntax
27942 }
27943}
27944impl AstNode for WithClause {
27945 #[inline]
27946 fn can_cast(kind: SyntaxKind) -> bool {
27947 kind == SyntaxKind::WITH_CLAUSE
27948 }
27949 #[inline]
27950 fn cast(syntax: SyntaxNode) -> Option<Self> {
27951 if Self::can_cast(syntax.kind()) {
27952 Some(Self { syntax })
27953 } else {
27954 None
27955 }
27956 }
27957 #[inline]
27958 fn syntax(&self) -> &SyntaxNode {
27959 &self.syntax
27960 }
27961}
27962impl AstNode for WithData {
27963 #[inline]
27964 fn can_cast(kind: SyntaxKind) -> bool {
27965 kind == SyntaxKind::WITH_DATA
27966 }
27967 #[inline]
27968 fn cast(syntax: SyntaxNode) -> Option<Self> {
27969 if Self::can_cast(syntax.kind()) {
27970 Some(Self { syntax })
27971 } else {
27972 None
27973 }
27974 }
27975 #[inline]
27976 fn syntax(&self) -> &SyntaxNode {
27977 &self.syntax
27978 }
27979}
27980impl AstNode for WithNoData {
27981 #[inline]
27982 fn can_cast(kind: SyntaxKind) -> bool {
27983 kind == SyntaxKind::WITH_NO_DATA
27984 }
27985 #[inline]
27986 fn cast(syntax: SyntaxNode) -> Option<Self> {
27987 if Self::can_cast(syntax.kind()) {
27988 Some(Self { syntax })
27989 } else {
27990 None
27991 }
27992 }
27993 #[inline]
27994 fn syntax(&self) -> &SyntaxNode {
27995 &self.syntax
27996 }
27997}
27998impl AstNode for WithOptions {
27999 #[inline]
28000 fn can_cast(kind: SyntaxKind) -> bool {
28001 kind == SyntaxKind::WITH_OPTIONS
28002 }
28003 #[inline]
28004 fn cast(syntax: SyntaxNode) -> Option<Self> {
28005 if Self::can_cast(syntax.kind()) {
28006 Some(Self { syntax })
28007 } else {
28008 None
28009 }
28010 }
28011 #[inline]
28012 fn syntax(&self) -> &SyntaxNode {
28013 &self.syntax
28014 }
28015}
28016impl AstNode for WithParams {
28017 #[inline]
28018 fn can_cast(kind: SyntaxKind) -> bool {
28019 kind == SyntaxKind::WITH_PARAMS
28020 }
28021 #[inline]
28022 fn cast(syntax: SyntaxNode) -> Option<Self> {
28023 if Self::can_cast(syntax.kind()) {
28024 Some(Self { syntax })
28025 } else {
28026 None
28027 }
28028 }
28029 #[inline]
28030 fn syntax(&self) -> &SyntaxNode {
28031 &self.syntax
28032 }
28033}
28034impl AstNode for WithTable {
28035 #[inline]
28036 fn can_cast(kind: SyntaxKind) -> bool {
28037 kind == SyntaxKind::WITH_TABLE
28038 }
28039 #[inline]
28040 fn cast(syntax: SyntaxNode) -> Option<Self> {
28041 if Self::can_cast(syntax.kind()) {
28042 Some(Self { syntax })
28043 } else {
28044 None
28045 }
28046 }
28047 #[inline]
28048 fn syntax(&self) -> &SyntaxNode {
28049 &self.syntax
28050 }
28051}
28052impl AstNode for WithTimezone {
28053 #[inline]
28054 fn can_cast(kind: SyntaxKind) -> bool {
28055 kind == SyntaxKind::WITH_TIMEZONE
28056 }
28057 #[inline]
28058 fn cast(syntax: SyntaxNode) -> Option<Self> {
28059 if Self::can_cast(syntax.kind()) {
28060 Some(Self { syntax })
28061 } else {
28062 None
28063 }
28064 }
28065 #[inline]
28066 fn syntax(&self) -> &SyntaxNode {
28067 &self.syntax
28068 }
28069}
28070impl AstNode for WithinClause {
28071 #[inline]
28072 fn can_cast(kind: SyntaxKind) -> bool {
28073 kind == SyntaxKind::WITHIN_CLAUSE
28074 }
28075 #[inline]
28076 fn cast(syntax: SyntaxNode) -> Option<Self> {
28077 if Self::can_cast(syntax.kind()) {
28078 Some(Self { syntax })
28079 } else {
28080 None
28081 }
28082 }
28083 #[inline]
28084 fn syntax(&self) -> &SyntaxNode {
28085 &self.syntax
28086 }
28087}
28088impl AstNode for WithoutOids {
28089 #[inline]
28090 fn can_cast(kind: SyntaxKind) -> bool {
28091 kind == SyntaxKind::WITHOUT_OIDS
28092 }
28093 #[inline]
28094 fn cast(syntax: SyntaxNode) -> Option<Self> {
28095 if Self::can_cast(syntax.kind()) {
28096 Some(Self { syntax })
28097 } else {
28098 None
28099 }
28100 }
28101 #[inline]
28102 fn syntax(&self) -> &SyntaxNode {
28103 &self.syntax
28104 }
28105}
28106impl AstNode for WithoutTimezone {
28107 #[inline]
28108 fn can_cast(kind: SyntaxKind) -> bool {
28109 kind == SyntaxKind::WITHOUT_TIMEZONE
28110 }
28111 #[inline]
28112 fn cast(syntax: SyntaxNode) -> Option<Self> {
28113 if Self::can_cast(syntax.kind()) {
28114 Some(Self { syntax })
28115 } else {
28116 None
28117 }
28118 }
28119 #[inline]
28120 fn syntax(&self) -> &SyntaxNode {
28121 &self.syntax
28122 }
28123}
28124impl AstNode for XmlAttributeList {
28125 #[inline]
28126 fn can_cast(kind: SyntaxKind) -> bool {
28127 kind == SyntaxKind::XML_ATTRIBUTE_LIST
28128 }
28129 #[inline]
28130 fn cast(syntax: SyntaxNode) -> Option<Self> {
28131 if Self::can_cast(syntax.kind()) {
28132 Some(Self { syntax })
28133 } else {
28134 None
28135 }
28136 }
28137 #[inline]
28138 fn syntax(&self) -> &SyntaxNode {
28139 &self.syntax
28140 }
28141}
28142impl AstNode for XmlColumnOption {
28143 #[inline]
28144 fn can_cast(kind: SyntaxKind) -> bool {
28145 kind == SyntaxKind::XML_COLUMN_OPTION
28146 }
28147 #[inline]
28148 fn cast(syntax: SyntaxNode) -> Option<Self> {
28149 if Self::can_cast(syntax.kind()) {
28150 Some(Self { syntax })
28151 } else {
28152 None
28153 }
28154 }
28155 #[inline]
28156 fn syntax(&self) -> &SyntaxNode {
28157 &self.syntax
28158 }
28159}
28160impl AstNode for XmlColumnOptionList {
28161 #[inline]
28162 fn can_cast(kind: SyntaxKind) -> bool {
28163 kind == SyntaxKind::XML_COLUMN_OPTION_LIST
28164 }
28165 #[inline]
28166 fn cast(syntax: SyntaxNode) -> Option<Self> {
28167 if Self::can_cast(syntax.kind()) {
28168 Some(Self { syntax })
28169 } else {
28170 None
28171 }
28172 }
28173 #[inline]
28174 fn syntax(&self) -> &SyntaxNode {
28175 &self.syntax
28176 }
28177}
28178impl AstNode for XmlElementFn {
28179 #[inline]
28180 fn can_cast(kind: SyntaxKind) -> bool {
28181 kind == SyntaxKind::XML_ELEMENT_FN
28182 }
28183 #[inline]
28184 fn cast(syntax: SyntaxNode) -> Option<Self> {
28185 if Self::can_cast(syntax.kind()) {
28186 Some(Self { syntax })
28187 } else {
28188 None
28189 }
28190 }
28191 #[inline]
28192 fn syntax(&self) -> &SyntaxNode {
28193 &self.syntax
28194 }
28195}
28196impl AstNode for XmlExistsFn {
28197 #[inline]
28198 fn can_cast(kind: SyntaxKind) -> bool {
28199 kind == SyntaxKind::XML_EXISTS_FN
28200 }
28201 #[inline]
28202 fn cast(syntax: SyntaxNode) -> Option<Self> {
28203 if Self::can_cast(syntax.kind()) {
28204 Some(Self { syntax })
28205 } else {
28206 None
28207 }
28208 }
28209 #[inline]
28210 fn syntax(&self) -> &SyntaxNode {
28211 &self.syntax
28212 }
28213}
28214impl AstNode for XmlForestFn {
28215 #[inline]
28216 fn can_cast(kind: SyntaxKind) -> bool {
28217 kind == SyntaxKind::XML_FOREST_FN
28218 }
28219 #[inline]
28220 fn cast(syntax: SyntaxNode) -> Option<Self> {
28221 if Self::can_cast(syntax.kind()) {
28222 Some(Self { syntax })
28223 } else {
28224 None
28225 }
28226 }
28227 #[inline]
28228 fn syntax(&self) -> &SyntaxNode {
28229 &self.syntax
28230 }
28231}
28232impl AstNode for XmlNamespace {
28233 #[inline]
28234 fn can_cast(kind: SyntaxKind) -> bool {
28235 kind == SyntaxKind::XML_NAMESPACE
28236 }
28237 #[inline]
28238 fn cast(syntax: SyntaxNode) -> Option<Self> {
28239 if Self::can_cast(syntax.kind()) {
28240 Some(Self { syntax })
28241 } else {
28242 None
28243 }
28244 }
28245 #[inline]
28246 fn syntax(&self) -> &SyntaxNode {
28247 &self.syntax
28248 }
28249}
28250impl AstNode for XmlNamespaceList {
28251 #[inline]
28252 fn can_cast(kind: SyntaxKind) -> bool {
28253 kind == SyntaxKind::XML_NAMESPACE_LIST
28254 }
28255 #[inline]
28256 fn cast(syntax: SyntaxNode) -> Option<Self> {
28257 if Self::can_cast(syntax.kind()) {
28258 Some(Self { syntax })
28259 } else {
28260 None
28261 }
28262 }
28263 #[inline]
28264 fn syntax(&self) -> &SyntaxNode {
28265 &self.syntax
28266 }
28267}
28268impl AstNode for XmlParseFn {
28269 #[inline]
28270 fn can_cast(kind: SyntaxKind) -> bool {
28271 kind == SyntaxKind::XML_PARSE_FN
28272 }
28273 #[inline]
28274 fn cast(syntax: SyntaxNode) -> Option<Self> {
28275 if Self::can_cast(syntax.kind()) {
28276 Some(Self { syntax })
28277 } else {
28278 None
28279 }
28280 }
28281 #[inline]
28282 fn syntax(&self) -> &SyntaxNode {
28283 &self.syntax
28284 }
28285}
28286impl AstNode for XmlPassingMech {
28287 #[inline]
28288 fn can_cast(kind: SyntaxKind) -> bool {
28289 kind == SyntaxKind::XML_PASSING_MECH
28290 }
28291 #[inline]
28292 fn cast(syntax: SyntaxNode) -> Option<Self> {
28293 if Self::can_cast(syntax.kind()) {
28294 Some(Self { syntax })
28295 } else {
28296 None
28297 }
28298 }
28299 #[inline]
28300 fn syntax(&self) -> &SyntaxNode {
28301 &self.syntax
28302 }
28303}
28304impl AstNode for XmlPiFn {
28305 #[inline]
28306 fn can_cast(kind: SyntaxKind) -> bool {
28307 kind == SyntaxKind::XML_PI_FN
28308 }
28309 #[inline]
28310 fn cast(syntax: SyntaxNode) -> Option<Self> {
28311 if Self::can_cast(syntax.kind()) {
28312 Some(Self { syntax })
28313 } else {
28314 None
28315 }
28316 }
28317 #[inline]
28318 fn syntax(&self) -> &SyntaxNode {
28319 &self.syntax
28320 }
28321}
28322impl AstNode for XmlRootFn {
28323 #[inline]
28324 fn can_cast(kind: SyntaxKind) -> bool {
28325 kind == SyntaxKind::XML_ROOT_FN
28326 }
28327 #[inline]
28328 fn cast(syntax: SyntaxNode) -> Option<Self> {
28329 if Self::can_cast(syntax.kind()) {
28330 Some(Self { syntax })
28331 } else {
28332 None
28333 }
28334 }
28335 #[inline]
28336 fn syntax(&self) -> &SyntaxNode {
28337 &self.syntax
28338 }
28339}
28340impl AstNode for XmlRowPassingClause {
28341 #[inline]
28342 fn can_cast(kind: SyntaxKind) -> bool {
28343 kind == SyntaxKind::XML_ROW_PASSING_CLAUSE
28344 }
28345 #[inline]
28346 fn cast(syntax: SyntaxNode) -> Option<Self> {
28347 if Self::can_cast(syntax.kind()) {
28348 Some(Self { syntax })
28349 } else {
28350 None
28351 }
28352 }
28353 #[inline]
28354 fn syntax(&self) -> &SyntaxNode {
28355 &self.syntax
28356 }
28357}
28358impl AstNode for XmlSerializeFn {
28359 #[inline]
28360 fn can_cast(kind: SyntaxKind) -> bool {
28361 kind == SyntaxKind::XML_SERIALIZE_FN
28362 }
28363 #[inline]
28364 fn cast(syntax: SyntaxNode) -> Option<Self> {
28365 if Self::can_cast(syntax.kind()) {
28366 Some(Self { syntax })
28367 } else {
28368 None
28369 }
28370 }
28371 #[inline]
28372 fn syntax(&self) -> &SyntaxNode {
28373 &self.syntax
28374 }
28375}
28376impl AstNode for XmlTable {
28377 #[inline]
28378 fn can_cast(kind: SyntaxKind) -> bool {
28379 kind == SyntaxKind::XML_TABLE
28380 }
28381 #[inline]
28382 fn cast(syntax: SyntaxNode) -> Option<Self> {
28383 if Self::can_cast(syntax.kind()) {
28384 Some(Self { syntax })
28385 } else {
28386 None
28387 }
28388 }
28389 #[inline]
28390 fn syntax(&self) -> &SyntaxNode {
28391 &self.syntax
28392 }
28393}
28394impl AstNode for XmlTableColumn {
28395 #[inline]
28396 fn can_cast(kind: SyntaxKind) -> bool {
28397 kind == SyntaxKind::XML_TABLE_COLUMN
28398 }
28399 #[inline]
28400 fn cast(syntax: SyntaxNode) -> Option<Self> {
28401 if Self::can_cast(syntax.kind()) {
28402 Some(Self { syntax })
28403 } else {
28404 None
28405 }
28406 }
28407 #[inline]
28408 fn syntax(&self) -> &SyntaxNode {
28409 &self.syntax
28410 }
28411}
28412impl AstNode for XmlTableColumnList {
28413 #[inline]
28414 fn can_cast(kind: SyntaxKind) -> bool {
28415 kind == SyntaxKind::XML_TABLE_COLUMN_LIST
28416 }
28417 #[inline]
28418 fn cast(syntax: SyntaxNode) -> Option<Self> {
28419 if Self::can_cast(syntax.kind()) {
28420 Some(Self { syntax })
28421 } else {
28422 None
28423 }
28424 }
28425 #[inline]
28426 fn syntax(&self) -> &SyntaxNode {
28427 &self.syntax
28428 }
28429}
28430impl AstNode for AlterColumnOption {
28431 #[inline]
28432 fn can_cast(kind: SyntaxKind) -> bool {
28433 matches!(
28434 kind,
28435 SyntaxKind::ADD_GENERATED
28436 | SyntaxKind::DROP_DEFAULT
28437 | SyntaxKind::DROP_EXPRESSION
28438 | SyntaxKind::DROP_IDENTITY
28439 | SyntaxKind::DROP_NOT_NULL
28440 | SyntaxKind::RESET_OPTIONS
28441 | SyntaxKind::RESTART
28442 | SyntaxKind::SET_COMPRESSION
28443 | SyntaxKind::SET_DEFAULT
28444 | SyntaxKind::SET_EXPRESSION
28445 | SyntaxKind::SET_GENERATED
28446 | SyntaxKind::SET_GENERATED_OPTIONS
28447 | SyntaxKind::SET_NOT_NULL
28448 | SyntaxKind::SET_OPTIONS
28449 | SyntaxKind::SET_OPTIONS_LIST
28450 | SyntaxKind::SET_SEQUENCE_OPTION
28451 | SyntaxKind::SET_STATISTICS
28452 | SyntaxKind::SET_STORAGE
28453 | SyntaxKind::SET_TYPE
28454 )
28455 }
28456 #[inline]
28457 fn cast(syntax: SyntaxNode) -> Option<Self> {
28458 let res = match syntax.kind() {
28459 SyntaxKind::ADD_GENERATED => AlterColumnOption::AddGenerated(AddGenerated { syntax }),
28460 SyntaxKind::DROP_DEFAULT => AlterColumnOption::DropDefault(DropDefault { syntax }),
28461 SyntaxKind::DROP_EXPRESSION => {
28462 AlterColumnOption::DropExpression(DropExpression { syntax })
28463 }
28464 SyntaxKind::DROP_IDENTITY => AlterColumnOption::DropIdentity(DropIdentity { syntax }),
28465 SyntaxKind::DROP_NOT_NULL => AlterColumnOption::DropNotNull(DropNotNull { syntax }),
28466 SyntaxKind::RESET_OPTIONS => AlterColumnOption::ResetOptions(ResetOptions { syntax }),
28467 SyntaxKind::RESTART => AlterColumnOption::Restart(Restart { syntax }),
28468 SyntaxKind::SET_COMPRESSION => {
28469 AlterColumnOption::SetCompression(SetCompression { syntax })
28470 }
28471 SyntaxKind::SET_DEFAULT => AlterColumnOption::SetDefault(SetDefault { syntax }),
28472 SyntaxKind::SET_EXPRESSION => {
28473 AlterColumnOption::SetExpression(SetExpression { syntax })
28474 }
28475 SyntaxKind::SET_GENERATED => AlterColumnOption::SetGenerated(SetGenerated { syntax }),
28476 SyntaxKind::SET_GENERATED_OPTIONS => {
28477 AlterColumnOption::SetGeneratedOptions(SetGeneratedOptions { syntax })
28478 }
28479 SyntaxKind::SET_NOT_NULL => AlterColumnOption::SetNotNull(SetNotNull { syntax }),
28480 SyntaxKind::SET_OPTIONS => AlterColumnOption::SetOptions(SetOptions { syntax }),
28481 SyntaxKind::SET_OPTIONS_LIST => {
28482 AlterColumnOption::SetOptionsList(SetOptionsList { syntax })
28483 }
28484 SyntaxKind::SET_SEQUENCE_OPTION => {
28485 AlterColumnOption::SetSequenceOption(SetSequenceOption { syntax })
28486 }
28487 SyntaxKind::SET_STATISTICS => {
28488 AlterColumnOption::SetStatistics(SetStatistics { syntax })
28489 }
28490 SyntaxKind::SET_STORAGE => AlterColumnOption::SetStorage(SetStorage { syntax }),
28491 SyntaxKind::SET_TYPE => AlterColumnOption::SetType(SetType { syntax }),
28492 _ => {
28493 return None;
28494 }
28495 };
28496 Some(res)
28497 }
28498 #[inline]
28499 fn syntax(&self) -> &SyntaxNode {
28500 match self {
28501 AlterColumnOption::AddGenerated(it) => &it.syntax,
28502 AlterColumnOption::DropDefault(it) => &it.syntax,
28503 AlterColumnOption::DropExpression(it) => &it.syntax,
28504 AlterColumnOption::DropIdentity(it) => &it.syntax,
28505 AlterColumnOption::DropNotNull(it) => &it.syntax,
28506 AlterColumnOption::ResetOptions(it) => &it.syntax,
28507 AlterColumnOption::Restart(it) => &it.syntax,
28508 AlterColumnOption::SetCompression(it) => &it.syntax,
28509 AlterColumnOption::SetDefault(it) => &it.syntax,
28510 AlterColumnOption::SetExpression(it) => &it.syntax,
28511 AlterColumnOption::SetGenerated(it) => &it.syntax,
28512 AlterColumnOption::SetGeneratedOptions(it) => &it.syntax,
28513 AlterColumnOption::SetNotNull(it) => &it.syntax,
28514 AlterColumnOption::SetOptions(it) => &it.syntax,
28515 AlterColumnOption::SetOptionsList(it) => &it.syntax,
28516 AlterColumnOption::SetSequenceOption(it) => &it.syntax,
28517 AlterColumnOption::SetStatistics(it) => &it.syntax,
28518 AlterColumnOption::SetStorage(it) => &it.syntax,
28519 AlterColumnOption::SetType(it) => &it.syntax,
28520 }
28521 }
28522}
28523impl From<AddGenerated> for AlterColumnOption {
28524 #[inline]
28525 fn from(node: AddGenerated) -> AlterColumnOption {
28526 AlterColumnOption::AddGenerated(node)
28527 }
28528}
28529impl From<DropDefault> for AlterColumnOption {
28530 #[inline]
28531 fn from(node: DropDefault) -> AlterColumnOption {
28532 AlterColumnOption::DropDefault(node)
28533 }
28534}
28535impl From<DropExpression> for AlterColumnOption {
28536 #[inline]
28537 fn from(node: DropExpression) -> AlterColumnOption {
28538 AlterColumnOption::DropExpression(node)
28539 }
28540}
28541impl From<DropIdentity> for AlterColumnOption {
28542 #[inline]
28543 fn from(node: DropIdentity) -> AlterColumnOption {
28544 AlterColumnOption::DropIdentity(node)
28545 }
28546}
28547impl From<DropNotNull> for AlterColumnOption {
28548 #[inline]
28549 fn from(node: DropNotNull) -> AlterColumnOption {
28550 AlterColumnOption::DropNotNull(node)
28551 }
28552}
28553impl From<ResetOptions> for AlterColumnOption {
28554 #[inline]
28555 fn from(node: ResetOptions) -> AlterColumnOption {
28556 AlterColumnOption::ResetOptions(node)
28557 }
28558}
28559impl From<Restart> for AlterColumnOption {
28560 #[inline]
28561 fn from(node: Restart) -> AlterColumnOption {
28562 AlterColumnOption::Restart(node)
28563 }
28564}
28565impl From<SetCompression> for AlterColumnOption {
28566 #[inline]
28567 fn from(node: SetCompression) -> AlterColumnOption {
28568 AlterColumnOption::SetCompression(node)
28569 }
28570}
28571impl From<SetDefault> for AlterColumnOption {
28572 #[inline]
28573 fn from(node: SetDefault) -> AlterColumnOption {
28574 AlterColumnOption::SetDefault(node)
28575 }
28576}
28577impl From<SetExpression> for AlterColumnOption {
28578 #[inline]
28579 fn from(node: SetExpression) -> AlterColumnOption {
28580 AlterColumnOption::SetExpression(node)
28581 }
28582}
28583impl From<SetGenerated> for AlterColumnOption {
28584 #[inline]
28585 fn from(node: SetGenerated) -> AlterColumnOption {
28586 AlterColumnOption::SetGenerated(node)
28587 }
28588}
28589impl From<SetGeneratedOptions> for AlterColumnOption {
28590 #[inline]
28591 fn from(node: SetGeneratedOptions) -> AlterColumnOption {
28592 AlterColumnOption::SetGeneratedOptions(node)
28593 }
28594}
28595impl From<SetNotNull> for AlterColumnOption {
28596 #[inline]
28597 fn from(node: SetNotNull) -> AlterColumnOption {
28598 AlterColumnOption::SetNotNull(node)
28599 }
28600}
28601impl From<SetOptions> for AlterColumnOption {
28602 #[inline]
28603 fn from(node: SetOptions) -> AlterColumnOption {
28604 AlterColumnOption::SetOptions(node)
28605 }
28606}
28607impl From<SetOptionsList> for AlterColumnOption {
28608 #[inline]
28609 fn from(node: SetOptionsList) -> AlterColumnOption {
28610 AlterColumnOption::SetOptionsList(node)
28611 }
28612}
28613impl From<SetSequenceOption> for AlterColumnOption {
28614 #[inline]
28615 fn from(node: SetSequenceOption) -> AlterColumnOption {
28616 AlterColumnOption::SetSequenceOption(node)
28617 }
28618}
28619impl From<SetStatistics> for AlterColumnOption {
28620 #[inline]
28621 fn from(node: SetStatistics) -> AlterColumnOption {
28622 AlterColumnOption::SetStatistics(node)
28623 }
28624}
28625impl From<SetStorage> for AlterColumnOption {
28626 #[inline]
28627 fn from(node: SetStorage) -> AlterColumnOption {
28628 AlterColumnOption::SetStorage(node)
28629 }
28630}
28631impl From<SetType> for AlterColumnOption {
28632 #[inline]
28633 fn from(node: SetType) -> AlterColumnOption {
28634 AlterColumnOption::SetType(node)
28635 }
28636}
28637impl AstNode for AlterDomainAction {
28638 #[inline]
28639 fn can_cast(kind: SyntaxKind) -> bool {
28640 matches!(
28641 kind,
28642 SyntaxKind::ADD_CONSTRAINT
28643 | SyntaxKind::DROP_CONSTRAINT
28644 | SyntaxKind::DROP_DEFAULT
28645 | SyntaxKind::DROP_NOT_NULL
28646 | SyntaxKind::OWNER_TO
28647 | SyntaxKind::RENAME_CONSTRAINT
28648 | SyntaxKind::RENAME_TO
28649 | SyntaxKind::SET_DEFAULT
28650 | SyntaxKind::SET_NOT_NULL
28651 | SyntaxKind::SET_SCHEMA
28652 | SyntaxKind::VALIDATE_CONSTRAINT
28653 )
28654 }
28655 #[inline]
28656 fn cast(syntax: SyntaxNode) -> Option<Self> {
28657 let res = match syntax.kind() {
28658 SyntaxKind::ADD_CONSTRAINT => {
28659 AlterDomainAction::AddConstraint(AddConstraint { syntax })
28660 }
28661 SyntaxKind::DROP_CONSTRAINT => {
28662 AlterDomainAction::DropConstraint(DropConstraint { syntax })
28663 }
28664 SyntaxKind::DROP_DEFAULT => AlterDomainAction::DropDefault(DropDefault { syntax }),
28665 SyntaxKind::DROP_NOT_NULL => AlterDomainAction::DropNotNull(DropNotNull { syntax }),
28666 SyntaxKind::OWNER_TO => AlterDomainAction::OwnerTo(OwnerTo { syntax }),
28667 SyntaxKind::RENAME_CONSTRAINT => {
28668 AlterDomainAction::RenameConstraint(RenameConstraint { syntax })
28669 }
28670 SyntaxKind::RENAME_TO => AlterDomainAction::RenameTo(RenameTo { syntax }),
28671 SyntaxKind::SET_DEFAULT => AlterDomainAction::SetDefault(SetDefault { syntax }),
28672 SyntaxKind::SET_NOT_NULL => AlterDomainAction::SetNotNull(SetNotNull { syntax }),
28673 SyntaxKind::SET_SCHEMA => AlterDomainAction::SetSchema(SetSchema { syntax }),
28674 SyntaxKind::VALIDATE_CONSTRAINT => {
28675 AlterDomainAction::ValidateConstraint(ValidateConstraint { syntax })
28676 }
28677 _ => {
28678 return None;
28679 }
28680 };
28681 Some(res)
28682 }
28683 #[inline]
28684 fn syntax(&self) -> &SyntaxNode {
28685 match self {
28686 AlterDomainAction::AddConstraint(it) => &it.syntax,
28687 AlterDomainAction::DropConstraint(it) => &it.syntax,
28688 AlterDomainAction::DropDefault(it) => &it.syntax,
28689 AlterDomainAction::DropNotNull(it) => &it.syntax,
28690 AlterDomainAction::OwnerTo(it) => &it.syntax,
28691 AlterDomainAction::RenameConstraint(it) => &it.syntax,
28692 AlterDomainAction::RenameTo(it) => &it.syntax,
28693 AlterDomainAction::SetDefault(it) => &it.syntax,
28694 AlterDomainAction::SetNotNull(it) => &it.syntax,
28695 AlterDomainAction::SetSchema(it) => &it.syntax,
28696 AlterDomainAction::ValidateConstraint(it) => &it.syntax,
28697 }
28698 }
28699}
28700impl From<AddConstraint> for AlterDomainAction {
28701 #[inline]
28702 fn from(node: AddConstraint) -> AlterDomainAction {
28703 AlterDomainAction::AddConstraint(node)
28704 }
28705}
28706impl From<DropConstraint> for AlterDomainAction {
28707 #[inline]
28708 fn from(node: DropConstraint) -> AlterDomainAction {
28709 AlterDomainAction::DropConstraint(node)
28710 }
28711}
28712impl From<DropDefault> for AlterDomainAction {
28713 #[inline]
28714 fn from(node: DropDefault) -> AlterDomainAction {
28715 AlterDomainAction::DropDefault(node)
28716 }
28717}
28718impl From<DropNotNull> for AlterDomainAction {
28719 #[inline]
28720 fn from(node: DropNotNull) -> AlterDomainAction {
28721 AlterDomainAction::DropNotNull(node)
28722 }
28723}
28724impl From<OwnerTo> for AlterDomainAction {
28725 #[inline]
28726 fn from(node: OwnerTo) -> AlterDomainAction {
28727 AlterDomainAction::OwnerTo(node)
28728 }
28729}
28730impl From<RenameConstraint> for AlterDomainAction {
28731 #[inline]
28732 fn from(node: RenameConstraint) -> AlterDomainAction {
28733 AlterDomainAction::RenameConstraint(node)
28734 }
28735}
28736impl From<RenameTo> for AlterDomainAction {
28737 #[inline]
28738 fn from(node: RenameTo) -> AlterDomainAction {
28739 AlterDomainAction::RenameTo(node)
28740 }
28741}
28742impl From<SetDefault> for AlterDomainAction {
28743 #[inline]
28744 fn from(node: SetDefault) -> AlterDomainAction {
28745 AlterDomainAction::SetDefault(node)
28746 }
28747}
28748impl From<SetNotNull> for AlterDomainAction {
28749 #[inline]
28750 fn from(node: SetNotNull) -> AlterDomainAction {
28751 AlterDomainAction::SetNotNull(node)
28752 }
28753}
28754impl From<SetSchema> for AlterDomainAction {
28755 #[inline]
28756 fn from(node: SetSchema) -> AlterDomainAction {
28757 AlterDomainAction::SetSchema(node)
28758 }
28759}
28760impl From<ValidateConstraint> for AlterDomainAction {
28761 #[inline]
28762 fn from(node: ValidateConstraint) -> AlterDomainAction {
28763 AlterDomainAction::ValidateConstraint(node)
28764 }
28765}
28766impl AstNode for AlterMaterializedViewAction {
28767 #[inline]
28768 fn can_cast(kind: SyntaxKind) -> bool {
28769 matches!(
28770 kind,
28771 SyntaxKind::DEPENDS_ON_EXTENSION
28772 | SyntaxKind::NO_DEPENDS_ON_EXTENSION
28773 | SyntaxKind::RENAME_COLUMN
28774 | SyntaxKind::RENAME_TO
28775 | SyntaxKind::SET_SCHEMA
28776 )
28777 }
28778 #[inline]
28779 fn cast(syntax: SyntaxNode) -> Option<Self> {
28780 let res = match syntax.kind() {
28781 SyntaxKind::DEPENDS_ON_EXTENSION => {
28782 AlterMaterializedViewAction::DependsOnExtension(DependsOnExtension { syntax })
28783 }
28784 SyntaxKind::NO_DEPENDS_ON_EXTENSION => {
28785 AlterMaterializedViewAction::NoDependsOnExtension(NoDependsOnExtension { syntax })
28786 }
28787 SyntaxKind::RENAME_COLUMN => {
28788 AlterMaterializedViewAction::RenameColumn(RenameColumn { syntax })
28789 }
28790 SyntaxKind::RENAME_TO => AlterMaterializedViewAction::RenameTo(RenameTo { syntax }),
28791 SyntaxKind::SET_SCHEMA => AlterMaterializedViewAction::SetSchema(SetSchema { syntax }),
28792 _ => {
28793 if let Some(result) = AlterTableAction::cast(syntax) {
28794 return Some(AlterMaterializedViewAction::AlterTableAction(result));
28795 }
28796 return None;
28797 }
28798 };
28799 Some(res)
28800 }
28801 #[inline]
28802 fn syntax(&self) -> &SyntaxNode {
28803 match self {
28804 AlterMaterializedViewAction::DependsOnExtension(it) => &it.syntax,
28805 AlterMaterializedViewAction::NoDependsOnExtension(it) => &it.syntax,
28806 AlterMaterializedViewAction::RenameColumn(it) => &it.syntax,
28807 AlterMaterializedViewAction::RenameTo(it) => &it.syntax,
28808 AlterMaterializedViewAction::SetSchema(it) => &it.syntax,
28809 AlterMaterializedViewAction::AlterTableAction(it) => it.syntax(),
28810 }
28811 }
28812}
28813impl From<DependsOnExtension> for AlterMaterializedViewAction {
28814 #[inline]
28815 fn from(node: DependsOnExtension) -> AlterMaterializedViewAction {
28816 AlterMaterializedViewAction::DependsOnExtension(node)
28817 }
28818}
28819impl From<NoDependsOnExtension> for AlterMaterializedViewAction {
28820 #[inline]
28821 fn from(node: NoDependsOnExtension) -> AlterMaterializedViewAction {
28822 AlterMaterializedViewAction::NoDependsOnExtension(node)
28823 }
28824}
28825impl From<RenameColumn> for AlterMaterializedViewAction {
28826 #[inline]
28827 fn from(node: RenameColumn) -> AlterMaterializedViewAction {
28828 AlterMaterializedViewAction::RenameColumn(node)
28829 }
28830}
28831impl From<RenameTo> for AlterMaterializedViewAction {
28832 #[inline]
28833 fn from(node: RenameTo) -> AlterMaterializedViewAction {
28834 AlterMaterializedViewAction::RenameTo(node)
28835 }
28836}
28837impl From<SetSchema> for AlterMaterializedViewAction {
28838 #[inline]
28839 fn from(node: SetSchema) -> AlterMaterializedViewAction {
28840 AlterMaterializedViewAction::SetSchema(node)
28841 }
28842}
28843impl AstNode for AlterTableAction {
28844 #[inline]
28845 fn can_cast(kind: SyntaxKind) -> bool {
28846 matches!(
28847 kind,
28848 SyntaxKind::ADD_COLUMN
28849 | SyntaxKind::ADD_CONSTRAINT
28850 | SyntaxKind::ALTER_COLUMN
28851 | SyntaxKind::ALTER_CONSTRAINT
28852 | SyntaxKind::ATTACH_PARTITION
28853 | SyntaxKind::CLUSTER_ON
28854 | SyntaxKind::DETACH_PARTITION
28855 | SyntaxKind::DISABLE_RLS
28856 | SyntaxKind::DISABLE_RULE
28857 | SyntaxKind::DISABLE_TRIGGER
28858 | SyntaxKind::DROP_COLUMN
28859 | SyntaxKind::DROP_CONSTRAINT
28860 | SyntaxKind::ENABLE_ALWAYS_RULE
28861 | SyntaxKind::ENABLE_ALWAYS_TRIGGER
28862 | SyntaxKind::ENABLE_REPLICA_RULE
28863 | SyntaxKind::ENABLE_REPLICA_TRIGGER
28864 | SyntaxKind::ENABLE_RLS
28865 | SyntaxKind::ENABLE_RULE
28866 | SyntaxKind::ENABLE_TRIGGER
28867 | SyntaxKind::FORCE_RLS
28868 | SyntaxKind::INHERIT_TABLE
28869 | SyntaxKind::MERGE_PARTITIONS
28870 | SyntaxKind::NO_FORCE_RLS
28871 | SyntaxKind::NO_INHERIT_TABLE
28872 | SyntaxKind::NOT_OF
28873 | SyntaxKind::OF_TYPE
28874 | SyntaxKind::OPTION_ITEM_LIST
28875 | SyntaxKind::OWNER_TO
28876 | SyntaxKind::RENAME_COLUMN
28877 | SyntaxKind::RENAME_CONSTRAINT
28878 | SyntaxKind::RENAME_TO
28879 | SyntaxKind::REPLICA_IDENTITY
28880 | SyntaxKind::RESET_OPTIONS
28881 | SyntaxKind::SET_ACCESS_METHOD
28882 | SyntaxKind::SET_LOGGED
28883 | SyntaxKind::SET_OPTIONS
28884 | SyntaxKind::SET_SCHEMA
28885 | SyntaxKind::SET_TABLESPACE
28886 | SyntaxKind::SET_UNLOGGED
28887 | SyntaxKind::SET_WITHOUT_CLUSTER
28888 | SyntaxKind::SET_WITHOUT_OIDS
28889 | SyntaxKind::SPLIT_PARTITION
28890 | SyntaxKind::VALIDATE_CONSTRAINT
28891 )
28892 }
28893 #[inline]
28894 fn cast(syntax: SyntaxNode) -> Option<Self> {
28895 let res = match syntax.kind() {
28896 SyntaxKind::ADD_COLUMN => AlterTableAction::AddColumn(AddColumn { syntax }),
28897 SyntaxKind::ADD_CONSTRAINT => AlterTableAction::AddConstraint(AddConstraint { syntax }),
28898 SyntaxKind::ALTER_COLUMN => AlterTableAction::AlterColumn(AlterColumn { syntax }),
28899 SyntaxKind::ALTER_CONSTRAINT => {
28900 AlterTableAction::AlterConstraint(AlterConstraint { syntax })
28901 }
28902 SyntaxKind::ATTACH_PARTITION => {
28903 AlterTableAction::AttachPartition(AttachPartition { syntax })
28904 }
28905 SyntaxKind::CLUSTER_ON => AlterTableAction::ClusterOn(ClusterOn { syntax }),
28906 SyntaxKind::DETACH_PARTITION => {
28907 AlterTableAction::DetachPartition(DetachPartition { syntax })
28908 }
28909 SyntaxKind::DISABLE_RLS => AlterTableAction::DisableRls(DisableRls { syntax }),
28910 SyntaxKind::DISABLE_RULE => AlterTableAction::DisableRule(DisableRule { syntax }),
28911 SyntaxKind::DISABLE_TRIGGER => {
28912 AlterTableAction::DisableTrigger(DisableTrigger { syntax })
28913 }
28914 SyntaxKind::DROP_COLUMN => AlterTableAction::DropColumn(DropColumn { syntax }),
28915 SyntaxKind::DROP_CONSTRAINT => {
28916 AlterTableAction::DropConstraint(DropConstraint { syntax })
28917 }
28918 SyntaxKind::ENABLE_ALWAYS_RULE => {
28919 AlterTableAction::EnableAlwaysRule(EnableAlwaysRule { syntax })
28920 }
28921 SyntaxKind::ENABLE_ALWAYS_TRIGGER => {
28922 AlterTableAction::EnableAlwaysTrigger(EnableAlwaysTrigger { syntax })
28923 }
28924 SyntaxKind::ENABLE_REPLICA_RULE => {
28925 AlterTableAction::EnableReplicaRule(EnableReplicaRule { syntax })
28926 }
28927 SyntaxKind::ENABLE_REPLICA_TRIGGER => {
28928 AlterTableAction::EnableReplicaTrigger(EnableReplicaTrigger { syntax })
28929 }
28930 SyntaxKind::ENABLE_RLS => AlterTableAction::EnableRls(EnableRls { syntax }),
28931 SyntaxKind::ENABLE_RULE => AlterTableAction::EnableRule(EnableRule { syntax }),
28932 SyntaxKind::ENABLE_TRIGGER => AlterTableAction::EnableTrigger(EnableTrigger { syntax }),
28933 SyntaxKind::FORCE_RLS => AlterTableAction::ForceRls(ForceRls { syntax }),
28934 SyntaxKind::INHERIT_TABLE => AlterTableAction::InheritTable(InheritTable { syntax }),
28935 SyntaxKind::MERGE_PARTITIONS => {
28936 AlterTableAction::MergePartitions(MergePartitions { syntax })
28937 }
28938 SyntaxKind::NO_FORCE_RLS => AlterTableAction::NoForceRls(NoForceRls { syntax }),
28939 SyntaxKind::NO_INHERIT_TABLE => {
28940 AlterTableAction::NoInheritTable(NoInheritTable { syntax })
28941 }
28942 SyntaxKind::NOT_OF => AlterTableAction::NotOf(NotOf { syntax }),
28943 SyntaxKind::OF_TYPE => AlterTableAction::OfType(OfType { syntax }),
28944 SyntaxKind::OPTION_ITEM_LIST => {
28945 AlterTableAction::OptionItemList(OptionItemList { syntax })
28946 }
28947 SyntaxKind::OWNER_TO => AlterTableAction::OwnerTo(OwnerTo { syntax }),
28948 SyntaxKind::RENAME_COLUMN => AlterTableAction::RenameColumn(RenameColumn { syntax }),
28949 SyntaxKind::RENAME_CONSTRAINT => {
28950 AlterTableAction::RenameConstraint(RenameConstraint { syntax })
28951 }
28952 SyntaxKind::RENAME_TO => AlterTableAction::RenameTo(RenameTo { syntax }),
28953 SyntaxKind::REPLICA_IDENTITY => {
28954 AlterTableAction::ReplicaIdentity(ReplicaIdentity { syntax })
28955 }
28956 SyntaxKind::RESET_OPTIONS => AlterTableAction::ResetOptions(ResetOptions { syntax }),
28957 SyntaxKind::SET_ACCESS_METHOD => {
28958 AlterTableAction::SetAccessMethod(SetAccessMethod { syntax })
28959 }
28960 SyntaxKind::SET_LOGGED => AlterTableAction::SetLogged(SetLogged { syntax }),
28961 SyntaxKind::SET_OPTIONS => AlterTableAction::SetOptions(SetOptions { syntax }),
28962 SyntaxKind::SET_SCHEMA => AlterTableAction::SetSchema(SetSchema { syntax }),
28963 SyntaxKind::SET_TABLESPACE => AlterTableAction::SetTablespace(SetTablespace { syntax }),
28964 SyntaxKind::SET_UNLOGGED => AlterTableAction::SetUnlogged(SetUnlogged { syntax }),
28965 SyntaxKind::SET_WITHOUT_CLUSTER => {
28966 AlterTableAction::SetWithoutCluster(SetWithoutCluster { syntax })
28967 }
28968 SyntaxKind::SET_WITHOUT_OIDS => {
28969 AlterTableAction::SetWithoutOids(SetWithoutOids { syntax })
28970 }
28971 SyntaxKind::SPLIT_PARTITION => {
28972 AlterTableAction::SplitPartition(SplitPartition { syntax })
28973 }
28974 SyntaxKind::VALIDATE_CONSTRAINT => {
28975 AlterTableAction::ValidateConstraint(ValidateConstraint { syntax })
28976 }
28977 _ => {
28978 return None;
28979 }
28980 };
28981 Some(res)
28982 }
28983 #[inline]
28984 fn syntax(&self) -> &SyntaxNode {
28985 match self {
28986 AlterTableAction::AddColumn(it) => &it.syntax,
28987 AlterTableAction::AddConstraint(it) => &it.syntax,
28988 AlterTableAction::AlterColumn(it) => &it.syntax,
28989 AlterTableAction::AlterConstraint(it) => &it.syntax,
28990 AlterTableAction::AttachPartition(it) => &it.syntax,
28991 AlterTableAction::ClusterOn(it) => &it.syntax,
28992 AlterTableAction::DetachPartition(it) => &it.syntax,
28993 AlterTableAction::DisableRls(it) => &it.syntax,
28994 AlterTableAction::DisableRule(it) => &it.syntax,
28995 AlterTableAction::DisableTrigger(it) => &it.syntax,
28996 AlterTableAction::DropColumn(it) => &it.syntax,
28997 AlterTableAction::DropConstraint(it) => &it.syntax,
28998 AlterTableAction::EnableAlwaysRule(it) => &it.syntax,
28999 AlterTableAction::EnableAlwaysTrigger(it) => &it.syntax,
29000 AlterTableAction::EnableReplicaRule(it) => &it.syntax,
29001 AlterTableAction::EnableReplicaTrigger(it) => &it.syntax,
29002 AlterTableAction::EnableRls(it) => &it.syntax,
29003 AlterTableAction::EnableRule(it) => &it.syntax,
29004 AlterTableAction::EnableTrigger(it) => &it.syntax,
29005 AlterTableAction::ForceRls(it) => &it.syntax,
29006 AlterTableAction::InheritTable(it) => &it.syntax,
29007 AlterTableAction::MergePartitions(it) => &it.syntax,
29008 AlterTableAction::NoForceRls(it) => &it.syntax,
29009 AlterTableAction::NoInheritTable(it) => &it.syntax,
29010 AlterTableAction::NotOf(it) => &it.syntax,
29011 AlterTableAction::OfType(it) => &it.syntax,
29012 AlterTableAction::OptionItemList(it) => &it.syntax,
29013 AlterTableAction::OwnerTo(it) => &it.syntax,
29014 AlterTableAction::RenameColumn(it) => &it.syntax,
29015 AlterTableAction::RenameConstraint(it) => &it.syntax,
29016 AlterTableAction::RenameTo(it) => &it.syntax,
29017 AlterTableAction::ReplicaIdentity(it) => &it.syntax,
29018 AlterTableAction::ResetOptions(it) => &it.syntax,
29019 AlterTableAction::SetAccessMethod(it) => &it.syntax,
29020 AlterTableAction::SetLogged(it) => &it.syntax,
29021 AlterTableAction::SetOptions(it) => &it.syntax,
29022 AlterTableAction::SetSchema(it) => &it.syntax,
29023 AlterTableAction::SetTablespace(it) => &it.syntax,
29024 AlterTableAction::SetUnlogged(it) => &it.syntax,
29025 AlterTableAction::SetWithoutCluster(it) => &it.syntax,
29026 AlterTableAction::SetWithoutOids(it) => &it.syntax,
29027 AlterTableAction::SplitPartition(it) => &it.syntax,
29028 AlterTableAction::ValidateConstraint(it) => &it.syntax,
29029 }
29030 }
29031}
29032impl From<AddColumn> for AlterTableAction {
29033 #[inline]
29034 fn from(node: AddColumn) -> AlterTableAction {
29035 AlterTableAction::AddColumn(node)
29036 }
29037}
29038impl From<AddConstraint> for AlterTableAction {
29039 #[inline]
29040 fn from(node: AddConstraint) -> AlterTableAction {
29041 AlterTableAction::AddConstraint(node)
29042 }
29043}
29044impl From<AlterColumn> for AlterTableAction {
29045 #[inline]
29046 fn from(node: AlterColumn) -> AlterTableAction {
29047 AlterTableAction::AlterColumn(node)
29048 }
29049}
29050impl From<AlterConstraint> for AlterTableAction {
29051 #[inline]
29052 fn from(node: AlterConstraint) -> AlterTableAction {
29053 AlterTableAction::AlterConstraint(node)
29054 }
29055}
29056impl From<AttachPartition> for AlterTableAction {
29057 #[inline]
29058 fn from(node: AttachPartition) -> AlterTableAction {
29059 AlterTableAction::AttachPartition(node)
29060 }
29061}
29062impl From<ClusterOn> for AlterTableAction {
29063 #[inline]
29064 fn from(node: ClusterOn) -> AlterTableAction {
29065 AlterTableAction::ClusterOn(node)
29066 }
29067}
29068impl From<DetachPartition> for AlterTableAction {
29069 #[inline]
29070 fn from(node: DetachPartition) -> AlterTableAction {
29071 AlterTableAction::DetachPartition(node)
29072 }
29073}
29074impl From<DisableRls> for AlterTableAction {
29075 #[inline]
29076 fn from(node: DisableRls) -> AlterTableAction {
29077 AlterTableAction::DisableRls(node)
29078 }
29079}
29080impl From<DisableRule> for AlterTableAction {
29081 #[inline]
29082 fn from(node: DisableRule) -> AlterTableAction {
29083 AlterTableAction::DisableRule(node)
29084 }
29085}
29086impl From<DisableTrigger> for AlterTableAction {
29087 #[inline]
29088 fn from(node: DisableTrigger) -> AlterTableAction {
29089 AlterTableAction::DisableTrigger(node)
29090 }
29091}
29092impl From<DropColumn> for AlterTableAction {
29093 #[inline]
29094 fn from(node: DropColumn) -> AlterTableAction {
29095 AlterTableAction::DropColumn(node)
29096 }
29097}
29098impl From<DropConstraint> for AlterTableAction {
29099 #[inline]
29100 fn from(node: DropConstraint) -> AlterTableAction {
29101 AlterTableAction::DropConstraint(node)
29102 }
29103}
29104impl From<EnableAlwaysRule> for AlterTableAction {
29105 #[inline]
29106 fn from(node: EnableAlwaysRule) -> AlterTableAction {
29107 AlterTableAction::EnableAlwaysRule(node)
29108 }
29109}
29110impl From<EnableAlwaysTrigger> for AlterTableAction {
29111 #[inline]
29112 fn from(node: EnableAlwaysTrigger) -> AlterTableAction {
29113 AlterTableAction::EnableAlwaysTrigger(node)
29114 }
29115}
29116impl From<EnableReplicaRule> for AlterTableAction {
29117 #[inline]
29118 fn from(node: EnableReplicaRule) -> AlterTableAction {
29119 AlterTableAction::EnableReplicaRule(node)
29120 }
29121}
29122impl From<EnableReplicaTrigger> for AlterTableAction {
29123 #[inline]
29124 fn from(node: EnableReplicaTrigger) -> AlterTableAction {
29125 AlterTableAction::EnableReplicaTrigger(node)
29126 }
29127}
29128impl From<EnableRls> for AlterTableAction {
29129 #[inline]
29130 fn from(node: EnableRls) -> AlterTableAction {
29131 AlterTableAction::EnableRls(node)
29132 }
29133}
29134impl From<EnableRule> for AlterTableAction {
29135 #[inline]
29136 fn from(node: EnableRule) -> AlterTableAction {
29137 AlterTableAction::EnableRule(node)
29138 }
29139}
29140impl From<EnableTrigger> for AlterTableAction {
29141 #[inline]
29142 fn from(node: EnableTrigger) -> AlterTableAction {
29143 AlterTableAction::EnableTrigger(node)
29144 }
29145}
29146impl From<ForceRls> for AlterTableAction {
29147 #[inline]
29148 fn from(node: ForceRls) -> AlterTableAction {
29149 AlterTableAction::ForceRls(node)
29150 }
29151}
29152impl From<InheritTable> for AlterTableAction {
29153 #[inline]
29154 fn from(node: InheritTable) -> AlterTableAction {
29155 AlterTableAction::InheritTable(node)
29156 }
29157}
29158impl From<MergePartitions> for AlterTableAction {
29159 #[inline]
29160 fn from(node: MergePartitions) -> AlterTableAction {
29161 AlterTableAction::MergePartitions(node)
29162 }
29163}
29164impl From<NoForceRls> for AlterTableAction {
29165 #[inline]
29166 fn from(node: NoForceRls) -> AlterTableAction {
29167 AlterTableAction::NoForceRls(node)
29168 }
29169}
29170impl From<NoInheritTable> for AlterTableAction {
29171 #[inline]
29172 fn from(node: NoInheritTable) -> AlterTableAction {
29173 AlterTableAction::NoInheritTable(node)
29174 }
29175}
29176impl From<NotOf> for AlterTableAction {
29177 #[inline]
29178 fn from(node: NotOf) -> AlterTableAction {
29179 AlterTableAction::NotOf(node)
29180 }
29181}
29182impl From<OfType> for AlterTableAction {
29183 #[inline]
29184 fn from(node: OfType) -> AlterTableAction {
29185 AlterTableAction::OfType(node)
29186 }
29187}
29188impl From<OptionItemList> for AlterTableAction {
29189 #[inline]
29190 fn from(node: OptionItemList) -> AlterTableAction {
29191 AlterTableAction::OptionItemList(node)
29192 }
29193}
29194impl From<OwnerTo> for AlterTableAction {
29195 #[inline]
29196 fn from(node: OwnerTo) -> AlterTableAction {
29197 AlterTableAction::OwnerTo(node)
29198 }
29199}
29200impl From<RenameColumn> for AlterTableAction {
29201 #[inline]
29202 fn from(node: RenameColumn) -> AlterTableAction {
29203 AlterTableAction::RenameColumn(node)
29204 }
29205}
29206impl From<RenameConstraint> for AlterTableAction {
29207 #[inline]
29208 fn from(node: RenameConstraint) -> AlterTableAction {
29209 AlterTableAction::RenameConstraint(node)
29210 }
29211}
29212impl From<RenameTo> for AlterTableAction {
29213 #[inline]
29214 fn from(node: RenameTo) -> AlterTableAction {
29215 AlterTableAction::RenameTo(node)
29216 }
29217}
29218impl From<ReplicaIdentity> for AlterTableAction {
29219 #[inline]
29220 fn from(node: ReplicaIdentity) -> AlterTableAction {
29221 AlterTableAction::ReplicaIdentity(node)
29222 }
29223}
29224impl From<ResetOptions> for AlterTableAction {
29225 #[inline]
29226 fn from(node: ResetOptions) -> AlterTableAction {
29227 AlterTableAction::ResetOptions(node)
29228 }
29229}
29230impl From<SetAccessMethod> for AlterTableAction {
29231 #[inline]
29232 fn from(node: SetAccessMethod) -> AlterTableAction {
29233 AlterTableAction::SetAccessMethod(node)
29234 }
29235}
29236impl From<SetLogged> for AlterTableAction {
29237 #[inline]
29238 fn from(node: SetLogged) -> AlterTableAction {
29239 AlterTableAction::SetLogged(node)
29240 }
29241}
29242impl From<SetOptions> for AlterTableAction {
29243 #[inline]
29244 fn from(node: SetOptions) -> AlterTableAction {
29245 AlterTableAction::SetOptions(node)
29246 }
29247}
29248impl From<SetSchema> for AlterTableAction {
29249 #[inline]
29250 fn from(node: SetSchema) -> AlterTableAction {
29251 AlterTableAction::SetSchema(node)
29252 }
29253}
29254impl From<SetTablespace> for AlterTableAction {
29255 #[inline]
29256 fn from(node: SetTablespace) -> AlterTableAction {
29257 AlterTableAction::SetTablespace(node)
29258 }
29259}
29260impl From<SetUnlogged> for AlterTableAction {
29261 #[inline]
29262 fn from(node: SetUnlogged) -> AlterTableAction {
29263 AlterTableAction::SetUnlogged(node)
29264 }
29265}
29266impl From<SetWithoutCluster> for AlterTableAction {
29267 #[inline]
29268 fn from(node: SetWithoutCluster) -> AlterTableAction {
29269 AlterTableAction::SetWithoutCluster(node)
29270 }
29271}
29272impl From<SetWithoutOids> for AlterTableAction {
29273 #[inline]
29274 fn from(node: SetWithoutOids) -> AlterTableAction {
29275 AlterTableAction::SetWithoutOids(node)
29276 }
29277}
29278impl From<SplitPartition> for AlterTableAction {
29279 #[inline]
29280 fn from(node: SplitPartition) -> AlterTableAction {
29281 AlterTableAction::SplitPartition(node)
29282 }
29283}
29284impl From<ValidateConstraint> for AlterTableAction {
29285 #[inline]
29286 fn from(node: ValidateConstraint) -> AlterTableAction {
29287 AlterTableAction::ValidateConstraint(node)
29288 }
29289}
29290impl AstNode for ColumnConstraint {
29291 #[inline]
29292 fn can_cast(kind: SyntaxKind) -> bool {
29293 matches!(
29294 kind,
29295 SyntaxKind::CHECK_CONSTRAINT
29296 | SyntaxKind::DEFAULT_CONSTRAINT
29297 | SyntaxKind::EXCLUDE_CONSTRAINT
29298 | SyntaxKind::NOT_NULL_CONSTRAINT
29299 | SyntaxKind::PRIMARY_KEY_CONSTRAINT
29300 | SyntaxKind::REFERENCES_CONSTRAINT
29301 | SyntaxKind::UNIQUE_CONSTRAINT
29302 )
29303 }
29304 #[inline]
29305 fn cast(syntax: SyntaxNode) -> Option<Self> {
29306 let res = match syntax.kind() {
29307 SyntaxKind::CHECK_CONSTRAINT => {
29308 ColumnConstraint::CheckConstraint(CheckConstraint { syntax })
29309 }
29310 SyntaxKind::DEFAULT_CONSTRAINT => {
29311 ColumnConstraint::DefaultConstraint(DefaultConstraint { syntax })
29312 }
29313 SyntaxKind::EXCLUDE_CONSTRAINT => {
29314 ColumnConstraint::ExcludeConstraint(ExcludeConstraint { syntax })
29315 }
29316 SyntaxKind::NOT_NULL_CONSTRAINT => {
29317 ColumnConstraint::NotNullConstraint(NotNullConstraint { syntax })
29318 }
29319 SyntaxKind::PRIMARY_KEY_CONSTRAINT => {
29320 ColumnConstraint::PrimaryKeyConstraint(PrimaryKeyConstraint { syntax })
29321 }
29322 SyntaxKind::REFERENCES_CONSTRAINT => {
29323 ColumnConstraint::ReferencesConstraint(ReferencesConstraint { syntax })
29324 }
29325 SyntaxKind::UNIQUE_CONSTRAINT => {
29326 ColumnConstraint::UniqueConstraint(UniqueConstraint { syntax })
29327 }
29328 _ => {
29329 return None;
29330 }
29331 };
29332 Some(res)
29333 }
29334 #[inline]
29335 fn syntax(&self) -> &SyntaxNode {
29336 match self {
29337 ColumnConstraint::CheckConstraint(it) => &it.syntax,
29338 ColumnConstraint::DefaultConstraint(it) => &it.syntax,
29339 ColumnConstraint::ExcludeConstraint(it) => &it.syntax,
29340 ColumnConstraint::NotNullConstraint(it) => &it.syntax,
29341 ColumnConstraint::PrimaryKeyConstraint(it) => &it.syntax,
29342 ColumnConstraint::ReferencesConstraint(it) => &it.syntax,
29343 ColumnConstraint::UniqueConstraint(it) => &it.syntax,
29344 }
29345 }
29346}
29347impl From<CheckConstraint> for ColumnConstraint {
29348 #[inline]
29349 fn from(node: CheckConstraint) -> ColumnConstraint {
29350 ColumnConstraint::CheckConstraint(node)
29351 }
29352}
29353impl From<DefaultConstraint> for ColumnConstraint {
29354 #[inline]
29355 fn from(node: DefaultConstraint) -> ColumnConstraint {
29356 ColumnConstraint::DefaultConstraint(node)
29357 }
29358}
29359impl From<ExcludeConstraint> for ColumnConstraint {
29360 #[inline]
29361 fn from(node: ExcludeConstraint) -> ColumnConstraint {
29362 ColumnConstraint::ExcludeConstraint(node)
29363 }
29364}
29365impl From<NotNullConstraint> for ColumnConstraint {
29366 #[inline]
29367 fn from(node: NotNullConstraint) -> ColumnConstraint {
29368 ColumnConstraint::NotNullConstraint(node)
29369 }
29370}
29371impl From<PrimaryKeyConstraint> for ColumnConstraint {
29372 #[inline]
29373 fn from(node: PrimaryKeyConstraint) -> ColumnConstraint {
29374 ColumnConstraint::PrimaryKeyConstraint(node)
29375 }
29376}
29377impl From<ReferencesConstraint> for ColumnConstraint {
29378 #[inline]
29379 fn from(node: ReferencesConstraint) -> ColumnConstraint {
29380 ColumnConstraint::ReferencesConstraint(node)
29381 }
29382}
29383impl From<UniqueConstraint> for ColumnConstraint {
29384 #[inline]
29385 fn from(node: UniqueConstraint) -> ColumnConstraint {
29386 ColumnConstraint::UniqueConstraint(node)
29387 }
29388}
29389impl AstNode for ConfigValue {
29390 #[inline]
29391 fn can_cast(kind: SyntaxKind) -> bool {
29392 matches!(kind, SyntaxKind::LITERAL | SyntaxKind::NAME_REF)
29393 }
29394 #[inline]
29395 fn cast(syntax: SyntaxNode) -> Option<Self> {
29396 let res = match syntax.kind() {
29397 SyntaxKind::LITERAL => ConfigValue::Literal(Literal { syntax }),
29398 SyntaxKind::NAME_REF => ConfigValue::NameRef(NameRef { syntax }),
29399 _ => {
29400 return None;
29401 }
29402 };
29403 Some(res)
29404 }
29405 #[inline]
29406 fn syntax(&self) -> &SyntaxNode {
29407 match self {
29408 ConfigValue::Literal(it) => &it.syntax,
29409 ConfigValue::NameRef(it) => &it.syntax,
29410 }
29411 }
29412}
29413impl From<Literal> for ConfigValue {
29414 #[inline]
29415 fn from(node: Literal) -> ConfigValue {
29416 ConfigValue::Literal(node)
29417 }
29418}
29419impl From<NameRef> for ConfigValue {
29420 #[inline]
29421 fn from(node: NameRef) -> ConfigValue {
29422 ConfigValue::NameRef(node)
29423 }
29424}
29425impl AstNode for ConflictAction {
29426 #[inline]
29427 fn can_cast(kind: SyntaxKind) -> bool {
29428 matches!(
29429 kind,
29430 SyntaxKind::CONFLICT_DO_NOTHING | SyntaxKind::CONFLICT_DO_UPDATE_SET
29431 )
29432 }
29433 #[inline]
29434 fn cast(syntax: SyntaxNode) -> Option<Self> {
29435 let res = match syntax.kind() {
29436 SyntaxKind::CONFLICT_DO_NOTHING => {
29437 ConflictAction::ConflictDoNothing(ConflictDoNothing { syntax })
29438 }
29439 SyntaxKind::CONFLICT_DO_UPDATE_SET => {
29440 ConflictAction::ConflictDoUpdateSet(ConflictDoUpdateSet { syntax })
29441 }
29442 _ => {
29443 return None;
29444 }
29445 };
29446 Some(res)
29447 }
29448 #[inline]
29449 fn syntax(&self) -> &SyntaxNode {
29450 match self {
29451 ConflictAction::ConflictDoNothing(it) => &it.syntax,
29452 ConflictAction::ConflictDoUpdateSet(it) => &it.syntax,
29453 }
29454 }
29455}
29456impl From<ConflictDoNothing> for ConflictAction {
29457 #[inline]
29458 fn from(node: ConflictDoNothing) -> ConflictAction {
29459 ConflictAction::ConflictDoNothing(node)
29460 }
29461}
29462impl From<ConflictDoUpdateSet> for ConflictAction {
29463 #[inline]
29464 fn from(node: ConflictDoUpdateSet) -> ConflictAction {
29465 ConflictAction::ConflictDoUpdateSet(node)
29466 }
29467}
29468impl AstNode for ConflictTarget {
29469 #[inline]
29470 fn can_cast(kind: SyntaxKind) -> bool {
29471 matches!(
29472 kind,
29473 SyntaxKind::CONFLICT_ON_CONSTRAINT | SyntaxKind::CONFLICT_ON_INDEX
29474 )
29475 }
29476 #[inline]
29477 fn cast(syntax: SyntaxNode) -> Option<Self> {
29478 let res = match syntax.kind() {
29479 SyntaxKind::CONFLICT_ON_CONSTRAINT => {
29480 ConflictTarget::ConflictOnConstraint(ConflictOnConstraint { syntax })
29481 }
29482 SyntaxKind::CONFLICT_ON_INDEX => {
29483 ConflictTarget::ConflictOnIndex(ConflictOnIndex { syntax })
29484 }
29485 _ => {
29486 return None;
29487 }
29488 };
29489 Some(res)
29490 }
29491 #[inline]
29492 fn syntax(&self) -> &SyntaxNode {
29493 match self {
29494 ConflictTarget::ConflictOnConstraint(it) => &it.syntax,
29495 ConflictTarget::ConflictOnIndex(it) => &it.syntax,
29496 }
29497 }
29498}
29499impl From<ConflictOnConstraint> for ConflictTarget {
29500 #[inline]
29501 fn from(node: ConflictOnConstraint) -> ConflictTarget {
29502 ConflictTarget::ConflictOnConstraint(node)
29503 }
29504}
29505impl From<ConflictOnIndex> for ConflictTarget {
29506 #[inline]
29507 fn from(node: ConflictOnIndex) -> ConflictTarget {
29508 ConflictTarget::ConflictOnIndex(node)
29509 }
29510}
29511impl AstNode for Constraint {
29512 #[inline]
29513 fn can_cast(kind: SyntaxKind) -> bool {
29514 matches!(
29515 kind,
29516 SyntaxKind::CHECK_CONSTRAINT
29517 | SyntaxKind::DEFAULT_CONSTRAINT
29518 | SyntaxKind::FOREIGN_KEY_CONSTRAINT
29519 | SyntaxKind::GENERATED_CONSTRAINT
29520 | SyntaxKind::NOT_NULL_CONSTRAINT
29521 | SyntaxKind::NULL_CONSTRAINT
29522 | SyntaxKind::PRIMARY_KEY_CONSTRAINT
29523 | SyntaxKind::REFERENCES_CONSTRAINT
29524 | SyntaxKind::UNIQUE_CONSTRAINT
29525 )
29526 }
29527 #[inline]
29528 fn cast(syntax: SyntaxNode) -> Option<Self> {
29529 let res = match syntax.kind() {
29530 SyntaxKind::CHECK_CONSTRAINT => Constraint::CheckConstraint(CheckConstraint { syntax }),
29531 SyntaxKind::DEFAULT_CONSTRAINT => {
29532 Constraint::DefaultConstraint(DefaultConstraint { syntax })
29533 }
29534 SyntaxKind::FOREIGN_KEY_CONSTRAINT => {
29535 Constraint::ForeignKeyConstraint(ForeignKeyConstraint { syntax })
29536 }
29537 SyntaxKind::GENERATED_CONSTRAINT => {
29538 Constraint::GeneratedConstraint(GeneratedConstraint { syntax })
29539 }
29540 SyntaxKind::NOT_NULL_CONSTRAINT => {
29541 Constraint::NotNullConstraint(NotNullConstraint { syntax })
29542 }
29543 SyntaxKind::NULL_CONSTRAINT => Constraint::NullConstraint(NullConstraint { syntax }),
29544 SyntaxKind::PRIMARY_KEY_CONSTRAINT => {
29545 Constraint::PrimaryKeyConstraint(PrimaryKeyConstraint { syntax })
29546 }
29547 SyntaxKind::REFERENCES_CONSTRAINT => {
29548 Constraint::ReferencesConstraint(ReferencesConstraint { syntax })
29549 }
29550 SyntaxKind::UNIQUE_CONSTRAINT => {
29551 Constraint::UniqueConstraint(UniqueConstraint { syntax })
29552 }
29553 _ => {
29554 return None;
29555 }
29556 };
29557 Some(res)
29558 }
29559 #[inline]
29560 fn syntax(&self) -> &SyntaxNode {
29561 match self {
29562 Constraint::CheckConstraint(it) => &it.syntax,
29563 Constraint::DefaultConstraint(it) => &it.syntax,
29564 Constraint::ForeignKeyConstraint(it) => &it.syntax,
29565 Constraint::GeneratedConstraint(it) => &it.syntax,
29566 Constraint::NotNullConstraint(it) => &it.syntax,
29567 Constraint::NullConstraint(it) => &it.syntax,
29568 Constraint::PrimaryKeyConstraint(it) => &it.syntax,
29569 Constraint::ReferencesConstraint(it) => &it.syntax,
29570 Constraint::UniqueConstraint(it) => &it.syntax,
29571 }
29572 }
29573}
29574impl From<CheckConstraint> for Constraint {
29575 #[inline]
29576 fn from(node: CheckConstraint) -> Constraint {
29577 Constraint::CheckConstraint(node)
29578 }
29579}
29580impl From<DefaultConstraint> for Constraint {
29581 #[inline]
29582 fn from(node: DefaultConstraint) -> Constraint {
29583 Constraint::DefaultConstraint(node)
29584 }
29585}
29586impl From<ForeignKeyConstraint> for Constraint {
29587 #[inline]
29588 fn from(node: ForeignKeyConstraint) -> Constraint {
29589 Constraint::ForeignKeyConstraint(node)
29590 }
29591}
29592impl From<GeneratedConstraint> for Constraint {
29593 #[inline]
29594 fn from(node: GeneratedConstraint) -> Constraint {
29595 Constraint::GeneratedConstraint(node)
29596 }
29597}
29598impl From<NotNullConstraint> for Constraint {
29599 #[inline]
29600 fn from(node: NotNullConstraint) -> Constraint {
29601 Constraint::NotNullConstraint(node)
29602 }
29603}
29604impl From<NullConstraint> for Constraint {
29605 #[inline]
29606 fn from(node: NullConstraint) -> Constraint {
29607 Constraint::NullConstraint(node)
29608 }
29609}
29610impl From<PrimaryKeyConstraint> for Constraint {
29611 #[inline]
29612 fn from(node: PrimaryKeyConstraint) -> Constraint {
29613 Constraint::PrimaryKeyConstraint(node)
29614 }
29615}
29616impl From<ReferencesConstraint> for Constraint {
29617 #[inline]
29618 fn from(node: ReferencesConstraint) -> Constraint {
29619 Constraint::ReferencesConstraint(node)
29620 }
29621}
29622impl From<UniqueConstraint> for Constraint {
29623 #[inline]
29624 fn from(node: UniqueConstraint) -> Constraint {
29625 Constraint::UniqueConstraint(node)
29626 }
29627}
29628impl AstNode for ExplainStmt {
29629 #[inline]
29630 fn can_cast(kind: SyntaxKind) -> bool {
29631 matches!(
29632 kind,
29633 SyntaxKind::COMPOUND_SELECT
29634 | SyntaxKind::CREATE_MATERIALIZED_VIEW
29635 | SyntaxKind::CREATE_TABLE_AS
29636 | SyntaxKind::DECLARE
29637 | SyntaxKind::DELETE
29638 | SyntaxKind::EXECUTE
29639 | SyntaxKind::INSERT
29640 | SyntaxKind::MERGE
29641 | SyntaxKind::PAREN_SELECT
29642 | SyntaxKind::SELECT
29643 | SyntaxKind::SELECT_INTO
29644 | SyntaxKind::TABLE
29645 | SyntaxKind::UPDATE
29646 | SyntaxKind::VALUES
29647 )
29648 }
29649 #[inline]
29650 fn cast(syntax: SyntaxNode) -> Option<Self> {
29651 let res = match syntax.kind() {
29652 SyntaxKind::COMPOUND_SELECT => ExplainStmt::CompoundSelect(CompoundSelect { syntax }),
29653 SyntaxKind::CREATE_MATERIALIZED_VIEW => {
29654 ExplainStmt::CreateMaterializedView(CreateMaterializedView { syntax })
29655 }
29656 SyntaxKind::CREATE_TABLE_AS => ExplainStmt::CreateTableAs(CreateTableAs { syntax }),
29657 SyntaxKind::DECLARE => ExplainStmt::Declare(Declare { syntax }),
29658 SyntaxKind::DELETE => ExplainStmt::Delete(Delete { syntax }),
29659 SyntaxKind::EXECUTE => ExplainStmt::Execute(Execute { syntax }),
29660 SyntaxKind::INSERT => ExplainStmt::Insert(Insert { syntax }),
29661 SyntaxKind::MERGE => ExplainStmt::Merge(Merge { syntax }),
29662 SyntaxKind::PAREN_SELECT => ExplainStmt::ParenSelect(ParenSelect { syntax }),
29663 SyntaxKind::SELECT => ExplainStmt::Select(Select { syntax }),
29664 SyntaxKind::SELECT_INTO => ExplainStmt::SelectInto(SelectInto { syntax }),
29665 SyntaxKind::TABLE => ExplainStmt::Table(Table { syntax }),
29666 SyntaxKind::UPDATE => ExplainStmt::Update(Update { syntax }),
29667 SyntaxKind::VALUES => ExplainStmt::Values(Values { syntax }),
29668 _ => {
29669 return None;
29670 }
29671 };
29672 Some(res)
29673 }
29674 #[inline]
29675 fn syntax(&self) -> &SyntaxNode {
29676 match self {
29677 ExplainStmt::CompoundSelect(it) => &it.syntax,
29678 ExplainStmt::CreateMaterializedView(it) => &it.syntax,
29679 ExplainStmt::CreateTableAs(it) => &it.syntax,
29680 ExplainStmt::Declare(it) => &it.syntax,
29681 ExplainStmt::Delete(it) => &it.syntax,
29682 ExplainStmt::Execute(it) => &it.syntax,
29683 ExplainStmt::Insert(it) => &it.syntax,
29684 ExplainStmt::Merge(it) => &it.syntax,
29685 ExplainStmt::ParenSelect(it) => &it.syntax,
29686 ExplainStmt::Select(it) => &it.syntax,
29687 ExplainStmt::SelectInto(it) => &it.syntax,
29688 ExplainStmt::Table(it) => &it.syntax,
29689 ExplainStmt::Update(it) => &it.syntax,
29690 ExplainStmt::Values(it) => &it.syntax,
29691 }
29692 }
29693}
29694impl From<CompoundSelect> for ExplainStmt {
29695 #[inline]
29696 fn from(node: CompoundSelect) -> ExplainStmt {
29697 ExplainStmt::CompoundSelect(node)
29698 }
29699}
29700impl From<CreateMaterializedView> for ExplainStmt {
29701 #[inline]
29702 fn from(node: CreateMaterializedView) -> ExplainStmt {
29703 ExplainStmt::CreateMaterializedView(node)
29704 }
29705}
29706impl From<CreateTableAs> for ExplainStmt {
29707 #[inline]
29708 fn from(node: CreateTableAs) -> ExplainStmt {
29709 ExplainStmt::CreateTableAs(node)
29710 }
29711}
29712impl From<Declare> for ExplainStmt {
29713 #[inline]
29714 fn from(node: Declare) -> ExplainStmt {
29715 ExplainStmt::Declare(node)
29716 }
29717}
29718impl From<Delete> for ExplainStmt {
29719 #[inline]
29720 fn from(node: Delete) -> ExplainStmt {
29721 ExplainStmt::Delete(node)
29722 }
29723}
29724impl From<Execute> for ExplainStmt {
29725 #[inline]
29726 fn from(node: Execute) -> ExplainStmt {
29727 ExplainStmt::Execute(node)
29728 }
29729}
29730impl From<Insert> for ExplainStmt {
29731 #[inline]
29732 fn from(node: Insert) -> ExplainStmt {
29733 ExplainStmt::Insert(node)
29734 }
29735}
29736impl From<Merge> for ExplainStmt {
29737 #[inline]
29738 fn from(node: Merge) -> ExplainStmt {
29739 ExplainStmt::Merge(node)
29740 }
29741}
29742impl From<ParenSelect> for ExplainStmt {
29743 #[inline]
29744 fn from(node: ParenSelect) -> ExplainStmt {
29745 ExplainStmt::ParenSelect(node)
29746 }
29747}
29748impl From<Select> for ExplainStmt {
29749 #[inline]
29750 fn from(node: Select) -> ExplainStmt {
29751 ExplainStmt::Select(node)
29752 }
29753}
29754impl From<SelectInto> for ExplainStmt {
29755 #[inline]
29756 fn from(node: SelectInto) -> ExplainStmt {
29757 ExplainStmt::SelectInto(node)
29758 }
29759}
29760impl From<Table> for ExplainStmt {
29761 #[inline]
29762 fn from(node: Table) -> ExplainStmt {
29763 ExplainStmt::Table(node)
29764 }
29765}
29766impl From<Update> for ExplainStmt {
29767 #[inline]
29768 fn from(node: Update) -> ExplainStmt {
29769 ExplainStmt::Update(node)
29770 }
29771}
29772impl From<Values> for ExplainStmt {
29773 #[inline]
29774 fn from(node: Values) -> ExplainStmt {
29775 ExplainStmt::Values(node)
29776 }
29777}
29778impl AstNode for Expr {
29779 #[inline]
29780 fn can_cast(kind: SyntaxKind) -> bool {
29781 matches!(
29782 kind,
29783 SyntaxKind::ARRAY_EXPR
29784 | SyntaxKind::BETWEEN_EXPR
29785 | SyntaxKind::BIN_EXPR
29786 | SyntaxKind::CALL_EXPR
29787 | SyntaxKind::CASE_EXPR
29788 | SyntaxKind::CAST_EXPR
29789 | SyntaxKind::FIELD_EXPR
29790 | SyntaxKind::INDEX_EXPR
29791 | SyntaxKind::LITERAL
29792 | SyntaxKind::NAME_REF
29793 | SyntaxKind::PAREN_EXPR
29794 | SyntaxKind::POSTFIX_EXPR
29795 | SyntaxKind::PREFIX_EXPR
29796 | SyntaxKind::SLICE_EXPR
29797 | SyntaxKind::TUPLE_EXPR
29798 )
29799 }
29800 #[inline]
29801 fn cast(syntax: SyntaxNode) -> Option<Self> {
29802 let res = match syntax.kind() {
29803 SyntaxKind::ARRAY_EXPR => Expr::ArrayExpr(ArrayExpr { syntax }),
29804 SyntaxKind::BETWEEN_EXPR => Expr::BetweenExpr(BetweenExpr { syntax }),
29805 SyntaxKind::BIN_EXPR => Expr::BinExpr(BinExpr { syntax }),
29806 SyntaxKind::CALL_EXPR => Expr::CallExpr(CallExpr { syntax }),
29807 SyntaxKind::CASE_EXPR => Expr::CaseExpr(CaseExpr { syntax }),
29808 SyntaxKind::CAST_EXPR => Expr::CastExpr(CastExpr { syntax }),
29809 SyntaxKind::FIELD_EXPR => Expr::FieldExpr(FieldExpr { syntax }),
29810 SyntaxKind::INDEX_EXPR => Expr::IndexExpr(IndexExpr { syntax }),
29811 SyntaxKind::LITERAL => Expr::Literal(Literal { syntax }),
29812 SyntaxKind::NAME_REF => Expr::NameRef(NameRef { syntax }),
29813 SyntaxKind::PAREN_EXPR => Expr::ParenExpr(ParenExpr { syntax }),
29814 SyntaxKind::POSTFIX_EXPR => Expr::PostfixExpr(PostfixExpr { syntax }),
29815 SyntaxKind::PREFIX_EXPR => Expr::PrefixExpr(PrefixExpr { syntax }),
29816 SyntaxKind::SLICE_EXPR => Expr::SliceExpr(SliceExpr { syntax }),
29817 SyntaxKind::TUPLE_EXPR => Expr::TupleExpr(TupleExpr { syntax }),
29818 _ => {
29819 return None;
29820 }
29821 };
29822 Some(res)
29823 }
29824 #[inline]
29825 fn syntax(&self) -> &SyntaxNode {
29826 match self {
29827 Expr::ArrayExpr(it) => &it.syntax,
29828 Expr::BetweenExpr(it) => &it.syntax,
29829 Expr::BinExpr(it) => &it.syntax,
29830 Expr::CallExpr(it) => &it.syntax,
29831 Expr::CaseExpr(it) => &it.syntax,
29832 Expr::CastExpr(it) => &it.syntax,
29833 Expr::FieldExpr(it) => &it.syntax,
29834 Expr::IndexExpr(it) => &it.syntax,
29835 Expr::Literal(it) => &it.syntax,
29836 Expr::NameRef(it) => &it.syntax,
29837 Expr::ParenExpr(it) => &it.syntax,
29838 Expr::PostfixExpr(it) => &it.syntax,
29839 Expr::PrefixExpr(it) => &it.syntax,
29840 Expr::SliceExpr(it) => &it.syntax,
29841 Expr::TupleExpr(it) => &it.syntax,
29842 }
29843 }
29844}
29845impl From<ArrayExpr> for Expr {
29846 #[inline]
29847 fn from(node: ArrayExpr) -> Expr {
29848 Expr::ArrayExpr(node)
29849 }
29850}
29851impl From<BetweenExpr> for Expr {
29852 #[inline]
29853 fn from(node: BetweenExpr) -> Expr {
29854 Expr::BetweenExpr(node)
29855 }
29856}
29857impl From<BinExpr> for Expr {
29858 #[inline]
29859 fn from(node: BinExpr) -> Expr {
29860 Expr::BinExpr(node)
29861 }
29862}
29863impl From<CallExpr> for Expr {
29864 #[inline]
29865 fn from(node: CallExpr) -> Expr {
29866 Expr::CallExpr(node)
29867 }
29868}
29869impl From<CaseExpr> for Expr {
29870 #[inline]
29871 fn from(node: CaseExpr) -> Expr {
29872 Expr::CaseExpr(node)
29873 }
29874}
29875impl From<CastExpr> for Expr {
29876 #[inline]
29877 fn from(node: CastExpr) -> Expr {
29878 Expr::CastExpr(node)
29879 }
29880}
29881impl From<FieldExpr> for Expr {
29882 #[inline]
29883 fn from(node: FieldExpr) -> Expr {
29884 Expr::FieldExpr(node)
29885 }
29886}
29887impl From<IndexExpr> for Expr {
29888 #[inline]
29889 fn from(node: IndexExpr) -> Expr {
29890 Expr::IndexExpr(node)
29891 }
29892}
29893impl From<Literal> for Expr {
29894 #[inline]
29895 fn from(node: Literal) -> Expr {
29896 Expr::Literal(node)
29897 }
29898}
29899impl From<NameRef> for Expr {
29900 #[inline]
29901 fn from(node: NameRef) -> Expr {
29902 Expr::NameRef(node)
29903 }
29904}
29905impl From<ParenExpr> for Expr {
29906 #[inline]
29907 fn from(node: ParenExpr) -> Expr {
29908 Expr::ParenExpr(node)
29909 }
29910}
29911impl From<PostfixExpr> for Expr {
29912 #[inline]
29913 fn from(node: PostfixExpr) -> Expr {
29914 Expr::PostfixExpr(node)
29915 }
29916}
29917impl From<PrefixExpr> for Expr {
29918 #[inline]
29919 fn from(node: PrefixExpr) -> Expr {
29920 Expr::PrefixExpr(node)
29921 }
29922}
29923impl From<SliceExpr> for Expr {
29924 #[inline]
29925 fn from(node: SliceExpr) -> Expr {
29926 Expr::SliceExpr(node)
29927 }
29928}
29929impl From<TupleExpr> for Expr {
29930 #[inline]
29931 fn from(node: TupleExpr) -> Expr {
29932 Expr::TupleExpr(node)
29933 }
29934}
29935impl AstNode for FuncOption {
29936 #[inline]
29937 fn can_cast(kind: SyntaxKind) -> bool {
29938 matches!(
29939 kind,
29940 SyntaxKind::AS_FUNC_OPTION
29941 | SyntaxKind::BEGIN_FUNC_OPTION_LIST
29942 | SyntaxKind::COST_FUNC_OPTION
29943 | SyntaxKind::LANGUAGE_FUNC_OPTION
29944 | SyntaxKind::LEAKPROOF_FUNC_OPTION
29945 | SyntaxKind::PARALLEL_FUNC_OPTION
29946 | SyntaxKind::RESET_FUNC_OPTION
29947 | SyntaxKind::RETURN_FUNC_OPTION
29948 | SyntaxKind::ROWS_FUNC_OPTION
29949 | SyntaxKind::SECURITY_FUNC_OPTION
29950 | SyntaxKind::SET_FUNC_OPTION
29951 | SyntaxKind::STRICT_FUNC_OPTION
29952 | SyntaxKind::SUPPORT_FUNC_OPTION
29953 | SyntaxKind::TRANSFORM_FUNC_OPTION
29954 | SyntaxKind::VOLATILITY_FUNC_OPTION
29955 | SyntaxKind::WINDOW_FUNC_OPTION
29956 )
29957 }
29958 #[inline]
29959 fn cast(syntax: SyntaxNode) -> Option<Self> {
29960 let res = match syntax.kind() {
29961 SyntaxKind::AS_FUNC_OPTION => FuncOption::AsFuncOption(AsFuncOption { syntax }),
29962 SyntaxKind::BEGIN_FUNC_OPTION_LIST => {
29963 FuncOption::BeginFuncOptionList(BeginFuncOptionList { syntax })
29964 }
29965 SyntaxKind::COST_FUNC_OPTION => FuncOption::CostFuncOption(CostFuncOption { syntax }),
29966 SyntaxKind::LANGUAGE_FUNC_OPTION => {
29967 FuncOption::LanguageFuncOption(LanguageFuncOption { syntax })
29968 }
29969 SyntaxKind::LEAKPROOF_FUNC_OPTION => {
29970 FuncOption::LeakproofFuncOption(LeakproofFuncOption { syntax })
29971 }
29972 SyntaxKind::PARALLEL_FUNC_OPTION => {
29973 FuncOption::ParallelFuncOption(ParallelFuncOption { syntax })
29974 }
29975 SyntaxKind::RESET_FUNC_OPTION => {
29976 FuncOption::ResetFuncOption(ResetFuncOption { syntax })
29977 }
29978 SyntaxKind::RETURN_FUNC_OPTION => {
29979 FuncOption::ReturnFuncOption(ReturnFuncOption { syntax })
29980 }
29981 SyntaxKind::ROWS_FUNC_OPTION => FuncOption::RowsFuncOption(RowsFuncOption { syntax }),
29982 SyntaxKind::SECURITY_FUNC_OPTION => {
29983 FuncOption::SecurityFuncOption(SecurityFuncOption { syntax })
29984 }
29985 SyntaxKind::SET_FUNC_OPTION => FuncOption::SetFuncOption(SetFuncOption { syntax }),
29986 SyntaxKind::STRICT_FUNC_OPTION => {
29987 FuncOption::StrictFuncOption(StrictFuncOption { syntax })
29988 }
29989 SyntaxKind::SUPPORT_FUNC_OPTION => {
29990 FuncOption::SupportFuncOption(SupportFuncOption { syntax })
29991 }
29992 SyntaxKind::TRANSFORM_FUNC_OPTION => {
29993 FuncOption::TransformFuncOption(TransformFuncOption { syntax })
29994 }
29995 SyntaxKind::VOLATILITY_FUNC_OPTION => {
29996 FuncOption::VolatilityFuncOption(VolatilityFuncOption { syntax })
29997 }
29998 SyntaxKind::WINDOW_FUNC_OPTION => {
29999 FuncOption::WindowFuncOption(WindowFuncOption { syntax })
30000 }
30001 _ => {
30002 return None;
30003 }
30004 };
30005 Some(res)
30006 }
30007 #[inline]
30008 fn syntax(&self) -> &SyntaxNode {
30009 match self {
30010 FuncOption::AsFuncOption(it) => &it.syntax,
30011 FuncOption::BeginFuncOptionList(it) => &it.syntax,
30012 FuncOption::CostFuncOption(it) => &it.syntax,
30013 FuncOption::LanguageFuncOption(it) => &it.syntax,
30014 FuncOption::LeakproofFuncOption(it) => &it.syntax,
30015 FuncOption::ParallelFuncOption(it) => &it.syntax,
30016 FuncOption::ResetFuncOption(it) => &it.syntax,
30017 FuncOption::ReturnFuncOption(it) => &it.syntax,
30018 FuncOption::RowsFuncOption(it) => &it.syntax,
30019 FuncOption::SecurityFuncOption(it) => &it.syntax,
30020 FuncOption::SetFuncOption(it) => &it.syntax,
30021 FuncOption::StrictFuncOption(it) => &it.syntax,
30022 FuncOption::SupportFuncOption(it) => &it.syntax,
30023 FuncOption::TransformFuncOption(it) => &it.syntax,
30024 FuncOption::VolatilityFuncOption(it) => &it.syntax,
30025 FuncOption::WindowFuncOption(it) => &it.syntax,
30026 }
30027 }
30028}
30029impl From<AsFuncOption> for FuncOption {
30030 #[inline]
30031 fn from(node: AsFuncOption) -> FuncOption {
30032 FuncOption::AsFuncOption(node)
30033 }
30034}
30035impl From<BeginFuncOptionList> for FuncOption {
30036 #[inline]
30037 fn from(node: BeginFuncOptionList) -> FuncOption {
30038 FuncOption::BeginFuncOptionList(node)
30039 }
30040}
30041impl From<CostFuncOption> for FuncOption {
30042 #[inline]
30043 fn from(node: CostFuncOption) -> FuncOption {
30044 FuncOption::CostFuncOption(node)
30045 }
30046}
30047impl From<LanguageFuncOption> for FuncOption {
30048 #[inline]
30049 fn from(node: LanguageFuncOption) -> FuncOption {
30050 FuncOption::LanguageFuncOption(node)
30051 }
30052}
30053impl From<LeakproofFuncOption> for FuncOption {
30054 #[inline]
30055 fn from(node: LeakproofFuncOption) -> FuncOption {
30056 FuncOption::LeakproofFuncOption(node)
30057 }
30058}
30059impl From<ParallelFuncOption> for FuncOption {
30060 #[inline]
30061 fn from(node: ParallelFuncOption) -> FuncOption {
30062 FuncOption::ParallelFuncOption(node)
30063 }
30064}
30065impl From<ResetFuncOption> for FuncOption {
30066 #[inline]
30067 fn from(node: ResetFuncOption) -> FuncOption {
30068 FuncOption::ResetFuncOption(node)
30069 }
30070}
30071impl From<ReturnFuncOption> for FuncOption {
30072 #[inline]
30073 fn from(node: ReturnFuncOption) -> FuncOption {
30074 FuncOption::ReturnFuncOption(node)
30075 }
30076}
30077impl From<RowsFuncOption> for FuncOption {
30078 #[inline]
30079 fn from(node: RowsFuncOption) -> FuncOption {
30080 FuncOption::RowsFuncOption(node)
30081 }
30082}
30083impl From<SecurityFuncOption> for FuncOption {
30084 #[inline]
30085 fn from(node: SecurityFuncOption) -> FuncOption {
30086 FuncOption::SecurityFuncOption(node)
30087 }
30088}
30089impl From<SetFuncOption> for FuncOption {
30090 #[inline]
30091 fn from(node: SetFuncOption) -> FuncOption {
30092 FuncOption::SetFuncOption(node)
30093 }
30094}
30095impl From<StrictFuncOption> for FuncOption {
30096 #[inline]
30097 fn from(node: StrictFuncOption) -> FuncOption {
30098 FuncOption::StrictFuncOption(node)
30099 }
30100}
30101impl From<SupportFuncOption> for FuncOption {
30102 #[inline]
30103 fn from(node: SupportFuncOption) -> FuncOption {
30104 FuncOption::SupportFuncOption(node)
30105 }
30106}
30107impl From<TransformFuncOption> for FuncOption {
30108 #[inline]
30109 fn from(node: TransformFuncOption) -> FuncOption {
30110 FuncOption::TransformFuncOption(node)
30111 }
30112}
30113impl From<VolatilityFuncOption> for FuncOption {
30114 #[inline]
30115 fn from(node: VolatilityFuncOption) -> FuncOption {
30116 FuncOption::VolatilityFuncOption(node)
30117 }
30118}
30119impl From<WindowFuncOption> for FuncOption {
30120 #[inline]
30121 fn from(node: WindowFuncOption) -> FuncOption {
30122 FuncOption::WindowFuncOption(node)
30123 }
30124}
30125impl AstNode for GroupBy {
30126 #[inline]
30127 fn can_cast(kind: SyntaxKind) -> bool {
30128 matches!(
30129 kind,
30130 SyntaxKind::GROUPING_CUBE
30131 | SyntaxKind::GROUPING_EXPR
30132 | SyntaxKind::GROUPING_ROLLUP
30133 | SyntaxKind::GROUPING_SETS
30134 )
30135 }
30136 #[inline]
30137 fn cast(syntax: SyntaxNode) -> Option<Self> {
30138 let res = match syntax.kind() {
30139 SyntaxKind::GROUPING_CUBE => GroupBy::GroupingCube(GroupingCube { syntax }),
30140 SyntaxKind::GROUPING_EXPR => GroupBy::GroupingExpr(GroupingExpr { syntax }),
30141 SyntaxKind::GROUPING_ROLLUP => GroupBy::GroupingRollup(GroupingRollup { syntax }),
30142 SyntaxKind::GROUPING_SETS => GroupBy::GroupingSets(GroupingSets { syntax }),
30143 _ => {
30144 return None;
30145 }
30146 };
30147 Some(res)
30148 }
30149 #[inline]
30150 fn syntax(&self) -> &SyntaxNode {
30151 match self {
30152 GroupBy::GroupingCube(it) => &it.syntax,
30153 GroupBy::GroupingExpr(it) => &it.syntax,
30154 GroupBy::GroupingRollup(it) => &it.syntax,
30155 GroupBy::GroupingSets(it) => &it.syntax,
30156 }
30157 }
30158}
30159impl From<GroupingCube> for GroupBy {
30160 #[inline]
30161 fn from(node: GroupingCube) -> GroupBy {
30162 GroupBy::GroupingCube(node)
30163 }
30164}
30165impl From<GroupingExpr> for GroupBy {
30166 #[inline]
30167 fn from(node: GroupingExpr) -> GroupBy {
30168 GroupBy::GroupingExpr(node)
30169 }
30170}
30171impl From<GroupingRollup> for GroupBy {
30172 #[inline]
30173 fn from(node: GroupingRollup) -> GroupBy {
30174 GroupBy::GroupingRollup(node)
30175 }
30176}
30177impl From<GroupingSets> for GroupBy {
30178 #[inline]
30179 fn from(node: GroupingSets) -> GroupBy {
30180 GroupBy::GroupingSets(node)
30181 }
30182}
30183impl AstNode for JoinType {
30184 #[inline]
30185 fn can_cast(kind: SyntaxKind) -> bool {
30186 matches!(
30187 kind,
30188 SyntaxKind::JOIN_CROSS
30189 | SyntaxKind::JOIN_FULL
30190 | SyntaxKind::JOIN_INNER
30191 | SyntaxKind::JOIN_LEFT
30192 | SyntaxKind::JOIN_RIGHT
30193 )
30194 }
30195 #[inline]
30196 fn cast(syntax: SyntaxNode) -> Option<Self> {
30197 let res = match syntax.kind() {
30198 SyntaxKind::JOIN_CROSS => JoinType::JoinCross(JoinCross { syntax }),
30199 SyntaxKind::JOIN_FULL => JoinType::JoinFull(JoinFull { syntax }),
30200 SyntaxKind::JOIN_INNER => JoinType::JoinInner(JoinInner { syntax }),
30201 SyntaxKind::JOIN_LEFT => JoinType::JoinLeft(JoinLeft { syntax }),
30202 SyntaxKind::JOIN_RIGHT => JoinType::JoinRight(JoinRight { syntax }),
30203 _ => {
30204 return None;
30205 }
30206 };
30207 Some(res)
30208 }
30209 #[inline]
30210 fn syntax(&self) -> &SyntaxNode {
30211 match self {
30212 JoinType::JoinCross(it) => &it.syntax,
30213 JoinType::JoinFull(it) => &it.syntax,
30214 JoinType::JoinInner(it) => &it.syntax,
30215 JoinType::JoinLeft(it) => &it.syntax,
30216 JoinType::JoinRight(it) => &it.syntax,
30217 }
30218 }
30219}
30220impl From<JoinCross> for JoinType {
30221 #[inline]
30222 fn from(node: JoinCross) -> JoinType {
30223 JoinType::JoinCross(node)
30224 }
30225}
30226impl From<JoinFull> for JoinType {
30227 #[inline]
30228 fn from(node: JoinFull) -> JoinType {
30229 JoinType::JoinFull(node)
30230 }
30231}
30232impl From<JoinInner> for JoinType {
30233 #[inline]
30234 fn from(node: JoinInner) -> JoinType {
30235 JoinType::JoinInner(node)
30236 }
30237}
30238impl From<JoinLeft> for JoinType {
30239 #[inline]
30240 fn from(node: JoinLeft) -> JoinType {
30241 JoinType::JoinLeft(node)
30242 }
30243}
30244impl From<JoinRight> for JoinType {
30245 #[inline]
30246 fn from(node: JoinRight) -> JoinType {
30247 JoinType::JoinRight(node)
30248 }
30249}
30250impl AstNode for JsonBehavior {
30251 #[inline]
30252 fn can_cast(kind: SyntaxKind) -> bool {
30253 matches!(
30254 kind,
30255 SyntaxKind::JSON_BEHAVIOR_DEFAULT
30256 | SyntaxKind::JSON_BEHAVIOR_EMPTY_ARRAY
30257 | SyntaxKind::JSON_BEHAVIOR_EMPTY_OBJECT
30258 | SyntaxKind::JSON_BEHAVIOR_ERROR
30259 | SyntaxKind::JSON_BEHAVIOR_FALSE
30260 | SyntaxKind::JSON_BEHAVIOR_NULL
30261 | SyntaxKind::JSON_BEHAVIOR_TRUE
30262 | SyntaxKind::JSON_BEHAVIOR_UNKNOWN
30263 )
30264 }
30265 #[inline]
30266 fn cast(syntax: SyntaxNode) -> Option<Self> {
30267 let res = match syntax.kind() {
30268 SyntaxKind::JSON_BEHAVIOR_DEFAULT => {
30269 JsonBehavior::JsonBehaviorDefault(JsonBehaviorDefault { syntax })
30270 }
30271 SyntaxKind::JSON_BEHAVIOR_EMPTY_ARRAY => {
30272 JsonBehavior::JsonBehaviorEmptyArray(JsonBehaviorEmptyArray { syntax })
30273 }
30274 SyntaxKind::JSON_BEHAVIOR_EMPTY_OBJECT => {
30275 JsonBehavior::JsonBehaviorEmptyObject(JsonBehaviorEmptyObject { syntax })
30276 }
30277 SyntaxKind::JSON_BEHAVIOR_ERROR => {
30278 JsonBehavior::JsonBehaviorError(JsonBehaviorError { syntax })
30279 }
30280 SyntaxKind::JSON_BEHAVIOR_FALSE => {
30281 JsonBehavior::JsonBehaviorFalse(JsonBehaviorFalse { syntax })
30282 }
30283 SyntaxKind::JSON_BEHAVIOR_NULL => {
30284 JsonBehavior::JsonBehaviorNull(JsonBehaviorNull { syntax })
30285 }
30286 SyntaxKind::JSON_BEHAVIOR_TRUE => {
30287 JsonBehavior::JsonBehaviorTrue(JsonBehaviorTrue { syntax })
30288 }
30289 SyntaxKind::JSON_BEHAVIOR_UNKNOWN => {
30290 JsonBehavior::JsonBehaviorUnknown(JsonBehaviorUnknown { syntax })
30291 }
30292 _ => {
30293 return None;
30294 }
30295 };
30296 Some(res)
30297 }
30298 #[inline]
30299 fn syntax(&self) -> &SyntaxNode {
30300 match self {
30301 JsonBehavior::JsonBehaviorDefault(it) => &it.syntax,
30302 JsonBehavior::JsonBehaviorEmptyArray(it) => &it.syntax,
30303 JsonBehavior::JsonBehaviorEmptyObject(it) => &it.syntax,
30304 JsonBehavior::JsonBehaviorError(it) => &it.syntax,
30305 JsonBehavior::JsonBehaviorFalse(it) => &it.syntax,
30306 JsonBehavior::JsonBehaviorNull(it) => &it.syntax,
30307 JsonBehavior::JsonBehaviorTrue(it) => &it.syntax,
30308 JsonBehavior::JsonBehaviorUnknown(it) => &it.syntax,
30309 }
30310 }
30311}
30312impl From<JsonBehaviorDefault> for JsonBehavior {
30313 #[inline]
30314 fn from(node: JsonBehaviorDefault) -> JsonBehavior {
30315 JsonBehavior::JsonBehaviorDefault(node)
30316 }
30317}
30318impl From<JsonBehaviorEmptyArray> for JsonBehavior {
30319 #[inline]
30320 fn from(node: JsonBehaviorEmptyArray) -> JsonBehavior {
30321 JsonBehavior::JsonBehaviorEmptyArray(node)
30322 }
30323}
30324impl From<JsonBehaviorEmptyObject> for JsonBehavior {
30325 #[inline]
30326 fn from(node: JsonBehaviorEmptyObject) -> JsonBehavior {
30327 JsonBehavior::JsonBehaviorEmptyObject(node)
30328 }
30329}
30330impl From<JsonBehaviorError> for JsonBehavior {
30331 #[inline]
30332 fn from(node: JsonBehaviorError) -> JsonBehavior {
30333 JsonBehavior::JsonBehaviorError(node)
30334 }
30335}
30336impl From<JsonBehaviorFalse> for JsonBehavior {
30337 #[inline]
30338 fn from(node: JsonBehaviorFalse) -> JsonBehavior {
30339 JsonBehavior::JsonBehaviorFalse(node)
30340 }
30341}
30342impl From<JsonBehaviorNull> for JsonBehavior {
30343 #[inline]
30344 fn from(node: JsonBehaviorNull) -> JsonBehavior {
30345 JsonBehavior::JsonBehaviorNull(node)
30346 }
30347}
30348impl From<JsonBehaviorTrue> for JsonBehavior {
30349 #[inline]
30350 fn from(node: JsonBehaviorTrue) -> JsonBehavior {
30351 JsonBehavior::JsonBehaviorTrue(node)
30352 }
30353}
30354impl From<JsonBehaviorUnknown> for JsonBehavior {
30355 #[inline]
30356 fn from(node: JsonBehaviorUnknown) -> JsonBehavior {
30357 JsonBehavior::JsonBehaviorUnknown(node)
30358 }
30359}
30360impl AstNode for MatchType {
30361 #[inline]
30362 fn can_cast(kind: SyntaxKind) -> bool {
30363 matches!(
30364 kind,
30365 SyntaxKind::MATCH_FULL | SyntaxKind::MATCH_PARTIAL | SyntaxKind::MATCH_SIMPLE
30366 )
30367 }
30368 #[inline]
30369 fn cast(syntax: SyntaxNode) -> Option<Self> {
30370 let res = match syntax.kind() {
30371 SyntaxKind::MATCH_FULL => MatchType::MatchFull(MatchFull { syntax }),
30372 SyntaxKind::MATCH_PARTIAL => MatchType::MatchPartial(MatchPartial { syntax }),
30373 SyntaxKind::MATCH_SIMPLE => MatchType::MatchSimple(MatchSimple { syntax }),
30374 _ => {
30375 return None;
30376 }
30377 };
30378 Some(res)
30379 }
30380 #[inline]
30381 fn syntax(&self) -> &SyntaxNode {
30382 match self {
30383 MatchType::MatchFull(it) => &it.syntax,
30384 MatchType::MatchPartial(it) => &it.syntax,
30385 MatchType::MatchSimple(it) => &it.syntax,
30386 }
30387 }
30388}
30389impl From<MatchFull> for MatchType {
30390 #[inline]
30391 fn from(node: MatchFull) -> MatchType {
30392 MatchType::MatchFull(node)
30393 }
30394}
30395impl From<MatchPartial> for MatchType {
30396 #[inline]
30397 fn from(node: MatchPartial) -> MatchType {
30398 MatchType::MatchPartial(node)
30399 }
30400}
30401impl From<MatchSimple> for MatchType {
30402 #[inline]
30403 fn from(node: MatchSimple) -> MatchType {
30404 MatchType::MatchSimple(node)
30405 }
30406}
30407impl AstNode for MergeAction {
30408 #[inline]
30409 fn can_cast(kind: SyntaxKind) -> bool {
30410 matches!(
30411 kind,
30412 SyntaxKind::MERGE_DELETE
30413 | SyntaxKind::MERGE_DO_NOTHING
30414 | SyntaxKind::MERGE_INSERT
30415 | SyntaxKind::MERGE_UPDATE
30416 )
30417 }
30418 #[inline]
30419 fn cast(syntax: SyntaxNode) -> Option<Self> {
30420 let res = match syntax.kind() {
30421 SyntaxKind::MERGE_DELETE => MergeAction::MergeDelete(MergeDelete { syntax }),
30422 SyntaxKind::MERGE_DO_NOTHING => MergeAction::MergeDoNothing(MergeDoNothing { syntax }),
30423 SyntaxKind::MERGE_INSERT => MergeAction::MergeInsert(MergeInsert { syntax }),
30424 SyntaxKind::MERGE_UPDATE => MergeAction::MergeUpdate(MergeUpdate { syntax }),
30425 _ => {
30426 return None;
30427 }
30428 };
30429 Some(res)
30430 }
30431 #[inline]
30432 fn syntax(&self) -> &SyntaxNode {
30433 match self {
30434 MergeAction::MergeDelete(it) => &it.syntax,
30435 MergeAction::MergeDoNothing(it) => &it.syntax,
30436 MergeAction::MergeInsert(it) => &it.syntax,
30437 MergeAction::MergeUpdate(it) => &it.syntax,
30438 }
30439 }
30440}
30441impl From<MergeDelete> for MergeAction {
30442 #[inline]
30443 fn from(node: MergeDelete) -> MergeAction {
30444 MergeAction::MergeDelete(node)
30445 }
30446}
30447impl From<MergeDoNothing> for MergeAction {
30448 #[inline]
30449 fn from(node: MergeDoNothing) -> MergeAction {
30450 MergeAction::MergeDoNothing(node)
30451 }
30452}
30453impl From<MergeInsert> for MergeAction {
30454 #[inline]
30455 fn from(node: MergeInsert) -> MergeAction {
30456 MergeAction::MergeInsert(node)
30457 }
30458}
30459impl From<MergeUpdate> for MergeAction {
30460 #[inline]
30461 fn from(node: MergeUpdate) -> MergeAction {
30462 MergeAction::MergeUpdate(node)
30463 }
30464}
30465impl AstNode for MergeWhenClause {
30466 #[inline]
30467 fn can_cast(kind: SyntaxKind) -> bool {
30468 matches!(
30469 kind,
30470 SyntaxKind::MERGE_WHEN_MATCHED
30471 | SyntaxKind::MERGE_WHEN_NOT_MATCHED_SOURCE
30472 | SyntaxKind::MERGE_WHEN_NOT_MATCHED_TARGET
30473 )
30474 }
30475 #[inline]
30476 fn cast(syntax: SyntaxNode) -> Option<Self> {
30477 let res = match syntax.kind() {
30478 SyntaxKind::MERGE_WHEN_MATCHED => {
30479 MergeWhenClause::MergeWhenMatched(MergeWhenMatched { syntax })
30480 }
30481 SyntaxKind::MERGE_WHEN_NOT_MATCHED_SOURCE => {
30482 MergeWhenClause::MergeWhenNotMatchedSource(MergeWhenNotMatchedSource { syntax })
30483 }
30484 SyntaxKind::MERGE_WHEN_NOT_MATCHED_TARGET => {
30485 MergeWhenClause::MergeWhenNotMatchedTarget(MergeWhenNotMatchedTarget { syntax })
30486 }
30487 _ => {
30488 return None;
30489 }
30490 };
30491 Some(res)
30492 }
30493 #[inline]
30494 fn syntax(&self) -> &SyntaxNode {
30495 match self {
30496 MergeWhenClause::MergeWhenMatched(it) => &it.syntax,
30497 MergeWhenClause::MergeWhenNotMatchedSource(it) => &it.syntax,
30498 MergeWhenClause::MergeWhenNotMatchedTarget(it) => &it.syntax,
30499 }
30500 }
30501}
30502impl From<MergeWhenMatched> for MergeWhenClause {
30503 #[inline]
30504 fn from(node: MergeWhenMatched) -> MergeWhenClause {
30505 MergeWhenClause::MergeWhenMatched(node)
30506 }
30507}
30508impl From<MergeWhenNotMatchedSource> for MergeWhenClause {
30509 #[inline]
30510 fn from(node: MergeWhenNotMatchedSource) -> MergeWhenClause {
30511 MergeWhenClause::MergeWhenNotMatchedSource(node)
30512 }
30513}
30514impl From<MergeWhenNotMatchedTarget> for MergeWhenClause {
30515 #[inline]
30516 fn from(node: MergeWhenNotMatchedTarget) -> MergeWhenClause {
30517 MergeWhenClause::MergeWhenNotMatchedTarget(node)
30518 }
30519}
30520impl AstNode for OnCommitAction {
30521 #[inline]
30522 fn can_cast(kind: SyntaxKind) -> bool {
30523 matches!(
30524 kind,
30525 SyntaxKind::DELETE_ROWS | SyntaxKind::DROP | SyntaxKind::PRESERVE_ROWS
30526 )
30527 }
30528 #[inline]
30529 fn cast(syntax: SyntaxNode) -> Option<Self> {
30530 let res = match syntax.kind() {
30531 SyntaxKind::DELETE_ROWS => OnCommitAction::DeleteRows(DeleteRows { syntax }),
30532 SyntaxKind::DROP => OnCommitAction::Drop(Drop { syntax }),
30533 SyntaxKind::PRESERVE_ROWS => OnCommitAction::PreserveRows(PreserveRows { syntax }),
30534 _ => {
30535 return None;
30536 }
30537 };
30538 Some(res)
30539 }
30540 #[inline]
30541 fn syntax(&self) -> &SyntaxNode {
30542 match self {
30543 OnCommitAction::DeleteRows(it) => &it.syntax,
30544 OnCommitAction::Drop(it) => &it.syntax,
30545 OnCommitAction::PreserveRows(it) => &it.syntax,
30546 }
30547 }
30548}
30549impl From<DeleteRows> for OnCommitAction {
30550 #[inline]
30551 fn from(node: DeleteRows) -> OnCommitAction {
30552 OnCommitAction::DeleteRows(node)
30553 }
30554}
30555impl From<Drop> for OnCommitAction {
30556 #[inline]
30557 fn from(node: Drop) -> OnCommitAction {
30558 OnCommitAction::Drop(node)
30559 }
30560}
30561impl From<PreserveRows> for OnCommitAction {
30562 #[inline]
30563 fn from(node: PreserveRows) -> OnCommitAction {
30564 OnCommitAction::PreserveRows(node)
30565 }
30566}
30567impl AstNode for ParamMode {
30568 #[inline]
30569 fn can_cast(kind: SyntaxKind) -> bool {
30570 matches!(
30571 kind,
30572 SyntaxKind::PARAM_IN
30573 | SyntaxKind::PARAM_IN_OUT
30574 | SyntaxKind::PARAM_OUT
30575 | SyntaxKind::PARAM_VARIADIC
30576 )
30577 }
30578 #[inline]
30579 fn cast(syntax: SyntaxNode) -> Option<Self> {
30580 let res = match syntax.kind() {
30581 SyntaxKind::PARAM_IN => ParamMode::ParamIn(ParamIn { syntax }),
30582 SyntaxKind::PARAM_IN_OUT => ParamMode::ParamInOut(ParamInOut { syntax }),
30583 SyntaxKind::PARAM_OUT => ParamMode::ParamOut(ParamOut { syntax }),
30584 SyntaxKind::PARAM_VARIADIC => ParamMode::ParamVariadic(ParamVariadic { syntax }),
30585 _ => {
30586 return None;
30587 }
30588 };
30589 Some(res)
30590 }
30591 #[inline]
30592 fn syntax(&self) -> &SyntaxNode {
30593 match self {
30594 ParamMode::ParamIn(it) => &it.syntax,
30595 ParamMode::ParamInOut(it) => &it.syntax,
30596 ParamMode::ParamOut(it) => &it.syntax,
30597 ParamMode::ParamVariadic(it) => &it.syntax,
30598 }
30599 }
30600}
30601impl From<ParamIn> for ParamMode {
30602 #[inline]
30603 fn from(node: ParamIn) -> ParamMode {
30604 ParamMode::ParamIn(node)
30605 }
30606}
30607impl From<ParamInOut> for ParamMode {
30608 #[inline]
30609 fn from(node: ParamInOut) -> ParamMode {
30610 ParamMode::ParamInOut(node)
30611 }
30612}
30613impl From<ParamOut> for ParamMode {
30614 #[inline]
30615 fn from(node: ParamOut) -> ParamMode {
30616 ParamMode::ParamOut(node)
30617 }
30618}
30619impl From<ParamVariadic> for ParamMode {
30620 #[inline]
30621 fn from(node: ParamVariadic) -> ParamMode {
30622 ParamMode::ParamVariadic(node)
30623 }
30624}
30625impl AstNode for PartitionType {
30626 #[inline]
30627 fn can_cast(kind: SyntaxKind) -> bool {
30628 matches!(
30629 kind,
30630 SyntaxKind::PARTITION_DEFAULT
30631 | SyntaxKind::PARTITION_FOR_VALUES_FROM
30632 | SyntaxKind::PARTITION_FOR_VALUES_IN
30633 | SyntaxKind::PARTITION_FOR_VALUES_WITH
30634 )
30635 }
30636 #[inline]
30637 fn cast(syntax: SyntaxNode) -> Option<Self> {
30638 let res = match syntax.kind() {
30639 SyntaxKind::PARTITION_DEFAULT => {
30640 PartitionType::PartitionDefault(PartitionDefault { syntax })
30641 }
30642 SyntaxKind::PARTITION_FOR_VALUES_FROM => {
30643 PartitionType::PartitionForValuesFrom(PartitionForValuesFrom { syntax })
30644 }
30645 SyntaxKind::PARTITION_FOR_VALUES_IN => {
30646 PartitionType::PartitionForValuesIn(PartitionForValuesIn { syntax })
30647 }
30648 SyntaxKind::PARTITION_FOR_VALUES_WITH => {
30649 PartitionType::PartitionForValuesWith(PartitionForValuesWith { syntax })
30650 }
30651 _ => {
30652 return None;
30653 }
30654 };
30655 Some(res)
30656 }
30657 #[inline]
30658 fn syntax(&self) -> &SyntaxNode {
30659 match self {
30660 PartitionType::PartitionDefault(it) => &it.syntax,
30661 PartitionType::PartitionForValuesFrom(it) => &it.syntax,
30662 PartitionType::PartitionForValuesIn(it) => &it.syntax,
30663 PartitionType::PartitionForValuesWith(it) => &it.syntax,
30664 }
30665 }
30666}
30667impl From<PartitionDefault> for PartitionType {
30668 #[inline]
30669 fn from(node: PartitionDefault) -> PartitionType {
30670 PartitionType::PartitionDefault(node)
30671 }
30672}
30673impl From<PartitionForValuesFrom> for PartitionType {
30674 #[inline]
30675 fn from(node: PartitionForValuesFrom) -> PartitionType {
30676 PartitionType::PartitionForValuesFrom(node)
30677 }
30678}
30679impl From<PartitionForValuesIn> for PartitionType {
30680 #[inline]
30681 fn from(node: PartitionForValuesIn) -> PartitionType {
30682 PartitionType::PartitionForValuesIn(node)
30683 }
30684}
30685impl From<PartitionForValuesWith> for PartitionType {
30686 #[inline]
30687 fn from(node: PartitionForValuesWith) -> PartitionType {
30688 PartitionType::PartitionForValuesWith(node)
30689 }
30690}
30691impl AstNode for PreparableStmt {
30692 #[inline]
30693 fn can_cast(kind: SyntaxKind) -> bool {
30694 matches!(
30695 kind,
30696 SyntaxKind::COMPOUND_SELECT
30697 | SyntaxKind::DELETE
30698 | SyntaxKind::INSERT
30699 | SyntaxKind::MERGE
30700 | SyntaxKind::SELECT
30701 | SyntaxKind::SELECT_INTO
30702 | SyntaxKind::TABLE
30703 | SyntaxKind::UPDATE
30704 | SyntaxKind::VALUES
30705 )
30706 }
30707 #[inline]
30708 fn cast(syntax: SyntaxNode) -> Option<Self> {
30709 let res = match syntax.kind() {
30710 SyntaxKind::COMPOUND_SELECT => {
30711 PreparableStmt::CompoundSelect(CompoundSelect { syntax })
30712 }
30713 SyntaxKind::DELETE => PreparableStmt::Delete(Delete { syntax }),
30714 SyntaxKind::INSERT => PreparableStmt::Insert(Insert { syntax }),
30715 SyntaxKind::MERGE => PreparableStmt::Merge(Merge { syntax }),
30716 SyntaxKind::SELECT => PreparableStmt::Select(Select { syntax }),
30717 SyntaxKind::SELECT_INTO => PreparableStmt::SelectInto(SelectInto { syntax }),
30718 SyntaxKind::TABLE => PreparableStmt::Table(Table { syntax }),
30719 SyntaxKind::UPDATE => PreparableStmt::Update(Update { syntax }),
30720 SyntaxKind::VALUES => PreparableStmt::Values(Values { syntax }),
30721 _ => {
30722 return None;
30723 }
30724 };
30725 Some(res)
30726 }
30727 #[inline]
30728 fn syntax(&self) -> &SyntaxNode {
30729 match self {
30730 PreparableStmt::CompoundSelect(it) => &it.syntax,
30731 PreparableStmt::Delete(it) => &it.syntax,
30732 PreparableStmt::Insert(it) => &it.syntax,
30733 PreparableStmt::Merge(it) => &it.syntax,
30734 PreparableStmt::Select(it) => &it.syntax,
30735 PreparableStmt::SelectInto(it) => &it.syntax,
30736 PreparableStmt::Table(it) => &it.syntax,
30737 PreparableStmt::Update(it) => &it.syntax,
30738 PreparableStmt::Values(it) => &it.syntax,
30739 }
30740 }
30741}
30742impl From<CompoundSelect> for PreparableStmt {
30743 #[inline]
30744 fn from(node: CompoundSelect) -> PreparableStmt {
30745 PreparableStmt::CompoundSelect(node)
30746 }
30747}
30748impl From<Delete> for PreparableStmt {
30749 #[inline]
30750 fn from(node: Delete) -> PreparableStmt {
30751 PreparableStmt::Delete(node)
30752 }
30753}
30754impl From<Insert> for PreparableStmt {
30755 #[inline]
30756 fn from(node: Insert) -> PreparableStmt {
30757 PreparableStmt::Insert(node)
30758 }
30759}
30760impl From<Merge> for PreparableStmt {
30761 #[inline]
30762 fn from(node: Merge) -> PreparableStmt {
30763 PreparableStmt::Merge(node)
30764 }
30765}
30766impl From<Select> for PreparableStmt {
30767 #[inline]
30768 fn from(node: Select) -> PreparableStmt {
30769 PreparableStmt::Select(node)
30770 }
30771}
30772impl From<SelectInto> for PreparableStmt {
30773 #[inline]
30774 fn from(node: SelectInto) -> PreparableStmt {
30775 PreparableStmt::SelectInto(node)
30776 }
30777}
30778impl From<Table> for PreparableStmt {
30779 #[inline]
30780 fn from(node: Table) -> PreparableStmt {
30781 PreparableStmt::Table(node)
30782 }
30783}
30784impl From<Update> for PreparableStmt {
30785 #[inline]
30786 fn from(node: Update) -> PreparableStmt {
30787 PreparableStmt::Update(node)
30788 }
30789}
30790impl From<Values> for PreparableStmt {
30791 #[inline]
30792 fn from(node: Values) -> PreparableStmt {
30793 PreparableStmt::Values(node)
30794 }
30795}
30796impl AstNode for RefAction {
30797 #[inline]
30798 fn can_cast(kind: SyntaxKind) -> bool {
30799 matches!(
30800 kind,
30801 SyntaxKind::CASCADE
30802 | SyntaxKind::NO_ACTION
30803 | SyntaxKind::RESTRICT
30804 | SyntaxKind::SET_DEFAULT_COLUMNS
30805 | SyntaxKind::SET_NULL_COLUMNS
30806 )
30807 }
30808 #[inline]
30809 fn cast(syntax: SyntaxNode) -> Option<Self> {
30810 let res = match syntax.kind() {
30811 SyntaxKind::CASCADE => RefAction::Cascade(Cascade { syntax }),
30812 SyntaxKind::NO_ACTION => RefAction::NoAction(NoAction { syntax }),
30813 SyntaxKind::RESTRICT => RefAction::Restrict(Restrict { syntax }),
30814 SyntaxKind::SET_DEFAULT_COLUMNS => {
30815 RefAction::SetDefaultColumns(SetDefaultColumns { syntax })
30816 }
30817 SyntaxKind::SET_NULL_COLUMNS => RefAction::SetNullColumns(SetNullColumns { syntax }),
30818 _ => {
30819 return None;
30820 }
30821 };
30822 Some(res)
30823 }
30824 #[inline]
30825 fn syntax(&self) -> &SyntaxNode {
30826 match self {
30827 RefAction::Cascade(it) => &it.syntax,
30828 RefAction::NoAction(it) => &it.syntax,
30829 RefAction::Restrict(it) => &it.syntax,
30830 RefAction::SetDefaultColumns(it) => &it.syntax,
30831 RefAction::SetNullColumns(it) => &it.syntax,
30832 }
30833 }
30834}
30835impl From<Cascade> for RefAction {
30836 #[inline]
30837 fn from(node: Cascade) -> RefAction {
30838 RefAction::Cascade(node)
30839 }
30840}
30841impl From<NoAction> for RefAction {
30842 #[inline]
30843 fn from(node: NoAction) -> RefAction {
30844 RefAction::NoAction(node)
30845 }
30846}
30847impl From<Restrict> for RefAction {
30848 #[inline]
30849 fn from(node: Restrict) -> RefAction {
30850 RefAction::Restrict(node)
30851 }
30852}
30853impl From<SetDefaultColumns> for RefAction {
30854 #[inline]
30855 fn from(node: SetDefaultColumns) -> RefAction {
30856 RefAction::SetDefaultColumns(node)
30857 }
30858}
30859impl From<SetNullColumns> for RefAction {
30860 #[inline]
30861 fn from(node: SetNullColumns) -> RefAction {
30862 RefAction::SetNullColumns(node)
30863 }
30864}
30865impl AstNode for SchemaElement {
30866 #[inline]
30867 fn can_cast(kind: SyntaxKind) -> bool {
30868 matches!(
30869 kind,
30870 SyntaxKind::CREATE_INDEX
30871 | SyntaxKind::CREATE_SEQUENCE
30872 | SyntaxKind::CREATE_TABLE
30873 | SyntaxKind::CREATE_TRIGGER
30874 | SyntaxKind::CREATE_VIEW
30875 | SyntaxKind::GRANT
30876 )
30877 }
30878 #[inline]
30879 fn cast(syntax: SyntaxNode) -> Option<Self> {
30880 let res = match syntax.kind() {
30881 SyntaxKind::CREATE_INDEX => SchemaElement::CreateIndex(CreateIndex { syntax }),
30882 SyntaxKind::CREATE_SEQUENCE => SchemaElement::CreateSequence(CreateSequence { syntax }),
30883 SyntaxKind::CREATE_TABLE => SchemaElement::CreateTable(CreateTable { syntax }),
30884 SyntaxKind::CREATE_TRIGGER => SchemaElement::CreateTrigger(CreateTrigger { syntax }),
30885 SyntaxKind::CREATE_VIEW => SchemaElement::CreateView(CreateView { syntax }),
30886 SyntaxKind::GRANT => SchemaElement::Grant(Grant { syntax }),
30887 _ => {
30888 return None;
30889 }
30890 };
30891 Some(res)
30892 }
30893 #[inline]
30894 fn syntax(&self) -> &SyntaxNode {
30895 match self {
30896 SchemaElement::CreateIndex(it) => &it.syntax,
30897 SchemaElement::CreateSequence(it) => &it.syntax,
30898 SchemaElement::CreateTable(it) => &it.syntax,
30899 SchemaElement::CreateTrigger(it) => &it.syntax,
30900 SchemaElement::CreateView(it) => &it.syntax,
30901 SchemaElement::Grant(it) => &it.syntax,
30902 }
30903 }
30904}
30905impl From<CreateIndex> for SchemaElement {
30906 #[inline]
30907 fn from(node: CreateIndex) -> SchemaElement {
30908 SchemaElement::CreateIndex(node)
30909 }
30910}
30911impl From<CreateSequence> for SchemaElement {
30912 #[inline]
30913 fn from(node: CreateSequence) -> SchemaElement {
30914 SchemaElement::CreateSequence(node)
30915 }
30916}
30917impl From<CreateTable> for SchemaElement {
30918 #[inline]
30919 fn from(node: CreateTable) -> SchemaElement {
30920 SchemaElement::CreateTable(node)
30921 }
30922}
30923impl From<CreateTrigger> for SchemaElement {
30924 #[inline]
30925 fn from(node: CreateTrigger) -> SchemaElement {
30926 SchemaElement::CreateTrigger(node)
30927 }
30928}
30929impl From<CreateView> for SchemaElement {
30930 #[inline]
30931 fn from(node: CreateView) -> SchemaElement {
30932 SchemaElement::CreateView(node)
30933 }
30934}
30935impl From<Grant> for SchemaElement {
30936 #[inline]
30937 fn from(node: Grant) -> SchemaElement {
30938 SchemaElement::Grant(node)
30939 }
30940}
30941impl AstNode for SelectVariant {
30942 #[inline]
30943 fn can_cast(kind: SyntaxKind) -> bool {
30944 matches!(
30945 kind,
30946 SyntaxKind::COMPOUND_SELECT
30947 | SyntaxKind::PAREN_SELECT
30948 | SyntaxKind::SELECT
30949 | SyntaxKind::SELECT_INTO
30950 | SyntaxKind::TABLE
30951 | SyntaxKind::VALUES
30952 )
30953 }
30954 #[inline]
30955 fn cast(syntax: SyntaxNode) -> Option<Self> {
30956 let res = match syntax.kind() {
30957 SyntaxKind::COMPOUND_SELECT => SelectVariant::CompoundSelect(CompoundSelect { syntax }),
30958 SyntaxKind::PAREN_SELECT => SelectVariant::ParenSelect(ParenSelect { syntax }),
30959 SyntaxKind::SELECT => SelectVariant::Select(Select { syntax }),
30960 SyntaxKind::SELECT_INTO => SelectVariant::SelectInto(SelectInto { syntax }),
30961 SyntaxKind::TABLE => SelectVariant::Table(Table { syntax }),
30962 SyntaxKind::VALUES => SelectVariant::Values(Values { syntax }),
30963 _ => {
30964 return None;
30965 }
30966 };
30967 Some(res)
30968 }
30969 #[inline]
30970 fn syntax(&self) -> &SyntaxNode {
30971 match self {
30972 SelectVariant::CompoundSelect(it) => &it.syntax,
30973 SelectVariant::ParenSelect(it) => &it.syntax,
30974 SelectVariant::Select(it) => &it.syntax,
30975 SelectVariant::SelectInto(it) => &it.syntax,
30976 SelectVariant::Table(it) => &it.syntax,
30977 SelectVariant::Values(it) => &it.syntax,
30978 }
30979 }
30980}
30981impl From<CompoundSelect> for SelectVariant {
30982 #[inline]
30983 fn from(node: CompoundSelect) -> SelectVariant {
30984 SelectVariant::CompoundSelect(node)
30985 }
30986}
30987impl From<ParenSelect> for SelectVariant {
30988 #[inline]
30989 fn from(node: ParenSelect) -> SelectVariant {
30990 SelectVariant::ParenSelect(node)
30991 }
30992}
30993impl From<Select> for SelectVariant {
30994 #[inline]
30995 fn from(node: Select) -> SelectVariant {
30996 SelectVariant::Select(node)
30997 }
30998}
30999impl From<SelectInto> for SelectVariant {
31000 #[inline]
31001 fn from(node: SelectInto) -> SelectVariant {
31002 SelectVariant::SelectInto(node)
31003 }
31004}
31005impl From<Table> for SelectVariant {
31006 #[inline]
31007 fn from(node: Table) -> SelectVariant {
31008 SelectVariant::Table(node)
31009 }
31010}
31011impl From<Values> for SelectVariant {
31012 #[inline]
31013 fn from(node: Values) -> SelectVariant {
31014 SelectVariant::Values(node)
31015 }
31016}
31017impl AstNode for SetColumn {
31018 #[inline]
31019 fn can_cast(kind: SyntaxKind) -> bool {
31020 matches!(
31021 kind,
31022 SyntaxKind::SET_MULTIPLE_COLUMNS | SyntaxKind::SET_SINGLE_COLUMN
31023 )
31024 }
31025 #[inline]
31026 fn cast(syntax: SyntaxNode) -> Option<Self> {
31027 let res = match syntax.kind() {
31028 SyntaxKind::SET_MULTIPLE_COLUMNS => {
31029 SetColumn::SetMultipleColumns(SetMultipleColumns { syntax })
31030 }
31031 SyntaxKind::SET_SINGLE_COLUMN => SetColumn::SetSingleColumn(SetSingleColumn { syntax }),
31032 _ => {
31033 return None;
31034 }
31035 };
31036 Some(res)
31037 }
31038 #[inline]
31039 fn syntax(&self) -> &SyntaxNode {
31040 match self {
31041 SetColumn::SetMultipleColumns(it) => &it.syntax,
31042 SetColumn::SetSingleColumn(it) => &it.syntax,
31043 }
31044 }
31045}
31046impl From<SetMultipleColumns> for SetColumn {
31047 #[inline]
31048 fn from(node: SetMultipleColumns) -> SetColumn {
31049 SetColumn::SetMultipleColumns(node)
31050 }
31051}
31052impl From<SetSingleColumn> for SetColumn {
31053 #[inline]
31054 fn from(node: SetSingleColumn) -> SetColumn {
31055 SetColumn::SetSingleColumn(node)
31056 }
31057}
31058impl AstNode for Stmt {
31059 #[inline]
31060 fn can_cast(kind: SyntaxKind) -> bool {
31061 matches!(
31062 kind,
31063 SyntaxKind::ALTER_AGGREGATE
31064 | SyntaxKind::ALTER_COLLATION
31065 | SyntaxKind::ALTER_CONVERSION
31066 | SyntaxKind::ALTER_DATABASE
31067 | SyntaxKind::ALTER_DEFAULT_PRIVILEGES
31068 | SyntaxKind::ALTER_DOMAIN
31069 | SyntaxKind::ALTER_EVENT_TRIGGER
31070 | SyntaxKind::ALTER_EXTENSION
31071 | SyntaxKind::ALTER_FOREIGN_DATA_WRAPPER
31072 | SyntaxKind::ALTER_FOREIGN_TABLE
31073 | SyntaxKind::ALTER_FUNCTION
31074 | SyntaxKind::ALTER_GROUP
31075 | SyntaxKind::ALTER_INDEX
31076 | SyntaxKind::ALTER_LANGUAGE
31077 | SyntaxKind::ALTER_LARGE_OBJECT
31078 | SyntaxKind::ALTER_MATERIALIZED_VIEW
31079 | SyntaxKind::ALTER_OPERATOR
31080 | SyntaxKind::ALTER_OPERATOR_CLASS
31081 | SyntaxKind::ALTER_OPERATOR_FAMILY
31082 | SyntaxKind::ALTER_POLICY
31083 | SyntaxKind::ALTER_PROCEDURE
31084 | SyntaxKind::ALTER_PUBLICATION
31085 | SyntaxKind::ALTER_ROLE
31086 | SyntaxKind::ALTER_ROUTINE
31087 | SyntaxKind::ALTER_RULE
31088 | SyntaxKind::ALTER_SCHEMA
31089 | SyntaxKind::ALTER_SEQUENCE
31090 | SyntaxKind::ALTER_SERVER
31091 | SyntaxKind::ALTER_STATISTICS
31092 | SyntaxKind::ALTER_SUBSCRIPTION
31093 | SyntaxKind::ALTER_SYSTEM
31094 | SyntaxKind::ALTER_TABLE
31095 | SyntaxKind::ALTER_TABLESPACE
31096 | SyntaxKind::ALTER_TEXT_SEARCH_CONFIGURATION
31097 | SyntaxKind::ALTER_TEXT_SEARCH_DICTIONARY
31098 | SyntaxKind::ALTER_TEXT_SEARCH_PARSER
31099 | SyntaxKind::ALTER_TEXT_SEARCH_TEMPLATE
31100 | SyntaxKind::ALTER_TRIGGER
31101 | SyntaxKind::ALTER_TYPE
31102 | SyntaxKind::ALTER_USER
31103 | SyntaxKind::ALTER_USER_MAPPING
31104 | SyntaxKind::ALTER_VIEW
31105 | SyntaxKind::ANALYZE
31106 | SyntaxKind::BEGIN
31107 | SyntaxKind::CALL
31108 | SyntaxKind::CHECKPOINT
31109 | SyntaxKind::CLOSE
31110 | SyntaxKind::CLUSTER
31111 | SyntaxKind::COMMENT_ON
31112 | SyntaxKind::COMMIT
31113 | SyntaxKind::COPY
31114 | SyntaxKind::CREATE_ACCESS_METHOD
31115 | SyntaxKind::CREATE_AGGREGATE
31116 | SyntaxKind::CREATE_CAST
31117 | SyntaxKind::CREATE_COLLATION
31118 | SyntaxKind::CREATE_CONVERSION
31119 | SyntaxKind::CREATE_DATABASE
31120 | SyntaxKind::CREATE_DOMAIN
31121 | SyntaxKind::CREATE_EVENT_TRIGGER
31122 | SyntaxKind::CREATE_EXTENSION
31123 | SyntaxKind::CREATE_FOREIGN_DATA_WRAPPER
31124 | SyntaxKind::CREATE_FOREIGN_TABLE
31125 | SyntaxKind::CREATE_FUNCTION
31126 | SyntaxKind::CREATE_GROUP
31127 | SyntaxKind::CREATE_INDEX
31128 | SyntaxKind::CREATE_LANGUAGE
31129 | SyntaxKind::CREATE_MATERIALIZED_VIEW
31130 | SyntaxKind::CREATE_OPERATOR
31131 | SyntaxKind::CREATE_OPERATOR_CLASS
31132 | SyntaxKind::CREATE_OPERATOR_FAMILY
31133 | SyntaxKind::CREATE_POLICY
31134 | SyntaxKind::CREATE_PROCEDURE
31135 | SyntaxKind::CREATE_PUBLICATION
31136 | SyntaxKind::CREATE_ROLE
31137 | SyntaxKind::CREATE_RULE
31138 | SyntaxKind::CREATE_SCHEMA
31139 | SyntaxKind::CREATE_SEQUENCE
31140 | SyntaxKind::CREATE_SERVER
31141 | SyntaxKind::CREATE_STATISTICS
31142 | SyntaxKind::CREATE_SUBSCRIPTION
31143 | SyntaxKind::CREATE_TABLE
31144 | SyntaxKind::CREATE_TABLE_AS
31145 | SyntaxKind::CREATE_TABLESPACE
31146 | SyntaxKind::CREATE_TEXT_SEARCH_CONFIGURATION
31147 | SyntaxKind::CREATE_TEXT_SEARCH_DICTIONARY
31148 | SyntaxKind::CREATE_TEXT_SEARCH_PARSER
31149 | SyntaxKind::CREATE_TEXT_SEARCH_TEMPLATE
31150 | SyntaxKind::CREATE_TRANSFORM
31151 | SyntaxKind::CREATE_TRIGGER
31152 | SyntaxKind::CREATE_TYPE
31153 | SyntaxKind::CREATE_USER
31154 | SyntaxKind::CREATE_USER_MAPPING
31155 | SyntaxKind::CREATE_VIEW
31156 | SyntaxKind::DEALLOCATE
31157 | SyntaxKind::DECLARE
31158 | SyntaxKind::DELETE
31159 | SyntaxKind::DISCARD
31160 | SyntaxKind::DO
31161 | SyntaxKind::DROP_ACCESS_METHOD
31162 | SyntaxKind::DROP_AGGREGATE
31163 | SyntaxKind::DROP_CAST
31164 | SyntaxKind::DROP_COLLATION
31165 | SyntaxKind::DROP_CONVERSION
31166 | SyntaxKind::DROP_DATABASE
31167 | SyntaxKind::DROP_DOMAIN
31168 | SyntaxKind::DROP_EVENT_TRIGGER
31169 | SyntaxKind::DROP_EXTENSION
31170 | SyntaxKind::DROP_FOREIGN_DATA_WRAPPER
31171 | SyntaxKind::DROP_FOREIGN_TABLE
31172 | SyntaxKind::DROP_FUNCTION
31173 | SyntaxKind::DROP_GROUP
31174 | SyntaxKind::DROP_INDEX
31175 | SyntaxKind::DROP_LANGUAGE
31176 | SyntaxKind::DROP_MATERIALIZED_VIEW
31177 | SyntaxKind::DROP_OPERATOR
31178 | SyntaxKind::DROP_OPERATOR_CLASS
31179 | SyntaxKind::DROP_OPERATOR_FAMILY
31180 | SyntaxKind::DROP_OWNED
31181 | SyntaxKind::DROP_POLICY
31182 | SyntaxKind::DROP_PROCEDURE
31183 | SyntaxKind::DROP_PUBLICATION
31184 | SyntaxKind::DROP_ROLE
31185 | SyntaxKind::DROP_ROUTINE
31186 | SyntaxKind::DROP_RULE
31187 | SyntaxKind::DROP_SCHEMA
31188 | SyntaxKind::DROP_SEQUENCE
31189 | SyntaxKind::DROP_SERVER
31190 | SyntaxKind::DROP_STATISTICS
31191 | SyntaxKind::DROP_SUBSCRIPTION
31192 | SyntaxKind::DROP_TABLE
31193 | SyntaxKind::DROP_TABLESPACE
31194 | SyntaxKind::DROP_TEXT_SEARCH_CONFIG
31195 | SyntaxKind::DROP_TEXT_SEARCH_DICT
31196 | SyntaxKind::DROP_TEXT_SEARCH_PARSER
31197 | SyntaxKind::DROP_TEXT_SEARCH_TEMPLATE
31198 | SyntaxKind::DROP_TRANSFORM
31199 | SyntaxKind::DROP_TRIGGER
31200 | SyntaxKind::DROP_TYPE
31201 | SyntaxKind::DROP_USER
31202 | SyntaxKind::DROP_USER_MAPPING
31203 | SyntaxKind::DROP_VIEW
31204 | SyntaxKind::EXECUTE
31205 | SyntaxKind::EXPLAIN
31206 | SyntaxKind::FETCH
31207 | SyntaxKind::GRANT
31208 | SyntaxKind::IMPORT_FOREIGN_SCHEMA
31209 | SyntaxKind::INSERT
31210 | SyntaxKind::LISTEN
31211 | SyntaxKind::LOAD
31212 | SyntaxKind::LOCK
31213 | SyntaxKind::MERGE
31214 | SyntaxKind::MOVE
31215 | SyntaxKind::NOTIFY
31216 | SyntaxKind::PAREN_SELECT
31217 | SyntaxKind::PREPARE
31218 | SyntaxKind::PREPARE_TRANSACTION
31219 | SyntaxKind::REASSIGN
31220 | SyntaxKind::REFRESH
31221 | SyntaxKind::REINDEX
31222 | SyntaxKind::RELEASE_SAVEPOINT
31223 | SyntaxKind::RESET
31224 | SyntaxKind::RESET_SESSION_AUTH
31225 | SyntaxKind::REVOKE
31226 | SyntaxKind::ROLLBACK
31227 | SyntaxKind::SAVEPOINT
31228 | SyntaxKind::SECURITY_LABEL
31229 | SyntaxKind::SELECT
31230 | SyntaxKind::SELECT_INTO
31231 | SyntaxKind::SET
31232 | SyntaxKind::SET_CONSTRAINTS
31233 | SyntaxKind::SET_ROLE
31234 | SyntaxKind::SET_SESSION_AUTH
31235 | SyntaxKind::SET_TRANSACTION
31236 | SyntaxKind::SHOW
31237 | SyntaxKind::TABLE
31238 | SyntaxKind::TRUNCATE
31239 | SyntaxKind::UNLISTEN
31240 | SyntaxKind::UPDATE
31241 | SyntaxKind::VACUUM
31242 | SyntaxKind::VALUES
31243 )
31244 }
31245 #[inline]
31246 fn cast(syntax: SyntaxNode) -> Option<Self> {
31247 let res = match syntax.kind() {
31248 SyntaxKind::ALTER_AGGREGATE => Stmt::AlterAggregate(AlterAggregate { syntax }),
31249 SyntaxKind::ALTER_COLLATION => Stmt::AlterCollation(AlterCollation { syntax }),
31250 SyntaxKind::ALTER_CONVERSION => Stmt::AlterConversion(AlterConversion { syntax }),
31251 SyntaxKind::ALTER_DATABASE => Stmt::AlterDatabase(AlterDatabase { syntax }),
31252 SyntaxKind::ALTER_DEFAULT_PRIVILEGES => {
31253 Stmt::AlterDefaultPrivileges(AlterDefaultPrivileges { syntax })
31254 }
31255 SyntaxKind::ALTER_DOMAIN => Stmt::AlterDomain(AlterDomain { syntax }),
31256 SyntaxKind::ALTER_EVENT_TRIGGER => {
31257 Stmt::AlterEventTrigger(AlterEventTrigger { syntax })
31258 }
31259 SyntaxKind::ALTER_EXTENSION => Stmt::AlterExtension(AlterExtension { syntax }),
31260 SyntaxKind::ALTER_FOREIGN_DATA_WRAPPER => {
31261 Stmt::AlterForeignDataWrapper(AlterForeignDataWrapper { syntax })
31262 }
31263 SyntaxKind::ALTER_FOREIGN_TABLE => {
31264 Stmt::AlterForeignTable(AlterForeignTable { syntax })
31265 }
31266 SyntaxKind::ALTER_FUNCTION => Stmt::AlterFunction(AlterFunction { syntax }),
31267 SyntaxKind::ALTER_GROUP => Stmt::AlterGroup(AlterGroup { syntax }),
31268 SyntaxKind::ALTER_INDEX => Stmt::AlterIndex(AlterIndex { syntax }),
31269 SyntaxKind::ALTER_LANGUAGE => Stmt::AlterLanguage(AlterLanguage { syntax }),
31270 SyntaxKind::ALTER_LARGE_OBJECT => Stmt::AlterLargeObject(AlterLargeObject { syntax }),
31271 SyntaxKind::ALTER_MATERIALIZED_VIEW => {
31272 Stmt::AlterMaterializedView(AlterMaterializedView { syntax })
31273 }
31274 SyntaxKind::ALTER_OPERATOR => Stmt::AlterOperator(AlterOperator { syntax }),
31275 SyntaxKind::ALTER_OPERATOR_CLASS => {
31276 Stmt::AlterOperatorClass(AlterOperatorClass { syntax })
31277 }
31278 SyntaxKind::ALTER_OPERATOR_FAMILY => {
31279 Stmt::AlterOperatorFamily(AlterOperatorFamily { syntax })
31280 }
31281 SyntaxKind::ALTER_POLICY => Stmt::AlterPolicy(AlterPolicy { syntax }),
31282 SyntaxKind::ALTER_PROCEDURE => Stmt::AlterProcedure(AlterProcedure { syntax }),
31283 SyntaxKind::ALTER_PUBLICATION => Stmt::AlterPublication(AlterPublication { syntax }),
31284 SyntaxKind::ALTER_ROLE => Stmt::AlterRole(AlterRole { syntax }),
31285 SyntaxKind::ALTER_ROUTINE => Stmt::AlterRoutine(AlterRoutine { syntax }),
31286 SyntaxKind::ALTER_RULE => Stmt::AlterRule(AlterRule { syntax }),
31287 SyntaxKind::ALTER_SCHEMA => Stmt::AlterSchema(AlterSchema { syntax }),
31288 SyntaxKind::ALTER_SEQUENCE => Stmt::AlterSequence(AlterSequence { syntax }),
31289 SyntaxKind::ALTER_SERVER => Stmt::AlterServer(AlterServer { syntax }),
31290 SyntaxKind::ALTER_STATISTICS => Stmt::AlterStatistics(AlterStatistics { syntax }),
31291 SyntaxKind::ALTER_SUBSCRIPTION => Stmt::AlterSubscription(AlterSubscription { syntax }),
31292 SyntaxKind::ALTER_SYSTEM => Stmt::AlterSystem(AlterSystem { syntax }),
31293 SyntaxKind::ALTER_TABLE => Stmt::AlterTable(AlterTable { syntax }),
31294 SyntaxKind::ALTER_TABLESPACE => Stmt::AlterTablespace(AlterTablespace { syntax }),
31295 SyntaxKind::ALTER_TEXT_SEARCH_CONFIGURATION => {
31296 Stmt::AlterTextSearchConfiguration(AlterTextSearchConfiguration { syntax })
31297 }
31298 SyntaxKind::ALTER_TEXT_SEARCH_DICTIONARY => {
31299 Stmt::AlterTextSearchDictionary(AlterTextSearchDictionary { syntax })
31300 }
31301 SyntaxKind::ALTER_TEXT_SEARCH_PARSER => {
31302 Stmt::AlterTextSearchParser(AlterTextSearchParser { syntax })
31303 }
31304 SyntaxKind::ALTER_TEXT_SEARCH_TEMPLATE => {
31305 Stmt::AlterTextSearchTemplate(AlterTextSearchTemplate { syntax })
31306 }
31307 SyntaxKind::ALTER_TRIGGER => Stmt::AlterTrigger(AlterTrigger { syntax }),
31308 SyntaxKind::ALTER_TYPE => Stmt::AlterType(AlterType { syntax }),
31309 SyntaxKind::ALTER_USER => Stmt::AlterUser(AlterUser { syntax }),
31310 SyntaxKind::ALTER_USER_MAPPING => Stmt::AlterUserMapping(AlterUserMapping { syntax }),
31311 SyntaxKind::ALTER_VIEW => Stmt::AlterView(AlterView { syntax }),
31312 SyntaxKind::ANALYZE => Stmt::Analyze(Analyze { syntax }),
31313 SyntaxKind::BEGIN => Stmt::Begin(Begin { syntax }),
31314 SyntaxKind::CALL => Stmt::Call(Call { syntax }),
31315 SyntaxKind::CHECKPOINT => Stmt::Checkpoint(Checkpoint { syntax }),
31316 SyntaxKind::CLOSE => Stmt::Close(Close { syntax }),
31317 SyntaxKind::CLUSTER => Stmt::Cluster(Cluster { syntax }),
31318 SyntaxKind::COMMENT_ON => Stmt::CommentOn(CommentOn { syntax }),
31319 SyntaxKind::COMMIT => Stmt::Commit(Commit { syntax }),
31320 SyntaxKind::COPY => Stmt::Copy(Copy { syntax }),
31321 SyntaxKind::CREATE_ACCESS_METHOD => {
31322 Stmt::CreateAccessMethod(CreateAccessMethod { syntax })
31323 }
31324 SyntaxKind::CREATE_AGGREGATE => Stmt::CreateAggregate(CreateAggregate { syntax }),
31325 SyntaxKind::CREATE_CAST => Stmt::CreateCast(CreateCast { syntax }),
31326 SyntaxKind::CREATE_COLLATION => Stmt::CreateCollation(CreateCollation { syntax }),
31327 SyntaxKind::CREATE_CONVERSION => Stmt::CreateConversion(CreateConversion { syntax }),
31328 SyntaxKind::CREATE_DATABASE => Stmt::CreateDatabase(CreateDatabase { syntax }),
31329 SyntaxKind::CREATE_DOMAIN => Stmt::CreateDomain(CreateDomain { syntax }),
31330 SyntaxKind::CREATE_EVENT_TRIGGER => {
31331 Stmt::CreateEventTrigger(CreateEventTrigger { syntax })
31332 }
31333 SyntaxKind::CREATE_EXTENSION => Stmt::CreateExtension(CreateExtension { syntax }),
31334 SyntaxKind::CREATE_FOREIGN_DATA_WRAPPER => {
31335 Stmt::CreateForeignDataWrapper(CreateForeignDataWrapper { syntax })
31336 }
31337 SyntaxKind::CREATE_FOREIGN_TABLE => {
31338 Stmt::CreateForeignTable(CreateForeignTable { syntax })
31339 }
31340 SyntaxKind::CREATE_FUNCTION => Stmt::CreateFunction(CreateFunction { syntax }),
31341 SyntaxKind::CREATE_GROUP => Stmt::CreateGroup(CreateGroup { syntax }),
31342 SyntaxKind::CREATE_INDEX => Stmt::CreateIndex(CreateIndex { syntax }),
31343 SyntaxKind::CREATE_LANGUAGE => Stmt::CreateLanguage(CreateLanguage { syntax }),
31344 SyntaxKind::CREATE_MATERIALIZED_VIEW => {
31345 Stmt::CreateMaterializedView(CreateMaterializedView { syntax })
31346 }
31347 SyntaxKind::CREATE_OPERATOR => Stmt::CreateOperator(CreateOperator { syntax }),
31348 SyntaxKind::CREATE_OPERATOR_CLASS => {
31349 Stmt::CreateOperatorClass(CreateOperatorClass { syntax })
31350 }
31351 SyntaxKind::CREATE_OPERATOR_FAMILY => {
31352 Stmt::CreateOperatorFamily(CreateOperatorFamily { syntax })
31353 }
31354 SyntaxKind::CREATE_POLICY => Stmt::CreatePolicy(CreatePolicy { syntax }),
31355 SyntaxKind::CREATE_PROCEDURE => Stmt::CreateProcedure(CreateProcedure { syntax }),
31356 SyntaxKind::CREATE_PUBLICATION => Stmt::CreatePublication(CreatePublication { syntax }),
31357 SyntaxKind::CREATE_ROLE => Stmt::CreateRole(CreateRole { syntax }),
31358 SyntaxKind::CREATE_RULE => Stmt::CreateRule(CreateRule { syntax }),
31359 SyntaxKind::CREATE_SCHEMA => Stmt::CreateSchema(CreateSchema { syntax }),
31360 SyntaxKind::CREATE_SEQUENCE => Stmt::CreateSequence(CreateSequence { syntax }),
31361 SyntaxKind::CREATE_SERVER => Stmt::CreateServer(CreateServer { syntax }),
31362 SyntaxKind::CREATE_STATISTICS => Stmt::CreateStatistics(CreateStatistics { syntax }),
31363 SyntaxKind::CREATE_SUBSCRIPTION => {
31364 Stmt::CreateSubscription(CreateSubscription { syntax })
31365 }
31366 SyntaxKind::CREATE_TABLE => Stmt::CreateTable(CreateTable { syntax }),
31367 SyntaxKind::CREATE_TABLE_AS => Stmt::CreateTableAs(CreateTableAs { syntax }),
31368 SyntaxKind::CREATE_TABLESPACE => Stmt::CreateTablespace(CreateTablespace { syntax }),
31369 SyntaxKind::CREATE_TEXT_SEARCH_CONFIGURATION => {
31370 Stmt::CreateTextSearchConfiguration(CreateTextSearchConfiguration { syntax })
31371 }
31372 SyntaxKind::CREATE_TEXT_SEARCH_DICTIONARY => {
31373 Stmt::CreateTextSearchDictionary(CreateTextSearchDictionary { syntax })
31374 }
31375 SyntaxKind::CREATE_TEXT_SEARCH_PARSER => {
31376 Stmt::CreateTextSearchParser(CreateTextSearchParser { syntax })
31377 }
31378 SyntaxKind::CREATE_TEXT_SEARCH_TEMPLATE => {
31379 Stmt::CreateTextSearchTemplate(CreateTextSearchTemplate { syntax })
31380 }
31381 SyntaxKind::CREATE_TRANSFORM => Stmt::CreateTransform(CreateTransform { syntax }),
31382 SyntaxKind::CREATE_TRIGGER => Stmt::CreateTrigger(CreateTrigger { syntax }),
31383 SyntaxKind::CREATE_TYPE => Stmt::CreateType(CreateType { syntax }),
31384 SyntaxKind::CREATE_USER => Stmt::CreateUser(CreateUser { syntax }),
31385 SyntaxKind::CREATE_USER_MAPPING => {
31386 Stmt::CreateUserMapping(CreateUserMapping { syntax })
31387 }
31388 SyntaxKind::CREATE_VIEW => Stmt::CreateView(CreateView { syntax }),
31389 SyntaxKind::DEALLOCATE => Stmt::Deallocate(Deallocate { syntax }),
31390 SyntaxKind::DECLARE => Stmt::Declare(Declare { syntax }),
31391 SyntaxKind::DELETE => Stmt::Delete(Delete { syntax }),
31392 SyntaxKind::DISCARD => Stmt::Discard(Discard { syntax }),
31393 SyntaxKind::DO => Stmt::Do(Do { syntax }),
31394 SyntaxKind::DROP_ACCESS_METHOD => Stmt::DropAccessMethod(DropAccessMethod { syntax }),
31395 SyntaxKind::DROP_AGGREGATE => Stmt::DropAggregate(DropAggregate { syntax }),
31396 SyntaxKind::DROP_CAST => Stmt::DropCast(DropCast { syntax }),
31397 SyntaxKind::DROP_COLLATION => Stmt::DropCollation(DropCollation { syntax }),
31398 SyntaxKind::DROP_CONVERSION => Stmt::DropConversion(DropConversion { syntax }),
31399 SyntaxKind::DROP_DATABASE => Stmt::DropDatabase(DropDatabase { syntax }),
31400 SyntaxKind::DROP_DOMAIN => Stmt::DropDomain(DropDomain { syntax }),
31401 SyntaxKind::DROP_EVENT_TRIGGER => Stmt::DropEventTrigger(DropEventTrigger { syntax }),
31402 SyntaxKind::DROP_EXTENSION => Stmt::DropExtension(DropExtension { syntax }),
31403 SyntaxKind::DROP_FOREIGN_DATA_WRAPPER => {
31404 Stmt::DropForeignDataWrapper(DropForeignDataWrapper { syntax })
31405 }
31406 SyntaxKind::DROP_FOREIGN_TABLE => Stmt::DropForeignTable(DropForeignTable { syntax }),
31407 SyntaxKind::DROP_FUNCTION => Stmt::DropFunction(DropFunction { syntax }),
31408 SyntaxKind::DROP_GROUP => Stmt::DropGroup(DropGroup { syntax }),
31409 SyntaxKind::DROP_INDEX => Stmt::DropIndex(DropIndex { syntax }),
31410 SyntaxKind::DROP_LANGUAGE => Stmt::DropLanguage(DropLanguage { syntax }),
31411 SyntaxKind::DROP_MATERIALIZED_VIEW => {
31412 Stmt::DropMaterializedView(DropMaterializedView { syntax })
31413 }
31414 SyntaxKind::DROP_OPERATOR => Stmt::DropOperator(DropOperator { syntax }),
31415 SyntaxKind::DROP_OPERATOR_CLASS => {
31416 Stmt::DropOperatorClass(DropOperatorClass { syntax })
31417 }
31418 SyntaxKind::DROP_OPERATOR_FAMILY => {
31419 Stmt::DropOperatorFamily(DropOperatorFamily { syntax })
31420 }
31421 SyntaxKind::DROP_OWNED => Stmt::DropOwned(DropOwned { syntax }),
31422 SyntaxKind::DROP_POLICY => Stmt::DropPolicy(DropPolicy { syntax }),
31423 SyntaxKind::DROP_PROCEDURE => Stmt::DropProcedure(DropProcedure { syntax }),
31424 SyntaxKind::DROP_PUBLICATION => Stmt::DropPublication(DropPublication { syntax }),
31425 SyntaxKind::DROP_ROLE => Stmt::DropRole(DropRole { syntax }),
31426 SyntaxKind::DROP_ROUTINE => Stmt::DropRoutine(DropRoutine { syntax }),
31427 SyntaxKind::DROP_RULE => Stmt::DropRule(DropRule { syntax }),
31428 SyntaxKind::DROP_SCHEMA => Stmt::DropSchema(DropSchema { syntax }),
31429 SyntaxKind::DROP_SEQUENCE => Stmt::DropSequence(DropSequence { syntax }),
31430 SyntaxKind::DROP_SERVER => Stmt::DropServer(DropServer { syntax }),
31431 SyntaxKind::DROP_STATISTICS => Stmt::DropStatistics(DropStatistics { syntax }),
31432 SyntaxKind::DROP_SUBSCRIPTION => Stmt::DropSubscription(DropSubscription { syntax }),
31433 SyntaxKind::DROP_TABLE => Stmt::DropTable(DropTable { syntax }),
31434 SyntaxKind::DROP_TABLESPACE => Stmt::DropTablespace(DropTablespace { syntax }),
31435 SyntaxKind::DROP_TEXT_SEARCH_CONFIG => {
31436 Stmt::DropTextSearchConfig(DropTextSearchConfig { syntax })
31437 }
31438 SyntaxKind::DROP_TEXT_SEARCH_DICT => {
31439 Stmt::DropTextSearchDict(DropTextSearchDict { syntax })
31440 }
31441 SyntaxKind::DROP_TEXT_SEARCH_PARSER => {
31442 Stmt::DropTextSearchParser(DropTextSearchParser { syntax })
31443 }
31444 SyntaxKind::DROP_TEXT_SEARCH_TEMPLATE => {
31445 Stmt::DropTextSearchTemplate(DropTextSearchTemplate { syntax })
31446 }
31447 SyntaxKind::DROP_TRANSFORM => Stmt::DropTransform(DropTransform { syntax }),
31448 SyntaxKind::DROP_TRIGGER => Stmt::DropTrigger(DropTrigger { syntax }),
31449 SyntaxKind::DROP_TYPE => Stmt::DropType(DropType { syntax }),
31450 SyntaxKind::DROP_USER => Stmt::DropUser(DropUser { syntax }),
31451 SyntaxKind::DROP_USER_MAPPING => Stmt::DropUserMapping(DropUserMapping { syntax }),
31452 SyntaxKind::DROP_VIEW => Stmt::DropView(DropView { syntax }),
31453 SyntaxKind::EXECUTE => Stmt::Execute(Execute { syntax }),
31454 SyntaxKind::EXPLAIN => Stmt::Explain(Explain { syntax }),
31455 SyntaxKind::FETCH => Stmt::Fetch(Fetch { syntax }),
31456 SyntaxKind::GRANT => Stmt::Grant(Grant { syntax }),
31457 SyntaxKind::IMPORT_FOREIGN_SCHEMA => {
31458 Stmt::ImportForeignSchema(ImportForeignSchema { syntax })
31459 }
31460 SyntaxKind::INSERT => Stmt::Insert(Insert { syntax }),
31461 SyntaxKind::LISTEN => Stmt::Listen(Listen { syntax }),
31462 SyntaxKind::LOAD => Stmt::Load(Load { syntax }),
31463 SyntaxKind::LOCK => Stmt::Lock(Lock { syntax }),
31464 SyntaxKind::MERGE => Stmt::Merge(Merge { syntax }),
31465 SyntaxKind::MOVE => Stmt::Move(Move { syntax }),
31466 SyntaxKind::NOTIFY => Stmt::Notify(Notify { syntax }),
31467 SyntaxKind::PAREN_SELECT => Stmt::ParenSelect(ParenSelect { syntax }),
31468 SyntaxKind::PREPARE => Stmt::Prepare(Prepare { syntax }),
31469 SyntaxKind::PREPARE_TRANSACTION => {
31470 Stmt::PrepareTransaction(PrepareTransaction { syntax })
31471 }
31472 SyntaxKind::REASSIGN => Stmt::Reassign(Reassign { syntax }),
31473 SyntaxKind::REFRESH => Stmt::Refresh(Refresh { syntax }),
31474 SyntaxKind::REINDEX => Stmt::Reindex(Reindex { syntax }),
31475 SyntaxKind::RELEASE_SAVEPOINT => Stmt::ReleaseSavepoint(ReleaseSavepoint { syntax }),
31476 SyntaxKind::RESET => Stmt::Reset(Reset { syntax }),
31477 SyntaxKind::RESET_SESSION_AUTH => Stmt::ResetSessionAuth(ResetSessionAuth { syntax }),
31478 SyntaxKind::REVOKE => Stmt::Revoke(Revoke { syntax }),
31479 SyntaxKind::ROLLBACK => Stmt::Rollback(Rollback { syntax }),
31480 SyntaxKind::SAVEPOINT => Stmt::Savepoint(Savepoint { syntax }),
31481 SyntaxKind::SECURITY_LABEL => Stmt::SecurityLabel(SecurityLabel { syntax }),
31482 SyntaxKind::SELECT => Stmt::Select(Select { syntax }),
31483 SyntaxKind::SELECT_INTO => Stmt::SelectInto(SelectInto { syntax }),
31484 SyntaxKind::SET => Stmt::Set(Set { syntax }),
31485 SyntaxKind::SET_CONSTRAINTS => Stmt::SetConstraints(SetConstraints { syntax }),
31486 SyntaxKind::SET_ROLE => Stmt::SetRole(SetRole { syntax }),
31487 SyntaxKind::SET_SESSION_AUTH => Stmt::SetSessionAuth(SetSessionAuth { syntax }),
31488 SyntaxKind::SET_TRANSACTION => Stmt::SetTransaction(SetTransaction { syntax }),
31489 SyntaxKind::SHOW => Stmt::Show(Show { syntax }),
31490 SyntaxKind::TABLE => Stmt::Table(Table { syntax }),
31491 SyntaxKind::TRUNCATE => Stmt::Truncate(Truncate { syntax }),
31492 SyntaxKind::UNLISTEN => Stmt::Unlisten(Unlisten { syntax }),
31493 SyntaxKind::UPDATE => Stmt::Update(Update { syntax }),
31494 SyntaxKind::VACUUM => Stmt::Vacuum(Vacuum { syntax }),
31495 SyntaxKind::VALUES => Stmt::Values(Values { syntax }),
31496 _ => {
31497 return None;
31498 }
31499 };
31500 Some(res)
31501 }
31502 #[inline]
31503 fn syntax(&self) -> &SyntaxNode {
31504 match self {
31505 Stmt::AlterAggregate(it) => &it.syntax,
31506 Stmt::AlterCollation(it) => &it.syntax,
31507 Stmt::AlterConversion(it) => &it.syntax,
31508 Stmt::AlterDatabase(it) => &it.syntax,
31509 Stmt::AlterDefaultPrivileges(it) => &it.syntax,
31510 Stmt::AlterDomain(it) => &it.syntax,
31511 Stmt::AlterEventTrigger(it) => &it.syntax,
31512 Stmt::AlterExtension(it) => &it.syntax,
31513 Stmt::AlterForeignDataWrapper(it) => &it.syntax,
31514 Stmt::AlterForeignTable(it) => &it.syntax,
31515 Stmt::AlterFunction(it) => &it.syntax,
31516 Stmt::AlterGroup(it) => &it.syntax,
31517 Stmt::AlterIndex(it) => &it.syntax,
31518 Stmt::AlterLanguage(it) => &it.syntax,
31519 Stmt::AlterLargeObject(it) => &it.syntax,
31520 Stmt::AlterMaterializedView(it) => &it.syntax,
31521 Stmt::AlterOperator(it) => &it.syntax,
31522 Stmt::AlterOperatorClass(it) => &it.syntax,
31523 Stmt::AlterOperatorFamily(it) => &it.syntax,
31524 Stmt::AlterPolicy(it) => &it.syntax,
31525 Stmt::AlterProcedure(it) => &it.syntax,
31526 Stmt::AlterPublication(it) => &it.syntax,
31527 Stmt::AlterRole(it) => &it.syntax,
31528 Stmt::AlterRoutine(it) => &it.syntax,
31529 Stmt::AlterRule(it) => &it.syntax,
31530 Stmt::AlterSchema(it) => &it.syntax,
31531 Stmt::AlterSequence(it) => &it.syntax,
31532 Stmt::AlterServer(it) => &it.syntax,
31533 Stmt::AlterStatistics(it) => &it.syntax,
31534 Stmt::AlterSubscription(it) => &it.syntax,
31535 Stmt::AlterSystem(it) => &it.syntax,
31536 Stmt::AlterTable(it) => &it.syntax,
31537 Stmt::AlterTablespace(it) => &it.syntax,
31538 Stmt::AlterTextSearchConfiguration(it) => &it.syntax,
31539 Stmt::AlterTextSearchDictionary(it) => &it.syntax,
31540 Stmt::AlterTextSearchParser(it) => &it.syntax,
31541 Stmt::AlterTextSearchTemplate(it) => &it.syntax,
31542 Stmt::AlterTrigger(it) => &it.syntax,
31543 Stmt::AlterType(it) => &it.syntax,
31544 Stmt::AlterUser(it) => &it.syntax,
31545 Stmt::AlterUserMapping(it) => &it.syntax,
31546 Stmt::AlterView(it) => &it.syntax,
31547 Stmt::Analyze(it) => &it.syntax,
31548 Stmt::Begin(it) => &it.syntax,
31549 Stmt::Call(it) => &it.syntax,
31550 Stmt::Checkpoint(it) => &it.syntax,
31551 Stmt::Close(it) => &it.syntax,
31552 Stmt::Cluster(it) => &it.syntax,
31553 Stmt::CommentOn(it) => &it.syntax,
31554 Stmt::Commit(it) => &it.syntax,
31555 Stmt::Copy(it) => &it.syntax,
31556 Stmt::CreateAccessMethod(it) => &it.syntax,
31557 Stmt::CreateAggregate(it) => &it.syntax,
31558 Stmt::CreateCast(it) => &it.syntax,
31559 Stmt::CreateCollation(it) => &it.syntax,
31560 Stmt::CreateConversion(it) => &it.syntax,
31561 Stmt::CreateDatabase(it) => &it.syntax,
31562 Stmt::CreateDomain(it) => &it.syntax,
31563 Stmt::CreateEventTrigger(it) => &it.syntax,
31564 Stmt::CreateExtension(it) => &it.syntax,
31565 Stmt::CreateForeignDataWrapper(it) => &it.syntax,
31566 Stmt::CreateForeignTable(it) => &it.syntax,
31567 Stmt::CreateFunction(it) => &it.syntax,
31568 Stmt::CreateGroup(it) => &it.syntax,
31569 Stmt::CreateIndex(it) => &it.syntax,
31570 Stmt::CreateLanguage(it) => &it.syntax,
31571 Stmt::CreateMaterializedView(it) => &it.syntax,
31572 Stmt::CreateOperator(it) => &it.syntax,
31573 Stmt::CreateOperatorClass(it) => &it.syntax,
31574 Stmt::CreateOperatorFamily(it) => &it.syntax,
31575 Stmt::CreatePolicy(it) => &it.syntax,
31576 Stmt::CreateProcedure(it) => &it.syntax,
31577 Stmt::CreatePublication(it) => &it.syntax,
31578 Stmt::CreateRole(it) => &it.syntax,
31579 Stmt::CreateRule(it) => &it.syntax,
31580 Stmt::CreateSchema(it) => &it.syntax,
31581 Stmt::CreateSequence(it) => &it.syntax,
31582 Stmt::CreateServer(it) => &it.syntax,
31583 Stmt::CreateStatistics(it) => &it.syntax,
31584 Stmt::CreateSubscription(it) => &it.syntax,
31585 Stmt::CreateTable(it) => &it.syntax,
31586 Stmt::CreateTableAs(it) => &it.syntax,
31587 Stmt::CreateTablespace(it) => &it.syntax,
31588 Stmt::CreateTextSearchConfiguration(it) => &it.syntax,
31589 Stmt::CreateTextSearchDictionary(it) => &it.syntax,
31590 Stmt::CreateTextSearchParser(it) => &it.syntax,
31591 Stmt::CreateTextSearchTemplate(it) => &it.syntax,
31592 Stmt::CreateTransform(it) => &it.syntax,
31593 Stmt::CreateTrigger(it) => &it.syntax,
31594 Stmt::CreateType(it) => &it.syntax,
31595 Stmt::CreateUser(it) => &it.syntax,
31596 Stmt::CreateUserMapping(it) => &it.syntax,
31597 Stmt::CreateView(it) => &it.syntax,
31598 Stmt::Deallocate(it) => &it.syntax,
31599 Stmt::Declare(it) => &it.syntax,
31600 Stmt::Delete(it) => &it.syntax,
31601 Stmt::Discard(it) => &it.syntax,
31602 Stmt::Do(it) => &it.syntax,
31603 Stmt::DropAccessMethod(it) => &it.syntax,
31604 Stmt::DropAggregate(it) => &it.syntax,
31605 Stmt::DropCast(it) => &it.syntax,
31606 Stmt::DropCollation(it) => &it.syntax,
31607 Stmt::DropConversion(it) => &it.syntax,
31608 Stmt::DropDatabase(it) => &it.syntax,
31609 Stmt::DropDomain(it) => &it.syntax,
31610 Stmt::DropEventTrigger(it) => &it.syntax,
31611 Stmt::DropExtension(it) => &it.syntax,
31612 Stmt::DropForeignDataWrapper(it) => &it.syntax,
31613 Stmt::DropForeignTable(it) => &it.syntax,
31614 Stmt::DropFunction(it) => &it.syntax,
31615 Stmt::DropGroup(it) => &it.syntax,
31616 Stmt::DropIndex(it) => &it.syntax,
31617 Stmt::DropLanguage(it) => &it.syntax,
31618 Stmt::DropMaterializedView(it) => &it.syntax,
31619 Stmt::DropOperator(it) => &it.syntax,
31620 Stmt::DropOperatorClass(it) => &it.syntax,
31621 Stmt::DropOperatorFamily(it) => &it.syntax,
31622 Stmt::DropOwned(it) => &it.syntax,
31623 Stmt::DropPolicy(it) => &it.syntax,
31624 Stmt::DropProcedure(it) => &it.syntax,
31625 Stmt::DropPublication(it) => &it.syntax,
31626 Stmt::DropRole(it) => &it.syntax,
31627 Stmt::DropRoutine(it) => &it.syntax,
31628 Stmt::DropRule(it) => &it.syntax,
31629 Stmt::DropSchema(it) => &it.syntax,
31630 Stmt::DropSequence(it) => &it.syntax,
31631 Stmt::DropServer(it) => &it.syntax,
31632 Stmt::DropStatistics(it) => &it.syntax,
31633 Stmt::DropSubscription(it) => &it.syntax,
31634 Stmt::DropTable(it) => &it.syntax,
31635 Stmt::DropTablespace(it) => &it.syntax,
31636 Stmt::DropTextSearchConfig(it) => &it.syntax,
31637 Stmt::DropTextSearchDict(it) => &it.syntax,
31638 Stmt::DropTextSearchParser(it) => &it.syntax,
31639 Stmt::DropTextSearchTemplate(it) => &it.syntax,
31640 Stmt::DropTransform(it) => &it.syntax,
31641 Stmt::DropTrigger(it) => &it.syntax,
31642 Stmt::DropType(it) => &it.syntax,
31643 Stmt::DropUser(it) => &it.syntax,
31644 Stmt::DropUserMapping(it) => &it.syntax,
31645 Stmt::DropView(it) => &it.syntax,
31646 Stmt::Execute(it) => &it.syntax,
31647 Stmt::Explain(it) => &it.syntax,
31648 Stmt::Fetch(it) => &it.syntax,
31649 Stmt::Grant(it) => &it.syntax,
31650 Stmt::ImportForeignSchema(it) => &it.syntax,
31651 Stmt::Insert(it) => &it.syntax,
31652 Stmt::Listen(it) => &it.syntax,
31653 Stmt::Load(it) => &it.syntax,
31654 Stmt::Lock(it) => &it.syntax,
31655 Stmt::Merge(it) => &it.syntax,
31656 Stmt::Move(it) => &it.syntax,
31657 Stmt::Notify(it) => &it.syntax,
31658 Stmt::ParenSelect(it) => &it.syntax,
31659 Stmt::Prepare(it) => &it.syntax,
31660 Stmt::PrepareTransaction(it) => &it.syntax,
31661 Stmt::Reassign(it) => &it.syntax,
31662 Stmt::Refresh(it) => &it.syntax,
31663 Stmt::Reindex(it) => &it.syntax,
31664 Stmt::ReleaseSavepoint(it) => &it.syntax,
31665 Stmt::Reset(it) => &it.syntax,
31666 Stmt::ResetSessionAuth(it) => &it.syntax,
31667 Stmt::Revoke(it) => &it.syntax,
31668 Stmt::Rollback(it) => &it.syntax,
31669 Stmt::Savepoint(it) => &it.syntax,
31670 Stmt::SecurityLabel(it) => &it.syntax,
31671 Stmt::Select(it) => &it.syntax,
31672 Stmt::SelectInto(it) => &it.syntax,
31673 Stmt::Set(it) => &it.syntax,
31674 Stmt::SetConstraints(it) => &it.syntax,
31675 Stmt::SetRole(it) => &it.syntax,
31676 Stmt::SetSessionAuth(it) => &it.syntax,
31677 Stmt::SetTransaction(it) => &it.syntax,
31678 Stmt::Show(it) => &it.syntax,
31679 Stmt::Table(it) => &it.syntax,
31680 Stmt::Truncate(it) => &it.syntax,
31681 Stmt::Unlisten(it) => &it.syntax,
31682 Stmt::Update(it) => &it.syntax,
31683 Stmt::Vacuum(it) => &it.syntax,
31684 Stmt::Values(it) => &it.syntax,
31685 }
31686 }
31687}
31688impl From<AlterAggregate> for Stmt {
31689 #[inline]
31690 fn from(node: AlterAggregate) -> Stmt {
31691 Stmt::AlterAggregate(node)
31692 }
31693}
31694impl From<AlterCollation> for Stmt {
31695 #[inline]
31696 fn from(node: AlterCollation) -> Stmt {
31697 Stmt::AlterCollation(node)
31698 }
31699}
31700impl From<AlterConversion> for Stmt {
31701 #[inline]
31702 fn from(node: AlterConversion) -> Stmt {
31703 Stmt::AlterConversion(node)
31704 }
31705}
31706impl From<AlterDatabase> for Stmt {
31707 #[inline]
31708 fn from(node: AlterDatabase) -> Stmt {
31709 Stmt::AlterDatabase(node)
31710 }
31711}
31712impl From<AlterDefaultPrivileges> for Stmt {
31713 #[inline]
31714 fn from(node: AlterDefaultPrivileges) -> Stmt {
31715 Stmt::AlterDefaultPrivileges(node)
31716 }
31717}
31718impl From<AlterDomain> for Stmt {
31719 #[inline]
31720 fn from(node: AlterDomain) -> Stmt {
31721 Stmt::AlterDomain(node)
31722 }
31723}
31724impl From<AlterEventTrigger> for Stmt {
31725 #[inline]
31726 fn from(node: AlterEventTrigger) -> Stmt {
31727 Stmt::AlterEventTrigger(node)
31728 }
31729}
31730impl From<AlterExtension> for Stmt {
31731 #[inline]
31732 fn from(node: AlterExtension) -> Stmt {
31733 Stmt::AlterExtension(node)
31734 }
31735}
31736impl From<AlterForeignDataWrapper> for Stmt {
31737 #[inline]
31738 fn from(node: AlterForeignDataWrapper) -> Stmt {
31739 Stmt::AlterForeignDataWrapper(node)
31740 }
31741}
31742impl From<AlterForeignTable> for Stmt {
31743 #[inline]
31744 fn from(node: AlterForeignTable) -> Stmt {
31745 Stmt::AlterForeignTable(node)
31746 }
31747}
31748impl From<AlterFunction> for Stmt {
31749 #[inline]
31750 fn from(node: AlterFunction) -> Stmt {
31751 Stmt::AlterFunction(node)
31752 }
31753}
31754impl From<AlterGroup> for Stmt {
31755 #[inline]
31756 fn from(node: AlterGroup) -> Stmt {
31757 Stmt::AlterGroup(node)
31758 }
31759}
31760impl From<AlterIndex> for Stmt {
31761 #[inline]
31762 fn from(node: AlterIndex) -> Stmt {
31763 Stmt::AlterIndex(node)
31764 }
31765}
31766impl From<AlterLanguage> for Stmt {
31767 #[inline]
31768 fn from(node: AlterLanguage) -> Stmt {
31769 Stmt::AlterLanguage(node)
31770 }
31771}
31772impl From<AlterLargeObject> for Stmt {
31773 #[inline]
31774 fn from(node: AlterLargeObject) -> Stmt {
31775 Stmt::AlterLargeObject(node)
31776 }
31777}
31778impl From<AlterMaterializedView> for Stmt {
31779 #[inline]
31780 fn from(node: AlterMaterializedView) -> Stmt {
31781 Stmt::AlterMaterializedView(node)
31782 }
31783}
31784impl From<AlterOperator> for Stmt {
31785 #[inline]
31786 fn from(node: AlterOperator) -> Stmt {
31787 Stmt::AlterOperator(node)
31788 }
31789}
31790impl From<AlterOperatorClass> for Stmt {
31791 #[inline]
31792 fn from(node: AlterOperatorClass) -> Stmt {
31793 Stmt::AlterOperatorClass(node)
31794 }
31795}
31796impl From<AlterOperatorFamily> for Stmt {
31797 #[inline]
31798 fn from(node: AlterOperatorFamily) -> Stmt {
31799 Stmt::AlterOperatorFamily(node)
31800 }
31801}
31802impl From<AlterPolicy> for Stmt {
31803 #[inline]
31804 fn from(node: AlterPolicy) -> Stmt {
31805 Stmt::AlterPolicy(node)
31806 }
31807}
31808impl From<AlterProcedure> for Stmt {
31809 #[inline]
31810 fn from(node: AlterProcedure) -> Stmt {
31811 Stmt::AlterProcedure(node)
31812 }
31813}
31814impl From<AlterPublication> for Stmt {
31815 #[inline]
31816 fn from(node: AlterPublication) -> Stmt {
31817 Stmt::AlterPublication(node)
31818 }
31819}
31820impl From<AlterRole> for Stmt {
31821 #[inline]
31822 fn from(node: AlterRole) -> Stmt {
31823 Stmt::AlterRole(node)
31824 }
31825}
31826impl From<AlterRoutine> for Stmt {
31827 #[inline]
31828 fn from(node: AlterRoutine) -> Stmt {
31829 Stmt::AlterRoutine(node)
31830 }
31831}
31832impl From<AlterRule> for Stmt {
31833 #[inline]
31834 fn from(node: AlterRule) -> Stmt {
31835 Stmt::AlterRule(node)
31836 }
31837}
31838impl From<AlterSchema> for Stmt {
31839 #[inline]
31840 fn from(node: AlterSchema) -> Stmt {
31841 Stmt::AlterSchema(node)
31842 }
31843}
31844impl From<AlterSequence> for Stmt {
31845 #[inline]
31846 fn from(node: AlterSequence) -> Stmt {
31847 Stmt::AlterSequence(node)
31848 }
31849}
31850impl From<AlterServer> for Stmt {
31851 #[inline]
31852 fn from(node: AlterServer) -> Stmt {
31853 Stmt::AlterServer(node)
31854 }
31855}
31856impl From<AlterStatistics> for Stmt {
31857 #[inline]
31858 fn from(node: AlterStatistics) -> Stmt {
31859 Stmt::AlterStatistics(node)
31860 }
31861}
31862impl From<AlterSubscription> for Stmt {
31863 #[inline]
31864 fn from(node: AlterSubscription) -> Stmt {
31865 Stmt::AlterSubscription(node)
31866 }
31867}
31868impl From<AlterSystem> for Stmt {
31869 #[inline]
31870 fn from(node: AlterSystem) -> Stmt {
31871 Stmt::AlterSystem(node)
31872 }
31873}
31874impl From<AlterTable> for Stmt {
31875 #[inline]
31876 fn from(node: AlterTable) -> Stmt {
31877 Stmt::AlterTable(node)
31878 }
31879}
31880impl From<AlterTablespace> for Stmt {
31881 #[inline]
31882 fn from(node: AlterTablespace) -> Stmt {
31883 Stmt::AlterTablespace(node)
31884 }
31885}
31886impl From<AlterTextSearchConfiguration> for Stmt {
31887 #[inline]
31888 fn from(node: AlterTextSearchConfiguration) -> Stmt {
31889 Stmt::AlterTextSearchConfiguration(node)
31890 }
31891}
31892impl From<AlterTextSearchDictionary> for Stmt {
31893 #[inline]
31894 fn from(node: AlterTextSearchDictionary) -> Stmt {
31895 Stmt::AlterTextSearchDictionary(node)
31896 }
31897}
31898impl From<AlterTextSearchParser> for Stmt {
31899 #[inline]
31900 fn from(node: AlterTextSearchParser) -> Stmt {
31901 Stmt::AlterTextSearchParser(node)
31902 }
31903}
31904impl From<AlterTextSearchTemplate> for Stmt {
31905 #[inline]
31906 fn from(node: AlterTextSearchTemplate) -> Stmt {
31907 Stmt::AlterTextSearchTemplate(node)
31908 }
31909}
31910impl From<AlterTrigger> for Stmt {
31911 #[inline]
31912 fn from(node: AlterTrigger) -> Stmt {
31913 Stmt::AlterTrigger(node)
31914 }
31915}
31916impl From<AlterType> for Stmt {
31917 #[inline]
31918 fn from(node: AlterType) -> Stmt {
31919 Stmt::AlterType(node)
31920 }
31921}
31922impl From<AlterUser> for Stmt {
31923 #[inline]
31924 fn from(node: AlterUser) -> Stmt {
31925 Stmt::AlterUser(node)
31926 }
31927}
31928impl From<AlterUserMapping> for Stmt {
31929 #[inline]
31930 fn from(node: AlterUserMapping) -> Stmt {
31931 Stmt::AlterUserMapping(node)
31932 }
31933}
31934impl From<AlterView> for Stmt {
31935 #[inline]
31936 fn from(node: AlterView) -> Stmt {
31937 Stmt::AlterView(node)
31938 }
31939}
31940impl From<Analyze> for Stmt {
31941 #[inline]
31942 fn from(node: Analyze) -> Stmt {
31943 Stmt::Analyze(node)
31944 }
31945}
31946impl From<Begin> for Stmt {
31947 #[inline]
31948 fn from(node: Begin) -> Stmt {
31949 Stmt::Begin(node)
31950 }
31951}
31952impl From<Call> for Stmt {
31953 #[inline]
31954 fn from(node: Call) -> Stmt {
31955 Stmt::Call(node)
31956 }
31957}
31958impl From<Checkpoint> for Stmt {
31959 #[inline]
31960 fn from(node: Checkpoint) -> Stmt {
31961 Stmt::Checkpoint(node)
31962 }
31963}
31964impl From<Close> for Stmt {
31965 #[inline]
31966 fn from(node: Close) -> Stmt {
31967 Stmt::Close(node)
31968 }
31969}
31970impl From<Cluster> for Stmt {
31971 #[inline]
31972 fn from(node: Cluster) -> Stmt {
31973 Stmt::Cluster(node)
31974 }
31975}
31976impl From<CommentOn> for Stmt {
31977 #[inline]
31978 fn from(node: CommentOn) -> Stmt {
31979 Stmt::CommentOn(node)
31980 }
31981}
31982impl From<Commit> for Stmt {
31983 #[inline]
31984 fn from(node: Commit) -> Stmt {
31985 Stmt::Commit(node)
31986 }
31987}
31988impl From<Copy> for Stmt {
31989 #[inline]
31990 fn from(node: Copy) -> Stmt {
31991 Stmt::Copy(node)
31992 }
31993}
31994impl From<CreateAccessMethod> for Stmt {
31995 #[inline]
31996 fn from(node: CreateAccessMethod) -> Stmt {
31997 Stmt::CreateAccessMethod(node)
31998 }
31999}
32000impl From<CreateAggregate> for Stmt {
32001 #[inline]
32002 fn from(node: CreateAggregate) -> Stmt {
32003 Stmt::CreateAggregate(node)
32004 }
32005}
32006impl From<CreateCast> for Stmt {
32007 #[inline]
32008 fn from(node: CreateCast) -> Stmt {
32009 Stmt::CreateCast(node)
32010 }
32011}
32012impl From<CreateCollation> for Stmt {
32013 #[inline]
32014 fn from(node: CreateCollation) -> Stmt {
32015 Stmt::CreateCollation(node)
32016 }
32017}
32018impl From<CreateConversion> for Stmt {
32019 #[inline]
32020 fn from(node: CreateConversion) -> Stmt {
32021 Stmt::CreateConversion(node)
32022 }
32023}
32024impl From<CreateDatabase> for Stmt {
32025 #[inline]
32026 fn from(node: CreateDatabase) -> Stmt {
32027 Stmt::CreateDatabase(node)
32028 }
32029}
32030impl From<CreateDomain> for Stmt {
32031 #[inline]
32032 fn from(node: CreateDomain) -> Stmt {
32033 Stmt::CreateDomain(node)
32034 }
32035}
32036impl From<CreateEventTrigger> for Stmt {
32037 #[inline]
32038 fn from(node: CreateEventTrigger) -> Stmt {
32039 Stmt::CreateEventTrigger(node)
32040 }
32041}
32042impl From<CreateExtension> for Stmt {
32043 #[inline]
32044 fn from(node: CreateExtension) -> Stmt {
32045 Stmt::CreateExtension(node)
32046 }
32047}
32048impl From<CreateForeignDataWrapper> for Stmt {
32049 #[inline]
32050 fn from(node: CreateForeignDataWrapper) -> Stmt {
32051 Stmt::CreateForeignDataWrapper(node)
32052 }
32053}
32054impl From<CreateForeignTable> for Stmt {
32055 #[inline]
32056 fn from(node: CreateForeignTable) -> Stmt {
32057 Stmt::CreateForeignTable(node)
32058 }
32059}
32060impl From<CreateFunction> for Stmt {
32061 #[inline]
32062 fn from(node: CreateFunction) -> Stmt {
32063 Stmt::CreateFunction(node)
32064 }
32065}
32066impl From<CreateGroup> for Stmt {
32067 #[inline]
32068 fn from(node: CreateGroup) -> Stmt {
32069 Stmt::CreateGroup(node)
32070 }
32071}
32072impl From<CreateIndex> for Stmt {
32073 #[inline]
32074 fn from(node: CreateIndex) -> Stmt {
32075 Stmt::CreateIndex(node)
32076 }
32077}
32078impl From<CreateLanguage> for Stmt {
32079 #[inline]
32080 fn from(node: CreateLanguage) -> Stmt {
32081 Stmt::CreateLanguage(node)
32082 }
32083}
32084impl From<CreateMaterializedView> for Stmt {
32085 #[inline]
32086 fn from(node: CreateMaterializedView) -> Stmt {
32087 Stmt::CreateMaterializedView(node)
32088 }
32089}
32090impl From<CreateOperator> for Stmt {
32091 #[inline]
32092 fn from(node: CreateOperator) -> Stmt {
32093 Stmt::CreateOperator(node)
32094 }
32095}
32096impl From<CreateOperatorClass> for Stmt {
32097 #[inline]
32098 fn from(node: CreateOperatorClass) -> Stmt {
32099 Stmt::CreateOperatorClass(node)
32100 }
32101}
32102impl From<CreateOperatorFamily> for Stmt {
32103 #[inline]
32104 fn from(node: CreateOperatorFamily) -> Stmt {
32105 Stmt::CreateOperatorFamily(node)
32106 }
32107}
32108impl From<CreatePolicy> for Stmt {
32109 #[inline]
32110 fn from(node: CreatePolicy) -> Stmt {
32111 Stmt::CreatePolicy(node)
32112 }
32113}
32114impl From<CreateProcedure> for Stmt {
32115 #[inline]
32116 fn from(node: CreateProcedure) -> Stmt {
32117 Stmt::CreateProcedure(node)
32118 }
32119}
32120impl From<CreatePublication> for Stmt {
32121 #[inline]
32122 fn from(node: CreatePublication) -> Stmt {
32123 Stmt::CreatePublication(node)
32124 }
32125}
32126impl From<CreateRole> for Stmt {
32127 #[inline]
32128 fn from(node: CreateRole) -> Stmt {
32129 Stmt::CreateRole(node)
32130 }
32131}
32132impl From<CreateRule> for Stmt {
32133 #[inline]
32134 fn from(node: CreateRule) -> Stmt {
32135 Stmt::CreateRule(node)
32136 }
32137}
32138impl From<CreateSchema> for Stmt {
32139 #[inline]
32140 fn from(node: CreateSchema) -> Stmt {
32141 Stmt::CreateSchema(node)
32142 }
32143}
32144impl From<CreateSequence> for Stmt {
32145 #[inline]
32146 fn from(node: CreateSequence) -> Stmt {
32147 Stmt::CreateSequence(node)
32148 }
32149}
32150impl From<CreateServer> for Stmt {
32151 #[inline]
32152 fn from(node: CreateServer) -> Stmt {
32153 Stmt::CreateServer(node)
32154 }
32155}
32156impl From<CreateStatistics> for Stmt {
32157 #[inline]
32158 fn from(node: CreateStatistics) -> Stmt {
32159 Stmt::CreateStatistics(node)
32160 }
32161}
32162impl From<CreateSubscription> for Stmt {
32163 #[inline]
32164 fn from(node: CreateSubscription) -> Stmt {
32165 Stmt::CreateSubscription(node)
32166 }
32167}
32168impl From<CreateTable> for Stmt {
32169 #[inline]
32170 fn from(node: CreateTable) -> Stmt {
32171 Stmt::CreateTable(node)
32172 }
32173}
32174impl From<CreateTableAs> for Stmt {
32175 #[inline]
32176 fn from(node: CreateTableAs) -> Stmt {
32177 Stmt::CreateTableAs(node)
32178 }
32179}
32180impl From<CreateTablespace> for Stmt {
32181 #[inline]
32182 fn from(node: CreateTablespace) -> Stmt {
32183 Stmt::CreateTablespace(node)
32184 }
32185}
32186impl From<CreateTextSearchConfiguration> for Stmt {
32187 #[inline]
32188 fn from(node: CreateTextSearchConfiguration) -> Stmt {
32189 Stmt::CreateTextSearchConfiguration(node)
32190 }
32191}
32192impl From<CreateTextSearchDictionary> for Stmt {
32193 #[inline]
32194 fn from(node: CreateTextSearchDictionary) -> Stmt {
32195 Stmt::CreateTextSearchDictionary(node)
32196 }
32197}
32198impl From<CreateTextSearchParser> for Stmt {
32199 #[inline]
32200 fn from(node: CreateTextSearchParser) -> Stmt {
32201 Stmt::CreateTextSearchParser(node)
32202 }
32203}
32204impl From<CreateTextSearchTemplate> for Stmt {
32205 #[inline]
32206 fn from(node: CreateTextSearchTemplate) -> Stmt {
32207 Stmt::CreateTextSearchTemplate(node)
32208 }
32209}
32210impl From<CreateTransform> for Stmt {
32211 #[inline]
32212 fn from(node: CreateTransform) -> Stmt {
32213 Stmt::CreateTransform(node)
32214 }
32215}
32216impl From<CreateTrigger> for Stmt {
32217 #[inline]
32218 fn from(node: CreateTrigger) -> Stmt {
32219 Stmt::CreateTrigger(node)
32220 }
32221}
32222impl From<CreateType> for Stmt {
32223 #[inline]
32224 fn from(node: CreateType) -> Stmt {
32225 Stmt::CreateType(node)
32226 }
32227}
32228impl From<CreateUser> for Stmt {
32229 #[inline]
32230 fn from(node: CreateUser) -> Stmt {
32231 Stmt::CreateUser(node)
32232 }
32233}
32234impl From<CreateUserMapping> for Stmt {
32235 #[inline]
32236 fn from(node: CreateUserMapping) -> Stmt {
32237 Stmt::CreateUserMapping(node)
32238 }
32239}
32240impl From<CreateView> for Stmt {
32241 #[inline]
32242 fn from(node: CreateView) -> Stmt {
32243 Stmt::CreateView(node)
32244 }
32245}
32246impl From<Deallocate> for Stmt {
32247 #[inline]
32248 fn from(node: Deallocate) -> Stmt {
32249 Stmt::Deallocate(node)
32250 }
32251}
32252impl From<Declare> for Stmt {
32253 #[inline]
32254 fn from(node: Declare) -> Stmt {
32255 Stmt::Declare(node)
32256 }
32257}
32258impl From<Delete> for Stmt {
32259 #[inline]
32260 fn from(node: Delete) -> Stmt {
32261 Stmt::Delete(node)
32262 }
32263}
32264impl From<Discard> for Stmt {
32265 #[inline]
32266 fn from(node: Discard) -> Stmt {
32267 Stmt::Discard(node)
32268 }
32269}
32270impl From<Do> for Stmt {
32271 #[inline]
32272 fn from(node: Do) -> Stmt {
32273 Stmt::Do(node)
32274 }
32275}
32276impl From<DropAccessMethod> for Stmt {
32277 #[inline]
32278 fn from(node: DropAccessMethod) -> Stmt {
32279 Stmt::DropAccessMethod(node)
32280 }
32281}
32282impl From<DropAggregate> for Stmt {
32283 #[inline]
32284 fn from(node: DropAggregate) -> Stmt {
32285 Stmt::DropAggregate(node)
32286 }
32287}
32288impl From<DropCast> for Stmt {
32289 #[inline]
32290 fn from(node: DropCast) -> Stmt {
32291 Stmt::DropCast(node)
32292 }
32293}
32294impl From<DropCollation> for Stmt {
32295 #[inline]
32296 fn from(node: DropCollation) -> Stmt {
32297 Stmt::DropCollation(node)
32298 }
32299}
32300impl From<DropConversion> for Stmt {
32301 #[inline]
32302 fn from(node: DropConversion) -> Stmt {
32303 Stmt::DropConversion(node)
32304 }
32305}
32306impl From<DropDatabase> for Stmt {
32307 #[inline]
32308 fn from(node: DropDatabase) -> Stmt {
32309 Stmt::DropDatabase(node)
32310 }
32311}
32312impl From<DropDomain> for Stmt {
32313 #[inline]
32314 fn from(node: DropDomain) -> Stmt {
32315 Stmt::DropDomain(node)
32316 }
32317}
32318impl From<DropEventTrigger> for Stmt {
32319 #[inline]
32320 fn from(node: DropEventTrigger) -> Stmt {
32321 Stmt::DropEventTrigger(node)
32322 }
32323}
32324impl From<DropExtension> for Stmt {
32325 #[inline]
32326 fn from(node: DropExtension) -> Stmt {
32327 Stmt::DropExtension(node)
32328 }
32329}
32330impl From<DropForeignDataWrapper> for Stmt {
32331 #[inline]
32332 fn from(node: DropForeignDataWrapper) -> Stmt {
32333 Stmt::DropForeignDataWrapper(node)
32334 }
32335}
32336impl From<DropForeignTable> for Stmt {
32337 #[inline]
32338 fn from(node: DropForeignTable) -> Stmt {
32339 Stmt::DropForeignTable(node)
32340 }
32341}
32342impl From<DropFunction> for Stmt {
32343 #[inline]
32344 fn from(node: DropFunction) -> Stmt {
32345 Stmt::DropFunction(node)
32346 }
32347}
32348impl From<DropGroup> for Stmt {
32349 #[inline]
32350 fn from(node: DropGroup) -> Stmt {
32351 Stmt::DropGroup(node)
32352 }
32353}
32354impl From<DropIndex> for Stmt {
32355 #[inline]
32356 fn from(node: DropIndex) -> Stmt {
32357 Stmt::DropIndex(node)
32358 }
32359}
32360impl From<DropLanguage> for Stmt {
32361 #[inline]
32362 fn from(node: DropLanguage) -> Stmt {
32363 Stmt::DropLanguage(node)
32364 }
32365}
32366impl From<DropMaterializedView> for Stmt {
32367 #[inline]
32368 fn from(node: DropMaterializedView) -> Stmt {
32369 Stmt::DropMaterializedView(node)
32370 }
32371}
32372impl From<DropOperator> for Stmt {
32373 #[inline]
32374 fn from(node: DropOperator) -> Stmt {
32375 Stmt::DropOperator(node)
32376 }
32377}
32378impl From<DropOperatorClass> for Stmt {
32379 #[inline]
32380 fn from(node: DropOperatorClass) -> Stmt {
32381 Stmt::DropOperatorClass(node)
32382 }
32383}
32384impl From<DropOperatorFamily> for Stmt {
32385 #[inline]
32386 fn from(node: DropOperatorFamily) -> Stmt {
32387 Stmt::DropOperatorFamily(node)
32388 }
32389}
32390impl From<DropOwned> for Stmt {
32391 #[inline]
32392 fn from(node: DropOwned) -> Stmt {
32393 Stmt::DropOwned(node)
32394 }
32395}
32396impl From<DropPolicy> for Stmt {
32397 #[inline]
32398 fn from(node: DropPolicy) -> Stmt {
32399 Stmt::DropPolicy(node)
32400 }
32401}
32402impl From<DropProcedure> for Stmt {
32403 #[inline]
32404 fn from(node: DropProcedure) -> Stmt {
32405 Stmt::DropProcedure(node)
32406 }
32407}
32408impl From<DropPublication> for Stmt {
32409 #[inline]
32410 fn from(node: DropPublication) -> Stmt {
32411 Stmt::DropPublication(node)
32412 }
32413}
32414impl From<DropRole> for Stmt {
32415 #[inline]
32416 fn from(node: DropRole) -> Stmt {
32417 Stmt::DropRole(node)
32418 }
32419}
32420impl From<DropRoutine> for Stmt {
32421 #[inline]
32422 fn from(node: DropRoutine) -> Stmt {
32423 Stmt::DropRoutine(node)
32424 }
32425}
32426impl From<DropRule> for Stmt {
32427 #[inline]
32428 fn from(node: DropRule) -> Stmt {
32429 Stmt::DropRule(node)
32430 }
32431}
32432impl From<DropSchema> for Stmt {
32433 #[inline]
32434 fn from(node: DropSchema) -> Stmt {
32435 Stmt::DropSchema(node)
32436 }
32437}
32438impl From<DropSequence> for Stmt {
32439 #[inline]
32440 fn from(node: DropSequence) -> Stmt {
32441 Stmt::DropSequence(node)
32442 }
32443}
32444impl From<DropServer> for Stmt {
32445 #[inline]
32446 fn from(node: DropServer) -> Stmt {
32447 Stmt::DropServer(node)
32448 }
32449}
32450impl From<DropStatistics> for Stmt {
32451 #[inline]
32452 fn from(node: DropStatistics) -> Stmt {
32453 Stmt::DropStatistics(node)
32454 }
32455}
32456impl From<DropSubscription> for Stmt {
32457 #[inline]
32458 fn from(node: DropSubscription) -> Stmt {
32459 Stmt::DropSubscription(node)
32460 }
32461}
32462impl From<DropTable> for Stmt {
32463 #[inline]
32464 fn from(node: DropTable) -> Stmt {
32465 Stmt::DropTable(node)
32466 }
32467}
32468impl From<DropTablespace> for Stmt {
32469 #[inline]
32470 fn from(node: DropTablespace) -> Stmt {
32471 Stmt::DropTablespace(node)
32472 }
32473}
32474impl From<DropTextSearchConfig> for Stmt {
32475 #[inline]
32476 fn from(node: DropTextSearchConfig) -> Stmt {
32477 Stmt::DropTextSearchConfig(node)
32478 }
32479}
32480impl From<DropTextSearchDict> for Stmt {
32481 #[inline]
32482 fn from(node: DropTextSearchDict) -> Stmt {
32483 Stmt::DropTextSearchDict(node)
32484 }
32485}
32486impl From<DropTextSearchParser> for Stmt {
32487 #[inline]
32488 fn from(node: DropTextSearchParser) -> Stmt {
32489 Stmt::DropTextSearchParser(node)
32490 }
32491}
32492impl From<DropTextSearchTemplate> for Stmt {
32493 #[inline]
32494 fn from(node: DropTextSearchTemplate) -> Stmt {
32495 Stmt::DropTextSearchTemplate(node)
32496 }
32497}
32498impl From<DropTransform> for Stmt {
32499 #[inline]
32500 fn from(node: DropTransform) -> Stmt {
32501 Stmt::DropTransform(node)
32502 }
32503}
32504impl From<DropTrigger> for Stmt {
32505 #[inline]
32506 fn from(node: DropTrigger) -> Stmt {
32507 Stmt::DropTrigger(node)
32508 }
32509}
32510impl From<DropType> for Stmt {
32511 #[inline]
32512 fn from(node: DropType) -> Stmt {
32513 Stmt::DropType(node)
32514 }
32515}
32516impl From<DropUser> for Stmt {
32517 #[inline]
32518 fn from(node: DropUser) -> Stmt {
32519 Stmt::DropUser(node)
32520 }
32521}
32522impl From<DropUserMapping> for Stmt {
32523 #[inline]
32524 fn from(node: DropUserMapping) -> Stmt {
32525 Stmt::DropUserMapping(node)
32526 }
32527}
32528impl From<DropView> for Stmt {
32529 #[inline]
32530 fn from(node: DropView) -> Stmt {
32531 Stmt::DropView(node)
32532 }
32533}
32534impl From<Execute> for Stmt {
32535 #[inline]
32536 fn from(node: Execute) -> Stmt {
32537 Stmt::Execute(node)
32538 }
32539}
32540impl From<Explain> for Stmt {
32541 #[inline]
32542 fn from(node: Explain) -> Stmt {
32543 Stmt::Explain(node)
32544 }
32545}
32546impl From<Fetch> for Stmt {
32547 #[inline]
32548 fn from(node: Fetch) -> Stmt {
32549 Stmt::Fetch(node)
32550 }
32551}
32552impl From<Grant> for Stmt {
32553 #[inline]
32554 fn from(node: Grant) -> Stmt {
32555 Stmt::Grant(node)
32556 }
32557}
32558impl From<ImportForeignSchema> for Stmt {
32559 #[inline]
32560 fn from(node: ImportForeignSchema) -> Stmt {
32561 Stmt::ImportForeignSchema(node)
32562 }
32563}
32564impl From<Insert> for Stmt {
32565 #[inline]
32566 fn from(node: Insert) -> Stmt {
32567 Stmt::Insert(node)
32568 }
32569}
32570impl From<Listen> for Stmt {
32571 #[inline]
32572 fn from(node: Listen) -> Stmt {
32573 Stmt::Listen(node)
32574 }
32575}
32576impl From<Load> for Stmt {
32577 #[inline]
32578 fn from(node: Load) -> Stmt {
32579 Stmt::Load(node)
32580 }
32581}
32582impl From<Lock> for Stmt {
32583 #[inline]
32584 fn from(node: Lock) -> Stmt {
32585 Stmt::Lock(node)
32586 }
32587}
32588impl From<Merge> for Stmt {
32589 #[inline]
32590 fn from(node: Merge) -> Stmt {
32591 Stmt::Merge(node)
32592 }
32593}
32594impl From<Move> for Stmt {
32595 #[inline]
32596 fn from(node: Move) -> Stmt {
32597 Stmt::Move(node)
32598 }
32599}
32600impl From<Notify> for Stmt {
32601 #[inline]
32602 fn from(node: Notify) -> Stmt {
32603 Stmt::Notify(node)
32604 }
32605}
32606impl From<ParenSelect> for Stmt {
32607 #[inline]
32608 fn from(node: ParenSelect) -> Stmt {
32609 Stmt::ParenSelect(node)
32610 }
32611}
32612impl From<Prepare> for Stmt {
32613 #[inline]
32614 fn from(node: Prepare) -> Stmt {
32615 Stmt::Prepare(node)
32616 }
32617}
32618impl From<PrepareTransaction> for Stmt {
32619 #[inline]
32620 fn from(node: PrepareTransaction) -> Stmt {
32621 Stmt::PrepareTransaction(node)
32622 }
32623}
32624impl From<Reassign> for Stmt {
32625 #[inline]
32626 fn from(node: Reassign) -> Stmt {
32627 Stmt::Reassign(node)
32628 }
32629}
32630impl From<Refresh> for Stmt {
32631 #[inline]
32632 fn from(node: Refresh) -> Stmt {
32633 Stmt::Refresh(node)
32634 }
32635}
32636impl From<Reindex> for Stmt {
32637 #[inline]
32638 fn from(node: Reindex) -> Stmt {
32639 Stmt::Reindex(node)
32640 }
32641}
32642impl From<ReleaseSavepoint> for Stmt {
32643 #[inline]
32644 fn from(node: ReleaseSavepoint) -> Stmt {
32645 Stmt::ReleaseSavepoint(node)
32646 }
32647}
32648impl From<Reset> for Stmt {
32649 #[inline]
32650 fn from(node: Reset) -> Stmt {
32651 Stmt::Reset(node)
32652 }
32653}
32654impl From<ResetSessionAuth> for Stmt {
32655 #[inline]
32656 fn from(node: ResetSessionAuth) -> Stmt {
32657 Stmt::ResetSessionAuth(node)
32658 }
32659}
32660impl From<Revoke> for Stmt {
32661 #[inline]
32662 fn from(node: Revoke) -> Stmt {
32663 Stmt::Revoke(node)
32664 }
32665}
32666impl From<Rollback> for Stmt {
32667 #[inline]
32668 fn from(node: Rollback) -> Stmt {
32669 Stmt::Rollback(node)
32670 }
32671}
32672impl From<Savepoint> for Stmt {
32673 #[inline]
32674 fn from(node: Savepoint) -> Stmt {
32675 Stmt::Savepoint(node)
32676 }
32677}
32678impl From<SecurityLabel> for Stmt {
32679 #[inline]
32680 fn from(node: SecurityLabel) -> Stmt {
32681 Stmt::SecurityLabel(node)
32682 }
32683}
32684impl From<Select> for Stmt {
32685 #[inline]
32686 fn from(node: Select) -> Stmt {
32687 Stmt::Select(node)
32688 }
32689}
32690impl From<SelectInto> for Stmt {
32691 #[inline]
32692 fn from(node: SelectInto) -> Stmt {
32693 Stmt::SelectInto(node)
32694 }
32695}
32696impl From<Set> for Stmt {
32697 #[inline]
32698 fn from(node: Set) -> Stmt {
32699 Stmt::Set(node)
32700 }
32701}
32702impl From<SetConstraints> for Stmt {
32703 #[inline]
32704 fn from(node: SetConstraints) -> Stmt {
32705 Stmt::SetConstraints(node)
32706 }
32707}
32708impl From<SetRole> for Stmt {
32709 #[inline]
32710 fn from(node: SetRole) -> Stmt {
32711 Stmt::SetRole(node)
32712 }
32713}
32714impl From<SetSessionAuth> for Stmt {
32715 #[inline]
32716 fn from(node: SetSessionAuth) -> Stmt {
32717 Stmt::SetSessionAuth(node)
32718 }
32719}
32720impl From<SetTransaction> for Stmt {
32721 #[inline]
32722 fn from(node: SetTransaction) -> Stmt {
32723 Stmt::SetTransaction(node)
32724 }
32725}
32726impl From<Show> for Stmt {
32727 #[inline]
32728 fn from(node: Show) -> Stmt {
32729 Stmt::Show(node)
32730 }
32731}
32732impl From<Table> for Stmt {
32733 #[inline]
32734 fn from(node: Table) -> Stmt {
32735 Stmt::Table(node)
32736 }
32737}
32738impl From<Truncate> for Stmt {
32739 #[inline]
32740 fn from(node: Truncate) -> Stmt {
32741 Stmt::Truncate(node)
32742 }
32743}
32744impl From<Unlisten> for Stmt {
32745 #[inline]
32746 fn from(node: Unlisten) -> Stmt {
32747 Stmt::Unlisten(node)
32748 }
32749}
32750impl From<Update> for Stmt {
32751 #[inline]
32752 fn from(node: Update) -> Stmt {
32753 Stmt::Update(node)
32754 }
32755}
32756impl From<Vacuum> for Stmt {
32757 #[inline]
32758 fn from(node: Vacuum) -> Stmt {
32759 Stmt::Vacuum(node)
32760 }
32761}
32762impl From<Values> for Stmt {
32763 #[inline]
32764 fn from(node: Values) -> Stmt {
32765 Stmt::Values(node)
32766 }
32767}
32768impl AstNode for TableArg {
32769 #[inline]
32770 fn can_cast(kind: SyntaxKind) -> bool {
32771 matches!(kind, SyntaxKind::COLUMN | SyntaxKind::LIKE_CLAUSE)
32772 }
32773 #[inline]
32774 fn cast(syntax: SyntaxNode) -> Option<Self> {
32775 let res = match syntax.kind() {
32776 SyntaxKind::COLUMN => TableArg::Column(Column { syntax }),
32777 SyntaxKind::LIKE_CLAUSE => TableArg::LikeClause(LikeClause { syntax }),
32778 _ => {
32779 if let Some(result) = TableConstraint::cast(syntax) {
32780 return Some(TableArg::TableConstraint(result));
32781 }
32782 return None;
32783 }
32784 };
32785 Some(res)
32786 }
32787 #[inline]
32788 fn syntax(&self) -> &SyntaxNode {
32789 match self {
32790 TableArg::Column(it) => &it.syntax,
32791 TableArg::LikeClause(it) => &it.syntax,
32792 TableArg::TableConstraint(it) => it.syntax(),
32793 }
32794 }
32795}
32796impl From<Column> for TableArg {
32797 #[inline]
32798 fn from(node: Column) -> TableArg {
32799 TableArg::Column(node)
32800 }
32801}
32802impl From<LikeClause> for TableArg {
32803 #[inline]
32804 fn from(node: LikeClause) -> TableArg {
32805 TableArg::LikeClause(node)
32806 }
32807}
32808impl AstNode for TableConstraint {
32809 #[inline]
32810 fn can_cast(kind: SyntaxKind) -> bool {
32811 matches!(
32812 kind,
32813 SyntaxKind::CHECK_CONSTRAINT
32814 | SyntaxKind::EXCLUDE_CONSTRAINT
32815 | SyntaxKind::FOREIGN_KEY_CONSTRAINT
32816 | SyntaxKind::PRIMARY_KEY_CONSTRAINT
32817 | SyntaxKind::UNIQUE_CONSTRAINT
32818 )
32819 }
32820 #[inline]
32821 fn cast(syntax: SyntaxNode) -> Option<Self> {
32822 let res = match syntax.kind() {
32823 SyntaxKind::CHECK_CONSTRAINT => {
32824 TableConstraint::CheckConstraint(CheckConstraint { syntax })
32825 }
32826 SyntaxKind::EXCLUDE_CONSTRAINT => {
32827 TableConstraint::ExcludeConstraint(ExcludeConstraint { syntax })
32828 }
32829 SyntaxKind::FOREIGN_KEY_CONSTRAINT => {
32830 TableConstraint::ForeignKeyConstraint(ForeignKeyConstraint { syntax })
32831 }
32832 SyntaxKind::PRIMARY_KEY_CONSTRAINT => {
32833 TableConstraint::PrimaryKeyConstraint(PrimaryKeyConstraint { syntax })
32834 }
32835 SyntaxKind::UNIQUE_CONSTRAINT => {
32836 TableConstraint::UniqueConstraint(UniqueConstraint { syntax })
32837 }
32838 _ => {
32839 return None;
32840 }
32841 };
32842 Some(res)
32843 }
32844 #[inline]
32845 fn syntax(&self) -> &SyntaxNode {
32846 match self {
32847 TableConstraint::CheckConstraint(it) => &it.syntax,
32848 TableConstraint::ExcludeConstraint(it) => &it.syntax,
32849 TableConstraint::ForeignKeyConstraint(it) => &it.syntax,
32850 TableConstraint::PrimaryKeyConstraint(it) => &it.syntax,
32851 TableConstraint::UniqueConstraint(it) => &it.syntax,
32852 }
32853 }
32854}
32855impl From<CheckConstraint> for TableConstraint {
32856 #[inline]
32857 fn from(node: CheckConstraint) -> TableConstraint {
32858 TableConstraint::CheckConstraint(node)
32859 }
32860}
32861impl From<ExcludeConstraint> for TableConstraint {
32862 #[inline]
32863 fn from(node: ExcludeConstraint) -> TableConstraint {
32864 TableConstraint::ExcludeConstraint(node)
32865 }
32866}
32867impl From<ForeignKeyConstraint> for TableConstraint {
32868 #[inline]
32869 fn from(node: ForeignKeyConstraint) -> TableConstraint {
32870 TableConstraint::ForeignKeyConstraint(node)
32871 }
32872}
32873impl From<PrimaryKeyConstraint> for TableConstraint {
32874 #[inline]
32875 fn from(node: PrimaryKeyConstraint) -> TableConstraint {
32876 TableConstraint::PrimaryKeyConstraint(node)
32877 }
32878}
32879impl From<UniqueConstraint> for TableConstraint {
32880 #[inline]
32881 fn from(node: UniqueConstraint) -> TableConstraint {
32882 TableConstraint::UniqueConstraint(node)
32883 }
32884}
32885impl AstNode for Timezone {
32886 #[inline]
32887 fn can_cast(kind: SyntaxKind) -> bool {
32888 matches!(
32889 kind,
32890 SyntaxKind::WITH_TIMEZONE | SyntaxKind::WITHOUT_TIMEZONE
32891 )
32892 }
32893 #[inline]
32894 fn cast(syntax: SyntaxNode) -> Option<Self> {
32895 let res = match syntax.kind() {
32896 SyntaxKind::WITH_TIMEZONE => Timezone::WithTimezone(WithTimezone { syntax }),
32897 SyntaxKind::WITHOUT_TIMEZONE => Timezone::WithoutTimezone(WithoutTimezone { syntax }),
32898 _ => {
32899 return None;
32900 }
32901 };
32902 Some(res)
32903 }
32904 #[inline]
32905 fn syntax(&self) -> &SyntaxNode {
32906 match self {
32907 Timezone::WithTimezone(it) => &it.syntax,
32908 Timezone::WithoutTimezone(it) => &it.syntax,
32909 }
32910 }
32911}
32912impl From<WithTimezone> for Timezone {
32913 #[inline]
32914 fn from(node: WithTimezone) -> Timezone {
32915 Timezone::WithTimezone(node)
32916 }
32917}
32918impl From<WithoutTimezone> for Timezone {
32919 #[inline]
32920 fn from(node: WithoutTimezone) -> Timezone {
32921 Timezone::WithoutTimezone(node)
32922 }
32923}
32924impl AstNode for TransactionMode {
32925 #[inline]
32926 fn can_cast(kind: SyntaxKind) -> bool {
32927 matches!(
32928 kind,
32929 SyntaxKind::DEFERRABLE
32930 | SyntaxKind::NOT_DEFERRABLE
32931 | SyntaxKind::READ_COMMITTED
32932 | SyntaxKind::READ_ONLY
32933 | SyntaxKind::READ_UNCOMMITTED
32934 | SyntaxKind::READ_WRITE
32935 | SyntaxKind::REPEATABLE_READ
32936 | SyntaxKind::SERIALIZABLE
32937 )
32938 }
32939 #[inline]
32940 fn cast(syntax: SyntaxNode) -> Option<Self> {
32941 let res = match syntax.kind() {
32942 SyntaxKind::DEFERRABLE => TransactionMode::Deferrable(Deferrable { syntax }),
32943 SyntaxKind::NOT_DEFERRABLE => TransactionMode::NotDeferrable(NotDeferrable { syntax }),
32944 SyntaxKind::READ_COMMITTED => TransactionMode::ReadCommitted(ReadCommitted { syntax }),
32945 SyntaxKind::READ_ONLY => TransactionMode::ReadOnly(ReadOnly { syntax }),
32946 SyntaxKind::READ_UNCOMMITTED => {
32947 TransactionMode::ReadUncommitted(ReadUncommitted { syntax })
32948 }
32949 SyntaxKind::READ_WRITE => TransactionMode::ReadWrite(ReadWrite { syntax }),
32950 SyntaxKind::REPEATABLE_READ => {
32951 TransactionMode::RepeatableRead(RepeatableRead { syntax })
32952 }
32953 SyntaxKind::SERIALIZABLE => TransactionMode::Serializable(Serializable { syntax }),
32954 _ => {
32955 return None;
32956 }
32957 };
32958 Some(res)
32959 }
32960 #[inline]
32961 fn syntax(&self) -> &SyntaxNode {
32962 match self {
32963 TransactionMode::Deferrable(it) => &it.syntax,
32964 TransactionMode::NotDeferrable(it) => &it.syntax,
32965 TransactionMode::ReadCommitted(it) => &it.syntax,
32966 TransactionMode::ReadOnly(it) => &it.syntax,
32967 TransactionMode::ReadUncommitted(it) => &it.syntax,
32968 TransactionMode::ReadWrite(it) => &it.syntax,
32969 TransactionMode::RepeatableRead(it) => &it.syntax,
32970 TransactionMode::Serializable(it) => &it.syntax,
32971 }
32972 }
32973}
32974impl From<Deferrable> for TransactionMode {
32975 #[inline]
32976 fn from(node: Deferrable) -> TransactionMode {
32977 TransactionMode::Deferrable(node)
32978 }
32979}
32980impl From<NotDeferrable> for TransactionMode {
32981 #[inline]
32982 fn from(node: NotDeferrable) -> TransactionMode {
32983 TransactionMode::NotDeferrable(node)
32984 }
32985}
32986impl From<ReadCommitted> for TransactionMode {
32987 #[inline]
32988 fn from(node: ReadCommitted) -> TransactionMode {
32989 TransactionMode::ReadCommitted(node)
32990 }
32991}
32992impl From<ReadOnly> for TransactionMode {
32993 #[inline]
32994 fn from(node: ReadOnly) -> TransactionMode {
32995 TransactionMode::ReadOnly(node)
32996 }
32997}
32998impl From<ReadUncommitted> for TransactionMode {
32999 #[inline]
33000 fn from(node: ReadUncommitted) -> TransactionMode {
33001 TransactionMode::ReadUncommitted(node)
33002 }
33003}
33004impl From<ReadWrite> for TransactionMode {
33005 #[inline]
33006 fn from(node: ReadWrite) -> TransactionMode {
33007 TransactionMode::ReadWrite(node)
33008 }
33009}
33010impl From<RepeatableRead> for TransactionMode {
33011 #[inline]
33012 fn from(node: RepeatableRead) -> TransactionMode {
33013 TransactionMode::RepeatableRead(node)
33014 }
33015}
33016impl From<Serializable> for TransactionMode {
33017 #[inline]
33018 fn from(node: Serializable) -> TransactionMode {
33019 TransactionMode::Serializable(node)
33020 }
33021}
33022impl AstNode for Type {
33023 #[inline]
33024 fn can_cast(kind: SyntaxKind) -> bool {
33025 matches!(
33026 kind,
33027 SyntaxKind::ARRAY_TYPE
33028 | SyntaxKind::BIT_TYPE
33029 | SyntaxKind::CHAR_TYPE
33030 | SyntaxKind::DOUBLE_TYPE
33031 | SyntaxKind::EXPR_TYPE
33032 | SyntaxKind::INTERVAL_TYPE
33033 | SyntaxKind::PATH_TYPE
33034 | SyntaxKind::PERCENT_TYPE
33035 | SyntaxKind::TIME_TYPE
33036 )
33037 }
33038 #[inline]
33039 fn cast(syntax: SyntaxNode) -> Option<Self> {
33040 let res = match syntax.kind() {
33041 SyntaxKind::ARRAY_TYPE => Type::ArrayType(ArrayType { syntax }),
33042 SyntaxKind::BIT_TYPE => Type::BitType(BitType { syntax }),
33043 SyntaxKind::CHAR_TYPE => Type::CharType(CharType { syntax }),
33044 SyntaxKind::DOUBLE_TYPE => Type::DoubleType(DoubleType { syntax }),
33045 SyntaxKind::EXPR_TYPE => Type::ExprType(ExprType { syntax }),
33046 SyntaxKind::INTERVAL_TYPE => Type::IntervalType(IntervalType { syntax }),
33047 SyntaxKind::PATH_TYPE => Type::PathType(PathType { syntax }),
33048 SyntaxKind::PERCENT_TYPE => Type::PercentType(PercentType { syntax }),
33049 SyntaxKind::TIME_TYPE => Type::TimeType(TimeType { syntax }),
33050 _ => {
33051 return None;
33052 }
33053 };
33054 Some(res)
33055 }
33056 #[inline]
33057 fn syntax(&self) -> &SyntaxNode {
33058 match self {
33059 Type::ArrayType(it) => &it.syntax,
33060 Type::BitType(it) => &it.syntax,
33061 Type::CharType(it) => &it.syntax,
33062 Type::DoubleType(it) => &it.syntax,
33063 Type::ExprType(it) => &it.syntax,
33064 Type::IntervalType(it) => &it.syntax,
33065 Type::PathType(it) => &it.syntax,
33066 Type::PercentType(it) => &it.syntax,
33067 Type::TimeType(it) => &it.syntax,
33068 }
33069 }
33070}
33071impl From<ArrayType> for Type {
33072 #[inline]
33073 fn from(node: ArrayType) -> Type {
33074 Type::ArrayType(node)
33075 }
33076}
33077impl From<BitType> for Type {
33078 #[inline]
33079 fn from(node: BitType) -> Type {
33080 Type::BitType(node)
33081 }
33082}
33083impl From<CharType> for Type {
33084 #[inline]
33085 fn from(node: CharType) -> Type {
33086 Type::CharType(node)
33087 }
33088}
33089impl From<DoubleType> for Type {
33090 #[inline]
33091 fn from(node: DoubleType) -> Type {
33092 Type::DoubleType(node)
33093 }
33094}
33095impl From<ExprType> for Type {
33096 #[inline]
33097 fn from(node: ExprType) -> Type {
33098 Type::ExprType(node)
33099 }
33100}
33101impl From<IntervalType> for Type {
33102 #[inline]
33103 fn from(node: IntervalType) -> Type {
33104 Type::IntervalType(node)
33105 }
33106}
33107impl From<PathType> for Type {
33108 #[inline]
33109 fn from(node: PathType) -> Type {
33110 Type::PathType(node)
33111 }
33112}
33113impl From<PercentType> for Type {
33114 #[inline]
33115 fn from(node: PercentType) -> Type {
33116 Type::PercentType(node)
33117 }
33118}
33119impl From<TimeType> for Type {
33120 #[inline]
33121 fn from(node: TimeType) -> Type {
33122 Type::TimeType(node)
33123 }
33124}
33125impl AstNode for WithQuery {
33126 #[inline]
33127 fn can_cast(kind: SyntaxKind) -> bool {
33128 matches!(
33129 kind,
33130 SyntaxKind::COMPOUND_SELECT
33131 | SyntaxKind::DELETE
33132 | SyntaxKind::INSERT
33133 | SyntaxKind::MERGE
33134 | SyntaxKind::PAREN_SELECT
33135 | SyntaxKind::SELECT
33136 | SyntaxKind::TABLE
33137 | SyntaxKind::UPDATE
33138 | SyntaxKind::VALUES
33139 )
33140 }
33141 #[inline]
33142 fn cast(syntax: SyntaxNode) -> Option<Self> {
33143 let res = match syntax.kind() {
33144 SyntaxKind::COMPOUND_SELECT => WithQuery::CompoundSelect(CompoundSelect { syntax }),
33145 SyntaxKind::DELETE => WithQuery::Delete(Delete { syntax }),
33146 SyntaxKind::INSERT => WithQuery::Insert(Insert { syntax }),
33147 SyntaxKind::MERGE => WithQuery::Merge(Merge { syntax }),
33148 SyntaxKind::PAREN_SELECT => WithQuery::ParenSelect(ParenSelect { syntax }),
33149 SyntaxKind::SELECT => WithQuery::Select(Select { syntax }),
33150 SyntaxKind::TABLE => WithQuery::Table(Table { syntax }),
33151 SyntaxKind::UPDATE => WithQuery::Update(Update { syntax }),
33152 SyntaxKind::VALUES => WithQuery::Values(Values { syntax }),
33153 _ => {
33154 return None;
33155 }
33156 };
33157 Some(res)
33158 }
33159 #[inline]
33160 fn syntax(&self) -> &SyntaxNode {
33161 match self {
33162 WithQuery::CompoundSelect(it) => &it.syntax,
33163 WithQuery::Delete(it) => &it.syntax,
33164 WithQuery::Insert(it) => &it.syntax,
33165 WithQuery::Merge(it) => &it.syntax,
33166 WithQuery::ParenSelect(it) => &it.syntax,
33167 WithQuery::Select(it) => &it.syntax,
33168 WithQuery::Table(it) => &it.syntax,
33169 WithQuery::Update(it) => &it.syntax,
33170 WithQuery::Values(it) => &it.syntax,
33171 }
33172 }
33173}
33174impl From<CompoundSelect> for WithQuery {
33175 #[inline]
33176 fn from(node: CompoundSelect) -> WithQuery {
33177 WithQuery::CompoundSelect(node)
33178 }
33179}
33180impl From<Delete> for WithQuery {
33181 #[inline]
33182 fn from(node: Delete) -> WithQuery {
33183 WithQuery::Delete(node)
33184 }
33185}
33186impl From<Insert> for WithQuery {
33187 #[inline]
33188 fn from(node: Insert) -> WithQuery {
33189 WithQuery::Insert(node)
33190 }
33191}
33192impl From<Merge> for WithQuery {
33193 #[inline]
33194 fn from(node: Merge) -> WithQuery {
33195 WithQuery::Merge(node)
33196 }
33197}
33198impl From<ParenSelect> for WithQuery {
33199 #[inline]
33200 fn from(node: ParenSelect) -> WithQuery {
33201 WithQuery::ParenSelect(node)
33202 }
33203}
33204impl From<Select> for WithQuery {
33205 #[inline]
33206 fn from(node: Select) -> WithQuery {
33207 WithQuery::Select(node)
33208 }
33209}
33210impl From<Table> for WithQuery {
33211 #[inline]
33212 fn from(node: Table) -> WithQuery {
33213 WithQuery::Table(node)
33214 }
33215}
33216impl From<Update> for WithQuery {
33217 #[inline]
33218 fn from(node: Update) -> WithQuery {
33219 WithQuery::Update(node)
33220 }
33221}
33222impl From<Values> for WithQuery {
33223 #[inline]
33224 fn from(node: Values) -> WithQuery {
33225 WithQuery::Values(node)
33226 }
33227}