1use crate::SyntaxKind;
5use crate::ast::AstNode;
6use crate::ast::{AstChildren, support};
7use crate::syntax_node::SyntaxNode;
8use crate::syntax_node::SyntaxToken;
9
10#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11pub struct AddColumn {
12 pub(crate) syntax: SyntaxNode,
13}
14impl AddColumn {
15 #[inline]
16 pub fn collate(&self) -> Option<Collate> {
17 support::child(&self.syntax)
18 }
19 #[inline]
20 pub fn constraints(&self) -> AstChildren<Constraint> {
21 support::children(&self.syntax)
22 }
23 #[inline]
24 pub fn if_not_exists(&self) -> Option<IfNotExists> {
25 support::child(&self.syntax)
26 }
27 #[inline]
28 pub fn name(&self) -> Option<Name> {
29 support::child(&self.syntax)
30 }
31 #[inline]
32 pub fn ty(&self) -> Option<Type> {
33 support::child(&self.syntax)
34 }
35 #[inline]
36 pub fn add_token(&self) -> Option<SyntaxToken> {
37 support::token(&self.syntax, SyntaxKind::ADD_KW)
38 }
39 #[inline]
40 pub fn column_token(&self) -> Option<SyntaxToken> {
41 support::token(&self.syntax, SyntaxKind::COLUMN_KW)
42 }
43}
44
45#[derive(Debug, Clone, PartialEq, Eq, Hash)]
46pub struct AddConstraint {
47 pub(crate) syntax: SyntaxNode,
48}
49impl AddConstraint {
50 #[inline]
51 pub fn constraint(&self) -> Option<Constraint> {
52 support::child(&self.syntax)
53 }
54 #[inline]
55 pub fn deferrable_constraint_option(&self) -> Option<DeferrableConstraintOption> {
56 support::child(&self.syntax)
57 }
58 #[inline]
59 pub fn enforced(&self) -> Option<Enforced> {
60 support::child(&self.syntax)
61 }
62 #[inline]
63 pub fn initially_deferred_constraint_option(
64 &self,
65 ) -> Option<InitiallyDeferredConstraintOption> {
66 support::child(&self.syntax)
67 }
68 #[inline]
69 pub fn initially_immediate_constraint_option(
70 &self,
71 ) -> Option<InitiallyImmediateConstraintOption> {
72 support::child(&self.syntax)
73 }
74 #[inline]
75 pub fn no_inherit(&self) -> Option<NoInherit> {
76 support::child(&self.syntax)
77 }
78 #[inline]
79 pub fn not_deferrable_constraint_option(&self) -> Option<NotDeferrableConstraintOption> {
80 support::child(&self.syntax)
81 }
82 #[inline]
83 pub fn not_enforced(&self) -> Option<NotEnforced> {
84 support::child(&self.syntax)
85 }
86 #[inline]
87 pub fn not_valid(&self) -> Option<NotValid> {
88 support::child(&self.syntax)
89 }
90 #[inline]
91 pub fn add_token(&self) -> Option<SyntaxToken> {
92 support::token(&self.syntax, SyntaxKind::ADD_KW)
93 }
94}
95
96#[derive(Debug, Clone, PartialEq, Eq, Hash)]
97pub struct AddGenerated {
98 pub(crate) syntax: SyntaxNode,
99}
100impl AddGenerated {
101 #[inline]
102 pub fn add_token(&self) -> Option<SyntaxToken> {
103 support::token(&self.syntax, SyntaxKind::ADD_KW)
104 }
105}
106
107#[derive(Debug, Clone, PartialEq, Eq, Hash)]
108pub struct AddOpClassOptions {
109 pub(crate) syntax: SyntaxNode,
110}
111impl AddOpClassOptions {
112 #[inline]
113 pub fn operator_class_option_list(&self) -> Option<OperatorClassOptionList> {
114 support::child(&self.syntax)
115 }
116 #[inline]
117 pub fn add_token(&self) -> Option<SyntaxToken> {
118 support::token(&self.syntax, SyntaxKind::ADD_KW)
119 }
120}
121
122#[derive(Debug, Clone, PartialEq, Eq, Hash)]
123pub struct Aggregate {
124 pub(crate) syntax: SyntaxNode,
125}
126impl Aggregate {
127 #[inline]
128 pub fn param_list(&self) -> Option<ParamList> {
129 support::child(&self.syntax)
130 }
131 #[inline]
132 pub fn path(&self) -> Option<Path> {
133 support::child(&self.syntax)
134 }
135}
136
137#[derive(Debug, Clone, PartialEq, Eq, Hash)]
138pub struct Alias {
139 pub(crate) syntax: SyntaxNode,
140}
141impl Alias {
142 #[inline]
143 pub fn column_list(&self) -> Option<ColumnList> {
144 support::child(&self.syntax)
145 }
146 #[inline]
147 pub fn name(&self) -> Option<Name> {
148 support::child(&self.syntax)
149 }
150 #[inline]
151 pub fn as_token(&self) -> Option<SyntaxToken> {
152 support::token(&self.syntax, SyntaxKind::AS_KW)
153 }
154}
155
156#[derive(Debug, Clone, PartialEq, Eq, Hash)]
157pub struct AllFn {
158 pub(crate) syntax: SyntaxNode,
159}
160impl AllFn {
161 #[inline]
162 pub fn expr(&self) -> Option<Expr> {
163 support::child(&self.syntax)
164 }
165 #[inline]
166 pub fn select_variant(&self) -> Option<SelectVariant> {
167 support::child(&self.syntax)
168 }
169 #[inline]
170 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
171 support::token(&self.syntax, SyntaxKind::L_PAREN)
172 }
173 #[inline]
174 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
175 support::token(&self.syntax, SyntaxKind::R_PAREN)
176 }
177 #[inline]
178 pub fn all_token(&self) -> Option<SyntaxToken> {
179 support::token(&self.syntax, SyntaxKind::ALL_KW)
180 }
181}
182
183#[derive(Debug, Clone, PartialEq, Eq, Hash)]
184pub struct AlterAggregate {
185 pub(crate) syntax: SyntaxNode,
186}
187impl AlterAggregate {
188 #[inline]
189 pub fn aggregate(&self) -> Option<Aggregate> {
190 support::child(&self.syntax)
191 }
192 #[inline]
193 pub fn aggregate_token(&self) -> Option<SyntaxToken> {
194 support::token(&self.syntax, SyntaxKind::AGGREGATE_KW)
195 }
196 #[inline]
197 pub fn alter_token(&self) -> Option<SyntaxToken> {
198 support::token(&self.syntax, SyntaxKind::ALTER_KW)
199 }
200}
201
202#[derive(Debug, Clone, PartialEq, Eq, Hash)]
203pub struct AlterCollation {
204 pub(crate) syntax: SyntaxNode,
205}
206impl AlterCollation {
207 #[inline]
208 pub fn owner_to(&self) -> Option<OwnerTo> {
209 support::child(&self.syntax)
210 }
211 #[inline]
212 pub fn path(&self) -> Option<Path> {
213 support::child(&self.syntax)
214 }
215 #[inline]
216 pub fn refresh_version(&self) -> Option<RefreshVersion> {
217 support::child(&self.syntax)
218 }
219 #[inline]
220 pub fn rename_to(&self) -> Option<RenameTo> {
221 support::child(&self.syntax)
222 }
223 #[inline]
224 pub fn set_schema(&self) -> Option<SetSchema> {
225 support::child(&self.syntax)
226 }
227 #[inline]
228 pub fn alter_token(&self) -> Option<SyntaxToken> {
229 support::token(&self.syntax, SyntaxKind::ALTER_KW)
230 }
231 #[inline]
232 pub fn collation_token(&self) -> Option<SyntaxToken> {
233 support::token(&self.syntax, SyntaxKind::COLLATION_KW)
234 }
235}
236
237#[derive(Debug, Clone, PartialEq, Eq, Hash)]
238pub struct AlterColumn {
239 pub(crate) syntax: SyntaxNode,
240}
241impl AlterColumn {
242 #[inline]
243 pub fn name_ref(&self) -> Option<NameRef> {
244 support::child(&self.syntax)
245 }
246 #[inline]
247 pub fn option(&self) -> Option<AlterColumnOption> {
248 support::child(&self.syntax)
249 }
250 #[inline]
251 pub fn alter_token(&self) -> Option<SyntaxToken> {
252 support::token(&self.syntax, SyntaxKind::ALTER_KW)
253 }
254 #[inline]
255 pub fn column_token(&self) -> Option<SyntaxToken> {
256 support::token(&self.syntax, SyntaxKind::COLUMN_KW)
257 }
258}
259
260#[derive(Debug, Clone, PartialEq, Eq, Hash)]
261pub struct AlterConstraint {
262 pub(crate) syntax: SyntaxNode,
263}
264impl AlterConstraint {
265 #[inline]
266 pub fn option(&self) -> Option<AlterColumnOption> {
267 support::child(&self.syntax)
268 }
269 #[inline]
270 pub fn alter_token(&self) -> Option<SyntaxToken> {
271 support::token(&self.syntax, SyntaxKind::ALTER_KW)
272 }
273 #[inline]
274 pub fn constraint_token(&self) -> Option<SyntaxToken> {
275 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
276 }
277}
278
279#[derive(Debug, Clone, PartialEq, Eq, Hash)]
280pub struct AlterConversion {
281 pub(crate) syntax: SyntaxNode,
282}
283impl AlterConversion {
284 #[inline]
285 pub fn owner_to(&self) -> Option<OwnerTo> {
286 support::child(&self.syntax)
287 }
288 #[inline]
289 pub fn path(&self) -> Option<Path> {
290 support::child(&self.syntax)
291 }
292 #[inline]
293 pub fn rename_to(&self) -> Option<RenameTo> {
294 support::child(&self.syntax)
295 }
296 #[inline]
297 pub fn set_schema(&self) -> Option<SetSchema> {
298 support::child(&self.syntax)
299 }
300 #[inline]
301 pub fn alter_token(&self) -> Option<SyntaxToken> {
302 support::token(&self.syntax, SyntaxKind::ALTER_KW)
303 }
304 #[inline]
305 pub fn conversion_token(&self) -> Option<SyntaxToken> {
306 support::token(&self.syntax, SyntaxKind::CONVERSION_KW)
307 }
308}
309
310#[derive(Debug, Clone, PartialEq, Eq, Hash)]
311pub struct AlterDatabase {
312 pub(crate) syntax: SyntaxNode,
313}
314impl AlterDatabase {
315 #[inline]
316 pub fn create_database_option_list(&self) -> Option<CreateDatabaseOptionList> {
317 support::child(&self.syntax)
318 }
319 #[inline]
320 pub fn name_ref(&self) -> Option<NameRef> {
321 support::child(&self.syntax)
322 }
323 #[inline]
324 pub fn owner_to(&self) -> Option<OwnerTo> {
325 support::child(&self.syntax)
326 }
327 #[inline]
328 pub fn refresh_collation_version(&self) -> Option<RefreshCollationVersion> {
329 support::child(&self.syntax)
330 }
331 #[inline]
332 pub fn rename_to(&self) -> Option<RenameTo> {
333 support::child(&self.syntax)
334 }
335 #[inline]
336 pub fn reset_config_param(&self) -> Option<ResetConfigParam> {
337 support::child(&self.syntax)
338 }
339 #[inline]
340 pub fn set_config_param(&self) -> Option<SetConfigParam> {
341 support::child(&self.syntax)
342 }
343 #[inline]
344 pub fn set_tablespace(&self) -> Option<SetTablespace> {
345 support::child(&self.syntax)
346 }
347 #[inline]
348 pub fn alter_token(&self) -> Option<SyntaxToken> {
349 support::token(&self.syntax, SyntaxKind::ALTER_KW)
350 }
351 #[inline]
352 pub fn database_token(&self) -> Option<SyntaxToken> {
353 support::token(&self.syntax, SyntaxKind::DATABASE_KW)
354 }
355}
356
357#[derive(Debug, Clone, PartialEq, Eq, Hash)]
358pub struct AlterDefaultPrivileges {
359 pub(crate) syntax: SyntaxNode,
360}
361impl AlterDefaultPrivileges {
362 #[inline]
363 pub fn grant_default_privileges(&self) -> Option<GrantDefaultPrivileges> {
364 support::child(&self.syntax)
365 }
366 #[inline]
367 pub fn name_refs(&self) -> AstChildren<NameRef> {
368 support::children(&self.syntax)
369 }
370 #[inline]
371 pub fn revoke_default_privileges(&self) -> Option<RevokeDefaultPrivileges> {
372 support::child(&self.syntax)
373 }
374 #[inline]
375 pub fn role_ref_list(&self) -> Option<RoleRefList> {
376 support::child(&self.syntax)
377 }
378 #[inline]
379 pub fn alter_token(&self) -> Option<SyntaxToken> {
380 support::token(&self.syntax, SyntaxKind::ALTER_KW)
381 }
382 #[inline]
383 pub fn default_token(&self) -> Option<SyntaxToken> {
384 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
385 }
386 #[inline]
387 pub fn for_token(&self) -> Option<SyntaxToken> {
388 support::token(&self.syntax, SyntaxKind::FOR_KW)
389 }
390 #[inline]
391 pub fn in_token(&self) -> Option<SyntaxToken> {
392 support::token(&self.syntax, SyntaxKind::IN_KW)
393 }
394 #[inline]
395 pub fn privileges_token(&self) -> Option<SyntaxToken> {
396 support::token(&self.syntax, SyntaxKind::PRIVILEGES_KW)
397 }
398 #[inline]
399 pub fn role_token(&self) -> Option<SyntaxToken> {
400 support::token(&self.syntax, SyntaxKind::ROLE_KW)
401 }
402 #[inline]
403 pub fn schema_token(&self) -> Option<SyntaxToken> {
404 support::token(&self.syntax, SyntaxKind::SCHEMA_KW)
405 }
406 #[inline]
407 pub fn user_token(&self) -> Option<SyntaxToken> {
408 support::token(&self.syntax, SyntaxKind::USER_KW)
409 }
410}
411
412#[derive(Debug, Clone, PartialEq, Eq, Hash)]
413pub struct AlterDomain {
414 pub(crate) syntax: SyntaxNode,
415}
416impl AlterDomain {
417 #[inline]
418 pub fn action(&self) -> Option<AlterDomainAction> {
419 support::child(&self.syntax)
420 }
421 #[inline]
422 pub fn path(&self) -> Option<Path> {
423 support::child(&self.syntax)
424 }
425 #[inline]
426 pub fn alter_token(&self) -> Option<SyntaxToken> {
427 support::token(&self.syntax, SyntaxKind::ALTER_KW)
428 }
429 #[inline]
430 pub fn domain_token(&self) -> Option<SyntaxToken> {
431 support::token(&self.syntax, SyntaxKind::DOMAIN_KW)
432 }
433}
434
435#[derive(Debug, Clone, PartialEq, Eq, Hash)]
436pub struct AlterEventTrigger {
437 pub(crate) syntax: SyntaxNode,
438}
439impl AlterEventTrigger {
440 #[inline]
441 pub fn name_ref(&self) -> Option<NameRef> {
442 support::child(&self.syntax)
443 }
444 #[inline]
445 pub fn owner_to(&self) -> Option<OwnerTo> {
446 support::child(&self.syntax)
447 }
448 #[inline]
449 pub fn rename_to(&self) -> Option<RenameTo> {
450 support::child(&self.syntax)
451 }
452 #[inline]
453 pub fn alter_token(&self) -> Option<SyntaxToken> {
454 support::token(&self.syntax, SyntaxKind::ALTER_KW)
455 }
456 #[inline]
457 pub fn always_token(&self) -> Option<SyntaxToken> {
458 support::token(&self.syntax, SyntaxKind::ALWAYS_KW)
459 }
460 #[inline]
461 pub fn disable_token(&self) -> Option<SyntaxToken> {
462 support::token(&self.syntax, SyntaxKind::DISABLE_KW)
463 }
464 #[inline]
465 pub fn enable_token(&self) -> Option<SyntaxToken> {
466 support::token(&self.syntax, SyntaxKind::ENABLE_KW)
467 }
468 #[inline]
469 pub fn event_token(&self) -> Option<SyntaxToken> {
470 support::token(&self.syntax, SyntaxKind::EVENT_KW)
471 }
472 #[inline]
473 pub fn replica_token(&self) -> Option<SyntaxToken> {
474 support::token(&self.syntax, SyntaxKind::REPLICA_KW)
475 }
476 #[inline]
477 pub fn trigger_token(&self) -> Option<SyntaxToken> {
478 support::token(&self.syntax, SyntaxKind::TRIGGER_KW)
479 }
480}
481
482#[derive(Debug, Clone, PartialEq, Eq, Hash)]
483pub struct AlterExtension {
484 pub(crate) syntax: SyntaxNode,
485}
486impl AlterExtension {
487 #[inline]
488 pub fn name_ref(&self) -> Option<NameRef> {
489 support::child(&self.syntax)
490 }
491 #[inline]
492 pub fn alter_token(&self) -> Option<SyntaxToken> {
493 support::token(&self.syntax, SyntaxKind::ALTER_KW)
494 }
495 #[inline]
496 pub fn extension_token(&self) -> Option<SyntaxToken> {
497 support::token(&self.syntax, SyntaxKind::EXTENSION_KW)
498 }
499}
500
501#[derive(Debug, Clone, PartialEq, Eq, Hash)]
502pub struct AlterForeignDataWrapper {
503 pub(crate) syntax: SyntaxNode,
504}
505impl AlterForeignDataWrapper {
506 #[inline]
507 pub fn fdw_option_list(&self) -> Option<FdwOptionList> {
508 support::child(&self.syntax)
509 }
510 #[inline]
511 pub fn name_ref(&self) -> Option<NameRef> {
512 support::child(&self.syntax)
513 }
514 #[inline]
515 pub fn owner_to(&self) -> Option<OwnerTo> {
516 support::child(&self.syntax)
517 }
518 #[inline]
519 pub fn rename_to(&self) -> Option<RenameTo> {
520 support::child(&self.syntax)
521 }
522 #[inline]
523 pub fn alter_token(&self) -> Option<SyntaxToken> {
524 support::token(&self.syntax, SyntaxKind::ALTER_KW)
525 }
526 #[inline]
527 pub fn data_token(&self) -> Option<SyntaxToken> {
528 support::token(&self.syntax, SyntaxKind::DATA_KW)
529 }
530 #[inline]
531 pub fn foreign_token(&self) -> Option<SyntaxToken> {
532 support::token(&self.syntax, SyntaxKind::FOREIGN_KW)
533 }
534 #[inline]
535 pub fn wrapper_token(&self) -> Option<SyntaxToken> {
536 support::token(&self.syntax, SyntaxKind::WRAPPER_KW)
537 }
538}
539
540#[derive(Debug, Clone, PartialEq, Eq, Hash)]
541pub struct AlterForeignTable {
542 pub(crate) syntax: SyntaxNode,
543}
544impl AlterForeignTable {
545 #[inline]
546 pub fn alter_table_actions(&self) -> AstChildren<AlterTableAction> {
547 support::children(&self.syntax)
548 }
549 #[inline]
550 pub fn if_exists(&self) -> Option<IfExists> {
551 support::child(&self.syntax)
552 }
553 #[inline]
554 pub fn relation_name(&self) -> Option<RelationName> {
555 support::child(&self.syntax)
556 }
557 #[inline]
558 pub fn rename_column(&self) -> Option<RenameColumn> {
559 support::child(&self.syntax)
560 }
561 #[inline]
562 pub fn rename_to(&self) -> Option<RenameTo> {
563 support::child(&self.syntax)
564 }
565 #[inline]
566 pub fn set_schema(&self) -> Option<SetSchema> {
567 support::child(&self.syntax)
568 }
569 #[inline]
570 pub fn alter_token(&self) -> Option<SyntaxToken> {
571 support::token(&self.syntax, SyntaxKind::ALTER_KW)
572 }
573 #[inline]
574 pub fn foreign_token(&self) -> Option<SyntaxToken> {
575 support::token(&self.syntax, SyntaxKind::FOREIGN_KW)
576 }
577 #[inline]
578 pub fn table_token(&self) -> Option<SyntaxToken> {
579 support::token(&self.syntax, SyntaxKind::TABLE_KW)
580 }
581}
582
583#[derive(Debug, Clone, PartialEq, Eq, Hash)]
584pub struct AlterFunction {
585 pub(crate) syntax: SyntaxNode,
586}
587impl AlterFunction {
588 #[inline]
589 pub fn depends_on_extension(&self) -> Option<DependsOnExtension> {
590 support::child(&self.syntax)
591 }
592 #[inline]
593 pub fn func_option_list(&self) -> Option<FuncOptionList> {
594 support::child(&self.syntax)
595 }
596 #[inline]
597 pub fn function_sig(&self) -> Option<FunctionSig> {
598 support::child(&self.syntax)
599 }
600 #[inline]
601 pub fn no_depends_on_extension(&self) -> Option<NoDependsOnExtension> {
602 support::child(&self.syntax)
603 }
604 #[inline]
605 pub fn owner_to(&self) -> Option<OwnerTo> {
606 support::child(&self.syntax)
607 }
608 #[inline]
609 pub fn rename_to(&self) -> Option<RenameTo> {
610 support::child(&self.syntax)
611 }
612 #[inline]
613 pub fn set_schema(&self) -> Option<SetSchema> {
614 support::child(&self.syntax)
615 }
616 #[inline]
617 pub fn alter_token(&self) -> Option<SyntaxToken> {
618 support::token(&self.syntax, SyntaxKind::ALTER_KW)
619 }
620 #[inline]
621 pub fn function_token(&self) -> Option<SyntaxToken> {
622 support::token(&self.syntax, SyntaxKind::FUNCTION_KW)
623 }
624 #[inline]
625 pub fn restrict_token(&self) -> Option<SyntaxToken> {
626 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
627 }
628}
629
630#[derive(Debug, Clone, PartialEq, Eq, Hash)]
631pub struct AlterGroup {
632 pub(crate) syntax: SyntaxNode,
633}
634impl AlterGroup {
635 #[inline]
636 pub fn name_refs(&self) -> AstChildren<NameRef> {
637 support::children(&self.syntax)
638 }
639 #[inline]
640 pub fn rename_to(&self) -> Option<RenameTo> {
641 support::child(&self.syntax)
642 }
643 #[inline]
644 pub fn role_ref(&self) -> Option<RoleRef> {
645 support::child(&self.syntax)
646 }
647 #[inline]
648 pub fn add_token(&self) -> Option<SyntaxToken> {
649 support::token(&self.syntax, SyntaxKind::ADD_KW)
650 }
651 #[inline]
652 pub fn alter_token(&self) -> Option<SyntaxToken> {
653 support::token(&self.syntax, SyntaxKind::ALTER_KW)
654 }
655 #[inline]
656 pub fn drop_token(&self) -> Option<SyntaxToken> {
657 support::token(&self.syntax, SyntaxKind::DROP_KW)
658 }
659 #[inline]
660 pub fn group_token(&self) -> Option<SyntaxToken> {
661 support::token(&self.syntax, SyntaxKind::GROUP_KW)
662 }
663 #[inline]
664 pub fn user_token(&self) -> Option<SyntaxToken> {
665 support::token(&self.syntax, SyntaxKind::USER_KW)
666 }
667}
668
669#[derive(Debug, Clone, PartialEq, Eq, Hash)]
670pub struct AlterIndex {
671 pub(crate) syntax: SyntaxNode,
672}
673impl AlterIndex {
674 #[inline]
675 pub fn alter_index_action(&self) -> Option<AlterIndexAction> {
676 support::child(&self.syntax)
677 }
678 #[inline]
679 pub fn if_exists(&self) -> Option<IfExists> {
680 support::child(&self.syntax)
681 }
682 #[inline]
683 pub fn name_ref(&self) -> Option<NameRef> {
684 support::child(&self.syntax)
685 }
686 #[inline]
687 pub fn owned_by_roles(&self) -> Option<OwnedByRoles> {
688 support::child(&self.syntax)
689 }
690 #[inline]
691 pub fn path(&self) -> Option<Path> {
692 support::child(&self.syntax)
693 }
694 #[inline]
695 pub fn all_token(&self) -> Option<SyntaxToken> {
696 support::token(&self.syntax, SyntaxKind::ALL_KW)
697 }
698 #[inline]
699 pub fn alter_token(&self) -> Option<SyntaxToken> {
700 support::token(&self.syntax, SyntaxKind::ALTER_KW)
701 }
702 #[inline]
703 pub fn in_token(&self) -> Option<SyntaxToken> {
704 support::token(&self.syntax, SyntaxKind::IN_KW)
705 }
706 #[inline]
707 pub fn index_token(&self) -> Option<SyntaxToken> {
708 support::token(&self.syntax, SyntaxKind::INDEX_KW)
709 }
710 #[inline]
711 pub fn nowait_token(&self) -> Option<SyntaxToken> {
712 support::token(&self.syntax, SyntaxKind::NOWAIT_KW)
713 }
714 #[inline]
715 pub fn set_token(&self) -> Option<SyntaxToken> {
716 support::token(&self.syntax, SyntaxKind::SET_KW)
717 }
718 #[inline]
719 pub fn tablespace_token(&self) -> Option<SyntaxToken> {
720 support::token(&self.syntax, SyntaxKind::TABLESPACE_KW)
721 }
722}
723
724#[derive(Debug, Clone, PartialEq, Eq, Hash)]
725pub struct AlterLanguage {
726 pub(crate) syntax: SyntaxNode,
727}
728impl AlterLanguage {
729 #[inline]
730 pub fn name_ref(&self) -> Option<NameRef> {
731 support::child(&self.syntax)
732 }
733 #[inline]
734 pub fn owner_to(&self) -> Option<OwnerTo> {
735 support::child(&self.syntax)
736 }
737 #[inline]
738 pub fn rename_to(&self) -> Option<RenameTo> {
739 support::child(&self.syntax)
740 }
741 #[inline]
742 pub fn alter_token(&self) -> Option<SyntaxToken> {
743 support::token(&self.syntax, SyntaxKind::ALTER_KW)
744 }
745 #[inline]
746 pub fn language_token(&self) -> Option<SyntaxToken> {
747 support::token(&self.syntax, SyntaxKind::LANGUAGE_KW)
748 }
749}
750
751#[derive(Debug, Clone, PartialEq, Eq, Hash)]
752pub struct AlterLargeObject {
753 pub(crate) syntax: SyntaxNode,
754}
755impl AlterLargeObject {
756 #[inline]
757 pub fn alter_token(&self) -> Option<SyntaxToken> {
758 support::token(&self.syntax, SyntaxKind::ALTER_KW)
759 }
760 #[inline]
761 pub fn large_token(&self) -> Option<SyntaxToken> {
762 support::token(&self.syntax, SyntaxKind::LARGE_KW)
763 }
764 #[inline]
765 pub fn object_token(&self) -> Option<SyntaxToken> {
766 support::token(&self.syntax, SyntaxKind::OBJECT_KW)
767 }
768}
769
770#[derive(Debug, Clone, PartialEq, Eq, Hash)]
771pub struct AlterMaterializedView {
772 pub(crate) syntax: SyntaxNode,
773}
774impl AlterMaterializedView {
775 #[inline]
776 pub fn action(&self) -> AstChildren<AlterMaterializedViewAction> {
777 support::children(&self.syntax)
778 }
779 #[inline]
780 pub fn if_exists(&self) -> Option<IfExists> {
781 support::child(&self.syntax)
782 }
783 #[inline]
784 pub fn name(&self) -> Option<Name> {
785 support::child(&self.syntax)
786 }
787 #[inline]
788 pub fn name_ref(&self) -> Option<NameRef> {
789 support::child(&self.syntax)
790 }
791 #[inline]
792 pub fn owned_by_roles(&self) -> Option<OwnedByRoles> {
793 support::child(&self.syntax)
794 }
795 #[inline]
796 pub fn path(&self) -> Option<Path> {
797 support::child(&self.syntax)
798 }
799 #[inline]
800 pub fn all_token(&self) -> Option<SyntaxToken> {
801 support::token(&self.syntax, SyntaxKind::ALL_KW)
802 }
803 #[inline]
804 pub fn alter_token(&self) -> Option<SyntaxToken> {
805 support::token(&self.syntax, SyntaxKind::ALTER_KW)
806 }
807 #[inline]
808 pub fn in_token(&self) -> Option<SyntaxToken> {
809 support::token(&self.syntax, SyntaxKind::IN_KW)
810 }
811 #[inline]
812 pub fn materialized_token(&self) -> Option<SyntaxToken> {
813 support::token(&self.syntax, SyntaxKind::MATERIALIZED_KW)
814 }
815 #[inline]
816 pub fn nowait_token(&self) -> Option<SyntaxToken> {
817 support::token(&self.syntax, SyntaxKind::NOWAIT_KW)
818 }
819 #[inline]
820 pub fn set_token(&self) -> Option<SyntaxToken> {
821 support::token(&self.syntax, SyntaxKind::SET_KW)
822 }
823 #[inline]
824 pub fn tablespace_token(&self) -> Option<SyntaxToken> {
825 support::token(&self.syntax, SyntaxKind::TABLESPACE_KW)
826 }
827 #[inline]
828 pub fn view_token(&self) -> Option<SyntaxToken> {
829 support::token(&self.syntax, SyntaxKind::VIEW_KW)
830 }
831}
832
833#[derive(Debug, Clone, PartialEq, Eq, Hash)]
834pub struct AlterOperator {
835 pub(crate) syntax: SyntaxNode,
836}
837impl AlterOperator {
838 #[inline]
839 pub fn op_sig(&self) -> Option<OpSig> {
840 support::child(&self.syntax)
841 }
842 #[inline]
843 pub fn owner_to(&self) -> Option<OwnerTo> {
844 support::child(&self.syntax)
845 }
846 #[inline]
847 pub fn set_options(&self) -> Option<SetOptions> {
848 support::child(&self.syntax)
849 }
850 #[inline]
851 pub fn set_schema(&self) -> Option<SetSchema> {
852 support::child(&self.syntax)
853 }
854 #[inline]
855 pub fn alter_token(&self) -> Option<SyntaxToken> {
856 support::token(&self.syntax, SyntaxKind::ALTER_KW)
857 }
858 #[inline]
859 pub fn operator_token(&self) -> Option<SyntaxToken> {
860 support::token(&self.syntax, SyntaxKind::OPERATOR_KW)
861 }
862}
863
864#[derive(Debug, Clone, PartialEq, Eq, Hash)]
865pub struct AlterOperatorClass {
866 pub(crate) syntax: SyntaxNode,
867}
868impl AlterOperatorClass {
869 #[inline]
870 pub fn name_ref(&self) -> Option<NameRef> {
871 support::child(&self.syntax)
872 }
873 #[inline]
874 pub fn owner_to(&self) -> Option<OwnerTo> {
875 support::child(&self.syntax)
876 }
877 #[inline]
878 pub fn path(&self) -> Option<Path> {
879 support::child(&self.syntax)
880 }
881 #[inline]
882 pub fn rename_to(&self) -> Option<RenameTo> {
883 support::child(&self.syntax)
884 }
885 #[inline]
886 pub fn set_schema(&self) -> Option<SetSchema> {
887 support::child(&self.syntax)
888 }
889 #[inline]
890 pub fn alter_token(&self) -> Option<SyntaxToken> {
891 support::token(&self.syntax, SyntaxKind::ALTER_KW)
892 }
893 #[inline]
894 pub fn class_token(&self) -> Option<SyntaxToken> {
895 support::token(&self.syntax, SyntaxKind::CLASS_KW)
896 }
897 #[inline]
898 pub fn operator_token(&self) -> Option<SyntaxToken> {
899 support::token(&self.syntax, SyntaxKind::OPERATOR_KW)
900 }
901 #[inline]
902 pub fn using_token(&self) -> Option<SyntaxToken> {
903 support::token(&self.syntax, SyntaxKind::USING_KW)
904 }
905}
906
907#[derive(Debug, Clone, PartialEq, Eq, Hash)]
908pub struct AlterOperatorFamily {
909 pub(crate) syntax: SyntaxNode,
910}
911impl AlterOperatorFamily {
912 #[inline]
913 pub fn add_op_class_options(&self) -> Option<AddOpClassOptions> {
914 support::child(&self.syntax)
915 }
916 #[inline]
917 pub fn drop_op_class_options(&self) -> Option<DropOpClassOptions> {
918 support::child(&self.syntax)
919 }
920 #[inline]
921 pub fn name_ref(&self) -> Option<NameRef> {
922 support::child(&self.syntax)
923 }
924 #[inline]
925 pub fn owner_to(&self) -> Option<OwnerTo> {
926 support::child(&self.syntax)
927 }
928 #[inline]
929 pub fn path(&self) -> Option<Path> {
930 support::child(&self.syntax)
931 }
932 #[inline]
933 pub fn rename_to(&self) -> Option<RenameTo> {
934 support::child(&self.syntax)
935 }
936 #[inline]
937 pub fn set_schema(&self) -> Option<SetSchema> {
938 support::child(&self.syntax)
939 }
940 #[inline]
941 pub fn alter_token(&self) -> Option<SyntaxToken> {
942 support::token(&self.syntax, SyntaxKind::ALTER_KW)
943 }
944 #[inline]
945 pub fn family_token(&self) -> Option<SyntaxToken> {
946 support::token(&self.syntax, SyntaxKind::FAMILY_KW)
947 }
948 #[inline]
949 pub fn operator_token(&self) -> Option<SyntaxToken> {
950 support::token(&self.syntax, SyntaxKind::OPERATOR_KW)
951 }
952 #[inline]
953 pub fn using_token(&self) -> Option<SyntaxToken> {
954 support::token(&self.syntax, SyntaxKind::USING_KW)
955 }
956}
957
958#[derive(Debug, Clone, PartialEq, Eq, Hash)]
959pub struct AlterOption {
960 pub(crate) syntax: SyntaxNode,
961}
962impl AlterOption {
963 #[inline]
964 pub fn literal(&self) -> Option<Literal> {
965 support::child(&self.syntax)
966 }
967 #[inline]
968 pub fn name_ref(&self) -> Option<NameRef> {
969 support::child(&self.syntax)
970 }
971 #[inline]
972 pub fn add_token(&self) -> Option<SyntaxToken> {
973 support::token(&self.syntax, SyntaxKind::ADD_KW)
974 }
975 #[inline]
976 pub fn drop_token(&self) -> Option<SyntaxToken> {
977 support::token(&self.syntax, SyntaxKind::DROP_KW)
978 }
979 #[inline]
980 pub fn set_token(&self) -> Option<SyntaxToken> {
981 support::token(&self.syntax, SyntaxKind::SET_KW)
982 }
983}
984
985#[derive(Debug, Clone, PartialEq, Eq, Hash)]
986pub struct AlterOptionList {
987 pub(crate) syntax: SyntaxNode,
988}
989impl AlterOptionList {
990 #[inline]
991 pub fn alter_options(&self) -> AstChildren<AlterOption> {
992 support::children(&self.syntax)
993 }
994}
995
996#[derive(Debug, Clone, PartialEq, Eq, Hash)]
997pub struct AlterPolicy {
998 pub(crate) syntax: SyntaxNode,
999}
1000impl AlterPolicy {
1001 #[inline]
1002 pub fn name_ref(&self) -> Option<NameRef> {
1003 support::child(&self.syntax)
1004 }
1005 #[inline]
1006 pub fn on_table(&self) -> Option<OnTable> {
1007 support::child(&self.syntax)
1008 }
1009 #[inline]
1010 pub fn rename_to(&self) -> Option<RenameTo> {
1011 support::child(&self.syntax)
1012 }
1013 #[inline]
1014 pub fn role_ref_list(&self) -> Option<RoleRefList> {
1015 support::child(&self.syntax)
1016 }
1017 #[inline]
1018 pub fn using_expr_clause(&self) -> Option<UsingExprClause> {
1019 support::child(&self.syntax)
1020 }
1021 #[inline]
1022 pub fn with_check_expr_clause(&self) -> Option<WithCheckExprClause> {
1023 support::child(&self.syntax)
1024 }
1025 #[inline]
1026 pub fn alter_token(&self) -> Option<SyntaxToken> {
1027 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1028 }
1029 #[inline]
1030 pub fn policy_token(&self) -> Option<SyntaxToken> {
1031 support::token(&self.syntax, SyntaxKind::POLICY_KW)
1032 }
1033 #[inline]
1034 pub fn to_token(&self) -> Option<SyntaxToken> {
1035 support::token(&self.syntax, SyntaxKind::TO_KW)
1036 }
1037}
1038
1039#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1040pub struct AlterProcedure {
1041 pub(crate) syntax: SyntaxNode,
1042}
1043impl AlterProcedure {
1044 #[inline]
1045 pub fn depends_on_extension(&self) -> Option<DependsOnExtension> {
1046 support::child(&self.syntax)
1047 }
1048 #[inline]
1049 pub fn func_option_list(&self) -> Option<FuncOptionList> {
1050 support::child(&self.syntax)
1051 }
1052 #[inline]
1053 pub fn function_sig(&self) -> Option<FunctionSig> {
1054 support::child(&self.syntax)
1055 }
1056 #[inline]
1057 pub fn no_depends_on_extension(&self) -> Option<NoDependsOnExtension> {
1058 support::child(&self.syntax)
1059 }
1060 #[inline]
1061 pub fn owner_to(&self) -> Option<OwnerTo> {
1062 support::child(&self.syntax)
1063 }
1064 #[inline]
1065 pub fn rename_to(&self) -> Option<RenameTo> {
1066 support::child(&self.syntax)
1067 }
1068 #[inline]
1069 pub fn set_schema(&self) -> Option<SetSchema> {
1070 support::child(&self.syntax)
1071 }
1072 #[inline]
1073 pub fn alter_token(&self) -> Option<SyntaxToken> {
1074 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1075 }
1076 #[inline]
1077 pub fn procedure_token(&self) -> Option<SyntaxToken> {
1078 support::token(&self.syntax, SyntaxKind::PROCEDURE_KW)
1079 }
1080 #[inline]
1081 pub fn restrict_token(&self) -> Option<SyntaxToken> {
1082 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
1083 }
1084}
1085
1086#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1087pub struct AlterPublication {
1088 pub(crate) syntax: SyntaxNode,
1089}
1090impl AlterPublication {
1091 #[inline]
1092 pub fn name_ref(&self) -> Option<NameRef> {
1093 support::child(&self.syntax)
1094 }
1095 #[inline]
1096 pub fn alter_token(&self) -> Option<SyntaxToken> {
1097 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1098 }
1099 #[inline]
1100 pub fn publication_token(&self) -> Option<SyntaxToken> {
1101 support::token(&self.syntax, SyntaxKind::PUBLICATION_KW)
1102 }
1103}
1104
1105#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1106pub struct AlterRole {
1107 pub(crate) syntax: SyntaxNode,
1108}
1109impl AlterRole {
1110 #[inline]
1111 pub fn role_ref(&self) -> Option<RoleRef> {
1112 support::child(&self.syntax)
1113 }
1114 #[inline]
1115 pub fn alter_token(&self) -> Option<SyntaxToken> {
1116 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1117 }
1118 #[inline]
1119 pub fn role_token(&self) -> Option<SyntaxToken> {
1120 support::token(&self.syntax, SyntaxKind::ROLE_KW)
1121 }
1122}
1123
1124#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1125pub struct AlterRoutine {
1126 pub(crate) syntax: SyntaxNode,
1127}
1128impl AlterRoutine {
1129 #[inline]
1130 pub fn depends_on_extension(&self) -> Option<DependsOnExtension> {
1131 support::child(&self.syntax)
1132 }
1133 #[inline]
1134 pub fn func_option_list(&self) -> Option<FuncOptionList> {
1135 support::child(&self.syntax)
1136 }
1137 #[inline]
1138 pub fn function_sig(&self) -> Option<FunctionSig> {
1139 support::child(&self.syntax)
1140 }
1141 #[inline]
1142 pub fn no_depends_on_extension(&self) -> Option<NoDependsOnExtension> {
1143 support::child(&self.syntax)
1144 }
1145 #[inline]
1146 pub fn owner_to(&self) -> Option<OwnerTo> {
1147 support::child(&self.syntax)
1148 }
1149 #[inline]
1150 pub fn rename_to(&self) -> Option<RenameTo> {
1151 support::child(&self.syntax)
1152 }
1153 #[inline]
1154 pub fn set_schema(&self) -> Option<SetSchema> {
1155 support::child(&self.syntax)
1156 }
1157 #[inline]
1158 pub fn alter_token(&self) -> Option<SyntaxToken> {
1159 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1160 }
1161 #[inline]
1162 pub fn restrict_token(&self) -> Option<SyntaxToken> {
1163 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
1164 }
1165 #[inline]
1166 pub fn routine_token(&self) -> Option<SyntaxToken> {
1167 support::token(&self.syntax, SyntaxKind::ROUTINE_KW)
1168 }
1169}
1170
1171#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1172pub struct AlterRule {
1173 pub(crate) syntax: SyntaxNode,
1174}
1175impl AlterRule {
1176 #[inline]
1177 pub fn name_ref(&self) -> Option<NameRef> {
1178 support::child(&self.syntax)
1179 }
1180 #[inline]
1181 pub fn on_table(&self) -> Option<OnTable> {
1182 support::child(&self.syntax)
1183 }
1184 #[inline]
1185 pub fn rename_to(&self) -> Option<RenameTo> {
1186 support::child(&self.syntax)
1187 }
1188 #[inline]
1189 pub fn alter_token(&self) -> Option<SyntaxToken> {
1190 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1191 }
1192 #[inline]
1193 pub fn on_token(&self) -> Option<SyntaxToken> {
1194 support::token(&self.syntax, SyntaxKind::ON_KW)
1195 }
1196 #[inline]
1197 pub fn rule_token(&self) -> Option<SyntaxToken> {
1198 support::token(&self.syntax, SyntaxKind::RULE_KW)
1199 }
1200}
1201
1202#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1203pub struct AlterSchema {
1204 pub(crate) syntax: SyntaxNode,
1205}
1206impl AlterSchema {
1207 #[inline]
1208 pub fn name_ref(&self) -> Option<NameRef> {
1209 support::child(&self.syntax)
1210 }
1211 #[inline]
1212 pub fn owner_to(&self) -> Option<OwnerTo> {
1213 support::child(&self.syntax)
1214 }
1215 #[inline]
1216 pub fn rename_to(&self) -> Option<RenameTo> {
1217 support::child(&self.syntax)
1218 }
1219 #[inline]
1220 pub fn alter_token(&self) -> Option<SyntaxToken> {
1221 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1222 }
1223 #[inline]
1224 pub fn schema_token(&self) -> Option<SyntaxToken> {
1225 support::token(&self.syntax, SyntaxKind::SCHEMA_KW)
1226 }
1227}
1228
1229#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1230pub struct AlterSequence {
1231 pub(crate) syntax: SyntaxNode,
1232}
1233impl AlterSequence {
1234 #[inline]
1235 pub fn if_exists(&self) -> Option<IfExists> {
1236 support::child(&self.syntax)
1237 }
1238 #[inline]
1239 pub fn path(&self) -> Option<Path> {
1240 support::child(&self.syntax)
1241 }
1242 #[inline]
1243 pub fn alter_token(&self) -> Option<SyntaxToken> {
1244 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1245 }
1246 #[inline]
1247 pub fn sequence_token(&self) -> Option<SyntaxToken> {
1248 support::token(&self.syntax, SyntaxKind::SEQUENCE_KW)
1249 }
1250}
1251
1252#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1253pub struct AlterServer {
1254 pub(crate) syntax: SyntaxNode,
1255}
1256impl AlterServer {
1257 #[inline]
1258 pub fn alter_option_list(&self) -> Option<AlterOptionList> {
1259 support::child(&self.syntax)
1260 }
1261 #[inline]
1262 pub fn name_ref(&self) -> Option<NameRef> {
1263 support::child(&self.syntax)
1264 }
1265 #[inline]
1266 pub fn alter_token(&self) -> Option<SyntaxToken> {
1267 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1268 }
1269 #[inline]
1270 pub fn server_token(&self) -> Option<SyntaxToken> {
1271 support::token(&self.syntax, SyntaxKind::SERVER_KW)
1272 }
1273}
1274
1275#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1276pub struct AlterSetStatistics {
1277 pub(crate) syntax: SyntaxNode,
1278}
1279impl AlterSetStatistics {
1280 #[inline]
1281 pub fn literal(&self) -> Option<Literal> {
1282 support::child(&self.syntax)
1283 }
1284 #[inline]
1285 pub fn name_ref(&self) -> Option<NameRef> {
1286 support::child(&self.syntax)
1287 }
1288 #[inline]
1289 pub fn column_token(&self) -> Option<SyntaxToken> {
1290 support::token(&self.syntax, SyntaxKind::COLUMN_KW)
1291 }
1292 #[inline]
1293 pub fn set_token(&self) -> Option<SyntaxToken> {
1294 support::token(&self.syntax, SyntaxKind::SET_KW)
1295 }
1296 #[inline]
1297 pub fn statistics_token(&self) -> Option<SyntaxToken> {
1298 support::token(&self.syntax, SyntaxKind::STATISTICS_KW)
1299 }
1300}
1301
1302#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1303pub struct AlterStatistics {
1304 pub(crate) syntax: SyntaxNode,
1305}
1306impl AlterStatistics {
1307 #[inline]
1308 pub fn path(&self) -> Option<Path> {
1309 support::child(&self.syntax)
1310 }
1311 #[inline]
1312 pub fn alter_token(&self) -> Option<SyntaxToken> {
1313 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1314 }
1315 #[inline]
1316 pub fn statistics_token(&self) -> Option<SyntaxToken> {
1317 support::token(&self.syntax, SyntaxKind::STATISTICS_KW)
1318 }
1319}
1320
1321#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1322pub struct AlterSubscription {
1323 pub(crate) syntax: SyntaxNode,
1324}
1325impl AlterSubscription {
1326 #[inline]
1327 pub fn name_ref(&self) -> Option<NameRef> {
1328 support::child(&self.syntax)
1329 }
1330 #[inline]
1331 pub fn alter_token(&self) -> Option<SyntaxToken> {
1332 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1333 }
1334 #[inline]
1335 pub fn subscription_token(&self) -> Option<SyntaxToken> {
1336 support::token(&self.syntax, SyntaxKind::SUBSCRIPTION_KW)
1337 }
1338}
1339
1340#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1341pub struct AlterSystem {
1342 pub(crate) syntax: SyntaxNode,
1343}
1344impl AlterSystem {
1345 #[inline]
1346 pub fn alter_token(&self) -> Option<SyntaxToken> {
1347 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1348 }
1349 #[inline]
1350 pub fn set_token(&self) -> Option<SyntaxToken> {
1351 support::token(&self.syntax, SyntaxKind::SET_KW)
1352 }
1353 #[inline]
1354 pub fn system_token(&self) -> Option<SyntaxToken> {
1355 support::token(&self.syntax, SyntaxKind::SYSTEM_KW)
1356 }
1357}
1358
1359#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1360pub struct AlterTable {
1361 pub(crate) syntax: SyntaxNode,
1362}
1363impl AlterTable {
1364 #[inline]
1365 pub fn actions(&self) -> AstChildren<AlterTableAction> {
1366 support::children(&self.syntax)
1367 }
1368 #[inline]
1369 pub fn relation_name(&self) -> Option<RelationName> {
1370 support::child(&self.syntax)
1371 }
1372 #[inline]
1373 pub fn alter_token(&self) -> Option<SyntaxToken> {
1374 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1375 }
1376 #[inline]
1377 pub fn table_token(&self) -> Option<SyntaxToken> {
1378 support::token(&self.syntax, SyntaxKind::TABLE_KW)
1379 }
1380}
1381
1382#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1383pub struct AlterTablespace {
1384 pub(crate) syntax: SyntaxNode,
1385}
1386impl AlterTablespace {
1387 #[inline]
1388 pub fn owner_to(&self) -> Option<OwnerTo> {
1389 support::child(&self.syntax)
1390 }
1391 #[inline]
1392 pub fn path(&self) -> Option<Path> {
1393 support::child(&self.syntax)
1394 }
1395 #[inline]
1396 pub fn rename_to(&self) -> Option<RenameTo> {
1397 support::child(&self.syntax)
1398 }
1399 #[inline]
1400 pub fn reset_options(&self) -> Option<ResetOptions> {
1401 support::child(&self.syntax)
1402 }
1403 #[inline]
1404 pub fn set_options(&self) -> Option<SetOptions> {
1405 support::child(&self.syntax)
1406 }
1407 #[inline]
1408 pub fn alter_token(&self) -> Option<SyntaxToken> {
1409 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1410 }
1411 #[inline]
1412 pub fn tablespace_token(&self) -> Option<SyntaxToken> {
1413 support::token(&self.syntax, SyntaxKind::TABLESPACE_KW)
1414 }
1415}
1416
1417#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1418pub struct AlterTextSearchConfiguration {
1419 pub(crate) syntax: SyntaxNode,
1420}
1421impl AlterTextSearchConfiguration {
1422 #[inline]
1423 pub fn owner_to(&self) -> Option<OwnerTo> {
1424 support::child(&self.syntax)
1425 }
1426 #[inline]
1427 pub fn path(&self) -> Option<Path> {
1428 support::child(&self.syntax)
1429 }
1430 #[inline]
1431 pub fn rename_to(&self) -> Option<RenameTo> {
1432 support::child(&self.syntax)
1433 }
1434 #[inline]
1435 pub fn set_schema(&self) -> Option<SetSchema> {
1436 support::child(&self.syntax)
1437 }
1438 #[inline]
1439 pub fn alter_token(&self) -> Option<SyntaxToken> {
1440 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1441 }
1442 #[inline]
1443 pub fn configuration_token(&self) -> Option<SyntaxToken> {
1444 support::token(&self.syntax, SyntaxKind::CONFIGURATION_KW)
1445 }
1446 #[inline]
1447 pub fn search_token(&self) -> Option<SyntaxToken> {
1448 support::token(&self.syntax, SyntaxKind::SEARCH_KW)
1449 }
1450 #[inline]
1451 pub fn text_token(&self) -> Option<SyntaxToken> {
1452 support::token(&self.syntax, SyntaxKind::TEXT_KW)
1453 }
1454}
1455
1456#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1457pub struct AlterTextSearchDictionary {
1458 pub(crate) syntax: SyntaxNode,
1459}
1460impl AlterTextSearchDictionary {
1461 #[inline]
1462 pub fn attribute_list(&self) -> Option<AttributeList> {
1463 support::child(&self.syntax)
1464 }
1465 #[inline]
1466 pub fn owner_to(&self) -> Option<OwnerTo> {
1467 support::child(&self.syntax)
1468 }
1469 #[inline]
1470 pub fn path(&self) -> Option<Path> {
1471 support::child(&self.syntax)
1472 }
1473 #[inline]
1474 pub fn rename_to(&self) -> Option<RenameTo> {
1475 support::child(&self.syntax)
1476 }
1477 #[inline]
1478 pub fn set_schema(&self) -> Option<SetSchema> {
1479 support::child(&self.syntax)
1480 }
1481 #[inline]
1482 pub fn alter_token(&self) -> Option<SyntaxToken> {
1483 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1484 }
1485 #[inline]
1486 pub fn dictionary_token(&self) -> Option<SyntaxToken> {
1487 support::token(&self.syntax, SyntaxKind::DICTIONARY_KW)
1488 }
1489 #[inline]
1490 pub fn search_token(&self) -> Option<SyntaxToken> {
1491 support::token(&self.syntax, SyntaxKind::SEARCH_KW)
1492 }
1493 #[inline]
1494 pub fn text_token(&self) -> Option<SyntaxToken> {
1495 support::token(&self.syntax, SyntaxKind::TEXT_KW)
1496 }
1497}
1498
1499#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1500pub struct AlterTextSearchParser {
1501 pub(crate) syntax: SyntaxNode,
1502}
1503impl AlterTextSearchParser {
1504 #[inline]
1505 pub fn path(&self) -> Option<Path> {
1506 support::child(&self.syntax)
1507 }
1508 #[inline]
1509 pub fn rename_to(&self) -> Option<RenameTo> {
1510 support::child(&self.syntax)
1511 }
1512 #[inline]
1513 pub fn set_schema(&self) -> Option<SetSchema> {
1514 support::child(&self.syntax)
1515 }
1516 #[inline]
1517 pub fn alter_token(&self) -> Option<SyntaxToken> {
1518 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1519 }
1520 #[inline]
1521 pub fn parser_token(&self) -> Option<SyntaxToken> {
1522 support::token(&self.syntax, SyntaxKind::PARSER_KW)
1523 }
1524 #[inline]
1525 pub fn search_token(&self) -> Option<SyntaxToken> {
1526 support::token(&self.syntax, SyntaxKind::SEARCH_KW)
1527 }
1528 #[inline]
1529 pub fn text_token(&self) -> Option<SyntaxToken> {
1530 support::token(&self.syntax, SyntaxKind::TEXT_KW)
1531 }
1532}
1533
1534#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1535pub struct AlterTextSearchTemplate {
1536 pub(crate) syntax: SyntaxNode,
1537}
1538impl AlterTextSearchTemplate {
1539 #[inline]
1540 pub fn path(&self) -> Option<Path> {
1541 support::child(&self.syntax)
1542 }
1543 #[inline]
1544 pub fn rename_to(&self) -> Option<RenameTo> {
1545 support::child(&self.syntax)
1546 }
1547 #[inline]
1548 pub fn set_schema(&self) -> Option<SetSchema> {
1549 support::child(&self.syntax)
1550 }
1551 #[inline]
1552 pub fn alter_token(&self) -> Option<SyntaxToken> {
1553 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1554 }
1555 #[inline]
1556 pub fn search_token(&self) -> Option<SyntaxToken> {
1557 support::token(&self.syntax, SyntaxKind::SEARCH_KW)
1558 }
1559 #[inline]
1560 pub fn template_token(&self) -> Option<SyntaxToken> {
1561 support::token(&self.syntax, SyntaxKind::TEMPLATE_KW)
1562 }
1563 #[inline]
1564 pub fn text_token(&self) -> Option<SyntaxToken> {
1565 support::token(&self.syntax, SyntaxKind::TEXT_KW)
1566 }
1567}
1568
1569#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1570pub struct AlterTrigger {
1571 pub(crate) syntax: SyntaxNode,
1572}
1573impl AlterTrigger {
1574 #[inline]
1575 pub fn depends_on_extension(&self) -> Option<DependsOnExtension> {
1576 support::child(&self.syntax)
1577 }
1578 #[inline]
1579 pub fn name_ref(&self) -> Option<NameRef> {
1580 support::child(&self.syntax)
1581 }
1582 #[inline]
1583 pub fn no_depends_on_extension(&self) -> Option<NoDependsOnExtension> {
1584 support::child(&self.syntax)
1585 }
1586 #[inline]
1587 pub fn on_table(&self) -> Option<OnTable> {
1588 support::child(&self.syntax)
1589 }
1590 #[inline]
1591 pub fn rename_to(&self) -> Option<RenameTo> {
1592 support::child(&self.syntax)
1593 }
1594 #[inline]
1595 pub fn alter_token(&self) -> Option<SyntaxToken> {
1596 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1597 }
1598 #[inline]
1599 pub fn trigger_token(&self) -> Option<SyntaxToken> {
1600 support::token(&self.syntax, SyntaxKind::TRIGGER_KW)
1601 }
1602}
1603
1604#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1605pub struct AlterType {
1606 pub(crate) syntax: SyntaxNode,
1607}
1608impl AlterType {
1609 #[inline]
1610 pub fn path(&self) -> Option<Path> {
1611 support::child(&self.syntax)
1612 }
1613 #[inline]
1614 pub fn alter_token(&self) -> Option<SyntaxToken> {
1615 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1616 }
1617 #[inline]
1618 pub fn type_token(&self) -> Option<SyntaxToken> {
1619 support::token(&self.syntax, SyntaxKind::TYPE_KW)
1620 }
1621}
1622
1623#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1624pub struct AlterUser {
1625 pub(crate) syntax: SyntaxNode,
1626}
1627impl AlterUser {
1628 #[inline]
1629 pub fn role_ref(&self) -> Option<RoleRef> {
1630 support::child(&self.syntax)
1631 }
1632 #[inline]
1633 pub fn alter_token(&self) -> Option<SyntaxToken> {
1634 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1635 }
1636 #[inline]
1637 pub fn user_token(&self) -> Option<SyntaxToken> {
1638 support::token(&self.syntax, SyntaxKind::USER_KW)
1639 }
1640}
1641
1642#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1643pub struct AlterUserMapping {
1644 pub(crate) syntax: SyntaxNode,
1645}
1646impl AlterUserMapping {
1647 #[inline]
1648 pub fn alter_option_list(&self) -> Option<AlterOptionList> {
1649 support::child(&self.syntax)
1650 }
1651 #[inline]
1652 pub fn role_ref(&self) -> Option<RoleRef> {
1653 support::child(&self.syntax)
1654 }
1655 #[inline]
1656 pub fn server_name(&self) -> Option<ServerName> {
1657 support::child(&self.syntax)
1658 }
1659 #[inline]
1660 pub fn alter_token(&self) -> Option<SyntaxToken> {
1661 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1662 }
1663 #[inline]
1664 pub fn for_token(&self) -> Option<SyntaxToken> {
1665 support::token(&self.syntax, SyntaxKind::FOR_KW)
1666 }
1667 #[inline]
1668 pub fn mapping_token(&self) -> Option<SyntaxToken> {
1669 support::token(&self.syntax, SyntaxKind::MAPPING_KW)
1670 }
1671 #[inline]
1672 pub fn user_token(&self) -> Option<SyntaxToken> {
1673 support::token(&self.syntax, SyntaxKind::USER_KW)
1674 }
1675}
1676
1677#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1678pub struct AlterView {
1679 pub(crate) syntax: SyntaxNode,
1680}
1681impl AlterView {
1682 #[inline]
1683 pub fn path(&self) -> Option<Path> {
1684 support::child(&self.syntax)
1685 }
1686 #[inline]
1687 pub fn alter_token(&self) -> Option<SyntaxToken> {
1688 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1689 }
1690 #[inline]
1691 pub fn view_token(&self) -> Option<SyntaxToken> {
1692 support::token(&self.syntax, SyntaxKind::VIEW_KW)
1693 }
1694}
1695
1696#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1697pub struct Analyze {
1698 pub(crate) syntax: SyntaxNode,
1699}
1700impl Analyze {
1701 #[inline]
1702 pub fn option_item_list(&self) -> Option<OptionItemList> {
1703 support::child(&self.syntax)
1704 }
1705 #[inline]
1706 pub fn table_and_columns_list(&self) -> Option<TableAndColumnsList> {
1707 support::child(&self.syntax)
1708 }
1709 #[inline]
1710 pub fn analyse_token(&self) -> Option<SyntaxToken> {
1711 support::token(&self.syntax, SyntaxKind::ANALYSE_KW)
1712 }
1713 #[inline]
1714 pub fn analyze_token(&self) -> Option<SyntaxToken> {
1715 support::token(&self.syntax, SyntaxKind::ANALYZE_KW)
1716 }
1717 #[inline]
1718 pub fn verbose_token(&self) -> Option<SyntaxToken> {
1719 support::token(&self.syntax, SyntaxKind::VERBOSE_KW)
1720 }
1721}
1722
1723#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1724pub struct AnyFn {
1725 pub(crate) syntax: SyntaxNode,
1726}
1727impl AnyFn {
1728 #[inline]
1729 pub fn expr(&self) -> Option<Expr> {
1730 support::child(&self.syntax)
1731 }
1732 #[inline]
1733 pub fn select_variant(&self) -> Option<SelectVariant> {
1734 support::child(&self.syntax)
1735 }
1736 #[inline]
1737 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
1738 support::token(&self.syntax, SyntaxKind::L_PAREN)
1739 }
1740 #[inline]
1741 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
1742 support::token(&self.syntax, SyntaxKind::R_PAREN)
1743 }
1744 #[inline]
1745 pub fn any_token(&self) -> Option<SyntaxToken> {
1746 support::token(&self.syntax, SyntaxKind::ANY_KW)
1747 }
1748}
1749
1750#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1751pub struct Arg {
1752 pub(crate) syntax: SyntaxNode,
1753}
1754impl Arg {
1755 #[inline]
1756 pub fn expr(&self) -> Option<Expr> {
1757 support::child(&self.syntax)
1758 }
1759}
1760
1761#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1762pub struct ArgList {
1763 pub(crate) syntax: SyntaxNode,
1764}
1765impl ArgList {
1766 #[inline]
1767 pub fn args(&self) -> AstChildren<Expr> {
1768 support::children(&self.syntax)
1769 }
1770 #[inline]
1771 pub fn expr(&self) -> Option<Expr> {
1772 support::child(&self.syntax)
1773 }
1774 #[inline]
1775 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
1776 support::token(&self.syntax, SyntaxKind::L_PAREN)
1777 }
1778 #[inline]
1779 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
1780 support::token(&self.syntax, SyntaxKind::R_PAREN)
1781 }
1782 #[inline]
1783 pub fn star_token(&self) -> Option<SyntaxToken> {
1784 support::token(&self.syntax, SyntaxKind::STAR)
1785 }
1786 #[inline]
1787 pub fn all_token(&self) -> Option<SyntaxToken> {
1788 support::token(&self.syntax, SyntaxKind::ALL_KW)
1789 }
1790 #[inline]
1791 pub fn distinct_token(&self) -> Option<SyntaxToken> {
1792 support::token(&self.syntax, SyntaxKind::DISTINCT_KW)
1793 }
1794 #[inline]
1795 pub fn variadic_token(&self) -> Option<SyntaxToken> {
1796 support::token(&self.syntax, SyntaxKind::VARIADIC_KW)
1797 }
1798}
1799
1800#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1801pub struct ArrayExpr {
1802 pub(crate) syntax: SyntaxNode,
1803}
1804impl ArrayExpr {
1805 #[inline]
1806 pub fn exprs(&self) -> AstChildren<Expr> {
1807 support::children(&self.syntax)
1808 }
1809 #[inline]
1810 pub fn select(&self) -> Option<Select> {
1811 support::child(&self.syntax)
1812 }
1813 #[inline]
1814 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
1815 support::token(&self.syntax, SyntaxKind::L_PAREN)
1816 }
1817 #[inline]
1818 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
1819 support::token(&self.syntax, SyntaxKind::R_PAREN)
1820 }
1821 #[inline]
1822 pub fn l_brack_token(&self) -> Option<SyntaxToken> {
1823 support::token(&self.syntax, SyntaxKind::L_BRACK)
1824 }
1825 #[inline]
1826 pub fn r_brack_token(&self) -> Option<SyntaxToken> {
1827 support::token(&self.syntax, SyntaxKind::R_BRACK)
1828 }
1829 #[inline]
1830 pub fn array_token(&self) -> Option<SyntaxToken> {
1831 support::token(&self.syntax, SyntaxKind::ARRAY_KW)
1832 }
1833}
1834
1835#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1836pub struct ArrayType {
1837 pub(crate) syntax: SyntaxNode,
1838}
1839impl ArrayType {
1840 #[inline]
1841 pub fn expr(&self) -> Option<Expr> {
1842 support::child(&self.syntax)
1843 }
1844 #[inline]
1845 pub fn name_ref(&self) -> Option<NameRef> {
1846 support::child(&self.syntax)
1847 }
1848 #[inline]
1849 pub fn ty(&self) -> Option<Type> {
1850 support::child(&self.syntax)
1851 }
1852 #[inline]
1853 pub fn l_brack_token(&self) -> Option<SyntaxToken> {
1854 support::token(&self.syntax, SyntaxKind::L_BRACK)
1855 }
1856 #[inline]
1857 pub fn r_brack_token(&self) -> Option<SyntaxToken> {
1858 support::token(&self.syntax, SyntaxKind::R_BRACK)
1859 }
1860 #[inline]
1861 pub fn array_token(&self) -> Option<SyntaxToken> {
1862 support::token(&self.syntax, SyntaxKind::ARRAY_KW)
1863 }
1864}
1865
1866#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1867pub struct AsFuncOption {
1868 pub(crate) syntax: SyntaxNode,
1869}
1870impl AsFuncOption {
1871 #[inline]
1872 pub fn definition(&self) -> Option<Literal> {
1873 support::child(&self.syntax)
1874 }
1875 #[inline]
1876 pub fn link_symbol(&self) -> Option<Literal> {
1877 support::child(&self.syntax)
1878 }
1879 #[inline]
1880 pub fn obj_file(&self) -> Option<Literal> {
1881 support::child(&self.syntax)
1882 }
1883 #[inline]
1884 pub fn comma_token(&self) -> Option<SyntaxToken> {
1885 support::token(&self.syntax, SyntaxKind::COMMA)
1886 }
1887 #[inline]
1888 pub fn as_token(&self) -> Option<SyntaxToken> {
1889 support::token(&self.syntax, SyntaxKind::AS_KW)
1890 }
1891}
1892
1893#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1894pub struct AsName {
1895 pub(crate) syntax: SyntaxNode,
1896}
1897impl AsName {
1898 #[inline]
1899 pub fn name(&self) -> Option<Name> {
1900 support::child(&self.syntax)
1901 }
1902 #[inline]
1903 pub fn as_token(&self) -> Option<SyntaxToken> {
1904 support::token(&self.syntax, SyntaxKind::AS_KW)
1905 }
1906}
1907
1908#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1909pub struct AsPolicyType {
1910 pub(crate) syntax: SyntaxNode,
1911}
1912impl AsPolicyType {
1913 #[inline]
1914 pub fn as_token(&self) -> Option<SyntaxToken> {
1915 support::token(&self.syntax, SyntaxKind::AS_KW)
1916 }
1917 #[inline]
1918 pub fn ident_token(&self) -> Option<SyntaxToken> {
1919 support::token(&self.syntax, SyntaxKind::IDENT)
1920 }
1921}
1922
1923#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1924pub struct AtTimeZone {
1925 pub(crate) syntax: SyntaxNode,
1926}
1927impl AtTimeZone {
1928 #[inline]
1929 pub fn at_token(&self) -> Option<SyntaxToken> {
1930 support::token(&self.syntax, SyntaxKind::AT_KW)
1931 }
1932 #[inline]
1933 pub fn time_token(&self) -> Option<SyntaxToken> {
1934 support::token(&self.syntax, SyntaxKind::TIME_KW)
1935 }
1936 #[inline]
1937 pub fn zone_token(&self) -> Option<SyntaxToken> {
1938 support::token(&self.syntax, SyntaxKind::ZONE_KW)
1939 }
1940}
1941
1942#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1943pub struct AttachPartition {
1944 pub(crate) syntax: SyntaxNode,
1945}
1946impl AttachPartition {
1947 #[inline]
1948 pub fn partition_type(&self) -> Option<PartitionType> {
1949 support::child(&self.syntax)
1950 }
1951 #[inline]
1952 pub fn path(&self) -> Option<Path> {
1953 support::child(&self.syntax)
1954 }
1955 #[inline]
1956 pub fn attach_token(&self) -> Option<SyntaxToken> {
1957 support::token(&self.syntax, SyntaxKind::ATTACH_KW)
1958 }
1959 #[inline]
1960 pub fn partition_token(&self) -> Option<SyntaxToken> {
1961 support::token(&self.syntax, SyntaxKind::PARTITION_KW)
1962 }
1963}
1964
1965#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1966pub struct AttributeList {
1967 pub(crate) syntax: SyntaxNode,
1968}
1969impl AttributeList {
1970 #[inline]
1971 pub fn attribute_options(&self) -> AstChildren<AttributeOption> {
1972 support::children(&self.syntax)
1973 }
1974 #[inline]
1975 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
1976 support::token(&self.syntax, SyntaxKind::L_PAREN)
1977 }
1978 #[inline]
1979 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
1980 support::token(&self.syntax, SyntaxKind::R_PAREN)
1981 }
1982}
1983
1984#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1985pub struct AttributeOption {
1986 pub(crate) syntax: SyntaxNode,
1987}
1988impl AttributeOption {
1989 #[inline]
1990 pub fn attribute_value(&self) -> Option<AttributeValue> {
1991 support::child(&self.syntax)
1992 }
1993 #[inline]
1994 pub fn name(&self) -> Option<Name> {
1995 support::child(&self.syntax)
1996 }
1997 #[inline]
1998 pub fn dot_token(&self) -> Option<SyntaxToken> {
1999 support::token(&self.syntax, SyntaxKind::DOT)
2000 }
2001 #[inline]
2002 pub fn eq_token(&self) -> Option<SyntaxToken> {
2003 support::token(&self.syntax, SyntaxKind::EQ)
2004 }
2005}
2006
2007#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2008pub struct AttributeValue {
2009 pub(crate) syntax: SyntaxNode,
2010}
2011impl AttributeValue {
2012 #[inline]
2013 pub fn literal(&self) -> Option<Literal> {
2014 support::child(&self.syntax)
2015 }
2016 #[inline]
2017 pub fn op(&self) -> Option<Op> {
2018 support::child(&self.syntax)
2019 }
2020 #[inline]
2021 pub fn ty(&self) -> Option<Type> {
2022 support::child(&self.syntax)
2023 }
2024 #[inline]
2025 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
2026 support::token(&self.syntax, SyntaxKind::L_PAREN)
2027 }
2028 #[inline]
2029 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
2030 support::token(&self.syntax, SyntaxKind::R_PAREN)
2031 }
2032 #[inline]
2033 pub fn none_token(&self) -> Option<SyntaxToken> {
2034 support::token(&self.syntax, SyntaxKind::NONE_KW)
2035 }
2036 #[inline]
2037 pub fn operator_token(&self) -> Option<SyntaxToken> {
2038 support::token(&self.syntax, SyntaxKind::OPERATOR_KW)
2039 }
2040}
2041
2042#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2043pub struct Begin {
2044 pub(crate) syntax: SyntaxNode,
2045}
2046impl Begin {
2047 #[inline]
2048 pub fn transaction_mode_list(&self) -> Option<TransactionModeList> {
2049 support::child(&self.syntax)
2050 }
2051 #[inline]
2052 pub fn begin_token(&self) -> Option<SyntaxToken> {
2053 support::token(&self.syntax, SyntaxKind::BEGIN_KW)
2054 }
2055 #[inline]
2056 pub fn start_token(&self) -> Option<SyntaxToken> {
2057 support::token(&self.syntax, SyntaxKind::START_KW)
2058 }
2059 #[inline]
2060 pub fn transaction_token(&self) -> Option<SyntaxToken> {
2061 support::token(&self.syntax, SyntaxKind::TRANSACTION_KW)
2062 }
2063 #[inline]
2064 pub fn work_token(&self) -> Option<SyntaxToken> {
2065 support::token(&self.syntax, SyntaxKind::WORK_KW)
2066 }
2067}
2068
2069#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2070pub struct BeginFuncOption {
2071 pub(crate) syntax: SyntaxNode,
2072}
2073impl BeginFuncOption {
2074 #[inline]
2075 pub fn return_func_option(&self) -> Option<ReturnFuncOption> {
2076 support::child(&self.syntax)
2077 }
2078 #[inline]
2079 pub fn stmt(&self) -> Option<Stmt> {
2080 support::child(&self.syntax)
2081 }
2082 #[inline]
2083 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
2084 support::token(&self.syntax, SyntaxKind::SEMICOLON)
2085 }
2086}
2087
2088#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2089pub struct BeginFuncOptionList {
2090 pub(crate) syntax: SyntaxNode,
2091}
2092impl BeginFuncOptionList {
2093 #[inline]
2094 pub fn begin_func_options(&self) -> AstChildren<BeginFuncOption> {
2095 support::children(&self.syntax)
2096 }
2097 #[inline]
2098 pub fn atomic_token(&self) -> Option<SyntaxToken> {
2099 support::token(&self.syntax, SyntaxKind::ATOMIC_KW)
2100 }
2101 #[inline]
2102 pub fn begin_token(&self) -> Option<SyntaxToken> {
2103 support::token(&self.syntax, SyntaxKind::BEGIN_KW)
2104 }
2105 #[inline]
2106 pub fn end_token(&self) -> Option<SyntaxToken> {
2107 support::token(&self.syntax, SyntaxKind::END_KW)
2108 }
2109}
2110
2111#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2112pub struct BetweenExpr {
2113 pub(crate) syntax: SyntaxNode,
2114}
2115impl BetweenExpr {
2116 #[inline]
2117 pub fn and_token(&self) -> Option<SyntaxToken> {
2118 support::token(&self.syntax, SyntaxKind::AND_KW)
2119 }
2120 #[inline]
2121 pub fn between_token(&self) -> Option<SyntaxToken> {
2122 support::token(&self.syntax, SyntaxKind::BETWEEN_KW)
2123 }
2124}
2125
2126#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2127pub struct BinExpr {
2128 pub(crate) syntax: SyntaxNode,
2129}
2130impl BinExpr {
2131 #[inline]
2132 pub fn op(&self) -> Option<Op> {
2133 support::child(&self.syntax)
2134 }
2135}
2136
2137#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2138pub struct BitType {
2139 pub(crate) syntax: SyntaxNode,
2140}
2141impl BitType {
2142 #[inline]
2143 pub fn arg_list(&self) -> Option<ArgList> {
2144 support::child(&self.syntax)
2145 }
2146 #[inline]
2147 pub fn bit_token(&self) -> Option<SyntaxToken> {
2148 support::token(&self.syntax, SyntaxKind::BIT_KW)
2149 }
2150 #[inline]
2151 pub fn varying_token(&self) -> Option<SyntaxToken> {
2152 support::token(&self.syntax, SyntaxKind::VARYING_KW)
2153 }
2154}
2155
2156#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2157pub struct Call {
2158 pub(crate) syntax: SyntaxNode,
2159}
2160impl Call {
2161 #[inline]
2162 pub fn arg_list(&self) -> Option<ArgList> {
2163 support::child(&self.syntax)
2164 }
2165 #[inline]
2166 pub fn path(&self) -> Option<Path> {
2167 support::child(&self.syntax)
2168 }
2169 #[inline]
2170 pub fn call_token(&self) -> Option<SyntaxToken> {
2171 support::token(&self.syntax, SyntaxKind::CALL_KW)
2172 }
2173}
2174
2175#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2176pub struct CallExpr {
2177 pub(crate) syntax: SyntaxNode,
2178}
2179impl CallExpr {
2180 #[inline]
2181 pub fn all_fn(&self) -> Option<AllFn> {
2182 support::child(&self.syntax)
2183 }
2184 #[inline]
2185 pub fn any_fn(&self) -> Option<AnyFn> {
2186 support::child(&self.syntax)
2187 }
2188 #[inline]
2189 pub fn arg_list(&self) -> Option<ArgList> {
2190 support::child(&self.syntax)
2191 }
2192 #[inline]
2193 pub fn exists_fn(&self) -> Option<ExistsFn> {
2194 support::child(&self.syntax)
2195 }
2196 #[inline]
2197 pub fn expr(&self) -> Option<Expr> {
2198 support::child(&self.syntax)
2199 }
2200 #[inline]
2201 pub fn extract_fn(&self) -> Option<ExtractFn> {
2202 support::child(&self.syntax)
2203 }
2204 #[inline]
2205 pub fn filter_clause(&self) -> Option<FilterClause> {
2206 support::child(&self.syntax)
2207 }
2208 #[inline]
2209 pub fn json_array_agg_fn(&self) -> Option<JsonArrayAggFn> {
2210 support::child(&self.syntax)
2211 }
2212 #[inline]
2213 pub fn json_array_fn(&self) -> Option<JsonArrayFn> {
2214 support::child(&self.syntax)
2215 }
2216 #[inline]
2217 pub fn json_exists_fn(&self) -> Option<JsonExistsFn> {
2218 support::child(&self.syntax)
2219 }
2220 #[inline]
2221 pub fn json_fn(&self) -> Option<JsonFn> {
2222 support::child(&self.syntax)
2223 }
2224 #[inline]
2225 pub fn json_object_agg_fn(&self) -> Option<JsonObjectAggFn> {
2226 support::child(&self.syntax)
2227 }
2228 #[inline]
2229 pub fn json_object_fn(&self) -> Option<JsonObjectFn> {
2230 support::child(&self.syntax)
2231 }
2232 #[inline]
2233 pub fn json_query_fn(&self) -> Option<JsonQueryFn> {
2234 support::child(&self.syntax)
2235 }
2236 #[inline]
2237 pub fn json_scalar_fn(&self) -> Option<JsonScalarFn> {
2238 support::child(&self.syntax)
2239 }
2240 #[inline]
2241 pub fn json_serialize_fn(&self) -> Option<JsonSerializeFn> {
2242 support::child(&self.syntax)
2243 }
2244 #[inline]
2245 pub fn json_value_fn(&self) -> Option<JsonValueFn> {
2246 support::child(&self.syntax)
2247 }
2248 #[inline]
2249 pub fn over_clause(&self) -> Option<OverClause> {
2250 support::child(&self.syntax)
2251 }
2252 #[inline]
2253 pub fn overlay_fn(&self) -> Option<OverlayFn> {
2254 support::child(&self.syntax)
2255 }
2256 #[inline]
2257 pub fn position_fn(&self) -> Option<PositionFn> {
2258 support::child(&self.syntax)
2259 }
2260 #[inline]
2261 pub fn some_fn(&self) -> Option<SomeFn> {
2262 support::child(&self.syntax)
2263 }
2264 #[inline]
2265 pub fn substring_fn(&self) -> Option<SubstringFn> {
2266 support::child(&self.syntax)
2267 }
2268 #[inline]
2269 pub fn trim_fn(&self) -> Option<TrimFn> {
2270 support::child(&self.syntax)
2271 }
2272 #[inline]
2273 pub fn within_clause(&self) -> Option<WithinClause> {
2274 support::child(&self.syntax)
2275 }
2276 #[inline]
2277 pub fn xml_element_fn(&self) -> Option<XmlElementFn> {
2278 support::child(&self.syntax)
2279 }
2280 #[inline]
2281 pub fn xml_exists_fn(&self) -> Option<XmlExistsFn> {
2282 support::child(&self.syntax)
2283 }
2284 #[inline]
2285 pub fn xml_forest_fn(&self) -> Option<XmlForestFn> {
2286 support::child(&self.syntax)
2287 }
2288 #[inline]
2289 pub fn xml_parse_fn(&self) -> Option<XmlParseFn> {
2290 support::child(&self.syntax)
2291 }
2292 #[inline]
2293 pub fn xml_pi_fn(&self) -> Option<XmlPiFn> {
2294 support::child(&self.syntax)
2295 }
2296 #[inline]
2297 pub fn xml_root_fn(&self) -> Option<XmlRootFn> {
2298 support::child(&self.syntax)
2299 }
2300 #[inline]
2301 pub fn xml_serialize_fn(&self) -> Option<XmlSerializeFn> {
2302 support::child(&self.syntax)
2303 }
2304}
2305
2306#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2307pub struct Cascade {
2308 pub(crate) syntax: SyntaxNode,
2309}
2310impl Cascade {
2311 #[inline]
2312 pub fn cascade_token(&self) -> Option<SyntaxToken> {
2313 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
2314 }
2315}
2316
2317#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2318pub struct CaseExpr {
2319 pub(crate) syntax: SyntaxNode,
2320}
2321impl CaseExpr {
2322 #[inline]
2323 pub fn else_clause(&self) -> Option<ElseClause> {
2324 support::child(&self.syntax)
2325 }
2326 #[inline]
2327 pub fn expr(&self) -> Option<Expr> {
2328 support::child(&self.syntax)
2329 }
2330 #[inline]
2331 pub fn when_clause_list(&self) -> Option<WhenClauseList> {
2332 support::child(&self.syntax)
2333 }
2334 #[inline]
2335 pub fn case_token(&self) -> Option<SyntaxToken> {
2336 support::token(&self.syntax, SyntaxKind::CASE_KW)
2337 }
2338}
2339
2340#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2341pub struct CastExpr {
2342 pub(crate) syntax: SyntaxNode,
2343}
2344impl CastExpr {
2345 #[inline]
2346 pub fn colon_colon(&self) -> Option<ColonColon> {
2347 support::child(&self.syntax)
2348 }
2349 #[inline]
2350 pub fn expr(&self) -> Option<Expr> {
2351 support::child(&self.syntax)
2352 }
2353 #[inline]
2354 pub fn literal(&self) -> Option<Literal> {
2355 support::child(&self.syntax)
2356 }
2357 #[inline]
2358 pub fn ty(&self) -> Option<Type> {
2359 support::child(&self.syntax)
2360 }
2361 #[inline]
2362 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
2363 support::token(&self.syntax, SyntaxKind::L_PAREN)
2364 }
2365 #[inline]
2366 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
2367 support::token(&self.syntax, SyntaxKind::R_PAREN)
2368 }
2369 #[inline]
2370 pub fn as_token(&self) -> Option<SyntaxToken> {
2371 support::token(&self.syntax, SyntaxKind::AS_KW)
2372 }
2373 #[inline]
2374 pub fn cast_token(&self) -> Option<SyntaxToken> {
2375 support::token(&self.syntax, SyntaxKind::CAST_KW)
2376 }
2377 #[inline]
2378 pub fn treat_token(&self) -> Option<SyntaxToken> {
2379 support::token(&self.syntax, SyntaxKind::TREAT_KW)
2380 }
2381}
2382
2383#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2384pub struct CastSig {
2385 pub(crate) syntax: SyntaxNode,
2386}
2387impl CastSig {
2388 #[inline]
2389 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
2390 support::token(&self.syntax, SyntaxKind::L_PAREN)
2391 }
2392 #[inline]
2393 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
2394 support::token(&self.syntax, SyntaxKind::R_PAREN)
2395 }
2396 #[inline]
2397 pub fn as_token(&self) -> Option<SyntaxToken> {
2398 support::token(&self.syntax, SyntaxKind::AS_KW)
2399 }
2400}
2401
2402#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2403pub struct CharType {
2404 pub(crate) syntax: SyntaxNode,
2405}
2406impl CharType {
2407 #[inline]
2408 pub fn arg_list(&self) -> Option<ArgList> {
2409 support::child(&self.syntax)
2410 }
2411 #[inline]
2412 pub fn char_token(&self) -> Option<SyntaxToken> {
2413 support::token(&self.syntax, SyntaxKind::CHAR_KW)
2414 }
2415 #[inline]
2416 pub fn character_token(&self) -> Option<SyntaxToken> {
2417 support::token(&self.syntax, SyntaxKind::CHARACTER_KW)
2418 }
2419 #[inline]
2420 pub fn nchar_token(&self) -> Option<SyntaxToken> {
2421 support::token(&self.syntax, SyntaxKind::NCHAR_KW)
2422 }
2423 #[inline]
2424 pub fn varchar_token(&self) -> Option<SyntaxToken> {
2425 support::token(&self.syntax, SyntaxKind::VARCHAR_KW)
2426 }
2427 #[inline]
2428 pub fn varying_token(&self) -> Option<SyntaxToken> {
2429 support::token(&self.syntax, SyntaxKind::VARYING_KW)
2430 }
2431}
2432
2433#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2434pub struct CheckConstraint {
2435 pub(crate) syntax: SyntaxNode,
2436}
2437impl CheckConstraint {
2438 #[inline]
2439 pub fn constraint_name(&self) -> Option<ConstraintName> {
2440 support::child(&self.syntax)
2441 }
2442 #[inline]
2443 pub fn expr(&self) -> Option<Expr> {
2444 support::child(&self.syntax)
2445 }
2446 #[inline]
2447 pub fn no_inherit(&self) -> Option<NoInherit> {
2448 support::child(&self.syntax)
2449 }
2450 #[inline]
2451 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
2452 support::token(&self.syntax, SyntaxKind::L_PAREN)
2453 }
2454 #[inline]
2455 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
2456 support::token(&self.syntax, SyntaxKind::R_PAREN)
2457 }
2458 #[inline]
2459 pub fn check_token(&self) -> Option<SyntaxToken> {
2460 support::token(&self.syntax, SyntaxKind::CHECK_KW)
2461 }
2462}
2463
2464#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2465pub struct Checkpoint {
2466 pub(crate) syntax: SyntaxNode,
2467}
2468impl Checkpoint {
2469 #[inline]
2470 pub fn checkpoint_token(&self) -> Option<SyntaxToken> {
2471 support::token(&self.syntax, SyntaxKind::CHECKPOINT_KW)
2472 }
2473}
2474
2475#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2476pub struct Close {
2477 pub(crate) syntax: SyntaxNode,
2478}
2479impl Close {
2480 #[inline]
2481 pub fn name_ref(&self) -> Option<NameRef> {
2482 support::child(&self.syntax)
2483 }
2484 #[inline]
2485 pub fn close_token(&self) -> Option<SyntaxToken> {
2486 support::token(&self.syntax, SyntaxKind::CLOSE_KW)
2487 }
2488}
2489
2490#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2491pub struct Cluster {
2492 pub(crate) syntax: SyntaxNode,
2493}
2494impl Cluster {
2495 #[inline]
2496 pub fn option_item_list(&self) -> Option<OptionItemList> {
2497 support::child(&self.syntax)
2498 }
2499 #[inline]
2500 pub fn path(&self) -> Option<Path> {
2501 support::child(&self.syntax)
2502 }
2503 #[inline]
2504 pub fn using_method(&self) -> Option<UsingMethod> {
2505 support::child(&self.syntax)
2506 }
2507 #[inline]
2508 pub fn cluster_token(&self) -> Option<SyntaxToken> {
2509 support::token(&self.syntax, SyntaxKind::CLUSTER_KW)
2510 }
2511 #[inline]
2512 pub fn verbose_token(&self) -> Option<SyntaxToken> {
2513 support::token(&self.syntax, SyntaxKind::VERBOSE_KW)
2514 }
2515}
2516
2517#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2518pub struct ClusterOn {
2519 pub(crate) syntax: SyntaxNode,
2520}
2521impl ClusterOn {
2522 #[inline]
2523 pub fn cluster_token(&self) -> Option<SyntaxToken> {
2524 support::token(&self.syntax, SyntaxKind::CLUSTER_KW)
2525 }
2526 #[inline]
2527 pub fn on_token(&self) -> Option<SyntaxToken> {
2528 support::token(&self.syntax, SyntaxKind::ON_KW)
2529 }
2530}
2531
2532#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2533pub struct Collate {
2534 pub(crate) syntax: SyntaxNode,
2535}
2536impl Collate {
2537 #[inline]
2538 pub fn path(&self) -> Option<Path> {
2539 support::child(&self.syntax)
2540 }
2541 #[inline]
2542 pub fn collate_token(&self) -> Option<SyntaxToken> {
2543 support::token(&self.syntax, SyntaxKind::COLLATE_KW)
2544 }
2545}
2546
2547#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2548pub struct ColonColon {
2549 pub(crate) syntax: SyntaxNode,
2550}
2551impl ColonColon {
2552 #[inline]
2553 pub fn colon_token(&self) -> Option<SyntaxToken> {
2554 support::token(&self.syntax, SyntaxKind::COLON)
2555 }
2556}
2557
2558#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2559pub struct ColonEq {
2560 pub(crate) syntax: SyntaxNode,
2561}
2562impl ColonEq {
2563 #[inline]
2564 pub fn colon_token(&self) -> Option<SyntaxToken> {
2565 support::token(&self.syntax, SyntaxKind::COLON)
2566 }
2567 #[inline]
2568 pub fn eq_token(&self) -> Option<SyntaxToken> {
2569 support::token(&self.syntax, SyntaxKind::EQ)
2570 }
2571}
2572
2573#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2574pub struct Column {
2575 pub(crate) syntax: SyntaxNode,
2576}
2577impl Column {
2578 #[inline]
2579 pub fn collate(&self) -> Option<Collate> {
2580 support::child(&self.syntax)
2581 }
2582 #[inline]
2583 pub fn compression_method(&self) -> Option<CompressionMethod> {
2584 support::child(&self.syntax)
2585 }
2586 #[inline]
2587 pub fn constraint(&self) -> Option<ColumnConstraint> {
2588 support::child(&self.syntax)
2589 }
2590 #[inline]
2591 pub fn deferrable_constraint_option(&self) -> Option<DeferrableConstraintOption> {
2592 support::child(&self.syntax)
2593 }
2594 #[inline]
2595 pub fn enforced(&self) -> Option<Enforced> {
2596 support::child(&self.syntax)
2597 }
2598 #[inline]
2599 pub fn index_expr(&self) -> Option<IndexExpr> {
2600 support::child(&self.syntax)
2601 }
2602 #[inline]
2603 pub fn initially_deferred_constraint_option(
2604 &self,
2605 ) -> Option<InitiallyDeferredConstraintOption> {
2606 support::child(&self.syntax)
2607 }
2608 #[inline]
2609 pub fn initially_immediate_constraint_option(
2610 &self,
2611 ) -> Option<InitiallyImmediateConstraintOption> {
2612 support::child(&self.syntax)
2613 }
2614 #[inline]
2615 pub fn name(&self) -> Option<Name> {
2616 support::child(&self.syntax)
2617 }
2618 #[inline]
2619 pub fn name_ref(&self) -> Option<NameRef> {
2620 support::child(&self.syntax)
2621 }
2622 #[inline]
2623 pub fn not_deferrable_constraint_option(&self) -> Option<NotDeferrableConstraintOption> {
2624 support::child(&self.syntax)
2625 }
2626 #[inline]
2627 pub fn not_enforced(&self) -> Option<NotEnforced> {
2628 support::child(&self.syntax)
2629 }
2630 #[inline]
2631 pub fn storage(&self) -> Option<Storage> {
2632 support::child(&self.syntax)
2633 }
2634 #[inline]
2635 pub fn ty(&self) -> Option<Type> {
2636 support::child(&self.syntax)
2637 }
2638 #[inline]
2639 pub fn with_options(&self) -> Option<WithOptions> {
2640 support::child(&self.syntax)
2641 }
2642 #[inline]
2643 pub fn period_token(&self) -> Option<SyntaxToken> {
2644 support::token(&self.syntax, SyntaxKind::PERIOD_KW)
2645 }
2646}
2647
2648#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2649pub struct ColumnList {
2650 pub(crate) syntax: SyntaxNode,
2651}
2652impl ColumnList {
2653 #[inline]
2654 pub fn columns(&self) -> AstChildren<Column> {
2655 support::children(&self.syntax)
2656 }
2657 #[inline]
2658 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
2659 support::token(&self.syntax, SyntaxKind::L_PAREN)
2660 }
2661 #[inline]
2662 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
2663 support::token(&self.syntax, SyntaxKind::R_PAREN)
2664 }
2665}
2666
2667#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2668pub struct CommentOn {
2669 pub(crate) syntax: SyntaxNode,
2670}
2671impl CommentOn {
2672 #[inline]
2673 pub fn aggregate(&self) -> Option<Aggregate> {
2674 support::child(&self.syntax)
2675 }
2676 #[inline]
2677 pub fn cast_sig(&self) -> Option<CastSig> {
2678 support::child(&self.syntax)
2679 }
2680 #[inline]
2681 pub fn function_sig(&self) -> Option<FunctionSig> {
2682 support::child(&self.syntax)
2683 }
2684 #[inline]
2685 pub fn literal(&self) -> Option<Literal> {
2686 support::child(&self.syntax)
2687 }
2688 #[inline]
2689 pub fn name_ref(&self) -> Option<NameRef> {
2690 support::child(&self.syntax)
2691 }
2692 #[inline]
2693 pub fn op(&self) -> Option<Op> {
2694 support::child(&self.syntax)
2695 }
2696 #[inline]
2697 pub fn path(&self) -> Option<Path> {
2698 support::child(&self.syntax)
2699 }
2700 #[inline]
2701 pub fn ty(&self) -> Option<Type> {
2702 support::child(&self.syntax)
2703 }
2704 #[inline]
2705 pub fn using_method(&self) -> Option<UsingMethod> {
2706 support::child(&self.syntax)
2707 }
2708 #[inline]
2709 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
2710 support::token(&self.syntax, SyntaxKind::L_PAREN)
2711 }
2712 #[inline]
2713 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
2714 support::token(&self.syntax, SyntaxKind::R_PAREN)
2715 }
2716 #[inline]
2717 pub fn comma_token(&self) -> Option<SyntaxToken> {
2718 support::token(&self.syntax, SyntaxKind::COMMA)
2719 }
2720 #[inline]
2721 pub fn access_token(&self) -> Option<SyntaxToken> {
2722 support::token(&self.syntax, SyntaxKind::ACCESS_KW)
2723 }
2724 #[inline]
2725 pub fn aggregate_token(&self) -> Option<SyntaxToken> {
2726 support::token(&self.syntax, SyntaxKind::AGGREGATE_KW)
2727 }
2728 #[inline]
2729 pub fn cast_token(&self) -> Option<SyntaxToken> {
2730 support::token(&self.syntax, SyntaxKind::CAST_KW)
2731 }
2732 #[inline]
2733 pub fn class_token(&self) -> Option<SyntaxToken> {
2734 support::token(&self.syntax, SyntaxKind::CLASS_KW)
2735 }
2736 #[inline]
2737 pub fn collation_token(&self) -> Option<SyntaxToken> {
2738 support::token(&self.syntax, SyntaxKind::COLLATION_KW)
2739 }
2740 #[inline]
2741 pub fn column_token(&self) -> Option<SyntaxToken> {
2742 support::token(&self.syntax, SyntaxKind::COLUMN_KW)
2743 }
2744 #[inline]
2745 pub fn comment_token(&self) -> Option<SyntaxToken> {
2746 support::token(&self.syntax, SyntaxKind::COMMENT_KW)
2747 }
2748 #[inline]
2749 pub fn configuration_token(&self) -> Option<SyntaxToken> {
2750 support::token(&self.syntax, SyntaxKind::CONFIGURATION_KW)
2751 }
2752 #[inline]
2753 pub fn constraint_token(&self) -> Option<SyntaxToken> {
2754 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
2755 }
2756 #[inline]
2757 pub fn conversion_token(&self) -> Option<SyntaxToken> {
2758 support::token(&self.syntax, SyntaxKind::CONVERSION_KW)
2759 }
2760 #[inline]
2761 pub fn data_token(&self) -> Option<SyntaxToken> {
2762 support::token(&self.syntax, SyntaxKind::DATA_KW)
2763 }
2764 #[inline]
2765 pub fn database_token(&self) -> Option<SyntaxToken> {
2766 support::token(&self.syntax, SyntaxKind::DATABASE_KW)
2767 }
2768 #[inline]
2769 pub fn dictionary_token(&self) -> Option<SyntaxToken> {
2770 support::token(&self.syntax, SyntaxKind::DICTIONARY_KW)
2771 }
2772 #[inline]
2773 pub fn domain_token(&self) -> Option<SyntaxToken> {
2774 support::token(&self.syntax, SyntaxKind::DOMAIN_KW)
2775 }
2776 #[inline]
2777 pub fn event_token(&self) -> Option<SyntaxToken> {
2778 support::token(&self.syntax, SyntaxKind::EVENT_KW)
2779 }
2780 #[inline]
2781 pub fn extension_token(&self) -> Option<SyntaxToken> {
2782 support::token(&self.syntax, SyntaxKind::EXTENSION_KW)
2783 }
2784 #[inline]
2785 pub fn family_token(&self) -> Option<SyntaxToken> {
2786 support::token(&self.syntax, SyntaxKind::FAMILY_KW)
2787 }
2788 #[inline]
2789 pub fn for_token(&self) -> Option<SyntaxToken> {
2790 support::token(&self.syntax, SyntaxKind::FOR_KW)
2791 }
2792 #[inline]
2793 pub fn foreign_token(&self) -> Option<SyntaxToken> {
2794 support::token(&self.syntax, SyntaxKind::FOREIGN_KW)
2795 }
2796 #[inline]
2797 pub fn function_token(&self) -> Option<SyntaxToken> {
2798 support::token(&self.syntax, SyntaxKind::FUNCTION_KW)
2799 }
2800 #[inline]
2801 pub fn index_token(&self) -> Option<SyntaxToken> {
2802 support::token(&self.syntax, SyntaxKind::INDEX_KW)
2803 }
2804 #[inline]
2805 pub fn is_token(&self) -> Option<SyntaxToken> {
2806 support::token(&self.syntax, SyntaxKind::IS_KW)
2807 }
2808 #[inline]
2809 pub fn language_token(&self) -> Option<SyntaxToken> {
2810 support::token(&self.syntax, SyntaxKind::LANGUAGE_KW)
2811 }
2812 #[inline]
2813 pub fn large_token(&self) -> Option<SyntaxToken> {
2814 support::token(&self.syntax, SyntaxKind::LARGE_KW)
2815 }
2816 #[inline]
2817 pub fn materialized_token(&self) -> Option<SyntaxToken> {
2818 support::token(&self.syntax, SyntaxKind::MATERIALIZED_KW)
2819 }
2820 #[inline]
2821 pub fn method_token(&self) -> Option<SyntaxToken> {
2822 support::token(&self.syntax, SyntaxKind::METHOD_KW)
2823 }
2824 #[inline]
2825 pub fn null_token(&self) -> Option<SyntaxToken> {
2826 support::token(&self.syntax, SyntaxKind::NULL_KW)
2827 }
2828 #[inline]
2829 pub fn object_token(&self) -> Option<SyntaxToken> {
2830 support::token(&self.syntax, SyntaxKind::OBJECT_KW)
2831 }
2832 #[inline]
2833 pub fn on_token(&self) -> Option<SyntaxToken> {
2834 support::token(&self.syntax, SyntaxKind::ON_KW)
2835 }
2836 #[inline]
2837 pub fn operator_token(&self) -> Option<SyntaxToken> {
2838 support::token(&self.syntax, SyntaxKind::OPERATOR_KW)
2839 }
2840 #[inline]
2841 pub fn parser_token(&self) -> Option<SyntaxToken> {
2842 support::token(&self.syntax, SyntaxKind::PARSER_KW)
2843 }
2844 #[inline]
2845 pub fn policy_token(&self) -> Option<SyntaxToken> {
2846 support::token(&self.syntax, SyntaxKind::POLICY_KW)
2847 }
2848 #[inline]
2849 pub fn procedural_token(&self) -> Option<SyntaxToken> {
2850 support::token(&self.syntax, SyntaxKind::PROCEDURAL_KW)
2851 }
2852 #[inline]
2853 pub fn procedure_token(&self) -> Option<SyntaxToken> {
2854 support::token(&self.syntax, SyntaxKind::PROCEDURE_KW)
2855 }
2856 #[inline]
2857 pub fn publication_token(&self) -> Option<SyntaxToken> {
2858 support::token(&self.syntax, SyntaxKind::PUBLICATION_KW)
2859 }
2860 #[inline]
2861 pub fn role_token(&self) -> Option<SyntaxToken> {
2862 support::token(&self.syntax, SyntaxKind::ROLE_KW)
2863 }
2864 #[inline]
2865 pub fn routine_token(&self) -> Option<SyntaxToken> {
2866 support::token(&self.syntax, SyntaxKind::ROUTINE_KW)
2867 }
2868 #[inline]
2869 pub fn rule_token(&self) -> Option<SyntaxToken> {
2870 support::token(&self.syntax, SyntaxKind::RULE_KW)
2871 }
2872 #[inline]
2873 pub fn schema_token(&self) -> Option<SyntaxToken> {
2874 support::token(&self.syntax, SyntaxKind::SCHEMA_KW)
2875 }
2876 #[inline]
2877 pub fn search_token(&self) -> Option<SyntaxToken> {
2878 support::token(&self.syntax, SyntaxKind::SEARCH_KW)
2879 }
2880 #[inline]
2881 pub fn sequence_token(&self) -> Option<SyntaxToken> {
2882 support::token(&self.syntax, SyntaxKind::SEQUENCE_KW)
2883 }
2884 #[inline]
2885 pub fn server_token(&self) -> Option<SyntaxToken> {
2886 support::token(&self.syntax, SyntaxKind::SERVER_KW)
2887 }
2888 #[inline]
2889 pub fn statistics_token(&self) -> Option<SyntaxToken> {
2890 support::token(&self.syntax, SyntaxKind::STATISTICS_KW)
2891 }
2892 #[inline]
2893 pub fn subscription_token(&self) -> Option<SyntaxToken> {
2894 support::token(&self.syntax, SyntaxKind::SUBSCRIPTION_KW)
2895 }
2896 #[inline]
2897 pub fn table_token(&self) -> Option<SyntaxToken> {
2898 support::token(&self.syntax, SyntaxKind::TABLE_KW)
2899 }
2900 #[inline]
2901 pub fn tablespace_token(&self) -> Option<SyntaxToken> {
2902 support::token(&self.syntax, SyntaxKind::TABLESPACE_KW)
2903 }
2904 #[inline]
2905 pub fn template_token(&self) -> Option<SyntaxToken> {
2906 support::token(&self.syntax, SyntaxKind::TEMPLATE_KW)
2907 }
2908 #[inline]
2909 pub fn text_token(&self) -> Option<SyntaxToken> {
2910 support::token(&self.syntax, SyntaxKind::TEXT_KW)
2911 }
2912 #[inline]
2913 pub fn transform_token(&self) -> Option<SyntaxToken> {
2914 support::token(&self.syntax, SyntaxKind::TRANSFORM_KW)
2915 }
2916 #[inline]
2917 pub fn trigger_token(&self) -> Option<SyntaxToken> {
2918 support::token(&self.syntax, SyntaxKind::TRIGGER_KW)
2919 }
2920 #[inline]
2921 pub fn type_token(&self) -> Option<SyntaxToken> {
2922 support::token(&self.syntax, SyntaxKind::TYPE_KW)
2923 }
2924 #[inline]
2925 pub fn view_token(&self) -> Option<SyntaxToken> {
2926 support::token(&self.syntax, SyntaxKind::VIEW_KW)
2927 }
2928 #[inline]
2929 pub fn wrapper_token(&self) -> Option<SyntaxToken> {
2930 support::token(&self.syntax, SyntaxKind::WRAPPER_KW)
2931 }
2932}
2933
2934#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2935pub struct Commit {
2936 pub(crate) syntax: SyntaxNode,
2937}
2938impl Commit {
2939 #[inline]
2940 pub fn literal(&self) -> Option<Literal> {
2941 support::child(&self.syntax)
2942 }
2943 #[inline]
2944 pub fn and_token(&self) -> Option<SyntaxToken> {
2945 support::token(&self.syntax, SyntaxKind::AND_KW)
2946 }
2947 #[inline]
2948 pub fn chain_token(&self) -> Option<SyntaxToken> {
2949 support::token(&self.syntax, SyntaxKind::CHAIN_KW)
2950 }
2951 #[inline]
2952 pub fn commit_token(&self) -> Option<SyntaxToken> {
2953 support::token(&self.syntax, SyntaxKind::COMMIT_KW)
2954 }
2955 #[inline]
2956 pub fn no_token(&self) -> Option<SyntaxToken> {
2957 support::token(&self.syntax, SyntaxKind::NO_KW)
2958 }
2959 #[inline]
2960 pub fn prepared_token(&self) -> Option<SyntaxToken> {
2961 support::token(&self.syntax, SyntaxKind::PREPARED_KW)
2962 }
2963 #[inline]
2964 pub fn transaction_token(&self) -> Option<SyntaxToken> {
2965 support::token(&self.syntax, SyntaxKind::TRANSACTION_KW)
2966 }
2967 #[inline]
2968 pub fn work_token(&self) -> Option<SyntaxToken> {
2969 support::token(&self.syntax, SyntaxKind::WORK_KW)
2970 }
2971}
2972
2973#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2974pub struct CompoundSelect {
2975 pub(crate) syntax: SyntaxNode,
2976}
2977impl CompoundSelect {
2978 #[inline]
2979 pub fn all_token(&self) -> Option<SyntaxToken> {
2980 support::token(&self.syntax, SyntaxKind::ALL_KW)
2981 }
2982 #[inline]
2983 pub fn except_token(&self) -> Option<SyntaxToken> {
2984 support::token(&self.syntax, SyntaxKind::EXCEPT_KW)
2985 }
2986 #[inline]
2987 pub fn intersect_token(&self) -> Option<SyntaxToken> {
2988 support::token(&self.syntax, SyntaxKind::INTERSECT_KW)
2989 }
2990 #[inline]
2991 pub fn union_token(&self) -> Option<SyntaxToken> {
2992 support::token(&self.syntax, SyntaxKind::UNION_KW)
2993 }
2994}
2995
2996#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2997pub struct CompressionMethod {
2998 pub(crate) syntax: SyntaxNode,
2999}
3000impl CompressionMethod {
3001 #[inline]
3002 pub fn compression_token(&self) -> Option<SyntaxToken> {
3003 support::token(&self.syntax, SyntaxKind::COMPRESSION_KW)
3004 }
3005 #[inline]
3006 pub fn default_token(&self) -> Option<SyntaxToken> {
3007 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
3008 }
3009 #[inline]
3010 pub fn ident_token(&self) -> Option<SyntaxToken> {
3011 support::token(&self.syntax, SyntaxKind::IDENT)
3012 }
3013}
3014
3015#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3016pub struct ConflictDoNothing {
3017 pub(crate) syntax: SyntaxNode,
3018}
3019impl ConflictDoNothing {
3020 #[inline]
3021 pub fn do_token(&self) -> Option<SyntaxToken> {
3022 support::token(&self.syntax, SyntaxKind::DO_KW)
3023 }
3024 #[inline]
3025 pub fn nothing_token(&self) -> Option<SyntaxToken> {
3026 support::token(&self.syntax, SyntaxKind::NOTHING_KW)
3027 }
3028}
3029
3030#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3031pub struct ConflictDoUpdateSet {
3032 pub(crate) syntax: SyntaxNode,
3033}
3034impl ConflictDoUpdateSet {
3035 #[inline]
3036 pub fn set_clause(&self) -> Option<SetClause> {
3037 support::child(&self.syntax)
3038 }
3039 #[inline]
3040 pub fn where_clause(&self) -> Option<WhereClause> {
3041 support::child(&self.syntax)
3042 }
3043 #[inline]
3044 pub fn do_token(&self) -> Option<SyntaxToken> {
3045 support::token(&self.syntax, SyntaxKind::DO_KW)
3046 }
3047 #[inline]
3048 pub fn update_token(&self) -> Option<SyntaxToken> {
3049 support::token(&self.syntax, SyntaxKind::UPDATE_KW)
3050 }
3051}
3052
3053#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3054pub struct ConflictIndexItem {
3055 pub(crate) syntax: SyntaxNode,
3056}
3057impl ConflictIndexItem {
3058 #[inline]
3059 pub fn collate(&self) -> Option<Collate> {
3060 support::child(&self.syntax)
3061 }
3062 #[inline]
3063 pub fn expr(&self) -> Option<Expr> {
3064 support::child(&self.syntax)
3065 }
3066 #[inline]
3067 pub fn ident_token(&self) -> Option<SyntaxToken> {
3068 support::token(&self.syntax, SyntaxKind::IDENT)
3069 }
3070}
3071
3072#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3073pub struct ConflictIndexItemList {
3074 pub(crate) syntax: SyntaxNode,
3075}
3076impl ConflictIndexItemList {
3077 #[inline]
3078 pub fn conflict_index_items(&self) -> AstChildren<ConflictIndexItem> {
3079 support::children(&self.syntax)
3080 }
3081 #[inline]
3082 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
3083 support::token(&self.syntax, SyntaxKind::L_PAREN)
3084 }
3085 #[inline]
3086 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
3087 support::token(&self.syntax, SyntaxKind::R_PAREN)
3088 }
3089}
3090
3091#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3092pub struct ConflictOnConstraint {
3093 pub(crate) syntax: SyntaxNode,
3094}
3095impl ConflictOnConstraint {
3096 #[inline]
3097 pub fn name_ref(&self) -> Option<NameRef> {
3098 support::child(&self.syntax)
3099 }
3100 #[inline]
3101 pub fn constraint_token(&self) -> Option<SyntaxToken> {
3102 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
3103 }
3104 #[inline]
3105 pub fn on_token(&self) -> Option<SyntaxToken> {
3106 support::token(&self.syntax, SyntaxKind::ON_KW)
3107 }
3108}
3109
3110#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3111pub struct ConflictOnIndex {
3112 pub(crate) syntax: SyntaxNode,
3113}
3114impl ConflictOnIndex {
3115 #[inline]
3116 pub fn conflict_index_item_list(&self) -> Option<ConflictIndexItemList> {
3117 support::child(&self.syntax)
3118 }
3119 #[inline]
3120 pub fn where_clause(&self) -> Option<WhereClause> {
3121 support::child(&self.syntax)
3122 }
3123}
3124
3125#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3126pub struct ConstraintExclusion {
3127 pub(crate) syntax: SyntaxNode,
3128}
3129impl ConstraintExclusion {
3130 #[inline]
3131 pub fn expr(&self) -> Option<Expr> {
3132 support::child(&self.syntax)
3133 }
3134 #[inline]
3135 pub fn op(&self) -> Option<Op> {
3136 support::child(&self.syntax)
3137 }
3138 #[inline]
3139 pub fn with_token(&self) -> Option<SyntaxToken> {
3140 support::token(&self.syntax, SyntaxKind::WITH_KW)
3141 }
3142}
3143
3144#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3145pub struct ConstraintExclusionList {
3146 pub(crate) syntax: SyntaxNode,
3147}
3148impl ConstraintExclusionList {
3149 #[inline]
3150 pub fn constraint_exclusions(&self) -> AstChildren<ConstraintExclusion> {
3151 support::children(&self.syntax)
3152 }
3153 #[inline]
3154 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
3155 support::token(&self.syntax, SyntaxKind::L_PAREN)
3156 }
3157 #[inline]
3158 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
3159 support::token(&self.syntax, SyntaxKind::R_PAREN)
3160 }
3161}
3162
3163#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3164pub struct ConstraintIncludeClause {
3165 pub(crate) syntax: SyntaxNode,
3166}
3167impl ConstraintIncludeClause {
3168 #[inline]
3169 pub fn include_token(&self) -> Option<SyntaxToken> {
3170 support::token(&self.syntax, SyntaxKind::INCLUDE_KW)
3171 }
3172}
3173
3174#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3175pub struct ConstraintIndexMethod {
3176 pub(crate) syntax: SyntaxNode,
3177}
3178impl ConstraintIndexMethod {
3179 #[inline]
3180 pub fn using_token(&self) -> Option<SyntaxToken> {
3181 support::token(&self.syntax, SyntaxKind::USING_KW)
3182 }
3183}
3184
3185#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3186pub struct ConstraintIndexTablespace {
3187 pub(crate) syntax: SyntaxNode,
3188}
3189impl ConstraintIndexTablespace {
3190 #[inline]
3191 pub fn name_ref(&self) -> Option<NameRef> {
3192 support::child(&self.syntax)
3193 }
3194 #[inline]
3195 pub fn index_token(&self) -> Option<SyntaxToken> {
3196 support::token(&self.syntax, SyntaxKind::INDEX_KW)
3197 }
3198 #[inline]
3199 pub fn tablespace_token(&self) -> Option<SyntaxToken> {
3200 support::token(&self.syntax, SyntaxKind::TABLESPACE_KW)
3201 }
3202 #[inline]
3203 pub fn using_token(&self) -> Option<SyntaxToken> {
3204 support::token(&self.syntax, SyntaxKind::USING_KW)
3205 }
3206}
3207
3208#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3209pub struct ConstraintName {
3210 pub(crate) syntax: SyntaxNode,
3211}
3212impl ConstraintName {
3213 #[inline]
3214 pub fn name(&self) -> Option<Name> {
3215 support::child(&self.syntax)
3216 }
3217 #[inline]
3218 pub fn constraint_token(&self) -> Option<SyntaxToken> {
3219 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
3220 }
3221}
3222
3223#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3224pub struct Copy {
3225 pub(crate) syntax: SyntaxNode,
3226}
3227impl Copy {
3228 #[inline]
3229 pub fn column_list(&self) -> Option<ColumnList> {
3230 support::child(&self.syntax)
3231 }
3232 #[inline]
3233 pub fn literal(&self) -> Option<Literal> {
3234 support::child(&self.syntax)
3235 }
3236 #[inline]
3237 pub fn path(&self) -> Option<Path> {
3238 support::child(&self.syntax)
3239 }
3240 #[inline]
3241 pub fn preparable_stmt(&self) -> Option<PreparableStmt> {
3242 support::child(&self.syntax)
3243 }
3244 #[inline]
3245 pub fn where_clause(&self) -> Option<WhereClause> {
3246 support::child(&self.syntax)
3247 }
3248 #[inline]
3249 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
3250 support::token(&self.syntax, SyntaxKind::L_PAREN)
3251 }
3252 #[inline]
3253 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
3254 support::token(&self.syntax, SyntaxKind::R_PAREN)
3255 }
3256 #[inline]
3257 pub fn binary_token(&self) -> Option<SyntaxToken> {
3258 support::token(&self.syntax, SyntaxKind::BINARY_KW)
3259 }
3260 #[inline]
3261 pub fn copy_token(&self) -> Option<SyntaxToken> {
3262 support::token(&self.syntax, SyntaxKind::COPY_KW)
3263 }
3264 #[inline]
3265 pub fn from_token(&self) -> Option<SyntaxToken> {
3266 support::token(&self.syntax, SyntaxKind::FROM_KW)
3267 }
3268 #[inline]
3269 pub fn program_token(&self) -> Option<SyntaxToken> {
3270 support::token(&self.syntax, SyntaxKind::PROGRAM_KW)
3271 }
3272 #[inline]
3273 pub fn stdin_token(&self) -> Option<SyntaxToken> {
3274 support::token(&self.syntax, SyntaxKind::STDIN_KW)
3275 }
3276 #[inline]
3277 pub fn stdout_token(&self) -> Option<SyntaxToken> {
3278 support::token(&self.syntax, SyntaxKind::STDOUT_KW)
3279 }
3280 #[inline]
3281 pub fn to_token(&self) -> Option<SyntaxToken> {
3282 support::token(&self.syntax, SyntaxKind::TO_KW)
3283 }
3284 #[inline]
3285 pub fn with_token(&self) -> Option<SyntaxToken> {
3286 support::token(&self.syntax, SyntaxKind::WITH_KW)
3287 }
3288}
3289
3290#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3291pub struct CopyOption {
3292 pub(crate) syntax: SyntaxNode,
3293}
3294impl CopyOption {
3295 #[inline]
3296 pub fn name(&self) -> Option<Name> {
3297 support::child(&self.syntax)
3298 }
3299}
3300
3301#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3302pub struct CopyOptionList {
3303 pub(crate) syntax: SyntaxNode,
3304}
3305impl CopyOptionList {
3306 #[inline]
3307 pub fn copy_options(&self) -> AstChildren<CopyOption> {
3308 support::children(&self.syntax)
3309 }
3310 #[inline]
3311 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
3312 support::token(&self.syntax, SyntaxKind::L_PAREN)
3313 }
3314 #[inline]
3315 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
3316 support::token(&self.syntax, SyntaxKind::R_PAREN)
3317 }
3318}
3319
3320#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3321pub struct CostFuncOption {
3322 pub(crate) syntax: SyntaxNode,
3323}
3324impl CostFuncOption {
3325 #[inline]
3326 pub fn cost_token(&self) -> Option<SyntaxToken> {
3327 support::token(&self.syntax, SyntaxKind::COST_KW)
3328 }
3329}
3330
3331#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3332pub struct CreateAccessMethod {
3333 pub(crate) syntax: SyntaxNode,
3334}
3335impl CreateAccessMethod {
3336 #[inline]
3337 pub fn handler_clause(&self) -> Option<HandlerClause> {
3338 support::child(&self.syntax)
3339 }
3340 #[inline]
3341 pub fn name(&self) -> Option<Path> {
3342 support::child(&self.syntax)
3343 }
3344 #[inline]
3345 pub fn access_token(&self) -> Option<SyntaxToken> {
3346 support::token(&self.syntax, SyntaxKind::ACCESS_KW)
3347 }
3348 #[inline]
3349 pub fn create_token(&self) -> Option<SyntaxToken> {
3350 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3351 }
3352 #[inline]
3353 pub fn index_token(&self) -> Option<SyntaxToken> {
3354 support::token(&self.syntax, SyntaxKind::INDEX_KW)
3355 }
3356 #[inline]
3357 pub fn method_token(&self) -> Option<SyntaxToken> {
3358 support::token(&self.syntax, SyntaxKind::METHOD_KW)
3359 }
3360 #[inline]
3361 pub fn table_token(&self) -> Option<SyntaxToken> {
3362 support::token(&self.syntax, SyntaxKind::TABLE_KW)
3363 }
3364 #[inline]
3365 pub fn type_token(&self) -> Option<SyntaxToken> {
3366 support::token(&self.syntax, SyntaxKind::TYPE_KW)
3367 }
3368}
3369
3370#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3371pub struct CreateAggregate {
3372 pub(crate) syntax: SyntaxNode,
3373}
3374impl CreateAggregate {
3375 #[inline]
3376 pub fn or_replace(&self) -> Option<OrReplace> {
3377 support::child(&self.syntax)
3378 }
3379 #[inline]
3380 pub fn param_list(&self) -> Option<ParamList> {
3381 support::child(&self.syntax)
3382 }
3383 #[inline]
3384 pub fn path(&self) -> Option<Path> {
3385 support::child(&self.syntax)
3386 }
3387 #[inline]
3388 pub fn aggregate_token(&self) -> Option<SyntaxToken> {
3389 support::token(&self.syntax, SyntaxKind::AGGREGATE_KW)
3390 }
3391 #[inline]
3392 pub fn create_token(&self) -> Option<SyntaxToken> {
3393 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3394 }
3395}
3396
3397#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3398pub struct CreateCast {
3399 pub(crate) syntax: SyntaxNode,
3400}
3401impl CreateCast {
3402 #[inline]
3403 pub fn cast_sig(&self) -> Option<CastSig> {
3404 support::child(&self.syntax)
3405 }
3406 #[inline]
3407 pub fn function_sig(&self) -> Option<FunctionSig> {
3408 support::child(&self.syntax)
3409 }
3410 #[inline]
3411 pub fn as_token(&self) -> Option<SyntaxToken> {
3412 support::token(&self.syntax, SyntaxKind::AS_KW)
3413 }
3414 #[inline]
3415 pub fn assignment_token(&self) -> Option<SyntaxToken> {
3416 support::token(&self.syntax, SyntaxKind::ASSIGNMENT_KW)
3417 }
3418 #[inline]
3419 pub fn cast_token(&self) -> Option<SyntaxToken> {
3420 support::token(&self.syntax, SyntaxKind::CAST_KW)
3421 }
3422 #[inline]
3423 pub fn create_token(&self) -> Option<SyntaxToken> {
3424 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3425 }
3426 #[inline]
3427 pub fn function_token(&self) -> Option<SyntaxToken> {
3428 support::token(&self.syntax, SyntaxKind::FUNCTION_KW)
3429 }
3430 #[inline]
3431 pub fn implicit_token(&self) -> Option<SyntaxToken> {
3432 support::token(&self.syntax, SyntaxKind::IMPLICIT_KW)
3433 }
3434 #[inline]
3435 pub fn inout_token(&self) -> Option<SyntaxToken> {
3436 support::token(&self.syntax, SyntaxKind::INOUT_KW)
3437 }
3438 #[inline]
3439 pub fn with_token(&self) -> Option<SyntaxToken> {
3440 support::token(&self.syntax, SyntaxKind::WITH_KW)
3441 }
3442 #[inline]
3443 pub fn without_token(&self) -> Option<SyntaxToken> {
3444 support::token(&self.syntax, SyntaxKind::WITHOUT_KW)
3445 }
3446}
3447
3448#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3449pub struct CreateCollation {
3450 pub(crate) syntax: SyntaxNode,
3451}
3452impl CreateCollation {
3453 #[inline]
3454 pub fn path(&self) -> Option<Path> {
3455 support::child(&self.syntax)
3456 }
3457 #[inline]
3458 pub fn collation_token(&self) -> Option<SyntaxToken> {
3459 support::token(&self.syntax, SyntaxKind::COLLATION_KW)
3460 }
3461 #[inline]
3462 pub fn create_token(&self) -> Option<SyntaxToken> {
3463 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3464 }
3465}
3466
3467#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3468pub struct CreateConversion {
3469 pub(crate) syntax: SyntaxNode,
3470}
3471impl CreateConversion {
3472 #[inline]
3473 pub fn literal(&self) -> Option<Literal> {
3474 support::child(&self.syntax)
3475 }
3476 #[inline]
3477 pub fn path(&self) -> Option<Path> {
3478 support::child(&self.syntax)
3479 }
3480 #[inline]
3481 pub fn conversion_token(&self) -> Option<SyntaxToken> {
3482 support::token(&self.syntax, SyntaxKind::CONVERSION_KW)
3483 }
3484 #[inline]
3485 pub fn create_token(&self) -> Option<SyntaxToken> {
3486 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3487 }
3488 #[inline]
3489 pub fn default_token(&self) -> Option<SyntaxToken> {
3490 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
3491 }
3492 #[inline]
3493 pub fn for_token(&self) -> Option<SyntaxToken> {
3494 support::token(&self.syntax, SyntaxKind::FOR_KW)
3495 }
3496 #[inline]
3497 pub fn from_token(&self) -> Option<SyntaxToken> {
3498 support::token(&self.syntax, SyntaxKind::FROM_KW)
3499 }
3500 #[inline]
3501 pub fn to_token(&self) -> Option<SyntaxToken> {
3502 support::token(&self.syntax, SyntaxKind::TO_KW)
3503 }
3504}
3505
3506#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3507pub struct CreateDatabase {
3508 pub(crate) syntax: SyntaxNode,
3509}
3510impl CreateDatabase {
3511 #[inline]
3512 pub fn create_database_option_list(&self) -> Option<CreateDatabaseOptionList> {
3513 support::child(&self.syntax)
3514 }
3515 #[inline]
3516 pub fn name(&self) -> Option<Name> {
3517 support::child(&self.syntax)
3518 }
3519 #[inline]
3520 pub fn create_token(&self) -> Option<SyntaxToken> {
3521 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3522 }
3523 #[inline]
3524 pub fn database_token(&self) -> Option<SyntaxToken> {
3525 support::token(&self.syntax, SyntaxKind::DATABASE_KW)
3526 }
3527}
3528
3529#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3530pub struct CreateDatabaseOption {
3531 pub(crate) syntax: SyntaxNode,
3532}
3533impl CreateDatabaseOption {
3534 #[inline]
3535 pub fn literal(&self) -> Option<Literal> {
3536 support::child(&self.syntax)
3537 }
3538 #[inline]
3539 pub fn eq_token(&self) -> Option<SyntaxToken> {
3540 support::token(&self.syntax, SyntaxKind::EQ)
3541 }
3542 #[inline]
3543 pub fn connection_token(&self) -> Option<SyntaxToken> {
3544 support::token(&self.syntax, SyntaxKind::CONNECTION_KW)
3545 }
3546 #[inline]
3547 pub fn default_token(&self) -> Option<SyntaxToken> {
3548 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
3549 }
3550 #[inline]
3551 pub fn encoding_token(&self) -> Option<SyntaxToken> {
3552 support::token(&self.syntax, SyntaxKind::ENCODING_KW)
3553 }
3554 #[inline]
3555 pub fn ident_token(&self) -> Option<SyntaxToken> {
3556 support::token(&self.syntax, SyntaxKind::IDENT)
3557 }
3558 #[inline]
3559 pub fn limit_token(&self) -> Option<SyntaxToken> {
3560 support::token(&self.syntax, SyntaxKind::LIMIT_KW)
3561 }
3562 #[inline]
3563 pub fn owner_token(&self) -> Option<SyntaxToken> {
3564 support::token(&self.syntax, SyntaxKind::OWNER_KW)
3565 }
3566 #[inline]
3567 pub fn tablespace_token(&self) -> Option<SyntaxToken> {
3568 support::token(&self.syntax, SyntaxKind::TABLESPACE_KW)
3569 }
3570 #[inline]
3571 pub fn template_token(&self) -> Option<SyntaxToken> {
3572 support::token(&self.syntax, SyntaxKind::TEMPLATE_KW)
3573 }
3574}
3575
3576#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3577pub struct CreateDatabaseOptionList {
3578 pub(crate) syntax: SyntaxNode,
3579}
3580impl CreateDatabaseOptionList {
3581 #[inline]
3582 pub fn create_database_options(&self) -> AstChildren<CreateDatabaseOption> {
3583 support::children(&self.syntax)
3584 }
3585 #[inline]
3586 pub fn with_token(&self) -> Option<SyntaxToken> {
3587 support::token(&self.syntax, SyntaxKind::WITH_KW)
3588 }
3589}
3590
3591#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3592pub struct CreateDomain {
3593 pub(crate) syntax: SyntaxNode,
3594}
3595impl CreateDomain {
3596 #[inline]
3597 pub fn collate(&self) -> Option<Collate> {
3598 support::child(&self.syntax)
3599 }
3600 #[inline]
3601 pub fn constraints(&self) -> AstChildren<Constraint> {
3602 support::children(&self.syntax)
3603 }
3604 #[inline]
3605 pub fn path(&self) -> Option<Path> {
3606 support::child(&self.syntax)
3607 }
3608 #[inline]
3609 pub fn ty(&self) -> Option<Type> {
3610 support::child(&self.syntax)
3611 }
3612 #[inline]
3613 pub fn as_token(&self) -> Option<SyntaxToken> {
3614 support::token(&self.syntax, SyntaxKind::AS_KW)
3615 }
3616 #[inline]
3617 pub fn create_token(&self) -> Option<SyntaxToken> {
3618 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3619 }
3620 #[inline]
3621 pub fn domain_token(&self) -> Option<SyntaxToken> {
3622 support::token(&self.syntax, SyntaxKind::DOMAIN_KW)
3623 }
3624}
3625
3626#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3627pub struct CreateEventTrigger {
3628 pub(crate) syntax: SyntaxNode,
3629}
3630impl CreateEventTrigger {
3631 #[inline]
3632 pub fn call_expr(&self) -> Option<CallExpr> {
3633 support::child(&self.syntax)
3634 }
3635 #[inline]
3636 pub fn event_trigger_when_clause(&self) -> Option<EventTriggerWhenClause> {
3637 support::child(&self.syntax)
3638 }
3639 #[inline]
3640 pub fn name(&self) -> Option<Name> {
3641 support::child(&self.syntax)
3642 }
3643 #[inline]
3644 pub fn name_ref(&self) -> Option<NameRef> {
3645 support::child(&self.syntax)
3646 }
3647 #[inline]
3648 pub fn create_token(&self) -> Option<SyntaxToken> {
3649 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3650 }
3651 #[inline]
3652 pub fn event_token(&self) -> Option<SyntaxToken> {
3653 support::token(&self.syntax, SyntaxKind::EVENT_KW)
3654 }
3655 #[inline]
3656 pub fn execute_token(&self) -> Option<SyntaxToken> {
3657 support::token(&self.syntax, SyntaxKind::EXECUTE_KW)
3658 }
3659 #[inline]
3660 pub fn function_token(&self) -> Option<SyntaxToken> {
3661 support::token(&self.syntax, SyntaxKind::FUNCTION_KW)
3662 }
3663 #[inline]
3664 pub fn on_token(&self) -> Option<SyntaxToken> {
3665 support::token(&self.syntax, SyntaxKind::ON_KW)
3666 }
3667 #[inline]
3668 pub fn procedure_token(&self) -> Option<SyntaxToken> {
3669 support::token(&self.syntax, SyntaxKind::PROCEDURE_KW)
3670 }
3671 #[inline]
3672 pub fn trigger_token(&self) -> Option<SyntaxToken> {
3673 support::token(&self.syntax, SyntaxKind::TRIGGER_KW)
3674 }
3675}
3676
3677#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3678pub struct CreateExtension {
3679 pub(crate) syntax: SyntaxNode,
3680}
3681impl CreateExtension {
3682 #[inline]
3683 pub fn if_not_exists(&self) -> Option<IfNotExists> {
3684 support::child(&self.syntax)
3685 }
3686 #[inline]
3687 pub fn name(&self) -> Option<Name> {
3688 support::child(&self.syntax)
3689 }
3690 #[inline]
3691 pub fn create_token(&self) -> Option<SyntaxToken> {
3692 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3693 }
3694 #[inline]
3695 pub fn extension_token(&self) -> Option<SyntaxToken> {
3696 support::token(&self.syntax, SyntaxKind::EXTENSION_KW)
3697 }
3698}
3699
3700#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3701pub struct CreateForeignDataWrapper {
3702 pub(crate) syntax: SyntaxNode,
3703}
3704impl CreateForeignDataWrapper {
3705 #[inline]
3706 pub fn alter_option_list(&self) -> Option<AlterOptionList> {
3707 support::child(&self.syntax)
3708 }
3709 #[inline]
3710 pub fn fdw_option_list(&self) -> Option<FdwOptionList> {
3711 support::child(&self.syntax)
3712 }
3713 #[inline]
3714 pub fn name(&self) -> Option<Name> {
3715 support::child(&self.syntax)
3716 }
3717 #[inline]
3718 pub fn create_token(&self) -> Option<SyntaxToken> {
3719 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3720 }
3721 #[inline]
3722 pub fn data_token(&self) -> Option<SyntaxToken> {
3723 support::token(&self.syntax, SyntaxKind::DATA_KW)
3724 }
3725 #[inline]
3726 pub fn foreign_token(&self) -> Option<SyntaxToken> {
3727 support::token(&self.syntax, SyntaxKind::FOREIGN_KW)
3728 }
3729 #[inline]
3730 pub fn wrapper_token(&self) -> Option<SyntaxToken> {
3731 support::token(&self.syntax, SyntaxKind::WRAPPER_KW)
3732 }
3733}
3734
3735#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3736pub struct CreateForeignTable {
3737 pub(crate) syntax: SyntaxNode,
3738}
3739impl CreateForeignTable {
3740 #[inline]
3741 pub fn alter_option_list(&self) -> Option<AlterOptionList> {
3742 support::child(&self.syntax)
3743 }
3744 #[inline]
3745 pub fn if_not_exists(&self) -> Option<IfNotExists> {
3746 support::child(&self.syntax)
3747 }
3748 #[inline]
3749 pub fn inherits(&self) -> Option<Inherits> {
3750 support::child(&self.syntax)
3751 }
3752 #[inline]
3753 pub fn partition_of(&self) -> Option<PartitionOf> {
3754 support::child(&self.syntax)
3755 }
3756 #[inline]
3757 pub fn partition_type(&self) -> Option<PartitionType> {
3758 support::child(&self.syntax)
3759 }
3760 #[inline]
3761 pub fn path(&self) -> Option<Path> {
3762 support::child(&self.syntax)
3763 }
3764 #[inline]
3765 pub fn server_name(&self) -> Option<ServerName> {
3766 support::child(&self.syntax)
3767 }
3768 #[inline]
3769 pub fn table_arg_list(&self) -> Option<TableArgList> {
3770 support::child(&self.syntax)
3771 }
3772 #[inline]
3773 pub fn create_token(&self) -> Option<SyntaxToken> {
3774 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3775 }
3776 #[inline]
3777 pub fn foreign_token(&self) -> Option<SyntaxToken> {
3778 support::token(&self.syntax, SyntaxKind::FOREIGN_KW)
3779 }
3780 #[inline]
3781 pub fn table_token(&self) -> Option<SyntaxToken> {
3782 support::token(&self.syntax, SyntaxKind::TABLE_KW)
3783 }
3784}
3785
3786#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3787pub struct CreateFunction {
3788 pub(crate) syntax: SyntaxNode,
3789}
3790impl CreateFunction {
3791 #[inline]
3792 pub fn option_list(&self) -> Option<FuncOptionList> {
3793 support::child(&self.syntax)
3794 }
3795 #[inline]
3796 pub fn or_replace(&self) -> Option<OrReplace> {
3797 support::child(&self.syntax)
3798 }
3799 #[inline]
3800 pub fn param_list(&self) -> Option<ParamList> {
3801 support::child(&self.syntax)
3802 }
3803 #[inline]
3804 pub fn path(&self) -> Option<Path> {
3805 support::child(&self.syntax)
3806 }
3807 #[inline]
3808 pub fn ret_type(&self) -> Option<RetType> {
3809 support::child(&self.syntax)
3810 }
3811 #[inline]
3812 pub fn create_token(&self) -> Option<SyntaxToken> {
3813 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3814 }
3815 #[inline]
3816 pub fn function_token(&self) -> Option<SyntaxToken> {
3817 support::token(&self.syntax, SyntaxKind::FUNCTION_KW)
3818 }
3819}
3820
3821#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3822pub struct CreateGroup {
3823 pub(crate) syntax: SyntaxNode,
3824}
3825impl CreateGroup {
3826 #[inline]
3827 pub fn name(&self) -> Option<Name> {
3828 support::child(&self.syntax)
3829 }
3830 #[inline]
3831 pub fn role_option_list(&self) -> Option<RoleOptionList> {
3832 support::child(&self.syntax)
3833 }
3834 #[inline]
3835 pub fn create_token(&self) -> Option<SyntaxToken> {
3836 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3837 }
3838 #[inline]
3839 pub fn group_token(&self) -> Option<SyntaxToken> {
3840 support::token(&self.syntax, SyntaxKind::GROUP_KW)
3841 }
3842}
3843
3844#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3845pub struct CreateIndex {
3846 pub(crate) syntax: SyntaxNode,
3847}
3848impl CreateIndex {
3849 #[inline]
3850 pub fn constraint_include_clause(&self) -> Option<ConstraintIncludeClause> {
3851 support::child(&self.syntax)
3852 }
3853 #[inline]
3854 pub fn if_not_exists(&self) -> Option<IfNotExists> {
3855 support::child(&self.syntax)
3856 }
3857 #[inline]
3858 pub fn name(&self) -> Option<Name> {
3859 support::child(&self.syntax)
3860 }
3861 #[inline]
3862 pub fn nulls_distinct(&self) -> Option<NullsDistinct> {
3863 support::child(&self.syntax)
3864 }
3865 #[inline]
3866 pub fn nulls_not_distinct(&self) -> Option<NullsNotDistinct> {
3867 support::child(&self.syntax)
3868 }
3869 #[inline]
3870 pub fn partition_item_list(&self) -> Option<PartitionItemList> {
3871 support::child(&self.syntax)
3872 }
3873 #[inline]
3874 pub fn relation_name(&self) -> Option<RelationName> {
3875 support::child(&self.syntax)
3876 }
3877 #[inline]
3878 pub fn tablespace(&self) -> Option<Tablespace> {
3879 support::child(&self.syntax)
3880 }
3881 #[inline]
3882 pub fn using_method(&self) -> Option<UsingMethod> {
3883 support::child(&self.syntax)
3884 }
3885 #[inline]
3886 pub fn where_clause(&self) -> Option<WhereClause> {
3887 support::child(&self.syntax)
3888 }
3889 #[inline]
3890 pub fn with_params(&self) -> Option<WithParams> {
3891 support::child(&self.syntax)
3892 }
3893 #[inline]
3894 pub fn concurrently_token(&self) -> Option<SyntaxToken> {
3895 support::token(&self.syntax, SyntaxKind::CONCURRENTLY_KW)
3896 }
3897 #[inline]
3898 pub fn create_token(&self) -> Option<SyntaxToken> {
3899 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3900 }
3901 #[inline]
3902 pub fn index_token(&self) -> Option<SyntaxToken> {
3903 support::token(&self.syntax, SyntaxKind::INDEX_KW)
3904 }
3905 #[inline]
3906 pub fn on_token(&self) -> Option<SyntaxToken> {
3907 support::token(&self.syntax, SyntaxKind::ON_KW)
3908 }
3909 #[inline]
3910 pub fn unique_token(&self) -> Option<SyntaxToken> {
3911 support::token(&self.syntax, SyntaxKind::UNIQUE_KW)
3912 }
3913}
3914
3915#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3916pub struct CreateLanguage {
3917 pub(crate) syntax: SyntaxNode,
3918}
3919impl CreateLanguage {
3920 #[inline]
3921 pub fn name(&self) -> Option<Name> {
3922 support::child(&self.syntax)
3923 }
3924 #[inline]
3925 pub fn or_replace(&self) -> Option<OrReplace> {
3926 support::child(&self.syntax)
3927 }
3928 #[inline]
3929 pub fn path(&self) -> Option<Path> {
3930 support::child(&self.syntax)
3931 }
3932 #[inline]
3933 pub fn create_token(&self) -> Option<SyntaxToken> {
3934 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3935 }
3936 #[inline]
3937 pub fn handler_token(&self) -> Option<SyntaxToken> {
3938 support::token(&self.syntax, SyntaxKind::HANDLER_KW)
3939 }
3940 #[inline]
3941 pub fn inline_token(&self) -> Option<SyntaxToken> {
3942 support::token(&self.syntax, SyntaxKind::INLINE_KW)
3943 }
3944 #[inline]
3945 pub fn language_token(&self) -> Option<SyntaxToken> {
3946 support::token(&self.syntax, SyntaxKind::LANGUAGE_KW)
3947 }
3948 #[inline]
3949 pub fn procedural_token(&self) -> Option<SyntaxToken> {
3950 support::token(&self.syntax, SyntaxKind::PROCEDURAL_KW)
3951 }
3952 #[inline]
3953 pub fn trusted_token(&self) -> Option<SyntaxToken> {
3954 support::token(&self.syntax, SyntaxKind::TRUSTED_KW)
3955 }
3956 #[inline]
3957 pub fn validator_token(&self) -> Option<SyntaxToken> {
3958 support::token(&self.syntax, SyntaxKind::VALIDATOR_KW)
3959 }
3960}
3961
3962#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3963pub struct CreateMaterializedView {
3964 pub(crate) syntax: SyntaxNode,
3965}
3966impl CreateMaterializedView {
3967 #[inline]
3968 pub fn column_list(&self) -> Option<ColumnList> {
3969 support::child(&self.syntax)
3970 }
3971 #[inline]
3972 pub fn if_not_exists(&self) -> Option<IfNotExists> {
3973 support::child(&self.syntax)
3974 }
3975 #[inline]
3976 pub fn path(&self) -> Option<Path> {
3977 support::child(&self.syntax)
3978 }
3979 #[inline]
3980 pub fn query(&self) -> Option<SelectVariant> {
3981 support::child(&self.syntax)
3982 }
3983 #[inline]
3984 pub fn tablespace(&self) -> Option<Tablespace> {
3985 support::child(&self.syntax)
3986 }
3987 #[inline]
3988 pub fn using_method(&self) -> Option<UsingMethod> {
3989 support::child(&self.syntax)
3990 }
3991 #[inline]
3992 pub fn with_data(&self) -> Option<WithData> {
3993 support::child(&self.syntax)
3994 }
3995 #[inline]
3996 pub fn with_no_data(&self) -> Option<WithNoData> {
3997 support::child(&self.syntax)
3998 }
3999 #[inline]
4000 pub fn with_params(&self) -> Option<WithParams> {
4001 support::child(&self.syntax)
4002 }
4003 #[inline]
4004 pub fn as_token(&self) -> Option<SyntaxToken> {
4005 support::token(&self.syntax, SyntaxKind::AS_KW)
4006 }
4007 #[inline]
4008 pub fn create_token(&self) -> Option<SyntaxToken> {
4009 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4010 }
4011 #[inline]
4012 pub fn materialized_token(&self) -> Option<SyntaxToken> {
4013 support::token(&self.syntax, SyntaxKind::MATERIALIZED_KW)
4014 }
4015 #[inline]
4016 pub fn view_token(&self) -> Option<SyntaxToken> {
4017 support::token(&self.syntax, SyntaxKind::VIEW_KW)
4018 }
4019}
4020
4021#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4022pub struct CreateOperator {
4023 pub(crate) syntax: SyntaxNode,
4024}
4025impl CreateOperator {
4026 #[inline]
4027 pub fn attribute_list(&self) -> Option<AttributeList> {
4028 support::child(&self.syntax)
4029 }
4030 #[inline]
4031 pub fn op(&self) -> Option<Op> {
4032 support::child(&self.syntax)
4033 }
4034 #[inline]
4035 pub fn path(&self) -> Option<Path> {
4036 support::child(&self.syntax)
4037 }
4038 #[inline]
4039 pub fn create_token(&self) -> Option<SyntaxToken> {
4040 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4041 }
4042 #[inline]
4043 pub fn operator_token(&self) -> Option<SyntaxToken> {
4044 support::token(&self.syntax, SyntaxKind::OPERATOR_KW)
4045 }
4046}
4047
4048#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4049pub struct CreateOperatorClass {
4050 pub(crate) syntax: SyntaxNode,
4051}
4052impl CreateOperatorClass {
4053 #[inline]
4054 pub fn name_ref(&self) -> Option<NameRef> {
4055 support::child(&self.syntax)
4056 }
4057 #[inline]
4058 pub fn operator_class_option_list(&self) -> Option<OperatorClassOptionList> {
4059 support::child(&self.syntax)
4060 }
4061 #[inline]
4062 pub fn path(&self) -> Option<Path> {
4063 support::child(&self.syntax)
4064 }
4065 #[inline]
4066 pub fn ty(&self) -> Option<Type> {
4067 support::child(&self.syntax)
4068 }
4069 #[inline]
4070 pub fn as_token(&self) -> Option<SyntaxToken> {
4071 support::token(&self.syntax, SyntaxKind::AS_KW)
4072 }
4073 #[inline]
4074 pub fn class_token(&self) -> Option<SyntaxToken> {
4075 support::token(&self.syntax, SyntaxKind::CLASS_KW)
4076 }
4077 #[inline]
4078 pub fn create_token(&self) -> Option<SyntaxToken> {
4079 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4080 }
4081 #[inline]
4082 pub fn default_token(&self) -> Option<SyntaxToken> {
4083 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
4084 }
4085 #[inline]
4086 pub fn family_token(&self) -> Option<SyntaxToken> {
4087 support::token(&self.syntax, SyntaxKind::FAMILY_KW)
4088 }
4089 #[inline]
4090 pub fn for_token(&self) -> Option<SyntaxToken> {
4091 support::token(&self.syntax, SyntaxKind::FOR_KW)
4092 }
4093 #[inline]
4094 pub fn operator_token(&self) -> Option<SyntaxToken> {
4095 support::token(&self.syntax, SyntaxKind::OPERATOR_KW)
4096 }
4097 #[inline]
4098 pub fn type_token(&self) -> Option<SyntaxToken> {
4099 support::token(&self.syntax, SyntaxKind::TYPE_KW)
4100 }
4101 #[inline]
4102 pub fn using_token(&self) -> Option<SyntaxToken> {
4103 support::token(&self.syntax, SyntaxKind::USING_KW)
4104 }
4105}
4106
4107#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4108pub struct CreateOperatorFamily {
4109 pub(crate) syntax: SyntaxNode,
4110}
4111impl CreateOperatorFamily {
4112 #[inline]
4113 pub fn name_ref(&self) -> Option<NameRef> {
4114 support::child(&self.syntax)
4115 }
4116 #[inline]
4117 pub fn path(&self) -> Option<Path> {
4118 support::child(&self.syntax)
4119 }
4120 #[inline]
4121 pub fn create_token(&self) -> Option<SyntaxToken> {
4122 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4123 }
4124 #[inline]
4125 pub fn family_token(&self) -> Option<SyntaxToken> {
4126 support::token(&self.syntax, SyntaxKind::FAMILY_KW)
4127 }
4128 #[inline]
4129 pub fn operator_token(&self) -> Option<SyntaxToken> {
4130 support::token(&self.syntax, SyntaxKind::OPERATOR_KW)
4131 }
4132 #[inline]
4133 pub fn using_token(&self) -> Option<SyntaxToken> {
4134 support::token(&self.syntax, SyntaxKind::USING_KW)
4135 }
4136}
4137
4138#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4139pub struct CreatePolicy {
4140 pub(crate) syntax: SyntaxNode,
4141}
4142impl CreatePolicy {
4143 #[inline]
4144 pub fn as_policy_type(&self) -> Option<AsPolicyType> {
4145 support::child(&self.syntax)
4146 }
4147 #[inline]
4148 pub fn name(&self) -> Option<Name> {
4149 support::child(&self.syntax)
4150 }
4151 #[inline]
4152 pub fn on_table(&self) -> Option<OnTable> {
4153 support::child(&self.syntax)
4154 }
4155 #[inline]
4156 pub fn role_ref_list(&self) -> Option<RoleRefList> {
4157 support::child(&self.syntax)
4158 }
4159 #[inline]
4160 pub fn using_expr_clause(&self) -> Option<UsingExprClause> {
4161 support::child(&self.syntax)
4162 }
4163 #[inline]
4164 pub fn with_check_expr_clause(&self) -> Option<WithCheckExprClause> {
4165 support::child(&self.syntax)
4166 }
4167 #[inline]
4168 pub fn all_token(&self) -> Option<SyntaxToken> {
4169 support::token(&self.syntax, SyntaxKind::ALL_KW)
4170 }
4171 #[inline]
4172 pub fn create_token(&self) -> Option<SyntaxToken> {
4173 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4174 }
4175 #[inline]
4176 pub fn delete_token(&self) -> Option<SyntaxToken> {
4177 support::token(&self.syntax, SyntaxKind::DELETE_KW)
4178 }
4179 #[inline]
4180 pub fn for_token(&self) -> Option<SyntaxToken> {
4181 support::token(&self.syntax, SyntaxKind::FOR_KW)
4182 }
4183 #[inline]
4184 pub fn insert_token(&self) -> Option<SyntaxToken> {
4185 support::token(&self.syntax, SyntaxKind::INSERT_KW)
4186 }
4187 #[inline]
4188 pub fn policy_token(&self) -> Option<SyntaxToken> {
4189 support::token(&self.syntax, SyntaxKind::POLICY_KW)
4190 }
4191 #[inline]
4192 pub fn select_token(&self) -> Option<SyntaxToken> {
4193 support::token(&self.syntax, SyntaxKind::SELECT_KW)
4194 }
4195 #[inline]
4196 pub fn to_token(&self) -> Option<SyntaxToken> {
4197 support::token(&self.syntax, SyntaxKind::TO_KW)
4198 }
4199 #[inline]
4200 pub fn update_token(&self) -> Option<SyntaxToken> {
4201 support::token(&self.syntax, SyntaxKind::UPDATE_KW)
4202 }
4203}
4204
4205#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4206pub struct CreateProcedure {
4207 pub(crate) syntax: SyntaxNode,
4208}
4209impl CreateProcedure {
4210 #[inline]
4211 pub fn option_list(&self) -> Option<FuncOptionList> {
4212 support::child(&self.syntax)
4213 }
4214 #[inline]
4215 pub fn or_replace(&self) -> Option<OrReplace> {
4216 support::child(&self.syntax)
4217 }
4218 #[inline]
4219 pub fn param_list(&self) -> Option<ParamList> {
4220 support::child(&self.syntax)
4221 }
4222 #[inline]
4223 pub fn path(&self) -> Option<Path> {
4224 support::child(&self.syntax)
4225 }
4226 #[inline]
4227 pub fn create_token(&self) -> Option<SyntaxToken> {
4228 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4229 }
4230 #[inline]
4231 pub fn procedure_token(&self) -> Option<SyntaxToken> {
4232 support::token(&self.syntax, SyntaxKind::PROCEDURE_KW)
4233 }
4234}
4235
4236#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4237pub struct CreatePublication {
4238 pub(crate) syntax: SyntaxNode,
4239}
4240impl CreatePublication {
4241 #[inline]
4242 pub fn name(&self) -> Option<Name> {
4243 support::child(&self.syntax)
4244 }
4245 #[inline]
4246 pub fn publication_objects(&self) -> AstChildren<PublicationObject> {
4247 support::children(&self.syntax)
4248 }
4249 #[inline]
4250 pub fn with_params(&self) -> Option<WithParams> {
4251 support::child(&self.syntax)
4252 }
4253 #[inline]
4254 pub fn all_token(&self) -> Option<SyntaxToken> {
4255 support::token(&self.syntax, SyntaxKind::ALL_KW)
4256 }
4257 #[inline]
4258 pub fn create_token(&self) -> Option<SyntaxToken> {
4259 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4260 }
4261 #[inline]
4262 pub fn for_token(&self) -> Option<SyntaxToken> {
4263 support::token(&self.syntax, SyntaxKind::FOR_KW)
4264 }
4265 #[inline]
4266 pub fn publication_token(&self) -> Option<SyntaxToken> {
4267 support::token(&self.syntax, SyntaxKind::PUBLICATION_KW)
4268 }
4269 #[inline]
4270 pub fn tables_token(&self) -> Option<SyntaxToken> {
4271 support::token(&self.syntax, SyntaxKind::TABLES_KW)
4272 }
4273}
4274
4275#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4276pub struct CreateRole {
4277 pub(crate) syntax: SyntaxNode,
4278}
4279impl CreateRole {
4280 #[inline]
4281 pub fn name(&self) -> Option<Name> {
4282 support::child(&self.syntax)
4283 }
4284 #[inline]
4285 pub fn role_option_list(&self) -> Option<RoleOptionList> {
4286 support::child(&self.syntax)
4287 }
4288 #[inline]
4289 pub fn create_token(&self) -> Option<SyntaxToken> {
4290 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4291 }
4292 #[inline]
4293 pub fn role_token(&self) -> Option<SyntaxToken> {
4294 support::token(&self.syntax, SyntaxKind::ROLE_KW)
4295 }
4296}
4297
4298#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4299pub struct CreateRule {
4300 pub(crate) syntax: SyntaxNode,
4301}
4302impl CreateRule {
4303 #[inline]
4304 pub fn name(&self) -> Option<Name> {
4305 support::child(&self.syntax)
4306 }
4307 #[inline]
4308 pub fn or_replace(&self) -> Option<OrReplace> {
4309 support::child(&self.syntax)
4310 }
4311 #[inline]
4312 pub fn path(&self) -> Option<Path> {
4313 support::child(&self.syntax)
4314 }
4315 #[inline]
4316 pub fn stmt(&self) -> Option<Stmt> {
4317 support::child(&self.syntax)
4318 }
4319 #[inline]
4320 pub fn stmts(&self) -> AstChildren<Stmt> {
4321 support::children(&self.syntax)
4322 }
4323 #[inline]
4324 pub fn where_clause(&self) -> Option<WhereClause> {
4325 support::child(&self.syntax)
4326 }
4327 #[inline]
4328 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
4329 support::token(&self.syntax, SyntaxKind::L_PAREN)
4330 }
4331 #[inline]
4332 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
4333 support::token(&self.syntax, SyntaxKind::R_PAREN)
4334 }
4335 #[inline]
4336 pub fn also_token(&self) -> Option<SyntaxToken> {
4337 support::token(&self.syntax, SyntaxKind::ALSO_KW)
4338 }
4339 #[inline]
4340 pub fn as_token(&self) -> Option<SyntaxToken> {
4341 support::token(&self.syntax, SyntaxKind::AS_KW)
4342 }
4343 #[inline]
4344 pub fn create_token(&self) -> Option<SyntaxToken> {
4345 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4346 }
4347 #[inline]
4348 pub fn delete_token(&self) -> Option<SyntaxToken> {
4349 support::token(&self.syntax, SyntaxKind::DELETE_KW)
4350 }
4351 #[inline]
4352 pub fn do_token(&self) -> Option<SyntaxToken> {
4353 support::token(&self.syntax, SyntaxKind::DO_KW)
4354 }
4355 #[inline]
4356 pub fn ident_token(&self) -> Option<SyntaxToken> {
4357 support::token(&self.syntax, SyntaxKind::IDENT)
4358 }
4359 #[inline]
4360 pub fn insert_token(&self) -> Option<SyntaxToken> {
4361 support::token(&self.syntax, SyntaxKind::INSERT_KW)
4362 }
4363 #[inline]
4364 pub fn instead_token(&self) -> Option<SyntaxToken> {
4365 support::token(&self.syntax, SyntaxKind::INSTEAD_KW)
4366 }
4367 #[inline]
4368 pub fn nothing_token(&self) -> Option<SyntaxToken> {
4369 support::token(&self.syntax, SyntaxKind::NOTHING_KW)
4370 }
4371 #[inline]
4372 pub fn on_token(&self) -> Option<SyntaxToken> {
4373 support::token(&self.syntax, SyntaxKind::ON_KW)
4374 }
4375 #[inline]
4376 pub fn rule_token(&self) -> Option<SyntaxToken> {
4377 support::token(&self.syntax, SyntaxKind::RULE_KW)
4378 }
4379 #[inline]
4380 pub fn select_token(&self) -> Option<SyntaxToken> {
4381 support::token(&self.syntax, SyntaxKind::SELECT_KW)
4382 }
4383 #[inline]
4384 pub fn to_token(&self) -> Option<SyntaxToken> {
4385 support::token(&self.syntax, SyntaxKind::TO_KW)
4386 }
4387 #[inline]
4388 pub fn update_token(&self) -> Option<SyntaxToken> {
4389 support::token(&self.syntax, SyntaxKind::UPDATE_KW)
4390 }
4391}
4392
4393#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4394pub struct CreateSchema {
4395 pub(crate) syntax: SyntaxNode,
4396}
4397impl CreateSchema {
4398 #[inline]
4399 pub fn if_not_exists(&self) -> Option<IfNotExists> {
4400 support::child(&self.syntax)
4401 }
4402 #[inline]
4403 pub fn name(&self) -> Option<Name> {
4404 support::child(&self.syntax)
4405 }
4406 #[inline]
4407 pub fn role(&self) -> Option<Role> {
4408 support::child(&self.syntax)
4409 }
4410 #[inline]
4411 pub fn role_ref(&self) -> Option<RoleRef> {
4412 support::child(&self.syntax)
4413 }
4414 #[inline]
4415 pub fn schema_elements(&self) -> AstChildren<SchemaElement> {
4416 support::children(&self.syntax)
4417 }
4418 #[inline]
4419 pub fn authorization_token(&self) -> Option<SyntaxToken> {
4420 support::token(&self.syntax, SyntaxKind::AUTHORIZATION_KW)
4421 }
4422 #[inline]
4423 pub fn create_token(&self) -> Option<SyntaxToken> {
4424 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4425 }
4426 #[inline]
4427 pub fn schema_token(&self) -> Option<SyntaxToken> {
4428 support::token(&self.syntax, SyntaxKind::SCHEMA_KW)
4429 }
4430}
4431
4432#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4433pub struct CreateSequence {
4434 pub(crate) syntax: SyntaxNode,
4435}
4436impl CreateSequence {
4437 #[inline]
4438 pub fn if_not_exists(&self) -> Option<IfNotExists> {
4439 support::child(&self.syntax)
4440 }
4441 #[inline]
4442 pub fn path(&self) -> Option<Path> {
4443 support::child(&self.syntax)
4444 }
4445 #[inline]
4446 pub fn sequence_options(&self) -> AstChildren<SequenceOption> {
4447 support::children(&self.syntax)
4448 }
4449 #[inline]
4450 pub fn create_token(&self) -> Option<SyntaxToken> {
4451 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4452 }
4453 #[inline]
4454 pub fn sequence_token(&self) -> Option<SyntaxToken> {
4455 support::token(&self.syntax, SyntaxKind::SEQUENCE_KW)
4456 }
4457 #[inline]
4458 pub fn temp_token(&self) -> Option<SyntaxToken> {
4459 support::token(&self.syntax, SyntaxKind::TEMP_KW)
4460 }
4461 #[inline]
4462 pub fn temporary_token(&self) -> Option<SyntaxToken> {
4463 support::token(&self.syntax, SyntaxKind::TEMPORARY_KW)
4464 }
4465 #[inline]
4466 pub fn unlogged_token(&self) -> Option<SyntaxToken> {
4467 support::token(&self.syntax, SyntaxKind::UNLOGGED_KW)
4468 }
4469}
4470
4471#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4472pub struct CreateServer {
4473 pub(crate) syntax: SyntaxNode,
4474}
4475impl CreateServer {
4476 #[inline]
4477 pub fn alter_option_list(&self) -> Option<AlterOptionList> {
4478 support::child(&self.syntax)
4479 }
4480 #[inline]
4481 pub fn if_not_exists(&self) -> Option<IfNotExists> {
4482 support::child(&self.syntax)
4483 }
4484 #[inline]
4485 pub fn literal(&self) -> Option<Literal> {
4486 support::child(&self.syntax)
4487 }
4488 #[inline]
4489 pub fn name(&self) -> Option<Name> {
4490 support::child(&self.syntax)
4491 }
4492 #[inline]
4493 pub fn name_ref(&self) -> Option<NameRef> {
4494 support::child(&self.syntax)
4495 }
4496 #[inline]
4497 pub fn create_token(&self) -> Option<SyntaxToken> {
4498 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4499 }
4500 #[inline]
4501 pub fn data_token(&self) -> Option<SyntaxToken> {
4502 support::token(&self.syntax, SyntaxKind::DATA_KW)
4503 }
4504 #[inline]
4505 pub fn foreign_token(&self) -> Option<SyntaxToken> {
4506 support::token(&self.syntax, SyntaxKind::FOREIGN_KW)
4507 }
4508 #[inline]
4509 pub fn server_token(&self) -> Option<SyntaxToken> {
4510 support::token(&self.syntax, SyntaxKind::SERVER_KW)
4511 }
4512 #[inline]
4513 pub fn type_token(&self) -> Option<SyntaxToken> {
4514 support::token(&self.syntax, SyntaxKind::TYPE_KW)
4515 }
4516 #[inline]
4517 pub fn version_token(&self) -> Option<SyntaxToken> {
4518 support::token(&self.syntax, SyntaxKind::VERSION_KW)
4519 }
4520 #[inline]
4521 pub fn wrapper_token(&self) -> Option<SyntaxToken> {
4522 support::token(&self.syntax, SyntaxKind::WRAPPER_KW)
4523 }
4524}
4525
4526#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4527pub struct CreateStatistics {
4528 pub(crate) syntax: SyntaxNode,
4529}
4530impl CreateStatistics {
4531 #[inline]
4532 pub fn from_table(&self) -> Option<FromTable> {
4533 support::child(&self.syntax)
4534 }
4535 #[inline]
4536 pub fn name_refs(&self) -> AstChildren<NameRef> {
4537 support::children(&self.syntax)
4538 }
4539 #[inline]
4540 pub fn path(&self) -> Option<Path> {
4541 support::child(&self.syntax)
4542 }
4543 #[inline]
4544 pub fn create_token(&self) -> Option<SyntaxToken> {
4545 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4546 }
4547 #[inline]
4548 pub fn on_token(&self) -> Option<SyntaxToken> {
4549 support::token(&self.syntax, SyntaxKind::ON_KW)
4550 }
4551 #[inline]
4552 pub fn statistics_token(&self) -> Option<SyntaxToken> {
4553 support::token(&self.syntax, SyntaxKind::STATISTICS_KW)
4554 }
4555}
4556
4557#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4558pub struct CreateSubscription {
4559 pub(crate) syntax: SyntaxNode,
4560}
4561impl CreateSubscription {
4562 #[inline]
4563 pub fn literal(&self) -> Option<Literal> {
4564 support::child(&self.syntax)
4565 }
4566 #[inline]
4567 pub fn name(&self) -> Option<Name> {
4568 support::child(&self.syntax)
4569 }
4570 #[inline]
4571 pub fn name_refs(&self) -> AstChildren<NameRef> {
4572 support::children(&self.syntax)
4573 }
4574 #[inline]
4575 pub fn with_params(&self) -> Option<WithParams> {
4576 support::child(&self.syntax)
4577 }
4578 #[inline]
4579 pub fn connection_token(&self) -> Option<SyntaxToken> {
4580 support::token(&self.syntax, SyntaxKind::CONNECTION_KW)
4581 }
4582 #[inline]
4583 pub fn create_token(&self) -> Option<SyntaxToken> {
4584 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4585 }
4586 #[inline]
4587 pub fn publication_token(&self) -> Option<SyntaxToken> {
4588 support::token(&self.syntax, SyntaxKind::PUBLICATION_KW)
4589 }
4590 #[inline]
4591 pub fn subscription_token(&self) -> Option<SyntaxToken> {
4592 support::token(&self.syntax, SyntaxKind::SUBSCRIPTION_KW)
4593 }
4594}
4595
4596#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4597pub struct CreateTable {
4598 pub(crate) syntax: SyntaxNode,
4599}
4600impl CreateTable {
4601 #[inline]
4602 pub fn if_not_exists(&self) -> Option<IfNotExists> {
4603 support::child(&self.syntax)
4604 }
4605 #[inline]
4606 pub fn inherits(&self) -> Option<Inherits> {
4607 support::child(&self.syntax)
4608 }
4609 #[inline]
4610 pub fn of_type(&self) -> Option<OfType> {
4611 support::child(&self.syntax)
4612 }
4613 #[inline]
4614 pub fn on_commit(&self) -> Option<OnCommit> {
4615 support::child(&self.syntax)
4616 }
4617 #[inline]
4618 pub fn partition_by(&self) -> Option<PartitionBy> {
4619 support::child(&self.syntax)
4620 }
4621 #[inline]
4622 pub fn partition_of(&self) -> Option<PartitionOf> {
4623 support::child(&self.syntax)
4624 }
4625 #[inline]
4626 pub fn path(&self) -> Option<Path> {
4627 support::child(&self.syntax)
4628 }
4629 #[inline]
4630 pub fn table_arg_list(&self) -> Option<TableArgList> {
4631 support::child(&self.syntax)
4632 }
4633 #[inline]
4634 pub fn tablespace(&self) -> Option<Tablespace> {
4635 support::child(&self.syntax)
4636 }
4637 #[inline]
4638 pub fn using_method(&self) -> Option<UsingMethod> {
4639 support::child(&self.syntax)
4640 }
4641 #[inline]
4642 pub fn with_params(&self) -> Option<WithParams> {
4643 support::child(&self.syntax)
4644 }
4645 #[inline]
4646 pub fn without_oids(&self) -> Option<WithoutOids> {
4647 support::child(&self.syntax)
4648 }
4649 #[inline]
4650 pub fn create_token(&self) -> Option<SyntaxToken> {
4651 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4652 }
4653 #[inline]
4654 pub fn global_token(&self) -> Option<SyntaxToken> {
4655 support::token(&self.syntax, SyntaxKind::GLOBAL_KW)
4656 }
4657 #[inline]
4658 pub fn local_token(&self) -> Option<SyntaxToken> {
4659 support::token(&self.syntax, SyntaxKind::LOCAL_KW)
4660 }
4661 #[inline]
4662 pub fn table_token(&self) -> Option<SyntaxToken> {
4663 support::token(&self.syntax, SyntaxKind::TABLE_KW)
4664 }
4665 #[inline]
4666 pub fn temp_token(&self) -> Option<SyntaxToken> {
4667 support::token(&self.syntax, SyntaxKind::TEMP_KW)
4668 }
4669 #[inline]
4670 pub fn temporary_token(&self) -> Option<SyntaxToken> {
4671 support::token(&self.syntax, SyntaxKind::TEMPORARY_KW)
4672 }
4673 #[inline]
4674 pub fn unlogged_token(&self) -> Option<SyntaxToken> {
4675 support::token(&self.syntax, SyntaxKind::UNLOGGED_KW)
4676 }
4677}
4678
4679#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4680pub struct CreateTableAs {
4681 pub(crate) syntax: SyntaxNode,
4682}
4683impl CreateTableAs {
4684 #[inline]
4685 pub fn if_not_exists(&self) -> Option<IfNotExists> {
4686 support::child(&self.syntax)
4687 }
4688 #[inline]
4689 pub fn on_commit(&self) -> Option<OnCommit> {
4690 support::child(&self.syntax)
4691 }
4692 #[inline]
4693 pub fn path(&self) -> Option<Path> {
4694 support::child(&self.syntax)
4695 }
4696 #[inline]
4697 pub fn query(&self) -> Option<SelectVariant> {
4698 support::child(&self.syntax)
4699 }
4700 #[inline]
4701 pub fn tablespace(&self) -> Option<Tablespace> {
4702 support::child(&self.syntax)
4703 }
4704 #[inline]
4705 pub fn using_method(&self) -> Option<UsingMethod> {
4706 support::child(&self.syntax)
4707 }
4708 #[inline]
4709 pub fn with_data(&self) -> Option<WithData> {
4710 support::child(&self.syntax)
4711 }
4712 #[inline]
4713 pub fn with_no_data(&self) -> Option<WithNoData> {
4714 support::child(&self.syntax)
4715 }
4716 #[inline]
4717 pub fn with_params(&self) -> Option<WithParams> {
4718 support::child(&self.syntax)
4719 }
4720 #[inline]
4721 pub fn without_oids(&self) -> Option<WithoutOids> {
4722 support::child(&self.syntax)
4723 }
4724 #[inline]
4725 pub fn as_token(&self) -> Option<SyntaxToken> {
4726 support::token(&self.syntax, SyntaxKind::AS_KW)
4727 }
4728 #[inline]
4729 pub fn create_token(&self) -> Option<SyntaxToken> {
4730 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4731 }
4732 #[inline]
4733 pub fn global_token(&self) -> Option<SyntaxToken> {
4734 support::token(&self.syntax, SyntaxKind::GLOBAL_KW)
4735 }
4736 #[inline]
4737 pub fn local_token(&self) -> Option<SyntaxToken> {
4738 support::token(&self.syntax, SyntaxKind::LOCAL_KW)
4739 }
4740 #[inline]
4741 pub fn table_token(&self) -> Option<SyntaxToken> {
4742 support::token(&self.syntax, SyntaxKind::TABLE_KW)
4743 }
4744 #[inline]
4745 pub fn temp_token(&self) -> Option<SyntaxToken> {
4746 support::token(&self.syntax, SyntaxKind::TEMP_KW)
4747 }
4748 #[inline]
4749 pub fn temporary_token(&self) -> Option<SyntaxToken> {
4750 support::token(&self.syntax, SyntaxKind::TEMPORARY_KW)
4751 }
4752 #[inline]
4753 pub fn unlogged_token(&self) -> Option<SyntaxToken> {
4754 support::token(&self.syntax, SyntaxKind::UNLOGGED_KW)
4755 }
4756}
4757
4758#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4759pub struct CreateTablespace {
4760 pub(crate) syntax: SyntaxNode,
4761}
4762impl CreateTablespace {
4763 #[inline]
4764 pub fn literal(&self) -> Option<Literal> {
4765 support::child(&self.syntax)
4766 }
4767 #[inline]
4768 pub fn name(&self) -> Option<Name> {
4769 support::child(&self.syntax)
4770 }
4771 #[inline]
4772 pub fn role_ref(&self) -> Option<RoleRef> {
4773 support::child(&self.syntax)
4774 }
4775 #[inline]
4776 pub fn with_params(&self) -> Option<WithParams> {
4777 support::child(&self.syntax)
4778 }
4779 #[inline]
4780 pub fn create_token(&self) -> Option<SyntaxToken> {
4781 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4782 }
4783 #[inline]
4784 pub fn location_token(&self) -> Option<SyntaxToken> {
4785 support::token(&self.syntax, SyntaxKind::LOCATION_KW)
4786 }
4787 #[inline]
4788 pub fn owner_token(&self) -> Option<SyntaxToken> {
4789 support::token(&self.syntax, SyntaxKind::OWNER_KW)
4790 }
4791 #[inline]
4792 pub fn tablespace_token(&self) -> Option<SyntaxToken> {
4793 support::token(&self.syntax, SyntaxKind::TABLESPACE_KW)
4794 }
4795}
4796
4797#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4798pub struct CreateTextSearchConfiguration {
4799 pub(crate) syntax: SyntaxNode,
4800}
4801impl CreateTextSearchConfiguration {
4802 #[inline]
4803 pub fn attribute_list(&self) -> Option<AttributeList> {
4804 support::child(&self.syntax)
4805 }
4806 #[inline]
4807 pub fn path(&self) -> Option<Path> {
4808 support::child(&self.syntax)
4809 }
4810 #[inline]
4811 pub fn configuration_token(&self) -> Option<SyntaxToken> {
4812 support::token(&self.syntax, SyntaxKind::CONFIGURATION_KW)
4813 }
4814 #[inline]
4815 pub fn create_token(&self) -> Option<SyntaxToken> {
4816 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4817 }
4818 #[inline]
4819 pub fn search_token(&self) -> Option<SyntaxToken> {
4820 support::token(&self.syntax, SyntaxKind::SEARCH_KW)
4821 }
4822 #[inline]
4823 pub fn text_token(&self) -> Option<SyntaxToken> {
4824 support::token(&self.syntax, SyntaxKind::TEXT_KW)
4825 }
4826}
4827
4828#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4829pub struct CreateTextSearchDictionary {
4830 pub(crate) syntax: SyntaxNode,
4831}
4832impl CreateTextSearchDictionary {
4833 #[inline]
4834 pub fn attribute_list(&self) -> Option<AttributeList> {
4835 support::child(&self.syntax)
4836 }
4837 #[inline]
4838 pub fn path(&self) -> Option<Path> {
4839 support::child(&self.syntax)
4840 }
4841 #[inline]
4842 pub fn create_token(&self) -> Option<SyntaxToken> {
4843 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4844 }
4845 #[inline]
4846 pub fn dictionary_token(&self) -> Option<SyntaxToken> {
4847 support::token(&self.syntax, SyntaxKind::DICTIONARY_KW)
4848 }
4849 #[inline]
4850 pub fn search_token(&self) -> Option<SyntaxToken> {
4851 support::token(&self.syntax, SyntaxKind::SEARCH_KW)
4852 }
4853 #[inline]
4854 pub fn text_token(&self) -> Option<SyntaxToken> {
4855 support::token(&self.syntax, SyntaxKind::TEXT_KW)
4856 }
4857}
4858
4859#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4860pub struct CreateTextSearchParser {
4861 pub(crate) syntax: SyntaxNode,
4862}
4863impl CreateTextSearchParser {
4864 #[inline]
4865 pub fn attribute_list(&self) -> Option<AttributeList> {
4866 support::child(&self.syntax)
4867 }
4868 #[inline]
4869 pub fn path(&self) -> Option<Path> {
4870 support::child(&self.syntax)
4871 }
4872 #[inline]
4873 pub fn create_token(&self) -> Option<SyntaxToken> {
4874 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4875 }
4876 #[inline]
4877 pub fn parser_token(&self) -> Option<SyntaxToken> {
4878 support::token(&self.syntax, SyntaxKind::PARSER_KW)
4879 }
4880 #[inline]
4881 pub fn search_token(&self) -> Option<SyntaxToken> {
4882 support::token(&self.syntax, SyntaxKind::SEARCH_KW)
4883 }
4884 #[inline]
4885 pub fn text_token(&self) -> Option<SyntaxToken> {
4886 support::token(&self.syntax, SyntaxKind::TEXT_KW)
4887 }
4888}
4889
4890#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4891pub struct CreateTextSearchTemplate {
4892 pub(crate) syntax: SyntaxNode,
4893}
4894impl CreateTextSearchTemplate {
4895 #[inline]
4896 pub fn attribute_list(&self) -> Option<AttributeList> {
4897 support::child(&self.syntax)
4898 }
4899 #[inline]
4900 pub fn path(&self) -> Option<Path> {
4901 support::child(&self.syntax)
4902 }
4903 #[inline]
4904 pub fn create_token(&self) -> Option<SyntaxToken> {
4905 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4906 }
4907 #[inline]
4908 pub fn search_token(&self) -> Option<SyntaxToken> {
4909 support::token(&self.syntax, SyntaxKind::SEARCH_KW)
4910 }
4911 #[inline]
4912 pub fn template_token(&self) -> Option<SyntaxToken> {
4913 support::token(&self.syntax, SyntaxKind::TEMPLATE_KW)
4914 }
4915 #[inline]
4916 pub fn text_token(&self) -> Option<SyntaxToken> {
4917 support::token(&self.syntax, SyntaxKind::TEXT_KW)
4918 }
4919}
4920
4921#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4922pub struct CreateTransform {
4923 pub(crate) syntax: SyntaxNode,
4924}
4925impl CreateTransform {
4926 #[inline]
4927 pub fn from_func(&self) -> Option<TransformFromFunc> {
4928 support::child(&self.syntax)
4929 }
4930 #[inline]
4931 pub fn language(&self) -> Option<NameRef> {
4932 support::child(&self.syntax)
4933 }
4934 #[inline]
4935 pub fn or_replace(&self) -> Option<OrReplace> {
4936 support::child(&self.syntax)
4937 }
4938 #[inline]
4939 pub fn to_func(&self) -> Option<TransformToFunc> {
4940 support::child(&self.syntax)
4941 }
4942 #[inline]
4943 pub fn ty(&self) -> Option<Type> {
4944 support::child(&self.syntax)
4945 }
4946 #[inline]
4947 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
4948 support::token(&self.syntax, SyntaxKind::L_PAREN)
4949 }
4950 #[inline]
4951 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
4952 support::token(&self.syntax, SyntaxKind::R_PAREN)
4953 }
4954 #[inline]
4955 pub fn comma_token(&self) -> Option<SyntaxToken> {
4956 support::token(&self.syntax, SyntaxKind::COMMA)
4957 }
4958 #[inline]
4959 pub fn create_token(&self) -> Option<SyntaxToken> {
4960 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4961 }
4962 #[inline]
4963 pub fn for_token(&self) -> Option<SyntaxToken> {
4964 support::token(&self.syntax, SyntaxKind::FOR_KW)
4965 }
4966 #[inline]
4967 pub fn language_token(&self) -> Option<SyntaxToken> {
4968 support::token(&self.syntax, SyntaxKind::LANGUAGE_KW)
4969 }
4970 #[inline]
4971 pub fn transform_token(&self) -> Option<SyntaxToken> {
4972 support::token(&self.syntax, SyntaxKind::TRANSFORM_KW)
4973 }
4974}
4975
4976#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4977pub struct CreateTrigger {
4978 pub(crate) syntax: SyntaxNode,
4979}
4980impl CreateTrigger {
4981 #[inline]
4982 pub fn call_expr(&self) -> Option<CallExpr> {
4983 support::child(&self.syntax)
4984 }
4985 #[inline]
4986 pub fn deferrable_constraint_option(&self) -> Option<DeferrableConstraintOption> {
4987 support::child(&self.syntax)
4988 }
4989 #[inline]
4990 pub fn from_table(&self) -> Option<FromTable> {
4991 support::child(&self.syntax)
4992 }
4993 #[inline]
4994 pub fn initially_deferred_constraint_option(
4995 &self,
4996 ) -> Option<InitiallyDeferredConstraintOption> {
4997 support::child(&self.syntax)
4998 }
4999 #[inline]
5000 pub fn initially_immediate_constraint_option(
5001 &self,
5002 ) -> Option<InitiallyImmediateConstraintOption> {
5003 support::child(&self.syntax)
5004 }
5005 #[inline]
5006 pub fn name(&self) -> Option<Name> {
5007 support::child(&self.syntax)
5008 }
5009 #[inline]
5010 pub fn not_deferrable_constraint_option(&self) -> Option<NotDeferrableConstraintOption> {
5011 support::child(&self.syntax)
5012 }
5013 #[inline]
5014 pub fn on_table(&self) -> Option<OnTable> {
5015 support::child(&self.syntax)
5016 }
5017 #[inline]
5018 pub fn or_replace(&self) -> Option<OrReplace> {
5019 support::child(&self.syntax)
5020 }
5021 #[inline]
5022 pub fn referencing(&self) -> Option<Referencing> {
5023 support::child(&self.syntax)
5024 }
5025 #[inline]
5026 pub fn timing(&self) -> Option<Timing> {
5027 support::child(&self.syntax)
5028 }
5029 #[inline]
5030 pub fn trigger_event_list(&self) -> Option<TriggerEventList> {
5031 support::child(&self.syntax)
5032 }
5033 #[inline]
5034 pub fn when_condition(&self) -> Option<WhenCondition> {
5035 support::child(&self.syntax)
5036 }
5037 #[inline]
5038 pub fn constraint_token(&self) -> Option<SyntaxToken> {
5039 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
5040 }
5041 #[inline]
5042 pub fn create_token(&self) -> Option<SyntaxToken> {
5043 support::token(&self.syntax, SyntaxKind::CREATE_KW)
5044 }
5045 #[inline]
5046 pub fn each_token(&self) -> Option<SyntaxToken> {
5047 support::token(&self.syntax, SyntaxKind::EACH_KW)
5048 }
5049 #[inline]
5050 pub fn execute_token(&self) -> Option<SyntaxToken> {
5051 support::token(&self.syntax, SyntaxKind::EXECUTE_KW)
5052 }
5053 #[inline]
5054 pub fn for_token(&self) -> Option<SyntaxToken> {
5055 support::token(&self.syntax, SyntaxKind::FOR_KW)
5056 }
5057 #[inline]
5058 pub fn function_token(&self) -> Option<SyntaxToken> {
5059 support::token(&self.syntax, SyntaxKind::FUNCTION_KW)
5060 }
5061 #[inline]
5062 pub fn procedure_token(&self) -> Option<SyntaxToken> {
5063 support::token(&self.syntax, SyntaxKind::PROCEDURE_KW)
5064 }
5065 #[inline]
5066 pub fn row_token(&self) -> Option<SyntaxToken> {
5067 support::token(&self.syntax, SyntaxKind::ROW_KW)
5068 }
5069 #[inline]
5070 pub fn statement_token(&self) -> Option<SyntaxToken> {
5071 support::token(&self.syntax, SyntaxKind::STATEMENT_KW)
5072 }
5073 #[inline]
5074 pub fn trigger_token(&self) -> Option<SyntaxToken> {
5075 support::token(&self.syntax, SyntaxKind::TRIGGER_KW)
5076 }
5077}
5078
5079#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5080pub struct CreateType {
5081 pub(crate) syntax: SyntaxNode,
5082}
5083impl CreateType {
5084 #[inline]
5085 pub fn attribute_list(&self) -> Option<AttributeList> {
5086 support::child(&self.syntax)
5087 }
5088 #[inline]
5089 pub fn column_list(&self) -> Option<ColumnList> {
5090 support::child(&self.syntax)
5091 }
5092 #[inline]
5093 pub fn path(&self) -> Option<Path> {
5094 support::child(&self.syntax)
5095 }
5096 #[inline]
5097 pub fn variant_list(&self) -> Option<VariantList> {
5098 support::child(&self.syntax)
5099 }
5100 #[inline]
5101 pub fn as_token(&self) -> Option<SyntaxToken> {
5102 support::token(&self.syntax, SyntaxKind::AS_KW)
5103 }
5104 #[inline]
5105 pub fn create_token(&self) -> Option<SyntaxToken> {
5106 support::token(&self.syntax, SyntaxKind::CREATE_KW)
5107 }
5108 #[inline]
5109 pub fn enum_token(&self) -> Option<SyntaxToken> {
5110 support::token(&self.syntax, SyntaxKind::ENUM_KW)
5111 }
5112 #[inline]
5113 pub fn range_token(&self) -> Option<SyntaxToken> {
5114 support::token(&self.syntax, SyntaxKind::RANGE_KW)
5115 }
5116 #[inline]
5117 pub fn type_token(&self) -> Option<SyntaxToken> {
5118 support::token(&self.syntax, SyntaxKind::TYPE_KW)
5119 }
5120}
5121
5122#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5123pub struct CreateUser {
5124 pub(crate) syntax: SyntaxNode,
5125}
5126impl CreateUser {
5127 #[inline]
5128 pub fn name(&self) -> Option<Name> {
5129 support::child(&self.syntax)
5130 }
5131 #[inline]
5132 pub fn role_option_list(&self) -> Option<RoleOptionList> {
5133 support::child(&self.syntax)
5134 }
5135 #[inline]
5136 pub fn create_token(&self) -> Option<SyntaxToken> {
5137 support::token(&self.syntax, SyntaxKind::CREATE_KW)
5138 }
5139 #[inline]
5140 pub fn user_token(&self) -> Option<SyntaxToken> {
5141 support::token(&self.syntax, SyntaxKind::USER_KW)
5142 }
5143}
5144
5145#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5146pub struct CreateUserMapping {
5147 pub(crate) syntax: SyntaxNode,
5148}
5149impl CreateUserMapping {
5150 #[inline]
5151 pub fn alter_option_list(&self) -> Option<AlterOptionList> {
5152 support::child(&self.syntax)
5153 }
5154 #[inline]
5155 pub fn if_not_exists(&self) -> Option<IfNotExists> {
5156 support::child(&self.syntax)
5157 }
5158 #[inline]
5159 pub fn role_ref(&self) -> Option<RoleRef> {
5160 support::child(&self.syntax)
5161 }
5162 #[inline]
5163 pub fn server_name(&self) -> Option<ServerName> {
5164 support::child(&self.syntax)
5165 }
5166 #[inline]
5167 pub fn create_token(&self) -> Option<SyntaxToken> {
5168 support::token(&self.syntax, SyntaxKind::CREATE_KW)
5169 }
5170 #[inline]
5171 pub fn for_token(&self) -> Option<SyntaxToken> {
5172 support::token(&self.syntax, SyntaxKind::FOR_KW)
5173 }
5174 #[inline]
5175 pub fn mapping_token(&self) -> Option<SyntaxToken> {
5176 support::token(&self.syntax, SyntaxKind::MAPPING_KW)
5177 }
5178 #[inline]
5179 pub fn user_token(&self) -> Option<SyntaxToken> {
5180 support::token(&self.syntax, SyntaxKind::USER_KW)
5181 }
5182}
5183
5184#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5185pub struct CreateView {
5186 pub(crate) syntax: SyntaxNode,
5187}
5188impl CreateView {
5189 #[inline]
5190 pub fn column_list(&self) -> Option<ColumnList> {
5191 support::child(&self.syntax)
5192 }
5193 #[inline]
5194 pub fn or_replace(&self) -> Option<OrReplace> {
5195 support::child(&self.syntax)
5196 }
5197 #[inline]
5198 pub fn path(&self) -> Option<Path> {
5199 support::child(&self.syntax)
5200 }
5201 #[inline]
5202 pub fn query(&self) -> Option<SelectVariant> {
5203 support::child(&self.syntax)
5204 }
5205 #[inline]
5206 pub fn with_params(&self) -> Option<WithParams> {
5207 support::child(&self.syntax)
5208 }
5209 #[inline]
5210 pub fn as_token(&self) -> Option<SyntaxToken> {
5211 support::token(&self.syntax, SyntaxKind::AS_KW)
5212 }
5213 #[inline]
5214 pub fn cascaded_token(&self) -> Option<SyntaxToken> {
5215 support::token(&self.syntax, SyntaxKind::CASCADED_KW)
5216 }
5217 #[inline]
5218 pub fn check_token(&self) -> Option<SyntaxToken> {
5219 support::token(&self.syntax, SyntaxKind::CHECK_KW)
5220 }
5221 #[inline]
5222 pub fn create_token(&self) -> Option<SyntaxToken> {
5223 support::token(&self.syntax, SyntaxKind::CREATE_KW)
5224 }
5225 #[inline]
5226 pub fn local_token(&self) -> Option<SyntaxToken> {
5227 support::token(&self.syntax, SyntaxKind::LOCAL_KW)
5228 }
5229 #[inline]
5230 pub fn option_token(&self) -> Option<SyntaxToken> {
5231 support::token(&self.syntax, SyntaxKind::OPTION_KW)
5232 }
5233 #[inline]
5234 pub fn recursive_token(&self) -> Option<SyntaxToken> {
5235 support::token(&self.syntax, SyntaxKind::RECURSIVE_KW)
5236 }
5237 #[inline]
5238 pub fn temp_token(&self) -> Option<SyntaxToken> {
5239 support::token(&self.syntax, SyntaxKind::TEMP_KW)
5240 }
5241 #[inline]
5242 pub fn temporary_token(&self) -> Option<SyntaxToken> {
5243 support::token(&self.syntax, SyntaxKind::TEMPORARY_KW)
5244 }
5245 #[inline]
5246 pub fn view_token(&self) -> Option<SyntaxToken> {
5247 support::token(&self.syntax, SyntaxKind::VIEW_KW)
5248 }
5249 #[inline]
5250 pub fn with_token(&self) -> Option<SyntaxToken> {
5251 support::token(&self.syntax, SyntaxKind::WITH_KW)
5252 }
5253}
5254
5255#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5256pub struct CustomOp {
5257 pub(crate) syntax: SyntaxNode,
5258}
5259impl CustomOp {
5260 #[inline]
5261 pub fn bang_token(&self) -> Option<SyntaxToken> {
5262 support::token(&self.syntax, SyntaxKind::BANG)
5263 }
5264 #[inline]
5265 pub fn pound_token(&self) -> Option<SyntaxToken> {
5266 support::token(&self.syntax, SyntaxKind::POUND)
5267 }
5268 #[inline]
5269 pub fn percent_token(&self) -> Option<SyntaxToken> {
5270 support::token(&self.syntax, SyntaxKind::PERCENT)
5271 }
5272 #[inline]
5273 pub fn amp_token(&self) -> Option<SyntaxToken> {
5274 support::token(&self.syntax, SyntaxKind::AMP)
5275 }
5276 #[inline]
5277 pub fn star_token(&self) -> Option<SyntaxToken> {
5278 support::token(&self.syntax, SyntaxKind::STAR)
5279 }
5280 #[inline]
5281 pub fn plus_token(&self) -> Option<SyntaxToken> {
5282 support::token(&self.syntax, SyntaxKind::PLUS)
5283 }
5284 #[inline]
5285 pub fn minus_token(&self) -> Option<SyntaxToken> {
5286 support::token(&self.syntax, SyntaxKind::MINUS)
5287 }
5288 #[inline]
5289 pub fn slash_token(&self) -> Option<SyntaxToken> {
5290 support::token(&self.syntax, SyntaxKind::SLASH)
5291 }
5292 #[inline]
5293 pub fn l_angle_token(&self) -> Option<SyntaxToken> {
5294 support::token(&self.syntax, SyntaxKind::L_ANGLE)
5295 }
5296 #[inline]
5297 pub fn eq_token(&self) -> Option<SyntaxToken> {
5298 support::token(&self.syntax, SyntaxKind::EQ)
5299 }
5300 #[inline]
5301 pub fn r_angle_token(&self) -> Option<SyntaxToken> {
5302 support::token(&self.syntax, SyntaxKind::R_ANGLE)
5303 }
5304 #[inline]
5305 pub fn question_token(&self) -> Option<SyntaxToken> {
5306 support::token(&self.syntax, SyntaxKind::QUESTION)
5307 }
5308 #[inline]
5309 pub fn at_token(&self) -> Option<SyntaxToken> {
5310 support::token(&self.syntax, SyntaxKind::AT)
5311 }
5312 #[inline]
5313 pub fn caret_token(&self) -> Option<SyntaxToken> {
5314 support::token(&self.syntax, SyntaxKind::CARET)
5315 }
5316 #[inline]
5317 pub fn backtick_token(&self) -> Option<SyntaxToken> {
5318 support::token(&self.syntax, SyntaxKind::BACKTICK)
5319 }
5320 #[inline]
5321 pub fn pipe_token(&self) -> Option<SyntaxToken> {
5322 support::token(&self.syntax, SyntaxKind::PIPE)
5323 }
5324 #[inline]
5325 pub fn tilde_token(&self) -> Option<SyntaxToken> {
5326 support::token(&self.syntax, SyntaxKind::TILDE)
5327 }
5328}
5329
5330#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5331pub struct Deallocate {
5332 pub(crate) syntax: SyntaxNode,
5333}
5334impl Deallocate {
5335 #[inline]
5336 pub fn name_ref(&self) -> Option<NameRef> {
5337 support::child(&self.syntax)
5338 }
5339 #[inline]
5340 pub fn all_token(&self) -> Option<SyntaxToken> {
5341 support::token(&self.syntax, SyntaxKind::ALL_KW)
5342 }
5343 #[inline]
5344 pub fn deallocate_token(&self) -> Option<SyntaxToken> {
5345 support::token(&self.syntax, SyntaxKind::DEALLOCATE_KW)
5346 }
5347 #[inline]
5348 pub fn prepare_token(&self) -> Option<SyntaxToken> {
5349 support::token(&self.syntax, SyntaxKind::PREPARE_KW)
5350 }
5351}
5352
5353#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5354pub struct Declare {
5355 pub(crate) syntax: SyntaxNode,
5356}
5357impl Declare {
5358 #[inline]
5359 pub fn name(&self) -> Option<Name> {
5360 support::child(&self.syntax)
5361 }
5362 #[inline]
5363 pub fn query(&self) -> Option<SelectVariant> {
5364 support::child(&self.syntax)
5365 }
5366 #[inline]
5367 pub fn asensitive_token(&self) -> Option<SyntaxToken> {
5368 support::token(&self.syntax, SyntaxKind::ASENSITIVE_KW)
5369 }
5370 #[inline]
5371 pub fn binary_token(&self) -> Option<SyntaxToken> {
5372 support::token(&self.syntax, SyntaxKind::BINARY_KW)
5373 }
5374 #[inline]
5375 pub fn cursor_token(&self) -> Option<SyntaxToken> {
5376 support::token(&self.syntax, SyntaxKind::CURSOR_KW)
5377 }
5378 #[inline]
5379 pub fn declare_token(&self) -> Option<SyntaxToken> {
5380 support::token(&self.syntax, SyntaxKind::DECLARE_KW)
5381 }
5382 #[inline]
5383 pub fn for_token(&self) -> Option<SyntaxToken> {
5384 support::token(&self.syntax, SyntaxKind::FOR_KW)
5385 }
5386 #[inline]
5387 pub fn hold_token(&self) -> Option<SyntaxToken> {
5388 support::token(&self.syntax, SyntaxKind::HOLD_KW)
5389 }
5390 #[inline]
5391 pub fn insensitive_token(&self) -> Option<SyntaxToken> {
5392 support::token(&self.syntax, SyntaxKind::INSENSITIVE_KW)
5393 }
5394 #[inline]
5395 pub fn no_token(&self) -> Option<SyntaxToken> {
5396 support::token(&self.syntax, SyntaxKind::NO_KW)
5397 }
5398 #[inline]
5399 pub fn scroll_token(&self) -> Option<SyntaxToken> {
5400 support::token(&self.syntax, SyntaxKind::SCROLL_KW)
5401 }
5402 #[inline]
5403 pub fn with_token(&self) -> Option<SyntaxToken> {
5404 support::token(&self.syntax, SyntaxKind::WITH_KW)
5405 }
5406 #[inline]
5407 pub fn without_token(&self) -> Option<SyntaxToken> {
5408 support::token(&self.syntax, SyntaxKind::WITHOUT_KW)
5409 }
5410}
5411
5412#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5413pub struct DefaultConstraint {
5414 pub(crate) syntax: SyntaxNode,
5415}
5416impl DefaultConstraint {
5417 #[inline]
5418 pub fn expr(&self) -> Option<Expr> {
5419 support::child(&self.syntax)
5420 }
5421 #[inline]
5422 pub fn name_ref(&self) -> Option<NameRef> {
5423 support::child(&self.syntax)
5424 }
5425 #[inline]
5426 pub fn constraint_token(&self) -> Option<SyntaxToken> {
5427 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
5428 }
5429 #[inline]
5430 pub fn default_token(&self) -> Option<SyntaxToken> {
5431 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
5432 }
5433}
5434
5435#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5436pub struct Deferrable {
5437 pub(crate) syntax: SyntaxNode,
5438}
5439impl Deferrable {
5440 #[inline]
5441 pub fn deferrable_token(&self) -> Option<SyntaxToken> {
5442 support::token(&self.syntax, SyntaxKind::DEFERRABLE_KW)
5443 }
5444}
5445
5446#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5447pub struct DeferrableConstraintOption {
5448 pub(crate) syntax: SyntaxNode,
5449}
5450impl DeferrableConstraintOption {
5451 #[inline]
5452 pub fn deferrable_token(&self) -> Option<SyntaxToken> {
5453 support::token(&self.syntax, SyntaxKind::DEFERRABLE_KW)
5454 }
5455}
5456
5457#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5458pub struct Delete {
5459 pub(crate) syntax: SyntaxNode,
5460}
5461impl Delete {
5462 #[inline]
5463 pub fn alias(&self) -> Option<Alias> {
5464 support::child(&self.syntax)
5465 }
5466 #[inline]
5467 pub fn relation_name(&self) -> Option<RelationName> {
5468 support::child(&self.syntax)
5469 }
5470 #[inline]
5471 pub fn returning_clause(&self) -> Option<ReturningClause> {
5472 support::child(&self.syntax)
5473 }
5474 #[inline]
5475 pub fn using_clause(&self) -> Option<UsingClause> {
5476 support::child(&self.syntax)
5477 }
5478 #[inline]
5479 pub fn where_clause(&self) -> Option<WhereClause> {
5480 support::child(&self.syntax)
5481 }
5482 #[inline]
5483 pub fn where_current_of(&self) -> Option<WhereCurrentOf> {
5484 support::child(&self.syntax)
5485 }
5486 #[inline]
5487 pub fn with_clause(&self) -> Option<WithClause> {
5488 support::child(&self.syntax)
5489 }
5490 #[inline]
5491 pub fn delete_token(&self) -> Option<SyntaxToken> {
5492 support::token(&self.syntax, SyntaxKind::DELETE_KW)
5493 }
5494 #[inline]
5495 pub fn from_token(&self) -> Option<SyntaxToken> {
5496 support::token(&self.syntax, SyntaxKind::FROM_KW)
5497 }
5498}
5499
5500#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5501pub struct DeleteRows {
5502 pub(crate) syntax: SyntaxNode,
5503}
5504impl DeleteRows {
5505 #[inline]
5506 pub fn delete_token(&self) -> Option<SyntaxToken> {
5507 support::token(&self.syntax, SyntaxKind::DELETE_KW)
5508 }
5509 #[inline]
5510 pub fn rows_token(&self) -> Option<SyntaxToken> {
5511 support::token(&self.syntax, SyntaxKind::ROWS_KW)
5512 }
5513}
5514
5515#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5516pub struct DependsOnExtension {
5517 pub(crate) syntax: SyntaxNode,
5518}
5519impl DependsOnExtension {
5520 #[inline]
5521 pub fn name_ref(&self) -> Option<NameRef> {
5522 support::child(&self.syntax)
5523 }
5524 #[inline]
5525 pub fn depends_token(&self) -> Option<SyntaxToken> {
5526 support::token(&self.syntax, SyntaxKind::DEPENDS_KW)
5527 }
5528 #[inline]
5529 pub fn extension_token(&self) -> Option<SyntaxToken> {
5530 support::token(&self.syntax, SyntaxKind::EXTENSION_KW)
5531 }
5532 #[inline]
5533 pub fn on_token(&self) -> Option<SyntaxToken> {
5534 support::token(&self.syntax, SyntaxKind::ON_KW)
5535 }
5536}
5537
5538#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5539pub struct DetachPartition {
5540 pub(crate) syntax: SyntaxNode,
5541}
5542impl DetachPartition {
5543 #[inline]
5544 pub fn detach_token(&self) -> Option<SyntaxToken> {
5545 support::token(&self.syntax, SyntaxKind::DETACH_KW)
5546 }
5547 #[inline]
5548 pub fn partition_token(&self) -> Option<SyntaxToken> {
5549 support::token(&self.syntax, SyntaxKind::PARTITION_KW)
5550 }
5551}
5552
5553#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5554pub struct DisableRls {
5555 pub(crate) syntax: SyntaxNode,
5556}
5557impl DisableRls {
5558 #[inline]
5559 pub fn disable_token(&self) -> Option<SyntaxToken> {
5560 support::token(&self.syntax, SyntaxKind::DISABLE_KW)
5561 }
5562 #[inline]
5563 pub fn level_token(&self) -> Option<SyntaxToken> {
5564 support::token(&self.syntax, SyntaxKind::LEVEL_KW)
5565 }
5566 #[inline]
5567 pub fn row_token(&self) -> Option<SyntaxToken> {
5568 support::token(&self.syntax, SyntaxKind::ROW_KW)
5569 }
5570 #[inline]
5571 pub fn security_token(&self) -> Option<SyntaxToken> {
5572 support::token(&self.syntax, SyntaxKind::SECURITY_KW)
5573 }
5574}
5575
5576#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5577pub struct DisableRule {
5578 pub(crate) syntax: SyntaxNode,
5579}
5580impl DisableRule {
5581 #[inline]
5582 pub fn disable_token(&self) -> Option<SyntaxToken> {
5583 support::token(&self.syntax, SyntaxKind::DISABLE_KW)
5584 }
5585 #[inline]
5586 pub fn rule_token(&self) -> Option<SyntaxToken> {
5587 support::token(&self.syntax, SyntaxKind::RULE_KW)
5588 }
5589}
5590
5591#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5592pub struct DisableTrigger {
5593 pub(crate) syntax: SyntaxNode,
5594}
5595impl DisableTrigger {
5596 #[inline]
5597 pub fn disable_token(&self) -> Option<SyntaxToken> {
5598 support::token(&self.syntax, SyntaxKind::DISABLE_KW)
5599 }
5600 #[inline]
5601 pub fn trigger_token(&self) -> Option<SyntaxToken> {
5602 support::token(&self.syntax, SyntaxKind::TRIGGER_KW)
5603 }
5604}
5605
5606#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5607pub struct Discard {
5608 pub(crate) syntax: SyntaxNode,
5609}
5610impl Discard {
5611 #[inline]
5612 pub fn all_token(&self) -> Option<SyntaxToken> {
5613 support::token(&self.syntax, SyntaxKind::ALL_KW)
5614 }
5615 #[inline]
5616 pub fn discard_token(&self) -> Option<SyntaxToken> {
5617 support::token(&self.syntax, SyntaxKind::DISCARD_KW)
5618 }
5619 #[inline]
5620 pub fn plans_token(&self) -> Option<SyntaxToken> {
5621 support::token(&self.syntax, SyntaxKind::PLANS_KW)
5622 }
5623 #[inline]
5624 pub fn sequences_token(&self) -> Option<SyntaxToken> {
5625 support::token(&self.syntax, SyntaxKind::SEQUENCES_KW)
5626 }
5627 #[inline]
5628 pub fn temp_token(&self) -> Option<SyntaxToken> {
5629 support::token(&self.syntax, SyntaxKind::TEMP_KW)
5630 }
5631 #[inline]
5632 pub fn temporary_token(&self) -> Option<SyntaxToken> {
5633 support::token(&self.syntax, SyntaxKind::TEMPORARY_KW)
5634 }
5635}
5636
5637#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5638pub struct DistinctClause {
5639 pub(crate) syntax: SyntaxNode,
5640}
5641impl DistinctClause {
5642 #[inline]
5643 pub fn exprs(&self) -> AstChildren<Expr> {
5644 support::children(&self.syntax)
5645 }
5646 #[inline]
5647 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
5648 support::token(&self.syntax, SyntaxKind::L_PAREN)
5649 }
5650 #[inline]
5651 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
5652 support::token(&self.syntax, SyntaxKind::R_PAREN)
5653 }
5654 #[inline]
5655 pub fn distinct_token(&self) -> Option<SyntaxToken> {
5656 support::token(&self.syntax, SyntaxKind::DISTINCT_KW)
5657 }
5658 #[inline]
5659 pub fn on_token(&self) -> Option<SyntaxToken> {
5660 support::token(&self.syntax, SyntaxKind::ON_KW)
5661 }
5662}
5663
5664#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5665pub struct Do {
5666 pub(crate) syntax: SyntaxNode,
5667}
5668impl Do {
5669 #[inline]
5670 pub fn do_token(&self) -> Option<SyntaxToken> {
5671 support::token(&self.syntax, SyntaxKind::DO_KW)
5672 }
5673}
5674
5675#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5676pub struct DoubleType {
5677 pub(crate) syntax: SyntaxNode,
5678}
5679impl DoubleType {
5680 #[inline]
5681 pub fn double_token(&self) -> Option<SyntaxToken> {
5682 support::token(&self.syntax, SyntaxKind::DOUBLE_KW)
5683 }
5684 #[inline]
5685 pub fn precision_token(&self) -> Option<SyntaxToken> {
5686 support::token(&self.syntax, SyntaxKind::PRECISION_KW)
5687 }
5688}
5689
5690#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5691pub struct Drop {
5692 pub(crate) syntax: SyntaxNode,
5693}
5694impl Drop {
5695 #[inline]
5696 pub fn drop_token(&self) -> Option<SyntaxToken> {
5697 support::token(&self.syntax, SyntaxKind::DROP_KW)
5698 }
5699}
5700
5701#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5702pub struct DropAccessMethod {
5703 pub(crate) syntax: SyntaxNode,
5704}
5705impl DropAccessMethod {
5706 #[inline]
5707 pub fn if_exists(&self) -> Option<IfExists> {
5708 support::child(&self.syntax)
5709 }
5710 #[inline]
5711 pub fn name_ref(&self) -> Option<NameRef> {
5712 support::child(&self.syntax)
5713 }
5714 #[inline]
5715 pub fn access_token(&self) -> Option<SyntaxToken> {
5716 support::token(&self.syntax, SyntaxKind::ACCESS_KW)
5717 }
5718 #[inline]
5719 pub fn cascade_token(&self) -> Option<SyntaxToken> {
5720 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
5721 }
5722 #[inline]
5723 pub fn drop_token(&self) -> Option<SyntaxToken> {
5724 support::token(&self.syntax, SyntaxKind::DROP_KW)
5725 }
5726 #[inline]
5727 pub fn method_token(&self) -> Option<SyntaxToken> {
5728 support::token(&self.syntax, SyntaxKind::METHOD_KW)
5729 }
5730 #[inline]
5731 pub fn restrict_token(&self) -> Option<SyntaxToken> {
5732 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
5733 }
5734}
5735
5736#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5737pub struct DropAggregate {
5738 pub(crate) syntax: SyntaxNode,
5739}
5740impl DropAggregate {
5741 #[inline]
5742 pub fn aggregates(&self) -> AstChildren<Aggregate> {
5743 support::children(&self.syntax)
5744 }
5745 #[inline]
5746 pub fn if_exists(&self) -> Option<IfExists> {
5747 support::child(&self.syntax)
5748 }
5749 #[inline]
5750 pub fn aggregate_token(&self) -> Option<SyntaxToken> {
5751 support::token(&self.syntax, SyntaxKind::AGGREGATE_KW)
5752 }
5753 #[inline]
5754 pub fn cascade_token(&self) -> Option<SyntaxToken> {
5755 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
5756 }
5757 #[inline]
5758 pub fn drop_token(&self) -> Option<SyntaxToken> {
5759 support::token(&self.syntax, SyntaxKind::DROP_KW)
5760 }
5761 #[inline]
5762 pub fn restrict_token(&self) -> Option<SyntaxToken> {
5763 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
5764 }
5765}
5766
5767#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5768pub struct DropCast {
5769 pub(crate) syntax: SyntaxNode,
5770}
5771impl DropCast {
5772 #[inline]
5773 pub fn cast_sig(&self) -> Option<CastSig> {
5774 support::child(&self.syntax)
5775 }
5776 #[inline]
5777 pub fn if_exists(&self) -> Option<IfExists> {
5778 support::child(&self.syntax)
5779 }
5780 #[inline]
5781 pub fn cascade_token(&self) -> Option<SyntaxToken> {
5782 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
5783 }
5784 #[inline]
5785 pub fn cast_token(&self) -> Option<SyntaxToken> {
5786 support::token(&self.syntax, SyntaxKind::CAST_KW)
5787 }
5788 #[inline]
5789 pub fn drop_token(&self) -> Option<SyntaxToken> {
5790 support::token(&self.syntax, SyntaxKind::DROP_KW)
5791 }
5792 #[inline]
5793 pub fn restrict_token(&self) -> Option<SyntaxToken> {
5794 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
5795 }
5796}
5797
5798#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5799pub struct DropCollation {
5800 pub(crate) syntax: SyntaxNode,
5801}
5802impl DropCollation {
5803 #[inline]
5804 pub fn if_exists(&self) -> Option<IfExists> {
5805 support::child(&self.syntax)
5806 }
5807 #[inline]
5808 pub fn paths(&self) -> AstChildren<Path> {
5809 support::children(&self.syntax)
5810 }
5811 #[inline]
5812 pub fn cascade_token(&self) -> Option<SyntaxToken> {
5813 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
5814 }
5815 #[inline]
5816 pub fn collation_token(&self) -> Option<SyntaxToken> {
5817 support::token(&self.syntax, SyntaxKind::COLLATION_KW)
5818 }
5819 #[inline]
5820 pub fn drop_token(&self) -> Option<SyntaxToken> {
5821 support::token(&self.syntax, SyntaxKind::DROP_KW)
5822 }
5823 #[inline]
5824 pub fn restrict_token(&self) -> Option<SyntaxToken> {
5825 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
5826 }
5827}
5828
5829#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5830pub struct DropColumn {
5831 pub(crate) syntax: SyntaxNode,
5832}
5833impl DropColumn {
5834 #[inline]
5835 pub fn if_exists(&self) -> Option<IfExists> {
5836 support::child(&self.syntax)
5837 }
5838 #[inline]
5839 pub fn name_ref(&self) -> Option<NameRef> {
5840 support::child(&self.syntax)
5841 }
5842 #[inline]
5843 pub fn cascade_token(&self) -> Option<SyntaxToken> {
5844 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
5845 }
5846 #[inline]
5847 pub fn column_token(&self) -> Option<SyntaxToken> {
5848 support::token(&self.syntax, SyntaxKind::COLUMN_KW)
5849 }
5850 #[inline]
5851 pub fn drop_token(&self) -> Option<SyntaxToken> {
5852 support::token(&self.syntax, SyntaxKind::DROP_KW)
5853 }
5854 #[inline]
5855 pub fn restrict_token(&self) -> Option<SyntaxToken> {
5856 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
5857 }
5858}
5859
5860#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5861pub struct DropConstraint {
5862 pub(crate) syntax: SyntaxNode,
5863}
5864impl DropConstraint {
5865 #[inline]
5866 pub fn if_exists(&self) -> Option<IfExists> {
5867 support::child(&self.syntax)
5868 }
5869 #[inline]
5870 pub fn name_ref(&self) -> Option<NameRef> {
5871 support::child(&self.syntax)
5872 }
5873 #[inline]
5874 pub fn cascade_token(&self) -> Option<SyntaxToken> {
5875 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
5876 }
5877 #[inline]
5878 pub fn constraint_token(&self) -> Option<SyntaxToken> {
5879 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
5880 }
5881 #[inline]
5882 pub fn drop_token(&self) -> Option<SyntaxToken> {
5883 support::token(&self.syntax, SyntaxKind::DROP_KW)
5884 }
5885 #[inline]
5886 pub fn restrict_token(&self) -> Option<SyntaxToken> {
5887 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
5888 }
5889}
5890
5891#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5892pub struct DropConversion {
5893 pub(crate) syntax: SyntaxNode,
5894}
5895impl DropConversion {
5896 #[inline]
5897 pub fn if_exists(&self) -> Option<IfExists> {
5898 support::child(&self.syntax)
5899 }
5900 #[inline]
5901 pub fn path(&self) -> Option<Path> {
5902 support::child(&self.syntax)
5903 }
5904 #[inline]
5905 pub fn cascade_token(&self) -> Option<SyntaxToken> {
5906 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
5907 }
5908 #[inline]
5909 pub fn conversion_token(&self) -> Option<SyntaxToken> {
5910 support::token(&self.syntax, SyntaxKind::CONVERSION_KW)
5911 }
5912 #[inline]
5913 pub fn drop_token(&self) -> Option<SyntaxToken> {
5914 support::token(&self.syntax, SyntaxKind::DROP_KW)
5915 }
5916 #[inline]
5917 pub fn restrict_token(&self) -> Option<SyntaxToken> {
5918 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
5919 }
5920}
5921
5922#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5923pub struct DropDatabase {
5924 pub(crate) syntax: SyntaxNode,
5925}
5926impl DropDatabase {
5927 #[inline]
5928 pub fn if_exists(&self) -> Option<IfExists> {
5929 support::child(&self.syntax)
5930 }
5931 #[inline]
5932 pub fn name_ref(&self) -> Option<NameRef> {
5933 support::child(&self.syntax)
5934 }
5935 #[inline]
5936 pub fn database_token(&self) -> Option<SyntaxToken> {
5937 support::token(&self.syntax, SyntaxKind::DATABASE_KW)
5938 }
5939 #[inline]
5940 pub fn drop_token(&self) -> Option<SyntaxToken> {
5941 support::token(&self.syntax, SyntaxKind::DROP_KW)
5942 }
5943}
5944
5945#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5946pub struct DropDefault {
5947 pub(crate) syntax: SyntaxNode,
5948}
5949impl DropDefault {
5950 #[inline]
5951 pub fn default_token(&self) -> Option<SyntaxToken> {
5952 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
5953 }
5954 #[inline]
5955 pub fn drop_token(&self) -> Option<SyntaxToken> {
5956 support::token(&self.syntax, SyntaxKind::DROP_KW)
5957 }
5958}
5959
5960#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5961pub struct DropDomain {
5962 pub(crate) syntax: SyntaxNode,
5963}
5964impl DropDomain {
5965 #[inline]
5966 pub fn if_exists(&self) -> Option<IfExists> {
5967 support::child(&self.syntax)
5968 }
5969 #[inline]
5970 pub fn paths(&self) -> AstChildren<Path> {
5971 support::children(&self.syntax)
5972 }
5973 #[inline]
5974 pub fn cascade_token(&self) -> Option<SyntaxToken> {
5975 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
5976 }
5977 #[inline]
5978 pub fn domain_token(&self) -> Option<SyntaxToken> {
5979 support::token(&self.syntax, SyntaxKind::DOMAIN_KW)
5980 }
5981 #[inline]
5982 pub fn drop_token(&self) -> Option<SyntaxToken> {
5983 support::token(&self.syntax, SyntaxKind::DROP_KW)
5984 }
5985 #[inline]
5986 pub fn restrict_token(&self) -> Option<SyntaxToken> {
5987 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
5988 }
5989}
5990
5991#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5992pub struct DropEventTrigger {
5993 pub(crate) syntax: SyntaxNode,
5994}
5995impl DropEventTrigger {
5996 #[inline]
5997 pub fn if_exists(&self) -> Option<IfExists> {
5998 support::child(&self.syntax)
5999 }
6000 #[inline]
6001 pub fn name_ref(&self) -> Option<NameRef> {
6002 support::child(&self.syntax)
6003 }
6004 #[inline]
6005 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6006 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6007 }
6008 #[inline]
6009 pub fn drop_token(&self) -> Option<SyntaxToken> {
6010 support::token(&self.syntax, SyntaxKind::DROP_KW)
6011 }
6012 #[inline]
6013 pub fn event_token(&self) -> Option<SyntaxToken> {
6014 support::token(&self.syntax, SyntaxKind::EVENT_KW)
6015 }
6016 #[inline]
6017 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6018 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6019 }
6020 #[inline]
6021 pub fn trigger_token(&self) -> Option<SyntaxToken> {
6022 support::token(&self.syntax, SyntaxKind::TRIGGER_KW)
6023 }
6024}
6025
6026#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6027pub struct DropExpression {
6028 pub(crate) syntax: SyntaxNode,
6029}
6030impl DropExpression {
6031 #[inline]
6032 pub fn if_exists(&self) -> Option<IfExists> {
6033 support::child(&self.syntax)
6034 }
6035 #[inline]
6036 pub fn drop_token(&self) -> Option<SyntaxToken> {
6037 support::token(&self.syntax, SyntaxKind::DROP_KW)
6038 }
6039 #[inline]
6040 pub fn expression_token(&self) -> Option<SyntaxToken> {
6041 support::token(&self.syntax, SyntaxKind::EXPRESSION_KW)
6042 }
6043}
6044
6045#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6046pub struct DropExtension {
6047 pub(crate) syntax: SyntaxNode,
6048}
6049impl DropExtension {
6050 #[inline]
6051 pub fn if_exists(&self) -> Option<IfExists> {
6052 support::child(&self.syntax)
6053 }
6054 #[inline]
6055 pub fn name_refs(&self) -> AstChildren<NameRef> {
6056 support::children(&self.syntax)
6057 }
6058 #[inline]
6059 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6060 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6061 }
6062 #[inline]
6063 pub fn drop_token(&self) -> Option<SyntaxToken> {
6064 support::token(&self.syntax, SyntaxKind::DROP_KW)
6065 }
6066 #[inline]
6067 pub fn extension_token(&self) -> Option<SyntaxToken> {
6068 support::token(&self.syntax, SyntaxKind::EXTENSION_KW)
6069 }
6070 #[inline]
6071 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6072 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6073 }
6074}
6075
6076#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6077pub struct DropForeignDataWrapper {
6078 pub(crate) syntax: SyntaxNode,
6079}
6080impl DropForeignDataWrapper {
6081 #[inline]
6082 pub fn if_exists(&self) -> Option<IfExists> {
6083 support::child(&self.syntax)
6084 }
6085 #[inline]
6086 pub fn name_refs(&self) -> AstChildren<NameRef> {
6087 support::children(&self.syntax)
6088 }
6089 #[inline]
6090 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6091 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6092 }
6093 #[inline]
6094 pub fn data_token(&self) -> Option<SyntaxToken> {
6095 support::token(&self.syntax, SyntaxKind::DATA_KW)
6096 }
6097 #[inline]
6098 pub fn drop_token(&self) -> Option<SyntaxToken> {
6099 support::token(&self.syntax, SyntaxKind::DROP_KW)
6100 }
6101 #[inline]
6102 pub fn foreign_token(&self) -> Option<SyntaxToken> {
6103 support::token(&self.syntax, SyntaxKind::FOREIGN_KW)
6104 }
6105 #[inline]
6106 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6107 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6108 }
6109 #[inline]
6110 pub fn wrapper_token(&self) -> Option<SyntaxToken> {
6111 support::token(&self.syntax, SyntaxKind::WRAPPER_KW)
6112 }
6113}
6114
6115#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6116pub struct DropForeignTable {
6117 pub(crate) syntax: SyntaxNode,
6118}
6119impl DropForeignTable {
6120 #[inline]
6121 pub fn if_exists(&self) -> Option<IfExists> {
6122 support::child(&self.syntax)
6123 }
6124 #[inline]
6125 pub fn path(&self) -> Option<Path> {
6126 support::child(&self.syntax)
6127 }
6128 #[inline]
6129 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6130 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6131 }
6132 #[inline]
6133 pub fn drop_token(&self) -> Option<SyntaxToken> {
6134 support::token(&self.syntax, SyntaxKind::DROP_KW)
6135 }
6136 #[inline]
6137 pub fn foreign_token(&self) -> Option<SyntaxToken> {
6138 support::token(&self.syntax, SyntaxKind::FOREIGN_KW)
6139 }
6140 #[inline]
6141 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6142 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6143 }
6144 #[inline]
6145 pub fn table_token(&self) -> Option<SyntaxToken> {
6146 support::token(&self.syntax, SyntaxKind::TABLE_KW)
6147 }
6148}
6149
6150#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6151pub struct DropFunction {
6152 pub(crate) syntax: SyntaxNode,
6153}
6154impl DropFunction {
6155 #[inline]
6156 pub fn function_sig_list(&self) -> Option<FunctionSigList> {
6157 support::child(&self.syntax)
6158 }
6159 #[inline]
6160 pub fn if_exists(&self) -> Option<IfExists> {
6161 support::child(&self.syntax)
6162 }
6163 #[inline]
6164 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6165 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6166 }
6167 #[inline]
6168 pub fn drop_token(&self) -> Option<SyntaxToken> {
6169 support::token(&self.syntax, SyntaxKind::DROP_KW)
6170 }
6171 #[inline]
6172 pub fn function_token(&self) -> Option<SyntaxToken> {
6173 support::token(&self.syntax, SyntaxKind::FUNCTION_KW)
6174 }
6175 #[inline]
6176 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6177 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6178 }
6179}
6180
6181#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6182pub struct DropGroup {
6183 pub(crate) syntax: SyntaxNode,
6184}
6185impl DropGroup {
6186 #[inline]
6187 pub fn if_exists(&self) -> Option<IfExists> {
6188 support::child(&self.syntax)
6189 }
6190 #[inline]
6191 pub fn name_refs(&self) -> AstChildren<NameRef> {
6192 support::children(&self.syntax)
6193 }
6194 #[inline]
6195 pub fn drop_token(&self) -> Option<SyntaxToken> {
6196 support::token(&self.syntax, SyntaxKind::DROP_KW)
6197 }
6198 #[inline]
6199 pub fn group_token(&self) -> Option<SyntaxToken> {
6200 support::token(&self.syntax, SyntaxKind::GROUP_KW)
6201 }
6202}
6203
6204#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6205pub struct DropIdentity {
6206 pub(crate) syntax: SyntaxNode,
6207}
6208impl DropIdentity {
6209 #[inline]
6210 pub fn if_exists(&self) -> Option<IfExists> {
6211 support::child(&self.syntax)
6212 }
6213 #[inline]
6214 pub fn drop_token(&self) -> Option<SyntaxToken> {
6215 support::token(&self.syntax, SyntaxKind::DROP_KW)
6216 }
6217 #[inline]
6218 pub fn identity_token(&self) -> Option<SyntaxToken> {
6219 support::token(&self.syntax, SyntaxKind::IDENTITY_KW)
6220 }
6221}
6222
6223#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6224pub struct DropIndex {
6225 pub(crate) syntax: SyntaxNode,
6226}
6227impl DropIndex {
6228 #[inline]
6229 pub fn if_exists(&self) -> Option<IfExists> {
6230 support::child(&self.syntax)
6231 }
6232 #[inline]
6233 pub fn paths(&self) -> AstChildren<Path> {
6234 support::children(&self.syntax)
6235 }
6236 #[inline]
6237 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6238 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6239 }
6240 #[inline]
6241 pub fn concurrently_token(&self) -> Option<SyntaxToken> {
6242 support::token(&self.syntax, SyntaxKind::CONCURRENTLY_KW)
6243 }
6244 #[inline]
6245 pub fn drop_token(&self) -> Option<SyntaxToken> {
6246 support::token(&self.syntax, SyntaxKind::DROP_KW)
6247 }
6248 #[inline]
6249 pub fn index_token(&self) -> Option<SyntaxToken> {
6250 support::token(&self.syntax, SyntaxKind::INDEX_KW)
6251 }
6252 #[inline]
6253 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6254 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6255 }
6256}
6257
6258#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6259pub struct DropLanguage {
6260 pub(crate) syntax: SyntaxNode,
6261}
6262impl DropLanguage {
6263 #[inline]
6264 pub fn if_exists(&self) -> Option<IfExists> {
6265 support::child(&self.syntax)
6266 }
6267 #[inline]
6268 pub fn name_ref(&self) -> Option<NameRef> {
6269 support::child(&self.syntax)
6270 }
6271 #[inline]
6272 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6273 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6274 }
6275 #[inline]
6276 pub fn drop_token(&self) -> Option<SyntaxToken> {
6277 support::token(&self.syntax, SyntaxKind::DROP_KW)
6278 }
6279 #[inline]
6280 pub fn language_token(&self) -> Option<SyntaxToken> {
6281 support::token(&self.syntax, SyntaxKind::LANGUAGE_KW)
6282 }
6283 #[inline]
6284 pub fn procedural_token(&self) -> Option<SyntaxToken> {
6285 support::token(&self.syntax, SyntaxKind::PROCEDURAL_KW)
6286 }
6287 #[inline]
6288 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6289 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6290 }
6291}
6292
6293#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6294pub struct DropMaterializedView {
6295 pub(crate) syntax: SyntaxNode,
6296}
6297impl DropMaterializedView {
6298 #[inline]
6299 pub fn if_exists(&self) -> Option<IfExists> {
6300 support::child(&self.syntax)
6301 }
6302 #[inline]
6303 pub fn paths(&self) -> AstChildren<Path> {
6304 support::children(&self.syntax)
6305 }
6306 #[inline]
6307 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6308 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6309 }
6310 #[inline]
6311 pub fn drop_token(&self) -> Option<SyntaxToken> {
6312 support::token(&self.syntax, SyntaxKind::DROP_KW)
6313 }
6314 #[inline]
6315 pub fn materialized_token(&self) -> Option<SyntaxToken> {
6316 support::token(&self.syntax, SyntaxKind::MATERIALIZED_KW)
6317 }
6318 #[inline]
6319 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6320 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6321 }
6322 #[inline]
6323 pub fn view_token(&self) -> Option<SyntaxToken> {
6324 support::token(&self.syntax, SyntaxKind::VIEW_KW)
6325 }
6326}
6327
6328#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6329pub struct DropNotNull {
6330 pub(crate) syntax: SyntaxNode,
6331}
6332impl DropNotNull {
6333 #[inline]
6334 pub fn drop_token(&self) -> Option<SyntaxToken> {
6335 support::token(&self.syntax, SyntaxKind::DROP_KW)
6336 }
6337 #[inline]
6338 pub fn not_token(&self) -> Option<SyntaxToken> {
6339 support::token(&self.syntax, SyntaxKind::NOT_KW)
6340 }
6341 #[inline]
6342 pub fn null_token(&self) -> Option<SyntaxToken> {
6343 support::token(&self.syntax, SyntaxKind::NULL_KW)
6344 }
6345}
6346
6347#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6348pub struct DropOpClassOption {
6349 pub(crate) syntax: SyntaxNode,
6350}
6351impl DropOpClassOption {
6352 #[inline]
6353 pub fn literal(&self) -> Option<Literal> {
6354 support::child(&self.syntax)
6355 }
6356 #[inline]
6357 pub fn param_list(&self) -> Option<ParamList> {
6358 support::child(&self.syntax)
6359 }
6360 #[inline]
6361 pub fn function_token(&self) -> Option<SyntaxToken> {
6362 support::token(&self.syntax, SyntaxKind::FUNCTION_KW)
6363 }
6364 #[inline]
6365 pub fn operator_token(&self) -> Option<SyntaxToken> {
6366 support::token(&self.syntax, SyntaxKind::OPERATOR_KW)
6367 }
6368}
6369
6370#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6371pub struct DropOpClassOptionList {
6372 pub(crate) syntax: SyntaxNode,
6373}
6374impl DropOpClassOptionList {
6375 #[inline]
6376 pub fn drop_op_class_options(&self) -> AstChildren<DropOpClassOption> {
6377 support::children(&self.syntax)
6378 }
6379}
6380
6381#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6382pub struct DropOpClassOptions {
6383 pub(crate) syntax: SyntaxNode,
6384}
6385impl DropOpClassOptions {
6386 #[inline]
6387 pub fn drop_op_class_option_list(&self) -> Option<DropOpClassOptionList> {
6388 support::child(&self.syntax)
6389 }
6390 #[inline]
6391 pub fn drop_token(&self) -> Option<SyntaxToken> {
6392 support::token(&self.syntax, SyntaxKind::DROP_KW)
6393 }
6394}
6395
6396#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6397pub struct DropOperator {
6398 pub(crate) syntax: SyntaxNode,
6399}
6400impl DropOperator {
6401 #[inline]
6402 pub fn if_exists(&self) -> Option<IfExists> {
6403 support::child(&self.syntax)
6404 }
6405 #[inline]
6406 pub fn op_sig_list(&self) -> Option<OpSigList> {
6407 support::child(&self.syntax)
6408 }
6409 #[inline]
6410 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6411 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
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 operator_token(&self) -> Option<SyntaxToken> {
6419 support::token(&self.syntax, SyntaxKind::OPERATOR_KW)
6420 }
6421 #[inline]
6422 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6423 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6424 }
6425}
6426
6427#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6428pub struct DropOperatorClass {
6429 pub(crate) syntax: SyntaxNode,
6430}
6431impl DropOperatorClass {
6432 #[inline]
6433 pub fn if_exists(&self) -> Option<IfExists> {
6434 support::child(&self.syntax)
6435 }
6436 #[inline]
6437 pub fn name_ref(&self) -> Option<NameRef> {
6438 support::child(&self.syntax)
6439 }
6440 #[inline]
6441 pub fn path(&self) -> Option<Path> {
6442 support::child(&self.syntax)
6443 }
6444 #[inline]
6445 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6446 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6447 }
6448 #[inline]
6449 pub fn class_token(&self) -> Option<SyntaxToken> {
6450 support::token(&self.syntax, SyntaxKind::CLASS_KW)
6451 }
6452 #[inline]
6453 pub fn drop_token(&self) -> Option<SyntaxToken> {
6454 support::token(&self.syntax, SyntaxKind::DROP_KW)
6455 }
6456 #[inline]
6457 pub fn operator_token(&self) -> Option<SyntaxToken> {
6458 support::token(&self.syntax, SyntaxKind::OPERATOR_KW)
6459 }
6460 #[inline]
6461 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6462 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6463 }
6464 #[inline]
6465 pub fn using_token(&self) -> Option<SyntaxToken> {
6466 support::token(&self.syntax, SyntaxKind::USING_KW)
6467 }
6468}
6469
6470#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6471pub struct DropOperatorFamily {
6472 pub(crate) syntax: SyntaxNode,
6473}
6474impl DropOperatorFamily {
6475 #[inline]
6476 pub fn if_exists(&self) -> Option<IfExists> {
6477 support::child(&self.syntax)
6478 }
6479 #[inline]
6480 pub fn name_ref(&self) -> Option<NameRef> {
6481 support::child(&self.syntax)
6482 }
6483 #[inline]
6484 pub fn path(&self) -> Option<Path> {
6485 support::child(&self.syntax)
6486 }
6487 #[inline]
6488 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6489 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6490 }
6491 #[inline]
6492 pub fn drop_token(&self) -> Option<SyntaxToken> {
6493 support::token(&self.syntax, SyntaxKind::DROP_KW)
6494 }
6495 #[inline]
6496 pub fn family_token(&self) -> Option<SyntaxToken> {
6497 support::token(&self.syntax, SyntaxKind::FAMILY_KW)
6498 }
6499 #[inline]
6500 pub fn operator_token(&self) -> Option<SyntaxToken> {
6501 support::token(&self.syntax, SyntaxKind::OPERATOR_KW)
6502 }
6503 #[inline]
6504 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6505 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6506 }
6507 #[inline]
6508 pub fn using_token(&self) -> Option<SyntaxToken> {
6509 support::token(&self.syntax, SyntaxKind::USING_KW)
6510 }
6511}
6512
6513#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6514pub struct DropOwned {
6515 pub(crate) syntax: SyntaxNode,
6516}
6517impl DropOwned {
6518 #[inline]
6519 pub fn role_ref_list(&self) -> Option<RoleRefList> {
6520 support::child(&self.syntax)
6521 }
6522 #[inline]
6523 pub fn by_token(&self) -> Option<SyntaxToken> {
6524 support::token(&self.syntax, SyntaxKind::BY_KW)
6525 }
6526 #[inline]
6527 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6528 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6529 }
6530 #[inline]
6531 pub fn drop_token(&self) -> Option<SyntaxToken> {
6532 support::token(&self.syntax, SyntaxKind::DROP_KW)
6533 }
6534 #[inline]
6535 pub fn owned_token(&self) -> Option<SyntaxToken> {
6536 support::token(&self.syntax, SyntaxKind::OWNED_KW)
6537 }
6538 #[inline]
6539 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6540 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6541 }
6542}
6543
6544#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6545pub struct DropPolicy {
6546 pub(crate) syntax: SyntaxNode,
6547}
6548impl DropPolicy {
6549 #[inline]
6550 pub fn if_exists(&self) -> Option<IfExists> {
6551 support::child(&self.syntax)
6552 }
6553 #[inline]
6554 pub fn name_ref(&self) -> Option<NameRef> {
6555 support::child(&self.syntax)
6556 }
6557 #[inline]
6558 pub fn on_table(&self) -> Option<OnTable> {
6559 support::child(&self.syntax)
6560 }
6561 #[inline]
6562 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6563 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6564 }
6565 #[inline]
6566 pub fn drop_token(&self) -> Option<SyntaxToken> {
6567 support::token(&self.syntax, SyntaxKind::DROP_KW)
6568 }
6569 #[inline]
6570 pub fn policy_token(&self) -> Option<SyntaxToken> {
6571 support::token(&self.syntax, SyntaxKind::POLICY_KW)
6572 }
6573 #[inline]
6574 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6575 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6576 }
6577}
6578
6579#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6580pub struct DropProcedure {
6581 pub(crate) syntax: SyntaxNode,
6582}
6583impl DropProcedure {
6584 #[inline]
6585 pub fn function_sig_list(&self) -> Option<FunctionSigList> {
6586 support::child(&self.syntax)
6587 }
6588 #[inline]
6589 pub fn if_exists(&self) -> Option<IfExists> {
6590 support::child(&self.syntax)
6591 }
6592 #[inline]
6593 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6594 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6595 }
6596 #[inline]
6597 pub fn drop_token(&self) -> Option<SyntaxToken> {
6598 support::token(&self.syntax, SyntaxKind::DROP_KW)
6599 }
6600 #[inline]
6601 pub fn procedure_token(&self) -> Option<SyntaxToken> {
6602 support::token(&self.syntax, SyntaxKind::PROCEDURE_KW)
6603 }
6604 #[inline]
6605 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6606 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6607 }
6608}
6609
6610#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6611pub struct DropPublication {
6612 pub(crate) syntax: SyntaxNode,
6613}
6614impl DropPublication {
6615 #[inline]
6616 pub fn if_exists(&self) -> Option<IfExists> {
6617 support::child(&self.syntax)
6618 }
6619 #[inline]
6620 pub fn name_refs(&self) -> AstChildren<NameRef> {
6621 support::children(&self.syntax)
6622 }
6623 #[inline]
6624 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6625 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6626 }
6627 #[inline]
6628 pub fn drop_token(&self) -> Option<SyntaxToken> {
6629 support::token(&self.syntax, SyntaxKind::DROP_KW)
6630 }
6631 #[inline]
6632 pub fn publication_token(&self) -> Option<SyntaxToken> {
6633 support::token(&self.syntax, SyntaxKind::PUBLICATION_KW)
6634 }
6635 #[inline]
6636 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6637 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6638 }
6639}
6640
6641#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6642pub struct DropRole {
6643 pub(crate) syntax: SyntaxNode,
6644}
6645impl DropRole {
6646 #[inline]
6647 pub fn if_exists(&self) -> Option<IfExists> {
6648 support::child(&self.syntax)
6649 }
6650 #[inline]
6651 pub fn name_refs(&self) -> AstChildren<NameRef> {
6652 support::children(&self.syntax)
6653 }
6654 #[inline]
6655 pub fn drop_token(&self) -> Option<SyntaxToken> {
6656 support::token(&self.syntax, SyntaxKind::DROP_KW)
6657 }
6658 #[inline]
6659 pub fn role_token(&self) -> Option<SyntaxToken> {
6660 support::token(&self.syntax, SyntaxKind::ROLE_KW)
6661 }
6662}
6663
6664#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6665pub struct DropRoutine {
6666 pub(crate) syntax: SyntaxNode,
6667}
6668impl DropRoutine {
6669 #[inline]
6670 pub fn function_sig_list(&self) -> Option<FunctionSigList> {
6671 support::child(&self.syntax)
6672 }
6673 #[inline]
6674 pub fn if_exists(&self) -> Option<IfExists> {
6675 support::child(&self.syntax)
6676 }
6677 #[inline]
6678 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6679 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6680 }
6681 #[inline]
6682 pub fn drop_token(&self) -> Option<SyntaxToken> {
6683 support::token(&self.syntax, SyntaxKind::DROP_KW)
6684 }
6685 #[inline]
6686 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6687 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6688 }
6689 #[inline]
6690 pub fn routine_token(&self) -> Option<SyntaxToken> {
6691 support::token(&self.syntax, SyntaxKind::ROUTINE_KW)
6692 }
6693}
6694
6695#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6696pub struct DropRule {
6697 pub(crate) syntax: SyntaxNode,
6698}
6699impl DropRule {
6700 #[inline]
6701 pub fn if_exists(&self) -> Option<IfExists> {
6702 support::child(&self.syntax)
6703 }
6704 #[inline]
6705 pub fn name_ref(&self) -> Option<NameRef> {
6706 support::child(&self.syntax)
6707 }
6708 #[inline]
6709 pub fn on_table(&self) -> Option<OnTable> {
6710 support::child(&self.syntax)
6711 }
6712 #[inline]
6713 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6714 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6715 }
6716 #[inline]
6717 pub fn drop_token(&self) -> Option<SyntaxToken> {
6718 support::token(&self.syntax, SyntaxKind::DROP_KW)
6719 }
6720 #[inline]
6721 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6722 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6723 }
6724 #[inline]
6725 pub fn rule_token(&self) -> Option<SyntaxToken> {
6726 support::token(&self.syntax, SyntaxKind::RULE_KW)
6727 }
6728}
6729
6730#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6731pub struct DropSchema {
6732 pub(crate) syntax: SyntaxNode,
6733}
6734impl DropSchema {
6735 #[inline]
6736 pub fn if_exists(&self) -> Option<IfExists> {
6737 support::child(&self.syntax)
6738 }
6739 #[inline]
6740 pub fn name_refs(&self) -> AstChildren<NameRef> {
6741 support::children(&self.syntax)
6742 }
6743 #[inline]
6744 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6745 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6746 }
6747 #[inline]
6748 pub fn drop_token(&self) -> Option<SyntaxToken> {
6749 support::token(&self.syntax, SyntaxKind::DROP_KW)
6750 }
6751 #[inline]
6752 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6753 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6754 }
6755 #[inline]
6756 pub fn schema_token(&self) -> Option<SyntaxToken> {
6757 support::token(&self.syntax, SyntaxKind::SCHEMA_KW)
6758 }
6759}
6760
6761#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6762pub struct DropSequence {
6763 pub(crate) syntax: SyntaxNode,
6764}
6765impl DropSequence {
6766 #[inline]
6767 pub fn if_exists(&self) -> Option<IfExists> {
6768 support::child(&self.syntax)
6769 }
6770 #[inline]
6771 pub fn paths(&self) -> AstChildren<Path> {
6772 support::children(&self.syntax)
6773 }
6774 #[inline]
6775 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6776 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6777 }
6778 #[inline]
6779 pub fn drop_token(&self) -> Option<SyntaxToken> {
6780 support::token(&self.syntax, SyntaxKind::DROP_KW)
6781 }
6782 #[inline]
6783 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6784 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6785 }
6786 #[inline]
6787 pub fn sequence_token(&self) -> Option<SyntaxToken> {
6788 support::token(&self.syntax, SyntaxKind::SEQUENCE_KW)
6789 }
6790}
6791
6792#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6793pub struct DropServer {
6794 pub(crate) syntax: SyntaxNode,
6795}
6796impl DropServer {
6797 #[inline]
6798 pub fn if_exists(&self) -> Option<IfExists> {
6799 support::child(&self.syntax)
6800 }
6801 #[inline]
6802 pub fn name_ref(&self) -> Option<NameRef> {
6803 support::child(&self.syntax)
6804 }
6805 #[inline]
6806 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6807 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6808 }
6809 #[inline]
6810 pub fn drop_token(&self) -> Option<SyntaxToken> {
6811 support::token(&self.syntax, SyntaxKind::DROP_KW)
6812 }
6813 #[inline]
6814 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6815 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6816 }
6817 #[inline]
6818 pub fn server_token(&self) -> Option<SyntaxToken> {
6819 support::token(&self.syntax, SyntaxKind::SERVER_KW)
6820 }
6821}
6822
6823#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6824pub struct DropStatistics {
6825 pub(crate) syntax: SyntaxNode,
6826}
6827impl DropStatistics {
6828 #[inline]
6829 pub fn if_exists(&self) -> Option<IfExists> {
6830 support::child(&self.syntax)
6831 }
6832 #[inline]
6833 pub fn paths(&self) -> AstChildren<Path> {
6834 support::children(&self.syntax)
6835 }
6836 #[inline]
6837 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6838 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6839 }
6840 #[inline]
6841 pub fn drop_token(&self) -> Option<SyntaxToken> {
6842 support::token(&self.syntax, SyntaxKind::DROP_KW)
6843 }
6844 #[inline]
6845 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6846 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6847 }
6848 #[inline]
6849 pub fn statistics_token(&self) -> Option<SyntaxToken> {
6850 support::token(&self.syntax, SyntaxKind::STATISTICS_KW)
6851 }
6852}
6853
6854#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6855pub struct DropSubscription {
6856 pub(crate) syntax: SyntaxNode,
6857}
6858impl DropSubscription {
6859 #[inline]
6860 pub fn if_exists(&self) -> Option<IfExists> {
6861 support::child(&self.syntax)
6862 }
6863 #[inline]
6864 pub fn name_ref(&self) -> Option<NameRef> {
6865 support::child(&self.syntax)
6866 }
6867 #[inline]
6868 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6869 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6870 }
6871 #[inline]
6872 pub fn drop_token(&self) -> Option<SyntaxToken> {
6873 support::token(&self.syntax, SyntaxKind::DROP_KW)
6874 }
6875 #[inline]
6876 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6877 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6878 }
6879 #[inline]
6880 pub fn subscription_token(&self) -> Option<SyntaxToken> {
6881 support::token(&self.syntax, SyntaxKind::SUBSCRIPTION_KW)
6882 }
6883}
6884
6885#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6886pub struct DropTable {
6887 pub(crate) syntax: SyntaxNode,
6888}
6889impl DropTable {
6890 #[inline]
6891 pub fn if_exists(&self) -> Option<IfExists> {
6892 support::child(&self.syntax)
6893 }
6894 #[inline]
6895 pub fn path(&self) -> Option<Path> {
6896 support::child(&self.syntax)
6897 }
6898 #[inline]
6899 pub fn comma_token(&self) -> Option<SyntaxToken> {
6900 support::token(&self.syntax, SyntaxKind::COMMA)
6901 }
6902 #[inline]
6903 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6904 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6905 }
6906 #[inline]
6907 pub fn drop_token(&self) -> Option<SyntaxToken> {
6908 support::token(&self.syntax, SyntaxKind::DROP_KW)
6909 }
6910 #[inline]
6911 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6912 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6913 }
6914 #[inline]
6915 pub fn table_token(&self) -> Option<SyntaxToken> {
6916 support::token(&self.syntax, SyntaxKind::TABLE_KW)
6917 }
6918}
6919
6920#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6921pub struct DropTablespace {
6922 pub(crate) syntax: SyntaxNode,
6923}
6924impl DropTablespace {
6925 #[inline]
6926 pub fn if_exists(&self) -> Option<IfExists> {
6927 support::child(&self.syntax)
6928 }
6929 #[inline]
6930 pub fn name_ref(&self) -> Option<NameRef> {
6931 support::child(&self.syntax)
6932 }
6933 #[inline]
6934 pub fn drop_token(&self) -> Option<SyntaxToken> {
6935 support::token(&self.syntax, SyntaxKind::DROP_KW)
6936 }
6937 #[inline]
6938 pub fn tablespace_token(&self) -> Option<SyntaxToken> {
6939 support::token(&self.syntax, SyntaxKind::TABLESPACE_KW)
6940 }
6941}
6942
6943#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6944pub struct DropTextSearchConfig {
6945 pub(crate) syntax: SyntaxNode,
6946}
6947impl DropTextSearchConfig {
6948 #[inline]
6949 pub fn if_exists(&self) -> Option<IfExists> {
6950 support::child(&self.syntax)
6951 }
6952 #[inline]
6953 pub fn path(&self) -> Option<Path> {
6954 support::child(&self.syntax)
6955 }
6956 #[inline]
6957 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6958 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6959 }
6960 #[inline]
6961 pub fn configuration_token(&self) -> Option<SyntaxToken> {
6962 support::token(&self.syntax, SyntaxKind::CONFIGURATION_KW)
6963 }
6964 #[inline]
6965 pub fn drop_token(&self) -> Option<SyntaxToken> {
6966 support::token(&self.syntax, SyntaxKind::DROP_KW)
6967 }
6968 #[inline]
6969 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6970 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6971 }
6972 #[inline]
6973 pub fn search_token(&self) -> Option<SyntaxToken> {
6974 support::token(&self.syntax, SyntaxKind::SEARCH_KW)
6975 }
6976 #[inline]
6977 pub fn text_token(&self) -> Option<SyntaxToken> {
6978 support::token(&self.syntax, SyntaxKind::TEXT_KW)
6979 }
6980}
6981
6982#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6983pub struct DropTextSearchDict {
6984 pub(crate) syntax: SyntaxNode,
6985}
6986impl DropTextSearchDict {
6987 #[inline]
6988 pub fn if_exists(&self) -> Option<IfExists> {
6989 support::child(&self.syntax)
6990 }
6991 #[inline]
6992 pub fn path(&self) -> Option<Path> {
6993 support::child(&self.syntax)
6994 }
6995 #[inline]
6996 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6997 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6998 }
6999 #[inline]
7000 pub fn dictionary_token(&self) -> Option<SyntaxToken> {
7001 support::token(&self.syntax, SyntaxKind::DICTIONARY_KW)
7002 }
7003 #[inline]
7004 pub fn drop_token(&self) -> Option<SyntaxToken> {
7005 support::token(&self.syntax, SyntaxKind::DROP_KW)
7006 }
7007 #[inline]
7008 pub fn restrict_token(&self) -> Option<SyntaxToken> {
7009 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
7010 }
7011 #[inline]
7012 pub fn search_token(&self) -> Option<SyntaxToken> {
7013 support::token(&self.syntax, SyntaxKind::SEARCH_KW)
7014 }
7015 #[inline]
7016 pub fn text_token(&self) -> Option<SyntaxToken> {
7017 support::token(&self.syntax, SyntaxKind::TEXT_KW)
7018 }
7019}
7020
7021#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7022pub struct DropTextSearchParser {
7023 pub(crate) syntax: SyntaxNode,
7024}
7025impl DropTextSearchParser {
7026 #[inline]
7027 pub fn if_exists(&self) -> Option<IfExists> {
7028 support::child(&self.syntax)
7029 }
7030 #[inline]
7031 pub fn path(&self) -> Option<Path> {
7032 support::child(&self.syntax)
7033 }
7034 #[inline]
7035 pub fn cascade_token(&self) -> Option<SyntaxToken> {
7036 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
7037 }
7038 #[inline]
7039 pub fn drop_token(&self) -> Option<SyntaxToken> {
7040 support::token(&self.syntax, SyntaxKind::DROP_KW)
7041 }
7042 #[inline]
7043 pub fn parser_token(&self) -> Option<SyntaxToken> {
7044 support::token(&self.syntax, SyntaxKind::PARSER_KW)
7045 }
7046 #[inline]
7047 pub fn restrict_token(&self) -> Option<SyntaxToken> {
7048 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
7049 }
7050 #[inline]
7051 pub fn search_token(&self) -> Option<SyntaxToken> {
7052 support::token(&self.syntax, SyntaxKind::SEARCH_KW)
7053 }
7054 #[inline]
7055 pub fn text_token(&self) -> Option<SyntaxToken> {
7056 support::token(&self.syntax, SyntaxKind::TEXT_KW)
7057 }
7058}
7059
7060#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7061pub struct DropTextSearchTemplate {
7062 pub(crate) syntax: SyntaxNode,
7063}
7064impl DropTextSearchTemplate {
7065 #[inline]
7066 pub fn if_exists(&self) -> Option<IfExists> {
7067 support::child(&self.syntax)
7068 }
7069 #[inline]
7070 pub fn path(&self) -> Option<Path> {
7071 support::child(&self.syntax)
7072 }
7073 #[inline]
7074 pub fn cascade_token(&self) -> Option<SyntaxToken> {
7075 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
7076 }
7077 #[inline]
7078 pub fn drop_token(&self) -> Option<SyntaxToken> {
7079 support::token(&self.syntax, SyntaxKind::DROP_KW)
7080 }
7081 #[inline]
7082 pub fn restrict_token(&self) -> Option<SyntaxToken> {
7083 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
7084 }
7085 #[inline]
7086 pub fn search_token(&self) -> Option<SyntaxToken> {
7087 support::token(&self.syntax, SyntaxKind::SEARCH_KW)
7088 }
7089 #[inline]
7090 pub fn template_token(&self) -> Option<SyntaxToken> {
7091 support::token(&self.syntax, SyntaxKind::TEMPLATE_KW)
7092 }
7093 #[inline]
7094 pub fn text_token(&self) -> Option<SyntaxToken> {
7095 support::token(&self.syntax, SyntaxKind::TEXT_KW)
7096 }
7097}
7098
7099#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7100pub struct DropTransform {
7101 pub(crate) syntax: SyntaxNode,
7102}
7103impl DropTransform {
7104 #[inline]
7105 pub fn if_exists(&self) -> Option<IfExists> {
7106 support::child(&self.syntax)
7107 }
7108 #[inline]
7109 pub fn language(&self) -> Option<NameRef> {
7110 support::child(&self.syntax)
7111 }
7112 #[inline]
7113 pub fn ty(&self) -> Option<Type> {
7114 support::child(&self.syntax)
7115 }
7116 #[inline]
7117 pub fn cascade_token(&self) -> Option<SyntaxToken> {
7118 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
7119 }
7120 #[inline]
7121 pub fn drop_token(&self) -> Option<SyntaxToken> {
7122 support::token(&self.syntax, SyntaxKind::DROP_KW)
7123 }
7124 #[inline]
7125 pub fn for_token(&self) -> Option<SyntaxToken> {
7126 support::token(&self.syntax, SyntaxKind::FOR_KW)
7127 }
7128 #[inline]
7129 pub fn language_token(&self) -> Option<SyntaxToken> {
7130 support::token(&self.syntax, SyntaxKind::LANGUAGE_KW)
7131 }
7132 #[inline]
7133 pub fn restrict_token(&self) -> Option<SyntaxToken> {
7134 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
7135 }
7136 #[inline]
7137 pub fn transform_token(&self) -> Option<SyntaxToken> {
7138 support::token(&self.syntax, SyntaxKind::TRANSFORM_KW)
7139 }
7140}
7141
7142#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7143pub struct DropTrigger {
7144 pub(crate) syntax: SyntaxNode,
7145}
7146impl DropTrigger {
7147 #[inline]
7148 pub fn if_exists(&self) -> Option<IfExists> {
7149 support::child(&self.syntax)
7150 }
7151 #[inline]
7152 pub fn on_table(&self) -> Option<OnTable> {
7153 support::child(&self.syntax)
7154 }
7155 #[inline]
7156 pub fn path(&self) -> Option<Path> {
7157 support::child(&self.syntax)
7158 }
7159 #[inline]
7160 pub fn cascade_token(&self) -> Option<SyntaxToken> {
7161 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
7162 }
7163 #[inline]
7164 pub fn drop_token(&self) -> Option<SyntaxToken> {
7165 support::token(&self.syntax, SyntaxKind::DROP_KW)
7166 }
7167 #[inline]
7168 pub fn restrict_token(&self) -> Option<SyntaxToken> {
7169 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
7170 }
7171 #[inline]
7172 pub fn trigger_token(&self) -> Option<SyntaxToken> {
7173 support::token(&self.syntax, SyntaxKind::TRIGGER_KW)
7174 }
7175}
7176
7177#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7178pub struct DropType {
7179 pub(crate) syntax: SyntaxNode,
7180}
7181impl DropType {
7182 #[inline]
7183 pub fn if_exists(&self) -> Option<IfExists> {
7184 support::child(&self.syntax)
7185 }
7186 #[inline]
7187 pub fn paths(&self) -> AstChildren<Path> {
7188 support::children(&self.syntax)
7189 }
7190 #[inline]
7191 pub fn cascade_token(&self) -> Option<SyntaxToken> {
7192 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
7193 }
7194 #[inline]
7195 pub fn drop_token(&self) -> Option<SyntaxToken> {
7196 support::token(&self.syntax, SyntaxKind::DROP_KW)
7197 }
7198 #[inline]
7199 pub fn restrict_token(&self) -> Option<SyntaxToken> {
7200 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
7201 }
7202 #[inline]
7203 pub fn type_token(&self) -> Option<SyntaxToken> {
7204 support::token(&self.syntax, SyntaxKind::TYPE_KW)
7205 }
7206}
7207
7208#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7209pub struct DropUser {
7210 pub(crate) syntax: SyntaxNode,
7211}
7212impl DropUser {
7213 #[inline]
7214 pub fn if_exists(&self) -> Option<IfExists> {
7215 support::child(&self.syntax)
7216 }
7217 #[inline]
7218 pub fn name_refs(&self) -> AstChildren<NameRef> {
7219 support::children(&self.syntax)
7220 }
7221 #[inline]
7222 pub fn drop_token(&self) -> Option<SyntaxToken> {
7223 support::token(&self.syntax, SyntaxKind::DROP_KW)
7224 }
7225 #[inline]
7226 pub fn user_token(&self) -> Option<SyntaxToken> {
7227 support::token(&self.syntax, SyntaxKind::USER_KW)
7228 }
7229}
7230
7231#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7232pub struct DropUserMapping {
7233 pub(crate) syntax: SyntaxNode,
7234}
7235impl DropUserMapping {
7236 #[inline]
7237 pub fn if_exists(&self) -> Option<IfExists> {
7238 support::child(&self.syntax)
7239 }
7240 #[inline]
7241 pub fn role_ref(&self) -> Option<RoleRef> {
7242 support::child(&self.syntax)
7243 }
7244 #[inline]
7245 pub fn server_name(&self) -> Option<ServerName> {
7246 support::child(&self.syntax)
7247 }
7248 #[inline]
7249 pub fn drop_token(&self) -> Option<SyntaxToken> {
7250 support::token(&self.syntax, SyntaxKind::DROP_KW)
7251 }
7252 #[inline]
7253 pub fn for_token(&self) -> Option<SyntaxToken> {
7254 support::token(&self.syntax, SyntaxKind::FOR_KW)
7255 }
7256 #[inline]
7257 pub fn mapping_token(&self) -> Option<SyntaxToken> {
7258 support::token(&self.syntax, SyntaxKind::MAPPING_KW)
7259 }
7260 #[inline]
7261 pub fn user_token(&self) -> Option<SyntaxToken> {
7262 support::token(&self.syntax, SyntaxKind::USER_KW)
7263 }
7264}
7265
7266#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7267pub struct DropView {
7268 pub(crate) syntax: SyntaxNode,
7269}
7270impl DropView {
7271 #[inline]
7272 pub fn if_exists(&self) -> Option<IfExists> {
7273 support::child(&self.syntax)
7274 }
7275 #[inline]
7276 pub fn path(&self) -> Option<Path> {
7277 support::child(&self.syntax)
7278 }
7279 #[inline]
7280 pub fn cascade_token(&self) -> Option<SyntaxToken> {
7281 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
7282 }
7283 #[inline]
7284 pub fn drop_token(&self) -> Option<SyntaxToken> {
7285 support::token(&self.syntax, SyntaxKind::DROP_KW)
7286 }
7287 #[inline]
7288 pub fn restrict_token(&self) -> Option<SyntaxToken> {
7289 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
7290 }
7291 #[inline]
7292 pub fn view_token(&self) -> Option<SyntaxToken> {
7293 support::token(&self.syntax, SyntaxKind::VIEW_KW)
7294 }
7295}
7296
7297#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7298pub struct ElseClause {
7299 pub(crate) syntax: SyntaxNode,
7300}
7301impl ElseClause {
7302 #[inline]
7303 pub fn expr(&self) -> Option<Expr> {
7304 support::child(&self.syntax)
7305 }
7306 #[inline]
7307 pub fn else_token(&self) -> Option<SyntaxToken> {
7308 support::token(&self.syntax, SyntaxKind::ELSE_KW)
7309 }
7310}
7311
7312#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7313pub struct EnableAlwaysRule {
7314 pub(crate) syntax: SyntaxNode,
7315}
7316impl EnableAlwaysRule {
7317 #[inline]
7318 pub fn always_token(&self) -> Option<SyntaxToken> {
7319 support::token(&self.syntax, SyntaxKind::ALWAYS_KW)
7320 }
7321 #[inline]
7322 pub fn enable_token(&self) -> Option<SyntaxToken> {
7323 support::token(&self.syntax, SyntaxKind::ENABLE_KW)
7324 }
7325 #[inline]
7326 pub fn rule_token(&self) -> Option<SyntaxToken> {
7327 support::token(&self.syntax, SyntaxKind::RULE_KW)
7328 }
7329}
7330
7331#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7332pub struct EnableAlwaysTrigger {
7333 pub(crate) syntax: SyntaxNode,
7334}
7335impl EnableAlwaysTrigger {
7336 #[inline]
7337 pub fn always_token(&self) -> Option<SyntaxToken> {
7338 support::token(&self.syntax, SyntaxKind::ALWAYS_KW)
7339 }
7340 #[inline]
7341 pub fn enable_token(&self) -> Option<SyntaxToken> {
7342 support::token(&self.syntax, SyntaxKind::ENABLE_KW)
7343 }
7344 #[inline]
7345 pub fn trigger_token(&self) -> Option<SyntaxToken> {
7346 support::token(&self.syntax, SyntaxKind::TRIGGER_KW)
7347 }
7348}
7349
7350#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7351pub struct EnableReplicaRule {
7352 pub(crate) syntax: SyntaxNode,
7353}
7354impl EnableReplicaRule {
7355 #[inline]
7356 pub fn enable_token(&self) -> Option<SyntaxToken> {
7357 support::token(&self.syntax, SyntaxKind::ENABLE_KW)
7358 }
7359 #[inline]
7360 pub fn replica_token(&self) -> Option<SyntaxToken> {
7361 support::token(&self.syntax, SyntaxKind::REPLICA_KW)
7362 }
7363 #[inline]
7364 pub fn rule_token(&self) -> Option<SyntaxToken> {
7365 support::token(&self.syntax, SyntaxKind::RULE_KW)
7366 }
7367}
7368
7369#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7370pub struct EnableReplicaTrigger {
7371 pub(crate) syntax: SyntaxNode,
7372}
7373impl EnableReplicaTrigger {
7374 #[inline]
7375 pub fn enable_token(&self) -> Option<SyntaxToken> {
7376 support::token(&self.syntax, SyntaxKind::ENABLE_KW)
7377 }
7378 #[inline]
7379 pub fn replica_token(&self) -> Option<SyntaxToken> {
7380 support::token(&self.syntax, SyntaxKind::REPLICA_KW)
7381 }
7382 #[inline]
7383 pub fn trigger_token(&self) -> Option<SyntaxToken> {
7384 support::token(&self.syntax, SyntaxKind::TRIGGER_KW)
7385 }
7386}
7387
7388#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7389pub struct EnableRls {
7390 pub(crate) syntax: SyntaxNode,
7391}
7392impl EnableRls {
7393 #[inline]
7394 pub fn enable_token(&self) -> Option<SyntaxToken> {
7395 support::token(&self.syntax, SyntaxKind::ENABLE_KW)
7396 }
7397 #[inline]
7398 pub fn level_token(&self) -> Option<SyntaxToken> {
7399 support::token(&self.syntax, SyntaxKind::LEVEL_KW)
7400 }
7401 #[inline]
7402 pub fn row_token(&self) -> Option<SyntaxToken> {
7403 support::token(&self.syntax, SyntaxKind::ROW_KW)
7404 }
7405 #[inline]
7406 pub fn security_token(&self) -> Option<SyntaxToken> {
7407 support::token(&self.syntax, SyntaxKind::SECURITY_KW)
7408 }
7409}
7410
7411#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7412pub struct EnableRule {
7413 pub(crate) syntax: SyntaxNode,
7414}
7415impl EnableRule {
7416 #[inline]
7417 pub fn enable_token(&self) -> Option<SyntaxToken> {
7418 support::token(&self.syntax, SyntaxKind::ENABLE_KW)
7419 }
7420 #[inline]
7421 pub fn rule_token(&self) -> Option<SyntaxToken> {
7422 support::token(&self.syntax, SyntaxKind::RULE_KW)
7423 }
7424}
7425
7426#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7427pub struct EnableTrigger {
7428 pub(crate) syntax: SyntaxNode,
7429}
7430impl EnableTrigger {
7431 #[inline]
7432 pub fn enable_token(&self) -> Option<SyntaxToken> {
7433 support::token(&self.syntax, SyntaxKind::ENABLE_KW)
7434 }
7435 #[inline]
7436 pub fn trigger_token(&self) -> Option<SyntaxToken> {
7437 support::token(&self.syntax, SyntaxKind::TRIGGER_KW)
7438 }
7439}
7440
7441#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7442pub struct Enforced {
7443 pub(crate) syntax: SyntaxNode,
7444}
7445impl Enforced {
7446 #[inline]
7447 pub fn enforced_token(&self) -> Option<SyntaxToken> {
7448 support::token(&self.syntax, SyntaxKind::ENFORCED_KW)
7449 }
7450}
7451
7452#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7453pub struct EventTriggerWhen {
7454 pub(crate) syntax: SyntaxNode,
7455}
7456impl EventTriggerWhen {
7457 #[inline]
7458 pub fn literals(&self) -> AstChildren<Literal> {
7459 support::children(&self.syntax)
7460 }
7461 #[inline]
7462 pub fn name_ref(&self) -> Option<NameRef> {
7463 support::child(&self.syntax)
7464 }
7465 #[inline]
7466 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
7467 support::token(&self.syntax, SyntaxKind::L_PAREN)
7468 }
7469 #[inline]
7470 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
7471 support::token(&self.syntax, SyntaxKind::R_PAREN)
7472 }
7473 #[inline]
7474 pub fn in_token(&self) -> Option<SyntaxToken> {
7475 support::token(&self.syntax, SyntaxKind::IN_KW)
7476 }
7477}
7478
7479#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7480pub struct EventTriggerWhenClause {
7481 pub(crate) syntax: SyntaxNode,
7482}
7483impl EventTriggerWhenClause {
7484 #[inline]
7485 pub fn event_trigger_whens(&self) -> AstChildren<EventTriggerWhen> {
7486 support::children(&self.syntax)
7487 }
7488 #[inline]
7489 pub fn when_token(&self) -> Option<SyntaxToken> {
7490 support::token(&self.syntax, SyntaxKind::WHEN_KW)
7491 }
7492}
7493
7494#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7495pub struct ExceptTables {
7496 pub(crate) syntax: SyntaxNode,
7497}
7498impl ExceptTables {
7499 #[inline]
7500 pub fn name_refs(&self) -> AstChildren<NameRef> {
7501 support::children(&self.syntax)
7502 }
7503 #[inline]
7504 pub fn except_token(&self) -> Option<SyntaxToken> {
7505 support::token(&self.syntax, SyntaxKind::EXCEPT_KW)
7506 }
7507}
7508
7509#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7510pub struct ExcludeConstraint {
7511 pub(crate) syntax: SyntaxNode,
7512}
7513impl ExcludeConstraint {
7514 #[inline]
7515 pub fn constraint_exclusion_list(&self) -> Option<ConstraintExclusionList> {
7516 support::child(&self.syntax)
7517 }
7518 #[inline]
7519 pub fn constraint_index_method(&self) -> Option<ConstraintIndexMethod> {
7520 support::child(&self.syntax)
7521 }
7522 #[inline]
7523 pub fn constraint_name(&self) -> Option<ConstraintName> {
7524 support::child(&self.syntax)
7525 }
7526 #[inline]
7527 pub fn where_condition_clause(&self) -> Option<WhereConditionClause> {
7528 support::child(&self.syntax)
7529 }
7530 #[inline]
7531 pub fn exclude_token(&self) -> Option<SyntaxToken> {
7532 support::token(&self.syntax, SyntaxKind::EXCLUDE_KW)
7533 }
7534}
7535
7536#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7537pub struct Execute {
7538 pub(crate) syntax: SyntaxNode,
7539}
7540impl Execute {
7541 #[inline]
7542 pub fn arg_list(&self) -> Option<ArgList> {
7543 support::child(&self.syntax)
7544 }
7545 #[inline]
7546 pub fn name_ref(&self) -> Option<NameRef> {
7547 support::child(&self.syntax)
7548 }
7549 #[inline]
7550 pub fn execute_token(&self) -> Option<SyntaxToken> {
7551 support::token(&self.syntax, SyntaxKind::EXECUTE_KW)
7552 }
7553}
7554
7555#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7556pub struct ExistsFn {
7557 pub(crate) syntax: SyntaxNode,
7558}
7559impl ExistsFn {
7560 #[inline]
7561 pub fn select_variant(&self) -> Option<SelectVariant> {
7562 support::child(&self.syntax)
7563 }
7564 #[inline]
7565 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
7566 support::token(&self.syntax, SyntaxKind::L_PAREN)
7567 }
7568 #[inline]
7569 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
7570 support::token(&self.syntax, SyntaxKind::R_PAREN)
7571 }
7572 #[inline]
7573 pub fn exists_token(&self) -> Option<SyntaxToken> {
7574 support::token(&self.syntax, SyntaxKind::EXISTS_KW)
7575 }
7576}
7577
7578#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7579pub struct Explain {
7580 pub(crate) syntax: SyntaxNode,
7581}
7582impl Explain {
7583 #[inline]
7584 pub fn explain_stmt(&self) -> Option<ExplainStmt> {
7585 support::child(&self.syntax)
7586 }
7587 #[inline]
7588 pub fn analyse_token(&self) -> Option<SyntaxToken> {
7589 support::token(&self.syntax, SyntaxKind::ANALYSE_KW)
7590 }
7591 #[inline]
7592 pub fn analyze_token(&self) -> Option<SyntaxToken> {
7593 support::token(&self.syntax, SyntaxKind::ANALYZE_KW)
7594 }
7595 #[inline]
7596 pub fn explain_token(&self) -> Option<SyntaxToken> {
7597 support::token(&self.syntax, SyntaxKind::EXPLAIN_KW)
7598 }
7599 #[inline]
7600 pub fn verbose_token(&self) -> Option<SyntaxToken> {
7601 support::token(&self.syntax, SyntaxKind::VERBOSE_KW)
7602 }
7603}
7604
7605#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7606pub struct ExprAsName {
7607 pub(crate) syntax: SyntaxNode,
7608}
7609impl ExprAsName {
7610 #[inline]
7611 pub fn as_name(&self) -> Option<AsName> {
7612 support::child(&self.syntax)
7613 }
7614 #[inline]
7615 pub fn expr(&self) -> Option<Expr> {
7616 support::child(&self.syntax)
7617 }
7618}
7619
7620#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7621pub struct ExprType {
7622 pub(crate) syntax: SyntaxNode,
7623}
7624impl ExprType {
7625 #[inline]
7626 pub fn expr(&self) -> Option<Expr> {
7627 support::child(&self.syntax)
7628 }
7629}
7630
7631#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7632pub struct ExtractFn {
7633 pub(crate) syntax: SyntaxNode,
7634}
7635impl ExtractFn {
7636 #[inline]
7637 pub fn expr(&self) -> Option<Expr> {
7638 support::child(&self.syntax)
7639 }
7640 #[inline]
7641 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
7642 support::token(&self.syntax, SyntaxKind::L_PAREN)
7643 }
7644 #[inline]
7645 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
7646 support::token(&self.syntax, SyntaxKind::R_PAREN)
7647 }
7648 #[inline]
7649 pub fn day_token(&self) -> Option<SyntaxToken> {
7650 support::token(&self.syntax, SyntaxKind::DAY_KW)
7651 }
7652 #[inline]
7653 pub fn extract_token(&self) -> Option<SyntaxToken> {
7654 support::token(&self.syntax, SyntaxKind::EXTRACT_KW)
7655 }
7656 #[inline]
7657 pub fn from_token(&self) -> Option<SyntaxToken> {
7658 support::token(&self.syntax, SyntaxKind::FROM_KW)
7659 }
7660 #[inline]
7661 pub fn hour_token(&self) -> Option<SyntaxToken> {
7662 support::token(&self.syntax, SyntaxKind::HOUR_KW)
7663 }
7664 #[inline]
7665 pub fn ident_token(&self) -> Option<SyntaxToken> {
7666 support::token(&self.syntax, SyntaxKind::IDENT)
7667 }
7668 #[inline]
7669 pub fn minute_token(&self) -> Option<SyntaxToken> {
7670 support::token(&self.syntax, SyntaxKind::MINUTE_KW)
7671 }
7672 #[inline]
7673 pub fn month_token(&self) -> Option<SyntaxToken> {
7674 support::token(&self.syntax, SyntaxKind::MONTH_KW)
7675 }
7676 #[inline]
7677 pub fn second_token(&self) -> Option<SyntaxToken> {
7678 support::token(&self.syntax, SyntaxKind::SECOND_KW)
7679 }
7680 #[inline]
7681 pub fn string_token(&self) -> Option<SyntaxToken> {
7682 support::token(&self.syntax, SyntaxKind::STRING_KW)
7683 }
7684 #[inline]
7685 pub fn year_token(&self) -> Option<SyntaxToken> {
7686 support::token(&self.syntax, SyntaxKind::YEAR_KW)
7687 }
7688}
7689
7690#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7691pub struct FatArrow {
7692 pub(crate) syntax: SyntaxNode,
7693}
7694impl FatArrow {
7695 #[inline]
7696 pub fn eq_token(&self) -> Option<SyntaxToken> {
7697 support::token(&self.syntax, SyntaxKind::EQ)
7698 }
7699 #[inline]
7700 pub fn r_angle_token(&self) -> Option<SyntaxToken> {
7701 support::token(&self.syntax, SyntaxKind::R_ANGLE)
7702 }
7703}
7704
7705#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7706pub struct FdwOption {
7707 pub(crate) syntax: SyntaxNode,
7708}
7709impl FdwOption {
7710 #[inline]
7711 pub fn alter_option_list(&self) -> Option<AlterOptionList> {
7712 support::child(&self.syntax)
7713 }
7714 #[inline]
7715 pub fn path(&self) -> Option<Path> {
7716 support::child(&self.syntax)
7717 }
7718 #[inline]
7719 pub fn handler_token(&self) -> Option<SyntaxToken> {
7720 support::token(&self.syntax, SyntaxKind::HANDLER_KW)
7721 }
7722 #[inline]
7723 pub fn no_token(&self) -> Option<SyntaxToken> {
7724 support::token(&self.syntax, SyntaxKind::NO_KW)
7725 }
7726 #[inline]
7727 pub fn options_token(&self) -> Option<SyntaxToken> {
7728 support::token(&self.syntax, SyntaxKind::OPTIONS_KW)
7729 }
7730 #[inline]
7731 pub fn validator_token(&self) -> Option<SyntaxToken> {
7732 support::token(&self.syntax, SyntaxKind::VALIDATOR_KW)
7733 }
7734}
7735
7736#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7737pub struct FdwOptionList {
7738 pub(crate) syntax: SyntaxNode,
7739}
7740impl FdwOptionList {
7741 #[inline]
7742 pub fn fdw_options(&self) -> AstChildren<FdwOption> {
7743 support::children(&self.syntax)
7744 }
7745}
7746
7747#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7748pub struct Fetch {
7749 pub(crate) syntax: SyntaxNode,
7750}
7751impl Fetch {
7752 #[inline]
7753 pub fn name_ref(&self) -> Option<NameRef> {
7754 support::child(&self.syntax)
7755 }
7756 #[inline]
7757 pub fn fetch_token(&self) -> Option<SyntaxToken> {
7758 support::token(&self.syntax, SyntaxKind::FETCH_KW)
7759 }
7760 #[inline]
7761 pub fn from_token(&self) -> Option<SyntaxToken> {
7762 support::token(&self.syntax, SyntaxKind::FROM_KW)
7763 }
7764 #[inline]
7765 pub fn in_token(&self) -> Option<SyntaxToken> {
7766 support::token(&self.syntax, SyntaxKind::IN_KW)
7767 }
7768}
7769
7770#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7771pub struct FetchClause {
7772 pub(crate) syntax: SyntaxNode,
7773}
7774impl FetchClause {
7775 #[inline]
7776 pub fn expr(&self) -> Option<Expr> {
7777 support::child(&self.syntax)
7778 }
7779 #[inline]
7780 pub fn fetch_token(&self) -> Option<SyntaxToken> {
7781 support::token(&self.syntax, SyntaxKind::FETCH_KW)
7782 }
7783 #[inline]
7784 pub fn first_token(&self) -> Option<SyntaxToken> {
7785 support::token(&self.syntax, SyntaxKind::FIRST_KW)
7786 }
7787 #[inline]
7788 pub fn next_token(&self) -> Option<SyntaxToken> {
7789 support::token(&self.syntax, SyntaxKind::NEXT_KW)
7790 }
7791 #[inline]
7792 pub fn only_token(&self) -> Option<SyntaxToken> {
7793 support::token(&self.syntax, SyntaxKind::ONLY_KW)
7794 }
7795 #[inline]
7796 pub fn row_token(&self) -> Option<SyntaxToken> {
7797 support::token(&self.syntax, SyntaxKind::ROW_KW)
7798 }
7799 #[inline]
7800 pub fn rows_token(&self) -> Option<SyntaxToken> {
7801 support::token(&self.syntax, SyntaxKind::ROWS_KW)
7802 }
7803 #[inline]
7804 pub fn ties_token(&self) -> Option<SyntaxToken> {
7805 support::token(&self.syntax, SyntaxKind::TIES_KW)
7806 }
7807 #[inline]
7808 pub fn with_token(&self) -> Option<SyntaxToken> {
7809 support::token(&self.syntax, SyntaxKind::WITH_KW)
7810 }
7811}
7812
7813#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7814pub struct FieldExpr {
7815 pub(crate) syntax: SyntaxNode,
7816}
7817impl FieldExpr {
7818 #[inline]
7819 pub fn star_token(&self) -> Option<SyntaxToken> {
7820 support::token(&self.syntax, SyntaxKind::STAR)
7821 }
7822 #[inline]
7823 pub fn dot_token(&self) -> Option<SyntaxToken> {
7824 support::token(&self.syntax, SyntaxKind::DOT)
7825 }
7826}
7827
7828#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7829pub struct FilterClause {
7830 pub(crate) syntax: SyntaxNode,
7831}
7832impl FilterClause {
7833 #[inline]
7834 pub fn expr(&self) -> Option<Expr> {
7835 support::child(&self.syntax)
7836 }
7837 #[inline]
7838 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
7839 support::token(&self.syntax, SyntaxKind::L_PAREN)
7840 }
7841 #[inline]
7842 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
7843 support::token(&self.syntax, SyntaxKind::R_PAREN)
7844 }
7845 #[inline]
7846 pub fn filter_token(&self) -> Option<SyntaxToken> {
7847 support::token(&self.syntax, SyntaxKind::FILTER_KW)
7848 }
7849 #[inline]
7850 pub fn where_token(&self) -> Option<SyntaxToken> {
7851 support::token(&self.syntax, SyntaxKind::WHERE_KW)
7852 }
7853}
7854
7855#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7856pub struct ForProvider {
7857 pub(crate) syntax: SyntaxNode,
7858}
7859impl ForProvider {
7860 #[inline]
7861 pub fn literal(&self) -> Option<Literal> {
7862 support::child(&self.syntax)
7863 }
7864 #[inline]
7865 pub fn name_ref(&self) -> Option<NameRef> {
7866 support::child(&self.syntax)
7867 }
7868 #[inline]
7869 pub fn for_token(&self) -> Option<SyntaxToken> {
7870 support::token(&self.syntax, SyntaxKind::FOR_KW)
7871 }
7872}
7873
7874#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7875pub struct ForceRls {
7876 pub(crate) syntax: SyntaxNode,
7877}
7878impl ForceRls {
7879 #[inline]
7880 pub fn force_token(&self) -> Option<SyntaxToken> {
7881 support::token(&self.syntax, SyntaxKind::FORCE_KW)
7882 }
7883 #[inline]
7884 pub fn level_token(&self) -> Option<SyntaxToken> {
7885 support::token(&self.syntax, SyntaxKind::LEVEL_KW)
7886 }
7887 #[inline]
7888 pub fn row_token(&self) -> Option<SyntaxToken> {
7889 support::token(&self.syntax, SyntaxKind::ROW_KW)
7890 }
7891 #[inline]
7892 pub fn security_token(&self) -> Option<SyntaxToken> {
7893 support::token(&self.syntax, SyntaxKind::SECURITY_KW)
7894 }
7895}
7896
7897#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7898pub struct ForeignKeyConstraint {
7899 pub(crate) syntax: SyntaxNode,
7900}
7901impl ForeignKeyConstraint {
7902 #[inline]
7903 pub fn constraint_name(&self) -> Option<ConstraintName> {
7904 support::child(&self.syntax)
7905 }
7906 #[inline]
7907 pub fn match_type(&self) -> Option<MatchType> {
7908 support::child(&self.syntax)
7909 }
7910 #[inline]
7911 pub fn on_delete_action(&self) -> Option<OnDeleteAction> {
7912 support::child(&self.syntax)
7913 }
7914 #[inline]
7915 pub fn on_update_action(&self) -> Option<OnUpdateAction> {
7916 support::child(&self.syntax)
7917 }
7918 #[inline]
7919 pub fn path(&self) -> Option<Path> {
7920 support::child(&self.syntax)
7921 }
7922 #[inline]
7923 pub fn foreign_token(&self) -> Option<SyntaxToken> {
7924 support::token(&self.syntax, SyntaxKind::FOREIGN_KW)
7925 }
7926 #[inline]
7927 pub fn key_token(&self) -> Option<SyntaxToken> {
7928 support::token(&self.syntax, SyntaxKind::KEY_KW)
7929 }
7930 #[inline]
7931 pub fn references_token(&self) -> Option<SyntaxToken> {
7932 support::token(&self.syntax, SyntaxKind::REFERENCES_KW)
7933 }
7934}
7935
7936#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7937pub struct FrameClause {
7938 pub(crate) syntax: SyntaxNode,
7939}
7940impl FrameClause {
7941 #[inline]
7942 pub fn groups_token(&self) -> Option<SyntaxToken> {
7943 support::token(&self.syntax, SyntaxKind::GROUPS_KW)
7944 }
7945 #[inline]
7946 pub fn range_token(&self) -> Option<SyntaxToken> {
7947 support::token(&self.syntax, SyntaxKind::RANGE_KW)
7948 }
7949 #[inline]
7950 pub fn rows_token(&self) -> Option<SyntaxToken> {
7951 support::token(&self.syntax, SyntaxKind::ROWS_KW)
7952 }
7953}
7954
7955#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7956pub struct FromClause {
7957 pub(crate) syntax: SyntaxNode,
7958}
7959impl FromClause {
7960 #[inline]
7961 pub fn from_items(&self) -> AstChildren<FromItem> {
7962 support::children(&self.syntax)
7963 }
7964 #[inline]
7965 pub fn join_exprs(&self) -> AstChildren<JoinExpr> {
7966 support::children(&self.syntax)
7967 }
7968 #[inline]
7969 pub fn from_token(&self) -> Option<SyntaxToken> {
7970 support::token(&self.syntax, SyntaxKind::FROM_KW)
7971 }
7972}
7973
7974#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7975pub struct FromItem {
7976 pub(crate) syntax: SyntaxNode,
7977}
7978impl FromItem {
7979 #[inline]
7980 pub fn alias(&self) -> Option<Alias> {
7981 support::child(&self.syntax)
7982 }
7983 #[inline]
7984 pub fn call_expr(&self) -> Option<CallExpr> {
7985 support::child(&self.syntax)
7986 }
7987 #[inline]
7988 pub fn cast_expr(&self) -> Option<CastExpr> {
7989 support::child(&self.syntax)
7990 }
7991 #[inline]
7992 pub fn field_expr(&self) -> Option<FieldExpr> {
7993 support::child(&self.syntax)
7994 }
7995 #[inline]
7996 pub fn json_table(&self) -> Option<JsonTable> {
7997 support::child(&self.syntax)
7998 }
7999 #[inline]
8000 pub fn name_ref(&self) -> Option<NameRef> {
8001 support::child(&self.syntax)
8002 }
8003 #[inline]
8004 pub fn paren_expr(&self) -> Option<ParenExpr> {
8005 support::child(&self.syntax)
8006 }
8007 #[inline]
8008 pub fn paren_select(&self) -> Option<ParenSelect> {
8009 support::child(&self.syntax)
8010 }
8011 #[inline]
8012 pub fn tablesample_clause(&self) -> Option<TablesampleClause> {
8013 support::child(&self.syntax)
8014 }
8015 #[inline]
8016 pub fn xml_table(&self) -> Option<XmlTable> {
8017 support::child(&self.syntax)
8018 }
8019 #[inline]
8020 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
8021 support::token(&self.syntax, SyntaxKind::L_PAREN)
8022 }
8023 #[inline]
8024 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
8025 support::token(&self.syntax, SyntaxKind::R_PAREN)
8026 }
8027 #[inline]
8028 pub fn star_token(&self) -> Option<SyntaxToken> {
8029 support::token(&self.syntax, SyntaxKind::STAR)
8030 }
8031 #[inline]
8032 pub fn from_token(&self) -> Option<SyntaxToken> {
8033 support::token(&self.syntax, SyntaxKind::FROM_KW)
8034 }
8035 #[inline]
8036 pub fn lateral_token(&self) -> Option<SyntaxToken> {
8037 support::token(&self.syntax, SyntaxKind::LATERAL_KW)
8038 }
8039 #[inline]
8040 pub fn only_token(&self) -> Option<SyntaxToken> {
8041 support::token(&self.syntax, SyntaxKind::ONLY_KW)
8042 }
8043 #[inline]
8044 pub fn ordinality_token(&self) -> Option<SyntaxToken> {
8045 support::token(&self.syntax, SyntaxKind::ORDINALITY_KW)
8046 }
8047 #[inline]
8048 pub fn rows_token(&self) -> Option<SyntaxToken> {
8049 support::token(&self.syntax, SyntaxKind::ROWS_KW)
8050 }
8051 #[inline]
8052 pub fn with_token(&self) -> Option<SyntaxToken> {
8053 support::token(&self.syntax, SyntaxKind::WITH_KW)
8054 }
8055}
8056
8057#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8058pub struct FromTable {
8059 pub(crate) syntax: SyntaxNode,
8060}
8061impl FromTable {
8062 #[inline]
8063 pub fn path(&self) -> Option<Path> {
8064 support::child(&self.syntax)
8065 }
8066 #[inline]
8067 pub fn from_token(&self) -> Option<SyntaxToken> {
8068 support::token(&self.syntax, SyntaxKind::FROM_KW)
8069 }
8070}
8071
8072#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8073pub struct FuncOptionList {
8074 pub(crate) syntax: SyntaxNode,
8075}
8076impl FuncOptionList {
8077 #[inline]
8078 pub fn options(&self) -> AstChildren<FuncOption> {
8079 support::children(&self.syntax)
8080 }
8081}
8082
8083#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8084pub struct FunctionSig {
8085 pub(crate) syntax: SyntaxNode,
8086}
8087impl FunctionSig {
8088 #[inline]
8089 pub fn param_list(&self) -> Option<ParamList> {
8090 support::child(&self.syntax)
8091 }
8092 #[inline]
8093 pub fn path(&self) -> Option<Path> {
8094 support::child(&self.syntax)
8095 }
8096}
8097
8098#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8099pub struct FunctionSigList {
8100 pub(crate) syntax: SyntaxNode,
8101}
8102impl FunctionSigList {
8103 #[inline]
8104 pub fn function_sigs(&self) -> AstChildren<FunctionSig> {
8105 support::children(&self.syntax)
8106 }
8107}
8108
8109#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8110pub struct GeneratedConstraint {
8111 pub(crate) syntax: SyntaxNode,
8112}
8113impl GeneratedConstraint {
8114 #[inline]
8115 pub fn expr(&self) -> Option<Expr> {
8116 support::child(&self.syntax)
8117 }
8118 #[inline]
8119 pub fn name_ref(&self) -> Option<NameRef> {
8120 support::child(&self.syntax)
8121 }
8122 #[inline]
8123 pub fn sequence_option_list(&self) -> Option<SequenceOptionList> {
8124 support::child(&self.syntax)
8125 }
8126 #[inline]
8127 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
8128 support::token(&self.syntax, SyntaxKind::L_PAREN)
8129 }
8130 #[inline]
8131 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
8132 support::token(&self.syntax, SyntaxKind::R_PAREN)
8133 }
8134 #[inline]
8135 pub fn always_token(&self) -> Option<SyntaxToken> {
8136 support::token(&self.syntax, SyntaxKind::ALWAYS_KW)
8137 }
8138 #[inline]
8139 pub fn as_token(&self) -> Option<SyntaxToken> {
8140 support::token(&self.syntax, SyntaxKind::AS_KW)
8141 }
8142 #[inline]
8143 pub fn by_token(&self) -> Option<SyntaxToken> {
8144 support::token(&self.syntax, SyntaxKind::BY_KW)
8145 }
8146 #[inline]
8147 pub fn constraint_token(&self) -> Option<SyntaxToken> {
8148 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
8149 }
8150 #[inline]
8151 pub fn default_token(&self) -> Option<SyntaxToken> {
8152 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
8153 }
8154 #[inline]
8155 pub fn generated_token(&self) -> Option<SyntaxToken> {
8156 support::token(&self.syntax, SyntaxKind::GENERATED_KW)
8157 }
8158 #[inline]
8159 pub fn identity_token(&self) -> Option<SyntaxToken> {
8160 support::token(&self.syntax, SyntaxKind::IDENTITY_KW)
8161 }
8162 #[inline]
8163 pub fn stored_token(&self) -> Option<SyntaxToken> {
8164 support::token(&self.syntax, SyntaxKind::STORED_KW)
8165 }
8166}
8167
8168#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8169pub struct Grant {
8170 pub(crate) syntax: SyntaxNode,
8171}
8172impl Grant {
8173 #[inline]
8174 pub fn name_refs(&self) -> AstChildren<NameRef> {
8175 support::children(&self.syntax)
8176 }
8177 #[inline]
8178 pub fn paths(&self) -> AstChildren<Path> {
8179 support::children(&self.syntax)
8180 }
8181 #[inline]
8182 pub fn revoke_command_list(&self) -> Option<RevokeCommandList> {
8183 support::child(&self.syntax)
8184 }
8185 #[inline]
8186 pub fn role_ref(&self) -> Option<RoleRef> {
8187 support::child(&self.syntax)
8188 }
8189 #[inline]
8190 pub fn role_ref_list(&self) -> Option<RoleRefList> {
8191 support::child(&self.syntax)
8192 }
8193 #[inline]
8194 pub fn all_token(&self) -> Option<SyntaxToken> {
8195 support::token(&self.syntax, SyntaxKind::ALL_KW)
8196 }
8197 #[inline]
8198 pub fn by_token(&self) -> Option<SyntaxToken> {
8199 support::token(&self.syntax, SyntaxKind::BY_KW)
8200 }
8201 #[inline]
8202 pub fn grant_token(&self) -> Option<SyntaxToken> {
8203 support::token(&self.syntax, SyntaxKind::GRANT_KW)
8204 }
8205 #[inline]
8206 pub fn granted_token(&self) -> Option<SyntaxToken> {
8207 support::token(&self.syntax, SyntaxKind::GRANTED_KW)
8208 }
8209 #[inline]
8210 pub fn in_token(&self) -> Option<SyntaxToken> {
8211 support::token(&self.syntax, SyntaxKind::IN_KW)
8212 }
8213 #[inline]
8214 pub fn on_token(&self) -> Option<SyntaxToken> {
8215 support::token(&self.syntax, SyntaxKind::ON_KW)
8216 }
8217 #[inline]
8218 pub fn option_token(&self) -> Option<SyntaxToken> {
8219 support::token(&self.syntax, SyntaxKind::OPTION_KW)
8220 }
8221 #[inline]
8222 pub fn privileges_token(&self) -> Option<SyntaxToken> {
8223 support::token(&self.syntax, SyntaxKind::PRIVILEGES_KW)
8224 }
8225 #[inline]
8226 pub fn schema_token(&self) -> Option<SyntaxToken> {
8227 support::token(&self.syntax, SyntaxKind::SCHEMA_KW)
8228 }
8229 #[inline]
8230 pub fn table_token(&self) -> Option<SyntaxToken> {
8231 support::token(&self.syntax, SyntaxKind::TABLE_KW)
8232 }
8233 #[inline]
8234 pub fn tables_token(&self) -> Option<SyntaxToken> {
8235 support::token(&self.syntax, SyntaxKind::TABLES_KW)
8236 }
8237 #[inline]
8238 pub fn to_token(&self) -> Option<SyntaxToken> {
8239 support::token(&self.syntax, SyntaxKind::TO_KW)
8240 }
8241 #[inline]
8242 pub fn with_token(&self) -> Option<SyntaxToken> {
8243 support::token(&self.syntax, SyntaxKind::WITH_KW)
8244 }
8245}
8246
8247#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8248pub struct GrantDefaultPrivileges {
8249 pub(crate) syntax: SyntaxNode,
8250}
8251impl GrantDefaultPrivileges {
8252 #[inline]
8253 pub fn privilege_target(&self) -> Option<PrivilegeTarget> {
8254 support::child(&self.syntax)
8255 }
8256 #[inline]
8257 pub fn privileges(&self) -> Option<Privileges> {
8258 support::child(&self.syntax)
8259 }
8260 #[inline]
8261 pub fn role_ref_list(&self) -> Option<RoleRefList> {
8262 support::child(&self.syntax)
8263 }
8264 #[inline]
8265 pub fn grant_token(&self) -> Option<SyntaxToken> {
8266 support::token(&self.syntax, SyntaxKind::GRANT_KW)
8267 }
8268 #[inline]
8269 pub fn on_token(&self) -> Option<SyntaxToken> {
8270 support::token(&self.syntax, SyntaxKind::ON_KW)
8271 }
8272 #[inline]
8273 pub fn option_token(&self) -> Option<SyntaxToken> {
8274 support::token(&self.syntax, SyntaxKind::OPTION_KW)
8275 }
8276 #[inline]
8277 pub fn to_token(&self) -> Option<SyntaxToken> {
8278 support::token(&self.syntax, SyntaxKind::TO_KW)
8279 }
8280 #[inline]
8281 pub fn with_token(&self) -> Option<SyntaxToken> {
8282 support::token(&self.syntax, SyntaxKind::WITH_KW)
8283 }
8284}
8285
8286#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8287pub struct GroupByClause {
8288 pub(crate) syntax: SyntaxNode,
8289}
8290impl GroupByClause {
8291 #[inline]
8292 pub fn group_by_list(&self) -> Option<GroupByList> {
8293 support::child(&self.syntax)
8294 }
8295 #[inline]
8296 pub fn all_token(&self) -> Option<SyntaxToken> {
8297 support::token(&self.syntax, SyntaxKind::ALL_KW)
8298 }
8299 #[inline]
8300 pub fn by_token(&self) -> Option<SyntaxToken> {
8301 support::token(&self.syntax, SyntaxKind::BY_KW)
8302 }
8303 #[inline]
8304 pub fn distinct_token(&self) -> Option<SyntaxToken> {
8305 support::token(&self.syntax, SyntaxKind::DISTINCT_KW)
8306 }
8307 #[inline]
8308 pub fn group_token(&self) -> Option<SyntaxToken> {
8309 support::token(&self.syntax, SyntaxKind::GROUP_KW)
8310 }
8311}
8312
8313#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8314pub struct GroupByList {
8315 pub(crate) syntax: SyntaxNode,
8316}
8317impl GroupByList {
8318 #[inline]
8319 pub fn group_bys(&self) -> AstChildren<GroupBy> {
8320 support::children(&self.syntax)
8321 }
8322}
8323
8324#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8325pub struct GroupingCube {
8326 pub(crate) syntax: SyntaxNode,
8327}
8328impl GroupingCube {
8329 #[inline]
8330 pub fn expr(&self) -> Option<Expr> {
8331 support::child(&self.syntax)
8332 }
8333 #[inline]
8334 pub fn cube_token(&self) -> Option<SyntaxToken> {
8335 support::token(&self.syntax, SyntaxKind::CUBE_KW)
8336 }
8337}
8338
8339#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8340pub struct GroupingExpr {
8341 pub(crate) syntax: SyntaxNode,
8342}
8343impl GroupingExpr {
8344 #[inline]
8345 pub fn expr(&self) -> Option<Expr> {
8346 support::child(&self.syntax)
8347 }
8348}
8349
8350#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8351pub struct GroupingRollup {
8352 pub(crate) syntax: SyntaxNode,
8353}
8354impl GroupingRollup {
8355 #[inline]
8356 pub fn expr(&self) -> Option<Expr> {
8357 support::child(&self.syntax)
8358 }
8359 #[inline]
8360 pub fn rollup_token(&self) -> Option<SyntaxToken> {
8361 support::token(&self.syntax, SyntaxKind::ROLLUP_KW)
8362 }
8363}
8364
8365#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8366pub struct GroupingSets {
8367 pub(crate) syntax: SyntaxNode,
8368}
8369impl GroupingSets {
8370 #[inline]
8371 pub fn expr(&self) -> Option<Expr> {
8372 support::child(&self.syntax)
8373 }
8374 #[inline]
8375 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
8376 support::token(&self.syntax, SyntaxKind::L_PAREN)
8377 }
8378 #[inline]
8379 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
8380 support::token(&self.syntax, SyntaxKind::R_PAREN)
8381 }
8382 #[inline]
8383 pub fn grouping_token(&self) -> Option<SyntaxToken> {
8384 support::token(&self.syntax, SyntaxKind::GROUPING_KW)
8385 }
8386 #[inline]
8387 pub fn sets_token(&self) -> Option<SyntaxToken> {
8388 support::token(&self.syntax, SyntaxKind::SETS_KW)
8389 }
8390}
8391
8392#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8393pub struct Gteq {
8394 pub(crate) syntax: SyntaxNode,
8395}
8396impl Gteq {
8397 #[inline]
8398 pub fn eq_token(&self) -> Option<SyntaxToken> {
8399 support::token(&self.syntax, SyntaxKind::EQ)
8400 }
8401 #[inline]
8402 pub fn r_angle_token(&self) -> Option<SyntaxToken> {
8403 support::token(&self.syntax, SyntaxKind::R_ANGLE)
8404 }
8405}
8406
8407#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8408pub struct HandlerClause {
8409 pub(crate) syntax: SyntaxNode,
8410}
8411impl HandlerClause {
8412 #[inline]
8413 pub fn path(&self) -> Option<Path> {
8414 support::child(&self.syntax)
8415 }
8416 #[inline]
8417 pub fn handler_token(&self) -> Option<SyntaxToken> {
8418 support::token(&self.syntax, SyntaxKind::HANDLER_KW)
8419 }
8420}
8421
8422#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8423pub struct HavingClause {
8424 pub(crate) syntax: SyntaxNode,
8425}
8426impl HavingClause {
8427 #[inline]
8428 pub fn expr(&self) -> Option<Expr> {
8429 support::child(&self.syntax)
8430 }
8431 #[inline]
8432 pub fn having_token(&self) -> Option<SyntaxToken> {
8433 support::token(&self.syntax, SyntaxKind::HAVING_KW)
8434 }
8435}
8436
8437#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8438pub struct IfExists {
8439 pub(crate) syntax: SyntaxNode,
8440}
8441impl IfExists {
8442 #[inline]
8443 pub fn exists_token(&self) -> Option<SyntaxToken> {
8444 support::token(&self.syntax, SyntaxKind::EXISTS_KW)
8445 }
8446 #[inline]
8447 pub fn if_token(&self) -> Option<SyntaxToken> {
8448 support::token(&self.syntax, SyntaxKind::IF_KW)
8449 }
8450}
8451
8452#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8453pub struct IfNotExists {
8454 pub(crate) syntax: SyntaxNode,
8455}
8456impl IfNotExists {
8457 #[inline]
8458 pub fn exists_token(&self) -> Option<SyntaxToken> {
8459 support::token(&self.syntax, SyntaxKind::EXISTS_KW)
8460 }
8461 #[inline]
8462 pub fn if_token(&self) -> Option<SyntaxToken> {
8463 support::token(&self.syntax, SyntaxKind::IF_KW)
8464 }
8465 #[inline]
8466 pub fn not_token(&self) -> Option<SyntaxToken> {
8467 support::token(&self.syntax, SyntaxKind::NOT_KW)
8468 }
8469}
8470
8471#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8472pub struct ImportForeignSchema {
8473 pub(crate) syntax: SyntaxNode,
8474}
8475impl ImportForeignSchema {
8476 #[inline]
8477 pub fn alter_option_list(&self) -> Option<AlterOptionList> {
8478 support::child(&self.syntax)
8479 }
8480 #[inline]
8481 pub fn except_tables(&self) -> Option<ExceptTables> {
8482 support::child(&self.syntax)
8483 }
8484 #[inline]
8485 pub fn into_schema(&self) -> Option<IntoSchema> {
8486 support::child(&self.syntax)
8487 }
8488 #[inline]
8489 pub fn limit_to_tables(&self) -> Option<LimitToTables> {
8490 support::child(&self.syntax)
8491 }
8492 #[inline]
8493 pub fn name_ref(&self) -> Option<NameRef> {
8494 support::child(&self.syntax)
8495 }
8496 #[inline]
8497 pub fn server_name(&self) -> Option<ServerName> {
8498 support::child(&self.syntax)
8499 }
8500 #[inline]
8501 pub fn foreign_token(&self) -> Option<SyntaxToken> {
8502 support::token(&self.syntax, SyntaxKind::FOREIGN_KW)
8503 }
8504 #[inline]
8505 pub fn from_token(&self) -> Option<SyntaxToken> {
8506 support::token(&self.syntax, SyntaxKind::FROM_KW)
8507 }
8508 #[inline]
8509 pub fn import_token(&self) -> Option<SyntaxToken> {
8510 support::token(&self.syntax, SyntaxKind::IMPORT_KW)
8511 }
8512 #[inline]
8513 pub fn schema_token(&self) -> Option<SyntaxToken> {
8514 support::token(&self.syntax, SyntaxKind::SCHEMA_KW)
8515 }
8516}
8517
8518#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8519pub struct IndexExpr {
8520 pub(crate) syntax: SyntaxNode,
8521}
8522impl IndexExpr {
8523 #[inline]
8524 pub fn l_brack_token(&self) -> Option<SyntaxToken> {
8525 support::token(&self.syntax, SyntaxKind::L_BRACK)
8526 }
8527 #[inline]
8528 pub fn r_brack_token(&self) -> Option<SyntaxToken> {
8529 support::token(&self.syntax, SyntaxKind::R_BRACK)
8530 }
8531}
8532
8533#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8534pub struct Inherit {
8535 pub(crate) syntax: SyntaxNode,
8536}
8537impl Inherit {
8538 #[inline]
8539 pub fn path(&self) -> Option<Path> {
8540 support::child(&self.syntax)
8541 }
8542 #[inline]
8543 pub fn inherit_token(&self) -> Option<SyntaxToken> {
8544 support::token(&self.syntax, SyntaxKind::INHERIT_KW)
8545 }
8546}
8547
8548#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8549pub struct InheritTable {
8550 pub(crate) syntax: SyntaxNode,
8551}
8552impl InheritTable {
8553 #[inline]
8554 pub fn path(&self) -> Option<Path> {
8555 support::child(&self.syntax)
8556 }
8557 #[inline]
8558 pub fn inherit_token(&self) -> Option<SyntaxToken> {
8559 support::token(&self.syntax, SyntaxKind::INHERIT_KW)
8560 }
8561}
8562
8563#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8564pub struct Inherits {
8565 pub(crate) syntax: SyntaxNode,
8566}
8567impl Inherits {
8568 #[inline]
8569 pub fn paths(&self) -> AstChildren<Path> {
8570 support::children(&self.syntax)
8571 }
8572 #[inline]
8573 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
8574 support::token(&self.syntax, SyntaxKind::L_PAREN)
8575 }
8576 #[inline]
8577 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
8578 support::token(&self.syntax, SyntaxKind::R_PAREN)
8579 }
8580 #[inline]
8581 pub fn inherits_token(&self) -> Option<SyntaxToken> {
8582 support::token(&self.syntax, SyntaxKind::INHERITS_KW)
8583 }
8584}
8585
8586#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8587pub struct InitiallyDeferredConstraintOption {
8588 pub(crate) syntax: SyntaxNode,
8589}
8590impl InitiallyDeferredConstraintOption {
8591 #[inline]
8592 pub fn deferred_token(&self) -> Option<SyntaxToken> {
8593 support::token(&self.syntax, SyntaxKind::DEFERRED_KW)
8594 }
8595 #[inline]
8596 pub fn initially_token(&self) -> Option<SyntaxToken> {
8597 support::token(&self.syntax, SyntaxKind::INITIALLY_KW)
8598 }
8599}
8600
8601#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8602pub struct InitiallyImmediateConstraintOption {
8603 pub(crate) syntax: SyntaxNode,
8604}
8605impl InitiallyImmediateConstraintOption {
8606 #[inline]
8607 pub fn immediate_token(&self) -> Option<SyntaxToken> {
8608 support::token(&self.syntax, SyntaxKind::IMMEDIATE_KW)
8609 }
8610 #[inline]
8611 pub fn initially_token(&self) -> Option<SyntaxToken> {
8612 support::token(&self.syntax, SyntaxKind::INITIALLY_KW)
8613 }
8614}
8615
8616#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8617pub struct Insert {
8618 pub(crate) syntax: SyntaxNode,
8619}
8620impl Insert {
8621 #[inline]
8622 pub fn alias(&self) -> Option<Alias> {
8623 support::child(&self.syntax)
8624 }
8625 #[inline]
8626 pub fn column_list(&self) -> Option<ColumnList> {
8627 support::child(&self.syntax)
8628 }
8629 #[inline]
8630 pub fn on_conflict_clause(&self) -> Option<OnConflictClause> {
8631 support::child(&self.syntax)
8632 }
8633 #[inline]
8634 pub fn path(&self) -> Option<Path> {
8635 support::child(&self.syntax)
8636 }
8637 #[inline]
8638 pub fn returning_clause(&self) -> Option<ReturningClause> {
8639 support::child(&self.syntax)
8640 }
8641 #[inline]
8642 pub fn stmt(&self) -> Option<Stmt> {
8643 support::child(&self.syntax)
8644 }
8645 #[inline]
8646 pub fn values(&self) -> Option<Values> {
8647 support::child(&self.syntax)
8648 }
8649 #[inline]
8650 pub fn with_clause(&self) -> Option<WithClause> {
8651 support::child(&self.syntax)
8652 }
8653 #[inline]
8654 pub fn default_token(&self) -> Option<SyntaxToken> {
8655 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
8656 }
8657 #[inline]
8658 pub fn insert_token(&self) -> Option<SyntaxToken> {
8659 support::token(&self.syntax, SyntaxKind::INSERT_KW)
8660 }
8661 #[inline]
8662 pub fn into_token(&self) -> Option<SyntaxToken> {
8663 support::token(&self.syntax, SyntaxKind::INTO_KW)
8664 }
8665 #[inline]
8666 pub fn overriding_token(&self) -> Option<SyntaxToken> {
8667 support::token(&self.syntax, SyntaxKind::OVERRIDING_KW)
8668 }
8669 #[inline]
8670 pub fn system_token(&self) -> Option<SyntaxToken> {
8671 support::token(&self.syntax, SyntaxKind::SYSTEM_KW)
8672 }
8673 #[inline]
8674 pub fn user_token(&self) -> Option<SyntaxToken> {
8675 support::token(&self.syntax, SyntaxKind::USER_KW)
8676 }
8677 #[inline]
8678 pub fn value_token(&self) -> Option<SyntaxToken> {
8679 support::token(&self.syntax, SyntaxKind::VALUE_KW)
8680 }
8681 #[inline]
8682 pub fn values_token(&self) -> Option<SyntaxToken> {
8683 support::token(&self.syntax, SyntaxKind::VALUES_KW)
8684 }
8685}
8686
8687#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8688pub struct IntervalType {
8689 pub(crate) syntax: SyntaxNode,
8690}
8691impl IntervalType {
8692 #[inline]
8693 pub fn literal(&self) -> Option<Literal> {
8694 support::child(&self.syntax)
8695 }
8696 #[inline]
8697 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
8698 support::token(&self.syntax, SyntaxKind::L_PAREN)
8699 }
8700 #[inline]
8701 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
8702 support::token(&self.syntax, SyntaxKind::R_PAREN)
8703 }
8704 #[inline]
8705 pub fn day_token(&self) -> Option<SyntaxToken> {
8706 support::token(&self.syntax, SyntaxKind::DAY_KW)
8707 }
8708 #[inline]
8709 pub fn hour_token(&self) -> Option<SyntaxToken> {
8710 support::token(&self.syntax, SyntaxKind::HOUR_KW)
8711 }
8712 #[inline]
8713 pub fn interval_token(&self) -> Option<SyntaxToken> {
8714 support::token(&self.syntax, SyntaxKind::INTERVAL_KW)
8715 }
8716 #[inline]
8717 pub fn minute_token(&self) -> Option<SyntaxToken> {
8718 support::token(&self.syntax, SyntaxKind::MINUTE_KW)
8719 }
8720 #[inline]
8721 pub fn month_token(&self) -> Option<SyntaxToken> {
8722 support::token(&self.syntax, SyntaxKind::MONTH_KW)
8723 }
8724 #[inline]
8725 pub fn second_token(&self) -> Option<SyntaxToken> {
8726 support::token(&self.syntax, SyntaxKind::SECOND_KW)
8727 }
8728 #[inline]
8729 pub fn to_token(&self) -> Option<SyntaxToken> {
8730 support::token(&self.syntax, SyntaxKind::TO_KW)
8731 }
8732 #[inline]
8733 pub fn year_token(&self) -> Option<SyntaxToken> {
8734 support::token(&self.syntax, SyntaxKind::YEAR_KW)
8735 }
8736}
8737
8738#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8739pub struct IntoClause {
8740 pub(crate) syntax: SyntaxNode,
8741}
8742impl IntoClause {
8743 #[inline]
8744 pub fn path(&self) -> Option<Path> {
8745 support::child(&self.syntax)
8746 }
8747 #[inline]
8748 pub fn into_token(&self) -> Option<SyntaxToken> {
8749 support::token(&self.syntax, SyntaxKind::INTO_KW)
8750 }
8751}
8752
8753#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8754pub struct IntoSchema {
8755 pub(crate) syntax: SyntaxNode,
8756}
8757impl IntoSchema {
8758 #[inline]
8759 pub fn name_ref(&self) -> Option<NameRef> {
8760 support::child(&self.syntax)
8761 }
8762 #[inline]
8763 pub fn into_token(&self) -> Option<SyntaxToken> {
8764 support::token(&self.syntax, SyntaxKind::INTO_KW)
8765 }
8766}
8767
8768#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8769pub struct IsDistinctFrom {
8770 pub(crate) syntax: SyntaxNode,
8771}
8772impl IsDistinctFrom {
8773 #[inline]
8774 pub fn distinct_token(&self) -> Option<SyntaxToken> {
8775 support::token(&self.syntax, SyntaxKind::DISTINCT_KW)
8776 }
8777 #[inline]
8778 pub fn from_token(&self) -> Option<SyntaxToken> {
8779 support::token(&self.syntax, SyntaxKind::FROM_KW)
8780 }
8781 #[inline]
8782 pub fn is_token(&self) -> Option<SyntaxToken> {
8783 support::token(&self.syntax, SyntaxKind::IS_KW)
8784 }
8785}
8786
8787#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8788pub struct IsJson {
8789 pub(crate) syntax: SyntaxNode,
8790}
8791impl IsJson {
8792 #[inline]
8793 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
8794 support::child(&self.syntax)
8795 }
8796 #[inline]
8797 pub fn is_token(&self) -> Option<SyntaxToken> {
8798 support::token(&self.syntax, SyntaxKind::IS_KW)
8799 }
8800 #[inline]
8801 pub fn json_token(&self) -> Option<SyntaxToken> {
8802 support::token(&self.syntax, SyntaxKind::JSON_KW)
8803 }
8804}
8805
8806#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8807pub struct IsJsonArray {
8808 pub(crate) syntax: SyntaxNode,
8809}
8810impl IsJsonArray {
8811 #[inline]
8812 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
8813 support::child(&self.syntax)
8814 }
8815 #[inline]
8816 pub fn array_token(&self) -> Option<SyntaxToken> {
8817 support::token(&self.syntax, SyntaxKind::ARRAY_KW)
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}
8828
8829#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8830pub struct IsJsonObject {
8831 pub(crate) syntax: SyntaxNode,
8832}
8833impl IsJsonObject {
8834 #[inline]
8835 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
8836 support::child(&self.syntax)
8837 }
8838 #[inline]
8839 pub fn is_token(&self) -> Option<SyntaxToken> {
8840 support::token(&self.syntax, SyntaxKind::IS_KW)
8841 }
8842 #[inline]
8843 pub fn json_token(&self) -> Option<SyntaxToken> {
8844 support::token(&self.syntax, SyntaxKind::JSON_KW)
8845 }
8846 #[inline]
8847 pub fn object_token(&self) -> Option<SyntaxToken> {
8848 support::token(&self.syntax, SyntaxKind::OBJECT_KW)
8849 }
8850}
8851
8852#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8853pub struct IsJsonScalar {
8854 pub(crate) syntax: SyntaxNode,
8855}
8856impl IsJsonScalar {
8857 #[inline]
8858 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
8859 support::child(&self.syntax)
8860 }
8861 #[inline]
8862 pub fn is_token(&self) -> Option<SyntaxToken> {
8863 support::token(&self.syntax, SyntaxKind::IS_KW)
8864 }
8865 #[inline]
8866 pub fn json_token(&self) -> Option<SyntaxToken> {
8867 support::token(&self.syntax, SyntaxKind::JSON_KW)
8868 }
8869 #[inline]
8870 pub fn scalar_token(&self) -> Option<SyntaxToken> {
8871 support::token(&self.syntax, SyntaxKind::SCALAR_KW)
8872 }
8873}
8874
8875#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8876pub struct IsJsonValue {
8877 pub(crate) syntax: SyntaxNode,
8878}
8879impl IsJsonValue {
8880 #[inline]
8881 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
8882 support::child(&self.syntax)
8883 }
8884 #[inline]
8885 pub fn is_token(&self) -> Option<SyntaxToken> {
8886 support::token(&self.syntax, SyntaxKind::IS_KW)
8887 }
8888 #[inline]
8889 pub fn json_token(&self) -> Option<SyntaxToken> {
8890 support::token(&self.syntax, SyntaxKind::JSON_KW)
8891 }
8892 #[inline]
8893 pub fn value_token(&self) -> Option<SyntaxToken> {
8894 support::token(&self.syntax, SyntaxKind::VALUE_KW)
8895 }
8896}
8897
8898#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8899pub struct IsNormalized {
8900 pub(crate) syntax: SyntaxNode,
8901}
8902impl IsNormalized {
8903 #[inline]
8904 pub fn unicode_normal_form(&self) -> Option<UnicodeNormalForm> {
8905 support::child(&self.syntax)
8906 }
8907 #[inline]
8908 pub fn is_token(&self) -> Option<SyntaxToken> {
8909 support::token(&self.syntax, SyntaxKind::IS_KW)
8910 }
8911 #[inline]
8912 pub fn normalized_token(&self) -> Option<SyntaxToken> {
8913 support::token(&self.syntax, SyntaxKind::NORMALIZED_KW)
8914 }
8915}
8916
8917#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8918pub struct IsNot {
8919 pub(crate) syntax: SyntaxNode,
8920}
8921impl IsNot {
8922 #[inline]
8923 pub fn is_token(&self) -> Option<SyntaxToken> {
8924 support::token(&self.syntax, SyntaxKind::IS_KW)
8925 }
8926 #[inline]
8927 pub fn not_token(&self) -> Option<SyntaxToken> {
8928 support::token(&self.syntax, SyntaxKind::NOT_KW)
8929 }
8930}
8931
8932#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8933pub struct IsNotDistinctFrom {
8934 pub(crate) syntax: SyntaxNode,
8935}
8936impl IsNotDistinctFrom {
8937 #[inline]
8938 pub fn distinct_token(&self) -> Option<SyntaxToken> {
8939 support::token(&self.syntax, SyntaxKind::DISTINCT_KW)
8940 }
8941 #[inline]
8942 pub fn from_token(&self) -> Option<SyntaxToken> {
8943 support::token(&self.syntax, SyntaxKind::FROM_KW)
8944 }
8945 #[inline]
8946 pub fn is_token(&self) -> Option<SyntaxToken> {
8947 support::token(&self.syntax, SyntaxKind::IS_KW)
8948 }
8949 #[inline]
8950 pub fn not_token(&self) -> Option<SyntaxToken> {
8951 support::token(&self.syntax, SyntaxKind::NOT_KW)
8952 }
8953}
8954
8955#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8956pub struct IsNotJson {
8957 pub(crate) syntax: SyntaxNode,
8958}
8959impl IsNotJson {
8960 #[inline]
8961 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
8962 support::child(&self.syntax)
8963 }
8964 #[inline]
8965 pub fn is_token(&self) -> Option<SyntaxToken> {
8966 support::token(&self.syntax, SyntaxKind::IS_KW)
8967 }
8968 #[inline]
8969 pub fn json_token(&self) -> Option<SyntaxToken> {
8970 support::token(&self.syntax, SyntaxKind::JSON_KW)
8971 }
8972 #[inline]
8973 pub fn not_token(&self) -> Option<SyntaxToken> {
8974 support::token(&self.syntax, SyntaxKind::NOT_KW)
8975 }
8976}
8977
8978#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8979pub struct IsNotJsonArray {
8980 pub(crate) syntax: SyntaxNode,
8981}
8982impl IsNotJsonArray {
8983 #[inline]
8984 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
8985 support::child(&self.syntax)
8986 }
8987 #[inline]
8988 pub fn array_token(&self) -> Option<SyntaxToken> {
8989 support::token(&self.syntax, SyntaxKind::ARRAY_KW)
8990 }
8991 #[inline]
8992 pub fn is_token(&self) -> Option<SyntaxToken> {
8993 support::token(&self.syntax, SyntaxKind::IS_KW)
8994 }
8995 #[inline]
8996 pub fn json_token(&self) -> Option<SyntaxToken> {
8997 support::token(&self.syntax, SyntaxKind::JSON_KW)
8998 }
8999 #[inline]
9000 pub fn not_token(&self) -> Option<SyntaxToken> {
9001 support::token(&self.syntax, SyntaxKind::NOT_KW)
9002 }
9003}
9004
9005#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9006pub struct IsNotJsonObject {
9007 pub(crate) syntax: SyntaxNode,
9008}
9009impl IsNotJsonObject {
9010 #[inline]
9011 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
9012 support::child(&self.syntax)
9013 }
9014 #[inline]
9015 pub fn is_token(&self) -> Option<SyntaxToken> {
9016 support::token(&self.syntax, SyntaxKind::IS_KW)
9017 }
9018 #[inline]
9019 pub fn json_token(&self) -> Option<SyntaxToken> {
9020 support::token(&self.syntax, SyntaxKind::JSON_KW)
9021 }
9022 #[inline]
9023 pub fn not_token(&self) -> Option<SyntaxToken> {
9024 support::token(&self.syntax, SyntaxKind::NOT_KW)
9025 }
9026 #[inline]
9027 pub fn object_token(&self) -> Option<SyntaxToken> {
9028 support::token(&self.syntax, SyntaxKind::OBJECT_KW)
9029 }
9030}
9031
9032#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9033pub struct IsNotJsonScalar {
9034 pub(crate) syntax: SyntaxNode,
9035}
9036impl IsNotJsonScalar {
9037 #[inline]
9038 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
9039 support::child(&self.syntax)
9040 }
9041 #[inline]
9042 pub fn is_token(&self) -> Option<SyntaxToken> {
9043 support::token(&self.syntax, SyntaxKind::IS_KW)
9044 }
9045 #[inline]
9046 pub fn json_token(&self) -> Option<SyntaxToken> {
9047 support::token(&self.syntax, SyntaxKind::JSON_KW)
9048 }
9049 #[inline]
9050 pub fn not_token(&self) -> Option<SyntaxToken> {
9051 support::token(&self.syntax, SyntaxKind::NOT_KW)
9052 }
9053 #[inline]
9054 pub fn scalar_token(&self) -> Option<SyntaxToken> {
9055 support::token(&self.syntax, SyntaxKind::SCALAR_KW)
9056 }
9057}
9058
9059#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9060pub struct IsNotJsonValue {
9061 pub(crate) syntax: SyntaxNode,
9062}
9063impl IsNotJsonValue {
9064 #[inline]
9065 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
9066 support::child(&self.syntax)
9067 }
9068 #[inline]
9069 pub fn is_token(&self) -> Option<SyntaxToken> {
9070 support::token(&self.syntax, SyntaxKind::IS_KW)
9071 }
9072 #[inline]
9073 pub fn json_token(&self) -> Option<SyntaxToken> {
9074 support::token(&self.syntax, SyntaxKind::JSON_KW)
9075 }
9076 #[inline]
9077 pub fn not_token(&self) -> Option<SyntaxToken> {
9078 support::token(&self.syntax, SyntaxKind::NOT_KW)
9079 }
9080 #[inline]
9081 pub fn value_token(&self) -> Option<SyntaxToken> {
9082 support::token(&self.syntax, SyntaxKind::VALUE_KW)
9083 }
9084}
9085
9086#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9087pub struct IsNotNormalized {
9088 pub(crate) syntax: SyntaxNode,
9089}
9090impl IsNotNormalized {
9091 #[inline]
9092 pub fn unicode_normal_form(&self) -> Option<UnicodeNormalForm> {
9093 support::child(&self.syntax)
9094 }
9095 #[inline]
9096 pub fn is_token(&self) -> Option<SyntaxToken> {
9097 support::token(&self.syntax, SyntaxKind::IS_KW)
9098 }
9099 #[inline]
9100 pub fn normalized_token(&self) -> Option<SyntaxToken> {
9101 support::token(&self.syntax, SyntaxKind::NORMALIZED_KW)
9102 }
9103 #[inline]
9104 pub fn not_token(&self) -> Option<SyntaxToken> {
9105 support::token(&self.syntax, SyntaxKind::NOT_KW)
9106 }
9107}
9108
9109#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9110pub struct Join {
9111 pub(crate) syntax: SyntaxNode,
9112}
9113impl Join {
9114 #[inline]
9115 pub fn from_item(&self) -> Option<FromItem> {
9116 support::child(&self.syntax)
9117 }
9118 #[inline]
9119 pub fn join_type(&self) -> Option<JoinType> {
9120 support::child(&self.syntax)
9121 }
9122 #[inline]
9123 pub fn on_clause(&self) -> Option<OnClause> {
9124 support::child(&self.syntax)
9125 }
9126 #[inline]
9127 pub fn using_clause(&self) -> Option<JoinUsingClause> {
9128 support::child(&self.syntax)
9129 }
9130 #[inline]
9131 pub fn natural_token(&self) -> Option<SyntaxToken> {
9132 support::token(&self.syntax, SyntaxKind::NATURAL_KW)
9133 }
9134}
9135
9136#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9137pub struct JoinCross {
9138 pub(crate) syntax: SyntaxNode,
9139}
9140impl JoinCross {
9141 #[inline]
9142 pub fn cross_token(&self) -> Option<SyntaxToken> {
9143 support::token(&self.syntax, SyntaxKind::CROSS_KW)
9144 }
9145 #[inline]
9146 pub fn join_token(&self) -> Option<SyntaxToken> {
9147 support::token(&self.syntax, SyntaxKind::JOIN_KW)
9148 }
9149}
9150
9151#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9152pub struct JoinExpr {
9153 pub(crate) syntax: SyntaxNode,
9154}
9155impl JoinExpr {
9156 #[inline]
9157 pub fn from_item(&self) -> Option<FromItem> {
9158 support::child(&self.syntax)
9159 }
9160 #[inline]
9161 pub fn join(&self) -> Option<Join> {
9162 support::child(&self.syntax)
9163 }
9164 #[inline]
9165 pub fn join_expr(&self) -> Option<JoinExpr> {
9166 support::child(&self.syntax)
9167 }
9168}
9169
9170#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9171pub struct JoinFull {
9172 pub(crate) syntax: SyntaxNode,
9173}
9174impl JoinFull {
9175 #[inline]
9176 pub fn full_token(&self) -> Option<SyntaxToken> {
9177 support::token(&self.syntax, SyntaxKind::FULL_KW)
9178 }
9179 #[inline]
9180 pub fn join_token(&self) -> Option<SyntaxToken> {
9181 support::token(&self.syntax, SyntaxKind::JOIN_KW)
9182 }
9183 #[inline]
9184 pub fn outer_token(&self) -> Option<SyntaxToken> {
9185 support::token(&self.syntax, SyntaxKind::OUTER_KW)
9186 }
9187}
9188
9189#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9190pub struct JoinInner {
9191 pub(crate) syntax: SyntaxNode,
9192}
9193impl JoinInner {
9194 #[inline]
9195 pub fn inner_token(&self) -> Option<SyntaxToken> {
9196 support::token(&self.syntax, SyntaxKind::INNER_KW)
9197 }
9198 #[inline]
9199 pub fn join_token(&self) -> Option<SyntaxToken> {
9200 support::token(&self.syntax, SyntaxKind::JOIN_KW)
9201 }
9202}
9203
9204#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9205pub struct JoinLeft {
9206 pub(crate) syntax: SyntaxNode,
9207}
9208impl JoinLeft {
9209 #[inline]
9210 pub fn join_token(&self) -> Option<SyntaxToken> {
9211 support::token(&self.syntax, SyntaxKind::JOIN_KW)
9212 }
9213 #[inline]
9214 pub fn left_token(&self) -> Option<SyntaxToken> {
9215 support::token(&self.syntax, SyntaxKind::LEFT_KW)
9216 }
9217 #[inline]
9218 pub fn outer_token(&self) -> Option<SyntaxToken> {
9219 support::token(&self.syntax, SyntaxKind::OUTER_KW)
9220 }
9221}
9222
9223#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9224pub struct JoinRight {
9225 pub(crate) syntax: SyntaxNode,
9226}
9227impl JoinRight {
9228 #[inline]
9229 pub fn join_token(&self) -> Option<SyntaxToken> {
9230 support::token(&self.syntax, SyntaxKind::JOIN_KW)
9231 }
9232 #[inline]
9233 pub fn outer_token(&self) -> Option<SyntaxToken> {
9234 support::token(&self.syntax, SyntaxKind::OUTER_KW)
9235 }
9236 #[inline]
9237 pub fn right_token(&self) -> Option<SyntaxToken> {
9238 support::token(&self.syntax, SyntaxKind::RIGHT_KW)
9239 }
9240}
9241
9242#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9243pub struct JoinUsingClause {
9244 pub(crate) syntax: SyntaxNode,
9245}
9246impl JoinUsingClause {
9247 #[inline]
9248 pub fn alias(&self) -> Option<Alias> {
9249 support::child(&self.syntax)
9250 }
9251 #[inline]
9252 pub fn column_list(&self) -> Option<ColumnList> {
9253 support::child(&self.syntax)
9254 }
9255 #[inline]
9256 pub fn using_token(&self) -> Option<SyntaxToken> {
9257 support::token(&self.syntax, SyntaxKind::USING_KW)
9258 }
9259}
9260
9261#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9262pub struct JsonArrayAggFn {
9263 pub(crate) syntax: SyntaxNode,
9264}
9265impl JsonArrayAggFn {
9266 #[inline]
9267 pub fn expr(&self) -> Option<Expr> {
9268 support::child(&self.syntax)
9269 }
9270 #[inline]
9271 pub fn json_null_clause(&self) -> Option<JsonNullClause> {
9272 support::child(&self.syntax)
9273 }
9274 #[inline]
9275 pub fn json_returning_clause(&self) -> Option<JsonReturningClause> {
9276 support::child(&self.syntax)
9277 }
9278 #[inline]
9279 pub fn json_select_formats(&self) -> AstChildren<JsonSelectFormat> {
9280 support::children(&self.syntax)
9281 }
9282 #[inline]
9283 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
9284 support::token(&self.syntax, SyntaxKind::L_PAREN)
9285 }
9286 #[inline]
9287 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
9288 support::token(&self.syntax, SyntaxKind::R_PAREN)
9289 }
9290 #[inline]
9291 pub fn json_arrayagg_token(&self) -> Option<SyntaxToken> {
9292 support::token(&self.syntax, SyntaxKind::JSON_ARRAYAGG_KW)
9293 }
9294}
9295
9296#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9297pub struct JsonArrayFn {
9298 pub(crate) syntax: SyntaxNode,
9299}
9300impl JsonArrayFn {
9301 #[inline]
9302 pub fn json_expr_formats(&self) -> AstChildren<JsonExprFormat> {
9303 support::children(&self.syntax)
9304 }
9305 #[inline]
9306 pub fn json_null_clause(&self) -> Option<JsonNullClause> {
9307 support::child(&self.syntax)
9308 }
9309 #[inline]
9310 pub fn json_returning_clause(&self) -> Option<JsonReturningClause> {
9311 support::child(&self.syntax)
9312 }
9313 #[inline]
9314 pub fn json_select_formats(&self) -> AstChildren<JsonSelectFormat> {
9315 support::children(&self.syntax)
9316 }
9317 #[inline]
9318 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
9319 support::token(&self.syntax, SyntaxKind::L_PAREN)
9320 }
9321 #[inline]
9322 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
9323 support::token(&self.syntax, SyntaxKind::R_PAREN)
9324 }
9325 #[inline]
9326 pub fn json_array_token(&self) -> Option<SyntaxToken> {
9327 support::token(&self.syntax, SyntaxKind::JSON_ARRAY_KW)
9328 }
9329}
9330
9331#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9332pub struct JsonBehaviorClause {
9333 pub(crate) syntax: SyntaxNode,
9334}
9335impl JsonBehaviorClause {
9336 #[inline]
9337 pub fn json_behavior(&self) -> Option<JsonBehavior> {
9338 support::child(&self.syntax)
9339 }
9340}
9341
9342#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9343pub struct JsonBehaviorDefault {
9344 pub(crate) syntax: SyntaxNode,
9345}
9346impl JsonBehaviorDefault {
9347 #[inline]
9348 pub fn expr(&self) -> Option<Expr> {
9349 support::child(&self.syntax)
9350 }
9351 #[inline]
9352 pub fn default_token(&self) -> Option<SyntaxToken> {
9353 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
9354 }
9355}
9356
9357#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9358pub struct JsonBehaviorEmptyArray {
9359 pub(crate) syntax: SyntaxNode,
9360}
9361impl JsonBehaviorEmptyArray {
9362 #[inline]
9363 pub fn array_token(&self) -> Option<SyntaxToken> {
9364 support::token(&self.syntax, SyntaxKind::ARRAY_KW)
9365 }
9366 #[inline]
9367 pub fn empty_token(&self) -> Option<SyntaxToken> {
9368 support::token(&self.syntax, SyntaxKind::EMPTY_KW)
9369 }
9370}
9371
9372#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9373pub struct JsonBehaviorEmptyObject {
9374 pub(crate) syntax: SyntaxNode,
9375}
9376impl JsonBehaviorEmptyObject {
9377 #[inline]
9378 pub fn empty_token(&self) -> Option<SyntaxToken> {
9379 support::token(&self.syntax, SyntaxKind::EMPTY_KW)
9380 }
9381 #[inline]
9382 pub fn object_token(&self) -> Option<SyntaxToken> {
9383 support::token(&self.syntax, SyntaxKind::OBJECT_KW)
9384 }
9385}
9386
9387#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9388pub struct JsonBehaviorError {
9389 pub(crate) syntax: SyntaxNode,
9390}
9391impl JsonBehaviorError {
9392 #[inline]
9393 pub fn error_token(&self) -> Option<SyntaxToken> {
9394 support::token(&self.syntax, SyntaxKind::ERROR_KW)
9395 }
9396}
9397
9398#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9399pub struct JsonBehaviorFalse {
9400 pub(crate) syntax: SyntaxNode,
9401}
9402impl JsonBehaviorFalse {
9403 #[inline]
9404 pub fn false_token(&self) -> Option<SyntaxToken> {
9405 support::token(&self.syntax, SyntaxKind::FALSE_KW)
9406 }
9407}
9408
9409#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9410pub struct JsonBehaviorNull {
9411 pub(crate) syntax: SyntaxNode,
9412}
9413impl JsonBehaviorNull {
9414 #[inline]
9415 pub fn null_token(&self) -> Option<SyntaxToken> {
9416 support::token(&self.syntax, SyntaxKind::NULL_KW)
9417 }
9418}
9419
9420#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9421pub struct JsonBehaviorTrue {
9422 pub(crate) syntax: SyntaxNode,
9423}
9424impl JsonBehaviorTrue {
9425 #[inline]
9426 pub fn true_token(&self) -> Option<SyntaxToken> {
9427 support::token(&self.syntax, SyntaxKind::TRUE_KW)
9428 }
9429}
9430
9431#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9432pub struct JsonBehaviorUnknown {
9433 pub(crate) syntax: SyntaxNode,
9434}
9435impl JsonBehaviorUnknown {
9436 #[inline]
9437 pub fn unknown_token(&self) -> Option<SyntaxToken> {
9438 support::token(&self.syntax, SyntaxKind::UNKNOWN_KW)
9439 }
9440}
9441
9442#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9443pub struct JsonEncodingClause {
9444 pub(crate) syntax: SyntaxNode,
9445}
9446impl JsonEncodingClause {
9447 #[inline]
9448 pub fn name_ref(&self) -> Option<NameRef> {
9449 support::child(&self.syntax)
9450 }
9451 #[inline]
9452 pub fn encoding_token(&self) -> Option<SyntaxToken> {
9453 support::token(&self.syntax, SyntaxKind::ENCODING_KW)
9454 }
9455}
9456
9457#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9458pub struct JsonExistsFn {
9459 pub(crate) syntax: SyntaxNode,
9460}
9461impl JsonExistsFn {
9462 #[inline]
9463 pub fn expr(&self) -> Option<Expr> {
9464 support::child(&self.syntax)
9465 }
9466 #[inline]
9467 pub fn json_format_clause(&self) -> Option<JsonFormatClause> {
9468 support::child(&self.syntax)
9469 }
9470 #[inline]
9471 pub fn json_on_error_clause(&self) -> Option<JsonOnErrorClause> {
9472 support::child(&self.syntax)
9473 }
9474 #[inline]
9475 pub fn json_passing_clause(&self) -> Option<JsonPassingClause> {
9476 support::child(&self.syntax)
9477 }
9478 #[inline]
9479 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
9480 support::token(&self.syntax, SyntaxKind::L_PAREN)
9481 }
9482 #[inline]
9483 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
9484 support::token(&self.syntax, SyntaxKind::R_PAREN)
9485 }
9486 #[inline]
9487 pub fn comma_token(&self) -> Option<SyntaxToken> {
9488 support::token(&self.syntax, SyntaxKind::COMMA)
9489 }
9490 #[inline]
9491 pub fn json_exists_token(&self) -> Option<SyntaxToken> {
9492 support::token(&self.syntax, SyntaxKind::JSON_EXISTS_KW)
9493 }
9494}
9495
9496#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9497pub struct JsonExprFormat {
9498 pub(crate) syntax: SyntaxNode,
9499}
9500impl JsonExprFormat {
9501 #[inline]
9502 pub fn expr(&self) -> Option<Expr> {
9503 support::child(&self.syntax)
9504 }
9505 #[inline]
9506 pub fn json_format_clause(&self) -> Option<JsonFormatClause> {
9507 support::child(&self.syntax)
9508 }
9509}
9510
9511#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9512pub struct JsonFn {
9513 pub(crate) syntax: SyntaxNode,
9514}
9515impl JsonFn {
9516 #[inline]
9517 pub fn json_expr_format(&self) -> Option<JsonExprFormat> {
9518 support::child(&self.syntax)
9519 }
9520 #[inline]
9521 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
9522 support::child(&self.syntax)
9523 }
9524 #[inline]
9525 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
9526 support::token(&self.syntax, SyntaxKind::L_PAREN)
9527 }
9528 #[inline]
9529 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
9530 support::token(&self.syntax, SyntaxKind::R_PAREN)
9531 }
9532 #[inline]
9533 pub fn json_token(&self) -> Option<SyntaxToken> {
9534 support::token(&self.syntax, SyntaxKind::JSON_KW)
9535 }
9536}
9537
9538#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9539pub struct JsonFormatClause {
9540 pub(crate) syntax: SyntaxNode,
9541}
9542impl JsonFormatClause {
9543 #[inline]
9544 pub fn json_encoding_clause(&self) -> Option<JsonEncodingClause> {
9545 support::child(&self.syntax)
9546 }
9547 #[inline]
9548 pub fn format_token(&self) -> Option<SyntaxToken> {
9549 support::token(&self.syntax, SyntaxKind::FORMAT_KW)
9550 }
9551 #[inline]
9552 pub fn json_token(&self) -> Option<SyntaxToken> {
9553 support::token(&self.syntax, SyntaxKind::JSON_KW)
9554 }
9555}
9556
9557#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9558pub struct JsonKeyValue {
9559 pub(crate) syntax: SyntaxNode,
9560}
9561impl JsonKeyValue {
9562 #[inline]
9563 pub fn expr(&self) -> Option<Expr> {
9564 support::child(&self.syntax)
9565 }
9566 #[inline]
9567 pub fn json_value_expr(&self) -> Option<JsonValueExpr> {
9568 support::child(&self.syntax)
9569 }
9570 #[inline]
9571 pub fn colon_token(&self) -> Option<SyntaxToken> {
9572 support::token(&self.syntax, SyntaxKind::COLON)
9573 }
9574}
9575
9576#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9577pub struct JsonKeysUniqueClause {
9578 pub(crate) syntax: SyntaxNode,
9579}
9580impl JsonKeysUniqueClause {
9581 #[inline]
9582 pub fn keys_token(&self) -> Option<SyntaxToken> {
9583 support::token(&self.syntax, SyntaxKind::KEYS_KW)
9584 }
9585 #[inline]
9586 pub fn unique_token(&self) -> Option<SyntaxToken> {
9587 support::token(&self.syntax, SyntaxKind::UNIQUE_KW)
9588 }
9589 #[inline]
9590 pub fn with_token(&self) -> Option<SyntaxToken> {
9591 support::token(&self.syntax, SyntaxKind::WITH_KW)
9592 }
9593 #[inline]
9594 pub fn without_token(&self) -> Option<SyntaxToken> {
9595 support::token(&self.syntax, SyntaxKind::WITHOUT_KW)
9596 }
9597}
9598
9599#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9600pub struct JsonNullClause {
9601 pub(crate) syntax: SyntaxNode,
9602}
9603impl JsonNullClause {
9604 #[inline]
9605 pub fn absent_token(&self) -> Option<SyntaxToken> {
9606 support::token(&self.syntax, SyntaxKind::ABSENT_KW)
9607 }
9608 #[inline]
9609 pub fn null_token(&self) -> Option<SyntaxToken> {
9610 support::token(&self.syntax, SyntaxKind::NULL_KW)
9611 }
9612 #[inline]
9613 pub fn on_token(&self) -> Option<SyntaxToken> {
9614 support::token(&self.syntax, SyntaxKind::ON_KW)
9615 }
9616}
9617
9618#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9619pub struct JsonObjectAggFn {
9620 pub(crate) syntax: SyntaxNode,
9621}
9622impl JsonObjectAggFn {
9623 #[inline]
9624 pub fn json_key_value(&self) -> Option<JsonKeyValue> {
9625 support::child(&self.syntax)
9626 }
9627 #[inline]
9628 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
9629 support::child(&self.syntax)
9630 }
9631 #[inline]
9632 pub fn json_null_clause(&self) -> Option<JsonNullClause> {
9633 support::child(&self.syntax)
9634 }
9635 #[inline]
9636 pub fn json_returning_clause(&self) -> Option<JsonReturningClause> {
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_objectagg_token(&self) -> Option<SyntaxToken> {
9649 support::token(&self.syntax, SyntaxKind::JSON_OBJECTAGG_KW)
9650 }
9651}
9652
9653#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9654pub struct JsonObjectFn {
9655 pub(crate) syntax: SyntaxNode,
9656}
9657impl JsonObjectFn {
9658 #[inline]
9659 pub fn json_key_values(&self) -> AstChildren<JsonKeyValue> {
9660 support::children(&self.syntax)
9661 }
9662 #[inline]
9663 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
9664 support::child(&self.syntax)
9665 }
9666 #[inline]
9667 pub fn json_null_clause(&self) -> Option<JsonNullClause> {
9668 support::child(&self.syntax)
9669 }
9670 #[inline]
9671 pub fn json_returning_clause(&self) -> Option<JsonReturningClause> {
9672 support::child(&self.syntax)
9673 }
9674 #[inline]
9675 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
9676 support::token(&self.syntax, SyntaxKind::L_PAREN)
9677 }
9678 #[inline]
9679 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
9680 support::token(&self.syntax, SyntaxKind::R_PAREN)
9681 }
9682 #[inline]
9683 pub fn json_object_token(&self) -> Option<SyntaxToken> {
9684 support::token(&self.syntax, SyntaxKind::JSON_OBJECT_KW)
9685 }
9686}
9687
9688#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9689pub struct JsonOnEmptyClause {
9690 pub(crate) syntax: SyntaxNode,
9691}
9692impl JsonOnEmptyClause {
9693 #[inline]
9694 pub fn json_behavior(&self) -> Option<JsonBehavior> {
9695 support::child(&self.syntax)
9696 }
9697 #[inline]
9698 pub fn empty_token(&self) -> Option<SyntaxToken> {
9699 support::token(&self.syntax, SyntaxKind::EMPTY_KW)
9700 }
9701 #[inline]
9702 pub fn on_token(&self) -> Option<SyntaxToken> {
9703 support::token(&self.syntax, SyntaxKind::ON_KW)
9704 }
9705}
9706
9707#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9708pub struct JsonOnErrorClause {
9709 pub(crate) syntax: SyntaxNode,
9710}
9711impl JsonOnErrorClause {
9712 #[inline]
9713 pub fn json_behavior(&self) -> Option<JsonBehavior> {
9714 support::child(&self.syntax)
9715 }
9716 #[inline]
9717 pub fn error_token(&self) -> Option<SyntaxToken> {
9718 support::token(&self.syntax, SyntaxKind::ERROR_KW)
9719 }
9720 #[inline]
9721 pub fn on_token(&self) -> Option<SyntaxToken> {
9722 support::token(&self.syntax, SyntaxKind::ON_KW)
9723 }
9724}
9725
9726#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9727pub struct JsonPassingArg {
9728 pub(crate) syntax: SyntaxNode,
9729}
9730impl JsonPassingArg {
9731 #[inline]
9732 pub fn expr(&self) -> Option<Expr> {
9733 support::child(&self.syntax)
9734 }
9735}
9736
9737#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9738pub struct JsonPassingClause {
9739 pub(crate) syntax: SyntaxNode,
9740}
9741impl JsonPassingClause {
9742 #[inline]
9743 pub fn json_passing_args(&self) -> AstChildren<JsonPassingArg> {
9744 support::children(&self.syntax)
9745 }
9746 #[inline]
9747 pub fn passing_token(&self) -> Option<SyntaxToken> {
9748 support::token(&self.syntax, SyntaxKind::PASSING_KW)
9749 }
9750}
9751
9752#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9753pub struct JsonPathClause {
9754 pub(crate) syntax: SyntaxNode,
9755}
9756impl JsonPathClause {
9757 #[inline]
9758 pub fn expr(&self) -> Option<Expr> {
9759 support::child(&self.syntax)
9760 }
9761 #[inline]
9762 pub fn path_token(&self) -> Option<SyntaxToken> {
9763 support::token(&self.syntax, SyntaxKind::PATH_KW)
9764 }
9765}
9766
9767#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9768pub struct JsonQueryFn {
9769 pub(crate) syntax: SyntaxNode,
9770}
9771impl JsonQueryFn {
9772 #[inline]
9773 pub fn expr(&self) -> Option<Expr> {
9774 support::child(&self.syntax)
9775 }
9776 #[inline]
9777 pub fn json_behavior_clause(&self) -> Option<JsonBehaviorClause> {
9778 support::child(&self.syntax)
9779 }
9780 #[inline]
9781 pub fn json_format_clause(&self) -> Option<JsonFormatClause> {
9782 support::child(&self.syntax)
9783 }
9784 #[inline]
9785 pub fn json_passing_clause(&self) -> Option<JsonPassingClause> {
9786 support::child(&self.syntax)
9787 }
9788 #[inline]
9789 pub fn json_quotes_clause(&self) -> Option<JsonQuotesClause> {
9790 support::child(&self.syntax)
9791 }
9792 #[inline]
9793 pub fn json_returning_clause(&self) -> Option<JsonReturningClause> {
9794 support::child(&self.syntax)
9795 }
9796 #[inline]
9797 pub fn json_wrapper_behavior_clause(&self) -> Option<JsonWrapperBehaviorClause> {
9798 support::child(&self.syntax)
9799 }
9800 #[inline]
9801 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
9802 support::token(&self.syntax, SyntaxKind::L_PAREN)
9803 }
9804 #[inline]
9805 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
9806 support::token(&self.syntax, SyntaxKind::R_PAREN)
9807 }
9808 #[inline]
9809 pub fn comma_token(&self) -> Option<SyntaxToken> {
9810 support::token(&self.syntax, SyntaxKind::COMMA)
9811 }
9812 #[inline]
9813 pub fn json_query_token(&self) -> Option<SyntaxToken> {
9814 support::token(&self.syntax, SyntaxKind::JSON_QUERY_KW)
9815 }
9816}
9817
9818#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9819pub struct JsonQuotesClause {
9820 pub(crate) syntax: SyntaxNode,
9821}
9822impl JsonQuotesClause {
9823 #[inline]
9824 pub fn keep_token(&self) -> Option<SyntaxToken> {
9825 support::token(&self.syntax, SyntaxKind::KEEP_KW)
9826 }
9827 #[inline]
9828 pub fn omit_token(&self) -> Option<SyntaxToken> {
9829 support::token(&self.syntax, SyntaxKind::OMIT_KW)
9830 }
9831 #[inline]
9832 pub fn quotes_token(&self) -> Option<SyntaxToken> {
9833 support::token(&self.syntax, SyntaxKind::QUOTES_KW)
9834 }
9835}
9836
9837#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9838pub struct JsonReturningClause {
9839 pub(crate) syntax: SyntaxNode,
9840}
9841impl JsonReturningClause {
9842 #[inline]
9843 pub fn ty(&self) -> Option<Type> {
9844 support::child(&self.syntax)
9845 }
9846 #[inline]
9847 pub fn returning_token(&self) -> Option<SyntaxToken> {
9848 support::token(&self.syntax, SyntaxKind::RETURNING_KW)
9849 }
9850}
9851
9852#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9853pub struct JsonScalarFn {
9854 pub(crate) syntax: SyntaxNode,
9855}
9856impl JsonScalarFn {
9857 #[inline]
9858 pub fn expr(&self) -> Option<Expr> {
9859 support::child(&self.syntax)
9860 }
9861 #[inline]
9862 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
9863 support::token(&self.syntax, SyntaxKind::L_PAREN)
9864 }
9865 #[inline]
9866 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
9867 support::token(&self.syntax, SyntaxKind::R_PAREN)
9868 }
9869 #[inline]
9870 pub fn json_scalar_token(&self) -> Option<SyntaxToken> {
9871 support::token(&self.syntax, SyntaxKind::JSON_SCALAR_KW)
9872 }
9873}
9874
9875#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9876pub struct JsonSelectFormat {
9877 pub(crate) syntax: SyntaxNode,
9878}
9879impl JsonSelectFormat {
9880 #[inline]
9881 pub fn json_format_clause(&self) -> Option<JsonFormatClause> {
9882 support::child(&self.syntax)
9883 }
9884 #[inline]
9885 pub fn select_variant(&self) -> Option<SelectVariant> {
9886 support::child(&self.syntax)
9887 }
9888}
9889
9890#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9891pub struct JsonSerializeFn {
9892 pub(crate) syntax: SyntaxNode,
9893}
9894impl JsonSerializeFn {
9895 #[inline]
9896 pub fn expr(&self) -> Option<Expr> {
9897 support::child(&self.syntax)
9898 }
9899 #[inline]
9900 pub fn json_format_clause(&self) -> Option<JsonFormatClause> {
9901 support::child(&self.syntax)
9902 }
9903 #[inline]
9904 pub fn json_returning_clause(&self) -> Option<JsonReturningClause> {
9905 support::child(&self.syntax)
9906 }
9907 #[inline]
9908 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
9909 support::token(&self.syntax, SyntaxKind::L_PAREN)
9910 }
9911 #[inline]
9912 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
9913 support::token(&self.syntax, SyntaxKind::R_PAREN)
9914 }
9915 #[inline]
9916 pub fn json_serialize_token(&self) -> Option<SyntaxToken> {
9917 support::token(&self.syntax, SyntaxKind::JSON_SERIALIZE_KW)
9918 }
9919}
9920
9921#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9922pub struct JsonTable {
9923 pub(crate) syntax: SyntaxNode,
9924}
9925impl JsonTable {
9926 #[inline]
9927 pub fn expr(&self) -> Option<Expr> {
9928 support::child(&self.syntax)
9929 }
9930 #[inline]
9931 pub fn json_format_clause(&self) -> Option<JsonFormatClause> {
9932 support::child(&self.syntax)
9933 }
9934 #[inline]
9935 pub fn json_on_error_clause(&self) -> Option<JsonOnErrorClause> {
9936 support::child(&self.syntax)
9937 }
9938 #[inline]
9939 pub fn json_passing_clause(&self) -> Option<JsonPassingClause> {
9940 support::child(&self.syntax)
9941 }
9942 #[inline]
9943 pub fn json_table_column_list(&self) -> Option<JsonTableColumnList> {
9944 support::child(&self.syntax)
9945 }
9946 #[inline]
9947 pub fn name(&self) -> Option<Name> {
9948 support::child(&self.syntax)
9949 }
9950 #[inline]
9951 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
9952 support::token(&self.syntax, SyntaxKind::L_PAREN)
9953 }
9954 #[inline]
9955 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
9956 support::token(&self.syntax, SyntaxKind::R_PAREN)
9957 }
9958 #[inline]
9959 pub fn comma_token(&self) -> Option<SyntaxToken> {
9960 support::token(&self.syntax, SyntaxKind::COMMA)
9961 }
9962 #[inline]
9963 pub fn as_token(&self) -> Option<SyntaxToken> {
9964 support::token(&self.syntax, SyntaxKind::AS_KW)
9965 }
9966 #[inline]
9967 pub fn json_table_token(&self) -> Option<SyntaxToken> {
9968 support::token(&self.syntax, SyntaxKind::JSON_TABLE_KW)
9969 }
9970}
9971
9972#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9973pub struct JsonTableColumn {
9974 pub(crate) syntax: SyntaxNode,
9975}
9976impl JsonTableColumn {
9977 #[inline]
9978 pub fn expr(&self) -> Option<Expr> {
9979 support::child(&self.syntax)
9980 }
9981 #[inline]
9982 pub fn json_format_clause(&self) -> Option<JsonFormatClause> {
9983 support::child(&self.syntax)
9984 }
9985 #[inline]
9986 pub fn json_on_empty_clause(&self) -> Option<JsonOnEmptyClause> {
9987 support::child(&self.syntax)
9988 }
9989 #[inline]
9990 pub fn json_on_error_clause(&self) -> Option<JsonOnErrorClause> {
9991 support::child(&self.syntax)
9992 }
9993 #[inline]
9994 pub fn json_path_clause(&self) -> Option<JsonPathClause> {
9995 support::child(&self.syntax)
9996 }
9997 #[inline]
9998 pub fn json_quotes_clause(&self) -> Option<JsonQuotesClause> {
9999 support::child(&self.syntax)
10000 }
10001 #[inline]
10002 pub fn json_table_column_list(&self) -> Option<JsonTableColumnList> {
10003 support::child(&self.syntax)
10004 }
10005 #[inline]
10006 pub fn json_wrapper_behavior_clause(&self) -> Option<JsonWrapperBehaviorClause> {
10007 support::child(&self.syntax)
10008 }
10009 #[inline]
10010 pub fn name(&self) -> Option<Name> {
10011 support::child(&self.syntax)
10012 }
10013 #[inline]
10014 pub fn ty(&self) -> Option<Type> {
10015 support::child(&self.syntax)
10016 }
10017 #[inline]
10018 pub fn as_token(&self) -> Option<SyntaxToken> {
10019 support::token(&self.syntax, SyntaxKind::AS_KW)
10020 }
10021 #[inline]
10022 pub fn exists_token(&self) -> Option<SyntaxToken> {
10023 support::token(&self.syntax, SyntaxKind::EXISTS_KW)
10024 }
10025 #[inline]
10026 pub fn for_token(&self) -> Option<SyntaxToken> {
10027 support::token(&self.syntax, SyntaxKind::FOR_KW)
10028 }
10029 #[inline]
10030 pub fn nested_token(&self) -> Option<SyntaxToken> {
10031 support::token(&self.syntax, SyntaxKind::NESTED_KW)
10032 }
10033 #[inline]
10034 pub fn ordinality_token(&self) -> Option<SyntaxToken> {
10035 support::token(&self.syntax, SyntaxKind::ORDINALITY_KW)
10036 }
10037 #[inline]
10038 pub fn path_token(&self) -> Option<SyntaxToken> {
10039 support::token(&self.syntax, SyntaxKind::PATH_KW)
10040 }
10041}
10042
10043#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10044pub struct JsonTableColumnList {
10045 pub(crate) syntax: SyntaxNode,
10046}
10047impl JsonTableColumnList {
10048 #[inline]
10049 pub fn json_table_columns(&self) -> AstChildren<JsonTableColumn> {
10050 support::children(&self.syntax)
10051 }
10052 #[inline]
10053 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
10054 support::token(&self.syntax, SyntaxKind::L_PAREN)
10055 }
10056 #[inline]
10057 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
10058 support::token(&self.syntax, SyntaxKind::R_PAREN)
10059 }
10060 #[inline]
10061 pub fn columns_token(&self) -> Option<SyntaxToken> {
10062 support::token(&self.syntax, SyntaxKind::COLUMNS_KW)
10063 }
10064}
10065
10066#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10067pub struct JsonValueExpr {
10068 pub(crate) syntax: SyntaxNode,
10069}
10070impl JsonValueExpr {
10071 #[inline]
10072 pub fn expr(&self) -> Option<Expr> {
10073 support::child(&self.syntax)
10074 }
10075 #[inline]
10076 pub fn json_format_clause(&self) -> Option<JsonFormatClause> {
10077 support::child(&self.syntax)
10078 }
10079}
10080
10081#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10082pub struct JsonValueFn {
10083 pub(crate) syntax: SyntaxNode,
10084}
10085impl JsonValueFn {
10086 #[inline]
10087 pub fn expr(&self) -> Option<Expr> {
10088 support::child(&self.syntax)
10089 }
10090 #[inline]
10091 pub fn json_behavior_clause(&self) -> Option<JsonBehaviorClause> {
10092 support::child(&self.syntax)
10093 }
10094 #[inline]
10095 pub fn json_format_clause(&self) -> Option<JsonFormatClause> {
10096 support::child(&self.syntax)
10097 }
10098 #[inline]
10099 pub fn json_passing_clause(&self) -> Option<JsonPassingClause> {
10100 support::child(&self.syntax)
10101 }
10102 #[inline]
10103 pub fn json_returning_clause(&self) -> Option<JsonReturningClause> {
10104 support::child(&self.syntax)
10105 }
10106 #[inline]
10107 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
10108 support::token(&self.syntax, SyntaxKind::L_PAREN)
10109 }
10110 #[inline]
10111 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
10112 support::token(&self.syntax, SyntaxKind::R_PAREN)
10113 }
10114 #[inline]
10115 pub fn comma_token(&self) -> Option<SyntaxToken> {
10116 support::token(&self.syntax, SyntaxKind::COMMA)
10117 }
10118 #[inline]
10119 pub fn json_value_token(&self) -> Option<SyntaxToken> {
10120 support::token(&self.syntax, SyntaxKind::JSON_VALUE_KW)
10121 }
10122}
10123
10124#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10125pub struct JsonWrapperBehaviorClause {
10126 pub(crate) syntax: SyntaxNode,
10127}
10128impl JsonWrapperBehaviorClause {
10129 #[inline]
10130 pub fn array_token(&self) -> Option<SyntaxToken> {
10131 support::token(&self.syntax, SyntaxKind::ARRAY_KW)
10132 }
10133 #[inline]
10134 pub fn conditional_token(&self) -> Option<SyntaxToken> {
10135 support::token(&self.syntax, SyntaxKind::CONDITIONAL_KW)
10136 }
10137 #[inline]
10138 pub fn unconditional_token(&self) -> Option<SyntaxToken> {
10139 support::token(&self.syntax, SyntaxKind::UNCONDITIONAL_KW)
10140 }
10141 #[inline]
10142 pub fn with_token(&self) -> Option<SyntaxToken> {
10143 support::token(&self.syntax, SyntaxKind::WITH_KW)
10144 }
10145 #[inline]
10146 pub fn without_token(&self) -> Option<SyntaxToken> {
10147 support::token(&self.syntax, SyntaxKind::WITHOUT_KW)
10148 }
10149 #[inline]
10150 pub fn wrapper_token(&self) -> Option<SyntaxToken> {
10151 support::token(&self.syntax, SyntaxKind::WRAPPER_KW)
10152 }
10153}
10154
10155#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10156pub struct LanguageFuncOption {
10157 pub(crate) syntax: SyntaxNode,
10158}
10159impl LanguageFuncOption {
10160 #[inline]
10161 pub fn name_ref(&self) -> Option<NameRef> {
10162 support::child(&self.syntax)
10163 }
10164 #[inline]
10165 pub fn language_token(&self) -> Option<SyntaxToken> {
10166 support::token(&self.syntax, SyntaxKind::LANGUAGE_KW)
10167 }
10168}
10169
10170#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10171pub struct LeakproofFuncOption {
10172 pub(crate) syntax: SyntaxNode,
10173}
10174impl LeakproofFuncOption {
10175 #[inline]
10176 pub fn leakproof_token(&self) -> Option<SyntaxToken> {
10177 support::token(&self.syntax, SyntaxKind::LEAKPROOF_KW)
10178 }
10179 #[inline]
10180 pub fn not_token(&self) -> Option<SyntaxToken> {
10181 support::token(&self.syntax, SyntaxKind::NOT_KW)
10182 }
10183}
10184
10185#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10186pub struct LikeClause {
10187 pub(crate) syntax: SyntaxNode,
10188}
10189impl LikeClause {
10190 #[inline]
10191 pub fn like_options(&self) -> AstChildren<LikeOption> {
10192 support::children(&self.syntax)
10193 }
10194 #[inline]
10195 pub fn path(&self) -> Option<Path> {
10196 support::child(&self.syntax)
10197 }
10198 #[inline]
10199 pub fn like_token(&self) -> Option<SyntaxToken> {
10200 support::token(&self.syntax, SyntaxKind::LIKE_KW)
10201 }
10202}
10203
10204#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10205pub struct LikeOption {
10206 pub(crate) syntax: SyntaxNode,
10207}
10208impl LikeOption {
10209 #[inline]
10210 pub fn all_token(&self) -> Option<SyntaxToken> {
10211 support::token(&self.syntax, SyntaxKind::ALL_KW)
10212 }
10213 #[inline]
10214 pub fn comments_token(&self) -> Option<SyntaxToken> {
10215 support::token(&self.syntax, SyntaxKind::COMMENTS_KW)
10216 }
10217 #[inline]
10218 pub fn compression_token(&self) -> Option<SyntaxToken> {
10219 support::token(&self.syntax, SyntaxKind::COMPRESSION_KW)
10220 }
10221 #[inline]
10222 pub fn constraints_token(&self) -> Option<SyntaxToken> {
10223 support::token(&self.syntax, SyntaxKind::CONSTRAINTS_KW)
10224 }
10225 #[inline]
10226 pub fn defaults_token(&self) -> Option<SyntaxToken> {
10227 support::token(&self.syntax, SyntaxKind::DEFAULTS_KW)
10228 }
10229 #[inline]
10230 pub fn excluding_token(&self) -> Option<SyntaxToken> {
10231 support::token(&self.syntax, SyntaxKind::EXCLUDING_KW)
10232 }
10233 #[inline]
10234 pub fn generated_token(&self) -> Option<SyntaxToken> {
10235 support::token(&self.syntax, SyntaxKind::GENERATED_KW)
10236 }
10237 #[inline]
10238 pub fn identity_token(&self) -> Option<SyntaxToken> {
10239 support::token(&self.syntax, SyntaxKind::IDENTITY_KW)
10240 }
10241 #[inline]
10242 pub fn including_token(&self) -> Option<SyntaxToken> {
10243 support::token(&self.syntax, SyntaxKind::INCLUDING_KW)
10244 }
10245 #[inline]
10246 pub fn indexes_token(&self) -> Option<SyntaxToken> {
10247 support::token(&self.syntax, SyntaxKind::INDEXES_KW)
10248 }
10249 #[inline]
10250 pub fn statistics_token(&self) -> Option<SyntaxToken> {
10251 support::token(&self.syntax, SyntaxKind::STATISTICS_KW)
10252 }
10253 #[inline]
10254 pub fn storage_token(&self) -> Option<SyntaxToken> {
10255 support::token(&self.syntax, SyntaxKind::STORAGE_KW)
10256 }
10257}
10258
10259#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10260pub struct LimitClause {
10261 pub(crate) syntax: SyntaxNode,
10262}
10263impl LimitClause {
10264 #[inline]
10265 pub fn expr(&self) -> Option<Expr> {
10266 support::child(&self.syntax)
10267 }
10268 #[inline]
10269 pub fn all_token(&self) -> Option<SyntaxToken> {
10270 support::token(&self.syntax, SyntaxKind::ALL_KW)
10271 }
10272 #[inline]
10273 pub fn limit_token(&self) -> Option<SyntaxToken> {
10274 support::token(&self.syntax, SyntaxKind::LIMIT_KW)
10275 }
10276}
10277
10278#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10279pub struct LimitToTables {
10280 pub(crate) syntax: SyntaxNode,
10281}
10282impl LimitToTables {
10283 #[inline]
10284 pub fn name_refs(&self) -> AstChildren<NameRef> {
10285 support::children(&self.syntax)
10286 }
10287 #[inline]
10288 pub fn limit_token(&self) -> Option<SyntaxToken> {
10289 support::token(&self.syntax, SyntaxKind::LIMIT_KW)
10290 }
10291 #[inline]
10292 pub fn to_token(&self) -> Option<SyntaxToken> {
10293 support::token(&self.syntax, SyntaxKind::TO_KW)
10294 }
10295}
10296
10297#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10298pub struct Listen {
10299 pub(crate) syntax: SyntaxNode,
10300}
10301impl Listen {
10302 #[inline]
10303 pub fn name(&self) -> Option<Name> {
10304 support::child(&self.syntax)
10305 }
10306 #[inline]
10307 pub fn listen_token(&self) -> Option<SyntaxToken> {
10308 support::token(&self.syntax, SyntaxKind::LISTEN_KW)
10309 }
10310}
10311
10312#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10313pub struct Literal {
10314 pub(crate) syntax: SyntaxNode,
10315}
10316impl Literal {}
10317
10318#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10319pub struct Load {
10320 pub(crate) syntax: SyntaxNode,
10321}
10322impl Load {
10323 #[inline]
10324 pub fn literal(&self) -> Option<Literal> {
10325 support::child(&self.syntax)
10326 }
10327 #[inline]
10328 pub fn load_token(&self) -> Option<SyntaxToken> {
10329 support::token(&self.syntax, SyntaxKind::LOAD_KW)
10330 }
10331}
10332
10333#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10334pub struct Lock {
10335 pub(crate) syntax: SyntaxNode,
10336}
10337impl Lock {
10338 #[inline]
10339 pub fn table_list(&self) -> Option<TableList> {
10340 support::child(&self.syntax)
10341 }
10342 #[inline]
10343 pub fn lock_token(&self) -> Option<SyntaxToken> {
10344 support::token(&self.syntax, SyntaxKind::LOCK_KW)
10345 }
10346 #[inline]
10347 pub fn table_token(&self) -> Option<SyntaxToken> {
10348 support::token(&self.syntax, SyntaxKind::TABLE_KW)
10349 }
10350}
10351
10352#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10353pub struct LockingClause {
10354 pub(crate) syntax: SyntaxNode,
10355}
10356impl LockingClause {
10357 #[inline]
10358 pub fn for_token(&self) -> Option<SyntaxToken> {
10359 support::token(&self.syntax, SyntaxKind::FOR_KW)
10360 }
10361}
10362
10363#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10364pub struct Lteq {
10365 pub(crate) syntax: SyntaxNode,
10366}
10367impl Lteq {
10368 #[inline]
10369 pub fn l_angle_token(&self) -> Option<SyntaxToken> {
10370 support::token(&self.syntax, SyntaxKind::L_ANGLE)
10371 }
10372 #[inline]
10373 pub fn eq_token(&self) -> Option<SyntaxToken> {
10374 support::token(&self.syntax, SyntaxKind::EQ)
10375 }
10376}
10377
10378#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10379pub struct MatchFull {
10380 pub(crate) syntax: SyntaxNode,
10381}
10382impl MatchFull {
10383 #[inline]
10384 pub fn full_token(&self) -> Option<SyntaxToken> {
10385 support::token(&self.syntax, SyntaxKind::FULL_KW)
10386 }
10387 #[inline]
10388 pub fn match_token(&self) -> Option<SyntaxToken> {
10389 support::token(&self.syntax, SyntaxKind::MATCH_KW)
10390 }
10391}
10392
10393#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10394pub struct MatchPartial {
10395 pub(crate) syntax: SyntaxNode,
10396}
10397impl MatchPartial {
10398 #[inline]
10399 pub fn match_token(&self) -> Option<SyntaxToken> {
10400 support::token(&self.syntax, SyntaxKind::MATCH_KW)
10401 }
10402 #[inline]
10403 pub fn partial_token(&self) -> Option<SyntaxToken> {
10404 support::token(&self.syntax, SyntaxKind::PARTIAL_KW)
10405 }
10406}
10407
10408#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10409pub struct MatchSimple {
10410 pub(crate) syntax: SyntaxNode,
10411}
10412impl MatchSimple {
10413 #[inline]
10414 pub fn match_token(&self) -> Option<SyntaxToken> {
10415 support::token(&self.syntax, SyntaxKind::MATCH_KW)
10416 }
10417 #[inline]
10418 pub fn simple_token(&self) -> Option<SyntaxToken> {
10419 support::token(&self.syntax, SyntaxKind::SIMPLE_KW)
10420 }
10421}
10422
10423#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10424pub struct Materialized {
10425 pub(crate) syntax: SyntaxNode,
10426}
10427impl Materialized {
10428 #[inline]
10429 pub fn materialized_token(&self) -> Option<SyntaxToken> {
10430 support::token(&self.syntax, SyntaxKind::MATERIALIZED_KW)
10431 }
10432}
10433
10434#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10435pub struct Merge {
10436 pub(crate) syntax: SyntaxNode,
10437}
10438impl Merge {
10439 #[inline]
10440 pub fn alias(&self) -> Option<Alias> {
10441 support::child(&self.syntax)
10442 }
10443 #[inline]
10444 pub fn merge_when_clauses(&self) -> AstChildren<MergeWhenClause> {
10445 support::children(&self.syntax)
10446 }
10447 #[inline]
10448 pub fn relation_name(&self) -> Option<RelationName> {
10449 support::child(&self.syntax)
10450 }
10451 #[inline]
10452 pub fn returning_clause(&self) -> Option<ReturningClause> {
10453 support::child(&self.syntax)
10454 }
10455 #[inline]
10456 pub fn using_on_clause(&self) -> Option<UsingOnClause> {
10457 support::child(&self.syntax)
10458 }
10459 #[inline]
10460 pub fn with_clause(&self) -> Option<WithClause> {
10461 support::child(&self.syntax)
10462 }
10463 #[inline]
10464 pub fn into_token(&self) -> Option<SyntaxToken> {
10465 support::token(&self.syntax, SyntaxKind::INTO_KW)
10466 }
10467 #[inline]
10468 pub fn merge_token(&self) -> Option<SyntaxToken> {
10469 support::token(&self.syntax, SyntaxKind::MERGE_KW)
10470 }
10471}
10472
10473#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10474pub struct MergeDelete {
10475 pub(crate) syntax: SyntaxNode,
10476}
10477impl MergeDelete {
10478 #[inline]
10479 pub fn delete_token(&self) -> Option<SyntaxToken> {
10480 support::token(&self.syntax, SyntaxKind::DELETE_KW)
10481 }
10482}
10483
10484#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10485pub struct MergeDoNothing {
10486 pub(crate) syntax: SyntaxNode,
10487}
10488impl MergeDoNothing {
10489 #[inline]
10490 pub fn do_token(&self) -> Option<SyntaxToken> {
10491 support::token(&self.syntax, SyntaxKind::DO_KW)
10492 }
10493 #[inline]
10494 pub fn nothing_token(&self) -> Option<SyntaxToken> {
10495 support::token(&self.syntax, SyntaxKind::NOTHING_KW)
10496 }
10497}
10498
10499#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10500pub struct MergeInsert {
10501 pub(crate) syntax: SyntaxNode,
10502}
10503impl MergeInsert {
10504 #[inline]
10505 pub fn column_list(&self) -> Option<ColumnList> {
10506 support::child(&self.syntax)
10507 }
10508 #[inline]
10509 pub fn values(&self) -> Option<Values> {
10510 support::child(&self.syntax)
10511 }
10512 #[inline]
10513 pub fn default_token(&self) -> Option<SyntaxToken> {
10514 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
10515 }
10516 #[inline]
10517 pub fn insert_token(&self) -> Option<SyntaxToken> {
10518 support::token(&self.syntax, SyntaxKind::INSERT_KW)
10519 }
10520 #[inline]
10521 pub fn overriding_token(&self) -> Option<SyntaxToken> {
10522 support::token(&self.syntax, SyntaxKind::OVERRIDING_KW)
10523 }
10524 #[inline]
10525 pub fn system_token(&self) -> Option<SyntaxToken> {
10526 support::token(&self.syntax, SyntaxKind::SYSTEM_KW)
10527 }
10528 #[inline]
10529 pub fn user_token(&self) -> Option<SyntaxToken> {
10530 support::token(&self.syntax, SyntaxKind::USER_KW)
10531 }
10532 #[inline]
10533 pub fn values_token(&self) -> Option<SyntaxToken> {
10534 support::token(&self.syntax, SyntaxKind::VALUES_KW)
10535 }
10536}
10537
10538#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10539pub struct MergePartitions {
10540 pub(crate) syntax: SyntaxNode,
10541}
10542impl MergePartitions {
10543 #[inline]
10544 pub fn path(&self) -> Option<Path> {
10545 support::child(&self.syntax)
10546 }
10547 #[inline]
10548 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
10549 support::token(&self.syntax, SyntaxKind::L_PAREN)
10550 }
10551 #[inline]
10552 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
10553 support::token(&self.syntax, SyntaxKind::R_PAREN)
10554 }
10555 #[inline]
10556 pub fn into_token(&self) -> Option<SyntaxToken> {
10557 support::token(&self.syntax, SyntaxKind::INTO_KW)
10558 }
10559 #[inline]
10560 pub fn merge_token(&self) -> Option<SyntaxToken> {
10561 support::token(&self.syntax, SyntaxKind::MERGE_KW)
10562 }
10563 #[inline]
10564 pub fn partitions_token(&self) -> Option<SyntaxToken> {
10565 support::token(&self.syntax, SyntaxKind::PARTITIONS_KW)
10566 }
10567}
10568
10569#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10570pub struct MergeUpdate {
10571 pub(crate) syntax: SyntaxNode,
10572}
10573impl MergeUpdate {
10574 #[inline]
10575 pub fn set_clause(&self) -> Option<SetClause> {
10576 support::child(&self.syntax)
10577 }
10578 #[inline]
10579 pub fn set_token(&self) -> Option<SyntaxToken> {
10580 support::token(&self.syntax, SyntaxKind::SET_KW)
10581 }
10582 #[inline]
10583 pub fn update_token(&self) -> Option<SyntaxToken> {
10584 support::token(&self.syntax, SyntaxKind::UPDATE_KW)
10585 }
10586}
10587
10588#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10589pub struct MergeWhenMatched {
10590 pub(crate) syntax: SyntaxNode,
10591}
10592impl MergeWhenMatched {
10593 #[inline]
10594 pub fn expr(&self) -> Option<Expr> {
10595 support::child(&self.syntax)
10596 }
10597 #[inline]
10598 pub fn merge_action(&self) -> Option<MergeAction> {
10599 support::child(&self.syntax)
10600 }
10601 #[inline]
10602 pub fn and_token(&self) -> Option<SyntaxToken> {
10603 support::token(&self.syntax, SyntaxKind::AND_KW)
10604 }
10605 #[inline]
10606 pub fn matched_token(&self) -> Option<SyntaxToken> {
10607 support::token(&self.syntax, SyntaxKind::MATCHED_KW)
10608 }
10609 #[inline]
10610 pub fn then_token(&self) -> Option<SyntaxToken> {
10611 support::token(&self.syntax, SyntaxKind::THEN_KW)
10612 }
10613 #[inline]
10614 pub fn when_token(&self) -> Option<SyntaxToken> {
10615 support::token(&self.syntax, SyntaxKind::WHEN_KW)
10616 }
10617}
10618
10619#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10620pub struct MergeWhenNotMatchedSource {
10621 pub(crate) syntax: SyntaxNode,
10622}
10623impl MergeWhenNotMatchedSource {
10624 #[inline]
10625 pub fn expr(&self) -> Option<Expr> {
10626 support::child(&self.syntax)
10627 }
10628 #[inline]
10629 pub fn merge_action(&self) -> Option<MergeAction> {
10630 support::child(&self.syntax)
10631 }
10632 #[inline]
10633 pub fn and_token(&self) -> Option<SyntaxToken> {
10634 support::token(&self.syntax, SyntaxKind::AND_KW)
10635 }
10636 #[inline]
10637 pub fn by_token(&self) -> Option<SyntaxToken> {
10638 support::token(&self.syntax, SyntaxKind::BY_KW)
10639 }
10640 #[inline]
10641 pub fn matched_token(&self) -> Option<SyntaxToken> {
10642 support::token(&self.syntax, SyntaxKind::MATCHED_KW)
10643 }
10644 #[inline]
10645 pub fn not_token(&self) -> Option<SyntaxToken> {
10646 support::token(&self.syntax, SyntaxKind::NOT_KW)
10647 }
10648 #[inline]
10649 pub fn source_token(&self) -> Option<SyntaxToken> {
10650 support::token(&self.syntax, SyntaxKind::SOURCE_KW)
10651 }
10652 #[inline]
10653 pub fn then_token(&self) -> Option<SyntaxToken> {
10654 support::token(&self.syntax, SyntaxKind::THEN_KW)
10655 }
10656 #[inline]
10657 pub fn when_token(&self) -> Option<SyntaxToken> {
10658 support::token(&self.syntax, SyntaxKind::WHEN_KW)
10659 }
10660}
10661
10662#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10663pub struct MergeWhenNotMatchedTarget {
10664 pub(crate) syntax: SyntaxNode,
10665}
10666impl MergeWhenNotMatchedTarget {
10667 #[inline]
10668 pub fn expr(&self) -> Option<Expr> {
10669 support::child(&self.syntax)
10670 }
10671 #[inline]
10672 pub fn merge_action(&self) -> Option<MergeAction> {
10673 support::child(&self.syntax)
10674 }
10675 #[inline]
10676 pub fn and_token(&self) -> Option<SyntaxToken> {
10677 support::token(&self.syntax, SyntaxKind::AND_KW)
10678 }
10679 #[inline]
10680 pub fn by_token(&self) -> Option<SyntaxToken> {
10681 support::token(&self.syntax, SyntaxKind::BY_KW)
10682 }
10683 #[inline]
10684 pub fn matched_token(&self) -> Option<SyntaxToken> {
10685 support::token(&self.syntax, SyntaxKind::MATCHED_KW)
10686 }
10687 #[inline]
10688 pub fn not_token(&self) -> Option<SyntaxToken> {
10689 support::token(&self.syntax, SyntaxKind::NOT_KW)
10690 }
10691 #[inline]
10692 pub fn target_token(&self) -> Option<SyntaxToken> {
10693 support::token(&self.syntax, SyntaxKind::TARGET_KW)
10694 }
10695 #[inline]
10696 pub fn then_token(&self) -> Option<SyntaxToken> {
10697 support::token(&self.syntax, SyntaxKind::THEN_KW)
10698 }
10699 #[inline]
10700 pub fn when_token(&self) -> Option<SyntaxToken> {
10701 support::token(&self.syntax, SyntaxKind::WHEN_KW)
10702 }
10703}
10704
10705#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10706pub struct Move {
10707 pub(crate) syntax: SyntaxNode,
10708}
10709impl Move {
10710 #[inline]
10711 pub fn name_ref(&self) -> Option<NameRef> {
10712 support::child(&self.syntax)
10713 }
10714 #[inline]
10715 pub fn from_token(&self) -> Option<SyntaxToken> {
10716 support::token(&self.syntax, SyntaxKind::FROM_KW)
10717 }
10718 #[inline]
10719 pub fn in_token(&self) -> Option<SyntaxToken> {
10720 support::token(&self.syntax, SyntaxKind::IN_KW)
10721 }
10722 #[inline]
10723 pub fn move_token(&self) -> Option<SyntaxToken> {
10724 support::token(&self.syntax, SyntaxKind::MOVE_KW)
10725 }
10726}
10727
10728#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10729pub struct Name {
10730 pub(crate) syntax: SyntaxNode,
10731}
10732impl Name {
10733 #[inline]
10734 pub fn ident_token(&self) -> Option<SyntaxToken> {
10735 support::token(&self.syntax, SyntaxKind::IDENT)
10736 }
10737}
10738
10739#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10740pub struct NameRef {
10741 pub(crate) syntax: SyntaxNode,
10742}
10743impl NameRef {
10744 #[inline]
10745 pub fn ident_token(&self) -> Option<SyntaxToken> {
10746 support::token(&self.syntax, SyntaxKind::IDENT)
10747 }
10748}
10749
10750#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10751pub struct NamedArg {
10752 pub(crate) syntax: SyntaxNode,
10753}
10754impl NamedArg {
10755 #[inline]
10756 pub fn expr(&self) -> Option<Expr> {
10757 support::child(&self.syntax)
10758 }
10759 #[inline]
10760 pub fn fat_arrow(&self) -> Option<FatArrow> {
10761 support::child(&self.syntax)
10762 }
10763 #[inline]
10764 pub fn name_ref(&self) -> Option<NameRef> {
10765 support::child(&self.syntax)
10766 }
10767}
10768
10769#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10770pub struct Neq {
10771 pub(crate) syntax: SyntaxNode,
10772}
10773impl Neq {
10774 #[inline]
10775 pub fn bang_token(&self) -> Option<SyntaxToken> {
10776 support::token(&self.syntax, SyntaxKind::BANG)
10777 }
10778 #[inline]
10779 pub fn eq_token(&self) -> Option<SyntaxToken> {
10780 support::token(&self.syntax, SyntaxKind::EQ)
10781 }
10782}
10783
10784#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10785pub struct Neqb {
10786 pub(crate) syntax: SyntaxNode,
10787}
10788impl Neqb {
10789 #[inline]
10790 pub fn l_angle_token(&self) -> Option<SyntaxToken> {
10791 support::token(&self.syntax, SyntaxKind::L_ANGLE)
10792 }
10793 #[inline]
10794 pub fn r_angle_token(&self) -> Option<SyntaxToken> {
10795 support::token(&self.syntax, SyntaxKind::R_ANGLE)
10796 }
10797}
10798
10799#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10800pub struct NoAction {
10801 pub(crate) syntax: SyntaxNode,
10802}
10803impl NoAction {
10804 #[inline]
10805 pub fn action_token(&self) -> Option<SyntaxToken> {
10806 support::token(&self.syntax, SyntaxKind::ACTION_KW)
10807 }
10808 #[inline]
10809 pub fn no_token(&self) -> Option<SyntaxToken> {
10810 support::token(&self.syntax, SyntaxKind::NO_KW)
10811 }
10812}
10813
10814#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10815pub struct NoDependsOnExtension {
10816 pub(crate) syntax: SyntaxNode,
10817}
10818impl NoDependsOnExtension {
10819 #[inline]
10820 pub fn name_ref(&self) -> Option<NameRef> {
10821 support::child(&self.syntax)
10822 }
10823 #[inline]
10824 pub fn depends_token(&self) -> Option<SyntaxToken> {
10825 support::token(&self.syntax, SyntaxKind::DEPENDS_KW)
10826 }
10827 #[inline]
10828 pub fn extension_token(&self) -> Option<SyntaxToken> {
10829 support::token(&self.syntax, SyntaxKind::EXTENSION_KW)
10830 }
10831 #[inline]
10832 pub fn no_token(&self) -> Option<SyntaxToken> {
10833 support::token(&self.syntax, SyntaxKind::NO_KW)
10834 }
10835 #[inline]
10836 pub fn on_token(&self) -> Option<SyntaxToken> {
10837 support::token(&self.syntax, SyntaxKind::ON_KW)
10838 }
10839}
10840
10841#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10842pub struct NoForceRls {
10843 pub(crate) syntax: SyntaxNode,
10844}
10845impl NoForceRls {
10846 #[inline]
10847 pub fn force_token(&self) -> Option<SyntaxToken> {
10848 support::token(&self.syntax, SyntaxKind::FORCE_KW)
10849 }
10850 #[inline]
10851 pub fn level_token(&self) -> Option<SyntaxToken> {
10852 support::token(&self.syntax, SyntaxKind::LEVEL_KW)
10853 }
10854 #[inline]
10855 pub fn no_token(&self) -> Option<SyntaxToken> {
10856 support::token(&self.syntax, SyntaxKind::NO_KW)
10857 }
10858 #[inline]
10859 pub fn row_token(&self) -> Option<SyntaxToken> {
10860 support::token(&self.syntax, SyntaxKind::ROW_KW)
10861 }
10862 #[inline]
10863 pub fn security_token(&self) -> Option<SyntaxToken> {
10864 support::token(&self.syntax, SyntaxKind::SECURITY_KW)
10865 }
10866}
10867
10868#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10869pub struct NoInherit {
10870 pub(crate) syntax: SyntaxNode,
10871}
10872impl NoInherit {
10873 #[inline]
10874 pub fn path(&self) -> Option<Path> {
10875 support::child(&self.syntax)
10876 }
10877 #[inline]
10878 pub fn inherit_token(&self) -> Option<SyntaxToken> {
10879 support::token(&self.syntax, SyntaxKind::INHERIT_KW)
10880 }
10881 #[inline]
10882 pub fn no_token(&self) -> Option<SyntaxToken> {
10883 support::token(&self.syntax, SyntaxKind::NO_KW)
10884 }
10885}
10886
10887#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10888pub struct NoInheritTable {
10889 pub(crate) syntax: SyntaxNode,
10890}
10891impl NoInheritTable {
10892 #[inline]
10893 pub fn path(&self) -> Option<Path> {
10894 support::child(&self.syntax)
10895 }
10896 #[inline]
10897 pub fn inherit_token(&self) -> Option<SyntaxToken> {
10898 support::token(&self.syntax, SyntaxKind::INHERIT_KW)
10899 }
10900 #[inline]
10901 pub fn no_token(&self) -> Option<SyntaxToken> {
10902 support::token(&self.syntax, SyntaxKind::NO_KW)
10903 }
10904}
10905
10906#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10907pub struct NonStandardParam {
10908 pub(crate) syntax: SyntaxNode,
10909}
10910impl NonStandardParam {
10911 #[inline]
10912 pub fn name_ref(&self) -> Option<NameRef> {
10913 support::child(&self.syntax)
10914 }
10915 #[inline]
10916 pub fn colon_token(&self) -> Option<SyntaxToken> {
10917 support::token(&self.syntax, SyntaxKind::COLON)
10918 }
10919}
10920
10921#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10922pub struct NotDeferrable {
10923 pub(crate) syntax: SyntaxNode,
10924}
10925impl NotDeferrable {
10926 #[inline]
10927 pub fn deferrable_token(&self) -> Option<SyntaxToken> {
10928 support::token(&self.syntax, SyntaxKind::DEFERRABLE_KW)
10929 }
10930 #[inline]
10931 pub fn not_token(&self) -> Option<SyntaxToken> {
10932 support::token(&self.syntax, SyntaxKind::NOT_KW)
10933 }
10934}
10935
10936#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10937pub struct NotDeferrableConstraintOption {
10938 pub(crate) syntax: SyntaxNode,
10939}
10940impl NotDeferrableConstraintOption {
10941 #[inline]
10942 pub fn deferrable_token(&self) -> Option<SyntaxToken> {
10943 support::token(&self.syntax, SyntaxKind::DEFERRABLE_KW)
10944 }
10945 #[inline]
10946 pub fn not_token(&self) -> Option<SyntaxToken> {
10947 support::token(&self.syntax, SyntaxKind::NOT_KW)
10948 }
10949}
10950
10951#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10952pub struct NotEnforced {
10953 pub(crate) syntax: SyntaxNode,
10954}
10955impl NotEnforced {
10956 #[inline]
10957 pub fn enforced_token(&self) -> Option<SyntaxToken> {
10958 support::token(&self.syntax, SyntaxKind::ENFORCED_KW)
10959 }
10960 #[inline]
10961 pub fn not_token(&self) -> Option<SyntaxToken> {
10962 support::token(&self.syntax, SyntaxKind::NOT_KW)
10963 }
10964}
10965
10966#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10967pub struct NotIlike {
10968 pub(crate) syntax: SyntaxNode,
10969}
10970impl NotIlike {
10971 #[inline]
10972 pub fn ilike_token(&self) -> Option<SyntaxToken> {
10973 support::token(&self.syntax, SyntaxKind::ILIKE_KW)
10974 }
10975 #[inline]
10976 pub fn not_token(&self) -> Option<SyntaxToken> {
10977 support::token(&self.syntax, SyntaxKind::NOT_KW)
10978 }
10979}
10980
10981#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10982pub struct NotIn {
10983 pub(crate) syntax: SyntaxNode,
10984}
10985impl NotIn {
10986 #[inline]
10987 pub fn in_token(&self) -> Option<SyntaxToken> {
10988 support::token(&self.syntax, SyntaxKind::IN_KW)
10989 }
10990 #[inline]
10991 pub fn not_token(&self) -> Option<SyntaxToken> {
10992 support::token(&self.syntax, SyntaxKind::NOT_KW)
10993 }
10994}
10995
10996#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10997pub struct NotLike {
10998 pub(crate) syntax: SyntaxNode,
10999}
11000impl NotLike {
11001 #[inline]
11002 pub fn like_token(&self) -> Option<SyntaxToken> {
11003 support::token(&self.syntax, SyntaxKind::LIKE_KW)
11004 }
11005 #[inline]
11006 pub fn not_token(&self) -> Option<SyntaxToken> {
11007 support::token(&self.syntax, SyntaxKind::NOT_KW)
11008 }
11009}
11010
11011#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11012pub struct NotMaterialized {
11013 pub(crate) syntax: SyntaxNode,
11014}
11015impl NotMaterialized {
11016 #[inline]
11017 pub fn materialized_token(&self) -> Option<SyntaxToken> {
11018 support::token(&self.syntax, SyntaxKind::MATERIALIZED_KW)
11019 }
11020 #[inline]
11021 pub fn not_token(&self) -> Option<SyntaxToken> {
11022 support::token(&self.syntax, SyntaxKind::NOT_KW)
11023 }
11024}
11025
11026#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11027pub struct NotNullConstraint {
11028 pub(crate) syntax: SyntaxNode,
11029}
11030impl NotNullConstraint {
11031 #[inline]
11032 pub fn name_ref(&self) -> Option<NameRef> {
11033 support::child(&self.syntax)
11034 }
11035 #[inline]
11036 pub fn no_inherit(&self) -> Option<NoInherit> {
11037 support::child(&self.syntax)
11038 }
11039 #[inline]
11040 pub fn constraint_token(&self) -> Option<SyntaxToken> {
11041 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
11042 }
11043 #[inline]
11044 pub fn not_token(&self) -> Option<SyntaxToken> {
11045 support::token(&self.syntax, SyntaxKind::NOT_KW)
11046 }
11047 #[inline]
11048 pub fn null_token(&self) -> Option<SyntaxToken> {
11049 support::token(&self.syntax, SyntaxKind::NULL_KW)
11050 }
11051}
11052
11053#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11054pub struct NotOf {
11055 pub(crate) syntax: SyntaxNode,
11056}
11057impl NotOf {
11058 #[inline]
11059 pub fn not_token(&self) -> Option<SyntaxToken> {
11060 support::token(&self.syntax, SyntaxKind::NOT_KW)
11061 }
11062 #[inline]
11063 pub fn of_token(&self) -> Option<SyntaxToken> {
11064 support::token(&self.syntax, SyntaxKind::OF_KW)
11065 }
11066}
11067
11068#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11069pub struct NotSimilarTo {
11070 pub(crate) syntax: SyntaxNode,
11071}
11072impl NotSimilarTo {
11073 #[inline]
11074 pub fn not_token(&self) -> Option<SyntaxToken> {
11075 support::token(&self.syntax, SyntaxKind::NOT_KW)
11076 }
11077 #[inline]
11078 pub fn similar_token(&self) -> Option<SyntaxToken> {
11079 support::token(&self.syntax, SyntaxKind::SIMILAR_KW)
11080 }
11081 #[inline]
11082 pub fn to_token(&self) -> Option<SyntaxToken> {
11083 support::token(&self.syntax, SyntaxKind::TO_KW)
11084 }
11085}
11086
11087#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11088pub struct NotValid {
11089 pub(crate) syntax: SyntaxNode,
11090}
11091impl NotValid {
11092 #[inline]
11093 pub fn not_token(&self) -> Option<SyntaxToken> {
11094 support::token(&self.syntax, SyntaxKind::NOT_KW)
11095 }
11096 #[inline]
11097 pub fn valid_token(&self) -> Option<SyntaxToken> {
11098 support::token(&self.syntax, SyntaxKind::VALID_KW)
11099 }
11100}
11101
11102#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11103pub struct Notify {
11104 pub(crate) syntax: SyntaxNode,
11105}
11106impl Notify {
11107 #[inline]
11108 pub fn literal(&self) -> Option<Literal> {
11109 support::child(&self.syntax)
11110 }
11111 #[inline]
11112 pub fn name_ref(&self) -> Option<NameRef> {
11113 support::child(&self.syntax)
11114 }
11115 #[inline]
11116 pub fn comma_token(&self) -> Option<SyntaxToken> {
11117 support::token(&self.syntax, SyntaxKind::COMMA)
11118 }
11119 #[inline]
11120 pub fn notify_token(&self) -> Option<SyntaxToken> {
11121 support::token(&self.syntax, SyntaxKind::NOTIFY_KW)
11122 }
11123}
11124
11125#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11126pub struct NullConstraint {
11127 pub(crate) syntax: SyntaxNode,
11128}
11129impl NullConstraint {
11130 #[inline]
11131 pub fn name_ref(&self) -> Option<NameRef> {
11132 support::child(&self.syntax)
11133 }
11134 #[inline]
11135 pub fn constraint_token(&self) -> Option<SyntaxToken> {
11136 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
11137 }
11138 #[inline]
11139 pub fn null_token(&self) -> Option<SyntaxToken> {
11140 support::token(&self.syntax, SyntaxKind::NULL_KW)
11141 }
11142}
11143
11144#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11145pub struct NullsDistinct {
11146 pub(crate) syntax: SyntaxNode,
11147}
11148impl NullsDistinct {
11149 #[inline]
11150 pub fn distinct_token(&self) -> Option<SyntaxToken> {
11151 support::token(&self.syntax, SyntaxKind::DISTINCT_KW)
11152 }
11153 #[inline]
11154 pub fn nulls_token(&self) -> Option<SyntaxToken> {
11155 support::token(&self.syntax, SyntaxKind::NULLS_KW)
11156 }
11157}
11158
11159#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11160pub struct NullsFirst {
11161 pub(crate) syntax: SyntaxNode,
11162}
11163impl NullsFirst {
11164 #[inline]
11165 pub fn first_token(&self) -> Option<SyntaxToken> {
11166 support::token(&self.syntax, SyntaxKind::FIRST_KW)
11167 }
11168 #[inline]
11169 pub fn nulls_token(&self) -> Option<SyntaxToken> {
11170 support::token(&self.syntax, SyntaxKind::NULLS_KW)
11171 }
11172}
11173
11174#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11175pub struct NullsLast {
11176 pub(crate) syntax: SyntaxNode,
11177}
11178impl NullsLast {
11179 #[inline]
11180 pub fn last_token(&self) -> Option<SyntaxToken> {
11181 support::token(&self.syntax, SyntaxKind::LAST_KW)
11182 }
11183 #[inline]
11184 pub fn nulls_token(&self) -> Option<SyntaxToken> {
11185 support::token(&self.syntax, SyntaxKind::NULLS_KW)
11186 }
11187}
11188
11189#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11190pub struct NullsNotDistinct {
11191 pub(crate) syntax: SyntaxNode,
11192}
11193impl NullsNotDistinct {
11194 #[inline]
11195 pub fn distinct_token(&self) -> Option<SyntaxToken> {
11196 support::token(&self.syntax, SyntaxKind::DISTINCT_KW)
11197 }
11198 #[inline]
11199 pub fn not_token(&self) -> Option<SyntaxToken> {
11200 support::token(&self.syntax, SyntaxKind::NOT_KW)
11201 }
11202 #[inline]
11203 pub fn nulls_token(&self) -> Option<SyntaxToken> {
11204 support::token(&self.syntax, SyntaxKind::NULLS_KW)
11205 }
11206}
11207
11208#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11209pub struct OfType {
11210 pub(crate) syntax: SyntaxNode,
11211}
11212impl OfType {
11213 #[inline]
11214 pub fn ty(&self) -> Option<Type> {
11215 support::child(&self.syntax)
11216 }
11217 #[inline]
11218 pub fn of_token(&self) -> Option<SyntaxToken> {
11219 support::token(&self.syntax, SyntaxKind::OF_KW)
11220 }
11221}
11222
11223#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11224pub struct OffsetClause {
11225 pub(crate) syntax: SyntaxNode,
11226}
11227impl OffsetClause {
11228 #[inline]
11229 pub fn expr(&self) -> Option<Expr> {
11230 support::child(&self.syntax)
11231 }
11232 #[inline]
11233 pub fn offset_token(&self) -> Option<SyntaxToken> {
11234 support::token(&self.syntax, SyntaxKind::OFFSET_KW)
11235 }
11236 #[inline]
11237 pub fn row_token(&self) -> Option<SyntaxToken> {
11238 support::token(&self.syntax, SyntaxKind::ROW_KW)
11239 }
11240 #[inline]
11241 pub fn rows_token(&self) -> Option<SyntaxToken> {
11242 support::token(&self.syntax, SyntaxKind::ROWS_KW)
11243 }
11244}
11245
11246#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11247pub struct OnClause {
11248 pub(crate) syntax: SyntaxNode,
11249}
11250impl OnClause {
11251 #[inline]
11252 pub fn expr(&self) -> Option<Expr> {
11253 support::child(&self.syntax)
11254 }
11255 #[inline]
11256 pub fn on_token(&self) -> Option<SyntaxToken> {
11257 support::token(&self.syntax, SyntaxKind::ON_KW)
11258 }
11259}
11260
11261#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11262pub struct OnCommit {
11263 pub(crate) syntax: SyntaxNode,
11264}
11265impl OnCommit {
11266 #[inline]
11267 pub fn on_commit_action(&self) -> Option<OnCommitAction> {
11268 support::child(&self.syntax)
11269 }
11270 #[inline]
11271 pub fn commit_token(&self) -> Option<SyntaxToken> {
11272 support::token(&self.syntax, SyntaxKind::COMMIT_KW)
11273 }
11274 #[inline]
11275 pub fn on_token(&self) -> Option<SyntaxToken> {
11276 support::token(&self.syntax, SyntaxKind::ON_KW)
11277 }
11278}
11279
11280#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11281pub struct OnConflictClause {
11282 pub(crate) syntax: SyntaxNode,
11283}
11284impl OnConflictClause {
11285 #[inline]
11286 pub fn conflict_action(&self) -> Option<ConflictAction> {
11287 support::child(&self.syntax)
11288 }
11289 #[inline]
11290 pub fn conflict_target(&self) -> Option<ConflictTarget> {
11291 support::child(&self.syntax)
11292 }
11293 #[inline]
11294 pub fn conflict_token(&self) -> Option<SyntaxToken> {
11295 support::token(&self.syntax, SyntaxKind::CONFLICT_KW)
11296 }
11297 #[inline]
11298 pub fn on_token(&self) -> Option<SyntaxToken> {
11299 support::token(&self.syntax, SyntaxKind::ON_KW)
11300 }
11301}
11302
11303#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11304pub struct OnDeleteAction {
11305 pub(crate) syntax: SyntaxNode,
11306}
11307impl OnDeleteAction {
11308 #[inline]
11309 pub fn ref_action(&self) -> Option<RefAction> {
11310 support::child(&self.syntax)
11311 }
11312 #[inline]
11313 pub fn delete_token(&self) -> Option<SyntaxToken> {
11314 support::token(&self.syntax, SyntaxKind::DELETE_KW)
11315 }
11316 #[inline]
11317 pub fn on_token(&self) -> Option<SyntaxToken> {
11318 support::token(&self.syntax, SyntaxKind::ON_KW)
11319 }
11320}
11321
11322#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11323pub struct OnTable {
11324 pub(crate) syntax: SyntaxNode,
11325}
11326impl OnTable {
11327 #[inline]
11328 pub fn path(&self) -> Option<Path> {
11329 support::child(&self.syntax)
11330 }
11331 #[inline]
11332 pub fn on_token(&self) -> Option<SyntaxToken> {
11333 support::token(&self.syntax, SyntaxKind::ON_KW)
11334 }
11335}
11336
11337#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11338pub struct OnUpdateAction {
11339 pub(crate) syntax: SyntaxNode,
11340}
11341impl OnUpdateAction {
11342 #[inline]
11343 pub fn ref_action(&self) -> Option<RefAction> {
11344 support::child(&self.syntax)
11345 }
11346 #[inline]
11347 pub fn on_token(&self) -> Option<SyntaxToken> {
11348 support::token(&self.syntax, SyntaxKind::ON_KW)
11349 }
11350 #[inline]
11351 pub fn update_token(&self) -> Option<SyntaxToken> {
11352 support::token(&self.syntax, SyntaxKind::UPDATE_KW)
11353 }
11354}
11355
11356#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11357pub struct Op {
11358 pub(crate) syntax: SyntaxNode,
11359}
11360impl Op {
11361 #[inline]
11362 pub fn at_time_zone(&self) -> Option<AtTimeZone> {
11363 support::child(&self.syntax)
11364 }
11365 #[inline]
11366 pub fn colon_colon(&self) -> Option<ColonColon> {
11367 support::child(&self.syntax)
11368 }
11369 #[inline]
11370 pub fn colon_eq(&self) -> Option<ColonEq> {
11371 support::child(&self.syntax)
11372 }
11373 #[inline]
11374 pub fn custom_op(&self) -> Option<CustomOp> {
11375 support::child(&self.syntax)
11376 }
11377 #[inline]
11378 pub fn fat_arrow(&self) -> Option<FatArrow> {
11379 support::child(&self.syntax)
11380 }
11381 #[inline]
11382 pub fn gteq(&self) -> Option<Gteq> {
11383 support::child(&self.syntax)
11384 }
11385 #[inline]
11386 pub fn is_distinct_from(&self) -> Option<IsDistinctFrom> {
11387 support::child(&self.syntax)
11388 }
11389 #[inline]
11390 pub fn is_json(&self) -> Option<IsJson> {
11391 support::child(&self.syntax)
11392 }
11393 #[inline]
11394 pub fn is_json_array(&self) -> Option<IsJsonArray> {
11395 support::child(&self.syntax)
11396 }
11397 #[inline]
11398 pub fn is_json_object(&self) -> Option<IsJsonObject> {
11399 support::child(&self.syntax)
11400 }
11401 #[inline]
11402 pub fn is_json_scalar(&self) -> Option<IsJsonScalar> {
11403 support::child(&self.syntax)
11404 }
11405 #[inline]
11406 pub fn is_json_value(&self) -> Option<IsJsonValue> {
11407 support::child(&self.syntax)
11408 }
11409 #[inline]
11410 pub fn is_not(&self) -> Option<IsNot> {
11411 support::child(&self.syntax)
11412 }
11413 #[inline]
11414 pub fn is_not_distinct_from(&self) -> Option<IsNotDistinctFrom> {
11415 support::child(&self.syntax)
11416 }
11417 #[inline]
11418 pub fn is_not_json(&self) -> Option<IsNotJson> {
11419 support::child(&self.syntax)
11420 }
11421 #[inline]
11422 pub fn is_not_json_array(&self) -> Option<IsNotJsonArray> {
11423 support::child(&self.syntax)
11424 }
11425 #[inline]
11426 pub fn is_not_json_scalar(&self) -> Option<IsNotJsonScalar> {
11427 support::child(&self.syntax)
11428 }
11429 #[inline]
11430 pub fn is_not_json_value(&self) -> Option<IsNotJsonValue> {
11431 support::child(&self.syntax)
11432 }
11433 #[inline]
11434 pub fn lteq(&self) -> Option<Lteq> {
11435 support::child(&self.syntax)
11436 }
11437 #[inline]
11438 pub fn neq(&self) -> Option<Neq> {
11439 support::child(&self.syntax)
11440 }
11441 #[inline]
11442 pub fn neqb(&self) -> Option<Neqb> {
11443 support::child(&self.syntax)
11444 }
11445 #[inline]
11446 pub fn not_ilike(&self) -> Option<NotIlike> {
11447 support::child(&self.syntax)
11448 }
11449 #[inline]
11450 pub fn not_in(&self) -> Option<NotIn> {
11451 support::child(&self.syntax)
11452 }
11453 #[inline]
11454 pub fn not_like(&self) -> Option<NotLike> {
11455 support::child(&self.syntax)
11456 }
11457 #[inline]
11458 pub fn not_similar_to(&self) -> Option<NotSimilarTo> {
11459 support::child(&self.syntax)
11460 }
11461 #[inline]
11462 pub fn operator_call(&self) -> Option<OperatorCall> {
11463 support::child(&self.syntax)
11464 }
11465 #[inline]
11466 pub fn similar_to(&self) -> Option<SimilarTo> {
11467 support::child(&self.syntax)
11468 }
11469 #[inline]
11470 pub fn percent_token(&self) -> Option<SyntaxToken> {
11471 support::token(&self.syntax, SyntaxKind::PERCENT)
11472 }
11473 #[inline]
11474 pub fn plus_token(&self) -> Option<SyntaxToken> {
11475 support::token(&self.syntax, SyntaxKind::PLUS)
11476 }
11477 #[inline]
11478 pub fn minus_token(&self) -> Option<SyntaxToken> {
11479 support::token(&self.syntax, SyntaxKind::MINUS)
11480 }
11481 #[inline]
11482 pub fn slash_token(&self) -> Option<SyntaxToken> {
11483 support::token(&self.syntax, SyntaxKind::SLASH)
11484 }
11485 #[inline]
11486 pub fn colon_token(&self) -> Option<SyntaxToken> {
11487 support::token(&self.syntax, SyntaxKind::COLON)
11488 }
11489 #[inline]
11490 pub fn l_angle_token(&self) -> Option<SyntaxToken> {
11491 support::token(&self.syntax, SyntaxKind::L_ANGLE)
11492 }
11493 #[inline]
11494 pub fn eq_token(&self) -> Option<SyntaxToken> {
11495 support::token(&self.syntax, SyntaxKind::EQ)
11496 }
11497 #[inline]
11498 pub fn r_angle_token(&self) -> Option<SyntaxToken> {
11499 support::token(&self.syntax, SyntaxKind::R_ANGLE)
11500 }
11501 #[inline]
11502 pub fn caret_token(&self) -> Option<SyntaxToken> {
11503 support::token(&self.syntax, SyntaxKind::CARET)
11504 }
11505 #[inline]
11506 pub fn and_token(&self) -> Option<SyntaxToken> {
11507 support::token(&self.syntax, SyntaxKind::AND_KW)
11508 }
11509 #[inline]
11510 pub fn collate_token(&self) -> Option<SyntaxToken> {
11511 support::token(&self.syntax, SyntaxKind::COLLATE_KW)
11512 }
11513 #[inline]
11514 pub fn ilike_token(&self) -> Option<SyntaxToken> {
11515 support::token(&self.syntax, SyntaxKind::ILIKE_KW)
11516 }
11517 #[inline]
11518 pub fn in_token(&self) -> Option<SyntaxToken> {
11519 support::token(&self.syntax, SyntaxKind::IN_KW)
11520 }
11521 #[inline]
11522 pub fn is_token(&self) -> Option<SyntaxToken> {
11523 support::token(&self.syntax, SyntaxKind::IS_KW)
11524 }
11525 #[inline]
11526 pub fn like_token(&self) -> Option<SyntaxToken> {
11527 support::token(&self.syntax, SyntaxKind::LIKE_KW)
11528 }
11529 #[inline]
11530 pub fn or_token(&self) -> Option<SyntaxToken> {
11531 support::token(&self.syntax, SyntaxKind::OR_KW)
11532 }
11533 #[inline]
11534 pub fn overlaps_token(&self) -> Option<SyntaxToken> {
11535 support::token(&self.syntax, SyntaxKind::OVERLAPS_KW)
11536 }
11537 #[inline]
11538 pub fn value_token(&self) -> Option<SyntaxToken> {
11539 support::token(&self.syntax, SyntaxKind::VALUE_KW)
11540 }
11541}
11542
11543#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11544pub struct OpClassOption {
11545 pub(crate) syntax: SyntaxNode,
11546}
11547impl OpClassOption {
11548 #[inline]
11549 pub fn function_sig(&self) -> Option<FunctionSig> {
11550 support::child(&self.syntax)
11551 }
11552 #[inline]
11553 pub fn literal(&self) -> Option<Literal> {
11554 support::child(&self.syntax)
11555 }
11556 #[inline]
11557 pub fn op(&self) -> Option<Op> {
11558 support::child(&self.syntax)
11559 }
11560 #[inline]
11561 pub fn param_list(&self) -> Option<ParamList> {
11562 support::child(&self.syntax)
11563 }
11564 #[inline]
11565 pub fn path(&self) -> Option<Path> {
11566 support::child(&self.syntax)
11567 }
11568 #[inline]
11569 pub fn ty(&self) -> Option<Type> {
11570 support::child(&self.syntax)
11571 }
11572 #[inline]
11573 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
11574 support::token(&self.syntax, SyntaxKind::L_PAREN)
11575 }
11576 #[inline]
11577 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
11578 support::token(&self.syntax, SyntaxKind::R_PAREN)
11579 }
11580 #[inline]
11581 pub fn comma_token(&self) -> Option<SyntaxToken> {
11582 support::token(&self.syntax, SyntaxKind::COMMA)
11583 }
11584 #[inline]
11585 pub fn by_token(&self) -> Option<SyntaxToken> {
11586 support::token(&self.syntax, SyntaxKind::BY_KW)
11587 }
11588 #[inline]
11589 pub fn for_token(&self) -> Option<SyntaxToken> {
11590 support::token(&self.syntax, SyntaxKind::FOR_KW)
11591 }
11592 #[inline]
11593 pub fn function_token(&self) -> Option<SyntaxToken> {
11594 support::token(&self.syntax, SyntaxKind::FUNCTION_KW)
11595 }
11596 #[inline]
11597 pub fn operator_token(&self) -> Option<SyntaxToken> {
11598 support::token(&self.syntax, SyntaxKind::OPERATOR_KW)
11599 }
11600 #[inline]
11601 pub fn order_token(&self) -> Option<SyntaxToken> {
11602 support::token(&self.syntax, SyntaxKind::ORDER_KW)
11603 }
11604 #[inline]
11605 pub fn search_token(&self) -> Option<SyntaxToken> {
11606 support::token(&self.syntax, SyntaxKind::SEARCH_KW)
11607 }
11608 #[inline]
11609 pub fn storage_token(&self) -> Option<SyntaxToken> {
11610 support::token(&self.syntax, SyntaxKind::STORAGE_KW)
11611 }
11612}
11613
11614#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11615pub struct OpSig {
11616 pub(crate) syntax: SyntaxNode,
11617}
11618impl OpSig {
11619 #[inline]
11620 pub fn op(&self) -> Option<Op> {
11621 support::child(&self.syntax)
11622 }
11623 #[inline]
11624 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
11625 support::token(&self.syntax, SyntaxKind::L_PAREN)
11626 }
11627 #[inline]
11628 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
11629 support::token(&self.syntax, SyntaxKind::R_PAREN)
11630 }
11631 #[inline]
11632 pub fn comma_token(&self) -> Option<SyntaxToken> {
11633 support::token(&self.syntax, SyntaxKind::COMMA)
11634 }
11635 #[inline]
11636 pub fn none_token(&self) -> Option<SyntaxToken> {
11637 support::token(&self.syntax, SyntaxKind::NONE_KW)
11638 }
11639}
11640
11641#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11642pub struct OpSigList {
11643 pub(crate) syntax: SyntaxNode,
11644}
11645impl OpSigList {
11646 #[inline]
11647 pub fn op_sigs(&self) -> AstChildren<OpSig> {
11648 support::children(&self.syntax)
11649 }
11650}
11651
11652#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11653pub struct OperatorCall {
11654 pub(crate) syntax: SyntaxNode,
11655}
11656impl OperatorCall {
11657 #[inline]
11658 pub fn op(&self) -> Option<Op> {
11659 support::child(&self.syntax)
11660 }
11661 #[inline]
11662 pub fn path(&self) -> Option<Path> {
11663 support::child(&self.syntax)
11664 }
11665 #[inline]
11666 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
11667 support::token(&self.syntax, SyntaxKind::L_PAREN)
11668 }
11669 #[inline]
11670 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
11671 support::token(&self.syntax, SyntaxKind::R_PAREN)
11672 }
11673 #[inline]
11674 pub fn dot_token(&self) -> Option<SyntaxToken> {
11675 support::token(&self.syntax, SyntaxKind::DOT)
11676 }
11677 #[inline]
11678 pub fn operator_token(&self) -> Option<SyntaxToken> {
11679 support::token(&self.syntax, SyntaxKind::OPERATOR_KW)
11680 }
11681}
11682
11683#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11684pub struct OperatorClassOptionList {
11685 pub(crate) syntax: SyntaxNode,
11686}
11687impl OperatorClassOptionList {
11688 #[inline]
11689 pub fn op_class_options(&self) -> AstChildren<OpClassOption> {
11690 support::children(&self.syntax)
11691 }
11692}
11693
11694#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11695pub struct OptionItem {
11696 pub(crate) syntax: SyntaxNode,
11697}
11698impl OptionItem {
11699 #[inline]
11700 pub fn expr(&self) -> Option<Expr> {
11701 support::child(&self.syntax)
11702 }
11703 #[inline]
11704 pub fn default_token(&self) -> Option<SyntaxToken> {
11705 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
11706 }
11707}
11708
11709#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11710pub struct OptionItemList {
11711 pub(crate) syntax: SyntaxNode,
11712}
11713impl OptionItemList {
11714 #[inline]
11715 pub fn option_items(&self) -> AstChildren<OptionItem> {
11716 support::children(&self.syntax)
11717 }
11718 #[inline]
11719 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
11720 support::token(&self.syntax, SyntaxKind::L_PAREN)
11721 }
11722 #[inline]
11723 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
11724 support::token(&self.syntax, SyntaxKind::R_PAREN)
11725 }
11726}
11727
11728#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11729pub struct OrReplace {
11730 pub(crate) syntax: SyntaxNode,
11731}
11732impl OrReplace {
11733 #[inline]
11734 pub fn or_token(&self) -> Option<SyntaxToken> {
11735 support::token(&self.syntax, SyntaxKind::OR_KW)
11736 }
11737 #[inline]
11738 pub fn replace_token(&self) -> Option<SyntaxToken> {
11739 support::token(&self.syntax, SyntaxKind::REPLACE_KW)
11740 }
11741}
11742
11743#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11744pub struct OrderByClause {
11745 pub(crate) syntax: SyntaxNode,
11746}
11747impl OrderByClause {
11748 #[inline]
11749 pub fn sort_by_list(&self) -> Option<SortByList> {
11750 support::child(&self.syntax)
11751 }
11752 #[inline]
11753 pub fn by_token(&self) -> Option<SyntaxToken> {
11754 support::token(&self.syntax, SyntaxKind::BY_KW)
11755 }
11756 #[inline]
11757 pub fn order_token(&self) -> Option<SyntaxToken> {
11758 support::token(&self.syntax, SyntaxKind::ORDER_KW)
11759 }
11760}
11761
11762#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11763pub struct OverClause {
11764 pub(crate) syntax: SyntaxNode,
11765}
11766impl OverClause {
11767 #[inline]
11768 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
11769 support::token(&self.syntax, SyntaxKind::L_PAREN)
11770 }
11771 #[inline]
11772 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
11773 support::token(&self.syntax, SyntaxKind::R_PAREN)
11774 }
11775 #[inline]
11776 pub fn over_token(&self) -> Option<SyntaxToken> {
11777 support::token(&self.syntax, SyntaxKind::OVER_KW)
11778 }
11779}
11780
11781#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11782pub struct OverlayFn {
11783 pub(crate) syntax: SyntaxNode,
11784}
11785impl OverlayFn {
11786 #[inline]
11787 pub fn expr(&self) -> Option<Expr> {
11788 support::child(&self.syntax)
11789 }
11790 #[inline]
11791 pub fn exprs(&self) -> AstChildren<Expr> {
11792 support::children(&self.syntax)
11793 }
11794 #[inline]
11795 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
11796 support::token(&self.syntax, SyntaxKind::L_PAREN)
11797 }
11798 #[inline]
11799 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
11800 support::token(&self.syntax, SyntaxKind::R_PAREN)
11801 }
11802 #[inline]
11803 pub fn for_token(&self) -> Option<SyntaxToken> {
11804 support::token(&self.syntax, SyntaxKind::FOR_KW)
11805 }
11806 #[inline]
11807 pub fn from_token(&self) -> Option<SyntaxToken> {
11808 support::token(&self.syntax, SyntaxKind::FROM_KW)
11809 }
11810 #[inline]
11811 pub fn overlay_token(&self) -> Option<SyntaxToken> {
11812 support::token(&self.syntax, SyntaxKind::OVERLAY_KW)
11813 }
11814 #[inline]
11815 pub fn placing_token(&self) -> Option<SyntaxToken> {
11816 support::token(&self.syntax, SyntaxKind::PLACING_KW)
11817 }
11818}
11819
11820#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11821pub struct OwnedByRoles {
11822 pub(crate) syntax: SyntaxNode,
11823}
11824impl OwnedByRoles {
11825 #[inline]
11826 pub fn role_ref_list(&self) -> Option<RoleRefList> {
11827 support::child(&self.syntax)
11828 }
11829 #[inline]
11830 pub fn by_token(&self) -> Option<SyntaxToken> {
11831 support::token(&self.syntax, SyntaxKind::BY_KW)
11832 }
11833 #[inline]
11834 pub fn owned_token(&self) -> Option<SyntaxToken> {
11835 support::token(&self.syntax, SyntaxKind::OWNED_KW)
11836 }
11837}
11838
11839#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11840pub struct OwnerTo {
11841 pub(crate) syntax: SyntaxNode,
11842}
11843impl OwnerTo {
11844 #[inline]
11845 pub fn role_ref(&self) -> Option<RoleRef> {
11846 support::child(&self.syntax)
11847 }
11848 #[inline]
11849 pub fn owner_token(&self) -> Option<SyntaxToken> {
11850 support::token(&self.syntax, SyntaxKind::OWNER_KW)
11851 }
11852 #[inline]
11853 pub fn to_token(&self) -> Option<SyntaxToken> {
11854 support::token(&self.syntax, SyntaxKind::TO_KW)
11855 }
11856}
11857
11858#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11859pub struct ParallelFuncOption {
11860 pub(crate) syntax: SyntaxNode,
11861}
11862impl ParallelFuncOption {
11863 #[inline]
11864 pub fn ident_token(&self) -> Option<SyntaxToken> {
11865 support::token(&self.syntax, SyntaxKind::IDENT)
11866 }
11867 #[inline]
11868 pub fn parallel_token(&self) -> Option<SyntaxToken> {
11869 support::token(&self.syntax, SyntaxKind::PARALLEL_KW)
11870 }
11871}
11872
11873#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11874pub struct Param {
11875 pub(crate) syntax: SyntaxNode,
11876}
11877impl Param {
11878 #[inline]
11879 pub fn mode(&self) -> Option<ParamMode> {
11880 support::child(&self.syntax)
11881 }
11882 #[inline]
11883 pub fn name(&self) -> Option<Name> {
11884 support::child(&self.syntax)
11885 }
11886 #[inline]
11887 pub fn param_default(&self) -> Option<ParamDefault> {
11888 support::child(&self.syntax)
11889 }
11890 #[inline]
11891 pub fn ty(&self) -> Option<Type> {
11892 support::child(&self.syntax)
11893 }
11894}
11895
11896#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11897pub struct ParamDefault {
11898 pub(crate) syntax: SyntaxNode,
11899}
11900impl ParamDefault {
11901 #[inline]
11902 pub fn expr(&self) -> Option<Expr> {
11903 support::child(&self.syntax)
11904 }
11905 #[inline]
11906 pub fn eq_token(&self) -> Option<SyntaxToken> {
11907 support::token(&self.syntax, SyntaxKind::EQ)
11908 }
11909 #[inline]
11910 pub fn default_token(&self) -> Option<SyntaxToken> {
11911 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
11912 }
11913}
11914
11915#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11916pub struct ParamIn {
11917 pub(crate) syntax: SyntaxNode,
11918}
11919impl ParamIn {
11920 #[inline]
11921 pub fn in_token(&self) -> Option<SyntaxToken> {
11922 support::token(&self.syntax, SyntaxKind::IN_KW)
11923 }
11924}
11925
11926#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11927pub struct ParamInOut {
11928 pub(crate) syntax: SyntaxNode,
11929}
11930impl ParamInOut {
11931 #[inline]
11932 pub fn in_token(&self) -> Option<SyntaxToken> {
11933 support::token(&self.syntax, SyntaxKind::IN_KW)
11934 }
11935 #[inline]
11936 pub fn inout_token(&self) -> Option<SyntaxToken> {
11937 support::token(&self.syntax, SyntaxKind::INOUT_KW)
11938 }
11939 #[inline]
11940 pub fn out_token(&self) -> Option<SyntaxToken> {
11941 support::token(&self.syntax, SyntaxKind::OUT_KW)
11942 }
11943}
11944
11945#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11946pub struct ParamList {
11947 pub(crate) syntax: SyntaxNode,
11948}
11949impl ParamList {
11950 #[inline]
11951 pub fn params(&self) -> AstChildren<Param> {
11952 support::children(&self.syntax)
11953 }
11954}
11955
11956#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11957pub struct ParamOut {
11958 pub(crate) syntax: SyntaxNode,
11959}
11960impl ParamOut {
11961 #[inline]
11962 pub fn out_token(&self) -> Option<SyntaxToken> {
11963 support::token(&self.syntax, SyntaxKind::OUT_KW)
11964 }
11965}
11966
11967#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11968pub struct ParamVariadic {
11969 pub(crate) syntax: SyntaxNode,
11970}
11971impl ParamVariadic {
11972 #[inline]
11973 pub fn variadic_token(&self) -> Option<SyntaxToken> {
11974 support::token(&self.syntax, SyntaxKind::VARIADIC_KW)
11975 }
11976}
11977
11978#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11979pub struct ParenExpr {
11980 pub(crate) syntax: SyntaxNode,
11981}
11982impl ParenExpr {
11983 #[inline]
11984 pub fn expr(&self) -> Option<Expr> {
11985 support::child(&self.syntax)
11986 }
11987 #[inline]
11988 pub fn from_item(&self) -> Option<FromItem> {
11989 support::child(&self.syntax)
11990 }
11991 #[inline]
11992 pub fn select(&self) -> Option<Select> {
11993 support::child(&self.syntax)
11994 }
11995 #[inline]
11996 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
11997 support::token(&self.syntax, SyntaxKind::L_PAREN)
11998 }
11999 #[inline]
12000 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
12001 support::token(&self.syntax, SyntaxKind::R_PAREN)
12002 }
12003}
12004
12005#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12006pub struct ParenSelect {
12007 pub(crate) syntax: SyntaxNode,
12008}
12009impl ParenSelect {
12010 #[inline]
12011 pub fn select(&self) -> Option<SelectVariant> {
12012 support::child(&self.syntax)
12013 }
12014 #[inline]
12015 pub fn with_clause(&self) -> Option<WithClause> {
12016 support::child(&self.syntax)
12017 }
12018 #[inline]
12019 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
12020 support::token(&self.syntax, SyntaxKind::L_PAREN)
12021 }
12022 #[inline]
12023 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
12024 support::token(&self.syntax, SyntaxKind::R_PAREN)
12025 }
12026}
12027
12028#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12029pub struct Partition {
12030 pub(crate) syntax: SyntaxNode,
12031}
12032impl Partition {
12033 #[inline]
12034 pub fn partition_type(&self) -> Option<PartitionType> {
12035 support::child(&self.syntax)
12036 }
12037 #[inline]
12038 pub fn path(&self) -> Option<Path> {
12039 support::child(&self.syntax)
12040 }
12041 #[inline]
12042 pub fn partition_token(&self) -> Option<SyntaxToken> {
12043 support::token(&self.syntax, SyntaxKind::PARTITION_KW)
12044 }
12045}
12046
12047#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12048pub struct PartitionBy {
12049 pub(crate) syntax: SyntaxNode,
12050}
12051impl PartitionBy {
12052 #[inline]
12053 pub fn partition_item_list(&self) -> Option<PartitionItemList> {
12054 support::child(&self.syntax)
12055 }
12056 #[inline]
12057 pub fn by_token(&self) -> Option<SyntaxToken> {
12058 support::token(&self.syntax, SyntaxKind::BY_KW)
12059 }
12060 #[inline]
12061 pub fn ident_token(&self) -> Option<SyntaxToken> {
12062 support::token(&self.syntax, SyntaxKind::IDENT)
12063 }
12064 #[inline]
12065 pub fn partition_token(&self) -> Option<SyntaxToken> {
12066 support::token(&self.syntax, SyntaxKind::PARTITION_KW)
12067 }
12068 #[inline]
12069 pub fn range_token(&self) -> Option<SyntaxToken> {
12070 support::token(&self.syntax, SyntaxKind::RANGE_KW)
12071 }
12072}
12073
12074#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12075pub struct PartitionDefault {
12076 pub(crate) syntax: SyntaxNode,
12077}
12078impl PartitionDefault {
12079 #[inline]
12080 pub fn default_token(&self) -> Option<SyntaxToken> {
12081 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
12082 }
12083}
12084
12085#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12086pub struct PartitionForValuesFrom {
12087 pub(crate) syntax: SyntaxNode,
12088}
12089impl PartitionForValuesFrom {
12090 #[inline]
12091 pub fn exprs(&self) -> AstChildren<Expr> {
12092 support::children(&self.syntax)
12093 }
12094 #[inline]
12095 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
12096 support::token(&self.syntax, SyntaxKind::L_PAREN)
12097 }
12098 #[inline]
12099 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
12100 support::token(&self.syntax, SyntaxKind::R_PAREN)
12101 }
12102 #[inline]
12103 pub fn for_token(&self) -> Option<SyntaxToken> {
12104 support::token(&self.syntax, SyntaxKind::FOR_KW)
12105 }
12106 #[inline]
12107 pub fn from_token(&self) -> Option<SyntaxToken> {
12108 support::token(&self.syntax, SyntaxKind::FROM_KW)
12109 }
12110 #[inline]
12111 pub fn to_token(&self) -> Option<SyntaxToken> {
12112 support::token(&self.syntax, SyntaxKind::TO_KW)
12113 }
12114 #[inline]
12115 pub fn values_token(&self) -> Option<SyntaxToken> {
12116 support::token(&self.syntax, SyntaxKind::VALUES_KW)
12117 }
12118}
12119
12120#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12121pub struct PartitionForValuesIn {
12122 pub(crate) syntax: SyntaxNode,
12123}
12124impl PartitionForValuesIn {
12125 #[inline]
12126 pub fn exprs(&self) -> AstChildren<Expr> {
12127 support::children(&self.syntax)
12128 }
12129 #[inline]
12130 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
12131 support::token(&self.syntax, SyntaxKind::L_PAREN)
12132 }
12133 #[inline]
12134 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
12135 support::token(&self.syntax, SyntaxKind::R_PAREN)
12136 }
12137 #[inline]
12138 pub fn for_token(&self) -> Option<SyntaxToken> {
12139 support::token(&self.syntax, SyntaxKind::FOR_KW)
12140 }
12141 #[inline]
12142 pub fn in_token(&self) -> Option<SyntaxToken> {
12143 support::token(&self.syntax, SyntaxKind::IN_KW)
12144 }
12145 #[inline]
12146 pub fn values_token(&self) -> Option<SyntaxToken> {
12147 support::token(&self.syntax, SyntaxKind::VALUES_KW)
12148 }
12149}
12150
12151#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12152pub struct PartitionForValuesWith {
12153 pub(crate) syntax: SyntaxNode,
12154}
12155impl PartitionForValuesWith {
12156 #[inline]
12157 pub fn literal(&self) -> Option<Literal> {
12158 support::child(&self.syntax)
12159 }
12160 #[inline]
12161 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
12162 support::token(&self.syntax, SyntaxKind::L_PAREN)
12163 }
12164 #[inline]
12165 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
12166 support::token(&self.syntax, SyntaxKind::R_PAREN)
12167 }
12168 #[inline]
12169 pub fn comma_token(&self) -> Option<SyntaxToken> {
12170 support::token(&self.syntax, SyntaxKind::COMMA)
12171 }
12172 #[inline]
12173 pub fn for_token(&self) -> Option<SyntaxToken> {
12174 support::token(&self.syntax, SyntaxKind::FOR_KW)
12175 }
12176 #[inline]
12177 pub fn ident_token(&self) -> Option<SyntaxToken> {
12178 support::token(&self.syntax, SyntaxKind::IDENT)
12179 }
12180 #[inline]
12181 pub fn values_token(&self) -> Option<SyntaxToken> {
12182 support::token(&self.syntax, SyntaxKind::VALUES_KW)
12183 }
12184 #[inline]
12185 pub fn with_token(&self) -> Option<SyntaxToken> {
12186 support::token(&self.syntax, SyntaxKind::WITH_KW)
12187 }
12188}
12189
12190#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12191pub struct PartitionItem {
12192 pub(crate) syntax: SyntaxNode,
12193}
12194impl PartitionItem {
12195 #[inline]
12196 pub fn collate(&self) -> Option<Collate> {
12197 support::child(&self.syntax)
12198 }
12199 #[inline]
12200 pub fn expr(&self) -> Option<Expr> {
12201 support::child(&self.syntax)
12202 }
12203}
12204
12205#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12206pub struct PartitionItemList {
12207 pub(crate) syntax: SyntaxNode,
12208}
12209impl PartitionItemList {
12210 #[inline]
12211 pub fn partition_items(&self) -> AstChildren<PartitionItem> {
12212 support::children(&self.syntax)
12213 }
12214 #[inline]
12215 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
12216 support::token(&self.syntax, SyntaxKind::L_PAREN)
12217 }
12218 #[inline]
12219 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
12220 support::token(&self.syntax, SyntaxKind::R_PAREN)
12221 }
12222}
12223
12224#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12225pub struct PartitionList {
12226 pub(crate) syntax: SyntaxNode,
12227}
12228impl PartitionList {
12229 #[inline]
12230 pub fn partitions(&self) -> AstChildren<Partition> {
12231 support::children(&self.syntax)
12232 }
12233 #[inline]
12234 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
12235 support::token(&self.syntax, SyntaxKind::L_PAREN)
12236 }
12237 #[inline]
12238 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
12239 support::token(&self.syntax, SyntaxKind::R_PAREN)
12240 }
12241}
12242
12243#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12244pub struct PartitionOf {
12245 pub(crate) syntax: SyntaxNode,
12246}
12247impl PartitionOf {
12248 #[inline]
12249 pub fn path(&self) -> Option<Path> {
12250 support::child(&self.syntax)
12251 }
12252 #[inline]
12253 pub fn of_token(&self) -> Option<SyntaxToken> {
12254 support::token(&self.syntax, SyntaxKind::OF_KW)
12255 }
12256 #[inline]
12257 pub fn partition_token(&self) -> Option<SyntaxToken> {
12258 support::token(&self.syntax, SyntaxKind::PARTITION_KW)
12259 }
12260}
12261
12262#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12263pub struct Path {
12264 pub(crate) syntax: SyntaxNode,
12265}
12266impl Path {
12267 #[inline]
12268 pub fn qualifier(&self) -> Option<Path> {
12269 support::child(&self.syntax)
12270 }
12271 #[inline]
12272 pub fn segment(&self) -> Option<PathSegment> {
12273 support::child(&self.syntax)
12274 }
12275 #[inline]
12276 pub fn dot_token(&self) -> Option<SyntaxToken> {
12277 support::token(&self.syntax, SyntaxKind::DOT)
12278 }
12279}
12280
12281#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12282pub struct PathSegment {
12283 pub(crate) syntax: SyntaxNode,
12284}
12285impl PathSegment {
12286 #[inline]
12287 pub fn name(&self) -> Option<Name> {
12288 support::child(&self.syntax)
12289 }
12290 #[inline]
12291 pub fn name_ref(&self) -> Option<NameRef> {
12292 support::child(&self.syntax)
12293 }
12294}
12295
12296#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12297pub struct PathType {
12298 pub(crate) syntax: SyntaxNode,
12299}
12300impl PathType {
12301 #[inline]
12302 pub fn arg_list(&self) -> Option<ArgList> {
12303 support::child(&self.syntax)
12304 }
12305 #[inline]
12306 pub fn path(&self) -> Option<Path> {
12307 support::child(&self.syntax)
12308 }
12309}
12310
12311#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12312pub struct PercentType {
12313 pub(crate) syntax: SyntaxNode,
12314}
12315impl PercentType {
12316 #[inline]
12317 pub fn percent_token(&self) -> Option<SyntaxToken> {
12318 support::token(&self.syntax, SyntaxKind::PERCENT)
12319 }
12320 #[inline]
12321 pub fn type_token(&self) -> Option<SyntaxToken> {
12322 support::token(&self.syntax, SyntaxKind::TYPE_KW)
12323 }
12324}
12325
12326#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12327pub struct PercentTypeClause {
12328 pub(crate) syntax: SyntaxNode,
12329}
12330impl PercentTypeClause {
12331 #[inline]
12332 pub fn path(&self) -> Option<Path> {
12333 support::child(&self.syntax)
12334 }
12335 #[inline]
12336 pub fn percent_type_clause(&self) -> Option<PercentTypeClause> {
12337 support::child(&self.syntax)
12338 }
12339}
12340
12341#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12342pub struct PositionFn {
12343 pub(crate) syntax: SyntaxNode,
12344}
12345impl PositionFn {
12346 #[inline]
12347 pub fn expr(&self) -> Option<Expr> {
12348 support::child(&self.syntax)
12349 }
12350 #[inline]
12351 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
12352 support::token(&self.syntax, SyntaxKind::L_PAREN)
12353 }
12354 #[inline]
12355 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
12356 support::token(&self.syntax, SyntaxKind::R_PAREN)
12357 }
12358 #[inline]
12359 pub fn in_token(&self) -> Option<SyntaxToken> {
12360 support::token(&self.syntax, SyntaxKind::IN_KW)
12361 }
12362 #[inline]
12363 pub fn position_token(&self) -> Option<SyntaxToken> {
12364 support::token(&self.syntax, SyntaxKind::POSITION_KW)
12365 }
12366}
12367
12368#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12369pub struct PostfixExpr {
12370 pub(crate) syntax: SyntaxNode,
12371}
12372impl PostfixExpr {
12373 #[inline]
12374 pub fn expr(&self) -> Option<Expr> {
12375 support::child(&self.syntax)
12376 }
12377}
12378
12379#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12380pub struct PrefixExpr {
12381 pub(crate) syntax: SyntaxNode,
12382}
12383impl PrefixExpr {
12384 #[inline]
12385 pub fn expr(&self) -> Option<Expr> {
12386 support::child(&self.syntax)
12387 }
12388}
12389
12390#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12391pub struct Prepare {
12392 pub(crate) syntax: SyntaxNode,
12393}
12394impl Prepare {
12395 #[inline]
12396 pub fn name(&self) -> Option<Name> {
12397 support::child(&self.syntax)
12398 }
12399 #[inline]
12400 pub fn preparable_stmt(&self) -> Option<PreparableStmt> {
12401 support::child(&self.syntax)
12402 }
12403 #[inline]
12404 pub fn as_token(&self) -> Option<SyntaxToken> {
12405 support::token(&self.syntax, SyntaxKind::AS_KW)
12406 }
12407 #[inline]
12408 pub fn prepare_token(&self) -> Option<SyntaxToken> {
12409 support::token(&self.syntax, SyntaxKind::PREPARE_KW)
12410 }
12411}
12412
12413#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12414pub struct PrepareTransaction {
12415 pub(crate) syntax: SyntaxNode,
12416}
12417impl PrepareTransaction {
12418 #[inline]
12419 pub fn literal(&self) -> Option<Literal> {
12420 support::child(&self.syntax)
12421 }
12422 #[inline]
12423 pub fn prepare_token(&self) -> Option<SyntaxToken> {
12424 support::token(&self.syntax, SyntaxKind::PREPARE_KW)
12425 }
12426 #[inline]
12427 pub fn transaction_token(&self) -> Option<SyntaxToken> {
12428 support::token(&self.syntax, SyntaxKind::TRANSACTION_KW)
12429 }
12430}
12431
12432#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12433pub struct PreserveRows {
12434 pub(crate) syntax: SyntaxNode,
12435}
12436impl PreserveRows {
12437 #[inline]
12438 pub fn preserve_token(&self) -> Option<SyntaxToken> {
12439 support::token(&self.syntax, SyntaxKind::PRESERVE_KW)
12440 }
12441 #[inline]
12442 pub fn rows_token(&self) -> Option<SyntaxToken> {
12443 support::token(&self.syntax, SyntaxKind::ROWS_KW)
12444 }
12445}
12446
12447#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12448pub struct PrimaryKeyConstraint {
12449 pub(crate) syntax: SyntaxNode,
12450}
12451impl PrimaryKeyConstraint {
12452 #[inline]
12453 pub fn column_list(&self) -> Option<ColumnList> {
12454 support::child(&self.syntax)
12455 }
12456 #[inline]
12457 pub fn constraint_name(&self) -> Option<ConstraintName> {
12458 support::child(&self.syntax)
12459 }
12460 #[inline]
12461 pub fn partition_item_list(&self) -> Option<PartitionItemList> {
12462 support::child(&self.syntax)
12463 }
12464 #[inline]
12465 pub fn using_index(&self) -> Option<UsingIndex> {
12466 support::child(&self.syntax)
12467 }
12468 #[inline]
12469 pub fn key_token(&self) -> Option<SyntaxToken> {
12470 support::token(&self.syntax, SyntaxKind::KEY_KW)
12471 }
12472 #[inline]
12473 pub fn primary_token(&self) -> Option<SyntaxToken> {
12474 support::token(&self.syntax, SyntaxKind::PRIMARY_KW)
12475 }
12476}
12477
12478#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12479pub struct PrivilegeTarget {
12480 pub(crate) syntax: SyntaxNode,
12481}
12482impl PrivilegeTarget {
12483 #[inline]
12484 pub fn functions_token(&self) -> Option<SyntaxToken> {
12485 support::token(&self.syntax, SyntaxKind::FUNCTIONS_KW)
12486 }
12487 #[inline]
12488 pub fn large_token(&self) -> Option<SyntaxToken> {
12489 support::token(&self.syntax, SyntaxKind::LARGE_KW)
12490 }
12491 #[inline]
12492 pub fn objects_token(&self) -> Option<SyntaxToken> {
12493 support::token(&self.syntax, SyntaxKind::OBJECTS_KW)
12494 }
12495 #[inline]
12496 pub fn routines_token(&self) -> Option<SyntaxToken> {
12497 support::token(&self.syntax, SyntaxKind::ROUTINES_KW)
12498 }
12499 #[inline]
12500 pub fn schemas_token(&self) -> Option<SyntaxToken> {
12501 support::token(&self.syntax, SyntaxKind::SCHEMAS_KW)
12502 }
12503 #[inline]
12504 pub fn sequences_token(&self) -> Option<SyntaxToken> {
12505 support::token(&self.syntax, SyntaxKind::SEQUENCES_KW)
12506 }
12507 #[inline]
12508 pub fn tables_token(&self) -> Option<SyntaxToken> {
12509 support::token(&self.syntax, SyntaxKind::TABLES_KW)
12510 }
12511 #[inline]
12512 pub fn types_token(&self) -> Option<SyntaxToken> {
12513 support::token(&self.syntax, SyntaxKind::TYPES_KW)
12514 }
12515}
12516
12517#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12518pub struct Privileges {
12519 pub(crate) syntax: SyntaxNode,
12520}
12521impl Privileges {
12522 #[inline]
12523 pub fn column_list(&self) -> Option<ColumnList> {
12524 support::child(&self.syntax)
12525 }
12526 #[inline]
12527 pub fn revoke_command_list(&self) -> Option<RevokeCommandList> {
12528 support::child(&self.syntax)
12529 }
12530 #[inline]
12531 pub fn all_token(&self) -> Option<SyntaxToken> {
12532 support::token(&self.syntax, SyntaxKind::ALL_KW)
12533 }
12534 #[inline]
12535 pub fn privileges_token(&self) -> Option<SyntaxToken> {
12536 support::token(&self.syntax, SyntaxKind::PRIVILEGES_KW)
12537 }
12538}
12539
12540#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12541pub struct PublicationObject {
12542 pub(crate) syntax: SyntaxNode,
12543}
12544impl PublicationObject {
12545 #[inline]
12546 pub fn column_list(&self) -> Option<ColumnList> {
12547 support::child(&self.syntax)
12548 }
12549 #[inline]
12550 pub fn name_ref(&self) -> Option<NameRef> {
12551 support::child(&self.syntax)
12552 }
12553 #[inline]
12554 pub fn path(&self) -> Option<Path> {
12555 support::child(&self.syntax)
12556 }
12557 #[inline]
12558 pub fn where_condition_clause(&self) -> Option<WhereConditionClause> {
12559 support::child(&self.syntax)
12560 }
12561 #[inline]
12562 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
12563 support::token(&self.syntax, SyntaxKind::L_PAREN)
12564 }
12565 #[inline]
12566 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
12567 support::token(&self.syntax, SyntaxKind::R_PAREN)
12568 }
12569 #[inline]
12570 pub fn star_token(&self) -> Option<SyntaxToken> {
12571 support::token(&self.syntax, SyntaxKind::STAR)
12572 }
12573 #[inline]
12574 pub fn current_schema_token(&self) -> Option<SyntaxToken> {
12575 support::token(&self.syntax, SyntaxKind::CURRENT_SCHEMA_KW)
12576 }
12577 #[inline]
12578 pub fn in_token(&self) -> Option<SyntaxToken> {
12579 support::token(&self.syntax, SyntaxKind::IN_KW)
12580 }
12581 #[inline]
12582 pub fn only_token(&self) -> Option<SyntaxToken> {
12583 support::token(&self.syntax, SyntaxKind::ONLY_KW)
12584 }
12585 #[inline]
12586 pub fn schema_token(&self) -> Option<SyntaxToken> {
12587 support::token(&self.syntax, SyntaxKind::SCHEMA_KW)
12588 }
12589 #[inline]
12590 pub fn table_token(&self) -> Option<SyntaxToken> {
12591 support::token(&self.syntax, SyntaxKind::TABLE_KW)
12592 }
12593 #[inline]
12594 pub fn tables_token(&self) -> Option<SyntaxToken> {
12595 support::token(&self.syntax, SyntaxKind::TABLES_KW)
12596 }
12597}
12598
12599#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12600pub struct ReadCommitted {
12601 pub(crate) syntax: SyntaxNode,
12602}
12603impl ReadCommitted {
12604 #[inline]
12605 pub fn committed_token(&self) -> Option<SyntaxToken> {
12606 support::token(&self.syntax, SyntaxKind::COMMITTED_KW)
12607 }
12608 #[inline]
12609 pub fn isolation_token(&self) -> Option<SyntaxToken> {
12610 support::token(&self.syntax, SyntaxKind::ISOLATION_KW)
12611 }
12612 #[inline]
12613 pub fn level_token(&self) -> Option<SyntaxToken> {
12614 support::token(&self.syntax, SyntaxKind::LEVEL_KW)
12615 }
12616 #[inline]
12617 pub fn read_token(&self) -> Option<SyntaxToken> {
12618 support::token(&self.syntax, SyntaxKind::READ_KW)
12619 }
12620}
12621
12622#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12623pub struct ReadOnly {
12624 pub(crate) syntax: SyntaxNode,
12625}
12626impl ReadOnly {
12627 #[inline]
12628 pub fn only_token(&self) -> Option<SyntaxToken> {
12629 support::token(&self.syntax, SyntaxKind::ONLY_KW)
12630 }
12631 #[inline]
12632 pub fn read_token(&self) -> Option<SyntaxToken> {
12633 support::token(&self.syntax, SyntaxKind::READ_KW)
12634 }
12635}
12636
12637#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12638pub struct ReadUncommitted {
12639 pub(crate) syntax: SyntaxNode,
12640}
12641impl ReadUncommitted {
12642 #[inline]
12643 pub fn isolation_token(&self) -> Option<SyntaxToken> {
12644 support::token(&self.syntax, SyntaxKind::ISOLATION_KW)
12645 }
12646 #[inline]
12647 pub fn level_token(&self) -> Option<SyntaxToken> {
12648 support::token(&self.syntax, SyntaxKind::LEVEL_KW)
12649 }
12650 #[inline]
12651 pub fn read_token(&self) -> Option<SyntaxToken> {
12652 support::token(&self.syntax, SyntaxKind::READ_KW)
12653 }
12654 #[inline]
12655 pub fn uncommitted_token(&self) -> Option<SyntaxToken> {
12656 support::token(&self.syntax, SyntaxKind::UNCOMMITTED_KW)
12657 }
12658}
12659
12660#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12661pub struct ReadWrite {
12662 pub(crate) syntax: SyntaxNode,
12663}
12664impl ReadWrite {
12665 #[inline]
12666 pub fn read_token(&self) -> Option<SyntaxToken> {
12667 support::token(&self.syntax, SyntaxKind::READ_KW)
12668 }
12669 #[inline]
12670 pub fn write_token(&self) -> Option<SyntaxToken> {
12671 support::token(&self.syntax, SyntaxKind::WRITE_KW)
12672 }
12673}
12674
12675#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12676pub struct Reassign {
12677 pub(crate) syntax: SyntaxNode,
12678}
12679impl Reassign {
12680 #[inline]
12681 pub fn new_roles(&self) -> Option<RoleRefList> {
12682 support::child(&self.syntax)
12683 }
12684 #[inline]
12685 pub fn old_roles(&self) -> Option<RoleRefList> {
12686 support::child(&self.syntax)
12687 }
12688 #[inline]
12689 pub fn by_token(&self) -> Option<SyntaxToken> {
12690 support::token(&self.syntax, SyntaxKind::BY_KW)
12691 }
12692 #[inline]
12693 pub fn owned_token(&self) -> Option<SyntaxToken> {
12694 support::token(&self.syntax, SyntaxKind::OWNED_KW)
12695 }
12696 #[inline]
12697 pub fn reassign_token(&self) -> Option<SyntaxToken> {
12698 support::token(&self.syntax, SyntaxKind::REASSIGN_KW)
12699 }
12700 #[inline]
12701 pub fn to_token(&self) -> Option<SyntaxToken> {
12702 support::token(&self.syntax, SyntaxKind::TO_KW)
12703 }
12704}
12705
12706#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12707pub struct ReferencesConstraint {
12708 pub(crate) syntax: SyntaxNode,
12709}
12710impl ReferencesConstraint {
12711 #[inline]
12712 pub fn column(&self) -> Option<NameRef> {
12713 support::child(&self.syntax)
12714 }
12715 #[inline]
12716 pub fn constraint_name(&self) -> Option<ConstraintName> {
12717 support::child(&self.syntax)
12718 }
12719 #[inline]
12720 pub fn match_type(&self) -> Option<MatchType> {
12721 support::child(&self.syntax)
12722 }
12723 #[inline]
12724 pub fn on_delete_action(&self) -> Option<OnDeleteAction> {
12725 support::child(&self.syntax)
12726 }
12727 #[inline]
12728 pub fn on_update_action(&self) -> Option<OnUpdateAction> {
12729 support::child(&self.syntax)
12730 }
12731 #[inline]
12732 pub fn table(&self) -> Option<Path> {
12733 support::child(&self.syntax)
12734 }
12735 #[inline]
12736 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
12737 support::token(&self.syntax, SyntaxKind::L_PAREN)
12738 }
12739 #[inline]
12740 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
12741 support::token(&self.syntax, SyntaxKind::R_PAREN)
12742 }
12743 #[inline]
12744 pub fn references_token(&self) -> Option<SyntaxToken> {
12745 support::token(&self.syntax, SyntaxKind::REFERENCES_KW)
12746 }
12747}
12748
12749#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12750pub struct Referencing {
12751 pub(crate) syntax: SyntaxNode,
12752}
12753impl Referencing {
12754 #[inline]
12755 pub fn referencing_tables(&self) -> AstChildren<ReferencingTable> {
12756 support::children(&self.syntax)
12757 }
12758 #[inline]
12759 pub fn referencing_token(&self) -> Option<SyntaxToken> {
12760 support::token(&self.syntax, SyntaxKind::REFERENCING_KW)
12761 }
12762}
12763
12764#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12765pub struct ReferencingTable {
12766 pub(crate) syntax: SyntaxNode,
12767}
12768impl ReferencingTable {
12769 #[inline]
12770 pub fn name_ref(&self) -> Option<NameRef> {
12771 support::child(&self.syntax)
12772 }
12773 #[inline]
12774 pub fn as_token(&self) -> Option<SyntaxToken> {
12775 support::token(&self.syntax, SyntaxKind::AS_KW)
12776 }
12777 #[inline]
12778 pub fn new_token(&self) -> Option<SyntaxToken> {
12779 support::token(&self.syntax, SyntaxKind::NEW_KW)
12780 }
12781 #[inline]
12782 pub fn old_token(&self) -> Option<SyntaxToken> {
12783 support::token(&self.syntax, SyntaxKind::OLD_KW)
12784 }
12785 #[inline]
12786 pub fn table_token(&self) -> Option<SyntaxToken> {
12787 support::token(&self.syntax, SyntaxKind::TABLE_KW)
12788 }
12789}
12790
12791#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12792pub struct Refresh {
12793 pub(crate) syntax: SyntaxNode,
12794}
12795impl Refresh {
12796 #[inline]
12797 pub fn path(&self) -> Option<Path> {
12798 support::child(&self.syntax)
12799 }
12800 #[inline]
12801 pub fn with_data(&self) -> Option<WithData> {
12802 support::child(&self.syntax)
12803 }
12804 #[inline]
12805 pub fn with_no_data(&self) -> Option<WithNoData> {
12806 support::child(&self.syntax)
12807 }
12808 #[inline]
12809 pub fn concurrently_token(&self) -> Option<SyntaxToken> {
12810 support::token(&self.syntax, SyntaxKind::CONCURRENTLY_KW)
12811 }
12812 #[inline]
12813 pub fn materialized_token(&self) -> Option<SyntaxToken> {
12814 support::token(&self.syntax, SyntaxKind::MATERIALIZED_KW)
12815 }
12816 #[inline]
12817 pub fn refresh_token(&self) -> Option<SyntaxToken> {
12818 support::token(&self.syntax, SyntaxKind::REFRESH_KW)
12819 }
12820 #[inline]
12821 pub fn view_token(&self) -> Option<SyntaxToken> {
12822 support::token(&self.syntax, SyntaxKind::VIEW_KW)
12823 }
12824}
12825
12826#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12827pub struct RefreshCollationVersion {
12828 pub(crate) syntax: SyntaxNode,
12829}
12830impl RefreshCollationVersion {
12831 #[inline]
12832 pub fn collation_token(&self) -> Option<SyntaxToken> {
12833 support::token(&self.syntax, SyntaxKind::COLLATION_KW)
12834 }
12835 #[inline]
12836 pub fn refresh_token(&self) -> Option<SyntaxToken> {
12837 support::token(&self.syntax, SyntaxKind::REFRESH_KW)
12838 }
12839 #[inline]
12840 pub fn version_token(&self) -> Option<SyntaxToken> {
12841 support::token(&self.syntax, SyntaxKind::VERSION_KW)
12842 }
12843}
12844
12845#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12846pub struct RefreshVersion {
12847 pub(crate) syntax: SyntaxNode,
12848}
12849impl RefreshVersion {
12850 #[inline]
12851 pub fn refresh_token(&self) -> Option<SyntaxToken> {
12852 support::token(&self.syntax, SyntaxKind::REFRESH_KW)
12853 }
12854 #[inline]
12855 pub fn version_token(&self) -> Option<SyntaxToken> {
12856 support::token(&self.syntax, SyntaxKind::VERSION_KW)
12857 }
12858}
12859
12860#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12861pub struct Reindex {
12862 pub(crate) syntax: SyntaxNode,
12863}
12864impl Reindex {
12865 #[inline]
12866 pub fn path(&self) -> Option<Path> {
12867 support::child(&self.syntax)
12868 }
12869 #[inline]
12870 pub fn database_token(&self) -> Option<SyntaxToken> {
12871 support::token(&self.syntax, SyntaxKind::DATABASE_KW)
12872 }
12873 #[inline]
12874 pub fn index_token(&self) -> Option<SyntaxToken> {
12875 support::token(&self.syntax, SyntaxKind::INDEX_KW)
12876 }
12877 #[inline]
12878 pub fn reindex_token(&self) -> Option<SyntaxToken> {
12879 support::token(&self.syntax, SyntaxKind::REINDEX_KW)
12880 }
12881 #[inline]
12882 pub fn schema_token(&self) -> Option<SyntaxToken> {
12883 support::token(&self.syntax, SyntaxKind::SCHEMA_KW)
12884 }
12885 #[inline]
12886 pub fn system_token(&self) -> Option<SyntaxToken> {
12887 support::token(&self.syntax, SyntaxKind::SYSTEM_KW)
12888 }
12889 #[inline]
12890 pub fn table_token(&self) -> Option<SyntaxToken> {
12891 support::token(&self.syntax, SyntaxKind::TABLE_KW)
12892 }
12893}
12894
12895#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12896pub struct RelationName {
12897 pub(crate) syntax: SyntaxNode,
12898}
12899impl RelationName {
12900 #[inline]
12901 pub fn path(&self) -> Option<Path> {
12902 support::child(&self.syntax)
12903 }
12904 #[inline]
12905 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
12906 support::token(&self.syntax, SyntaxKind::L_PAREN)
12907 }
12908 #[inline]
12909 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
12910 support::token(&self.syntax, SyntaxKind::R_PAREN)
12911 }
12912 #[inline]
12913 pub fn star_token(&self) -> Option<SyntaxToken> {
12914 support::token(&self.syntax, SyntaxKind::STAR)
12915 }
12916 #[inline]
12917 pub fn only_token(&self) -> Option<SyntaxToken> {
12918 support::token(&self.syntax, SyntaxKind::ONLY_KW)
12919 }
12920}
12921
12922#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12923pub struct ReleaseSavepoint {
12924 pub(crate) syntax: SyntaxNode,
12925}
12926impl ReleaseSavepoint {
12927 #[inline]
12928 pub fn name_ref(&self) -> Option<NameRef> {
12929 support::child(&self.syntax)
12930 }
12931 #[inline]
12932 pub fn release_token(&self) -> Option<SyntaxToken> {
12933 support::token(&self.syntax, SyntaxKind::RELEASE_KW)
12934 }
12935 #[inline]
12936 pub fn savepoint_token(&self) -> Option<SyntaxToken> {
12937 support::token(&self.syntax, SyntaxKind::SAVEPOINT_KW)
12938 }
12939}
12940
12941#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12942pub struct RenameColumn {
12943 pub(crate) syntax: SyntaxNode,
12944}
12945impl RenameColumn {
12946 #[inline]
12947 pub fn column_token(&self) -> Option<SyntaxToken> {
12948 support::token(&self.syntax, SyntaxKind::COLUMN_KW)
12949 }
12950 #[inline]
12951 pub fn rename_token(&self) -> Option<SyntaxToken> {
12952 support::token(&self.syntax, SyntaxKind::RENAME_KW)
12953 }
12954 #[inline]
12955 pub fn to_token(&self) -> Option<SyntaxToken> {
12956 support::token(&self.syntax, SyntaxKind::TO_KW)
12957 }
12958}
12959
12960#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12961pub struct RenameConstraint {
12962 pub(crate) syntax: SyntaxNode,
12963}
12964impl RenameConstraint {
12965 #[inline]
12966 pub fn name(&self) -> Option<Name> {
12967 support::child(&self.syntax)
12968 }
12969 #[inline]
12970 pub fn name_ref(&self) -> Option<NameRef> {
12971 support::child(&self.syntax)
12972 }
12973 #[inline]
12974 pub fn constraint_token(&self) -> Option<SyntaxToken> {
12975 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
12976 }
12977 #[inline]
12978 pub fn rename_token(&self) -> Option<SyntaxToken> {
12979 support::token(&self.syntax, SyntaxKind::RENAME_KW)
12980 }
12981 #[inline]
12982 pub fn to_token(&self) -> Option<SyntaxToken> {
12983 support::token(&self.syntax, SyntaxKind::TO_KW)
12984 }
12985}
12986
12987#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12988pub struct RenameTo {
12989 pub(crate) syntax: SyntaxNode,
12990}
12991impl RenameTo {
12992 #[inline]
12993 pub fn name(&self) -> Option<Name> {
12994 support::child(&self.syntax)
12995 }
12996 #[inline]
12997 pub fn rename_token(&self) -> Option<SyntaxToken> {
12998 support::token(&self.syntax, SyntaxKind::RENAME_KW)
12999 }
13000 #[inline]
13001 pub fn to_token(&self) -> Option<SyntaxToken> {
13002 support::token(&self.syntax, SyntaxKind::TO_KW)
13003 }
13004}
13005
13006#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13007pub struct RepeatableClause {
13008 pub(crate) syntax: SyntaxNode,
13009}
13010impl RepeatableClause {
13011 #[inline]
13012 pub fn expr(&self) -> Option<Expr> {
13013 support::child(&self.syntax)
13014 }
13015 #[inline]
13016 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
13017 support::token(&self.syntax, SyntaxKind::L_PAREN)
13018 }
13019 #[inline]
13020 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
13021 support::token(&self.syntax, SyntaxKind::R_PAREN)
13022 }
13023 #[inline]
13024 pub fn repeatable_token(&self) -> Option<SyntaxToken> {
13025 support::token(&self.syntax, SyntaxKind::REPEATABLE_KW)
13026 }
13027}
13028
13029#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13030pub struct RepeatableRead {
13031 pub(crate) syntax: SyntaxNode,
13032}
13033impl RepeatableRead {
13034 #[inline]
13035 pub fn isolation_token(&self) -> Option<SyntaxToken> {
13036 support::token(&self.syntax, SyntaxKind::ISOLATION_KW)
13037 }
13038 #[inline]
13039 pub fn level_token(&self) -> Option<SyntaxToken> {
13040 support::token(&self.syntax, SyntaxKind::LEVEL_KW)
13041 }
13042 #[inline]
13043 pub fn read_token(&self) -> Option<SyntaxToken> {
13044 support::token(&self.syntax, SyntaxKind::READ_KW)
13045 }
13046 #[inline]
13047 pub fn repeatable_token(&self) -> Option<SyntaxToken> {
13048 support::token(&self.syntax, SyntaxKind::REPEATABLE_KW)
13049 }
13050}
13051
13052#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13053pub struct ReplicaIdentity {
13054 pub(crate) syntax: SyntaxNode,
13055}
13056impl ReplicaIdentity {
13057 #[inline]
13058 pub fn identity_token(&self) -> Option<SyntaxToken> {
13059 support::token(&self.syntax, SyntaxKind::IDENTITY_KW)
13060 }
13061 #[inline]
13062 pub fn replica_token(&self) -> Option<SyntaxToken> {
13063 support::token(&self.syntax, SyntaxKind::REPLICA_KW)
13064 }
13065}
13066
13067#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13068pub struct Reset {
13069 pub(crate) syntax: SyntaxNode,
13070}
13071impl Reset {
13072 #[inline]
13073 pub fn name_ref(&self) -> Option<NameRef> {
13074 support::child(&self.syntax)
13075 }
13076 #[inline]
13077 pub fn all_token(&self) -> Option<SyntaxToken> {
13078 support::token(&self.syntax, SyntaxKind::ALL_KW)
13079 }
13080 #[inline]
13081 pub fn reset_token(&self) -> Option<SyntaxToken> {
13082 support::token(&self.syntax, SyntaxKind::RESET_KW)
13083 }
13084}
13085
13086#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13087pub struct ResetConfigParam {
13088 pub(crate) syntax: SyntaxNode,
13089}
13090impl ResetConfigParam {
13091 #[inline]
13092 pub fn path(&self) -> Option<Path> {
13093 support::child(&self.syntax)
13094 }
13095 #[inline]
13096 pub fn all_token(&self) -> Option<SyntaxToken> {
13097 support::token(&self.syntax, SyntaxKind::ALL_KW)
13098 }
13099 #[inline]
13100 pub fn reset_token(&self) -> Option<SyntaxToken> {
13101 support::token(&self.syntax, SyntaxKind::RESET_KW)
13102 }
13103}
13104
13105#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13106pub struct ResetFuncOption {
13107 pub(crate) syntax: SyntaxNode,
13108}
13109impl ResetFuncOption {
13110 #[inline]
13111 pub fn name_ref(&self) -> Option<NameRef> {
13112 support::child(&self.syntax)
13113 }
13114 #[inline]
13115 pub fn reset_token(&self) -> Option<SyntaxToken> {
13116 support::token(&self.syntax, SyntaxKind::RESET_KW)
13117 }
13118}
13119
13120#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13121pub struct ResetOptions {
13122 pub(crate) syntax: SyntaxNode,
13123}
13124impl ResetOptions {
13125 #[inline]
13126 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
13127 support::token(&self.syntax, SyntaxKind::L_PAREN)
13128 }
13129 #[inline]
13130 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
13131 support::token(&self.syntax, SyntaxKind::R_PAREN)
13132 }
13133 #[inline]
13134 pub fn reset_token(&self) -> Option<SyntaxToken> {
13135 support::token(&self.syntax, SyntaxKind::RESET_KW)
13136 }
13137}
13138
13139#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13140pub struct ResetSessionAuth {
13141 pub(crate) syntax: SyntaxNode,
13142}
13143impl ResetSessionAuth {
13144 #[inline]
13145 pub fn authorization_token(&self) -> Option<SyntaxToken> {
13146 support::token(&self.syntax, SyntaxKind::AUTHORIZATION_KW)
13147 }
13148 #[inline]
13149 pub fn reset_token(&self) -> Option<SyntaxToken> {
13150 support::token(&self.syntax, SyntaxKind::RESET_KW)
13151 }
13152 #[inline]
13153 pub fn session_token(&self) -> Option<SyntaxToken> {
13154 support::token(&self.syntax, SyntaxKind::SESSION_KW)
13155 }
13156}
13157
13158#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13159pub struct Restart {
13160 pub(crate) syntax: SyntaxNode,
13161}
13162impl Restart {
13163 #[inline]
13164 pub fn restart_token(&self) -> Option<SyntaxToken> {
13165 support::token(&self.syntax, SyntaxKind::RESTART_KW)
13166 }
13167 #[inline]
13168 pub fn with_token(&self) -> Option<SyntaxToken> {
13169 support::token(&self.syntax, SyntaxKind::WITH_KW)
13170 }
13171}
13172
13173#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13174pub struct Restrict {
13175 pub(crate) syntax: SyntaxNode,
13176}
13177impl Restrict {
13178 #[inline]
13179 pub fn restrict_token(&self) -> Option<SyntaxToken> {
13180 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
13181 }
13182}
13183
13184#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13185pub struct RetType {
13186 pub(crate) syntax: SyntaxNode,
13187}
13188impl RetType {
13189 #[inline]
13190 pub fn ty(&self) -> Option<Type> {
13191 support::child(&self.syntax)
13192 }
13193 #[inline]
13194 pub fn returns_token(&self) -> Option<SyntaxToken> {
13195 support::token(&self.syntax, SyntaxKind::RETURNS_KW)
13196 }
13197}
13198
13199#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13200pub struct ReturnFuncOption {
13201 pub(crate) syntax: SyntaxNode,
13202}
13203impl ReturnFuncOption {
13204 #[inline]
13205 pub fn expr(&self) -> Option<Expr> {
13206 support::child(&self.syntax)
13207 }
13208 #[inline]
13209 pub fn return_token(&self) -> Option<SyntaxToken> {
13210 support::token(&self.syntax, SyntaxKind::RETURN_KW)
13211 }
13212}
13213
13214#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13215pub struct ReturningClause {
13216 pub(crate) syntax: SyntaxNode,
13217}
13218impl ReturningClause {
13219 #[inline]
13220 pub fn returning_option_list(&self) -> Option<ReturningOptionList> {
13221 support::child(&self.syntax)
13222 }
13223 #[inline]
13224 pub fn target_list(&self) -> Option<TargetList> {
13225 support::child(&self.syntax)
13226 }
13227 #[inline]
13228 pub fn returning_token(&self) -> Option<SyntaxToken> {
13229 support::token(&self.syntax, SyntaxKind::RETURNING_KW)
13230 }
13231}
13232
13233#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13234pub struct ReturningOption {
13235 pub(crate) syntax: SyntaxNode,
13236}
13237impl ReturningOption {
13238 #[inline]
13239 pub fn name(&self) -> Option<Name> {
13240 support::child(&self.syntax)
13241 }
13242 #[inline]
13243 pub fn as_token(&self) -> Option<SyntaxToken> {
13244 support::token(&self.syntax, SyntaxKind::AS_KW)
13245 }
13246 #[inline]
13247 pub fn new_token(&self) -> Option<SyntaxToken> {
13248 support::token(&self.syntax, SyntaxKind::NEW_KW)
13249 }
13250 #[inline]
13251 pub fn old_token(&self) -> Option<SyntaxToken> {
13252 support::token(&self.syntax, SyntaxKind::OLD_KW)
13253 }
13254}
13255
13256#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13257pub struct ReturningOptionList {
13258 pub(crate) syntax: SyntaxNode,
13259}
13260impl ReturningOptionList {
13261 #[inline]
13262 pub fn returning_options(&self) -> AstChildren<ReturningOption> {
13263 support::children(&self.syntax)
13264 }
13265 #[inline]
13266 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
13267 support::token(&self.syntax, SyntaxKind::L_PAREN)
13268 }
13269 #[inline]
13270 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
13271 support::token(&self.syntax, SyntaxKind::R_PAREN)
13272 }
13273 #[inline]
13274 pub fn with_token(&self) -> Option<SyntaxToken> {
13275 support::token(&self.syntax, SyntaxKind::WITH_KW)
13276 }
13277}
13278
13279#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13280pub struct Revoke {
13281 pub(crate) syntax: SyntaxNode,
13282}
13283impl Revoke {
13284 #[inline]
13285 pub fn name_refs(&self) -> AstChildren<NameRef> {
13286 support::children(&self.syntax)
13287 }
13288 #[inline]
13289 pub fn paths(&self) -> AstChildren<Path> {
13290 support::children(&self.syntax)
13291 }
13292 #[inline]
13293 pub fn revoke_command_list(&self) -> Option<RevokeCommandList> {
13294 support::child(&self.syntax)
13295 }
13296 #[inline]
13297 pub fn role_ref(&self) -> Option<RoleRef> {
13298 support::child(&self.syntax)
13299 }
13300 #[inline]
13301 pub fn role_ref_list(&self) -> Option<RoleRefList> {
13302 support::child(&self.syntax)
13303 }
13304 #[inline]
13305 pub fn all_token(&self) -> Option<SyntaxToken> {
13306 support::token(&self.syntax, SyntaxKind::ALL_KW)
13307 }
13308 #[inline]
13309 pub fn by_token(&self) -> Option<SyntaxToken> {
13310 support::token(&self.syntax, SyntaxKind::BY_KW)
13311 }
13312 #[inline]
13313 pub fn cascade_token(&self) -> Option<SyntaxToken> {
13314 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
13315 }
13316 #[inline]
13317 pub fn for_token(&self) -> Option<SyntaxToken> {
13318 support::token(&self.syntax, SyntaxKind::FOR_KW)
13319 }
13320 #[inline]
13321 pub fn from_token(&self) -> Option<SyntaxToken> {
13322 support::token(&self.syntax, SyntaxKind::FROM_KW)
13323 }
13324 #[inline]
13325 pub fn grant_token(&self) -> Option<SyntaxToken> {
13326 support::token(&self.syntax, SyntaxKind::GRANT_KW)
13327 }
13328 #[inline]
13329 pub fn granted_token(&self) -> Option<SyntaxToken> {
13330 support::token(&self.syntax, SyntaxKind::GRANTED_KW)
13331 }
13332 #[inline]
13333 pub fn in_token(&self) -> Option<SyntaxToken> {
13334 support::token(&self.syntax, SyntaxKind::IN_KW)
13335 }
13336 #[inline]
13337 pub fn on_token(&self) -> Option<SyntaxToken> {
13338 support::token(&self.syntax, SyntaxKind::ON_KW)
13339 }
13340 #[inline]
13341 pub fn option_token(&self) -> Option<SyntaxToken> {
13342 support::token(&self.syntax, SyntaxKind::OPTION_KW)
13343 }
13344 #[inline]
13345 pub fn privileges_token(&self) -> Option<SyntaxToken> {
13346 support::token(&self.syntax, SyntaxKind::PRIVILEGES_KW)
13347 }
13348 #[inline]
13349 pub fn restrict_token(&self) -> Option<SyntaxToken> {
13350 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
13351 }
13352 #[inline]
13353 pub fn revoke_token(&self) -> Option<SyntaxToken> {
13354 support::token(&self.syntax, SyntaxKind::REVOKE_KW)
13355 }
13356 #[inline]
13357 pub fn schema_token(&self) -> Option<SyntaxToken> {
13358 support::token(&self.syntax, SyntaxKind::SCHEMA_KW)
13359 }
13360 #[inline]
13361 pub fn table_token(&self) -> Option<SyntaxToken> {
13362 support::token(&self.syntax, SyntaxKind::TABLE_KW)
13363 }
13364 #[inline]
13365 pub fn tables_token(&self) -> Option<SyntaxToken> {
13366 support::token(&self.syntax, SyntaxKind::TABLES_KW)
13367 }
13368}
13369
13370#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13371pub struct RevokeCommand {
13372 pub(crate) syntax: SyntaxNode,
13373}
13374impl RevokeCommand {
13375 #[inline]
13376 pub fn role_ref(&self) -> Option<RoleRef> {
13377 support::child(&self.syntax)
13378 }
13379 #[inline]
13380 pub fn all_token(&self) -> Option<SyntaxToken> {
13381 support::token(&self.syntax, SyntaxKind::ALL_KW)
13382 }
13383 #[inline]
13384 pub fn alter_token(&self) -> Option<SyntaxToken> {
13385 support::token(&self.syntax, SyntaxKind::ALTER_KW)
13386 }
13387 #[inline]
13388 pub fn create_token(&self) -> Option<SyntaxToken> {
13389 support::token(&self.syntax, SyntaxKind::CREATE_KW)
13390 }
13391 #[inline]
13392 pub fn delete_token(&self) -> Option<SyntaxToken> {
13393 support::token(&self.syntax, SyntaxKind::DELETE_KW)
13394 }
13395 #[inline]
13396 pub fn execute_token(&self) -> Option<SyntaxToken> {
13397 support::token(&self.syntax, SyntaxKind::EXECUTE_KW)
13398 }
13399 #[inline]
13400 pub fn ident_token(&self) -> Option<SyntaxToken> {
13401 support::token(&self.syntax, SyntaxKind::IDENT)
13402 }
13403 #[inline]
13404 pub fn insert_token(&self) -> Option<SyntaxToken> {
13405 support::token(&self.syntax, SyntaxKind::INSERT_KW)
13406 }
13407 #[inline]
13408 pub fn references_token(&self) -> Option<SyntaxToken> {
13409 support::token(&self.syntax, SyntaxKind::REFERENCES_KW)
13410 }
13411 #[inline]
13412 pub fn select_token(&self) -> Option<SyntaxToken> {
13413 support::token(&self.syntax, SyntaxKind::SELECT_KW)
13414 }
13415 #[inline]
13416 pub fn system_token(&self) -> Option<SyntaxToken> {
13417 support::token(&self.syntax, SyntaxKind::SYSTEM_KW)
13418 }
13419 #[inline]
13420 pub fn temp_token(&self) -> Option<SyntaxToken> {
13421 support::token(&self.syntax, SyntaxKind::TEMP_KW)
13422 }
13423 #[inline]
13424 pub fn temporary_token(&self) -> Option<SyntaxToken> {
13425 support::token(&self.syntax, SyntaxKind::TEMPORARY_KW)
13426 }
13427 #[inline]
13428 pub fn trigger_token(&self) -> Option<SyntaxToken> {
13429 support::token(&self.syntax, SyntaxKind::TRIGGER_KW)
13430 }
13431 #[inline]
13432 pub fn truncate_token(&self) -> Option<SyntaxToken> {
13433 support::token(&self.syntax, SyntaxKind::TRUNCATE_KW)
13434 }
13435 #[inline]
13436 pub fn update_token(&self) -> Option<SyntaxToken> {
13437 support::token(&self.syntax, SyntaxKind::UPDATE_KW)
13438 }
13439}
13440
13441#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13442pub struct RevokeCommandList {
13443 pub(crate) syntax: SyntaxNode,
13444}
13445impl RevokeCommandList {
13446 #[inline]
13447 pub fn revoke_commands(&self) -> AstChildren<RevokeCommand> {
13448 support::children(&self.syntax)
13449 }
13450}
13451
13452#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13453pub struct RevokeDefaultPrivileges {
13454 pub(crate) syntax: SyntaxNode,
13455}
13456impl RevokeDefaultPrivileges {
13457 #[inline]
13458 pub fn privilege_target(&self) -> Option<PrivilegeTarget> {
13459 support::child(&self.syntax)
13460 }
13461 #[inline]
13462 pub fn privileges(&self) -> Option<Privileges> {
13463 support::child(&self.syntax)
13464 }
13465 #[inline]
13466 pub fn role_ref_list(&self) -> Option<RoleRefList> {
13467 support::child(&self.syntax)
13468 }
13469 #[inline]
13470 pub fn cascade_token(&self) -> Option<SyntaxToken> {
13471 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
13472 }
13473 #[inline]
13474 pub fn for_token(&self) -> Option<SyntaxToken> {
13475 support::token(&self.syntax, SyntaxKind::FOR_KW)
13476 }
13477 #[inline]
13478 pub fn from_token(&self) -> Option<SyntaxToken> {
13479 support::token(&self.syntax, SyntaxKind::FROM_KW)
13480 }
13481 #[inline]
13482 pub fn grant_token(&self) -> Option<SyntaxToken> {
13483 support::token(&self.syntax, SyntaxKind::GRANT_KW)
13484 }
13485 #[inline]
13486 pub fn on_token(&self) -> Option<SyntaxToken> {
13487 support::token(&self.syntax, SyntaxKind::ON_KW)
13488 }
13489 #[inline]
13490 pub fn option_token(&self) -> Option<SyntaxToken> {
13491 support::token(&self.syntax, SyntaxKind::OPTION_KW)
13492 }
13493 #[inline]
13494 pub fn restrict_token(&self) -> Option<SyntaxToken> {
13495 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
13496 }
13497 #[inline]
13498 pub fn revoke_token(&self) -> Option<SyntaxToken> {
13499 support::token(&self.syntax, SyntaxKind::REVOKE_KW)
13500 }
13501}
13502
13503#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13504pub struct Role {
13505 pub(crate) syntax: SyntaxNode,
13506}
13507impl Role {
13508 #[inline]
13509 pub fn name(&self) -> Option<Name> {
13510 support::child(&self.syntax)
13511 }
13512 #[inline]
13513 pub fn current_role_token(&self) -> Option<SyntaxToken> {
13514 support::token(&self.syntax, SyntaxKind::CURRENT_ROLE_KW)
13515 }
13516 #[inline]
13517 pub fn current_user_token(&self) -> Option<SyntaxToken> {
13518 support::token(&self.syntax, SyntaxKind::CURRENT_USER_KW)
13519 }
13520 #[inline]
13521 pub fn group_token(&self) -> Option<SyntaxToken> {
13522 support::token(&self.syntax, SyntaxKind::GROUP_KW)
13523 }
13524 #[inline]
13525 pub fn session_user_token(&self) -> Option<SyntaxToken> {
13526 support::token(&self.syntax, SyntaxKind::SESSION_USER_KW)
13527 }
13528}
13529
13530#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13531pub struct RoleOption {
13532 pub(crate) syntax: SyntaxNode,
13533}
13534impl RoleOption {
13535 #[inline]
13536 pub fn inherit_token(&self) -> Option<SyntaxToken> {
13537 support::token(&self.syntax, SyntaxKind::INHERIT_KW)
13538 }
13539}
13540
13541#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13542pub struct RoleOptionList {
13543 pub(crate) syntax: SyntaxNode,
13544}
13545impl RoleOptionList {
13546 #[inline]
13547 pub fn role_options(&self) -> AstChildren<RoleOption> {
13548 support::children(&self.syntax)
13549 }
13550 #[inline]
13551 pub fn with_token(&self) -> Option<SyntaxToken> {
13552 support::token(&self.syntax, SyntaxKind::WITH_KW)
13553 }
13554}
13555
13556#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13557pub struct RoleRef {
13558 pub(crate) syntax: SyntaxNode,
13559}
13560impl RoleRef {
13561 #[inline]
13562 pub fn name_ref(&self) -> Option<NameRef> {
13563 support::child(&self.syntax)
13564 }
13565 #[inline]
13566 pub fn current_role_token(&self) -> Option<SyntaxToken> {
13567 support::token(&self.syntax, SyntaxKind::CURRENT_ROLE_KW)
13568 }
13569 #[inline]
13570 pub fn current_user_token(&self) -> Option<SyntaxToken> {
13571 support::token(&self.syntax, SyntaxKind::CURRENT_USER_KW)
13572 }
13573 #[inline]
13574 pub fn group_token(&self) -> Option<SyntaxToken> {
13575 support::token(&self.syntax, SyntaxKind::GROUP_KW)
13576 }
13577 #[inline]
13578 pub fn session_user_token(&self) -> Option<SyntaxToken> {
13579 support::token(&self.syntax, SyntaxKind::SESSION_USER_KW)
13580 }
13581}
13582
13583#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13584pub struct RoleRefList {
13585 pub(crate) syntax: SyntaxNode,
13586}
13587impl RoleRefList {
13588 #[inline]
13589 pub fn role_refs(&self) -> AstChildren<RoleRef> {
13590 support::children(&self.syntax)
13591 }
13592}
13593
13594#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13595pub struct Rollback {
13596 pub(crate) syntax: SyntaxNode,
13597}
13598impl Rollback {
13599 #[inline]
13600 pub fn literal(&self) -> Option<Literal> {
13601 support::child(&self.syntax)
13602 }
13603 #[inline]
13604 pub fn name_ref(&self) -> Option<NameRef> {
13605 support::child(&self.syntax)
13606 }
13607 #[inline]
13608 pub fn abort_token(&self) -> Option<SyntaxToken> {
13609 support::token(&self.syntax, SyntaxKind::ABORT_KW)
13610 }
13611 #[inline]
13612 pub fn and_token(&self) -> Option<SyntaxToken> {
13613 support::token(&self.syntax, SyntaxKind::AND_KW)
13614 }
13615 #[inline]
13616 pub fn chain_token(&self) -> Option<SyntaxToken> {
13617 support::token(&self.syntax, SyntaxKind::CHAIN_KW)
13618 }
13619 #[inline]
13620 pub fn no_token(&self) -> Option<SyntaxToken> {
13621 support::token(&self.syntax, SyntaxKind::NO_KW)
13622 }
13623 #[inline]
13624 pub fn prepared_token(&self) -> Option<SyntaxToken> {
13625 support::token(&self.syntax, SyntaxKind::PREPARED_KW)
13626 }
13627 #[inline]
13628 pub fn rollback_token(&self) -> Option<SyntaxToken> {
13629 support::token(&self.syntax, SyntaxKind::ROLLBACK_KW)
13630 }
13631 #[inline]
13632 pub fn savepoint_token(&self) -> Option<SyntaxToken> {
13633 support::token(&self.syntax, SyntaxKind::SAVEPOINT_KW)
13634 }
13635 #[inline]
13636 pub fn to_token(&self) -> Option<SyntaxToken> {
13637 support::token(&self.syntax, SyntaxKind::TO_KW)
13638 }
13639 #[inline]
13640 pub fn transaction_token(&self) -> Option<SyntaxToken> {
13641 support::token(&self.syntax, SyntaxKind::TRANSACTION_KW)
13642 }
13643 #[inline]
13644 pub fn work_token(&self) -> Option<SyntaxToken> {
13645 support::token(&self.syntax, SyntaxKind::WORK_KW)
13646 }
13647}
13648
13649#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13650pub struct Row {
13651 pub(crate) syntax: SyntaxNode,
13652}
13653impl Row {
13654 #[inline]
13655 pub fn exprs(&self) -> AstChildren<Expr> {
13656 support::children(&self.syntax)
13657 }
13658}
13659
13660#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13661pub struct RowList {
13662 pub(crate) syntax: SyntaxNode,
13663}
13664impl RowList {
13665 #[inline]
13666 pub fn rows(&self) -> AstChildren<Row> {
13667 support::children(&self.syntax)
13668 }
13669}
13670
13671#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13672pub struct RowsFuncOption {
13673 pub(crate) syntax: SyntaxNode,
13674}
13675impl RowsFuncOption {
13676 #[inline]
13677 pub fn rows_token(&self) -> Option<SyntaxToken> {
13678 support::token(&self.syntax, SyntaxKind::ROWS_KW)
13679 }
13680}
13681
13682#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13683pub struct Savepoint {
13684 pub(crate) syntax: SyntaxNode,
13685}
13686impl Savepoint {
13687 #[inline]
13688 pub fn name(&self) -> Option<Name> {
13689 support::child(&self.syntax)
13690 }
13691 #[inline]
13692 pub fn savepoint_token(&self) -> Option<SyntaxToken> {
13693 support::token(&self.syntax, SyntaxKind::SAVEPOINT_KW)
13694 }
13695}
13696
13697#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13698pub struct SecurityFuncOption {
13699 pub(crate) syntax: SyntaxNode,
13700}
13701impl SecurityFuncOption {
13702 #[inline]
13703 pub fn definer_token(&self) -> Option<SyntaxToken> {
13704 support::token(&self.syntax, SyntaxKind::DEFINER_KW)
13705 }
13706 #[inline]
13707 pub fn invoker_token(&self) -> Option<SyntaxToken> {
13708 support::token(&self.syntax, SyntaxKind::INVOKER_KW)
13709 }
13710 #[inline]
13711 pub fn security_token(&self) -> Option<SyntaxToken> {
13712 support::token(&self.syntax, SyntaxKind::SECURITY_KW)
13713 }
13714}
13715
13716#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13717pub struct SecurityLabel {
13718 pub(crate) syntax: SyntaxNode,
13719}
13720impl SecurityLabel {
13721 #[inline]
13722 pub fn aggregate(&self) -> Option<Aggregate> {
13723 support::child(&self.syntax)
13724 }
13725 #[inline]
13726 pub fn for_provider(&self) -> Option<ForProvider> {
13727 support::child(&self.syntax)
13728 }
13729 #[inline]
13730 pub fn function_sig(&self) -> Option<FunctionSig> {
13731 support::child(&self.syntax)
13732 }
13733 #[inline]
13734 pub fn literal(&self) -> Option<Literal> {
13735 support::child(&self.syntax)
13736 }
13737 #[inline]
13738 pub fn path(&self) -> Option<Path> {
13739 support::child(&self.syntax)
13740 }
13741 #[inline]
13742 pub fn aggregate_token(&self) -> Option<SyntaxToken> {
13743 support::token(&self.syntax, SyntaxKind::AGGREGATE_KW)
13744 }
13745 #[inline]
13746 pub fn column_token(&self) -> Option<SyntaxToken> {
13747 support::token(&self.syntax, SyntaxKind::COLUMN_KW)
13748 }
13749 #[inline]
13750 pub fn database_token(&self) -> Option<SyntaxToken> {
13751 support::token(&self.syntax, SyntaxKind::DATABASE_KW)
13752 }
13753 #[inline]
13754 pub fn domain_token(&self) -> Option<SyntaxToken> {
13755 support::token(&self.syntax, SyntaxKind::DOMAIN_KW)
13756 }
13757 #[inline]
13758 pub fn event_token(&self) -> Option<SyntaxToken> {
13759 support::token(&self.syntax, SyntaxKind::EVENT_KW)
13760 }
13761 #[inline]
13762 pub fn foreign_token(&self) -> Option<SyntaxToken> {
13763 support::token(&self.syntax, SyntaxKind::FOREIGN_KW)
13764 }
13765 #[inline]
13766 pub fn function_token(&self) -> Option<SyntaxToken> {
13767 support::token(&self.syntax, SyntaxKind::FUNCTION_KW)
13768 }
13769 #[inline]
13770 pub fn is_token(&self) -> Option<SyntaxToken> {
13771 support::token(&self.syntax, SyntaxKind::IS_KW)
13772 }
13773 #[inline]
13774 pub fn label_token(&self) -> Option<SyntaxToken> {
13775 support::token(&self.syntax, SyntaxKind::LABEL_KW)
13776 }
13777 #[inline]
13778 pub fn language_token(&self) -> Option<SyntaxToken> {
13779 support::token(&self.syntax, SyntaxKind::LANGUAGE_KW)
13780 }
13781 #[inline]
13782 pub fn large_token(&self) -> Option<SyntaxToken> {
13783 support::token(&self.syntax, SyntaxKind::LARGE_KW)
13784 }
13785 #[inline]
13786 pub fn materialized_token(&self) -> Option<SyntaxToken> {
13787 support::token(&self.syntax, SyntaxKind::MATERIALIZED_KW)
13788 }
13789 #[inline]
13790 pub fn null_token(&self) -> Option<SyntaxToken> {
13791 support::token(&self.syntax, SyntaxKind::NULL_KW)
13792 }
13793 #[inline]
13794 pub fn object_token(&self) -> Option<SyntaxToken> {
13795 support::token(&self.syntax, SyntaxKind::OBJECT_KW)
13796 }
13797 #[inline]
13798 pub fn on_token(&self) -> Option<SyntaxToken> {
13799 support::token(&self.syntax, SyntaxKind::ON_KW)
13800 }
13801 #[inline]
13802 pub fn procedural_token(&self) -> Option<SyntaxToken> {
13803 support::token(&self.syntax, SyntaxKind::PROCEDURAL_KW)
13804 }
13805 #[inline]
13806 pub fn procedure_token(&self) -> Option<SyntaxToken> {
13807 support::token(&self.syntax, SyntaxKind::PROCEDURE_KW)
13808 }
13809 #[inline]
13810 pub fn publication_token(&self) -> Option<SyntaxToken> {
13811 support::token(&self.syntax, SyntaxKind::PUBLICATION_KW)
13812 }
13813 #[inline]
13814 pub fn role_token(&self) -> Option<SyntaxToken> {
13815 support::token(&self.syntax, SyntaxKind::ROLE_KW)
13816 }
13817 #[inline]
13818 pub fn routine_token(&self) -> Option<SyntaxToken> {
13819 support::token(&self.syntax, SyntaxKind::ROUTINE_KW)
13820 }
13821 #[inline]
13822 pub fn schema_token(&self) -> Option<SyntaxToken> {
13823 support::token(&self.syntax, SyntaxKind::SCHEMA_KW)
13824 }
13825 #[inline]
13826 pub fn security_token(&self) -> Option<SyntaxToken> {
13827 support::token(&self.syntax, SyntaxKind::SECURITY_KW)
13828 }
13829 #[inline]
13830 pub fn sequence_token(&self) -> Option<SyntaxToken> {
13831 support::token(&self.syntax, SyntaxKind::SEQUENCE_KW)
13832 }
13833 #[inline]
13834 pub fn subscription_token(&self) -> Option<SyntaxToken> {
13835 support::token(&self.syntax, SyntaxKind::SUBSCRIPTION_KW)
13836 }
13837 #[inline]
13838 pub fn table_token(&self) -> Option<SyntaxToken> {
13839 support::token(&self.syntax, SyntaxKind::TABLE_KW)
13840 }
13841 #[inline]
13842 pub fn tablespace_token(&self) -> Option<SyntaxToken> {
13843 support::token(&self.syntax, SyntaxKind::TABLESPACE_KW)
13844 }
13845 #[inline]
13846 pub fn trigger_token(&self) -> Option<SyntaxToken> {
13847 support::token(&self.syntax, SyntaxKind::TRIGGER_KW)
13848 }
13849 #[inline]
13850 pub fn type_token(&self) -> Option<SyntaxToken> {
13851 support::token(&self.syntax, SyntaxKind::TYPE_KW)
13852 }
13853 #[inline]
13854 pub fn view_token(&self) -> Option<SyntaxToken> {
13855 support::token(&self.syntax, SyntaxKind::VIEW_KW)
13856 }
13857}
13858
13859#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13860pub struct Select {
13861 pub(crate) syntax: SyntaxNode,
13862}
13863impl Select {
13864 #[inline]
13865 pub fn fetch_clause(&self) -> Option<FetchClause> {
13866 support::child(&self.syntax)
13867 }
13868 #[inline]
13869 pub fn filter_clause(&self) -> Option<FilterClause> {
13870 support::child(&self.syntax)
13871 }
13872 #[inline]
13873 pub fn from_clause(&self) -> Option<FromClause> {
13874 support::child(&self.syntax)
13875 }
13876 #[inline]
13877 pub fn group_by_clause(&self) -> Option<GroupByClause> {
13878 support::child(&self.syntax)
13879 }
13880 #[inline]
13881 pub fn having_clause(&self) -> Option<HavingClause> {
13882 support::child(&self.syntax)
13883 }
13884 #[inline]
13885 pub fn limit_clause(&self) -> Option<LimitClause> {
13886 support::child(&self.syntax)
13887 }
13888 #[inline]
13889 pub fn locking_clauses(&self) -> AstChildren<LockingClause> {
13890 support::children(&self.syntax)
13891 }
13892 #[inline]
13893 pub fn offset_clause(&self) -> Option<OffsetClause> {
13894 support::child(&self.syntax)
13895 }
13896 #[inline]
13897 pub fn order_by_clause(&self) -> Option<OrderByClause> {
13898 support::child(&self.syntax)
13899 }
13900 #[inline]
13901 pub fn select_clause(&self) -> Option<SelectClause> {
13902 support::child(&self.syntax)
13903 }
13904 #[inline]
13905 pub fn where_clause(&self) -> Option<WhereClause> {
13906 support::child(&self.syntax)
13907 }
13908 #[inline]
13909 pub fn window_clause(&self) -> Option<WindowClause> {
13910 support::child(&self.syntax)
13911 }
13912 #[inline]
13913 pub fn with_clause(&self) -> Option<WithClause> {
13914 support::child(&self.syntax)
13915 }
13916}
13917
13918#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13919pub struct SelectClause {
13920 pub(crate) syntax: SyntaxNode,
13921}
13922impl SelectClause {
13923 #[inline]
13924 pub fn distinct_clause(&self) -> Option<DistinctClause> {
13925 support::child(&self.syntax)
13926 }
13927 #[inline]
13928 pub fn target_list(&self) -> Option<TargetList> {
13929 support::child(&self.syntax)
13930 }
13931 #[inline]
13932 pub fn all_token(&self) -> Option<SyntaxToken> {
13933 support::token(&self.syntax, SyntaxKind::ALL_KW)
13934 }
13935 #[inline]
13936 pub fn select_token(&self) -> Option<SyntaxToken> {
13937 support::token(&self.syntax, SyntaxKind::SELECT_KW)
13938 }
13939}
13940
13941#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13942pub struct SelectInto {
13943 pub(crate) syntax: SyntaxNode,
13944}
13945impl SelectInto {
13946 #[inline]
13947 pub fn filter_clause(&self) -> Option<FilterClause> {
13948 support::child(&self.syntax)
13949 }
13950 #[inline]
13951 pub fn from_clause(&self) -> Option<FromClause> {
13952 support::child(&self.syntax)
13953 }
13954 #[inline]
13955 pub fn group_by_clause(&self) -> Option<GroupByClause> {
13956 support::child(&self.syntax)
13957 }
13958 #[inline]
13959 pub fn having_clause(&self) -> Option<HavingClause> {
13960 support::child(&self.syntax)
13961 }
13962 #[inline]
13963 pub fn into_clause(&self) -> Option<IntoClause> {
13964 support::child(&self.syntax)
13965 }
13966 #[inline]
13967 pub fn limit_clause(&self) -> Option<LimitClause> {
13968 support::child(&self.syntax)
13969 }
13970 #[inline]
13971 pub fn locking_clauses(&self) -> AstChildren<LockingClause> {
13972 support::children(&self.syntax)
13973 }
13974 #[inline]
13975 pub fn offset_clause(&self) -> Option<OffsetClause> {
13976 support::child(&self.syntax)
13977 }
13978 #[inline]
13979 pub fn order_by_clause(&self) -> Option<OrderByClause> {
13980 support::child(&self.syntax)
13981 }
13982 #[inline]
13983 pub fn select_clause(&self) -> Option<SelectClause> {
13984 support::child(&self.syntax)
13985 }
13986 #[inline]
13987 pub fn where_clause(&self) -> Option<WhereClause> {
13988 support::child(&self.syntax)
13989 }
13990 #[inline]
13991 pub fn window_clause(&self) -> Option<WindowClause> {
13992 support::child(&self.syntax)
13993 }
13994 #[inline]
13995 pub fn with_clause(&self) -> Option<WithClause> {
13996 support::child(&self.syntax)
13997 }
13998}
13999
14000#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14001pub struct SequenceOption {
14002 pub(crate) syntax: SyntaxNode,
14003}
14004impl SequenceOption {
14005 #[inline]
14006 pub fn literal(&self) -> Option<Literal> {
14007 support::child(&self.syntax)
14008 }
14009 #[inline]
14010 pub fn name_ref(&self) -> Option<NameRef> {
14011 support::child(&self.syntax)
14012 }
14013 #[inline]
14014 pub fn path(&self) -> Option<Path> {
14015 support::child(&self.syntax)
14016 }
14017 #[inline]
14018 pub fn ty(&self) -> Option<Type> {
14019 support::child(&self.syntax)
14020 }
14021 #[inline]
14022 pub fn as_token(&self) -> Option<SyntaxToken> {
14023 support::token(&self.syntax, SyntaxKind::AS_KW)
14024 }
14025 #[inline]
14026 pub fn by_token(&self) -> Option<SyntaxToken> {
14027 support::token(&self.syntax, SyntaxKind::BY_KW)
14028 }
14029 #[inline]
14030 pub fn cycle_token(&self) -> Option<SyntaxToken> {
14031 support::token(&self.syntax, SyntaxKind::CYCLE_KW)
14032 }
14033 #[inline]
14034 pub fn increment_token(&self) -> Option<SyntaxToken> {
14035 support::token(&self.syntax, SyntaxKind::INCREMENT_KW)
14036 }
14037 #[inline]
14038 pub fn logged_token(&self) -> Option<SyntaxToken> {
14039 support::token(&self.syntax, SyntaxKind::LOGGED_KW)
14040 }
14041 #[inline]
14042 pub fn maxvalue_token(&self) -> Option<SyntaxToken> {
14043 support::token(&self.syntax, SyntaxKind::MAXVALUE_KW)
14044 }
14045 #[inline]
14046 pub fn minvalue_token(&self) -> Option<SyntaxToken> {
14047 support::token(&self.syntax, SyntaxKind::MINVALUE_KW)
14048 }
14049 #[inline]
14050 pub fn name_token(&self) -> Option<SyntaxToken> {
14051 support::token(&self.syntax, SyntaxKind::NAME_KW)
14052 }
14053 #[inline]
14054 pub fn no_token(&self) -> Option<SyntaxToken> {
14055 support::token(&self.syntax, SyntaxKind::NO_KW)
14056 }
14057 #[inline]
14058 pub fn none_token(&self) -> Option<SyntaxToken> {
14059 support::token(&self.syntax, SyntaxKind::NONE_KW)
14060 }
14061 #[inline]
14062 pub fn owned_token(&self) -> Option<SyntaxToken> {
14063 support::token(&self.syntax, SyntaxKind::OWNED_KW)
14064 }
14065 #[inline]
14066 pub fn restart_token(&self) -> Option<SyntaxToken> {
14067 support::token(&self.syntax, SyntaxKind::RESTART_KW)
14068 }
14069 #[inline]
14070 pub fn sequence_token(&self) -> Option<SyntaxToken> {
14071 support::token(&self.syntax, SyntaxKind::SEQUENCE_KW)
14072 }
14073 #[inline]
14074 pub fn start_token(&self) -> Option<SyntaxToken> {
14075 support::token(&self.syntax, SyntaxKind::START_KW)
14076 }
14077 #[inline]
14078 pub fn unlogged_token(&self) -> Option<SyntaxToken> {
14079 support::token(&self.syntax, SyntaxKind::UNLOGGED_KW)
14080 }
14081 #[inline]
14082 pub fn with_token(&self) -> Option<SyntaxToken> {
14083 support::token(&self.syntax, SyntaxKind::WITH_KW)
14084 }
14085}
14086
14087#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14088pub struct SequenceOptionList {
14089 pub(crate) syntax: SyntaxNode,
14090}
14091impl SequenceOptionList {
14092 #[inline]
14093 pub fn sequence_options(&self) -> AstChildren<SequenceOption> {
14094 support::children(&self.syntax)
14095 }
14096 #[inline]
14097 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
14098 support::token(&self.syntax, SyntaxKind::L_PAREN)
14099 }
14100 #[inline]
14101 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
14102 support::token(&self.syntax, SyntaxKind::R_PAREN)
14103 }
14104}
14105
14106#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14107pub struct Serializable {
14108 pub(crate) syntax: SyntaxNode,
14109}
14110impl Serializable {
14111 #[inline]
14112 pub fn isolation_token(&self) -> Option<SyntaxToken> {
14113 support::token(&self.syntax, SyntaxKind::ISOLATION_KW)
14114 }
14115 #[inline]
14116 pub fn level_token(&self) -> Option<SyntaxToken> {
14117 support::token(&self.syntax, SyntaxKind::LEVEL_KW)
14118 }
14119 #[inline]
14120 pub fn serializable_token(&self) -> Option<SyntaxToken> {
14121 support::token(&self.syntax, SyntaxKind::SERIALIZABLE_KW)
14122 }
14123}
14124
14125#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14126pub struct ServerName {
14127 pub(crate) syntax: SyntaxNode,
14128}
14129impl ServerName {
14130 #[inline]
14131 pub fn name_ref(&self) -> Option<NameRef> {
14132 support::child(&self.syntax)
14133 }
14134 #[inline]
14135 pub fn server_token(&self) -> Option<SyntaxToken> {
14136 support::token(&self.syntax, SyntaxKind::SERVER_KW)
14137 }
14138}
14139
14140#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14141pub struct Set {
14142 pub(crate) syntax: SyntaxNode,
14143}
14144impl Set {
14145 #[inline]
14146 pub fn config_value(&self) -> Option<ConfigValue> {
14147 support::child(&self.syntax)
14148 }
14149 #[inline]
14150 pub fn config_values(&self) -> AstChildren<ConfigValue> {
14151 support::children(&self.syntax)
14152 }
14153 #[inline]
14154 pub fn literal(&self) -> Option<Literal> {
14155 support::child(&self.syntax)
14156 }
14157 #[inline]
14158 pub fn path(&self) -> Option<Path> {
14159 support::child(&self.syntax)
14160 }
14161 #[inline]
14162 pub fn eq_token(&self) -> Option<SyntaxToken> {
14163 support::token(&self.syntax, SyntaxKind::EQ)
14164 }
14165 #[inline]
14166 pub fn catalog_token(&self) -> Option<SyntaxToken> {
14167 support::token(&self.syntax, SyntaxKind::CATALOG_KW)
14168 }
14169 #[inline]
14170 pub fn content_token(&self) -> Option<SyntaxToken> {
14171 support::token(&self.syntax, SyntaxKind::CONTENT_KW)
14172 }
14173 #[inline]
14174 pub fn current_token(&self) -> Option<SyntaxToken> {
14175 support::token(&self.syntax, SyntaxKind::CURRENT_KW)
14176 }
14177 #[inline]
14178 pub fn default_token(&self) -> Option<SyntaxToken> {
14179 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
14180 }
14181 #[inline]
14182 pub fn document_token(&self) -> Option<SyntaxToken> {
14183 support::token(&self.syntax, SyntaxKind::DOCUMENT_KW)
14184 }
14185 #[inline]
14186 pub fn from_token(&self) -> Option<SyntaxToken> {
14187 support::token(&self.syntax, SyntaxKind::FROM_KW)
14188 }
14189 #[inline]
14190 pub fn local_token(&self) -> Option<SyntaxToken> {
14191 support::token(&self.syntax, SyntaxKind::LOCAL_KW)
14192 }
14193 #[inline]
14194 pub fn option_token(&self) -> Option<SyntaxToken> {
14195 support::token(&self.syntax, SyntaxKind::OPTION_KW)
14196 }
14197 #[inline]
14198 pub fn schema_token(&self) -> Option<SyntaxToken> {
14199 support::token(&self.syntax, SyntaxKind::SCHEMA_KW)
14200 }
14201 #[inline]
14202 pub fn session_token(&self) -> Option<SyntaxToken> {
14203 support::token(&self.syntax, SyntaxKind::SESSION_KW)
14204 }
14205 #[inline]
14206 pub fn set_token(&self) -> Option<SyntaxToken> {
14207 support::token(&self.syntax, SyntaxKind::SET_KW)
14208 }
14209 #[inline]
14210 pub fn time_token(&self) -> Option<SyntaxToken> {
14211 support::token(&self.syntax, SyntaxKind::TIME_KW)
14212 }
14213 #[inline]
14214 pub fn to_token(&self) -> Option<SyntaxToken> {
14215 support::token(&self.syntax, SyntaxKind::TO_KW)
14216 }
14217 #[inline]
14218 pub fn xml_token(&self) -> Option<SyntaxToken> {
14219 support::token(&self.syntax, SyntaxKind::XML_KW)
14220 }
14221 #[inline]
14222 pub fn zone_token(&self) -> Option<SyntaxToken> {
14223 support::token(&self.syntax, SyntaxKind::ZONE_KW)
14224 }
14225}
14226
14227#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14228pub struct SetAccessMethod {
14229 pub(crate) syntax: SyntaxNode,
14230}
14231impl SetAccessMethod {
14232 #[inline]
14233 pub fn name_ref(&self) -> Option<NameRef> {
14234 support::child(&self.syntax)
14235 }
14236 #[inline]
14237 pub fn access_token(&self) -> Option<SyntaxToken> {
14238 support::token(&self.syntax, SyntaxKind::ACCESS_KW)
14239 }
14240 #[inline]
14241 pub fn method_token(&self) -> Option<SyntaxToken> {
14242 support::token(&self.syntax, SyntaxKind::METHOD_KW)
14243 }
14244 #[inline]
14245 pub fn set_token(&self) -> Option<SyntaxToken> {
14246 support::token(&self.syntax, SyntaxKind::SET_KW)
14247 }
14248}
14249
14250#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14251pub struct SetClause {
14252 pub(crate) syntax: SyntaxNode,
14253}
14254impl SetClause {
14255 #[inline]
14256 pub fn set_column_list(&self) -> Option<SetColumnList> {
14257 support::child(&self.syntax)
14258 }
14259 #[inline]
14260 pub fn set_token(&self) -> Option<SyntaxToken> {
14261 support::token(&self.syntax, SyntaxKind::SET_KW)
14262 }
14263}
14264
14265#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14266pub struct SetColumnList {
14267 pub(crate) syntax: SyntaxNode,
14268}
14269impl SetColumnList {
14270 #[inline]
14271 pub fn set_columns(&self) -> AstChildren<SetColumn> {
14272 support::children(&self.syntax)
14273 }
14274}
14275
14276#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14277pub struct SetCompression {
14278 pub(crate) syntax: SyntaxNode,
14279}
14280impl SetCompression {
14281 #[inline]
14282 pub fn compression_token(&self) -> Option<SyntaxToken> {
14283 support::token(&self.syntax, SyntaxKind::COMPRESSION_KW)
14284 }
14285 #[inline]
14286 pub fn set_token(&self) -> Option<SyntaxToken> {
14287 support::token(&self.syntax, SyntaxKind::SET_KW)
14288 }
14289}
14290
14291#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14292pub struct SetConfigParam {
14293 pub(crate) syntax: SyntaxNode,
14294}
14295impl SetConfigParam {
14296 #[inline]
14297 pub fn path(&self) -> Option<Path> {
14298 support::child(&self.syntax)
14299 }
14300 #[inline]
14301 pub fn set_token(&self) -> Option<SyntaxToken> {
14302 support::token(&self.syntax, SyntaxKind::SET_KW)
14303 }
14304}
14305
14306#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14307pub struct SetConstraints {
14308 pub(crate) syntax: SyntaxNode,
14309}
14310impl SetConstraints {
14311 #[inline]
14312 pub fn paths(&self) -> AstChildren<Path> {
14313 support::children(&self.syntax)
14314 }
14315 #[inline]
14316 pub fn all_token(&self) -> Option<SyntaxToken> {
14317 support::token(&self.syntax, SyntaxKind::ALL_KW)
14318 }
14319 #[inline]
14320 pub fn constraints_token(&self) -> Option<SyntaxToken> {
14321 support::token(&self.syntax, SyntaxKind::CONSTRAINTS_KW)
14322 }
14323 #[inline]
14324 pub fn deferred_token(&self) -> Option<SyntaxToken> {
14325 support::token(&self.syntax, SyntaxKind::DEFERRED_KW)
14326 }
14327 #[inline]
14328 pub fn immediate_token(&self) -> Option<SyntaxToken> {
14329 support::token(&self.syntax, SyntaxKind::IMMEDIATE_KW)
14330 }
14331 #[inline]
14332 pub fn set_token(&self) -> Option<SyntaxToken> {
14333 support::token(&self.syntax, SyntaxKind::SET_KW)
14334 }
14335}
14336
14337#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14338pub struct SetDefault {
14339 pub(crate) syntax: SyntaxNode,
14340}
14341impl SetDefault {
14342 #[inline]
14343 pub fn expr(&self) -> Option<Expr> {
14344 support::child(&self.syntax)
14345 }
14346 #[inline]
14347 pub fn default_token(&self) -> Option<SyntaxToken> {
14348 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
14349 }
14350 #[inline]
14351 pub fn set_token(&self) -> Option<SyntaxToken> {
14352 support::token(&self.syntax, SyntaxKind::SET_KW)
14353 }
14354}
14355
14356#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14357pub struct SetDefaultColumns {
14358 pub(crate) syntax: SyntaxNode,
14359}
14360impl SetDefaultColumns {
14361 #[inline]
14362 pub fn column_list(&self) -> Option<ColumnList> {
14363 support::child(&self.syntax)
14364 }
14365 #[inline]
14366 pub fn default_token(&self) -> Option<SyntaxToken> {
14367 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
14368 }
14369 #[inline]
14370 pub fn set_token(&self) -> Option<SyntaxToken> {
14371 support::token(&self.syntax, SyntaxKind::SET_KW)
14372 }
14373}
14374
14375#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14376pub struct SetExpr {
14377 pub(crate) syntax: SyntaxNode,
14378}
14379impl SetExpr {
14380 #[inline]
14381 pub fn expr(&self) -> Option<Expr> {
14382 support::child(&self.syntax)
14383 }
14384 #[inline]
14385 pub fn default_token(&self) -> Option<SyntaxToken> {
14386 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
14387 }
14388}
14389
14390#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14391pub struct SetExprList {
14392 pub(crate) syntax: SyntaxNode,
14393}
14394impl SetExprList {
14395 #[inline]
14396 pub fn set_exprs(&self) -> AstChildren<SetExpr> {
14397 support::children(&self.syntax)
14398 }
14399 #[inline]
14400 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
14401 support::token(&self.syntax, SyntaxKind::L_PAREN)
14402 }
14403 #[inline]
14404 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
14405 support::token(&self.syntax, SyntaxKind::R_PAREN)
14406 }
14407 #[inline]
14408 pub fn row_token(&self) -> Option<SyntaxToken> {
14409 support::token(&self.syntax, SyntaxKind::ROW_KW)
14410 }
14411}
14412
14413#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14414pub struct SetExpression {
14415 pub(crate) syntax: SyntaxNode,
14416}
14417impl SetExpression {
14418 #[inline]
14419 pub fn expr(&self) -> Option<Expr> {
14420 support::child(&self.syntax)
14421 }
14422 #[inline]
14423 pub fn expression_token(&self) -> Option<SyntaxToken> {
14424 support::token(&self.syntax, SyntaxKind::EXPRESSION_KW)
14425 }
14426 #[inline]
14427 pub fn set_token(&self) -> Option<SyntaxToken> {
14428 support::token(&self.syntax, SyntaxKind::SET_KW)
14429 }
14430}
14431
14432#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14433pub struct SetFuncOption {
14434 pub(crate) syntax: SyntaxNode,
14435}
14436impl SetFuncOption {
14437 #[inline]
14438 pub fn set_token(&self) -> Option<SyntaxToken> {
14439 support::token(&self.syntax, SyntaxKind::SET_KW)
14440 }
14441}
14442
14443#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14444pub struct SetGenerated {
14445 pub(crate) syntax: SyntaxNode,
14446}
14447impl SetGenerated {
14448 #[inline]
14449 pub fn set_token(&self) -> Option<SyntaxToken> {
14450 support::token(&self.syntax, SyntaxKind::SET_KW)
14451 }
14452}
14453
14454#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14455pub struct SetGeneratedOptions {
14456 pub(crate) syntax: SyntaxNode,
14457}
14458impl SetGeneratedOptions {
14459 #[inline]
14460 pub fn generated_token(&self) -> Option<SyntaxToken> {
14461 support::token(&self.syntax, SyntaxKind::GENERATED_KW)
14462 }
14463 #[inline]
14464 pub fn set_token(&self) -> Option<SyntaxToken> {
14465 support::token(&self.syntax, SyntaxKind::SET_KW)
14466 }
14467}
14468
14469#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14470pub struct SetLogged {
14471 pub(crate) syntax: SyntaxNode,
14472}
14473impl SetLogged {
14474 #[inline]
14475 pub fn logged_token(&self) -> Option<SyntaxToken> {
14476 support::token(&self.syntax, SyntaxKind::LOGGED_KW)
14477 }
14478 #[inline]
14479 pub fn set_token(&self) -> Option<SyntaxToken> {
14480 support::token(&self.syntax, SyntaxKind::SET_KW)
14481 }
14482}
14483
14484#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14485pub struct SetMultipleColumns {
14486 pub(crate) syntax: SyntaxNode,
14487}
14488impl SetMultipleColumns {
14489 #[inline]
14490 pub fn column_list(&self) -> Option<ColumnList> {
14491 support::child(&self.syntax)
14492 }
14493 #[inline]
14494 pub fn paren_select(&self) -> Option<ParenSelect> {
14495 support::child(&self.syntax)
14496 }
14497 #[inline]
14498 pub fn set_expr_list(&self) -> Option<SetExprList> {
14499 support::child(&self.syntax)
14500 }
14501 #[inline]
14502 pub fn eq_token(&self) -> Option<SyntaxToken> {
14503 support::token(&self.syntax, SyntaxKind::EQ)
14504 }
14505}
14506
14507#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14508pub struct SetNotNull {
14509 pub(crate) syntax: SyntaxNode,
14510}
14511impl SetNotNull {
14512 #[inline]
14513 pub fn not_token(&self) -> Option<SyntaxToken> {
14514 support::token(&self.syntax, SyntaxKind::NOT_KW)
14515 }
14516 #[inline]
14517 pub fn null_token(&self) -> Option<SyntaxToken> {
14518 support::token(&self.syntax, SyntaxKind::NULL_KW)
14519 }
14520 #[inline]
14521 pub fn set_token(&self) -> Option<SyntaxToken> {
14522 support::token(&self.syntax, SyntaxKind::SET_KW)
14523 }
14524}
14525
14526#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14527pub struct SetNullColumns {
14528 pub(crate) syntax: SyntaxNode,
14529}
14530impl SetNullColumns {
14531 #[inline]
14532 pub fn column_list(&self) -> Option<ColumnList> {
14533 support::child(&self.syntax)
14534 }
14535 #[inline]
14536 pub fn null_token(&self) -> Option<SyntaxToken> {
14537 support::token(&self.syntax, SyntaxKind::NULL_KW)
14538 }
14539 #[inline]
14540 pub fn set_token(&self) -> Option<SyntaxToken> {
14541 support::token(&self.syntax, SyntaxKind::SET_KW)
14542 }
14543}
14544
14545#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14546pub struct SetOptions {
14547 pub(crate) syntax: SyntaxNode,
14548}
14549impl SetOptions {
14550 #[inline]
14551 pub fn attribute_list(&self) -> Option<AttributeList> {
14552 support::child(&self.syntax)
14553 }
14554 #[inline]
14555 pub fn set_token(&self) -> Option<SyntaxToken> {
14556 support::token(&self.syntax, SyntaxKind::SET_KW)
14557 }
14558}
14559
14560#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14561pub struct SetOptionsList {
14562 pub(crate) syntax: SyntaxNode,
14563}
14564impl SetOptionsList {
14565 #[inline]
14566 pub fn alter_option_list(&self) -> Option<AlterOptionList> {
14567 support::child(&self.syntax)
14568 }
14569 #[inline]
14570 pub fn options_token(&self) -> Option<SyntaxToken> {
14571 support::token(&self.syntax, SyntaxKind::OPTIONS_KW)
14572 }
14573 #[inline]
14574 pub fn set_token(&self) -> Option<SyntaxToken> {
14575 support::token(&self.syntax, SyntaxKind::SET_KW)
14576 }
14577}
14578
14579#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14580pub struct SetRole {
14581 pub(crate) syntax: SyntaxNode,
14582}
14583impl SetRole {
14584 #[inline]
14585 pub fn role_ref(&self) -> Option<RoleRef> {
14586 support::child(&self.syntax)
14587 }
14588 #[inline]
14589 pub fn local_token(&self) -> Option<SyntaxToken> {
14590 support::token(&self.syntax, SyntaxKind::LOCAL_KW)
14591 }
14592 #[inline]
14593 pub fn none_token(&self) -> Option<SyntaxToken> {
14594 support::token(&self.syntax, SyntaxKind::NONE_KW)
14595 }
14596 #[inline]
14597 pub fn reset_token(&self) -> Option<SyntaxToken> {
14598 support::token(&self.syntax, SyntaxKind::RESET_KW)
14599 }
14600 #[inline]
14601 pub fn role_token(&self) -> Option<SyntaxToken> {
14602 support::token(&self.syntax, SyntaxKind::ROLE_KW)
14603 }
14604 #[inline]
14605 pub fn session_token(&self) -> Option<SyntaxToken> {
14606 support::token(&self.syntax, SyntaxKind::SESSION_KW)
14607 }
14608 #[inline]
14609 pub fn set_token(&self) -> Option<SyntaxToken> {
14610 support::token(&self.syntax, SyntaxKind::SET_KW)
14611 }
14612}
14613
14614#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14615pub struct SetSchema {
14616 pub(crate) syntax: SyntaxNode,
14617}
14618impl SetSchema {
14619 #[inline]
14620 pub fn name_ref(&self) -> Option<NameRef> {
14621 support::child(&self.syntax)
14622 }
14623 #[inline]
14624 pub fn schema_token(&self) -> Option<SyntaxToken> {
14625 support::token(&self.syntax, SyntaxKind::SCHEMA_KW)
14626 }
14627 #[inline]
14628 pub fn set_token(&self) -> Option<SyntaxToken> {
14629 support::token(&self.syntax, SyntaxKind::SET_KW)
14630 }
14631}
14632
14633#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14634pub struct SetSequenceOption {
14635 pub(crate) syntax: SyntaxNode,
14636}
14637impl SetSequenceOption {
14638 #[inline]
14639 pub fn set_token(&self) -> Option<SyntaxToken> {
14640 support::token(&self.syntax, SyntaxKind::SET_KW)
14641 }
14642}
14643
14644#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14645pub struct SetSessionAuth {
14646 pub(crate) syntax: SyntaxNode,
14647}
14648impl SetSessionAuth {
14649 #[inline]
14650 pub fn literal(&self) -> Option<Literal> {
14651 support::child(&self.syntax)
14652 }
14653 #[inline]
14654 pub fn role_ref(&self) -> Option<RoleRef> {
14655 support::child(&self.syntax)
14656 }
14657 #[inline]
14658 pub fn authorization_token(&self) -> Option<SyntaxToken> {
14659 support::token(&self.syntax, SyntaxKind::AUTHORIZATION_KW)
14660 }
14661 #[inline]
14662 pub fn default_token(&self) -> Option<SyntaxToken> {
14663 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
14664 }
14665 #[inline]
14666 pub fn local_token(&self) -> Option<SyntaxToken> {
14667 support::token(&self.syntax, SyntaxKind::LOCAL_KW)
14668 }
14669 #[inline]
14670 pub fn session_token(&self) -> Option<SyntaxToken> {
14671 support::token(&self.syntax, SyntaxKind::SESSION_KW)
14672 }
14673 #[inline]
14674 pub fn set_token(&self) -> Option<SyntaxToken> {
14675 support::token(&self.syntax, SyntaxKind::SET_KW)
14676 }
14677}
14678
14679#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14680pub struct SetSingleColumn {
14681 pub(crate) syntax: SyntaxNode,
14682}
14683impl SetSingleColumn {
14684 #[inline]
14685 pub fn column(&self) -> Option<Column> {
14686 support::child(&self.syntax)
14687 }
14688 #[inline]
14689 pub fn set_expr(&self) -> Option<SetExpr> {
14690 support::child(&self.syntax)
14691 }
14692 #[inline]
14693 pub fn eq_token(&self) -> Option<SyntaxToken> {
14694 support::token(&self.syntax, SyntaxKind::EQ)
14695 }
14696}
14697
14698#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14699pub struct SetStatistics {
14700 pub(crate) syntax: SyntaxNode,
14701}
14702impl SetStatistics {
14703 #[inline]
14704 pub fn set_token(&self) -> Option<SyntaxToken> {
14705 support::token(&self.syntax, SyntaxKind::SET_KW)
14706 }
14707 #[inline]
14708 pub fn statistics_token(&self) -> Option<SyntaxToken> {
14709 support::token(&self.syntax, SyntaxKind::STATISTICS_KW)
14710 }
14711}
14712
14713#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14714pub struct SetStorage {
14715 pub(crate) syntax: SyntaxNode,
14716}
14717impl SetStorage {
14718 #[inline]
14719 pub fn set_token(&self) -> Option<SyntaxToken> {
14720 support::token(&self.syntax, SyntaxKind::SET_KW)
14721 }
14722 #[inline]
14723 pub fn storage_token(&self) -> Option<SyntaxToken> {
14724 support::token(&self.syntax, SyntaxKind::STORAGE_KW)
14725 }
14726}
14727
14728#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14729pub struct SetTablespace {
14730 pub(crate) syntax: SyntaxNode,
14731}
14732impl SetTablespace {
14733 #[inline]
14734 pub fn path(&self) -> Option<Path> {
14735 support::child(&self.syntax)
14736 }
14737 #[inline]
14738 pub fn set_token(&self) -> Option<SyntaxToken> {
14739 support::token(&self.syntax, SyntaxKind::SET_KW)
14740 }
14741 #[inline]
14742 pub fn tablespace_token(&self) -> Option<SyntaxToken> {
14743 support::token(&self.syntax, SyntaxKind::TABLESPACE_KW)
14744 }
14745}
14746
14747#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14748pub struct SetTransaction {
14749 pub(crate) syntax: SyntaxNode,
14750}
14751impl SetTransaction {
14752 #[inline]
14753 pub fn literal(&self) -> Option<Literal> {
14754 support::child(&self.syntax)
14755 }
14756 #[inline]
14757 pub fn transaction_mode_list(&self) -> Option<TransactionModeList> {
14758 support::child(&self.syntax)
14759 }
14760 #[inline]
14761 pub fn as_token(&self) -> Option<SyntaxToken> {
14762 support::token(&self.syntax, SyntaxKind::AS_KW)
14763 }
14764 #[inline]
14765 pub fn characteristics_token(&self) -> Option<SyntaxToken> {
14766 support::token(&self.syntax, SyntaxKind::CHARACTERISTICS_KW)
14767 }
14768 #[inline]
14769 pub fn session_token(&self) -> Option<SyntaxToken> {
14770 support::token(&self.syntax, SyntaxKind::SESSION_KW)
14771 }
14772 #[inline]
14773 pub fn set_token(&self) -> Option<SyntaxToken> {
14774 support::token(&self.syntax, SyntaxKind::SET_KW)
14775 }
14776 #[inline]
14777 pub fn snapshot_token(&self) -> Option<SyntaxToken> {
14778 support::token(&self.syntax, SyntaxKind::SNAPSHOT_KW)
14779 }
14780 #[inline]
14781 pub fn transaction_token(&self) -> Option<SyntaxToken> {
14782 support::token(&self.syntax, SyntaxKind::TRANSACTION_KW)
14783 }
14784}
14785
14786#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14787pub struct SetType {
14788 pub(crate) syntax: SyntaxNode,
14789}
14790impl SetType {
14791 #[inline]
14792 pub fn collate(&self) -> Option<Collate> {
14793 support::child(&self.syntax)
14794 }
14795 #[inline]
14796 pub fn ty(&self) -> Option<Type> {
14797 support::child(&self.syntax)
14798 }
14799 #[inline]
14800 pub fn set_token(&self) -> Option<SyntaxToken> {
14801 support::token(&self.syntax, SyntaxKind::SET_KW)
14802 }
14803 #[inline]
14804 pub fn type_token(&self) -> Option<SyntaxToken> {
14805 support::token(&self.syntax, SyntaxKind::TYPE_KW)
14806 }
14807}
14808
14809#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14810pub struct SetUnlogged {
14811 pub(crate) syntax: SyntaxNode,
14812}
14813impl SetUnlogged {
14814 #[inline]
14815 pub fn set_token(&self) -> Option<SyntaxToken> {
14816 support::token(&self.syntax, SyntaxKind::SET_KW)
14817 }
14818 #[inline]
14819 pub fn unlogged_token(&self) -> Option<SyntaxToken> {
14820 support::token(&self.syntax, SyntaxKind::UNLOGGED_KW)
14821 }
14822}
14823
14824#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14825pub struct SetWithoutCluster {
14826 pub(crate) syntax: SyntaxNode,
14827}
14828impl SetWithoutCluster {
14829 #[inline]
14830 pub fn cluster_token(&self) -> Option<SyntaxToken> {
14831 support::token(&self.syntax, SyntaxKind::CLUSTER_KW)
14832 }
14833 #[inline]
14834 pub fn set_token(&self) -> Option<SyntaxToken> {
14835 support::token(&self.syntax, SyntaxKind::SET_KW)
14836 }
14837 #[inline]
14838 pub fn without_token(&self) -> Option<SyntaxToken> {
14839 support::token(&self.syntax, SyntaxKind::WITHOUT_KW)
14840 }
14841}
14842
14843#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14844pub struct SetWithoutOids {
14845 pub(crate) syntax: SyntaxNode,
14846}
14847impl SetWithoutOids {
14848 #[inline]
14849 pub fn oids_token(&self) -> Option<SyntaxToken> {
14850 support::token(&self.syntax, SyntaxKind::OIDS_KW)
14851 }
14852 #[inline]
14853 pub fn set_token(&self) -> Option<SyntaxToken> {
14854 support::token(&self.syntax, SyntaxKind::SET_KW)
14855 }
14856 #[inline]
14857 pub fn without_token(&self) -> Option<SyntaxToken> {
14858 support::token(&self.syntax, SyntaxKind::WITHOUT_KW)
14859 }
14860}
14861
14862#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14863pub struct Show {
14864 pub(crate) syntax: SyntaxNode,
14865}
14866impl Show {
14867 #[inline]
14868 pub fn show_token(&self) -> Option<SyntaxToken> {
14869 support::token(&self.syntax, SyntaxKind::SHOW_KW)
14870 }
14871}
14872
14873#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14874pub struct SimilarTo {
14875 pub(crate) syntax: SyntaxNode,
14876}
14877impl SimilarTo {
14878 #[inline]
14879 pub fn similar_token(&self) -> Option<SyntaxToken> {
14880 support::token(&self.syntax, SyntaxKind::SIMILAR_KW)
14881 }
14882 #[inline]
14883 pub fn to_token(&self) -> Option<SyntaxToken> {
14884 support::token(&self.syntax, SyntaxKind::TO_KW)
14885 }
14886}
14887
14888#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14889pub struct SliceExpr {
14890 pub(crate) syntax: SyntaxNode,
14891}
14892impl SliceExpr {
14893 #[inline]
14894 pub fn l_brack_token(&self) -> Option<SyntaxToken> {
14895 support::token(&self.syntax, SyntaxKind::L_BRACK)
14896 }
14897 #[inline]
14898 pub fn r_brack_token(&self) -> Option<SyntaxToken> {
14899 support::token(&self.syntax, SyntaxKind::R_BRACK)
14900 }
14901 #[inline]
14902 pub fn colon_token(&self) -> Option<SyntaxToken> {
14903 support::token(&self.syntax, SyntaxKind::COLON)
14904 }
14905}
14906
14907#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14908pub struct SomeFn {
14909 pub(crate) syntax: SyntaxNode,
14910}
14911impl SomeFn {
14912 #[inline]
14913 pub fn expr(&self) -> Option<Expr> {
14914 support::child(&self.syntax)
14915 }
14916 #[inline]
14917 pub fn select_variant(&self) -> Option<SelectVariant> {
14918 support::child(&self.syntax)
14919 }
14920 #[inline]
14921 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
14922 support::token(&self.syntax, SyntaxKind::L_PAREN)
14923 }
14924 #[inline]
14925 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
14926 support::token(&self.syntax, SyntaxKind::R_PAREN)
14927 }
14928 #[inline]
14929 pub fn some_token(&self) -> Option<SyntaxToken> {
14930 support::token(&self.syntax, SyntaxKind::SOME_KW)
14931 }
14932}
14933
14934#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14935pub struct SortAsc {
14936 pub(crate) syntax: SyntaxNode,
14937}
14938impl SortAsc {
14939 #[inline]
14940 pub fn asc_token(&self) -> Option<SyntaxToken> {
14941 support::token(&self.syntax, SyntaxKind::ASC_KW)
14942 }
14943}
14944
14945#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14946pub struct SortBy {
14947 pub(crate) syntax: SyntaxNode,
14948}
14949impl SortBy {
14950 #[inline]
14951 pub fn expr(&self) -> Option<Expr> {
14952 support::child(&self.syntax)
14953 }
14954 #[inline]
14955 pub fn nulls_first(&self) -> Option<NullsFirst> {
14956 support::child(&self.syntax)
14957 }
14958 #[inline]
14959 pub fn nulls_last(&self) -> Option<NullsLast> {
14960 support::child(&self.syntax)
14961 }
14962 #[inline]
14963 pub fn sort_asc(&self) -> Option<SortAsc> {
14964 support::child(&self.syntax)
14965 }
14966 #[inline]
14967 pub fn sort_desc(&self) -> Option<SortDesc> {
14968 support::child(&self.syntax)
14969 }
14970 #[inline]
14971 pub fn sort_using(&self) -> Option<SortUsing> {
14972 support::child(&self.syntax)
14973 }
14974}
14975
14976#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14977pub struct SortByList {
14978 pub(crate) syntax: SyntaxNode,
14979}
14980impl SortByList {
14981 #[inline]
14982 pub fn sort_bys(&self) -> AstChildren<SortBy> {
14983 support::children(&self.syntax)
14984 }
14985}
14986
14987#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14988pub struct SortDesc {
14989 pub(crate) syntax: SyntaxNode,
14990}
14991impl SortDesc {
14992 #[inline]
14993 pub fn desc_token(&self) -> Option<SyntaxToken> {
14994 support::token(&self.syntax, SyntaxKind::DESC_KW)
14995 }
14996}
14997
14998#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14999pub struct SortUsing {
15000 pub(crate) syntax: SyntaxNode,
15001}
15002impl SortUsing {
15003 #[inline]
15004 pub fn op(&self) -> Option<Op> {
15005 support::child(&self.syntax)
15006 }
15007 #[inline]
15008 pub fn using_token(&self) -> Option<SyntaxToken> {
15009 support::token(&self.syntax, SyntaxKind::USING_KW)
15010 }
15011}
15012
15013#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15014pub struct SourceFile {
15015 pub(crate) syntax: SyntaxNode,
15016}
15017impl SourceFile {
15018 #[inline]
15019 pub fn stmts(&self) -> AstChildren<Stmt> {
15020 support::children(&self.syntax)
15021 }
15022}
15023
15024#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15025pub struct SplitPartition {
15026 pub(crate) syntax: SyntaxNode,
15027}
15028impl SplitPartition {
15029 #[inline]
15030 pub fn partition_list(&self) -> Option<PartitionList> {
15031 support::child(&self.syntax)
15032 }
15033 #[inline]
15034 pub fn into_token(&self) -> Option<SyntaxToken> {
15035 support::token(&self.syntax, SyntaxKind::INTO_KW)
15036 }
15037 #[inline]
15038 pub fn partition_token(&self) -> Option<SyntaxToken> {
15039 support::token(&self.syntax, SyntaxKind::PARTITION_KW)
15040 }
15041 #[inline]
15042 pub fn split_token(&self) -> Option<SyntaxToken> {
15043 support::token(&self.syntax, SyntaxKind::SPLIT_KW)
15044 }
15045}
15046
15047#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15048pub struct Storage {
15049 pub(crate) syntax: SyntaxNode,
15050}
15051impl Storage {
15052 #[inline]
15053 pub fn default_token(&self) -> Option<SyntaxToken> {
15054 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
15055 }
15056 #[inline]
15057 pub fn external_token(&self) -> Option<SyntaxToken> {
15058 support::token(&self.syntax, SyntaxKind::EXTERNAL_KW)
15059 }
15060 #[inline]
15061 pub fn ident_token(&self) -> Option<SyntaxToken> {
15062 support::token(&self.syntax, SyntaxKind::IDENT)
15063 }
15064 #[inline]
15065 pub fn storage_token(&self) -> Option<SyntaxToken> {
15066 support::token(&self.syntax, SyntaxKind::STORAGE_KW)
15067 }
15068}
15069
15070#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15071pub struct StrictFuncOption {
15072 pub(crate) syntax: SyntaxNode,
15073}
15074impl StrictFuncOption {
15075 #[inline]
15076 pub fn called_token(&self) -> Option<SyntaxToken> {
15077 support::token(&self.syntax, SyntaxKind::CALLED_KW)
15078 }
15079 #[inline]
15080 pub fn input_token(&self) -> Option<SyntaxToken> {
15081 support::token(&self.syntax, SyntaxKind::INPUT_KW)
15082 }
15083 #[inline]
15084 pub fn null_token(&self) -> Option<SyntaxToken> {
15085 support::token(&self.syntax, SyntaxKind::NULL_KW)
15086 }
15087 #[inline]
15088 pub fn on_token(&self) -> Option<SyntaxToken> {
15089 support::token(&self.syntax, SyntaxKind::ON_KW)
15090 }
15091 #[inline]
15092 pub fn returns_token(&self) -> Option<SyntaxToken> {
15093 support::token(&self.syntax, SyntaxKind::RETURNS_KW)
15094 }
15095 #[inline]
15096 pub fn strict_token(&self) -> Option<SyntaxToken> {
15097 support::token(&self.syntax, SyntaxKind::STRICT_KW)
15098 }
15099}
15100
15101#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15102pub struct SubstringFn {
15103 pub(crate) syntax: SyntaxNode,
15104}
15105impl SubstringFn {
15106 #[inline]
15107 pub fn expr(&self) -> Option<Expr> {
15108 support::child(&self.syntax)
15109 }
15110 #[inline]
15111 pub fn exprs(&self) -> AstChildren<Expr> {
15112 support::children(&self.syntax)
15113 }
15114 #[inline]
15115 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
15116 support::token(&self.syntax, SyntaxKind::L_PAREN)
15117 }
15118 #[inline]
15119 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
15120 support::token(&self.syntax, SyntaxKind::R_PAREN)
15121 }
15122 #[inline]
15123 pub fn for_token(&self) -> Option<SyntaxToken> {
15124 support::token(&self.syntax, SyntaxKind::FOR_KW)
15125 }
15126 #[inline]
15127 pub fn from_token(&self) -> Option<SyntaxToken> {
15128 support::token(&self.syntax, SyntaxKind::FROM_KW)
15129 }
15130 #[inline]
15131 pub fn similar_token(&self) -> Option<SyntaxToken> {
15132 support::token(&self.syntax, SyntaxKind::SIMILAR_KW)
15133 }
15134 #[inline]
15135 pub fn substring_token(&self) -> Option<SyntaxToken> {
15136 support::token(&self.syntax, SyntaxKind::SUBSTRING_KW)
15137 }
15138}
15139
15140#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15141pub struct SupportFuncOption {
15142 pub(crate) syntax: SyntaxNode,
15143}
15144impl SupportFuncOption {
15145 #[inline]
15146 pub fn support_token(&self) -> Option<SyntaxToken> {
15147 support::token(&self.syntax, SyntaxKind::SUPPORT_KW)
15148 }
15149}
15150
15151#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15152pub struct Table {
15153 pub(crate) syntax: SyntaxNode,
15154}
15155impl Table {
15156 #[inline]
15157 pub fn relation_name(&self) -> Option<RelationName> {
15158 support::child(&self.syntax)
15159 }
15160 #[inline]
15161 pub fn with_clause(&self) -> Option<WithClause> {
15162 support::child(&self.syntax)
15163 }
15164 #[inline]
15165 pub fn table_token(&self) -> Option<SyntaxToken> {
15166 support::token(&self.syntax, SyntaxKind::TABLE_KW)
15167 }
15168}
15169
15170#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15171pub struct TableAndColumns {
15172 pub(crate) syntax: SyntaxNode,
15173}
15174impl TableAndColumns {
15175 #[inline]
15176 pub fn column_list(&self) -> Option<ColumnList> {
15177 support::child(&self.syntax)
15178 }
15179 #[inline]
15180 pub fn relation_name(&self) -> Option<RelationName> {
15181 support::child(&self.syntax)
15182 }
15183}
15184
15185#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15186pub struct TableAndColumnsList {
15187 pub(crate) syntax: SyntaxNode,
15188}
15189impl TableAndColumnsList {
15190 #[inline]
15191 pub fn table_and_columnss(&self) -> AstChildren<TableAndColumns> {
15192 support::children(&self.syntax)
15193 }
15194}
15195
15196#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15197pub struct TableArgList {
15198 pub(crate) syntax: SyntaxNode,
15199}
15200impl TableArgList {
15201 #[inline]
15202 pub fn args(&self) -> AstChildren<TableArg> {
15203 support::children(&self.syntax)
15204 }
15205 #[inline]
15206 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
15207 support::token(&self.syntax, SyntaxKind::L_PAREN)
15208 }
15209 #[inline]
15210 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
15211 support::token(&self.syntax, SyntaxKind::R_PAREN)
15212 }
15213}
15214
15215#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15216pub struct TableList {
15217 pub(crate) syntax: SyntaxNode,
15218}
15219impl TableList {
15220 #[inline]
15221 pub fn relation_names(&self) -> AstChildren<RelationName> {
15222 support::children(&self.syntax)
15223 }
15224}
15225
15226#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15227pub struct TablesampleClause {
15228 pub(crate) syntax: SyntaxNode,
15229}
15230impl TablesampleClause {
15231 #[inline]
15232 pub fn call_expr(&self) -> Option<CallExpr> {
15233 support::child(&self.syntax)
15234 }
15235 #[inline]
15236 pub fn repeatable_clause(&self) -> Option<RepeatableClause> {
15237 support::child(&self.syntax)
15238 }
15239 #[inline]
15240 pub fn tablesample_token(&self) -> Option<SyntaxToken> {
15241 support::token(&self.syntax, SyntaxKind::TABLESAMPLE_KW)
15242 }
15243}
15244
15245#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15246pub struct Tablespace {
15247 pub(crate) syntax: SyntaxNode,
15248}
15249impl Tablespace {
15250 #[inline]
15251 pub fn name_ref(&self) -> Option<NameRef> {
15252 support::child(&self.syntax)
15253 }
15254 #[inline]
15255 pub fn tablespace_token(&self) -> Option<SyntaxToken> {
15256 support::token(&self.syntax, SyntaxKind::TABLESPACE_KW)
15257 }
15258}
15259
15260#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15261pub struct Target {
15262 pub(crate) syntax: SyntaxNode,
15263}
15264impl Target {
15265 #[inline]
15266 pub fn as_name(&self) -> Option<AsName> {
15267 support::child(&self.syntax)
15268 }
15269 #[inline]
15270 pub fn expr(&self) -> Option<Expr> {
15271 support::child(&self.syntax)
15272 }
15273 #[inline]
15274 pub fn star_token(&self) -> Option<SyntaxToken> {
15275 support::token(&self.syntax, SyntaxKind::STAR)
15276 }
15277}
15278
15279#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15280pub struct TargetList {
15281 pub(crate) syntax: SyntaxNode,
15282}
15283impl TargetList {
15284 #[inline]
15285 pub fn targets(&self) -> AstChildren<Target> {
15286 support::children(&self.syntax)
15287 }
15288}
15289
15290#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15291pub struct TimeType {
15292 pub(crate) syntax: SyntaxNode,
15293}
15294impl TimeType {
15295 #[inline]
15296 pub fn literal(&self) -> Option<Literal> {
15297 support::child(&self.syntax)
15298 }
15299 #[inline]
15300 pub fn timezone(&self) -> Option<Timezone> {
15301 support::child(&self.syntax)
15302 }
15303 #[inline]
15304 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
15305 support::token(&self.syntax, SyntaxKind::L_PAREN)
15306 }
15307 #[inline]
15308 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
15309 support::token(&self.syntax, SyntaxKind::R_PAREN)
15310 }
15311 #[inline]
15312 pub fn time_token(&self) -> Option<SyntaxToken> {
15313 support::token(&self.syntax, SyntaxKind::TIME_KW)
15314 }
15315 #[inline]
15316 pub fn timestamp_token(&self) -> Option<SyntaxToken> {
15317 support::token(&self.syntax, SyntaxKind::TIMESTAMP_KW)
15318 }
15319}
15320
15321#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15322pub struct Timing {
15323 pub(crate) syntax: SyntaxNode,
15324}
15325impl Timing {
15326 #[inline]
15327 pub fn after_token(&self) -> Option<SyntaxToken> {
15328 support::token(&self.syntax, SyntaxKind::AFTER_KW)
15329 }
15330 #[inline]
15331 pub fn before_token(&self) -> Option<SyntaxToken> {
15332 support::token(&self.syntax, SyntaxKind::BEFORE_KW)
15333 }
15334 #[inline]
15335 pub fn instead_token(&self) -> Option<SyntaxToken> {
15336 support::token(&self.syntax, SyntaxKind::INSTEAD_KW)
15337 }
15338 #[inline]
15339 pub fn of_token(&self) -> Option<SyntaxToken> {
15340 support::token(&self.syntax, SyntaxKind::OF_KW)
15341 }
15342}
15343
15344#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15345pub struct TransactionModeList {
15346 pub(crate) syntax: SyntaxNode,
15347}
15348impl TransactionModeList {
15349 #[inline]
15350 pub fn transaction_modes(&self) -> AstChildren<TransactionMode> {
15351 support::children(&self.syntax)
15352 }
15353}
15354
15355#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15356pub struct TransformFromFunc {
15357 pub(crate) syntax: SyntaxNode,
15358}
15359impl TransformFromFunc {
15360 #[inline]
15361 pub fn function_sig(&self) -> Option<FunctionSig> {
15362 support::child(&self.syntax)
15363 }
15364 #[inline]
15365 pub fn from_token(&self) -> Option<SyntaxToken> {
15366 support::token(&self.syntax, SyntaxKind::FROM_KW)
15367 }
15368 #[inline]
15369 pub fn function_token(&self) -> Option<SyntaxToken> {
15370 support::token(&self.syntax, SyntaxKind::FUNCTION_KW)
15371 }
15372 #[inline]
15373 pub fn sql_token(&self) -> Option<SyntaxToken> {
15374 support::token(&self.syntax, SyntaxKind::SQL_KW)
15375 }
15376 #[inline]
15377 pub fn with_token(&self) -> Option<SyntaxToken> {
15378 support::token(&self.syntax, SyntaxKind::WITH_KW)
15379 }
15380}
15381
15382#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15383pub struct TransformFuncOption {
15384 pub(crate) syntax: SyntaxNode,
15385}
15386impl TransformFuncOption {
15387 #[inline]
15388 pub fn transform_token(&self) -> Option<SyntaxToken> {
15389 support::token(&self.syntax, SyntaxKind::TRANSFORM_KW)
15390 }
15391}
15392
15393#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15394pub struct TransformToFunc {
15395 pub(crate) syntax: SyntaxNode,
15396}
15397impl TransformToFunc {
15398 #[inline]
15399 pub fn function_sig(&self) -> Option<FunctionSig> {
15400 support::child(&self.syntax)
15401 }
15402 #[inline]
15403 pub fn function_token(&self) -> Option<SyntaxToken> {
15404 support::token(&self.syntax, SyntaxKind::FUNCTION_KW)
15405 }
15406 #[inline]
15407 pub fn sql_token(&self) -> Option<SyntaxToken> {
15408 support::token(&self.syntax, SyntaxKind::SQL_KW)
15409 }
15410 #[inline]
15411 pub fn to_token(&self) -> Option<SyntaxToken> {
15412 support::token(&self.syntax, SyntaxKind::TO_KW)
15413 }
15414 #[inline]
15415 pub fn with_token(&self) -> Option<SyntaxToken> {
15416 support::token(&self.syntax, SyntaxKind::WITH_KW)
15417 }
15418}
15419
15420#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15421pub struct TriggerEvent {
15422 pub(crate) syntax: SyntaxNode,
15423}
15424impl TriggerEvent {
15425 #[inline]
15426 pub fn trigger_event_update(&self) -> Option<TriggerEventUpdate> {
15427 support::child(&self.syntax)
15428 }
15429 #[inline]
15430 pub fn delete_token(&self) -> Option<SyntaxToken> {
15431 support::token(&self.syntax, SyntaxKind::DELETE_KW)
15432 }
15433 #[inline]
15434 pub fn insert_token(&self) -> Option<SyntaxToken> {
15435 support::token(&self.syntax, SyntaxKind::INSERT_KW)
15436 }
15437 #[inline]
15438 pub fn truncate_token(&self) -> Option<SyntaxToken> {
15439 support::token(&self.syntax, SyntaxKind::TRUNCATE_KW)
15440 }
15441}
15442
15443#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15444pub struct TriggerEventList {
15445 pub(crate) syntax: SyntaxNode,
15446}
15447impl TriggerEventList {
15448 #[inline]
15449 pub fn trigger_events(&self) -> AstChildren<TriggerEvent> {
15450 support::children(&self.syntax)
15451 }
15452}
15453
15454#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15455pub struct TriggerEventUpdate {
15456 pub(crate) syntax: SyntaxNode,
15457}
15458impl TriggerEventUpdate {
15459 #[inline]
15460 pub fn name_refs(&self) -> AstChildren<NameRef> {
15461 support::children(&self.syntax)
15462 }
15463 #[inline]
15464 pub fn of_token(&self) -> Option<SyntaxToken> {
15465 support::token(&self.syntax, SyntaxKind::OF_KW)
15466 }
15467 #[inline]
15468 pub fn update_token(&self) -> Option<SyntaxToken> {
15469 support::token(&self.syntax, SyntaxKind::UPDATE_KW)
15470 }
15471}
15472
15473#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15474pub struct TrimFn {
15475 pub(crate) syntax: SyntaxNode,
15476}
15477impl TrimFn {
15478 #[inline]
15479 pub fn expr(&self) -> Option<Expr> {
15480 support::child(&self.syntax)
15481 }
15482 #[inline]
15483 pub fn exprs(&self) -> AstChildren<Expr> {
15484 support::children(&self.syntax)
15485 }
15486 #[inline]
15487 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
15488 support::token(&self.syntax, SyntaxKind::L_PAREN)
15489 }
15490 #[inline]
15491 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
15492 support::token(&self.syntax, SyntaxKind::R_PAREN)
15493 }
15494 #[inline]
15495 pub fn from_token(&self) -> Option<SyntaxToken> {
15496 support::token(&self.syntax, SyntaxKind::FROM_KW)
15497 }
15498 #[inline]
15499 pub fn trim_token(&self) -> Option<SyntaxToken> {
15500 support::token(&self.syntax, SyntaxKind::TRIM_KW)
15501 }
15502}
15503
15504#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15505pub struct Truncate {
15506 pub(crate) syntax: SyntaxNode,
15507}
15508impl Truncate {
15509 #[inline]
15510 pub fn table_list(&self) -> Option<TableList> {
15511 support::child(&self.syntax)
15512 }
15513 #[inline]
15514 pub fn cascade_token(&self) -> Option<SyntaxToken> {
15515 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
15516 }
15517 #[inline]
15518 pub fn continue_token(&self) -> Option<SyntaxToken> {
15519 support::token(&self.syntax, SyntaxKind::CONTINUE_KW)
15520 }
15521 #[inline]
15522 pub fn identity_token(&self) -> Option<SyntaxToken> {
15523 support::token(&self.syntax, SyntaxKind::IDENTITY_KW)
15524 }
15525 #[inline]
15526 pub fn restart_token(&self) -> Option<SyntaxToken> {
15527 support::token(&self.syntax, SyntaxKind::RESTART_KW)
15528 }
15529 #[inline]
15530 pub fn restrict_token(&self) -> Option<SyntaxToken> {
15531 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
15532 }
15533 #[inline]
15534 pub fn table_token(&self) -> Option<SyntaxToken> {
15535 support::token(&self.syntax, SyntaxKind::TABLE_KW)
15536 }
15537 #[inline]
15538 pub fn truncate_token(&self) -> Option<SyntaxToken> {
15539 support::token(&self.syntax, SyntaxKind::TRUNCATE_KW)
15540 }
15541}
15542
15543#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15544pub struct TupleExpr {
15545 pub(crate) syntax: SyntaxNode,
15546}
15547impl TupleExpr {
15548 #[inline]
15549 pub fn exprs(&self) -> AstChildren<Expr> {
15550 support::children(&self.syntax)
15551 }
15552 #[inline]
15553 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
15554 support::token(&self.syntax, SyntaxKind::L_PAREN)
15555 }
15556 #[inline]
15557 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
15558 support::token(&self.syntax, SyntaxKind::R_PAREN)
15559 }
15560}
15561
15562#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15563pub struct UnicodeNormalForm {
15564 pub(crate) syntax: SyntaxNode,
15565}
15566impl UnicodeNormalForm {
15567 #[inline]
15568 pub fn nfc_token(&self) -> Option<SyntaxToken> {
15569 support::token(&self.syntax, SyntaxKind::NFC_KW)
15570 }
15571 #[inline]
15572 pub fn nfd_token(&self) -> Option<SyntaxToken> {
15573 support::token(&self.syntax, SyntaxKind::NFD_KW)
15574 }
15575 #[inline]
15576 pub fn nfkc_token(&self) -> Option<SyntaxToken> {
15577 support::token(&self.syntax, SyntaxKind::NFKC_KW)
15578 }
15579 #[inline]
15580 pub fn nfkd_token(&self) -> Option<SyntaxToken> {
15581 support::token(&self.syntax, SyntaxKind::NFKD_KW)
15582 }
15583}
15584
15585#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15586pub struct UniqueConstraint {
15587 pub(crate) syntax: SyntaxNode,
15588}
15589impl UniqueConstraint {
15590 #[inline]
15591 pub fn column_list(&self) -> Option<ColumnList> {
15592 support::child(&self.syntax)
15593 }
15594 #[inline]
15595 pub fn constraint_name(&self) -> Option<ConstraintName> {
15596 support::child(&self.syntax)
15597 }
15598 #[inline]
15599 pub fn nulls_distinct(&self) -> Option<NullsDistinct> {
15600 support::child(&self.syntax)
15601 }
15602 #[inline]
15603 pub fn nulls_not_distinct(&self) -> Option<NullsNotDistinct> {
15604 support::child(&self.syntax)
15605 }
15606 #[inline]
15607 pub fn using_index(&self) -> Option<UsingIndex> {
15608 support::child(&self.syntax)
15609 }
15610 #[inline]
15611 pub fn unique_token(&self) -> Option<SyntaxToken> {
15612 support::token(&self.syntax, SyntaxKind::UNIQUE_KW)
15613 }
15614}
15615
15616#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15617pub struct Unlisten {
15618 pub(crate) syntax: SyntaxNode,
15619}
15620impl Unlisten {
15621 #[inline]
15622 pub fn name_ref(&self) -> Option<NameRef> {
15623 support::child(&self.syntax)
15624 }
15625 #[inline]
15626 pub fn star_token(&self) -> Option<SyntaxToken> {
15627 support::token(&self.syntax, SyntaxKind::STAR)
15628 }
15629 #[inline]
15630 pub fn unlisten_token(&self) -> Option<SyntaxToken> {
15631 support::token(&self.syntax, SyntaxKind::UNLISTEN_KW)
15632 }
15633}
15634
15635#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15636pub struct Update {
15637 pub(crate) syntax: SyntaxNode,
15638}
15639impl Update {
15640 #[inline]
15641 pub fn alias(&self) -> Option<Alias> {
15642 support::child(&self.syntax)
15643 }
15644 #[inline]
15645 pub fn from_clause(&self) -> Option<FromClause> {
15646 support::child(&self.syntax)
15647 }
15648 #[inline]
15649 pub fn relation_name(&self) -> Option<RelationName> {
15650 support::child(&self.syntax)
15651 }
15652 #[inline]
15653 pub fn returning_clause(&self) -> Option<ReturningClause> {
15654 support::child(&self.syntax)
15655 }
15656 #[inline]
15657 pub fn set_clause(&self) -> Option<SetClause> {
15658 support::child(&self.syntax)
15659 }
15660 #[inline]
15661 pub fn where_clause(&self) -> Option<WhereClause> {
15662 support::child(&self.syntax)
15663 }
15664 #[inline]
15665 pub fn with_clause(&self) -> Option<WithClause> {
15666 support::child(&self.syntax)
15667 }
15668 #[inline]
15669 pub fn update_token(&self) -> Option<SyntaxToken> {
15670 support::token(&self.syntax, SyntaxKind::UPDATE_KW)
15671 }
15672}
15673
15674#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15675pub struct UsingClause {
15676 pub(crate) syntax: SyntaxNode,
15677}
15678impl UsingClause {
15679 #[inline]
15680 pub fn from_items(&self) -> AstChildren<FromItem> {
15681 support::children(&self.syntax)
15682 }
15683 #[inline]
15684 pub fn using_token(&self) -> Option<SyntaxToken> {
15685 support::token(&self.syntax, SyntaxKind::USING_KW)
15686 }
15687}
15688
15689#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15690pub struct UsingExprClause {
15691 pub(crate) syntax: SyntaxNode,
15692}
15693impl UsingExprClause {
15694 #[inline]
15695 pub fn expr(&self) -> Option<Expr> {
15696 support::child(&self.syntax)
15697 }
15698 #[inline]
15699 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
15700 support::token(&self.syntax, SyntaxKind::L_PAREN)
15701 }
15702 #[inline]
15703 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
15704 support::token(&self.syntax, SyntaxKind::R_PAREN)
15705 }
15706 #[inline]
15707 pub fn using_token(&self) -> Option<SyntaxToken> {
15708 support::token(&self.syntax, SyntaxKind::USING_KW)
15709 }
15710}
15711
15712#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15713pub struct UsingIndex {
15714 pub(crate) syntax: SyntaxNode,
15715}
15716impl UsingIndex {
15717 #[inline]
15718 pub fn name_ref(&self) -> Option<NameRef> {
15719 support::child(&self.syntax)
15720 }
15721 #[inline]
15722 pub fn index_token(&self) -> Option<SyntaxToken> {
15723 support::token(&self.syntax, SyntaxKind::INDEX_KW)
15724 }
15725 #[inline]
15726 pub fn using_token(&self) -> Option<SyntaxToken> {
15727 support::token(&self.syntax, SyntaxKind::USING_KW)
15728 }
15729}
15730
15731#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15732pub struct UsingMethod {
15733 pub(crate) syntax: SyntaxNode,
15734}
15735impl UsingMethod {
15736 #[inline]
15737 pub fn name_ref(&self) -> Option<NameRef> {
15738 support::child(&self.syntax)
15739 }
15740 #[inline]
15741 pub fn using_token(&self) -> Option<SyntaxToken> {
15742 support::token(&self.syntax, SyntaxKind::USING_KW)
15743 }
15744}
15745
15746#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15747pub struct UsingOnClause {
15748 pub(crate) syntax: SyntaxNode,
15749}
15750impl UsingOnClause {
15751 #[inline]
15752 pub fn from_item(&self) -> Option<FromItem> {
15753 support::child(&self.syntax)
15754 }
15755 #[inline]
15756 pub fn on_clause(&self) -> Option<OnClause> {
15757 support::child(&self.syntax)
15758 }
15759 #[inline]
15760 pub fn using_token(&self) -> Option<SyntaxToken> {
15761 support::token(&self.syntax, SyntaxKind::USING_KW)
15762 }
15763}
15764
15765#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15766pub struct Vacuum {
15767 pub(crate) syntax: SyntaxNode,
15768}
15769impl Vacuum {
15770 #[inline]
15771 pub fn table_and_columns_list(&self) -> Option<TableAndColumnsList> {
15772 support::child(&self.syntax)
15773 }
15774 #[inline]
15775 pub fn vacuum_option_list(&self) -> Option<VacuumOptionList> {
15776 support::child(&self.syntax)
15777 }
15778 #[inline]
15779 pub fn analyse_token(&self) -> Option<SyntaxToken> {
15780 support::token(&self.syntax, SyntaxKind::ANALYSE_KW)
15781 }
15782 #[inline]
15783 pub fn analyze_token(&self) -> Option<SyntaxToken> {
15784 support::token(&self.syntax, SyntaxKind::ANALYZE_KW)
15785 }
15786 #[inline]
15787 pub fn freeze_token(&self) -> Option<SyntaxToken> {
15788 support::token(&self.syntax, SyntaxKind::FREEZE_KW)
15789 }
15790 #[inline]
15791 pub fn full_token(&self) -> Option<SyntaxToken> {
15792 support::token(&self.syntax, SyntaxKind::FULL_KW)
15793 }
15794 #[inline]
15795 pub fn vacuum_token(&self) -> Option<SyntaxToken> {
15796 support::token(&self.syntax, SyntaxKind::VACUUM_KW)
15797 }
15798 #[inline]
15799 pub fn verbose_token(&self) -> Option<SyntaxToken> {
15800 support::token(&self.syntax, SyntaxKind::VERBOSE_KW)
15801 }
15802}
15803
15804#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15805pub struct VacuumOption {
15806 pub(crate) syntax: SyntaxNode,
15807}
15808impl VacuumOption {
15809 #[inline]
15810 pub fn literal(&self) -> Option<Literal> {
15811 support::child(&self.syntax)
15812 }
15813}
15814
15815#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15816pub struct VacuumOptionList {
15817 pub(crate) syntax: SyntaxNode,
15818}
15819impl VacuumOptionList {
15820 #[inline]
15821 pub fn vacuum_options(&self) -> AstChildren<VacuumOption> {
15822 support::children(&self.syntax)
15823 }
15824 #[inline]
15825 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
15826 support::token(&self.syntax, SyntaxKind::L_PAREN)
15827 }
15828 #[inline]
15829 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
15830 support::token(&self.syntax, SyntaxKind::R_PAREN)
15831 }
15832}
15833
15834#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15835pub struct ValidateConstraint {
15836 pub(crate) syntax: SyntaxNode,
15837}
15838impl ValidateConstraint {
15839 #[inline]
15840 pub fn name_ref(&self) -> Option<NameRef> {
15841 support::child(&self.syntax)
15842 }
15843 #[inline]
15844 pub fn constraint_token(&self) -> Option<SyntaxToken> {
15845 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
15846 }
15847 #[inline]
15848 pub fn validate_token(&self) -> Option<SyntaxToken> {
15849 support::token(&self.syntax, SyntaxKind::VALIDATE_KW)
15850 }
15851}
15852
15853#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15854pub struct Values {
15855 pub(crate) syntax: SyntaxNode,
15856}
15857impl Values {
15858 #[inline]
15859 pub fn row_list(&self) -> Option<RowList> {
15860 support::child(&self.syntax)
15861 }
15862 #[inline]
15863 pub fn with_clause(&self) -> Option<WithClause> {
15864 support::child(&self.syntax)
15865 }
15866 #[inline]
15867 pub fn values_token(&self) -> Option<SyntaxToken> {
15868 support::token(&self.syntax, SyntaxKind::VALUES_KW)
15869 }
15870}
15871
15872#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15873pub struct Variant {
15874 pub(crate) syntax: SyntaxNode,
15875}
15876impl Variant {
15877 #[inline]
15878 pub fn literal(&self) -> Option<Literal> {
15879 support::child(&self.syntax)
15880 }
15881}
15882
15883#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15884pub struct VariantList {
15885 pub(crate) syntax: SyntaxNode,
15886}
15887impl VariantList {
15888 #[inline]
15889 pub fn variants(&self) -> AstChildren<Variant> {
15890 support::children(&self.syntax)
15891 }
15892 #[inline]
15893 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
15894 support::token(&self.syntax, SyntaxKind::L_PAREN)
15895 }
15896 #[inline]
15897 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
15898 support::token(&self.syntax, SyntaxKind::R_PAREN)
15899 }
15900}
15901
15902#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15903pub struct VolatilityFuncOption {
15904 pub(crate) syntax: SyntaxNode,
15905}
15906impl VolatilityFuncOption {
15907 #[inline]
15908 pub fn immutable_token(&self) -> Option<SyntaxToken> {
15909 support::token(&self.syntax, SyntaxKind::IMMUTABLE_KW)
15910 }
15911 #[inline]
15912 pub fn stable_token(&self) -> Option<SyntaxToken> {
15913 support::token(&self.syntax, SyntaxKind::STABLE_KW)
15914 }
15915 #[inline]
15916 pub fn volatile_token(&self) -> Option<SyntaxToken> {
15917 support::token(&self.syntax, SyntaxKind::VOLATILE_KW)
15918 }
15919}
15920
15921#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15922pub struct WhenClause {
15923 pub(crate) syntax: SyntaxNode,
15924}
15925impl WhenClause {
15926 #[inline]
15927 pub fn then_token(&self) -> Option<SyntaxToken> {
15928 support::token(&self.syntax, SyntaxKind::THEN_KW)
15929 }
15930 #[inline]
15931 pub fn when_token(&self) -> Option<SyntaxToken> {
15932 support::token(&self.syntax, SyntaxKind::WHEN_KW)
15933 }
15934}
15935
15936#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15937pub struct WhenClauseList {
15938 pub(crate) syntax: SyntaxNode,
15939}
15940impl WhenClauseList {
15941 #[inline]
15942 pub fn when_clause(&self) -> Option<WhenClause> {
15943 support::child(&self.syntax)
15944 }
15945 #[inline]
15946 pub fn when_clauses(&self) -> AstChildren<WhenClause> {
15947 support::children(&self.syntax)
15948 }
15949}
15950
15951#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15952pub struct WhenCondition {
15953 pub(crate) syntax: SyntaxNode,
15954}
15955impl WhenCondition {
15956 #[inline]
15957 pub fn expr(&self) -> Option<Expr> {
15958 support::child(&self.syntax)
15959 }
15960 #[inline]
15961 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
15962 support::token(&self.syntax, SyntaxKind::L_PAREN)
15963 }
15964 #[inline]
15965 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
15966 support::token(&self.syntax, SyntaxKind::R_PAREN)
15967 }
15968 #[inline]
15969 pub fn when_token(&self) -> Option<SyntaxToken> {
15970 support::token(&self.syntax, SyntaxKind::WHEN_KW)
15971 }
15972}
15973
15974#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15975pub struct WhereClause {
15976 pub(crate) syntax: SyntaxNode,
15977}
15978impl WhereClause {
15979 #[inline]
15980 pub fn expr(&self) -> Option<Expr> {
15981 support::child(&self.syntax)
15982 }
15983 #[inline]
15984 pub fn where_token(&self) -> Option<SyntaxToken> {
15985 support::token(&self.syntax, SyntaxKind::WHERE_KW)
15986 }
15987}
15988
15989#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15990pub struct WhereConditionClause {
15991 pub(crate) syntax: SyntaxNode,
15992}
15993impl WhereConditionClause {
15994 #[inline]
15995 pub fn expr(&self) -> Option<Expr> {
15996 support::child(&self.syntax)
15997 }
15998 #[inline]
15999 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
16000 support::token(&self.syntax, SyntaxKind::L_PAREN)
16001 }
16002 #[inline]
16003 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
16004 support::token(&self.syntax, SyntaxKind::R_PAREN)
16005 }
16006 #[inline]
16007 pub fn where_token(&self) -> Option<SyntaxToken> {
16008 support::token(&self.syntax, SyntaxKind::WHERE_KW)
16009 }
16010}
16011
16012#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16013pub struct WhereCurrentOf {
16014 pub(crate) syntax: SyntaxNode,
16015}
16016impl WhereCurrentOf {
16017 #[inline]
16018 pub fn name_ref(&self) -> Option<NameRef> {
16019 support::child(&self.syntax)
16020 }
16021 #[inline]
16022 pub fn current_token(&self) -> Option<SyntaxToken> {
16023 support::token(&self.syntax, SyntaxKind::CURRENT_KW)
16024 }
16025 #[inline]
16026 pub fn of_token(&self) -> Option<SyntaxToken> {
16027 support::token(&self.syntax, SyntaxKind::OF_KW)
16028 }
16029 #[inline]
16030 pub fn where_token(&self) -> Option<SyntaxToken> {
16031 support::token(&self.syntax, SyntaxKind::WHERE_KW)
16032 }
16033}
16034
16035#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16036pub struct WindowClause {
16037 pub(crate) syntax: SyntaxNode,
16038}
16039impl WindowClause {
16040 #[inline]
16041 pub fn window_defs(&self) -> AstChildren<WindowDef> {
16042 support::children(&self.syntax)
16043 }
16044 #[inline]
16045 pub fn window_token(&self) -> Option<SyntaxToken> {
16046 support::token(&self.syntax, SyntaxKind::WINDOW_KW)
16047 }
16048}
16049
16050#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16051pub struct WindowDef {
16052 pub(crate) syntax: SyntaxNode,
16053}
16054impl WindowDef {
16055 #[inline]
16056 pub fn name(&self) -> Option<Name> {
16057 support::child(&self.syntax)
16058 }
16059 #[inline]
16060 pub fn window_spec(&self) -> Option<WindowSpec> {
16061 support::child(&self.syntax)
16062 }
16063 #[inline]
16064 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
16065 support::token(&self.syntax, SyntaxKind::L_PAREN)
16066 }
16067 #[inline]
16068 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
16069 support::token(&self.syntax, SyntaxKind::R_PAREN)
16070 }
16071 #[inline]
16072 pub fn as_token(&self) -> Option<SyntaxToken> {
16073 support::token(&self.syntax, SyntaxKind::AS_KW)
16074 }
16075}
16076
16077#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16078pub struct WindowFuncOption {
16079 pub(crate) syntax: SyntaxNode,
16080}
16081impl WindowFuncOption {
16082 #[inline]
16083 pub fn window_token(&self) -> Option<SyntaxToken> {
16084 support::token(&self.syntax, SyntaxKind::WINDOW_KW)
16085 }
16086}
16087
16088#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16089pub struct WindowSpec {
16090 pub(crate) syntax: SyntaxNode,
16091}
16092impl WindowSpec {
16093 #[inline]
16094 pub fn exprs(&self) -> AstChildren<Expr> {
16095 support::children(&self.syntax)
16096 }
16097 #[inline]
16098 pub fn frame_clause(&self) -> Option<FrameClause> {
16099 support::child(&self.syntax)
16100 }
16101 #[inline]
16102 pub fn order_by_clause(&self) -> Option<OrderByClause> {
16103 support::child(&self.syntax)
16104 }
16105 #[inline]
16106 pub fn by_token(&self) -> Option<SyntaxToken> {
16107 support::token(&self.syntax, SyntaxKind::BY_KW)
16108 }
16109 #[inline]
16110 pub fn ident_token(&self) -> Option<SyntaxToken> {
16111 support::token(&self.syntax, SyntaxKind::IDENT)
16112 }
16113 #[inline]
16114 pub fn partition_token(&self) -> Option<SyntaxToken> {
16115 support::token(&self.syntax, SyntaxKind::PARTITION_KW)
16116 }
16117}
16118
16119#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16120pub struct WithCheckExprClause {
16121 pub(crate) syntax: SyntaxNode,
16122}
16123impl WithCheckExprClause {
16124 #[inline]
16125 pub fn expr(&self) -> Option<Expr> {
16126 support::child(&self.syntax)
16127 }
16128 #[inline]
16129 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
16130 support::token(&self.syntax, SyntaxKind::L_PAREN)
16131 }
16132 #[inline]
16133 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
16134 support::token(&self.syntax, SyntaxKind::R_PAREN)
16135 }
16136 #[inline]
16137 pub fn check_token(&self) -> Option<SyntaxToken> {
16138 support::token(&self.syntax, SyntaxKind::CHECK_KW)
16139 }
16140 #[inline]
16141 pub fn with_token(&self) -> Option<SyntaxToken> {
16142 support::token(&self.syntax, SyntaxKind::WITH_KW)
16143 }
16144}
16145
16146#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16147pub struct WithClause {
16148 pub(crate) syntax: SyntaxNode,
16149}
16150impl WithClause {
16151 #[inline]
16152 pub fn with_tables(&self) -> AstChildren<WithTable> {
16153 support::children(&self.syntax)
16154 }
16155 #[inline]
16156 pub fn recursive_token(&self) -> Option<SyntaxToken> {
16157 support::token(&self.syntax, SyntaxKind::RECURSIVE_KW)
16158 }
16159 #[inline]
16160 pub fn with_token(&self) -> Option<SyntaxToken> {
16161 support::token(&self.syntax, SyntaxKind::WITH_KW)
16162 }
16163}
16164
16165#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16166pub struct WithData {
16167 pub(crate) syntax: SyntaxNode,
16168}
16169impl WithData {
16170 #[inline]
16171 pub fn data_token(&self) -> Option<SyntaxToken> {
16172 support::token(&self.syntax, SyntaxKind::DATA_KW)
16173 }
16174 #[inline]
16175 pub fn with_token(&self) -> Option<SyntaxToken> {
16176 support::token(&self.syntax, SyntaxKind::WITH_KW)
16177 }
16178}
16179
16180#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16181pub struct WithNoData {
16182 pub(crate) syntax: SyntaxNode,
16183}
16184impl WithNoData {
16185 #[inline]
16186 pub fn data_token(&self) -> Option<SyntaxToken> {
16187 support::token(&self.syntax, SyntaxKind::DATA_KW)
16188 }
16189 #[inline]
16190 pub fn no_token(&self) -> Option<SyntaxToken> {
16191 support::token(&self.syntax, SyntaxKind::NO_KW)
16192 }
16193 #[inline]
16194 pub fn with_token(&self) -> Option<SyntaxToken> {
16195 support::token(&self.syntax, SyntaxKind::WITH_KW)
16196 }
16197}
16198
16199#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16200pub struct WithOptions {
16201 pub(crate) syntax: SyntaxNode,
16202}
16203impl WithOptions {
16204 #[inline]
16205 pub fn options_token(&self) -> Option<SyntaxToken> {
16206 support::token(&self.syntax, SyntaxKind::OPTIONS_KW)
16207 }
16208 #[inline]
16209 pub fn with_token(&self) -> Option<SyntaxToken> {
16210 support::token(&self.syntax, SyntaxKind::WITH_KW)
16211 }
16212}
16213
16214#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16215pub struct WithParams {
16216 pub(crate) syntax: SyntaxNode,
16217}
16218impl WithParams {
16219 #[inline]
16220 pub fn attribute_list(&self) -> Option<AttributeList> {
16221 support::child(&self.syntax)
16222 }
16223 #[inline]
16224 pub fn with_token(&self) -> Option<SyntaxToken> {
16225 support::token(&self.syntax, SyntaxKind::WITH_KW)
16226 }
16227}
16228
16229#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16230pub struct WithTable {
16231 pub(crate) syntax: SyntaxNode,
16232}
16233impl WithTable {
16234 #[inline]
16235 pub fn column_list(&self) -> Option<ColumnList> {
16236 support::child(&self.syntax)
16237 }
16238 #[inline]
16239 pub fn materialized(&self) -> Option<Materialized> {
16240 support::child(&self.syntax)
16241 }
16242 #[inline]
16243 pub fn name(&self) -> Option<Name> {
16244 support::child(&self.syntax)
16245 }
16246 #[inline]
16247 pub fn not_materialized(&self) -> Option<NotMaterialized> {
16248 support::child(&self.syntax)
16249 }
16250 #[inline]
16251 pub fn query(&self) -> Option<WithQuery> {
16252 support::child(&self.syntax)
16253 }
16254 #[inline]
16255 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
16256 support::token(&self.syntax, SyntaxKind::L_PAREN)
16257 }
16258 #[inline]
16259 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
16260 support::token(&self.syntax, SyntaxKind::R_PAREN)
16261 }
16262 #[inline]
16263 pub fn as_token(&self) -> Option<SyntaxToken> {
16264 support::token(&self.syntax, SyntaxKind::AS_KW)
16265 }
16266}
16267
16268#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16269pub struct WithTimezone {
16270 pub(crate) syntax: SyntaxNode,
16271}
16272impl WithTimezone {
16273 #[inline]
16274 pub fn time_token(&self) -> Option<SyntaxToken> {
16275 support::token(&self.syntax, SyntaxKind::TIME_KW)
16276 }
16277 #[inline]
16278 pub fn with_token(&self) -> Option<SyntaxToken> {
16279 support::token(&self.syntax, SyntaxKind::WITH_KW)
16280 }
16281 #[inline]
16282 pub fn zone_token(&self) -> Option<SyntaxToken> {
16283 support::token(&self.syntax, SyntaxKind::ZONE_KW)
16284 }
16285}
16286
16287#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16288pub struct WithinClause {
16289 pub(crate) syntax: SyntaxNode,
16290}
16291impl WithinClause {
16292 #[inline]
16293 pub fn order_by_clause(&self) -> Option<OrderByClause> {
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 group_token(&self) -> Option<SyntaxToken> {
16306 support::token(&self.syntax, SyntaxKind::GROUP_KW)
16307 }
16308 #[inline]
16309 pub fn within_token(&self) -> Option<SyntaxToken> {
16310 support::token(&self.syntax, SyntaxKind::WITHIN_KW)
16311 }
16312}
16313
16314#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16315pub struct WithoutOids {
16316 pub(crate) syntax: SyntaxNode,
16317}
16318impl WithoutOids {
16319 #[inline]
16320 pub fn oids_token(&self) -> Option<SyntaxToken> {
16321 support::token(&self.syntax, SyntaxKind::OIDS_KW)
16322 }
16323 #[inline]
16324 pub fn without_token(&self) -> Option<SyntaxToken> {
16325 support::token(&self.syntax, SyntaxKind::WITHOUT_KW)
16326 }
16327}
16328
16329#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16330pub struct WithoutTimezone {
16331 pub(crate) syntax: SyntaxNode,
16332}
16333impl WithoutTimezone {
16334 #[inline]
16335 pub fn time_token(&self) -> Option<SyntaxToken> {
16336 support::token(&self.syntax, SyntaxKind::TIME_KW)
16337 }
16338 #[inline]
16339 pub fn without_token(&self) -> Option<SyntaxToken> {
16340 support::token(&self.syntax, SyntaxKind::WITHOUT_KW)
16341 }
16342 #[inline]
16343 pub fn zone_token(&self) -> Option<SyntaxToken> {
16344 support::token(&self.syntax, SyntaxKind::ZONE_KW)
16345 }
16346}
16347
16348#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16349pub struct XmlAttributeList {
16350 pub(crate) syntax: SyntaxNode,
16351}
16352impl XmlAttributeList {
16353 #[inline]
16354 pub fn expr_as_names(&self) -> AstChildren<ExprAsName> {
16355 support::children(&self.syntax)
16356 }
16357}
16358
16359#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16360pub struct XmlColumnOption {
16361 pub(crate) syntax: SyntaxNode,
16362}
16363impl XmlColumnOption {
16364 #[inline]
16365 pub fn expr(&self) -> Option<Expr> {
16366 support::child(&self.syntax)
16367 }
16368 #[inline]
16369 pub fn default_token(&self) -> Option<SyntaxToken> {
16370 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
16371 }
16372 #[inline]
16373 pub fn ident_token(&self) -> Option<SyntaxToken> {
16374 support::token(&self.syntax, SyntaxKind::IDENT)
16375 }
16376 #[inline]
16377 pub fn not_token(&self) -> Option<SyntaxToken> {
16378 support::token(&self.syntax, SyntaxKind::NOT_KW)
16379 }
16380 #[inline]
16381 pub fn null_token(&self) -> Option<SyntaxToken> {
16382 support::token(&self.syntax, SyntaxKind::NULL_KW)
16383 }
16384 #[inline]
16385 pub fn path_token(&self) -> Option<SyntaxToken> {
16386 support::token(&self.syntax, SyntaxKind::PATH_KW)
16387 }
16388}
16389
16390#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16391pub struct XmlColumnOptionList {
16392 pub(crate) syntax: SyntaxNode,
16393}
16394impl XmlColumnOptionList {
16395 #[inline]
16396 pub fn xml_column_option(&self) -> Option<XmlColumnOption> {
16397 support::child(&self.syntax)
16398 }
16399 #[inline]
16400 pub fn xml_column_options(&self) -> AstChildren<XmlColumnOption> {
16401 support::children(&self.syntax)
16402 }
16403}
16404
16405#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16406pub struct XmlElementFn {
16407 pub(crate) syntax: SyntaxNode,
16408}
16409impl XmlElementFn {
16410 #[inline]
16411 pub fn exprs(&self) -> AstChildren<Expr> {
16412 support::children(&self.syntax)
16413 }
16414 #[inline]
16415 pub fn name(&self) -> Option<Name> {
16416 support::child(&self.syntax)
16417 }
16418 #[inline]
16419 pub fn xml_attribute_list(&self) -> Option<XmlAttributeList> {
16420 support::child(&self.syntax)
16421 }
16422 #[inline]
16423 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
16424 support::token(&self.syntax, SyntaxKind::L_PAREN)
16425 }
16426 #[inline]
16427 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
16428 support::token(&self.syntax, SyntaxKind::R_PAREN)
16429 }
16430 #[inline]
16431 pub fn comma_token(&self) -> Option<SyntaxToken> {
16432 support::token(&self.syntax, SyntaxKind::COMMA)
16433 }
16434 #[inline]
16435 pub fn name_token(&self) -> Option<SyntaxToken> {
16436 support::token(&self.syntax, SyntaxKind::NAME_KW)
16437 }
16438 #[inline]
16439 pub fn xmlattributes_token(&self) -> Option<SyntaxToken> {
16440 support::token(&self.syntax, SyntaxKind::XMLATTRIBUTES_KW)
16441 }
16442 #[inline]
16443 pub fn xmlelement_token(&self) -> Option<SyntaxToken> {
16444 support::token(&self.syntax, SyntaxKind::XMLELEMENT_KW)
16445 }
16446}
16447
16448#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16449pub struct XmlExistsFn {
16450 pub(crate) syntax: SyntaxNode,
16451}
16452impl XmlExistsFn {
16453 #[inline]
16454 pub fn expr(&self) -> Option<Expr> {
16455 support::child(&self.syntax)
16456 }
16457 #[inline]
16458 pub fn xml_passing_mech(&self) -> Option<XmlPassingMech> {
16459 support::child(&self.syntax)
16460 }
16461 #[inline]
16462 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
16463 support::token(&self.syntax, SyntaxKind::L_PAREN)
16464 }
16465 #[inline]
16466 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
16467 support::token(&self.syntax, SyntaxKind::R_PAREN)
16468 }
16469 #[inline]
16470 pub fn passing_token(&self) -> Option<SyntaxToken> {
16471 support::token(&self.syntax, SyntaxKind::PASSING_KW)
16472 }
16473 #[inline]
16474 pub fn xmlexists_token(&self) -> Option<SyntaxToken> {
16475 support::token(&self.syntax, SyntaxKind::XMLEXISTS_KW)
16476 }
16477}
16478
16479#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16480pub struct XmlForestFn {
16481 pub(crate) syntax: SyntaxNode,
16482}
16483impl XmlForestFn {
16484 #[inline]
16485 pub fn xml_attribute_list(&self) -> Option<XmlAttributeList> {
16486 support::child(&self.syntax)
16487 }
16488 #[inline]
16489 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
16490 support::token(&self.syntax, SyntaxKind::L_PAREN)
16491 }
16492 #[inline]
16493 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
16494 support::token(&self.syntax, SyntaxKind::R_PAREN)
16495 }
16496 #[inline]
16497 pub fn xmlforest_token(&self) -> Option<SyntaxToken> {
16498 support::token(&self.syntax, SyntaxKind::XMLFOREST_KW)
16499 }
16500}
16501
16502#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16503pub struct XmlNamespace {
16504 pub(crate) syntax: SyntaxNode,
16505}
16506impl XmlNamespace {
16507 #[inline]
16508 pub fn expr(&self) -> Option<Expr> {
16509 support::child(&self.syntax)
16510 }
16511 #[inline]
16512 pub fn name(&self) -> Option<Name> {
16513 support::child(&self.syntax)
16514 }
16515 #[inline]
16516 pub fn as_token(&self) -> Option<SyntaxToken> {
16517 support::token(&self.syntax, SyntaxKind::AS_KW)
16518 }
16519 #[inline]
16520 pub fn default_token(&self) -> Option<SyntaxToken> {
16521 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
16522 }
16523}
16524
16525#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16526pub struct XmlNamespaceList {
16527 pub(crate) syntax: SyntaxNode,
16528}
16529impl XmlNamespaceList {
16530 #[inline]
16531 pub fn xml_namespaces(&self) -> AstChildren<XmlNamespace> {
16532 support::children(&self.syntax)
16533 }
16534 #[inline]
16535 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
16536 support::token(&self.syntax, SyntaxKind::L_PAREN)
16537 }
16538 #[inline]
16539 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
16540 support::token(&self.syntax, SyntaxKind::R_PAREN)
16541 }
16542}
16543
16544#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16545pub struct XmlParseFn {
16546 pub(crate) syntax: SyntaxNode,
16547}
16548impl XmlParseFn {
16549 #[inline]
16550 pub fn expr(&self) -> Option<Expr> {
16551 support::child(&self.syntax)
16552 }
16553 #[inline]
16554 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
16555 support::token(&self.syntax, SyntaxKind::L_PAREN)
16556 }
16557 #[inline]
16558 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
16559 support::token(&self.syntax, SyntaxKind::R_PAREN)
16560 }
16561 #[inline]
16562 pub fn content_token(&self) -> Option<SyntaxToken> {
16563 support::token(&self.syntax, SyntaxKind::CONTENT_KW)
16564 }
16565 #[inline]
16566 pub fn document_token(&self) -> Option<SyntaxToken> {
16567 support::token(&self.syntax, SyntaxKind::DOCUMENT_KW)
16568 }
16569 #[inline]
16570 pub fn preserve_token(&self) -> Option<SyntaxToken> {
16571 support::token(&self.syntax, SyntaxKind::PRESERVE_KW)
16572 }
16573 #[inline]
16574 pub fn strip_token(&self) -> Option<SyntaxToken> {
16575 support::token(&self.syntax, SyntaxKind::STRIP_KW)
16576 }
16577 #[inline]
16578 pub fn whitespace_token(&self) -> Option<SyntaxToken> {
16579 support::token(&self.syntax, SyntaxKind::WHITESPACE_KW)
16580 }
16581 #[inline]
16582 pub fn xmlparse_token(&self) -> Option<SyntaxToken> {
16583 support::token(&self.syntax, SyntaxKind::XMLPARSE_KW)
16584 }
16585}
16586
16587#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16588pub struct XmlPassingMech {
16589 pub(crate) syntax: SyntaxNode,
16590}
16591impl XmlPassingMech {
16592 #[inline]
16593 pub fn by_token(&self) -> Option<SyntaxToken> {
16594 support::token(&self.syntax, SyntaxKind::BY_KW)
16595 }
16596 #[inline]
16597 pub fn ref_token(&self) -> Option<SyntaxToken> {
16598 support::token(&self.syntax, SyntaxKind::REF_KW)
16599 }
16600 #[inline]
16601 pub fn value_token(&self) -> Option<SyntaxToken> {
16602 support::token(&self.syntax, SyntaxKind::VALUE_KW)
16603 }
16604}
16605
16606#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16607pub struct XmlPiFn {
16608 pub(crate) syntax: SyntaxNode,
16609}
16610impl XmlPiFn {
16611 #[inline]
16612 pub fn expr(&self) -> Option<Expr> {
16613 support::child(&self.syntax)
16614 }
16615 #[inline]
16616 pub fn name(&self) -> Option<Name> {
16617 support::child(&self.syntax)
16618 }
16619 #[inline]
16620 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
16621 support::token(&self.syntax, SyntaxKind::L_PAREN)
16622 }
16623 #[inline]
16624 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
16625 support::token(&self.syntax, SyntaxKind::R_PAREN)
16626 }
16627 #[inline]
16628 pub fn comma_token(&self) -> Option<SyntaxToken> {
16629 support::token(&self.syntax, SyntaxKind::COMMA)
16630 }
16631 #[inline]
16632 pub fn name_token(&self) -> Option<SyntaxToken> {
16633 support::token(&self.syntax, SyntaxKind::NAME_KW)
16634 }
16635 #[inline]
16636 pub fn xmlpi_token(&self) -> Option<SyntaxToken> {
16637 support::token(&self.syntax, SyntaxKind::XMLPI_KW)
16638 }
16639}
16640
16641#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16642pub struct XmlRootFn {
16643 pub(crate) syntax: SyntaxNode,
16644}
16645impl XmlRootFn {
16646 #[inline]
16647 pub fn expr(&self) -> Option<Expr> {
16648 support::child(&self.syntax)
16649 }
16650 #[inline]
16651 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
16652 support::token(&self.syntax, SyntaxKind::L_PAREN)
16653 }
16654 #[inline]
16655 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
16656 support::token(&self.syntax, SyntaxKind::R_PAREN)
16657 }
16658 #[inline]
16659 pub fn comma_token(&self) -> Option<SyntaxToken> {
16660 support::token(&self.syntax, SyntaxKind::COMMA)
16661 }
16662 #[inline]
16663 pub fn no_token(&self) -> Option<SyntaxToken> {
16664 support::token(&self.syntax, SyntaxKind::NO_KW)
16665 }
16666 #[inline]
16667 pub fn standalone_token(&self) -> Option<SyntaxToken> {
16668 support::token(&self.syntax, SyntaxKind::STANDALONE_KW)
16669 }
16670 #[inline]
16671 pub fn value_token(&self) -> Option<SyntaxToken> {
16672 support::token(&self.syntax, SyntaxKind::VALUE_KW)
16673 }
16674 #[inline]
16675 pub fn version_token(&self) -> Option<SyntaxToken> {
16676 support::token(&self.syntax, SyntaxKind::VERSION_KW)
16677 }
16678 #[inline]
16679 pub fn xmlroot_token(&self) -> Option<SyntaxToken> {
16680 support::token(&self.syntax, SyntaxKind::XMLROOT_KW)
16681 }
16682 #[inline]
16683 pub fn yes_token(&self) -> Option<SyntaxToken> {
16684 support::token(&self.syntax, SyntaxKind::YES_KW)
16685 }
16686}
16687
16688#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16689pub struct XmlRowPassingClause {
16690 pub(crate) syntax: SyntaxNode,
16691}
16692impl XmlRowPassingClause {
16693 #[inline]
16694 pub fn expr(&self) -> Option<Expr> {
16695 support::child(&self.syntax)
16696 }
16697 #[inline]
16698 pub fn xml_passing_mech(&self) -> Option<XmlPassingMech> {
16699 support::child(&self.syntax)
16700 }
16701 #[inline]
16702 pub fn passing_token(&self) -> Option<SyntaxToken> {
16703 support::token(&self.syntax, SyntaxKind::PASSING_KW)
16704 }
16705}
16706
16707#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16708pub struct XmlSerializeFn {
16709 pub(crate) syntax: SyntaxNode,
16710}
16711impl XmlSerializeFn {
16712 #[inline]
16713 pub fn expr(&self) -> Option<Expr> {
16714 support::child(&self.syntax)
16715 }
16716 #[inline]
16717 pub fn ty(&self) -> Option<Type> {
16718 support::child(&self.syntax)
16719 }
16720 #[inline]
16721 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
16722 support::token(&self.syntax, SyntaxKind::L_PAREN)
16723 }
16724 #[inline]
16725 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
16726 support::token(&self.syntax, SyntaxKind::R_PAREN)
16727 }
16728 #[inline]
16729 pub fn as_token(&self) -> Option<SyntaxToken> {
16730 support::token(&self.syntax, SyntaxKind::AS_KW)
16731 }
16732 #[inline]
16733 pub fn content_token(&self) -> Option<SyntaxToken> {
16734 support::token(&self.syntax, SyntaxKind::CONTENT_KW)
16735 }
16736 #[inline]
16737 pub fn document_token(&self) -> Option<SyntaxToken> {
16738 support::token(&self.syntax, SyntaxKind::DOCUMENT_KW)
16739 }
16740 #[inline]
16741 pub fn ident_token(&self) -> Option<SyntaxToken> {
16742 support::token(&self.syntax, SyntaxKind::IDENT)
16743 }
16744 #[inline]
16745 pub fn no_token(&self) -> Option<SyntaxToken> {
16746 support::token(&self.syntax, SyntaxKind::NO_KW)
16747 }
16748 #[inline]
16749 pub fn xmlserialize_token(&self) -> Option<SyntaxToken> {
16750 support::token(&self.syntax, SyntaxKind::XMLSERIALIZE_KW)
16751 }
16752}
16753
16754#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16755pub struct XmlTable {
16756 pub(crate) syntax: SyntaxNode,
16757}
16758impl XmlTable {
16759 #[inline]
16760 pub fn xml_namespace_list(&self) -> Option<XmlNamespaceList> {
16761 support::child(&self.syntax)
16762 }
16763 #[inline]
16764 pub fn xml_row_passing_clause(&self) -> Option<XmlRowPassingClause> {
16765 support::child(&self.syntax)
16766 }
16767 #[inline]
16768 pub fn xml_table_column_list(&self) -> Option<XmlTableColumnList> {
16769 support::child(&self.syntax)
16770 }
16771 #[inline]
16772 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
16773 support::token(&self.syntax, SyntaxKind::L_PAREN)
16774 }
16775 #[inline]
16776 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
16777 support::token(&self.syntax, SyntaxKind::R_PAREN)
16778 }
16779 #[inline]
16780 pub fn comma_token(&self) -> Option<SyntaxToken> {
16781 support::token(&self.syntax, SyntaxKind::COMMA)
16782 }
16783 #[inline]
16784 pub fn xmlnamespaces_token(&self) -> Option<SyntaxToken> {
16785 support::token(&self.syntax, SyntaxKind::XMLNAMESPACES_KW)
16786 }
16787 #[inline]
16788 pub fn xmltable_token(&self) -> Option<SyntaxToken> {
16789 support::token(&self.syntax, SyntaxKind::XMLTABLE_KW)
16790 }
16791}
16792
16793#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16794pub struct XmlTableColumn {
16795 pub(crate) syntax: SyntaxNode,
16796}
16797impl XmlTableColumn {
16798 #[inline]
16799 pub fn name(&self) -> Option<Name> {
16800 support::child(&self.syntax)
16801 }
16802 #[inline]
16803 pub fn ty(&self) -> Option<Type> {
16804 support::child(&self.syntax)
16805 }
16806 #[inline]
16807 pub fn xml_column_option_list(&self) -> Option<XmlColumnOptionList> {
16808 support::child(&self.syntax)
16809 }
16810 #[inline]
16811 pub fn for_token(&self) -> Option<SyntaxToken> {
16812 support::token(&self.syntax, SyntaxKind::FOR_KW)
16813 }
16814 #[inline]
16815 pub fn ordinality_token(&self) -> Option<SyntaxToken> {
16816 support::token(&self.syntax, SyntaxKind::ORDINALITY_KW)
16817 }
16818}
16819
16820#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16821pub struct XmlTableColumnList {
16822 pub(crate) syntax: SyntaxNode,
16823}
16824impl XmlTableColumnList {
16825 #[inline]
16826 pub fn xml_table_columns(&self) -> AstChildren<XmlTableColumn> {
16827 support::children(&self.syntax)
16828 }
16829}
16830
16831#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16832pub enum AlterColumnOption {
16833 AddGenerated(AddGenerated),
16834 DropDefault(DropDefault),
16835 DropExpression(DropExpression),
16836 DropIdentity(DropIdentity),
16837 DropNotNull(DropNotNull),
16838 Inherit(Inherit),
16839 NoInherit(NoInherit),
16840 ResetOptions(ResetOptions),
16841 Restart(Restart),
16842 SetCompression(SetCompression),
16843 SetDefault(SetDefault),
16844 SetExpression(SetExpression),
16845 SetGenerated(SetGenerated),
16846 SetGeneratedOptions(SetGeneratedOptions),
16847 SetNotNull(SetNotNull),
16848 SetOptions(SetOptions),
16849 SetOptionsList(SetOptionsList),
16850 SetSequenceOption(SetSequenceOption),
16851 SetStatistics(SetStatistics),
16852 SetStorage(SetStorage),
16853 SetType(SetType),
16854}
16855
16856#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16857pub enum AlterDomainAction {
16858 AddConstraint(AddConstraint),
16859 DropConstraint(DropConstraint),
16860 DropDefault(DropDefault),
16861 DropNotNull(DropNotNull),
16862 OwnerTo(OwnerTo),
16863 RenameConstraint(RenameConstraint),
16864 RenameTo(RenameTo),
16865 SetDefault(SetDefault),
16866 SetNotNull(SetNotNull),
16867 SetSchema(SetSchema),
16868 ValidateConstraint(ValidateConstraint),
16869}
16870
16871#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16872pub enum AlterIndexAction {
16873 AlterSetStatistics(AlterSetStatistics),
16874 AttachPartition(AttachPartition),
16875 DependsOnExtension(DependsOnExtension),
16876 NoDependsOnExtension(NoDependsOnExtension),
16877 RenameTo(RenameTo),
16878 ResetOptions(ResetOptions),
16879 SetOptions(SetOptions),
16880 SetTablespace(SetTablespace),
16881}
16882
16883#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16884pub enum AlterMaterializedViewAction {
16885 DependsOnExtension(DependsOnExtension),
16886 NoDependsOnExtension(NoDependsOnExtension),
16887 RenameColumn(RenameColumn),
16888 RenameTo(RenameTo),
16889 SetSchema(SetSchema),
16890 AlterTableAction(AlterTableAction),
16891}
16892
16893#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16894pub enum AlterTableAction {
16895 AddColumn(AddColumn),
16896 AddConstraint(AddConstraint),
16897 AlterColumn(AlterColumn),
16898 AlterConstraint(AlterConstraint),
16899 AttachPartition(AttachPartition),
16900 ClusterOn(ClusterOn),
16901 DetachPartition(DetachPartition),
16902 DisableRls(DisableRls),
16903 DisableRule(DisableRule),
16904 DisableTrigger(DisableTrigger),
16905 DropColumn(DropColumn),
16906 DropConstraint(DropConstraint),
16907 EnableAlwaysRule(EnableAlwaysRule),
16908 EnableAlwaysTrigger(EnableAlwaysTrigger),
16909 EnableReplicaRule(EnableReplicaRule),
16910 EnableReplicaTrigger(EnableReplicaTrigger),
16911 EnableRls(EnableRls),
16912 EnableRule(EnableRule),
16913 EnableTrigger(EnableTrigger),
16914 ForceRls(ForceRls),
16915 InheritTable(InheritTable),
16916 MergePartitions(MergePartitions),
16917 NoForceRls(NoForceRls),
16918 NoInheritTable(NoInheritTable),
16919 NotOf(NotOf),
16920 OfType(OfType),
16921 OptionItemList(OptionItemList),
16922 OwnerTo(OwnerTo),
16923 RenameColumn(RenameColumn),
16924 RenameConstraint(RenameConstraint),
16925 RenameTo(RenameTo),
16926 ReplicaIdentity(ReplicaIdentity),
16927 ResetOptions(ResetOptions),
16928 SetAccessMethod(SetAccessMethod),
16929 SetLogged(SetLogged),
16930 SetOptions(SetOptions),
16931 SetSchema(SetSchema),
16932 SetTablespace(SetTablespace),
16933 SetUnlogged(SetUnlogged),
16934 SetWithoutCluster(SetWithoutCluster),
16935 SetWithoutOids(SetWithoutOids),
16936 SplitPartition(SplitPartition),
16937 ValidateConstraint(ValidateConstraint),
16938}
16939
16940#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16941pub enum ColumnConstraint {
16942 CheckConstraint(CheckConstraint),
16943 DefaultConstraint(DefaultConstraint),
16944 ExcludeConstraint(ExcludeConstraint),
16945 NotNullConstraint(NotNullConstraint),
16946 PrimaryKeyConstraint(PrimaryKeyConstraint),
16947 ReferencesConstraint(ReferencesConstraint),
16948 UniqueConstraint(UniqueConstraint),
16949}
16950
16951#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16952pub enum ConfigValue {
16953 Literal(Literal),
16954 NameRef(NameRef),
16955}
16956
16957#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16958pub enum ConflictAction {
16959 ConflictDoNothing(ConflictDoNothing),
16960 ConflictDoUpdateSet(ConflictDoUpdateSet),
16961}
16962
16963#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16964pub enum ConflictTarget {
16965 ConflictOnConstraint(ConflictOnConstraint),
16966 ConflictOnIndex(ConflictOnIndex),
16967}
16968
16969#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16970pub enum Constraint {
16971 CheckConstraint(CheckConstraint),
16972 DefaultConstraint(DefaultConstraint),
16973 ForeignKeyConstraint(ForeignKeyConstraint),
16974 GeneratedConstraint(GeneratedConstraint),
16975 NotNullConstraint(NotNullConstraint),
16976 NullConstraint(NullConstraint),
16977 PrimaryKeyConstraint(PrimaryKeyConstraint),
16978 ReferencesConstraint(ReferencesConstraint),
16979 UniqueConstraint(UniqueConstraint),
16980}
16981
16982#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16983pub enum ExplainStmt {
16984 CompoundSelect(CompoundSelect),
16985 CreateMaterializedView(CreateMaterializedView),
16986 CreateTableAs(CreateTableAs),
16987 Declare(Declare),
16988 Delete(Delete),
16989 Execute(Execute),
16990 Insert(Insert),
16991 Merge(Merge),
16992 ParenSelect(ParenSelect),
16993 Select(Select),
16994 SelectInto(SelectInto),
16995 Table(Table),
16996 Update(Update),
16997 Values(Values),
16998}
16999
17000#[derive(Debug, Clone, PartialEq, Eq, Hash)]
17001pub enum Expr {
17002 ArrayExpr(ArrayExpr),
17003 BetweenExpr(BetweenExpr),
17004 BinExpr(BinExpr),
17005 CallExpr(CallExpr),
17006 CaseExpr(CaseExpr),
17007 CastExpr(CastExpr),
17008 FieldExpr(FieldExpr),
17009 IndexExpr(IndexExpr),
17010 Literal(Literal),
17011 NameRef(NameRef),
17012 ParenExpr(ParenExpr),
17013 PostfixExpr(PostfixExpr),
17014 PrefixExpr(PrefixExpr),
17015 SliceExpr(SliceExpr),
17016 TupleExpr(TupleExpr),
17017}
17018
17019#[derive(Debug, Clone, PartialEq, Eq, Hash)]
17020pub enum FuncOption {
17021 AsFuncOption(AsFuncOption),
17022 BeginFuncOptionList(BeginFuncOptionList),
17023 CostFuncOption(CostFuncOption),
17024 LanguageFuncOption(LanguageFuncOption),
17025 LeakproofFuncOption(LeakproofFuncOption),
17026 ParallelFuncOption(ParallelFuncOption),
17027 ResetFuncOption(ResetFuncOption),
17028 ReturnFuncOption(ReturnFuncOption),
17029 RowsFuncOption(RowsFuncOption),
17030 SecurityFuncOption(SecurityFuncOption),
17031 SetFuncOption(SetFuncOption),
17032 StrictFuncOption(StrictFuncOption),
17033 SupportFuncOption(SupportFuncOption),
17034 TransformFuncOption(TransformFuncOption),
17035 VolatilityFuncOption(VolatilityFuncOption),
17036 WindowFuncOption(WindowFuncOption),
17037}
17038
17039#[derive(Debug, Clone, PartialEq, Eq, Hash)]
17040pub enum GroupBy {
17041 GroupingCube(GroupingCube),
17042 GroupingExpr(GroupingExpr),
17043 GroupingRollup(GroupingRollup),
17044 GroupingSets(GroupingSets),
17045}
17046
17047#[derive(Debug, Clone, PartialEq, Eq, Hash)]
17048pub enum JoinType {
17049 JoinCross(JoinCross),
17050 JoinFull(JoinFull),
17051 JoinInner(JoinInner),
17052 JoinLeft(JoinLeft),
17053 JoinRight(JoinRight),
17054}
17055
17056#[derive(Debug, Clone, PartialEq, Eq, Hash)]
17057pub enum JsonBehavior {
17058 JsonBehaviorDefault(JsonBehaviorDefault),
17059 JsonBehaviorEmptyArray(JsonBehaviorEmptyArray),
17060 JsonBehaviorEmptyObject(JsonBehaviorEmptyObject),
17061 JsonBehaviorError(JsonBehaviorError),
17062 JsonBehaviorFalse(JsonBehaviorFalse),
17063 JsonBehaviorNull(JsonBehaviorNull),
17064 JsonBehaviorTrue(JsonBehaviorTrue),
17065 JsonBehaviorUnknown(JsonBehaviorUnknown),
17066}
17067
17068#[derive(Debug, Clone, PartialEq, Eq, Hash)]
17069pub enum MatchType {
17070 MatchFull(MatchFull),
17071 MatchPartial(MatchPartial),
17072 MatchSimple(MatchSimple),
17073}
17074
17075#[derive(Debug, Clone, PartialEq, Eq, Hash)]
17076pub enum MergeAction {
17077 MergeDelete(MergeDelete),
17078 MergeDoNothing(MergeDoNothing),
17079 MergeInsert(MergeInsert),
17080 MergeUpdate(MergeUpdate),
17081}
17082
17083#[derive(Debug, Clone, PartialEq, Eq, Hash)]
17084pub enum MergeWhenClause {
17085 MergeWhenMatched(MergeWhenMatched),
17086 MergeWhenNotMatchedSource(MergeWhenNotMatchedSource),
17087 MergeWhenNotMatchedTarget(MergeWhenNotMatchedTarget),
17088}
17089
17090#[derive(Debug, Clone, PartialEq, Eq, Hash)]
17091pub enum OnCommitAction {
17092 DeleteRows(DeleteRows),
17093 Drop(Drop),
17094 PreserveRows(PreserveRows),
17095}
17096
17097#[derive(Debug, Clone, PartialEq, Eq, Hash)]
17098pub enum ParamMode {
17099 ParamIn(ParamIn),
17100 ParamInOut(ParamInOut),
17101 ParamOut(ParamOut),
17102 ParamVariadic(ParamVariadic),
17103}
17104
17105#[derive(Debug, Clone, PartialEq, Eq, Hash)]
17106pub enum PartitionType {
17107 PartitionDefault(PartitionDefault),
17108 PartitionForValuesFrom(PartitionForValuesFrom),
17109 PartitionForValuesIn(PartitionForValuesIn),
17110 PartitionForValuesWith(PartitionForValuesWith),
17111}
17112
17113#[derive(Debug, Clone, PartialEq, Eq, Hash)]
17114pub enum PreparableStmt {
17115 CompoundSelect(CompoundSelect),
17116 Delete(Delete),
17117 Insert(Insert),
17118 Merge(Merge),
17119 Select(Select),
17120 SelectInto(SelectInto),
17121 Table(Table),
17122 Update(Update),
17123 Values(Values),
17124}
17125
17126#[derive(Debug, Clone, PartialEq, Eq, Hash)]
17127pub enum RefAction {
17128 Cascade(Cascade),
17129 NoAction(NoAction),
17130 Restrict(Restrict),
17131 SetDefaultColumns(SetDefaultColumns),
17132 SetNullColumns(SetNullColumns),
17133}
17134
17135#[derive(Debug, Clone, PartialEq, Eq, Hash)]
17136pub enum SchemaElement {
17137 CreateIndex(CreateIndex),
17138 CreateSequence(CreateSequence),
17139 CreateTable(CreateTable),
17140 CreateTrigger(CreateTrigger),
17141 CreateView(CreateView),
17142 Grant(Grant),
17143}
17144
17145#[derive(Debug, Clone, PartialEq, Eq, Hash)]
17146pub enum SelectVariant {
17147 CompoundSelect(CompoundSelect),
17148 ParenSelect(ParenSelect),
17149 Select(Select),
17150 SelectInto(SelectInto),
17151 Table(Table),
17152 Values(Values),
17153}
17154
17155#[derive(Debug, Clone, PartialEq, Eq, Hash)]
17156pub enum SetColumn {
17157 SetMultipleColumns(SetMultipleColumns),
17158 SetSingleColumn(SetSingleColumn),
17159}
17160
17161#[derive(Debug, Clone, PartialEq, Eq, Hash)]
17162pub enum Stmt {
17163 AlterAggregate(AlterAggregate),
17164 AlterCollation(AlterCollation),
17165 AlterConversion(AlterConversion),
17166 AlterDatabase(AlterDatabase),
17167 AlterDefaultPrivileges(AlterDefaultPrivileges),
17168 AlterDomain(AlterDomain),
17169 AlterEventTrigger(AlterEventTrigger),
17170 AlterExtension(AlterExtension),
17171 AlterForeignDataWrapper(AlterForeignDataWrapper),
17172 AlterForeignTable(AlterForeignTable),
17173 AlterFunction(AlterFunction),
17174 AlterGroup(AlterGroup),
17175 AlterIndex(AlterIndex),
17176 AlterLanguage(AlterLanguage),
17177 AlterLargeObject(AlterLargeObject),
17178 AlterMaterializedView(AlterMaterializedView),
17179 AlterOperator(AlterOperator),
17180 AlterOperatorClass(AlterOperatorClass),
17181 AlterOperatorFamily(AlterOperatorFamily),
17182 AlterPolicy(AlterPolicy),
17183 AlterProcedure(AlterProcedure),
17184 AlterPublication(AlterPublication),
17185 AlterRole(AlterRole),
17186 AlterRoutine(AlterRoutine),
17187 AlterRule(AlterRule),
17188 AlterSchema(AlterSchema),
17189 AlterSequence(AlterSequence),
17190 AlterServer(AlterServer),
17191 AlterStatistics(AlterStatistics),
17192 AlterSubscription(AlterSubscription),
17193 AlterSystem(AlterSystem),
17194 AlterTable(AlterTable),
17195 AlterTablespace(AlterTablespace),
17196 AlterTextSearchConfiguration(AlterTextSearchConfiguration),
17197 AlterTextSearchDictionary(AlterTextSearchDictionary),
17198 AlterTextSearchParser(AlterTextSearchParser),
17199 AlterTextSearchTemplate(AlterTextSearchTemplate),
17200 AlterTrigger(AlterTrigger),
17201 AlterType(AlterType),
17202 AlterUser(AlterUser),
17203 AlterUserMapping(AlterUserMapping),
17204 AlterView(AlterView),
17205 Analyze(Analyze),
17206 Begin(Begin),
17207 Call(Call),
17208 Checkpoint(Checkpoint),
17209 Close(Close),
17210 Cluster(Cluster),
17211 CommentOn(CommentOn),
17212 Commit(Commit),
17213 Copy(Copy),
17214 CreateAccessMethod(CreateAccessMethod),
17215 CreateAggregate(CreateAggregate),
17216 CreateCast(CreateCast),
17217 CreateCollation(CreateCollation),
17218 CreateConversion(CreateConversion),
17219 CreateDatabase(CreateDatabase),
17220 CreateDomain(CreateDomain),
17221 CreateEventTrigger(CreateEventTrigger),
17222 CreateExtension(CreateExtension),
17223 CreateForeignDataWrapper(CreateForeignDataWrapper),
17224 CreateForeignTable(CreateForeignTable),
17225 CreateFunction(CreateFunction),
17226 CreateGroup(CreateGroup),
17227 CreateIndex(CreateIndex),
17228 CreateLanguage(CreateLanguage),
17229 CreateMaterializedView(CreateMaterializedView),
17230 CreateOperator(CreateOperator),
17231 CreateOperatorClass(CreateOperatorClass),
17232 CreateOperatorFamily(CreateOperatorFamily),
17233 CreatePolicy(CreatePolicy),
17234 CreateProcedure(CreateProcedure),
17235 CreatePublication(CreatePublication),
17236 CreateRole(CreateRole),
17237 CreateRule(CreateRule),
17238 CreateSchema(CreateSchema),
17239 CreateSequence(CreateSequence),
17240 CreateServer(CreateServer),
17241 CreateStatistics(CreateStatistics),
17242 CreateSubscription(CreateSubscription),
17243 CreateTable(CreateTable),
17244 CreateTableAs(CreateTableAs),
17245 CreateTablespace(CreateTablespace),
17246 CreateTextSearchConfiguration(CreateTextSearchConfiguration),
17247 CreateTextSearchDictionary(CreateTextSearchDictionary),
17248 CreateTextSearchParser(CreateTextSearchParser),
17249 CreateTextSearchTemplate(CreateTextSearchTemplate),
17250 CreateTransform(CreateTransform),
17251 CreateTrigger(CreateTrigger),
17252 CreateType(CreateType),
17253 CreateUser(CreateUser),
17254 CreateUserMapping(CreateUserMapping),
17255 CreateView(CreateView),
17256 Deallocate(Deallocate),
17257 Declare(Declare),
17258 Delete(Delete),
17259 Discard(Discard),
17260 Do(Do),
17261 DropAccessMethod(DropAccessMethod),
17262 DropAggregate(DropAggregate),
17263 DropCast(DropCast),
17264 DropCollation(DropCollation),
17265 DropConversion(DropConversion),
17266 DropDatabase(DropDatabase),
17267 DropDomain(DropDomain),
17268 DropEventTrigger(DropEventTrigger),
17269 DropExtension(DropExtension),
17270 DropForeignDataWrapper(DropForeignDataWrapper),
17271 DropForeignTable(DropForeignTable),
17272 DropFunction(DropFunction),
17273 DropGroup(DropGroup),
17274 DropIndex(DropIndex),
17275 DropLanguage(DropLanguage),
17276 DropMaterializedView(DropMaterializedView),
17277 DropOperator(DropOperator),
17278 DropOperatorClass(DropOperatorClass),
17279 DropOperatorFamily(DropOperatorFamily),
17280 DropOwned(DropOwned),
17281 DropPolicy(DropPolicy),
17282 DropProcedure(DropProcedure),
17283 DropPublication(DropPublication),
17284 DropRole(DropRole),
17285 DropRoutine(DropRoutine),
17286 DropRule(DropRule),
17287 DropSchema(DropSchema),
17288 DropSequence(DropSequence),
17289 DropServer(DropServer),
17290 DropStatistics(DropStatistics),
17291 DropSubscription(DropSubscription),
17292 DropTable(DropTable),
17293 DropTablespace(DropTablespace),
17294 DropTextSearchConfig(DropTextSearchConfig),
17295 DropTextSearchDict(DropTextSearchDict),
17296 DropTextSearchParser(DropTextSearchParser),
17297 DropTextSearchTemplate(DropTextSearchTemplate),
17298 DropTransform(DropTransform),
17299 DropTrigger(DropTrigger),
17300 DropType(DropType),
17301 DropUser(DropUser),
17302 DropUserMapping(DropUserMapping),
17303 DropView(DropView),
17304 Execute(Execute),
17305 Explain(Explain),
17306 Fetch(Fetch),
17307 Grant(Grant),
17308 ImportForeignSchema(ImportForeignSchema),
17309 Insert(Insert),
17310 Listen(Listen),
17311 Load(Load),
17312 Lock(Lock),
17313 Merge(Merge),
17314 Move(Move),
17315 Notify(Notify),
17316 ParenSelect(ParenSelect),
17317 Prepare(Prepare),
17318 PrepareTransaction(PrepareTransaction),
17319 Reassign(Reassign),
17320 Refresh(Refresh),
17321 Reindex(Reindex),
17322 ReleaseSavepoint(ReleaseSavepoint),
17323 Reset(Reset),
17324 ResetSessionAuth(ResetSessionAuth),
17325 Revoke(Revoke),
17326 Rollback(Rollback),
17327 Savepoint(Savepoint),
17328 SecurityLabel(SecurityLabel),
17329 Select(Select),
17330 SelectInto(SelectInto),
17331 Set(Set),
17332 SetConstraints(SetConstraints),
17333 SetRole(SetRole),
17334 SetSessionAuth(SetSessionAuth),
17335 SetTransaction(SetTransaction),
17336 Show(Show),
17337 Table(Table),
17338 Truncate(Truncate),
17339 Unlisten(Unlisten),
17340 Update(Update),
17341 Vacuum(Vacuum),
17342 Values(Values),
17343}
17344
17345#[derive(Debug, Clone, PartialEq, Eq, Hash)]
17346pub enum TableArg {
17347 Column(Column),
17348 LikeClause(LikeClause),
17349 TableConstraint(TableConstraint),
17350}
17351
17352#[derive(Debug, Clone, PartialEq, Eq, Hash)]
17353pub enum TableConstraint {
17354 CheckConstraint(CheckConstraint),
17355 ExcludeConstraint(ExcludeConstraint),
17356 ForeignKeyConstraint(ForeignKeyConstraint),
17357 PrimaryKeyConstraint(PrimaryKeyConstraint),
17358 UniqueConstraint(UniqueConstraint),
17359}
17360
17361#[derive(Debug, Clone, PartialEq, Eq, Hash)]
17362pub enum Timezone {
17363 WithTimezone(WithTimezone),
17364 WithoutTimezone(WithoutTimezone),
17365}
17366
17367#[derive(Debug, Clone, PartialEq, Eq, Hash)]
17368pub enum TransactionMode {
17369 Deferrable(Deferrable),
17370 NotDeferrable(NotDeferrable),
17371 ReadCommitted(ReadCommitted),
17372 ReadOnly(ReadOnly),
17373 ReadUncommitted(ReadUncommitted),
17374 ReadWrite(ReadWrite),
17375 RepeatableRead(RepeatableRead),
17376 Serializable(Serializable),
17377}
17378
17379#[derive(Debug, Clone, PartialEq, Eq, Hash)]
17380pub enum Type {
17381 ArrayType(ArrayType),
17382 BitType(BitType),
17383 CharType(CharType),
17384 DoubleType(DoubleType),
17385 ExprType(ExprType),
17386 IntervalType(IntervalType),
17387 PathType(PathType),
17388 PercentType(PercentType),
17389 TimeType(TimeType),
17390}
17391
17392#[derive(Debug, Clone, PartialEq, Eq, Hash)]
17393pub enum WithQuery {
17394 CompoundSelect(CompoundSelect),
17395 Delete(Delete),
17396 Insert(Insert),
17397 Merge(Merge),
17398 ParenSelect(ParenSelect),
17399 Select(Select),
17400 Table(Table),
17401 Update(Update),
17402 Values(Values),
17403}
17404impl AstNode for AddColumn {
17405 #[inline]
17406 fn can_cast(kind: SyntaxKind) -> bool {
17407 kind == SyntaxKind::ADD_COLUMN
17408 }
17409 #[inline]
17410 fn cast(syntax: SyntaxNode) -> Option<Self> {
17411 if Self::can_cast(syntax.kind()) {
17412 Some(Self { syntax })
17413 } else {
17414 None
17415 }
17416 }
17417 #[inline]
17418 fn syntax(&self) -> &SyntaxNode {
17419 &self.syntax
17420 }
17421}
17422impl AstNode for AddConstraint {
17423 #[inline]
17424 fn can_cast(kind: SyntaxKind) -> bool {
17425 kind == SyntaxKind::ADD_CONSTRAINT
17426 }
17427 #[inline]
17428 fn cast(syntax: SyntaxNode) -> Option<Self> {
17429 if Self::can_cast(syntax.kind()) {
17430 Some(Self { syntax })
17431 } else {
17432 None
17433 }
17434 }
17435 #[inline]
17436 fn syntax(&self) -> &SyntaxNode {
17437 &self.syntax
17438 }
17439}
17440impl AstNode for AddGenerated {
17441 #[inline]
17442 fn can_cast(kind: SyntaxKind) -> bool {
17443 kind == SyntaxKind::ADD_GENERATED
17444 }
17445 #[inline]
17446 fn cast(syntax: SyntaxNode) -> Option<Self> {
17447 if Self::can_cast(syntax.kind()) {
17448 Some(Self { syntax })
17449 } else {
17450 None
17451 }
17452 }
17453 #[inline]
17454 fn syntax(&self) -> &SyntaxNode {
17455 &self.syntax
17456 }
17457}
17458impl AstNode for AddOpClassOptions {
17459 #[inline]
17460 fn can_cast(kind: SyntaxKind) -> bool {
17461 kind == SyntaxKind::ADD_OP_CLASS_OPTIONS
17462 }
17463 #[inline]
17464 fn cast(syntax: SyntaxNode) -> Option<Self> {
17465 if Self::can_cast(syntax.kind()) {
17466 Some(Self { syntax })
17467 } else {
17468 None
17469 }
17470 }
17471 #[inline]
17472 fn syntax(&self) -> &SyntaxNode {
17473 &self.syntax
17474 }
17475}
17476impl AstNode for Aggregate {
17477 #[inline]
17478 fn can_cast(kind: SyntaxKind) -> bool {
17479 kind == SyntaxKind::AGGREGATE
17480 }
17481 #[inline]
17482 fn cast(syntax: SyntaxNode) -> Option<Self> {
17483 if Self::can_cast(syntax.kind()) {
17484 Some(Self { syntax })
17485 } else {
17486 None
17487 }
17488 }
17489 #[inline]
17490 fn syntax(&self) -> &SyntaxNode {
17491 &self.syntax
17492 }
17493}
17494impl AstNode for Alias {
17495 #[inline]
17496 fn can_cast(kind: SyntaxKind) -> bool {
17497 kind == SyntaxKind::ALIAS
17498 }
17499 #[inline]
17500 fn cast(syntax: SyntaxNode) -> Option<Self> {
17501 if Self::can_cast(syntax.kind()) {
17502 Some(Self { syntax })
17503 } else {
17504 None
17505 }
17506 }
17507 #[inline]
17508 fn syntax(&self) -> &SyntaxNode {
17509 &self.syntax
17510 }
17511}
17512impl AstNode for AllFn {
17513 #[inline]
17514 fn can_cast(kind: SyntaxKind) -> bool {
17515 kind == SyntaxKind::ALL_FN
17516 }
17517 #[inline]
17518 fn cast(syntax: SyntaxNode) -> Option<Self> {
17519 if Self::can_cast(syntax.kind()) {
17520 Some(Self { syntax })
17521 } else {
17522 None
17523 }
17524 }
17525 #[inline]
17526 fn syntax(&self) -> &SyntaxNode {
17527 &self.syntax
17528 }
17529}
17530impl AstNode for AlterAggregate {
17531 #[inline]
17532 fn can_cast(kind: SyntaxKind) -> bool {
17533 kind == SyntaxKind::ALTER_AGGREGATE
17534 }
17535 #[inline]
17536 fn cast(syntax: SyntaxNode) -> Option<Self> {
17537 if Self::can_cast(syntax.kind()) {
17538 Some(Self { syntax })
17539 } else {
17540 None
17541 }
17542 }
17543 #[inline]
17544 fn syntax(&self) -> &SyntaxNode {
17545 &self.syntax
17546 }
17547}
17548impl AstNode for AlterCollation {
17549 #[inline]
17550 fn can_cast(kind: SyntaxKind) -> bool {
17551 kind == SyntaxKind::ALTER_COLLATION
17552 }
17553 #[inline]
17554 fn cast(syntax: SyntaxNode) -> Option<Self> {
17555 if Self::can_cast(syntax.kind()) {
17556 Some(Self { syntax })
17557 } else {
17558 None
17559 }
17560 }
17561 #[inline]
17562 fn syntax(&self) -> &SyntaxNode {
17563 &self.syntax
17564 }
17565}
17566impl AstNode for AlterColumn {
17567 #[inline]
17568 fn can_cast(kind: SyntaxKind) -> bool {
17569 kind == SyntaxKind::ALTER_COLUMN
17570 }
17571 #[inline]
17572 fn cast(syntax: SyntaxNode) -> Option<Self> {
17573 if Self::can_cast(syntax.kind()) {
17574 Some(Self { syntax })
17575 } else {
17576 None
17577 }
17578 }
17579 #[inline]
17580 fn syntax(&self) -> &SyntaxNode {
17581 &self.syntax
17582 }
17583}
17584impl AstNode for AlterConstraint {
17585 #[inline]
17586 fn can_cast(kind: SyntaxKind) -> bool {
17587 kind == SyntaxKind::ALTER_CONSTRAINT
17588 }
17589 #[inline]
17590 fn cast(syntax: SyntaxNode) -> Option<Self> {
17591 if Self::can_cast(syntax.kind()) {
17592 Some(Self { syntax })
17593 } else {
17594 None
17595 }
17596 }
17597 #[inline]
17598 fn syntax(&self) -> &SyntaxNode {
17599 &self.syntax
17600 }
17601}
17602impl AstNode for AlterConversion {
17603 #[inline]
17604 fn can_cast(kind: SyntaxKind) -> bool {
17605 kind == SyntaxKind::ALTER_CONVERSION
17606 }
17607 #[inline]
17608 fn cast(syntax: SyntaxNode) -> Option<Self> {
17609 if Self::can_cast(syntax.kind()) {
17610 Some(Self { syntax })
17611 } else {
17612 None
17613 }
17614 }
17615 #[inline]
17616 fn syntax(&self) -> &SyntaxNode {
17617 &self.syntax
17618 }
17619}
17620impl AstNode for AlterDatabase {
17621 #[inline]
17622 fn can_cast(kind: SyntaxKind) -> bool {
17623 kind == SyntaxKind::ALTER_DATABASE
17624 }
17625 #[inline]
17626 fn cast(syntax: SyntaxNode) -> Option<Self> {
17627 if Self::can_cast(syntax.kind()) {
17628 Some(Self { syntax })
17629 } else {
17630 None
17631 }
17632 }
17633 #[inline]
17634 fn syntax(&self) -> &SyntaxNode {
17635 &self.syntax
17636 }
17637}
17638impl AstNode for AlterDefaultPrivileges {
17639 #[inline]
17640 fn can_cast(kind: SyntaxKind) -> bool {
17641 kind == SyntaxKind::ALTER_DEFAULT_PRIVILEGES
17642 }
17643 #[inline]
17644 fn cast(syntax: SyntaxNode) -> Option<Self> {
17645 if Self::can_cast(syntax.kind()) {
17646 Some(Self { syntax })
17647 } else {
17648 None
17649 }
17650 }
17651 #[inline]
17652 fn syntax(&self) -> &SyntaxNode {
17653 &self.syntax
17654 }
17655}
17656impl AstNode for AlterDomain {
17657 #[inline]
17658 fn can_cast(kind: SyntaxKind) -> bool {
17659 kind == SyntaxKind::ALTER_DOMAIN
17660 }
17661 #[inline]
17662 fn cast(syntax: SyntaxNode) -> Option<Self> {
17663 if Self::can_cast(syntax.kind()) {
17664 Some(Self { syntax })
17665 } else {
17666 None
17667 }
17668 }
17669 #[inline]
17670 fn syntax(&self) -> &SyntaxNode {
17671 &self.syntax
17672 }
17673}
17674impl AstNode for AlterEventTrigger {
17675 #[inline]
17676 fn can_cast(kind: SyntaxKind) -> bool {
17677 kind == SyntaxKind::ALTER_EVENT_TRIGGER
17678 }
17679 #[inline]
17680 fn cast(syntax: SyntaxNode) -> Option<Self> {
17681 if Self::can_cast(syntax.kind()) {
17682 Some(Self { syntax })
17683 } else {
17684 None
17685 }
17686 }
17687 #[inline]
17688 fn syntax(&self) -> &SyntaxNode {
17689 &self.syntax
17690 }
17691}
17692impl AstNode for AlterExtension {
17693 #[inline]
17694 fn can_cast(kind: SyntaxKind) -> bool {
17695 kind == SyntaxKind::ALTER_EXTENSION
17696 }
17697 #[inline]
17698 fn cast(syntax: SyntaxNode) -> Option<Self> {
17699 if Self::can_cast(syntax.kind()) {
17700 Some(Self { syntax })
17701 } else {
17702 None
17703 }
17704 }
17705 #[inline]
17706 fn syntax(&self) -> &SyntaxNode {
17707 &self.syntax
17708 }
17709}
17710impl AstNode for AlterForeignDataWrapper {
17711 #[inline]
17712 fn can_cast(kind: SyntaxKind) -> bool {
17713 kind == SyntaxKind::ALTER_FOREIGN_DATA_WRAPPER
17714 }
17715 #[inline]
17716 fn cast(syntax: SyntaxNode) -> Option<Self> {
17717 if Self::can_cast(syntax.kind()) {
17718 Some(Self { syntax })
17719 } else {
17720 None
17721 }
17722 }
17723 #[inline]
17724 fn syntax(&self) -> &SyntaxNode {
17725 &self.syntax
17726 }
17727}
17728impl AstNode for AlterForeignTable {
17729 #[inline]
17730 fn can_cast(kind: SyntaxKind) -> bool {
17731 kind == SyntaxKind::ALTER_FOREIGN_TABLE
17732 }
17733 #[inline]
17734 fn cast(syntax: SyntaxNode) -> Option<Self> {
17735 if Self::can_cast(syntax.kind()) {
17736 Some(Self { syntax })
17737 } else {
17738 None
17739 }
17740 }
17741 #[inline]
17742 fn syntax(&self) -> &SyntaxNode {
17743 &self.syntax
17744 }
17745}
17746impl AstNode for AlterFunction {
17747 #[inline]
17748 fn can_cast(kind: SyntaxKind) -> bool {
17749 kind == SyntaxKind::ALTER_FUNCTION
17750 }
17751 #[inline]
17752 fn cast(syntax: SyntaxNode) -> Option<Self> {
17753 if Self::can_cast(syntax.kind()) {
17754 Some(Self { syntax })
17755 } else {
17756 None
17757 }
17758 }
17759 #[inline]
17760 fn syntax(&self) -> &SyntaxNode {
17761 &self.syntax
17762 }
17763}
17764impl AstNode for AlterGroup {
17765 #[inline]
17766 fn can_cast(kind: SyntaxKind) -> bool {
17767 kind == SyntaxKind::ALTER_GROUP
17768 }
17769 #[inline]
17770 fn cast(syntax: SyntaxNode) -> Option<Self> {
17771 if Self::can_cast(syntax.kind()) {
17772 Some(Self { syntax })
17773 } else {
17774 None
17775 }
17776 }
17777 #[inline]
17778 fn syntax(&self) -> &SyntaxNode {
17779 &self.syntax
17780 }
17781}
17782impl AstNode for AlterIndex {
17783 #[inline]
17784 fn can_cast(kind: SyntaxKind) -> bool {
17785 kind == SyntaxKind::ALTER_INDEX
17786 }
17787 #[inline]
17788 fn cast(syntax: SyntaxNode) -> Option<Self> {
17789 if Self::can_cast(syntax.kind()) {
17790 Some(Self { syntax })
17791 } else {
17792 None
17793 }
17794 }
17795 #[inline]
17796 fn syntax(&self) -> &SyntaxNode {
17797 &self.syntax
17798 }
17799}
17800impl AstNode for AlterLanguage {
17801 #[inline]
17802 fn can_cast(kind: SyntaxKind) -> bool {
17803 kind == SyntaxKind::ALTER_LANGUAGE
17804 }
17805 #[inline]
17806 fn cast(syntax: SyntaxNode) -> Option<Self> {
17807 if Self::can_cast(syntax.kind()) {
17808 Some(Self { syntax })
17809 } else {
17810 None
17811 }
17812 }
17813 #[inline]
17814 fn syntax(&self) -> &SyntaxNode {
17815 &self.syntax
17816 }
17817}
17818impl AstNode for AlterLargeObject {
17819 #[inline]
17820 fn can_cast(kind: SyntaxKind) -> bool {
17821 kind == SyntaxKind::ALTER_LARGE_OBJECT
17822 }
17823 #[inline]
17824 fn cast(syntax: SyntaxNode) -> Option<Self> {
17825 if Self::can_cast(syntax.kind()) {
17826 Some(Self { syntax })
17827 } else {
17828 None
17829 }
17830 }
17831 #[inline]
17832 fn syntax(&self) -> &SyntaxNode {
17833 &self.syntax
17834 }
17835}
17836impl AstNode for AlterMaterializedView {
17837 #[inline]
17838 fn can_cast(kind: SyntaxKind) -> bool {
17839 kind == SyntaxKind::ALTER_MATERIALIZED_VIEW
17840 }
17841 #[inline]
17842 fn cast(syntax: SyntaxNode) -> Option<Self> {
17843 if Self::can_cast(syntax.kind()) {
17844 Some(Self { syntax })
17845 } else {
17846 None
17847 }
17848 }
17849 #[inline]
17850 fn syntax(&self) -> &SyntaxNode {
17851 &self.syntax
17852 }
17853}
17854impl AstNode for AlterOperator {
17855 #[inline]
17856 fn can_cast(kind: SyntaxKind) -> bool {
17857 kind == SyntaxKind::ALTER_OPERATOR
17858 }
17859 #[inline]
17860 fn cast(syntax: SyntaxNode) -> Option<Self> {
17861 if Self::can_cast(syntax.kind()) {
17862 Some(Self { syntax })
17863 } else {
17864 None
17865 }
17866 }
17867 #[inline]
17868 fn syntax(&self) -> &SyntaxNode {
17869 &self.syntax
17870 }
17871}
17872impl AstNode for AlterOperatorClass {
17873 #[inline]
17874 fn can_cast(kind: SyntaxKind) -> bool {
17875 kind == SyntaxKind::ALTER_OPERATOR_CLASS
17876 }
17877 #[inline]
17878 fn cast(syntax: SyntaxNode) -> Option<Self> {
17879 if Self::can_cast(syntax.kind()) {
17880 Some(Self { syntax })
17881 } else {
17882 None
17883 }
17884 }
17885 #[inline]
17886 fn syntax(&self) -> &SyntaxNode {
17887 &self.syntax
17888 }
17889}
17890impl AstNode for AlterOperatorFamily {
17891 #[inline]
17892 fn can_cast(kind: SyntaxKind) -> bool {
17893 kind == SyntaxKind::ALTER_OPERATOR_FAMILY
17894 }
17895 #[inline]
17896 fn cast(syntax: SyntaxNode) -> Option<Self> {
17897 if Self::can_cast(syntax.kind()) {
17898 Some(Self { syntax })
17899 } else {
17900 None
17901 }
17902 }
17903 #[inline]
17904 fn syntax(&self) -> &SyntaxNode {
17905 &self.syntax
17906 }
17907}
17908impl AstNode for AlterOption {
17909 #[inline]
17910 fn can_cast(kind: SyntaxKind) -> bool {
17911 kind == SyntaxKind::ALTER_OPTION
17912 }
17913 #[inline]
17914 fn cast(syntax: SyntaxNode) -> Option<Self> {
17915 if Self::can_cast(syntax.kind()) {
17916 Some(Self { syntax })
17917 } else {
17918 None
17919 }
17920 }
17921 #[inline]
17922 fn syntax(&self) -> &SyntaxNode {
17923 &self.syntax
17924 }
17925}
17926impl AstNode for AlterOptionList {
17927 #[inline]
17928 fn can_cast(kind: SyntaxKind) -> bool {
17929 kind == SyntaxKind::ALTER_OPTION_LIST
17930 }
17931 #[inline]
17932 fn cast(syntax: SyntaxNode) -> Option<Self> {
17933 if Self::can_cast(syntax.kind()) {
17934 Some(Self { syntax })
17935 } else {
17936 None
17937 }
17938 }
17939 #[inline]
17940 fn syntax(&self) -> &SyntaxNode {
17941 &self.syntax
17942 }
17943}
17944impl AstNode for AlterPolicy {
17945 #[inline]
17946 fn can_cast(kind: SyntaxKind) -> bool {
17947 kind == SyntaxKind::ALTER_POLICY
17948 }
17949 #[inline]
17950 fn cast(syntax: SyntaxNode) -> Option<Self> {
17951 if Self::can_cast(syntax.kind()) {
17952 Some(Self { syntax })
17953 } else {
17954 None
17955 }
17956 }
17957 #[inline]
17958 fn syntax(&self) -> &SyntaxNode {
17959 &self.syntax
17960 }
17961}
17962impl AstNode for AlterProcedure {
17963 #[inline]
17964 fn can_cast(kind: SyntaxKind) -> bool {
17965 kind == SyntaxKind::ALTER_PROCEDURE
17966 }
17967 #[inline]
17968 fn cast(syntax: SyntaxNode) -> Option<Self> {
17969 if Self::can_cast(syntax.kind()) {
17970 Some(Self { syntax })
17971 } else {
17972 None
17973 }
17974 }
17975 #[inline]
17976 fn syntax(&self) -> &SyntaxNode {
17977 &self.syntax
17978 }
17979}
17980impl AstNode for AlterPublication {
17981 #[inline]
17982 fn can_cast(kind: SyntaxKind) -> bool {
17983 kind == SyntaxKind::ALTER_PUBLICATION
17984 }
17985 #[inline]
17986 fn cast(syntax: SyntaxNode) -> Option<Self> {
17987 if Self::can_cast(syntax.kind()) {
17988 Some(Self { syntax })
17989 } else {
17990 None
17991 }
17992 }
17993 #[inline]
17994 fn syntax(&self) -> &SyntaxNode {
17995 &self.syntax
17996 }
17997}
17998impl AstNode for AlterRole {
17999 #[inline]
18000 fn can_cast(kind: SyntaxKind) -> bool {
18001 kind == SyntaxKind::ALTER_ROLE
18002 }
18003 #[inline]
18004 fn cast(syntax: SyntaxNode) -> Option<Self> {
18005 if Self::can_cast(syntax.kind()) {
18006 Some(Self { syntax })
18007 } else {
18008 None
18009 }
18010 }
18011 #[inline]
18012 fn syntax(&self) -> &SyntaxNode {
18013 &self.syntax
18014 }
18015}
18016impl AstNode for AlterRoutine {
18017 #[inline]
18018 fn can_cast(kind: SyntaxKind) -> bool {
18019 kind == SyntaxKind::ALTER_ROUTINE
18020 }
18021 #[inline]
18022 fn cast(syntax: SyntaxNode) -> Option<Self> {
18023 if Self::can_cast(syntax.kind()) {
18024 Some(Self { syntax })
18025 } else {
18026 None
18027 }
18028 }
18029 #[inline]
18030 fn syntax(&self) -> &SyntaxNode {
18031 &self.syntax
18032 }
18033}
18034impl AstNode for AlterRule {
18035 #[inline]
18036 fn can_cast(kind: SyntaxKind) -> bool {
18037 kind == SyntaxKind::ALTER_RULE
18038 }
18039 #[inline]
18040 fn cast(syntax: SyntaxNode) -> Option<Self> {
18041 if Self::can_cast(syntax.kind()) {
18042 Some(Self { syntax })
18043 } else {
18044 None
18045 }
18046 }
18047 #[inline]
18048 fn syntax(&self) -> &SyntaxNode {
18049 &self.syntax
18050 }
18051}
18052impl AstNode for AlterSchema {
18053 #[inline]
18054 fn can_cast(kind: SyntaxKind) -> bool {
18055 kind == SyntaxKind::ALTER_SCHEMA
18056 }
18057 #[inline]
18058 fn cast(syntax: SyntaxNode) -> Option<Self> {
18059 if Self::can_cast(syntax.kind()) {
18060 Some(Self { syntax })
18061 } else {
18062 None
18063 }
18064 }
18065 #[inline]
18066 fn syntax(&self) -> &SyntaxNode {
18067 &self.syntax
18068 }
18069}
18070impl AstNode for AlterSequence {
18071 #[inline]
18072 fn can_cast(kind: SyntaxKind) -> bool {
18073 kind == SyntaxKind::ALTER_SEQUENCE
18074 }
18075 #[inline]
18076 fn cast(syntax: SyntaxNode) -> Option<Self> {
18077 if Self::can_cast(syntax.kind()) {
18078 Some(Self { syntax })
18079 } else {
18080 None
18081 }
18082 }
18083 #[inline]
18084 fn syntax(&self) -> &SyntaxNode {
18085 &self.syntax
18086 }
18087}
18088impl AstNode for AlterServer {
18089 #[inline]
18090 fn can_cast(kind: SyntaxKind) -> bool {
18091 kind == SyntaxKind::ALTER_SERVER
18092 }
18093 #[inline]
18094 fn cast(syntax: SyntaxNode) -> Option<Self> {
18095 if Self::can_cast(syntax.kind()) {
18096 Some(Self { syntax })
18097 } else {
18098 None
18099 }
18100 }
18101 #[inline]
18102 fn syntax(&self) -> &SyntaxNode {
18103 &self.syntax
18104 }
18105}
18106impl AstNode for AlterSetStatistics {
18107 #[inline]
18108 fn can_cast(kind: SyntaxKind) -> bool {
18109 kind == SyntaxKind::ALTER_SET_STATISTICS
18110 }
18111 #[inline]
18112 fn cast(syntax: SyntaxNode) -> Option<Self> {
18113 if Self::can_cast(syntax.kind()) {
18114 Some(Self { syntax })
18115 } else {
18116 None
18117 }
18118 }
18119 #[inline]
18120 fn syntax(&self) -> &SyntaxNode {
18121 &self.syntax
18122 }
18123}
18124impl AstNode for AlterStatistics {
18125 #[inline]
18126 fn can_cast(kind: SyntaxKind) -> bool {
18127 kind == SyntaxKind::ALTER_STATISTICS
18128 }
18129 #[inline]
18130 fn cast(syntax: SyntaxNode) -> Option<Self> {
18131 if Self::can_cast(syntax.kind()) {
18132 Some(Self { syntax })
18133 } else {
18134 None
18135 }
18136 }
18137 #[inline]
18138 fn syntax(&self) -> &SyntaxNode {
18139 &self.syntax
18140 }
18141}
18142impl AstNode for AlterSubscription {
18143 #[inline]
18144 fn can_cast(kind: SyntaxKind) -> bool {
18145 kind == SyntaxKind::ALTER_SUBSCRIPTION
18146 }
18147 #[inline]
18148 fn cast(syntax: SyntaxNode) -> Option<Self> {
18149 if Self::can_cast(syntax.kind()) {
18150 Some(Self { syntax })
18151 } else {
18152 None
18153 }
18154 }
18155 #[inline]
18156 fn syntax(&self) -> &SyntaxNode {
18157 &self.syntax
18158 }
18159}
18160impl AstNode for AlterSystem {
18161 #[inline]
18162 fn can_cast(kind: SyntaxKind) -> bool {
18163 kind == SyntaxKind::ALTER_SYSTEM
18164 }
18165 #[inline]
18166 fn cast(syntax: SyntaxNode) -> Option<Self> {
18167 if Self::can_cast(syntax.kind()) {
18168 Some(Self { syntax })
18169 } else {
18170 None
18171 }
18172 }
18173 #[inline]
18174 fn syntax(&self) -> &SyntaxNode {
18175 &self.syntax
18176 }
18177}
18178impl AstNode for AlterTable {
18179 #[inline]
18180 fn can_cast(kind: SyntaxKind) -> bool {
18181 kind == SyntaxKind::ALTER_TABLE
18182 }
18183 #[inline]
18184 fn cast(syntax: SyntaxNode) -> Option<Self> {
18185 if Self::can_cast(syntax.kind()) {
18186 Some(Self { syntax })
18187 } else {
18188 None
18189 }
18190 }
18191 #[inline]
18192 fn syntax(&self) -> &SyntaxNode {
18193 &self.syntax
18194 }
18195}
18196impl AstNode for AlterTablespace {
18197 #[inline]
18198 fn can_cast(kind: SyntaxKind) -> bool {
18199 kind == SyntaxKind::ALTER_TABLESPACE
18200 }
18201 #[inline]
18202 fn cast(syntax: SyntaxNode) -> Option<Self> {
18203 if Self::can_cast(syntax.kind()) {
18204 Some(Self { syntax })
18205 } else {
18206 None
18207 }
18208 }
18209 #[inline]
18210 fn syntax(&self) -> &SyntaxNode {
18211 &self.syntax
18212 }
18213}
18214impl AstNode for AlterTextSearchConfiguration {
18215 #[inline]
18216 fn can_cast(kind: SyntaxKind) -> bool {
18217 kind == SyntaxKind::ALTER_TEXT_SEARCH_CONFIGURATION
18218 }
18219 #[inline]
18220 fn cast(syntax: SyntaxNode) -> Option<Self> {
18221 if Self::can_cast(syntax.kind()) {
18222 Some(Self { syntax })
18223 } else {
18224 None
18225 }
18226 }
18227 #[inline]
18228 fn syntax(&self) -> &SyntaxNode {
18229 &self.syntax
18230 }
18231}
18232impl AstNode for AlterTextSearchDictionary {
18233 #[inline]
18234 fn can_cast(kind: SyntaxKind) -> bool {
18235 kind == SyntaxKind::ALTER_TEXT_SEARCH_DICTIONARY
18236 }
18237 #[inline]
18238 fn cast(syntax: SyntaxNode) -> Option<Self> {
18239 if Self::can_cast(syntax.kind()) {
18240 Some(Self { syntax })
18241 } else {
18242 None
18243 }
18244 }
18245 #[inline]
18246 fn syntax(&self) -> &SyntaxNode {
18247 &self.syntax
18248 }
18249}
18250impl AstNode for AlterTextSearchParser {
18251 #[inline]
18252 fn can_cast(kind: SyntaxKind) -> bool {
18253 kind == SyntaxKind::ALTER_TEXT_SEARCH_PARSER
18254 }
18255 #[inline]
18256 fn cast(syntax: SyntaxNode) -> Option<Self> {
18257 if Self::can_cast(syntax.kind()) {
18258 Some(Self { syntax })
18259 } else {
18260 None
18261 }
18262 }
18263 #[inline]
18264 fn syntax(&self) -> &SyntaxNode {
18265 &self.syntax
18266 }
18267}
18268impl AstNode for AlterTextSearchTemplate {
18269 #[inline]
18270 fn can_cast(kind: SyntaxKind) -> bool {
18271 kind == SyntaxKind::ALTER_TEXT_SEARCH_TEMPLATE
18272 }
18273 #[inline]
18274 fn cast(syntax: SyntaxNode) -> Option<Self> {
18275 if Self::can_cast(syntax.kind()) {
18276 Some(Self { syntax })
18277 } else {
18278 None
18279 }
18280 }
18281 #[inline]
18282 fn syntax(&self) -> &SyntaxNode {
18283 &self.syntax
18284 }
18285}
18286impl AstNode for AlterTrigger {
18287 #[inline]
18288 fn can_cast(kind: SyntaxKind) -> bool {
18289 kind == SyntaxKind::ALTER_TRIGGER
18290 }
18291 #[inline]
18292 fn cast(syntax: SyntaxNode) -> Option<Self> {
18293 if Self::can_cast(syntax.kind()) {
18294 Some(Self { syntax })
18295 } else {
18296 None
18297 }
18298 }
18299 #[inline]
18300 fn syntax(&self) -> &SyntaxNode {
18301 &self.syntax
18302 }
18303}
18304impl AstNode for AlterType {
18305 #[inline]
18306 fn can_cast(kind: SyntaxKind) -> bool {
18307 kind == SyntaxKind::ALTER_TYPE
18308 }
18309 #[inline]
18310 fn cast(syntax: SyntaxNode) -> Option<Self> {
18311 if Self::can_cast(syntax.kind()) {
18312 Some(Self { syntax })
18313 } else {
18314 None
18315 }
18316 }
18317 #[inline]
18318 fn syntax(&self) -> &SyntaxNode {
18319 &self.syntax
18320 }
18321}
18322impl AstNode for AlterUser {
18323 #[inline]
18324 fn can_cast(kind: SyntaxKind) -> bool {
18325 kind == SyntaxKind::ALTER_USER
18326 }
18327 #[inline]
18328 fn cast(syntax: SyntaxNode) -> Option<Self> {
18329 if Self::can_cast(syntax.kind()) {
18330 Some(Self { syntax })
18331 } else {
18332 None
18333 }
18334 }
18335 #[inline]
18336 fn syntax(&self) -> &SyntaxNode {
18337 &self.syntax
18338 }
18339}
18340impl AstNode for AlterUserMapping {
18341 #[inline]
18342 fn can_cast(kind: SyntaxKind) -> bool {
18343 kind == SyntaxKind::ALTER_USER_MAPPING
18344 }
18345 #[inline]
18346 fn cast(syntax: SyntaxNode) -> Option<Self> {
18347 if Self::can_cast(syntax.kind()) {
18348 Some(Self { syntax })
18349 } else {
18350 None
18351 }
18352 }
18353 #[inline]
18354 fn syntax(&self) -> &SyntaxNode {
18355 &self.syntax
18356 }
18357}
18358impl AstNode for AlterView {
18359 #[inline]
18360 fn can_cast(kind: SyntaxKind) -> bool {
18361 kind == SyntaxKind::ALTER_VIEW
18362 }
18363 #[inline]
18364 fn cast(syntax: SyntaxNode) -> Option<Self> {
18365 if Self::can_cast(syntax.kind()) {
18366 Some(Self { syntax })
18367 } else {
18368 None
18369 }
18370 }
18371 #[inline]
18372 fn syntax(&self) -> &SyntaxNode {
18373 &self.syntax
18374 }
18375}
18376impl AstNode for Analyze {
18377 #[inline]
18378 fn can_cast(kind: SyntaxKind) -> bool {
18379 kind == SyntaxKind::ANALYZE
18380 }
18381 #[inline]
18382 fn cast(syntax: SyntaxNode) -> Option<Self> {
18383 if Self::can_cast(syntax.kind()) {
18384 Some(Self { syntax })
18385 } else {
18386 None
18387 }
18388 }
18389 #[inline]
18390 fn syntax(&self) -> &SyntaxNode {
18391 &self.syntax
18392 }
18393}
18394impl AstNode for AnyFn {
18395 #[inline]
18396 fn can_cast(kind: SyntaxKind) -> bool {
18397 kind == SyntaxKind::ANY_FN
18398 }
18399 #[inline]
18400 fn cast(syntax: SyntaxNode) -> Option<Self> {
18401 if Self::can_cast(syntax.kind()) {
18402 Some(Self { syntax })
18403 } else {
18404 None
18405 }
18406 }
18407 #[inline]
18408 fn syntax(&self) -> &SyntaxNode {
18409 &self.syntax
18410 }
18411}
18412impl AstNode for Arg {
18413 #[inline]
18414 fn can_cast(kind: SyntaxKind) -> bool {
18415 kind == SyntaxKind::ARG
18416 }
18417 #[inline]
18418 fn cast(syntax: SyntaxNode) -> Option<Self> {
18419 if Self::can_cast(syntax.kind()) {
18420 Some(Self { syntax })
18421 } else {
18422 None
18423 }
18424 }
18425 #[inline]
18426 fn syntax(&self) -> &SyntaxNode {
18427 &self.syntax
18428 }
18429}
18430impl AstNode for ArgList {
18431 #[inline]
18432 fn can_cast(kind: SyntaxKind) -> bool {
18433 kind == SyntaxKind::ARG_LIST
18434 }
18435 #[inline]
18436 fn cast(syntax: SyntaxNode) -> Option<Self> {
18437 if Self::can_cast(syntax.kind()) {
18438 Some(Self { syntax })
18439 } else {
18440 None
18441 }
18442 }
18443 #[inline]
18444 fn syntax(&self) -> &SyntaxNode {
18445 &self.syntax
18446 }
18447}
18448impl AstNode for ArrayExpr {
18449 #[inline]
18450 fn can_cast(kind: SyntaxKind) -> bool {
18451 kind == SyntaxKind::ARRAY_EXPR
18452 }
18453 #[inline]
18454 fn cast(syntax: SyntaxNode) -> Option<Self> {
18455 if Self::can_cast(syntax.kind()) {
18456 Some(Self { syntax })
18457 } else {
18458 None
18459 }
18460 }
18461 #[inline]
18462 fn syntax(&self) -> &SyntaxNode {
18463 &self.syntax
18464 }
18465}
18466impl AstNode for ArrayType {
18467 #[inline]
18468 fn can_cast(kind: SyntaxKind) -> bool {
18469 kind == SyntaxKind::ARRAY_TYPE
18470 }
18471 #[inline]
18472 fn cast(syntax: SyntaxNode) -> Option<Self> {
18473 if Self::can_cast(syntax.kind()) {
18474 Some(Self { syntax })
18475 } else {
18476 None
18477 }
18478 }
18479 #[inline]
18480 fn syntax(&self) -> &SyntaxNode {
18481 &self.syntax
18482 }
18483}
18484impl AstNode for AsFuncOption {
18485 #[inline]
18486 fn can_cast(kind: SyntaxKind) -> bool {
18487 kind == SyntaxKind::AS_FUNC_OPTION
18488 }
18489 #[inline]
18490 fn cast(syntax: SyntaxNode) -> Option<Self> {
18491 if Self::can_cast(syntax.kind()) {
18492 Some(Self { syntax })
18493 } else {
18494 None
18495 }
18496 }
18497 #[inline]
18498 fn syntax(&self) -> &SyntaxNode {
18499 &self.syntax
18500 }
18501}
18502impl AstNode for AsName {
18503 #[inline]
18504 fn can_cast(kind: SyntaxKind) -> bool {
18505 kind == SyntaxKind::AS_NAME
18506 }
18507 #[inline]
18508 fn cast(syntax: SyntaxNode) -> Option<Self> {
18509 if Self::can_cast(syntax.kind()) {
18510 Some(Self { syntax })
18511 } else {
18512 None
18513 }
18514 }
18515 #[inline]
18516 fn syntax(&self) -> &SyntaxNode {
18517 &self.syntax
18518 }
18519}
18520impl AstNode for AsPolicyType {
18521 #[inline]
18522 fn can_cast(kind: SyntaxKind) -> bool {
18523 kind == SyntaxKind::AS_POLICY_TYPE
18524 }
18525 #[inline]
18526 fn cast(syntax: SyntaxNode) -> Option<Self> {
18527 if Self::can_cast(syntax.kind()) {
18528 Some(Self { syntax })
18529 } else {
18530 None
18531 }
18532 }
18533 #[inline]
18534 fn syntax(&self) -> &SyntaxNode {
18535 &self.syntax
18536 }
18537}
18538impl AstNode for AtTimeZone {
18539 #[inline]
18540 fn can_cast(kind: SyntaxKind) -> bool {
18541 kind == SyntaxKind::AT_TIME_ZONE
18542 }
18543 #[inline]
18544 fn cast(syntax: SyntaxNode) -> Option<Self> {
18545 if Self::can_cast(syntax.kind()) {
18546 Some(Self { syntax })
18547 } else {
18548 None
18549 }
18550 }
18551 #[inline]
18552 fn syntax(&self) -> &SyntaxNode {
18553 &self.syntax
18554 }
18555}
18556impl AstNode for AttachPartition {
18557 #[inline]
18558 fn can_cast(kind: SyntaxKind) -> bool {
18559 kind == SyntaxKind::ATTACH_PARTITION
18560 }
18561 #[inline]
18562 fn cast(syntax: SyntaxNode) -> Option<Self> {
18563 if Self::can_cast(syntax.kind()) {
18564 Some(Self { syntax })
18565 } else {
18566 None
18567 }
18568 }
18569 #[inline]
18570 fn syntax(&self) -> &SyntaxNode {
18571 &self.syntax
18572 }
18573}
18574impl AstNode for AttributeList {
18575 #[inline]
18576 fn can_cast(kind: SyntaxKind) -> bool {
18577 kind == SyntaxKind::ATTRIBUTE_LIST
18578 }
18579 #[inline]
18580 fn cast(syntax: SyntaxNode) -> Option<Self> {
18581 if Self::can_cast(syntax.kind()) {
18582 Some(Self { syntax })
18583 } else {
18584 None
18585 }
18586 }
18587 #[inline]
18588 fn syntax(&self) -> &SyntaxNode {
18589 &self.syntax
18590 }
18591}
18592impl AstNode for AttributeOption {
18593 #[inline]
18594 fn can_cast(kind: SyntaxKind) -> bool {
18595 kind == SyntaxKind::ATTRIBUTE_OPTION
18596 }
18597 #[inline]
18598 fn cast(syntax: SyntaxNode) -> Option<Self> {
18599 if Self::can_cast(syntax.kind()) {
18600 Some(Self { syntax })
18601 } else {
18602 None
18603 }
18604 }
18605 #[inline]
18606 fn syntax(&self) -> &SyntaxNode {
18607 &self.syntax
18608 }
18609}
18610impl AstNode for AttributeValue {
18611 #[inline]
18612 fn can_cast(kind: SyntaxKind) -> bool {
18613 kind == SyntaxKind::ATTRIBUTE_VALUE
18614 }
18615 #[inline]
18616 fn cast(syntax: SyntaxNode) -> Option<Self> {
18617 if Self::can_cast(syntax.kind()) {
18618 Some(Self { syntax })
18619 } else {
18620 None
18621 }
18622 }
18623 #[inline]
18624 fn syntax(&self) -> &SyntaxNode {
18625 &self.syntax
18626 }
18627}
18628impl AstNode for Begin {
18629 #[inline]
18630 fn can_cast(kind: SyntaxKind) -> bool {
18631 kind == SyntaxKind::BEGIN
18632 }
18633 #[inline]
18634 fn cast(syntax: SyntaxNode) -> Option<Self> {
18635 if Self::can_cast(syntax.kind()) {
18636 Some(Self { syntax })
18637 } else {
18638 None
18639 }
18640 }
18641 #[inline]
18642 fn syntax(&self) -> &SyntaxNode {
18643 &self.syntax
18644 }
18645}
18646impl AstNode for BeginFuncOption {
18647 #[inline]
18648 fn can_cast(kind: SyntaxKind) -> bool {
18649 kind == SyntaxKind::BEGIN_FUNC_OPTION
18650 }
18651 #[inline]
18652 fn cast(syntax: SyntaxNode) -> Option<Self> {
18653 if Self::can_cast(syntax.kind()) {
18654 Some(Self { syntax })
18655 } else {
18656 None
18657 }
18658 }
18659 #[inline]
18660 fn syntax(&self) -> &SyntaxNode {
18661 &self.syntax
18662 }
18663}
18664impl AstNode for BeginFuncOptionList {
18665 #[inline]
18666 fn can_cast(kind: SyntaxKind) -> bool {
18667 kind == SyntaxKind::BEGIN_FUNC_OPTION_LIST
18668 }
18669 #[inline]
18670 fn cast(syntax: SyntaxNode) -> Option<Self> {
18671 if Self::can_cast(syntax.kind()) {
18672 Some(Self { syntax })
18673 } else {
18674 None
18675 }
18676 }
18677 #[inline]
18678 fn syntax(&self) -> &SyntaxNode {
18679 &self.syntax
18680 }
18681}
18682impl AstNode for BetweenExpr {
18683 #[inline]
18684 fn can_cast(kind: SyntaxKind) -> bool {
18685 kind == SyntaxKind::BETWEEN_EXPR
18686 }
18687 #[inline]
18688 fn cast(syntax: SyntaxNode) -> Option<Self> {
18689 if Self::can_cast(syntax.kind()) {
18690 Some(Self { syntax })
18691 } else {
18692 None
18693 }
18694 }
18695 #[inline]
18696 fn syntax(&self) -> &SyntaxNode {
18697 &self.syntax
18698 }
18699}
18700impl AstNode for BinExpr {
18701 #[inline]
18702 fn can_cast(kind: SyntaxKind) -> bool {
18703 kind == SyntaxKind::BIN_EXPR
18704 }
18705 #[inline]
18706 fn cast(syntax: SyntaxNode) -> Option<Self> {
18707 if Self::can_cast(syntax.kind()) {
18708 Some(Self { syntax })
18709 } else {
18710 None
18711 }
18712 }
18713 #[inline]
18714 fn syntax(&self) -> &SyntaxNode {
18715 &self.syntax
18716 }
18717}
18718impl AstNode for BitType {
18719 #[inline]
18720 fn can_cast(kind: SyntaxKind) -> bool {
18721 kind == SyntaxKind::BIT_TYPE
18722 }
18723 #[inline]
18724 fn cast(syntax: SyntaxNode) -> Option<Self> {
18725 if Self::can_cast(syntax.kind()) {
18726 Some(Self { syntax })
18727 } else {
18728 None
18729 }
18730 }
18731 #[inline]
18732 fn syntax(&self) -> &SyntaxNode {
18733 &self.syntax
18734 }
18735}
18736impl AstNode for Call {
18737 #[inline]
18738 fn can_cast(kind: SyntaxKind) -> bool {
18739 kind == SyntaxKind::CALL
18740 }
18741 #[inline]
18742 fn cast(syntax: SyntaxNode) -> Option<Self> {
18743 if Self::can_cast(syntax.kind()) {
18744 Some(Self { syntax })
18745 } else {
18746 None
18747 }
18748 }
18749 #[inline]
18750 fn syntax(&self) -> &SyntaxNode {
18751 &self.syntax
18752 }
18753}
18754impl AstNode for CallExpr {
18755 #[inline]
18756 fn can_cast(kind: SyntaxKind) -> bool {
18757 kind == SyntaxKind::CALL_EXPR
18758 }
18759 #[inline]
18760 fn cast(syntax: SyntaxNode) -> Option<Self> {
18761 if Self::can_cast(syntax.kind()) {
18762 Some(Self { syntax })
18763 } else {
18764 None
18765 }
18766 }
18767 #[inline]
18768 fn syntax(&self) -> &SyntaxNode {
18769 &self.syntax
18770 }
18771}
18772impl AstNode for Cascade {
18773 #[inline]
18774 fn can_cast(kind: SyntaxKind) -> bool {
18775 kind == SyntaxKind::CASCADE
18776 }
18777 #[inline]
18778 fn cast(syntax: SyntaxNode) -> Option<Self> {
18779 if Self::can_cast(syntax.kind()) {
18780 Some(Self { syntax })
18781 } else {
18782 None
18783 }
18784 }
18785 #[inline]
18786 fn syntax(&self) -> &SyntaxNode {
18787 &self.syntax
18788 }
18789}
18790impl AstNode for CaseExpr {
18791 #[inline]
18792 fn can_cast(kind: SyntaxKind) -> bool {
18793 kind == SyntaxKind::CASE_EXPR
18794 }
18795 #[inline]
18796 fn cast(syntax: SyntaxNode) -> Option<Self> {
18797 if Self::can_cast(syntax.kind()) {
18798 Some(Self { syntax })
18799 } else {
18800 None
18801 }
18802 }
18803 #[inline]
18804 fn syntax(&self) -> &SyntaxNode {
18805 &self.syntax
18806 }
18807}
18808impl AstNode for CastExpr {
18809 #[inline]
18810 fn can_cast(kind: SyntaxKind) -> bool {
18811 kind == SyntaxKind::CAST_EXPR
18812 }
18813 #[inline]
18814 fn cast(syntax: SyntaxNode) -> Option<Self> {
18815 if Self::can_cast(syntax.kind()) {
18816 Some(Self { syntax })
18817 } else {
18818 None
18819 }
18820 }
18821 #[inline]
18822 fn syntax(&self) -> &SyntaxNode {
18823 &self.syntax
18824 }
18825}
18826impl AstNode for CastSig {
18827 #[inline]
18828 fn can_cast(kind: SyntaxKind) -> bool {
18829 kind == SyntaxKind::CAST_SIG
18830 }
18831 #[inline]
18832 fn cast(syntax: SyntaxNode) -> Option<Self> {
18833 if Self::can_cast(syntax.kind()) {
18834 Some(Self { syntax })
18835 } else {
18836 None
18837 }
18838 }
18839 #[inline]
18840 fn syntax(&self) -> &SyntaxNode {
18841 &self.syntax
18842 }
18843}
18844impl AstNode for CharType {
18845 #[inline]
18846 fn can_cast(kind: SyntaxKind) -> bool {
18847 kind == SyntaxKind::CHAR_TYPE
18848 }
18849 #[inline]
18850 fn cast(syntax: SyntaxNode) -> Option<Self> {
18851 if Self::can_cast(syntax.kind()) {
18852 Some(Self { syntax })
18853 } else {
18854 None
18855 }
18856 }
18857 #[inline]
18858 fn syntax(&self) -> &SyntaxNode {
18859 &self.syntax
18860 }
18861}
18862impl AstNode for CheckConstraint {
18863 #[inline]
18864 fn can_cast(kind: SyntaxKind) -> bool {
18865 kind == SyntaxKind::CHECK_CONSTRAINT
18866 }
18867 #[inline]
18868 fn cast(syntax: SyntaxNode) -> Option<Self> {
18869 if Self::can_cast(syntax.kind()) {
18870 Some(Self { syntax })
18871 } else {
18872 None
18873 }
18874 }
18875 #[inline]
18876 fn syntax(&self) -> &SyntaxNode {
18877 &self.syntax
18878 }
18879}
18880impl AstNode for Checkpoint {
18881 #[inline]
18882 fn can_cast(kind: SyntaxKind) -> bool {
18883 kind == SyntaxKind::CHECKPOINT
18884 }
18885 #[inline]
18886 fn cast(syntax: SyntaxNode) -> Option<Self> {
18887 if Self::can_cast(syntax.kind()) {
18888 Some(Self { syntax })
18889 } else {
18890 None
18891 }
18892 }
18893 #[inline]
18894 fn syntax(&self) -> &SyntaxNode {
18895 &self.syntax
18896 }
18897}
18898impl AstNode for Close {
18899 #[inline]
18900 fn can_cast(kind: SyntaxKind) -> bool {
18901 kind == SyntaxKind::CLOSE
18902 }
18903 #[inline]
18904 fn cast(syntax: SyntaxNode) -> Option<Self> {
18905 if Self::can_cast(syntax.kind()) {
18906 Some(Self { syntax })
18907 } else {
18908 None
18909 }
18910 }
18911 #[inline]
18912 fn syntax(&self) -> &SyntaxNode {
18913 &self.syntax
18914 }
18915}
18916impl AstNode for Cluster {
18917 #[inline]
18918 fn can_cast(kind: SyntaxKind) -> bool {
18919 kind == SyntaxKind::CLUSTER
18920 }
18921 #[inline]
18922 fn cast(syntax: SyntaxNode) -> Option<Self> {
18923 if Self::can_cast(syntax.kind()) {
18924 Some(Self { syntax })
18925 } else {
18926 None
18927 }
18928 }
18929 #[inline]
18930 fn syntax(&self) -> &SyntaxNode {
18931 &self.syntax
18932 }
18933}
18934impl AstNode for ClusterOn {
18935 #[inline]
18936 fn can_cast(kind: SyntaxKind) -> bool {
18937 kind == SyntaxKind::CLUSTER_ON
18938 }
18939 #[inline]
18940 fn cast(syntax: SyntaxNode) -> Option<Self> {
18941 if Self::can_cast(syntax.kind()) {
18942 Some(Self { syntax })
18943 } else {
18944 None
18945 }
18946 }
18947 #[inline]
18948 fn syntax(&self) -> &SyntaxNode {
18949 &self.syntax
18950 }
18951}
18952impl AstNode for Collate {
18953 #[inline]
18954 fn can_cast(kind: SyntaxKind) -> bool {
18955 kind == SyntaxKind::COLLATE
18956 }
18957 #[inline]
18958 fn cast(syntax: SyntaxNode) -> Option<Self> {
18959 if Self::can_cast(syntax.kind()) {
18960 Some(Self { syntax })
18961 } else {
18962 None
18963 }
18964 }
18965 #[inline]
18966 fn syntax(&self) -> &SyntaxNode {
18967 &self.syntax
18968 }
18969}
18970impl AstNode for ColonColon {
18971 #[inline]
18972 fn can_cast(kind: SyntaxKind) -> bool {
18973 kind == SyntaxKind::COLON_COLON
18974 }
18975 #[inline]
18976 fn cast(syntax: SyntaxNode) -> Option<Self> {
18977 if Self::can_cast(syntax.kind()) {
18978 Some(Self { syntax })
18979 } else {
18980 None
18981 }
18982 }
18983 #[inline]
18984 fn syntax(&self) -> &SyntaxNode {
18985 &self.syntax
18986 }
18987}
18988impl AstNode for ColonEq {
18989 #[inline]
18990 fn can_cast(kind: SyntaxKind) -> bool {
18991 kind == SyntaxKind::COLON_EQ
18992 }
18993 #[inline]
18994 fn cast(syntax: SyntaxNode) -> Option<Self> {
18995 if Self::can_cast(syntax.kind()) {
18996 Some(Self { syntax })
18997 } else {
18998 None
18999 }
19000 }
19001 #[inline]
19002 fn syntax(&self) -> &SyntaxNode {
19003 &self.syntax
19004 }
19005}
19006impl AstNode for Column {
19007 #[inline]
19008 fn can_cast(kind: SyntaxKind) -> bool {
19009 kind == SyntaxKind::COLUMN
19010 }
19011 #[inline]
19012 fn cast(syntax: SyntaxNode) -> Option<Self> {
19013 if Self::can_cast(syntax.kind()) {
19014 Some(Self { syntax })
19015 } else {
19016 None
19017 }
19018 }
19019 #[inline]
19020 fn syntax(&self) -> &SyntaxNode {
19021 &self.syntax
19022 }
19023}
19024impl AstNode for ColumnList {
19025 #[inline]
19026 fn can_cast(kind: SyntaxKind) -> bool {
19027 kind == SyntaxKind::COLUMN_LIST
19028 }
19029 #[inline]
19030 fn cast(syntax: SyntaxNode) -> Option<Self> {
19031 if Self::can_cast(syntax.kind()) {
19032 Some(Self { syntax })
19033 } else {
19034 None
19035 }
19036 }
19037 #[inline]
19038 fn syntax(&self) -> &SyntaxNode {
19039 &self.syntax
19040 }
19041}
19042impl AstNode for CommentOn {
19043 #[inline]
19044 fn can_cast(kind: SyntaxKind) -> bool {
19045 kind == SyntaxKind::COMMENT_ON
19046 }
19047 #[inline]
19048 fn cast(syntax: SyntaxNode) -> Option<Self> {
19049 if Self::can_cast(syntax.kind()) {
19050 Some(Self { syntax })
19051 } else {
19052 None
19053 }
19054 }
19055 #[inline]
19056 fn syntax(&self) -> &SyntaxNode {
19057 &self.syntax
19058 }
19059}
19060impl AstNode for Commit {
19061 #[inline]
19062 fn can_cast(kind: SyntaxKind) -> bool {
19063 kind == SyntaxKind::COMMIT
19064 }
19065 #[inline]
19066 fn cast(syntax: SyntaxNode) -> Option<Self> {
19067 if Self::can_cast(syntax.kind()) {
19068 Some(Self { syntax })
19069 } else {
19070 None
19071 }
19072 }
19073 #[inline]
19074 fn syntax(&self) -> &SyntaxNode {
19075 &self.syntax
19076 }
19077}
19078impl AstNode for CompoundSelect {
19079 #[inline]
19080 fn can_cast(kind: SyntaxKind) -> bool {
19081 kind == SyntaxKind::COMPOUND_SELECT
19082 }
19083 #[inline]
19084 fn cast(syntax: SyntaxNode) -> Option<Self> {
19085 if Self::can_cast(syntax.kind()) {
19086 Some(Self { syntax })
19087 } else {
19088 None
19089 }
19090 }
19091 #[inline]
19092 fn syntax(&self) -> &SyntaxNode {
19093 &self.syntax
19094 }
19095}
19096impl AstNode for CompressionMethod {
19097 #[inline]
19098 fn can_cast(kind: SyntaxKind) -> bool {
19099 kind == SyntaxKind::COMPRESSION_METHOD
19100 }
19101 #[inline]
19102 fn cast(syntax: SyntaxNode) -> Option<Self> {
19103 if Self::can_cast(syntax.kind()) {
19104 Some(Self { syntax })
19105 } else {
19106 None
19107 }
19108 }
19109 #[inline]
19110 fn syntax(&self) -> &SyntaxNode {
19111 &self.syntax
19112 }
19113}
19114impl AstNode for ConflictDoNothing {
19115 #[inline]
19116 fn can_cast(kind: SyntaxKind) -> bool {
19117 kind == SyntaxKind::CONFLICT_DO_NOTHING
19118 }
19119 #[inline]
19120 fn cast(syntax: SyntaxNode) -> Option<Self> {
19121 if Self::can_cast(syntax.kind()) {
19122 Some(Self { syntax })
19123 } else {
19124 None
19125 }
19126 }
19127 #[inline]
19128 fn syntax(&self) -> &SyntaxNode {
19129 &self.syntax
19130 }
19131}
19132impl AstNode for ConflictDoUpdateSet {
19133 #[inline]
19134 fn can_cast(kind: SyntaxKind) -> bool {
19135 kind == SyntaxKind::CONFLICT_DO_UPDATE_SET
19136 }
19137 #[inline]
19138 fn cast(syntax: SyntaxNode) -> Option<Self> {
19139 if Self::can_cast(syntax.kind()) {
19140 Some(Self { syntax })
19141 } else {
19142 None
19143 }
19144 }
19145 #[inline]
19146 fn syntax(&self) -> &SyntaxNode {
19147 &self.syntax
19148 }
19149}
19150impl AstNode for ConflictIndexItem {
19151 #[inline]
19152 fn can_cast(kind: SyntaxKind) -> bool {
19153 kind == SyntaxKind::CONFLICT_INDEX_ITEM
19154 }
19155 #[inline]
19156 fn cast(syntax: SyntaxNode) -> Option<Self> {
19157 if Self::can_cast(syntax.kind()) {
19158 Some(Self { syntax })
19159 } else {
19160 None
19161 }
19162 }
19163 #[inline]
19164 fn syntax(&self) -> &SyntaxNode {
19165 &self.syntax
19166 }
19167}
19168impl AstNode for ConflictIndexItemList {
19169 #[inline]
19170 fn can_cast(kind: SyntaxKind) -> bool {
19171 kind == SyntaxKind::CONFLICT_INDEX_ITEM_LIST
19172 }
19173 #[inline]
19174 fn cast(syntax: SyntaxNode) -> Option<Self> {
19175 if Self::can_cast(syntax.kind()) {
19176 Some(Self { syntax })
19177 } else {
19178 None
19179 }
19180 }
19181 #[inline]
19182 fn syntax(&self) -> &SyntaxNode {
19183 &self.syntax
19184 }
19185}
19186impl AstNode for ConflictOnConstraint {
19187 #[inline]
19188 fn can_cast(kind: SyntaxKind) -> bool {
19189 kind == SyntaxKind::CONFLICT_ON_CONSTRAINT
19190 }
19191 #[inline]
19192 fn cast(syntax: SyntaxNode) -> Option<Self> {
19193 if Self::can_cast(syntax.kind()) {
19194 Some(Self { syntax })
19195 } else {
19196 None
19197 }
19198 }
19199 #[inline]
19200 fn syntax(&self) -> &SyntaxNode {
19201 &self.syntax
19202 }
19203}
19204impl AstNode for ConflictOnIndex {
19205 #[inline]
19206 fn can_cast(kind: SyntaxKind) -> bool {
19207 kind == SyntaxKind::CONFLICT_ON_INDEX
19208 }
19209 #[inline]
19210 fn cast(syntax: SyntaxNode) -> Option<Self> {
19211 if Self::can_cast(syntax.kind()) {
19212 Some(Self { syntax })
19213 } else {
19214 None
19215 }
19216 }
19217 #[inline]
19218 fn syntax(&self) -> &SyntaxNode {
19219 &self.syntax
19220 }
19221}
19222impl AstNode for ConstraintExclusion {
19223 #[inline]
19224 fn can_cast(kind: SyntaxKind) -> bool {
19225 kind == SyntaxKind::CONSTRAINT_EXCLUSION
19226 }
19227 #[inline]
19228 fn cast(syntax: SyntaxNode) -> Option<Self> {
19229 if Self::can_cast(syntax.kind()) {
19230 Some(Self { syntax })
19231 } else {
19232 None
19233 }
19234 }
19235 #[inline]
19236 fn syntax(&self) -> &SyntaxNode {
19237 &self.syntax
19238 }
19239}
19240impl AstNode for ConstraintExclusionList {
19241 #[inline]
19242 fn can_cast(kind: SyntaxKind) -> bool {
19243 kind == SyntaxKind::CONSTRAINT_EXCLUSION_LIST
19244 }
19245 #[inline]
19246 fn cast(syntax: SyntaxNode) -> Option<Self> {
19247 if Self::can_cast(syntax.kind()) {
19248 Some(Self { syntax })
19249 } else {
19250 None
19251 }
19252 }
19253 #[inline]
19254 fn syntax(&self) -> &SyntaxNode {
19255 &self.syntax
19256 }
19257}
19258impl AstNode for ConstraintIncludeClause {
19259 #[inline]
19260 fn can_cast(kind: SyntaxKind) -> bool {
19261 kind == SyntaxKind::CONSTRAINT_INCLUDE_CLAUSE
19262 }
19263 #[inline]
19264 fn cast(syntax: SyntaxNode) -> Option<Self> {
19265 if Self::can_cast(syntax.kind()) {
19266 Some(Self { syntax })
19267 } else {
19268 None
19269 }
19270 }
19271 #[inline]
19272 fn syntax(&self) -> &SyntaxNode {
19273 &self.syntax
19274 }
19275}
19276impl AstNode for ConstraintIndexMethod {
19277 #[inline]
19278 fn can_cast(kind: SyntaxKind) -> bool {
19279 kind == SyntaxKind::CONSTRAINT_INDEX_METHOD
19280 }
19281 #[inline]
19282 fn cast(syntax: SyntaxNode) -> Option<Self> {
19283 if Self::can_cast(syntax.kind()) {
19284 Some(Self { syntax })
19285 } else {
19286 None
19287 }
19288 }
19289 #[inline]
19290 fn syntax(&self) -> &SyntaxNode {
19291 &self.syntax
19292 }
19293}
19294impl AstNode for ConstraintIndexTablespace {
19295 #[inline]
19296 fn can_cast(kind: SyntaxKind) -> bool {
19297 kind == SyntaxKind::CONSTRAINT_INDEX_TABLESPACE
19298 }
19299 #[inline]
19300 fn cast(syntax: SyntaxNode) -> Option<Self> {
19301 if Self::can_cast(syntax.kind()) {
19302 Some(Self { syntax })
19303 } else {
19304 None
19305 }
19306 }
19307 #[inline]
19308 fn syntax(&self) -> &SyntaxNode {
19309 &self.syntax
19310 }
19311}
19312impl AstNode for ConstraintName {
19313 #[inline]
19314 fn can_cast(kind: SyntaxKind) -> bool {
19315 kind == SyntaxKind::CONSTRAINT_NAME
19316 }
19317 #[inline]
19318 fn cast(syntax: SyntaxNode) -> Option<Self> {
19319 if Self::can_cast(syntax.kind()) {
19320 Some(Self { syntax })
19321 } else {
19322 None
19323 }
19324 }
19325 #[inline]
19326 fn syntax(&self) -> &SyntaxNode {
19327 &self.syntax
19328 }
19329}
19330impl AstNode for Copy {
19331 #[inline]
19332 fn can_cast(kind: SyntaxKind) -> bool {
19333 kind == SyntaxKind::COPY
19334 }
19335 #[inline]
19336 fn cast(syntax: SyntaxNode) -> Option<Self> {
19337 if Self::can_cast(syntax.kind()) {
19338 Some(Self { syntax })
19339 } else {
19340 None
19341 }
19342 }
19343 #[inline]
19344 fn syntax(&self) -> &SyntaxNode {
19345 &self.syntax
19346 }
19347}
19348impl AstNode for CopyOption {
19349 #[inline]
19350 fn can_cast(kind: SyntaxKind) -> bool {
19351 kind == SyntaxKind::COPY_OPTION
19352 }
19353 #[inline]
19354 fn cast(syntax: SyntaxNode) -> Option<Self> {
19355 if Self::can_cast(syntax.kind()) {
19356 Some(Self { syntax })
19357 } else {
19358 None
19359 }
19360 }
19361 #[inline]
19362 fn syntax(&self) -> &SyntaxNode {
19363 &self.syntax
19364 }
19365}
19366impl AstNode for CopyOptionList {
19367 #[inline]
19368 fn can_cast(kind: SyntaxKind) -> bool {
19369 kind == SyntaxKind::COPY_OPTION_LIST
19370 }
19371 #[inline]
19372 fn cast(syntax: SyntaxNode) -> Option<Self> {
19373 if Self::can_cast(syntax.kind()) {
19374 Some(Self { syntax })
19375 } else {
19376 None
19377 }
19378 }
19379 #[inline]
19380 fn syntax(&self) -> &SyntaxNode {
19381 &self.syntax
19382 }
19383}
19384impl AstNode for CostFuncOption {
19385 #[inline]
19386 fn can_cast(kind: SyntaxKind) -> bool {
19387 kind == SyntaxKind::COST_FUNC_OPTION
19388 }
19389 #[inline]
19390 fn cast(syntax: SyntaxNode) -> Option<Self> {
19391 if Self::can_cast(syntax.kind()) {
19392 Some(Self { syntax })
19393 } else {
19394 None
19395 }
19396 }
19397 #[inline]
19398 fn syntax(&self) -> &SyntaxNode {
19399 &self.syntax
19400 }
19401}
19402impl AstNode for CreateAccessMethod {
19403 #[inline]
19404 fn can_cast(kind: SyntaxKind) -> bool {
19405 kind == SyntaxKind::CREATE_ACCESS_METHOD
19406 }
19407 #[inline]
19408 fn cast(syntax: SyntaxNode) -> Option<Self> {
19409 if Self::can_cast(syntax.kind()) {
19410 Some(Self { syntax })
19411 } else {
19412 None
19413 }
19414 }
19415 #[inline]
19416 fn syntax(&self) -> &SyntaxNode {
19417 &self.syntax
19418 }
19419}
19420impl AstNode for CreateAggregate {
19421 #[inline]
19422 fn can_cast(kind: SyntaxKind) -> bool {
19423 kind == SyntaxKind::CREATE_AGGREGATE
19424 }
19425 #[inline]
19426 fn cast(syntax: SyntaxNode) -> Option<Self> {
19427 if Self::can_cast(syntax.kind()) {
19428 Some(Self { syntax })
19429 } else {
19430 None
19431 }
19432 }
19433 #[inline]
19434 fn syntax(&self) -> &SyntaxNode {
19435 &self.syntax
19436 }
19437}
19438impl AstNode for CreateCast {
19439 #[inline]
19440 fn can_cast(kind: SyntaxKind) -> bool {
19441 kind == SyntaxKind::CREATE_CAST
19442 }
19443 #[inline]
19444 fn cast(syntax: SyntaxNode) -> Option<Self> {
19445 if Self::can_cast(syntax.kind()) {
19446 Some(Self { syntax })
19447 } else {
19448 None
19449 }
19450 }
19451 #[inline]
19452 fn syntax(&self) -> &SyntaxNode {
19453 &self.syntax
19454 }
19455}
19456impl AstNode for CreateCollation {
19457 #[inline]
19458 fn can_cast(kind: SyntaxKind) -> bool {
19459 kind == SyntaxKind::CREATE_COLLATION
19460 }
19461 #[inline]
19462 fn cast(syntax: SyntaxNode) -> Option<Self> {
19463 if Self::can_cast(syntax.kind()) {
19464 Some(Self { syntax })
19465 } else {
19466 None
19467 }
19468 }
19469 #[inline]
19470 fn syntax(&self) -> &SyntaxNode {
19471 &self.syntax
19472 }
19473}
19474impl AstNode for CreateConversion {
19475 #[inline]
19476 fn can_cast(kind: SyntaxKind) -> bool {
19477 kind == SyntaxKind::CREATE_CONVERSION
19478 }
19479 #[inline]
19480 fn cast(syntax: SyntaxNode) -> Option<Self> {
19481 if Self::can_cast(syntax.kind()) {
19482 Some(Self { syntax })
19483 } else {
19484 None
19485 }
19486 }
19487 #[inline]
19488 fn syntax(&self) -> &SyntaxNode {
19489 &self.syntax
19490 }
19491}
19492impl AstNode for CreateDatabase {
19493 #[inline]
19494 fn can_cast(kind: SyntaxKind) -> bool {
19495 kind == SyntaxKind::CREATE_DATABASE
19496 }
19497 #[inline]
19498 fn cast(syntax: SyntaxNode) -> Option<Self> {
19499 if Self::can_cast(syntax.kind()) {
19500 Some(Self { syntax })
19501 } else {
19502 None
19503 }
19504 }
19505 #[inline]
19506 fn syntax(&self) -> &SyntaxNode {
19507 &self.syntax
19508 }
19509}
19510impl AstNode for CreateDatabaseOption {
19511 #[inline]
19512 fn can_cast(kind: SyntaxKind) -> bool {
19513 kind == SyntaxKind::CREATE_DATABASE_OPTION
19514 }
19515 #[inline]
19516 fn cast(syntax: SyntaxNode) -> Option<Self> {
19517 if Self::can_cast(syntax.kind()) {
19518 Some(Self { syntax })
19519 } else {
19520 None
19521 }
19522 }
19523 #[inline]
19524 fn syntax(&self) -> &SyntaxNode {
19525 &self.syntax
19526 }
19527}
19528impl AstNode for CreateDatabaseOptionList {
19529 #[inline]
19530 fn can_cast(kind: SyntaxKind) -> bool {
19531 kind == SyntaxKind::CREATE_DATABASE_OPTION_LIST
19532 }
19533 #[inline]
19534 fn cast(syntax: SyntaxNode) -> Option<Self> {
19535 if Self::can_cast(syntax.kind()) {
19536 Some(Self { syntax })
19537 } else {
19538 None
19539 }
19540 }
19541 #[inline]
19542 fn syntax(&self) -> &SyntaxNode {
19543 &self.syntax
19544 }
19545}
19546impl AstNode for CreateDomain {
19547 #[inline]
19548 fn can_cast(kind: SyntaxKind) -> bool {
19549 kind == SyntaxKind::CREATE_DOMAIN
19550 }
19551 #[inline]
19552 fn cast(syntax: SyntaxNode) -> Option<Self> {
19553 if Self::can_cast(syntax.kind()) {
19554 Some(Self { syntax })
19555 } else {
19556 None
19557 }
19558 }
19559 #[inline]
19560 fn syntax(&self) -> &SyntaxNode {
19561 &self.syntax
19562 }
19563}
19564impl AstNode for CreateEventTrigger {
19565 #[inline]
19566 fn can_cast(kind: SyntaxKind) -> bool {
19567 kind == SyntaxKind::CREATE_EVENT_TRIGGER
19568 }
19569 #[inline]
19570 fn cast(syntax: SyntaxNode) -> Option<Self> {
19571 if Self::can_cast(syntax.kind()) {
19572 Some(Self { syntax })
19573 } else {
19574 None
19575 }
19576 }
19577 #[inline]
19578 fn syntax(&self) -> &SyntaxNode {
19579 &self.syntax
19580 }
19581}
19582impl AstNode for CreateExtension {
19583 #[inline]
19584 fn can_cast(kind: SyntaxKind) -> bool {
19585 kind == SyntaxKind::CREATE_EXTENSION
19586 }
19587 #[inline]
19588 fn cast(syntax: SyntaxNode) -> Option<Self> {
19589 if Self::can_cast(syntax.kind()) {
19590 Some(Self { syntax })
19591 } else {
19592 None
19593 }
19594 }
19595 #[inline]
19596 fn syntax(&self) -> &SyntaxNode {
19597 &self.syntax
19598 }
19599}
19600impl AstNode for CreateForeignDataWrapper {
19601 #[inline]
19602 fn can_cast(kind: SyntaxKind) -> bool {
19603 kind == SyntaxKind::CREATE_FOREIGN_DATA_WRAPPER
19604 }
19605 #[inline]
19606 fn cast(syntax: SyntaxNode) -> Option<Self> {
19607 if Self::can_cast(syntax.kind()) {
19608 Some(Self { syntax })
19609 } else {
19610 None
19611 }
19612 }
19613 #[inline]
19614 fn syntax(&self) -> &SyntaxNode {
19615 &self.syntax
19616 }
19617}
19618impl AstNode for CreateForeignTable {
19619 #[inline]
19620 fn can_cast(kind: SyntaxKind) -> bool {
19621 kind == SyntaxKind::CREATE_FOREIGN_TABLE
19622 }
19623 #[inline]
19624 fn cast(syntax: SyntaxNode) -> Option<Self> {
19625 if Self::can_cast(syntax.kind()) {
19626 Some(Self { syntax })
19627 } else {
19628 None
19629 }
19630 }
19631 #[inline]
19632 fn syntax(&self) -> &SyntaxNode {
19633 &self.syntax
19634 }
19635}
19636impl AstNode for CreateFunction {
19637 #[inline]
19638 fn can_cast(kind: SyntaxKind) -> bool {
19639 kind == SyntaxKind::CREATE_FUNCTION
19640 }
19641 #[inline]
19642 fn cast(syntax: SyntaxNode) -> Option<Self> {
19643 if Self::can_cast(syntax.kind()) {
19644 Some(Self { syntax })
19645 } else {
19646 None
19647 }
19648 }
19649 #[inline]
19650 fn syntax(&self) -> &SyntaxNode {
19651 &self.syntax
19652 }
19653}
19654impl AstNode for CreateGroup {
19655 #[inline]
19656 fn can_cast(kind: SyntaxKind) -> bool {
19657 kind == SyntaxKind::CREATE_GROUP
19658 }
19659 #[inline]
19660 fn cast(syntax: SyntaxNode) -> Option<Self> {
19661 if Self::can_cast(syntax.kind()) {
19662 Some(Self { syntax })
19663 } else {
19664 None
19665 }
19666 }
19667 #[inline]
19668 fn syntax(&self) -> &SyntaxNode {
19669 &self.syntax
19670 }
19671}
19672impl AstNode for CreateIndex {
19673 #[inline]
19674 fn can_cast(kind: SyntaxKind) -> bool {
19675 kind == SyntaxKind::CREATE_INDEX
19676 }
19677 #[inline]
19678 fn cast(syntax: SyntaxNode) -> Option<Self> {
19679 if Self::can_cast(syntax.kind()) {
19680 Some(Self { syntax })
19681 } else {
19682 None
19683 }
19684 }
19685 #[inline]
19686 fn syntax(&self) -> &SyntaxNode {
19687 &self.syntax
19688 }
19689}
19690impl AstNode for CreateLanguage {
19691 #[inline]
19692 fn can_cast(kind: SyntaxKind) -> bool {
19693 kind == SyntaxKind::CREATE_LANGUAGE
19694 }
19695 #[inline]
19696 fn cast(syntax: SyntaxNode) -> Option<Self> {
19697 if Self::can_cast(syntax.kind()) {
19698 Some(Self { syntax })
19699 } else {
19700 None
19701 }
19702 }
19703 #[inline]
19704 fn syntax(&self) -> &SyntaxNode {
19705 &self.syntax
19706 }
19707}
19708impl AstNode for CreateMaterializedView {
19709 #[inline]
19710 fn can_cast(kind: SyntaxKind) -> bool {
19711 kind == SyntaxKind::CREATE_MATERIALIZED_VIEW
19712 }
19713 #[inline]
19714 fn cast(syntax: SyntaxNode) -> Option<Self> {
19715 if Self::can_cast(syntax.kind()) {
19716 Some(Self { syntax })
19717 } else {
19718 None
19719 }
19720 }
19721 #[inline]
19722 fn syntax(&self) -> &SyntaxNode {
19723 &self.syntax
19724 }
19725}
19726impl AstNode for CreateOperator {
19727 #[inline]
19728 fn can_cast(kind: SyntaxKind) -> bool {
19729 kind == SyntaxKind::CREATE_OPERATOR
19730 }
19731 #[inline]
19732 fn cast(syntax: SyntaxNode) -> Option<Self> {
19733 if Self::can_cast(syntax.kind()) {
19734 Some(Self { syntax })
19735 } else {
19736 None
19737 }
19738 }
19739 #[inline]
19740 fn syntax(&self) -> &SyntaxNode {
19741 &self.syntax
19742 }
19743}
19744impl AstNode for CreateOperatorClass {
19745 #[inline]
19746 fn can_cast(kind: SyntaxKind) -> bool {
19747 kind == SyntaxKind::CREATE_OPERATOR_CLASS
19748 }
19749 #[inline]
19750 fn cast(syntax: SyntaxNode) -> Option<Self> {
19751 if Self::can_cast(syntax.kind()) {
19752 Some(Self { syntax })
19753 } else {
19754 None
19755 }
19756 }
19757 #[inline]
19758 fn syntax(&self) -> &SyntaxNode {
19759 &self.syntax
19760 }
19761}
19762impl AstNode for CreateOperatorFamily {
19763 #[inline]
19764 fn can_cast(kind: SyntaxKind) -> bool {
19765 kind == SyntaxKind::CREATE_OPERATOR_FAMILY
19766 }
19767 #[inline]
19768 fn cast(syntax: SyntaxNode) -> Option<Self> {
19769 if Self::can_cast(syntax.kind()) {
19770 Some(Self { syntax })
19771 } else {
19772 None
19773 }
19774 }
19775 #[inline]
19776 fn syntax(&self) -> &SyntaxNode {
19777 &self.syntax
19778 }
19779}
19780impl AstNode for CreatePolicy {
19781 #[inline]
19782 fn can_cast(kind: SyntaxKind) -> bool {
19783 kind == SyntaxKind::CREATE_POLICY
19784 }
19785 #[inline]
19786 fn cast(syntax: SyntaxNode) -> Option<Self> {
19787 if Self::can_cast(syntax.kind()) {
19788 Some(Self { syntax })
19789 } else {
19790 None
19791 }
19792 }
19793 #[inline]
19794 fn syntax(&self) -> &SyntaxNode {
19795 &self.syntax
19796 }
19797}
19798impl AstNode for CreateProcedure {
19799 #[inline]
19800 fn can_cast(kind: SyntaxKind) -> bool {
19801 kind == SyntaxKind::CREATE_PROCEDURE
19802 }
19803 #[inline]
19804 fn cast(syntax: SyntaxNode) -> Option<Self> {
19805 if Self::can_cast(syntax.kind()) {
19806 Some(Self { syntax })
19807 } else {
19808 None
19809 }
19810 }
19811 #[inline]
19812 fn syntax(&self) -> &SyntaxNode {
19813 &self.syntax
19814 }
19815}
19816impl AstNode for CreatePublication {
19817 #[inline]
19818 fn can_cast(kind: SyntaxKind) -> bool {
19819 kind == SyntaxKind::CREATE_PUBLICATION
19820 }
19821 #[inline]
19822 fn cast(syntax: SyntaxNode) -> Option<Self> {
19823 if Self::can_cast(syntax.kind()) {
19824 Some(Self { syntax })
19825 } else {
19826 None
19827 }
19828 }
19829 #[inline]
19830 fn syntax(&self) -> &SyntaxNode {
19831 &self.syntax
19832 }
19833}
19834impl AstNode for CreateRole {
19835 #[inline]
19836 fn can_cast(kind: SyntaxKind) -> bool {
19837 kind == SyntaxKind::CREATE_ROLE
19838 }
19839 #[inline]
19840 fn cast(syntax: SyntaxNode) -> Option<Self> {
19841 if Self::can_cast(syntax.kind()) {
19842 Some(Self { syntax })
19843 } else {
19844 None
19845 }
19846 }
19847 #[inline]
19848 fn syntax(&self) -> &SyntaxNode {
19849 &self.syntax
19850 }
19851}
19852impl AstNode for CreateRule {
19853 #[inline]
19854 fn can_cast(kind: SyntaxKind) -> bool {
19855 kind == SyntaxKind::CREATE_RULE
19856 }
19857 #[inline]
19858 fn cast(syntax: SyntaxNode) -> Option<Self> {
19859 if Self::can_cast(syntax.kind()) {
19860 Some(Self { syntax })
19861 } else {
19862 None
19863 }
19864 }
19865 #[inline]
19866 fn syntax(&self) -> &SyntaxNode {
19867 &self.syntax
19868 }
19869}
19870impl AstNode for CreateSchema {
19871 #[inline]
19872 fn can_cast(kind: SyntaxKind) -> bool {
19873 kind == SyntaxKind::CREATE_SCHEMA
19874 }
19875 #[inline]
19876 fn cast(syntax: SyntaxNode) -> Option<Self> {
19877 if Self::can_cast(syntax.kind()) {
19878 Some(Self { syntax })
19879 } else {
19880 None
19881 }
19882 }
19883 #[inline]
19884 fn syntax(&self) -> &SyntaxNode {
19885 &self.syntax
19886 }
19887}
19888impl AstNode for CreateSequence {
19889 #[inline]
19890 fn can_cast(kind: SyntaxKind) -> bool {
19891 kind == SyntaxKind::CREATE_SEQUENCE
19892 }
19893 #[inline]
19894 fn cast(syntax: SyntaxNode) -> Option<Self> {
19895 if Self::can_cast(syntax.kind()) {
19896 Some(Self { syntax })
19897 } else {
19898 None
19899 }
19900 }
19901 #[inline]
19902 fn syntax(&self) -> &SyntaxNode {
19903 &self.syntax
19904 }
19905}
19906impl AstNode for CreateServer {
19907 #[inline]
19908 fn can_cast(kind: SyntaxKind) -> bool {
19909 kind == SyntaxKind::CREATE_SERVER
19910 }
19911 #[inline]
19912 fn cast(syntax: SyntaxNode) -> Option<Self> {
19913 if Self::can_cast(syntax.kind()) {
19914 Some(Self { syntax })
19915 } else {
19916 None
19917 }
19918 }
19919 #[inline]
19920 fn syntax(&self) -> &SyntaxNode {
19921 &self.syntax
19922 }
19923}
19924impl AstNode for CreateStatistics {
19925 #[inline]
19926 fn can_cast(kind: SyntaxKind) -> bool {
19927 kind == SyntaxKind::CREATE_STATISTICS
19928 }
19929 #[inline]
19930 fn cast(syntax: SyntaxNode) -> Option<Self> {
19931 if Self::can_cast(syntax.kind()) {
19932 Some(Self { syntax })
19933 } else {
19934 None
19935 }
19936 }
19937 #[inline]
19938 fn syntax(&self) -> &SyntaxNode {
19939 &self.syntax
19940 }
19941}
19942impl AstNode for CreateSubscription {
19943 #[inline]
19944 fn can_cast(kind: SyntaxKind) -> bool {
19945 kind == SyntaxKind::CREATE_SUBSCRIPTION
19946 }
19947 #[inline]
19948 fn cast(syntax: SyntaxNode) -> Option<Self> {
19949 if Self::can_cast(syntax.kind()) {
19950 Some(Self { syntax })
19951 } else {
19952 None
19953 }
19954 }
19955 #[inline]
19956 fn syntax(&self) -> &SyntaxNode {
19957 &self.syntax
19958 }
19959}
19960impl AstNode for CreateTable {
19961 #[inline]
19962 fn can_cast(kind: SyntaxKind) -> bool {
19963 kind == SyntaxKind::CREATE_TABLE
19964 }
19965 #[inline]
19966 fn cast(syntax: SyntaxNode) -> Option<Self> {
19967 if Self::can_cast(syntax.kind()) {
19968 Some(Self { syntax })
19969 } else {
19970 None
19971 }
19972 }
19973 #[inline]
19974 fn syntax(&self) -> &SyntaxNode {
19975 &self.syntax
19976 }
19977}
19978impl AstNode for CreateTableAs {
19979 #[inline]
19980 fn can_cast(kind: SyntaxKind) -> bool {
19981 kind == SyntaxKind::CREATE_TABLE_AS
19982 }
19983 #[inline]
19984 fn cast(syntax: SyntaxNode) -> Option<Self> {
19985 if Self::can_cast(syntax.kind()) {
19986 Some(Self { syntax })
19987 } else {
19988 None
19989 }
19990 }
19991 #[inline]
19992 fn syntax(&self) -> &SyntaxNode {
19993 &self.syntax
19994 }
19995}
19996impl AstNode for CreateTablespace {
19997 #[inline]
19998 fn can_cast(kind: SyntaxKind) -> bool {
19999 kind == SyntaxKind::CREATE_TABLESPACE
20000 }
20001 #[inline]
20002 fn cast(syntax: SyntaxNode) -> Option<Self> {
20003 if Self::can_cast(syntax.kind()) {
20004 Some(Self { syntax })
20005 } else {
20006 None
20007 }
20008 }
20009 #[inline]
20010 fn syntax(&self) -> &SyntaxNode {
20011 &self.syntax
20012 }
20013}
20014impl AstNode for CreateTextSearchConfiguration {
20015 #[inline]
20016 fn can_cast(kind: SyntaxKind) -> bool {
20017 kind == SyntaxKind::CREATE_TEXT_SEARCH_CONFIGURATION
20018 }
20019 #[inline]
20020 fn cast(syntax: SyntaxNode) -> Option<Self> {
20021 if Self::can_cast(syntax.kind()) {
20022 Some(Self { syntax })
20023 } else {
20024 None
20025 }
20026 }
20027 #[inline]
20028 fn syntax(&self) -> &SyntaxNode {
20029 &self.syntax
20030 }
20031}
20032impl AstNode for CreateTextSearchDictionary {
20033 #[inline]
20034 fn can_cast(kind: SyntaxKind) -> bool {
20035 kind == SyntaxKind::CREATE_TEXT_SEARCH_DICTIONARY
20036 }
20037 #[inline]
20038 fn cast(syntax: SyntaxNode) -> Option<Self> {
20039 if Self::can_cast(syntax.kind()) {
20040 Some(Self { syntax })
20041 } else {
20042 None
20043 }
20044 }
20045 #[inline]
20046 fn syntax(&self) -> &SyntaxNode {
20047 &self.syntax
20048 }
20049}
20050impl AstNode for CreateTextSearchParser {
20051 #[inline]
20052 fn can_cast(kind: SyntaxKind) -> bool {
20053 kind == SyntaxKind::CREATE_TEXT_SEARCH_PARSER
20054 }
20055 #[inline]
20056 fn cast(syntax: SyntaxNode) -> Option<Self> {
20057 if Self::can_cast(syntax.kind()) {
20058 Some(Self { syntax })
20059 } else {
20060 None
20061 }
20062 }
20063 #[inline]
20064 fn syntax(&self) -> &SyntaxNode {
20065 &self.syntax
20066 }
20067}
20068impl AstNode for CreateTextSearchTemplate {
20069 #[inline]
20070 fn can_cast(kind: SyntaxKind) -> bool {
20071 kind == SyntaxKind::CREATE_TEXT_SEARCH_TEMPLATE
20072 }
20073 #[inline]
20074 fn cast(syntax: SyntaxNode) -> Option<Self> {
20075 if Self::can_cast(syntax.kind()) {
20076 Some(Self { syntax })
20077 } else {
20078 None
20079 }
20080 }
20081 #[inline]
20082 fn syntax(&self) -> &SyntaxNode {
20083 &self.syntax
20084 }
20085}
20086impl AstNode for CreateTransform {
20087 #[inline]
20088 fn can_cast(kind: SyntaxKind) -> bool {
20089 kind == SyntaxKind::CREATE_TRANSFORM
20090 }
20091 #[inline]
20092 fn cast(syntax: SyntaxNode) -> Option<Self> {
20093 if Self::can_cast(syntax.kind()) {
20094 Some(Self { syntax })
20095 } else {
20096 None
20097 }
20098 }
20099 #[inline]
20100 fn syntax(&self) -> &SyntaxNode {
20101 &self.syntax
20102 }
20103}
20104impl AstNode for CreateTrigger {
20105 #[inline]
20106 fn can_cast(kind: SyntaxKind) -> bool {
20107 kind == SyntaxKind::CREATE_TRIGGER
20108 }
20109 #[inline]
20110 fn cast(syntax: SyntaxNode) -> Option<Self> {
20111 if Self::can_cast(syntax.kind()) {
20112 Some(Self { syntax })
20113 } else {
20114 None
20115 }
20116 }
20117 #[inline]
20118 fn syntax(&self) -> &SyntaxNode {
20119 &self.syntax
20120 }
20121}
20122impl AstNode for CreateType {
20123 #[inline]
20124 fn can_cast(kind: SyntaxKind) -> bool {
20125 kind == SyntaxKind::CREATE_TYPE
20126 }
20127 #[inline]
20128 fn cast(syntax: SyntaxNode) -> Option<Self> {
20129 if Self::can_cast(syntax.kind()) {
20130 Some(Self { syntax })
20131 } else {
20132 None
20133 }
20134 }
20135 #[inline]
20136 fn syntax(&self) -> &SyntaxNode {
20137 &self.syntax
20138 }
20139}
20140impl AstNode for CreateUser {
20141 #[inline]
20142 fn can_cast(kind: SyntaxKind) -> bool {
20143 kind == SyntaxKind::CREATE_USER
20144 }
20145 #[inline]
20146 fn cast(syntax: SyntaxNode) -> Option<Self> {
20147 if Self::can_cast(syntax.kind()) {
20148 Some(Self { syntax })
20149 } else {
20150 None
20151 }
20152 }
20153 #[inline]
20154 fn syntax(&self) -> &SyntaxNode {
20155 &self.syntax
20156 }
20157}
20158impl AstNode for CreateUserMapping {
20159 #[inline]
20160 fn can_cast(kind: SyntaxKind) -> bool {
20161 kind == SyntaxKind::CREATE_USER_MAPPING
20162 }
20163 #[inline]
20164 fn cast(syntax: SyntaxNode) -> Option<Self> {
20165 if Self::can_cast(syntax.kind()) {
20166 Some(Self { syntax })
20167 } else {
20168 None
20169 }
20170 }
20171 #[inline]
20172 fn syntax(&self) -> &SyntaxNode {
20173 &self.syntax
20174 }
20175}
20176impl AstNode for CreateView {
20177 #[inline]
20178 fn can_cast(kind: SyntaxKind) -> bool {
20179 kind == SyntaxKind::CREATE_VIEW
20180 }
20181 #[inline]
20182 fn cast(syntax: SyntaxNode) -> Option<Self> {
20183 if Self::can_cast(syntax.kind()) {
20184 Some(Self { syntax })
20185 } else {
20186 None
20187 }
20188 }
20189 #[inline]
20190 fn syntax(&self) -> &SyntaxNode {
20191 &self.syntax
20192 }
20193}
20194impl AstNode for CustomOp {
20195 #[inline]
20196 fn can_cast(kind: SyntaxKind) -> bool {
20197 kind == SyntaxKind::CUSTOM_OP
20198 }
20199 #[inline]
20200 fn cast(syntax: SyntaxNode) -> Option<Self> {
20201 if Self::can_cast(syntax.kind()) {
20202 Some(Self { syntax })
20203 } else {
20204 None
20205 }
20206 }
20207 #[inline]
20208 fn syntax(&self) -> &SyntaxNode {
20209 &self.syntax
20210 }
20211}
20212impl AstNode for Deallocate {
20213 #[inline]
20214 fn can_cast(kind: SyntaxKind) -> bool {
20215 kind == SyntaxKind::DEALLOCATE
20216 }
20217 #[inline]
20218 fn cast(syntax: SyntaxNode) -> Option<Self> {
20219 if Self::can_cast(syntax.kind()) {
20220 Some(Self { syntax })
20221 } else {
20222 None
20223 }
20224 }
20225 #[inline]
20226 fn syntax(&self) -> &SyntaxNode {
20227 &self.syntax
20228 }
20229}
20230impl AstNode for Declare {
20231 #[inline]
20232 fn can_cast(kind: SyntaxKind) -> bool {
20233 kind == SyntaxKind::DECLARE
20234 }
20235 #[inline]
20236 fn cast(syntax: SyntaxNode) -> Option<Self> {
20237 if Self::can_cast(syntax.kind()) {
20238 Some(Self { syntax })
20239 } else {
20240 None
20241 }
20242 }
20243 #[inline]
20244 fn syntax(&self) -> &SyntaxNode {
20245 &self.syntax
20246 }
20247}
20248impl AstNode for DefaultConstraint {
20249 #[inline]
20250 fn can_cast(kind: SyntaxKind) -> bool {
20251 kind == SyntaxKind::DEFAULT_CONSTRAINT
20252 }
20253 #[inline]
20254 fn cast(syntax: SyntaxNode) -> Option<Self> {
20255 if Self::can_cast(syntax.kind()) {
20256 Some(Self { syntax })
20257 } else {
20258 None
20259 }
20260 }
20261 #[inline]
20262 fn syntax(&self) -> &SyntaxNode {
20263 &self.syntax
20264 }
20265}
20266impl AstNode for Deferrable {
20267 #[inline]
20268 fn can_cast(kind: SyntaxKind) -> bool {
20269 kind == SyntaxKind::DEFERRABLE
20270 }
20271 #[inline]
20272 fn cast(syntax: SyntaxNode) -> Option<Self> {
20273 if Self::can_cast(syntax.kind()) {
20274 Some(Self { syntax })
20275 } else {
20276 None
20277 }
20278 }
20279 #[inline]
20280 fn syntax(&self) -> &SyntaxNode {
20281 &self.syntax
20282 }
20283}
20284impl AstNode for DeferrableConstraintOption {
20285 #[inline]
20286 fn can_cast(kind: SyntaxKind) -> bool {
20287 kind == SyntaxKind::DEFERRABLE_CONSTRAINT_OPTION
20288 }
20289 #[inline]
20290 fn cast(syntax: SyntaxNode) -> Option<Self> {
20291 if Self::can_cast(syntax.kind()) {
20292 Some(Self { syntax })
20293 } else {
20294 None
20295 }
20296 }
20297 #[inline]
20298 fn syntax(&self) -> &SyntaxNode {
20299 &self.syntax
20300 }
20301}
20302impl AstNode for Delete {
20303 #[inline]
20304 fn can_cast(kind: SyntaxKind) -> bool {
20305 kind == SyntaxKind::DELETE
20306 }
20307 #[inline]
20308 fn cast(syntax: SyntaxNode) -> Option<Self> {
20309 if Self::can_cast(syntax.kind()) {
20310 Some(Self { syntax })
20311 } else {
20312 None
20313 }
20314 }
20315 #[inline]
20316 fn syntax(&self) -> &SyntaxNode {
20317 &self.syntax
20318 }
20319}
20320impl AstNode for DeleteRows {
20321 #[inline]
20322 fn can_cast(kind: SyntaxKind) -> bool {
20323 kind == SyntaxKind::DELETE_ROWS
20324 }
20325 #[inline]
20326 fn cast(syntax: SyntaxNode) -> Option<Self> {
20327 if Self::can_cast(syntax.kind()) {
20328 Some(Self { syntax })
20329 } else {
20330 None
20331 }
20332 }
20333 #[inline]
20334 fn syntax(&self) -> &SyntaxNode {
20335 &self.syntax
20336 }
20337}
20338impl AstNode for DependsOnExtension {
20339 #[inline]
20340 fn can_cast(kind: SyntaxKind) -> bool {
20341 kind == SyntaxKind::DEPENDS_ON_EXTENSION
20342 }
20343 #[inline]
20344 fn cast(syntax: SyntaxNode) -> Option<Self> {
20345 if Self::can_cast(syntax.kind()) {
20346 Some(Self { syntax })
20347 } else {
20348 None
20349 }
20350 }
20351 #[inline]
20352 fn syntax(&self) -> &SyntaxNode {
20353 &self.syntax
20354 }
20355}
20356impl AstNode for DetachPartition {
20357 #[inline]
20358 fn can_cast(kind: SyntaxKind) -> bool {
20359 kind == SyntaxKind::DETACH_PARTITION
20360 }
20361 #[inline]
20362 fn cast(syntax: SyntaxNode) -> Option<Self> {
20363 if Self::can_cast(syntax.kind()) {
20364 Some(Self { syntax })
20365 } else {
20366 None
20367 }
20368 }
20369 #[inline]
20370 fn syntax(&self) -> &SyntaxNode {
20371 &self.syntax
20372 }
20373}
20374impl AstNode for DisableRls {
20375 #[inline]
20376 fn can_cast(kind: SyntaxKind) -> bool {
20377 kind == SyntaxKind::DISABLE_RLS
20378 }
20379 #[inline]
20380 fn cast(syntax: SyntaxNode) -> Option<Self> {
20381 if Self::can_cast(syntax.kind()) {
20382 Some(Self { syntax })
20383 } else {
20384 None
20385 }
20386 }
20387 #[inline]
20388 fn syntax(&self) -> &SyntaxNode {
20389 &self.syntax
20390 }
20391}
20392impl AstNode for DisableRule {
20393 #[inline]
20394 fn can_cast(kind: SyntaxKind) -> bool {
20395 kind == SyntaxKind::DISABLE_RULE
20396 }
20397 #[inline]
20398 fn cast(syntax: SyntaxNode) -> Option<Self> {
20399 if Self::can_cast(syntax.kind()) {
20400 Some(Self { syntax })
20401 } else {
20402 None
20403 }
20404 }
20405 #[inline]
20406 fn syntax(&self) -> &SyntaxNode {
20407 &self.syntax
20408 }
20409}
20410impl AstNode for DisableTrigger {
20411 #[inline]
20412 fn can_cast(kind: SyntaxKind) -> bool {
20413 kind == SyntaxKind::DISABLE_TRIGGER
20414 }
20415 #[inline]
20416 fn cast(syntax: SyntaxNode) -> Option<Self> {
20417 if Self::can_cast(syntax.kind()) {
20418 Some(Self { syntax })
20419 } else {
20420 None
20421 }
20422 }
20423 #[inline]
20424 fn syntax(&self) -> &SyntaxNode {
20425 &self.syntax
20426 }
20427}
20428impl AstNode for Discard {
20429 #[inline]
20430 fn can_cast(kind: SyntaxKind) -> bool {
20431 kind == SyntaxKind::DISCARD
20432 }
20433 #[inline]
20434 fn cast(syntax: SyntaxNode) -> Option<Self> {
20435 if Self::can_cast(syntax.kind()) {
20436 Some(Self { syntax })
20437 } else {
20438 None
20439 }
20440 }
20441 #[inline]
20442 fn syntax(&self) -> &SyntaxNode {
20443 &self.syntax
20444 }
20445}
20446impl AstNode for DistinctClause {
20447 #[inline]
20448 fn can_cast(kind: SyntaxKind) -> bool {
20449 kind == SyntaxKind::DISTINCT_CLAUSE
20450 }
20451 #[inline]
20452 fn cast(syntax: SyntaxNode) -> Option<Self> {
20453 if Self::can_cast(syntax.kind()) {
20454 Some(Self { syntax })
20455 } else {
20456 None
20457 }
20458 }
20459 #[inline]
20460 fn syntax(&self) -> &SyntaxNode {
20461 &self.syntax
20462 }
20463}
20464impl AstNode for Do {
20465 #[inline]
20466 fn can_cast(kind: SyntaxKind) -> bool {
20467 kind == SyntaxKind::DO
20468 }
20469 #[inline]
20470 fn cast(syntax: SyntaxNode) -> Option<Self> {
20471 if Self::can_cast(syntax.kind()) {
20472 Some(Self { syntax })
20473 } else {
20474 None
20475 }
20476 }
20477 #[inline]
20478 fn syntax(&self) -> &SyntaxNode {
20479 &self.syntax
20480 }
20481}
20482impl AstNode for DoubleType {
20483 #[inline]
20484 fn can_cast(kind: SyntaxKind) -> bool {
20485 kind == SyntaxKind::DOUBLE_TYPE
20486 }
20487 #[inline]
20488 fn cast(syntax: SyntaxNode) -> Option<Self> {
20489 if Self::can_cast(syntax.kind()) {
20490 Some(Self { syntax })
20491 } else {
20492 None
20493 }
20494 }
20495 #[inline]
20496 fn syntax(&self) -> &SyntaxNode {
20497 &self.syntax
20498 }
20499}
20500impl AstNode for Drop {
20501 #[inline]
20502 fn can_cast(kind: SyntaxKind) -> bool {
20503 kind == SyntaxKind::DROP
20504 }
20505 #[inline]
20506 fn cast(syntax: SyntaxNode) -> Option<Self> {
20507 if Self::can_cast(syntax.kind()) {
20508 Some(Self { syntax })
20509 } else {
20510 None
20511 }
20512 }
20513 #[inline]
20514 fn syntax(&self) -> &SyntaxNode {
20515 &self.syntax
20516 }
20517}
20518impl AstNode for DropAccessMethod {
20519 #[inline]
20520 fn can_cast(kind: SyntaxKind) -> bool {
20521 kind == SyntaxKind::DROP_ACCESS_METHOD
20522 }
20523 #[inline]
20524 fn cast(syntax: SyntaxNode) -> Option<Self> {
20525 if Self::can_cast(syntax.kind()) {
20526 Some(Self { syntax })
20527 } else {
20528 None
20529 }
20530 }
20531 #[inline]
20532 fn syntax(&self) -> &SyntaxNode {
20533 &self.syntax
20534 }
20535}
20536impl AstNode for DropAggregate {
20537 #[inline]
20538 fn can_cast(kind: SyntaxKind) -> bool {
20539 kind == SyntaxKind::DROP_AGGREGATE
20540 }
20541 #[inline]
20542 fn cast(syntax: SyntaxNode) -> Option<Self> {
20543 if Self::can_cast(syntax.kind()) {
20544 Some(Self { syntax })
20545 } else {
20546 None
20547 }
20548 }
20549 #[inline]
20550 fn syntax(&self) -> &SyntaxNode {
20551 &self.syntax
20552 }
20553}
20554impl AstNode for DropCast {
20555 #[inline]
20556 fn can_cast(kind: SyntaxKind) -> bool {
20557 kind == SyntaxKind::DROP_CAST
20558 }
20559 #[inline]
20560 fn cast(syntax: SyntaxNode) -> Option<Self> {
20561 if Self::can_cast(syntax.kind()) {
20562 Some(Self { syntax })
20563 } else {
20564 None
20565 }
20566 }
20567 #[inline]
20568 fn syntax(&self) -> &SyntaxNode {
20569 &self.syntax
20570 }
20571}
20572impl AstNode for DropCollation {
20573 #[inline]
20574 fn can_cast(kind: SyntaxKind) -> bool {
20575 kind == SyntaxKind::DROP_COLLATION
20576 }
20577 #[inline]
20578 fn cast(syntax: SyntaxNode) -> Option<Self> {
20579 if Self::can_cast(syntax.kind()) {
20580 Some(Self { syntax })
20581 } else {
20582 None
20583 }
20584 }
20585 #[inline]
20586 fn syntax(&self) -> &SyntaxNode {
20587 &self.syntax
20588 }
20589}
20590impl AstNode for DropColumn {
20591 #[inline]
20592 fn can_cast(kind: SyntaxKind) -> bool {
20593 kind == SyntaxKind::DROP_COLUMN
20594 }
20595 #[inline]
20596 fn cast(syntax: SyntaxNode) -> Option<Self> {
20597 if Self::can_cast(syntax.kind()) {
20598 Some(Self { syntax })
20599 } else {
20600 None
20601 }
20602 }
20603 #[inline]
20604 fn syntax(&self) -> &SyntaxNode {
20605 &self.syntax
20606 }
20607}
20608impl AstNode for DropConstraint {
20609 #[inline]
20610 fn can_cast(kind: SyntaxKind) -> bool {
20611 kind == SyntaxKind::DROP_CONSTRAINT
20612 }
20613 #[inline]
20614 fn cast(syntax: SyntaxNode) -> Option<Self> {
20615 if Self::can_cast(syntax.kind()) {
20616 Some(Self { syntax })
20617 } else {
20618 None
20619 }
20620 }
20621 #[inline]
20622 fn syntax(&self) -> &SyntaxNode {
20623 &self.syntax
20624 }
20625}
20626impl AstNode for DropConversion {
20627 #[inline]
20628 fn can_cast(kind: SyntaxKind) -> bool {
20629 kind == SyntaxKind::DROP_CONVERSION
20630 }
20631 #[inline]
20632 fn cast(syntax: SyntaxNode) -> Option<Self> {
20633 if Self::can_cast(syntax.kind()) {
20634 Some(Self { syntax })
20635 } else {
20636 None
20637 }
20638 }
20639 #[inline]
20640 fn syntax(&self) -> &SyntaxNode {
20641 &self.syntax
20642 }
20643}
20644impl AstNode for DropDatabase {
20645 #[inline]
20646 fn can_cast(kind: SyntaxKind) -> bool {
20647 kind == SyntaxKind::DROP_DATABASE
20648 }
20649 #[inline]
20650 fn cast(syntax: SyntaxNode) -> Option<Self> {
20651 if Self::can_cast(syntax.kind()) {
20652 Some(Self { syntax })
20653 } else {
20654 None
20655 }
20656 }
20657 #[inline]
20658 fn syntax(&self) -> &SyntaxNode {
20659 &self.syntax
20660 }
20661}
20662impl AstNode for DropDefault {
20663 #[inline]
20664 fn can_cast(kind: SyntaxKind) -> bool {
20665 kind == SyntaxKind::DROP_DEFAULT
20666 }
20667 #[inline]
20668 fn cast(syntax: SyntaxNode) -> Option<Self> {
20669 if Self::can_cast(syntax.kind()) {
20670 Some(Self { syntax })
20671 } else {
20672 None
20673 }
20674 }
20675 #[inline]
20676 fn syntax(&self) -> &SyntaxNode {
20677 &self.syntax
20678 }
20679}
20680impl AstNode for DropDomain {
20681 #[inline]
20682 fn can_cast(kind: SyntaxKind) -> bool {
20683 kind == SyntaxKind::DROP_DOMAIN
20684 }
20685 #[inline]
20686 fn cast(syntax: SyntaxNode) -> Option<Self> {
20687 if Self::can_cast(syntax.kind()) {
20688 Some(Self { syntax })
20689 } else {
20690 None
20691 }
20692 }
20693 #[inline]
20694 fn syntax(&self) -> &SyntaxNode {
20695 &self.syntax
20696 }
20697}
20698impl AstNode for DropEventTrigger {
20699 #[inline]
20700 fn can_cast(kind: SyntaxKind) -> bool {
20701 kind == SyntaxKind::DROP_EVENT_TRIGGER
20702 }
20703 #[inline]
20704 fn cast(syntax: SyntaxNode) -> Option<Self> {
20705 if Self::can_cast(syntax.kind()) {
20706 Some(Self { syntax })
20707 } else {
20708 None
20709 }
20710 }
20711 #[inline]
20712 fn syntax(&self) -> &SyntaxNode {
20713 &self.syntax
20714 }
20715}
20716impl AstNode for DropExpression {
20717 #[inline]
20718 fn can_cast(kind: SyntaxKind) -> bool {
20719 kind == SyntaxKind::DROP_EXPRESSION
20720 }
20721 #[inline]
20722 fn cast(syntax: SyntaxNode) -> Option<Self> {
20723 if Self::can_cast(syntax.kind()) {
20724 Some(Self { syntax })
20725 } else {
20726 None
20727 }
20728 }
20729 #[inline]
20730 fn syntax(&self) -> &SyntaxNode {
20731 &self.syntax
20732 }
20733}
20734impl AstNode for DropExtension {
20735 #[inline]
20736 fn can_cast(kind: SyntaxKind) -> bool {
20737 kind == SyntaxKind::DROP_EXTENSION
20738 }
20739 #[inline]
20740 fn cast(syntax: SyntaxNode) -> Option<Self> {
20741 if Self::can_cast(syntax.kind()) {
20742 Some(Self { syntax })
20743 } else {
20744 None
20745 }
20746 }
20747 #[inline]
20748 fn syntax(&self) -> &SyntaxNode {
20749 &self.syntax
20750 }
20751}
20752impl AstNode for DropForeignDataWrapper {
20753 #[inline]
20754 fn can_cast(kind: SyntaxKind) -> bool {
20755 kind == SyntaxKind::DROP_FOREIGN_DATA_WRAPPER
20756 }
20757 #[inline]
20758 fn cast(syntax: SyntaxNode) -> Option<Self> {
20759 if Self::can_cast(syntax.kind()) {
20760 Some(Self { syntax })
20761 } else {
20762 None
20763 }
20764 }
20765 #[inline]
20766 fn syntax(&self) -> &SyntaxNode {
20767 &self.syntax
20768 }
20769}
20770impl AstNode for DropForeignTable {
20771 #[inline]
20772 fn can_cast(kind: SyntaxKind) -> bool {
20773 kind == SyntaxKind::DROP_FOREIGN_TABLE
20774 }
20775 #[inline]
20776 fn cast(syntax: SyntaxNode) -> Option<Self> {
20777 if Self::can_cast(syntax.kind()) {
20778 Some(Self { syntax })
20779 } else {
20780 None
20781 }
20782 }
20783 #[inline]
20784 fn syntax(&self) -> &SyntaxNode {
20785 &self.syntax
20786 }
20787}
20788impl AstNode for DropFunction {
20789 #[inline]
20790 fn can_cast(kind: SyntaxKind) -> bool {
20791 kind == SyntaxKind::DROP_FUNCTION
20792 }
20793 #[inline]
20794 fn cast(syntax: SyntaxNode) -> Option<Self> {
20795 if Self::can_cast(syntax.kind()) {
20796 Some(Self { syntax })
20797 } else {
20798 None
20799 }
20800 }
20801 #[inline]
20802 fn syntax(&self) -> &SyntaxNode {
20803 &self.syntax
20804 }
20805}
20806impl AstNode for DropGroup {
20807 #[inline]
20808 fn can_cast(kind: SyntaxKind) -> bool {
20809 kind == SyntaxKind::DROP_GROUP
20810 }
20811 #[inline]
20812 fn cast(syntax: SyntaxNode) -> Option<Self> {
20813 if Self::can_cast(syntax.kind()) {
20814 Some(Self { syntax })
20815 } else {
20816 None
20817 }
20818 }
20819 #[inline]
20820 fn syntax(&self) -> &SyntaxNode {
20821 &self.syntax
20822 }
20823}
20824impl AstNode for DropIdentity {
20825 #[inline]
20826 fn can_cast(kind: SyntaxKind) -> bool {
20827 kind == SyntaxKind::DROP_IDENTITY
20828 }
20829 #[inline]
20830 fn cast(syntax: SyntaxNode) -> Option<Self> {
20831 if Self::can_cast(syntax.kind()) {
20832 Some(Self { syntax })
20833 } else {
20834 None
20835 }
20836 }
20837 #[inline]
20838 fn syntax(&self) -> &SyntaxNode {
20839 &self.syntax
20840 }
20841}
20842impl AstNode for DropIndex {
20843 #[inline]
20844 fn can_cast(kind: SyntaxKind) -> bool {
20845 kind == SyntaxKind::DROP_INDEX
20846 }
20847 #[inline]
20848 fn cast(syntax: SyntaxNode) -> Option<Self> {
20849 if Self::can_cast(syntax.kind()) {
20850 Some(Self { syntax })
20851 } else {
20852 None
20853 }
20854 }
20855 #[inline]
20856 fn syntax(&self) -> &SyntaxNode {
20857 &self.syntax
20858 }
20859}
20860impl AstNode for DropLanguage {
20861 #[inline]
20862 fn can_cast(kind: SyntaxKind) -> bool {
20863 kind == SyntaxKind::DROP_LANGUAGE
20864 }
20865 #[inline]
20866 fn cast(syntax: SyntaxNode) -> Option<Self> {
20867 if Self::can_cast(syntax.kind()) {
20868 Some(Self { syntax })
20869 } else {
20870 None
20871 }
20872 }
20873 #[inline]
20874 fn syntax(&self) -> &SyntaxNode {
20875 &self.syntax
20876 }
20877}
20878impl AstNode for DropMaterializedView {
20879 #[inline]
20880 fn can_cast(kind: SyntaxKind) -> bool {
20881 kind == SyntaxKind::DROP_MATERIALIZED_VIEW
20882 }
20883 #[inline]
20884 fn cast(syntax: SyntaxNode) -> Option<Self> {
20885 if Self::can_cast(syntax.kind()) {
20886 Some(Self { syntax })
20887 } else {
20888 None
20889 }
20890 }
20891 #[inline]
20892 fn syntax(&self) -> &SyntaxNode {
20893 &self.syntax
20894 }
20895}
20896impl AstNode for DropNotNull {
20897 #[inline]
20898 fn can_cast(kind: SyntaxKind) -> bool {
20899 kind == SyntaxKind::DROP_NOT_NULL
20900 }
20901 #[inline]
20902 fn cast(syntax: SyntaxNode) -> Option<Self> {
20903 if Self::can_cast(syntax.kind()) {
20904 Some(Self { syntax })
20905 } else {
20906 None
20907 }
20908 }
20909 #[inline]
20910 fn syntax(&self) -> &SyntaxNode {
20911 &self.syntax
20912 }
20913}
20914impl AstNode for DropOpClassOption {
20915 #[inline]
20916 fn can_cast(kind: SyntaxKind) -> bool {
20917 kind == SyntaxKind::DROP_OP_CLASS_OPTION
20918 }
20919 #[inline]
20920 fn cast(syntax: SyntaxNode) -> Option<Self> {
20921 if Self::can_cast(syntax.kind()) {
20922 Some(Self { syntax })
20923 } else {
20924 None
20925 }
20926 }
20927 #[inline]
20928 fn syntax(&self) -> &SyntaxNode {
20929 &self.syntax
20930 }
20931}
20932impl AstNode for DropOpClassOptionList {
20933 #[inline]
20934 fn can_cast(kind: SyntaxKind) -> bool {
20935 kind == SyntaxKind::DROP_OP_CLASS_OPTION_LIST
20936 }
20937 #[inline]
20938 fn cast(syntax: SyntaxNode) -> Option<Self> {
20939 if Self::can_cast(syntax.kind()) {
20940 Some(Self { syntax })
20941 } else {
20942 None
20943 }
20944 }
20945 #[inline]
20946 fn syntax(&self) -> &SyntaxNode {
20947 &self.syntax
20948 }
20949}
20950impl AstNode for DropOpClassOptions {
20951 #[inline]
20952 fn can_cast(kind: SyntaxKind) -> bool {
20953 kind == SyntaxKind::DROP_OP_CLASS_OPTIONS
20954 }
20955 #[inline]
20956 fn cast(syntax: SyntaxNode) -> Option<Self> {
20957 if Self::can_cast(syntax.kind()) {
20958 Some(Self { syntax })
20959 } else {
20960 None
20961 }
20962 }
20963 #[inline]
20964 fn syntax(&self) -> &SyntaxNode {
20965 &self.syntax
20966 }
20967}
20968impl AstNode for DropOperator {
20969 #[inline]
20970 fn can_cast(kind: SyntaxKind) -> bool {
20971 kind == SyntaxKind::DROP_OPERATOR
20972 }
20973 #[inline]
20974 fn cast(syntax: SyntaxNode) -> Option<Self> {
20975 if Self::can_cast(syntax.kind()) {
20976 Some(Self { syntax })
20977 } else {
20978 None
20979 }
20980 }
20981 #[inline]
20982 fn syntax(&self) -> &SyntaxNode {
20983 &self.syntax
20984 }
20985}
20986impl AstNode for DropOperatorClass {
20987 #[inline]
20988 fn can_cast(kind: SyntaxKind) -> bool {
20989 kind == SyntaxKind::DROP_OPERATOR_CLASS
20990 }
20991 #[inline]
20992 fn cast(syntax: SyntaxNode) -> Option<Self> {
20993 if Self::can_cast(syntax.kind()) {
20994 Some(Self { syntax })
20995 } else {
20996 None
20997 }
20998 }
20999 #[inline]
21000 fn syntax(&self) -> &SyntaxNode {
21001 &self.syntax
21002 }
21003}
21004impl AstNode for DropOperatorFamily {
21005 #[inline]
21006 fn can_cast(kind: SyntaxKind) -> bool {
21007 kind == SyntaxKind::DROP_OPERATOR_FAMILY
21008 }
21009 #[inline]
21010 fn cast(syntax: SyntaxNode) -> Option<Self> {
21011 if Self::can_cast(syntax.kind()) {
21012 Some(Self { syntax })
21013 } else {
21014 None
21015 }
21016 }
21017 #[inline]
21018 fn syntax(&self) -> &SyntaxNode {
21019 &self.syntax
21020 }
21021}
21022impl AstNode for DropOwned {
21023 #[inline]
21024 fn can_cast(kind: SyntaxKind) -> bool {
21025 kind == SyntaxKind::DROP_OWNED
21026 }
21027 #[inline]
21028 fn cast(syntax: SyntaxNode) -> Option<Self> {
21029 if Self::can_cast(syntax.kind()) {
21030 Some(Self { syntax })
21031 } else {
21032 None
21033 }
21034 }
21035 #[inline]
21036 fn syntax(&self) -> &SyntaxNode {
21037 &self.syntax
21038 }
21039}
21040impl AstNode for DropPolicy {
21041 #[inline]
21042 fn can_cast(kind: SyntaxKind) -> bool {
21043 kind == SyntaxKind::DROP_POLICY
21044 }
21045 #[inline]
21046 fn cast(syntax: SyntaxNode) -> Option<Self> {
21047 if Self::can_cast(syntax.kind()) {
21048 Some(Self { syntax })
21049 } else {
21050 None
21051 }
21052 }
21053 #[inline]
21054 fn syntax(&self) -> &SyntaxNode {
21055 &self.syntax
21056 }
21057}
21058impl AstNode for DropProcedure {
21059 #[inline]
21060 fn can_cast(kind: SyntaxKind) -> bool {
21061 kind == SyntaxKind::DROP_PROCEDURE
21062 }
21063 #[inline]
21064 fn cast(syntax: SyntaxNode) -> Option<Self> {
21065 if Self::can_cast(syntax.kind()) {
21066 Some(Self { syntax })
21067 } else {
21068 None
21069 }
21070 }
21071 #[inline]
21072 fn syntax(&self) -> &SyntaxNode {
21073 &self.syntax
21074 }
21075}
21076impl AstNode for DropPublication {
21077 #[inline]
21078 fn can_cast(kind: SyntaxKind) -> bool {
21079 kind == SyntaxKind::DROP_PUBLICATION
21080 }
21081 #[inline]
21082 fn cast(syntax: SyntaxNode) -> Option<Self> {
21083 if Self::can_cast(syntax.kind()) {
21084 Some(Self { syntax })
21085 } else {
21086 None
21087 }
21088 }
21089 #[inline]
21090 fn syntax(&self) -> &SyntaxNode {
21091 &self.syntax
21092 }
21093}
21094impl AstNode for DropRole {
21095 #[inline]
21096 fn can_cast(kind: SyntaxKind) -> bool {
21097 kind == SyntaxKind::DROP_ROLE
21098 }
21099 #[inline]
21100 fn cast(syntax: SyntaxNode) -> Option<Self> {
21101 if Self::can_cast(syntax.kind()) {
21102 Some(Self { syntax })
21103 } else {
21104 None
21105 }
21106 }
21107 #[inline]
21108 fn syntax(&self) -> &SyntaxNode {
21109 &self.syntax
21110 }
21111}
21112impl AstNode for DropRoutine {
21113 #[inline]
21114 fn can_cast(kind: SyntaxKind) -> bool {
21115 kind == SyntaxKind::DROP_ROUTINE
21116 }
21117 #[inline]
21118 fn cast(syntax: SyntaxNode) -> Option<Self> {
21119 if Self::can_cast(syntax.kind()) {
21120 Some(Self { syntax })
21121 } else {
21122 None
21123 }
21124 }
21125 #[inline]
21126 fn syntax(&self) -> &SyntaxNode {
21127 &self.syntax
21128 }
21129}
21130impl AstNode for DropRule {
21131 #[inline]
21132 fn can_cast(kind: SyntaxKind) -> bool {
21133 kind == SyntaxKind::DROP_RULE
21134 }
21135 #[inline]
21136 fn cast(syntax: SyntaxNode) -> Option<Self> {
21137 if Self::can_cast(syntax.kind()) {
21138 Some(Self { syntax })
21139 } else {
21140 None
21141 }
21142 }
21143 #[inline]
21144 fn syntax(&self) -> &SyntaxNode {
21145 &self.syntax
21146 }
21147}
21148impl AstNode for DropSchema {
21149 #[inline]
21150 fn can_cast(kind: SyntaxKind) -> bool {
21151 kind == SyntaxKind::DROP_SCHEMA
21152 }
21153 #[inline]
21154 fn cast(syntax: SyntaxNode) -> Option<Self> {
21155 if Self::can_cast(syntax.kind()) {
21156 Some(Self { syntax })
21157 } else {
21158 None
21159 }
21160 }
21161 #[inline]
21162 fn syntax(&self) -> &SyntaxNode {
21163 &self.syntax
21164 }
21165}
21166impl AstNode for DropSequence {
21167 #[inline]
21168 fn can_cast(kind: SyntaxKind) -> bool {
21169 kind == SyntaxKind::DROP_SEQUENCE
21170 }
21171 #[inline]
21172 fn cast(syntax: SyntaxNode) -> Option<Self> {
21173 if Self::can_cast(syntax.kind()) {
21174 Some(Self { syntax })
21175 } else {
21176 None
21177 }
21178 }
21179 #[inline]
21180 fn syntax(&self) -> &SyntaxNode {
21181 &self.syntax
21182 }
21183}
21184impl AstNode for DropServer {
21185 #[inline]
21186 fn can_cast(kind: SyntaxKind) -> bool {
21187 kind == SyntaxKind::DROP_SERVER
21188 }
21189 #[inline]
21190 fn cast(syntax: SyntaxNode) -> Option<Self> {
21191 if Self::can_cast(syntax.kind()) {
21192 Some(Self { syntax })
21193 } else {
21194 None
21195 }
21196 }
21197 #[inline]
21198 fn syntax(&self) -> &SyntaxNode {
21199 &self.syntax
21200 }
21201}
21202impl AstNode for DropStatistics {
21203 #[inline]
21204 fn can_cast(kind: SyntaxKind) -> bool {
21205 kind == SyntaxKind::DROP_STATISTICS
21206 }
21207 #[inline]
21208 fn cast(syntax: SyntaxNode) -> Option<Self> {
21209 if Self::can_cast(syntax.kind()) {
21210 Some(Self { syntax })
21211 } else {
21212 None
21213 }
21214 }
21215 #[inline]
21216 fn syntax(&self) -> &SyntaxNode {
21217 &self.syntax
21218 }
21219}
21220impl AstNode for DropSubscription {
21221 #[inline]
21222 fn can_cast(kind: SyntaxKind) -> bool {
21223 kind == SyntaxKind::DROP_SUBSCRIPTION
21224 }
21225 #[inline]
21226 fn cast(syntax: SyntaxNode) -> Option<Self> {
21227 if Self::can_cast(syntax.kind()) {
21228 Some(Self { syntax })
21229 } else {
21230 None
21231 }
21232 }
21233 #[inline]
21234 fn syntax(&self) -> &SyntaxNode {
21235 &self.syntax
21236 }
21237}
21238impl AstNode for DropTable {
21239 #[inline]
21240 fn can_cast(kind: SyntaxKind) -> bool {
21241 kind == SyntaxKind::DROP_TABLE
21242 }
21243 #[inline]
21244 fn cast(syntax: SyntaxNode) -> Option<Self> {
21245 if Self::can_cast(syntax.kind()) {
21246 Some(Self { syntax })
21247 } else {
21248 None
21249 }
21250 }
21251 #[inline]
21252 fn syntax(&self) -> &SyntaxNode {
21253 &self.syntax
21254 }
21255}
21256impl AstNode for DropTablespace {
21257 #[inline]
21258 fn can_cast(kind: SyntaxKind) -> bool {
21259 kind == SyntaxKind::DROP_TABLESPACE
21260 }
21261 #[inline]
21262 fn cast(syntax: SyntaxNode) -> Option<Self> {
21263 if Self::can_cast(syntax.kind()) {
21264 Some(Self { syntax })
21265 } else {
21266 None
21267 }
21268 }
21269 #[inline]
21270 fn syntax(&self) -> &SyntaxNode {
21271 &self.syntax
21272 }
21273}
21274impl AstNode for DropTextSearchConfig {
21275 #[inline]
21276 fn can_cast(kind: SyntaxKind) -> bool {
21277 kind == SyntaxKind::DROP_TEXT_SEARCH_CONFIG
21278 }
21279 #[inline]
21280 fn cast(syntax: SyntaxNode) -> Option<Self> {
21281 if Self::can_cast(syntax.kind()) {
21282 Some(Self { syntax })
21283 } else {
21284 None
21285 }
21286 }
21287 #[inline]
21288 fn syntax(&self) -> &SyntaxNode {
21289 &self.syntax
21290 }
21291}
21292impl AstNode for DropTextSearchDict {
21293 #[inline]
21294 fn can_cast(kind: SyntaxKind) -> bool {
21295 kind == SyntaxKind::DROP_TEXT_SEARCH_DICT
21296 }
21297 #[inline]
21298 fn cast(syntax: SyntaxNode) -> Option<Self> {
21299 if Self::can_cast(syntax.kind()) {
21300 Some(Self { syntax })
21301 } else {
21302 None
21303 }
21304 }
21305 #[inline]
21306 fn syntax(&self) -> &SyntaxNode {
21307 &self.syntax
21308 }
21309}
21310impl AstNode for DropTextSearchParser {
21311 #[inline]
21312 fn can_cast(kind: SyntaxKind) -> bool {
21313 kind == SyntaxKind::DROP_TEXT_SEARCH_PARSER
21314 }
21315 #[inline]
21316 fn cast(syntax: SyntaxNode) -> Option<Self> {
21317 if Self::can_cast(syntax.kind()) {
21318 Some(Self { syntax })
21319 } else {
21320 None
21321 }
21322 }
21323 #[inline]
21324 fn syntax(&self) -> &SyntaxNode {
21325 &self.syntax
21326 }
21327}
21328impl AstNode for DropTextSearchTemplate {
21329 #[inline]
21330 fn can_cast(kind: SyntaxKind) -> bool {
21331 kind == SyntaxKind::DROP_TEXT_SEARCH_TEMPLATE
21332 }
21333 #[inline]
21334 fn cast(syntax: SyntaxNode) -> Option<Self> {
21335 if Self::can_cast(syntax.kind()) {
21336 Some(Self { syntax })
21337 } else {
21338 None
21339 }
21340 }
21341 #[inline]
21342 fn syntax(&self) -> &SyntaxNode {
21343 &self.syntax
21344 }
21345}
21346impl AstNode for DropTransform {
21347 #[inline]
21348 fn can_cast(kind: SyntaxKind) -> bool {
21349 kind == SyntaxKind::DROP_TRANSFORM
21350 }
21351 #[inline]
21352 fn cast(syntax: SyntaxNode) -> Option<Self> {
21353 if Self::can_cast(syntax.kind()) {
21354 Some(Self { syntax })
21355 } else {
21356 None
21357 }
21358 }
21359 #[inline]
21360 fn syntax(&self) -> &SyntaxNode {
21361 &self.syntax
21362 }
21363}
21364impl AstNode for DropTrigger {
21365 #[inline]
21366 fn can_cast(kind: SyntaxKind) -> bool {
21367 kind == SyntaxKind::DROP_TRIGGER
21368 }
21369 #[inline]
21370 fn cast(syntax: SyntaxNode) -> Option<Self> {
21371 if Self::can_cast(syntax.kind()) {
21372 Some(Self { syntax })
21373 } else {
21374 None
21375 }
21376 }
21377 #[inline]
21378 fn syntax(&self) -> &SyntaxNode {
21379 &self.syntax
21380 }
21381}
21382impl AstNode for DropType {
21383 #[inline]
21384 fn can_cast(kind: SyntaxKind) -> bool {
21385 kind == SyntaxKind::DROP_TYPE
21386 }
21387 #[inline]
21388 fn cast(syntax: SyntaxNode) -> Option<Self> {
21389 if Self::can_cast(syntax.kind()) {
21390 Some(Self { syntax })
21391 } else {
21392 None
21393 }
21394 }
21395 #[inline]
21396 fn syntax(&self) -> &SyntaxNode {
21397 &self.syntax
21398 }
21399}
21400impl AstNode for DropUser {
21401 #[inline]
21402 fn can_cast(kind: SyntaxKind) -> bool {
21403 kind == SyntaxKind::DROP_USER
21404 }
21405 #[inline]
21406 fn cast(syntax: SyntaxNode) -> Option<Self> {
21407 if Self::can_cast(syntax.kind()) {
21408 Some(Self { syntax })
21409 } else {
21410 None
21411 }
21412 }
21413 #[inline]
21414 fn syntax(&self) -> &SyntaxNode {
21415 &self.syntax
21416 }
21417}
21418impl AstNode for DropUserMapping {
21419 #[inline]
21420 fn can_cast(kind: SyntaxKind) -> bool {
21421 kind == SyntaxKind::DROP_USER_MAPPING
21422 }
21423 #[inline]
21424 fn cast(syntax: SyntaxNode) -> Option<Self> {
21425 if Self::can_cast(syntax.kind()) {
21426 Some(Self { syntax })
21427 } else {
21428 None
21429 }
21430 }
21431 #[inline]
21432 fn syntax(&self) -> &SyntaxNode {
21433 &self.syntax
21434 }
21435}
21436impl AstNode for DropView {
21437 #[inline]
21438 fn can_cast(kind: SyntaxKind) -> bool {
21439 kind == SyntaxKind::DROP_VIEW
21440 }
21441 #[inline]
21442 fn cast(syntax: SyntaxNode) -> Option<Self> {
21443 if Self::can_cast(syntax.kind()) {
21444 Some(Self { syntax })
21445 } else {
21446 None
21447 }
21448 }
21449 #[inline]
21450 fn syntax(&self) -> &SyntaxNode {
21451 &self.syntax
21452 }
21453}
21454impl AstNode for ElseClause {
21455 #[inline]
21456 fn can_cast(kind: SyntaxKind) -> bool {
21457 kind == SyntaxKind::ELSE_CLAUSE
21458 }
21459 #[inline]
21460 fn cast(syntax: SyntaxNode) -> Option<Self> {
21461 if Self::can_cast(syntax.kind()) {
21462 Some(Self { syntax })
21463 } else {
21464 None
21465 }
21466 }
21467 #[inline]
21468 fn syntax(&self) -> &SyntaxNode {
21469 &self.syntax
21470 }
21471}
21472impl AstNode for EnableAlwaysRule {
21473 #[inline]
21474 fn can_cast(kind: SyntaxKind) -> bool {
21475 kind == SyntaxKind::ENABLE_ALWAYS_RULE
21476 }
21477 #[inline]
21478 fn cast(syntax: SyntaxNode) -> Option<Self> {
21479 if Self::can_cast(syntax.kind()) {
21480 Some(Self { syntax })
21481 } else {
21482 None
21483 }
21484 }
21485 #[inline]
21486 fn syntax(&self) -> &SyntaxNode {
21487 &self.syntax
21488 }
21489}
21490impl AstNode for EnableAlwaysTrigger {
21491 #[inline]
21492 fn can_cast(kind: SyntaxKind) -> bool {
21493 kind == SyntaxKind::ENABLE_ALWAYS_TRIGGER
21494 }
21495 #[inline]
21496 fn cast(syntax: SyntaxNode) -> Option<Self> {
21497 if Self::can_cast(syntax.kind()) {
21498 Some(Self { syntax })
21499 } else {
21500 None
21501 }
21502 }
21503 #[inline]
21504 fn syntax(&self) -> &SyntaxNode {
21505 &self.syntax
21506 }
21507}
21508impl AstNode for EnableReplicaRule {
21509 #[inline]
21510 fn can_cast(kind: SyntaxKind) -> bool {
21511 kind == SyntaxKind::ENABLE_REPLICA_RULE
21512 }
21513 #[inline]
21514 fn cast(syntax: SyntaxNode) -> Option<Self> {
21515 if Self::can_cast(syntax.kind()) {
21516 Some(Self { syntax })
21517 } else {
21518 None
21519 }
21520 }
21521 #[inline]
21522 fn syntax(&self) -> &SyntaxNode {
21523 &self.syntax
21524 }
21525}
21526impl AstNode for EnableReplicaTrigger {
21527 #[inline]
21528 fn can_cast(kind: SyntaxKind) -> bool {
21529 kind == SyntaxKind::ENABLE_REPLICA_TRIGGER
21530 }
21531 #[inline]
21532 fn cast(syntax: SyntaxNode) -> Option<Self> {
21533 if Self::can_cast(syntax.kind()) {
21534 Some(Self { syntax })
21535 } else {
21536 None
21537 }
21538 }
21539 #[inline]
21540 fn syntax(&self) -> &SyntaxNode {
21541 &self.syntax
21542 }
21543}
21544impl AstNode for EnableRls {
21545 #[inline]
21546 fn can_cast(kind: SyntaxKind) -> bool {
21547 kind == SyntaxKind::ENABLE_RLS
21548 }
21549 #[inline]
21550 fn cast(syntax: SyntaxNode) -> Option<Self> {
21551 if Self::can_cast(syntax.kind()) {
21552 Some(Self { syntax })
21553 } else {
21554 None
21555 }
21556 }
21557 #[inline]
21558 fn syntax(&self) -> &SyntaxNode {
21559 &self.syntax
21560 }
21561}
21562impl AstNode for EnableRule {
21563 #[inline]
21564 fn can_cast(kind: SyntaxKind) -> bool {
21565 kind == SyntaxKind::ENABLE_RULE
21566 }
21567 #[inline]
21568 fn cast(syntax: SyntaxNode) -> Option<Self> {
21569 if Self::can_cast(syntax.kind()) {
21570 Some(Self { syntax })
21571 } else {
21572 None
21573 }
21574 }
21575 #[inline]
21576 fn syntax(&self) -> &SyntaxNode {
21577 &self.syntax
21578 }
21579}
21580impl AstNode for EnableTrigger {
21581 #[inline]
21582 fn can_cast(kind: SyntaxKind) -> bool {
21583 kind == SyntaxKind::ENABLE_TRIGGER
21584 }
21585 #[inline]
21586 fn cast(syntax: SyntaxNode) -> Option<Self> {
21587 if Self::can_cast(syntax.kind()) {
21588 Some(Self { syntax })
21589 } else {
21590 None
21591 }
21592 }
21593 #[inline]
21594 fn syntax(&self) -> &SyntaxNode {
21595 &self.syntax
21596 }
21597}
21598impl AstNode for Enforced {
21599 #[inline]
21600 fn can_cast(kind: SyntaxKind) -> bool {
21601 kind == SyntaxKind::ENFORCED
21602 }
21603 #[inline]
21604 fn cast(syntax: SyntaxNode) -> Option<Self> {
21605 if Self::can_cast(syntax.kind()) {
21606 Some(Self { syntax })
21607 } else {
21608 None
21609 }
21610 }
21611 #[inline]
21612 fn syntax(&self) -> &SyntaxNode {
21613 &self.syntax
21614 }
21615}
21616impl AstNode for EventTriggerWhen {
21617 #[inline]
21618 fn can_cast(kind: SyntaxKind) -> bool {
21619 kind == SyntaxKind::EVENT_TRIGGER_WHEN
21620 }
21621 #[inline]
21622 fn cast(syntax: SyntaxNode) -> Option<Self> {
21623 if Self::can_cast(syntax.kind()) {
21624 Some(Self { syntax })
21625 } else {
21626 None
21627 }
21628 }
21629 #[inline]
21630 fn syntax(&self) -> &SyntaxNode {
21631 &self.syntax
21632 }
21633}
21634impl AstNode for EventTriggerWhenClause {
21635 #[inline]
21636 fn can_cast(kind: SyntaxKind) -> bool {
21637 kind == SyntaxKind::EVENT_TRIGGER_WHEN_CLAUSE
21638 }
21639 #[inline]
21640 fn cast(syntax: SyntaxNode) -> Option<Self> {
21641 if Self::can_cast(syntax.kind()) {
21642 Some(Self { syntax })
21643 } else {
21644 None
21645 }
21646 }
21647 #[inline]
21648 fn syntax(&self) -> &SyntaxNode {
21649 &self.syntax
21650 }
21651}
21652impl AstNode for ExceptTables {
21653 #[inline]
21654 fn can_cast(kind: SyntaxKind) -> bool {
21655 kind == SyntaxKind::EXCEPT_TABLES
21656 }
21657 #[inline]
21658 fn cast(syntax: SyntaxNode) -> Option<Self> {
21659 if Self::can_cast(syntax.kind()) {
21660 Some(Self { syntax })
21661 } else {
21662 None
21663 }
21664 }
21665 #[inline]
21666 fn syntax(&self) -> &SyntaxNode {
21667 &self.syntax
21668 }
21669}
21670impl AstNode for ExcludeConstraint {
21671 #[inline]
21672 fn can_cast(kind: SyntaxKind) -> bool {
21673 kind == SyntaxKind::EXCLUDE_CONSTRAINT
21674 }
21675 #[inline]
21676 fn cast(syntax: SyntaxNode) -> Option<Self> {
21677 if Self::can_cast(syntax.kind()) {
21678 Some(Self { syntax })
21679 } else {
21680 None
21681 }
21682 }
21683 #[inline]
21684 fn syntax(&self) -> &SyntaxNode {
21685 &self.syntax
21686 }
21687}
21688impl AstNode for Execute {
21689 #[inline]
21690 fn can_cast(kind: SyntaxKind) -> bool {
21691 kind == SyntaxKind::EXECUTE
21692 }
21693 #[inline]
21694 fn cast(syntax: SyntaxNode) -> Option<Self> {
21695 if Self::can_cast(syntax.kind()) {
21696 Some(Self { syntax })
21697 } else {
21698 None
21699 }
21700 }
21701 #[inline]
21702 fn syntax(&self) -> &SyntaxNode {
21703 &self.syntax
21704 }
21705}
21706impl AstNode for ExistsFn {
21707 #[inline]
21708 fn can_cast(kind: SyntaxKind) -> bool {
21709 kind == SyntaxKind::EXISTS_FN
21710 }
21711 #[inline]
21712 fn cast(syntax: SyntaxNode) -> Option<Self> {
21713 if Self::can_cast(syntax.kind()) {
21714 Some(Self { syntax })
21715 } else {
21716 None
21717 }
21718 }
21719 #[inline]
21720 fn syntax(&self) -> &SyntaxNode {
21721 &self.syntax
21722 }
21723}
21724impl AstNode for Explain {
21725 #[inline]
21726 fn can_cast(kind: SyntaxKind) -> bool {
21727 kind == SyntaxKind::EXPLAIN
21728 }
21729 #[inline]
21730 fn cast(syntax: SyntaxNode) -> Option<Self> {
21731 if Self::can_cast(syntax.kind()) {
21732 Some(Self { syntax })
21733 } else {
21734 None
21735 }
21736 }
21737 #[inline]
21738 fn syntax(&self) -> &SyntaxNode {
21739 &self.syntax
21740 }
21741}
21742impl AstNode for ExprAsName {
21743 #[inline]
21744 fn can_cast(kind: SyntaxKind) -> bool {
21745 kind == SyntaxKind::EXPR_AS_NAME
21746 }
21747 #[inline]
21748 fn cast(syntax: SyntaxNode) -> Option<Self> {
21749 if Self::can_cast(syntax.kind()) {
21750 Some(Self { syntax })
21751 } else {
21752 None
21753 }
21754 }
21755 #[inline]
21756 fn syntax(&self) -> &SyntaxNode {
21757 &self.syntax
21758 }
21759}
21760impl AstNode for ExprType {
21761 #[inline]
21762 fn can_cast(kind: SyntaxKind) -> bool {
21763 kind == SyntaxKind::EXPR_TYPE
21764 }
21765 #[inline]
21766 fn cast(syntax: SyntaxNode) -> Option<Self> {
21767 if Self::can_cast(syntax.kind()) {
21768 Some(Self { syntax })
21769 } else {
21770 None
21771 }
21772 }
21773 #[inline]
21774 fn syntax(&self) -> &SyntaxNode {
21775 &self.syntax
21776 }
21777}
21778impl AstNode for ExtractFn {
21779 #[inline]
21780 fn can_cast(kind: SyntaxKind) -> bool {
21781 kind == SyntaxKind::EXTRACT_FN
21782 }
21783 #[inline]
21784 fn cast(syntax: SyntaxNode) -> Option<Self> {
21785 if Self::can_cast(syntax.kind()) {
21786 Some(Self { syntax })
21787 } else {
21788 None
21789 }
21790 }
21791 #[inline]
21792 fn syntax(&self) -> &SyntaxNode {
21793 &self.syntax
21794 }
21795}
21796impl AstNode for FatArrow {
21797 #[inline]
21798 fn can_cast(kind: SyntaxKind) -> bool {
21799 kind == SyntaxKind::FAT_ARROW
21800 }
21801 #[inline]
21802 fn cast(syntax: SyntaxNode) -> Option<Self> {
21803 if Self::can_cast(syntax.kind()) {
21804 Some(Self { syntax })
21805 } else {
21806 None
21807 }
21808 }
21809 #[inline]
21810 fn syntax(&self) -> &SyntaxNode {
21811 &self.syntax
21812 }
21813}
21814impl AstNode for FdwOption {
21815 #[inline]
21816 fn can_cast(kind: SyntaxKind) -> bool {
21817 kind == SyntaxKind::FDW_OPTION
21818 }
21819 #[inline]
21820 fn cast(syntax: SyntaxNode) -> Option<Self> {
21821 if Self::can_cast(syntax.kind()) {
21822 Some(Self { syntax })
21823 } else {
21824 None
21825 }
21826 }
21827 #[inline]
21828 fn syntax(&self) -> &SyntaxNode {
21829 &self.syntax
21830 }
21831}
21832impl AstNode for FdwOptionList {
21833 #[inline]
21834 fn can_cast(kind: SyntaxKind) -> bool {
21835 kind == SyntaxKind::FDW_OPTION_LIST
21836 }
21837 #[inline]
21838 fn cast(syntax: SyntaxNode) -> Option<Self> {
21839 if Self::can_cast(syntax.kind()) {
21840 Some(Self { syntax })
21841 } else {
21842 None
21843 }
21844 }
21845 #[inline]
21846 fn syntax(&self) -> &SyntaxNode {
21847 &self.syntax
21848 }
21849}
21850impl AstNode for Fetch {
21851 #[inline]
21852 fn can_cast(kind: SyntaxKind) -> bool {
21853 kind == SyntaxKind::FETCH
21854 }
21855 #[inline]
21856 fn cast(syntax: SyntaxNode) -> Option<Self> {
21857 if Self::can_cast(syntax.kind()) {
21858 Some(Self { syntax })
21859 } else {
21860 None
21861 }
21862 }
21863 #[inline]
21864 fn syntax(&self) -> &SyntaxNode {
21865 &self.syntax
21866 }
21867}
21868impl AstNode for FetchClause {
21869 #[inline]
21870 fn can_cast(kind: SyntaxKind) -> bool {
21871 kind == SyntaxKind::FETCH_CLAUSE
21872 }
21873 #[inline]
21874 fn cast(syntax: SyntaxNode) -> Option<Self> {
21875 if Self::can_cast(syntax.kind()) {
21876 Some(Self { syntax })
21877 } else {
21878 None
21879 }
21880 }
21881 #[inline]
21882 fn syntax(&self) -> &SyntaxNode {
21883 &self.syntax
21884 }
21885}
21886impl AstNode for FieldExpr {
21887 #[inline]
21888 fn can_cast(kind: SyntaxKind) -> bool {
21889 kind == SyntaxKind::FIELD_EXPR
21890 }
21891 #[inline]
21892 fn cast(syntax: SyntaxNode) -> Option<Self> {
21893 if Self::can_cast(syntax.kind()) {
21894 Some(Self { syntax })
21895 } else {
21896 None
21897 }
21898 }
21899 #[inline]
21900 fn syntax(&self) -> &SyntaxNode {
21901 &self.syntax
21902 }
21903}
21904impl AstNode for FilterClause {
21905 #[inline]
21906 fn can_cast(kind: SyntaxKind) -> bool {
21907 kind == SyntaxKind::FILTER_CLAUSE
21908 }
21909 #[inline]
21910 fn cast(syntax: SyntaxNode) -> Option<Self> {
21911 if Self::can_cast(syntax.kind()) {
21912 Some(Self { syntax })
21913 } else {
21914 None
21915 }
21916 }
21917 #[inline]
21918 fn syntax(&self) -> &SyntaxNode {
21919 &self.syntax
21920 }
21921}
21922impl AstNode for ForProvider {
21923 #[inline]
21924 fn can_cast(kind: SyntaxKind) -> bool {
21925 kind == SyntaxKind::FOR_PROVIDER
21926 }
21927 #[inline]
21928 fn cast(syntax: SyntaxNode) -> Option<Self> {
21929 if Self::can_cast(syntax.kind()) {
21930 Some(Self { syntax })
21931 } else {
21932 None
21933 }
21934 }
21935 #[inline]
21936 fn syntax(&self) -> &SyntaxNode {
21937 &self.syntax
21938 }
21939}
21940impl AstNode for ForceRls {
21941 #[inline]
21942 fn can_cast(kind: SyntaxKind) -> bool {
21943 kind == SyntaxKind::FORCE_RLS
21944 }
21945 #[inline]
21946 fn cast(syntax: SyntaxNode) -> Option<Self> {
21947 if Self::can_cast(syntax.kind()) {
21948 Some(Self { syntax })
21949 } else {
21950 None
21951 }
21952 }
21953 #[inline]
21954 fn syntax(&self) -> &SyntaxNode {
21955 &self.syntax
21956 }
21957}
21958impl AstNode for ForeignKeyConstraint {
21959 #[inline]
21960 fn can_cast(kind: SyntaxKind) -> bool {
21961 kind == SyntaxKind::FOREIGN_KEY_CONSTRAINT
21962 }
21963 #[inline]
21964 fn cast(syntax: SyntaxNode) -> Option<Self> {
21965 if Self::can_cast(syntax.kind()) {
21966 Some(Self { syntax })
21967 } else {
21968 None
21969 }
21970 }
21971 #[inline]
21972 fn syntax(&self) -> &SyntaxNode {
21973 &self.syntax
21974 }
21975}
21976impl AstNode for FrameClause {
21977 #[inline]
21978 fn can_cast(kind: SyntaxKind) -> bool {
21979 kind == SyntaxKind::FRAME_CLAUSE
21980 }
21981 #[inline]
21982 fn cast(syntax: SyntaxNode) -> Option<Self> {
21983 if Self::can_cast(syntax.kind()) {
21984 Some(Self { syntax })
21985 } else {
21986 None
21987 }
21988 }
21989 #[inline]
21990 fn syntax(&self) -> &SyntaxNode {
21991 &self.syntax
21992 }
21993}
21994impl AstNode for FromClause {
21995 #[inline]
21996 fn can_cast(kind: SyntaxKind) -> bool {
21997 kind == SyntaxKind::FROM_CLAUSE
21998 }
21999 #[inline]
22000 fn cast(syntax: SyntaxNode) -> Option<Self> {
22001 if Self::can_cast(syntax.kind()) {
22002 Some(Self { syntax })
22003 } else {
22004 None
22005 }
22006 }
22007 #[inline]
22008 fn syntax(&self) -> &SyntaxNode {
22009 &self.syntax
22010 }
22011}
22012impl AstNode for FromItem {
22013 #[inline]
22014 fn can_cast(kind: SyntaxKind) -> bool {
22015 kind == SyntaxKind::FROM_ITEM
22016 }
22017 #[inline]
22018 fn cast(syntax: SyntaxNode) -> Option<Self> {
22019 if Self::can_cast(syntax.kind()) {
22020 Some(Self { syntax })
22021 } else {
22022 None
22023 }
22024 }
22025 #[inline]
22026 fn syntax(&self) -> &SyntaxNode {
22027 &self.syntax
22028 }
22029}
22030impl AstNode for FromTable {
22031 #[inline]
22032 fn can_cast(kind: SyntaxKind) -> bool {
22033 kind == SyntaxKind::FROM_TABLE
22034 }
22035 #[inline]
22036 fn cast(syntax: SyntaxNode) -> Option<Self> {
22037 if Self::can_cast(syntax.kind()) {
22038 Some(Self { syntax })
22039 } else {
22040 None
22041 }
22042 }
22043 #[inline]
22044 fn syntax(&self) -> &SyntaxNode {
22045 &self.syntax
22046 }
22047}
22048impl AstNode for FuncOptionList {
22049 #[inline]
22050 fn can_cast(kind: SyntaxKind) -> bool {
22051 kind == SyntaxKind::FUNC_OPTION_LIST
22052 }
22053 #[inline]
22054 fn cast(syntax: SyntaxNode) -> Option<Self> {
22055 if Self::can_cast(syntax.kind()) {
22056 Some(Self { syntax })
22057 } else {
22058 None
22059 }
22060 }
22061 #[inline]
22062 fn syntax(&self) -> &SyntaxNode {
22063 &self.syntax
22064 }
22065}
22066impl AstNode for FunctionSig {
22067 #[inline]
22068 fn can_cast(kind: SyntaxKind) -> bool {
22069 kind == SyntaxKind::FUNCTION_SIG
22070 }
22071 #[inline]
22072 fn cast(syntax: SyntaxNode) -> Option<Self> {
22073 if Self::can_cast(syntax.kind()) {
22074 Some(Self { syntax })
22075 } else {
22076 None
22077 }
22078 }
22079 #[inline]
22080 fn syntax(&self) -> &SyntaxNode {
22081 &self.syntax
22082 }
22083}
22084impl AstNode for FunctionSigList {
22085 #[inline]
22086 fn can_cast(kind: SyntaxKind) -> bool {
22087 kind == SyntaxKind::FUNCTION_SIG_LIST
22088 }
22089 #[inline]
22090 fn cast(syntax: SyntaxNode) -> Option<Self> {
22091 if Self::can_cast(syntax.kind()) {
22092 Some(Self { syntax })
22093 } else {
22094 None
22095 }
22096 }
22097 #[inline]
22098 fn syntax(&self) -> &SyntaxNode {
22099 &self.syntax
22100 }
22101}
22102impl AstNode for GeneratedConstraint {
22103 #[inline]
22104 fn can_cast(kind: SyntaxKind) -> bool {
22105 kind == SyntaxKind::GENERATED_CONSTRAINT
22106 }
22107 #[inline]
22108 fn cast(syntax: SyntaxNode) -> Option<Self> {
22109 if Self::can_cast(syntax.kind()) {
22110 Some(Self { syntax })
22111 } else {
22112 None
22113 }
22114 }
22115 #[inline]
22116 fn syntax(&self) -> &SyntaxNode {
22117 &self.syntax
22118 }
22119}
22120impl AstNode for Grant {
22121 #[inline]
22122 fn can_cast(kind: SyntaxKind) -> bool {
22123 kind == SyntaxKind::GRANT
22124 }
22125 #[inline]
22126 fn cast(syntax: SyntaxNode) -> Option<Self> {
22127 if Self::can_cast(syntax.kind()) {
22128 Some(Self { syntax })
22129 } else {
22130 None
22131 }
22132 }
22133 #[inline]
22134 fn syntax(&self) -> &SyntaxNode {
22135 &self.syntax
22136 }
22137}
22138impl AstNode for GrantDefaultPrivileges {
22139 #[inline]
22140 fn can_cast(kind: SyntaxKind) -> bool {
22141 kind == SyntaxKind::GRANT_DEFAULT_PRIVILEGES
22142 }
22143 #[inline]
22144 fn cast(syntax: SyntaxNode) -> Option<Self> {
22145 if Self::can_cast(syntax.kind()) {
22146 Some(Self { syntax })
22147 } else {
22148 None
22149 }
22150 }
22151 #[inline]
22152 fn syntax(&self) -> &SyntaxNode {
22153 &self.syntax
22154 }
22155}
22156impl AstNode for GroupByClause {
22157 #[inline]
22158 fn can_cast(kind: SyntaxKind) -> bool {
22159 kind == SyntaxKind::GROUP_BY_CLAUSE
22160 }
22161 #[inline]
22162 fn cast(syntax: SyntaxNode) -> Option<Self> {
22163 if Self::can_cast(syntax.kind()) {
22164 Some(Self { syntax })
22165 } else {
22166 None
22167 }
22168 }
22169 #[inline]
22170 fn syntax(&self) -> &SyntaxNode {
22171 &self.syntax
22172 }
22173}
22174impl AstNode for GroupByList {
22175 #[inline]
22176 fn can_cast(kind: SyntaxKind) -> bool {
22177 kind == SyntaxKind::GROUP_BY_LIST
22178 }
22179 #[inline]
22180 fn cast(syntax: SyntaxNode) -> Option<Self> {
22181 if Self::can_cast(syntax.kind()) {
22182 Some(Self { syntax })
22183 } else {
22184 None
22185 }
22186 }
22187 #[inline]
22188 fn syntax(&self) -> &SyntaxNode {
22189 &self.syntax
22190 }
22191}
22192impl AstNode for GroupingCube {
22193 #[inline]
22194 fn can_cast(kind: SyntaxKind) -> bool {
22195 kind == SyntaxKind::GROUPING_CUBE
22196 }
22197 #[inline]
22198 fn cast(syntax: SyntaxNode) -> Option<Self> {
22199 if Self::can_cast(syntax.kind()) {
22200 Some(Self { syntax })
22201 } else {
22202 None
22203 }
22204 }
22205 #[inline]
22206 fn syntax(&self) -> &SyntaxNode {
22207 &self.syntax
22208 }
22209}
22210impl AstNode for GroupingExpr {
22211 #[inline]
22212 fn can_cast(kind: SyntaxKind) -> bool {
22213 kind == SyntaxKind::GROUPING_EXPR
22214 }
22215 #[inline]
22216 fn cast(syntax: SyntaxNode) -> Option<Self> {
22217 if Self::can_cast(syntax.kind()) {
22218 Some(Self { syntax })
22219 } else {
22220 None
22221 }
22222 }
22223 #[inline]
22224 fn syntax(&self) -> &SyntaxNode {
22225 &self.syntax
22226 }
22227}
22228impl AstNode for GroupingRollup {
22229 #[inline]
22230 fn can_cast(kind: SyntaxKind) -> bool {
22231 kind == SyntaxKind::GROUPING_ROLLUP
22232 }
22233 #[inline]
22234 fn cast(syntax: SyntaxNode) -> Option<Self> {
22235 if Self::can_cast(syntax.kind()) {
22236 Some(Self { syntax })
22237 } else {
22238 None
22239 }
22240 }
22241 #[inline]
22242 fn syntax(&self) -> &SyntaxNode {
22243 &self.syntax
22244 }
22245}
22246impl AstNode for GroupingSets {
22247 #[inline]
22248 fn can_cast(kind: SyntaxKind) -> bool {
22249 kind == SyntaxKind::GROUPING_SETS
22250 }
22251 #[inline]
22252 fn cast(syntax: SyntaxNode) -> Option<Self> {
22253 if Self::can_cast(syntax.kind()) {
22254 Some(Self { syntax })
22255 } else {
22256 None
22257 }
22258 }
22259 #[inline]
22260 fn syntax(&self) -> &SyntaxNode {
22261 &self.syntax
22262 }
22263}
22264impl AstNode for Gteq {
22265 #[inline]
22266 fn can_cast(kind: SyntaxKind) -> bool {
22267 kind == SyntaxKind::GTEQ
22268 }
22269 #[inline]
22270 fn cast(syntax: SyntaxNode) -> Option<Self> {
22271 if Self::can_cast(syntax.kind()) {
22272 Some(Self { syntax })
22273 } else {
22274 None
22275 }
22276 }
22277 #[inline]
22278 fn syntax(&self) -> &SyntaxNode {
22279 &self.syntax
22280 }
22281}
22282impl AstNode for HandlerClause {
22283 #[inline]
22284 fn can_cast(kind: SyntaxKind) -> bool {
22285 kind == SyntaxKind::HANDLER_CLAUSE
22286 }
22287 #[inline]
22288 fn cast(syntax: SyntaxNode) -> Option<Self> {
22289 if Self::can_cast(syntax.kind()) {
22290 Some(Self { syntax })
22291 } else {
22292 None
22293 }
22294 }
22295 #[inline]
22296 fn syntax(&self) -> &SyntaxNode {
22297 &self.syntax
22298 }
22299}
22300impl AstNode for HavingClause {
22301 #[inline]
22302 fn can_cast(kind: SyntaxKind) -> bool {
22303 kind == SyntaxKind::HAVING_CLAUSE
22304 }
22305 #[inline]
22306 fn cast(syntax: SyntaxNode) -> Option<Self> {
22307 if Self::can_cast(syntax.kind()) {
22308 Some(Self { syntax })
22309 } else {
22310 None
22311 }
22312 }
22313 #[inline]
22314 fn syntax(&self) -> &SyntaxNode {
22315 &self.syntax
22316 }
22317}
22318impl AstNode for IfExists {
22319 #[inline]
22320 fn can_cast(kind: SyntaxKind) -> bool {
22321 kind == SyntaxKind::IF_EXISTS
22322 }
22323 #[inline]
22324 fn cast(syntax: SyntaxNode) -> Option<Self> {
22325 if Self::can_cast(syntax.kind()) {
22326 Some(Self { syntax })
22327 } else {
22328 None
22329 }
22330 }
22331 #[inline]
22332 fn syntax(&self) -> &SyntaxNode {
22333 &self.syntax
22334 }
22335}
22336impl AstNode for IfNotExists {
22337 #[inline]
22338 fn can_cast(kind: SyntaxKind) -> bool {
22339 kind == SyntaxKind::IF_NOT_EXISTS
22340 }
22341 #[inline]
22342 fn cast(syntax: SyntaxNode) -> Option<Self> {
22343 if Self::can_cast(syntax.kind()) {
22344 Some(Self { syntax })
22345 } else {
22346 None
22347 }
22348 }
22349 #[inline]
22350 fn syntax(&self) -> &SyntaxNode {
22351 &self.syntax
22352 }
22353}
22354impl AstNode for ImportForeignSchema {
22355 #[inline]
22356 fn can_cast(kind: SyntaxKind) -> bool {
22357 kind == SyntaxKind::IMPORT_FOREIGN_SCHEMA
22358 }
22359 #[inline]
22360 fn cast(syntax: SyntaxNode) -> Option<Self> {
22361 if Self::can_cast(syntax.kind()) {
22362 Some(Self { syntax })
22363 } else {
22364 None
22365 }
22366 }
22367 #[inline]
22368 fn syntax(&self) -> &SyntaxNode {
22369 &self.syntax
22370 }
22371}
22372impl AstNode for IndexExpr {
22373 #[inline]
22374 fn can_cast(kind: SyntaxKind) -> bool {
22375 kind == SyntaxKind::INDEX_EXPR
22376 }
22377 #[inline]
22378 fn cast(syntax: SyntaxNode) -> Option<Self> {
22379 if Self::can_cast(syntax.kind()) {
22380 Some(Self { syntax })
22381 } else {
22382 None
22383 }
22384 }
22385 #[inline]
22386 fn syntax(&self) -> &SyntaxNode {
22387 &self.syntax
22388 }
22389}
22390impl AstNode for Inherit {
22391 #[inline]
22392 fn can_cast(kind: SyntaxKind) -> bool {
22393 kind == SyntaxKind::INHERIT
22394 }
22395 #[inline]
22396 fn cast(syntax: SyntaxNode) -> Option<Self> {
22397 if Self::can_cast(syntax.kind()) {
22398 Some(Self { syntax })
22399 } else {
22400 None
22401 }
22402 }
22403 #[inline]
22404 fn syntax(&self) -> &SyntaxNode {
22405 &self.syntax
22406 }
22407}
22408impl AstNode for InheritTable {
22409 #[inline]
22410 fn can_cast(kind: SyntaxKind) -> bool {
22411 kind == SyntaxKind::INHERIT_TABLE
22412 }
22413 #[inline]
22414 fn cast(syntax: SyntaxNode) -> Option<Self> {
22415 if Self::can_cast(syntax.kind()) {
22416 Some(Self { syntax })
22417 } else {
22418 None
22419 }
22420 }
22421 #[inline]
22422 fn syntax(&self) -> &SyntaxNode {
22423 &self.syntax
22424 }
22425}
22426impl AstNode for Inherits {
22427 #[inline]
22428 fn can_cast(kind: SyntaxKind) -> bool {
22429 kind == SyntaxKind::INHERITS
22430 }
22431 #[inline]
22432 fn cast(syntax: SyntaxNode) -> Option<Self> {
22433 if Self::can_cast(syntax.kind()) {
22434 Some(Self { syntax })
22435 } else {
22436 None
22437 }
22438 }
22439 #[inline]
22440 fn syntax(&self) -> &SyntaxNode {
22441 &self.syntax
22442 }
22443}
22444impl AstNode for InitiallyDeferredConstraintOption {
22445 #[inline]
22446 fn can_cast(kind: SyntaxKind) -> bool {
22447 kind == SyntaxKind::INITIALLY_DEFERRED_CONSTRAINT_OPTION
22448 }
22449 #[inline]
22450 fn cast(syntax: SyntaxNode) -> Option<Self> {
22451 if Self::can_cast(syntax.kind()) {
22452 Some(Self { syntax })
22453 } else {
22454 None
22455 }
22456 }
22457 #[inline]
22458 fn syntax(&self) -> &SyntaxNode {
22459 &self.syntax
22460 }
22461}
22462impl AstNode for InitiallyImmediateConstraintOption {
22463 #[inline]
22464 fn can_cast(kind: SyntaxKind) -> bool {
22465 kind == SyntaxKind::INITIALLY_IMMEDIATE_CONSTRAINT_OPTION
22466 }
22467 #[inline]
22468 fn cast(syntax: SyntaxNode) -> Option<Self> {
22469 if Self::can_cast(syntax.kind()) {
22470 Some(Self { syntax })
22471 } else {
22472 None
22473 }
22474 }
22475 #[inline]
22476 fn syntax(&self) -> &SyntaxNode {
22477 &self.syntax
22478 }
22479}
22480impl AstNode for Insert {
22481 #[inline]
22482 fn can_cast(kind: SyntaxKind) -> bool {
22483 kind == SyntaxKind::INSERT
22484 }
22485 #[inline]
22486 fn cast(syntax: SyntaxNode) -> Option<Self> {
22487 if Self::can_cast(syntax.kind()) {
22488 Some(Self { syntax })
22489 } else {
22490 None
22491 }
22492 }
22493 #[inline]
22494 fn syntax(&self) -> &SyntaxNode {
22495 &self.syntax
22496 }
22497}
22498impl AstNode for IntervalType {
22499 #[inline]
22500 fn can_cast(kind: SyntaxKind) -> bool {
22501 kind == SyntaxKind::INTERVAL_TYPE
22502 }
22503 #[inline]
22504 fn cast(syntax: SyntaxNode) -> Option<Self> {
22505 if Self::can_cast(syntax.kind()) {
22506 Some(Self { syntax })
22507 } else {
22508 None
22509 }
22510 }
22511 #[inline]
22512 fn syntax(&self) -> &SyntaxNode {
22513 &self.syntax
22514 }
22515}
22516impl AstNode for IntoClause {
22517 #[inline]
22518 fn can_cast(kind: SyntaxKind) -> bool {
22519 kind == SyntaxKind::INTO_CLAUSE
22520 }
22521 #[inline]
22522 fn cast(syntax: SyntaxNode) -> Option<Self> {
22523 if Self::can_cast(syntax.kind()) {
22524 Some(Self { syntax })
22525 } else {
22526 None
22527 }
22528 }
22529 #[inline]
22530 fn syntax(&self) -> &SyntaxNode {
22531 &self.syntax
22532 }
22533}
22534impl AstNode for IntoSchema {
22535 #[inline]
22536 fn can_cast(kind: SyntaxKind) -> bool {
22537 kind == SyntaxKind::INTO_SCHEMA
22538 }
22539 #[inline]
22540 fn cast(syntax: SyntaxNode) -> Option<Self> {
22541 if Self::can_cast(syntax.kind()) {
22542 Some(Self { syntax })
22543 } else {
22544 None
22545 }
22546 }
22547 #[inline]
22548 fn syntax(&self) -> &SyntaxNode {
22549 &self.syntax
22550 }
22551}
22552impl AstNode for IsDistinctFrom {
22553 #[inline]
22554 fn can_cast(kind: SyntaxKind) -> bool {
22555 kind == SyntaxKind::IS_DISTINCT_FROM
22556 }
22557 #[inline]
22558 fn cast(syntax: SyntaxNode) -> Option<Self> {
22559 if Self::can_cast(syntax.kind()) {
22560 Some(Self { syntax })
22561 } else {
22562 None
22563 }
22564 }
22565 #[inline]
22566 fn syntax(&self) -> &SyntaxNode {
22567 &self.syntax
22568 }
22569}
22570impl AstNode for IsJson {
22571 #[inline]
22572 fn can_cast(kind: SyntaxKind) -> bool {
22573 kind == SyntaxKind::IS_JSON
22574 }
22575 #[inline]
22576 fn cast(syntax: SyntaxNode) -> Option<Self> {
22577 if Self::can_cast(syntax.kind()) {
22578 Some(Self { syntax })
22579 } else {
22580 None
22581 }
22582 }
22583 #[inline]
22584 fn syntax(&self) -> &SyntaxNode {
22585 &self.syntax
22586 }
22587}
22588impl AstNode for IsJsonArray {
22589 #[inline]
22590 fn can_cast(kind: SyntaxKind) -> bool {
22591 kind == SyntaxKind::IS_JSON_ARRAY
22592 }
22593 #[inline]
22594 fn cast(syntax: SyntaxNode) -> Option<Self> {
22595 if Self::can_cast(syntax.kind()) {
22596 Some(Self { syntax })
22597 } else {
22598 None
22599 }
22600 }
22601 #[inline]
22602 fn syntax(&self) -> &SyntaxNode {
22603 &self.syntax
22604 }
22605}
22606impl AstNode for IsJsonObject {
22607 #[inline]
22608 fn can_cast(kind: SyntaxKind) -> bool {
22609 kind == SyntaxKind::IS_JSON_OBJECT
22610 }
22611 #[inline]
22612 fn cast(syntax: SyntaxNode) -> Option<Self> {
22613 if Self::can_cast(syntax.kind()) {
22614 Some(Self { syntax })
22615 } else {
22616 None
22617 }
22618 }
22619 #[inline]
22620 fn syntax(&self) -> &SyntaxNode {
22621 &self.syntax
22622 }
22623}
22624impl AstNode for IsJsonScalar {
22625 #[inline]
22626 fn can_cast(kind: SyntaxKind) -> bool {
22627 kind == SyntaxKind::IS_JSON_SCALAR
22628 }
22629 #[inline]
22630 fn cast(syntax: SyntaxNode) -> Option<Self> {
22631 if Self::can_cast(syntax.kind()) {
22632 Some(Self { syntax })
22633 } else {
22634 None
22635 }
22636 }
22637 #[inline]
22638 fn syntax(&self) -> &SyntaxNode {
22639 &self.syntax
22640 }
22641}
22642impl AstNode for IsJsonValue {
22643 #[inline]
22644 fn can_cast(kind: SyntaxKind) -> bool {
22645 kind == SyntaxKind::IS_JSON_VALUE
22646 }
22647 #[inline]
22648 fn cast(syntax: SyntaxNode) -> Option<Self> {
22649 if Self::can_cast(syntax.kind()) {
22650 Some(Self { syntax })
22651 } else {
22652 None
22653 }
22654 }
22655 #[inline]
22656 fn syntax(&self) -> &SyntaxNode {
22657 &self.syntax
22658 }
22659}
22660impl AstNode for IsNormalized {
22661 #[inline]
22662 fn can_cast(kind: SyntaxKind) -> bool {
22663 kind == SyntaxKind::IS_NORMALIZED
22664 }
22665 #[inline]
22666 fn cast(syntax: SyntaxNode) -> Option<Self> {
22667 if Self::can_cast(syntax.kind()) {
22668 Some(Self { syntax })
22669 } else {
22670 None
22671 }
22672 }
22673 #[inline]
22674 fn syntax(&self) -> &SyntaxNode {
22675 &self.syntax
22676 }
22677}
22678impl AstNode for IsNot {
22679 #[inline]
22680 fn can_cast(kind: SyntaxKind) -> bool {
22681 kind == SyntaxKind::IS_NOT
22682 }
22683 #[inline]
22684 fn cast(syntax: SyntaxNode) -> Option<Self> {
22685 if Self::can_cast(syntax.kind()) {
22686 Some(Self { syntax })
22687 } else {
22688 None
22689 }
22690 }
22691 #[inline]
22692 fn syntax(&self) -> &SyntaxNode {
22693 &self.syntax
22694 }
22695}
22696impl AstNode for IsNotDistinctFrom {
22697 #[inline]
22698 fn can_cast(kind: SyntaxKind) -> bool {
22699 kind == SyntaxKind::IS_NOT_DISTINCT_FROM
22700 }
22701 #[inline]
22702 fn cast(syntax: SyntaxNode) -> Option<Self> {
22703 if Self::can_cast(syntax.kind()) {
22704 Some(Self { syntax })
22705 } else {
22706 None
22707 }
22708 }
22709 #[inline]
22710 fn syntax(&self) -> &SyntaxNode {
22711 &self.syntax
22712 }
22713}
22714impl AstNode for IsNotJson {
22715 #[inline]
22716 fn can_cast(kind: SyntaxKind) -> bool {
22717 kind == SyntaxKind::IS_NOT_JSON
22718 }
22719 #[inline]
22720 fn cast(syntax: SyntaxNode) -> Option<Self> {
22721 if Self::can_cast(syntax.kind()) {
22722 Some(Self { syntax })
22723 } else {
22724 None
22725 }
22726 }
22727 #[inline]
22728 fn syntax(&self) -> &SyntaxNode {
22729 &self.syntax
22730 }
22731}
22732impl AstNode for IsNotJsonArray {
22733 #[inline]
22734 fn can_cast(kind: SyntaxKind) -> bool {
22735 kind == SyntaxKind::IS_NOT_JSON_ARRAY
22736 }
22737 #[inline]
22738 fn cast(syntax: SyntaxNode) -> Option<Self> {
22739 if Self::can_cast(syntax.kind()) {
22740 Some(Self { syntax })
22741 } else {
22742 None
22743 }
22744 }
22745 #[inline]
22746 fn syntax(&self) -> &SyntaxNode {
22747 &self.syntax
22748 }
22749}
22750impl AstNode for IsNotJsonObject {
22751 #[inline]
22752 fn can_cast(kind: SyntaxKind) -> bool {
22753 kind == SyntaxKind::IS_NOT_JSON_OBJECT
22754 }
22755 #[inline]
22756 fn cast(syntax: SyntaxNode) -> Option<Self> {
22757 if Self::can_cast(syntax.kind()) {
22758 Some(Self { syntax })
22759 } else {
22760 None
22761 }
22762 }
22763 #[inline]
22764 fn syntax(&self) -> &SyntaxNode {
22765 &self.syntax
22766 }
22767}
22768impl AstNode for IsNotJsonScalar {
22769 #[inline]
22770 fn can_cast(kind: SyntaxKind) -> bool {
22771 kind == SyntaxKind::IS_NOT_JSON_SCALAR
22772 }
22773 #[inline]
22774 fn cast(syntax: SyntaxNode) -> Option<Self> {
22775 if Self::can_cast(syntax.kind()) {
22776 Some(Self { syntax })
22777 } else {
22778 None
22779 }
22780 }
22781 #[inline]
22782 fn syntax(&self) -> &SyntaxNode {
22783 &self.syntax
22784 }
22785}
22786impl AstNode for IsNotJsonValue {
22787 #[inline]
22788 fn can_cast(kind: SyntaxKind) -> bool {
22789 kind == SyntaxKind::IS_NOT_JSON_VALUE
22790 }
22791 #[inline]
22792 fn cast(syntax: SyntaxNode) -> Option<Self> {
22793 if Self::can_cast(syntax.kind()) {
22794 Some(Self { syntax })
22795 } else {
22796 None
22797 }
22798 }
22799 #[inline]
22800 fn syntax(&self) -> &SyntaxNode {
22801 &self.syntax
22802 }
22803}
22804impl AstNode for IsNotNormalized {
22805 #[inline]
22806 fn can_cast(kind: SyntaxKind) -> bool {
22807 kind == SyntaxKind::IS_NOT_NORMALIZED
22808 }
22809 #[inline]
22810 fn cast(syntax: SyntaxNode) -> Option<Self> {
22811 if Self::can_cast(syntax.kind()) {
22812 Some(Self { syntax })
22813 } else {
22814 None
22815 }
22816 }
22817 #[inline]
22818 fn syntax(&self) -> &SyntaxNode {
22819 &self.syntax
22820 }
22821}
22822impl AstNode for Join {
22823 #[inline]
22824 fn can_cast(kind: SyntaxKind) -> bool {
22825 kind == SyntaxKind::JOIN
22826 }
22827 #[inline]
22828 fn cast(syntax: SyntaxNode) -> Option<Self> {
22829 if Self::can_cast(syntax.kind()) {
22830 Some(Self { syntax })
22831 } else {
22832 None
22833 }
22834 }
22835 #[inline]
22836 fn syntax(&self) -> &SyntaxNode {
22837 &self.syntax
22838 }
22839}
22840impl AstNode for JoinCross {
22841 #[inline]
22842 fn can_cast(kind: SyntaxKind) -> bool {
22843 kind == SyntaxKind::JOIN_CROSS
22844 }
22845 #[inline]
22846 fn cast(syntax: SyntaxNode) -> Option<Self> {
22847 if Self::can_cast(syntax.kind()) {
22848 Some(Self { syntax })
22849 } else {
22850 None
22851 }
22852 }
22853 #[inline]
22854 fn syntax(&self) -> &SyntaxNode {
22855 &self.syntax
22856 }
22857}
22858impl AstNode for JoinExpr {
22859 #[inline]
22860 fn can_cast(kind: SyntaxKind) -> bool {
22861 kind == SyntaxKind::JOIN_EXPR
22862 }
22863 #[inline]
22864 fn cast(syntax: SyntaxNode) -> Option<Self> {
22865 if Self::can_cast(syntax.kind()) {
22866 Some(Self { syntax })
22867 } else {
22868 None
22869 }
22870 }
22871 #[inline]
22872 fn syntax(&self) -> &SyntaxNode {
22873 &self.syntax
22874 }
22875}
22876impl AstNode for JoinFull {
22877 #[inline]
22878 fn can_cast(kind: SyntaxKind) -> bool {
22879 kind == SyntaxKind::JOIN_FULL
22880 }
22881 #[inline]
22882 fn cast(syntax: SyntaxNode) -> Option<Self> {
22883 if Self::can_cast(syntax.kind()) {
22884 Some(Self { syntax })
22885 } else {
22886 None
22887 }
22888 }
22889 #[inline]
22890 fn syntax(&self) -> &SyntaxNode {
22891 &self.syntax
22892 }
22893}
22894impl AstNode for JoinInner {
22895 #[inline]
22896 fn can_cast(kind: SyntaxKind) -> bool {
22897 kind == SyntaxKind::JOIN_INNER
22898 }
22899 #[inline]
22900 fn cast(syntax: SyntaxNode) -> Option<Self> {
22901 if Self::can_cast(syntax.kind()) {
22902 Some(Self { syntax })
22903 } else {
22904 None
22905 }
22906 }
22907 #[inline]
22908 fn syntax(&self) -> &SyntaxNode {
22909 &self.syntax
22910 }
22911}
22912impl AstNode for JoinLeft {
22913 #[inline]
22914 fn can_cast(kind: SyntaxKind) -> bool {
22915 kind == SyntaxKind::JOIN_LEFT
22916 }
22917 #[inline]
22918 fn cast(syntax: SyntaxNode) -> Option<Self> {
22919 if Self::can_cast(syntax.kind()) {
22920 Some(Self { syntax })
22921 } else {
22922 None
22923 }
22924 }
22925 #[inline]
22926 fn syntax(&self) -> &SyntaxNode {
22927 &self.syntax
22928 }
22929}
22930impl AstNode for JoinRight {
22931 #[inline]
22932 fn can_cast(kind: SyntaxKind) -> bool {
22933 kind == SyntaxKind::JOIN_RIGHT
22934 }
22935 #[inline]
22936 fn cast(syntax: SyntaxNode) -> Option<Self> {
22937 if Self::can_cast(syntax.kind()) {
22938 Some(Self { syntax })
22939 } else {
22940 None
22941 }
22942 }
22943 #[inline]
22944 fn syntax(&self) -> &SyntaxNode {
22945 &self.syntax
22946 }
22947}
22948impl AstNode for JoinUsingClause {
22949 #[inline]
22950 fn can_cast(kind: SyntaxKind) -> bool {
22951 kind == SyntaxKind::JOIN_USING_CLAUSE
22952 }
22953 #[inline]
22954 fn cast(syntax: SyntaxNode) -> Option<Self> {
22955 if Self::can_cast(syntax.kind()) {
22956 Some(Self { syntax })
22957 } else {
22958 None
22959 }
22960 }
22961 #[inline]
22962 fn syntax(&self) -> &SyntaxNode {
22963 &self.syntax
22964 }
22965}
22966impl AstNode for JsonArrayAggFn {
22967 #[inline]
22968 fn can_cast(kind: SyntaxKind) -> bool {
22969 kind == SyntaxKind::JSON_ARRAY_AGG_FN
22970 }
22971 #[inline]
22972 fn cast(syntax: SyntaxNode) -> Option<Self> {
22973 if Self::can_cast(syntax.kind()) {
22974 Some(Self { syntax })
22975 } else {
22976 None
22977 }
22978 }
22979 #[inline]
22980 fn syntax(&self) -> &SyntaxNode {
22981 &self.syntax
22982 }
22983}
22984impl AstNode for JsonArrayFn {
22985 #[inline]
22986 fn can_cast(kind: SyntaxKind) -> bool {
22987 kind == SyntaxKind::JSON_ARRAY_FN
22988 }
22989 #[inline]
22990 fn cast(syntax: SyntaxNode) -> Option<Self> {
22991 if Self::can_cast(syntax.kind()) {
22992 Some(Self { syntax })
22993 } else {
22994 None
22995 }
22996 }
22997 #[inline]
22998 fn syntax(&self) -> &SyntaxNode {
22999 &self.syntax
23000 }
23001}
23002impl AstNode for JsonBehaviorClause {
23003 #[inline]
23004 fn can_cast(kind: SyntaxKind) -> bool {
23005 kind == SyntaxKind::JSON_BEHAVIOR_CLAUSE
23006 }
23007 #[inline]
23008 fn cast(syntax: SyntaxNode) -> Option<Self> {
23009 if Self::can_cast(syntax.kind()) {
23010 Some(Self { syntax })
23011 } else {
23012 None
23013 }
23014 }
23015 #[inline]
23016 fn syntax(&self) -> &SyntaxNode {
23017 &self.syntax
23018 }
23019}
23020impl AstNode for JsonBehaviorDefault {
23021 #[inline]
23022 fn can_cast(kind: SyntaxKind) -> bool {
23023 kind == SyntaxKind::JSON_BEHAVIOR_DEFAULT
23024 }
23025 #[inline]
23026 fn cast(syntax: SyntaxNode) -> Option<Self> {
23027 if Self::can_cast(syntax.kind()) {
23028 Some(Self { syntax })
23029 } else {
23030 None
23031 }
23032 }
23033 #[inline]
23034 fn syntax(&self) -> &SyntaxNode {
23035 &self.syntax
23036 }
23037}
23038impl AstNode for JsonBehaviorEmptyArray {
23039 #[inline]
23040 fn can_cast(kind: SyntaxKind) -> bool {
23041 kind == SyntaxKind::JSON_BEHAVIOR_EMPTY_ARRAY
23042 }
23043 #[inline]
23044 fn cast(syntax: SyntaxNode) -> Option<Self> {
23045 if Self::can_cast(syntax.kind()) {
23046 Some(Self { syntax })
23047 } else {
23048 None
23049 }
23050 }
23051 #[inline]
23052 fn syntax(&self) -> &SyntaxNode {
23053 &self.syntax
23054 }
23055}
23056impl AstNode for JsonBehaviorEmptyObject {
23057 #[inline]
23058 fn can_cast(kind: SyntaxKind) -> bool {
23059 kind == SyntaxKind::JSON_BEHAVIOR_EMPTY_OBJECT
23060 }
23061 #[inline]
23062 fn cast(syntax: SyntaxNode) -> Option<Self> {
23063 if Self::can_cast(syntax.kind()) {
23064 Some(Self { syntax })
23065 } else {
23066 None
23067 }
23068 }
23069 #[inline]
23070 fn syntax(&self) -> &SyntaxNode {
23071 &self.syntax
23072 }
23073}
23074impl AstNode for JsonBehaviorError {
23075 #[inline]
23076 fn can_cast(kind: SyntaxKind) -> bool {
23077 kind == SyntaxKind::JSON_BEHAVIOR_ERROR
23078 }
23079 #[inline]
23080 fn cast(syntax: SyntaxNode) -> Option<Self> {
23081 if Self::can_cast(syntax.kind()) {
23082 Some(Self { syntax })
23083 } else {
23084 None
23085 }
23086 }
23087 #[inline]
23088 fn syntax(&self) -> &SyntaxNode {
23089 &self.syntax
23090 }
23091}
23092impl AstNode for JsonBehaviorFalse {
23093 #[inline]
23094 fn can_cast(kind: SyntaxKind) -> bool {
23095 kind == SyntaxKind::JSON_BEHAVIOR_FALSE
23096 }
23097 #[inline]
23098 fn cast(syntax: SyntaxNode) -> Option<Self> {
23099 if Self::can_cast(syntax.kind()) {
23100 Some(Self { syntax })
23101 } else {
23102 None
23103 }
23104 }
23105 #[inline]
23106 fn syntax(&self) -> &SyntaxNode {
23107 &self.syntax
23108 }
23109}
23110impl AstNode for JsonBehaviorNull {
23111 #[inline]
23112 fn can_cast(kind: SyntaxKind) -> bool {
23113 kind == SyntaxKind::JSON_BEHAVIOR_NULL
23114 }
23115 #[inline]
23116 fn cast(syntax: SyntaxNode) -> Option<Self> {
23117 if Self::can_cast(syntax.kind()) {
23118 Some(Self { syntax })
23119 } else {
23120 None
23121 }
23122 }
23123 #[inline]
23124 fn syntax(&self) -> &SyntaxNode {
23125 &self.syntax
23126 }
23127}
23128impl AstNode for JsonBehaviorTrue {
23129 #[inline]
23130 fn can_cast(kind: SyntaxKind) -> bool {
23131 kind == SyntaxKind::JSON_BEHAVIOR_TRUE
23132 }
23133 #[inline]
23134 fn cast(syntax: SyntaxNode) -> Option<Self> {
23135 if Self::can_cast(syntax.kind()) {
23136 Some(Self { syntax })
23137 } else {
23138 None
23139 }
23140 }
23141 #[inline]
23142 fn syntax(&self) -> &SyntaxNode {
23143 &self.syntax
23144 }
23145}
23146impl AstNode for JsonBehaviorUnknown {
23147 #[inline]
23148 fn can_cast(kind: SyntaxKind) -> bool {
23149 kind == SyntaxKind::JSON_BEHAVIOR_UNKNOWN
23150 }
23151 #[inline]
23152 fn cast(syntax: SyntaxNode) -> Option<Self> {
23153 if Self::can_cast(syntax.kind()) {
23154 Some(Self { syntax })
23155 } else {
23156 None
23157 }
23158 }
23159 #[inline]
23160 fn syntax(&self) -> &SyntaxNode {
23161 &self.syntax
23162 }
23163}
23164impl AstNode for JsonEncodingClause {
23165 #[inline]
23166 fn can_cast(kind: SyntaxKind) -> bool {
23167 kind == SyntaxKind::JSON_ENCODING_CLAUSE
23168 }
23169 #[inline]
23170 fn cast(syntax: SyntaxNode) -> Option<Self> {
23171 if Self::can_cast(syntax.kind()) {
23172 Some(Self { syntax })
23173 } else {
23174 None
23175 }
23176 }
23177 #[inline]
23178 fn syntax(&self) -> &SyntaxNode {
23179 &self.syntax
23180 }
23181}
23182impl AstNode for JsonExistsFn {
23183 #[inline]
23184 fn can_cast(kind: SyntaxKind) -> bool {
23185 kind == SyntaxKind::JSON_EXISTS_FN
23186 }
23187 #[inline]
23188 fn cast(syntax: SyntaxNode) -> Option<Self> {
23189 if Self::can_cast(syntax.kind()) {
23190 Some(Self { syntax })
23191 } else {
23192 None
23193 }
23194 }
23195 #[inline]
23196 fn syntax(&self) -> &SyntaxNode {
23197 &self.syntax
23198 }
23199}
23200impl AstNode for JsonExprFormat {
23201 #[inline]
23202 fn can_cast(kind: SyntaxKind) -> bool {
23203 kind == SyntaxKind::JSON_EXPR_FORMAT
23204 }
23205 #[inline]
23206 fn cast(syntax: SyntaxNode) -> Option<Self> {
23207 if Self::can_cast(syntax.kind()) {
23208 Some(Self { syntax })
23209 } else {
23210 None
23211 }
23212 }
23213 #[inline]
23214 fn syntax(&self) -> &SyntaxNode {
23215 &self.syntax
23216 }
23217}
23218impl AstNode for JsonFn {
23219 #[inline]
23220 fn can_cast(kind: SyntaxKind) -> bool {
23221 kind == SyntaxKind::JSON_FN
23222 }
23223 #[inline]
23224 fn cast(syntax: SyntaxNode) -> Option<Self> {
23225 if Self::can_cast(syntax.kind()) {
23226 Some(Self { syntax })
23227 } else {
23228 None
23229 }
23230 }
23231 #[inline]
23232 fn syntax(&self) -> &SyntaxNode {
23233 &self.syntax
23234 }
23235}
23236impl AstNode for JsonFormatClause {
23237 #[inline]
23238 fn can_cast(kind: SyntaxKind) -> bool {
23239 kind == SyntaxKind::JSON_FORMAT_CLAUSE
23240 }
23241 #[inline]
23242 fn cast(syntax: SyntaxNode) -> Option<Self> {
23243 if Self::can_cast(syntax.kind()) {
23244 Some(Self { syntax })
23245 } else {
23246 None
23247 }
23248 }
23249 #[inline]
23250 fn syntax(&self) -> &SyntaxNode {
23251 &self.syntax
23252 }
23253}
23254impl AstNode for JsonKeyValue {
23255 #[inline]
23256 fn can_cast(kind: SyntaxKind) -> bool {
23257 kind == SyntaxKind::JSON_KEY_VALUE
23258 }
23259 #[inline]
23260 fn cast(syntax: SyntaxNode) -> Option<Self> {
23261 if Self::can_cast(syntax.kind()) {
23262 Some(Self { syntax })
23263 } else {
23264 None
23265 }
23266 }
23267 #[inline]
23268 fn syntax(&self) -> &SyntaxNode {
23269 &self.syntax
23270 }
23271}
23272impl AstNode for JsonKeysUniqueClause {
23273 #[inline]
23274 fn can_cast(kind: SyntaxKind) -> bool {
23275 kind == SyntaxKind::JSON_KEYS_UNIQUE_CLAUSE
23276 }
23277 #[inline]
23278 fn cast(syntax: SyntaxNode) -> Option<Self> {
23279 if Self::can_cast(syntax.kind()) {
23280 Some(Self { syntax })
23281 } else {
23282 None
23283 }
23284 }
23285 #[inline]
23286 fn syntax(&self) -> &SyntaxNode {
23287 &self.syntax
23288 }
23289}
23290impl AstNode for JsonNullClause {
23291 #[inline]
23292 fn can_cast(kind: SyntaxKind) -> bool {
23293 kind == SyntaxKind::JSON_NULL_CLAUSE
23294 }
23295 #[inline]
23296 fn cast(syntax: SyntaxNode) -> Option<Self> {
23297 if Self::can_cast(syntax.kind()) {
23298 Some(Self { syntax })
23299 } else {
23300 None
23301 }
23302 }
23303 #[inline]
23304 fn syntax(&self) -> &SyntaxNode {
23305 &self.syntax
23306 }
23307}
23308impl AstNode for JsonObjectAggFn {
23309 #[inline]
23310 fn can_cast(kind: SyntaxKind) -> bool {
23311 kind == SyntaxKind::JSON_OBJECT_AGG_FN
23312 }
23313 #[inline]
23314 fn cast(syntax: SyntaxNode) -> Option<Self> {
23315 if Self::can_cast(syntax.kind()) {
23316 Some(Self { syntax })
23317 } else {
23318 None
23319 }
23320 }
23321 #[inline]
23322 fn syntax(&self) -> &SyntaxNode {
23323 &self.syntax
23324 }
23325}
23326impl AstNode for JsonObjectFn {
23327 #[inline]
23328 fn can_cast(kind: SyntaxKind) -> bool {
23329 kind == SyntaxKind::JSON_OBJECT_FN
23330 }
23331 #[inline]
23332 fn cast(syntax: SyntaxNode) -> Option<Self> {
23333 if Self::can_cast(syntax.kind()) {
23334 Some(Self { syntax })
23335 } else {
23336 None
23337 }
23338 }
23339 #[inline]
23340 fn syntax(&self) -> &SyntaxNode {
23341 &self.syntax
23342 }
23343}
23344impl AstNode for JsonOnEmptyClause {
23345 #[inline]
23346 fn can_cast(kind: SyntaxKind) -> bool {
23347 kind == SyntaxKind::JSON_ON_EMPTY_CLAUSE
23348 }
23349 #[inline]
23350 fn cast(syntax: SyntaxNode) -> Option<Self> {
23351 if Self::can_cast(syntax.kind()) {
23352 Some(Self { syntax })
23353 } else {
23354 None
23355 }
23356 }
23357 #[inline]
23358 fn syntax(&self) -> &SyntaxNode {
23359 &self.syntax
23360 }
23361}
23362impl AstNode for JsonOnErrorClause {
23363 #[inline]
23364 fn can_cast(kind: SyntaxKind) -> bool {
23365 kind == SyntaxKind::JSON_ON_ERROR_CLAUSE
23366 }
23367 #[inline]
23368 fn cast(syntax: SyntaxNode) -> Option<Self> {
23369 if Self::can_cast(syntax.kind()) {
23370 Some(Self { syntax })
23371 } else {
23372 None
23373 }
23374 }
23375 #[inline]
23376 fn syntax(&self) -> &SyntaxNode {
23377 &self.syntax
23378 }
23379}
23380impl AstNode for JsonPassingArg {
23381 #[inline]
23382 fn can_cast(kind: SyntaxKind) -> bool {
23383 kind == SyntaxKind::JSON_PASSING_ARG
23384 }
23385 #[inline]
23386 fn cast(syntax: SyntaxNode) -> Option<Self> {
23387 if Self::can_cast(syntax.kind()) {
23388 Some(Self { syntax })
23389 } else {
23390 None
23391 }
23392 }
23393 #[inline]
23394 fn syntax(&self) -> &SyntaxNode {
23395 &self.syntax
23396 }
23397}
23398impl AstNode for JsonPassingClause {
23399 #[inline]
23400 fn can_cast(kind: SyntaxKind) -> bool {
23401 kind == SyntaxKind::JSON_PASSING_CLAUSE
23402 }
23403 #[inline]
23404 fn cast(syntax: SyntaxNode) -> Option<Self> {
23405 if Self::can_cast(syntax.kind()) {
23406 Some(Self { syntax })
23407 } else {
23408 None
23409 }
23410 }
23411 #[inline]
23412 fn syntax(&self) -> &SyntaxNode {
23413 &self.syntax
23414 }
23415}
23416impl AstNode for JsonPathClause {
23417 #[inline]
23418 fn can_cast(kind: SyntaxKind) -> bool {
23419 kind == SyntaxKind::JSON_PATH_CLAUSE
23420 }
23421 #[inline]
23422 fn cast(syntax: SyntaxNode) -> Option<Self> {
23423 if Self::can_cast(syntax.kind()) {
23424 Some(Self { syntax })
23425 } else {
23426 None
23427 }
23428 }
23429 #[inline]
23430 fn syntax(&self) -> &SyntaxNode {
23431 &self.syntax
23432 }
23433}
23434impl AstNode for JsonQueryFn {
23435 #[inline]
23436 fn can_cast(kind: SyntaxKind) -> bool {
23437 kind == SyntaxKind::JSON_QUERY_FN
23438 }
23439 #[inline]
23440 fn cast(syntax: SyntaxNode) -> Option<Self> {
23441 if Self::can_cast(syntax.kind()) {
23442 Some(Self { syntax })
23443 } else {
23444 None
23445 }
23446 }
23447 #[inline]
23448 fn syntax(&self) -> &SyntaxNode {
23449 &self.syntax
23450 }
23451}
23452impl AstNode for JsonQuotesClause {
23453 #[inline]
23454 fn can_cast(kind: SyntaxKind) -> bool {
23455 kind == SyntaxKind::JSON_QUOTES_CLAUSE
23456 }
23457 #[inline]
23458 fn cast(syntax: SyntaxNode) -> Option<Self> {
23459 if Self::can_cast(syntax.kind()) {
23460 Some(Self { syntax })
23461 } else {
23462 None
23463 }
23464 }
23465 #[inline]
23466 fn syntax(&self) -> &SyntaxNode {
23467 &self.syntax
23468 }
23469}
23470impl AstNode for JsonReturningClause {
23471 #[inline]
23472 fn can_cast(kind: SyntaxKind) -> bool {
23473 kind == SyntaxKind::JSON_RETURNING_CLAUSE
23474 }
23475 #[inline]
23476 fn cast(syntax: SyntaxNode) -> Option<Self> {
23477 if Self::can_cast(syntax.kind()) {
23478 Some(Self { syntax })
23479 } else {
23480 None
23481 }
23482 }
23483 #[inline]
23484 fn syntax(&self) -> &SyntaxNode {
23485 &self.syntax
23486 }
23487}
23488impl AstNode for JsonScalarFn {
23489 #[inline]
23490 fn can_cast(kind: SyntaxKind) -> bool {
23491 kind == SyntaxKind::JSON_SCALAR_FN
23492 }
23493 #[inline]
23494 fn cast(syntax: SyntaxNode) -> Option<Self> {
23495 if Self::can_cast(syntax.kind()) {
23496 Some(Self { syntax })
23497 } else {
23498 None
23499 }
23500 }
23501 #[inline]
23502 fn syntax(&self) -> &SyntaxNode {
23503 &self.syntax
23504 }
23505}
23506impl AstNode for JsonSelectFormat {
23507 #[inline]
23508 fn can_cast(kind: SyntaxKind) -> bool {
23509 kind == SyntaxKind::JSON_SELECT_FORMAT
23510 }
23511 #[inline]
23512 fn cast(syntax: SyntaxNode) -> Option<Self> {
23513 if Self::can_cast(syntax.kind()) {
23514 Some(Self { syntax })
23515 } else {
23516 None
23517 }
23518 }
23519 #[inline]
23520 fn syntax(&self) -> &SyntaxNode {
23521 &self.syntax
23522 }
23523}
23524impl AstNode for JsonSerializeFn {
23525 #[inline]
23526 fn can_cast(kind: SyntaxKind) -> bool {
23527 kind == SyntaxKind::JSON_SERIALIZE_FN
23528 }
23529 #[inline]
23530 fn cast(syntax: SyntaxNode) -> Option<Self> {
23531 if Self::can_cast(syntax.kind()) {
23532 Some(Self { syntax })
23533 } else {
23534 None
23535 }
23536 }
23537 #[inline]
23538 fn syntax(&self) -> &SyntaxNode {
23539 &self.syntax
23540 }
23541}
23542impl AstNode for JsonTable {
23543 #[inline]
23544 fn can_cast(kind: SyntaxKind) -> bool {
23545 kind == SyntaxKind::JSON_TABLE
23546 }
23547 #[inline]
23548 fn cast(syntax: SyntaxNode) -> Option<Self> {
23549 if Self::can_cast(syntax.kind()) {
23550 Some(Self { syntax })
23551 } else {
23552 None
23553 }
23554 }
23555 #[inline]
23556 fn syntax(&self) -> &SyntaxNode {
23557 &self.syntax
23558 }
23559}
23560impl AstNode for JsonTableColumn {
23561 #[inline]
23562 fn can_cast(kind: SyntaxKind) -> bool {
23563 kind == SyntaxKind::JSON_TABLE_COLUMN
23564 }
23565 #[inline]
23566 fn cast(syntax: SyntaxNode) -> Option<Self> {
23567 if Self::can_cast(syntax.kind()) {
23568 Some(Self { syntax })
23569 } else {
23570 None
23571 }
23572 }
23573 #[inline]
23574 fn syntax(&self) -> &SyntaxNode {
23575 &self.syntax
23576 }
23577}
23578impl AstNode for JsonTableColumnList {
23579 #[inline]
23580 fn can_cast(kind: SyntaxKind) -> bool {
23581 kind == SyntaxKind::JSON_TABLE_COLUMN_LIST
23582 }
23583 #[inline]
23584 fn cast(syntax: SyntaxNode) -> Option<Self> {
23585 if Self::can_cast(syntax.kind()) {
23586 Some(Self { syntax })
23587 } else {
23588 None
23589 }
23590 }
23591 #[inline]
23592 fn syntax(&self) -> &SyntaxNode {
23593 &self.syntax
23594 }
23595}
23596impl AstNode for JsonValueExpr {
23597 #[inline]
23598 fn can_cast(kind: SyntaxKind) -> bool {
23599 kind == SyntaxKind::JSON_VALUE_EXPR
23600 }
23601 #[inline]
23602 fn cast(syntax: SyntaxNode) -> Option<Self> {
23603 if Self::can_cast(syntax.kind()) {
23604 Some(Self { syntax })
23605 } else {
23606 None
23607 }
23608 }
23609 #[inline]
23610 fn syntax(&self) -> &SyntaxNode {
23611 &self.syntax
23612 }
23613}
23614impl AstNode for JsonValueFn {
23615 #[inline]
23616 fn can_cast(kind: SyntaxKind) -> bool {
23617 kind == SyntaxKind::JSON_VALUE_FN
23618 }
23619 #[inline]
23620 fn cast(syntax: SyntaxNode) -> Option<Self> {
23621 if Self::can_cast(syntax.kind()) {
23622 Some(Self { syntax })
23623 } else {
23624 None
23625 }
23626 }
23627 #[inline]
23628 fn syntax(&self) -> &SyntaxNode {
23629 &self.syntax
23630 }
23631}
23632impl AstNode for JsonWrapperBehaviorClause {
23633 #[inline]
23634 fn can_cast(kind: SyntaxKind) -> bool {
23635 kind == SyntaxKind::JSON_WRAPPER_BEHAVIOR_CLAUSE
23636 }
23637 #[inline]
23638 fn cast(syntax: SyntaxNode) -> Option<Self> {
23639 if Self::can_cast(syntax.kind()) {
23640 Some(Self { syntax })
23641 } else {
23642 None
23643 }
23644 }
23645 #[inline]
23646 fn syntax(&self) -> &SyntaxNode {
23647 &self.syntax
23648 }
23649}
23650impl AstNode for LanguageFuncOption {
23651 #[inline]
23652 fn can_cast(kind: SyntaxKind) -> bool {
23653 kind == SyntaxKind::LANGUAGE_FUNC_OPTION
23654 }
23655 #[inline]
23656 fn cast(syntax: SyntaxNode) -> Option<Self> {
23657 if Self::can_cast(syntax.kind()) {
23658 Some(Self { syntax })
23659 } else {
23660 None
23661 }
23662 }
23663 #[inline]
23664 fn syntax(&self) -> &SyntaxNode {
23665 &self.syntax
23666 }
23667}
23668impl AstNode for LeakproofFuncOption {
23669 #[inline]
23670 fn can_cast(kind: SyntaxKind) -> bool {
23671 kind == SyntaxKind::LEAKPROOF_FUNC_OPTION
23672 }
23673 #[inline]
23674 fn cast(syntax: SyntaxNode) -> Option<Self> {
23675 if Self::can_cast(syntax.kind()) {
23676 Some(Self { syntax })
23677 } else {
23678 None
23679 }
23680 }
23681 #[inline]
23682 fn syntax(&self) -> &SyntaxNode {
23683 &self.syntax
23684 }
23685}
23686impl AstNode for LikeClause {
23687 #[inline]
23688 fn can_cast(kind: SyntaxKind) -> bool {
23689 kind == SyntaxKind::LIKE_CLAUSE
23690 }
23691 #[inline]
23692 fn cast(syntax: SyntaxNode) -> Option<Self> {
23693 if Self::can_cast(syntax.kind()) {
23694 Some(Self { syntax })
23695 } else {
23696 None
23697 }
23698 }
23699 #[inline]
23700 fn syntax(&self) -> &SyntaxNode {
23701 &self.syntax
23702 }
23703}
23704impl AstNode for LikeOption {
23705 #[inline]
23706 fn can_cast(kind: SyntaxKind) -> bool {
23707 kind == SyntaxKind::LIKE_OPTION
23708 }
23709 #[inline]
23710 fn cast(syntax: SyntaxNode) -> Option<Self> {
23711 if Self::can_cast(syntax.kind()) {
23712 Some(Self { syntax })
23713 } else {
23714 None
23715 }
23716 }
23717 #[inline]
23718 fn syntax(&self) -> &SyntaxNode {
23719 &self.syntax
23720 }
23721}
23722impl AstNode for LimitClause {
23723 #[inline]
23724 fn can_cast(kind: SyntaxKind) -> bool {
23725 kind == SyntaxKind::LIMIT_CLAUSE
23726 }
23727 #[inline]
23728 fn cast(syntax: SyntaxNode) -> Option<Self> {
23729 if Self::can_cast(syntax.kind()) {
23730 Some(Self { syntax })
23731 } else {
23732 None
23733 }
23734 }
23735 #[inline]
23736 fn syntax(&self) -> &SyntaxNode {
23737 &self.syntax
23738 }
23739}
23740impl AstNode for LimitToTables {
23741 #[inline]
23742 fn can_cast(kind: SyntaxKind) -> bool {
23743 kind == SyntaxKind::LIMIT_TO_TABLES
23744 }
23745 #[inline]
23746 fn cast(syntax: SyntaxNode) -> Option<Self> {
23747 if Self::can_cast(syntax.kind()) {
23748 Some(Self { syntax })
23749 } else {
23750 None
23751 }
23752 }
23753 #[inline]
23754 fn syntax(&self) -> &SyntaxNode {
23755 &self.syntax
23756 }
23757}
23758impl AstNode for Listen {
23759 #[inline]
23760 fn can_cast(kind: SyntaxKind) -> bool {
23761 kind == SyntaxKind::LISTEN
23762 }
23763 #[inline]
23764 fn cast(syntax: SyntaxNode) -> Option<Self> {
23765 if Self::can_cast(syntax.kind()) {
23766 Some(Self { syntax })
23767 } else {
23768 None
23769 }
23770 }
23771 #[inline]
23772 fn syntax(&self) -> &SyntaxNode {
23773 &self.syntax
23774 }
23775}
23776impl AstNode for Literal {
23777 #[inline]
23778 fn can_cast(kind: SyntaxKind) -> bool {
23779 kind == SyntaxKind::LITERAL
23780 }
23781 #[inline]
23782 fn cast(syntax: SyntaxNode) -> Option<Self> {
23783 if Self::can_cast(syntax.kind()) {
23784 Some(Self { syntax })
23785 } else {
23786 None
23787 }
23788 }
23789 #[inline]
23790 fn syntax(&self) -> &SyntaxNode {
23791 &self.syntax
23792 }
23793}
23794impl AstNode for Load {
23795 #[inline]
23796 fn can_cast(kind: SyntaxKind) -> bool {
23797 kind == SyntaxKind::LOAD
23798 }
23799 #[inline]
23800 fn cast(syntax: SyntaxNode) -> Option<Self> {
23801 if Self::can_cast(syntax.kind()) {
23802 Some(Self { syntax })
23803 } else {
23804 None
23805 }
23806 }
23807 #[inline]
23808 fn syntax(&self) -> &SyntaxNode {
23809 &self.syntax
23810 }
23811}
23812impl AstNode for Lock {
23813 #[inline]
23814 fn can_cast(kind: SyntaxKind) -> bool {
23815 kind == SyntaxKind::LOCK
23816 }
23817 #[inline]
23818 fn cast(syntax: SyntaxNode) -> Option<Self> {
23819 if Self::can_cast(syntax.kind()) {
23820 Some(Self { syntax })
23821 } else {
23822 None
23823 }
23824 }
23825 #[inline]
23826 fn syntax(&self) -> &SyntaxNode {
23827 &self.syntax
23828 }
23829}
23830impl AstNode for LockingClause {
23831 #[inline]
23832 fn can_cast(kind: SyntaxKind) -> bool {
23833 kind == SyntaxKind::LOCKING_CLAUSE
23834 }
23835 #[inline]
23836 fn cast(syntax: SyntaxNode) -> Option<Self> {
23837 if Self::can_cast(syntax.kind()) {
23838 Some(Self { syntax })
23839 } else {
23840 None
23841 }
23842 }
23843 #[inline]
23844 fn syntax(&self) -> &SyntaxNode {
23845 &self.syntax
23846 }
23847}
23848impl AstNode for Lteq {
23849 #[inline]
23850 fn can_cast(kind: SyntaxKind) -> bool {
23851 kind == SyntaxKind::LTEQ
23852 }
23853 #[inline]
23854 fn cast(syntax: SyntaxNode) -> Option<Self> {
23855 if Self::can_cast(syntax.kind()) {
23856 Some(Self { syntax })
23857 } else {
23858 None
23859 }
23860 }
23861 #[inline]
23862 fn syntax(&self) -> &SyntaxNode {
23863 &self.syntax
23864 }
23865}
23866impl AstNode for MatchFull {
23867 #[inline]
23868 fn can_cast(kind: SyntaxKind) -> bool {
23869 kind == SyntaxKind::MATCH_FULL
23870 }
23871 #[inline]
23872 fn cast(syntax: SyntaxNode) -> Option<Self> {
23873 if Self::can_cast(syntax.kind()) {
23874 Some(Self { syntax })
23875 } else {
23876 None
23877 }
23878 }
23879 #[inline]
23880 fn syntax(&self) -> &SyntaxNode {
23881 &self.syntax
23882 }
23883}
23884impl AstNode for MatchPartial {
23885 #[inline]
23886 fn can_cast(kind: SyntaxKind) -> bool {
23887 kind == SyntaxKind::MATCH_PARTIAL
23888 }
23889 #[inline]
23890 fn cast(syntax: SyntaxNode) -> Option<Self> {
23891 if Self::can_cast(syntax.kind()) {
23892 Some(Self { syntax })
23893 } else {
23894 None
23895 }
23896 }
23897 #[inline]
23898 fn syntax(&self) -> &SyntaxNode {
23899 &self.syntax
23900 }
23901}
23902impl AstNode for MatchSimple {
23903 #[inline]
23904 fn can_cast(kind: SyntaxKind) -> bool {
23905 kind == SyntaxKind::MATCH_SIMPLE
23906 }
23907 #[inline]
23908 fn cast(syntax: SyntaxNode) -> Option<Self> {
23909 if Self::can_cast(syntax.kind()) {
23910 Some(Self { syntax })
23911 } else {
23912 None
23913 }
23914 }
23915 #[inline]
23916 fn syntax(&self) -> &SyntaxNode {
23917 &self.syntax
23918 }
23919}
23920impl AstNode for Materialized {
23921 #[inline]
23922 fn can_cast(kind: SyntaxKind) -> bool {
23923 kind == SyntaxKind::MATERIALIZED
23924 }
23925 #[inline]
23926 fn cast(syntax: SyntaxNode) -> Option<Self> {
23927 if Self::can_cast(syntax.kind()) {
23928 Some(Self { syntax })
23929 } else {
23930 None
23931 }
23932 }
23933 #[inline]
23934 fn syntax(&self) -> &SyntaxNode {
23935 &self.syntax
23936 }
23937}
23938impl AstNode for Merge {
23939 #[inline]
23940 fn can_cast(kind: SyntaxKind) -> bool {
23941 kind == SyntaxKind::MERGE
23942 }
23943 #[inline]
23944 fn cast(syntax: SyntaxNode) -> Option<Self> {
23945 if Self::can_cast(syntax.kind()) {
23946 Some(Self { syntax })
23947 } else {
23948 None
23949 }
23950 }
23951 #[inline]
23952 fn syntax(&self) -> &SyntaxNode {
23953 &self.syntax
23954 }
23955}
23956impl AstNode for MergeDelete {
23957 #[inline]
23958 fn can_cast(kind: SyntaxKind) -> bool {
23959 kind == SyntaxKind::MERGE_DELETE
23960 }
23961 #[inline]
23962 fn cast(syntax: SyntaxNode) -> Option<Self> {
23963 if Self::can_cast(syntax.kind()) {
23964 Some(Self { syntax })
23965 } else {
23966 None
23967 }
23968 }
23969 #[inline]
23970 fn syntax(&self) -> &SyntaxNode {
23971 &self.syntax
23972 }
23973}
23974impl AstNode for MergeDoNothing {
23975 #[inline]
23976 fn can_cast(kind: SyntaxKind) -> bool {
23977 kind == SyntaxKind::MERGE_DO_NOTHING
23978 }
23979 #[inline]
23980 fn cast(syntax: SyntaxNode) -> Option<Self> {
23981 if Self::can_cast(syntax.kind()) {
23982 Some(Self { syntax })
23983 } else {
23984 None
23985 }
23986 }
23987 #[inline]
23988 fn syntax(&self) -> &SyntaxNode {
23989 &self.syntax
23990 }
23991}
23992impl AstNode for MergeInsert {
23993 #[inline]
23994 fn can_cast(kind: SyntaxKind) -> bool {
23995 kind == SyntaxKind::MERGE_INSERT
23996 }
23997 #[inline]
23998 fn cast(syntax: SyntaxNode) -> Option<Self> {
23999 if Self::can_cast(syntax.kind()) {
24000 Some(Self { syntax })
24001 } else {
24002 None
24003 }
24004 }
24005 #[inline]
24006 fn syntax(&self) -> &SyntaxNode {
24007 &self.syntax
24008 }
24009}
24010impl AstNode for MergePartitions {
24011 #[inline]
24012 fn can_cast(kind: SyntaxKind) -> bool {
24013 kind == SyntaxKind::MERGE_PARTITIONS
24014 }
24015 #[inline]
24016 fn cast(syntax: SyntaxNode) -> Option<Self> {
24017 if Self::can_cast(syntax.kind()) {
24018 Some(Self { syntax })
24019 } else {
24020 None
24021 }
24022 }
24023 #[inline]
24024 fn syntax(&self) -> &SyntaxNode {
24025 &self.syntax
24026 }
24027}
24028impl AstNode for MergeUpdate {
24029 #[inline]
24030 fn can_cast(kind: SyntaxKind) -> bool {
24031 kind == SyntaxKind::MERGE_UPDATE
24032 }
24033 #[inline]
24034 fn cast(syntax: SyntaxNode) -> Option<Self> {
24035 if Self::can_cast(syntax.kind()) {
24036 Some(Self { syntax })
24037 } else {
24038 None
24039 }
24040 }
24041 #[inline]
24042 fn syntax(&self) -> &SyntaxNode {
24043 &self.syntax
24044 }
24045}
24046impl AstNode for MergeWhenMatched {
24047 #[inline]
24048 fn can_cast(kind: SyntaxKind) -> bool {
24049 kind == SyntaxKind::MERGE_WHEN_MATCHED
24050 }
24051 #[inline]
24052 fn cast(syntax: SyntaxNode) -> Option<Self> {
24053 if Self::can_cast(syntax.kind()) {
24054 Some(Self { syntax })
24055 } else {
24056 None
24057 }
24058 }
24059 #[inline]
24060 fn syntax(&self) -> &SyntaxNode {
24061 &self.syntax
24062 }
24063}
24064impl AstNode for MergeWhenNotMatchedSource {
24065 #[inline]
24066 fn can_cast(kind: SyntaxKind) -> bool {
24067 kind == SyntaxKind::MERGE_WHEN_NOT_MATCHED_SOURCE
24068 }
24069 #[inline]
24070 fn cast(syntax: SyntaxNode) -> Option<Self> {
24071 if Self::can_cast(syntax.kind()) {
24072 Some(Self { syntax })
24073 } else {
24074 None
24075 }
24076 }
24077 #[inline]
24078 fn syntax(&self) -> &SyntaxNode {
24079 &self.syntax
24080 }
24081}
24082impl AstNode for MergeWhenNotMatchedTarget {
24083 #[inline]
24084 fn can_cast(kind: SyntaxKind) -> bool {
24085 kind == SyntaxKind::MERGE_WHEN_NOT_MATCHED_TARGET
24086 }
24087 #[inline]
24088 fn cast(syntax: SyntaxNode) -> Option<Self> {
24089 if Self::can_cast(syntax.kind()) {
24090 Some(Self { syntax })
24091 } else {
24092 None
24093 }
24094 }
24095 #[inline]
24096 fn syntax(&self) -> &SyntaxNode {
24097 &self.syntax
24098 }
24099}
24100impl AstNode for Move {
24101 #[inline]
24102 fn can_cast(kind: SyntaxKind) -> bool {
24103 kind == SyntaxKind::MOVE
24104 }
24105 #[inline]
24106 fn cast(syntax: SyntaxNode) -> Option<Self> {
24107 if Self::can_cast(syntax.kind()) {
24108 Some(Self { syntax })
24109 } else {
24110 None
24111 }
24112 }
24113 #[inline]
24114 fn syntax(&self) -> &SyntaxNode {
24115 &self.syntax
24116 }
24117}
24118impl AstNode for Name {
24119 #[inline]
24120 fn can_cast(kind: SyntaxKind) -> bool {
24121 kind == SyntaxKind::NAME
24122 }
24123 #[inline]
24124 fn cast(syntax: SyntaxNode) -> Option<Self> {
24125 if Self::can_cast(syntax.kind()) {
24126 Some(Self { syntax })
24127 } else {
24128 None
24129 }
24130 }
24131 #[inline]
24132 fn syntax(&self) -> &SyntaxNode {
24133 &self.syntax
24134 }
24135}
24136impl AstNode for NameRef {
24137 #[inline]
24138 fn can_cast(kind: SyntaxKind) -> bool {
24139 kind == SyntaxKind::NAME_REF
24140 }
24141 #[inline]
24142 fn cast(syntax: SyntaxNode) -> Option<Self> {
24143 if Self::can_cast(syntax.kind()) {
24144 Some(Self { syntax })
24145 } else {
24146 None
24147 }
24148 }
24149 #[inline]
24150 fn syntax(&self) -> &SyntaxNode {
24151 &self.syntax
24152 }
24153}
24154impl AstNode for NamedArg {
24155 #[inline]
24156 fn can_cast(kind: SyntaxKind) -> bool {
24157 kind == SyntaxKind::NAMED_ARG
24158 }
24159 #[inline]
24160 fn cast(syntax: SyntaxNode) -> Option<Self> {
24161 if Self::can_cast(syntax.kind()) {
24162 Some(Self { syntax })
24163 } else {
24164 None
24165 }
24166 }
24167 #[inline]
24168 fn syntax(&self) -> &SyntaxNode {
24169 &self.syntax
24170 }
24171}
24172impl AstNode for Neq {
24173 #[inline]
24174 fn can_cast(kind: SyntaxKind) -> bool {
24175 kind == SyntaxKind::NEQ
24176 }
24177 #[inline]
24178 fn cast(syntax: SyntaxNode) -> Option<Self> {
24179 if Self::can_cast(syntax.kind()) {
24180 Some(Self { syntax })
24181 } else {
24182 None
24183 }
24184 }
24185 #[inline]
24186 fn syntax(&self) -> &SyntaxNode {
24187 &self.syntax
24188 }
24189}
24190impl AstNode for Neqb {
24191 #[inline]
24192 fn can_cast(kind: SyntaxKind) -> bool {
24193 kind == SyntaxKind::NEQB
24194 }
24195 #[inline]
24196 fn cast(syntax: SyntaxNode) -> Option<Self> {
24197 if Self::can_cast(syntax.kind()) {
24198 Some(Self { syntax })
24199 } else {
24200 None
24201 }
24202 }
24203 #[inline]
24204 fn syntax(&self) -> &SyntaxNode {
24205 &self.syntax
24206 }
24207}
24208impl AstNode for NoAction {
24209 #[inline]
24210 fn can_cast(kind: SyntaxKind) -> bool {
24211 kind == SyntaxKind::NO_ACTION
24212 }
24213 #[inline]
24214 fn cast(syntax: SyntaxNode) -> Option<Self> {
24215 if Self::can_cast(syntax.kind()) {
24216 Some(Self { syntax })
24217 } else {
24218 None
24219 }
24220 }
24221 #[inline]
24222 fn syntax(&self) -> &SyntaxNode {
24223 &self.syntax
24224 }
24225}
24226impl AstNode for NoDependsOnExtension {
24227 #[inline]
24228 fn can_cast(kind: SyntaxKind) -> bool {
24229 kind == SyntaxKind::NO_DEPENDS_ON_EXTENSION
24230 }
24231 #[inline]
24232 fn cast(syntax: SyntaxNode) -> Option<Self> {
24233 if Self::can_cast(syntax.kind()) {
24234 Some(Self { syntax })
24235 } else {
24236 None
24237 }
24238 }
24239 #[inline]
24240 fn syntax(&self) -> &SyntaxNode {
24241 &self.syntax
24242 }
24243}
24244impl AstNode for NoForceRls {
24245 #[inline]
24246 fn can_cast(kind: SyntaxKind) -> bool {
24247 kind == SyntaxKind::NO_FORCE_RLS
24248 }
24249 #[inline]
24250 fn cast(syntax: SyntaxNode) -> Option<Self> {
24251 if Self::can_cast(syntax.kind()) {
24252 Some(Self { syntax })
24253 } else {
24254 None
24255 }
24256 }
24257 #[inline]
24258 fn syntax(&self) -> &SyntaxNode {
24259 &self.syntax
24260 }
24261}
24262impl AstNode for NoInherit {
24263 #[inline]
24264 fn can_cast(kind: SyntaxKind) -> bool {
24265 kind == SyntaxKind::NO_INHERIT
24266 }
24267 #[inline]
24268 fn cast(syntax: SyntaxNode) -> Option<Self> {
24269 if Self::can_cast(syntax.kind()) {
24270 Some(Self { syntax })
24271 } else {
24272 None
24273 }
24274 }
24275 #[inline]
24276 fn syntax(&self) -> &SyntaxNode {
24277 &self.syntax
24278 }
24279}
24280impl AstNode for NoInheritTable {
24281 #[inline]
24282 fn can_cast(kind: SyntaxKind) -> bool {
24283 kind == SyntaxKind::NO_INHERIT_TABLE
24284 }
24285 #[inline]
24286 fn cast(syntax: SyntaxNode) -> Option<Self> {
24287 if Self::can_cast(syntax.kind()) {
24288 Some(Self { syntax })
24289 } else {
24290 None
24291 }
24292 }
24293 #[inline]
24294 fn syntax(&self) -> &SyntaxNode {
24295 &self.syntax
24296 }
24297}
24298impl AstNode for NonStandardParam {
24299 #[inline]
24300 fn can_cast(kind: SyntaxKind) -> bool {
24301 kind == SyntaxKind::NON_STANDARD_PARAM
24302 }
24303 #[inline]
24304 fn cast(syntax: SyntaxNode) -> Option<Self> {
24305 if Self::can_cast(syntax.kind()) {
24306 Some(Self { syntax })
24307 } else {
24308 None
24309 }
24310 }
24311 #[inline]
24312 fn syntax(&self) -> &SyntaxNode {
24313 &self.syntax
24314 }
24315}
24316impl AstNode for NotDeferrable {
24317 #[inline]
24318 fn can_cast(kind: SyntaxKind) -> bool {
24319 kind == SyntaxKind::NOT_DEFERRABLE
24320 }
24321 #[inline]
24322 fn cast(syntax: SyntaxNode) -> Option<Self> {
24323 if Self::can_cast(syntax.kind()) {
24324 Some(Self { syntax })
24325 } else {
24326 None
24327 }
24328 }
24329 #[inline]
24330 fn syntax(&self) -> &SyntaxNode {
24331 &self.syntax
24332 }
24333}
24334impl AstNode for NotDeferrableConstraintOption {
24335 #[inline]
24336 fn can_cast(kind: SyntaxKind) -> bool {
24337 kind == SyntaxKind::NOT_DEFERRABLE_CONSTRAINT_OPTION
24338 }
24339 #[inline]
24340 fn cast(syntax: SyntaxNode) -> Option<Self> {
24341 if Self::can_cast(syntax.kind()) {
24342 Some(Self { syntax })
24343 } else {
24344 None
24345 }
24346 }
24347 #[inline]
24348 fn syntax(&self) -> &SyntaxNode {
24349 &self.syntax
24350 }
24351}
24352impl AstNode for NotEnforced {
24353 #[inline]
24354 fn can_cast(kind: SyntaxKind) -> bool {
24355 kind == SyntaxKind::NOT_ENFORCED
24356 }
24357 #[inline]
24358 fn cast(syntax: SyntaxNode) -> Option<Self> {
24359 if Self::can_cast(syntax.kind()) {
24360 Some(Self { syntax })
24361 } else {
24362 None
24363 }
24364 }
24365 #[inline]
24366 fn syntax(&self) -> &SyntaxNode {
24367 &self.syntax
24368 }
24369}
24370impl AstNode for NotIlike {
24371 #[inline]
24372 fn can_cast(kind: SyntaxKind) -> bool {
24373 kind == SyntaxKind::NOT_ILIKE
24374 }
24375 #[inline]
24376 fn cast(syntax: SyntaxNode) -> Option<Self> {
24377 if Self::can_cast(syntax.kind()) {
24378 Some(Self { syntax })
24379 } else {
24380 None
24381 }
24382 }
24383 #[inline]
24384 fn syntax(&self) -> &SyntaxNode {
24385 &self.syntax
24386 }
24387}
24388impl AstNode for NotIn {
24389 #[inline]
24390 fn can_cast(kind: SyntaxKind) -> bool {
24391 kind == SyntaxKind::NOT_IN
24392 }
24393 #[inline]
24394 fn cast(syntax: SyntaxNode) -> Option<Self> {
24395 if Self::can_cast(syntax.kind()) {
24396 Some(Self { syntax })
24397 } else {
24398 None
24399 }
24400 }
24401 #[inline]
24402 fn syntax(&self) -> &SyntaxNode {
24403 &self.syntax
24404 }
24405}
24406impl AstNode for NotLike {
24407 #[inline]
24408 fn can_cast(kind: SyntaxKind) -> bool {
24409 kind == SyntaxKind::NOT_LIKE
24410 }
24411 #[inline]
24412 fn cast(syntax: SyntaxNode) -> Option<Self> {
24413 if Self::can_cast(syntax.kind()) {
24414 Some(Self { syntax })
24415 } else {
24416 None
24417 }
24418 }
24419 #[inline]
24420 fn syntax(&self) -> &SyntaxNode {
24421 &self.syntax
24422 }
24423}
24424impl AstNode for NotMaterialized {
24425 #[inline]
24426 fn can_cast(kind: SyntaxKind) -> bool {
24427 kind == SyntaxKind::NOT_MATERIALIZED
24428 }
24429 #[inline]
24430 fn cast(syntax: SyntaxNode) -> Option<Self> {
24431 if Self::can_cast(syntax.kind()) {
24432 Some(Self { syntax })
24433 } else {
24434 None
24435 }
24436 }
24437 #[inline]
24438 fn syntax(&self) -> &SyntaxNode {
24439 &self.syntax
24440 }
24441}
24442impl AstNode for NotNullConstraint {
24443 #[inline]
24444 fn can_cast(kind: SyntaxKind) -> bool {
24445 kind == SyntaxKind::NOT_NULL_CONSTRAINT
24446 }
24447 #[inline]
24448 fn cast(syntax: SyntaxNode) -> Option<Self> {
24449 if Self::can_cast(syntax.kind()) {
24450 Some(Self { syntax })
24451 } else {
24452 None
24453 }
24454 }
24455 #[inline]
24456 fn syntax(&self) -> &SyntaxNode {
24457 &self.syntax
24458 }
24459}
24460impl AstNode for NotOf {
24461 #[inline]
24462 fn can_cast(kind: SyntaxKind) -> bool {
24463 kind == SyntaxKind::NOT_OF
24464 }
24465 #[inline]
24466 fn cast(syntax: SyntaxNode) -> Option<Self> {
24467 if Self::can_cast(syntax.kind()) {
24468 Some(Self { syntax })
24469 } else {
24470 None
24471 }
24472 }
24473 #[inline]
24474 fn syntax(&self) -> &SyntaxNode {
24475 &self.syntax
24476 }
24477}
24478impl AstNode for NotSimilarTo {
24479 #[inline]
24480 fn can_cast(kind: SyntaxKind) -> bool {
24481 kind == SyntaxKind::NOT_SIMILAR_TO
24482 }
24483 #[inline]
24484 fn cast(syntax: SyntaxNode) -> Option<Self> {
24485 if Self::can_cast(syntax.kind()) {
24486 Some(Self { syntax })
24487 } else {
24488 None
24489 }
24490 }
24491 #[inline]
24492 fn syntax(&self) -> &SyntaxNode {
24493 &self.syntax
24494 }
24495}
24496impl AstNode for NotValid {
24497 #[inline]
24498 fn can_cast(kind: SyntaxKind) -> bool {
24499 kind == SyntaxKind::NOT_VALID
24500 }
24501 #[inline]
24502 fn cast(syntax: SyntaxNode) -> Option<Self> {
24503 if Self::can_cast(syntax.kind()) {
24504 Some(Self { syntax })
24505 } else {
24506 None
24507 }
24508 }
24509 #[inline]
24510 fn syntax(&self) -> &SyntaxNode {
24511 &self.syntax
24512 }
24513}
24514impl AstNode for Notify {
24515 #[inline]
24516 fn can_cast(kind: SyntaxKind) -> bool {
24517 kind == SyntaxKind::NOTIFY
24518 }
24519 #[inline]
24520 fn cast(syntax: SyntaxNode) -> Option<Self> {
24521 if Self::can_cast(syntax.kind()) {
24522 Some(Self { syntax })
24523 } else {
24524 None
24525 }
24526 }
24527 #[inline]
24528 fn syntax(&self) -> &SyntaxNode {
24529 &self.syntax
24530 }
24531}
24532impl AstNode for NullConstraint {
24533 #[inline]
24534 fn can_cast(kind: SyntaxKind) -> bool {
24535 kind == SyntaxKind::NULL_CONSTRAINT
24536 }
24537 #[inline]
24538 fn cast(syntax: SyntaxNode) -> Option<Self> {
24539 if Self::can_cast(syntax.kind()) {
24540 Some(Self { syntax })
24541 } else {
24542 None
24543 }
24544 }
24545 #[inline]
24546 fn syntax(&self) -> &SyntaxNode {
24547 &self.syntax
24548 }
24549}
24550impl AstNode for NullsDistinct {
24551 #[inline]
24552 fn can_cast(kind: SyntaxKind) -> bool {
24553 kind == SyntaxKind::NULLS_DISTINCT
24554 }
24555 #[inline]
24556 fn cast(syntax: SyntaxNode) -> Option<Self> {
24557 if Self::can_cast(syntax.kind()) {
24558 Some(Self { syntax })
24559 } else {
24560 None
24561 }
24562 }
24563 #[inline]
24564 fn syntax(&self) -> &SyntaxNode {
24565 &self.syntax
24566 }
24567}
24568impl AstNode for NullsFirst {
24569 #[inline]
24570 fn can_cast(kind: SyntaxKind) -> bool {
24571 kind == SyntaxKind::NULLS_FIRST
24572 }
24573 #[inline]
24574 fn cast(syntax: SyntaxNode) -> Option<Self> {
24575 if Self::can_cast(syntax.kind()) {
24576 Some(Self { syntax })
24577 } else {
24578 None
24579 }
24580 }
24581 #[inline]
24582 fn syntax(&self) -> &SyntaxNode {
24583 &self.syntax
24584 }
24585}
24586impl AstNode for NullsLast {
24587 #[inline]
24588 fn can_cast(kind: SyntaxKind) -> bool {
24589 kind == SyntaxKind::NULLS_LAST
24590 }
24591 #[inline]
24592 fn cast(syntax: SyntaxNode) -> Option<Self> {
24593 if Self::can_cast(syntax.kind()) {
24594 Some(Self { syntax })
24595 } else {
24596 None
24597 }
24598 }
24599 #[inline]
24600 fn syntax(&self) -> &SyntaxNode {
24601 &self.syntax
24602 }
24603}
24604impl AstNode for NullsNotDistinct {
24605 #[inline]
24606 fn can_cast(kind: SyntaxKind) -> bool {
24607 kind == SyntaxKind::NULLS_NOT_DISTINCT
24608 }
24609 #[inline]
24610 fn cast(syntax: SyntaxNode) -> Option<Self> {
24611 if Self::can_cast(syntax.kind()) {
24612 Some(Self { syntax })
24613 } else {
24614 None
24615 }
24616 }
24617 #[inline]
24618 fn syntax(&self) -> &SyntaxNode {
24619 &self.syntax
24620 }
24621}
24622impl AstNode for OfType {
24623 #[inline]
24624 fn can_cast(kind: SyntaxKind) -> bool {
24625 kind == SyntaxKind::OF_TYPE
24626 }
24627 #[inline]
24628 fn cast(syntax: SyntaxNode) -> Option<Self> {
24629 if Self::can_cast(syntax.kind()) {
24630 Some(Self { syntax })
24631 } else {
24632 None
24633 }
24634 }
24635 #[inline]
24636 fn syntax(&self) -> &SyntaxNode {
24637 &self.syntax
24638 }
24639}
24640impl AstNode for OffsetClause {
24641 #[inline]
24642 fn can_cast(kind: SyntaxKind) -> bool {
24643 kind == SyntaxKind::OFFSET_CLAUSE
24644 }
24645 #[inline]
24646 fn cast(syntax: SyntaxNode) -> Option<Self> {
24647 if Self::can_cast(syntax.kind()) {
24648 Some(Self { syntax })
24649 } else {
24650 None
24651 }
24652 }
24653 #[inline]
24654 fn syntax(&self) -> &SyntaxNode {
24655 &self.syntax
24656 }
24657}
24658impl AstNode for OnClause {
24659 #[inline]
24660 fn can_cast(kind: SyntaxKind) -> bool {
24661 kind == SyntaxKind::ON_CLAUSE
24662 }
24663 #[inline]
24664 fn cast(syntax: SyntaxNode) -> Option<Self> {
24665 if Self::can_cast(syntax.kind()) {
24666 Some(Self { syntax })
24667 } else {
24668 None
24669 }
24670 }
24671 #[inline]
24672 fn syntax(&self) -> &SyntaxNode {
24673 &self.syntax
24674 }
24675}
24676impl AstNode for OnCommit {
24677 #[inline]
24678 fn can_cast(kind: SyntaxKind) -> bool {
24679 kind == SyntaxKind::ON_COMMIT
24680 }
24681 #[inline]
24682 fn cast(syntax: SyntaxNode) -> Option<Self> {
24683 if Self::can_cast(syntax.kind()) {
24684 Some(Self { syntax })
24685 } else {
24686 None
24687 }
24688 }
24689 #[inline]
24690 fn syntax(&self) -> &SyntaxNode {
24691 &self.syntax
24692 }
24693}
24694impl AstNode for OnConflictClause {
24695 #[inline]
24696 fn can_cast(kind: SyntaxKind) -> bool {
24697 kind == SyntaxKind::ON_CONFLICT_CLAUSE
24698 }
24699 #[inline]
24700 fn cast(syntax: SyntaxNode) -> Option<Self> {
24701 if Self::can_cast(syntax.kind()) {
24702 Some(Self { syntax })
24703 } else {
24704 None
24705 }
24706 }
24707 #[inline]
24708 fn syntax(&self) -> &SyntaxNode {
24709 &self.syntax
24710 }
24711}
24712impl AstNode for OnDeleteAction {
24713 #[inline]
24714 fn can_cast(kind: SyntaxKind) -> bool {
24715 kind == SyntaxKind::ON_DELETE_ACTION
24716 }
24717 #[inline]
24718 fn cast(syntax: SyntaxNode) -> Option<Self> {
24719 if Self::can_cast(syntax.kind()) {
24720 Some(Self { syntax })
24721 } else {
24722 None
24723 }
24724 }
24725 #[inline]
24726 fn syntax(&self) -> &SyntaxNode {
24727 &self.syntax
24728 }
24729}
24730impl AstNode for OnTable {
24731 #[inline]
24732 fn can_cast(kind: SyntaxKind) -> bool {
24733 kind == SyntaxKind::ON_TABLE
24734 }
24735 #[inline]
24736 fn cast(syntax: SyntaxNode) -> Option<Self> {
24737 if Self::can_cast(syntax.kind()) {
24738 Some(Self { syntax })
24739 } else {
24740 None
24741 }
24742 }
24743 #[inline]
24744 fn syntax(&self) -> &SyntaxNode {
24745 &self.syntax
24746 }
24747}
24748impl AstNode for OnUpdateAction {
24749 #[inline]
24750 fn can_cast(kind: SyntaxKind) -> bool {
24751 kind == SyntaxKind::ON_UPDATE_ACTION
24752 }
24753 #[inline]
24754 fn cast(syntax: SyntaxNode) -> Option<Self> {
24755 if Self::can_cast(syntax.kind()) {
24756 Some(Self { syntax })
24757 } else {
24758 None
24759 }
24760 }
24761 #[inline]
24762 fn syntax(&self) -> &SyntaxNode {
24763 &self.syntax
24764 }
24765}
24766impl AstNode for Op {
24767 #[inline]
24768 fn can_cast(kind: SyntaxKind) -> bool {
24769 kind == SyntaxKind::OP
24770 }
24771 #[inline]
24772 fn cast(syntax: SyntaxNode) -> Option<Self> {
24773 if Self::can_cast(syntax.kind()) {
24774 Some(Self { syntax })
24775 } else {
24776 None
24777 }
24778 }
24779 #[inline]
24780 fn syntax(&self) -> &SyntaxNode {
24781 &self.syntax
24782 }
24783}
24784impl AstNode for OpClassOption {
24785 #[inline]
24786 fn can_cast(kind: SyntaxKind) -> bool {
24787 kind == SyntaxKind::OP_CLASS_OPTION
24788 }
24789 #[inline]
24790 fn cast(syntax: SyntaxNode) -> Option<Self> {
24791 if Self::can_cast(syntax.kind()) {
24792 Some(Self { syntax })
24793 } else {
24794 None
24795 }
24796 }
24797 #[inline]
24798 fn syntax(&self) -> &SyntaxNode {
24799 &self.syntax
24800 }
24801}
24802impl AstNode for OpSig {
24803 #[inline]
24804 fn can_cast(kind: SyntaxKind) -> bool {
24805 kind == SyntaxKind::OP_SIG
24806 }
24807 #[inline]
24808 fn cast(syntax: SyntaxNode) -> Option<Self> {
24809 if Self::can_cast(syntax.kind()) {
24810 Some(Self { syntax })
24811 } else {
24812 None
24813 }
24814 }
24815 #[inline]
24816 fn syntax(&self) -> &SyntaxNode {
24817 &self.syntax
24818 }
24819}
24820impl AstNode for OpSigList {
24821 #[inline]
24822 fn can_cast(kind: SyntaxKind) -> bool {
24823 kind == SyntaxKind::OP_SIG_LIST
24824 }
24825 #[inline]
24826 fn cast(syntax: SyntaxNode) -> Option<Self> {
24827 if Self::can_cast(syntax.kind()) {
24828 Some(Self { syntax })
24829 } else {
24830 None
24831 }
24832 }
24833 #[inline]
24834 fn syntax(&self) -> &SyntaxNode {
24835 &self.syntax
24836 }
24837}
24838impl AstNode for OperatorCall {
24839 #[inline]
24840 fn can_cast(kind: SyntaxKind) -> bool {
24841 kind == SyntaxKind::OPERATOR_CALL
24842 }
24843 #[inline]
24844 fn cast(syntax: SyntaxNode) -> Option<Self> {
24845 if Self::can_cast(syntax.kind()) {
24846 Some(Self { syntax })
24847 } else {
24848 None
24849 }
24850 }
24851 #[inline]
24852 fn syntax(&self) -> &SyntaxNode {
24853 &self.syntax
24854 }
24855}
24856impl AstNode for OperatorClassOptionList {
24857 #[inline]
24858 fn can_cast(kind: SyntaxKind) -> bool {
24859 kind == SyntaxKind::OPERATOR_CLASS_OPTION_LIST
24860 }
24861 #[inline]
24862 fn cast(syntax: SyntaxNode) -> Option<Self> {
24863 if Self::can_cast(syntax.kind()) {
24864 Some(Self { syntax })
24865 } else {
24866 None
24867 }
24868 }
24869 #[inline]
24870 fn syntax(&self) -> &SyntaxNode {
24871 &self.syntax
24872 }
24873}
24874impl AstNode for OptionItem {
24875 #[inline]
24876 fn can_cast(kind: SyntaxKind) -> bool {
24877 kind == SyntaxKind::OPTION_ITEM
24878 }
24879 #[inline]
24880 fn cast(syntax: SyntaxNode) -> Option<Self> {
24881 if Self::can_cast(syntax.kind()) {
24882 Some(Self { syntax })
24883 } else {
24884 None
24885 }
24886 }
24887 #[inline]
24888 fn syntax(&self) -> &SyntaxNode {
24889 &self.syntax
24890 }
24891}
24892impl AstNode for OptionItemList {
24893 #[inline]
24894 fn can_cast(kind: SyntaxKind) -> bool {
24895 kind == SyntaxKind::OPTION_ITEM_LIST
24896 }
24897 #[inline]
24898 fn cast(syntax: SyntaxNode) -> Option<Self> {
24899 if Self::can_cast(syntax.kind()) {
24900 Some(Self { syntax })
24901 } else {
24902 None
24903 }
24904 }
24905 #[inline]
24906 fn syntax(&self) -> &SyntaxNode {
24907 &self.syntax
24908 }
24909}
24910impl AstNode for OrReplace {
24911 #[inline]
24912 fn can_cast(kind: SyntaxKind) -> bool {
24913 kind == SyntaxKind::OR_REPLACE
24914 }
24915 #[inline]
24916 fn cast(syntax: SyntaxNode) -> Option<Self> {
24917 if Self::can_cast(syntax.kind()) {
24918 Some(Self { syntax })
24919 } else {
24920 None
24921 }
24922 }
24923 #[inline]
24924 fn syntax(&self) -> &SyntaxNode {
24925 &self.syntax
24926 }
24927}
24928impl AstNode for OrderByClause {
24929 #[inline]
24930 fn can_cast(kind: SyntaxKind) -> bool {
24931 kind == SyntaxKind::ORDER_BY_CLAUSE
24932 }
24933 #[inline]
24934 fn cast(syntax: SyntaxNode) -> Option<Self> {
24935 if Self::can_cast(syntax.kind()) {
24936 Some(Self { syntax })
24937 } else {
24938 None
24939 }
24940 }
24941 #[inline]
24942 fn syntax(&self) -> &SyntaxNode {
24943 &self.syntax
24944 }
24945}
24946impl AstNode for OverClause {
24947 #[inline]
24948 fn can_cast(kind: SyntaxKind) -> bool {
24949 kind == SyntaxKind::OVER_CLAUSE
24950 }
24951 #[inline]
24952 fn cast(syntax: SyntaxNode) -> Option<Self> {
24953 if Self::can_cast(syntax.kind()) {
24954 Some(Self { syntax })
24955 } else {
24956 None
24957 }
24958 }
24959 #[inline]
24960 fn syntax(&self) -> &SyntaxNode {
24961 &self.syntax
24962 }
24963}
24964impl AstNode for OverlayFn {
24965 #[inline]
24966 fn can_cast(kind: SyntaxKind) -> bool {
24967 kind == SyntaxKind::OVERLAY_FN
24968 }
24969 #[inline]
24970 fn cast(syntax: SyntaxNode) -> Option<Self> {
24971 if Self::can_cast(syntax.kind()) {
24972 Some(Self { syntax })
24973 } else {
24974 None
24975 }
24976 }
24977 #[inline]
24978 fn syntax(&self) -> &SyntaxNode {
24979 &self.syntax
24980 }
24981}
24982impl AstNode for OwnedByRoles {
24983 #[inline]
24984 fn can_cast(kind: SyntaxKind) -> bool {
24985 kind == SyntaxKind::OWNED_BY_ROLES
24986 }
24987 #[inline]
24988 fn cast(syntax: SyntaxNode) -> Option<Self> {
24989 if Self::can_cast(syntax.kind()) {
24990 Some(Self { syntax })
24991 } else {
24992 None
24993 }
24994 }
24995 #[inline]
24996 fn syntax(&self) -> &SyntaxNode {
24997 &self.syntax
24998 }
24999}
25000impl AstNode for OwnerTo {
25001 #[inline]
25002 fn can_cast(kind: SyntaxKind) -> bool {
25003 kind == SyntaxKind::OWNER_TO
25004 }
25005 #[inline]
25006 fn cast(syntax: SyntaxNode) -> Option<Self> {
25007 if Self::can_cast(syntax.kind()) {
25008 Some(Self { syntax })
25009 } else {
25010 None
25011 }
25012 }
25013 #[inline]
25014 fn syntax(&self) -> &SyntaxNode {
25015 &self.syntax
25016 }
25017}
25018impl AstNode for ParallelFuncOption {
25019 #[inline]
25020 fn can_cast(kind: SyntaxKind) -> bool {
25021 kind == SyntaxKind::PARALLEL_FUNC_OPTION
25022 }
25023 #[inline]
25024 fn cast(syntax: SyntaxNode) -> Option<Self> {
25025 if Self::can_cast(syntax.kind()) {
25026 Some(Self { syntax })
25027 } else {
25028 None
25029 }
25030 }
25031 #[inline]
25032 fn syntax(&self) -> &SyntaxNode {
25033 &self.syntax
25034 }
25035}
25036impl AstNode for Param {
25037 #[inline]
25038 fn can_cast(kind: SyntaxKind) -> bool {
25039 kind == SyntaxKind::PARAM
25040 }
25041 #[inline]
25042 fn cast(syntax: SyntaxNode) -> Option<Self> {
25043 if Self::can_cast(syntax.kind()) {
25044 Some(Self { syntax })
25045 } else {
25046 None
25047 }
25048 }
25049 #[inline]
25050 fn syntax(&self) -> &SyntaxNode {
25051 &self.syntax
25052 }
25053}
25054impl AstNode for ParamDefault {
25055 #[inline]
25056 fn can_cast(kind: SyntaxKind) -> bool {
25057 kind == SyntaxKind::PARAM_DEFAULT
25058 }
25059 #[inline]
25060 fn cast(syntax: SyntaxNode) -> Option<Self> {
25061 if Self::can_cast(syntax.kind()) {
25062 Some(Self { syntax })
25063 } else {
25064 None
25065 }
25066 }
25067 #[inline]
25068 fn syntax(&self) -> &SyntaxNode {
25069 &self.syntax
25070 }
25071}
25072impl AstNode for ParamIn {
25073 #[inline]
25074 fn can_cast(kind: SyntaxKind) -> bool {
25075 kind == SyntaxKind::PARAM_IN
25076 }
25077 #[inline]
25078 fn cast(syntax: SyntaxNode) -> Option<Self> {
25079 if Self::can_cast(syntax.kind()) {
25080 Some(Self { syntax })
25081 } else {
25082 None
25083 }
25084 }
25085 #[inline]
25086 fn syntax(&self) -> &SyntaxNode {
25087 &self.syntax
25088 }
25089}
25090impl AstNode for ParamInOut {
25091 #[inline]
25092 fn can_cast(kind: SyntaxKind) -> bool {
25093 kind == SyntaxKind::PARAM_IN_OUT
25094 }
25095 #[inline]
25096 fn cast(syntax: SyntaxNode) -> Option<Self> {
25097 if Self::can_cast(syntax.kind()) {
25098 Some(Self { syntax })
25099 } else {
25100 None
25101 }
25102 }
25103 #[inline]
25104 fn syntax(&self) -> &SyntaxNode {
25105 &self.syntax
25106 }
25107}
25108impl AstNode for ParamList {
25109 #[inline]
25110 fn can_cast(kind: SyntaxKind) -> bool {
25111 kind == SyntaxKind::PARAM_LIST
25112 }
25113 #[inline]
25114 fn cast(syntax: SyntaxNode) -> Option<Self> {
25115 if Self::can_cast(syntax.kind()) {
25116 Some(Self { syntax })
25117 } else {
25118 None
25119 }
25120 }
25121 #[inline]
25122 fn syntax(&self) -> &SyntaxNode {
25123 &self.syntax
25124 }
25125}
25126impl AstNode for ParamOut {
25127 #[inline]
25128 fn can_cast(kind: SyntaxKind) -> bool {
25129 kind == SyntaxKind::PARAM_OUT
25130 }
25131 #[inline]
25132 fn cast(syntax: SyntaxNode) -> Option<Self> {
25133 if Self::can_cast(syntax.kind()) {
25134 Some(Self { syntax })
25135 } else {
25136 None
25137 }
25138 }
25139 #[inline]
25140 fn syntax(&self) -> &SyntaxNode {
25141 &self.syntax
25142 }
25143}
25144impl AstNode for ParamVariadic {
25145 #[inline]
25146 fn can_cast(kind: SyntaxKind) -> bool {
25147 kind == SyntaxKind::PARAM_VARIADIC
25148 }
25149 #[inline]
25150 fn cast(syntax: SyntaxNode) -> Option<Self> {
25151 if Self::can_cast(syntax.kind()) {
25152 Some(Self { syntax })
25153 } else {
25154 None
25155 }
25156 }
25157 #[inline]
25158 fn syntax(&self) -> &SyntaxNode {
25159 &self.syntax
25160 }
25161}
25162impl AstNode for ParenExpr {
25163 #[inline]
25164 fn can_cast(kind: SyntaxKind) -> bool {
25165 kind == SyntaxKind::PAREN_EXPR
25166 }
25167 #[inline]
25168 fn cast(syntax: SyntaxNode) -> Option<Self> {
25169 if Self::can_cast(syntax.kind()) {
25170 Some(Self { syntax })
25171 } else {
25172 None
25173 }
25174 }
25175 #[inline]
25176 fn syntax(&self) -> &SyntaxNode {
25177 &self.syntax
25178 }
25179}
25180impl AstNode for ParenSelect {
25181 #[inline]
25182 fn can_cast(kind: SyntaxKind) -> bool {
25183 kind == SyntaxKind::PAREN_SELECT
25184 }
25185 #[inline]
25186 fn cast(syntax: SyntaxNode) -> Option<Self> {
25187 if Self::can_cast(syntax.kind()) {
25188 Some(Self { syntax })
25189 } else {
25190 None
25191 }
25192 }
25193 #[inline]
25194 fn syntax(&self) -> &SyntaxNode {
25195 &self.syntax
25196 }
25197}
25198impl AstNode for Partition {
25199 #[inline]
25200 fn can_cast(kind: SyntaxKind) -> bool {
25201 kind == SyntaxKind::PARTITION
25202 }
25203 #[inline]
25204 fn cast(syntax: SyntaxNode) -> Option<Self> {
25205 if Self::can_cast(syntax.kind()) {
25206 Some(Self { syntax })
25207 } else {
25208 None
25209 }
25210 }
25211 #[inline]
25212 fn syntax(&self) -> &SyntaxNode {
25213 &self.syntax
25214 }
25215}
25216impl AstNode for PartitionBy {
25217 #[inline]
25218 fn can_cast(kind: SyntaxKind) -> bool {
25219 kind == SyntaxKind::PARTITION_BY
25220 }
25221 #[inline]
25222 fn cast(syntax: SyntaxNode) -> Option<Self> {
25223 if Self::can_cast(syntax.kind()) {
25224 Some(Self { syntax })
25225 } else {
25226 None
25227 }
25228 }
25229 #[inline]
25230 fn syntax(&self) -> &SyntaxNode {
25231 &self.syntax
25232 }
25233}
25234impl AstNode for PartitionDefault {
25235 #[inline]
25236 fn can_cast(kind: SyntaxKind) -> bool {
25237 kind == SyntaxKind::PARTITION_DEFAULT
25238 }
25239 #[inline]
25240 fn cast(syntax: SyntaxNode) -> Option<Self> {
25241 if Self::can_cast(syntax.kind()) {
25242 Some(Self { syntax })
25243 } else {
25244 None
25245 }
25246 }
25247 #[inline]
25248 fn syntax(&self) -> &SyntaxNode {
25249 &self.syntax
25250 }
25251}
25252impl AstNode for PartitionForValuesFrom {
25253 #[inline]
25254 fn can_cast(kind: SyntaxKind) -> bool {
25255 kind == SyntaxKind::PARTITION_FOR_VALUES_FROM
25256 }
25257 #[inline]
25258 fn cast(syntax: SyntaxNode) -> Option<Self> {
25259 if Self::can_cast(syntax.kind()) {
25260 Some(Self { syntax })
25261 } else {
25262 None
25263 }
25264 }
25265 #[inline]
25266 fn syntax(&self) -> &SyntaxNode {
25267 &self.syntax
25268 }
25269}
25270impl AstNode for PartitionForValuesIn {
25271 #[inline]
25272 fn can_cast(kind: SyntaxKind) -> bool {
25273 kind == SyntaxKind::PARTITION_FOR_VALUES_IN
25274 }
25275 #[inline]
25276 fn cast(syntax: SyntaxNode) -> Option<Self> {
25277 if Self::can_cast(syntax.kind()) {
25278 Some(Self { syntax })
25279 } else {
25280 None
25281 }
25282 }
25283 #[inline]
25284 fn syntax(&self) -> &SyntaxNode {
25285 &self.syntax
25286 }
25287}
25288impl AstNode for PartitionForValuesWith {
25289 #[inline]
25290 fn can_cast(kind: SyntaxKind) -> bool {
25291 kind == SyntaxKind::PARTITION_FOR_VALUES_WITH
25292 }
25293 #[inline]
25294 fn cast(syntax: SyntaxNode) -> Option<Self> {
25295 if Self::can_cast(syntax.kind()) {
25296 Some(Self { syntax })
25297 } else {
25298 None
25299 }
25300 }
25301 #[inline]
25302 fn syntax(&self) -> &SyntaxNode {
25303 &self.syntax
25304 }
25305}
25306impl AstNode for PartitionItem {
25307 #[inline]
25308 fn can_cast(kind: SyntaxKind) -> bool {
25309 kind == SyntaxKind::PARTITION_ITEM
25310 }
25311 #[inline]
25312 fn cast(syntax: SyntaxNode) -> Option<Self> {
25313 if Self::can_cast(syntax.kind()) {
25314 Some(Self { syntax })
25315 } else {
25316 None
25317 }
25318 }
25319 #[inline]
25320 fn syntax(&self) -> &SyntaxNode {
25321 &self.syntax
25322 }
25323}
25324impl AstNode for PartitionItemList {
25325 #[inline]
25326 fn can_cast(kind: SyntaxKind) -> bool {
25327 kind == SyntaxKind::PARTITION_ITEM_LIST
25328 }
25329 #[inline]
25330 fn cast(syntax: SyntaxNode) -> Option<Self> {
25331 if Self::can_cast(syntax.kind()) {
25332 Some(Self { syntax })
25333 } else {
25334 None
25335 }
25336 }
25337 #[inline]
25338 fn syntax(&self) -> &SyntaxNode {
25339 &self.syntax
25340 }
25341}
25342impl AstNode for PartitionList {
25343 #[inline]
25344 fn can_cast(kind: SyntaxKind) -> bool {
25345 kind == SyntaxKind::PARTITION_LIST
25346 }
25347 #[inline]
25348 fn cast(syntax: SyntaxNode) -> Option<Self> {
25349 if Self::can_cast(syntax.kind()) {
25350 Some(Self { syntax })
25351 } else {
25352 None
25353 }
25354 }
25355 #[inline]
25356 fn syntax(&self) -> &SyntaxNode {
25357 &self.syntax
25358 }
25359}
25360impl AstNode for PartitionOf {
25361 #[inline]
25362 fn can_cast(kind: SyntaxKind) -> bool {
25363 kind == SyntaxKind::PARTITION_OF
25364 }
25365 #[inline]
25366 fn cast(syntax: SyntaxNode) -> Option<Self> {
25367 if Self::can_cast(syntax.kind()) {
25368 Some(Self { syntax })
25369 } else {
25370 None
25371 }
25372 }
25373 #[inline]
25374 fn syntax(&self) -> &SyntaxNode {
25375 &self.syntax
25376 }
25377}
25378impl AstNode for Path {
25379 #[inline]
25380 fn can_cast(kind: SyntaxKind) -> bool {
25381 kind == SyntaxKind::PATH
25382 }
25383 #[inline]
25384 fn cast(syntax: SyntaxNode) -> Option<Self> {
25385 if Self::can_cast(syntax.kind()) {
25386 Some(Self { syntax })
25387 } else {
25388 None
25389 }
25390 }
25391 #[inline]
25392 fn syntax(&self) -> &SyntaxNode {
25393 &self.syntax
25394 }
25395}
25396impl AstNode for PathSegment {
25397 #[inline]
25398 fn can_cast(kind: SyntaxKind) -> bool {
25399 kind == SyntaxKind::PATH_SEGMENT
25400 }
25401 #[inline]
25402 fn cast(syntax: SyntaxNode) -> Option<Self> {
25403 if Self::can_cast(syntax.kind()) {
25404 Some(Self { syntax })
25405 } else {
25406 None
25407 }
25408 }
25409 #[inline]
25410 fn syntax(&self) -> &SyntaxNode {
25411 &self.syntax
25412 }
25413}
25414impl AstNode for PathType {
25415 #[inline]
25416 fn can_cast(kind: SyntaxKind) -> bool {
25417 kind == SyntaxKind::PATH_TYPE
25418 }
25419 #[inline]
25420 fn cast(syntax: SyntaxNode) -> Option<Self> {
25421 if Self::can_cast(syntax.kind()) {
25422 Some(Self { syntax })
25423 } else {
25424 None
25425 }
25426 }
25427 #[inline]
25428 fn syntax(&self) -> &SyntaxNode {
25429 &self.syntax
25430 }
25431}
25432impl AstNode for PercentType {
25433 #[inline]
25434 fn can_cast(kind: SyntaxKind) -> bool {
25435 kind == SyntaxKind::PERCENT_TYPE
25436 }
25437 #[inline]
25438 fn cast(syntax: SyntaxNode) -> Option<Self> {
25439 if Self::can_cast(syntax.kind()) {
25440 Some(Self { syntax })
25441 } else {
25442 None
25443 }
25444 }
25445 #[inline]
25446 fn syntax(&self) -> &SyntaxNode {
25447 &self.syntax
25448 }
25449}
25450impl AstNode for PercentTypeClause {
25451 #[inline]
25452 fn can_cast(kind: SyntaxKind) -> bool {
25453 kind == SyntaxKind::PERCENT_TYPE_CLAUSE
25454 }
25455 #[inline]
25456 fn cast(syntax: SyntaxNode) -> Option<Self> {
25457 if Self::can_cast(syntax.kind()) {
25458 Some(Self { syntax })
25459 } else {
25460 None
25461 }
25462 }
25463 #[inline]
25464 fn syntax(&self) -> &SyntaxNode {
25465 &self.syntax
25466 }
25467}
25468impl AstNode for PositionFn {
25469 #[inline]
25470 fn can_cast(kind: SyntaxKind) -> bool {
25471 kind == SyntaxKind::POSITION_FN
25472 }
25473 #[inline]
25474 fn cast(syntax: SyntaxNode) -> Option<Self> {
25475 if Self::can_cast(syntax.kind()) {
25476 Some(Self { syntax })
25477 } else {
25478 None
25479 }
25480 }
25481 #[inline]
25482 fn syntax(&self) -> &SyntaxNode {
25483 &self.syntax
25484 }
25485}
25486impl AstNode for PostfixExpr {
25487 #[inline]
25488 fn can_cast(kind: SyntaxKind) -> bool {
25489 kind == SyntaxKind::POSTFIX_EXPR
25490 }
25491 #[inline]
25492 fn cast(syntax: SyntaxNode) -> Option<Self> {
25493 if Self::can_cast(syntax.kind()) {
25494 Some(Self { syntax })
25495 } else {
25496 None
25497 }
25498 }
25499 #[inline]
25500 fn syntax(&self) -> &SyntaxNode {
25501 &self.syntax
25502 }
25503}
25504impl AstNode for PrefixExpr {
25505 #[inline]
25506 fn can_cast(kind: SyntaxKind) -> bool {
25507 kind == SyntaxKind::PREFIX_EXPR
25508 }
25509 #[inline]
25510 fn cast(syntax: SyntaxNode) -> Option<Self> {
25511 if Self::can_cast(syntax.kind()) {
25512 Some(Self { syntax })
25513 } else {
25514 None
25515 }
25516 }
25517 #[inline]
25518 fn syntax(&self) -> &SyntaxNode {
25519 &self.syntax
25520 }
25521}
25522impl AstNode for Prepare {
25523 #[inline]
25524 fn can_cast(kind: SyntaxKind) -> bool {
25525 kind == SyntaxKind::PREPARE
25526 }
25527 #[inline]
25528 fn cast(syntax: SyntaxNode) -> Option<Self> {
25529 if Self::can_cast(syntax.kind()) {
25530 Some(Self { syntax })
25531 } else {
25532 None
25533 }
25534 }
25535 #[inline]
25536 fn syntax(&self) -> &SyntaxNode {
25537 &self.syntax
25538 }
25539}
25540impl AstNode for PrepareTransaction {
25541 #[inline]
25542 fn can_cast(kind: SyntaxKind) -> bool {
25543 kind == SyntaxKind::PREPARE_TRANSACTION
25544 }
25545 #[inline]
25546 fn cast(syntax: SyntaxNode) -> Option<Self> {
25547 if Self::can_cast(syntax.kind()) {
25548 Some(Self { syntax })
25549 } else {
25550 None
25551 }
25552 }
25553 #[inline]
25554 fn syntax(&self) -> &SyntaxNode {
25555 &self.syntax
25556 }
25557}
25558impl AstNode for PreserveRows {
25559 #[inline]
25560 fn can_cast(kind: SyntaxKind) -> bool {
25561 kind == SyntaxKind::PRESERVE_ROWS
25562 }
25563 #[inline]
25564 fn cast(syntax: SyntaxNode) -> Option<Self> {
25565 if Self::can_cast(syntax.kind()) {
25566 Some(Self { syntax })
25567 } else {
25568 None
25569 }
25570 }
25571 #[inline]
25572 fn syntax(&self) -> &SyntaxNode {
25573 &self.syntax
25574 }
25575}
25576impl AstNode for PrimaryKeyConstraint {
25577 #[inline]
25578 fn can_cast(kind: SyntaxKind) -> bool {
25579 kind == SyntaxKind::PRIMARY_KEY_CONSTRAINT
25580 }
25581 #[inline]
25582 fn cast(syntax: SyntaxNode) -> Option<Self> {
25583 if Self::can_cast(syntax.kind()) {
25584 Some(Self { syntax })
25585 } else {
25586 None
25587 }
25588 }
25589 #[inline]
25590 fn syntax(&self) -> &SyntaxNode {
25591 &self.syntax
25592 }
25593}
25594impl AstNode for PrivilegeTarget {
25595 #[inline]
25596 fn can_cast(kind: SyntaxKind) -> bool {
25597 kind == SyntaxKind::PRIVILEGE_TARGET
25598 }
25599 #[inline]
25600 fn cast(syntax: SyntaxNode) -> Option<Self> {
25601 if Self::can_cast(syntax.kind()) {
25602 Some(Self { syntax })
25603 } else {
25604 None
25605 }
25606 }
25607 #[inline]
25608 fn syntax(&self) -> &SyntaxNode {
25609 &self.syntax
25610 }
25611}
25612impl AstNode for Privileges {
25613 #[inline]
25614 fn can_cast(kind: SyntaxKind) -> bool {
25615 kind == SyntaxKind::PRIVILEGES
25616 }
25617 #[inline]
25618 fn cast(syntax: SyntaxNode) -> Option<Self> {
25619 if Self::can_cast(syntax.kind()) {
25620 Some(Self { syntax })
25621 } else {
25622 None
25623 }
25624 }
25625 #[inline]
25626 fn syntax(&self) -> &SyntaxNode {
25627 &self.syntax
25628 }
25629}
25630impl AstNode for PublicationObject {
25631 #[inline]
25632 fn can_cast(kind: SyntaxKind) -> bool {
25633 kind == SyntaxKind::PUBLICATION_OBJECT
25634 }
25635 #[inline]
25636 fn cast(syntax: SyntaxNode) -> Option<Self> {
25637 if Self::can_cast(syntax.kind()) {
25638 Some(Self { syntax })
25639 } else {
25640 None
25641 }
25642 }
25643 #[inline]
25644 fn syntax(&self) -> &SyntaxNode {
25645 &self.syntax
25646 }
25647}
25648impl AstNode for ReadCommitted {
25649 #[inline]
25650 fn can_cast(kind: SyntaxKind) -> bool {
25651 kind == SyntaxKind::READ_COMMITTED
25652 }
25653 #[inline]
25654 fn cast(syntax: SyntaxNode) -> Option<Self> {
25655 if Self::can_cast(syntax.kind()) {
25656 Some(Self { syntax })
25657 } else {
25658 None
25659 }
25660 }
25661 #[inline]
25662 fn syntax(&self) -> &SyntaxNode {
25663 &self.syntax
25664 }
25665}
25666impl AstNode for ReadOnly {
25667 #[inline]
25668 fn can_cast(kind: SyntaxKind) -> bool {
25669 kind == SyntaxKind::READ_ONLY
25670 }
25671 #[inline]
25672 fn cast(syntax: SyntaxNode) -> Option<Self> {
25673 if Self::can_cast(syntax.kind()) {
25674 Some(Self { syntax })
25675 } else {
25676 None
25677 }
25678 }
25679 #[inline]
25680 fn syntax(&self) -> &SyntaxNode {
25681 &self.syntax
25682 }
25683}
25684impl AstNode for ReadUncommitted {
25685 #[inline]
25686 fn can_cast(kind: SyntaxKind) -> bool {
25687 kind == SyntaxKind::READ_UNCOMMITTED
25688 }
25689 #[inline]
25690 fn cast(syntax: SyntaxNode) -> Option<Self> {
25691 if Self::can_cast(syntax.kind()) {
25692 Some(Self { syntax })
25693 } else {
25694 None
25695 }
25696 }
25697 #[inline]
25698 fn syntax(&self) -> &SyntaxNode {
25699 &self.syntax
25700 }
25701}
25702impl AstNode for ReadWrite {
25703 #[inline]
25704 fn can_cast(kind: SyntaxKind) -> bool {
25705 kind == SyntaxKind::READ_WRITE
25706 }
25707 #[inline]
25708 fn cast(syntax: SyntaxNode) -> Option<Self> {
25709 if Self::can_cast(syntax.kind()) {
25710 Some(Self { syntax })
25711 } else {
25712 None
25713 }
25714 }
25715 #[inline]
25716 fn syntax(&self) -> &SyntaxNode {
25717 &self.syntax
25718 }
25719}
25720impl AstNode for Reassign {
25721 #[inline]
25722 fn can_cast(kind: SyntaxKind) -> bool {
25723 kind == SyntaxKind::REASSIGN
25724 }
25725 #[inline]
25726 fn cast(syntax: SyntaxNode) -> Option<Self> {
25727 if Self::can_cast(syntax.kind()) {
25728 Some(Self { syntax })
25729 } else {
25730 None
25731 }
25732 }
25733 #[inline]
25734 fn syntax(&self) -> &SyntaxNode {
25735 &self.syntax
25736 }
25737}
25738impl AstNode for ReferencesConstraint {
25739 #[inline]
25740 fn can_cast(kind: SyntaxKind) -> bool {
25741 kind == SyntaxKind::REFERENCES_CONSTRAINT
25742 }
25743 #[inline]
25744 fn cast(syntax: SyntaxNode) -> Option<Self> {
25745 if Self::can_cast(syntax.kind()) {
25746 Some(Self { syntax })
25747 } else {
25748 None
25749 }
25750 }
25751 #[inline]
25752 fn syntax(&self) -> &SyntaxNode {
25753 &self.syntax
25754 }
25755}
25756impl AstNode for Referencing {
25757 #[inline]
25758 fn can_cast(kind: SyntaxKind) -> bool {
25759 kind == SyntaxKind::REFERENCING
25760 }
25761 #[inline]
25762 fn cast(syntax: SyntaxNode) -> Option<Self> {
25763 if Self::can_cast(syntax.kind()) {
25764 Some(Self { syntax })
25765 } else {
25766 None
25767 }
25768 }
25769 #[inline]
25770 fn syntax(&self) -> &SyntaxNode {
25771 &self.syntax
25772 }
25773}
25774impl AstNode for ReferencingTable {
25775 #[inline]
25776 fn can_cast(kind: SyntaxKind) -> bool {
25777 kind == SyntaxKind::REFERENCING_TABLE
25778 }
25779 #[inline]
25780 fn cast(syntax: SyntaxNode) -> Option<Self> {
25781 if Self::can_cast(syntax.kind()) {
25782 Some(Self { syntax })
25783 } else {
25784 None
25785 }
25786 }
25787 #[inline]
25788 fn syntax(&self) -> &SyntaxNode {
25789 &self.syntax
25790 }
25791}
25792impl AstNode for Refresh {
25793 #[inline]
25794 fn can_cast(kind: SyntaxKind) -> bool {
25795 kind == SyntaxKind::REFRESH
25796 }
25797 #[inline]
25798 fn cast(syntax: SyntaxNode) -> Option<Self> {
25799 if Self::can_cast(syntax.kind()) {
25800 Some(Self { syntax })
25801 } else {
25802 None
25803 }
25804 }
25805 #[inline]
25806 fn syntax(&self) -> &SyntaxNode {
25807 &self.syntax
25808 }
25809}
25810impl AstNode for RefreshCollationVersion {
25811 #[inline]
25812 fn can_cast(kind: SyntaxKind) -> bool {
25813 kind == SyntaxKind::REFRESH_COLLATION_VERSION
25814 }
25815 #[inline]
25816 fn cast(syntax: SyntaxNode) -> Option<Self> {
25817 if Self::can_cast(syntax.kind()) {
25818 Some(Self { syntax })
25819 } else {
25820 None
25821 }
25822 }
25823 #[inline]
25824 fn syntax(&self) -> &SyntaxNode {
25825 &self.syntax
25826 }
25827}
25828impl AstNode for RefreshVersion {
25829 #[inline]
25830 fn can_cast(kind: SyntaxKind) -> bool {
25831 kind == SyntaxKind::REFRESH_VERSION
25832 }
25833 #[inline]
25834 fn cast(syntax: SyntaxNode) -> Option<Self> {
25835 if Self::can_cast(syntax.kind()) {
25836 Some(Self { syntax })
25837 } else {
25838 None
25839 }
25840 }
25841 #[inline]
25842 fn syntax(&self) -> &SyntaxNode {
25843 &self.syntax
25844 }
25845}
25846impl AstNode for Reindex {
25847 #[inline]
25848 fn can_cast(kind: SyntaxKind) -> bool {
25849 kind == SyntaxKind::REINDEX
25850 }
25851 #[inline]
25852 fn cast(syntax: SyntaxNode) -> Option<Self> {
25853 if Self::can_cast(syntax.kind()) {
25854 Some(Self { syntax })
25855 } else {
25856 None
25857 }
25858 }
25859 #[inline]
25860 fn syntax(&self) -> &SyntaxNode {
25861 &self.syntax
25862 }
25863}
25864impl AstNode for RelationName {
25865 #[inline]
25866 fn can_cast(kind: SyntaxKind) -> bool {
25867 kind == SyntaxKind::RELATION_NAME
25868 }
25869 #[inline]
25870 fn cast(syntax: SyntaxNode) -> Option<Self> {
25871 if Self::can_cast(syntax.kind()) {
25872 Some(Self { syntax })
25873 } else {
25874 None
25875 }
25876 }
25877 #[inline]
25878 fn syntax(&self) -> &SyntaxNode {
25879 &self.syntax
25880 }
25881}
25882impl AstNode for ReleaseSavepoint {
25883 #[inline]
25884 fn can_cast(kind: SyntaxKind) -> bool {
25885 kind == SyntaxKind::RELEASE_SAVEPOINT
25886 }
25887 #[inline]
25888 fn cast(syntax: SyntaxNode) -> Option<Self> {
25889 if Self::can_cast(syntax.kind()) {
25890 Some(Self { syntax })
25891 } else {
25892 None
25893 }
25894 }
25895 #[inline]
25896 fn syntax(&self) -> &SyntaxNode {
25897 &self.syntax
25898 }
25899}
25900impl AstNode for RenameColumn {
25901 #[inline]
25902 fn can_cast(kind: SyntaxKind) -> bool {
25903 kind == SyntaxKind::RENAME_COLUMN
25904 }
25905 #[inline]
25906 fn cast(syntax: SyntaxNode) -> Option<Self> {
25907 if Self::can_cast(syntax.kind()) {
25908 Some(Self { syntax })
25909 } else {
25910 None
25911 }
25912 }
25913 #[inline]
25914 fn syntax(&self) -> &SyntaxNode {
25915 &self.syntax
25916 }
25917}
25918impl AstNode for RenameConstraint {
25919 #[inline]
25920 fn can_cast(kind: SyntaxKind) -> bool {
25921 kind == SyntaxKind::RENAME_CONSTRAINT
25922 }
25923 #[inline]
25924 fn cast(syntax: SyntaxNode) -> Option<Self> {
25925 if Self::can_cast(syntax.kind()) {
25926 Some(Self { syntax })
25927 } else {
25928 None
25929 }
25930 }
25931 #[inline]
25932 fn syntax(&self) -> &SyntaxNode {
25933 &self.syntax
25934 }
25935}
25936impl AstNode for RenameTo {
25937 #[inline]
25938 fn can_cast(kind: SyntaxKind) -> bool {
25939 kind == SyntaxKind::RENAME_TO
25940 }
25941 #[inline]
25942 fn cast(syntax: SyntaxNode) -> Option<Self> {
25943 if Self::can_cast(syntax.kind()) {
25944 Some(Self { syntax })
25945 } else {
25946 None
25947 }
25948 }
25949 #[inline]
25950 fn syntax(&self) -> &SyntaxNode {
25951 &self.syntax
25952 }
25953}
25954impl AstNode for RepeatableClause {
25955 #[inline]
25956 fn can_cast(kind: SyntaxKind) -> bool {
25957 kind == SyntaxKind::REPEATABLE_CLAUSE
25958 }
25959 #[inline]
25960 fn cast(syntax: SyntaxNode) -> Option<Self> {
25961 if Self::can_cast(syntax.kind()) {
25962 Some(Self { syntax })
25963 } else {
25964 None
25965 }
25966 }
25967 #[inline]
25968 fn syntax(&self) -> &SyntaxNode {
25969 &self.syntax
25970 }
25971}
25972impl AstNode for RepeatableRead {
25973 #[inline]
25974 fn can_cast(kind: SyntaxKind) -> bool {
25975 kind == SyntaxKind::REPEATABLE_READ
25976 }
25977 #[inline]
25978 fn cast(syntax: SyntaxNode) -> Option<Self> {
25979 if Self::can_cast(syntax.kind()) {
25980 Some(Self { syntax })
25981 } else {
25982 None
25983 }
25984 }
25985 #[inline]
25986 fn syntax(&self) -> &SyntaxNode {
25987 &self.syntax
25988 }
25989}
25990impl AstNode for ReplicaIdentity {
25991 #[inline]
25992 fn can_cast(kind: SyntaxKind) -> bool {
25993 kind == SyntaxKind::REPLICA_IDENTITY
25994 }
25995 #[inline]
25996 fn cast(syntax: SyntaxNode) -> Option<Self> {
25997 if Self::can_cast(syntax.kind()) {
25998 Some(Self { syntax })
25999 } else {
26000 None
26001 }
26002 }
26003 #[inline]
26004 fn syntax(&self) -> &SyntaxNode {
26005 &self.syntax
26006 }
26007}
26008impl AstNode for Reset {
26009 #[inline]
26010 fn can_cast(kind: SyntaxKind) -> bool {
26011 kind == SyntaxKind::RESET
26012 }
26013 #[inline]
26014 fn cast(syntax: SyntaxNode) -> Option<Self> {
26015 if Self::can_cast(syntax.kind()) {
26016 Some(Self { syntax })
26017 } else {
26018 None
26019 }
26020 }
26021 #[inline]
26022 fn syntax(&self) -> &SyntaxNode {
26023 &self.syntax
26024 }
26025}
26026impl AstNode for ResetConfigParam {
26027 #[inline]
26028 fn can_cast(kind: SyntaxKind) -> bool {
26029 kind == SyntaxKind::RESET_CONFIG_PARAM
26030 }
26031 #[inline]
26032 fn cast(syntax: SyntaxNode) -> Option<Self> {
26033 if Self::can_cast(syntax.kind()) {
26034 Some(Self { syntax })
26035 } else {
26036 None
26037 }
26038 }
26039 #[inline]
26040 fn syntax(&self) -> &SyntaxNode {
26041 &self.syntax
26042 }
26043}
26044impl AstNode for ResetFuncOption {
26045 #[inline]
26046 fn can_cast(kind: SyntaxKind) -> bool {
26047 kind == SyntaxKind::RESET_FUNC_OPTION
26048 }
26049 #[inline]
26050 fn cast(syntax: SyntaxNode) -> Option<Self> {
26051 if Self::can_cast(syntax.kind()) {
26052 Some(Self { syntax })
26053 } else {
26054 None
26055 }
26056 }
26057 #[inline]
26058 fn syntax(&self) -> &SyntaxNode {
26059 &self.syntax
26060 }
26061}
26062impl AstNode for ResetOptions {
26063 #[inline]
26064 fn can_cast(kind: SyntaxKind) -> bool {
26065 kind == SyntaxKind::RESET_OPTIONS
26066 }
26067 #[inline]
26068 fn cast(syntax: SyntaxNode) -> Option<Self> {
26069 if Self::can_cast(syntax.kind()) {
26070 Some(Self { syntax })
26071 } else {
26072 None
26073 }
26074 }
26075 #[inline]
26076 fn syntax(&self) -> &SyntaxNode {
26077 &self.syntax
26078 }
26079}
26080impl AstNode for ResetSessionAuth {
26081 #[inline]
26082 fn can_cast(kind: SyntaxKind) -> bool {
26083 kind == SyntaxKind::RESET_SESSION_AUTH
26084 }
26085 #[inline]
26086 fn cast(syntax: SyntaxNode) -> Option<Self> {
26087 if Self::can_cast(syntax.kind()) {
26088 Some(Self { syntax })
26089 } else {
26090 None
26091 }
26092 }
26093 #[inline]
26094 fn syntax(&self) -> &SyntaxNode {
26095 &self.syntax
26096 }
26097}
26098impl AstNode for Restart {
26099 #[inline]
26100 fn can_cast(kind: SyntaxKind) -> bool {
26101 kind == SyntaxKind::RESTART
26102 }
26103 #[inline]
26104 fn cast(syntax: SyntaxNode) -> Option<Self> {
26105 if Self::can_cast(syntax.kind()) {
26106 Some(Self { syntax })
26107 } else {
26108 None
26109 }
26110 }
26111 #[inline]
26112 fn syntax(&self) -> &SyntaxNode {
26113 &self.syntax
26114 }
26115}
26116impl AstNode for Restrict {
26117 #[inline]
26118 fn can_cast(kind: SyntaxKind) -> bool {
26119 kind == SyntaxKind::RESTRICT
26120 }
26121 #[inline]
26122 fn cast(syntax: SyntaxNode) -> Option<Self> {
26123 if Self::can_cast(syntax.kind()) {
26124 Some(Self { syntax })
26125 } else {
26126 None
26127 }
26128 }
26129 #[inline]
26130 fn syntax(&self) -> &SyntaxNode {
26131 &self.syntax
26132 }
26133}
26134impl AstNode for RetType {
26135 #[inline]
26136 fn can_cast(kind: SyntaxKind) -> bool {
26137 kind == SyntaxKind::RET_TYPE
26138 }
26139 #[inline]
26140 fn cast(syntax: SyntaxNode) -> Option<Self> {
26141 if Self::can_cast(syntax.kind()) {
26142 Some(Self { syntax })
26143 } else {
26144 None
26145 }
26146 }
26147 #[inline]
26148 fn syntax(&self) -> &SyntaxNode {
26149 &self.syntax
26150 }
26151}
26152impl AstNode for ReturnFuncOption {
26153 #[inline]
26154 fn can_cast(kind: SyntaxKind) -> bool {
26155 kind == SyntaxKind::RETURN_FUNC_OPTION
26156 }
26157 #[inline]
26158 fn cast(syntax: SyntaxNode) -> Option<Self> {
26159 if Self::can_cast(syntax.kind()) {
26160 Some(Self { syntax })
26161 } else {
26162 None
26163 }
26164 }
26165 #[inline]
26166 fn syntax(&self) -> &SyntaxNode {
26167 &self.syntax
26168 }
26169}
26170impl AstNode for ReturningClause {
26171 #[inline]
26172 fn can_cast(kind: SyntaxKind) -> bool {
26173 kind == SyntaxKind::RETURNING_CLAUSE
26174 }
26175 #[inline]
26176 fn cast(syntax: SyntaxNode) -> Option<Self> {
26177 if Self::can_cast(syntax.kind()) {
26178 Some(Self { syntax })
26179 } else {
26180 None
26181 }
26182 }
26183 #[inline]
26184 fn syntax(&self) -> &SyntaxNode {
26185 &self.syntax
26186 }
26187}
26188impl AstNode for ReturningOption {
26189 #[inline]
26190 fn can_cast(kind: SyntaxKind) -> bool {
26191 kind == SyntaxKind::RETURNING_OPTION
26192 }
26193 #[inline]
26194 fn cast(syntax: SyntaxNode) -> Option<Self> {
26195 if Self::can_cast(syntax.kind()) {
26196 Some(Self { syntax })
26197 } else {
26198 None
26199 }
26200 }
26201 #[inline]
26202 fn syntax(&self) -> &SyntaxNode {
26203 &self.syntax
26204 }
26205}
26206impl AstNode for ReturningOptionList {
26207 #[inline]
26208 fn can_cast(kind: SyntaxKind) -> bool {
26209 kind == SyntaxKind::RETURNING_OPTION_LIST
26210 }
26211 #[inline]
26212 fn cast(syntax: SyntaxNode) -> Option<Self> {
26213 if Self::can_cast(syntax.kind()) {
26214 Some(Self { syntax })
26215 } else {
26216 None
26217 }
26218 }
26219 #[inline]
26220 fn syntax(&self) -> &SyntaxNode {
26221 &self.syntax
26222 }
26223}
26224impl AstNode for Revoke {
26225 #[inline]
26226 fn can_cast(kind: SyntaxKind) -> bool {
26227 kind == SyntaxKind::REVOKE
26228 }
26229 #[inline]
26230 fn cast(syntax: SyntaxNode) -> Option<Self> {
26231 if Self::can_cast(syntax.kind()) {
26232 Some(Self { syntax })
26233 } else {
26234 None
26235 }
26236 }
26237 #[inline]
26238 fn syntax(&self) -> &SyntaxNode {
26239 &self.syntax
26240 }
26241}
26242impl AstNode for RevokeCommand {
26243 #[inline]
26244 fn can_cast(kind: SyntaxKind) -> bool {
26245 kind == SyntaxKind::REVOKE_COMMAND
26246 }
26247 #[inline]
26248 fn cast(syntax: SyntaxNode) -> Option<Self> {
26249 if Self::can_cast(syntax.kind()) {
26250 Some(Self { syntax })
26251 } else {
26252 None
26253 }
26254 }
26255 #[inline]
26256 fn syntax(&self) -> &SyntaxNode {
26257 &self.syntax
26258 }
26259}
26260impl AstNode for RevokeCommandList {
26261 #[inline]
26262 fn can_cast(kind: SyntaxKind) -> bool {
26263 kind == SyntaxKind::REVOKE_COMMAND_LIST
26264 }
26265 #[inline]
26266 fn cast(syntax: SyntaxNode) -> Option<Self> {
26267 if Self::can_cast(syntax.kind()) {
26268 Some(Self { syntax })
26269 } else {
26270 None
26271 }
26272 }
26273 #[inline]
26274 fn syntax(&self) -> &SyntaxNode {
26275 &self.syntax
26276 }
26277}
26278impl AstNode for RevokeDefaultPrivileges {
26279 #[inline]
26280 fn can_cast(kind: SyntaxKind) -> bool {
26281 kind == SyntaxKind::REVOKE_DEFAULT_PRIVILEGES
26282 }
26283 #[inline]
26284 fn cast(syntax: SyntaxNode) -> Option<Self> {
26285 if Self::can_cast(syntax.kind()) {
26286 Some(Self { syntax })
26287 } else {
26288 None
26289 }
26290 }
26291 #[inline]
26292 fn syntax(&self) -> &SyntaxNode {
26293 &self.syntax
26294 }
26295}
26296impl AstNode for Role {
26297 #[inline]
26298 fn can_cast(kind: SyntaxKind) -> bool {
26299 kind == SyntaxKind::ROLE
26300 }
26301 #[inline]
26302 fn cast(syntax: SyntaxNode) -> Option<Self> {
26303 if Self::can_cast(syntax.kind()) {
26304 Some(Self { syntax })
26305 } else {
26306 None
26307 }
26308 }
26309 #[inline]
26310 fn syntax(&self) -> &SyntaxNode {
26311 &self.syntax
26312 }
26313}
26314impl AstNode for RoleOption {
26315 #[inline]
26316 fn can_cast(kind: SyntaxKind) -> bool {
26317 kind == SyntaxKind::ROLE_OPTION
26318 }
26319 #[inline]
26320 fn cast(syntax: SyntaxNode) -> Option<Self> {
26321 if Self::can_cast(syntax.kind()) {
26322 Some(Self { syntax })
26323 } else {
26324 None
26325 }
26326 }
26327 #[inline]
26328 fn syntax(&self) -> &SyntaxNode {
26329 &self.syntax
26330 }
26331}
26332impl AstNode for RoleOptionList {
26333 #[inline]
26334 fn can_cast(kind: SyntaxKind) -> bool {
26335 kind == SyntaxKind::ROLE_OPTION_LIST
26336 }
26337 #[inline]
26338 fn cast(syntax: SyntaxNode) -> Option<Self> {
26339 if Self::can_cast(syntax.kind()) {
26340 Some(Self { syntax })
26341 } else {
26342 None
26343 }
26344 }
26345 #[inline]
26346 fn syntax(&self) -> &SyntaxNode {
26347 &self.syntax
26348 }
26349}
26350impl AstNode for RoleRef {
26351 #[inline]
26352 fn can_cast(kind: SyntaxKind) -> bool {
26353 kind == SyntaxKind::ROLE_REF
26354 }
26355 #[inline]
26356 fn cast(syntax: SyntaxNode) -> Option<Self> {
26357 if Self::can_cast(syntax.kind()) {
26358 Some(Self { syntax })
26359 } else {
26360 None
26361 }
26362 }
26363 #[inline]
26364 fn syntax(&self) -> &SyntaxNode {
26365 &self.syntax
26366 }
26367}
26368impl AstNode for RoleRefList {
26369 #[inline]
26370 fn can_cast(kind: SyntaxKind) -> bool {
26371 kind == SyntaxKind::ROLE_REF_LIST
26372 }
26373 #[inline]
26374 fn cast(syntax: SyntaxNode) -> Option<Self> {
26375 if Self::can_cast(syntax.kind()) {
26376 Some(Self { syntax })
26377 } else {
26378 None
26379 }
26380 }
26381 #[inline]
26382 fn syntax(&self) -> &SyntaxNode {
26383 &self.syntax
26384 }
26385}
26386impl AstNode for Rollback {
26387 #[inline]
26388 fn can_cast(kind: SyntaxKind) -> bool {
26389 kind == SyntaxKind::ROLLBACK
26390 }
26391 #[inline]
26392 fn cast(syntax: SyntaxNode) -> Option<Self> {
26393 if Self::can_cast(syntax.kind()) {
26394 Some(Self { syntax })
26395 } else {
26396 None
26397 }
26398 }
26399 #[inline]
26400 fn syntax(&self) -> &SyntaxNode {
26401 &self.syntax
26402 }
26403}
26404impl AstNode for Row {
26405 #[inline]
26406 fn can_cast(kind: SyntaxKind) -> bool {
26407 kind == SyntaxKind::ROW
26408 }
26409 #[inline]
26410 fn cast(syntax: SyntaxNode) -> Option<Self> {
26411 if Self::can_cast(syntax.kind()) {
26412 Some(Self { syntax })
26413 } else {
26414 None
26415 }
26416 }
26417 #[inline]
26418 fn syntax(&self) -> &SyntaxNode {
26419 &self.syntax
26420 }
26421}
26422impl AstNode for RowList {
26423 #[inline]
26424 fn can_cast(kind: SyntaxKind) -> bool {
26425 kind == SyntaxKind::ROW_LIST
26426 }
26427 #[inline]
26428 fn cast(syntax: SyntaxNode) -> Option<Self> {
26429 if Self::can_cast(syntax.kind()) {
26430 Some(Self { syntax })
26431 } else {
26432 None
26433 }
26434 }
26435 #[inline]
26436 fn syntax(&self) -> &SyntaxNode {
26437 &self.syntax
26438 }
26439}
26440impl AstNode for RowsFuncOption {
26441 #[inline]
26442 fn can_cast(kind: SyntaxKind) -> bool {
26443 kind == SyntaxKind::ROWS_FUNC_OPTION
26444 }
26445 #[inline]
26446 fn cast(syntax: SyntaxNode) -> Option<Self> {
26447 if Self::can_cast(syntax.kind()) {
26448 Some(Self { syntax })
26449 } else {
26450 None
26451 }
26452 }
26453 #[inline]
26454 fn syntax(&self) -> &SyntaxNode {
26455 &self.syntax
26456 }
26457}
26458impl AstNode for Savepoint {
26459 #[inline]
26460 fn can_cast(kind: SyntaxKind) -> bool {
26461 kind == SyntaxKind::SAVEPOINT
26462 }
26463 #[inline]
26464 fn cast(syntax: SyntaxNode) -> Option<Self> {
26465 if Self::can_cast(syntax.kind()) {
26466 Some(Self { syntax })
26467 } else {
26468 None
26469 }
26470 }
26471 #[inline]
26472 fn syntax(&self) -> &SyntaxNode {
26473 &self.syntax
26474 }
26475}
26476impl AstNode for SecurityFuncOption {
26477 #[inline]
26478 fn can_cast(kind: SyntaxKind) -> bool {
26479 kind == SyntaxKind::SECURITY_FUNC_OPTION
26480 }
26481 #[inline]
26482 fn cast(syntax: SyntaxNode) -> Option<Self> {
26483 if Self::can_cast(syntax.kind()) {
26484 Some(Self { syntax })
26485 } else {
26486 None
26487 }
26488 }
26489 #[inline]
26490 fn syntax(&self) -> &SyntaxNode {
26491 &self.syntax
26492 }
26493}
26494impl AstNode for SecurityLabel {
26495 #[inline]
26496 fn can_cast(kind: SyntaxKind) -> bool {
26497 kind == SyntaxKind::SECURITY_LABEL
26498 }
26499 #[inline]
26500 fn cast(syntax: SyntaxNode) -> Option<Self> {
26501 if Self::can_cast(syntax.kind()) {
26502 Some(Self { syntax })
26503 } else {
26504 None
26505 }
26506 }
26507 #[inline]
26508 fn syntax(&self) -> &SyntaxNode {
26509 &self.syntax
26510 }
26511}
26512impl AstNode for Select {
26513 #[inline]
26514 fn can_cast(kind: SyntaxKind) -> bool {
26515 kind == SyntaxKind::SELECT
26516 }
26517 #[inline]
26518 fn cast(syntax: SyntaxNode) -> Option<Self> {
26519 if Self::can_cast(syntax.kind()) {
26520 Some(Self { syntax })
26521 } else {
26522 None
26523 }
26524 }
26525 #[inline]
26526 fn syntax(&self) -> &SyntaxNode {
26527 &self.syntax
26528 }
26529}
26530impl AstNode for SelectClause {
26531 #[inline]
26532 fn can_cast(kind: SyntaxKind) -> bool {
26533 kind == SyntaxKind::SELECT_CLAUSE
26534 }
26535 #[inline]
26536 fn cast(syntax: SyntaxNode) -> Option<Self> {
26537 if Self::can_cast(syntax.kind()) {
26538 Some(Self { syntax })
26539 } else {
26540 None
26541 }
26542 }
26543 #[inline]
26544 fn syntax(&self) -> &SyntaxNode {
26545 &self.syntax
26546 }
26547}
26548impl AstNode for SelectInto {
26549 #[inline]
26550 fn can_cast(kind: SyntaxKind) -> bool {
26551 kind == SyntaxKind::SELECT_INTO
26552 }
26553 #[inline]
26554 fn cast(syntax: SyntaxNode) -> Option<Self> {
26555 if Self::can_cast(syntax.kind()) {
26556 Some(Self { syntax })
26557 } else {
26558 None
26559 }
26560 }
26561 #[inline]
26562 fn syntax(&self) -> &SyntaxNode {
26563 &self.syntax
26564 }
26565}
26566impl AstNode for SequenceOption {
26567 #[inline]
26568 fn can_cast(kind: SyntaxKind) -> bool {
26569 kind == SyntaxKind::SEQUENCE_OPTION
26570 }
26571 #[inline]
26572 fn cast(syntax: SyntaxNode) -> Option<Self> {
26573 if Self::can_cast(syntax.kind()) {
26574 Some(Self { syntax })
26575 } else {
26576 None
26577 }
26578 }
26579 #[inline]
26580 fn syntax(&self) -> &SyntaxNode {
26581 &self.syntax
26582 }
26583}
26584impl AstNode for SequenceOptionList {
26585 #[inline]
26586 fn can_cast(kind: SyntaxKind) -> bool {
26587 kind == SyntaxKind::SEQUENCE_OPTION_LIST
26588 }
26589 #[inline]
26590 fn cast(syntax: SyntaxNode) -> Option<Self> {
26591 if Self::can_cast(syntax.kind()) {
26592 Some(Self { syntax })
26593 } else {
26594 None
26595 }
26596 }
26597 #[inline]
26598 fn syntax(&self) -> &SyntaxNode {
26599 &self.syntax
26600 }
26601}
26602impl AstNode for Serializable {
26603 #[inline]
26604 fn can_cast(kind: SyntaxKind) -> bool {
26605 kind == SyntaxKind::SERIALIZABLE
26606 }
26607 #[inline]
26608 fn cast(syntax: SyntaxNode) -> Option<Self> {
26609 if Self::can_cast(syntax.kind()) {
26610 Some(Self { syntax })
26611 } else {
26612 None
26613 }
26614 }
26615 #[inline]
26616 fn syntax(&self) -> &SyntaxNode {
26617 &self.syntax
26618 }
26619}
26620impl AstNode for ServerName {
26621 #[inline]
26622 fn can_cast(kind: SyntaxKind) -> bool {
26623 kind == SyntaxKind::SERVER_NAME
26624 }
26625 #[inline]
26626 fn cast(syntax: SyntaxNode) -> Option<Self> {
26627 if Self::can_cast(syntax.kind()) {
26628 Some(Self { syntax })
26629 } else {
26630 None
26631 }
26632 }
26633 #[inline]
26634 fn syntax(&self) -> &SyntaxNode {
26635 &self.syntax
26636 }
26637}
26638impl AstNode for Set {
26639 #[inline]
26640 fn can_cast(kind: SyntaxKind) -> bool {
26641 kind == SyntaxKind::SET
26642 }
26643 #[inline]
26644 fn cast(syntax: SyntaxNode) -> Option<Self> {
26645 if Self::can_cast(syntax.kind()) {
26646 Some(Self { syntax })
26647 } else {
26648 None
26649 }
26650 }
26651 #[inline]
26652 fn syntax(&self) -> &SyntaxNode {
26653 &self.syntax
26654 }
26655}
26656impl AstNode for SetAccessMethod {
26657 #[inline]
26658 fn can_cast(kind: SyntaxKind) -> bool {
26659 kind == SyntaxKind::SET_ACCESS_METHOD
26660 }
26661 #[inline]
26662 fn cast(syntax: SyntaxNode) -> Option<Self> {
26663 if Self::can_cast(syntax.kind()) {
26664 Some(Self { syntax })
26665 } else {
26666 None
26667 }
26668 }
26669 #[inline]
26670 fn syntax(&self) -> &SyntaxNode {
26671 &self.syntax
26672 }
26673}
26674impl AstNode for SetClause {
26675 #[inline]
26676 fn can_cast(kind: SyntaxKind) -> bool {
26677 kind == SyntaxKind::SET_CLAUSE
26678 }
26679 #[inline]
26680 fn cast(syntax: SyntaxNode) -> Option<Self> {
26681 if Self::can_cast(syntax.kind()) {
26682 Some(Self { syntax })
26683 } else {
26684 None
26685 }
26686 }
26687 #[inline]
26688 fn syntax(&self) -> &SyntaxNode {
26689 &self.syntax
26690 }
26691}
26692impl AstNode for SetColumnList {
26693 #[inline]
26694 fn can_cast(kind: SyntaxKind) -> bool {
26695 kind == SyntaxKind::SET_COLUMN_LIST
26696 }
26697 #[inline]
26698 fn cast(syntax: SyntaxNode) -> Option<Self> {
26699 if Self::can_cast(syntax.kind()) {
26700 Some(Self { syntax })
26701 } else {
26702 None
26703 }
26704 }
26705 #[inline]
26706 fn syntax(&self) -> &SyntaxNode {
26707 &self.syntax
26708 }
26709}
26710impl AstNode for SetCompression {
26711 #[inline]
26712 fn can_cast(kind: SyntaxKind) -> bool {
26713 kind == SyntaxKind::SET_COMPRESSION
26714 }
26715 #[inline]
26716 fn cast(syntax: SyntaxNode) -> Option<Self> {
26717 if Self::can_cast(syntax.kind()) {
26718 Some(Self { syntax })
26719 } else {
26720 None
26721 }
26722 }
26723 #[inline]
26724 fn syntax(&self) -> &SyntaxNode {
26725 &self.syntax
26726 }
26727}
26728impl AstNode for SetConfigParam {
26729 #[inline]
26730 fn can_cast(kind: SyntaxKind) -> bool {
26731 kind == SyntaxKind::SET_CONFIG_PARAM
26732 }
26733 #[inline]
26734 fn cast(syntax: SyntaxNode) -> Option<Self> {
26735 if Self::can_cast(syntax.kind()) {
26736 Some(Self { syntax })
26737 } else {
26738 None
26739 }
26740 }
26741 #[inline]
26742 fn syntax(&self) -> &SyntaxNode {
26743 &self.syntax
26744 }
26745}
26746impl AstNode for SetConstraints {
26747 #[inline]
26748 fn can_cast(kind: SyntaxKind) -> bool {
26749 kind == SyntaxKind::SET_CONSTRAINTS
26750 }
26751 #[inline]
26752 fn cast(syntax: SyntaxNode) -> Option<Self> {
26753 if Self::can_cast(syntax.kind()) {
26754 Some(Self { syntax })
26755 } else {
26756 None
26757 }
26758 }
26759 #[inline]
26760 fn syntax(&self) -> &SyntaxNode {
26761 &self.syntax
26762 }
26763}
26764impl AstNode for SetDefault {
26765 #[inline]
26766 fn can_cast(kind: SyntaxKind) -> bool {
26767 kind == SyntaxKind::SET_DEFAULT
26768 }
26769 #[inline]
26770 fn cast(syntax: SyntaxNode) -> Option<Self> {
26771 if Self::can_cast(syntax.kind()) {
26772 Some(Self { syntax })
26773 } else {
26774 None
26775 }
26776 }
26777 #[inline]
26778 fn syntax(&self) -> &SyntaxNode {
26779 &self.syntax
26780 }
26781}
26782impl AstNode for SetDefaultColumns {
26783 #[inline]
26784 fn can_cast(kind: SyntaxKind) -> bool {
26785 kind == SyntaxKind::SET_DEFAULT_COLUMNS
26786 }
26787 #[inline]
26788 fn cast(syntax: SyntaxNode) -> Option<Self> {
26789 if Self::can_cast(syntax.kind()) {
26790 Some(Self { syntax })
26791 } else {
26792 None
26793 }
26794 }
26795 #[inline]
26796 fn syntax(&self) -> &SyntaxNode {
26797 &self.syntax
26798 }
26799}
26800impl AstNode for SetExpr {
26801 #[inline]
26802 fn can_cast(kind: SyntaxKind) -> bool {
26803 kind == SyntaxKind::SET_EXPR
26804 }
26805 #[inline]
26806 fn cast(syntax: SyntaxNode) -> Option<Self> {
26807 if Self::can_cast(syntax.kind()) {
26808 Some(Self { syntax })
26809 } else {
26810 None
26811 }
26812 }
26813 #[inline]
26814 fn syntax(&self) -> &SyntaxNode {
26815 &self.syntax
26816 }
26817}
26818impl AstNode for SetExprList {
26819 #[inline]
26820 fn can_cast(kind: SyntaxKind) -> bool {
26821 kind == SyntaxKind::SET_EXPR_LIST
26822 }
26823 #[inline]
26824 fn cast(syntax: SyntaxNode) -> Option<Self> {
26825 if Self::can_cast(syntax.kind()) {
26826 Some(Self { syntax })
26827 } else {
26828 None
26829 }
26830 }
26831 #[inline]
26832 fn syntax(&self) -> &SyntaxNode {
26833 &self.syntax
26834 }
26835}
26836impl AstNode for SetExpression {
26837 #[inline]
26838 fn can_cast(kind: SyntaxKind) -> bool {
26839 kind == SyntaxKind::SET_EXPRESSION
26840 }
26841 #[inline]
26842 fn cast(syntax: SyntaxNode) -> Option<Self> {
26843 if Self::can_cast(syntax.kind()) {
26844 Some(Self { syntax })
26845 } else {
26846 None
26847 }
26848 }
26849 #[inline]
26850 fn syntax(&self) -> &SyntaxNode {
26851 &self.syntax
26852 }
26853}
26854impl AstNode for SetFuncOption {
26855 #[inline]
26856 fn can_cast(kind: SyntaxKind) -> bool {
26857 kind == SyntaxKind::SET_FUNC_OPTION
26858 }
26859 #[inline]
26860 fn cast(syntax: SyntaxNode) -> Option<Self> {
26861 if Self::can_cast(syntax.kind()) {
26862 Some(Self { syntax })
26863 } else {
26864 None
26865 }
26866 }
26867 #[inline]
26868 fn syntax(&self) -> &SyntaxNode {
26869 &self.syntax
26870 }
26871}
26872impl AstNode for SetGenerated {
26873 #[inline]
26874 fn can_cast(kind: SyntaxKind) -> bool {
26875 kind == SyntaxKind::SET_GENERATED
26876 }
26877 #[inline]
26878 fn cast(syntax: SyntaxNode) -> Option<Self> {
26879 if Self::can_cast(syntax.kind()) {
26880 Some(Self { syntax })
26881 } else {
26882 None
26883 }
26884 }
26885 #[inline]
26886 fn syntax(&self) -> &SyntaxNode {
26887 &self.syntax
26888 }
26889}
26890impl AstNode for SetGeneratedOptions {
26891 #[inline]
26892 fn can_cast(kind: SyntaxKind) -> bool {
26893 kind == SyntaxKind::SET_GENERATED_OPTIONS
26894 }
26895 #[inline]
26896 fn cast(syntax: SyntaxNode) -> Option<Self> {
26897 if Self::can_cast(syntax.kind()) {
26898 Some(Self { syntax })
26899 } else {
26900 None
26901 }
26902 }
26903 #[inline]
26904 fn syntax(&self) -> &SyntaxNode {
26905 &self.syntax
26906 }
26907}
26908impl AstNode for SetLogged {
26909 #[inline]
26910 fn can_cast(kind: SyntaxKind) -> bool {
26911 kind == SyntaxKind::SET_LOGGED
26912 }
26913 #[inline]
26914 fn cast(syntax: SyntaxNode) -> Option<Self> {
26915 if Self::can_cast(syntax.kind()) {
26916 Some(Self { syntax })
26917 } else {
26918 None
26919 }
26920 }
26921 #[inline]
26922 fn syntax(&self) -> &SyntaxNode {
26923 &self.syntax
26924 }
26925}
26926impl AstNode for SetMultipleColumns {
26927 #[inline]
26928 fn can_cast(kind: SyntaxKind) -> bool {
26929 kind == SyntaxKind::SET_MULTIPLE_COLUMNS
26930 }
26931 #[inline]
26932 fn cast(syntax: SyntaxNode) -> Option<Self> {
26933 if Self::can_cast(syntax.kind()) {
26934 Some(Self { syntax })
26935 } else {
26936 None
26937 }
26938 }
26939 #[inline]
26940 fn syntax(&self) -> &SyntaxNode {
26941 &self.syntax
26942 }
26943}
26944impl AstNode for SetNotNull {
26945 #[inline]
26946 fn can_cast(kind: SyntaxKind) -> bool {
26947 kind == SyntaxKind::SET_NOT_NULL
26948 }
26949 #[inline]
26950 fn cast(syntax: SyntaxNode) -> Option<Self> {
26951 if Self::can_cast(syntax.kind()) {
26952 Some(Self { syntax })
26953 } else {
26954 None
26955 }
26956 }
26957 #[inline]
26958 fn syntax(&self) -> &SyntaxNode {
26959 &self.syntax
26960 }
26961}
26962impl AstNode for SetNullColumns {
26963 #[inline]
26964 fn can_cast(kind: SyntaxKind) -> bool {
26965 kind == SyntaxKind::SET_NULL_COLUMNS
26966 }
26967 #[inline]
26968 fn cast(syntax: SyntaxNode) -> Option<Self> {
26969 if Self::can_cast(syntax.kind()) {
26970 Some(Self { syntax })
26971 } else {
26972 None
26973 }
26974 }
26975 #[inline]
26976 fn syntax(&self) -> &SyntaxNode {
26977 &self.syntax
26978 }
26979}
26980impl AstNode for SetOptions {
26981 #[inline]
26982 fn can_cast(kind: SyntaxKind) -> bool {
26983 kind == SyntaxKind::SET_OPTIONS
26984 }
26985 #[inline]
26986 fn cast(syntax: SyntaxNode) -> Option<Self> {
26987 if Self::can_cast(syntax.kind()) {
26988 Some(Self { syntax })
26989 } else {
26990 None
26991 }
26992 }
26993 #[inline]
26994 fn syntax(&self) -> &SyntaxNode {
26995 &self.syntax
26996 }
26997}
26998impl AstNode for SetOptionsList {
26999 #[inline]
27000 fn can_cast(kind: SyntaxKind) -> bool {
27001 kind == SyntaxKind::SET_OPTIONS_LIST
27002 }
27003 #[inline]
27004 fn cast(syntax: SyntaxNode) -> Option<Self> {
27005 if Self::can_cast(syntax.kind()) {
27006 Some(Self { syntax })
27007 } else {
27008 None
27009 }
27010 }
27011 #[inline]
27012 fn syntax(&self) -> &SyntaxNode {
27013 &self.syntax
27014 }
27015}
27016impl AstNode for SetRole {
27017 #[inline]
27018 fn can_cast(kind: SyntaxKind) -> bool {
27019 kind == SyntaxKind::SET_ROLE
27020 }
27021 #[inline]
27022 fn cast(syntax: SyntaxNode) -> Option<Self> {
27023 if Self::can_cast(syntax.kind()) {
27024 Some(Self { syntax })
27025 } else {
27026 None
27027 }
27028 }
27029 #[inline]
27030 fn syntax(&self) -> &SyntaxNode {
27031 &self.syntax
27032 }
27033}
27034impl AstNode for SetSchema {
27035 #[inline]
27036 fn can_cast(kind: SyntaxKind) -> bool {
27037 kind == SyntaxKind::SET_SCHEMA
27038 }
27039 #[inline]
27040 fn cast(syntax: SyntaxNode) -> Option<Self> {
27041 if Self::can_cast(syntax.kind()) {
27042 Some(Self { syntax })
27043 } else {
27044 None
27045 }
27046 }
27047 #[inline]
27048 fn syntax(&self) -> &SyntaxNode {
27049 &self.syntax
27050 }
27051}
27052impl AstNode for SetSequenceOption {
27053 #[inline]
27054 fn can_cast(kind: SyntaxKind) -> bool {
27055 kind == SyntaxKind::SET_SEQUENCE_OPTION
27056 }
27057 #[inline]
27058 fn cast(syntax: SyntaxNode) -> Option<Self> {
27059 if Self::can_cast(syntax.kind()) {
27060 Some(Self { syntax })
27061 } else {
27062 None
27063 }
27064 }
27065 #[inline]
27066 fn syntax(&self) -> &SyntaxNode {
27067 &self.syntax
27068 }
27069}
27070impl AstNode for SetSessionAuth {
27071 #[inline]
27072 fn can_cast(kind: SyntaxKind) -> bool {
27073 kind == SyntaxKind::SET_SESSION_AUTH
27074 }
27075 #[inline]
27076 fn cast(syntax: SyntaxNode) -> Option<Self> {
27077 if Self::can_cast(syntax.kind()) {
27078 Some(Self { syntax })
27079 } else {
27080 None
27081 }
27082 }
27083 #[inline]
27084 fn syntax(&self) -> &SyntaxNode {
27085 &self.syntax
27086 }
27087}
27088impl AstNode for SetSingleColumn {
27089 #[inline]
27090 fn can_cast(kind: SyntaxKind) -> bool {
27091 kind == SyntaxKind::SET_SINGLE_COLUMN
27092 }
27093 #[inline]
27094 fn cast(syntax: SyntaxNode) -> Option<Self> {
27095 if Self::can_cast(syntax.kind()) {
27096 Some(Self { syntax })
27097 } else {
27098 None
27099 }
27100 }
27101 #[inline]
27102 fn syntax(&self) -> &SyntaxNode {
27103 &self.syntax
27104 }
27105}
27106impl AstNode for SetStatistics {
27107 #[inline]
27108 fn can_cast(kind: SyntaxKind) -> bool {
27109 kind == SyntaxKind::SET_STATISTICS
27110 }
27111 #[inline]
27112 fn cast(syntax: SyntaxNode) -> Option<Self> {
27113 if Self::can_cast(syntax.kind()) {
27114 Some(Self { syntax })
27115 } else {
27116 None
27117 }
27118 }
27119 #[inline]
27120 fn syntax(&self) -> &SyntaxNode {
27121 &self.syntax
27122 }
27123}
27124impl AstNode for SetStorage {
27125 #[inline]
27126 fn can_cast(kind: SyntaxKind) -> bool {
27127 kind == SyntaxKind::SET_STORAGE
27128 }
27129 #[inline]
27130 fn cast(syntax: SyntaxNode) -> Option<Self> {
27131 if Self::can_cast(syntax.kind()) {
27132 Some(Self { syntax })
27133 } else {
27134 None
27135 }
27136 }
27137 #[inline]
27138 fn syntax(&self) -> &SyntaxNode {
27139 &self.syntax
27140 }
27141}
27142impl AstNode for SetTablespace {
27143 #[inline]
27144 fn can_cast(kind: SyntaxKind) -> bool {
27145 kind == SyntaxKind::SET_TABLESPACE
27146 }
27147 #[inline]
27148 fn cast(syntax: SyntaxNode) -> Option<Self> {
27149 if Self::can_cast(syntax.kind()) {
27150 Some(Self { syntax })
27151 } else {
27152 None
27153 }
27154 }
27155 #[inline]
27156 fn syntax(&self) -> &SyntaxNode {
27157 &self.syntax
27158 }
27159}
27160impl AstNode for SetTransaction {
27161 #[inline]
27162 fn can_cast(kind: SyntaxKind) -> bool {
27163 kind == SyntaxKind::SET_TRANSACTION
27164 }
27165 #[inline]
27166 fn cast(syntax: SyntaxNode) -> Option<Self> {
27167 if Self::can_cast(syntax.kind()) {
27168 Some(Self { syntax })
27169 } else {
27170 None
27171 }
27172 }
27173 #[inline]
27174 fn syntax(&self) -> &SyntaxNode {
27175 &self.syntax
27176 }
27177}
27178impl AstNode for SetType {
27179 #[inline]
27180 fn can_cast(kind: SyntaxKind) -> bool {
27181 kind == SyntaxKind::SET_TYPE
27182 }
27183 #[inline]
27184 fn cast(syntax: SyntaxNode) -> Option<Self> {
27185 if Self::can_cast(syntax.kind()) {
27186 Some(Self { syntax })
27187 } else {
27188 None
27189 }
27190 }
27191 #[inline]
27192 fn syntax(&self) -> &SyntaxNode {
27193 &self.syntax
27194 }
27195}
27196impl AstNode for SetUnlogged {
27197 #[inline]
27198 fn can_cast(kind: SyntaxKind) -> bool {
27199 kind == SyntaxKind::SET_UNLOGGED
27200 }
27201 #[inline]
27202 fn cast(syntax: SyntaxNode) -> Option<Self> {
27203 if Self::can_cast(syntax.kind()) {
27204 Some(Self { syntax })
27205 } else {
27206 None
27207 }
27208 }
27209 #[inline]
27210 fn syntax(&self) -> &SyntaxNode {
27211 &self.syntax
27212 }
27213}
27214impl AstNode for SetWithoutCluster {
27215 #[inline]
27216 fn can_cast(kind: SyntaxKind) -> bool {
27217 kind == SyntaxKind::SET_WITHOUT_CLUSTER
27218 }
27219 #[inline]
27220 fn cast(syntax: SyntaxNode) -> Option<Self> {
27221 if Self::can_cast(syntax.kind()) {
27222 Some(Self { syntax })
27223 } else {
27224 None
27225 }
27226 }
27227 #[inline]
27228 fn syntax(&self) -> &SyntaxNode {
27229 &self.syntax
27230 }
27231}
27232impl AstNode for SetWithoutOids {
27233 #[inline]
27234 fn can_cast(kind: SyntaxKind) -> bool {
27235 kind == SyntaxKind::SET_WITHOUT_OIDS
27236 }
27237 #[inline]
27238 fn cast(syntax: SyntaxNode) -> Option<Self> {
27239 if Self::can_cast(syntax.kind()) {
27240 Some(Self { syntax })
27241 } else {
27242 None
27243 }
27244 }
27245 #[inline]
27246 fn syntax(&self) -> &SyntaxNode {
27247 &self.syntax
27248 }
27249}
27250impl AstNode for Show {
27251 #[inline]
27252 fn can_cast(kind: SyntaxKind) -> bool {
27253 kind == SyntaxKind::SHOW
27254 }
27255 #[inline]
27256 fn cast(syntax: SyntaxNode) -> Option<Self> {
27257 if Self::can_cast(syntax.kind()) {
27258 Some(Self { syntax })
27259 } else {
27260 None
27261 }
27262 }
27263 #[inline]
27264 fn syntax(&self) -> &SyntaxNode {
27265 &self.syntax
27266 }
27267}
27268impl AstNode for SimilarTo {
27269 #[inline]
27270 fn can_cast(kind: SyntaxKind) -> bool {
27271 kind == SyntaxKind::SIMILAR_TO
27272 }
27273 #[inline]
27274 fn cast(syntax: SyntaxNode) -> Option<Self> {
27275 if Self::can_cast(syntax.kind()) {
27276 Some(Self { syntax })
27277 } else {
27278 None
27279 }
27280 }
27281 #[inline]
27282 fn syntax(&self) -> &SyntaxNode {
27283 &self.syntax
27284 }
27285}
27286impl AstNode for SliceExpr {
27287 #[inline]
27288 fn can_cast(kind: SyntaxKind) -> bool {
27289 kind == SyntaxKind::SLICE_EXPR
27290 }
27291 #[inline]
27292 fn cast(syntax: SyntaxNode) -> Option<Self> {
27293 if Self::can_cast(syntax.kind()) {
27294 Some(Self { syntax })
27295 } else {
27296 None
27297 }
27298 }
27299 #[inline]
27300 fn syntax(&self) -> &SyntaxNode {
27301 &self.syntax
27302 }
27303}
27304impl AstNode for SomeFn {
27305 #[inline]
27306 fn can_cast(kind: SyntaxKind) -> bool {
27307 kind == SyntaxKind::SOME_FN
27308 }
27309 #[inline]
27310 fn cast(syntax: SyntaxNode) -> Option<Self> {
27311 if Self::can_cast(syntax.kind()) {
27312 Some(Self { syntax })
27313 } else {
27314 None
27315 }
27316 }
27317 #[inline]
27318 fn syntax(&self) -> &SyntaxNode {
27319 &self.syntax
27320 }
27321}
27322impl AstNode for SortAsc {
27323 #[inline]
27324 fn can_cast(kind: SyntaxKind) -> bool {
27325 kind == SyntaxKind::SORT_ASC
27326 }
27327 #[inline]
27328 fn cast(syntax: SyntaxNode) -> Option<Self> {
27329 if Self::can_cast(syntax.kind()) {
27330 Some(Self { syntax })
27331 } else {
27332 None
27333 }
27334 }
27335 #[inline]
27336 fn syntax(&self) -> &SyntaxNode {
27337 &self.syntax
27338 }
27339}
27340impl AstNode for SortBy {
27341 #[inline]
27342 fn can_cast(kind: SyntaxKind) -> bool {
27343 kind == SyntaxKind::SORT_BY
27344 }
27345 #[inline]
27346 fn cast(syntax: SyntaxNode) -> Option<Self> {
27347 if Self::can_cast(syntax.kind()) {
27348 Some(Self { syntax })
27349 } else {
27350 None
27351 }
27352 }
27353 #[inline]
27354 fn syntax(&self) -> &SyntaxNode {
27355 &self.syntax
27356 }
27357}
27358impl AstNode for SortByList {
27359 #[inline]
27360 fn can_cast(kind: SyntaxKind) -> bool {
27361 kind == SyntaxKind::SORT_BY_LIST
27362 }
27363 #[inline]
27364 fn cast(syntax: SyntaxNode) -> Option<Self> {
27365 if Self::can_cast(syntax.kind()) {
27366 Some(Self { syntax })
27367 } else {
27368 None
27369 }
27370 }
27371 #[inline]
27372 fn syntax(&self) -> &SyntaxNode {
27373 &self.syntax
27374 }
27375}
27376impl AstNode for SortDesc {
27377 #[inline]
27378 fn can_cast(kind: SyntaxKind) -> bool {
27379 kind == SyntaxKind::SORT_DESC
27380 }
27381 #[inline]
27382 fn cast(syntax: SyntaxNode) -> Option<Self> {
27383 if Self::can_cast(syntax.kind()) {
27384 Some(Self { syntax })
27385 } else {
27386 None
27387 }
27388 }
27389 #[inline]
27390 fn syntax(&self) -> &SyntaxNode {
27391 &self.syntax
27392 }
27393}
27394impl AstNode for SortUsing {
27395 #[inline]
27396 fn can_cast(kind: SyntaxKind) -> bool {
27397 kind == SyntaxKind::SORT_USING
27398 }
27399 #[inline]
27400 fn cast(syntax: SyntaxNode) -> Option<Self> {
27401 if Self::can_cast(syntax.kind()) {
27402 Some(Self { syntax })
27403 } else {
27404 None
27405 }
27406 }
27407 #[inline]
27408 fn syntax(&self) -> &SyntaxNode {
27409 &self.syntax
27410 }
27411}
27412impl AstNode for SourceFile {
27413 #[inline]
27414 fn can_cast(kind: SyntaxKind) -> bool {
27415 kind == SyntaxKind::SOURCE_FILE
27416 }
27417 #[inline]
27418 fn cast(syntax: SyntaxNode) -> Option<Self> {
27419 if Self::can_cast(syntax.kind()) {
27420 Some(Self { syntax })
27421 } else {
27422 None
27423 }
27424 }
27425 #[inline]
27426 fn syntax(&self) -> &SyntaxNode {
27427 &self.syntax
27428 }
27429}
27430impl AstNode for SplitPartition {
27431 #[inline]
27432 fn can_cast(kind: SyntaxKind) -> bool {
27433 kind == SyntaxKind::SPLIT_PARTITION
27434 }
27435 #[inline]
27436 fn cast(syntax: SyntaxNode) -> Option<Self> {
27437 if Self::can_cast(syntax.kind()) {
27438 Some(Self { syntax })
27439 } else {
27440 None
27441 }
27442 }
27443 #[inline]
27444 fn syntax(&self) -> &SyntaxNode {
27445 &self.syntax
27446 }
27447}
27448impl AstNode for Storage {
27449 #[inline]
27450 fn can_cast(kind: SyntaxKind) -> bool {
27451 kind == SyntaxKind::STORAGE
27452 }
27453 #[inline]
27454 fn cast(syntax: SyntaxNode) -> Option<Self> {
27455 if Self::can_cast(syntax.kind()) {
27456 Some(Self { syntax })
27457 } else {
27458 None
27459 }
27460 }
27461 #[inline]
27462 fn syntax(&self) -> &SyntaxNode {
27463 &self.syntax
27464 }
27465}
27466impl AstNode for StrictFuncOption {
27467 #[inline]
27468 fn can_cast(kind: SyntaxKind) -> bool {
27469 kind == SyntaxKind::STRICT_FUNC_OPTION
27470 }
27471 #[inline]
27472 fn cast(syntax: SyntaxNode) -> Option<Self> {
27473 if Self::can_cast(syntax.kind()) {
27474 Some(Self { syntax })
27475 } else {
27476 None
27477 }
27478 }
27479 #[inline]
27480 fn syntax(&self) -> &SyntaxNode {
27481 &self.syntax
27482 }
27483}
27484impl AstNode for SubstringFn {
27485 #[inline]
27486 fn can_cast(kind: SyntaxKind) -> bool {
27487 kind == SyntaxKind::SUBSTRING_FN
27488 }
27489 #[inline]
27490 fn cast(syntax: SyntaxNode) -> Option<Self> {
27491 if Self::can_cast(syntax.kind()) {
27492 Some(Self { syntax })
27493 } else {
27494 None
27495 }
27496 }
27497 #[inline]
27498 fn syntax(&self) -> &SyntaxNode {
27499 &self.syntax
27500 }
27501}
27502impl AstNode for SupportFuncOption {
27503 #[inline]
27504 fn can_cast(kind: SyntaxKind) -> bool {
27505 kind == SyntaxKind::SUPPORT_FUNC_OPTION
27506 }
27507 #[inline]
27508 fn cast(syntax: SyntaxNode) -> Option<Self> {
27509 if Self::can_cast(syntax.kind()) {
27510 Some(Self { syntax })
27511 } else {
27512 None
27513 }
27514 }
27515 #[inline]
27516 fn syntax(&self) -> &SyntaxNode {
27517 &self.syntax
27518 }
27519}
27520impl AstNode for Table {
27521 #[inline]
27522 fn can_cast(kind: SyntaxKind) -> bool {
27523 kind == SyntaxKind::TABLE
27524 }
27525 #[inline]
27526 fn cast(syntax: SyntaxNode) -> Option<Self> {
27527 if Self::can_cast(syntax.kind()) {
27528 Some(Self { syntax })
27529 } else {
27530 None
27531 }
27532 }
27533 #[inline]
27534 fn syntax(&self) -> &SyntaxNode {
27535 &self.syntax
27536 }
27537}
27538impl AstNode for TableAndColumns {
27539 #[inline]
27540 fn can_cast(kind: SyntaxKind) -> bool {
27541 kind == SyntaxKind::TABLE_AND_COLUMNS
27542 }
27543 #[inline]
27544 fn cast(syntax: SyntaxNode) -> Option<Self> {
27545 if Self::can_cast(syntax.kind()) {
27546 Some(Self { syntax })
27547 } else {
27548 None
27549 }
27550 }
27551 #[inline]
27552 fn syntax(&self) -> &SyntaxNode {
27553 &self.syntax
27554 }
27555}
27556impl AstNode for TableAndColumnsList {
27557 #[inline]
27558 fn can_cast(kind: SyntaxKind) -> bool {
27559 kind == SyntaxKind::TABLE_AND_COLUMNS_LIST
27560 }
27561 #[inline]
27562 fn cast(syntax: SyntaxNode) -> Option<Self> {
27563 if Self::can_cast(syntax.kind()) {
27564 Some(Self { syntax })
27565 } else {
27566 None
27567 }
27568 }
27569 #[inline]
27570 fn syntax(&self) -> &SyntaxNode {
27571 &self.syntax
27572 }
27573}
27574impl AstNode for TableArgList {
27575 #[inline]
27576 fn can_cast(kind: SyntaxKind) -> bool {
27577 kind == SyntaxKind::TABLE_ARG_LIST
27578 }
27579 #[inline]
27580 fn cast(syntax: SyntaxNode) -> Option<Self> {
27581 if Self::can_cast(syntax.kind()) {
27582 Some(Self { syntax })
27583 } else {
27584 None
27585 }
27586 }
27587 #[inline]
27588 fn syntax(&self) -> &SyntaxNode {
27589 &self.syntax
27590 }
27591}
27592impl AstNode for TableList {
27593 #[inline]
27594 fn can_cast(kind: SyntaxKind) -> bool {
27595 kind == SyntaxKind::TABLE_LIST
27596 }
27597 #[inline]
27598 fn cast(syntax: SyntaxNode) -> Option<Self> {
27599 if Self::can_cast(syntax.kind()) {
27600 Some(Self { syntax })
27601 } else {
27602 None
27603 }
27604 }
27605 #[inline]
27606 fn syntax(&self) -> &SyntaxNode {
27607 &self.syntax
27608 }
27609}
27610impl AstNode for TablesampleClause {
27611 #[inline]
27612 fn can_cast(kind: SyntaxKind) -> bool {
27613 kind == SyntaxKind::TABLESAMPLE_CLAUSE
27614 }
27615 #[inline]
27616 fn cast(syntax: SyntaxNode) -> Option<Self> {
27617 if Self::can_cast(syntax.kind()) {
27618 Some(Self { syntax })
27619 } else {
27620 None
27621 }
27622 }
27623 #[inline]
27624 fn syntax(&self) -> &SyntaxNode {
27625 &self.syntax
27626 }
27627}
27628impl AstNode for Tablespace {
27629 #[inline]
27630 fn can_cast(kind: SyntaxKind) -> bool {
27631 kind == SyntaxKind::TABLESPACE
27632 }
27633 #[inline]
27634 fn cast(syntax: SyntaxNode) -> Option<Self> {
27635 if Self::can_cast(syntax.kind()) {
27636 Some(Self { syntax })
27637 } else {
27638 None
27639 }
27640 }
27641 #[inline]
27642 fn syntax(&self) -> &SyntaxNode {
27643 &self.syntax
27644 }
27645}
27646impl AstNode for Target {
27647 #[inline]
27648 fn can_cast(kind: SyntaxKind) -> bool {
27649 kind == SyntaxKind::TARGET
27650 }
27651 #[inline]
27652 fn cast(syntax: SyntaxNode) -> Option<Self> {
27653 if Self::can_cast(syntax.kind()) {
27654 Some(Self { syntax })
27655 } else {
27656 None
27657 }
27658 }
27659 #[inline]
27660 fn syntax(&self) -> &SyntaxNode {
27661 &self.syntax
27662 }
27663}
27664impl AstNode for TargetList {
27665 #[inline]
27666 fn can_cast(kind: SyntaxKind) -> bool {
27667 kind == SyntaxKind::TARGET_LIST
27668 }
27669 #[inline]
27670 fn cast(syntax: SyntaxNode) -> Option<Self> {
27671 if Self::can_cast(syntax.kind()) {
27672 Some(Self { syntax })
27673 } else {
27674 None
27675 }
27676 }
27677 #[inline]
27678 fn syntax(&self) -> &SyntaxNode {
27679 &self.syntax
27680 }
27681}
27682impl AstNode for TimeType {
27683 #[inline]
27684 fn can_cast(kind: SyntaxKind) -> bool {
27685 kind == SyntaxKind::TIME_TYPE
27686 }
27687 #[inline]
27688 fn cast(syntax: SyntaxNode) -> Option<Self> {
27689 if Self::can_cast(syntax.kind()) {
27690 Some(Self { syntax })
27691 } else {
27692 None
27693 }
27694 }
27695 #[inline]
27696 fn syntax(&self) -> &SyntaxNode {
27697 &self.syntax
27698 }
27699}
27700impl AstNode for Timing {
27701 #[inline]
27702 fn can_cast(kind: SyntaxKind) -> bool {
27703 kind == SyntaxKind::TIMING
27704 }
27705 #[inline]
27706 fn cast(syntax: SyntaxNode) -> Option<Self> {
27707 if Self::can_cast(syntax.kind()) {
27708 Some(Self { syntax })
27709 } else {
27710 None
27711 }
27712 }
27713 #[inline]
27714 fn syntax(&self) -> &SyntaxNode {
27715 &self.syntax
27716 }
27717}
27718impl AstNode for TransactionModeList {
27719 #[inline]
27720 fn can_cast(kind: SyntaxKind) -> bool {
27721 kind == SyntaxKind::TRANSACTION_MODE_LIST
27722 }
27723 #[inline]
27724 fn cast(syntax: SyntaxNode) -> Option<Self> {
27725 if Self::can_cast(syntax.kind()) {
27726 Some(Self { syntax })
27727 } else {
27728 None
27729 }
27730 }
27731 #[inline]
27732 fn syntax(&self) -> &SyntaxNode {
27733 &self.syntax
27734 }
27735}
27736impl AstNode for TransformFromFunc {
27737 #[inline]
27738 fn can_cast(kind: SyntaxKind) -> bool {
27739 kind == SyntaxKind::TRANSFORM_FROM_FUNC
27740 }
27741 #[inline]
27742 fn cast(syntax: SyntaxNode) -> Option<Self> {
27743 if Self::can_cast(syntax.kind()) {
27744 Some(Self { syntax })
27745 } else {
27746 None
27747 }
27748 }
27749 #[inline]
27750 fn syntax(&self) -> &SyntaxNode {
27751 &self.syntax
27752 }
27753}
27754impl AstNode for TransformFuncOption {
27755 #[inline]
27756 fn can_cast(kind: SyntaxKind) -> bool {
27757 kind == SyntaxKind::TRANSFORM_FUNC_OPTION
27758 }
27759 #[inline]
27760 fn cast(syntax: SyntaxNode) -> Option<Self> {
27761 if Self::can_cast(syntax.kind()) {
27762 Some(Self { syntax })
27763 } else {
27764 None
27765 }
27766 }
27767 #[inline]
27768 fn syntax(&self) -> &SyntaxNode {
27769 &self.syntax
27770 }
27771}
27772impl AstNode for TransformToFunc {
27773 #[inline]
27774 fn can_cast(kind: SyntaxKind) -> bool {
27775 kind == SyntaxKind::TRANSFORM_TO_FUNC
27776 }
27777 #[inline]
27778 fn cast(syntax: SyntaxNode) -> Option<Self> {
27779 if Self::can_cast(syntax.kind()) {
27780 Some(Self { syntax })
27781 } else {
27782 None
27783 }
27784 }
27785 #[inline]
27786 fn syntax(&self) -> &SyntaxNode {
27787 &self.syntax
27788 }
27789}
27790impl AstNode for TriggerEvent {
27791 #[inline]
27792 fn can_cast(kind: SyntaxKind) -> bool {
27793 kind == SyntaxKind::TRIGGER_EVENT
27794 }
27795 #[inline]
27796 fn cast(syntax: SyntaxNode) -> Option<Self> {
27797 if Self::can_cast(syntax.kind()) {
27798 Some(Self { syntax })
27799 } else {
27800 None
27801 }
27802 }
27803 #[inline]
27804 fn syntax(&self) -> &SyntaxNode {
27805 &self.syntax
27806 }
27807}
27808impl AstNode for TriggerEventList {
27809 #[inline]
27810 fn can_cast(kind: SyntaxKind) -> bool {
27811 kind == SyntaxKind::TRIGGER_EVENT_LIST
27812 }
27813 #[inline]
27814 fn cast(syntax: SyntaxNode) -> Option<Self> {
27815 if Self::can_cast(syntax.kind()) {
27816 Some(Self { syntax })
27817 } else {
27818 None
27819 }
27820 }
27821 #[inline]
27822 fn syntax(&self) -> &SyntaxNode {
27823 &self.syntax
27824 }
27825}
27826impl AstNode for TriggerEventUpdate {
27827 #[inline]
27828 fn can_cast(kind: SyntaxKind) -> bool {
27829 kind == SyntaxKind::TRIGGER_EVENT_UPDATE
27830 }
27831 #[inline]
27832 fn cast(syntax: SyntaxNode) -> Option<Self> {
27833 if Self::can_cast(syntax.kind()) {
27834 Some(Self { syntax })
27835 } else {
27836 None
27837 }
27838 }
27839 #[inline]
27840 fn syntax(&self) -> &SyntaxNode {
27841 &self.syntax
27842 }
27843}
27844impl AstNode for TrimFn {
27845 #[inline]
27846 fn can_cast(kind: SyntaxKind) -> bool {
27847 kind == SyntaxKind::TRIM_FN
27848 }
27849 #[inline]
27850 fn cast(syntax: SyntaxNode) -> Option<Self> {
27851 if Self::can_cast(syntax.kind()) {
27852 Some(Self { syntax })
27853 } else {
27854 None
27855 }
27856 }
27857 #[inline]
27858 fn syntax(&self) -> &SyntaxNode {
27859 &self.syntax
27860 }
27861}
27862impl AstNode for Truncate {
27863 #[inline]
27864 fn can_cast(kind: SyntaxKind) -> bool {
27865 kind == SyntaxKind::TRUNCATE
27866 }
27867 #[inline]
27868 fn cast(syntax: SyntaxNode) -> Option<Self> {
27869 if Self::can_cast(syntax.kind()) {
27870 Some(Self { syntax })
27871 } else {
27872 None
27873 }
27874 }
27875 #[inline]
27876 fn syntax(&self) -> &SyntaxNode {
27877 &self.syntax
27878 }
27879}
27880impl AstNode for TupleExpr {
27881 #[inline]
27882 fn can_cast(kind: SyntaxKind) -> bool {
27883 kind == SyntaxKind::TUPLE_EXPR
27884 }
27885 #[inline]
27886 fn cast(syntax: SyntaxNode) -> Option<Self> {
27887 if Self::can_cast(syntax.kind()) {
27888 Some(Self { syntax })
27889 } else {
27890 None
27891 }
27892 }
27893 #[inline]
27894 fn syntax(&self) -> &SyntaxNode {
27895 &self.syntax
27896 }
27897}
27898impl AstNode for UnicodeNormalForm {
27899 #[inline]
27900 fn can_cast(kind: SyntaxKind) -> bool {
27901 kind == SyntaxKind::UNICODE_NORMAL_FORM
27902 }
27903 #[inline]
27904 fn cast(syntax: SyntaxNode) -> Option<Self> {
27905 if Self::can_cast(syntax.kind()) {
27906 Some(Self { syntax })
27907 } else {
27908 None
27909 }
27910 }
27911 #[inline]
27912 fn syntax(&self) -> &SyntaxNode {
27913 &self.syntax
27914 }
27915}
27916impl AstNode for UniqueConstraint {
27917 #[inline]
27918 fn can_cast(kind: SyntaxKind) -> bool {
27919 kind == SyntaxKind::UNIQUE_CONSTRAINT
27920 }
27921 #[inline]
27922 fn cast(syntax: SyntaxNode) -> Option<Self> {
27923 if Self::can_cast(syntax.kind()) {
27924 Some(Self { syntax })
27925 } else {
27926 None
27927 }
27928 }
27929 #[inline]
27930 fn syntax(&self) -> &SyntaxNode {
27931 &self.syntax
27932 }
27933}
27934impl AstNode for Unlisten {
27935 #[inline]
27936 fn can_cast(kind: SyntaxKind) -> bool {
27937 kind == SyntaxKind::UNLISTEN
27938 }
27939 #[inline]
27940 fn cast(syntax: SyntaxNode) -> Option<Self> {
27941 if Self::can_cast(syntax.kind()) {
27942 Some(Self { syntax })
27943 } else {
27944 None
27945 }
27946 }
27947 #[inline]
27948 fn syntax(&self) -> &SyntaxNode {
27949 &self.syntax
27950 }
27951}
27952impl AstNode for Update {
27953 #[inline]
27954 fn can_cast(kind: SyntaxKind) -> bool {
27955 kind == SyntaxKind::UPDATE
27956 }
27957 #[inline]
27958 fn cast(syntax: SyntaxNode) -> Option<Self> {
27959 if Self::can_cast(syntax.kind()) {
27960 Some(Self { syntax })
27961 } else {
27962 None
27963 }
27964 }
27965 #[inline]
27966 fn syntax(&self) -> &SyntaxNode {
27967 &self.syntax
27968 }
27969}
27970impl AstNode for UsingClause {
27971 #[inline]
27972 fn can_cast(kind: SyntaxKind) -> bool {
27973 kind == SyntaxKind::USING_CLAUSE
27974 }
27975 #[inline]
27976 fn cast(syntax: SyntaxNode) -> Option<Self> {
27977 if Self::can_cast(syntax.kind()) {
27978 Some(Self { syntax })
27979 } else {
27980 None
27981 }
27982 }
27983 #[inline]
27984 fn syntax(&self) -> &SyntaxNode {
27985 &self.syntax
27986 }
27987}
27988impl AstNode for UsingExprClause {
27989 #[inline]
27990 fn can_cast(kind: SyntaxKind) -> bool {
27991 kind == SyntaxKind::USING_EXPR_CLAUSE
27992 }
27993 #[inline]
27994 fn cast(syntax: SyntaxNode) -> Option<Self> {
27995 if Self::can_cast(syntax.kind()) {
27996 Some(Self { syntax })
27997 } else {
27998 None
27999 }
28000 }
28001 #[inline]
28002 fn syntax(&self) -> &SyntaxNode {
28003 &self.syntax
28004 }
28005}
28006impl AstNode for UsingIndex {
28007 #[inline]
28008 fn can_cast(kind: SyntaxKind) -> bool {
28009 kind == SyntaxKind::USING_INDEX
28010 }
28011 #[inline]
28012 fn cast(syntax: SyntaxNode) -> Option<Self> {
28013 if Self::can_cast(syntax.kind()) {
28014 Some(Self { syntax })
28015 } else {
28016 None
28017 }
28018 }
28019 #[inline]
28020 fn syntax(&self) -> &SyntaxNode {
28021 &self.syntax
28022 }
28023}
28024impl AstNode for UsingMethod {
28025 #[inline]
28026 fn can_cast(kind: SyntaxKind) -> bool {
28027 kind == SyntaxKind::USING_METHOD
28028 }
28029 #[inline]
28030 fn cast(syntax: SyntaxNode) -> Option<Self> {
28031 if Self::can_cast(syntax.kind()) {
28032 Some(Self { syntax })
28033 } else {
28034 None
28035 }
28036 }
28037 #[inline]
28038 fn syntax(&self) -> &SyntaxNode {
28039 &self.syntax
28040 }
28041}
28042impl AstNode for UsingOnClause {
28043 #[inline]
28044 fn can_cast(kind: SyntaxKind) -> bool {
28045 kind == SyntaxKind::USING_ON_CLAUSE
28046 }
28047 #[inline]
28048 fn cast(syntax: SyntaxNode) -> Option<Self> {
28049 if Self::can_cast(syntax.kind()) {
28050 Some(Self { syntax })
28051 } else {
28052 None
28053 }
28054 }
28055 #[inline]
28056 fn syntax(&self) -> &SyntaxNode {
28057 &self.syntax
28058 }
28059}
28060impl AstNode for Vacuum {
28061 #[inline]
28062 fn can_cast(kind: SyntaxKind) -> bool {
28063 kind == SyntaxKind::VACUUM
28064 }
28065 #[inline]
28066 fn cast(syntax: SyntaxNode) -> Option<Self> {
28067 if Self::can_cast(syntax.kind()) {
28068 Some(Self { syntax })
28069 } else {
28070 None
28071 }
28072 }
28073 #[inline]
28074 fn syntax(&self) -> &SyntaxNode {
28075 &self.syntax
28076 }
28077}
28078impl AstNode for VacuumOption {
28079 #[inline]
28080 fn can_cast(kind: SyntaxKind) -> bool {
28081 kind == SyntaxKind::VACUUM_OPTION
28082 }
28083 #[inline]
28084 fn cast(syntax: SyntaxNode) -> Option<Self> {
28085 if Self::can_cast(syntax.kind()) {
28086 Some(Self { syntax })
28087 } else {
28088 None
28089 }
28090 }
28091 #[inline]
28092 fn syntax(&self) -> &SyntaxNode {
28093 &self.syntax
28094 }
28095}
28096impl AstNode for VacuumOptionList {
28097 #[inline]
28098 fn can_cast(kind: SyntaxKind) -> bool {
28099 kind == SyntaxKind::VACUUM_OPTION_LIST
28100 }
28101 #[inline]
28102 fn cast(syntax: SyntaxNode) -> Option<Self> {
28103 if Self::can_cast(syntax.kind()) {
28104 Some(Self { syntax })
28105 } else {
28106 None
28107 }
28108 }
28109 #[inline]
28110 fn syntax(&self) -> &SyntaxNode {
28111 &self.syntax
28112 }
28113}
28114impl AstNode for ValidateConstraint {
28115 #[inline]
28116 fn can_cast(kind: SyntaxKind) -> bool {
28117 kind == SyntaxKind::VALIDATE_CONSTRAINT
28118 }
28119 #[inline]
28120 fn cast(syntax: SyntaxNode) -> Option<Self> {
28121 if Self::can_cast(syntax.kind()) {
28122 Some(Self { syntax })
28123 } else {
28124 None
28125 }
28126 }
28127 #[inline]
28128 fn syntax(&self) -> &SyntaxNode {
28129 &self.syntax
28130 }
28131}
28132impl AstNode for Values {
28133 #[inline]
28134 fn can_cast(kind: SyntaxKind) -> bool {
28135 kind == SyntaxKind::VALUES
28136 }
28137 #[inline]
28138 fn cast(syntax: SyntaxNode) -> Option<Self> {
28139 if Self::can_cast(syntax.kind()) {
28140 Some(Self { syntax })
28141 } else {
28142 None
28143 }
28144 }
28145 #[inline]
28146 fn syntax(&self) -> &SyntaxNode {
28147 &self.syntax
28148 }
28149}
28150impl AstNode for Variant {
28151 #[inline]
28152 fn can_cast(kind: SyntaxKind) -> bool {
28153 kind == SyntaxKind::VARIANT
28154 }
28155 #[inline]
28156 fn cast(syntax: SyntaxNode) -> Option<Self> {
28157 if Self::can_cast(syntax.kind()) {
28158 Some(Self { syntax })
28159 } else {
28160 None
28161 }
28162 }
28163 #[inline]
28164 fn syntax(&self) -> &SyntaxNode {
28165 &self.syntax
28166 }
28167}
28168impl AstNode for VariantList {
28169 #[inline]
28170 fn can_cast(kind: SyntaxKind) -> bool {
28171 kind == SyntaxKind::VARIANT_LIST
28172 }
28173 #[inline]
28174 fn cast(syntax: SyntaxNode) -> Option<Self> {
28175 if Self::can_cast(syntax.kind()) {
28176 Some(Self { syntax })
28177 } else {
28178 None
28179 }
28180 }
28181 #[inline]
28182 fn syntax(&self) -> &SyntaxNode {
28183 &self.syntax
28184 }
28185}
28186impl AstNode for VolatilityFuncOption {
28187 #[inline]
28188 fn can_cast(kind: SyntaxKind) -> bool {
28189 kind == SyntaxKind::VOLATILITY_FUNC_OPTION
28190 }
28191 #[inline]
28192 fn cast(syntax: SyntaxNode) -> Option<Self> {
28193 if Self::can_cast(syntax.kind()) {
28194 Some(Self { syntax })
28195 } else {
28196 None
28197 }
28198 }
28199 #[inline]
28200 fn syntax(&self) -> &SyntaxNode {
28201 &self.syntax
28202 }
28203}
28204impl AstNode for WhenClause {
28205 #[inline]
28206 fn can_cast(kind: SyntaxKind) -> bool {
28207 kind == SyntaxKind::WHEN_CLAUSE
28208 }
28209 #[inline]
28210 fn cast(syntax: SyntaxNode) -> Option<Self> {
28211 if Self::can_cast(syntax.kind()) {
28212 Some(Self { syntax })
28213 } else {
28214 None
28215 }
28216 }
28217 #[inline]
28218 fn syntax(&self) -> &SyntaxNode {
28219 &self.syntax
28220 }
28221}
28222impl AstNode for WhenClauseList {
28223 #[inline]
28224 fn can_cast(kind: SyntaxKind) -> bool {
28225 kind == SyntaxKind::WHEN_CLAUSE_LIST
28226 }
28227 #[inline]
28228 fn cast(syntax: SyntaxNode) -> Option<Self> {
28229 if Self::can_cast(syntax.kind()) {
28230 Some(Self { syntax })
28231 } else {
28232 None
28233 }
28234 }
28235 #[inline]
28236 fn syntax(&self) -> &SyntaxNode {
28237 &self.syntax
28238 }
28239}
28240impl AstNode for WhenCondition {
28241 #[inline]
28242 fn can_cast(kind: SyntaxKind) -> bool {
28243 kind == SyntaxKind::WHEN_CONDITION
28244 }
28245 #[inline]
28246 fn cast(syntax: SyntaxNode) -> Option<Self> {
28247 if Self::can_cast(syntax.kind()) {
28248 Some(Self { syntax })
28249 } else {
28250 None
28251 }
28252 }
28253 #[inline]
28254 fn syntax(&self) -> &SyntaxNode {
28255 &self.syntax
28256 }
28257}
28258impl AstNode for WhereClause {
28259 #[inline]
28260 fn can_cast(kind: SyntaxKind) -> bool {
28261 kind == SyntaxKind::WHERE_CLAUSE
28262 }
28263 #[inline]
28264 fn cast(syntax: SyntaxNode) -> Option<Self> {
28265 if Self::can_cast(syntax.kind()) {
28266 Some(Self { syntax })
28267 } else {
28268 None
28269 }
28270 }
28271 #[inline]
28272 fn syntax(&self) -> &SyntaxNode {
28273 &self.syntax
28274 }
28275}
28276impl AstNode for WhereConditionClause {
28277 #[inline]
28278 fn can_cast(kind: SyntaxKind) -> bool {
28279 kind == SyntaxKind::WHERE_CONDITION_CLAUSE
28280 }
28281 #[inline]
28282 fn cast(syntax: SyntaxNode) -> Option<Self> {
28283 if Self::can_cast(syntax.kind()) {
28284 Some(Self { syntax })
28285 } else {
28286 None
28287 }
28288 }
28289 #[inline]
28290 fn syntax(&self) -> &SyntaxNode {
28291 &self.syntax
28292 }
28293}
28294impl AstNode for WhereCurrentOf {
28295 #[inline]
28296 fn can_cast(kind: SyntaxKind) -> bool {
28297 kind == SyntaxKind::WHERE_CURRENT_OF
28298 }
28299 #[inline]
28300 fn cast(syntax: SyntaxNode) -> Option<Self> {
28301 if Self::can_cast(syntax.kind()) {
28302 Some(Self { syntax })
28303 } else {
28304 None
28305 }
28306 }
28307 #[inline]
28308 fn syntax(&self) -> &SyntaxNode {
28309 &self.syntax
28310 }
28311}
28312impl AstNode for WindowClause {
28313 #[inline]
28314 fn can_cast(kind: SyntaxKind) -> bool {
28315 kind == SyntaxKind::WINDOW_CLAUSE
28316 }
28317 #[inline]
28318 fn cast(syntax: SyntaxNode) -> Option<Self> {
28319 if Self::can_cast(syntax.kind()) {
28320 Some(Self { syntax })
28321 } else {
28322 None
28323 }
28324 }
28325 #[inline]
28326 fn syntax(&self) -> &SyntaxNode {
28327 &self.syntax
28328 }
28329}
28330impl AstNode for WindowDef {
28331 #[inline]
28332 fn can_cast(kind: SyntaxKind) -> bool {
28333 kind == SyntaxKind::WINDOW_DEF
28334 }
28335 #[inline]
28336 fn cast(syntax: SyntaxNode) -> Option<Self> {
28337 if Self::can_cast(syntax.kind()) {
28338 Some(Self { syntax })
28339 } else {
28340 None
28341 }
28342 }
28343 #[inline]
28344 fn syntax(&self) -> &SyntaxNode {
28345 &self.syntax
28346 }
28347}
28348impl AstNode for WindowFuncOption {
28349 #[inline]
28350 fn can_cast(kind: SyntaxKind) -> bool {
28351 kind == SyntaxKind::WINDOW_FUNC_OPTION
28352 }
28353 #[inline]
28354 fn cast(syntax: SyntaxNode) -> Option<Self> {
28355 if Self::can_cast(syntax.kind()) {
28356 Some(Self { syntax })
28357 } else {
28358 None
28359 }
28360 }
28361 #[inline]
28362 fn syntax(&self) -> &SyntaxNode {
28363 &self.syntax
28364 }
28365}
28366impl AstNode for WindowSpec {
28367 #[inline]
28368 fn can_cast(kind: SyntaxKind) -> bool {
28369 kind == SyntaxKind::WINDOW_SPEC
28370 }
28371 #[inline]
28372 fn cast(syntax: SyntaxNode) -> Option<Self> {
28373 if Self::can_cast(syntax.kind()) {
28374 Some(Self { syntax })
28375 } else {
28376 None
28377 }
28378 }
28379 #[inline]
28380 fn syntax(&self) -> &SyntaxNode {
28381 &self.syntax
28382 }
28383}
28384impl AstNode for WithCheckExprClause {
28385 #[inline]
28386 fn can_cast(kind: SyntaxKind) -> bool {
28387 kind == SyntaxKind::WITH_CHECK_EXPR_CLAUSE
28388 }
28389 #[inline]
28390 fn cast(syntax: SyntaxNode) -> Option<Self> {
28391 if Self::can_cast(syntax.kind()) {
28392 Some(Self { syntax })
28393 } else {
28394 None
28395 }
28396 }
28397 #[inline]
28398 fn syntax(&self) -> &SyntaxNode {
28399 &self.syntax
28400 }
28401}
28402impl AstNode for WithClause {
28403 #[inline]
28404 fn can_cast(kind: SyntaxKind) -> bool {
28405 kind == SyntaxKind::WITH_CLAUSE
28406 }
28407 #[inline]
28408 fn cast(syntax: SyntaxNode) -> Option<Self> {
28409 if Self::can_cast(syntax.kind()) {
28410 Some(Self { syntax })
28411 } else {
28412 None
28413 }
28414 }
28415 #[inline]
28416 fn syntax(&self) -> &SyntaxNode {
28417 &self.syntax
28418 }
28419}
28420impl AstNode for WithData {
28421 #[inline]
28422 fn can_cast(kind: SyntaxKind) -> bool {
28423 kind == SyntaxKind::WITH_DATA
28424 }
28425 #[inline]
28426 fn cast(syntax: SyntaxNode) -> Option<Self> {
28427 if Self::can_cast(syntax.kind()) {
28428 Some(Self { syntax })
28429 } else {
28430 None
28431 }
28432 }
28433 #[inline]
28434 fn syntax(&self) -> &SyntaxNode {
28435 &self.syntax
28436 }
28437}
28438impl AstNode for WithNoData {
28439 #[inline]
28440 fn can_cast(kind: SyntaxKind) -> bool {
28441 kind == SyntaxKind::WITH_NO_DATA
28442 }
28443 #[inline]
28444 fn cast(syntax: SyntaxNode) -> Option<Self> {
28445 if Self::can_cast(syntax.kind()) {
28446 Some(Self { syntax })
28447 } else {
28448 None
28449 }
28450 }
28451 #[inline]
28452 fn syntax(&self) -> &SyntaxNode {
28453 &self.syntax
28454 }
28455}
28456impl AstNode for WithOptions {
28457 #[inline]
28458 fn can_cast(kind: SyntaxKind) -> bool {
28459 kind == SyntaxKind::WITH_OPTIONS
28460 }
28461 #[inline]
28462 fn cast(syntax: SyntaxNode) -> Option<Self> {
28463 if Self::can_cast(syntax.kind()) {
28464 Some(Self { syntax })
28465 } else {
28466 None
28467 }
28468 }
28469 #[inline]
28470 fn syntax(&self) -> &SyntaxNode {
28471 &self.syntax
28472 }
28473}
28474impl AstNode for WithParams {
28475 #[inline]
28476 fn can_cast(kind: SyntaxKind) -> bool {
28477 kind == SyntaxKind::WITH_PARAMS
28478 }
28479 #[inline]
28480 fn cast(syntax: SyntaxNode) -> Option<Self> {
28481 if Self::can_cast(syntax.kind()) {
28482 Some(Self { syntax })
28483 } else {
28484 None
28485 }
28486 }
28487 #[inline]
28488 fn syntax(&self) -> &SyntaxNode {
28489 &self.syntax
28490 }
28491}
28492impl AstNode for WithTable {
28493 #[inline]
28494 fn can_cast(kind: SyntaxKind) -> bool {
28495 kind == SyntaxKind::WITH_TABLE
28496 }
28497 #[inline]
28498 fn cast(syntax: SyntaxNode) -> Option<Self> {
28499 if Self::can_cast(syntax.kind()) {
28500 Some(Self { syntax })
28501 } else {
28502 None
28503 }
28504 }
28505 #[inline]
28506 fn syntax(&self) -> &SyntaxNode {
28507 &self.syntax
28508 }
28509}
28510impl AstNode for WithTimezone {
28511 #[inline]
28512 fn can_cast(kind: SyntaxKind) -> bool {
28513 kind == SyntaxKind::WITH_TIMEZONE
28514 }
28515 #[inline]
28516 fn cast(syntax: SyntaxNode) -> Option<Self> {
28517 if Self::can_cast(syntax.kind()) {
28518 Some(Self { syntax })
28519 } else {
28520 None
28521 }
28522 }
28523 #[inline]
28524 fn syntax(&self) -> &SyntaxNode {
28525 &self.syntax
28526 }
28527}
28528impl AstNode for WithinClause {
28529 #[inline]
28530 fn can_cast(kind: SyntaxKind) -> bool {
28531 kind == SyntaxKind::WITHIN_CLAUSE
28532 }
28533 #[inline]
28534 fn cast(syntax: SyntaxNode) -> Option<Self> {
28535 if Self::can_cast(syntax.kind()) {
28536 Some(Self { syntax })
28537 } else {
28538 None
28539 }
28540 }
28541 #[inline]
28542 fn syntax(&self) -> &SyntaxNode {
28543 &self.syntax
28544 }
28545}
28546impl AstNode for WithoutOids {
28547 #[inline]
28548 fn can_cast(kind: SyntaxKind) -> bool {
28549 kind == SyntaxKind::WITHOUT_OIDS
28550 }
28551 #[inline]
28552 fn cast(syntax: SyntaxNode) -> Option<Self> {
28553 if Self::can_cast(syntax.kind()) {
28554 Some(Self { syntax })
28555 } else {
28556 None
28557 }
28558 }
28559 #[inline]
28560 fn syntax(&self) -> &SyntaxNode {
28561 &self.syntax
28562 }
28563}
28564impl AstNode for WithoutTimezone {
28565 #[inline]
28566 fn can_cast(kind: SyntaxKind) -> bool {
28567 kind == SyntaxKind::WITHOUT_TIMEZONE
28568 }
28569 #[inline]
28570 fn cast(syntax: SyntaxNode) -> Option<Self> {
28571 if Self::can_cast(syntax.kind()) {
28572 Some(Self { syntax })
28573 } else {
28574 None
28575 }
28576 }
28577 #[inline]
28578 fn syntax(&self) -> &SyntaxNode {
28579 &self.syntax
28580 }
28581}
28582impl AstNode for XmlAttributeList {
28583 #[inline]
28584 fn can_cast(kind: SyntaxKind) -> bool {
28585 kind == SyntaxKind::XML_ATTRIBUTE_LIST
28586 }
28587 #[inline]
28588 fn cast(syntax: SyntaxNode) -> Option<Self> {
28589 if Self::can_cast(syntax.kind()) {
28590 Some(Self { syntax })
28591 } else {
28592 None
28593 }
28594 }
28595 #[inline]
28596 fn syntax(&self) -> &SyntaxNode {
28597 &self.syntax
28598 }
28599}
28600impl AstNode for XmlColumnOption {
28601 #[inline]
28602 fn can_cast(kind: SyntaxKind) -> bool {
28603 kind == SyntaxKind::XML_COLUMN_OPTION
28604 }
28605 #[inline]
28606 fn cast(syntax: SyntaxNode) -> Option<Self> {
28607 if Self::can_cast(syntax.kind()) {
28608 Some(Self { syntax })
28609 } else {
28610 None
28611 }
28612 }
28613 #[inline]
28614 fn syntax(&self) -> &SyntaxNode {
28615 &self.syntax
28616 }
28617}
28618impl AstNode for XmlColumnOptionList {
28619 #[inline]
28620 fn can_cast(kind: SyntaxKind) -> bool {
28621 kind == SyntaxKind::XML_COLUMN_OPTION_LIST
28622 }
28623 #[inline]
28624 fn cast(syntax: SyntaxNode) -> Option<Self> {
28625 if Self::can_cast(syntax.kind()) {
28626 Some(Self { syntax })
28627 } else {
28628 None
28629 }
28630 }
28631 #[inline]
28632 fn syntax(&self) -> &SyntaxNode {
28633 &self.syntax
28634 }
28635}
28636impl AstNode for XmlElementFn {
28637 #[inline]
28638 fn can_cast(kind: SyntaxKind) -> bool {
28639 kind == SyntaxKind::XML_ELEMENT_FN
28640 }
28641 #[inline]
28642 fn cast(syntax: SyntaxNode) -> Option<Self> {
28643 if Self::can_cast(syntax.kind()) {
28644 Some(Self { syntax })
28645 } else {
28646 None
28647 }
28648 }
28649 #[inline]
28650 fn syntax(&self) -> &SyntaxNode {
28651 &self.syntax
28652 }
28653}
28654impl AstNode for XmlExistsFn {
28655 #[inline]
28656 fn can_cast(kind: SyntaxKind) -> bool {
28657 kind == SyntaxKind::XML_EXISTS_FN
28658 }
28659 #[inline]
28660 fn cast(syntax: SyntaxNode) -> Option<Self> {
28661 if Self::can_cast(syntax.kind()) {
28662 Some(Self { syntax })
28663 } else {
28664 None
28665 }
28666 }
28667 #[inline]
28668 fn syntax(&self) -> &SyntaxNode {
28669 &self.syntax
28670 }
28671}
28672impl AstNode for XmlForestFn {
28673 #[inline]
28674 fn can_cast(kind: SyntaxKind) -> bool {
28675 kind == SyntaxKind::XML_FOREST_FN
28676 }
28677 #[inline]
28678 fn cast(syntax: SyntaxNode) -> Option<Self> {
28679 if Self::can_cast(syntax.kind()) {
28680 Some(Self { syntax })
28681 } else {
28682 None
28683 }
28684 }
28685 #[inline]
28686 fn syntax(&self) -> &SyntaxNode {
28687 &self.syntax
28688 }
28689}
28690impl AstNode for XmlNamespace {
28691 #[inline]
28692 fn can_cast(kind: SyntaxKind) -> bool {
28693 kind == SyntaxKind::XML_NAMESPACE
28694 }
28695 #[inline]
28696 fn cast(syntax: SyntaxNode) -> Option<Self> {
28697 if Self::can_cast(syntax.kind()) {
28698 Some(Self { syntax })
28699 } else {
28700 None
28701 }
28702 }
28703 #[inline]
28704 fn syntax(&self) -> &SyntaxNode {
28705 &self.syntax
28706 }
28707}
28708impl AstNode for XmlNamespaceList {
28709 #[inline]
28710 fn can_cast(kind: SyntaxKind) -> bool {
28711 kind == SyntaxKind::XML_NAMESPACE_LIST
28712 }
28713 #[inline]
28714 fn cast(syntax: SyntaxNode) -> Option<Self> {
28715 if Self::can_cast(syntax.kind()) {
28716 Some(Self { syntax })
28717 } else {
28718 None
28719 }
28720 }
28721 #[inline]
28722 fn syntax(&self) -> &SyntaxNode {
28723 &self.syntax
28724 }
28725}
28726impl AstNode for XmlParseFn {
28727 #[inline]
28728 fn can_cast(kind: SyntaxKind) -> bool {
28729 kind == SyntaxKind::XML_PARSE_FN
28730 }
28731 #[inline]
28732 fn cast(syntax: SyntaxNode) -> Option<Self> {
28733 if Self::can_cast(syntax.kind()) {
28734 Some(Self { syntax })
28735 } else {
28736 None
28737 }
28738 }
28739 #[inline]
28740 fn syntax(&self) -> &SyntaxNode {
28741 &self.syntax
28742 }
28743}
28744impl AstNode for XmlPassingMech {
28745 #[inline]
28746 fn can_cast(kind: SyntaxKind) -> bool {
28747 kind == SyntaxKind::XML_PASSING_MECH
28748 }
28749 #[inline]
28750 fn cast(syntax: SyntaxNode) -> Option<Self> {
28751 if Self::can_cast(syntax.kind()) {
28752 Some(Self { syntax })
28753 } else {
28754 None
28755 }
28756 }
28757 #[inline]
28758 fn syntax(&self) -> &SyntaxNode {
28759 &self.syntax
28760 }
28761}
28762impl AstNode for XmlPiFn {
28763 #[inline]
28764 fn can_cast(kind: SyntaxKind) -> bool {
28765 kind == SyntaxKind::XML_PI_FN
28766 }
28767 #[inline]
28768 fn cast(syntax: SyntaxNode) -> Option<Self> {
28769 if Self::can_cast(syntax.kind()) {
28770 Some(Self { syntax })
28771 } else {
28772 None
28773 }
28774 }
28775 #[inline]
28776 fn syntax(&self) -> &SyntaxNode {
28777 &self.syntax
28778 }
28779}
28780impl AstNode for XmlRootFn {
28781 #[inline]
28782 fn can_cast(kind: SyntaxKind) -> bool {
28783 kind == SyntaxKind::XML_ROOT_FN
28784 }
28785 #[inline]
28786 fn cast(syntax: SyntaxNode) -> Option<Self> {
28787 if Self::can_cast(syntax.kind()) {
28788 Some(Self { syntax })
28789 } else {
28790 None
28791 }
28792 }
28793 #[inline]
28794 fn syntax(&self) -> &SyntaxNode {
28795 &self.syntax
28796 }
28797}
28798impl AstNode for XmlRowPassingClause {
28799 #[inline]
28800 fn can_cast(kind: SyntaxKind) -> bool {
28801 kind == SyntaxKind::XML_ROW_PASSING_CLAUSE
28802 }
28803 #[inline]
28804 fn cast(syntax: SyntaxNode) -> Option<Self> {
28805 if Self::can_cast(syntax.kind()) {
28806 Some(Self { syntax })
28807 } else {
28808 None
28809 }
28810 }
28811 #[inline]
28812 fn syntax(&self) -> &SyntaxNode {
28813 &self.syntax
28814 }
28815}
28816impl AstNode for XmlSerializeFn {
28817 #[inline]
28818 fn can_cast(kind: SyntaxKind) -> bool {
28819 kind == SyntaxKind::XML_SERIALIZE_FN
28820 }
28821 #[inline]
28822 fn cast(syntax: SyntaxNode) -> Option<Self> {
28823 if Self::can_cast(syntax.kind()) {
28824 Some(Self { syntax })
28825 } else {
28826 None
28827 }
28828 }
28829 #[inline]
28830 fn syntax(&self) -> &SyntaxNode {
28831 &self.syntax
28832 }
28833}
28834impl AstNode for XmlTable {
28835 #[inline]
28836 fn can_cast(kind: SyntaxKind) -> bool {
28837 kind == SyntaxKind::XML_TABLE
28838 }
28839 #[inline]
28840 fn cast(syntax: SyntaxNode) -> Option<Self> {
28841 if Self::can_cast(syntax.kind()) {
28842 Some(Self { syntax })
28843 } else {
28844 None
28845 }
28846 }
28847 #[inline]
28848 fn syntax(&self) -> &SyntaxNode {
28849 &self.syntax
28850 }
28851}
28852impl AstNode for XmlTableColumn {
28853 #[inline]
28854 fn can_cast(kind: SyntaxKind) -> bool {
28855 kind == SyntaxKind::XML_TABLE_COLUMN
28856 }
28857 #[inline]
28858 fn cast(syntax: SyntaxNode) -> Option<Self> {
28859 if Self::can_cast(syntax.kind()) {
28860 Some(Self { syntax })
28861 } else {
28862 None
28863 }
28864 }
28865 #[inline]
28866 fn syntax(&self) -> &SyntaxNode {
28867 &self.syntax
28868 }
28869}
28870impl AstNode for XmlTableColumnList {
28871 #[inline]
28872 fn can_cast(kind: SyntaxKind) -> bool {
28873 kind == SyntaxKind::XML_TABLE_COLUMN_LIST
28874 }
28875 #[inline]
28876 fn cast(syntax: SyntaxNode) -> Option<Self> {
28877 if Self::can_cast(syntax.kind()) {
28878 Some(Self { syntax })
28879 } else {
28880 None
28881 }
28882 }
28883 #[inline]
28884 fn syntax(&self) -> &SyntaxNode {
28885 &self.syntax
28886 }
28887}
28888impl AstNode for AlterColumnOption {
28889 #[inline]
28890 fn can_cast(kind: SyntaxKind) -> bool {
28891 matches!(
28892 kind,
28893 SyntaxKind::ADD_GENERATED
28894 | SyntaxKind::DROP_DEFAULT
28895 | SyntaxKind::DROP_EXPRESSION
28896 | SyntaxKind::DROP_IDENTITY
28897 | SyntaxKind::DROP_NOT_NULL
28898 | SyntaxKind::INHERIT
28899 | SyntaxKind::NO_INHERIT
28900 | SyntaxKind::RESET_OPTIONS
28901 | SyntaxKind::RESTART
28902 | SyntaxKind::SET_COMPRESSION
28903 | SyntaxKind::SET_DEFAULT
28904 | SyntaxKind::SET_EXPRESSION
28905 | SyntaxKind::SET_GENERATED
28906 | SyntaxKind::SET_GENERATED_OPTIONS
28907 | SyntaxKind::SET_NOT_NULL
28908 | SyntaxKind::SET_OPTIONS
28909 | SyntaxKind::SET_OPTIONS_LIST
28910 | SyntaxKind::SET_SEQUENCE_OPTION
28911 | SyntaxKind::SET_STATISTICS
28912 | SyntaxKind::SET_STORAGE
28913 | SyntaxKind::SET_TYPE
28914 )
28915 }
28916 #[inline]
28917 fn cast(syntax: SyntaxNode) -> Option<Self> {
28918 let res = match syntax.kind() {
28919 SyntaxKind::ADD_GENERATED => AlterColumnOption::AddGenerated(AddGenerated { syntax }),
28920 SyntaxKind::DROP_DEFAULT => AlterColumnOption::DropDefault(DropDefault { syntax }),
28921 SyntaxKind::DROP_EXPRESSION => {
28922 AlterColumnOption::DropExpression(DropExpression { syntax })
28923 }
28924 SyntaxKind::DROP_IDENTITY => AlterColumnOption::DropIdentity(DropIdentity { syntax }),
28925 SyntaxKind::DROP_NOT_NULL => AlterColumnOption::DropNotNull(DropNotNull { syntax }),
28926 SyntaxKind::INHERIT => AlterColumnOption::Inherit(Inherit { syntax }),
28927 SyntaxKind::NO_INHERIT => AlterColumnOption::NoInherit(NoInherit { syntax }),
28928 SyntaxKind::RESET_OPTIONS => AlterColumnOption::ResetOptions(ResetOptions { syntax }),
28929 SyntaxKind::RESTART => AlterColumnOption::Restart(Restart { syntax }),
28930 SyntaxKind::SET_COMPRESSION => {
28931 AlterColumnOption::SetCompression(SetCompression { syntax })
28932 }
28933 SyntaxKind::SET_DEFAULT => AlterColumnOption::SetDefault(SetDefault { syntax }),
28934 SyntaxKind::SET_EXPRESSION => {
28935 AlterColumnOption::SetExpression(SetExpression { syntax })
28936 }
28937 SyntaxKind::SET_GENERATED => AlterColumnOption::SetGenerated(SetGenerated { syntax }),
28938 SyntaxKind::SET_GENERATED_OPTIONS => {
28939 AlterColumnOption::SetGeneratedOptions(SetGeneratedOptions { syntax })
28940 }
28941 SyntaxKind::SET_NOT_NULL => AlterColumnOption::SetNotNull(SetNotNull { syntax }),
28942 SyntaxKind::SET_OPTIONS => AlterColumnOption::SetOptions(SetOptions { syntax }),
28943 SyntaxKind::SET_OPTIONS_LIST => {
28944 AlterColumnOption::SetOptionsList(SetOptionsList { syntax })
28945 }
28946 SyntaxKind::SET_SEQUENCE_OPTION => {
28947 AlterColumnOption::SetSequenceOption(SetSequenceOption { syntax })
28948 }
28949 SyntaxKind::SET_STATISTICS => {
28950 AlterColumnOption::SetStatistics(SetStatistics { syntax })
28951 }
28952 SyntaxKind::SET_STORAGE => AlterColumnOption::SetStorage(SetStorage { syntax }),
28953 SyntaxKind::SET_TYPE => AlterColumnOption::SetType(SetType { syntax }),
28954 _ => {
28955 return None;
28956 }
28957 };
28958 Some(res)
28959 }
28960 #[inline]
28961 fn syntax(&self) -> &SyntaxNode {
28962 match self {
28963 AlterColumnOption::AddGenerated(it) => &it.syntax,
28964 AlterColumnOption::DropDefault(it) => &it.syntax,
28965 AlterColumnOption::DropExpression(it) => &it.syntax,
28966 AlterColumnOption::DropIdentity(it) => &it.syntax,
28967 AlterColumnOption::DropNotNull(it) => &it.syntax,
28968 AlterColumnOption::Inherit(it) => &it.syntax,
28969 AlterColumnOption::NoInherit(it) => &it.syntax,
28970 AlterColumnOption::ResetOptions(it) => &it.syntax,
28971 AlterColumnOption::Restart(it) => &it.syntax,
28972 AlterColumnOption::SetCompression(it) => &it.syntax,
28973 AlterColumnOption::SetDefault(it) => &it.syntax,
28974 AlterColumnOption::SetExpression(it) => &it.syntax,
28975 AlterColumnOption::SetGenerated(it) => &it.syntax,
28976 AlterColumnOption::SetGeneratedOptions(it) => &it.syntax,
28977 AlterColumnOption::SetNotNull(it) => &it.syntax,
28978 AlterColumnOption::SetOptions(it) => &it.syntax,
28979 AlterColumnOption::SetOptionsList(it) => &it.syntax,
28980 AlterColumnOption::SetSequenceOption(it) => &it.syntax,
28981 AlterColumnOption::SetStatistics(it) => &it.syntax,
28982 AlterColumnOption::SetStorage(it) => &it.syntax,
28983 AlterColumnOption::SetType(it) => &it.syntax,
28984 }
28985 }
28986}
28987impl From<AddGenerated> for AlterColumnOption {
28988 #[inline]
28989 fn from(node: AddGenerated) -> AlterColumnOption {
28990 AlterColumnOption::AddGenerated(node)
28991 }
28992}
28993impl From<DropDefault> for AlterColumnOption {
28994 #[inline]
28995 fn from(node: DropDefault) -> AlterColumnOption {
28996 AlterColumnOption::DropDefault(node)
28997 }
28998}
28999impl From<DropExpression> for AlterColumnOption {
29000 #[inline]
29001 fn from(node: DropExpression) -> AlterColumnOption {
29002 AlterColumnOption::DropExpression(node)
29003 }
29004}
29005impl From<DropIdentity> for AlterColumnOption {
29006 #[inline]
29007 fn from(node: DropIdentity) -> AlterColumnOption {
29008 AlterColumnOption::DropIdentity(node)
29009 }
29010}
29011impl From<DropNotNull> for AlterColumnOption {
29012 #[inline]
29013 fn from(node: DropNotNull) -> AlterColumnOption {
29014 AlterColumnOption::DropNotNull(node)
29015 }
29016}
29017impl From<Inherit> for AlterColumnOption {
29018 #[inline]
29019 fn from(node: Inherit) -> AlterColumnOption {
29020 AlterColumnOption::Inherit(node)
29021 }
29022}
29023impl From<NoInherit> for AlterColumnOption {
29024 #[inline]
29025 fn from(node: NoInherit) -> AlterColumnOption {
29026 AlterColumnOption::NoInherit(node)
29027 }
29028}
29029impl From<ResetOptions> for AlterColumnOption {
29030 #[inline]
29031 fn from(node: ResetOptions) -> AlterColumnOption {
29032 AlterColumnOption::ResetOptions(node)
29033 }
29034}
29035impl From<Restart> for AlterColumnOption {
29036 #[inline]
29037 fn from(node: Restart) -> AlterColumnOption {
29038 AlterColumnOption::Restart(node)
29039 }
29040}
29041impl From<SetCompression> for AlterColumnOption {
29042 #[inline]
29043 fn from(node: SetCompression) -> AlterColumnOption {
29044 AlterColumnOption::SetCompression(node)
29045 }
29046}
29047impl From<SetDefault> for AlterColumnOption {
29048 #[inline]
29049 fn from(node: SetDefault) -> AlterColumnOption {
29050 AlterColumnOption::SetDefault(node)
29051 }
29052}
29053impl From<SetExpression> for AlterColumnOption {
29054 #[inline]
29055 fn from(node: SetExpression) -> AlterColumnOption {
29056 AlterColumnOption::SetExpression(node)
29057 }
29058}
29059impl From<SetGenerated> for AlterColumnOption {
29060 #[inline]
29061 fn from(node: SetGenerated) -> AlterColumnOption {
29062 AlterColumnOption::SetGenerated(node)
29063 }
29064}
29065impl From<SetGeneratedOptions> for AlterColumnOption {
29066 #[inline]
29067 fn from(node: SetGeneratedOptions) -> AlterColumnOption {
29068 AlterColumnOption::SetGeneratedOptions(node)
29069 }
29070}
29071impl From<SetNotNull> for AlterColumnOption {
29072 #[inline]
29073 fn from(node: SetNotNull) -> AlterColumnOption {
29074 AlterColumnOption::SetNotNull(node)
29075 }
29076}
29077impl From<SetOptions> for AlterColumnOption {
29078 #[inline]
29079 fn from(node: SetOptions) -> AlterColumnOption {
29080 AlterColumnOption::SetOptions(node)
29081 }
29082}
29083impl From<SetOptionsList> for AlterColumnOption {
29084 #[inline]
29085 fn from(node: SetOptionsList) -> AlterColumnOption {
29086 AlterColumnOption::SetOptionsList(node)
29087 }
29088}
29089impl From<SetSequenceOption> for AlterColumnOption {
29090 #[inline]
29091 fn from(node: SetSequenceOption) -> AlterColumnOption {
29092 AlterColumnOption::SetSequenceOption(node)
29093 }
29094}
29095impl From<SetStatistics> for AlterColumnOption {
29096 #[inline]
29097 fn from(node: SetStatistics) -> AlterColumnOption {
29098 AlterColumnOption::SetStatistics(node)
29099 }
29100}
29101impl From<SetStorage> for AlterColumnOption {
29102 #[inline]
29103 fn from(node: SetStorage) -> AlterColumnOption {
29104 AlterColumnOption::SetStorage(node)
29105 }
29106}
29107impl From<SetType> for AlterColumnOption {
29108 #[inline]
29109 fn from(node: SetType) -> AlterColumnOption {
29110 AlterColumnOption::SetType(node)
29111 }
29112}
29113impl AstNode for AlterDomainAction {
29114 #[inline]
29115 fn can_cast(kind: SyntaxKind) -> bool {
29116 matches!(
29117 kind,
29118 SyntaxKind::ADD_CONSTRAINT
29119 | SyntaxKind::DROP_CONSTRAINT
29120 | SyntaxKind::DROP_DEFAULT
29121 | SyntaxKind::DROP_NOT_NULL
29122 | SyntaxKind::OWNER_TO
29123 | SyntaxKind::RENAME_CONSTRAINT
29124 | SyntaxKind::RENAME_TO
29125 | SyntaxKind::SET_DEFAULT
29126 | SyntaxKind::SET_NOT_NULL
29127 | SyntaxKind::SET_SCHEMA
29128 | SyntaxKind::VALIDATE_CONSTRAINT
29129 )
29130 }
29131 #[inline]
29132 fn cast(syntax: SyntaxNode) -> Option<Self> {
29133 let res = match syntax.kind() {
29134 SyntaxKind::ADD_CONSTRAINT => {
29135 AlterDomainAction::AddConstraint(AddConstraint { syntax })
29136 }
29137 SyntaxKind::DROP_CONSTRAINT => {
29138 AlterDomainAction::DropConstraint(DropConstraint { syntax })
29139 }
29140 SyntaxKind::DROP_DEFAULT => AlterDomainAction::DropDefault(DropDefault { syntax }),
29141 SyntaxKind::DROP_NOT_NULL => AlterDomainAction::DropNotNull(DropNotNull { syntax }),
29142 SyntaxKind::OWNER_TO => AlterDomainAction::OwnerTo(OwnerTo { syntax }),
29143 SyntaxKind::RENAME_CONSTRAINT => {
29144 AlterDomainAction::RenameConstraint(RenameConstraint { syntax })
29145 }
29146 SyntaxKind::RENAME_TO => AlterDomainAction::RenameTo(RenameTo { syntax }),
29147 SyntaxKind::SET_DEFAULT => AlterDomainAction::SetDefault(SetDefault { syntax }),
29148 SyntaxKind::SET_NOT_NULL => AlterDomainAction::SetNotNull(SetNotNull { syntax }),
29149 SyntaxKind::SET_SCHEMA => AlterDomainAction::SetSchema(SetSchema { syntax }),
29150 SyntaxKind::VALIDATE_CONSTRAINT => {
29151 AlterDomainAction::ValidateConstraint(ValidateConstraint { syntax })
29152 }
29153 _ => {
29154 return None;
29155 }
29156 };
29157 Some(res)
29158 }
29159 #[inline]
29160 fn syntax(&self) -> &SyntaxNode {
29161 match self {
29162 AlterDomainAction::AddConstraint(it) => &it.syntax,
29163 AlterDomainAction::DropConstraint(it) => &it.syntax,
29164 AlterDomainAction::DropDefault(it) => &it.syntax,
29165 AlterDomainAction::DropNotNull(it) => &it.syntax,
29166 AlterDomainAction::OwnerTo(it) => &it.syntax,
29167 AlterDomainAction::RenameConstraint(it) => &it.syntax,
29168 AlterDomainAction::RenameTo(it) => &it.syntax,
29169 AlterDomainAction::SetDefault(it) => &it.syntax,
29170 AlterDomainAction::SetNotNull(it) => &it.syntax,
29171 AlterDomainAction::SetSchema(it) => &it.syntax,
29172 AlterDomainAction::ValidateConstraint(it) => &it.syntax,
29173 }
29174 }
29175}
29176impl From<AddConstraint> for AlterDomainAction {
29177 #[inline]
29178 fn from(node: AddConstraint) -> AlterDomainAction {
29179 AlterDomainAction::AddConstraint(node)
29180 }
29181}
29182impl From<DropConstraint> for AlterDomainAction {
29183 #[inline]
29184 fn from(node: DropConstraint) -> AlterDomainAction {
29185 AlterDomainAction::DropConstraint(node)
29186 }
29187}
29188impl From<DropDefault> for AlterDomainAction {
29189 #[inline]
29190 fn from(node: DropDefault) -> AlterDomainAction {
29191 AlterDomainAction::DropDefault(node)
29192 }
29193}
29194impl From<DropNotNull> for AlterDomainAction {
29195 #[inline]
29196 fn from(node: DropNotNull) -> AlterDomainAction {
29197 AlterDomainAction::DropNotNull(node)
29198 }
29199}
29200impl From<OwnerTo> for AlterDomainAction {
29201 #[inline]
29202 fn from(node: OwnerTo) -> AlterDomainAction {
29203 AlterDomainAction::OwnerTo(node)
29204 }
29205}
29206impl From<RenameConstraint> for AlterDomainAction {
29207 #[inline]
29208 fn from(node: RenameConstraint) -> AlterDomainAction {
29209 AlterDomainAction::RenameConstraint(node)
29210 }
29211}
29212impl From<RenameTo> for AlterDomainAction {
29213 #[inline]
29214 fn from(node: RenameTo) -> AlterDomainAction {
29215 AlterDomainAction::RenameTo(node)
29216 }
29217}
29218impl From<SetDefault> for AlterDomainAction {
29219 #[inline]
29220 fn from(node: SetDefault) -> AlterDomainAction {
29221 AlterDomainAction::SetDefault(node)
29222 }
29223}
29224impl From<SetNotNull> for AlterDomainAction {
29225 #[inline]
29226 fn from(node: SetNotNull) -> AlterDomainAction {
29227 AlterDomainAction::SetNotNull(node)
29228 }
29229}
29230impl From<SetSchema> for AlterDomainAction {
29231 #[inline]
29232 fn from(node: SetSchema) -> AlterDomainAction {
29233 AlterDomainAction::SetSchema(node)
29234 }
29235}
29236impl From<ValidateConstraint> for AlterDomainAction {
29237 #[inline]
29238 fn from(node: ValidateConstraint) -> AlterDomainAction {
29239 AlterDomainAction::ValidateConstraint(node)
29240 }
29241}
29242impl AstNode for AlterIndexAction {
29243 #[inline]
29244 fn can_cast(kind: SyntaxKind) -> bool {
29245 matches!(
29246 kind,
29247 SyntaxKind::ALTER_SET_STATISTICS
29248 | SyntaxKind::ATTACH_PARTITION
29249 | SyntaxKind::DEPENDS_ON_EXTENSION
29250 | SyntaxKind::NO_DEPENDS_ON_EXTENSION
29251 | SyntaxKind::RENAME_TO
29252 | SyntaxKind::RESET_OPTIONS
29253 | SyntaxKind::SET_OPTIONS
29254 | SyntaxKind::SET_TABLESPACE
29255 )
29256 }
29257 #[inline]
29258 fn cast(syntax: SyntaxNode) -> Option<Self> {
29259 let res = match syntax.kind() {
29260 SyntaxKind::ALTER_SET_STATISTICS => {
29261 AlterIndexAction::AlterSetStatistics(AlterSetStatistics { syntax })
29262 }
29263 SyntaxKind::ATTACH_PARTITION => {
29264 AlterIndexAction::AttachPartition(AttachPartition { syntax })
29265 }
29266 SyntaxKind::DEPENDS_ON_EXTENSION => {
29267 AlterIndexAction::DependsOnExtension(DependsOnExtension { syntax })
29268 }
29269 SyntaxKind::NO_DEPENDS_ON_EXTENSION => {
29270 AlterIndexAction::NoDependsOnExtension(NoDependsOnExtension { syntax })
29271 }
29272 SyntaxKind::RENAME_TO => AlterIndexAction::RenameTo(RenameTo { syntax }),
29273 SyntaxKind::RESET_OPTIONS => AlterIndexAction::ResetOptions(ResetOptions { syntax }),
29274 SyntaxKind::SET_OPTIONS => AlterIndexAction::SetOptions(SetOptions { syntax }),
29275 SyntaxKind::SET_TABLESPACE => AlterIndexAction::SetTablespace(SetTablespace { syntax }),
29276 _ => {
29277 return None;
29278 }
29279 };
29280 Some(res)
29281 }
29282 #[inline]
29283 fn syntax(&self) -> &SyntaxNode {
29284 match self {
29285 AlterIndexAction::AlterSetStatistics(it) => &it.syntax,
29286 AlterIndexAction::AttachPartition(it) => &it.syntax,
29287 AlterIndexAction::DependsOnExtension(it) => &it.syntax,
29288 AlterIndexAction::NoDependsOnExtension(it) => &it.syntax,
29289 AlterIndexAction::RenameTo(it) => &it.syntax,
29290 AlterIndexAction::ResetOptions(it) => &it.syntax,
29291 AlterIndexAction::SetOptions(it) => &it.syntax,
29292 AlterIndexAction::SetTablespace(it) => &it.syntax,
29293 }
29294 }
29295}
29296impl From<AlterSetStatistics> for AlterIndexAction {
29297 #[inline]
29298 fn from(node: AlterSetStatistics) -> AlterIndexAction {
29299 AlterIndexAction::AlterSetStatistics(node)
29300 }
29301}
29302impl From<AttachPartition> for AlterIndexAction {
29303 #[inline]
29304 fn from(node: AttachPartition) -> AlterIndexAction {
29305 AlterIndexAction::AttachPartition(node)
29306 }
29307}
29308impl From<DependsOnExtension> for AlterIndexAction {
29309 #[inline]
29310 fn from(node: DependsOnExtension) -> AlterIndexAction {
29311 AlterIndexAction::DependsOnExtension(node)
29312 }
29313}
29314impl From<NoDependsOnExtension> for AlterIndexAction {
29315 #[inline]
29316 fn from(node: NoDependsOnExtension) -> AlterIndexAction {
29317 AlterIndexAction::NoDependsOnExtension(node)
29318 }
29319}
29320impl From<RenameTo> for AlterIndexAction {
29321 #[inline]
29322 fn from(node: RenameTo) -> AlterIndexAction {
29323 AlterIndexAction::RenameTo(node)
29324 }
29325}
29326impl From<ResetOptions> for AlterIndexAction {
29327 #[inline]
29328 fn from(node: ResetOptions) -> AlterIndexAction {
29329 AlterIndexAction::ResetOptions(node)
29330 }
29331}
29332impl From<SetOptions> for AlterIndexAction {
29333 #[inline]
29334 fn from(node: SetOptions) -> AlterIndexAction {
29335 AlterIndexAction::SetOptions(node)
29336 }
29337}
29338impl From<SetTablespace> for AlterIndexAction {
29339 #[inline]
29340 fn from(node: SetTablespace) -> AlterIndexAction {
29341 AlterIndexAction::SetTablespace(node)
29342 }
29343}
29344impl AstNode for AlterMaterializedViewAction {
29345 #[inline]
29346 fn can_cast(kind: SyntaxKind) -> bool {
29347 matches!(
29348 kind,
29349 SyntaxKind::DEPENDS_ON_EXTENSION
29350 | SyntaxKind::NO_DEPENDS_ON_EXTENSION
29351 | SyntaxKind::RENAME_COLUMN
29352 | SyntaxKind::RENAME_TO
29353 | SyntaxKind::SET_SCHEMA
29354 )
29355 }
29356 #[inline]
29357 fn cast(syntax: SyntaxNode) -> Option<Self> {
29358 let res = match syntax.kind() {
29359 SyntaxKind::DEPENDS_ON_EXTENSION => {
29360 AlterMaterializedViewAction::DependsOnExtension(DependsOnExtension { syntax })
29361 }
29362 SyntaxKind::NO_DEPENDS_ON_EXTENSION => {
29363 AlterMaterializedViewAction::NoDependsOnExtension(NoDependsOnExtension { syntax })
29364 }
29365 SyntaxKind::RENAME_COLUMN => {
29366 AlterMaterializedViewAction::RenameColumn(RenameColumn { syntax })
29367 }
29368 SyntaxKind::RENAME_TO => AlterMaterializedViewAction::RenameTo(RenameTo { syntax }),
29369 SyntaxKind::SET_SCHEMA => AlterMaterializedViewAction::SetSchema(SetSchema { syntax }),
29370 _ => {
29371 if let Some(result) = AlterTableAction::cast(syntax) {
29372 return Some(AlterMaterializedViewAction::AlterTableAction(result));
29373 }
29374 return None;
29375 }
29376 };
29377 Some(res)
29378 }
29379 #[inline]
29380 fn syntax(&self) -> &SyntaxNode {
29381 match self {
29382 AlterMaterializedViewAction::DependsOnExtension(it) => &it.syntax,
29383 AlterMaterializedViewAction::NoDependsOnExtension(it) => &it.syntax,
29384 AlterMaterializedViewAction::RenameColumn(it) => &it.syntax,
29385 AlterMaterializedViewAction::RenameTo(it) => &it.syntax,
29386 AlterMaterializedViewAction::SetSchema(it) => &it.syntax,
29387 AlterMaterializedViewAction::AlterTableAction(it) => it.syntax(),
29388 }
29389 }
29390}
29391impl From<DependsOnExtension> for AlterMaterializedViewAction {
29392 #[inline]
29393 fn from(node: DependsOnExtension) -> AlterMaterializedViewAction {
29394 AlterMaterializedViewAction::DependsOnExtension(node)
29395 }
29396}
29397impl From<NoDependsOnExtension> for AlterMaterializedViewAction {
29398 #[inline]
29399 fn from(node: NoDependsOnExtension) -> AlterMaterializedViewAction {
29400 AlterMaterializedViewAction::NoDependsOnExtension(node)
29401 }
29402}
29403impl From<RenameColumn> for AlterMaterializedViewAction {
29404 #[inline]
29405 fn from(node: RenameColumn) -> AlterMaterializedViewAction {
29406 AlterMaterializedViewAction::RenameColumn(node)
29407 }
29408}
29409impl From<RenameTo> for AlterMaterializedViewAction {
29410 #[inline]
29411 fn from(node: RenameTo) -> AlterMaterializedViewAction {
29412 AlterMaterializedViewAction::RenameTo(node)
29413 }
29414}
29415impl From<SetSchema> for AlterMaterializedViewAction {
29416 #[inline]
29417 fn from(node: SetSchema) -> AlterMaterializedViewAction {
29418 AlterMaterializedViewAction::SetSchema(node)
29419 }
29420}
29421impl AstNode for AlterTableAction {
29422 #[inline]
29423 fn can_cast(kind: SyntaxKind) -> bool {
29424 matches!(
29425 kind,
29426 SyntaxKind::ADD_COLUMN
29427 | SyntaxKind::ADD_CONSTRAINT
29428 | SyntaxKind::ALTER_COLUMN
29429 | SyntaxKind::ALTER_CONSTRAINT
29430 | SyntaxKind::ATTACH_PARTITION
29431 | SyntaxKind::CLUSTER_ON
29432 | SyntaxKind::DETACH_PARTITION
29433 | SyntaxKind::DISABLE_RLS
29434 | SyntaxKind::DISABLE_RULE
29435 | SyntaxKind::DISABLE_TRIGGER
29436 | SyntaxKind::DROP_COLUMN
29437 | SyntaxKind::DROP_CONSTRAINT
29438 | SyntaxKind::ENABLE_ALWAYS_RULE
29439 | SyntaxKind::ENABLE_ALWAYS_TRIGGER
29440 | SyntaxKind::ENABLE_REPLICA_RULE
29441 | SyntaxKind::ENABLE_REPLICA_TRIGGER
29442 | SyntaxKind::ENABLE_RLS
29443 | SyntaxKind::ENABLE_RULE
29444 | SyntaxKind::ENABLE_TRIGGER
29445 | SyntaxKind::FORCE_RLS
29446 | SyntaxKind::INHERIT_TABLE
29447 | SyntaxKind::MERGE_PARTITIONS
29448 | SyntaxKind::NO_FORCE_RLS
29449 | SyntaxKind::NO_INHERIT_TABLE
29450 | SyntaxKind::NOT_OF
29451 | SyntaxKind::OF_TYPE
29452 | SyntaxKind::OPTION_ITEM_LIST
29453 | SyntaxKind::OWNER_TO
29454 | SyntaxKind::RENAME_COLUMN
29455 | SyntaxKind::RENAME_CONSTRAINT
29456 | SyntaxKind::RENAME_TO
29457 | SyntaxKind::REPLICA_IDENTITY
29458 | SyntaxKind::RESET_OPTIONS
29459 | SyntaxKind::SET_ACCESS_METHOD
29460 | SyntaxKind::SET_LOGGED
29461 | SyntaxKind::SET_OPTIONS
29462 | SyntaxKind::SET_SCHEMA
29463 | SyntaxKind::SET_TABLESPACE
29464 | SyntaxKind::SET_UNLOGGED
29465 | SyntaxKind::SET_WITHOUT_CLUSTER
29466 | SyntaxKind::SET_WITHOUT_OIDS
29467 | SyntaxKind::SPLIT_PARTITION
29468 | SyntaxKind::VALIDATE_CONSTRAINT
29469 )
29470 }
29471 #[inline]
29472 fn cast(syntax: SyntaxNode) -> Option<Self> {
29473 let res = match syntax.kind() {
29474 SyntaxKind::ADD_COLUMN => AlterTableAction::AddColumn(AddColumn { syntax }),
29475 SyntaxKind::ADD_CONSTRAINT => AlterTableAction::AddConstraint(AddConstraint { syntax }),
29476 SyntaxKind::ALTER_COLUMN => AlterTableAction::AlterColumn(AlterColumn { syntax }),
29477 SyntaxKind::ALTER_CONSTRAINT => {
29478 AlterTableAction::AlterConstraint(AlterConstraint { syntax })
29479 }
29480 SyntaxKind::ATTACH_PARTITION => {
29481 AlterTableAction::AttachPartition(AttachPartition { syntax })
29482 }
29483 SyntaxKind::CLUSTER_ON => AlterTableAction::ClusterOn(ClusterOn { syntax }),
29484 SyntaxKind::DETACH_PARTITION => {
29485 AlterTableAction::DetachPartition(DetachPartition { syntax })
29486 }
29487 SyntaxKind::DISABLE_RLS => AlterTableAction::DisableRls(DisableRls { syntax }),
29488 SyntaxKind::DISABLE_RULE => AlterTableAction::DisableRule(DisableRule { syntax }),
29489 SyntaxKind::DISABLE_TRIGGER => {
29490 AlterTableAction::DisableTrigger(DisableTrigger { syntax })
29491 }
29492 SyntaxKind::DROP_COLUMN => AlterTableAction::DropColumn(DropColumn { syntax }),
29493 SyntaxKind::DROP_CONSTRAINT => {
29494 AlterTableAction::DropConstraint(DropConstraint { syntax })
29495 }
29496 SyntaxKind::ENABLE_ALWAYS_RULE => {
29497 AlterTableAction::EnableAlwaysRule(EnableAlwaysRule { syntax })
29498 }
29499 SyntaxKind::ENABLE_ALWAYS_TRIGGER => {
29500 AlterTableAction::EnableAlwaysTrigger(EnableAlwaysTrigger { syntax })
29501 }
29502 SyntaxKind::ENABLE_REPLICA_RULE => {
29503 AlterTableAction::EnableReplicaRule(EnableReplicaRule { syntax })
29504 }
29505 SyntaxKind::ENABLE_REPLICA_TRIGGER => {
29506 AlterTableAction::EnableReplicaTrigger(EnableReplicaTrigger { syntax })
29507 }
29508 SyntaxKind::ENABLE_RLS => AlterTableAction::EnableRls(EnableRls { syntax }),
29509 SyntaxKind::ENABLE_RULE => AlterTableAction::EnableRule(EnableRule { syntax }),
29510 SyntaxKind::ENABLE_TRIGGER => AlterTableAction::EnableTrigger(EnableTrigger { syntax }),
29511 SyntaxKind::FORCE_RLS => AlterTableAction::ForceRls(ForceRls { syntax }),
29512 SyntaxKind::INHERIT_TABLE => AlterTableAction::InheritTable(InheritTable { syntax }),
29513 SyntaxKind::MERGE_PARTITIONS => {
29514 AlterTableAction::MergePartitions(MergePartitions { syntax })
29515 }
29516 SyntaxKind::NO_FORCE_RLS => AlterTableAction::NoForceRls(NoForceRls { syntax }),
29517 SyntaxKind::NO_INHERIT_TABLE => {
29518 AlterTableAction::NoInheritTable(NoInheritTable { syntax })
29519 }
29520 SyntaxKind::NOT_OF => AlterTableAction::NotOf(NotOf { syntax }),
29521 SyntaxKind::OF_TYPE => AlterTableAction::OfType(OfType { syntax }),
29522 SyntaxKind::OPTION_ITEM_LIST => {
29523 AlterTableAction::OptionItemList(OptionItemList { syntax })
29524 }
29525 SyntaxKind::OWNER_TO => AlterTableAction::OwnerTo(OwnerTo { syntax }),
29526 SyntaxKind::RENAME_COLUMN => AlterTableAction::RenameColumn(RenameColumn { syntax }),
29527 SyntaxKind::RENAME_CONSTRAINT => {
29528 AlterTableAction::RenameConstraint(RenameConstraint { syntax })
29529 }
29530 SyntaxKind::RENAME_TO => AlterTableAction::RenameTo(RenameTo { syntax }),
29531 SyntaxKind::REPLICA_IDENTITY => {
29532 AlterTableAction::ReplicaIdentity(ReplicaIdentity { syntax })
29533 }
29534 SyntaxKind::RESET_OPTIONS => AlterTableAction::ResetOptions(ResetOptions { syntax }),
29535 SyntaxKind::SET_ACCESS_METHOD => {
29536 AlterTableAction::SetAccessMethod(SetAccessMethod { syntax })
29537 }
29538 SyntaxKind::SET_LOGGED => AlterTableAction::SetLogged(SetLogged { syntax }),
29539 SyntaxKind::SET_OPTIONS => AlterTableAction::SetOptions(SetOptions { syntax }),
29540 SyntaxKind::SET_SCHEMA => AlterTableAction::SetSchema(SetSchema { syntax }),
29541 SyntaxKind::SET_TABLESPACE => AlterTableAction::SetTablespace(SetTablespace { syntax }),
29542 SyntaxKind::SET_UNLOGGED => AlterTableAction::SetUnlogged(SetUnlogged { syntax }),
29543 SyntaxKind::SET_WITHOUT_CLUSTER => {
29544 AlterTableAction::SetWithoutCluster(SetWithoutCluster { syntax })
29545 }
29546 SyntaxKind::SET_WITHOUT_OIDS => {
29547 AlterTableAction::SetWithoutOids(SetWithoutOids { syntax })
29548 }
29549 SyntaxKind::SPLIT_PARTITION => {
29550 AlterTableAction::SplitPartition(SplitPartition { syntax })
29551 }
29552 SyntaxKind::VALIDATE_CONSTRAINT => {
29553 AlterTableAction::ValidateConstraint(ValidateConstraint { syntax })
29554 }
29555 _ => {
29556 return None;
29557 }
29558 };
29559 Some(res)
29560 }
29561 #[inline]
29562 fn syntax(&self) -> &SyntaxNode {
29563 match self {
29564 AlterTableAction::AddColumn(it) => &it.syntax,
29565 AlterTableAction::AddConstraint(it) => &it.syntax,
29566 AlterTableAction::AlterColumn(it) => &it.syntax,
29567 AlterTableAction::AlterConstraint(it) => &it.syntax,
29568 AlterTableAction::AttachPartition(it) => &it.syntax,
29569 AlterTableAction::ClusterOn(it) => &it.syntax,
29570 AlterTableAction::DetachPartition(it) => &it.syntax,
29571 AlterTableAction::DisableRls(it) => &it.syntax,
29572 AlterTableAction::DisableRule(it) => &it.syntax,
29573 AlterTableAction::DisableTrigger(it) => &it.syntax,
29574 AlterTableAction::DropColumn(it) => &it.syntax,
29575 AlterTableAction::DropConstraint(it) => &it.syntax,
29576 AlterTableAction::EnableAlwaysRule(it) => &it.syntax,
29577 AlterTableAction::EnableAlwaysTrigger(it) => &it.syntax,
29578 AlterTableAction::EnableReplicaRule(it) => &it.syntax,
29579 AlterTableAction::EnableReplicaTrigger(it) => &it.syntax,
29580 AlterTableAction::EnableRls(it) => &it.syntax,
29581 AlterTableAction::EnableRule(it) => &it.syntax,
29582 AlterTableAction::EnableTrigger(it) => &it.syntax,
29583 AlterTableAction::ForceRls(it) => &it.syntax,
29584 AlterTableAction::InheritTable(it) => &it.syntax,
29585 AlterTableAction::MergePartitions(it) => &it.syntax,
29586 AlterTableAction::NoForceRls(it) => &it.syntax,
29587 AlterTableAction::NoInheritTable(it) => &it.syntax,
29588 AlterTableAction::NotOf(it) => &it.syntax,
29589 AlterTableAction::OfType(it) => &it.syntax,
29590 AlterTableAction::OptionItemList(it) => &it.syntax,
29591 AlterTableAction::OwnerTo(it) => &it.syntax,
29592 AlterTableAction::RenameColumn(it) => &it.syntax,
29593 AlterTableAction::RenameConstraint(it) => &it.syntax,
29594 AlterTableAction::RenameTo(it) => &it.syntax,
29595 AlterTableAction::ReplicaIdentity(it) => &it.syntax,
29596 AlterTableAction::ResetOptions(it) => &it.syntax,
29597 AlterTableAction::SetAccessMethod(it) => &it.syntax,
29598 AlterTableAction::SetLogged(it) => &it.syntax,
29599 AlterTableAction::SetOptions(it) => &it.syntax,
29600 AlterTableAction::SetSchema(it) => &it.syntax,
29601 AlterTableAction::SetTablespace(it) => &it.syntax,
29602 AlterTableAction::SetUnlogged(it) => &it.syntax,
29603 AlterTableAction::SetWithoutCluster(it) => &it.syntax,
29604 AlterTableAction::SetWithoutOids(it) => &it.syntax,
29605 AlterTableAction::SplitPartition(it) => &it.syntax,
29606 AlterTableAction::ValidateConstraint(it) => &it.syntax,
29607 }
29608 }
29609}
29610impl From<AddColumn> for AlterTableAction {
29611 #[inline]
29612 fn from(node: AddColumn) -> AlterTableAction {
29613 AlterTableAction::AddColumn(node)
29614 }
29615}
29616impl From<AddConstraint> for AlterTableAction {
29617 #[inline]
29618 fn from(node: AddConstraint) -> AlterTableAction {
29619 AlterTableAction::AddConstraint(node)
29620 }
29621}
29622impl From<AlterColumn> for AlterTableAction {
29623 #[inline]
29624 fn from(node: AlterColumn) -> AlterTableAction {
29625 AlterTableAction::AlterColumn(node)
29626 }
29627}
29628impl From<AlterConstraint> for AlterTableAction {
29629 #[inline]
29630 fn from(node: AlterConstraint) -> AlterTableAction {
29631 AlterTableAction::AlterConstraint(node)
29632 }
29633}
29634impl From<AttachPartition> for AlterTableAction {
29635 #[inline]
29636 fn from(node: AttachPartition) -> AlterTableAction {
29637 AlterTableAction::AttachPartition(node)
29638 }
29639}
29640impl From<ClusterOn> for AlterTableAction {
29641 #[inline]
29642 fn from(node: ClusterOn) -> AlterTableAction {
29643 AlterTableAction::ClusterOn(node)
29644 }
29645}
29646impl From<DetachPartition> for AlterTableAction {
29647 #[inline]
29648 fn from(node: DetachPartition) -> AlterTableAction {
29649 AlterTableAction::DetachPartition(node)
29650 }
29651}
29652impl From<DisableRls> for AlterTableAction {
29653 #[inline]
29654 fn from(node: DisableRls) -> AlterTableAction {
29655 AlterTableAction::DisableRls(node)
29656 }
29657}
29658impl From<DisableRule> for AlterTableAction {
29659 #[inline]
29660 fn from(node: DisableRule) -> AlterTableAction {
29661 AlterTableAction::DisableRule(node)
29662 }
29663}
29664impl From<DisableTrigger> for AlterTableAction {
29665 #[inline]
29666 fn from(node: DisableTrigger) -> AlterTableAction {
29667 AlterTableAction::DisableTrigger(node)
29668 }
29669}
29670impl From<DropColumn> for AlterTableAction {
29671 #[inline]
29672 fn from(node: DropColumn) -> AlterTableAction {
29673 AlterTableAction::DropColumn(node)
29674 }
29675}
29676impl From<DropConstraint> for AlterTableAction {
29677 #[inline]
29678 fn from(node: DropConstraint) -> AlterTableAction {
29679 AlterTableAction::DropConstraint(node)
29680 }
29681}
29682impl From<EnableAlwaysRule> for AlterTableAction {
29683 #[inline]
29684 fn from(node: EnableAlwaysRule) -> AlterTableAction {
29685 AlterTableAction::EnableAlwaysRule(node)
29686 }
29687}
29688impl From<EnableAlwaysTrigger> for AlterTableAction {
29689 #[inline]
29690 fn from(node: EnableAlwaysTrigger) -> AlterTableAction {
29691 AlterTableAction::EnableAlwaysTrigger(node)
29692 }
29693}
29694impl From<EnableReplicaRule> for AlterTableAction {
29695 #[inline]
29696 fn from(node: EnableReplicaRule) -> AlterTableAction {
29697 AlterTableAction::EnableReplicaRule(node)
29698 }
29699}
29700impl From<EnableReplicaTrigger> for AlterTableAction {
29701 #[inline]
29702 fn from(node: EnableReplicaTrigger) -> AlterTableAction {
29703 AlterTableAction::EnableReplicaTrigger(node)
29704 }
29705}
29706impl From<EnableRls> for AlterTableAction {
29707 #[inline]
29708 fn from(node: EnableRls) -> AlterTableAction {
29709 AlterTableAction::EnableRls(node)
29710 }
29711}
29712impl From<EnableRule> for AlterTableAction {
29713 #[inline]
29714 fn from(node: EnableRule) -> AlterTableAction {
29715 AlterTableAction::EnableRule(node)
29716 }
29717}
29718impl From<EnableTrigger> for AlterTableAction {
29719 #[inline]
29720 fn from(node: EnableTrigger) -> AlterTableAction {
29721 AlterTableAction::EnableTrigger(node)
29722 }
29723}
29724impl From<ForceRls> for AlterTableAction {
29725 #[inline]
29726 fn from(node: ForceRls) -> AlterTableAction {
29727 AlterTableAction::ForceRls(node)
29728 }
29729}
29730impl From<InheritTable> for AlterTableAction {
29731 #[inline]
29732 fn from(node: InheritTable) -> AlterTableAction {
29733 AlterTableAction::InheritTable(node)
29734 }
29735}
29736impl From<MergePartitions> for AlterTableAction {
29737 #[inline]
29738 fn from(node: MergePartitions) -> AlterTableAction {
29739 AlterTableAction::MergePartitions(node)
29740 }
29741}
29742impl From<NoForceRls> for AlterTableAction {
29743 #[inline]
29744 fn from(node: NoForceRls) -> AlterTableAction {
29745 AlterTableAction::NoForceRls(node)
29746 }
29747}
29748impl From<NoInheritTable> for AlterTableAction {
29749 #[inline]
29750 fn from(node: NoInheritTable) -> AlterTableAction {
29751 AlterTableAction::NoInheritTable(node)
29752 }
29753}
29754impl From<NotOf> for AlterTableAction {
29755 #[inline]
29756 fn from(node: NotOf) -> AlterTableAction {
29757 AlterTableAction::NotOf(node)
29758 }
29759}
29760impl From<OfType> for AlterTableAction {
29761 #[inline]
29762 fn from(node: OfType) -> AlterTableAction {
29763 AlterTableAction::OfType(node)
29764 }
29765}
29766impl From<OptionItemList> for AlterTableAction {
29767 #[inline]
29768 fn from(node: OptionItemList) -> AlterTableAction {
29769 AlterTableAction::OptionItemList(node)
29770 }
29771}
29772impl From<OwnerTo> for AlterTableAction {
29773 #[inline]
29774 fn from(node: OwnerTo) -> AlterTableAction {
29775 AlterTableAction::OwnerTo(node)
29776 }
29777}
29778impl From<RenameColumn> for AlterTableAction {
29779 #[inline]
29780 fn from(node: RenameColumn) -> AlterTableAction {
29781 AlterTableAction::RenameColumn(node)
29782 }
29783}
29784impl From<RenameConstraint> for AlterTableAction {
29785 #[inline]
29786 fn from(node: RenameConstraint) -> AlterTableAction {
29787 AlterTableAction::RenameConstraint(node)
29788 }
29789}
29790impl From<RenameTo> for AlterTableAction {
29791 #[inline]
29792 fn from(node: RenameTo) -> AlterTableAction {
29793 AlterTableAction::RenameTo(node)
29794 }
29795}
29796impl From<ReplicaIdentity> for AlterTableAction {
29797 #[inline]
29798 fn from(node: ReplicaIdentity) -> AlterTableAction {
29799 AlterTableAction::ReplicaIdentity(node)
29800 }
29801}
29802impl From<ResetOptions> for AlterTableAction {
29803 #[inline]
29804 fn from(node: ResetOptions) -> AlterTableAction {
29805 AlterTableAction::ResetOptions(node)
29806 }
29807}
29808impl From<SetAccessMethod> for AlterTableAction {
29809 #[inline]
29810 fn from(node: SetAccessMethod) -> AlterTableAction {
29811 AlterTableAction::SetAccessMethod(node)
29812 }
29813}
29814impl From<SetLogged> for AlterTableAction {
29815 #[inline]
29816 fn from(node: SetLogged) -> AlterTableAction {
29817 AlterTableAction::SetLogged(node)
29818 }
29819}
29820impl From<SetOptions> for AlterTableAction {
29821 #[inline]
29822 fn from(node: SetOptions) -> AlterTableAction {
29823 AlterTableAction::SetOptions(node)
29824 }
29825}
29826impl From<SetSchema> for AlterTableAction {
29827 #[inline]
29828 fn from(node: SetSchema) -> AlterTableAction {
29829 AlterTableAction::SetSchema(node)
29830 }
29831}
29832impl From<SetTablespace> for AlterTableAction {
29833 #[inline]
29834 fn from(node: SetTablespace) -> AlterTableAction {
29835 AlterTableAction::SetTablespace(node)
29836 }
29837}
29838impl From<SetUnlogged> for AlterTableAction {
29839 #[inline]
29840 fn from(node: SetUnlogged) -> AlterTableAction {
29841 AlterTableAction::SetUnlogged(node)
29842 }
29843}
29844impl From<SetWithoutCluster> for AlterTableAction {
29845 #[inline]
29846 fn from(node: SetWithoutCluster) -> AlterTableAction {
29847 AlterTableAction::SetWithoutCluster(node)
29848 }
29849}
29850impl From<SetWithoutOids> for AlterTableAction {
29851 #[inline]
29852 fn from(node: SetWithoutOids) -> AlterTableAction {
29853 AlterTableAction::SetWithoutOids(node)
29854 }
29855}
29856impl From<SplitPartition> for AlterTableAction {
29857 #[inline]
29858 fn from(node: SplitPartition) -> AlterTableAction {
29859 AlterTableAction::SplitPartition(node)
29860 }
29861}
29862impl From<ValidateConstraint> for AlterTableAction {
29863 #[inline]
29864 fn from(node: ValidateConstraint) -> AlterTableAction {
29865 AlterTableAction::ValidateConstraint(node)
29866 }
29867}
29868impl AstNode for ColumnConstraint {
29869 #[inline]
29870 fn can_cast(kind: SyntaxKind) -> bool {
29871 matches!(
29872 kind,
29873 SyntaxKind::CHECK_CONSTRAINT
29874 | SyntaxKind::DEFAULT_CONSTRAINT
29875 | SyntaxKind::EXCLUDE_CONSTRAINT
29876 | SyntaxKind::NOT_NULL_CONSTRAINT
29877 | SyntaxKind::PRIMARY_KEY_CONSTRAINT
29878 | SyntaxKind::REFERENCES_CONSTRAINT
29879 | SyntaxKind::UNIQUE_CONSTRAINT
29880 )
29881 }
29882 #[inline]
29883 fn cast(syntax: SyntaxNode) -> Option<Self> {
29884 let res = match syntax.kind() {
29885 SyntaxKind::CHECK_CONSTRAINT => {
29886 ColumnConstraint::CheckConstraint(CheckConstraint { syntax })
29887 }
29888 SyntaxKind::DEFAULT_CONSTRAINT => {
29889 ColumnConstraint::DefaultConstraint(DefaultConstraint { syntax })
29890 }
29891 SyntaxKind::EXCLUDE_CONSTRAINT => {
29892 ColumnConstraint::ExcludeConstraint(ExcludeConstraint { syntax })
29893 }
29894 SyntaxKind::NOT_NULL_CONSTRAINT => {
29895 ColumnConstraint::NotNullConstraint(NotNullConstraint { syntax })
29896 }
29897 SyntaxKind::PRIMARY_KEY_CONSTRAINT => {
29898 ColumnConstraint::PrimaryKeyConstraint(PrimaryKeyConstraint { syntax })
29899 }
29900 SyntaxKind::REFERENCES_CONSTRAINT => {
29901 ColumnConstraint::ReferencesConstraint(ReferencesConstraint { syntax })
29902 }
29903 SyntaxKind::UNIQUE_CONSTRAINT => {
29904 ColumnConstraint::UniqueConstraint(UniqueConstraint { syntax })
29905 }
29906 _ => {
29907 return None;
29908 }
29909 };
29910 Some(res)
29911 }
29912 #[inline]
29913 fn syntax(&self) -> &SyntaxNode {
29914 match self {
29915 ColumnConstraint::CheckConstraint(it) => &it.syntax,
29916 ColumnConstraint::DefaultConstraint(it) => &it.syntax,
29917 ColumnConstraint::ExcludeConstraint(it) => &it.syntax,
29918 ColumnConstraint::NotNullConstraint(it) => &it.syntax,
29919 ColumnConstraint::PrimaryKeyConstraint(it) => &it.syntax,
29920 ColumnConstraint::ReferencesConstraint(it) => &it.syntax,
29921 ColumnConstraint::UniqueConstraint(it) => &it.syntax,
29922 }
29923 }
29924}
29925impl From<CheckConstraint> for ColumnConstraint {
29926 #[inline]
29927 fn from(node: CheckConstraint) -> ColumnConstraint {
29928 ColumnConstraint::CheckConstraint(node)
29929 }
29930}
29931impl From<DefaultConstraint> for ColumnConstraint {
29932 #[inline]
29933 fn from(node: DefaultConstraint) -> ColumnConstraint {
29934 ColumnConstraint::DefaultConstraint(node)
29935 }
29936}
29937impl From<ExcludeConstraint> for ColumnConstraint {
29938 #[inline]
29939 fn from(node: ExcludeConstraint) -> ColumnConstraint {
29940 ColumnConstraint::ExcludeConstraint(node)
29941 }
29942}
29943impl From<NotNullConstraint> for ColumnConstraint {
29944 #[inline]
29945 fn from(node: NotNullConstraint) -> ColumnConstraint {
29946 ColumnConstraint::NotNullConstraint(node)
29947 }
29948}
29949impl From<PrimaryKeyConstraint> for ColumnConstraint {
29950 #[inline]
29951 fn from(node: PrimaryKeyConstraint) -> ColumnConstraint {
29952 ColumnConstraint::PrimaryKeyConstraint(node)
29953 }
29954}
29955impl From<ReferencesConstraint> for ColumnConstraint {
29956 #[inline]
29957 fn from(node: ReferencesConstraint) -> ColumnConstraint {
29958 ColumnConstraint::ReferencesConstraint(node)
29959 }
29960}
29961impl From<UniqueConstraint> for ColumnConstraint {
29962 #[inline]
29963 fn from(node: UniqueConstraint) -> ColumnConstraint {
29964 ColumnConstraint::UniqueConstraint(node)
29965 }
29966}
29967impl AstNode for ConfigValue {
29968 #[inline]
29969 fn can_cast(kind: SyntaxKind) -> bool {
29970 matches!(kind, SyntaxKind::LITERAL | SyntaxKind::NAME_REF)
29971 }
29972 #[inline]
29973 fn cast(syntax: SyntaxNode) -> Option<Self> {
29974 let res = match syntax.kind() {
29975 SyntaxKind::LITERAL => ConfigValue::Literal(Literal { syntax }),
29976 SyntaxKind::NAME_REF => ConfigValue::NameRef(NameRef { syntax }),
29977 _ => {
29978 return None;
29979 }
29980 };
29981 Some(res)
29982 }
29983 #[inline]
29984 fn syntax(&self) -> &SyntaxNode {
29985 match self {
29986 ConfigValue::Literal(it) => &it.syntax,
29987 ConfigValue::NameRef(it) => &it.syntax,
29988 }
29989 }
29990}
29991impl From<Literal> for ConfigValue {
29992 #[inline]
29993 fn from(node: Literal) -> ConfigValue {
29994 ConfigValue::Literal(node)
29995 }
29996}
29997impl From<NameRef> for ConfigValue {
29998 #[inline]
29999 fn from(node: NameRef) -> ConfigValue {
30000 ConfigValue::NameRef(node)
30001 }
30002}
30003impl AstNode for ConflictAction {
30004 #[inline]
30005 fn can_cast(kind: SyntaxKind) -> bool {
30006 matches!(
30007 kind,
30008 SyntaxKind::CONFLICT_DO_NOTHING | SyntaxKind::CONFLICT_DO_UPDATE_SET
30009 )
30010 }
30011 #[inline]
30012 fn cast(syntax: SyntaxNode) -> Option<Self> {
30013 let res = match syntax.kind() {
30014 SyntaxKind::CONFLICT_DO_NOTHING => {
30015 ConflictAction::ConflictDoNothing(ConflictDoNothing { syntax })
30016 }
30017 SyntaxKind::CONFLICT_DO_UPDATE_SET => {
30018 ConflictAction::ConflictDoUpdateSet(ConflictDoUpdateSet { syntax })
30019 }
30020 _ => {
30021 return None;
30022 }
30023 };
30024 Some(res)
30025 }
30026 #[inline]
30027 fn syntax(&self) -> &SyntaxNode {
30028 match self {
30029 ConflictAction::ConflictDoNothing(it) => &it.syntax,
30030 ConflictAction::ConflictDoUpdateSet(it) => &it.syntax,
30031 }
30032 }
30033}
30034impl From<ConflictDoNothing> for ConflictAction {
30035 #[inline]
30036 fn from(node: ConflictDoNothing) -> ConflictAction {
30037 ConflictAction::ConflictDoNothing(node)
30038 }
30039}
30040impl From<ConflictDoUpdateSet> for ConflictAction {
30041 #[inline]
30042 fn from(node: ConflictDoUpdateSet) -> ConflictAction {
30043 ConflictAction::ConflictDoUpdateSet(node)
30044 }
30045}
30046impl AstNode for ConflictTarget {
30047 #[inline]
30048 fn can_cast(kind: SyntaxKind) -> bool {
30049 matches!(
30050 kind,
30051 SyntaxKind::CONFLICT_ON_CONSTRAINT | SyntaxKind::CONFLICT_ON_INDEX
30052 )
30053 }
30054 #[inline]
30055 fn cast(syntax: SyntaxNode) -> Option<Self> {
30056 let res = match syntax.kind() {
30057 SyntaxKind::CONFLICT_ON_CONSTRAINT => {
30058 ConflictTarget::ConflictOnConstraint(ConflictOnConstraint { syntax })
30059 }
30060 SyntaxKind::CONFLICT_ON_INDEX => {
30061 ConflictTarget::ConflictOnIndex(ConflictOnIndex { syntax })
30062 }
30063 _ => {
30064 return None;
30065 }
30066 };
30067 Some(res)
30068 }
30069 #[inline]
30070 fn syntax(&self) -> &SyntaxNode {
30071 match self {
30072 ConflictTarget::ConflictOnConstraint(it) => &it.syntax,
30073 ConflictTarget::ConflictOnIndex(it) => &it.syntax,
30074 }
30075 }
30076}
30077impl From<ConflictOnConstraint> for ConflictTarget {
30078 #[inline]
30079 fn from(node: ConflictOnConstraint) -> ConflictTarget {
30080 ConflictTarget::ConflictOnConstraint(node)
30081 }
30082}
30083impl From<ConflictOnIndex> for ConflictTarget {
30084 #[inline]
30085 fn from(node: ConflictOnIndex) -> ConflictTarget {
30086 ConflictTarget::ConflictOnIndex(node)
30087 }
30088}
30089impl AstNode for Constraint {
30090 #[inline]
30091 fn can_cast(kind: SyntaxKind) -> bool {
30092 matches!(
30093 kind,
30094 SyntaxKind::CHECK_CONSTRAINT
30095 | SyntaxKind::DEFAULT_CONSTRAINT
30096 | SyntaxKind::FOREIGN_KEY_CONSTRAINT
30097 | SyntaxKind::GENERATED_CONSTRAINT
30098 | SyntaxKind::NOT_NULL_CONSTRAINT
30099 | SyntaxKind::NULL_CONSTRAINT
30100 | SyntaxKind::PRIMARY_KEY_CONSTRAINT
30101 | SyntaxKind::REFERENCES_CONSTRAINT
30102 | SyntaxKind::UNIQUE_CONSTRAINT
30103 )
30104 }
30105 #[inline]
30106 fn cast(syntax: SyntaxNode) -> Option<Self> {
30107 let res = match syntax.kind() {
30108 SyntaxKind::CHECK_CONSTRAINT => Constraint::CheckConstraint(CheckConstraint { syntax }),
30109 SyntaxKind::DEFAULT_CONSTRAINT => {
30110 Constraint::DefaultConstraint(DefaultConstraint { syntax })
30111 }
30112 SyntaxKind::FOREIGN_KEY_CONSTRAINT => {
30113 Constraint::ForeignKeyConstraint(ForeignKeyConstraint { syntax })
30114 }
30115 SyntaxKind::GENERATED_CONSTRAINT => {
30116 Constraint::GeneratedConstraint(GeneratedConstraint { syntax })
30117 }
30118 SyntaxKind::NOT_NULL_CONSTRAINT => {
30119 Constraint::NotNullConstraint(NotNullConstraint { syntax })
30120 }
30121 SyntaxKind::NULL_CONSTRAINT => Constraint::NullConstraint(NullConstraint { syntax }),
30122 SyntaxKind::PRIMARY_KEY_CONSTRAINT => {
30123 Constraint::PrimaryKeyConstraint(PrimaryKeyConstraint { syntax })
30124 }
30125 SyntaxKind::REFERENCES_CONSTRAINT => {
30126 Constraint::ReferencesConstraint(ReferencesConstraint { syntax })
30127 }
30128 SyntaxKind::UNIQUE_CONSTRAINT => {
30129 Constraint::UniqueConstraint(UniqueConstraint { syntax })
30130 }
30131 _ => {
30132 return None;
30133 }
30134 };
30135 Some(res)
30136 }
30137 #[inline]
30138 fn syntax(&self) -> &SyntaxNode {
30139 match self {
30140 Constraint::CheckConstraint(it) => &it.syntax,
30141 Constraint::DefaultConstraint(it) => &it.syntax,
30142 Constraint::ForeignKeyConstraint(it) => &it.syntax,
30143 Constraint::GeneratedConstraint(it) => &it.syntax,
30144 Constraint::NotNullConstraint(it) => &it.syntax,
30145 Constraint::NullConstraint(it) => &it.syntax,
30146 Constraint::PrimaryKeyConstraint(it) => &it.syntax,
30147 Constraint::ReferencesConstraint(it) => &it.syntax,
30148 Constraint::UniqueConstraint(it) => &it.syntax,
30149 }
30150 }
30151}
30152impl From<CheckConstraint> for Constraint {
30153 #[inline]
30154 fn from(node: CheckConstraint) -> Constraint {
30155 Constraint::CheckConstraint(node)
30156 }
30157}
30158impl From<DefaultConstraint> for Constraint {
30159 #[inline]
30160 fn from(node: DefaultConstraint) -> Constraint {
30161 Constraint::DefaultConstraint(node)
30162 }
30163}
30164impl From<ForeignKeyConstraint> for Constraint {
30165 #[inline]
30166 fn from(node: ForeignKeyConstraint) -> Constraint {
30167 Constraint::ForeignKeyConstraint(node)
30168 }
30169}
30170impl From<GeneratedConstraint> for Constraint {
30171 #[inline]
30172 fn from(node: GeneratedConstraint) -> Constraint {
30173 Constraint::GeneratedConstraint(node)
30174 }
30175}
30176impl From<NotNullConstraint> for Constraint {
30177 #[inline]
30178 fn from(node: NotNullConstraint) -> Constraint {
30179 Constraint::NotNullConstraint(node)
30180 }
30181}
30182impl From<NullConstraint> for Constraint {
30183 #[inline]
30184 fn from(node: NullConstraint) -> Constraint {
30185 Constraint::NullConstraint(node)
30186 }
30187}
30188impl From<PrimaryKeyConstraint> for Constraint {
30189 #[inline]
30190 fn from(node: PrimaryKeyConstraint) -> Constraint {
30191 Constraint::PrimaryKeyConstraint(node)
30192 }
30193}
30194impl From<ReferencesConstraint> for Constraint {
30195 #[inline]
30196 fn from(node: ReferencesConstraint) -> Constraint {
30197 Constraint::ReferencesConstraint(node)
30198 }
30199}
30200impl From<UniqueConstraint> for Constraint {
30201 #[inline]
30202 fn from(node: UniqueConstraint) -> Constraint {
30203 Constraint::UniqueConstraint(node)
30204 }
30205}
30206impl AstNode for ExplainStmt {
30207 #[inline]
30208 fn can_cast(kind: SyntaxKind) -> bool {
30209 matches!(
30210 kind,
30211 SyntaxKind::COMPOUND_SELECT
30212 | SyntaxKind::CREATE_MATERIALIZED_VIEW
30213 | SyntaxKind::CREATE_TABLE_AS
30214 | SyntaxKind::DECLARE
30215 | SyntaxKind::DELETE
30216 | SyntaxKind::EXECUTE
30217 | SyntaxKind::INSERT
30218 | SyntaxKind::MERGE
30219 | SyntaxKind::PAREN_SELECT
30220 | SyntaxKind::SELECT
30221 | SyntaxKind::SELECT_INTO
30222 | SyntaxKind::TABLE
30223 | SyntaxKind::UPDATE
30224 | SyntaxKind::VALUES
30225 )
30226 }
30227 #[inline]
30228 fn cast(syntax: SyntaxNode) -> Option<Self> {
30229 let res = match syntax.kind() {
30230 SyntaxKind::COMPOUND_SELECT => ExplainStmt::CompoundSelect(CompoundSelect { syntax }),
30231 SyntaxKind::CREATE_MATERIALIZED_VIEW => {
30232 ExplainStmt::CreateMaterializedView(CreateMaterializedView { syntax })
30233 }
30234 SyntaxKind::CREATE_TABLE_AS => ExplainStmt::CreateTableAs(CreateTableAs { syntax }),
30235 SyntaxKind::DECLARE => ExplainStmt::Declare(Declare { syntax }),
30236 SyntaxKind::DELETE => ExplainStmt::Delete(Delete { syntax }),
30237 SyntaxKind::EXECUTE => ExplainStmt::Execute(Execute { syntax }),
30238 SyntaxKind::INSERT => ExplainStmt::Insert(Insert { syntax }),
30239 SyntaxKind::MERGE => ExplainStmt::Merge(Merge { syntax }),
30240 SyntaxKind::PAREN_SELECT => ExplainStmt::ParenSelect(ParenSelect { syntax }),
30241 SyntaxKind::SELECT => ExplainStmt::Select(Select { syntax }),
30242 SyntaxKind::SELECT_INTO => ExplainStmt::SelectInto(SelectInto { syntax }),
30243 SyntaxKind::TABLE => ExplainStmt::Table(Table { syntax }),
30244 SyntaxKind::UPDATE => ExplainStmt::Update(Update { syntax }),
30245 SyntaxKind::VALUES => ExplainStmt::Values(Values { syntax }),
30246 _ => {
30247 return None;
30248 }
30249 };
30250 Some(res)
30251 }
30252 #[inline]
30253 fn syntax(&self) -> &SyntaxNode {
30254 match self {
30255 ExplainStmt::CompoundSelect(it) => &it.syntax,
30256 ExplainStmt::CreateMaterializedView(it) => &it.syntax,
30257 ExplainStmt::CreateTableAs(it) => &it.syntax,
30258 ExplainStmt::Declare(it) => &it.syntax,
30259 ExplainStmt::Delete(it) => &it.syntax,
30260 ExplainStmt::Execute(it) => &it.syntax,
30261 ExplainStmt::Insert(it) => &it.syntax,
30262 ExplainStmt::Merge(it) => &it.syntax,
30263 ExplainStmt::ParenSelect(it) => &it.syntax,
30264 ExplainStmt::Select(it) => &it.syntax,
30265 ExplainStmt::SelectInto(it) => &it.syntax,
30266 ExplainStmt::Table(it) => &it.syntax,
30267 ExplainStmt::Update(it) => &it.syntax,
30268 ExplainStmt::Values(it) => &it.syntax,
30269 }
30270 }
30271}
30272impl From<CompoundSelect> for ExplainStmt {
30273 #[inline]
30274 fn from(node: CompoundSelect) -> ExplainStmt {
30275 ExplainStmt::CompoundSelect(node)
30276 }
30277}
30278impl From<CreateMaterializedView> for ExplainStmt {
30279 #[inline]
30280 fn from(node: CreateMaterializedView) -> ExplainStmt {
30281 ExplainStmt::CreateMaterializedView(node)
30282 }
30283}
30284impl From<CreateTableAs> for ExplainStmt {
30285 #[inline]
30286 fn from(node: CreateTableAs) -> ExplainStmt {
30287 ExplainStmt::CreateTableAs(node)
30288 }
30289}
30290impl From<Declare> for ExplainStmt {
30291 #[inline]
30292 fn from(node: Declare) -> ExplainStmt {
30293 ExplainStmt::Declare(node)
30294 }
30295}
30296impl From<Delete> for ExplainStmt {
30297 #[inline]
30298 fn from(node: Delete) -> ExplainStmt {
30299 ExplainStmt::Delete(node)
30300 }
30301}
30302impl From<Execute> for ExplainStmt {
30303 #[inline]
30304 fn from(node: Execute) -> ExplainStmt {
30305 ExplainStmt::Execute(node)
30306 }
30307}
30308impl From<Insert> for ExplainStmt {
30309 #[inline]
30310 fn from(node: Insert) -> ExplainStmt {
30311 ExplainStmt::Insert(node)
30312 }
30313}
30314impl From<Merge> for ExplainStmt {
30315 #[inline]
30316 fn from(node: Merge) -> ExplainStmt {
30317 ExplainStmt::Merge(node)
30318 }
30319}
30320impl From<ParenSelect> for ExplainStmt {
30321 #[inline]
30322 fn from(node: ParenSelect) -> ExplainStmt {
30323 ExplainStmt::ParenSelect(node)
30324 }
30325}
30326impl From<Select> for ExplainStmt {
30327 #[inline]
30328 fn from(node: Select) -> ExplainStmt {
30329 ExplainStmt::Select(node)
30330 }
30331}
30332impl From<SelectInto> for ExplainStmt {
30333 #[inline]
30334 fn from(node: SelectInto) -> ExplainStmt {
30335 ExplainStmt::SelectInto(node)
30336 }
30337}
30338impl From<Table> for ExplainStmt {
30339 #[inline]
30340 fn from(node: Table) -> ExplainStmt {
30341 ExplainStmt::Table(node)
30342 }
30343}
30344impl From<Update> for ExplainStmt {
30345 #[inline]
30346 fn from(node: Update) -> ExplainStmt {
30347 ExplainStmt::Update(node)
30348 }
30349}
30350impl From<Values> for ExplainStmt {
30351 #[inline]
30352 fn from(node: Values) -> ExplainStmt {
30353 ExplainStmt::Values(node)
30354 }
30355}
30356impl AstNode for Expr {
30357 #[inline]
30358 fn can_cast(kind: SyntaxKind) -> bool {
30359 matches!(
30360 kind,
30361 SyntaxKind::ARRAY_EXPR
30362 | SyntaxKind::BETWEEN_EXPR
30363 | SyntaxKind::BIN_EXPR
30364 | SyntaxKind::CALL_EXPR
30365 | SyntaxKind::CASE_EXPR
30366 | SyntaxKind::CAST_EXPR
30367 | SyntaxKind::FIELD_EXPR
30368 | SyntaxKind::INDEX_EXPR
30369 | SyntaxKind::LITERAL
30370 | SyntaxKind::NAME_REF
30371 | SyntaxKind::PAREN_EXPR
30372 | SyntaxKind::POSTFIX_EXPR
30373 | SyntaxKind::PREFIX_EXPR
30374 | SyntaxKind::SLICE_EXPR
30375 | SyntaxKind::TUPLE_EXPR
30376 )
30377 }
30378 #[inline]
30379 fn cast(syntax: SyntaxNode) -> Option<Self> {
30380 let res = match syntax.kind() {
30381 SyntaxKind::ARRAY_EXPR => Expr::ArrayExpr(ArrayExpr { syntax }),
30382 SyntaxKind::BETWEEN_EXPR => Expr::BetweenExpr(BetweenExpr { syntax }),
30383 SyntaxKind::BIN_EXPR => Expr::BinExpr(BinExpr { syntax }),
30384 SyntaxKind::CALL_EXPR => Expr::CallExpr(CallExpr { syntax }),
30385 SyntaxKind::CASE_EXPR => Expr::CaseExpr(CaseExpr { syntax }),
30386 SyntaxKind::CAST_EXPR => Expr::CastExpr(CastExpr { syntax }),
30387 SyntaxKind::FIELD_EXPR => Expr::FieldExpr(FieldExpr { syntax }),
30388 SyntaxKind::INDEX_EXPR => Expr::IndexExpr(IndexExpr { syntax }),
30389 SyntaxKind::LITERAL => Expr::Literal(Literal { syntax }),
30390 SyntaxKind::NAME_REF => Expr::NameRef(NameRef { syntax }),
30391 SyntaxKind::PAREN_EXPR => Expr::ParenExpr(ParenExpr { syntax }),
30392 SyntaxKind::POSTFIX_EXPR => Expr::PostfixExpr(PostfixExpr { syntax }),
30393 SyntaxKind::PREFIX_EXPR => Expr::PrefixExpr(PrefixExpr { syntax }),
30394 SyntaxKind::SLICE_EXPR => Expr::SliceExpr(SliceExpr { syntax }),
30395 SyntaxKind::TUPLE_EXPR => Expr::TupleExpr(TupleExpr { syntax }),
30396 _ => {
30397 return None;
30398 }
30399 };
30400 Some(res)
30401 }
30402 #[inline]
30403 fn syntax(&self) -> &SyntaxNode {
30404 match self {
30405 Expr::ArrayExpr(it) => &it.syntax,
30406 Expr::BetweenExpr(it) => &it.syntax,
30407 Expr::BinExpr(it) => &it.syntax,
30408 Expr::CallExpr(it) => &it.syntax,
30409 Expr::CaseExpr(it) => &it.syntax,
30410 Expr::CastExpr(it) => &it.syntax,
30411 Expr::FieldExpr(it) => &it.syntax,
30412 Expr::IndexExpr(it) => &it.syntax,
30413 Expr::Literal(it) => &it.syntax,
30414 Expr::NameRef(it) => &it.syntax,
30415 Expr::ParenExpr(it) => &it.syntax,
30416 Expr::PostfixExpr(it) => &it.syntax,
30417 Expr::PrefixExpr(it) => &it.syntax,
30418 Expr::SliceExpr(it) => &it.syntax,
30419 Expr::TupleExpr(it) => &it.syntax,
30420 }
30421 }
30422}
30423impl From<ArrayExpr> for Expr {
30424 #[inline]
30425 fn from(node: ArrayExpr) -> Expr {
30426 Expr::ArrayExpr(node)
30427 }
30428}
30429impl From<BetweenExpr> for Expr {
30430 #[inline]
30431 fn from(node: BetweenExpr) -> Expr {
30432 Expr::BetweenExpr(node)
30433 }
30434}
30435impl From<BinExpr> for Expr {
30436 #[inline]
30437 fn from(node: BinExpr) -> Expr {
30438 Expr::BinExpr(node)
30439 }
30440}
30441impl From<CallExpr> for Expr {
30442 #[inline]
30443 fn from(node: CallExpr) -> Expr {
30444 Expr::CallExpr(node)
30445 }
30446}
30447impl From<CaseExpr> for Expr {
30448 #[inline]
30449 fn from(node: CaseExpr) -> Expr {
30450 Expr::CaseExpr(node)
30451 }
30452}
30453impl From<CastExpr> for Expr {
30454 #[inline]
30455 fn from(node: CastExpr) -> Expr {
30456 Expr::CastExpr(node)
30457 }
30458}
30459impl From<FieldExpr> for Expr {
30460 #[inline]
30461 fn from(node: FieldExpr) -> Expr {
30462 Expr::FieldExpr(node)
30463 }
30464}
30465impl From<IndexExpr> for Expr {
30466 #[inline]
30467 fn from(node: IndexExpr) -> Expr {
30468 Expr::IndexExpr(node)
30469 }
30470}
30471impl From<Literal> for Expr {
30472 #[inline]
30473 fn from(node: Literal) -> Expr {
30474 Expr::Literal(node)
30475 }
30476}
30477impl From<NameRef> for Expr {
30478 #[inline]
30479 fn from(node: NameRef) -> Expr {
30480 Expr::NameRef(node)
30481 }
30482}
30483impl From<ParenExpr> for Expr {
30484 #[inline]
30485 fn from(node: ParenExpr) -> Expr {
30486 Expr::ParenExpr(node)
30487 }
30488}
30489impl From<PostfixExpr> for Expr {
30490 #[inline]
30491 fn from(node: PostfixExpr) -> Expr {
30492 Expr::PostfixExpr(node)
30493 }
30494}
30495impl From<PrefixExpr> for Expr {
30496 #[inline]
30497 fn from(node: PrefixExpr) -> Expr {
30498 Expr::PrefixExpr(node)
30499 }
30500}
30501impl From<SliceExpr> for Expr {
30502 #[inline]
30503 fn from(node: SliceExpr) -> Expr {
30504 Expr::SliceExpr(node)
30505 }
30506}
30507impl From<TupleExpr> for Expr {
30508 #[inline]
30509 fn from(node: TupleExpr) -> Expr {
30510 Expr::TupleExpr(node)
30511 }
30512}
30513impl AstNode for FuncOption {
30514 #[inline]
30515 fn can_cast(kind: SyntaxKind) -> bool {
30516 matches!(
30517 kind,
30518 SyntaxKind::AS_FUNC_OPTION
30519 | SyntaxKind::BEGIN_FUNC_OPTION_LIST
30520 | SyntaxKind::COST_FUNC_OPTION
30521 | SyntaxKind::LANGUAGE_FUNC_OPTION
30522 | SyntaxKind::LEAKPROOF_FUNC_OPTION
30523 | SyntaxKind::PARALLEL_FUNC_OPTION
30524 | SyntaxKind::RESET_FUNC_OPTION
30525 | SyntaxKind::RETURN_FUNC_OPTION
30526 | SyntaxKind::ROWS_FUNC_OPTION
30527 | SyntaxKind::SECURITY_FUNC_OPTION
30528 | SyntaxKind::SET_FUNC_OPTION
30529 | SyntaxKind::STRICT_FUNC_OPTION
30530 | SyntaxKind::SUPPORT_FUNC_OPTION
30531 | SyntaxKind::TRANSFORM_FUNC_OPTION
30532 | SyntaxKind::VOLATILITY_FUNC_OPTION
30533 | SyntaxKind::WINDOW_FUNC_OPTION
30534 )
30535 }
30536 #[inline]
30537 fn cast(syntax: SyntaxNode) -> Option<Self> {
30538 let res = match syntax.kind() {
30539 SyntaxKind::AS_FUNC_OPTION => FuncOption::AsFuncOption(AsFuncOption { syntax }),
30540 SyntaxKind::BEGIN_FUNC_OPTION_LIST => {
30541 FuncOption::BeginFuncOptionList(BeginFuncOptionList { syntax })
30542 }
30543 SyntaxKind::COST_FUNC_OPTION => FuncOption::CostFuncOption(CostFuncOption { syntax }),
30544 SyntaxKind::LANGUAGE_FUNC_OPTION => {
30545 FuncOption::LanguageFuncOption(LanguageFuncOption { syntax })
30546 }
30547 SyntaxKind::LEAKPROOF_FUNC_OPTION => {
30548 FuncOption::LeakproofFuncOption(LeakproofFuncOption { syntax })
30549 }
30550 SyntaxKind::PARALLEL_FUNC_OPTION => {
30551 FuncOption::ParallelFuncOption(ParallelFuncOption { syntax })
30552 }
30553 SyntaxKind::RESET_FUNC_OPTION => {
30554 FuncOption::ResetFuncOption(ResetFuncOption { syntax })
30555 }
30556 SyntaxKind::RETURN_FUNC_OPTION => {
30557 FuncOption::ReturnFuncOption(ReturnFuncOption { syntax })
30558 }
30559 SyntaxKind::ROWS_FUNC_OPTION => FuncOption::RowsFuncOption(RowsFuncOption { syntax }),
30560 SyntaxKind::SECURITY_FUNC_OPTION => {
30561 FuncOption::SecurityFuncOption(SecurityFuncOption { syntax })
30562 }
30563 SyntaxKind::SET_FUNC_OPTION => FuncOption::SetFuncOption(SetFuncOption { syntax }),
30564 SyntaxKind::STRICT_FUNC_OPTION => {
30565 FuncOption::StrictFuncOption(StrictFuncOption { syntax })
30566 }
30567 SyntaxKind::SUPPORT_FUNC_OPTION => {
30568 FuncOption::SupportFuncOption(SupportFuncOption { syntax })
30569 }
30570 SyntaxKind::TRANSFORM_FUNC_OPTION => {
30571 FuncOption::TransformFuncOption(TransformFuncOption { syntax })
30572 }
30573 SyntaxKind::VOLATILITY_FUNC_OPTION => {
30574 FuncOption::VolatilityFuncOption(VolatilityFuncOption { syntax })
30575 }
30576 SyntaxKind::WINDOW_FUNC_OPTION => {
30577 FuncOption::WindowFuncOption(WindowFuncOption { syntax })
30578 }
30579 _ => {
30580 return None;
30581 }
30582 };
30583 Some(res)
30584 }
30585 #[inline]
30586 fn syntax(&self) -> &SyntaxNode {
30587 match self {
30588 FuncOption::AsFuncOption(it) => &it.syntax,
30589 FuncOption::BeginFuncOptionList(it) => &it.syntax,
30590 FuncOption::CostFuncOption(it) => &it.syntax,
30591 FuncOption::LanguageFuncOption(it) => &it.syntax,
30592 FuncOption::LeakproofFuncOption(it) => &it.syntax,
30593 FuncOption::ParallelFuncOption(it) => &it.syntax,
30594 FuncOption::ResetFuncOption(it) => &it.syntax,
30595 FuncOption::ReturnFuncOption(it) => &it.syntax,
30596 FuncOption::RowsFuncOption(it) => &it.syntax,
30597 FuncOption::SecurityFuncOption(it) => &it.syntax,
30598 FuncOption::SetFuncOption(it) => &it.syntax,
30599 FuncOption::StrictFuncOption(it) => &it.syntax,
30600 FuncOption::SupportFuncOption(it) => &it.syntax,
30601 FuncOption::TransformFuncOption(it) => &it.syntax,
30602 FuncOption::VolatilityFuncOption(it) => &it.syntax,
30603 FuncOption::WindowFuncOption(it) => &it.syntax,
30604 }
30605 }
30606}
30607impl From<AsFuncOption> for FuncOption {
30608 #[inline]
30609 fn from(node: AsFuncOption) -> FuncOption {
30610 FuncOption::AsFuncOption(node)
30611 }
30612}
30613impl From<BeginFuncOptionList> for FuncOption {
30614 #[inline]
30615 fn from(node: BeginFuncOptionList) -> FuncOption {
30616 FuncOption::BeginFuncOptionList(node)
30617 }
30618}
30619impl From<CostFuncOption> for FuncOption {
30620 #[inline]
30621 fn from(node: CostFuncOption) -> FuncOption {
30622 FuncOption::CostFuncOption(node)
30623 }
30624}
30625impl From<LanguageFuncOption> for FuncOption {
30626 #[inline]
30627 fn from(node: LanguageFuncOption) -> FuncOption {
30628 FuncOption::LanguageFuncOption(node)
30629 }
30630}
30631impl From<LeakproofFuncOption> for FuncOption {
30632 #[inline]
30633 fn from(node: LeakproofFuncOption) -> FuncOption {
30634 FuncOption::LeakproofFuncOption(node)
30635 }
30636}
30637impl From<ParallelFuncOption> for FuncOption {
30638 #[inline]
30639 fn from(node: ParallelFuncOption) -> FuncOption {
30640 FuncOption::ParallelFuncOption(node)
30641 }
30642}
30643impl From<ResetFuncOption> for FuncOption {
30644 #[inline]
30645 fn from(node: ResetFuncOption) -> FuncOption {
30646 FuncOption::ResetFuncOption(node)
30647 }
30648}
30649impl From<ReturnFuncOption> for FuncOption {
30650 #[inline]
30651 fn from(node: ReturnFuncOption) -> FuncOption {
30652 FuncOption::ReturnFuncOption(node)
30653 }
30654}
30655impl From<RowsFuncOption> for FuncOption {
30656 #[inline]
30657 fn from(node: RowsFuncOption) -> FuncOption {
30658 FuncOption::RowsFuncOption(node)
30659 }
30660}
30661impl From<SecurityFuncOption> for FuncOption {
30662 #[inline]
30663 fn from(node: SecurityFuncOption) -> FuncOption {
30664 FuncOption::SecurityFuncOption(node)
30665 }
30666}
30667impl From<SetFuncOption> for FuncOption {
30668 #[inline]
30669 fn from(node: SetFuncOption) -> FuncOption {
30670 FuncOption::SetFuncOption(node)
30671 }
30672}
30673impl From<StrictFuncOption> for FuncOption {
30674 #[inline]
30675 fn from(node: StrictFuncOption) -> FuncOption {
30676 FuncOption::StrictFuncOption(node)
30677 }
30678}
30679impl From<SupportFuncOption> for FuncOption {
30680 #[inline]
30681 fn from(node: SupportFuncOption) -> FuncOption {
30682 FuncOption::SupportFuncOption(node)
30683 }
30684}
30685impl From<TransformFuncOption> for FuncOption {
30686 #[inline]
30687 fn from(node: TransformFuncOption) -> FuncOption {
30688 FuncOption::TransformFuncOption(node)
30689 }
30690}
30691impl From<VolatilityFuncOption> for FuncOption {
30692 #[inline]
30693 fn from(node: VolatilityFuncOption) -> FuncOption {
30694 FuncOption::VolatilityFuncOption(node)
30695 }
30696}
30697impl From<WindowFuncOption> for FuncOption {
30698 #[inline]
30699 fn from(node: WindowFuncOption) -> FuncOption {
30700 FuncOption::WindowFuncOption(node)
30701 }
30702}
30703impl AstNode for GroupBy {
30704 #[inline]
30705 fn can_cast(kind: SyntaxKind) -> bool {
30706 matches!(
30707 kind,
30708 SyntaxKind::GROUPING_CUBE
30709 | SyntaxKind::GROUPING_EXPR
30710 | SyntaxKind::GROUPING_ROLLUP
30711 | SyntaxKind::GROUPING_SETS
30712 )
30713 }
30714 #[inline]
30715 fn cast(syntax: SyntaxNode) -> Option<Self> {
30716 let res = match syntax.kind() {
30717 SyntaxKind::GROUPING_CUBE => GroupBy::GroupingCube(GroupingCube { syntax }),
30718 SyntaxKind::GROUPING_EXPR => GroupBy::GroupingExpr(GroupingExpr { syntax }),
30719 SyntaxKind::GROUPING_ROLLUP => GroupBy::GroupingRollup(GroupingRollup { syntax }),
30720 SyntaxKind::GROUPING_SETS => GroupBy::GroupingSets(GroupingSets { syntax }),
30721 _ => {
30722 return None;
30723 }
30724 };
30725 Some(res)
30726 }
30727 #[inline]
30728 fn syntax(&self) -> &SyntaxNode {
30729 match self {
30730 GroupBy::GroupingCube(it) => &it.syntax,
30731 GroupBy::GroupingExpr(it) => &it.syntax,
30732 GroupBy::GroupingRollup(it) => &it.syntax,
30733 GroupBy::GroupingSets(it) => &it.syntax,
30734 }
30735 }
30736}
30737impl From<GroupingCube> for GroupBy {
30738 #[inline]
30739 fn from(node: GroupingCube) -> GroupBy {
30740 GroupBy::GroupingCube(node)
30741 }
30742}
30743impl From<GroupingExpr> for GroupBy {
30744 #[inline]
30745 fn from(node: GroupingExpr) -> GroupBy {
30746 GroupBy::GroupingExpr(node)
30747 }
30748}
30749impl From<GroupingRollup> for GroupBy {
30750 #[inline]
30751 fn from(node: GroupingRollup) -> GroupBy {
30752 GroupBy::GroupingRollup(node)
30753 }
30754}
30755impl From<GroupingSets> for GroupBy {
30756 #[inline]
30757 fn from(node: GroupingSets) -> GroupBy {
30758 GroupBy::GroupingSets(node)
30759 }
30760}
30761impl AstNode for JoinType {
30762 #[inline]
30763 fn can_cast(kind: SyntaxKind) -> bool {
30764 matches!(
30765 kind,
30766 SyntaxKind::JOIN_CROSS
30767 | SyntaxKind::JOIN_FULL
30768 | SyntaxKind::JOIN_INNER
30769 | SyntaxKind::JOIN_LEFT
30770 | SyntaxKind::JOIN_RIGHT
30771 )
30772 }
30773 #[inline]
30774 fn cast(syntax: SyntaxNode) -> Option<Self> {
30775 let res = match syntax.kind() {
30776 SyntaxKind::JOIN_CROSS => JoinType::JoinCross(JoinCross { syntax }),
30777 SyntaxKind::JOIN_FULL => JoinType::JoinFull(JoinFull { syntax }),
30778 SyntaxKind::JOIN_INNER => JoinType::JoinInner(JoinInner { syntax }),
30779 SyntaxKind::JOIN_LEFT => JoinType::JoinLeft(JoinLeft { syntax }),
30780 SyntaxKind::JOIN_RIGHT => JoinType::JoinRight(JoinRight { syntax }),
30781 _ => {
30782 return None;
30783 }
30784 };
30785 Some(res)
30786 }
30787 #[inline]
30788 fn syntax(&self) -> &SyntaxNode {
30789 match self {
30790 JoinType::JoinCross(it) => &it.syntax,
30791 JoinType::JoinFull(it) => &it.syntax,
30792 JoinType::JoinInner(it) => &it.syntax,
30793 JoinType::JoinLeft(it) => &it.syntax,
30794 JoinType::JoinRight(it) => &it.syntax,
30795 }
30796 }
30797}
30798impl From<JoinCross> for JoinType {
30799 #[inline]
30800 fn from(node: JoinCross) -> JoinType {
30801 JoinType::JoinCross(node)
30802 }
30803}
30804impl From<JoinFull> for JoinType {
30805 #[inline]
30806 fn from(node: JoinFull) -> JoinType {
30807 JoinType::JoinFull(node)
30808 }
30809}
30810impl From<JoinInner> for JoinType {
30811 #[inline]
30812 fn from(node: JoinInner) -> JoinType {
30813 JoinType::JoinInner(node)
30814 }
30815}
30816impl From<JoinLeft> for JoinType {
30817 #[inline]
30818 fn from(node: JoinLeft) -> JoinType {
30819 JoinType::JoinLeft(node)
30820 }
30821}
30822impl From<JoinRight> for JoinType {
30823 #[inline]
30824 fn from(node: JoinRight) -> JoinType {
30825 JoinType::JoinRight(node)
30826 }
30827}
30828impl AstNode for JsonBehavior {
30829 #[inline]
30830 fn can_cast(kind: SyntaxKind) -> bool {
30831 matches!(
30832 kind,
30833 SyntaxKind::JSON_BEHAVIOR_DEFAULT
30834 | SyntaxKind::JSON_BEHAVIOR_EMPTY_ARRAY
30835 | SyntaxKind::JSON_BEHAVIOR_EMPTY_OBJECT
30836 | SyntaxKind::JSON_BEHAVIOR_ERROR
30837 | SyntaxKind::JSON_BEHAVIOR_FALSE
30838 | SyntaxKind::JSON_BEHAVIOR_NULL
30839 | SyntaxKind::JSON_BEHAVIOR_TRUE
30840 | SyntaxKind::JSON_BEHAVIOR_UNKNOWN
30841 )
30842 }
30843 #[inline]
30844 fn cast(syntax: SyntaxNode) -> Option<Self> {
30845 let res = match syntax.kind() {
30846 SyntaxKind::JSON_BEHAVIOR_DEFAULT => {
30847 JsonBehavior::JsonBehaviorDefault(JsonBehaviorDefault { syntax })
30848 }
30849 SyntaxKind::JSON_BEHAVIOR_EMPTY_ARRAY => {
30850 JsonBehavior::JsonBehaviorEmptyArray(JsonBehaviorEmptyArray { syntax })
30851 }
30852 SyntaxKind::JSON_BEHAVIOR_EMPTY_OBJECT => {
30853 JsonBehavior::JsonBehaviorEmptyObject(JsonBehaviorEmptyObject { syntax })
30854 }
30855 SyntaxKind::JSON_BEHAVIOR_ERROR => {
30856 JsonBehavior::JsonBehaviorError(JsonBehaviorError { syntax })
30857 }
30858 SyntaxKind::JSON_BEHAVIOR_FALSE => {
30859 JsonBehavior::JsonBehaviorFalse(JsonBehaviorFalse { syntax })
30860 }
30861 SyntaxKind::JSON_BEHAVIOR_NULL => {
30862 JsonBehavior::JsonBehaviorNull(JsonBehaviorNull { syntax })
30863 }
30864 SyntaxKind::JSON_BEHAVIOR_TRUE => {
30865 JsonBehavior::JsonBehaviorTrue(JsonBehaviorTrue { syntax })
30866 }
30867 SyntaxKind::JSON_BEHAVIOR_UNKNOWN => {
30868 JsonBehavior::JsonBehaviorUnknown(JsonBehaviorUnknown { syntax })
30869 }
30870 _ => {
30871 return None;
30872 }
30873 };
30874 Some(res)
30875 }
30876 #[inline]
30877 fn syntax(&self) -> &SyntaxNode {
30878 match self {
30879 JsonBehavior::JsonBehaviorDefault(it) => &it.syntax,
30880 JsonBehavior::JsonBehaviorEmptyArray(it) => &it.syntax,
30881 JsonBehavior::JsonBehaviorEmptyObject(it) => &it.syntax,
30882 JsonBehavior::JsonBehaviorError(it) => &it.syntax,
30883 JsonBehavior::JsonBehaviorFalse(it) => &it.syntax,
30884 JsonBehavior::JsonBehaviorNull(it) => &it.syntax,
30885 JsonBehavior::JsonBehaviorTrue(it) => &it.syntax,
30886 JsonBehavior::JsonBehaviorUnknown(it) => &it.syntax,
30887 }
30888 }
30889}
30890impl From<JsonBehaviorDefault> for JsonBehavior {
30891 #[inline]
30892 fn from(node: JsonBehaviorDefault) -> JsonBehavior {
30893 JsonBehavior::JsonBehaviorDefault(node)
30894 }
30895}
30896impl From<JsonBehaviorEmptyArray> for JsonBehavior {
30897 #[inline]
30898 fn from(node: JsonBehaviorEmptyArray) -> JsonBehavior {
30899 JsonBehavior::JsonBehaviorEmptyArray(node)
30900 }
30901}
30902impl From<JsonBehaviorEmptyObject> for JsonBehavior {
30903 #[inline]
30904 fn from(node: JsonBehaviorEmptyObject) -> JsonBehavior {
30905 JsonBehavior::JsonBehaviorEmptyObject(node)
30906 }
30907}
30908impl From<JsonBehaviorError> for JsonBehavior {
30909 #[inline]
30910 fn from(node: JsonBehaviorError) -> JsonBehavior {
30911 JsonBehavior::JsonBehaviorError(node)
30912 }
30913}
30914impl From<JsonBehaviorFalse> for JsonBehavior {
30915 #[inline]
30916 fn from(node: JsonBehaviorFalse) -> JsonBehavior {
30917 JsonBehavior::JsonBehaviorFalse(node)
30918 }
30919}
30920impl From<JsonBehaviorNull> for JsonBehavior {
30921 #[inline]
30922 fn from(node: JsonBehaviorNull) -> JsonBehavior {
30923 JsonBehavior::JsonBehaviorNull(node)
30924 }
30925}
30926impl From<JsonBehaviorTrue> for JsonBehavior {
30927 #[inline]
30928 fn from(node: JsonBehaviorTrue) -> JsonBehavior {
30929 JsonBehavior::JsonBehaviorTrue(node)
30930 }
30931}
30932impl From<JsonBehaviorUnknown> for JsonBehavior {
30933 #[inline]
30934 fn from(node: JsonBehaviorUnknown) -> JsonBehavior {
30935 JsonBehavior::JsonBehaviorUnknown(node)
30936 }
30937}
30938impl AstNode for MatchType {
30939 #[inline]
30940 fn can_cast(kind: SyntaxKind) -> bool {
30941 matches!(
30942 kind,
30943 SyntaxKind::MATCH_FULL | SyntaxKind::MATCH_PARTIAL | SyntaxKind::MATCH_SIMPLE
30944 )
30945 }
30946 #[inline]
30947 fn cast(syntax: SyntaxNode) -> Option<Self> {
30948 let res = match syntax.kind() {
30949 SyntaxKind::MATCH_FULL => MatchType::MatchFull(MatchFull { syntax }),
30950 SyntaxKind::MATCH_PARTIAL => MatchType::MatchPartial(MatchPartial { syntax }),
30951 SyntaxKind::MATCH_SIMPLE => MatchType::MatchSimple(MatchSimple { syntax }),
30952 _ => {
30953 return None;
30954 }
30955 };
30956 Some(res)
30957 }
30958 #[inline]
30959 fn syntax(&self) -> &SyntaxNode {
30960 match self {
30961 MatchType::MatchFull(it) => &it.syntax,
30962 MatchType::MatchPartial(it) => &it.syntax,
30963 MatchType::MatchSimple(it) => &it.syntax,
30964 }
30965 }
30966}
30967impl From<MatchFull> for MatchType {
30968 #[inline]
30969 fn from(node: MatchFull) -> MatchType {
30970 MatchType::MatchFull(node)
30971 }
30972}
30973impl From<MatchPartial> for MatchType {
30974 #[inline]
30975 fn from(node: MatchPartial) -> MatchType {
30976 MatchType::MatchPartial(node)
30977 }
30978}
30979impl From<MatchSimple> for MatchType {
30980 #[inline]
30981 fn from(node: MatchSimple) -> MatchType {
30982 MatchType::MatchSimple(node)
30983 }
30984}
30985impl AstNode for MergeAction {
30986 #[inline]
30987 fn can_cast(kind: SyntaxKind) -> bool {
30988 matches!(
30989 kind,
30990 SyntaxKind::MERGE_DELETE
30991 | SyntaxKind::MERGE_DO_NOTHING
30992 | SyntaxKind::MERGE_INSERT
30993 | SyntaxKind::MERGE_UPDATE
30994 )
30995 }
30996 #[inline]
30997 fn cast(syntax: SyntaxNode) -> Option<Self> {
30998 let res = match syntax.kind() {
30999 SyntaxKind::MERGE_DELETE => MergeAction::MergeDelete(MergeDelete { syntax }),
31000 SyntaxKind::MERGE_DO_NOTHING => MergeAction::MergeDoNothing(MergeDoNothing { syntax }),
31001 SyntaxKind::MERGE_INSERT => MergeAction::MergeInsert(MergeInsert { syntax }),
31002 SyntaxKind::MERGE_UPDATE => MergeAction::MergeUpdate(MergeUpdate { syntax }),
31003 _ => {
31004 return None;
31005 }
31006 };
31007 Some(res)
31008 }
31009 #[inline]
31010 fn syntax(&self) -> &SyntaxNode {
31011 match self {
31012 MergeAction::MergeDelete(it) => &it.syntax,
31013 MergeAction::MergeDoNothing(it) => &it.syntax,
31014 MergeAction::MergeInsert(it) => &it.syntax,
31015 MergeAction::MergeUpdate(it) => &it.syntax,
31016 }
31017 }
31018}
31019impl From<MergeDelete> for MergeAction {
31020 #[inline]
31021 fn from(node: MergeDelete) -> MergeAction {
31022 MergeAction::MergeDelete(node)
31023 }
31024}
31025impl From<MergeDoNothing> for MergeAction {
31026 #[inline]
31027 fn from(node: MergeDoNothing) -> MergeAction {
31028 MergeAction::MergeDoNothing(node)
31029 }
31030}
31031impl From<MergeInsert> for MergeAction {
31032 #[inline]
31033 fn from(node: MergeInsert) -> MergeAction {
31034 MergeAction::MergeInsert(node)
31035 }
31036}
31037impl From<MergeUpdate> for MergeAction {
31038 #[inline]
31039 fn from(node: MergeUpdate) -> MergeAction {
31040 MergeAction::MergeUpdate(node)
31041 }
31042}
31043impl AstNode for MergeWhenClause {
31044 #[inline]
31045 fn can_cast(kind: SyntaxKind) -> bool {
31046 matches!(
31047 kind,
31048 SyntaxKind::MERGE_WHEN_MATCHED
31049 | SyntaxKind::MERGE_WHEN_NOT_MATCHED_SOURCE
31050 | SyntaxKind::MERGE_WHEN_NOT_MATCHED_TARGET
31051 )
31052 }
31053 #[inline]
31054 fn cast(syntax: SyntaxNode) -> Option<Self> {
31055 let res = match syntax.kind() {
31056 SyntaxKind::MERGE_WHEN_MATCHED => {
31057 MergeWhenClause::MergeWhenMatched(MergeWhenMatched { syntax })
31058 }
31059 SyntaxKind::MERGE_WHEN_NOT_MATCHED_SOURCE => {
31060 MergeWhenClause::MergeWhenNotMatchedSource(MergeWhenNotMatchedSource { syntax })
31061 }
31062 SyntaxKind::MERGE_WHEN_NOT_MATCHED_TARGET => {
31063 MergeWhenClause::MergeWhenNotMatchedTarget(MergeWhenNotMatchedTarget { syntax })
31064 }
31065 _ => {
31066 return None;
31067 }
31068 };
31069 Some(res)
31070 }
31071 #[inline]
31072 fn syntax(&self) -> &SyntaxNode {
31073 match self {
31074 MergeWhenClause::MergeWhenMatched(it) => &it.syntax,
31075 MergeWhenClause::MergeWhenNotMatchedSource(it) => &it.syntax,
31076 MergeWhenClause::MergeWhenNotMatchedTarget(it) => &it.syntax,
31077 }
31078 }
31079}
31080impl From<MergeWhenMatched> for MergeWhenClause {
31081 #[inline]
31082 fn from(node: MergeWhenMatched) -> MergeWhenClause {
31083 MergeWhenClause::MergeWhenMatched(node)
31084 }
31085}
31086impl From<MergeWhenNotMatchedSource> for MergeWhenClause {
31087 #[inline]
31088 fn from(node: MergeWhenNotMatchedSource) -> MergeWhenClause {
31089 MergeWhenClause::MergeWhenNotMatchedSource(node)
31090 }
31091}
31092impl From<MergeWhenNotMatchedTarget> for MergeWhenClause {
31093 #[inline]
31094 fn from(node: MergeWhenNotMatchedTarget) -> MergeWhenClause {
31095 MergeWhenClause::MergeWhenNotMatchedTarget(node)
31096 }
31097}
31098impl AstNode for OnCommitAction {
31099 #[inline]
31100 fn can_cast(kind: SyntaxKind) -> bool {
31101 matches!(
31102 kind,
31103 SyntaxKind::DELETE_ROWS | SyntaxKind::DROP | SyntaxKind::PRESERVE_ROWS
31104 )
31105 }
31106 #[inline]
31107 fn cast(syntax: SyntaxNode) -> Option<Self> {
31108 let res = match syntax.kind() {
31109 SyntaxKind::DELETE_ROWS => OnCommitAction::DeleteRows(DeleteRows { syntax }),
31110 SyntaxKind::DROP => OnCommitAction::Drop(Drop { syntax }),
31111 SyntaxKind::PRESERVE_ROWS => OnCommitAction::PreserveRows(PreserveRows { syntax }),
31112 _ => {
31113 return None;
31114 }
31115 };
31116 Some(res)
31117 }
31118 #[inline]
31119 fn syntax(&self) -> &SyntaxNode {
31120 match self {
31121 OnCommitAction::DeleteRows(it) => &it.syntax,
31122 OnCommitAction::Drop(it) => &it.syntax,
31123 OnCommitAction::PreserveRows(it) => &it.syntax,
31124 }
31125 }
31126}
31127impl From<DeleteRows> for OnCommitAction {
31128 #[inline]
31129 fn from(node: DeleteRows) -> OnCommitAction {
31130 OnCommitAction::DeleteRows(node)
31131 }
31132}
31133impl From<Drop> for OnCommitAction {
31134 #[inline]
31135 fn from(node: Drop) -> OnCommitAction {
31136 OnCommitAction::Drop(node)
31137 }
31138}
31139impl From<PreserveRows> for OnCommitAction {
31140 #[inline]
31141 fn from(node: PreserveRows) -> OnCommitAction {
31142 OnCommitAction::PreserveRows(node)
31143 }
31144}
31145impl AstNode for ParamMode {
31146 #[inline]
31147 fn can_cast(kind: SyntaxKind) -> bool {
31148 matches!(
31149 kind,
31150 SyntaxKind::PARAM_IN
31151 | SyntaxKind::PARAM_IN_OUT
31152 | SyntaxKind::PARAM_OUT
31153 | SyntaxKind::PARAM_VARIADIC
31154 )
31155 }
31156 #[inline]
31157 fn cast(syntax: SyntaxNode) -> Option<Self> {
31158 let res = match syntax.kind() {
31159 SyntaxKind::PARAM_IN => ParamMode::ParamIn(ParamIn { syntax }),
31160 SyntaxKind::PARAM_IN_OUT => ParamMode::ParamInOut(ParamInOut { syntax }),
31161 SyntaxKind::PARAM_OUT => ParamMode::ParamOut(ParamOut { syntax }),
31162 SyntaxKind::PARAM_VARIADIC => ParamMode::ParamVariadic(ParamVariadic { syntax }),
31163 _ => {
31164 return None;
31165 }
31166 };
31167 Some(res)
31168 }
31169 #[inline]
31170 fn syntax(&self) -> &SyntaxNode {
31171 match self {
31172 ParamMode::ParamIn(it) => &it.syntax,
31173 ParamMode::ParamInOut(it) => &it.syntax,
31174 ParamMode::ParamOut(it) => &it.syntax,
31175 ParamMode::ParamVariadic(it) => &it.syntax,
31176 }
31177 }
31178}
31179impl From<ParamIn> for ParamMode {
31180 #[inline]
31181 fn from(node: ParamIn) -> ParamMode {
31182 ParamMode::ParamIn(node)
31183 }
31184}
31185impl From<ParamInOut> for ParamMode {
31186 #[inline]
31187 fn from(node: ParamInOut) -> ParamMode {
31188 ParamMode::ParamInOut(node)
31189 }
31190}
31191impl From<ParamOut> for ParamMode {
31192 #[inline]
31193 fn from(node: ParamOut) -> ParamMode {
31194 ParamMode::ParamOut(node)
31195 }
31196}
31197impl From<ParamVariadic> for ParamMode {
31198 #[inline]
31199 fn from(node: ParamVariadic) -> ParamMode {
31200 ParamMode::ParamVariadic(node)
31201 }
31202}
31203impl AstNode for PartitionType {
31204 #[inline]
31205 fn can_cast(kind: SyntaxKind) -> bool {
31206 matches!(
31207 kind,
31208 SyntaxKind::PARTITION_DEFAULT
31209 | SyntaxKind::PARTITION_FOR_VALUES_FROM
31210 | SyntaxKind::PARTITION_FOR_VALUES_IN
31211 | SyntaxKind::PARTITION_FOR_VALUES_WITH
31212 )
31213 }
31214 #[inline]
31215 fn cast(syntax: SyntaxNode) -> Option<Self> {
31216 let res = match syntax.kind() {
31217 SyntaxKind::PARTITION_DEFAULT => {
31218 PartitionType::PartitionDefault(PartitionDefault { syntax })
31219 }
31220 SyntaxKind::PARTITION_FOR_VALUES_FROM => {
31221 PartitionType::PartitionForValuesFrom(PartitionForValuesFrom { syntax })
31222 }
31223 SyntaxKind::PARTITION_FOR_VALUES_IN => {
31224 PartitionType::PartitionForValuesIn(PartitionForValuesIn { syntax })
31225 }
31226 SyntaxKind::PARTITION_FOR_VALUES_WITH => {
31227 PartitionType::PartitionForValuesWith(PartitionForValuesWith { syntax })
31228 }
31229 _ => {
31230 return None;
31231 }
31232 };
31233 Some(res)
31234 }
31235 #[inline]
31236 fn syntax(&self) -> &SyntaxNode {
31237 match self {
31238 PartitionType::PartitionDefault(it) => &it.syntax,
31239 PartitionType::PartitionForValuesFrom(it) => &it.syntax,
31240 PartitionType::PartitionForValuesIn(it) => &it.syntax,
31241 PartitionType::PartitionForValuesWith(it) => &it.syntax,
31242 }
31243 }
31244}
31245impl From<PartitionDefault> for PartitionType {
31246 #[inline]
31247 fn from(node: PartitionDefault) -> PartitionType {
31248 PartitionType::PartitionDefault(node)
31249 }
31250}
31251impl From<PartitionForValuesFrom> for PartitionType {
31252 #[inline]
31253 fn from(node: PartitionForValuesFrom) -> PartitionType {
31254 PartitionType::PartitionForValuesFrom(node)
31255 }
31256}
31257impl From<PartitionForValuesIn> for PartitionType {
31258 #[inline]
31259 fn from(node: PartitionForValuesIn) -> PartitionType {
31260 PartitionType::PartitionForValuesIn(node)
31261 }
31262}
31263impl From<PartitionForValuesWith> for PartitionType {
31264 #[inline]
31265 fn from(node: PartitionForValuesWith) -> PartitionType {
31266 PartitionType::PartitionForValuesWith(node)
31267 }
31268}
31269impl AstNode for PreparableStmt {
31270 #[inline]
31271 fn can_cast(kind: SyntaxKind) -> bool {
31272 matches!(
31273 kind,
31274 SyntaxKind::COMPOUND_SELECT
31275 | SyntaxKind::DELETE
31276 | SyntaxKind::INSERT
31277 | SyntaxKind::MERGE
31278 | SyntaxKind::SELECT
31279 | SyntaxKind::SELECT_INTO
31280 | SyntaxKind::TABLE
31281 | SyntaxKind::UPDATE
31282 | SyntaxKind::VALUES
31283 )
31284 }
31285 #[inline]
31286 fn cast(syntax: SyntaxNode) -> Option<Self> {
31287 let res = match syntax.kind() {
31288 SyntaxKind::COMPOUND_SELECT => {
31289 PreparableStmt::CompoundSelect(CompoundSelect { syntax })
31290 }
31291 SyntaxKind::DELETE => PreparableStmt::Delete(Delete { syntax }),
31292 SyntaxKind::INSERT => PreparableStmt::Insert(Insert { syntax }),
31293 SyntaxKind::MERGE => PreparableStmt::Merge(Merge { syntax }),
31294 SyntaxKind::SELECT => PreparableStmt::Select(Select { syntax }),
31295 SyntaxKind::SELECT_INTO => PreparableStmt::SelectInto(SelectInto { syntax }),
31296 SyntaxKind::TABLE => PreparableStmt::Table(Table { syntax }),
31297 SyntaxKind::UPDATE => PreparableStmt::Update(Update { syntax }),
31298 SyntaxKind::VALUES => PreparableStmt::Values(Values { syntax }),
31299 _ => {
31300 return None;
31301 }
31302 };
31303 Some(res)
31304 }
31305 #[inline]
31306 fn syntax(&self) -> &SyntaxNode {
31307 match self {
31308 PreparableStmt::CompoundSelect(it) => &it.syntax,
31309 PreparableStmt::Delete(it) => &it.syntax,
31310 PreparableStmt::Insert(it) => &it.syntax,
31311 PreparableStmt::Merge(it) => &it.syntax,
31312 PreparableStmt::Select(it) => &it.syntax,
31313 PreparableStmt::SelectInto(it) => &it.syntax,
31314 PreparableStmt::Table(it) => &it.syntax,
31315 PreparableStmt::Update(it) => &it.syntax,
31316 PreparableStmt::Values(it) => &it.syntax,
31317 }
31318 }
31319}
31320impl From<CompoundSelect> for PreparableStmt {
31321 #[inline]
31322 fn from(node: CompoundSelect) -> PreparableStmt {
31323 PreparableStmt::CompoundSelect(node)
31324 }
31325}
31326impl From<Delete> for PreparableStmt {
31327 #[inline]
31328 fn from(node: Delete) -> PreparableStmt {
31329 PreparableStmt::Delete(node)
31330 }
31331}
31332impl From<Insert> for PreparableStmt {
31333 #[inline]
31334 fn from(node: Insert) -> PreparableStmt {
31335 PreparableStmt::Insert(node)
31336 }
31337}
31338impl From<Merge> for PreparableStmt {
31339 #[inline]
31340 fn from(node: Merge) -> PreparableStmt {
31341 PreparableStmt::Merge(node)
31342 }
31343}
31344impl From<Select> for PreparableStmt {
31345 #[inline]
31346 fn from(node: Select) -> PreparableStmt {
31347 PreparableStmt::Select(node)
31348 }
31349}
31350impl From<SelectInto> for PreparableStmt {
31351 #[inline]
31352 fn from(node: SelectInto) -> PreparableStmt {
31353 PreparableStmt::SelectInto(node)
31354 }
31355}
31356impl From<Table> for PreparableStmt {
31357 #[inline]
31358 fn from(node: Table) -> PreparableStmt {
31359 PreparableStmt::Table(node)
31360 }
31361}
31362impl From<Update> for PreparableStmt {
31363 #[inline]
31364 fn from(node: Update) -> PreparableStmt {
31365 PreparableStmt::Update(node)
31366 }
31367}
31368impl From<Values> for PreparableStmt {
31369 #[inline]
31370 fn from(node: Values) -> PreparableStmt {
31371 PreparableStmt::Values(node)
31372 }
31373}
31374impl AstNode for RefAction {
31375 #[inline]
31376 fn can_cast(kind: SyntaxKind) -> bool {
31377 matches!(
31378 kind,
31379 SyntaxKind::CASCADE
31380 | SyntaxKind::NO_ACTION
31381 | SyntaxKind::RESTRICT
31382 | SyntaxKind::SET_DEFAULT_COLUMNS
31383 | SyntaxKind::SET_NULL_COLUMNS
31384 )
31385 }
31386 #[inline]
31387 fn cast(syntax: SyntaxNode) -> Option<Self> {
31388 let res = match syntax.kind() {
31389 SyntaxKind::CASCADE => RefAction::Cascade(Cascade { syntax }),
31390 SyntaxKind::NO_ACTION => RefAction::NoAction(NoAction { syntax }),
31391 SyntaxKind::RESTRICT => RefAction::Restrict(Restrict { syntax }),
31392 SyntaxKind::SET_DEFAULT_COLUMNS => {
31393 RefAction::SetDefaultColumns(SetDefaultColumns { syntax })
31394 }
31395 SyntaxKind::SET_NULL_COLUMNS => RefAction::SetNullColumns(SetNullColumns { syntax }),
31396 _ => {
31397 return None;
31398 }
31399 };
31400 Some(res)
31401 }
31402 #[inline]
31403 fn syntax(&self) -> &SyntaxNode {
31404 match self {
31405 RefAction::Cascade(it) => &it.syntax,
31406 RefAction::NoAction(it) => &it.syntax,
31407 RefAction::Restrict(it) => &it.syntax,
31408 RefAction::SetDefaultColumns(it) => &it.syntax,
31409 RefAction::SetNullColumns(it) => &it.syntax,
31410 }
31411 }
31412}
31413impl From<Cascade> for RefAction {
31414 #[inline]
31415 fn from(node: Cascade) -> RefAction {
31416 RefAction::Cascade(node)
31417 }
31418}
31419impl From<NoAction> for RefAction {
31420 #[inline]
31421 fn from(node: NoAction) -> RefAction {
31422 RefAction::NoAction(node)
31423 }
31424}
31425impl From<Restrict> for RefAction {
31426 #[inline]
31427 fn from(node: Restrict) -> RefAction {
31428 RefAction::Restrict(node)
31429 }
31430}
31431impl From<SetDefaultColumns> for RefAction {
31432 #[inline]
31433 fn from(node: SetDefaultColumns) -> RefAction {
31434 RefAction::SetDefaultColumns(node)
31435 }
31436}
31437impl From<SetNullColumns> for RefAction {
31438 #[inline]
31439 fn from(node: SetNullColumns) -> RefAction {
31440 RefAction::SetNullColumns(node)
31441 }
31442}
31443impl AstNode for SchemaElement {
31444 #[inline]
31445 fn can_cast(kind: SyntaxKind) -> bool {
31446 matches!(
31447 kind,
31448 SyntaxKind::CREATE_INDEX
31449 | SyntaxKind::CREATE_SEQUENCE
31450 | SyntaxKind::CREATE_TABLE
31451 | SyntaxKind::CREATE_TRIGGER
31452 | SyntaxKind::CREATE_VIEW
31453 | SyntaxKind::GRANT
31454 )
31455 }
31456 #[inline]
31457 fn cast(syntax: SyntaxNode) -> Option<Self> {
31458 let res = match syntax.kind() {
31459 SyntaxKind::CREATE_INDEX => SchemaElement::CreateIndex(CreateIndex { syntax }),
31460 SyntaxKind::CREATE_SEQUENCE => SchemaElement::CreateSequence(CreateSequence { syntax }),
31461 SyntaxKind::CREATE_TABLE => SchemaElement::CreateTable(CreateTable { syntax }),
31462 SyntaxKind::CREATE_TRIGGER => SchemaElement::CreateTrigger(CreateTrigger { syntax }),
31463 SyntaxKind::CREATE_VIEW => SchemaElement::CreateView(CreateView { syntax }),
31464 SyntaxKind::GRANT => SchemaElement::Grant(Grant { syntax }),
31465 _ => {
31466 return None;
31467 }
31468 };
31469 Some(res)
31470 }
31471 #[inline]
31472 fn syntax(&self) -> &SyntaxNode {
31473 match self {
31474 SchemaElement::CreateIndex(it) => &it.syntax,
31475 SchemaElement::CreateSequence(it) => &it.syntax,
31476 SchemaElement::CreateTable(it) => &it.syntax,
31477 SchemaElement::CreateTrigger(it) => &it.syntax,
31478 SchemaElement::CreateView(it) => &it.syntax,
31479 SchemaElement::Grant(it) => &it.syntax,
31480 }
31481 }
31482}
31483impl From<CreateIndex> for SchemaElement {
31484 #[inline]
31485 fn from(node: CreateIndex) -> SchemaElement {
31486 SchemaElement::CreateIndex(node)
31487 }
31488}
31489impl From<CreateSequence> for SchemaElement {
31490 #[inline]
31491 fn from(node: CreateSequence) -> SchemaElement {
31492 SchemaElement::CreateSequence(node)
31493 }
31494}
31495impl From<CreateTable> for SchemaElement {
31496 #[inline]
31497 fn from(node: CreateTable) -> SchemaElement {
31498 SchemaElement::CreateTable(node)
31499 }
31500}
31501impl From<CreateTrigger> for SchemaElement {
31502 #[inline]
31503 fn from(node: CreateTrigger) -> SchemaElement {
31504 SchemaElement::CreateTrigger(node)
31505 }
31506}
31507impl From<CreateView> for SchemaElement {
31508 #[inline]
31509 fn from(node: CreateView) -> SchemaElement {
31510 SchemaElement::CreateView(node)
31511 }
31512}
31513impl From<Grant> for SchemaElement {
31514 #[inline]
31515 fn from(node: Grant) -> SchemaElement {
31516 SchemaElement::Grant(node)
31517 }
31518}
31519impl AstNode for SelectVariant {
31520 #[inline]
31521 fn can_cast(kind: SyntaxKind) -> bool {
31522 matches!(
31523 kind,
31524 SyntaxKind::COMPOUND_SELECT
31525 | SyntaxKind::PAREN_SELECT
31526 | SyntaxKind::SELECT
31527 | SyntaxKind::SELECT_INTO
31528 | SyntaxKind::TABLE
31529 | SyntaxKind::VALUES
31530 )
31531 }
31532 #[inline]
31533 fn cast(syntax: SyntaxNode) -> Option<Self> {
31534 let res = match syntax.kind() {
31535 SyntaxKind::COMPOUND_SELECT => SelectVariant::CompoundSelect(CompoundSelect { syntax }),
31536 SyntaxKind::PAREN_SELECT => SelectVariant::ParenSelect(ParenSelect { syntax }),
31537 SyntaxKind::SELECT => SelectVariant::Select(Select { syntax }),
31538 SyntaxKind::SELECT_INTO => SelectVariant::SelectInto(SelectInto { syntax }),
31539 SyntaxKind::TABLE => SelectVariant::Table(Table { syntax }),
31540 SyntaxKind::VALUES => SelectVariant::Values(Values { syntax }),
31541 _ => {
31542 return None;
31543 }
31544 };
31545 Some(res)
31546 }
31547 #[inline]
31548 fn syntax(&self) -> &SyntaxNode {
31549 match self {
31550 SelectVariant::CompoundSelect(it) => &it.syntax,
31551 SelectVariant::ParenSelect(it) => &it.syntax,
31552 SelectVariant::Select(it) => &it.syntax,
31553 SelectVariant::SelectInto(it) => &it.syntax,
31554 SelectVariant::Table(it) => &it.syntax,
31555 SelectVariant::Values(it) => &it.syntax,
31556 }
31557 }
31558}
31559impl From<CompoundSelect> for SelectVariant {
31560 #[inline]
31561 fn from(node: CompoundSelect) -> SelectVariant {
31562 SelectVariant::CompoundSelect(node)
31563 }
31564}
31565impl From<ParenSelect> for SelectVariant {
31566 #[inline]
31567 fn from(node: ParenSelect) -> SelectVariant {
31568 SelectVariant::ParenSelect(node)
31569 }
31570}
31571impl From<Select> for SelectVariant {
31572 #[inline]
31573 fn from(node: Select) -> SelectVariant {
31574 SelectVariant::Select(node)
31575 }
31576}
31577impl From<SelectInto> for SelectVariant {
31578 #[inline]
31579 fn from(node: SelectInto) -> SelectVariant {
31580 SelectVariant::SelectInto(node)
31581 }
31582}
31583impl From<Table> for SelectVariant {
31584 #[inline]
31585 fn from(node: Table) -> SelectVariant {
31586 SelectVariant::Table(node)
31587 }
31588}
31589impl From<Values> for SelectVariant {
31590 #[inline]
31591 fn from(node: Values) -> SelectVariant {
31592 SelectVariant::Values(node)
31593 }
31594}
31595impl AstNode for SetColumn {
31596 #[inline]
31597 fn can_cast(kind: SyntaxKind) -> bool {
31598 matches!(
31599 kind,
31600 SyntaxKind::SET_MULTIPLE_COLUMNS | SyntaxKind::SET_SINGLE_COLUMN
31601 )
31602 }
31603 #[inline]
31604 fn cast(syntax: SyntaxNode) -> Option<Self> {
31605 let res = match syntax.kind() {
31606 SyntaxKind::SET_MULTIPLE_COLUMNS => {
31607 SetColumn::SetMultipleColumns(SetMultipleColumns { syntax })
31608 }
31609 SyntaxKind::SET_SINGLE_COLUMN => SetColumn::SetSingleColumn(SetSingleColumn { syntax }),
31610 _ => {
31611 return None;
31612 }
31613 };
31614 Some(res)
31615 }
31616 #[inline]
31617 fn syntax(&self) -> &SyntaxNode {
31618 match self {
31619 SetColumn::SetMultipleColumns(it) => &it.syntax,
31620 SetColumn::SetSingleColumn(it) => &it.syntax,
31621 }
31622 }
31623}
31624impl From<SetMultipleColumns> for SetColumn {
31625 #[inline]
31626 fn from(node: SetMultipleColumns) -> SetColumn {
31627 SetColumn::SetMultipleColumns(node)
31628 }
31629}
31630impl From<SetSingleColumn> for SetColumn {
31631 #[inline]
31632 fn from(node: SetSingleColumn) -> SetColumn {
31633 SetColumn::SetSingleColumn(node)
31634 }
31635}
31636impl AstNode for Stmt {
31637 #[inline]
31638 fn can_cast(kind: SyntaxKind) -> bool {
31639 matches!(
31640 kind,
31641 SyntaxKind::ALTER_AGGREGATE
31642 | SyntaxKind::ALTER_COLLATION
31643 | SyntaxKind::ALTER_CONVERSION
31644 | SyntaxKind::ALTER_DATABASE
31645 | SyntaxKind::ALTER_DEFAULT_PRIVILEGES
31646 | SyntaxKind::ALTER_DOMAIN
31647 | SyntaxKind::ALTER_EVENT_TRIGGER
31648 | SyntaxKind::ALTER_EXTENSION
31649 | SyntaxKind::ALTER_FOREIGN_DATA_WRAPPER
31650 | SyntaxKind::ALTER_FOREIGN_TABLE
31651 | SyntaxKind::ALTER_FUNCTION
31652 | SyntaxKind::ALTER_GROUP
31653 | SyntaxKind::ALTER_INDEX
31654 | SyntaxKind::ALTER_LANGUAGE
31655 | SyntaxKind::ALTER_LARGE_OBJECT
31656 | SyntaxKind::ALTER_MATERIALIZED_VIEW
31657 | SyntaxKind::ALTER_OPERATOR
31658 | SyntaxKind::ALTER_OPERATOR_CLASS
31659 | SyntaxKind::ALTER_OPERATOR_FAMILY
31660 | SyntaxKind::ALTER_POLICY
31661 | SyntaxKind::ALTER_PROCEDURE
31662 | SyntaxKind::ALTER_PUBLICATION
31663 | SyntaxKind::ALTER_ROLE
31664 | SyntaxKind::ALTER_ROUTINE
31665 | SyntaxKind::ALTER_RULE
31666 | SyntaxKind::ALTER_SCHEMA
31667 | SyntaxKind::ALTER_SEQUENCE
31668 | SyntaxKind::ALTER_SERVER
31669 | SyntaxKind::ALTER_STATISTICS
31670 | SyntaxKind::ALTER_SUBSCRIPTION
31671 | SyntaxKind::ALTER_SYSTEM
31672 | SyntaxKind::ALTER_TABLE
31673 | SyntaxKind::ALTER_TABLESPACE
31674 | SyntaxKind::ALTER_TEXT_SEARCH_CONFIGURATION
31675 | SyntaxKind::ALTER_TEXT_SEARCH_DICTIONARY
31676 | SyntaxKind::ALTER_TEXT_SEARCH_PARSER
31677 | SyntaxKind::ALTER_TEXT_SEARCH_TEMPLATE
31678 | SyntaxKind::ALTER_TRIGGER
31679 | SyntaxKind::ALTER_TYPE
31680 | SyntaxKind::ALTER_USER
31681 | SyntaxKind::ALTER_USER_MAPPING
31682 | SyntaxKind::ALTER_VIEW
31683 | SyntaxKind::ANALYZE
31684 | SyntaxKind::BEGIN
31685 | SyntaxKind::CALL
31686 | SyntaxKind::CHECKPOINT
31687 | SyntaxKind::CLOSE
31688 | SyntaxKind::CLUSTER
31689 | SyntaxKind::COMMENT_ON
31690 | SyntaxKind::COMMIT
31691 | SyntaxKind::COPY
31692 | SyntaxKind::CREATE_ACCESS_METHOD
31693 | SyntaxKind::CREATE_AGGREGATE
31694 | SyntaxKind::CREATE_CAST
31695 | SyntaxKind::CREATE_COLLATION
31696 | SyntaxKind::CREATE_CONVERSION
31697 | SyntaxKind::CREATE_DATABASE
31698 | SyntaxKind::CREATE_DOMAIN
31699 | SyntaxKind::CREATE_EVENT_TRIGGER
31700 | SyntaxKind::CREATE_EXTENSION
31701 | SyntaxKind::CREATE_FOREIGN_DATA_WRAPPER
31702 | SyntaxKind::CREATE_FOREIGN_TABLE
31703 | SyntaxKind::CREATE_FUNCTION
31704 | SyntaxKind::CREATE_GROUP
31705 | SyntaxKind::CREATE_INDEX
31706 | SyntaxKind::CREATE_LANGUAGE
31707 | SyntaxKind::CREATE_MATERIALIZED_VIEW
31708 | SyntaxKind::CREATE_OPERATOR
31709 | SyntaxKind::CREATE_OPERATOR_CLASS
31710 | SyntaxKind::CREATE_OPERATOR_FAMILY
31711 | SyntaxKind::CREATE_POLICY
31712 | SyntaxKind::CREATE_PROCEDURE
31713 | SyntaxKind::CREATE_PUBLICATION
31714 | SyntaxKind::CREATE_ROLE
31715 | SyntaxKind::CREATE_RULE
31716 | SyntaxKind::CREATE_SCHEMA
31717 | SyntaxKind::CREATE_SEQUENCE
31718 | SyntaxKind::CREATE_SERVER
31719 | SyntaxKind::CREATE_STATISTICS
31720 | SyntaxKind::CREATE_SUBSCRIPTION
31721 | SyntaxKind::CREATE_TABLE
31722 | SyntaxKind::CREATE_TABLE_AS
31723 | SyntaxKind::CREATE_TABLESPACE
31724 | SyntaxKind::CREATE_TEXT_SEARCH_CONFIGURATION
31725 | SyntaxKind::CREATE_TEXT_SEARCH_DICTIONARY
31726 | SyntaxKind::CREATE_TEXT_SEARCH_PARSER
31727 | SyntaxKind::CREATE_TEXT_SEARCH_TEMPLATE
31728 | SyntaxKind::CREATE_TRANSFORM
31729 | SyntaxKind::CREATE_TRIGGER
31730 | SyntaxKind::CREATE_TYPE
31731 | SyntaxKind::CREATE_USER
31732 | SyntaxKind::CREATE_USER_MAPPING
31733 | SyntaxKind::CREATE_VIEW
31734 | SyntaxKind::DEALLOCATE
31735 | SyntaxKind::DECLARE
31736 | SyntaxKind::DELETE
31737 | SyntaxKind::DISCARD
31738 | SyntaxKind::DO
31739 | SyntaxKind::DROP_ACCESS_METHOD
31740 | SyntaxKind::DROP_AGGREGATE
31741 | SyntaxKind::DROP_CAST
31742 | SyntaxKind::DROP_COLLATION
31743 | SyntaxKind::DROP_CONVERSION
31744 | SyntaxKind::DROP_DATABASE
31745 | SyntaxKind::DROP_DOMAIN
31746 | SyntaxKind::DROP_EVENT_TRIGGER
31747 | SyntaxKind::DROP_EXTENSION
31748 | SyntaxKind::DROP_FOREIGN_DATA_WRAPPER
31749 | SyntaxKind::DROP_FOREIGN_TABLE
31750 | SyntaxKind::DROP_FUNCTION
31751 | SyntaxKind::DROP_GROUP
31752 | SyntaxKind::DROP_INDEX
31753 | SyntaxKind::DROP_LANGUAGE
31754 | SyntaxKind::DROP_MATERIALIZED_VIEW
31755 | SyntaxKind::DROP_OPERATOR
31756 | SyntaxKind::DROP_OPERATOR_CLASS
31757 | SyntaxKind::DROP_OPERATOR_FAMILY
31758 | SyntaxKind::DROP_OWNED
31759 | SyntaxKind::DROP_POLICY
31760 | SyntaxKind::DROP_PROCEDURE
31761 | SyntaxKind::DROP_PUBLICATION
31762 | SyntaxKind::DROP_ROLE
31763 | SyntaxKind::DROP_ROUTINE
31764 | SyntaxKind::DROP_RULE
31765 | SyntaxKind::DROP_SCHEMA
31766 | SyntaxKind::DROP_SEQUENCE
31767 | SyntaxKind::DROP_SERVER
31768 | SyntaxKind::DROP_STATISTICS
31769 | SyntaxKind::DROP_SUBSCRIPTION
31770 | SyntaxKind::DROP_TABLE
31771 | SyntaxKind::DROP_TABLESPACE
31772 | SyntaxKind::DROP_TEXT_SEARCH_CONFIG
31773 | SyntaxKind::DROP_TEXT_SEARCH_DICT
31774 | SyntaxKind::DROP_TEXT_SEARCH_PARSER
31775 | SyntaxKind::DROP_TEXT_SEARCH_TEMPLATE
31776 | SyntaxKind::DROP_TRANSFORM
31777 | SyntaxKind::DROP_TRIGGER
31778 | SyntaxKind::DROP_TYPE
31779 | SyntaxKind::DROP_USER
31780 | SyntaxKind::DROP_USER_MAPPING
31781 | SyntaxKind::DROP_VIEW
31782 | SyntaxKind::EXECUTE
31783 | SyntaxKind::EXPLAIN
31784 | SyntaxKind::FETCH
31785 | SyntaxKind::GRANT
31786 | SyntaxKind::IMPORT_FOREIGN_SCHEMA
31787 | SyntaxKind::INSERT
31788 | SyntaxKind::LISTEN
31789 | SyntaxKind::LOAD
31790 | SyntaxKind::LOCK
31791 | SyntaxKind::MERGE
31792 | SyntaxKind::MOVE
31793 | SyntaxKind::NOTIFY
31794 | SyntaxKind::PAREN_SELECT
31795 | SyntaxKind::PREPARE
31796 | SyntaxKind::PREPARE_TRANSACTION
31797 | SyntaxKind::REASSIGN
31798 | SyntaxKind::REFRESH
31799 | SyntaxKind::REINDEX
31800 | SyntaxKind::RELEASE_SAVEPOINT
31801 | SyntaxKind::RESET
31802 | SyntaxKind::RESET_SESSION_AUTH
31803 | SyntaxKind::REVOKE
31804 | SyntaxKind::ROLLBACK
31805 | SyntaxKind::SAVEPOINT
31806 | SyntaxKind::SECURITY_LABEL
31807 | SyntaxKind::SELECT
31808 | SyntaxKind::SELECT_INTO
31809 | SyntaxKind::SET
31810 | SyntaxKind::SET_CONSTRAINTS
31811 | SyntaxKind::SET_ROLE
31812 | SyntaxKind::SET_SESSION_AUTH
31813 | SyntaxKind::SET_TRANSACTION
31814 | SyntaxKind::SHOW
31815 | SyntaxKind::TABLE
31816 | SyntaxKind::TRUNCATE
31817 | SyntaxKind::UNLISTEN
31818 | SyntaxKind::UPDATE
31819 | SyntaxKind::VACUUM
31820 | SyntaxKind::VALUES
31821 )
31822 }
31823 #[inline]
31824 fn cast(syntax: SyntaxNode) -> Option<Self> {
31825 let res = match syntax.kind() {
31826 SyntaxKind::ALTER_AGGREGATE => Stmt::AlterAggregate(AlterAggregate { syntax }),
31827 SyntaxKind::ALTER_COLLATION => Stmt::AlterCollation(AlterCollation { syntax }),
31828 SyntaxKind::ALTER_CONVERSION => Stmt::AlterConversion(AlterConversion { syntax }),
31829 SyntaxKind::ALTER_DATABASE => Stmt::AlterDatabase(AlterDatabase { syntax }),
31830 SyntaxKind::ALTER_DEFAULT_PRIVILEGES => {
31831 Stmt::AlterDefaultPrivileges(AlterDefaultPrivileges { syntax })
31832 }
31833 SyntaxKind::ALTER_DOMAIN => Stmt::AlterDomain(AlterDomain { syntax }),
31834 SyntaxKind::ALTER_EVENT_TRIGGER => {
31835 Stmt::AlterEventTrigger(AlterEventTrigger { syntax })
31836 }
31837 SyntaxKind::ALTER_EXTENSION => Stmt::AlterExtension(AlterExtension { syntax }),
31838 SyntaxKind::ALTER_FOREIGN_DATA_WRAPPER => {
31839 Stmt::AlterForeignDataWrapper(AlterForeignDataWrapper { syntax })
31840 }
31841 SyntaxKind::ALTER_FOREIGN_TABLE => {
31842 Stmt::AlterForeignTable(AlterForeignTable { syntax })
31843 }
31844 SyntaxKind::ALTER_FUNCTION => Stmt::AlterFunction(AlterFunction { syntax }),
31845 SyntaxKind::ALTER_GROUP => Stmt::AlterGroup(AlterGroup { syntax }),
31846 SyntaxKind::ALTER_INDEX => Stmt::AlterIndex(AlterIndex { syntax }),
31847 SyntaxKind::ALTER_LANGUAGE => Stmt::AlterLanguage(AlterLanguage { syntax }),
31848 SyntaxKind::ALTER_LARGE_OBJECT => Stmt::AlterLargeObject(AlterLargeObject { syntax }),
31849 SyntaxKind::ALTER_MATERIALIZED_VIEW => {
31850 Stmt::AlterMaterializedView(AlterMaterializedView { syntax })
31851 }
31852 SyntaxKind::ALTER_OPERATOR => Stmt::AlterOperator(AlterOperator { syntax }),
31853 SyntaxKind::ALTER_OPERATOR_CLASS => {
31854 Stmt::AlterOperatorClass(AlterOperatorClass { syntax })
31855 }
31856 SyntaxKind::ALTER_OPERATOR_FAMILY => {
31857 Stmt::AlterOperatorFamily(AlterOperatorFamily { syntax })
31858 }
31859 SyntaxKind::ALTER_POLICY => Stmt::AlterPolicy(AlterPolicy { syntax }),
31860 SyntaxKind::ALTER_PROCEDURE => Stmt::AlterProcedure(AlterProcedure { syntax }),
31861 SyntaxKind::ALTER_PUBLICATION => Stmt::AlterPublication(AlterPublication { syntax }),
31862 SyntaxKind::ALTER_ROLE => Stmt::AlterRole(AlterRole { syntax }),
31863 SyntaxKind::ALTER_ROUTINE => Stmt::AlterRoutine(AlterRoutine { syntax }),
31864 SyntaxKind::ALTER_RULE => Stmt::AlterRule(AlterRule { syntax }),
31865 SyntaxKind::ALTER_SCHEMA => Stmt::AlterSchema(AlterSchema { syntax }),
31866 SyntaxKind::ALTER_SEQUENCE => Stmt::AlterSequence(AlterSequence { syntax }),
31867 SyntaxKind::ALTER_SERVER => Stmt::AlterServer(AlterServer { syntax }),
31868 SyntaxKind::ALTER_STATISTICS => Stmt::AlterStatistics(AlterStatistics { syntax }),
31869 SyntaxKind::ALTER_SUBSCRIPTION => Stmt::AlterSubscription(AlterSubscription { syntax }),
31870 SyntaxKind::ALTER_SYSTEM => Stmt::AlterSystem(AlterSystem { syntax }),
31871 SyntaxKind::ALTER_TABLE => Stmt::AlterTable(AlterTable { syntax }),
31872 SyntaxKind::ALTER_TABLESPACE => Stmt::AlterTablespace(AlterTablespace { syntax }),
31873 SyntaxKind::ALTER_TEXT_SEARCH_CONFIGURATION => {
31874 Stmt::AlterTextSearchConfiguration(AlterTextSearchConfiguration { syntax })
31875 }
31876 SyntaxKind::ALTER_TEXT_SEARCH_DICTIONARY => {
31877 Stmt::AlterTextSearchDictionary(AlterTextSearchDictionary { syntax })
31878 }
31879 SyntaxKind::ALTER_TEXT_SEARCH_PARSER => {
31880 Stmt::AlterTextSearchParser(AlterTextSearchParser { syntax })
31881 }
31882 SyntaxKind::ALTER_TEXT_SEARCH_TEMPLATE => {
31883 Stmt::AlterTextSearchTemplate(AlterTextSearchTemplate { syntax })
31884 }
31885 SyntaxKind::ALTER_TRIGGER => Stmt::AlterTrigger(AlterTrigger { syntax }),
31886 SyntaxKind::ALTER_TYPE => Stmt::AlterType(AlterType { syntax }),
31887 SyntaxKind::ALTER_USER => Stmt::AlterUser(AlterUser { syntax }),
31888 SyntaxKind::ALTER_USER_MAPPING => Stmt::AlterUserMapping(AlterUserMapping { syntax }),
31889 SyntaxKind::ALTER_VIEW => Stmt::AlterView(AlterView { syntax }),
31890 SyntaxKind::ANALYZE => Stmt::Analyze(Analyze { syntax }),
31891 SyntaxKind::BEGIN => Stmt::Begin(Begin { syntax }),
31892 SyntaxKind::CALL => Stmt::Call(Call { syntax }),
31893 SyntaxKind::CHECKPOINT => Stmt::Checkpoint(Checkpoint { syntax }),
31894 SyntaxKind::CLOSE => Stmt::Close(Close { syntax }),
31895 SyntaxKind::CLUSTER => Stmt::Cluster(Cluster { syntax }),
31896 SyntaxKind::COMMENT_ON => Stmt::CommentOn(CommentOn { syntax }),
31897 SyntaxKind::COMMIT => Stmt::Commit(Commit { syntax }),
31898 SyntaxKind::COPY => Stmt::Copy(Copy { syntax }),
31899 SyntaxKind::CREATE_ACCESS_METHOD => {
31900 Stmt::CreateAccessMethod(CreateAccessMethod { syntax })
31901 }
31902 SyntaxKind::CREATE_AGGREGATE => Stmt::CreateAggregate(CreateAggregate { syntax }),
31903 SyntaxKind::CREATE_CAST => Stmt::CreateCast(CreateCast { syntax }),
31904 SyntaxKind::CREATE_COLLATION => Stmt::CreateCollation(CreateCollation { syntax }),
31905 SyntaxKind::CREATE_CONVERSION => Stmt::CreateConversion(CreateConversion { syntax }),
31906 SyntaxKind::CREATE_DATABASE => Stmt::CreateDatabase(CreateDatabase { syntax }),
31907 SyntaxKind::CREATE_DOMAIN => Stmt::CreateDomain(CreateDomain { syntax }),
31908 SyntaxKind::CREATE_EVENT_TRIGGER => {
31909 Stmt::CreateEventTrigger(CreateEventTrigger { syntax })
31910 }
31911 SyntaxKind::CREATE_EXTENSION => Stmt::CreateExtension(CreateExtension { syntax }),
31912 SyntaxKind::CREATE_FOREIGN_DATA_WRAPPER => {
31913 Stmt::CreateForeignDataWrapper(CreateForeignDataWrapper { syntax })
31914 }
31915 SyntaxKind::CREATE_FOREIGN_TABLE => {
31916 Stmt::CreateForeignTable(CreateForeignTable { syntax })
31917 }
31918 SyntaxKind::CREATE_FUNCTION => Stmt::CreateFunction(CreateFunction { syntax }),
31919 SyntaxKind::CREATE_GROUP => Stmt::CreateGroup(CreateGroup { syntax }),
31920 SyntaxKind::CREATE_INDEX => Stmt::CreateIndex(CreateIndex { syntax }),
31921 SyntaxKind::CREATE_LANGUAGE => Stmt::CreateLanguage(CreateLanguage { syntax }),
31922 SyntaxKind::CREATE_MATERIALIZED_VIEW => {
31923 Stmt::CreateMaterializedView(CreateMaterializedView { syntax })
31924 }
31925 SyntaxKind::CREATE_OPERATOR => Stmt::CreateOperator(CreateOperator { syntax }),
31926 SyntaxKind::CREATE_OPERATOR_CLASS => {
31927 Stmt::CreateOperatorClass(CreateOperatorClass { syntax })
31928 }
31929 SyntaxKind::CREATE_OPERATOR_FAMILY => {
31930 Stmt::CreateOperatorFamily(CreateOperatorFamily { syntax })
31931 }
31932 SyntaxKind::CREATE_POLICY => Stmt::CreatePolicy(CreatePolicy { syntax }),
31933 SyntaxKind::CREATE_PROCEDURE => Stmt::CreateProcedure(CreateProcedure { syntax }),
31934 SyntaxKind::CREATE_PUBLICATION => Stmt::CreatePublication(CreatePublication { syntax }),
31935 SyntaxKind::CREATE_ROLE => Stmt::CreateRole(CreateRole { syntax }),
31936 SyntaxKind::CREATE_RULE => Stmt::CreateRule(CreateRule { syntax }),
31937 SyntaxKind::CREATE_SCHEMA => Stmt::CreateSchema(CreateSchema { syntax }),
31938 SyntaxKind::CREATE_SEQUENCE => Stmt::CreateSequence(CreateSequence { syntax }),
31939 SyntaxKind::CREATE_SERVER => Stmt::CreateServer(CreateServer { syntax }),
31940 SyntaxKind::CREATE_STATISTICS => Stmt::CreateStatistics(CreateStatistics { syntax }),
31941 SyntaxKind::CREATE_SUBSCRIPTION => {
31942 Stmt::CreateSubscription(CreateSubscription { syntax })
31943 }
31944 SyntaxKind::CREATE_TABLE => Stmt::CreateTable(CreateTable { syntax }),
31945 SyntaxKind::CREATE_TABLE_AS => Stmt::CreateTableAs(CreateTableAs { syntax }),
31946 SyntaxKind::CREATE_TABLESPACE => Stmt::CreateTablespace(CreateTablespace { syntax }),
31947 SyntaxKind::CREATE_TEXT_SEARCH_CONFIGURATION => {
31948 Stmt::CreateTextSearchConfiguration(CreateTextSearchConfiguration { syntax })
31949 }
31950 SyntaxKind::CREATE_TEXT_SEARCH_DICTIONARY => {
31951 Stmt::CreateTextSearchDictionary(CreateTextSearchDictionary { syntax })
31952 }
31953 SyntaxKind::CREATE_TEXT_SEARCH_PARSER => {
31954 Stmt::CreateTextSearchParser(CreateTextSearchParser { syntax })
31955 }
31956 SyntaxKind::CREATE_TEXT_SEARCH_TEMPLATE => {
31957 Stmt::CreateTextSearchTemplate(CreateTextSearchTemplate { syntax })
31958 }
31959 SyntaxKind::CREATE_TRANSFORM => Stmt::CreateTransform(CreateTransform { syntax }),
31960 SyntaxKind::CREATE_TRIGGER => Stmt::CreateTrigger(CreateTrigger { syntax }),
31961 SyntaxKind::CREATE_TYPE => Stmt::CreateType(CreateType { syntax }),
31962 SyntaxKind::CREATE_USER => Stmt::CreateUser(CreateUser { syntax }),
31963 SyntaxKind::CREATE_USER_MAPPING => {
31964 Stmt::CreateUserMapping(CreateUserMapping { syntax })
31965 }
31966 SyntaxKind::CREATE_VIEW => Stmt::CreateView(CreateView { syntax }),
31967 SyntaxKind::DEALLOCATE => Stmt::Deallocate(Deallocate { syntax }),
31968 SyntaxKind::DECLARE => Stmt::Declare(Declare { syntax }),
31969 SyntaxKind::DELETE => Stmt::Delete(Delete { syntax }),
31970 SyntaxKind::DISCARD => Stmt::Discard(Discard { syntax }),
31971 SyntaxKind::DO => Stmt::Do(Do { syntax }),
31972 SyntaxKind::DROP_ACCESS_METHOD => Stmt::DropAccessMethod(DropAccessMethod { syntax }),
31973 SyntaxKind::DROP_AGGREGATE => Stmt::DropAggregate(DropAggregate { syntax }),
31974 SyntaxKind::DROP_CAST => Stmt::DropCast(DropCast { syntax }),
31975 SyntaxKind::DROP_COLLATION => Stmt::DropCollation(DropCollation { syntax }),
31976 SyntaxKind::DROP_CONVERSION => Stmt::DropConversion(DropConversion { syntax }),
31977 SyntaxKind::DROP_DATABASE => Stmt::DropDatabase(DropDatabase { syntax }),
31978 SyntaxKind::DROP_DOMAIN => Stmt::DropDomain(DropDomain { syntax }),
31979 SyntaxKind::DROP_EVENT_TRIGGER => Stmt::DropEventTrigger(DropEventTrigger { syntax }),
31980 SyntaxKind::DROP_EXTENSION => Stmt::DropExtension(DropExtension { syntax }),
31981 SyntaxKind::DROP_FOREIGN_DATA_WRAPPER => {
31982 Stmt::DropForeignDataWrapper(DropForeignDataWrapper { syntax })
31983 }
31984 SyntaxKind::DROP_FOREIGN_TABLE => Stmt::DropForeignTable(DropForeignTable { syntax }),
31985 SyntaxKind::DROP_FUNCTION => Stmt::DropFunction(DropFunction { syntax }),
31986 SyntaxKind::DROP_GROUP => Stmt::DropGroup(DropGroup { syntax }),
31987 SyntaxKind::DROP_INDEX => Stmt::DropIndex(DropIndex { syntax }),
31988 SyntaxKind::DROP_LANGUAGE => Stmt::DropLanguage(DropLanguage { syntax }),
31989 SyntaxKind::DROP_MATERIALIZED_VIEW => {
31990 Stmt::DropMaterializedView(DropMaterializedView { syntax })
31991 }
31992 SyntaxKind::DROP_OPERATOR => Stmt::DropOperator(DropOperator { syntax }),
31993 SyntaxKind::DROP_OPERATOR_CLASS => {
31994 Stmt::DropOperatorClass(DropOperatorClass { syntax })
31995 }
31996 SyntaxKind::DROP_OPERATOR_FAMILY => {
31997 Stmt::DropOperatorFamily(DropOperatorFamily { syntax })
31998 }
31999 SyntaxKind::DROP_OWNED => Stmt::DropOwned(DropOwned { syntax }),
32000 SyntaxKind::DROP_POLICY => Stmt::DropPolicy(DropPolicy { syntax }),
32001 SyntaxKind::DROP_PROCEDURE => Stmt::DropProcedure(DropProcedure { syntax }),
32002 SyntaxKind::DROP_PUBLICATION => Stmt::DropPublication(DropPublication { syntax }),
32003 SyntaxKind::DROP_ROLE => Stmt::DropRole(DropRole { syntax }),
32004 SyntaxKind::DROP_ROUTINE => Stmt::DropRoutine(DropRoutine { syntax }),
32005 SyntaxKind::DROP_RULE => Stmt::DropRule(DropRule { syntax }),
32006 SyntaxKind::DROP_SCHEMA => Stmt::DropSchema(DropSchema { syntax }),
32007 SyntaxKind::DROP_SEQUENCE => Stmt::DropSequence(DropSequence { syntax }),
32008 SyntaxKind::DROP_SERVER => Stmt::DropServer(DropServer { syntax }),
32009 SyntaxKind::DROP_STATISTICS => Stmt::DropStatistics(DropStatistics { syntax }),
32010 SyntaxKind::DROP_SUBSCRIPTION => Stmt::DropSubscription(DropSubscription { syntax }),
32011 SyntaxKind::DROP_TABLE => Stmt::DropTable(DropTable { syntax }),
32012 SyntaxKind::DROP_TABLESPACE => Stmt::DropTablespace(DropTablespace { syntax }),
32013 SyntaxKind::DROP_TEXT_SEARCH_CONFIG => {
32014 Stmt::DropTextSearchConfig(DropTextSearchConfig { syntax })
32015 }
32016 SyntaxKind::DROP_TEXT_SEARCH_DICT => {
32017 Stmt::DropTextSearchDict(DropTextSearchDict { syntax })
32018 }
32019 SyntaxKind::DROP_TEXT_SEARCH_PARSER => {
32020 Stmt::DropTextSearchParser(DropTextSearchParser { syntax })
32021 }
32022 SyntaxKind::DROP_TEXT_SEARCH_TEMPLATE => {
32023 Stmt::DropTextSearchTemplate(DropTextSearchTemplate { syntax })
32024 }
32025 SyntaxKind::DROP_TRANSFORM => Stmt::DropTransform(DropTransform { syntax }),
32026 SyntaxKind::DROP_TRIGGER => Stmt::DropTrigger(DropTrigger { syntax }),
32027 SyntaxKind::DROP_TYPE => Stmt::DropType(DropType { syntax }),
32028 SyntaxKind::DROP_USER => Stmt::DropUser(DropUser { syntax }),
32029 SyntaxKind::DROP_USER_MAPPING => Stmt::DropUserMapping(DropUserMapping { syntax }),
32030 SyntaxKind::DROP_VIEW => Stmt::DropView(DropView { syntax }),
32031 SyntaxKind::EXECUTE => Stmt::Execute(Execute { syntax }),
32032 SyntaxKind::EXPLAIN => Stmt::Explain(Explain { syntax }),
32033 SyntaxKind::FETCH => Stmt::Fetch(Fetch { syntax }),
32034 SyntaxKind::GRANT => Stmt::Grant(Grant { syntax }),
32035 SyntaxKind::IMPORT_FOREIGN_SCHEMA => {
32036 Stmt::ImportForeignSchema(ImportForeignSchema { syntax })
32037 }
32038 SyntaxKind::INSERT => Stmt::Insert(Insert { syntax }),
32039 SyntaxKind::LISTEN => Stmt::Listen(Listen { syntax }),
32040 SyntaxKind::LOAD => Stmt::Load(Load { syntax }),
32041 SyntaxKind::LOCK => Stmt::Lock(Lock { syntax }),
32042 SyntaxKind::MERGE => Stmt::Merge(Merge { syntax }),
32043 SyntaxKind::MOVE => Stmt::Move(Move { syntax }),
32044 SyntaxKind::NOTIFY => Stmt::Notify(Notify { syntax }),
32045 SyntaxKind::PAREN_SELECT => Stmt::ParenSelect(ParenSelect { syntax }),
32046 SyntaxKind::PREPARE => Stmt::Prepare(Prepare { syntax }),
32047 SyntaxKind::PREPARE_TRANSACTION => {
32048 Stmt::PrepareTransaction(PrepareTransaction { syntax })
32049 }
32050 SyntaxKind::REASSIGN => Stmt::Reassign(Reassign { syntax }),
32051 SyntaxKind::REFRESH => Stmt::Refresh(Refresh { syntax }),
32052 SyntaxKind::REINDEX => Stmt::Reindex(Reindex { syntax }),
32053 SyntaxKind::RELEASE_SAVEPOINT => Stmt::ReleaseSavepoint(ReleaseSavepoint { syntax }),
32054 SyntaxKind::RESET => Stmt::Reset(Reset { syntax }),
32055 SyntaxKind::RESET_SESSION_AUTH => Stmt::ResetSessionAuth(ResetSessionAuth { syntax }),
32056 SyntaxKind::REVOKE => Stmt::Revoke(Revoke { syntax }),
32057 SyntaxKind::ROLLBACK => Stmt::Rollback(Rollback { syntax }),
32058 SyntaxKind::SAVEPOINT => Stmt::Savepoint(Savepoint { syntax }),
32059 SyntaxKind::SECURITY_LABEL => Stmt::SecurityLabel(SecurityLabel { syntax }),
32060 SyntaxKind::SELECT => Stmt::Select(Select { syntax }),
32061 SyntaxKind::SELECT_INTO => Stmt::SelectInto(SelectInto { syntax }),
32062 SyntaxKind::SET => Stmt::Set(Set { syntax }),
32063 SyntaxKind::SET_CONSTRAINTS => Stmt::SetConstraints(SetConstraints { syntax }),
32064 SyntaxKind::SET_ROLE => Stmt::SetRole(SetRole { syntax }),
32065 SyntaxKind::SET_SESSION_AUTH => Stmt::SetSessionAuth(SetSessionAuth { syntax }),
32066 SyntaxKind::SET_TRANSACTION => Stmt::SetTransaction(SetTransaction { syntax }),
32067 SyntaxKind::SHOW => Stmt::Show(Show { syntax }),
32068 SyntaxKind::TABLE => Stmt::Table(Table { syntax }),
32069 SyntaxKind::TRUNCATE => Stmt::Truncate(Truncate { syntax }),
32070 SyntaxKind::UNLISTEN => Stmt::Unlisten(Unlisten { syntax }),
32071 SyntaxKind::UPDATE => Stmt::Update(Update { syntax }),
32072 SyntaxKind::VACUUM => Stmt::Vacuum(Vacuum { syntax }),
32073 SyntaxKind::VALUES => Stmt::Values(Values { syntax }),
32074 _ => {
32075 return None;
32076 }
32077 };
32078 Some(res)
32079 }
32080 #[inline]
32081 fn syntax(&self) -> &SyntaxNode {
32082 match self {
32083 Stmt::AlterAggregate(it) => &it.syntax,
32084 Stmt::AlterCollation(it) => &it.syntax,
32085 Stmt::AlterConversion(it) => &it.syntax,
32086 Stmt::AlterDatabase(it) => &it.syntax,
32087 Stmt::AlterDefaultPrivileges(it) => &it.syntax,
32088 Stmt::AlterDomain(it) => &it.syntax,
32089 Stmt::AlterEventTrigger(it) => &it.syntax,
32090 Stmt::AlterExtension(it) => &it.syntax,
32091 Stmt::AlterForeignDataWrapper(it) => &it.syntax,
32092 Stmt::AlterForeignTable(it) => &it.syntax,
32093 Stmt::AlterFunction(it) => &it.syntax,
32094 Stmt::AlterGroup(it) => &it.syntax,
32095 Stmt::AlterIndex(it) => &it.syntax,
32096 Stmt::AlterLanguage(it) => &it.syntax,
32097 Stmt::AlterLargeObject(it) => &it.syntax,
32098 Stmt::AlterMaterializedView(it) => &it.syntax,
32099 Stmt::AlterOperator(it) => &it.syntax,
32100 Stmt::AlterOperatorClass(it) => &it.syntax,
32101 Stmt::AlterOperatorFamily(it) => &it.syntax,
32102 Stmt::AlterPolicy(it) => &it.syntax,
32103 Stmt::AlterProcedure(it) => &it.syntax,
32104 Stmt::AlterPublication(it) => &it.syntax,
32105 Stmt::AlterRole(it) => &it.syntax,
32106 Stmt::AlterRoutine(it) => &it.syntax,
32107 Stmt::AlterRule(it) => &it.syntax,
32108 Stmt::AlterSchema(it) => &it.syntax,
32109 Stmt::AlterSequence(it) => &it.syntax,
32110 Stmt::AlterServer(it) => &it.syntax,
32111 Stmt::AlterStatistics(it) => &it.syntax,
32112 Stmt::AlterSubscription(it) => &it.syntax,
32113 Stmt::AlterSystem(it) => &it.syntax,
32114 Stmt::AlterTable(it) => &it.syntax,
32115 Stmt::AlterTablespace(it) => &it.syntax,
32116 Stmt::AlterTextSearchConfiguration(it) => &it.syntax,
32117 Stmt::AlterTextSearchDictionary(it) => &it.syntax,
32118 Stmt::AlterTextSearchParser(it) => &it.syntax,
32119 Stmt::AlterTextSearchTemplate(it) => &it.syntax,
32120 Stmt::AlterTrigger(it) => &it.syntax,
32121 Stmt::AlterType(it) => &it.syntax,
32122 Stmt::AlterUser(it) => &it.syntax,
32123 Stmt::AlterUserMapping(it) => &it.syntax,
32124 Stmt::AlterView(it) => &it.syntax,
32125 Stmt::Analyze(it) => &it.syntax,
32126 Stmt::Begin(it) => &it.syntax,
32127 Stmt::Call(it) => &it.syntax,
32128 Stmt::Checkpoint(it) => &it.syntax,
32129 Stmt::Close(it) => &it.syntax,
32130 Stmt::Cluster(it) => &it.syntax,
32131 Stmt::CommentOn(it) => &it.syntax,
32132 Stmt::Commit(it) => &it.syntax,
32133 Stmt::Copy(it) => &it.syntax,
32134 Stmt::CreateAccessMethod(it) => &it.syntax,
32135 Stmt::CreateAggregate(it) => &it.syntax,
32136 Stmt::CreateCast(it) => &it.syntax,
32137 Stmt::CreateCollation(it) => &it.syntax,
32138 Stmt::CreateConversion(it) => &it.syntax,
32139 Stmt::CreateDatabase(it) => &it.syntax,
32140 Stmt::CreateDomain(it) => &it.syntax,
32141 Stmt::CreateEventTrigger(it) => &it.syntax,
32142 Stmt::CreateExtension(it) => &it.syntax,
32143 Stmt::CreateForeignDataWrapper(it) => &it.syntax,
32144 Stmt::CreateForeignTable(it) => &it.syntax,
32145 Stmt::CreateFunction(it) => &it.syntax,
32146 Stmt::CreateGroup(it) => &it.syntax,
32147 Stmt::CreateIndex(it) => &it.syntax,
32148 Stmt::CreateLanguage(it) => &it.syntax,
32149 Stmt::CreateMaterializedView(it) => &it.syntax,
32150 Stmt::CreateOperator(it) => &it.syntax,
32151 Stmt::CreateOperatorClass(it) => &it.syntax,
32152 Stmt::CreateOperatorFamily(it) => &it.syntax,
32153 Stmt::CreatePolicy(it) => &it.syntax,
32154 Stmt::CreateProcedure(it) => &it.syntax,
32155 Stmt::CreatePublication(it) => &it.syntax,
32156 Stmt::CreateRole(it) => &it.syntax,
32157 Stmt::CreateRule(it) => &it.syntax,
32158 Stmt::CreateSchema(it) => &it.syntax,
32159 Stmt::CreateSequence(it) => &it.syntax,
32160 Stmt::CreateServer(it) => &it.syntax,
32161 Stmt::CreateStatistics(it) => &it.syntax,
32162 Stmt::CreateSubscription(it) => &it.syntax,
32163 Stmt::CreateTable(it) => &it.syntax,
32164 Stmt::CreateTableAs(it) => &it.syntax,
32165 Stmt::CreateTablespace(it) => &it.syntax,
32166 Stmt::CreateTextSearchConfiguration(it) => &it.syntax,
32167 Stmt::CreateTextSearchDictionary(it) => &it.syntax,
32168 Stmt::CreateTextSearchParser(it) => &it.syntax,
32169 Stmt::CreateTextSearchTemplate(it) => &it.syntax,
32170 Stmt::CreateTransform(it) => &it.syntax,
32171 Stmt::CreateTrigger(it) => &it.syntax,
32172 Stmt::CreateType(it) => &it.syntax,
32173 Stmt::CreateUser(it) => &it.syntax,
32174 Stmt::CreateUserMapping(it) => &it.syntax,
32175 Stmt::CreateView(it) => &it.syntax,
32176 Stmt::Deallocate(it) => &it.syntax,
32177 Stmt::Declare(it) => &it.syntax,
32178 Stmt::Delete(it) => &it.syntax,
32179 Stmt::Discard(it) => &it.syntax,
32180 Stmt::Do(it) => &it.syntax,
32181 Stmt::DropAccessMethod(it) => &it.syntax,
32182 Stmt::DropAggregate(it) => &it.syntax,
32183 Stmt::DropCast(it) => &it.syntax,
32184 Stmt::DropCollation(it) => &it.syntax,
32185 Stmt::DropConversion(it) => &it.syntax,
32186 Stmt::DropDatabase(it) => &it.syntax,
32187 Stmt::DropDomain(it) => &it.syntax,
32188 Stmt::DropEventTrigger(it) => &it.syntax,
32189 Stmt::DropExtension(it) => &it.syntax,
32190 Stmt::DropForeignDataWrapper(it) => &it.syntax,
32191 Stmt::DropForeignTable(it) => &it.syntax,
32192 Stmt::DropFunction(it) => &it.syntax,
32193 Stmt::DropGroup(it) => &it.syntax,
32194 Stmt::DropIndex(it) => &it.syntax,
32195 Stmt::DropLanguage(it) => &it.syntax,
32196 Stmt::DropMaterializedView(it) => &it.syntax,
32197 Stmt::DropOperator(it) => &it.syntax,
32198 Stmt::DropOperatorClass(it) => &it.syntax,
32199 Stmt::DropOperatorFamily(it) => &it.syntax,
32200 Stmt::DropOwned(it) => &it.syntax,
32201 Stmt::DropPolicy(it) => &it.syntax,
32202 Stmt::DropProcedure(it) => &it.syntax,
32203 Stmt::DropPublication(it) => &it.syntax,
32204 Stmt::DropRole(it) => &it.syntax,
32205 Stmt::DropRoutine(it) => &it.syntax,
32206 Stmt::DropRule(it) => &it.syntax,
32207 Stmt::DropSchema(it) => &it.syntax,
32208 Stmt::DropSequence(it) => &it.syntax,
32209 Stmt::DropServer(it) => &it.syntax,
32210 Stmt::DropStatistics(it) => &it.syntax,
32211 Stmt::DropSubscription(it) => &it.syntax,
32212 Stmt::DropTable(it) => &it.syntax,
32213 Stmt::DropTablespace(it) => &it.syntax,
32214 Stmt::DropTextSearchConfig(it) => &it.syntax,
32215 Stmt::DropTextSearchDict(it) => &it.syntax,
32216 Stmt::DropTextSearchParser(it) => &it.syntax,
32217 Stmt::DropTextSearchTemplate(it) => &it.syntax,
32218 Stmt::DropTransform(it) => &it.syntax,
32219 Stmt::DropTrigger(it) => &it.syntax,
32220 Stmt::DropType(it) => &it.syntax,
32221 Stmt::DropUser(it) => &it.syntax,
32222 Stmt::DropUserMapping(it) => &it.syntax,
32223 Stmt::DropView(it) => &it.syntax,
32224 Stmt::Execute(it) => &it.syntax,
32225 Stmt::Explain(it) => &it.syntax,
32226 Stmt::Fetch(it) => &it.syntax,
32227 Stmt::Grant(it) => &it.syntax,
32228 Stmt::ImportForeignSchema(it) => &it.syntax,
32229 Stmt::Insert(it) => &it.syntax,
32230 Stmt::Listen(it) => &it.syntax,
32231 Stmt::Load(it) => &it.syntax,
32232 Stmt::Lock(it) => &it.syntax,
32233 Stmt::Merge(it) => &it.syntax,
32234 Stmt::Move(it) => &it.syntax,
32235 Stmt::Notify(it) => &it.syntax,
32236 Stmt::ParenSelect(it) => &it.syntax,
32237 Stmt::Prepare(it) => &it.syntax,
32238 Stmt::PrepareTransaction(it) => &it.syntax,
32239 Stmt::Reassign(it) => &it.syntax,
32240 Stmt::Refresh(it) => &it.syntax,
32241 Stmt::Reindex(it) => &it.syntax,
32242 Stmt::ReleaseSavepoint(it) => &it.syntax,
32243 Stmt::Reset(it) => &it.syntax,
32244 Stmt::ResetSessionAuth(it) => &it.syntax,
32245 Stmt::Revoke(it) => &it.syntax,
32246 Stmt::Rollback(it) => &it.syntax,
32247 Stmt::Savepoint(it) => &it.syntax,
32248 Stmt::SecurityLabel(it) => &it.syntax,
32249 Stmt::Select(it) => &it.syntax,
32250 Stmt::SelectInto(it) => &it.syntax,
32251 Stmt::Set(it) => &it.syntax,
32252 Stmt::SetConstraints(it) => &it.syntax,
32253 Stmt::SetRole(it) => &it.syntax,
32254 Stmt::SetSessionAuth(it) => &it.syntax,
32255 Stmt::SetTransaction(it) => &it.syntax,
32256 Stmt::Show(it) => &it.syntax,
32257 Stmt::Table(it) => &it.syntax,
32258 Stmt::Truncate(it) => &it.syntax,
32259 Stmt::Unlisten(it) => &it.syntax,
32260 Stmt::Update(it) => &it.syntax,
32261 Stmt::Vacuum(it) => &it.syntax,
32262 Stmt::Values(it) => &it.syntax,
32263 }
32264 }
32265}
32266impl From<AlterAggregate> for Stmt {
32267 #[inline]
32268 fn from(node: AlterAggregate) -> Stmt {
32269 Stmt::AlterAggregate(node)
32270 }
32271}
32272impl From<AlterCollation> for Stmt {
32273 #[inline]
32274 fn from(node: AlterCollation) -> Stmt {
32275 Stmt::AlterCollation(node)
32276 }
32277}
32278impl From<AlterConversion> for Stmt {
32279 #[inline]
32280 fn from(node: AlterConversion) -> Stmt {
32281 Stmt::AlterConversion(node)
32282 }
32283}
32284impl From<AlterDatabase> for Stmt {
32285 #[inline]
32286 fn from(node: AlterDatabase) -> Stmt {
32287 Stmt::AlterDatabase(node)
32288 }
32289}
32290impl From<AlterDefaultPrivileges> for Stmt {
32291 #[inline]
32292 fn from(node: AlterDefaultPrivileges) -> Stmt {
32293 Stmt::AlterDefaultPrivileges(node)
32294 }
32295}
32296impl From<AlterDomain> for Stmt {
32297 #[inline]
32298 fn from(node: AlterDomain) -> Stmt {
32299 Stmt::AlterDomain(node)
32300 }
32301}
32302impl From<AlterEventTrigger> for Stmt {
32303 #[inline]
32304 fn from(node: AlterEventTrigger) -> Stmt {
32305 Stmt::AlterEventTrigger(node)
32306 }
32307}
32308impl From<AlterExtension> for Stmt {
32309 #[inline]
32310 fn from(node: AlterExtension) -> Stmt {
32311 Stmt::AlterExtension(node)
32312 }
32313}
32314impl From<AlterForeignDataWrapper> for Stmt {
32315 #[inline]
32316 fn from(node: AlterForeignDataWrapper) -> Stmt {
32317 Stmt::AlterForeignDataWrapper(node)
32318 }
32319}
32320impl From<AlterForeignTable> for Stmt {
32321 #[inline]
32322 fn from(node: AlterForeignTable) -> Stmt {
32323 Stmt::AlterForeignTable(node)
32324 }
32325}
32326impl From<AlterFunction> for Stmt {
32327 #[inline]
32328 fn from(node: AlterFunction) -> Stmt {
32329 Stmt::AlterFunction(node)
32330 }
32331}
32332impl From<AlterGroup> for Stmt {
32333 #[inline]
32334 fn from(node: AlterGroup) -> Stmt {
32335 Stmt::AlterGroup(node)
32336 }
32337}
32338impl From<AlterIndex> for Stmt {
32339 #[inline]
32340 fn from(node: AlterIndex) -> Stmt {
32341 Stmt::AlterIndex(node)
32342 }
32343}
32344impl From<AlterLanguage> for Stmt {
32345 #[inline]
32346 fn from(node: AlterLanguage) -> Stmt {
32347 Stmt::AlterLanguage(node)
32348 }
32349}
32350impl From<AlterLargeObject> for Stmt {
32351 #[inline]
32352 fn from(node: AlterLargeObject) -> Stmt {
32353 Stmt::AlterLargeObject(node)
32354 }
32355}
32356impl From<AlterMaterializedView> for Stmt {
32357 #[inline]
32358 fn from(node: AlterMaterializedView) -> Stmt {
32359 Stmt::AlterMaterializedView(node)
32360 }
32361}
32362impl From<AlterOperator> for Stmt {
32363 #[inline]
32364 fn from(node: AlterOperator) -> Stmt {
32365 Stmt::AlterOperator(node)
32366 }
32367}
32368impl From<AlterOperatorClass> for Stmt {
32369 #[inline]
32370 fn from(node: AlterOperatorClass) -> Stmt {
32371 Stmt::AlterOperatorClass(node)
32372 }
32373}
32374impl From<AlterOperatorFamily> for Stmt {
32375 #[inline]
32376 fn from(node: AlterOperatorFamily) -> Stmt {
32377 Stmt::AlterOperatorFamily(node)
32378 }
32379}
32380impl From<AlterPolicy> for Stmt {
32381 #[inline]
32382 fn from(node: AlterPolicy) -> Stmt {
32383 Stmt::AlterPolicy(node)
32384 }
32385}
32386impl From<AlterProcedure> for Stmt {
32387 #[inline]
32388 fn from(node: AlterProcedure) -> Stmt {
32389 Stmt::AlterProcedure(node)
32390 }
32391}
32392impl From<AlterPublication> for Stmt {
32393 #[inline]
32394 fn from(node: AlterPublication) -> Stmt {
32395 Stmt::AlterPublication(node)
32396 }
32397}
32398impl From<AlterRole> for Stmt {
32399 #[inline]
32400 fn from(node: AlterRole) -> Stmt {
32401 Stmt::AlterRole(node)
32402 }
32403}
32404impl From<AlterRoutine> for Stmt {
32405 #[inline]
32406 fn from(node: AlterRoutine) -> Stmt {
32407 Stmt::AlterRoutine(node)
32408 }
32409}
32410impl From<AlterRule> for Stmt {
32411 #[inline]
32412 fn from(node: AlterRule) -> Stmt {
32413 Stmt::AlterRule(node)
32414 }
32415}
32416impl From<AlterSchema> for Stmt {
32417 #[inline]
32418 fn from(node: AlterSchema) -> Stmt {
32419 Stmt::AlterSchema(node)
32420 }
32421}
32422impl From<AlterSequence> for Stmt {
32423 #[inline]
32424 fn from(node: AlterSequence) -> Stmt {
32425 Stmt::AlterSequence(node)
32426 }
32427}
32428impl From<AlterServer> for Stmt {
32429 #[inline]
32430 fn from(node: AlterServer) -> Stmt {
32431 Stmt::AlterServer(node)
32432 }
32433}
32434impl From<AlterStatistics> for Stmt {
32435 #[inline]
32436 fn from(node: AlterStatistics) -> Stmt {
32437 Stmt::AlterStatistics(node)
32438 }
32439}
32440impl From<AlterSubscription> for Stmt {
32441 #[inline]
32442 fn from(node: AlterSubscription) -> Stmt {
32443 Stmt::AlterSubscription(node)
32444 }
32445}
32446impl From<AlterSystem> for Stmt {
32447 #[inline]
32448 fn from(node: AlterSystem) -> Stmt {
32449 Stmt::AlterSystem(node)
32450 }
32451}
32452impl From<AlterTable> for Stmt {
32453 #[inline]
32454 fn from(node: AlterTable) -> Stmt {
32455 Stmt::AlterTable(node)
32456 }
32457}
32458impl From<AlterTablespace> for Stmt {
32459 #[inline]
32460 fn from(node: AlterTablespace) -> Stmt {
32461 Stmt::AlterTablespace(node)
32462 }
32463}
32464impl From<AlterTextSearchConfiguration> for Stmt {
32465 #[inline]
32466 fn from(node: AlterTextSearchConfiguration) -> Stmt {
32467 Stmt::AlterTextSearchConfiguration(node)
32468 }
32469}
32470impl From<AlterTextSearchDictionary> for Stmt {
32471 #[inline]
32472 fn from(node: AlterTextSearchDictionary) -> Stmt {
32473 Stmt::AlterTextSearchDictionary(node)
32474 }
32475}
32476impl From<AlterTextSearchParser> for Stmt {
32477 #[inline]
32478 fn from(node: AlterTextSearchParser) -> Stmt {
32479 Stmt::AlterTextSearchParser(node)
32480 }
32481}
32482impl From<AlterTextSearchTemplate> for Stmt {
32483 #[inline]
32484 fn from(node: AlterTextSearchTemplate) -> Stmt {
32485 Stmt::AlterTextSearchTemplate(node)
32486 }
32487}
32488impl From<AlterTrigger> for Stmt {
32489 #[inline]
32490 fn from(node: AlterTrigger) -> Stmt {
32491 Stmt::AlterTrigger(node)
32492 }
32493}
32494impl From<AlterType> for Stmt {
32495 #[inline]
32496 fn from(node: AlterType) -> Stmt {
32497 Stmt::AlterType(node)
32498 }
32499}
32500impl From<AlterUser> for Stmt {
32501 #[inline]
32502 fn from(node: AlterUser) -> Stmt {
32503 Stmt::AlterUser(node)
32504 }
32505}
32506impl From<AlterUserMapping> for Stmt {
32507 #[inline]
32508 fn from(node: AlterUserMapping) -> Stmt {
32509 Stmt::AlterUserMapping(node)
32510 }
32511}
32512impl From<AlterView> for Stmt {
32513 #[inline]
32514 fn from(node: AlterView) -> Stmt {
32515 Stmt::AlterView(node)
32516 }
32517}
32518impl From<Analyze> for Stmt {
32519 #[inline]
32520 fn from(node: Analyze) -> Stmt {
32521 Stmt::Analyze(node)
32522 }
32523}
32524impl From<Begin> for Stmt {
32525 #[inline]
32526 fn from(node: Begin) -> Stmt {
32527 Stmt::Begin(node)
32528 }
32529}
32530impl From<Call> for Stmt {
32531 #[inline]
32532 fn from(node: Call) -> Stmt {
32533 Stmt::Call(node)
32534 }
32535}
32536impl From<Checkpoint> for Stmt {
32537 #[inline]
32538 fn from(node: Checkpoint) -> Stmt {
32539 Stmt::Checkpoint(node)
32540 }
32541}
32542impl From<Close> for Stmt {
32543 #[inline]
32544 fn from(node: Close) -> Stmt {
32545 Stmt::Close(node)
32546 }
32547}
32548impl From<Cluster> for Stmt {
32549 #[inline]
32550 fn from(node: Cluster) -> Stmt {
32551 Stmt::Cluster(node)
32552 }
32553}
32554impl From<CommentOn> for Stmt {
32555 #[inline]
32556 fn from(node: CommentOn) -> Stmt {
32557 Stmt::CommentOn(node)
32558 }
32559}
32560impl From<Commit> for Stmt {
32561 #[inline]
32562 fn from(node: Commit) -> Stmt {
32563 Stmt::Commit(node)
32564 }
32565}
32566impl From<Copy> for Stmt {
32567 #[inline]
32568 fn from(node: Copy) -> Stmt {
32569 Stmt::Copy(node)
32570 }
32571}
32572impl From<CreateAccessMethod> for Stmt {
32573 #[inline]
32574 fn from(node: CreateAccessMethod) -> Stmt {
32575 Stmt::CreateAccessMethod(node)
32576 }
32577}
32578impl From<CreateAggregate> for Stmt {
32579 #[inline]
32580 fn from(node: CreateAggregate) -> Stmt {
32581 Stmt::CreateAggregate(node)
32582 }
32583}
32584impl From<CreateCast> for Stmt {
32585 #[inline]
32586 fn from(node: CreateCast) -> Stmt {
32587 Stmt::CreateCast(node)
32588 }
32589}
32590impl From<CreateCollation> for Stmt {
32591 #[inline]
32592 fn from(node: CreateCollation) -> Stmt {
32593 Stmt::CreateCollation(node)
32594 }
32595}
32596impl From<CreateConversion> for Stmt {
32597 #[inline]
32598 fn from(node: CreateConversion) -> Stmt {
32599 Stmt::CreateConversion(node)
32600 }
32601}
32602impl From<CreateDatabase> for Stmt {
32603 #[inline]
32604 fn from(node: CreateDatabase) -> Stmt {
32605 Stmt::CreateDatabase(node)
32606 }
32607}
32608impl From<CreateDomain> for Stmt {
32609 #[inline]
32610 fn from(node: CreateDomain) -> Stmt {
32611 Stmt::CreateDomain(node)
32612 }
32613}
32614impl From<CreateEventTrigger> for Stmt {
32615 #[inline]
32616 fn from(node: CreateEventTrigger) -> Stmt {
32617 Stmt::CreateEventTrigger(node)
32618 }
32619}
32620impl From<CreateExtension> for Stmt {
32621 #[inline]
32622 fn from(node: CreateExtension) -> Stmt {
32623 Stmt::CreateExtension(node)
32624 }
32625}
32626impl From<CreateForeignDataWrapper> for Stmt {
32627 #[inline]
32628 fn from(node: CreateForeignDataWrapper) -> Stmt {
32629 Stmt::CreateForeignDataWrapper(node)
32630 }
32631}
32632impl From<CreateForeignTable> for Stmt {
32633 #[inline]
32634 fn from(node: CreateForeignTable) -> Stmt {
32635 Stmt::CreateForeignTable(node)
32636 }
32637}
32638impl From<CreateFunction> for Stmt {
32639 #[inline]
32640 fn from(node: CreateFunction) -> Stmt {
32641 Stmt::CreateFunction(node)
32642 }
32643}
32644impl From<CreateGroup> for Stmt {
32645 #[inline]
32646 fn from(node: CreateGroup) -> Stmt {
32647 Stmt::CreateGroup(node)
32648 }
32649}
32650impl From<CreateIndex> for Stmt {
32651 #[inline]
32652 fn from(node: CreateIndex) -> Stmt {
32653 Stmt::CreateIndex(node)
32654 }
32655}
32656impl From<CreateLanguage> for Stmt {
32657 #[inline]
32658 fn from(node: CreateLanguage) -> Stmt {
32659 Stmt::CreateLanguage(node)
32660 }
32661}
32662impl From<CreateMaterializedView> for Stmt {
32663 #[inline]
32664 fn from(node: CreateMaterializedView) -> Stmt {
32665 Stmt::CreateMaterializedView(node)
32666 }
32667}
32668impl From<CreateOperator> for Stmt {
32669 #[inline]
32670 fn from(node: CreateOperator) -> Stmt {
32671 Stmt::CreateOperator(node)
32672 }
32673}
32674impl From<CreateOperatorClass> for Stmt {
32675 #[inline]
32676 fn from(node: CreateOperatorClass) -> Stmt {
32677 Stmt::CreateOperatorClass(node)
32678 }
32679}
32680impl From<CreateOperatorFamily> for Stmt {
32681 #[inline]
32682 fn from(node: CreateOperatorFamily) -> Stmt {
32683 Stmt::CreateOperatorFamily(node)
32684 }
32685}
32686impl From<CreatePolicy> for Stmt {
32687 #[inline]
32688 fn from(node: CreatePolicy) -> Stmt {
32689 Stmt::CreatePolicy(node)
32690 }
32691}
32692impl From<CreateProcedure> for Stmt {
32693 #[inline]
32694 fn from(node: CreateProcedure) -> Stmt {
32695 Stmt::CreateProcedure(node)
32696 }
32697}
32698impl From<CreatePublication> for Stmt {
32699 #[inline]
32700 fn from(node: CreatePublication) -> Stmt {
32701 Stmt::CreatePublication(node)
32702 }
32703}
32704impl From<CreateRole> for Stmt {
32705 #[inline]
32706 fn from(node: CreateRole) -> Stmt {
32707 Stmt::CreateRole(node)
32708 }
32709}
32710impl From<CreateRule> for Stmt {
32711 #[inline]
32712 fn from(node: CreateRule) -> Stmt {
32713 Stmt::CreateRule(node)
32714 }
32715}
32716impl From<CreateSchema> for Stmt {
32717 #[inline]
32718 fn from(node: CreateSchema) -> Stmt {
32719 Stmt::CreateSchema(node)
32720 }
32721}
32722impl From<CreateSequence> for Stmt {
32723 #[inline]
32724 fn from(node: CreateSequence) -> Stmt {
32725 Stmt::CreateSequence(node)
32726 }
32727}
32728impl From<CreateServer> for Stmt {
32729 #[inline]
32730 fn from(node: CreateServer) -> Stmt {
32731 Stmt::CreateServer(node)
32732 }
32733}
32734impl From<CreateStatistics> for Stmt {
32735 #[inline]
32736 fn from(node: CreateStatistics) -> Stmt {
32737 Stmt::CreateStatistics(node)
32738 }
32739}
32740impl From<CreateSubscription> for Stmt {
32741 #[inline]
32742 fn from(node: CreateSubscription) -> Stmt {
32743 Stmt::CreateSubscription(node)
32744 }
32745}
32746impl From<CreateTable> for Stmt {
32747 #[inline]
32748 fn from(node: CreateTable) -> Stmt {
32749 Stmt::CreateTable(node)
32750 }
32751}
32752impl From<CreateTableAs> for Stmt {
32753 #[inline]
32754 fn from(node: CreateTableAs) -> Stmt {
32755 Stmt::CreateTableAs(node)
32756 }
32757}
32758impl From<CreateTablespace> for Stmt {
32759 #[inline]
32760 fn from(node: CreateTablespace) -> Stmt {
32761 Stmt::CreateTablespace(node)
32762 }
32763}
32764impl From<CreateTextSearchConfiguration> for Stmt {
32765 #[inline]
32766 fn from(node: CreateTextSearchConfiguration) -> Stmt {
32767 Stmt::CreateTextSearchConfiguration(node)
32768 }
32769}
32770impl From<CreateTextSearchDictionary> for Stmt {
32771 #[inline]
32772 fn from(node: CreateTextSearchDictionary) -> Stmt {
32773 Stmt::CreateTextSearchDictionary(node)
32774 }
32775}
32776impl From<CreateTextSearchParser> for Stmt {
32777 #[inline]
32778 fn from(node: CreateTextSearchParser) -> Stmt {
32779 Stmt::CreateTextSearchParser(node)
32780 }
32781}
32782impl From<CreateTextSearchTemplate> for Stmt {
32783 #[inline]
32784 fn from(node: CreateTextSearchTemplate) -> Stmt {
32785 Stmt::CreateTextSearchTemplate(node)
32786 }
32787}
32788impl From<CreateTransform> for Stmt {
32789 #[inline]
32790 fn from(node: CreateTransform) -> Stmt {
32791 Stmt::CreateTransform(node)
32792 }
32793}
32794impl From<CreateTrigger> for Stmt {
32795 #[inline]
32796 fn from(node: CreateTrigger) -> Stmt {
32797 Stmt::CreateTrigger(node)
32798 }
32799}
32800impl From<CreateType> for Stmt {
32801 #[inline]
32802 fn from(node: CreateType) -> Stmt {
32803 Stmt::CreateType(node)
32804 }
32805}
32806impl From<CreateUser> for Stmt {
32807 #[inline]
32808 fn from(node: CreateUser) -> Stmt {
32809 Stmt::CreateUser(node)
32810 }
32811}
32812impl From<CreateUserMapping> for Stmt {
32813 #[inline]
32814 fn from(node: CreateUserMapping) -> Stmt {
32815 Stmt::CreateUserMapping(node)
32816 }
32817}
32818impl From<CreateView> for Stmt {
32819 #[inline]
32820 fn from(node: CreateView) -> Stmt {
32821 Stmt::CreateView(node)
32822 }
32823}
32824impl From<Deallocate> for Stmt {
32825 #[inline]
32826 fn from(node: Deallocate) -> Stmt {
32827 Stmt::Deallocate(node)
32828 }
32829}
32830impl From<Declare> for Stmt {
32831 #[inline]
32832 fn from(node: Declare) -> Stmt {
32833 Stmt::Declare(node)
32834 }
32835}
32836impl From<Delete> for Stmt {
32837 #[inline]
32838 fn from(node: Delete) -> Stmt {
32839 Stmt::Delete(node)
32840 }
32841}
32842impl From<Discard> for Stmt {
32843 #[inline]
32844 fn from(node: Discard) -> Stmt {
32845 Stmt::Discard(node)
32846 }
32847}
32848impl From<Do> for Stmt {
32849 #[inline]
32850 fn from(node: Do) -> Stmt {
32851 Stmt::Do(node)
32852 }
32853}
32854impl From<DropAccessMethod> for Stmt {
32855 #[inline]
32856 fn from(node: DropAccessMethod) -> Stmt {
32857 Stmt::DropAccessMethod(node)
32858 }
32859}
32860impl From<DropAggregate> for Stmt {
32861 #[inline]
32862 fn from(node: DropAggregate) -> Stmt {
32863 Stmt::DropAggregate(node)
32864 }
32865}
32866impl From<DropCast> for Stmt {
32867 #[inline]
32868 fn from(node: DropCast) -> Stmt {
32869 Stmt::DropCast(node)
32870 }
32871}
32872impl From<DropCollation> for Stmt {
32873 #[inline]
32874 fn from(node: DropCollation) -> Stmt {
32875 Stmt::DropCollation(node)
32876 }
32877}
32878impl From<DropConversion> for Stmt {
32879 #[inline]
32880 fn from(node: DropConversion) -> Stmt {
32881 Stmt::DropConversion(node)
32882 }
32883}
32884impl From<DropDatabase> for Stmt {
32885 #[inline]
32886 fn from(node: DropDatabase) -> Stmt {
32887 Stmt::DropDatabase(node)
32888 }
32889}
32890impl From<DropDomain> for Stmt {
32891 #[inline]
32892 fn from(node: DropDomain) -> Stmt {
32893 Stmt::DropDomain(node)
32894 }
32895}
32896impl From<DropEventTrigger> for Stmt {
32897 #[inline]
32898 fn from(node: DropEventTrigger) -> Stmt {
32899 Stmt::DropEventTrigger(node)
32900 }
32901}
32902impl From<DropExtension> for Stmt {
32903 #[inline]
32904 fn from(node: DropExtension) -> Stmt {
32905 Stmt::DropExtension(node)
32906 }
32907}
32908impl From<DropForeignDataWrapper> for Stmt {
32909 #[inline]
32910 fn from(node: DropForeignDataWrapper) -> Stmt {
32911 Stmt::DropForeignDataWrapper(node)
32912 }
32913}
32914impl From<DropForeignTable> for Stmt {
32915 #[inline]
32916 fn from(node: DropForeignTable) -> Stmt {
32917 Stmt::DropForeignTable(node)
32918 }
32919}
32920impl From<DropFunction> for Stmt {
32921 #[inline]
32922 fn from(node: DropFunction) -> Stmt {
32923 Stmt::DropFunction(node)
32924 }
32925}
32926impl From<DropGroup> for Stmt {
32927 #[inline]
32928 fn from(node: DropGroup) -> Stmt {
32929 Stmt::DropGroup(node)
32930 }
32931}
32932impl From<DropIndex> for Stmt {
32933 #[inline]
32934 fn from(node: DropIndex) -> Stmt {
32935 Stmt::DropIndex(node)
32936 }
32937}
32938impl From<DropLanguage> for Stmt {
32939 #[inline]
32940 fn from(node: DropLanguage) -> Stmt {
32941 Stmt::DropLanguage(node)
32942 }
32943}
32944impl From<DropMaterializedView> for Stmt {
32945 #[inline]
32946 fn from(node: DropMaterializedView) -> Stmt {
32947 Stmt::DropMaterializedView(node)
32948 }
32949}
32950impl From<DropOperator> for Stmt {
32951 #[inline]
32952 fn from(node: DropOperator) -> Stmt {
32953 Stmt::DropOperator(node)
32954 }
32955}
32956impl From<DropOperatorClass> for Stmt {
32957 #[inline]
32958 fn from(node: DropOperatorClass) -> Stmt {
32959 Stmt::DropOperatorClass(node)
32960 }
32961}
32962impl From<DropOperatorFamily> for Stmt {
32963 #[inline]
32964 fn from(node: DropOperatorFamily) -> Stmt {
32965 Stmt::DropOperatorFamily(node)
32966 }
32967}
32968impl From<DropOwned> for Stmt {
32969 #[inline]
32970 fn from(node: DropOwned) -> Stmt {
32971 Stmt::DropOwned(node)
32972 }
32973}
32974impl From<DropPolicy> for Stmt {
32975 #[inline]
32976 fn from(node: DropPolicy) -> Stmt {
32977 Stmt::DropPolicy(node)
32978 }
32979}
32980impl From<DropProcedure> for Stmt {
32981 #[inline]
32982 fn from(node: DropProcedure) -> Stmt {
32983 Stmt::DropProcedure(node)
32984 }
32985}
32986impl From<DropPublication> for Stmt {
32987 #[inline]
32988 fn from(node: DropPublication) -> Stmt {
32989 Stmt::DropPublication(node)
32990 }
32991}
32992impl From<DropRole> for Stmt {
32993 #[inline]
32994 fn from(node: DropRole) -> Stmt {
32995 Stmt::DropRole(node)
32996 }
32997}
32998impl From<DropRoutine> for Stmt {
32999 #[inline]
33000 fn from(node: DropRoutine) -> Stmt {
33001 Stmt::DropRoutine(node)
33002 }
33003}
33004impl From<DropRule> for Stmt {
33005 #[inline]
33006 fn from(node: DropRule) -> Stmt {
33007 Stmt::DropRule(node)
33008 }
33009}
33010impl From<DropSchema> for Stmt {
33011 #[inline]
33012 fn from(node: DropSchema) -> Stmt {
33013 Stmt::DropSchema(node)
33014 }
33015}
33016impl From<DropSequence> for Stmt {
33017 #[inline]
33018 fn from(node: DropSequence) -> Stmt {
33019 Stmt::DropSequence(node)
33020 }
33021}
33022impl From<DropServer> for Stmt {
33023 #[inline]
33024 fn from(node: DropServer) -> Stmt {
33025 Stmt::DropServer(node)
33026 }
33027}
33028impl From<DropStatistics> for Stmt {
33029 #[inline]
33030 fn from(node: DropStatistics) -> Stmt {
33031 Stmt::DropStatistics(node)
33032 }
33033}
33034impl From<DropSubscription> for Stmt {
33035 #[inline]
33036 fn from(node: DropSubscription) -> Stmt {
33037 Stmt::DropSubscription(node)
33038 }
33039}
33040impl From<DropTable> for Stmt {
33041 #[inline]
33042 fn from(node: DropTable) -> Stmt {
33043 Stmt::DropTable(node)
33044 }
33045}
33046impl From<DropTablespace> for Stmt {
33047 #[inline]
33048 fn from(node: DropTablespace) -> Stmt {
33049 Stmt::DropTablespace(node)
33050 }
33051}
33052impl From<DropTextSearchConfig> for Stmt {
33053 #[inline]
33054 fn from(node: DropTextSearchConfig) -> Stmt {
33055 Stmt::DropTextSearchConfig(node)
33056 }
33057}
33058impl From<DropTextSearchDict> for Stmt {
33059 #[inline]
33060 fn from(node: DropTextSearchDict) -> Stmt {
33061 Stmt::DropTextSearchDict(node)
33062 }
33063}
33064impl From<DropTextSearchParser> for Stmt {
33065 #[inline]
33066 fn from(node: DropTextSearchParser) -> Stmt {
33067 Stmt::DropTextSearchParser(node)
33068 }
33069}
33070impl From<DropTextSearchTemplate> for Stmt {
33071 #[inline]
33072 fn from(node: DropTextSearchTemplate) -> Stmt {
33073 Stmt::DropTextSearchTemplate(node)
33074 }
33075}
33076impl From<DropTransform> for Stmt {
33077 #[inline]
33078 fn from(node: DropTransform) -> Stmt {
33079 Stmt::DropTransform(node)
33080 }
33081}
33082impl From<DropTrigger> for Stmt {
33083 #[inline]
33084 fn from(node: DropTrigger) -> Stmt {
33085 Stmt::DropTrigger(node)
33086 }
33087}
33088impl From<DropType> for Stmt {
33089 #[inline]
33090 fn from(node: DropType) -> Stmt {
33091 Stmt::DropType(node)
33092 }
33093}
33094impl From<DropUser> for Stmt {
33095 #[inline]
33096 fn from(node: DropUser) -> Stmt {
33097 Stmt::DropUser(node)
33098 }
33099}
33100impl From<DropUserMapping> for Stmt {
33101 #[inline]
33102 fn from(node: DropUserMapping) -> Stmt {
33103 Stmt::DropUserMapping(node)
33104 }
33105}
33106impl From<DropView> for Stmt {
33107 #[inline]
33108 fn from(node: DropView) -> Stmt {
33109 Stmt::DropView(node)
33110 }
33111}
33112impl From<Execute> for Stmt {
33113 #[inline]
33114 fn from(node: Execute) -> Stmt {
33115 Stmt::Execute(node)
33116 }
33117}
33118impl From<Explain> for Stmt {
33119 #[inline]
33120 fn from(node: Explain) -> Stmt {
33121 Stmt::Explain(node)
33122 }
33123}
33124impl From<Fetch> for Stmt {
33125 #[inline]
33126 fn from(node: Fetch) -> Stmt {
33127 Stmt::Fetch(node)
33128 }
33129}
33130impl From<Grant> for Stmt {
33131 #[inline]
33132 fn from(node: Grant) -> Stmt {
33133 Stmt::Grant(node)
33134 }
33135}
33136impl From<ImportForeignSchema> for Stmt {
33137 #[inline]
33138 fn from(node: ImportForeignSchema) -> Stmt {
33139 Stmt::ImportForeignSchema(node)
33140 }
33141}
33142impl From<Insert> for Stmt {
33143 #[inline]
33144 fn from(node: Insert) -> Stmt {
33145 Stmt::Insert(node)
33146 }
33147}
33148impl From<Listen> for Stmt {
33149 #[inline]
33150 fn from(node: Listen) -> Stmt {
33151 Stmt::Listen(node)
33152 }
33153}
33154impl From<Load> for Stmt {
33155 #[inline]
33156 fn from(node: Load) -> Stmt {
33157 Stmt::Load(node)
33158 }
33159}
33160impl From<Lock> for Stmt {
33161 #[inline]
33162 fn from(node: Lock) -> Stmt {
33163 Stmt::Lock(node)
33164 }
33165}
33166impl From<Merge> for Stmt {
33167 #[inline]
33168 fn from(node: Merge) -> Stmt {
33169 Stmt::Merge(node)
33170 }
33171}
33172impl From<Move> for Stmt {
33173 #[inline]
33174 fn from(node: Move) -> Stmt {
33175 Stmt::Move(node)
33176 }
33177}
33178impl From<Notify> for Stmt {
33179 #[inline]
33180 fn from(node: Notify) -> Stmt {
33181 Stmt::Notify(node)
33182 }
33183}
33184impl From<ParenSelect> for Stmt {
33185 #[inline]
33186 fn from(node: ParenSelect) -> Stmt {
33187 Stmt::ParenSelect(node)
33188 }
33189}
33190impl From<Prepare> for Stmt {
33191 #[inline]
33192 fn from(node: Prepare) -> Stmt {
33193 Stmt::Prepare(node)
33194 }
33195}
33196impl From<PrepareTransaction> for Stmt {
33197 #[inline]
33198 fn from(node: PrepareTransaction) -> Stmt {
33199 Stmt::PrepareTransaction(node)
33200 }
33201}
33202impl From<Reassign> for Stmt {
33203 #[inline]
33204 fn from(node: Reassign) -> Stmt {
33205 Stmt::Reassign(node)
33206 }
33207}
33208impl From<Refresh> for Stmt {
33209 #[inline]
33210 fn from(node: Refresh) -> Stmt {
33211 Stmt::Refresh(node)
33212 }
33213}
33214impl From<Reindex> for Stmt {
33215 #[inline]
33216 fn from(node: Reindex) -> Stmt {
33217 Stmt::Reindex(node)
33218 }
33219}
33220impl From<ReleaseSavepoint> for Stmt {
33221 #[inline]
33222 fn from(node: ReleaseSavepoint) -> Stmt {
33223 Stmt::ReleaseSavepoint(node)
33224 }
33225}
33226impl From<Reset> for Stmt {
33227 #[inline]
33228 fn from(node: Reset) -> Stmt {
33229 Stmt::Reset(node)
33230 }
33231}
33232impl From<ResetSessionAuth> for Stmt {
33233 #[inline]
33234 fn from(node: ResetSessionAuth) -> Stmt {
33235 Stmt::ResetSessionAuth(node)
33236 }
33237}
33238impl From<Revoke> for Stmt {
33239 #[inline]
33240 fn from(node: Revoke) -> Stmt {
33241 Stmt::Revoke(node)
33242 }
33243}
33244impl From<Rollback> for Stmt {
33245 #[inline]
33246 fn from(node: Rollback) -> Stmt {
33247 Stmt::Rollback(node)
33248 }
33249}
33250impl From<Savepoint> for Stmt {
33251 #[inline]
33252 fn from(node: Savepoint) -> Stmt {
33253 Stmt::Savepoint(node)
33254 }
33255}
33256impl From<SecurityLabel> for Stmt {
33257 #[inline]
33258 fn from(node: SecurityLabel) -> Stmt {
33259 Stmt::SecurityLabel(node)
33260 }
33261}
33262impl From<Select> for Stmt {
33263 #[inline]
33264 fn from(node: Select) -> Stmt {
33265 Stmt::Select(node)
33266 }
33267}
33268impl From<SelectInto> for Stmt {
33269 #[inline]
33270 fn from(node: SelectInto) -> Stmt {
33271 Stmt::SelectInto(node)
33272 }
33273}
33274impl From<Set> for Stmt {
33275 #[inline]
33276 fn from(node: Set) -> Stmt {
33277 Stmt::Set(node)
33278 }
33279}
33280impl From<SetConstraints> for Stmt {
33281 #[inline]
33282 fn from(node: SetConstraints) -> Stmt {
33283 Stmt::SetConstraints(node)
33284 }
33285}
33286impl From<SetRole> for Stmt {
33287 #[inline]
33288 fn from(node: SetRole) -> Stmt {
33289 Stmt::SetRole(node)
33290 }
33291}
33292impl From<SetSessionAuth> for Stmt {
33293 #[inline]
33294 fn from(node: SetSessionAuth) -> Stmt {
33295 Stmt::SetSessionAuth(node)
33296 }
33297}
33298impl From<SetTransaction> for Stmt {
33299 #[inline]
33300 fn from(node: SetTransaction) -> Stmt {
33301 Stmt::SetTransaction(node)
33302 }
33303}
33304impl From<Show> for Stmt {
33305 #[inline]
33306 fn from(node: Show) -> Stmt {
33307 Stmt::Show(node)
33308 }
33309}
33310impl From<Table> for Stmt {
33311 #[inline]
33312 fn from(node: Table) -> Stmt {
33313 Stmt::Table(node)
33314 }
33315}
33316impl From<Truncate> for Stmt {
33317 #[inline]
33318 fn from(node: Truncate) -> Stmt {
33319 Stmt::Truncate(node)
33320 }
33321}
33322impl From<Unlisten> for Stmt {
33323 #[inline]
33324 fn from(node: Unlisten) -> Stmt {
33325 Stmt::Unlisten(node)
33326 }
33327}
33328impl From<Update> for Stmt {
33329 #[inline]
33330 fn from(node: Update) -> Stmt {
33331 Stmt::Update(node)
33332 }
33333}
33334impl From<Vacuum> for Stmt {
33335 #[inline]
33336 fn from(node: Vacuum) -> Stmt {
33337 Stmt::Vacuum(node)
33338 }
33339}
33340impl From<Values> for Stmt {
33341 #[inline]
33342 fn from(node: Values) -> Stmt {
33343 Stmt::Values(node)
33344 }
33345}
33346impl AstNode for TableArg {
33347 #[inline]
33348 fn can_cast(kind: SyntaxKind) -> bool {
33349 matches!(kind, SyntaxKind::COLUMN | SyntaxKind::LIKE_CLAUSE)
33350 }
33351 #[inline]
33352 fn cast(syntax: SyntaxNode) -> Option<Self> {
33353 let res = match syntax.kind() {
33354 SyntaxKind::COLUMN => TableArg::Column(Column { syntax }),
33355 SyntaxKind::LIKE_CLAUSE => TableArg::LikeClause(LikeClause { syntax }),
33356 _ => {
33357 if let Some(result) = TableConstraint::cast(syntax) {
33358 return Some(TableArg::TableConstraint(result));
33359 }
33360 return None;
33361 }
33362 };
33363 Some(res)
33364 }
33365 #[inline]
33366 fn syntax(&self) -> &SyntaxNode {
33367 match self {
33368 TableArg::Column(it) => &it.syntax,
33369 TableArg::LikeClause(it) => &it.syntax,
33370 TableArg::TableConstraint(it) => it.syntax(),
33371 }
33372 }
33373}
33374impl From<Column> for TableArg {
33375 #[inline]
33376 fn from(node: Column) -> TableArg {
33377 TableArg::Column(node)
33378 }
33379}
33380impl From<LikeClause> for TableArg {
33381 #[inline]
33382 fn from(node: LikeClause) -> TableArg {
33383 TableArg::LikeClause(node)
33384 }
33385}
33386impl AstNode for TableConstraint {
33387 #[inline]
33388 fn can_cast(kind: SyntaxKind) -> bool {
33389 matches!(
33390 kind,
33391 SyntaxKind::CHECK_CONSTRAINT
33392 | SyntaxKind::EXCLUDE_CONSTRAINT
33393 | SyntaxKind::FOREIGN_KEY_CONSTRAINT
33394 | SyntaxKind::PRIMARY_KEY_CONSTRAINT
33395 | SyntaxKind::UNIQUE_CONSTRAINT
33396 )
33397 }
33398 #[inline]
33399 fn cast(syntax: SyntaxNode) -> Option<Self> {
33400 let res = match syntax.kind() {
33401 SyntaxKind::CHECK_CONSTRAINT => {
33402 TableConstraint::CheckConstraint(CheckConstraint { syntax })
33403 }
33404 SyntaxKind::EXCLUDE_CONSTRAINT => {
33405 TableConstraint::ExcludeConstraint(ExcludeConstraint { syntax })
33406 }
33407 SyntaxKind::FOREIGN_KEY_CONSTRAINT => {
33408 TableConstraint::ForeignKeyConstraint(ForeignKeyConstraint { syntax })
33409 }
33410 SyntaxKind::PRIMARY_KEY_CONSTRAINT => {
33411 TableConstraint::PrimaryKeyConstraint(PrimaryKeyConstraint { syntax })
33412 }
33413 SyntaxKind::UNIQUE_CONSTRAINT => {
33414 TableConstraint::UniqueConstraint(UniqueConstraint { syntax })
33415 }
33416 _ => {
33417 return None;
33418 }
33419 };
33420 Some(res)
33421 }
33422 #[inline]
33423 fn syntax(&self) -> &SyntaxNode {
33424 match self {
33425 TableConstraint::CheckConstraint(it) => &it.syntax,
33426 TableConstraint::ExcludeConstraint(it) => &it.syntax,
33427 TableConstraint::ForeignKeyConstraint(it) => &it.syntax,
33428 TableConstraint::PrimaryKeyConstraint(it) => &it.syntax,
33429 TableConstraint::UniqueConstraint(it) => &it.syntax,
33430 }
33431 }
33432}
33433impl From<CheckConstraint> for TableConstraint {
33434 #[inline]
33435 fn from(node: CheckConstraint) -> TableConstraint {
33436 TableConstraint::CheckConstraint(node)
33437 }
33438}
33439impl From<ExcludeConstraint> for TableConstraint {
33440 #[inline]
33441 fn from(node: ExcludeConstraint) -> TableConstraint {
33442 TableConstraint::ExcludeConstraint(node)
33443 }
33444}
33445impl From<ForeignKeyConstraint> for TableConstraint {
33446 #[inline]
33447 fn from(node: ForeignKeyConstraint) -> TableConstraint {
33448 TableConstraint::ForeignKeyConstraint(node)
33449 }
33450}
33451impl From<PrimaryKeyConstraint> for TableConstraint {
33452 #[inline]
33453 fn from(node: PrimaryKeyConstraint) -> TableConstraint {
33454 TableConstraint::PrimaryKeyConstraint(node)
33455 }
33456}
33457impl From<UniqueConstraint> for TableConstraint {
33458 #[inline]
33459 fn from(node: UniqueConstraint) -> TableConstraint {
33460 TableConstraint::UniqueConstraint(node)
33461 }
33462}
33463impl AstNode for Timezone {
33464 #[inline]
33465 fn can_cast(kind: SyntaxKind) -> bool {
33466 matches!(
33467 kind,
33468 SyntaxKind::WITH_TIMEZONE | SyntaxKind::WITHOUT_TIMEZONE
33469 )
33470 }
33471 #[inline]
33472 fn cast(syntax: SyntaxNode) -> Option<Self> {
33473 let res = match syntax.kind() {
33474 SyntaxKind::WITH_TIMEZONE => Timezone::WithTimezone(WithTimezone { syntax }),
33475 SyntaxKind::WITHOUT_TIMEZONE => Timezone::WithoutTimezone(WithoutTimezone { syntax }),
33476 _ => {
33477 return None;
33478 }
33479 };
33480 Some(res)
33481 }
33482 #[inline]
33483 fn syntax(&self) -> &SyntaxNode {
33484 match self {
33485 Timezone::WithTimezone(it) => &it.syntax,
33486 Timezone::WithoutTimezone(it) => &it.syntax,
33487 }
33488 }
33489}
33490impl From<WithTimezone> for Timezone {
33491 #[inline]
33492 fn from(node: WithTimezone) -> Timezone {
33493 Timezone::WithTimezone(node)
33494 }
33495}
33496impl From<WithoutTimezone> for Timezone {
33497 #[inline]
33498 fn from(node: WithoutTimezone) -> Timezone {
33499 Timezone::WithoutTimezone(node)
33500 }
33501}
33502impl AstNode for TransactionMode {
33503 #[inline]
33504 fn can_cast(kind: SyntaxKind) -> bool {
33505 matches!(
33506 kind,
33507 SyntaxKind::DEFERRABLE
33508 | SyntaxKind::NOT_DEFERRABLE
33509 | SyntaxKind::READ_COMMITTED
33510 | SyntaxKind::READ_ONLY
33511 | SyntaxKind::READ_UNCOMMITTED
33512 | SyntaxKind::READ_WRITE
33513 | SyntaxKind::REPEATABLE_READ
33514 | SyntaxKind::SERIALIZABLE
33515 )
33516 }
33517 #[inline]
33518 fn cast(syntax: SyntaxNode) -> Option<Self> {
33519 let res = match syntax.kind() {
33520 SyntaxKind::DEFERRABLE => TransactionMode::Deferrable(Deferrable { syntax }),
33521 SyntaxKind::NOT_DEFERRABLE => TransactionMode::NotDeferrable(NotDeferrable { syntax }),
33522 SyntaxKind::READ_COMMITTED => TransactionMode::ReadCommitted(ReadCommitted { syntax }),
33523 SyntaxKind::READ_ONLY => TransactionMode::ReadOnly(ReadOnly { syntax }),
33524 SyntaxKind::READ_UNCOMMITTED => {
33525 TransactionMode::ReadUncommitted(ReadUncommitted { syntax })
33526 }
33527 SyntaxKind::READ_WRITE => TransactionMode::ReadWrite(ReadWrite { syntax }),
33528 SyntaxKind::REPEATABLE_READ => {
33529 TransactionMode::RepeatableRead(RepeatableRead { syntax })
33530 }
33531 SyntaxKind::SERIALIZABLE => TransactionMode::Serializable(Serializable { syntax }),
33532 _ => {
33533 return None;
33534 }
33535 };
33536 Some(res)
33537 }
33538 #[inline]
33539 fn syntax(&self) -> &SyntaxNode {
33540 match self {
33541 TransactionMode::Deferrable(it) => &it.syntax,
33542 TransactionMode::NotDeferrable(it) => &it.syntax,
33543 TransactionMode::ReadCommitted(it) => &it.syntax,
33544 TransactionMode::ReadOnly(it) => &it.syntax,
33545 TransactionMode::ReadUncommitted(it) => &it.syntax,
33546 TransactionMode::ReadWrite(it) => &it.syntax,
33547 TransactionMode::RepeatableRead(it) => &it.syntax,
33548 TransactionMode::Serializable(it) => &it.syntax,
33549 }
33550 }
33551}
33552impl From<Deferrable> for TransactionMode {
33553 #[inline]
33554 fn from(node: Deferrable) -> TransactionMode {
33555 TransactionMode::Deferrable(node)
33556 }
33557}
33558impl From<NotDeferrable> for TransactionMode {
33559 #[inline]
33560 fn from(node: NotDeferrable) -> TransactionMode {
33561 TransactionMode::NotDeferrable(node)
33562 }
33563}
33564impl From<ReadCommitted> for TransactionMode {
33565 #[inline]
33566 fn from(node: ReadCommitted) -> TransactionMode {
33567 TransactionMode::ReadCommitted(node)
33568 }
33569}
33570impl From<ReadOnly> for TransactionMode {
33571 #[inline]
33572 fn from(node: ReadOnly) -> TransactionMode {
33573 TransactionMode::ReadOnly(node)
33574 }
33575}
33576impl From<ReadUncommitted> for TransactionMode {
33577 #[inline]
33578 fn from(node: ReadUncommitted) -> TransactionMode {
33579 TransactionMode::ReadUncommitted(node)
33580 }
33581}
33582impl From<ReadWrite> for TransactionMode {
33583 #[inline]
33584 fn from(node: ReadWrite) -> TransactionMode {
33585 TransactionMode::ReadWrite(node)
33586 }
33587}
33588impl From<RepeatableRead> for TransactionMode {
33589 #[inline]
33590 fn from(node: RepeatableRead) -> TransactionMode {
33591 TransactionMode::RepeatableRead(node)
33592 }
33593}
33594impl From<Serializable> for TransactionMode {
33595 #[inline]
33596 fn from(node: Serializable) -> TransactionMode {
33597 TransactionMode::Serializable(node)
33598 }
33599}
33600impl AstNode for Type {
33601 #[inline]
33602 fn can_cast(kind: SyntaxKind) -> bool {
33603 matches!(
33604 kind,
33605 SyntaxKind::ARRAY_TYPE
33606 | SyntaxKind::BIT_TYPE
33607 | SyntaxKind::CHAR_TYPE
33608 | SyntaxKind::DOUBLE_TYPE
33609 | SyntaxKind::EXPR_TYPE
33610 | SyntaxKind::INTERVAL_TYPE
33611 | SyntaxKind::PATH_TYPE
33612 | SyntaxKind::PERCENT_TYPE
33613 | SyntaxKind::TIME_TYPE
33614 )
33615 }
33616 #[inline]
33617 fn cast(syntax: SyntaxNode) -> Option<Self> {
33618 let res = match syntax.kind() {
33619 SyntaxKind::ARRAY_TYPE => Type::ArrayType(ArrayType { syntax }),
33620 SyntaxKind::BIT_TYPE => Type::BitType(BitType { syntax }),
33621 SyntaxKind::CHAR_TYPE => Type::CharType(CharType { syntax }),
33622 SyntaxKind::DOUBLE_TYPE => Type::DoubleType(DoubleType { syntax }),
33623 SyntaxKind::EXPR_TYPE => Type::ExprType(ExprType { syntax }),
33624 SyntaxKind::INTERVAL_TYPE => Type::IntervalType(IntervalType { syntax }),
33625 SyntaxKind::PATH_TYPE => Type::PathType(PathType { syntax }),
33626 SyntaxKind::PERCENT_TYPE => Type::PercentType(PercentType { syntax }),
33627 SyntaxKind::TIME_TYPE => Type::TimeType(TimeType { syntax }),
33628 _ => {
33629 return None;
33630 }
33631 };
33632 Some(res)
33633 }
33634 #[inline]
33635 fn syntax(&self) -> &SyntaxNode {
33636 match self {
33637 Type::ArrayType(it) => &it.syntax,
33638 Type::BitType(it) => &it.syntax,
33639 Type::CharType(it) => &it.syntax,
33640 Type::DoubleType(it) => &it.syntax,
33641 Type::ExprType(it) => &it.syntax,
33642 Type::IntervalType(it) => &it.syntax,
33643 Type::PathType(it) => &it.syntax,
33644 Type::PercentType(it) => &it.syntax,
33645 Type::TimeType(it) => &it.syntax,
33646 }
33647 }
33648}
33649impl From<ArrayType> for Type {
33650 #[inline]
33651 fn from(node: ArrayType) -> Type {
33652 Type::ArrayType(node)
33653 }
33654}
33655impl From<BitType> for Type {
33656 #[inline]
33657 fn from(node: BitType) -> Type {
33658 Type::BitType(node)
33659 }
33660}
33661impl From<CharType> for Type {
33662 #[inline]
33663 fn from(node: CharType) -> Type {
33664 Type::CharType(node)
33665 }
33666}
33667impl From<DoubleType> for Type {
33668 #[inline]
33669 fn from(node: DoubleType) -> Type {
33670 Type::DoubleType(node)
33671 }
33672}
33673impl From<ExprType> for Type {
33674 #[inline]
33675 fn from(node: ExprType) -> Type {
33676 Type::ExprType(node)
33677 }
33678}
33679impl From<IntervalType> for Type {
33680 #[inline]
33681 fn from(node: IntervalType) -> Type {
33682 Type::IntervalType(node)
33683 }
33684}
33685impl From<PathType> for Type {
33686 #[inline]
33687 fn from(node: PathType) -> Type {
33688 Type::PathType(node)
33689 }
33690}
33691impl From<PercentType> for Type {
33692 #[inline]
33693 fn from(node: PercentType) -> Type {
33694 Type::PercentType(node)
33695 }
33696}
33697impl From<TimeType> for Type {
33698 #[inline]
33699 fn from(node: TimeType) -> Type {
33700 Type::TimeType(node)
33701 }
33702}
33703impl AstNode for WithQuery {
33704 #[inline]
33705 fn can_cast(kind: SyntaxKind) -> bool {
33706 matches!(
33707 kind,
33708 SyntaxKind::COMPOUND_SELECT
33709 | SyntaxKind::DELETE
33710 | SyntaxKind::INSERT
33711 | SyntaxKind::MERGE
33712 | SyntaxKind::PAREN_SELECT
33713 | SyntaxKind::SELECT
33714 | SyntaxKind::TABLE
33715 | SyntaxKind::UPDATE
33716 | SyntaxKind::VALUES
33717 )
33718 }
33719 #[inline]
33720 fn cast(syntax: SyntaxNode) -> Option<Self> {
33721 let res = match syntax.kind() {
33722 SyntaxKind::COMPOUND_SELECT => WithQuery::CompoundSelect(CompoundSelect { syntax }),
33723 SyntaxKind::DELETE => WithQuery::Delete(Delete { syntax }),
33724 SyntaxKind::INSERT => WithQuery::Insert(Insert { syntax }),
33725 SyntaxKind::MERGE => WithQuery::Merge(Merge { syntax }),
33726 SyntaxKind::PAREN_SELECT => WithQuery::ParenSelect(ParenSelect { syntax }),
33727 SyntaxKind::SELECT => WithQuery::Select(Select { syntax }),
33728 SyntaxKind::TABLE => WithQuery::Table(Table { syntax }),
33729 SyntaxKind::UPDATE => WithQuery::Update(Update { syntax }),
33730 SyntaxKind::VALUES => WithQuery::Values(Values { syntax }),
33731 _ => {
33732 return None;
33733 }
33734 };
33735 Some(res)
33736 }
33737 #[inline]
33738 fn syntax(&self) -> &SyntaxNode {
33739 match self {
33740 WithQuery::CompoundSelect(it) => &it.syntax,
33741 WithQuery::Delete(it) => &it.syntax,
33742 WithQuery::Insert(it) => &it.syntax,
33743 WithQuery::Merge(it) => &it.syntax,
33744 WithQuery::ParenSelect(it) => &it.syntax,
33745 WithQuery::Select(it) => &it.syntax,
33746 WithQuery::Table(it) => &it.syntax,
33747 WithQuery::Update(it) => &it.syntax,
33748 WithQuery::Values(it) => &it.syntax,
33749 }
33750 }
33751}
33752impl From<CompoundSelect> for WithQuery {
33753 #[inline]
33754 fn from(node: CompoundSelect) -> WithQuery {
33755 WithQuery::CompoundSelect(node)
33756 }
33757}
33758impl From<Delete> for WithQuery {
33759 #[inline]
33760 fn from(node: Delete) -> WithQuery {
33761 WithQuery::Delete(node)
33762 }
33763}
33764impl From<Insert> for WithQuery {
33765 #[inline]
33766 fn from(node: Insert) -> WithQuery {
33767 WithQuery::Insert(node)
33768 }
33769}
33770impl From<Merge> for WithQuery {
33771 #[inline]
33772 fn from(node: Merge) -> WithQuery {
33773 WithQuery::Merge(node)
33774 }
33775}
33776impl From<ParenSelect> for WithQuery {
33777 #[inline]
33778 fn from(node: ParenSelect) -> WithQuery {
33779 WithQuery::ParenSelect(node)
33780 }
33781}
33782impl From<Select> for WithQuery {
33783 #[inline]
33784 fn from(node: Select) -> WithQuery {
33785 WithQuery::Select(node)
33786 }
33787}
33788impl From<Table> for WithQuery {
33789 #[inline]
33790 fn from(node: Table) -> WithQuery {
33791 WithQuery::Table(node)
33792 }
33793}
33794impl From<Update> for WithQuery {
33795 #[inline]
33796 fn from(node: Update) -> WithQuery {
33797 WithQuery::Update(node)
33798 }
33799}
33800impl From<Values> for WithQuery {
33801 #[inline]
33802 fn from(node: Values) -> WithQuery {
33803 WithQuery::Values(node)
33804 }
33805}