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 #[inline]
2125 pub fn not_token(&self) -> Option<SyntaxToken> {
2126 support::token(&self.syntax, SyntaxKind::NOT_KW)
2127 }
2128 #[inline]
2129 pub fn symmetric_token(&self) -> Option<SyntaxToken> {
2130 support::token(&self.syntax, SyntaxKind::SYMMETRIC_KW)
2131 }
2132}
2133
2134#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2135pub struct BinExpr {
2136 pub(crate) syntax: SyntaxNode,
2137}
2138impl BinExpr {}
2139
2140#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2141pub struct BitType {
2142 pub(crate) syntax: SyntaxNode,
2143}
2144impl BitType {
2145 #[inline]
2146 pub fn arg_list(&self) -> Option<ArgList> {
2147 support::child(&self.syntax)
2148 }
2149 #[inline]
2150 pub fn bit_token(&self) -> Option<SyntaxToken> {
2151 support::token(&self.syntax, SyntaxKind::BIT_KW)
2152 }
2153 #[inline]
2154 pub fn varying_token(&self) -> Option<SyntaxToken> {
2155 support::token(&self.syntax, SyntaxKind::VARYING_KW)
2156 }
2157}
2158
2159#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2160pub struct Call {
2161 pub(crate) syntax: SyntaxNode,
2162}
2163impl Call {
2164 #[inline]
2165 pub fn arg_list(&self) -> Option<ArgList> {
2166 support::child(&self.syntax)
2167 }
2168 #[inline]
2169 pub fn path(&self) -> Option<Path> {
2170 support::child(&self.syntax)
2171 }
2172 #[inline]
2173 pub fn call_token(&self) -> Option<SyntaxToken> {
2174 support::token(&self.syntax, SyntaxKind::CALL_KW)
2175 }
2176}
2177
2178#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2179pub struct CallExpr {
2180 pub(crate) syntax: SyntaxNode,
2181}
2182impl CallExpr {
2183 #[inline]
2184 pub fn all_fn(&self) -> Option<AllFn> {
2185 support::child(&self.syntax)
2186 }
2187 #[inline]
2188 pub fn any_fn(&self) -> Option<AnyFn> {
2189 support::child(&self.syntax)
2190 }
2191 #[inline]
2192 pub fn arg_list(&self) -> Option<ArgList> {
2193 support::child(&self.syntax)
2194 }
2195 #[inline]
2196 pub fn collation_for_fn(&self) -> Option<CollationForFn> {
2197 support::child(&self.syntax)
2198 }
2199 #[inline]
2200 pub fn exists_fn(&self) -> Option<ExistsFn> {
2201 support::child(&self.syntax)
2202 }
2203 #[inline]
2204 pub fn expr(&self) -> Option<Expr> {
2205 support::child(&self.syntax)
2206 }
2207 #[inline]
2208 pub fn extract_fn(&self) -> Option<ExtractFn> {
2209 support::child(&self.syntax)
2210 }
2211 #[inline]
2212 pub fn filter_clause(&self) -> Option<FilterClause> {
2213 support::child(&self.syntax)
2214 }
2215 #[inline]
2216 pub fn json_array_agg_fn(&self) -> Option<JsonArrayAggFn> {
2217 support::child(&self.syntax)
2218 }
2219 #[inline]
2220 pub fn json_array_fn(&self) -> Option<JsonArrayFn> {
2221 support::child(&self.syntax)
2222 }
2223 #[inline]
2224 pub fn json_exists_fn(&self) -> Option<JsonExistsFn> {
2225 support::child(&self.syntax)
2226 }
2227 #[inline]
2228 pub fn json_fn(&self) -> Option<JsonFn> {
2229 support::child(&self.syntax)
2230 }
2231 #[inline]
2232 pub fn json_object_agg_fn(&self) -> Option<JsonObjectAggFn> {
2233 support::child(&self.syntax)
2234 }
2235 #[inline]
2236 pub fn json_object_fn(&self) -> Option<JsonObjectFn> {
2237 support::child(&self.syntax)
2238 }
2239 #[inline]
2240 pub fn json_query_fn(&self) -> Option<JsonQueryFn> {
2241 support::child(&self.syntax)
2242 }
2243 #[inline]
2244 pub fn json_scalar_fn(&self) -> Option<JsonScalarFn> {
2245 support::child(&self.syntax)
2246 }
2247 #[inline]
2248 pub fn json_serialize_fn(&self) -> Option<JsonSerializeFn> {
2249 support::child(&self.syntax)
2250 }
2251 #[inline]
2252 pub fn json_value_fn(&self) -> Option<JsonValueFn> {
2253 support::child(&self.syntax)
2254 }
2255 #[inline]
2256 pub fn over_clause(&self) -> Option<OverClause> {
2257 support::child(&self.syntax)
2258 }
2259 #[inline]
2260 pub fn overlay_fn(&self) -> Option<OverlayFn> {
2261 support::child(&self.syntax)
2262 }
2263 #[inline]
2264 pub fn position_fn(&self) -> Option<PositionFn> {
2265 support::child(&self.syntax)
2266 }
2267 #[inline]
2268 pub fn some_fn(&self) -> Option<SomeFn> {
2269 support::child(&self.syntax)
2270 }
2271 #[inline]
2272 pub fn substring_fn(&self) -> Option<SubstringFn> {
2273 support::child(&self.syntax)
2274 }
2275 #[inline]
2276 pub fn trim_fn(&self) -> Option<TrimFn> {
2277 support::child(&self.syntax)
2278 }
2279 #[inline]
2280 pub fn within_clause(&self) -> Option<WithinClause> {
2281 support::child(&self.syntax)
2282 }
2283 #[inline]
2284 pub fn xml_element_fn(&self) -> Option<XmlElementFn> {
2285 support::child(&self.syntax)
2286 }
2287 #[inline]
2288 pub fn xml_exists_fn(&self) -> Option<XmlExistsFn> {
2289 support::child(&self.syntax)
2290 }
2291 #[inline]
2292 pub fn xml_forest_fn(&self) -> Option<XmlForestFn> {
2293 support::child(&self.syntax)
2294 }
2295 #[inline]
2296 pub fn xml_parse_fn(&self) -> Option<XmlParseFn> {
2297 support::child(&self.syntax)
2298 }
2299 #[inline]
2300 pub fn xml_pi_fn(&self) -> Option<XmlPiFn> {
2301 support::child(&self.syntax)
2302 }
2303 #[inline]
2304 pub fn xml_root_fn(&self) -> Option<XmlRootFn> {
2305 support::child(&self.syntax)
2306 }
2307 #[inline]
2308 pub fn xml_serialize_fn(&self) -> Option<XmlSerializeFn> {
2309 support::child(&self.syntax)
2310 }
2311}
2312
2313#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2314pub struct Cascade {
2315 pub(crate) syntax: SyntaxNode,
2316}
2317impl Cascade {
2318 #[inline]
2319 pub fn cascade_token(&self) -> Option<SyntaxToken> {
2320 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
2321 }
2322}
2323
2324#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2325pub struct CaseExpr {
2326 pub(crate) syntax: SyntaxNode,
2327}
2328impl CaseExpr {
2329 #[inline]
2330 pub fn else_clause(&self) -> Option<ElseClause> {
2331 support::child(&self.syntax)
2332 }
2333 #[inline]
2334 pub fn expr(&self) -> Option<Expr> {
2335 support::child(&self.syntax)
2336 }
2337 #[inline]
2338 pub fn when_clause_list(&self) -> Option<WhenClauseList> {
2339 support::child(&self.syntax)
2340 }
2341 #[inline]
2342 pub fn case_token(&self) -> Option<SyntaxToken> {
2343 support::token(&self.syntax, SyntaxKind::CASE_KW)
2344 }
2345}
2346
2347#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2348pub struct CastExpr {
2349 pub(crate) syntax: SyntaxNode,
2350}
2351impl CastExpr {
2352 #[inline]
2353 pub fn colon_colon(&self) -> Option<ColonColon> {
2354 support::child(&self.syntax)
2355 }
2356 #[inline]
2357 pub fn expr(&self) -> Option<Expr> {
2358 support::child(&self.syntax)
2359 }
2360 #[inline]
2361 pub fn literal(&self) -> Option<Literal> {
2362 support::child(&self.syntax)
2363 }
2364 #[inline]
2365 pub fn ty(&self) -> Option<Type> {
2366 support::child(&self.syntax)
2367 }
2368 #[inline]
2369 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
2370 support::token(&self.syntax, SyntaxKind::L_PAREN)
2371 }
2372 #[inline]
2373 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
2374 support::token(&self.syntax, SyntaxKind::R_PAREN)
2375 }
2376 #[inline]
2377 pub fn as_token(&self) -> Option<SyntaxToken> {
2378 support::token(&self.syntax, SyntaxKind::AS_KW)
2379 }
2380 #[inline]
2381 pub fn cast_token(&self) -> Option<SyntaxToken> {
2382 support::token(&self.syntax, SyntaxKind::CAST_KW)
2383 }
2384 #[inline]
2385 pub fn treat_token(&self) -> Option<SyntaxToken> {
2386 support::token(&self.syntax, SyntaxKind::TREAT_KW)
2387 }
2388}
2389
2390#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2391pub struct CastSig {
2392 pub(crate) syntax: SyntaxNode,
2393}
2394impl CastSig {
2395 #[inline]
2396 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
2397 support::token(&self.syntax, SyntaxKind::L_PAREN)
2398 }
2399 #[inline]
2400 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
2401 support::token(&self.syntax, SyntaxKind::R_PAREN)
2402 }
2403 #[inline]
2404 pub fn as_token(&self) -> Option<SyntaxToken> {
2405 support::token(&self.syntax, SyntaxKind::AS_KW)
2406 }
2407}
2408
2409#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2410pub struct CharType {
2411 pub(crate) syntax: SyntaxNode,
2412}
2413impl CharType {
2414 #[inline]
2415 pub fn arg_list(&self) -> Option<ArgList> {
2416 support::child(&self.syntax)
2417 }
2418 #[inline]
2419 pub fn char_token(&self) -> Option<SyntaxToken> {
2420 support::token(&self.syntax, SyntaxKind::CHAR_KW)
2421 }
2422 #[inline]
2423 pub fn character_token(&self) -> Option<SyntaxToken> {
2424 support::token(&self.syntax, SyntaxKind::CHARACTER_KW)
2425 }
2426 #[inline]
2427 pub fn nchar_token(&self) -> Option<SyntaxToken> {
2428 support::token(&self.syntax, SyntaxKind::NCHAR_KW)
2429 }
2430 #[inline]
2431 pub fn varchar_token(&self) -> Option<SyntaxToken> {
2432 support::token(&self.syntax, SyntaxKind::VARCHAR_KW)
2433 }
2434 #[inline]
2435 pub fn varying_token(&self) -> Option<SyntaxToken> {
2436 support::token(&self.syntax, SyntaxKind::VARYING_KW)
2437 }
2438}
2439
2440#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2441pub struct CheckConstraint {
2442 pub(crate) syntax: SyntaxNode,
2443}
2444impl CheckConstraint {
2445 #[inline]
2446 pub fn constraint_name(&self) -> Option<ConstraintName> {
2447 support::child(&self.syntax)
2448 }
2449 #[inline]
2450 pub fn expr(&self) -> Option<Expr> {
2451 support::child(&self.syntax)
2452 }
2453 #[inline]
2454 pub fn no_inherit(&self) -> Option<NoInherit> {
2455 support::child(&self.syntax)
2456 }
2457 #[inline]
2458 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
2459 support::token(&self.syntax, SyntaxKind::L_PAREN)
2460 }
2461 #[inline]
2462 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
2463 support::token(&self.syntax, SyntaxKind::R_PAREN)
2464 }
2465 #[inline]
2466 pub fn check_token(&self) -> Option<SyntaxToken> {
2467 support::token(&self.syntax, SyntaxKind::CHECK_KW)
2468 }
2469}
2470
2471#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2472pub struct Checkpoint {
2473 pub(crate) syntax: SyntaxNode,
2474}
2475impl Checkpoint {
2476 #[inline]
2477 pub fn checkpoint_token(&self) -> Option<SyntaxToken> {
2478 support::token(&self.syntax, SyntaxKind::CHECKPOINT_KW)
2479 }
2480}
2481
2482#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2483pub struct Close {
2484 pub(crate) syntax: SyntaxNode,
2485}
2486impl Close {
2487 #[inline]
2488 pub fn name_ref(&self) -> Option<NameRef> {
2489 support::child(&self.syntax)
2490 }
2491 #[inline]
2492 pub fn close_token(&self) -> Option<SyntaxToken> {
2493 support::token(&self.syntax, SyntaxKind::CLOSE_KW)
2494 }
2495}
2496
2497#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2498pub struct Cluster {
2499 pub(crate) syntax: SyntaxNode,
2500}
2501impl Cluster {
2502 #[inline]
2503 pub fn option_item_list(&self) -> Option<OptionItemList> {
2504 support::child(&self.syntax)
2505 }
2506 #[inline]
2507 pub fn path(&self) -> Option<Path> {
2508 support::child(&self.syntax)
2509 }
2510 #[inline]
2511 pub fn using_method(&self) -> Option<UsingMethod> {
2512 support::child(&self.syntax)
2513 }
2514 #[inline]
2515 pub fn cluster_token(&self) -> Option<SyntaxToken> {
2516 support::token(&self.syntax, SyntaxKind::CLUSTER_KW)
2517 }
2518 #[inline]
2519 pub fn verbose_token(&self) -> Option<SyntaxToken> {
2520 support::token(&self.syntax, SyntaxKind::VERBOSE_KW)
2521 }
2522}
2523
2524#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2525pub struct ClusterOn {
2526 pub(crate) syntax: SyntaxNode,
2527}
2528impl ClusterOn {
2529 #[inline]
2530 pub fn cluster_token(&self) -> Option<SyntaxToken> {
2531 support::token(&self.syntax, SyntaxKind::CLUSTER_KW)
2532 }
2533 #[inline]
2534 pub fn on_token(&self) -> Option<SyntaxToken> {
2535 support::token(&self.syntax, SyntaxKind::ON_KW)
2536 }
2537}
2538
2539#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2540pub struct Collate {
2541 pub(crate) syntax: SyntaxNode,
2542}
2543impl Collate {
2544 #[inline]
2545 pub fn path(&self) -> Option<Path> {
2546 support::child(&self.syntax)
2547 }
2548 #[inline]
2549 pub fn collate_token(&self) -> Option<SyntaxToken> {
2550 support::token(&self.syntax, SyntaxKind::COLLATE_KW)
2551 }
2552}
2553
2554#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2555pub struct CollationForFn {
2556 pub(crate) syntax: SyntaxNode,
2557}
2558impl CollationForFn {
2559 #[inline]
2560 pub fn expr(&self) -> Option<Expr> {
2561 support::child(&self.syntax)
2562 }
2563 #[inline]
2564 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
2565 support::token(&self.syntax, SyntaxKind::L_PAREN)
2566 }
2567 #[inline]
2568 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
2569 support::token(&self.syntax, SyntaxKind::R_PAREN)
2570 }
2571 #[inline]
2572 pub fn collation_token(&self) -> Option<SyntaxToken> {
2573 support::token(&self.syntax, SyntaxKind::COLLATION_KW)
2574 }
2575 #[inline]
2576 pub fn for_token(&self) -> Option<SyntaxToken> {
2577 support::token(&self.syntax, SyntaxKind::FOR_KW)
2578 }
2579}
2580
2581#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2582pub struct ColonColon {
2583 pub(crate) syntax: SyntaxNode,
2584}
2585impl ColonColon {
2586 #[inline]
2587 pub fn colon_token(&self) -> Option<SyntaxToken> {
2588 support::token(&self.syntax, SyntaxKind::COLON)
2589 }
2590}
2591
2592#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2593pub struct ColonEq {
2594 pub(crate) syntax: SyntaxNode,
2595}
2596impl ColonEq {
2597 #[inline]
2598 pub fn colon_token(&self) -> Option<SyntaxToken> {
2599 support::token(&self.syntax, SyntaxKind::COLON)
2600 }
2601 #[inline]
2602 pub fn eq_token(&self) -> Option<SyntaxToken> {
2603 support::token(&self.syntax, SyntaxKind::EQ)
2604 }
2605}
2606
2607#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2608pub struct Column {
2609 pub(crate) syntax: SyntaxNode,
2610}
2611impl Column {
2612 #[inline]
2613 pub fn collate(&self) -> Option<Collate> {
2614 support::child(&self.syntax)
2615 }
2616 #[inline]
2617 pub fn compression_method(&self) -> Option<CompressionMethod> {
2618 support::child(&self.syntax)
2619 }
2620 #[inline]
2621 pub fn constraints(&self) -> AstChildren<ColumnConstraint> {
2622 support::children(&self.syntax)
2623 }
2624 #[inline]
2625 pub fn deferrable_constraint_option(&self) -> Option<DeferrableConstraintOption> {
2626 support::child(&self.syntax)
2627 }
2628 #[inline]
2629 pub fn enforced(&self) -> Option<Enforced> {
2630 support::child(&self.syntax)
2631 }
2632 #[inline]
2633 pub fn index_expr(&self) -> Option<IndexExpr> {
2634 support::child(&self.syntax)
2635 }
2636 #[inline]
2637 pub fn initially_deferred_constraint_option(
2638 &self,
2639 ) -> Option<InitiallyDeferredConstraintOption> {
2640 support::child(&self.syntax)
2641 }
2642 #[inline]
2643 pub fn initially_immediate_constraint_option(
2644 &self,
2645 ) -> Option<InitiallyImmediateConstraintOption> {
2646 support::child(&self.syntax)
2647 }
2648 #[inline]
2649 pub fn name(&self) -> Option<Name> {
2650 support::child(&self.syntax)
2651 }
2652 #[inline]
2653 pub fn name_ref(&self) -> Option<NameRef> {
2654 support::child(&self.syntax)
2655 }
2656 #[inline]
2657 pub fn not_deferrable_constraint_option(&self) -> Option<NotDeferrableConstraintOption> {
2658 support::child(&self.syntax)
2659 }
2660 #[inline]
2661 pub fn not_enforced(&self) -> Option<NotEnforced> {
2662 support::child(&self.syntax)
2663 }
2664 #[inline]
2665 pub fn storage(&self) -> Option<Storage> {
2666 support::child(&self.syntax)
2667 }
2668 #[inline]
2669 pub fn ty(&self) -> Option<Type> {
2670 support::child(&self.syntax)
2671 }
2672 #[inline]
2673 pub fn with_options(&self) -> Option<WithOptions> {
2674 support::child(&self.syntax)
2675 }
2676 #[inline]
2677 pub fn period_token(&self) -> Option<SyntaxToken> {
2678 support::token(&self.syntax, SyntaxKind::PERIOD_KW)
2679 }
2680}
2681
2682#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2683pub struct ColumnList {
2684 pub(crate) syntax: SyntaxNode,
2685}
2686impl ColumnList {
2687 #[inline]
2688 pub fn columns(&self) -> AstChildren<Column> {
2689 support::children(&self.syntax)
2690 }
2691 #[inline]
2692 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
2693 support::token(&self.syntax, SyntaxKind::L_PAREN)
2694 }
2695 #[inline]
2696 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
2697 support::token(&self.syntax, SyntaxKind::R_PAREN)
2698 }
2699}
2700
2701#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2702pub struct CommentOn {
2703 pub(crate) syntax: SyntaxNode,
2704}
2705impl CommentOn {
2706 #[inline]
2707 pub fn aggregate(&self) -> Option<Aggregate> {
2708 support::child(&self.syntax)
2709 }
2710 #[inline]
2711 pub fn cast_sig(&self) -> Option<CastSig> {
2712 support::child(&self.syntax)
2713 }
2714 #[inline]
2715 pub fn function_sig(&self) -> Option<FunctionSig> {
2716 support::child(&self.syntax)
2717 }
2718 #[inline]
2719 pub fn literal(&self) -> Option<Literal> {
2720 support::child(&self.syntax)
2721 }
2722 #[inline]
2723 pub fn name_ref(&self) -> Option<NameRef> {
2724 support::child(&self.syntax)
2725 }
2726 #[inline]
2727 pub fn op(&self) -> Option<Op> {
2728 support::child(&self.syntax)
2729 }
2730 #[inline]
2731 pub fn path(&self) -> Option<Path> {
2732 support::child(&self.syntax)
2733 }
2734 #[inline]
2735 pub fn ty(&self) -> Option<Type> {
2736 support::child(&self.syntax)
2737 }
2738 #[inline]
2739 pub fn using_method(&self) -> Option<UsingMethod> {
2740 support::child(&self.syntax)
2741 }
2742 #[inline]
2743 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
2744 support::token(&self.syntax, SyntaxKind::L_PAREN)
2745 }
2746 #[inline]
2747 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
2748 support::token(&self.syntax, SyntaxKind::R_PAREN)
2749 }
2750 #[inline]
2751 pub fn comma_token(&self) -> Option<SyntaxToken> {
2752 support::token(&self.syntax, SyntaxKind::COMMA)
2753 }
2754 #[inline]
2755 pub fn access_token(&self) -> Option<SyntaxToken> {
2756 support::token(&self.syntax, SyntaxKind::ACCESS_KW)
2757 }
2758 #[inline]
2759 pub fn aggregate_token(&self) -> Option<SyntaxToken> {
2760 support::token(&self.syntax, SyntaxKind::AGGREGATE_KW)
2761 }
2762 #[inline]
2763 pub fn cast_token(&self) -> Option<SyntaxToken> {
2764 support::token(&self.syntax, SyntaxKind::CAST_KW)
2765 }
2766 #[inline]
2767 pub fn class_token(&self) -> Option<SyntaxToken> {
2768 support::token(&self.syntax, SyntaxKind::CLASS_KW)
2769 }
2770 #[inline]
2771 pub fn collation_token(&self) -> Option<SyntaxToken> {
2772 support::token(&self.syntax, SyntaxKind::COLLATION_KW)
2773 }
2774 #[inline]
2775 pub fn column_token(&self) -> Option<SyntaxToken> {
2776 support::token(&self.syntax, SyntaxKind::COLUMN_KW)
2777 }
2778 #[inline]
2779 pub fn comment_token(&self) -> Option<SyntaxToken> {
2780 support::token(&self.syntax, SyntaxKind::COMMENT_KW)
2781 }
2782 #[inline]
2783 pub fn configuration_token(&self) -> Option<SyntaxToken> {
2784 support::token(&self.syntax, SyntaxKind::CONFIGURATION_KW)
2785 }
2786 #[inline]
2787 pub fn constraint_token(&self) -> Option<SyntaxToken> {
2788 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
2789 }
2790 #[inline]
2791 pub fn conversion_token(&self) -> Option<SyntaxToken> {
2792 support::token(&self.syntax, SyntaxKind::CONVERSION_KW)
2793 }
2794 #[inline]
2795 pub fn data_token(&self) -> Option<SyntaxToken> {
2796 support::token(&self.syntax, SyntaxKind::DATA_KW)
2797 }
2798 #[inline]
2799 pub fn database_token(&self) -> Option<SyntaxToken> {
2800 support::token(&self.syntax, SyntaxKind::DATABASE_KW)
2801 }
2802 #[inline]
2803 pub fn dictionary_token(&self) -> Option<SyntaxToken> {
2804 support::token(&self.syntax, SyntaxKind::DICTIONARY_KW)
2805 }
2806 #[inline]
2807 pub fn domain_token(&self) -> Option<SyntaxToken> {
2808 support::token(&self.syntax, SyntaxKind::DOMAIN_KW)
2809 }
2810 #[inline]
2811 pub fn event_token(&self) -> Option<SyntaxToken> {
2812 support::token(&self.syntax, SyntaxKind::EVENT_KW)
2813 }
2814 #[inline]
2815 pub fn extension_token(&self) -> Option<SyntaxToken> {
2816 support::token(&self.syntax, SyntaxKind::EXTENSION_KW)
2817 }
2818 #[inline]
2819 pub fn family_token(&self) -> Option<SyntaxToken> {
2820 support::token(&self.syntax, SyntaxKind::FAMILY_KW)
2821 }
2822 #[inline]
2823 pub fn for_token(&self) -> Option<SyntaxToken> {
2824 support::token(&self.syntax, SyntaxKind::FOR_KW)
2825 }
2826 #[inline]
2827 pub fn foreign_token(&self) -> Option<SyntaxToken> {
2828 support::token(&self.syntax, SyntaxKind::FOREIGN_KW)
2829 }
2830 #[inline]
2831 pub fn function_token(&self) -> Option<SyntaxToken> {
2832 support::token(&self.syntax, SyntaxKind::FUNCTION_KW)
2833 }
2834 #[inline]
2835 pub fn index_token(&self) -> Option<SyntaxToken> {
2836 support::token(&self.syntax, SyntaxKind::INDEX_KW)
2837 }
2838 #[inline]
2839 pub fn is_token(&self) -> Option<SyntaxToken> {
2840 support::token(&self.syntax, SyntaxKind::IS_KW)
2841 }
2842 #[inline]
2843 pub fn language_token(&self) -> Option<SyntaxToken> {
2844 support::token(&self.syntax, SyntaxKind::LANGUAGE_KW)
2845 }
2846 #[inline]
2847 pub fn large_token(&self) -> Option<SyntaxToken> {
2848 support::token(&self.syntax, SyntaxKind::LARGE_KW)
2849 }
2850 #[inline]
2851 pub fn materialized_token(&self) -> Option<SyntaxToken> {
2852 support::token(&self.syntax, SyntaxKind::MATERIALIZED_KW)
2853 }
2854 #[inline]
2855 pub fn method_token(&self) -> Option<SyntaxToken> {
2856 support::token(&self.syntax, SyntaxKind::METHOD_KW)
2857 }
2858 #[inline]
2859 pub fn null_token(&self) -> Option<SyntaxToken> {
2860 support::token(&self.syntax, SyntaxKind::NULL_KW)
2861 }
2862 #[inline]
2863 pub fn object_token(&self) -> Option<SyntaxToken> {
2864 support::token(&self.syntax, SyntaxKind::OBJECT_KW)
2865 }
2866 #[inline]
2867 pub fn on_token(&self) -> Option<SyntaxToken> {
2868 support::token(&self.syntax, SyntaxKind::ON_KW)
2869 }
2870 #[inline]
2871 pub fn operator_token(&self) -> Option<SyntaxToken> {
2872 support::token(&self.syntax, SyntaxKind::OPERATOR_KW)
2873 }
2874 #[inline]
2875 pub fn parser_token(&self) -> Option<SyntaxToken> {
2876 support::token(&self.syntax, SyntaxKind::PARSER_KW)
2877 }
2878 #[inline]
2879 pub fn policy_token(&self) -> Option<SyntaxToken> {
2880 support::token(&self.syntax, SyntaxKind::POLICY_KW)
2881 }
2882 #[inline]
2883 pub fn procedural_token(&self) -> Option<SyntaxToken> {
2884 support::token(&self.syntax, SyntaxKind::PROCEDURAL_KW)
2885 }
2886 #[inline]
2887 pub fn procedure_token(&self) -> Option<SyntaxToken> {
2888 support::token(&self.syntax, SyntaxKind::PROCEDURE_KW)
2889 }
2890 #[inline]
2891 pub fn publication_token(&self) -> Option<SyntaxToken> {
2892 support::token(&self.syntax, SyntaxKind::PUBLICATION_KW)
2893 }
2894 #[inline]
2895 pub fn role_token(&self) -> Option<SyntaxToken> {
2896 support::token(&self.syntax, SyntaxKind::ROLE_KW)
2897 }
2898 #[inline]
2899 pub fn routine_token(&self) -> Option<SyntaxToken> {
2900 support::token(&self.syntax, SyntaxKind::ROUTINE_KW)
2901 }
2902 #[inline]
2903 pub fn rule_token(&self) -> Option<SyntaxToken> {
2904 support::token(&self.syntax, SyntaxKind::RULE_KW)
2905 }
2906 #[inline]
2907 pub fn schema_token(&self) -> Option<SyntaxToken> {
2908 support::token(&self.syntax, SyntaxKind::SCHEMA_KW)
2909 }
2910 #[inline]
2911 pub fn search_token(&self) -> Option<SyntaxToken> {
2912 support::token(&self.syntax, SyntaxKind::SEARCH_KW)
2913 }
2914 #[inline]
2915 pub fn sequence_token(&self) -> Option<SyntaxToken> {
2916 support::token(&self.syntax, SyntaxKind::SEQUENCE_KW)
2917 }
2918 #[inline]
2919 pub fn server_token(&self) -> Option<SyntaxToken> {
2920 support::token(&self.syntax, SyntaxKind::SERVER_KW)
2921 }
2922 #[inline]
2923 pub fn statistics_token(&self) -> Option<SyntaxToken> {
2924 support::token(&self.syntax, SyntaxKind::STATISTICS_KW)
2925 }
2926 #[inline]
2927 pub fn subscription_token(&self) -> Option<SyntaxToken> {
2928 support::token(&self.syntax, SyntaxKind::SUBSCRIPTION_KW)
2929 }
2930 #[inline]
2931 pub fn table_token(&self) -> Option<SyntaxToken> {
2932 support::token(&self.syntax, SyntaxKind::TABLE_KW)
2933 }
2934 #[inline]
2935 pub fn tablespace_token(&self) -> Option<SyntaxToken> {
2936 support::token(&self.syntax, SyntaxKind::TABLESPACE_KW)
2937 }
2938 #[inline]
2939 pub fn template_token(&self) -> Option<SyntaxToken> {
2940 support::token(&self.syntax, SyntaxKind::TEMPLATE_KW)
2941 }
2942 #[inline]
2943 pub fn text_token(&self) -> Option<SyntaxToken> {
2944 support::token(&self.syntax, SyntaxKind::TEXT_KW)
2945 }
2946 #[inline]
2947 pub fn transform_token(&self) -> Option<SyntaxToken> {
2948 support::token(&self.syntax, SyntaxKind::TRANSFORM_KW)
2949 }
2950 #[inline]
2951 pub fn trigger_token(&self) -> Option<SyntaxToken> {
2952 support::token(&self.syntax, SyntaxKind::TRIGGER_KW)
2953 }
2954 #[inline]
2955 pub fn type_token(&self) -> Option<SyntaxToken> {
2956 support::token(&self.syntax, SyntaxKind::TYPE_KW)
2957 }
2958 #[inline]
2959 pub fn view_token(&self) -> Option<SyntaxToken> {
2960 support::token(&self.syntax, SyntaxKind::VIEW_KW)
2961 }
2962 #[inline]
2963 pub fn wrapper_token(&self) -> Option<SyntaxToken> {
2964 support::token(&self.syntax, SyntaxKind::WRAPPER_KW)
2965 }
2966}
2967
2968#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2969pub struct Commit {
2970 pub(crate) syntax: SyntaxNode,
2971}
2972impl Commit {
2973 #[inline]
2974 pub fn literal(&self) -> Option<Literal> {
2975 support::child(&self.syntax)
2976 }
2977 #[inline]
2978 pub fn and_token(&self) -> Option<SyntaxToken> {
2979 support::token(&self.syntax, SyntaxKind::AND_KW)
2980 }
2981 #[inline]
2982 pub fn chain_token(&self) -> Option<SyntaxToken> {
2983 support::token(&self.syntax, SyntaxKind::CHAIN_KW)
2984 }
2985 #[inline]
2986 pub fn commit_token(&self) -> Option<SyntaxToken> {
2987 support::token(&self.syntax, SyntaxKind::COMMIT_KW)
2988 }
2989 #[inline]
2990 pub fn no_token(&self) -> Option<SyntaxToken> {
2991 support::token(&self.syntax, SyntaxKind::NO_KW)
2992 }
2993 #[inline]
2994 pub fn prepared_token(&self) -> Option<SyntaxToken> {
2995 support::token(&self.syntax, SyntaxKind::PREPARED_KW)
2996 }
2997 #[inline]
2998 pub fn transaction_token(&self) -> Option<SyntaxToken> {
2999 support::token(&self.syntax, SyntaxKind::TRANSACTION_KW)
3000 }
3001 #[inline]
3002 pub fn work_token(&self) -> Option<SyntaxToken> {
3003 support::token(&self.syntax, SyntaxKind::WORK_KW)
3004 }
3005}
3006
3007#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3008pub struct CompoundSelect {
3009 pub(crate) syntax: SyntaxNode,
3010}
3011impl CompoundSelect {
3012 #[inline]
3013 pub fn all_token(&self) -> Option<SyntaxToken> {
3014 support::token(&self.syntax, SyntaxKind::ALL_KW)
3015 }
3016 #[inline]
3017 pub fn except_token(&self) -> Option<SyntaxToken> {
3018 support::token(&self.syntax, SyntaxKind::EXCEPT_KW)
3019 }
3020 #[inline]
3021 pub fn intersect_token(&self) -> Option<SyntaxToken> {
3022 support::token(&self.syntax, SyntaxKind::INTERSECT_KW)
3023 }
3024 #[inline]
3025 pub fn union_token(&self) -> Option<SyntaxToken> {
3026 support::token(&self.syntax, SyntaxKind::UNION_KW)
3027 }
3028}
3029
3030#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3031pub struct CompressionMethod {
3032 pub(crate) syntax: SyntaxNode,
3033}
3034impl CompressionMethod {
3035 #[inline]
3036 pub fn compression_token(&self) -> Option<SyntaxToken> {
3037 support::token(&self.syntax, SyntaxKind::COMPRESSION_KW)
3038 }
3039 #[inline]
3040 pub fn default_token(&self) -> Option<SyntaxToken> {
3041 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
3042 }
3043 #[inline]
3044 pub fn ident_token(&self) -> Option<SyntaxToken> {
3045 support::token(&self.syntax, SyntaxKind::IDENT)
3046 }
3047}
3048
3049#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3050pub struct ConflictDoNothing {
3051 pub(crate) syntax: SyntaxNode,
3052}
3053impl ConflictDoNothing {
3054 #[inline]
3055 pub fn do_token(&self) -> Option<SyntaxToken> {
3056 support::token(&self.syntax, SyntaxKind::DO_KW)
3057 }
3058 #[inline]
3059 pub fn nothing_token(&self) -> Option<SyntaxToken> {
3060 support::token(&self.syntax, SyntaxKind::NOTHING_KW)
3061 }
3062}
3063
3064#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3065pub struct ConflictDoSelect {
3066 pub(crate) syntax: SyntaxNode,
3067}
3068impl ConflictDoSelect {
3069 #[inline]
3070 pub fn locking_clause(&self) -> Option<LockingClause> {
3071 support::child(&self.syntax)
3072 }
3073 #[inline]
3074 pub fn where_clause(&self) -> Option<WhereClause> {
3075 support::child(&self.syntax)
3076 }
3077 #[inline]
3078 pub fn do_token(&self) -> Option<SyntaxToken> {
3079 support::token(&self.syntax, SyntaxKind::DO_KW)
3080 }
3081 #[inline]
3082 pub fn select_token(&self) -> Option<SyntaxToken> {
3083 support::token(&self.syntax, SyntaxKind::SELECT_KW)
3084 }
3085}
3086
3087#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3088pub struct ConflictDoUpdateSet {
3089 pub(crate) syntax: SyntaxNode,
3090}
3091impl ConflictDoUpdateSet {
3092 #[inline]
3093 pub fn set_clause(&self) -> Option<SetClause> {
3094 support::child(&self.syntax)
3095 }
3096 #[inline]
3097 pub fn where_clause(&self) -> Option<WhereClause> {
3098 support::child(&self.syntax)
3099 }
3100 #[inline]
3101 pub fn do_token(&self) -> Option<SyntaxToken> {
3102 support::token(&self.syntax, SyntaxKind::DO_KW)
3103 }
3104 #[inline]
3105 pub fn update_token(&self) -> Option<SyntaxToken> {
3106 support::token(&self.syntax, SyntaxKind::UPDATE_KW)
3107 }
3108}
3109
3110#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3111pub struct ConflictIndexItem {
3112 pub(crate) syntax: SyntaxNode,
3113}
3114impl ConflictIndexItem {
3115 #[inline]
3116 pub fn collate(&self) -> Option<Collate> {
3117 support::child(&self.syntax)
3118 }
3119 #[inline]
3120 pub fn expr(&self) -> Option<Expr> {
3121 support::child(&self.syntax)
3122 }
3123 #[inline]
3124 pub fn ident_token(&self) -> Option<SyntaxToken> {
3125 support::token(&self.syntax, SyntaxKind::IDENT)
3126 }
3127}
3128
3129#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3130pub struct ConflictIndexItemList {
3131 pub(crate) syntax: SyntaxNode,
3132}
3133impl ConflictIndexItemList {
3134 #[inline]
3135 pub fn conflict_index_items(&self) -> AstChildren<ConflictIndexItem> {
3136 support::children(&self.syntax)
3137 }
3138 #[inline]
3139 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
3140 support::token(&self.syntax, SyntaxKind::L_PAREN)
3141 }
3142 #[inline]
3143 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
3144 support::token(&self.syntax, SyntaxKind::R_PAREN)
3145 }
3146}
3147
3148#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3149pub struct ConflictOnConstraint {
3150 pub(crate) syntax: SyntaxNode,
3151}
3152impl ConflictOnConstraint {
3153 #[inline]
3154 pub fn name_ref(&self) -> Option<NameRef> {
3155 support::child(&self.syntax)
3156 }
3157 #[inline]
3158 pub fn constraint_token(&self) -> Option<SyntaxToken> {
3159 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
3160 }
3161 #[inline]
3162 pub fn on_token(&self) -> Option<SyntaxToken> {
3163 support::token(&self.syntax, SyntaxKind::ON_KW)
3164 }
3165}
3166
3167#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3168pub struct ConflictOnIndex {
3169 pub(crate) syntax: SyntaxNode,
3170}
3171impl ConflictOnIndex {
3172 #[inline]
3173 pub fn conflict_index_item_list(&self) -> Option<ConflictIndexItemList> {
3174 support::child(&self.syntax)
3175 }
3176 #[inline]
3177 pub fn where_clause(&self) -> Option<WhereClause> {
3178 support::child(&self.syntax)
3179 }
3180}
3181
3182#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3183pub struct ConstraintExclusion {
3184 pub(crate) syntax: SyntaxNode,
3185}
3186impl ConstraintExclusion {
3187 #[inline]
3188 pub fn expr(&self) -> Option<Expr> {
3189 support::child(&self.syntax)
3190 }
3191 #[inline]
3192 pub fn op(&self) -> Option<Op> {
3193 support::child(&self.syntax)
3194 }
3195 #[inline]
3196 pub fn with_token(&self) -> Option<SyntaxToken> {
3197 support::token(&self.syntax, SyntaxKind::WITH_KW)
3198 }
3199}
3200
3201#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3202pub struct ConstraintExclusionList {
3203 pub(crate) syntax: SyntaxNode,
3204}
3205impl ConstraintExclusionList {
3206 #[inline]
3207 pub fn constraint_exclusions(&self) -> AstChildren<ConstraintExclusion> {
3208 support::children(&self.syntax)
3209 }
3210 #[inline]
3211 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
3212 support::token(&self.syntax, SyntaxKind::L_PAREN)
3213 }
3214 #[inline]
3215 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
3216 support::token(&self.syntax, SyntaxKind::R_PAREN)
3217 }
3218}
3219
3220#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3221pub struct ConstraintIncludeClause {
3222 pub(crate) syntax: SyntaxNode,
3223}
3224impl ConstraintIncludeClause {
3225 #[inline]
3226 pub fn include_token(&self) -> Option<SyntaxToken> {
3227 support::token(&self.syntax, SyntaxKind::INCLUDE_KW)
3228 }
3229}
3230
3231#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3232pub struct ConstraintIndexMethod {
3233 pub(crate) syntax: SyntaxNode,
3234}
3235impl ConstraintIndexMethod {
3236 #[inline]
3237 pub fn using_token(&self) -> Option<SyntaxToken> {
3238 support::token(&self.syntax, SyntaxKind::USING_KW)
3239 }
3240}
3241
3242#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3243pub struct ConstraintIndexTablespace {
3244 pub(crate) syntax: SyntaxNode,
3245}
3246impl ConstraintIndexTablespace {
3247 #[inline]
3248 pub fn name_ref(&self) -> Option<NameRef> {
3249 support::child(&self.syntax)
3250 }
3251 #[inline]
3252 pub fn index_token(&self) -> Option<SyntaxToken> {
3253 support::token(&self.syntax, SyntaxKind::INDEX_KW)
3254 }
3255 #[inline]
3256 pub fn tablespace_token(&self) -> Option<SyntaxToken> {
3257 support::token(&self.syntax, SyntaxKind::TABLESPACE_KW)
3258 }
3259 #[inline]
3260 pub fn using_token(&self) -> Option<SyntaxToken> {
3261 support::token(&self.syntax, SyntaxKind::USING_KW)
3262 }
3263}
3264
3265#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3266pub struct ConstraintName {
3267 pub(crate) syntax: SyntaxNode,
3268}
3269impl ConstraintName {
3270 #[inline]
3271 pub fn name(&self) -> Option<Name> {
3272 support::child(&self.syntax)
3273 }
3274 #[inline]
3275 pub fn constraint_token(&self) -> Option<SyntaxToken> {
3276 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
3277 }
3278}
3279
3280#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3281pub struct Copy {
3282 pub(crate) syntax: SyntaxNode,
3283}
3284impl Copy {
3285 #[inline]
3286 pub fn column_list(&self) -> Option<ColumnList> {
3287 support::child(&self.syntax)
3288 }
3289 #[inline]
3290 pub fn literal(&self) -> Option<Literal> {
3291 support::child(&self.syntax)
3292 }
3293 #[inline]
3294 pub fn path(&self) -> Option<Path> {
3295 support::child(&self.syntax)
3296 }
3297 #[inline]
3298 pub fn preparable_stmt(&self) -> Option<PreparableStmt> {
3299 support::child(&self.syntax)
3300 }
3301 #[inline]
3302 pub fn where_clause(&self) -> Option<WhereClause> {
3303 support::child(&self.syntax)
3304 }
3305 #[inline]
3306 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
3307 support::token(&self.syntax, SyntaxKind::L_PAREN)
3308 }
3309 #[inline]
3310 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
3311 support::token(&self.syntax, SyntaxKind::R_PAREN)
3312 }
3313 #[inline]
3314 pub fn binary_token(&self) -> Option<SyntaxToken> {
3315 support::token(&self.syntax, SyntaxKind::BINARY_KW)
3316 }
3317 #[inline]
3318 pub fn copy_token(&self) -> Option<SyntaxToken> {
3319 support::token(&self.syntax, SyntaxKind::COPY_KW)
3320 }
3321 #[inline]
3322 pub fn from_token(&self) -> Option<SyntaxToken> {
3323 support::token(&self.syntax, SyntaxKind::FROM_KW)
3324 }
3325 #[inline]
3326 pub fn program_token(&self) -> Option<SyntaxToken> {
3327 support::token(&self.syntax, SyntaxKind::PROGRAM_KW)
3328 }
3329 #[inline]
3330 pub fn stdin_token(&self) -> Option<SyntaxToken> {
3331 support::token(&self.syntax, SyntaxKind::STDIN_KW)
3332 }
3333 #[inline]
3334 pub fn stdout_token(&self) -> Option<SyntaxToken> {
3335 support::token(&self.syntax, SyntaxKind::STDOUT_KW)
3336 }
3337 #[inline]
3338 pub fn to_token(&self) -> Option<SyntaxToken> {
3339 support::token(&self.syntax, SyntaxKind::TO_KW)
3340 }
3341 #[inline]
3342 pub fn with_token(&self) -> Option<SyntaxToken> {
3343 support::token(&self.syntax, SyntaxKind::WITH_KW)
3344 }
3345}
3346
3347#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3348pub struct CopyOption {
3349 pub(crate) syntax: SyntaxNode,
3350}
3351impl CopyOption {
3352 #[inline]
3353 pub fn name(&self) -> Option<Name> {
3354 support::child(&self.syntax)
3355 }
3356}
3357
3358#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3359pub struct CopyOptionList {
3360 pub(crate) syntax: SyntaxNode,
3361}
3362impl CopyOptionList {
3363 #[inline]
3364 pub fn copy_options(&self) -> AstChildren<CopyOption> {
3365 support::children(&self.syntax)
3366 }
3367 #[inline]
3368 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
3369 support::token(&self.syntax, SyntaxKind::L_PAREN)
3370 }
3371 #[inline]
3372 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
3373 support::token(&self.syntax, SyntaxKind::R_PAREN)
3374 }
3375}
3376
3377#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3378pub struct CostFuncOption {
3379 pub(crate) syntax: SyntaxNode,
3380}
3381impl CostFuncOption {
3382 #[inline]
3383 pub fn cost_token(&self) -> Option<SyntaxToken> {
3384 support::token(&self.syntax, SyntaxKind::COST_KW)
3385 }
3386}
3387
3388#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3389pub struct CreateAccessMethod {
3390 pub(crate) syntax: SyntaxNode,
3391}
3392impl CreateAccessMethod {
3393 #[inline]
3394 pub fn handler_clause(&self) -> Option<HandlerClause> {
3395 support::child(&self.syntax)
3396 }
3397 #[inline]
3398 pub fn name(&self) -> Option<Path> {
3399 support::child(&self.syntax)
3400 }
3401 #[inline]
3402 pub fn access_token(&self) -> Option<SyntaxToken> {
3403 support::token(&self.syntax, SyntaxKind::ACCESS_KW)
3404 }
3405 #[inline]
3406 pub fn create_token(&self) -> Option<SyntaxToken> {
3407 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3408 }
3409 #[inline]
3410 pub fn index_token(&self) -> Option<SyntaxToken> {
3411 support::token(&self.syntax, SyntaxKind::INDEX_KW)
3412 }
3413 #[inline]
3414 pub fn method_token(&self) -> Option<SyntaxToken> {
3415 support::token(&self.syntax, SyntaxKind::METHOD_KW)
3416 }
3417 #[inline]
3418 pub fn table_token(&self) -> Option<SyntaxToken> {
3419 support::token(&self.syntax, SyntaxKind::TABLE_KW)
3420 }
3421 #[inline]
3422 pub fn type_token(&self) -> Option<SyntaxToken> {
3423 support::token(&self.syntax, SyntaxKind::TYPE_KW)
3424 }
3425}
3426
3427#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3428pub struct CreateAggregate {
3429 pub(crate) syntax: SyntaxNode,
3430}
3431impl CreateAggregate {
3432 #[inline]
3433 pub fn or_replace(&self) -> Option<OrReplace> {
3434 support::child(&self.syntax)
3435 }
3436 #[inline]
3437 pub fn param_list(&self) -> Option<ParamList> {
3438 support::child(&self.syntax)
3439 }
3440 #[inline]
3441 pub fn path(&self) -> Option<Path> {
3442 support::child(&self.syntax)
3443 }
3444 #[inline]
3445 pub fn aggregate_token(&self) -> Option<SyntaxToken> {
3446 support::token(&self.syntax, SyntaxKind::AGGREGATE_KW)
3447 }
3448 #[inline]
3449 pub fn create_token(&self) -> Option<SyntaxToken> {
3450 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3451 }
3452}
3453
3454#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3455pub struct CreateCast {
3456 pub(crate) syntax: SyntaxNode,
3457}
3458impl CreateCast {
3459 #[inline]
3460 pub fn cast_sig(&self) -> Option<CastSig> {
3461 support::child(&self.syntax)
3462 }
3463 #[inline]
3464 pub fn function_sig(&self) -> Option<FunctionSig> {
3465 support::child(&self.syntax)
3466 }
3467 #[inline]
3468 pub fn as_token(&self) -> Option<SyntaxToken> {
3469 support::token(&self.syntax, SyntaxKind::AS_KW)
3470 }
3471 #[inline]
3472 pub fn assignment_token(&self) -> Option<SyntaxToken> {
3473 support::token(&self.syntax, SyntaxKind::ASSIGNMENT_KW)
3474 }
3475 #[inline]
3476 pub fn cast_token(&self) -> Option<SyntaxToken> {
3477 support::token(&self.syntax, SyntaxKind::CAST_KW)
3478 }
3479 #[inline]
3480 pub fn create_token(&self) -> Option<SyntaxToken> {
3481 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3482 }
3483 #[inline]
3484 pub fn function_token(&self) -> Option<SyntaxToken> {
3485 support::token(&self.syntax, SyntaxKind::FUNCTION_KW)
3486 }
3487 #[inline]
3488 pub fn implicit_token(&self) -> Option<SyntaxToken> {
3489 support::token(&self.syntax, SyntaxKind::IMPLICIT_KW)
3490 }
3491 #[inline]
3492 pub fn inout_token(&self) -> Option<SyntaxToken> {
3493 support::token(&self.syntax, SyntaxKind::INOUT_KW)
3494 }
3495 #[inline]
3496 pub fn with_token(&self) -> Option<SyntaxToken> {
3497 support::token(&self.syntax, SyntaxKind::WITH_KW)
3498 }
3499 #[inline]
3500 pub fn without_token(&self) -> Option<SyntaxToken> {
3501 support::token(&self.syntax, SyntaxKind::WITHOUT_KW)
3502 }
3503}
3504
3505#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3506pub struct CreateCollation {
3507 pub(crate) syntax: SyntaxNode,
3508}
3509impl CreateCollation {
3510 #[inline]
3511 pub fn path(&self) -> Option<Path> {
3512 support::child(&self.syntax)
3513 }
3514 #[inline]
3515 pub fn collation_token(&self) -> Option<SyntaxToken> {
3516 support::token(&self.syntax, SyntaxKind::COLLATION_KW)
3517 }
3518 #[inline]
3519 pub fn create_token(&self) -> Option<SyntaxToken> {
3520 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3521 }
3522}
3523
3524#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3525pub struct CreateConversion {
3526 pub(crate) syntax: SyntaxNode,
3527}
3528impl CreateConversion {
3529 #[inline]
3530 pub fn literal(&self) -> Option<Literal> {
3531 support::child(&self.syntax)
3532 }
3533 #[inline]
3534 pub fn path(&self) -> Option<Path> {
3535 support::child(&self.syntax)
3536 }
3537 #[inline]
3538 pub fn conversion_token(&self) -> Option<SyntaxToken> {
3539 support::token(&self.syntax, SyntaxKind::CONVERSION_KW)
3540 }
3541 #[inline]
3542 pub fn create_token(&self) -> Option<SyntaxToken> {
3543 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3544 }
3545 #[inline]
3546 pub fn default_token(&self) -> Option<SyntaxToken> {
3547 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
3548 }
3549 #[inline]
3550 pub fn for_token(&self) -> Option<SyntaxToken> {
3551 support::token(&self.syntax, SyntaxKind::FOR_KW)
3552 }
3553 #[inline]
3554 pub fn from_token(&self) -> Option<SyntaxToken> {
3555 support::token(&self.syntax, SyntaxKind::FROM_KW)
3556 }
3557 #[inline]
3558 pub fn to_token(&self) -> Option<SyntaxToken> {
3559 support::token(&self.syntax, SyntaxKind::TO_KW)
3560 }
3561}
3562
3563#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3564pub struct CreateDatabase {
3565 pub(crate) syntax: SyntaxNode,
3566}
3567impl CreateDatabase {
3568 #[inline]
3569 pub fn create_database_option_list(&self) -> Option<CreateDatabaseOptionList> {
3570 support::child(&self.syntax)
3571 }
3572 #[inline]
3573 pub fn name(&self) -> Option<Name> {
3574 support::child(&self.syntax)
3575 }
3576 #[inline]
3577 pub fn create_token(&self) -> Option<SyntaxToken> {
3578 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3579 }
3580 #[inline]
3581 pub fn database_token(&self) -> Option<SyntaxToken> {
3582 support::token(&self.syntax, SyntaxKind::DATABASE_KW)
3583 }
3584}
3585
3586#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3587pub struct CreateDatabaseOption {
3588 pub(crate) syntax: SyntaxNode,
3589}
3590impl CreateDatabaseOption {
3591 #[inline]
3592 pub fn literal(&self) -> Option<Literal> {
3593 support::child(&self.syntax)
3594 }
3595 #[inline]
3596 pub fn eq_token(&self) -> Option<SyntaxToken> {
3597 support::token(&self.syntax, SyntaxKind::EQ)
3598 }
3599 #[inline]
3600 pub fn connection_token(&self) -> Option<SyntaxToken> {
3601 support::token(&self.syntax, SyntaxKind::CONNECTION_KW)
3602 }
3603 #[inline]
3604 pub fn default_token(&self) -> Option<SyntaxToken> {
3605 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
3606 }
3607 #[inline]
3608 pub fn encoding_token(&self) -> Option<SyntaxToken> {
3609 support::token(&self.syntax, SyntaxKind::ENCODING_KW)
3610 }
3611 #[inline]
3612 pub fn ident_token(&self) -> Option<SyntaxToken> {
3613 support::token(&self.syntax, SyntaxKind::IDENT)
3614 }
3615 #[inline]
3616 pub fn limit_token(&self) -> Option<SyntaxToken> {
3617 support::token(&self.syntax, SyntaxKind::LIMIT_KW)
3618 }
3619 #[inline]
3620 pub fn owner_token(&self) -> Option<SyntaxToken> {
3621 support::token(&self.syntax, SyntaxKind::OWNER_KW)
3622 }
3623 #[inline]
3624 pub fn tablespace_token(&self) -> Option<SyntaxToken> {
3625 support::token(&self.syntax, SyntaxKind::TABLESPACE_KW)
3626 }
3627 #[inline]
3628 pub fn template_token(&self) -> Option<SyntaxToken> {
3629 support::token(&self.syntax, SyntaxKind::TEMPLATE_KW)
3630 }
3631}
3632
3633#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3634pub struct CreateDatabaseOptionList {
3635 pub(crate) syntax: SyntaxNode,
3636}
3637impl CreateDatabaseOptionList {
3638 #[inline]
3639 pub fn create_database_options(&self) -> AstChildren<CreateDatabaseOption> {
3640 support::children(&self.syntax)
3641 }
3642 #[inline]
3643 pub fn with_token(&self) -> Option<SyntaxToken> {
3644 support::token(&self.syntax, SyntaxKind::WITH_KW)
3645 }
3646}
3647
3648#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3649pub struct CreateDomain {
3650 pub(crate) syntax: SyntaxNode,
3651}
3652impl CreateDomain {
3653 #[inline]
3654 pub fn collate(&self) -> Option<Collate> {
3655 support::child(&self.syntax)
3656 }
3657 #[inline]
3658 pub fn constraints(&self) -> AstChildren<Constraint> {
3659 support::children(&self.syntax)
3660 }
3661 #[inline]
3662 pub fn path(&self) -> Option<Path> {
3663 support::child(&self.syntax)
3664 }
3665 #[inline]
3666 pub fn ty(&self) -> Option<Type> {
3667 support::child(&self.syntax)
3668 }
3669 #[inline]
3670 pub fn as_token(&self) -> Option<SyntaxToken> {
3671 support::token(&self.syntax, SyntaxKind::AS_KW)
3672 }
3673 #[inline]
3674 pub fn create_token(&self) -> Option<SyntaxToken> {
3675 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3676 }
3677 #[inline]
3678 pub fn domain_token(&self) -> Option<SyntaxToken> {
3679 support::token(&self.syntax, SyntaxKind::DOMAIN_KW)
3680 }
3681}
3682
3683#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3684pub struct CreateEventTrigger {
3685 pub(crate) syntax: SyntaxNode,
3686}
3687impl CreateEventTrigger {
3688 #[inline]
3689 pub fn call_expr(&self) -> Option<CallExpr> {
3690 support::child(&self.syntax)
3691 }
3692 #[inline]
3693 pub fn event_trigger_when_clause(&self) -> Option<EventTriggerWhenClause> {
3694 support::child(&self.syntax)
3695 }
3696 #[inline]
3697 pub fn name(&self) -> Option<Name> {
3698 support::child(&self.syntax)
3699 }
3700 #[inline]
3701 pub fn name_ref(&self) -> Option<NameRef> {
3702 support::child(&self.syntax)
3703 }
3704 #[inline]
3705 pub fn create_token(&self) -> Option<SyntaxToken> {
3706 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3707 }
3708 #[inline]
3709 pub fn event_token(&self) -> Option<SyntaxToken> {
3710 support::token(&self.syntax, SyntaxKind::EVENT_KW)
3711 }
3712 #[inline]
3713 pub fn execute_token(&self) -> Option<SyntaxToken> {
3714 support::token(&self.syntax, SyntaxKind::EXECUTE_KW)
3715 }
3716 #[inline]
3717 pub fn function_token(&self) -> Option<SyntaxToken> {
3718 support::token(&self.syntax, SyntaxKind::FUNCTION_KW)
3719 }
3720 #[inline]
3721 pub fn on_token(&self) -> Option<SyntaxToken> {
3722 support::token(&self.syntax, SyntaxKind::ON_KW)
3723 }
3724 #[inline]
3725 pub fn procedure_token(&self) -> Option<SyntaxToken> {
3726 support::token(&self.syntax, SyntaxKind::PROCEDURE_KW)
3727 }
3728 #[inline]
3729 pub fn trigger_token(&self) -> Option<SyntaxToken> {
3730 support::token(&self.syntax, SyntaxKind::TRIGGER_KW)
3731 }
3732}
3733
3734#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3735pub struct CreateExtension {
3736 pub(crate) syntax: SyntaxNode,
3737}
3738impl CreateExtension {
3739 #[inline]
3740 pub fn if_not_exists(&self) -> Option<IfNotExists> {
3741 support::child(&self.syntax)
3742 }
3743 #[inline]
3744 pub fn name(&self) -> Option<Name> {
3745 support::child(&self.syntax)
3746 }
3747 #[inline]
3748 pub fn create_token(&self) -> Option<SyntaxToken> {
3749 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3750 }
3751 #[inline]
3752 pub fn extension_token(&self) -> Option<SyntaxToken> {
3753 support::token(&self.syntax, SyntaxKind::EXTENSION_KW)
3754 }
3755}
3756
3757#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3758pub struct CreateForeignDataWrapper {
3759 pub(crate) syntax: SyntaxNode,
3760}
3761impl CreateForeignDataWrapper {
3762 #[inline]
3763 pub fn alter_option_list(&self) -> Option<AlterOptionList> {
3764 support::child(&self.syntax)
3765 }
3766 #[inline]
3767 pub fn fdw_option_list(&self) -> Option<FdwOptionList> {
3768 support::child(&self.syntax)
3769 }
3770 #[inline]
3771 pub fn name(&self) -> Option<Name> {
3772 support::child(&self.syntax)
3773 }
3774 #[inline]
3775 pub fn create_token(&self) -> Option<SyntaxToken> {
3776 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3777 }
3778 #[inline]
3779 pub fn data_token(&self) -> Option<SyntaxToken> {
3780 support::token(&self.syntax, SyntaxKind::DATA_KW)
3781 }
3782 #[inline]
3783 pub fn foreign_token(&self) -> Option<SyntaxToken> {
3784 support::token(&self.syntax, SyntaxKind::FOREIGN_KW)
3785 }
3786 #[inline]
3787 pub fn wrapper_token(&self) -> Option<SyntaxToken> {
3788 support::token(&self.syntax, SyntaxKind::WRAPPER_KW)
3789 }
3790}
3791
3792#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3793pub struct CreateForeignTable {
3794 pub(crate) syntax: SyntaxNode,
3795}
3796impl CreateForeignTable {
3797 #[inline]
3798 pub fn alter_option_list(&self) -> Option<AlterOptionList> {
3799 support::child(&self.syntax)
3800 }
3801 #[inline]
3802 pub fn if_not_exists(&self) -> Option<IfNotExists> {
3803 support::child(&self.syntax)
3804 }
3805 #[inline]
3806 pub fn inherits(&self) -> Option<Inherits> {
3807 support::child(&self.syntax)
3808 }
3809 #[inline]
3810 pub fn partition_of(&self) -> Option<PartitionOf> {
3811 support::child(&self.syntax)
3812 }
3813 #[inline]
3814 pub fn partition_type(&self) -> Option<PartitionType> {
3815 support::child(&self.syntax)
3816 }
3817 #[inline]
3818 pub fn path(&self) -> Option<Path> {
3819 support::child(&self.syntax)
3820 }
3821 #[inline]
3822 pub fn server_name(&self) -> Option<ServerName> {
3823 support::child(&self.syntax)
3824 }
3825 #[inline]
3826 pub fn table_arg_list(&self) -> Option<TableArgList> {
3827 support::child(&self.syntax)
3828 }
3829 #[inline]
3830 pub fn create_token(&self) -> Option<SyntaxToken> {
3831 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3832 }
3833 #[inline]
3834 pub fn foreign_token(&self) -> Option<SyntaxToken> {
3835 support::token(&self.syntax, SyntaxKind::FOREIGN_KW)
3836 }
3837 #[inline]
3838 pub fn table_token(&self) -> Option<SyntaxToken> {
3839 support::token(&self.syntax, SyntaxKind::TABLE_KW)
3840 }
3841}
3842
3843#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3844pub struct CreateFunction {
3845 pub(crate) syntax: SyntaxNode,
3846}
3847impl CreateFunction {
3848 #[inline]
3849 pub fn option_list(&self) -> Option<FuncOptionList> {
3850 support::child(&self.syntax)
3851 }
3852 #[inline]
3853 pub fn or_replace(&self) -> Option<OrReplace> {
3854 support::child(&self.syntax)
3855 }
3856 #[inline]
3857 pub fn param_list(&self) -> Option<ParamList> {
3858 support::child(&self.syntax)
3859 }
3860 #[inline]
3861 pub fn path(&self) -> Option<Path> {
3862 support::child(&self.syntax)
3863 }
3864 #[inline]
3865 pub fn ret_type(&self) -> Option<RetType> {
3866 support::child(&self.syntax)
3867 }
3868 #[inline]
3869 pub fn create_token(&self) -> Option<SyntaxToken> {
3870 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3871 }
3872 #[inline]
3873 pub fn function_token(&self) -> Option<SyntaxToken> {
3874 support::token(&self.syntax, SyntaxKind::FUNCTION_KW)
3875 }
3876}
3877
3878#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3879pub struct CreateGroup {
3880 pub(crate) syntax: SyntaxNode,
3881}
3882impl CreateGroup {
3883 #[inline]
3884 pub fn name(&self) -> Option<Name> {
3885 support::child(&self.syntax)
3886 }
3887 #[inline]
3888 pub fn role_option_list(&self) -> Option<RoleOptionList> {
3889 support::child(&self.syntax)
3890 }
3891 #[inline]
3892 pub fn create_token(&self) -> Option<SyntaxToken> {
3893 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3894 }
3895 #[inline]
3896 pub fn group_token(&self) -> Option<SyntaxToken> {
3897 support::token(&self.syntax, SyntaxKind::GROUP_KW)
3898 }
3899}
3900
3901#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3902pub struct CreateIndex {
3903 pub(crate) syntax: SyntaxNode,
3904}
3905impl CreateIndex {
3906 #[inline]
3907 pub fn constraint_include_clause(&self) -> Option<ConstraintIncludeClause> {
3908 support::child(&self.syntax)
3909 }
3910 #[inline]
3911 pub fn if_not_exists(&self) -> Option<IfNotExists> {
3912 support::child(&self.syntax)
3913 }
3914 #[inline]
3915 pub fn name(&self) -> Option<Name> {
3916 support::child(&self.syntax)
3917 }
3918 #[inline]
3919 pub fn nulls_distinct(&self) -> Option<NullsDistinct> {
3920 support::child(&self.syntax)
3921 }
3922 #[inline]
3923 pub fn nulls_not_distinct(&self) -> Option<NullsNotDistinct> {
3924 support::child(&self.syntax)
3925 }
3926 #[inline]
3927 pub fn partition_item_list(&self) -> Option<PartitionItemList> {
3928 support::child(&self.syntax)
3929 }
3930 #[inline]
3931 pub fn relation_name(&self) -> Option<RelationName> {
3932 support::child(&self.syntax)
3933 }
3934 #[inline]
3935 pub fn tablespace(&self) -> Option<Tablespace> {
3936 support::child(&self.syntax)
3937 }
3938 #[inline]
3939 pub fn using_method(&self) -> Option<UsingMethod> {
3940 support::child(&self.syntax)
3941 }
3942 #[inline]
3943 pub fn where_clause(&self) -> Option<WhereClause> {
3944 support::child(&self.syntax)
3945 }
3946 #[inline]
3947 pub fn with_params(&self) -> Option<WithParams> {
3948 support::child(&self.syntax)
3949 }
3950 #[inline]
3951 pub fn concurrently_token(&self) -> Option<SyntaxToken> {
3952 support::token(&self.syntax, SyntaxKind::CONCURRENTLY_KW)
3953 }
3954 #[inline]
3955 pub fn create_token(&self) -> Option<SyntaxToken> {
3956 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3957 }
3958 #[inline]
3959 pub fn index_token(&self) -> Option<SyntaxToken> {
3960 support::token(&self.syntax, SyntaxKind::INDEX_KW)
3961 }
3962 #[inline]
3963 pub fn on_token(&self) -> Option<SyntaxToken> {
3964 support::token(&self.syntax, SyntaxKind::ON_KW)
3965 }
3966 #[inline]
3967 pub fn unique_token(&self) -> Option<SyntaxToken> {
3968 support::token(&self.syntax, SyntaxKind::UNIQUE_KW)
3969 }
3970}
3971
3972#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3973pub struct CreateLanguage {
3974 pub(crate) syntax: SyntaxNode,
3975}
3976impl CreateLanguage {
3977 #[inline]
3978 pub fn name(&self) -> Option<Name> {
3979 support::child(&self.syntax)
3980 }
3981 #[inline]
3982 pub fn or_replace(&self) -> Option<OrReplace> {
3983 support::child(&self.syntax)
3984 }
3985 #[inline]
3986 pub fn path(&self) -> Option<Path> {
3987 support::child(&self.syntax)
3988 }
3989 #[inline]
3990 pub fn create_token(&self) -> Option<SyntaxToken> {
3991 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3992 }
3993 #[inline]
3994 pub fn handler_token(&self) -> Option<SyntaxToken> {
3995 support::token(&self.syntax, SyntaxKind::HANDLER_KW)
3996 }
3997 #[inline]
3998 pub fn inline_token(&self) -> Option<SyntaxToken> {
3999 support::token(&self.syntax, SyntaxKind::INLINE_KW)
4000 }
4001 #[inline]
4002 pub fn language_token(&self) -> Option<SyntaxToken> {
4003 support::token(&self.syntax, SyntaxKind::LANGUAGE_KW)
4004 }
4005 #[inline]
4006 pub fn procedural_token(&self) -> Option<SyntaxToken> {
4007 support::token(&self.syntax, SyntaxKind::PROCEDURAL_KW)
4008 }
4009 #[inline]
4010 pub fn trusted_token(&self) -> Option<SyntaxToken> {
4011 support::token(&self.syntax, SyntaxKind::TRUSTED_KW)
4012 }
4013 #[inline]
4014 pub fn validator_token(&self) -> Option<SyntaxToken> {
4015 support::token(&self.syntax, SyntaxKind::VALIDATOR_KW)
4016 }
4017}
4018
4019#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4020pub struct CreateMaterializedView {
4021 pub(crate) syntax: SyntaxNode,
4022}
4023impl CreateMaterializedView {
4024 #[inline]
4025 pub fn column_list(&self) -> Option<ColumnList> {
4026 support::child(&self.syntax)
4027 }
4028 #[inline]
4029 pub fn if_not_exists(&self) -> Option<IfNotExists> {
4030 support::child(&self.syntax)
4031 }
4032 #[inline]
4033 pub fn path(&self) -> Option<Path> {
4034 support::child(&self.syntax)
4035 }
4036 #[inline]
4037 pub fn query(&self) -> Option<SelectVariant> {
4038 support::child(&self.syntax)
4039 }
4040 #[inline]
4041 pub fn tablespace(&self) -> Option<Tablespace> {
4042 support::child(&self.syntax)
4043 }
4044 #[inline]
4045 pub fn using_method(&self) -> Option<UsingMethod> {
4046 support::child(&self.syntax)
4047 }
4048 #[inline]
4049 pub fn with_data(&self) -> Option<WithData> {
4050 support::child(&self.syntax)
4051 }
4052 #[inline]
4053 pub fn with_no_data(&self) -> Option<WithNoData> {
4054 support::child(&self.syntax)
4055 }
4056 #[inline]
4057 pub fn with_params(&self) -> Option<WithParams> {
4058 support::child(&self.syntax)
4059 }
4060 #[inline]
4061 pub fn as_token(&self) -> Option<SyntaxToken> {
4062 support::token(&self.syntax, SyntaxKind::AS_KW)
4063 }
4064 #[inline]
4065 pub fn create_token(&self) -> Option<SyntaxToken> {
4066 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4067 }
4068 #[inline]
4069 pub fn materialized_token(&self) -> Option<SyntaxToken> {
4070 support::token(&self.syntax, SyntaxKind::MATERIALIZED_KW)
4071 }
4072 #[inline]
4073 pub fn view_token(&self) -> Option<SyntaxToken> {
4074 support::token(&self.syntax, SyntaxKind::VIEW_KW)
4075 }
4076}
4077
4078#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4079pub struct CreateOperator {
4080 pub(crate) syntax: SyntaxNode,
4081}
4082impl CreateOperator {
4083 #[inline]
4084 pub fn attribute_list(&self) -> Option<AttributeList> {
4085 support::child(&self.syntax)
4086 }
4087 #[inline]
4088 pub fn op(&self) -> Option<Op> {
4089 support::child(&self.syntax)
4090 }
4091 #[inline]
4092 pub fn path(&self) -> Option<Path> {
4093 support::child(&self.syntax)
4094 }
4095 #[inline]
4096 pub fn create_token(&self) -> Option<SyntaxToken> {
4097 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4098 }
4099 #[inline]
4100 pub fn operator_token(&self) -> Option<SyntaxToken> {
4101 support::token(&self.syntax, SyntaxKind::OPERATOR_KW)
4102 }
4103}
4104
4105#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4106pub struct CreateOperatorClass {
4107 pub(crate) syntax: SyntaxNode,
4108}
4109impl CreateOperatorClass {
4110 #[inline]
4111 pub fn name_ref(&self) -> Option<NameRef> {
4112 support::child(&self.syntax)
4113 }
4114 #[inline]
4115 pub fn operator_class_option_list(&self) -> Option<OperatorClassOptionList> {
4116 support::child(&self.syntax)
4117 }
4118 #[inline]
4119 pub fn path(&self) -> Option<Path> {
4120 support::child(&self.syntax)
4121 }
4122 #[inline]
4123 pub fn ty(&self) -> Option<Type> {
4124 support::child(&self.syntax)
4125 }
4126 #[inline]
4127 pub fn as_token(&self) -> Option<SyntaxToken> {
4128 support::token(&self.syntax, SyntaxKind::AS_KW)
4129 }
4130 #[inline]
4131 pub fn class_token(&self) -> Option<SyntaxToken> {
4132 support::token(&self.syntax, SyntaxKind::CLASS_KW)
4133 }
4134 #[inline]
4135 pub fn create_token(&self) -> Option<SyntaxToken> {
4136 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4137 }
4138 #[inline]
4139 pub fn default_token(&self) -> Option<SyntaxToken> {
4140 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
4141 }
4142 #[inline]
4143 pub fn family_token(&self) -> Option<SyntaxToken> {
4144 support::token(&self.syntax, SyntaxKind::FAMILY_KW)
4145 }
4146 #[inline]
4147 pub fn for_token(&self) -> Option<SyntaxToken> {
4148 support::token(&self.syntax, SyntaxKind::FOR_KW)
4149 }
4150 #[inline]
4151 pub fn operator_token(&self) -> Option<SyntaxToken> {
4152 support::token(&self.syntax, SyntaxKind::OPERATOR_KW)
4153 }
4154 #[inline]
4155 pub fn type_token(&self) -> Option<SyntaxToken> {
4156 support::token(&self.syntax, SyntaxKind::TYPE_KW)
4157 }
4158 #[inline]
4159 pub fn using_token(&self) -> Option<SyntaxToken> {
4160 support::token(&self.syntax, SyntaxKind::USING_KW)
4161 }
4162}
4163
4164#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4165pub struct CreateOperatorFamily {
4166 pub(crate) syntax: SyntaxNode,
4167}
4168impl CreateOperatorFamily {
4169 #[inline]
4170 pub fn name_ref(&self) -> Option<NameRef> {
4171 support::child(&self.syntax)
4172 }
4173 #[inline]
4174 pub fn path(&self) -> Option<Path> {
4175 support::child(&self.syntax)
4176 }
4177 #[inline]
4178 pub fn create_token(&self) -> Option<SyntaxToken> {
4179 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4180 }
4181 #[inline]
4182 pub fn family_token(&self) -> Option<SyntaxToken> {
4183 support::token(&self.syntax, SyntaxKind::FAMILY_KW)
4184 }
4185 #[inline]
4186 pub fn operator_token(&self) -> Option<SyntaxToken> {
4187 support::token(&self.syntax, SyntaxKind::OPERATOR_KW)
4188 }
4189 #[inline]
4190 pub fn using_token(&self) -> Option<SyntaxToken> {
4191 support::token(&self.syntax, SyntaxKind::USING_KW)
4192 }
4193}
4194
4195#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4196pub struct CreatePolicy {
4197 pub(crate) syntax: SyntaxNode,
4198}
4199impl CreatePolicy {
4200 #[inline]
4201 pub fn as_policy_type(&self) -> Option<AsPolicyType> {
4202 support::child(&self.syntax)
4203 }
4204 #[inline]
4205 pub fn name(&self) -> Option<Name> {
4206 support::child(&self.syntax)
4207 }
4208 #[inline]
4209 pub fn on_table(&self) -> Option<OnTable> {
4210 support::child(&self.syntax)
4211 }
4212 #[inline]
4213 pub fn role_ref_list(&self) -> Option<RoleRefList> {
4214 support::child(&self.syntax)
4215 }
4216 #[inline]
4217 pub fn using_expr_clause(&self) -> Option<UsingExprClause> {
4218 support::child(&self.syntax)
4219 }
4220 #[inline]
4221 pub fn with_check_expr_clause(&self) -> Option<WithCheckExprClause> {
4222 support::child(&self.syntax)
4223 }
4224 #[inline]
4225 pub fn all_token(&self) -> Option<SyntaxToken> {
4226 support::token(&self.syntax, SyntaxKind::ALL_KW)
4227 }
4228 #[inline]
4229 pub fn create_token(&self) -> Option<SyntaxToken> {
4230 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4231 }
4232 #[inline]
4233 pub fn delete_token(&self) -> Option<SyntaxToken> {
4234 support::token(&self.syntax, SyntaxKind::DELETE_KW)
4235 }
4236 #[inline]
4237 pub fn for_token(&self) -> Option<SyntaxToken> {
4238 support::token(&self.syntax, SyntaxKind::FOR_KW)
4239 }
4240 #[inline]
4241 pub fn insert_token(&self) -> Option<SyntaxToken> {
4242 support::token(&self.syntax, SyntaxKind::INSERT_KW)
4243 }
4244 #[inline]
4245 pub fn policy_token(&self) -> Option<SyntaxToken> {
4246 support::token(&self.syntax, SyntaxKind::POLICY_KW)
4247 }
4248 #[inline]
4249 pub fn select_token(&self) -> Option<SyntaxToken> {
4250 support::token(&self.syntax, SyntaxKind::SELECT_KW)
4251 }
4252 #[inline]
4253 pub fn to_token(&self) -> Option<SyntaxToken> {
4254 support::token(&self.syntax, SyntaxKind::TO_KW)
4255 }
4256 #[inline]
4257 pub fn update_token(&self) -> Option<SyntaxToken> {
4258 support::token(&self.syntax, SyntaxKind::UPDATE_KW)
4259 }
4260}
4261
4262#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4263pub struct CreateProcedure {
4264 pub(crate) syntax: SyntaxNode,
4265}
4266impl CreateProcedure {
4267 #[inline]
4268 pub fn option_list(&self) -> Option<FuncOptionList> {
4269 support::child(&self.syntax)
4270 }
4271 #[inline]
4272 pub fn or_replace(&self) -> Option<OrReplace> {
4273 support::child(&self.syntax)
4274 }
4275 #[inline]
4276 pub fn param_list(&self) -> Option<ParamList> {
4277 support::child(&self.syntax)
4278 }
4279 #[inline]
4280 pub fn path(&self) -> Option<Path> {
4281 support::child(&self.syntax)
4282 }
4283 #[inline]
4284 pub fn create_token(&self) -> Option<SyntaxToken> {
4285 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4286 }
4287 #[inline]
4288 pub fn procedure_token(&self) -> Option<SyntaxToken> {
4289 support::token(&self.syntax, SyntaxKind::PROCEDURE_KW)
4290 }
4291}
4292
4293#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4294pub struct CreatePublication {
4295 pub(crate) syntax: SyntaxNode,
4296}
4297impl CreatePublication {
4298 #[inline]
4299 pub fn name(&self) -> Option<Name> {
4300 support::child(&self.syntax)
4301 }
4302 #[inline]
4303 pub fn publication_objects(&self) -> AstChildren<PublicationObject> {
4304 support::children(&self.syntax)
4305 }
4306 #[inline]
4307 pub fn with_params(&self) -> Option<WithParams> {
4308 support::child(&self.syntax)
4309 }
4310 #[inline]
4311 pub fn all_token(&self) -> Option<SyntaxToken> {
4312 support::token(&self.syntax, SyntaxKind::ALL_KW)
4313 }
4314 #[inline]
4315 pub fn create_token(&self) -> Option<SyntaxToken> {
4316 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4317 }
4318 #[inline]
4319 pub fn for_token(&self) -> Option<SyntaxToken> {
4320 support::token(&self.syntax, SyntaxKind::FOR_KW)
4321 }
4322 #[inline]
4323 pub fn publication_token(&self) -> Option<SyntaxToken> {
4324 support::token(&self.syntax, SyntaxKind::PUBLICATION_KW)
4325 }
4326 #[inline]
4327 pub fn tables_token(&self) -> Option<SyntaxToken> {
4328 support::token(&self.syntax, SyntaxKind::TABLES_KW)
4329 }
4330}
4331
4332#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4333pub struct CreateRole {
4334 pub(crate) syntax: SyntaxNode,
4335}
4336impl CreateRole {
4337 #[inline]
4338 pub fn name(&self) -> Option<Name> {
4339 support::child(&self.syntax)
4340 }
4341 #[inline]
4342 pub fn role_option_list(&self) -> Option<RoleOptionList> {
4343 support::child(&self.syntax)
4344 }
4345 #[inline]
4346 pub fn create_token(&self) -> Option<SyntaxToken> {
4347 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4348 }
4349 #[inline]
4350 pub fn role_token(&self) -> Option<SyntaxToken> {
4351 support::token(&self.syntax, SyntaxKind::ROLE_KW)
4352 }
4353}
4354
4355#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4356pub struct CreateRule {
4357 pub(crate) syntax: SyntaxNode,
4358}
4359impl CreateRule {
4360 #[inline]
4361 pub fn name(&self) -> Option<Name> {
4362 support::child(&self.syntax)
4363 }
4364 #[inline]
4365 pub fn or_replace(&self) -> Option<OrReplace> {
4366 support::child(&self.syntax)
4367 }
4368 #[inline]
4369 pub fn path(&self) -> Option<Path> {
4370 support::child(&self.syntax)
4371 }
4372 #[inline]
4373 pub fn stmt(&self) -> Option<Stmt> {
4374 support::child(&self.syntax)
4375 }
4376 #[inline]
4377 pub fn stmts(&self) -> AstChildren<Stmt> {
4378 support::children(&self.syntax)
4379 }
4380 #[inline]
4381 pub fn where_clause(&self) -> Option<WhereClause> {
4382 support::child(&self.syntax)
4383 }
4384 #[inline]
4385 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
4386 support::token(&self.syntax, SyntaxKind::L_PAREN)
4387 }
4388 #[inline]
4389 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
4390 support::token(&self.syntax, SyntaxKind::R_PAREN)
4391 }
4392 #[inline]
4393 pub fn also_token(&self) -> Option<SyntaxToken> {
4394 support::token(&self.syntax, SyntaxKind::ALSO_KW)
4395 }
4396 #[inline]
4397 pub fn as_token(&self) -> Option<SyntaxToken> {
4398 support::token(&self.syntax, SyntaxKind::AS_KW)
4399 }
4400 #[inline]
4401 pub fn create_token(&self) -> Option<SyntaxToken> {
4402 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4403 }
4404 #[inline]
4405 pub fn delete_token(&self) -> Option<SyntaxToken> {
4406 support::token(&self.syntax, SyntaxKind::DELETE_KW)
4407 }
4408 #[inline]
4409 pub fn do_token(&self) -> Option<SyntaxToken> {
4410 support::token(&self.syntax, SyntaxKind::DO_KW)
4411 }
4412 #[inline]
4413 pub fn ident_token(&self) -> Option<SyntaxToken> {
4414 support::token(&self.syntax, SyntaxKind::IDENT)
4415 }
4416 #[inline]
4417 pub fn insert_token(&self) -> Option<SyntaxToken> {
4418 support::token(&self.syntax, SyntaxKind::INSERT_KW)
4419 }
4420 #[inline]
4421 pub fn instead_token(&self) -> Option<SyntaxToken> {
4422 support::token(&self.syntax, SyntaxKind::INSTEAD_KW)
4423 }
4424 #[inline]
4425 pub fn nothing_token(&self) -> Option<SyntaxToken> {
4426 support::token(&self.syntax, SyntaxKind::NOTHING_KW)
4427 }
4428 #[inline]
4429 pub fn on_token(&self) -> Option<SyntaxToken> {
4430 support::token(&self.syntax, SyntaxKind::ON_KW)
4431 }
4432 #[inline]
4433 pub fn rule_token(&self) -> Option<SyntaxToken> {
4434 support::token(&self.syntax, SyntaxKind::RULE_KW)
4435 }
4436 #[inline]
4437 pub fn select_token(&self) -> Option<SyntaxToken> {
4438 support::token(&self.syntax, SyntaxKind::SELECT_KW)
4439 }
4440 #[inline]
4441 pub fn to_token(&self) -> Option<SyntaxToken> {
4442 support::token(&self.syntax, SyntaxKind::TO_KW)
4443 }
4444 #[inline]
4445 pub fn update_token(&self) -> Option<SyntaxToken> {
4446 support::token(&self.syntax, SyntaxKind::UPDATE_KW)
4447 }
4448}
4449
4450#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4451pub struct CreateSchema {
4452 pub(crate) syntax: SyntaxNode,
4453}
4454impl CreateSchema {
4455 #[inline]
4456 pub fn if_not_exists(&self) -> Option<IfNotExists> {
4457 support::child(&self.syntax)
4458 }
4459 #[inline]
4460 pub fn name(&self) -> Option<Name> {
4461 support::child(&self.syntax)
4462 }
4463 #[inline]
4464 pub fn role(&self) -> Option<Role> {
4465 support::child(&self.syntax)
4466 }
4467 #[inline]
4468 pub fn role_ref(&self) -> Option<RoleRef> {
4469 support::child(&self.syntax)
4470 }
4471 #[inline]
4472 pub fn schema_elements(&self) -> AstChildren<SchemaElement> {
4473 support::children(&self.syntax)
4474 }
4475 #[inline]
4476 pub fn authorization_token(&self) -> Option<SyntaxToken> {
4477 support::token(&self.syntax, SyntaxKind::AUTHORIZATION_KW)
4478 }
4479 #[inline]
4480 pub fn create_token(&self) -> Option<SyntaxToken> {
4481 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4482 }
4483 #[inline]
4484 pub fn schema_token(&self) -> Option<SyntaxToken> {
4485 support::token(&self.syntax, SyntaxKind::SCHEMA_KW)
4486 }
4487}
4488
4489#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4490pub struct CreateSequence {
4491 pub(crate) syntax: SyntaxNode,
4492}
4493impl CreateSequence {
4494 #[inline]
4495 pub fn if_not_exists(&self) -> Option<IfNotExists> {
4496 support::child(&self.syntax)
4497 }
4498 #[inline]
4499 pub fn path(&self) -> Option<Path> {
4500 support::child(&self.syntax)
4501 }
4502 #[inline]
4503 pub fn sequence_options(&self) -> AstChildren<SequenceOption> {
4504 support::children(&self.syntax)
4505 }
4506 #[inline]
4507 pub fn create_token(&self) -> Option<SyntaxToken> {
4508 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4509 }
4510 #[inline]
4511 pub fn sequence_token(&self) -> Option<SyntaxToken> {
4512 support::token(&self.syntax, SyntaxKind::SEQUENCE_KW)
4513 }
4514 #[inline]
4515 pub fn temp_token(&self) -> Option<SyntaxToken> {
4516 support::token(&self.syntax, SyntaxKind::TEMP_KW)
4517 }
4518 #[inline]
4519 pub fn temporary_token(&self) -> Option<SyntaxToken> {
4520 support::token(&self.syntax, SyntaxKind::TEMPORARY_KW)
4521 }
4522 #[inline]
4523 pub fn unlogged_token(&self) -> Option<SyntaxToken> {
4524 support::token(&self.syntax, SyntaxKind::UNLOGGED_KW)
4525 }
4526}
4527
4528#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4529pub struct CreateServer {
4530 pub(crate) syntax: SyntaxNode,
4531}
4532impl CreateServer {
4533 #[inline]
4534 pub fn alter_option_list(&self) -> Option<AlterOptionList> {
4535 support::child(&self.syntax)
4536 }
4537 #[inline]
4538 pub fn if_not_exists(&self) -> Option<IfNotExists> {
4539 support::child(&self.syntax)
4540 }
4541 #[inline]
4542 pub fn literal(&self) -> Option<Literal> {
4543 support::child(&self.syntax)
4544 }
4545 #[inline]
4546 pub fn name(&self) -> Option<Name> {
4547 support::child(&self.syntax)
4548 }
4549 #[inline]
4550 pub fn name_ref(&self) -> Option<NameRef> {
4551 support::child(&self.syntax)
4552 }
4553 #[inline]
4554 pub fn create_token(&self) -> Option<SyntaxToken> {
4555 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4556 }
4557 #[inline]
4558 pub fn data_token(&self) -> Option<SyntaxToken> {
4559 support::token(&self.syntax, SyntaxKind::DATA_KW)
4560 }
4561 #[inline]
4562 pub fn foreign_token(&self) -> Option<SyntaxToken> {
4563 support::token(&self.syntax, SyntaxKind::FOREIGN_KW)
4564 }
4565 #[inline]
4566 pub fn server_token(&self) -> Option<SyntaxToken> {
4567 support::token(&self.syntax, SyntaxKind::SERVER_KW)
4568 }
4569 #[inline]
4570 pub fn type_token(&self) -> Option<SyntaxToken> {
4571 support::token(&self.syntax, SyntaxKind::TYPE_KW)
4572 }
4573 #[inline]
4574 pub fn version_token(&self) -> Option<SyntaxToken> {
4575 support::token(&self.syntax, SyntaxKind::VERSION_KW)
4576 }
4577 #[inline]
4578 pub fn wrapper_token(&self) -> Option<SyntaxToken> {
4579 support::token(&self.syntax, SyntaxKind::WRAPPER_KW)
4580 }
4581}
4582
4583#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4584pub struct CreateStatistics {
4585 pub(crate) syntax: SyntaxNode,
4586}
4587impl CreateStatistics {
4588 #[inline]
4589 pub fn from_table(&self) -> Option<FromTable> {
4590 support::child(&self.syntax)
4591 }
4592 #[inline]
4593 pub fn name_refs(&self) -> AstChildren<NameRef> {
4594 support::children(&self.syntax)
4595 }
4596 #[inline]
4597 pub fn path(&self) -> Option<Path> {
4598 support::child(&self.syntax)
4599 }
4600 #[inline]
4601 pub fn create_token(&self) -> Option<SyntaxToken> {
4602 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4603 }
4604 #[inline]
4605 pub fn on_token(&self) -> Option<SyntaxToken> {
4606 support::token(&self.syntax, SyntaxKind::ON_KW)
4607 }
4608 #[inline]
4609 pub fn statistics_token(&self) -> Option<SyntaxToken> {
4610 support::token(&self.syntax, SyntaxKind::STATISTICS_KW)
4611 }
4612}
4613
4614#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4615pub struct CreateSubscription {
4616 pub(crate) syntax: SyntaxNode,
4617}
4618impl CreateSubscription {
4619 #[inline]
4620 pub fn literal(&self) -> Option<Literal> {
4621 support::child(&self.syntax)
4622 }
4623 #[inline]
4624 pub fn name(&self) -> Option<Name> {
4625 support::child(&self.syntax)
4626 }
4627 #[inline]
4628 pub fn name_refs(&self) -> AstChildren<NameRef> {
4629 support::children(&self.syntax)
4630 }
4631 #[inline]
4632 pub fn with_params(&self) -> Option<WithParams> {
4633 support::child(&self.syntax)
4634 }
4635 #[inline]
4636 pub fn connection_token(&self) -> Option<SyntaxToken> {
4637 support::token(&self.syntax, SyntaxKind::CONNECTION_KW)
4638 }
4639 #[inline]
4640 pub fn create_token(&self) -> Option<SyntaxToken> {
4641 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4642 }
4643 #[inline]
4644 pub fn publication_token(&self) -> Option<SyntaxToken> {
4645 support::token(&self.syntax, SyntaxKind::PUBLICATION_KW)
4646 }
4647 #[inline]
4648 pub fn subscription_token(&self) -> Option<SyntaxToken> {
4649 support::token(&self.syntax, SyntaxKind::SUBSCRIPTION_KW)
4650 }
4651}
4652
4653#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4654pub struct CreateTable {
4655 pub(crate) syntax: SyntaxNode,
4656}
4657impl CreateTable {
4658 #[inline]
4659 pub fn if_not_exists(&self) -> Option<IfNotExists> {
4660 support::child(&self.syntax)
4661 }
4662 #[inline]
4663 pub fn inherits(&self) -> Option<Inherits> {
4664 support::child(&self.syntax)
4665 }
4666 #[inline]
4667 pub fn of_type(&self) -> Option<OfType> {
4668 support::child(&self.syntax)
4669 }
4670 #[inline]
4671 pub fn on_commit(&self) -> Option<OnCommit> {
4672 support::child(&self.syntax)
4673 }
4674 #[inline]
4675 pub fn partition_by(&self) -> Option<PartitionBy> {
4676 support::child(&self.syntax)
4677 }
4678 #[inline]
4679 pub fn partition_of(&self) -> Option<PartitionOf> {
4680 support::child(&self.syntax)
4681 }
4682 #[inline]
4683 pub fn path(&self) -> Option<Path> {
4684 support::child(&self.syntax)
4685 }
4686 #[inline]
4687 pub fn table_arg_list(&self) -> Option<TableArgList> {
4688 support::child(&self.syntax)
4689 }
4690 #[inline]
4691 pub fn tablespace(&self) -> Option<Tablespace> {
4692 support::child(&self.syntax)
4693 }
4694 #[inline]
4695 pub fn using_method(&self) -> Option<UsingMethod> {
4696 support::child(&self.syntax)
4697 }
4698 #[inline]
4699 pub fn with_params(&self) -> Option<WithParams> {
4700 support::child(&self.syntax)
4701 }
4702 #[inline]
4703 pub fn without_oids(&self) -> Option<WithoutOids> {
4704 support::child(&self.syntax)
4705 }
4706 #[inline]
4707 pub fn create_token(&self) -> Option<SyntaxToken> {
4708 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4709 }
4710 #[inline]
4711 pub fn global_token(&self) -> Option<SyntaxToken> {
4712 support::token(&self.syntax, SyntaxKind::GLOBAL_KW)
4713 }
4714 #[inline]
4715 pub fn local_token(&self) -> Option<SyntaxToken> {
4716 support::token(&self.syntax, SyntaxKind::LOCAL_KW)
4717 }
4718 #[inline]
4719 pub fn table_token(&self) -> Option<SyntaxToken> {
4720 support::token(&self.syntax, SyntaxKind::TABLE_KW)
4721 }
4722 #[inline]
4723 pub fn temp_token(&self) -> Option<SyntaxToken> {
4724 support::token(&self.syntax, SyntaxKind::TEMP_KW)
4725 }
4726 #[inline]
4727 pub fn temporary_token(&self) -> Option<SyntaxToken> {
4728 support::token(&self.syntax, SyntaxKind::TEMPORARY_KW)
4729 }
4730 #[inline]
4731 pub fn unlogged_token(&self) -> Option<SyntaxToken> {
4732 support::token(&self.syntax, SyntaxKind::UNLOGGED_KW)
4733 }
4734}
4735
4736#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4737pub struct CreateTableAs {
4738 pub(crate) syntax: SyntaxNode,
4739}
4740impl CreateTableAs {
4741 #[inline]
4742 pub fn if_not_exists(&self) -> Option<IfNotExists> {
4743 support::child(&self.syntax)
4744 }
4745 #[inline]
4746 pub fn on_commit(&self) -> Option<OnCommit> {
4747 support::child(&self.syntax)
4748 }
4749 #[inline]
4750 pub fn path(&self) -> Option<Path> {
4751 support::child(&self.syntax)
4752 }
4753 #[inline]
4754 pub fn query(&self) -> Option<SelectVariant> {
4755 support::child(&self.syntax)
4756 }
4757 #[inline]
4758 pub fn tablespace(&self) -> Option<Tablespace> {
4759 support::child(&self.syntax)
4760 }
4761 #[inline]
4762 pub fn using_method(&self) -> Option<UsingMethod> {
4763 support::child(&self.syntax)
4764 }
4765 #[inline]
4766 pub fn with_data(&self) -> Option<WithData> {
4767 support::child(&self.syntax)
4768 }
4769 #[inline]
4770 pub fn with_no_data(&self) -> Option<WithNoData> {
4771 support::child(&self.syntax)
4772 }
4773 #[inline]
4774 pub fn with_params(&self) -> Option<WithParams> {
4775 support::child(&self.syntax)
4776 }
4777 #[inline]
4778 pub fn without_oids(&self) -> Option<WithoutOids> {
4779 support::child(&self.syntax)
4780 }
4781 #[inline]
4782 pub fn as_token(&self) -> Option<SyntaxToken> {
4783 support::token(&self.syntax, SyntaxKind::AS_KW)
4784 }
4785 #[inline]
4786 pub fn create_token(&self) -> Option<SyntaxToken> {
4787 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4788 }
4789 #[inline]
4790 pub fn global_token(&self) -> Option<SyntaxToken> {
4791 support::token(&self.syntax, SyntaxKind::GLOBAL_KW)
4792 }
4793 #[inline]
4794 pub fn local_token(&self) -> Option<SyntaxToken> {
4795 support::token(&self.syntax, SyntaxKind::LOCAL_KW)
4796 }
4797 #[inline]
4798 pub fn table_token(&self) -> Option<SyntaxToken> {
4799 support::token(&self.syntax, SyntaxKind::TABLE_KW)
4800 }
4801 #[inline]
4802 pub fn temp_token(&self) -> Option<SyntaxToken> {
4803 support::token(&self.syntax, SyntaxKind::TEMP_KW)
4804 }
4805 #[inline]
4806 pub fn temporary_token(&self) -> Option<SyntaxToken> {
4807 support::token(&self.syntax, SyntaxKind::TEMPORARY_KW)
4808 }
4809 #[inline]
4810 pub fn unlogged_token(&self) -> Option<SyntaxToken> {
4811 support::token(&self.syntax, SyntaxKind::UNLOGGED_KW)
4812 }
4813}
4814
4815#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4816pub struct CreateTablespace {
4817 pub(crate) syntax: SyntaxNode,
4818}
4819impl CreateTablespace {
4820 #[inline]
4821 pub fn literal(&self) -> Option<Literal> {
4822 support::child(&self.syntax)
4823 }
4824 #[inline]
4825 pub fn name(&self) -> Option<Name> {
4826 support::child(&self.syntax)
4827 }
4828 #[inline]
4829 pub fn role_ref(&self) -> Option<RoleRef> {
4830 support::child(&self.syntax)
4831 }
4832 #[inline]
4833 pub fn with_params(&self) -> Option<WithParams> {
4834 support::child(&self.syntax)
4835 }
4836 #[inline]
4837 pub fn create_token(&self) -> Option<SyntaxToken> {
4838 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4839 }
4840 #[inline]
4841 pub fn location_token(&self) -> Option<SyntaxToken> {
4842 support::token(&self.syntax, SyntaxKind::LOCATION_KW)
4843 }
4844 #[inline]
4845 pub fn owner_token(&self) -> Option<SyntaxToken> {
4846 support::token(&self.syntax, SyntaxKind::OWNER_KW)
4847 }
4848 #[inline]
4849 pub fn tablespace_token(&self) -> Option<SyntaxToken> {
4850 support::token(&self.syntax, SyntaxKind::TABLESPACE_KW)
4851 }
4852}
4853
4854#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4855pub struct CreateTextSearchConfiguration {
4856 pub(crate) syntax: SyntaxNode,
4857}
4858impl CreateTextSearchConfiguration {
4859 #[inline]
4860 pub fn attribute_list(&self) -> Option<AttributeList> {
4861 support::child(&self.syntax)
4862 }
4863 #[inline]
4864 pub fn path(&self) -> Option<Path> {
4865 support::child(&self.syntax)
4866 }
4867 #[inline]
4868 pub fn configuration_token(&self) -> Option<SyntaxToken> {
4869 support::token(&self.syntax, SyntaxKind::CONFIGURATION_KW)
4870 }
4871 #[inline]
4872 pub fn create_token(&self) -> Option<SyntaxToken> {
4873 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4874 }
4875 #[inline]
4876 pub fn search_token(&self) -> Option<SyntaxToken> {
4877 support::token(&self.syntax, SyntaxKind::SEARCH_KW)
4878 }
4879 #[inline]
4880 pub fn text_token(&self) -> Option<SyntaxToken> {
4881 support::token(&self.syntax, SyntaxKind::TEXT_KW)
4882 }
4883}
4884
4885#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4886pub struct CreateTextSearchDictionary {
4887 pub(crate) syntax: SyntaxNode,
4888}
4889impl CreateTextSearchDictionary {
4890 #[inline]
4891 pub fn attribute_list(&self) -> Option<AttributeList> {
4892 support::child(&self.syntax)
4893 }
4894 #[inline]
4895 pub fn path(&self) -> Option<Path> {
4896 support::child(&self.syntax)
4897 }
4898 #[inline]
4899 pub fn create_token(&self) -> Option<SyntaxToken> {
4900 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4901 }
4902 #[inline]
4903 pub fn dictionary_token(&self) -> Option<SyntaxToken> {
4904 support::token(&self.syntax, SyntaxKind::DICTIONARY_KW)
4905 }
4906 #[inline]
4907 pub fn search_token(&self) -> Option<SyntaxToken> {
4908 support::token(&self.syntax, SyntaxKind::SEARCH_KW)
4909 }
4910 #[inline]
4911 pub fn text_token(&self) -> Option<SyntaxToken> {
4912 support::token(&self.syntax, SyntaxKind::TEXT_KW)
4913 }
4914}
4915
4916#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4917pub struct CreateTextSearchParser {
4918 pub(crate) syntax: SyntaxNode,
4919}
4920impl CreateTextSearchParser {
4921 #[inline]
4922 pub fn attribute_list(&self) -> Option<AttributeList> {
4923 support::child(&self.syntax)
4924 }
4925 #[inline]
4926 pub fn path(&self) -> Option<Path> {
4927 support::child(&self.syntax)
4928 }
4929 #[inline]
4930 pub fn create_token(&self) -> Option<SyntaxToken> {
4931 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4932 }
4933 #[inline]
4934 pub fn parser_token(&self) -> Option<SyntaxToken> {
4935 support::token(&self.syntax, SyntaxKind::PARSER_KW)
4936 }
4937 #[inline]
4938 pub fn search_token(&self) -> Option<SyntaxToken> {
4939 support::token(&self.syntax, SyntaxKind::SEARCH_KW)
4940 }
4941 #[inline]
4942 pub fn text_token(&self) -> Option<SyntaxToken> {
4943 support::token(&self.syntax, SyntaxKind::TEXT_KW)
4944 }
4945}
4946
4947#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4948pub struct CreateTextSearchTemplate {
4949 pub(crate) syntax: SyntaxNode,
4950}
4951impl CreateTextSearchTemplate {
4952 #[inline]
4953 pub fn attribute_list(&self) -> Option<AttributeList> {
4954 support::child(&self.syntax)
4955 }
4956 #[inline]
4957 pub fn path(&self) -> Option<Path> {
4958 support::child(&self.syntax)
4959 }
4960 #[inline]
4961 pub fn create_token(&self) -> Option<SyntaxToken> {
4962 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4963 }
4964 #[inline]
4965 pub fn search_token(&self) -> Option<SyntaxToken> {
4966 support::token(&self.syntax, SyntaxKind::SEARCH_KW)
4967 }
4968 #[inline]
4969 pub fn template_token(&self) -> Option<SyntaxToken> {
4970 support::token(&self.syntax, SyntaxKind::TEMPLATE_KW)
4971 }
4972 #[inline]
4973 pub fn text_token(&self) -> Option<SyntaxToken> {
4974 support::token(&self.syntax, SyntaxKind::TEXT_KW)
4975 }
4976}
4977
4978#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4979pub struct CreateTransform {
4980 pub(crate) syntax: SyntaxNode,
4981}
4982impl CreateTransform {
4983 #[inline]
4984 pub fn from_func(&self) -> Option<TransformFromFunc> {
4985 support::child(&self.syntax)
4986 }
4987 #[inline]
4988 pub fn language(&self) -> Option<NameRef> {
4989 support::child(&self.syntax)
4990 }
4991 #[inline]
4992 pub fn or_replace(&self) -> Option<OrReplace> {
4993 support::child(&self.syntax)
4994 }
4995 #[inline]
4996 pub fn to_func(&self) -> Option<TransformToFunc> {
4997 support::child(&self.syntax)
4998 }
4999 #[inline]
5000 pub fn ty(&self) -> Option<Type> {
5001 support::child(&self.syntax)
5002 }
5003 #[inline]
5004 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
5005 support::token(&self.syntax, SyntaxKind::L_PAREN)
5006 }
5007 #[inline]
5008 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
5009 support::token(&self.syntax, SyntaxKind::R_PAREN)
5010 }
5011 #[inline]
5012 pub fn comma_token(&self) -> Option<SyntaxToken> {
5013 support::token(&self.syntax, SyntaxKind::COMMA)
5014 }
5015 #[inline]
5016 pub fn create_token(&self) -> Option<SyntaxToken> {
5017 support::token(&self.syntax, SyntaxKind::CREATE_KW)
5018 }
5019 #[inline]
5020 pub fn for_token(&self) -> Option<SyntaxToken> {
5021 support::token(&self.syntax, SyntaxKind::FOR_KW)
5022 }
5023 #[inline]
5024 pub fn language_token(&self) -> Option<SyntaxToken> {
5025 support::token(&self.syntax, SyntaxKind::LANGUAGE_KW)
5026 }
5027 #[inline]
5028 pub fn transform_token(&self) -> Option<SyntaxToken> {
5029 support::token(&self.syntax, SyntaxKind::TRANSFORM_KW)
5030 }
5031}
5032
5033#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5034pub struct CreateTrigger {
5035 pub(crate) syntax: SyntaxNode,
5036}
5037impl CreateTrigger {
5038 #[inline]
5039 pub fn call_expr(&self) -> Option<CallExpr> {
5040 support::child(&self.syntax)
5041 }
5042 #[inline]
5043 pub fn deferrable_constraint_option(&self) -> Option<DeferrableConstraintOption> {
5044 support::child(&self.syntax)
5045 }
5046 #[inline]
5047 pub fn from_table(&self) -> Option<FromTable> {
5048 support::child(&self.syntax)
5049 }
5050 #[inline]
5051 pub fn initially_deferred_constraint_option(
5052 &self,
5053 ) -> Option<InitiallyDeferredConstraintOption> {
5054 support::child(&self.syntax)
5055 }
5056 #[inline]
5057 pub fn initially_immediate_constraint_option(
5058 &self,
5059 ) -> Option<InitiallyImmediateConstraintOption> {
5060 support::child(&self.syntax)
5061 }
5062 #[inline]
5063 pub fn name(&self) -> Option<Name> {
5064 support::child(&self.syntax)
5065 }
5066 #[inline]
5067 pub fn not_deferrable_constraint_option(&self) -> Option<NotDeferrableConstraintOption> {
5068 support::child(&self.syntax)
5069 }
5070 #[inline]
5071 pub fn on_table(&self) -> Option<OnTable> {
5072 support::child(&self.syntax)
5073 }
5074 #[inline]
5075 pub fn or_replace(&self) -> Option<OrReplace> {
5076 support::child(&self.syntax)
5077 }
5078 #[inline]
5079 pub fn referencing(&self) -> Option<Referencing> {
5080 support::child(&self.syntax)
5081 }
5082 #[inline]
5083 pub fn timing(&self) -> Option<Timing> {
5084 support::child(&self.syntax)
5085 }
5086 #[inline]
5087 pub fn trigger_event_list(&self) -> Option<TriggerEventList> {
5088 support::child(&self.syntax)
5089 }
5090 #[inline]
5091 pub fn when_condition(&self) -> Option<WhenCondition> {
5092 support::child(&self.syntax)
5093 }
5094 #[inline]
5095 pub fn constraint_token(&self) -> Option<SyntaxToken> {
5096 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
5097 }
5098 #[inline]
5099 pub fn create_token(&self) -> Option<SyntaxToken> {
5100 support::token(&self.syntax, SyntaxKind::CREATE_KW)
5101 }
5102 #[inline]
5103 pub fn each_token(&self) -> Option<SyntaxToken> {
5104 support::token(&self.syntax, SyntaxKind::EACH_KW)
5105 }
5106 #[inline]
5107 pub fn execute_token(&self) -> Option<SyntaxToken> {
5108 support::token(&self.syntax, SyntaxKind::EXECUTE_KW)
5109 }
5110 #[inline]
5111 pub fn for_token(&self) -> Option<SyntaxToken> {
5112 support::token(&self.syntax, SyntaxKind::FOR_KW)
5113 }
5114 #[inline]
5115 pub fn function_token(&self) -> Option<SyntaxToken> {
5116 support::token(&self.syntax, SyntaxKind::FUNCTION_KW)
5117 }
5118 #[inline]
5119 pub fn procedure_token(&self) -> Option<SyntaxToken> {
5120 support::token(&self.syntax, SyntaxKind::PROCEDURE_KW)
5121 }
5122 #[inline]
5123 pub fn row_token(&self) -> Option<SyntaxToken> {
5124 support::token(&self.syntax, SyntaxKind::ROW_KW)
5125 }
5126 #[inline]
5127 pub fn statement_token(&self) -> Option<SyntaxToken> {
5128 support::token(&self.syntax, SyntaxKind::STATEMENT_KW)
5129 }
5130 #[inline]
5131 pub fn trigger_token(&self) -> Option<SyntaxToken> {
5132 support::token(&self.syntax, SyntaxKind::TRIGGER_KW)
5133 }
5134}
5135
5136#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5137pub struct CreateType {
5138 pub(crate) syntax: SyntaxNode,
5139}
5140impl CreateType {
5141 #[inline]
5142 pub fn attribute_list(&self) -> Option<AttributeList> {
5143 support::child(&self.syntax)
5144 }
5145 #[inline]
5146 pub fn column_list(&self) -> Option<ColumnList> {
5147 support::child(&self.syntax)
5148 }
5149 #[inline]
5150 pub fn path(&self) -> Option<Path> {
5151 support::child(&self.syntax)
5152 }
5153 #[inline]
5154 pub fn variant_list(&self) -> Option<VariantList> {
5155 support::child(&self.syntax)
5156 }
5157 #[inline]
5158 pub fn as_token(&self) -> Option<SyntaxToken> {
5159 support::token(&self.syntax, SyntaxKind::AS_KW)
5160 }
5161 #[inline]
5162 pub fn create_token(&self) -> Option<SyntaxToken> {
5163 support::token(&self.syntax, SyntaxKind::CREATE_KW)
5164 }
5165 #[inline]
5166 pub fn enum_token(&self) -> Option<SyntaxToken> {
5167 support::token(&self.syntax, SyntaxKind::ENUM_KW)
5168 }
5169 #[inline]
5170 pub fn range_token(&self) -> Option<SyntaxToken> {
5171 support::token(&self.syntax, SyntaxKind::RANGE_KW)
5172 }
5173 #[inline]
5174 pub fn type_token(&self) -> Option<SyntaxToken> {
5175 support::token(&self.syntax, SyntaxKind::TYPE_KW)
5176 }
5177}
5178
5179#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5180pub struct CreateUser {
5181 pub(crate) syntax: SyntaxNode,
5182}
5183impl CreateUser {
5184 #[inline]
5185 pub fn name(&self) -> Option<Name> {
5186 support::child(&self.syntax)
5187 }
5188 #[inline]
5189 pub fn role_option_list(&self) -> Option<RoleOptionList> {
5190 support::child(&self.syntax)
5191 }
5192 #[inline]
5193 pub fn create_token(&self) -> Option<SyntaxToken> {
5194 support::token(&self.syntax, SyntaxKind::CREATE_KW)
5195 }
5196 #[inline]
5197 pub fn user_token(&self) -> Option<SyntaxToken> {
5198 support::token(&self.syntax, SyntaxKind::USER_KW)
5199 }
5200}
5201
5202#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5203pub struct CreateUserMapping {
5204 pub(crate) syntax: SyntaxNode,
5205}
5206impl CreateUserMapping {
5207 #[inline]
5208 pub fn alter_option_list(&self) -> Option<AlterOptionList> {
5209 support::child(&self.syntax)
5210 }
5211 #[inline]
5212 pub fn if_not_exists(&self) -> Option<IfNotExists> {
5213 support::child(&self.syntax)
5214 }
5215 #[inline]
5216 pub fn role_ref(&self) -> Option<RoleRef> {
5217 support::child(&self.syntax)
5218 }
5219 #[inline]
5220 pub fn server_name(&self) -> Option<ServerName> {
5221 support::child(&self.syntax)
5222 }
5223 #[inline]
5224 pub fn create_token(&self) -> Option<SyntaxToken> {
5225 support::token(&self.syntax, SyntaxKind::CREATE_KW)
5226 }
5227 #[inline]
5228 pub fn for_token(&self) -> Option<SyntaxToken> {
5229 support::token(&self.syntax, SyntaxKind::FOR_KW)
5230 }
5231 #[inline]
5232 pub fn mapping_token(&self) -> Option<SyntaxToken> {
5233 support::token(&self.syntax, SyntaxKind::MAPPING_KW)
5234 }
5235 #[inline]
5236 pub fn user_token(&self) -> Option<SyntaxToken> {
5237 support::token(&self.syntax, SyntaxKind::USER_KW)
5238 }
5239}
5240
5241#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5242pub struct CreateView {
5243 pub(crate) syntax: SyntaxNode,
5244}
5245impl CreateView {
5246 #[inline]
5247 pub fn column_list(&self) -> Option<ColumnList> {
5248 support::child(&self.syntax)
5249 }
5250 #[inline]
5251 pub fn or_replace(&self) -> Option<OrReplace> {
5252 support::child(&self.syntax)
5253 }
5254 #[inline]
5255 pub fn path(&self) -> Option<Path> {
5256 support::child(&self.syntax)
5257 }
5258 #[inline]
5259 pub fn query(&self) -> Option<SelectVariant> {
5260 support::child(&self.syntax)
5261 }
5262 #[inline]
5263 pub fn with_params(&self) -> Option<WithParams> {
5264 support::child(&self.syntax)
5265 }
5266 #[inline]
5267 pub fn as_token(&self) -> Option<SyntaxToken> {
5268 support::token(&self.syntax, SyntaxKind::AS_KW)
5269 }
5270 #[inline]
5271 pub fn cascaded_token(&self) -> Option<SyntaxToken> {
5272 support::token(&self.syntax, SyntaxKind::CASCADED_KW)
5273 }
5274 #[inline]
5275 pub fn check_token(&self) -> Option<SyntaxToken> {
5276 support::token(&self.syntax, SyntaxKind::CHECK_KW)
5277 }
5278 #[inline]
5279 pub fn create_token(&self) -> Option<SyntaxToken> {
5280 support::token(&self.syntax, SyntaxKind::CREATE_KW)
5281 }
5282 #[inline]
5283 pub fn local_token(&self) -> Option<SyntaxToken> {
5284 support::token(&self.syntax, SyntaxKind::LOCAL_KW)
5285 }
5286 #[inline]
5287 pub fn option_token(&self) -> Option<SyntaxToken> {
5288 support::token(&self.syntax, SyntaxKind::OPTION_KW)
5289 }
5290 #[inline]
5291 pub fn recursive_token(&self) -> Option<SyntaxToken> {
5292 support::token(&self.syntax, SyntaxKind::RECURSIVE_KW)
5293 }
5294 #[inline]
5295 pub fn temp_token(&self) -> Option<SyntaxToken> {
5296 support::token(&self.syntax, SyntaxKind::TEMP_KW)
5297 }
5298 #[inline]
5299 pub fn temporary_token(&self) -> Option<SyntaxToken> {
5300 support::token(&self.syntax, SyntaxKind::TEMPORARY_KW)
5301 }
5302 #[inline]
5303 pub fn view_token(&self) -> Option<SyntaxToken> {
5304 support::token(&self.syntax, SyntaxKind::VIEW_KW)
5305 }
5306 #[inline]
5307 pub fn with_token(&self) -> Option<SyntaxToken> {
5308 support::token(&self.syntax, SyntaxKind::WITH_KW)
5309 }
5310}
5311
5312#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5313pub struct CustomOp {
5314 pub(crate) syntax: SyntaxNode,
5315}
5316impl CustomOp {
5317 #[inline]
5318 pub fn bang_token(&self) -> Option<SyntaxToken> {
5319 support::token(&self.syntax, SyntaxKind::BANG)
5320 }
5321 #[inline]
5322 pub fn pound_token(&self) -> Option<SyntaxToken> {
5323 support::token(&self.syntax, SyntaxKind::POUND)
5324 }
5325 #[inline]
5326 pub fn percent_token(&self) -> Option<SyntaxToken> {
5327 support::token(&self.syntax, SyntaxKind::PERCENT)
5328 }
5329 #[inline]
5330 pub fn amp_token(&self) -> Option<SyntaxToken> {
5331 support::token(&self.syntax, SyntaxKind::AMP)
5332 }
5333 #[inline]
5334 pub fn star_token(&self) -> Option<SyntaxToken> {
5335 support::token(&self.syntax, SyntaxKind::STAR)
5336 }
5337 #[inline]
5338 pub fn plus_token(&self) -> Option<SyntaxToken> {
5339 support::token(&self.syntax, SyntaxKind::PLUS)
5340 }
5341 #[inline]
5342 pub fn minus_token(&self) -> Option<SyntaxToken> {
5343 support::token(&self.syntax, SyntaxKind::MINUS)
5344 }
5345 #[inline]
5346 pub fn slash_token(&self) -> Option<SyntaxToken> {
5347 support::token(&self.syntax, SyntaxKind::SLASH)
5348 }
5349 #[inline]
5350 pub fn l_angle_token(&self) -> Option<SyntaxToken> {
5351 support::token(&self.syntax, SyntaxKind::L_ANGLE)
5352 }
5353 #[inline]
5354 pub fn eq_token(&self) -> Option<SyntaxToken> {
5355 support::token(&self.syntax, SyntaxKind::EQ)
5356 }
5357 #[inline]
5358 pub fn r_angle_token(&self) -> Option<SyntaxToken> {
5359 support::token(&self.syntax, SyntaxKind::R_ANGLE)
5360 }
5361 #[inline]
5362 pub fn question_token(&self) -> Option<SyntaxToken> {
5363 support::token(&self.syntax, SyntaxKind::QUESTION)
5364 }
5365 #[inline]
5366 pub fn at_token(&self) -> Option<SyntaxToken> {
5367 support::token(&self.syntax, SyntaxKind::AT)
5368 }
5369 #[inline]
5370 pub fn caret_token(&self) -> Option<SyntaxToken> {
5371 support::token(&self.syntax, SyntaxKind::CARET)
5372 }
5373 #[inline]
5374 pub fn backtick_token(&self) -> Option<SyntaxToken> {
5375 support::token(&self.syntax, SyntaxKind::BACKTICK)
5376 }
5377 #[inline]
5378 pub fn pipe_token(&self) -> Option<SyntaxToken> {
5379 support::token(&self.syntax, SyntaxKind::PIPE)
5380 }
5381 #[inline]
5382 pub fn tilde_token(&self) -> Option<SyntaxToken> {
5383 support::token(&self.syntax, SyntaxKind::TILDE)
5384 }
5385}
5386
5387#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5388pub struct Deallocate {
5389 pub(crate) syntax: SyntaxNode,
5390}
5391impl Deallocate {
5392 #[inline]
5393 pub fn name_ref(&self) -> Option<NameRef> {
5394 support::child(&self.syntax)
5395 }
5396 #[inline]
5397 pub fn all_token(&self) -> Option<SyntaxToken> {
5398 support::token(&self.syntax, SyntaxKind::ALL_KW)
5399 }
5400 #[inline]
5401 pub fn deallocate_token(&self) -> Option<SyntaxToken> {
5402 support::token(&self.syntax, SyntaxKind::DEALLOCATE_KW)
5403 }
5404 #[inline]
5405 pub fn prepare_token(&self) -> Option<SyntaxToken> {
5406 support::token(&self.syntax, SyntaxKind::PREPARE_KW)
5407 }
5408}
5409
5410#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5411pub struct Declare {
5412 pub(crate) syntax: SyntaxNode,
5413}
5414impl Declare {
5415 #[inline]
5416 pub fn name(&self) -> Option<Name> {
5417 support::child(&self.syntax)
5418 }
5419 #[inline]
5420 pub fn query(&self) -> Option<SelectVariant> {
5421 support::child(&self.syntax)
5422 }
5423 #[inline]
5424 pub fn asensitive_token(&self) -> Option<SyntaxToken> {
5425 support::token(&self.syntax, SyntaxKind::ASENSITIVE_KW)
5426 }
5427 #[inline]
5428 pub fn binary_token(&self) -> Option<SyntaxToken> {
5429 support::token(&self.syntax, SyntaxKind::BINARY_KW)
5430 }
5431 #[inline]
5432 pub fn cursor_token(&self) -> Option<SyntaxToken> {
5433 support::token(&self.syntax, SyntaxKind::CURSOR_KW)
5434 }
5435 #[inline]
5436 pub fn declare_token(&self) -> Option<SyntaxToken> {
5437 support::token(&self.syntax, SyntaxKind::DECLARE_KW)
5438 }
5439 #[inline]
5440 pub fn for_token(&self) -> Option<SyntaxToken> {
5441 support::token(&self.syntax, SyntaxKind::FOR_KW)
5442 }
5443 #[inline]
5444 pub fn hold_token(&self) -> Option<SyntaxToken> {
5445 support::token(&self.syntax, SyntaxKind::HOLD_KW)
5446 }
5447 #[inline]
5448 pub fn insensitive_token(&self) -> Option<SyntaxToken> {
5449 support::token(&self.syntax, SyntaxKind::INSENSITIVE_KW)
5450 }
5451 #[inline]
5452 pub fn no_token(&self) -> Option<SyntaxToken> {
5453 support::token(&self.syntax, SyntaxKind::NO_KW)
5454 }
5455 #[inline]
5456 pub fn scroll_token(&self) -> Option<SyntaxToken> {
5457 support::token(&self.syntax, SyntaxKind::SCROLL_KW)
5458 }
5459 #[inline]
5460 pub fn with_token(&self) -> Option<SyntaxToken> {
5461 support::token(&self.syntax, SyntaxKind::WITH_KW)
5462 }
5463 #[inline]
5464 pub fn without_token(&self) -> Option<SyntaxToken> {
5465 support::token(&self.syntax, SyntaxKind::WITHOUT_KW)
5466 }
5467}
5468
5469#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5470pub struct DefaultConstraint {
5471 pub(crate) syntax: SyntaxNode,
5472}
5473impl DefaultConstraint {
5474 #[inline]
5475 pub fn expr(&self) -> Option<Expr> {
5476 support::child(&self.syntax)
5477 }
5478 #[inline]
5479 pub fn name_ref(&self) -> Option<NameRef> {
5480 support::child(&self.syntax)
5481 }
5482 #[inline]
5483 pub fn constraint_token(&self) -> Option<SyntaxToken> {
5484 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
5485 }
5486 #[inline]
5487 pub fn default_token(&self) -> Option<SyntaxToken> {
5488 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
5489 }
5490}
5491
5492#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5493pub struct Deferrable {
5494 pub(crate) syntax: SyntaxNode,
5495}
5496impl Deferrable {
5497 #[inline]
5498 pub fn deferrable_token(&self) -> Option<SyntaxToken> {
5499 support::token(&self.syntax, SyntaxKind::DEFERRABLE_KW)
5500 }
5501}
5502
5503#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5504pub struct DeferrableConstraintOption {
5505 pub(crate) syntax: SyntaxNode,
5506}
5507impl DeferrableConstraintOption {
5508 #[inline]
5509 pub fn deferrable_token(&self) -> Option<SyntaxToken> {
5510 support::token(&self.syntax, SyntaxKind::DEFERRABLE_KW)
5511 }
5512}
5513
5514#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5515pub struct Delete {
5516 pub(crate) syntax: SyntaxNode,
5517}
5518impl Delete {
5519 #[inline]
5520 pub fn alias(&self) -> Option<Alias> {
5521 support::child(&self.syntax)
5522 }
5523 #[inline]
5524 pub fn relation_name(&self) -> Option<RelationName> {
5525 support::child(&self.syntax)
5526 }
5527 #[inline]
5528 pub fn returning_clause(&self) -> Option<ReturningClause> {
5529 support::child(&self.syntax)
5530 }
5531 #[inline]
5532 pub fn using_clause(&self) -> Option<UsingClause> {
5533 support::child(&self.syntax)
5534 }
5535 #[inline]
5536 pub fn where_clause(&self) -> Option<WhereClause> {
5537 support::child(&self.syntax)
5538 }
5539 #[inline]
5540 pub fn where_current_of(&self) -> Option<WhereCurrentOf> {
5541 support::child(&self.syntax)
5542 }
5543 #[inline]
5544 pub fn with_clause(&self) -> Option<WithClause> {
5545 support::child(&self.syntax)
5546 }
5547 #[inline]
5548 pub fn delete_token(&self) -> Option<SyntaxToken> {
5549 support::token(&self.syntax, SyntaxKind::DELETE_KW)
5550 }
5551 #[inline]
5552 pub fn from_token(&self) -> Option<SyntaxToken> {
5553 support::token(&self.syntax, SyntaxKind::FROM_KW)
5554 }
5555}
5556
5557#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5558pub struct DeleteRows {
5559 pub(crate) syntax: SyntaxNode,
5560}
5561impl DeleteRows {
5562 #[inline]
5563 pub fn delete_token(&self) -> Option<SyntaxToken> {
5564 support::token(&self.syntax, SyntaxKind::DELETE_KW)
5565 }
5566 #[inline]
5567 pub fn rows_token(&self) -> Option<SyntaxToken> {
5568 support::token(&self.syntax, SyntaxKind::ROWS_KW)
5569 }
5570}
5571
5572#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5573pub struct DependsOnExtension {
5574 pub(crate) syntax: SyntaxNode,
5575}
5576impl DependsOnExtension {
5577 #[inline]
5578 pub fn name_ref(&self) -> Option<NameRef> {
5579 support::child(&self.syntax)
5580 }
5581 #[inline]
5582 pub fn depends_token(&self) -> Option<SyntaxToken> {
5583 support::token(&self.syntax, SyntaxKind::DEPENDS_KW)
5584 }
5585 #[inline]
5586 pub fn extension_token(&self) -> Option<SyntaxToken> {
5587 support::token(&self.syntax, SyntaxKind::EXTENSION_KW)
5588 }
5589 #[inline]
5590 pub fn on_token(&self) -> Option<SyntaxToken> {
5591 support::token(&self.syntax, SyntaxKind::ON_KW)
5592 }
5593}
5594
5595#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5596pub struct DetachPartition {
5597 pub(crate) syntax: SyntaxNode,
5598}
5599impl DetachPartition {
5600 #[inline]
5601 pub fn path(&self) -> Option<Path> {
5602 support::child(&self.syntax)
5603 }
5604 #[inline]
5605 pub fn concurrently_token(&self) -> Option<SyntaxToken> {
5606 support::token(&self.syntax, SyntaxKind::CONCURRENTLY_KW)
5607 }
5608 #[inline]
5609 pub fn detach_token(&self) -> Option<SyntaxToken> {
5610 support::token(&self.syntax, SyntaxKind::DETACH_KW)
5611 }
5612 #[inline]
5613 pub fn finalize_token(&self) -> Option<SyntaxToken> {
5614 support::token(&self.syntax, SyntaxKind::FINALIZE_KW)
5615 }
5616 #[inline]
5617 pub fn partition_token(&self) -> Option<SyntaxToken> {
5618 support::token(&self.syntax, SyntaxKind::PARTITION_KW)
5619 }
5620}
5621
5622#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5623pub struct DisableRls {
5624 pub(crate) syntax: SyntaxNode,
5625}
5626impl DisableRls {
5627 #[inline]
5628 pub fn disable_token(&self) -> Option<SyntaxToken> {
5629 support::token(&self.syntax, SyntaxKind::DISABLE_KW)
5630 }
5631 #[inline]
5632 pub fn level_token(&self) -> Option<SyntaxToken> {
5633 support::token(&self.syntax, SyntaxKind::LEVEL_KW)
5634 }
5635 #[inline]
5636 pub fn row_token(&self) -> Option<SyntaxToken> {
5637 support::token(&self.syntax, SyntaxKind::ROW_KW)
5638 }
5639 #[inline]
5640 pub fn security_token(&self) -> Option<SyntaxToken> {
5641 support::token(&self.syntax, SyntaxKind::SECURITY_KW)
5642 }
5643}
5644
5645#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5646pub struct DisableRule {
5647 pub(crate) syntax: SyntaxNode,
5648}
5649impl DisableRule {
5650 #[inline]
5651 pub fn disable_token(&self) -> Option<SyntaxToken> {
5652 support::token(&self.syntax, SyntaxKind::DISABLE_KW)
5653 }
5654 #[inline]
5655 pub fn rule_token(&self) -> Option<SyntaxToken> {
5656 support::token(&self.syntax, SyntaxKind::RULE_KW)
5657 }
5658}
5659
5660#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5661pub struct DisableTrigger {
5662 pub(crate) syntax: SyntaxNode,
5663}
5664impl DisableTrigger {
5665 #[inline]
5666 pub fn disable_token(&self) -> Option<SyntaxToken> {
5667 support::token(&self.syntax, SyntaxKind::DISABLE_KW)
5668 }
5669 #[inline]
5670 pub fn trigger_token(&self) -> Option<SyntaxToken> {
5671 support::token(&self.syntax, SyntaxKind::TRIGGER_KW)
5672 }
5673}
5674
5675#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5676pub struct Discard {
5677 pub(crate) syntax: SyntaxNode,
5678}
5679impl Discard {
5680 #[inline]
5681 pub fn all_token(&self) -> Option<SyntaxToken> {
5682 support::token(&self.syntax, SyntaxKind::ALL_KW)
5683 }
5684 #[inline]
5685 pub fn discard_token(&self) -> Option<SyntaxToken> {
5686 support::token(&self.syntax, SyntaxKind::DISCARD_KW)
5687 }
5688 #[inline]
5689 pub fn plans_token(&self) -> Option<SyntaxToken> {
5690 support::token(&self.syntax, SyntaxKind::PLANS_KW)
5691 }
5692 #[inline]
5693 pub fn sequences_token(&self) -> Option<SyntaxToken> {
5694 support::token(&self.syntax, SyntaxKind::SEQUENCES_KW)
5695 }
5696 #[inline]
5697 pub fn temp_token(&self) -> Option<SyntaxToken> {
5698 support::token(&self.syntax, SyntaxKind::TEMP_KW)
5699 }
5700 #[inline]
5701 pub fn temporary_token(&self) -> Option<SyntaxToken> {
5702 support::token(&self.syntax, SyntaxKind::TEMPORARY_KW)
5703 }
5704}
5705
5706#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5707pub struct DistinctClause {
5708 pub(crate) syntax: SyntaxNode,
5709}
5710impl DistinctClause {
5711 #[inline]
5712 pub fn exprs(&self) -> AstChildren<Expr> {
5713 support::children(&self.syntax)
5714 }
5715 #[inline]
5716 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
5717 support::token(&self.syntax, SyntaxKind::L_PAREN)
5718 }
5719 #[inline]
5720 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
5721 support::token(&self.syntax, SyntaxKind::R_PAREN)
5722 }
5723 #[inline]
5724 pub fn distinct_token(&self) -> Option<SyntaxToken> {
5725 support::token(&self.syntax, SyntaxKind::DISTINCT_KW)
5726 }
5727 #[inline]
5728 pub fn on_token(&self) -> Option<SyntaxToken> {
5729 support::token(&self.syntax, SyntaxKind::ON_KW)
5730 }
5731}
5732
5733#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5734pub struct Do {
5735 pub(crate) syntax: SyntaxNode,
5736}
5737impl Do {
5738 #[inline]
5739 pub fn do_token(&self) -> Option<SyntaxToken> {
5740 support::token(&self.syntax, SyntaxKind::DO_KW)
5741 }
5742}
5743
5744#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5745pub struct DoubleType {
5746 pub(crate) syntax: SyntaxNode,
5747}
5748impl DoubleType {
5749 #[inline]
5750 pub fn double_token(&self) -> Option<SyntaxToken> {
5751 support::token(&self.syntax, SyntaxKind::DOUBLE_KW)
5752 }
5753 #[inline]
5754 pub fn precision_token(&self) -> Option<SyntaxToken> {
5755 support::token(&self.syntax, SyntaxKind::PRECISION_KW)
5756 }
5757}
5758
5759#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5760pub struct Drop {
5761 pub(crate) syntax: SyntaxNode,
5762}
5763impl Drop {
5764 #[inline]
5765 pub fn drop_token(&self) -> Option<SyntaxToken> {
5766 support::token(&self.syntax, SyntaxKind::DROP_KW)
5767 }
5768}
5769
5770#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5771pub struct DropAccessMethod {
5772 pub(crate) syntax: SyntaxNode,
5773}
5774impl DropAccessMethod {
5775 #[inline]
5776 pub fn if_exists(&self) -> Option<IfExists> {
5777 support::child(&self.syntax)
5778 }
5779 #[inline]
5780 pub fn name_ref(&self) -> Option<NameRef> {
5781 support::child(&self.syntax)
5782 }
5783 #[inline]
5784 pub fn access_token(&self) -> Option<SyntaxToken> {
5785 support::token(&self.syntax, SyntaxKind::ACCESS_KW)
5786 }
5787 #[inline]
5788 pub fn cascade_token(&self) -> Option<SyntaxToken> {
5789 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
5790 }
5791 #[inline]
5792 pub fn drop_token(&self) -> Option<SyntaxToken> {
5793 support::token(&self.syntax, SyntaxKind::DROP_KW)
5794 }
5795 #[inline]
5796 pub fn method_token(&self) -> Option<SyntaxToken> {
5797 support::token(&self.syntax, SyntaxKind::METHOD_KW)
5798 }
5799 #[inline]
5800 pub fn restrict_token(&self) -> Option<SyntaxToken> {
5801 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
5802 }
5803}
5804
5805#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5806pub struct DropAggregate {
5807 pub(crate) syntax: SyntaxNode,
5808}
5809impl DropAggregate {
5810 #[inline]
5811 pub fn aggregates(&self) -> AstChildren<Aggregate> {
5812 support::children(&self.syntax)
5813 }
5814 #[inline]
5815 pub fn if_exists(&self) -> Option<IfExists> {
5816 support::child(&self.syntax)
5817 }
5818 #[inline]
5819 pub fn aggregate_token(&self) -> Option<SyntaxToken> {
5820 support::token(&self.syntax, SyntaxKind::AGGREGATE_KW)
5821 }
5822 #[inline]
5823 pub fn cascade_token(&self) -> Option<SyntaxToken> {
5824 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
5825 }
5826 #[inline]
5827 pub fn drop_token(&self) -> Option<SyntaxToken> {
5828 support::token(&self.syntax, SyntaxKind::DROP_KW)
5829 }
5830 #[inline]
5831 pub fn restrict_token(&self) -> Option<SyntaxToken> {
5832 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
5833 }
5834}
5835
5836#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5837pub struct DropCast {
5838 pub(crate) syntax: SyntaxNode,
5839}
5840impl DropCast {
5841 #[inline]
5842 pub fn cast_sig(&self) -> Option<CastSig> {
5843 support::child(&self.syntax)
5844 }
5845 #[inline]
5846 pub fn if_exists(&self) -> Option<IfExists> {
5847 support::child(&self.syntax)
5848 }
5849 #[inline]
5850 pub fn cascade_token(&self) -> Option<SyntaxToken> {
5851 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
5852 }
5853 #[inline]
5854 pub fn cast_token(&self) -> Option<SyntaxToken> {
5855 support::token(&self.syntax, SyntaxKind::CAST_KW)
5856 }
5857 #[inline]
5858 pub fn drop_token(&self) -> Option<SyntaxToken> {
5859 support::token(&self.syntax, SyntaxKind::DROP_KW)
5860 }
5861 #[inline]
5862 pub fn restrict_token(&self) -> Option<SyntaxToken> {
5863 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
5864 }
5865}
5866
5867#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5868pub struct DropCollation {
5869 pub(crate) syntax: SyntaxNode,
5870}
5871impl DropCollation {
5872 #[inline]
5873 pub fn if_exists(&self) -> Option<IfExists> {
5874 support::child(&self.syntax)
5875 }
5876 #[inline]
5877 pub fn paths(&self) -> AstChildren<Path> {
5878 support::children(&self.syntax)
5879 }
5880 #[inline]
5881 pub fn cascade_token(&self) -> Option<SyntaxToken> {
5882 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
5883 }
5884 #[inline]
5885 pub fn collation_token(&self) -> Option<SyntaxToken> {
5886 support::token(&self.syntax, SyntaxKind::COLLATION_KW)
5887 }
5888 #[inline]
5889 pub fn drop_token(&self) -> Option<SyntaxToken> {
5890 support::token(&self.syntax, SyntaxKind::DROP_KW)
5891 }
5892 #[inline]
5893 pub fn restrict_token(&self) -> Option<SyntaxToken> {
5894 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
5895 }
5896}
5897
5898#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5899pub struct DropColumn {
5900 pub(crate) syntax: SyntaxNode,
5901}
5902impl DropColumn {
5903 #[inline]
5904 pub fn if_exists(&self) -> Option<IfExists> {
5905 support::child(&self.syntax)
5906 }
5907 #[inline]
5908 pub fn name_ref(&self) -> Option<NameRef> {
5909 support::child(&self.syntax)
5910 }
5911 #[inline]
5912 pub fn cascade_token(&self) -> Option<SyntaxToken> {
5913 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
5914 }
5915 #[inline]
5916 pub fn column_token(&self) -> Option<SyntaxToken> {
5917 support::token(&self.syntax, SyntaxKind::COLUMN_KW)
5918 }
5919 #[inline]
5920 pub fn drop_token(&self) -> Option<SyntaxToken> {
5921 support::token(&self.syntax, SyntaxKind::DROP_KW)
5922 }
5923 #[inline]
5924 pub fn restrict_token(&self) -> Option<SyntaxToken> {
5925 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
5926 }
5927}
5928
5929#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5930pub struct DropConstraint {
5931 pub(crate) syntax: SyntaxNode,
5932}
5933impl DropConstraint {
5934 #[inline]
5935 pub fn if_exists(&self) -> Option<IfExists> {
5936 support::child(&self.syntax)
5937 }
5938 #[inline]
5939 pub fn name_ref(&self) -> Option<NameRef> {
5940 support::child(&self.syntax)
5941 }
5942 #[inline]
5943 pub fn cascade_token(&self) -> Option<SyntaxToken> {
5944 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
5945 }
5946 #[inline]
5947 pub fn constraint_token(&self) -> Option<SyntaxToken> {
5948 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
5949 }
5950 #[inline]
5951 pub fn drop_token(&self) -> Option<SyntaxToken> {
5952 support::token(&self.syntax, SyntaxKind::DROP_KW)
5953 }
5954 #[inline]
5955 pub fn restrict_token(&self) -> Option<SyntaxToken> {
5956 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
5957 }
5958}
5959
5960#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5961pub struct DropConversion {
5962 pub(crate) syntax: SyntaxNode,
5963}
5964impl DropConversion {
5965 #[inline]
5966 pub fn if_exists(&self) -> Option<IfExists> {
5967 support::child(&self.syntax)
5968 }
5969 #[inline]
5970 pub fn path(&self) -> Option<Path> {
5971 support::child(&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 conversion_token(&self) -> Option<SyntaxToken> {
5979 support::token(&self.syntax, SyntaxKind::CONVERSION_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 DropDatabase {
5993 pub(crate) syntax: SyntaxNode,
5994}
5995impl DropDatabase {
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 database_token(&self) -> Option<SyntaxToken> {
6006 support::token(&self.syntax, SyntaxKind::DATABASE_KW)
6007 }
6008 #[inline]
6009 pub fn drop_token(&self) -> Option<SyntaxToken> {
6010 support::token(&self.syntax, SyntaxKind::DROP_KW)
6011 }
6012}
6013
6014#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6015pub struct DropDefault {
6016 pub(crate) syntax: SyntaxNode,
6017}
6018impl DropDefault {
6019 #[inline]
6020 pub fn default_token(&self) -> Option<SyntaxToken> {
6021 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
6022 }
6023 #[inline]
6024 pub fn drop_token(&self) -> Option<SyntaxToken> {
6025 support::token(&self.syntax, SyntaxKind::DROP_KW)
6026 }
6027}
6028
6029#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6030pub struct DropDomain {
6031 pub(crate) syntax: SyntaxNode,
6032}
6033impl DropDomain {
6034 #[inline]
6035 pub fn if_exists(&self) -> Option<IfExists> {
6036 support::child(&self.syntax)
6037 }
6038 #[inline]
6039 pub fn paths(&self) -> AstChildren<Path> {
6040 support::children(&self.syntax)
6041 }
6042 #[inline]
6043 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6044 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6045 }
6046 #[inline]
6047 pub fn domain_token(&self) -> Option<SyntaxToken> {
6048 support::token(&self.syntax, SyntaxKind::DOMAIN_KW)
6049 }
6050 #[inline]
6051 pub fn drop_token(&self) -> Option<SyntaxToken> {
6052 support::token(&self.syntax, SyntaxKind::DROP_KW)
6053 }
6054 #[inline]
6055 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6056 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6057 }
6058}
6059
6060#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6061pub struct DropEventTrigger {
6062 pub(crate) syntax: SyntaxNode,
6063}
6064impl DropEventTrigger {
6065 #[inline]
6066 pub fn if_exists(&self) -> Option<IfExists> {
6067 support::child(&self.syntax)
6068 }
6069 #[inline]
6070 pub fn name_ref(&self) -> Option<NameRef> {
6071 support::child(&self.syntax)
6072 }
6073 #[inline]
6074 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6075 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6076 }
6077 #[inline]
6078 pub fn drop_token(&self) -> Option<SyntaxToken> {
6079 support::token(&self.syntax, SyntaxKind::DROP_KW)
6080 }
6081 #[inline]
6082 pub fn event_token(&self) -> Option<SyntaxToken> {
6083 support::token(&self.syntax, SyntaxKind::EVENT_KW)
6084 }
6085 #[inline]
6086 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6087 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6088 }
6089 #[inline]
6090 pub fn trigger_token(&self) -> Option<SyntaxToken> {
6091 support::token(&self.syntax, SyntaxKind::TRIGGER_KW)
6092 }
6093}
6094
6095#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6096pub struct DropExpression {
6097 pub(crate) syntax: SyntaxNode,
6098}
6099impl DropExpression {
6100 #[inline]
6101 pub fn if_exists(&self) -> Option<IfExists> {
6102 support::child(&self.syntax)
6103 }
6104 #[inline]
6105 pub fn drop_token(&self) -> Option<SyntaxToken> {
6106 support::token(&self.syntax, SyntaxKind::DROP_KW)
6107 }
6108 #[inline]
6109 pub fn expression_token(&self) -> Option<SyntaxToken> {
6110 support::token(&self.syntax, SyntaxKind::EXPRESSION_KW)
6111 }
6112}
6113
6114#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6115pub struct DropExtension {
6116 pub(crate) syntax: SyntaxNode,
6117}
6118impl DropExtension {
6119 #[inline]
6120 pub fn if_exists(&self) -> Option<IfExists> {
6121 support::child(&self.syntax)
6122 }
6123 #[inline]
6124 pub fn name_refs(&self) -> AstChildren<NameRef> {
6125 support::children(&self.syntax)
6126 }
6127 #[inline]
6128 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6129 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6130 }
6131 #[inline]
6132 pub fn drop_token(&self) -> Option<SyntaxToken> {
6133 support::token(&self.syntax, SyntaxKind::DROP_KW)
6134 }
6135 #[inline]
6136 pub fn extension_token(&self) -> Option<SyntaxToken> {
6137 support::token(&self.syntax, SyntaxKind::EXTENSION_KW)
6138 }
6139 #[inline]
6140 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6141 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6142 }
6143}
6144
6145#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6146pub struct DropForeignDataWrapper {
6147 pub(crate) syntax: SyntaxNode,
6148}
6149impl DropForeignDataWrapper {
6150 #[inline]
6151 pub fn if_exists(&self) -> Option<IfExists> {
6152 support::child(&self.syntax)
6153 }
6154 #[inline]
6155 pub fn name_refs(&self) -> AstChildren<NameRef> {
6156 support::children(&self.syntax)
6157 }
6158 #[inline]
6159 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6160 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6161 }
6162 #[inline]
6163 pub fn data_token(&self) -> Option<SyntaxToken> {
6164 support::token(&self.syntax, SyntaxKind::DATA_KW)
6165 }
6166 #[inline]
6167 pub fn drop_token(&self) -> Option<SyntaxToken> {
6168 support::token(&self.syntax, SyntaxKind::DROP_KW)
6169 }
6170 #[inline]
6171 pub fn foreign_token(&self) -> Option<SyntaxToken> {
6172 support::token(&self.syntax, SyntaxKind::FOREIGN_KW)
6173 }
6174 #[inline]
6175 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6176 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6177 }
6178 #[inline]
6179 pub fn wrapper_token(&self) -> Option<SyntaxToken> {
6180 support::token(&self.syntax, SyntaxKind::WRAPPER_KW)
6181 }
6182}
6183
6184#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6185pub struct DropForeignTable {
6186 pub(crate) syntax: SyntaxNode,
6187}
6188impl DropForeignTable {
6189 #[inline]
6190 pub fn if_exists(&self) -> Option<IfExists> {
6191 support::child(&self.syntax)
6192 }
6193 #[inline]
6194 pub fn path(&self) -> Option<Path> {
6195 support::child(&self.syntax)
6196 }
6197 #[inline]
6198 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6199 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6200 }
6201 #[inline]
6202 pub fn drop_token(&self) -> Option<SyntaxToken> {
6203 support::token(&self.syntax, SyntaxKind::DROP_KW)
6204 }
6205 #[inline]
6206 pub fn foreign_token(&self) -> Option<SyntaxToken> {
6207 support::token(&self.syntax, SyntaxKind::FOREIGN_KW)
6208 }
6209 #[inline]
6210 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6211 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6212 }
6213 #[inline]
6214 pub fn table_token(&self) -> Option<SyntaxToken> {
6215 support::token(&self.syntax, SyntaxKind::TABLE_KW)
6216 }
6217}
6218
6219#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6220pub struct DropFunction {
6221 pub(crate) syntax: SyntaxNode,
6222}
6223impl DropFunction {
6224 #[inline]
6225 pub fn function_sig_list(&self) -> Option<FunctionSigList> {
6226 support::child(&self.syntax)
6227 }
6228 #[inline]
6229 pub fn if_exists(&self) -> Option<IfExists> {
6230 support::child(&self.syntax)
6231 }
6232 #[inline]
6233 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6234 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6235 }
6236 #[inline]
6237 pub fn drop_token(&self) -> Option<SyntaxToken> {
6238 support::token(&self.syntax, SyntaxKind::DROP_KW)
6239 }
6240 #[inline]
6241 pub fn function_token(&self) -> Option<SyntaxToken> {
6242 support::token(&self.syntax, SyntaxKind::FUNCTION_KW)
6243 }
6244 #[inline]
6245 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6246 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6247 }
6248}
6249
6250#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6251pub struct DropGroup {
6252 pub(crate) syntax: SyntaxNode,
6253}
6254impl DropGroup {
6255 #[inline]
6256 pub fn if_exists(&self) -> Option<IfExists> {
6257 support::child(&self.syntax)
6258 }
6259 #[inline]
6260 pub fn name_refs(&self) -> AstChildren<NameRef> {
6261 support::children(&self.syntax)
6262 }
6263 #[inline]
6264 pub fn drop_token(&self) -> Option<SyntaxToken> {
6265 support::token(&self.syntax, SyntaxKind::DROP_KW)
6266 }
6267 #[inline]
6268 pub fn group_token(&self) -> Option<SyntaxToken> {
6269 support::token(&self.syntax, SyntaxKind::GROUP_KW)
6270 }
6271}
6272
6273#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6274pub struct DropIdentity {
6275 pub(crate) syntax: SyntaxNode,
6276}
6277impl DropIdentity {
6278 #[inline]
6279 pub fn if_exists(&self) -> Option<IfExists> {
6280 support::child(&self.syntax)
6281 }
6282 #[inline]
6283 pub fn drop_token(&self) -> Option<SyntaxToken> {
6284 support::token(&self.syntax, SyntaxKind::DROP_KW)
6285 }
6286 #[inline]
6287 pub fn identity_token(&self) -> Option<SyntaxToken> {
6288 support::token(&self.syntax, SyntaxKind::IDENTITY_KW)
6289 }
6290}
6291
6292#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6293pub struct DropIndex {
6294 pub(crate) syntax: SyntaxNode,
6295}
6296impl DropIndex {
6297 #[inline]
6298 pub fn if_exists(&self) -> Option<IfExists> {
6299 support::child(&self.syntax)
6300 }
6301 #[inline]
6302 pub fn paths(&self) -> AstChildren<Path> {
6303 support::children(&self.syntax)
6304 }
6305 #[inline]
6306 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6307 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6308 }
6309 #[inline]
6310 pub fn concurrently_token(&self) -> Option<SyntaxToken> {
6311 support::token(&self.syntax, SyntaxKind::CONCURRENTLY_KW)
6312 }
6313 #[inline]
6314 pub fn drop_token(&self) -> Option<SyntaxToken> {
6315 support::token(&self.syntax, SyntaxKind::DROP_KW)
6316 }
6317 #[inline]
6318 pub fn index_token(&self) -> Option<SyntaxToken> {
6319 support::token(&self.syntax, SyntaxKind::INDEX_KW)
6320 }
6321 #[inline]
6322 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6323 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6324 }
6325}
6326
6327#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6328pub struct DropLanguage {
6329 pub(crate) syntax: SyntaxNode,
6330}
6331impl DropLanguage {
6332 #[inline]
6333 pub fn if_exists(&self) -> Option<IfExists> {
6334 support::child(&self.syntax)
6335 }
6336 #[inline]
6337 pub fn name_ref(&self) -> Option<NameRef> {
6338 support::child(&self.syntax)
6339 }
6340 #[inline]
6341 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6342 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6343 }
6344 #[inline]
6345 pub fn drop_token(&self) -> Option<SyntaxToken> {
6346 support::token(&self.syntax, SyntaxKind::DROP_KW)
6347 }
6348 #[inline]
6349 pub fn language_token(&self) -> Option<SyntaxToken> {
6350 support::token(&self.syntax, SyntaxKind::LANGUAGE_KW)
6351 }
6352 #[inline]
6353 pub fn procedural_token(&self) -> Option<SyntaxToken> {
6354 support::token(&self.syntax, SyntaxKind::PROCEDURAL_KW)
6355 }
6356 #[inline]
6357 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6358 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6359 }
6360}
6361
6362#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6363pub struct DropMaterializedView {
6364 pub(crate) syntax: SyntaxNode,
6365}
6366impl DropMaterializedView {
6367 #[inline]
6368 pub fn if_exists(&self) -> Option<IfExists> {
6369 support::child(&self.syntax)
6370 }
6371 #[inline]
6372 pub fn paths(&self) -> AstChildren<Path> {
6373 support::children(&self.syntax)
6374 }
6375 #[inline]
6376 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6377 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6378 }
6379 #[inline]
6380 pub fn drop_token(&self) -> Option<SyntaxToken> {
6381 support::token(&self.syntax, SyntaxKind::DROP_KW)
6382 }
6383 #[inline]
6384 pub fn materialized_token(&self) -> Option<SyntaxToken> {
6385 support::token(&self.syntax, SyntaxKind::MATERIALIZED_KW)
6386 }
6387 #[inline]
6388 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6389 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6390 }
6391 #[inline]
6392 pub fn view_token(&self) -> Option<SyntaxToken> {
6393 support::token(&self.syntax, SyntaxKind::VIEW_KW)
6394 }
6395}
6396
6397#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6398pub struct DropNotNull {
6399 pub(crate) syntax: SyntaxNode,
6400}
6401impl DropNotNull {
6402 #[inline]
6403 pub fn drop_token(&self) -> Option<SyntaxToken> {
6404 support::token(&self.syntax, SyntaxKind::DROP_KW)
6405 }
6406 #[inline]
6407 pub fn not_token(&self) -> Option<SyntaxToken> {
6408 support::token(&self.syntax, SyntaxKind::NOT_KW)
6409 }
6410 #[inline]
6411 pub fn null_token(&self) -> Option<SyntaxToken> {
6412 support::token(&self.syntax, SyntaxKind::NULL_KW)
6413 }
6414}
6415
6416#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6417pub struct DropOpClassOption {
6418 pub(crate) syntax: SyntaxNode,
6419}
6420impl DropOpClassOption {
6421 #[inline]
6422 pub fn literal(&self) -> Option<Literal> {
6423 support::child(&self.syntax)
6424 }
6425 #[inline]
6426 pub fn param_list(&self) -> Option<ParamList> {
6427 support::child(&self.syntax)
6428 }
6429 #[inline]
6430 pub fn function_token(&self) -> Option<SyntaxToken> {
6431 support::token(&self.syntax, SyntaxKind::FUNCTION_KW)
6432 }
6433 #[inline]
6434 pub fn operator_token(&self) -> Option<SyntaxToken> {
6435 support::token(&self.syntax, SyntaxKind::OPERATOR_KW)
6436 }
6437}
6438
6439#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6440pub struct DropOpClassOptionList {
6441 pub(crate) syntax: SyntaxNode,
6442}
6443impl DropOpClassOptionList {
6444 #[inline]
6445 pub fn drop_op_class_options(&self) -> AstChildren<DropOpClassOption> {
6446 support::children(&self.syntax)
6447 }
6448}
6449
6450#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6451pub struct DropOpClassOptions {
6452 pub(crate) syntax: SyntaxNode,
6453}
6454impl DropOpClassOptions {
6455 #[inline]
6456 pub fn drop_op_class_option_list(&self) -> Option<DropOpClassOptionList> {
6457 support::child(&self.syntax)
6458 }
6459 #[inline]
6460 pub fn drop_token(&self) -> Option<SyntaxToken> {
6461 support::token(&self.syntax, SyntaxKind::DROP_KW)
6462 }
6463}
6464
6465#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6466pub struct DropOperator {
6467 pub(crate) syntax: SyntaxNode,
6468}
6469impl DropOperator {
6470 #[inline]
6471 pub fn if_exists(&self) -> Option<IfExists> {
6472 support::child(&self.syntax)
6473 }
6474 #[inline]
6475 pub fn op_sig_list(&self) -> Option<OpSigList> {
6476 support::child(&self.syntax)
6477 }
6478 #[inline]
6479 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6480 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6481 }
6482 #[inline]
6483 pub fn drop_token(&self) -> Option<SyntaxToken> {
6484 support::token(&self.syntax, SyntaxKind::DROP_KW)
6485 }
6486 #[inline]
6487 pub fn operator_token(&self) -> Option<SyntaxToken> {
6488 support::token(&self.syntax, SyntaxKind::OPERATOR_KW)
6489 }
6490 #[inline]
6491 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6492 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6493 }
6494}
6495
6496#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6497pub struct DropOperatorClass {
6498 pub(crate) syntax: SyntaxNode,
6499}
6500impl DropOperatorClass {
6501 #[inline]
6502 pub fn if_exists(&self) -> Option<IfExists> {
6503 support::child(&self.syntax)
6504 }
6505 #[inline]
6506 pub fn name_ref(&self) -> Option<NameRef> {
6507 support::child(&self.syntax)
6508 }
6509 #[inline]
6510 pub fn path(&self) -> Option<Path> {
6511 support::child(&self.syntax)
6512 }
6513 #[inline]
6514 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6515 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6516 }
6517 #[inline]
6518 pub fn class_token(&self) -> Option<SyntaxToken> {
6519 support::token(&self.syntax, SyntaxKind::CLASS_KW)
6520 }
6521 #[inline]
6522 pub fn drop_token(&self) -> Option<SyntaxToken> {
6523 support::token(&self.syntax, SyntaxKind::DROP_KW)
6524 }
6525 #[inline]
6526 pub fn operator_token(&self) -> Option<SyntaxToken> {
6527 support::token(&self.syntax, SyntaxKind::OPERATOR_KW)
6528 }
6529 #[inline]
6530 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6531 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6532 }
6533 #[inline]
6534 pub fn using_token(&self) -> Option<SyntaxToken> {
6535 support::token(&self.syntax, SyntaxKind::USING_KW)
6536 }
6537}
6538
6539#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6540pub struct DropOperatorFamily {
6541 pub(crate) syntax: SyntaxNode,
6542}
6543impl DropOperatorFamily {
6544 #[inline]
6545 pub fn if_exists(&self) -> Option<IfExists> {
6546 support::child(&self.syntax)
6547 }
6548 #[inline]
6549 pub fn name_ref(&self) -> Option<NameRef> {
6550 support::child(&self.syntax)
6551 }
6552 #[inline]
6553 pub fn path(&self) -> Option<Path> {
6554 support::child(&self.syntax)
6555 }
6556 #[inline]
6557 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6558 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6559 }
6560 #[inline]
6561 pub fn drop_token(&self) -> Option<SyntaxToken> {
6562 support::token(&self.syntax, SyntaxKind::DROP_KW)
6563 }
6564 #[inline]
6565 pub fn family_token(&self) -> Option<SyntaxToken> {
6566 support::token(&self.syntax, SyntaxKind::FAMILY_KW)
6567 }
6568 #[inline]
6569 pub fn operator_token(&self) -> Option<SyntaxToken> {
6570 support::token(&self.syntax, SyntaxKind::OPERATOR_KW)
6571 }
6572 #[inline]
6573 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6574 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6575 }
6576 #[inline]
6577 pub fn using_token(&self) -> Option<SyntaxToken> {
6578 support::token(&self.syntax, SyntaxKind::USING_KW)
6579 }
6580}
6581
6582#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6583pub struct DropOwned {
6584 pub(crate) syntax: SyntaxNode,
6585}
6586impl DropOwned {
6587 #[inline]
6588 pub fn role_ref_list(&self) -> Option<RoleRefList> {
6589 support::child(&self.syntax)
6590 }
6591 #[inline]
6592 pub fn by_token(&self) -> Option<SyntaxToken> {
6593 support::token(&self.syntax, SyntaxKind::BY_KW)
6594 }
6595 #[inline]
6596 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6597 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6598 }
6599 #[inline]
6600 pub fn drop_token(&self) -> Option<SyntaxToken> {
6601 support::token(&self.syntax, SyntaxKind::DROP_KW)
6602 }
6603 #[inline]
6604 pub fn owned_token(&self) -> Option<SyntaxToken> {
6605 support::token(&self.syntax, SyntaxKind::OWNED_KW)
6606 }
6607 #[inline]
6608 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6609 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6610 }
6611}
6612
6613#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6614pub struct DropPolicy {
6615 pub(crate) syntax: SyntaxNode,
6616}
6617impl DropPolicy {
6618 #[inline]
6619 pub fn if_exists(&self) -> Option<IfExists> {
6620 support::child(&self.syntax)
6621 }
6622 #[inline]
6623 pub fn name_ref(&self) -> Option<NameRef> {
6624 support::child(&self.syntax)
6625 }
6626 #[inline]
6627 pub fn on_table(&self) -> Option<OnTable> {
6628 support::child(&self.syntax)
6629 }
6630 #[inline]
6631 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6632 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6633 }
6634 #[inline]
6635 pub fn drop_token(&self) -> Option<SyntaxToken> {
6636 support::token(&self.syntax, SyntaxKind::DROP_KW)
6637 }
6638 #[inline]
6639 pub fn policy_token(&self) -> Option<SyntaxToken> {
6640 support::token(&self.syntax, SyntaxKind::POLICY_KW)
6641 }
6642 #[inline]
6643 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6644 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6645 }
6646}
6647
6648#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6649pub struct DropProcedure {
6650 pub(crate) syntax: SyntaxNode,
6651}
6652impl DropProcedure {
6653 #[inline]
6654 pub fn function_sig_list(&self) -> Option<FunctionSigList> {
6655 support::child(&self.syntax)
6656 }
6657 #[inline]
6658 pub fn if_exists(&self) -> Option<IfExists> {
6659 support::child(&self.syntax)
6660 }
6661 #[inline]
6662 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6663 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6664 }
6665 #[inline]
6666 pub fn drop_token(&self) -> Option<SyntaxToken> {
6667 support::token(&self.syntax, SyntaxKind::DROP_KW)
6668 }
6669 #[inline]
6670 pub fn procedure_token(&self) -> Option<SyntaxToken> {
6671 support::token(&self.syntax, SyntaxKind::PROCEDURE_KW)
6672 }
6673 #[inline]
6674 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6675 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6676 }
6677}
6678
6679#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6680pub struct DropPublication {
6681 pub(crate) syntax: SyntaxNode,
6682}
6683impl DropPublication {
6684 #[inline]
6685 pub fn if_exists(&self) -> Option<IfExists> {
6686 support::child(&self.syntax)
6687 }
6688 #[inline]
6689 pub fn name_refs(&self) -> AstChildren<NameRef> {
6690 support::children(&self.syntax)
6691 }
6692 #[inline]
6693 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6694 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6695 }
6696 #[inline]
6697 pub fn drop_token(&self) -> Option<SyntaxToken> {
6698 support::token(&self.syntax, SyntaxKind::DROP_KW)
6699 }
6700 #[inline]
6701 pub fn publication_token(&self) -> Option<SyntaxToken> {
6702 support::token(&self.syntax, SyntaxKind::PUBLICATION_KW)
6703 }
6704 #[inline]
6705 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6706 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6707 }
6708}
6709
6710#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6711pub struct DropRole {
6712 pub(crate) syntax: SyntaxNode,
6713}
6714impl DropRole {
6715 #[inline]
6716 pub fn if_exists(&self) -> Option<IfExists> {
6717 support::child(&self.syntax)
6718 }
6719 #[inline]
6720 pub fn name_refs(&self) -> AstChildren<NameRef> {
6721 support::children(&self.syntax)
6722 }
6723 #[inline]
6724 pub fn drop_token(&self) -> Option<SyntaxToken> {
6725 support::token(&self.syntax, SyntaxKind::DROP_KW)
6726 }
6727 #[inline]
6728 pub fn role_token(&self) -> Option<SyntaxToken> {
6729 support::token(&self.syntax, SyntaxKind::ROLE_KW)
6730 }
6731}
6732
6733#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6734pub struct DropRoutine {
6735 pub(crate) syntax: SyntaxNode,
6736}
6737impl DropRoutine {
6738 #[inline]
6739 pub fn function_sig_list(&self) -> Option<FunctionSigList> {
6740 support::child(&self.syntax)
6741 }
6742 #[inline]
6743 pub fn if_exists(&self) -> Option<IfExists> {
6744 support::child(&self.syntax)
6745 }
6746 #[inline]
6747 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6748 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6749 }
6750 #[inline]
6751 pub fn drop_token(&self) -> Option<SyntaxToken> {
6752 support::token(&self.syntax, SyntaxKind::DROP_KW)
6753 }
6754 #[inline]
6755 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6756 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6757 }
6758 #[inline]
6759 pub fn routine_token(&self) -> Option<SyntaxToken> {
6760 support::token(&self.syntax, SyntaxKind::ROUTINE_KW)
6761 }
6762}
6763
6764#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6765pub struct DropRule {
6766 pub(crate) syntax: SyntaxNode,
6767}
6768impl DropRule {
6769 #[inline]
6770 pub fn if_exists(&self) -> Option<IfExists> {
6771 support::child(&self.syntax)
6772 }
6773 #[inline]
6774 pub fn name_ref(&self) -> Option<NameRef> {
6775 support::child(&self.syntax)
6776 }
6777 #[inline]
6778 pub fn on_table(&self) -> Option<OnTable> {
6779 support::child(&self.syntax)
6780 }
6781 #[inline]
6782 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6783 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6784 }
6785 #[inline]
6786 pub fn drop_token(&self) -> Option<SyntaxToken> {
6787 support::token(&self.syntax, SyntaxKind::DROP_KW)
6788 }
6789 #[inline]
6790 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6791 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6792 }
6793 #[inline]
6794 pub fn rule_token(&self) -> Option<SyntaxToken> {
6795 support::token(&self.syntax, SyntaxKind::RULE_KW)
6796 }
6797}
6798
6799#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6800pub struct DropSchema {
6801 pub(crate) syntax: SyntaxNode,
6802}
6803impl DropSchema {
6804 #[inline]
6805 pub fn if_exists(&self) -> Option<IfExists> {
6806 support::child(&self.syntax)
6807 }
6808 #[inline]
6809 pub fn name_refs(&self) -> AstChildren<NameRef> {
6810 support::children(&self.syntax)
6811 }
6812 #[inline]
6813 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6814 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6815 }
6816 #[inline]
6817 pub fn drop_token(&self) -> Option<SyntaxToken> {
6818 support::token(&self.syntax, SyntaxKind::DROP_KW)
6819 }
6820 #[inline]
6821 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6822 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6823 }
6824 #[inline]
6825 pub fn schema_token(&self) -> Option<SyntaxToken> {
6826 support::token(&self.syntax, SyntaxKind::SCHEMA_KW)
6827 }
6828}
6829
6830#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6831pub struct DropSequence {
6832 pub(crate) syntax: SyntaxNode,
6833}
6834impl DropSequence {
6835 #[inline]
6836 pub fn if_exists(&self) -> Option<IfExists> {
6837 support::child(&self.syntax)
6838 }
6839 #[inline]
6840 pub fn paths(&self) -> AstChildren<Path> {
6841 support::children(&self.syntax)
6842 }
6843 #[inline]
6844 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6845 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6846 }
6847 #[inline]
6848 pub fn drop_token(&self) -> Option<SyntaxToken> {
6849 support::token(&self.syntax, SyntaxKind::DROP_KW)
6850 }
6851 #[inline]
6852 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6853 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6854 }
6855 #[inline]
6856 pub fn sequence_token(&self) -> Option<SyntaxToken> {
6857 support::token(&self.syntax, SyntaxKind::SEQUENCE_KW)
6858 }
6859}
6860
6861#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6862pub struct DropServer {
6863 pub(crate) syntax: SyntaxNode,
6864}
6865impl DropServer {
6866 #[inline]
6867 pub fn if_exists(&self) -> Option<IfExists> {
6868 support::child(&self.syntax)
6869 }
6870 #[inline]
6871 pub fn name_ref(&self) -> Option<NameRef> {
6872 support::child(&self.syntax)
6873 }
6874 #[inline]
6875 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6876 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6877 }
6878 #[inline]
6879 pub fn drop_token(&self) -> Option<SyntaxToken> {
6880 support::token(&self.syntax, SyntaxKind::DROP_KW)
6881 }
6882 #[inline]
6883 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6884 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6885 }
6886 #[inline]
6887 pub fn server_token(&self) -> Option<SyntaxToken> {
6888 support::token(&self.syntax, SyntaxKind::SERVER_KW)
6889 }
6890}
6891
6892#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6893pub struct DropStatistics {
6894 pub(crate) syntax: SyntaxNode,
6895}
6896impl DropStatistics {
6897 #[inline]
6898 pub fn if_exists(&self) -> Option<IfExists> {
6899 support::child(&self.syntax)
6900 }
6901 #[inline]
6902 pub fn paths(&self) -> AstChildren<Path> {
6903 support::children(&self.syntax)
6904 }
6905 #[inline]
6906 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6907 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6908 }
6909 #[inline]
6910 pub fn drop_token(&self) -> Option<SyntaxToken> {
6911 support::token(&self.syntax, SyntaxKind::DROP_KW)
6912 }
6913 #[inline]
6914 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6915 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6916 }
6917 #[inline]
6918 pub fn statistics_token(&self) -> Option<SyntaxToken> {
6919 support::token(&self.syntax, SyntaxKind::STATISTICS_KW)
6920 }
6921}
6922
6923#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6924pub struct DropSubscription {
6925 pub(crate) syntax: SyntaxNode,
6926}
6927impl DropSubscription {
6928 #[inline]
6929 pub fn if_exists(&self) -> Option<IfExists> {
6930 support::child(&self.syntax)
6931 }
6932 #[inline]
6933 pub fn name_ref(&self) -> Option<NameRef> {
6934 support::child(&self.syntax)
6935 }
6936 #[inline]
6937 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6938 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6939 }
6940 #[inline]
6941 pub fn drop_token(&self) -> Option<SyntaxToken> {
6942 support::token(&self.syntax, SyntaxKind::DROP_KW)
6943 }
6944 #[inline]
6945 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6946 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6947 }
6948 #[inline]
6949 pub fn subscription_token(&self) -> Option<SyntaxToken> {
6950 support::token(&self.syntax, SyntaxKind::SUBSCRIPTION_KW)
6951 }
6952}
6953
6954#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6955pub struct DropTable {
6956 pub(crate) syntax: SyntaxNode,
6957}
6958impl DropTable {
6959 #[inline]
6960 pub fn if_exists(&self) -> Option<IfExists> {
6961 support::child(&self.syntax)
6962 }
6963 #[inline]
6964 pub fn path(&self) -> Option<Path> {
6965 support::child(&self.syntax)
6966 }
6967 #[inline]
6968 pub fn comma_token(&self) -> Option<SyntaxToken> {
6969 support::token(&self.syntax, SyntaxKind::COMMA)
6970 }
6971 #[inline]
6972 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6973 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6974 }
6975 #[inline]
6976 pub fn drop_token(&self) -> Option<SyntaxToken> {
6977 support::token(&self.syntax, SyntaxKind::DROP_KW)
6978 }
6979 #[inline]
6980 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6981 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6982 }
6983 #[inline]
6984 pub fn table_token(&self) -> Option<SyntaxToken> {
6985 support::token(&self.syntax, SyntaxKind::TABLE_KW)
6986 }
6987}
6988
6989#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6990pub struct DropTablespace {
6991 pub(crate) syntax: SyntaxNode,
6992}
6993impl DropTablespace {
6994 #[inline]
6995 pub fn if_exists(&self) -> Option<IfExists> {
6996 support::child(&self.syntax)
6997 }
6998 #[inline]
6999 pub fn name_ref(&self) -> Option<NameRef> {
7000 support::child(&self.syntax)
7001 }
7002 #[inline]
7003 pub fn drop_token(&self) -> Option<SyntaxToken> {
7004 support::token(&self.syntax, SyntaxKind::DROP_KW)
7005 }
7006 #[inline]
7007 pub fn tablespace_token(&self) -> Option<SyntaxToken> {
7008 support::token(&self.syntax, SyntaxKind::TABLESPACE_KW)
7009 }
7010}
7011
7012#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7013pub struct DropTextSearchConfig {
7014 pub(crate) syntax: SyntaxNode,
7015}
7016impl DropTextSearchConfig {
7017 #[inline]
7018 pub fn if_exists(&self) -> Option<IfExists> {
7019 support::child(&self.syntax)
7020 }
7021 #[inline]
7022 pub fn path(&self) -> Option<Path> {
7023 support::child(&self.syntax)
7024 }
7025 #[inline]
7026 pub fn cascade_token(&self) -> Option<SyntaxToken> {
7027 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
7028 }
7029 #[inline]
7030 pub fn configuration_token(&self) -> Option<SyntaxToken> {
7031 support::token(&self.syntax, SyntaxKind::CONFIGURATION_KW)
7032 }
7033 #[inline]
7034 pub fn drop_token(&self) -> Option<SyntaxToken> {
7035 support::token(&self.syntax, SyntaxKind::DROP_KW)
7036 }
7037 #[inline]
7038 pub fn restrict_token(&self) -> Option<SyntaxToken> {
7039 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
7040 }
7041 #[inline]
7042 pub fn search_token(&self) -> Option<SyntaxToken> {
7043 support::token(&self.syntax, SyntaxKind::SEARCH_KW)
7044 }
7045 #[inline]
7046 pub fn text_token(&self) -> Option<SyntaxToken> {
7047 support::token(&self.syntax, SyntaxKind::TEXT_KW)
7048 }
7049}
7050
7051#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7052pub struct DropTextSearchDict {
7053 pub(crate) syntax: SyntaxNode,
7054}
7055impl DropTextSearchDict {
7056 #[inline]
7057 pub fn if_exists(&self) -> Option<IfExists> {
7058 support::child(&self.syntax)
7059 }
7060 #[inline]
7061 pub fn path(&self) -> Option<Path> {
7062 support::child(&self.syntax)
7063 }
7064 #[inline]
7065 pub fn cascade_token(&self) -> Option<SyntaxToken> {
7066 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
7067 }
7068 #[inline]
7069 pub fn dictionary_token(&self) -> Option<SyntaxToken> {
7070 support::token(&self.syntax, SyntaxKind::DICTIONARY_KW)
7071 }
7072 #[inline]
7073 pub fn drop_token(&self) -> Option<SyntaxToken> {
7074 support::token(&self.syntax, SyntaxKind::DROP_KW)
7075 }
7076 #[inline]
7077 pub fn restrict_token(&self) -> Option<SyntaxToken> {
7078 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
7079 }
7080 #[inline]
7081 pub fn search_token(&self) -> Option<SyntaxToken> {
7082 support::token(&self.syntax, SyntaxKind::SEARCH_KW)
7083 }
7084 #[inline]
7085 pub fn text_token(&self) -> Option<SyntaxToken> {
7086 support::token(&self.syntax, SyntaxKind::TEXT_KW)
7087 }
7088}
7089
7090#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7091pub struct DropTextSearchParser {
7092 pub(crate) syntax: SyntaxNode,
7093}
7094impl DropTextSearchParser {
7095 #[inline]
7096 pub fn if_exists(&self) -> Option<IfExists> {
7097 support::child(&self.syntax)
7098 }
7099 #[inline]
7100 pub fn path(&self) -> Option<Path> {
7101 support::child(&self.syntax)
7102 }
7103 #[inline]
7104 pub fn cascade_token(&self) -> Option<SyntaxToken> {
7105 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
7106 }
7107 #[inline]
7108 pub fn drop_token(&self) -> Option<SyntaxToken> {
7109 support::token(&self.syntax, SyntaxKind::DROP_KW)
7110 }
7111 #[inline]
7112 pub fn parser_token(&self) -> Option<SyntaxToken> {
7113 support::token(&self.syntax, SyntaxKind::PARSER_KW)
7114 }
7115 #[inline]
7116 pub fn restrict_token(&self) -> Option<SyntaxToken> {
7117 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
7118 }
7119 #[inline]
7120 pub fn search_token(&self) -> Option<SyntaxToken> {
7121 support::token(&self.syntax, SyntaxKind::SEARCH_KW)
7122 }
7123 #[inline]
7124 pub fn text_token(&self) -> Option<SyntaxToken> {
7125 support::token(&self.syntax, SyntaxKind::TEXT_KW)
7126 }
7127}
7128
7129#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7130pub struct DropTextSearchTemplate {
7131 pub(crate) syntax: SyntaxNode,
7132}
7133impl DropTextSearchTemplate {
7134 #[inline]
7135 pub fn if_exists(&self) -> Option<IfExists> {
7136 support::child(&self.syntax)
7137 }
7138 #[inline]
7139 pub fn path(&self) -> Option<Path> {
7140 support::child(&self.syntax)
7141 }
7142 #[inline]
7143 pub fn cascade_token(&self) -> Option<SyntaxToken> {
7144 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
7145 }
7146 #[inline]
7147 pub fn drop_token(&self) -> Option<SyntaxToken> {
7148 support::token(&self.syntax, SyntaxKind::DROP_KW)
7149 }
7150 #[inline]
7151 pub fn restrict_token(&self) -> Option<SyntaxToken> {
7152 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
7153 }
7154 #[inline]
7155 pub fn search_token(&self) -> Option<SyntaxToken> {
7156 support::token(&self.syntax, SyntaxKind::SEARCH_KW)
7157 }
7158 #[inline]
7159 pub fn template_token(&self) -> Option<SyntaxToken> {
7160 support::token(&self.syntax, SyntaxKind::TEMPLATE_KW)
7161 }
7162 #[inline]
7163 pub fn text_token(&self) -> Option<SyntaxToken> {
7164 support::token(&self.syntax, SyntaxKind::TEXT_KW)
7165 }
7166}
7167
7168#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7169pub struct DropTransform {
7170 pub(crate) syntax: SyntaxNode,
7171}
7172impl DropTransform {
7173 #[inline]
7174 pub fn if_exists(&self) -> Option<IfExists> {
7175 support::child(&self.syntax)
7176 }
7177 #[inline]
7178 pub fn language(&self) -> Option<NameRef> {
7179 support::child(&self.syntax)
7180 }
7181 #[inline]
7182 pub fn ty(&self) -> Option<Type> {
7183 support::child(&self.syntax)
7184 }
7185 #[inline]
7186 pub fn cascade_token(&self) -> Option<SyntaxToken> {
7187 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
7188 }
7189 #[inline]
7190 pub fn drop_token(&self) -> Option<SyntaxToken> {
7191 support::token(&self.syntax, SyntaxKind::DROP_KW)
7192 }
7193 #[inline]
7194 pub fn for_token(&self) -> Option<SyntaxToken> {
7195 support::token(&self.syntax, SyntaxKind::FOR_KW)
7196 }
7197 #[inline]
7198 pub fn language_token(&self) -> Option<SyntaxToken> {
7199 support::token(&self.syntax, SyntaxKind::LANGUAGE_KW)
7200 }
7201 #[inline]
7202 pub fn restrict_token(&self) -> Option<SyntaxToken> {
7203 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
7204 }
7205 #[inline]
7206 pub fn transform_token(&self) -> Option<SyntaxToken> {
7207 support::token(&self.syntax, SyntaxKind::TRANSFORM_KW)
7208 }
7209}
7210
7211#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7212pub struct DropTrigger {
7213 pub(crate) syntax: SyntaxNode,
7214}
7215impl DropTrigger {
7216 #[inline]
7217 pub fn if_exists(&self) -> Option<IfExists> {
7218 support::child(&self.syntax)
7219 }
7220 #[inline]
7221 pub fn on_table(&self) -> Option<OnTable> {
7222 support::child(&self.syntax)
7223 }
7224 #[inline]
7225 pub fn path(&self) -> Option<Path> {
7226 support::child(&self.syntax)
7227 }
7228 #[inline]
7229 pub fn cascade_token(&self) -> Option<SyntaxToken> {
7230 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
7231 }
7232 #[inline]
7233 pub fn drop_token(&self) -> Option<SyntaxToken> {
7234 support::token(&self.syntax, SyntaxKind::DROP_KW)
7235 }
7236 #[inline]
7237 pub fn restrict_token(&self) -> Option<SyntaxToken> {
7238 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
7239 }
7240 #[inline]
7241 pub fn trigger_token(&self) -> Option<SyntaxToken> {
7242 support::token(&self.syntax, SyntaxKind::TRIGGER_KW)
7243 }
7244}
7245
7246#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7247pub struct DropType {
7248 pub(crate) syntax: SyntaxNode,
7249}
7250impl DropType {
7251 #[inline]
7252 pub fn if_exists(&self) -> Option<IfExists> {
7253 support::child(&self.syntax)
7254 }
7255 #[inline]
7256 pub fn paths(&self) -> AstChildren<Path> {
7257 support::children(&self.syntax)
7258 }
7259 #[inline]
7260 pub fn cascade_token(&self) -> Option<SyntaxToken> {
7261 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
7262 }
7263 #[inline]
7264 pub fn drop_token(&self) -> Option<SyntaxToken> {
7265 support::token(&self.syntax, SyntaxKind::DROP_KW)
7266 }
7267 #[inline]
7268 pub fn restrict_token(&self) -> Option<SyntaxToken> {
7269 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
7270 }
7271 #[inline]
7272 pub fn type_token(&self) -> Option<SyntaxToken> {
7273 support::token(&self.syntax, SyntaxKind::TYPE_KW)
7274 }
7275}
7276
7277#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7278pub struct DropUser {
7279 pub(crate) syntax: SyntaxNode,
7280}
7281impl DropUser {
7282 #[inline]
7283 pub fn if_exists(&self) -> Option<IfExists> {
7284 support::child(&self.syntax)
7285 }
7286 #[inline]
7287 pub fn name_refs(&self) -> AstChildren<NameRef> {
7288 support::children(&self.syntax)
7289 }
7290 #[inline]
7291 pub fn drop_token(&self) -> Option<SyntaxToken> {
7292 support::token(&self.syntax, SyntaxKind::DROP_KW)
7293 }
7294 #[inline]
7295 pub fn user_token(&self) -> Option<SyntaxToken> {
7296 support::token(&self.syntax, SyntaxKind::USER_KW)
7297 }
7298}
7299
7300#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7301pub struct DropUserMapping {
7302 pub(crate) syntax: SyntaxNode,
7303}
7304impl DropUserMapping {
7305 #[inline]
7306 pub fn if_exists(&self) -> Option<IfExists> {
7307 support::child(&self.syntax)
7308 }
7309 #[inline]
7310 pub fn role_ref(&self) -> Option<RoleRef> {
7311 support::child(&self.syntax)
7312 }
7313 #[inline]
7314 pub fn server_name(&self) -> Option<ServerName> {
7315 support::child(&self.syntax)
7316 }
7317 #[inline]
7318 pub fn drop_token(&self) -> Option<SyntaxToken> {
7319 support::token(&self.syntax, SyntaxKind::DROP_KW)
7320 }
7321 #[inline]
7322 pub fn for_token(&self) -> Option<SyntaxToken> {
7323 support::token(&self.syntax, SyntaxKind::FOR_KW)
7324 }
7325 #[inline]
7326 pub fn mapping_token(&self) -> Option<SyntaxToken> {
7327 support::token(&self.syntax, SyntaxKind::MAPPING_KW)
7328 }
7329 #[inline]
7330 pub fn user_token(&self) -> Option<SyntaxToken> {
7331 support::token(&self.syntax, SyntaxKind::USER_KW)
7332 }
7333}
7334
7335#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7336pub struct DropView {
7337 pub(crate) syntax: SyntaxNode,
7338}
7339impl DropView {
7340 #[inline]
7341 pub fn if_exists(&self) -> Option<IfExists> {
7342 support::child(&self.syntax)
7343 }
7344 #[inline]
7345 pub fn path(&self) -> Option<Path> {
7346 support::child(&self.syntax)
7347 }
7348 #[inline]
7349 pub fn cascade_token(&self) -> Option<SyntaxToken> {
7350 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
7351 }
7352 #[inline]
7353 pub fn drop_token(&self) -> Option<SyntaxToken> {
7354 support::token(&self.syntax, SyntaxKind::DROP_KW)
7355 }
7356 #[inline]
7357 pub fn restrict_token(&self) -> Option<SyntaxToken> {
7358 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
7359 }
7360 #[inline]
7361 pub fn view_token(&self) -> Option<SyntaxToken> {
7362 support::token(&self.syntax, SyntaxKind::VIEW_KW)
7363 }
7364}
7365
7366#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7367pub struct ElseClause {
7368 pub(crate) syntax: SyntaxNode,
7369}
7370impl ElseClause {
7371 #[inline]
7372 pub fn expr(&self) -> Option<Expr> {
7373 support::child(&self.syntax)
7374 }
7375 #[inline]
7376 pub fn else_token(&self) -> Option<SyntaxToken> {
7377 support::token(&self.syntax, SyntaxKind::ELSE_KW)
7378 }
7379}
7380
7381#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7382pub struct EnableAlwaysRule {
7383 pub(crate) syntax: SyntaxNode,
7384}
7385impl EnableAlwaysRule {
7386 #[inline]
7387 pub fn always_token(&self) -> Option<SyntaxToken> {
7388 support::token(&self.syntax, SyntaxKind::ALWAYS_KW)
7389 }
7390 #[inline]
7391 pub fn enable_token(&self) -> Option<SyntaxToken> {
7392 support::token(&self.syntax, SyntaxKind::ENABLE_KW)
7393 }
7394 #[inline]
7395 pub fn rule_token(&self) -> Option<SyntaxToken> {
7396 support::token(&self.syntax, SyntaxKind::RULE_KW)
7397 }
7398}
7399
7400#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7401pub struct EnableAlwaysTrigger {
7402 pub(crate) syntax: SyntaxNode,
7403}
7404impl EnableAlwaysTrigger {
7405 #[inline]
7406 pub fn always_token(&self) -> Option<SyntaxToken> {
7407 support::token(&self.syntax, SyntaxKind::ALWAYS_KW)
7408 }
7409 #[inline]
7410 pub fn enable_token(&self) -> Option<SyntaxToken> {
7411 support::token(&self.syntax, SyntaxKind::ENABLE_KW)
7412 }
7413 #[inline]
7414 pub fn trigger_token(&self) -> Option<SyntaxToken> {
7415 support::token(&self.syntax, SyntaxKind::TRIGGER_KW)
7416 }
7417}
7418
7419#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7420pub struct EnableReplicaRule {
7421 pub(crate) syntax: SyntaxNode,
7422}
7423impl EnableReplicaRule {
7424 #[inline]
7425 pub fn enable_token(&self) -> Option<SyntaxToken> {
7426 support::token(&self.syntax, SyntaxKind::ENABLE_KW)
7427 }
7428 #[inline]
7429 pub fn replica_token(&self) -> Option<SyntaxToken> {
7430 support::token(&self.syntax, SyntaxKind::REPLICA_KW)
7431 }
7432 #[inline]
7433 pub fn rule_token(&self) -> Option<SyntaxToken> {
7434 support::token(&self.syntax, SyntaxKind::RULE_KW)
7435 }
7436}
7437
7438#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7439pub struct EnableReplicaTrigger {
7440 pub(crate) syntax: SyntaxNode,
7441}
7442impl EnableReplicaTrigger {
7443 #[inline]
7444 pub fn enable_token(&self) -> Option<SyntaxToken> {
7445 support::token(&self.syntax, SyntaxKind::ENABLE_KW)
7446 }
7447 #[inline]
7448 pub fn replica_token(&self) -> Option<SyntaxToken> {
7449 support::token(&self.syntax, SyntaxKind::REPLICA_KW)
7450 }
7451 #[inline]
7452 pub fn trigger_token(&self) -> Option<SyntaxToken> {
7453 support::token(&self.syntax, SyntaxKind::TRIGGER_KW)
7454 }
7455}
7456
7457#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7458pub struct EnableRls {
7459 pub(crate) syntax: SyntaxNode,
7460}
7461impl EnableRls {
7462 #[inline]
7463 pub fn enable_token(&self) -> Option<SyntaxToken> {
7464 support::token(&self.syntax, SyntaxKind::ENABLE_KW)
7465 }
7466 #[inline]
7467 pub fn level_token(&self) -> Option<SyntaxToken> {
7468 support::token(&self.syntax, SyntaxKind::LEVEL_KW)
7469 }
7470 #[inline]
7471 pub fn row_token(&self) -> Option<SyntaxToken> {
7472 support::token(&self.syntax, SyntaxKind::ROW_KW)
7473 }
7474 #[inline]
7475 pub fn security_token(&self) -> Option<SyntaxToken> {
7476 support::token(&self.syntax, SyntaxKind::SECURITY_KW)
7477 }
7478}
7479
7480#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7481pub struct EnableRule {
7482 pub(crate) syntax: SyntaxNode,
7483}
7484impl EnableRule {
7485 #[inline]
7486 pub fn enable_token(&self) -> Option<SyntaxToken> {
7487 support::token(&self.syntax, SyntaxKind::ENABLE_KW)
7488 }
7489 #[inline]
7490 pub fn rule_token(&self) -> Option<SyntaxToken> {
7491 support::token(&self.syntax, SyntaxKind::RULE_KW)
7492 }
7493}
7494
7495#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7496pub struct EnableTrigger {
7497 pub(crate) syntax: SyntaxNode,
7498}
7499impl EnableTrigger {
7500 #[inline]
7501 pub fn enable_token(&self) -> Option<SyntaxToken> {
7502 support::token(&self.syntax, SyntaxKind::ENABLE_KW)
7503 }
7504 #[inline]
7505 pub fn trigger_token(&self) -> Option<SyntaxToken> {
7506 support::token(&self.syntax, SyntaxKind::TRIGGER_KW)
7507 }
7508}
7509
7510#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7511pub struct Enforced {
7512 pub(crate) syntax: SyntaxNode,
7513}
7514impl Enforced {
7515 #[inline]
7516 pub fn enforced_token(&self) -> Option<SyntaxToken> {
7517 support::token(&self.syntax, SyntaxKind::ENFORCED_KW)
7518 }
7519}
7520
7521#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7522pub struct EventTriggerWhen {
7523 pub(crate) syntax: SyntaxNode,
7524}
7525impl EventTriggerWhen {
7526 #[inline]
7527 pub fn literals(&self) -> AstChildren<Literal> {
7528 support::children(&self.syntax)
7529 }
7530 #[inline]
7531 pub fn name_ref(&self) -> Option<NameRef> {
7532 support::child(&self.syntax)
7533 }
7534 #[inline]
7535 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
7536 support::token(&self.syntax, SyntaxKind::L_PAREN)
7537 }
7538 #[inline]
7539 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
7540 support::token(&self.syntax, SyntaxKind::R_PAREN)
7541 }
7542 #[inline]
7543 pub fn in_token(&self) -> Option<SyntaxToken> {
7544 support::token(&self.syntax, SyntaxKind::IN_KW)
7545 }
7546}
7547
7548#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7549pub struct EventTriggerWhenClause {
7550 pub(crate) syntax: SyntaxNode,
7551}
7552impl EventTriggerWhenClause {
7553 #[inline]
7554 pub fn event_trigger_whens(&self) -> AstChildren<EventTriggerWhen> {
7555 support::children(&self.syntax)
7556 }
7557 #[inline]
7558 pub fn when_token(&self) -> Option<SyntaxToken> {
7559 support::token(&self.syntax, SyntaxKind::WHEN_KW)
7560 }
7561}
7562
7563#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7564pub struct ExceptTables {
7565 pub(crate) syntax: SyntaxNode,
7566}
7567impl ExceptTables {
7568 #[inline]
7569 pub fn name_refs(&self) -> AstChildren<NameRef> {
7570 support::children(&self.syntax)
7571 }
7572 #[inline]
7573 pub fn except_token(&self) -> Option<SyntaxToken> {
7574 support::token(&self.syntax, SyntaxKind::EXCEPT_KW)
7575 }
7576}
7577
7578#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7579pub struct ExcludeConstraint {
7580 pub(crate) syntax: SyntaxNode,
7581}
7582impl ExcludeConstraint {
7583 #[inline]
7584 pub fn constraint_exclusion_list(&self) -> Option<ConstraintExclusionList> {
7585 support::child(&self.syntax)
7586 }
7587 #[inline]
7588 pub fn constraint_index_method(&self) -> Option<ConstraintIndexMethod> {
7589 support::child(&self.syntax)
7590 }
7591 #[inline]
7592 pub fn constraint_name(&self) -> Option<ConstraintName> {
7593 support::child(&self.syntax)
7594 }
7595 #[inline]
7596 pub fn where_condition_clause(&self) -> Option<WhereConditionClause> {
7597 support::child(&self.syntax)
7598 }
7599 #[inline]
7600 pub fn exclude_token(&self) -> Option<SyntaxToken> {
7601 support::token(&self.syntax, SyntaxKind::EXCLUDE_KW)
7602 }
7603}
7604
7605#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7606pub struct Execute {
7607 pub(crate) syntax: SyntaxNode,
7608}
7609impl Execute {
7610 #[inline]
7611 pub fn arg_list(&self) -> Option<ArgList> {
7612 support::child(&self.syntax)
7613 }
7614 #[inline]
7615 pub fn name_ref(&self) -> Option<NameRef> {
7616 support::child(&self.syntax)
7617 }
7618 #[inline]
7619 pub fn execute_token(&self) -> Option<SyntaxToken> {
7620 support::token(&self.syntax, SyntaxKind::EXECUTE_KW)
7621 }
7622}
7623
7624#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7625pub struct ExistsFn {
7626 pub(crate) syntax: SyntaxNode,
7627}
7628impl ExistsFn {
7629 #[inline]
7630 pub fn select_variant(&self) -> Option<SelectVariant> {
7631 support::child(&self.syntax)
7632 }
7633 #[inline]
7634 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
7635 support::token(&self.syntax, SyntaxKind::L_PAREN)
7636 }
7637 #[inline]
7638 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
7639 support::token(&self.syntax, SyntaxKind::R_PAREN)
7640 }
7641 #[inline]
7642 pub fn exists_token(&self) -> Option<SyntaxToken> {
7643 support::token(&self.syntax, SyntaxKind::EXISTS_KW)
7644 }
7645}
7646
7647#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7648pub struct Explain {
7649 pub(crate) syntax: SyntaxNode,
7650}
7651impl Explain {
7652 #[inline]
7653 pub fn explain_stmt(&self) -> Option<ExplainStmt> {
7654 support::child(&self.syntax)
7655 }
7656 #[inline]
7657 pub fn analyse_token(&self) -> Option<SyntaxToken> {
7658 support::token(&self.syntax, SyntaxKind::ANALYSE_KW)
7659 }
7660 #[inline]
7661 pub fn analyze_token(&self) -> Option<SyntaxToken> {
7662 support::token(&self.syntax, SyntaxKind::ANALYZE_KW)
7663 }
7664 #[inline]
7665 pub fn explain_token(&self) -> Option<SyntaxToken> {
7666 support::token(&self.syntax, SyntaxKind::EXPLAIN_KW)
7667 }
7668 #[inline]
7669 pub fn verbose_token(&self) -> Option<SyntaxToken> {
7670 support::token(&self.syntax, SyntaxKind::VERBOSE_KW)
7671 }
7672}
7673
7674#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7675pub struct ExprAsName {
7676 pub(crate) syntax: SyntaxNode,
7677}
7678impl ExprAsName {
7679 #[inline]
7680 pub fn as_name(&self) -> Option<AsName> {
7681 support::child(&self.syntax)
7682 }
7683 #[inline]
7684 pub fn expr(&self) -> Option<Expr> {
7685 support::child(&self.syntax)
7686 }
7687}
7688
7689#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7690pub struct ExprType {
7691 pub(crate) syntax: SyntaxNode,
7692}
7693impl ExprType {
7694 #[inline]
7695 pub fn expr(&self) -> Option<Expr> {
7696 support::child(&self.syntax)
7697 }
7698}
7699
7700#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7701pub struct ExtractFn {
7702 pub(crate) syntax: SyntaxNode,
7703}
7704impl ExtractFn {
7705 #[inline]
7706 pub fn expr(&self) -> Option<Expr> {
7707 support::child(&self.syntax)
7708 }
7709 #[inline]
7710 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
7711 support::token(&self.syntax, SyntaxKind::L_PAREN)
7712 }
7713 #[inline]
7714 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
7715 support::token(&self.syntax, SyntaxKind::R_PAREN)
7716 }
7717 #[inline]
7718 pub fn day_token(&self) -> Option<SyntaxToken> {
7719 support::token(&self.syntax, SyntaxKind::DAY_KW)
7720 }
7721 #[inline]
7722 pub fn extract_token(&self) -> Option<SyntaxToken> {
7723 support::token(&self.syntax, SyntaxKind::EXTRACT_KW)
7724 }
7725 #[inline]
7726 pub fn from_token(&self) -> Option<SyntaxToken> {
7727 support::token(&self.syntax, SyntaxKind::FROM_KW)
7728 }
7729 #[inline]
7730 pub fn hour_token(&self) -> Option<SyntaxToken> {
7731 support::token(&self.syntax, SyntaxKind::HOUR_KW)
7732 }
7733 #[inline]
7734 pub fn ident_token(&self) -> Option<SyntaxToken> {
7735 support::token(&self.syntax, SyntaxKind::IDENT)
7736 }
7737 #[inline]
7738 pub fn minute_token(&self) -> Option<SyntaxToken> {
7739 support::token(&self.syntax, SyntaxKind::MINUTE_KW)
7740 }
7741 #[inline]
7742 pub fn month_token(&self) -> Option<SyntaxToken> {
7743 support::token(&self.syntax, SyntaxKind::MONTH_KW)
7744 }
7745 #[inline]
7746 pub fn second_token(&self) -> Option<SyntaxToken> {
7747 support::token(&self.syntax, SyntaxKind::SECOND_KW)
7748 }
7749 #[inline]
7750 pub fn string_token(&self) -> Option<SyntaxToken> {
7751 support::token(&self.syntax, SyntaxKind::STRING_KW)
7752 }
7753 #[inline]
7754 pub fn year_token(&self) -> Option<SyntaxToken> {
7755 support::token(&self.syntax, SyntaxKind::YEAR_KW)
7756 }
7757}
7758
7759#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7760pub struct FatArrow {
7761 pub(crate) syntax: SyntaxNode,
7762}
7763impl FatArrow {
7764 #[inline]
7765 pub fn eq_token(&self) -> Option<SyntaxToken> {
7766 support::token(&self.syntax, SyntaxKind::EQ)
7767 }
7768 #[inline]
7769 pub fn r_angle_token(&self) -> Option<SyntaxToken> {
7770 support::token(&self.syntax, SyntaxKind::R_ANGLE)
7771 }
7772}
7773
7774#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7775pub struct FdwOption {
7776 pub(crate) syntax: SyntaxNode,
7777}
7778impl FdwOption {
7779 #[inline]
7780 pub fn alter_option_list(&self) -> Option<AlterOptionList> {
7781 support::child(&self.syntax)
7782 }
7783 #[inline]
7784 pub fn path(&self) -> Option<Path> {
7785 support::child(&self.syntax)
7786 }
7787 #[inline]
7788 pub fn handler_token(&self) -> Option<SyntaxToken> {
7789 support::token(&self.syntax, SyntaxKind::HANDLER_KW)
7790 }
7791 #[inline]
7792 pub fn no_token(&self) -> Option<SyntaxToken> {
7793 support::token(&self.syntax, SyntaxKind::NO_KW)
7794 }
7795 #[inline]
7796 pub fn options_token(&self) -> Option<SyntaxToken> {
7797 support::token(&self.syntax, SyntaxKind::OPTIONS_KW)
7798 }
7799 #[inline]
7800 pub fn validator_token(&self) -> Option<SyntaxToken> {
7801 support::token(&self.syntax, SyntaxKind::VALIDATOR_KW)
7802 }
7803}
7804
7805#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7806pub struct FdwOptionList {
7807 pub(crate) syntax: SyntaxNode,
7808}
7809impl FdwOptionList {
7810 #[inline]
7811 pub fn fdw_options(&self) -> AstChildren<FdwOption> {
7812 support::children(&self.syntax)
7813 }
7814}
7815
7816#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7817pub struct Fetch {
7818 pub(crate) syntax: SyntaxNode,
7819}
7820impl Fetch {
7821 #[inline]
7822 pub fn name_ref(&self) -> Option<NameRef> {
7823 support::child(&self.syntax)
7824 }
7825 #[inline]
7826 pub fn fetch_token(&self) -> Option<SyntaxToken> {
7827 support::token(&self.syntax, SyntaxKind::FETCH_KW)
7828 }
7829 #[inline]
7830 pub fn from_token(&self) -> Option<SyntaxToken> {
7831 support::token(&self.syntax, SyntaxKind::FROM_KW)
7832 }
7833 #[inline]
7834 pub fn in_token(&self) -> Option<SyntaxToken> {
7835 support::token(&self.syntax, SyntaxKind::IN_KW)
7836 }
7837}
7838
7839#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7840pub struct FetchClause {
7841 pub(crate) syntax: SyntaxNode,
7842}
7843impl FetchClause {
7844 #[inline]
7845 pub fn expr(&self) -> Option<Expr> {
7846 support::child(&self.syntax)
7847 }
7848 #[inline]
7849 pub fn fetch_token(&self) -> Option<SyntaxToken> {
7850 support::token(&self.syntax, SyntaxKind::FETCH_KW)
7851 }
7852 #[inline]
7853 pub fn first_token(&self) -> Option<SyntaxToken> {
7854 support::token(&self.syntax, SyntaxKind::FIRST_KW)
7855 }
7856 #[inline]
7857 pub fn next_token(&self) -> Option<SyntaxToken> {
7858 support::token(&self.syntax, SyntaxKind::NEXT_KW)
7859 }
7860 #[inline]
7861 pub fn only_token(&self) -> Option<SyntaxToken> {
7862 support::token(&self.syntax, SyntaxKind::ONLY_KW)
7863 }
7864 #[inline]
7865 pub fn row_token(&self) -> Option<SyntaxToken> {
7866 support::token(&self.syntax, SyntaxKind::ROW_KW)
7867 }
7868 #[inline]
7869 pub fn rows_token(&self) -> Option<SyntaxToken> {
7870 support::token(&self.syntax, SyntaxKind::ROWS_KW)
7871 }
7872 #[inline]
7873 pub fn ties_token(&self) -> Option<SyntaxToken> {
7874 support::token(&self.syntax, SyntaxKind::TIES_KW)
7875 }
7876 #[inline]
7877 pub fn with_token(&self) -> Option<SyntaxToken> {
7878 support::token(&self.syntax, SyntaxKind::WITH_KW)
7879 }
7880}
7881
7882#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7883pub struct FieldExpr {
7884 pub(crate) syntax: SyntaxNode,
7885}
7886impl FieldExpr {
7887 #[inline]
7888 pub fn star_token(&self) -> Option<SyntaxToken> {
7889 support::token(&self.syntax, SyntaxKind::STAR)
7890 }
7891 #[inline]
7892 pub fn dot_token(&self) -> Option<SyntaxToken> {
7893 support::token(&self.syntax, SyntaxKind::DOT)
7894 }
7895}
7896
7897#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7898pub struct FilterClause {
7899 pub(crate) syntax: SyntaxNode,
7900}
7901impl FilterClause {
7902 #[inline]
7903 pub fn expr(&self) -> Option<Expr> {
7904 support::child(&self.syntax)
7905 }
7906 #[inline]
7907 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
7908 support::token(&self.syntax, SyntaxKind::L_PAREN)
7909 }
7910 #[inline]
7911 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
7912 support::token(&self.syntax, SyntaxKind::R_PAREN)
7913 }
7914 #[inline]
7915 pub fn filter_token(&self) -> Option<SyntaxToken> {
7916 support::token(&self.syntax, SyntaxKind::FILTER_KW)
7917 }
7918 #[inline]
7919 pub fn where_token(&self) -> Option<SyntaxToken> {
7920 support::token(&self.syntax, SyntaxKind::WHERE_KW)
7921 }
7922}
7923
7924#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7925pub struct ForProvider {
7926 pub(crate) syntax: SyntaxNode,
7927}
7928impl ForProvider {
7929 #[inline]
7930 pub fn literal(&self) -> Option<Literal> {
7931 support::child(&self.syntax)
7932 }
7933 #[inline]
7934 pub fn name_ref(&self) -> Option<NameRef> {
7935 support::child(&self.syntax)
7936 }
7937 #[inline]
7938 pub fn for_token(&self) -> Option<SyntaxToken> {
7939 support::token(&self.syntax, SyntaxKind::FOR_KW)
7940 }
7941}
7942
7943#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7944pub struct ForceRls {
7945 pub(crate) syntax: SyntaxNode,
7946}
7947impl ForceRls {
7948 #[inline]
7949 pub fn force_token(&self) -> Option<SyntaxToken> {
7950 support::token(&self.syntax, SyntaxKind::FORCE_KW)
7951 }
7952 #[inline]
7953 pub fn level_token(&self) -> Option<SyntaxToken> {
7954 support::token(&self.syntax, SyntaxKind::LEVEL_KW)
7955 }
7956 #[inline]
7957 pub fn row_token(&self) -> Option<SyntaxToken> {
7958 support::token(&self.syntax, SyntaxKind::ROW_KW)
7959 }
7960 #[inline]
7961 pub fn security_token(&self) -> Option<SyntaxToken> {
7962 support::token(&self.syntax, SyntaxKind::SECURITY_KW)
7963 }
7964}
7965
7966#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7967pub struct ForeignKeyConstraint {
7968 pub(crate) syntax: SyntaxNode,
7969}
7970impl ForeignKeyConstraint {
7971 #[inline]
7972 pub fn constraint_name(&self) -> Option<ConstraintName> {
7973 support::child(&self.syntax)
7974 }
7975 #[inline]
7976 pub fn match_type(&self) -> Option<MatchType> {
7977 support::child(&self.syntax)
7978 }
7979 #[inline]
7980 pub fn on_delete_action(&self) -> Option<OnDeleteAction> {
7981 support::child(&self.syntax)
7982 }
7983 #[inline]
7984 pub fn on_update_action(&self) -> Option<OnUpdateAction> {
7985 support::child(&self.syntax)
7986 }
7987 #[inline]
7988 pub fn path(&self) -> Option<Path> {
7989 support::child(&self.syntax)
7990 }
7991 #[inline]
7992 pub fn foreign_token(&self) -> Option<SyntaxToken> {
7993 support::token(&self.syntax, SyntaxKind::FOREIGN_KW)
7994 }
7995 #[inline]
7996 pub fn key_token(&self) -> Option<SyntaxToken> {
7997 support::token(&self.syntax, SyntaxKind::KEY_KW)
7998 }
7999 #[inline]
8000 pub fn references_token(&self) -> Option<SyntaxToken> {
8001 support::token(&self.syntax, SyntaxKind::REFERENCES_KW)
8002 }
8003}
8004
8005#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8006pub struct FrameClause {
8007 pub(crate) syntax: SyntaxNode,
8008}
8009impl FrameClause {
8010 #[inline]
8011 pub fn groups_token(&self) -> Option<SyntaxToken> {
8012 support::token(&self.syntax, SyntaxKind::GROUPS_KW)
8013 }
8014 #[inline]
8015 pub fn range_token(&self) -> Option<SyntaxToken> {
8016 support::token(&self.syntax, SyntaxKind::RANGE_KW)
8017 }
8018 #[inline]
8019 pub fn rows_token(&self) -> Option<SyntaxToken> {
8020 support::token(&self.syntax, SyntaxKind::ROWS_KW)
8021 }
8022}
8023
8024#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8025pub struct FromClause {
8026 pub(crate) syntax: SyntaxNode,
8027}
8028impl FromClause {
8029 #[inline]
8030 pub fn from_items(&self) -> AstChildren<FromItem> {
8031 support::children(&self.syntax)
8032 }
8033 #[inline]
8034 pub fn join_exprs(&self) -> AstChildren<JoinExpr> {
8035 support::children(&self.syntax)
8036 }
8037 #[inline]
8038 pub fn from_token(&self) -> Option<SyntaxToken> {
8039 support::token(&self.syntax, SyntaxKind::FROM_KW)
8040 }
8041}
8042
8043#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8044pub struct FromItem {
8045 pub(crate) syntax: SyntaxNode,
8046}
8047impl FromItem {
8048 #[inline]
8049 pub fn alias(&self) -> Option<Alias> {
8050 support::child(&self.syntax)
8051 }
8052 #[inline]
8053 pub fn call_expr(&self) -> Option<CallExpr> {
8054 support::child(&self.syntax)
8055 }
8056 #[inline]
8057 pub fn cast_expr(&self) -> Option<CastExpr> {
8058 support::child(&self.syntax)
8059 }
8060 #[inline]
8061 pub fn field_expr(&self) -> Option<FieldExpr> {
8062 support::child(&self.syntax)
8063 }
8064 #[inline]
8065 pub fn json_table(&self) -> Option<JsonTable> {
8066 support::child(&self.syntax)
8067 }
8068 #[inline]
8069 pub fn name_ref(&self) -> Option<NameRef> {
8070 support::child(&self.syntax)
8071 }
8072 #[inline]
8073 pub fn paren_expr(&self) -> Option<ParenExpr> {
8074 support::child(&self.syntax)
8075 }
8076 #[inline]
8077 pub fn paren_select(&self) -> Option<ParenSelect> {
8078 support::child(&self.syntax)
8079 }
8080 #[inline]
8081 pub fn tablesample_clause(&self) -> Option<TablesampleClause> {
8082 support::child(&self.syntax)
8083 }
8084 #[inline]
8085 pub fn xml_table(&self) -> Option<XmlTable> {
8086 support::child(&self.syntax)
8087 }
8088 #[inline]
8089 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
8090 support::token(&self.syntax, SyntaxKind::L_PAREN)
8091 }
8092 #[inline]
8093 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
8094 support::token(&self.syntax, SyntaxKind::R_PAREN)
8095 }
8096 #[inline]
8097 pub fn star_token(&self) -> Option<SyntaxToken> {
8098 support::token(&self.syntax, SyntaxKind::STAR)
8099 }
8100 #[inline]
8101 pub fn from_token(&self) -> Option<SyntaxToken> {
8102 support::token(&self.syntax, SyntaxKind::FROM_KW)
8103 }
8104 #[inline]
8105 pub fn lateral_token(&self) -> Option<SyntaxToken> {
8106 support::token(&self.syntax, SyntaxKind::LATERAL_KW)
8107 }
8108 #[inline]
8109 pub fn only_token(&self) -> Option<SyntaxToken> {
8110 support::token(&self.syntax, SyntaxKind::ONLY_KW)
8111 }
8112 #[inline]
8113 pub fn ordinality_token(&self) -> Option<SyntaxToken> {
8114 support::token(&self.syntax, SyntaxKind::ORDINALITY_KW)
8115 }
8116 #[inline]
8117 pub fn rows_token(&self) -> Option<SyntaxToken> {
8118 support::token(&self.syntax, SyntaxKind::ROWS_KW)
8119 }
8120 #[inline]
8121 pub fn with_token(&self) -> Option<SyntaxToken> {
8122 support::token(&self.syntax, SyntaxKind::WITH_KW)
8123 }
8124}
8125
8126#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8127pub struct FromTable {
8128 pub(crate) syntax: SyntaxNode,
8129}
8130impl FromTable {
8131 #[inline]
8132 pub fn path(&self) -> Option<Path> {
8133 support::child(&self.syntax)
8134 }
8135 #[inline]
8136 pub fn from_token(&self) -> Option<SyntaxToken> {
8137 support::token(&self.syntax, SyntaxKind::FROM_KW)
8138 }
8139}
8140
8141#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8142pub struct FuncOptionList {
8143 pub(crate) syntax: SyntaxNode,
8144}
8145impl FuncOptionList {
8146 #[inline]
8147 pub fn options(&self) -> AstChildren<FuncOption> {
8148 support::children(&self.syntax)
8149 }
8150}
8151
8152#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8153pub struct FunctionSig {
8154 pub(crate) syntax: SyntaxNode,
8155}
8156impl FunctionSig {
8157 #[inline]
8158 pub fn param_list(&self) -> Option<ParamList> {
8159 support::child(&self.syntax)
8160 }
8161 #[inline]
8162 pub fn path(&self) -> Option<Path> {
8163 support::child(&self.syntax)
8164 }
8165}
8166
8167#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8168pub struct FunctionSigList {
8169 pub(crate) syntax: SyntaxNode,
8170}
8171impl FunctionSigList {
8172 #[inline]
8173 pub fn function_sigs(&self) -> AstChildren<FunctionSig> {
8174 support::children(&self.syntax)
8175 }
8176}
8177
8178#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8179pub struct GeneratedConstraint {
8180 pub(crate) syntax: SyntaxNode,
8181}
8182impl GeneratedConstraint {
8183 #[inline]
8184 pub fn expr(&self) -> Option<Expr> {
8185 support::child(&self.syntax)
8186 }
8187 #[inline]
8188 pub fn name_ref(&self) -> Option<NameRef> {
8189 support::child(&self.syntax)
8190 }
8191 #[inline]
8192 pub fn sequence_option_list(&self) -> Option<SequenceOptionList> {
8193 support::child(&self.syntax)
8194 }
8195 #[inline]
8196 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
8197 support::token(&self.syntax, SyntaxKind::L_PAREN)
8198 }
8199 #[inline]
8200 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
8201 support::token(&self.syntax, SyntaxKind::R_PAREN)
8202 }
8203 #[inline]
8204 pub fn always_token(&self) -> Option<SyntaxToken> {
8205 support::token(&self.syntax, SyntaxKind::ALWAYS_KW)
8206 }
8207 #[inline]
8208 pub fn as_token(&self) -> Option<SyntaxToken> {
8209 support::token(&self.syntax, SyntaxKind::AS_KW)
8210 }
8211 #[inline]
8212 pub fn by_token(&self) -> Option<SyntaxToken> {
8213 support::token(&self.syntax, SyntaxKind::BY_KW)
8214 }
8215 #[inline]
8216 pub fn constraint_token(&self) -> Option<SyntaxToken> {
8217 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
8218 }
8219 #[inline]
8220 pub fn default_token(&self) -> Option<SyntaxToken> {
8221 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
8222 }
8223 #[inline]
8224 pub fn generated_token(&self) -> Option<SyntaxToken> {
8225 support::token(&self.syntax, SyntaxKind::GENERATED_KW)
8226 }
8227 #[inline]
8228 pub fn identity_token(&self) -> Option<SyntaxToken> {
8229 support::token(&self.syntax, SyntaxKind::IDENTITY_KW)
8230 }
8231 #[inline]
8232 pub fn stored_token(&self) -> Option<SyntaxToken> {
8233 support::token(&self.syntax, SyntaxKind::STORED_KW)
8234 }
8235}
8236
8237#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8238pub struct Grant {
8239 pub(crate) syntax: SyntaxNode,
8240}
8241impl Grant {
8242 #[inline]
8243 pub fn name_refs(&self) -> AstChildren<NameRef> {
8244 support::children(&self.syntax)
8245 }
8246 #[inline]
8247 pub fn paths(&self) -> AstChildren<Path> {
8248 support::children(&self.syntax)
8249 }
8250 #[inline]
8251 pub fn revoke_command_list(&self) -> Option<RevokeCommandList> {
8252 support::child(&self.syntax)
8253 }
8254 #[inline]
8255 pub fn role_ref(&self) -> Option<RoleRef> {
8256 support::child(&self.syntax)
8257 }
8258 #[inline]
8259 pub fn role_ref_list(&self) -> Option<RoleRefList> {
8260 support::child(&self.syntax)
8261 }
8262 #[inline]
8263 pub fn all_token(&self) -> Option<SyntaxToken> {
8264 support::token(&self.syntax, SyntaxKind::ALL_KW)
8265 }
8266 #[inline]
8267 pub fn by_token(&self) -> Option<SyntaxToken> {
8268 support::token(&self.syntax, SyntaxKind::BY_KW)
8269 }
8270 #[inline]
8271 pub fn grant_token(&self) -> Option<SyntaxToken> {
8272 support::token(&self.syntax, SyntaxKind::GRANT_KW)
8273 }
8274 #[inline]
8275 pub fn granted_token(&self) -> Option<SyntaxToken> {
8276 support::token(&self.syntax, SyntaxKind::GRANTED_KW)
8277 }
8278 #[inline]
8279 pub fn in_token(&self) -> Option<SyntaxToken> {
8280 support::token(&self.syntax, SyntaxKind::IN_KW)
8281 }
8282 #[inline]
8283 pub fn on_token(&self) -> Option<SyntaxToken> {
8284 support::token(&self.syntax, SyntaxKind::ON_KW)
8285 }
8286 #[inline]
8287 pub fn option_token(&self) -> Option<SyntaxToken> {
8288 support::token(&self.syntax, SyntaxKind::OPTION_KW)
8289 }
8290 #[inline]
8291 pub fn privileges_token(&self) -> Option<SyntaxToken> {
8292 support::token(&self.syntax, SyntaxKind::PRIVILEGES_KW)
8293 }
8294 #[inline]
8295 pub fn schema_token(&self) -> Option<SyntaxToken> {
8296 support::token(&self.syntax, SyntaxKind::SCHEMA_KW)
8297 }
8298 #[inline]
8299 pub fn table_token(&self) -> Option<SyntaxToken> {
8300 support::token(&self.syntax, SyntaxKind::TABLE_KW)
8301 }
8302 #[inline]
8303 pub fn tables_token(&self) -> Option<SyntaxToken> {
8304 support::token(&self.syntax, SyntaxKind::TABLES_KW)
8305 }
8306 #[inline]
8307 pub fn to_token(&self) -> Option<SyntaxToken> {
8308 support::token(&self.syntax, SyntaxKind::TO_KW)
8309 }
8310 #[inline]
8311 pub fn with_token(&self) -> Option<SyntaxToken> {
8312 support::token(&self.syntax, SyntaxKind::WITH_KW)
8313 }
8314}
8315
8316#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8317pub struct GrantDefaultPrivileges {
8318 pub(crate) syntax: SyntaxNode,
8319}
8320impl GrantDefaultPrivileges {
8321 #[inline]
8322 pub fn privilege_target(&self) -> Option<PrivilegeTarget> {
8323 support::child(&self.syntax)
8324 }
8325 #[inline]
8326 pub fn privileges(&self) -> Option<Privileges> {
8327 support::child(&self.syntax)
8328 }
8329 #[inline]
8330 pub fn role_ref_list(&self) -> Option<RoleRefList> {
8331 support::child(&self.syntax)
8332 }
8333 #[inline]
8334 pub fn grant_token(&self) -> Option<SyntaxToken> {
8335 support::token(&self.syntax, SyntaxKind::GRANT_KW)
8336 }
8337 #[inline]
8338 pub fn on_token(&self) -> Option<SyntaxToken> {
8339 support::token(&self.syntax, SyntaxKind::ON_KW)
8340 }
8341 #[inline]
8342 pub fn option_token(&self) -> Option<SyntaxToken> {
8343 support::token(&self.syntax, SyntaxKind::OPTION_KW)
8344 }
8345 #[inline]
8346 pub fn to_token(&self) -> Option<SyntaxToken> {
8347 support::token(&self.syntax, SyntaxKind::TO_KW)
8348 }
8349 #[inline]
8350 pub fn with_token(&self) -> Option<SyntaxToken> {
8351 support::token(&self.syntax, SyntaxKind::WITH_KW)
8352 }
8353}
8354
8355#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8356pub struct GroupByClause {
8357 pub(crate) syntax: SyntaxNode,
8358}
8359impl GroupByClause {
8360 #[inline]
8361 pub fn group_by_list(&self) -> Option<GroupByList> {
8362 support::child(&self.syntax)
8363 }
8364 #[inline]
8365 pub fn all_token(&self) -> Option<SyntaxToken> {
8366 support::token(&self.syntax, SyntaxKind::ALL_KW)
8367 }
8368 #[inline]
8369 pub fn by_token(&self) -> Option<SyntaxToken> {
8370 support::token(&self.syntax, SyntaxKind::BY_KW)
8371 }
8372 #[inline]
8373 pub fn distinct_token(&self) -> Option<SyntaxToken> {
8374 support::token(&self.syntax, SyntaxKind::DISTINCT_KW)
8375 }
8376 #[inline]
8377 pub fn group_token(&self) -> Option<SyntaxToken> {
8378 support::token(&self.syntax, SyntaxKind::GROUP_KW)
8379 }
8380}
8381
8382#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8383pub struct GroupByList {
8384 pub(crate) syntax: SyntaxNode,
8385}
8386impl GroupByList {
8387 #[inline]
8388 pub fn group_bys(&self) -> AstChildren<GroupBy> {
8389 support::children(&self.syntax)
8390 }
8391}
8392
8393#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8394pub struct GroupingCube {
8395 pub(crate) syntax: SyntaxNode,
8396}
8397impl GroupingCube {
8398 #[inline]
8399 pub fn expr(&self) -> Option<Expr> {
8400 support::child(&self.syntax)
8401 }
8402 #[inline]
8403 pub fn cube_token(&self) -> Option<SyntaxToken> {
8404 support::token(&self.syntax, SyntaxKind::CUBE_KW)
8405 }
8406}
8407
8408#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8409pub struct GroupingExpr {
8410 pub(crate) syntax: SyntaxNode,
8411}
8412impl GroupingExpr {
8413 #[inline]
8414 pub fn expr(&self) -> Option<Expr> {
8415 support::child(&self.syntax)
8416 }
8417}
8418
8419#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8420pub struct GroupingRollup {
8421 pub(crate) syntax: SyntaxNode,
8422}
8423impl GroupingRollup {
8424 #[inline]
8425 pub fn expr(&self) -> Option<Expr> {
8426 support::child(&self.syntax)
8427 }
8428 #[inline]
8429 pub fn rollup_token(&self) -> Option<SyntaxToken> {
8430 support::token(&self.syntax, SyntaxKind::ROLLUP_KW)
8431 }
8432}
8433
8434#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8435pub struct GroupingSets {
8436 pub(crate) syntax: SyntaxNode,
8437}
8438impl GroupingSets {
8439 #[inline]
8440 pub fn expr(&self) -> Option<Expr> {
8441 support::child(&self.syntax)
8442 }
8443 #[inline]
8444 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
8445 support::token(&self.syntax, SyntaxKind::L_PAREN)
8446 }
8447 #[inline]
8448 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
8449 support::token(&self.syntax, SyntaxKind::R_PAREN)
8450 }
8451 #[inline]
8452 pub fn grouping_token(&self) -> Option<SyntaxToken> {
8453 support::token(&self.syntax, SyntaxKind::GROUPING_KW)
8454 }
8455 #[inline]
8456 pub fn sets_token(&self) -> Option<SyntaxToken> {
8457 support::token(&self.syntax, SyntaxKind::SETS_KW)
8458 }
8459}
8460
8461#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8462pub struct Gteq {
8463 pub(crate) syntax: SyntaxNode,
8464}
8465impl Gteq {
8466 #[inline]
8467 pub fn eq_token(&self) -> Option<SyntaxToken> {
8468 support::token(&self.syntax, SyntaxKind::EQ)
8469 }
8470 #[inline]
8471 pub fn r_angle_token(&self) -> Option<SyntaxToken> {
8472 support::token(&self.syntax, SyntaxKind::R_ANGLE)
8473 }
8474}
8475
8476#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8477pub struct HandlerClause {
8478 pub(crate) syntax: SyntaxNode,
8479}
8480impl HandlerClause {
8481 #[inline]
8482 pub fn path(&self) -> Option<Path> {
8483 support::child(&self.syntax)
8484 }
8485 #[inline]
8486 pub fn handler_token(&self) -> Option<SyntaxToken> {
8487 support::token(&self.syntax, SyntaxKind::HANDLER_KW)
8488 }
8489}
8490
8491#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8492pub struct HavingClause {
8493 pub(crate) syntax: SyntaxNode,
8494}
8495impl HavingClause {
8496 #[inline]
8497 pub fn expr(&self) -> Option<Expr> {
8498 support::child(&self.syntax)
8499 }
8500 #[inline]
8501 pub fn having_token(&self) -> Option<SyntaxToken> {
8502 support::token(&self.syntax, SyntaxKind::HAVING_KW)
8503 }
8504}
8505
8506#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8507pub struct IfExists {
8508 pub(crate) syntax: SyntaxNode,
8509}
8510impl IfExists {
8511 #[inline]
8512 pub fn exists_token(&self) -> Option<SyntaxToken> {
8513 support::token(&self.syntax, SyntaxKind::EXISTS_KW)
8514 }
8515 #[inline]
8516 pub fn if_token(&self) -> Option<SyntaxToken> {
8517 support::token(&self.syntax, SyntaxKind::IF_KW)
8518 }
8519}
8520
8521#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8522pub struct IfNotExists {
8523 pub(crate) syntax: SyntaxNode,
8524}
8525impl IfNotExists {
8526 #[inline]
8527 pub fn exists_token(&self) -> Option<SyntaxToken> {
8528 support::token(&self.syntax, SyntaxKind::EXISTS_KW)
8529 }
8530 #[inline]
8531 pub fn if_token(&self) -> Option<SyntaxToken> {
8532 support::token(&self.syntax, SyntaxKind::IF_KW)
8533 }
8534 #[inline]
8535 pub fn not_token(&self) -> Option<SyntaxToken> {
8536 support::token(&self.syntax, SyntaxKind::NOT_KW)
8537 }
8538}
8539
8540#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8541pub struct ImportForeignSchema {
8542 pub(crate) syntax: SyntaxNode,
8543}
8544impl ImportForeignSchema {
8545 #[inline]
8546 pub fn alter_option_list(&self) -> Option<AlterOptionList> {
8547 support::child(&self.syntax)
8548 }
8549 #[inline]
8550 pub fn except_tables(&self) -> Option<ExceptTables> {
8551 support::child(&self.syntax)
8552 }
8553 #[inline]
8554 pub fn into_schema(&self) -> Option<IntoSchema> {
8555 support::child(&self.syntax)
8556 }
8557 #[inline]
8558 pub fn limit_to_tables(&self) -> Option<LimitToTables> {
8559 support::child(&self.syntax)
8560 }
8561 #[inline]
8562 pub fn name_ref(&self) -> Option<NameRef> {
8563 support::child(&self.syntax)
8564 }
8565 #[inline]
8566 pub fn server_name(&self) -> Option<ServerName> {
8567 support::child(&self.syntax)
8568 }
8569 #[inline]
8570 pub fn foreign_token(&self) -> Option<SyntaxToken> {
8571 support::token(&self.syntax, SyntaxKind::FOREIGN_KW)
8572 }
8573 #[inline]
8574 pub fn from_token(&self) -> Option<SyntaxToken> {
8575 support::token(&self.syntax, SyntaxKind::FROM_KW)
8576 }
8577 #[inline]
8578 pub fn import_token(&self) -> Option<SyntaxToken> {
8579 support::token(&self.syntax, SyntaxKind::IMPORT_KW)
8580 }
8581 #[inline]
8582 pub fn schema_token(&self) -> Option<SyntaxToken> {
8583 support::token(&self.syntax, SyntaxKind::SCHEMA_KW)
8584 }
8585}
8586
8587#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8588pub struct IndexExpr {
8589 pub(crate) syntax: SyntaxNode,
8590}
8591impl IndexExpr {
8592 #[inline]
8593 pub fn l_brack_token(&self) -> Option<SyntaxToken> {
8594 support::token(&self.syntax, SyntaxKind::L_BRACK)
8595 }
8596 #[inline]
8597 pub fn r_brack_token(&self) -> Option<SyntaxToken> {
8598 support::token(&self.syntax, SyntaxKind::R_BRACK)
8599 }
8600}
8601
8602#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8603pub struct Inherit {
8604 pub(crate) syntax: SyntaxNode,
8605}
8606impl Inherit {
8607 #[inline]
8608 pub fn path(&self) -> Option<Path> {
8609 support::child(&self.syntax)
8610 }
8611 #[inline]
8612 pub fn inherit_token(&self) -> Option<SyntaxToken> {
8613 support::token(&self.syntax, SyntaxKind::INHERIT_KW)
8614 }
8615}
8616
8617#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8618pub struct InheritTable {
8619 pub(crate) syntax: SyntaxNode,
8620}
8621impl InheritTable {
8622 #[inline]
8623 pub fn path(&self) -> Option<Path> {
8624 support::child(&self.syntax)
8625 }
8626 #[inline]
8627 pub fn inherit_token(&self) -> Option<SyntaxToken> {
8628 support::token(&self.syntax, SyntaxKind::INHERIT_KW)
8629 }
8630}
8631
8632#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8633pub struct Inherits {
8634 pub(crate) syntax: SyntaxNode,
8635}
8636impl Inherits {
8637 #[inline]
8638 pub fn paths(&self) -> AstChildren<Path> {
8639 support::children(&self.syntax)
8640 }
8641 #[inline]
8642 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
8643 support::token(&self.syntax, SyntaxKind::L_PAREN)
8644 }
8645 #[inline]
8646 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
8647 support::token(&self.syntax, SyntaxKind::R_PAREN)
8648 }
8649 #[inline]
8650 pub fn inherits_token(&self) -> Option<SyntaxToken> {
8651 support::token(&self.syntax, SyntaxKind::INHERITS_KW)
8652 }
8653}
8654
8655#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8656pub struct InitiallyDeferredConstraintOption {
8657 pub(crate) syntax: SyntaxNode,
8658}
8659impl InitiallyDeferredConstraintOption {
8660 #[inline]
8661 pub fn deferred_token(&self) -> Option<SyntaxToken> {
8662 support::token(&self.syntax, SyntaxKind::DEFERRED_KW)
8663 }
8664 #[inline]
8665 pub fn initially_token(&self) -> Option<SyntaxToken> {
8666 support::token(&self.syntax, SyntaxKind::INITIALLY_KW)
8667 }
8668}
8669
8670#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8671pub struct InitiallyImmediateConstraintOption {
8672 pub(crate) syntax: SyntaxNode,
8673}
8674impl InitiallyImmediateConstraintOption {
8675 #[inline]
8676 pub fn immediate_token(&self) -> Option<SyntaxToken> {
8677 support::token(&self.syntax, SyntaxKind::IMMEDIATE_KW)
8678 }
8679 #[inline]
8680 pub fn initially_token(&self) -> Option<SyntaxToken> {
8681 support::token(&self.syntax, SyntaxKind::INITIALLY_KW)
8682 }
8683}
8684
8685#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8686pub struct Insert {
8687 pub(crate) syntax: SyntaxNode,
8688}
8689impl Insert {
8690 #[inline]
8691 pub fn alias(&self) -> Option<Alias> {
8692 support::child(&self.syntax)
8693 }
8694 #[inline]
8695 pub fn column_list(&self) -> Option<ColumnList> {
8696 support::child(&self.syntax)
8697 }
8698 #[inline]
8699 pub fn on_conflict_clause(&self) -> Option<OnConflictClause> {
8700 support::child(&self.syntax)
8701 }
8702 #[inline]
8703 pub fn path(&self) -> Option<Path> {
8704 support::child(&self.syntax)
8705 }
8706 #[inline]
8707 pub fn returning_clause(&self) -> Option<ReturningClause> {
8708 support::child(&self.syntax)
8709 }
8710 #[inline]
8711 pub fn stmt(&self) -> Option<Stmt> {
8712 support::child(&self.syntax)
8713 }
8714 #[inline]
8715 pub fn values(&self) -> Option<Values> {
8716 support::child(&self.syntax)
8717 }
8718 #[inline]
8719 pub fn with_clause(&self) -> Option<WithClause> {
8720 support::child(&self.syntax)
8721 }
8722 #[inline]
8723 pub fn default_token(&self) -> Option<SyntaxToken> {
8724 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
8725 }
8726 #[inline]
8727 pub fn insert_token(&self) -> Option<SyntaxToken> {
8728 support::token(&self.syntax, SyntaxKind::INSERT_KW)
8729 }
8730 #[inline]
8731 pub fn into_token(&self) -> Option<SyntaxToken> {
8732 support::token(&self.syntax, SyntaxKind::INTO_KW)
8733 }
8734 #[inline]
8735 pub fn overriding_token(&self) -> Option<SyntaxToken> {
8736 support::token(&self.syntax, SyntaxKind::OVERRIDING_KW)
8737 }
8738 #[inline]
8739 pub fn system_token(&self) -> Option<SyntaxToken> {
8740 support::token(&self.syntax, SyntaxKind::SYSTEM_KW)
8741 }
8742 #[inline]
8743 pub fn user_token(&self) -> Option<SyntaxToken> {
8744 support::token(&self.syntax, SyntaxKind::USER_KW)
8745 }
8746 #[inline]
8747 pub fn value_token(&self) -> Option<SyntaxToken> {
8748 support::token(&self.syntax, SyntaxKind::VALUE_KW)
8749 }
8750 #[inline]
8751 pub fn values_token(&self) -> Option<SyntaxToken> {
8752 support::token(&self.syntax, SyntaxKind::VALUES_KW)
8753 }
8754}
8755
8756#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8757pub struct IntervalType {
8758 pub(crate) syntax: SyntaxNode,
8759}
8760impl IntervalType {
8761 #[inline]
8762 pub fn literal(&self) -> Option<Literal> {
8763 support::child(&self.syntax)
8764 }
8765 #[inline]
8766 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
8767 support::token(&self.syntax, SyntaxKind::L_PAREN)
8768 }
8769 #[inline]
8770 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
8771 support::token(&self.syntax, SyntaxKind::R_PAREN)
8772 }
8773 #[inline]
8774 pub fn day_token(&self) -> Option<SyntaxToken> {
8775 support::token(&self.syntax, SyntaxKind::DAY_KW)
8776 }
8777 #[inline]
8778 pub fn hour_token(&self) -> Option<SyntaxToken> {
8779 support::token(&self.syntax, SyntaxKind::HOUR_KW)
8780 }
8781 #[inline]
8782 pub fn interval_token(&self) -> Option<SyntaxToken> {
8783 support::token(&self.syntax, SyntaxKind::INTERVAL_KW)
8784 }
8785 #[inline]
8786 pub fn minute_token(&self) -> Option<SyntaxToken> {
8787 support::token(&self.syntax, SyntaxKind::MINUTE_KW)
8788 }
8789 #[inline]
8790 pub fn month_token(&self) -> Option<SyntaxToken> {
8791 support::token(&self.syntax, SyntaxKind::MONTH_KW)
8792 }
8793 #[inline]
8794 pub fn second_token(&self) -> Option<SyntaxToken> {
8795 support::token(&self.syntax, SyntaxKind::SECOND_KW)
8796 }
8797 #[inline]
8798 pub fn to_token(&self) -> Option<SyntaxToken> {
8799 support::token(&self.syntax, SyntaxKind::TO_KW)
8800 }
8801 #[inline]
8802 pub fn year_token(&self) -> Option<SyntaxToken> {
8803 support::token(&self.syntax, SyntaxKind::YEAR_KW)
8804 }
8805}
8806
8807#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8808pub struct IntoClause {
8809 pub(crate) syntax: SyntaxNode,
8810}
8811impl IntoClause {
8812 #[inline]
8813 pub fn path(&self) -> Option<Path> {
8814 support::child(&self.syntax)
8815 }
8816 #[inline]
8817 pub fn into_token(&self) -> Option<SyntaxToken> {
8818 support::token(&self.syntax, SyntaxKind::INTO_KW)
8819 }
8820}
8821
8822#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8823pub struct IntoSchema {
8824 pub(crate) syntax: SyntaxNode,
8825}
8826impl IntoSchema {
8827 #[inline]
8828 pub fn name_ref(&self) -> Option<NameRef> {
8829 support::child(&self.syntax)
8830 }
8831 #[inline]
8832 pub fn into_token(&self) -> Option<SyntaxToken> {
8833 support::token(&self.syntax, SyntaxKind::INTO_KW)
8834 }
8835}
8836
8837#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8838pub struct IsDistinctFrom {
8839 pub(crate) syntax: SyntaxNode,
8840}
8841impl IsDistinctFrom {
8842 #[inline]
8843 pub fn distinct_token(&self) -> Option<SyntaxToken> {
8844 support::token(&self.syntax, SyntaxKind::DISTINCT_KW)
8845 }
8846 #[inline]
8847 pub fn from_token(&self) -> Option<SyntaxToken> {
8848 support::token(&self.syntax, SyntaxKind::FROM_KW)
8849 }
8850 #[inline]
8851 pub fn is_token(&self) -> Option<SyntaxToken> {
8852 support::token(&self.syntax, SyntaxKind::IS_KW)
8853 }
8854}
8855
8856#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8857pub struct IsJson {
8858 pub(crate) syntax: SyntaxNode,
8859}
8860impl IsJson {
8861 #[inline]
8862 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
8863 support::child(&self.syntax)
8864 }
8865 #[inline]
8866 pub fn is_token(&self) -> Option<SyntaxToken> {
8867 support::token(&self.syntax, SyntaxKind::IS_KW)
8868 }
8869 #[inline]
8870 pub fn json_token(&self) -> Option<SyntaxToken> {
8871 support::token(&self.syntax, SyntaxKind::JSON_KW)
8872 }
8873}
8874
8875#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8876pub struct IsJsonArray {
8877 pub(crate) syntax: SyntaxNode,
8878}
8879impl IsJsonArray {
8880 #[inline]
8881 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
8882 support::child(&self.syntax)
8883 }
8884 #[inline]
8885 pub fn array_token(&self) -> Option<SyntaxToken> {
8886 support::token(&self.syntax, SyntaxKind::ARRAY_KW)
8887 }
8888 #[inline]
8889 pub fn is_token(&self) -> Option<SyntaxToken> {
8890 support::token(&self.syntax, SyntaxKind::IS_KW)
8891 }
8892 #[inline]
8893 pub fn json_token(&self) -> Option<SyntaxToken> {
8894 support::token(&self.syntax, SyntaxKind::JSON_KW)
8895 }
8896}
8897
8898#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8899pub struct IsJsonObject {
8900 pub(crate) syntax: SyntaxNode,
8901}
8902impl IsJsonObject {
8903 #[inline]
8904 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
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 json_token(&self) -> Option<SyntaxToken> {
8913 support::token(&self.syntax, SyntaxKind::JSON_KW)
8914 }
8915 #[inline]
8916 pub fn object_token(&self) -> Option<SyntaxToken> {
8917 support::token(&self.syntax, SyntaxKind::OBJECT_KW)
8918 }
8919}
8920
8921#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8922pub struct IsJsonScalar {
8923 pub(crate) syntax: SyntaxNode,
8924}
8925impl IsJsonScalar {
8926 #[inline]
8927 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
8928 support::child(&self.syntax)
8929 }
8930 #[inline]
8931 pub fn is_token(&self) -> Option<SyntaxToken> {
8932 support::token(&self.syntax, SyntaxKind::IS_KW)
8933 }
8934 #[inline]
8935 pub fn json_token(&self) -> Option<SyntaxToken> {
8936 support::token(&self.syntax, SyntaxKind::JSON_KW)
8937 }
8938 #[inline]
8939 pub fn scalar_token(&self) -> Option<SyntaxToken> {
8940 support::token(&self.syntax, SyntaxKind::SCALAR_KW)
8941 }
8942}
8943
8944#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8945pub struct IsJsonValue {
8946 pub(crate) syntax: SyntaxNode,
8947}
8948impl IsJsonValue {
8949 #[inline]
8950 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
8951 support::child(&self.syntax)
8952 }
8953 #[inline]
8954 pub fn is_token(&self) -> Option<SyntaxToken> {
8955 support::token(&self.syntax, SyntaxKind::IS_KW)
8956 }
8957 #[inline]
8958 pub fn json_token(&self) -> Option<SyntaxToken> {
8959 support::token(&self.syntax, SyntaxKind::JSON_KW)
8960 }
8961 #[inline]
8962 pub fn value_token(&self) -> Option<SyntaxToken> {
8963 support::token(&self.syntax, SyntaxKind::VALUE_KW)
8964 }
8965}
8966
8967#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8968pub struct IsNormalized {
8969 pub(crate) syntax: SyntaxNode,
8970}
8971impl IsNormalized {
8972 #[inline]
8973 pub fn unicode_normal_form(&self) -> Option<UnicodeNormalForm> {
8974 support::child(&self.syntax)
8975 }
8976 #[inline]
8977 pub fn is_token(&self) -> Option<SyntaxToken> {
8978 support::token(&self.syntax, SyntaxKind::IS_KW)
8979 }
8980 #[inline]
8981 pub fn normalized_token(&self) -> Option<SyntaxToken> {
8982 support::token(&self.syntax, SyntaxKind::NORMALIZED_KW)
8983 }
8984}
8985
8986#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8987pub struct IsNot {
8988 pub(crate) syntax: SyntaxNode,
8989}
8990impl IsNot {
8991 #[inline]
8992 pub fn is_token(&self) -> Option<SyntaxToken> {
8993 support::token(&self.syntax, SyntaxKind::IS_KW)
8994 }
8995 #[inline]
8996 pub fn not_token(&self) -> Option<SyntaxToken> {
8997 support::token(&self.syntax, SyntaxKind::NOT_KW)
8998 }
8999}
9000
9001#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9002pub struct IsNotDistinctFrom {
9003 pub(crate) syntax: SyntaxNode,
9004}
9005impl IsNotDistinctFrom {
9006 #[inline]
9007 pub fn distinct_token(&self) -> Option<SyntaxToken> {
9008 support::token(&self.syntax, SyntaxKind::DISTINCT_KW)
9009 }
9010 #[inline]
9011 pub fn from_token(&self) -> Option<SyntaxToken> {
9012 support::token(&self.syntax, SyntaxKind::FROM_KW)
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 not_token(&self) -> Option<SyntaxToken> {
9020 support::token(&self.syntax, SyntaxKind::NOT_KW)
9021 }
9022}
9023
9024#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9025pub struct IsNotJson {
9026 pub(crate) syntax: SyntaxNode,
9027}
9028impl IsNotJson {
9029 #[inline]
9030 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
9031 support::child(&self.syntax)
9032 }
9033 #[inline]
9034 pub fn is_token(&self) -> Option<SyntaxToken> {
9035 support::token(&self.syntax, SyntaxKind::IS_KW)
9036 }
9037 #[inline]
9038 pub fn json_token(&self) -> Option<SyntaxToken> {
9039 support::token(&self.syntax, SyntaxKind::JSON_KW)
9040 }
9041 #[inline]
9042 pub fn not_token(&self) -> Option<SyntaxToken> {
9043 support::token(&self.syntax, SyntaxKind::NOT_KW)
9044 }
9045}
9046
9047#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9048pub struct IsNotJsonArray {
9049 pub(crate) syntax: SyntaxNode,
9050}
9051impl IsNotJsonArray {
9052 #[inline]
9053 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
9054 support::child(&self.syntax)
9055 }
9056 #[inline]
9057 pub fn array_token(&self) -> Option<SyntaxToken> {
9058 support::token(&self.syntax, SyntaxKind::ARRAY_KW)
9059 }
9060 #[inline]
9061 pub fn is_token(&self) -> Option<SyntaxToken> {
9062 support::token(&self.syntax, SyntaxKind::IS_KW)
9063 }
9064 #[inline]
9065 pub fn json_token(&self) -> Option<SyntaxToken> {
9066 support::token(&self.syntax, SyntaxKind::JSON_KW)
9067 }
9068 #[inline]
9069 pub fn not_token(&self) -> Option<SyntaxToken> {
9070 support::token(&self.syntax, SyntaxKind::NOT_KW)
9071 }
9072}
9073
9074#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9075pub struct IsNotJsonObject {
9076 pub(crate) syntax: SyntaxNode,
9077}
9078impl IsNotJsonObject {
9079 #[inline]
9080 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
9081 support::child(&self.syntax)
9082 }
9083 #[inline]
9084 pub fn is_token(&self) -> Option<SyntaxToken> {
9085 support::token(&self.syntax, SyntaxKind::IS_KW)
9086 }
9087 #[inline]
9088 pub fn json_token(&self) -> Option<SyntaxToken> {
9089 support::token(&self.syntax, SyntaxKind::JSON_KW)
9090 }
9091 #[inline]
9092 pub fn not_token(&self) -> Option<SyntaxToken> {
9093 support::token(&self.syntax, SyntaxKind::NOT_KW)
9094 }
9095 #[inline]
9096 pub fn object_token(&self) -> Option<SyntaxToken> {
9097 support::token(&self.syntax, SyntaxKind::OBJECT_KW)
9098 }
9099}
9100
9101#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9102pub struct IsNotJsonScalar {
9103 pub(crate) syntax: SyntaxNode,
9104}
9105impl IsNotJsonScalar {
9106 #[inline]
9107 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
9108 support::child(&self.syntax)
9109 }
9110 #[inline]
9111 pub fn is_token(&self) -> Option<SyntaxToken> {
9112 support::token(&self.syntax, SyntaxKind::IS_KW)
9113 }
9114 #[inline]
9115 pub fn json_token(&self) -> Option<SyntaxToken> {
9116 support::token(&self.syntax, SyntaxKind::JSON_KW)
9117 }
9118 #[inline]
9119 pub fn not_token(&self) -> Option<SyntaxToken> {
9120 support::token(&self.syntax, SyntaxKind::NOT_KW)
9121 }
9122 #[inline]
9123 pub fn scalar_token(&self) -> Option<SyntaxToken> {
9124 support::token(&self.syntax, SyntaxKind::SCALAR_KW)
9125 }
9126}
9127
9128#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9129pub struct IsNotJsonValue {
9130 pub(crate) syntax: SyntaxNode,
9131}
9132impl IsNotJsonValue {
9133 #[inline]
9134 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
9135 support::child(&self.syntax)
9136 }
9137 #[inline]
9138 pub fn is_token(&self) -> Option<SyntaxToken> {
9139 support::token(&self.syntax, SyntaxKind::IS_KW)
9140 }
9141 #[inline]
9142 pub fn json_token(&self) -> Option<SyntaxToken> {
9143 support::token(&self.syntax, SyntaxKind::JSON_KW)
9144 }
9145 #[inline]
9146 pub fn not_token(&self) -> Option<SyntaxToken> {
9147 support::token(&self.syntax, SyntaxKind::NOT_KW)
9148 }
9149 #[inline]
9150 pub fn value_token(&self) -> Option<SyntaxToken> {
9151 support::token(&self.syntax, SyntaxKind::VALUE_KW)
9152 }
9153}
9154
9155#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9156pub struct IsNotNormalized {
9157 pub(crate) syntax: SyntaxNode,
9158}
9159impl IsNotNormalized {
9160 #[inline]
9161 pub fn unicode_normal_form(&self) -> Option<UnicodeNormalForm> {
9162 support::child(&self.syntax)
9163 }
9164 #[inline]
9165 pub fn is_token(&self) -> Option<SyntaxToken> {
9166 support::token(&self.syntax, SyntaxKind::IS_KW)
9167 }
9168 #[inline]
9169 pub fn normalized_token(&self) -> Option<SyntaxToken> {
9170 support::token(&self.syntax, SyntaxKind::NORMALIZED_KW)
9171 }
9172 #[inline]
9173 pub fn not_token(&self) -> Option<SyntaxToken> {
9174 support::token(&self.syntax, SyntaxKind::NOT_KW)
9175 }
9176}
9177
9178#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9179pub struct Join {
9180 pub(crate) syntax: SyntaxNode,
9181}
9182impl Join {
9183 #[inline]
9184 pub fn from_item(&self) -> Option<FromItem> {
9185 support::child(&self.syntax)
9186 }
9187 #[inline]
9188 pub fn join_type(&self) -> Option<JoinType> {
9189 support::child(&self.syntax)
9190 }
9191 #[inline]
9192 pub fn on_clause(&self) -> Option<OnClause> {
9193 support::child(&self.syntax)
9194 }
9195 #[inline]
9196 pub fn using_clause(&self) -> Option<JoinUsingClause> {
9197 support::child(&self.syntax)
9198 }
9199 #[inline]
9200 pub fn natural_token(&self) -> Option<SyntaxToken> {
9201 support::token(&self.syntax, SyntaxKind::NATURAL_KW)
9202 }
9203}
9204
9205#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9206pub struct JoinCross {
9207 pub(crate) syntax: SyntaxNode,
9208}
9209impl JoinCross {
9210 #[inline]
9211 pub fn cross_token(&self) -> Option<SyntaxToken> {
9212 support::token(&self.syntax, SyntaxKind::CROSS_KW)
9213 }
9214 #[inline]
9215 pub fn join_token(&self) -> Option<SyntaxToken> {
9216 support::token(&self.syntax, SyntaxKind::JOIN_KW)
9217 }
9218}
9219
9220#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9221pub struct JoinExpr {
9222 pub(crate) syntax: SyntaxNode,
9223}
9224impl JoinExpr {
9225 #[inline]
9226 pub fn from_item(&self) -> Option<FromItem> {
9227 support::child(&self.syntax)
9228 }
9229 #[inline]
9230 pub fn join(&self) -> Option<Join> {
9231 support::child(&self.syntax)
9232 }
9233 #[inline]
9234 pub fn join_expr(&self) -> Option<JoinExpr> {
9235 support::child(&self.syntax)
9236 }
9237}
9238
9239#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9240pub struct JoinFull {
9241 pub(crate) syntax: SyntaxNode,
9242}
9243impl JoinFull {
9244 #[inline]
9245 pub fn full_token(&self) -> Option<SyntaxToken> {
9246 support::token(&self.syntax, SyntaxKind::FULL_KW)
9247 }
9248 #[inline]
9249 pub fn join_token(&self) -> Option<SyntaxToken> {
9250 support::token(&self.syntax, SyntaxKind::JOIN_KW)
9251 }
9252 #[inline]
9253 pub fn outer_token(&self) -> Option<SyntaxToken> {
9254 support::token(&self.syntax, SyntaxKind::OUTER_KW)
9255 }
9256}
9257
9258#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9259pub struct JoinInner {
9260 pub(crate) syntax: SyntaxNode,
9261}
9262impl JoinInner {
9263 #[inline]
9264 pub fn inner_token(&self) -> Option<SyntaxToken> {
9265 support::token(&self.syntax, SyntaxKind::INNER_KW)
9266 }
9267 #[inline]
9268 pub fn join_token(&self) -> Option<SyntaxToken> {
9269 support::token(&self.syntax, SyntaxKind::JOIN_KW)
9270 }
9271}
9272
9273#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9274pub struct JoinLeft {
9275 pub(crate) syntax: SyntaxNode,
9276}
9277impl JoinLeft {
9278 #[inline]
9279 pub fn join_token(&self) -> Option<SyntaxToken> {
9280 support::token(&self.syntax, SyntaxKind::JOIN_KW)
9281 }
9282 #[inline]
9283 pub fn left_token(&self) -> Option<SyntaxToken> {
9284 support::token(&self.syntax, SyntaxKind::LEFT_KW)
9285 }
9286 #[inline]
9287 pub fn outer_token(&self) -> Option<SyntaxToken> {
9288 support::token(&self.syntax, SyntaxKind::OUTER_KW)
9289 }
9290}
9291
9292#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9293pub struct JoinRight {
9294 pub(crate) syntax: SyntaxNode,
9295}
9296impl JoinRight {
9297 #[inline]
9298 pub fn join_token(&self) -> Option<SyntaxToken> {
9299 support::token(&self.syntax, SyntaxKind::JOIN_KW)
9300 }
9301 #[inline]
9302 pub fn outer_token(&self) -> Option<SyntaxToken> {
9303 support::token(&self.syntax, SyntaxKind::OUTER_KW)
9304 }
9305 #[inline]
9306 pub fn right_token(&self) -> Option<SyntaxToken> {
9307 support::token(&self.syntax, SyntaxKind::RIGHT_KW)
9308 }
9309}
9310
9311#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9312pub struct JoinUsingClause {
9313 pub(crate) syntax: SyntaxNode,
9314}
9315impl JoinUsingClause {
9316 #[inline]
9317 pub fn alias(&self) -> Option<Alias> {
9318 support::child(&self.syntax)
9319 }
9320 #[inline]
9321 pub fn column_list(&self) -> Option<ColumnList> {
9322 support::child(&self.syntax)
9323 }
9324 #[inline]
9325 pub fn using_token(&self) -> Option<SyntaxToken> {
9326 support::token(&self.syntax, SyntaxKind::USING_KW)
9327 }
9328}
9329
9330#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9331pub struct JsonArrayAggFn {
9332 pub(crate) syntax: SyntaxNode,
9333}
9334impl JsonArrayAggFn {
9335 #[inline]
9336 pub fn expr(&self) -> Option<Expr> {
9337 support::child(&self.syntax)
9338 }
9339 #[inline]
9340 pub fn json_null_clause(&self) -> Option<JsonNullClause> {
9341 support::child(&self.syntax)
9342 }
9343 #[inline]
9344 pub fn json_returning_clause(&self) -> Option<JsonReturningClause> {
9345 support::child(&self.syntax)
9346 }
9347 #[inline]
9348 pub fn json_select_formats(&self) -> AstChildren<JsonSelectFormat> {
9349 support::children(&self.syntax)
9350 }
9351 #[inline]
9352 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
9353 support::token(&self.syntax, SyntaxKind::L_PAREN)
9354 }
9355 #[inline]
9356 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
9357 support::token(&self.syntax, SyntaxKind::R_PAREN)
9358 }
9359 #[inline]
9360 pub fn json_arrayagg_token(&self) -> Option<SyntaxToken> {
9361 support::token(&self.syntax, SyntaxKind::JSON_ARRAYAGG_KW)
9362 }
9363}
9364
9365#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9366pub struct JsonArrayFn {
9367 pub(crate) syntax: SyntaxNode,
9368}
9369impl JsonArrayFn {
9370 #[inline]
9371 pub fn json_expr_formats(&self) -> AstChildren<JsonExprFormat> {
9372 support::children(&self.syntax)
9373 }
9374 #[inline]
9375 pub fn json_null_clause(&self) -> Option<JsonNullClause> {
9376 support::child(&self.syntax)
9377 }
9378 #[inline]
9379 pub fn json_returning_clause(&self) -> Option<JsonReturningClause> {
9380 support::child(&self.syntax)
9381 }
9382 #[inline]
9383 pub fn json_select_formats(&self) -> AstChildren<JsonSelectFormat> {
9384 support::children(&self.syntax)
9385 }
9386 #[inline]
9387 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
9388 support::token(&self.syntax, SyntaxKind::L_PAREN)
9389 }
9390 #[inline]
9391 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
9392 support::token(&self.syntax, SyntaxKind::R_PAREN)
9393 }
9394 #[inline]
9395 pub fn json_array_token(&self) -> Option<SyntaxToken> {
9396 support::token(&self.syntax, SyntaxKind::JSON_ARRAY_KW)
9397 }
9398}
9399
9400#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9401pub struct JsonBehaviorClause {
9402 pub(crate) syntax: SyntaxNode,
9403}
9404impl JsonBehaviorClause {
9405 #[inline]
9406 pub fn json_behavior(&self) -> Option<JsonBehavior> {
9407 support::child(&self.syntax)
9408 }
9409}
9410
9411#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9412pub struct JsonBehaviorDefault {
9413 pub(crate) syntax: SyntaxNode,
9414}
9415impl JsonBehaviorDefault {
9416 #[inline]
9417 pub fn expr(&self) -> Option<Expr> {
9418 support::child(&self.syntax)
9419 }
9420 #[inline]
9421 pub fn default_token(&self) -> Option<SyntaxToken> {
9422 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
9423 }
9424}
9425
9426#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9427pub struct JsonBehaviorEmptyArray {
9428 pub(crate) syntax: SyntaxNode,
9429}
9430impl JsonBehaviorEmptyArray {
9431 #[inline]
9432 pub fn array_token(&self) -> Option<SyntaxToken> {
9433 support::token(&self.syntax, SyntaxKind::ARRAY_KW)
9434 }
9435 #[inline]
9436 pub fn empty_token(&self) -> Option<SyntaxToken> {
9437 support::token(&self.syntax, SyntaxKind::EMPTY_KW)
9438 }
9439}
9440
9441#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9442pub struct JsonBehaviorEmptyObject {
9443 pub(crate) syntax: SyntaxNode,
9444}
9445impl JsonBehaviorEmptyObject {
9446 #[inline]
9447 pub fn empty_token(&self) -> Option<SyntaxToken> {
9448 support::token(&self.syntax, SyntaxKind::EMPTY_KW)
9449 }
9450 #[inline]
9451 pub fn object_token(&self) -> Option<SyntaxToken> {
9452 support::token(&self.syntax, SyntaxKind::OBJECT_KW)
9453 }
9454}
9455
9456#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9457pub struct JsonBehaviorError {
9458 pub(crate) syntax: SyntaxNode,
9459}
9460impl JsonBehaviorError {
9461 #[inline]
9462 pub fn error_token(&self) -> Option<SyntaxToken> {
9463 support::token(&self.syntax, SyntaxKind::ERROR_KW)
9464 }
9465}
9466
9467#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9468pub struct JsonBehaviorFalse {
9469 pub(crate) syntax: SyntaxNode,
9470}
9471impl JsonBehaviorFalse {
9472 #[inline]
9473 pub fn false_token(&self) -> Option<SyntaxToken> {
9474 support::token(&self.syntax, SyntaxKind::FALSE_KW)
9475 }
9476}
9477
9478#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9479pub struct JsonBehaviorNull {
9480 pub(crate) syntax: SyntaxNode,
9481}
9482impl JsonBehaviorNull {
9483 #[inline]
9484 pub fn null_token(&self) -> Option<SyntaxToken> {
9485 support::token(&self.syntax, SyntaxKind::NULL_KW)
9486 }
9487}
9488
9489#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9490pub struct JsonBehaviorTrue {
9491 pub(crate) syntax: SyntaxNode,
9492}
9493impl JsonBehaviorTrue {
9494 #[inline]
9495 pub fn true_token(&self) -> Option<SyntaxToken> {
9496 support::token(&self.syntax, SyntaxKind::TRUE_KW)
9497 }
9498}
9499
9500#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9501pub struct JsonBehaviorUnknown {
9502 pub(crate) syntax: SyntaxNode,
9503}
9504impl JsonBehaviorUnknown {
9505 #[inline]
9506 pub fn unknown_token(&self) -> Option<SyntaxToken> {
9507 support::token(&self.syntax, SyntaxKind::UNKNOWN_KW)
9508 }
9509}
9510
9511#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9512pub struct JsonEncodingClause {
9513 pub(crate) syntax: SyntaxNode,
9514}
9515impl JsonEncodingClause {
9516 #[inline]
9517 pub fn name_ref(&self) -> Option<NameRef> {
9518 support::child(&self.syntax)
9519 }
9520 #[inline]
9521 pub fn encoding_token(&self) -> Option<SyntaxToken> {
9522 support::token(&self.syntax, SyntaxKind::ENCODING_KW)
9523 }
9524}
9525
9526#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9527pub struct JsonExistsFn {
9528 pub(crate) syntax: SyntaxNode,
9529}
9530impl JsonExistsFn {
9531 #[inline]
9532 pub fn expr(&self) -> Option<Expr> {
9533 support::child(&self.syntax)
9534 }
9535 #[inline]
9536 pub fn json_format_clause(&self) -> Option<JsonFormatClause> {
9537 support::child(&self.syntax)
9538 }
9539 #[inline]
9540 pub fn json_on_error_clause(&self) -> Option<JsonOnErrorClause> {
9541 support::child(&self.syntax)
9542 }
9543 #[inline]
9544 pub fn json_passing_clause(&self) -> Option<JsonPassingClause> {
9545 support::child(&self.syntax)
9546 }
9547 #[inline]
9548 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
9549 support::token(&self.syntax, SyntaxKind::L_PAREN)
9550 }
9551 #[inline]
9552 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
9553 support::token(&self.syntax, SyntaxKind::R_PAREN)
9554 }
9555 #[inline]
9556 pub fn comma_token(&self) -> Option<SyntaxToken> {
9557 support::token(&self.syntax, SyntaxKind::COMMA)
9558 }
9559 #[inline]
9560 pub fn json_exists_token(&self) -> Option<SyntaxToken> {
9561 support::token(&self.syntax, SyntaxKind::JSON_EXISTS_KW)
9562 }
9563}
9564
9565#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9566pub struct JsonExprFormat {
9567 pub(crate) syntax: SyntaxNode,
9568}
9569impl JsonExprFormat {
9570 #[inline]
9571 pub fn expr(&self) -> Option<Expr> {
9572 support::child(&self.syntax)
9573 }
9574 #[inline]
9575 pub fn json_format_clause(&self) -> Option<JsonFormatClause> {
9576 support::child(&self.syntax)
9577 }
9578}
9579
9580#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9581pub struct JsonFn {
9582 pub(crate) syntax: SyntaxNode,
9583}
9584impl JsonFn {
9585 #[inline]
9586 pub fn json_expr_format(&self) -> Option<JsonExprFormat> {
9587 support::child(&self.syntax)
9588 }
9589 #[inline]
9590 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
9591 support::child(&self.syntax)
9592 }
9593 #[inline]
9594 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
9595 support::token(&self.syntax, SyntaxKind::L_PAREN)
9596 }
9597 #[inline]
9598 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
9599 support::token(&self.syntax, SyntaxKind::R_PAREN)
9600 }
9601 #[inline]
9602 pub fn json_token(&self) -> Option<SyntaxToken> {
9603 support::token(&self.syntax, SyntaxKind::JSON_KW)
9604 }
9605}
9606
9607#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9608pub struct JsonFormatClause {
9609 pub(crate) syntax: SyntaxNode,
9610}
9611impl JsonFormatClause {
9612 #[inline]
9613 pub fn json_encoding_clause(&self) -> Option<JsonEncodingClause> {
9614 support::child(&self.syntax)
9615 }
9616 #[inline]
9617 pub fn format_token(&self) -> Option<SyntaxToken> {
9618 support::token(&self.syntax, SyntaxKind::FORMAT_KW)
9619 }
9620 #[inline]
9621 pub fn json_token(&self) -> Option<SyntaxToken> {
9622 support::token(&self.syntax, SyntaxKind::JSON_KW)
9623 }
9624}
9625
9626#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9627pub struct JsonKeyValue {
9628 pub(crate) syntax: SyntaxNode,
9629}
9630impl JsonKeyValue {
9631 #[inline]
9632 pub fn expr(&self) -> Option<Expr> {
9633 support::child(&self.syntax)
9634 }
9635 #[inline]
9636 pub fn json_value_expr(&self) -> Option<JsonValueExpr> {
9637 support::child(&self.syntax)
9638 }
9639 #[inline]
9640 pub fn colon_token(&self) -> Option<SyntaxToken> {
9641 support::token(&self.syntax, SyntaxKind::COLON)
9642 }
9643 #[inline]
9644 pub fn value_token(&self) -> Option<SyntaxToken> {
9645 support::token(&self.syntax, SyntaxKind::VALUE_KW)
9646 }
9647}
9648
9649#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9650pub struct JsonKeysUniqueClause {
9651 pub(crate) syntax: SyntaxNode,
9652}
9653impl JsonKeysUniqueClause {
9654 #[inline]
9655 pub fn keys_token(&self) -> Option<SyntaxToken> {
9656 support::token(&self.syntax, SyntaxKind::KEYS_KW)
9657 }
9658 #[inline]
9659 pub fn unique_token(&self) -> Option<SyntaxToken> {
9660 support::token(&self.syntax, SyntaxKind::UNIQUE_KW)
9661 }
9662 #[inline]
9663 pub fn with_token(&self) -> Option<SyntaxToken> {
9664 support::token(&self.syntax, SyntaxKind::WITH_KW)
9665 }
9666 #[inline]
9667 pub fn without_token(&self) -> Option<SyntaxToken> {
9668 support::token(&self.syntax, SyntaxKind::WITHOUT_KW)
9669 }
9670}
9671
9672#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9673pub struct JsonNullClause {
9674 pub(crate) syntax: SyntaxNode,
9675}
9676impl JsonNullClause {
9677 #[inline]
9678 pub fn absent_token(&self) -> Option<SyntaxToken> {
9679 support::token(&self.syntax, SyntaxKind::ABSENT_KW)
9680 }
9681 #[inline]
9682 pub fn null_token(&self) -> Option<SyntaxToken> {
9683 support::token(&self.syntax, SyntaxKind::NULL_KW)
9684 }
9685 #[inline]
9686 pub fn on_token(&self) -> Option<SyntaxToken> {
9687 support::token(&self.syntax, SyntaxKind::ON_KW)
9688 }
9689}
9690
9691#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9692pub struct JsonObjectAggFn {
9693 pub(crate) syntax: SyntaxNode,
9694}
9695impl JsonObjectAggFn {
9696 #[inline]
9697 pub fn json_key_value(&self) -> Option<JsonKeyValue> {
9698 support::child(&self.syntax)
9699 }
9700 #[inline]
9701 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
9702 support::child(&self.syntax)
9703 }
9704 #[inline]
9705 pub fn json_null_clause(&self) -> Option<JsonNullClause> {
9706 support::child(&self.syntax)
9707 }
9708 #[inline]
9709 pub fn json_returning_clause(&self) -> Option<JsonReturningClause> {
9710 support::child(&self.syntax)
9711 }
9712 #[inline]
9713 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
9714 support::token(&self.syntax, SyntaxKind::L_PAREN)
9715 }
9716 #[inline]
9717 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
9718 support::token(&self.syntax, SyntaxKind::R_PAREN)
9719 }
9720 #[inline]
9721 pub fn json_objectagg_token(&self) -> Option<SyntaxToken> {
9722 support::token(&self.syntax, SyntaxKind::JSON_OBJECTAGG_KW)
9723 }
9724}
9725
9726#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9727pub struct JsonObjectFn {
9728 pub(crate) syntax: SyntaxNode,
9729}
9730impl JsonObjectFn {
9731 #[inline]
9732 pub fn json_key_values(&self) -> AstChildren<JsonKeyValue> {
9733 support::children(&self.syntax)
9734 }
9735 #[inline]
9736 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
9737 support::child(&self.syntax)
9738 }
9739 #[inline]
9740 pub fn json_null_clause(&self) -> Option<JsonNullClause> {
9741 support::child(&self.syntax)
9742 }
9743 #[inline]
9744 pub fn json_returning_clause(&self) -> Option<JsonReturningClause> {
9745 support::child(&self.syntax)
9746 }
9747 #[inline]
9748 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
9749 support::token(&self.syntax, SyntaxKind::L_PAREN)
9750 }
9751 #[inline]
9752 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
9753 support::token(&self.syntax, SyntaxKind::R_PAREN)
9754 }
9755 #[inline]
9756 pub fn json_object_token(&self) -> Option<SyntaxToken> {
9757 support::token(&self.syntax, SyntaxKind::JSON_OBJECT_KW)
9758 }
9759}
9760
9761#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9762pub struct JsonOnEmptyClause {
9763 pub(crate) syntax: SyntaxNode,
9764}
9765impl JsonOnEmptyClause {
9766 #[inline]
9767 pub fn json_behavior(&self) -> Option<JsonBehavior> {
9768 support::child(&self.syntax)
9769 }
9770 #[inline]
9771 pub fn empty_token(&self) -> Option<SyntaxToken> {
9772 support::token(&self.syntax, SyntaxKind::EMPTY_KW)
9773 }
9774 #[inline]
9775 pub fn on_token(&self) -> Option<SyntaxToken> {
9776 support::token(&self.syntax, SyntaxKind::ON_KW)
9777 }
9778}
9779
9780#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9781pub struct JsonOnErrorClause {
9782 pub(crate) syntax: SyntaxNode,
9783}
9784impl JsonOnErrorClause {
9785 #[inline]
9786 pub fn json_behavior(&self) -> Option<JsonBehavior> {
9787 support::child(&self.syntax)
9788 }
9789 #[inline]
9790 pub fn error_token(&self) -> Option<SyntaxToken> {
9791 support::token(&self.syntax, SyntaxKind::ERROR_KW)
9792 }
9793 #[inline]
9794 pub fn on_token(&self) -> Option<SyntaxToken> {
9795 support::token(&self.syntax, SyntaxKind::ON_KW)
9796 }
9797}
9798
9799#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9800pub struct JsonPassingArg {
9801 pub(crate) syntax: SyntaxNode,
9802}
9803impl JsonPassingArg {
9804 #[inline]
9805 pub fn expr(&self) -> Option<Expr> {
9806 support::child(&self.syntax)
9807 }
9808 #[inline]
9809 pub fn name(&self) -> Option<Name> {
9810 support::child(&self.syntax)
9811 }
9812 #[inline]
9813 pub fn as_token(&self) -> Option<SyntaxToken> {
9814 support::token(&self.syntax, SyntaxKind::AS_KW)
9815 }
9816}
9817
9818#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9819pub struct JsonPassingClause {
9820 pub(crate) syntax: SyntaxNode,
9821}
9822impl JsonPassingClause {
9823 #[inline]
9824 pub fn json_passing_args(&self) -> AstChildren<JsonPassingArg> {
9825 support::children(&self.syntax)
9826 }
9827 #[inline]
9828 pub fn passing_token(&self) -> Option<SyntaxToken> {
9829 support::token(&self.syntax, SyntaxKind::PASSING_KW)
9830 }
9831}
9832
9833#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9834pub struct JsonPathClause {
9835 pub(crate) syntax: SyntaxNode,
9836}
9837impl JsonPathClause {
9838 #[inline]
9839 pub fn expr(&self) -> Option<Expr> {
9840 support::child(&self.syntax)
9841 }
9842 #[inline]
9843 pub fn path_token(&self) -> Option<SyntaxToken> {
9844 support::token(&self.syntax, SyntaxKind::PATH_KW)
9845 }
9846}
9847
9848#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9849pub struct JsonQueryFn {
9850 pub(crate) syntax: SyntaxNode,
9851}
9852impl JsonQueryFn {
9853 #[inline]
9854 pub fn expr(&self) -> Option<Expr> {
9855 support::child(&self.syntax)
9856 }
9857 #[inline]
9858 pub fn json_behavior_clause(&self) -> Option<JsonBehaviorClause> {
9859 support::child(&self.syntax)
9860 }
9861 #[inline]
9862 pub fn json_format_clause(&self) -> Option<JsonFormatClause> {
9863 support::child(&self.syntax)
9864 }
9865 #[inline]
9866 pub fn json_passing_clause(&self) -> Option<JsonPassingClause> {
9867 support::child(&self.syntax)
9868 }
9869 #[inline]
9870 pub fn json_quotes_clause(&self) -> Option<JsonQuotesClause> {
9871 support::child(&self.syntax)
9872 }
9873 #[inline]
9874 pub fn json_returning_clause(&self) -> Option<JsonReturningClause> {
9875 support::child(&self.syntax)
9876 }
9877 #[inline]
9878 pub fn json_wrapper_behavior_clause(&self) -> Option<JsonWrapperBehaviorClause> {
9879 support::child(&self.syntax)
9880 }
9881 #[inline]
9882 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
9883 support::token(&self.syntax, SyntaxKind::L_PAREN)
9884 }
9885 #[inline]
9886 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
9887 support::token(&self.syntax, SyntaxKind::R_PAREN)
9888 }
9889 #[inline]
9890 pub fn comma_token(&self) -> Option<SyntaxToken> {
9891 support::token(&self.syntax, SyntaxKind::COMMA)
9892 }
9893 #[inline]
9894 pub fn json_query_token(&self) -> Option<SyntaxToken> {
9895 support::token(&self.syntax, SyntaxKind::JSON_QUERY_KW)
9896 }
9897}
9898
9899#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9900pub struct JsonQuotesClause {
9901 pub(crate) syntax: SyntaxNode,
9902}
9903impl JsonQuotesClause {
9904 #[inline]
9905 pub fn keep_token(&self) -> Option<SyntaxToken> {
9906 support::token(&self.syntax, SyntaxKind::KEEP_KW)
9907 }
9908 #[inline]
9909 pub fn omit_token(&self) -> Option<SyntaxToken> {
9910 support::token(&self.syntax, SyntaxKind::OMIT_KW)
9911 }
9912 #[inline]
9913 pub fn on_token(&self) -> Option<SyntaxToken> {
9914 support::token(&self.syntax, SyntaxKind::ON_KW)
9915 }
9916 #[inline]
9917 pub fn quotes_token(&self) -> Option<SyntaxToken> {
9918 support::token(&self.syntax, SyntaxKind::QUOTES_KW)
9919 }
9920 #[inline]
9921 pub fn scalar_token(&self) -> Option<SyntaxToken> {
9922 support::token(&self.syntax, SyntaxKind::SCALAR_KW)
9923 }
9924 #[inline]
9925 pub fn string_token(&self) -> Option<SyntaxToken> {
9926 support::token(&self.syntax, SyntaxKind::STRING_KW)
9927 }
9928}
9929
9930#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9931pub struct JsonReturningClause {
9932 pub(crate) syntax: SyntaxNode,
9933}
9934impl JsonReturningClause {
9935 #[inline]
9936 pub fn ty(&self) -> Option<Type> {
9937 support::child(&self.syntax)
9938 }
9939 #[inline]
9940 pub fn returning_token(&self) -> Option<SyntaxToken> {
9941 support::token(&self.syntax, SyntaxKind::RETURNING_KW)
9942 }
9943}
9944
9945#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9946pub struct JsonScalarFn {
9947 pub(crate) syntax: SyntaxNode,
9948}
9949impl JsonScalarFn {
9950 #[inline]
9951 pub fn expr(&self) -> Option<Expr> {
9952 support::child(&self.syntax)
9953 }
9954 #[inline]
9955 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
9956 support::token(&self.syntax, SyntaxKind::L_PAREN)
9957 }
9958 #[inline]
9959 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
9960 support::token(&self.syntax, SyntaxKind::R_PAREN)
9961 }
9962 #[inline]
9963 pub fn json_scalar_token(&self) -> Option<SyntaxToken> {
9964 support::token(&self.syntax, SyntaxKind::JSON_SCALAR_KW)
9965 }
9966}
9967
9968#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9969pub struct JsonSelectFormat {
9970 pub(crate) syntax: SyntaxNode,
9971}
9972impl JsonSelectFormat {
9973 #[inline]
9974 pub fn json_format_clause(&self) -> Option<JsonFormatClause> {
9975 support::child(&self.syntax)
9976 }
9977 #[inline]
9978 pub fn select_variant(&self) -> Option<SelectVariant> {
9979 support::child(&self.syntax)
9980 }
9981}
9982
9983#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9984pub struct JsonSerializeFn {
9985 pub(crate) syntax: SyntaxNode,
9986}
9987impl JsonSerializeFn {
9988 #[inline]
9989 pub fn expr(&self) -> Option<Expr> {
9990 support::child(&self.syntax)
9991 }
9992 #[inline]
9993 pub fn json_format_clause(&self) -> Option<JsonFormatClause> {
9994 support::child(&self.syntax)
9995 }
9996 #[inline]
9997 pub fn json_returning_clause(&self) -> Option<JsonReturningClause> {
9998 support::child(&self.syntax)
9999 }
10000 #[inline]
10001 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
10002 support::token(&self.syntax, SyntaxKind::L_PAREN)
10003 }
10004 #[inline]
10005 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
10006 support::token(&self.syntax, SyntaxKind::R_PAREN)
10007 }
10008 #[inline]
10009 pub fn json_serialize_token(&self) -> Option<SyntaxToken> {
10010 support::token(&self.syntax, SyntaxKind::JSON_SERIALIZE_KW)
10011 }
10012}
10013
10014#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10015pub struct JsonTable {
10016 pub(crate) syntax: SyntaxNode,
10017}
10018impl JsonTable {
10019 #[inline]
10020 pub fn expr(&self) -> Option<Expr> {
10021 support::child(&self.syntax)
10022 }
10023 #[inline]
10024 pub fn json_format_clause(&self) -> Option<JsonFormatClause> {
10025 support::child(&self.syntax)
10026 }
10027 #[inline]
10028 pub fn json_on_error_clause(&self) -> Option<JsonOnErrorClause> {
10029 support::child(&self.syntax)
10030 }
10031 #[inline]
10032 pub fn json_passing_clause(&self) -> Option<JsonPassingClause> {
10033 support::child(&self.syntax)
10034 }
10035 #[inline]
10036 pub fn json_table_column_list(&self) -> Option<JsonTableColumnList> {
10037 support::child(&self.syntax)
10038 }
10039 #[inline]
10040 pub fn name(&self) -> Option<Name> {
10041 support::child(&self.syntax)
10042 }
10043 #[inline]
10044 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
10045 support::token(&self.syntax, SyntaxKind::L_PAREN)
10046 }
10047 #[inline]
10048 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
10049 support::token(&self.syntax, SyntaxKind::R_PAREN)
10050 }
10051 #[inline]
10052 pub fn comma_token(&self) -> Option<SyntaxToken> {
10053 support::token(&self.syntax, SyntaxKind::COMMA)
10054 }
10055 #[inline]
10056 pub fn as_token(&self) -> Option<SyntaxToken> {
10057 support::token(&self.syntax, SyntaxKind::AS_KW)
10058 }
10059 #[inline]
10060 pub fn json_table_token(&self) -> Option<SyntaxToken> {
10061 support::token(&self.syntax, SyntaxKind::JSON_TABLE_KW)
10062 }
10063}
10064
10065#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10066pub struct JsonTableColumn {
10067 pub(crate) syntax: SyntaxNode,
10068}
10069impl JsonTableColumn {
10070 #[inline]
10071 pub fn expr(&self) -> Option<Expr> {
10072 support::child(&self.syntax)
10073 }
10074 #[inline]
10075 pub fn json_format_clause(&self) -> Option<JsonFormatClause> {
10076 support::child(&self.syntax)
10077 }
10078 #[inline]
10079 pub fn json_on_empty_clause(&self) -> Option<JsonOnEmptyClause> {
10080 support::child(&self.syntax)
10081 }
10082 #[inline]
10083 pub fn json_on_error_clause(&self) -> Option<JsonOnErrorClause> {
10084 support::child(&self.syntax)
10085 }
10086 #[inline]
10087 pub fn json_path_clause(&self) -> Option<JsonPathClause> {
10088 support::child(&self.syntax)
10089 }
10090 #[inline]
10091 pub fn json_quotes_clause(&self) -> Option<JsonQuotesClause> {
10092 support::child(&self.syntax)
10093 }
10094 #[inline]
10095 pub fn json_table_column_list(&self) -> Option<JsonTableColumnList> {
10096 support::child(&self.syntax)
10097 }
10098 #[inline]
10099 pub fn json_wrapper_behavior_clause(&self) -> Option<JsonWrapperBehaviorClause> {
10100 support::child(&self.syntax)
10101 }
10102 #[inline]
10103 pub fn name(&self) -> Option<Name> {
10104 support::child(&self.syntax)
10105 }
10106 #[inline]
10107 pub fn ty(&self) -> Option<Type> {
10108 support::child(&self.syntax)
10109 }
10110 #[inline]
10111 pub fn as_token(&self) -> Option<SyntaxToken> {
10112 support::token(&self.syntax, SyntaxKind::AS_KW)
10113 }
10114 #[inline]
10115 pub fn exists_token(&self) -> Option<SyntaxToken> {
10116 support::token(&self.syntax, SyntaxKind::EXISTS_KW)
10117 }
10118 #[inline]
10119 pub fn for_token(&self) -> Option<SyntaxToken> {
10120 support::token(&self.syntax, SyntaxKind::FOR_KW)
10121 }
10122 #[inline]
10123 pub fn nested_token(&self) -> Option<SyntaxToken> {
10124 support::token(&self.syntax, SyntaxKind::NESTED_KW)
10125 }
10126 #[inline]
10127 pub fn ordinality_token(&self) -> Option<SyntaxToken> {
10128 support::token(&self.syntax, SyntaxKind::ORDINALITY_KW)
10129 }
10130 #[inline]
10131 pub fn path_token(&self) -> Option<SyntaxToken> {
10132 support::token(&self.syntax, SyntaxKind::PATH_KW)
10133 }
10134}
10135
10136#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10137pub struct JsonTableColumnList {
10138 pub(crate) syntax: SyntaxNode,
10139}
10140impl JsonTableColumnList {
10141 #[inline]
10142 pub fn json_table_columns(&self) -> AstChildren<JsonTableColumn> {
10143 support::children(&self.syntax)
10144 }
10145 #[inline]
10146 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
10147 support::token(&self.syntax, SyntaxKind::L_PAREN)
10148 }
10149 #[inline]
10150 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
10151 support::token(&self.syntax, SyntaxKind::R_PAREN)
10152 }
10153 #[inline]
10154 pub fn columns_token(&self) -> Option<SyntaxToken> {
10155 support::token(&self.syntax, SyntaxKind::COLUMNS_KW)
10156 }
10157}
10158
10159#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10160pub struct JsonValueExpr {
10161 pub(crate) syntax: SyntaxNode,
10162}
10163impl JsonValueExpr {
10164 #[inline]
10165 pub fn expr(&self) -> Option<Expr> {
10166 support::child(&self.syntax)
10167 }
10168 #[inline]
10169 pub fn json_format_clause(&self) -> Option<JsonFormatClause> {
10170 support::child(&self.syntax)
10171 }
10172}
10173
10174#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10175pub struct JsonValueFn {
10176 pub(crate) syntax: SyntaxNode,
10177}
10178impl JsonValueFn {
10179 #[inline]
10180 pub fn expr(&self) -> Option<Expr> {
10181 support::child(&self.syntax)
10182 }
10183 #[inline]
10184 pub fn json_behavior_clause(&self) -> Option<JsonBehaviorClause> {
10185 support::child(&self.syntax)
10186 }
10187 #[inline]
10188 pub fn json_format_clause(&self) -> Option<JsonFormatClause> {
10189 support::child(&self.syntax)
10190 }
10191 #[inline]
10192 pub fn json_passing_clause(&self) -> Option<JsonPassingClause> {
10193 support::child(&self.syntax)
10194 }
10195 #[inline]
10196 pub fn json_returning_clause(&self) -> Option<JsonReturningClause> {
10197 support::child(&self.syntax)
10198 }
10199 #[inline]
10200 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
10201 support::token(&self.syntax, SyntaxKind::L_PAREN)
10202 }
10203 #[inline]
10204 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
10205 support::token(&self.syntax, SyntaxKind::R_PAREN)
10206 }
10207 #[inline]
10208 pub fn comma_token(&self) -> Option<SyntaxToken> {
10209 support::token(&self.syntax, SyntaxKind::COMMA)
10210 }
10211 #[inline]
10212 pub fn json_value_token(&self) -> Option<SyntaxToken> {
10213 support::token(&self.syntax, SyntaxKind::JSON_VALUE_KW)
10214 }
10215}
10216
10217#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10218pub struct JsonWrapperBehaviorClause {
10219 pub(crate) syntax: SyntaxNode,
10220}
10221impl JsonWrapperBehaviorClause {
10222 #[inline]
10223 pub fn array_token(&self) -> Option<SyntaxToken> {
10224 support::token(&self.syntax, SyntaxKind::ARRAY_KW)
10225 }
10226 #[inline]
10227 pub fn conditional_token(&self) -> Option<SyntaxToken> {
10228 support::token(&self.syntax, SyntaxKind::CONDITIONAL_KW)
10229 }
10230 #[inline]
10231 pub fn unconditional_token(&self) -> Option<SyntaxToken> {
10232 support::token(&self.syntax, SyntaxKind::UNCONDITIONAL_KW)
10233 }
10234 #[inline]
10235 pub fn with_token(&self) -> Option<SyntaxToken> {
10236 support::token(&self.syntax, SyntaxKind::WITH_KW)
10237 }
10238 #[inline]
10239 pub fn without_token(&self) -> Option<SyntaxToken> {
10240 support::token(&self.syntax, SyntaxKind::WITHOUT_KW)
10241 }
10242 #[inline]
10243 pub fn wrapper_token(&self) -> Option<SyntaxToken> {
10244 support::token(&self.syntax, SyntaxKind::WRAPPER_KW)
10245 }
10246}
10247
10248#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10249pub struct LanguageFuncOption {
10250 pub(crate) syntax: SyntaxNode,
10251}
10252impl LanguageFuncOption {
10253 #[inline]
10254 pub fn name_ref(&self) -> Option<NameRef> {
10255 support::child(&self.syntax)
10256 }
10257 #[inline]
10258 pub fn language_token(&self) -> Option<SyntaxToken> {
10259 support::token(&self.syntax, SyntaxKind::LANGUAGE_KW)
10260 }
10261}
10262
10263#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10264pub struct LeakproofFuncOption {
10265 pub(crate) syntax: SyntaxNode,
10266}
10267impl LeakproofFuncOption {
10268 #[inline]
10269 pub fn leakproof_token(&self) -> Option<SyntaxToken> {
10270 support::token(&self.syntax, SyntaxKind::LEAKPROOF_KW)
10271 }
10272 #[inline]
10273 pub fn not_token(&self) -> Option<SyntaxToken> {
10274 support::token(&self.syntax, SyntaxKind::NOT_KW)
10275 }
10276}
10277
10278#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10279pub struct LikeClause {
10280 pub(crate) syntax: SyntaxNode,
10281}
10282impl LikeClause {
10283 #[inline]
10284 pub fn like_options(&self) -> AstChildren<LikeOption> {
10285 support::children(&self.syntax)
10286 }
10287 #[inline]
10288 pub fn path(&self) -> Option<Path> {
10289 support::child(&self.syntax)
10290 }
10291 #[inline]
10292 pub fn like_token(&self) -> Option<SyntaxToken> {
10293 support::token(&self.syntax, SyntaxKind::LIKE_KW)
10294 }
10295}
10296
10297#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10298pub struct LikeOption {
10299 pub(crate) syntax: SyntaxNode,
10300}
10301impl LikeOption {
10302 #[inline]
10303 pub fn all_token(&self) -> Option<SyntaxToken> {
10304 support::token(&self.syntax, SyntaxKind::ALL_KW)
10305 }
10306 #[inline]
10307 pub fn comments_token(&self) -> Option<SyntaxToken> {
10308 support::token(&self.syntax, SyntaxKind::COMMENTS_KW)
10309 }
10310 #[inline]
10311 pub fn compression_token(&self) -> Option<SyntaxToken> {
10312 support::token(&self.syntax, SyntaxKind::COMPRESSION_KW)
10313 }
10314 #[inline]
10315 pub fn constraints_token(&self) -> Option<SyntaxToken> {
10316 support::token(&self.syntax, SyntaxKind::CONSTRAINTS_KW)
10317 }
10318 #[inline]
10319 pub fn defaults_token(&self) -> Option<SyntaxToken> {
10320 support::token(&self.syntax, SyntaxKind::DEFAULTS_KW)
10321 }
10322 #[inline]
10323 pub fn excluding_token(&self) -> Option<SyntaxToken> {
10324 support::token(&self.syntax, SyntaxKind::EXCLUDING_KW)
10325 }
10326 #[inline]
10327 pub fn generated_token(&self) -> Option<SyntaxToken> {
10328 support::token(&self.syntax, SyntaxKind::GENERATED_KW)
10329 }
10330 #[inline]
10331 pub fn identity_token(&self) -> Option<SyntaxToken> {
10332 support::token(&self.syntax, SyntaxKind::IDENTITY_KW)
10333 }
10334 #[inline]
10335 pub fn including_token(&self) -> Option<SyntaxToken> {
10336 support::token(&self.syntax, SyntaxKind::INCLUDING_KW)
10337 }
10338 #[inline]
10339 pub fn indexes_token(&self) -> Option<SyntaxToken> {
10340 support::token(&self.syntax, SyntaxKind::INDEXES_KW)
10341 }
10342 #[inline]
10343 pub fn statistics_token(&self) -> Option<SyntaxToken> {
10344 support::token(&self.syntax, SyntaxKind::STATISTICS_KW)
10345 }
10346 #[inline]
10347 pub fn storage_token(&self) -> Option<SyntaxToken> {
10348 support::token(&self.syntax, SyntaxKind::STORAGE_KW)
10349 }
10350}
10351
10352#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10353pub struct LimitClause {
10354 pub(crate) syntax: SyntaxNode,
10355}
10356impl LimitClause {
10357 #[inline]
10358 pub fn expr(&self) -> Option<Expr> {
10359 support::child(&self.syntax)
10360 }
10361 #[inline]
10362 pub fn all_token(&self) -> Option<SyntaxToken> {
10363 support::token(&self.syntax, SyntaxKind::ALL_KW)
10364 }
10365 #[inline]
10366 pub fn limit_token(&self) -> Option<SyntaxToken> {
10367 support::token(&self.syntax, SyntaxKind::LIMIT_KW)
10368 }
10369}
10370
10371#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10372pub struct LimitToTables {
10373 pub(crate) syntax: SyntaxNode,
10374}
10375impl LimitToTables {
10376 #[inline]
10377 pub fn name_refs(&self) -> AstChildren<NameRef> {
10378 support::children(&self.syntax)
10379 }
10380 #[inline]
10381 pub fn limit_token(&self) -> Option<SyntaxToken> {
10382 support::token(&self.syntax, SyntaxKind::LIMIT_KW)
10383 }
10384 #[inline]
10385 pub fn to_token(&self) -> Option<SyntaxToken> {
10386 support::token(&self.syntax, SyntaxKind::TO_KW)
10387 }
10388}
10389
10390#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10391pub struct Listen {
10392 pub(crate) syntax: SyntaxNode,
10393}
10394impl Listen {
10395 #[inline]
10396 pub fn name(&self) -> Option<Name> {
10397 support::child(&self.syntax)
10398 }
10399 #[inline]
10400 pub fn listen_token(&self) -> Option<SyntaxToken> {
10401 support::token(&self.syntax, SyntaxKind::LISTEN_KW)
10402 }
10403}
10404
10405#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10406pub struct Literal {
10407 pub(crate) syntax: SyntaxNode,
10408}
10409impl Literal {}
10410
10411#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10412pub struct Load {
10413 pub(crate) syntax: SyntaxNode,
10414}
10415impl Load {
10416 #[inline]
10417 pub fn literal(&self) -> Option<Literal> {
10418 support::child(&self.syntax)
10419 }
10420 #[inline]
10421 pub fn load_token(&self) -> Option<SyntaxToken> {
10422 support::token(&self.syntax, SyntaxKind::LOAD_KW)
10423 }
10424}
10425
10426#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10427pub struct Lock {
10428 pub(crate) syntax: SyntaxNode,
10429}
10430impl Lock {
10431 #[inline]
10432 pub fn table_list(&self) -> Option<TableList> {
10433 support::child(&self.syntax)
10434 }
10435 #[inline]
10436 pub fn lock_token(&self) -> Option<SyntaxToken> {
10437 support::token(&self.syntax, SyntaxKind::LOCK_KW)
10438 }
10439 #[inline]
10440 pub fn table_token(&self) -> Option<SyntaxToken> {
10441 support::token(&self.syntax, SyntaxKind::TABLE_KW)
10442 }
10443}
10444
10445#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10446pub struct LockingClause {
10447 pub(crate) syntax: SyntaxNode,
10448}
10449impl LockingClause {
10450 #[inline]
10451 pub fn for_token(&self) -> Option<SyntaxToken> {
10452 support::token(&self.syntax, SyntaxKind::FOR_KW)
10453 }
10454}
10455
10456#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10457pub struct Lteq {
10458 pub(crate) syntax: SyntaxNode,
10459}
10460impl Lteq {
10461 #[inline]
10462 pub fn l_angle_token(&self) -> Option<SyntaxToken> {
10463 support::token(&self.syntax, SyntaxKind::L_ANGLE)
10464 }
10465 #[inline]
10466 pub fn eq_token(&self) -> Option<SyntaxToken> {
10467 support::token(&self.syntax, SyntaxKind::EQ)
10468 }
10469}
10470
10471#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10472pub struct MatchFull {
10473 pub(crate) syntax: SyntaxNode,
10474}
10475impl MatchFull {
10476 #[inline]
10477 pub fn full_token(&self) -> Option<SyntaxToken> {
10478 support::token(&self.syntax, SyntaxKind::FULL_KW)
10479 }
10480 #[inline]
10481 pub fn match_token(&self) -> Option<SyntaxToken> {
10482 support::token(&self.syntax, SyntaxKind::MATCH_KW)
10483 }
10484}
10485
10486#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10487pub struct MatchPartial {
10488 pub(crate) syntax: SyntaxNode,
10489}
10490impl MatchPartial {
10491 #[inline]
10492 pub fn match_token(&self) -> Option<SyntaxToken> {
10493 support::token(&self.syntax, SyntaxKind::MATCH_KW)
10494 }
10495 #[inline]
10496 pub fn partial_token(&self) -> Option<SyntaxToken> {
10497 support::token(&self.syntax, SyntaxKind::PARTIAL_KW)
10498 }
10499}
10500
10501#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10502pub struct MatchSimple {
10503 pub(crate) syntax: SyntaxNode,
10504}
10505impl MatchSimple {
10506 #[inline]
10507 pub fn match_token(&self) -> Option<SyntaxToken> {
10508 support::token(&self.syntax, SyntaxKind::MATCH_KW)
10509 }
10510 #[inline]
10511 pub fn simple_token(&self) -> Option<SyntaxToken> {
10512 support::token(&self.syntax, SyntaxKind::SIMPLE_KW)
10513 }
10514}
10515
10516#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10517pub struct Materialized {
10518 pub(crate) syntax: SyntaxNode,
10519}
10520impl Materialized {
10521 #[inline]
10522 pub fn materialized_token(&self) -> Option<SyntaxToken> {
10523 support::token(&self.syntax, SyntaxKind::MATERIALIZED_KW)
10524 }
10525}
10526
10527#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10528pub struct Merge {
10529 pub(crate) syntax: SyntaxNode,
10530}
10531impl Merge {
10532 #[inline]
10533 pub fn alias(&self) -> Option<Alias> {
10534 support::child(&self.syntax)
10535 }
10536 #[inline]
10537 pub fn merge_when_clauses(&self) -> AstChildren<MergeWhenClause> {
10538 support::children(&self.syntax)
10539 }
10540 #[inline]
10541 pub fn relation_name(&self) -> Option<RelationName> {
10542 support::child(&self.syntax)
10543 }
10544 #[inline]
10545 pub fn returning_clause(&self) -> Option<ReturningClause> {
10546 support::child(&self.syntax)
10547 }
10548 #[inline]
10549 pub fn using_on_clause(&self) -> Option<UsingOnClause> {
10550 support::child(&self.syntax)
10551 }
10552 #[inline]
10553 pub fn with_clause(&self) -> Option<WithClause> {
10554 support::child(&self.syntax)
10555 }
10556 #[inline]
10557 pub fn into_token(&self) -> Option<SyntaxToken> {
10558 support::token(&self.syntax, SyntaxKind::INTO_KW)
10559 }
10560 #[inline]
10561 pub fn merge_token(&self) -> Option<SyntaxToken> {
10562 support::token(&self.syntax, SyntaxKind::MERGE_KW)
10563 }
10564}
10565
10566#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10567pub struct MergeDelete {
10568 pub(crate) syntax: SyntaxNode,
10569}
10570impl MergeDelete {
10571 #[inline]
10572 pub fn delete_token(&self) -> Option<SyntaxToken> {
10573 support::token(&self.syntax, SyntaxKind::DELETE_KW)
10574 }
10575}
10576
10577#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10578pub struct MergeDoNothing {
10579 pub(crate) syntax: SyntaxNode,
10580}
10581impl MergeDoNothing {
10582 #[inline]
10583 pub fn do_token(&self) -> Option<SyntaxToken> {
10584 support::token(&self.syntax, SyntaxKind::DO_KW)
10585 }
10586 #[inline]
10587 pub fn nothing_token(&self) -> Option<SyntaxToken> {
10588 support::token(&self.syntax, SyntaxKind::NOTHING_KW)
10589 }
10590}
10591
10592#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10593pub struct MergeInsert {
10594 pub(crate) syntax: SyntaxNode,
10595}
10596impl MergeInsert {
10597 #[inline]
10598 pub fn column_list(&self) -> Option<ColumnList> {
10599 support::child(&self.syntax)
10600 }
10601 #[inline]
10602 pub fn values(&self) -> Option<Values> {
10603 support::child(&self.syntax)
10604 }
10605 #[inline]
10606 pub fn default_token(&self) -> Option<SyntaxToken> {
10607 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
10608 }
10609 #[inline]
10610 pub fn insert_token(&self) -> Option<SyntaxToken> {
10611 support::token(&self.syntax, SyntaxKind::INSERT_KW)
10612 }
10613 #[inline]
10614 pub fn overriding_token(&self) -> Option<SyntaxToken> {
10615 support::token(&self.syntax, SyntaxKind::OVERRIDING_KW)
10616 }
10617 #[inline]
10618 pub fn system_token(&self) -> Option<SyntaxToken> {
10619 support::token(&self.syntax, SyntaxKind::SYSTEM_KW)
10620 }
10621 #[inline]
10622 pub fn user_token(&self) -> Option<SyntaxToken> {
10623 support::token(&self.syntax, SyntaxKind::USER_KW)
10624 }
10625 #[inline]
10626 pub fn values_token(&self) -> Option<SyntaxToken> {
10627 support::token(&self.syntax, SyntaxKind::VALUES_KW)
10628 }
10629}
10630
10631#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10632pub struct MergePartitions {
10633 pub(crate) syntax: SyntaxNode,
10634}
10635impl MergePartitions {
10636 #[inline]
10637 pub fn path(&self) -> Option<Path> {
10638 support::child(&self.syntax)
10639 }
10640 #[inline]
10641 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
10642 support::token(&self.syntax, SyntaxKind::L_PAREN)
10643 }
10644 #[inline]
10645 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
10646 support::token(&self.syntax, SyntaxKind::R_PAREN)
10647 }
10648 #[inline]
10649 pub fn into_token(&self) -> Option<SyntaxToken> {
10650 support::token(&self.syntax, SyntaxKind::INTO_KW)
10651 }
10652 #[inline]
10653 pub fn merge_token(&self) -> Option<SyntaxToken> {
10654 support::token(&self.syntax, SyntaxKind::MERGE_KW)
10655 }
10656 #[inline]
10657 pub fn partitions_token(&self) -> Option<SyntaxToken> {
10658 support::token(&self.syntax, SyntaxKind::PARTITIONS_KW)
10659 }
10660}
10661
10662#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10663pub struct MergeUpdate {
10664 pub(crate) syntax: SyntaxNode,
10665}
10666impl MergeUpdate {
10667 #[inline]
10668 pub fn set_clause(&self) -> Option<SetClause> {
10669 support::child(&self.syntax)
10670 }
10671 #[inline]
10672 pub fn set_token(&self) -> Option<SyntaxToken> {
10673 support::token(&self.syntax, SyntaxKind::SET_KW)
10674 }
10675 #[inline]
10676 pub fn update_token(&self) -> Option<SyntaxToken> {
10677 support::token(&self.syntax, SyntaxKind::UPDATE_KW)
10678 }
10679}
10680
10681#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10682pub struct MergeWhenMatched {
10683 pub(crate) syntax: SyntaxNode,
10684}
10685impl MergeWhenMatched {
10686 #[inline]
10687 pub fn expr(&self) -> Option<Expr> {
10688 support::child(&self.syntax)
10689 }
10690 #[inline]
10691 pub fn merge_action(&self) -> Option<MergeAction> {
10692 support::child(&self.syntax)
10693 }
10694 #[inline]
10695 pub fn and_token(&self) -> Option<SyntaxToken> {
10696 support::token(&self.syntax, SyntaxKind::AND_KW)
10697 }
10698 #[inline]
10699 pub fn matched_token(&self) -> Option<SyntaxToken> {
10700 support::token(&self.syntax, SyntaxKind::MATCHED_KW)
10701 }
10702 #[inline]
10703 pub fn then_token(&self) -> Option<SyntaxToken> {
10704 support::token(&self.syntax, SyntaxKind::THEN_KW)
10705 }
10706 #[inline]
10707 pub fn when_token(&self) -> Option<SyntaxToken> {
10708 support::token(&self.syntax, SyntaxKind::WHEN_KW)
10709 }
10710}
10711
10712#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10713pub struct MergeWhenNotMatchedSource {
10714 pub(crate) syntax: SyntaxNode,
10715}
10716impl MergeWhenNotMatchedSource {
10717 #[inline]
10718 pub fn expr(&self) -> Option<Expr> {
10719 support::child(&self.syntax)
10720 }
10721 #[inline]
10722 pub fn merge_action(&self) -> Option<MergeAction> {
10723 support::child(&self.syntax)
10724 }
10725 #[inline]
10726 pub fn and_token(&self) -> Option<SyntaxToken> {
10727 support::token(&self.syntax, SyntaxKind::AND_KW)
10728 }
10729 #[inline]
10730 pub fn by_token(&self) -> Option<SyntaxToken> {
10731 support::token(&self.syntax, SyntaxKind::BY_KW)
10732 }
10733 #[inline]
10734 pub fn matched_token(&self) -> Option<SyntaxToken> {
10735 support::token(&self.syntax, SyntaxKind::MATCHED_KW)
10736 }
10737 #[inline]
10738 pub fn not_token(&self) -> Option<SyntaxToken> {
10739 support::token(&self.syntax, SyntaxKind::NOT_KW)
10740 }
10741 #[inline]
10742 pub fn source_token(&self) -> Option<SyntaxToken> {
10743 support::token(&self.syntax, SyntaxKind::SOURCE_KW)
10744 }
10745 #[inline]
10746 pub fn then_token(&self) -> Option<SyntaxToken> {
10747 support::token(&self.syntax, SyntaxKind::THEN_KW)
10748 }
10749 #[inline]
10750 pub fn when_token(&self) -> Option<SyntaxToken> {
10751 support::token(&self.syntax, SyntaxKind::WHEN_KW)
10752 }
10753}
10754
10755#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10756pub struct MergeWhenNotMatchedTarget {
10757 pub(crate) syntax: SyntaxNode,
10758}
10759impl MergeWhenNotMatchedTarget {
10760 #[inline]
10761 pub fn expr(&self) -> Option<Expr> {
10762 support::child(&self.syntax)
10763 }
10764 #[inline]
10765 pub fn merge_action(&self) -> Option<MergeAction> {
10766 support::child(&self.syntax)
10767 }
10768 #[inline]
10769 pub fn and_token(&self) -> Option<SyntaxToken> {
10770 support::token(&self.syntax, SyntaxKind::AND_KW)
10771 }
10772 #[inline]
10773 pub fn by_token(&self) -> Option<SyntaxToken> {
10774 support::token(&self.syntax, SyntaxKind::BY_KW)
10775 }
10776 #[inline]
10777 pub fn matched_token(&self) -> Option<SyntaxToken> {
10778 support::token(&self.syntax, SyntaxKind::MATCHED_KW)
10779 }
10780 #[inline]
10781 pub fn not_token(&self) -> Option<SyntaxToken> {
10782 support::token(&self.syntax, SyntaxKind::NOT_KW)
10783 }
10784 #[inline]
10785 pub fn target_token(&self) -> Option<SyntaxToken> {
10786 support::token(&self.syntax, SyntaxKind::TARGET_KW)
10787 }
10788 #[inline]
10789 pub fn then_token(&self) -> Option<SyntaxToken> {
10790 support::token(&self.syntax, SyntaxKind::THEN_KW)
10791 }
10792 #[inline]
10793 pub fn when_token(&self) -> Option<SyntaxToken> {
10794 support::token(&self.syntax, SyntaxKind::WHEN_KW)
10795 }
10796}
10797
10798#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10799pub struct Move {
10800 pub(crate) syntax: SyntaxNode,
10801}
10802impl Move {
10803 #[inline]
10804 pub fn name_ref(&self) -> Option<NameRef> {
10805 support::child(&self.syntax)
10806 }
10807 #[inline]
10808 pub fn from_token(&self) -> Option<SyntaxToken> {
10809 support::token(&self.syntax, SyntaxKind::FROM_KW)
10810 }
10811 #[inline]
10812 pub fn in_token(&self) -> Option<SyntaxToken> {
10813 support::token(&self.syntax, SyntaxKind::IN_KW)
10814 }
10815 #[inline]
10816 pub fn move_token(&self) -> Option<SyntaxToken> {
10817 support::token(&self.syntax, SyntaxKind::MOVE_KW)
10818 }
10819}
10820
10821#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10822pub struct Name {
10823 pub(crate) syntax: SyntaxNode,
10824}
10825impl Name {
10826 #[inline]
10827 pub fn ident_token(&self) -> Option<SyntaxToken> {
10828 support::token(&self.syntax, SyntaxKind::IDENT)
10829 }
10830}
10831
10832#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10833pub struct NameRef {
10834 pub(crate) syntax: SyntaxNode,
10835}
10836impl NameRef {
10837 #[inline]
10838 pub fn ident_token(&self) -> Option<SyntaxToken> {
10839 support::token(&self.syntax, SyntaxKind::IDENT)
10840 }
10841}
10842
10843#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10844pub struct NamedArg {
10845 pub(crate) syntax: SyntaxNode,
10846}
10847impl NamedArg {
10848 #[inline]
10849 pub fn expr(&self) -> Option<Expr> {
10850 support::child(&self.syntax)
10851 }
10852 #[inline]
10853 pub fn fat_arrow(&self) -> Option<FatArrow> {
10854 support::child(&self.syntax)
10855 }
10856 #[inline]
10857 pub fn name_ref(&self) -> Option<NameRef> {
10858 support::child(&self.syntax)
10859 }
10860}
10861
10862#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10863pub struct Neq {
10864 pub(crate) syntax: SyntaxNode,
10865}
10866impl Neq {
10867 #[inline]
10868 pub fn bang_token(&self) -> Option<SyntaxToken> {
10869 support::token(&self.syntax, SyntaxKind::BANG)
10870 }
10871 #[inline]
10872 pub fn eq_token(&self) -> Option<SyntaxToken> {
10873 support::token(&self.syntax, SyntaxKind::EQ)
10874 }
10875}
10876
10877#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10878pub struct Neqb {
10879 pub(crate) syntax: SyntaxNode,
10880}
10881impl Neqb {
10882 #[inline]
10883 pub fn l_angle_token(&self) -> Option<SyntaxToken> {
10884 support::token(&self.syntax, SyntaxKind::L_ANGLE)
10885 }
10886 #[inline]
10887 pub fn r_angle_token(&self) -> Option<SyntaxToken> {
10888 support::token(&self.syntax, SyntaxKind::R_ANGLE)
10889 }
10890}
10891
10892#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10893pub struct NoAction {
10894 pub(crate) syntax: SyntaxNode,
10895}
10896impl NoAction {
10897 #[inline]
10898 pub fn action_token(&self) -> Option<SyntaxToken> {
10899 support::token(&self.syntax, SyntaxKind::ACTION_KW)
10900 }
10901 #[inline]
10902 pub fn no_token(&self) -> Option<SyntaxToken> {
10903 support::token(&self.syntax, SyntaxKind::NO_KW)
10904 }
10905}
10906
10907#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10908pub struct NoDependsOnExtension {
10909 pub(crate) syntax: SyntaxNode,
10910}
10911impl NoDependsOnExtension {
10912 #[inline]
10913 pub fn name_ref(&self) -> Option<NameRef> {
10914 support::child(&self.syntax)
10915 }
10916 #[inline]
10917 pub fn depends_token(&self) -> Option<SyntaxToken> {
10918 support::token(&self.syntax, SyntaxKind::DEPENDS_KW)
10919 }
10920 #[inline]
10921 pub fn extension_token(&self) -> Option<SyntaxToken> {
10922 support::token(&self.syntax, SyntaxKind::EXTENSION_KW)
10923 }
10924 #[inline]
10925 pub fn no_token(&self) -> Option<SyntaxToken> {
10926 support::token(&self.syntax, SyntaxKind::NO_KW)
10927 }
10928 #[inline]
10929 pub fn on_token(&self) -> Option<SyntaxToken> {
10930 support::token(&self.syntax, SyntaxKind::ON_KW)
10931 }
10932}
10933
10934#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10935pub struct NoForceRls {
10936 pub(crate) syntax: SyntaxNode,
10937}
10938impl NoForceRls {
10939 #[inline]
10940 pub fn force_token(&self) -> Option<SyntaxToken> {
10941 support::token(&self.syntax, SyntaxKind::FORCE_KW)
10942 }
10943 #[inline]
10944 pub fn level_token(&self) -> Option<SyntaxToken> {
10945 support::token(&self.syntax, SyntaxKind::LEVEL_KW)
10946 }
10947 #[inline]
10948 pub fn no_token(&self) -> Option<SyntaxToken> {
10949 support::token(&self.syntax, SyntaxKind::NO_KW)
10950 }
10951 #[inline]
10952 pub fn row_token(&self) -> Option<SyntaxToken> {
10953 support::token(&self.syntax, SyntaxKind::ROW_KW)
10954 }
10955 #[inline]
10956 pub fn security_token(&self) -> Option<SyntaxToken> {
10957 support::token(&self.syntax, SyntaxKind::SECURITY_KW)
10958 }
10959}
10960
10961#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10962pub struct NoInherit {
10963 pub(crate) syntax: SyntaxNode,
10964}
10965impl NoInherit {
10966 #[inline]
10967 pub fn path(&self) -> Option<Path> {
10968 support::child(&self.syntax)
10969 }
10970 #[inline]
10971 pub fn inherit_token(&self) -> Option<SyntaxToken> {
10972 support::token(&self.syntax, SyntaxKind::INHERIT_KW)
10973 }
10974 #[inline]
10975 pub fn no_token(&self) -> Option<SyntaxToken> {
10976 support::token(&self.syntax, SyntaxKind::NO_KW)
10977 }
10978}
10979
10980#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10981pub struct NoInheritTable {
10982 pub(crate) syntax: SyntaxNode,
10983}
10984impl NoInheritTable {
10985 #[inline]
10986 pub fn path(&self) -> Option<Path> {
10987 support::child(&self.syntax)
10988 }
10989 #[inline]
10990 pub fn inherit_token(&self) -> Option<SyntaxToken> {
10991 support::token(&self.syntax, SyntaxKind::INHERIT_KW)
10992 }
10993 #[inline]
10994 pub fn no_token(&self) -> Option<SyntaxToken> {
10995 support::token(&self.syntax, SyntaxKind::NO_KW)
10996 }
10997}
10998
10999#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11000pub struct NonStandardParam {
11001 pub(crate) syntax: SyntaxNode,
11002}
11003impl NonStandardParam {
11004 #[inline]
11005 pub fn name_ref(&self) -> Option<NameRef> {
11006 support::child(&self.syntax)
11007 }
11008 #[inline]
11009 pub fn colon_token(&self) -> Option<SyntaxToken> {
11010 support::token(&self.syntax, SyntaxKind::COLON)
11011 }
11012}
11013
11014#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11015pub struct NotDeferrable {
11016 pub(crate) syntax: SyntaxNode,
11017}
11018impl NotDeferrable {
11019 #[inline]
11020 pub fn deferrable_token(&self) -> Option<SyntaxToken> {
11021 support::token(&self.syntax, SyntaxKind::DEFERRABLE_KW)
11022 }
11023 #[inline]
11024 pub fn not_token(&self) -> Option<SyntaxToken> {
11025 support::token(&self.syntax, SyntaxKind::NOT_KW)
11026 }
11027}
11028
11029#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11030pub struct NotDeferrableConstraintOption {
11031 pub(crate) syntax: SyntaxNode,
11032}
11033impl NotDeferrableConstraintOption {
11034 #[inline]
11035 pub fn deferrable_token(&self) -> Option<SyntaxToken> {
11036 support::token(&self.syntax, SyntaxKind::DEFERRABLE_KW)
11037 }
11038 #[inline]
11039 pub fn not_token(&self) -> Option<SyntaxToken> {
11040 support::token(&self.syntax, SyntaxKind::NOT_KW)
11041 }
11042}
11043
11044#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11045pub struct NotEnforced {
11046 pub(crate) syntax: SyntaxNode,
11047}
11048impl NotEnforced {
11049 #[inline]
11050 pub fn enforced_token(&self) -> Option<SyntaxToken> {
11051 support::token(&self.syntax, SyntaxKind::ENFORCED_KW)
11052 }
11053 #[inline]
11054 pub fn not_token(&self) -> Option<SyntaxToken> {
11055 support::token(&self.syntax, SyntaxKind::NOT_KW)
11056 }
11057}
11058
11059#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11060pub struct NotIlike {
11061 pub(crate) syntax: SyntaxNode,
11062}
11063impl NotIlike {
11064 #[inline]
11065 pub fn ilike_token(&self) -> Option<SyntaxToken> {
11066 support::token(&self.syntax, SyntaxKind::ILIKE_KW)
11067 }
11068 #[inline]
11069 pub fn not_token(&self) -> Option<SyntaxToken> {
11070 support::token(&self.syntax, SyntaxKind::NOT_KW)
11071 }
11072}
11073
11074#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11075pub struct NotIn {
11076 pub(crate) syntax: SyntaxNode,
11077}
11078impl NotIn {
11079 #[inline]
11080 pub fn in_token(&self) -> Option<SyntaxToken> {
11081 support::token(&self.syntax, SyntaxKind::IN_KW)
11082 }
11083 #[inline]
11084 pub fn not_token(&self) -> Option<SyntaxToken> {
11085 support::token(&self.syntax, SyntaxKind::NOT_KW)
11086 }
11087}
11088
11089#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11090pub struct NotLike {
11091 pub(crate) syntax: SyntaxNode,
11092}
11093impl NotLike {
11094 #[inline]
11095 pub fn like_token(&self) -> Option<SyntaxToken> {
11096 support::token(&self.syntax, SyntaxKind::LIKE_KW)
11097 }
11098 #[inline]
11099 pub fn not_token(&self) -> Option<SyntaxToken> {
11100 support::token(&self.syntax, SyntaxKind::NOT_KW)
11101 }
11102}
11103
11104#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11105pub struct NotMaterialized {
11106 pub(crate) syntax: SyntaxNode,
11107}
11108impl NotMaterialized {
11109 #[inline]
11110 pub fn materialized_token(&self) -> Option<SyntaxToken> {
11111 support::token(&self.syntax, SyntaxKind::MATERIALIZED_KW)
11112 }
11113 #[inline]
11114 pub fn not_token(&self) -> Option<SyntaxToken> {
11115 support::token(&self.syntax, SyntaxKind::NOT_KW)
11116 }
11117}
11118
11119#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11120pub struct NotNullConstraint {
11121 pub(crate) syntax: SyntaxNode,
11122}
11123impl NotNullConstraint {
11124 #[inline]
11125 pub fn name_ref(&self) -> Option<NameRef> {
11126 support::child(&self.syntax)
11127 }
11128 #[inline]
11129 pub fn no_inherit(&self) -> Option<NoInherit> {
11130 support::child(&self.syntax)
11131 }
11132 #[inline]
11133 pub fn constraint_token(&self) -> Option<SyntaxToken> {
11134 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
11135 }
11136 #[inline]
11137 pub fn not_token(&self) -> Option<SyntaxToken> {
11138 support::token(&self.syntax, SyntaxKind::NOT_KW)
11139 }
11140 #[inline]
11141 pub fn null_token(&self) -> Option<SyntaxToken> {
11142 support::token(&self.syntax, SyntaxKind::NULL_KW)
11143 }
11144}
11145
11146#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11147pub struct NotOf {
11148 pub(crate) syntax: SyntaxNode,
11149}
11150impl NotOf {
11151 #[inline]
11152 pub fn not_token(&self) -> Option<SyntaxToken> {
11153 support::token(&self.syntax, SyntaxKind::NOT_KW)
11154 }
11155 #[inline]
11156 pub fn of_token(&self) -> Option<SyntaxToken> {
11157 support::token(&self.syntax, SyntaxKind::OF_KW)
11158 }
11159}
11160
11161#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11162pub struct NotSimilarTo {
11163 pub(crate) syntax: SyntaxNode,
11164}
11165impl NotSimilarTo {
11166 #[inline]
11167 pub fn not_token(&self) -> Option<SyntaxToken> {
11168 support::token(&self.syntax, SyntaxKind::NOT_KW)
11169 }
11170 #[inline]
11171 pub fn similar_token(&self) -> Option<SyntaxToken> {
11172 support::token(&self.syntax, SyntaxKind::SIMILAR_KW)
11173 }
11174 #[inline]
11175 pub fn to_token(&self) -> Option<SyntaxToken> {
11176 support::token(&self.syntax, SyntaxKind::TO_KW)
11177 }
11178}
11179
11180#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11181pub struct NotValid {
11182 pub(crate) syntax: SyntaxNode,
11183}
11184impl NotValid {
11185 #[inline]
11186 pub fn not_token(&self) -> Option<SyntaxToken> {
11187 support::token(&self.syntax, SyntaxKind::NOT_KW)
11188 }
11189 #[inline]
11190 pub fn valid_token(&self) -> Option<SyntaxToken> {
11191 support::token(&self.syntax, SyntaxKind::VALID_KW)
11192 }
11193}
11194
11195#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11196pub struct Notify {
11197 pub(crate) syntax: SyntaxNode,
11198}
11199impl Notify {
11200 #[inline]
11201 pub fn literal(&self) -> Option<Literal> {
11202 support::child(&self.syntax)
11203 }
11204 #[inline]
11205 pub fn name_ref(&self) -> Option<NameRef> {
11206 support::child(&self.syntax)
11207 }
11208 #[inline]
11209 pub fn comma_token(&self) -> Option<SyntaxToken> {
11210 support::token(&self.syntax, SyntaxKind::COMMA)
11211 }
11212 #[inline]
11213 pub fn notify_token(&self) -> Option<SyntaxToken> {
11214 support::token(&self.syntax, SyntaxKind::NOTIFY_KW)
11215 }
11216}
11217
11218#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11219pub struct NullConstraint {
11220 pub(crate) syntax: SyntaxNode,
11221}
11222impl NullConstraint {
11223 #[inline]
11224 pub fn name_ref(&self) -> Option<NameRef> {
11225 support::child(&self.syntax)
11226 }
11227 #[inline]
11228 pub fn constraint_token(&self) -> Option<SyntaxToken> {
11229 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
11230 }
11231 #[inline]
11232 pub fn null_token(&self) -> Option<SyntaxToken> {
11233 support::token(&self.syntax, SyntaxKind::NULL_KW)
11234 }
11235}
11236
11237#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11238pub struct NullsDistinct {
11239 pub(crate) syntax: SyntaxNode,
11240}
11241impl NullsDistinct {
11242 #[inline]
11243 pub fn distinct_token(&self) -> Option<SyntaxToken> {
11244 support::token(&self.syntax, SyntaxKind::DISTINCT_KW)
11245 }
11246 #[inline]
11247 pub fn nulls_token(&self) -> Option<SyntaxToken> {
11248 support::token(&self.syntax, SyntaxKind::NULLS_KW)
11249 }
11250}
11251
11252#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11253pub struct NullsFirst {
11254 pub(crate) syntax: SyntaxNode,
11255}
11256impl NullsFirst {
11257 #[inline]
11258 pub fn first_token(&self) -> Option<SyntaxToken> {
11259 support::token(&self.syntax, SyntaxKind::FIRST_KW)
11260 }
11261 #[inline]
11262 pub fn nulls_token(&self) -> Option<SyntaxToken> {
11263 support::token(&self.syntax, SyntaxKind::NULLS_KW)
11264 }
11265}
11266
11267#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11268pub struct NullsLast {
11269 pub(crate) syntax: SyntaxNode,
11270}
11271impl NullsLast {
11272 #[inline]
11273 pub fn last_token(&self) -> Option<SyntaxToken> {
11274 support::token(&self.syntax, SyntaxKind::LAST_KW)
11275 }
11276 #[inline]
11277 pub fn nulls_token(&self) -> Option<SyntaxToken> {
11278 support::token(&self.syntax, SyntaxKind::NULLS_KW)
11279 }
11280}
11281
11282#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11283pub struct NullsNotDistinct {
11284 pub(crate) syntax: SyntaxNode,
11285}
11286impl NullsNotDistinct {
11287 #[inline]
11288 pub fn distinct_token(&self) -> Option<SyntaxToken> {
11289 support::token(&self.syntax, SyntaxKind::DISTINCT_KW)
11290 }
11291 #[inline]
11292 pub fn not_token(&self) -> Option<SyntaxToken> {
11293 support::token(&self.syntax, SyntaxKind::NOT_KW)
11294 }
11295 #[inline]
11296 pub fn nulls_token(&self) -> Option<SyntaxToken> {
11297 support::token(&self.syntax, SyntaxKind::NULLS_KW)
11298 }
11299}
11300
11301#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11302pub struct OfType {
11303 pub(crate) syntax: SyntaxNode,
11304}
11305impl OfType {
11306 #[inline]
11307 pub fn ty(&self) -> Option<Type> {
11308 support::child(&self.syntax)
11309 }
11310 #[inline]
11311 pub fn of_token(&self) -> Option<SyntaxToken> {
11312 support::token(&self.syntax, SyntaxKind::OF_KW)
11313 }
11314}
11315
11316#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11317pub struct OffsetClause {
11318 pub(crate) syntax: SyntaxNode,
11319}
11320impl OffsetClause {
11321 #[inline]
11322 pub fn expr(&self) -> Option<Expr> {
11323 support::child(&self.syntax)
11324 }
11325 #[inline]
11326 pub fn offset_token(&self) -> Option<SyntaxToken> {
11327 support::token(&self.syntax, SyntaxKind::OFFSET_KW)
11328 }
11329 #[inline]
11330 pub fn row_token(&self) -> Option<SyntaxToken> {
11331 support::token(&self.syntax, SyntaxKind::ROW_KW)
11332 }
11333 #[inline]
11334 pub fn rows_token(&self) -> Option<SyntaxToken> {
11335 support::token(&self.syntax, SyntaxKind::ROWS_KW)
11336 }
11337}
11338
11339#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11340pub struct OnClause {
11341 pub(crate) syntax: SyntaxNode,
11342}
11343impl OnClause {
11344 #[inline]
11345 pub fn expr(&self) -> Option<Expr> {
11346 support::child(&self.syntax)
11347 }
11348 #[inline]
11349 pub fn on_token(&self) -> Option<SyntaxToken> {
11350 support::token(&self.syntax, SyntaxKind::ON_KW)
11351 }
11352}
11353
11354#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11355pub struct OnCommit {
11356 pub(crate) syntax: SyntaxNode,
11357}
11358impl OnCommit {
11359 #[inline]
11360 pub fn on_commit_action(&self) -> Option<OnCommitAction> {
11361 support::child(&self.syntax)
11362 }
11363 #[inline]
11364 pub fn commit_token(&self) -> Option<SyntaxToken> {
11365 support::token(&self.syntax, SyntaxKind::COMMIT_KW)
11366 }
11367 #[inline]
11368 pub fn on_token(&self) -> Option<SyntaxToken> {
11369 support::token(&self.syntax, SyntaxKind::ON_KW)
11370 }
11371}
11372
11373#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11374pub struct OnConflictClause {
11375 pub(crate) syntax: SyntaxNode,
11376}
11377impl OnConflictClause {
11378 #[inline]
11379 pub fn conflict_action(&self) -> Option<ConflictAction> {
11380 support::child(&self.syntax)
11381 }
11382 #[inline]
11383 pub fn conflict_target(&self) -> Option<ConflictTarget> {
11384 support::child(&self.syntax)
11385 }
11386 #[inline]
11387 pub fn conflict_token(&self) -> Option<SyntaxToken> {
11388 support::token(&self.syntax, SyntaxKind::CONFLICT_KW)
11389 }
11390 #[inline]
11391 pub fn on_token(&self) -> Option<SyntaxToken> {
11392 support::token(&self.syntax, SyntaxKind::ON_KW)
11393 }
11394}
11395
11396#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11397pub struct OnDeleteAction {
11398 pub(crate) syntax: SyntaxNode,
11399}
11400impl OnDeleteAction {
11401 #[inline]
11402 pub fn ref_action(&self) -> Option<RefAction> {
11403 support::child(&self.syntax)
11404 }
11405 #[inline]
11406 pub fn delete_token(&self) -> Option<SyntaxToken> {
11407 support::token(&self.syntax, SyntaxKind::DELETE_KW)
11408 }
11409 #[inline]
11410 pub fn on_token(&self) -> Option<SyntaxToken> {
11411 support::token(&self.syntax, SyntaxKind::ON_KW)
11412 }
11413}
11414
11415#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11416pub struct OnTable {
11417 pub(crate) syntax: SyntaxNode,
11418}
11419impl OnTable {
11420 #[inline]
11421 pub fn path(&self) -> Option<Path> {
11422 support::child(&self.syntax)
11423 }
11424 #[inline]
11425 pub fn on_token(&self) -> Option<SyntaxToken> {
11426 support::token(&self.syntax, SyntaxKind::ON_KW)
11427 }
11428}
11429
11430#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11431pub struct OnUpdateAction {
11432 pub(crate) syntax: SyntaxNode,
11433}
11434impl OnUpdateAction {
11435 #[inline]
11436 pub fn ref_action(&self) -> Option<RefAction> {
11437 support::child(&self.syntax)
11438 }
11439 #[inline]
11440 pub fn on_token(&self) -> Option<SyntaxToken> {
11441 support::token(&self.syntax, SyntaxKind::ON_KW)
11442 }
11443 #[inline]
11444 pub fn update_token(&self) -> Option<SyntaxToken> {
11445 support::token(&self.syntax, SyntaxKind::UPDATE_KW)
11446 }
11447}
11448
11449#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11450pub struct Op {
11451 pub(crate) syntax: SyntaxNode,
11452}
11453impl Op {
11454 #[inline]
11455 pub fn at_time_zone(&self) -> Option<AtTimeZone> {
11456 support::child(&self.syntax)
11457 }
11458 #[inline]
11459 pub fn colon_colon(&self) -> Option<ColonColon> {
11460 support::child(&self.syntax)
11461 }
11462 #[inline]
11463 pub fn colon_eq(&self) -> Option<ColonEq> {
11464 support::child(&self.syntax)
11465 }
11466 #[inline]
11467 pub fn custom_op(&self) -> Option<CustomOp> {
11468 support::child(&self.syntax)
11469 }
11470 #[inline]
11471 pub fn fat_arrow(&self) -> Option<FatArrow> {
11472 support::child(&self.syntax)
11473 }
11474 #[inline]
11475 pub fn gteq(&self) -> Option<Gteq> {
11476 support::child(&self.syntax)
11477 }
11478 #[inline]
11479 pub fn is_distinct_from(&self) -> Option<IsDistinctFrom> {
11480 support::child(&self.syntax)
11481 }
11482 #[inline]
11483 pub fn is_json(&self) -> Option<IsJson> {
11484 support::child(&self.syntax)
11485 }
11486 #[inline]
11487 pub fn is_json_array(&self) -> Option<IsJsonArray> {
11488 support::child(&self.syntax)
11489 }
11490 #[inline]
11491 pub fn is_json_object(&self) -> Option<IsJsonObject> {
11492 support::child(&self.syntax)
11493 }
11494 #[inline]
11495 pub fn is_json_scalar(&self) -> Option<IsJsonScalar> {
11496 support::child(&self.syntax)
11497 }
11498 #[inline]
11499 pub fn is_json_value(&self) -> Option<IsJsonValue> {
11500 support::child(&self.syntax)
11501 }
11502 #[inline]
11503 pub fn is_not(&self) -> Option<IsNot> {
11504 support::child(&self.syntax)
11505 }
11506 #[inline]
11507 pub fn is_not_distinct_from(&self) -> Option<IsNotDistinctFrom> {
11508 support::child(&self.syntax)
11509 }
11510 #[inline]
11511 pub fn is_not_json(&self) -> Option<IsNotJson> {
11512 support::child(&self.syntax)
11513 }
11514 #[inline]
11515 pub fn is_not_json_array(&self) -> Option<IsNotJsonArray> {
11516 support::child(&self.syntax)
11517 }
11518 #[inline]
11519 pub fn is_not_json_object(&self) -> Option<IsNotJsonObject> {
11520 support::child(&self.syntax)
11521 }
11522 #[inline]
11523 pub fn is_not_json_scalar(&self) -> Option<IsNotJsonScalar> {
11524 support::child(&self.syntax)
11525 }
11526 #[inline]
11527 pub fn is_not_json_value(&self) -> Option<IsNotJsonValue> {
11528 support::child(&self.syntax)
11529 }
11530 #[inline]
11531 pub fn lteq(&self) -> Option<Lteq> {
11532 support::child(&self.syntax)
11533 }
11534 #[inline]
11535 pub fn neq(&self) -> Option<Neq> {
11536 support::child(&self.syntax)
11537 }
11538 #[inline]
11539 pub fn neqb(&self) -> Option<Neqb> {
11540 support::child(&self.syntax)
11541 }
11542 #[inline]
11543 pub fn not_ilike(&self) -> Option<NotIlike> {
11544 support::child(&self.syntax)
11545 }
11546 #[inline]
11547 pub fn not_in(&self) -> Option<NotIn> {
11548 support::child(&self.syntax)
11549 }
11550 #[inline]
11551 pub fn not_like(&self) -> Option<NotLike> {
11552 support::child(&self.syntax)
11553 }
11554 #[inline]
11555 pub fn not_similar_to(&self) -> Option<NotSimilarTo> {
11556 support::child(&self.syntax)
11557 }
11558 #[inline]
11559 pub fn operator_call(&self) -> Option<OperatorCall> {
11560 support::child(&self.syntax)
11561 }
11562 #[inline]
11563 pub fn similar_to(&self) -> Option<SimilarTo> {
11564 support::child(&self.syntax)
11565 }
11566 #[inline]
11567 pub fn percent_token(&self) -> Option<SyntaxToken> {
11568 support::token(&self.syntax, SyntaxKind::PERCENT)
11569 }
11570 #[inline]
11571 pub fn plus_token(&self) -> Option<SyntaxToken> {
11572 support::token(&self.syntax, SyntaxKind::PLUS)
11573 }
11574 #[inline]
11575 pub fn minus_token(&self) -> Option<SyntaxToken> {
11576 support::token(&self.syntax, SyntaxKind::MINUS)
11577 }
11578 #[inline]
11579 pub fn slash_token(&self) -> Option<SyntaxToken> {
11580 support::token(&self.syntax, SyntaxKind::SLASH)
11581 }
11582 #[inline]
11583 pub fn colon_token(&self) -> Option<SyntaxToken> {
11584 support::token(&self.syntax, SyntaxKind::COLON)
11585 }
11586 #[inline]
11587 pub fn l_angle_token(&self) -> Option<SyntaxToken> {
11588 support::token(&self.syntax, SyntaxKind::L_ANGLE)
11589 }
11590 #[inline]
11591 pub fn eq_token(&self) -> Option<SyntaxToken> {
11592 support::token(&self.syntax, SyntaxKind::EQ)
11593 }
11594 #[inline]
11595 pub fn r_angle_token(&self) -> Option<SyntaxToken> {
11596 support::token(&self.syntax, SyntaxKind::R_ANGLE)
11597 }
11598 #[inline]
11599 pub fn caret_token(&self) -> Option<SyntaxToken> {
11600 support::token(&self.syntax, SyntaxKind::CARET)
11601 }
11602 #[inline]
11603 pub fn and_token(&self) -> Option<SyntaxToken> {
11604 support::token(&self.syntax, SyntaxKind::AND_KW)
11605 }
11606 #[inline]
11607 pub fn collate_token(&self) -> Option<SyntaxToken> {
11608 support::token(&self.syntax, SyntaxKind::COLLATE_KW)
11609 }
11610 #[inline]
11611 pub fn ilike_token(&self) -> Option<SyntaxToken> {
11612 support::token(&self.syntax, SyntaxKind::ILIKE_KW)
11613 }
11614 #[inline]
11615 pub fn in_token(&self) -> Option<SyntaxToken> {
11616 support::token(&self.syntax, SyntaxKind::IN_KW)
11617 }
11618 #[inline]
11619 pub fn is_token(&self) -> Option<SyntaxToken> {
11620 support::token(&self.syntax, SyntaxKind::IS_KW)
11621 }
11622 #[inline]
11623 pub fn like_token(&self) -> Option<SyntaxToken> {
11624 support::token(&self.syntax, SyntaxKind::LIKE_KW)
11625 }
11626 #[inline]
11627 pub fn or_token(&self) -> Option<SyntaxToken> {
11628 support::token(&self.syntax, SyntaxKind::OR_KW)
11629 }
11630 #[inline]
11631 pub fn overlaps_token(&self) -> Option<SyntaxToken> {
11632 support::token(&self.syntax, SyntaxKind::OVERLAPS_KW)
11633 }
11634 #[inline]
11635 pub fn value_token(&self) -> Option<SyntaxToken> {
11636 support::token(&self.syntax, SyntaxKind::VALUE_KW)
11637 }
11638}
11639
11640#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11641pub struct OpClassOption {
11642 pub(crate) syntax: SyntaxNode,
11643}
11644impl OpClassOption {
11645 #[inline]
11646 pub fn function_sig(&self) -> Option<FunctionSig> {
11647 support::child(&self.syntax)
11648 }
11649 #[inline]
11650 pub fn literal(&self) -> Option<Literal> {
11651 support::child(&self.syntax)
11652 }
11653 #[inline]
11654 pub fn op(&self) -> Option<Op> {
11655 support::child(&self.syntax)
11656 }
11657 #[inline]
11658 pub fn param_list(&self) -> Option<ParamList> {
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 ty(&self) -> Option<Type> {
11667 support::child(&self.syntax)
11668 }
11669 #[inline]
11670 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
11671 support::token(&self.syntax, SyntaxKind::L_PAREN)
11672 }
11673 #[inline]
11674 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
11675 support::token(&self.syntax, SyntaxKind::R_PAREN)
11676 }
11677 #[inline]
11678 pub fn comma_token(&self) -> Option<SyntaxToken> {
11679 support::token(&self.syntax, SyntaxKind::COMMA)
11680 }
11681 #[inline]
11682 pub fn by_token(&self) -> Option<SyntaxToken> {
11683 support::token(&self.syntax, SyntaxKind::BY_KW)
11684 }
11685 #[inline]
11686 pub fn for_token(&self) -> Option<SyntaxToken> {
11687 support::token(&self.syntax, SyntaxKind::FOR_KW)
11688 }
11689 #[inline]
11690 pub fn function_token(&self) -> Option<SyntaxToken> {
11691 support::token(&self.syntax, SyntaxKind::FUNCTION_KW)
11692 }
11693 #[inline]
11694 pub fn operator_token(&self) -> Option<SyntaxToken> {
11695 support::token(&self.syntax, SyntaxKind::OPERATOR_KW)
11696 }
11697 #[inline]
11698 pub fn order_token(&self) -> Option<SyntaxToken> {
11699 support::token(&self.syntax, SyntaxKind::ORDER_KW)
11700 }
11701 #[inline]
11702 pub fn search_token(&self) -> Option<SyntaxToken> {
11703 support::token(&self.syntax, SyntaxKind::SEARCH_KW)
11704 }
11705 #[inline]
11706 pub fn storage_token(&self) -> Option<SyntaxToken> {
11707 support::token(&self.syntax, SyntaxKind::STORAGE_KW)
11708 }
11709}
11710
11711#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11712pub struct OpSig {
11713 pub(crate) syntax: SyntaxNode,
11714}
11715impl OpSig {
11716 #[inline]
11717 pub fn op(&self) -> Option<Op> {
11718 support::child(&self.syntax)
11719 }
11720 #[inline]
11721 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
11722 support::token(&self.syntax, SyntaxKind::L_PAREN)
11723 }
11724 #[inline]
11725 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
11726 support::token(&self.syntax, SyntaxKind::R_PAREN)
11727 }
11728 #[inline]
11729 pub fn comma_token(&self) -> Option<SyntaxToken> {
11730 support::token(&self.syntax, SyntaxKind::COMMA)
11731 }
11732 #[inline]
11733 pub fn none_token(&self) -> Option<SyntaxToken> {
11734 support::token(&self.syntax, SyntaxKind::NONE_KW)
11735 }
11736}
11737
11738#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11739pub struct OpSigList {
11740 pub(crate) syntax: SyntaxNode,
11741}
11742impl OpSigList {
11743 #[inline]
11744 pub fn op_sigs(&self) -> AstChildren<OpSig> {
11745 support::children(&self.syntax)
11746 }
11747}
11748
11749#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11750pub struct OperatorCall {
11751 pub(crate) syntax: SyntaxNode,
11752}
11753impl OperatorCall {
11754 #[inline]
11755 pub fn op(&self) -> Option<Op> {
11756 support::child(&self.syntax)
11757 }
11758 #[inline]
11759 pub fn path(&self) -> Option<Path> {
11760 support::child(&self.syntax)
11761 }
11762 #[inline]
11763 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
11764 support::token(&self.syntax, SyntaxKind::L_PAREN)
11765 }
11766 #[inline]
11767 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
11768 support::token(&self.syntax, SyntaxKind::R_PAREN)
11769 }
11770 #[inline]
11771 pub fn dot_token(&self) -> Option<SyntaxToken> {
11772 support::token(&self.syntax, SyntaxKind::DOT)
11773 }
11774 #[inline]
11775 pub fn operator_token(&self) -> Option<SyntaxToken> {
11776 support::token(&self.syntax, SyntaxKind::OPERATOR_KW)
11777 }
11778}
11779
11780#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11781pub struct OperatorClassOptionList {
11782 pub(crate) syntax: SyntaxNode,
11783}
11784impl OperatorClassOptionList {
11785 #[inline]
11786 pub fn op_class_options(&self) -> AstChildren<OpClassOption> {
11787 support::children(&self.syntax)
11788 }
11789}
11790
11791#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11792pub struct OptionItem {
11793 pub(crate) syntax: SyntaxNode,
11794}
11795impl OptionItem {
11796 #[inline]
11797 pub fn expr(&self) -> Option<Expr> {
11798 support::child(&self.syntax)
11799 }
11800 #[inline]
11801 pub fn default_token(&self) -> Option<SyntaxToken> {
11802 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
11803 }
11804}
11805
11806#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11807pub struct OptionItemList {
11808 pub(crate) syntax: SyntaxNode,
11809}
11810impl OptionItemList {
11811 #[inline]
11812 pub fn option_items(&self) -> AstChildren<OptionItem> {
11813 support::children(&self.syntax)
11814 }
11815 #[inline]
11816 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
11817 support::token(&self.syntax, SyntaxKind::L_PAREN)
11818 }
11819 #[inline]
11820 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
11821 support::token(&self.syntax, SyntaxKind::R_PAREN)
11822 }
11823}
11824
11825#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11826pub struct OrReplace {
11827 pub(crate) syntax: SyntaxNode,
11828}
11829impl OrReplace {
11830 #[inline]
11831 pub fn or_token(&self) -> Option<SyntaxToken> {
11832 support::token(&self.syntax, SyntaxKind::OR_KW)
11833 }
11834 #[inline]
11835 pub fn replace_token(&self) -> Option<SyntaxToken> {
11836 support::token(&self.syntax, SyntaxKind::REPLACE_KW)
11837 }
11838}
11839
11840#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11841pub struct OrderByClause {
11842 pub(crate) syntax: SyntaxNode,
11843}
11844impl OrderByClause {
11845 #[inline]
11846 pub fn sort_by_list(&self) -> Option<SortByList> {
11847 support::child(&self.syntax)
11848 }
11849 #[inline]
11850 pub fn by_token(&self) -> Option<SyntaxToken> {
11851 support::token(&self.syntax, SyntaxKind::BY_KW)
11852 }
11853 #[inline]
11854 pub fn order_token(&self) -> Option<SyntaxToken> {
11855 support::token(&self.syntax, SyntaxKind::ORDER_KW)
11856 }
11857}
11858
11859#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11860pub struct OverClause {
11861 pub(crate) syntax: SyntaxNode,
11862}
11863impl OverClause {
11864 #[inline]
11865 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
11866 support::token(&self.syntax, SyntaxKind::L_PAREN)
11867 }
11868 #[inline]
11869 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
11870 support::token(&self.syntax, SyntaxKind::R_PAREN)
11871 }
11872 #[inline]
11873 pub fn over_token(&self) -> Option<SyntaxToken> {
11874 support::token(&self.syntax, SyntaxKind::OVER_KW)
11875 }
11876}
11877
11878#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11879pub struct OverlayFn {
11880 pub(crate) syntax: SyntaxNode,
11881}
11882impl OverlayFn {
11883 #[inline]
11884 pub fn expr(&self) -> Option<Expr> {
11885 support::child(&self.syntax)
11886 }
11887 #[inline]
11888 pub fn exprs(&self) -> AstChildren<Expr> {
11889 support::children(&self.syntax)
11890 }
11891 #[inline]
11892 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
11893 support::token(&self.syntax, SyntaxKind::L_PAREN)
11894 }
11895 #[inline]
11896 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
11897 support::token(&self.syntax, SyntaxKind::R_PAREN)
11898 }
11899 #[inline]
11900 pub fn for_token(&self) -> Option<SyntaxToken> {
11901 support::token(&self.syntax, SyntaxKind::FOR_KW)
11902 }
11903 #[inline]
11904 pub fn from_token(&self) -> Option<SyntaxToken> {
11905 support::token(&self.syntax, SyntaxKind::FROM_KW)
11906 }
11907 #[inline]
11908 pub fn overlay_token(&self) -> Option<SyntaxToken> {
11909 support::token(&self.syntax, SyntaxKind::OVERLAY_KW)
11910 }
11911 #[inline]
11912 pub fn placing_token(&self) -> Option<SyntaxToken> {
11913 support::token(&self.syntax, SyntaxKind::PLACING_KW)
11914 }
11915}
11916
11917#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11918pub struct OwnedByRoles {
11919 pub(crate) syntax: SyntaxNode,
11920}
11921impl OwnedByRoles {
11922 #[inline]
11923 pub fn role_ref_list(&self) -> Option<RoleRefList> {
11924 support::child(&self.syntax)
11925 }
11926 #[inline]
11927 pub fn by_token(&self) -> Option<SyntaxToken> {
11928 support::token(&self.syntax, SyntaxKind::BY_KW)
11929 }
11930 #[inline]
11931 pub fn owned_token(&self) -> Option<SyntaxToken> {
11932 support::token(&self.syntax, SyntaxKind::OWNED_KW)
11933 }
11934}
11935
11936#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11937pub struct OwnerTo {
11938 pub(crate) syntax: SyntaxNode,
11939}
11940impl OwnerTo {
11941 #[inline]
11942 pub fn role_ref(&self) -> Option<RoleRef> {
11943 support::child(&self.syntax)
11944 }
11945 #[inline]
11946 pub fn owner_token(&self) -> Option<SyntaxToken> {
11947 support::token(&self.syntax, SyntaxKind::OWNER_KW)
11948 }
11949 #[inline]
11950 pub fn to_token(&self) -> Option<SyntaxToken> {
11951 support::token(&self.syntax, SyntaxKind::TO_KW)
11952 }
11953}
11954
11955#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11956pub struct ParallelFuncOption {
11957 pub(crate) syntax: SyntaxNode,
11958}
11959impl ParallelFuncOption {
11960 #[inline]
11961 pub fn ident_token(&self) -> Option<SyntaxToken> {
11962 support::token(&self.syntax, SyntaxKind::IDENT)
11963 }
11964 #[inline]
11965 pub fn parallel_token(&self) -> Option<SyntaxToken> {
11966 support::token(&self.syntax, SyntaxKind::PARALLEL_KW)
11967 }
11968}
11969
11970#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11971pub struct Param {
11972 pub(crate) syntax: SyntaxNode,
11973}
11974impl Param {
11975 #[inline]
11976 pub fn mode(&self) -> Option<ParamMode> {
11977 support::child(&self.syntax)
11978 }
11979 #[inline]
11980 pub fn name(&self) -> Option<Name> {
11981 support::child(&self.syntax)
11982 }
11983 #[inline]
11984 pub fn param_default(&self) -> Option<ParamDefault> {
11985 support::child(&self.syntax)
11986 }
11987 #[inline]
11988 pub fn ty(&self) -> Option<Type> {
11989 support::child(&self.syntax)
11990 }
11991}
11992
11993#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11994pub struct ParamDefault {
11995 pub(crate) syntax: SyntaxNode,
11996}
11997impl ParamDefault {
11998 #[inline]
11999 pub fn expr(&self) -> Option<Expr> {
12000 support::child(&self.syntax)
12001 }
12002 #[inline]
12003 pub fn eq_token(&self) -> Option<SyntaxToken> {
12004 support::token(&self.syntax, SyntaxKind::EQ)
12005 }
12006 #[inline]
12007 pub fn default_token(&self) -> Option<SyntaxToken> {
12008 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
12009 }
12010}
12011
12012#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12013pub struct ParamIn {
12014 pub(crate) syntax: SyntaxNode,
12015}
12016impl ParamIn {
12017 #[inline]
12018 pub fn in_token(&self) -> Option<SyntaxToken> {
12019 support::token(&self.syntax, SyntaxKind::IN_KW)
12020 }
12021}
12022
12023#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12024pub struct ParamInOut {
12025 pub(crate) syntax: SyntaxNode,
12026}
12027impl ParamInOut {
12028 #[inline]
12029 pub fn in_token(&self) -> Option<SyntaxToken> {
12030 support::token(&self.syntax, SyntaxKind::IN_KW)
12031 }
12032 #[inline]
12033 pub fn inout_token(&self) -> Option<SyntaxToken> {
12034 support::token(&self.syntax, SyntaxKind::INOUT_KW)
12035 }
12036 #[inline]
12037 pub fn out_token(&self) -> Option<SyntaxToken> {
12038 support::token(&self.syntax, SyntaxKind::OUT_KW)
12039 }
12040}
12041
12042#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12043pub struct ParamList {
12044 pub(crate) syntax: SyntaxNode,
12045}
12046impl ParamList {
12047 #[inline]
12048 pub fn params(&self) -> AstChildren<Param> {
12049 support::children(&self.syntax)
12050 }
12051}
12052
12053#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12054pub struct ParamOut {
12055 pub(crate) syntax: SyntaxNode,
12056}
12057impl ParamOut {
12058 #[inline]
12059 pub fn out_token(&self) -> Option<SyntaxToken> {
12060 support::token(&self.syntax, SyntaxKind::OUT_KW)
12061 }
12062}
12063
12064#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12065pub struct ParamVariadic {
12066 pub(crate) syntax: SyntaxNode,
12067}
12068impl ParamVariadic {
12069 #[inline]
12070 pub fn variadic_token(&self) -> Option<SyntaxToken> {
12071 support::token(&self.syntax, SyntaxKind::VARIADIC_KW)
12072 }
12073}
12074
12075#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12076pub struct ParenExpr {
12077 pub(crate) syntax: SyntaxNode,
12078}
12079impl ParenExpr {
12080 #[inline]
12081 pub fn expr(&self) -> Option<Expr> {
12082 support::child(&self.syntax)
12083 }
12084 #[inline]
12085 pub fn from_item(&self) -> Option<FromItem> {
12086 support::child(&self.syntax)
12087 }
12088 #[inline]
12089 pub fn select(&self) -> Option<Select> {
12090 support::child(&self.syntax)
12091 }
12092 #[inline]
12093 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
12094 support::token(&self.syntax, SyntaxKind::L_PAREN)
12095 }
12096 #[inline]
12097 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
12098 support::token(&self.syntax, SyntaxKind::R_PAREN)
12099 }
12100}
12101
12102#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12103pub struct ParenSelect {
12104 pub(crate) syntax: SyntaxNode,
12105}
12106impl ParenSelect {
12107 #[inline]
12108 pub fn select(&self) -> Option<SelectVariant> {
12109 support::child(&self.syntax)
12110 }
12111 #[inline]
12112 pub fn with_clause(&self) -> Option<WithClause> {
12113 support::child(&self.syntax)
12114 }
12115 #[inline]
12116 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
12117 support::token(&self.syntax, SyntaxKind::L_PAREN)
12118 }
12119 #[inline]
12120 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
12121 support::token(&self.syntax, SyntaxKind::R_PAREN)
12122 }
12123}
12124
12125#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12126pub struct Partition {
12127 pub(crate) syntax: SyntaxNode,
12128}
12129impl Partition {
12130 #[inline]
12131 pub fn partition_type(&self) -> Option<PartitionType> {
12132 support::child(&self.syntax)
12133 }
12134 #[inline]
12135 pub fn path(&self) -> Option<Path> {
12136 support::child(&self.syntax)
12137 }
12138 #[inline]
12139 pub fn partition_token(&self) -> Option<SyntaxToken> {
12140 support::token(&self.syntax, SyntaxKind::PARTITION_KW)
12141 }
12142}
12143
12144#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12145pub struct PartitionBy {
12146 pub(crate) syntax: SyntaxNode,
12147}
12148impl PartitionBy {
12149 #[inline]
12150 pub fn partition_item_list(&self) -> Option<PartitionItemList> {
12151 support::child(&self.syntax)
12152 }
12153 #[inline]
12154 pub fn by_token(&self) -> Option<SyntaxToken> {
12155 support::token(&self.syntax, SyntaxKind::BY_KW)
12156 }
12157 #[inline]
12158 pub fn ident_token(&self) -> Option<SyntaxToken> {
12159 support::token(&self.syntax, SyntaxKind::IDENT)
12160 }
12161 #[inline]
12162 pub fn partition_token(&self) -> Option<SyntaxToken> {
12163 support::token(&self.syntax, SyntaxKind::PARTITION_KW)
12164 }
12165 #[inline]
12166 pub fn range_token(&self) -> Option<SyntaxToken> {
12167 support::token(&self.syntax, SyntaxKind::RANGE_KW)
12168 }
12169}
12170
12171#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12172pub struct PartitionDefault {
12173 pub(crate) syntax: SyntaxNode,
12174}
12175impl PartitionDefault {
12176 #[inline]
12177 pub fn default_token(&self) -> Option<SyntaxToken> {
12178 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
12179 }
12180}
12181
12182#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12183pub struct PartitionForValuesFrom {
12184 pub(crate) syntax: SyntaxNode,
12185}
12186impl PartitionForValuesFrom {
12187 #[inline]
12188 pub fn exprs(&self) -> AstChildren<Expr> {
12189 support::children(&self.syntax)
12190 }
12191 #[inline]
12192 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
12193 support::token(&self.syntax, SyntaxKind::L_PAREN)
12194 }
12195 #[inline]
12196 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
12197 support::token(&self.syntax, SyntaxKind::R_PAREN)
12198 }
12199 #[inline]
12200 pub fn for_token(&self) -> Option<SyntaxToken> {
12201 support::token(&self.syntax, SyntaxKind::FOR_KW)
12202 }
12203 #[inline]
12204 pub fn from_token(&self) -> Option<SyntaxToken> {
12205 support::token(&self.syntax, SyntaxKind::FROM_KW)
12206 }
12207 #[inline]
12208 pub fn to_token(&self) -> Option<SyntaxToken> {
12209 support::token(&self.syntax, SyntaxKind::TO_KW)
12210 }
12211 #[inline]
12212 pub fn values_token(&self) -> Option<SyntaxToken> {
12213 support::token(&self.syntax, SyntaxKind::VALUES_KW)
12214 }
12215}
12216
12217#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12218pub struct PartitionForValuesIn {
12219 pub(crate) syntax: SyntaxNode,
12220}
12221impl PartitionForValuesIn {
12222 #[inline]
12223 pub fn exprs(&self) -> AstChildren<Expr> {
12224 support::children(&self.syntax)
12225 }
12226 #[inline]
12227 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
12228 support::token(&self.syntax, SyntaxKind::L_PAREN)
12229 }
12230 #[inline]
12231 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
12232 support::token(&self.syntax, SyntaxKind::R_PAREN)
12233 }
12234 #[inline]
12235 pub fn for_token(&self) -> Option<SyntaxToken> {
12236 support::token(&self.syntax, SyntaxKind::FOR_KW)
12237 }
12238 #[inline]
12239 pub fn in_token(&self) -> Option<SyntaxToken> {
12240 support::token(&self.syntax, SyntaxKind::IN_KW)
12241 }
12242 #[inline]
12243 pub fn values_token(&self) -> Option<SyntaxToken> {
12244 support::token(&self.syntax, SyntaxKind::VALUES_KW)
12245 }
12246}
12247
12248#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12249pub struct PartitionForValuesWith {
12250 pub(crate) syntax: SyntaxNode,
12251}
12252impl PartitionForValuesWith {
12253 #[inline]
12254 pub fn literal(&self) -> Option<Literal> {
12255 support::child(&self.syntax)
12256 }
12257 #[inline]
12258 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
12259 support::token(&self.syntax, SyntaxKind::L_PAREN)
12260 }
12261 #[inline]
12262 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
12263 support::token(&self.syntax, SyntaxKind::R_PAREN)
12264 }
12265 #[inline]
12266 pub fn comma_token(&self) -> Option<SyntaxToken> {
12267 support::token(&self.syntax, SyntaxKind::COMMA)
12268 }
12269 #[inline]
12270 pub fn for_token(&self) -> Option<SyntaxToken> {
12271 support::token(&self.syntax, SyntaxKind::FOR_KW)
12272 }
12273 #[inline]
12274 pub fn ident_token(&self) -> Option<SyntaxToken> {
12275 support::token(&self.syntax, SyntaxKind::IDENT)
12276 }
12277 #[inline]
12278 pub fn values_token(&self) -> Option<SyntaxToken> {
12279 support::token(&self.syntax, SyntaxKind::VALUES_KW)
12280 }
12281 #[inline]
12282 pub fn with_token(&self) -> Option<SyntaxToken> {
12283 support::token(&self.syntax, SyntaxKind::WITH_KW)
12284 }
12285}
12286
12287#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12288pub struct PartitionItem {
12289 pub(crate) syntax: SyntaxNode,
12290}
12291impl PartitionItem {
12292 #[inline]
12293 pub fn collate(&self) -> Option<Collate> {
12294 support::child(&self.syntax)
12295 }
12296 #[inline]
12297 pub fn expr(&self) -> Option<Expr> {
12298 support::child(&self.syntax)
12299 }
12300}
12301
12302#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12303pub struct PartitionItemList {
12304 pub(crate) syntax: SyntaxNode,
12305}
12306impl PartitionItemList {
12307 #[inline]
12308 pub fn partition_items(&self) -> AstChildren<PartitionItem> {
12309 support::children(&self.syntax)
12310 }
12311 #[inline]
12312 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
12313 support::token(&self.syntax, SyntaxKind::L_PAREN)
12314 }
12315 #[inline]
12316 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
12317 support::token(&self.syntax, SyntaxKind::R_PAREN)
12318 }
12319}
12320
12321#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12322pub struct PartitionList {
12323 pub(crate) syntax: SyntaxNode,
12324}
12325impl PartitionList {
12326 #[inline]
12327 pub fn partitions(&self) -> AstChildren<Partition> {
12328 support::children(&self.syntax)
12329 }
12330 #[inline]
12331 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
12332 support::token(&self.syntax, SyntaxKind::L_PAREN)
12333 }
12334 #[inline]
12335 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
12336 support::token(&self.syntax, SyntaxKind::R_PAREN)
12337 }
12338}
12339
12340#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12341pub struct PartitionOf {
12342 pub(crate) syntax: SyntaxNode,
12343}
12344impl PartitionOf {
12345 #[inline]
12346 pub fn path(&self) -> Option<Path> {
12347 support::child(&self.syntax)
12348 }
12349 #[inline]
12350 pub fn of_token(&self) -> Option<SyntaxToken> {
12351 support::token(&self.syntax, SyntaxKind::OF_KW)
12352 }
12353 #[inline]
12354 pub fn partition_token(&self) -> Option<SyntaxToken> {
12355 support::token(&self.syntax, SyntaxKind::PARTITION_KW)
12356 }
12357}
12358
12359#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12360pub struct Path {
12361 pub(crate) syntax: SyntaxNode,
12362}
12363impl Path {
12364 #[inline]
12365 pub fn qualifier(&self) -> Option<Path> {
12366 support::child(&self.syntax)
12367 }
12368 #[inline]
12369 pub fn segment(&self) -> Option<PathSegment> {
12370 support::child(&self.syntax)
12371 }
12372 #[inline]
12373 pub fn dot_token(&self) -> Option<SyntaxToken> {
12374 support::token(&self.syntax, SyntaxKind::DOT)
12375 }
12376}
12377
12378#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12379pub struct PathSegment {
12380 pub(crate) syntax: SyntaxNode,
12381}
12382impl PathSegment {
12383 #[inline]
12384 pub fn name(&self) -> Option<Name> {
12385 support::child(&self.syntax)
12386 }
12387 #[inline]
12388 pub fn name_ref(&self) -> Option<NameRef> {
12389 support::child(&self.syntax)
12390 }
12391}
12392
12393#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12394pub struct PathType {
12395 pub(crate) syntax: SyntaxNode,
12396}
12397impl PathType {
12398 #[inline]
12399 pub fn arg_list(&self) -> Option<ArgList> {
12400 support::child(&self.syntax)
12401 }
12402 #[inline]
12403 pub fn path(&self) -> Option<Path> {
12404 support::child(&self.syntax)
12405 }
12406}
12407
12408#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12409pub struct PercentType {
12410 pub(crate) syntax: SyntaxNode,
12411}
12412impl PercentType {
12413 #[inline]
12414 pub fn percent_token(&self) -> Option<SyntaxToken> {
12415 support::token(&self.syntax, SyntaxKind::PERCENT)
12416 }
12417 #[inline]
12418 pub fn type_token(&self) -> Option<SyntaxToken> {
12419 support::token(&self.syntax, SyntaxKind::TYPE_KW)
12420 }
12421}
12422
12423#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12424pub struct PercentTypeClause {
12425 pub(crate) syntax: SyntaxNode,
12426}
12427impl PercentTypeClause {
12428 #[inline]
12429 pub fn path(&self) -> Option<Path> {
12430 support::child(&self.syntax)
12431 }
12432 #[inline]
12433 pub fn percent_type_clause(&self) -> Option<PercentTypeClause> {
12434 support::child(&self.syntax)
12435 }
12436}
12437
12438#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12439pub struct PositionFn {
12440 pub(crate) syntax: SyntaxNode,
12441}
12442impl PositionFn {
12443 #[inline]
12444 pub fn expr(&self) -> Option<Expr> {
12445 support::child(&self.syntax)
12446 }
12447 #[inline]
12448 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
12449 support::token(&self.syntax, SyntaxKind::L_PAREN)
12450 }
12451 #[inline]
12452 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
12453 support::token(&self.syntax, SyntaxKind::R_PAREN)
12454 }
12455 #[inline]
12456 pub fn in_token(&self) -> Option<SyntaxToken> {
12457 support::token(&self.syntax, SyntaxKind::IN_KW)
12458 }
12459 #[inline]
12460 pub fn position_token(&self) -> Option<SyntaxToken> {
12461 support::token(&self.syntax, SyntaxKind::POSITION_KW)
12462 }
12463}
12464
12465#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12466pub struct PostfixExpr {
12467 pub(crate) syntax: SyntaxNode,
12468}
12469impl PostfixExpr {
12470 #[inline]
12471 pub fn expr(&self) -> Option<Expr> {
12472 support::child(&self.syntax)
12473 }
12474}
12475
12476#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12477pub struct PrefixExpr {
12478 pub(crate) syntax: SyntaxNode,
12479}
12480impl PrefixExpr {
12481 #[inline]
12482 pub fn expr(&self) -> Option<Expr> {
12483 support::child(&self.syntax)
12484 }
12485}
12486
12487#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12488pub struct Prepare {
12489 pub(crate) syntax: SyntaxNode,
12490}
12491impl Prepare {
12492 #[inline]
12493 pub fn name(&self) -> Option<Name> {
12494 support::child(&self.syntax)
12495 }
12496 #[inline]
12497 pub fn preparable_stmt(&self) -> Option<PreparableStmt> {
12498 support::child(&self.syntax)
12499 }
12500 #[inline]
12501 pub fn as_token(&self) -> Option<SyntaxToken> {
12502 support::token(&self.syntax, SyntaxKind::AS_KW)
12503 }
12504 #[inline]
12505 pub fn prepare_token(&self) -> Option<SyntaxToken> {
12506 support::token(&self.syntax, SyntaxKind::PREPARE_KW)
12507 }
12508}
12509
12510#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12511pub struct PrepareTransaction {
12512 pub(crate) syntax: SyntaxNode,
12513}
12514impl PrepareTransaction {
12515 #[inline]
12516 pub fn literal(&self) -> Option<Literal> {
12517 support::child(&self.syntax)
12518 }
12519 #[inline]
12520 pub fn prepare_token(&self) -> Option<SyntaxToken> {
12521 support::token(&self.syntax, SyntaxKind::PREPARE_KW)
12522 }
12523 #[inline]
12524 pub fn transaction_token(&self) -> Option<SyntaxToken> {
12525 support::token(&self.syntax, SyntaxKind::TRANSACTION_KW)
12526 }
12527}
12528
12529#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12530pub struct PreserveRows {
12531 pub(crate) syntax: SyntaxNode,
12532}
12533impl PreserveRows {
12534 #[inline]
12535 pub fn preserve_token(&self) -> Option<SyntaxToken> {
12536 support::token(&self.syntax, SyntaxKind::PRESERVE_KW)
12537 }
12538 #[inline]
12539 pub fn rows_token(&self) -> Option<SyntaxToken> {
12540 support::token(&self.syntax, SyntaxKind::ROWS_KW)
12541 }
12542}
12543
12544#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12545pub struct PrimaryKeyConstraint {
12546 pub(crate) syntax: SyntaxNode,
12547}
12548impl PrimaryKeyConstraint {
12549 #[inline]
12550 pub fn column_list(&self) -> Option<ColumnList> {
12551 support::child(&self.syntax)
12552 }
12553 #[inline]
12554 pub fn constraint_name(&self) -> Option<ConstraintName> {
12555 support::child(&self.syntax)
12556 }
12557 #[inline]
12558 pub fn partition_item_list(&self) -> Option<PartitionItemList> {
12559 support::child(&self.syntax)
12560 }
12561 #[inline]
12562 pub fn using_index(&self) -> Option<UsingIndex> {
12563 support::child(&self.syntax)
12564 }
12565 #[inline]
12566 pub fn key_token(&self) -> Option<SyntaxToken> {
12567 support::token(&self.syntax, SyntaxKind::KEY_KW)
12568 }
12569 #[inline]
12570 pub fn primary_token(&self) -> Option<SyntaxToken> {
12571 support::token(&self.syntax, SyntaxKind::PRIMARY_KW)
12572 }
12573}
12574
12575#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12576pub struct PrivilegeTarget {
12577 pub(crate) syntax: SyntaxNode,
12578}
12579impl PrivilegeTarget {
12580 #[inline]
12581 pub fn functions_token(&self) -> Option<SyntaxToken> {
12582 support::token(&self.syntax, SyntaxKind::FUNCTIONS_KW)
12583 }
12584 #[inline]
12585 pub fn large_token(&self) -> Option<SyntaxToken> {
12586 support::token(&self.syntax, SyntaxKind::LARGE_KW)
12587 }
12588 #[inline]
12589 pub fn objects_token(&self) -> Option<SyntaxToken> {
12590 support::token(&self.syntax, SyntaxKind::OBJECTS_KW)
12591 }
12592 #[inline]
12593 pub fn routines_token(&self) -> Option<SyntaxToken> {
12594 support::token(&self.syntax, SyntaxKind::ROUTINES_KW)
12595 }
12596 #[inline]
12597 pub fn schemas_token(&self) -> Option<SyntaxToken> {
12598 support::token(&self.syntax, SyntaxKind::SCHEMAS_KW)
12599 }
12600 #[inline]
12601 pub fn sequences_token(&self) -> Option<SyntaxToken> {
12602 support::token(&self.syntax, SyntaxKind::SEQUENCES_KW)
12603 }
12604 #[inline]
12605 pub fn tables_token(&self) -> Option<SyntaxToken> {
12606 support::token(&self.syntax, SyntaxKind::TABLES_KW)
12607 }
12608 #[inline]
12609 pub fn types_token(&self) -> Option<SyntaxToken> {
12610 support::token(&self.syntax, SyntaxKind::TYPES_KW)
12611 }
12612}
12613
12614#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12615pub struct Privileges {
12616 pub(crate) syntax: SyntaxNode,
12617}
12618impl Privileges {
12619 #[inline]
12620 pub fn column_list(&self) -> Option<ColumnList> {
12621 support::child(&self.syntax)
12622 }
12623 #[inline]
12624 pub fn revoke_command_list(&self) -> Option<RevokeCommandList> {
12625 support::child(&self.syntax)
12626 }
12627 #[inline]
12628 pub fn all_token(&self) -> Option<SyntaxToken> {
12629 support::token(&self.syntax, SyntaxKind::ALL_KW)
12630 }
12631 #[inline]
12632 pub fn privileges_token(&self) -> Option<SyntaxToken> {
12633 support::token(&self.syntax, SyntaxKind::PRIVILEGES_KW)
12634 }
12635}
12636
12637#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12638pub struct PublicationObject {
12639 pub(crate) syntax: SyntaxNode,
12640}
12641impl PublicationObject {
12642 #[inline]
12643 pub fn column_list(&self) -> Option<ColumnList> {
12644 support::child(&self.syntax)
12645 }
12646 #[inline]
12647 pub fn name_ref(&self) -> Option<NameRef> {
12648 support::child(&self.syntax)
12649 }
12650 #[inline]
12651 pub fn path(&self) -> Option<Path> {
12652 support::child(&self.syntax)
12653 }
12654 #[inline]
12655 pub fn where_condition_clause(&self) -> Option<WhereConditionClause> {
12656 support::child(&self.syntax)
12657 }
12658 #[inline]
12659 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
12660 support::token(&self.syntax, SyntaxKind::L_PAREN)
12661 }
12662 #[inline]
12663 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
12664 support::token(&self.syntax, SyntaxKind::R_PAREN)
12665 }
12666 #[inline]
12667 pub fn star_token(&self) -> Option<SyntaxToken> {
12668 support::token(&self.syntax, SyntaxKind::STAR)
12669 }
12670 #[inline]
12671 pub fn current_schema_token(&self) -> Option<SyntaxToken> {
12672 support::token(&self.syntax, SyntaxKind::CURRENT_SCHEMA_KW)
12673 }
12674 #[inline]
12675 pub fn in_token(&self) -> Option<SyntaxToken> {
12676 support::token(&self.syntax, SyntaxKind::IN_KW)
12677 }
12678 #[inline]
12679 pub fn only_token(&self) -> Option<SyntaxToken> {
12680 support::token(&self.syntax, SyntaxKind::ONLY_KW)
12681 }
12682 #[inline]
12683 pub fn schema_token(&self) -> Option<SyntaxToken> {
12684 support::token(&self.syntax, SyntaxKind::SCHEMA_KW)
12685 }
12686 #[inline]
12687 pub fn table_token(&self) -> Option<SyntaxToken> {
12688 support::token(&self.syntax, SyntaxKind::TABLE_KW)
12689 }
12690 #[inline]
12691 pub fn tables_token(&self) -> Option<SyntaxToken> {
12692 support::token(&self.syntax, SyntaxKind::TABLES_KW)
12693 }
12694}
12695
12696#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12697pub struct ReadCommitted {
12698 pub(crate) syntax: SyntaxNode,
12699}
12700impl ReadCommitted {
12701 #[inline]
12702 pub fn committed_token(&self) -> Option<SyntaxToken> {
12703 support::token(&self.syntax, SyntaxKind::COMMITTED_KW)
12704 }
12705 #[inline]
12706 pub fn isolation_token(&self) -> Option<SyntaxToken> {
12707 support::token(&self.syntax, SyntaxKind::ISOLATION_KW)
12708 }
12709 #[inline]
12710 pub fn level_token(&self) -> Option<SyntaxToken> {
12711 support::token(&self.syntax, SyntaxKind::LEVEL_KW)
12712 }
12713 #[inline]
12714 pub fn read_token(&self) -> Option<SyntaxToken> {
12715 support::token(&self.syntax, SyntaxKind::READ_KW)
12716 }
12717}
12718
12719#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12720pub struct ReadOnly {
12721 pub(crate) syntax: SyntaxNode,
12722}
12723impl ReadOnly {
12724 #[inline]
12725 pub fn only_token(&self) -> Option<SyntaxToken> {
12726 support::token(&self.syntax, SyntaxKind::ONLY_KW)
12727 }
12728 #[inline]
12729 pub fn read_token(&self) -> Option<SyntaxToken> {
12730 support::token(&self.syntax, SyntaxKind::READ_KW)
12731 }
12732}
12733
12734#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12735pub struct ReadUncommitted {
12736 pub(crate) syntax: SyntaxNode,
12737}
12738impl ReadUncommitted {
12739 #[inline]
12740 pub fn isolation_token(&self) -> Option<SyntaxToken> {
12741 support::token(&self.syntax, SyntaxKind::ISOLATION_KW)
12742 }
12743 #[inline]
12744 pub fn level_token(&self) -> Option<SyntaxToken> {
12745 support::token(&self.syntax, SyntaxKind::LEVEL_KW)
12746 }
12747 #[inline]
12748 pub fn read_token(&self) -> Option<SyntaxToken> {
12749 support::token(&self.syntax, SyntaxKind::READ_KW)
12750 }
12751 #[inline]
12752 pub fn uncommitted_token(&self) -> Option<SyntaxToken> {
12753 support::token(&self.syntax, SyntaxKind::UNCOMMITTED_KW)
12754 }
12755}
12756
12757#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12758pub struct ReadWrite {
12759 pub(crate) syntax: SyntaxNode,
12760}
12761impl ReadWrite {
12762 #[inline]
12763 pub fn read_token(&self) -> Option<SyntaxToken> {
12764 support::token(&self.syntax, SyntaxKind::READ_KW)
12765 }
12766 #[inline]
12767 pub fn write_token(&self) -> Option<SyntaxToken> {
12768 support::token(&self.syntax, SyntaxKind::WRITE_KW)
12769 }
12770}
12771
12772#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12773pub struct Reassign {
12774 pub(crate) syntax: SyntaxNode,
12775}
12776impl Reassign {
12777 #[inline]
12778 pub fn new_roles(&self) -> Option<RoleRefList> {
12779 support::child(&self.syntax)
12780 }
12781 #[inline]
12782 pub fn old_roles(&self) -> Option<RoleRefList> {
12783 support::child(&self.syntax)
12784 }
12785 #[inline]
12786 pub fn by_token(&self) -> Option<SyntaxToken> {
12787 support::token(&self.syntax, SyntaxKind::BY_KW)
12788 }
12789 #[inline]
12790 pub fn owned_token(&self) -> Option<SyntaxToken> {
12791 support::token(&self.syntax, SyntaxKind::OWNED_KW)
12792 }
12793 #[inline]
12794 pub fn reassign_token(&self) -> Option<SyntaxToken> {
12795 support::token(&self.syntax, SyntaxKind::REASSIGN_KW)
12796 }
12797 #[inline]
12798 pub fn to_token(&self) -> Option<SyntaxToken> {
12799 support::token(&self.syntax, SyntaxKind::TO_KW)
12800 }
12801}
12802
12803#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12804pub struct ReferencesConstraint {
12805 pub(crate) syntax: SyntaxNode,
12806}
12807impl ReferencesConstraint {
12808 #[inline]
12809 pub fn column(&self) -> Option<NameRef> {
12810 support::child(&self.syntax)
12811 }
12812 #[inline]
12813 pub fn constraint_name(&self) -> Option<ConstraintName> {
12814 support::child(&self.syntax)
12815 }
12816 #[inline]
12817 pub fn match_type(&self) -> Option<MatchType> {
12818 support::child(&self.syntax)
12819 }
12820 #[inline]
12821 pub fn on_delete_action(&self) -> Option<OnDeleteAction> {
12822 support::child(&self.syntax)
12823 }
12824 #[inline]
12825 pub fn on_update_action(&self) -> Option<OnUpdateAction> {
12826 support::child(&self.syntax)
12827 }
12828 #[inline]
12829 pub fn table(&self) -> Option<Path> {
12830 support::child(&self.syntax)
12831 }
12832 #[inline]
12833 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
12834 support::token(&self.syntax, SyntaxKind::L_PAREN)
12835 }
12836 #[inline]
12837 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
12838 support::token(&self.syntax, SyntaxKind::R_PAREN)
12839 }
12840 #[inline]
12841 pub fn references_token(&self) -> Option<SyntaxToken> {
12842 support::token(&self.syntax, SyntaxKind::REFERENCES_KW)
12843 }
12844}
12845
12846#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12847pub struct Referencing {
12848 pub(crate) syntax: SyntaxNode,
12849}
12850impl Referencing {
12851 #[inline]
12852 pub fn referencing_tables(&self) -> AstChildren<ReferencingTable> {
12853 support::children(&self.syntax)
12854 }
12855 #[inline]
12856 pub fn referencing_token(&self) -> Option<SyntaxToken> {
12857 support::token(&self.syntax, SyntaxKind::REFERENCING_KW)
12858 }
12859}
12860
12861#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12862pub struct ReferencingTable {
12863 pub(crate) syntax: SyntaxNode,
12864}
12865impl ReferencingTable {
12866 #[inline]
12867 pub fn name_ref(&self) -> Option<NameRef> {
12868 support::child(&self.syntax)
12869 }
12870 #[inline]
12871 pub fn as_token(&self) -> Option<SyntaxToken> {
12872 support::token(&self.syntax, SyntaxKind::AS_KW)
12873 }
12874 #[inline]
12875 pub fn new_token(&self) -> Option<SyntaxToken> {
12876 support::token(&self.syntax, SyntaxKind::NEW_KW)
12877 }
12878 #[inline]
12879 pub fn old_token(&self) -> Option<SyntaxToken> {
12880 support::token(&self.syntax, SyntaxKind::OLD_KW)
12881 }
12882 #[inline]
12883 pub fn table_token(&self) -> Option<SyntaxToken> {
12884 support::token(&self.syntax, SyntaxKind::TABLE_KW)
12885 }
12886}
12887
12888#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12889pub struct Refresh {
12890 pub(crate) syntax: SyntaxNode,
12891}
12892impl Refresh {
12893 #[inline]
12894 pub fn path(&self) -> Option<Path> {
12895 support::child(&self.syntax)
12896 }
12897 #[inline]
12898 pub fn with_data(&self) -> Option<WithData> {
12899 support::child(&self.syntax)
12900 }
12901 #[inline]
12902 pub fn with_no_data(&self) -> Option<WithNoData> {
12903 support::child(&self.syntax)
12904 }
12905 #[inline]
12906 pub fn concurrently_token(&self) -> Option<SyntaxToken> {
12907 support::token(&self.syntax, SyntaxKind::CONCURRENTLY_KW)
12908 }
12909 #[inline]
12910 pub fn materialized_token(&self) -> Option<SyntaxToken> {
12911 support::token(&self.syntax, SyntaxKind::MATERIALIZED_KW)
12912 }
12913 #[inline]
12914 pub fn refresh_token(&self) -> Option<SyntaxToken> {
12915 support::token(&self.syntax, SyntaxKind::REFRESH_KW)
12916 }
12917 #[inline]
12918 pub fn view_token(&self) -> Option<SyntaxToken> {
12919 support::token(&self.syntax, SyntaxKind::VIEW_KW)
12920 }
12921}
12922
12923#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12924pub struct RefreshCollationVersion {
12925 pub(crate) syntax: SyntaxNode,
12926}
12927impl RefreshCollationVersion {
12928 #[inline]
12929 pub fn collation_token(&self) -> Option<SyntaxToken> {
12930 support::token(&self.syntax, SyntaxKind::COLLATION_KW)
12931 }
12932 #[inline]
12933 pub fn refresh_token(&self) -> Option<SyntaxToken> {
12934 support::token(&self.syntax, SyntaxKind::REFRESH_KW)
12935 }
12936 #[inline]
12937 pub fn version_token(&self) -> Option<SyntaxToken> {
12938 support::token(&self.syntax, SyntaxKind::VERSION_KW)
12939 }
12940}
12941
12942#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12943pub struct RefreshVersion {
12944 pub(crate) syntax: SyntaxNode,
12945}
12946impl RefreshVersion {
12947 #[inline]
12948 pub fn refresh_token(&self) -> Option<SyntaxToken> {
12949 support::token(&self.syntax, SyntaxKind::REFRESH_KW)
12950 }
12951 #[inline]
12952 pub fn version_token(&self) -> Option<SyntaxToken> {
12953 support::token(&self.syntax, SyntaxKind::VERSION_KW)
12954 }
12955}
12956
12957#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12958pub struct Reindex {
12959 pub(crate) syntax: SyntaxNode,
12960}
12961impl Reindex {
12962 #[inline]
12963 pub fn path(&self) -> Option<Path> {
12964 support::child(&self.syntax)
12965 }
12966 #[inline]
12967 pub fn database_token(&self) -> Option<SyntaxToken> {
12968 support::token(&self.syntax, SyntaxKind::DATABASE_KW)
12969 }
12970 #[inline]
12971 pub fn index_token(&self) -> Option<SyntaxToken> {
12972 support::token(&self.syntax, SyntaxKind::INDEX_KW)
12973 }
12974 #[inline]
12975 pub fn reindex_token(&self) -> Option<SyntaxToken> {
12976 support::token(&self.syntax, SyntaxKind::REINDEX_KW)
12977 }
12978 #[inline]
12979 pub fn schema_token(&self) -> Option<SyntaxToken> {
12980 support::token(&self.syntax, SyntaxKind::SCHEMA_KW)
12981 }
12982 #[inline]
12983 pub fn system_token(&self) -> Option<SyntaxToken> {
12984 support::token(&self.syntax, SyntaxKind::SYSTEM_KW)
12985 }
12986 #[inline]
12987 pub fn table_token(&self) -> Option<SyntaxToken> {
12988 support::token(&self.syntax, SyntaxKind::TABLE_KW)
12989 }
12990}
12991
12992#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12993pub struct RelationName {
12994 pub(crate) syntax: SyntaxNode,
12995}
12996impl RelationName {
12997 #[inline]
12998 pub fn path(&self) -> Option<Path> {
12999 support::child(&self.syntax)
13000 }
13001 #[inline]
13002 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
13003 support::token(&self.syntax, SyntaxKind::L_PAREN)
13004 }
13005 #[inline]
13006 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
13007 support::token(&self.syntax, SyntaxKind::R_PAREN)
13008 }
13009 #[inline]
13010 pub fn star_token(&self) -> Option<SyntaxToken> {
13011 support::token(&self.syntax, SyntaxKind::STAR)
13012 }
13013 #[inline]
13014 pub fn only_token(&self) -> Option<SyntaxToken> {
13015 support::token(&self.syntax, SyntaxKind::ONLY_KW)
13016 }
13017}
13018
13019#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13020pub struct ReleaseSavepoint {
13021 pub(crate) syntax: SyntaxNode,
13022}
13023impl ReleaseSavepoint {
13024 #[inline]
13025 pub fn name_ref(&self) -> Option<NameRef> {
13026 support::child(&self.syntax)
13027 }
13028 #[inline]
13029 pub fn release_token(&self) -> Option<SyntaxToken> {
13030 support::token(&self.syntax, SyntaxKind::RELEASE_KW)
13031 }
13032 #[inline]
13033 pub fn savepoint_token(&self) -> Option<SyntaxToken> {
13034 support::token(&self.syntax, SyntaxKind::SAVEPOINT_KW)
13035 }
13036}
13037
13038#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13039pub struct RenameColumn {
13040 pub(crate) syntax: SyntaxNode,
13041}
13042impl RenameColumn {
13043 #[inline]
13044 pub fn column_token(&self) -> Option<SyntaxToken> {
13045 support::token(&self.syntax, SyntaxKind::COLUMN_KW)
13046 }
13047 #[inline]
13048 pub fn rename_token(&self) -> Option<SyntaxToken> {
13049 support::token(&self.syntax, SyntaxKind::RENAME_KW)
13050 }
13051 #[inline]
13052 pub fn to_token(&self) -> Option<SyntaxToken> {
13053 support::token(&self.syntax, SyntaxKind::TO_KW)
13054 }
13055}
13056
13057#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13058pub struct RenameConstraint {
13059 pub(crate) syntax: SyntaxNode,
13060}
13061impl RenameConstraint {
13062 #[inline]
13063 pub fn name(&self) -> Option<Name> {
13064 support::child(&self.syntax)
13065 }
13066 #[inline]
13067 pub fn name_ref(&self) -> Option<NameRef> {
13068 support::child(&self.syntax)
13069 }
13070 #[inline]
13071 pub fn constraint_token(&self) -> Option<SyntaxToken> {
13072 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
13073 }
13074 #[inline]
13075 pub fn rename_token(&self) -> Option<SyntaxToken> {
13076 support::token(&self.syntax, SyntaxKind::RENAME_KW)
13077 }
13078 #[inline]
13079 pub fn to_token(&self) -> Option<SyntaxToken> {
13080 support::token(&self.syntax, SyntaxKind::TO_KW)
13081 }
13082}
13083
13084#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13085pub struct RenameTo {
13086 pub(crate) syntax: SyntaxNode,
13087}
13088impl RenameTo {
13089 #[inline]
13090 pub fn name(&self) -> Option<Name> {
13091 support::child(&self.syntax)
13092 }
13093 #[inline]
13094 pub fn rename_token(&self) -> Option<SyntaxToken> {
13095 support::token(&self.syntax, SyntaxKind::RENAME_KW)
13096 }
13097 #[inline]
13098 pub fn to_token(&self) -> Option<SyntaxToken> {
13099 support::token(&self.syntax, SyntaxKind::TO_KW)
13100 }
13101}
13102
13103#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13104pub struct RepeatableClause {
13105 pub(crate) syntax: SyntaxNode,
13106}
13107impl RepeatableClause {
13108 #[inline]
13109 pub fn expr(&self) -> Option<Expr> {
13110 support::child(&self.syntax)
13111 }
13112 #[inline]
13113 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
13114 support::token(&self.syntax, SyntaxKind::L_PAREN)
13115 }
13116 #[inline]
13117 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
13118 support::token(&self.syntax, SyntaxKind::R_PAREN)
13119 }
13120 #[inline]
13121 pub fn repeatable_token(&self) -> Option<SyntaxToken> {
13122 support::token(&self.syntax, SyntaxKind::REPEATABLE_KW)
13123 }
13124}
13125
13126#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13127pub struct RepeatableRead {
13128 pub(crate) syntax: SyntaxNode,
13129}
13130impl RepeatableRead {
13131 #[inline]
13132 pub fn isolation_token(&self) -> Option<SyntaxToken> {
13133 support::token(&self.syntax, SyntaxKind::ISOLATION_KW)
13134 }
13135 #[inline]
13136 pub fn level_token(&self) -> Option<SyntaxToken> {
13137 support::token(&self.syntax, SyntaxKind::LEVEL_KW)
13138 }
13139 #[inline]
13140 pub fn read_token(&self) -> Option<SyntaxToken> {
13141 support::token(&self.syntax, SyntaxKind::READ_KW)
13142 }
13143 #[inline]
13144 pub fn repeatable_token(&self) -> Option<SyntaxToken> {
13145 support::token(&self.syntax, SyntaxKind::REPEATABLE_KW)
13146 }
13147}
13148
13149#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13150pub struct ReplicaIdentity {
13151 pub(crate) syntax: SyntaxNode,
13152}
13153impl ReplicaIdentity {
13154 #[inline]
13155 pub fn identity_token(&self) -> Option<SyntaxToken> {
13156 support::token(&self.syntax, SyntaxKind::IDENTITY_KW)
13157 }
13158 #[inline]
13159 pub fn replica_token(&self) -> Option<SyntaxToken> {
13160 support::token(&self.syntax, SyntaxKind::REPLICA_KW)
13161 }
13162}
13163
13164#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13165pub struct Reset {
13166 pub(crate) syntax: SyntaxNode,
13167}
13168impl Reset {
13169 #[inline]
13170 pub fn name_ref(&self) -> Option<NameRef> {
13171 support::child(&self.syntax)
13172 }
13173 #[inline]
13174 pub fn all_token(&self) -> Option<SyntaxToken> {
13175 support::token(&self.syntax, SyntaxKind::ALL_KW)
13176 }
13177 #[inline]
13178 pub fn reset_token(&self) -> Option<SyntaxToken> {
13179 support::token(&self.syntax, SyntaxKind::RESET_KW)
13180 }
13181}
13182
13183#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13184pub struct ResetConfigParam {
13185 pub(crate) syntax: SyntaxNode,
13186}
13187impl ResetConfigParam {
13188 #[inline]
13189 pub fn path(&self) -> Option<Path> {
13190 support::child(&self.syntax)
13191 }
13192 #[inline]
13193 pub fn all_token(&self) -> Option<SyntaxToken> {
13194 support::token(&self.syntax, SyntaxKind::ALL_KW)
13195 }
13196 #[inline]
13197 pub fn reset_token(&self) -> Option<SyntaxToken> {
13198 support::token(&self.syntax, SyntaxKind::RESET_KW)
13199 }
13200}
13201
13202#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13203pub struct ResetFuncOption {
13204 pub(crate) syntax: SyntaxNode,
13205}
13206impl ResetFuncOption {
13207 #[inline]
13208 pub fn name_ref(&self) -> Option<NameRef> {
13209 support::child(&self.syntax)
13210 }
13211 #[inline]
13212 pub fn reset_token(&self) -> Option<SyntaxToken> {
13213 support::token(&self.syntax, SyntaxKind::RESET_KW)
13214 }
13215}
13216
13217#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13218pub struct ResetOptions {
13219 pub(crate) syntax: SyntaxNode,
13220}
13221impl ResetOptions {
13222 #[inline]
13223 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
13224 support::token(&self.syntax, SyntaxKind::L_PAREN)
13225 }
13226 #[inline]
13227 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
13228 support::token(&self.syntax, SyntaxKind::R_PAREN)
13229 }
13230 #[inline]
13231 pub fn reset_token(&self) -> Option<SyntaxToken> {
13232 support::token(&self.syntax, SyntaxKind::RESET_KW)
13233 }
13234}
13235
13236#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13237pub struct ResetSessionAuth {
13238 pub(crate) syntax: SyntaxNode,
13239}
13240impl ResetSessionAuth {
13241 #[inline]
13242 pub fn authorization_token(&self) -> Option<SyntaxToken> {
13243 support::token(&self.syntax, SyntaxKind::AUTHORIZATION_KW)
13244 }
13245 #[inline]
13246 pub fn reset_token(&self) -> Option<SyntaxToken> {
13247 support::token(&self.syntax, SyntaxKind::RESET_KW)
13248 }
13249 #[inline]
13250 pub fn session_token(&self) -> Option<SyntaxToken> {
13251 support::token(&self.syntax, SyntaxKind::SESSION_KW)
13252 }
13253}
13254
13255#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13256pub struct Restart {
13257 pub(crate) syntax: SyntaxNode,
13258}
13259impl Restart {
13260 #[inline]
13261 pub fn restart_token(&self) -> Option<SyntaxToken> {
13262 support::token(&self.syntax, SyntaxKind::RESTART_KW)
13263 }
13264 #[inline]
13265 pub fn with_token(&self) -> Option<SyntaxToken> {
13266 support::token(&self.syntax, SyntaxKind::WITH_KW)
13267 }
13268}
13269
13270#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13271pub struct Restrict {
13272 pub(crate) syntax: SyntaxNode,
13273}
13274impl Restrict {
13275 #[inline]
13276 pub fn restrict_token(&self) -> Option<SyntaxToken> {
13277 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
13278 }
13279}
13280
13281#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13282pub struct RetType {
13283 pub(crate) syntax: SyntaxNode,
13284}
13285impl RetType {
13286 #[inline]
13287 pub fn table_arg_list(&self) -> Option<TableArgList> {
13288 support::child(&self.syntax)
13289 }
13290 #[inline]
13291 pub fn ty(&self) -> Option<Type> {
13292 support::child(&self.syntax)
13293 }
13294 #[inline]
13295 pub fn returns_token(&self) -> Option<SyntaxToken> {
13296 support::token(&self.syntax, SyntaxKind::RETURNS_KW)
13297 }
13298 #[inline]
13299 pub fn table_token(&self) -> Option<SyntaxToken> {
13300 support::token(&self.syntax, SyntaxKind::TABLE_KW)
13301 }
13302}
13303
13304#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13305pub struct ReturnFuncOption {
13306 pub(crate) syntax: SyntaxNode,
13307}
13308impl ReturnFuncOption {
13309 #[inline]
13310 pub fn expr(&self) -> Option<Expr> {
13311 support::child(&self.syntax)
13312 }
13313 #[inline]
13314 pub fn return_token(&self) -> Option<SyntaxToken> {
13315 support::token(&self.syntax, SyntaxKind::RETURN_KW)
13316 }
13317}
13318
13319#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13320pub struct ReturningClause {
13321 pub(crate) syntax: SyntaxNode,
13322}
13323impl ReturningClause {
13324 #[inline]
13325 pub fn returning_option_list(&self) -> Option<ReturningOptionList> {
13326 support::child(&self.syntax)
13327 }
13328 #[inline]
13329 pub fn target_list(&self) -> Option<TargetList> {
13330 support::child(&self.syntax)
13331 }
13332 #[inline]
13333 pub fn returning_token(&self) -> Option<SyntaxToken> {
13334 support::token(&self.syntax, SyntaxKind::RETURNING_KW)
13335 }
13336}
13337
13338#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13339pub struct ReturningOption {
13340 pub(crate) syntax: SyntaxNode,
13341}
13342impl ReturningOption {
13343 #[inline]
13344 pub fn name(&self) -> Option<Name> {
13345 support::child(&self.syntax)
13346 }
13347 #[inline]
13348 pub fn as_token(&self) -> Option<SyntaxToken> {
13349 support::token(&self.syntax, SyntaxKind::AS_KW)
13350 }
13351 #[inline]
13352 pub fn new_token(&self) -> Option<SyntaxToken> {
13353 support::token(&self.syntax, SyntaxKind::NEW_KW)
13354 }
13355 #[inline]
13356 pub fn old_token(&self) -> Option<SyntaxToken> {
13357 support::token(&self.syntax, SyntaxKind::OLD_KW)
13358 }
13359}
13360
13361#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13362pub struct ReturningOptionList {
13363 pub(crate) syntax: SyntaxNode,
13364}
13365impl ReturningOptionList {
13366 #[inline]
13367 pub fn returning_options(&self) -> AstChildren<ReturningOption> {
13368 support::children(&self.syntax)
13369 }
13370 #[inline]
13371 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
13372 support::token(&self.syntax, SyntaxKind::L_PAREN)
13373 }
13374 #[inline]
13375 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
13376 support::token(&self.syntax, SyntaxKind::R_PAREN)
13377 }
13378 #[inline]
13379 pub fn with_token(&self) -> Option<SyntaxToken> {
13380 support::token(&self.syntax, SyntaxKind::WITH_KW)
13381 }
13382}
13383
13384#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13385pub struct Revoke {
13386 pub(crate) syntax: SyntaxNode,
13387}
13388impl Revoke {
13389 #[inline]
13390 pub fn name_refs(&self) -> AstChildren<NameRef> {
13391 support::children(&self.syntax)
13392 }
13393 #[inline]
13394 pub fn paths(&self) -> AstChildren<Path> {
13395 support::children(&self.syntax)
13396 }
13397 #[inline]
13398 pub fn revoke_command_list(&self) -> Option<RevokeCommandList> {
13399 support::child(&self.syntax)
13400 }
13401 #[inline]
13402 pub fn role_ref(&self) -> Option<RoleRef> {
13403 support::child(&self.syntax)
13404 }
13405 #[inline]
13406 pub fn role_ref_list(&self) -> Option<RoleRefList> {
13407 support::child(&self.syntax)
13408 }
13409 #[inline]
13410 pub fn all_token(&self) -> Option<SyntaxToken> {
13411 support::token(&self.syntax, SyntaxKind::ALL_KW)
13412 }
13413 #[inline]
13414 pub fn by_token(&self) -> Option<SyntaxToken> {
13415 support::token(&self.syntax, SyntaxKind::BY_KW)
13416 }
13417 #[inline]
13418 pub fn cascade_token(&self) -> Option<SyntaxToken> {
13419 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
13420 }
13421 #[inline]
13422 pub fn for_token(&self) -> Option<SyntaxToken> {
13423 support::token(&self.syntax, SyntaxKind::FOR_KW)
13424 }
13425 #[inline]
13426 pub fn from_token(&self) -> Option<SyntaxToken> {
13427 support::token(&self.syntax, SyntaxKind::FROM_KW)
13428 }
13429 #[inline]
13430 pub fn grant_token(&self) -> Option<SyntaxToken> {
13431 support::token(&self.syntax, SyntaxKind::GRANT_KW)
13432 }
13433 #[inline]
13434 pub fn granted_token(&self) -> Option<SyntaxToken> {
13435 support::token(&self.syntax, SyntaxKind::GRANTED_KW)
13436 }
13437 #[inline]
13438 pub fn in_token(&self) -> Option<SyntaxToken> {
13439 support::token(&self.syntax, SyntaxKind::IN_KW)
13440 }
13441 #[inline]
13442 pub fn on_token(&self) -> Option<SyntaxToken> {
13443 support::token(&self.syntax, SyntaxKind::ON_KW)
13444 }
13445 #[inline]
13446 pub fn option_token(&self) -> Option<SyntaxToken> {
13447 support::token(&self.syntax, SyntaxKind::OPTION_KW)
13448 }
13449 #[inline]
13450 pub fn privileges_token(&self) -> Option<SyntaxToken> {
13451 support::token(&self.syntax, SyntaxKind::PRIVILEGES_KW)
13452 }
13453 #[inline]
13454 pub fn restrict_token(&self) -> Option<SyntaxToken> {
13455 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
13456 }
13457 #[inline]
13458 pub fn revoke_token(&self) -> Option<SyntaxToken> {
13459 support::token(&self.syntax, SyntaxKind::REVOKE_KW)
13460 }
13461 #[inline]
13462 pub fn schema_token(&self) -> Option<SyntaxToken> {
13463 support::token(&self.syntax, SyntaxKind::SCHEMA_KW)
13464 }
13465 #[inline]
13466 pub fn table_token(&self) -> Option<SyntaxToken> {
13467 support::token(&self.syntax, SyntaxKind::TABLE_KW)
13468 }
13469 #[inline]
13470 pub fn tables_token(&self) -> Option<SyntaxToken> {
13471 support::token(&self.syntax, SyntaxKind::TABLES_KW)
13472 }
13473}
13474
13475#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13476pub struct RevokeCommand {
13477 pub(crate) syntax: SyntaxNode,
13478}
13479impl RevokeCommand {
13480 #[inline]
13481 pub fn role_ref(&self) -> Option<RoleRef> {
13482 support::child(&self.syntax)
13483 }
13484 #[inline]
13485 pub fn all_token(&self) -> Option<SyntaxToken> {
13486 support::token(&self.syntax, SyntaxKind::ALL_KW)
13487 }
13488 #[inline]
13489 pub fn alter_token(&self) -> Option<SyntaxToken> {
13490 support::token(&self.syntax, SyntaxKind::ALTER_KW)
13491 }
13492 #[inline]
13493 pub fn create_token(&self) -> Option<SyntaxToken> {
13494 support::token(&self.syntax, SyntaxKind::CREATE_KW)
13495 }
13496 #[inline]
13497 pub fn delete_token(&self) -> Option<SyntaxToken> {
13498 support::token(&self.syntax, SyntaxKind::DELETE_KW)
13499 }
13500 #[inline]
13501 pub fn execute_token(&self) -> Option<SyntaxToken> {
13502 support::token(&self.syntax, SyntaxKind::EXECUTE_KW)
13503 }
13504 #[inline]
13505 pub fn ident_token(&self) -> Option<SyntaxToken> {
13506 support::token(&self.syntax, SyntaxKind::IDENT)
13507 }
13508 #[inline]
13509 pub fn insert_token(&self) -> Option<SyntaxToken> {
13510 support::token(&self.syntax, SyntaxKind::INSERT_KW)
13511 }
13512 #[inline]
13513 pub fn references_token(&self) -> Option<SyntaxToken> {
13514 support::token(&self.syntax, SyntaxKind::REFERENCES_KW)
13515 }
13516 #[inline]
13517 pub fn select_token(&self) -> Option<SyntaxToken> {
13518 support::token(&self.syntax, SyntaxKind::SELECT_KW)
13519 }
13520 #[inline]
13521 pub fn system_token(&self) -> Option<SyntaxToken> {
13522 support::token(&self.syntax, SyntaxKind::SYSTEM_KW)
13523 }
13524 #[inline]
13525 pub fn temp_token(&self) -> Option<SyntaxToken> {
13526 support::token(&self.syntax, SyntaxKind::TEMP_KW)
13527 }
13528 #[inline]
13529 pub fn temporary_token(&self) -> Option<SyntaxToken> {
13530 support::token(&self.syntax, SyntaxKind::TEMPORARY_KW)
13531 }
13532 #[inline]
13533 pub fn trigger_token(&self) -> Option<SyntaxToken> {
13534 support::token(&self.syntax, SyntaxKind::TRIGGER_KW)
13535 }
13536 #[inline]
13537 pub fn truncate_token(&self) -> Option<SyntaxToken> {
13538 support::token(&self.syntax, SyntaxKind::TRUNCATE_KW)
13539 }
13540 #[inline]
13541 pub fn update_token(&self) -> Option<SyntaxToken> {
13542 support::token(&self.syntax, SyntaxKind::UPDATE_KW)
13543 }
13544}
13545
13546#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13547pub struct RevokeCommandList {
13548 pub(crate) syntax: SyntaxNode,
13549}
13550impl RevokeCommandList {
13551 #[inline]
13552 pub fn revoke_commands(&self) -> AstChildren<RevokeCommand> {
13553 support::children(&self.syntax)
13554 }
13555}
13556
13557#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13558pub struct RevokeDefaultPrivileges {
13559 pub(crate) syntax: SyntaxNode,
13560}
13561impl RevokeDefaultPrivileges {
13562 #[inline]
13563 pub fn privilege_target(&self) -> Option<PrivilegeTarget> {
13564 support::child(&self.syntax)
13565 }
13566 #[inline]
13567 pub fn privileges(&self) -> Option<Privileges> {
13568 support::child(&self.syntax)
13569 }
13570 #[inline]
13571 pub fn role_ref_list(&self) -> Option<RoleRefList> {
13572 support::child(&self.syntax)
13573 }
13574 #[inline]
13575 pub fn cascade_token(&self) -> Option<SyntaxToken> {
13576 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
13577 }
13578 #[inline]
13579 pub fn for_token(&self) -> Option<SyntaxToken> {
13580 support::token(&self.syntax, SyntaxKind::FOR_KW)
13581 }
13582 #[inline]
13583 pub fn from_token(&self) -> Option<SyntaxToken> {
13584 support::token(&self.syntax, SyntaxKind::FROM_KW)
13585 }
13586 #[inline]
13587 pub fn grant_token(&self) -> Option<SyntaxToken> {
13588 support::token(&self.syntax, SyntaxKind::GRANT_KW)
13589 }
13590 #[inline]
13591 pub fn on_token(&self) -> Option<SyntaxToken> {
13592 support::token(&self.syntax, SyntaxKind::ON_KW)
13593 }
13594 #[inline]
13595 pub fn option_token(&self) -> Option<SyntaxToken> {
13596 support::token(&self.syntax, SyntaxKind::OPTION_KW)
13597 }
13598 #[inline]
13599 pub fn restrict_token(&self) -> Option<SyntaxToken> {
13600 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
13601 }
13602 #[inline]
13603 pub fn revoke_token(&self) -> Option<SyntaxToken> {
13604 support::token(&self.syntax, SyntaxKind::REVOKE_KW)
13605 }
13606}
13607
13608#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13609pub struct Role {
13610 pub(crate) syntax: SyntaxNode,
13611}
13612impl Role {
13613 #[inline]
13614 pub fn name(&self) -> Option<Name> {
13615 support::child(&self.syntax)
13616 }
13617 #[inline]
13618 pub fn current_role_token(&self) -> Option<SyntaxToken> {
13619 support::token(&self.syntax, SyntaxKind::CURRENT_ROLE_KW)
13620 }
13621 #[inline]
13622 pub fn current_user_token(&self) -> Option<SyntaxToken> {
13623 support::token(&self.syntax, SyntaxKind::CURRENT_USER_KW)
13624 }
13625 #[inline]
13626 pub fn group_token(&self) -> Option<SyntaxToken> {
13627 support::token(&self.syntax, SyntaxKind::GROUP_KW)
13628 }
13629 #[inline]
13630 pub fn session_user_token(&self) -> Option<SyntaxToken> {
13631 support::token(&self.syntax, SyntaxKind::SESSION_USER_KW)
13632 }
13633}
13634
13635#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13636pub struct RoleOption {
13637 pub(crate) syntax: SyntaxNode,
13638}
13639impl RoleOption {
13640 #[inline]
13641 pub fn inherit_token(&self) -> Option<SyntaxToken> {
13642 support::token(&self.syntax, SyntaxKind::INHERIT_KW)
13643 }
13644}
13645
13646#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13647pub struct RoleOptionList {
13648 pub(crate) syntax: SyntaxNode,
13649}
13650impl RoleOptionList {
13651 #[inline]
13652 pub fn role_options(&self) -> AstChildren<RoleOption> {
13653 support::children(&self.syntax)
13654 }
13655 #[inline]
13656 pub fn with_token(&self) -> Option<SyntaxToken> {
13657 support::token(&self.syntax, SyntaxKind::WITH_KW)
13658 }
13659}
13660
13661#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13662pub struct RoleRef {
13663 pub(crate) syntax: SyntaxNode,
13664}
13665impl RoleRef {
13666 #[inline]
13667 pub fn name_ref(&self) -> Option<NameRef> {
13668 support::child(&self.syntax)
13669 }
13670 #[inline]
13671 pub fn current_role_token(&self) -> Option<SyntaxToken> {
13672 support::token(&self.syntax, SyntaxKind::CURRENT_ROLE_KW)
13673 }
13674 #[inline]
13675 pub fn current_user_token(&self) -> Option<SyntaxToken> {
13676 support::token(&self.syntax, SyntaxKind::CURRENT_USER_KW)
13677 }
13678 #[inline]
13679 pub fn group_token(&self) -> Option<SyntaxToken> {
13680 support::token(&self.syntax, SyntaxKind::GROUP_KW)
13681 }
13682 #[inline]
13683 pub fn session_user_token(&self) -> Option<SyntaxToken> {
13684 support::token(&self.syntax, SyntaxKind::SESSION_USER_KW)
13685 }
13686}
13687
13688#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13689pub struct RoleRefList {
13690 pub(crate) syntax: SyntaxNode,
13691}
13692impl RoleRefList {
13693 #[inline]
13694 pub fn role_refs(&self) -> AstChildren<RoleRef> {
13695 support::children(&self.syntax)
13696 }
13697}
13698
13699#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13700pub struct Rollback {
13701 pub(crate) syntax: SyntaxNode,
13702}
13703impl Rollback {
13704 #[inline]
13705 pub fn literal(&self) -> Option<Literal> {
13706 support::child(&self.syntax)
13707 }
13708 #[inline]
13709 pub fn name_ref(&self) -> Option<NameRef> {
13710 support::child(&self.syntax)
13711 }
13712 #[inline]
13713 pub fn abort_token(&self) -> Option<SyntaxToken> {
13714 support::token(&self.syntax, SyntaxKind::ABORT_KW)
13715 }
13716 #[inline]
13717 pub fn and_token(&self) -> Option<SyntaxToken> {
13718 support::token(&self.syntax, SyntaxKind::AND_KW)
13719 }
13720 #[inline]
13721 pub fn chain_token(&self) -> Option<SyntaxToken> {
13722 support::token(&self.syntax, SyntaxKind::CHAIN_KW)
13723 }
13724 #[inline]
13725 pub fn no_token(&self) -> Option<SyntaxToken> {
13726 support::token(&self.syntax, SyntaxKind::NO_KW)
13727 }
13728 #[inline]
13729 pub fn prepared_token(&self) -> Option<SyntaxToken> {
13730 support::token(&self.syntax, SyntaxKind::PREPARED_KW)
13731 }
13732 #[inline]
13733 pub fn rollback_token(&self) -> Option<SyntaxToken> {
13734 support::token(&self.syntax, SyntaxKind::ROLLBACK_KW)
13735 }
13736 #[inline]
13737 pub fn savepoint_token(&self) -> Option<SyntaxToken> {
13738 support::token(&self.syntax, SyntaxKind::SAVEPOINT_KW)
13739 }
13740 #[inline]
13741 pub fn to_token(&self) -> Option<SyntaxToken> {
13742 support::token(&self.syntax, SyntaxKind::TO_KW)
13743 }
13744 #[inline]
13745 pub fn transaction_token(&self) -> Option<SyntaxToken> {
13746 support::token(&self.syntax, SyntaxKind::TRANSACTION_KW)
13747 }
13748 #[inline]
13749 pub fn work_token(&self) -> Option<SyntaxToken> {
13750 support::token(&self.syntax, SyntaxKind::WORK_KW)
13751 }
13752}
13753
13754#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13755pub struct Row {
13756 pub(crate) syntax: SyntaxNode,
13757}
13758impl Row {
13759 #[inline]
13760 pub fn exprs(&self) -> AstChildren<Expr> {
13761 support::children(&self.syntax)
13762 }
13763}
13764
13765#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13766pub struct RowList {
13767 pub(crate) syntax: SyntaxNode,
13768}
13769impl RowList {
13770 #[inline]
13771 pub fn rows(&self) -> AstChildren<Row> {
13772 support::children(&self.syntax)
13773 }
13774}
13775
13776#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13777pub struct RowsFuncOption {
13778 pub(crate) syntax: SyntaxNode,
13779}
13780impl RowsFuncOption {
13781 #[inline]
13782 pub fn rows_token(&self) -> Option<SyntaxToken> {
13783 support::token(&self.syntax, SyntaxKind::ROWS_KW)
13784 }
13785}
13786
13787#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13788pub struct Savepoint {
13789 pub(crate) syntax: SyntaxNode,
13790}
13791impl Savepoint {
13792 #[inline]
13793 pub fn name(&self) -> Option<Name> {
13794 support::child(&self.syntax)
13795 }
13796 #[inline]
13797 pub fn savepoint_token(&self) -> Option<SyntaxToken> {
13798 support::token(&self.syntax, SyntaxKind::SAVEPOINT_KW)
13799 }
13800}
13801
13802#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13803pub struct SecurityFuncOption {
13804 pub(crate) syntax: SyntaxNode,
13805}
13806impl SecurityFuncOption {
13807 #[inline]
13808 pub fn definer_token(&self) -> Option<SyntaxToken> {
13809 support::token(&self.syntax, SyntaxKind::DEFINER_KW)
13810 }
13811 #[inline]
13812 pub fn invoker_token(&self) -> Option<SyntaxToken> {
13813 support::token(&self.syntax, SyntaxKind::INVOKER_KW)
13814 }
13815 #[inline]
13816 pub fn security_token(&self) -> Option<SyntaxToken> {
13817 support::token(&self.syntax, SyntaxKind::SECURITY_KW)
13818 }
13819}
13820
13821#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13822pub struct SecurityLabel {
13823 pub(crate) syntax: SyntaxNode,
13824}
13825impl SecurityLabel {
13826 #[inline]
13827 pub fn aggregate(&self) -> Option<Aggregate> {
13828 support::child(&self.syntax)
13829 }
13830 #[inline]
13831 pub fn for_provider(&self) -> Option<ForProvider> {
13832 support::child(&self.syntax)
13833 }
13834 #[inline]
13835 pub fn function_sig(&self) -> Option<FunctionSig> {
13836 support::child(&self.syntax)
13837 }
13838 #[inline]
13839 pub fn literal(&self) -> Option<Literal> {
13840 support::child(&self.syntax)
13841 }
13842 #[inline]
13843 pub fn path(&self) -> Option<Path> {
13844 support::child(&self.syntax)
13845 }
13846 #[inline]
13847 pub fn aggregate_token(&self) -> Option<SyntaxToken> {
13848 support::token(&self.syntax, SyntaxKind::AGGREGATE_KW)
13849 }
13850 #[inline]
13851 pub fn column_token(&self) -> Option<SyntaxToken> {
13852 support::token(&self.syntax, SyntaxKind::COLUMN_KW)
13853 }
13854 #[inline]
13855 pub fn database_token(&self) -> Option<SyntaxToken> {
13856 support::token(&self.syntax, SyntaxKind::DATABASE_KW)
13857 }
13858 #[inline]
13859 pub fn domain_token(&self) -> Option<SyntaxToken> {
13860 support::token(&self.syntax, SyntaxKind::DOMAIN_KW)
13861 }
13862 #[inline]
13863 pub fn event_token(&self) -> Option<SyntaxToken> {
13864 support::token(&self.syntax, SyntaxKind::EVENT_KW)
13865 }
13866 #[inline]
13867 pub fn foreign_token(&self) -> Option<SyntaxToken> {
13868 support::token(&self.syntax, SyntaxKind::FOREIGN_KW)
13869 }
13870 #[inline]
13871 pub fn function_token(&self) -> Option<SyntaxToken> {
13872 support::token(&self.syntax, SyntaxKind::FUNCTION_KW)
13873 }
13874 #[inline]
13875 pub fn is_token(&self) -> Option<SyntaxToken> {
13876 support::token(&self.syntax, SyntaxKind::IS_KW)
13877 }
13878 #[inline]
13879 pub fn label_token(&self) -> Option<SyntaxToken> {
13880 support::token(&self.syntax, SyntaxKind::LABEL_KW)
13881 }
13882 #[inline]
13883 pub fn language_token(&self) -> Option<SyntaxToken> {
13884 support::token(&self.syntax, SyntaxKind::LANGUAGE_KW)
13885 }
13886 #[inline]
13887 pub fn large_token(&self) -> Option<SyntaxToken> {
13888 support::token(&self.syntax, SyntaxKind::LARGE_KW)
13889 }
13890 #[inline]
13891 pub fn materialized_token(&self) -> Option<SyntaxToken> {
13892 support::token(&self.syntax, SyntaxKind::MATERIALIZED_KW)
13893 }
13894 #[inline]
13895 pub fn null_token(&self) -> Option<SyntaxToken> {
13896 support::token(&self.syntax, SyntaxKind::NULL_KW)
13897 }
13898 #[inline]
13899 pub fn object_token(&self) -> Option<SyntaxToken> {
13900 support::token(&self.syntax, SyntaxKind::OBJECT_KW)
13901 }
13902 #[inline]
13903 pub fn on_token(&self) -> Option<SyntaxToken> {
13904 support::token(&self.syntax, SyntaxKind::ON_KW)
13905 }
13906 #[inline]
13907 pub fn procedural_token(&self) -> Option<SyntaxToken> {
13908 support::token(&self.syntax, SyntaxKind::PROCEDURAL_KW)
13909 }
13910 #[inline]
13911 pub fn procedure_token(&self) -> Option<SyntaxToken> {
13912 support::token(&self.syntax, SyntaxKind::PROCEDURE_KW)
13913 }
13914 #[inline]
13915 pub fn publication_token(&self) -> Option<SyntaxToken> {
13916 support::token(&self.syntax, SyntaxKind::PUBLICATION_KW)
13917 }
13918 #[inline]
13919 pub fn role_token(&self) -> Option<SyntaxToken> {
13920 support::token(&self.syntax, SyntaxKind::ROLE_KW)
13921 }
13922 #[inline]
13923 pub fn routine_token(&self) -> Option<SyntaxToken> {
13924 support::token(&self.syntax, SyntaxKind::ROUTINE_KW)
13925 }
13926 #[inline]
13927 pub fn schema_token(&self) -> Option<SyntaxToken> {
13928 support::token(&self.syntax, SyntaxKind::SCHEMA_KW)
13929 }
13930 #[inline]
13931 pub fn security_token(&self) -> Option<SyntaxToken> {
13932 support::token(&self.syntax, SyntaxKind::SECURITY_KW)
13933 }
13934 #[inline]
13935 pub fn sequence_token(&self) -> Option<SyntaxToken> {
13936 support::token(&self.syntax, SyntaxKind::SEQUENCE_KW)
13937 }
13938 #[inline]
13939 pub fn subscription_token(&self) -> Option<SyntaxToken> {
13940 support::token(&self.syntax, SyntaxKind::SUBSCRIPTION_KW)
13941 }
13942 #[inline]
13943 pub fn table_token(&self) -> Option<SyntaxToken> {
13944 support::token(&self.syntax, SyntaxKind::TABLE_KW)
13945 }
13946 #[inline]
13947 pub fn tablespace_token(&self) -> Option<SyntaxToken> {
13948 support::token(&self.syntax, SyntaxKind::TABLESPACE_KW)
13949 }
13950 #[inline]
13951 pub fn trigger_token(&self) -> Option<SyntaxToken> {
13952 support::token(&self.syntax, SyntaxKind::TRIGGER_KW)
13953 }
13954 #[inline]
13955 pub fn type_token(&self) -> Option<SyntaxToken> {
13956 support::token(&self.syntax, SyntaxKind::TYPE_KW)
13957 }
13958 #[inline]
13959 pub fn view_token(&self) -> Option<SyntaxToken> {
13960 support::token(&self.syntax, SyntaxKind::VIEW_KW)
13961 }
13962}
13963
13964#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13965pub struct Select {
13966 pub(crate) syntax: SyntaxNode,
13967}
13968impl Select {
13969 #[inline]
13970 pub fn fetch_clause(&self) -> Option<FetchClause> {
13971 support::child(&self.syntax)
13972 }
13973 #[inline]
13974 pub fn filter_clause(&self) -> Option<FilterClause> {
13975 support::child(&self.syntax)
13976 }
13977 #[inline]
13978 pub fn from_clause(&self) -> Option<FromClause> {
13979 support::child(&self.syntax)
13980 }
13981 #[inline]
13982 pub fn group_by_clause(&self) -> Option<GroupByClause> {
13983 support::child(&self.syntax)
13984 }
13985 #[inline]
13986 pub fn having_clause(&self) -> Option<HavingClause> {
13987 support::child(&self.syntax)
13988 }
13989 #[inline]
13990 pub fn limit_clause(&self) -> Option<LimitClause> {
13991 support::child(&self.syntax)
13992 }
13993 #[inline]
13994 pub fn locking_clauses(&self) -> AstChildren<LockingClause> {
13995 support::children(&self.syntax)
13996 }
13997 #[inline]
13998 pub fn offset_clause(&self) -> Option<OffsetClause> {
13999 support::child(&self.syntax)
14000 }
14001 #[inline]
14002 pub fn order_by_clause(&self) -> Option<OrderByClause> {
14003 support::child(&self.syntax)
14004 }
14005 #[inline]
14006 pub fn select_clause(&self) -> Option<SelectClause> {
14007 support::child(&self.syntax)
14008 }
14009 #[inline]
14010 pub fn where_clause(&self) -> Option<WhereClause> {
14011 support::child(&self.syntax)
14012 }
14013 #[inline]
14014 pub fn window_clause(&self) -> Option<WindowClause> {
14015 support::child(&self.syntax)
14016 }
14017 #[inline]
14018 pub fn with_clause(&self) -> Option<WithClause> {
14019 support::child(&self.syntax)
14020 }
14021}
14022
14023#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14024pub struct SelectClause {
14025 pub(crate) syntax: SyntaxNode,
14026}
14027impl SelectClause {
14028 #[inline]
14029 pub fn distinct_clause(&self) -> Option<DistinctClause> {
14030 support::child(&self.syntax)
14031 }
14032 #[inline]
14033 pub fn target_list(&self) -> Option<TargetList> {
14034 support::child(&self.syntax)
14035 }
14036 #[inline]
14037 pub fn all_token(&self) -> Option<SyntaxToken> {
14038 support::token(&self.syntax, SyntaxKind::ALL_KW)
14039 }
14040 #[inline]
14041 pub fn select_token(&self) -> Option<SyntaxToken> {
14042 support::token(&self.syntax, SyntaxKind::SELECT_KW)
14043 }
14044}
14045
14046#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14047pub struct SelectInto {
14048 pub(crate) syntax: SyntaxNode,
14049}
14050impl SelectInto {
14051 #[inline]
14052 pub fn filter_clause(&self) -> Option<FilterClause> {
14053 support::child(&self.syntax)
14054 }
14055 #[inline]
14056 pub fn from_clause(&self) -> Option<FromClause> {
14057 support::child(&self.syntax)
14058 }
14059 #[inline]
14060 pub fn group_by_clause(&self) -> Option<GroupByClause> {
14061 support::child(&self.syntax)
14062 }
14063 #[inline]
14064 pub fn having_clause(&self) -> Option<HavingClause> {
14065 support::child(&self.syntax)
14066 }
14067 #[inline]
14068 pub fn into_clause(&self) -> Option<IntoClause> {
14069 support::child(&self.syntax)
14070 }
14071 #[inline]
14072 pub fn limit_clause(&self) -> Option<LimitClause> {
14073 support::child(&self.syntax)
14074 }
14075 #[inline]
14076 pub fn locking_clauses(&self) -> AstChildren<LockingClause> {
14077 support::children(&self.syntax)
14078 }
14079 #[inline]
14080 pub fn offset_clause(&self) -> Option<OffsetClause> {
14081 support::child(&self.syntax)
14082 }
14083 #[inline]
14084 pub fn order_by_clause(&self) -> Option<OrderByClause> {
14085 support::child(&self.syntax)
14086 }
14087 #[inline]
14088 pub fn select_clause(&self) -> Option<SelectClause> {
14089 support::child(&self.syntax)
14090 }
14091 #[inline]
14092 pub fn where_clause(&self) -> Option<WhereClause> {
14093 support::child(&self.syntax)
14094 }
14095 #[inline]
14096 pub fn window_clause(&self) -> Option<WindowClause> {
14097 support::child(&self.syntax)
14098 }
14099 #[inline]
14100 pub fn with_clause(&self) -> Option<WithClause> {
14101 support::child(&self.syntax)
14102 }
14103}
14104
14105#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14106pub struct SequenceOption {
14107 pub(crate) syntax: SyntaxNode,
14108}
14109impl SequenceOption {
14110 #[inline]
14111 pub fn literal(&self) -> Option<Literal> {
14112 support::child(&self.syntax)
14113 }
14114 #[inline]
14115 pub fn name_ref(&self) -> Option<NameRef> {
14116 support::child(&self.syntax)
14117 }
14118 #[inline]
14119 pub fn path(&self) -> Option<Path> {
14120 support::child(&self.syntax)
14121 }
14122 #[inline]
14123 pub fn ty(&self) -> Option<Type> {
14124 support::child(&self.syntax)
14125 }
14126 #[inline]
14127 pub fn as_token(&self) -> Option<SyntaxToken> {
14128 support::token(&self.syntax, SyntaxKind::AS_KW)
14129 }
14130 #[inline]
14131 pub fn by_token(&self) -> Option<SyntaxToken> {
14132 support::token(&self.syntax, SyntaxKind::BY_KW)
14133 }
14134 #[inline]
14135 pub fn cycle_token(&self) -> Option<SyntaxToken> {
14136 support::token(&self.syntax, SyntaxKind::CYCLE_KW)
14137 }
14138 #[inline]
14139 pub fn increment_token(&self) -> Option<SyntaxToken> {
14140 support::token(&self.syntax, SyntaxKind::INCREMENT_KW)
14141 }
14142 #[inline]
14143 pub fn logged_token(&self) -> Option<SyntaxToken> {
14144 support::token(&self.syntax, SyntaxKind::LOGGED_KW)
14145 }
14146 #[inline]
14147 pub fn maxvalue_token(&self) -> Option<SyntaxToken> {
14148 support::token(&self.syntax, SyntaxKind::MAXVALUE_KW)
14149 }
14150 #[inline]
14151 pub fn minvalue_token(&self) -> Option<SyntaxToken> {
14152 support::token(&self.syntax, SyntaxKind::MINVALUE_KW)
14153 }
14154 #[inline]
14155 pub fn name_token(&self) -> Option<SyntaxToken> {
14156 support::token(&self.syntax, SyntaxKind::NAME_KW)
14157 }
14158 #[inline]
14159 pub fn no_token(&self) -> Option<SyntaxToken> {
14160 support::token(&self.syntax, SyntaxKind::NO_KW)
14161 }
14162 #[inline]
14163 pub fn none_token(&self) -> Option<SyntaxToken> {
14164 support::token(&self.syntax, SyntaxKind::NONE_KW)
14165 }
14166 #[inline]
14167 pub fn owned_token(&self) -> Option<SyntaxToken> {
14168 support::token(&self.syntax, SyntaxKind::OWNED_KW)
14169 }
14170 #[inline]
14171 pub fn restart_token(&self) -> Option<SyntaxToken> {
14172 support::token(&self.syntax, SyntaxKind::RESTART_KW)
14173 }
14174 #[inline]
14175 pub fn sequence_token(&self) -> Option<SyntaxToken> {
14176 support::token(&self.syntax, SyntaxKind::SEQUENCE_KW)
14177 }
14178 #[inline]
14179 pub fn start_token(&self) -> Option<SyntaxToken> {
14180 support::token(&self.syntax, SyntaxKind::START_KW)
14181 }
14182 #[inline]
14183 pub fn unlogged_token(&self) -> Option<SyntaxToken> {
14184 support::token(&self.syntax, SyntaxKind::UNLOGGED_KW)
14185 }
14186 #[inline]
14187 pub fn with_token(&self) -> Option<SyntaxToken> {
14188 support::token(&self.syntax, SyntaxKind::WITH_KW)
14189 }
14190}
14191
14192#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14193pub struct SequenceOptionList {
14194 pub(crate) syntax: SyntaxNode,
14195}
14196impl SequenceOptionList {
14197 #[inline]
14198 pub fn sequence_options(&self) -> AstChildren<SequenceOption> {
14199 support::children(&self.syntax)
14200 }
14201 #[inline]
14202 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
14203 support::token(&self.syntax, SyntaxKind::L_PAREN)
14204 }
14205 #[inline]
14206 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
14207 support::token(&self.syntax, SyntaxKind::R_PAREN)
14208 }
14209}
14210
14211#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14212pub struct Serializable {
14213 pub(crate) syntax: SyntaxNode,
14214}
14215impl Serializable {
14216 #[inline]
14217 pub fn isolation_token(&self) -> Option<SyntaxToken> {
14218 support::token(&self.syntax, SyntaxKind::ISOLATION_KW)
14219 }
14220 #[inline]
14221 pub fn level_token(&self) -> Option<SyntaxToken> {
14222 support::token(&self.syntax, SyntaxKind::LEVEL_KW)
14223 }
14224 #[inline]
14225 pub fn serializable_token(&self) -> Option<SyntaxToken> {
14226 support::token(&self.syntax, SyntaxKind::SERIALIZABLE_KW)
14227 }
14228}
14229
14230#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14231pub struct ServerName {
14232 pub(crate) syntax: SyntaxNode,
14233}
14234impl ServerName {
14235 #[inline]
14236 pub fn name_ref(&self) -> Option<NameRef> {
14237 support::child(&self.syntax)
14238 }
14239 #[inline]
14240 pub fn server_token(&self) -> Option<SyntaxToken> {
14241 support::token(&self.syntax, SyntaxKind::SERVER_KW)
14242 }
14243}
14244
14245#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14246pub struct Set {
14247 pub(crate) syntax: SyntaxNode,
14248}
14249impl Set {
14250 #[inline]
14251 pub fn config_value(&self) -> Option<ConfigValue> {
14252 support::child(&self.syntax)
14253 }
14254 #[inline]
14255 pub fn config_values(&self) -> AstChildren<ConfigValue> {
14256 support::children(&self.syntax)
14257 }
14258 #[inline]
14259 pub fn literal(&self) -> Option<Literal> {
14260 support::child(&self.syntax)
14261 }
14262 #[inline]
14263 pub fn path(&self) -> Option<Path> {
14264 support::child(&self.syntax)
14265 }
14266 #[inline]
14267 pub fn eq_token(&self) -> Option<SyntaxToken> {
14268 support::token(&self.syntax, SyntaxKind::EQ)
14269 }
14270 #[inline]
14271 pub fn catalog_token(&self) -> Option<SyntaxToken> {
14272 support::token(&self.syntax, SyntaxKind::CATALOG_KW)
14273 }
14274 #[inline]
14275 pub fn content_token(&self) -> Option<SyntaxToken> {
14276 support::token(&self.syntax, SyntaxKind::CONTENT_KW)
14277 }
14278 #[inline]
14279 pub fn current_token(&self) -> Option<SyntaxToken> {
14280 support::token(&self.syntax, SyntaxKind::CURRENT_KW)
14281 }
14282 #[inline]
14283 pub fn default_token(&self) -> Option<SyntaxToken> {
14284 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
14285 }
14286 #[inline]
14287 pub fn document_token(&self) -> Option<SyntaxToken> {
14288 support::token(&self.syntax, SyntaxKind::DOCUMENT_KW)
14289 }
14290 #[inline]
14291 pub fn from_token(&self) -> Option<SyntaxToken> {
14292 support::token(&self.syntax, SyntaxKind::FROM_KW)
14293 }
14294 #[inline]
14295 pub fn local_token(&self) -> Option<SyntaxToken> {
14296 support::token(&self.syntax, SyntaxKind::LOCAL_KW)
14297 }
14298 #[inline]
14299 pub fn option_token(&self) -> Option<SyntaxToken> {
14300 support::token(&self.syntax, SyntaxKind::OPTION_KW)
14301 }
14302 #[inline]
14303 pub fn schema_token(&self) -> Option<SyntaxToken> {
14304 support::token(&self.syntax, SyntaxKind::SCHEMA_KW)
14305 }
14306 #[inline]
14307 pub fn session_token(&self) -> Option<SyntaxToken> {
14308 support::token(&self.syntax, SyntaxKind::SESSION_KW)
14309 }
14310 #[inline]
14311 pub fn set_token(&self) -> Option<SyntaxToken> {
14312 support::token(&self.syntax, SyntaxKind::SET_KW)
14313 }
14314 #[inline]
14315 pub fn time_token(&self) -> Option<SyntaxToken> {
14316 support::token(&self.syntax, SyntaxKind::TIME_KW)
14317 }
14318 #[inline]
14319 pub fn to_token(&self) -> Option<SyntaxToken> {
14320 support::token(&self.syntax, SyntaxKind::TO_KW)
14321 }
14322 #[inline]
14323 pub fn xml_token(&self) -> Option<SyntaxToken> {
14324 support::token(&self.syntax, SyntaxKind::XML_KW)
14325 }
14326 #[inline]
14327 pub fn zone_token(&self) -> Option<SyntaxToken> {
14328 support::token(&self.syntax, SyntaxKind::ZONE_KW)
14329 }
14330}
14331
14332#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14333pub struct SetAccessMethod {
14334 pub(crate) syntax: SyntaxNode,
14335}
14336impl SetAccessMethod {
14337 #[inline]
14338 pub fn name_ref(&self) -> Option<NameRef> {
14339 support::child(&self.syntax)
14340 }
14341 #[inline]
14342 pub fn access_token(&self) -> Option<SyntaxToken> {
14343 support::token(&self.syntax, SyntaxKind::ACCESS_KW)
14344 }
14345 #[inline]
14346 pub fn method_token(&self) -> Option<SyntaxToken> {
14347 support::token(&self.syntax, SyntaxKind::METHOD_KW)
14348 }
14349 #[inline]
14350 pub fn set_token(&self) -> Option<SyntaxToken> {
14351 support::token(&self.syntax, SyntaxKind::SET_KW)
14352 }
14353}
14354
14355#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14356pub struct SetClause {
14357 pub(crate) syntax: SyntaxNode,
14358}
14359impl SetClause {
14360 #[inline]
14361 pub fn set_column_list(&self) -> Option<SetColumnList> {
14362 support::child(&self.syntax)
14363 }
14364 #[inline]
14365 pub fn set_token(&self) -> Option<SyntaxToken> {
14366 support::token(&self.syntax, SyntaxKind::SET_KW)
14367 }
14368}
14369
14370#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14371pub struct SetColumnList {
14372 pub(crate) syntax: SyntaxNode,
14373}
14374impl SetColumnList {
14375 #[inline]
14376 pub fn set_columns(&self) -> AstChildren<SetColumn> {
14377 support::children(&self.syntax)
14378 }
14379}
14380
14381#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14382pub struct SetCompression {
14383 pub(crate) syntax: SyntaxNode,
14384}
14385impl SetCompression {
14386 #[inline]
14387 pub fn compression_token(&self) -> Option<SyntaxToken> {
14388 support::token(&self.syntax, SyntaxKind::COMPRESSION_KW)
14389 }
14390 #[inline]
14391 pub fn set_token(&self) -> Option<SyntaxToken> {
14392 support::token(&self.syntax, SyntaxKind::SET_KW)
14393 }
14394}
14395
14396#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14397pub struct SetConfigParam {
14398 pub(crate) syntax: SyntaxNode,
14399}
14400impl SetConfigParam {
14401 #[inline]
14402 pub fn path(&self) -> Option<Path> {
14403 support::child(&self.syntax)
14404 }
14405 #[inline]
14406 pub fn set_token(&self) -> Option<SyntaxToken> {
14407 support::token(&self.syntax, SyntaxKind::SET_KW)
14408 }
14409}
14410
14411#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14412pub struct SetConstraints {
14413 pub(crate) syntax: SyntaxNode,
14414}
14415impl SetConstraints {
14416 #[inline]
14417 pub fn paths(&self) -> AstChildren<Path> {
14418 support::children(&self.syntax)
14419 }
14420 #[inline]
14421 pub fn all_token(&self) -> Option<SyntaxToken> {
14422 support::token(&self.syntax, SyntaxKind::ALL_KW)
14423 }
14424 #[inline]
14425 pub fn constraints_token(&self) -> Option<SyntaxToken> {
14426 support::token(&self.syntax, SyntaxKind::CONSTRAINTS_KW)
14427 }
14428 #[inline]
14429 pub fn deferred_token(&self) -> Option<SyntaxToken> {
14430 support::token(&self.syntax, SyntaxKind::DEFERRED_KW)
14431 }
14432 #[inline]
14433 pub fn immediate_token(&self) -> Option<SyntaxToken> {
14434 support::token(&self.syntax, SyntaxKind::IMMEDIATE_KW)
14435 }
14436 #[inline]
14437 pub fn set_token(&self) -> Option<SyntaxToken> {
14438 support::token(&self.syntax, SyntaxKind::SET_KW)
14439 }
14440}
14441
14442#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14443pub struct SetDefault {
14444 pub(crate) syntax: SyntaxNode,
14445}
14446impl SetDefault {
14447 #[inline]
14448 pub fn expr(&self) -> Option<Expr> {
14449 support::child(&self.syntax)
14450 }
14451 #[inline]
14452 pub fn default_token(&self) -> Option<SyntaxToken> {
14453 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
14454 }
14455 #[inline]
14456 pub fn set_token(&self) -> Option<SyntaxToken> {
14457 support::token(&self.syntax, SyntaxKind::SET_KW)
14458 }
14459}
14460
14461#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14462pub struct SetDefaultColumns {
14463 pub(crate) syntax: SyntaxNode,
14464}
14465impl SetDefaultColumns {
14466 #[inline]
14467 pub fn column_list(&self) -> Option<ColumnList> {
14468 support::child(&self.syntax)
14469 }
14470 #[inline]
14471 pub fn default_token(&self) -> Option<SyntaxToken> {
14472 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
14473 }
14474 #[inline]
14475 pub fn set_token(&self) -> Option<SyntaxToken> {
14476 support::token(&self.syntax, SyntaxKind::SET_KW)
14477 }
14478}
14479
14480#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14481pub struct SetExpr {
14482 pub(crate) syntax: SyntaxNode,
14483}
14484impl SetExpr {
14485 #[inline]
14486 pub fn expr(&self) -> Option<Expr> {
14487 support::child(&self.syntax)
14488 }
14489 #[inline]
14490 pub fn default_token(&self) -> Option<SyntaxToken> {
14491 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
14492 }
14493}
14494
14495#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14496pub struct SetExprList {
14497 pub(crate) syntax: SyntaxNode,
14498}
14499impl SetExprList {
14500 #[inline]
14501 pub fn set_exprs(&self) -> AstChildren<SetExpr> {
14502 support::children(&self.syntax)
14503 }
14504 #[inline]
14505 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
14506 support::token(&self.syntax, SyntaxKind::L_PAREN)
14507 }
14508 #[inline]
14509 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
14510 support::token(&self.syntax, SyntaxKind::R_PAREN)
14511 }
14512 #[inline]
14513 pub fn row_token(&self) -> Option<SyntaxToken> {
14514 support::token(&self.syntax, SyntaxKind::ROW_KW)
14515 }
14516}
14517
14518#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14519pub struct SetExpression {
14520 pub(crate) syntax: SyntaxNode,
14521}
14522impl SetExpression {
14523 #[inline]
14524 pub fn expr(&self) -> Option<Expr> {
14525 support::child(&self.syntax)
14526 }
14527 #[inline]
14528 pub fn expression_token(&self) -> Option<SyntaxToken> {
14529 support::token(&self.syntax, SyntaxKind::EXPRESSION_KW)
14530 }
14531 #[inline]
14532 pub fn set_token(&self) -> Option<SyntaxToken> {
14533 support::token(&self.syntax, SyntaxKind::SET_KW)
14534 }
14535}
14536
14537#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14538pub struct SetFuncOption {
14539 pub(crate) syntax: SyntaxNode,
14540}
14541impl SetFuncOption {
14542 #[inline]
14543 pub fn set_token(&self) -> Option<SyntaxToken> {
14544 support::token(&self.syntax, SyntaxKind::SET_KW)
14545 }
14546}
14547
14548#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14549pub struct SetGenerated {
14550 pub(crate) syntax: SyntaxNode,
14551}
14552impl SetGenerated {
14553 #[inline]
14554 pub fn set_token(&self) -> Option<SyntaxToken> {
14555 support::token(&self.syntax, SyntaxKind::SET_KW)
14556 }
14557}
14558
14559#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14560pub struct SetGeneratedOptions {
14561 pub(crate) syntax: SyntaxNode,
14562}
14563impl SetGeneratedOptions {
14564 #[inline]
14565 pub fn generated_token(&self) -> Option<SyntaxToken> {
14566 support::token(&self.syntax, SyntaxKind::GENERATED_KW)
14567 }
14568 #[inline]
14569 pub fn set_token(&self) -> Option<SyntaxToken> {
14570 support::token(&self.syntax, SyntaxKind::SET_KW)
14571 }
14572}
14573
14574#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14575pub struct SetLogged {
14576 pub(crate) syntax: SyntaxNode,
14577}
14578impl SetLogged {
14579 #[inline]
14580 pub fn logged_token(&self) -> Option<SyntaxToken> {
14581 support::token(&self.syntax, SyntaxKind::LOGGED_KW)
14582 }
14583 #[inline]
14584 pub fn set_token(&self) -> Option<SyntaxToken> {
14585 support::token(&self.syntax, SyntaxKind::SET_KW)
14586 }
14587}
14588
14589#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14590pub struct SetMultipleColumns {
14591 pub(crate) syntax: SyntaxNode,
14592}
14593impl SetMultipleColumns {
14594 #[inline]
14595 pub fn column_list(&self) -> Option<ColumnList> {
14596 support::child(&self.syntax)
14597 }
14598 #[inline]
14599 pub fn paren_select(&self) -> Option<ParenSelect> {
14600 support::child(&self.syntax)
14601 }
14602 #[inline]
14603 pub fn set_expr_list(&self) -> Option<SetExprList> {
14604 support::child(&self.syntax)
14605 }
14606 #[inline]
14607 pub fn eq_token(&self) -> Option<SyntaxToken> {
14608 support::token(&self.syntax, SyntaxKind::EQ)
14609 }
14610}
14611
14612#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14613pub struct SetNotNull {
14614 pub(crate) syntax: SyntaxNode,
14615}
14616impl SetNotNull {
14617 #[inline]
14618 pub fn not_token(&self) -> Option<SyntaxToken> {
14619 support::token(&self.syntax, SyntaxKind::NOT_KW)
14620 }
14621 #[inline]
14622 pub fn null_token(&self) -> Option<SyntaxToken> {
14623 support::token(&self.syntax, SyntaxKind::NULL_KW)
14624 }
14625 #[inline]
14626 pub fn set_token(&self) -> Option<SyntaxToken> {
14627 support::token(&self.syntax, SyntaxKind::SET_KW)
14628 }
14629}
14630
14631#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14632pub struct SetNullColumns {
14633 pub(crate) syntax: SyntaxNode,
14634}
14635impl SetNullColumns {
14636 #[inline]
14637 pub fn column_list(&self) -> Option<ColumnList> {
14638 support::child(&self.syntax)
14639 }
14640 #[inline]
14641 pub fn null_token(&self) -> Option<SyntaxToken> {
14642 support::token(&self.syntax, SyntaxKind::NULL_KW)
14643 }
14644 #[inline]
14645 pub fn set_token(&self) -> Option<SyntaxToken> {
14646 support::token(&self.syntax, SyntaxKind::SET_KW)
14647 }
14648}
14649
14650#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14651pub struct SetOptions {
14652 pub(crate) syntax: SyntaxNode,
14653}
14654impl SetOptions {
14655 #[inline]
14656 pub fn attribute_list(&self) -> Option<AttributeList> {
14657 support::child(&self.syntax)
14658 }
14659 #[inline]
14660 pub fn set_token(&self) -> Option<SyntaxToken> {
14661 support::token(&self.syntax, SyntaxKind::SET_KW)
14662 }
14663}
14664
14665#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14666pub struct SetOptionsList {
14667 pub(crate) syntax: SyntaxNode,
14668}
14669impl SetOptionsList {
14670 #[inline]
14671 pub fn alter_option_list(&self) -> Option<AlterOptionList> {
14672 support::child(&self.syntax)
14673 }
14674 #[inline]
14675 pub fn options_token(&self) -> Option<SyntaxToken> {
14676 support::token(&self.syntax, SyntaxKind::OPTIONS_KW)
14677 }
14678 #[inline]
14679 pub fn set_token(&self) -> Option<SyntaxToken> {
14680 support::token(&self.syntax, SyntaxKind::SET_KW)
14681 }
14682}
14683
14684#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14685pub struct SetRole {
14686 pub(crate) syntax: SyntaxNode,
14687}
14688impl SetRole {
14689 #[inline]
14690 pub fn role_ref(&self) -> Option<RoleRef> {
14691 support::child(&self.syntax)
14692 }
14693 #[inline]
14694 pub fn local_token(&self) -> Option<SyntaxToken> {
14695 support::token(&self.syntax, SyntaxKind::LOCAL_KW)
14696 }
14697 #[inline]
14698 pub fn none_token(&self) -> Option<SyntaxToken> {
14699 support::token(&self.syntax, SyntaxKind::NONE_KW)
14700 }
14701 #[inline]
14702 pub fn reset_token(&self) -> Option<SyntaxToken> {
14703 support::token(&self.syntax, SyntaxKind::RESET_KW)
14704 }
14705 #[inline]
14706 pub fn role_token(&self) -> Option<SyntaxToken> {
14707 support::token(&self.syntax, SyntaxKind::ROLE_KW)
14708 }
14709 #[inline]
14710 pub fn session_token(&self) -> Option<SyntaxToken> {
14711 support::token(&self.syntax, SyntaxKind::SESSION_KW)
14712 }
14713 #[inline]
14714 pub fn set_token(&self) -> Option<SyntaxToken> {
14715 support::token(&self.syntax, SyntaxKind::SET_KW)
14716 }
14717}
14718
14719#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14720pub struct SetSchema {
14721 pub(crate) syntax: SyntaxNode,
14722}
14723impl SetSchema {
14724 #[inline]
14725 pub fn name_ref(&self) -> Option<NameRef> {
14726 support::child(&self.syntax)
14727 }
14728 #[inline]
14729 pub fn schema_token(&self) -> Option<SyntaxToken> {
14730 support::token(&self.syntax, SyntaxKind::SCHEMA_KW)
14731 }
14732 #[inline]
14733 pub fn set_token(&self) -> Option<SyntaxToken> {
14734 support::token(&self.syntax, SyntaxKind::SET_KW)
14735 }
14736}
14737
14738#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14739pub struct SetSequenceOption {
14740 pub(crate) syntax: SyntaxNode,
14741}
14742impl SetSequenceOption {
14743 #[inline]
14744 pub fn set_token(&self) -> Option<SyntaxToken> {
14745 support::token(&self.syntax, SyntaxKind::SET_KW)
14746 }
14747}
14748
14749#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14750pub struct SetSessionAuth {
14751 pub(crate) syntax: SyntaxNode,
14752}
14753impl SetSessionAuth {
14754 #[inline]
14755 pub fn literal(&self) -> Option<Literal> {
14756 support::child(&self.syntax)
14757 }
14758 #[inline]
14759 pub fn role_ref(&self) -> Option<RoleRef> {
14760 support::child(&self.syntax)
14761 }
14762 #[inline]
14763 pub fn authorization_token(&self) -> Option<SyntaxToken> {
14764 support::token(&self.syntax, SyntaxKind::AUTHORIZATION_KW)
14765 }
14766 #[inline]
14767 pub fn default_token(&self) -> Option<SyntaxToken> {
14768 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
14769 }
14770 #[inline]
14771 pub fn local_token(&self) -> Option<SyntaxToken> {
14772 support::token(&self.syntax, SyntaxKind::LOCAL_KW)
14773 }
14774 #[inline]
14775 pub fn session_token(&self) -> Option<SyntaxToken> {
14776 support::token(&self.syntax, SyntaxKind::SESSION_KW)
14777 }
14778 #[inline]
14779 pub fn set_token(&self) -> Option<SyntaxToken> {
14780 support::token(&self.syntax, SyntaxKind::SET_KW)
14781 }
14782}
14783
14784#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14785pub struct SetSingleColumn {
14786 pub(crate) syntax: SyntaxNode,
14787}
14788impl SetSingleColumn {
14789 #[inline]
14790 pub fn column(&self) -> Option<Column> {
14791 support::child(&self.syntax)
14792 }
14793 #[inline]
14794 pub fn set_expr(&self) -> Option<SetExpr> {
14795 support::child(&self.syntax)
14796 }
14797 #[inline]
14798 pub fn eq_token(&self) -> Option<SyntaxToken> {
14799 support::token(&self.syntax, SyntaxKind::EQ)
14800 }
14801}
14802
14803#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14804pub struct SetStatistics {
14805 pub(crate) syntax: SyntaxNode,
14806}
14807impl SetStatistics {
14808 #[inline]
14809 pub fn set_token(&self) -> Option<SyntaxToken> {
14810 support::token(&self.syntax, SyntaxKind::SET_KW)
14811 }
14812 #[inline]
14813 pub fn statistics_token(&self) -> Option<SyntaxToken> {
14814 support::token(&self.syntax, SyntaxKind::STATISTICS_KW)
14815 }
14816}
14817
14818#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14819pub struct SetStorage {
14820 pub(crate) syntax: SyntaxNode,
14821}
14822impl SetStorage {
14823 #[inline]
14824 pub fn set_token(&self) -> Option<SyntaxToken> {
14825 support::token(&self.syntax, SyntaxKind::SET_KW)
14826 }
14827 #[inline]
14828 pub fn storage_token(&self) -> Option<SyntaxToken> {
14829 support::token(&self.syntax, SyntaxKind::STORAGE_KW)
14830 }
14831}
14832
14833#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14834pub struct SetTablespace {
14835 pub(crate) syntax: SyntaxNode,
14836}
14837impl SetTablespace {
14838 #[inline]
14839 pub fn path(&self) -> Option<Path> {
14840 support::child(&self.syntax)
14841 }
14842 #[inline]
14843 pub fn set_token(&self) -> Option<SyntaxToken> {
14844 support::token(&self.syntax, SyntaxKind::SET_KW)
14845 }
14846 #[inline]
14847 pub fn tablespace_token(&self) -> Option<SyntaxToken> {
14848 support::token(&self.syntax, SyntaxKind::TABLESPACE_KW)
14849 }
14850}
14851
14852#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14853pub struct SetTransaction {
14854 pub(crate) syntax: SyntaxNode,
14855}
14856impl SetTransaction {
14857 #[inline]
14858 pub fn literal(&self) -> Option<Literal> {
14859 support::child(&self.syntax)
14860 }
14861 #[inline]
14862 pub fn transaction_mode_list(&self) -> Option<TransactionModeList> {
14863 support::child(&self.syntax)
14864 }
14865 #[inline]
14866 pub fn as_token(&self) -> Option<SyntaxToken> {
14867 support::token(&self.syntax, SyntaxKind::AS_KW)
14868 }
14869 #[inline]
14870 pub fn characteristics_token(&self) -> Option<SyntaxToken> {
14871 support::token(&self.syntax, SyntaxKind::CHARACTERISTICS_KW)
14872 }
14873 #[inline]
14874 pub fn session_token(&self) -> Option<SyntaxToken> {
14875 support::token(&self.syntax, SyntaxKind::SESSION_KW)
14876 }
14877 #[inline]
14878 pub fn set_token(&self) -> Option<SyntaxToken> {
14879 support::token(&self.syntax, SyntaxKind::SET_KW)
14880 }
14881 #[inline]
14882 pub fn snapshot_token(&self) -> Option<SyntaxToken> {
14883 support::token(&self.syntax, SyntaxKind::SNAPSHOT_KW)
14884 }
14885 #[inline]
14886 pub fn transaction_token(&self) -> Option<SyntaxToken> {
14887 support::token(&self.syntax, SyntaxKind::TRANSACTION_KW)
14888 }
14889}
14890
14891#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14892pub struct SetType {
14893 pub(crate) syntax: SyntaxNode,
14894}
14895impl SetType {
14896 #[inline]
14897 pub fn collate(&self) -> Option<Collate> {
14898 support::child(&self.syntax)
14899 }
14900 #[inline]
14901 pub fn ty(&self) -> Option<Type> {
14902 support::child(&self.syntax)
14903 }
14904 #[inline]
14905 pub fn set_token(&self) -> Option<SyntaxToken> {
14906 support::token(&self.syntax, SyntaxKind::SET_KW)
14907 }
14908 #[inline]
14909 pub fn type_token(&self) -> Option<SyntaxToken> {
14910 support::token(&self.syntax, SyntaxKind::TYPE_KW)
14911 }
14912}
14913
14914#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14915pub struct SetUnlogged {
14916 pub(crate) syntax: SyntaxNode,
14917}
14918impl SetUnlogged {
14919 #[inline]
14920 pub fn set_token(&self) -> Option<SyntaxToken> {
14921 support::token(&self.syntax, SyntaxKind::SET_KW)
14922 }
14923 #[inline]
14924 pub fn unlogged_token(&self) -> Option<SyntaxToken> {
14925 support::token(&self.syntax, SyntaxKind::UNLOGGED_KW)
14926 }
14927}
14928
14929#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14930pub struct SetWithoutCluster {
14931 pub(crate) syntax: SyntaxNode,
14932}
14933impl SetWithoutCluster {
14934 #[inline]
14935 pub fn cluster_token(&self) -> Option<SyntaxToken> {
14936 support::token(&self.syntax, SyntaxKind::CLUSTER_KW)
14937 }
14938 #[inline]
14939 pub fn set_token(&self) -> Option<SyntaxToken> {
14940 support::token(&self.syntax, SyntaxKind::SET_KW)
14941 }
14942 #[inline]
14943 pub fn without_token(&self) -> Option<SyntaxToken> {
14944 support::token(&self.syntax, SyntaxKind::WITHOUT_KW)
14945 }
14946}
14947
14948#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14949pub struct SetWithoutOids {
14950 pub(crate) syntax: SyntaxNode,
14951}
14952impl SetWithoutOids {
14953 #[inline]
14954 pub fn oids_token(&self) -> Option<SyntaxToken> {
14955 support::token(&self.syntax, SyntaxKind::OIDS_KW)
14956 }
14957 #[inline]
14958 pub fn set_token(&self) -> Option<SyntaxToken> {
14959 support::token(&self.syntax, SyntaxKind::SET_KW)
14960 }
14961 #[inline]
14962 pub fn without_token(&self) -> Option<SyntaxToken> {
14963 support::token(&self.syntax, SyntaxKind::WITHOUT_KW)
14964 }
14965}
14966
14967#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14968pub struct Show {
14969 pub(crate) syntax: SyntaxNode,
14970}
14971impl Show {
14972 #[inline]
14973 pub fn show_token(&self) -> Option<SyntaxToken> {
14974 support::token(&self.syntax, SyntaxKind::SHOW_KW)
14975 }
14976}
14977
14978#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14979pub struct SimilarTo {
14980 pub(crate) syntax: SyntaxNode,
14981}
14982impl SimilarTo {
14983 #[inline]
14984 pub fn similar_token(&self) -> Option<SyntaxToken> {
14985 support::token(&self.syntax, SyntaxKind::SIMILAR_KW)
14986 }
14987 #[inline]
14988 pub fn to_token(&self) -> Option<SyntaxToken> {
14989 support::token(&self.syntax, SyntaxKind::TO_KW)
14990 }
14991}
14992
14993#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14994pub struct SliceExpr {
14995 pub(crate) syntax: SyntaxNode,
14996}
14997impl SliceExpr {
14998 #[inline]
14999 pub fn l_brack_token(&self) -> Option<SyntaxToken> {
15000 support::token(&self.syntax, SyntaxKind::L_BRACK)
15001 }
15002 #[inline]
15003 pub fn r_brack_token(&self) -> Option<SyntaxToken> {
15004 support::token(&self.syntax, SyntaxKind::R_BRACK)
15005 }
15006 #[inline]
15007 pub fn colon_token(&self) -> Option<SyntaxToken> {
15008 support::token(&self.syntax, SyntaxKind::COLON)
15009 }
15010}
15011
15012#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15013pub struct SomeFn {
15014 pub(crate) syntax: SyntaxNode,
15015}
15016impl SomeFn {
15017 #[inline]
15018 pub fn expr(&self) -> Option<Expr> {
15019 support::child(&self.syntax)
15020 }
15021 #[inline]
15022 pub fn select_variant(&self) -> Option<SelectVariant> {
15023 support::child(&self.syntax)
15024 }
15025 #[inline]
15026 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
15027 support::token(&self.syntax, SyntaxKind::L_PAREN)
15028 }
15029 #[inline]
15030 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
15031 support::token(&self.syntax, SyntaxKind::R_PAREN)
15032 }
15033 #[inline]
15034 pub fn some_token(&self) -> Option<SyntaxToken> {
15035 support::token(&self.syntax, SyntaxKind::SOME_KW)
15036 }
15037}
15038
15039#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15040pub struct SortAsc {
15041 pub(crate) syntax: SyntaxNode,
15042}
15043impl SortAsc {
15044 #[inline]
15045 pub fn asc_token(&self) -> Option<SyntaxToken> {
15046 support::token(&self.syntax, SyntaxKind::ASC_KW)
15047 }
15048}
15049
15050#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15051pub struct SortBy {
15052 pub(crate) syntax: SyntaxNode,
15053}
15054impl SortBy {
15055 #[inline]
15056 pub fn expr(&self) -> Option<Expr> {
15057 support::child(&self.syntax)
15058 }
15059 #[inline]
15060 pub fn nulls_first(&self) -> Option<NullsFirst> {
15061 support::child(&self.syntax)
15062 }
15063 #[inline]
15064 pub fn nulls_last(&self) -> Option<NullsLast> {
15065 support::child(&self.syntax)
15066 }
15067 #[inline]
15068 pub fn sort_asc(&self) -> Option<SortAsc> {
15069 support::child(&self.syntax)
15070 }
15071 #[inline]
15072 pub fn sort_desc(&self) -> Option<SortDesc> {
15073 support::child(&self.syntax)
15074 }
15075 #[inline]
15076 pub fn sort_using(&self) -> Option<SortUsing> {
15077 support::child(&self.syntax)
15078 }
15079}
15080
15081#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15082pub struct SortByList {
15083 pub(crate) syntax: SyntaxNode,
15084}
15085impl SortByList {
15086 #[inline]
15087 pub fn sort_bys(&self) -> AstChildren<SortBy> {
15088 support::children(&self.syntax)
15089 }
15090}
15091
15092#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15093pub struct SortDesc {
15094 pub(crate) syntax: SyntaxNode,
15095}
15096impl SortDesc {
15097 #[inline]
15098 pub fn desc_token(&self) -> Option<SyntaxToken> {
15099 support::token(&self.syntax, SyntaxKind::DESC_KW)
15100 }
15101}
15102
15103#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15104pub struct SortUsing {
15105 pub(crate) syntax: SyntaxNode,
15106}
15107impl SortUsing {
15108 #[inline]
15109 pub fn op(&self) -> Option<Op> {
15110 support::child(&self.syntax)
15111 }
15112 #[inline]
15113 pub fn using_token(&self) -> Option<SyntaxToken> {
15114 support::token(&self.syntax, SyntaxKind::USING_KW)
15115 }
15116}
15117
15118#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15119pub struct SourceFile {
15120 pub(crate) syntax: SyntaxNode,
15121}
15122impl SourceFile {
15123 #[inline]
15124 pub fn stmts(&self) -> AstChildren<Stmt> {
15125 support::children(&self.syntax)
15126 }
15127}
15128
15129#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15130pub struct SplitPartition {
15131 pub(crate) syntax: SyntaxNode,
15132}
15133impl SplitPartition {
15134 #[inline]
15135 pub fn partition_list(&self) -> Option<PartitionList> {
15136 support::child(&self.syntax)
15137 }
15138 #[inline]
15139 pub fn into_token(&self) -> Option<SyntaxToken> {
15140 support::token(&self.syntax, SyntaxKind::INTO_KW)
15141 }
15142 #[inline]
15143 pub fn partition_token(&self) -> Option<SyntaxToken> {
15144 support::token(&self.syntax, SyntaxKind::PARTITION_KW)
15145 }
15146 #[inline]
15147 pub fn split_token(&self) -> Option<SyntaxToken> {
15148 support::token(&self.syntax, SyntaxKind::SPLIT_KW)
15149 }
15150}
15151
15152#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15153pub struct Storage {
15154 pub(crate) syntax: SyntaxNode,
15155}
15156impl Storage {
15157 #[inline]
15158 pub fn default_token(&self) -> Option<SyntaxToken> {
15159 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
15160 }
15161 #[inline]
15162 pub fn external_token(&self) -> Option<SyntaxToken> {
15163 support::token(&self.syntax, SyntaxKind::EXTERNAL_KW)
15164 }
15165 #[inline]
15166 pub fn ident_token(&self) -> Option<SyntaxToken> {
15167 support::token(&self.syntax, SyntaxKind::IDENT)
15168 }
15169 #[inline]
15170 pub fn storage_token(&self) -> Option<SyntaxToken> {
15171 support::token(&self.syntax, SyntaxKind::STORAGE_KW)
15172 }
15173}
15174
15175#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15176pub struct StrictFuncOption {
15177 pub(crate) syntax: SyntaxNode,
15178}
15179impl StrictFuncOption {
15180 #[inline]
15181 pub fn called_token(&self) -> Option<SyntaxToken> {
15182 support::token(&self.syntax, SyntaxKind::CALLED_KW)
15183 }
15184 #[inline]
15185 pub fn input_token(&self) -> Option<SyntaxToken> {
15186 support::token(&self.syntax, SyntaxKind::INPUT_KW)
15187 }
15188 #[inline]
15189 pub fn null_token(&self) -> Option<SyntaxToken> {
15190 support::token(&self.syntax, SyntaxKind::NULL_KW)
15191 }
15192 #[inline]
15193 pub fn on_token(&self) -> Option<SyntaxToken> {
15194 support::token(&self.syntax, SyntaxKind::ON_KW)
15195 }
15196 #[inline]
15197 pub fn returns_token(&self) -> Option<SyntaxToken> {
15198 support::token(&self.syntax, SyntaxKind::RETURNS_KW)
15199 }
15200 #[inline]
15201 pub fn strict_token(&self) -> Option<SyntaxToken> {
15202 support::token(&self.syntax, SyntaxKind::STRICT_KW)
15203 }
15204}
15205
15206#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15207pub struct SubstringFn {
15208 pub(crate) syntax: SyntaxNode,
15209}
15210impl SubstringFn {
15211 #[inline]
15212 pub fn expr(&self) -> Option<Expr> {
15213 support::child(&self.syntax)
15214 }
15215 #[inline]
15216 pub fn exprs(&self) -> AstChildren<Expr> {
15217 support::children(&self.syntax)
15218 }
15219 #[inline]
15220 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
15221 support::token(&self.syntax, SyntaxKind::L_PAREN)
15222 }
15223 #[inline]
15224 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
15225 support::token(&self.syntax, SyntaxKind::R_PAREN)
15226 }
15227 #[inline]
15228 pub fn escape_token(&self) -> Option<SyntaxToken> {
15229 support::token(&self.syntax, SyntaxKind::ESCAPE_KW)
15230 }
15231 #[inline]
15232 pub fn for_token(&self) -> Option<SyntaxToken> {
15233 support::token(&self.syntax, SyntaxKind::FOR_KW)
15234 }
15235 #[inline]
15236 pub fn from_token(&self) -> Option<SyntaxToken> {
15237 support::token(&self.syntax, SyntaxKind::FROM_KW)
15238 }
15239 #[inline]
15240 pub fn similar_token(&self) -> Option<SyntaxToken> {
15241 support::token(&self.syntax, SyntaxKind::SIMILAR_KW)
15242 }
15243 #[inline]
15244 pub fn substring_token(&self) -> Option<SyntaxToken> {
15245 support::token(&self.syntax, SyntaxKind::SUBSTRING_KW)
15246 }
15247}
15248
15249#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15250pub struct SupportFuncOption {
15251 pub(crate) syntax: SyntaxNode,
15252}
15253impl SupportFuncOption {
15254 #[inline]
15255 pub fn support_token(&self) -> Option<SyntaxToken> {
15256 support::token(&self.syntax, SyntaxKind::SUPPORT_KW)
15257 }
15258}
15259
15260#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15261pub struct Table {
15262 pub(crate) syntax: SyntaxNode,
15263}
15264impl Table {
15265 #[inline]
15266 pub fn relation_name(&self) -> Option<RelationName> {
15267 support::child(&self.syntax)
15268 }
15269 #[inline]
15270 pub fn with_clause(&self) -> Option<WithClause> {
15271 support::child(&self.syntax)
15272 }
15273 #[inline]
15274 pub fn table_token(&self) -> Option<SyntaxToken> {
15275 support::token(&self.syntax, SyntaxKind::TABLE_KW)
15276 }
15277}
15278
15279#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15280pub struct TableAndColumns {
15281 pub(crate) syntax: SyntaxNode,
15282}
15283impl TableAndColumns {
15284 #[inline]
15285 pub fn column_list(&self) -> Option<ColumnList> {
15286 support::child(&self.syntax)
15287 }
15288 #[inline]
15289 pub fn relation_name(&self) -> Option<RelationName> {
15290 support::child(&self.syntax)
15291 }
15292}
15293
15294#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15295pub struct TableAndColumnsList {
15296 pub(crate) syntax: SyntaxNode,
15297}
15298impl TableAndColumnsList {
15299 #[inline]
15300 pub fn table_and_columnss(&self) -> AstChildren<TableAndColumns> {
15301 support::children(&self.syntax)
15302 }
15303}
15304
15305#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15306pub struct TableArgList {
15307 pub(crate) syntax: SyntaxNode,
15308}
15309impl TableArgList {
15310 #[inline]
15311 pub fn args(&self) -> AstChildren<TableArg> {
15312 support::children(&self.syntax)
15313 }
15314 #[inline]
15315 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
15316 support::token(&self.syntax, SyntaxKind::L_PAREN)
15317 }
15318 #[inline]
15319 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
15320 support::token(&self.syntax, SyntaxKind::R_PAREN)
15321 }
15322}
15323
15324#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15325pub struct TableList {
15326 pub(crate) syntax: SyntaxNode,
15327}
15328impl TableList {
15329 #[inline]
15330 pub fn relation_names(&self) -> AstChildren<RelationName> {
15331 support::children(&self.syntax)
15332 }
15333}
15334
15335#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15336pub struct TablesampleClause {
15337 pub(crate) syntax: SyntaxNode,
15338}
15339impl TablesampleClause {
15340 #[inline]
15341 pub fn call_expr(&self) -> Option<CallExpr> {
15342 support::child(&self.syntax)
15343 }
15344 #[inline]
15345 pub fn repeatable_clause(&self) -> Option<RepeatableClause> {
15346 support::child(&self.syntax)
15347 }
15348 #[inline]
15349 pub fn tablesample_token(&self) -> Option<SyntaxToken> {
15350 support::token(&self.syntax, SyntaxKind::TABLESAMPLE_KW)
15351 }
15352}
15353
15354#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15355pub struct Tablespace {
15356 pub(crate) syntax: SyntaxNode,
15357}
15358impl Tablespace {
15359 #[inline]
15360 pub fn name_ref(&self) -> Option<NameRef> {
15361 support::child(&self.syntax)
15362 }
15363 #[inline]
15364 pub fn tablespace_token(&self) -> Option<SyntaxToken> {
15365 support::token(&self.syntax, SyntaxKind::TABLESPACE_KW)
15366 }
15367}
15368
15369#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15370pub struct Target {
15371 pub(crate) syntax: SyntaxNode,
15372}
15373impl Target {
15374 #[inline]
15375 pub fn as_name(&self) -> Option<AsName> {
15376 support::child(&self.syntax)
15377 }
15378 #[inline]
15379 pub fn expr(&self) -> Option<Expr> {
15380 support::child(&self.syntax)
15381 }
15382 #[inline]
15383 pub fn star_token(&self) -> Option<SyntaxToken> {
15384 support::token(&self.syntax, SyntaxKind::STAR)
15385 }
15386}
15387
15388#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15389pub struct TargetList {
15390 pub(crate) syntax: SyntaxNode,
15391}
15392impl TargetList {
15393 #[inline]
15394 pub fn targets(&self) -> AstChildren<Target> {
15395 support::children(&self.syntax)
15396 }
15397}
15398
15399#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15400pub struct TimeType {
15401 pub(crate) syntax: SyntaxNode,
15402}
15403impl TimeType {
15404 #[inline]
15405 pub fn literal(&self) -> Option<Literal> {
15406 support::child(&self.syntax)
15407 }
15408 #[inline]
15409 pub fn timezone(&self) -> Option<Timezone> {
15410 support::child(&self.syntax)
15411 }
15412 #[inline]
15413 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
15414 support::token(&self.syntax, SyntaxKind::L_PAREN)
15415 }
15416 #[inline]
15417 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
15418 support::token(&self.syntax, SyntaxKind::R_PAREN)
15419 }
15420 #[inline]
15421 pub fn time_token(&self) -> Option<SyntaxToken> {
15422 support::token(&self.syntax, SyntaxKind::TIME_KW)
15423 }
15424 #[inline]
15425 pub fn timestamp_token(&self) -> Option<SyntaxToken> {
15426 support::token(&self.syntax, SyntaxKind::TIMESTAMP_KW)
15427 }
15428}
15429
15430#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15431pub struct Timing {
15432 pub(crate) syntax: SyntaxNode,
15433}
15434impl Timing {
15435 #[inline]
15436 pub fn after_token(&self) -> Option<SyntaxToken> {
15437 support::token(&self.syntax, SyntaxKind::AFTER_KW)
15438 }
15439 #[inline]
15440 pub fn before_token(&self) -> Option<SyntaxToken> {
15441 support::token(&self.syntax, SyntaxKind::BEFORE_KW)
15442 }
15443 #[inline]
15444 pub fn instead_token(&self) -> Option<SyntaxToken> {
15445 support::token(&self.syntax, SyntaxKind::INSTEAD_KW)
15446 }
15447 #[inline]
15448 pub fn of_token(&self) -> Option<SyntaxToken> {
15449 support::token(&self.syntax, SyntaxKind::OF_KW)
15450 }
15451}
15452
15453#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15454pub struct TransactionModeList {
15455 pub(crate) syntax: SyntaxNode,
15456}
15457impl TransactionModeList {
15458 #[inline]
15459 pub fn transaction_modes(&self) -> AstChildren<TransactionMode> {
15460 support::children(&self.syntax)
15461 }
15462}
15463
15464#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15465pub struct TransformFromFunc {
15466 pub(crate) syntax: SyntaxNode,
15467}
15468impl TransformFromFunc {
15469 #[inline]
15470 pub fn function_sig(&self) -> Option<FunctionSig> {
15471 support::child(&self.syntax)
15472 }
15473 #[inline]
15474 pub fn from_token(&self) -> Option<SyntaxToken> {
15475 support::token(&self.syntax, SyntaxKind::FROM_KW)
15476 }
15477 #[inline]
15478 pub fn function_token(&self) -> Option<SyntaxToken> {
15479 support::token(&self.syntax, SyntaxKind::FUNCTION_KW)
15480 }
15481 #[inline]
15482 pub fn sql_token(&self) -> Option<SyntaxToken> {
15483 support::token(&self.syntax, SyntaxKind::SQL_KW)
15484 }
15485 #[inline]
15486 pub fn with_token(&self) -> Option<SyntaxToken> {
15487 support::token(&self.syntax, SyntaxKind::WITH_KW)
15488 }
15489}
15490
15491#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15492pub struct TransformFuncOption {
15493 pub(crate) syntax: SyntaxNode,
15494}
15495impl TransformFuncOption {
15496 #[inline]
15497 pub fn transform_token(&self) -> Option<SyntaxToken> {
15498 support::token(&self.syntax, SyntaxKind::TRANSFORM_KW)
15499 }
15500}
15501
15502#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15503pub struct TransformToFunc {
15504 pub(crate) syntax: SyntaxNode,
15505}
15506impl TransformToFunc {
15507 #[inline]
15508 pub fn function_sig(&self) -> Option<FunctionSig> {
15509 support::child(&self.syntax)
15510 }
15511 #[inline]
15512 pub fn function_token(&self) -> Option<SyntaxToken> {
15513 support::token(&self.syntax, SyntaxKind::FUNCTION_KW)
15514 }
15515 #[inline]
15516 pub fn sql_token(&self) -> Option<SyntaxToken> {
15517 support::token(&self.syntax, SyntaxKind::SQL_KW)
15518 }
15519 #[inline]
15520 pub fn to_token(&self) -> Option<SyntaxToken> {
15521 support::token(&self.syntax, SyntaxKind::TO_KW)
15522 }
15523 #[inline]
15524 pub fn with_token(&self) -> Option<SyntaxToken> {
15525 support::token(&self.syntax, SyntaxKind::WITH_KW)
15526 }
15527}
15528
15529#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15530pub struct TriggerEvent {
15531 pub(crate) syntax: SyntaxNode,
15532}
15533impl TriggerEvent {
15534 #[inline]
15535 pub fn trigger_event_update(&self) -> Option<TriggerEventUpdate> {
15536 support::child(&self.syntax)
15537 }
15538 #[inline]
15539 pub fn delete_token(&self) -> Option<SyntaxToken> {
15540 support::token(&self.syntax, SyntaxKind::DELETE_KW)
15541 }
15542 #[inline]
15543 pub fn insert_token(&self) -> Option<SyntaxToken> {
15544 support::token(&self.syntax, SyntaxKind::INSERT_KW)
15545 }
15546 #[inline]
15547 pub fn truncate_token(&self) -> Option<SyntaxToken> {
15548 support::token(&self.syntax, SyntaxKind::TRUNCATE_KW)
15549 }
15550}
15551
15552#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15553pub struct TriggerEventList {
15554 pub(crate) syntax: SyntaxNode,
15555}
15556impl TriggerEventList {
15557 #[inline]
15558 pub fn trigger_events(&self) -> AstChildren<TriggerEvent> {
15559 support::children(&self.syntax)
15560 }
15561}
15562
15563#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15564pub struct TriggerEventUpdate {
15565 pub(crate) syntax: SyntaxNode,
15566}
15567impl TriggerEventUpdate {
15568 #[inline]
15569 pub fn name_refs(&self) -> AstChildren<NameRef> {
15570 support::children(&self.syntax)
15571 }
15572 #[inline]
15573 pub fn of_token(&self) -> Option<SyntaxToken> {
15574 support::token(&self.syntax, SyntaxKind::OF_KW)
15575 }
15576 #[inline]
15577 pub fn update_token(&self) -> Option<SyntaxToken> {
15578 support::token(&self.syntax, SyntaxKind::UPDATE_KW)
15579 }
15580}
15581
15582#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15583pub struct TrimFn {
15584 pub(crate) syntax: SyntaxNode,
15585}
15586impl TrimFn {
15587 #[inline]
15588 pub fn expr(&self) -> Option<Expr> {
15589 support::child(&self.syntax)
15590 }
15591 #[inline]
15592 pub fn exprs(&self) -> AstChildren<Expr> {
15593 support::children(&self.syntax)
15594 }
15595 #[inline]
15596 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
15597 support::token(&self.syntax, SyntaxKind::L_PAREN)
15598 }
15599 #[inline]
15600 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
15601 support::token(&self.syntax, SyntaxKind::R_PAREN)
15602 }
15603 #[inline]
15604 pub fn both_token(&self) -> Option<SyntaxToken> {
15605 support::token(&self.syntax, SyntaxKind::BOTH_KW)
15606 }
15607 #[inline]
15608 pub fn from_token(&self) -> Option<SyntaxToken> {
15609 support::token(&self.syntax, SyntaxKind::FROM_KW)
15610 }
15611 #[inline]
15612 pub fn leading_token(&self) -> Option<SyntaxToken> {
15613 support::token(&self.syntax, SyntaxKind::LEADING_KW)
15614 }
15615 #[inline]
15616 pub fn trailing_token(&self) -> Option<SyntaxToken> {
15617 support::token(&self.syntax, SyntaxKind::TRAILING_KW)
15618 }
15619 #[inline]
15620 pub fn trim_token(&self) -> Option<SyntaxToken> {
15621 support::token(&self.syntax, SyntaxKind::TRIM_KW)
15622 }
15623}
15624
15625#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15626pub struct Truncate {
15627 pub(crate) syntax: SyntaxNode,
15628}
15629impl Truncate {
15630 #[inline]
15631 pub fn table_list(&self) -> Option<TableList> {
15632 support::child(&self.syntax)
15633 }
15634 #[inline]
15635 pub fn cascade_token(&self) -> Option<SyntaxToken> {
15636 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
15637 }
15638 #[inline]
15639 pub fn continue_token(&self) -> Option<SyntaxToken> {
15640 support::token(&self.syntax, SyntaxKind::CONTINUE_KW)
15641 }
15642 #[inline]
15643 pub fn identity_token(&self) -> Option<SyntaxToken> {
15644 support::token(&self.syntax, SyntaxKind::IDENTITY_KW)
15645 }
15646 #[inline]
15647 pub fn restart_token(&self) -> Option<SyntaxToken> {
15648 support::token(&self.syntax, SyntaxKind::RESTART_KW)
15649 }
15650 #[inline]
15651 pub fn restrict_token(&self) -> Option<SyntaxToken> {
15652 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
15653 }
15654 #[inline]
15655 pub fn table_token(&self) -> Option<SyntaxToken> {
15656 support::token(&self.syntax, SyntaxKind::TABLE_KW)
15657 }
15658 #[inline]
15659 pub fn truncate_token(&self) -> Option<SyntaxToken> {
15660 support::token(&self.syntax, SyntaxKind::TRUNCATE_KW)
15661 }
15662}
15663
15664#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15665pub struct TupleExpr {
15666 pub(crate) syntax: SyntaxNode,
15667}
15668impl TupleExpr {
15669 #[inline]
15670 pub fn exprs(&self) -> AstChildren<Expr> {
15671 support::children(&self.syntax)
15672 }
15673 #[inline]
15674 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
15675 support::token(&self.syntax, SyntaxKind::L_PAREN)
15676 }
15677 #[inline]
15678 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
15679 support::token(&self.syntax, SyntaxKind::R_PAREN)
15680 }
15681}
15682
15683#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15684pub struct UnicodeNormalForm {
15685 pub(crate) syntax: SyntaxNode,
15686}
15687impl UnicodeNormalForm {
15688 #[inline]
15689 pub fn nfc_token(&self) -> Option<SyntaxToken> {
15690 support::token(&self.syntax, SyntaxKind::NFC_KW)
15691 }
15692 #[inline]
15693 pub fn nfd_token(&self) -> Option<SyntaxToken> {
15694 support::token(&self.syntax, SyntaxKind::NFD_KW)
15695 }
15696 #[inline]
15697 pub fn nfkc_token(&self) -> Option<SyntaxToken> {
15698 support::token(&self.syntax, SyntaxKind::NFKC_KW)
15699 }
15700 #[inline]
15701 pub fn nfkd_token(&self) -> Option<SyntaxToken> {
15702 support::token(&self.syntax, SyntaxKind::NFKD_KW)
15703 }
15704}
15705
15706#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15707pub struct UniqueConstraint {
15708 pub(crate) syntax: SyntaxNode,
15709}
15710impl UniqueConstraint {
15711 #[inline]
15712 pub fn column_list(&self) -> Option<ColumnList> {
15713 support::child(&self.syntax)
15714 }
15715 #[inline]
15716 pub fn constraint_name(&self) -> Option<ConstraintName> {
15717 support::child(&self.syntax)
15718 }
15719 #[inline]
15720 pub fn nulls_distinct(&self) -> Option<NullsDistinct> {
15721 support::child(&self.syntax)
15722 }
15723 #[inline]
15724 pub fn nulls_not_distinct(&self) -> Option<NullsNotDistinct> {
15725 support::child(&self.syntax)
15726 }
15727 #[inline]
15728 pub fn using_index(&self) -> Option<UsingIndex> {
15729 support::child(&self.syntax)
15730 }
15731 #[inline]
15732 pub fn unique_token(&self) -> Option<SyntaxToken> {
15733 support::token(&self.syntax, SyntaxKind::UNIQUE_KW)
15734 }
15735}
15736
15737#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15738pub struct Unlisten {
15739 pub(crate) syntax: SyntaxNode,
15740}
15741impl Unlisten {
15742 #[inline]
15743 pub fn name_ref(&self) -> Option<NameRef> {
15744 support::child(&self.syntax)
15745 }
15746 #[inline]
15747 pub fn star_token(&self) -> Option<SyntaxToken> {
15748 support::token(&self.syntax, SyntaxKind::STAR)
15749 }
15750 #[inline]
15751 pub fn unlisten_token(&self) -> Option<SyntaxToken> {
15752 support::token(&self.syntax, SyntaxKind::UNLISTEN_KW)
15753 }
15754}
15755
15756#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15757pub struct Update {
15758 pub(crate) syntax: SyntaxNode,
15759}
15760impl Update {
15761 #[inline]
15762 pub fn alias(&self) -> Option<Alias> {
15763 support::child(&self.syntax)
15764 }
15765 #[inline]
15766 pub fn from_clause(&self) -> Option<FromClause> {
15767 support::child(&self.syntax)
15768 }
15769 #[inline]
15770 pub fn relation_name(&self) -> Option<RelationName> {
15771 support::child(&self.syntax)
15772 }
15773 #[inline]
15774 pub fn returning_clause(&self) -> Option<ReturningClause> {
15775 support::child(&self.syntax)
15776 }
15777 #[inline]
15778 pub fn set_clause(&self) -> Option<SetClause> {
15779 support::child(&self.syntax)
15780 }
15781 #[inline]
15782 pub fn where_clause(&self) -> Option<WhereClause> {
15783 support::child(&self.syntax)
15784 }
15785 #[inline]
15786 pub fn with_clause(&self) -> Option<WithClause> {
15787 support::child(&self.syntax)
15788 }
15789 #[inline]
15790 pub fn update_token(&self) -> Option<SyntaxToken> {
15791 support::token(&self.syntax, SyntaxKind::UPDATE_KW)
15792 }
15793}
15794
15795#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15796pub struct UsingClause {
15797 pub(crate) syntax: SyntaxNode,
15798}
15799impl UsingClause {
15800 #[inline]
15801 pub fn from_items(&self) -> AstChildren<FromItem> {
15802 support::children(&self.syntax)
15803 }
15804 #[inline]
15805 pub fn using_token(&self) -> Option<SyntaxToken> {
15806 support::token(&self.syntax, SyntaxKind::USING_KW)
15807 }
15808}
15809
15810#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15811pub struct UsingExprClause {
15812 pub(crate) syntax: SyntaxNode,
15813}
15814impl UsingExprClause {
15815 #[inline]
15816 pub fn expr(&self) -> Option<Expr> {
15817 support::child(&self.syntax)
15818 }
15819 #[inline]
15820 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
15821 support::token(&self.syntax, SyntaxKind::L_PAREN)
15822 }
15823 #[inline]
15824 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
15825 support::token(&self.syntax, SyntaxKind::R_PAREN)
15826 }
15827 #[inline]
15828 pub fn using_token(&self) -> Option<SyntaxToken> {
15829 support::token(&self.syntax, SyntaxKind::USING_KW)
15830 }
15831}
15832
15833#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15834pub struct UsingIndex {
15835 pub(crate) syntax: SyntaxNode,
15836}
15837impl UsingIndex {
15838 #[inline]
15839 pub fn name_ref(&self) -> Option<NameRef> {
15840 support::child(&self.syntax)
15841 }
15842 #[inline]
15843 pub fn index_token(&self) -> Option<SyntaxToken> {
15844 support::token(&self.syntax, SyntaxKind::INDEX_KW)
15845 }
15846 #[inline]
15847 pub fn using_token(&self) -> Option<SyntaxToken> {
15848 support::token(&self.syntax, SyntaxKind::USING_KW)
15849 }
15850}
15851
15852#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15853pub struct UsingMethod {
15854 pub(crate) syntax: SyntaxNode,
15855}
15856impl UsingMethod {
15857 #[inline]
15858 pub fn name_ref(&self) -> Option<NameRef> {
15859 support::child(&self.syntax)
15860 }
15861 #[inline]
15862 pub fn using_token(&self) -> Option<SyntaxToken> {
15863 support::token(&self.syntax, SyntaxKind::USING_KW)
15864 }
15865}
15866
15867#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15868pub struct UsingOnClause {
15869 pub(crate) syntax: SyntaxNode,
15870}
15871impl UsingOnClause {
15872 #[inline]
15873 pub fn from_item(&self) -> Option<FromItem> {
15874 support::child(&self.syntax)
15875 }
15876 #[inline]
15877 pub fn on_clause(&self) -> Option<OnClause> {
15878 support::child(&self.syntax)
15879 }
15880 #[inline]
15881 pub fn using_token(&self) -> Option<SyntaxToken> {
15882 support::token(&self.syntax, SyntaxKind::USING_KW)
15883 }
15884}
15885
15886#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15887pub struct Vacuum {
15888 pub(crate) syntax: SyntaxNode,
15889}
15890impl Vacuum {
15891 #[inline]
15892 pub fn table_and_columns_list(&self) -> Option<TableAndColumnsList> {
15893 support::child(&self.syntax)
15894 }
15895 #[inline]
15896 pub fn vacuum_option_list(&self) -> Option<VacuumOptionList> {
15897 support::child(&self.syntax)
15898 }
15899 #[inline]
15900 pub fn analyse_token(&self) -> Option<SyntaxToken> {
15901 support::token(&self.syntax, SyntaxKind::ANALYSE_KW)
15902 }
15903 #[inline]
15904 pub fn analyze_token(&self) -> Option<SyntaxToken> {
15905 support::token(&self.syntax, SyntaxKind::ANALYZE_KW)
15906 }
15907 #[inline]
15908 pub fn freeze_token(&self) -> Option<SyntaxToken> {
15909 support::token(&self.syntax, SyntaxKind::FREEZE_KW)
15910 }
15911 #[inline]
15912 pub fn full_token(&self) -> Option<SyntaxToken> {
15913 support::token(&self.syntax, SyntaxKind::FULL_KW)
15914 }
15915 #[inline]
15916 pub fn vacuum_token(&self) -> Option<SyntaxToken> {
15917 support::token(&self.syntax, SyntaxKind::VACUUM_KW)
15918 }
15919 #[inline]
15920 pub fn verbose_token(&self) -> Option<SyntaxToken> {
15921 support::token(&self.syntax, SyntaxKind::VERBOSE_KW)
15922 }
15923}
15924
15925#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15926pub struct VacuumOption {
15927 pub(crate) syntax: SyntaxNode,
15928}
15929impl VacuumOption {
15930 #[inline]
15931 pub fn literal(&self) -> Option<Literal> {
15932 support::child(&self.syntax)
15933 }
15934}
15935
15936#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15937pub struct VacuumOptionList {
15938 pub(crate) syntax: SyntaxNode,
15939}
15940impl VacuumOptionList {
15941 #[inline]
15942 pub fn vacuum_options(&self) -> AstChildren<VacuumOption> {
15943 support::children(&self.syntax)
15944 }
15945 #[inline]
15946 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
15947 support::token(&self.syntax, SyntaxKind::L_PAREN)
15948 }
15949 #[inline]
15950 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
15951 support::token(&self.syntax, SyntaxKind::R_PAREN)
15952 }
15953}
15954
15955#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15956pub struct ValidateConstraint {
15957 pub(crate) syntax: SyntaxNode,
15958}
15959impl ValidateConstraint {
15960 #[inline]
15961 pub fn name_ref(&self) -> Option<NameRef> {
15962 support::child(&self.syntax)
15963 }
15964 #[inline]
15965 pub fn constraint_token(&self) -> Option<SyntaxToken> {
15966 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
15967 }
15968 #[inline]
15969 pub fn validate_token(&self) -> Option<SyntaxToken> {
15970 support::token(&self.syntax, SyntaxKind::VALIDATE_KW)
15971 }
15972}
15973
15974#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15975pub struct Values {
15976 pub(crate) syntax: SyntaxNode,
15977}
15978impl Values {
15979 #[inline]
15980 pub fn row_list(&self) -> Option<RowList> {
15981 support::child(&self.syntax)
15982 }
15983 #[inline]
15984 pub fn with_clause(&self) -> Option<WithClause> {
15985 support::child(&self.syntax)
15986 }
15987 #[inline]
15988 pub fn values_token(&self) -> Option<SyntaxToken> {
15989 support::token(&self.syntax, SyntaxKind::VALUES_KW)
15990 }
15991}
15992
15993#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15994pub struct Variant {
15995 pub(crate) syntax: SyntaxNode,
15996}
15997impl Variant {
15998 #[inline]
15999 pub fn literal(&self) -> Option<Literal> {
16000 support::child(&self.syntax)
16001 }
16002}
16003
16004#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16005pub struct VariantList {
16006 pub(crate) syntax: SyntaxNode,
16007}
16008impl VariantList {
16009 #[inline]
16010 pub fn variants(&self) -> AstChildren<Variant> {
16011 support::children(&self.syntax)
16012 }
16013 #[inline]
16014 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
16015 support::token(&self.syntax, SyntaxKind::L_PAREN)
16016 }
16017 #[inline]
16018 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
16019 support::token(&self.syntax, SyntaxKind::R_PAREN)
16020 }
16021}
16022
16023#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16024pub struct VolatilityFuncOption {
16025 pub(crate) syntax: SyntaxNode,
16026}
16027impl VolatilityFuncOption {
16028 #[inline]
16029 pub fn immutable_token(&self) -> Option<SyntaxToken> {
16030 support::token(&self.syntax, SyntaxKind::IMMUTABLE_KW)
16031 }
16032 #[inline]
16033 pub fn stable_token(&self) -> Option<SyntaxToken> {
16034 support::token(&self.syntax, SyntaxKind::STABLE_KW)
16035 }
16036 #[inline]
16037 pub fn volatile_token(&self) -> Option<SyntaxToken> {
16038 support::token(&self.syntax, SyntaxKind::VOLATILE_KW)
16039 }
16040}
16041
16042#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16043pub struct WhenClause {
16044 pub(crate) syntax: SyntaxNode,
16045}
16046impl WhenClause {
16047 #[inline]
16048 pub fn then_token(&self) -> Option<SyntaxToken> {
16049 support::token(&self.syntax, SyntaxKind::THEN_KW)
16050 }
16051 #[inline]
16052 pub fn when_token(&self) -> Option<SyntaxToken> {
16053 support::token(&self.syntax, SyntaxKind::WHEN_KW)
16054 }
16055}
16056
16057#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16058pub struct WhenClauseList {
16059 pub(crate) syntax: SyntaxNode,
16060}
16061impl WhenClauseList {
16062 #[inline]
16063 pub fn when_clause(&self) -> Option<WhenClause> {
16064 support::child(&self.syntax)
16065 }
16066 #[inline]
16067 pub fn when_clauses(&self) -> AstChildren<WhenClause> {
16068 support::children(&self.syntax)
16069 }
16070}
16071
16072#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16073pub struct WhenCondition {
16074 pub(crate) syntax: SyntaxNode,
16075}
16076impl WhenCondition {
16077 #[inline]
16078 pub fn expr(&self) -> Option<Expr> {
16079 support::child(&self.syntax)
16080 }
16081 #[inline]
16082 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
16083 support::token(&self.syntax, SyntaxKind::L_PAREN)
16084 }
16085 #[inline]
16086 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
16087 support::token(&self.syntax, SyntaxKind::R_PAREN)
16088 }
16089 #[inline]
16090 pub fn when_token(&self) -> Option<SyntaxToken> {
16091 support::token(&self.syntax, SyntaxKind::WHEN_KW)
16092 }
16093}
16094
16095#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16096pub struct WhereClause {
16097 pub(crate) syntax: SyntaxNode,
16098}
16099impl WhereClause {
16100 #[inline]
16101 pub fn expr(&self) -> Option<Expr> {
16102 support::child(&self.syntax)
16103 }
16104 #[inline]
16105 pub fn where_token(&self) -> Option<SyntaxToken> {
16106 support::token(&self.syntax, SyntaxKind::WHERE_KW)
16107 }
16108}
16109
16110#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16111pub struct WhereConditionClause {
16112 pub(crate) syntax: SyntaxNode,
16113}
16114impl WhereConditionClause {
16115 #[inline]
16116 pub fn expr(&self) -> Option<Expr> {
16117 support::child(&self.syntax)
16118 }
16119 #[inline]
16120 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
16121 support::token(&self.syntax, SyntaxKind::L_PAREN)
16122 }
16123 #[inline]
16124 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
16125 support::token(&self.syntax, SyntaxKind::R_PAREN)
16126 }
16127 #[inline]
16128 pub fn where_token(&self) -> Option<SyntaxToken> {
16129 support::token(&self.syntax, SyntaxKind::WHERE_KW)
16130 }
16131}
16132
16133#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16134pub struct WhereCurrentOf {
16135 pub(crate) syntax: SyntaxNode,
16136}
16137impl WhereCurrentOf {
16138 #[inline]
16139 pub fn name_ref(&self) -> Option<NameRef> {
16140 support::child(&self.syntax)
16141 }
16142 #[inline]
16143 pub fn current_token(&self) -> Option<SyntaxToken> {
16144 support::token(&self.syntax, SyntaxKind::CURRENT_KW)
16145 }
16146 #[inline]
16147 pub fn of_token(&self) -> Option<SyntaxToken> {
16148 support::token(&self.syntax, SyntaxKind::OF_KW)
16149 }
16150 #[inline]
16151 pub fn where_token(&self) -> Option<SyntaxToken> {
16152 support::token(&self.syntax, SyntaxKind::WHERE_KW)
16153 }
16154}
16155
16156#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16157pub struct WindowClause {
16158 pub(crate) syntax: SyntaxNode,
16159}
16160impl WindowClause {
16161 #[inline]
16162 pub fn window_defs(&self) -> AstChildren<WindowDef> {
16163 support::children(&self.syntax)
16164 }
16165 #[inline]
16166 pub fn window_token(&self) -> Option<SyntaxToken> {
16167 support::token(&self.syntax, SyntaxKind::WINDOW_KW)
16168 }
16169}
16170
16171#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16172pub struct WindowDef {
16173 pub(crate) syntax: SyntaxNode,
16174}
16175impl WindowDef {
16176 #[inline]
16177 pub fn name(&self) -> Option<Name> {
16178 support::child(&self.syntax)
16179 }
16180 #[inline]
16181 pub fn window_spec(&self) -> Option<WindowSpec> {
16182 support::child(&self.syntax)
16183 }
16184 #[inline]
16185 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
16186 support::token(&self.syntax, SyntaxKind::L_PAREN)
16187 }
16188 #[inline]
16189 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
16190 support::token(&self.syntax, SyntaxKind::R_PAREN)
16191 }
16192 #[inline]
16193 pub fn as_token(&self) -> Option<SyntaxToken> {
16194 support::token(&self.syntax, SyntaxKind::AS_KW)
16195 }
16196}
16197
16198#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16199pub struct WindowFuncOption {
16200 pub(crate) syntax: SyntaxNode,
16201}
16202impl WindowFuncOption {
16203 #[inline]
16204 pub fn window_token(&self) -> Option<SyntaxToken> {
16205 support::token(&self.syntax, SyntaxKind::WINDOW_KW)
16206 }
16207}
16208
16209#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16210pub struct WindowSpec {
16211 pub(crate) syntax: SyntaxNode,
16212}
16213impl WindowSpec {
16214 #[inline]
16215 pub fn exprs(&self) -> AstChildren<Expr> {
16216 support::children(&self.syntax)
16217 }
16218 #[inline]
16219 pub fn frame_clause(&self) -> Option<FrameClause> {
16220 support::child(&self.syntax)
16221 }
16222 #[inline]
16223 pub fn order_by_clause(&self) -> Option<OrderByClause> {
16224 support::child(&self.syntax)
16225 }
16226 #[inline]
16227 pub fn by_token(&self) -> Option<SyntaxToken> {
16228 support::token(&self.syntax, SyntaxKind::BY_KW)
16229 }
16230 #[inline]
16231 pub fn ident_token(&self) -> Option<SyntaxToken> {
16232 support::token(&self.syntax, SyntaxKind::IDENT)
16233 }
16234 #[inline]
16235 pub fn partition_token(&self) -> Option<SyntaxToken> {
16236 support::token(&self.syntax, SyntaxKind::PARTITION_KW)
16237 }
16238}
16239
16240#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16241pub struct WithCheckExprClause {
16242 pub(crate) syntax: SyntaxNode,
16243}
16244impl WithCheckExprClause {
16245 #[inline]
16246 pub fn expr(&self) -> Option<Expr> {
16247 support::child(&self.syntax)
16248 }
16249 #[inline]
16250 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
16251 support::token(&self.syntax, SyntaxKind::L_PAREN)
16252 }
16253 #[inline]
16254 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
16255 support::token(&self.syntax, SyntaxKind::R_PAREN)
16256 }
16257 #[inline]
16258 pub fn check_token(&self) -> Option<SyntaxToken> {
16259 support::token(&self.syntax, SyntaxKind::CHECK_KW)
16260 }
16261 #[inline]
16262 pub fn with_token(&self) -> Option<SyntaxToken> {
16263 support::token(&self.syntax, SyntaxKind::WITH_KW)
16264 }
16265}
16266
16267#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16268pub struct WithClause {
16269 pub(crate) syntax: SyntaxNode,
16270}
16271impl WithClause {
16272 #[inline]
16273 pub fn with_tables(&self) -> AstChildren<WithTable> {
16274 support::children(&self.syntax)
16275 }
16276 #[inline]
16277 pub fn recursive_token(&self) -> Option<SyntaxToken> {
16278 support::token(&self.syntax, SyntaxKind::RECURSIVE_KW)
16279 }
16280 #[inline]
16281 pub fn with_token(&self) -> Option<SyntaxToken> {
16282 support::token(&self.syntax, SyntaxKind::WITH_KW)
16283 }
16284}
16285
16286#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16287pub struct WithData {
16288 pub(crate) syntax: SyntaxNode,
16289}
16290impl WithData {
16291 #[inline]
16292 pub fn data_token(&self) -> Option<SyntaxToken> {
16293 support::token(&self.syntax, SyntaxKind::DATA_KW)
16294 }
16295 #[inline]
16296 pub fn with_token(&self) -> Option<SyntaxToken> {
16297 support::token(&self.syntax, SyntaxKind::WITH_KW)
16298 }
16299}
16300
16301#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16302pub struct WithNoData {
16303 pub(crate) syntax: SyntaxNode,
16304}
16305impl WithNoData {
16306 #[inline]
16307 pub fn data_token(&self) -> Option<SyntaxToken> {
16308 support::token(&self.syntax, SyntaxKind::DATA_KW)
16309 }
16310 #[inline]
16311 pub fn no_token(&self) -> Option<SyntaxToken> {
16312 support::token(&self.syntax, SyntaxKind::NO_KW)
16313 }
16314 #[inline]
16315 pub fn with_token(&self) -> Option<SyntaxToken> {
16316 support::token(&self.syntax, SyntaxKind::WITH_KW)
16317 }
16318}
16319
16320#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16321pub struct WithOptions {
16322 pub(crate) syntax: SyntaxNode,
16323}
16324impl WithOptions {
16325 #[inline]
16326 pub fn options_token(&self) -> Option<SyntaxToken> {
16327 support::token(&self.syntax, SyntaxKind::OPTIONS_KW)
16328 }
16329 #[inline]
16330 pub fn with_token(&self) -> Option<SyntaxToken> {
16331 support::token(&self.syntax, SyntaxKind::WITH_KW)
16332 }
16333}
16334
16335#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16336pub struct WithParams {
16337 pub(crate) syntax: SyntaxNode,
16338}
16339impl WithParams {
16340 #[inline]
16341 pub fn attribute_list(&self) -> Option<AttributeList> {
16342 support::child(&self.syntax)
16343 }
16344 #[inline]
16345 pub fn with_token(&self) -> Option<SyntaxToken> {
16346 support::token(&self.syntax, SyntaxKind::WITH_KW)
16347 }
16348}
16349
16350#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16351pub struct WithTable {
16352 pub(crate) syntax: SyntaxNode,
16353}
16354impl WithTable {
16355 #[inline]
16356 pub fn column_list(&self) -> Option<ColumnList> {
16357 support::child(&self.syntax)
16358 }
16359 #[inline]
16360 pub fn materialized(&self) -> Option<Materialized> {
16361 support::child(&self.syntax)
16362 }
16363 #[inline]
16364 pub fn name(&self) -> Option<Name> {
16365 support::child(&self.syntax)
16366 }
16367 #[inline]
16368 pub fn not_materialized(&self) -> Option<NotMaterialized> {
16369 support::child(&self.syntax)
16370 }
16371 #[inline]
16372 pub fn query(&self) -> Option<WithQuery> {
16373 support::child(&self.syntax)
16374 }
16375 #[inline]
16376 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
16377 support::token(&self.syntax, SyntaxKind::L_PAREN)
16378 }
16379 #[inline]
16380 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
16381 support::token(&self.syntax, SyntaxKind::R_PAREN)
16382 }
16383 #[inline]
16384 pub fn as_token(&self) -> Option<SyntaxToken> {
16385 support::token(&self.syntax, SyntaxKind::AS_KW)
16386 }
16387}
16388
16389#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16390pub struct WithTimezone {
16391 pub(crate) syntax: SyntaxNode,
16392}
16393impl WithTimezone {
16394 #[inline]
16395 pub fn time_token(&self) -> Option<SyntaxToken> {
16396 support::token(&self.syntax, SyntaxKind::TIME_KW)
16397 }
16398 #[inline]
16399 pub fn with_token(&self) -> Option<SyntaxToken> {
16400 support::token(&self.syntax, SyntaxKind::WITH_KW)
16401 }
16402 #[inline]
16403 pub fn zone_token(&self) -> Option<SyntaxToken> {
16404 support::token(&self.syntax, SyntaxKind::ZONE_KW)
16405 }
16406}
16407
16408#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16409pub struct WithinClause {
16410 pub(crate) syntax: SyntaxNode,
16411}
16412impl WithinClause {
16413 #[inline]
16414 pub fn order_by_clause(&self) -> Option<OrderByClause> {
16415 support::child(&self.syntax)
16416 }
16417 #[inline]
16418 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
16419 support::token(&self.syntax, SyntaxKind::L_PAREN)
16420 }
16421 #[inline]
16422 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
16423 support::token(&self.syntax, SyntaxKind::R_PAREN)
16424 }
16425 #[inline]
16426 pub fn group_token(&self) -> Option<SyntaxToken> {
16427 support::token(&self.syntax, SyntaxKind::GROUP_KW)
16428 }
16429 #[inline]
16430 pub fn within_token(&self) -> Option<SyntaxToken> {
16431 support::token(&self.syntax, SyntaxKind::WITHIN_KW)
16432 }
16433}
16434
16435#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16436pub struct WithoutOids {
16437 pub(crate) syntax: SyntaxNode,
16438}
16439impl WithoutOids {
16440 #[inline]
16441 pub fn oids_token(&self) -> Option<SyntaxToken> {
16442 support::token(&self.syntax, SyntaxKind::OIDS_KW)
16443 }
16444 #[inline]
16445 pub fn without_token(&self) -> Option<SyntaxToken> {
16446 support::token(&self.syntax, SyntaxKind::WITHOUT_KW)
16447 }
16448}
16449
16450#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16451pub struct WithoutTimezone {
16452 pub(crate) syntax: SyntaxNode,
16453}
16454impl WithoutTimezone {
16455 #[inline]
16456 pub fn time_token(&self) -> Option<SyntaxToken> {
16457 support::token(&self.syntax, SyntaxKind::TIME_KW)
16458 }
16459 #[inline]
16460 pub fn without_token(&self) -> Option<SyntaxToken> {
16461 support::token(&self.syntax, SyntaxKind::WITHOUT_KW)
16462 }
16463 #[inline]
16464 pub fn zone_token(&self) -> Option<SyntaxToken> {
16465 support::token(&self.syntax, SyntaxKind::ZONE_KW)
16466 }
16467}
16468
16469#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16470pub struct XmlAttributeList {
16471 pub(crate) syntax: SyntaxNode,
16472}
16473impl XmlAttributeList {
16474 #[inline]
16475 pub fn expr_as_names(&self) -> AstChildren<ExprAsName> {
16476 support::children(&self.syntax)
16477 }
16478}
16479
16480#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16481pub struct XmlColumnOption {
16482 pub(crate) syntax: SyntaxNode,
16483}
16484impl XmlColumnOption {
16485 #[inline]
16486 pub fn expr(&self) -> Option<Expr> {
16487 support::child(&self.syntax)
16488 }
16489 #[inline]
16490 pub fn default_token(&self) -> Option<SyntaxToken> {
16491 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
16492 }
16493 #[inline]
16494 pub fn ident_token(&self) -> Option<SyntaxToken> {
16495 support::token(&self.syntax, SyntaxKind::IDENT)
16496 }
16497 #[inline]
16498 pub fn not_token(&self) -> Option<SyntaxToken> {
16499 support::token(&self.syntax, SyntaxKind::NOT_KW)
16500 }
16501 #[inline]
16502 pub fn null_token(&self) -> Option<SyntaxToken> {
16503 support::token(&self.syntax, SyntaxKind::NULL_KW)
16504 }
16505 #[inline]
16506 pub fn path_token(&self) -> Option<SyntaxToken> {
16507 support::token(&self.syntax, SyntaxKind::PATH_KW)
16508 }
16509}
16510
16511#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16512pub struct XmlColumnOptionList {
16513 pub(crate) syntax: SyntaxNode,
16514}
16515impl XmlColumnOptionList {
16516 #[inline]
16517 pub fn xml_column_option(&self) -> Option<XmlColumnOption> {
16518 support::child(&self.syntax)
16519 }
16520 #[inline]
16521 pub fn xml_column_options(&self) -> AstChildren<XmlColumnOption> {
16522 support::children(&self.syntax)
16523 }
16524}
16525
16526#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16527pub struct XmlElementFn {
16528 pub(crate) syntax: SyntaxNode,
16529}
16530impl XmlElementFn {
16531 #[inline]
16532 pub fn exprs(&self) -> AstChildren<Expr> {
16533 support::children(&self.syntax)
16534 }
16535 #[inline]
16536 pub fn name(&self) -> Option<Name> {
16537 support::child(&self.syntax)
16538 }
16539 #[inline]
16540 pub fn xml_attribute_list(&self) -> Option<XmlAttributeList> {
16541 support::child(&self.syntax)
16542 }
16543 #[inline]
16544 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
16545 support::token(&self.syntax, SyntaxKind::L_PAREN)
16546 }
16547 #[inline]
16548 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
16549 support::token(&self.syntax, SyntaxKind::R_PAREN)
16550 }
16551 #[inline]
16552 pub fn comma_token(&self) -> Option<SyntaxToken> {
16553 support::token(&self.syntax, SyntaxKind::COMMA)
16554 }
16555 #[inline]
16556 pub fn name_token(&self) -> Option<SyntaxToken> {
16557 support::token(&self.syntax, SyntaxKind::NAME_KW)
16558 }
16559 #[inline]
16560 pub fn xmlattributes_token(&self) -> Option<SyntaxToken> {
16561 support::token(&self.syntax, SyntaxKind::XMLATTRIBUTES_KW)
16562 }
16563 #[inline]
16564 pub fn xmlelement_token(&self) -> Option<SyntaxToken> {
16565 support::token(&self.syntax, SyntaxKind::XMLELEMENT_KW)
16566 }
16567}
16568
16569#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16570pub struct XmlExistsFn {
16571 pub(crate) syntax: SyntaxNode,
16572}
16573impl XmlExistsFn {
16574 #[inline]
16575 pub fn expr(&self) -> Option<Expr> {
16576 support::child(&self.syntax)
16577 }
16578 #[inline]
16579 pub fn xml_passing_mech(&self) -> Option<XmlPassingMech> {
16580 support::child(&self.syntax)
16581 }
16582 #[inline]
16583 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
16584 support::token(&self.syntax, SyntaxKind::L_PAREN)
16585 }
16586 #[inline]
16587 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
16588 support::token(&self.syntax, SyntaxKind::R_PAREN)
16589 }
16590 #[inline]
16591 pub fn passing_token(&self) -> Option<SyntaxToken> {
16592 support::token(&self.syntax, SyntaxKind::PASSING_KW)
16593 }
16594 #[inline]
16595 pub fn xmlexists_token(&self) -> Option<SyntaxToken> {
16596 support::token(&self.syntax, SyntaxKind::XMLEXISTS_KW)
16597 }
16598}
16599
16600#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16601pub struct XmlForestFn {
16602 pub(crate) syntax: SyntaxNode,
16603}
16604impl XmlForestFn {
16605 #[inline]
16606 pub fn xml_attribute_list(&self) -> Option<XmlAttributeList> {
16607 support::child(&self.syntax)
16608 }
16609 #[inline]
16610 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
16611 support::token(&self.syntax, SyntaxKind::L_PAREN)
16612 }
16613 #[inline]
16614 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
16615 support::token(&self.syntax, SyntaxKind::R_PAREN)
16616 }
16617 #[inline]
16618 pub fn xmlforest_token(&self) -> Option<SyntaxToken> {
16619 support::token(&self.syntax, SyntaxKind::XMLFOREST_KW)
16620 }
16621}
16622
16623#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16624pub struct XmlNamespace {
16625 pub(crate) syntax: SyntaxNode,
16626}
16627impl XmlNamespace {
16628 #[inline]
16629 pub fn expr(&self) -> Option<Expr> {
16630 support::child(&self.syntax)
16631 }
16632 #[inline]
16633 pub fn name(&self) -> Option<Name> {
16634 support::child(&self.syntax)
16635 }
16636 #[inline]
16637 pub fn as_token(&self) -> Option<SyntaxToken> {
16638 support::token(&self.syntax, SyntaxKind::AS_KW)
16639 }
16640 #[inline]
16641 pub fn default_token(&self) -> Option<SyntaxToken> {
16642 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
16643 }
16644}
16645
16646#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16647pub struct XmlNamespaceList {
16648 pub(crate) syntax: SyntaxNode,
16649}
16650impl XmlNamespaceList {
16651 #[inline]
16652 pub fn xml_namespaces(&self) -> AstChildren<XmlNamespace> {
16653 support::children(&self.syntax)
16654 }
16655 #[inline]
16656 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
16657 support::token(&self.syntax, SyntaxKind::L_PAREN)
16658 }
16659 #[inline]
16660 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
16661 support::token(&self.syntax, SyntaxKind::R_PAREN)
16662 }
16663}
16664
16665#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16666pub struct XmlParseFn {
16667 pub(crate) syntax: SyntaxNode,
16668}
16669impl XmlParseFn {
16670 #[inline]
16671 pub fn expr(&self) -> Option<Expr> {
16672 support::child(&self.syntax)
16673 }
16674 #[inline]
16675 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
16676 support::token(&self.syntax, SyntaxKind::L_PAREN)
16677 }
16678 #[inline]
16679 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
16680 support::token(&self.syntax, SyntaxKind::R_PAREN)
16681 }
16682 #[inline]
16683 pub fn content_token(&self) -> Option<SyntaxToken> {
16684 support::token(&self.syntax, SyntaxKind::CONTENT_KW)
16685 }
16686 #[inline]
16687 pub fn document_token(&self) -> Option<SyntaxToken> {
16688 support::token(&self.syntax, SyntaxKind::DOCUMENT_KW)
16689 }
16690 #[inline]
16691 pub fn preserve_token(&self) -> Option<SyntaxToken> {
16692 support::token(&self.syntax, SyntaxKind::PRESERVE_KW)
16693 }
16694 #[inline]
16695 pub fn strip_token(&self) -> Option<SyntaxToken> {
16696 support::token(&self.syntax, SyntaxKind::STRIP_KW)
16697 }
16698 #[inline]
16699 pub fn whitespace_token(&self) -> Option<SyntaxToken> {
16700 support::token(&self.syntax, SyntaxKind::WHITESPACE_KW)
16701 }
16702 #[inline]
16703 pub fn xmlparse_token(&self) -> Option<SyntaxToken> {
16704 support::token(&self.syntax, SyntaxKind::XMLPARSE_KW)
16705 }
16706}
16707
16708#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16709pub struct XmlPassingMech {
16710 pub(crate) syntax: SyntaxNode,
16711}
16712impl XmlPassingMech {
16713 #[inline]
16714 pub fn by_token(&self) -> Option<SyntaxToken> {
16715 support::token(&self.syntax, SyntaxKind::BY_KW)
16716 }
16717 #[inline]
16718 pub fn ref_token(&self) -> Option<SyntaxToken> {
16719 support::token(&self.syntax, SyntaxKind::REF_KW)
16720 }
16721 #[inline]
16722 pub fn value_token(&self) -> Option<SyntaxToken> {
16723 support::token(&self.syntax, SyntaxKind::VALUE_KW)
16724 }
16725}
16726
16727#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16728pub struct XmlPiFn {
16729 pub(crate) syntax: SyntaxNode,
16730}
16731impl XmlPiFn {
16732 #[inline]
16733 pub fn expr(&self) -> Option<Expr> {
16734 support::child(&self.syntax)
16735 }
16736 #[inline]
16737 pub fn name(&self) -> Option<Name> {
16738 support::child(&self.syntax)
16739 }
16740 #[inline]
16741 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
16742 support::token(&self.syntax, SyntaxKind::L_PAREN)
16743 }
16744 #[inline]
16745 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
16746 support::token(&self.syntax, SyntaxKind::R_PAREN)
16747 }
16748 #[inline]
16749 pub fn comma_token(&self) -> Option<SyntaxToken> {
16750 support::token(&self.syntax, SyntaxKind::COMMA)
16751 }
16752 #[inline]
16753 pub fn name_token(&self) -> Option<SyntaxToken> {
16754 support::token(&self.syntax, SyntaxKind::NAME_KW)
16755 }
16756 #[inline]
16757 pub fn xmlpi_token(&self) -> Option<SyntaxToken> {
16758 support::token(&self.syntax, SyntaxKind::XMLPI_KW)
16759 }
16760}
16761
16762#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16763pub struct XmlRootFn {
16764 pub(crate) syntax: SyntaxNode,
16765}
16766impl XmlRootFn {
16767 #[inline]
16768 pub fn expr(&self) -> Option<Expr> {
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 no_token(&self) -> Option<SyntaxToken> {
16785 support::token(&self.syntax, SyntaxKind::NO_KW)
16786 }
16787 #[inline]
16788 pub fn standalone_token(&self) -> Option<SyntaxToken> {
16789 support::token(&self.syntax, SyntaxKind::STANDALONE_KW)
16790 }
16791 #[inline]
16792 pub fn value_token(&self) -> Option<SyntaxToken> {
16793 support::token(&self.syntax, SyntaxKind::VALUE_KW)
16794 }
16795 #[inline]
16796 pub fn version_token(&self) -> Option<SyntaxToken> {
16797 support::token(&self.syntax, SyntaxKind::VERSION_KW)
16798 }
16799 #[inline]
16800 pub fn xmlroot_token(&self) -> Option<SyntaxToken> {
16801 support::token(&self.syntax, SyntaxKind::XMLROOT_KW)
16802 }
16803 #[inline]
16804 pub fn yes_token(&self) -> Option<SyntaxToken> {
16805 support::token(&self.syntax, SyntaxKind::YES_KW)
16806 }
16807}
16808
16809#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16810pub struct XmlRowPassingClause {
16811 pub(crate) syntax: SyntaxNode,
16812}
16813impl XmlRowPassingClause {
16814 #[inline]
16815 pub fn expr(&self) -> Option<Expr> {
16816 support::child(&self.syntax)
16817 }
16818 #[inline]
16819 pub fn xml_passing_mech(&self) -> Option<XmlPassingMech> {
16820 support::child(&self.syntax)
16821 }
16822 #[inline]
16823 pub fn passing_token(&self) -> Option<SyntaxToken> {
16824 support::token(&self.syntax, SyntaxKind::PASSING_KW)
16825 }
16826}
16827
16828#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16829pub struct XmlSerializeFn {
16830 pub(crate) syntax: SyntaxNode,
16831}
16832impl XmlSerializeFn {
16833 #[inline]
16834 pub fn expr(&self) -> Option<Expr> {
16835 support::child(&self.syntax)
16836 }
16837 #[inline]
16838 pub fn ty(&self) -> Option<Type> {
16839 support::child(&self.syntax)
16840 }
16841 #[inline]
16842 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
16843 support::token(&self.syntax, SyntaxKind::L_PAREN)
16844 }
16845 #[inline]
16846 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
16847 support::token(&self.syntax, SyntaxKind::R_PAREN)
16848 }
16849 #[inline]
16850 pub fn as_token(&self) -> Option<SyntaxToken> {
16851 support::token(&self.syntax, SyntaxKind::AS_KW)
16852 }
16853 #[inline]
16854 pub fn content_token(&self) -> Option<SyntaxToken> {
16855 support::token(&self.syntax, SyntaxKind::CONTENT_KW)
16856 }
16857 #[inline]
16858 pub fn document_token(&self) -> Option<SyntaxToken> {
16859 support::token(&self.syntax, SyntaxKind::DOCUMENT_KW)
16860 }
16861 #[inline]
16862 pub fn indent_token(&self) -> Option<SyntaxToken> {
16863 support::token(&self.syntax, SyntaxKind::INDENT_KW)
16864 }
16865 #[inline]
16866 pub fn no_token(&self) -> Option<SyntaxToken> {
16867 support::token(&self.syntax, SyntaxKind::NO_KW)
16868 }
16869 #[inline]
16870 pub fn xmlserialize_token(&self) -> Option<SyntaxToken> {
16871 support::token(&self.syntax, SyntaxKind::XMLSERIALIZE_KW)
16872 }
16873}
16874
16875#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16876pub struct XmlTable {
16877 pub(crate) syntax: SyntaxNode,
16878}
16879impl XmlTable {
16880 #[inline]
16881 pub fn xml_namespace_list(&self) -> Option<XmlNamespaceList> {
16882 support::child(&self.syntax)
16883 }
16884 #[inline]
16885 pub fn xml_row_passing_clause(&self) -> Option<XmlRowPassingClause> {
16886 support::child(&self.syntax)
16887 }
16888 #[inline]
16889 pub fn xml_table_column_list(&self) -> Option<XmlTableColumnList> {
16890 support::child(&self.syntax)
16891 }
16892 #[inline]
16893 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
16894 support::token(&self.syntax, SyntaxKind::L_PAREN)
16895 }
16896 #[inline]
16897 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
16898 support::token(&self.syntax, SyntaxKind::R_PAREN)
16899 }
16900 #[inline]
16901 pub fn comma_token(&self) -> Option<SyntaxToken> {
16902 support::token(&self.syntax, SyntaxKind::COMMA)
16903 }
16904 #[inline]
16905 pub fn xmlnamespaces_token(&self) -> Option<SyntaxToken> {
16906 support::token(&self.syntax, SyntaxKind::XMLNAMESPACES_KW)
16907 }
16908 #[inline]
16909 pub fn xmltable_token(&self) -> Option<SyntaxToken> {
16910 support::token(&self.syntax, SyntaxKind::XMLTABLE_KW)
16911 }
16912}
16913
16914#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16915pub struct XmlTableColumn {
16916 pub(crate) syntax: SyntaxNode,
16917}
16918impl XmlTableColumn {
16919 #[inline]
16920 pub fn name(&self) -> Option<Name> {
16921 support::child(&self.syntax)
16922 }
16923 #[inline]
16924 pub fn ty(&self) -> Option<Type> {
16925 support::child(&self.syntax)
16926 }
16927 #[inline]
16928 pub fn xml_column_option_list(&self) -> Option<XmlColumnOptionList> {
16929 support::child(&self.syntax)
16930 }
16931 #[inline]
16932 pub fn for_token(&self) -> Option<SyntaxToken> {
16933 support::token(&self.syntax, SyntaxKind::FOR_KW)
16934 }
16935 #[inline]
16936 pub fn ordinality_token(&self) -> Option<SyntaxToken> {
16937 support::token(&self.syntax, SyntaxKind::ORDINALITY_KW)
16938 }
16939}
16940
16941#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16942pub struct XmlTableColumnList {
16943 pub(crate) syntax: SyntaxNode,
16944}
16945impl XmlTableColumnList {
16946 #[inline]
16947 pub fn xml_table_columns(&self) -> AstChildren<XmlTableColumn> {
16948 support::children(&self.syntax)
16949 }
16950 #[inline]
16951 pub fn columns_token(&self) -> Option<SyntaxToken> {
16952 support::token(&self.syntax, SyntaxKind::COLUMNS_KW)
16953 }
16954}
16955
16956#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16957pub enum AlterColumnOption {
16958 AddGenerated(AddGenerated),
16959 DropDefault(DropDefault),
16960 DropExpression(DropExpression),
16961 DropIdentity(DropIdentity),
16962 DropNotNull(DropNotNull),
16963 Inherit(Inherit),
16964 NoInherit(NoInherit),
16965 ResetOptions(ResetOptions),
16966 Restart(Restart),
16967 SetCompression(SetCompression),
16968 SetDefault(SetDefault),
16969 SetExpression(SetExpression),
16970 SetGenerated(SetGenerated),
16971 SetGeneratedOptions(SetGeneratedOptions),
16972 SetNotNull(SetNotNull),
16973 SetOptions(SetOptions),
16974 SetOptionsList(SetOptionsList),
16975 SetSequenceOption(SetSequenceOption),
16976 SetStatistics(SetStatistics),
16977 SetStorage(SetStorage),
16978 SetType(SetType),
16979}
16980
16981#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16982pub enum AlterDomainAction {
16983 AddConstraint(AddConstraint),
16984 DropConstraint(DropConstraint),
16985 DropDefault(DropDefault),
16986 DropNotNull(DropNotNull),
16987 OwnerTo(OwnerTo),
16988 RenameConstraint(RenameConstraint),
16989 RenameTo(RenameTo),
16990 SetDefault(SetDefault),
16991 SetNotNull(SetNotNull),
16992 SetSchema(SetSchema),
16993 ValidateConstraint(ValidateConstraint),
16994}
16995
16996#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16997pub enum AlterIndexAction {
16998 AlterSetStatistics(AlterSetStatistics),
16999 AttachPartition(AttachPartition),
17000 DependsOnExtension(DependsOnExtension),
17001 NoDependsOnExtension(NoDependsOnExtension),
17002 RenameTo(RenameTo),
17003 ResetOptions(ResetOptions),
17004 SetOptions(SetOptions),
17005 SetTablespace(SetTablespace),
17006}
17007
17008#[derive(Debug, Clone, PartialEq, Eq, Hash)]
17009pub enum AlterMaterializedViewAction {
17010 DependsOnExtension(DependsOnExtension),
17011 NoDependsOnExtension(NoDependsOnExtension),
17012 RenameColumn(RenameColumn),
17013 RenameTo(RenameTo),
17014 SetSchema(SetSchema),
17015 AlterTableAction(AlterTableAction),
17016}
17017
17018#[derive(Debug, Clone, PartialEq, Eq, Hash)]
17019pub enum AlterTableAction {
17020 AddColumn(AddColumn),
17021 AddConstraint(AddConstraint),
17022 AlterColumn(AlterColumn),
17023 AlterConstraint(AlterConstraint),
17024 AttachPartition(AttachPartition),
17025 ClusterOn(ClusterOn),
17026 DetachPartition(DetachPartition),
17027 DisableRls(DisableRls),
17028 DisableRule(DisableRule),
17029 DisableTrigger(DisableTrigger),
17030 DropColumn(DropColumn),
17031 DropConstraint(DropConstraint),
17032 EnableAlwaysRule(EnableAlwaysRule),
17033 EnableAlwaysTrigger(EnableAlwaysTrigger),
17034 EnableReplicaRule(EnableReplicaRule),
17035 EnableReplicaTrigger(EnableReplicaTrigger),
17036 EnableRls(EnableRls),
17037 EnableRule(EnableRule),
17038 EnableTrigger(EnableTrigger),
17039 ForceRls(ForceRls),
17040 InheritTable(InheritTable),
17041 MergePartitions(MergePartitions),
17042 NoForceRls(NoForceRls),
17043 NoInheritTable(NoInheritTable),
17044 NotOf(NotOf),
17045 OfType(OfType),
17046 OptionItemList(OptionItemList),
17047 OwnerTo(OwnerTo),
17048 RenameColumn(RenameColumn),
17049 RenameConstraint(RenameConstraint),
17050 RenameTo(RenameTo),
17051 ReplicaIdentity(ReplicaIdentity),
17052 ResetOptions(ResetOptions),
17053 SetAccessMethod(SetAccessMethod),
17054 SetLogged(SetLogged),
17055 SetOptions(SetOptions),
17056 SetSchema(SetSchema),
17057 SetTablespace(SetTablespace),
17058 SetUnlogged(SetUnlogged),
17059 SetWithoutCluster(SetWithoutCluster),
17060 SetWithoutOids(SetWithoutOids),
17061 SplitPartition(SplitPartition),
17062 ValidateConstraint(ValidateConstraint),
17063}
17064
17065#[derive(Debug, Clone, PartialEq, Eq, Hash)]
17066pub enum ColumnConstraint {
17067 CheckConstraint(CheckConstraint),
17068 DefaultConstraint(DefaultConstraint),
17069 ExcludeConstraint(ExcludeConstraint),
17070 NotNullConstraint(NotNullConstraint),
17071 PrimaryKeyConstraint(PrimaryKeyConstraint),
17072 ReferencesConstraint(ReferencesConstraint),
17073 UniqueConstraint(UniqueConstraint),
17074}
17075
17076#[derive(Debug, Clone, PartialEq, Eq, Hash)]
17077pub enum ConfigValue {
17078 Literal(Literal),
17079 NameRef(NameRef),
17080}
17081
17082#[derive(Debug, Clone, PartialEq, Eq, Hash)]
17083pub enum ConflictAction {
17084 ConflictDoNothing(ConflictDoNothing),
17085 ConflictDoSelect(ConflictDoSelect),
17086 ConflictDoUpdateSet(ConflictDoUpdateSet),
17087}
17088
17089#[derive(Debug, Clone, PartialEq, Eq, Hash)]
17090pub enum ConflictTarget {
17091 ConflictOnConstraint(ConflictOnConstraint),
17092 ConflictOnIndex(ConflictOnIndex),
17093}
17094
17095#[derive(Debug, Clone, PartialEq, Eq, Hash)]
17096pub enum Constraint {
17097 CheckConstraint(CheckConstraint),
17098 DefaultConstraint(DefaultConstraint),
17099 ForeignKeyConstraint(ForeignKeyConstraint),
17100 GeneratedConstraint(GeneratedConstraint),
17101 NotNullConstraint(NotNullConstraint),
17102 NullConstraint(NullConstraint),
17103 PrimaryKeyConstraint(PrimaryKeyConstraint),
17104 ReferencesConstraint(ReferencesConstraint),
17105 UniqueConstraint(UniqueConstraint),
17106}
17107
17108#[derive(Debug, Clone, PartialEq, Eq, Hash)]
17109pub enum ExplainStmt {
17110 CompoundSelect(CompoundSelect),
17111 CreateMaterializedView(CreateMaterializedView),
17112 CreateTableAs(CreateTableAs),
17113 Declare(Declare),
17114 Delete(Delete),
17115 Execute(Execute),
17116 Insert(Insert),
17117 Merge(Merge),
17118 ParenSelect(ParenSelect),
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 Expr {
17128 ArrayExpr(ArrayExpr),
17129 BetweenExpr(BetweenExpr),
17130 BinExpr(BinExpr),
17131 CallExpr(CallExpr),
17132 CaseExpr(CaseExpr),
17133 CastExpr(CastExpr),
17134 FieldExpr(FieldExpr),
17135 IndexExpr(IndexExpr),
17136 Literal(Literal),
17137 NameRef(NameRef),
17138 ParenExpr(ParenExpr),
17139 PostfixExpr(PostfixExpr),
17140 PrefixExpr(PrefixExpr),
17141 SliceExpr(SliceExpr),
17142 TupleExpr(TupleExpr),
17143}
17144
17145#[derive(Debug, Clone, PartialEq, Eq, Hash)]
17146pub enum FuncOption {
17147 AsFuncOption(AsFuncOption),
17148 BeginFuncOptionList(BeginFuncOptionList),
17149 CostFuncOption(CostFuncOption),
17150 LanguageFuncOption(LanguageFuncOption),
17151 LeakproofFuncOption(LeakproofFuncOption),
17152 ParallelFuncOption(ParallelFuncOption),
17153 ResetFuncOption(ResetFuncOption),
17154 ReturnFuncOption(ReturnFuncOption),
17155 RowsFuncOption(RowsFuncOption),
17156 SecurityFuncOption(SecurityFuncOption),
17157 SetFuncOption(SetFuncOption),
17158 StrictFuncOption(StrictFuncOption),
17159 SupportFuncOption(SupportFuncOption),
17160 TransformFuncOption(TransformFuncOption),
17161 VolatilityFuncOption(VolatilityFuncOption),
17162 WindowFuncOption(WindowFuncOption),
17163}
17164
17165#[derive(Debug, Clone, PartialEq, Eq, Hash)]
17166pub enum GroupBy {
17167 GroupingCube(GroupingCube),
17168 GroupingExpr(GroupingExpr),
17169 GroupingRollup(GroupingRollup),
17170 GroupingSets(GroupingSets),
17171}
17172
17173#[derive(Debug, Clone, PartialEq, Eq, Hash)]
17174pub enum JoinType {
17175 JoinCross(JoinCross),
17176 JoinFull(JoinFull),
17177 JoinInner(JoinInner),
17178 JoinLeft(JoinLeft),
17179 JoinRight(JoinRight),
17180}
17181
17182#[derive(Debug, Clone, PartialEq, Eq, Hash)]
17183pub enum JsonBehavior {
17184 JsonBehaviorDefault(JsonBehaviorDefault),
17185 JsonBehaviorEmptyArray(JsonBehaviorEmptyArray),
17186 JsonBehaviorEmptyObject(JsonBehaviorEmptyObject),
17187 JsonBehaviorError(JsonBehaviorError),
17188 JsonBehaviorFalse(JsonBehaviorFalse),
17189 JsonBehaviorNull(JsonBehaviorNull),
17190 JsonBehaviorTrue(JsonBehaviorTrue),
17191 JsonBehaviorUnknown(JsonBehaviorUnknown),
17192}
17193
17194#[derive(Debug, Clone, PartialEq, Eq, Hash)]
17195pub enum MatchType {
17196 MatchFull(MatchFull),
17197 MatchPartial(MatchPartial),
17198 MatchSimple(MatchSimple),
17199}
17200
17201#[derive(Debug, Clone, PartialEq, Eq, Hash)]
17202pub enum MergeAction {
17203 MergeDelete(MergeDelete),
17204 MergeDoNothing(MergeDoNothing),
17205 MergeInsert(MergeInsert),
17206 MergeUpdate(MergeUpdate),
17207}
17208
17209#[derive(Debug, Clone, PartialEq, Eq, Hash)]
17210pub enum MergeWhenClause {
17211 MergeWhenMatched(MergeWhenMatched),
17212 MergeWhenNotMatchedSource(MergeWhenNotMatchedSource),
17213 MergeWhenNotMatchedTarget(MergeWhenNotMatchedTarget),
17214}
17215
17216#[derive(Debug, Clone, PartialEq, Eq, Hash)]
17217pub enum OnCommitAction {
17218 DeleteRows(DeleteRows),
17219 Drop(Drop),
17220 PreserveRows(PreserveRows),
17221}
17222
17223#[derive(Debug, Clone, PartialEq, Eq, Hash)]
17224pub enum ParamMode {
17225 ParamIn(ParamIn),
17226 ParamInOut(ParamInOut),
17227 ParamOut(ParamOut),
17228 ParamVariadic(ParamVariadic),
17229}
17230
17231#[derive(Debug, Clone, PartialEq, Eq, Hash)]
17232pub enum PartitionType {
17233 PartitionDefault(PartitionDefault),
17234 PartitionForValuesFrom(PartitionForValuesFrom),
17235 PartitionForValuesIn(PartitionForValuesIn),
17236 PartitionForValuesWith(PartitionForValuesWith),
17237}
17238
17239#[derive(Debug, Clone, PartialEq, Eq, Hash)]
17240pub enum PreparableStmt {
17241 CompoundSelect(CompoundSelect),
17242 Delete(Delete),
17243 Insert(Insert),
17244 Merge(Merge),
17245 Select(Select),
17246 SelectInto(SelectInto),
17247 Table(Table),
17248 Update(Update),
17249 Values(Values),
17250}
17251
17252#[derive(Debug, Clone, PartialEq, Eq, Hash)]
17253pub enum RefAction {
17254 Cascade(Cascade),
17255 NoAction(NoAction),
17256 Restrict(Restrict),
17257 SetDefaultColumns(SetDefaultColumns),
17258 SetNullColumns(SetNullColumns),
17259}
17260
17261#[derive(Debug, Clone, PartialEq, Eq, Hash)]
17262pub enum SchemaElement {
17263 CreateIndex(CreateIndex),
17264 CreateSequence(CreateSequence),
17265 CreateTable(CreateTable),
17266 CreateTrigger(CreateTrigger),
17267 CreateView(CreateView),
17268 Grant(Grant),
17269}
17270
17271#[derive(Debug, Clone, PartialEq, Eq, Hash)]
17272pub enum SelectVariant {
17273 CompoundSelect(CompoundSelect),
17274 ParenSelect(ParenSelect),
17275 Select(Select),
17276 SelectInto(SelectInto),
17277 Table(Table),
17278 Values(Values),
17279}
17280
17281#[derive(Debug, Clone, PartialEq, Eq, Hash)]
17282pub enum SetColumn {
17283 SetMultipleColumns(SetMultipleColumns),
17284 SetSingleColumn(SetSingleColumn),
17285}
17286
17287#[derive(Debug, Clone, PartialEq, Eq, Hash)]
17288pub enum Stmt {
17289 AlterAggregate(AlterAggregate),
17290 AlterCollation(AlterCollation),
17291 AlterConversion(AlterConversion),
17292 AlterDatabase(AlterDatabase),
17293 AlterDefaultPrivileges(AlterDefaultPrivileges),
17294 AlterDomain(AlterDomain),
17295 AlterEventTrigger(AlterEventTrigger),
17296 AlterExtension(AlterExtension),
17297 AlterForeignDataWrapper(AlterForeignDataWrapper),
17298 AlterForeignTable(AlterForeignTable),
17299 AlterFunction(AlterFunction),
17300 AlterGroup(AlterGroup),
17301 AlterIndex(AlterIndex),
17302 AlterLanguage(AlterLanguage),
17303 AlterLargeObject(AlterLargeObject),
17304 AlterMaterializedView(AlterMaterializedView),
17305 AlterOperator(AlterOperator),
17306 AlterOperatorClass(AlterOperatorClass),
17307 AlterOperatorFamily(AlterOperatorFamily),
17308 AlterPolicy(AlterPolicy),
17309 AlterProcedure(AlterProcedure),
17310 AlterPublication(AlterPublication),
17311 AlterRole(AlterRole),
17312 AlterRoutine(AlterRoutine),
17313 AlterRule(AlterRule),
17314 AlterSchema(AlterSchema),
17315 AlterSequence(AlterSequence),
17316 AlterServer(AlterServer),
17317 AlterStatistics(AlterStatistics),
17318 AlterSubscription(AlterSubscription),
17319 AlterSystem(AlterSystem),
17320 AlterTable(AlterTable),
17321 AlterTablespace(AlterTablespace),
17322 AlterTextSearchConfiguration(AlterTextSearchConfiguration),
17323 AlterTextSearchDictionary(AlterTextSearchDictionary),
17324 AlterTextSearchParser(AlterTextSearchParser),
17325 AlterTextSearchTemplate(AlterTextSearchTemplate),
17326 AlterTrigger(AlterTrigger),
17327 AlterType(AlterType),
17328 AlterUser(AlterUser),
17329 AlterUserMapping(AlterUserMapping),
17330 AlterView(AlterView),
17331 Analyze(Analyze),
17332 Begin(Begin),
17333 Call(Call),
17334 Checkpoint(Checkpoint),
17335 Close(Close),
17336 Cluster(Cluster),
17337 CommentOn(CommentOn),
17338 Commit(Commit),
17339 Copy(Copy),
17340 CreateAccessMethod(CreateAccessMethod),
17341 CreateAggregate(CreateAggregate),
17342 CreateCast(CreateCast),
17343 CreateCollation(CreateCollation),
17344 CreateConversion(CreateConversion),
17345 CreateDatabase(CreateDatabase),
17346 CreateDomain(CreateDomain),
17347 CreateEventTrigger(CreateEventTrigger),
17348 CreateExtension(CreateExtension),
17349 CreateForeignDataWrapper(CreateForeignDataWrapper),
17350 CreateForeignTable(CreateForeignTable),
17351 CreateFunction(CreateFunction),
17352 CreateGroup(CreateGroup),
17353 CreateIndex(CreateIndex),
17354 CreateLanguage(CreateLanguage),
17355 CreateMaterializedView(CreateMaterializedView),
17356 CreateOperator(CreateOperator),
17357 CreateOperatorClass(CreateOperatorClass),
17358 CreateOperatorFamily(CreateOperatorFamily),
17359 CreatePolicy(CreatePolicy),
17360 CreateProcedure(CreateProcedure),
17361 CreatePublication(CreatePublication),
17362 CreateRole(CreateRole),
17363 CreateRule(CreateRule),
17364 CreateSchema(CreateSchema),
17365 CreateSequence(CreateSequence),
17366 CreateServer(CreateServer),
17367 CreateStatistics(CreateStatistics),
17368 CreateSubscription(CreateSubscription),
17369 CreateTable(CreateTable),
17370 CreateTableAs(CreateTableAs),
17371 CreateTablespace(CreateTablespace),
17372 CreateTextSearchConfiguration(CreateTextSearchConfiguration),
17373 CreateTextSearchDictionary(CreateTextSearchDictionary),
17374 CreateTextSearchParser(CreateTextSearchParser),
17375 CreateTextSearchTemplate(CreateTextSearchTemplate),
17376 CreateTransform(CreateTransform),
17377 CreateTrigger(CreateTrigger),
17378 CreateType(CreateType),
17379 CreateUser(CreateUser),
17380 CreateUserMapping(CreateUserMapping),
17381 CreateView(CreateView),
17382 Deallocate(Deallocate),
17383 Declare(Declare),
17384 Delete(Delete),
17385 Discard(Discard),
17386 Do(Do),
17387 DropAccessMethod(DropAccessMethod),
17388 DropAggregate(DropAggregate),
17389 DropCast(DropCast),
17390 DropCollation(DropCollation),
17391 DropConversion(DropConversion),
17392 DropDatabase(DropDatabase),
17393 DropDomain(DropDomain),
17394 DropEventTrigger(DropEventTrigger),
17395 DropExtension(DropExtension),
17396 DropForeignDataWrapper(DropForeignDataWrapper),
17397 DropForeignTable(DropForeignTable),
17398 DropFunction(DropFunction),
17399 DropGroup(DropGroup),
17400 DropIndex(DropIndex),
17401 DropLanguage(DropLanguage),
17402 DropMaterializedView(DropMaterializedView),
17403 DropOperator(DropOperator),
17404 DropOperatorClass(DropOperatorClass),
17405 DropOperatorFamily(DropOperatorFamily),
17406 DropOwned(DropOwned),
17407 DropPolicy(DropPolicy),
17408 DropProcedure(DropProcedure),
17409 DropPublication(DropPublication),
17410 DropRole(DropRole),
17411 DropRoutine(DropRoutine),
17412 DropRule(DropRule),
17413 DropSchema(DropSchema),
17414 DropSequence(DropSequence),
17415 DropServer(DropServer),
17416 DropStatistics(DropStatistics),
17417 DropSubscription(DropSubscription),
17418 DropTable(DropTable),
17419 DropTablespace(DropTablespace),
17420 DropTextSearchConfig(DropTextSearchConfig),
17421 DropTextSearchDict(DropTextSearchDict),
17422 DropTextSearchParser(DropTextSearchParser),
17423 DropTextSearchTemplate(DropTextSearchTemplate),
17424 DropTransform(DropTransform),
17425 DropTrigger(DropTrigger),
17426 DropType(DropType),
17427 DropUser(DropUser),
17428 DropUserMapping(DropUserMapping),
17429 DropView(DropView),
17430 Execute(Execute),
17431 Explain(Explain),
17432 Fetch(Fetch),
17433 Grant(Grant),
17434 ImportForeignSchema(ImportForeignSchema),
17435 Insert(Insert),
17436 Listen(Listen),
17437 Load(Load),
17438 Lock(Lock),
17439 Merge(Merge),
17440 Move(Move),
17441 Notify(Notify),
17442 ParenSelect(ParenSelect),
17443 Prepare(Prepare),
17444 PrepareTransaction(PrepareTransaction),
17445 Reassign(Reassign),
17446 Refresh(Refresh),
17447 Reindex(Reindex),
17448 ReleaseSavepoint(ReleaseSavepoint),
17449 Reset(Reset),
17450 ResetSessionAuth(ResetSessionAuth),
17451 Revoke(Revoke),
17452 Rollback(Rollback),
17453 Savepoint(Savepoint),
17454 SecurityLabel(SecurityLabel),
17455 Select(Select),
17456 SelectInto(SelectInto),
17457 Set(Set),
17458 SetConstraints(SetConstraints),
17459 SetRole(SetRole),
17460 SetSessionAuth(SetSessionAuth),
17461 SetTransaction(SetTransaction),
17462 Show(Show),
17463 Table(Table),
17464 Truncate(Truncate),
17465 Unlisten(Unlisten),
17466 Update(Update),
17467 Vacuum(Vacuum),
17468 Values(Values),
17469}
17470
17471#[derive(Debug, Clone, PartialEq, Eq, Hash)]
17472pub enum TableArg {
17473 Column(Column),
17474 LikeClause(LikeClause),
17475 TableConstraint(TableConstraint),
17476}
17477
17478#[derive(Debug, Clone, PartialEq, Eq, Hash)]
17479pub enum TableConstraint {
17480 CheckConstraint(CheckConstraint),
17481 ExcludeConstraint(ExcludeConstraint),
17482 ForeignKeyConstraint(ForeignKeyConstraint),
17483 PrimaryKeyConstraint(PrimaryKeyConstraint),
17484 UniqueConstraint(UniqueConstraint),
17485}
17486
17487#[derive(Debug, Clone, PartialEq, Eq, Hash)]
17488pub enum Timezone {
17489 WithTimezone(WithTimezone),
17490 WithoutTimezone(WithoutTimezone),
17491}
17492
17493#[derive(Debug, Clone, PartialEq, Eq, Hash)]
17494pub enum TransactionMode {
17495 Deferrable(Deferrable),
17496 NotDeferrable(NotDeferrable),
17497 ReadCommitted(ReadCommitted),
17498 ReadOnly(ReadOnly),
17499 ReadUncommitted(ReadUncommitted),
17500 ReadWrite(ReadWrite),
17501 RepeatableRead(RepeatableRead),
17502 Serializable(Serializable),
17503}
17504
17505#[derive(Debug, Clone, PartialEq, Eq, Hash)]
17506pub enum Type {
17507 ArrayType(ArrayType),
17508 BitType(BitType),
17509 CharType(CharType),
17510 DoubleType(DoubleType),
17511 ExprType(ExprType),
17512 IntervalType(IntervalType),
17513 PathType(PathType),
17514 PercentType(PercentType),
17515 TimeType(TimeType),
17516}
17517
17518#[derive(Debug, Clone, PartialEq, Eq, Hash)]
17519pub enum WithQuery {
17520 CompoundSelect(CompoundSelect),
17521 Delete(Delete),
17522 Insert(Insert),
17523 Merge(Merge),
17524 ParenSelect(ParenSelect),
17525 Select(Select),
17526 Table(Table),
17527 Update(Update),
17528 Values(Values),
17529}
17530impl AstNode for AddColumn {
17531 #[inline]
17532 fn can_cast(kind: SyntaxKind) -> bool {
17533 kind == SyntaxKind::ADD_COLUMN
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 AddConstraint {
17549 #[inline]
17550 fn can_cast(kind: SyntaxKind) -> bool {
17551 kind == SyntaxKind::ADD_CONSTRAINT
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 AddGenerated {
17567 #[inline]
17568 fn can_cast(kind: SyntaxKind) -> bool {
17569 kind == SyntaxKind::ADD_GENERATED
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 AddOpClassOptions {
17585 #[inline]
17586 fn can_cast(kind: SyntaxKind) -> bool {
17587 kind == SyntaxKind::ADD_OP_CLASS_OPTIONS
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 Aggregate {
17603 #[inline]
17604 fn can_cast(kind: SyntaxKind) -> bool {
17605 kind == SyntaxKind::AGGREGATE
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 Alias {
17621 #[inline]
17622 fn can_cast(kind: SyntaxKind) -> bool {
17623 kind == SyntaxKind::ALIAS
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 AllFn {
17639 #[inline]
17640 fn can_cast(kind: SyntaxKind) -> bool {
17641 kind == SyntaxKind::ALL_FN
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 AlterAggregate {
17657 #[inline]
17658 fn can_cast(kind: SyntaxKind) -> bool {
17659 kind == SyntaxKind::ALTER_AGGREGATE
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 AlterCollation {
17675 #[inline]
17676 fn can_cast(kind: SyntaxKind) -> bool {
17677 kind == SyntaxKind::ALTER_COLLATION
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 AlterColumn {
17693 #[inline]
17694 fn can_cast(kind: SyntaxKind) -> bool {
17695 kind == SyntaxKind::ALTER_COLUMN
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 AlterConstraint {
17711 #[inline]
17712 fn can_cast(kind: SyntaxKind) -> bool {
17713 kind == SyntaxKind::ALTER_CONSTRAINT
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 AlterConversion {
17729 #[inline]
17730 fn can_cast(kind: SyntaxKind) -> bool {
17731 kind == SyntaxKind::ALTER_CONVERSION
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 AlterDatabase {
17747 #[inline]
17748 fn can_cast(kind: SyntaxKind) -> bool {
17749 kind == SyntaxKind::ALTER_DATABASE
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 AlterDefaultPrivileges {
17765 #[inline]
17766 fn can_cast(kind: SyntaxKind) -> bool {
17767 kind == SyntaxKind::ALTER_DEFAULT_PRIVILEGES
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 AlterDomain {
17783 #[inline]
17784 fn can_cast(kind: SyntaxKind) -> bool {
17785 kind == SyntaxKind::ALTER_DOMAIN
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 AlterEventTrigger {
17801 #[inline]
17802 fn can_cast(kind: SyntaxKind) -> bool {
17803 kind == SyntaxKind::ALTER_EVENT_TRIGGER
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 AlterExtension {
17819 #[inline]
17820 fn can_cast(kind: SyntaxKind) -> bool {
17821 kind == SyntaxKind::ALTER_EXTENSION
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 AlterForeignDataWrapper {
17837 #[inline]
17838 fn can_cast(kind: SyntaxKind) -> bool {
17839 kind == SyntaxKind::ALTER_FOREIGN_DATA_WRAPPER
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 AlterForeignTable {
17855 #[inline]
17856 fn can_cast(kind: SyntaxKind) -> bool {
17857 kind == SyntaxKind::ALTER_FOREIGN_TABLE
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 AlterFunction {
17873 #[inline]
17874 fn can_cast(kind: SyntaxKind) -> bool {
17875 kind == SyntaxKind::ALTER_FUNCTION
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 AlterGroup {
17891 #[inline]
17892 fn can_cast(kind: SyntaxKind) -> bool {
17893 kind == SyntaxKind::ALTER_GROUP
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 AlterIndex {
17909 #[inline]
17910 fn can_cast(kind: SyntaxKind) -> bool {
17911 kind == SyntaxKind::ALTER_INDEX
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 AlterLanguage {
17927 #[inline]
17928 fn can_cast(kind: SyntaxKind) -> bool {
17929 kind == SyntaxKind::ALTER_LANGUAGE
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 AlterLargeObject {
17945 #[inline]
17946 fn can_cast(kind: SyntaxKind) -> bool {
17947 kind == SyntaxKind::ALTER_LARGE_OBJECT
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 AlterMaterializedView {
17963 #[inline]
17964 fn can_cast(kind: SyntaxKind) -> bool {
17965 kind == SyntaxKind::ALTER_MATERIALIZED_VIEW
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 AlterOperator {
17981 #[inline]
17982 fn can_cast(kind: SyntaxKind) -> bool {
17983 kind == SyntaxKind::ALTER_OPERATOR
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 AlterOperatorClass {
17999 #[inline]
18000 fn can_cast(kind: SyntaxKind) -> bool {
18001 kind == SyntaxKind::ALTER_OPERATOR_CLASS
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 AlterOperatorFamily {
18017 #[inline]
18018 fn can_cast(kind: SyntaxKind) -> bool {
18019 kind == SyntaxKind::ALTER_OPERATOR_FAMILY
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 AlterOption {
18035 #[inline]
18036 fn can_cast(kind: SyntaxKind) -> bool {
18037 kind == SyntaxKind::ALTER_OPTION
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 AlterOptionList {
18053 #[inline]
18054 fn can_cast(kind: SyntaxKind) -> bool {
18055 kind == SyntaxKind::ALTER_OPTION_LIST
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 AlterPolicy {
18071 #[inline]
18072 fn can_cast(kind: SyntaxKind) -> bool {
18073 kind == SyntaxKind::ALTER_POLICY
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 AlterProcedure {
18089 #[inline]
18090 fn can_cast(kind: SyntaxKind) -> bool {
18091 kind == SyntaxKind::ALTER_PROCEDURE
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 AlterPublication {
18107 #[inline]
18108 fn can_cast(kind: SyntaxKind) -> bool {
18109 kind == SyntaxKind::ALTER_PUBLICATION
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 AlterRole {
18125 #[inline]
18126 fn can_cast(kind: SyntaxKind) -> bool {
18127 kind == SyntaxKind::ALTER_ROLE
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 AlterRoutine {
18143 #[inline]
18144 fn can_cast(kind: SyntaxKind) -> bool {
18145 kind == SyntaxKind::ALTER_ROUTINE
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 AlterRule {
18161 #[inline]
18162 fn can_cast(kind: SyntaxKind) -> bool {
18163 kind == SyntaxKind::ALTER_RULE
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 AlterSchema {
18179 #[inline]
18180 fn can_cast(kind: SyntaxKind) -> bool {
18181 kind == SyntaxKind::ALTER_SCHEMA
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 AlterSequence {
18197 #[inline]
18198 fn can_cast(kind: SyntaxKind) -> bool {
18199 kind == SyntaxKind::ALTER_SEQUENCE
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 AlterServer {
18215 #[inline]
18216 fn can_cast(kind: SyntaxKind) -> bool {
18217 kind == SyntaxKind::ALTER_SERVER
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 AlterSetStatistics {
18233 #[inline]
18234 fn can_cast(kind: SyntaxKind) -> bool {
18235 kind == SyntaxKind::ALTER_SET_STATISTICS
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 AlterStatistics {
18251 #[inline]
18252 fn can_cast(kind: SyntaxKind) -> bool {
18253 kind == SyntaxKind::ALTER_STATISTICS
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 AlterSubscription {
18269 #[inline]
18270 fn can_cast(kind: SyntaxKind) -> bool {
18271 kind == SyntaxKind::ALTER_SUBSCRIPTION
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 AlterSystem {
18287 #[inline]
18288 fn can_cast(kind: SyntaxKind) -> bool {
18289 kind == SyntaxKind::ALTER_SYSTEM
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 AlterTable {
18305 #[inline]
18306 fn can_cast(kind: SyntaxKind) -> bool {
18307 kind == SyntaxKind::ALTER_TABLE
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 AlterTablespace {
18323 #[inline]
18324 fn can_cast(kind: SyntaxKind) -> bool {
18325 kind == SyntaxKind::ALTER_TABLESPACE
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 AlterTextSearchConfiguration {
18341 #[inline]
18342 fn can_cast(kind: SyntaxKind) -> bool {
18343 kind == SyntaxKind::ALTER_TEXT_SEARCH_CONFIGURATION
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 AlterTextSearchDictionary {
18359 #[inline]
18360 fn can_cast(kind: SyntaxKind) -> bool {
18361 kind == SyntaxKind::ALTER_TEXT_SEARCH_DICTIONARY
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 AlterTextSearchParser {
18377 #[inline]
18378 fn can_cast(kind: SyntaxKind) -> bool {
18379 kind == SyntaxKind::ALTER_TEXT_SEARCH_PARSER
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 AlterTextSearchTemplate {
18395 #[inline]
18396 fn can_cast(kind: SyntaxKind) -> bool {
18397 kind == SyntaxKind::ALTER_TEXT_SEARCH_TEMPLATE
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 AlterTrigger {
18413 #[inline]
18414 fn can_cast(kind: SyntaxKind) -> bool {
18415 kind == SyntaxKind::ALTER_TRIGGER
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 AlterType {
18431 #[inline]
18432 fn can_cast(kind: SyntaxKind) -> bool {
18433 kind == SyntaxKind::ALTER_TYPE
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 AlterUser {
18449 #[inline]
18450 fn can_cast(kind: SyntaxKind) -> bool {
18451 kind == SyntaxKind::ALTER_USER
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 AlterUserMapping {
18467 #[inline]
18468 fn can_cast(kind: SyntaxKind) -> bool {
18469 kind == SyntaxKind::ALTER_USER_MAPPING
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 AlterView {
18485 #[inline]
18486 fn can_cast(kind: SyntaxKind) -> bool {
18487 kind == SyntaxKind::ALTER_VIEW
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 Analyze {
18503 #[inline]
18504 fn can_cast(kind: SyntaxKind) -> bool {
18505 kind == SyntaxKind::ANALYZE
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 AnyFn {
18521 #[inline]
18522 fn can_cast(kind: SyntaxKind) -> bool {
18523 kind == SyntaxKind::ANY_FN
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 Arg {
18539 #[inline]
18540 fn can_cast(kind: SyntaxKind) -> bool {
18541 kind == SyntaxKind::ARG
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 ArgList {
18557 #[inline]
18558 fn can_cast(kind: SyntaxKind) -> bool {
18559 kind == SyntaxKind::ARG_LIST
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 ArrayExpr {
18575 #[inline]
18576 fn can_cast(kind: SyntaxKind) -> bool {
18577 kind == SyntaxKind::ARRAY_EXPR
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 ArrayType {
18593 #[inline]
18594 fn can_cast(kind: SyntaxKind) -> bool {
18595 kind == SyntaxKind::ARRAY_TYPE
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 AsFuncOption {
18611 #[inline]
18612 fn can_cast(kind: SyntaxKind) -> bool {
18613 kind == SyntaxKind::AS_FUNC_OPTION
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 AsName {
18629 #[inline]
18630 fn can_cast(kind: SyntaxKind) -> bool {
18631 kind == SyntaxKind::AS_NAME
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 AsPolicyType {
18647 #[inline]
18648 fn can_cast(kind: SyntaxKind) -> bool {
18649 kind == SyntaxKind::AS_POLICY_TYPE
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 AtTimeZone {
18665 #[inline]
18666 fn can_cast(kind: SyntaxKind) -> bool {
18667 kind == SyntaxKind::AT_TIME_ZONE
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 AttachPartition {
18683 #[inline]
18684 fn can_cast(kind: SyntaxKind) -> bool {
18685 kind == SyntaxKind::ATTACH_PARTITION
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 AttributeList {
18701 #[inline]
18702 fn can_cast(kind: SyntaxKind) -> bool {
18703 kind == SyntaxKind::ATTRIBUTE_LIST
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 AttributeOption {
18719 #[inline]
18720 fn can_cast(kind: SyntaxKind) -> bool {
18721 kind == SyntaxKind::ATTRIBUTE_OPTION
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 AttributeValue {
18737 #[inline]
18738 fn can_cast(kind: SyntaxKind) -> bool {
18739 kind == SyntaxKind::ATTRIBUTE_VALUE
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 Begin {
18755 #[inline]
18756 fn can_cast(kind: SyntaxKind) -> bool {
18757 kind == SyntaxKind::BEGIN
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 BeginFuncOption {
18773 #[inline]
18774 fn can_cast(kind: SyntaxKind) -> bool {
18775 kind == SyntaxKind::BEGIN_FUNC_OPTION
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 BeginFuncOptionList {
18791 #[inline]
18792 fn can_cast(kind: SyntaxKind) -> bool {
18793 kind == SyntaxKind::BEGIN_FUNC_OPTION_LIST
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 BetweenExpr {
18809 #[inline]
18810 fn can_cast(kind: SyntaxKind) -> bool {
18811 kind == SyntaxKind::BETWEEN_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 BinExpr {
18827 #[inline]
18828 fn can_cast(kind: SyntaxKind) -> bool {
18829 kind == SyntaxKind::BIN_EXPR
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 BitType {
18845 #[inline]
18846 fn can_cast(kind: SyntaxKind) -> bool {
18847 kind == SyntaxKind::BIT_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 Call {
18863 #[inline]
18864 fn can_cast(kind: SyntaxKind) -> bool {
18865 kind == SyntaxKind::CALL
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 CallExpr {
18881 #[inline]
18882 fn can_cast(kind: SyntaxKind) -> bool {
18883 kind == SyntaxKind::CALL_EXPR
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 Cascade {
18899 #[inline]
18900 fn can_cast(kind: SyntaxKind) -> bool {
18901 kind == SyntaxKind::CASCADE
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 CaseExpr {
18917 #[inline]
18918 fn can_cast(kind: SyntaxKind) -> bool {
18919 kind == SyntaxKind::CASE_EXPR
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 CastExpr {
18935 #[inline]
18936 fn can_cast(kind: SyntaxKind) -> bool {
18937 kind == SyntaxKind::CAST_EXPR
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 CastSig {
18953 #[inline]
18954 fn can_cast(kind: SyntaxKind) -> bool {
18955 kind == SyntaxKind::CAST_SIG
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 CharType {
18971 #[inline]
18972 fn can_cast(kind: SyntaxKind) -> bool {
18973 kind == SyntaxKind::CHAR_TYPE
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 CheckConstraint {
18989 #[inline]
18990 fn can_cast(kind: SyntaxKind) -> bool {
18991 kind == SyntaxKind::CHECK_CONSTRAINT
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 Checkpoint {
19007 #[inline]
19008 fn can_cast(kind: SyntaxKind) -> bool {
19009 kind == SyntaxKind::CHECKPOINT
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 Close {
19025 #[inline]
19026 fn can_cast(kind: SyntaxKind) -> bool {
19027 kind == SyntaxKind::CLOSE
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 Cluster {
19043 #[inline]
19044 fn can_cast(kind: SyntaxKind) -> bool {
19045 kind == SyntaxKind::CLUSTER
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 ClusterOn {
19061 #[inline]
19062 fn can_cast(kind: SyntaxKind) -> bool {
19063 kind == SyntaxKind::CLUSTER_ON
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 Collate {
19079 #[inline]
19080 fn can_cast(kind: SyntaxKind) -> bool {
19081 kind == SyntaxKind::COLLATE
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 CollationForFn {
19097 #[inline]
19098 fn can_cast(kind: SyntaxKind) -> bool {
19099 kind == SyntaxKind::COLLATION_FOR_FN
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 ColonColon {
19115 #[inline]
19116 fn can_cast(kind: SyntaxKind) -> bool {
19117 kind == SyntaxKind::COLON_COLON
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 ColonEq {
19133 #[inline]
19134 fn can_cast(kind: SyntaxKind) -> bool {
19135 kind == SyntaxKind::COLON_EQ
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 Column {
19151 #[inline]
19152 fn can_cast(kind: SyntaxKind) -> bool {
19153 kind == SyntaxKind::COLUMN
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 ColumnList {
19169 #[inline]
19170 fn can_cast(kind: SyntaxKind) -> bool {
19171 kind == SyntaxKind::COLUMN_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 CommentOn {
19187 #[inline]
19188 fn can_cast(kind: SyntaxKind) -> bool {
19189 kind == SyntaxKind::COMMENT_ON
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 Commit {
19205 #[inline]
19206 fn can_cast(kind: SyntaxKind) -> bool {
19207 kind == SyntaxKind::COMMIT
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 CompoundSelect {
19223 #[inline]
19224 fn can_cast(kind: SyntaxKind) -> bool {
19225 kind == SyntaxKind::COMPOUND_SELECT
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 CompressionMethod {
19241 #[inline]
19242 fn can_cast(kind: SyntaxKind) -> bool {
19243 kind == SyntaxKind::COMPRESSION_METHOD
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 ConflictDoNothing {
19259 #[inline]
19260 fn can_cast(kind: SyntaxKind) -> bool {
19261 kind == SyntaxKind::CONFLICT_DO_NOTHING
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 ConflictDoSelect {
19277 #[inline]
19278 fn can_cast(kind: SyntaxKind) -> bool {
19279 kind == SyntaxKind::CONFLICT_DO_SELECT
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 ConflictDoUpdateSet {
19295 #[inline]
19296 fn can_cast(kind: SyntaxKind) -> bool {
19297 kind == SyntaxKind::CONFLICT_DO_UPDATE_SET
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 ConflictIndexItem {
19313 #[inline]
19314 fn can_cast(kind: SyntaxKind) -> bool {
19315 kind == SyntaxKind::CONFLICT_INDEX_ITEM
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 ConflictIndexItemList {
19331 #[inline]
19332 fn can_cast(kind: SyntaxKind) -> bool {
19333 kind == SyntaxKind::CONFLICT_INDEX_ITEM_LIST
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 ConflictOnConstraint {
19349 #[inline]
19350 fn can_cast(kind: SyntaxKind) -> bool {
19351 kind == SyntaxKind::CONFLICT_ON_CONSTRAINT
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 ConflictOnIndex {
19367 #[inline]
19368 fn can_cast(kind: SyntaxKind) -> bool {
19369 kind == SyntaxKind::CONFLICT_ON_INDEX
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 ConstraintExclusion {
19385 #[inline]
19386 fn can_cast(kind: SyntaxKind) -> bool {
19387 kind == SyntaxKind::CONSTRAINT_EXCLUSION
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 ConstraintExclusionList {
19403 #[inline]
19404 fn can_cast(kind: SyntaxKind) -> bool {
19405 kind == SyntaxKind::CONSTRAINT_EXCLUSION_LIST
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 ConstraintIncludeClause {
19421 #[inline]
19422 fn can_cast(kind: SyntaxKind) -> bool {
19423 kind == SyntaxKind::CONSTRAINT_INCLUDE_CLAUSE
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 ConstraintIndexMethod {
19439 #[inline]
19440 fn can_cast(kind: SyntaxKind) -> bool {
19441 kind == SyntaxKind::CONSTRAINT_INDEX_METHOD
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 ConstraintIndexTablespace {
19457 #[inline]
19458 fn can_cast(kind: SyntaxKind) -> bool {
19459 kind == SyntaxKind::CONSTRAINT_INDEX_TABLESPACE
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 ConstraintName {
19475 #[inline]
19476 fn can_cast(kind: SyntaxKind) -> bool {
19477 kind == SyntaxKind::CONSTRAINT_NAME
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 Copy {
19493 #[inline]
19494 fn can_cast(kind: SyntaxKind) -> bool {
19495 kind == SyntaxKind::COPY
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 CopyOption {
19511 #[inline]
19512 fn can_cast(kind: SyntaxKind) -> bool {
19513 kind == SyntaxKind::COPY_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 CopyOptionList {
19529 #[inline]
19530 fn can_cast(kind: SyntaxKind) -> bool {
19531 kind == SyntaxKind::COPY_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 CostFuncOption {
19547 #[inline]
19548 fn can_cast(kind: SyntaxKind) -> bool {
19549 kind == SyntaxKind::COST_FUNC_OPTION
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 CreateAccessMethod {
19565 #[inline]
19566 fn can_cast(kind: SyntaxKind) -> bool {
19567 kind == SyntaxKind::CREATE_ACCESS_METHOD
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 CreateAggregate {
19583 #[inline]
19584 fn can_cast(kind: SyntaxKind) -> bool {
19585 kind == SyntaxKind::CREATE_AGGREGATE
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 CreateCast {
19601 #[inline]
19602 fn can_cast(kind: SyntaxKind) -> bool {
19603 kind == SyntaxKind::CREATE_CAST
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 CreateCollation {
19619 #[inline]
19620 fn can_cast(kind: SyntaxKind) -> bool {
19621 kind == SyntaxKind::CREATE_COLLATION
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 CreateConversion {
19637 #[inline]
19638 fn can_cast(kind: SyntaxKind) -> bool {
19639 kind == SyntaxKind::CREATE_CONVERSION
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 CreateDatabase {
19655 #[inline]
19656 fn can_cast(kind: SyntaxKind) -> bool {
19657 kind == SyntaxKind::CREATE_DATABASE
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 CreateDatabaseOption {
19673 #[inline]
19674 fn can_cast(kind: SyntaxKind) -> bool {
19675 kind == SyntaxKind::CREATE_DATABASE_OPTION
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 CreateDatabaseOptionList {
19691 #[inline]
19692 fn can_cast(kind: SyntaxKind) -> bool {
19693 kind == SyntaxKind::CREATE_DATABASE_OPTION_LIST
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 CreateDomain {
19709 #[inline]
19710 fn can_cast(kind: SyntaxKind) -> bool {
19711 kind == SyntaxKind::CREATE_DOMAIN
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 CreateEventTrigger {
19727 #[inline]
19728 fn can_cast(kind: SyntaxKind) -> bool {
19729 kind == SyntaxKind::CREATE_EVENT_TRIGGER
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 CreateExtension {
19745 #[inline]
19746 fn can_cast(kind: SyntaxKind) -> bool {
19747 kind == SyntaxKind::CREATE_EXTENSION
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 CreateForeignDataWrapper {
19763 #[inline]
19764 fn can_cast(kind: SyntaxKind) -> bool {
19765 kind == SyntaxKind::CREATE_FOREIGN_DATA_WRAPPER
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 CreateForeignTable {
19781 #[inline]
19782 fn can_cast(kind: SyntaxKind) -> bool {
19783 kind == SyntaxKind::CREATE_FOREIGN_TABLE
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 CreateFunction {
19799 #[inline]
19800 fn can_cast(kind: SyntaxKind) -> bool {
19801 kind == SyntaxKind::CREATE_FUNCTION
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 CreateGroup {
19817 #[inline]
19818 fn can_cast(kind: SyntaxKind) -> bool {
19819 kind == SyntaxKind::CREATE_GROUP
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 CreateIndex {
19835 #[inline]
19836 fn can_cast(kind: SyntaxKind) -> bool {
19837 kind == SyntaxKind::CREATE_INDEX
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 CreateLanguage {
19853 #[inline]
19854 fn can_cast(kind: SyntaxKind) -> bool {
19855 kind == SyntaxKind::CREATE_LANGUAGE
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 CreateMaterializedView {
19871 #[inline]
19872 fn can_cast(kind: SyntaxKind) -> bool {
19873 kind == SyntaxKind::CREATE_MATERIALIZED_VIEW
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 CreateOperator {
19889 #[inline]
19890 fn can_cast(kind: SyntaxKind) -> bool {
19891 kind == SyntaxKind::CREATE_OPERATOR
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 CreateOperatorClass {
19907 #[inline]
19908 fn can_cast(kind: SyntaxKind) -> bool {
19909 kind == SyntaxKind::CREATE_OPERATOR_CLASS
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 CreateOperatorFamily {
19925 #[inline]
19926 fn can_cast(kind: SyntaxKind) -> bool {
19927 kind == SyntaxKind::CREATE_OPERATOR_FAMILY
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 CreatePolicy {
19943 #[inline]
19944 fn can_cast(kind: SyntaxKind) -> bool {
19945 kind == SyntaxKind::CREATE_POLICY
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 CreateProcedure {
19961 #[inline]
19962 fn can_cast(kind: SyntaxKind) -> bool {
19963 kind == SyntaxKind::CREATE_PROCEDURE
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 CreatePublication {
19979 #[inline]
19980 fn can_cast(kind: SyntaxKind) -> bool {
19981 kind == SyntaxKind::CREATE_PUBLICATION
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 CreateRole {
19997 #[inline]
19998 fn can_cast(kind: SyntaxKind) -> bool {
19999 kind == SyntaxKind::CREATE_ROLE
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 CreateRule {
20015 #[inline]
20016 fn can_cast(kind: SyntaxKind) -> bool {
20017 kind == SyntaxKind::CREATE_RULE
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 CreateSchema {
20033 #[inline]
20034 fn can_cast(kind: SyntaxKind) -> bool {
20035 kind == SyntaxKind::CREATE_SCHEMA
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 CreateSequence {
20051 #[inline]
20052 fn can_cast(kind: SyntaxKind) -> bool {
20053 kind == SyntaxKind::CREATE_SEQUENCE
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 CreateServer {
20069 #[inline]
20070 fn can_cast(kind: SyntaxKind) -> bool {
20071 kind == SyntaxKind::CREATE_SERVER
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 CreateStatistics {
20087 #[inline]
20088 fn can_cast(kind: SyntaxKind) -> bool {
20089 kind == SyntaxKind::CREATE_STATISTICS
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 CreateSubscription {
20105 #[inline]
20106 fn can_cast(kind: SyntaxKind) -> bool {
20107 kind == SyntaxKind::CREATE_SUBSCRIPTION
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 CreateTable {
20123 #[inline]
20124 fn can_cast(kind: SyntaxKind) -> bool {
20125 kind == SyntaxKind::CREATE_TABLE
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 CreateTableAs {
20141 #[inline]
20142 fn can_cast(kind: SyntaxKind) -> bool {
20143 kind == SyntaxKind::CREATE_TABLE_AS
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 CreateTablespace {
20159 #[inline]
20160 fn can_cast(kind: SyntaxKind) -> bool {
20161 kind == SyntaxKind::CREATE_TABLESPACE
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 CreateTextSearchConfiguration {
20177 #[inline]
20178 fn can_cast(kind: SyntaxKind) -> bool {
20179 kind == SyntaxKind::CREATE_TEXT_SEARCH_CONFIGURATION
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 CreateTextSearchDictionary {
20195 #[inline]
20196 fn can_cast(kind: SyntaxKind) -> bool {
20197 kind == SyntaxKind::CREATE_TEXT_SEARCH_DICTIONARY
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 CreateTextSearchParser {
20213 #[inline]
20214 fn can_cast(kind: SyntaxKind) -> bool {
20215 kind == SyntaxKind::CREATE_TEXT_SEARCH_PARSER
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 CreateTextSearchTemplate {
20231 #[inline]
20232 fn can_cast(kind: SyntaxKind) -> bool {
20233 kind == SyntaxKind::CREATE_TEXT_SEARCH_TEMPLATE
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 CreateTransform {
20249 #[inline]
20250 fn can_cast(kind: SyntaxKind) -> bool {
20251 kind == SyntaxKind::CREATE_TRANSFORM
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 CreateTrigger {
20267 #[inline]
20268 fn can_cast(kind: SyntaxKind) -> bool {
20269 kind == SyntaxKind::CREATE_TRIGGER
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 CreateType {
20285 #[inline]
20286 fn can_cast(kind: SyntaxKind) -> bool {
20287 kind == SyntaxKind::CREATE_TYPE
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 CreateUser {
20303 #[inline]
20304 fn can_cast(kind: SyntaxKind) -> bool {
20305 kind == SyntaxKind::CREATE_USER
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 CreateUserMapping {
20321 #[inline]
20322 fn can_cast(kind: SyntaxKind) -> bool {
20323 kind == SyntaxKind::CREATE_USER_MAPPING
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 CreateView {
20339 #[inline]
20340 fn can_cast(kind: SyntaxKind) -> bool {
20341 kind == SyntaxKind::CREATE_VIEW
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 CustomOp {
20357 #[inline]
20358 fn can_cast(kind: SyntaxKind) -> bool {
20359 kind == SyntaxKind::CUSTOM_OP
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 Deallocate {
20375 #[inline]
20376 fn can_cast(kind: SyntaxKind) -> bool {
20377 kind == SyntaxKind::DEALLOCATE
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 Declare {
20393 #[inline]
20394 fn can_cast(kind: SyntaxKind) -> bool {
20395 kind == SyntaxKind::DECLARE
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 DefaultConstraint {
20411 #[inline]
20412 fn can_cast(kind: SyntaxKind) -> bool {
20413 kind == SyntaxKind::DEFAULT_CONSTRAINT
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 Deferrable {
20429 #[inline]
20430 fn can_cast(kind: SyntaxKind) -> bool {
20431 kind == SyntaxKind::DEFERRABLE
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 DeferrableConstraintOption {
20447 #[inline]
20448 fn can_cast(kind: SyntaxKind) -> bool {
20449 kind == SyntaxKind::DEFERRABLE_CONSTRAINT_OPTION
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 Delete {
20465 #[inline]
20466 fn can_cast(kind: SyntaxKind) -> bool {
20467 kind == SyntaxKind::DELETE
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 DeleteRows {
20483 #[inline]
20484 fn can_cast(kind: SyntaxKind) -> bool {
20485 kind == SyntaxKind::DELETE_ROWS
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 DependsOnExtension {
20501 #[inline]
20502 fn can_cast(kind: SyntaxKind) -> bool {
20503 kind == SyntaxKind::DEPENDS_ON_EXTENSION
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 DetachPartition {
20519 #[inline]
20520 fn can_cast(kind: SyntaxKind) -> bool {
20521 kind == SyntaxKind::DETACH_PARTITION
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 DisableRls {
20537 #[inline]
20538 fn can_cast(kind: SyntaxKind) -> bool {
20539 kind == SyntaxKind::DISABLE_RLS
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 DisableRule {
20555 #[inline]
20556 fn can_cast(kind: SyntaxKind) -> bool {
20557 kind == SyntaxKind::DISABLE_RULE
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 DisableTrigger {
20573 #[inline]
20574 fn can_cast(kind: SyntaxKind) -> bool {
20575 kind == SyntaxKind::DISABLE_TRIGGER
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 Discard {
20591 #[inline]
20592 fn can_cast(kind: SyntaxKind) -> bool {
20593 kind == SyntaxKind::DISCARD
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 DistinctClause {
20609 #[inline]
20610 fn can_cast(kind: SyntaxKind) -> bool {
20611 kind == SyntaxKind::DISTINCT_CLAUSE
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 Do {
20627 #[inline]
20628 fn can_cast(kind: SyntaxKind) -> bool {
20629 kind == SyntaxKind::DO
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 DoubleType {
20645 #[inline]
20646 fn can_cast(kind: SyntaxKind) -> bool {
20647 kind == SyntaxKind::DOUBLE_TYPE
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 Drop {
20663 #[inline]
20664 fn can_cast(kind: SyntaxKind) -> bool {
20665 kind == SyntaxKind::DROP
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 DropAccessMethod {
20681 #[inline]
20682 fn can_cast(kind: SyntaxKind) -> bool {
20683 kind == SyntaxKind::DROP_ACCESS_METHOD
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 DropAggregate {
20699 #[inline]
20700 fn can_cast(kind: SyntaxKind) -> bool {
20701 kind == SyntaxKind::DROP_AGGREGATE
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 DropCast {
20717 #[inline]
20718 fn can_cast(kind: SyntaxKind) -> bool {
20719 kind == SyntaxKind::DROP_CAST
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 DropCollation {
20735 #[inline]
20736 fn can_cast(kind: SyntaxKind) -> bool {
20737 kind == SyntaxKind::DROP_COLLATION
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 DropColumn {
20753 #[inline]
20754 fn can_cast(kind: SyntaxKind) -> bool {
20755 kind == SyntaxKind::DROP_COLUMN
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 DropConstraint {
20771 #[inline]
20772 fn can_cast(kind: SyntaxKind) -> bool {
20773 kind == SyntaxKind::DROP_CONSTRAINT
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 DropConversion {
20789 #[inline]
20790 fn can_cast(kind: SyntaxKind) -> bool {
20791 kind == SyntaxKind::DROP_CONVERSION
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 DropDatabase {
20807 #[inline]
20808 fn can_cast(kind: SyntaxKind) -> bool {
20809 kind == SyntaxKind::DROP_DATABASE
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 DropDefault {
20825 #[inline]
20826 fn can_cast(kind: SyntaxKind) -> bool {
20827 kind == SyntaxKind::DROP_DEFAULT
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 DropDomain {
20843 #[inline]
20844 fn can_cast(kind: SyntaxKind) -> bool {
20845 kind == SyntaxKind::DROP_DOMAIN
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 DropEventTrigger {
20861 #[inline]
20862 fn can_cast(kind: SyntaxKind) -> bool {
20863 kind == SyntaxKind::DROP_EVENT_TRIGGER
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 DropExpression {
20879 #[inline]
20880 fn can_cast(kind: SyntaxKind) -> bool {
20881 kind == SyntaxKind::DROP_EXPRESSION
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 DropExtension {
20897 #[inline]
20898 fn can_cast(kind: SyntaxKind) -> bool {
20899 kind == SyntaxKind::DROP_EXTENSION
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 DropForeignDataWrapper {
20915 #[inline]
20916 fn can_cast(kind: SyntaxKind) -> bool {
20917 kind == SyntaxKind::DROP_FOREIGN_DATA_WRAPPER
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 DropForeignTable {
20933 #[inline]
20934 fn can_cast(kind: SyntaxKind) -> bool {
20935 kind == SyntaxKind::DROP_FOREIGN_TABLE
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 DropFunction {
20951 #[inline]
20952 fn can_cast(kind: SyntaxKind) -> bool {
20953 kind == SyntaxKind::DROP_FUNCTION
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 DropGroup {
20969 #[inline]
20970 fn can_cast(kind: SyntaxKind) -> bool {
20971 kind == SyntaxKind::DROP_GROUP
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 DropIdentity {
20987 #[inline]
20988 fn can_cast(kind: SyntaxKind) -> bool {
20989 kind == SyntaxKind::DROP_IDENTITY
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 DropIndex {
21005 #[inline]
21006 fn can_cast(kind: SyntaxKind) -> bool {
21007 kind == SyntaxKind::DROP_INDEX
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 DropLanguage {
21023 #[inline]
21024 fn can_cast(kind: SyntaxKind) -> bool {
21025 kind == SyntaxKind::DROP_LANGUAGE
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 DropMaterializedView {
21041 #[inline]
21042 fn can_cast(kind: SyntaxKind) -> bool {
21043 kind == SyntaxKind::DROP_MATERIALIZED_VIEW
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 DropNotNull {
21059 #[inline]
21060 fn can_cast(kind: SyntaxKind) -> bool {
21061 kind == SyntaxKind::DROP_NOT_NULL
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 DropOpClassOption {
21077 #[inline]
21078 fn can_cast(kind: SyntaxKind) -> bool {
21079 kind == SyntaxKind::DROP_OP_CLASS_OPTION
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 DropOpClassOptionList {
21095 #[inline]
21096 fn can_cast(kind: SyntaxKind) -> bool {
21097 kind == SyntaxKind::DROP_OP_CLASS_OPTION_LIST
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 DropOpClassOptions {
21113 #[inline]
21114 fn can_cast(kind: SyntaxKind) -> bool {
21115 kind == SyntaxKind::DROP_OP_CLASS_OPTIONS
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 DropOperator {
21131 #[inline]
21132 fn can_cast(kind: SyntaxKind) -> bool {
21133 kind == SyntaxKind::DROP_OPERATOR
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 DropOperatorClass {
21149 #[inline]
21150 fn can_cast(kind: SyntaxKind) -> bool {
21151 kind == SyntaxKind::DROP_OPERATOR_CLASS
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 DropOperatorFamily {
21167 #[inline]
21168 fn can_cast(kind: SyntaxKind) -> bool {
21169 kind == SyntaxKind::DROP_OPERATOR_FAMILY
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 DropOwned {
21185 #[inline]
21186 fn can_cast(kind: SyntaxKind) -> bool {
21187 kind == SyntaxKind::DROP_OWNED
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 DropPolicy {
21203 #[inline]
21204 fn can_cast(kind: SyntaxKind) -> bool {
21205 kind == SyntaxKind::DROP_POLICY
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 DropProcedure {
21221 #[inline]
21222 fn can_cast(kind: SyntaxKind) -> bool {
21223 kind == SyntaxKind::DROP_PROCEDURE
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 DropPublication {
21239 #[inline]
21240 fn can_cast(kind: SyntaxKind) -> bool {
21241 kind == SyntaxKind::DROP_PUBLICATION
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 DropRole {
21257 #[inline]
21258 fn can_cast(kind: SyntaxKind) -> bool {
21259 kind == SyntaxKind::DROP_ROLE
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 DropRoutine {
21275 #[inline]
21276 fn can_cast(kind: SyntaxKind) -> bool {
21277 kind == SyntaxKind::DROP_ROUTINE
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 DropRule {
21293 #[inline]
21294 fn can_cast(kind: SyntaxKind) -> bool {
21295 kind == SyntaxKind::DROP_RULE
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 DropSchema {
21311 #[inline]
21312 fn can_cast(kind: SyntaxKind) -> bool {
21313 kind == SyntaxKind::DROP_SCHEMA
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 DropSequence {
21329 #[inline]
21330 fn can_cast(kind: SyntaxKind) -> bool {
21331 kind == SyntaxKind::DROP_SEQUENCE
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 DropServer {
21347 #[inline]
21348 fn can_cast(kind: SyntaxKind) -> bool {
21349 kind == SyntaxKind::DROP_SERVER
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 DropStatistics {
21365 #[inline]
21366 fn can_cast(kind: SyntaxKind) -> bool {
21367 kind == SyntaxKind::DROP_STATISTICS
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 DropSubscription {
21383 #[inline]
21384 fn can_cast(kind: SyntaxKind) -> bool {
21385 kind == SyntaxKind::DROP_SUBSCRIPTION
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 DropTable {
21401 #[inline]
21402 fn can_cast(kind: SyntaxKind) -> bool {
21403 kind == SyntaxKind::DROP_TABLE
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 DropTablespace {
21419 #[inline]
21420 fn can_cast(kind: SyntaxKind) -> bool {
21421 kind == SyntaxKind::DROP_TABLESPACE
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 DropTextSearchConfig {
21437 #[inline]
21438 fn can_cast(kind: SyntaxKind) -> bool {
21439 kind == SyntaxKind::DROP_TEXT_SEARCH_CONFIG
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 DropTextSearchDict {
21455 #[inline]
21456 fn can_cast(kind: SyntaxKind) -> bool {
21457 kind == SyntaxKind::DROP_TEXT_SEARCH_DICT
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 DropTextSearchParser {
21473 #[inline]
21474 fn can_cast(kind: SyntaxKind) -> bool {
21475 kind == SyntaxKind::DROP_TEXT_SEARCH_PARSER
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 DropTextSearchTemplate {
21491 #[inline]
21492 fn can_cast(kind: SyntaxKind) -> bool {
21493 kind == SyntaxKind::DROP_TEXT_SEARCH_TEMPLATE
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 DropTransform {
21509 #[inline]
21510 fn can_cast(kind: SyntaxKind) -> bool {
21511 kind == SyntaxKind::DROP_TRANSFORM
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 DropTrigger {
21527 #[inline]
21528 fn can_cast(kind: SyntaxKind) -> bool {
21529 kind == SyntaxKind::DROP_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 DropType {
21545 #[inline]
21546 fn can_cast(kind: SyntaxKind) -> bool {
21547 kind == SyntaxKind::DROP_TYPE
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 DropUser {
21563 #[inline]
21564 fn can_cast(kind: SyntaxKind) -> bool {
21565 kind == SyntaxKind::DROP_USER
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 DropUserMapping {
21581 #[inline]
21582 fn can_cast(kind: SyntaxKind) -> bool {
21583 kind == SyntaxKind::DROP_USER_MAPPING
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 DropView {
21599 #[inline]
21600 fn can_cast(kind: SyntaxKind) -> bool {
21601 kind == SyntaxKind::DROP_VIEW
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 ElseClause {
21617 #[inline]
21618 fn can_cast(kind: SyntaxKind) -> bool {
21619 kind == SyntaxKind::ELSE_CLAUSE
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 EnableAlwaysRule {
21635 #[inline]
21636 fn can_cast(kind: SyntaxKind) -> bool {
21637 kind == SyntaxKind::ENABLE_ALWAYS_RULE
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 EnableAlwaysTrigger {
21653 #[inline]
21654 fn can_cast(kind: SyntaxKind) -> bool {
21655 kind == SyntaxKind::ENABLE_ALWAYS_TRIGGER
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 EnableReplicaRule {
21671 #[inline]
21672 fn can_cast(kind: SyntaxKind) -> bool {
21673 kind == SyntaxKind::ENABLE_REPLICA_RULE
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 EnableReplicaTrigger {
21689 #[inline]
21690 fn can_cast(kind: SyntaxKind) -> bool {
21691 kind == SyntaxKind::ENABLE_REPLICA_TRIGGER
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 EnableRls {
21707 #[inline]
21708 fn can_cast(kind: SyntaxKind) -> bool {
21709 kind == SyntaxKind::ENABLE_RLS
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 EnableRule {
21725 #[inline]
21726 fn can_cast(kind: SyntaxKind) -> bool {
21727 kind == SyntaxKind::ENABLE_RULE
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 EnableTrigger {
21743 #[inline]
21744 fn can_cast(kind: SyntaxKind) -> bool {
21745 kind == SyntaxKind::ENABLE_TRIGGER
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 Enforced {
21761 #[inline]
21762 fn can_cast(kind: SyntaxKind) -> bool {
21763 kind == SyntaxKind::ENFORCED
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 EventTriggerWhen {
21779 #[inline]
21780 fn can_cast(kind: SyntaxKind) -> bool {
21781 kind == SyntaxKind::EVENT_TRIGGER_WHEN
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 EventTriggerWhenClause {
21797 #[inline]
21798 fn can_cast(kind: SyntaxKind) -> bool {
21799 kind == SyntaxKind::EVENT_TRIGGER_WHEN_CLAUSE
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 ExceptTables {
21815 #[inline]
21816 fn can_cast(kind: SyntaxKind) -> bool {
21817 kind == SyntaxKind::EXCEPT_TABLES
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 ExcludeConstraint {
21833 #[inline]
21834 fn can_cast(kind: SyntaxKind) -> bool {
21835 kind == SyntaxKind::EXCLUDE_CONSTRAINT
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 Execute {
21851 #[inline]
21852 fn can_cast(kind: SyntaxKind) -> bool {
21853 kind == SyntaxKind::EXECUTE
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 ExistsFn {
21869 #[inline]
21870 fn can_cast(kind: SyntaxKind) -> bool {
21871 kind == SyntaxKind::EXISTS_FN
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 Explain {
21887 #[inline]
21888 fn can_cast(kind: SyntaxKind) -> bool {
21889 kind == SyntaxKind::EXPLAIN
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 ExprAsName {
21905 #[inline]
21906 fn can_cast(kind: SyntaxKind) -> bool {
21907 kind == SyntaxKind::EXPR_AS_NAME
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 ExprType {
21923 #[inline]
21924 fn can_cast(kind: SyntaxKind) -> bool {
21925 kind == SyntaxKind::EXPR_TYPE
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 ExtractFn {
21941 #[inline]
21942 fn can_cast(kind: SyntaxKind) -> bool {
21943 kind == SyntaxKind::EXTRACT_FN
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 FatArrow {
21959 #[inline]
21960 fn can_cast(kind: SyntaxKind) -> bool {
21961 kind == SyntaxKind::FAT_ARROW
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 FdwOption {
21977 #[inline]
21978 fn can_cast(kind: SyntaxKind) -> bool {
21979 kind == SyntaxKind::FDW_OPTION
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 FdwOptionList {
21995 #[inline]
21996 fn can_cast(kind: SyntaxKind) -> bool {
21997 kind == SyntaxKind::FDW_OPTION_LIST
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 Fetch {
22013 #[inline]
22014 fn can_cast(kind: SyntaxKind) -> bool {
22015 kind == SyntaxKind::FETCH
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 FetchClause {
22031 #[inline]
22032 fn can_cast(kind: SyntaxKind) -> bool {
22033 kind == SyntaxKind::FETCH_CLAUSE
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 FieldExpr {
22049 #[inline]
22050 fn can_cast(kind: SyntaxKind) -> bool {
22051 kind == SyntaxKind::FIELD_EXPR
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 FilterClause {
22067 #[inline]
22068 fn can_cast(kind: SyntaxKind) -> bool {
22069 kind == SyntaxKind::FILTER_CLAUSE
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 ForProvider {
22085 #[inline]
22086 fn can_cast(kind: SyntaxKind) -> bool {
22087 kind == SyntaxKind::FOR_PROVIDER
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 ForceRls {
22103 #[inline]
22104 fn can_cast(kind: SyntaxKind) -> bool {
22105 kind == SyntaxKind::FORCE_RLS
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 ForeignKeyConstraint {
22121 #[inline]
22122 fn can_cast(kind: SyntaxKind) -> bool {
22123 kind == SyntaxKind::FOREIGN_KEY_CONSTRAINT
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 FrameClause {
22139 #[inline]
22140 fn can_cast(kind: SyntaxKind) -> bool {
22141 kind == SyntaxKind::FRAME_CLAUSE
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 FromClause {
22157 #[inline]
22158 fn can_cast(kind: SyntaxKind) -> bool {
22159 kind == SyntaxKind::FROM_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 FromItem {
22175 #[inline]
22176 fn can_cast(kind: SyntaxKind) -> bool {
22177 kind == SyntaxKind::FROM_ITEM
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 FromTable {
22193 #[inline]
22194 fn can_cast(kind: SyntaxKind) -> bool {
22195 kind == SyntaxKind::FROM_TABLE
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 FuncOptionList {
22211 #[inline]
22212 fn can_cast(kind: SyntaxKind) -> bool {
22213 kind == SyntaxKind::FUNC_OPTION_LIST
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 FunctionSig {
22229 #[inline]
22230 fn can_cast(kind: SyntaxKind) -> bool {
22231 kind == SyntaxKind::FUNCTION_SIG
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 FunctionSigList {
22247 #[inline]
22248 fn can_cast(kind: SyntaxKind) -> bool {
22249 kind == SyntaxKind::FUNCTION_SIG_LIST
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 GeneratedConstraint {
22265 #[inline]
22266 fn can_cast(kind: SyntaxKind) -> bool {
22267 kind == SyntaxKind::GENERATED_CONSTRAINT
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 Grant {
22283 #[inline]
22284 fn can_cast(kind: SyntaxKind) -> bool {
22285 kind == SyntaxKind::GRANT
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 GrantDefaultPrivileges {
22301 #[inline]
22302 fn can_cast(kind: SyntaxKind) -> bool {
22303 kind == SyntaxKind::GRANT_DEFAULT_PRIVILEGES
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 GroupByClause {
22319 #[inline]
22320 fn can_cast(kind: SyntaxKind) -> bool {
22321 kind == SyntaxKind::GROUP_BY_CLAUSE
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 GroupByList {
22337 #[inline]
22338 fn can_cast(kind: SyntaxKind) -> bool {
22339 kind == SyntaxKind::GROUP_BY_LIST
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 GroupingCube {
22355 #[inline]
22356 fn can_cast(kind: SyntaxKind) -> bool {
22357 kind == SyntaxKind::GROUPING_CUBE
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 GroupingExpr {
22373 #[inline]
22374 fn can_cast(kind: SyntaxKind) -> bool {
22375 kind == SyntaxKind::GROUPING_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 GroupingRollup {
22391 #[inline]
22392 fn can_cast(kind: SyntaxKind) -> bool {
22393 kind == SyntaxKind::GROUPING_ROLLUP
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 GroupingSets {
22409 #[inline]
22410 fn can_cast(kind: SyntaxKind) -> bool {
22411 kind == SyntaxKind::GROUPING_SETS
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 Gteq {
22427 #[inline]
22428 fn can_cast(kind: SyntaxKind) -> bool {
22429 kind == SyntaxKind::GTEQ
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 HandlerClause {
22445 #[inline]
22446 fn can_cast(kind: SyntaxKind) -> bool {
22447 kind == SyntaxKind::HANDLER_CLAUSE
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 HavingClause {
22463 #[inline]
22464 fn can_cast(kind: SyntaxKind) -> bool {
22465 kind == SyntaxKind::HAVING_CLAUSE
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 IfExists {
22481 #[inline]
22482 fn can_cast(kind: SyntaxKind) -> bool {
22483 kind == SyntaxKind::IF_EXISTS
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 IfNotExists {
22499 #[inline]
22500 fn can_cast(kind: SyntaxKind) -> bool {
22501 kind == SyntaxKind::IF_NOT_EXISTS
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 ImportForeignSchema {
22517 #[inline]
22518 fn can_cast(kind: SyntaxKind) -> bool {
22519 kind == SyntaxKind::IMPORT_FOREIGN_SCHEMA
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 IndexExpr {
22535 #[inline]
22536 fn can_cast(kind: SyntaxKind) -> bool {
22537 kind == SyntaxKind::INDEX_EXPR
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 Inherit {
22553 #[inline]
22554 fn can_cast(kind: SyntaxKind) -> bool {
22555 kind == SyntaxKind::INHERIT
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 InheritTable {
22571 #[inline]
22572 fn can_cast(kind: SyntaxKind) -> bool {
22573 kind == SyntaxKind::INHERIT_TABLE
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 Inherits {
22589 #[inline]
22590 fn can_cast(kind: SyntaxKind) -> bool {
22591 kind == SyntaxKind::INHERITS
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 InitiallyDeferredConstraintOption {
22607 #[inline]
22608 fn can_cast(kind: SyntaxKind) -> bool {
22609 kind == SyntaxKind::INITIALLY_DEFERRED_CONSTRAINT_OPTION
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 InitiallyImmediateConstraintOption {
22625 #[inline]
22626 fn can_cast(kind: SyntaxKind) -> bool {
22627 kind == SyntaxKind::INITIALLY_IMMEDIATE_CONSTRAINT_OPTION
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 Insert {
22643 #[inline]
22644 fn can_cast(kind: SyntaxKind) -> bool {
22645 kind == SyntaxKind::INSERT
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 IntervalType {
22661 #[inline]
22662 fn can_cast(kind: SyntaxKind) -> bool {
22663 kind == SyntaxKind::INTERVAL_TYPE
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 IntoClause {
22679 #[inline]
22680 fn can_cast(kind: SyntaxKind) -> bool {
22681 kind == SyntaxKind::INTO_CLAUSE
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 IntoSchema {
22697 #[inline]
22698 fn can_cast(kind: SyntaxKind) -> bool {
22699 kind == SyntaxKind::INTO_SCHEMA
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 IsDistinctFrom {
22715 #[inline]
22716 fn can_cast(kind: SyntaxKind) -> bool {
22717 kind == SyntaxKind::IS_DISTINCT_FROM
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 IsJson {
22733 #[inline]
22734 fn can_cast(kind: SyntaxKind) -> bool {
22735 kind == SyntaxKind::IS_JSON
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 IsJsonArray {
22751 #[inline]
22752 fn can_cast(kind: SyntaxKind) -> bool {
22753 kind == SyntaxKind::IS_JSON_ARRAY
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 IsJsonObject {
22769 #[inline]
22770 fn can_cast(kind: SyntaxKind) -> bool {
22771 kind == SyntaxKind::IS_JSON_OBJECT
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 IsJsonScalar {
22787 #[inline]
22788 fn can_cast(kind: SyntaxKind) -> bool {
22789 kind == SyntaxKind::IS_JSON_SCALAR
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 IsJsonValue {
22805 #[inline]
22806 fn can_cast(kind: SyntaxKind) -> bool {
22807 kind == SyntaxKind::IS_JSON_VALUE
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 IsNormalized {
22823 #[inline]
22824 fn can_cast(kind: SyntaxKind) -> bool {
22825 kind == SyntaxKind::IS_NORMALIZED
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 IsNot {
22841 #[inline]
22842 fn can_cast(kind: SyntaxKind) -> bool {
22843 kind == SyntaxKind::IS_NOT
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 IsNotDistinctFrom {
22859 #[inline]
22860 fn can_cast(kind: SyntaxKind) -> bool {
22861 kind == SyntaxKind::IS_NOT_DISTINCT_FROM
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 IsNotJson {
22877 #[inline]
22878 fn can_cast(kind: SyntaxKind) -> bool {
22879 kind == SyntaxKind::IS_NOT_JSON
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 IsNotJsonArray {
22895 #[inline]
22896 fn can_cast(kind: SyntaxKind) -> bool {
22897 kind == SyntaxKind::IS_NOT_JSON_ARRAY
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 IsNotJsonObject {
22913 #[inline]
22914 fn can_cast(kind: SyntaxKind) -> bool {
22915 kind == SyntaxKind::IS_NOT_JSON_OBJECT
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 IsNotJsonScalar {
22931 #[inline]
22932 fn can_cast(kind: SyntaxKind) -> bool {
22933 kind == SyntaxKind::IS_NOT_JSON_SCALAR
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 IsNotJsonValue {
22949 #[inline]
22950 fn can_cast(kind: SyntaxKind) -> bool {
22951 kind == SyntaxKind::IS_NOT_JSON_VALUE
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 IsNotNormalized {
22967 #[inline]
22968 fn can_cast(kind: SyntaxKind) -> bool {
22969 kind == SyntaxKind::IS_NOT_NORMALIZED
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 Join {
22985 #[inline]
22986 fn can_cast(kind: SyntaxKind) -> bool {
22987 kind == SyntaxKind::JOIN
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 JoinCross {
23003 #[inline]
23004 fn can_cast(kind: SyntaxKind) -> bool {
23005 kind == SyntaxKind::JOIN_CROSS
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 JoinExpr {
23021 #[inline]
23022 fn can_cast(kind: SyntaxKind) -> bool {
23023 kind == SyntaxKind::JOIN_EXPR
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 JoinFull {
23039 #[inline]
23040 fn can_cast(kind: SyntaxKind) -> bool {
23041 kind == SyntaxKind::JOIN_FULL
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 JoinInner {
23057 #[inline]
23058 fn can_cast(kind: SyntaxKind) -> bool {
23059 kind == SyntaxKind::JOIN_INNER
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 JoinLeft {
23075 #[inline]
23076 fn can_cast(kind: SyntaxKind) -> bool {
23077 kind == SyntaxKind::JOIN_LEFT
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 JoinRight {
23093 #[inline]
23094 fn can_cast(kind: SyntaxKind) -> bool {
23095 kind == SyntaxKind::JOIN_RIGHT
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 JoinUsingClause {
23111 #[inline]
23112 fn can_cast(kind: SyntaxKind) -> bool {
23113 kind == SyntaxKind::JOIN_USING_CLAUSE
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 JsonArrayAggFn {
23129 #[inline]
23130 fn can_cast(kind: SyntaxKind) -> bool {
23131 kind == SyntaxKind::JSON_ARRAY_AGG_FN
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 JsonArrayFn {
23147 #[inline]
23148 fn can_cast(kind: SyntaxKind) -> bool {
23149 kind == SyntaxKind::JSON_ARRAY_FN
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 JsonBehaviorClause {
23165 #[inline]
23166 fn can_cast(kind: SyntaxKind) -> bool {
23167 kind == SyntaxKind::JSON_BEHAVIOR_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 JsonBehaviorDefault {
23183 #[inline]
23184 fn can_cast(kind: SyntaxKind) -> bool {
23185 kind == SyntaxKind::JSON_BEHAVIOR_DEFAULT
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 JsonBehaviorEmptyArray {
23201 #[inline]
23202 fn can_cast(kind: SyntaxKind) -> bool {
23203 kind == SyntaxKind::JSON_BEHAVIOR_EMPTY_ARRAY
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 JsonBehaviorEmptyObject {
23219 #[inline]
23220 fn can_cast(kind: SyntaxKind) -> bool {
23221 kind == SyntaxKind::JSON_BEHAVIOR_EMPTY_OBJECT
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 JsonBehaviorError {
23237 #[inline]
23238 fn can_cast(kind: SyntaxKind) -> bool {
23239 kind == SyntaxKind::JSON_BEHAVIOR_ERROR
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 JsonBehaviorFalse {
23255 #[inline]
23256 fn can_cast(kind: SyntaxKind) -> bool {
23257 kind == SyntaxKind::JSON_BEHAVIOR_FALSE
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 JsonBehaviorNull {
23273 #[inline]
23274 fn can_cast(kind: SyntaxKind) -> bool {
23275 kind == SyntaxKind::JSON_BEHAVIOR_NULL
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 JsonBehaviorTrue {
23291 #[inline]
23292 fn can_cast(kind: SyntaxKind) -> bool {
23293 kind == SyntaxKind::JSON_BEHAVIOR_TRUE
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 JsonBehaviorUnknown {
23309 #[inline]
23310 fn can_cast(kind: SyntaxKind) -> bool {
23311 kind == SyntaxKind::JSON_BEHAVIOR_UNKNOWN
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 JsonEncodingClause {
23327 #[inline]
23328 fn can_cast(kind: SyntaxKind) -> bool {
23329 kind == SyntaxKind::JSON_ENCODING_CLAUSE
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 JsonExistsFn {
23345 #[inline]
23346 fn can_cast(kind: SyntaxKind) -> bool {
23347 kind == SyntaxKind::JSON_EXISTS_FN
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 JsonExprFormat {
23363 #[inline]
23364 fn can_cast(kind: SyntaxKind) -> bool {
23365 kind == SyntaxKind::JSON_EXPR_FORMAT
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 JsonFn {
23381 #[inline]
23382 fn can_cast(kind: SyntaxKind) -> bool {
23383 kind == SyntaxKind::JSON_FN
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 JsonFormatClause {
23399 #[inline]
23400 fn can_cast(kind: SyntaxKind) -> bool {
23401 kind == SyntaxKind::JSON_FORMAT_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 JsonKeyValue {
23417 #[inline]
23418 fn can_cast(kind: SyntaxKind) -> bool {
23419 kind == SyntaxKind::JSON_KEY_VALUE
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 JsonKeysUniqueClause {
23435 #[inline]
23436 fn can_cast(kind: SyntaxKind) -> bool {
23437 kind == SyntaxKind::JSON_KEYS_UNIQUE_CLAUSE
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 JsonNullClause {
23453 #[inline]
23454 fn can_cast(kind: SyntaxKind) -> bool {
23455 kind == SyntaxKind::JSON_NULL_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 JsonObjectAggFn {
23471 #[inline]
23472 fn can_cast(kind: SyntaxKind) -> bool {
23473 kind == SyntaxKind::JSON_OBJECT_AGG_FN
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 JsonObjectFn {
23489 #[inline]
23490 fn can_cast(kind: SyntaxKind) -> bool {
23491 kind == SyntaxKind::JSON_OBJECT_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 JsonOnEmptyClause {
23507 #[inline]
23508 fn can_cast(kind: SyntaxKind) -> bool {
23509 kind == SyntaxKind::JSON_ON_EMPTY_CLAUSE
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 JsonOnErrorClause {
23525 #[inline]
23526 fn can_cast(kind: SyntaxKind) -> bool {
23527 kind == SyntaxKind::JSON_ON_ERROR_CLAUSE
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 JsonPassingArg {
23543 #[inline]
23544 fn can_cast(kind: SyntaxKind) -> bool {
23545 kind == SyntaxKind::JSON_PASSING_ARG
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 JsonPassingClause {
23561 #[inline]
23562 fn can_cast(kind: SyntaxKind) -> bool {
23563 kind == SyntaxKind::JSON_PASSING_CLAUSE
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 JsonPathClause {
23579 #[inline]
23580 fn can_cast(kind: SyntaxKind) -> bool {
23581 kind == SyntaxKind::JSON_PATH_CLAUSE
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 JsonQueryFn {
23597 #[inline]
23598 fn can_cast(kind: SyntaxKind) -> bool {
23599 kind == SyntaxKind::JSON_QUERY_FN
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 JsonQuotesClause {
23615 #[inline]
23616 fn can_cast(kind: SyntaxKind) -> bool {
23617 kind == SyntaxKind::JSON_QUOTES_CLAUSE
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 JsonReturningClause {
23633 #[inline]
23634 fn can_cast(kind: SyntaxKind) -> bool {
23635 kind == SyntaxKind::JSON_RETURNING_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 JsonScalarFn {
23651 #[inline]
23652 fn can_cast(kind: SyntaxKind) -> bool {
23653 kind == SyntaxKind::JSON_SCALAR_FN
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 JsonSelectFormat {
23669 #[inline]
23670 fn can_cast(kind: SyntaxKind) -> bool {
23671 kind == SyntaxKind::JSON_SELECT_FORMAT
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 JsonSerializeFn {
23687 #[inline]
23688 fn can_cast(kind: SyntaxKind) -> bool {
23689 kind == SyntaxKind::JSON_SERIALIZE_FN
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 JsonTable {
23705 #[inline]
23706 fn can_cast(kind: SyntaxKind) -> bool {
23707 kind == SyntaxKind::JSON_TABLE
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 JsonTableColumn {
23723 #[inline]
23724 fn can_cast(kind: SyntaxKind) -> bool {
23725 kind == SyntaxKind::JSON_TABLE_COLUMN
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 JsonTableColumnList {
23741 #[inline]
23742 fn can_cast(kind: SyntaxKind) -> bool {
23743 kind == SyntaxKind::JSON_TABLE_COLUMN_LIST
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 JsonValueExpr {
23759 #[inline]
23760 fn can_cast(kind: SyntaxKind) -> bool {
23761 kind == SyntaxKind::JSON_VALUE_EXPR
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 JsonValueFn {
23777 #[inline]
23778 fn can_cast(kind: SyntaxKind) -> bool {
23779 kind == SyntaxKind::JSON_VALUE_FN
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 JsonWrapperBehaviorClause {
23795 #[inline]
23796 fn can_cast(kind: SyntaxKind) -> bool {
23797 kind == SyntaxKind::JSON_WRAPPER_BEHAVIOR_CLAUSE
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 LanguageFuncOption {
23813 #[inline]
23814 fn can_cast(kind: SyntaxKind) -> bool {
23815 kind == SyntaxKind::LANGUAGE_FUNC_OPTION
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 LeakproofFuncOption {
23831 #[inline]
23832 fn can_cast(kind: SyntaxKind) -> bool {
23833 kind == SyntaxKind::LEAKPROOF_FUNC_OPTION
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 LikeClause {
23849 #[inline]
23850 fn can_cast(kind: SyntaxKind) -> bool {
23851 kind == SyntaxKind::LIKE_CLAUSE
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 LikeOption {
23867 #[inline]
23868 fn can_cast(kind: SyntaxKind) -> bool {
23869 kind == SyntaxKind::LIKE_OPTION
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 LimitClause {
23885 #[inline]
23886 fn can_cast(kind: SyntaxKind) -> bool {
23887 kind == SyntaxKind::LIMIT_CLAUSE
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 LimitToTables {
23903 #[inline]
23904 fn can_cast(kind: SyntaxKind) -> bool {
23905 kind == SyntaxKind::LIMIT_TO_TABLES
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 Listen {
23921 #[inline]
23922 fn can_cast(kind: SyntaxKind) -> bool {
23923 kind == SyntaxKind::LISTEN
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 Literal {
23939 #[inline]
23940 fn can_cast(kind: SyntaxKind) -> bool {
23941 kind == SyntaxKind::LITERAL
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 Load {
23957 #[inline]
23958 fn can_cast(kind: SyntaxKind) -> bool {
23959 kind == SyntaxKind::LOAD
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 Lock {
23975 #[inline]
23976 fn can_cast(kind: SyntaxKind) -> bool {
23977 kind == SyntaxKind::LOCK
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 LockingClause {
23993 #[inline]
23994 fn can_cast(kind: SyntaxKind) -> bool {
23995 kind == SyntaxKind::LOCKING_CLAUSE
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 Lteq {
24011 #[inline]
24012 fn can_cast(kind: SyntaxKind) -> bool {
24013 kind == SyntaxKind::LTEQ
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 MatchFull {
24029 #[inline]
24030 fn can_cast(kind: SyntaxKind) -> bool {
24031 kind == SyntaxKind::MATCH_FULL
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 MatchPartial {
24047 #[inline]
24048 fn can_cast(kind: SyntaxKind) -> bool {
24049 kind == SyntaxKind::MATCH_PARTIAL
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 MatchSimple {
24065 #[inline]
24066 fn can_cast(kind: SyntaxKind) -> bool {
24067 kind == SyntaxKind::MATCH_SIMPLE
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 Materialized {
24083 #[inline]
24084 fn can_cast(kind: SyntaxKind) -> bool {
24085 kind == SyntaxKind::MATERIALIZED
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 Merge {
24101 #[inline]
24102 fn can_cast(kind: SyntaxKind) -> bool {
24103 kind == SyntaxKind::MERGE
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 MergeDelete {
24119 #[inline]
24120 fn can_cast(kind: SyntaxKind) -> bool {
24121 kind == SyntaxKind::MERGE_DELETE
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 MergeDoNothing {
24137 #[inline]
24138 fn can_cast(kind: SyntaxKind) -> bool {
24139 kind == SyntaxKind::MERGE_DO_NOTHING
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 MergeInsert {
24155 #[inline]
24156 fn can_cast(kind: SyntaxKind) -> bool {
24157 kind == SyntaxKind::MERGE_INSERT
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 MergePartitions {
24173 #[inline]
24174 fn can_cast(kind: SyntaxKind) -> bool {
24175 kind == SyntaxKind::MERGE_PARTITIONS
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 MergeUpdate {
24191 #[inline]
24192 fn can_cast(kind: SyntaxKind) -> bool {
24193 kind == SyntaxKind::MERGE_UPDATE
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 MergeWhenMatched {
24209 #[inline]
24210 fn can_cast(kind: SyntaxKind) -> bool {
24211 kind == SyntaxKind::MERGE_WHEN_MATCHED
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 MergeWhenNotMatchedSource {
24227 #[inline]
24228 fn can_cast(kind: SyntaxKind) -> bool {
24229 kind == SyntaxKind::MERGE_WHEN_NOT_MATCHED_SOURCE
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 MergeWhenNotMatchedTarget {
24245 #[inline]
24246 fn can_cast(kind: SyntaxKind) -> bool {
24247 kind == SyntaxKind::MERGE_WHEN_NOT_MATCHED_TARGET
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 Move {
24263 #[inline]
24264 fn can_cast(kind: SyntaxKind) -> bool {
24265 kind == SyntaxKind::MOVE
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 Name {
24281 #[inline]
24282 fn can_cast(kind: SyntaxKind) -> bool {
24283 kind == SyntaxKind::NAME
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 NameRef {
24299 #[inline]
24300 fn can_cast(kind: SyntaxKind) -> bool {
24301 kind == SyntaxKind::NAME_REF
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 NamedArg {
24317 #[inline]
24318 fn can_cast(kind: SyntaxKind) -> bool {
24319 kind == SyntaxKind::NAMED_ARG
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 Neq {
24335 #[inline]
24336 fn can_cast(kind: SyntaxKind) -> bool {
24337 kind == SyntaxKind::NEQ
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 Neqb {
24353 #[inline]
24354 fn can_cast(kind: SyntaxKind) -> bool {
24355 kind == SyntaxKind::NEQB
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 NoAction {
24371 #[inline]
24372 fn can_cast(kind: SyntaxKind) -> bool {
24373 kind == SyntaxKind::NO_ACTION
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 NoDependsOnExtension {
24389 #[inline]
24390 fn can_cast(kind: SyntaxKind) -> bool {
24391 kind == SyntaxKind::NO_DEPENDS_ON_EXTENSION
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 NoForceRls {
24407 #[inline]
24408 fn can_cast(kind: SyntaxKind) -> bool {
24409 kind == SyntaxKind::NO_FORCE_RLS
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 NoInherit {
24425 #[inline]
24426 fn can_cast(kind: SyntaxKind) -> bool {
24427 kind == SyntaxKind::NO_INHERIT
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 NoInheritTable {
24443 #[inline]
24444 fn can_cast(kind: SyntaxKind) -> bool {
24445 kind == SyntaxKind::NO_INHERIT_TABLE
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 NonStandardParam {
24461 #[inline]
24462 fn can_cast(kind: SyntaxKind) -> bool {
24463 kind == SyntaxKind::NON_STANDARD_PARAM
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 NotDeferrable {
24479 #[inline]
24480 fn can_cast(kind: SyntaxKind) -> bool {
24481 kind == SyntaxKind::NOT_DEFERRABLE
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 NotDeferrableConstraintOption {
24497 #[inline]
24498 fn can_cast(kind: SyntaxKind) -> bool {
24499 kind == SyntaxKind::NOT_DEFERRABLE_CONSTRAINT_OPTION
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 NotEnforced {
24515 #[inline]
24516 fn can_cast(kind: SyntaxKind) -> bool {
24517 kind == SyntaxKind::NOT_ENFORCED
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 NotIlike {
24533 #[inline]
24534 fn can_cast(kind: SyntaxKind) -> bool {
24535 kind == SyntaxKind::NOT_ILIKE
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 NotIn {
24551 #[inline]
24552 fn can_cast(kind: SyntaxKind) -> bool {
24553 kind == SyntaxKind::NOT_IN
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 NotLike {
24569 #[inline]
24570 fn can_cast(kind: SyntaxKind) -> bool {
24571 kind == SyntaxKind::NOT_LIKE
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 NotMaterialized {
24587 #[inline]
24588 fn can_cast(kind: SyntaxKind) -> bool {
24589 kind == SyntaxKind::NOT_MATERIALIZED
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 NotNullConstraint {
24605 #[inline]
24606 fn can_cast(kind: SyntaxKind) -> bool {
24607 kind == SyntaxKind::NOT_NULL_CONSTRAINT
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 NotOf {
24623 #[inline]
24624 fn can_cast(kind: SyntaxKind) -> bool {
24625 kind == SyntaxKind::NOT_OF
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 NotSimilarTo {
24641 #[inline]
24642 fn can_cast(kind: SyntaxKind) -> bool {
24643 kind == SyntaxKind::NOT_SIMILAR_TO
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 NotValid {
24659 #[inline]
24660 fn can_cast(kind: SyntaxKind) -> bool {
24661 kind == SyntaxKind::NOT_VALID
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 Notify {
24677 #[inline]
24678 fn can_cast(kind: SyntaxKind) -> bool {
24679 kind == SyntaxKind::NOTIFY
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 NullConstraint {
24695 #[inline]
24696 fn can_cast(kind: SyntaxKind) -> bool {
24697 kind == SyntaxKind::NULL_CONSTRAINT
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 NullsDistinct {
24713 #[inline]
24714 fn can_cast(kind: SyntaxKind) -> bool {
24715 kind == SyntaxKind::NULLS_DISTINCT
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 NullsFirst {
24731 #[inline]
24732 fn can_cast(kind: SyntaxKind) -> bool {
24733 kind == SyntaxKind::NULLS_FIRST
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 NullsLast {
24749 #[inline]
24750 fn can_cast(kind: SyntaxKind) -> bool {
24751 kind == SyntaxKind::NULLS_LAST
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 NullsNotDistinct {
24767 #[inline]
24768 fn can_cast(kind: SyntaxKind) -> bool {
24769 kind == SyntaxKind::NULLS_NOT_DISTINCT
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 OfType {
24785 #[inline]
24786 fn can_cast(kind: SyntaxKind) -> bool {
24787 kind == SyntaxKind::OF_TYPE
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 OffsetClause {
24803 #[inline]
24804 fn can_cast(kind: SyntaxKind) -> bool {
24805 kind == SyntaxKind::OFFSET_CLAUSE
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 OnClause {
24821 #[inline]
24822 fn can_cast(kind: SyntaxKind) -> bool {
24823 kind == SyntaxKind::ON_CLAUSE
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 OnCommit {
24839 #[inline]
24840 fn can_cast(kind: SyntaxKind) -> bool {
24841 kind == SyntaxKind::ON_COMMIT
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 OnConflictClause {
24857 #[inline]
24858 fn can_cast(kind: SyntaxKind) -> bool {
24859 kind == SyntaxKind::ON_CONFLICT_CLAUSE
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 OnDeleteAction {
24875 #[inline]
24876 fn can_cast(kind: SyntaxKind) -> bool {
24877 kind == SyntaxKind::ON_DELETE_ACTION
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 OnTable {
24893 #[inline]
24894 fn can_cast(kind: SyntaxKind) -> bool {
24895 kind == SyntaxKind::ON_TABLE
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 OnUpdateAction {
24911 #[inline]
24912 fn can_cast(kind: SyntaxKind) -> bool {
24913 kind == SyntaxKind::ON_UPDATE_ACTION
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 Op {
24929 #[inline]
24930 fn can_cast(kind: SyntaxKind) -> bool {
24931 kind == SyntaxKind::OP
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 OpClassOption {
24947 #[inline]
24948 fn can_cast(kind: SyntaxKind) -> bool {
24949 kind == SyntaxKind::OP_CLASS_OPTION
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 OpSig {
24965 #[inline]
24966 fn can_cast(kind: SyntaxKind) -> bool {
24967 kind == SyntaxKind::OP_SIG
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 OpSigList {
24983 #[inline]
24984 fn can_cast(kind: SyntaxKind) -> bool {
24985 kind == SyntaxKind::OP_SIG_LIST
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 OperatorCall {
25001 #[inline]
25002 fn can_cast(kind: SyntaxKind) -> bool {
25003 kind == SyntaxKind::OPERATOR_CALL
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 OperatorClassOptionList {
25019 #[inline]
25020 fn can_cast(kind: SyntaxKind) -> bool {
25021 kind == SyntaxKind::OPERATOR_CLASS_OPTION_LIST
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 OptionItem {
25037 #[inline]
25038 fn can_cast(kind: SyntaxKind) -> bool {
25039 kind == SyntaxKind::OPTION_ITEM
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 OptionItemList {
25055 #[inline]
25056 fn can_cast(kind: SyntaxKind) -> bool {
25057 kind == SyntaxKind::OPTION_ITEM_LIST
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 OrReplace {
25073 #[inline]
25074 fn can_cast(kind: SyntaxKind) -> bool {
25075 kind == SyntaxKind::OR_REPLACE
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 OrderByClause {
25091 #[inline]
25092 fn can_cast(kind: SyntaxKind) -> bool {
25093 kind == SyntaxKind::ORDER_BY_CLAUSE
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 OverClause {
25109 #[inline]
25110 fn can_cast(kind: SyntaxKind) -> bool {
25111 kind == SyntaxKind::OVER_CLAUSE
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 OverlayFn {
25127 #[inline]
25128 fn can_cast(kind: SyntaxKind) -> bool {
25129 kind == SyntaxKind::OVERLAY_FN
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 OwnedByRoles {
25145 #[inline]
25146 fn can_cast(kind: SyntaxKind) -> bool {
25147 kind == SyntaxKind::OWNED_BY_ROLES
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 OwnerTo {
25163 #[inline]
25164 fn can_cast(kind: SyntaxKind) -> bool {
25165 kind == SyntaxKind::OWNER_TO
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 ParallelFuncOption {
25181 #[inline]
25182 fn can_cast(kind: SyntaxKind) -> bool {
25183 kind == SyntaxKind::PARALLEL_FUNC_OPTION
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 Param {
25199 #[inline]
25200 fn can_cast(kind: SyntaxKind) -> bool {
25201 kind == SyntaxKind::PARAM
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 ParamDefault {
25217 #[inline]
25218 fn can_cast(kind: SyntaxKind) -> bool {
25219 kind == SyntaxKind::PARAM_DEFAULT
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 ParamIn {
25235 #[inline]
25236 fn can_cast(kind: SyntaxKind) -> bool {
25237 kind == SyntaxKind::PARAM_IN
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 ParamInOut {
25253 #[inline]
25254 fn can_cast(kind: SyntaxKind) -> bool {
25255 kind == SyntaxKind::PARAM_IN_OUT
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 ParamList {
25271 #[inline]
25272 fn can_cast(kind: SyntaxKind) -> bool {
25273 kind == SyntaxKind::PARAM_LIST
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 ParamOut {
25289 #[inline]
25290 fn can_cast(kind: SyntaxKind) -> bool {
25291 kind == SyntaxKind::PARAM_OUT
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 ParamVariadic {
25307 #[inline]
25308 fn can_cast(kind: SyntaxKind) -> bool {
25309 kind == SyntaxKind::PARAM_VARIADIC
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 ParenExpr {
25325 #[inline]
25326 fn can_cast(kind: SyntaxKind) -> bool {
25327 kind == SyntaxKind::PAREN_EXPR
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 ParenSelect {
25343 #[inline]
25344 fn can_cast(kind: SyntaxKind) -> bool {
25345 kind == SyntaxKind::PAREN_SELECT
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 Partition {
25361 #[inline]
25362 fn can_cast(kind: SyntaxKind) -> bool {
25363 kind == SyntaxKind::PARTITION
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 PartitionBy {
25379 #[inline]
25380 fn can_cast(kind: SyntaxKind) -> bool {
25381 kind == SyntaxKind::PARTITION_BY
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 PartitionDefault {
25397 #[inline]
25398 fn can_cast(kind: SyntaxKind) -> bool {
25399 kind == SyntaxKind::PARTITION_DEFAULT
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 PartitionForValuesFrom {
25415 #[inline]
25416 fn can_cast(kind: SyntaxKind) -> bool {
25417 kind == SyntaxKind::PARTITION_FOR_VALUES_FROM
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 PartitionForValuesIn {
25433 #[inline]
25434 fn can_cast(kind: SyntaxKind) -> bool {
25435 kind == SyntaxKind::PARTITION_FOR_VALUES_IN
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 PartitionForValuesWith {
25451 #[inline]
25452 fn can_cast(kind: SyntaxKind) -> bool {
25453 kind == SyntaxKind::PARTITION_FOR_VALUES_WITH
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 PartitionItem {
25469 #[inline]
25470 fn can_cast(kind: SyntaxKind) -> bool {
25471 kind == SyntaxKind::PARTITION_ITEM
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 PartitionItemList {
25487 #[inline]
25488 fn can_cast(kind: SyntaxKind) -> bool {
25489 kind == SyntaxKind::PARTITION_ITEM_LIST
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 PartitionList {
25505 #[inline]
25506 fn can_cast(kind: SyntaxKind) -> bool {
25507 kind == SyntaxKind::PARTITION_LIST
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 PartitionOf {
25523 #[inline]
25524 fn can_cast(kind: SyntaxKind) -> bool {
25525 kind == SyntaxKind::PARTITION_OF
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 Path {
25541 #[inline]
25542 fn can_cast(kind: SyntaxKind) -> bool {
25543 kind == SyntaxKind::PATH
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 PathSegment {
25559 #[inline]
25560 fn can_cast(kind: SyntaxKind) -> bool {
25561 kind == SyntaxKind::PATH_SEGMENT
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 PathType {
25577 #[inline]
25578 fn can_cast(kind: SyntaxKind) -> bool {
25579 kind == SyntaxKind::PATH_TYPE
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 PercentType {
25595 #[inline]
25596 fn can_cast(kind: SyntaxKind) -> bool {
25597 kind == SyntaxKind::PERCENT_TYPE
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 PercentTypeClause {
25613 #[inline]
25614 fn can_cast(kind: SyntaxKind) -> bool {
25615 kind == SyntaxKind::PERCENT_TYPE_CLAUSE
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 PositionFn {
25631 #[inline]
25632 fn can_cast(kind: SyntaxKind) -> bool {
25633 kind == SyntaxKind::POSITION_FN
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 PostfixExpr {
25649 #[inline]
25650 fn can_cast(kind: SyntaxKind) -> bool {
25651 kind == SyntaxKind::POSTFIX_EXPR
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 PrefixExpr {
25667 #[inline]
25668 fn can_cast(kind: SyntaxKind) -> bool {
25669 kind == SyntaxKind::PREFIX_EXPR
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 Prepare {
25685 #[inline]
25686 fn can_cast(kind: SyntaxKind) -> bool {
25687 kind == SyntaxKind::PREPARE
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 PrepareTransaction {
25703 #[inline]
25704 fn can_cast(kind: SyntaxKind) -> bool {
25705 kind == SyntaxKind::PREPARE_TRANSACTION
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 PreserveRows {
25721 #[inline]
25722 fn can_cast(kind: SyntaxKind) -> bool {
25723 kind == SyntaxKind::PRESERVE_ROWS
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 PrimaryKeyConstraint {
25739 #[inline]
25740 fn can_cast(kind: SyntaxKind) -> bool {
25741 kind == SyntaxKind::PRIMARY_KEY_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 PrivilegeTarget {
25757 #[inline]
25758 fn can_cast(kind: SyntaxKind) -> bool {
25759 kind == SyntaxKind::PRIVILEGE_TARGET
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 Privileges {
25775 #[inline]
25776 fn can_cast(kind: SyntaxKind) -> bool {
25777 kind == SyntaxKind::PRIVILEGES
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 PublicationObject {
25793 #[inline]
25794 fn can_cast(kind: SyntaxKind) -> bool {
25795 kind == SyntaxKind::PUBLICATION_OBJECT
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 ReadCommitted {
25811 #[inline]
25812 fn can_cast(kind: SyntaxKind) -> bool {
25813 kind == SyntaxKind::READ_COMMITTED
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 ReadOnly {
25829 #[inline]
25830 fn can_cast(kind: SyntaxKind) -> bool {
25831 kind == SyntaxKind::READ_ONLY
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 ReadUncommitted {
25847 #[inline]
25848 fn can_cast(kind: SyntaxKind) -> bool {
25849 kind == SyntaxKind::READ_UNCOMMITTED
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 ReadWrite {
25865 #[inline]
25866 fn can_cast(kind: SyntaxKind) -> bool {
25867 kind == SyntaxKind::READ_WRITE
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 Reassign {
25883 #[inline]
25884 fn can_cast(kind: SyntaxKind) -> bool {
25885 kind == SyntaxKind::REASSIGN
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 ReferencesConstraint {
25901 #[inline]
25902 fn can_cast(kind: SyntaxKind) -> bool {
25903 kind == SyntaxKind::REFERENCES_CONSTRAINT
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 Referencing {
25919 #[inline]
25920 fn can_cast(kind: SyntaxKind) -> bool {
25921 kind == SyntaxKind::REFERENCING
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 ReferencingTable {
25937 #[inline]
25938 fn can_cast(kind: SyntaxKind) -> bool {
25939 kind == SyntaxKind::REFERENCING_TABLE
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 Refresh {
25955 #[inline]
25956 fn can_cast(kind: SyntaxKind) -> bool {
25957 kind == SyntaxKind::REFRESH
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 RefreshCollationVersion {
25973 #[inline]
25974 fn can_cast(kind: SyntaxKind) -> bool {
25975 kind == SyntaxKind::REFRESH_COLLATION_VERSION
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 RefreshVersion {
25991 #[inline]
25992 fn can_cast(kind: SyntaxKind) -> bool {
25993 kind == SyntaxKind::REFRESH_VERSION
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 Reindex {
26009 #[inline]
26010 fn can_cast(kind: SyntaxKind) -> bool {
26011 kind == SyntaxKind::REINDEX
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 RelationName {
26027 #[inline]
26028 fn can_cast(kind: SyntaxKind) -> bool {
26029 kind == SyntaxKind::RELATION_NAME
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 ReleaseSavepoint {
26045 #[inline]
26046 fn can_cast(kind: SyntaxKind) -> bool {
26047 kind == SyntaxKind::RELEASE_SAVEPOINT
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 RenameColumn {
26063 #[inline]
26064 fn can_cast(kind: SyntaxKind) -> bool {
26065 kind == SyntaxKind::RENAME_COLUMN
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 RenameConstraint {
26081 #[inline]
26082 fn can_cast(kind: SyntaxKind) -> bool {
26083 kind == SyntaxKind::RENAME_CONSTRAINT
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 RenameTo {
26099 #[inline]
26100 fn can_cast(kind: SyntaxKind) -> bool {
26101 kind == SyntaxKind::RENAME_TO
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 RepeatableClause {
26117 #[inline]
26118 fn can_cast(kind: SyntaxKind) -> bool {
26119 kind == SyntaxKind::REPEATABLE_CLAUSE
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 RepeatableRead {
26135 #[inline]
26136 fn can_cast(kind: SyntaxKind) -> bool {
26137 kind == SyntaxKind::REPEATABLE_READ
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 ReplicaIdentity {
26153 #[inline]
26154 fn can_cast(kind: SyntaxKind) -> bool {
26155 kind == SyntaxKind::REPLICA_IDENTITY
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 Reset {
26171 #[inline]
26172 fn can_cast(kind: SyntaxKind) -> bool {
26173 kind == SyntaxKind::RESET
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 ResetConfigParam {
26189 #[inline]
26190 fn can_cast(kind: SyntaxKind) -> bool {
26191 kind == SyntaxKind::RESET_CONFIG_PARAM
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 ResetFuncOption {
26207 #[inline]
26208 fn can_cast(kind: SyntaxKind) -> bool {
26209 kind == SyntaxKind::RESET_FUNC_OPTION
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 ResetOptions {
26225 #[inline]
26226 fn can_cast(kind: SyntaxKind) -> bool {
26227 kind == SyntaxKind::RESET_OPTIONS
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 ResetSessionAuth {
26243 #[inline]
26244 fn can_cast(kind: SyntaxKind) -> bool {
26245 kind == SyntaxKind::RESET_SESSION_AUTH
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 Restart {
26261 #[inline]
26262 fn can_cast(kind: SyntaxKind) -> bool {
26263 kind == SyntaxKind::RESTART
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 Restrict {
26279 #[inline]
26280 fn can_cast(kind: SyntaxKind) -> bool {
26281 kind == SyntaxKind::RESTRICT
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 RetType {
26297 #[inline]
26298 fn can_cast(kind: SyntaxKind) -> bool {
26299 kind == SyntaxKind::RET_TYPE
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 ReturnFuncOption {
26315 #[inline]
26316 fn can_cast(kind: SyntaxKind) -> bool {
26317 kind == SyntaxKind::RETURN_FUNC_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 ReturningClause {
26333 #[inline]
26334 fn can_cast(kind: SyntaxKind) -> bool {
26335 kind == SyntaxKind::RETURNING_CLAUSE
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 ReturningOption {
26351 #[inline]
26352 fn can_cast(kind: SyntaxKind) -> bool {
26353 kind == SyntaxKind::RETURNING_OPTION
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 ReturningOptionList {
26369 #[inline]
26370 fn can_cast(kind: SyntaxKind) -> bool {
26371 kind == SyntaxKind::RETURNING_OPTION_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 Revoke {
26387 #[inline]
26388 fn can_cast(kind: SyntaxKind) -> bool {
26389 kind == SyntaxKind::REVOKE
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 RevokeCommand {
26405 #[inline]
26406 fn can_cast(kind: SyntaxKind) -> bool {
26407 kind == SyntaxKind::REVOKE_COMMAND
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 RevokeCommandList {
26423 #[inline]
26424 fn can_cast(kind: SyntaxKind) -> bool {
26425 kind == SyntaxKind::REVOKE_COMMAND_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 RevokeDefaultPrivileges {
26441 #[inline]
26442 fn can_cast(kind: SyntaxKind) -> bool {
26443 kind == SyntaxKind::REVOKE_DEFAULT_PRIVILEGES
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 Role {
26459 #[inline]
26460 fn can_cast(kind: SyntaxKind) -> bool {
26461 kind == SyntaxKind::ROLE
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 RoleOption {
26477 #[inline]
26478 fn can_cast(kind: SyntaxKind) -> bool {
26479 kind == SyntaxKind::ROLE_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 RoleOptionList {
26495 #[inline]
26496 fn can_cast(kind: SyntaxKind) -> bool {
26497 kind == SyntaxKind::ROLE_OPTION_LIST
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 RoleRef {
26513 #[inline]
26514 fn can_cast(kind: SyntaxKind) -> bool {
26515 kind == SyntaxKind::ROLE_REF
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 RoleRefList {
26531 #[inline]
26532 fn can_cast(kind: SyntaxKind) -> bool {
26533 kind == SyntaxKind::ROLE_REF_LIST
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 Rollback {
26549 #[inline]
26550 fn can_cast(kind: SyntaxKind) -> bool {
26551 kind == SyntaxKind::ROLLBACK
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 Row {
26567 #[inline]
26568 fn can_cast(kind: SyntaxKind) -> bool {
26569 kind == SyntaxKind::ROW
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 RowList {
26585 #[inline]
26586 fn can_cast(kind: SyntaxKind) -> bool {
26587 kind == SyntaxKind::ROW_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 RowsFuncOption {
26603 #[inline]
26604 fn can_cast(kind: SyntaxKind) -> bool {
26605 kind == SyntaxKind::ROWS_FUNC_OPTION
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 Savepoint {
26621 #[inline]
26622 fn can_cast(kind: SyntaxKind) -> bool {
26623 kind == SyntaxKind::SAVEPOINT
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 SecurityFuncOption {
26639 #[inline]
26640 fn can_cast(kind: SyntaxKind) -> bool {
26641 kind == SyntaxKind::SECURITY_FUNC_OPTION
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 SecurityLabel {
26657 #[inline]
26658 fn can_cast(kind: SyntaxKind) -> bool {
26659 kind == SyntaxKind::SECURITY_LABEL
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 Select {
26675 #[inline]
26676 fn can_cast(kind: SyntaxKind) -> bool {
26677 kind == SyntaxKind::SELECT
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 SelectClause {
26693 #[inline]
26694 fn can_cast(kind: SyntaxKind) -> bool {
26695 kind == SyntaxKind::SELECT_CLAUSE
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 SelectInto {
26711 #[inline]
26712 fn can_cast(kind: SyntaxKind) -> bool {
26713 kind == SyntaxKind::SELECT_INTO
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 SequenceOption {
26729 #[inline]
26730 fn can_cast(kind: SyntaxKind) -> bool {
26731 kind == SyntaxKind::SEQUENCE_OPTION
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 SequenceOptionList {
26747 #[inline]
26748 fn can_cast(kind: SyntaxKind) -> bool {
26749 kind == SyntaxKind::SEQUENCE_OPTION_LIST
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 Serializable {
26765 #[inline]
26766 fn can_cast(kind: SyntaxKind) -> bool {
26767 kind == SyntaxKind::SERIALIZABLE
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 ServerName {
26783 #[inline]
26784 fn can_cast(kind: SyntaxKind) -> bool {
26785 kind == SyntaxKind::SERVER_NAME
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 Set {
26801 #[inline]
26802 fn can_cast(kind: SyntaxKind) -> bool {
26803 kind == SyntaxKind::SET
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 SetAccessMethod {
26819 #[inline]
26820 fn can_cast(kind: SyntaxKind) -> bool {
26821 kind == SyntaxKind::SET_ACCESS_METHOD
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 SetClause {
26837 #[inline]
26838 fn can_cast(kind: SyntaxKind) -> bool {
26839 kind == SyntaxKind::SET_CLAUSE
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 SetColumnList {
26855 #[inline]
26856 fn can_cast(kind: SyntaxKind) -> bool {
26857 kind == SyntaxKind::SET_COLUMN_LIST
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 SetCompression {
26873 #[inline]
26874 fn can_cast(kind: SyntaxKind) -> bool {
26875 kind == SyntaxKind::SET_COMPRESSION
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 SetConfigParam {
26891 #[inline]
26892 fn can_cast(kind: SyntaxKind) -> bool {
26893 kind == SyntaxKind::SET_CONFIG_PARAM
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 SetConstraints {
26909 #[inline]
26910 fn can_cast(kind: SyntaxKind) -> bool {
26911 kind == SyntaxKind::SET_CONSTRAINTS
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 SetDefault {
26927 #[inline]
26928 fn can_cast(kind: SyntaxKind) -> bool {
26929 kind == SyntaxKind::SET_DEFAULT
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 SetDefaultColumns {
26945 #[inline]
26946 fn can_cast(kind: SyntaxKind) -> bool {
26947 kind == SyntaxKind::SET_DEFAULT_COLUMNS
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 SetExpr {
26963 #[inline]
26964 fn can_cast(kind: SyntaxKind) -> bool {
26965 kind == SyntaxKind::SET_EXPR
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 SetExprList {
26981 #[inline]
26982 fn can_cast(kind: SyntaxKind) -> bool {
26983 kind == SyntaxKind::SET_EXPR_LIST
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 SetExpression {
26999 #[inline]
27000 fn can_cast(kind: SyntaxKind) -> bool {
27001 kind == SyntaxKind::SET_EXPRESSION
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 SetFuncOption {
27017 #[inline]
27018 fn can_cast(kind: SyntaxKind) -> bool {
27019 kind == SyntaxKind::SET_FUNC_OPTION
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 SetGenerated {
27035 #[inline]
27036 fn can_cast(kind: SyntaxKind) -> bool {
27037 kind == SyntaxKind::SET_GENERATED
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 SetGeneratedOptions {
27053 #[inline]
27054 fn can_cast(kind: SyntaxKind) -> bool {
27055 kind == SyntaxKind::SET_GENERATED_OPTIONS
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 SetLogged {
27071 #[inline]
27072 fn can_cast(kind: SyntaxKind) -> bool {
27073 kind == SyntaxKind::SET_LOGGED
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 SetMultipleColumns {
27089 #[inline]
27090 fn can_cast(kind: SyntaxKind) -> bool {
27091 kind == SyntaxKind::SET_MULTIPLE_COLUMNS
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 SetNotNull {
27107 #[inline]
27108 fn can_cast(kind: SyntaxKind) -> bool {
27109 kind == SyntaxKind::SET_NOT_NULL
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 SetNullColumns {
27125 #[inline]
27126 fn can_cast(kind: SyntaxKind) -> bool {
27127 kind == SyntaxKind::SET_NULL_COLUMNS
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 SetOptions {
27143 #[inline]
27144 fn can_cast(kind: SyntaxKind) -> bool {
27145 kind == SyntaxKind::SET_OPTIONS
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 SetOptionsList {
27161 #[inline]
27162 fn can_cast(kind: SyntaxKind) -> bool {
27163 kind == SyntaxKind::SET_OPTIONS_LIST
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 SetRole {
27179 #[inline]
27180 fn can_cast(kind: SyntaxKind) -> bool {
27181 kind == SyntaxKind::SET_ROLE
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 SetSchema {
27197 #[inline]
27198 fn can_cast(kind: SyntaxKind) -> bool {
27199 kind == SyntaxKind::SET_SCHEMA
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 SetSequenceOption {
27215 #[inline]
27216 fn can_cast(kind: SyntaxKind) -> bool {
27217 kind == SyntaxKind::SET_SEQUENCE_OPTION
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 SetSessionAuth {
27233 #[inline]
27234 fn can_cast(kind: SyntaxKind) -> bool {
27235 kind == SyntaxKind::SET_SESSION_AUTH
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 SetSingleColumn {
27251 #[inline]
27252 fn can_cast(kind: SyntaxKind) -> bool {
27253 kind == SyntaxKind::SET_SINGLE_COLUMN
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 SetStatistics {
27269 #[inline]
27270 fn can_cast(kind: SyntaxKind) -> bool {
27271 kind == SyntaxKind::SET_STATISTICS
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 SetStorage {
27287 #[inline]
27288 fn can_cast(kind: SyntaxKind) -> bool {
27289 kind == SyntaxKind::SET_STORAGE
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 SetTablespace {
27305 #[inline]
27306 fn can_cast(kind: SyntaxKind) -> bool {
27307 kind == SyntaxKind::SET_TABLESPACE
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 SetTransaction {
27323 #[inline]
27324 fn can_cast(kind: SyntaxKind) -> bool {
27325 kind == SyntaxKind::SET_TRANSACTION
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 SetType {
27341 #[inline]
27342 fn can_cast(kind: SyntaxKind) -> bool {
27343 kind == SyntaxKind::SET_TYPE
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 SetUnlogged {
27359 #[inline]
27360 fn can_cast(kind: SyntaxKind) -> bool {
27361 kind == SyntaxKind::SET_UNLOGGED
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 SetWithoutCluster {
27377 #[inline]
27378 fn can_cast(kind: SyntaxKind) -> bool {
27379 kind == SyntaxKind::SET_WITHOUT_CLUSTER
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 SetWithoutOids {
27395 #[inline]
27396 fn can_cast(kind: SyntaxKind) -> bool {
27397 kind == SyntaxKind::SET_WITHOUT_OIDS
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 Show {
27413 #[inline]
27414 fn can_cast(kind: SyntaxKind) -> bool {
27415 kind == SyntaxKind::SHOW
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 SimilarTo {
27431 #[inline]
27432 fn can_cast(kind: SyntaxKind) -> bool {
27433 kind == SyntaxKind::SIMILAR_TO
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 SliceExpr {
27449 #[inline]
27450 fn can_cast(kind: SyntaxKind) -> bool {
27451 kind == SyntaxKind::SLICE_EXPR
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 SomeFn {
27467 #[inline]
27468 fn can_cast(kind: SyntaxKind) -> bool {
27469 kind == SyntaxKind::SOME_FN
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 SortAsc {
27485 #[inline]
27486 fn can_cast(kind: SyntaxKind) -> bool {
27487 kind == SyntaxKind::SORT_ASC
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 SortBy {
27503 #[inline]
27504 fn can_cast(kind: SyntaxKind) -> bool {
27505 kind == SyntaxKind::SORT_BY
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 SortByList {
27521 #[inline]
27522 fn can_cast(kind: SyntaxKind) -> bool {
27523 kind == SyntaxKind::SORT_BY_LIST
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 SortDesc {
27539 #[inline]
27540 fn can_cast(kind: SyntaxKind) -> bool {
27541 kind == SyntaxKind::SORT_DESC
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 SortUsing {
27557 #[inline]
27558 fn can_cast(kind: SyntaxKind) -> bool {
27559 kind == SyntaxKind::SORT_USING
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 SourceFile {
27575 #[inline]
27576 fn can_cast(kind: SyntaxKind) -> bool {
27577 kind == SyntaxKind::SOURCE_FILE
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 SplitPartition {
27593 #[inline]
27594 fn can_cast(kind: SyntaxKind) -> bool {
27595 kind == SyntaxKind::SPLIT_PARTITION
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 Storage {
27611 #[inline]
27612 fn can_cast(kind: SyntaxKind) -> bool {
27613 kind == SyntaxKind::STORAGE
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 StrictFuncOption {
27629 #[inline]
27630 fn can_cast(kind: SyntaxKind) -> bool {
27631 kind == SyntaxKind::STRICT_FUNC_OPTION
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 SubstringFn {
27647 #[inline]
27648 fn can_cast(kind: SyntaxKind) -> bool {
27649 kind == SyntaxKind::SUBSTRING_FN
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 SupportFuncOption {
27665 #[inline]
27666 fn can_cast(kind: SyntaxKind) -> bool {
27667 kind == SyntaxKind::SUPPORT_FUNC_OPTION
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 Table {
27683 #[inline]
27684 fn can_cast(kind: SyntaxKind) -> bool {
27685 kind == SyntaxKind::TABLE
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 TableAndColumns {
27701 #[inline]
27702 fn can_cast(kind: SyntaxKind) -> bool {
27703 kind == SyntaxKind::TABLE_AND_COLUMNS
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 TableAndColumnsList {
27719 #[inline]
27720 fn can_cast(kind: SyntaxKind) -> bool {
27721 kind == SyntaxKind::TABLE_AND_COLUMNS_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 TableArgList {
27737 #[inline]
27738 fn can_cast(kind: SyntaxKind) -> bool {
27739 kind == SyntaxKind::TABLE_ARG_LIST
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 TableList {
27755 #[inline]
27756 fn can_cast(kind: SyntaxKind) -> bool {
27757 kind == SyntaxKind::TABLE_LIST
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 TablesampleClause {
27773 #[inline]
27774 fn can_cast(kind: SyntaxKind) -> bool {
27775 kind == SyntaxKind::TABLESAMPLE_CLAUSE
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 Tablespace {
27791 #[inline]
27792 fn can_cast(kind: SyntaxKind) -> bool {
27793 kind == SyntaxKind::TABLESPACE
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 Target {
27809 #[inline]
27810 fn can_cast(kind: SyntaxKind) -> bool {
27811 kind == SyntaxKind::TARGET
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 TargetList {
27827 #[inline]
27828 fn can_cast(kind: SyntaxKind) -> bool {
27829 kind == SyntaxKind::TARGET_LIST
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 TimeType {
27845 #[inline]
27846 fn can_cast(kind: SyntaxKind) -> bool {
27847 kind == SyntaxKind::TIME_TYPE
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 Timing {
27863 #[inline]
27864 fn can_cast(kind: SyntaxKind) -> bool {
27865 kind == SyntaxKind::TIMING
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 TransactionModeList {
27881 #[inline]
27882 fn can_cast(kind: SyntaxKind) -> bool {
27883 kind == SyntaxKind::TRANSACTION_MODE_LIST
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 TransformFromFunc {
27899 #[inline]
27900 fn can_cast(kind: SyntaxKind) -> bool {
27901 kind == SyntaxKind::TRANSFORM_FROM_FUNC
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 TransformFuncOption {
27917 #[inline]
27918 fn can_cast(kind: SyntaxKind) -> bool {
27919 kind == SyntaxKind::TRANSFORM_FUNC_OPTION
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 TransformToFunc {
27935 #[inline]
27936 fn can_cast(kind: SyntaxKind) -> bool {
27937 kind == SyntaxKind::TRANSFORM_TO_FUNC
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 TriggerEvent {
27953 #[inline]
27954 fn can_cast(kind: SyntaxKind) -> bool {
27955 kind == SyntaxKind::TRIGGER_EVENT
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 TriggerEventList {
27971 #[inline]
27972 fn can_cast(kind: SyntaxKind) -> bool {
27973 kind == SyntaxKind::TRIGGER_EVENT_LIST
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 TriggerEventUpdate {
27989 #[inline]
27990 fn can_cast(kind: SyntaxKind) -> bool {
27991 kind == SyntaxKind::TRIGGER_EVENT_UPDATE
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 TrimFn {
28007 #[inline]
28008 fn can_cast(kind: SyntaxKind) -> bool {
28009 kind == SyntaxKind::TRIM_FN
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 Truncate {
28025 #[inline]
28026 fn can_cast(kind: SyntaxKind) -> bool {
28027 kind == SyntaxKind::TRUNCATE
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 TupleExpr {
28043 #[inline]
28044 fn can_cast(kind: SyntaxKind) -> bool {
28045 kind == SyntaxKind::TUPLE_EXPR
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 UnicodeNormalForm {
28061 #[inline]
28062 fn can_cast(kind: SyntaxKind) -> bool {
28063 kind == SyntaxKind::UNICODE_NORMAL_FORM
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 UniqueConstraint {
28079 #[inline]
28080 fn can_cast(kind: SyntaxKind) -> bool {
28081 kind == SyntaxKind::UNIQUE_CONSTRAINT
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 Unlisten {
28097 #[inline]
28098 fn can_cast(kind: SyntaxKind) -> bool {
28099 kind == SyntaxKind::UNLISTEN
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 Update {
28115 #[inline]
28116 fn can_cast(kind: SyntaxKind) -> bool {
28117 kind == SyntaxKind::UPDATE
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 UsingClause {
28133 #[inline]
28134 fn can_cast(kind: SyntaxKind) -> bool {
28135 kind == SyntaxKind::USING_CLAUSE
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 UsingExprClause {
28151 #[inline]
28152 fn can_cast(kind: SyntaxKind) -> bool {
28153 kind == SyntaxKind::USING_EXPR_CLAUSE
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 UsingIndex {
28169 #[inline]
28170 fn can_cast(kind: SyntaxKind) -> bool {
28171 kind == SyntaxKind::USING_INDEX
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 UsingMethod {
28187 #[inline]
28188 fn can_cast(kind: SyntaxKind) -> bool {
28189 kind == SyntaxKind::USING_METHOD
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 UsingOnClause {
28205 #[inline]
28206 fn can_cast(kind: SyntaxKind) -> bool {
28207 kind == SyntaxKind::USING_ON_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 Vacuum {
28223 #[inline]
28224 fn can_cast(kind: SyntaxKind) -> bool {
28225 kind == SyntaxKind::VACUUM
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 VacuumOption {
28241 #[inline]
28242 fn can_cast(kind: SyntaxKind) -> bool {
28243 kind == SyntaxKind::VACUUM_OPTION
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 VacuumOptionList {
28259 #[inline]
28260 fn can_cast(kind: SyntaxKind) -> bool {
28261 kind == SyntaxKind::VACUUM_OPTION_LIST
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 ValidateConstraint {
28277 #[inline]
28278 fn can_cast(kind: SyntaxKind) -> bool {
28279 kind == SyntaxKind::VALIDATE_CONSTRAINT
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 Values {
28295 #[inline]
28296 fn can_cast(kind: SyntaxKind) -> bool {
28297 kind == SyntaxKind::VALUES
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 Variant {
28313 #[inline]
28314 fn can_cast(kind: SyntaxKind) -> bool {
28315 kind == SyntaxKind::VARIANT
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 VariantList {
28331 #[inline]
28332 fn can_cast(kind: SyntaxKind) -> bool {
28333 kind == SyntaxKind::VARIANT_LIST
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 VolatilityFuncOption {
28349 #[inline]
28350 fn can_cast(kind: SyntaxKind) -> bool {
28351 kind == SyntaxKind::VOLATILITY_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 WhenClause {
28367 #[inline]
28368 fn can_cast(kind: SyntaxKind) -> bool {
28369 kind == SyntaxKind::WHEN_CLAUSE
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 WhenClauseList {
28385 #[inline]
28386 fn can_cast(kind: SyntaxKind) -> bool {
28387 kind == SyntaxKind::WHEN_CLAUSE_LIST
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 WhenCondition {
28403 #[inline]
28404 fn can_cast(kind: SyntaxKind) -> bool {
28405 kind == SyntaxKind::WHEN_CONDITION
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 WhereClause {
28421 #[inline]
28422 fn can_cast(kind: SyntaxKind) -> bool {
28423 kind == SyntaxKind::WHERE_CLAUSE
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 WhereConditionClause {
28439 #[inline]
28440 fn can_cast(kind: SyntaxKind) -> bool {
28441 kind == SyntaxKind::WHERE_CONDITION_CLAUSE
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 WhereCurrentOf {
28457 #[inline]
28458 fn can_cast(kind: SyntaxKind) -> bool {
28459 kind == SyntaxKind::WHERE_CURRENT_OF
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 WindowClause {
28475 #[inline]
28476 fn can_cast(kind: SyntaxKind) -> bool {
28477 kind == SyntaxKind::WINDOW_CLAUSE
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 WindowDef {
28493 #[inline]
28494 fn can_cast(kind: SyntaxKind) -> bool {
28495 kind == SyntaxKind::WINDOW_DEF
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 WindowFuncOption {
28511 #[inline]
28512 fn can_cast(kind: SyntaxKind) -> bool {
28513 kind == SyntaxKind::WINDOW_FUNC_OPTION
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 WindowSpec {
28529 #[inline]
28530 fn can_cast(kind: SyntaxKind) -> bool {
28531 kind == SyntaxKind::WINDOW_SPEC
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 WithCheckExprClause {
28547 #[inline]
28548 fn can_cast(kind: SyntaxKind) -> bool {
28549 kind == SyntaxKind::WITH_CHECK_EXPR_CLAUSE
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 WithClause {
28565 #[inline]
28566 fn can_cast(kind: SyntaxKind) -> bool {
28567 kind == SyntaxKind::WITH_CLAUSE
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 WithData {
28583 #[inline]
28584 fn can_cast(kind: SyntaxKind) -> bool {
28585 kind == SyntaxKind::WITH_DATA
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 WithNoData {
28601 #[inline]
28602 fn can_cast(kind: SyntaxKind) -> bool {
28603 kind == SyntaxKind::WITH_NO_DATA
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 WithOptions {
28619 #[inline]
28620 fn can_cast(kind: SyntaxKind) -> bool {
28621 kind == SyntaxKind::WITH_OPTIONS
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 WithParams {
28637 #[inline]
28638 fn can_cast(kind: SyntaxKind) -> bool {
28639 kind == SyntaxKind::WITH_PARAMS
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 WithTable {
28655 #[inline]
28656 fn can_cast(kind: SyntaxKind) -> bool {
28657 kind == SyntaxKind::WITH_TABLE
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 WithTimezone {
28673 #[inline]
28674 fn can_cast(kind: SyntaxKind) -> bool {
28675 kind == SyntaxKind::WITH_TIMEZONE
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 WithinClause {
28691 #[inline]
28692 fn can_cast(kind: SyntaxKind) -> bool {
28693 kind == SyntaxKind::WITHIN_CLAUSE
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 WithoutOids {
28709 #[inline]
28710 fn can_cast(kind: SyntaxKind) -> bool {
28711 kind == SyntaxKind::WITHOUT_OIDS
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 WithoutTimezone {
28727 #[inline]
28728 fn can_cast(kind: SyntaxKind) -> bool {
28729 kind == SyntaxKind::WITHOUT_TIMEZONE
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 XmlAttributeList {
28745 #[inline]
28746 fn can_cast(kind: SyntaxKind) -> bool {
28747 kind == SyntaxKind::XML_ATTRIBUTE_LIST
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 XmlColumnOption {
28763 #[inline]
28764 fn can_cast(kind: SyntaxKind) -> bool {
28765 kind == SyntaxKind::XML_COLUMN_OPTION
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 XmlColumnOptionList {
28781 #[inline]
28782 fn can_cast(kind: SyntaxKind) -> bool {
28783 kind == SyntaxKind::XML_COLUMN_OPTION_LIST
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 XmlElementFn {
28799 #[inline]
28800 fn can_cast(kind: SyntaxKind) -> bool {
28801 kind == SyntaxKind::XML_ELEMENT_FN
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 XmlExistsFn {
28817 #[inline]
28818 fn can_cast(kind: SyntaxKind) -> bool {
28819 kind == SyntaxKind::XML_EXISTS_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 XmlForestFn {
28835 #[inline]
28836 fn can_cast(kind: SyntaxKind) -> bool {
28837 kind == SyntaxKind::XML_FOREST_FN
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 XmlNamespace {
28853 #[inline]
28854 fn can_cast(kind: SyntaxKind) -> bool {
28855 kind == SyntaxKind::XML_NAMESPACE
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 XmlNamespaceList {
28871 #[inline]
28872 fn can_cast(kind: SyntaxKind) -> bool {
28873 kind == SyntaxKind::XML_NAMESPACE_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 XmlParseFn {
28889 #[inline]
28890 fn can_cast(kind: SyntaxKind) -> bool {
28891 kind == SyntaxKind::XML_PARSE_FN
28892 }
28893 #[inline]
28894 fn cast(syntax: SyntaxNode) -> Option<Self> {
28895 if Self::can_cast(syntax.kind()) {
28896 Some(Self { syntax })
28897 } else {
28898 None
28899 }
28900 }
28901 #[inline]
28902 fn syntax(&self) -> &SyntaxNode {
28903 &self.syntax
28904 }
28905}
28906impl AstNode for XmlPassingMech {
28907 #[inline]
28908 fn can_cast(kind: SyntaxKind) -> bool {
28909 kind == SyntaxKind::XML_PASSING_MECH
28910 }
28911 #[inline]
28912 fn cast(syntax: SyntaxNode) -> Option<Self> {
28913 if Self::can_cast(syntax.kind()) {
28914 Some(Self { syntax })
28915 } else {
28916 None
28917 }
28918 }
28919 #[inline]
28920 fn syntax(&self) -> &SyntaxNode {
28921 &self.syntax
28922 }
28923}
28924impl AstNode for XmlPiFn {
28925 #[inline]
28926 fn can_cast(kind: SyntaxKind) -> bool {
28927 kind == SyntaxKind::XML_PI_FN
28928 }
28929 #[inline]
28930 fn cast(syntax: SyntaxNode) -> Option<Self> {
28931 if Self::can_cast(syntax.kind()) {
28932 Some(Self { syntax })
28933 } else {
28934 None
28935 }
28936 }
28937 #[inline]
28938 fn syntax(&self) -> &SyntaxNode {
28939 &self.syntax
28940 }
28941}
28942impl AstNode for XmlRootFn {
28943 #[inline]
28944 fn can_cast(kind: SyntaxKind) -> bool {
28945 kind == SyntaxKind::XML_ROOT_FN
28946 }
28947 #[inline]
28948 fn cast(syntax: SyntaxNode) -> Option<Self> {
28949 if Self::can_cast(syntax.kind()) {
28950 Some(Self { syntax })
28951 } else {
28952 None
28953 }
28954 }
28955 #[inline]
28956 fn syntax(&self) -> &SyntaxNode {
28957 &self.syntax
28958 }
28959}
28960impl AstNode for XmlRowPassingClause {
28961 #[inline]
28962 fn can_cast(kind: SyntaxKind) -> bool {
28963 kind == SyntaxKind::XML_ROW_PASSING_CLAUSE
28964 }
28965 #[inline]
28966 fn cast(syntax: SyntaxNode) -> Option<Self> {
28967 if Self::can_cast(syntax.kind()) {
28968 Some(Self { syntax })
28969 } else {
28970 None
28971 }
28972 }
28973 #[inline]
28974 fn syntax(&self) -> &SyntaxNode {
28975 &self.syntax
28976 }
28977}
28978impl AstNode for XmlSerializeFn {
28979 #[inline]
28980 fn can_cast(kind: SyntaxKind) -> bool {
28981 kind == SyntaxKind::XML_SERIALIZE_FN
28982 }
28983 #[inline]
28984 fn cast(syntax: SyntaxNode) -> Option<Self> {
28985 if Self::can_cast(syntax.kind()) {
28986 Some(Self { syntax })
28987 } else {
28988 None
28989 }
28990 }
28991 #[inline]
28992 fn syntax(&self) -> &SyntaxNode {
28993 &self.syntax
28994 }
28995}
28996impl AstNode for XmlTable {
28997 #[inline]
28998 fn can_cast(kind: SyntaxKind) -> bool {
28999 kind == SyntaxKind::XML_TABLE
29000 }
29001 #[inline]
29002 fn cast(syntax: SyntaxNode) -> Option<Self> {
29003 if Self::can_cast(syntax.kind()) {
29004 Some(Self { syntax })
29005 } else {
29006 None
29007 }
29008 }
29009 #[inline]
29010 fn syntax(&self) -> &SyntaxNode {
29011 &self.syntax
29012 }
29013}
29014impl AstNode for XmlTableColumn {
29015 #[inline]
29016 fn can_cast(kind: SyntaxKind) -> bool {
29017 kind == SyntaxKind::XML_TABLE_COLUMN
29018 }
29019 #[inline]
29020 fn cast(syntax: SyntaxNode) -> Option<Self> {
29021 if Self::can_cast(syntax.kind()) {
29022 Some(Self { syntax })
29023 } else {
29024 None
29025 }
29026 }
29027 #[inline]
29028 fn syntax(&self) -> &SyntaxNode {
29029 &self.syntax
29030 }
29031}
29032impl AstNode for XmlTableColumnList {
29033 #[inline]
29034 fn can_cast(kind: SyntaxKind) -> bool {
29035 kind == SyntaxKind::XML_TABLE_COLUMN_LIST
29036 }
29037 #[inline]
29038 fn cast(syntax: SyntaxNode) -> Option<Self> {
29039 if Self::can_cast(syntax.kind()) {
29040 Some(Self { syntax })
29041 } else {
29042 None
29043 }
29044 }
29045 #[inline]
29046 fn syntax(&self) -> &SyntaxNode {
29047 &self.syntax
29048 }
29049}
29050impl AstNode for AlterColumnOption {
29051 #[inline]
29052 fn can_cast(kind: SyntaxKind) -> bool {
29053 matches!(
29054 kind,
29055 SyntaxKind::ADD_GENERATED
29056 | SyntaxKind::DROP_DEFAULT
29057 | SyntaxKind::DROP_EXPRESSION
29058 | SyntaxKind::DROP_IDENTITY
29059 | SyntaxKind::DROP_NOT_NULL
29060 | SyntaxKind::INHERIT
29061 | SyntaxKind::NO_INHERIT
29062 | SyntaxKind::RESET_OPTIONS
29063 | SyntaxKind::RESTART
29064 | SyntaxKind::SET_COMPRESSION
29065 | SyntaxKind::SET_DEFAULT
29066 | SyntaxKind::SET_EXPRESSION
29067 | SyntaxKind::SET_GENERATED
29068 | SyntaxKind::SET_GENERATED_OPTIONS
29069 | SyntaxKind::SET_NOT_NULL
29070 | SyntaxKind::SET_OPTIONS
29071 | SyntaxKind::SET_OPTIONS_LIST
29072 | SyntaxKind::SET_SEQUENCE_OPTION
29073 | SyntaxKind::SET_STATISTICS
29074 | SyntaxKind::SET_STORAGE
29075 | SyntaxKind::SET_TYPE
29076 )
29077 }
29078 #[inline]
29079 fn cast(syntax: SyntaxNode) -> Option<Self> {
29080 let res = match syntax.kind() {
29081 SyntaxKind::ADD_GENERATED => AlterColumnOption::AddGenerated(AddGenerated { syntax }),
29082 SyntaxKind::DROP_DEFAULT => AlterColumnOption::DropDefault(DropDefault { syntax }),
29083 SyntaxKind::DROP_EXPRESSION => {
29084 AlterColumnOption::DropExpression(DropExpression { syntax })
29085 }
29086 SyntaxKind::DROP_IDENTITY => AlterColumnOption::DropIdentity(DropIdentity { syntax }),
29087 SyntaxKind::DROP_NOT_NULL => AlterColumnOption::DropNotNull(DropNotNull { syntax }),
29088 SyntaxKind::INHERIT => AlterColumnOption::Inherit(Inherit { syntax }),
29089 SyntaxKind::NO_INHERIT => AlterColumnOption::NoInherit(NoInherit { syntax }),
29090 SyntaxKind::RESET_OPTIONS => AlterColumnOption::ResetOptions(ResetOptions { syntax }),
29091 SyntaxKind::RESTART => AlterColumnOption::Restart(Restart { syntax }),
29092 SyntaxKind::SET_COMPRESSION => {
29093 AlterColumnOption::SetCompression(SetCompression { syntax })
29094 }
29095 SyntaxKind::SET_DEFAULT => AlterColumnOption::SetDefault(SetDefault { syntax }),
29096 SyntaxKind::SET_EXPRESSION => {
29097 AlterColumnOption::SetExpression(SetExpression { syntax })
29098 }
29099 SyntaxKind::SET_GENERATED => AlterColumnOption::SetGenerated(SetGenerated { syntax }),
29100 SyntaxKind::SET_GENERATED_OPTIONS => {
29101 AlterColumnOption::SetGeneratedOptions(SetGeneratedOptions { syntax })
29102 }
29103 SyntaxKind::SET_NOT_NULL => AlterColumnOption::SetNotNull(SetNotNull { syntax }),
29104 SyntaxKind::SET_OPTIONS => AlterColumnOption::SetOptions(SetOptions { syntax }),
29105 SyntaxKind::SET_OPTIONS_LIST => {
29106 AlterColumnOption::SetOptionsList(SetOptionsList { syntax })
29107 }
29108 SyntaxKind::SET_SEQUENCE_OPTION => {
29109 AlterColumnOption::SetSequenceOption(SetSequenceOption { syntax })
29110 }
29111 SyntaxKind::SET_STATISTICS => {
29112 AlterColumnOption::SetStatistics(SetStatistics { syntax })
29113 }
29114 SyntaxKind::SET_STORAGE => AlterColumnOption::SetStorage(SetStorage { syntax }),
29115 SyntaxKind::SET_TYPE => AlterColumnOption::SetType(SetType { syntax }),
29116 _ => {
29117 return None;
29118 }
29119 };
29120 Some(res)
29121 }
29122 #[inline]
29123 fn syntax(&self) -> &SyntaxNode {
29124 match self {
29125 AlterColumnOption::AddGenerated(it) => &it.syntax,
29126 AlterColumnOption::DropDefault(it) => &it.syntax,
29127 AlterColumnOption::DropExpression(it) => &it.syntax,
29128 AlterColumnOption::DropIdentity(it) => &it.syntax,
29129 AlterColumnOption::DropNotNull(it) => &it.syntax,
29130 AlterColumnOption::Inherit(it) => &it.syntax,
29131 AlterColumnOption::NoInherit(it) => &it.syntax,
29132 AlterColumnOption::ResetOptions(it) => &it.syntax,
29133 AlterColumnOption::Restart(it) => &it.syntax,
29134 AlterColumnOption::SetCompression(it) => &it.syntax,
29135 AlterColumnOption::SetDefault(it) => &it.syntax,
29136 AlterColumnOption::SetExpression(it) => &it.syntax,
29137 AlterColumnOption::SetGenerated(it) => &it.syntax,
29138 AlterColumnOption::SetGeneratedOptions(it) => &it.syntax,
29139 AlterColumnOption::SetNotNull(it) => &it.syntax,
29140 AlterColumnOption::SetOptions(it) => &it.syntax,
29141 AlterColumnOption::SetOptionsList(it) => &it.syntax,
29142 AlterColumnOption::SetSequenceOption(it) => &it.syntax,
29143 AlterColumnOption::SetStatistics(it) => &it.syntax,
29144 AlterColumnOption::SetStorage(it) => &it.syntax,
29145 AlterColumnOption::SetType(it) => &it.syntax,
29146 }
29147 }
29148}
29149impl From<AddGenerated> for AlterColumnOption {
29150 #[inline]
29151 fn from(node: AddGenerated) -> AlterColumnOption {
29152 AlterColumnOption::AddGenerated(node)
29153 }
29154}
29155impl From<DropDefault> for AlterColumnOption {
29156 #[inline]
29157 fn from(node: DropDefault) -> AlterColumnOption {
29158 AlterColumnOption::DropDefault(node)
29159 }
29160}
29161impl From<DropExpression> for AlterColumnOption {
29162 #[inline]
29163 fn from(node: DropExpression) -> AlterColumnOption {
29164 AlterColumnOption::DropExpression(node)
29165 }
29166}
29167impl From<DropIdentity> for AlterColumnOption {
29168 #[inline]
29169 fn from(node: DropIdentity) -> AlterColumnOption {
29170 AlterColumnOption::DropIdentity(node)
29171 }
29172}
29173impl From<DropNotNull> for AlterColumnOption {
29174 #[inline]
29175 fn from(node: DropNotNull) -> AlterColumnOption {
29176 AlterColumnOption::DropNotNull(node)
29177 }
29178}
29179impl From<Inherit> for AlterColumnOption {
29180 #[inline]
29181 fn from(node: Inherit) -> AlterColumnOption {
29182 AlterColumnOption::Inherit(node)
29183 }
29184}
29185impl From<NoInherit> for AlterColumnOption {
29186 #[inline]
29187 fn from(node: NoInherit) -> AlterColumnOption {
29188 AlterColumnOption::NoInherit(node)
29189 }
29190}
29191impl From<ResetOptions> for AlterColumnOption {
29192 #[inline]
29193 fn from(node: ResetOptions) -> AlterColumnOption {
29194 AlterColumnOption::ResetOptions(node)
29195 }
29196}
29197impl From<Restart> for AlterColumnOption {
29198 #[inline]
29199 fn from(node: Restart) -> AlterColumnOption {
29200 AlterColumnOption::Restart(node)
29201 }
29202}
29203impl From<SetCompression> for AlterColumnOption {
29204 #[inline]
29205 fn from(node: SetCompression) -> AlterColumnOption {
29206 AlterColumnOption::SetCompression(node)
29207 }
29208}
29209impl From<SetDefault> for AlterColumnOption {
29210 #[inline]
29211 fn from(node: SetDefault) -> AlterColumnOption {
29212 AlterColumnOption::SetDefault(node)
29213 }
29214}
29215impl From<SetExpression> for AlterColumnOption {
29216 #[inline]
29217 fn from(node: SetExpression) -> AlterColumnOption {
29218 AlterColumnOption::SetExpression(node)
29219 }
29220}
29221impl From<SetGenerated> for AlterColumnOption {
29222 #[inline]
29223 fn from(node: SetGenerated) -> AlterColumnOption {
29224 AlterColumnOption::SetGenerated(node)
29225 }
29226}
29227impl From<SetGeneratedOptions> for AlterColumnOption {
29228 #[inline]
29229 fn from(node: SetGeneratedOptions) -> AlterColumnOption {
29230 AlterColumnOption::SetGeneratedOptions(node)
29231 }
29232}
29233impl From<SetNotNull> for AlterColumnOption {
29234 #[inline]
29235 fn from(node: SetNotNull) -> AlterColumnOption {
29236 AlterColumnOption::SetNotNull(node)
29237 }
29238}
29239impl From<SetOptions> for AlterColumnOption {
29240 #[inline]
29241 fn from(node: SetOptions) -> AlterColumnOption {
29242 AlterColumnOption::SetOptions(node)
29243 }
29244}
29245impl From<SetOptionsList> for AlterColumnOption {
29246 #[inline]
29247 fn from(node: SetOptionsList) -> AlterColumnOption {
29248 AlterColumnOption::SetOptionsList(node)
29249 }
29250}
29251impl From<SetSequenceOption> for AlterColumnOption {
29252 #[inline]
29253 fn from(node: SetSequenceOption) -> AlterColumnOption {
29254 AlterColumnOption::SetSequenceOption(node)
29255 }
29256}
29257impl From<SetStatistics> for AlterColumnOption {
29258 #[inline]
29259 fn from(node: SetStatistics) -> AlterColumnOption {
29260 AlterColumnOption::SetStatistics(node)
29261 }
29262}
29263impl From<SetStorage> for AlterColumnOption {
29264 #[inline]
29265 fn from(node: SetStorage) -> AlterColumnOption {
29266 AlterColumnOption::SetStorage(node)
29267 }
29268}
29269impl From<SetType> for AlterColumnOption {
29270 #[inline]
29271 fn from(node: SetType) -> AlterColumnOption {
29272 AlterColumnOption::SetType(node)
29273 }
29274}
29275impl AstNode for AlterDomainAction {
29276 #[inline]
29277 fn can_cast(kind: SyntaxKind) -> bool {
29278 matches!(
29279 kind,
29280 SyntaxKind::ADD_CONSTRAINT
29281 | SyntaxKind::DROP_CONSTRAINT
29282 | SyntaxKind::DROP_DEFAULT
29283 | SyntaxKind::DROP_NOT_NULL
29284 | SyntaxKind::OWNER_TO
29285 | SyntaxKind::RENAME_CONSTRAINT
29286 | SyntaxKind::RENAME_TO
29287 | SyntaxKind::SET_DEFAULT
29288 | SyntaxKind::SET_NOT_NULL
29289 | SyntaxKind::SET_SCHEMA
29290 | SyntaxKind::VALIDATE_CONSTRAINT
29291 )
29292 }
29293 #[inline]
29294 fn cast(syntax: SyntaxNode) -> Option<Self> {
29295 let res = match syntax.kind() {
29296 SyntaxKind::ADD_CONSTRAINT => {
29297 AlterDomainAction::AddConstraint(AddConstraint { syntax })
29298 }
29299 SyntaxKind::DROP_CONSTRAINT => {
29300 AlterDomainAction::DropConstraint(DropConstraint { syntax })
29301 }
29302 SyntaxKind::DROP_DEFAULT => AlterDomainAction::DropDefault(DropDefault { syntax }),
29303 SyntaxKind::DROP_NOT_NULL => AlterDomainAction::DropNotNull(DropNotNull { syntax }),
29304 SyntaxKind::OWNER_TO => AlterDomainAction::OwnerTo(OwnerTo { syntax }),
29305 SyntaxKind::RENAME_CONSTRAINT => {
29306 AlterDomainAction::RenameConstraint(RenameConstraint { syntax })
29307 }
29308 SyntaxKind::RENAME_TO => AlterDomainAction::RenameTo(RenameTo { syntax }),
29309 SyntaxKind::SET_DEFAULT => AlterDomainAction::SetDefault(SetDefault { syntax }),
29310 SyntaxKind::SET_NOT_NULL => AlterDomainAction::SetNotNull(SetNotNull { syntax }),
29311 SyntaxKind::SET_SCHEMA => AlterDomainAction::SetSchema(SetSchema { syntax }),
29312 SyntaxKind::VALIDATE_CONSTRAINT => {
29313 AlterDomainAction::ValidateConstraint(ValidateConstraint { syntax })
29314 }
29315 _ => {
29316 return None;
29317 }
29318 };
29319 Some(res)
29320 }
29321 #[inline]
29322 fn syntax(&self) -> &SyntaxNode {
29323 match self {
29324 AlterDomainAction::AddConstraint(it) => &it.syntax,
29325 AlterDomainAction::DropConstraint(it) => &it.syntax,
29326 AlterDomainAction::DropDefault(it) => &it.syntax,
29327 AlterDomainAction::DropNotNull(it) => &it.syntax,
29328 AlterDomainAction::OwnerTo(it) => &it.syntax,
29329 AlterDomainAction::RenameConstraint(it) => &it.syntax,
29330 AlterDomainAction::RenameTo(it) => &it.syntax,
29331 AlterDomainAction::SetDefault(it) => &it.syntax,
29332 AlterDomainAction::SetNotNull(it) => &it.syntax,
29333 AlterDomainAction::SetSchema(it) => &it.syntax,
29334 AlterDomainAction::ValidateConstraint(it) => &it.syntax,
29335 }
29336 }
29337}
29338impl From<AddConstraint> for AlterDomainAction {
29339 #[inline]
29340 fn from(node: AddConstraint) -> AlterDomainAction {
29341 AlterDomainAction::AddConstraint(node)
29342 }
29343}
29344impl From<DropConstraint> for AlterDomainAction {
29345 #[inline]
29346 fn from(node: DropConstraint) -> AlterDomainAction {
29347 AlterDomainAction::DropConstraint(node)
29348 }
29349}
29350impl From<DropDefault> for AlterDomainAction {
29351 #[inline]
29352 fn from(node: DropDefault) -> AlterDomainAction {
29353 AlterDomainAction::DropDefault(node)
29354 }
29355}
29356impl From<DropNotNull> for AlterDomainAction {
29357 #[inline]
29358 fn from(node: DropNotNull) -> AlterDomainAction {
29359 AlterDomainAction::DropNotNull(node)
29360 }
29361}
29362impl From<OwnerTo> for AlterDomainAction {
29363 #[inline]
29364 fn from(node: OwnerTo) -> AlterDomainAction {
29365 AlterDomainAction::OwnerTo(node)
29366 }
29367}
29368impl From<RenameConstraint> for AlterDomainAction {
29369 #[inline]
29370 fn from(node: RenameConstraint) -> AlterDomainAction {
29371 AlterDomainAction::RenameConstraint(node)
29372 }
29373}
29374impl From<RenameTo> for AlterDomainAction {
29375 #[inline]
29376 fn from(node: RenameTo) -> AlterDomainAction {
29377 AlterDomainAction::RenameTo(node)
29378 }
29379}
29380impl From<SetDefault> for AlterDomainAction {
29381 #[inline]
29382 fn from(node: SetDefault) -> AlterDomainAction {
29383 AlterDomainAction::SetDefault(node)
29384 }
29385}
29386impl From<SetNotNull> for AlterDomainAction {
29387 #[inline]
29388 fn from(node: SetNotNull) -> AlterDomainAction {
29389 AlterDomainAction::SetNotNull(node)
29390 }
29391}
29392impl From<SetSchema> for AlterDomainAction {
29393 #[inline]
29394 fn from(node: SetSchema) -> AlterDomainAction {
29395 AlterDomainAction::SetSchema(node)
29396 }
29397}
29398impl From<ValidateConstraint> for AlterDomainAction {
29399 #[inline]
29400 fn from(node: ValidateConstraint) -> AlterDomainAction {
29401 AlterDomainAction::ValidateConstraint(node)
29402 }
29403}
29404impl AstNode for AlterIndexAction {
29405 #[inline]
29406 fn can_cast(kind: SyntaxKind) -> bool {
29407 matches!(
29408 kind,
29409 SyntaxKind::ALTER_SET_STATISTICS
29410 | SyntaxKind::ATTACH_PARTITION
29411 | SyntaxKind::DEPENDS_ON_EXTENSION
29412 | SyntaxKind::NO_DEPENDS_ON_EXTENSION
29413 | SyntaxKind::RENAME_TO
29414 | SyntaxKind::RESET_OPTIONS
29415 | SyntaxKind::SET_OPTIONS
29416 | SyntaxKind::SET_TABLESPACE
29417 )
29418 }
29419 #[inline]
29420 fn cast(syntax: SyntaxNode) -> Option<Self> {
29421 let res = match syntax.kind() {
29422 SyntaxKind::ALTER_SET_STATISTICS => {
29423 AlterIndexAction::AlterSetStatistics(AlterSetStatistics { syntax })
29424 }
29425 SyntaxKind::ATTACH_PARTITION => {
29426 AlterIndexAction::AttachPartition(AttachPartition { syntax })
29427 }
29428 SyntaxKind::DEPENDS_ON_EXTENSION => {
29429 AlterIndexAction::DependsOnExtension(DependsOnExtension { syntax })
29430 }
29431 SyntaxKind::NO_DEPENDS_ON_EXTENSION => {
29432 AlterIndexAction::NoDependsOnExtension(NoDependsOnExtension { syntax })
29433 }
29434 SyntaxKind::RENAME_TO => AlterIndexAction::RenameTo(RenameTo { syntax }),
29435 SyntaxKind::RESET_OPTIONS => AlterIndexAction::ResetOptions(ResetOptions { syntax }),
29436 SyntaxKind::SET_OPTIONS => AlterIndexAction::SetOptions(SetOptions { syntax }),
29437 SyntaxKind::SET_TABLESPACE => AlterIndexAction::SetTablespace(SetTablespace { syntax }),
29438 _ => {
29439 return None;
29440 }
29441 };
29442 Some(res)
29443 }
29444 #[inline]
29445 fn syntax(&self) -> &SyntaxNode {
29446 match self {
29447 AlterIndexAction::AlterSetStatistics(it) => &it.syntax,
29448 AlterIndexAction::AttachPartition(it) => &it.syntax,
29449 AlterIndexAction::DependsOnExtension(it) => &it.syntax,
29450 AlterIndexAction::NoDependsOnExtension(it) => &it.syntax,
29451 AlterIndexAction::RenameTo(it) => &it.syntax,
29452 AlterIndexAction::ResetOptions(it) => &it.syntax,
29453 AlterIndexAction::SetOptions(it) => &it.syntax,
29454 AlterIndexAction::SetTablespace(it) => &it.syntax,
29455 }
29456 }
29457}
29458impl From<AlterSetStatistics> for AlterIndexAction {
29459 #[inline]
29460 fn from(node: AlterSetStatistics) -> AlterIndexAction {
29461 AlterIndexAction::AlterSetStatistics(node)
29462 }
29463}
29464impl From<AttachPartition> for AlterIndexAction {
29465 #[inline]
29466 fn from(node: AttachPartition) -> AlterIndexAction {
29467 AlterIndexAction::AttachPartition(node)
29468 }
29469}
29470impl From<DependsOnExtension> for AlterIndexAction {
29471 #[inline]
29472 fn from(node: DependsOnExtension) -> AlterIndexAction {
29473 AlterIndexAction::DependsOnExtension(node)
29474 }
29475}
29476impl From<NoDependsOnExtension> for AlterIndexAction {
29477 #[inline]
29478 fn from(node: NoDependsOnExtension) -> AlterIndexAction {
29479 AlterIndexAction::NoDependsOnExtension(node)
29480 }
29481}
29482impl From<RenameTo> for AlterIndexAction {
29483 #[inline]
29484 fn from(node: RenameTo) -> AlterIndexAction {
29485 AlterIndexAction::RenameTo(node)
29486 }
29487}
29488impl From<ResetOptions> for AlterIndexAction {
29489 #[inline]
29490 fn from(node: ResetOptions) -> AlterIndexAction {
29491 AlterIndexAction::ResetOptions(node)
29492 }
29493}
29494impl From<SetOptions> for AlterIndexAction {
29495 #[inline]
29496 fn from(node: SetOptions) -> AlterIndexAction {
29497 AlterIndexAction::SetOptions(node)
29498 }
29499}
29500impl From<SetTablespace> for AlterIndexAction {
29501 #[inline]
29502 fn from(node: SetTablespace) -> AlterIndexAction {
29503 AlterIndexAction::SetTablespace(node)
29504 }
29505}
29506impl AstNode for AlterMaterializedViewAction {
29507 #[inline]
29508 fn can_cast(kind: SyntaxKind) -> bool {
29509 matches!(
29510 kind,
29511 SyntaxKind::DEPENDS_ON_EXTENSION
29512 | SyntaxKind::NO_DEPENDS_ON_EXTENSION
29513 | SyntaxKind::RENAME_COLUMN
29514 | SyntaxKind::RENAME_TO
29515 | SyntaxKind::SET_SCHEMA
29516 )
29517 }
29518 #[inline]
29519 fn cast(syntax: SyntaxNode) -> Option<Self> {
29520 let res = match syntax.kind() {
29521 SyntaxKind::DEPENDS_ON_EXTENSION => {
29522 AlterMaterializedViewAction::DependsOnExtension(DependsOnExtension { syntax })
29523 }
29524 SyntaxKind::NO_DEPENDS_ON_EXTENSION => {
29525 AlterMaterializedViewAction::NoDependsOnExtension(NoDependsOnExtension { syntax })
29526 }
29527 SyntaxKind::RENAME_COLUMN => {
29528 AlterMaterializedViewAction::RenameColumn(RenameColumn { syntax })
29529 }
29530 SyntaxKind::RENAME_TO => AlterMaterializedViewAction::RenameTo(RenameTo { syntax }),
29531 SyntaxKind::SET_SCHEMA => AlterMaterializedViewAction::SetSchema(SetSchema { syntax }),
29532 _ => {
29533 if let Some(result) = AlterTableAction::cast(syntax) {
29534 return Some(AlterMaterializedViewAction::AlterTableAction(result));
29535 }
29536 return None;
29537 }
29538 };
29539 Some(res)
29540 }
29541 #[inline]
29542 fn syntax(&self) -> &SyntaxNode {
29543 match self {
29544 AlterMaterializedViewAction::DependsOnExtension(it) => &it.syntax,
29545 AlterMaterializedViewAction::NoDependsOnExtension(it) => &it.syntax,
29546 AlterMaterializedViewAction::RenameColumn(it) => &it.syntax,
29547 AlterMaterializedViewAction::RenameTo(it) => &it.syntax,
29548 AlterMaterializedViewAction::SetSchema(it) => &it.syntax,
29549 AlterMaterializedViewAction::AlterTableAction(it) => it.syntax(),
29550 }
29551 }
29552}
29553impl From<DependsOnExtension> for AlterMaterializedViewAction {
29554 #[inline]
29555 fn from(node: DependsOnExtension) -> AlterMaterializedViewAction {
29556 AlterMaterializedViewAction::DependsOnExtension(node)
29557 }
29558}
29559impl From<NoDependsOnExtension> for AlterMaterializedViewAction {
29560 #[inline]
29561 fn from(node: NoDependsOnExtension) -> AlterMaterializedViewAction {
29562 AlterMaterializedViewAction::NoDependsOnExtension(node)
29563 }
29564}
29565impl From<RenameColumn> for AlterMaterializedViewAction {
29566 #[inline]
29567 fn from(node: RenameColumn) -> AlterMaterializedViewAction {
29568 AlterMaterializedViewAction::RenameColumn(node)
29569 }
29570}
29571impl From<RenameTo> for AlterMaterializedViewAction {
29572 #[inline]
29573 fn from(node: RenameTo) -> AlterMaterializedViewAction {
29574 AlterMaterializedViewAction::RenameTo(node)
29575 }
29576}
29577impl From<SetSchema> for AlterMaterializedViewAction {
29578 #[inline]
29579 fn from(node: SetSchema) -> AlterMaterializedViewAction {
29580 AlterMaterializedViewAction::SetSchema(node)
29581 }
29582}
29583impl AstNode for AlterTableAction {
29584 #[inline]
29585 fn can_cast(kind: SyntaxKind) -> bool {
29586 matches!(
29587 kind,
29588 SyntaxKind::ADD_COLUMN
29589 | SyntaxKind::ADD_CONSTRAINT
29590 | SyntaxKind::ALTER_COLUMN
29591 | SyntaxKind::ALTER_CONSTRAINT
29592 | SyntaxKind::ATTACH_PARTITION
29593 | SyntaxKind::CLUSTER_ON
29594 | SyntaxKind::DETACH_PARTITION
29595 | SyntaxKind::DISABLE_RLS
29596 | SyntaxKind::DISABLE_RULE
29597 | SyntaxKind::DISABLE_TRIGGER
29598 | SyntaxKind::DROP_COLUMN
29599 | SyntaxKind::DROP_CONSTRAINT
29600 | SyntaxKind::ENABLE_ALWAYS_RULE
29601 | SyntaxKind::ENABLE_ALWAYS_TRIGGER
29602 | SyntaxKind::ENABLE_REPLICA_RULE
29603 | SyntaxKind::ENABLE_REPLICA_TRIGGER
29604 | SyntaxKind::ENABLE_RLS
29605 | SyntaxKind::ENABLE_RULE
29606 | SyntaxKind::ENABLE_TRIGGER
29607 | SyntaxKind::FORCE_RLS
29608 | SyntaxKind::INHERIT_TABLE
29609 | SyntaxKind::MERGE_PARTITIONS
29610 | SyntaxKind::NO_FORCE_RLS
29611 | SyntaxKind::NO_INHERIT_TABLE
29612 | SyntaxKind::NOT_OF
29613 | SyntaxKind::OF_TYPE
29614 | SyntaxKind::OPTION_ITEM_LIST
29615 | SyntaxKind::OWNER_TO
29616 | SyntaxKind::RENAME_COLUMN
29617 | SyntaxKind::RENAME_CONSTRAINT
29618 | SyntaxKind::RENAME_TO
29619 | SyntaxKind::REPLICA_IDENTITY
29620 | SyntaxKind::RESET_OPTIONS
29621 | SyntaxKind::SET_ACCESS_METHOD
29622 | SyntaxKind::SET_LOGGED
29623 | SyntaxKind::SET_OPTIONS
29624 | SyntaxKind::SET_SCHEMA
29625 | SyntaxKind::SET_TABLESPACE
29626 | SyntaxKind::SET_UNLOGGED
29627 | SyntaxKind::SET_WITHOUT_CLUSTER
29628 | SyntaxKind::SET_WITHOUT_OIDS
29629 | SyntaxKind::SPLIT_PARTITION
29630 | SyntaxKind::VALIDATE_CONSTRAINT
29631 )
29632 }
29633 #[inline]
29634 fn cast(syntax: SyntaxNode) -> Option<Self> {
29635 let res = match syntax.kind() {
29636 SyntaxKind::ADD_COLUMN => AlterTableAction::AddColumn(AddColumn { syntax }),
29637 SyntaxKind::ADD_CONSTRAINT => AlterTableAction::AddConstraint(AddConstraint { syntax }),
29638 SyntaxKind::ALTER_COLUMN => AlterTableAction::AlterColumn(AlterColumn { syntax }),
29639 SyntaxKind::ALTER_CONSTRAINT => {
29640 AlterTableAction::AlterConstraint(AlterConstraint { syntax })
29641 }
29642 SyntaxKind::ATTACH_PARTITION => {
29643 AlterTableAction::AttachPartition(AttachPartition { syntax })
29644 }
29645 SyntaxKind::CLUSTER_ON => AlterTableAction::ClusterOn(ClusterOn { syntax }),
29646 SyntaxKind::DETACH_PARTITION => {
29647 AlterTableAction::DetachPartition(DetachPartition { syntax })
29648 }
29649 SyntaxKind::DISABLE_RLS => AlterTableAction::DisableRls(DisableRls { syntax }),
29650 SyntaxKind::DISABLE_RULE => AlterTableAction::DisableRule(DisableRule { syntax }),
29651 SyntaxKind::DISABLE_TRIGGER => {
29652 AlterTableAction::DisableTrigger(DisableTrigger { syntax })
29653 }
29654 SyntaxKind::DROP_COLUMN => AlterTableAction::DropColumn(DropColumn { syntax }),
29655 SyntaxKind::DROP_CONSTRAINT => {
29656 AlterTableAction::DropConstraint(DropConstraint { syntax })
29657 }
29658 SyntaxKind::ENABLE_ALWAYS_RULE => {
29659 AlterTableAction::EnableAlwaysRule(EnableAlwaysRule { syntax })
29660 }
29661 SyntaxKind::ENABLE_ALWAYS_TRIGGER => {
29662 AlterTableAction::EnableAlwaysTrigger(EnableAlwaysTrigger { syntax })
29663 }
29664 SyntaxKind::ENABLE_REPLICA_RULE => {
29665 AlterTableAction::EnableReplicaRule(EnableReplicaRule { syntax })
29666 }
29667 SyntaxKind::ENABLE_REPLICA_TRIGGER => {
29668 AlterTableAction::EnableReplicaTrigger(EnableReplicaTrigger { syntax })
29669 }
29670 SyntaxKind::ENABLE_RLS => AlterTableAction::EnableRls(EnableRls { syntax }),
29671 SyntaxKind::ENABLE_RULE => AlterTableAction::EnableRule(EnableRule { syntax }),
29672 SyntaxKind::ENABLE_TRIGGER => AlterTableAction::EnableTrigger(EnableTrigger { syntax }),
29673 SyntaxKind::FORCE_RLS => AlterTableAction::ForceRls(ForceRls { syntax }),
29674 SyntaxKind::INHERIT_TABLE => AlterTableAction::InheritTable(InheritTable { syntax }),
29675 SyntaxKind::MERGE_PARTITIONS => {
29676 AlterTableAction::MergePartitions(MergePartitions { syntax })
29677 }
29678 SyntaxKind::NO_FORCE_RLS => AlterTableAction::NoForceRls(NoForceRls { syntax }),
29679 SyntaxKind::NO_INHERIT_TABLE => {
29680 AlterTableAction::NoInheritTable(NoInheritTable { syntax })
29681 }
29682 SyntaxKind::NOT_OF => AlterTableAction::NotOf(NotOf { syntax }),
29683 SyntaxKind::OF_TYPE => AlterTableAction::OfType(OfType { syntax }),
29684 SyntaxKind::OPTION_ITEM_LIST => {
29685 AlterTableAction::OptionItemList(OptionItemList { syntax })
29686 }
29687 SyntaxKind::OWNER_TO => AlterTableAction::OwnerTo(OwnerTo { syntax }),
29688 SyntaxKind::RENAME_COLUMN => AlterTableAction::RenameColumn(RenameColumn { syntax }),
29689 SyntaxKind::RENAME_CONSTRAINT => {
29690 AlterTableAction::RenameConstraint(RenameConstraint { syntax })
29691 }
29692 SyntaxKind::RENAME_TO => AlterTableAction::RenameTo(RenameTo { syntax }),
29693 SyntaxKind::REPLICA_IDENTITY => {
29694 AlterTableAction::ReplicaIdentity(ReplicaIdentity { syntax })
29695 }
29696 SyntaxKind::RESET_OPTIONS => AlterTableAction::ResetOptions(ResetOptions { syntax }),
29697 SyntaxKind::SET_ACCESS_METHOD => {
29698 AlterTableAction::SetAccessMethod(SetAccessMethod { syntax })
29699 }
29700 SyntaxKind::SET_LOGGED => AlterTableAction::SetLogged(SetLogged { syntax }),
29701 SyntaxKind::SET_OPTIONS => AlterTableAction::SetOptions(SetOptions { syntax }),
29702 SyntaxKind::SET_SCHEMA => AlterTableAction::SetSchema(SetSchema { syntax }),
29703 SyntaxKind::SET_TABLESPACE => AlterTableAction::SetTablespace(SetTablespace { syntax }),
29704 SyntaxKind::SET_UNLOGGED => AlterTableAction::SetUnlogged(SetUnlogged { syntax }),
29705 SyntaxKind::SET_WITHOUT_CLUSTER => {
29706 AlterTableAction::SetWithoutCluster(SetWithoutCluster { syntax })
29707 }
29708 SyntaxKind::SET_WITHOUT_OIDS => {
29709 AlterTableAction::SetWithoutOids(SetWithoutOids { syntax })
29710 }
29711 SyntaxKind::SPLIT_PARTITION => {
29712 AlterTableAction::SplitPartition(SplitPartition { syntax })
29713 }
29714 SyntaxKind::VALIDATE_CONSTRAINT => {
29715 AlterTableAction::ValidateConstraint(ValidateConstraint { syntax })
29716 }
29717 _ => {
29718 return None;
29719 }
29720 };
29721 Some(res)
29722 }
29723 #[inline]
29724 fn syntax(&self) -> &SyntaxNode {
29725 match self {
29726 AlterTableAction::AddColumn(it) => &it.syntax,
29727 AlterTableAction::AddConstraint(it) => &it.syntax,
29728 AlterTableAction::AlterColumn(it) => &it.syntax,
29729 AlterTableAction::AlterConstraint(it) => &it.syntax,
29730 AlterTableAction::AttachPartition(it) => &it.syntax,
29731 AlterTableAction::ClusterOn(it) => &it.syntax,
29732 AlterTableAction::DetachPartition(it) => &it.syntax,
29733 AlterTableAction::DisableRls(it) => &it.syntax,
29734 AlterTableAction::DisableRule(it) => &it.syntax,
29735 AlterTableAction::DisableTrigger(it) => &it.syntax,
29736 AlterTableAction::DropColumn(it) => &it.syntax,
29737 AlterTableAction::DropConstraint(it) => &it.syntax,
29738 AlterTableAction::EnableAlwaysRule(it) => &it.syntax,
29739 AlterTableAction::EnableAlwaysTrigger(it) => &it.syntax,
29740 AlterTableAction::EnableReplicaRule(it) => &it.syntax,
29741 AlterTableAction::EnableReplicaTrigger(it) => &it.syntax,
29742 AlterTableAction::EnableRls(it) => &it.syntax,
29743 AlterTableAction::EnableRule(it) => &it.syntax,
29744 AlterTableAction::EnableTrigger(it) => &it.syntax,
29745 AlterTableAction::ForceRls(it) => &it.syntax,
29746 AlterTableAction::InheritTable(it) => &it.syntax,
29747 AlterTableAction::MergePartitions(it) => &it.syntax,
29748 AlterTableAction::NoForceRls(it) => &it.syntax,
29749 AlterTableAction::NoInheritTable(it) => &it.syntax,
29750 AlterTableAction::NotOf(it) => &it.syntax,
29751 AlterTableAction::OfType(it) => &it.syntax,
29752 AlterTableAction::OptionItemList(it) => &it.syntax,
29753 AlterTableAction::OwnerTo(it) => &it.syntax,
29754 AlterTableAction::RenameColumn(it) => &it.syntax,
29755 AlterTableAction::RenameConstraint(it) => &it.syntax,
29756 AlterTableAction::RenameTo(it) => &it.syntax,
29757 AlterTableAction::ReplicaIdentity(it) => &it.syntax,
29758 AlterTableAction::ResetOptions(it) => &it.syntax,
29759 AlterTableAction::SetAccessMethod(it) => &it.syntax,
29760 AlterTableAction::SetLogged(it) => &it.syntax,
29761 AlterTableAction::SetOptions(it) => &it.syntax,
29762 AlterTableAction::SetSchema(it) => &it.syntax,
29763 AlterTableAction::SetTablespace(it) => &it.syntax,
29764 AlterTableAction::SetUnlogged(it) => &it.syntax,
29765 AlterTableAction::SetWithoutCluster(it) => &it.syntax,
29766 AlterTableAction::SetWithoutOids(it) => &it.syntax,
29767 AlterTableAction::SplitPartition(it) => &it.syntax,
29768 AlterTableAction::ValidateConstraint(it) => &it.syntax,
29769 }
29770 }
29771}
29772impl From<AddColumn> for AlterTableAction {
29773 #[inline]
29774 fn from(node: AddColumn) -> AlterTableAction {
29775 AlterTableAction::AddColumn(node)
29776 }
29777}
29778impl From<AddConstraint> for AlterTableAction {
29779 #[inline]
29780 fn from(node: AddConstraint) -> AlterTableAction {
29781 AlterTableAction::AddConstraint(node)
29782 }
29783}
29784impl From<AlterColumn> for AlterTableAction {
29785 #[inline]
29786 fn from(node: AlterColumn) -> AlterTableAction {
29787 AlterTableAction::AlterColumn(node)
29788 }
29789}
29790impl From<AlterConstraint> for AlterTableAction {
29791 #[inline]
29792 fn from(node: AlterConstraint) -> AlterTableAction {
29793 AlterTableAction::AlterConstraint(node)
29794 }
29795}
29796impl From<AttachPartition> for AlterTableAction {
29797 #[inline]
29798 fn from(node: AttachPartition) -> AlterTableAction {
29799 AlterTableAction::AttachPartition(node)
29800 }
29801}
29802impl From<ClusterOn> for AlterTableAction {
29803 #[inline]
29804 fn from(node: ClusterOn) -> AlterTableAction {
29805 AlterTableAction::ClusterOn(node)
29806 }
29807}
29808impl From<DetachPartition> for AlterTableAction {
29809 #[inline]
29810 fn from(node: DetachPartition) -> AlterTableAction {
29811 AlterTableAction::DetachPartition(node)
29812 }
29813}
29814impl From<DisableRls> for AlterTableAction {
29815 #[inline]
29816 fn from(node: DisableRls) -> AlterTableAction {
29817 AlterTableAction::DisableRls(node)
29818 }
29819}
29820impl From<DisableRule> for AlterTableAction {
29821 #[inline]
29822 fn from(node: DisableRule) -> AlterTableAction {
29823 AlterTableAction::DisableRule(node)
29824 }
29825}
29826impl From<DisableTrigger> for AlterTableAction {
29827 #[inline]
29828 fn from(node: DisableTrigger) -> AlterTableAction {
29829 AlterTableAction::DisableTrigger(node)
29830 }
29831}
29832impl From<DropColumn> for AlterTableAction {
29833 #[inline]
29834 fn from(node: DropColumn) -> AlterTableAction {
29835 AlterTableAction::DropColumn(node)
29836 }
29837}
29838impl From<DropConstraint> for AlterTableAction {
29839 #[inline]
29840 fn from(node: DropConstraint) -> AlterTableAction {
29841 AlterTableAction::DropConstraint(node)
29842 }
29843}
29844impl From<EnableAlwaysRule> for AlterTableAction {
29845 #[inline]
29846 fn from(node: EnableAlwaysRule) -> AlterTableAction {
29847 AlterTableAction::EnableAlwaysRule(node)
29848 }
29849}
29850impl From<EnableAlwaysTrigger> for AlterTableAction {
29851 #[inline]
29852 fn from(node: EnableAlwaysTrigger) -> AlterTableAction {
29853 AlterTableAction::EnableAlwaysTrigger(node)
29854 }
29855}
29856impl From<EnableReplicaRule> for AlterTableAction {
29857 #[inline]
29858 fn from(node: EnableReplicaRule) -> AlterTableAction {
29859 AlterTableAction::EnableReplicaRule(node)
29860 }
29861}
29862impl From<EnableReplicaTrigger> for AlterTableAction {
29863 #[inline]
29864 fn from(node: EnableReplicaTrigger) -> AlterTableAction {
29865 AlterTableAction::EnableReplicaTrigger(node)
29866 }
29867}
29868impl From<EnableRls> for AlterTableAction {
29869 #[inline]
29870 fn from(node: EnableRls) -> AlterTableAction {
29871 AlterTableAction::EnableRls(node)
29872 }
29873}
29874impl From<EnableRule> for AlterTableAction {
29875 #[inline]
29876 fn from(node: EnableRule) -> AlterTableAction {
29877 AlterTableAction::EnableRule(node)
29878 }
29879}
29880impl From<EnableTrigger> for AlterTableAction {
29881 #[inline]
29882 fn from(node: EnableTrigger) -> AlterTableAction {
29883 AlterTableAction::EnableTrigger(node)
29884 }
29885}
29886impl From<ForceRls> for AlterTableAction {
29887 #[inline]
29888 fn from(node: ForceRls) -> AlterTableAction {
29889 AlterTableAction::ForceRls(node)
29890 }
29891}
29892impl From<InheritTable> for AlterTableAction {
29893 #[inline]
29894 fn from(node: InheritTable) -> AlterTableAction {
29895 AlterTableAction::InheritTable(node)
29896 }
29897}
29898impl From<MergePartitions> for AlterTableAction {
29899 #[inline]
29900 fn from(node: MergePartitions) -> AlterTableAction {
29901 AlterTableAction::MergePartitions(node)
29902 }
29903}
29904impl From<NoForceRls> for AlterTableAction {
29905 #[inline]
29906 fn from(node: NoForceRls) -> AlterTableAction {
29907 AlterTableAction::NoForceRls(node)
29908 }
29909}
29910impl From<NoInheritTable> for AlterTableAction {
29911 #[inline]
29912 fn from(node: NoInheritTable) -> AlterTableAction {
29913 AlterTableAction::NoInheritTable(node)
29914 }
29915}
29916impl From<NotOf> for AlterTableAction {
29917 #[inline]
29918 fn from(node: NotOf) -> AlterTableAction {
29919 AlterTableAction::NotOf(node)
29920 }
29921}
29922impl From<OfType> for AlterTableAction {
29923 #[inline]
29924 fn from(node: OfType) -> AlterTableAction {
29925 AlterTableAction::OfType(node)
29926 }
29927}
29928impl From<OptionItemList> for AlterTableAction {
29929 #[inline]
29930 fn from(node: OptionItemList) -> AlterTableAction {
29931 AlterTableAction::OptionItemList(node)
29932 }
29933}
29934impl From<OwnerTo> for AlterTableAction {
29935 #[inline]
29936 fn from(node: OwnerTo) -> AlterTableAction {
29937 AlterTableAction::OwnerTo(node)
29938 }
29939}
29940impl From<RenameColumn> for AlterTableAction {
29941 #[inline]
29942 fn from(node: RenameColumn) -> AlterTableAction {
29943 AlterTableAction::RenameColumn(node)
29944 }
29945}
29946impl From<RenameConstraint> for AlterTableAction {
29947 #[inline]
29948 fn from(node: RenameConstraint) -> AlterTableAction {
29949 AlterTableAction::RenameConstraint(node)
29950 }
29951}
29952impl From<RenameTo> for AlterTableAction {
29953 #[inline]
29954 fn from(node: RenameTo) -> AlterTableAction {
29955 AlterTableAction::RenameTo(node)
29956 }
29957}
29958impl From<ReplicaIdentity> for AlterTableAction {
29959 #[inline]
29960 fn from(node: ReplicaIdentity) -> AlterTableAction {
29961 AlterTableAction::ReplicaIdentity(node)
29962 }
29963}
29964impl From<ResetOptions> for AlterTableAction {
29965 #[inline]
29966 fn from(node: ResetOptions) -> AlterTableAction {
29967 AlterTableAction::ResetOptions(node)
29968 }
29969}
29970impl From<SetAccessMethod> for AlterTableAction {
29971 #[inline]
29972 fn from(node: SetAccessMethod) -> AlterTableAction {
29973 AlterTableAction::SetAccessMethod(node)
29974 }
29975}
29976impl From<SetLogged> for AlterTableAction {
29977 #[inline]
29978 fn from(node: SetLogged) -> AlterTableAction {
29979 AlterTableAction::SetLogged(node)
29980 }
29981}
29982impl From<SetOptions> for AlterTableAction {
29983 #[inline]
29984 fn from(node: SetOptions) -> AlterTableAction {
29985 AlterTableAction::SetOptions(node)
29986 }
29987}
29988impl From<SetSchema> for AlterTableAction {
29989 #[inline]
29990 fn from(node: SetSchema) -> AlterTableAction {
29991 AlterTableAction::SetSchema(node)
29992 }
29993}
29994impl From<SetTablespace> for AlterTableAction {
29995 #[inline]
29996 fn from(node: SetTablespace) -> AlterTableAction {
29997 AlterTableAction::SetTablespace(node)
29998 }
29999}
30000impl From<SetUnlogged> for AlterTableAction {
30001 #[inline]
30002 fn from(node: SetUnlogged) -> AlterTableAction {
30003 AlterTableAction::SetUnlogged(node)
30004 }
30005}
30006impl From<SetWithoutCluster> for AlterTableAction {
30007 #[inline]
30008 fn from(node: SetWithoutCluster) -> AlterTableAction {
30009 AlterTableAction::SetWithoutCluster(node)
30010 }
30011}
30012impl From<SetWithoutOids> for AlterTableAction {
30013 #[inline]
30014 fn from(node: SetWithoutOids) -> AlterTableAction {
30015 AlterTableAction::SetWithoutOids(node)
30016 }
30017}
30018impl From<SplitPartition> for AlterTableAction {
30019 #[inline]
30020 fn from(node: SplitPartition) -> AlterTableAction {
30021 AlterTableAction::SplitPartition(node)
30022 }
30023}
30024impl From<ValidateConstraint> for AlterTableAction {
30025 #[inline]
30026 fn from(node: ValidateConstraint) -> AlterTableAction {
30027 AlterTableAction::ValidateConstraint(node)
30028 }
30029}
30030impl AstNode for ColumnConstraint {
30031 #[inline]
30032 fn can_cast(kind: SyntaxKind) -> bool {
30033 matches!(
30034 kind,
30035 SyntaxKind::CHECK_CONSTRAINT
30036 | SyntaxKind::DEFAULT_CONSTRAINT
30037 | SyntaxKind::EXCLUDE_CONSTRAINT
30038 | SyntaxKind::NOT_NULL_CONSTRAINT
30039 | SyntaxKind::PRIMARY_KEY_CONSTRAINT
30040 | SyntaxKind::REFERENCES_CONSTRAINT
30041 | SyntaxKind::UNIQUE_CONSTRAINT
30042 )
30043 }
30044 #[inline]
30045 fn cast(syntax: SyntaxNode) -> Option<Self> {
30046 let res = match syntax.kind() {
30047 SyntaxKind::CHECK_CONSTRAINT => {
30048 ColumnConstraint::CheckConstraint(CheckConstraint { syntax })
30049 }
30050 SyntaxKind::DEFAULT_CONSTRAINT => {
30051 ColumnConstraint::DefaultConstraint(DefaultConstraint { syntax })
30052 }
30053 SyntaxKind::EXCLUDE_CONSTRAINT => {
30054 ColumnConstraint::ExcludeConstraint(ExcludeConstraint { syntax })
30055 }
30056 SyntaxKind::NOT_NULL_CONSTRAINT => {
30057 ColumnConstraint::NotNullConstraint(NotNullConstraint { syntax })
30058 }
30059 SyntaxKind::PRIMARY_KEY_CONSTRAINT => {
30060 ColumnConstraint::PrimaryKeyConstraint(PrimaryKeyConstraint { syntax })
30061 }
30062 SyntaxKind::REFERENCES_CONSTRAINT => {
30063 ColumnConstraint::ReferencesConstraint(ReferencesConstraint { syntax })
30064 }
30065 SyntaxKind::UNIQUE_CONSTRAINT => {
30066 ColumnConstraint::UniqueConstraint(UniqueConstraint { syntax })
30067 }
30068 _ => {
30069 return None;
30070 }
30071 };
30072 Some(res)
30073 }
30074 #[inline]
30075 fn syntax(&self) -> &SyntaxNode {
30076 match self {
30077 ColumnConstraint::CheckConstraint(it) => &it.syntax,
30078 ColumnConstraint::DefaultConstraint(it) => &it.syntax,
30079 ColumnConstraint::ExcludeConstraint(it) => &it.syntax,
30080 ColumnConstraint::NotNullConstraint(it) => &it.syntax,
30081 ColumnConstraint::PrimaryKeyConstraint(it) => &it.syntax,
30082 ColumnConstraint::ReferencesConstraint(it) => &it.syntax,
30083 ColumnConstraint::UniqueConstraint(it) => &it.syntax,
30084 }
30085 }
30086}
30087impl From<CheckConstraint> for ColumnConstraint {
30088 #[inline]
30089 fn from(node: CheckConstraint) -> ColumnConstraint {
30090 ColumnConstraint::CheckConstraint(node)
30091 }
30092}
30093impl From<DefaultConstraint> for ColumnConstraint {
30094 #[inline]
30095 fn from(node: DefaultConstraint) -> ColumnConstraint {
30096 ColumnConstraint::DefaultConstraint(node)
30097 }
30098}
30099impl From<ExcludeConstraint> for ColumnConstraint {
30100 #[inline]
30101 fn from(node: ExcludeConstraint) -> ColumnConstraint {
30102 ColumnConstraint::ExcludeConstraint(node)
30103 }
30104}
30105impl From<NotNullConstraint> for ColumnConstraint {
30106 #[inline]
30107 fn from(node: NotNullConstraint) -> ColumnConstraint {
30108 ColumnConstraint::NotNullConstraint(node)
30109 }
30110}
30111impl From<PrimaryKeyConstraint> for ColumnConstraint {
30112 #[inline]
30113 fn from(node: PrimaryKeyConstraint) -> ColumnConstraint {
30114 ColumnConstraint::PrimaryKeyConstraint(node)
30115 }
30116}
30117impl From<ReferencesConstraint> for ColumnConstraint {
30118 #[inline]
30119 fn from(node: ReferencesConstraint) -> ColumnConstraint {
30120 ColumnConstraint::ReferencesConstraint(node)
30121 }
30122}
30123impl From<UniqueConstraint> for ColumnConstraint {
30124 #[inline]
30125 fn from(node: UniqueConstraint) -> ColumnConstraint {
30126 ColumnConstraint::UniqueConstraint(node)
30127 }
30128}
30129impl AstNode for ConfigValue {
30130 #[inline]
30131 fn can_cast(kind: SyntaxKind) -> bool {
30132 matches!(kind, SyntaxKind::LITERAL | SyntaxKind::NAME_REF)
30133 }
30134 #[inline]
30135 fn cast(syntax: SyntaxNode) -> Option<Self> {
30136 let res = match syntax.kind() {
30137 SyntaxKind::LITERAL => ConfigValue::Literal(Literal { syntax }),
30138 SyntaxKind::NAME_REF => ConfigValue::NameRef(NameRef { syntax }),
30139 _ => {
30140 return None;
30141 }
30142 };
30143 Some(res)
30144 }
30145 #[inline]
30146 fn syntax(&self) -> &SyntaxNode {
30147 match self {
30148 ConfigValue::Literal(it) => &it.syntax,
30149 ConfigValue::NameRef(it) => &it.syntax,
30150 }
30151 }
30152}
30153impl From<Literal> for ConfigValue {
30154 #[inline]
30155 fn from(node: Literal) -> ConfigValue {
30156 ConfigValue::Literal(node)
30157 }
30158}
30159impl From<NameRef> for ConfigValue {
30160 #[inline]
30161 fn from(node: NameRef) -> ConfigValue {
30162 ConfigValue::NameRef(node)
30163 }
30164}
30165impl AstNode for ConflictAction {
30166 #[inline]
30167 fn can_cast(kind: SyntaxKind) -> bool {
30168 matches!(
30169 kind,
30170 SyntaxKind::CONFLICT_DO_NOTHING
30171 | SyntaxKind::CONFLICT_DO_SELECT
30172 | SyntaxKind::CONFLICT_DO_UPDATE_SET
30173 )
30174 }
30175 #[inline]
30176 fn cast(syntax: SyntaxNode) -> Option<Self> {
30177 let res = match syntax.kind() {
30178 SyntaxKind::CONFLICT_DO_NOTHING => {
30179 ConflictAction::ConflictDoNothing(ConflictDoNothing { syntax })
30180 }
30181 SyntaxKind::CONFLICT_DO_SELECT => {
30182 ConflictAction::ConflictDoSelect(ConflictDoSelect { syntax })
30183 }
30184 SyntaxKind::CONFLICT_DO_UPDATE_SET => {
30185 ConflictAction::ConflictDoUpdateSet(ConflictDoUpdateSet { syntax })
30186 }
30187 _ => {
30188 return None;
30189 }
30190 };
30191 Some(res)
30192 }
30193 #[inline]
30194 fn syntax(&self) -> &SyntaxNode {
30195 match self {
30196 ConflictAction::ConflictDoNothing(it) => &it.syntax,
30197 ConflictAction::ConflictDoSelect(it) => &it.syntax,
30198 ConflictAction::ConflictDoUpdateSet(it) => &it.syntax,
30199 }
30200 }
30201}
30202impl From<ConflictDoNothing> for ConflictAction {
30203 #[inline]
30204 fn from(node: ConflictDoNothing) -> ConflictAction {
30205 ConflictAction::ConflictDoNothing(node)
30206 }
30207}
30208impl From<ConflictDoSelect> for ConflictAction {
30209 #[inline]
30210 fn from(node: ConflictDoSelect) -> ConflictAction {
30211 ConflictAction::ConflictDoSelect(node)
30212 }
30213}
30214impl From<ConflictDoUpdateSet> for ConflictAction {
30215 #[inline]
30216 fn from(node: ConflictDoUpdateSet) -> ConflictAction {
30217 ConflictAction::ConflictDoUpdateSet(node)
30218 }
30219}
30220impl AstNode for ConflictTarget {
30221 #[inline]
30222 fn can_cast(kind: SyntaxKind) -> bool {
30223 matches!(
30224 kind,
30225 SyntaxKind::CONFLICT_ON_CONSTRAINT | SyntaxKind::CONFLICT_ON_INDEX
30226 )
30227 }
30228 #[inline]
30229 fn cast(syntax: SyntaxNode) -> Option<Self> {
30230 let res = match syntax.kind() {
30231 SyntaxKind::CONFLICT_ON_CONSTRAINT => {
30232 ConflictTarget::ConflictOnConstraint(ConflictOnConstraint { syntax })
30233 }
30234 SyntaxKind::CONFLICT_ON_INDEX => {
30235 ConflictTarget::ConflictOnIndex(ConflictOnIndex { syntax })
30236 }
30237 _ => {
30238 return None;
30239 }
30240 };
30241 Some(res)
30242 }
30243 #[inline]
30244 fn syntax(&self) -> &SyntaxNode {
30245 match self {
30246 ConflictTarget::ConflictOnConstraint(it) => &it.syntax,
30247 ConflictTarget::ConflictOnIndex(it) => &it.syntax,
30248 }
30249 }
30250}
30251impl From<ConflictOnConstraint> for ConflictTarget {
30252 #[inline]
30253 fn from(node: ConflictOnConstraint) -> ConflictTarget {
30254 ConflictTarget::ConflictOnConstraint(node)
30255 }
30256}
30257impl From<ConflictOnIndex> for ConflictTarget {
30258 #[inline]
30259 fn from(node: ConflictOnIndex) -> ConflictTarget {
30260 ConflictTarget::ConflictOnIndex(node)
30261 }
30262}
30263impl AstNode for Constraint {
30264 #[inline]
30265 fn can_cast(kind: SyntaxKind) -> bool {
30266 matches!(
30267 kind,
30268 SyntaxKind::CHECK_CONSTRAINT
30269 | SyntaxKind::DEFAULT_CONSTRAINT
30270 | SyntaxKind::FOREIGN_KEY_CONSTRAINT
30271 | SyntaxKind::GENERATED_CONSTRAINT
30272 | SyntaxKind::NOT_NULL_CONSTRAINT
30273 | SyntaxKind::NULL_CONSTRAINT
30274 | SyntaxKind::PRIMARY_KEY_CONSTRAINT
30275 | SyntaxKind::REFERENCES_CONSTRAINT
30276 | SyntaxKind::UNIQUE_CONSTRAINT
30277 )
30278 }
30279 #[inline]
30280 fn cast(syntax: SyntaxNode) -> Option<Self> {
30281 let res = match syntax.kind() {
30282 SyntaxKind::CHECK_CONSTRAINT => Constraint::CheckConstraint(CheckConstraint { syntax }),
30283 SyntaxKind::DEFAULT_CONSTRAINT => {
30284 Constraint::DefaultConstraint(DefaultConstraint { syntax })
30285 }
30286 SyntaxKind::FOREIGN_KEY_CONSTRAINT => {
30287 Constraint::ForeignKeyConstraint(ForeignKeyConstraint { syntax })
30288 }
30289 SyntaxKind::GENERATED_CONSTRAINT => {
30290 Constraint::GeneratedConstraint(GeneratedConstraint { syntax })
30291 }
30292 SyntaxKind::NOT_NULL_CONSTRAINT => {
30293 Constraint::NotNullConstraint(NotNullConstraint { syntax })
30294 }
30295 SyntaxKind::NULL_CONSTRAINT => Constraint::NullConstraint(NullConstraint { syntax }),
30296 SyntaxKind::PRIMARY_KEY_CONSTRAINT => {
30297 Constraint::PrimaryKeyConstraint(PrimaryKeyConstraint { syntax })
30298 }
30299 SyntaxKind::REFERENCES_CONSTRAINT => {
30300 Constraint::ReferencesConstraint(ReferencesConstraint { syntax })
30301 }
30302 SyntaxKind::UNIQUE_CONSTRAINT => {
30303 Constraint::UniqueConstraint(UniqueConstraint { syntax })
30304 }
30305 _ => {
30306 return None;
30307 }
30308 };
30309 Some(res)
30310 }
30311 #[inline]
30312 fn syntax(&self) -> &SyntaxNode {
30313 match self {
30314 Constraint::CheckConstraint(it) => &it.syntax,
30315 Constraint::DefaultConstraint(it) => &it.syntax,
30316 Constraint::ForeignKeyConstraint(it) => &it.syntax,
30317 Constraint::GeneratedConstraint(it) => &it.syntax,
30318 Constraint::NotNullConstraint(it) => &it.syntax,
30319 Constraint::NullConstraint(it) => &it.syntax,
30320 Constraint::PrimaryKeyConstraint(it) => &it.syntax,
30321 Constraint::ReferencesConstraint(it) => &it.syntax,
30322 Constraint::UniqueConstraint(it) => &it.syntax,
30323 }
30324 }
30325}
30326impl From<CheckConstraint> for Constraint {
30327 #[inline]
30328 fn from(node: CheckConstraint) -> Constraint {
30329 Constraint::CheckConstraint(node)
30330 }
30331}
30332impl From<DefaultConstraint> for Constraint {
30333 #[inline]
30334 fn from(node: DefaultConstraint) -> Constraint {
30335 Constraint::DefaultConstraint(node)
30336 }
30337}
30338impl From<ForeignKeyConstraint> for Constraint {
30339 #[inline]
30340 fn from(node: ForeignKeyConstraint) -> Constraint {
30341 Constraint::ForeignKeyConstraint(node)
30342 }
30343}
30344impl From<GeneratedConstraint> for Constraint {
30345 #[inline]
30346 fn from(node: GeneratedConstraint) -> Constraint {
30347 Constraint::GeneratedConstraint(node)
30348 }
30349}
30350impl From<NotNullConstraint> for Constraint {
30351 #[inline]
30352 fn from(node: NotNullConstraint) -> Constraint {
30353 Constraint::NotNullConstraint(node)
30354 }
30355}
30356impl From<NullConstraint> for Constraint {
30357 #[inline]
30358 fn from(node: NullConstraint) -> Constraint {
30359 Constraint::NullConstraint(node)
30360 }
30361}
30362impl From<PrimaryKeyConstraint> for Constraint {
30363 #[inline]
30364 fn from(node: PrimaryKeyConstraint) -> Constraint {
30365 Constraint::PrimaryKeyConstraint(node)
30366 }
30367}
30368impl From<ReferencesConstraint> for Constraint {
30369 #[inline]
30370 fn from(node: ReferencesConstraint) -> Constraint {
30371 Constraint::ReferencesConstraint(node)
30372 }
30373}
30374impl From<UniqueConstraint> for Constraint {
30375 #[inline]
30376 fn from(node: UniqueConstraint) -> Constraint {
30377 Constraint::UniqueConstraint(node)
30378 }
30379}
30380impl AstNode for ExplainStmt {
30381 #[inline]
30382 fn can_cast(kind: SyntaxKind) -> bool {
30383 matches!(
30384 kind,
30385 SyntaxKind::COMPOUND_SELECT
30386 | SyntaxKind::CREATE_MATERIALIZED_VIEW
30387 | SyntaxKind::CREATE_TABLE_AS
30388 | SyntaxKind::DECLARE
30389 | SyntaxKind::DELETE
30390 | SyntaxKind::EXECUTE
30391 | SyntaxKind::INSERT
30392 | SyntaxKind::MERGE
30393 | SyntaxKind::PAREN_SELECT
30394 | SyntaxKind::SELECT
30395 | SyntaxKind::SELECT_INTO
30396 | SyntaxKind::TABLE
30397 | SyntaxKind::UPDATE
30398 | SyntaxKind::VALUES
30399 )
30400 }
30401 #[inline]
30402 fn cast(syntax: SyntaxNode) -> Option<Self> {
30403 let res = match syntax.kind() {
30404 SyntaxKind::COMPOUND_SELECT => ExplainStmt::CompoundSelect(CompoundSelect { syntax }),
30405 SyntaxKind::CREATE_MATERIALIZED_VIEW => {
30406 ExplainStmt::CreateMaterializedView(CreateMaterializedView { syntax })
30407 }
30408 SyntaxKind::CREATE_TABLE_AS => ExplainStmt::CreateTableAs(CreateTableAs { syntax }),
30409 SyntaxKind::DECLARE => ExplainStmt::Declare(Declare { syntax }),
30410 SyntaxKind::DELETE => ExplainStmt::Delete(Delete { syntax }),
30411 SyntaxKind::EXECUTE => ExplainStmt::Execute(Execute { syntax }),
30412 SyntaxKind::INSERT => ExplainStmt::Insert(Insert { syntax }),
30413 SyntaxKind::MERGE => ExplainStmt::Merge(Merge { syntax }),
30414 SyntaxKind::PAREN_SELECT => ExplainStmt::ParenSelect(ParenSelect { syntax }),
30415 SyntaxKind::SELECT => ExplainStmt::Select(Select { syntax }),
30416 SyntaxKind::SELECT_INTO => ExplainStmt::SelectInto(SelectInto { syntax }),
30417 SyntaxKind::TABLE => ExplainStmt::Table(Table { syntax }),
30418 SyntaxKind::UPDATE => ExplainStmt::Update(Update { syntax }),
30419 SyntaxKind::VALUES => ExplainStmt::Values(Values { syntax }),
30420 _ => {
30421 return None;
30422 }
30423 };
30424 Some(res)
30425 }
30426 #[inline]
30427 fn syntax(&self) -> &SyntaxNode {
30428 match self {
30429 ExplainStmt::CompoundSelect(it) => &it.syntax,
30430 ExplainStmt::CreateMaterializedView(it) => &it.syntax,
30431 ExplainStmt::CreateTableAs(it) => &it.syntax,
30432 ExplainStmt::Declare(it) => &it.syntax,
30433 ExplainStmt::Delete(it) => &it.syntax,
30434 ExplainStmt::Execute(it) => &it.syntax,
30435 ExplainStmt::Insert(it) => &it.syntax,
30436 ExplainStmt::Merge(it) => &it.syntax,
30437 ExplainStmt::ParenSelect(it) => &it.syntax,
30438 ExplainStmt::Select(it) => &it.syntax,
30439 ExplainStmt::SelectInto(it) => &it.syntax,
30440 ExplainStmt::Table(it) => &it.syntax,
30441 ExplainStmt::Update(it) => &it.syntax,
30442 ExplainStmt::Values(it) => &it.syntax,
30443 }
30444 }
30445}
30446impl From<CompoundSelect> for ExplainStmt {
30447 #[inline]
30448 fn from(node: CompoundSelect) -> ExplainStmt {
30449 ExplainStmt::CompoundSelect(node)
30450 }
30451}
30452impl From<CreateMaterializedView> for ExplainStmt {
30453 #[inline]
30454 fn from(node: CreateMaterializedView) -> ExplainStmt {
30455 ExplainStmt::CreateMaterializedView(node)
30456 }
30457}
30458impl From<CreateTableAs> for ExplainStmt {
30459 #[inline]
30460 fn from(node: CreateTableAs) -> ExplainStmt {
30461 ExplainStmt::CreateTableAs(node)
30462 }
30463}
30464impl From<Declare> for ExplainStmt {
30465 #[inline]
30466 fn from(node: Declare) -> ExplainStmt {
30467 ExplainStmt::Declare(node)
30468 }
30469}
30470impl From<Delete> for ExplainStmt {
30471 #[inline]
30472 fn from(node: Delete) -> ExplainStmt {
30473 ExplainStmt::Delete(node)
30474 }
30475}
30476impl From<Execute> for ExplainStmt {
30477 #[inline]
30478 fn from(node: Execute) -> ExplainStmt {
30479 ExplainStmt::Execute(node)
30480 }
30481}
30482impl From<Insert> for ExplainStmt {
30483 #[inline]
30484 fn from(node: Insert) -> ExplainStmt {
30485 ExplainStmt::Insert(node)
30486 }
30487}
30488impl From<Merge> for ExplainStmt {
30489 #[inline]
30490 fn from(node: Merge) -> ExplainStmt {
30491 ExplainStmt::Merge(node)
30492 }
30493}
30494impl From<ParenSelect> for ExplainStmt {
30495 #[inline]
30496 fn from(node: ParenSelect) -> ExplainStmt {
30497 ExplainStmt::ParenSelect(node)
30498 }
30499}
30500impl From<Select> for ExplainStmt {
30501 #[inline]
30502 fn from(node: Select) -> ExplainStmt {
30503 ExplainStmt::Select(node)
30504 }
30505}
30506impl From<SelectInto> for ExplainStmt {
30507 #[inline]
30508 fn from(node: SelectInto) -> ExplainStmt {
30509 ExplainStmt::SelectInto(node)
30510 }
30511}
30512impl From<Table> for ExplainStmt {
30513 #[inline]
30514 fn from(node: Table) -> ExplainStmt {
30515 ExplainStmt::Table(node)
30516 }
30517}
30518impl From<Update> for ExplainStmt {
30519 #[inline]
30520 fn from(node: Update) -> ExplainStmt {
30521 ExplainStmt::Update(node)
30522 }
30523}
30524impl From<Values> for ExplainStmt {
30525 #[inline]
30526 fn from(node: Values) -> ExplainStmt {
30527 ExplainStmt::Values(node)
30528 }
30529}
30530impl AstNode for Expr {
30531 #[inline]
30532 fn can_cast(kind: SyntaxKind) -> bool {
30533 matches!(
30534 kind,
30535 SyntaxKind::ARRAY_EXPR
30536 | SyntaxKind::BETWEEN_EXPR
30537 | SyntaxKind::BIN_EXPR
30538 | SyntaxKind::CALL_EXPR
30539 | SyntaxKind::CASE_EXPR
30540 | SyntaxKind::CAST_EXPR
30541 | SyntaxKind::FIELD_EXPR
30542 | SyntaxKind::INDEX_EXPR
30543 | SyntaxKind::LITERAL
30544 | SyntaxKind::NAME_REF
30545 | SyntaxKind::PAREN_EXPR
30546 | SyntaxKind::POSTFIX_EXPR
30547 | SyntaxKind::PREFIX_EXPR
30548 | SyntaxKind::SLICE_EXPR
30549 | SyntaxKind::TUPLE_EXPR
30550 )
30551 }
30552 #[inline]
30553 fn cast(syntax: SyntaxNode) -> Option<Self> {
30554 let res = match syntax.kind() {
30555 SyntaxKind::ARRAY_EXPR => Expr::ArrayExpr(ArrayExpr { syntax }),
30556 SyntaxKind::BETWEEN_EXPR => Expr::BetweenExpr(BetweenExpr { syntax }),
30557 SyntaxKind::BIN_EXPR => Expr::BinExpr(BinExpr { syntax }),
30558 SyntaxKind::CALL_EXPR => Expr::CallExpr(CallExpr { syntax }),
30559 SyntaxKind::CASE_EXPR => Expr::CaseExpr(CaseExpr { syntax }),
30560 SyntaxKind::CAST_EXPR => Expr::CastExpr(CastExpr { syntax }),
30561 SyntaxKind::FIELD_EXPR => Expr::FieldExpr(FieldExpr { syntax }),
30562 SyntaxKind::INDEX_EXPR => Expr::IndexExpr(IndexExpr { syntax }),
30563 SyntaxKind::LITERAL => Expr::Literal(Literal { syntax }),
30564 SyntaxKind::NAME_REF => Expr::NameRef(NameRef { syntax }),
30565 SyntaxKind::PAREN_EXPR => Expr::ParenExpr(ParenExpr { syntax }),
30566 SyntaxKind::POSTFIX_EXPR => Expr::PostfixExpr(PostfixExpr { syntax }),
30567 SyntaxKind::PREFIX_EXPR => Expr::PrefixExpr(PrefixExpr { syntax }),
30568 SyntaxKind::SLICE_EXPR => Expr::SliceExpr(SliceExpr { syntax }),
30569 SyntaxKind::TUPLE_EXPR => Expr::TupleExpr(TupleExpr { syntax }),
30570 _ => {
30571 return None;
30572 }
30573 };
30574 Some(res)
30575 }
30576 #[inline]
30577 fn syntax(&self) -> &SyntaxNode {
30578 match self {
30579 Expr::ArrayExpr(it) => &it.syntax,
30580 Expr::BetweenExpr(it) => &it.syntax,
30581 Expr::BinExpr(it) => &it.syntax,
30582 Expr::CallExpr(it) => &it.syntax,
30583 Expr::CaseExpr(it) => &it.syntax,
30584 Expr::CastExpr(it) => &it.syntax,
30585 Expr::FieldExpr(it) => &it.syntax,
30586 Expr::IndexExpr(it) => &it.syntax,
30587 Expr::Literal(it) => &it.syntax,
30588 Expr::NameRef(it) => &it.syntax,
30589 Expr::ParenExpr(it) => &it.syntax,
30590 Expr::PostfixExpr(it) => &it.syntax,
30591 Expr::PrefixExpr(it) => &it.syntax,
30592 Expr::SliceExpr(it) => &it.syntax,
30593 Expr::TupleExpr(it) => &it.syntax,
30594 }
30595 }
30596}
30597impl From<ArrayExpr> for Expr {
30598 #[inline]
30599 fn from(node: ArrayExpr) -> Expr {
30600 Expr::ArrayExpr(node)
30601 }
30602}
30603impl From<BetweenExpr> for Expr {
30604 #[inline]
30605 fn from(node: BetweenExpr) -> Expr {
30606 Expr::BetweenExpr(node)
30607 }
30608}
30609impl From<BinExpr> for Expr {
30610 #[inline]
30611 fn from(node: BinExpr) -> Expr {
30612 Expr::BinExpr(node)
30613 }
30614}
30615impl From<CallExpr> for Expr {
30616 #[inline]
30617 fn from(node: CallExpr) -> Expr {
30618 Expr::CallExpr(node)
30619 }
30620}
30621impl From<CaseExpr> for Expr {
30622 #[inline]
30623 fn from(node: CaseExpr) -> Expr {
30624 Expr::CaseExpr(node)
30625 }
30626}
30627impl From<CastExpr> for Expr {
30628 #[inline]
30629 fn from(node: CastExpr) -> Expr {
30630 Expr::CastExpr(node)
30631 }
30632}
30633impl From<FieldExpr> for Expr {
30634 #[inline]
30635 fn from(node: FieldExpr) -> Expr {
30636 Expr::FieldExpr(node)
30637 }
30638}
30639impl From<IndexExpr> for Expr {
30640 #[inline]
30641 fn from(node: IndexExpr) -> Expr {
30642 Expr::IndexExpr(node)
30643 }
30644}
30645impl From<Literal> for Expr {
30646 #[inline]
30647 fn from(node: Literal) -> Expr {
30648 Expr::Literal(node)
30649 }
30650}
30651impl From<NameRef> for Expr {
30652 #[inline]
30653 fn from(node: NameRef) -> Expr {
30654 Expr::NameRef(node)
30655 }
30656}
30657impl From<ParenExpr> for Expr {
30658 #[inline]
30659 fn from(node: ParenExpr) -> Expr {
30660 Expr::ParenExpr(node)
30661 }
30662}
30663impl From<PostfixExpr> for Expr {
30664 #[inline]
30665 fn from(node: PostfixExpr) -> Expr {
30666 Expr::PostfixExpr(node)
30667 }
30668}
30669impl From<PrefixExpr> for Expr {
30670 #[inline]
30671 fn from(node: PrefixExpr) -> Expr {
30672 Expr::PrefixExpr(node)
30673 }
30674}
30675impl From<SliceExpr> for Expr {
30676 #[inline]
30677 fn from(node: SliceExpr) -> Expr {
30678 Expr::SliceExpr(node)
30679 }
30680}
30681impl From<TupleExpr> for Expr {
30682 #[inline]
30683 fn from(node: TupleExpr) -> Expr {
30684 Expr::TupleExpr(node)
30685 }
30686}
30687impl AstNode for FuncOption {
30688 #[inline]
30689 fn can_cast(kind: SyntaxKind) -> bool {
30690 matches!(
30691 kind,
30692 SyntaxKind::AS_FUNC_OPTION
30693 | SyntaxKind::BEGIN_FUNC_OPTION_LIST
30694 | SyntaxKind::COST_FUNC_OPTION
30695 | SyntaxKind::LANGUAGE_FUNC_OPTION
30696 | SyntaxKind::LEAKPROOF_FUNC_OPTION
30697 | SyntaxKind::PARALLEL_FUNC_OPTION
30698 | SyntaxKind::RESET_FUNC_OPTION
30699 | SyntaxKind::RETURN_FUNC_OPTION
30700 | SyntaxKind::ROWS_FUNC_OPTION
30701 | SyntaxKind::SECURITY_FUNC_OPTION
30702 | SyntaxKind::SET_FUNC_OPTION
30703 | SyntaxKind::STRICT_FUNC_OPTION
30704 | SyntaxKind::SUPPORT_FUNC_OPTION
30705 | SyntaxKind::TRANSFORM_FUNC_OPTION
30706 | SyntaxKind::VOLATILITY_FUNC_OPTION
30707 | SyntaxKind::WINDOW_FUNC_OPTION
30708 )
30709 }
30710 #[inline]
30711 fn cast(syntax: SyntaxNode) -> Option<Self> {
30712 let res = match syntax.kind() {
30713 SyntaxKind::AS_FUNC_OPTION => FuncOption::AsFuncOption(AsFuncOption { syntax }),
30714 SyntaxKind::BEGIN_FUNC_OPTION_LIST => {
30715 FuncOption::BeginFuncOptionList(BeginFuncOptionList { syntax })
30716 }
30717 SyntaxKind::COST_FUNC_OPTION => FuncOption::CostFuncOption(CostFuncOption { syntax }),
30718 SyntaxKind::LANGUAGE_FUNC_OPTION => {
30719 FuncOption::LanguageFuncOption(LanguageFuncOption { syntax })
30720 }
30721 SyntaxKind::LEAKPROOF_FUNC_OPTION => {
30722 FuncOption::LeakproofFuncOption(LeakproofFuncOption { syntax })
30723 }
30724 SyntaxKind::PARALLEL_FUNC_OPTION => {
30725 FuncOption::ParallelFuncOption(ParallelFuncOption { syntax })
30726 }
30727 SyntaxKind::RESET_FUNC_OPTION => {
30728 FuncOption::ResetFuncOption(ResetFuncOption { syntax })
30729 }
30730 SyntaxKind::RETURN_FUNC_OPTION => {
30731 FuncOption::ReturnFuncOption(ReturnFuncOption { syntax })
30732 }
30733 SyntaxKind::ROWS_FUNC_OPTION => FuncOption::RowsFuncOption(RowsFuncOption { syntax }),
30734 SyntaxKind::SECURITY_FUNC_OPTION => {
30735 FuncOption::SecurityFuncOption(SecurityFuncOption { syntax })
30736 }
30737 SyntaxKind::SET_FUNC_OPTION => FuncOption::SetFuncOption(SetFuncOption { syntax }),
30738 SyntaxKind::STRICT_FUNC_OPTION => {
30739 FuncOption::StrictFuncOption(StrictFuncOption { syntax })
30740 }
30741 SyntaxKind::SUPPORT_FUNC_OPTION => {
30742 FuncOption::SupportFuncOption(SupportFuncOption { syntax })
30743 }
30744 SyntaxKind::TRANSFORM_FUNC_OPTION => {
30745 FuncOption::TransformFuncOption(TransformFuncOption { syntax })
30746 }
30747 SyntaxKind::VOLATILITY_FUNC_OPTION => {
30748 FuncOption::VolatilityFuncOption(VolatilityFuncOption { syntax })
30749 }
30750 SyntaxKind::WINDOW_FUNC_OPTION => {
30751 FuncOption::WindowFuncOption(WindowFuncOption { syntax })
30752 }
30753 _ => {
30754 return None;
30755 }
30756 };
30757 Some(res)
30758 }
30759 #[inline]
30760 fn syntax(&self) -> &SyntaxNode {
30761 match self {
30762 FuncOption::AsFuncOption(it) => &it.syntax,
30763 FuncOption::BeginFuncOptionList(it) => &it.syntax,
30764 FuncOption::CostFuncOption(it) => &it.syntax,
30765 FuncOption::LanguageFuncOption(it) => &it.syntax,
30766 FuncOption::LeakproofFuncOption(it) => &it.syntax,
30767 FuncOption::ParallelFuncOption(it) => &it.syntax,
30768 FuncOption::ResetFuncOption(it) => &it.syntax,
30769 FuncOption::ReturnFuncOption(it) => &it.syntax,
30770 FuncOption::RowsFuncOption(it) => &it.syntax,
30771 FuncOption::SecurityFuncOption(it) => &it.syntax,
30772 FuncOption::SetFuncOption(it) => &it.syntax,
30773 FuncOption::StrictFuncOption(it) => &it.syntax,
30774 FuncOption::SupportFuncOption(it) => &it.syntax,
30775 FuncOption::TransformFuncOption(it) => &it.syntax,
30776 FuncOption::VolatilityFuncOption(it) => &it.syntax,
30777 FuncOption::WindowFuncOption(it) => &it.syntax,
30778 }
30779 }
30780}
30781impl From<AsFuncOption> for FuncOption {
30782 #[inline]
30783 fn from(node: AsFuncOption) -> FuncOption {
30784 FuncOption::AsFuncOption(node)
30785 }
30786}
30787impl From<BeginFuncOptionList> for FuncOption {
30788 #[inline]
30789 fn from(node: BeginFuncOptionList) -> FuncOption {
30790 FuncOption::BeginFuncOptionList(node)
30791 }
30792}
30793impl From<CostFuncOption> for FuncOption {
30794 #[inline]
30795 fn from(node: CostFuncOption) -> FuncOption {
30796 FuncOption::CostFuncOption(node)
30797 }
30798}
30799impl From<LanguageFuncOption> for FuncOption {
30800 #[inline]
30801 fn from(node: LanguageFuncOption) -> FuncOption {
30802 FuncOption::LanguageFuncOption(node)
30803 }
30804}
30805impl From<LeakproofFuncOption> for FuncOption {
30806 #[inline]
30807 fn from(node: LeakproofFuncOption) -> FuncOption {
30808 FuncOption::LeakproofFuncOption(node)
30809 }
30810}
30811impl From<ParallelFuncOption> for FuncOption {
30812 #[inline]
30813 fn from(node: ParallelFuncOption) -> FuncOption {
30814 FuncOption::ParallelFuncOption(node)
30815 }
30816}
30817impl From<ResetFuncOption> for FuncOption {
30818 #[inline]
30819 fn from(node: ResetFuncOption) -> FuncOption {
30820 FuncOption::ResetFuncOption(node)
30821 }
30822}
30823impl From<ReturnFuncOption> for FuncOption {
30824 #[inline]
30825 fn from(node: ReturnFuncOption) -> FuncOption {
30826 FuncOption::ReturnFuncOption(node)
30827 }
30828}
30829impl From<RowsFuncOption> for FuncOption {
30830 #[inline]
30831 fn from(node: RowsFuncOption) -> FuncOption {
30832 FuncOption::RowsFuncOption(node)
30833 }
30834}
30835impl From<SecurityFuncOption> for FuncOption {
30836 #[inline]
30837 fn from(node: SecurityFuncOption) -> FuncOption {
30838 FuncOption::SecurityFuncOption(node)
30839 }
30840}
30841impl From<SetFuncOption> for FuncOption {
30842 #[inline]
30843 fn from(node: SetFuncOption) -> FuncOption {
30844 FuncOption::SetFuncOption(node)
30845 }
30846}
30847impl From<StrictFuncOption> for FuncOption {
30848 #[inline]
30849 fn from(node: StrictFuncOption) -> FuncOption {
30850 FuncOption::StrictFuncOption(node)
30851 }
30852}
30853impl From<SupportFuncOption> for FuncOption {
30854 #[inline]
30855 fn from(node: SupportFuncOption) -> FuncOption {
30856 FuncOption::SupportFuncOption(node)
30857 }
30858}
30859impl From<TransformFuncOption> for FuncOption {
30860 #[inline]
30861 fn from(node: TransformFuncOption) -> FuncOption {
30862 FuncOption::TransformFuncOption(node)
30863 }
30864}
30865impl From<VolatilityFuncOption> for FuncOption {
30866 #[inline]
30867 fn from(node: VolatilityFuncOption) -> FuncOption {
30868 FuncOption::VolatilityFuncOption(node)
30869 }
30870}
30871impl From<WindowFuncOption> for FuncOption {
30872 #[inline]
30873 fn from(node: WindowFuncOption) -> FuncOption {
30874 FuncOption::WindowFuncOption(node)
30875 }
30876}
30877impl AstNode for GroupBy {
30878 #[inline]
30879 fn can_cast(kind: SyntaxKind) -> bool {
30880 matches!(
30881 kind,
30882 SyntaxKind::GROUPING_CUBE
30883 | SyntaxKind::GROUPING_EXPR
30884 | SyntaxKind::GROUPING_ROLLUP
30885 | SyntaxKind::GROUPING_SETS
30886 )
30887 }
30888 #[inline]
30889 fn cast(syntax: SyntaxNode) -> Option<Self> {
30890 let res = match syntax.kind() {
30891 SyntaxKind::GROUPING_CUBE => GroupBy::GroupingCube(GroupingCube { syntax }),
30892 SyntaxKind::GROUPING_EXPR => GroupBy::GroupingExpr(GroupingExpr { syntax }),
30893 SyntaxKind::GROUPING_ROLLUP => GroupBy::GroupingRollup(GroupingRollup { syntax }),
30894 SyntaxKind::GROUPING_SETS => GroupBy::GroupingSets(GroupingSets { syntax }),
30895 _ => {
30896 return None;
30897 }
30898 };
30899 Some(res)
30900 }
30901 #[inline]
30902 fn syntax(&self) -> &SyntaxNode {
30903 match self {
30904 GroupBy::GroupingCube(it) => &it.syntax,
30905 GroupBy::GroupingExpr(it) => &it.syntax,
30906 GroupBy::GroupingRollup(it) => &it.syntax,
30907 GroupBy::GroupingSets(it) => &it.syntax,
30908 }
30909 }
30910}
30911impl From<GroupingCube> for GroupBy {
30912 #[inline]
30913 fn from(node: GroupingCube) -> GroupBy {
30914 GroupBy::GroupingCube(node)
30915 }
30916}
30917impl From<GroupingExpr> for GroupBy {
30918 #[inline]
30919 fn from(node: GroupingExpr) -> GroupBy {
30920 GroupBy::GroupingExpr(node)
30921 }
30922}
30923impl From<GroupingRollup> for GroupBy {
30924 #[inline]
30925 fn from(node: GroupingRollup) -> GroupBy {
30926 GroupBy::GroupingRollup(node)
30927 }
30928}
30929impl From<GroupingSets> for GroupBy {
30930 #[inline]
30931 fn from(node: GroupingSets) -> GroupBy {
30932 GroupBy::GroupingSets(node)
30933 }
30934}
30935impl AstNode for JoinType {
30936 #[inline]
30937 fn can_cast(kind: SyntaxKind) -> bool {
30938 matches!(
30939 kind,
30940 SyntaxKind::JOIN_CROSS
30941 | SyntaxKind::JOIN_FULL
30942 | SyntaxKind::JOIN_INNER
30943 | SyntaxKind::JOIN_LEFT
30944 | SyntaxKind::JOIN_RIGHT
30945 )
30946 }
30947 #[inline]
30948 fn cast(syntax: SyntaxNode) -> Option<Self> {
30949 let res = match syntax.kind() {
30950 SyntaxKind::JOIN_CROSS => JoinType::JoinCross(JoinCross { syntax }),
30951 SyntaxKind::JOIN_FULL => JoinType::JoinFull(JoinFull { syntax }),
30952 SyntaxKind::JOIN_INNER => JoinType::JoinInner(JoinInner { syntax }),
30953 SyntaxKind::JOIN_LEFT => JoinType::JoinLeft(JoinLeft { syntax }),
30954 SyntaxKind::JOIN_RIGHT => JoinType::JoinRight(JoinRight { syntax }),
30955 _ => {
30956 return None;
30957 }
30958 };
30959 Some(res)
30960 }
30961 #[inline]
30962 fn syntax(&self) -> &SyntaxNode {
30963 match self {
30964 JoinType::JoinCross(it) => &it.syntax,
30965 JoinType::JoinFull(it) => &it.syntax,
30966 JoinType::JoinInner(it) => &it.syntax,
30967 JoinType::JoinLeft(it) => &it.syntax,
30968 JoinType::JoinRight(it) => &it.syntax,
30969 }
30970 }
30971}
30972impl From<JoinCross> for JoinType {
30973 #[inline]
30974 fn from(node: JoinCross) -> JoinType {
30975 JoinType::JoinCross(node)
30976 }
30977}
30978impl From<JoinFull> for JoinType {
30979 #[inline]
30980 fn from(node: JoinFull) -> JoinType {
30981 JoinType::JoinFull(node)
30982 }
30983}
30984impl From<JoinInner> for JoinType {
30985 #[inline]
30986 fn from(node: JoinInner) -> JoinType {
30987 JoinType::JoinInner(node)
30988 }
30989}
30990impl From<JoinLeft> for JoinType {
30991 #[inline]
30992 fn from(node: JoinLeft) -> JoinType {
30993 JoinType::JoinLeft(node)
30994 }
30995}
30996impl From<JoinRight> for JoinType {
30997 #[inline]
30998 fn from(node: JoinRight) -> JoinType {
30999 JoinType::JoinRight(node)
31000 }
31001}
31002impl AstNode for JsonBehavior {
31003 #[inline]
31004 fn can_cast(kind: SyntaxKind) -> bool {
31005 matches!(
31006 kind,
31007 SyntaxKind::JSON_BEHAVIOR_DEFAULT
31008 | SyntaxKind::JSON_BEHAVIOR_EMPTY_ARRAY
31009 | SyntaxKind::JSON_BEHAVIOR_EMPTY_OBJECT
31010 | SyntaxKind::JSON_BEHAVIOR_ERROR
31011 | SyntaxKind::JSON_BEHAVIOR_FALSE
31012 | SyntaxKind::JSON_BEHAVIOR_NULL
31013 | SyntaxKind::JSON_BEHAVIOR_TRUE
31014 | SyntaxKind::JSON_BEHAVIOR_UNKNOWN
31015 )
31016 }
31017 #[inline]
31018 fn cast(syntax: SyntaxNode) -> Option<Self> {
31019 let res = match syntax.kind() {
31020 SyntaxKind::JSON_BEHAVIOR_DEFAULT => {
31021 JsonBehavior::JsonBehaviorDefault(JsonBehaviorDefault { syntax })
31022 }
31023 SyntaxKind::JSON_BEHAVIOR_EMPTY_ARRAY => {
31024 JsonBehavior::JsonBehaviorEmptyArray(JsonBehaviorEmptyArray { syntax })
31025 }
31026 SyntaxKind::JSON_BEHAVIOR_EMPTY_OBJECT => {
31027 JsonBehavior::JsonBehaviorEmptyObject(JsonBehaviorEmptyObject { syntax })
31028 }
31029 SyntaxKind::JSON_BEHAVIOR_ERROR => {
31030 JsonBehavior::JsonBehaviorError(JsonBehaviorError { syntax })
31031 }
31032 SyntaxKind::JSON_BEHAVIOR_FALSE => {
31033 JsonBehavior::JsonBehaviorFalse(JsonBehaviorFalse { syntax })
31034 }
31035 SyntaxKind::JSON_BEHAVIOR_NULL => {
31036 JsonBehavior::JsonBehaviorNull(JsonBehaviorNull { syntax })
31037 }
31038 SyntaxKind::JSON_BEHAVIOR_TRUE => {
31039 JsonBehavior::JsonBehaviorTrue(JsonBehaviorTrue { syntax })
31040 }
31041 SyntaxKind::JSON_BEHAVIOR_UNKNOWN => {
31042 JsonBehavior::JsonBehaviorUnknown(JsonBehaviorUnknown { syntax })
31043 }
31044 _ => {
31045 return None;
31046 }
31047 };
31048 Some(res)
31049 }
31050 #[inline]
31051 fn syntax(&self) -> &SyntaxNode {
31052 match self {
31053 JsonBehavior::JsonBehaviorDefault(it) => &it.syntax,
31054 JsonBehavior::JsonBehaviorEmptyArray(it) => &it.syntax,
31055 JsonBehavior::JsonBehaviorEmptyObject(it) => &it.syntax,
31056 JsonBehavior::JsonBehaviorError(it) => &it.syntax,
31057 JsonBehavior::JsonBehaviorFalse(it) => &it.syntax,
31058 JsonBehavior::JsonBehaviorNull(it) => &it.syntax,
31059 JsonBehavior::JsonBehaviorTrue(it) => &it.syntax,
31060 JsonBehavior::JsonBehaviorUnknown(it) => &it.syntax,
31061 }
31062 }
31063}
31064impl From<JsonBehaviorDefault> for JsonBehavior {
31065 #[inline]
31066 fn from(node: JsonBehaviorDefault) -> JsonBehavior {
31067 JsonBehavior::JsonBehaviorDefault(node)
31068 }
31069}
31070impl From<JsonBehaviorEmptyArray> for JsonBehavior {
31071 #[inline]
31072 fn from(node: JsonBehaviorEmptyArray) -> JsonBehavior {
31073 JsonBehavior::JsonBehaviorEmptyArray(node)
31074 }
31075}
31076impl From<JsonBehaviorEmptyObject> for JsonBehavior {
31077 #[inline]
31078 fn from(node: JsonBehaviorEmptyObject) -> JsonBehavior {
31079 JsonBehavior::JsonBehaviorEmptyObject(node)
31080 }
31081}
31082impl From<JsonBehaviorError> for JsonBehavior {
31083 #[inline]
31084 fn from(node: JsonBehaviorError) -> JsonBehavior {
31085 JsonBehavior::JsonBehaviorError(node)
31086 }
31087}
31088impl From<JsonBehaviorFalse> for JsonBehavior {
31089 #[inline]
31090 fn from(node: JsonBehaviorFalse) -> JsonBehavior {
31091 JsonBehavior::JsonBehaviorFalse(node)
31092 }
31093}
31094impl From<JsonBehaviorNull> for JsonBehavior {
31095 #[inline]
31096 fn from(node: JsonBehaviorNull) -> JsonBehavior {
31097 JsonBehavior::JsonBehaviorNull(node)
31098 }
31099}
31100impl From<JsonBehaviorTrue> for JsonBehavior {
31101 #[inline]
31102 fn from(node: JsonBehaviorTrue) -> JsonBehavior {
31103 JsonBehavior::JsonBehaviorTrue(node)
31104 }
31105}
31106impl From<JsonBehaviorUnknown> for JsonBehavior {
31107 #[inline]
31108 fn from(node: JsonBehaviorUnknown) -> JsonBehavior {
31109 JsonBehavior::JsonBehaviorUnknown(node)
31110 }
31111}
31112impl AstNode for MatchType {
31113 #[inline]
31114 fn can_cast(kind: SyntaxKind) -> bool {
31115 matches!(
31116 kind,
31117 SyntaxKind::MATCH_FULL | SyntaxKind::MATCH_PARTIAL | SyntaxKind::MATCH_SIMPLE
31118 )
31119 }
31120 #[inline]
31121 fn cast(syntax: SyntaxNode) -> Option<Self> {
31122 let res = match syntax.kind() {
31123 SyntaxKind::MATCH_FULL => MatchType::MatchFull(MatchFull { syntax }),
31124 SyntaxKind::MATCH_PARTIAL => MatchType::MatchPartial(MatchPartial { syntax }),
31125 SyntaxKind::MATCH_SIMPLE => MatchType::MatchSimple(MatchSimple { syntax }),
31126 _ => {
31127 return None;
31128 }
31129 };
31130 Some(res)
31131 }
31132 #[inline]
31133 fn syntax(&self) -> &SyntaxNode {
31134 match self {
31135 MatchType::MatchFull(it) => &it.syntax,
31136 MatchType::MatchPartial(it) => &it.syntax,
31137 MatchType::MatchSimple(it) => &it.syntax,
31138 }
31139 }
31140}
31141impl From<MatchFull> for MatchType {
31142 #[inline]
31143 fn from(node: MatchFull) -> MatchType {
31144 MatchType::MatchFull(node)
31145 }
31146}
31147impl From<MatchPartial> for MatchType {
31148 #[inline]
31149 fn from(node: MatchPartial) -> MatchType {
31150 MatchType::MatchPartial(node)
31151 }
31152}
31153impl From<MatchSimple> for MatchType {
31154 #[inline]
31155 fn from(node: MatchSimple) -> MatchType {
31156 MatchType::MatchSimple(node)
31157 }
31158}
31159impl AstNode for MergeAction {
31160 #[inline]
31161 fn can_cast(kind: SyntaxKind) -> bool {
31162 matches!(
31163 kind,
31164 SyntaxKind::MERGE_DELETE
31165 | SyntaxKind::MERGE_DO_NOTHING
31166 | SyntaxKind::MERGE_INSERT
31167 | SyntaxKind::MERGE_UPDATE
31168 )
31169 }
31170 #[inline]
31171 fn cast(syntax: SyntaxNode) -> Option<Self> {
31172 let res = match syntax.kind() {
31173 SyntaxKind::MERGE_DELETE => MergeAction::MergeDelete(MergeDelete { syntax }),
31174 SyntaxKind::MERGE_DO_NOTHING => MergeAction::MergeDoNothing(MergeDoNothing { syntax }),
31175 SyntaxKind::MERGE_INSERT => MergeAction::MergeInsert(MergeInsert { syntax }),
31176 SyntaxKind::MERGE_UPDATE => MergeAction::MergeUpdate(MergeUpdate { syntax }),
31177 _ => {
31178 return None;
31179 }
31180 };
31181 Some(res)
31182 }
31183 #[inline]
31184 fn syntax(&self) -> &SyntaxNode {
31185 match self {
31186 MergeAction::MergeDelete(it) => &it.syntax,
31187 MergeAction::MergeDoNothing(it) => &it.syntax,
31188 MergeAction::MergeInsert(it) => &it.syntax,
31189 MergeAction::MergeUpdate(it) => &it.syntax,
31190 }
31191 }
31192}
31193impl From<MergeDelete> for MergeAction {
31194 #[inline]
31195 fn from(node: MergeDelete) -> MergeAction {
31196 MergeAction::MergeDelete(node)
31197 }
31198}
31199impl From<MergeDoNothing> for MergeAction {
31200 #[inline]
31201 fn from(node: MergeDoNothing) -> MergeAction {
31202 MergeAction::MergeDoNothing(node)
31203 }
31204}
31205impl From<MergeInsert> for MergeAction {
31206 #[inline]
31207 fn from(node: MergeInsert) -> MergeAction {
31208 MergeAction::MergeInsert(node)
31209 }
31210}
31211impl From<MergeUpdate> for MergeAction {
31212 #[inline]
31213 fn from(node: MergeUpdate) -> MergeAction {
31214 MergeAction::MergeUpdate(node)
31215 }
31216}
31217impl AstNode for MergeWhenClause {
31218 #[inline]
31219 fn can_cast(kind: SyntaxKind) -> bool {
31220 matches!(
31221 kind,
31222 SyntaxKind::MERGE_WHEN_MATCHED
31223 | SyntaxKind::MERGE_WHEN_NOT_MATCHED_SOURCE
31224 | SyntaxKind::MERGE_WHEN_NOT_MATCHED_TARGET
31225 )
31226 }
31227 #[inline]
31228 fn cast(syntax: SyntaxNode) -> Option<Self> {
31229 let res = match syntax.kind() {
31230 SyntaxKind::MERGE_WHEN_MATCHED => {
31231 MergeWhenClause::MergeWhenMatched(MergeWhenMatched { syntax })
31232 }
31233 SyntaxKind::MERGE_WHEN_NOT_MATCHED_SOURCE => {
31234 MergeWhenClause::MergeWhenNotMatchedSource(MergeWhenNotMatchedSource { syntax })
31235 }
31236 SyntaxKind::MERGE_WHEN_NOT_MATCHED_TARGET => {
31237 MergeWhenClause::MergeWhenNotMatchedTarget(MergeWhenNotMatchedTarget { syntax })
31238 }
31239 _ => {
31240 return None;
31241 }
31242 };
31243 Some(res)
31244 }
31245 #[inline]
31246 fn syntax(&self) -> &SyntaxNode {
31247 match self {
31248 MergeWhenClause::MergeWhenMatched(it) => &it.syntax,
31249 MergeWhenClause::MergeWhenNotMatchedSource(it) => &it.syntax,
31250 MergeWhenClause::MergeWhenNotMatchedTarget(it) => &it.syntax,
31251 }
31252 }
31253}
31254impl From<MergeWhenMatched> for MergeWhenClause {
31255 #[inline]
31256 fn from(node: MergeWhenMatched) -> MergeWhenClause {
31257 MergeWhenClause::MergeWhenMatched(node)
31258 }
31259}
31260impl From<MergeWhenNotMatchedSource> for MergeWhenClause {
31261 #[inline]
31262 fn from(node: MergeWhenNotMatchedSource) -> MergeWhenClause {
31263 MergeWhenClause::MergeWhenNotMatchedSource(node)
31264 }
31265}
31266impl From<MergeWhenNotMatchedTarget> for MergeWhenClause {
31267 #[inline]
31268 fn from(node: MergeWhenNotMatchedTarget) -> MergeWhenClause {
31269 MergeWhenClause::MergeWhenNotMatchedTarget(node)
31270 }
31271}
31272impl AstNode for OnCommitAction {
31273 #[inline]
31274 fn can_cast(kind: SyntaxKind) -> bool {
31275 matches!(
31276 kind,
31277 SyntaxKind::DELETE_ROWS | SyntaxKind::DROP | SyntaxKind::PRESERVE_ROWS
31278 )
31279 }
31280 #[inline]
31281 fn cast(syntax: SyntaxNode) -> Option<Self> {
31282 let res = match syntax.kind() {
31283 SyntaxKind::DELETE_ROWS => OnCommitAction::DeleteRows(DeleteRows { syntax }),
31284 SyntaxKind::DROP => OnCommitAction::Drop(Drop { syntax }),
31285 SyntaxKind::PRESERVE_ROWS => OnCommitAction::PreserveRows(PreserveRows { syntax }),
31286 _ => {
31287 return None;
31288 }
31289 };
31290 Some(res)
31291 }
31292 #[inline]
31293 fn syntax(&self) -> &SyntaxNode {
31294 match self {
31295 OnCommitAction::DeleteRows(it) => &it.syntax,
31296 OnCommitAction::Drop(it) => &it.syntax,
31297 OnCommitAction::PreserveRows(it) => &it.syntax,
31298 }
31299 }
31300}
31301impl From<DeleteRows> for OnCommitAction {
31302 #[inline]
31303 fn from(node: DeleteRows) -> OnCommitAction {
31304 OnCommitAction::DeleteRows(node)
31305 }
31306}
31307impl From<Drop> for OnCommitAction {
31308 #[inline]
31309 fn from(node: Drop) -> OnCommitAction {
31310 OnCommitAction::Drop(node)
31311 }
31312}
31313impl From<PreserveRows> for OnCommitAction {
31314 #[inline]
31315 fn from(node: PreserveRows) -> OnCommitAction {
31316 OnCommitAction::PreserveRows(node)
31317 }
31318}
31319impl AstNode for ParamMode {
31320 #[inline]
31321 fn can_cast(kind: SyntaxKind) -> bool {
31322 matches!(
31323 kind,
31324 SyntaxKind::PARAM_IN
31325 | SyntaxKind::PARAM_IN_OUT
31326 | SyntaxKind::PARAM_OUT
31327 | SyntaxKind::PARAM_VARIADIC
31328 )
31329 }
31330 #[inline]
31331 fn cast(syntax: SyntaxNode) -> Option<Self> {
31332 let res = match syntax.kind() {
31333 SyntaxKind::PARAM_IN => ParamMode::ParamIn(ParamIn { syntax }),
31334 SyntaxKind::PARAM_IN_OUT => ParamMode::ParamInOut(ParamInOut { syntax }),
31335 SyntaxKind::PARAM_OUT => ParamMode::ParamOut(ParamOut { syntax }),
31336 SyntaxKind::PARAM_VARIADIC => ParamMode::ParamVariadic(ParamVariadic { syntax }),
31337 _ => {
31338 return None;
31339 }
31340 };
31341 Some(res)
31342 }
31343 #[inline]
31344 fn syntax(&self) -> &SyntaxNode {
31345 match self {
31346 ParamMode::ParamIn(it) => &it.syntax,
31347 ParamMode::ParamInOut(it) => &it.syntax,
31348 ParamMode::ParamOut(it) => &it.syntax,
31349 ParamMode::ParamVariadic(it) => &it.syntax,
31350 }
31351 }
31352}
31353impl From<ParamIn> for ParamMode {
31354 #[inline]
31355 fn from(node: ParamIn) -> ParamMode {
31356 ParamMode::ParamIn(node)
31357 }
31358}
31359impl From<ParamInOut> for ParamMode {
31360 #[inline]
31361 fn from(node: ParamInOut) -> ParamMode {
31362 ParamMode::ParamInOut(node)
31363 }
31364}
31365impl From<ParamOut> for ParamMode {
31366 #[inline]
31367 fn from(node: ParamOut) -> ParamMode {
31368 ParamMode::ParamOut(node)
31369 }
31370}
31371impl From<ParamVariadic> for ParamMode {
31372 #[inline]
31373 fn from(node: ParamVariadic) -> ParamMode {
31374 ParamMode::ParamVariadic(node)
31375 }
31376}
31377impl AstNode for PartitionType {
31378 #[inline]
31379 fn can_cast(kind: SyntaxKind) -> bool {
31380 matches!(
31381 kind,
31382 SyntaxKind::PARTITION_DEFAULT
31383 | SyntaxKind::PARTITION_FOR_VALUES_FROM
31384 | SyntaxKind::PARTITION_FOR_VALUES_IN
31385 | SyntaxKind::PARTITION_FOR_VALUES_WITH
31386 )
31387 }
31388 #[inline]
31389 fn cast(syntax: SyntaxNode) -> Option<Self> {
31390 let res = match syntax.kind() {
31391 SyntaxKind::PARTITION_DEFAULT => {
31392 PartitionType::PartitionDefault(PartitionDefault { syntax })
31393 }
31394 SyntaxKind::PARTITION_FOR_VALUES_FROM => {
31395 PartitionType::PartitionForValuesFrom(PartitionForValuesFrom { syntax })
31396 }
31397 SyntaxKind::PARTITION_FOR_VALUES_IN => {
31398 PartitionType::PartitionForValuesIn(PartitionForValuesIn { syntax })
31399 }
31400 SyntaxKind::PARTITION_FOR_VALUES_WITH => {
31401 PartitionType::PartitionForValuesWith(PartitionForValuesWith { syntax })
31402 }
31403 _ => {
31404 return None;
31405 }
31406 };
31407 Some(res)
31408 }
31409 #[inline]
31410 fn syntax(&self) -> &SyntaxNode {
31411 match self {
31412 PartitionType::PartitionDefault(it) => &it.syntax,
31413 PartitionType::PartitionForValuesFrom(it) => &it.syntax,
31414 PartitionType::PartitionForValuesIn(it) => &it.syntax,
31415 PartitionType::PartitionForValuesWith(it) => &it.syntax,
31416 }
31417 }
31418}
31419impl From<PartitionDefault> for PartitionType {
31420 #[inline]
31421 fn from(node: PartitionDefault) -> PartitionType {
31422 PartitionType::PartitionDefault(node)
31423 }
31424}
31425impl From<PartitionForValuesFrom> for PartitionType {
31426 #[inline]
31427 fn from(node: PartitionForValuesFrom) -> PartitionType {
31428 PartitionType::PartitionForValuesFrom(node)
31429 }
31430}
31431impl From<PartitionForValuesIn> for PartitionType {
31432 #[inline]
31433 fn from(node: PartitionForValuesIn) -> PartitionType {
31434 PartitionType::PartitionForValuesIn(node)
31435 }
31436}
31437impl From<PartitionForValuesWith> for PartitionType {
31438 #[inline]
31439 fn from(node: PartitionForValuesWith) -> PartitionType {
31440 PartitionType::PartitionForValuesWith(node)
31441 }
31442}
31443impl AstNode for PreparableStmt {
31444 #[inline]
31445 fn can_cast(kind: SyntaxKind) -> bool {
31446 matches!(
31447 kind,
31448 SyntaxKind::COMPOUND_SELECT
31449 | SyntaxKind::DELETE
31450 | SyntaxKind::INSERT
31451 | SyntaxKind::MERGE
31452 | SyntaxKind::SELECT
31453 | SyntaxKind::SELECT_INTO
31454 | SyntaxKind::TABLE
31455 | SyntaxKind::UPDATE
31456 | SyntaxKind::VALUES
31457 )
31458 }
31459 #[inline]
31460 fn cast(syntax: SyntaxNode) -> Option<Self> {
31461 let res = match syntax.kind() {
31462 SyntaxKind::COMPOUND_SELECT => {
31463 PreparableStmt::CompoundSelect(CompoundSelect { syntax })
31464 }
31465 SyntaxKind::DELETE => PreparableStmt::Delete(Delete { syntax }),
31466 SyntaxKind::INSERT => PreparableStmt::Insert(Insert { syntax }),
31467 SyntaxKind::MERGE => PreparableStmt::Merge(Merge { syntax }),
31468 SyntaxKind::SELECT => PreparableStmt::Select(Select { syntax }),
31469 SyntaxKind::SELECT_INTO => PreparableStmt::SelectInto(SelectInto { syntax }),
31470 SyntaxKind::TABLE => PreparableStmt::Table(Table { syntax }),
31471 SyntaxKind::UPDATE => PreparableStmt::Update(Update { syntax }),
31472 SyntaxKind::VALUES => PreparableStmt::Values(Values { syntax }),
31473 _ => {
31474 return None;
31475 }
31476 };
31477 Some(res)
31478 }
31479 #[inline]
31480 fn syntax(&self) -> &SyntaxNode {
31481 match self {
31482 PreparableStmt::CompoundSelect(it) => &it.syntax,
31483 PreparableStmt::Delete(it) => &it.syntax,
31484 PreparableStmt::Insert(it) => &it.syntax,
31485 PreparableStmt::Merge(it) => &it.syntax,
31486 PreparableStmt::Select(it) => &it.syntax,
31487 PreparableStmt::SelectInto(it) => &it.syntax,
31488 PreparableStmt::Table(it) => &it.syntax,
31489 PreparableStmt::Update(it) => &it.syntax,
31490 PreparableStmt::Values(it) => &it.syntax,
31491 }
31492 }
31493}
31494impl From<CompoundSelect> for PreparableStmt {
31495 #[inline]
31496 fn from(node: CompoundSelect) -> PreparableStmt {
31497 PreparableStmt::CompoundSelect(node)
31498 }
31499}
31500impl From<Delete> for PreparableStmt {
31501 #[inline]
31502 fn from(node: Delete) -> PreparableStmt {
31503 PreparableStmt::Delete(node)
31504 }
31505}
31506impl From<Insert> for PreparableStmt {
31507 #[inline]
31508 fn from(node: Insert) -> PreparableStmt {
31509 PreparableStmt::Insert(node)
31510 }
31511}
31512impl From<Merge> for PreparableStmt {
31513 #[inline]
31514 fn from(node: Merge) -> PreparableStmt {
31515 PreparableStmt::Merge(node)
31516 }
31517}
31518impl From<Select> for PreparableStmt {
31519 #[inline]
31520 fn from(node: Select) -> PreparableStmt {
31521 PreparableStmt::Select(node)
31522 }
31523}
31524impl From<SelectInto> for PreparableStmt {
31525 #[inline]
31526 fn from(node: SelectInto) -> PreparableStmt {
31527 PreparableStmt::SelectInto(node)
31528 }
31529}
31530impl From<Table> for PreparableStmt {
31531 #[inline]
31532 fn from(node: Table) -> PreparableStmt {
31533 PreparableStmt::Table(node)
31534 }
31535}
31536impl From<Update> for PreparableStmt {
31537 #[inline]
31538 fn from(node: Update) -> PreparableStmt {
31539 PreparableStmt::Update(node)
31540 }
31541}
31542impl From<Values> for PreparableStmt {
31543 #[inline]
31544 fn from(node: Values) -> PreparableStmt {
31545 PreparableStmt::Values(node)
31546 }
31547}
31548impl AstNode for RefAction {
31549 #[inline]
31550 fn can_cast(kind: SyntaxKind) -> bool {
31551 matches!(
31552 kind,
31553 SyntaxKind::CASCADE
31554 | SyntaxKind::NO_ACTION
31555 | SyntaxKind::RESTRICT
31556 | SyntaxKind::SET_DEFAULT_COLUMNS
31557 | SyntaxKind::SET_NULL_COLUMNS
31558 )
31559 }
31560 #[inline]
31561 fn cast(syntax: SyntaxNode) -> Option<Self> {
31562 let res = match syntax.kind() {
31563 SyntaxKind::CASCADE => RefAction::Cascade(Cascade { syntax }),
31564 SyntaxKind::NO_ACTION => RefAction::NoAction(NoAction { syntax }),
31565 SyntaxKind::RESTRICT => RefAction::Restrict(Restrict { syntax }),
31566 SyntaxKind::SET_DEFAULT_COLUMNS => {
31567 RefAction::SetDefaultColumns(SetDefaultColumns { syntax })
31568 }
31569 SyntaxKind::SET_NULL_COLUMNS => RefAction::SetNullColumns(SetNullColumns { syntax }),
31570 _ => {
31571 return None;
31572 }
31573 };
31574 Some(res)
31575 }
31576 #[inline]
31577 fn syntax(&self) -> &SyntaxNode {
31578 match self {
31579 RefAction::Cascade(it) => &it.syntax,
31580 RefAction::NoAction(it) => &it.syntax,
31581 RefAction::Restrict(it) => &it.syntax,
31582 RefAction::SetDefaultColumns(it) => &it.syntax,
31583 RefAction::SetNullColumns(it) => &it.syntax,
31584 }
31585 }
31586}
31587impl From<Cascade> for RefAction {
31588 #[inline]
31589 fn from(node: Cascade) -> RefAction {
31590 RefAction::Cascade(node)
31591 }
31592}
31593impl From<NoAction> for RefAction {
31594 #[inline]
31595 fn from(node: NoAction) -> RefAction {
31596 RefAction::NoAction(node)
31597 }
31598}
31599impl From<Restrict> for RefAction {
31600 #[inline]
31601 fn from(node: Restrict) -> RefAction {
31602 RefAction::Restrict(node)
31603 }
31604}
31605impl From<SetDefaultColumns> for RefAction {
31606 #[inline]
31607 fn from(node: SetDefaultColumns) -> RefAction {
31608 RefAction::SetDefaultColumns(node)
31609 }
31610}
31611impl From<SetNullColumns> for RefAction {
31612 #[inline]
31613 fn from(node: SetNullColumns) -> RefAction {
31614 RefAction::SetNullColumns(node)
31615 }
31616}
31617impl AstNode for SchemaElement {
31618 #[inline]
31619 fn can_cast(kind: SyntaxKind) -> bool {
31620 matches!(
31621 kind,
31622 SyntaxKind::CREATE_INDEX
31623 | SyntaxKind::CREATE_SEQUENCE
31624 | SyntaxKind::CREATE_TABLE
31625 | SyntaxKind::CREATE_TRIGGER
31626 | SyntaxKind::CREATE_VIEW
31627 | SyntaxKind::GRANT
31628 )
31629 }
31630 #[inline]
31631 fn cast(syntax: SyntaxNode) -> Option<Self> {
31632 let res = match syntax.kind() {
31633 SyntaxKind::CREATE_INDEX => SchemaElement::CreateIndex(CreateIndex { syntax }),
31634 SyntaxKind::CREATE_SEQUENCE => SchemaElement::CreateSequence(CreateSequence { syntax }),
31635 SyntaxKind::CREATE_TABLE => SchemaElement::CreateTable(CreateTable { syntax }),
31636 SyntaxKind::CREATE_TRIGGER => SchemaElement::CreateTrigger(CreateTrigger { syntax }),
31637 SyntaxKind::CREATE_VIEW => SchemaElement::CreateView(CreateView { syntax }),
31638 SyntaxKind::GRANT => SchemaElement::Grant(Grant { syntax }),
31639 _ => {
31640 return None;
31641 }
31642 };
31643 Some(res)
31644 }
31645 #[inline]
31646 fn syntax(&self) -> &SyntaxNode {
31647 match self {
31648 SchemaElement::CreateIndex(it) => &it.syntax,
31649 SchemaElement::CreateSequence(it) => &it.syntax,
31650 SchemaElement::CreateTable(it) => &it.syntax,
31651 SchemaElement::CreateTrigger(it) => &it.syntax,
31652 SchemaElement::CreateView(it) => &it.syntax,
31653 SchemaElement::Grant(it) => &it.syntax,
31654 }
31655 }
31656}
31657impl From<CreateIndex> for SchemaElement {
31658 #[inline]
31659 fn from(node: CreateIndex) -> SchemaElement {
31660 SchemaElement::CreateIndex(node)
31661 }
31662}
31663impl From<CreateSequence> for SchemaElement {
31664 #[inline]
31665 fn from(node: CreateSequence) -> SchemaElement {
31666 SchemaElement::CreateSequence(node)
31667 }
31668}
31669impl From<CreateTable> for SchemaElement {
31670 #[inline]
31671 fn from(node: CreateTable) -> SchemaElement {
31672 SchemaElement::CreateTable(node)
31673 }
31674}
31675impl From<CreateTrigger> for SchemaElement {
31676 #[inline]
31677 fn from(node: CreateTrigger) -> SchemaElement {
31678 SchemaElement::CreateTrigger(node)
31679 }
31680}
31681impl From<CreateView> for SchemaElement {
31682 #[inline]
31683 fn from(node: CreateView) -> SchemaElement {
31684 SchemaElement::CreateView(node)
31685 }
31686}
31687impl From<Grant> for SchemaElement {
31688 #[inline]
31689 fn from(node: Grant) -> SchemaElement {
31690 SchemaElement::Grant(node)
31691 }
31692}
31693impl AstNode for SelectVariant {
31694 #[inline]
31695 fn can_cast(kind: SyntaxKind) -> bool {
31696 matches!(
31697 kind,
31698 SyntaxKind::COMPOUND_SELECT
31699 | SyntaxKind::PAREN_SELECT
31700 | SyntaxKind::SELECT
31701 | SyntaxKind::SELECT_INTO
31702 | SyntaxKind::TABLE
31703 | SyntaxKind::VALUES
31704 )
31705 }
31706 #[inline]
31707 fn cast(syntax: SyntaxNode) -> Option<Self> {
31708 let res = match syntax.kind() {
31709 SyntaxKind::COMPOUND_SELECT => SelectVariant::CompoundSelect(CompoundSelect { syntax }),
31710 SyntaxKind::PAREN_SELECT => SelectVariant::ParenSelect(ParenSelect { syntax }),
31711 SyntaxKind::SELECT => SelectVariant::Select(Select { syntax }),
31712 SyntaxKind::SELECT_INTO => SelectVariant::SelectInto(SelectInto { syntax }),
31713 SyntaxKind::TABLE => SelectVariant::Table(Table { syntax }),
31714 SyntaxKind::VALUES => SelectVariant::Values(Values { syntax }),
31715 _ => {
31716 return None;
31717 }
31718 };
31719 Some(res)
31720 }
31721 #[inline]
31722 fn syntax(&self) -> &SyntaxNode {
31723 match self {
31724 SelectVariant::CompoundSelect(it) => &it.syntax,
31725 SelectVariant::ParenSelect(it) => &it.syntax,
31726 SelectVariant::Select(it) => &it.syntax,
31727 SelectVariant::SelectInto(it) => &it.syntax,
31728 SelectVariant::Table(it) => &it.syntax,
31729 SelectVariant::Values(it) => &it.syntax,
31730 }
31731 }
31732}
31733impl From<CompoundSelect> for SelectVariant {
31734 #[inline]
31735 fn from(node: CompoundSelect) -> SelectVariant {
31736 SelectVariant::CompoundSelect(node)
31737 }
31738}
31739impl From<ParenSelect> for SelectVariant {
31740 #[inline]
31741 fn from(node: ParenSelect) -> SelectVariant {
31742 SelectVariant::ParenSelect(node)
31743 }
31744}
31745impl From<Select> for SelectVariant {
31746 #[inline]
31747 fn from(node: Select) -> SelectVariant {
31748 SelectVariant::Select(node)
31749 }
31750}
31751impl From<SelectInto> for SelectVariant {
31752 #[inline]
31753 fn from(node: SelectInto) -> SelectVariant {
31754 SelectVariant::SelectInto(node)
31755 }
31756}
31757impl From<Table> for SelectVariant {
31758 #[inline]
31759 fn from(node: Table) -> SelectVariant {
31760 SelectVariant::Table(node)
31761 }
31762}
31763impl From<Values> for SelectVariant {
31764 #[inline]
31765 fn from(node: Values) -> SelectVariant {
31766 SelectVariant::Values(node)
31767 }
31768}
31769impl AstNode for SetColumn {
31770 #[inline]
31771 fn can_cast(kind: SyntaxKind) -> bool {
31772 matches!(
31773 kind,
31774 SyntaxKind::SET_MULTIPLE_COLUMNS | SyntaxKind::SET_SINGLE_COLUMN
31775 )
31776 }
31777 #[inline]
31778 fn cast(syntax: SyntaxNode) -> Option<Self> {
31779 let res = match syntax.kind() {
31780 SyntaxKind::SET_MULTIPLE_COLUMNS => {
31781 SetColumn::SetMultipleColumns(SetMultipleColumns { syntax })
31782 }
31783 SyntaxKind::SET_SINGLE_COLUMN => SetColumn::SetSingleColumn(SetSingleColumn { syntax }),
31784 _ => {
31785 return None;
31786 }
31787 };
31788 Some(res)
31789 }
31790 #[inline]
31791 fn syntax(&self) -> &SyntaxNode {
31792 match self {
31793 SetColumn::SetMultipleColumns(it) => &it.syntax,
31794 SetColumn::SetSingleColumn(it) => &it.syntax,
31795 }
31796 }
31797}
31798impl From<SetMultipleColumns> for SetColumn {
31799 #[inline]
31800 fn from(node: SetMultipleColumns) -> SetColumn {
31801 SetColumn::SetMultipleColumns(node)
31802 }
31803}
31804impl From<SetSingleColumn> for SetColumn {
31805 #[inline]
31806 fn from(node: SetSingleColumn) -> SetColumn {
31807 SetColumn::SetSingleColumn(node)
31808 }
31809}
31810impl AstNode for Stmt {
31811 #[inline]
31812 fn can_cast(kind: SyntaxKind) -> bool {
31813 matches!(
31814 kind,
31815 SyntaxKind::ALTER_AGGREGATE
31816 | SyntaxKind::ALTER_COLLATION
31817 | SyntaxKind::ALTER_CONVERSION
31818 | SyntaxKind::ALTER_DATABASE
31819 | SyntaxKind::ALTER_DEFAULT_PRIVILEGES
31820 | SyntaxKind::ALTER_DOMAIN
31821 | SyntaxKind::ALTER_EVENT_TRIGGER
31822 | SyntaxKind::ALTER_EXTENSION
31823 | SyntaxKind::ALTER_FOREIGN_DATA_WRAPPER
31824 | SyntaxKind::ALTER_FOREIGN_TABLE
31825 | SyntaxKind::ALTER_FUNCTION
31826 | SyntaxKind::ALTER_GROUP
31827 | SyntaxKind::ALTER_INDEX
31828 | SyntaxKind::ALTER_LANGUAGE
31829 | SyntaxKind::ALTER_LARGE_OBJECT
31830 | SyntaxKind::ALTER_MATERIALIZED_VIEW
31831 | SyntaxKind::ALTER_OPERATOR
31832 | SyntaxKind::ALTER_OPERATOR_CLASS
31833 | SyntaxKind::ALTER_OPERATOR_FAMILY
31834 | SyntaxKind::ALTER_POLICY
31835 | SyntaxKind::ALTER_PROCEDURE
31836 | SyntaxKind::ALTER_PUBLICATION
31837 | SyntaxKind::ALTER_ROLE
31838 | SyntaxKind::ALTER_ROUTINE
31839 | SyntaxKind::ALTER_RULE
31840 | SyntaxKind::ALTER_SCHEMA
31841 | SyntaxKind::ALTER_SEQUENCE
31842 | SyntaxKind::ALTER_SERVER
31843 | SyntaxKind::ALTER_STATISTICS
31844 | SyntaxKind::ALTER_SUBSCRIPTION
31845 | SyntaxKind::ALTER_SYSTEM
31846 | SyntaxKind::ALTER_TABLE
31847 | SyntaxKind::ALTER_TABLESPACE
31848 | SyntaxKind::ALTER_TEXT_SEARCH_CONFIGURATION
31849 | SyntaxKind::ALTER_TEXT_SEARCH_DICTIONARY
31850 | SyntaxKind::ALTER_TEXT_SEARCH_PARSER
31851 | SyntaxKind::ALTER_TEXT_SEARCH_TEMPLATE
31852 | SyntaxKind::ALTER_TRIGGER
31853 | SyntaxKind::ALTER_TYPE
31854 | SyntaxKind::ALTER_USER
31855 | SyntaxKind::ALTER_USER_MAPPING
31856 | SyntaxKind::ALTER_VIEW
31857 | SyntaxKind::ANALYZE
31858 | SyntaxKind::BEGIN
31859 | SyntaxKind::CALL
31860 | SyntaxKind::CHECKPOINT
31861 | SyntaxKind::CLOSE
31862 | SyntaxKind::CLUSTER
31863 | SyntaxKind::COMMENT_ON
31864 | SyntaxKind::COMMIT
31865 | SyntaxKind::COPY
31866 | SyntaxKind::CREATE_ACCESS_METHOD
31867 | SyntaxKind::CREATE_AGGREGATE
31868 | SyntaxKind::CREATE_CAST
31869 | SyntaxKind::CREATE_COLLATION
31870 | SyntaxKind::CREATE_CONVERSION
31871 | SyntaxKind::CREATE_DATABASE
31872 | SyntaxKind::CREATE_DOMAIN
31873 | SyntaxKind::CREATE_EVENT_TRIGGER
31874 | SyntaxKind::CREATE_EXTENSION
31875 | SyntaxKind::CREATE_FOREIGN_DATA_WRAPPER
31876 | SyntaxKind::CREATE_FOREIGN_TABLE
31877 | SyntaxKind::CREATE_FUNCTION
31878 | SyntaxKind::CREATE_GROUP
31879 | SyntaxKind::CREATE_INDEX
31880 | SyntaxKind::CREATE_LANGUAGE
31881 | SyntaxKind::CREATE_MATERIALIZED_VIEW
31882 | SyntaxKind::CREATE_OPERATOR
31883 | SyntaxKind::CREATE_OPERATOR_CLASS
31884 | SyntaxKind::CREATE_OPERATOR_FAMILY
31885 | SyntaxKind::CREATE_POLICY
31886 | SyntaxKind::CREATE_PROCEDURE
31887 | SyntaxKind::CREATE_PUBLICATION
31888 | SyntaxKind::CREATE_ROLE
31889 | SyntaxKind::CREATE_RULE
31890 | SyntaxKind::CREATE_SCHEMA
31891 | SyntaxKind::CREATE_SEQUENCE
31892 | SyntaxKind::CREATE_SERVER
31893 | SyntaxKind::CREATE_STATISTICS
31894 | SyntaxKind::CREATE_SUBSCRIPTION
31895 | SyntaxKind::CREATE_TABLE
31896 | SyntaxKind::CREATE_TABLE_AS
31897 | SyntaxKind::CREATE_TABLESPACE
31898 | SyntaxKind::CREATE_TEXT_SEARCH_CONFIGURATION
31899 | SyntaxKind::CREATE_TEXT_SEARCH_DICTIONARY
31900 | SyntaxKind::CREATE_TEXT_SEARCH_PARSER
31901 | SyntaxKind::CREATE_TEXT_SEARCH_TEMPLATE
31902 | SyntaxKind::CREATE_TRANSFORM
31903 | SyntaxKind::CREATE_TRIGGER
31904 | SyntaxKind::CREATE_TYPE
31905 | SyntaxKind::CREATE_USER
31906 | SyntaxKind::CREATE_USER_MAPPING
31907 | SyntaxKind::CREATE_VIEW
31908 | SyntaxKind::DEALLOCATE
31909 | SyntaxKind::DECLARE
31910 | SyntaxKind::DELETE
31911 | SyntaxKind::DISCARD
31912 | SyntaxKind::DO
31913 | SyntaxKind::DROP_ACCESS_METHOD
31914 | SyntaxKind::DROP_AGGREGATE
31915 | SyntaxKind::DROP_CAST
31916 | SyntaxKind::DROP_COLLATION
31917 | SyntaxKind::DROP_CONVERSION
31918 | SyntaxKind::DROP_DATABASE
31919 | SyntaxKind::DROP_DOMAIN
31920 | SyntaxKind::DROP_EVENT_TRIGGER
31921 | SyntaxKind::DROP_EXTENSION
31922 | SyntaxKind::DROP_FOREIGN_DATA_WRAPPER
31923 | SyntaxKind::DROP_FOREIGN_TABLE
31924 | SyntaxKind::DROP_FUNCTION
31925 | SyntaxKind::DROP_GROUP
31926 | SyntaxKind::DROP_INDEX
31927 | SyntaxKind::DROP_LANGUAGE
31928 | SyntaxKind::DROP_MATERIALIZED_VIEW
31929 | SyntaxKind::DROP_OPERATOR
31930 | SyntaxKind::DROP_OPERATOR_CLASS
31931 | SyntaxKind::DROP_OPERATOR_FAMILY
31932 | SyntaxKind::DROP_OWNED
31933 | SyntaxKind::DROP_POLICY
31934 | SyntaxKind::DROP_PROCEDURE
31935 | SyntaxKind::DROP_PUBLICATION
31936 | SyntaxKind::DROP_ROLE
31937 | SyntaxKind::DROP_ROUTINE
31938 | SyntaxKind::DROP_RULE
31939 | SyntaxKind::DROP_SCHEMA
31940 | SyntaxKind::DROP_SEQUENCE
31941 | SyntaxKind::DROP_SERVER
31942 | SyntaxKind::DROP_STATISTICS
31943 | SyntaxKind::DROP_SUBSCRIPTION
31944 | SyntaxKind::DROP_TABLE
31945 | SyntaxKind::DROP_TABLESPACE
31946 | SyntaxKind::DROP_TEXT_SEARCH_CONFIG
31947 | SyntaxKind::DROP_TEXT_SEARCH_DICT
31948 | SyntaxKind::DROP_TEXT_SEARCH_PARSER
31949 | SyntaxKind::DROP_TEXT_SEARCH_TEMPLATE
31950 | SyntaxKind::DROP_TRANSFORM
31951 | SyntaxKind::DROP_TRIGGER
31952 | SyntaxKind::DROP_TYPE
31953 | SyntaxKind::DROP_USER
31954 | SyntaxKind::DROP_USER_MAPPING
31955 | SyntaxKind::DROP_VIEW
31956 | SyntaxKind::EXECUTE
31957 | SyntaxKind::EXPLAIN
31958 | SyntaxKind::FETCH
31959 | SyntaxKind::GRANT
31960 | SyntaxKind::IMPORT_FOREIGN_SCHEMA
31961 | SyntaxKind::INSERT
31962 | SyntaxKind::LISTEN
31963 | SyntaxKind::LOAD
31964 | SyntaxKind::LOCK
31965 | SyntaxKind::MERGE
31966 | SyntaxKind::MOVE
31967 | SyntaxKind::NOTIFY
31968 | SyntaxKind::PAREN_SELECT
31969 | SyntaxKind::PREPARE
31970 | SyntaxKind::PREPARE_TRANSACTION
31971 | SyntaxKind::REASSIGN
31972 | SyntaxKind::REFRESH
31973 | SyntaxKind::REINDEX
31974 | SyntaxKind::RELEASE_SAVEPOINT
31975 | SyntaxKind::RESET
31976 | SyntaxKind::RESET_SESSION_AUTH
31977 | SyntaxKind::REVOKE
31978 | SyntaxKind::ROLLBACK
31979 | SyntaxKind::SAVEPOINT
31980 | SyntaxKind::SECURITY_LABEL
31981 | SyntaxKind::SELECT
31982 | SyntaxKind::SELECT_INTO
31983 | SyntaxKind::SET
31984 | SyntaxKind::SET_CONSTRAINTS
31985 | SyntaxKind::SET_ROLE
31986 | SyntaxKind::SET_SESSION_AUTH
31987 | SyntaxKind::SET_TRANSACTION
31988 | SyntaxKind::SHOW
31989 | SyntaxKind::TABLE
31990 | SyntaxKind::TRUNCATE
31991 | SyntaxKind::UNLISTEN
31992 | SyntaxKind::UPDATE
31993 | SyntaxKind::VACUUM
31994 | SyntaxKind::VALUES
31995 )
31996 }
31997 #[inline]
31998 fn cast(syntax: SyntaxNode) -> Option<Self> {
31999 let res = match syntax.kind() {
32000 SyntaxKind::ALTER_AGGREGATE => Stmt::AlterAggregate(AlterAggregate { syntax }),
32001 SyntaxKind::ALTER_COLLATION => Stmt::AlterCollation(AlterCollation { syntax }),
32002 SyntaxKind::ALTER_CONVERSION => Stmt::AlterConversion(AlterConversion { syntax }),
32003 SyntaxKind::ALTER_DATABASE => Stmt::AlterDatabase(AlterDatabase { syntax }),
32004 SyntaxKind::ALTER_DEFAULT_PRIVILEGES => {
32005 Stmt::AlterDefaultPrivileges(AlterDefaultPrivileges { syntax })
32006 }
32007 SyntaxKind::ALTER_DOMAIN => Stmt::AlterDomain(AlterDomain { syntax }),
32008 SyntaxKind::ALTER_EVENT_TRIGGER => {
32009 Stmt::AlterEventTrigger(AlterEventTrigger { syntax })
32010 }
32011 SyntaxKind::ALTER_EXTENSION => Stmt::AlterExtension(AlterExtension { syntax }),
32012 SyntaxKind::ALTER_FOREIGN_DATA_WRAPPER => {
32013 Stmt::AlterForeignDataWrapper(AlterForeignDataWrapper { syntax })
32014 }
32015 SyntaxKind::ALTER_FOREIGN_TABLE => {
32016 Stmt::AlterForeignTable(AlterForeignTable { syntax })
32017 }
32018 SyntaxKind::ALTER_FUNCTION => Stmt::AlterFunction(AlterFunction { syntax }),
32019 SyntaxKind::ALTER_GROUP => Stmt::AlterGroup(AlterGroup { syntax }),
32020 SyntaxKind::ALTER_INDEX => Stmt::AlterIndex(AlterIndex { syntax }),
32021 SyntaxKind::ALTER_LANGUAGE => Stmt::AlterLanguage(AlterLanguage { syntax }),
32022 SyntaxKind::ALTER_LARGE_OBJECT => Stmt::AlterLargeObject(AlterLargeObject { syntax }),
32023 SyntaxKind::ALTER_MATERIALIZED_VIEW => {
32024 Stmt::AlterMaterializedView(AlterMaterializedView { syntax })
32025 }
32026 SyntaxKind::ALTER_OPERATOR => Stmt::AlterOperator(AlterOperator { syntax }),
32027 SyntaxKind::ALTER_OPERATOR_CLASS => {
32028 Stmt::AlterOperatorClass(AlterOperatorClass { syntax })
32029 }
32030 SyntaxKind::ALTER_OPERATOR_FAMILY => {
32031 Stmt::AlterOperatorFamily(AlterOperatorFamily { syntax })
32032 }
32033 SyntaxKind::ALTER_POLICY => Stmt::AlterPolicy(AlterPolicy { syntax }),
32034 SyntaxKind::ALTER_PROCEDURE => Stmt::AlterProcedure(AlterProcedure { syntax }),
32035 SyntaxKind::ALTER_PUBLICATION => Stmt::AlterPublication(AlterPublication { syntax }),
32036 SyntaxKind::ALTER_ROLE => Stmt::AlterRole(AlterRole { syntax }),
32037 SyntaxKind::ALTER_ROUTINE => Stmt::AlterRoutine(AlterRoutine { syntax }),
32038 SyntaxKind::ALTER_RULE => Stmt::AlterRule(AlterRule { syntax }),
32039 SyntaxKind::ALTER_SCHEMA => Stmt::AlterSchema(AlterSchema { syntax }),
32040 SyntaxKind::ALTER_SEQUENCE => Stmt::AlterSequence(AlterSequence { syntax }),
32041 SyntaxKind::ALTER_SERVER => Stmt::AlterServer(AlterServer { syntax }),
32042 SyntaxKind::ALTER_STATISTICS => Stmt::AlterStatistics(AlterStatistics { syntax }),
32043 SyntaxKind::ALTER_SUBSCRIPTION => Stmt::AlterSubscription(AlterSubscription { syntax }),
32044 SyntaxKind::ALTER_SYSTEM => Stmt::AlterSystem(AlterSystem { syntax }),
32045 SyntaxKind::ALTER_TABLE => Stmt::AlterTable(AlterTable { syntax }),
32046 SyntaxKind::ALTER_TABLESPACE => Stmt::AlterTablespace(AlterTablespace { syntax }),
32047 SyntaxKind::ALTER_TEXT_SEARCH_CONFIGURATION => {
32048 Stmt::AlterTextSearchConfiguration(AlterTextSearchConfiguration { syntax })
32049 }
32050 SyntaxKind::ALTER_TEXT_SEARCH_DICTIONARY => {
32051 Stmt::AlterTextSearchDictionary(AlterTextSearchDictionary { syntax })
32052 }
32053 SyntaxKind::ALTER_TEXT_SEARCH_PARSER => {
32054 Stmt::AlterTextSearchParser(AlterTextSearchParser { syntax })
32055 }
32056 SyntaxKind::ALTER_TEXT_SEARCH_TEMPLATE => {
32057 Stmt::AlterTextSearchTemplate(AlterTextSearchTemplate { syntax })
32058 }
32059 SyntaxKind::ALTER_TRIGGER => Stmt::AlterTrigger(AlterTrigger { syntax }),
32060 SyntaxKind::ALTER_TYPE => Stmt::AlterType(AlterType { syntax }),
32061 SyntaxKind::ALTER_USER => Stmt::AlterUser(AlterUser { syntax }),
32062 SyntaxKind::ALTER_USER_MAPPING => Stmt::AlterUserMapping(AlterUserMapping { syntax }),
32063 SyntaxKind::ALTER_VIEW => Stmt::AlterView(AlterView { syntax }),
32064 SyntaxKind::ANALYZE => Stmt::Analyze(Analyze { syntax }),
32065 SyntaxKind::BEGIN => Stmt::Begin(Begin { syntax }),
32066 SyntaxKind::CALL => Stmt::Call(Call { syntax }),
32067 SyntaxKind::CHECKPOINT => Stmt::Checkpoint(Checkpoint { syntax }),
32068 SyntaxKind::CLOSE => Stmt::Close(Close { syntax }),
32069 SyntaxKind::CLUSTER => Stmt::Cluster(Cluster { syntax }),
32070 SyntaxKind::COMMENT_ON => Stmt::CommentOn(CommentOn { syntax }),
32071 SyntaxKind::COMMIT => Stmt::Commit(Commit { syntax }),
32072 SyntaxKind::COPY => Stmt::Copy(Copy { syntax }),
32073 SyntaxKind::CREATE_ACCESS_METHOD => {
32074 Stmt::CreateAccessMethod(CreateAccessMethod { syntax })
32075 }
32076 SyntaxKind::CREATE_AGGREGATE => Stmt::CreateAggregate(CreateAggregate { syntax }),
32077 SyntaxKind::CREATE_CAST => Stmt::CreateCast(CreateCast { syntax }),
32078 SyntaxKind::CREATE_COLLATION => Stmt::CreateCollation(CreateCollation { syntax }),
32079 SyntaxKind::CREATE_CONVERSION => Stmt::CreateConversion(CreateConversion { syntax }),
32080 SyntaxKind::CREATE_DATABASE => Stmt::CreateDatabase(CreateDatabase { syntax }),
32081 SyntaxKind::CREATE_DOMAIN => Stmt::CreateDomain(CreateDomain { syntax }),
32082 SyntaxKind::CREATE_EVENT_TRIGGER => {
32083 Stmt::CreateEventTrigger(CreateEventTrigger { syntax })
32084 }
32085 SyntaxKind::CREATE_EXTENSION => Stmt::CreateExtension(CreateExtension { syntax }),
32086 SyntaxKind::CREATE_FOREIGN_DATA_WRAPPER => {
32087 Stmt::CreateForeignDataWrapper(CreateForeignDataWrapper { syntax })
32088 }
32089 SyntaxKind::CREATE_FOREIGN_TABLE => {
32090 Stmt::CreateForeignTable(CreateForeignTable { syntax })
32091 }
32092 SyntaxKind::CREATE_FUNCTION => Stmt::CreateFunction(CreateFunction { syntax }),
32093 SyntaxKind::CREATE_GROUP => Stmt::CreateGroup(CreateGroup { syntax }),
32094 SyntaxKind::CREATE_INDEX => Stmt::CreateIndex(CreateIndex { syntax }),
32095 SyntaxKind::CREATE_LANGUAGE => Stmt::CreateLanguage(CreateLanguage { syntax }),
32096 SyntaxKind::CREATE_MATERIALIZED_VIEW => {
32097 Stmt::CreateMaterializedView(CreateMaterializedView { syntax })
32098 }
32099 SyntaxKind::CREATE_OPERATOR => Stmt::CreateOperator(CreateOperator { syntax }),
32100 SyntaxKind::CREATE_OPERATOR_CLASS => {
32101 Stmt::CreateOperatorClass(CreateOperatorClass { syntax })
32102 }
32103 SyntaxKind::CREATE_OPERATOR_FAMILY => {
32104 Stmt::CreateOperatorFamily(CreateOperatorFamily { syntax })
32105 }
32106 SyntaxKind::CREATE_POLICY => Stmt::CreatePolicy(CreatePolicy { syntax }),
32107 SyntaxKind::CREATE_PROCEDURE => Stmt::CreateProcedure(CreateProcedure { syntax }),
32108 SyntaxKind::CREATE_PUBLICATION => Stmt::CreatePublication(CreatePublication { syntax }),
32109 SyntaxKind::CREATE_ROLE => Stmt::CreateRole(CreateRole { syntax }),
32110 SyntaxKind::CREATE_RULE => Stmt::CreateRule(CreateRule { syntax }),
32111 SyntaxKind::CREATE_SCHEMA => Stmt::CreateSchema(CreateSchema { syntax }),
32112 SyntaxKind::CREATE_SEQUENCE => Stmt::CreateSequence(CreateSequence { syntax }),
32113 SyntaxKind::CREATE_SERVER => Stmt::CreateServer(CreateServer { syntax }),
32114 SyntaxKind::CREATE_STATISTICS => Stmt::CreateStatistics(CreateStatistics { syntax }),
32115 SyntaxKind::CREATE_SUBSCRIPTION => {
32116 Stmt::CreateSubscription(CreateSubscription { syntax })
32117 }
32118 SyntaxKind::CREATE_TABLE => Stmt::CreateTable(CreateTable { syntax }),
32119 SyntaxKind::CREATE_TABLE_AS => Stmt::CreateTableAs(CreateTableAs { syntax }),
32120 SyntaxKind::CREATE_TABLESPACE => Stmt::CreateTablespace(CreateTablespace { syntax }),
32121 SyntaxKind::CREATE_TEXT_SEARCH_CONFIGURATION => {
32122 Stmt::CreateTextSearchConfiguration(CreateTextSearchConfiguration { syntax })
32123 }
32124 SyntaxKind::CREATE_TEXT_SEARCH_DICTIONARY => {
32125 Stmt::CreateTextSearchDictionary(CreateTextSearchDictionary { syntax })
32126 }
32127 SyntaxKind::CREATE_TEXT_SEARCH_PARSER => {
32128 Stmt::CreateTextSearchParser(CreateTextSearchParser { syntax })
32129 }
32130 SyntaxKind::CREATE_TEXT_SEARCH_TEMPLATE => {
32131 Stmt::CreateTextSearchTemplate(CreateTextSearchTemplate { syntax })
32132 }
32133 SyntaxKind::CREATE_TRANSFORM => Stmt::CreateTransform(CreateTransform { syntax }),
32134 SyntaxKind::CREATE_TRIGGER => Stmt::CreateTrigger(CreateTrigger { syntax }),
32135 SyntaxKind::CREATE_TYPE => Stmt::CreateType(CreateType { syntax }),
32136 SyntaxKind::CREATE_USER => Stmt::CreateUser(CreateUser { syntax }),
32137 SyntaxKind::CREATE_USER_MAPPING => {
32138 Stmt::CreateUserMapping(CreateUserMapping { syntax })
32139 }
32140 SyntaxKind::CREATE_VIEW => Stmt::CreateView(CreateView { syntax }),
32141 SyntaxKind::DEALLOCATE => Stmt::Deallocate(Deallocate { syntax }),
32142 SyntaxKind::DECLARE => Stmt::Declare(Declare { syntax }),
32143 SyntaxKind::DELETE => Stmt::Delete(Delete { syntax }),
32144 SyntaxKind::DISCARD => Stmt::Discard(Discard { syntax }),
32145 SyntaxKind::DO => Stmt::Do(Do { syntax }),
32146 SyntaxKind::DROP_ACCESS_METHOD => Stmt::DropAccessMethod(DropAccessMethod { syntax }),
32147 SyntaxKind::DROP_AGGREGATE => Stmt::DropAggregate(DropAggregate { syntax }),
32148 SyntaxKind::DROP_CAST => Stmt::DropCast(DropCast { syntax }),
32149 SyntaxKind::DROP_COLLATION => Stmt::DropCollation(DropCollation { syntax }),
32150 SyntaxKind::DROP_CONVERSION => Stmt::DropConversion(DropConversion { syntax }),
32151 SyntaxKind::DROP_DATABASE => Stmt::DropDatabase(DropDatabase { syntax }),
32152 SyntaxKind::DROP_DOMAIN => Stmt::DropDomain(DropDomain { syntax }),
32153 SyntaxKind::DROP_EVENT_TRIGGER => Stmt::DropEventTrigger(DropEventTrigger { syntax }),
32154 SyntaxKind::DROP_EXTENSION => Stmt::DropExtension(DropExtension { syntax }),
32155 SyntaxKind::DROP_FOREIGN_DATA_WRAPPER => {
32156 Stmt::DropForeignDataWrapper(DropForeignDataWrapper { syntax })
32157 }
32158 SyntaxKind::DROP_FOREIGN_TABLE => Stmt::DropForeignTable(DropForeignTable { syntax }),
32159 SyntaxKind::DROP_FUNCTION => Stmt::DropFunction(DropFunction { syntax }),
32160 SyntaxKind::DROP_GROUP => Stmt::DropGroup(DropGroup { syntax }),
32161 SyntaxKind::DROP_INDEX => Stmt::DropIndex(DropIndex { syntax }),
32162 SyntaxKind::DROP_LANGUAGE => Stmt::DropLanguage(DropLanguage { syntax }),
32163 SyntaxKind::DROP_MATERIALIZED_VIEW => {
32164 Stmt::DropMaterializedView(DropMaterializedView { syntax })
32165 }
32166 SyntaxKind::DROP_OPERATOR => Stmt::DropOperator(DropOperator { syntax }),
32167 SyntaxKind::DROP_OPERATOR_CLASS => {
32168 Stmt::DropOperatorClass(DropOperatorClass { syntax })
32169 }
32170 SyntaxKind::DROP_OPERATOR_FAMILY => {
32171 Stmt::DropOperatorFamily(DropOperatorFamily { syntax })
32172 }
32173 SyntaxKind::DROP_OWNED => Stmt::DropOwned(DropOwned { syntax }),
32174 SyntaxKind::DROP_POLICY => Stmt::DropPolicy(DropPolicy { syntax }),
32175 SyntaxKind::DROP_PROCEDURE => Stmt::DropProcedure(DropProcedure { syntax }),
32176 SyntaxKind::DROP_PUBLICATION => Stmt::DropPublication(DropPublication { syntax }),
32177 SyntaxKind::DROP_ROLE => Stmt::DropRole(DropRole { syntax }),
32178 SyntaxKind::DROP_ROUTINE => Stmt::DropRoutine(DropRoutine { syntax }),
32179 SyntaxKind::DROP_RULE => Stmt::DropRule(DropRule { syntax }),
32180 SyntaxKind::DROP_SCHEMA => Stmt::DropSchema(DropSchema { syntax }),
32181 SyntaxKind::DROP_SEQUENCE => Stmt::DropSequence(DropSequence { syntax }),
32182 SyntaxKind::DROP_SERVER => Stmt::DropServer(DropServer { syntax }),
32183 SyntaxKind::DROP_STATISTICS => Stmt::DropStatistics(DropStatistics { syntax }),
32184 SyntaxKind::DROP_SUBSCRIPTION => Stmt::DropSubscription(DropSubscription { syntax }),
32185 SyntaxKind::DROP_TABLE => Stmt::DropTable(DropTable { syntax }),
32186 SyntaxKind::DROP_TABLESPACE => Stmt::DropTablespace(DropTablespace { syntax }),
32187 SyntaxKind::DROP_TEXT_SEARCH_CONFIG => {
32188 Stmt::DropTextSearchConfig(DropTextSearchConfig { syntax })
32189 }
32190 SyntaxKind::DROP_TEXT_SEARCH_DICT => {
32191 Stmt::DropTextSearchDict(DropTextSearchDict { syntax })
32192 }
32193 SyntaxKind::DROP_TEXT_SEARCH_PARSER => {
32194 Stmt::DropTextSearchParser(DropTextSearchParser { syntax })
32195 }
32196 SyntaxKind::DROP_TEXT_SEARCH_TEMPLATE => {
32197 Stmt::DropTextSearchTemplate(DropTextSearchTemplate { syntax })
32198 }
32199 SyntaxKind::DROP_TRANSFORM => Stmt::DropTransform(DropTransform { syntax }),
32200 SyntaxKind::DROP_TRIGGER => Stmt::DropTrigger(DropTrigger { syntax }),
32201 SyntaxKind::DROP_TYPE => Stmt::DropType(DropType { syntax }),
32202 SyntaxKind::DROP_USER => Stmt::DropUser(DropUser { syntax }),
32203 SyntaxKind::DROP_USER_MAPPING => Stmt::DropUserMapping(DropUserMapping { syntax }),
32204 SyntaxKind::DROP_VIEW => Stmt::DropView(DropView { syntax }),
32205 SyntaxKind::EXECUTE => Stmt::Execute(Execute { syntax }),
32206 SyntaxKind::EXPLAIN => Stmt::Explain(Explain { syntax }),
32207 SyntaxKind::FETCH => Stmt::Fetch(Fetch { syntax }),
32208 SyntaxKind::GRANT => Stmt::Grant(Grant { syntax }),
32209 SyntaxKind::IMPORT_FOREIGN_SCHEMA => {
32210 Stmt::ImportForeignSchema(ImportForeignSchema { syntax })
32211 }
32212 SyntaxKind::INSERT => Stmt::Insert(Insert { syntax }),
32213 SyntaxKind::LISTEN => Stmt::Listen(Listen { syntax }),
32214 SyntaxKind::LOAD => Stmt::Load(Load { syntax }),
32215 SyntaxKind::LOCK => Stmt::Lock(Lock { syntax }),
32216 SyntaxKind::MERGE => Stmt::Merge(Merge { syntax }),
32217 SyntaxKind::MOVE => Stmt::Move(Move { syntax }),
32218 SyntaxKind::NOTIFY => Stmt::Notify(Notify { syntax }),
32219 SyntaxKind::PAREN_SELECT => Stmt::ParenSelect(ParenSelect { syntax }),
32220 SyntaxKind::PREPARE => Stmt::Prepare(Prepare { syntax }),
32221 SyntaxKind::PREPARE_TRANSACTION => {
32222 Stmt::PrepareTransaction(PrepareTransaction { syntax })
32223 }
32224 SyntaxKind::REASSIGN => Stmt::Reassign(Reassign { syntax }),
32225 SyntaxKind::REFRESH => Stmt::Refresh(Refresh { syntax }),
32226 SyntaxKind::REINDEX => Stmt::Reindex(Reindex { syntax }),
32227 SyntaxKind::RELEASE_SAVEPOINT => Stmt::ReleaseSavepoint(ReleaseSavepoint { syntax }),
32228 SyntaxKind::RESET => Stmt::Reset(Reset { syntax }),
32229 SyntaxKind::RESET_SESSION_AUTH => Stmt::ResetSessionAuth(ResetSessionAuth { syntax }),
32230 SyntaxKind::REVOKE => Stmt::Revoke(Revoke { syntax }),
32231 SyntaxKind::ROLLBACK => Stmt::Rollback(Rollback { syntax }),
32232 SyntaxKind::SAVEPOINT => Stmt::Savepoint(Savepoint { syntax }),
32233 SyntaxKind::SECURITY_LABEL => Stmt::SecurityLabel(SecurityLabel { syntax }),
32234 SyntaxKind::SELECT => Stmt::Select(Select { syntax }),
32235 SyntaxKind::SELECT_INTO => Stmt::SelectInto(SelectInto { syntax }),
32236 SyntaxKind::SET => Stmt::Set(Set { syntax }),
32237 SyntaxKind::SET_CONSTRAINTS => Stmt::SetConstraints(SetConstraints { syntax }),
32238 SyntaxKind::SET_ROLE => Stmt::SetRole(SetRole { syntax }),
32239 SyntaxKind::SET_SESSION_AUTH => Stmt::SetSessionAuth(SetSessionAuth { syntax }),
32240 SyntaxKind::SET_TRANSACTION => Stmt::SetTransaction(SetTransaction { syntax }),
32241 SyntaxKind::SHOW => Stmt::Show(Show { syntax }),
32242 SyntaxKind::TABLE => Stmt::Table(Table { syntax }),
32243 SyntaxKind::TRUNCATE => Stmt::Truncate(Truncate { syntax }),
32244 SyntaxKind::UNLISTEN => Stmt::Unlisten(Unlisten { syntax }),
32245 SyntaxKind::UPDATE => Stmt::Update(Update { syntax }),
32246 SyntaxKind::VACUUM => Stmt::Vacuum(Vacuum { syntax }),
32247 SyntaxKind::VALUES => Stmt::Values(Values { syntax }),
32248 _ => {
32249 return None;
32250 }
32251 };
32252 Some(res)
32253 }
32254 #[inline]
32255 fn syntax(&self) -> &SyntaxNode {
32256 match self {
32257 Stmt::AlterAggregate(it) => &it.syntax,
32258 Stmt::AlterCollation(it) => &it.syntax,
32259 Stmt::AlterConversion(it) => &it.syntax,
32260 Stmt::AlterDatabase(it) => &it.syntax,
32261 Stmt::AlterDefaultPrivileges(it) => &it.syntax,
32262 Stmt::AlterDomain(it) => &it.syntax,
32263 Stmt::AlterEventTrigger(it) => &it.syntax,
32264 Stmt::AlterExtension(it) => &it.syntax,
32265 Stmt::AlterForeignDataWrapper(it) => &it.syntax,
32266 Stmt::AlterForeignTable(it) => &it.syntax,
32267 Stmt::AlterFunction(it) => &it.syntax,
32268 Stmt::AlterGroup(it) => &it.syntax,
32269 Stmt::AlterIndex(it) => &it.syntax,
32270 Stmt::AlterLanguage(it) => &it.syntax,
32271 Stmt::AlterLargeObject(it) => &it.syntax,
32272 Stmt::AlterMaterializedView(it) => &it.syntax,
32273 Stmt::AlterOperator(it) => &it.syntax,
32274 Stmt::AlterOperatorClass(it) => &it.syntax,
32275 Stmt::AlterOperatorFamily(it) => &it.syntax,
32276 Stmt::AlterPolicy(it) => &it.syntax,
32277 Stmt::AlterProcedure(it) => &it.syntax,
32278 Stmt::AlterPublication(it) => &it.syntax,
32279 Stmt::AlterRole(it) => &it.syntax,
32280 Stmt::AlterRoutine(it) => &it.syntax,
32281 Stmt::AlterRule(it) => &it.syntax,
32282 Stmt::AlterSchema(it) => &it.syntax,
32283 Stmt::AlterSequence(it) => &it.syntax,
32284 Stmt::AlterServer(it) => &it.syntax,
32285 Stmt::AlterStatistics(it) => &it.syntax,
32286 Stmt::AlterSubscription(it) => &it.syntax,
32287 Stmt::AlterSystem(it) => &it.syntax,
32288 Stmt::AlterTable(it) => &it.syntax,
32289 Stmt::AlterTablespace(it) => &it.syntax,
32290 Stmt::AlterTextSearchConfiguration(it) => &it.syntax,
32291 Stmt::AlterTextSearchDictionary(it) => &it.syntax,
32292 Stmt::AlterTextSearchParser(it) => &it.syntax,
32293 Stmt::AlterTextSearchTemplate(it) => &it.syntax,
32294 Stmt::AlterTrigger(it) => &it.syntax,
32295 Stmt::AlterType(it) => &it.syntax,
32296 Stmt::AlterUser(it) => &it.syntax,
32297 Stmt::AlterUserMapping(it) => &it.syntax,
32298 Stmt::AlterView(it) => &it.syntax,
32299 Stmt::Analyze(it) => &it.syntax,
32300 Stmt::Begin(it) => &it.syntax,
32301 Stmt::Call(it) => &it.syntax,
32302 Stmt::Checkpoint(it) => &it.syntax,
32303 Stmt::Close(it) => &it.syntax,
32304 Stmt::Cluster(it) => &it.syntax,
32305 Stmt::CommentOn(it) => &it.syntax,
32306 Stmt::Commit(it) => &it.syntax,
32307 Stmt::Copy(it) => &it.syntax,
32308 Stmt::CreateAccessMethod(it) => &it.syntax,
32309 Stmt::CreateAggregate(it) => &it.syntax,
32310 Stmt::CreateCast(it) => &it.syntax,
32311 Stmt::CreateCollation(it) => &it.syntax,
32312 Stmt::CreateConversion(it) => &it.syntax,
32313 Stmt::CreateDatabase(it) => &it.syntax,
32314 Stmt::CreateDomain(it) => &it.syntax,
32315 Stmt::CreateEventTrigger(it) => &it.syntax,
32316 Stmt::CreateExtension(it) => &it.syntax,
32317 Stmt::CreateForeignDataWrapper(it) => &it.syntax,
32318 Stmt::CreateForeignTable(it) => &it.syntax,
32319 Stmt::CreateFunction(it) => &it.syntax,
32320 Stmt::CreateGroup(it) => &it.syntax,
32321 Stmt::CreateIndex(it) => &it.syntax,
32322 Stmt::CreateLanguage(it) => &it.syntax,
32323 Stmt::CreateMaterializedView(it) => &it.syntax,
32324 Stmt::CreateOperator(it) => &it.syntax,
32325 Stmt::CreateOperatorClass(it) => &it.syntax,
32326 Stmt::CreateOperatorFamily(it) => &it.syntax,
32327 Stmt::CreatePolicy(it) => &it.syntax,
32328 Stmt::CreateProcedure(it) => &it.syntax,
32329 Stmt::CreatePublication(it) => &it.syntax,
32330 Stmt::CreateRole(it) => &it.syntax,
32331 Stmt::CreateRule(it) => &it.syntax,
32332 Stmt::CreateSchema(it) => &it.syntax,
32333 Stmt::CreateSequence(it) => &it.syntax,
32334 Stmt::CreateServer(it) => &it.syntax,
32335 Stmt::CreateStatistics(it) => &it.syntax,
32336 Stmt::CreateSubscription(it) => &it.syntax,
32337 Stmt::CreateTable(it) => &it.syntax,
32338 Stmt::CreateTableAs(it) => &it.syntax,
32339 Stmt::CreateTablespace(it) => &it.syntax,
32340 Stmt::CreateTextSearchConfiguration(it) => &it.syntax,
32341 Stmt::CreateTextSearchDictionary(it) => &it.syntax,
32342 Stmt::CreateTextSearchParser(it) => &it.syntax,
32343 Stmt::CreateTextSearchTemplate(it) => &it.syntax,
32344 Stmt::CreateTransform(it) => &it.syntax,
32345 Stmt::CreateTrigger(it) => &it.syntax,
32346 Stmt::CreateType(it) => &it.syntax,
32347 Stmt::CreateUser(it) => &it.syntax,
32348 Stmt::CreateUserMapping(it) => &it.syntax,
32349 Stmt::CreateView(it) => &it.syntax,
32350 Stmt::Deallocate(it) => &it.syntax,
32351 Stmt::Declare(it) => &it.syntax,
32352 Stmt::Delete(it) => &it.syntax,
32353 Stmt::Discard(it) => &it.syntax,
32354 Stmt::Do(it) => &it.syntax,
32355 Stmt::DropAccessMethod(it) => &it.syntax,
32356 Stmt::DropAggregate(it) => &it.syntax,
32357 Stmt::DropCast(it) => &it.syntax,
32358 Stmt::DropCollation(it) => &it.syntax,
32359 Stmt::DropConversion(it) => &it.syntax,
32360 Stmt::DropDatabase(it) => &it.syntax,
32361 Stmt::DropDomain(it) => &it.syntax,
32362 Stmt::DropEventTrigger(it) => &it.syntax,
32363 Stmt::DropExtension(it) => &it.syntax,
32364 Stmt::DropForeignDataWrapper(it) => &it.syntax,
32365 Stmt::DropForeignTable(it) => &it.syntax,
32366 Stmt::DropFunction(it) => &it.syntax,
32367 Stmt::DropGroup(it) => &it.syntax,
32368 Stmt::DropIndex(it) => &it.syntax,
32369 Stmt::DropLanguage(it) => &it.syntax,
32370 Stmt::DropMaterializedView(it) => &it.syntax,
32371 Stmt::DropOperator(it) => &it.syntax,
32372 Stmt::DropOperatorClass(it) => &it.syntax,
32373 Stmt::DropOperatorFamily(it) => &it.syntax,
32374 Stmt::DropOwned(it) => &it.syntax,
32375 Stmt::DropPolicy(it) => &it.syntax,
32376 Stmt::DropProcedure(it) => &it.syntax,
32377 Stmt::DropPublication(it) => &it.syntax,
32378 Stmt::DropRole(it) => &it.syntax,
32379 Stmt::DropRoutine(it) => &it.syntax,
32380 Stmt::DropRule(it) => &it.syntax,
32381 Stmt::DropSchema(it) => &it.syntax,
32382 Stmt::DropSequence(it) => &it.syntax,
32383 Stmt::DropServer(it) => &it.syntax,
32384 Stmt::DropStatistics(it) => &it.syntax,
32385 Stmt::DropSubscription(it) => &it.syntax,
32386 Stmt::DropTable(it) => &it.syntax,
32387 Stmt::DropTablespace(it) => &it.syntax,
32388 Stmt::DropTextSearchConfig(it) => &it.syntax,
32389 Stmt::DropTextSearchDict(it) => &it.syntax,
32390 Stmt::DropTextSearchParser(it) => &it.syntax,
32391 Stmt::DropTextSearchTemplate(it) => &it.syntax,
32392 Stmt::DropTransform(it) => &it.syntax,
32393 Stmt::DropTrigger(it) => &it.syntax,
32394 Stmt::DropType(it) => &it.syntax,
32395 Stmt::DropUser(it) => &it.syntax,
32396 Stmt::DropUserMapping(it) => &it.syntax,
32397 Stmt::DropView(it) => &it.syntax,
32398 Stmt::Execute(it) => &it.syntax,
32399 Stmt::Explain(it) => &it.syntax,
32400 Stmt::Fetch(it) => &it.syntax,
32401 Stmt::Grant(it) => &it.syntax,
32402 Stmt::ImportForeignSchema(it) => &it.syntax,
32403 Stmt::Insert(it) => &it.syntax,
32404 Stmt::Listen(it) => &it.syntax,
32405 Stmt::Load(it) => &it.syntax,
32406 Stmt::Lock(it) => &it.syntax,
32407 Stmt::Merge(it) => &it.syntax,
32408 Stmt::Move(it) => &it.syntax,
32409 Stmt::Notify(it) => &it.syntax,
32410 Stmt::ParenSelect(it) => &it.syntax,
32411 Stmt::Prepare(it) => &it.syntax,
32412 Stmt::PrepareTransaction(it) => &it.syntax,
32413 Stmt::Reassign(it) => &it.syntax,
32414 Stmt::Refresh(it) => &it.syntax,
32415 Stmt::Reindex(it) => &it.syntax,
32416 Stmt::ReleaseSavepoint(it) => &it.syntax,
32417 Stmt::Reset(it) => &it.syntax,
32418 Stmt::ResetSessionAuth(it) => &it.syntax,
32419 Stmt::Revoke(it) => &it.syntax,
32420 Stmt::Rollback(it) => &it.syntax,
32421 Stmt::Savepoint(it) => &it.syntax,
32422 Stmt::SecurityLabel(it) => &it.syntax,
32423 Stmt::Select(it) => &it.syntax,
32424 Stmt::SelectInto(it) => &it.syntax,
32425 Stmt::Set(it) => &it.syntax,
32426 Stmt::SetConstraints(it) => &it.syntax,
32427 Stmt::SetRole(it) => &it.syntax,
32428 Stmt::SetSessionAuth(it) => &it.syntax,
32429 Stmt::SetTransaction(it) => &it.syntax,
32430 Stmt::Show(it) => &it.syntax,
32431 Stmt::Table(it) => &it.syntax,
32432 Stmt::Truncate(it) => &it.syntax,
32433 Stmt::Unlisten(it) => &it.syntax,
32434 Stmt::Update(it) => &it.syntax,
32435 Stmt::Vacuum(it) => &it.syntax,
32436 Stmt::Values(it) => &it.syntax,
32437 }
32438 }
32439}
32440impl From<AlterAggregate> for Stmt {
32441 #[inline]
32442 fn from(node: AlterAggregate) -> Stmt {
32443 Stmt::AlterAggregate(node)
32444 }
32445}
32446impl From<AlterCollation> for Stmt {
32447 #[inline]
32448 fn from(node: AlterCollation) -> Stmt {
32449 Stmt::AlterCollation(node)
32450 }
32451}
32452impl From<AlterConversion> for Stmt {
32453 #[inline]
32454 fn from(node: AlterConversion) -> Stmt {
32455 Stmt::AlterConversion(node)
32456 }
32457}
32458impl From<AlterDatabase> for Stmt {
32459 #[inline]
32460 fn from(node: AlterDatabase) -> Stmt {
32461 Stmt::AlterDatabase(node)
32462 }
32463}
32464impl From<AlterDefaultPrivileges> for Stmt {
32465 #[inline]
32466 fn from(node: AlterDefaultPrivileges) -> Stmt {
32467 Stmt::AlterDefaultPrivileges(node)
32468 }
32469}
32470impl From<AlterDomain> for Stmt {
32471 #[inline]
32472 fn from(node: AlterDomain) -> Stmt {
32473 Stmt::AlterDomain(node)
32474 }
32475}
32476impl From<AlterEventTrigger> for Stmt {
32477 #[inline]
32478 fn from(node: AlterEventTrigger) -> Stmt {
32479 Stmt::AlterEventTrigger(node)
32480 }
32481}
32482impl From<AlterExtension> for Stmt {
32483 #[inline]
32484 fn from(node: AlterExtension) -> Stmt {
32485 Stmt::AlterExtension(node)
32486 }
32487}
32488impl From<AlterForeignDataWrapper> for Stmt {
32489 #[inline]
32490 fn from(node: AlterForeignDataWrapper) -> Stmt {
32491 Stmt::AlterForeignDataWrapper(node)
32492 }
32493}
32494impl From<AlterForeignTable> for Stmt {
32495 #[inline]
32496 fn from(node: AlterForeignTable) -> Stmt {
32497 Stmt::AlterForeignTable(node)
32498 }
32499}
32500impl From<AlterFunction> for Stmt {
32501 #[inline]
32502 fn from(node: AlterFunction) -> Stmt {
32503 Stmt::AlterFunction(node)
32504 }
32505}
32506impl From<AlterGroup> for Stmt {
32507 #[inline]
32508 fn from(node: AlterGroup) -> Stmt {
32509 Stmt::AlterGroup(node)
32510 }
32511}
32512impl From<AlterIndex> for Stmt {
32513 #[inline]
32514 fn from(node: AlterIndex) -> Stmt {
32515 Stmt::AlterIndex(node)
32516 }
32517}
32518impl From<AlterLanguage> for Stmt {
32519 #[inline]
32520 fn from(node: AlterLanguage) -> Stmt {
32521 Stmt::AlterLanguage(node)
32522 }
32523}
32524impl From<AlterLargeObject> for Stmt {
32525 #[inline]
32526 fn from(node: AlterLargeObject) -> Stmt {
32527 Stmt::AlterLargeObject(node)
32528 }
32529}
32530impl From<AlterMaterializedView> for Stmt {
32531 #[inline]
32532 fn from(node: AlterMaterializedView) -> Stmt {
32533 Stmt::AlterMaterializedView(node)
32534 }
32535}
32536impl From<AlterOperator> for Stmt {
32537 #[inline]
32538 fn from(node: AlterOperator) -> Stmt {
32539 Stmt::AlterOperator(node)
32540 }
32541}
32542impl From<AlterOperatorClass> for Stmt {
32543 #[inline]
32544 fn from(node: AlterOperatorClass) -> Stmt {
32545 Stmt::AlterOperatorClass(node)
32546 }
32547}
32548impl From<AlterOperatorFamily> for Stmt {
32549 #[inline]
32550 fn from(node: AlterOperatorFamily) -> Stmt {
32551 Stmt::AlterOperatorFamily(node)
32552 }
32553}
32554impl From<AlterPolicy> for Stmt {
32555 #[inline]
32556 fn from(node: AlterPolicy) -> Stmt {
32557 Stmt::AlterPolicy(node)
32558 }
32559}
32560impl From<AlterProcedure> for Stmt {
32561 #[inline]
32562 fn from(node: AlterProcedure) -> Stmt {
32563 Stmt::AlterProcedure(node)
32564 }
32565}
32566impl From<AlterPublication> for Stmt {
32567 #[inline]
32568 fn from(node: AlterPublication) -> Stmt {
32569 Stmt::AlterPublication(node)
32570 }
32571}
32572impl From<AlterRole> for Stmt {
32573 #[inline]
32574 fn from(node: AlterRole) -> Stmt {
32575 Stmt::AlterRole(node)
32576 }
32577}
32578impl From<AlterRoutine> for Stmt {
32579 #[inline]
32580 fn from(node: AlterRoutine) -> Stmt {
32581 Stmt::AlterRoutine(node)
32582 }
32583}
32584impl From<AlterRule> for Stmt {
32585 #[inline]
32586 fn from(node: AlterRule) -> Stmt {
32587 Stmt::AlterRule(node)
32588 }
32589}
32590impl From<AlterSchema> for Stmt {
32591 #[inline]
32592 fn from(node: AlterSchema) -> Stmt {
32593 Stmt::AlterSchema(node)
32594 }
32595}
32596impl From<AlterSequence> for Stmt {
32597 #[inline]
32598 fn from(node: AlterSequence) -> Stmt {
32599 Stmt::AlterSequence(node)
32600 }
32601}
32602impl From<AlterServer> for Stmt {
32603 #[inline]
32604 fn from(node: AlterServer) -> Stmt {
32605 Stmt::AlterServer(node)
32606 }
32607}
32608impl From<AlterStatistics> for Stmt {
32609 #[inline]
32610 fn from(node: AlterStatistics) -> Stmt {
32611 Stmt::AlterStatistics(node)
32612 }
32613}
32614impl From<AlterSubscription> for Stmt {
32615 #[inline]
32616 fn from(node: AlterSubscription) -> Stmt {
32617 Stmt::AlterSubscription(node)
32618 }
32619}
32620impl From<AlterSystem> for Stmt {
32621 #[inline]
32622 fn from(node: AlterSystem) -> Stmt {
32623 Stmt::AlterSystem(node)
32624 }
32625}
32626impl From<AlterTable> for Stmt {
32627 #[inline]
32628 fn from(node: AlterTable) -> Stmt {
32629 Stmt::AlterTable(node)
32630 }
32631}
32632impl From<AlterTablespace> for Stmt {
32633 #[inline]
32634 fn from(node: AlterTablespace) -> Stmt {
32635 Stmt::AlterTablespace(node)
32636 }
32637}
32638impl From<AlterTextSearchConfiguration> for Stmt {
32639 #[inline]
32640 fn from(node: AlterTextSearchConfiguration) -> Stmt {
32641 Stmt::AlterTextSearchConfiguration(node)
32642 }
32643}
32644impl From<AlterTextSearchDictionary> for Stmt {
32645 #[inline]
32646 fn from(node: AlterTextSearchDictionary) -> Stmt {
32647 Stmt::AlterTextSearchDictionary(node)
32648 }
32649}
32650impl From<AlterTextSearchParser> for Stmt {
32651 #[inline]
32652 fn from(node: AlterTextSearchParser) -> Stmt {
32653 Stmt::AlterTextSearchParser(node)
32654 }
32655}
32656impl From<AlterTextSearchTemplate> for Stmt {
32657 #[inline]
32658 fn from(node: AlterTextSearchTemplate) -> Stmt {
32659 Stmt::AlterTextSearchTemplate(node)
32660 }
32661}
32662impl From<AlterTrigger> for Stmt {
32663 #[inline]
32664 fn from(node: AlterTrigger) -> Stmt {
32665 Stmt::AlterTrigger(node)
32666 }
32667}
32668impl From<AlterType> for Stmt {
32669 #[inline]
32670 fn from(node: AlterType) -> Stmt {
32671 Stmt::AlterType(node)
32672 }
32673}
32674impl From<AlterUser> for Stmt {
32675 #[inline]
32676 fn from(node: AlterUser) -> Stmt {
32677 Stmt::AlterUser(node)
32678 }
32679}
32680impl From<AlterUserMapping> for Stmt {
32681 #[inline]
32682 fn from(node: AlterUserMapping) -> Stmt {
32683 Stmt::AlterUserMapping(node)
32684 }
32685}
32686impl From<AlterView> for Stmt {
32687 #[inline]
32688 fn from(node: AlterView) -> Stmt {
32689 Stmt::AlterView(node)
32690 }
32691}
32692impl From<Analyze> for Stmt {
32693 #[inline]
32694 fn from(node: Analyze) -> Stmt {
32695 Stmt::Analyze(node)
32696 }
32697}
32698impl From<Begin> for Stmt {
32699 #[inline]
32700 fn from(node: Begin) -> Stmt {
32701 Stmt::Begin(node)
32702 }
32703}
32704impl From<Call> for Stmt {
32705 #[inline]
32706 fn from(node: Call) -> Stmt {
32707 Stmt::Call(node)
32708 }
32709}
32710impl From<Checkpoint> for Stmt {
32711 #[inline]
32712 fn from(node: Checkpoint) -> Stmt {
32713 Stmt::Checkpoint(node)
32714 }
32715}
32716impl From<Close> for Stmt {
32717 #[inline]
32718 fn from(node: Close) -> Stmt {
32719 Stmt::Close(node)
32720 }
32721}
32722impl From<Cluster> for Stmt {
32723 #[inline]
32724 fn from(node: Cluster) -> Stmt {
32725 Stmt::Cluster(node)
32726 }
32727}
32728impl From<CommentOn> for Stmt {
32729 #[inline]
32730 fn from(node: CommentOn) -> Stmt {
32731 Stmt::CommentOn(node)
32732 }
32733}
32734impl From<Commit> for Stmt {
32735 #[inline]
32736 fn from(node: Commit) -> Stmt {
32737 Stmt::Commit(node)
32738 }
32739}
32740impl From<Copy> for Stmt {
32741 #[inline]
32742 fn from(node: Copy) -> Stmt {
32743 Stmt::Copy(node)
32744 }
32745}
32746impl From<CreateAccessMethod> for Stmt {
32747 #[inline]
32748 fn from(node: CreateAccessMethod) -> Stmt {
32749 Stmt::CreateAccessMethod(node)
32750 }
32751}
32752impl From<CreateAggregate> for Stmt {
32753 #[inline]
32754 fn from(node: CreateAggregate) -> Stmt {
32755 Stmt::CreateAggregate(node)
32756 }
32757}
32758impl From<CreateCast> for Stmt {
32759 #[inline]
32760 fn from(node: CreateCast) -> Stmt {
32761 Stmt::CreateCast(node)
32762 }
32763}
32764impl From<CreateCollation> for Stmt {
32765 #[inline]
32766 fn from(node: CreateCollation) -> Stmt {
32767 Stmt::CreateCollation(node)
32768 }
32769}
32770impl From<CreateConversion> for Stmt {
32771 #[inline]
32772 fn from(node: CreateConversion) -> Stmt {
32773 Stmt::CreateConversion(node)
32774 }
32775}
32776impl From<CreateDatabase> for Stmt {
32777 #[inline]
32778 fn from(node: CreateDatabase) -> Stmt {
32779 Stmt::CreateDatabase(node)
32780 }
32781}
32782impl From<CreateDomain> for Stmt {
32783 #[inline]
32784 fn from(node: CreateDomain) -> Stmt {
32785 Stmt::CreateDomain(node)
32786 }
32787}
32788impl From<CreateEventTrigger> for Stmt {
32789 #[inline]
32790 fn from(node: CreateEventTrigger) -> Stmt {
32791 Stmt::CreateEventTrigger(node)
32792 }
32793}
32794impl From<CreateExtension> for Stmt {
32795 #[inline]
32796 fn from(node: CreateExtension) -> Stmt {
32797 Stmt::CreateExtension(node)
32798 }
32799}
32800impl From<CreateForeignDataWrapper> for Stmt {
32801 #[inline]
32802 fn from(node: CreateForeignDataWrapper) -> Stmt {
32803 Stmt::CreateForeignDataWrapper(node)
32804 }
32805}
32806impl From<CreateForeignTable> for Stmt {
32807 #[inline]
32808 fn from(node: CreateForeignTable) -> Stmt {
32809 Stmt::CreateForeignTable(node)
32810 }
32811}
32812impl From<CreateFunction> for Stmt {
32813 #[inline]
32814 fn from(node: CreateFunction) -> Stmt {
32815 Stmt::CreateFunction(node)
32816 }
32817}
32818impl From<CreateGroup> for Stmt {
32819 #[inline]
32820 fn from(node: CreateGroup) -> Stmt {
32821 Stmt::CreateGroup(node)
32822 }
32823}
32824impl From<CreateIndex> for Stmt {
32825 #[inline]
32826 fn from(node: CreateIndex) -> Stmt {
32827 Stmt::CreateIndex(node)
32828 }
32829}
32830impl From<CreateLanguage> for Stmt {
32831 #[inline]
32832 fn from(node: CreateLanguage) -> Stmt {
32833 Stmt::CreateLanguage(node)
32834 }
32835}
32836impl From<CreateMaterializedView> for Stmt {
32837 #[inline]
32838 fn from(node: CreateMaterializedView) -> Stmt {
32839 Stmt::CreateMaterializedView(node)
32840 }
32841}
32842impl From<CreateOperator> for Stmt {
32843 #[inline]
32844 fn from(node: CreateOperator) -> Stmt {
32845 Stmt::CreateOperator(node)
32846 }
32847}
32848impl From<CreateOperatorClass> for Stmt {
32849 #[inline]
32850 fn from(node: CreateOperatorClass) -> Stmt {
32851 Stmt::CreateOperatorClass(node)
32852 }
32853}
32854impl From<CreateOperatorFamily> for Stmt {
32855 #[inline]
32856 fn from(node: CreateOperatorFamily) -> Stmt {
32857 Stmt::CreateOperatorFamily(node)
32858 }
32859}
32860impl From<CreatePolicy> for Stmt {
32861 #[inline]
32862 fn from(node: CreatePolicy) -> Stmt {
32863 Stmt::CreatePolicy(node)
32864 }
32865}
32866impl From<CreateProcedure> for Stmt {
32867 #[inline]
32868 fn from(node: CreateProcedure) -> Stmt {
32869 Stmt::CreateProcedure(node)
32870 }
32871}
32872impl From<CreatePublication> for Stmt {
32873 #[inline]
32874 fn from(node: CreatePublication) -> Stmt {
32875 Stmt::CreatePublication(node)
32876 }
32877}
32878impl From<CreateRole> for Stmt {
32879 #[inline]
32880 fn from(node: CreateRole) -> Stmt {
32881 Stmt::CreateRole(node)
32882 }
32883}
32884impl From<CreateRule> for Stmt {
32885 #[inline]
32886 fn from(node: CreateRule) -> Stmt {
32887 Stmt::CreateRule(node)
32888 }
32889}
32890impl From<CreateSchema> for Stmt {
32891 #[inline]
32892 fn from(node: CreateSchema) -> Stmt {
32893 Stmt::CreateSchema(node)
32894 }
32895}
32896impl From<CreateSequence> for Stmt {
32897 #[inline]
32898 fn from(node: CreateSequence) -> Stmt {
32899 Stmt::CreateSequence(node)
32900 }
32901}
32902impl From<CreateServer> for Stmt {
32903 #[inline]
32904 fn from(node: CreateServer) -> Stmt {
32905 Stmt::CreateServer(node)
32906 }
32907}
32908impl From<CreateStatistics> for Stmt {
32909 #[inline]
32910 fn from(node: CreateStatistics) -> Stmt {
32911 Stmt::CreateStatistics(node)
32912 }
32913}
32914impl From<CreateSubscription> for Stmt {
32915 #[inline]
32916 fn from(node: CreateSubscription) -> Stmt {
32917 Stmt::CreateSubscription(node)
32918 }
32919}
32920impl From<CreateTable> for Stmt {
32921 #[inline]
32922 fn from(node: CreateTable) -> Stmt {
32923 Stmt::CreateTable(node)
32924 }
32925}
32926impl From<CreateTableAs> for Stmt {
32927 #[inline]
32928 fn from(node: CreateTableAs) -> Stmt {
32929 Stmt::CreateTableAs(node)
32930 }
32931}
32932impl From<CreateTablespace> for Stmt {
32933 #[inline]
32934 fn from(node: CreateTablespace) -> Stmt {
32935 Stmt::CreateTablespace(node)
32936 }
32937}
32938impl From<CreateTextSearchConfiguration> for Stmt {
32939 #[inline]
32940 fn from(node: CreateTextSearchConfiguration) -> Stmt {
32941 Stmt::CreateTextSearchConfiguration(node)
32942 }
32943}
32944impl From<CreateTextSearchDictionary> for Stmt {
32945 #[inline]
32946 fn from(node: CreateTextSearchDictionary) -> Stmt {
32947 Stmt::CreateTextSearchDictionary(node)
32948 }
32949}
32950impl From<CreateTextSearchParser> for Stmt {
32951 #[inline]
32952 fn from(node: CreateTextSearchParser) -> Stmt {
32953 Stmt::CreateTextSearchParser(node)
32954 }
32955}
32956impl From<CreateTextSearchTemplate> for Stmt {
32957 #[inline]
32958 fn from(node: CreateTextSearchTemplate) -> Stmt {
32959 Stmt::CreateTextSearchTemplate(node)
32960 }
32961}
32962impl From<CreateTransform> for Stmt {
32963 #[inline]
32964 fn from(node: CreateTransform) -> Stmt {
32965 Stmt::CreateTransform(node)
32966 }
32967}
32968impl From<CreateTrigger> for Stmt {
32969 #[inline]
32970 fn from(node: CreateTrigger) -> Stmt {
32971 Stmt::CreateTrigger(node)
32972 }
32973}
32974impl From<CreateType> for Stmt {
32975 #[inline]
32976 fn from(node: CreateType) -> Stmt {
32977 Stmt::CreateType(node)
32978 }
32979}
32980impl From<CreateUser> for Stmt {
32981 #[inline]
32982 fn from(node: CreateUser) -> Stmt {
32983 Stmt::CreateUser(node)
32984 }
32985}
32986impl From<CreateUserMapping> for Stmt {
32987 #[inline]
32988 fn from(node: CreateUserMapping) -> Stmt {
32989 Stmt::CreateUserMapping(node)
32990 }
32991}
32992impl From<CreateView> for Stmt {
32993 #[inline]
32994 fn from(node: CreateView) -> Stmt {
32995 Stmt::CreateView(node)
32996 }
32997}
32998impl From<Deallocate> for Stmt {
32999 #[inline]
33000 fn from(node: Deallocate) -> Stmt {
33001 Stmt::Deallocate(node)
33002 }
33003}
33004impl From<Declare> for Stmt {
33005 #[inline]
33006 fn from(node: Declare) -> Stmt {
33007 Stmt::Declare(node)
33008 }
33009}
33010impl From<Delete> for Stmt {
33011 #[inline]
33012 fn from(node: Delete) -> Stmt {
33013 Stmt::Delete(node)
33014 }
33015}
33016impl From<Discard> for Stmt {
33017 #[inline]
33018 fn from(node: Discard) -> Stmt {
33019 Stmt::Discard(node)
33020 }
33021}
33022impl From<Do> for Stmt {
33023 #[inline]
33024 fn from(node: Do) -> Stmt {
33025 Stmt::Do(node)
33026 }
33027}
33028impl From<DropAccessMethod> for Stmt {
33029 #[inline]
33030 fn from(node: DropAccessMethod) -> Stmt {
33031 Stmt::DropAccessMethod(node)
33032 }
33033}
33034impl From<DropAggregate> for Stmt {
33035 #[inline]
33036 fn from(node: DropAggregate) -> Stmt {
33037 Stmt::DropAggregate(node)
33038 }
33039}
33040impl From<DropCast> for Stmt {
33041 #[inline]
33042 fn from(node: DropCast) -> Stmt {
33043 Stmt::DropCast(node)
33044 }
33045}
33046impl From<DropCollation> for Stmt {
33047 #[inline]
33048 fn from(node: DropCollation) -> Stmt {
33049 Stmt::DropCollation(node)
33050 }
33051}
33052impl From<DropConversion> for Stmt {
33053 #[inline]
33054 fn from(node: DropConversion) -> Stmt {
33055 Stmt::DropConversion(node)
33056 }
33057}
33058impl From<DropDatabase> for Stmt {
33059 #[inline]
33060 fn from(node: DropDatabase) -> Stmt {
33061 Stmt::DropDatabase(node)
33062 }
33063}
33064impl From<DropDomain> for Stmt {
33065 #[inline]
33066 fn from(node: DropDomain) -> Stmt {
33067 Stmt::DropDomain(node)
33068 }
33069}
33070impl From<DropEventTrigger> for Stmt {
33071 #[inline]
33072 fn from(node: DropEventTrigger) -> Stmt {
33073 Stmt::DropEventTrigger(node)
33074 }
33075}
33076impl From<DropExtension> for Stmt {
33077 #[inline]
33078 fn from(node: DropExtension) -> Stmt {
33079 Stmt::DropExtension(node)
33080 }
33081}
33082impl From<DropForeignDataWrapper> for Stmt {
33083 #[inline]
33084 fn from(node: DropForeignDataWrapper) -> Stmt {
33085 Stmt::DropForeignDataWrapper(node)
33086 }
33087}
33088impl From<DropForeignTable> for Stmt {
33089 #[inline]
33090 fn from(node: DropForeignTable) -> Stmt {
33091 Stmt::DropForeignTable(node)
33092 }
33093}
33094impl From<DropFunction> for Stmt {
33095 #[inline]
33096 fn from(node: DropFunction) -> Stmt {
33097 Stmt::DropFunction(node)
33098 }
33099}
33100impl From<DropGroup> for Stmt {
33101 #[inline]
33102 fn from(node: DropGroup) -> Stmt {
33103 Stmt::DropGroup(node)
33104 }
33105}
33106impl From<DropIndex> for Stmt {
33107 #[inline]
33108 fn from(node: DropIndex) -> Stmt {
33109 Stmt::DropIndex(node)
33110 }
33111}
33112impl From<DropLanguage> for Stmt {
33113 #[inline]
33114 fn from(node: DropLanguage) -> Stmt {
33115 Stmt::DropLanguage(node)
33116 }
33117}
33118impl From<DropMaterializedView> for Stmt {
33119 #[inline]
33120 fn from(node: DropMaterializedView) -> Stmt {
33121 Stmt::DropMaterializedView(node)
33122 }
33123}
33124impl From<DropOperator> for Stmt {
33125 #[inline]
33126 fn from(node: DropOperator) -> Stmt {
33127 Stmt::DropOperator(node)
33128 }
33129}
33130impl From<DropOperatorClass> for Stmt {
33131 #[inline]
33132 fn from(node: DropOperatorClass) -> Stmt {
33133 Stmt::DropOperatorClass(node)
33134 }
33135}
33136impl From<DropOperatorFamily> for Stmt {
33137 #[inline]
33138 fn from(node: DropOperatorFamily) -> Stmt {
33139 Stmt::DropOperatorFamily(node)
33140 }
33141}
33142impl From<DropOwned> for Stmt {
33143 #[inline]
33144 fn from(node: DropOwned) -> Stmt {
33145 Stmt::DropOwned(node)
33146 }
33147}
33148impl From<DropPolicy> for Stmt {
33149 #[inline]
33150 fn from(node: DropPolicy) -> Stmt {
33151 Stmt::DropPolicy(node)
33152 }
33153}
33154impl From<DropProcedure> for Stmt {
33155 #[inline]
33156 fn from(node: DropProcedure) -> Stmt {
33157 Stmt::DropProcedure(node)
33158 }
33159}
33160impl From<DropPublication> for Stmt {
33161 #[inline]
33162 fn from(node: DropPublication) -> Stmt {
33163 Stmt::DropPublication(node)
33164 }
33165}
33166impl From<DropRole> for Stmt {
33167 #[inline]
33168 fn from(node: DropRole) -> Stmt {
33169 Stmt::DropRole(node)
33170 }
33171}
33172impl From<DropRoutine> for Stmt {
33173 #[inline]
33174 fn from(node: DropRoutine) -> Stmt {
33175 Stmt::DropRoutine(node)
33176 }
33177}
33178impl From<DropRule> for Stmt {
33179 #[inline]
33180 fn from(node: DropRule) -> Stmt {
33181 Stmt::DropRule(node)
33182 }
33183}
33184impl From<DropSchema> for Stmt {
33185 #[inline]
33186 fn from(node: DropSchema) -> Stmt {
33187 Stmt::DropSchema(node)
33188 }
33189}
33190impl From<DropSequence> for Stmt {
33191 #[inline]
33192 fn from(node: DropSequence) -> Stmt {
33193 Stmt::DropSequence(node)
33194 }
33195}
33196impl From<DropServer> for Stmt {
33197 #[inline]
33198 fn from(node: DropServer) -> Stmt {
33199 Stmt::DropServer(node)
33200 }
33201}
33202impl From<DropStatistics> for Stmt {
33203 #[inline]
33204 fn from(node: DropStatistics) -> Stmt {
33205 Stmt::DropStatistics(node)
33206 }
33207}
33208impl From<DropSubscription> for Stmt {
33209 #[inline]
33210 fn from(node: DropSubscription) -> Stmt {
33211 Stmt::DropSubscription(node)
33212 }
33213}
33214impl From<DropTable> for Stmt {
33215 #[inline]
33216 fn from(node: DropTable) -> Stmt {
33217 Stmt::DropTable(node)
33218 }
33219}
33220impl From<DropTablespace> for Stmt {
33221 #[inline]
33222 fn from(node: DropTablespace) -> Stmt {
33223 Stmt::DropTablespace(node)
33224 }
33225}
33226impl From<DropTextSearchConfig> for Stmt {
33227 #[inline]
33228 fn from(node: DropTextSearchConfig) -> Stmt {
33229 Stmt::DropTextSearchConfig(node)
33230 }
33231}
33232impl From<DropTextSearchDict> for Stmt {
33233 #[inline]
33234 fn from(node: DropTextSearchDict) -> Stmt {
33235 Stmt::DropTextSearchDict(node)
33236 }
33237}
33238impl From<DropTextSearchParser> for Stmt {
33239 #[inline]
33240 fn from(node: DropTextSearchParser) -> Stmt {
33241 Stmt::DropTextSearchParser(node)
33242 }
33243}
33244impl From<DropTextSearchTemplate> for Stmt {
33245 #[inline]
33246 fn from(node: DropTextSearchTemplate) -> Stmt {
33247 Stmt::DropTextSearchTemplate(node)
33248 }
33249}
33250impl From<DropTransform> for Stmt {
33251 #[inline]
33252 fn from(node: DropTransform) -> Stmt {
33253 Stmt::DropTransform(node)
33254 }
33255}
33256impl From<DropTrigger> for Stmt {
33257 #[inline]
33258 fn from(node: DropTrigger) -> Stmt {
33259 Stmt::DropTrigger(node)
33260 }
33261}
33262impl From<DropType> for Stmt {
33263 #[inline]
33264 fn from(node: DropType) -> Stmt {
33265 Stmt::DropType(node)
33266 }
33267}
33268impl From<DropUser> for Stmt {
33269 #[inline]
33270 fn from(node: DropUser) -> Stmt {
33271 Stmt::DropUser(node)
33272 }
33273}
33274impl From<DropUserMapping> for Stmt {
33275 #[inline]
33276 fn from(node: DropUserMapping) -> Stmt {
33277 Stmt::DropUserMapping(node)
33278 }
33279}
33280impl From<DropView> for Stmt {
33281 #[inline]
33282 fn from(node: DropView) -> Stmt {
33283 Stmt::DropView(node)
33284 }
33285}
33286impl From<Execute> for Stmt {
33287 #[inline]
33288 fn from(node: Execute) -> Stmt {
33289 Stmt::Execute(node)
33290 }
33291}
33292impl From<Explain> for Stmt {
33293 #[inline]
33294 fn from(node: Explain) -> Stmt {
33295 Stmt::Explain(node)
33296 }
33297}
33298impl From<Fetch> for Stmt {
33299 #[inline]
33300 fn from(node: Fetch) -> Stmt {
33301 Stmt::Fetch(node)
33302 }
33303}
33304impl From<Grant> for Stmt {
33305 #[inline]
33306 fn from(node: Grant) -> Stmt {
33307 Stmt::Grant(node)
33308 }
33309}
33310impl From<ImportForeignSchema> for Stmt {
33311 #[inline]
33312 fn from(node: ImportForeignSchema) -> Stmt {
33313 Stmt::ImportForeignSchema(node)
33314 }
33315}
33316impl From<Insert> for Stmt {
33317 #[inline]
33318 fn from(node: Insert) -> Stmt {
33319 Stmt::Insert(node)
33320 }
33321}
33322impl From<Listen> for Stmt {
33323 #[inline]
33324 fn from(node: Listen) -> Stmt {
33325 Stmt::Listen(node)
33326 }
33327}
33328impl From<Load> for Stmt {
33329 #[inline]
33330 fn from(node: Load) -> Stmt {
33331 Stmt::Load(node)
33332 }
33333}
33334impl From<Lock> for Stmt {
33335 #[inline]
33336 fn from(node: Lock) -> Stmt {
33337 Stmt::Lock(node)
33338 }
33339}
33340impl From<Merge> for Stmt {
33341 #[inline]
33342 fn from(node: Merge) -> Stmt {
33343 Stmt::Merge(node)
33344 }
33345}
33346impl From<Move> for Stmt {
33347 #[inline]
33348 fn from(node: Move) -> Stmt {
33349 Stmt::Move(node)
33350 }
33351}
33352impl From<Notify> for Stmt {
33353 #[inline]
33354 fn from(node: Notify) -> Stmt {
33355 Stmt::Notify(node)
33356 }
33357}
33358impl From<ParenSelect> for Stmt {
33359 #[inline]
33360 fn from(node: ParenSelect) -> Stmt {
33361 Stmt::ParenSelect(node)
33362 }
33363}
33364impl From<Prepare> for Stmt {
33365 #[inline]
33366 fn from(node: Prepare) -> Stmt {
33367 Stmt::Prepare(node)
33368 }
33369}
33370impl From<PrepareTransaction> for Stmt {
33371 #[inline]
33372 fn from(node: PrepareTransaction) -> Stmt {
33373 Stmt::PrepareTransaction(node)
33374 }
33375}
33376impl From<Reassign> for Stmt {
33377 #[inline]
33378 fn from(node: Reassign) -> Stmt {
33379 Stmt::Reassign(node)
33380 }
33381}
33382impl From<Refresh> for Stmt {
33383 #[inline]
33384 fn from(node: Refresh) -> Stmt {
33385 Stmt::Refresh(node)
33386 }
33387}
33388impl From<Reindex> for Stmt {
33389 #[inline]
33390 fn from(node: Reindex) -> Stmt {
33391 Stmt::Reindex(node)
33392 }
33393}
33394impl From<ReleaseSavepoint> for Stmt {
33395 #[inline]
33396 fn from(node: ReleaseSavepoint) -> Stmt {
33397 Stmt::ReleaseSavepoint(node)
33398 }
33399}
33400impl From<Reset> for Stmt {
33401 #[inline]
33402 fn from(node: Reset) -> Stmt {
33403 Stmt::Reset(node)
33404 }
33405}
33406impl From<ResetSessionAuth> for Stmt {
33407 #[inline]
33408 fn from(node: ResetSessionAuth) -> Stmt {
33409 Stmt::ResetSessionAuth(node)
33410 }
33411}
33412impl From<Revoke> for Stmt {
33413 #[inline]
33414 fn from(node: Revoke) -> Stmt {
33415 Stmt::Revoke(node)
33416 }
33417}
33418impl From<Rollback> for Stmt {
33419 #[inline]
33420 fn from(node: Rollback) -> Stmt {
33421 Stmt::Rollback(node)
33422 }
33423}
33424impl From<Savepoint> for Stmt {
33425 #[inline]
33426 fn from(node: Savepoint) -> Stmt {
33427 Stmt::Savepoint(node)
33428 }
33429}
33430impl From<SecurityLabel> for Stmt {
33431 #[inline]
33432 fn from(node: SecurityLabel) -> Stmt {
33433 Stmt::SecurityLabel(node)
33434 }
33435}
33436impl From<Select> for Stmt {
33437 #[inline]
33438 fn from(node: Select) -> Stmt {
33439 Stmt::Select(node)
33440 }
33441}
33442impl From<SelectInto> for Stmt {
33443 #[inline]
33444 fn from(node: SelectInto) -> Stmt {
33445 Stmt::SelectInto(node)
33446 }
33447}
33448impl From<Set> for Stmt {
33449 #[inline]
33450 fn from(node: Set) -> Stmt {
33451 Stmt::Set(node)
33452 }
33453}
33454impl From<SetConstraints> for Stmt {
33455 #[inline]
33456 fn from(node: SetConstraints) -> Stmt {
33457 Stmt::SetConstraints(node)
33458 }
33459}
33460impl From<SetRole> for Stmt {
33461 #[inline]
33462 fn from(node: SetRole) -> Stmt {
33463 Stmt::SetRole(node)
33464 }
33465}
33466impl From<SetSessionAuth> for Stmt {
33467 #[inline]
33468 fn from(node: SetSessionAuth) -> Stmt {
33469 Stmt::SetSessionAuth(node)
33470 }
33471}
33472impl From<SetTransaction> for Stmt {
33473 #[inline]
33474 fn from(node: SetTransaction) -> Stmt {
33475 Stmt::SetTransaction(node)
33476 }
33477}
33478impl From<Show> for Stmt {
33479 #[inline]
33480 fn from(node: Show) -> Stmt {
33481 Stmt::Show(node)
33482 }
33483}
33484impl From<Table> for Stmt {
33485 #[inline]
33486 fn from(node: Table) -> Stmt {
33487 Stmt::Table(node)
33488 }
33489}
33490impl From<Truncate> for Stmt {
33491 #[inline]
33492 fn from(node: Truncate) -> Stmt {
33493 Stmt::Truncate(node)
33494 }
33495}
33496impl From<Unlisten> for Stmt {
33497 #[inline]
33498 fn from(node: Unlisten) -> Stmt {
33499 Stmt::Unlisten(node)
33500 }
33501}
33502impl From<Update> for Stmt {
33503 #[inline]
33504 fn from(node: Update) -> Stmt {
33505 Stmt::Update(node)
33506 }
33507}
33508impl From<Vacuum> for Stmt {
33509 #[inline]
33510 fn from(node: Vacuum) -> Stmt {
33511 Stmt::Vacuum(node)
33512 }
33513}
33514impl From<Values> for Stmt {
33515 #[inline]
33516 fn from(node: Values) -> Stmt {
33517 Stmt::Values(node)
33518 }
33519}
33520impl AstNode for TableArg {
33521 #[inline]
33522 fn can_cast(kind: SyntaxKind) -> bool {
33523 matches!(kind, SyntaxKind::COLUMN | SyntaxKind::LIKE_CLAUSE)
33524 }
33525 #[inline]
33526 fn cast(syntax: SyntaxNode) -> Option<Self> {
33527 let res = match syntax.kind() {
33528 SyntaxKind::COLUMN => TableArg::Column(Column { syntax }),
33529 SyntaxKind::LIKE_CLAUSE => TableArg::LikeClause(LikeClause { syntax }),
33530 _ => {
33531 if let Some(result) = TableConstraint::cast(syntax) {
33532 return Some(TableArg::TableConstraint(result));
33533 }
33534 return None;
33535 }
33536 };
33537 Some(res)
33538 }
33539 #[inline]
33540 fn syntax(&self) -> &SyntaxNode {
33541 match self {
33542 TableArg::Column(it) => &it.syntax,
33543 TableArg::LikeClause(it) => &it.syntax,
33544 TableArg::TableConstraint(it) => it.syntax(),
33545 }
33546 }
33547}
33548impl From<Column> for TableArg {
33549 #[inline]
33550 fn from(node: Column) -> TableArg {
33551 TableArg::Column(node)
33552 }
33553}
33554impl From<LikeClause> for TableArg {
33555 #[inline]
33556 fn from(node: LikeClause) -> TableArg {
33557 TableArg::LikeClause(node)
33558 }
33559}
33560impl AstNode for TableConstraint {
33561 #[inline]
33562 fn can_cast(kind: SyntaxKind) -> bool {
33563 matches!(
33564 kind,
33565 SyntaxKind::CHECK_CONSTRAINT
33566 | SyntaxKind::EXCLUDE_CONSTRAINT
33567 | SyntaxKind::FOREIGN_KEY_CONSTRAINT
33568 | SyntaxKind::PRIMARY_KEY_CONSTRAINT
33569 | SyntaxKind::UNIQUE_CONSTRAINT
33570 )
33571 }
33572 #[inline]
33573 fn cast(syntax: SyntaxNode) -> Option<Self> {
33574 let res = match syntax.kind() {
33575 SyntaxKind::CHECK_CONSTRAINT => {
33576 TableConstraint::CheckConstraint(CheckConstraint { syntax })
33577 }
33578 SyntaxKind::EXCLUDE_CONSTRAINT => {
33579 TableConstraint::ExcludeConstraint(ExcludeConstraint { syntax })
33580 }
33581 SyntaxKind::FOREIGN_KEY_CONSTRAINT => {
33582 TableConstraint::ForeignKeyConstraint(ForeignKeyConstraint { syntax })
33583 }
33584 SyntaxKind::PRIMARY_KEY_CONSTRAINT => {
33585 TableConstraint::PrimaryKeyConstraint(PrimaryKeyConstraint { syntax })
33586 }
33587 SyntaxKind::UNIQUE_CONSTRAINT => {
33588 TableConstraint::UniqueConstraint(UniqueConstraint { syntax })
33589 }
33590 _ => {
33591 return None;
33592 }
33593 };
33594 Some(res)
33595 }
33596 #[inline]
33597 fn syntax(&self) -> &SyntaxNode {
33598 match self {
33599 TableConstraint::CheckConstraint(it) => &it.syntax,
33600 TableConstraint::ExcludeConstraint(it) => &it.syntax,
33601 TableConstraint::ForeignKeyConstraint(it) => &it.syntax,
33602 TableConstraint::PrimaryKeyConstraint(it) => &it.syntax,
33603 TableConstraint::UniqueConstraint(it) => &it.syntax,
33604 }
33605 }
33606}
33607impl From<CheckConstraint> for TableConstraint {
33608 #[inline]
33609 fn from(node: CheckConstraint) -> TableConstraint {
33610 TableConstraint::CheckConstraint(node)
33611 }
33612}
33613impl From<ExcludeConstraint> for TableConstraint {
33614 #[inline]
33615 fn from(node: ExcludeConstraint) -> TableConstraint {
33616 TableConstraint::ExcludeConstraint(node)
33617 }
33618}
33619impl From<ForeignKeyConstraint> for TableConstraint {
33620 #[inline]
33621 fn from(node: ForeignKeyConstraint) -> TableConstraint {
33622 TableConstraint::ForeignKeyConstraint(node)
33623 }
33624}
33625impl From<PrimaryKeyConstraint> for TableConstraint {
33626 #[inline]
33627 fn from(node: PrimaryKeyConstraint) -> TableConstraint {
33628 TableConstraint::PrimaryKeyConstraint(node)
33629 }
33630}
33631impl From<UniqueConstraint> for TableConstraint {
33632 #[inline]
33633 fn from(node: UniqueConstraint) -> TableConstraint {
33634 TableConstraint::UniqueConstraint(node)
33635 }
33636}
33637impl AstNode for Timezone {
33638 #[inline]
33639 fn can_cast(kind: SyntaxKind) -> bool {
33640 matches!(
33641 kind,
33642 SyntaxKind::WITH_TIMEZONE | SyntaxKind::WITHOUT_TIMEZONE
33643 )
33644 }
33645 #[inline]
33646 fn cast(syntax: SyntaxNode) -> Option<Self> {
33647 let res = match syntax.kind() {
33648 SyntaxKind::WITH_TIMEZONE => Timezone::WithTimezone(WithTimezone { syntax }),
33649 SyntaxKind::WITHOUT_TIMEZONE => Timezone::WithoutTimezone(WithoutTimezone { syntax }),
33650 _ => {
33651 return None;
33652 }
33653 };
33654 Some(res)
33655 }
33656 #[inline]
33657 fn syntax(&self) -> &SyntaxNode {
33658 match self {
33659 Timezone::WithTimezone(it) => &it.syntax,
33660 Timezone::WithoutTimezone(it) => &it.syntax,
33661 }
33662 }
33663}
33664impl From<WithTimezone> for Timezone {
33665 #[inline]
33666 fn from(node: WithTimezone) -> Timezone {
33667 Timezone::WithTimezone(node)
33668 }
33669}
33670impl From<WithoutTimezone> for Timezone {
33671 #[inline]
33672 fn from(node: WithoutTimezone) -> Timezone {
33673 Timezone::WithoutTimezone(node)
33674 }
33675}
33676impl AstNode for TransactionMode {
33677 #[inline]
33678 fn can_cast(kind: SyntaxKind) -> bool {
33679 matches!(
33680 kind,
33681 SyntaxKind::DEFERRABLE
33682 | SyntaxKind::NOT_DEFERRABLE
33683 | SyntaxKind::READ_COMMITTED
33684 | SyntaxKind::READ_ONLY
33685 | SyntaxKind::READ_UNCOMMITTED
33686 | SyntaxKind::READ_WRITE
33687 | SyntaxKind::REPEATABLE_READ
33688 | SyntaxKind::SERIALIZABLE
33689 )
33690 }
33691 #[inline]
33692 fn cast(syntax: SyntaxNode) -> Option<Self> {
33693 let res = match syntax.kind() {
33694 SyntaxKind::DEFERRABLE => TransactionMode::Deferrable(Deferrable { syntax }),
33695 SyntaxKind::NOT_DEFERRABLE => TransactionMode::NotDeferrable(NotDeferrable { syntax }),
33696 SyntaxKind::READ_COMMITTED => TransactionMode::ReadCommitted(ReadCommitted { syntax }),
33697 SyntaxKind::READ_ONLY => TransactionMode::ReadOnly(ReadOnly { syntax }),
33698 SyntaxKind::READ_UNCOMMITTED => {
33699 TransactionMode::ReadUncommitted(ReadUncommitted { syntax })
33700 }
33701 SyntaxKind::READ_WRITE => TransactionMode::ReadWrite(ReadWrite { syntax }),
33702 SyntaxKind::REPEATABLE_READ => {
33703 TransactionMode::RepeatableRead(RepeatableRead { syntax })
33704 }
33705 SyntaxKind::SERIALIZABLE => TransactionMode::Serializable(Serializable { syntax }),
33706 _ => {
33707 return None;
33708 }
33709 };
33710 Some(res)
33711 }
33712 #[inline]
33713 fn syntax(&self) -> &SyntaxNode {
33714 match self {
33715 TransactionMode::Deferrable(it) => &it.syntax,
33716 TransactionMode::NotDeferrable(it) => &it.syntax,
33717 TransactionMode::ReadCommitted(it) => &it.syntax,
33718 TransactionMode::ReadOnly(it) => &it.syntax,
33719 TransactionMode::ReadUncommitted(it) => &it.syntax,
33720 TransactionMode::ReadWrite(it) => &it.syntax,
33721 TransactionMode::RepeatableRead(it) => &it.syntax,
33722 TransactionMode::Serializable(it) => &it.syntax,
33723 }
33724 }
33725}
33726impl From<Deferrable> for TransactionMode {
33727 #[inline]
33728 fn from(node: Deferrable) -> TransactionMode {
33729 TransactionMode::Deferrable(node)
33730 }
33731}
33732impl From<NotDeferrable> for TransactionMode {
33733 #[inline]
33734 fn from(node: NotDeferrable) -> TransactionMode {
33735 TransactionMode::NotDeferrable(node)
33736 }
33737}
33738impl From<ReadCommitted> for TransactionMode {
33739 #[inline]
33740 fn from(node: ReadCommitted) -> TransactionMode {
33741 TransactionMode::ReadCommitted(node)
33742 }
33743}
33744impl From<ReadOnly> for TransactionMode {
33745 #[inline]
33746 fn from(node: ReadOnly) -> TransactionMode {
33747 TransactionMode::ReadOnly(node)
33748 }
33749}
33750impl From<ReadUncommitted> for TransactionMode {
33751 #[inline]
33752 fn from(node: ReadUncommitted) -> TransactionMode {
33753 TransactionMode::ReadUncommitted(node)
33754 }
33755}
33756impl From<ReadWrite> for TransactionMode {
33757 #[inline]
33758 fn from(node: ReadWrite) -> TransactionMode {
33759 TransactionMode::ReadWrite(node)
33760 }
33761}
33762impl From<RepeatableRead> for TransactionMode {
33763 #[inline]
33764 fn from(node: RepeatableRead) -> TransactionMode {
33765 TransactionMode::RepeatableRead(node)
33766 }
33767}
33768impl From<Serializable> for TransactionMode {
33769 #[inline]
33770 fn from(node: Serializable) -> TransactionMode {
33771 TransactionMode::Serializable(node)
33772 }
33773}
33774impl AstNode for Type {
33775 #[inline]
33776 fn can_cast(kind: SyntaxKind) -> bool {
33777 matches!(
33778 kind,
33779 SyntaxKind::ARRAY_TYPE
33780 | SyntaxKind::BIT_TYPE
33781 | SyntaxKind::CHAR_TYPE
33782 | SyntaxKind::DOUBLE_TYPE
33783 | SyntaxKind::EXPR_TYPE
33784 | SyntaxKind::INTERVAL_TYPE
33785 | SyntaxKind::PATH_TYPE
33786 | SyntaxKind::PERCENT_TYPE
33787 | SyntaxKind::TIME_TYPE
33788 )
33789 }
33790 #[inline]
33791 fn cast(syntax: SyntaxNode) -> Option<Self> {
33792 let res = match syntax.kind() {
33793 SyntaxKind::ARRAY_TYPE => Type::ArrayType(ArrayType { syntax }),
33794 SyntaxKind::BIT_TYPE => Type::BitType(BitType { syntax }),
33795 SyntaxKind::CHAR_TYPE => Type::CharType(CharType { syntax }),
33796 SyntaxKind::DOUBLE_TYPE => Type::DoubleType(DoubleType { syntax }),
33797 SyntaxKind::EXPR_TYPE => Type::ExprType(ExprType { syntax }),
33798 SyntaxKind::INTERVAL_TYPE => Type::IntervalType(IntervalType { syntax }),
33799 SyntaxKind::PATH_TYPE => Type::PathType(PathType { syntax }),
33800 SyntaxKind::PERCENT_TYPE => Type::PercentType(PercentType { syntax }),
33801 SyntaxKind::TIME_TYPE => Type::TimeType(TimeType { syntax }),
33802 _ => {
33803 return None;
33804 }
33805 };
33806 Some(res)
33807 }
33808 #[inline]
33809 fn syntax(&self) -> &SyntaxNode {
33810 match self {
33811 Type::ArrayType(it) => &it.syntax,
33812 Type::BitType(it) => &it.syntax,
33813 Type::CharType(it) => &it.syntax,
33814 Type::DoubleType(it) => &it.syntax,
33815 Type::ExprType(it) => &it.syntax,
33816 Type::IntervalType(it) => &it.syntax,
33817 Type::PathType(it) => &it.syntax,
33818 Type::PercentType(it) => &it.syntax,
33819 Type::TimeType(it) => &it.syntax,
33820 }
33821 }
33822}
33823impl From<ArrayType> for Type {
33824 #[inline]
33825 fn from(node: ArrayType) -> Type {
33826 Type::ArrayType(node)
33827 }
33828}
33829impl From<BitType> for Type {
33830 #[inline]
33831 fn from(node: BitType) -> Type {
33832 Type::BitType(node)
33833 }
33834}
33835impl From<CharType> for Type {
33836 #[inline]
33837 fn from(node: CharType) -> Type {
33838 Type::CharType(node)
33839 }
33840}
33841impl From<DoubleType> for Type {
33842 #[inline]
33843 fn from(node: DoubleType) -> Type {
33844 Type::DoubleType(node)
33845 }
33846}
33847impl From<ExprType> for Type {
33848 #[inline]
33849 fn from(node: ExprType) -> Type {
33850 Type::ExprType(node)
33851 }
33852}
33853impl From<IntervalType> for Type {
33854 #[inline]
33855 fn from(node: IntervalType) -> Type {
33856 Type::IntervalType(node)
33857 }
33858}
33859impl From<PathType> for Type {
33860 #[inline]
33861 fn from(node: PathType) -> Type {
33862 Type::PathType(node)
33863 }
33864}
33865impl From<PercentType> for Type {
33866 #[inline]
33867 fn from(node: PercentType) -> Type {
33868 Type::PercentType(node)
33869 }
33870}
33871impl From<TimeType> for Type {
33872 #[inline]
33873 fn from(node: TimeType) -> Type {
33874 Type::TimeType(node)
33875 }
33876}
33877impl AstNode for WithQuery {
33878 #[inline]
33879 fn can_cast(kind: SyntaxKind) -> bool {
33880 matches!(
33881 kind,
33882 SyntaxKind::COMPOUND_SELECT
33883 | SyntaxKind::DELETE
33884 | SyntaxKind::INSERT
33885 | SyntaxKind::MERGE
33886 | SyntaxKind::PAREN_SELECT
33887 | SyntaxKind::SELECT
33888 | SyntaxKind::TABLE
33889 | SyntaxKind::UPDATE
33890 | SyntaxKind::VALUES
33891 )
33892 }
33893 #[inline]
33894 fn cast(syntax: SyntaxNode) -> Option<Self> {
33895 let res = match syntax.kind() {
33896 SyntaxKind::COMPOUND_SELECT => WithQuery::CompoundSelect(CompoundSelect { syntax }),
33897 SyntaxKind::DELETE => WithQuery::Delete(Delete { syntax }),
33898 SyntaxKind::INSERT => WithQuery::Insert(Insert { syntax }),
33899 SyntaxKind::MERGE => WithQuery::Merge(Merge { syntax }),
33900 SyntaxKind::PAREN_SELECT => WithQuery::ParenSelect(ParenSelect { syntax }),
33901 SyntaxKind::SELECT => WithQuery::Select(Select { syntax }),
33902 SyntaxKind::TABLE => WithQuery::Table(Table { syntax }),
33903 SyntaxKind::UPDATE => WithQuery::Update(Update { syntax }),
33904 SyntaxKind::VALUES => WithQuery::Values(Values { syntax }),
33905 _ => {
33906 return None;
33907 }
33908 };
33909 Some(res)
33910 }
33911 #[inline]
33912 fn syntax(&self) -> &SyntaxNode {
33913 match self {
33914 WithQuery::CompoundSelect(it) => &it.syntax,
33915 WithQuery::Delete(it) => &it.syntax,
33916 WithQuery::Insert(it) => &it.syntax,
33917 WithQuery::Merge(it) => &it.syntax,
33918 WithQuery::ParenSelect(it) => &it.syntax,
33919 WithQuery::Select(it) => &it.syntax,
33920 WithQuery::Table(it) => &it.syntax,
33921 WithQuery::Update(it) => &it.syntax,
33922 WithQuery::Values(it) => &it.syntax,
33923 }
33924 }
33925}
33926impl From<CompoundSelect> for WithQuery {
33927 #[inline]
33928 fn from(node: CompoundSelect) -> WithQuery {
33929 WithQuery::CompoundSelect(node)
33930 }
33931}
33932impl From<Delete> for WithQuery {
33933 #[inline]
33934 fn from(node: Delete) -> WithQuery {
33935 WithQuery::Delete(node)
33936 }
33937}
33938impl From<Insert> for WithQuery {
33939 #[inline]
33940 fn from(node: Insert) -> WithQuery {
33941 WithQuery::Insert(node)
33942 }
33943}
33944impl From<Merge> for WithQuery {
33945 #[inline]
33946 fn from(node: Merge) -> WithQuery {
33947 WithQuery::Merge(node)
33948 }
33949}
33950impl From<ParenSelect> for WithQuery {
33951 #[inline]
33952 fn from(node: ParenSelect) -> WithQuery {
33953 WithQuery::ParenSelect(node)
33954 }
33955}
33956impl From<Select> for WithQuery {
33957 #[inline]
33958 fn from(node: Select) -> WithQuery {
33959 WithQuery::Select(node)
33960 }
33961}
33962impl From<Table> for WithQuery {
33963 #[inline]
33964 fn from(node: Table) -> WithQuery {
33965 WithQuery::Table(node)
33966 }
33967}
33968impl From<Update> for WithQuery {
33969 #[inline]
33970 fn from(node: Update) -> WithQuery {
33971 WithQuery::Update(node)
33972 }
33973}
33974impl From<Values> for WithQuery {
33975 #[inline]
33976 fn from(node: Values) -> WithQuery {
33977 WithQuery::Values(node)
33978 }
33979}