1use crate::SyntaxKind;
5use crate::ast::AstNode;
6use crate::ast::{AstChildren, support};
7use crate::syntax_node::SyntaxNode;
8use crate::syntax_node::SyntaxToken;
9
10#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11pub struct AddColumn {
12 pub(crate) syntax: SyntaxNode,
13}
14impl AddColumn {
15 #[inline]
16 pub fn collate(&self) -> Option<Collate> {
17 support::child(&self.syntax)
18 }
19 #[inline]
20 pub fn constraints(&self) -> AstChildren<Constraint> {
21 support::children(&self.syntax)
22 }
23 #[inline]
24 pub fn if_not_exists(&self) -> Option<IfNotExists> {
25 support::child(&self.syntax)
26 }
27 #[inline]
28 pub fn name(&self) -> Option<Name> {
29 support::child(&self.syntax)
30 }
31 #[inline]
32 pub fn ty(&self) -> Option<Type> {
33 support::child(&self.syntax)
34 }
35 #[inline]
36 pub fn add_token(&self) -> Option<SyntaxToken> {
37 support::token(&self.syntax, SyntaxKind::ADD_KW)
38 }
39 #[inline]
40 pub fn column_token(&self) -> Option<SyntaxToken> {
41 support::token(&self.syntax, SyntaxKind::COLUMN_KW)
42 }
43}
44
45#[derive(Debug, Clone, PartialEq, Eq, Hash)]
46pub struct AddConstraint {
47 pub(crate) syntax: SyntaxNode,
48}
49impl AddConstraint {
50 #[inline]
51 pub fn constraint(&self) -> Option<Constraint> {
52 support::child(&self.syntax)
53 }
54 #[inline]
55 pub fn deferrable_constraint_option(&self) -> Option<DeferrableConstraintOption> {
56 support::child(&self.syntax)
57 }
58 #[inline]
59 pub fn enforced(&self) -> Option<Enforced> {
60 support::child(&self.syntax)
61 }
62 #[inline]
63 pub fn initially_deferred_constraint_option(
64 &self,
65 ) -> Option<InitiallyDeferredConstraintOption> {
66 support::child(&self.syntax)
67 }
68 #[inline]
69 pub fn initially_immediate_constraint_option(
70 &self,
71 ) -> Option<InitiallyImmediateConstraintOption> {
72 support::child(&self.syntax)
73 }
74 #[inline]
75 pub fn no_inherit(&self) -> Option<NoInherit> {
76 support::child(&self.syntax)
77 }
78 #[inline]
79 pub fn not_deferrable_constraint_option(&self) -> Option<NotDeferrableConstraintOption> {
80 support::child(&self.syntax)
81 }
82 #[inline]
83 pub fn not_enforced(&self) -> Option<NotEnforced> {
84 support::child(&self.syntax)
85 }
86 #[inline]
87 pub fn not_valid(&self) -> Option<NotValid> {
88 support::child(&self.syntax)
89 }
90 #[inline]
91 pub fn add_token(&self) -> Option<SyntaxToken> {
92 support::token(&self.syntax, SyntaxKind::ADD_KW)
93 }
94}
95
96#[derive(Debug, Clone, PartialEq, Eq, Hash)]
97pub struct AddGenerated {
98 pub(crate) syntax: SyntaxNode,
99}
100impl AddGenerated {
101 #[inline]
102 pub fn add_token(&self) -> Option<SyntaxToken> {
103 support::token(&self.syntax, SyntaxKind::ADD_KW)
104 }
105}
106
107#[derive(Debug, Clone, PartialEq, Eq, Hash)]
108pub struct AddOpClassOptions {
109 pub(crate) syntax: SyntaxNode,
110}
111impl AddOpClassOptions {
112 #[inline]
113 pub fn operator_class_option_list(&self) -> Option<OperatorClassOptionList> {
114 support::child(&self.syntax)
115 }
116 #[inline]
117 pub fn add_token(&self) -> Option<SyntaxToken> {
118 support::token(&self.syntax, SyntaxKind::ADD_KW)
119 }
120}
121
122#[derive(Debug, Clone, PartialEq, Eq, Hash)]
123pub struct Aggregate {
124 pub(crate) syntax: SyntaxNode,
125}
126impl Aggregate {
127 #[inline]
128 pub fn param_list(&self) -> Option<ParamList> {
129 support::child(&self.syntax)
130 }
131 #[inline]
132 pub fn path(&self) -> Option<Path> {
133 support::child(&self.syntax)
134 }
135}
136
137#[derive(Debug, Clone, PartialEq, Eq, Hash)]
138pub struct Alias {
139 pub(crate) syntax: SyntaxNode,
140}
141impl Alias {
142 #[inline]
143 pub fn column_list(&self) -> Option<ColumnList> {
144 support::child(&self.syntax)
145 }
146 #[inline]
147 pub fn name(&self) -> Option<Name> {
148 support::child(&self.syntax)
149 }
150 #[inline]
151 pub fn as_token(&self) -> Option<SyntaxToken> {
152 support::token(&self.syntax, SyntaxKind::AS_KW)
153 }
154}
155
156#[derive(Debug, Clone, PartialEq, Eq, Hash)]
157pub struct AllFn {
158 pub(crate) syntax: SyntaxNode,
159}
160impl AllFn {
161 #[inline]
162 pub fn expr(&self) -> Option<Expr> {
163 support::child(&self.syntax)
164 }
165 #[inline]
166 pub fn select_variant(&self) -> Option<SelectVariant> {
167 support::child(&self.syntax)
168 }
169 #[inline]
170 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
171 support::token(&self.syntax, SyntaxKind::L_PAREN)
172 }
173 #[inline]
174 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
175 support::token(&self.syntax, SyntaxKind::R_PAREN)
176 }
177 #[inline]
178 pub fn all_token(&self) -> Option<SyntaxToken> {
179 support::token(&self.syntax, SyntaxKind::ALL_KW)
180 }
181}
182
183#[derive(Debug, Clone, PartialEq, Eq, Hash)]
184pub struct AlterAggregate {
185 pub(crate) syntax: SyntaxNode,
186}
187impl AlterAggregate {
188 #[inline]
189 pub fn aggregate(&self) -> Option<Aggregate> {
190 support::child(&self.syntax)
191 }
192 #[inline]
193 pub fn aggregate_token(&self) -> Option<SyntaxToken> {
194 support::token(&self.syntax, SyntaxKind::AGGREGATE_KW)
195 }
196 #[inline]
197 pub fn alter_token(&self) -> Option<SyntaxToken> {
198 support::token(&self.syntax, SyntaxKind::ALTER_KW)
199 }
200}
201
202#[derive(Debug, Clone, PartialEq, Eq, Hash)]
203pub struct AlterCollation {
204 pub(crate) syntax: SyntaxNode,
205}
206impl AlterCollation {
207 #[inline]
208 pub fn owner_to(&self) -> Option<OwnerTo> {
209 support::child(&self.syntax)
210 }
211 #[inline]
212 pub fn path(&self) -> Option<Path> {
213 support::child(&self.syntax)
214 }
215 #[inline]
216 pub fn refresh_version(&self) -> Option<RefreshVersion> {
217 support::child(&self.syntax)
218 }
219 #[inline]
220 pub fn rename_to(&self) -> Option<RenameTo> {
221 support::child(&self.syntax)
222 }
223 #[inline]
224 pub fn set_schema(&self) -> Option<SetSchema> {
225 support::child(&self.syntax)
226 }
227 #[inline]
228 pub fn alter_token(&self) -> Option<SyntaxToken> {
229 support::token(&self.syntax, SyntaxKind::ALTER_KW)
230 }
231 #[inline]
232 pub fn collation_token(&self) -> Option<SyntaxToken> {
233 support::token(&self.syntax, SyntaxKind::COLLATION_KW)
234 }
235}
236
237#[derive(Debug, Clone, PartialEq, Eq, Hash)]
238pub struct AlterColumn {
239 pub(crate) syntax: SyntaxNode,
240}
241impl AlterColumn {
242 #[inline]
243 pub fn name_ref(&self) -> Option<NameRef> {
244 support::child(&self.syntax)
245 }
246 #[inline]
247 pub fn option(&self) -> Option<AlterColumnOption> {
248 support::child(&self.syntax)
249 }
250 #[inline]
251 pub fn alter_token(&self) -> Option<SyntaxToken> {
252 support::token(&self.syntax, SyntaxKind::ALTER_KW)
253 }
254 #[inline]
255 pub fn column_token(&self) -> Option<SyntaxToken> {
256 support::token(&self.syntax, SyntaxKind::COLUMN_KW)
257 }
258}
259
260#[derive(Debug, Clone, PartialEq, Eq, Hash)]
261pub struct AlterConstraint {
262 pub(crate) syntax: SyntaxNode,
263}
264impl AlterConstraint {
265 #[inline]
266 pub fn option(&self) -> Option<AlterColumnOption> {
267 support::child(&self.syntax)
268 }
269 #[inline]
270 pub fn alter_token(&self) -> Option<SyntaxToken> {
271 support::token(&self.syntax, SyntaxKind::ALTER_KW)
272 }
273 #[inline]
274 pub fn constraint_token(&self) -> Option<SyntaxToken> {
275 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
276 }
277}
278
279#[derive(Debug, Clone, PartialEq, Eq, Hash)]
280pub struct AlterConversion {
281 pub(crate) syntax: SyntaxNode,
282}
283impl AlterConversion {
284 #[inline]
285 pub fn owner_to(&self) -> Option<OwnerTo> {
286 support::child(&self.syntax)
287 }
288 #[inline]
289 pub fn path(&self) -> Option<Path> {
290 support::child(&self.syntax)
291 }
292 #[inline]
293 pub fn rename_to(&self) -> Option<RenameTo> {
294 support::child(&self.syntax)
295 }
296 #[inline]
297 pub fn set_schema(&self) -> Option<SetSchema> {
298 support::child(&self.syntax)
299 }
300 #[inline]
301 pub fn alter_token(&self) -> Option<SyntaxToken> {
302 support::token(&self.syntax, SyntaxKind::ALTER_KW)
303 }
304 #[inline]
305 pub fn conversion_token(&self) -> Option<SyntaxToken> {
306 support::token(&self.syntax, SyntaxKind::CONVERSION_KW)
307 }
308}
309
310#[derive(Debug, Clone, PartialEq, Eq, Hash)]
311pub struct AlterDatabase {
312 pub(crate) syntax: SyntaxNode,
313}
314impl AlterDatabase {
315 #[inline]
316 pub fn create_database_option_list(&self) -> Option<CreateDatabaseOptionList> {
317 support::child(&self.syntax)
318 }
319 #[inline]
320 pub fn name_ref(&self) -> Option<NameRef> {
321 support::child(&self.syntax)
322 }
323 #[inline]
324 pub fn owner_to(&self) -> Option<OwnerTo> {
325 support::child(&self.syntax)
326 }
327 #[inline]
328 pub fn refresh_collation_version(&self) -> Option<RefreshCollationVersion> {
329 support::child(&self.syntax)
330 }
331 #[inline]
332 pub fn rename_to(&self) -> Option<RenameTo> {
333 support::child(&self.syntax)
334 }
335 #[inline]
336 pub fn reset_config_param(&self) -> Option<ResetConfigParam> {
337 support::child(&self.syntax)
338 }
339 #[inline]
340 pub fn set_config_param(&self) -> Option<SetConfigParam> {
341 support::child(&self.syntax)
342 }
343 #[inline]
344 pub fn set_tablespace(&self) -> Option<SetTablespace> {
345 support::child(&self.syntax)
346 }
347 #[inline]
348 pub fn alter_token(&self) -> Option<SyntaxToken> {
349 support::token(&self.syntax, SyntaxKind::ALTER_KW)
350 }
351 #[inline]
352 pub fn database_token(&self) -> Option<SyntaxToken> {
353 support::token(&self.syntax, SyntaxKind::DATABASE_KW)
354 }
355}
356
357#[derive(Debug, Clone, PartialEq, Eq, Hash)]
358pub struct AlterDefaultPrivileges {
359 pub(crate) syntax: SyntaxNode,
360}
361impl AlterDefaultPrivileges {
362 #[inline]
363 pub fn grant_default_privileges(&self) -> Option<GrantDefaultPrivileges> {
364 support::child(&self.syntax)
365 }
366 #[inline]
367 pub fn name_refs(&self) -> AstChildren<NameRef> {
368 support::children(&self.syntax)
369 }
370 #[inline]
371 pub fn revoke_default_privileges(&self) -> Option<RevokeDefaultPrivileges> {
372 support::child(&self.syntax)
373 }
374 #[inline]
375 pub fn role_ref_list(&self) -> Option<RoleRefList> {
376 support::child(&self.syntax)
377 }
378 #[inline]
379 pub fn alter_token(&self) -> Option<SyntaxToken> {
380 support::token(&self.syntax, SyntaxKind::ALTER_KW)
381 }
382 #[inline]
383 pub fn default_token(&self) -> Option<SyntaxToken> {
384 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
385 }
386 #[inline]
387 pub fn for_token(&self) -> Option<SyntaxToken> {
388 support::token(&self.syntax, SyntaxKind::FOR_KW)
389 }
390 #[inline]
391 pub fn in_token(&self) -> Option<SyntaxToken> {
392 support::token(&self.syntax, SyntaxKind::IN_KW)
393 }
394 #[inline]
395 pub fn privileges_token(&self) -> Option<SyntaxToken> {
396 support::token(&self.syntax, SyntaxKind::PRIVILEGES_KW)
397 }
398 #[inline]
399 pub fn role_token(&self) -> Option<SyntaxToken> {
400 support::token(&self.syntax, SyntaxKind::ROLE_KW)
401 }
402 #[inline]
403 pub fn schema_token(&self) -> Option<SyntaxToken> {
404 support::token(&self.syntax, SyntaxKind::SCHEMA_KW)
405 }
406 #[inline]
407 pub fn user_token(&self) -> Option<SyntaxToken> {
408 support::token(&self.syntax, SyntaxKind::USER_KW)
409 }
410}
411
412#[derive(Debug, Clone, PartialEq, Eq, Hash)]
413pub struct AlterDomain {
414 pub(crate) syntax: SyntaxNode,
415}
416impl AlterDomain {
417 #[inline]
418 pub fn action(&self) -> Option<AlterDomainAction> {
419 support::child(&self.syntax)
420 }
421 #[inline]
422 pub fn path(&self) -> Option<Path> {
423 support::child(&self.syntax)
424 }
425 #[inline]
426 pub fn alter_token(&self) -> Option<SyntaxToken> {
427 support::token(&self.syntax, SyntaxKind::ALTER_KW)
428 }
429 #[inline]
430 pub fn domain_token(&self) -> Option<SyntaxToken> {
431 support::token(&self.syntax, SyntaxKind::DOMAIN_KW)
432 }
433}
434
435#[derive(Debug, Clone, PartialEq, Eq, Hash)]
436pub struct AlterEventTrigger {
437 pub(crate) syntax: SyntaxNode,
438}
439impl AlterEventTrigger {
440 #[inline]
441 pub fn name_ref(&self) -> Option<NameRef> {
442 support::child(&self.syntax)
443 }
444 #[inline]
445 pub fn owner_to(&self) -> Option<OwnerTo> {
446 support::child(&self.syntax)
447 }
448 #[inline]
449 pub fn rename_to(&self) -> Option<RenameTo> {
450 support::child(&self.syntax)
451 }
452 #[inline]
453 pub fn alter_token(&self) -> Option<SyntaxToken> {
454 support::token(&self.syntax, SyntaxKind::ALTER_KW)
455 }
456 #[inline]
457 pub fn always_token(&self) -> Option<SyntaxToken> {
458 support::token(&self.syntax, SyntaxKind::ALWAYS_KW)
459 }
460 #[inline]
461 pub fn disable_token(&self) -> Option<SyntaxToken> {
462 support::token(&self.syntax, SyntaxKind::DISABLE_KW)
463 }
464 #[inline]
465 pub fn enable_token(&self) -> Option<SyntaxToken> {
466 support::token(&self.syntax, SyntaxKind::ENABLE_KW)
467 }
468 #[inline]
469 pub fn event_token(&self) -> Option<SyntaxToken> {
470 support::token(&self.syntax, SyntaxKind::EVENT_KW)
471 }
472 #[inline]
473 pub fn replica_token(&self) -> Option<SyntaxToken> {
474 support::token(&self.syntax, SyntaxKind::REPLICA_KW)
475 }
476 #[inline]
477 pub fn trigger_token(&self) -> Option<SyntaxToken> {
478 support::token(&self.syntax, SyntaxKind::TRIGGER_KW)
479 }
480}
481
482#[derive(Debug, Clone, PartialEq, Eq, Hash)]
483pub struct AlterExtension {
484 pub(crate) syntax: SyntaxNode,
485}
486impl AlterExtension {
487 #[inline]
488 pub fn name_ref(&self) -> Option<NameRef> {
489 support::child(&self.syntax)
490 }
491 #[inline]
492 pub fn alter_token(&self) -> Option<SyntaxToken> {
493 support::token(&self.syntax, SyntaxKind::ALTER_KW)
494 }
495 #[inline]
496 pub fn extension_token(&self) -> Option<SyntaxToken> {
497 support::token(&self.syntax, SyntaxKind::EXTENSION_KW)
498 }
499}
500
501#[derive(Debug, Clone, PartialEq, Eq, Hash)]
502pub struct AlterForeignDataWrapper {
503 pub(crate) syntax: SyntaxNode,
504}
505impl AlterForeignDataWrapper {
506 #[inline]
507 pub fn fdw_option_list(&self) -> Option<FdwOptionList> {
508 support::child(&self.syntax)
509 }
510 #[inline]
511 pub fn name_ref(&self) -> Option<NameRef> {
512 support::child(&self.syntax)
513 }
514 #[inline]
515 pub fn owner_to(&self) -> Option<OwnerTo> {
516 support::child(&self.syntax)
517 }
518 #[inline]
519 pub fn rename_to(&self) -> Option<RenameTo> {
520 support::child(&self.syntax)
521 }
522 #[inline]
523 pub fn alter_token(&self) -> Option<SyntaxToken> {
524 support::token(&self.syntax, SyntaxKind::ALTER_KW)
525 }
526 #[inline]
527 pub fn data_token(&self) -> Option<SyntaxToken> {
528 support::token(&self.syntax, SyntaxKind::DATA_KW)
529 }
530 #[inline]
531 pub fn foreign_token(&self) -> Option<SyntaxToken> {
532 support::token(&self.syntax, SyntaxKind::FOREIGN_KW)
533 }
534 #[inline]
535 pub fn wrapper_token(&self) -> Option<SyntaxToken> {
536 support::token(&self.syntax, SyntaxKind::WRAPPER_KW)
537 }
538}
539
540#[derive(Debug, Clone, PartialEq, Eq, Hash)]
541pub struct AlterForeignTable {
542 pub(crate) syntax: SyntaxNode,
543}
544impl AlterForeignTable {
545 #[inline]
546 pub fn alter_table_actions(&self) -> AstChildren<AlterTableAction> {
547 support::children(&self.syntax)
548 }
549 #[inline]
550 pub fn if_exists(&self) -> Option<IfExists> {
551 support::child(&self.syntax)
552 }
553 #[inline]
554 pub fn relation_name(&self) -> Option<RelationName> {
555 support::child(&self.syntax)
556 }
557 #[inline]
558 pub fn rename_column(&self) -> Option<RenameColumn> {
559 support::child(&self.syntax)
560 }
561 #[inline]
562 pub fn rename_to(&self) -> Option<RenameTo> {
563 support::child(&self.syntax)
564 }
565 #[inline]
566 pub fn set_schema(&self) -> Option<SetSchema> {
567 support::child(&self.syntax)
568 }
569 #[inline]
570 pub fn alter_token(&self) -> Option<SyntaxToken> {
571 support::token(&self.syntax, SyntaxKind::ALTER_KW)
572 }
573 #[inline]
574 pub fn foreign_token(&self) -> Option<SyntaxToken> {
575 support::token(&self.syntax, SyntaxKind::FOREIGN_KW)
576 }
577 #[inline]
578 pub fn table_token(&self) -> Option<SyntaxToken> {
579 support::token(&self.syntax, SyntaxKind::TABLE_KW)
580 }
581}
582
583#[derive(Debug, Clone, PartialEq, Eq, Hash)]
584pub struct AlterFunction {
585 pub(crate) syntax: SyntaxNode,
586}
587impl AlterFunction {
588 #[inline]
589 pub fn depends_on_extension(&self) -> Option<DependsOnExtension> {
590 support::child(&self.syntax)
591 }
592 #[inline]
593 pub fn func_option_list(&self) -> Option<FuncOptionList> {
594 support::child(&self.syntax)
595 }
596 #[inline]
597 pub fn function_sig(&self) -> Option<FunctionSig> {
598 support::child(&self.syntax)
599 }
600 #[inline]
601 pub fn no_depends_on_extension(&self) -> Option<NoDependsOnExtension> {
602 support::child(&self.syntax)
603 }
604 #[inline]
605 pub fn owner_to(&self) -> Option<OwnerTo> {
606 support::child(&self.syntax)
607 }
608 #[inline]
609 pub fn rename_to(&self) -> Option<RenameTo> {
610 support::child(&self.syntax)
611 }
612 #[inline]
613 pub fn set_schema(&self) -> Option<SetSchema> {
614 support::child(&self.syntax)
615 }
616 #[inline]
617 pub fn alter_token(&self) -> Option<SyntaxToken> {
618 support::token(&self.syntax, SyntaxKind::ALTER_KW)
619 }
620 #[inline]
621 pub fn function_token(&self) -> Option<SyntaxToken> {
622 support::token(&self.syntax, SyntaxKind::FUNCTION_KW)
623 }
624 #[inline]
625 pub fn restrict_token(&self) -> Option<SyntaxToken> {
626 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
627 }
628}
629
630#[derive(Debug, Clone, PartialEq, Eq, Hash)]
631pub struct AlterGroup {
632 pub(crate) syntax: SyntaxNode,
633}
634impl AlterGroup {
635 #[inline]
636 pub fn name_refs(&self) -> AstChildren<NameRef> {
637 support::children(&self.syntax)
638 }
639 #[inline]
640 pub fn rename_to(&self) -> Option<RenameTo> {
641 support::child(&self.syntax)
642 }
643 #[inline]
644 pub fn role_ref(&self) -> Option<RoleRef> {
645 support::child(&self.syntax)
646 }
647 #[inline]
648 pub fn add_token(&self) -> Option<SyntaxToken> {
649 support::token(&self.syntax, SyntaxKind::ADD_KW)
650 }
651 #[inline]
652 pub fn alter_token(&self) -> Option<SyntaxToken> {
653 support::token(&self.syntax, SyntaxKind::ALTER_KW)
654 }
655 #[inline]
656 pub fn drop_token(&self) -> Option<SyntaxToken> {
657 support::token(&self.syntax, SyntaxKind::DROP_KW)
658 }
659 #[inline]
660 pub fn group_token(&self) -> Option<SyntaxToken> {
661 support::token(&self.syntax, SyntaxKind::GROUP_KW)
662 }
663 #[inline]
664 pub fn user_token(&self) -> Option<SyntaxToken> {
665 support::token(&self.syntax, SyntaxKind::USER_KW)
666 }
667}
668
669#[derive(Debug, Clone, PartialEq, Eq, Hash)]
670pub struct AlterIndex {
671 pub(crate) syntax: SyntaxNode,
672}
673impl AlterIndex {
674 #[inline]
675 pub fn alter_index_action(&self) -> Option<AlterIndexAction> {
676 support::child(&self.syntax)
677 }
678 #[inline]
679 pub fn if_exists(&self) -> Option<IfExists> {
680 support::child(&self.syntax)
681 }
682 #[inline]
683 pub fn name_ref(&self) -> Option<NameRef> {
684 support::child(&self.syntax)
685 }
686 #[inline]
687 pub fn owned_by_roles(&self) -> Option<OwnedByRoles> {
688 support::child(&self.syntax)
689 }
690 #[inline]
691 pub fn path(&self) -> Option<Path> {
692 support::child(&self.syntax)
693 }
694 #[inline]
695 pub fn all_token(&self) -> Option<SyntaxToken> {
696 support::token(&self.syntax, SyntaxKind::ALL_KW)
697 }
698 #[inline]
699 pub fn alter_token(&self) -> Option<SyntaxToken> {
700 support::token(&self.syntax, SyntaxKind::ALTER_KW)
701 }
702 #[inline]
703 pub fn in_token(&self) -> Option<SyntaxToken> {
704 support::token(&self.syntax, SyntaxKind::IN_KW)
705 }
706 #[inline]
707 pub fn index_token(&self) -> Option<SyntaxToken> {
708 support::token(&self.syntax, SyntaxKind::INDEX_KW)
709 }
710 #[inline]
711 pub fn nowait_token(&self) -> Option<SyntaxToken> {
712 support::token(&self.syntax, SyntaxKind::NOWAIT_KW)
713 }
714 #[inline]
715 pub fn set_token(&self) -> Option<SyntaxToken> {
716 support::token(&self.syntax, SyntaxKind::SET_KW)
717 }
718 #[inline]
719 pub fn tablespace_token(&self) -> Option<SyntaxToken> {
720 support::token(&self.syntax, SyntaxKind::TABLESPACE_KW)
721 }
722}
723
724#[derive(Debug, Clone, PartialEq, Eq, Hash)]
725pub struct AlterLanguage {
726 pub(crate) syntax: SyntaxNode,
727}
728impl AlterLanguage {
729 #[inline]
730 pub fn name_ref(&self) -> Option<NameRef> {
731 support::child(&self.syntax)
732 }
733 #[inline]
734 pub fn owner_to(&self) -> Option<OwnerTo> {
735 support::child(&self.syntax)
736 }
737 #[inline]
738 pub fn rename_to(&self) -> Option<RenameTo> {
739 support::child(&self.syntax)
740 }
741 #[inline]
742 pub fn alter_token(&self) -> Option<SyntaxToken> {
743 support::token(&self.syntax, SyntaxKind::ALTER_KW)
744 }
745 #[inline]
746 pub fn language_token(&self) -> Option<SyntaxToken> {
747 support::token(&self.syntax, SyntaxKind::LANGUAGE_KW)
748 }
749}
750
751#[derive(Debug, Clone, PartialEq, Eq, Hash)]
752pub struct AlterLargeObject {
753 pub(crate) syntax: SyntaxNode,
754}
755impl AlterLargeObject {
756 #[inline]
757 pub fn alter_token(&self) -> Option<SyntaxToken> {
758 support::token(&self.syntax, SyntaxKind::ALTER_KW)
759 }
760 #[inline]
761 pub fn large_token(&self) -> Option<SyntaxToken> {
762 support::token(&self.syntax, SyntaxKind::LARGE_KW)
763 }
764 #[inline]
765 pub fn object_token(&self) -> Option<SyntaxToken> {
766 support::token(&self.syntax, SyntaxKind::OBJECT_KW)
767 }
768}
769
770#[derive(Debug, Clone, PartialEq, Eq, Hash)]
771pub struct AlterMaterializedView {
772 pub(crate) syntax: SyntaxNode,
773}
774impl AlterMaterializedView {
775 #[inline]
776 pub fn action(&self) -> AstChildren<AlterMaterializedViewAction> {
777 support::children(&self.syntax)
778 }
779 #[inline]
780 pub fn if_exists(&self) -> Option<IfExists> {
781 support::child(&self.syntax)
782 }
783 #[inline]
784 pub fn name(&self) -> Option<Name> {
785 support::child(&self.syntax)
786 }
787 #[inline]
788 pub fn name_ref(&self) -> Option<NameRef> {
789 support::child(&self.syntax)
790 }
791 #[inline]
792 pub fn owned_by_roles(&self) -> Option<OwnedByRoles> {
793 support::child(&self.syntax)
794 }
795 #[inline]
796 pub fn path(&self) -> Option<Path> {
797 support::child(&self.syntax)
798 }
799 #[inline]
800 pub fn all_token(&self) -> Option<SyntaxToken> {
801 support::token(&self.syntax, SyntaxKind::ALL_KW)
802 }
803 #[inline]
804 pub fn alter_token(&self) -> Option<SyntaxToken> {
805 support::token(&self.syntax, SyntaxKind::ALTER_KW)
806 }
807 #[inline]
808 pub fn in_token(&self) -> Option<SyntaxToken> {
809 support::token(&self.syntax, SyntaxKind::IN_KW)
810 }
811 #[inline]
812 pub fn materialized_token(&self) -> Option<SyntaxToken> {
813 support::token(&self.syntax, SyntaxKind::MATERIALIZED_KW)
814 }
815 #[inline]
816 pub fn nowait_token(&self) -> Option<SyntaxToken> {
817 support::token(&self.syntax, SyntaxKind::NOWAIT_KW)
818 }
819 #[inline]
820 pub fn set_token(&self) -> Option<SyntaxToken> {
821 support::token(&self.syntax, SyntaxKind::SET_KW)
822 }
823 #[inline]
824 pub fn tablespace_token(&self) -> Option<SyntaxToken> {
825 support::token(&self.syntax, SyntaxKind::TABLESPACE_KW)
826 }
827 #[inline]
828 pub fn view_token(&self) -> Option<SyntaxToken> {
829 support::token(&self.syntax, SyntaxKind::VIEW_KW)
830 }
831}
832
833#[derive(Debug, Clone, PartialEq, Eq, Hash)]
834pub struct AlterOperator {
835 pub(crate) syntax: SyntaxNode,
836}
837impl AlterOperator {
838 #[inline]
839 pub fn op_sig(&self) -> Option<OpSig> {
840 support::child(&self.syntax)
841 }
842 #[inline]
843 pub fn owner_to(&self) -> Option<OwnerTo> {
844 support::child(&self.syntax)
845 }
846 #[inline]
847 pub fn set_options(&self) -> Option<SetOptions> {
848 support::child(&self.syntax)
849 }
850 #[inline]
851 pub fn set_schema(&self) -> Option<SetSchema> {
852 support::child(&self.syntax)
853 }
854 #[inline]
855 pub fn alter_token(&self) -> Option<SyntaxToken> {
856 support::token(&self.syntax, SyntaxKind::ALTER_KW)
857 }
858 #[inline]
859 pub fn operator_token(&self) -> Option<SyntaxToken> {
860 support::token(&self.syntax, SyntaxKind::OPERATOR_KW)
861 }
862}
863
864#[derive(Debug, Clone, PartialEq, Eq, Hash)]
865pub struct AlterOperatorClass {
866 pub(crate) syntax: SyntaxNode,
867}
868impl AlterOperatorClass {
869 #[inline]
870 pub fn name_ref(&self) -> Option<NameRef> {
871 support::child(&self.syntax)
872 }
873 #[inline]
874 pub fn owner_to(&self) -> Option<OwnerTo> {
875 support::child(&self.syntax)
876 }
877 #[inline]
878 pub fn path(&self) -> Option<Path> {
879 support::child(&self.syntax)
880 }
881 #[inline]
882 pub fn rename_to(&self) -> Option<RenameTo> {
883 support::child(&self.syntax)
884 }
885 #[inline]
886 pub fn set_schema(&self) -> Option<SetSchema> {
887 support::child(&self.syntax)
888 }
889 #[inline]
890 pub fn alter_token(&self) -> Option<SyntaxToken> {
891 support::token(&self.syntax, SyntaxKind::ALTER_KW)
892 }
893 #[inline]
894 pub fn class_token(&self) -> Option<SyntaxToken> {
895 support::token(&self.syntax, SyntaxKind::CLASS_KW)
896 }
897 #[inline]
898 pub fn operator_token(&self) -> Option<SyntaxToken> {
899 support::token(&self.syntax, SyntaxKind::OPERATOR_KW)
900 }
901 #[inline]
902 pub fn using_token(&self) -> Option<SyntaxToken> {
903 support::token(&self.syntax, SyntaxKind::USING_KW)
904 }
905}
906
907#[derive(Debug, Clone, PartialEq, Eq, Hash)]
908pub struct AlterOperatorFamily {
909 pub(crate) syntax: SyntaxNode,
910}
911impl AlterOperatorFamily {
912 #[inline]
913 pub fn add_op_class_options(&self) -> Option<AddOpClassOptions> {
914 support::child(&self.syntax)
915 }
916 #[inline]
917 pub fn drop_op_class_options(&self) -> Option<DropOpClassOptions> {
918 support::child(&self.syntax)
919 }
920 #[inline]
921 pub fn name_ref(&self) -> Option<NameRef> {
922 support::child(&self.syntax)
923 }
924 #[inline]
925 pub fn owner_to(&self) -> Option<OwnerTo> {
926 support::child(&self.syntax)
927 }
928 #[inline]
929 pub fn path(&self) -> Option<Path> {
930 support::child(&self.syntax)
931 }
932 #[inline]
933 pub fn rename_to(&self) -> Option<RenameTo> {
934 support::child(&self.syntax)
935 }
936 #[inline]
937 pub fn set_schema(&self) -> Option<SetSchema> {
938 support::child(&self.syntax)
939 }
940 #[inline]
941 pub fn alter_token(&self) -> Option<SyntaxToken> {
942 support::token(&self.syntax, SyntaxKind::ALTER_KW)
943 }
944 #[inline]
945 pub fn family_token(&self) -> Option<SyntaxToken> {
946 support::token(&self.syntax, SyntaxKind::FAMILY_KW)
947 }
948 #[inline]
949 pub fn operator_token(&self) -> Option<SyntaxToken> {
950 support::token(&self.syntax, SyntaxKind::OPERATOR_KW)
951 }
952 #[inline]
953 pub fn using_token(&self) -> Option<SyntaxToken> {
954 support::token(&self.syntax, SyntaxKind::USING_KW)
955 }
956}
957
958#[derive(Debug, Clone, PartialEq, Eq, Hash)]
959pub struct AlterOption {
960 pub(crate) syntax: SyntaxNode,
961}
962impl AlterOption {
963 #[inline]
964 pub fn literal(&self) -> Option<Literal> {
965 support::child(&self.syntax)
966 }
967 #[inline]
968 pub fn name_ref(&self) -> Option<NameRef> {
969 support::child(&self.syntax)
970 }
971 #[inline]
972 pub fn add_token(&self) -> Option<SyntaxToken> {
973 support::token(&self.syntax, SyntaxKind::ADD_KW)
974 }
975 #[inline]
976 pub fn drop_token(&self) -> Option<SyntaxToken> {
977 support::token(&self.syntax, SyntaxKind::DROP_KW)
978 }
979 #[inline]
980 pub fn set_token(&self) -> Option<SyntaxToken> {
981 support::token(&self.syntax, SyntaxKind::SET_KW)
982 }
983}
984
985#[derive(Debug, Clone, PartialEq, Eq, Hash)]
986pub struct AlterOptionList {
987 pub(crate) syntax: SyntaxNode,
988}
989impl AlterOptionList {
990 #[inline]
991 pub fn alter_options(&self) -> AstChildren<AlterOption> {
992 support::children(&self.syntax)
993 }
994}
995
996#[derive(Debug, Clone, PartialEq, Eq, Hash)]
997pub struct AlterPolicy {
998 pub(crate) syntax: SyntaxNode,
999}
1000impl AlterPolicy {
1001 #[inline]
1002 pub fn name_ref(&self) -> Option<NameRef> {
1003 support::child(&self.syntax)
1004 }
1005 #[inline]
1006 pub fn on_table(&self) -> Option<OnTable> {
1007 support::child(&self.syntax)
1008 }
1009 #[inline]
1010 pub fn rename_to(&self) -> Option<RenameTo> {
1011 support::child(&self.syntax)
1012 }
1013 #[inline]
1014 pub fn role_ref_list(&self) -> Option<RoleRefList> {
1015 support::child(&self.syntax)
1016 }
1017 #[inline]
1018 pub fn using_expr_clause(&self) -> Option<UsingExprClause> {
1019 support::child(&self.syntax)
1020 }
1021 #[inline]
1022 pub fn with_check_expr_clause(&self) -> Option<WithCheckExprClause> {
1023 support::child(&self.syntax)
1024 }
1025 #[inline]
1026 pub fn alter_token(&self) -> Option<SyntaxToken> {
1027 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1028 }
1029 #[inline]
1030 pub fn policy_token(&self) -> Option<SyntaxToken> {
1031 support::token(&self.syntax, SyntaxKind::POLICY_KW)
1032 }
1033 #[inline]
1034 pub fn to_token(&self) -> Option<SyntaxToken> {
1035 support::token(&self.syntax, SyntaxKind::TO_KW)
1036 }
1037}
1038
1039#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1040pub struct AlterProcedure {
1041 pub(crate) syntax: SyntaxNode,
1042}
1043impl AlterProcedure {
1044 #[inline]
1045 pub fn depends_on_extension(&self) -> Option<DependsOnExtension> {
1046 support::child(&self.syntax)
1047 }
1048 #[inline]
1049 pub fn func_option_list(&self) -> Option<FuncOptionList> {
1050 support::child(&self.syntax)
1051 }
1052 #[inline]
1053 pub fn function_sig(&self) -> Option<FunctionSig> {
1054 support::child(&self.syntax)
1055 }
1056 #[inline]
1057 pub fn no_depends_on_extension(&self) -> Option<NoDependsOnExtension> {
1058 support::child(&self.syntax)
1059 }
1060 #[inline]
1061 pub fn owner_to(&self) -> Option<OwnerTo> {
1062 support::child(&self.syntax)
1063 }
1064 #[inline]
1065 pub fn rename_to(&self) -> Option<RenameTo> {
1066 support::child(&self.syntax)
1067 }
1068 #[inline]
1069 pub fn set_schema(&self) -> Option<SetSchema> {
1070 support::child(&self.syntax)
1071 }
1072 #[inline]
1073 pub fn alter_token(&self) -> Option<SyntaxToken> {
1074 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1075 }
1076 #[inline]
1077 pub fn procedure_token(&self) -> Option<SyntaxToken> {
1078 support::token(&self.syntax, SyntaxKind::PROCEDURE_KW)
1079 }
1080 #[inline]
1081 pub fn restrict_token(&self) -> Option<SyntaxToken> {
1082 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
1083 }
1084}
1085
1086#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1087pub struct AlterPublication {
1088 pub(crate) syntax: SyntaxNode,
1089}
1090impl AlterPublication {
1091 #[inline]
1092 pub fn name_ref(&self) -> Option<NameRef> {
1093 support::child(&self.syntax)
1094 }
1095 #[inline]
1096 pub fn alter_token(&self) -> Option<SyntaxToken> {
1097 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1098 }
1099 #[inline]
1100 pub fn publication_token(&self) -> Option<SyntaxToken> {
1101 support::token(&self.syntax, SyntaxKind::PUBLICATION_KW)
1102 }
1103}
1104
1105#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1106pub struct AlterRole {
1107 pub(crate) syntax: SyntaxNode,
1108}
1109impl AlterRole {
1110 #[inline]
1111 pub fn role_ref(&self) -> Option<RoleRef> {
1112 support::child(&self.syntax)
1113 }
1114 #[inline]
1115 pub fn alter_token(&self) -> Option<SyntaxToken> {
1116 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1117 }
1118 #[inline]
1119 pub fn role_token(&self) -> Option<SyntaxToken> {
1120 support::token(&self.syntax, SyntaxKind::ROLE_KW)
1121 }
1122}
1123
1124#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1125pub struct AlterRoutine {
1126 pub(crate) syntax: SyntaxNode,
1127}
1128impl AlterRoutine {
1129 #[inline]
1130 pub fn depends_on_extension(&self) -> Option<DependsOnExtension> {
1131 support::child(&self.syntax)
1132 }
1133 #[inline]
1134 pub fn func_option_list(&self) -> Option<FuncOptionList> {
1135 support::child(&self.syntax)
1136 }
1137 #[inline]
1138 pub fn function_sig(&self) -> Option<FunctionSig> {
1139 support::child(&self.syntax)
1140 }
1141 #[inline]
1142 pub fn no_depends_on_extension(&self) -> Option<NoDependsOnExtension> {
1143 support::child(&self.syntax)
1144 }
1145 #[inline]
1146 pub fn owner_to(&self) -> Option<OwnerTo> {
1147 support::child(&self.syntax)
1148 }
1149 #[inline]
1150 pub fn rename_to(&self) -> Option<RenameTo> {
1151 support::child(&self.syntax)
1152 }
1153 #[inline]
1154 pub fn set_schema(&self) -> Option<SetSchema> {
1155 support::child(&self.syntax)
1156 }
1157 #[inline]
1158 pub fn alter_token(&self) -> Option<SyntaxToken> {
1159 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1160 }
1161 #[inline]
1162 pub fn restrict_token(&self) -> Option<SyntaxToken> {
1163 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
1164 }
1165 #[inline]
1166 pub fn routine_token(&self) -> Option<SyntaxToken> {
1167 support::token(&self.syntax, SyntaxKind::ROUTINE_KW)
1168 }
1169}
1170
1171#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1172pub struct AlterRule {
1173 pub(crate) syntax: SyntaxNode,
1174}
1175impl AlterRule {
1176 #[inline]
1177 pub fn name_ref(&self) -> Option<NameRef> {
1178 support::child(&self.syntax)
1179 }
1180 #[inline]
1181 pub fn on_table(&self) -> Option<OnTable> {
1182 support::child(&self.syntax)
1183 }
1184 #[inline]
1185 pub fn rename_to(&self) -> Option<RenameTo> {
1186 support::child(&self.syntax)
1187 }
1188 #[inline]
1189 pub fn alter_token(&self) -> Option<SyntaxToken> {
1190 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1191 }
1192 #[inline]
1193 pub fn on_token(&self) -> Option<SyntaxToken> {
1194 support::token(&self.syntax, SyntaxKind::ON_KW)
1195 }
1196 #[inline]
1197 pub fn rule_token(&self) -> Option<SyntaxToken> {
1198 support::token(&self.syntax, SyntaxKind::RULE_KW)
1199 }
1200}
1201
1202#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1203pub struct AlterSchema {
1204 pub(crate) syntax: SyntaxNode,
1205}
1206impl AlterSchema {
1207 #[inline]
1208 pub fn name_ref(&self) -> Option<NameRef> {
1209 support::child(&self.syntax)
1210 }
1211 #[inline]
1212 pub fn owner_to(&self) -> Option<OwnerTo> {
1213 support::child(&self.syntax)
1214 }
1215 #[inline]
1216 pub fn rename_to(&self) -> Option<RenameTo> {
1217 support::child(&self.syntax)
1218 }
1219 #[inline]
1220 pub fn alter_token(&self) -> Option<SyntaxToken> {
1221 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1222 }
1223 #[inline]
1224 pub fn schema_token(&self) -> Option<SyntaxToken> {
1225 support::token(&self.syntax, SyntaxKind::SCHEMA_KW)
1226 }
1227}
1228
1229#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1230pub struct AlterSequence {
1231 pub(crate) syntax: SyntaxNode,
1232}
1233impl AlterSequence {
1234 #[inline]
1235 pub fn if_exists(&self) -> Option<IfExists> {
1236 support::child(&self.syntax)
1237 }
1238 #[inline]
1239 pub fn path(&self) -> Option<Path> {
1240 support::child(&self.syntax)
1241 }
1242 #[inline]
1243 pub fn alter_token(&self) -> Option<SyntaxToken> {
1244 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1245 }
1246 #[inline]
1247 pub fn sequence_token(&self) -> Option<SyntaxToken> {
1248 support::token(&self.syntax, SyntaxKind::SEQUENCE_KW)
1249 }
1250}
1251
1252#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1253pub struct AlterServer {
1254 pub(crate) syntax: SyntaxNode,
1255}
1256impl AlterServer {
1257 #[inline]
1258 pub fn alter_option_list(&self) -> Option<AlterOptionList> {
1259 support::child(&self.syntax)
1260 }
1261 #[inline]
1262 pub fn name_ref(&self) -> Option<NameRef> {
1263 support::child(&self.syntax)
1264 }
1265 #[inline]
1266 pub fn alter_token(&self) -> Option<SyntaxToken> {
1267 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1268 }
1269 #[inline]
1270 pub fn server_token(&self) -> Option<SyntaxToken> {
1271 support::token(&self.syntax, SyntaxKind::SERVER_KW)
1272 }
1273}
1274
1275#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1276pub struct AlterSetStatistics {
1277 pub(crate) syntax: SyntaxNode,
1278}
1279impl AlterSetStatistics {
1280 #[inline]
1281 pub fn literal(&self) -> Option<Literal> {
1282 support::child(&self.syntax)
1283 }
1284 #[inline]
1285 pub fn name_ref(&self) -> Option<NameRef> {
1286 support::child(&self.syntax)
1287 }
1288 #[inline]
1289 pub fn column_token(&self) -> Option<SyntaxToken> {
1290 support::token(&self.syntax, SyntaxKind::COLUMN_KW)
1291 }
1292 #[inline]
1293 pub fn set_token(&self) -> Option<SyntaxToken> {
1294 support::token(&self.syntax, SyntaxKind::SET_KW)
1295 }
1296 #[inline]
1297 pub fn statistics_token(&self) -> Option<SyntaxToken> {
1298 support::token(&self.syntax, SyntaxKind::STATISTICS_KW)
1299 }
1300}
1301
1302#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1303pub struct AlterStatistics {
1304 pub(crate) syntax: SyntaxNode,
1305}
1306impl AlterStatistics {
1307 #[inline]
1308 pub fn path(&self) -> Option<Path> {
1309 support::child(&self.syntax)
1310 }
1311 #[inline]
1312 pub fn alter_token(&self) -> Option<SyntaxToken> {
1313 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1314 }
1315 #[inline]
1316 pub fn statistics_token(&self) -> Option<SyntaxToken> {
1317 support::token(&self.syntax, SyntaxKind::STATISTICS_KW)
1318 }
1319}
1320
1321#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1322pub struct AlterSubscription {
1323 pub(crate) syntax: SyntaxNode,
1324}
1325impl AlterSubscription {
1326 #[inline]
1327 pub fn name_ref(&self) -> Option<NameRef> {
1328 support::child(&self.syntax)
1329 }
1330 #[inline]
1331 pub fn alter_token(&self) -> Option<SyntaxToken> {
1332 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1333 }
1334 #[inline]
1335 pub fn subscription_token(&self) -> Option<SyntaxToken> {
1336 support::token(&self.syntax, SyntaxKind::SUBSCRIPTION_KW)
1337 }
1338}
1339
1340#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1341pub struct AlterSystem {
1342 pub(crate) syntax: SyntaxNode,
1343}
1344impl AlterSystem {
1345 #[inline]
1346 pub fn alter_token(&self) -> Option<SyntaxToken> {
1347 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1348 }
1349 #[inline]
1350 pub fn set_token(&self) -> Option<SyntaxToken> {
1351 support::token(&self.syntax, SyntaxKind::SET_KW)
1352 }
1353 #[inline]
1354 pub fn system_token(&self) -> Option<SyntaxToken> {
1355 support::token(&self.syntax, SyntaxKind::SYSTEM_KW)
1356 }
1357}
1358
1359#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1360pub struct AlterTable {
1361 pub(crate) syntax: SyntaxNode,
1362}
1363impl AlterTable {
1364 #[inline]
1365 pub fn actions(&self) -> AstChildren<AlterTableAction> {
1366 support::children(&self.syntax)
1367 }
1368 #[inline]
1369 pub fn relation_name(&self) -> Option<RelationName> {
1370 support::child(&self.syntax)
1371 }
1372 #[inline]
1373 pub fn alter_token(&self) -> Option<SyntaxToken> {
1374 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1375 }
1376 #[inline]
1377 pub fn table_token(&self) -> Option<SyntaxToken> {
1378 support::token(&self.syntax, SyntaxKind::TABLE_KW)
1379 }
1380}
1381
1382#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1383pub struct AlterTablespace {
1384 pub(crate) syntax: SyntaxNode,
1385}
1386impl AlterTablespace {
1387 #[inline]
1388 pub fn owner_to(&self) -> Option<OwnerTo> {
1389 support::child(&self.syntax)
1390 }
1391 #[inline]
1392 pub fn path(&self) -> Option<Path> {
1393 support::child(&self.syntax)
1394 }
1395 #[inline]
1396 pub fn rename_to(&self) -> Option<RenameTo> {
1397 support::child(&self.syntax)
1398 }
1399 #[inline]
1400 pub fn reset_options(&self) -> Option<ResetOptions> {
1401 support::child(&self.syntax)
1402 }
1403 #[inline]
1404 pub fn set_options(&self) -> Option<SetOptions> {
1405 support::child(&self.syntax)
1406 }
1407 #[inline]
1408 pub fn alter_token(&self) -> Option<SyntaxToken> {
1409 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1410 }
1411 #[inline]
1412 pub fn tablespace_token(&self) -> Option<SyntaxToken> {
1413 support::token(&self.syntax, SyntaxKind::TABLESPACE_KW)
1414 }
1415}
1416
1417#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1418pub struct AlterTextSearchConfiguration {
1419 pub(crate) syntax: SyntaxNode,
1420}
1421impl AlterTextSearchConfiguration {
1422 #[inline]
1423 pub fn owner_to(&self) -> Option<OwnerTo> {
1424 support::child(&self.syntax)
1425 }
1426 #[inline]
1427 pub fn path(&self) -> Option<Path> {
1428 support::child(&self.syntax)
1429 }
1430 #[inline]
1431 pub fn rename_to(&self) -> Option<RenameTo> {
1432 support::child(&self.syntax)
1433 }
1434 #[inline]
1435 pub fn set_schema(&self) -> Option<SetSchema> {
1436 support::child(&self.syntax)
1437 }
1438 #[inline]
1439 pub fn alter_token(&self) -> Option<SyntaxToken> {
1440 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1441 }
1442 #[inline]
1443 pub fn configuration_token(&self) -> Option<SyntaxToken> {
1444 support::token(&self.syntax, SyntaxKind::CONFIGURATION_KW)
1445 }
1446 #[inline]
1447 pub fn search_token(&self) -> Option<SyntaxToken> {
1448 support::token(&self.syntax, SyntaxKind::SEARCH_KW)
1449 }
1450 #[inline]
1451 pub fn text_token(&self) -> Option<SyntaxToken> {
1452 support::token(&self.syntax, SyntaxKind::TEXT_KW)
1453 }
1454}
1455
1456#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1457pub struct AlterTextSearchDictionary {
1458 pub(crate) syntax: SyntaxNode,
1459}
1460impl AlterTextSearchDictionary {
1461 #[inline]
1462 pub fn attribute_list(&self) -> Option<AttributeList> {
1463 support::child(&self.syntax)
1464 }
1465 #[inline]
1466 pub fn owner_to(&self) -> Option<OwnerTo> {
1467 support::child(&self.syntax)
1468 }
1469 #[inline]
1470 pub fn path(&self) -> Option<Path> {
1471 support::child(&self.syntax)
1472 }
1473 #[inline]
1474 pub fn rename_to(&self) -> Option<RenameTo> {
1475 support::child(&self.syntax)
1476 }
1477 #[inline]
1478 pub fn set_schema(&self) -> Option<SetSchema> {
1479 support::child(&self.syntax)
1480 }
1481 #[inline]
1482 pub fn alter_token(&self) -> Option<SyntaxToken> {
1483 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1484 }
1485 #[inline]
1486 pub fn dictionary_token(&self) -> Option<SyntaxToken> {
1487 support::token(&self.syntax, SyntaxKind::DICTIONARY_KW)
1488 }
1489 #[inline]
1490 pub fn search_token(&self) -> Option<SyntaxToken> {
1491 support::token(&self.syntax, SyntaxKind::SEARCH_KW)
1492 }
1493 #[inline]
1494 pub fn text_token(&self) -> Option<SyntaxToken> {
1495 support::token(&self.syntax, SyntaxKind::TEXT_KW)
1496 }
1497}
1498
1499#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1500pub struct AlterTextSearchParser {
1501 pub(crate) syntax: SyntaxNode,
1502}
1503impl AlterTextSearchParser {
1504 #[inline]
1505 pub fn path(&self) -> Option<Path> {
1506 support::child(&self.syntax)
1507 }
1508 #[inline]
1509 pub fn rename_to(&self) -> Option<RenameTo> {
1510 support::child(&self.syntax)
1511 }
1512 #[inline]
1513 pub fn set_schema(&self) -> Option<SetSchema> {
1514 support::child(&self.syntax)
1515 }
1516 #[inline]
1517 pub fn alter_token(&self) -> Option<SyntaxToken> {
1518 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1519 }
1520 #[inline]
1521 pub fn parser_token(&self) -> Option<SyntaxToken> {
1522 support::token(&self.syntax, SyntaxKind::PARSER_KW)
1523 }
1524 #[inline]
1525 pub fn search_token(&self) -> Option<SyntaxToken> {
1526 support::token(&self.syntax, SyntaxKind::SEARCH_KW)
1527 }
1528 #[inline]
1529 pub fn text_token(&self) -> Option<SyntaxToken> {
1530 support::token(&self.syntax, SyntaxKind::TEXT_KW)
1531 }
1532}
1533
1534#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1535pub struct AlterTextSearchTemplate {
1536 pub(crate) syntax: SyntaxNode,
1537}
1538impl AlterTextSearchTemplate {
1539 #[inline]
1540 pub fn path(&self) -> Option<Path> {
1541 support::child(&self.syntax)
1542 }
1543 #[inline]
1544 pub fn rename_to(&self) -> Option<RenameTo> {
1545 support::child(&self.syntax)
1546 }
1547 #[inline]
1548 pub fn set_schema(&self) -> Option<SetSchema> {
1549 support::child(&self.syntax)
1550 }
1551 #[inline]
1552 pub fn alter_token(&self) -> Option<SyntaxToken> {
1553 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1554 }
1555 #[inline]
1556 pub fn search_token(&self) -> Option<SyntaxToken> {
1557 support::token(&self.syntax, SyntaxKind::SEARCH_KW)
1558 }
1559 #[inline]
1560 pub fn template_token(&self) -> Option<SyntaxToken> {
1561 support::token(&self.syntax, SyntaxKind::TEMPLATE_KW)
1562 }
1563 #[inline]
1564 pub fn text_token(&self) -> Option<SyntaxToken> {
1565 support::token(&self.syntax, SyntaxKind::TEXT_KW)
1566 }
1567}
1568
1569#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1570pub struct AlterTrigger {
1571 pub(crate) syntax: SyntaxNode,
1572}
1573impl AlterTrigger {
1574 #[inline]
1575 pub fn depends_on_extension(&self) -> Option<DependsOnExtension> {
1576 support::child(&self.syntax)
1577 }
1578 #[inline]
1579 pub fn name_ref(&self) -> Option<NameRef> {
1580 support::child(&self.syntax)
1581 }
1582 #[inline]
1583 pub fn no_depends_on_extension(&self) -> Option<NoDependsOnExtension> {
1584 support::child(&self.syntax)
1585 }
1586 #[inline]
1587 pub fn on_table(&self) -> Option<OnTable> {
1588 support::child(&self.syntax)
1589 }
1590 #[inline]
1591 pub fn rename_to(&self) -> Option<RenameTo> {
1592 support::child(&self.syntax)
1593 }
1594 #[inline]
1595 pub fn alter_token(&self) -> Option<SyntaxToken> {
1596 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1597 }
1598 #[inline]
1599 pub fn trigger_token(&self) -> Option<SyntaxToken> {
1600 support::token(&self.syntax, SyntaxKind::TRIGGER_KW)
1601 }
1602}
1603
1604#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1605pub struct AlterType {
1606 pub(crate) syntax: SyntaxNode,
1607}
1608impl AlterType {
1609 #[inline]
1610 pub fn path(&self) -> Option<Path> {
1611 support::child(&self.syntax)
1612 }
1613 #[inline]
1614 pub fn alter_token(&self) -> Option<SyntaxToken> {
1615 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1616 }
1617 #[inline]
1618 pub fn type_token(&self) -> Option<SyntaxToken> {
1619 support::token(&self.syntax, SyntaxKind::TYPE_KW)
1620 }
1621}
1622
1623#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1624pub struct AlterUser {
1625 pub(crate) syntax: SyntaxNode,
1626}
1627impl AlterUser {
1628 #[inline]
1629 pub fn role_ref(&self) -> Option<RoleRef> {
1630 support::child(&self.syntax)
1631 }
1632 #[inline]
1633 pub fn alter_token(&self) -> Option<SyntaxToken> {
1634 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1635 }
1636 #[inline]
1637 pub fn user_token(&self) -> Option<SyntaxToken> {
1638 support::token(&self.syntax, SyntaxKind::USER_KW)
1639 }
1640}
1641
1642#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1643pub struct AlterUserMapping {
1644 pub(crate) syntax: SyntaxNode,
1645}
1646impl AlterUserMapping {
1647 #[inline]
1648 pub fn alter_option_list(&self) -> Option<AlterOptionList> {
1649 support::child(&self.syntax)
1650 }
1651 #[inline]
1652 pub fn role_ref(&self) -> Option<RoleRef> {
1653 support::child(&self.syntax)
1654 }
1655 #[inline]
1656 pub fn server_name(&self) -> Option<ServerName> {
1657 support::child(&self.syntax)
1658 }
1659 #[inline]
1660 pub fn alter_token(&self) -> Option<SyntaxToken> {
1661 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1662 }
1663 #[inline]
1664 pub fn for_token(&self) -> Option<SyntaxToken> {
1665 support::token(&self.syntax, SyntaxKind::FOR_KW)
1666 }
1667 #[inline]
1668 pub fn mapping_token(&self) -> Option<SyntaxToken> {
1669 support::token(&self.syntax, SyntaxKind::MAPPING_KW)
1670 }
1671 #[inline]
1672 pub fn user_token(&self) -> Option<SyntaxToken> {
1673 support::token(&self.syntax, SyntaxKind::USER_KW)
1674 }
1675}
1676
1677#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1678pub struct AlterView {
1679 pub(crate) syntax: SyntaxNode,
1680}
1681impl AlterView {
1682 #[inline]
1683 pub fn path(&self) -> Option<Path> {
1684 support::child(&self.syntax)
1685 }
1686 #[inline]
1687 pub fn alter_token(&self) -> Option<SyntaxToken> {
1688 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1689 }
1690 #[inline]
1691 pub fn view_token(&self) -> Option<SyntaxToken> {
1692 support::token(&self.syntax, SyntaxKind::VIEW_KW)
1693 }
1694}
1695
1696#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1697pub struct Analyze {
1698 pub(crate) syntax: SyntaxNode,
1699}
1700impl Analyze {
1701 #[inline]
1702 pub fn option_item_list(&self) -> Option<OptionItemList> {
1703 support::child(&self.syntax)
1704 }
1705 #[inline]
1706 pub fn table_and_columns_list(&self) -> Option<TableAndColumnsList> {
1707 support::child(&self.syntax)
1708 }
1709 #[inline]
1710 pub fn analyse_token(&self) -> Option<SyntaxToken> {
1711 support::token(&self.syntax, SyntaxKind::ANALYSE_KW)
1712 }
1713 #[inline]
1714 pub fn analyze_token(&self) -> Option<SyntaxToken> {
1715 support::token(&self.syntax, SyntaxKind::ANALYZE_KW)
1716 }
1717 #[inline]
1718 pub fn verbose_token(&self) -> Option<SyntaxToken> {
1719 support::token(&self.syntax, SyntaxKind::VERBOSE_KW)
1720 }
1721}
1722
1723#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1724pub struct AnyFn {
1725 pub(crate) syntax: SyntaxNode,
1726}
1727impl AnyFn {
1728 #[inline]
1729 pub fn expr(&self) -> Option<Expr> {
1730 support::child(&self.syntax)
1731 }
1732 #[inline]
1733 pub fn select_variant(&self) -> Option<SelectVariant> {
1734 support::child(&self.syntax)
1735 }
1736 #[inline]
1737 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
1738 support::token(&self.syntax, SyntaxKind::L_PAREN)
1739 }
1740 #[inline]
1741 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
1742 support::token(&self.syntax, SyntaxKind::R_PAREN)
1743 }
1744 #[inline]
1745 pub fn any_token(&self) -> Option<SyntaxToken> {
1746 support::token(&self.syntax, SyntaxKind::ANY_KW)
1747 }
1748}
1749
1750#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1751pub struct Arg {
1752 pub(crate) syntax: SyntaxNode,
1753}
1754impl Arg {
1755 #[inline]
1756 pub fn expr(&self) -> Option<Expr> {
1757 support::child(&self.syntax)
1758 }
1759}
1760
1761#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1762pub struct ArgList {
1763 pub(crate) syntax: SyntaxNode,
1764}
1765impl ArgList {
1766 #[inline]
1767 pub fn args(&self) -> AstChildren<Expr> {
1768 support::children(&self.syntax)
1769 }
1770 #[inline]
1771 pub fn expr(&self) -> Option<Expr> {
1772 support::child(&self.syntax)
1773 }
1774 #[inline]
1775 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
1776 support::token(&self.syntax, SyntaxKind::L_PAREN)
1777 }
1778 #[inline]
1779 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
1780 support::token(&self.syntax, SyntaxKind::R_PAREN)
1781 }
1782 #[inline]
1783 pub fn star_token(&self) -> Option<SyntaxToken> {
1784 support::token(&self.syntax, SyntaxKind::STAR)
1785 }
1786 #[inline]
1787 pub fn all_token(&self) -> Option<SyntaxToken> {
1788 support::token(&self.syntax, SyntaxKind::ALL_KW)
1789 }
1790 #[inline]
1791 pub fn distinct_token(&self) -> Option<SyntaxToken> {
1792 support::token(&self.syntax, SyntaxKind::DISTINCT_KW)
1793 }
1794 #[inline]
1795 pub fn variadic_token(&self) -> Option<SyntaxToken> {
1796 support::token(&self.syntax, SyntaxKind::VARIADIC_KW)
1797 }
1798}
1799
1800#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1801pub struct ArrayExpr {
1802 pub(crate) syntax: SyntaxNode,
1803}
1804impl ArrayExpr {
1805 #[inline]
1806 pub fn exprs(&self) -> AstChildren<Expr> {
1807 support::children(&self.syntax)
1808 }
1809 #[inline]
1810 pub fn select(&self) -> Option<Select> {
1811 support::child(&self.syntax)
1812 }
1813 #[inline]
1814 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
1815 support::token(&self.syntax, SyntaxKind::L_PAREN)
1816 }
1817 #[inline]
1818 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
1819 support::token(&self.syntax, SyntaxKind::R_PAREN)
1820 }
1821 #[inline]
1822 pub fn l_brack_token(&self) -> Option<SyntaxToken> {
1823 support::token(&self.syntax, SyntaxKind::L_BRACK)
1824 }
1825 #[inline]
1826 pub fn r_brack_token(&self) -> Option<SyntaxToken> {
1827 support::token(&self.syntax, SyntaxKind::R_BRACK)
1828 }
1829 #[inline]
1830 pub fn array_token(&self) -> Option<SyntaxToken> {
1831 support::token(&self.syntax, SyntaxKind::ARRAY_KW)
1832 }
1833}
1834
1835#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1836pub struct ArrayType {
1837 pub(crate) syntax: SyntaxNode,
1838}
1839impl ArrayType {
1840 #[inline]
1841 pub fn expr(&self) -> Option<Expr> {
1842 support::child(&self.syntax)
1843 }
1844 #[inline]
1845 pub fn name_ref(&self) -> Option<NameRef> {
1846 support::child(&self.syntax)
1847 }
1848 #[inline]
1849 pub fn ty(&self) -> Option<Type> {
1850 support::child(&self.syntax)
1851 }
1852 #[inline]
1853 pub fn l_brack_token(&self) -> Option<SyntaxToken> {
1854 support::token(&self.syntax, SyntaxKind::L_BRACK)
1855 }
1856 #[inline]
1857 pub fn r_brack_token(&self) -> Option<SyntaxToken> {
1858 support::token(&self.syntax, SyntaxKind::R_BRACK)
1859 }
1860 #[inline]
1861 pub fn array_token(&self) -> Option<SyntaxToken> {
1862 support::token(&self.syntax, SyntaxKind::ARRAY_KW)
1863 }
1864}
1865
1866#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1867pub struct AsFuncOption {
1868 pub(crate) syntax: SyntaxNode,
1869}
1870impl AsFuncOption {
1871 #[inline]
1872 pub fn definition(&self) -> Option<Literal> {
1873 support::child(&self.syntax)
1874 }
1875 #[inline]
1876 pub fn link_symbol(&self) -> Option<Literal> {
1877 support::child(&self.syntax)
1878 }
1879 #[inline]
1880 pub fn obj_file(&self) -> Option<Literal> {
1881 support::child(&self.syntax)
1882 }
1883 #[inline]
1884 pub fn comma_token(&self) -> Option<SyntaxToken> {
1885 support::token(&self.syntax, SyntaxKind::COMMA)
1886 }
1887 #[inline]
1888 pub fn as_token(&self) -> Option<SyntaxToken> {
1889 support::token(&self.syntax, SyntaxKind::AS_KW)
1890 }
1891}
1892
1893#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1894pub struct AsName {
1895 pub(crate) syntax: SyntaxNode,
1896}
1897impl AsName {
1898 #[inline]
1899 pub fn name(&self) -> Option<Name> {
1900 support::child(&self.syntax)
1901 }
1902 #[inline]
1903 pub fn as_token(&self) -> Option<SyntaxToken> {
1904 support::token(&self.syntax, SyntaxKind::AS_KW)
1905 }
1906}
1907
1908#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1909pub struct AsPolicyType {
1910 pub(crate) syntax: SyntaxNode,
1911}
1912impl AsPolicyType {
1913 #[inline]
1914 pub fn as_token(&self) -> Option<SyntaxToken> {
1915 support::token(&self.syntax, SyntaxKind::AS_KW)
1916 }
1917 #[inline]
1918 pub fn ident_token(&self) -> Option<SyntaxToken> {
1919 support::token(&self.syntax, SyntaxKind::IDENT)
1920 }
1921}
1922
1923#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1924pub struct AtTimeZone {
1925 pub(crate) syntax: SyntaxNode,
1926}
1927impl AtTimeZone {
1928 #[inline]
1929 pub fn at_token(&self) -> Option<SyntaxToken> {
1930 support::token(&self.syntax, SyntaxKind::AT_KW)
1931 }
1932 #[inline]
1933 pub fn time_token(&self) -> Option<SyntaxToken> {
1934 support::token(&self.syntax, SyntaxKind::TIME_KW)
1935 }
1936 #[inline]
1937 pub fn zone_token(&self) -> Option<SyntaxToken> {
1938 support::token(&self.syntax, SyntaxKind::ZONE_KW)
1939 }
1940}
1941
1942#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1943pub struct AttachPartition {
1944 pub(crate) syntax: SyntaxNode,
1945}
1946impl AttachPartition {
1947 #[inline]
1948 pub fn partition_type(&self) -> Option<PartitionType> {
1949 support::child(&self.syntax)
1950 }
1951 #[inline]
1952 pub fn path(&self) -> Option<Path> {
1953 support::child(&self.syntax)
1954 }
1955 #[inline]
1956 pub fn attach_token(&self) -> Option<SyntaxToken> {
1957 support::token(&self.syntax, SyntaxKind::ATTACH_KW)
1958 }
1959 #[inline]
1960 pub fn partition_token(&self) -> Option<SyntaxToken> {
1961 support::token(&self.syntax, SyntaxKind::PARTITION_KW)
1962 }
1963}
1964
1965#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1966pub struct AttributeList {
1967 pub(crate) syntax: SyntaxNode,
1968}
1969impl AttributeList {
1970 #[inline]
1971 pub fn attribute_options(&self) -> AstChildren<AttributeOption> {
1972 support::children(&self.syntax)
1973 }
1974 #[inline]
1975 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
1976 support::token(&self.syntax, SyntaxKind::L_PAREN)
1977 }
1978 #[inline]
1979 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
1980 support::token(&self.syntax, SyntaxKind::R_PAREN)
1981 }
1982}
1983
1984#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1985pub struct AttributeOption {
1986 pub(crate) syntax: SyntaxNode,
1987}
1988impl AttributeOption {
1989 #[inline]
1990 pub fn attribute_value(&self) -> Option<AttributeValue> {
1991 support::child(&self.syntax)
1992 }
1993 #[inline]
1994 pub fn name(&self) -> Option<Name> {
1995 support::child(&self.syntax)
1996 }
1997 #[inline]
1998 pub fn dot_token(&self) -> Option<SyntaxToken> {
1999 support::token(&self.syntax, SyntaxKind::DOT)
2000 }
2001 #[inline]
2002 pub fn eq_token(&self) -> Option<SyntaxToken> {
2003 support::token(&self.syntax, SyntaxKind::EQ)
2004 }
2005}
2006
2007#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2008pub struct AttributeValue {
2009 pub(crate) syntax: SyntaxNode,
2010}
2011impl AttributeValue {
2012 #[inline]
2013 pub fn literal(&self) -> Option<Literal> {
2014 support::child(&self.syntax)
2015 }
2016 #[inline]
2017 pub fn op(&self) -> Option<Op> {
2018 support::child(&self.syntax)
2019 }
2020 #[inline]
2021 pub fn ty(&self) -> Option<Type> {
2022 support::child(&self.syntax)
2023 }
2024 #[inline]
2025 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
2026 support::token(&self.syntax, SyntaxKind::L_PAREN)
2027 }
2028 #[inline]
2029 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
2030 support::token(&self.syntax, SyntaxKind::R_PAREN)
2031 }
2032 #[inline]
2033 pub fn none_token(&self) -> Option<SyntaxToken> {
2034 support::token(&self.syntax, SyntaxKind::NONE_KW)
2035 }
2036 #[inline]
2037 pub fn operator_token(&self) -> Option<SyntaxToken> {
2038 support::token(&self.syntax, SyntaxKind::OPERATOR_KW)
2039 }
2040}
2041
2042#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2043pub struct Begin {
2044 pub(crate) syntax: SyntaxNode,
2045}
2046impl Begin {
2047 #[inline]
2048 pub fn transaction_mode_list(&self) -> Option<TransactionModeList> {
2049 support::child(&self.syntax)
2050 }
2051 #[inline]
2052 pub fn begin_token(&self) -> Option<SyntaxToken> {
2053 support::token(&self.syntax, SyntaxKind::BEGIN_KW)
2054 }
2055 #[inline]
2056 pub fn start_token(&self) -> Option<SyntaxToken> {
2057 support::token(&self.syntax, SyntaxKind::START_KW)
2058 }
2059 #[inline]
2060 pub fn transaction_token(&self) -> Option<SyntaxToken> {
2061 support::token(&self.syntax, SyntaxKind::TRANSACTION_KW)
2062 }
2063 #[inline]
2064 pub fn work_token(&self) -> Option<SyntaxToken> {
2065 support::token(&self.syntax, SyntaxKind::WORK_KW)
2066 }
2067}
2068
2069#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2070pub struct BeginFuncOption {
2071 pub(crate) syntax: SyntaxNode,
2072}
2073impl BeginFuncOption {
2074 #[inline]
2075 pub fn return_func_option(&self) -> Option<ReturnFuncOption> {
2076 support::child(&self.syntax)
2077 }
2078 #[inline]
2079 pub fn stmt(&self) -> Option<Stmt> {
2080 support::child(&self.syntax)
2081 }
2082 #[inline]
2083 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
2084 support::token(&self.syntax, SyntaxKind::SEMICOLON)
2085 }
2086}
2087
2088#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2089pub struct BeginFuncOptionList {
2090 pub(crate) syntax: SyntaxNode,
2091}
2092impl BeginFuncOptionList {
2093 #[inline]
2094 pub fn begin_func_options(&self) -> AstChildren<BeginFuncOption> {
2095 support::children(&self.syntax)
2096 }
2097 #[inline]
2098 pub fn atomic_token(&self) -> Option<SyntaxToken> {
2099 support::token(&self.syntax, SyntaxKind::ATOMIC_KW)
2100 }
2101 #[inline]
2102 pub fn begin_token(&self) -> Option<SyntaxToken> {
2103 support::token(&self.syntax, SyntaxKind::BEGIN_KW)
2104 }
2105 #[inline]
2106 pub fn end_token(&self) -> Option<SyntaxToken> {
2107 support::token(&self.syntax, SyntaxKind::END_KW)
2108 }
2109}
2110
2111#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2112pub struct BetweenExpr {
2113 pub(crate) syntax: SyntaxNode,
2114}
2115impl BetweenExpr {
2116 #[inline]
2117 pub fn and_token(&self) -> Option<SyntaxToken> {
2118 support::token(&self.syntax, SyntaxKind::AND_KW)
2119 }
2120 #[inline]
2121 pub fn between_token(&self) -> Option<SyntaxToken> {
2122 support::token(&self.syntax, SyntaxKind::BETWEEN_KW)
2123 }
2124}
2125
2126#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2127pub struct BinExpr {
2128 pub(crate) syntax: SyntaxNode,
2129}
2130impl BinExpr {
2131 #[inline]
2132 pub fn op(&self) -> Option<Op> {
2133 support::child(&self.syntax)
2134 }
2135}
2136
2137#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2138pub struct BitType {
2139 pub(crate) syntax: SyntaxNode,
2140}
2141impl BitType {
2142 #[inline]
2143 pub fn arg_list(&self) -> Option<ArgList> {
2144 support::child(&self.syntax)
2145 }
2146 #[inline]
2147 pub fn bit_token(&self) -> Option<SyntaxToken> {
2148 support::token(&self.syntax, SyntaxKind::BIT_KW)
2149 }
2150 #[inline]
2151 pub fn varying_token(&self) -> Option<SyntaxToken> {
2152 support::token(&self.syntax, SyntaxKind::VARYING_KW)
2153 }
2154}
2155
2156#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2157pub struct Call {
2158 pub(crate) syntax: SyntaxNode,
2159}
2160impl Call {
2161 #[inline]
2162 pub fn arg_list(&self) -> Option<ArgList> {
2163 support::child(&self.syntax)
2164 }
2165 #[inline]
2166 pub fn path(&self) -> Option<Path> {
2167 support::child(&self.syntax)
2168 }
2169 #[inline]
2170 pub fn call_token(&self) -> Option<SyntaxToken> {
2171 support::token(&self.syntax, SyntaxKind::CALL_KW)
2172 }
2173}
2174
2175#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2176pub struct CallExpr {
2177 pub(crate) syntax: SyntaxNode,
2178}
2179impl CallExpr {
2180 #[inline]
2181 pub fn all_fn(&self) -> Option<AllFn> {
2182 support::child(&self.syntax)
2183 }
2184 #[inline]
2185 pub fn any_fn(&self) -> Option<AnyFn> {
2186 support::child(&self.syntax)
2187 }
2188 #[inline]
2189 pub fn arg_list(&self) -> Option<ArgList> {
2190 support::child(&self.syntax)
2191 }
2192 #[inline]
2193 pub fn exists_fn(&self) -> Option<ExistsFn> {
2194 support::child(&self.syntax)
2195 }
2196 #[inline]
2197 pub fn expr(&self) -> Option<Expr> {
2198 support::child(&self.syntax)
2199 }
2200 #[inline]
2201 pub fn extract_fn(&self) -> Option<ExtractFn> {
2202 support::child(&self.syntax)
2203 }
2204 #[inline]
2205 pub fn filter_clause(&self) -> Option<FilterClause> {
2206 support::child(&self.syntax)
2207 }
2208 #[inline]
2209 pub fn json_array_agg_fn(&self) -> Option<JsonArrayAggFn> {
2210 support::child(&self.syntax)
2211 }
2212 #[inline]
2213 pub fn json_array_fn(&self) -> Option<JsonArrayFn> {
2214 support::child(&self.syntax)
2215 }
2216 #[inline]
2217 pub fn json_exists_fn(&self) -> Option<JsonExistsFn> {
2218 support::child(&self.syntax)
2219 }
2220 #[inline]
2221 pub fn json_fn(&self) -> Option<JsonFn> {
2222 support::child(&self.syntax)
2223 }
2224 #[inline]
2225 pub fn json_object_agg_fn(&self) -> Option<JsonObjectAggFn> {
2226 support::child(&self.syntax)
2227 }
2228 #[inline]
2229 pub fn json_object_fn(&self) -> Option<JsonObjectFn> {
2230 support::child(&self.syntax)
2231 }
2232 #[inline]
2233 pub fn json_query_fn(&self) -> Option<JsonQueryFn> {
2234 support::child(&self.syntax)
2235 }
2236 #[inline]
2237 pub fn json_scalar_fn(&self) -> Option<JsonScalarFn> {
2238 support::child(&self.syntax)
2239 }
2240 #[inline]
2241 pub fn json_serialize_fn(&self) -> Option<JsonSerializeFn> {
2242 support::child(&self.syntax)
2243 }
2244 #[inline]
2245 pub fn json_value_fn(&self) -> Option<JsonValueFn> {
2246 support::child(&self.syntax)
2247 }
2248 #[inline]
2249 pub fn over_clause(&self) -> Option<OverClause> {
2250 support::child(&self.syntax)
2251 }
2252 #[inline]
2253 pub fn overlay_fn(&self) -> Option<OverlayFn> {
2254 support::child(&self.syntax)
2255 }
2256 #[inline]
2257 pub fn position_fn(&self) -> Option<PositionFn> {
2258 support::child(&self.syntax)
2259 }
2260 #[inline]
2261 pub fn some_fn(&self) -> Option<SomeFn> {
2262 support::child(&self.syntax)
2263 }
2264 #[inline]
2265 pub fn substring_fn(&self) -> Option<SubstringFn> {
2266 support::child(&self.syntax)
2267 }
2268 #[inline]
2269 pub fn trim_fn(&self) -> Option<TrimFn> {
2270 support::child(&self.syntax)
2271 }
2272 #[inline]
2273 pub fn within_clause(&self) -> Option<WithinClause> {
2274 support::child(&self.syntax)
2275 }
2276 #[inline]
2277 pub fn xml_element_fn(&self) -> Option<XmlElementFn> {
2278 support::child(&self.syntax)
2279 }
2280 #[inline]
2281 pub fn xml_exists_fn(&self) -> Option<XmlExistsFn> {
2282 support::child(&self.syntax)
2283 }
2284 #[inline]
2285 pub fn xml_forest_fn(&self) -> Option<XmlForestFn> {
2286 support::child(&self.syntax)
2287 }
2288 #[inline]
2289 pub fn xml_parse_fn(&self) -> Option<XmlParseFn> {
2290 support::child(&self.syntax)
2291 }
2292 #[inline]
2293 pub fn xml_pi_fn(&self) -> Option<XmlPiFn> {
2294 support::child(&self.syntax)
2295 }
2296 #[inline]
2297 pub fn xml_root_fn(&self) -> Option<XmlRootFn> {
2298 support::child(&self.syntax)
2299 }
2300 #[inline]
2301 pub fn xml_serialize_fn(&self) -> Option<XmlSerializeFn> {
2302 support::child(&self.syntax)
2303 }
2304}
2305
2306#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2307pub struct Cascade {
2308 pub(crate) syntax: SyntaxNode,
2309}
2310impl Cascade {
2311 #[inline]
2312 pub fn cascade_token(&self) -> Option<SyntaxToken> {
2313 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
2314 }
2315}
2316
2317#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2318pub struct CaseExpr {
2319 pub(crate) syntax: SyntaxNode,
2320}
2321impl CaseExpr {
2322 #[inline]
2323 pub fn else_clause(&self) -> Option<ElseClause> {
2324 support::child(&self.syntax)
2325 }
2326 #[inline]
2327 pub fn expr(&self) -> Option<Expr> {
2328 support::child(&self.syntax)
2329 }
2330 #[inline]
2331 pub fn when_clause_list(&self) -> Option<WhenClauseList> {
2332 support::child(&self.syntax)
2333 }
2334 #[inline]
2335 pub fn case_token(&self) -> Option<SyntaxToken> {
2336 support::token(&self.syntax, SyntaxKind::CASE_KW)
2337 }
2338}
2339
2340#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2341pub struct CastExpr {
2342 pub(crate) syntax: SyntaxNode,
2343}
2344impl CastExpr {
2345 #[inline]
2346 pub fn colon_colon(&self) -> Option<ColonColon> {
2347 support::child(&self.syntax)
2348 }
2349 #[inline]
2350 pub fn expr(&self) -> Option<Expr> {
2351 support::child(&self.syntax)
2352 }
2353 #[inline]
2354 pub fn literal(&self) -> Option<Literal> {
2355 support::child(&self.syntax)
2356 }
2357 #[inline]
2358 pub fn ty(&self) -> Option<Type> {
2359 support::child(&self.syntax)
2360 }
2361 #[inline]
2362 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
2363 support::token(&self.syntax, SyntaxKind::L_PAREN)
2364 }
2365 #[inline]
2366 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
2367 support::token(&self.syntax, SyntaxKind::R_PAREN)
2368 }
2369 #[inline]
2370 pub fn as_token(&self) -> Option<SyntaxToken> {
2371 support::token(&self.syntax, SyntaxKind::AS_KW)
2372 }
2373 #[inline]
2374 pub fn cast_token(&self) -> Option<SyntaxToken> {
2375 support::token(&self.syntax, SyntaxKind::CAST_KW)
2376 }
2377 #[inline]
2378 pub fn treat_token(&self) -> Option<SyntaxToken> {
2379 support::token(&self.syntax, SyntaxKind::TREAT_KW)
2380 }
2381}
2382
2383#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2384pub struct CastSig {
2385 pub(crate) syntax: SyntaxNode,
2386}
2387impl CastSig {
2388 #[inline]
2389 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
2390 support::token(&self.syntax, SyntaxKind::L_PAREN)
2391 }
2392 #[inline]
2393 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
2394 support::token(&self.syntax, SyntaxKind::R_PAREN)
2395 }
2396 #[inline]
2397 pub fn as_token(&self) -> Option<SyntaxToken> {
2398 support::token(&self.syntax, SyntaxKind::AS_KW)
2399 }
2400}
2401
2402#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2403pub struct CharType {
2404 pub(crate) syntax: SyntaxNode,
2405}
2406impl CharType {
2407 #[inline]
2408 pub fn arg_list(&self) -> Option<ArgList> {
2409 support::child(&self.syntax)
2410 }
2411 #[inline]
2412 pub fn char_token(&self) -> Option<SyntaxToken> {
2413 support::token(&self.syntax, SyntaxKind::CHAR_KW)
2414 }
2415 #[inline]
2416 pub fn character_token(&self) -> Option<SyntaxToken> {
2417 support::token(&self.syntax, SyntaxKind::CHARACTER_KW)
2418 }
2419 #[inline]
2420 pub fn nchar_token(&self) -> Option<SyntaxToken> {
2421 support::token(&self.syntax, SyntaxKind::NCHAR_KW)
2422 }
2423 #[inline]
2424 pub fn varchar_token(&self) -> Option<SyntaxToken> {
2425 support::token(&self.syntax, SyntaxKind::VARCHAR_KW)
2426 }
2427 #[inline]
2428 pub fn varying_token(&self) -> Option<SyntaxToken> {
2429 support::token(&self.syntax, SyntaxKind::VARYING_KW)
2430 }
2431}
2432
2433#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2434pub struct CheckConstraint {
2435 pub(crate) syntax: SyntaxNode,
2436}
2437impl CheckConstraint {
2438 #[inline]
2439 pub fn constraint_name(&self) -> Option<ConstraintName> {
2440 support::child(&self.syntax)
2441 }
2442 #[inline]
2443 pub fn expr(&self) -> Option<Expr> {
2444 support::child(&self.syntax)
2445 }
2446 #[inline]
2447 pub fn no_inherit(&self) -> Option<NoInherit> {
2448 support::child(&self.syntax)
2449 }
2450 #[inline]
2451 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
2452 support::token(&self.syntax, SyntaxKind::L_PAREN)
2453 }
2454 #[inline]
2455 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
2456 support::token(&self.syntax, SyntaxKind::R_PAREN)
2457 }
2458 #[inline]
2459 pub fn check_token(&self) -> Option<SyntaxToken> {
2460 support::token(&self.syntax, SyntaxKind::CHECK_KW)
2461 }
2462}
2463
2464#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2465pub struct Checkpoint {
2466 pub(crate) syntax: SyntaxNode,
2467}
2468impl Checkpoint {
2469 #[inline]
2470 pub fn checkpoint_token(&self) -> Option<SyntaxToken> {
2471 support::token(&self.syntax, SyntaxKind::CHECKPOINT_KW)
2472 }
2473}
2474
2475#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2476pub struct Close {
2477 pub(crate) syntax: SyntaxNode,
2478}
2479impl Close {
2480 #[inline]
2481 pub fn name_ref(&self) -> Option<NameRef> {
2482 support::child(&self.syntax)
2483 }
2484 #[inline]
2485 pub fn close_token(&self) -> Option<SyntaxToken> {
2486 support::token(&self.syntax, SyntaxKind::CLOSE_KW)
2487 }
2488}
2489
2490#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2491pub struct Cluster {
2492 pub(crate) syntax: SyntaxNode,
2493}
2494impl Cluster {
2495 #[inline]
2496 pub fn option_item_list(&self) -> Option<OptionItemList> {
2497 support::child(&self.syntax)
2498 }
2499 #[inline]
2500 pub fn path(&self) -> Option<Path> {
2501 support::child(&self.syntax)
2502 }
2503 #[inline]
2504 pub fn using_method(&self) -> Option<UsingMethod> {
2505 support::child(&self.syntax)
2506 }
2507 #[inline]
2508 pub fn cluster_token(&self) -> Option<SyntaxToken> {
2509 support::token(&self.syntax, SyntaxKind::CLUSTER_KW)
2510 }
2511 #[inline]
2512 pub fn verbose_token(&self) -> Option<SyntaxToken> {
2513 support::token(&self.syntax, SyntaxKind::VERBOSE_KW)
2514 }
2515}
2516
2517#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2518pub struct ClusterOn {
2519 pub(crate) syntax: SyntaxNode,
2520}
2521impl ClusterOn {
2522 #[inline]
2523 pub fn cluster_token(&self) -> Option<SyntaxToken> {
2524 support::token(&self.syntax, SyntaxKind::CLUSTER_KW)
2525 }
2526 #[inline]
2527 pub fn on_token(&self) -> Option<SyntaxToken> {
2528 support::token(&self.syntax, SyntaxKind::ON_KW)
2529 }
2530}
2531
2532#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2533pub struct Collate {
2534 pub(crate) syntax: SyntaxNode,
2535}
2536impl Collate {
2537 #[inline]
2538 pub fn path(&self) -> Option<Path> {
2539 support::child(&self.syntax)
2540 }
2541 #[inline]
2542 pub fn collate_token(&self) -> Option<SyntaxToken> {
2543 support::token(&self.syntax, SyntaxKind::COLLATE_KW)
2544 }
2545}
2546
2547#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2548pub struct ColonColon {
2549 pub(crate) syntax: SyntaxNode,
2550}
2551impl ColonColon {
2552 #[inline]
2553 pub fn colon_token(&self) -> Option<SyntaxToken> {
2554 support::token(&self.syntax, SyntaxKind::COLON)
2555 }
2556}
2557
2558#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2559pub struct ColonEq {
2560 pub(crate) syntax: SyntaxNode,
2561}
2562impl ColonEq {
2563 #[inline]
2564 pub fn colon_token(&self) -> Option<SyntaxToken> {
2565 support::token(&self.syntax, SyntaxKind::COLON)
2566 }
2567 #[inline]
2568 pub fn eq_token(&self) -> Option<SyntaxToken> {
2569 support::token(&self.syntax, SyntaxKind::EQ)
2570 }
2571}
2572
2573#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2574pub struct Column {
2575 pub(crate) syntax: SyntaxNode,
2576}
2577impl Column {
2578 #[inline]
2579 pub fn collate(&self) -> Option<Collate> {
2580 support::child(&self.syntax)
2581 }
2582 #[inline]
2583 pub fn compression_method(&self) -> Option<CompressionMethod> {
2584 support::child(&self.syntax)
2585 }
2586 #[inline]
2587 pub fn constraint(&self) -> Option<ColumnConstraint> {
2588 support::child(&self.syntax)
2589 }
2590 #[inline]
2591 pub fn deferrable_constraint_option(&self) -> Option<DeferrableConstraintOption> {
2592 support::child(&self.syntax)
2593 }
2594 #[inline]
2595 pub fn enforced(&self) -> Option<Enforced> {
2596 support::child(&self.syntax)
2597 }
2598 #[inline]
2599 pub fn index_expr(&self) -> Option<IndexExpr> {
2600 support::child(&self.syntax)
2601 }
2602 #[inline]
2603 pub fn initially_deferred_constraint_option(
2604 &self,
2605 ) -> Option<InitiallyDeferredConstraintOption> {
2606 support::child(&self.syntax)
2607 }
2608 #[inline]
2609 pub fn initially_immediate_constraint_option(
2610 &self,
2611 ) -> Option<InitiallyImmediateConstraintOption> {
2612 support::child(&self.syntax)
2613 }
2614 #[inline]
2615 pub fn name(&self) -> Option<Name> {
2616 support::child(&self.syntax)
2617 }
2618 #[inline]
2619 pub fn name_ref(&self) -> Option<NameRef> {
2620 support::child(&self.syntax)
2621 }
2622 #[inline]
2623 pub fn not_deferrable_constraint_option(&self) -> Option<NotDeferrableConstraintOption> {
2624 support::child(&self.syntax)
2625 }
2626 #[inline]
2627 pub fn not_enforced(&self) -> Option<NotEnforced> {
2628 support::child(&self.syntax)
2629 }
2630 #[inline]
2631 pub fn storage(&self) -> Option<Storage> {
2632 support::child(&self.syntax)
2633 }
2634 #[inline]
2635 pub fn ty(&self) -> Option<Type> {
2636 support::child(&self.syntax)
2637 }
2638 #[inline]
2639 pub fn with_options(&self) -> Option<WithOptions> {
2640 support::child(&self.syntax)
2641 }
2642 #[inline]
2643 pub fn period_token(&self) -> Option<SyntaxToken> {
2644 support::token(&self.syntax, SyntaxKind::PERIOD_KW)
2645 }
2646}
2647
2648#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2649pub struct ColumnList {
2650 pub(crate) syntax: SyntaxNode,
2651}
2652impl ColumnList {
2653 #[inline]
2654 pub fn columns(&self) -> AstChildren<Column> {
2655 support::children(&self.syntax)
2656 }
2657 #[inline]
2658 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
2659 support::token(&self.syntax, SyntaxKind::L_PAREN)
2660 }
2661 #[inline]
2662 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
2663 support::token(&self.syntax, SyntaxKind::R_PAREN)
2664 }
2665}
2666
2667#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2668pub struct CommentOn {
2669 pub(crate) syntax: SyntaxNode,
2670}
2671impl CommentOn {
2672 #[inline]
2673 pub fn literal(&self) -> Option<Literal> {
2674 support::child(&self.syntax)
2675 }
2676 #[inline]
2677 pub fn name_ref(&self) -> Option<NameRef> {
2678 support::child(&self.syntax)
2679 }
2680 #[inline]
2681 pub fn path(&self) -> Option<Path> {
2682 support::child(&self.syntax)
2683 }
2684 #[inline]
2685 pub fn comment_token(&self) -> Option<SyntaxToken> {
2686 support::token(&self.syntax, SyntaxKind::COMMENT_KW)
2687 }
2688 #[inline]
2689 pub fn constraint_token(&self) -> Option<SyntaxToken> {
2690 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
2691 }
2692 #[inline]
2693 pub fn domain_token(&self) -> Option<SyntaxToken> {
2694 support::token(&self.syntax, SyntaxKind::DOMAIN_KW)
2695 }
2696 #[inline]
2697 pub fn is_token(&self) -> Option<SyntaxToken> {
2698 support::token(&self.syntax, SyntaxKind::IS_KW)
2699 }
2700 #[inline]
2701 pub fn null_token(&self) -> Option<SyntaxToken> {
2702 support::token(&self.syntax, SyntaxKind::NULL_KW)
2703 }
2704 #[inline]
2705 pub fn on_token(&self) -> Option<SyntaxToken> {
2706 support::token(&self.syntax, SyntaxKind::ON_KW)
2707 }
2708 #[inline]
2709 pub fn table_token(&self) -> Option<SyntaxToken> {
2710 support::token(&self.syntax, SyntaxKind::TABLE_KW)
2711 }
2712}
2713
2714#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2715pub struct Commit {
2716 pub(crate) syntax: SyntaxNode,
2717}
2718impl Commit {
2719 #[inline]
2720 pub fn literal(&self) -> Option<Literal> {
2721 support::child(&self.syntax)
2722 }
2723 #[inline]
2724 pub fn and_token(&self) -> Option<SyntaxToken> {
2725 support::token(&self.syntax, SyntaxKind::AND_KW)
2726 }
2727 #[inline]
2728 pub fn chain_token(&self) -> Option<SyntaxToken> {
2729 support::token(&self.syntax, SyntaxKind::CHAIN_KW)
2730 }
2731 #[inline]
2732 pub fn commit_token(&self) -> Option<SyntaxToken> {
2733 support::token(&self.syntax, SyntaxKind::COMMIT_KW)
2734 }
2735 #[inline]
2736 pub fn no_token(&self) -> Option<SyntaxToken> {
2737 support::token(&self.syntax, SyntaxKind::NO_KW)
2738 }
2739 #[inline]
2740 pub fn prepared_token(&self) -> Option<SyntaxToken> {
2741 support::token(&self.syntax, SyntaxKind::PREPARED_KW)
2742 }
2743 #[inline]
2744 pub fn transaction_token(&self) -> Option<SyntaxToken> {
2745 support::token(&self.syntax, SyntaxKind::TRANSACTION_KW)
2746 }
2747 #[inline]
2748 pub fn work_token(&self) -> Option<SyntaxToken> {
2749 support::token(&self.syntax, SyntaxKind::WORK_KW)
2750 }
2751}
2752
2753#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2754pub struct CompoundSelect {
2755 pub(crate) syntax: SyntaxNode,
2756}
2757impl CompoundSelect {
2758 #[inline]
2759 pub fn all_token(&self) -> Option<SyntaxToken> {
2760 support::token(&self.syntax, SyntaxKind::ALL_KW)
2761 }
2762 #[inline]
2763 pub fn except_token(&self) -> Option<SyntaxToken> {
2764 support::token(&self.syntax, SyntaxKind::EXCEPT_KW)
2765 }
2766 #[inline]
2767 pub fn intersect_token(&self) -> Option<SyntaxToken> {
2768 support::token(&self.syntax, SyntaxKind::INTERSECT_KW)
2769 }
2770 #[inline]
2771 pub fn union_token(&self) -> Option<SyntaxToken> {
2772 support::token(&self.syntax, SyntaxKind::UNION_KW)
2773 }
2774}
2775
2776#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2777pub struct CompressionMethod {
2778 pub(crate) syntax: SyntaxNode,
2779}
2780impl CompressionMethod {
2781 #[inline]
2782 pub fn compression_token(&self) -> Option<SyntaxToken> {
2783 support::token(&self.syntax, SyntaxKind::COMPRESSION_KW)
2784 }
2785 #[inline]
2786 pub fn default_token(&self) -> Option<SyntaxToken> {
2787 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
2788 }
2789 #[inline]
2790 pub fn ident_token(&self) -> Option<SyntaxToken> {
2791 support::token(&self.syntax, SyntaxKind::IDENT)
2792 }
2793}
2794
2795#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2796pub struct ConflictDoNothing {
2797 pub(crate) syntax: SyntaxNode,
2798}
2799impl ConflictDoNothing {
2800 #[inline]
2801 pub fn do_token(&self) -> Option<SyntaxToken> {
2802 support::token(&self.syntax, SyntaxKind::DO_KW)
2803 }
2804 #[inline]
2805 pub fn nothing_token(&self) -> Option<SyntaxToken> {
2806 support::token(&self.syntax, SyntaxKind::NOTHING_KW)
2807 }
2808}
2809
2810#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2811pub struct ConflictDoUpdateSet {
2812 pub(crate) syntax: SyntaxNode,
2813}
2814impl ConflictDoUpdateSet {
2815 #[inline]
2816 pub fn set_clause(&self) -> Option<SetClause> {
2817 support::child(&self.syntax)
2818 }
2819 #[inline]
2820 pub fn where_clause(&self) -> Option<WhereClause> {
2821 support::child(&self.syntax)
2822 }
2823 #[inline]
2824 pub fn do_token(&self) -> Option<SyntaxToken> {
2825 support::token(&self.syntax, SyntaxKind::DO_KW)
2826 }
2827 #[inline]
2828 pub fn update_token(&self) -> Option<SyntaxToken> {
2829 support::token(&self.syntax, SyntaxKind::UPDATE_KW)
2830 }
2831}
2832
2833#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2834pub struct ConflictIndexItem {
2835 pub(crate) syntax: SyntaxNode,
2836}
2837impl ConflictIndexItem {
2838 #[inline]
2839 pub fn collate(&self) -> Option<Collate> {
2840 support::child(&self.syntax)
2841 }
2842 #[inline]
2843 pub fn expr(&self) -> Option<Expr> {
2844 support::child(&self.syntax)
2845 }
2846 #[inline]
2847 pub fn ident_token(&self) -> Option<SyntaxToken> {
2848 support::token(&self.syntax, SyntaxKind::IDENT)
2849 }
2850}
2851
2852#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2853pub struct ConflictIndexItemList {
2854 pub(crate) syntax: SyntaxNode,
2855}
2856impl ConflictIndexItemList {
2857 #[inline]
2858 pub fn conflict_index_items(&self) -> AstChildren<ConflictIndexItem> {
2859 support::children(&self.syntax)
2860 }
2861 #[inline]
2862 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
2863 support::token(&self.syntax, SyntaxKind::L_PAREN)
2864 }
2865 #[inline]
2866 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
2867 support::token(&self.syntax, SyntaxKind::R_PAREN)
2868 }
2869}
2870
2871#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2872pub struct ConflictOnConstraint {
2873 pub(crate) syntax: SyntaxNode,
2874}
2875impl ConflictOnConstraint {
2876 #[inline]
2877 pub fn name_ref(&self) -> Option<NameRef> {
2878 support::child(&self.syntax)
2879 }
2880 #[inline]
2881 pub fn constraint_token(&self) -> Option<SyntaxToken> {
2882 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
2883 }
2884 #[inline]
2885 pub fn on_token(&self) -> Option<SyntaxToken> {
2886 support::token(&self.syntax, SyntaxKind::ON_KW)
2887 }
2888}
2889
2890#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2891pub struct ConflictOnIndex {
2892 pub(crate) syntax: SyntaxNode,
2893}
2894impl ConflictOnIndex {
2895 #[inline]
2896 pub fn conflict_index_item_list(&self) -> Option<ConflictIndexItemList> {
2897 support::child(&self.syntax)
2898 }
2899 #[inline]
2900 pub fn where_clause(&self) -> Option<WhereClause> {
2901 support::child(&self.syntax)
2902 }
2903}
2904
2905#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2906pub struct ConstraintExclusion {
2907 pub(crate) syntax: SyntaxNode,
2908}
2909impl ConstraintExclusion {
2910 #[inline]
2911 pub fn expr(&self) -> Option<Expr> {
2912 support::child(&self.syntax)
2913 }
2914 #[inline]
2915 pub fn op(&self) -> Option<Op> {
2916 support::child(&self.syntax)
2917 }
2918 #[inline]
2919 pub fn with_token(&self) -> Option<SyntaxToken> {
2920 support::token(&self.syntax, SyntaxKind::WITH_KW)
2921 }
2922}
2923
2924#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2925pub struct ConstraintExclusionList {
2926 pub(crate) syntax: SyntaxNode,
2927}
2928impl ConstraintExclusionList {
2929 #[inline]
2930 pub fn constraint_exclusions(&self) -> AstChildren<ConstraintExclusion> {
2931 support::children(&self.syntax)
2932 }
2933 #[inline]
2934 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
2935 support::token(&self.syntax, SyntaxKind::L_PAREN)
2936 }
2937 #[inline]
2938 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
2939 support::token(&self.syntax, SyntaxKind::R_PAREN)
2940 }
2941}
2942
2943#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2944pub struct ConstraintIncludeClause {
2945 pub(crate) syntax: SyntaxNode,
2946}
2947impl ConstraintIncludeClause {
2948 #[inline]
2949 pub fn include_token(&self) -> Option<SyntaxToken> {
2950 support::token(&self.syntax, SyntaxKind::INCLUDE_KW)
2951 }
2952}
2953
2954#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2955pub struct ConstraintIndexMethod {
2956 pub(crate) syntax: SyntaxNode,
2957}
2958impl ConstraintIndexMethod {
2959 #[inline]
2960 pub fn using_token(&self) -> Option<SyntaxToken> {
2961 support::token(&self.syntax, SyntaxKind::USING_KW)
2962 }
2963}
2964
2965#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2966pub struct ConstraintIndexTablespace {
2967 pub(crate) syntax: SyntaxNode,
2968}
2969impl ConstraintIndexTablespace {
2970 #[inline]
2971 pub fn name_ref(&self) -> Option<NameRef> {
2972 support::child(&self.syntax)
2973 }
2974 #[inline]
2975 pub fn index_token(&self) -> Option<SyntaxToken> {
2976 support::token(&self.syntax, SyntaxKind::INDEX_KW)
2977 }
2978 #[inline]
2979 pub fn tablespace_token(&self) -> Option<SyntaxToken> {
2980 support::token(&self.syntax, SyntaxKind::TABLESPACE_KW)
2981 }
2982 #[inline]
2983 pub fn using_token(&self) -> Option<SyntaxToken> {
2984 support::token(&self.syntax, SyntaxKind::USING_KW)
2985 }
2986}
2987
2988#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2989pub struct ConstraintName {
2990 pub(crate) syntax: SyntaxNode,
2991}
2992impl ConstraintName {
2993 #[inline]
2994 pub fn name(&self) -> Option<Name> {
2995 support::child(&self.syntax)
2996 }
2997 #[inline]
2998 pub fn constraint_token(&self) -> Option<SyntaxToken> {
2999 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
3000 }
3001}
3002
3003#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3004pub struct Copy {
3005 pub(crate) syntax: SyntaxNode,
3006}
3007impl Copy {
3008 #[inline]
3009 pub fn column_list(&self) -> Option<ColumnList> {
3010 support::child(&self.syntax)
3011 }
3012 #[inline]
3013 pub fn literal(&self) -> Option<Literal> {
3014 support::child(&self.syntax)
3015 }
3016 #[inline]
3017 pub fn path(&self) -> Option<Path> {
3018 support::child(&self.syntax)
3019 }
3020 #[inline]
3021 pub fn preparable_stmt(&self) -> Option<PreparableStmt> {
3022 support::child(&self.syntax)
3023 }
3024 #[inline]
3025 pub fn where_clause(&self) -> Option<WhereClause> {
3026 support::child(&self.syntax)
3027 }
3028 #[inline]
3029 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
3030 support::token(&self.syntax, SyntaxKind::L_PAREN)
3031 }
3032 #[inline]
3033 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
3034 support::token(&self.syntax, SyntaxKind::R_PAREN)
3035 }
3036 #[inline]
3037 pub fn binary_token(&self) -> Option<SyntaxToken> {
3038 support::token(&self.syntax, SyntaxKind::BINARY_KW)
3039 }
3040 #[inline]
3041 pub fn copy_token(&self) -> Option<SyntaxToken> {
3042 support::token(&self.syntax, SyntaxKind::COPY_KW)
3043 }
3044 #[inline]
3045 pub fn from_token(&self) -> Option<SyntaxToken> {
3046 support::token(&self.syntax, SyntaxKind::FROM_KW)
3047 }
3048 #[inline]
3049 pub fn program_token(&self) -> Option<SyntaxToken> {
3050 support::token(&self.syntax, SyntaxKind::PROGRAM_KW)
3051 }
3052 #[inline]
3053 pub fn stdin_token(&self) -> Option<SyntaxToken> {
3054 support::token(&self.syntax, SyntaxKind::STDIN_KW)
3055 }
3056 #[inline]
3057 pub fn stdout_token(&self) -> Option<SyntaxToken> {
3058 support::token(&self.syntax, SyntaxKind::STDOUT_KW)
3059 }
3060 #[inline]
3061 pub fn to_token(&self) -> Option<SyntaxToken> {
3062 support::token(&self.syntax, SyntaxKind::TO_KW)
3063 }
3064 #[inline]
3065 pub fn with_token(&self) -> Option<SyntaxToken> {
3066 support::token(&self.syntax, SyntaxKind::WITH_KW)
3067 }
3068}
3069
3070#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3071pub struct CopyOption {
3072 pub(crate) syntax: SyntaxNode,
3073}
3074impl CopyOption {
3075 #[inline]
3076 pub fn name(&self) -> Option<Name> {
3077 support::child(&self.syntax)
3078 }
3079}
3080
3081#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3082pub struct CopyOptionList {
3083 pub(crate) syntax: SyntaxNode,
3084}
3085impl CopyOptionList {
3086 #[inline]
3087 pub fn copy_options(&self) -> AstChildren<CopyOption> {
3088 support::children(&self.syntax)
3089 }
3090 #[inline]
3091 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
3092 support::token(&self.syntax, SyntaxKind::L_PAREN)
3093 }
3094 #[inline]
3095 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
3096 support::token(&self.syntax, SyntaxKind::R_PAREN)
3097 }
3098}
3099
3100#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3101pub struct CostFuncOption {
3102 pub(crate) syntax: SyntaxNode,
3103}
3104impl CostFuncOption {
3105 #[inline]
3106 pub fn cost_token(&self) -> Option<SyntaxToken> {
3107 support::token(&self.syntax, SyntaxKind::COST_KW)
3108 }
3109}
3110
3111#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3112pub struct CreateAccessMethod {
3113 pub(crate) syntax: SyntaxNode,
3114}
3115impl CreateAccessMethod {
3116 #[inline]
3117 pub fn handler_clause(&self) -> Option<HandlerClause> {
3118 support::child(&self.syntax)
3119 }
3120 #[inline]
3121 pub fn name(&self) -> Option<Path> {
3122 support::child(&self.syntax)
3123 }
3124 #[inline]
3125 pub fn access_token(&self) -> Option<SyntaxToken> {
3126 support::token(&self.syntax, SyntaxKind::ACCESS_KW)
3127 }
3128 #[inline]
3129 pub fn create_token(&self) -> Option<SyntaxToken> {
3130 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3131 }
3132 #[inline]
3133 pub fn index_token(&self) -> Option<SyntaxToken> {
3134 support::token(&self.syntax, SyntaxKind::INDEX_KW)
3135 }
3136 #[inline]
3137 pub fn method_token(&self) -> Option<SyntaxToken> {
3138 support::token(&self.syntax, SyntaxKind::METHOD_KW)
3139 }
3140 #[inline]
3141 pub fn table_token(&self) -> Option<SyntaxToken> {
3142 support::token(&self.syntax, SyntaxKind::TABLE_KW)
3143 }
3144 #[inline]
3145 pub fn type_token(&self) -> Option<SyntaxToken> {
3146 support::token(&self.syntax, SyntaxKind::TYPE_KW)
3147 }
3148}
3149
3150#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3151pub struct CreateAggregate {
3152 pub(crate) syntax: SyntaxNode,
3153}
3154impl CreateAggregate {
3155 #[inline]
3156 pub fn or_replace(&self) -> Option<OrReplace> {
3157 support::child(&self.syntax)
3158 }
3159 #[inline]
3160 pub fn param_list(&self) -> Option<ParamList> {
3161 support::child(&self.syntax)
3162 }
3163 #[inline]
3164 pub fn path(&self) -> Option<Path> {
3165 support::child(&self.syntax)
3166 }
3167 #[inline]
3168 pub fn aggregate_token(&self) -> Option<SyntaxToken> {
3169 support::token(&self.syntax, SyntaxKind::AGGREGATE_KW)
3170 }
3171 #[inline]
3172 pub fn create_token(&self) -> Option<SyntaxToken> {
3173 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3174 }
3175}
3176
3177#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3178pub struct CreateCast {
3179 pub(crate) syntax: SyntaxNode,
3180}
3181impl CreateCast {
3182 #[inline]
3183 pub fn cast_sig(&self) -> Option<CastSig> {
3184 support::child(&self.syntax)
3185 }
3186 #[inline]
3187 pub fn function_sig(&self) -> Option<FunctionSig> {
3188 support::child(&self.syntax)
3189 }
3190 #[inline]
3191 pub fn as_token(&self) -> Option<SyntaxToken> {
3192 support::token(&self.syntax, SyntaxKind::AS_KW)
3193 }
3194 #[inline]
3195 pub fn assignment_token(&self) -> Option<SyntaxToken> {
3196 support::token(&self.syntax, SyntaxKind::ASSIGNMENT_KW)
3197 }
3198 #[inline]
3199 pub fn cast_token(&self) -> Option<SyntaxToken> {
3200 support::token(&self.syntax, SyntaxKind::CAST_KW)
3201 }
3202 #[inline]
3203 pub fn create_token(&self) -> Option<SyntaxToken> {
3204 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3205 }
3206 #[inline]
3207 pub fn function_token(&self) -> Option<SyntaxToken> {
3208 support::token(&self.syntax, SyntaxKind::FUNCTION_KW)
3209 }
3210 #[inline]
3211 pub fn implicit_token(&self) -> Option<SyntaxToken> {
3212 support::token(&self.syntax, SyntaxKind::IMPLICIT_KW)
3213 }
3214 #[inline]
3215 pub fn inout_token(&self) -> Option<SyntaxToken> {
3216 support::token(&self.syntax, SyntaxKind::INOUT_KW)
3217 }
3218 #[inline]
3219 pub fn with_token(&self) -> Option<SyntaxToken> {
3220 support::token(&self.syntax, SyntaxKind::WITH_KW)
3221 }
3222 #[inline]
3223 pub fn without_token(&self) -> Option<SyntaxToken> {
3224 support::token(&self.syntax, SyntaxKind::WITHOUT_KW)
3225 }
3226}
3227
3228#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3229pub struct CreateCollation {
3230 pub(crate) syntax: SyntaxNode,
3231}
3232impl CreateCollation {
3233 #[inline]
3234 pub fn path(&self) -> Option<Path> {
3235 support::child(&self.syntax)
3236 }
3237 #[inline]
3238 pub fn collation_token(&self) -> Option<SyntaxToken> {
3239 support::token(&self.syntax, SyntaxKind::COLLATION_KW)
3240 }
3241 #[inline]
3242 pub fn create_token(&self) -> Option<SyntaxToken> {
3243 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3244 }
3245}
3246
3247#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3248pub struct CreateConversion {
3249 pub(crate) syntax: SyntaxNode,
3250}
3251impl CreateConversion {
3252 #[inline]
3253 pub fn literal(&self) -> Option<Literal> {
3254 support::child(&self.syntax)
3255 }
3256 #[inline]
3257 pub fn path(&self) -> Option<Path> {
3258 support::child(&self.syntax)
3259 }
3260 #[inline]
3261 pub fn conversion_token(&self) -> Option<SyntaxToken> {
3262 support::token(&self.syntax, SyntaxKind::CONVERSION_KW)
3263 }
3264 #[inline]
3265 pub fn create_token(&self) -> Option<SyntaxToken> {
3266 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3267 }
3268 #[inline]
3269 pub fn default_token(&self) -> Option<SyntaxToken> {
3270 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
3271 }
3272 #[inline]
3273 pub fn for_token(&self) -> Option<SyntaxToken> {
3274 support::token(&self.syntax, SyntaxKind::FOR_KW)
3275 }
3276 #[inline]
3277 pub fn from_token(&self) -> Option<SyntaxToken> {
3278 support::token(&self.syntax, SyntaxKind::FROM_KW)
3279 }
3280 #[inline]
3281 pub fn to_token(&self) -> Option<SyntaxToken> {
3282 support::token(&self.syntax, SyntaxKind::TO_KW)
3283 }
3284}
3285
3286#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3287pub struct CreateDatabase {
3288 pub(crate) syntax: SyntaxNode,
3289}
3290impl CreateDatabase {
3291 #[inline]
3292 pub fn create_database_option_list(&self) -> Option<CreateDatabaseOptionList> {
3293 support::child(&self.syntax)
3294 }
3295 #[inline]
3296 pub fn name(&self) -> Option<Name> {
3297 support::child(&self.syntax)
3298 }
3299 #[inline]
3300 pub fn create_token(&self) -> Option<SyntaxToken> {
3301 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3302 }
3303 #[inline]
3304 pub fn database_token(&self) -> Option<SyntaxToken> {
3305 support::token(&self.syntax, SyntaxKind::DATABASE_KW)
3306 }
3307}
3308
3309#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3310pub struct CreateDatabaseOption {
3311 pub(crate) syntax: SyntaxNode,
3312}
3313impl CreateDatabaseOption {
3314 #[inline]
3315 pub fn literal(&self) -> Option<Literal> {
3316 support::child(&self.syntax)
3317 }
3318 #[inline]
3319 pub fn eq_token(&self) -> Option<SyntaxToken> {
3320 support::token(&self.syntax, SyntaxKind::EQ)
3321 }
3322 #[inline]
3323 pub fn connection_token(&self) -> Option<SyntaxToken> {
3324 support::token(&self.syntax, SyntaxKind::CONNECTION_KW)
3325 }
3326 #[inline]
3327 pub fn default_token(&self) -> Option<SyntaxToken> {
3328 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
3329 }
3330 #[inline]
3331 pub fn encoding_token(&self) -> Option<SyntaxToken> {
3332 support::token(&self.syntax, SyntaxKind::ENCODING_KW)
3333 }
3334 #[inline]
3335 pub fn ident_token(&self) -> Option<SyntaxToken> {
3336 support::token(&self.syntax, SyntaxKind::IDENT)
3337 }
3338 #[inline]
3339 pub fn limit_token(&self) -> Option<SyntaxToken> {
3340 support::token(&self.syntax, SyntaxKind::LIMIT_KW)
3341 }
3342 #[inline]
3343 pub fn owner_token(&self) -> Option<SyntaxToken> {
3344 support::token(&self.syntax, SyntaxKind::OWNER_KW)
3345 }
3346 #[inline]
3347 pub fn tablespace_token(&self) -> Option<SyntaxToken> {
3348 support::token(&self.syntax, SyntaxKind::TABLESPACE_KW)
3349 }
3350 #[inline]
3351 pub fn template_token(&self) -> Option<SyntaxToken> {
3352 support::token(&self.syntax, SyntaxKind::TEMPLATE_KW)
3353 }
3354}
3355
3356#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3357pub struct CreateDatabaseOptionList {
3358 pub(crate) syntax: SyntaxNode,
3359}
3360impl CreateDatabaseOptionList {
3361 #[inline]
3362 pub fn create_database_options(&self) -> AstChildren<CreateDatabaseOption> {
3363 support::children(&self.syntax)
3364 }
3365 #[inline]
3366 pub fn with_token(&self) -> Option<SyntaxToken> {
3367 support::token(&self.syntax, SyntaxKind::WITH_KW)
3368 }
3369}
3370
3371#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3372pub struct CreateDomain {
3373 pub(crate) syntax: SyntaxNode,
3374}
3375impl CreateDomain {
3376 #[inline]
3377 pub fn collate(&self) -> Option<Collate> {
3378 support::child(&self.syntax)
3379 }
3380 #[inline]
3381 pub fn constraints(&self) -> AstChildren<Constraint> {
3382 support::children(&self.syntax)
3383 }
3384 #[inline]
3385 pub fn path(&self) -> Option<Path> {
3386 support::child(&self.syntax)
3387 }
3388 #[inline]
3389 pub fn ty(&self) -> Option<Type> {
3390 support::child(&self.syntax)
3391 }
3392 #[inline]
3393 pub fn as_token(&self) -> Option<SyntaxToken> {
3394 support::token(&self.syntax, SyntaxKind::AS_KW)
3395 }
3396 #[inline]
3397 pub fn create_token(&self) -> Option<SyntaxToken> {
3398 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3399 }
3400 #[inline]
3401 pub fn domain_token(&self) -> Option<SyntaxToken> {
3402 support::token(&self.syntax, SyntaxKind::DOMAIN_KW)
3403 }
3404}
3405
3406#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3407pub struct CreateEventTrigger {
3408 pub(crate) syntax: SyntaxNode,
3409}
3410impl CreateEventTrigger {
3411 #[inline]
3412 pub fn call_expr(&self) -> Option<CallExpr> {
3413 support::child(&self.syntax)
3414 }
3415 #[inline]
3416 pub fn event_trigger_when_clause(&self) -> Option<EventTriggerWhenClause> {
3417 support::child(&self.syntax)
3418 }
3419 #[inline]
3420 pub fn name(&self) -> Option<Name> {
3421 support::child(&self.syntax)
3422 }
3423 #[inline]
3424 pub fn name_ref(&self) -> Option<NameRef> {
3425 support::child(&self.syntax)
3426 }
3427 #[inline]
3428 pub fn create_token(&self) -> Option<SyntaxToken> {
3429 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3430 }
3431 #[inline]
3432 pub fn event_token(&self) -> Option<SyntaxToken> {
3433 support::token(&self.syntax, SyntaxKind::EVENT_KW)
3434 }
3435 #[inline]
3436 pub fn execute_token(&self) -> Option<SyntaxToken> {
3437 support::token(&self.syntax, SyntaxKind::EXECUTE_KW)
3438 }
3439 #[inline]
3440 pub fn function_token(&self) -> Option<SyntaxToken> {
3441 support::token(&self.syntax, SyntaxKind::FUNCTION_KW)
3442 }
3443 #[inline]
3444 pub fn on_token(&self) -> Option<SyntaxToken> {
3445 support::token(&self.syntax, SyntaxKind::ON_KW)
3446 }
3447 #[inline]
3448 pub fn procedure_token(&self) -> Option<SyntaxToken> {
3449 support::token(&self.syntax, SyntaxKind::PROCEDURE_KW)
3450 }
3451 #[inline]
3452 pub fn trigger_token(&self) -> Option<SyntaxToken> {
3453 support::token(&self.syntax, SyntaxKind::TRIGGER_KW)
3454 }
3455}
3456
3457#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3458pub struct CreateExtension {
3459 pub(crate) syntax: SyntaxNode,
3460}
3461impl CreateExtension {
3462 #[inline]
3463 pub fn if_not_exists(&self) -> Option<IfNotExists> {
3464 support::child(&self.syntax)
3465 }
3466 #[inline]
3467 pub fn name(&self) -> Option<Name> {
3468 support::child(&self.syntax)
3469 }
3470 #[inline]
3471 pub fn create_token(&self) -> Option<SyntaxToken> {
3472 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3473 }
3474 #[inline]
3475 pub fn extension_token(&self) -> Option<SyntaxToken> {
3476 support::token(&self.syntax, SyntaxKind::EXTENSION_KW)
3477 }
3478}
3479
3480#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3481pub struct CreateForeignDataWrapper {
3482 pub(crate) syntax: SyntaxNode,
3483}
3484impl CreateForeignDataWrapper {
3485 #[inline]
3486 pub fn alter_option_list(&self) -> Option<AlterOptionList> {
3487 support::child(&self.syntax)
3488 }
3489 #[inline]
3490 pub fn fdw_option_list(&self) -> Option<FdwOptionList> {
3491 support::child(&self.syntax)
3492 }
3493 #[inline]
3494 pub fn name(&self) -> Option<Name> {
3495 support::child(&self.syntax)
3496 }
3497 #[inline]
3498 pub fn create_token(&self) -> Option<SyntaxToken> {
3499 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3500 }
3501 #[inline]
3502 pub fn data_token(&self) -> Option<SyntaxToken> {
3503 support::token(&self.syntax, SyntaxKind::DATA_KW)
3504 }
3505 #[inline]
3506 pub fn foreign_token(&self) -> Option<SyntaxToken> {
3507 support::token(&self.syntax, SyntaxKind::FOREIGN_KW)
3508 }
3509 #[inline]
3510 pub fn wrapper_token(&self) -> Option<SyntaxToken> {
3511 support::token(&self.syntax, SyntaxKind::WRAPPER_KW)
3512 }
3513}
3514
3515#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3516pub struct CreateForeignTable {
3517 pub(crate) syntax: SyntaxNode,
3518}
3519impl CreateForeignTable {
3520 #[inline]
3521 pub fn alter_option_list(&self) -> Option<AlterOptionList> {
3522 support::child(&self.syntax)
3523 }
3524 #[inline]
3525 pub fn if_not_exists(&self) -> Option<IfNotExists> {
3526 support::child(&self.syntax)
3527 }
3528 #[inline]
3529 pub fn inherits(&self) -> Option<Inherits> {
3530 support::child(&self.syntax)
3531 }
3532 #[inline]
3533 pub fn partition_of(&self) -> Option<PartitionOf> {
3534 support::child(&self.syntax)
3535 }
3536 #[inline]
3537 pub fn partition_type(&self) -> Option<PartitionType> {
3538 support::child(&self.syntax)
3539 }
3540 #[inline]
3541 pub fn path(&self) -> Option<Path> {
3542 support::child(&self.syntax)
3543 }
3544 #[inline]
3545 pub fn server_name(&self) -> Option<ServerName> {
3546 support::child(&self.syntax)
3547 }
3548 #[inline]
3549 pub fn table_arg_list(&self) -> Option<TableArgList> {
3550 support::child(&self.syntax)
3551 }
3552 #[inline]
3553 pub fn create_token(&self) -> Option<SyntaxToken> {
3554 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3555 }
3556 #[inline]
3557 pub fn foreign_token(&self) -> Option<SyntaxToken> {
3558 support::token(&self.syntax, SyntaxKind::FOREIGN_KW)
3559 }
3560 #[inline]
3561 pub fn table_token(&self) -> Option<SyntaxToken> {
3562 support::token(&self.syntax, SyntaxKind::TABLE_KW)
3563 }
3564}
3565
3566#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3567pub struct CreateFunction {
3568 pub(crate) syntax: SyntaxNode,
3569}
3570impl CreateFunction {
3571 #[inline]
3572 pub fn option_list(&self) -> Option<FuncOptionList> {
3573 support::child(&self.syntax)
3574 }
3575 #[inline]
3576 pub fn or_replace(&self) -> Option<OrReplace> {
3577 support::child(&self.syntax)
3578 }
3579 #[inline]
3580 pub fn param_list(&self) -> Option<ParamList> {
3581 support::child(&self.syntax)
3582 }
3583 #[inline]
3584 pub fn path(&self) -> Option<Path> {
3585 support::child(&self.syntax)
3586 }
3587 #[inline]
3588 pub fn ret_type(&self) -> Option<RetType> {
3589 support::child(&self.syntax)
3590 }
3591 #[inline]
3592 pub fn create_token(&self) -> Option<SyntaxToken> {
3593 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3594 }
3595 #[inline]
3596 pub fn function_token(&self) -> Option<SyntaxToken> {
3597 support::token(&self.syntax, SyntaxKind::FUNCTION_KW)
3598 }
3599}
3600
3601#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3602pub struct CreateGroup {
3603 pub(crate) syntax: SyntaxNode,
3604}
3605impl CreateGroup {
3606 #[inline]
3607 pub fn name(&self) -> Option<Name> {
3608 support::child(&self.syntax)
3609 }
3610 #[inline]
3611 pub fn role_option_list(&self) -> Option<RoleOptionList> {
3612 support::child(&self.syntax)
3613 }
3614 #[inline]
3615 pub fn create_token(&self) -> Option<SyntaxToken> {
3616 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3617 }
3618 #[inline]
3619 pub fn group_token(&self) -> Option<SyntaxToken> {
3620 support::token(&self.syntax, SyntaxKind::GROUP_KW)
3621 }
3622}
3623
3624#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3625pub struct CreateIndex {
3626 pub(crate) syntax: SyntaxNode,
3627}
3628impl CreateIndex {
3629 #[inline]
3630 pub fn constraint_include_clause(&self) -> Option<ConstraintIncludeClause> {
3631 support::child(&self.syntax)
3632 }
3633 #[inline]
3634 pub fn if_not_exists(&self) -> Option<IfNotExists> {
3635 support::child(&self.syntax)
3636 }
3637 #[inline]
3638 pub fn name(&self) -> Option<Name> {
3639 support::child(&self.syntax)
3640 }
3641 #[inline]
3642 pub fn nulls_distinct(&self) -> Option<NullsDistinct> {
3643 support::child(&self.syntax)
3644 }
3645 #[inline]
3646 pub fn nulls_not_distinct(&self) -> Option<NullsNotDistinct> {
3647 support::child(&self.syntax)
3648 }
3649 #[inline]
3650 pub fn partition_item_list(&self) -> Option<PartitionItemList> {
3651 support::child(&self.syntax)
3652 }
3653 #[inline]
3654 pub fn relation_name(&self) -> Option<RelationName> {
3655 support::child(&self.syntax)
3656 }
3657 #[inline]
3658 pub fn tablespace(&self) -> Option<Tablespace> {
3659 support::child(&self.syntax)
3660 }
3661 #[inline]
3662 pub fn using_method(&self) -> Option<UsingMethod> {
3663 support::child(&self.syntax)
3664 }
3665 #[inline]
3666 pub fn where_clause(&self) -> Option<WhereClause> {
3667 support::child(&self.syntax)
3668 }
3669 #[inline]
3670 pub fn with_params(&self) -> Option<WithParams> {
3671 support::child(&self.syntax)
3672 }
3673 #[inline]
3674 pub fn concurrently_token(&self) -> Option<SyntaxToken> {
3675 support::token(&self.syntax, SyntaxKind::CONCURRENTLY_KW)
3676 }
3677 #[inline]
3678 pub fn create_token(&self) -> Option<SyntaxToken> {
3679 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3680 }
3681 #[inline]
3682 pub fn index_token(&self) -> Option<SyntaxToken> {
3683 support::token(&self.syntax, SyntaxKind::INDEX_KW)
3684 }
3685 #[inline]
3686 pub fn on_token(&self) -> Option<SyntaxToken> {
3687 support::token(&self.syntax, SyntaxKind::ON_KW)
3688 }
3689 #[inline]
3690 pub fn unique_token(&self) -> Option<SyntaxToken> {
3691 support::token(&self.syntax, SyntaxKind::UNIQUE_KW)
3692 }
3693}
3694
3695#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3696pub struct CreateLanguage {
3697 pub(crate) syntax: SyntaxNode,
3698}
3699impl CreateLanguage {
3700 #[inline]
3701 pub fn name(&self) -> Option<Name> {
3702 support::child(&self.syntax)
3703 }
3704 #[inline]
3705 pub fn or_replace(&self) -> Option<OrReplace> {
3706 support::child(&self.syntax)
3707 }
3708 #[inline]
3709 pub fn path(&self) -> Option<Path> {
3710 support::child(&self.syntax)
3711 }
3712 #[inline]
3713 pub fn create_token(&self) -> Option<SyntaxToken> {
3714 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3715 }
3716 #[inline]
3717 pub fn handler_token(&self) -> Option<SyntaxToken> {
3718 support::token(&self.syntax, SyntaxKind::HANDLER_KW)
3719 }
3720 #[inline]
3721 pub fn inline_token(&self) -> Option<SyntaxToken> {
3722 support::token(&self.syntax, SyntaxKind::INLINE_KW)
3723 }
3724 #[inline]
3725 pub fn language_token(&self) -> Option<SyntaxToken> {
3726 support::token(&self.syntax, SyntaxKind::LANGUAGE_KW)
3727 }
3728 #[inline]
3729 pub fn procedural_token(&self) -> Option<SyntaxToken> {
3730 support::token(&self.syntax, SyntaxKind::PROCEDURAL_KW)
3731 }
3732 #[inline]
3733 pub fn trusted_token(&self) -> Option<SyntaxToken> {
3734 support::token(&self.syntax, SyntaxKind::TRUSTED_KW)
3735 }
3736 #[inline]
3737 pub fn validator_token(&self) -> Option<SyntaxToken> {
3738 support::token(&self.syntax, SyntaxKind::VALIDATOR_KW)
3739 }
3740}
3741
3742#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3743pub struct CreateMaterializedView {
3744 pub(crate) syntax: SyntaxNode,
3745}
3746impl CreateMaterializedView {
3747 #[inline]
3748 pub fn column_list(&self) -> Option<ColumnList> {
3749 support::child(&self.syntax)
3750 }
3751 #[inline]
3752 pub fn if_not_exists(&self) -> Option<IfNotExists> {
3753 support::child(&self.syntax)
3754 }
3755 #[inline]
3756 pub fn path(&self) -> Option<Path> {
3757 support::child(&self.syntax)
3758 }
3759 #[inline]
3760 pub fn query(&self) -> Option<SelectVariant> {
3761 support::child(&self.syntax)
3762 }
3763 #[inline]
3764 pub fn tablespace(&self) -> Option<Tablespace> {
3765 support::child(&self.syntax)
3766 }
3767 #[inline]
3768 pub fn using_method(&self) -> Option<UsingMethod> {
3769 support::child(&self.syntax)
3770 }
3771 #[inline]
3772 pub fn with_data(&self) -> Option<WithData> {
3773 support::child(&self.syntax)
3774 }
3775 #[inline]
3776 pub fn with_no_data(&self) -> Option<WithNoData> {
3777 support::child(&self.syntax)
3778 }
3779 #[inline]
3780 pub fn with_params(&self) -> Option<WithParams> {
3781 support::child(&self.syntax)
3782 }
3783 #[inline]
3784 pub fn as_token(&self) -> Option<SyntaxToken> {
3785 support::token(&self.syntax, SyntaxKind::AS_KW)
3786 }
3787 #[inline]
3788 pub fn create_token(&self) -> Option<SyntaxToken> {
3789 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3790 }
3791 #[inline]
3792 pub fn materialized_token(&self) -> Option<SyntaxToken> {
3793 support::token(&self.syntax, SyntaxKind::MATERIALIZED_KW)
3794 }
3795 #[inline]
3796 pub fn view_token(&self) -> Option<SyntaxToken> {
3797 support::token(&self.syntax, SyntaxKind::VIEW_KW)
3798 }
3799}
3800
3801#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3802pub struct CreateOperator {
3803 pub(crate) syntax: SyntaxNode,
3804}
3805impl CreateOperator {
3806 #[inline]
3807 pub fn attribute_list(&self) -> Option<AttributeList> {
3808 support::child(&self.syntax)
3809 }
3810 #[inline]
3811 pub fn op(&self) -> Option<Op> {
3812 support::child(&self.syntax)
3813 }
3814 #[inline]
3815 pub fn path(&self) -> Option<Path> {
3816 support::child(&self.syntax)
3817 }
3818 #[inline]
3819 pub fn create_token(&self) -> Option<SyntaxToken> {
3820 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3821 }
3822 #[inline]
3823 pub fn operator_token(&self) -> Option<SyntaxToken> {
3824 support::token(&self.syntax, SyntaxKind::OPERATOR_KW)
3825 }
3826}
3827
3828#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3829pub struct CreateOperatorClass {
3830 pub(crate) syntax: SyntaxNode,
3831}
3832impl CreateOperatorClass {
3833 #[inline]
3834 pub fn name_ref(&self) -> Option<NameRef> {
3835 support::child(&self.syntax)
3836 }
3837 #[inline]
3838 pub fn operator_class_option_list(&self) -> Option<OperatorClassOptionList> {
3839 support::child(&self.syntax)
3840 }
3841 #[inline]
3842 pub fn path(&self) -> Option<Path> {
3843 support::child(&self.syntax)
3844 }
3845 #[inline]
3846 pub fn ty(&self) -> Option<Type> {
3847 support::child(&self.syntax)
3848 }
3849 #[inline]
3850 pub fn as_token(&self) -> Option<SyntaxToken> {
3851 support::token(&self.syntax, SyntaxKind::AS_KW)
3852 }
3853 #[inline]
3854 pub fn class_token(&self) -> Option<SyntaxToken> {
3855 support::token(&self.syntax, SyntaxKind::CLASS_KW)
3856 }
3857 #[inline]
3858 pub fn create_token(&self) -> Option<SyntaxToken> {
3859 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3860 }
3861 #[inline]
3862 pub fn default_token(&self) -> Option<SyntaxToken> {
3863 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
3864 }
3865 #[inline]
3866 pub fn family_token(&self) -> Option<SyntaxToken> {
3867 support::token(&self.syntax, SyntaxKind::FAMILY_KW)
3868 }
3869 #[inline]
3870 pub fn for_token(&self) -> Option<SyntaxToken> {
3871 support::token(&self.syntax, SyntaxKind::FOR_KW)
3872 }
3873 #[inline]
3874 pub fn operator_token(&self) -> Option<SyntaxToken> {
3875 support::token(&self.syntax, SyntaxKind::OPERATOR_KW)
3876 }
3877 #[inline]
3878 pub fn type_token(&self) -> Option<SyntaxToken> {
3879 support::token(&self.syntax, SyntaxKind::TYPE_KW)
3880 }
3881 #[inline]
3882 pub fn using_token(&self) -> Option<SyntaxToken> {
3883 support::token(&self.syntax, SyntaxKind::USING_KW)
3884 }
3885}
3886
3887#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3888pub struct CreateOperatorFamily {
3889 pub(crate) syntax: SyntaxNode,
3890}
3891impl CreateOperatorFamily {
3892 #[inline]
3893 pub fn name_ref(&self) -> Option<NameRef> {
3894 support::child(&self.syntax)
3895 }
3896 #[inline]
3897 pub fn path(&self) -> Option<Path> {
3898 support::child(&self.syntax)
3899 }
3900 #[inline]
3901 pub fn create_token(&self) -> Option<SyntaxToken> {
3902 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3903 }
3904 #[inline]
3905 pub fn family_token(&self) -> Option<SyntaxToken> {
3906 support::token(&self.syntax, SyntaxKind::FAMILY_KW)
3907 }
3908 #[inline]
3909 pub fn operator_token(&self) -> Option<SyntaxToken> {
3910 support::token(&self.syntax, SyntaxKind::OPERATOR_KW)
3911 }
3912 #[inline]
3913 pub fn using_token(&self) -> Option<SyntaxToken> {
3914 support::token(&self.syntax, SyntaxKind::USING_KW)
3915 }
3916}
3917
3918#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3919pub struct CreatePolicy {
3920 pub(crate) syntax: SyntaxNode,
3921}
3922impl CreatePolicy {
3923 #[inline]
3924 pub fn as_policy_type(&self) -> Option<AsPolicyType> {
3925 support::child(&self.syntax)
3926 }
3927 #[inline]
3928 pub fn name(&self) -> Option<Name> {
3929 support::child(&self.syntax)
3930 }
3931 #[inline]
3932 pub fn on_table(&self) -> Option<OnTable> {
3933 support::child(&self.syntax)
3934 }
3935 #[inline]
3936 pub fn role_ref_list(&self) -> Option<RoleRefList> {
3937 support::child(&self.syntax)
3938 }
3939 #[inline]
3940 pub fn using_expr_clause(&self) -> Option<UsingExprClause> {
3941 support::child(&self.syntax)
3942 }
3943 #[inline]
3944 pub fn with_check_expr_clause(&self) -> Option<WithCheckExprClause> {
3945 support::child(&self.syntax)
3946 }
3947 #[inline]
3948 pub fn all_token(&self) -> Option<SyntaxToken> {
3949 support::token(&self.syntax, SyntaxKind::ALL_KW)
3950 }
3951 #[inline]
3952 pub fn create_token(&self) -> Option<SyntaxToken> {
3953 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3954 }
3955 #[inline]
3956 pub fn delete_token(&self) -> Option<SyntaxToken> {
3957 support::token(&self.syntax, SyntaxKind::DELETE_KW)
3958 }
3959 #[inline]
3960 pub fn for_token(&self) -> Option<SyntaxToken> {
3961 support::token(&self.syntax, SyntaxKind::FOR_KW)
3962 }
3963 #[inline]
3964 pub fn insert_token(&self) -> Option<SyntaxToken> {
3965 support::token(&self.syntax, SyntaxKind::INSERT_KW)
3966 }
3967 #[inline]
3968 pub fn policy_token(&self) -> Option<SyntaxToken> {
3969 support::token(&self.syntax, SyntaxKind::POLICY_KW)
3970 }
3971 #[inline]
3972 pub fn select_token(&self) -> Option<SyntaxToken> {
3973 support::token(&self.syntax, SyntaxKind::SELECT_KW)
3974 }
3975 #[inline]
3976 pub fn to_token(&self) -> Option<SyntaxToken> {
3977 support::token(&self.syntax, SyntaxKind::TO_KW)
3978 }
3979 #[inline]
3980 pub fn update_token(&self) -> Option<SyntaxToken> {
3981 support::token(&self.syntax, SyntaxKind::UPDATE_KW)
3982 }
3983}
3984
3985#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3986pub struct CreateProcedure {
3987 pub(crate) syntax: SyntaxNode,
3988}
3989impl CreateProcedure {
3990 #[inline]
3991 pub fn option_list(&self) -> Option<FuncOptionList> {
3992 support::child(&self.syntax)
3993 }
3994 #[inline]
3995 pub fn or_replace(&self) -> Option<OrReplace> {
3996 support::child(&self.syntax)
3997 }
3998 #[inline]
3999 pub fn param_list(&self) -> Option<ParamList> {
4000 support::child(&self.syntax)
4001 }
4002 #[inline]
4003 pub fn path(&self) -> Option<Path> {
4004 support::child(&self.syntax)
4005 }
4006 #[inline]
4007 pub fn create_token(&self) -> Option<SyntaxToken> {
4008 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4009 }
4010 #[inline]
4011 pub fn procedure_token(&self) -> Option<SyntaxToken> {
4012 support::token(&self.syntax, SyntaxKind::PROCEDURE_KW)
4013 }
4014}
4015
4016#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4017pub struct CreatePublication {
4018 pub(crate) syntax: SyntaxNode,
4019}
4020impl CreatePublication {
4021 #[inline]
4022 pub fn name(&self) -> Option<Name> {
4023 support::child(&self.syntax)
4024 }
4025 #[inline]
4026 pub fn publication_objects(&self) -> AstChildren<PublicationObject> {
4027 support::children(&self.syntax)
4028 }
4029 #[inline]
4030 pub fn with_params(&self) -> Option<WithParams> {
4031 support::child(&self.syntax)
4032 }
4033 #[inline]
4034 pub fn all_token(&self) -> Option<SyntaxToken> {
4035 support::token(&self.syntax, SyntaxKind::ALL_KW)
4036 }
4037 #[inline]
4038 pub fn create_token(&self) -> Option<SyntaxToken> {
4039 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4040 }
4041 #[inline]
4042 pub fn for_token(&self) -> Option<SyntaxToken> {
4043 support::token(&self.syntax, SyntaxKind::FOR_KW)
4044 }
4045 #[inline]
4046 pub fn publication_token(&self) -> Option<SyntaxToken> {
4047 support::token(&self.syntax, SyntaxKind::PUBLICATION_KW)
4048 }
4049 #[inline]
4050 pub fn tables_token(&self) -> Option<SyntaxToken> {
4051 support::token(&self.syntax, SyntaxKind::TABLES_KW)
4052 }
4053}
4054
4055#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4056pub struct CreateRole {
4057 pub(crate) syntax: SyntaxNode,
4058}
4059impl CreateRole {
4060 #[inline]
4061 pub fn name(&self) -> Option<Name> {
4062 support::child(&self.syntax)
4063 }
4064 #[inline]
4065 pub fn role_option_list(&self) -> Option<RoleOptionList> {
4066 support::child(&self.syntax)
4067 }
4068 #[inline]
4069 pub fn create_token(&self) -> Option<SyntaxToken> {
4070 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4071 }
4072 #[inline]
4073 pub fn role_token(&self) -> Option<SyntaxToken> {
4074 support::token(&self.syntax, SyntaxKind::ROLE_KW)
4075 }
4076}
4077
4078#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4079pub struct CreateRule {
4080 pub(crate) syntax: SyntaxNode,
4081}
4082impl CreateRule {
4083 #[inline]
4084 pub fn name(&self) -> Option<Name> {
4085 support::child(&self.syntax)
4086 }
4087 #[inline]
4088 pub fn or_replace(&self) -> Option<OrReplace> {
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 stmt(&self) -> Option<Stmt> {
4097 support::child(&self.syntax)
4098 }
4099 #[inline]
4100 pub fn stmts(&self) -> AstChildren<Stmt> {
4101 support::children(&self.syntax)
4102 }
4103 #[inline]
4104 pub fn where_clause(&self) -> Option<WhereClause> {
4105 support::child(&self.syntax)
4106 }
4107 #[inline]
4108 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
4109 support::token(&self.syntax, SyntaxKind::L_PAREN)
4110 }
4111 #[inline]
4112 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
4113 support::token(&self.syntax, SyntaxKind::R_PAREN)
4114 }
4115 #[inline]
4116 pub fn also_token(&self) -> Option<SyntaxToken> {
4117 support::token(&self.syntax, SyntaxKind::ALSO_KW)
4118 }
4119 #[inline]
4120 pub fn as_token(&self) -> Option<SyntaxToken> {
4121 support::token(&self.syntax, SyntaxKind::AS_KW)
4122 }
4123 #[inline]
4124 pub fn create_token(&self) -> Option<SyntaxToken> {
4125 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4126 }
4127 #[inline]
4128 pub fn delete_token(&self) -> Option<SyntaxToken> {
4129 support::token(&self.syntax, SyntaxKind::DELETE_KW)
4130 }
4131 #[inline]
4132 pub fn do_token(&self) -> Option<SyntaxToken> {
4133 support::token(&self.syntax, SyntaxKind::DO_KW)
4134 }
4135 #[inline]
4136 pub fn ident_token(&self) -> Option<SyntaxToken> {
4137 support::token(&self.syntax, SyntaxKind::IDENT)
4138 }
4139 #[inline]
4140 pub fn insert_token(&self) -> Option<SyntaxToken> {
4141 support::token(&self.syntax, SyntaxKind::INSERT_KW)
4142 }
4143 #[inline]
4144 pub fn instead_token(&self) -> Option<SyntaxToken> {
4145 support::token(&self.syntax, SyntaxKind::INSTEAD_KW)
4146 }
4147 #[inline]
4148 pub fn nothing_token(&self) -> Option<SyntaxToken> {
4149 support::token(&self.syntax, SyntaxKind::NOTHING_KW)
4150 }
4151 #[inline]
4152 pub fn on_token(&self) -> Option<SyntaxToken> {
4153 support::token(&self.syntax, SyntaxKind::ON_KW)
4154 }
4155 #[inline]
4156 pub fn rule_token(&self) -> Option<SyntaxToken> {
4157 support::token(&self.syntax, SyntaxKind::RULE_KW)
4158 }
4159 #[inline]
4160 pub fn select_token(&self) -> Option<SyntaxToken> {
4161 support::token(&self.syntax, SyntaxKind::SELECT_KW)
4162 }
4163 #[inline]
4164 pub fn to_token(&self) -> Option<SyntaxToken> {
4165 support::token(&self.syntax, SyntaxKind::TO_KW)
4166 }
4167 #[inline]
4168 pub fn update_token(&self) -> Option<SyntaxToken> {
4169 support::token(&self.syntax, SyntaxKind::UPDATE_KW)
4170 }
4171}
4172
4173#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4174pub struct CreateSchema {
4175 pub(crate) syntax: SyntaxNode,
4176}
4177impl CreateSchema {
4178 #[inline]
4179 pub fn if_not_exists(&self) -> Option<IfNotExists> {
4180 support::child(&self.syntax)
4181 }
4182 #[inline]
4183 pub fn name(&self) -> Option<Name> {
4184 support::child(&self.syntax)
4185 }
4186 #[inline]
4187 pub fn role(&self) -> Option<Role> {
4188 support::child(&self.syntax)
4189 }
4190 #[inline]
4191 pub fn role_ref(&self) -> Option<RoleRef> {
4192 support::child(&self.syntax)
4193 }
4194 #[inline]
4195 pub fn schema_elements(&self) -> AstChildren<SchemaElement> {
4196 support::children(&self.syntax)
4197 }
4198 #[inline]
4199 pub fn authorization_token(&self) -> Option<SyntaxToken> {
4200 support::token(&self.syntax, SyntaxKind::AUTHORIZATION_KW)
4201 }
4202 #[inline]
4203 pub fn create_token(&self) -> Option<SyntaxToken> {
4204 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4205 }
4206 #[inline]
4207 pub fn schema_token(&self) -> Option<SyntaxToken> {
4208 support::token(&self.syntax, SyntaxKind::SCHEMA_KW)
4209 }
4210}
4211
4212#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4213pub struct CreateSequence {
4214 pub(crate) syntax: SyntaxNode,
4215}
4216impl CreateSequence {
4217 #[inline]
4218 pub fn if_not_exists(&self) -> Option<IfNotExists> {
4219 support::child(&self.syntax)
4220 }
4221 #[inline]
4222 pub fn path(&self) -> Option<Path> {
4223 support::child(&self.syntax)
4224 }
4225 #[inline]
4226 pub fn sequence_options(&self) -> AstChildren<SequenceOption> {
4227 support::children(&self.syntax)
4228 }
4229 #[inline]
4230 pub fn create_token(&self) -> Option<SyntaxToken> {
4231 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4232 }
4233 #[inline]
4234 pub fn sequence_token(&self) -> Option<SyntaxToken> {
4235 support::token(&self.syntax, SyntaxKind::SEQUENCE_KW)
4236 }
4237 #[inline]
4238 pub fn temp_token(&self) -> Option<SyntaxToken> {
4239 support::token(&self.syntax, SyntaxKind::TEMP_KW)
4240 }
4241 #[inline]
4242 pub fn temporary_token(&self) -> Option<SyntaxToken> {
4243 support::token(&self.syntax, SyntaxKind::TEMPORARY_KW)
4244 }
4245 #[inline]
4246 pub fn unlogged_token(&self) -> Option<SyntaxToken> {
4247 support::token(&self.syntax, SyntaxKind::UNLOGGED_KW)
4248 }
4249}
4250
4251#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4252pub struct CreateServer {
4253 pub(crate) syntax: SyntaxNode,
4254}
4255impl CreateServer {
4256 #[inline]
4257 pub fn alter_option_list(&self) -> Option<AlterOptionList> {
4258 support::child(&self.syntax)
4259 }
4260 #[inline]
4261 pub fn if_not_exists(&self) -> Option<IfNotExists> {
4262 support::child(&self.syntax)
4263 }
4264 #[inline]
4265 pub fn literal(&self) -> Option<Literal> {
4266 support::child(&self.syntax)
4267 }
4268 #[inline]
4269 pub fn name(&self) -> Option<Name> {
4270 support::child(&self.syntax)
4271 }
4272 #[inline]
4273 pub fn name_ref(&self) -> Option<NameRef> {
4274 support::child(&self.syntax)
4275 }
4276 #[inline]
4277 pub fn create_token(&self) -> Option<SyntaxToken> {
4278 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4279 }
4280 #[inline]
4281 pub fn data_token(&self) -> Option<SyntaxToken> {
4282 support::token(&self.syntax, SyntaxKind::DATA_KW)
4283 }
4284 #[inline]
4285 pub fn foreign_token(&self) -> Option<SyntaxToken> {
4286 support::token(&self.syntax, SyntaxKind::FOREIGN_KW)
4287 }
4288 #[inline]
4289 pub fn server_token(&self) -> Option<SyntaxToken> {
4290 support::token(&self.syntax, SyntaxKind::SERVER_KW)
4291 }
4292 #[inline]
4293 pub fn type_token(&self) -> Option<SyntaxToken> {
4294 support::token(&self.syntax, SyntaxKind::TYPE_KW)
4295 }
4296 #[inline]
4297 pub fn version_token(&self) -> Option<SyntaxToken> {
4298 support::token(&self.syntax, SyntaxKind::VERSION_KW)
4299 }
4300 #[inline]
4301 pub fn wrapper_token(&self) -> Option<SyntaxToken> {
4302 support::token(&self.syntax, SyntaxKind::WRAPPER_KW)
4303 }
4304}
4305
4306#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4307pub struct CreateStatistics {
4308 pub(crate) syntax: SyntaxNode,
4309}
4310impl CreateStatistics {
4311 #[inline]
4312 pub fn from_table(&self) -> Option<FromTable> {
4313 support::child(&self.syntax)
4314 }
4315 #[inline]
4316 pub fn name_refs(&self) -> AstChildren<NameRef> {
4317 support::children(&self.syntax)
4318 }
4319 #[inline]
4320 pub fn path(&self) -> Option<Path> {
4321 support::child(&self.syntax)
4322 }
4323 #[inline]
4324 pub fn create_token(&self) -> Option<SyntaxToken> {
4325 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4326 }
4327 #[inline]
4328 pub fn on_token(&self) -> Option<SyntaxToken> {
4329 support::token(&self.syntax, SyntaxKind::ON_KW)
4330 }
4331 #[inline]
4332 pub fn statistics_token(&self) -> Option<SyntaxToken> {
4333 support::token(&self.syntax, SyntaxKind::STATISTICS_KW)
4334 }
4335}
4336
4337#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4338pub struct CreateSubscription {
4339 pub(crate) syntax: SyntaxNode,
4340}
4341impl CreateSubscription {
4342 #[inline]
4343 pub fn literal(&self) -> Option<Literal> {
4344 support::child(&self.syntax)
4345 }
4346 #[inline]
4347 pub fn name(&self) -> Option<Name> {
4348 support::child(&self.syntax)
4349 }
4350 #[inline]
4351 pub fn name_refs(&self) -> AstChildren<NameRef> {
4352 support::children(&self.syntax)
4353 }
4354 #[inline]
4355 pub fn with_params(&self) -> Option<WithParams> {
4356 support::child(&self.syntax)
4357 }
4358 #[inline]
4359 pub fn connection_token(&self) -> Option<SyntaxToken> {
4360 support::token(&self.syntax, SyntaxKind::CONNECTION_KW)
4361 }
4362 #[inline]
4363 pub fn create_token(&self) -> Option<SyntaxToken> {
4364 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4365 }
4366 #[inline]
4367 pub fn publication_token(&self) -> Option<SyntaxToken> {
4368 support::token(&self.syntax, SyntaxKind::PUBLICATION_KW)
4369 }
4370 #[inline]
4371 pub fn subscription_token(&self) -> Option<SyntaxToken> {
4372 support::token(&self.syntax, SyntaxKind::SUBSCRIPTION_KW)
4373 }
4374}
4375
4376#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4377pub struct CreateTable {
4378 pub(crate) syntax: SyntaxNode,
4379}
4380impl CreateTable {
4381 #[inline]
4382 pub fn if_not_exists(&self) -> Option<IfNotExists> {
4383 support::child(&self.syntax)
4384 }
4385 #[inline]
4386 pub fn inherits(&self) -> Option<Inherits> {
4387 support::child(&self.syntax)
4388 }
4389 #[inline]
4390 pub fn of_type(&self) -> Option<OfType> {
4391 support::child(&self.syntax)
4392 }
4393 #[inline]
4394 pub fn on_commit(&self) -> Option<OnCommit> {
4395 support::child(&self.syntax)
4396 }
4397 #[inline]
4398 pub fn partition_by(&self) -> Option<PartitionBy> {
4399 support::child(&self.syntax)
4400 }
4401 #[inline]
4402 pub fn partition_of(&self) -> Option<PartitionOf> {
4403 support::child(&self.syntax)
4404 }
4405 #[inline]
4406 pub fn path(&self) -> Option<Path> {
4407 support::child(&self.syntax)
4408 }
4409 #[inline]
4410 pub fn table_arg_list(&self) -> Option<TableArgList> {
4411 support::child(&self.syntax)
4412 }
4413 #[inline]
4414 pub fn tablespace(&self) -> Option<Tablespace> {
4415 support::child(&self.syntax)
4416 }
4417 #[inline]
4418 pub fn using_method(&self) -> Option<UsingMethod> {
4419 support::child(&self.syntax)
4420 }
4421 #[inline]
4422 pub fn with_params(&self) -> Option<WithParams> {
4423 support::child(&self.syntax)
4424 }
4425 #[inline]
4426 pub fn without_oids(&self) -> Option<WithoutOids> {
4427 support::child(&self.syntax)
4428 }
4429 #[inline]
4430 pub fn create_token(&self) -> Option<SyntaxToken> {
4431 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4432 }
4433 #[inline]
4434 pub fn global_token(&self) -> Option<SyntaxToken> {
4435 support::token(&self.syntax, SyntaxKind::GLOBAL_KW)
4436 }
4437 #[inline]
4438 pub fn local_token(&self) -> Option<SyntaxToken> {
4439 support::token(&self.syntax, SyntaxKind::LOCAL_KW)
4440 }
4441 #[inline]
4442 pub fn table_token(&self) -> Option<SyntaxToken> {
4443 support::token(&self.syntax, SyntaxKind::TABLE_KW)
4444 }
4445 #[inline]
4446 pub fn temp_token(&self) -> Option<SyntaxToken> {
4447 support::token(&self.syntax, SyntaxKind::TEMP_KW)
4448 }
4449 #[inline]
4450 pub fn temporary_token(&self) -> Option<SyntaxToken> {
4451 support::token(&self.syntax, SyntaxKind::TEMPORARY_KW)
4452 }
4453 #[inline]
4454 pub fn unlogged_token(&self) -> Option<SyntaxToken> {
4455 support::token(&self.syntax, SyntaxKind::UNLOGGED_KW)
4456 }
4457}
4458
4459#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4460pub struct CreateTableAs {
4461 pub(crate) syntax: SyntaxNode,
4462}
4463impl CreateTableAs {
4464 #[inline]
4465 pub fn if_not_exists(&self) -> Option<IfNotExists> {
4466 support::child(&self.syntax)
4467 }
4468 #[inline]
4469 pub fn on_commit(&self) -> Option<OnCommit> {
4470 support::child(&self.syntax)
4471 }
4472 #[inline]
4473 pub fn path(&self) -> Option<Path> {
4474 support::child(&self.syntax)
4475 }
4476 #[inline]
4477 pub fn query(&self) -> Option<SelectVariant> {
4478 support::child(&self.syntax)
4479 }
4480 #[inline]
4481 pub fn tablespace(&self) -> Option<Tablespace> {
4482 support::child(&self.syntax)
4483 }
4484 #[inline]
4485 pub fn using_method(&self) -> Option<UsingMethod> {
4486 support::child(&self.syntax)
4487 }
4488 #[inline]
4489 pub fn with_data(&self) -> Option<WithData> {
4490 support::child(&self.syntax)
4491 }
4492 #[inline]
4493 pub fn with_no_data(&self) -> Option<WithNoData> {
4494 support::child(&self.syntax)
4495 }
4496 #[inline]
4497 pub fn with_params(&self) -> Option<WithParams> {
4498 support::child(&self.syntax)
4499 }
4500 #[inline]
4501 pub fn without_oids(&self) -> Option<WithoutOids> {
4502 support::child(&self.syntax)
4503 }
4504 #[inline]
4505 pub fn as_token(&self) -> Option<SyntaxToken> {
4506 support::token(&self.syntax, SyntaxKind::AS_KW)
4507 }
4508 #[inline]
4509 pub fn create_token(&self) -> Option<SyntaxToken> {
4510 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4511 }
4512 #[inline]
4513 pub fn global_token(&self) -> Option<SyntaxToken> {
4514 support::token(&self.syntax, SyntaxKind::GLOBAL_KW)
4515 }
4516 #[inline]
4517 pub fn local_token(&self) -> Option<SyntaxToken> {
4518 support::token(&self.syntax, SyntaxKind::LOCAL_KW)
4519 }
4520 #[inline]
4521 pub fn table_token(&self) -> Option<SyntaxToken> {
4522 support::token(&self.syntax, SyntaxKind::TABLE_KW)
4523 }
4524 #[inline]
4525 pub fn temp_token(&self) -> Option<SyntaxToken> {
4526 support::token(&self.syntax, SyntaxKind::TEMP_KW)
4527 }
4528 #[inline]
4529 pub fn temporary_token(&self) -> Option<SyntaxToken> {
4530 support::token(&self.syntax, SyntaxKind::TEMPORARY_KW)
4531 }
4532 #[inline]
4533 pub fn unlogged_token(&self) -> Option<SyntaxToken> {
4534 support::token(&self.syntax, SyntaxKind::UNLOGGED_KW)
4535 }
4536}
4537
4538#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4539pub struct CreateTablespace {
4540 pub(crate) syntax: SyntaxNode,
4541}
4542impl CreateTablespace {
4543 #[inline]
4544 pub fn literal(&self) -> Option<Literal> {
4545 support::child(&self.syntax)
4546 }
4547 #[inline]
4548 pub fn name(&self) -> Option<Name> {
4549 support::child(&self.syntax)
4550 }
4551 #[inline]
4552 pub fn role_ref(&self) -> Option<RoleRef> {
4553 support::child(&self.syntax)
4554 }
4555 #[inline]
4556 pub fn with_params(&self) -> Option<WithParams> {
4557 support::child(&self.syntax)
4558 }
4559 #[inline]
4560 pub fn create_token(&self) -> Option<SyntaxToken> {
4561 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4562 }
4563 #[inline]
4564 pub fn location_token(&self) -> Option<SyntaxToken> {
4565 support::token(&self.syntax, SyntaxKind::LOCATION_KW)
4566 }
4567 #[inline]
4568 pub fn owner_token(&self) -> Option<SyntaxToken> {
4569 support::token(&self.syntax, SyntaxKind::OWNER_KW)
4570 }
4571 #[inline]
4572 pub fn tablespace_token(&self) -> Option<SyntaxToken> {
4573 support::token(&self.syntax, SyntaxKind::TABLESPACE_KW)
4574 }
4575}
4576
4577#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4578pub struct CreateTextSearchConfiguration {
4579 pub(crate) syntax: SyntaxNode,
4580}
4581impl CreateTextSearchConfiguration {
4582 #[inline]
4583 pub fn attribute_list(&self) -> Option<AttributeList> {
4584 support::child(&self.syntax)
4585 }
4586 #[inline]
4587 pub fn path(&self) -> Option<Path> {
4588 support::child(&self.syntax)
4589 }
4590 #[inline]
4591 pub fn configuration_token(&self) -> Option<SyntaxToken> {
4592 support::token(&self.syntax, SyntaxKind::CONFIGURATION_KW)
4593 }
4594 #[inline]
4595 pub fn create_token(&self) -> Option<SyntaxToken> {
4596 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4597 }
4598 #[inline]
4599 pub fn search_token(&self) -> Option<SyntaxToken> {
4600 support::token(&self.syntax, SyntaxKind::SEARCH_KW)
4601 }
4602 #[inline]
4603 pub fn text_token(&self) -> Option<SyntaxToken> {
4604 support::token(&self.syntax, SyntaxKind::TEXT_KW)
4605 }
4606}
4607
4608#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4609pub struct CreateTextSearchDictionary {
4610 pub(crate) syntax: SyntaxNode,
4611}
4612impl CreateTextSearchDictionary {
4613 #[inline]
4614 pub fn attribute_list(&self) -> Option<AttributeList> {
4615 support::child(&self.syntax)
4616 }
4617 #[inline]
4618 pub fn path(&self) -> Option<Path> {
4619 support::child(&self.syntax)
4620 }
4621 #[inline]
4622 pub fn create_token(&self) -> Option<SyntaxToken> {
4623 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4624 }
4625 #[inline]
4626 pub fn dictionary_token(&self) -> Option<SyntaxToken> {
4627 support::token(&self.syntax, SyntaxKind::DICTIONARY_KW)
4628 }
4629 #[inline]
4630 pub fn search_token(&self) -> Option<SyntaxToken> {
4631 support::token(&self.syntax, SyntaxKind::SEARCH_KW)
4632 }
4633 #[inline]
4634 pub fn text_token(&self) -> Option<SyntaxToken> {
4635 support::token(&self.syntax, SyntaxKind::TEXT_KW)
4636 }
4637}
4638
4639#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4640pub struct CreateTextSearchParser {
4641 pub(crate) syntax: SyntaxNode,
4642}
4643impl CreateTextSearchParser {
4644 #[inline]
4645 pub fn attribute_list(&self) -> Option<AttributeList> {
4646 support::child(&self.syntax)
4647 }
4648 #[inline]
4649 pub fn path(&self) -> Option<Path> {
4650 support::child(&self.syntax)
4651 }
4652 #[inline]
4653 pub fn create_token(&self) -> Option<SyntaxToken> {
4654 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4655 }
4656 #[inline]
4657 pub fn parser_token(&self) -> Option<SyntaxToken> {
4658 support::token(&self.syntax, SyntaxKind::PARSER_KW)
4659 }
4660 #[inline]
4661 pub fn search_token(&self) -> Option<SyntaxToken> {
4662 support::token(&self.syntax, SyntaxKind::SEARCH_KW)
4663 }
4664 #[inline]
4665 pub fn text_token(&self) -> Option<SyntaxToken> {
4666 support::token(&self.syntax, SyntaxKind::TEXT_KW)
4667 }
4668}
4669
4670#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4671pub struct CreateTextSearchTemplate {
4672 pub(crate) syntax: SyntaxNode,
4673}
4674impl CreateTextSearchTemplate {
4675 #[inline]
4676 pub fn attribute_list(&self) -> Option<AttributeList> {
4677 support::child(&self.syntax)
4678 }
4679 #[inline]
4680 pub fn path(&self) -> Option<Path> {
4681 support::child(&self.syntax)
4682 }
4683 #[inline]
4684 pub fn create_token(&self) -> Option<SyntaxToken> {
4685 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4686 }
4687 #[inline]
4688 pub fn search_token(&self) -> Option<SyntaxToken> {
4689 support::token(&self.syntax, SyntaxKind::SEARCH_KW)
4690 }
4691 #[inline]
4692 pub fn template_token(&self) -> Option<SyntaxToken> {
4693 support::token(&self.syntax, SyntaxKind::TEMPLATE_KW)
4694 }
4695 #[inline]
4696 pub fn text_token(&self) -> Option<SyntaxToken> {
4697 support::token(&self.syntax, SyntaxKind::TEXT_KW)
4698 }
4699}
4700
4701#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4702pub struct CreateTransform {
4703 pub(crate) syntax: SyntaxNode,
4704}
4705impl CreateTransform {
4706 #[inline]
4707 pub fn from_func(&self) -> Option<TransformFromFunc> {
4708 support::child(&self.syntax)
4709 }
4710 #[inline]
4711 pub fn language(&self) -> Option<NameRef> {
4712 support::child(&self.syntax)
4713 }
4714 #[inline]
4715 pub fn or_replace(&self) -> Option<OrReplace> {
4716 support::child(&self.syntax)
4717 }
4718 #[inline]
4719 pub fn to_func(&self) -> Option<TransformToFunc> {
4720 support::child(&self.syntax)
4721 }
4722 #[inline]
4723 pub fn ty(&self) -> Option<Type> {
4724 support::child(&self.syntax)
4725 }
4726 #[inline]
4727 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
4728 support::token(&self.syntax, SyntaxKind::L_PAREN)
4729 }
4730 #[inline]
4731 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
4732 support::token(&self.syntax, SyntaxKind::R_PAREN)
4733 }
4734 #[inline]
4735 pub fn comma_token(&self) -> Option<SyntaxToken> {
4736 support::token(&self.syntax, SyntaxKind::COMMA)
4737 }
4738 #[inline]
4739 pub fn create_token(&self) -> Option<SyntaxToken> {
4740 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4741 }
4742 #[inline]
4743 pub fn for_token(&self) -> Option<SyntaxToken> {
4744 support::token(&self.syntax, SyntaxKind::FOR_KW)
4745 }
4746 #[inline]
4747 pub fn language_token(&self) -> Option<SyntaxToken> {
4748 support::token(&self.syntax, SyntaxKind::LANGUAGE_KW)
4749 }
4750 #[inline]
4751 pub fn transform_token(&self) -> Option<SyntaxToken> {
4752 support::token(&self.syntax, SyntaxKind::TRANSFORM_KW)
4753 }
4754}
4755
4756#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4757pub struct CreateTrigger {
4758 pub(crate) syntax: SyntaxNode,
4759}
4760impl CreateTrigger {
4761 #[inline]
4762 pub fn call_expr(&self) -> Option<CallExpr> {
4763 support::child(&self.syntax)
4764 }
4765 #[inline]
4766 pub fn deferrable_constraint_option(&self) -> Option<DeferrableConstraintOption> {
4767 support::child(&self.syntax)
4768 }
4769 #[inline]
4770 pub fn from_table(&self) -> Option<FromTable> {
4771 support::child(&self.syntax)
4772 }
4773 #[inline]
4774 pub fn initially_deferred_constraint_option(
4775 &self,
4776 ) -> Option<InitiallyDeferredConstraintOption> {
4777 support::child(&self.syntax)
4778 }
4779 #[inline]
4780 pub fn initially_immediate_constraint_option(
4781 &self,
4782 ) -> Option<InitiallyImmediateConstraintOption> {
4783 support::child(&self.syntax)
4784 }
4785 #[inline]
4786 pub fn name(&self) -> Option<Name> {
4787 support::child(&self.syntax)
4788 }
4789 #[inline]
4790 pub fn not_deferrable_constraint_option(&self) -> Option<NotDeferrableConstraintOption> {
4791 support::child(&self.syntax)
4792 }
4793 #[inline]
4794 pub fn on_table(&self) -> Option<OnTable> {
4795 support::child(&self.syntax)
4796 }
4797 #[inline]
4798 pub fn or_replace(&self) -> Option<OrReplace> {
4799 support::child(&self.syntax)
4800 }
4801 #[inline]
4802 pub fn referencing(&self) -> Option<Referencing> {
4803 support::child(&self.syntax)
4804 }
4805 #[inline]
4806 pub fn timing(&self) -> Option<Timing> {
4807 support::child(&self.syntax)
4808 }
4809 #[inline]
4810 pub fn trigger_event_list(&self) -> Option<TriggerEventList> {
4811 support::child(&self.syntax)
4812 }
4813 #[inline]
4814 pub fn when_condition(&self) -> Option<WhenCondition> {
4815 support::child(&self.syntax)
4816 }
4817 #[inline]
4818 pub fn constraint_token(&self) -> Option<SyntaxToken> {
4819 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
4820 }
4821 #[inline]
4822 pub fn create_token(&self) -> Option<SyntaxToken> {
4823 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4824 }
4825 #[inline]
4826 pub fn each_token(&self) -> Option<SyntaxToken> {
4827 support::token(&self.syntax, SyntaxKind::EACH_KW)
4828 }
4829 #[inline]
4830 pub fn execute_token(&self) -> Option<SyntaxToken> {
4831 support::token(&self.syntax, SyntaxKind::EXECUTE_KW)
4832 }
4833 #[inline]
4834 pub fn for_token(&self) -> Option<SyntaxToken> {
4835 support::token(&self.syntax, SyntaxKind::FOR_KW)
4836 }
4837 #[inline]
4838 pub fn function_token(&self) -> Option<SyntaxToken> {
4839 support::token(&self.syntax, SyntaxKind::FUNCTION_KW)
4840 }
4841 #[inline]
4842 pub fn procedure_token(&self) -> Option<SyntaxToken> {
4843 support::token(&self.syntax, SyntaxKind::PROCEDURE_KW)
4844 }
4845 #[inline]
4846 pub fn row_token(&self) -> Option<SyntaxToken> {
4847 support::token(&self.syntax, SyntaxKind::ROW_KW)
4848 }
4849 #[inline]
4850 pub fn statement_token(&self) -> Option<SyntaxToken> {
4851 support::token(&self.syntax, SyntaxKind::STATEMENT_KW)
4852 }
4853 #[inline]
4854 pub fn trigger_token(&self) -> Option<SyntaxToken> {
4855 support::token(&self.syntax, SyntaxKind::TRIGGER_KW)
4856 }
4857}
4858
4859#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4860pub struct CreateType {
4861 pub(crate) syntax: SyntaxNode,
4862}
4863impl CreateType {
4864 #[inline]
4865 pub fn attribute_list(&self) -> Option<AttributeList> {
4866 support::child(&self.syntax)
4867 }
4868 #[inline]
4869 pub fn column_list(&self) -> Option<ColumnList> {
4870 support::child(&self.syntax)
4871 }
4872 #[inline]
4873 pub fn path(&self) -> Option<Path> {
4874 support::child(&self.syntax)
4875 }
4876 #[inline]
4877 pub fn variant_list(&self) -> Option<VariantList> {
4878 support::child(&self.syntax)
4879 }
4880 #[inline]
4881 pub fn as_token(&self) -> Option<SyntaxToken> {
4882 support::token(&self.syntax, SyntaxKind::AS_KW)
4883 }
4884 #[inline]
4885 pub fn create_token(&self) -> Option<SyntaxToken> {
4886 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4887 }
4888 #[inline]
4889 pub fn enum_token(&self) -> Option<SyntaxToken> {
4890 support::token(&self.syntax, SyntaxKind::ENUM_KW)
4891 }
4892 #[inline]
4893 pub fn range_token(&self) -> Option<SyntaxToken> {
4894 support::token(&self.syntax, SyntaxKind::RANGE_KW)
4895 }
4896 #[inline]
4897 pub fn type_token(&self) -> Option<SyntaxToken> {
4898 support::token(&self.syntax, SyntaxKind::TYPE_KW)
4899 }
4900}
4901
4902#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4903pub struct CreateUser {
4904 pub(crate) syntax: SyntaxNode,
4905}
4906impl CreateUser {
4907 #[inline]
4908 pub fn name(&self) -> Option<Name> {
4909 support::child(&self.syntax)
4910 }
4911 #[inline]
4912 pub fn role_option_list(&self) -> Option<RoleOptionList> {
4913 support::child(&self.syntax)
4914 }
4915 #[inline]
4916 pub fn create_token(&self) -> Option<SyntaxToken> {
4917 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4918 }
4919 #[inline]
4920 pub fn user_token(&self) -> Option<SyntaxToken> {
4921 support::token(&self.syntax, SyntaxKind::USER_KW)
4922 }
4923}
4924
4925#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4926pub struct CreateUserMapping {
4927 pub(crate) syntax: SyntaxNode,
4928}
4929impl CreateUserMapping {
4930 #[inline]
4931 pub fn alter_option_list(&self) -> Option<AlterOptionList> {
4932 support::child(&self.syntax)
4933 }
4934 #[inline]
4935 pub fn if_not_exists(&self) -> Option<IfNotExists> {
4936 support::child(&self.syntax)
4937 }
4938 #[inline]
4939 pub fn role_ref(&self) -> Option<RoleRef> {
4940 support::child(&self.syntax)
4941 }
4942 #[inline]
4943 pub fn server_name(&self) -> Option<ServerName> {
4944 support::child(&self.syntax)
4945 }
4946 #[inline]
4947 pub fn create_token(&self) -> Option<SyntaxToken> {
4948 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4949 }
4950 #[inline]
4951 pub fn for_token(&self) -> Option<SyntaxToken> {
4952 support::token(&self.syntax, SyntaxKind::FOR_KW)
4953 }
4954 #[inline]
4955 pub fn mapping_token(&self) -> Option<SyntaxToken> {
4956 support::token(&self.syntax, SyntaxKind::MAPPING_KW)
4957 }
4958 #[inline]
4959 pub fn user_token(&self) -> Option<SyntaxToken> {
4960 support::token(&self.syntax, SyntaxKind::USER_KW)
4961 }
4962}
4963
4964#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4965pub struct CreateView {
4966 pub(crate) syntax: SyntaxNode,
4967}
4968impl CreateView {
4969 #[inline]
4970 pub fn column_list(&self) -> Option<ColumnList> {
4971 support::child(&self.syntax)
4972 }
4973 #[inline]
4974 pub fn or_replace(&self) -> Option<OrReplace> {
4975 support::child(&self.syntax)
4976 }
4977 #[inline]
4978 pub fn path(&self) -> Option<Path> {
4979 support::child(&self.syntax)
4980 }
4981 #[inline]
4982 pub fn query(&self) -> Option<SelectVariant> {
4983 support::child(&self.syntax)
4984 }
4985 #[inline]
4986 pub fn with_params(&self) -> Option<WithParams> {
4987 support::child(&self.syntax)
4988 }
4989 #[inline]
4990 pub fn as_token(&self) -> Option<SyntaxToken> {
4991 support::token(&self.syntax, SyntaxKind::AS_KW)
4992 }
4993 #[inline]
4994 pub fn cascaded_token(&self) -> Option<SyntaxToken> {
4995 support::token(&self.syntax, SyntaxKind::CASCADED_KW)
4996 }
4997 #[inline]
4998 pub fn check_token(&self) -> Option<SyntaxToken> {
4999 support::token(&self.syntax, SyntaxKind::CHECK_KW)
5000 }
5001 #[inline]
5002 pub fn create_token(&self) -> Option<SyntaxToken> {
5003 support::token(&self.syntax, SyntaxKind::CREATE_KW)
5004 }
5005 #[inline]
5006 pub fn local_token(&self) -> Option<SyntaxToken> {
5007 support::token(&self.syntax, SyntaxKind::LOCAL_KW)
5008 }
5009 #[inline]
5010 pub fn option_token(&self) -> Option<SyntaxToken> {
5011 support::token(&self.syntax, SyntaxKind::OPTION_KW)
5012 }
5013 #[inline]
5014 pub fn recursive_token(&self) -> Option<SyntaxToken> {
5015 support::token(&self.syntax, SyntaxKind::RECURSIVE_KW)
5016 }
5017 #[inline]
5018 pub fn temp_token(&self) -> Option<SyntaxToken> {
5019 support::token(&self.syntax, SyntaxKind::TEMP_KW)
5020 }
5021 #[inline]
5022 pub fn temporary_token(&self) -> Option<SyntaxToken> {
5023 support::token(&self.syntax, SyntaxKind::TEMPORARY_KW)
5024 }
5025 #[inline]
5026 pub fn view_token(&self) -> Option<SyntaxToken> {
5027 support::token(&self.syntax, SyntaxKind::VIEW_KW)
5028 }
5029 #[inline]
5030 pub fn with_token(&self) -> Option<SyntaxToken> {
5031 support::token(&self.syntax, SyntaxKind::WITH_KW)
5032 }
5033}
5034
5035#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5036pub struct CustomOp {
5037 pub(crate) syntax: SyntaxNode,
5038}
5039impl CustomOp {
5040 #[inline]
5041 pub fn bang_token(&self) -> Option<SyntaxToken> {
5042 support::token(&self.syntax, SyntaxKind::BANG)
5043 }
5044 #[inline]
5045 pub fn pound_token(&self) -> Option<SyntaxToken> {
5046 support::token(&self.syntax, SyntaxKind::POUND)
5047 }
5048 #[inline]
5049 pub fn percent_token(&self) -> Option<SyntaxToken> {
5050 support::token(&self.syntax, SyntaxKind::PERCENT)
5051 }
5052 #[inline]
5053 pub fn amp_token(&self) -> Option<SyntaxToken> {
5054 support::token(&self.syntax, SyntaxKind::AMP)
5055 }
5056 #[inline]
5057 pub fn star_token(&self) -> Option<SyntaxToken> {
5058 support::token(&self.syntax, SyntaxKind::STAR)
5059 }
5060 #[inline]
5061 pub fn plus_token(&self) -> Option<SyntaxToken> {
5062 support::token(&self.syntax, SyntaxKind::PLUS)
5063 }
5064 #[inline]
5065 pub fn minus_token(&self) -> Option<SyntaxToken> {
5066 support::token(&self.syntax, SyntaxKind::MINUS)
5067 }
5068 #[inline]
5069 pub fn slash_token(&self) -> Option<SyntaxToken> {
5070 support::token(&self.syntax, SyntaxKind::SLASH)
5071 }
5072 #[inline]
5073 pub fn l_angle_token(&self) -> Option<SyntaxToken> {
5074 support::token(&self.syntax, SyntaxKind::L_ANGLE)
5075 }
5076 #[inline]
5077 pub fn eq_token(&self) -> Option<SyntaxToken> {
5078 support::token(&self.syntax, SyntaxKind::EQ)
5079 }
5080 #[inline]
5081 pub fn r_angle_token(&self) -> Option<SyntaxToken> {
5082 support::token(&self.syntax, SyntaxKind::R_ANGLE)
5083 }
5084 #[inline]
5085 pub fn question_token(&self) -> Option<SyntaxToken> {
5086 support::token(&self.syntax, SyntaxKind::QUESTION)
5087 }
5088 #[inline]
5089 pub fn at_token(&self) -> Option<SyntaxToken> {
5090 support::token(&self.syntax, SyntaxKind::AT)
5091 }
5092 #[inline]
5093 pub fn caret_token(&self) -> Option<SyntaxToken> {
5094 support::token(&self.syntax, SyntaxKind::CARET)
5095 }
5096 #[inline]
5097 pub fn backtick_token(&self) -> Option<SyntaxToken> {
5098 support::token(&self.syntax, SyntaxKind::BACKTICK)
5099 }
5100 #[inline]
5101 pub fn pipe_token(&self) -> Option<SyntaxToken> {
5102 support::token(&self.syntax, SyntaxKind::PIPE)
5103 }
5104 #[inline]
5105 pub fn tilde_token(&self) -> Option<SyntaxToken> {
5106 support::token(&self.syntax, SyntaxKind::TILDE)
5107 }
5108}
5109
5110#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5111pub struct Deallocate {
5112 pub(crate) syntax: SyntaxNode,
5113}
5114impl Deallocate {
5115 #[inline]
5116 pub fn name_ref(&self) -> Option<NameRef> {
5117 support::child(&self.syntax)
5118 }
5119 #[inline]
5120 pub fn all_token(&self) -> Option<SyntaxToken> {
5121 support::token(&self.syntax, SyntaxKind::ALL_KW)
5122 }
5123 #[inline]
5124 pub fn deallocate_token(&self) -> Option<SyntaxToken> {
5125 support::token(&self.syntax, SyntaxKind::DEALLOCATE_KW)
5126 }
5127 #[inline]
5128 pub fn prepare_token(&self) -> Option<SyntaxToken> {
5129 support::token(&self.syntax, SyntaxKind::PREPARE_KW)
5130 }
5131}
5132
5133#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5134pub struct Declare {
5135 pub(crate) syntax: SyntaxNode,
5136}
5137impl Declare {
5138 #[inline]
5139 pub fn name(&self) -> Option<Name> {
5140 support::child(&self.syntax)
5141 }
5142 #[inline]
5143 pub fn query(&self) -> Option<SelectVariant> {
5144 support::child(&self.syntax)
5145 }
5146 #[inline]
5147 pub fn asensitive_token(&self) -> Option<SyntaxToken> {
5148 support::token(&self.syntax, SyntaxKind::ASENSITIVE_KW)
5149 }
5150 #[inline]
5151 pub fn binary_token(&self) -> Option<SyntaxToken> {
5152 support::token(&self.syntax, SyntaxKind::BINARY_KW)
5153 }
5154 #[inline]
5155 pub fn cursor_token(&self) -> Option<SyntaxToken> {
5156 support::token(&self.syntax, SyntaxKind::CURSOR_KW)
5157 }
5158 #[inline]
5159 pub fn declare_token(&self) -> Option<SyntaxToken> {
5160 support::token(&self.syntax, SyntaxKind::DECLARE_KW)
5161 }
5162 #[inline]
5163 pub fn for_token(&self) -> Option<SyntaxToken> {
5164 support::token(&self.syntax, SyntaxKind::FOR_KW)
5165 }
5166 #[inline]
5167 pub fn hold_token(&self) -> Option<SyntaxToken> {
5168 support::token(&self.syntax, SyntaxKind::HOLD_KW)
5169 }
5170 #[inline]
5171 pub fn insensitive_token(&self) -> Option<SyntaxToken> {
5172 support::token(&self.syntax, SyntaxKind::INSENSITIVE_KW)
5173 }
5174 #[inline]
5175 pub fn no_token(&self) -> Option<SyntaxToken> {
5176 support::token(&self.syntax, SyntaxKind::NO_KW)
5177 }
5178 #[inline]
5179 pub fn scroll_token(&self) -> Option<SyntaxToken> {
5180 support::token(&self.syntax, SyntaxKind::SCROLL_KW)
5181 }
5182 #[inline]
5183 pub fn with_token(&self) -> Option<SyntaxToken> {
5184 support::token(&self.syntax, SyntaxKind::WITH_KW)
5185 }
5186 #[inline]
5187 pub fn without_token(&self) -> Option<SyntaxToken> {
5188 support::token(&self.syntax, SyntaxKind::WITHOUT_KW)
5189 }
5190}
5191
5192#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5193pub struct DefaultConstraint {
5194 pub(crate) syntax: SyntaxNode,
5195}
5196impl DefaultConstraint {
5197 #[inline]
5198 pub fn expr(&self) -> Option<Expr> {
5199 support::child(&self.syntax)
5200 }
5201 #[inline]
5202 pub fn name_ref(&self) -> Option<NameRef> {
5203 support::child(&self.syntax)
5204 }
5205 #[inline]
5206 pub fn constraint_token(&self) -> Option<SyntaxToken> {
5207 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
5208 }
5209 #[inline]
5210 pub fn default_token(&self) -> Option<SyntaxToken> {
5211 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
5212 }
5213}
5214
5215#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5216pub struct Deferrable {
5217 pub(crate) syntax: SyntaxNode,
5218}
5219impl Deferrable {
5220 #[inline]
5221 pub fn deferrable_token(&self) -> Option<SyntaxToken> {
5222 support::token(&self.syntax, SyntaxKind::DEFERRABLE_KW)
5223 }
5224}
5225
5226#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5227pub struct DeferrableConstraintOption {
5228 pub(crate) syntax: SyntaxNode,
5229}
5230impl DeferrableConstraintOption {
5231 #[inline]
5232 pub fn deferrable_token(&self) -> Option<SyntaxToken> {
5233 support::token(&self.syntax, SyntaxKind::DEFERRABLE_KW)
5234 }
5235}
5236
5237#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5238pub struct Delete {
5239 pub(crate) syntax: SyntaxNode,
5240}
5241impl Delete {
5242 #[inline]
5243 pub fn alias(&self) -> Option<Alias> {
5244 support::child(&self.syntax)
5245 }
5246 #[inline]
5247 pub fn relation_name(&self) -> Option<RelationName> {
5248 support::child(&self.syntax)
5249 }
5250 #[inline]
5251 pub fn returning_clause(&self) -> Option<ReturningClause> {
5252 support::child(&self.syntax)
5253 }
5254 #[inline]
5255 pub fn using_clause(&self) -> Option<UsingClause> {
5256 support::child(&self.syntax)
5257 }
5258 #[inline]
5259 pub fn where_clause(&self) -> Option<WhereClause> {
5260 support::child(&self.syntax)
5261 }
5262 #[inline]
5263 pub fn where_current_of(&self) -> Option<WhereCurrentOf> {
5264 support::child(&self.syntax)
5265 }
5266 #[inline]
5267 pub fn with_clause(&self) -> Option<WithClause> {
5268 support::child(&self.syntax)
5269 }
5270 #[inline]
5271 pub fn delete_token(&self) -> Option<SyntaxToken> {
5272 support::token(&self.syntax, SyntaxKind::DELETE_KW)
5273 }
5274 #[inline]
5275 pub fn from_token(&self) -> Option<SyntaxToken> {
5276 support::token(&self.syntax, SyntaxKind::FROM_KW)
5277 }
5278}
5279
5280#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5281pub struct DeleteRows {
5282 pub(crate) syntax: SyntaxNode,
5283}
5284impl DeleteRows {
5285 #[inline]
5286 pub fn delete_token(&self) -> Option<SyntaxToken> {
5287 support::token(&self.syntax, SyntaxKind::DELETE_KW)
5288 }
5289 #[inline]
5290 pub fn rows_token(&self) -> Option<SyntaxToken> {
5291 support::token(&self.syntax, SyntaxKind::ROWS_KW)
5292 }
5293}
5294
5295#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5296pub struct DependsOnExtension {
5297 pub(crate) syntax: SyntaxNode,
5298}
5299impl DependsOnExtension {
5300 #[inline]
5301 pub fn name_ref(&self) -> Option<NameRef> {
5302 support::child(&self.syntax)
5303 }
5304 #[inline]
5305 pub fn depends_token(&self) -> Option<SyntaxToken> {
5306 support::token(&self.syntax, SyntaxKind::DEPENDS_KW)
5307 }
5308 #[inline]
5309 pub fn extension_token(&self) -> Option<SyntaxToken> {
5310 support::token(&self.syntax, SyntaxKind::EXTENSION_KW)
5311 }
5312 #[inline]
5313 pub fn on_token(&self) -> Option<SyntaxToken> {
5314 support::token(&self.syntax, SyntaxKind::ON_KW)
5315 }
5316}
5317
5318#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5319pub struct DetachPartition {
5320 pub(crate) syntax: SyntaxNode,
5321}
5322impl DetachPartition {
5323 #[inline]
5324 pub fn detach_token(&self) -> Option<SyntaxToken> {
5325 support::token(&self.syntax, SyntaxKind::DETACH_KW)
5326 }
5327 #[inline]
5328 pub fn partition_token(&self) -> Option<SyntaxToken> {
5329 support::token(&self.syntax, SyntaxKind::PARTITION_KW)
5330 }
5331}
5332
5333#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5334pub struct DisableRls {
5335 pub(crate) syntax: SyntaxNode,
5336}
5337impl DisableRls {
5338 #[inline]
5339 pub fn disable_token(&self) -> Option<SyntaxToken> {
5340 support::token(&self.syntax, SyntaxKind::DISABLE_KW)
5341 }
5342 #[inline]
5343 pub fn level_token(&self) -> Option<SyntaxToken> {
5344 support::token(&self.syntax, SyntaxKind::LEVEL_KW)
5345 }
5346 #[inline]
5347 pub fn row_token(&self) -> Option<SyntaxToken> {
5348 support::token(&self.syntax, SyntaxKind::ROW_KW)
5349 }
5350 #[inline]
5351 pub fn security_token(&self) -> Option<SyntaxToken> {
5352 support::token(&self.syntax, SyntaxKind::SECURITY_KW)
5353 }
5354}
5355
5356#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5357pub struct DisableRule {
5358 pub(crate) syntax: SyntaxNode,
5359}
5360impl DisableRule {
5361 #[inline]
5362 pub fn disable_token(&self) -> Option<SyntaxToken> {
5363 support::token(&self.syntax, SyntaxKind::DISABLE_KW)
5364 }
5365 #[inline]
5366 pub fn rule_token(&self) -> Option<SyntaxToken> {
5367 support::token(&self.syntax, SyntaxKind::RULE_KW)
5368 }
5369}
5370
5371#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5372pub struct DisableTrigger {
5373 pub(crate) syntax: SyntaxNode,
5374}
5375impl DisableTrigger {
5376 #[inline]
5377 pub fn disable_token(&self) -> Option<SyntaxToken> {
5378 support::token(&self.syntax, SyntaxKind::DISABLE_KW)
5379 }
5380 #[inline]
5381 pub fn trigger_token(&self) -> Option<SyntaxToken> {
5382 support::token(&self.syntax, SyntaxKind::TRIGGER_KW)
5383 }
5384}
5385
5386#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5387pub struct Discard {
5388 pub(crate) syntax: SyntaxNode,
5389}
5390impl Discard {
5391 #[inline]
5392 pub fn all_token(&self) -> Option<SyntaxToken> {
5393 support::token(&self.syntax, SyntaxKind::ALL_KW)
5394 }
5395 #[inline]
5396 pub fn discard_token(&self) -> Option<SyntaxToken> {
5397 support::token(&self.syntax, SyntaxKind::DISCARD_KW)
5398 }
5399 #[inline]
5400 pub fn plans_token(&self) -> Option<SyntaxToken> {
5401 support::token(&self.syntax, SyntaxKind::PLANS_KW)
5402 }
5403 #[inline]
5404 pub fn sequences_token(&self) -> Option<SyntaxToken> {
5405 support::token(&self.syntax, SyntaxKind::SEQUENCES_KW)
5406 }
5407 #[inline]
5408 pub fn temp_token(&self) -> Option<SyntaxToken> {
5409 support::token(&self.syntax, SyntaxKind::TEMP_KW)
5410 }
5411 #[inline]
5412 pub fn temporary_token(&self) -> Option<SyntaxToken> {
5413 support::token(&self.syntax, SyntaxKind::TEMPORARY_KW)
5414 }
5415}
5416
5417#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5418pub struct DistinctClause {
5419 pub(crate) syntax: SyntaxNode,
5420}
5421impl DistinctClause {
5422 #[inline]
5423 pub fn exprs(&self) -> AstChildren<Expr> {
5424 support::children(&self.syntax)
5425 }
5426 #[inline]
5427 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
5428 support::token(&self.syntax, SyntaxKind::L_PAREN)
5429 }
5430 #[inline]
5431 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
5432 support::token(&self.syntax, SyntaxKind::R_PAREN)
5433 }
5434 #[inline]
5435 pub fn distinct_token(&self) -> Option<SyntaxToken> {
5436 support::token(&self.syntax, SyntaxKind::DISTINCT_KW)
5437 }
5438 #[inline]
5439 pub fn on_token(&self) -> Option<SyntaxToken> {
5440 support::token(&self.syntax, SyntaxKind::ON_KW)
5441 }
5442}
5443
5444#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5445pub struct Do {
5446 pub(crate) syntax: SyntaxNode,
5447}
5448impl Do {
5449 #[inline]
5450 pub fn do_token(&self) -> Option<SyntaxToken> {
5451 support::token(&self.syntax, SyntaxKind::DO_KW)
5452 }
5453}
5454
5455#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5456pub struct DoubleType {
5457 pub(crate) syntax: SyntaxNode,
5458}
5459impl DoubleType {
5460 #[inline]
5461 pub fn double_token(&self) -> Option<SyntaxToken> {
5462 support::token(&self.syntax, SyntaxKind::DOUBLE_KW)
5463 }
5464 #[inline]
5465 pub fn precision_token(&self) -> Option<SyntaxToken> {
5466 support::token(&self.syntax, SyntaxKind::PRECISION_KW)
5467 }
5468}
5469
5470#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5471pub struct Drop {
5472 pub(crate) syntax: SyntaxNode,
5473}
5474impl Drop {
5475 #[inline]
5476 pub fn drop_token(&self) -> Option<SyntaxToken> {
5477 support::token(&self.syntax, SyntaxKind::DROP_KW)
5478 }
5479}
5480
5481#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5482pub struct DropAccessMethod {
5483 pub(crate) syntax: SyntaxNode,
5484}
5485impl DropAccessMethod {
5486 #[inline]
5487 pub fn if_exists(&self) -> Option<IfExists> {
5488 support::child(&self.syntax)
5489 }
5490 #[inline]
5491 pub fn name_ref(&self) -> Option<NameRef> {
5492 support::child(&self.syntax)
5493 }
5494 #[inline]
5495 pub fn access_token(&self) -> Option<SyntaxToken> {
5496 support::token(&self.syntax, SyntaxKind::ACCESS_KW)
5497 }
5498 #[inline]
5499 pub fn cascade_token(&self) -> Option<SyntaxToken> {
5500 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
5501 }
5502 #[inline]
5503 pub fn drop_token(&self) -> Option<SyntaxToken> {
5504 support::token(&self.syntax, SyntaxKind::DROP_KW)
5505 }
5506 #[inline]
5507 pub fn method_token(&self) -> Option<SyntaxToken> {
5508 support::token(&self.syntax, SyntaxKind::METHOD_KW)
5509 }
5510 #[inline]
5511 pub fn restrict_token(&self) -> Option<SyntaxToken> {
5512 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
5513 }
5514}
5515
5516#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5517pub struct DropAggregate {
5518 pub(crate) syntax: SyntaxNode,
5519}
5520impl DropAggregate {
5521 #[inline]
5522 pub fn aggregates(&self) -> AstChildren<Aggregate> {
5523 support::children(&self.syntax)
5524 }
5525 #[inline]
5526 pub fn if_exists(&self) -> Option<IfExists> {
5527 support::child(&self.syntax)
5528 }
5529 #[inline]
5530 pub fn aggregate_token(&self) -> Option<SyntaxToken> {
5531 support::token(&self.syntax, SyntaxKind::AGGREGATE_KW)
5532 }
5533 #[inline]
5534 pub fn cascade_token(&self) -> Option<SyntaxToken> {
5535 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
5536 }
5537 #[inline]
5538 pub fn drop_token(&self) -> Option<SyntaxToken> {
5539 support::token(&self.syntax, SyntaxKind::DROP_KW)
5540 }
5541 #[inline]
5542 pub fn restrict_token(&self) -> Option<SyntaxToken> {
5543 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
5544 }
5545}
5546
5547#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5548pub struct DropCast {
5549 pub(crate) syntax: SyntaxNode,
5550}
5551impl DropCast {
5552 #[inline]
5553 pub fn cast_sig(&self) -> Option<CastSig> {
5554 support::child(&self.syntax)
5555 }
5556 #[inline]
5557 pub fn if_exists(&self) -> Option<IfExists> {
5558 support::child(&self.syntax)
5559 }
5560 #[inline]
5561 pub fn cascade_token(&self) -> Option<SyntaxToken> {
5562 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
5563 }
5564 #[inline]
5565 pub fn cast_token(&self) -> Option<SyntaxToken> {
5566 support::token(&self.syntax, SyntaxKind::CAST_KW)
5567 }
5568 #[inline]
5569 pub fn drop_token(&self) -> Option<SyntaxToken> {
5570 support::token(&self.syntax, SyntaxKind::DROP_KW)
5571 }
5572 #[inline]
5573 pub fn restrict_token(&self) -> Option<SyntaxToken> {
5574 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
5575 }
5576}
5577
5578#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5579pub struct DropCollation {
5580 pub(crate) syntax: SyntaxNode,
5581}
5582impl DropCollation {
5583 #[inline]
5584 pub fn if_exists(&self) -> Option<IfExists> {
5585 support::child(&self.syntax)
5586 }
5587 #[inline]
5588 pub fn paths(&self) -> AstChildren<Path> {
5589 support::children(&self.syntax)
5590 }
5591 #[inline]
5592 pub fn cascade_token(&self) -> Option<SyntaxToken> {
5593 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
5594 }
5595 #[inline]
5596 pub fn collation_token(&self) -> Option<SyntaxToken> {
5597 support::token(&self.syntax, SyntaxKind::COLLATION_KW)
5598 }
5599 #[inline]
5600 pub fn drop_token(&self) -> Option<SyntaxToken> {
5601 support::token(&self.syntax, SyntaxKind::DROP_KW)
5602 }
5603 #[inline]
5604 pub fn restrict_token(&self) -> Option<SyntaxToken> {
5605 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
5606 }
5607}
5608
5609#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5610pub struct DropColumn {
5611 pub(crate) syntax: SyntaxNode,
5612}
5613impl DropColumn {
5614 #[inline]
5615 pub fn if_exists(&self) -> Option<IfExists> {
5616 support::child(&self.syntax)
5617 }
5618 #[inline]
5619 pub fn name_ref(&self) -> Option<NameRef> {
5620 support::child(&self.syntax)
5621 }
5622 #[inline]
5623 pub fn cascade_token(&self) -> Option<SyntaxToken> {
5624 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
5625 }
5626 #[inline]
5627 pub fn column_token(&self) -> Option<SyntaxToken> {
5628 support::token(&self.syntax, SyntaxKind::COLUMN_KW)
5629 }
5630 #[inline]
5631 pub fn drop_token(&self) -> Option<SyntaxToken> {
5632 support::token(&self.syntax, SyntaxKind::DROP_KW)
5633 }
5634 #[inline]
5635 pub fn restrict_token(&self) -> Option<SyntaxToken> {
5636 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
5637 }
5638}
5639
5640#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5641pub struct DropConstraint {
5642 pub(crate) syntax: SyntaxNode,
5643}
5644impl DropConstraint {
5645 #[inline]
5646 pub fn if_exists(&self) -> Option<IfExists> {
5647 support::child(&self.syntax)
5648 }
5649 #[inline]
5650 pub fn name_ref(&self) -> Option<NameRef> {
5651 support::child(&self.syntax)
5652 }
5653 #[inline]
5654 pub fn cascade_token(&self) -> Option<SyntaxToken> {
5655 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
5656 }
5657 #[inline]
5658 pub fn constraint_token(&self) -> Option<SyntaxToken> {
5659 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
5660 }
5661 #[inline]
5662 pub fn drop_token(&self) -> Option<SyntaxToken> {
5663 support::token(&self.syntax, SyntaxKind::DROP_KW)
5664 }
5665 #[inline]
5666 pub fn restrict_token(&self) -> Option<SyntaxToken> {
5667 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
5668 }
5669}
5670
5671#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5672pub struct DropConversion {
5673 pub(crate) syntax: SyntaxNode,
5674}
5675impl DropConversion {
5676 #[inline]
5677 pub fn if_exists(&self) -> Option<IfExists> {
5678 support::child(&self.syntax)
5679 }
5680 #[inline]
5681 pub fn path(&self) -> Option<Path> {
5682 support::child(&self.syntax)
5683 }
5684 #[inline]
5685 pub fn cascade_token(&self) -> Option<SyntaxToken> {
5686 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
5687 }
5688 #[inline]
5689 pub fn conversion_token(&self) -> Option<SyntaxToken> {
5690 support::token(&self.syntax, SyntaxKind::CONVERSION_KW)
5691 }
5692 #[inline]
5693 pub fn drop_token(&self) -> Option<SyntaxToken> {
5694 support::token(&self.syntax, SyntaxKind::DROP_KW)
5695 }
5696 #[inline]
5697 pub fn restrict_token(&self) -> Option<SyntaxToken> {
5698 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
5699 }
5700}
5701
5702#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5703pub struct DropDatabase {
5704 pub(crate) syntax: SyntaxNode,
5705}
5706impl DropDatabase {
5707 #[inline]
5708 pub fn if_exists(&self) -> Option<IfExists> {
5709 support::child(&self.syntax)
5710 }
5711 #[inline]
5712 pub fn name_ref(&self) -> Option<NameRef> {
5713 support::child(&self.syntax)
5714 }
5715 #[inline]
5716 pub fn database_token(&self) -> Option<SyntaxToken> {
5717 support::token(&self.syntax, SyntaxKind::DATABASE_KW)
5718 }
5719 #[inline]
5720 pub fn drop_token(&self) -> Option<SyntaxToken> {
5721 support::token(&self.syntax, SyntaxKind::DROP_KW)
5722 }
5723}
5724
5725#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5726pub struct DropDefault {
5727 pub(crate) syntax: SyntaxNode,
5728}
5729impl DropDefault {
5730 #[inline]
5731 pub fn default_token(&self) -> Option<SyntaxToken> {
5732 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
5733 }
5734 #[inline]
5735 pub fn drop_token(&self) -> Option<SyntaxToken> {
5736 support::token(&self.syntax, SyntaxKind::DROP_KW)
5737 }
5738}
5739
5740#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5741pub struct DropDomain {
5742 pub(crate) syntax: SyntaxNode,
5743}
5744impl DropDomain {
5745 #[inline]
5746 pub fn if_exists(&self) -> Option<IfExists> {
5747 support::child(&self.syntax)
5748 }
5749 #[inline]
5750 pub fn paths(&self) -> AstChildren<Path> {
5751 support::children(&self.syntax)
5752 }
5753 #[inline]
5754 pub fn cascade_token(&self) -> Option<SyntaxToken> {
5755 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
5756 }
5757 #[inline]
5758 pub fn domain_token(&self) -> Option<SyntaxToken> {
5759 support::token(&self.syntax, SyntaxKind::DOMAIN_KW)
5760 }
5761 #[inline]
5762 pub fn drop_token(&self) -> Option<SyntaxToken> {
5763 support::token(&self.syntax, SyntaxKind::DROP_KW)
5764 }
5765 #[inline]
5766 pub fn restrict_token(&self) -> Option<SyntaxToken> {
5767 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
5768 }
5769}
5770
5771#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5772pub struct DropEventTrigger {
5773 pub(crate) syntax: SyntaxNode,
5774}
5775impl DropEventTrigger {
5776 #[inline]
5777 pub fn if_exists(&self) -> Option<IfExists> {
5778 support::child(&self.syntax)
5779 }
5780 #[inline]
5781 pub fn name_ref(&self) -> Option<NameRef> {
5782 support::child(&self.syntax)
5783 }
5784 #[inline]
5785 pub fn cascade_token(&self) -> Option<SyntaxToken> {
5786 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
5787 }
5788 #[inline]
5789 pub fn drop_token(&self) -> Option<SyntaxToken> {
5790 support::token(&self.syntax, SyntaxKind::DROP_KW)
5791 }
5792 #[inline]
5793 pub fn event_token(&self) -> Option<SyntaxToken> {
5794 support::token(&self.syntax, SyntaxKind::EVENT_KW)
5795 }
5796 #[inline]
5797 pub fn restrict_token(&self) -> Option<SyntaxToken> {
5798 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
5799 }
5800 #[inline]
5801 pub fn trigger_token(&self) -> Option<SyntaxToken> {
5802 support::token(&self.syntax, SyntaxKind::TRIGGER_KW)
5803 }
5804}
5805
5806#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5807pub struct DropExpression {
5808 pub(crate) syntax: SyntaxNode,
5809}
5810impl DropExpression {
5811 #[inline]
5812 pub fn if_exists(&self) -> Option<IfExists> {
5813 support::child(&self.syntax)
5814 }
5815 #[inline]
5816 pub fn drop_token(&self) -> Option<SyntaxToken> {
5817 support::token(&self.syntax, SyntaxKind::DROP_KW)
5818 }
5819 #[inline]
5820 pub fn expression_token(&self) -> Option<SyntaxToken> {
5821 support::token(&self.syntax, SyntaxKind::EXPRESSION_KW)
5822 }
5823}
5824
5825#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5826pub struct DropExtension {
5827 pub(crate) syntax: SyntaxNode,
5828}
5829impl DropExtension {
5830 #[inline]
5831 pub fn if_exists(&self) -> Option<IfExists> {
5832 support::child(&self.syntax)
5833 }
5834 #[inline]
5835 pub fn name_refs(&self) -> AstChildren<NameRef> {
5836 support::children(&self.syntax)
5837 }
5838 #[inline]
5839 pub fn cascade_token(&self) -> Option<SyntaxToken> {
5840 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
5841 }
5842 #[inline]
5843 pub fn drop_token(&self) -> Option<SyntaxToken> {
5844 support::token(&self.syntax, SyntaxKind::DROP_KW)
5845 }
5846 #[inline]
5847 pub fn extension_token(&self) -> Option<SyntaxToken> {
5848 support::token(&self.syntax, SyntaxKind::EXTENSION_KW)
5849 }
5850 #[inline]
5851 pub fn restrict_token(&self) -> Option<SyntaxToken> {
5852 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
5853 }
5854}
5855
5856#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5857pub struct DropForeignDataWrapper {
5858 pub(crate) syntax: SyntaxNode,
5859}
5860impl DropForeignDataWrapper {
5861 #[inline]
5862 pub fn if_exists(&self) -> Option<IfExists> {
5863 support::child(&self.syntax)
5864 }
5865 #[inline]
5866 pub fn name_refs(&self) -> AstChildren<NameRef> {
5867 support::children(&self.syntax)
5868 }
5869 #[inline]
5870 pub fn cascade_token(&self) -> Option<SyntaxToken> {
5871 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
5872 }
5873 #[inline]
5874 pub fn data_token(&self) -> Option<SyntaxToken> {
5875 support::token(&self.syntax, SyntaxKind::DATA_KW)
5876 }
5877 #[inline]
5878 pub fn drop_token(&self) -> Option<SyntaxToken> {
5879 support::token(&self.syntax, SyntaxKind::DROP_KW)
5880 }
5881 #[inline]
5882 pub fn foreign_token(&self) -> Option<SyntaxToken> {
5883 support::token(&self.syntax, SyntaxKind::FOREIGN_KW)
5884 }
5885 #[inline]
5886 pub fn restrict_token(&self) -> Option<SyntaxToken> {
5887 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
5888 }
5889 #[inline]
5890 pub fn wrapper_token(&self) -> Option<SyntaxToken> {
5891 support::token(&self.syntax, SyntaxKind::WRAPPER_KW)
5892 }
5893}
5894
5895#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5896pub struct DropForeignTable {
5897 pub(crate) syntax: SyntaxNode,
5898}
5899impl DropForeignTable {
5900 #[inline]
5901 pub fn if_exists(&self) -> Option<IfExists> {
5902 support::child(&self.syntax)
5903 }
5904 #[inline]
5905 pub fn path(&self) -> Option<Path> {
5906 support::child(&self.syntax)
5907 }
5908 #[inline]
5909 pub fn cascade_token(&self) -> Option<SyntaxToken> {
5910 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
5911 }
5912 #[inline]
5913 pub fn drop_token(&self) -> Option<SyntaxToken> {
5914 support::token(&self.syntax, SyntaxKind::DROP_KW)
5915 }
5916 #[inline]
5917 pub fn foreign_token(&self) -> Option<SyntaxToken> {
5918 support::token(&self.syntax, SyntaxKind::FOREIGN_KW)
5919 }
5920 #[inline]
5921 pub fn restrict_token(&self) -> Option<SyntaxToken> {
5922 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
5923 }
5924 #[inline]
5925 pub fn table_token(&self) -> Option<SyntaxToken> {
5926 support::token(&self.syntax, SyntaxKind::TABLE_KW)
5927 }
5928}
5929
5930#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5931pub struct DropFunction {
5932 pub(crate) syntax: SyntaxNode,
5933}
5934impl DropFunction {
5935 #[inline]
5936 pub fn function_sig_list(&self) -> Option<FunctionSigList> {
5937 support::child(&self.syntax)
5938 }
5939 #[inline]
5940 pub fn if_exists(&self) -> Option<IfExists> {
5941 support::child(&self.syntax)
5942 }
5943 #[inline]
5944 pub fn cascade_token(&self) -> Option<SyntaxToken> {
5945 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
5946 }
5947 #[inline]
5948 pub fn drop_token(&self) -> Option<SyntaxToken> {
5949 support::token(&self.syntax, SyntaxKind::DROP_KW)
5950 }
5951 #[inline]
5952 pub fn function_token(&self) -> Option<SyntaxToken> {
5953 support::token(&self.syntax, SyntaxKind::FUNCTION_KW)
5954 }
5955 #[inline]
5956 pub fn restrict_token(&self) -> Option<SyntaxToken> {
5957 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
5958 }
5959}
5960
5961#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5962pub struct DropGroup {
5963 pub(crate) syntax: SyntaxNode,
5964}
5965impl DropGroup {
5966 #[inline]
5967 pub fn if_exists(&self) -> Option<IfExists> {
5968 support::child(&self.syntax)
5969 }
5970 #[inline]
5971 pub fn name_refs(&self) -> AstChildren<NameRef> {
5972 support::children(&self.syntax)
5973 }
5974 #[inline]
5975 pub fn drop_token(&self) -> Option<SyntaxToken> {
5976 support::token(&self.syntax, SyntaxKind::DROP_KW)
5977 }
5978 #[inline]
5979 pub fn group_token(&self) -> Option<SyntaxToken> {
5980 support::token(&self.syntax, SyntaxKind::GROUP_KW)
5981 }
5982}
5983
5984#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5985pub struct DropIdentity {
5986 pub(crate) syntax: SyntaxNode,
5987}
5988impl DropIdentity {
5989 #[inline]
5990 pub fn if_exists(&self) -> Option<IfExists> {
5991 support::child(&self.syntax)
5992 }
5993 #[inline]
5994 pub fn drop_token(&self) -> Option<SyntaxToken> {
5995 support::token(&self.syntax, SyntaxKind::DROP_KW)
5996 }
5997 #[inline]
5998 pub fn identity_token(&self) -> Option<SyntaxToken> {
5999 support::token(&self.syntax, SyntaxKind::IDENTITY_KW)
6000 }
6001}
6002
6003#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6004pub struct DropIndex {
6005 pub(crate) syntax: SyntaxNode,
6006}
6007impl DropIndex {
6008 #[inline]
6009 pub fn if_exists(&self) -> Option<IfExists> {
6010 support::child(&self.syntax)
6011 }
6012 #[inline]
6013 pub fn paths(&self) -> AstChildren<Path> {
6014 support::children(&self.syntax)
6015 }
6016 #[inline]
6017 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6018 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6019 }
6020 #[inline]
6021 pub fn concurrently_token(&self) -> Option<SyntaxToken> {
6022 support::token(&self.syntax, SyntaxKind::CONCURRENTLY_KW)
6023 }
6024 #[inline]
6025 pub fn drop_token(&self) -> Option<SyntaxToken> {
6026 support::token(&self.syntax, SyntaxKind::DROP_KW)
6027 }
6028 #[inline]
6029 pub fn index_token(&self) -> Option<SyntaxToken> {
6030 support::token(&self.syntax, SyntaxKind::INDEX_KW)
6031 }
6032 #[inline]
6033 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6034 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6035 }
6036}
6037
6038#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6039pub struct DropLanguage {
6040 pub(crate) syntax: SyntaxNode,
6041}
6042impl DropLanguage {
6043 #[inline]
6044 pub fn if_exists(&self) -> Option<IfExists> {
6045 support::child(&self.syntax)
6046 }
6047 #[inline]
6048 pub fn name_ref(&self) -> Option<NameRef> {
6049 support::child(&self.syntax)
6050 }
6051 #[inline]
6052 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6053 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6054 }
6055 #[inline]
6056 pub fn drop_token(&self) -> Option<SyntaxToken> {
6057 support::token(&self.syntax, SyntaxKind::DROP_KW)
6058 }
6059 #[inline]
6060 pub fn language_token(&self) -> Option<SyntaxToken> {
6061 support::token(&self.syntax, SyntaxKind::LANGUAGE_KW)
6062 }
6063 #[inline]
6064 pub fn procedural_token(&self) -> Option<SyntaxToken> {
6065 support::token(&self.syntax, SyntaxKind::PROCEDURAL_KW)
6066 }
6067 #[inline]
6068 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6069 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6070 }
6071}
6072
6073#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6074pub struct DropMaterializedView {
6075 pub(crate) syntax: SyntaxNode,
6076}
6077impl DropMaterializedView {
6078 #[inline]
6079 pub fn if_exists(&self) -> Option<IfExists> {
6080 support::child(&self.syntax)
6081 }
6082 #[inline]
6083 pub fn paths(&self) -> AstChildren<Path> {
6084 support::children(&self.syntax)
6085 }
6086 #[inline]
6087 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6088 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6089 }
6090 #[inline]
6091 pub fn drop_token(&self) -> Option<SyntaxToken> {
6092 support::token(&self.syntax, SyntaxKind::DROP_KW)
6093 }
6094 #[inline]
6095 pub fn materialized_token(&self) -> Option<SyntaxToken> {
6096 support::token(&self.syntax, SyntaxKind::MATERIALIZED_KW)
6097 }
6098 #[inline]
6099 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6100 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6101 }
6102 #[inline]
6103 pub fn view_token(&self) -> Option<SyntaxToken> {
6104 support::token(&self.syntax, SyntaxKind::VIEW_KW)
6105 }
6106}
6107
6108#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6109pub struct DropNotNull {
6110 pub(crate) syntax: SyntaxNode,
6111}
6112impl DropNotNull {
6113 #[inline]
6114 pub fn drop_token(&self) -> Option<SyntaxToken> {
6115 support::token(&self.syntax, SyntaxKind::DROP_KW)
6116 }
6117 #[inline]
6118 pub fn not_token(&self) -> Option<SyntaxToken> {
6119 support::token(&self.syntax, SyntaxKind::NOT_KW)
6120 }
6121 #[inline]
6122 pub fn null_token(&self) -> Option<SyntaxToken> {
6123 support::token(&self.syntax, SyntaxKind::NULL_KW)
6124 }
6125}
6126
6127#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6128pub struct DropOpClassOption {
6129 pub(crate) syntax: SyntaxNode,
6130}
6131impl DropOpClassOption {
6132 #[inline]
6133 pub fn literal(&self) -> Option<Literal> {
6134 support::child(&self.syntax)
6135 }
6136 #[inline]
6137 pub fn param_list(&self) -> Option<ParamList> {
6138 support::child(&self.syntax)
6139 }
6140 #[inline]
6141 pub fn function_token(&self) -> Option<SyntaxToken> {
6142 support::token(&self.syntax, SyntaxKind::FUNCTION_KW)
6143 }
6144 #[inline]
6145 pub fn operator_token(&self) -> Option<SyntaxToken> {
6146 support::token(&self.syntax, SyntaxKind::OPERATOR_KW)
6147 }
6148}
6149
6150#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6151pub struct DropOpClassOptionList {
6152 pub(crate) syntax: SyntaxNode,
6153}
6154impl DropOpClassOptionList {
6155 #[inline]
6156 pub fn drop_op_class_options(&self) -> AstChildren<DropOpClassOption> {
6157 support::children(&self.syntax)
6158 }
6159}
6160
6161#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6162pub struct DropOpClassOptions {
6163 pub(crate) syntax: SyntaxNode,
6164}
6165impl DropOpClassOptions {
6166 #[inline]
6167 pub fn drop_op_class_option_list(&self) -> Option<DropOpClassOptionList> {
6168 support::child(&self.syntax)
6169 }
6170 #[inline]
6171 pub fn drop_token(&self) -> Option<SyntaxToken> {
6172 support::token(&self.syntax, SyntaxKind::DROP_KW)
6173 }
6174}
6175
6176#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6177pub struct DropOperator {
6178 pub(crate) syntax: SyntaxNode,
6179}
6180impl DropOperator {
6181 #[inline]
6182 pub fn if_exists(&self) -> Option<IfExists> {
6183 support::child(&self.syntax)
6184 }
6185 #[inline]
6186 pub fn op_sig_list(&self) -> Option<OpSigList> {
6187 support::child(&self.syntax)
6188 }
6189 #[inline]
6190 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6191 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6192 }
6193 #[inline]
6194 pub fn drop_token(&self) -> Option<SyntaxToken> {
6195 support::token(&self.syntax, SyntaxKind::DROP_KW)
6196 }
6197 #[inline]
6198 pub fn operator_token(&self) -> Option<SyntaxToken> {
6199 support::token(&self.syntax, SyntaxKind::OPERATOR_KW)
6200 }
6201 #[inline]
6202 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6203 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6204 }
6205}
6206
6207#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6208pub struct DropOperatorClass {
6209 pub(crate) syntax: SyntaxNode,
6210}
6211impl DropOperatorClass {
6212 #[inline]
6213 pub fn if_exists(&self) -> Option<IfExists> {
6214 support::child(&self.syntax)
6215 }
6216 #[inline]
6217 pub fn name_ref(&self) -> Option<NameRef> {
6218 support::child(&self.syntax)
6219 }
6220 #[inline]
6221 pub fn path(&self) -> Option<Path> {
6222 support::child(&self.syntax)
6223 }
6224 #[inline]
6225 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6226 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6227 }
6228 #[inline]
6229 pub fn class_token(&self) -> Option<SyntaxToken> {
6230 support::token(&self.syntax, SyntaxKind::CLASS_KW)
6231 }
6232 #[inline]
6233 pub fn drop_token(&self) -> Option<SyntaxToken> {
6234 support::token(&self.syntax, SyntaxKind::DROP_KW)
6235 }
6236 #[inline]
6237 pub fn operator_token(&self) -> Option<SyntaxToken> {
6238 support::token(&self.syntax, SyntaxKind::OPERATOR_KW)
6239 }
6240 #[inline]
6241 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6242 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6243 }
6244 #[inline]
6245 pub fn using_token(&self) -> Option<SyntaxToken> {
6246 support::token(&self.syntax, SyntaxKind::USING_KW)
6247 }
6248}
6249
6250#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6251pub struct DropOperatorFamily {
6252 pub(crate) syntax: SyntaxNode,
6253}
6254impl DropOperatorFamily {
6255 #[inline]
6256 pub fn if_exists(&self) -> Option<IfExists> {
6257 support::child(&self.syntax)
6258 }
6259 #[inline]
6260 pub fn name_ref(&self) -> Option<NameRef> {
6261 support::child(&self.syntax)
6262 }
6263 #[inline]
6264 pub fn path(&self) -> Option<Path> {
6265 support::child(&self.syntax)
6266 }
6267 #[inline]
6268 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6269 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6270 }
6271 #[inline]
6272 pub fn drop_token(&self) -> Option<SyntaxToken> {
6273 support::token(&self.syntax, SyntaxKind::DROP_KW)
6274 }
6275 #[inline]
6276 pub fn family_token(&self) -> Option<SyntaxToken> {
6277 support::token(&self.syntax, SyntaxKind::FAMILY_KW)
6278 }
6279 #[inline]
6280 pub fn operator_token(&self) -> Option<SyntaxToken> {
6281 support::token(&self.syntax, SyntaxKind::OPERATOR_KW)
6282 }
6283 #[inline]
6284 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6285 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6286 }
6287 #[inline]
6288 pub fn using_token(&self) -> Option<SyntaxToken> {
6289 support::token(&self.syntax, SyntaxKind::USING_KW)
6290 }
6291}
6292
6293#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6294pub struct DropOwned {
6295 pub(crate) syntax: SyntaxNode,
6296}
6297impl DropOwned {
6298 #[inline]
6299 pub fn role_ref_list(&self) -> Option<RoleRefList> {
6300 support::child(&self.syntax)
6301 }
6302 #[inline]
6303 pub fn by_token(&self) -> Option<SyntaxToken> {
6304 support::token(&self.syntax, SyntaxKind::BY_KW)
6305 }
6306 #[inline]
6307 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6308 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6309 }
6310 #[inline]
6311 pub fn drop_token(&self) -> Option<SyntaxToken> {
6312 support::token(&self.syntax, SyntaxKind::DROP_KW)
6313 }
6314 #[inline]
6315 pub fn owned_token(&self) -> Option<SyntaxToken> {
6316 support::token(&self.syntax, SyntaxKind::OWNED_KW)
6317 }
6318 #[inline]
6319 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6320 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6321 }
6322}
6323
6324#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6325pub struct DropPolicy {
6326 pub(crate) syntax: SyntaxNode,
6327}
6328impl DropPolicy {
6329 #[inline]
6330 pub fn if_exists(&self) -> Option<IfExists> {
6331 support::child(&self.syntax)
6332 }
6333 #[inline]
6334 pub fn name_ref(&self) -> Option<NameRef> {
6335 support::child(&self.syntax)
6336 }
6337 #[inline]
6338 pub fn on_table(&self) -> Option<OnTable> {
6339 support::child(&self.syntax)
6340 }
6341 #[inline]
6342 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6343 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6344 }
6345 #[inline]
6346 pub fn drop_token(&self) -> Option<SyntaxToken> {
6347 support::token(&self.syntax, SyntaxKind::DROP_KW)
6348 }
6349 #[inline]
6350 pub fn policy_token(&self) -> Option<SyntaxToken> {
6351 support::token(&self.syntax, SyntaxKind::POLICY_KW)
6352 }
6353 #[inline]
6354 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6355 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6356 }
6357}
6358
6359#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6360pub struct DropProcedure {
6361 pub(crate) syntax: SyntaxNode,
6362}
6363impl DropProcedure {
6364 #[inline]
6365 pub fn function_sig_list(&self) -> Option<FunctionSigList> {
6366 support::child(&self.syntax)
6367 }
6368 #[inline]
6369 pub fn if_exists(&self) -> Option<IfExists> {
6370 support::child(&self.syntax)
6371 }
6372 #[inline]
6373 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6374 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6375 }
6376 #[inline]
6377 pub fn drop_token(&self) -> Option<SyntaxToken> {
6378 support::token(&self.syntax, SyntaxKind::DROP_KW)
6379 }
6380 #[inline]
6381 pub fn procedure_token(&self) -> Option<SyntaxToken> {
6382 support::token(&self.syntax, SyntaxKind::PROCEDURE_KW)
6383 }
6384 #[inline]
6385 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6386 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6387 }
6388}
6389
6390#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6391pub struct DropPublication {
6392 pub(crate) syntax: SyntaxNode,
6393}
6394impl DropPublication {
6395 #[inline]
6396 pub fn if_exists(&self) -> Option<IfExists> {
6397 support::child(&self.syntax)
6398 }
6399 #[inline]
6400 pub fn name_refs(&self) -> AstChildren<NameRef> {
6401 support::children(&self.syntax)
6402 }
6403 #[inline]
6404 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6405 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6406 }
6407 #[inline]
6408 pub fn drop_token(&self) -> Option<SyntaxToken> {
6409 support::token(&self.syntax, SyntaxKind::DROP_KW)
6410 }
6411 #[inline]
6412 pub fn publication_token(&self) -> Option<SyntaxToken> {
6413 support::token(&self.syntax, SyntaxKind::PUBLICATION_KW)
6414 }
6415 #[inline]
6416 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6417 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6418 }
6419}
6420
6421#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6422pub struct DropRole {
6423 pub(crate) syntax: SyntaxNode,
6424}
6425impl DropRole {
6426 #[inline]
6427 pub fn if_exists(&self) -> Option<IfExists> {
6428 support::child(&self.syntax)
6429 }
6430 #[inline]
6431 pub fn name_refs(&self) -> AstChildren<NameRef> {
6432 support::children(&self.syntax)
6433 }
6434 #[inline]
6435 pub fn drop_token(&self) -> Option<SyntaxToken> {
6436 support::token(&self.syntax, SyntaxKind::DROP_KW)
6437 }
6438 #[inline]
6439 pub fn role_token(&self) -> Option<SyntaxToken> {
6440 support::token(&self.syntax, SyntaxKind::ROLE_KW)
6441 }
6442}
6443
6444#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6445pub struct DropRoutine {
6446 pub(crate) syntax: SyntaxNode,
6447}
6448impl DropRoutine {
6449 #[inline]
6450 pub fn function_sig_list(&self) -> Option<FunctionSigList> {
6451 support::child(&self.syntax)
6452 }
6453 #[inline]
6454 pub fn if_exists(&self) -> Option<IfExists> {
6455 support::child(&self.syntax)
6456 }
6457 #[inline]
6458 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6459 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6460 }
6461 #[inline]
6462 pub fn drop_token(&self) -> Option<SyntaxToken> {
6463 support::token(&self.syntax, SyntaxKind::DROP_KW)
6464 }
6465 #[inline]
6466 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6467 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6468 }
6469 #[inline]
6470 pub fn routine_token(&self) -> Option<SyntaxToken> {
6471 support::token(&self.syntax, SyntaxKind::ROUTINE_KW)
6472 }
6473}
6474
6475#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6476pub struct DropRule {
6477 pub(crate) syntax: SyntaxNode,
6478}
6479impl DropRule {
6480 #[inline]
6481 pub fn if_exists(&self) -> Option<IfExists> {
6482 support::child(&self.syntax)
6483 }
6484 #[inline]
6485 pub fn name_ref(&self) -> Option<NameRef> {
6486 support::child(&self.syntax)
6487 }
6488 #[inline]
6489 pub fn on_table(&self) -> Option<OnTable> {
6490 support::child(&self.syntax)
6491 }
6492 #[inline]
6493 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6494 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6495 }
6496 #[inline]
6497 pub fn drop_token(&self) -> Option<SyntaxToken> {
6498 support::token(&self.syntax, SyntaxKind::DROP_KW)
6499 }
6500 #[inline]
6501 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6502 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6503 }
6504 #[inline]
6505 pub fn rule_token(&self) -> Option<SyntaxToken> {
6506 support::token(&self.syntax, SyntaxKind::RULE_KW)
6507 }
6508}
6509
6510#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6511pub struct DropSchema {
6512 pub(crate) syntax: SyntaxNode,
6513}
6514impl DropSchema {
6515 #[inline]
6516 pub fn if_exists(&self) -> Option<IfExists> {
6517 support::child(&self.syntax)
6518 }
6519 #[inline]
6520 pub fn name_refs(&self) -> AstChildren<NameRef> {
6521 support::children(&self.syntax)
6522 }
6523 #[inline]
6524 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6525 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6526 }
6527 #[inline]
6528 pub fn drop_token(&self) -> Option<SyntaxToken> {
6529 support::token(&self.syntax, SyntaxKind::DROP_KW)
6530 }
6531 #[inline]
6532 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6533 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6534 }
6535 #[inline]
6536 pub fn schema_token(&self) -> Option<SyntaxToken> {
6537 support::token(&self.syntax, SyntaxKind::SCHEMA_KW)
6538 }
6539}
6540
6541#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6542pub struct DropSequence {
6543 pub(crate) syntax: SyntaxNode,
6544}
6545impl DropSequence {
6546 #[inline]
6547 pub fn if_exists(&self) -> Option<IfExists> {
6548 support::child(&self.syntax)
6549 }
6550 #[inline]
6551 pub fn paths(&self) -> AstChildren<Path> {
6552 support::children(&self.syntax)
6553 }
6554 #[inline]
6555 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6556 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6557 }
6558 #[inline]
6559 pub fn drop_token(&self) -> Option<SyntaxToken> {
6560 support::token(&self.syntax, SyntaxKind::DROP_KW)
6561 }
6562 #[inline]
6563 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6564 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6565 }
6566 #[inline]
6567 pub fn sequence_token(&self) -> Option<SyntaxToken> {
6568 support::token(&self.syntax, SyntaxKind::SEQUENCE_KW)
6569 }
6570}
6571
6572#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6573pub struct DropServer {
6574 pub(crate) syntax: SyntaxNode,
6575}
6576impl DropServer {
6577 #[inline]
6578 pub fn if_exists(&self) -> Option<IfExists> {
6579 support::child(&self.syntax)
6580 }
6581 #[inline]
6582 pub fn name_ref(&self) -> Option<NameRef> {
6583 support::child(&self.syntax)
6584 }
6585 #[inline]
6586 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6587 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6588 }
6589 #[inline]
6590 pub fn drop_token(&self) -> Option<SyntaxToken> {
6591 support::token(&self.syntax, SyntaxKind::DROP_KW)
6592 }
6593 #[inline]
6594 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6595 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6596 }
6597 #[inline]
6598 pub fn server_token(&self) -> Option<SyntaxToken> {
6599 support::token(&self.syntax, SyntaxKind::SERVER_KW)
6600 }
6601}
6602
6603#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6604pub struct DropStatistics {
6605 pub(crate) syntax: SyntaxNode,
6606}
6607impl DropStatistics {
6608 #[inline]
6609 pub fn if_exists(&self) -> Option<IfExists> {
6610 support::child(&self.syntax)
6611 }
6612 #[inline]
6613 pub fn paths(&self) -> AstChildren<Path> {
6614 support::children(&self.syntax)
6615 }
6616 #[inline]
6617 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6618 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6619 }
6620 #[inline]
6621 pub fn drop_token(&self) -> Option<SyntaxToken> {
6622 support::token(&self.syntax, SyntaxKind::DROP_KW)
6623 }
6624 #[inline]
6625 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6626 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6627 }
6628 #[inline]
6629 pub fn statistics_token(&self) -> Option<SyntaxToken> {
6630 support::token(&self.syntax, SyntaxKind::STATISTICS_KW)
6631 }
6632}
6633
6634#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6635pub struct DropSubscription {
6636 pub(crate) syntax: SyntaxNode,
6637}
6638impl DropSubscription {
6639 #[inline]
6640 pub fn if_exists(&self) -> Option<IfExists> {
6641 support::child(&self.syntax)
6642 }
6643 #[inline]
6644 pub fn name_ref(&self) -> Option<NameRef> {
6645 support::child(&self.syntax)
6646 }
6647 #[inline]
6648 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6649 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6650 }
6651 #[inline]
6652 pub fn drop_token(&self) -> Option<SyntaxToken> {
6653 support::token(&self.syntax, SyntaxKind::DROP_KW)
6654 }
6655 #[inline]
6656 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6657 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6658 }
6659 #[inline]
6660 pub fn subscription_token(&self) -> Option<SyntaxToken> {
6661 support::token(&self.syntax, SyntaxKind::SUBSCRIPTION_KW)
6662 }
6663}
6664
6665#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6666pub struct DropTable {
6667 pub(crate) syntax: SyntaxNode,
6668}
6669impl DropTable {
6670 #[inline]
6671 pub fn if_exists(&self) -> Option<IfExists> {
6672 support::child(&self.syntax)
6673 }
6674 #[inline]
6675 pub fn path(&self) -> Option<Path> {
6676 support::child(&self.syntax)
6677 }
6678 #[inline]
6679 pub fn comma_token(&self) -> Option<SyntaxToken> {
6680 support::token(&self.syntax, SyntaxKind::COMMA)
6681 }
6682 #[inline]
6683 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6684 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6685 }
6686 #[inline]
6687 pub fn drop_token(&self) -> Option<SyntaxToken> {
6688 support::token(&self.syntax, SyntaxKind::DROP_KW)
6689 }
6690 #[inline]
6691 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6692 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6693 }
6694 #[inline]
6695 pub fn table_token(&self) -> Option<SyntaxToken> {
6696 support::token(&self.syntax, SyntaxKind::TABLE_KW)
6697 }
6698}
6699
6700#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6701pub struct DropTablespace {
6702 pub(crate) syntax: SyntaxNode,
6703}
6704impl DropTablespace {
6705 #[inline]
6706 pub fn if_exists(&self) -> Option<IfExists> {
6707 support::child(&self.syntax)
6708 }
6709 #[inline]
6710 pub fn name_ref(&self) -> Option<NameRef> {
6711 support::child(&self.syntax)
6712 }
6713 #[inline]
6714 pub fn drop_token(&self) -> Option<SyntaxToken> {
6715 support::token(&self.syntax, SyntaxKind::DROP_KW)
6716 }
6717 #[inline]
6718 pub fn tablespace_token(&self) -> Option<SyntaxToken> {
6719 support::token(&self.syntax, SyntaxKind::TABLESPACE_KW)
6720 }
6721}
6722
6723#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6724pub struct DropTextSearchConfig {
6725 pub(crate) syntax: SyntaxNode,
6726}
6727impl DropTextSearchConfig {
6728 #[inline]
6729 pub fn if_exists(&self) -> Option<IfExists> {
6730 support::child(&self.syntax)
6731 }
6732 #[inline]
6733 pub fn path(&self) -> Option<Path> {
6734 support::child(&self.syntax)
6735 }
6736 #[inline]
6737 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6738 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6739 }
6740 #[inline]
6741 pub fn configuration_token(&self) -> Option<SyntaxToken> {
6742 support::token(&self.syntax, SyntaxKind::CONFIGURATION_KW)
6743 }
6744 #[inline]
6745 pub fn drop_token(&self) -> Option<SyntaxToken> {
6746 support::token(&self.syntax, SyntaxKind::DROP_KW)
6747 }
6748 #[inline]
6749 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6750 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6751 }
6752 #[inline]
6753 pub fn search_token(&self) -> Option<SyntaxToken> {
6754 support::token(&self.syntax, SyntaxKind::SEARCH_KW)
6755 }
6756 #[inline]
6757 pub fn text_token(&self) -> Option<SyntaxToken> {
6758 support::token(&self.syntax, SyntaxKind::TEXT_KW)
6759 }
6760}
6761
6762#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6763pub struct DropTextSearchDict {
6764 pub(crate) syntax: SyntaxNode,
6765}
6766impl DropTextSearchDict {
6767 #[inline]
6768 pub fn if_exists(&self) -> Option<IfExists> {
6769 support::child(&self.syntax)
6770 }
6771 #[inline]
6772 pub fn path(&self) -> Option<Path> {
6773 support::child(&self.syntax)
6774 }
6775 #[inline]
6776 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6777 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6778 }
6779 #[inline]
6780 pub fn dictionary_token(&self) -> Option<SyntaxToken> {
6781 support::token(&self.syntax, SyntaxKind::DICTIONARY_KW)
6782 }
6783 #[inline]
6784 pub fn drop_token(&self) -> Option<SyntaxToken> {
6785 support::token(&self.syntax, SyntaxKind::DROP_KW)
6786 }
6787 #[inline]
6788 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6789 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6790 }
6791 #[inline]
6792 pub fn search_token(&self) -> Option<SyntaxToken> {
6793 support::token(&self.syntax, SyntaxKind::SEARCH_KW)
6794 }
6795 #[inline]
6796 pub fn text_token(&self) -> Option<SyntaxToken> {
6797 support::token(&self.syntax, SyntaxKind::TEXT_KW)
6798 }
6799}
6800
6801#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6802pub struct DropTextSearchParser {
6803 pub(crate) syntax: SyntaxNode,
6804}
6805impl DropTextSearchParser {
6806 #[inline]
6807 pub fn if_exists(&self) -> Option<IfExists> {
6808 support::child(&self.syntax)
6809 }
6810 #[inline]
6811 pub fn path(&self) -> Option<Path> {
6812 support::child(&self.syntax)
6813 }
6814 #[inline]
6815 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6816 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6817 }
6818 #[inline]
6819 pub fn drop_token(&self) -> Option<SyntaxToken> {
6820 support::token(&self.syntax, SyntaxKind::DROP_KW)
6821 }
6822 #[inline]
6823 pub fn parser_token(&self) -> Option<SyntaxToken> {
6824 support::token(&self.syntax, SyntaxKind::PARSER_KW)
6825 }
6826 #[inline]
6827 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6828 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6829 }
6830 #[inline]
6831 pub fn search_token(&self) -> Option<SyntaxToken> {
6832 support::token(&self.syntax, SyntaxKind::SEARCH_KW)
6833 }
6834 #[inline]
6835 pub fn text_token(&self) -> Option<SyntaxToken> {
6836 support::token(&self.syntax, SyntaxKind::TEXT_KW)
6837 }
6838}
6839
6840#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6841pub struct DropTextSearchTemplate {
6842 pub(crate) syntax: SyntaxNode,
6843}
6844impl DropTextSearchTemplate {
6845 #[inline]
6846 pub fn if_exists(&self) -> Option<IfExists> {
6847 support::child(&self.syntax)
6848 }
6849 #[inline]
6850 pub fn path(&self) -> Option<Path> {
6851 support::child(&self.syntax)
6852 }
6853 #[inline]
6854 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6855 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6856 }
6857 #[inline]
6858 pub fn drop_token(&self) -> Option<SyntaxToken> {
6859 support::token(&self.syntax, SyntaxKind::DROP_KW)
6860 }
6861 #[inline]
6862 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6863 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6864 }
6865 #[inline]
6866 pub fn search_token(&self) -> Option<SyntaxToken> {
6867 support::token(&self.syntax, SyntaxKind::SEARCH_KW)
6868 }
6869 #[inline]
6870 pub fn template_token(&self) -> Option<SyntaxToken> {
6871 support::token(&self.syntax, SyntaxKind::TEMPLATE_KW)
6872 }
6873 #[inline]
6874 pub fn text_token(&self) -> Option<SyntaxToken> {
6875 support::token(&self.syntax, SyntaxKind::TEXT_KW)
6876 }
6877}
6878
6879#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6880pub struct DropTransform {
6881 pub(crate) syntax: SyntaxNode,
6882}
6883impl DropTransform {
6884 #[inline]
6885 pub fn if_exists(&self) -> Option<IfExists> {
6886 support::child(&self.syntax)
6887 }
6888 #[inline]
6889 pub fn language(&self) -> Option<NameRef> {
6890 support::child(&self.syntax)
6891 }
6892 #[inline]
6893 pub fn ty(&self) -> Option<Type> {
6894 support::child(&self.syntax)
6895 }
6896 #[inline]
6897 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6898 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6899 }
6900 #[inline]
6901 pub fn drop_token(&self) -> Option<SyntaxToken> {
6902 support::token(&self.syntax, SyntaxKind::DROP_KW)
6903 }
6904 #[inline]
6905 pub fn for_token(&self) -> Option<SyntaxToken> {
6906 support::token(&self.syntax, SyntaxKind::FOR_KW)
6907 }
6908 #[inline]
6909 pub fn language_token(&self) -> Option<SyntaxToken> {
6910 support::token(&self.syntax, SyntaxKind::LANGUAGE_KW)
6911 }
6912 #[inline]
6913 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6914 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6915 }
6916 #[inline]
6917 pub fn transform_token(&self) -> Option<SyntaxToken> {
6918 support::token(&self.syntax, SyntaxKind::TRANSFORM_KW)
6919 }
6920}
6921
6922#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6923pub struct DropTrigger {
6924 pub(crate) syntax: SyntaxNode,
6925}
6926impl DropTrigger {
6927 #[inline]
6928 pub fn if_exists(&self) -> Option<IfExists> {
6929 support::child(&self.syntax)
6930 }
6931 #[inline]
6932 pub fn on_table(&self) -> Option<OnTable> {
6933 support::child(&self.syntax)
6934 }
6935 #[inline]
6936 pub fn path(&self) -> Option<Path> {
6937 support::child(&self.syntax)
6938 }
6939 #[inline]
6940 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6941 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6942 }
6943 #[inline]
6944 pub fn drop_token(&self) -> Option<SyntaxToken> {
6945 support::token(&self.syntax, SyntaxKind::DROP_KW)
6946 }
6947 #[inline]
6948 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6949 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6950 }
6951 #[inline]
6952 pub fn trigger_token(&self) -> Option<SyntaxToken> {
6953 support::token(&self.syntax, SyntaxKind::TRIGGER_KW)
6954 }
6955}
6956
6957#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6958pub struct DropType {
6959 pub(crate) syntax: SyntaxNode,
6960}
6961impl DropType {
6962 #[inline]
6963 pub fn if_exists(&self) -> Option<IfExists> {
6964 support::child(&self.syntax)
6965 }
6966 #[inline]
6967 pub fn paths(&self) -> AstChildren<Path> {
6968 support::children(&self.syntax)
6969 }
6970 #[inline]
6971 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6972 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6973 }
6974 #[inline]
6975 pub fn drop_token(&self) -> Option<SyntaxToken> {
6976 support::token(&self.syntax, SyntaxKind::DROP_KW)
6977 }
6978 #[inline]
6979 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6980 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6981 }
6982 #[inline]
6983 pub fn type_token(&self) -> Option<SyntaxToken> {
6984 support::token(&self.syntax, SyntaxKind::TYPE_KW)
6985 }
6986}
6987
6988#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6989pub struct DropUser {
6990 pub(crate) syntax: SyntaxNode,
6991}
6992impl DropUser {
6993 #[inline]
6994 pub fn if_exists(&self) -> Option<IfExists> {
6995 support::child(&self.syntax)
6996 }
6997 #[inline]
6998 pub fn name_refs(&self) -> AstChildren<NameRef> {
6999 support::children(&self.syntax)
7000 }
7001 #[inline]
7002 pub fn drop_token(&self) -> Option<SyntaxToken> {
7003 support::token(&self.syntax, SyntaxKind::DROP_KW)
7004 }
7005 #[inline]
7006 pub fn user_token(&self) -> Option<SyntaxToken> {
7007 support::token(&self.syntax, SyntaxKind::USER_KW)
7008 }
7009}
7010
7011#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7012pub struct DropUserMapping {
7013 pub(crate) syntax: SyntaxNode,
7014}
7015impl DropUserMapping {
7016 #[inline]
7017 pub fn if_exists(&self) -> Option<IfExists> {
7018 support::child(&self.syntax)
7019 }
7020 #[inline]
7021 pub fn role_ref(&self) -> Option<RoleRef> {
7022 support::child(&self.syntax)
7023 }
7024 #[inline]
7025 pub fn server_name(&self) -> Option<ServerName> {
7026 support::child(&self.syntax)
7027 }
7028 #[inline]
7029 pub fn drop_token(&self) -> Option<SyntaxToken> {
7030 support::token(&self.syntax, SyntaxKind::DROP_KW)
7031 }
7032 #[inline]
7033 pub fn for_token(&self) -> Option<SyntaxToken> {
7034 support::token(&self.syntax, SyntaxKind::FOR_KW)
7035 }
7036 #[inline]
7037 pub fn mapping_token(&self) -> Option<SyntaxToken> {
7038 support::token(&self.syntax, SyntaxKind::MAPPING_KW)
7039 }
7040 #[inline]
7041 pub fn user_token(&self) -> Option<SyntaxToken> {
7042 support::token(&self.syntax, SyntaxKind::USER_KW)
7043 }
7044}
7045
7046#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7047pub struct DropView {
7048 pub(crate) syntax: SyntaxNode,
7049}
7050impl DropView {
7051 #[inline]
7052 pub fn if_exists(&self) -> Option<IfExists> {
7053 support::child(&self.syntax)
7054 }
7055 #[inline]
7056 pub fn path(&self) -> Option<Path> {
7057 support::child(&self.syntax)
7058 }
7059 #[inline]
7060 pub fn cascade_token(&self) -> Option<SyntaxToken> {
7061 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
7062 }
7063 #[inline]
7064 pub fn drop_token(&self) -> Option<SyntaxToken> {
7065 support::token(&self.syntax, SyntaxKind::DROP_KW)
7066 }
7067 #[inline]
7068 pub fn restrict_token(&self) -> Option<SyntaxToken> {
7069 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
7070 }
7071 #[inline]
7072 pub fn view_token(&self) -> Option<SyntaxToken> {
7073 support::token(&self.syntax, SyntaxKind::VIEW_KW)
7074 }
7075}
7076
7077#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7078pub struct ElseClause {
7079 pub(crate) syntax: SyntaxNode,
7080}
7081impl ElseClause {
7082 #[inline]
7083 pub fn expr(&self) -> Option<Expr> {
7084 support::child(&self.syntax)
7085 }
7086 #[inline]
7087 pub fn else_token(&self) -> Option<SyntaxToken> {
7088 support::token(&self.syntax, SyntaxKind::ELSE_KW)
7089 }
7090}
7091
7092#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7093pub struct EnableAlwaysRule {
7094 pub(crate) syntax: SyntaxNode,
7095}
7096impl EnableAlwaysRule {
7097 #[inline]
7098 pub fn always_token(&self) -> Option<SyntaxToken> {
7099 support::token(&self.syntax, SyntaxKind::ALWAYS_KW)
7100 }
7101 #[inline]
7102 pub fn enable_token(&self) -> Option<SyntaxToken> {
7103 support::token(&self.syntax, SyntaxKind::ENABLE_KW)
7104 }
7105 #[inline]
7106 pub fn rule_token(&self) -> Option<SyntaxToken> {
7107 support::token(&self.syntax, SyntaxKind::RULE_KW)
7108 }
7109}
7110
7111#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7112pub struct EnableAlwaysTrigger {
7113 pub(crate) syntax: SyntaxNode,
7114}
7115impl EnableAlwaysTrigger {
7116 #[inline]
7117 pub fn always_token(&self) -> Option<SyntaxToken> {
7118 support::token(&self.syntax, SyntaxKind::ALWAYS_KW)
7119 }
7120 #[inline]
7121 pub fn enable_token(&self) -> Option<SyntaxToken> {
7122 support::token(&self.syntax, SyntaxKind::ENABLE_KW)
7123 }
7124 #[inline]
7125 pub fn trigger_token(&self) -> Option<SyntaxToken> {
7126 support::token(&self.syntax, SyntaxKind::TRIGGER_KW)
7127 }
7128}
7129
7130#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7131pub struct EnableReplicaRule {
7132 pub(crate) syntax: SyntaxNode,
7133}
7134impl EnableReplicaRule {
7135 #[inline]
7136 pub fn enable_token(&self) -> Option<SyntaxToken> {
7137 support::token(&self.syntax, SyntaxKind::ENABLE_KW)
7138 }
7139 #[inline]
7140 pub fn replica_token(&self) -> Option<SyntaxToken> {
7141 support::token(&self.syntax, SyntaxKind::REPLICA_KW)
7142 }
7143 #[inline]
7144 pub fn rule_token(&self) -> Option<SyntaxToken> {
7145 support::token(&self.syntax, SyntaxKind::RULE_KW)
7146 }
7147}
7148
7149#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7150pub struct EnableReplicaTrigger {
7151 pub(crate) syntax: SyntaxNode,
7152}
7153impl EnableReplicaTrigger {
7154 #[inline]
7155 pub fn enable_token(&self) -> Option<SyntaxToken> {
7156 support::token(&self.syntax, SyntaxKind::ENABLE_KW)
7157 }
7158 #[inline]
7159 pub fn replica_token(&self) -> Option<SyntaxToken> {
7160 support::token(&self.syntax, SyntaxKind::REPLICA_KW)
7161 }
7162 #[inline]
7163 pub fn trigger_token(&self) -> Option<SyntaxToken> {
7164 support::token(&self.syntax, SyntaxKind::TRIGGER_KW)
7165 }
7166}
7167
7168#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7169pub struct EnableRls {
7170 pub(crate) syntax: SyntaxNode,
7171}
7172impl EnableRls {
7173 #[inline]
7174 pub fn enable_token(&self) -> Option<SyntaxToken> {
7175 support::token(&self.syntax, SyntaxKind::ENABLE_KW)
7176 }
7177 #[inline]
7178 pub fn level_token(&self) -> Option<SyntaxToken> {
7179 support::token(&self.syntax, SyntaxKind::LEVEL_KW)
7180 }
7181 #[inline]
7182 pub fn row_token(&self) -> Option<SyntaxToken> {
7183 support::token(&self.syntax, SyntaxKind::ROW_KW)
7184 }
7185 #[inline]
7186 pub fn security_token(&self) -> Option<SyntaxToken> {
7187 support::token(&self.syntax, SyntaxKind::SECURITY_KW)
7188 }
7189}
7190
7191#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7192pub struct EnableRule {
7193 pub(crate) syntax: SyntaxNode,
7194}
7195impl EnableRule {
7196 #[inline]
7197 pub fn enable_token(&self) -> Option<SyntaxToken> {
7198 support::token(&self.syntax, SyntaxKind::ENABLE_KW)
7199 }
7200 #[inline]
7201 pub fn rule_token(&self) -> Option<SyntaxToken> {
7202 support::token(&self.syntax, SyntaxKind::RULE_KW)
7203 }
7204}
7205
7206#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7207pub struct EnableTrigger {
7208 pub(crate) syntax: SyntaxNode,
7209}
7210impl EnableTrigger {
7211 #[inline]
7212 pub fn enable_token(&self) -> Option<SyntaxToken> {
7213 support::token(&self.syntax, SyntaxKind::ENABLE_KW)
7214 }
7215 #[inline]
7216 pub fn trigger_token(&self) -> Option<SyntaxToken> {
7217 support::token(&self.syntax, SyntaxKind::TRIGGER_KW)
7218 }
7219}
7220
7221#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7222pub struct Enforced {
7223 pub(crate) syntax: SyntaxNode,
7224}
7225impl Enforced {
7226 #[inline]
7227 pub fn enforced_token(&self) -> Option<SyntaxToken> {
7228 support::token(&self.syntax, SyntaxKind::ENFORCED_KW)
7229 }
7230}
7231
7232#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7233pub struct EventTriggerWhen {
7234 pub(crate) syntax: SyntaxNode,
7235}
7236impl EventTriggerWhen {
7237 #[inline]
7238 pub fn literals(&self) -> AstChildren<Literal> {
7239 support::children(&self.syntax)
7240 }
7241 #[inline]
7242 pub fn name_ref(&self) -> Option<NameRef> {
7243 support::child(&self.syntax)
7244 }
7245 #[inline]
7246 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
7247 support::token(&self.syntax, SyntaxKind::L_PAREN)
7248 }
7249 #[inline]
7250 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
7251 support::token(&self.syntax, SyntaxKind::R_PAREN)
7252 }
7253 #[inline]
7254 pub fn in_token(&self) -> Option<SyntaxToken> {
7255 support::token(&self.syntax, SyntaxKind::IN_KW)
7256 }
7257}
7258
7259#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7260pub struct EventTriggerWhenClause {
7261 pub(crate) syntax: SyntaxNode,
7262}
7263impl EventTriggerWhenClause {
7264 #[inline]
7265 pub fn event_trigger_whens(&self) -> AstChildren<EventTriggerWhen> {
7266 support::children(&self.syntax)
7267 }
7268 #[inline]
7269 pub fn when_token(&self) -> Option<SyntaxToken> {
7270 support::token(&self.syntax, SyntaxKind::WHEN_KW)
7271 }
7272}
7273
7274#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7275pub struct ExceptTables {
7276 pub(crate) syntax: SyntaxNode,
7277}
7278impl ExceptTables {
7279 #[inline]
7280 pub fn name_refs(&self) -> AstChildren<NameRef> {
7281 support::children(&self.syntax)
7282 }
7283 #[inline]
7284 pub fn except_token(&self) -> Option<SyntaxToken> {
7285 support::token(&self.syntax, SyntaxKind::EXCEPT_KW)
7286 }
7287}
7288
7289#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7290pub struct ExcludeConstraint {
7291 pub(crate) syntax: SyntaxNode,
7292}
7293impl ExcludeConstraint {
7294 #[inline]
7295 pub fn constraint_exclusion_list(&self) -> Option<ConstraintExclusionList> {
7296 support::child(&self.syntax)
7297 }
7298 #[inline]
7299 pub fn constraint_index_method(&self) -> Option<ConstraintIndexMethod> {
7300 support::child(&self.syntax)
7301 }
7302 #[inline]
7303 pub fn constraint_name(&self) -> Option<ConstraintName> {
7304 support::child(&self.syntax)
7305 }
7306 #[inline]
7307 pub fn where_condition_clause(&self) -> Option<WhereConditionClause> {
7308 support::child(&self.syntax)
7309 }
7310 #[inline]
7311 pub fn exclude_token(&self) -> Option<SyntaxToken> {
7312 support::token(&self.syntax, SyntaxKind::EXCLUDE_KW)
7313 }
7314}
7315
7316#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7317pub struct Execute {
7318 pub(crate) syntax: SyntaxNode,
7319}
7320impl Execute {
7321 #[inline]
7322 pub fn arg_list(&self) -> Option<ArgList> {
7323 support::child(&self.syntax)
7324 }
7325 #[inline]
7326 pub fn name_ref(&self) -> Option<NameRef> {
7327 support::child(&self.syntax)
7328 }
7329 #[inline]
7330 pub fn execute_token(&self) -> Option<SyntaxToken> {
7331 support::token(&self.syntax, SyntaxKind::EXECUTE_KW)
7332 }
7333}
7334
7335#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7336pub struct ExistsFn {
7337 pub(crate) syntax: SyntaxNode,
7338}
7339impl ExistsFn {
7340 #[inline]
7341 pub fn select_variant(&self) -> Option<SelectVariant> {
7342 support::child(&self.syntax)
7343 }
7344 #[inline]
7345 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
7346 support::token(&self.syntax, SyntaxKind::L_PAREN)
7347 }
7348 #[inline]
7349 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
7350 support::token(&self.syntax, SyntaxKind::R_PAREN)
7351 }
7352 #[inline]
7353 pub fn exists_token(&self) -> Option<SyntaxToken> {
7354 support::token(&self.syntax, SyntaxKind::EXISTS_KW)
7355 }
7356}
7357
7358#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7359pub struct Explain {
7360 pub(crate) syntax: SyntaxNode,
7361}
7362impl Explain {
7363 #[inline]
7364 pub fn explain_stmt(&self) -> Option<ExplainStmt> {
7365 support::child(&self.syntax)
7366 }
7367 #[inline]
7368 pub fn analyse_token(&self) -> Option<SyntaxToken> {
7369 support::token(&self.syntax, SyntaxKind::ANALYSE_KW)
7370 }
7371 #[inline]
7372 pub fn analyze_token(&self) -> Option<SyntaxToken> {
7373 support::token(&self.syntax, SyntaxKind::ANALYZE_KW)
7374 }
7375 #[inline]
7376 pub fn explain_token(&self) -> Option<SyntaxToken> {
7377 support::token(&self.syntax, SyntaxKind::EXPLAIN_KW)
7378 }
7379 #[inline]
7380 pub fn verbose_token(&self) -> Option<SyntaxToken> {
7381 support::token(&self.syntax, SyntaxKind::VERBOSE_KW)
7382 }
7383}
7384
7385#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7386pub struct ExprAsName {
7387 pub(crate) syntax: SyntaxNode,
7388}
7389impl ExprAsName {
7390 #[inline]
7391 pub fn as_name(&self) -> Option<AsName> {
7392 support::child(&self.syntax)
7393 }
7394 #[inline]
7395 pub fn expr(&self) -> Option<Expr> {
7396 support::child(&self.syntax)
7397 }
7398}
7399
7400#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7401pub struct ExprType {
7402 pub(crate) syntax: SyntaxNode,
7403}
7404impl ExprType {
7405 #[inline]
7406 pub fn expr(&self) -> Option<Expr> {
7407 support::child(&self.syntax)
7408 }
7409}
7410
7411#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7412pub struct ExtractFn {
7413 pub(crate) syntax: SyntaxNode,
7414}
7415impl ExtractFn {
7416 #[inline]
7417 pub fn expr(&self) -> Option<Expr> {
7418 support::child(&self.syntax)
7419 }
7420 #[inline]
7421 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
7422 support::token(&self.syntax, SyntaxKind::L_PAREN)
7423 }
7424 #[inline]
7425 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
7426 support::token(&self.syntax, SyntaxKind::R_PAREN)
7427 }
7428 #[inline]
7429 pub fn day_token(&self) -> Option<SyntaxToken> {
7430 support::token(&self.syntax, SyntaxKind::DAY_KW)
7431 }
7432 #[inline]
7433 pub fn extract_token(&self) -> Option<SyntaxToken> {
7434 support::token(&self.syntax, SyntaxKind::EXTRACT_KW)
7435 }
7436 #[inline]
7437 pub fn from_token(&self) -> Option<SyntaxToken> {
7438 support::token(&self.syntax, SyntaxKind::FROM_KW)
7439 }
7440 #[inline]
7441 pub fn hour_token(&self) -> Option<SyntaxToken> {
7442 support::token(&self.syntax, SyntaxKind::HOUR_KW)
7443 }
7444 #[inline]
7445 pub fn ident_token(&self) -> Option<SyntaxToken> {
7446 support::token(&self.syntax, SyntaxKind::IDENT)
7447 }
7448 #[inline]
7449 pub fn minute_token(&self) -> Option<SyntaxToken> {
7450 support::token(&self.syntax, SyntaxKind::MINUTE_KW)
7451 }
7452 #[inline]
7453 pub fn month_token(&self) -> Option<SyntaxToken> {
7454 support::token(&self.syntax, SyntaxKind::MONTH_KW)
7455 }
7456 #[inline]
7457 pub fn second_token(&self) -> Option<SyntaxToken> {
7458 support::token(&self.syntax, SyntaxKind::SECOND_KW)
7459 }
7460 #[inline]
7461 pub fn string_token(&self) -> Option<SyntaxToken> {
7462 support::token(&self.syntax, SyntaxKind::STRING_KW)
7463 }
7464 #[inline]
7465 pub fn year_token(&self) -> Option<SyntaxToken> {
7466 support::token(&self.syntax, SyntaxKind::YEAR_KW)
7467 }
7468}
7469
7470#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7471pub struct FatArrow {
7472 pub(crate) syntax: SyntaxNode,
7473}
7474impl FatArrow {
7475 #[inline]
7476 pub fn eq_token(&self) -> Option<SyntaxToken> {
7477 support::token(&self.syntax, SyntaxKind::EQ)
7478 }
7479 #[inline]
7480 pub fn r_angle_token(&self) -> Option<SyntaxToken> {
7481 support::token(&self.syntax, SyntaxKind::R_ANGLE)
7482 }
7483}
7484
7485#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7486pub struct FdwOption {
7487 pub(crate) syntax: SyntaxNode,
7488}
7489impl FdwOption {
7490 #[inline]
7491 pub fn alter_option_list(&self) -> Option<AlterOptionList> {
7492 support::child(&self.syntax)
7493 }
7494 #[inline]
7495 pub fn path(&self) -> Option<Path> {
7496 support::child(&self.syntax)
7497 }
7498 #[inline]
7499 pub fn handler_token(&self) -> Option<SyntaxToken> {
7500 support::token(&self.syntax, SyntaxKind::HANDLER_KW)
7501 }
7502 #[inline]
7503 pub fn no_token(&self) -> Option<SyntaxToken> {
7504 support::token(&self.syntax, SyntaxKind::NO_KW)
7505 }
7506 #[inline]
7507 pub fn options_token(&self) -> Option<SyntaxToken> {
7508 support::token(&self.syntax, SyntaxKind::OPTIONS_KW)
7509 }
7510 #[inline]
7511 pub fn validator_token(&self) -> Option<SyntaxToken> {
7512 support::token(&self.syntax, SyntaxKind::VALIDATOR_KW)
7513 }
7514}
7515
7516#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7517pub struct FdwOptionList {
7518 pub(crate) syntax: SyntaxNode,
7519}
7520impl FdwOptionList {
7521 #[inline]
7522 pub fn fdw_options(&self) -> AstChildren<FdwOption> {
7523 support::children(&self.syntax)
7524 }
7525}
7526
7527#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7528pub struct Fetch {
7529 pub(crate) syntax: SyntaxNode,
7530}
7531impl Fetch {
7532 #[inline]
7533 pub fn name_ref(&self) -> Option<NameRef> {
7534 support::child(&self.syntax)
7535 }
7536 #[inline]
7537 pub fn fetch_token(&self) -> Option<SyntaxToken> {
7538 support::token(&self.syntax, SyntaxKind::FETCH_KW)
7539 }
7540 #[inline]
7541 pub fn from_token(&self) -> Option<SyntaxToken> {
7542 support::token(&self.syntax, SyntaxKind::FROM_KW)
7543 }
7544 #[inline]
7545 pub fn in_token(&self) -> Option<SyntaxToken> {
7546 support::token(&self.syntax, SyntaxKind::IN_KW)
7547 }
7548}
7549
7550#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7551pub struct FetchClause {
7552 pub(crate) syntax: SyntaxNode,
7553}
7554impl FetchClause {
7555 #[inline]
7556 pub fn expr(&self) -> Option<Expr> {
7557 support::child(&self.syntax)
7558 }
7559 #[inline]
7560 pub fn fetch_token(&self) -> Option<SyntaxToken> {
7561 support::token(&self.syntax, SyntaxKind::FETCH_KW)
7562 }
7563 #[inline]
7564 pub fn first_token(&self) -> Option<SyntaxToken> {
7565 support::token(&self.syntax, SyntaxKind::FIRST_KW)
7566 }
7567 #[inline]
7568 pub fn next_token(&self) -> Option<SyntaxToken> {
7569 support::token(&self.syntax, SyntaxKind::NEXT_KW)
7570 }
7571 #[inline]
7572 pub fn only_token(&self) -> Option<SyntaxToken> {
7573 support::token(&self.syntax, SyntaxKind::ONLY_KW)
7574 }
7575 #[inline]
7576 pub fn row_token(&self) -> Option<SyntaxToken> {
7577 support::token(&self.syntax, SyntaxKind::ROW_KW)
7578 }
7579 #[inline]
7580 pub fn rows_token(&self) -> Option<SyntaxToken> {
7581 support::token(&self.syntax, SyntaxKind::ROWS_KW)
7582 }
7583 #[inline]
7584 pub fn ties_token(&self) -> Option<SyntaxToken> {
7585 support::token(&self.syntax, SyntaxKind::TIES_KW)
7586 }
7587 #[inline]
7588 pub fn with_token(&self) -> Option<SyntaxToken> {
7589 support::token(&self.syntax, SyntaxKind::WITH_KW)
7590 }
7591}
7592
7593#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7594pub struct FieldExpr {
7595 pub(crate) syntax: SyntaxNode,
7596}
7597impl FieldExpr {
7598 #[inline]
7599 pub fn star_token(&self) -> Option<SyntaxToken> {
7600 support::token(&self.syntax, SyntaxKind::STAR)
7601 }
7602 #[inline]
7603 pub fn dot_token(&self) -> Option<SyntaxToken> {
7604 support::token(&self.syntax, SyntaxKind::DOT)
7605 }
7606}
7607
7608#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7609pub struct FilterClause {
7610 pub(crate) syntax: SyntaxNode,
7611}
7612impl FilterClause {
7613 #[inline]
7614 pub fn expr(&self) -> Option<Expr> {
7615 support::child(&self.syntax)
7616 }
7617 #[inline]
7618 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
7619 support::token(&self.syntax, SyntaxKind::L_PAREN)
7620 }
7621 #[inline]
7622 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
7623 support::token(&self.syntax, SyntaxKind::R_PAREN)
7624 }
7625 #[inline]
7626 pub fn filter_token(&self) -> Option<SyntaxToken> {
7627 support::token(&self.syntax, SyntaxKind::FILTER_KW)
7628 }
7629 #[inline]
7630 pub fn where_token(&self) -> Option<SyntaxToken> {
7631 support::token(&self.syntax, SyntaxKind::WHERE_KW)
7632 }
7633}
7634
7635#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7636pub struct ForProvider {
7637 pub(crate) syntax: SyntaxNode,
7638}
7639impl ForProvider {
7640 #[inline]
7641 pub fn literal(&self) -> Option<Literal> {
7642 support::child(&self.syntax)
7643 }
7644 #[inline]
7645 pub fn name_ref(&self) -> Option<NameRef> {
7646 support::child(&self.syntax)
7647 }
7648 #[inline]
7649 pub fn for_token(&self) -> Option<SyntaxToken> {
7650 support::token(&self.syntax, SyntaxKind::FOR_KW)
7651 }
7652}
7653
7654#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7655pub struct ForceRls {
7656 pub(crate) syntax: SyntaxNode,
7657}
7658impl ForceRls {
7659 #[inline]
7660 pub fn force_token(&self) -> Option<SyntaxToken> {
7661 support::token(&self.syntax, SyntaxKind::FORCE_KW)
7662 }
7663 #[inline]
7664 pub fn level_token(&self) -> Option<SyntaxToken> {
7665 support::token(&self.syntax, SyntaxKind::LEVEL_KW)
7666 }
7667 #[inline]
7668 pub fn row_token(&self) -> Option<SyntaxToken> {
7669 support::token(&self.syntax, SyntaxKind::ROW_KW)
7670 }
7671 #[inline]
7672 pub fn security_token(&self) -> Option<SyntaxToken> {
7673 support::token(&self.syntax, SyntaxKind::SECURITY_KW)
7674 }
7675}
7676
7677#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7678pub struct ForeignKeyConstraint {
7679 pub(crate) syntax: SyntaxNode,
7680}
7681impl ForeignKeyConstraint {
7682 #[inline]
7683 pub fn constraint_name(&self) -> Option<ConstraintName> {
7684 support::child(&self.syntax)
7685 }
7686 #[inline]
7687 pub fn match_type(&self) -> Option<MatchType> {
7688 support::child(&self.syntax)
7689 }
7690 #[inline]
7691 pub fn on_delete_action(&self) -> Option<OnDeleteAction> {
7692 support::child(&self.syntax)
7693 }
7694 #[inline]
7695 pub fn on_update_action(&self) -> Option<OnUpdateAction> {
7696 support::child(&self.syntax)
7697 }
7698 #[inline]
7699 pub fn path(&self) -> Option<Path> {
7700 support::child(&self.syntax)
7701 }
7702 #[inline]
7703 pub fn foreign_token(&self) -> Option<SyntaxToken> {
7704 support::token(&self.syntax, SyntaxKind::FOREIGN_KW)
7705 }
7706 #[inline]
7707 pub fn key_token(&self) -> Option<SyntaxToken> {
7708 support::token(&self.syntax, SyntaxKind::KEY_KW)
7709 }
7710 #[inline]
7711 pub fn references_token(&self) -> Option<SyntaxToken> {
7712 support::token(&self.syntax, SyntaxKind::REFERENCES_KW)
7713 }
7714}
7715
7716#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7717pub struct FrameClause {
7718 pub(crate) syntax: SyntaxNode,
7719}
7720impl FrameClause {
7721 #[inline]
7722 pub fn groups_token(&self) -> Option<SyntaxToken> {
7723 support::token(&self.syntax, SyntaxKind::GROUPS_KW)
7724 }
7725 #[inline]
7726 pub fn range_token(&self) -> Option<SyntaxToken> {
7727 support::token(&self.syntax, SyntaxKind::RANGE_KW)
7728 }
7729 #[inline]
7730 pub fn rows_token(&self) -> Option<SyntaxToken> {
7731 support::token(&self.syntax, SyntaxKind::ROWS_KW)
7732 }
7733}
7734
7735#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7736pub struct FromClause {
7737 pub(crate) syntax: SyntaxNode,
7738}
7739impl FromClause {
7740 #[inline]
7741 pub fn from_items(&self) -> AstChildren<FromItem> {
7742 support::children(&self.syntax)
7743 }
7744 #[inline]
7745 pub fn join_exprs(&self) -> AstChildren<JoinExpr> {
7746 support::children(&self.syntax)
7747 }
7748 #[inline]
7749 pub fn from_token(&self) -> Option<SyntaxToken> {
7750 support::token(&self.syntax, SyntaxKind::FROM_KW)
7751 }
7752}
7753
7754#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7755pub struct FromItem {
7756 pub(crate) syntax: SyntaxNode,
7757}
7758impl FromItem {
7759 #[inline]
7760 pub fn alias(&self) -> Option<Alias> {
7761 support::child(&self.syntax)
7762 }
7763 #[inline]
7764 pub fn call_expr(&self) -> Option<CallExpr> {
7765 support::child(&self.syntax)
7766 }
7767 #[inline]
7768 pub fn cast_expr(&self) -> Option<CastExpr> {
7769 support::child(&self.syntax)
7770 }
7771 #[inline]
7772 pub fn field_expr(&self) -> Option<FieldExpr> {
7773 support::child(&self.syntax)
7774 }
7775 #[inline]
7776 pub fn json_table(&self) -> Option<JsonTable> {
7777 support::child(&self.syntax)
7778 }
7779 #[inline]
7780 pub fn name_ref(&self) -> Option<NameRef> {
7781 support::child(&self.syntax)
7782 }
7783 #[inline]
7784 pub fn paren_expr(&self) -> Option<ParenExpr> {
7785 support::child(&self.syntax)
7786 }
7787 #[inline]
7788 pub fn paren_select(&self) -> Option<ParenSelect> {
7789 support::child(&self.syntax)
7790 }
7791 #[inline]
7792 pub fn tablesample_clause(&self) -> Option<TablesampleClause> {
7793 support::child(&self.syntax)
7794 }
7795 #[inline]
7796 pub fn xml_table(&self) -> Option<XmlTable> {
7797 support::child(&self.syntax)
7798 }
7799 #[inline]
7800 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
7801 support::token(&self.syntax, SyntaxKind::L_PAREN)
7802 }
7803 #[inline]
7804 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
7805 support::token(&self.syntax, SyntaxKind::R_PAREN)
7806 }
7807 #[inline]
7808 pub fn star_token(&self) -> Option<SyntaxToken> {
7809 support::token(&self.syntax, SyntaxKind::STAR)
7810 }
7811 #[inline]
7812 pub fn from_token(&self) -> Option<SyntaxToken> {
7813 support::token(&self.syntax, SyntaxKind::FROM_KW)
7814 }
7815 #[inline]
7816 pub fn lateral_token(&self) -> Option<SyntaxToken> {
7817 support::token(&self.syntax, SyntaxKind::LATERAL_KW)
7818 }
7819 #[inline]
7820 pub fn only_token(&self) -> Option<SyntaxToken> {
7821 support::token(&self.syntax, SyntaxKind::ONLY_KW)
7822 }
7823 #[inline]
7824 pub fn ordinality_token(&self) -> Option<SyntaxToken> {
7825 support::token(&self.syntax, SyntaxKind::ORDINALITY_KW)
7826 }
7827 #[inline]
7828 pub fn rows_token(&self) -> Option<SyntaxToken> {
7829 support::token(&self.syntax, SyntaxKind::ROWS_KW)
7830 }
7831 #[inline]
7832 pub fn with_token(&self) -> Option<SyntaxToken> {
7833 support::token(&self.syntax, SyntaxKind::WITH_KW)
7834 }
7835}
7836
7837#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7838pub struct FromTable {
7839 pub(crate) syntax: SyntaxNode,
7840}
7841impl FromTable {
7842 #[inline]
7843 pub fn path(&self) -> Option<Path> {
7844 support::child(&self.syntax)
7845 }
7846 #[inline]
7847 pub fn from_token(&self) -> Option<SyntaxToken> {
7848 support::token(&self.syntax, SyntaxKind::FROM_KW)
7849 }
7850}
7851
7852#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7853pub struct FuncOptionList {
7854 pub(crate) syntax: SyntaxNode,
7855}
7856impl FuncOptionList {
7857 #[inline]
7858 pub fn options(&self) -> AstChildren<FuncOption> {
7859 support::children(&self.syntax)
7860 }
7861}
7862
7863#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7864pub struct FunctionSig {
7865 pub(crate) syntax: SyntaxNode,
7866}
7867impl FunctionSig {
7868 #[inline]
7869 pub fn param_list(&self) -> Option<ParamList> {
7870 support::child(&self.syntax)
7871 }
7872 #[inline]
7873 pub fn path(&self) -> Option<Path> {
7874 support::child(&self.syntax)
7875 }
7876}
7877
7878#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7879pub struct FunctionSigList {
7880 pub(crate) syntax: SyntaxNode,
7881}
7882impl FunctionSigList {
7883 #[inline]
7884 pub fn function_sigs(&self) -> AstChildren<FunctionSig> {
7885 support::children(&self.syntax)
7886 }
7887}
7888
7889#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7890pub struct GeneratedConstraint {
7891 pub(crate) syntax: SyntaxNode,
7892}
7893impl GeneratedConstraint {
7894 #[inline]
7895 pub fn expr(&self) -> Option<Expr> {
7896 support::child(&self.syntax)
7897 }
7898 #[inline]
7899 pub fn name_ref(&self) -> Option<NameRef> {
7900 support::child(&self.syntax)
7901 }
7902 #[inline]
7903 pub fn sequence_option_list(&self) -> Option<SequenceOptionList> {
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 always_token(&self) -> Option<SyntaxToken> {
7916 support::token(&self.syntax, SyntaxKind::ALWAYS_KW)
7917 }
7918 #[inline]
7919 pub fn as_token(&self) -> Option<SyntaxToken> {
7920 support::token(&self.syntax, SyntaxKind::AS_KW)
7921 }
7922 #[inline]
7923 pub fn by_token(&self) -> Option<SyntaxToken> {
7924 support::token(&self.syntax, SyntaxKind::BY_KW)
7925 }
7926 #[inline]
7927 pub fn constraint_token(&self) -> Option<SyntaxToken> {
7928 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
7929 }
7930 #[inline]
7931 pub fn default_token(&self) -> Option<SyntaxToken> {
7932 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
7933 }
7934 #[inline]
7935 pub fn generated_token(&self) -> Option<SyntaxToken> {
7936 support::token(&self.syntax, SyntaxKind::GENERATED_KW)
7937 }
7938 #[inline]
7939 pub fn identity_token(&self) -> Option<SyntaxToken> {
7940 support::token(&self.syntax, SyntaxKind::IDENTITY_KW)
7941 }
7942 #[inline]
7943 pub fn stored_token(&self) -> Option<SyntaxToken> {
7944 support::token(&self.syntax, SyntaxKind::STORED_KW)
7945 }
7946}
7947
7948#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7949pub struct Grant {
7950 pub(crate) syntax: SyntaxNode,
7951}
7952impl Grant {
7953 #[inline]
7954 pub fn name_refs(&self) -> AstChildren<NameRef> {
7955 support::children(&self.syntax)
7956 }
7957 #[inline]
7958 pub fn paths(&self) -> AstChildren<Path> {
7959 support::children(&self.syntax)
7960 }
7961 #[inline]
7962 pub fn revoke_command_list(&self) -> Option<RevokeCommandList> {
7963 support::child(&self.syntax)
7964 }
7965 #[inline]
7966 pub fn role_ref(&self) -> Option<RoleRef> {
7967 support::child(&self.syntax)
7968 }
7969 #[inline]
7970 pub fn role_ref_list(&self) -> Option<RoleRefList> {
7971 support::child(&self.syntax)
7972 }
7973 #[inline]
7974 pub fn all_token(&self) -> Option<SyntaxToken> {
7975 support::token(&self.syntax, SyntaxKind::ALL_KW)
7976 }
7977 #[inline]
7978 pub fn by_token(&self) -> Option<SyntaxToken> {
7979 support::token(&self.syntax, SyntaxKind::BY_KW)
7980 }
7981 #[inline]
7982 pub fn grant_token(&self) -> Option<SyntaxToken> {
7983 support::token(&self.syntax, SyntaxKind::GRANT_KW)
7984 }
7985 #[inline]
7986 pub fn granted_token(&self) -> Option<SyntaxToken> {
7987 support::token(&self.syntax, SyntaxKind::GRANTED_KW)
7988 }
7989 #[inline]
7990 pub fn in_token(&self) -> Option<SyntaxToken> {
7991 support::token(&self.syntax, SyntaxKind::IN_KW)
7992 }
7993 #[inline]
7994 pub fn on_token(&self) -> Option<SyntaxToken> {
7995 support::token(&self.syntax, SyntaxKind::ON_KW)
7996 }
7997 #[inline]
7998 pub fn option_token(&self) -> Option<SyntaxToken> {
7999 support::token(&self.syntax, SyntaxKind::OPTION_KW)
8000 }
8001 #[inline]
8002 pub fn privileges_token(&self) -> Option<SyntaxToken> {
8003 support::token(&self.syntax, SyntaxKind::PRIVILEGES_KW)
8004 }
8005 #[inline]
8006 pub fn schema_token(&self) -> Option<SyntaxToken> {
8007 support::token(&self.syntax, SyntaxKind::SCHEMA_KW)
8008 }
8009 #[inline]
8010 pub fn table_token(&self) -> Option<SyntaxToken> {
8011 support::token(&self.syntax, SyntaxKind::TABLE_KW)
8012 }
8013 #[inline]
8014 pub fn tables_token(&self) -> Option<SyntaxToken> {
8015 support::token(&self.syntax, SyntaxKind::TABLES_KW)
8016 }
8017 #[inline]
8018 pub fn to_token(&self) -> Option<SyntaxToken> {
8019 support::token(&self.syntax, SyntaxKind::TO_KW)
8020 }
8021 #[inline]
8022 pub fn with_token(&self) -> Option<SyntaxToken> {
8023 support::token(&self.syntax, SyntaxKind::WITH_KW)
8024 }
8025}
8026
8027#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8028pub struct GrantDefaultPrivileges {
8029 pub(crate) syntax: SyntaxNode,
8030}
8031impl GrantDefaultPrivileges {
8032 #[inline]
8033 pub fn privilege_target(&self) -> Option<PrivilegeTarget> {
8034 support::child(&self.syntax)
8035 }
8036 #[inline]
8037 pub fn privileges(&self) -> Option<Privileges> {
8038 support::child(&self.syntax)
8039 }
8040 #[inline]
8041 pub fn role_ref_list(&self) -> Option<RoleRefList> {
8042 support::child(&self.syntax)
8043 }
8044 #[inline]
8045 pub fn grant_token(&self) -> Option<SyntaxToken> {
8046 support::token(&self.syntax, SyntaxKind::GRANT_KW)
8047 }
8048 #[inline]
8049 pub fn on_token(&self) -> Option<SyntaxToken> {
8050 support::token(&self.syntax, SyntaxKind::ON_KW)
8051 }
8052 #[inline]
8053 pub fn option_token(&self) -> Option<SyntaxToken> {
8054 support::token(&self.syntax, SyntaxKind::OPTION_KW)
8055 }
8056 #[inline]
8057 pub fn to_token(&self) -> Option<SyntaxToken> {
8058 support::token(&self.syntax, SyntaxKind::TO_KW)
8059 }
8060 #[inline]
8061 pub fn with_token(&self) -> Option<SyntaxToken> {
8062 support::token(&self.syntax, SyntaxKind::WITH_KW)
8063 }
8064}
8065
8066#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8067pub struct GroupByClause {
8068 pub(crate) syntax: SyntaxNode,
8069}
8070impl GroupByClause {
8071 #[inline]
8072 pub fn group_by_list(&self) -> Option<GroupByList> {
8073 support::child(&self.syntax)
8074 }
8075 #[inline]
8076 pub fn all_token(&self) -> Option<SyntaxToken> {
8077 support::token(&self.syntax, SyntaxKind::ALL_KW)
8078 }
8079 #[inline]
8080 pub fn by_token(&self) -> Option<SyntaxToken> {
8081 support::token(&self.syntax, SyntaxKind::BY_KW)
8082 }
8083 #[inline]
8084 pub fn distinct_token(&self) -> Option<SyntaxToken> {
8085 support::token(&self.syntax, SyntaxKind::DISTINCT_KW)
8086 }
8087 #[inline]
8088 pub fn group_token(&self) -> Option<SyntaxToken> {
8089 support::token(&self.syntax, SyntaxKind::GROUP_KW)
8090 }
8091}
8092
8093#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8094pub struct GroupByList {
8095 pub(crate) syntax: SyntaxNode,
8096}
8097impl GroupByList {
8098 #[inline]
8099 pub fn group_bys(&self) -> AstChildren<GroupBy> {
8100 support::children(&self.syntax)
8101 }
8102}
8103
8104#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8105pub struct GroupingCube {
8106 pub(crate) syntax: SyntaxNode,
8107}
8108impl GroupingCube {
8109 #[inline]
8110 pub fn expr(&self) -> Option<Expr> {
8111 support::child(&self.syntax)
8112 }
8113 #[inline]
8114 pub fn cube_token(&self) -> Option<SyntaxToken> {
8115 support::token(&self.syntax, SyntaxKind::CUBE_KW)
8116 }
8117}
8118
8119#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8120pub struct GroupingExpr {
8121 pub(crate) syntax: SyntaxNode,
8122}
8123impl GroupingExpr {
8124 #[inline]
8125 pub fn expr(&self) -> Option<Expr> {
8126 support::child(&self.syntax)
8127 }
8128}
8129
8130#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8131pub struct GroupingRollup {
8132 pub(crate) syntax: SyntaxNode,
8133}
8134impl GroupingRollup {
8135 #[inline]
8136 pub fn expr(&self) -> Option<Expr> {
8137 support::child(&self.syntax)
8138 }
8139 #[inline]
8140 pub fn rollup_token(&self) -> Option<SyntaxToken> {
8141 support::token(&self.syntax, SyntaxKind::ROLLUP_KW)
8142 }
8143}
8144
8145#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8146pub struct GroupingSets {
8147 pub(crate) syntax: SyntaxNode,
8148}
8149impl GroupingSets {
8150 #[inline]
8151 pub fn expr(&self) -> Option<Expr> {
8152 support::child(&self.syntax)
8153 }
8154 #[inline]
8155 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
8156 support::token(&self.syntax, SyntaxKind::L_PAREN)
8157 }
8158 #[inline]
8159 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
8160 support::token(&self.syntax, SyntaxKind::R_PAREN)
8161 }
8162 #[inline]
8163 pub fn grouping_token(&self) -> Option<SyntaxToken> {
8164 support::token(&self.syntax, SyntaxKind::GROUPING_KW)
8165 }
8166 #[inline]
8167 pub fn sets_token(&self) -> Option<SyntaxToken> {
8168 support::token(&self.syntax, SyntaxKind::SETS_KW)
8169 }
8170}
8171
8172#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8173pub struct Gteq {
8174 pub(crate) syntax: SyntaxNode,
8175}
8176impl Gteq {
8177 #[inline]
8178 pub fn eq_token(&self) -> Option<SyntaxToken> {
8179 support::token(&self.syntax, SyntaxKind::EQ)
8180 }
8181 #[inline]
8182 pub fn r_angle_token(&self) -> Option<SyntaxToken> {
8183 support::token(&self.syntax, SyntaxKind::R_ANGLE)
8184 }
8185}
8186
8187#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8188pub struct HandlerClause {
8189 pub(crate) syntax: SyntaxNode,
8190}
8191impl HandlerClause {
8192 #[inline]
8193 pub fn path(&self) -> Option<Path> {
8194 support::child(&self.syntax)
8195 }
8196 #[inline]
8197 pub fn handler_token(&self) -> Option<SyntaxToken> {
8198 support::token(&self.syntax, SyntaxKind::HANDLER_KW)
8199 }
8200}
8201
8202#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8203pub struct HavingClause {
8204 pub(crate) syntax: SyntaxNode,
8205}
8206impl HavingClause {
8207 #[inline]
8208 pub fn expr(&self) -> Option<Expr> {
8209 support::child(&self.syntax)
8210 }
8211 #[inline]
8212 pub fn having_token(&self) -> Option<SyntaxToken> {
8213 support::token(&self.syntax, SyntaxKind::HAVING_KW)
8214 }
8215}
8216
8217#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8218pub struct IfExists {
8219 pub(crate) syntax: SyntaxNode,
8220}
8221impl IfExists {
8222 #[inline]
8223 pub fn exists_token(&self) -> Option<SyntaxToken> {
8224 support::token(&self.syntax, SyntaxKind::EXISTS_KW)
8225 }
8226 #[inline]
8227 pub fn if_token(&self) -> Option<SyntaxToken> {
8228 support::token(&self.syntax, SyntaxKind::IF_KW)
8229 }
8230}
8231
8232#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8233pub struct IfNotExists {
8234 pub(crate) syntax: SyntaxNode,
8235}
8236impl IfNotExists {
8237 #[inline]
8238 pub fn exists_token(&self) -> Option<SyntaxToken> {
8239 support::token(&self.syntax, SyntaxKind::EXISTS_KW)
8240 }
8241 #[inline]
8242 pub fn if_token(&self) -> Option<SyntaxToken> {
8243 support::token(&self.syntax, SyntaxKind::IF_KW)
8244 }
8245 #[inline]
8246 pub fn not_token(&self) -> Option<SyntaxToken> {
8247 support::token(&self.syntax, SyntaxKind::NOT_KW)
8248 }
8249}
8250
8251#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8252pub struct ImportForeignSchema {
8253 pub(crate) syntax: SyntaxNode,
8254}
8255impl ImportForeignSchema {
8256 #[inline]
8257 pub fn alter_option_list(&self) -> Option<AlterOptionList> {
8258 support::child(&self.syntax)
8259 }
8260 #[inline]
8261 pub fn except_tables(&self) -> Option<ExceptTables> {
8262 support::child(&self.syntax)
8263 }
8264 #[inline]
8265 pub fn into_schema(&self) -> Option<IntoSchema> {
8266 support::child(&self.syntax)
8267 }
8268 #[inline]
8269 pub fn limit_to_tables(&self) -> Option<LimitToTables> {
8270 support::child(&self.syntax)
8271 }
8272 #[inline]
8273 pub fn name_ref(&self) -> Option<NameRef> {
8274 support::child(&self.syntax)
8275 }
8276 #[inline]
8277 pub fn server_name(&self) -> Option<ServerName> {
8278 support::child(&self.syntax)
8279 }
8280 #[inline]
8281 pub fn foreign_token(&self) -> Option<SyntaxToken> {
8282 support::token(&self.syntax, SyntaxKind::FOREIGN_KW)
8283 }
8284 #[inline]
8285 pub fn from_token(&self) -> Option<SyntaxToken> {
8286 support::token(&self.syntax, SyntaxKind::FROM_KW)
8287 }
8288 #[inline]
8289 pub fn import_token(&self) -> Option<SyntaxToken> {
8290 support::token(&self.syntax, SyntaxKind::IMPORT_KW)
8291 }
8292 #[inline]
8293 pub fn schema_token(&self) -> Option<SyntaxToken> {
8294 support::token(&self.syntax, SyntaxKind::SCHEMA_KW)
8295 }
8296}
8297
8298#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8299pub struct IndexExpr {
8300 pub(crate) syntax: SyntaxNode,
8301}
8302impl IndexExpr {
8303 #[inline]
8304 pub fn l_brack_token(&self) -> Option<SyntaxToken> {
8305 support::token(&self.syntax, SyntaxKind::L_BRACK)
8306 }
8307 #[inline]
8308 pub fn r_brack_token(&self) -> Option<SyntaxToken> {
8309 support::token(&self.syntax, SyntaxKind::R_BRACK)
8310 }
8311}
8312
8313#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8314pub struct Inherit {
8315 pub(crate) syntax: SyntaxNode,
8316}
8317impl Inherit {
8318 #[inline]
8319 pub fn path(&self) -> Option<Path> {
8320 support::child(&self.syntax)
8321 }
8322 #[inline]
8323 pub fn inherit_token(&self) -> Option<SyntaxToken> {
8324 support::token(&self.syntax, SyntaxKind::INHERIT_KW)
8325 }
8326}
8327
8328#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8329pub struct InheritTable {
8330 pub(crate) syntax: SyntaxNode,
8331}
8332impl InheritTable {
8333 #[inline]
8334 pub fn path(&self) -> Option<Path> {
8335 support::child(&self.syntax)
8336 }
8337 #[inline]
8338 pub fn inherit_token(&self) -> Option<SyntaxToken> {
8339 support::token(&self.syntax, SyntaxKind::INHERIT_KW)
8340 }
8341}
8342
8343#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8344pub struct Inherits {
8345 pub(crate) syntax: SyntaxNode,
8346}
8347impl Inherits {
8348 #[inline]
8349 pub fn paths(&self) -> AstChildren<Path> {
8350 support::children(&self.syntax)
8351 }
8352 #[inline]
8353 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
8354 support::token(&self.syntax, SyntaxKind::L_PAREN)
8355 }
8356 #[inline]
8357 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
8358 support::token(&self.syntax, SyntaxKind::R_PAREN)
8359 }
8360 #[inline]
8361 pub fn inherits_token(&self) -> Option<SyntaxToken> {
8362 support::token(&self.syntax, SyntaxKind::INHERITS_KW)
8363 }
8364}
8365
8366#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8367pub struct InitiallyDeferredConstraintOption {
8368 pub(crate) syntax: SyntaxNode,
8369}
8370impl InitiallyDeferredConstraintOption {
8371 #[inline]
8372 pub fn deferred_token(&self) -> Option<SyntaxToken> {
8373 support::token(&self.syntax, SyntaxKind::DEFERRED_KW)
8374 }
8375 #[inline]
8376 pub fn initially_token(&self) -> Option<SyntaxToken> {
8377 support::token(&self.syntax, SyntaxKind::INITIALLY_KW)
8378 }
8379}
8380
8381#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8382pub struct InitiallyImmediateConstraintOption {
8383 pub(crate) syntax: SyntaxNode,
8384}
8385impl InitiallyImmediateConstraintOption {
8386 #[inline]
8387 pub fn immediate_token(&self) -> Option<SyntaxToken> {
8388 support::token(&self.syntax, SyntaxKind::IMMEDIATE_KW)
8389 }
8390 #[inline]
8391 pub fn initially_token(&self) -> Option<SyntaxToken> {
8392 support::token(&self.syntax, SyntaxKind::INITIALLY_KW)
8393 }
8394}
8395
8396#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8397pub struct Insert {
8398 pub(crate) syntax: SyntaxNode,
8399}
8400impl Insert {
8401 #[inline]
8402 pub fn alias(&self) -> Option<Alias> {
8403 support::child(&self.syntax)
8404 }
8405 #[inline]
8406 pub fn column_list(&self) -> Option<ColumnList> {
8407 support::child(&self.syntax)
8408 }
8409 #[inline]
8410 pub fn on_conflict_clause(&self) -> Option<OnConflictClause> {
8411 support::child(&self.syntax)
8412 }
8413 #[inline]
8414 pub fn path(&self) -> Option<Path> {
8415 support::child(&self.syntax)
8416 }
8417 #[inline]
8418 pub fn returning_clause(&self) -> Option<ReturningClause> {
8419 support::child(&self.syntax)
8420 }
8421 #[inline]
8422 pub fn stmt(&self) -> Option<Stmt> {
8423 support::child(&self.syntax)
8424 }
8425 #[inline]
8426 pub fn values(&self) -> Option<Values> {
8427 support::child(&self.syntax)
8428 }
8429 #[inline]
8430 pub fn with_clause(&self) -> Option<WithClause> {
8431 support::child(&self.syntax)
8432 }
8433 #[inline]
8434 pub fn default_token(&self) -> Option<SyntaxToken> {
8435 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
8436 }
8437 #[inline]
8438 pub fn insert_token(&self) -> Option<SyntaxToken> {
8439 support::token(&self.syntax, SyntaxKind::INSERT_KW)
8440 }
8441 #[inline]
8442 pub fn into_token(&self) -> Option<SyntaxToken> {
8443 support::token(&self.syntax, SyntaxKind::INTO_KW)
8444 }
8445 #[inline]
8446 pub fn overriding_token(&self) -> Option<SyntaxToken> {
8447 support::token(&self.syntax, SyntaxKind::OVERRIDING_KW)
8448 }
8449 #[inline]
8450 pub fn system_token(&self) -> Option<SyntaxToken> {
8451 support::token(&self.syntax, SyntaxKind::SYSTEM_KW)
8452 }
8453 #[inline]
8454 pub fn user_token(&self) -> Option<SyntaxToken> {
8455 support::token(&self.syntax, SyntaxKind::USER_KW)
8456 }
8457 #[inline]
8458 pub fn value_token(&self) -> Option<SyntaxToken> {
8459 support::token(&self.syntax, SyntaxKind::VALUE_KW)
8460 }
8461 #[inline]
8462 pub fn values_token(&self) -> Option<SyntaxToken> {
8463 support::token(&self.syntax, SyntaxKind::VALUES_KW)
8464 }
8465}
8466
8467#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8468pub struct IntervalType {
8469 pub(crate) syntax: SyntaxNode,
8470}
8471impl IntervalType {
8472 #[inline]
8473 pub fn literal(&self) -> Option<Literal> {
8474 support::child(&self.syntax)
8475 }
8476 #[inline]
8477 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
8478 support::token(&self.syntax, SyntaxKind::L_PAREN)
8479 }
8480 #[inline]
8481 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
8482 support::token(&self.syntax, SyntaxKind::R_PAREN)
8483 }
8484 #[inline]
8485 pub fn day_token(&self) -> Option<SyntaxToken> {
8486 support::token(&self.syntax, SyntaxKind::DAY_KW)
8487 }
8488 #[inline]
8489 pub fn hour_token(&self) -> Option<SyntaxToken> {
8490 support::token(&self.syntax, SyntaxKind::HOUR_KW)
8491 }
8492 #[inline]
8493 pub fn interval_token(&self) -> Option<SyntaxToken> {
8494 support::token(&self.syntax, SyntaxKind::INTERVAL_KW)
8495 }
8496 #[inline]
8497 pub fn minute_token(&self) -> Option<SyntaxToken> {
8498 support::token(&self.syntax, SyntaxKind::MINUTE_KW)
8499 }
8500 #[inline]
8501 pub fn month_token(&self) -> Option<SyntaxToken> {
8502 support::token(&self.syntax, SyntaxKind::MONTH_KW)
8503 }
8504 #[inline]
8505 pub fn second_token(&self) -> Option<SyntaxToken> {
8506 support::token(&self.syntax, SyntaxKind::SECOND_KW)
8507 }
8508 #[inline]
8509 pub fn to_token(&self) -> Option<SyntaxToken> {
8510 support::token(&self.syntax, SyntaxKind::TO_KW)
8511 }
8512 #[inline]
8513 pub fn year_token(&self) -> Option<SyntaxToken> {
8514 support::token(&self.syntax, SyntaxKind::YEAR_KW)
8515 }
8516}
8517
8518#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8519pub struct IntoClause {
8520 pub(crate) syntax: SyntaxNode,
8521}
8522impl IntoClause {
8523 #[inline]
8524 pub fn path(&self) -> Option<Path> {
8525 support::child(&self.syntax)
8526 }
8527 #[inline]
8528 pub fn into_token(&self) -> Option<SyntaxToken> {
8529 support::token(&self.syntax, SyntaxKind::INTO_KW)
8530 }
8531}
8532
8533#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8534pub struct IntoSchema {
8535 pub(crate) syntax: SyntaxNode,
8536}
8537impl IntoSchema {
8538 #[inline]
8539 pub fn name_ref(&self) -> Option<NameRef> {
8540 support::child(&self.syntax)
8541 }
8542 #[inline]
8543 pub fn into_token(&self) -> Option<SyntaxToken> {
8544 support::token(&self.syntax, SyntaxKind::INTO_KW)
8545 }
8546}
8547
8548#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8549pub struct IsDistinctFrom {
8550 pub(crate) syntax: SyntaxNode,
8551}
8552impl IsDistinctFrom {
8553 #[inline]
8554 pub fn distinct_token(&self) -> Option<SyntaxToken> {
8555 support::token(&self.syntax, SyntaxKind::DISTINCT_KW)
8556 }
8557 #[inline]
8558 pub fn from_token(&self) -> Option<SyntaxToken> {
8559 support::token(&self.syntax, SyntaxKind::FROM_KW)
8560 }
8561 #[inline]
8562 pub fn is_token(&self) -> Option<SyntaxToken> {
8563 support::token(&self.syntax, SyntaxKind::IS_KW)
8564 }
8565}
8566
8567#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8568pub struct IsJson {
8569 pub(crate) syntax: SyntaxNode,
8570}
8571impl IsJson {
8572 #[inline]
8573 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
8574 support::child(&self.syntax)
8575 }
8576 #[inline]
8577 pub fn is_token(&self) -> Option<SyntaxToken> {
8578 support::token(&self.syntax, SyntaxKind::IS_KW)
8579 }
8580 #[inline]
8581 pub fn json_token(&self) -> Option<SyntaxToken> {
8582 support::token(&self.syntax, SyntaxKind::JSON_KW)
8583 }
8584}
8585
8586#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8587pub struct IsJsonArray {
8588 pub(crate) syntax: SyntaxNode,
8589}
8590impl IsJsonArray {
8591 #[inline]
8592 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
8593 support::child(&self.syntax)
8594 }
8595 #[inline]
8596 pub fn array_token(&self) -> Option<SyntaxToken> {
8597 support::token(&self.syntax, SyntaxKind::ARRAY_KW)
8598 }
8599 #[inline]
8600 pub fn is_token(&self) -> Option<SyntaxToken> {
8601 support::token(&self.syntax, SyntaxKind::IS_KW)
8602 }
8603 #[inline]
8604 pub fn json_token(&self) -> Option<SyntaxToken> {
8605 support::token(&self.syntax, SyntaxKind::JSON_KW)
8606 }
8607}
8608
8609#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8610pub struct IsJsonObject {
8611 pub(crate) syntax: SyntaxNode,
8612}
8613impl IsJsonObject {
8614 #[inline]
8615 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
8616 support::child(&self.syntax)
8617 }
8618 #[inline]
8619 pub fn is_token(&self) -> Option<SyntaxToken> {
8620 support::token(&self.syntax, SyntaxKind::IS_KW)
8621 }
8622 #[inline]
8623 pub fn json_token(&self) -> Option<SyntaxToken> {
8624 support::token(&self.syntax, SyntaxKind::JSON_KW)
8625 }
8626 #[inline]
8627 pub fn object_token(&self) -> Option<SyntaxToken> {
8628 support::token(&self.syntax, SyntaxKind::OBJECT_KW)
8629 }
8630}
8631
8632#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8633pub struct IsJsonScalar {
8634 pub(crate) syntax: SyntaxNode,
8635}
8636impl IsJsonScalar {
8637 #[inline]
8638 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
8639 support::child(&self.syntax)
8640 }
8641 #[inline]
8642 pub fn is_token(&self) -> Option<SyntaxToken> {
8643 support::token(&self.syntax, SyntaxKind::IS_KW)
8644 }
8645 #[inline]
8646 pub fn json_token(&self) -> Option<SyntaxToken> {
8647 support::token(&self.syntax, SyntaxKind::JSON_KW)
8648 }
8649 #[inline]
8650 pub fn scalar_token(&self) -> Option<SyntaxToken> {
8651 support::token(&self.syntax, SyntaxKind::SCALAR_KW)
8652 }
8653}
8654
8655#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8656pub struct IsJsonValue {
8657 pub(crate) syntax: SyntaxNode,
8658}
8659impl IsJsonValue {
8660 #[inline]
8661 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
8662 support::child(&self.syntax)
8663 }
8664 #[inline]
8665 pub fn is_token(&self) -> Option<SyntaxToken> {
8666 support::token(&self.syntax, SyntaxKind::IS_KW)
8667 }
8668 #[inline]
8669 pub fn json_token(&self) -> Option<SyntaxToken> {
8670 support::token(&self.syntax, SyntaxKind::JSON_KW)
8671 }
8672 #[inline]
8673 pub fn value_token(&self) -> Option<SyntaxToken> {
8674 support::token(&self.syntax, SyntaxKind::VALUE_KW)
8675 }
8676}
8677
8678#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8679pub struct IsNormalized {
8680 pub(crate) syntax: SyntaxNode,
8681}
8682impl IsNormalized {
8683 #[inline]
8684 pub fn unicode_normal_form(&self) -> Option<UnicodeNormalForm> {
8685 support::child(&self.syntax)
8686 }
8687 #[inline]
8688 pub fn is_token(&self) -> Option<SyntaxToken> {
8689 support::token(&self.syntax, SyntaxKind::IS_KW)
8690 }
8691 #[inline]
8692 pub fn normalized_token(&self) -> Option<SyntaxToken> {
8693 support::token(&self.syntax, SyntaxKind::NORMALIZED_KW)
8694 }
8695}
8696
8697#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8698pub struct IsNot {
8699 pub(crate) syntax: SyntaxNode,
8700}
8701impl IsNot {
8702 #[inline]
8703 pub fn is_token(&self) -> Option<SyntaxToken> {
8704 support::token(&self.syntax, SyntaxKind::IS_KW)
8705 }
8706 #[inline]
8707 pub fn not_token(&self) -> Option<SyntaxToken> {
8708 support::token(&self.syntax, SyntaxKind::NOT_KW)
8709 }
8710}
8711
8712#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8713pub struct IsNotDistinctFrom {
8714 pub(crate) syntax: SyntaxNode,
8715}
8716impl IsNotDistinctFrom {
8717 #[inline]
8718 pub fn distinct_token(&self) -> Option<SyntaxToken> {
8719 support::token(&self.syntax, SyntaxKind::DISTINCT_KW)
8720 }
8721 #[inline]
8722 pub fn from_token(&self) -> Option<SyntaxToken> {
8723 support::token(&self.syntax, SyntaxKind::FROM_KW)
8724 }
8725 #[inline]
8726 pub fn is_token(&self) -> Option<SyntaxToken> {
8727 support::token(&self.syntax, SyntaxKind::IS_KW)
8728 }
8729 #[inline]
8730 pub fn not_token(&self) -> Option<SyntaxToken> {
8731 support::token(&self.syntax, SyntaxKind::NOT_KW)
8732 }
8733}
8734
8735#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8736pub struct IsNotJson {
8737 pub(crate) syntax: SyntaxNode,
8738}
8739impl IsNotJson {
8740 #[inline]
8741 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
8742 support::child(&self.syntax)
8743 }
8744 #[inline]
8745 pub fn is_token(&self) -> Option<SyntaxToken> {
8746 support::token(&self.syntax, SyntaxKind::IS_KW)
8747 }
8748 #[inline]
8749 pub fn json_token(&self) -> Option<SyntaxToken> {
8750 support::token(&self.syntax, SyntaxKind::JSON_KW)
8751 }
8752 #[inline]
8753 pub fn not_token(&self) -> Option<SyntaxToken> {
8754 support::token(&self.syntax, SyntaxKind::NOT_KW)
8755 }
8756}
8757
8758#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8759pub struct IsNotJsonArray {
8760 pub(crate) syntax: SyntaxNode,
8761}
8762impl IsNotJsonArray {
8763 #[inline]
8764 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
8765 support::child(&self.syntax)
8766 }
8767 #[inline]
8768 pub fn array_token(&self) -> Option<SyntaxToken> {
8769 support::token(&self.syntax, SyntaxKind::ARRAY_KW)
8770 }
8771 #[inline]
8772 pub fn is_token(&self) -> Option<SyntaxToken> {
8773 support::token(&self.syntax, SyntaxKind::IS_KW)
8774 }
8775 #[inline]
8776 pub fn json_token(&self) -> Option<SyntaxToken> {
8777 support::token(&self.syntax, SyntaxKind::JSON_KW)
8778 }
8779 #[inline]
8780 pub fn not_token(&self) -> Option<SyntaxToken> {
8781 support::token(&self.syntax, SyntaxKind::NOT_KW)
8782 }
8783}
8784
8785#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8786pub struct IsNotJsonObject {
8787 pub(crate) syntax: SyntaxNode,
8788}
8789impl IsNotJsonObject {
8790 #[inline]
8791 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
8792 support::child(&self.syntax)
8793 }
8794 #[inline]
8795 pub fn is_token(&self) -> Option<SyntaxToken> {
8796 support::token(&self.syntax, SyntaxKind::IS_KW)
8797 }
8798 #[inline]
8799 pub fn json_token(&self) -> Option<SyntaxToken> {
8800 support::token(&self.syntax, SyntaxKind::JSON_KW)
8801 }
8802 #[inline]
8803 pub fn not_token(&self) -> Option<SyntaxToken> {
8804 support::token(&self.syntax, SyntaxKind::NOT_KW)
8805 }
8806 #[inline]
8807 pub fn object_token(&self) -> Option<SyntaxToken> {
8808 support::token(&self.syntax, SyntaxKind::OBJECT_KW)
8809 }
8810}
8811
8812#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8813pub struct IsNotJsonScalar {
8814 pub(crate) syntax: SyntaxNode,
8815}
8816impl IsNotJsonScalar {
8817 #[inline]
8818 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
8819 support::child(&self.syntax)
8820 }
8821 #[inline]
8822 pub fn is_token(&self) -> Option<SyntaxToken> {
8823 support::token(&self.syntax, SyntaxKind::IS_KW)
8824 }
8825 #[inline]
8826 pub fn json_token(&self) -> Option<SyntaxToken> {
8827 support::token(&self.syntax, SyntaxKind::JSON_KW)
8828 }
8829 #[inline]
8830 pub fn not_token(&self) -> Option<SyntaxToken> {
8831 support::token(&self.syntax, SyntaxKind::NOT_KW)
8832 }
8833 #[inline]
8834 pub fn scalar_token(&self) -> Option<SyntaxToken> {
8835 support::token(&self.syntax, SyntaxKind::SCALAR_KW)
8836 }
8837}
8838
8839#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8840pub struct IsNotJsonValue {
8841 pub(crate) syntax: SyntaxNode,
8842}
8843impl IsNotJsonValue {
8844 #[inline]
8845 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
8846 support::child(&self.syntax)
8847 }
8848 #[inline]
8849 pub fn is_token(&self) -> Option<SyntaxToken> {
8850 support::token(&self.syntax, SyntaxKind::IS_KW)
8851 }
8852 #[inline]
8853 pub fn json_token(&self) -> Option<SyntaxToken> {
8854 support::token(&self.syntax, SyntaxKind::JSON_KW)
8855 }
8856 #[inline]
8857 pub fn not_token(&self) -> Option<SyntaxToken> {
8858 support::token(&self.syntax, SyntaxKind::NOT_KW)
8859 }
8860 #[inline]
8861 pub fn value_token(&self) -> Option<SyntaxToken> {
8862 support::token(&self.syntax, SyntaxKind::VALUE_KW)
8863 }
8864}
8865
8866#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8867pub struct IsNotNormalized {
8868 pub(crate) syntax: SyntaxNode,
8869}
8870impl IsNotNormalized {
8871 #[inline]
8872 pub fn unicode_normal_form(&self) -> Option<UnicodeNormalForm> {
8873 support::child(&self.syntax)
8874 }
8875 #[inline]
8876 pub fn is_token(&self) -> Option<SyntaxToken> {
8877 support::token(&self.syntax, SyntaxKind::IS_KW)
8878 }
8879 #[inline]
8880 pub fn normalized_token(&self) -> Option<SyntaxToken> {
8881 support::token(&self.syntax, SyntaxKind::NORMALIZED_KW)
8882 }
8883 #[inline]
8884 pub fn not_token(&self) -> Option<SyntaxToken> {
8885 support::token(&self.syntax, SyntaxKind::NOT_KW)
8886 }
8887}
8888
8889#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8890pub struct Join {
8891 pub(crate) syntax: SyntaxNode,
8892}
8893impl Join {
8894 #[inline]
8895 pub fn from_item(&self) -> Option<FromItem> {
8896 support::child(&self.syntax)
8897 }
8898 #[inline]
8899 pub fn join_type(&self) -> Option<JoinType> {
8900 support::child(&self.syntax)
8901 }
8902 #[inline]
8903 pub fn on_clause(&self) -> Option<OnClause> {
8904 support::child(&self.syntax)
8905 }
8906 #[inline]
8907 pub fn using_clause(&self) -> Option<JoinUsingClause> {
8908 support::child(&self.syntax)
8909 }
8910 #[inline]
8911 pub fn natural_token(&self) -> Option<SyntaxToken> {
8912 support::token(&self.syntax, SyntaxKind::NATURAL_KW)
8913 }
8914}
8915
8916#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8917pub struct JoinCross {
8918 pub(crate) syntax: SyntaxNode,
8919}
8920impl JoinCross {
8921 #[inline]
8922 pub fn cross_token(&self) -> Option<SyntaxToken> {
8923 support::token(&self.syntax, SyntaxKind::CROSS_KW)
8924 }
8925 #[inline]
8926 pub fn join_token(&self) -> Option<SyntaxToken> {
8927 support::token(&self.syntax, SyntaxKind::JOIN_KW)
8928 }
8929}
8930
8931#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8932pub struct JoinExpr {
8933 pub(crate) syntax: SyntaxNode,
8934}
8935impl JoinExpr {
8936 #[inline]
8937 pub fn from_item(&self) -> Option<FromItem> {
8938 support::child(&self.syntax)
8939 }
8940 #[inline]
8941 pub fn join(&self) -> Option<Join> {
8942 support::child(&self.syntax)
8943 }
8944 #[inline]
8945 pub fn join_expr(&self) -> Option<JoinExpr> {
8946 support::child(&self.syntax)
8947 }
8948}
8949
8950#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8951pub struct JoinFull {
8952 pub(crate) syntax: SyntaxNode,
8953}
8954impl JoinFull {
8955 #[inline]
8956 pub fn full_token(&self) -> Option<SyntaxToken> {
8957 support::token(&self.syntax, SyntaxKind::FULL_KW)
8958 }
8959 #[inline]
8960 pub fn join_token(&self) -> Option<SyntaxToken> {
8961 support::token(&self.syntax, SyntaxKind::JOIN_KW)
8962 }
8963 #[inline]
8964 pub fn outer_token(&self) -> Option<SyntaxToken> {
8965 support::token(&self.syntax, SyntaxKind::OUTER_KW)
8966 }
8967}
8968
8969#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8970pub struct JoinInner {
8971 pub(crate) syntax: SyntaxNode,
8972}
8973impl JoinInner {
8974 #[inline]
8975 pub fn inner_token(&self) -> Option<SyntaxToken> {
8976 support::token(&self.syntax, SyntaxKind::INNER_KW)
8977 }
8978 #[inline]
8979 pub fn join_token(&self) -> Option<SyntaxToken> {
8980 support::token(&self.syntax, SyntaxKind::JOIN_KW)
8981 }
8982}
8983
8984#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8985pub struct JoinLeft {
8986 pub(crate) syntax: SyntaxNode,
8987}
8988impl JoinLeft {
8989 #[inline]
8990 pub fn join_token(&self) -> Option<SyntaxToken> {
8991 support::token(&self.syntax, SyntaxKind::JOIN_KW)
8992 }
8993 #[inline]
8994 pub fn left_token(&self) -> Option<SyntaxToken> {
8995 support::token(&self.syntax, SyntaxKind::LEFT_KW)
8996 }
8997 #[inline]
8998 pub fn outer_token(&self) -> Option<SyntaxToken> {
8999 support::token(&self.syntax, SyntaxKind::OUTER_KW)
9000 }
9001}
9002
9003#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9004pub struct JoinRight {
9005 pub(crate) syntax: SyntaxNode,
9006}
9007impl JoinRight {
9008 #[inline]
9009 pub fn join_token(&self) -> Option<SyntaxToken> {
9010 support::token(&self.syntax, SyntaxKind::JOIN_KW)
9011 }
9012 #[inline]
9013 pub fn outer_token(&self) -> Option<SyntaxToken> {
9014 support::token(&self.syntax, SyntaxKind::OUTER_KW)
9015 }
9016 #[inline]
9017 pub fn right_token(&self) -> Option<SyntaxToken> {
9018 support::token(&self.syntax, SyntaxKind::RIGHT_KW)
9019 }
9020}
9021
9022#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9023pub struct JoinUsingClause {
9024 pub(crate) syntax: SyntaxNode,
9025}
9026impl JoinUsingClause {
9027 #[inline]
9028 pub fn alias(&self) -> Option<Alias> {
9029 support::child(&self.syntax)
9030 }
9031 #[inline]
9032 pub fn column_list(&self) -> Option<ColumnList> {
9033 support::child(&self.syntax)
9034 }
9035 #[inline]
9036 pub fn using_token(&self) -> Option<SyntaxToken> {
9037 support::token(&self.syntax, SyntaxKind::USING_KW)
9038 }
9039}
9040
9041#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9042pub struct JsonArrayAggFn {
9043 pub(crate) syntax: SyntaxNode,
9044}
9045impl JsonArrayAggFn {
9046 #[inline]
9047 pub fn expr(&self) -> Option<Expr> {
9048 support::child(&self.syntax)
9049 }
9050 #[inline]
9051 pub fn json_null_clause(&self) -> Option<JsonNullClause> {
9052 support::child(&self.syntax)
9053 }
9054 #[inline]
9055 pub fn json_returning_clause(&self) -> Option<JsonReturningClause> {
9056 support::child(&self.syntax)
9057 }
9058 #[inline]
9059 pub fn json_select_formats(&self) -> AstChildren<JsonSelectFormat> {
9060 support::children(&self.syntax)
9061 }
9062 #[inline]
9063 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
9064 support::token(&self.syntax, SyntaxKind::L_PAREN)
9065 }
9066 #[inline]
9067 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
9068 support::token(&self.syntax, SyntaxKind::R_PAREN)
9069 }
9070 #[inline]
9071 pub fn json_arrayagg_token(&self) -> Option<SyntaxToken> {
9072 support::token(&self.syntax, SyntaxKind::JSON_ARRAYAGG_KW)
9073 }
9074}
9075
9076#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9077pub struct JsonArrayFn {
9078 pub(crate) syntax: SyntaxNode,
9079}
9080impl JsonArrayFn {
9081 #[inline]
9082 pub fn json_expr_formats(&self) -> AstChildren<JsonExprFormat> {
9083 support::children(&self.syntax)
9084 }
9085 #[inline]
9086 pub fn json_null_clause(&self) -> Option<JsonNullClause> {
9087 support::child(&self.syntax)
9088 }
9089 #[inline]
9090 pub fn json_returning_clause(&self) -> Option<JsonReturningClause> {
9091 support::child(&self.syntax)
9092 }
9093 #[inline]
9094 pub fn json_select_formats(&self) -> AstChildren<JsonSelectFormat> {
9095 support::children(&self.syntax)
9096 }
9097 #[inline]
9098 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
9099 support::token(&self.syntax, SyntaxKind::L_PAREN)
9100 }
9101 #[inline]
9102 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
9103 support::token(&self.syntax, SyntaxKind::R_PAREN)
9104 }
9105 #[inline]
9106 pub fn json_array_token(&self) -> Option<SyntaxToken> {
9107 support::token(&self.syntax, SyntaxKind::JSON_ARRAY_KW)
9108 }
9109}
9110
9111#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9112pub struct JsonBehaviorClause {
9113 pub(crate) syntax: SyntaxNode,
9114}
9115impl JsonBehaviorClause {
9116 #[inline]
9117 pub fn json_behavior(&self) -> Option<JsonBehavior> {
9118 support::child(&self.syntax)
9119 }
9120}
9121
9122#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9123pub struct JsonBehaviorDefault {
9124 pub(crate) syntax: SyntaxNode,
9125}
9126impl JsonBehaviorDefault {
9127 #[inline]
9128 pub fn expr(&self) -> Option<Expr> {
9129 support::child(&self.syntax)
9130 }
9131 #[inline]
9132 pub fn default_token(&self) -> Option<SyntaxToken> {
9133 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
9134 }
9135}
9136
9137#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9138pub struct JsonBehaviorEmptyArray {
9139 pub(crate) syntax: SyntaxNode,
9140}
9141impl JsonBehaviorEmptyArray {
9142 #[inline]
9143 pub fn array_token(&self) -> Option<SyntaxToken> {
9144 support::token(&self.syntax, SyntaxKind::ARRAY_KW)
9145 }
9146 #[inline]
9147 pub fn empty_token(&self) -> Option<SyntaxToken> {
9148 support::token(&self.syntax, SyntaxKind::EMPTY_KW)
9149 }
9150}
9151
9152#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9153pub struct JsonBehaviorEmptyObject {
9154 pub(crate) syntax: SyntaxNode,
9155}
9156impl JsonBehaviorEmptyObject {
9157 #[inline]
9158 pub fn empty_token(&self) -> Option<SyntaxToken> {
9159 support::token(&self.syntax, SyntaxKind::EMPTY_KW)
9160 }
9161 #[inline]
9162 pub fn object_token(&self) -> Option<SyntaxToken> {
9163 support::token(&self.syntax, SyntaxKind::OBJECT_KW)
9164 }
9165}
9166
9167#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9168pub struct JsonBehaviorError {
9169 pub(crate) syntax: SyntaxNode,
9170}
9171impl JsonBehaviorError {
9172 #[inline]
9173 pub fn error_token(&self) -> Option<SyntaxToken> {
9174 support::token(&self.syntax, SyntaxKind::ERROR_KW)
9175 }
9176}
9177
9178#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9179pub struct JsonBehaviorFalse {
9180 pub(crate) syntax: SyntaxNode,
9181}
9182impl JsonBehaviorFalse {
9183 #[inline]
9184 pub fn false_token(&self) -> Option<SyntaxToken> {
9185 support::token(&self.syntax, SyntaxKind::FALSE_KW)
9186 }
9187}
9188
9189#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9190pub struct JsonBehaviorNull {
9191 pub(crate) syntax: SyntaxNode,
9192}
9193impl JsonBehaviorNull {
9194 #[inline]
9195 pub fn null_token(&self) -> Option<SyntaxToken> {
9196 support::token(&self.syntax, SyntaxKind::NULL_KW)
9197 }
9198}
9199
9200#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9201pub struct JsonBehaviorTrue {
9202 pub(crate) syntax: SyntaxNode,
9203}
9204impl JsonBehaviorTrue {
9205 #[inline]
9206 pub fn true_token(&self) -> Option<SyntaxToken> {
9207 support::token(&self.syntax, SyntaxKind::TRUE_KW)
9208 }
9209}
9210
9211#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9212pub struct JsonBehaviorUnknown {
9213 pub(crate) syntax: SyntaxNode,
9214}
9215impl JsonBehaviorUnknown {
9216 #[inline]
9217 pub fn unknown_token(&self) -> Option<SyntaxToken> {
9218 support::token(&self.syntax, SyntaxKind::UNKNOWN_KW)
9219 }
9220}
9221
9222#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9223pub struct JsonEncodingClause {
9224 pub(crate) syntax: SyntaxNode,
9225}
9226impl JsonEncodingClause {
9227 #[inline]
9228 pub fn name_ref(&self) -> Option<NameRef> {
9229 support::child(&self.syntax)
9230 }
9231 #[inline]
9232 pub fn encoding_token(&self) -> Option<SyntaxToken> {
9233 support::token(&self.syntax, SyntaxKind::ENCODING_KW)
9234 }
9235}
9236
9237#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9238pub struct JsonExistsFn {
9239 pub(crate) syntax: SyntaxNode,
9240}
9241impl JsonExistsFn {
9242 #[inline]
9243 pub fn expr(&self) -> Option<Expr> {
9244 support::child(&self.syntax)
9245 }
9246 #[inline]
9247 pub fn json_format_clause(&self) -> Option<JsonFormatClause> {
9248 support::child(&self.syntax)
9249 }
9250 #[inline]
9251 pub fn json_on_error_clause(&self) -> Option<JsonOnErrorClause> {
9252 support::child(&self.syntax)
9253 }
9254 #[inline]
9255 pub fn json_passing_clause(&self) -> Option<JsonPassingClause> {
9256 support::child(&self.syntax)
9257 }
9258 #[inline]
9259 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
9260 support::token(&self.syntax, SyntaxKind::L_PAREN)
9261 }
9262 #[inline]
9263 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
9264 support::token(&self.syntax, SyntaxKind::R_PAREN)
9265 }
9266 #[inline]
9267 pub fn comma_token(&self) -> Option<SyntaxToken> {
9268 support::token(&self.syntax, SyntaxKind::COMMA)
9269 }
9270 #[inline]
9271 pub fn json_exists_token(&self) -> Option<SyntaxToken> {
9272 support::token(&self.syntax, SyntaxKind::JSON_EXISTS_KW)
9273 }
9274}
9275
9276#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9277pub struct JsonExprFormat {
9278 pub(crate) syntax: SyntaxNode,
9279}
9280impl JsonExprFormat {
9281 #[inline]
9282 pub fn expr(&self) -> Option<Expr> {
9283 support::child(&self.syntax)
9284 }
9285 #[inline]
9286 pub fn json_format_clause(&self) -> Option<JsonFormatClause> {
9287 support::child(&self.syntax)
9288 }
9289}
9290
9291#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9292pub struct JsonFn {
9293 pub(crate) syntax: SyntaxNode,
9294}
9295impl JsonFn {
9296 #[inline]
9297 pub fn json_expr_format(&self) -> Option<JsonExprFormat> {
9298 support::child(&self.syntax)
9299 }
9300 #[inline]
9301 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
9302 support::child(&self.syntax)
9303 }
9304 #[inline]
9305 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
9306 support::token(&self.syntax, SyntaxKind::L_PAREN)
9307 }
9308 #[inline]
9309 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
9310 support::token(&self.syntax, SyntaxKind::R_PAREN)
9311 }
9312 #[inline]
9313 pub fn json_token(&self) -> Option<SyntaxToken> {
9314 support::token(&self.syntax, SyntaxKind::JSON_KW)
9315 }
9316}
9317
9318#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9319pub struct JsonFormatClause {
9320 pub(crate) syntax: SyntaxNode,
9321}
9322impl JsonFormatClause {
9323 #[inline]
9324 pub fn json_encoding_clause(&self) -> Option<JsonEncodingClause> {
9325 support::child(&self.syntax)
9326 }
9327 #[inline]
9328 pub fn format_token(&self) -> Option<SyntaxToken> {
9329 support::token(&self.syntax, SyntaxKind::FORMAT_KW)
9330 }
9331 #[inline]
9332 pub fn json_token(&self) -> Option<SyntaxToken> {
9333 support::token(&self.syntax, SyntaxKind::JSON_KW)
9334 }
9335}
9336
9337#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9338pub struct JsonKeyValue {
9339 pub(crate) syntax: SyntaxNode,
9340}
9341impl JsonKeyValue {
9342 #[inline]
9343 pub fn expr(&self) -> Option<Expr> {
9344 support::child(&self.syntax)
9345 }
9346 #[inline]
9347 pub fn json_value_expr(&self) -> Option<JsonValueExpr> {
9348 support::child(&self.syntax)
9349 }
9350 #[inline]
9351 pub fn colon_token(&self) -> Option<SyntaxToken> {
9352 support::token(&self.syntax, SyntaxKind::COLON)
9353 }
9354}
9355
9356#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9357pub struct JsonKeysUniqueClause {
9358 pub(crate) syntax: SyntaxNode,
9359}
9360impl JsonKeysUniqueClause {
9361 #[inline]
9362 pub fn keys_token(&self) -> Option<SyntaxToken> {
9363 support::token(&self.syntax, SyntaxKind::KEYS_KW)
9364 }
9365 #[inline]
9366 pub fn unique_token(&self) -> Option<SyntaxToken> {
9367 support::token(&self.syntax, SyntaxKind::UNIQUE_KW)
9368 }
9369 #[inline]
9370 pub fn with_token(&self) -> Option<SyntaxToken> {
9371 support::token(&self.syntax, SyntaxKind::WITH_KW)
9372 }
9373 #[inline]
9374 pub fn without_token(&self) -> Option<SyntaxToken> {
9375 support::token(&self.syntax, SyntaxKind::WITHOUT_KW)
9376 }
9377}
9378
9379#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9380pub struct JsonNullClause {
9381 pub(crate) syntax: SyntaxNode,
9382}
9383impl JsonNullClause {
9384 #[inline]
9385 pub fn absent_token(&self) -> Option<SyntaxToken> {
9386 support::token(&self.syntax, SyntaxKind::ABSENT_KW)
9387 }
9388 #[inline]
9389 pub fn null_token(&self) -> Option<SyntaxToken> {
9390 support::token(&self.syntax, SyntaxKind::NULL_KW)
9391 }
9392 #[inline]
9393 pub fn on_token(&self) -> Option<SyntaxToken> {
9394 support::token(&self.syntax, SyntaxKind::ON_KW)
9395 }
9396}
9397
9398#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9399pub struct JsonObjectAggFn {
9400 pub(crate) syntax: SyntaxNode,
9401}
9402impl JsonObjectAggFn {
9403 #[inline]
9404 pub fn json_key_value(&self) -> Option<JsonKeyValue> {
9405 support::child(&self.syntax)
9406 }
9407 #[inline]
9408 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
9409 support::child(&self.syntax)
9410 }
9411 #[inline]
9412 pub fn json_null_clause(&self) -> Option<JsonNullClause> {
9413 support::child(&self.syntax)
9414 }
9415 #[inline]
9416 pub fn json_returning_clause(&self) -> Option<JsonReturningClause> {
9417 support::child(&self.syntax)
9418 }
9419 #[inline]
9420 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
9421 support::token(&self.syntax, SyntaxKind::L_PAREN)
9422 }
9423 #[inline]
9424 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
9425 support::token(&self.syntax, SyntaxKind::R_PAREN)
9426 }
9427 #[inline]
9428 pub fn json_objectagg_token(&self) -> Option<SyntaxToken> {
9429 support::token(&self.syntax, SyntaxKind::JSON_OBJECTAGG_KW)
9430 }
9431}
9432
9433#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9434pub struct JsonObjectFn {
9435 pub(crate) syntax: SyntaxNode,
9436}
9437impl JsonObjectFn {
9438 #[inline]
9439 pub fn json_key_values(&self) -> AstChildren<JsonKeyValue> {
9440 support::children(&self.syntax)
9441 }
9442 #[inline]
9443 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
9444 support::child(&self.syntax)
9445 }
9446 #[inline]
9447 pub fn json_null_clause(&self) -> Option<JsonNullClause> {
9448 support::child(&self.syntax)
9449 }
9450 #[inline]
9451 pub fn json_returning_clause(&self) -> Option<JsonReturningClause> {
9452 support::child(&self.syntax)
9453 }
9454 #[inline]
9455 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
9456 support::token(&self.syntax, SyntaxKind::L_PAREN)
9457 }
9458 #[inline]
9459 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
9460 support::token(&self.syntax, SyntaxKind::R_PAREN)
9461 }
9462 #[inline]
9463 pub fn json_object_token(&self) -> Option<SyntaxToken> {
9464 support::token(&self.syntax, SyntaxKind::JSON_OBJECT_KW)
9465 }
9466}
9467
9468#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9469pub struct JsonOnEmptyClause {
9470 pub(crate) syntax: SyntaxNode,
9471}
9472impl JsonOnEmptyClause {
9473 #[inline]
9474 pub fn json_behavior(&self) -> Option<JsonBehavior> {
9475 support::child(&self.syntax)
9476 }
9477 #[inline]
9478 pub fn empty_token(&self) -> Option<SyntaxToken> {
9479 support::token(&self.syntax, SyntaxKind::EMPTY_KW)
9480 }
9481 #[inline]
9482 pub fn on_token(&self) -> Option<SyntaxToken> {
9483 support::token(&self.syntax, SyntaxKind::ON_KW)
9484 }
9485}
9486
9487#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9488pub struct JsonOnErrorClause {
9489 pub(crate) syntax: SyntaxNode,
9490}
9491impl JsonOnErrorClause {
9492 #[inline]
9493 pub fn json_behavior(&self) -> Option<JsonBehavior> {
9494 support::child(&self.syntax)
9495 }
9496 #[inline]
9497 pub fn error_token(&self) -> Option<SyntaxToken> {
9498 support::token(&self.syntax, SyntaxKind::ERROR_KW)
9499 }
9500 #[inline]
9501 pub fn on_token(&self) -> Option<SyntaxToken> {
9502 support::token(&self.syntax, SyntaxKind::ON_KW)
9503 }
9504}
9505
9506#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9507pub struct JsonPassingArg {
9508 pub(crate) syntax: SyntaxNode,
9509}
9510impl JsonPassingArg {
9511 #[inline]
9512 pub fn expr(&self) -> Option<Expr> {
9513 support::child(&self.syntax)
9514 }
9515}
9516
9517#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9518pub struct JsonPassingClause {
9519 pub(crate) syntax: SyntaxNode,
9520}
9521impl JsonPassingClause {
9522 #[inline]
9523 pub fn json_passing_args(&self) -> AstChildren<JsonPassingArg> {
9524 support::children(&self.syntax)
9525 }
9526 #[inline]
9527 pub fn passing_token(&self) -> Option<SyntaxToken> {
9528 support::token(&self.syntax, SyntaxKind::PASSING_KW)
9529 }
9530}
9531
9532#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9533pub struct JsonPathClause {
9534 pub(crate) syntax: SyntaxNode,
9535}
9536impl JsonPathClause {
9537 #[inline]
9538 pub fn expr(&self) -> Option<Expr> {
9539 support::child(&self.syntax)
9540 }
9541 #[inline]
9542 pub fn path_token(&self) -> Option<SyntaxToken> {
9543 support::token(&self.syntax, SyntaxKind::PATH_KW)
9544 }
9545}
9546
9547#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9548pub struct JsonQueryFn {
9549 pub(crate) syntax: SyntaxNode,
9550}
9551impl JsonQueryFn {
9552 #[inline]
9553 pub fn expr(&self) -> Option<Expr> {
9554 support::child(&self.syntax)
9555 }
9556 #[inline]
9557 pub fn json_behavior_clause(&self) -> Option<JsonBehaviorClause> {
9558 support::child(&self.syntax)
9559 }
9560 #[inline]
9561 pub fn json_format_clause(&self) -> Option<JsonFormatClause> {
9562 support::child(&self.syntax)
9563 }
9564 #[inline]
9565 pub fn json_passing_clause(&self) -> Option<JsonPassingClause> {
9566 support::child(&self.syntax)
9567 }
9568 #[inline]
9569 pub fn json_quotes_clause(&self) -> Option<JsonQuotesClause> {
9570 support::child(&self.syntax)
9571 }
9572 #[inline]
9573 pub fn json_returning_clause(&self) -> Option<JsonReturningClause> {
9574 support::child(&self.syntax)
9575 }
9576 #[inline]
9577 pub fn json_wrapper_behavior_clause(&self) -> Option<JsonWrapperBehaviorClause> {
9578 support::child(&self.syntax)
9579 }
9580 #[inline]
9581 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
9582 support::token(&self.syntax, SyntaxKind::L_PAREN)
9583 }
9584 #[inline]
9585 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
9586 support::token(&self.syntax, SyntaxKind::R_PAREN)
9587 }
9588 #[inline]
9589 pub fn comma_token(&self) -> Option<SyntaxToken> {
9590 support::token(&self.syntax, SyntaxKind::COMMA)
9591 }
9592 #[inline]
9593 pub fn json_query_token(&self) -> Option<SyntaxToken> {
9594 support::token(&self.syntax, SyntaxKind::JSON_QUERY_KW)
9595 }
9596}
9597
9598#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9599pub struct JsonQuotesClause {
9600 pub(crate) syntax: SyntaxNode,
9601}
9602impl JsonQuotesClause {
9603 #[inline]
9604 pub fn keep_token(&self) -> Option<SyntaxToken> {
9605 support::token(&self.syntax, SyntaxKind::KEEP_KW)
9606 }
9607 #[inline]
9608 pub fn omit_token(&self) -> Option<SyntaxToken> {
9609 support::token(&self.syntax, SyntaxKind::OMIT_KW)
9610 }
9611 #[inline]
9612 pub fn quotes_token(&self) -> Option<SyntaxToken> {
9613 support::token(&self.syntax, SyntaxKind::QUOTES_KW)
9614 }
9615}
9616
9617#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9618pub struct JsonReturningClause {
9619 pub(crate) syntax: SyntaxNode,
9620}
9621impl JsonReturningClause {
9622 #[inline]
9623 pub fn ty(&self) -> Option<Type> {
9624 support::child(&self.syntax)
9625 }
9626 #[inline]
9627 pub fn returning_token(&self) -> Option<SyntaxToken> {
9628 support::token(&self.syntax, SyntaxKind::RETURNING_KW)
9629 }
9630}
9631
9632#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9633pub struct JsonScalarFn {
9634 pub(crate) syntax: SyntaxNode,
9635}
9636impl JsonScalarFn {
9637 #[inline]
9638 pub fn expr(&self) -> Option<Expr> {
9639 support::child(&self.syntax)
9640 }
9641 #[inline]
9642 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
9643 support::token(&self.syntax, SyntaxKind::L_PAREN)
9644 }
9645 #[inline]
9646 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
9647 support::token(&self.syntax, SyntaxKind::R_PAREN)
9648 }
9649 #[inline]
9650 pub fn json_scalar_token(&self) -> Option<SyntaxToken> {
9651 support::token(&self.syntax, SyntaxKind::JSON_SCALAR_KW)
9652 }
9653}
9654
9655#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9656pub struct JsonSelectFormat {
9657 pub(crate) syntax: SyntaxNode,
9658}
9659impl JsonSelectFormat {
9660 #[inline]
9661 pub fn json_format_clause(&self) -> Option<JsonFormatClause> {
9662 support::child(&self.syntax)
9663 }
9664 #[inline]
9665 pub fn select_variant(&self) -> Option<SelectVariant> {
9666 support::child(&self.syntax)
9667 }
9668}
9669
9670#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9671pub struct JsonSerializeFn {
9672 pub(crate) syntax: SyntaxNode,
9673}
9674impl JsonSerializeFn {
9675 #[inline]
9676 pub fn expr(&self) -> Option<Expr> {
9677 support::child(&self.syntax)
9678 }
9679 #[inline]
9680 pub fn json_format_clause(&self) -> Option<JsonFormatClause> {
9681 support::child(&self.syntax)
9682 }
9683 #[inline]
9684 pub fn json_returning_clause(&self) -> Option<JsonReturningClause> {
9685 support::child(&self.syntax)
9686 }
9687 #[inline]
9688 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
9689 support::token(&self.syntax, SyntaxKind::L_PAREN)
9690 }
9691 #[inline]
9692 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
9693 support::token(&self.syntax, SyntaxKind::R_PAREN)
9694 }
9695 #[inline]
9696 pub fn json_serialize_token(&self) -> Option<SyntaxToken> {
9697 support::token(&self.syntax, SyntaxKind::JSON_SERIALIZE_KW)
9698 }
9699}
9700
9701#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9702pub struct JsonTable {
9703 pub(crate) syntax: SyntaxNode,
9704}
9705impl JsonTable {
9706 #[inline]
9707 pub fn expr(&self) -> Option<Expr> {
9708 support::child(&self.syntax)
9709 }
9710 #[inline]
9711 pub fn json_format_clause(&self) -> Option<JsonFormatClause> {
9712 support::child(&self.syntax)
9713 }
9714 #[inline]
9715 pub fn json_on_error_clause(&self) -> Option<JsonOnErrorClause> {
9716 support::child(&self.syntax)
9717 }
9718 #[inline]
9719 pub fn json_passing_clause(&self) -> Option<JsonPassingClause> {
9720 support::child(&self.syntax)
9721 }
9722 #[inline]
9723 pub fn json_table_column_list(&self) -> Option<JsonTableColumnList> {
9724 support::child(&self.syntax)
9725 }
9726 #[inline]
9727 pub fn name(&self) -> Option<Name> {
9728 support::child(&self.syntax)
9729 }
9730 #[inline]
9731 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
9732 support::token(&self.syntax, SyntaxKind::L_PAREN)
9733 }
9734 #[inline]
9735 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
9736 support::token(&self.syntax, SyntaxKind::R_PAREN)
9737 }
9738 #[inline]
9739 pub fn comma_token(&self) -> Option<SyntaxToken> {
9740 support::token(&self.syntax, SyntaxKind::COMMA)
9741 }
9742 #[inline]
9743 pub fn as_token(&self) -> Option<SyntaxToken> {
9744 support::token(&self.syntax, SyntaxKind::AS_KW)
9745 }
9746 #[inline]
9747 pub fn json_table_token(&self) -> Option<SyntaxToken> {
9748 support::token(&self.syntax, SyntaxKind::JSON_TABLE_KW)
9749 }
9750}
9751
9752#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9753pub struct JsonTableColumn {
9754 pub(crate) syntax: SyntaxNode,
9755}
9756impl JsonTableColumn {
9757 #[inline]
9758 pub fn expr(&self) -> Option<Expr> {
9759 support::child(&self.syntax)
9760 }
9761 #[inline]
9762 pub fn json_format_clause(&self) -> Option<JsonFormatClause> {
9763 support::child(&self.syntax)
9764 }
9765 #[inline]
9766 pub fn json_on_empty_clause(&self) -> Option<JsonOnEmptyClause> {
9767 support::child(&self.syntax)
9768 }
9769 #[inline]
9770 pub fn json_on_error_clause(&self) -> Option<JsonOnErrorClause> {
9771 support::child(&self.syntax)
9772 }
9773 #[inline]
9774 pub fn json_path_clause(&self) -> Option<JsonPathClause> {
9775 support::child(&self.syntax)
9776 }
9777 #[inline]
9778 pub fn json_quotes_clause(&self) -> Option<JsonQuotesClause> {
9779 support::child(&self.syntax)
9780 }
9781 #[inline]
9782 pub fn json_table_column_list(&self) -> Option<JsonTableColumnList> {
9783 support::child(&self.syntax)
9784 }
9785 #[inline]
9786 pub fn json_wrapper_behavior_clause(&self) -> Option<JsonWrapperBehaviorClause> {
9787 support::child(&self.syntax)
9788 }
9789 #[inline]
9790 pub fn name(&self) -> Option<Name> {
9791 support::child(&self.syntax)
9792 }
9793 #[inline]
9794 pub fn ty(&self) -> Option<Type> {
9795 support::child(&self.syntax)
9796 }
9797 #[inline]
9798 pub fn as_token(&self) -> Option<SyntaxToken> {
9799 support::token(&self.syntax, SyntaxKind::AS_KW)
9800 }
9801 #[inline]
9802 pub fn exists_token(&self) -> Option<SyntaxToken> {
9803 support::token(&self.syntax, SyntaxKind::EXISTS_KW)
9804 }
9805 #[inline]
9806 pub fn for_token(&self) -> Option<SyntaxToken> {
9807 support::token(&self.syntax, SyntaxKind::FOR_KW)
9808 }
9809 #[inline]
9810 pub fn nested_token(&self) -> Option<SyntaxToken> {
9811 support::token(&self.syntax, SyntaxKind::NESTED_KW)
9812 }
9813 #[inline]
9814 pub fn ordinality_token(&self) -> Option<SyntaxToken> {
9815 support::token(&self.syntax, SyntaxKind::ORDINALITY_KW)
9816 }
9817 #[inline]
9818 pub fn path_token(&self) -> Option<SyntaxToken> {
9819 support::token(&self.syntax, SyntaxKind::PATH_KW)
9820 }
9821}
9822
9823#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9824pub struct JsonTableColumnList {
9825 pub(crate) syntax: SyntaxNode,
9826}
9827impl JsonTableColumnList {
9828 #[inline]
9829 pub fn json_table_columns(&self) -> AstChildren<JsonTableColumn> {
9830 support::children(&self.syntax)
9831 }
9832 #[inline]
9833 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
9834 support::token(&self.syntax, SyntaxKind::L_PAREN)
9835 }
9836 #[inline]
9837 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
9838 support::token(&self.syntax, SyntaxKind::R_PAREN)
9839 }
9840 #[inline]
9841 pub fn columns_token(&self) -> Option<SyntaxToken> {
9842 support::token(&self.syntax, SyntaxKind::COLUMNS_KW)
9843 }
9844}
9845
9846#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9847pub struct JsonValueExpr {
9848 pub(crate) syntax: SyntaxNode,
9849}
9850impl JsonValueExpr {
9851 #[inline]
9852 pub fn expr(&self) -> Option<Expr> {
9853 support::child(&self.syntax)
9854 }
9855 #[inline]
9856 pub fn json_format_clause(&self) -> Option<JsonFormatClause> {
9857 support::child(&self.syntax)
9858 }
9859}
9860
9861#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9862pub struct JsonValueFn {
9863 pub(crate) syntax: SyntaxNode,
9864}
9865impl JsonValueFn {
9866 #[inline]
9867 pub fn expr(&self) -> Option<Expr> {
9868 support::child(&self.syntax)
9869 }
9870 #[inline]
9871 pub fn json_behavior_clause(&self) -> Option<JsonBehaviorClause> {
9872 support::child(&self.syntax)
9873 }
9874 #[inline]
9875 pub fn json_format_clause(&self) -> Option<JsonFormatClause> {
9876 support::child(&self.syntax)
9877 }
9878 #[inline]
9879 pub fn json_passing_clause(&self) -> Option<JsonPassingClause> {
9880 support::child(&self.syntax)
9881 }
9882 #[inline]
9883 pub fn json_returning_clause(&self) -> Option<JsonReturningClause> {
9884 support::child(&self.syntax)
9885 }
9886 #[inline]
9887 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
9888 support::token(&self.syntax, SyntaxKind::L_PAREN)
9889 }
9890 #[inline]
9891 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
9892 support::token(&self.syntax, SyntaxKind::R_PAREN)
9893 }
9894 #[inline]
9895 pub fn comma_token(&self) -> Option<SyntaxToken> {
9896 support::token(&self.syntax, SyntaxKind::COMMA)
9897 }
9898 #[inline]
9899 pub fn json_value_token(&self) -> Option<SyntaxToken> {
9900 support::token(&self.syntax, SyntaxKind::JSON_VALUE_KW)
9901 }
9902}
9903
9904#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9905pub struct JsonWrapperBehaviorClause {
9906 pub(crate) syntax: SyntaxNode,
9907}
9908impl JsonWrapperBehaviorClause {
9909 #[inline]
9910 pub fn array_token(&self) -> Option<SyntaxToken> {
9911 support::token(&self.syntax, SyntaxKind::ARRAY_KW)
9912 }
9913 #[inline]
9914 pub fn conditional_token(&self) -> Option<SyntaxToken> {
9915 support::token(&self.syntax, SyntaxKind::CONDITIONAL_KW)
9916 }
9917 #[inline]
9918 pub fn unconditional_token(&self) -> Option<SyntaxToken> {
9919 support::token(&self.syntax, SyntaxKind::UNCONDITIONAL_KW)
9920 }
9921 #[inline]
9922 pub fn with_token(&self) -> Option<SyntaxToken> {
9923 support::token(&self.syntax, SyntaxKind::WITH_KW)
9924 }
9925 #[inline]
9926 pub fn without_token(&self) -> Option<SyntaxToken> {
9927 support::token(&self.syntax, SyntaxKind::WITHOUT_KW)
9928 }
9929 #[inline]
9930 pub fn wrapper_token(&self) -> Option<SyntaxToken> {
9931 support::token(&self.syntax, SyntaxKind::WRAPPER_KW)
9932 }
9933}
9934
9935#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9936pub struct LanguageFuncOption {
9937 pub(crate) syntax: SyntaxNode,
9938}
9939impl LanguageFuncOption {
9940 #[inline]
9941 pub fn name_ref(&self) -> Option<NameRef> {
9942 support::child(&self.syntax)
9943 }
9944 #[inline]
9945 pub fn language_token(&self) -> Option<SyntaxToken> {
9946 support::token(&self.syntax, SyntaxKind::LANGUAGE_KW)
9947 }
9948}
9949
9950#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9951pub struct LeakproofFuncOption {
9952 pub(crate) syntax: SyntaxNode,
9953}
9954impl LeakproofFuncOption {
9955 #[inline]
9956 pub fn leakproof_token(&self) -> Option<SyntaxToken> {
9957 support::token(&self.syntax, SyntaxKind::LEAKPROOF_KW)
9958 }
9959 #[inline]
9960 pub fn not_token(&self) -> Option<SyntaxToken> {
9961 support::token(&self.syntax, SyntaxKind::NOT_KW)
9962 }
9963}
9964
9965#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9966pub struct LikeClause {
9967 pub(crate) syntax: SyntaxNode,
9968}
9969impl LikeClause {
9970 #[inline]
9971 pub fn like_options(&self) -> AstChildren<LikeOption> {
9972 support::children(&self.syntax)
9973 }
9974 #[inline]
9975 pub fn path(&self) -> Option<Path> {
9976 support::child(&self.syntax)
9977 }
9978 #[inline]
9979 pub fn like_token(&self) -> Option<SyntaxToken> {
9980 support::token(&self.syntax, SyntaxKind::LIKE_KW)
9981 }
9982}
9983
9984#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9985pub struct LikeOption {
9986 pub(crate) syntax: SyntaxNode,
9987}
9988impl LikeOption {
9989 #[inline]
9990 pub fn all_token(&self) -> Option<SyntaxToken> {
9991 support::token(&self.syntax, SyntaxKind::ALL_KW)
9992 }
9993 #[inline]
9994 pub fn comments_token(&self) -> Option<SyntaxToken> {
9995 support::token(&self.syntax, SyntaxKind::COMMENTS_KW)
9996 }
9997 #[inline]
9998 pub fn compression_token(&self) -> Option<SyntaxToken> {
9999 support::token(&self.syntax, SyntaxKind::COMPRESSION_KW)
10000 }
10001 #[inline]
10002 pub fn constraints_token(&self) -> Option<SyntaxToken> {
10003 support::token(&self.syntax, SyntaxKind::CONSTRAINTS_KW)
10004 }
10005 #[inline]
10006 pub fn defaults_token(&self) -> Option<SyntaxToken> {
10007 support::token(&self.syntax, SyntaxKind::DEFAULTS_KW)
10008 }
10009 #[inline]
10010 pub fn excluding_token(&self) -> Option<SyntaxToken> {
10011 support::token(&self.syntax, SyntaxKind::EXCLUDING_KW)
10012 }
10013 #[inline]
10014 pub fn generated_token(&self) -> Option<SyntaxToken> {
10015 support::token(&self.syntax, SyntaxKind::GENERATED_KW)
10016 }
10017 #[inline]
10018 pub fn identity_token(&self) -> Option<SyntaxToken> {
10019 support::token(&self.syntax, SyntaxKind::IDENTITY_KW)
10020 }
10021 #[inline]
10022 pub fn including_token(&self) -> Option<SyntaxToken> {
10023 support::token(&self.syntax, SyntaxKind::INCLUDING_KW)
10024 }
10025 #[inline]
10026 pub fn indexes_token(&self) -> Option<SyntaxToken> {
10027 support::token(&self.syntax, SyntaxKind::INDEXES_KW)
10028 }
10029 #[inline]
10030 pub fn statistics_token(&self) -> Option<SyntaxToken> {
10031 support::token(&self.syntax, SyntaxKind::STATISTICS_KW)
10032 }
10033 #[inline]
10034 pub fn storage_token(&self) -> Option<SyntaxToken> {
10035 support::token(&self.syntax, SyntaxKind::STORAGE_KW)
10036 }
10037}
10038
10039#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10040pub struct LimitClause {
10041 pub(crate) syntax: SyntaxNode,
10042}
10043impl LimitClause {
10044 #[inline]
10045 pub fn expr(&self) -> Option<Expr> {
10046 support::child(&self.syntax)
10047 }
10048 #[inline]
10049 pub fn all_token(&self) -> Option<SyntaxToken> {
10050 support::token(&self.syntax, SyntaxKind::ALL_KW)
10051 }
10052 #[inline]
10053 pub fn limit_token(&self) -> Option<SyntaxToken> {
10054 support::token(&self.syntax, SyntaxKind::LIMIT_KW)
10055 }
10056}
10057
10058#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10059pub struct LimitToTables {
10060 pub(crate) syntax: SyntaxNode,
10061}
10062impl LimitToTables {
10063 #[inline]
10064 pub fn name_refs(&self) -> AstChildren<NameRef> {
10065 support::children(&self.syntax)
10066 }
10067 #[inline]
10068 pub fn limit_token(&self) -> Option<SyntaxToken> {
10069 support::token(&self.syntax, SyntaxKind::LIMIT_KW)
10070 }
10071 #[inline]
10072 pub fn to_token(&self) -> Option<SyntaxToken> {
10073 support::token(&self.syntax, SyntaxKind::TO_KW)
10074 }
10075}
10076
10077#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10078pub struct Listen {
10079 pub(crate) syntax: SyntaxNode,
10080}
10081impl Listen {
10082 #[inline]
10083 pub fn name(&self) -> Option<Name> {
10084 support::child(&self.syntax)
10085 }
10086 #[inline]
10087 pub fn listen_token(&self) -> Option<SyntaxToken> {
10088 support::token(&self.syntax, SyntaxKind::LISTEN_KW)
10089 }
10090}
10091
10092#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10093pub struct Literal {
10094 pub(crate) syntax: SyntaxNode,
10095}
10096impl Literal {}
10097
10098#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10099pub struct Load {
10100 pub(crate) syntax: SyntaxNode,
10101}
10102impl Load {
10103 #[inline]
10104 pub fn literal(&self) -> Option<Literal> {
10105 support::child(&self.syntax)
10106 }
10107 #[inline]
10108 pub fn load_token(&self) -> Option<SyntaxToken> {
10109 support::token(&self.syntax, SyntaxKind::LOAD_KW)
10110 }
10111}
10112
10113#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10114pub struct Lock {
10115 pub(crate) syntax: SyntaxNode,
10116}
10117impl Lock {
10118 #[inline]
10119 pub fn table_list(&self) -> Option<TableList> {
10120 support::child(&self.syntax)
10121 }
10122 #[inline]
10123 pub fn lock_token(&self) -> Option<SyntaxToken> {
10124 support::token(&self.syntax, SyntaxKind::LOCK_KW)
10125 }
10126 #[inline]
10127 pub fn table_token(&self) -> Option<SyntaxToken> {
10128 support::token(&self.syntax, SyntaxKind::TABLE_KW)
10129 }
10130}
10131
10132#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10133pub struct LockingClause {
10134 pub(crate) syntax: SyntaxNode,
10135}
10136impl LockingClause {
10137 #[inline]
10138 pub fn for_token(&self) -> Option<SyntaxToken> {
10139 support::token(&self.syntax, SyntaxKind::FOR_KW)
10140 }
10141}
10142
10143#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10144pub struct Lteq {
10145 pub(crate) syntax: SyntaxNode,
10146}
10147impl Lteq {
10148 #[inline]
10149 pub fn l_angle_token(&self) -> Option<SyntaxToken> {
10150 support::token(&self.syntax, SyntaxKind::L_ANGLE)
10151 }
10152 #[inline]
10153 pub fn eq_token(&self) -> Option<SyntaxToken> {
10154 support::token(&self.syntax, SyntaxKind::EQ)
10155 }
10156}
10157
10158#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10159pub struct MatchFull {
10160 pub(crate) syntax: SyntaxNode,
10161}
10162impl MatchFull {
10163 #[inline]
10164 pub fn full_token(&self) -> Option<SyntaxToken> {
10165 support::token(&self.syntax, SyntaxKind::FULL_KW)
10166 }
10167 #[inline]
10168 pub fn match_token(&self) -> Option<SyntaxToken> {
10169 support::token(&self.syntax, SyntaxKind::MATCH_KW)
10170 }
10171}
10172
10173#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10174pub struct MatchPartial {
10175 pub(crate) syntax: SyntaxNode,
10176}
10177impl MatchPartial {
10178 #[inline]
10179 pub fn match_token(&self) -> Option<SyntaxToken> {
10180 support::token(&self.syntax, SyntaxKind::MATCH_KW)
10181 }
10182 #[inline]
10183 pub fn partial_token(&self) -> Option<SyntaxToken> {
10184 support::token(&self.syntax, SyntaxKind::PARTIAL_KW)
10185 }
10186}
10187
10188#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10189pub struct MatchSimple {
10190 pub(crate) syntax: SyntaxNode,
10191}
10192impl MatchSimple {
10193 #[inline]
10194 pub fn match_token(&self) -> Option<SyntaxToken> {
10195 support::token(&self.syntax, SyntaxKind::MATCH_KW)
10196 }
10197 #[inline]
10198 pub fn simple_token(&self) -> Option<SyntaxToken> {
10199 support::token(&self.syntax, SyntaxKind::SIMPLE_KW)
10200 }
10201}
10202
10203#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10204pub struct Materialized {
10205 pub(crate) syntax: SyntaxNode,
10206}
10207impl Materialized {
10208 #[inline]
10209 pub fn materialized_token(&self) -> Option<SyntaxToken> {
10210 support::token(&self.syntax, SyntaxKind::MATERIALIZED_KW)
10211 }
10212}
10213
10214#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10215pub struct Merge {
10216 pub(crate) syntax: SyntaxNode,
10217}
10218impl Merge {
10219 #[inline]
10220 pub fn alias(&self) -> Option<Alias> {
10221 support::child(&self.syntax)
10222 }
10223 #[inline]
10224 pub fn merge_when_clauses(&self) -> AstChildren<MergeWhenClause> {
10225 support::children(&self.syntax)
10226 }
10227 #[inline]
10228 pub fn relation_name(&self) -> Option<RelationName> {
10229 support::child(&self.syntax)
10230 }
10231 #[inline]
10232 pub fn returning_clause(&self) -> Option<ReturningClause> {
10233 support::child(&self.syntax)
10234 }
10235 #[inline]
10236 pub fn using_on_clause(&self) -> Option<UsingOnClause> {
10237 support::child(&self.syntax)
10238 }
10239 #[inline]
10240 pub fn with_clause(&self) -> Option<WithClause> {
10241 support::child(&self.syntax)
10242 }
10243 #[inline]
10244 pub fn into_token(&self) -> Option<SyntaxToken> {
10245 support::token(&self.syntax, SyntaxKind::INTO_KW)
10246 }
10247 #[inline]
10248 pub fn merge_token(&self) -> Option<SyntaxToken> {
10249 support::token(&self.syntax, SyntaxKind::MERGE_KW)
10250 }
10251}
10252
10253#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10254pub struct MergeDelete {
10255 pub(crate) syntax: SyntaxNode,
10256}
10257impl MergeDelete {
10258 #[inline]
10259 pub fn delete_token(&self) -> Option<SyntaxToken> {
10260 support::token(&self.syntax, SyntaxKind::DELETE_KW)
10261 }
10262}
10263
10264#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10265pub struct MergeDoNothing {
10266 pub(crate) syntax: SyntaxNode,
10267}
10268impl MergeDoNothing {
10269 #[inline]
10270 pub fn do_token(&self) -> Option<SyntaxToken> {
10271 support::token(&self.syntax, SyntaxKind::DO_KW)
10272 }
10273 #[inline]
10274 pub fn nothing_token(&self) -> Option<SyntaxToken> {
10275 support::token(&self.syntax, SyntaxKind::NOTHING_KW)
10276 }
10277}
10278
10279#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10280pub struct MergeInsert {
10281 pub(crate) syntax: SyntaxNode,
10282}
10283impl MergeInsert {
10284 #[inline]
10285 pub fn column_list(&self) -> Option<ColumnList> {
10286 support::child(&self.syntax)
10287 }
10288 #[inline]
10289 pub fn values(&self) -> Option<Values> {
10290 support::child(&self.syntax)
10291 }
10292 #[inline]
10293 pub fn default_token(&self) -> Option<SyntaxToken> {
10294 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
10295 }
10296 #[inline]
10297 pub fn insert_token(&self) -> Option<SyntaxToken> {
10298 support::token(&self.syntax, SyntaxKind::INSERT_KW)
10299 }
10300 #[inline]
10301 pub fn overriding_token(&self) -> Option<SyntaxToken> {
10302 support::token(&self.syntax, SyntaxKind::OVERRIDING_KW)
10303 }
10304 #[inline]
10305 pub fn system_token(&self) -> Option<SyntaxToken> {
10306 support::token(&self.syntax, SyntaxKind::SYSTEM_KW)
10307 }
10308 #[inline]
10309 pub fn user_token(&self) -> Option<SyntaxToken> {
10310 support::token(&self.syntax, SyntaxKind::USER_KW)
10311 }
10312 #[inline]
10313 pub fn values_token(&self) -> Option<SyntaxToken> {
10314 support::token(&self.syntax, SyntaxKind::VALUES_KW)
10315 }
10316}
10317
10318#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10319pub struct MergePartitions {
10320 pub(crate) syntax: SyntaxNode,
10321}
10322impl MergePartitions {
10323 #[inline]
10324 pub fn path(&self) -> Option<Path> {
10325 support::child(&self.syntax)
10326 }
10327 #[inline]
10328 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
10329 support::token(&self.syntax, SyntaxKind::L_PAREN)
10330 }
10331 #[inline]
10332 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
10333 support::token(&self.syntax, SyntaxKind::R_PAREN)
10334 }
10335 #[inline]
10336 pub fn into_token(&self) -> Option<SyntaxToken> {
10337 support::token(&self.syntax, SyntaxKind::INTO_KW)
10338 }
10339 #[inline]
10340 pub fn merge_token(&self) -> Option<SyntaxToken> {
10341 support::token(&self.syntax, SyntaxKind::MERGE_KW)
10342 }
10343 #[inline]
10344 pub fn partitions_token(&self) -> Option<SyntaxToken> {
10345 support::token(&self.syntax, SyntaxKind::PARTITIONS_KW)
10346 }
10347}
10348
10349#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10350pub struct MergeUpdate {
10351 pub(crate) syntax: SyntaxNode,
10352}
10353impl MergeUpdate {
10354 #[inline]
10355 pub fn set_clause(&self) -> Option<SetClause> {
10356 support::child(&self.syntax)
10357 }
10358 #[inline]
10359 pub fn set_token(&self) -> Option<SyntaxToken> {
10360 support::token(&self.syntax, SyntaxKind::SET_KW)
10361 }
10362 #[inline]
10363 pub fn update_token(&self) -> Option<SyntaxToken> {
10364 support::token(&self.syntax, SyntaxKind::UPDATE_KW)
10365 }
10366}
10367
10368#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10369pub struct MergeWhenMatched {
10370 pub(crate) syntax: SyntaxNode,
10371}
10372impl MergeWhenMatched {
10373 #[inline]
10374 pub fn expr(&self) -> Option<Expr> {
10375 support::child(&self.syntax)
10376 }
10377 #[inline]
10378 pub fn merge_action(&self) -> Option<MergeAction> {
10379 support::child(&self.syntax)
10380 }
10381 #[inline]
10382 pub fn and_token(&self) -> Option<SyntaxToken> {
10383 support::token(&self.syntax, SyntaxKind::AND_KW)
10384 }
10385 #[inline]
10386 pub fn matched_token(&self) -> Option<SyntaxToken> {
10387 support::token(&self.syntax, SyntaxKind::MATCHED_KW)
10388 }
10389 #[inline]
10390 pub fn then_token(&self) -> Option<SyntaxToken> {
10391 support::token(&self.syntax, SyntaxKind::THEN_KW)
10392 }
10393 #[inline]
10394 pub fn when_token(&self) -> Option<SyntaxToken> {
10395 support::token(&self.syntax, SyntaxKind::WHEN_KW)
10396 }
10397}
10398
10399#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10400pub struct MergeWhenNotMatchedSource {
10401 pub(crate) syntax: SyntaxNode,
10402}
10403impl MergeWhenNotMatchedSource {
10404 #[inline]
10405 pub fn expr(&self) -> Option<Expr> {
10406 support::child(&self.syntax)
10407 }
10408 #[inline]
10409 pub fn merge_action(&self) -> Option<MergeAction> {
10410 support::child(&self.syntax)
10411 }
10412 #[inline]
10413 pub fn and_token(&self) -> Option<SyntaxToken> {
10414 support::token(&self.syntax, SyntaxKind::AND_KW)
10415 }
10416 #[inline]
10417 pub fn by_token(&self) -> Option<SyntaxToken> {
10418 support::token(&self.syntax, SyntaxKind::BY_KW)
10419 }
10420 #[inline]
10421 pub fn matched_token(&self) -> Option<SyntaxToken> {
10422 support::token(&self.syntax, SyntaxKind::MATCHED_KW)
10423 }
10424 #[inline]
10425 pub fn not_token(&self) -> Option<SyntaxToken> {
10426 support::token(&self.syntax, SyntaxKind::NOT_KW)
10427 }
10428 #[inline]
10429 pub fn source_token(&self) -> Option<SyntaxToken> {
10430 support::token(&self.syntax, SyntaxKind::SOURCE_KW)
10431 }
10432 #[inline]
10433 pub fn then_token(&self) -> Option<SyntaxToken> {
10434 support::token(&self.syntax, SyntaxKind::THEN_KW)
10435 }
10436 #[inline]
10437 pub fn when_token(&self) -> Option<SyntaxToken> {
10438 support::token(&self.syntax, SyntaxKind::WHEN_KW)
10439 }
10440}
10441
10442#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10443pub struct MergeWhenNotMatchedTarget {
10444 pub(crate) syntax: SyntaxNode,
10445}
10446impl MergeWhenNotMatchedTarget {
10447 #[inline]
10448 pub fn expr(&self) -> Option<Expr> {
10449 support::child(&self.syntax)
10450 }
10451 #[inline]
10452 pub fn merge_action(&self) -> Option<MergeAction> {
10453 support::child(&self.syntax)
10454 }
10455 #[inline]
10456 pub fn and_token(&self) -> Option<SyntaxToken> {
10457 support::token(&self.syntax, SyntaxKind::AND_KW)
10458 }
10459 #[inline]
10460 pub fn by_token(&self) -> Option<SyntaxToken> {
10461 support::token(&self.syntax, SyntaxKind::BY_KW)
10462 }
10463 #[inline]
10464 pub fn matched_token(&self) -> Option<SyntaxToken> {
10465 support::token(&self.syntax, SyntaxKind::MATCHED_KW)
10466 }
10467 #[inline]
10468 pub fn not_token(&self) -> Option<SyntaxToken> {
10469 support::token(&self.syntax, SyntaxKind::NOT_KW)
10470 }
10471 #[inline]
10472 pub fn target_token(&self) -> Option<SyntaxToken> {
10473 support::token(&self.syntax, SyntaxKind::TARGET_KW)
10474 }
10475 #[inline]
10476 pub fn then_token(&self) -> Option<SyntaxToken> {
10477 support::token(&self.syntax, SyntaxKind::THEN_KW)
10478 }
10479 #[inline]
10480 pub fn when_token(&self) -> Option<SyntaxToken> {
10481 support::token(&self.syntax, SyntaxKind::WHEN_KW)
10482 }
10483}
10484
10485#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10486pub struct Move {
10487 pub(crate) syntax: SyntaxNode,
10488}
10489impl Move {
10490 #[inline]
10491 pub fn name_ref(&self) -> Option<NameRef> {
10492 support::child(&self.syntax)
10493 }
10494 #[inline]
10495 pub fn from_token(&self) -> Option<SyntaxToken> {
10496 support::token(&self.syntax, SyntaxKind::FROM_KW)
10497 }
10498 #[inline]
10499 pub fn in_token(&self) -> Option<SyntaxToken> {
10500 support::token(&self.syntax, SyntaxKind::IN_KW)
10501 }
10502 #[inline]
10503 pub fn move_token(&self) -> Option<SyntaxToken> {
10504 support::token(&self.syntax, SyntaxKind::MOVE_KW)
10505 }
10506}
10507
10508#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10509pub struct Name {
10510 pub(crate) syntax: SyntaxNode,
10511}
10512impl Name {
10513 #[inline]
10514 pub fn ident_token(&self) -> Option<SyntaxToken> {
10515 support::token(&self.syntax, SyntaxKind::IDENT)
10516 }
10517}
10518
10519#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10520pub struct NameRef {
10521 pub(crate) syntax: SyntaxNode,
10522}
10523impl NameRef {
10524 #[inline]
10525 pub fn ident_token(&self) -> Option<SyntaxToken> {
10526 support::token(&self.syntax, SyntaxKind::IDENT)
10527 }
10528}
10529
10530#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10531pub struct NamedArg {
10532 pub(crate) syntax: SyntaxNode,
10533}
10534impl NamedArg {
10535 #[inline]
10536 pub fn expr(&self) -> Option<Expr> {
10537 support::child(&self.syntax)
10538 }
10539 #[inline]
10540 pub fn fat_arrow(&self) -> Option<FatArrow> {
10541 support::child(&self.syntax)
10542 }
10543 #[inline]
10544 pub fn name_ref(&self) -> Option<NameRef> {
10545 support::child(&self.syntax)
10546 }
10547}
10548
10549#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10550pub struct Neq {
10551 pub(crate) syntax: SyntaxNode,
10552}
10553impl Neq {
10554 #[inline]
10555 pub fn bang_token(&self) -> Option<SyntaxToken> {
10556 support::token(&self.syntax, SyntaxKind::BANG)
10557 }
10558 #[inline]
10559 pub fn eq_token(&self) -> Option<SyntaxToken> {
10560 support::token(&self.syntax, SyntaxKind::EQ)
10561 }
10562}
10563
10564#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10565pub struct Neqb {
10566 pub(crate) syntax: SyntaxNode,
10567}
10568impl Neqb {
10569 #[inline]
10570 pub fn l_angle_token(&self) -> Option<SyntaxToken> {
10571 support::token(&self.syntax, SyntaxKind::L_ANGLE)
10572 }
10573 #[inline]
10574 pub fn r_angle_token(&self) -> Option<SyntaxToken> {
10575 support::token(&self.syntax, SyntaxKind::R_ANGLE)
10576 }
10577}
10578
10579#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10580pub struct NoAction {
10581 pub(crate) syntax: SyntaxNode,
10582}
10583impl NoAction {
10584 #[inline]
10585 pub fn action_token(&self) -> Option<SyntaxToken> {
10586 support::token(&self.syntax, SyntaxKind::ACTION_KW)
10587 }
10588 #[inline]
10589 pub fn no_token(&self) -> Option<SyntaxToken> {
10590 support::token(&self.syntax, SyntaxKind::NO_KW)
10591 }
10592}
10593
10594#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10595pub struct NoDependsOnExtension {
10596 pub(crate) syntax: SyntaxNode,
10597}
10598impl NoDependsOnExtension {
10599 #[inline]
10600 pub fn name_ref(&self) -> Option<NameRef> {
10601 support::child(&self.syntax)
10602 }
10603 #[inline]
10604 pub fn depends_token(&self) -> Option<SyntaxToken> {
10605 support::token(&self.syntax, SyntaxKind::DEPENDS_KW)
10606 }
10607 #[inline]
10608 pub fn extension_token(&self) -> Option<SyntaxToken> {
10609 support::token(&self.syntax, SyntaxKind::EXTENSION_KW)
10610 }
10611 #[inline]
10612 pub fn no_token(&self) -> Option<SyntaxToken> {
10613 support::token(&self.syntax, SyntaxKind::NO_KW)
10614 }
10615 #[inline]
10616 pub fn on_token(&self) -> Option<SyntaxToken> {
10617 support::token(&self.syntax, SyntaxKind::ON_KW)
10618 }
10619}
10620
10621#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10622pub struct NoForceRls {
10623 pub(crate) syntax: SyntaxNode,
10624}
10625impl NoForceRls {
10626 #[inline]
10627 pub fn force_token(&self) -> Option<SyntaxToken> {
10628 support::token(&self.syntax, SyntaxKind::FORCE_KW)
10629 }
10630 #[inline]
10631 pub fn level_token(&self) -> Option<SyntaxToken> {
10632 support::token(&self.syntax, SyntaxKind::LEVEL_KW)
10633 }
10634 #[inline]
10635 pub fn no_token(&self) -> Option<SyntaxToken> {
10636 support::token(&self.syntax, SyntaxKind::NO_KW)
10637 }
10638 #[inline]
10639 pub fn row_token(&self) -> Option<SyntaxToken> {
10640 support::token(&self.syntax, SyntaxKind::ROW_KW)
10641 }
10642 #[inline]
10643 pub fn security_token(&self) -> Option<SyntaxToken> {
10644 support::token(&self.syntax, SyntaxKind::SECURITY_KW)
10645 }
10646}
10647
10648#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10649pub struct NoInherit {
10650 pub(crate) syntax: SyntaxNode,
10651}
10652impl NoInherit {
10653 #[inline]
10654 pub fn path(&self) -> Option<Path> {
10655 support::child(&self.syntax)
10656 }
10657 #[inline]
10658 pub fn inherit_token(&self) -> Option<SyntaxToken> {
10659 support::token(&self.syntax, SyntaxKind::INHERIT_KW)
10660 }
10661 #[inline]
10662 pub fn no_token(&self) -> Option<SyntaxToken> {
10663 support::token(&self.syntax, SyntaxKind::NO_KW)
10664 }
10665}
10666
10667#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10668pub struct NoInheritTable {
10669 pub(crate) syntax: SyntaxNode,
10670}
10671impl NoInheritTable {
10672 #[inline]
10673 pub fn path(&self) -> Option<Path> {
10674 support::child(&self.syntax)
10675 }
10676 #[inline]
10677 pub fn inherit_token(&self) -> Option<SyntaxToken> {
10678 support::token(&self.syntax, SyntaxKind::INHERIT_KW)
10679 }
10680 #[inline]
10681 pub fn no_token(&self) -> Option<SyntaxToken> {
10682 support::token(&self.syntax, SyntaxKind::NO_KW)
10683 }
10684}
10685
10686#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10687pub struct NonStandardParam {
10688 pub(crate) syntax: SyntaxNode,
10689}
10690impl NonStandardParam {
10691 #[inline]
10692 pub fn name_ref(&self) -> Option<NameRef> {
10693 support::child(&self.syntax)
10694 }
10695 #[inline]
10696 pub fn colon_token(&self) -> Option<SyntaxToken> {
10697 support::token(&self.syntax, SyntaxKind::COLON)
10698 }
10699}
10700
10701#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10702pub struct NotDeferrable {
10703 pub(crate) syntax: SyntaxNode,
10704}
10705impl NotDeferrable {
10706 #[inline]
10707 pub fn deferrable_token(&self) -> Option<SyntaxToken> {
10708 support::token(&self.syntax, SyntaxKind::DEFERRABLE_KW)
10709 }
10710 #[inline]
10711 pub fn not_token(&self) -> Option<SyntaxToken> {
10712 support::token(&self.syntax, SyntaxKind::NOT_KW)
10713 }
10714}
10715
10716#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10717pub struct NotDeferrableConstraintOption {
10718 pub(crate) syntax: SyntaxNode,
10719}
10720impl NotDeferrableConstraintOption {
10721 #[inline]
10722 pub fn deferrable_token(&self) -> Option<SyntaxToken> {
10723 support::token(&self.syntax, SyntaxKind::DEFERRABLE_KW)
10724 }
10725 #[inline]
10726 pub fn not_token(&self) -> Option<SyntaxToken> {
10727 support::token(&self.syntax, SyntaxKind::NOT_KW)
10728 }
10729}
10730
10731#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10732pub struct NotEnforced {
10733 pub(crate) syntax: SyntaxNode,
10734}
10735impl NotEnforced {
10736 #[inline]
10737 pub fn enforced_token(&self) -> Option<SyntaxToken> {
10738 support::token(&self.syntax, SyntaxKind::ENFORCED_KW)
10739 }
10740 #[inline]
10741 pub fn not_token(&self) -> Option<SyntaxToken> {
10742 support::token(&self.syntax, SyntaxKind::NOT_KW)
10743 }
10744}
10745
10746#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10747pub struct NotIlike {
10748 pub(crate) syntax: SyntaxNode,
10749}
10750impl NotIlike {
10751 #[inline]
10752 pub fn ilike_token(&self) -> Option<SyntaxToken> {
10753 support::token(&self.syntax, SyntaxKind::ILIKE_KW)
10754 }
10755 #[inline]
10756 pub fn not_token(&self) -> Option<SyntaxToken> {
10757 support::token(&self.syntax, SyntaxKind::NOT_KW)
10758 }
10759}
10760
10761#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10762pub struct NotIn {
10763 pub(crate) syntax: SyntaxNode,
10764}
10765impl NotIn {
10766 #[inline]
10767 pub fn in_token(&self) -> Option<SyntaxToken> {
10768 support::token(&self.syntax, SyntaxKind::IN_KW)
10769 }
10770 #[inline]
10771 pub fn not_token(&self) -> Option<SyntaxToken> {
10772 support::token(&self.syntax, SyntaxKind::NOT_KW)
10773 }
10774}
10775
10776#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10777pub struct NotLike {
10778 pub(crate) syntax: SyntaxNode,
10779}
10780impl NotLike {
10781 #[inline]
10782 pub fn like_token(&self) -> Option<SyntaxToken> {
10783 support::token(&self.syntax, SyntaxKind::LIKE_KW)
10784 }
10785 #[inline]
10786 pub fn not_token(&self) -> Option<SyntaxToken> {
10787 support::token(&self.syntax, SyntaxKind::NOT_KW)
10788 }
10789}
10790
10791#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10792pub struct NotMaterialized {
10793 pub(crate) syntax: SyntaxNode,
10794}
10795impl NotMaterialized {
10796 #[inline]
10797 pub fn materialized_token(&self) -> Option<SyntaxToken> {
10798 support::token(&self.syntax, SyntaxKind::MATERIALIZED_KW)
10799 }
10800 #[inline]
10801 pub fn not_token(&self) -> Option<SyntaxToken> {
10802 support::token(&self.syntax, SyntaxKind::NOT_KW)
10803 }
10804}
10805
10806#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10807pub struct NotNullConstraint {
10808 pub(crate) syntax: SyntaxNode,
10809}
10810impl NotNullConstraint {
10811 #[inline]
10812 pub fn name_ref(&self) -> Option<NameRef> {
10813 support::child(&self.syntax)
10814 }
10815 #[inline]
10816 pub fn no_inherit(&self) -> Option<NoInherit> {
10817 support::child(&self.syntax)
10818 }
10819 #[inline]
10820 pub fn constraint_token(&self) -> Option<SyntaxToken> {
10821 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
10822 }
10823 #[inline]
10824 pub fn not_token(&self) -> Option<SyntaxToken> {
10825 support::token(&self.syntax, SyntaxKind::NOT_KW)
10826 }
10827 #[inline]
10828 pub fn null_token(&self) -> Option<SyntaxToken> {
10829 support::token(&self.syntax, SyntaxKind::NULL_KW)
10830 }
10831}
10832
10833#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10834pub struct NotOf {
10835 pub(crate) syntax: SyntaxNode,
10836}
10837impl NotOf {
10838 #[inline]
10839 pub fn not_token(&self) -> Option<SyntaxToken> {
10840 support::token(&self.syntax, SyntaxKind::NOT_KW)
10841 }
10842 #[inline]
10843 pub fn of_token(&self) -> Option<SyntaxToken> {
10844 support::token(&self.syntax, SyntaxKind::OF_KW)
10845 }
10846}
10847
10848#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10849pub struct NotSimilarTo {
10850 pub(crate) syntax: SyntaxNode,
10851}
10852impl NotSimilarTo {
10853 #[inline]
10854 pub fn not_token(&self) -> Option<SyntaxToken> {
10855 support::token(&self.syntax, SyntaxKind::NOT_KW)
10856 }
10857 #[inline]
10858 pub fn similar_token(&self) -> Option<SyntaxToken> {
10859 support::token(&self.syntax, SyntaxKind::SIMILAR_KW)
10860 }
10861 #[inline]
10862 pub fn to_token(&self) -> Option<SyntaxToken> {
10863 support::token(&self.syntax, SyntaxKind::TO_KW)
10864 }
10865}
10866
10867#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10868pub struct NotValid {
10869 pub(crate) syntax: SyntaxNode,
10870}
10871impl NotValid {
10872 #[inline]
10873 pub fn not_token(&self) -> Option<SyntaxToken> {
10874 support::token(&self.syntax, SyntaxKind::NOT_KW)
10875 }
10876 #[inline]
10877 pub fn valid_token(&self) -> Option<SyntaxToken> {
10878 support::token(&self.syntax, SyntaxKind::VALID_KW)
10879 }
10880}
10881
10882#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10883pub struct Notify {
10884 pub(crate) syntax: SyntaxNode,
10885}
10886impl Notify {
10887 #[inline]
10888 pub fn literal(&self) -> Option<Literal> {
10889 support::child(&self.syntax)
10890 }
10891 #[inline]
10892 pub fn name_ref(&self) -> Option<NameRef> {
10893 support::child(&self.syntax)
10894 }
10895 #[inline]
10896 pub fn comma_token(&self) -> Option<SyntaxToken> {
10897 support::token(&self.syntax, SyntaxKind::COMMA)
10898 }
10899 #[inline]
10900 pub fn notify_token(&self) -> Option<SyntaxToken> {
10901 support::token(&self.syntax, SyntaxKind::NOTIFY_KW)
10902 }
10903}
10904
10905#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10906pub struct NullConstraint {
10907 pub(crate) syntax: SyntaxNode,
10908}
10909impl NullConstraint {
10910 #[inline]
10911 pub fn name_ref(&self) -> Option<NameRef> {
10912 support::child(&self.syntax)
10913 }
10914 #[inline]
10915 pub fn constraint_token(&self) -> Option<SyntaxToken> {
10916 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
10917 }
10918 #[inline]
10919 pub fn null_token(&self) -> Option<SyntaxToken> {
10920 support::token(&self.syntax, SyntaxKind::NULL_KW)
10921 }
10922}
10923
10924#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10925pub struct NullsDistinct {
10926 pub(crate) syntax: SyntaxNode,
10927}
10928impl NullsDistinct {
10929 #[inline]
10930 pub fn distinct_token(&self) -> Option<SyntaxToken> {
10931 support::token(&self.syntax, SyntaxKind::DISTINCT_KW)
10932 }
10933 #[inline]
10934 pub fn nulls_token(&self) -> Option<SyntaxToken> {
10935 support::token(&self.syntax, SyntaxKind::NULLS_KW)
10936 }
10937}
10938
10939#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10940pub struct NullsFirst {
10941 pub(crate) syntax: SyntaxNode,
10942}
10943impl NullsFirst {
10944 #[inline]
10945 pub fn first_token(&self) -> Option<SyntaxToken> {
10946 support::token(&self.syntax, SyntaxKind::FIRST_KW)
10947 }
10948 #[inline]
10949 pub fn nulls_token(&self) -> Option<SyntaxToken> {
10950 support::token(&self.syntax, SyntaxKind::NULLS_KW)
10951 }
10952}
10953
10954#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10955pub struct NullsLast {
10956 pub(crate) syntax: SyntaxNode,
10957}
10958impl NullsLast {
10959 #[inline]
10960 pub fn last_token(&self) -> Option<SyntaxToken> {
10961 support::token(&self.syntax, SyntaxKind::LAST_KW)
10962 }
10963 #[inline]
10964 pub fn nulls_token(&self) -> Option<SyntaxToken> {
10965 support::token(&self.syntax, SyntaxKind::NULLS_KW)
10966 }
10967}
10968
10969#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10970pub struct NullsNotDistinct {
10971 pub(crate) syntax: SyntaxNode,
10972}
10973impl NullsNotDistinct {
10974 #[inline]
10975 pub fn distinct_token(&self) -> Option<SyntaxToken> {
10976 support::token(&self.syntax, SyntaxKind::DISTINCT_KW)
10977 }
10978 #[inline]
10979 pub fn not_token(&self) -> Option<SyntaxToken> {
10980 support::token(&self.syntax, SyntaxKind::NOT_KW)
10981 }
10982 #[inline]
10983 pub fn nulls_token(&self) -> Option<SyntaxToken> {
10984 support::token(&self.syntax, SyntaxKind::NULLS_KW)
10985 }
10986}
10987
10988#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10989pub struct OfType {
10990 pub(crate) syntax: SyntaxNode,
10991}
10992impl OfType {
10993 #[inline]
10994 pub fn ty(&self) -> Option<Type> {
10995 support::child(&self.syntax)
10996 }
10997 #[inline]
10998 pub fn of_token(&self) -> Option<SyntaxToken> {
10999 support::token(&self.syntax, SyntaxKind::OF_KW)
11000 }
11001}
11002
11003#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11004pub struct OffsetClause {
11005 pub(crate) syntax: SyntaxNode,
11006}
11007impl OffsetClause {
11008 #[inline]
11009 pub fn expr(&self) -> Option<Expr> {
11010 support::child(&self.syntax)
11011 }
11012 #[inline]
11013 pub fn offset_token(&self) -> Option<SyntaxToken> {
11014 support::token(&self.syntax, SyntaxKind::OFFSET_KW)
11015 }
11016 #[inline]
11017 pub fn row_token(&self) -> Option<SyntaxToken> {
11018 support::token(&self.syntax, SyntaxKind::ROW_KW)
11019 }
11020 #[inline]
11021 pub fn rows_token(&self) -> Option<SyntaxToken> {
11022 support::token(&self.syntax, SyntaxKind::ROWS_KW)
11023 }
11024}
11025
11026#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11027pub struct OnClause {
11028 pub(crate) syntax: SyntaxNode,
11029}
11030impl OnClause {
11031 #[inline]
11032 pub fn expr(&self) -> Option<Expr> {
11033 support::child(&self.syntax)
11034 }
11035 #[inline]
11036 pub fn on_token(&self) -> Option<SyntaxToken> {
11037 support::token(&self.syntax, SyntaxKind::ON_KW)
11038 }
11039}
11040
11041#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11042pub struct OnCommit {
11043 pub(crate) syntax: SyntaxNode,
11044}
11045impl OnCommit {
11046 #[inline]
11047 pub fn on_commit_action(&self) -> Option<OnCommitAction> {
11048 support::child(&self.syntax)
11049 }
11050 #[inline]
11051 pub fn commit_token(&self) -> Option<SyntaxToken> {
11052 support::token(&self.syntax, SyntaxKind::COMMIT_KW)
11053 }
11054 #[inline]
11055 pub fn on_token(&self) -> Option<SyntaxToken> {
11056 support::token(&self.syntax, SyntaxKind::ON_KW)
11057 }
11058}
11059
11060#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11061pub struct OnConflictClause {
11062 pub(crate) syntax: SyntaxNode,
11063}
11064impl OnConflictClause {
11065 #[inline]
11066 pub fn conflict_action(&self) -> Option<ConflictAction> {
11067 support::child(&self.syntax)
11068 }
11069 #[inline]
11070 pub fn conflict_target(&self) -> Option<ConflictTarget> {
11071 support::child(&self.syntax)
11072 }
11073 #[inline]
11074 pub fn conflict_token(&self) -> Option<SyntaxToken> {
11075 support::token(&self.syntax, SyntaxKind::CONFLICT_KW)
11076 }
11077 #[inline]
11078 pub fn on_token(&self) -> Option<SyntaxToken> {
11079 support::token(&self.syntax, SyntaxKind::ON_KW)
11080 }
11081}
11082
11083#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11084pub struct OnDeleteAction {
11085 pub(crate) syntax: SyntaxNode,
11086}
11087impl OnDeleteAction {
11088 #[inline]
11089 pub fn ref_action(&self) -> Option<RefAction> {
11090 support::child(&self.syntax)
11091 }
11092 #[inline]
11093 pub fn delete_token(&self) -> Option<SyntaxToken> {
11094 support::token(&self.syntax, SyntaxKind::DELETE_KW)
11095 }
11096 #[inline]
11097 pub fn on_token(&self) -> Option<SyntaxToken> {
11098 support::token(&self.syntax, SyntaxKind::ON_KW)
11099 }
11100}
11101
11102#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11103pub struct OnTable {
11104 pub(crate) syntax: SyntaxNode,
11105}
11106impl OnTable {
11107 #[inline]
11108 pub fn path(&self) -> Option<Path> {
11109 support::child(&self.syntax)
11110 }
11111 #[inline]
11112 pub fn on_token(&self) -> Option<SyntaxToken> {
11113 support::token(&self.syntax, SyntaxKind::ON_KW)
11114 }
11115}
11116
11117#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11118pub struct OnUpdateAction {
11119 pub(crate) syntax: SyntaxNode,
11120}
11121impl OnUpdateAction {
11122 #[inline]
11123 pub fn ref_action(&self) -> Option<RefAction> {
11124 support::child(&self.syntax)
11125 }
11126 #[inline]
11127 pub fn on_token(&self) -> Option<SyntaxToken> {
11128 support::token(&self.syntax, SyntaxKind::ON_KW)
11129 }
11130 #[inline]
11131 pub fn update_token(&self) -> Option<SyntaxToken> {
11132 support::token(&self.syntax, SyntaxKind::UPDATE_KW)
11133 }
11134}
11135
11136#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11137pub struct Op {
11138 pub(crate) syntax: SyntaxNode,
11139}
11140impl Op {
11141 #[inline]
11142 pub fn at_time_zone(&self) -> Option<AtTimeZone> {
11143 support::child(&self.syntax)
11144 }
11145 #[inline]
11146 pub fn colon_colon(&self) -> Option<ColonColon> {
11147 support::child(&self.syntax)
11148 }
11149 #[inline]
11150 pub fn colon_eq(&self) -> Option<ColonEq> {
11151 support::child(&self.syntax)
11152 }
11153 #[inline]
11154 pub fn custom_op(&self) -> Option<CustomOp> {
11155 support::child(&self.syntax)
11156 }
11157 #[inline]
11158 pub fn fat_arrow(&self) -> Option<FatArrow> {
11159 support::child(&self.syntax)
11160 }
11161 #[inline]
11162 pub fn gteq(&self) -> Option<Gteq> {
11163 support::child(&self.syntax)
11164 }
11165 #[inline]
11166 pub fn is_distinct_from(&self) -> Option<IsDistinctFrom> {
11167 support::child(&self.syntax)
11168 }
11169 #[inline]
11170 pub fn is_json(&self) -> Option<IsJson> {
11171 support::child(&self.syntax)
11172 }
11173 #[inline]
11174 pub fn is_json_array(&self) -> Option<IsJsonArray> {
11175 support::child(&self.syntax)
11176 }
11177 #[inline]
11178 pub fn is_json_object(&self) -> Option<IsJsonObject> {
11179 support::child(&self.syntax)
11180 }
11181 #[inline]
11182 pub fn is_json_scalar(&self) -> Option<IsJsonScalar> {
11183 support::child(&self.syntax)
11184 }
11185 #[inline]
11186 pub fn is_json_value(&self) -> Option<IsJsonValue> {
11187 support::child(&self.syntax)
11188 }
11189 #[inline]
11190 pub fn is_not(&self) -> Option<IsNot> {
11191 support::child(&self.syntax)
11192 }
11193 #[inline]
11194 pub fn is_not_distinct_from(&self) -> Option<IsNotDistinctFrom> {
11195 support::child(&self.syntax)
11196 }
11197 #[inline]
11198 pub fn is_not_json(&self) -> Option<IsNotJson> {
11199 support::child(&self.syntax)
11200 }
11201 #[inline]
11202 pub fn is_not_json_array(&self) -> Option<IsNotJsonArray> {
11203 support::child(&self.syntax)
11204 }
11205 #[inline]
11206 pub fn is_not_json_scalar(&self) -> Option<IsNotJsonScalar> {
11207 support::child(&self.syntax)
11208 }
11209 #[inline]
11210 pub fn is_not_json_value(&self) -> Option<IsNotJsonValue> {
11211 support::child(&self.syntax)
11212 }
11213 #[inline]
11214 pub fn lteq(&self) -> Option<Lteq> {
11215 support::child(&self.syntax)
11216 }
11217 #[inline]
11218 pub fn neq(&self) -> Option<Neq> {
11219 support::child(&self.syntax)
11220 }
11221 #[inline]
11222 pub fn neqb(&self) -> Option<Neqb> {
11223 support::child(&self.syntax)
11224 }
11225 #[inline]
11226 pub fn not_ilike(&self) -> Option<NotIlike> {
11227 support::child(&self.syntax)
11228 }
11229 #[inline]
11230 pub fn not_in(&self) -> Option<NotIn> {
11231 support::child(&self.syntax)
11232 }
11233 #[inline]
11234 pub fn not_like(&self) -> Option<NotLike> {
11235 support::child(&self.syntax)
11236 }
11237 #[inline]
11238 pub fn not_similar_to(&self) -> Option<NotSimilarTo> {
11239 support::child(&self.syntax)
11240 }
11241 #[inline]
11242 pub fn operator_call(&self) -> Option<OperatorCall> {
11243 support::child(&self.syntax)
11244 }
11245 #[inline]
11246 pub fn similar_to(&self) -> Option<SimilarTo> {
11247 support::child(&self.syntax)
11248 }
11249 #[inline]
11250 pub fn percent_token(&self) -> Option<SyntaxToken> {
11251 support::token(&self.syntax, SyntaxKind::PERCENT)
11252 }
11253 #[inline]
11254 pub fn plus_token(&self) -> Option<SyntaxToken> {
11255 support::token(&self.syntax, SyntaxKind::PLUS)
11256 }
11257 #[inline]
11258 pub fn minus_token(&self) -> Option<SyntaxToken> {
11259 support::token(&self.syntax, SyntaxKind::MINUS)
11260 }
11261 #[inline]
11262 pub fn slash_token(&self) -> Option<SyntaxToken> {
11263 support::token(&self.syntax, SyntaxKind::SLASH)
11264 }
11265 #[inline]
11266 pub fn colon_token(&self) -> Option<SyntaxToken> {
11267 support::token(&self.syntax, SyntaxKind::COLON)
11268 }
11269 #[inline]
11270 pub fn l_angle_token(&self) -> Option<SyntaxToken> {
11271 support::token(&self.syntax, SyntaxKind::L_ANGLE)
11272 }
11273 #[inline]
11274 pub fn eq_token(&self) -> Option<SyntaxToken> {
11275 support::token(&self.syntax, SyntaxKind::EQ)
11276 }
11277 #[inline]
11278 pub fn r_angle_token(&self) -> Option<SyntaxToken> {
11279 support::token(&self.syntax, SyntaxKind::R_ANGLE)
11280 }
11281 #[inline]
11282 pub fn caret_token(&self) -> Option<SyntaxToken> {
11283 support::token(&self.syntax, SyntaxKind::CARET)
11284 }
11285 #[inline]
11286 pub fn and_token(&self) -> Option<SyntaxToken> {
11287 support::token(&self.syntax, SyntaxKind::AND_KW)
11288 }
11289 #[inline]
11290 pub fn collate_token(&self) -> Option<SyntaxToken> {
11291 support::token(&self.syntax, SyntaxKind::COLLATE_KW)
11292 }
11293 #[inline]
11294 pub fn ilike_token(&self) -> Option<SyntaxToken> {
11295 support::token(&self.syntax, SyntaxKind::ILIKE_KW)
11296 }
11297 #[inline]
11298 pub fn in_token(&self) -> Option<SyntaxToken> {
11299 support::token(&self.syntax, SyntaxKind::IN_KW)
11300 }
11301 #[inline]
11302 pub fn is_token(&self) -> Option<SyntaxToken> {
11303 support::token(&self.syntax, SyntaxKind::IS_KW)
11304 }
11305 #[inline]
11306 pub fn like_token(&self) -> Option<SyntaxToken> {
11307 support::token(&self.syntax, SyntaxKind::LIKE_KW)
11308 }
11309 #[inline]
11310 pub fn or_token(&self) -> Option<SyntaxToken> {
11311 support::token(&self.syntax, SyntaxKind::OR_KW)
11312 }
11313 #[inline]
11314 pub fn overlaps_token(&self) -> Option<SyntaxToken> {
11315 support::token(&self.syntax, SyntaxKind::OVERLAPS_KW)
11316 }
11317 #[inline]
11318 pub fn value_token(&self) -> Option<SyntaxToken> {
11319 support::token(&self.syntax, SyntaxKind::VALUE_KW)
11320 }
11321}
11322
11323#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11324pub struct OpClassOption {
11325 pub(crate) syntax: SyntaxNode,
11326}
11327impl OpClassOption {
11328 #[inline]
11329 pub fn function_sig(&self) -> Option<FunctionSig> {
11330 support::child(&self.syntax)
11331 }
11332 #[inline]
11333 pub fn literal(&self) -> Option<Literal> {
11334 support::child(&self.syntax)
11335 }
11336 #[inline]
11337 pub fn op(&self) -> Option<Op> {
11338 support::child(&self.syntax)
11339 }
11340 #[inline]
11341 pub fn param_list(&self) -> Option<ParamList> {
11342 support::child(&self.syntax)
11343 }
11344 #[inline]
11345 pub fn path(&self) -> Option<Path> {
11346 support::child(&self.syntax)
11347 }
11348 #[inline]
11349 pub fn ty(&self) -> Option<Type> {
11350 support::child(&self.syntax)
11351 }
11352 #[inline]
11353 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
11354 support::token(&self.syntax, SyntaxKind::L_PAREN)
11355 }
11356 #[inline]
11357 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
11358 support::token(&self.syntax, SyntaxKind::R_PAREN)
11359 }
11360 #[inline]
11361 pub fn comma_token(&self) -> Option<SyntaxToken> {
11362 support::token(&self.syntax, SyntaxKind::COMMA)
11363 }
11364 #[inline]
11365 pub fn by_token(&self) -> Option<SyntaxToken> {
11366 support::token(&self.syntax, SyntaxKind::BY_KW)
11367 }
11368 #[inline]
11369 pub fn for_token(&self) -> Option<SyntaxToken> {
11370 support::token(&self.syntax, SyntaxKind::FOR_KW)
11371 }
11372 #[inline]
11373 pub fn function_token(&self) -> Option<SyntaxToken> {
11374 support::token(&self.syntax, SyntaxKind::FUNCTION_KW)
11375 }
11376 #[inline]
11377 pub fn operator_token(&self) -> Option<SyntaxToken> {
11378 support::token(&self.syntax, SyntaxKind::OPERATOR_KW)
11379 }
11380 #[inline]
11381 pub fn order_token(&self) -> Option<SyntaxToken> {
11382 support::token(&self.syntax, SyntaxKind::ORDER_KW)
11383 }
11384 #[inline]
11385 pub fn search_token(&self) -> Option<SyntaxToken> {
11386 support::token(&self.syntax, SyntaxKind::SEARCH_KW)
11387 }
11388 #[inline]
11389 pub fn storage_token(&self) -> Option<SyntaxToken> {
11390 support::token(&self.syntax, SyntaxKind::STORAGE_KW)
11391 }
11392}
11393
11394#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11395pub struct OpSig {
11396 pub(crate) syntax: SyntaxNode,
11397}
11398impl OpSig {
11399 #[inline]
11400 pub fn op(&self) -> Option<Op> {
11401 support::child(&self.syntax)
11402 }
11403 #[inline]
11404 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
11405 support::token(&self.syntax, SyntaxKind::L_PAREN)
11406 }
11407 #[inline]
11408 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
11409 support::token(&self.syntax, SyntaxKind::R_PAREN)
11410 }
11411 #[inline]
11412 pub fn comma_token(&self) -> Option<SyntaxToken> {
11413 support::token(&self.syntax, SyntaxKind::COMMA)
11414 }
11415 #[inline]
11416 pub fn none_token(&self) -> Option<SyntaxToken> {
11417 support::token(&self.syntax, SyntaxKind::NONE_KW)
11418 }
11419}
11420
11421#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11422pub struct OpSigList {
11423 pub(crate) syntax: SyntaxNode,
11424}
11425impl OpSigList {
11426 #[inline]
11427 pub fn op_sigs(&self) -> AstChildren<OpSig> {
11428 support::children(&self.syntax)
11429 }
11430}
11431
11432#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11433pub struct OperatorCall {
11434 pub(crate) syntax: SyntaxNode,
11435}
11436impl OperatorCall {
11437 #[inline]
11438 pub fn op(&self) -> Option<Op> {
11439 support::child(&self.syntax)
11440 }
11441 #[inline]
11442 pub fn path(&self) -> Option<Path> {
11443 support::child(&self.syntax)
11444 }
11445 #[inline]
11446 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
11447 support::token(&self.syntax, SyntaxKind::L_PAREN)
11448 }
11449 #[inline]
11450 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
11451 support::token(&self.syntax, SyntaxKind::R_PAREN)
11452 }
11453 #[inline]
11454 pub fn dot_token(&self) -> Option<SyntaxToken> {
11455 support::token(&self.syntax, SyntaxKind::DOT)
11456 }
11457 #[inline]
11458 pub fn operator_token(&self) -> Option<SyntaxToken> {
11459 support::token(&self.syntax, SyntaxKind::OPERATOR_KW)
11460 }
11461}
11462
11463#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11464pub struct OperatorClassOptionList {
11465 pub(crate) syntax: SyntaxNode,
11466}
11467impl OperatorClassOptionList {
11468 #[inline]
11469 pub fn op_class_options(&self) -> AstChildren<OpClassOption> {
11470 support::children(&self.syntax)
11471 }
11472}
11473
11474#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11475pub struct OptionItem {
11476 pub(crate) syntax: SyntaxNode,
11477}
11478impl OptionItem {
11479 #[inline]
11480 pub fn expr(&self) -> Option<Expr> {
11481 support::child(&self.syntax)
11482 }
11483 #[inline]
11484 pub fn default_token(&self) -> Option<SyntaxToken> {
11485 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
11486 }
11487}
11488
11489#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11490pub struct OptionItemList {
11491 pub(crate) syntax: SyntaxNode,
11492}
11493impl OptionItemList {
11494 #[inline]
11495 pub fn option_items(&self) -> AstChildren<OptionItem> {
11496 support::children(&self.syntax)
11497 }
11498 #[inline]
11499 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
11500 support::token(&self.syntax, SyntaxKind::L_PAREN)
11501 }
11502 #[inline]
11503 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
11504 support::token(&self.syntax, SyntaxKind::R_PAREN)
11505 }
11506}
11507
11508#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11509pub struct OrReplace {
11510 pub(crate) syntax: SyntaxNode,
11511}
11512impl OrReplace {
11513 #[inline]
11514 pub fn or_token(&self) -> Option<SyntaxToken> {
11515 support::token(&self.syntax, SyntaxKind::OR_KW)
11516 }
11517 #[inline]
11518 pub fn replace_token(&self) -> Option<SyntaxToken> {
11519 support::token(&self.syntax, SyntaxKind::REPLACE_KW)
11520 }
11521}
11522
11523#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11524pub struct OrderByClause {
11525 pub(crate) syntax: SyntaxNode,
11526}
11527impl OrderByClause {
11528 #[inline]
11529 pub fn sort_by_list(&self) -> Option<SortByList> {
11530 support::child(&self.syntax)
11531 }
11532 #[inline]
11533 pub fn by_token(&self) -> Option<SyntaxToken> {
11534 support::token(&self.syntax, SyntaxKind::BY_KW)
11535 }
11536 #[inline]
11537 pub fn order_token(&self) -> Option<SyntaxToken> {
11538 support::token(&self.syntax, SyntaxKind::ORDER_KW)
11539 }
11540}
11541
11542#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11543pub struct OverClause {
11544 pub(crate) syntax: SyntaxNode,
11545}
11546impl OverClause {
11547 #[inline]
11548 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
11549 support::token(&self.syntax, SyntaxKind::L_PAREN)
11550 }
11551 #[inline]
11552 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
11553 support::token(&self.syntax, SyntaxKind::R_PAREN)
11554 }
11555 #[inline]
11556 pub fn over_token(&self) -> Option<SyntaxToken> {
11557 support::token(&self.syntax, SyntaxKind::OVER_KW)
11558 }
11559}
11560
11561#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11562pub struct OverlayFn {
11563 pub(crate) syntax: SyntaxNode,
11564}
11565impl OverlayFn {
11566 #[inline]
11567 pub fn expr(&self) -> Option<Expr> {
11568 support::child(&self.syntax)
11569 }
11570 #[inline]
11571 pub fn exprs(&self) -> AstChildren<Expr> {
11572 support::children(&self.syntax)
11573 }
11574 #[inline]
11575 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
11576 support::token(&self.syntax, SyntaxKind::L_PAREN)
11577 }
11578 #[inline]
11579 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
11580 support::token(&self.syntax, SyntaxKind::R_PAREN)
11581 }
11582 #[inline]
11583 pub fn for_token(&self) -> Option<SyntaxToken> {
11584 support::token(&self.syntax, SyntaxKind::FOR_KW)
11585 }
11586 #[inline]
11587 pub fn from_token(&self) -> Option<SyntaxToken> {
11588 support::token(&self.syntax, SyntaxKind::FROM_KW)
11589 }
11590 #[inline]
11591 pub fn overlay_token(&self) -> Option<SyntaxToken> {
11592 support::token(&self.syntax, SyntaxKind::OVERLAY_KW)
11593 }
11594 #[inline]
11595 pub fn placing_token(&self) -> Option<SyntaxToken> {
11596 support::token(&self.syntax, SyntaxKind::PLACING_KW)
11597 }
11598}
11599
11600#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11601pub struct OwnedByRoles {
11602 pub(crate) syntax: SyntaxNode,
11603}
11604impl OwnedByRoles {
11605 #[inline]
11606 pub fn role_ref_list(&self) -> Option<RoleRefList> {
11607 support::child(&self.syntax)
11608 }
11609 #[inline]
11610 pub fn by_token(&self) -> Option<SyntaxToken> {
11611 support::token(&self.syntax, SyntaxKind::BY_KW)
11612 }
11613 #[inline]
11614 pub fn owned_token(&self) -> Option<SyntaxToken> {
11615 support::token(&self.syntax, SyntaxKind::OWNED_KW)
11616 }
11617}
11618
11619#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11620pub struct OwnerTo {
11621 pub(crate) syntax: SyntaxNode,
11622}
11623impl OwnerTo {
11624 #[inline]
11625 pub fn role_ref(&self) -> Option<RoleRef> {
11626 support::child(&self.syntax)
11627 }
11628 #[inline]
11629 pub fn owner_token(&self) -> Option<SyntaxToken> {
11630 support::token(&self.syntax, SyntaxKind::OWNER_KW)
11631 }
11632 #[inline]
11633 pub fn to_token(&self) -> Option<SyntaxToken> {
11634 support::token(&self.syntax, SyntaxKind::TO_KW)
11635 }
11636}
11637
11638#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11639pub struct ParallelFuncOption {
11640 pub(crate) syntax: SyntaxNode,
11641}
11642impl ParallelFuncOption {
11643 #[inline]
11644 pub fn ident_token(&self) -> Option<SyntaxToken> {
11645 support::token(&self.syntax, SyntaxKind::IDENT)
11646 }
11647 #[inline]
11648 pub fn parallel_token(&self) -> Option<SyntaxToken> {
11649 support::token(&self.syntax, SyntaxKind::PARALLEL_KW)
11650 }
11651}
11652
11653#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11654pub struct Param {
11655 pub(crate) syntax: SyntaxNode,
11656}
11657impl Param {
11658 #[inline]
11659 pub fn mode(&self) -> Option<ParamMode> {
11660 support::child(&self.syntax)
11661 }
11662 #[inline]
11663 pub fn name(&self) -> Option<Name> {
11664 support::child(&self.syntax)
11665 }
11666 #[inline]
11667 pub fn param_default(&self) -> Option<ParamDefault> {
11668 support::child(&self.syntax)
11669 }
11670 #[inline]
11671 pub fn ty(&self) -> Option<Type> {
11672 support::child(&self.syntax)
11673 }
11674}
11675
11676#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11677pub struct ParamDefault {
11678 pub(crate) syntax: SyntaxNode,
11679}
11680impl ParamDefault {
11681 #[inline]
11682 pub fn expr(&self) -> Option<Expr> {
11683 support::child(&self.syntax)
11684 }
11685 #[inline]
11686 pub fn eq_token(&self) -> Option<SyntaxToken> {
11687 support::token(&self.syntax, SyntaxKind::EQ)
11688 }
11689 #[inline]
11690 pub fn default_token(&self) -> Option<SyntaxToken> {
11691 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
11692 }
11693}
11694
11695#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11696pub struct ParamIn {
11697 pub(crate) syntax: SyntaxNode,
11698}
11699impl ParamIn {
11700 #[inline]
11701 pub fn in_token(&self) -> Option<SyntaxToken> {
11702 support::token(&self.syntax, SyntaxKind::IN_KW)
11703 }
11704}
11705
11706#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11707pub struct ParamInOut {
11708 pub(crate) syntax: SyntaxNode,
11709}
11710impl ParamInOut {
11711 #[inline]
11712 pub fn in_token(&self) -> Option<SyntaxToken> {
11713 support::token(&self.syntax, SyntaxKind::IN_KW)
11714 }
11715 #[inline]
11716 pub fn inout_token(&self) -> Option<SyntaxToken> {
11717 support::token(&self.syntax, SyntaxKind::INOUT_KW)
11718 }
11719 #[inline]
11720 pub fn out_token(&self) -> Option<SyntaxToken> {
11721 support::token(&self.syntax, SyntaxKind::OUT_KW)
11722 }
11723}
11724
11725#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11726pub struct ParamList {
11727 pub(crate) syntax: SyntaxNode,
11728}
11729impl ParamList {
11730 #[inline]
11731 pub fn params(&self) -> AstChildren<Param> {
11732 support::children(&self.syntax)
11733 }
11734}
11735
11736#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11737pub struct ParamOut {
11738 pub(crate) syntax: SyntaxNode,
11739}
11740impl ParamOut {
11741 #[inline]
11742 pub fn out_token(&self) -> Option<SyntaxToken> {
11743 support::token(&self.syntax, SyntaxKind::OUT_KW)
11744 }
11745}
11746
11747#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11748pub struct ParamVariadic {
11749 pub(crate) syntax: SyntaxNode,
11750}
11751impl ParamVariadic {
11752 #[inline]
11753 pub fn variadic_token(&self) -> Option<SyntaxToken> {
11754 support::token(&self.syntax, SyntaxKind::VARIADIC_KW)
11755 }
11756}
11757
11758#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11759pub struct ParenExpr {
11760 pub(crate) syntax: SyntaxNode,
11761}
11762impl ParenExpr {
11763 #[inline]
11764 pub fn expr(&self) -> Option<Expr> {
11765 support::child(&self.syntax)
11766 }
11767 #[inline]
11768 pub fn from_item(&self) -> Option<FromItem> {
11769 support::child(&self.syntax)
11770 }
11771 #[inline]
11772 pub fn select(&self) -> Option<Select> {
11773 support::child(&self.syntax)
11774 }
11775 #[inline]
11776 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
11777 support::token(&self.syntax, SyntaxKind::L_PAREN)
11778 }
11779 #[inline]
11780 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
11781 support::token(&self.syntax, SyntaxKind::R_PAREN)
11782 }
11783}
11784
11785#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11786pub struct ParenSelect {
11787 pub(crate) syntax: SyntaxNode,
11788}
11789impl ParenSelect {
11790 #[inline]
11791 pub fn select(&self) -> Option<SelectVariant> {
11792 support::child(&self.syntax)
11793 }
11794 #[inline]
11795 pub fn with_clause(&self) -> Option<WithClause> {
11796 support::child(&self.syntax)
11797 }
11798 #[inline]
11799 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
11800 support::token(&self.syntax, SyntaxKind::L_PAREN)
11801 }
11802 #[inline]
11803 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
11804 support::token(&self.syntax, SyntaxKind::R_PAREN)
11805 }
11806}
11807
11808#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11809pub struct Partition {
11810 pub(crate) syntax: SyntaxNode,
11811}
11812impl Partition {
11813 #[inline]
11814 pub fn partition_type(&self) -> Option<PartitionType> {
11815 support::child(&self.syntax)
11816 }
11817 #[inline]
11818 pub fn path(&self) -> Option<Path> {
11819 support::child(&self.syntax)
11820 }
11821 #[inline]
11822 pub fn partition_token(&self) -> Option<SyntaxToken> {
11823 support::token(&self.syntax, SyntaxKind::PARTITION_KW)
11824 }
11825}
11826
11827#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11828pub struct PartitionBy {
11829 pub(crate) syntax: SyntaxNode,
11830}
11831impl PartitionBy {
11832 #[inline]
11833 pub fn partition_item_list(&self) -> Option<PartitionItemList> {
11834 support::child(&self.syntax)
11835 }
11836 #[inline]
11837 pub fn by_token(&self) -> Option<SyntaxToken> {
11838 support::token(&self.syntax, SyntaxKind::BY_KW)
11839 }
11840 #[inline]
11841 pub fn ident_token(&self) -> Option<SyntaxToken> {
11842 support::token(&self.syntax, SyntaxKind::IDENT)
11843 }
11844 #[inline]
11845 pub fn partition_token(&self) -> Option<SyntaxToken> {
11846 support::token(&self.syntax, SyntaxKind::PARTITION_KW)
11847 }
11848 #[inline]
11849 pub fn range_token(&self) -> Option<SyntaxToken> {
11850 support::token(&self.syntax, SyntaxKind::RANGE_KW)
11851 }
11852}
11853
11854#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11855pub struct PartitionDefault {
11856 pub(crate) syntax: SyntaxNode,
11857}
11858impl PartitionDefault {
11859 #[inline]
11860 pub fn default_token(&self) -> Option<SyntaxToken> {
11861 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
11862 }
11863}
11864
11865#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11866pub struct PartitionForValuesFrom {
11867 pub(crate) syntax: SyntaxNode,
11868}
11869impl PartitionForValuesFrom {
11870 #[inline]
11871 pub fn exprs(&self) -> AstChildren<Expr> {
11872 support::children(&self.syntax)
11873 }
11874 #[inline]
11875 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
11876 support::token(&self.syntax, SyntaxKind::L_PAREN)
11877 }
11878 #[inline]
11879 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
11880 support::token(&self.syntax, SyntaxKind::R_PAREN)
11881 }
11882 #[inline]
11883 pub fn for_token(&self) -> Option<SyntaxToken> {
11884 support::token(&self.syntax, SyntaxKind::FOR_KW)
11885 }
11886 #[inline]
11887 pub fn from_token(&self) -> Option<SyntaxToken> {
11888 support::token(&self.syntax, SyntaxKind::FROM_KW)
11889 }
11890 #[inline]
11891 pub fn to_token(&self) -> Option<SyntaxToken> {
11892 support::token(&self.syntax, SyntaxKind::TO_KW)
11893 }
11894 #[inline]
11895 pub fn values_token(&self) -> Option<SyntaxToken> {
11896 support::token(&self.syntax, SyntaxKind::VALUES_KW)
11897 }
11898}
11899
11900#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11901pub struct PartitionForValuesIn {
11902 pub(crate) syntax: SyntaxNode,
11903}
11904impl PartitionForValuesIn {
11905 #[inline]
11906 pub fn exprs(&self) -> AstChildren<Expr> {
11907 support::children(&self.syntax)
11908 }
11909 #[inline]
11910 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
11911 support::token(&self.syntax, SyntaxKind::L_PAREN)
11912 }
11913 #[inline]
11914 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
11915 support::token(&self.syntax, SyntaxKind::R_PAREN)
11916 }
11917 #[inline]
11918 pub fn for_token(&self) -> Option<SyntaxToken> {
11919 support::token(&self.syntax, SyntaxKind::FOR_KW)
11920 }
11921 #[inline]
11922 pub fn in_token(&self) -> Option<SyntaxToken> {
11923 support::token(&self.syntax, SyntaxKind::IN_KW)
11924 }
11925 #[inline]
11926 pub fn values_token(&self) -> Option<SyntaxToken> {
11927 support::token(&self.syntax, SyntaxKind::VALUES_KW)
11928 }
11929}
11930
11931#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11932pub struct PartitionForValuesWith {
11933 pub(crate) syntax: SyntaxNode,
11934}
11935impl PartitionForValuesWith {
11936 #[inline]
11937 pub fn literal(&self) -> Option<Literal> {
11938 support::child(&self.syntax)
11939 }
11940 #[inline]
11941 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
11942 support::token(&self.syntax, SyntaxKind::L_PAREN)
11943 }
11944 #[inline]
11945 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
11946 support::token(&self.syntax, SyntaxKind::R_PAREN)
11947 }
11948 #[inline]
11949 pub fn comma_token(&self) -> Option<SyntaxToken> {
11950 support::token(&self.syntax, SyntaxKind::COMMA)
11951 }
11952 #[inline]
11953 pub fn for_token(&self) -> Option<SyntaxToken> {
11954 support::token(&self.syntax, SyntaxKind::FOR_KW)
11955 }
11956 #[inline]
11957 pub fn ident_token(&self) -> Option<SyntaxToken> {
11958 support::token(&self.syntax, SyntaxKind::IDENT)
11959 }
11960 #[inline]
11961 pub fn values_token(&self) -> Option<SyntaxToken> {
11962 support::token(&self.syntax, SyntaxKind::VALUES_KW)
11963 }
11964 #[inline]
11965 pub fn with_token(&self) -> Option<SyntaxToken> {
11966 support::token(&self.syntax, SyntaxKind::WITH_KW)
11967 }
11968}
11969
11970#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11971pub struct PartitionItem {
11972 pub(crate) syntax: SyntaxNode,
11973}
11974impl PartitionItem {
11975 #[inline]
11976 pub fn collate(&self) -> Option<Collate> {
11977 support::child(&self.syntax)
11978 }
11979 #[inline]
11980 pub fn expr(&self) -> Option<Expr> {
11981 support::child(&self.syntax)
11982 }
11983}
11984
11985#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11986pub struct PartitionItemList {
11987 pub(crate) syntax: SyntaxNode,
11988}
11989impl PartitionItemList {
11990 #[inline]
11991 pub fn partition_items(&self) -> AstChildren<PartitionItem> {
11992 support::children(&self.syntax)
11993 }
11994 #[inline]
11995 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
11996 support::token(&self.syntax, SyntaxKind::L_PAREN)
11997 }
11998 #[inline]
11999 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
12000 support::token(&self.syntax, SyntaxKind::R_PAREN)
12001 }
12002}
12003
12004#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12005pub struct PartitionList {
12006 pub(crate) syntax: SyntaxNode,
12007}
12008impl PartitionList {
12009 #[inline]
12010 pub fn partitions(&self) -> AstChildren<Partition> {
12011 support::children(&self.syntax)
12012 }
12013 #[inline]
12014 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
12015 support::token(&self.syntax, SyntaxKind::L_PAREN)
12016 }
12017 #[inline]
12018 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
12019 support::token(&self.syntax, SyntaxKind::R_PAREN)
12020 }
12021}
12022
12023#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12024pub struct PartitionOf {
12025 pub(crate) syntax: SyntaxNode,
12026}
12027impl PartitionOf {
12028 #[inline]
12029 pub fn path(&self) -> Option<Path> {
12030 support::child(&self.syntax)
12031 }
12032 #[inline]
12033 pub fn of_token(&self) -> Option<SyntaxToken> {
12034 support::token(&self.syntax, SyntaxKind::OF_KW)
12035 }
12036 #[inline]
12037 pub fn partition_token(&self) -> Option<SyntaxToken> {
12038 support::token(&self.syntax, SyntaxKind::PARTITION_KW)
12039 }
12040}
12041
12042#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12043pub struct Path {
12044 pub(crate) syntax: SyntaxNode,
12045}
12046impl Path {
12047 #[inline]
12048 pub fn qualifier(&self) -> Option<Path> {
12049 support::child(&self.syntax)
12050 }
12051 #[inline]
12052 pub fn segment(&self) -> Option<PathSegment> {
12053 support::child(&self.syntax)
12054 }
12055 #[inline]
12056 pub fn dot_token(&self) -> Option<SyntaxToken> {
12057 support::token(&self.syntax, SyntaxKind::DOT)
12058 }
12059}
12060
12061#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12062pub struct PathSegment {
12063 pub(crate) syntax: SyntaxNode,
12064}
12065impl PathSegment {
12066 #[inline]
12067 pub fn name(&self) -> Option<Name> {
12068 support::child(&self.syntax)
12069 }
12070 #[inline]
12071 pub fn name_ref(&self) -> Option<NameRef> {
12072 support::child(&self.syntax)
12073 }
12074}
12075
12076#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12077pub struct PathType {
12078 pub(crate) syntax: SyntaxNode,
12079}
12080impl PathType {
12081 #[inline]
12082 pub fn arg_list(&self) -> Option<ArgList> {
12083 support::child(&self.syntax)
12084 }
12085 #[inline]
12086 pub fn path(&self) -> Option<Path> {
12087 support::child(&self.syntax)
12088 }
12089}
12090
12091#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12092pub struct PercentType {
12093 pub(crate) syntax: SyntaxNode,
12094}
12095impl PercentType {
12096 #[inline]
12097 pub fn percent_token(&self) -> Option<SyntaxToken> {
12098 support::token(&self.syntax, SyntaxKind::PERCENT)
12099 }
12100 #[inline]
12101 pub fn type_token(&self) -> Option<SyntaxToken> {
12102 support::token(&self.syntax, SyntaxKind::TYPE_KW)
12103 }
12104}
12105
12106#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12107pub struct PercentTypeClause {
12108 pub(crate) syntax: SyntaxNode,
12109}
12110impl PercentTypeClause {
12111 #[inline]
12112 pub fn path(&self) -> Option<Path> {
12113 support::child(&self.syntax)
12114 }
12115 #[inline]
12116 pub fn percent_type_clause(&self) -> Option<PercentTypeClause> {
12117 support::child(&self.syntax)
12118 }
12119}
12120
12121#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12122pub struct PositionFn {
12123 pub(crate) syntax: SyntaxNode,
12124}
12125impl PositionFn {
12126 #[inline]
12127 pub fn expr(&self) -> Option<Expr> {
12128 support::child(&self.syntax)
12129 }
12130 #[inline]
12131 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
12132 support::token(&self.syntax, SyntaxKind::L_PAREN)
12133 }
12134 #[inline]
12135 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
12136 support::token(&self.syntax, SyntaxKind::R_PAREN)
12137 }
12138 #[inline]
12139 pub fn in_token(&self) -> Option<SyntaxToken> {
12140 support::token(&self.syntax, SyntaxKind::IN_KW)
12141 }
12142 #[inline]
12143 pub fn position_token(&self) -> Option<SyntaxToken> {
12144 support::token(&self.syntax, SyntaxKind::POSITION_KW)
12145 }
12146}
12147
12148#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12149pub struct PostfixExpr {
12150 pub(crate) syntax: SyntaxNode,
12151}
12152impl PostfixExpr {
12153 #[inline]
12154 pub fn expr(&self) -> Option<Expr> {
12155 support::child(&self.syntax)
12156 }
12157}
12158
12159#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12160pub struct PrefixExpr {
12161 pub(crate) syntax: SyntaxNode,
12162}
12163impl PrefixExpr {
12164 #[inline]
12165 pub fn expr(&self) -> Option<Expr> {
12166 support::child(&self.syntax)
12167 }
12168}
12169
12170#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12171pub struct Prepare {
12172 pub(crate) syntax: SyntaxNode,
12173}
12174impl Prepare {
12175 #[inline]
12176 pub fn name(&self) -> Option<Name> {
12177 support::child(&self.syntax)
12178 }
12179 #[inline]
12180 pub fn preparable_stmt(&self) -> Option<PreparableStmt> {
12181 support::child(&self.syntax)
12182 }
12183 #[inline]
12184 pub fn as_token(&self) -> Option<SyntaxToken> {
12185 support::token(&self.syntax, SyntaxKind::AS_KW)
12186 }
12187 #[inline]
12188 pub fn prepare_token(&self) -> Option<SyntaxToken> {
12189 support::token(&self.syntax, SyntaxKind::PREPARE_KW)
12190 }
12191}
12192
12193#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12194pub struct PrepareTransaction {
12195 pub(crate) syntax: SyntaxNode,
12196}
12197impl PrepareTransaction {
12198 #[inline]
12199 pub fn literal(&self) -> Option<Literal> {
12200 support::child(&self.syntax)
12201 }
12202 #[inline]
12203 pub fn prepare_token(&self) -> Option<SyntaxToken> {
12204 support::token(&self.syntax, SyntaxKind::PREPARE_KW)
12205 }
12206 #[inline]
12207 pub fn transaction_token(&self) -> Option<SyntaxToken> {
12208 support::token(&self.syntax, SyntaxKind::TRANSACTION_KW)
12209 }
12210}
12211
12212#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12213pub struct PreserveRows {
12214 pub(crate) syntax: SyntaxNode,
12215}
12216impl PreserveRows {
12217 #[inline]
12218 pub fn preserve_token(&self) -> Option<SyntaxToken> {
12219 support::token(&self.syntax, SyntaxKind::PRESERVE_KW)
12220 }
12221 #[inline]
12222 pub fn rows_token(&self) -> Option<SyntaxToken> {
12223 support::token(&self.syntax, SyntaxKind::ROWS_KW)
12224 }
12225}
12226
12227#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12228pub struct PrimaryKeyConstraint {
12229 pub(crate) syntax: SyntaxNode,
12230}
12231impl PrimaryKeyConstraint {
12232 #[inline]
12233 pub fn column_list(&self) -> Option<ColumnList> {
12234 support::child(&self.syntax)
12235 }
12236 #[inline]
12237 pub fn constraint_name(&self) -> Option<ConstraintName> {
12238 support::child(&self.syntax)
12239 }
12240 #[inline]
12241 pub fn partition_item_list(&self) -> Option<PartitionItemList> {
12242 support::child(&self.syntax)
12243 }
12244 #[inline]
12245 pub fn using_index(&self) -> Option<UsingIndex> {
12246 support::child(&self.syntax)
12247 }
12248 #[inline]
12249 pub fn key_token(&self) -> Option<SyntaxToken> {
12250 support::token(&self.syntax, SyntaxKind::KEY_KW)
12251 }
12252 #[inline]
12253 pub fn primary_token(&self) -> Option<SyntaxToken> {
12254 support::token(&self.syntax, SyntaxKind::PRIMARY_KW)
12255 }
12256}
12257
12258#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12259pub struct PrivilegeTarget {
12260 pub(crate) syntax: SyntaxNode,
12261}
12262impl PrivilegeTarget {
12263 #[inline]
12264 pub fn functions_token(&self) -> Option<SyntaxToken> {
12265 support::token(&self.syntax, SyntaxKind::FUNCTIONS_KW)
12266 }
12267 #[inline]
12268 pub fn large_token(&self) -> Option<SyntaxToken> {
12269 support::token(&self.syntax, SyntaxKind::LARGE_KW)
12270 }
12271 #[inline]
12272 pub fn objects_token(&self) -> Option<SyntaxToken> {
12273 support::token(&self.syntax, SyntaxKind::OBJECTS_KW)
12274 }
12275 #[inline]
12276 pub fn routines_token(&self) -> Option<SyntaxToken> {
12277 support::token(&self.syntax, SyntaxKind::ROUTINES_KW)
12278 }
12279 #[inline]
12280 pub fn schemas_token(&self) -> Option<SyntaxToken> {
12281 support::token(&self.syntax, SyntaxKind::SCHEMAS_KW)
12282 }
12283 #[inline]
12284 pub fn sequences_token(&self) -> Option<SyntaxToken> {
12285 support::token(&self.syntax, SyntaxKind::SEQUENCES_KW)
12286 }
12287 #[inline]
12288 pub fn tables_token(&self) -> Option<SyntaxToken> {
12289 support::token(&self.syntax, SyntaxKind::TABLES_KW)
12290 }
12291 #[inline]
12292 pub fn types_token(&self) -> Option<SyntaxToken> {
12293 support::token(&self.syntax, SyntaxKind::TYPES_KW)
12294 }
12295}
12296
12297#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12298pub struct Privileges {
12299 pub(crate) syntax: SyntaxNode,
12300}
12301impl Privileges {
12302 #[inline]
12303 pub fn column_list(&self) -> Option<ColumnList> {
12304 support::child(&self.syntax)
12305 }
12306 #[inline]
12307 pub fn revoke_command_list(&self) -> Option<RevokeCommandList> {
12308 support::child(&self.syntax)
12309 }
12310 #[inline]
12311 pub fn all_token(&self) -> Option<SyntaxToken> {
12312 support::token(&self.syntax, SyntaxKind::ALL_KW)
12313 }
12314 #[inline]
12315 pub fn privileges_token(&self) -> Option<SyntaxToken> {
12316 support::token(&self.syntax, SyntaxKind::PRIVILEGES_KW)
12317 }
12318}
12319
12320#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12321pub struct PublicationObject {
12322 pub(crate) syntax: SyntaxNode,
12323}
12324impl PublicationObject {
12325 #[inline]
12326 pub fn column_list(&self) -> Option<ColumnList> {
12327 support::child(&self.syntax)
12328 }
12329 #[inline]
12330 pub fn name_ref(&self) -> Option<NameRef> {
12331 support::child(&self.syntax)
12332 }
12333 #[inline]
12334 pub fn path(&self) -> Option<Path> {
12335 support::child(&self.syntax)
12336 }
12337 #[inline]
12338 pub fn where_condition_clause(&self) -> Option<WhereConditionClause> {
12339 support::child(&self.syntax)
12340 }
12341 #[inline]
12342 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
12343 support::token(&self.syntax, SyntaxKind::L_PAREN)
12344 }
12345 #[inline]
12346 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
12347 support::token(&self.syntax, SyntaxKind::R_PAREN)
12348 }
12349 #[inline]
12350 pub fn star_token(&self) -> Option<SyntaxToken> {
12351 support::token(&self.syntax, SyntaxKind::STAR)
12352 }
12353 #[inline]
12354 pub fn current_schema_token(&self) -> Option<SyntaxToken> {
12355 support::token(&self.syntax, SyntaxKind::CURRENT_SCHEMA_KW)
12356 }
12357 #[inline]
12358 pub fn in_token(&self) -> Option<SyntaxToken> {
12359 support::token(&self.syntax, SyntaxKind::IN_KW)
12360 }
12361 #[inline]
12362 pub fn only_token(&self) -> Option<SyntaxToken> {
12363 support::token(&self.syntax, SyntaxKind::ONLY_KW)
12364 }
12365 #[inline]
12366 pub fn schema_token(&self) -> Option<SyntaxToken> {
12367 support::token(&self.syntax, SyntaxKind::SCHEMA_KW)
12368 }
12369 #[inline]
12370 pub fn table_token(&self) -> Option<SyntaxToken> {
12371 support::token(&self.syntax, SyntaxKind::TABLE_KW)
12372 }
12373 #[inline]
12374 pub fn tables_token(&self) -> Option<SyntaxToken> {
12375 support::token(&self.syntax, SyntaxKind::TABLES_KW)
12376 }
12377}
12378
12379#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12380pub struct ReadCommitted {
12381 pub(crate) syntax: SyntaxNode,
12382}
12383impl ReadCommitted {
12384 #[inline]
12385 pub fn committed_token(&self) -> Option<SyntaxToken> {
12386 support::token(&self.syntax, SyntaxKind::COMMITTED_KW)
12387 }
12388 #[inline]
12389 pub fn isolation_token(&self) -> Option<SyntaxToken> {
12390 support::token(&self.syntax, SyntaxKind::ISOLATION_KW)
12391 }
12392 #[inline]
12393 pub fn level_token(&self) -> Option<SyntaxToken> {
12394 support::token(&self.syntax, SyntaxKind::LEVEL_KW)
12395 }
12396 #[inline]
12397 pub fn read_token(&self) -> Option<SyntaxToken> {
12398 support::token(&self.syntax, SyntaxKind::READ_KW)
12399 }
12400}
12401
12402#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12403pub struct ReadOnly {
12404 pub(crate) syntax: SyntaxNode,
12405}
12406impl ReadOnly {
12407 #[inline]
12408 pub fn only_token(&self) -> Option<SyntaxToken> {
12409 support::token(&self.syntax, SyntaxKind::ONLY_KW)
12410 }
12411 #[inline]
12412 pub fn read_token(&self) -> Option<SyntaxToken> {
12413 support::token(&self.syntax, SyntaxKind::READ_KW)
12414 }
12415}
12416
12417#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12418pub struct ReadUncommitted {
12419 pub(crate) syntax: SyntaxNode,
12420}
12421impl ReadUncommitted {
12422 #[inline]
12423 pub fn isolation_token(&self) -> Option<SyntaxToken> {
12424 support::token(&self.syntax, SyntaxKind::ISOLATION_KW)
12425 }
12426 #[inline]
12427 pub fn level_token(&self) -> Option<SyntaxToken> {
12428 support::token(&self.syntax, SyntaxKind::LEVEL_KW)
12429 }
12430 #[inline]
12431 pub fn read_token(&self) -> Option<SyntaxToken> {
12432 support::token(&self.syntax, SyntaxKind::READ_KW)
12433 }
12434 #[inline]
12435 pub fn uncommitted_token(&self) -> Option<SyntaxToken> {
12436 support::token(&self.syntax, SyntaxKind::UNCOMMITTED_KW)
12437 }
12438}
12439
12440#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12441pub struct ReadWrite {
12442 pub(crate) syntax: SyntaxNode,
12443}
12444impl ReadWrite {
12445 #[inline]
12446 pub fn read_token(&self) -> Option<SyntaxToken> {
12447 support::token(&self.syntax, SyntaxKind::READ_KW)
12448 }
12449 #[inline]
12450 pub fn write_token(&self) -> Option<SyntaxToken> {
12451 support::token(&self.syntax, SyntaxKind::WRITE_KW)
12452 }
12453}
12454
12455#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12456pub struct Reassign {
12457 pub(crate) syntax: SyntaxNode,
12458}
12459impl Reassign {
12460 #[inline]
12461 pub fn new_roles(&self) -> Option<RoleRefList> {
12462 support::child(&self.syntax)
12463 }
12464 #[inline]
12465 pub fn old_roles(&self) -> Option<RoleRefList> {
12466 support::child(&self.syntax)
12467 }
12468 #[inline]
12469 pub fn by_token(&self) -> Option<SyntaxToken> {
12470 support::token(&self.syntax, SyntaxKind::BY_KW)
12471 }
12472 #[inline]
12473 pub fn owned_token(&self) -> Option<SyntaxToken> {
12474 support::token(&self.syntax, SyntaxKind::OWNED_KW)
12475 }
12476 #[inline]
12477 pub fn reassign_token(&self) -> Option<SyntaxToken> {
12478 support::token(&self.syntax, SyntaxKind::REASSIGN_KW)
12479 }
12480 #[inline]
12481 pub fn to_token(&self) -> Option<SyntaxToken> {
12482 support::token(&self.syntax, SyntaxKind::TO_KW)
12483 }
12484}
12485
12486#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12487pub struct ReferencesConstraint {
12488 pub(crate) syntax: SyntaxNode,
12489}
12490impl ReferencesConstraint {
12491 #[inline]
12492 pub fn column(&self) -> Option<NameRef> {
12493 support::child(&self.syntax)
12494 }
12495 #[inline]
12496 pub fn constraint_name(&self) -> Option<ConstraintName> {
12497 support::child(&self.syntax)
12498 }
12499 #[inline]
12500 pub fn match_type(&self) -> Option<MatchType> {
12501 support::child(&self.syntax)
12502 }
12503 #[inline]
12504 pub fn on_delete_action(&self) -> Option<OnDeleteAction> {
12505 support::child(&self.syntax)
12506 }
12507 #[inline]
12508 pub fn on_update_action(&self) -> Option<OnUpdateAction> {
12509 support::child(&self.syntax)
12510 }
12511 #[inline]
12512 pub fn table(&self) -> Option<Path> {
12513 support::child(&self.syntax)
12514 }
12515 #[inline]
12516 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
12517 support::token(&self.syntax, SyntaxKind::L_PAREN)
12518 }
12519 #[inline]
12520 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
12521 support::token(&self.syntax, SyntaxKind::R_PAREN)
12522 }
12523 #[inline]
12524 pub fn references_token(&self) -> Option<SyntaxToken> {
12525 support::token(&self.syntax, SyntaxKind::REFERENCES_KW)
12526 }
12527}
12528
12529#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12530pub struct Referencing {
12531 pub(crate) syntax: SyntaxNode,
12532}
12533impl Referencing {
12534 #[inline]
12535 pub fn referencing_tables(&self) -> AstChildren<ReferencingTable> {
12536 support::children(&self.syntax)
12537 }
12538 #[inline]
12539 pub fn referencing_token(&self) -> Option<SyntaxToken> {
12540 support::token(&self.syntax, SyntaxKind::REFERENCING_KW)
12541 }
12542}
12543
12544#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12545pub struct ReferencingTable {
12546 pub(crate) syntax: SyntaxNode,
12547}
12548impl ReferencingTable {
12549 #[inline]
12550 pub fn name_ref(&self) -> Option<NameRef> {
12551 support::child(&self.syntax)
12552 }
12553 #[inline]
12554 pub fn as_token(&self) -> Option<SyntaxToken> {
12555 support::token(&self.syntax, SyntaxKind::AS_KW)
12556 }
12557 #[inline]
12558 pub fn new_token(&self) -> Option<SyntaxToken> {
12559 support::token(&self.syntax, SyntaxKind::NEW_KW)
12560 }
12561 #[inline]
12562 pub fn old_token(&self) -> Option<SyntaxToken> {
12563 support::token(&self.syntax, SyntaxKind::OLD_KW)
12564 }
12565 #[inline]
12566 pub fn table_token(&self) -> Option<SyntaxToken> {
12567 support::token(&self.syntax, SyntaxKind::TABLE_KW)
12568 }
12569}
12570
12571#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12572pub struct Refresh {
12573 pub(crate) syntax: SyntaxNode,
12574}
12575impl Refresh {
12576 #[inline]
12577 pub fn path(&self) -> Option<Path> {
12578 support::child(&self.syntax)
12579 }
12580 #[inline]
12581 pub fn with_data(&self) -> Option<WithData> {
12582 support::child(&self.syntax)
12583 }
12584 #[inline]
12585 pub fn with_no_data(&self) -> Option<WithNoData> {
12586 support::child(&self.syntax)
12587 }
12588 #[inline]
12589 pub fn concurrently_token(&self) -> Option<SyntaxToken> {
12590 support::token(&self.syntax, SyntaxKind::CONCURRENTLY_KW)
12591 }
12592 #[inline]
12593 pub fn materialized_token(&self) -> Option<SyntaxToken> {
12594 support::token(&self.syntax, SyntaxKind::MATERIALIZED_KW)
12595 }
12596 #[inline]
12597 pub fn refresh_token(&self) -> Option<SyntaxToken> {
12598 support::token(&self.syntax, SyntaxKind::REFRESH_KW)
12599 }
12600 #[inline]
12601 pub fn view_token(&self) -> Option<SyntaxToken> {
12602 support::token(&self.syntax, SyntaxKind::VIEW_KW)
12603 }
12604}
12605
12606#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12607pub struct RefreshCollationVersion {
12608 pub(crate) syntax: SyntaxNode,
12609}
12610impl RefreshCollationVersion {
12611 #[inline]
12612 pub fn collation_token(&self) -> Option<SyntaxToken> {
12613 support::token(&self.syntax, SyntaxKind::COLLATION_KW)
12614 }
12615 #[inline]
12616 pub fn refresh_token(&self) -> Option<SyntaxToken> {
12617 support::token(&self.syntax, SyntaxKind::REFRESH_KW)
12618 }
12619 #[inline]
12620 pub fn version_token(&self) -> Option<SyntaxToken> {
12621 support::token(&self.syntax, SyntaxKind::VERSION_KW)
12622 }
12623}
12624
12625#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12626pub struct RefreshVersion {
12627 pub(crate) syntax: SyntaxNode,
12628}
12629impl RefreshVersion {
12630 #[inline]
12631 pub fn refresh_token(&self) -> Option<SyntaxToken> {
12632 support::token(&self.syntax, SyntaxKind::REFRESH_KW)
12633 }
12634 #[inline]
12635 pub fn version_token(&self) -> Option<SyntaxToken> {
12636 support::token(&self.syntax, SyntaxKind::VERSION_KW)
12637 }
12638}
12639
12640#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12641pub struct Reindex {
12642 pub(crate) syntax: SyntaxNode,
12643}
12644impl Reindex {
12645 #[inline]
12646 pub fn path(&self) -> Option<Path> {
12647 support::child(&self.syntax)
12648 }
12649 #[inline]
12650 pub fn database_token(&self) -> Option<SyntaxToken> {
12651 support::token(&self.syntax, SyntaxKind::DATABASE_KW)
12652 }
12653 #[inline]
12654 pub fn index_token(&self) -> Option<SyntaxToken> {
12655 support::token(&self.syntax, SyntaxKind::INDEX_KW)
12656 }
12657 #[inline]
12658 pub fn reindex_token(&self) -> Option<SyntaxToken> {
12659 support::token(&self.syntax, SyntaxKind::REINDEX_KW)
12660 }
12661 #[inline]
12662 pub fn schema_token(&self) -> Option<SyntaxToken> {
12663 support::token(&self.syntax, SyntaxKind::SCHEMA_KW)
12664 }
12665 #[inline]
12666 pub fn system_token(&self) -> Option<SyntaxToken> {
12667 support::token(&self.syntax, SyntaxKind::SYSTEM_KW)
12668 }
12669 #[inline]
12670 pub fn table_token(&self) -> Option<SyntaxToken> {
12671 support::token(&self.syntax, SyntaxKind::TABLE_KW)
12672 }
12673}
12674
12675#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12676pub struct RelationName {
12677 pub(crate) syntax: SyntaxNode,
12678}
12679impl RelationName {
12680 #[inline]
12681 pub fn path(&self) -> Option<Path> {
12682 support::child(&self.syntax)
12683 }
12684 #[inline]
12685 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
12686 support::token(&self.syntax, SyntaxKind::L_PAREN)
12687 }
12688 #[inline]
12689 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
12690 support::token(&self.syntax, SyntaxKind::R_PAREN)
12691 }
12692 #[inline]
12693 pub fn star_token(&self) -> Option<SyntaxToken> {
12694 support::token(&self.syntax, SyntaxKind::STAR)
12695 }
12696 #[inline]
12697 pub fn only_token(&self) -> Option<SyntaxToken> {
12698 support::token(&self.syntax, SyntaxKind::ONLY_KW)
12699 }
12700}
12701
12702#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12703pub struct ReleaseSavepoint {
12704 pub(crate) syntax: SyntaxNode,
12705}
12706impl ReleaseSavepoint {
12707 #[inline]
12708 pub fn name_ref(&self) -> Option<NameRef> {
12709 support::child(&self.syntax)
12710 }
12711 #[inline]
12712 pub fn release_token(&self) -> Option<SyntaxToken> {
12713 support::token(&self.syntax, SyntaxKind::RELEASE_KW)
12714 }
12715 #[inline]
12716 pub fn savepoint_token(&self) -> Option<SyntaxToken> {
12717 support::token(&self.syntax, SyntaxKind::SAVEPOINT_KW)
12718 }
12719}
12720
12721#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12722pub struct RenameColumn {
12723 pub(crate) syntax: SyntaxNode,
12724}
12725impl RenameColumn {
12726 #[inline]
12727 pub fn column_token(&self) -> Option<SyntaxToken> {
12728 support::token(&self.syntax, SyntaxKind::COLUMN_KW)
12729 }
12730 #[inline]
12731 pub fn rename_token(&self) -> Option<SyntaxToken> {
12732 support::token(&self.syntax, SyntaxKind::RENAME_KW)
12733 }
12734 #[inline]
12735 pub fn to_token(&self) -> Option<SyntaxToken> {
12736 support::token(&self.syntax, SyntaxKind::TO_KW)
12737 }
12738}
12739
12740#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12741pub struct RenameConstraint {
12742 pub(crate) syntax: SyntaxNode,
12743}
12744impl RenameConstraint {
12745 #[inline]
12746 pub fn name(&self) -> Option<Name> {
12747 support::child(&self.syntax)
12748 }
12749 #[inline]
12750 pub fn name_ref(&self) -> Option<NameRef> {
12751 support::child(&self.syntax)
12752 }
12753 #[inline]
12754 pub fn constraint_token(&self) -> Option<SyntaxToken> {
12755 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
12756 }
12757 #[inline]
12758 pub fn rename_token(&self) -> Option<SyntaxToken> {
12759 support::token(&self.syntax, SyntaxKind::RENAME_KW)
12760 }
12761 #[inline]
12762 pub fn to_token(&self) -> Option<SyntaxToken> {
12763 support::token(&self.syntax, SyntaxKind::TO_KW)
12764 }
12765}
12766
12767#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12768pub struct RenameTo {
12769 pub(crate) syntax: SyntaxNode,
12770}
12771impl RenameTo {
12772 #[inline]
12773 pub fn name(&self) -> Option<Name> {
12774 support::child(&self.syntax)
12775 }
12776 #[inline]
12777 pub fn rename_token(&self) -> Option<SyntaxToken> {
12778 support::token(&self.syntax, SyntaxKind::RENAME_KW)
12779 }
12780 #[inline]
12781 pub fn to_token(&self) -> Option<SyntaxToken> {
12782 support::token(&self.syntax, SyntaxKind::TO_KW)
12783 }
12784}
12785
12786#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12787pub struct RepeatableClause {
12788 pub(crate) syntax: SyntaxNode,
12789}
12790impl RepeatableClause {
12791 #[inline]
12792 pub fn expr(&self) -> Option<Expr> {
12793 support::child(&self.syntax)
12794 }
12795 #[inline]
12796 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
12797 support::token(&self.syntax, SyntaxKind::L_PAREN)
12798 }
12799 #[inline]
12800 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
12801 support::token(&self.syntax, SyntaxKind::R_PAREN)
12802 }
12803 #[inline]
12804 pub fn repeatable_token(&self) -> Option<SyntaxToken> {
12805 support::token(&self.syntax, SyntaxKind::REPEATABLE_KW)
12806 }
12807}
12808
12809#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12810pub struct RepeatableRead {
12811 pub(crate) syntax: SyntaxNode,
12812}
12813impl RepeatableRead {
12814 #[inline]
12815 pub fn isolation_token(&self) -> Option<SyntaxToken> {
12816 support::token(&self.syntax, SyntaxKind::ISOLATION_KW)
12817 }
12818 #[inline]
12819 pub fn level_token(&self) -> Option<SyntaxToken> {
12820 support::token(&self.syntax, SyntaxKind::LEVEL_KW)
12821 }
12822 #[inline]
12823 pub fn read_token(&self) -> Option<SyntaxToken> {
12824 support::token(&self.syntax, SyntaxKind::READ_KW)
12825 }
12826 #[inline]
12827 pub fn repeatable_token(&self) -> Option<SyntaxToken> {
12828 support::token(&self.syntax, SyntaxKind::REPEATABLE_KW)
12829 }
12830}
12831
12832#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12833pub struct ReplicaIdentity {
12834 pub(crate) syntax: SyntaxNode,
12835}
12836impl ReplicaIdentity {
12837 #[inline]
12838 pub fn identity_token(&self) -> Option<SyntaxToken> {
12839 support::token(&self.syntax, SyntaxKind::IDENTITY_KW)
12840 }
12841 #[inline]
12842 pub fn replica_token(&self) -> Option<SyntaxToken> {
12843 support::token(&self.syntax, SyntaxKind::REPLICA_KW)
12844 }
12845}
12846
12847#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12848pub struct Reset {
12849 pub(crate) syntax: SyntaxNode,
12850}
12851impl Reset {
12852 #[inline]
12853 pub fn name_ref(&self) -> Option<NameRef> {
12854 support::child(&self.syntax)
12855 }
12856 #[inline]
12857 pub fn all_token(&self) -> Option<SyntaxToken> {
12858 support::token(&self.syntax, SyntaxKind::ALL_KW)
12859 }
12860 #[inline]
12861 pub fn reset_token(&self) -> Option<SyntaxToken> {
12862 support::token(&self.syntax, SyntaxKind::RESET_KW)
12863 }
12864}
12865
12866#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12867pub struct ResetConfigParam {
12868 pub(crate) syntax: SyntaxNode,
12869}
12870impl ResetConfigParam {
12871 #[inline]
12872 pub fn path(&self) -> Option<Path> {
12873 support::child(&self.syntax)
12874 }
12875 #[inline]
12876 pub fn all_token(&self) -> Option<SyntaxToken> {
12877 support::token(&self.syntax, SyntaxKind::ALL_KW)
12878 }
12879 #[inline]
12880 pub fn reset_token(&self) -> Option<SyntaxToken> {
12881 support::token(&self.syntax, SyntaxKind::RESET_KW)
12882 }
12883}
12884
12885#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12886pub struct ResetFuncOption {
12887 pub(crate) syntax: SyntaxNode,
12888}
12889impl ResetFuncOption {
12890 #[inline]
12891 pub fn name_ref(&self) -> Option<NameRef> {
12892 support::child(&self.syntax)
12893 }
12894 #[inline]
12895 pub fn reset_token(&self) -> Option<SyntaxToken> {
12896 support::token(&self.syntax, SyntaxKind::RESET_KW)
12897 }
12898}
12899
12900#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12901pub struct ResetOptions {
12902 pub(crate) syntax: SyntaxNode,
12903}
12904impl ResetOptions {
12905 #[inline]
12906 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
12907 support::token(&self.syntax, SyntaxKind::L_PAREN)
12908 }
12909 #[inline]
12910 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
12911 support::token(&self.syntax, SyntaxKind::R_PAREN)
12912 }
12913 #[inline]
12914 pub fn reset_token(&self) -> Option<SyntaxToken> {
12915 support::token(&self.syntax, SyntaxKind::RESET_KW)
12916 }
12917}
12918
12919#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12920pub struct ResetSessionAuth {
12921 pub(crate) syntax: SyntaxNode,
12922}
12923impl ResetSessionAuth {
12924 #[inline]
12925 pub fn authorization_token(&self) -> Option<SyntaxToken> {
12926 support::token(&self.syntax, SyntaxKind::AUTHORIZATION_KW)
12927 }
12928 #[inline]
12929 pub fn reset_token(&self) -> Option<SyntaxToken> {
12930 support::token(&self.syntax, SyntaxKind::RESET_KW)
12931 }
12932 #[inline]
12933 pub fn session_token(&self) -> Option<SyntaxToken> {
12934 support::token(&self.syntax, SyntaxKind::SESSION_KW)
12935 }
12936}
12937
12938#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12939pub struct Restart {
12940 pub(crate) syntax: SyntaxNode,
12941}
12942impl Restart {
12943 #[inline]
12944 pub fn restart_token(&self) -> Option<SyntaxToken> {
12945 support::token(&self.syntax, SyntaxKind::RESTART_KW)
12946 }
12947 #[inline]
12948 pub fn with_token(&self) -> Option<SyntaxToken> {
12949 support::token(&self.syntax, SyntaxKind::WITH_KW)
12950 }
12951}
12952
12953#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12954pub struct Restrict {
12955 pub(crate) syntax: SyntaxNode,
12956}
12957impl Restrict {
12958 #[inline]
12959 pub fn restrict_token(&self) -> Option<SyntaxToken> {
12960 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
12961 }
12962}
12963
12964#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12965pub struct RetType {
12966 pub(crate) syntax: SyntaxNode,
12967}
12968impl RetType {
12969 #[inline]
12970 pub fn ty(&self) -> Option<Type> {
12971 support::child(&self.syntax)
12972 }
12973 #[inline]
12974 pub fn returns_token(&self) -> Option<SyntaxToken> {
12975 support::token(&self.syntax, SyntaxKind::RETURNS_KW)
12976 }
12977}
12978
12979#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12980pub struct ReturnFuncOption {
12981 pub(crate) syntax: SyntaxNode,
12982}
12983impl ReturnFuncOption {
12984 #[inline]
12985 pub fn expr(&self) -> Option<Expr> {
12986 support::child(&self.syntax)
12987 }
12988 #[inline]
12989 pub fn return_token(&self) -> Option<SyntaxToken> {
12990 support::token(&self.syntax, SyntaxKind::RETURN_KW)
12991 }
12992}
12993
12994#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12995pub struct ReturningClause {
12996 pub(crate) syntax: SyntaxNode,
12997}
12998impl ReturningClause {
12999 #[inline]
13000 pub fn returning_option_list(&self) -> Option<ReturningOptionList> {
13001 support::child(&self.syntax)
13002 }
13003 #[inline]
13004 pub fn target_list(&self) -> Option<TargetList> {
13005 support::child(&self.syntax)
13006 }
13007 #[inline]
13008 pub fn returning_token(&self) -> Option<SyntaxToken> {
13009 support::token(&self.syntax, SyntaxKind::RETURNING_KW)
13010 }
13011}
13012
13013#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13014pub struct ReturningOption {
13015 pub(crate) syntax: SyntaxNode,
13016}
13017impl ReturningOption {
13018 #[inline]
13019 pub fn name(&self) -> Option<Name> {
13020 support::child(&self.syntax)
13021 }
13022 #[inline]
13023 pub fn as_token(&self) -> Option<SyntaxToken> {
13024 support::token(&self.syntax, SyntaxKind::AS_KW)
13025 }
13026 #[inline]
13027 pub fn new_token(&self) -> Option<SyntaxToken> {
13028 support::token(&self.syntax, SyntaxKind::NEW_KW)
13029 }
13030 #[inline]
13031 pub fn old_token(&self) -> Option<SyntaxToken> {
13032 support::token(&self.syntax, SyntaxKind::OLD_KW)
13033 }
13034}
13035
13036#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13037pub struct ReturningOptionList {
13038 pub(crate) syntax: SyntaxNode,
13039}
13040impl ReturningOptionList {
13041 #[inline]
13042 pub fn returning_options(&self) -> AstChildren<ReturningOption> {
13043 support::children(&self.syntax)
13044 }
13045 #[inline]
13046 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
13047 support::token(&self.syntax, SyntaxKind::L_PAREN)
13048 }
13049 #[inline]
13050 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
13051 support::token(&self.syntax, SyntaxKind::R_PAREN)
13052 }
13053 #[inline]
13054 pub fn with_token(&self) -> Option<SyntaxToken> {
13055 support::token(&self.syntax, SyntaxKind::WITH_KW)
13056 }
13057}
13058
13059#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13060pub struct Revoke {
13061 pub(crate) syntax: SyntaxNode,
13062}
13063impl Revoke {
13064 #[inline]
13065 pub fn name_refs(&self) -> AstChildren<NameRef> {
13066 support::children(&self.syntax)
13067 }
13068 #[inline]
13069 pub fn paths(&self) -> AstChildren<Path> {
13070 support::children(&self.syntax)
13071 }
13072 #[inline]
13073 pub fn revoke_command_list(&self) -> Option<RevokeCommandList> {
13074 support::child(&self.syntax)
13075 }
13076 #[inline]
13077 pub fn role_ref(&self) -> Option<RoleRef> {
13078 support::child(&self.syntax)
13079 }
13080 #[inline]
13081 pub fn role_ref_list(&self) -> Option<RoleRefList> {
13082 support::child(&self.syntax)
13083 }
13084 #[inline]
13085 pub fn all_token(&self) -> Option<SyntaxToken> {
13086 support::token(&self.syntax, SyntaxKind::ALL_KW)
13087 }
13088 #[inline]
13089 pub fn by_token(&self) -> Option<SyntaxToken> {
13090 support::token(&self.syntax, SyntaxKind::BY_KW)
13091 }
13092 #[inline]
13093 pub fn cascade_token(&self) -> Option<SyntaxToken> {
13094 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
13095 }
13096 #[inline]
13097 pub fn for_token(&self) -> Option<SyntaxToken> {
13098 support::token(&self.syntax, SyntaxKind::FOR_KW)
13099 }
13100 #[inline]
13101 pub fn from_token(&self) -> Option<SyntaxToken> {
13102 support::token(&self.syntax, SyntaxKind::FROM_KW)
13103 }
13104 #[inline]
13105 pub fn grant_token(&self) -> Option<SyntaxToken> {
13106 support::token(&self.syntax, SyntaxKind::GRANT_KW)
13107 }
13108 #[inline]
13109 pub fn granted_token(&self) -> Option<SyntaxToken> {
13110 support::token(&self.syntax, SyntaxKind::GRANTED_KW)
13111 }
13112 #[inline]
13113 pub fn in_token(&self) -> Option<SyntaxToken> {
13114 support::token(&self.syntax, SyntaxKind::IN_KW)
13115 }
13116 #[inline]
13117 pub fn on_token(&self) -> Option<SyntaxToken> {
13118 support::token(&self.syntax, SyntaxKind::ON_KW)
13119 }
13120 #[inline]
13121 pub fn option_token(&self) -> Option<SyntaxToken> {
13122 support::token(&self.syntax, SyntaxKind::OPTION_KW)
13123 }
13124 #[inline]
13125 pub fn privileges_token(&self) -> Option<SyntaxToken> {
13126 support::token(&self.syntax, SyntaxKind::PRIVILEGES_KW)
13127 }
13128 #[inline]
13129 pub fn restrict_token(&self) -> Option<SyntaxToken> {
13130 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
13131 }
13132 #[inline]
13133 pub fn revoke_token(&self) -> Option<SyntaxToken> {
13134 support::token(&self.syntax, SyntaxKind::REVOKE_KW)
13135 }
13136 #[inline]
13137 pub fn schema_token(&self) -> Option<SyntaxToken> {
13138 support::token(&self.syntax, SyntaxKind::SCHEMA_KW)
13139 }
13140 #[inline]
13141 pub fn table_token(&self) -> Option<SyntaxToken> {
13142 support::token(&self.syntax, SyntaxKind::TABLE_KW)
13143 }
13144 #[inline]
13145 pub fn tables_token(&self) -> Option<SyntaxToken> {
13146 support::token(&self.syntax, SyntaxKind::TABLES_KW)
13147 }
13148}
13149
13150#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13151pub struct RevokeCommand {
13152 pub(crate) syntax: SyntaxNode,
13153}
13154impl RevokeCommand {
13155 #[inline]
13156 pub fn role_ref(&self) -> Option<RoleRef> {
13157 support::child(&self.syntax)
13158 }
13159 #[inline]
13160 pub fn all_token(&self) -> Option<SyntaxToken> {
13161 support::token(&self.syntax, SyntaxKind::ALL_KW)
13162 }
13163 #[inline]
13164 pub fn alter_token(&self) -> Option<SyntaxToken> {
13165 support::token(&self.syntax, SyntaxKind::ALTER_KW)
13166 }
13167 #[inline]
13168 pub fn create_token(&self) -> Option<SyntaxToken> {
13169 support::token(&self.syntax, SyntaxKind::CREATE_KW)
13170 }
13171 #[inline]
13172 pub fn delete_token(&self) -> Option<SyntaxToken> {
13173 support::token(&self.syntax, SyntaxKind::DELETE_KW)
13174 }
13175 #[inline]
13176 pub fn execute_token(&self) -> Option<SyntaxToken> {
13177 support::token(&self.syntax, SyntaxKind::EXECUTE_KW)
13178 }
13179 #[inline]
13180 pub fn ident_token(&self) -> Option<SyntaxToken> {
13181 support::token(&self.syntax, SyntaxKind::IDENT)
13182 }
13183 #[inline]
13184 pub fn insert_token(&self) -> Option<SyntaxToken> {
13185 support::token(&self.syntax, SyntaxKind::INSERT_KW)
13186 }
13187 #[inline]
13188 pub fn references_token(&self) -> Option<SyntaxToken> {
13189 support::token(&self.syntax, SyntaxKind::REFERENCES_KW)
13190 }
13191 #[inline]
13192 pub fn select_token(&self) -> Option<SyntaxToken> {
13193 support::token(&self.syntax, SyntaxKind::SELECT_KW)
13194 }
13195 #[inline]
13196 pub fn system_token(&self) -> Option<SyntaxToken> {
13197 support::token(&self.syntax, SyntaxKind::SYSTEM_KW)
13198 }
13199 #[inline]
13200 pub fn temp_token(&self) -> Option<SyntaxToken> {
13201 support::token(&self.syntax, SyntaxKind::TEMP_KW)
13202 }
13203 #[inline]
13204 pub fn temporary_token(&self) -> Option<SyntaxToken> {
13205 support::token(&self.syntax, SyntaxKind::TEMPORARY_KW)
13206 }
13207 #[inline]
13208 pub fn trigger_token(&self) -> Option<SyntaxToken> {
13209 support::token(&self.syntax, SyntaxKind::TRIGGER_KW)
13210 }
13211 #[inline]
13212 pub fn truncate_token(&self) -> Option<SyntaxToken> {
13213 support::token(&self.syntax, SyntaxKind::TRUNCATE_KW)
13214 }
13215 #[inline]
13216 pub fn update_token(&self) -> Option<SyntaxToken> {
13217 support::token(&self.syntax, SyntaxKind::UPDATE_KW)
13218 }
13219}
13220
13221#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13222pub struct RevokeCommandList {
13223 pub(crate) syntax: SyntaxNode,
13224}
13225impl RevokeCommandList {
13226 #[inline]
13227 pub fn revoke_commands(&self) -> AstChildren<RevokeCommand> {
13228 support::children(&self.syntax)
13229 }
13230}
13231
13232#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13233pub struct RevokeDefaultPrivileges {
13234 pub(crate) syntax: SyntaxNode,
13235}
13236impl RevokeDefaultPrivileges {
13237 #[inline]
13238 pub fn privilege_target(&self) -> Option<PrivilegeTarget> {
13239 support::child(&self.syntax)
13240 }
13241 #[inline]
13242 pub fn privileges(&self) -> Option<Privileges> {
13243 support::child(&self.syntax)
13244 }
13245 #[inline]
13246 pub fn role_ref_list(&self) -> Option<RoleRefList> {
13247 support::child(&self.syntax)
13248 }
13249 #[inline]
13250 pub fn cascade_token(&self) -> Option<SyntaxToken> {
13251 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
13252 }
13253 #[inline]
13254 pub fn for_token(&self) -> Option<SyntaxToken> {
13255 support::token(&self.syntax, SyntaxKind::FOR_KW)
13256 }
13257 #[inline]
13258 pub fn from_token(&self) -> Option<SyntaxToken> {
13259 support::token(&self.syntax, SyntaxKind::FROM_KW)
13260 }
13261 #[inline]
13262 pub fn grant_token(&self) -> Option<SyntaxToken> {
13263 support::token(&self.syntax, SyntaxKind::GRANT_KW)
13264 }
13265 #[inline]
13266 pub fn on_token(&self) -> Option<SyntaxToken> {
13267 support::token(&self.syntax, SyntaxKind::ON_KW)
13268 }
13269 #[inline]
13270 pub fn option_token(&self) -> Option<SyntaxToken> {
13271 support::token(&self.syntax, SyntaxKind::OPTION_KW)
13272 }
13273 #[inline]
13274 pub fn restrict_token(&self) -> Option<SyntaxToken> {
13275 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
13276 }
13277 #[inline]
13278 pub fn revoke_token(&self) -> Option<SyntaxToken> {
13279 support::token(&self.syntax, SyntaxKind::REVOKE_KW)
13280 }
13281}
13282
13283#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13284pub struct Role {
13285 pub(crate) syntax: SyntaxNode,
13286}
13287impl Role {
13288 #[inline]
13289 pub fn name(&self) -> Option<Name> {
13290 support::child(&self.syntax)
13291 }
13292 #[inline]
13293 pub fn current_role_token(&self) -> Option<SyntaxToken> {
13294 support::token(&self.syntax, SyntaxKind::CURRENT_ROLE_KW)
13295 }
13296 #[inline]
13297 pub fn current_user_token(&self) -> Option<SyntaxToken> {
13298 support::token(&self.syntax, SyntaxKind::CURRENT_USER_KW)
13299 }
13300 #[inline]
13301 pub fn group_token(&self) -> Option<SyntaxToken> {
13302 support::token(&self.syntax, SyntaxKind::GROUP_KW)
13303 }
13304 #[inline]
13305 pub fn session_user_token(&self) -> Option<SyntaxToken> {
13306 support::token(&self.syntax, SyntaxKind::SESSION_USER_KW)
13307 }
13308}
13309
13310#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13311pub struct RoleOption {
13312 pub(crate) syntax: SyntaxNode,
13313}
13314impl RoleOption {
13315 #[inline]
13316 pub fn inherit_token(&self) -> Option<SyntaxToken> {
13317 support::token(&self.syntax, SyntaxKind::INHERIT_KW)
13318 }
13319}
13320
13321#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13322pub struct RoleOptionList {
13323 pub(crate) syntax: SyntaxNode,
13324}
13325impl RoleOptionList {
13326 #[inline]
13327 pub fn role_options(&self) -> AstChildren<RoleOption> {
13328 support::children(&self.syntax)
13329 }
13330 #[inline]
13331 pub fn with_token(&self) -> Option<SyntaxToken> {
13332 support::token(&self.syntax, SyntaxKind::WITH_KW)
13333 }
13334}
13335
13336#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13337pub struct RoleRef {
13338 pub(crate) syntax: SyntaxNode,
13339}
13340impl RoleRef {
13341 #[inline]
13342 pub fn name_ref(&self) -> Option<NameRef> {
13343 support::child(&self.syntax)
13344 }
13345 #[inline]
13346 pub fn current_role_token(&self) -> Option<SyntaxToken> {
13347 support::token(&self.syntax, SyntaxKind::CURRENT_ROLE_KW)
13348 }
13349 #[inline]
13350 pub fn current_user_token(&self) -> Option<SyntaxToken> {
13351 support::token(&self.syntax, SyntaxKind::CURRENT_USER_KW)
13352 }
13353 #[inline]
13354 pub fn group_token(&self) -> Option<SyntaxToken> {
13355 support::token(&self.syntax, SyntaxKind::GROUP_KW)
13356 }
13357 #[inline]
13358 pub fn session_user_token(&self) -> Option<SyntaxToken> {
13359 support::token(&self.syntax, SyntaxKind::SESSION_USER_KW)
13360 }
13361}
13362
13363#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13364pub struct RoleRefList {
13365 pub(crate) syntax: SyntaxNode,
13366}
13367impl RoleRefList {
13368 #[inline]
13369 pub fn role_refs(&self) -> AstChildren<RoleRef> {
13370 support::children(&self.syntax)
13371 }
13372}
13373
13374#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13375pub struct Rollback {
13376 pub(crate) syntax: SyntaxNode,
13377}
13378impl Rollback {
13379 #[inline]
13380 pub fn literal(&self) -> Option<Literal> {
13381 support::child(&self.syntax)
13382 }
13383 #[inline]
13384 pub fn name_ref(&self) -> Option<NameRef> {
13385 support::child(&self.syntax)
13386 }
13387 #[inline]
13388 pub fn abort_token(&self) -> Option<SyntaxToken> {
13389 support::token(&self.syntax, SyntaxKind::ABORT_KW)
13390 }
13391 #[inline]
13392 pub fn and_token(&self) -> Option<SyntaxToken> {
13393 support::token(&self.syntax, SyntaxKind::AND_KW)
13394 }
13395 #[inline]
13396 pub fn chain_token(&self) -> Option<SyntaxToken> {
13397 support::token(&self.syntax, SyntaxKind::CHAIN_KW)
13398 }
13399 #[inline]
13400 pub fn no_token(&self) -> Option<SyntaxToken> {
13401 support::token(&self.syntax, SyntaxKind::NO_KW)
13402 }
13403 #[inline]
13404 pub fn prepared_token(&self) -> Option<SyntaxToken> {
13405 support::token(&self.syntax, SyntaxKind::PREPARED_KW)
13406 }
13407 #[inline]
13408 pub fn rollback_token(&self) -> Option<SyntaxToken> {
13409 support::token(&self.syntax, SyntaxKind::ROLLBACK_KW)
13410 }
13411 #[inline]
13412 pub fn savepoint_token(&self) -> Option<SyntaxToken> {
13413 support::token(&self.syntax, SyntaxKind::SAVEPOINT_KW)
13414 }
13415 #[inline]
13416 pub fn to_token(&self) -> Option<SyntaxToken> {
13417 support::token(&self.syntax, SyntaxKind::TO_KW)
13418 }
13419 #[inline]
13420 pub fn transaction_token(&self) -> Option<SyntaxToken> {
13421 support::token(&self.syntax, SyntaxKind::TRANSACTION_KW)
13422 }
13423 #[inline]
13424 pub fn work_token(&self) -> Option<SyntaxToken> {
13425 support::token(&self.syntax, SyntaxKind::WORK_KW)
13426 }
13427}
13428
13429#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13430pub struct Row {
13431 pub(crate) syntax: SyntaxNode,
13432}
13433impl Row {
13434 #[inline]
13435 pub fn exprs(&self) -> AstChildren<Expr> {
13436 support::children(&self.syntax)
13437 }
13438}
13439
13440#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13441pub struct RowList {
13442 pub(crate) syntax: SyntaxNode,
13443}
13444impl RowList {
13445 #[inline]
13446 pub fn rows(&self) -> AstChildren<Row> {
13447 support::children(&self.syntax)
13448 }
13449}
13450
13451#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13452pub struct RowsFuncOption {
13453 pub(crate) syntax: SyntaxNode,
13454}
13455impl RowsFuncOption {
13456 #[inline]
13457 pub fn rows_token(&self) -> Option<SyntaxToken> {
13458 support::token(&self.syntax, SyntaxKind::ROWS_KW)
13459 }
13460}
13461
13462#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13463pub struct Savepoint {
13464 pub(crate) syntax: SyntaxNode,
13465}
13466impl Savepoint {
13467 #[inline]
13468 pub fn name(&self) -> Option<Name> {
13469 support::child(&self.syntax)
13470 }
13471 #[inline]
13472 pub fn savepoint_token(&self) -> Option<SyntaxToken> {
13473 support::token(&self.syntax, SyntaxKind::SAVEPOINT_KW)
13474 }
13475}
13476
13477#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13478pub struct SecurityFuncOption {
13479 pub(crate) syntax: SyntaxNode,
13480}
13481impl SecurityFuncOption {
13482 #[inline]
13483 pub fn definer_token(&self) -> Option<SyntaxToken> {
13484 support::token(&self.syntax, SyntaxKind::DEFINER_KW)
13485 }
13486 #[inline]
13487 pub fn invoker_token(&self) -> Option<SyntaxToken> {
13488 support::token(&self.syntax, SyntaxKind::INVOKER_KW)
13489 }
13490 #[inline]
13491 pub fn security_token(&self) -> Option<SyntaxToken> {
13492 support::token(&self.syntax, SyntaxKind::SECURITY_KW)
13493 }
13494}
13495
13496#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13497pub struct SecurityLabel {
13498 pub(crate) syntax: SyntaxNode,
13499}
13500impl SecurityLabel {
13501 #[inline]
13502 pub fn aggregate(&self) -> Option<Aggregate> {
13503 support::child(&self.syntax)
13504 }
13505 #[inline]
13506 pub fn for_provider(&self) -> Option<ForProvider> {
13507 support::child(&self.syntax)
13508 }
13509 #[inline]
13510 pub fn function_sig(&self) -> Option<FunctionSig> {
13511 support::child(&self.syntax)
13512 }
13513 #[inline]
13514 pub fn literal(&self) -> Option<Literal> {
13515 support::child(&self.syntax)
13516 }
13517 #[inline]
13518 pub fn path(&self) -> Option<Path> {
13519 support::child(&self.syntax)
13520 }
13521 #[inline]
13522 pub fn aggregate_token(&self) -> Option<SyntaxToken> {
13523 support::token(&self.syntax, SyntaxKind::AGGREGATE_KW)
13524 }
13525 #[inline]
13526 pub fn column_token(&self) -> Option<SyntaxToken> {
13527 support::token(&self.syntax, SyntaxKind::COLUMN_KW)
13528 }
13529 #[inline]
13530 pub fn database_token(&self) -> Option<SyntaxToken> {
13531 support::token(&self.syntax, SyntaxKind::DATABASE_KW)
13532 }
13533 #[inline]
13534 pub fn domain_token(&self) -> Option<SyntaxToken> {
13535 support::token(&self.syntax, SyntaxKind::DOMAIN_KW)
13536 }
13537 #[inline]
13538 pub fn event_token(&self) -> Option<SyntaxToken> {
13539 support::token(&self.syntax, SyntaxKind::EVENT_KW)
13540 }
13541 #[inline]
13542 pub fn foreign_token(&self) -> Option<SyntaxToken> {
13543 support::token(&self.syntax, SyntaxKind::FOREIGN_KW)
13544 }
13545 #[inline]
13546 pub fn function_token(&self) -> Option<SyntaxToken> {
13547 support::token(&self.syntax, SyntaxKind::FUNCTION_KW)
13548 }
13549 #[inline]
13550 pub fn is_token(&self) -> Option<SyntaxToken> {
13551 support::token(&self.syntax, SyntaxKind::IS_KW)
13552 }
13553 #[inline]
13554 pub fn label_token(&self) -> Option<SyntaxToken> {
13555 support::token(&self.syntax, SyntaxKind::LABEL_KW)
13556 }
13557 #[inline]
13558 pub fn language_token(&self) -> Option<SyntaxToken> {
13559 support::token(&self.syntax, SyntaxKind::LANGUAGE_KW)
13560 }
13561 #[inline]
13562 pub fn large_token(&self) -> Option<SyntaxToken> {
13563 support::token(&self.syntax, SyntaxKind::LARGE_KW)
13564 }
13565 #[inline]
13566 pub fn materialized_token(&self) -> Option<SyntaxToken> {
13567 support::token(&self.syntax, SyntaxKind::MATERIALIZED_KW)
13568 }
13569 #[inline]
13570 pub fn null_token(&self) -> Option<SyntaxToken> {
13571 support::token(&self.syntax, SyntaxKind::NULL_KW)
13572 }
13573 #[inline]
13574 pub fn object_token(&self) -> Option<SyntaxToken> {
13575 support::token(&self.syntax, SyntaxKind::OBJECT_KW)
13576 }
13577 #[inline]
13578 pub fn on_token(&self) -> Option<SyntaxToken> {
13579 support::token(&self.syntax, SyntaxKind::ON_KW)
13580 }
13581 #[inline]
13582 pub fn procedural_token(&self) -> Option<SyntaxToken> {
13583 support::token(&self.syntax, SyntaxKind::PROCEDURAL_KW)
13584 }
13585 #[inline]
13586 pub fn procedure_token(&self) -> Option<SyntaxToken> {
13587 support::token(&self.syntax, SyntaxKind::PROCEDURE_KW)
13588 }
13589 #[inline]
13590 pub fn publication_token(&self) -> Option<SyntaxToken> {
13591 support::token(&self.syntax, SyntaxKind::PUBLICATION_KW)
13592 }
13593 #[inline]
13594 pub fn role_token(&self) -> Option<SyntaxToken> {
13595 support::token(&self.syntax, SyntaxKind::ROLE_KW)
13596 }
13597 #[inline]
13598 pub fn routine_token(&self) -> Option<SyntaxToken> {
13599 support::token(&self.syntax, SyntaxKind::ROUTINE_KW)
13600 }
13601 #[inline]
13602 pub fn schema_token(&self) -> Option<SyntaxToken> {
13603 support::token(&self.syntax, SyntaxKind::SCHEMA_KW)
13604 }
13605 #[inline]
13606 pub fn security_token(&self) -> Option<SyntaxToken> {
13607 support::token(&self.syntax, SyntaxKind::SECURITY_KW)
13608 }
13609 #[inline]
13610 pub fn sequence_token(&self) -> Option<SyntaxToken> {
13611 support::token(&self.syntax, SyntaxKind::SEQUENCE_KW)
13612 }
13613 #[inline]
13614 pub fn subscription_token(&self) -> Option<SyntaxToken> {
13615 support::token(&self.syntax, SyntaxKind::SUBSCRIPTION_KW)
13616 }
13617 #[inline]
13618 pub fn table_token(&self) -> Option<SyntaxToken> {
13619 support::token(&self.syntax, SyntaxKind::TABLE_KW)
13620 }
13621 #[inline]
13622 pub fn tablespace_token(&self) -> Option<SyntaxToken> {
13623 support::token(&self.syntax, SyntaxKind::TABLESPACE_KW)
13624 }
13625 #[inline]
13626 pub fn trigger_token(&self) -> Option<SyntaxToken> {
13627 support::token(&self.syntax, SyntaxKind::TRIGGER_KW)
13628 }
13629 #[inline]
13630 pub fn type_token(&self) -> Option<SyntaxToken> {
13631 support::token(&self.syntax, SyntaxKind::TYPE_KW)
13632 }
13633 #[inline]
13634 pub fn view_token(&self) -> Option<SyntaxToken> {
13635 support::token(&self.syntax, SyntaxKind::VIEW_KW)
13636 }
13637}
13638
13639#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13640pub struct Select {
13641 pub(crate) syntax: SyntaxNode,
13642}
13643impl Select {
13644 #[inline]
13645 pub fn fetch_clause(&self) -> Option<FetchClause> {
13646 support::child(&self.syntax)
13647 }
13648 #[inline]
13649 pub fn filter_clause(&self) -> Option<FilterClause> {
13650 support::child(&self.syntax)
13651 }
13652 #[inline]
13653 pub fn from_clause(&self) -> Option<FromClause> {
13654 support::child(&self.syntax)
13655 }
13656 #[inline]
13657 pub fn group_by_clause(&self) -> Option<GroupByClause> {
13658 support::child(&self.syntax)
13659 }
13660 #[inline]
13661 pub fn having_clause(&self) -> Option<HavingClause> {
13662 support::child(&self.syntax)
13663 }
13664 #[inline]
13665 pub fn limit_clause(&self) -> Option<LimitClause> {
13666 support::child(&self.syntax)
13667 }
13668 #[inline]
13669 pub fn locking_clauses(&self) -> AstChildren<LockingClause> {
13670 support::children(&self.syntax)
13671 }
13672 #[inline]
13673 pub fn offset_clause(&self) -> Option<OffsetClause> {
13674 support::child(&self.syntax)
13675 }
13676 #[inline]
13677 pub fn order_by_clause(&self) -> Option<OrderByClause> {
13678 support::child(&self.syntax)
13679 }
13680 #[inline]
13681 pub fn select_clause(&self) -> Option<SelectClause> {
13682 support::child(&self.syntax)
13683 }
13684 #[inline]
13685 pub fn where_clause(&self) -> Option<WhereClause> {
13686 support::child(&self.syntax)
13687 }
13688 #[inline]
13689 pub fn window_clause(&self) -> Option<WindowClause> {
13690 support::child(&self.syntax)
13691 }
13692 #[inline]
13693 pub fn with_clause(&self) -> Option<WithClause> {
13694 support::child(&self.syntax)
13695 }
13696}
13697
13698#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13699pub struct SelectClause {
13700 pub(crate) syntax: SyntaxNode,
13701}
13702impl SelectClause {
13703 #[inline]
13704 pub fn distinct_clause(&self) -> Option<DistinctClause> {
13705 support::child(&self.syntax)
13706 }
13707 #[inline]
13708 pub fn target_list(&self) -> Option<TargetList> {
13709 support::child(&self.syntax)
13710 }
13711 #[inline]
13712 pub fn all_token(&self) -> Option<SyntaxToken> {
13713 support::token(&self.syntax, SyntaxKind::ALL_KW)
13714 }
13715 #[inline]
13716 pub fn select_token(&self) -> Option<SyntaxToken> {
13717 support::token(&self.syntax, SyntaxKind::SELECT_KW)
13718 }
13719}
13720
13721#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13722pub struct SelectInto {
13723 pub(crate) syntax: SyntaxNode,
13724}
13725impl SelectInto {
13726 #[inline]
13727 pub fn filter_clause(&self) -> Option<FilterClause> {
13728 support::child(&self.syntax)
13729 }
13730 #[inline]
13731 pub fn from_clause(&self) -> Option<FromClause> {
13732 support::child(&self.syntax)
13733 }
13734 #[inline]
13735 pub fn group_by_clause(&self) -> Option<GroupByClause> {
13736 support::child(&self.syntax)
13737 }
13738 #[inline]
13739 pub fn having_clause(&self) -> Option<HavingClause> {
13740 support::child(&self.syntax)
13741 }
13742 #[inline]
13743 pub fn into_clause(&self) -> Option<IntoClause> {
13744 support::child(&self.syntax)
13745 }
13746 #[inline]
13747 pub fn limit_clause(&self) -> Option<LimitClause> {
13748 support::child(&self.syntax)
13749 }
13750 #[inline]
13751 pub fn locking_clauses(&self) -> AstChildren<LockingClause> {
13752 support::children(&self.syntax)
13753 }
13754 #[inline]
13755 pub fn offset_clause(&self) -> Option<OffsetClause> {
13756 support::child(&self.syntax)
13757 }
13758 #[inline]
13759 pub fn order_by_clause(&self) -> Option<OrderByClause> {
13760 support::child(&self.syntax)
13761 }
13762 #[inline]
13763 pub fn select_clause(&self) -> Option<SelectClause> {
13764 support::child(&self.syntax)
13765 }
13766 #[inline]
13767 pub fn where_clause(&self) -> Option<WhereClause> {
13768 support::child(&self.syntax)
13769 }
13770 #[inline]
13771 pub fn window_clause(&self) -> Option<WindowClause> {
13772 support::child(&self.syntax)
13773 }
13774 #[inline]
13775 pub fn with_clause(&self) -> Option<WithClause> {
13776 support::child(&self.syntax)
13777 }
13778}
13779
13780#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13781pub struct SequenceOption {
13782 pub(crate) syntax: SyntaxNode,
13783}
13784impl SequenceOption {
13785 #[inline]
13786 pub fn literal(&self) -> Option<Literal> {
13787 support::child(&self.syntax)
13788 }
13789 #[inline]
13790 pub fn name_ref(&self) -> Option<NameRef> {
13791 support::child(&self.syntax)
13792 }
13793 #[inline]
13794 pub fn path(&self) -> Option<Path> {
13795 support::child(&self.syntax)
13796 }
13797 #[inline]
13798 pub fn ty(&self) -> Option<Type> {
13799 support::child(&self.syntax)
13800 }
13801 #[inline]
13802 pub fn as_token(&self) -> Option<SyntaxToken> {
13803 support::token(&self.syntax, SyntaxKind::AS_KW)
13804 }
13805 #[inline]
13806 pub fn by_token(&self) -> Option<SyntaxToken> {
13807 support::token(&self.syntax, SyntaxKind::BY_KW)
13808 }
13809 #[inline]
13810 pub fn cycle_token(&self) -> Option<SyntaxToken> {
13811 support::token(&self.syntax, SyntaxKind::CYCLE_KW)
13812 }
13813 #[inline]
13814 pub fn increment_token(&self) -> Option<SyntaxToken> {
13815 support::token(&self.syntax, SyntaxKind::INCREMENT_KW)
13816 }
13817 #[inline]
13818 pub fn logged_token(&self) -> Option<SyntaxToken> {
13819 support::token(&self.syntax, SyntaxKind::LOGGED_KW)
13820 }
13821 #[inline]
13822 pub fn maxvalue_token(&self) -> Option<SyntaxToken> {
13823 support::token(&self.syntax, SyntaxKind::MAXVALUE_KW)
13824 }
13825 #[inline]
13826 pub fn minvalue_token(&self) -> Option<SyntaxToken> {
13827 support::token(&self.syntax, SyntaxKind::MINVALUE_KW)
13828 }
13829 #[inline]
13830 pub fn name_token(&self) -> Option<SyntaxToken> {
13831 support::token(&self.syntax, SyntaxKind::NAME_KW)
13832 }
13833 #[inline]
13834 pub fn no_token(&self) -> Option<SyntaxToken> {
13835 support::token(&self.syntax, SyntaxKind::NO_KW)
13836 }
13837 #[inline]
13838 pub fn none_token(&self) -> Option<SyntaxToken> {
13839 support::token(&self.syntax, SyntaxKind::NONE_KW)
13840 }
13841 #[inline]
13842 pub fn owned_token(&self) -> Option<SyntaxToken> {
13843 support::token(&self.syntax, SyntaxKind::OWNED_KW)
13844 }
13845 #[inline]
13846 pub fn restart_token(&self) -> Option<SyntaxToken> {
13847 support::token(&self.syntax, SyntaxKind::RESTART_KW)
13848 }
13849 #[inline]
13850 pub fn sequence_token(&self) -> Option<SyntaxToken> {
13851 support::token(&self.syntax, SyntaxKind::SEQUENCE_KW)
13852 }
13853 #[inline]
13854 pub fn start_token(&self) -> Option<SyntaxToken> {
13855 support::token(&self.syntax, SyntaxKind::START_KW)
13856 }
13857 #[inline]
13858 pub fn unlogged_token(&self) -> Option<SyntaxToken> {
13859 support::token(&self.syntax, SyntaxKind::UNLOGGED_KW)
13860 }
13861 #[inline]
13862 pub fn with_token(&self) -> Option<SyntaxToken> {
13863 support::token(&self.syntax, SyntaxKind::WITH_KW)
13864 }
13865}
13866
13867#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13868pub struct SequenceOptionList {
13869 pub(crate) syntax: SyntaxNode,
13870}
13871impl SequenceOptionList {
13872 #[inline]
13873 pub fn sequence_options(&self) -> AstChildren<SequenceOption> {
13874 support::children(&self.syntax)
13875 }
13876 #[inline]
13877 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
13878 support::token(&self.syntax, SyntaxKind::L_PAREN)
13879 }
13880 #[inline]
13881 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
13882 support::token(&self.syntax, SyntaxKind::R_PAREN)
13883 }
13884}
13885
13886#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13887pub struct Serializable {
13888 pub(crate) syntax: SyntaxNode,
13889}
13890impl Serializable {
13891 #[inline]
13892 pub fn isolation_token(&self) -> Option<SyntaxToken> {
13893 support::token(&self.syntax, SyntaxKind::ISOLATION_KW)
13894 }
13895 #[inline]
13896 pub fn level_token(&self) -> Option<SyntaxToken> {
13897 support::token(&self.syntax, SyntaxKind::LEVEL_KW)
13898 }
13899 #[inline]
13900 pub fn serializable_token(&self) -> Option<SyntaxToken> {
13901 support::token(&self.syntax, SyntaxKind::SERIALIZABLE_KW)
13902 }
13903}
13904
13905#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13906pub struct ServerName {
13907 pub(crate) syntax: SyntaxNode,
13908}
13909impl ServerName {
13910 #[inline]
13911 pub fn name_ref(&self) -> Option<NameRef> {
13912 support::child(&self.syntax)
13913 }
13914 #[inline]
13915 pub fn server_token(&self) -> Option<SyntaxToken> {
13916 support::token(&self.syntax, SyntaxKind::SERVER_KW)
13917 }
13918}
13919
13920#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13921pub struct Set {
13922 pub(crate) syntax: SyntaxNode,
13923}
13924impl Set {
13925 #[inline]
13926 pub fn config_value(&self) -> Option<ConfigValue> {
13927 support::child(&self.syntax)
13928 }
13929 #[inline]
13930 pub fn config_values(&self) -> AstChildren<ConfigValue> {
13931 support::children(&self.syntax)
13932 }
13933 #[inline]
13934 pub fn literal(&self) -> Option<Literal> {
13935 support::child(&self.syntax)
13936 }
13937 #[inline]
13938 pub fn path(&self) -> Option<Path> {
13939 support::child(&self.syntax)
13940 }
13941 #[inline]
13942 pub fn eq_token(&self) -> Option<SyntaxToken> {
13943 support::token(&self.syntax, SyntaxKind::EQ)
13944 }
13945 #[inline]
13946 pub fn catalog_token(&self) -> Option<SyntaxToken> {
13947 support::token(&self.syntax, SyntaxKind::CATALOG_KW)
13948 }
13949 #[inline]
13950 pub fn content_token(&self) -> Option<SyntaxToken> {
13951 support::token(&self.syntax, SyntaxKind::CONTENT_KW)
13952 }
13953 #[inline]
13954 pub fn current_token(&self) -> Option<SyntaxToken> {
13955 support::token(&self.syntax, SyntaxKind::CURRENT_KW)
13956 }
13957 #[inline]
13958 pub fn default_token(&self) -> Option<SyntaxToken> {
13959 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
13960 }
13961 #[inline]
13962 pub fn document_token(&self) -> Option<SyntaxToken> {
13963 support::token(&self.syntax, SyntaxKind::DOCUMENT_KW)
13964 }
13965 #[inline]
13966 pub fn from_token(&self) -> Option<SyntaxToken> {
13967 support::token(&self.syntax, SyntaxKind::FROM_KW)
13968 }
13969 #[inline]
13970 pub fn local_token(&self) -> Option<SyntaxToken> {
13971 support::token(&self.syntax, SyntaxKind::LOCAL_KW)
13972 }
13973 #[inline]
13974 pub fn option_token(&self) -> Option<SyntaxToken> {
13975 support::token(&self.syntax, SyntaxKind::OPTION_KW)
13976 }
13977 #[inline]
13978 pub fn schema_token(&self) -> Option<SyntaxToken> {
13979 support::token(&self.syntax, SyntaxKind::SCHEMA_KW)
13980 }
13981 #[inline]
13982 pub fn session_token(&self) -> Option<SyntaxToken> {
13983 support::token(&self.syntax, SyntaxKind::SESSION_KW)
13984 }
13985 #[inline]
13986 pub fn set_token(&self) -> Option<SyntaxToken> {
13987 support::token(&self.syntax, SyntaxKind::SET_KW)
13988 }
13989 #[inline]
13990 pub fn time_token(&self) -> Option<SyntaxToken> {
13991 support::token(&self.syntax, SyntaxKind::TIME_KW)
13992 }
13993 #[inline]
13994 pub fn to_token(&self) -> Option<SyntaxToken> {
13995 support::token(&self.syntax, SyntaxKind::TO_KW)
13996 }
13997 #[inline]
13998 pub fn xml_token(&self) -> Option<SyntaxToken> {
13999 support::token(&self.syntax, SyntaxKind::XML_KW)
14000 }
14001 #[inline]
14002 pub fn zone_token(&self) -> Option<SyntaxToken> {
14003 support::token(&self.syntax, SyntaxKind::ZONE_KW)
14004 }
14005}
14006
14007#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14008pub struct SetAccessMethod {
14009 pub(crate) syntax: SyntaxNode,
14010}
14011impl SetAccessMethod {
14012 #[inline]
14013 pub fn name_ref(&self) -> Option<NameRef> {
14014 support::child(&self.syntax)
14015 }
14016 #[inline]
14017 pub fn access_token(&self) -> Option<SyntaxToken> {
14018 support::token(&self.syntax, SyntaxKind::ACCESS_KW)
14019 }
14020 #[inline]
14021 pub fn method_token(&self) -> Option<SyntaxToken> {
14022 support::token(&self.syntax, SyntaxKind::METHOD_KW)
14023 }
14024 #[inline]
14025 pub fn set_token(&self) -> Option<SyntaxToken> {
14026 support::token(&self.syntax, SyntaxKind::SET_KW)
14027 }
14028}
14029
14030#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14031pub struct SetClause {
14032 pub(crate) syntax: SyntaxNode,
14033}
14034impl SetClause {
14035 #[inline]
14036 pub fn set_column_list(&self) -> Option<SetColumnList> {
14037 support::child(&self.syntax)
14038 }
14039 #[inline]
14040 pub fn set_token(&self) -> Option<SyntaxToken> {
14041 support::token(&self.syntax, SyntaxKind::SET_KW)
14042 }
14043}
14044
14045#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14046pub struct SetColumnList {
14047 pub(crate) syntax: SyntaxNode,
14048}
14049impl SetColumnList {
14050 #[inline]
14051 pub fn set_columns(&self) -> AstChildren<SetColumn> {
14052 support::children(&self.syntax)
14053 }
14054}
14055
14056#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14057pub struct SetCompression {
14058 pub(crate) syntax: SyntaxNode,
14059}
14060impl SetCompression {
14061 #[inline]
14062 pub fn compression_token(&self) -> Option<SyntaxToken> {
14063 support::token(&self.syntax, SyntaxKind::COMPRESSION_KW)
14064 }
14065 #[inline]
14066 pub fn set_token(&self) -> Option<SyntaxToken> {
14067 support::token(&self.syntax, SyntaxKind::SET_KW)
14068 }
14069}
14070
14071#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14072pub struct SetConfigParam {
14073 pub(crate) syntax: SyntaxNode,
14074}
14075impl SetConfigParam {
14076 #[inline]
14077 pub fn path(&self) -> Option<Path> {
14078 support::child(&self.syntax)
14079 }
14080 #[inline]
14081 pub fn set_token(&self) -> Option<SyntaxToken> {
14082 support::token(&self.syntax, SyntaxKind::SET_KW)
14083 }
14084}
14085
14086#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14087pub struct SetConstraints {
14088 pub(crate) syntax: SyntaxNode,
14089}
14090impl SetConstraints {
14091 #[inline]
14092 pub fn paths(&self) -> AstChildren<Path> {
14093 support::children(&self.syntax)
14094 }
14095 #[inline]
14096 pub fn all_token(&self) -> Option<SyntaxToken> {
14097 support::token(&self.syntax, SyntaxKind::ALL_KW)
14098 }
14099 #[inline]
14100 pub fn constraints_token(&self) -> Option<SyntaxToken> {
14101 support::token(&self.syntax, SyntaxKind::CONSTRAINTS_KW)
14102 }
14103 #[inline]
14104 pub fn deferred_token(&self) -> Option<SyntaxToken> {
14105 support::token(&self.syntax, SyntaxKind::DEFERRED_KW)
14106 }
14107 #[inline]
14108 pub fn immediate_token(&self) -> Option<SyntaxToken> {
14109 support::token(&self.syntax, SyntaxKind::IMMEDIATE_KW)
14110 }
14111 #[inline]
14112 pub fn set_token(&self) -> Option<SyntaxToken> {
14113 support::token(&self.syntax, SyntaxKind::SET_KW)
14114 }
14115}
14116
14117#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14118pub struct SetDefault {
14119 pub(crate) syntax: SyntaxNode,
14120}
14121impl SetDefault {
14122 #[inline]
14123 pub fn expr(&self) -> Option<Expr> {
14124 support::child(&self.syntax)
14125 }
14126 #[inline]
14127 pub fn default_token(&self) -> Option<SyntaxToken> {
14128 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
14129 }
14130 #[inline]
14131 pub fn set_token(&self) -> Option<SyntaxToken> {
14132 support::token(&self.syntax, SyntaxKind::SET_KW)
14133 }
14134}
14135
14136#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14137pub struct SetDefaultColumns {
14138 pub(crate) syntax: SyntaxNode,
14139}
14140impl SetDefaultColumns {
14141 #[inline]
14142 pub fn column_list(&self) -> Option<ColumnList> {
14143 support::child(&self.syntax)
14144 }
14145 #[inline]
14146 pub fn default_token(&self) -> Option<SyntaxToken> {
14147 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
14148 }
14149 #[inline]
14150 pub fn set_token(&self) -> Option<SyntaxToken> {
14151 support::token(&self.syntax, SyntaxKind::SET_KW)
14152 }
14153}
14154
14155#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14156pub struct SetExpr {
14157 pub(crate) syntax: SyntaxNode,
14158}
14159impl SetExpr {
14160 #[inline]
14161 pub fn expr(&self) -> Option<Expr> {
14162 support::child(&self.syntax)
14163 }
14164 #[inline]
14165 pub fn default_token(&self) -> Option<SyntaxToken> {
14166 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
14167 }
14168}
14169
14170#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14171pub struct SetExprList {
14172 pub(crate) syntax: SyntaxNode,
14173}
14174impl SetExprList {
14175 #[inline]
14176 pub fn set_exprs(&self) -> AstChildren<SetExpr> {
14177 support::children(&self.syntax)
14178 }
14179 #[inline]
14180 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
14181 support::token(&self.syntax, SyntaxKind::L_PAREN)
14182 }
14183 #[inline]
14184 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
14185 support::token(&self.syntax, SyntaxKind::R_PAREN)
14186 }
14187 #[inline]
14188 pub fn row_token(&self) -> Option<SyntaxToken> {
14189 support::token(&self.syntax, SyntaxKind::ROW_KW)
14190 }
14191}
14192
14193#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14194pub struct SetExpression {
14195 pub(crate) syntax: SyntaxNode,
14196}
14197impl SetExpression {
14198 #[inline]
14199 pub fn expr(&self) -> Option<Expr> {
14200 support::child(&self.syntax)
14201 }
14202 #[inline]
14203 pub fn expression_token(&self) -> Option<SyntaxToken> {
14204 support::token(&self.syntax, SyntaxKind::EXPRESSION_KW)
14205 }
14206 #[inline]
14207 pub fn set_token(&self) -> Option<SyntaxToken> {
14208 support::token(&self.syntax, SyntaxKind::SET_KW)
14209 }
14210}
14211
14212#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14213pub struct SetFuncOption {
14214 pub(crate) syntax: SyntaxNode,
14215}
14216impl SetFuncOption {
14217 #[inline]
14218 pub fn set_token(&self) -> Option<SyntaxToken> {
14219 support::token(&self.syntax, SyntaxKind::SET_KW)
14220 }
14221}
14222
14223#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14224pub struct SetGenerated {
14225 pub(crate) syntax: SyntaxNode,
14226}
14227impl SetGenerated {
14228 #[inline]
14229 pub fn set_token(&self) -> Option<SyntaxToken> {
14230 support::token(&self.syntax, SyntaxKind::SET_KW)
14231 }
14232}
14233
14234#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14235pub struct SetGeneratedOptions {
14236 pub(crate) syntax: SyntaxNode,
14237}
14238impl SetGeneratedOptions {
14239 #[inline]
14240 pub fn generated_token(&self) -> Option<SyntaxToken> {
14241 support::token(&self.syntax, SyntaxKind::GENERATED_KW)
14242 }
14243 #[inline]
14244 pub fn set_token(&self) -> Option<SyntaxToken> {
14245 support::token(&self.syntax, SyntaxKind::SET_KW)
14246 }
14247}
14248
14249#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14250pub struct SetLogged {
14251 pub(crate) syntax: SyntaxNode,
14252}
14253impl SetLogged {
14254 #[inline]
14255 pub fn logged_token(&self) -> Option<SyntaxToken> {
14256 support::token(&self.syntax, SyntaxKind::LOGGED_KW)
14257 }
14258 #[inline]
14259 pub fn set_token(&self) -> Option<SyntaxToken> {
14260 support::token(&self.syntax, SyntaxKind::SET_KW)
14261 }
14262}
14263
14264#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14265pub struct SetMultipleColumns {
14266 pub(crate) syntax: SyntaxNode,
14267}
14268impl SetMultipleColumns {
14269 #[inline]
14270 pub fn column_list(&self) -> Option<ColumnList> {
14271 support::child(&self.syntax)
14272 }
14273 #[inline]
14274 pub fn paren_select(&self) -> Option<ParenSelect> {
14275 support::child(&self.syntax)
14276 }
14277 #[inline]
14278 pub fn set_expr_list(&self) -> Option<SetExprList> {
14279 support::child(&self.syntax)
14280 }
14281 #[inline]
14282 pub fn eq_token(&self) -> Option<SyntaxToken> {
14283 support::token(&self.syntax, SyntaxKind::EQ)
14284 }
14285}
14286
14287#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14288pub struct SetNotNull {
14289 pub(crate) syntax: SyntaxNode,
14290}
14291impl SetNotNull {
14292 #[inline]
14293 pub fn not_token(&self) -> Option<SyntaxToken> {
14294 support::token(&self.syntax, SyntaxKind::NOT_KW)
14295 }
14296 #[inline]
14297 pub fn null_token(&self) -> Option<SyntaxToken> {
14298 support::token(&self.syntax, SyntaxKind::NULL_KW)
14299 }
14300 #[inline]
14301 pub fn set_token(&self) -> Option<SyntaxToken> {
14302 support::token(&self.syntax, SyntaxKind::SET_KW)
14303 }
14304}
14305
14306#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14307pub struct SetNullColumns {
14308 pub(crate) syntax: SyntaxNode,
14309}
14310impl SetNullColumns {
14311 #[inline]
14312 pub fn column_list(&self) -> Option<ColumnList> {
14313 support::child(&self.syntax)
14314 }
14315 #[inline]
14316 pub fn null_token(&self) -> Option<SyntaxToken> {
14317 support::token(&self.syntax, SyntaxKind::NULL_KW)
14318 }
14319 #[inline]
14320 pub fn set_token(&self) -> Option<SyntaxToken> {
14321 support::token(&self.syntax, SyntaxKind::SET_KW)
14322 }
14323}
14324
14325#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14326pub struct SetOptions {
14327 pub(crate) syntax: SyntaxNode,
14328}
14329impl SetOptions {
14330 #[inline]
14331 pub fn attribute_list(&self) -> Option<AttributeList> {
14332 support::child(&self.syntax)
14333 }
14334 #[inline]
14335 pub fn set_token(&self) -> Option<SyntaxToken> {
14336 support::token(&self.syntax, SyntaxKind::SET_KW)
14337 }
14338}
14339
14340#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14341pub struct SetOptionsList {
14342 pub(crate) syntax: SyntaxNode,
14343}
14344impl SetOptionsList {
14345 #[inline]
14346 pub fn alter_option_list(&self) -> Option<AlterOptionList> {
14347 support::child(&self.syntax)
14348 }
14349 #[inline]
14350 pub fn options_token(&self) -> Option<SyntaxToken> {
14351 support::token(&self.syntax, SyntaxKind::OPTIONS_KW)
14352 }
14353 #[inline]
14354 pub fn set_token(&self) -> Option<SyntaxToken> {
14355 support::token(&self.syntax, SyntaxKind::SET_KW)
14356 }
14357}
14358
14359#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14360pub struct SetRole {
14361 pub(crate) syntax: SyntaxNode,
14362}
14363impl SetRole {
14364 #[inline]
14365 pub fn role_ref(&self) -> Option<RoleRef> {
14366 support::child(&self.syntax)
14367 }
14368 #[inline]
14369 pub fn local_token(&self) -> Option<SyntaxToken> {
14370 support::token(&self.syntax, SyntaxKind::LOCAL_KW)
14371 }
14372 #[inline]
14373 pub fn none_token(&self) -> Option<SyntaxToken> {
14374 support::token(&self.syntax, SyntaxKind::NONE_KW)
14375 }
14376 #[inline]
14377 pub fn reset_token(&self) -> Option<SyntaxToken> {
14378 support::token(&self.syntax, SyntaxKind::RESET_KW)
14379 }
14380 #[inline]
14381 pub fn role_token(&self) -> Option<SyntaxToken> {
14382 support::token(&self.syntax, SyntaxKind::ROLE_KW)
14383 }
14384 #[inline]
14385 pub fn session_token(&self) -> Option<SyntaxToken> {
14386 support::token(&self.syntax, SyntaxKind::SESSION_KW)
14387 }
14388 #[inline]
14389 pub fn set_token(&self) -> Option<SyntaxToken> {
14390 support::token(&self.syntax, SyntaxKind::SET_KW)
14391 }
14392}
14393
14394#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14395pub struct SetSchema {
14396 pub(crate) syntax: SyntaxNode,
14397}
14398impl SetSchema {
14399 #[inline]
14400 pub fn name_ref(&self) -> Option<NameRef> {
14401 support::child(&self.syntax)
14402 }
14403 #[inline]
14404 pub fn schema_token(&self) -> Option<SyntaxToken> {
14405 support::token(&self.syntax, SyntaxKind::SCHEMA_KW)
14406 }
14407 #[inline]
14408 pub fn set_token(&self) -> Option<SyntaxToken> {
14409 support::token(&self.syntax, SyntaxKind::SET_KW)
14410 }
14411}
14412
14413#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14414pub struct SetSequenceOption {
14415 pub(crate) syntax: SyntaxNode,
14416}
14417impl SetSequenceOption {
14418 #[inline]
14419 pub fn set_token(&self) -> Option<SyntaxToken> {
14420 support::token(&self.syntax, SyntaxKind::SET_KW)
14421 }
14422}
14423
14424#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14425pub struct SetSessionAuth {
14426 pub(crate) syntax: SyntaxNode,
14427}
14428impl SetSessionAuth {
14429 #[inline]
14430 pub fn literal(&self) -> Option<Literal> {
14431 support::child(&self.syntax)
14432 }
14433 #[inline]
14434 pub fn role_ref(&self) -> Option<RoleRef> {
14435 support::child(&self.syntax)
14436 }
14437 #[inline]
14438 pub fn authorization_token(&self) -> Option<SyntaxToken> {
14439 support::token(&self.syntax, SyntaxKind::AUTHORIZATION_KW)
14440 }
14441 #[inline]
14442 pub fn default_token(&self) -> Option<SyntaxToken> {
14443 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
14444 }
14445 #[inline]
14446 pub fn local_token(&self) -> Option<SyntaxToken> {
14447 support::token(&self.syntax, SyntaxKind::LOCAL_KW)
14448 }
14449 #[inline]
14450 pub fn session_token(&self) -> Option<SyntaxToken> {
14451 support::token(&self.syntax, SyntaxKind::SESSION_KW)
14452 }
14453 #[inline]
14454 pub fn set_token(&self) -> Option<SyntaxToken> {
14455 support::token(&self.syntax, SyntaxKind::SET_KW)
14456 }
14457}
14458
14459#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14460pub struct SetSingleColumn {
14461 pub(crate) syntax: SyntaxNode,
14462}
14463impl SetSingleColumn {
14464 #[inline]
14465 pub fn column(&self) -> Option<Column> {
14466 support::child(&self.syntax)
14467 }
14468 #[inline]
14469 pub fn set_expr(&self) -> Option<SetExpr> {
14470 support::child(&self.syntax)
14471 }
14472 #[inline]
14473 pub fn eq_token(&self) -> Option<SyntaxToken> {
14474 support::token(&self.syntax, SyntaxKind::EQ)
14475 }
14476}
14477
14478#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14479pub struct SetStatistics {
14480 pub(crate) syntax: SyntaxNode,
14481}
14482impl SetStatistics {
14483 #[inline]
14484 pub fn set_token(&self) -> Option<SyntaxToken> {
14485 support::token(&self.syntax, SyntaxKind::SET_KW)
14486 }
14487 #[inline]
14488 pub fn statistics_token(&self) -> Option<SyntaxToken> {
14489 support::token(&self.syntax, SyntaxKind::STATISTICS_KW)
14490 }
14491}
14492
14493#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14494pub struct SetStorage {
14495 pub(crate) syntax: SyntaxNode,
14496}
14497impl SetStorage {
14498 #[inline]
14499 pub fn set_token(&self) -> Option<SyntaxToken> {
14500 support::token(&self.syntax, SyntaxKind::SET_KW)
14501 }
14502 #[inline]
14503 pub fn storage_token(&self) -> Option<SyntaxToken> {
14504 support::token(&self.syntax, SyntaxKind::STORAGE_KW)
14505 }
14506}
14507
14508#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14509pub struct SetTablespace {
14510 pub(crate) syntax: SyntaxNode,
14511}
14512impl SetTablespace {
14513 #[inline]
14514 pub fn path(&self) -> Option<Path> {
14515 support::child(&self.syntax)
14516 }
14517 #[inline]
14518 pub fn set_token(&self) -> Option<SyntaxToken> {
14519 support::token(&self.syntax, SyntaxKind::SET_KW)
14520 }
14521 #[inline]
14522 pub fn tablespace_token(&self) -> Option<SyntaxToken> {
14523 support::token(&self.syntax, SyntaxKind::TABLESPACE_KW)
14524 }
14525}
14526
14527#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14528pub struct SetTransaction {
14529 pub(crate) syntax: SyntaxNode,
14530}
14531impl SetTransaction {
14532 #[inline]
14533 pub fn literal(&self) -> Option<Literal> {
14534 support::child(&self.syntax)
14535 }
14536 #[inline]
14537 pub fn transaction_mode_list(&self) -> Option<TransactionModeList> {
14538 support::child(&self.syntax)
14539 }
14540 #[inline]
14541 pub fn as_token(&self) -> Option<SyntaxToken> {
14542 support::token(&self.syntax, SyntaxKind::AS_KW)
14543 }
14544 #[inline]
14545 pub fn characteristics_token(&self) -> Option<SyntaxToken> {
14546 support::token(&self.syntax, SyntaxKind::CHARACTERISTICS_KW)
14547 }
14548 #[inline]
14549 pub fn session_token(&self) -> Option<SyntaxToken> {
14550 support::token(&self.syntax, SyntaxKind::SESSION_KW)
14551 }
14552 #[inline]
14553 pub fn set_token(&self) -> Option<SyntaxToken> {
14554 support::token(&self.syntax, SyntaxKind::SET_KW)
14555 }
14556 #[inline]
14557 pub fn snapshot_token(&self) -> Option<SyntaxToken> {
14558 support::token(&self.syntax, SyntaxKind::SNAPSHOT_KW)
14559 }
14560 #[inline]
14561 pub fn transaction_token(&self) -> Option<SyntaxToken> {
14562 support::token(&self.syntax, SyntaxKind::TRANSACTION_KW)
14563 }
14564}
14565
14566#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14567pub struct SetType {
14568 pub(crate) syntax: SyntaxNode,
14569}
14570impl SetType {
14571 #[inline]
14572 pub fn collate(&self) -> Option<Collate> {
14573 support::child(&self.syntax)
14574 }
14575 #[inline]
14576 pub fn ty(&self) -> Option<Type> {
14577 support::child(&self.syntax)
14578 }
14579 #[inline]
14580 pub fn set_token(&self) -> Option<SyntaxToken> {
14581 support::token(&self.syntax, SyntaxKind::SET_KW)
14582 }
14583 #[inline]
14584 pub fn type_token(&self) -> Option<SyntaxToken> {
14585 support::token(&self.syntax, SyntaxKind::TYPE_KW)
14586 }
14587}
14588
14589#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14590pub struct SetUnlogged {
14591 pub(crate) syntax: SyntaxNode,
14592}
14593impl SetUnlogged {
14594 #[inline]
14595 pub fn set_token(&self) -> Option<SyntaxToken> {
14596 support::token(&self.syntax, SyntaxKind::SET_KW)
14597 }
14598 #[inline]
14599 pub fn unlogged_token(&self) -> Option<SyntaxToken> {
14600 support::token(&self.syntax, SyntaxKind::UNLOGGED_KW)
14601 }
14602}
14603
14604#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14605pub struct SetWithoutCluster {
14606 pub(crate) syntax: SyntaxNode,
14607}
14608impl SetWithoutCluster {
14609 #[inline]
14610 pub fn cluster_token(&self) -> Option<SyntaxToken> {
14611 support::token(&self.syntax, SyntaxKind::CLUSTER_KW)
14612 }
14613 #[inline]
14614 pub fn set_token(&self) -> Option<SyntaxToken> {
14615 support::token(&self.syntax, SyntaxKind::SET_KW)
14616 }
14617 #[inline]
14618 pub fn without_token(&self) -> Option<SyntaxToken> {
14619 support::token(&self.syntax, SyntaxKind::WITHOUT_KW)
14620 }
14621}
14622
14623#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14624pub struct SetWithoutOids {
14625 pub(crate) syntax: SyntaxNode,
14626}
14627impl SetWithoutOids {
14628 #[inline]
14629 pub fn oids_token(&self) -> Option<SyntaxToken> {
14630 support::token(&self.syntax, SyntaxKind::OIDS_KW)
14631 }
14632 #[inline]
14633 pub fn set_token(&self) -> Option<SyntaxToken> {
14634 support::token(&self.syntax, SyntaxKind::SET_KW)
14635 }
14636 #[inline]
14637 pub fn without_token(&self) -> Option<SyntaxToken> {
14638 support::token(&self.syntax, SyntaxKind::WITHOUT_KW)
14639 }
14640}
14641
14642#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14643pub struct Show {
14644 pub(crate) syntax: SyntaxNode,
14645}
14646impl Show {
14647 #[inline]
14648 pub fn show_token(&self) -> Option<SyntaxToken> {
14649 support::token(&self.syntax, SyntaxKind::SHOW_KW)
14650 }
14651}
14652
14653#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14654pub struct SimilarTo {
14655 pub(crate) syntax: SyntaxNode,
14656}
14657impl SimilarTo {
14658 #[inline]
14659 pub fn similar_token(&self) -> Option<SyntaxToken> {
14660 support::token(&self.syntax, SyntaxKind::SIMILAR_KW)
14661 }
14662 #[inline]
14663 pub fn to_token(&self) -> Option<SyntaxToken> {
14664 support::token(&self.syntax, SyntaxKind::TO_KW)
14665 }
14666}
14667
14668#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14669pub struct SliceExpr {
14670 pub(crate) syntax: SyntaxNode,
14671}
14672impl SliceExpr {
14673 #[inline]
14674 pub fn l_brack_token(&self) -> Option<SyntaxToken> {
14675 support::token(&self.syntax, SyntaxKind::L_BRACK)
14676 }
14677 #[inline]
14678 pub fn r_brack_token(&self) -> Option<SyntaxToken> {
14679 support::token(&self.syntax, SyntaxKind::R_BRACK)
14680 }
14681 #[inline]
14682 pub fn colon_token(&self) -> Option<SyntaxToken> {
14683 support::token(&self.syntax, SyntaxKind::COLON)
14684 }
14685}
14686
14687#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14688pub struct SomeFn {
14689 pub(crate) syntax: SyntaxNode,
14690}
14691impl SomeFn {
14692 #[inline]
14693 pub fn expr(&self) -> Option<Expr> {
14694 support::child(&self.syntax)
14695 }
14696 #[inline]
14697 pub fn select_variant(&self) -> Option<SelectVariant> {
14698 support::child(&self.syntax)
14699 }
14700 #[inline]
14701 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
14702 support::token(&self.syntax, SyntaxKind::L_PAREN)
14703 }
14704 #[inline]
14705 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
14706 support::token(&self.syntax, SyntaxKind::R_PAREN)
14707 }
14708 #[inline]
14709 pub fn some_token(&self) -> Option<SyntaxToken> {
14710 support::token(&self.syntax, SyntaxKind::SOME_KW)
14711 }
14712}
14713
14714#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14715pub struct SortAsc {
14716 pub(crate) syntax: SyntaxNode,
14717}
14718impl SortAsc {
14719 #[inline]
14720 pub fn asc_token(&self) -> Option<SyntaxToken> {
14721 support::token(&self.syntax, SyntaxKind::ASC_KW)
14722 }
14723}
14724
14725#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14726pub struct SortBy {
14727 pub(crate) syntax: SyntaxNode,
14728}
14729impl SortBy {
14730 #[inline]
14731 pub fn expr(&self) -> Option<Expr> {
14732 support::child(&self.syntax)
14733 }
14734 #[inline]
14735 pub fn nulls_first(&self) -> Option<NullsFirst> {
14736 support::child(&self.syntax)
14737 }
14738 #[inline]
14739 pub fn nulls_last(&self) -> Option<NullsLast> {
14740 support::child(&self.syntax)
14741 }
14742 #[inline]
14743 pub fn sort_asc(&self) -> Option<SortAsc> {
14744 support::child(&self.syntax)
14745 }
14746 #[inline]
14747 pub fn sort_desc(&self) -> Option<SortDesc> {
14748 support::child(&self.syntax)
14749 }
14750 #[inline]
14751 pub fn sort_using(&self) -> Option<SortUsing> {
14752 support::child(&self.syntax)
14753 }
14754}
14755
14756#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14757pub struct SortByList {
14758 pub(crate) syntax: SyntaxNode,
14759}
14760impl SortByList {
14761 #[inline]
14762 pub fn sort_bys(&self) -> AstChildren<SortBy> {
14763 support::children(&self.syntax)
14764 }
14765}
14766
14767#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14768pub struct SortDesc {
14769 pub(crate) syntax: SyntaxNode,
14770}
14771impl SortDesc {
14772 #[inline]
14773 pub fn desc_token(&self) -> Option<SyntaxToken> {
14774 support::token(&self.syntax, SyntaxKind::DESC_KW)
14775 }
14776}
14777
14778#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14779pub struct SortUsing {
14780 pub(crate) syntax: SyntaxNode,
14781}
14782impl SortUsing {
14783 #[inline]
14784 pub fn op(&self) -> Option<Op> {
14785 support::child(&self.syntax)
14786 }
14787 #[inline]
14788 pub fn using_token(&self) -> Option<SyntaxToken> {
14789 support::token(&self.syntax, SyntaxKind::USING_KW)
14790 }
14791}
14792
14793#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14794pub struct SourceFile {
14795 pub(crate) syntax: SyntaxNode,
14796}
14797impl SourceFile {
14798 #[inline]
14799 pub fn stmts(&self) -> AstChildren<Stmt> {
14800 support::children(&self.syntax)
14801 }
14802}
14803
14804#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14805pub struct SplitPartition {
14806 pub(crate) syntax: SyntaxNode,
14807}
14808impl SplitPartition {
14809 #[inline]
14810 pub fn partition_list(&self) -> Option<PartitionList> {
14811 support::child(&self.syntax)
14812 }
14813 #[inline]
14814 pub fn into_token(&self) -> Option<SyntaxToken> {
14815 support::token(&self.syntax, SyntaxKind::INTO_KW)
14816 }
14817 #[inline]
14818 pub fn partition_token(&self) -> Option<SyntaxToken> {
14819 support::token(&self.syntax, SyntaxKind::PARTITION_KW)
14820 }
14821 #[inline]
14822 pub fn split_token(&self) -> Option<SyntaxToken> {
14823 support::token(&self.syntax, SyntaxKind::SPLIT_KW)
14824 }
14825}
14826
14827#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14828pub struct Storage {
14829 pub(crate) syntax: SyntaxNode,
14830}
14831impl Storage {
14832 #[inline]
14833 pub fn default_token(&self) -> Option<SyntaxToken> {
14834 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
14835 }
14836 #[inline]
14837 pub fn external_token(&self) -> Option<SyntaxToken> {
14838 support::token(&self.syntax, SyntaxKind::EXTERNAL_KW)
14839 }
14840 #[inline]
14841 pub fn ident_token(&self) -> Option<SyntaxToken> {
14842 support::token(&self.syntax, SyntaxKind::IDENT)
14843 }
14844 #[inline]
14845 pub fn storage_token(&self) -> Option<SyntaxToken> {
14846 support::token(&self.syntax, SyntaxKind::STORAGE_KW)
14847 }
14848}
14849
14850#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14851pub struct StrictFuncOption {
14852 pub(crate) syntax: SyntaxNode,
14853}
14854impl StrictFuncOption {
14855 #[inline]
14856 pub fn called_token(&self) -> Option<SyntaxToken> {
14857 support::token(&self.syntax, SyntaxKind::CALLED_KW)
14858 }
14859 #[inline]
14860 pub fn input_token(&self) -> Option<SyntaxToken> {
14861 support::token(&self.syntax, SyntaxKind::INPUT_KW)
14862 }
14863 #[inline]
14864 pub fn null_token(&self) -> Option<SyntaxToken> {
14865 support::token(&self.syntax, SyntaxKind::NULL_KW)
14866 }
14867 #[inline]
14868 pub fn on_token(&self) -> Option<SyntaxToken> {
14869 support::token(&self.syntax, SyntaxKind::ON_KW)
14870 }
14871 #[inline]
14872 pub fn returns_token(&self) -> Option<SyntaxToken> {
14873 support::token(&self.syntax, SyntaxKind::RETURNS_KW)
14874 }
14875 #[inline]
14876 pub fn strict_token(&self) -> Option<SyntaxToken> {
14877 support::token(&self.syntax, SyntaxKind::STRICT_KW)
14878 }
14879}
14880
14881#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14882pub struct SubstringFn {
14883 pub(crate) syntax: SyntaxNode,
14884}
14885impl SubstringFn {
14886 #[inline]
14887 pub fn expr(&self) -> Option<Expr> {
14888 support::child(&self.syntax)
14889 }
14890 #[inline]
14891 pub fn exprs(&self) -> AstChildren<Expr> {
14892 support::children(&self.syntax)
14893 }
14894 #[inline]
14895 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
14896 support::token(&self.syntax, SyntaxKind::L_PAREN)
14897 }
14898 #[inline]
14899 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
14900 support::token(&self.syntax, SyntaxKind::R_PAREN)
14901 }
14902 #[inline]
14903 pub fn for_token(&self) -> Option<SyntaxToken> {
14904 support::token(&self.syntax, SyntaxKind::FOR_KW)
14905 }
14906 #[inline]
14907 pub fn from_token(&self) -> Option<SyntaxToken> {
14908 support::token(&self.syntax, SyntaxKind::FROM_KW)
14909 }
14910 #[inline]
14911 pub fn similar_token(&self) -> Option<SyntaxToken> {
14912 support::token(&self.syntax, SyntaxKind::SIMILAR_KW)
14913 }
14914 #[inline]
14915 pub fn substring_token(&self) -> Option<SyntaxToken> {
14916 support::token(&self.syntax, SyntaxKind::SUBSTRING_KW)
14917 }
14918}
14919
14920#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14921pub struct SupportFuncOption {
14922 pub(crate) syntax: SyntaxNode,
14923}
14924impl SupportFuncOption {
14925 #[inline]
14926 pub fn support_token(&self) -> Option<SyntaxToken> {
14927 support::token(&self.syntax, SyntaxKind::SUPPORT_KW)
14928 }
14929}
14930
14931#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14932pub struct Table {
14933 pub(crate) syntax: SyntaxNode,
14934}
14935impl Table {
14936 #[inline]
14937 pub fn relation_name(&self) -> Option<RelationName> {
14938 support::child(&self.syntax)
14939 }
14940 #[inline]
14941 pub fn with_clause(&self) -> Option<WithClause> {
14942 support::child(&self.syntax)
14943 }
14944 #[inline]
14945 pub fn table_token(&self) -> Option<SyntaxToken> {
14946 support::token(&self.syntax, SyntaxKind::TABLE_KW)
14947 }
14948}
14949
14950#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14951pub struct TableAndColumns {
14952 pub(crate) syntax: SyntaxNode,
14953}
14954impl TableAndColumns {
14955 #[inline]
14956 pub fn column_list(&self) -> Option<ColumnList> {
14957 support::child(&self.syntax)
14958 }
14959 #[inline]
14960 pub fn relation_name(&self) -> Option<RelationName> {
14961 support::child(&self.syntax)
14962 }
14963}
14964
14965#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14966pub struct TableAndColumnsList {
14967 pub(crate) syntax: SyntaxNode,
14968}
14969impl TableAndColumnsList {
14970 #[inline]
14971 pub fn table_and_columnss(&self) -> AstChildren<TableAndColumns> {
14972 support::children(&self.syntax)
14973 }
14974}
14975
14976#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14977pub struct TableArgList {
14978 pub(crate) syntax: SyntaxNode,
14979}
14980impl TableArgList {
14981 #[inline]
14982 pub fn args(&self) -> AstChildren<TableArg> {
14983 support::children(&self.syntax)
14984 }
14985 #[inline]
14986 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
14987 support::token(&self.syntax, SyntaxKind::L_PAREN)
14988 }
14989 #[inline]
14990 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
14991 support::token(&self.syntax, SyntaxKind::R_PAREN)
14992 }
14993}
14994
14995#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14996pub struct TableList {
14997 pub(crate) syntax: SyntaxNode,
14998}
14999impl TableList {
15000 #[inline]
15001 pub fn relation_names(&self) -> AstChildren<RelationName> {
15002 support::children(&self.syntax)
15003 }
15004}
15005
15006#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15007pub struct TablesampleClause {
15008 pub(crate) syntax: SyntaxNode,
15009}
15010impl TablesampleClause {
15011 #[inline]
15012 pub fn call_expr(&self) -> Option<CallExpr> {
15013 support::child(&self.syntax)
15014 }
15015 #[inline]
15016 pub fn repeatable_clause(&self) -> Option<RepeatableClause> {
15017 support::child(&self.syntax)
15018 }
15019 #[inline]
15020 pub fn tablesample_token(&self) -> Option<SyntaxToken> {
15021 support::token(&self.syntax, SyntaxKind::TABLESAMPLE_KW)
15022 }
15023}
15024
15025#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15026pub struct Tablespace {
15027 pub(crate) syntax: SyntaxNode,
15028}
15029impl Tablespace {
15030 #[inline]
15031 pub fn name_ref(&self) -> Option<NameRef> {
15032 support::child(&self.syntax)
15033 }
15034 #[inline]
15035 pub fn tablespace_token(&self) -> Option<SyntaxToken> {
15036 support::token(&self.syntax, SyntaxKind::TABLESPACE_KW)
15037 }
15038}
15039
15040#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15041pub struct Target {
15042 pub(crate) syntax: SyntaxNode,
15043}
15044impl Target {
15045 #[inline]
15046 pub fn as_name(&self) -> Option<AsName> {
15047 support::child(&self.syntax)
15048 }
15049 #[inline]
15050 pub fn expr(&self) -> Option<Expr> {
15051 support::child(&self.syntax)
15052 }
15053 #[inline]
15054 pub fn star_token(&self) -> Option<SyntaxToken> {
15055 support::token(&self.syntax, SyntaxKind::STAR)
15056 }
15057}
15058
15059#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15060pub struct TargetList {
15061 pub(crate) syntax: SyntaxNode,
15062}
15063impl TargetList {
15064 #[inline]
15065 pub fn targets(&self) -> AstChildren<Target> {
15066 support::children(&self.syntax)
15067 }
15068}
15069
15070#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15071pub struct TimeType {
15072 pub(crate) syntax: SyntaxNode,
15073}
15074impl TimeType {
15075 #[inline]
15076 pub fn literal(&self) -> Option<Literal> {
15077 support::child(&self.syntax)
15078 }
15079 #[inline]
15080 pub fn timezone(&self) -> Option<Timezone> {
15081 support::child(&self.syntax)
15082 }
15083 #[inline]
15084 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
15085 support::token(&self.syntax, SyntaxKind::L_PAREN)
15086 }
15087 #[inline]
15088 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
15089 support::token(&self.syntax, SyntaxKind::R_PAREN)
15090 }
15091 #[inline]
15092 pub fn time_token(&self) -> Option<SyntaxToken> {
15093 support::token(&self.syntax, SyntaxKind::TIME_KW)
15094 }
15095 #[inline]
15096 pub fn timestamp_token(&self) -> Option<SyntaxToken> {
15097 support::token(&self.syntax, SyntaxKind::TIMESTAMP_KW)
15098 }
15099}
15100
15101#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15102pub struct Timing {
15103 pub(crate) syntax: SyntaxNode,
15104}
15105impl Timing {
15106 #[inline]
15107 pub fn after_token(&self) -> Option<SyntaxToken> {
15108 support::token(&self.syntax, SyntaxKind::AFTER_KW)
15109 }
15110 #[inline]
15111 pub fn before_token(&self) -> Option<SyntaxToken> {
15112 support::token(&self.syntax, SyntaxKind::BEFORE_KW)
15113 }
15114 #[inline]
15115 pub fn instead_token(&self) -> Option<SyntaxToken> {
15116 support::token(&self.syntax, SyntaxKind::INSTEAD_KW)
15117 }
15118 #[inline]
15119 pub fn of_token(&self) -> Option<SyntaxToken> {
15120 support::token(&self.syntax, SyntaxKind::OF_KW)
15121 }
15122}
15123
15124#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15125pub struct TransactionModeList {
15126 pub(crate) syntax: SyntaxNode,
15127}
15128impl TransactionModeList {
15129 #[inline]
15130 pub fn transaction_modes(&self) -> AstChildren<TransactionMode> {
15131 support::children(&self.syntax)
15132 }
15133}
15134
15135#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15136pub struct TransformFromFunc {
15137 pub(crate) syntax: SyntaxNode,
15138}
15139impl TransformFromFunc {
15140 #[inline]
15141 pub fn function_sig(&self) -> Option<FunctionSig> {
15142 support::child(&self.syntax)
15143 }
15144 #[inline]
15145 pub fn from_token(&self) -> Option<SyntaxToken> {
15146 support::token(&self.syntax, SyntaxKind::FROM_KW)
15147 }
15148 #[inline]
15149 pub fn function_token(&self) -> Option<SyntaxToken> {
15150 support::token(&self.syntax, SyntaxKind::FUNCTION_KW)
15151 }
15152 #[inline]
15153 pub fn sql_token(&self) -> Option<SyntaxToken> {
15154 support::token(&self.syntax, SyntaxKind::SQL_KW)
15155 }
15156 #[inline]
15157 pub fn with_token(&self) -> Option<SyntaxToken> {
15158 support::token(&self.syntax, SyntaxKind::WITH_KW)
15159 }
15160}
15161
15162#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15163pub struct TransformFuncOption {
15164 pub(crate) syntax: SyntaxNode,
15165}
15166impl TransformFuncOption {
15167 #[inline]
15168 pub fn transform_token(&self) -> Option<SyntaxToken> {
15169 support::token(&self.syntax, SyntaxKind::TRANSFORM_KW)
15170 }
15171}
15172
15173#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15174pub struct TransformToFunc {
15175 pub(crate) syntax: SyntaxNode,
15176}
15177impl TransformToFunc {
15178 #[inline]
15179 pub fn function_sig(&self) -> Option<FunctionSig> {
15180 support::child(&self.syntax)
15181 }
15182 #[inline]
15183 pub fn function_token(&self) -> Option<SyntaxToken> {
15184 support::token(&self.syntax, SyntaxKind::FUNCTION_KW)
15185 }
15186 #[inline]
15187 pub fn sql_token(&self) -> Option<SyntaxToken> {
15188 support::token(&self.syntax, SyntaxKind::SQL_KW)
15189 }
15190 #[inline]
15191 pub fn to_token(&self) -> Option<SyntaxToken> {
15192 support::token(&self.syntax, SyntaxKind::TO_KW)
15193 }
15194 #[inline]
15195 pub fn with_token(&self) -> Option<SyntaxToken> {
15196 support::token(&self.syntax, SyntaxKind::WITH_KW)
15197 }
15198}
15199
15200#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15201pub struct TriggerEvent {
15202 pub(crate) syntax: SyntaxNode,
15203}
15204impl TriggerEvent {
15205 #[inline]
15206 pub fn trigger_event_update(&self) -> Option<TriggerEventUpdate> {
15207 support::child(&self.syntax)
15208 }
15209 #[inline]
15210 pub fn delete_token(&self) -> Option<SyntaxToken> {
15211 support::token(&self.syntax, SyntaxKind::DELETE_KW)
15212 }
15213 #[inline]
15214 pub fn insert_token(&self) -> Option<SyntaxToken> {
15215 support::token(&self.syntax, SyntaxKind::INSERT_KW)
15216 }
15217 #[inline]
15218 pub fn truncate_token(&self) -> Option<SyntaxToken> {
15219 support::token(&self.syntax, SyntaxKind::TRUNCATE_KW)
15220 }
15221}
15222
15223#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15224pub struct TriggerEventList {
15225 pub(crate) syntax: SyntaxNode,
15226}
15227impl TriggerEventList {
15228 #[inline]
15229 pub fn trigger_events(&self) -> AstChildren<TriggerEvent> {
15230 support::children(&self.syntax)
15231 }
15232}
15233
15234#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15235pub struct TriggerEventUpdate {
15236 pub(crate) syntax: SyntaxNode,
15237}
15238impl TriggerEventUpdate {
15239 #[inline]
15240 pub fn name_refs(&self) -> AstChildren<NameRef> {
15241 support::children(&self.syntax)
15242 }
15243 #[inline]
15244 pub fn of_token(&self) -> Option<SyntaxToken> {
15245 support::token(&self.syntax, SyntaxKind::OF_KW)
15246 }
15247 #[inline]
15248 pub fn update_token(&self) -> Option<SyntaxToken> {
15249 support::token(&self.syntax, SyntaxKind::UPDATE_KW)
15250 }
15251}
15252
15253#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15254pub struct TrimFn {
15255 pub(crate) syntax: SyntaxNode,
15256}
15257impl TrimFn {
15258 #[inline]
15259 pub fn expr(&self) -> Option<Expr> {
15260 support::child(&self.syntax)
15261 }
15262 #[inline]
15263 pub fn exprs(&self) -> AstChildren<Expr> {
15264 support::children(&self.syntax)
15265 }
15266 #[inline]
15267 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
15268 support::token(&self.syntax, SyntaxKind::L_PAREN)
15269 }
15270 #[inline]
15271 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
15272 support::token(&self.syntax, SyntaxKind::R_PAREN)
15273 }
15274 #[inline]
15275 pub fn from_token(&self) -> Option<SyntaxToken> {
15276 support::token(&self.syntax, SyntaxKind::FROM_KW)
15277 }
15278 #[inline]
15279 pub fn trim_token(&self) -> Option<SyntaxToken> {
15280 support::token(&self.syntax, SyntaxKind::TRIM_KW)
15281 }
15282}
15283
15284#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15285pub struct Truncate {
15286 pub(crate) syntax: SyntaxNode,
15287}
15288impl Truncate {
15289 #[inline]
15290 pub fn table_list(&self) -> Option<TableList> {
15291 support::child(&self.syntax)
15292 }
15293 #[inline]
15294 pub fn cascade_token(&self) -> Option<SyntaxToken> {
15295 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
15296 }
15297 #[inline]
15298 pub fn continue_token(&self) -> Option<SyntaxToken> {
15299 support::token(&self.syntax, SyntaxKind::CONTINUE_KW)
15300 }
15301 #[inline]
15302 pub fn identity_token(&self) -> Option<SyntaxToken> {
15303 support::token(&self.syntax, SyntaxKind::IDENTITY_KW)
15304 }
15305 #[inline]
15306 pub fn restart_token(&self) -> Option<SyntaxToken> {
15307 support::token(&self.syntax, SyntaxKind::RESTART_KW)
15308 }
15309 #[inline]
15310 pub fn restrict_token(&self) -> Option<SyntaxToken> {
15311 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
15312 }
15313 #[inline]
15314 pub fn table_token(&self) -> Option<SyntaxToken> {
15315 support::token(&self.syntax, SyntaxKind::TABLE_KW)
15316 }
15317 #[inline]
15318 pub fn truncate_token(&self) -> Option<SyntaxToken> {
15319 support::token(&self.syntax, SyntaxKind::TRUNCATE_KW)
15320 }
15321}
15322
15323#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15324pub struct TupleExpr {
15325 pub(crate) syntax: SyntaxNode,
15326}
15327impl TupleExpr {
15328 #[inline]
15329 pub fn exprs(&self) -> AstChildren<Expr> {
15330 support::children(&self.syntax)
15331 }
15332 #[inline]
15333 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
15334 support::token(&self.syntax, SyntaxKind::L_PAREN)
15335 }
15336 #[inline]
15337 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
15338 support::token(&self.syntax, SyntaxKind::R_PAREN)
15339 }
15340}
15341
15342#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15343pub struct UnicodeNormalForm {
15344 pub(crate) syntax: SyntaxNode,
15345}
15346impl UnicodeNormalForm {
15347 #[inline]
15348 pub fn nfc_token(&self) -> Option<SyntaxToken> {
15349 support::token(&self.syntax, SyntaxKind::NFC_KW)
15350 }
15351 #[inline]
15352 pub fn nfd_token(&self) -> Option<SyntaxToken> {
15353 support::token(&self.syntax, SyntaxKind::NFD_KW)
15354 }
15355 #[inline]
15356 pub fn nfkc_token(&self) -> Option<SyntaxToken> {
15357 support::token(&self.syntax, SyntaxKind::NFKC_KW)
15358 }
15359 #[inline]
15360 pub fn nfkd_token(&self) -> Option<SyntaxToken> {
15361 support::token(&self.syntax, SyntaxKind::NFKD_KW)
15362 }
15363}
15364
15365#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15366pub struct UniqueConstraint {
15367 pub(crate) syntax: SyntaxNode,
15368}
15369impl UniqueConstraint {
15370 #[inline]
15371 pub fn column_list(&self) -> Option<ColumnList> {
15372 support::child(&self.syntax)
15373 }
15374 #[inline]
15375 pub fn constraint_name(&self) -> Option<ConstraintName> {
15376 support::child(&self.syntax)
15377 }
15378 #[inline]
15379 pub fn nulls_distinct(&self) -> Option<NullsDistinct> {
15380 support::child(&self.syntax)
15381 }
15382 #[inline]
15383 pub fn nulls_not_distinct(&self) -> Option<NullsNotDistinct> {
15384 support::child(&self.syntax)
15385 }
15386 #[inline]
15387 pub fn using_index(&self) -> Option<UsingIndex> {
15388 support::child(&self.syntax)
15389 }
15390 #[inline]
15391 pub fn unique_token(&self) -> Option<SyntaxToken> {
15392 support::token(&self.syntax, SyntaxKind::UNIQUE_KW)
15393 }
15394}
15395
15396#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15397pub struct Unlisten {
15398 pub(crate) syntax: SyntaxNode,
15399}
15400impl Unlisten {
15401 #[inline]
15402 pub fn name_ref(&self) -> Option<NameRef> {
15403 support::child(&self.syntax)
15404 }
15405 #[inline]
15406 pub fn star_token(&self) -> Option<SyntaxToken> {
15407 support::token(&self.syntax, SyntaxKind::STAR)
15408 }
15409 #[inline]
15410 pub fn unlisten_token(&self) -> Option<SyntaxToken> {
15411 support::token(&self.syntax, SyntaxKind::UNLISTEN_KW)
15412 }
15413}
15414
15415#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15416pub struct Update {
15417 pub(crate) syntax: SyntaxNode,
15418}
15419impl Update {
15420 #[inline]
15421 pub fn alias(&self) -> Option<Alias> {
15422 support::child(&self.syntax)
15423 }
15424 #[inline]
15425 pub fn from_clause(&self) -> Option<FromClause> {
15426 support::child(&self.syntax)
15427 }
15428 #[inline]
15429 pub fn relation_name(&self) -> Option<RelationName> {
15430 support::child(&self.syntax)
15431 }
15432 #[inline]
15433 pub fn returning_clause(&self) -> Option<ReturningClause> {
15434 support::child(&self.syntax)
15435 }
15436 #[inline]
15437 pub fn set_clause(&self) -> Option<SetClause> {
15438 support::child(&self.syntax)
15439 }
15440 #[inline]
15441 pub fn where_clause(&self) -> Option<WhereClause> {
15442 support::child(&self.syntax)
15443 }
15444 #[inline]
15445 pub fn with_clause(&self) -> Option<WithClause> {
15446 support::child(&self.syntax)
15447 }
15448 #[inline]
15449 pub fn update_token(&self) -> Option<SyntaxToken> {
15450 support::token(&self.syntax, SyntaxKind::UPDATE_KW)
15451 }
15452}
15453
15454#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15455pub struct UsingClause {
15456 pub(crate) syntax: SyntaxNode,
15457}
15458impl UsingClause {
15459 #[inline]
15460 pub fn from_items(&self) -> AstChildren<FromItem> {
15461 support::children(&self.syntax)
15462 }
15463 #[inline]
15464 pub fn using_token(&self) -> Option<SyntaxToken> {
15465 support::token(&self.syntax, SyntaxKind::USING_KW)
15466 }
15467}
15468
15469#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15470pub struct UsingExprClause {
15471 pub(crate) syntax: SyntaxNode,
15472}
15473impl UsingExprClause {
15474 #[inline]
15475 pub fn expr(&self) -> Option<Expr> {
15476 support::child(&self.syntax)
15477 }
15478 #[inline]
15479 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
15480 support::token(&self.syntax, SyntaxKind::L_PAREN)
15481 }
15482 #[inline]
15483 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
15484 support::token(&self.syntax, SyntaxKind::R_PAREN)
15485 }
15486 #[inline]
15487 pub fn using_token(&self) -> Option<SyntaxToken> {
15488 support::token(&self.syntax, SyntaxKind::USING_KW)
15489 }
15490}
15491
15492#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15493pub struct UsingIndex {
15494 pub(crate) syntax: SyntaxNode,
15495}
15496impl UsingIndex {
15497 #[inline]
15498 pub fn name_ref(&self) -> Option<NameRef> {
15499 support::child(&self.syntax)
15500 }
15501 #[inline]
15502 pub fn index_token(&self) -> Option<SyntaxToken> {
15503 support::token(&self.syntax, SyntaxKind::INDEX_KW)
15504 }
15505 #[inline]
15506 pub fn using_token(&self) -> Option<SyntaxToken> {
15507 support::token(&self.syntax, SyntaxKind::USING_KW)
15508 }
15509}
15510
15511#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15512pub struct UsingMethod {
15513 pub(crate) syntax: SyntaxNode,
15514}
15515impl UsingMethod {
15516 #[inline]
15517 pub fn name_ref(&self) -> Option<NameRef> {
15518 support::child(&self.syntax)
15519 }
15520 #[inline]
15521 pub fn using_token(&self) -> Option<SyntaxToken> {
15522 support::token(&self.syntax, SyntaxKind::USING_KW)
15523 }
15524}
15525
15526#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15527pub struct UsingOnClause {
15528 pub(crate) syntax: SyntaxNode,
15529}
15530impl UsingOnClause {
15531 #[inline]
15532 pub fn from_item(&self) -> Option<FromItem> {
15533 support::child(&self.syntax)
15534 }
15535 #[inline]
15536 pub fn on_clause(&self) -> Option<OnClause> {
15537 support::child(&self.syntax)
15538 }
15539 #[inline]
15540 pub fn using_token(&self) -> Option<SyntaxToken> {
15541 support::token(&self.syntax, SyntaxKind::USING_KW)
15542 }
15543}
15544
15545#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15546pub struct Vacuum {
15547 pub(crate) syntax: SyntaxNode,
15548}
15549impl Vacuum {
15550 #[inline]
15551 pub fn table_and_columns_list(&self) -> Option<TableAndColumnsList> {
15552 support::child(&self.syntax)
15553 }
15554 #[inline]
15555 pub fn vacuum_option_list(&self) -> Option<VacuumOptionList> {
15556 support::child(&self.syntax)
15557 }
15558 #[inline]
15559 pub fn analyse_token(&self) -> Option<SyntaxToken> {
15560 support::token(&self.syntax, SyntaxKind::ANALYSE_KW)
15561 }
15562 #[inline]
15563 pub fn analyze_token(&self) -> Option<SyntaxToken> {
15564 support::token(&self.syntax, SyntaxKind::ANALYZE_KW)
15565 }
15566 #[inline]
15567 pub fn freeze_token(&self) -> Option<SyntaxToken> {
15568 support::token(&self.syntax, SyntaxKind::FREEZE_KW)
15569 }
15570 #[inline]
15571 pub fn full_token(&self) -> Option<SyntaxToken> {
15572 support::token(&self.syntax, SyntaxKind::FULL_KW)
15573 }
15574 #[inline]
15575 pub fn vacuum_token(&self) -> Option<SyntaxToken> {
15576 support::token(&self.syntax, SyntaxKind::VACUUM_KW)
15577 }
15578 #[inline]
15579 pub fn verbose_token(&self) -> Option<SyntaxToken> {
15580 support::token(&self.syntax, SyntaxKind::VERBOSE_KW)
15581 }
15582}
15583
15584#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15585pub struct VacuumOption {
15586 pub(crate) syntax: SyntaxNode,
15587}
15588impl VacuumOption {
15589 #[inline]
15590 pub fn literal(&self) -> Option<Literal> {
15591 support::child(&self.syntax)
15592 }
15593}
15594
15595#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15596pub struct VacuumOptionList {
15597 pub(crate) syntax: SyntaxNode,
15598}
15599impl VacuumOptionList {
15600 #[inline]
15601 pub fn vacuum_options(&self) -> AstChildren<VacuumOption> {
15602 support::children(&self.syntax)
15603 }
15604 #[inline]
15605 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
15606 support::token(&self.syntax, SyntaxKind::L_PAREN)
15607 }
15608 #[inline]
15609 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
15610 support::token(&self.syntax, SyntaxKind::R_PAREN)
15611 }
15612}
15613
15614#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15615pub struct ValidateConstraint {
15616 pub(crate) syntax: SyntaxNode,
15617}
15618impl ValidateConstraint {
15619 #[inline]
15620 pub fn name_ref(&self) -> Option<NameRef> {
15621 support::child(&self.syntax)
15622 }
15623 #[inline]
15624 pub fn constraint_token(&self) -> Option<SyntaxToken> {
15625 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
15626 }
15627 #[inline]
15628 pub fn validate_token(&self) -> Option<SyntaxToken> {
15629 support::token(&self.syntax, SyntaxKind::VALIDATE_KW)
15630 }
15631}
15632
15633#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15634pub struct Values {
15635 pub(crate) syntax: SyntaxNode,
15636}
15637impl Values {
15638 #[inline]
15639 pub fn row_list(&self) -> Option<RowList> {
15640 support::child(&self.syntax)
15641 }
15642 #[inline]
15643 pub fn with_clause(&self) -> Option<WithClause> {
15644 support::child(&self.syntax)
15645 }
15646 #[inline]
15647 pub fn values_token(&self) -> Option<SyntaxToken> {
15648 support::token(&self.syntax, SyntaxKind::VALUES_KW)
15649 }
15650}
15651
15652#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15653pub struct Variant {
15654 pub(crate) syntax: SyntaxNode,
15655}
15656impl Variant {
15657 #[inline]
15658 pub fn literal(&self) -> Option<Literal> {
15659 support::child(&self.syntax)
15660 }
15661}
15662
15663#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15664pub struct VariantList {
15665 pub(crate) syntax: SyntaxNode,
15666}
15667impl VariantList {
15668 #[inline]
15669 pub fn variants(&self) -> AstChildren<Variant> {
15670 support::children(&self.syntax)
15671 }
15672 #[inline]
15673 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
15674 support::token(&self.syntax, SyntaxKind::L_PAREN)
15675 }
15676 #[inline]
15677 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
15678 support::token(&self.syntax, SyntaxKind::R_PAREN)
15679 }
15680}
15681
15682#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15683pub struct VolatilityFuncOption {
15684 pub(crate) syntax: SyntaxNode,
15685}
15686impl VolatilityFuncOption {
15687 #[inline]
15688 pub fn immutable_token(&self) -> Option<SyntaxToken> {
15689 support::token(&self.syntax, SyntaxKind::IMMUTABLE_KW)
15690 }
15691 #[inline]
15692 pub fn stable_token(&self) -> Option<SyntaxToken> {
15693 support::token(&self.syntax, SyntaxKind::STABLE_KW)
15694 }
15695 #[inline]
15696 pub fn volatile_token(&self) -> Option<SyntaxToken> {
15697 support::token(&self.syntax, SyntaxKind::VOLATILE_KW)
15698 }
15699}
15700
15701#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15702pub struct WhenClause {
15703 pub(crate) syntax: SyntaxNode,
15704}
15705impl WhenClause {
15706 #[inline]
15707 pub fn then_token(&self) -> Option<SyntaxToken> {
15708 support::token(&self.syntax, SyntaxKind::THEN_KW)
15709 }
15710 #[inline]
15711 pub fn when_token(&self) -> Option<SyntaxToken> {
15712 support::token(&self.syntax, SyntaxKind::WHEN_KW)
15713 }
15714}
15715
15716#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15717pub struct WhenClauseList {
15718 pub(crate) syntax: SyntaxNode,
15719}
15720impl WhenClauseList {
15721 #[inline]
15722 pub fn when_clause(&self) -> Option<WhenClause> {
15723 support::child(&self.syntax)
15724 }
15725 #[inline]
15726 pub fn when_clauses(&self) -> AstChildren<WhenClause> {
15727 support::children(&self.syntax)
15728 }
15729}
15730
15731#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15732pub struct WhenCondition {
15733 pub(crate) syntax: SyntaxNode,
15734}
15735impl WhenCondition {
15736 #[inline]
15737 pub fn expr(&self) -> Option<Expr> {
15738 support::child(&self.syntax)
15739 }
15740 #[inline]
15741 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
15742 support::token(&self.syntax, SyntaxKind::L_PAREN)
15743 }
15744 #[inline]
15745 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
15746 support::token(&self.syntax, SyntaxKind::R_PAREN)
15747 }
15748 #[inline]
15749 pub fn when_token(&self) -> Option<SyntaxToken> {
15750 support::token(&self.syntax, SyntaxKind::WHEN_KW)
15751 }
15752}
15753
15754#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15755pub struct WhereClause {
15756 pub(crate) syntax: SyntaxNode,
15757}
15758impl WhereClause {
15759 #[inline]
15760 pub fn expr(&self) -> Option<Expr> {
15761 support::child(&self.syntax)
15762 }
15763 #[inline]
15764 pub fn where_token(&self) -> Option<SyntaxToken> {
15765 support::token(&self.syntax, SyntaxKind::WHERE_KW)
15766 }
15767}
15768
15769#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15770pub struct WhereConditionClause {
15771 pub(crate) syntax: SyntaxNode,
15772}
15773impl WhereConditionClause {
15774 #[inline]
15775 pub fn expr(&self) -> Option<Expr> {
15776 support::child(&self.syntax)
15777 }
15778 #[inline]
15779 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
15780 support::token(&self.syntax, SyntaxKind::L_PAREN)
15781 }
15782 #[inline]
15783 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
15784 support::token(&self.syntax, SyntaxKind::R_PAREN)
15785 }
15786 #[inline]
15787 pub fn where_token(&self) -> Option<SyntaxToken> {
15788 support::token(&self.syntax, SyntaxKind::WHERE_KW)
15789 }
15790}
15791
15792#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15793pub struct WhereCurrentOf {
15794 pub(crate) syntax: SyntaxNode,
15795}
15796impl WhereCurrentOf {
15797 #[inline]
15798 pub fn name_ref(&self) -> Option<NameRef> {
15799 support::child(&self.syntax)
15800 }
15801 #[inline]
15802 pub fn current_token(&self) -> Option<SyntaxToken> {
15803 support::token(&self.syntax, SyntaxKind::CURRENT_KW)
15804 }
15805 #[inline]
15806 pub fn of_token(&self) -> Option<SyntaxToken> {
15807 support::token(&self.syntax, SyntaxKind::OF_KW)
15808 }
15809 #[inline]
15810 pub fn where_token(&self) -> Option<SyntaxToken> {
15811 support::token(&self.syntax, SyntaxKind::WHERE_KW)
15812 }
15813}
15814
15815#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15816pub struct WindowClause {
15817 pub(crate) syntax: SyntaxNode,
15818}
15819impl WindowClause {
15820 #[inline]
15821 pub fn window_defs(&self) -> AstChildren<WindowDef> {
15822 support::children(&self.syntax)
15823 }
15824 #[inline]
15825 pub fn window_token(&self) -> Option<SyntaxToken> {
15826 support::token(&self.syntax, SyntaxKind::WINDOW_KW)
15827 }
15828}
15829
15830#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15831pub struct WindowDef {
15832 pub(crate) syntax: SyntaxNode,
15833}
15834impl WindowDef {
15835 #[inline]
15836 pub fn name(&self) -> Option<Name> {
15837 support::child(&self.syntax)
15838 }
15839 #[inline]
15840 pub fn window_spec(&self) -> Option<WindowSpec> {
15841 support::child(&self.syntax)
15842 }
15843 #[inline]
15844 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
15845 support::token(&self.syntax, SyntaxKind::L_PAREN)
15846 }
15847 #[inline]
15848 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
15849 support::token(&self.syntax, SyntaxKind::R_PAREN)
15850 }
15851 #[inline]
15852 pub fn as_token(&self) -> Option<SyntaxToken> {
15853 support::token(&self.syntax, SyntaxKind::AS_KW)
15854 }
15855}
15856
15857#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15858pub struct WindowFuncOption {
15859 pub(crate) syntax: SyntaxNode,
15860}
15861impl WindowFuncOption {
15862 #[inline]
15863 pub fn window_token(&self) -> Option<SyntaxToken> {
15864 support::token(&self.syntax, SyntaxKind::WINDOW_KW)
15865 }
15866}
15867
15868#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15869pub struct WindowSpec {
15870 pub(crate) syntax: SyntaxNode,
15871}
15872impl WindowSpec {
15873 #[inline]
15874 pub fn exprs(&self) -> AstChildren<Expr> {
15875 support::children(&self.syntax)
15876 }
15877 #[inline]
15878 pub fn frame_clause(&self) -> Option<FrameClause> {
15879 support::child(&self.syntax)
15880 }
15881 #[inline]
15882 pub fn order_by_clause(&self) -> Option<OrderByClause> {
15883 support::child(&self.syntax)
15884 }
15885 #[inline]
15886 pub fn by_token(&self) -> Option<SyntaxToken> {
15887 support::token(&self.syntax, SyntaxKind::BY_KW)
15888 }
15889 #[inline]
15890 pub fn ident_token(&self) -> Option<SyntaxToken> {
15891 support::token(&self.syntax, SyntaxKind::IDENT)
15892 }
15893 #[inline]
15894 pub fn partition_token(&self) -> Option<SyntaxToken> {
15895 support::token(&self.syntax, SyntaxKind::PARTITION_KW)
15896 }
15897}
15898
15899#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15900pub struct WithCheckExprClause {
15901 pub(crate) syntax: SyntaxNode,
15902}
15903impl WithCheckExprClause {
15904 #[inline]
15905 pub fn expr(&self) -> Option<Expr> {
15906 support::child(&self.syntax)
15907 }
15908 #[inline]
15909 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
15910 support::token(&self.syntax, SyntaxKind::L_PAREN)
15911 }
15912 #[inline]
15913 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
15914 support::token(&self.syntax, SyntaxKind::R_PAREN)
15915 }
15916 #[inline]
15917 pub fn check_token(&self) -> Option<SyntaxToken> {
15918 support::token(&self.syntax, SyntaxKind::CHECK_KW)
15919 }
15920 #[inline]
15921 pub fn with_token(&self) -> Option<SyntaxToken> {
15922 support::token(&self.syntax, SyntaxKind::WITH_KW)
15923 }
15924}
15925
15926#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15927pub struct WithClause {
15928 pub(crate) syntax: SyntaxNode,
15929}
15930impl WithClause {
15931 #[inline]
15932 pub fn with_tables(&self) -> AstChildren<WithTable> {
15933 support::children(&self.syntax)
15934 }
15935 #[inline]
15936 pub fn recursive_token(&self) -> Option<SyntaxToken> {
15937 support::token(&self.syntax, SyntaxKind::RECURSIVE_KW)
15938 }
15939 #[inline]
15940 pub fn with_token(&self) -> Option<SyntaxToken> {
15941 support::token(&self.syntax, SyntaxKind::WITH_KW)
15942 }
15943}
15944
15945#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15946pub struct WithData {
15947 pub(crate) syntax: SyntaxNode,
15948}
15949impl WithData {
15950 #[inline]
15951 pub fn data_token(&self) -> Option<SyntaxToken> {
15952 support::token(&self.syntax, SyntaxKind::DATA_KW)
15953 }
15954 #[inline]
15955 pub fn with_token(&self) -> Option<SyntaxToken> {
15956 support::token(&self.syntax, SyntaxKind::WITH_KW)
15957 }
15958}
15959
15960#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15961pub struct WithNoData {
15962 pub(crate) syntax: SyntaxNode,
15963}
15964impl WithNoData {
15965 #[inline]
15966 pub fn data_token(&self) -> Option<SyntaxToken> {
15967 support::token(&self.syntax, SyntaxKind::DATA_KW)
15968 }
15969 #[inline]
15970 pub fn no_token(&self) -> Option<SyntaxToken> {
15971 support::token(&self.syntax, SyntaxKind::NO_KW)
15972 }
15973 #[inline]
15974 pub fn with_token(&self) -> Option<SyntaxToken> {
15975 support::token(&self.syntax, SyntaxKind::WITH_KW)
15976 }
15977}
15978
15979#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15980pub struct WithOptions {
15981 pub(crate) syntax: SyntaxNode,
15982}
15983impl WithOptions {
15984 #[inline]
15985 pub fn options_token(&self) -> Option<SyntaxToken> {
15986 support::token(&self.syntax, SyntaxKind::OPTIONS_KW)
15987 }
15988 #[inline]
15989 pub fn with_token(&self) -> Option<SyntaxToken> {
15990 support::token(&self.syntax, SyntaxKind::WITH_KW)
15991 }
15992}
15993
15994#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15995pub struct WithParams {
15996 pub(crate) syntax: SyntaxNode,
15997}
15998impl WithParams {
15999 #[inline]
16000 pub fn attribute_list(&self) -> Option<AttributeList> {
16001 support::child(&self.syntax)
16002 }
16003 #[inline]
16004 pub fn with_token(&self) -> Option<SyntaxToken> {
16005 support::token(&self.syntax, SyntaxKind::WITH_KW)
16006 }
16007}
16008
16009#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16010pub struct WithTable {
16011 pub(crate) syntax: SyntaxNode,
16012}
16013impl WithTable {
16014 #[inline]
16015 pub fn column_list(&self) -> Option<ColumnList> {
16016 support::child(&self.syntax)
16017 }
16018 #[inline]
16019 pub fn materialized(&self) -> Option<Materialized> {
16020 support::child(&self.syntax)
16021 }
16022 #[inline]
16023 pub fn name(&self) -> Option<Name> {
16024 support::child(&self.syntax)
16025 }
16026 #[inline]
16027 pub fn not_materialized(&self) -> Option<NotMaterialized> {
16028 support::child(&self.syntax)
16029 }
16030 #[inline]
16031 pub fn query(&self) -> Option<WithQuery> {
16032 support::child(&self.syntax)
16033 }
16034 #[inline]
16035 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
16036 support::token(&self.syntax, SyntaxKind::L_PAREN)
16037 }
16038 #[inline]
16039 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
16040 support::token(&self.syntax, SyntaxKind::R_PAREN)
16041 }
16042 #[inline]
16043 pub fn as_token(&self) -> Option<SyntaxToken> {
16044 support::token(&self.syntax, SyntaxKind::AS_KW)
16045 }
16046}
16047
16048#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16049pub struct WithTimezone {
16050 pub(crate) syntax: SyntaxNode,
16051}
16052impl WithTimezone {
16053 #[inline]
16054 pub fn time_token(&self) -> Option<SyntaxToken> {
16055 support::token(&self.syntax, SyntaxKind::TIME_KW)
16056 }
16057 #[inline]
16058 pub fn with_token(&self) -> Option<SyntaxToken> {
16059 support::token(&self.syntax, SyntaxKind::WITH_KW)
16060 }
16061 #[inline]
16062 pub fn zone_token(&self) -> Option<SyntaxToken> {
16063 support::token(&self.syntax, SyntaxKind::ZONE_KW)
16064 }
16065}
16066
16067#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16068pub struct WithinClause {
16069 pub(crate) syntax: SyntaxNode,
16070}
16071impl WithinClause {
16072 #[inline]
16073 pub fn order_by_clause(&self) -> Option<OrderByClause> {
16074 support::child(&self.syntax)
16075 }
16076 #[inline]
16077 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
16078 support::token(&self.syntax, SyntaxKind::L_PAREN)
16079 }
16080 #[inline]
16081 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
16082 support::token(&self.syntax, SyntaxKind::R_PAREN)
16083 }
16084 #[inline]
16085 pub fn group_token(&self) -> Option<SyntaxToken> {
16086 support::token(&self.syntax, SyntaxKind::GROUP_KW)
16087 }
16088 #[inline]
16089 pub fn within_token(&self) -> Option<SyntaxToken> {
16090 support::token(&self.syntax, SyntaxKind::WITHIN_KW)
16091 }
16092}
16093
16094#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16095pub struct WithoutOids {
16096 pub(crate) syntax: SyntaxNode,
16097}
16098impl WithoutOids {
16099 #[inline]
16100 pub fn oids_token(&self) -> Option<SyntaxToken> {
16101 support::token(&self.syntax, SyntaxKind::OIDS_KW)
16102 }
16103 #[inline]
16104 pub fn without_token(&self) -> Option<SyntaxToken> {
16105 support::token(&self.syntax, SyntaxKind::WITHOUT_KW)
16106 }
16107}
16108
16109#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16110pub struct WithoutTimezone {
16111 pub(crate) syntax: SyntaxNode,
16112}
16113impl WithoutTimezone {
16114 #[inline]
16115 pub fn time_token(&self) -> Option<SyntaxToken> {
16116 support::token(&self.syntax, SyntaxKind::TIME_KW)
16117 }
16118 #[inline]
16119 pub fn without_token(&self) -> Option<SyntaxToken> {
16120 support::token(&self.syntax, SyntaxKind::WITHOUT_KW)
16121 }
16122 #[inline]
16123 pub fn zone_token(&self) -> Option<SyntaxToken> {
16124 support::token(&self.syntax, SyntaxKind::ZONE_KW)
16125 }
16126}
16127
16128#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16129pub struct XmlAttributeList {
16130 pub(crate) syntax: SyntaxNode,
16131}
16132impl XmlAttributeList {
16133 #[inline]
16134 pub fn expr_as_names(&self) -> AstChildren<ExprAsName> {
16135 support::children(&self.syntax)
16136 }
16137}
16138
16139#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16140pub struct XmlColumnOption {
16141 pub(crate) syntax: SyntaxNode,
16142}
16143impl XmlColumnOption {
16144 #[inline]
16145 pub fn expr(&self) -> Option<Expr> {
16146 support::child(&self.syntax)
16147 }
16148 #[inline]
16149 pub fn default_token(&self) -> Option<SyntaxToken> {
16150 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
16151 }
16152 #[inline]
16153 pub fn ident_token(&self) -> Option<SyntaxToken> {
16154 support::token(&self.syntax, SyntaxKind::IDENT)
16155 }
16156 #[inline]
16157 pub fn not_token(&self) -> Option<SyntaxToken> {
16158 support::token(&self.syntax, SyntaxKind::NOT_KW)
16159 }
16160 #[inline]
16161 pub fn null_token(&self) -> Option<SyntaxToken> {
16162 support::token(&self.syntax, SyntaxKind::NULL_KW)
16163 }
16164 #[inline]
16165 pub fn path_token(&self) -> Option<SyntaxToken> {
16166 support::token(&self.syntax, SyntaxKind::PATH_KW)
16167 }
16168}
16169
16170#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16171pub struct XmlColumnOptionList {
16172 pub(crate) syntax: SyntaxNode,
16173}
16174impl XmlColumnOptionList {
16175 #[inline]
16176 pub fn xml_column_option(&self) -> Option<XmlColumnOption> {
16177 support::child(&self.syntax)
16178 }
16179 #[inline]
16180 pub fn xml_column_options(&self) -> AstChildren<XmlColumnOption> {
16181 support::children(&self.syntax)
16182 }
16183}
16184
16185#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16186pub struct XmlElementFn {
16187 pub(crate) syntax: SyntaxNode,
16188}
16189impl XmlElementFn {
16190 #[inline]
16191 pub fn exprs(&self) -> AstChildren<Expr> {
16192 support::children(&self.syntax)
16193 }
16194 #[inline]
16195 pub fn name(&self) -> Option<Name> {
16196 support::child(&self.syntax)
16197 }
16198 #[inline]
16199 pub fn xml_attribute_list(&self) -> Option<XmlAttributeList> {
16200 support::child(&self.syntax)
16201 }
16202 #[inline]
16203 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
16204 support::token(&self.syntax, SyntaxKind::L_PAREN)
16205 }
16206 #[inline]
16207 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
16208 support::token(&self.syntax, SyntaxKind::R_PAREN)
16209 }
16210 #[inline]
16211 pub fn comma_token(&self) -> Option<SyntaxToken> {
16212 support::token(&self.syntax, SyntaxKind::COMMA)
16213 }
16214 #[inline]
16215 pub fn name_token(&self) -> Option<SyntaxToken> {
16216 support::token(&self.syntax, SyntaxKind::NAME_KW)
16217 }
16218 #[inline]
16219 pub fn xmlattributes_token(&self) -> Option<SyntaxToken> {
16220 support::token(&self.syntax, SyntaxKind::XMLATTRIBUTES_KW)
16221 }
16222 #[inline]
16223 pub fn xmlelement_token(&self) -> Option<SyntaxToken> {
16224 support::token(&self.syntax, SyntaxKind::XMLELEMENT_KW)
16225 }
16226}
16227
16228#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16229pub struct XmlExistsFn {
16230 pub(crate) syntax: SyntaxNode,
16231}
16232impl XmlExistsFn {
16233 #[inline]
16234 pub fn expr(&self) -> Option<Expr> {
16235 support::child(&self.syntax)
16236 }
16237 #[inline]
16238 pub fn xml_passing_mech(&self) -> Option<XmlPassingMech> {
16239 support::child(&self.syntax)
16240 }
16241 #[inline]
16242 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
16243 support::token(&self.syntax, SyntaxKind::L_PAREN)
16244 }
16245 #[inline]
16246 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
16247 support::token(&self.syntax, SyntaxKind::R_PAREN)
16248 }
16249 #[inline]
16250 pub fn passing_token(&self) -> Option<SyntaxToken> {
16251 support::token(&self.syntax, SyntaxKind::PASSING_KW)
16252 }
16253 #[inline]
16254 pub fn xmlexists_token(&self) -> Option<SyntaxToken> {
16255 support::token(&self.syntax, SyntaxKind::XMLEXISTS_KW)
16256 }
16257}
16258
16259#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16260pub struct XmlForestFn {
16261 pub(crate) syntax: SyntaxNode,
16262}
16263impl XmlForestFn {
16264 #[inline]
16265 pub fn xml_attribute_list(&self) -> Option<XmlAttributeList> {
16266 support::child(&self.syntax)
16267 }
16268 #[inline]
16269 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
16270 support::token(&self.syntax, SyntaxKind::L_PAREN)
16271 }
16272 #[inline]
16273 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
16274 support::token(&self.syntax, SyntaxKind::R_PAREN)
16275 }
16276 #[inline]
16277 pub fn xmlforest_token(&self) -> Option<SyntaxToken> {
16278 support::token(&self.syntax, SyntaxKind::XMLFOREST_KW)
16279 }
16280}
16281
16282#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16283pub struct XmlNamespace {
16284 pub(crate) syntax: SyntaxNode,
16285}
16286impl XmlNamespace {
16287 #[inline]
16288 pub fn expr(&self) -> Option<Expr> {
16289 support::child(&self.syntax)
16290 }
16291 #[inline]
16292 pub fn name(&self) -> Option<Name> {
16293 support::child(&self.syntax)
16294 }
16295 #[inline]
16296 pub fn as_token(&self) -> Option<SyntaxToken> {
16297 support::token(&self.syntax, SyntaxKind::AS_KW)
16298 }
16299 #[inline]
16300 pub fn default_token(&self) -> Option<SyntaxToken> {
16301 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
16302 }
16303}
16304
16305#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16306pub struct XmlNamespaceList {
16307 pub(crate) syntax: SyntaxNode,
16308}
16309impl XmlNamespaceList {
16310 #[inline]
16311 pub fn xml_namespaces(&self) -> AstChildren<XmlNamespace> {
16312 support::children(&self.syntax)
16313 }
16314 #[inline]
16315 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
16316 support::token(&self.syntax, SyntaxKind::L_PAREN)
16317 }
16318 #[inline]
16319 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
16320 support::token(&self.syntax, SyntaxKind::R_PAREN)
16321 }
16322}
16323
16324#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16325pub struct XmlParseFn {
16326 pub(crate) syntax: SyntaxNode,
16327}
16328impl XmlParseFn {
16329 #[inline]
16330 pub fn expr(&self) -> Option<Expr> {
16331 support::child(&self.syntax)
16332 }
16333 #[inline]
16334 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
16335 support::token(&self.syntax, SyntaxKind::L_PAREN)
16336 }
16337 #[inline]
16338 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
16339 support::token(&self.syntax, SyntaxKind::R_PAREN)
16340 }
16341 #[inline]
16342 pub fn content_token(&self) -> Option<SyntaxToken> {
16343 support::token(&self.syntax, SyntaxKind::CONTENT_KW)
16344 }
16345 #[inline]
16346 pub fn document_token(&self) -> Option<SyntaxToken> {
16347 support::token(&self.syntax, SyntaxKind::DOCUMENT_KW)
16348 }
16349 #[inline]
16350 pub fn preserve_token(&self) -> Option<SyntaxToken> {
16351 support::token(&self.syntax, SyntaxKind::PRESERVE_KW)
16352 }
16353 #[inline]
16354 pub fn strip_token(&self) -> Option<SyntaxToken> {
16355 support::token(&self.syntax, SyntaxKind::STRIP_KW)
16356 }
16357 #[inline]
16358 pub fn whitespace_token(&self) -> Option<SyntaxToken> {
16359 support::token(&self.syntax, SyntaxKind::WHITESPACE_KW)
16360 }
16361 #[inline]
16362 pub fn xmlparse_token(&self) -> Option<SyntaxToken> {
16363 support::token(&self.syntax, SyntaxKind::XMLPARSE_KW)
16364 }
16365}
16366
16367#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16368pub struct XmlPassingMech {
16369 pub(crate) syntax: SyntaxNode,
16370}
16371impl XmlPassingMech {
16372 #[inline]
16373 pub fn by_token(&self) -> Option<SyntaxToken> {
16374 support::token(&self.syntax, SyntaxKind::BY_KW)
16375 }
16376 #[inline]
16377 pub fn ref_token(&self) -> Option<SyntaxToken> {
16378 support::token(&self.syntax, SyntaxKind::REF_KW)
16379 }
16380 #[inline]
16381 pub fn value_token(&self) -> Option<SyntaxToken> {
16382 support::token(&self.syntax, SyntaxKind::VALUE_KW)
16383 }
16384}
16385
16386#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16387pub struct XmlPiFn {
16388 pub(crate) syntax: SyntaxNode,
16389}
16390impl XmlPiFn {
16391 #[inline]
16392 pub fn expr(&self) -> Option<Expr> {
16393 support::child(&self.syntax)
16394 }
16395 #[inline]
16396 pub fn name(&self) -> Option<Name> {
16397 support::child(&self.syntax)
16398 }
16399 #[inline]
16400 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
16401 support::token(&self.syntax, SyntaxKind::L_PAREN)
16402 }
16403 #[inline]
16404 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
16405 support::token(&self.syntax, SyntaxKind::R_PAREN)
16406 }
16407 #[inline]
16408 pub fn comma_token(&self) -> Option<SyntaxToken> {
16409 support::token(&self.syntax, SyntaxKind::COMMA)
16410 }
16411 #[inline]
16412 pub fn name_token(&self) -> Option<SyntaxToken> {
16413 support::token(&self.syntax, SyntaxKind::NAME_KW)
16414 }
16415 #[inline]
16416 pub fn xmlpi_token(&self) -> Option<SyntaxToken> {
16417 support::token(&self.syntax, SyntaxKind::XMLPI_KW)
16418 }
16419}
16420
16421#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16422pub struct XmlRootFn {
16423 pub(crate) syntax: SyntaxNode,
16424}
16425impl XmlRootFn {
16426 #[inline]
16427 pub fn expr(&self) -> Option<Expr> {
16428 support::child(&self.syntax)
16429 }
16430 #[inline]
16431 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
16432 support::token(&self.syntax, SyntaxKind::L_PAREN)
16433 }
16434 #[inline]
16435 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
16436 support::token(&self.syntax, SyntaxKind::R_PAREN)
16437 }
16438 #[inline]
16439 pub fn comma_token(&self) -> Option<SyntaxToken> {
16440 support::token(&self.syntax, SyntaxKind::COMMA)
16441 }
16442 #[inline]
16443 pub fn no_token(&self) -> Option<SyntaxToken> {
16444 support::token(&self.syntax, SyntaxKind::NO_KW)
16445 }
16446 #[inline]
16447 pub fn standalone_token(&self) -> Option<SyntaxToken> {
16448 support::token(&self.syntax, SyntaxKind::STANDALONE_KW)
16449 }
16450 #[inline]
16451 pub fn value_token(&self) -> Option<SyntaxToken> {
16452 support::token(&self.syntax, SyntaxKind::VALUE_KW)
16453 }
16454 #[inline]
16455 pub fn version_token(&self) -> Option<SyntaxToken> {
16456 support::token(&self.syntax, SyntaxKind::VERSION_KW)
16457 }
16458 #[inline]
16459 pub fn xmlroot_token(&self) -> Option<SyntaxToken> {
16460 support::token(&self.syntax, SyntaxKind::XMLROOT_KW)
16461 }
16462 #[inline]
16463 pub fn yes_token(&self) -> Option<SyntaxToken> {
16464 support::token(&self.syntax, SyntaxKind::YES_KW)
16465 }
16466}
16467
16468#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16469pub struct XmlRowPassingClause {
16470 pub(crate) syntax: SyntaxNode,
16471}
16472impl XmlRowPassingClause {
16473 #[inline]
16474 pub fn expr(&self) -> Option<Expr> {
16475 support::child(&self.syntax)
16476 }
16477 #[inline]
16478 pub fn xml_passing_mech(&self) -> Option<XmlPassingMech> {
16479 support::child(&self.syntax)
16480 }
16481 #[inline]
16482 pub fn passing_token(&self) -> Option<SyntaxToken> {
16483 support::token(&self.syntax, SyntaxKind::PASSING_KW)
16484 }
16485}
16486
16487#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16488pub struct XmlSerializeFn {
16489 pub(crate) syntax: SyntaxNode,
16490}
16491impl XmlSerializeFn {
16492 #[inline]
16493 pub fn expr(&self) -> Option<Expr> {
16494 support::child(&self.syntax)
16495 }
16496 #[inline]
16497 pub fn ty(&self) -> Option<Type> {
16498 support::child(&self.syntax)
16499 }
16500 #[inline]
16501 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
16502 support::token(&self.syntax, SyntaxKind::L_PAREN)
16503 }
16504 #[inline]
16505 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
16506 support::token(&self.syntax, SyntaxKind::R_PAREN)
16507 }
16508 #[inline]
16509 pub fn as_token(&self) -> Option<SyntaxToken> {
16510 support::token(&self.syntax, SyntaxKind::AS_KW)
16511 }
16512 #[inline]
16513 pub fn content_token(&self) -> Option<SyntaxToken> {
16514 support::token(&self.syntax, SyntaxKind::CONTENT_KW)
16515 }
16516 #[inline]
16517 pub fn document_token(&self) -> Option<SyntaxToken> {
16518 support::token(&self.syntax, SyntaxKind::DOCUMENT_KW)
16519 }
16520 #[inline]
16521 pub fn ident_token(&self) -> Option<SyntaxToken> {
16522 support::token(&self.syntax, SyntaxKind::IDENT)
16523 }
16524 #[inline]
16525 pub fn no_token(&self) -> Option<SyntaxToken> {
16526 support::token(&self.syntax, SyntaxKind::NO_KW)
16527 }
16528 #[inline]
16529 pub fn xmlserialize_token(&self) -> Option<SyntaxToken> {
16530 support::token(&self.syntax, SyntaxKind::XMLSERIALIZE_KW)
16531 }
16532}
16533
16534#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16535pub struct XmlTable {
16536 pub(crate) syntax: SyntaxNode,
16537}
16538impl XmlTable {
16539 #[inline]
16540 pub fn xml_namespace_list(&self) -> Option<XmlNamespaceList> {
16541 support::child(&self.syntax)
16542 }
16543 #[inline]
16544 pub fn xml_row_passing_clause(&self) -> Option<XmlRowPassingClause> {
16545 support::child(&self.syntax)
16546 }
16547 #[inline]
16548 pub fn xml_table_column_list(&self) -> Option<XmlTableColumnList> {
16549 support::child(&self.syntax)
16550 }
16551 #[inline]
16552 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
16553 support::token(&self.syntax, SyntaxKind::L_PAREN)
16554 }
16555 #[inline]
16556 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
16557 support::token(&self.syntax, SyntaxKind::R_PAREN)
16558 }
16559 #[inline]
16560 pub fn comma_token(&self) -> Option<SyntaxToken> {
16561 support::token(&self.syntax, SyntaxKind::COMMA)
16562 }
16563 #[inline]
16564 pub fn xmlnamespaces_token(&self) -> Option<SyntaxToken> {
16565 support::token(&self.syntax, SyntaxKind::XMLNAMESPACES_KW)
16566 }
16567 #[inline]
16568 pub fn xmltable_token(&self) -> Option<SyntaxToken> {
16569 support::token(&self.syntax, SyntaxKind::XMLTABLE_KW)
16570 }
16571}
16572
16573#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16574pub struct XmlTableColumn {
16575 pub(crate) syntax: SyntaxNode,
16576}
16577impl XmlTableColumn {
16578 #[inline]
16579 pub fn name(&self) -> Option<Name> {
16580 support::child(&self.syntax)
16581 }
16582 #[inline]
16583 pub fn ty(&self) -> Option<Type> {
16584 support::child(&self.syntax)
16585 }
16586 #[inline]
16587 pub fn xml_column_option_list(&self) -> Option<XmlColumnOptionList> {
16588 support::child(&self.syntax)
16589 }
16590 #[inline]
16591 pub fn for_token(&self) -> Option<SyntaxToken> {
16592 support::token(&self.syntax, SyntaxKind::FOR_KW)
16593 }
16594 #[inline]
16595 pub fn ordinality_token(&self) -> Option<SyntaxToken> {
16596 support::token(&self.syntax, SyntaxKind::ORDINALITY_KW)
16597 }
16598}
16599
16600#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16601pub struct XmlTableColumnList {
16602 pub(crate) syntax: SyntaxNode,
16603}
16604impl XmlTableColumnList {
16605 #[inline]
16606 pub fn xml_table_columns(&self) -> AstChildren<XmlTableColumn> {
16607 support::children(&self.syntax)
16608 }
16609}
16610
16611#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16612pub enum AlterColumnOption {
16613 AddGenerated(AddGenerated),
16614 DropDefault(DropDefault),
16615 DropExpression(DropExpression),
16616 DropIdentity(DropIdentity),
16617 DropNotNull(DropNotNull),
16618 Inherit(Inherit),
16619 NoInherit(NoInherit),
16620 ResetOptions(ResetOptions),
16621 Restart(Restart),
16622 SetCompression(SetCompression),
16623 SetDefault(SetDefault),
16624 SetExpression(SetExpression),
16625 SetGenerated(SetGenerated),
16626 SetGeneratedOptions(SetGeneratedOptions),
16627 SetNotNull(SetNotNull),
16628 SetOptions(SetOptions),
16629 SetOptionsList(SetOptionsList),
16630 SetSequenceOption(SetSequenceOption),
16631 SetStatistics(SetStatistics),
16632 SetStorage(SetStorage),
16633 SetType(SetType),
16634}
16635
16636#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16637pub enum AlterDomainAction {
16638 AddConstraint(AddConstraint),
16639 DropConstraint(DropConstraint),
16640 DropDefault(DropDefault),
16641 DropNotNull(DropNotNull),
16642 OwnerTo(OwnerTo),
16643 RenameConstraint(RenameConstraint),
16644 RenameTo(RenameTo),
16645 SetDefault(SetDefault),
16646 SetNotNull(SetNotNull),
16647 SetSchema(SetSchema),
16648 ValidateConstraint(ValidateConstraint),
16649}
16650
16651#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16652pub enum AlterIndexAction {
16653 AlterSetStatistics(AlterSetStatistics),
16654 AttachPartition(AttachPartition),
16655 DependsOnExtension(DependsOnExtension),
16656 NoDependsOnExtension(NoDependsOnExtension),
16657 RenameTo(RenameTo),
16658 ResetOptions(ResetOptions),
16659 SetOptions(SetOptions),
16660 SetTablespace(SetTablespace),
16661}
16662
16663#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16664pub enum AlterMaterializedViewAction {
16665 DependsOnExtension(DependsOnExtension),
16666 NoDependsOnExtension(NoDependsOnExtension),
16667 RenameColumn(RenameColumn),
16668 RenameTo(RenameTo),
16669 SetSchema(SetSchema),
16670 AlterTableAction(AlterTableAction),
16671}
16672
16673#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16674pub enum AlterTableAction {
16675 AddColumn(AddColumn),
16676 AddConstraint(AddConstraint),
16677 AlterColumn(AlterColumn),
16678 AlterConstraint(AlterConstraint),
16679 AttachPartition(AttachPartition),
16680 ClusterOn(ClusterOn),
16681 DetachPartition(DetachPartition),
16682 DisableRls(DisableRls),
16683 DisableRule(DisableRule),
16684 DisableTrigger(DisableTrigger),
16685 DropColumn(DropColumn),
16686 DropConstraint(DropConstraint),
16687 EnableAlwaysRule(EnableAlwaysRule),
16688 EnableAlwaysTrigger(EnableAlwaysTrigger),
16689 EnableReplicaRule(EnableReplicaRule),
16690 EnableReplicaTrigger(EnableReplicaTrigger),
16691 EnableRls(EnableRls),
16692 EnableRule(EnableRule),
16693 EnableTrigger(EnableTrigger),
16694 ForceRls(ForceRls),
16695 InheritTable(InheritTable),
16696 MergePartitions(MergePartitions),
16697 NoForceRls(NoForceRls),
16698 NoInheritTable(NoInheritTable),
16699 NotOf(NotOf),
16700 OfType(OfType),
16701 OptionItemList(OptionItemList),
16702 OwnerTo(OwnerTo),
16703 RenameColumn(RenameColumn),
16704 RenameConstraint(RenameConstraint),
16705 RenameTo(RenameTo),
16706 ReplicaIdentity(ReplicaIdentity),
16707 ResetOptions(ResetOptions),
16708 SetAccessMethod(SetAccessMethod),
16709 SetLogged(SetLogged),
16710 SetOptions(SetOptions),
16711 SetSchema(SetSchema),
16712 SetTablespace(SetTablespace),
16713 SetUnlogged(SetUnlogged),
16714 SetWithoutCluster(SetWithoutCluster),
16715 SetWithoutOids(SetWithoutOids),
16716 SplitPartition(SplitPartition),
16717 ValidateConstraint(ValidateConstraint),
16718}
16719
16720#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16721pub enum ColumnConstraint {
16722 CheckConstraint(CheckConstraint),
16723 DefaultConstraint(DefaultConstraint),
16724 ExcludeConstraint(ExcludeConstraint),
16725 NotNullConstraint(NotNullConstraint),
16726 PrimaryKeyConstraint(PrimaryKeyConstraint),
16727 ReferencesConstraint(ReferencesConstraint),
16728 UniqueConstraint(UniqueConstraint),
16729}
16730
16731#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16732pub enum ConfigValue {
16733 Literal(Literal),
16734 NameRef(NameRef),
16735}
16736
16737#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16738pub enum ConflictAction {
16739 ConflictDoNothing(ConflictDoNothing),
16740 ConflictDoUpdateSet(ConflictDoUpdateSet),
16741}
16742
16743#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16744pub enum ConflictTarget {
16745 ConflictOnConstraint(ConflictOnConstraint),
16746 ConflictOnIndex(ConflictOnIndex),
16747}
16748
16749#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16750pub enum Constraint {
16751 CheckConstraint(CheckConstraint),
16752 DefaultConstraint(DefaultConstraint),
16753 ForeignKeyConstraint(ForeignKeyConstraint),
16754 GeneratedConstraint(GeneratedConstraint),
16755 NotNullConstraint(NotNullConstraint),
16756 NullConstraint(NullConstraint),
16757 PrimaryKeyConstraint(PrimaryKeyConstraint),
16758 ReferencesConstraint(ReferencesConstraint),
16759 UniqueConstraint(UniqueConstraint),
16760}
16761
16762#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16763pub enum ExplainStmt {
16764 CompoundSelect(CompoundSelect),
16765 CreateMaterializedView(CreateMaterializedView),
16766 CreateTableAs(CreateTableAs),
16767 Declare(Declare),
16768 Delete(Delete),
16769 Execute(Execute),
16770 Insert(Insert),
16771 Merge(Merge),
16772 ParenSelect(ParenSelect),
16773 Select(Select),
16774 SelectInto(SelectInto),
16775 Table(Table),
16776 Update(Update),
16777 Values(Values),
16778}
16779
16780#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16781pub enum Expr {
16782 ArrayExpr(ArrayExpr),
16783 BetweenExpr(BetweenExpr),
16784 BinExpr(BinExpr),
16785 CallExpr(CallExpr),
16786 CaseExpr(CaseExpr),
16787 CastExpr(CastExpr),
16788 FieldExpr(FieldExpr),
16789 IndexExpr(IndexExpr),
16790 Literal(Literal),
16791 NameRef(NameRef),
16792 ParenExpr(ParenExpr),
16793 PostfixExpr(PostfixExpr),
16794 PrefixExpr(PrefixExpr),
16795 SliceExpr(SliceExpr),
16796 TupleExpr(TupleExpr),
16797}
16798
16799#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16800pub enum FuncOption {
16801 AsFuncOption(AsFuncOption),
16802 BeginFuncOptionList(BeginFuncOptionList),
16803 CostFuncOption(CostFuncOption),
16804 LanguageFuncOption(LanguageFuncOption),
16805 LeakproofFuncOption(LeakproofFuncOption),
16806 ParallelFuncOption(ParallelFuncOption),
16807 ResetFuncOption(ResetFuncOption),
16808 ReturnFuncOption(ReturnFuncOption),
16809 RowsFuncOption(RowsFuncOption),
16810 SecurityFuncOption(SecurityFuncOption),
16811 SetFuncOption(SetFuncOption),
16812 StrictFuncOption(StrictFuncOption),
16813 SupportFuncOption(SupportFuncOption),
16814 TransformFuncOption(TransformFuncOption),
16815 VolatilityFuncOption(VolatilityFuncOption),
16816 WindowFuncOption(WindowFuncOption),
16817}
16818
16819#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16820pub enum GroupBy {
16821 GroupingCube(GroupingCube),
16822 GroupingExpr(GroupingExpr),
16823 GroupingRollup(GroupingRollup),
16824 GroupingSets(GroupingSets),
16825}
16826
16827#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16828pub enum JoinType {
16829 JoinCross(JoinCross),
16830 JoinFull(JoinFull),
16831 JoinInner(JoinInner),
16832 JoinLeft(JoinLeft),
16833 JoinRight(JoinRight),
16834}
16835
16836#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16837pub enum JsonBehavior {
16838 JsonBehaviorDefault(JsonBehaviorDefault),
16839 JsonBehaviorEmptyArray(JsonBehaviorEmptyArray),
16840 JsonBehaviorEmptyObject(JsonBehaviorEmptyObject),
16841 JsonBehaviorError(JsonBehaviorError),
16842 JsonBehaviorFalse(JsonBehaviorFalse),
16843 JsonBehaviorNull(JsonBehaviorNull),
16844 JsonBehaviorTrue(JsonBehaviorTrue),
16845 JsonBehaviorUnknown(JsonBehaviorUnknown),
16846}
16847
16848#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16849pub enum MatchType {
16850 MatchFull(MatchFull),
16851 MatchPartial(MatchPartial),
16852 MatchSimple(MatchSimple),
16853}
16854
16855#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16856pub enum MergeAction {
16857 MergeDelete(MergeDelete),
16858 MergeDoNothing(MergeDoNothing),
16859 MergeInsert(MergeInsert),
16860 MergeUpdate(MergeUpdate),
16861}
16862
16863#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16864pub enum MergeWhenClause {
16865 MergeWhenMatched(MergeWhenMatched),
16866 MergeWhenNotMatchedSource(MergeWhenNotMatchedSource),
16867 MergeWhenNotMatchedTarget(MergeWhenNotMatchedTarget),
16868}
16869
16870#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16871pub enum OnCommitAction {
16872 DeleteRows(DeleteRows),
16873 Drop(Drop),
16874 PreserveRows(PreserveRows),
16875}
16876
16877#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16878pub enum ParamMode {
16879 ParamIn(ParamIn),
16880 ParamInOut(ParamInOut),
16881 ParamOut(ParamOut),
16882 ParamVariadic(ParamVariadic),
16883}
16884
16885#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16886pub enum PartitionType {
16887 PartitionDefault(PartitionDefault),
16888 PartitionForValuesFrom(PartitionForValuesFrom),
16889 PartitionForValuesIn(PartitionForValuesIn),
16890 PartitionForValuesWith(PartitionForValuesWith),
16891}
16892
16893#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16894pub enum PreparableStmt {
16895 CompoundSelect(CompoundSelect),
16896 Delete(Delete),
16897 Insert(Insert),
16898 Merge(Merge),
16899 Select(Select),
16900 SelectInto(SelectInto),
16901 Table(Table),
16902 Update(Update),
16903 Values(Values),
16904}
16905
16906#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16907pub enum RefAction {
16908 Cascade(Cascade),
16909 NoAction(NoAction),
16910 Restrict(Restrict),
16911 SetDefaultColumns(SetDefaultColumns),
16912 SetNullColumns(SetNullColumns),
16913}
16914
16915#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16916pub enum SchemaElement {
16917 CreateIndex(CreateIndex),
16918 CreateSequence(CreateSequence),
16919 CreateTable(CreateTable),
16920 CreateTrigger(CreateTrigger),
16921 CreateView(CreateView),
16922 Grant(Grant),
16923}
16924
16925#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16926pub enum SelectVariant {
16927 CompoundSelect(CompoundSelect),
16928 ParenSelect(ParenSelect),
16929 Select(Select),
16930 SelectInto(SelectInto),
16931 Table(Table),
16932 Values(Values),
16933}
16934
16935#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16936pub enum SetColumn {
16937 SetMultipleColumns(SetMultipleColumns),
16938 SetSingleColumn(SetSingleColumn),
16939}
16940
16941#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16942pub enum Stmt {
16943 AlterAggregate(AlterAggregate),
16944 AlterCollation(AlterCollation),
16945 AlterConversion(AlterConversion),
16946 AlterDatabase(AlterDatabase),
16947 AlterDefaultPrivileges(AlterDefaultPrivileges),
16948 AlterDomain(AlterDomain),
16949 AlterEventTrigger(AlterEventTrigger),
16950 AlterExtension(AlterExtension),
16951 AlterForeignDataWrapper(AlterForeignDataWrapper),
16952 AlterForeignTable(AlterForeignTable),
16953 AlterFunction(AlterFunction),
16954 AlterGroup(AlterGroup),
16955 AlterIndex(AlterIndex),
16956 AlterLanguage(AlterLanguage),
16957 AlterLargeObject(AlterLargeObject),
16958 AlterMaterializedView(AlterMaterializedView),
16959 AlterOperator(AlterOperator),
16960 AlterOperatorClass(AlterOperatorClass),
16961 AlterOperatorFamily(AlterOperatorFamily),
16962 AlterPolicy(AlterPolicy),
16963 AlterProcedure(AlterProcedure),
16964 AlterPublication(AlterPublication),
16965 AlterRole(AlterRole),
16966 AlterRoutine(AlterRoutine),
16967 AlterRule(AlterRule),
16968 AlterSchema(AlterSchema),
16969 AlterSequence(AlterSequence),
16970 AlterServer(AlterServer),
16971 AlterStatistics(AlterStatistics),
16972 AlterSubscription(AlterSubscription),
16973 AlterSystem(AlterSystem),
16974 AlterTable(AlterTable),
16975 AlterTablespace(AlterTablespace),
16976 AlterTextSearchConfiguration(AlterTextSearchConfiguration),
16977 AlterTextSearchDictionary(AlterTextSearchDictionary),
16978 AlterTextSearchParser(AlterTextSearchParser),
16979 AlterTextSearchTemplate(AlterTextSearchTemplate),
16980 AlterTrigger(AlterTrigger),
16981 AlterType(AlterType),
16982 AlterUser(AlterUser),
16983 AlterUserMapping(AlterUserMapping),
16984 AlterView(AlterView),
16985 Analyze(Analyze),
16986 Begin(Begin),
16987 Call(Call),
16988 Checkpoint(Checkpoint),
16989 Close(Close),
16990 Cluster(Cluster),
16991 CommentOn(CommentOn),
16992 Commit(Commit),
16993 Copy(Copy),
16994 CreateAccessMethod(CreateAccessMethod),
16995 CreateAggregate(CreateAggregate),
16996 CreateCast(CreateCast),
16997 CreateCollation(CreateCollation),
16998 CreateConversion(CreateConversion),
16999 CreateDatabase(CreateDatabase),
17000 CreateDomain(CreateDomain),
17001 CreateEventTrigger(CreateEventTrigger),
17002 CreateExtension(CreateExtension),
17003 CreateForeignDataWrapper(CreateForeignDataWrapper),
17004 CreateForeignTable(CreateForeignTable),
17005 CreateFunction(CreateFunction),
17006 CreateGroup(CreateGroup),
17007 CreateIndex(CreateIndex),
17008 CreateLanguage(CreateLanguage),
17009 CreateMaterializedView(CreateMaterializedView),
17010 CreateOperator(CreateOperator),
17011 CreateOperatorClass(CreateOperatorClass),
17012 CreateOperatorFamily(CreateOperatorFamily),
17013 CreatePolicy(CreatePolicy),
17014 CreateProcedure(CreateProcedure),
17015 CreatePublication(CreatePublication),
17016 CreateRole(CreateRole),
17017 CreateRule(CreateRule),
17018 CreateSchema(CreateSchema),
17019 CreateSequence(CreateSequence),
17020 CreateServer(CreateServer),
17021 CreateStatistics(CreateStatistics),
17022 CreateSubscription(CreateSubscription),
17023 CreateTable(CreateTable),
17024 CreateTableAs(CreateTableAs),
17025 CreateTablespace(CreateTablespace),
17026 CreateTextSearchConfiguration(CreateTextSearchConfiguration),
17027 CreateTextSearchDictionary(CreateTextSearchDictionary),
17028 CreateTextSearchParser(CreateTextSearchParser),
17029 CreateTextSearchTemplate(CreateTextSearchTemplate),
17030 CreateTransform(CreateTransform),
17031 CreateTrigger(CreateTrigger),
17032 CreateType(CreateType),
17033 CreateUser(CreateUser),
17034 CreateUserMapping(CreateUserMapping),
17035 CreateView(CreateView),
17036 Deallocate(Deallocate),
17037 Declare(Declare),
17038 Delete(Delete),
17039 Discard(Discard),
17040 Do(Do),
17041 DropAccessMethod(DropAccessMethod),
17042 DropAggregate(DropAggregate),
17043 DropCast(DropCast),
17044 DropCollation(DropCollation),
17045 DropConversion(DropConversion),
17046 DropDatabase(DropDatabase),
17047 DropDomain(DropDomain),
17048 DropEventTrigger(DropEventTrigger),
17049 DropExtension(DropExtension),
17050 DropForeignDataWrapper(DropForeignDataWrapper),
17051 DropForeignTable(DropForeignTable),
17052 DropFunction(DropFunction),
17053 DropGroup(DropGroup),
17054 DropIndex(DropIndex),
17055 DropLanguage(DropLanguage),
17056 DropMaterializedView(DropMaterializedView),
17057 DropOperator(DropOperator),
17058 DropOperatorClass(DropOperatorClass),
17059 DropOperatorFamily(DropOperatorFamily),
17060 DropOwned(DropOwned),
17061 DropPolicy(DropPolicy),
17062 DropProcedure(DropProcedure),
17063 DropPublication(DropPublication),
17064 DropRole(DropRole),
17065 DropRoutine(DropRoutine),
17066 DropRule(DropRule),
17067 DropSchema(DropSchema),
17068 DropSequence(DropSequence),
17069 DropServer(DropServer),
17070 DropStatistics(DropStatistics),
17071 DropSubscription(DropSubscription),
17072 DropTable(DropTable),
17073 DropTablespace(DropTablespace),
17074 DropTextSearchConfig(DropTextSearchConfig),
17075 DropTextSearchDict(DropTextSearchDict),
17076 DropTextSearchParser(DropTextSearchParser),
17077 DropTextSearchTemplate(DropTextSearchTemplate),
17078 DropTransform(DropTransform),
17079 DropTrigger(DropTrigger),
17080 DropType(DropType),
17081 DropUser(DropUser),
17082 DropUserMapping(DropUserMapping),
17083 DropView(DropView),
17084 Execute(Execute),
17085 Explain(Explain),
17086 Fetch(Fetch),
17087 Grant(Grant),
17088 ImportForeignSchema(ImportForeignSchema),
17089 Insert(Insert),
17090 Listen(Listen),
17091 Load(Load),
17092 Lock(Lock),
17093 Merge(Merge),
17094 Move(Move),
17095 Notify(Notify),
17096 ParenSelect(ParenSelect),
17097 Prepare(Prepare),
17098 PrepareTransaction(PrepareTransaction),
17099 Reassign(Reassign),
17100 Refresh(Refresh),
17101 Reindex(Reindex),
17102 ReleaseSavepoint(ReleaseSavepoint),
17103 Reset(Reset),
17104 ResetSessionAuth(ResetSessionAuth),
17105 Revoke(Revoke),
17106 Rollback(Rollback),
17107 Savepoint(Savepoint),
17108 SecurityLabel(SecurityLabel),
17109 Select(Select),
17110 SelectInto(SelectInto),
17111 Set(Set),
17112 SetConstraints(SetConstraints),
17113 SetRole(SetRole),
17114 SetSessionAuth(SetSessionAuth),
17115 SetTransaction(SetTransaction),
17116 Show(Show),
17117 Table(Table),
17118 Truncate(Truncate),
17119 Unlisten(Unlisten),
17120 Update(Update),
17121 Vacuum(Vacuum),
17122 Values(Values),
17123}
17124
17125#[derive(Debug, Clone, PartialEq, Eq, Hash)]
17126pub enum TableArg {
17127 Column(Column),
17128 LikeClause(LikeClause),
17129 TableConstraint(TableConstraint),
17130}
17131
17132#[derive(Debug, Clone, PartialEq, Eq, Hash)]
17133pub enum TableConstraint {
17134 CheckConstraint(CheckConstraint),
17135 ExcludeConstraint(ExcludeConstraint),
17136 ForeignKeyConstraint(ForeignKeyConstraint),
17137 PrimaryKeyConstraint(PrimaryKeyConstraint),
17138 UniqueConstraint(UniqueConstraint),
17139}
17140
17141#[derive(Debug, Clone, PartialEq, Eq, Hash)]
17142pub enum Timezone {
17143 WithTimezone(WithTimezone),
17144 WithoutTimezone(WithoutTimezone),
17145}
17146
17147#[derive(Debug, Clone, PartialEq, Eq, Hash)]
17148pub enum TransactionMode {
17149 Deferrable(Deferrable),
17150 NotDeferrable(NotDeferrable),
17151 ReadCommitted(ReadCommitted),
17152 ReadOnly(ReadOnly),
17153 ReadUncommitted(ReadUncommitted),
17154 ReadWrite(ReadWrite),
17155 RepeatableRead(RepeatableRead),
17156 Serializable(Serializable),
17157}
17158
17159#[derive(Debug, Clone, PartialEq, Eq, Hash)]
17160pub enum Type {
17161 ArrayType(ArrayType),
17162 BitType(BitType),
17163 CharType(CharType),
17164 DoubleType(DoubleType),
17165 ExprType(ExprType),
17166 IntervalType(IntervalType),
17167 PathType(PathType),
17168 PercentType(PercentType),
17169 TimeType(TimeType),
17170}
17171
17172#[derive(Debug, Clone, PartialEq, Eq, Hash)]
17173pub enum WithQuery {
17174 CompoundSelect(CompoundSelect),
17175 Delete(Delete),
17176 Insert(Insert),
17177 Merge(Merge),
17178 ParenSelect(ParenSelect),
17179 Select(Select),
17180 Table(Table),
17181 Update(Update),
17182 Values(Values),
17183}
17184impl AstNode for AddColumn {
17185 #[inline]
17186 fn can_cast(kind: SyntaxKind) -> bool {
17187 kind == SyntaxKind::ADD_COLUMN
17188 }
17189 #[inline]
17190 fn cast(syntax: SyntaxNode) -> Option<Self> {
17191 if Self::can_cast(syntax.kind()) {
17192 Some(Self { syntax })
17193 } else {
17194 None
17195 }
17196 }
17197 #[inline]
17198 fn syntax(&self) -> &SyntaxNode {
17199 &self.syntax
17200 }
17201}
17202impl AstNode for AddConstraint {
17203 #[inline]
17204 fn can_cast(kind: SyntaxKind) -> bool {
17205 kind == SyntaxKind::ADD_CONSTRAINT
17206 }
17207 #[inline]
17208 fn cast(syntax: SyntaxNode) -> Option<Self> {
17209 if Self::can_cast(syntax.kind()) {
17210 Some(Self { syntax })
17211 } else {
17212 None
17213 }
17214 }
17215 #[inline]
17216 fn syntax(&self) -> &SyntaxNode {
17217 &self.syntax
17218 }
17219}
17220impl AstNode for AddGenerated {
17221 #[inline]
17222 fn can_cast(kind: SyntaxKind) -> bool {
17223 kind == SyntaxKind::ADD_GENERATED
17224 }
17225 #[inline]
17226 fn cast(syntax: SyntaxNode) -> Option<Self> {
17227 if Self::can_cast(syntax.kind()) {
17228 Some(Self { syntax })
17229 } else {
17230 None
17231 }
17232 }
17233 #[inline]
17234 fn syntax(&self) -> &SyntaxNode {
17235 &self.syntax
17236 }
17237}
17238impl AstNode for AddOpClassOptions {
17239 #[inline]
17240 fn can_cast(kind: SyntaxKind) -> bool {
17241 kind == SyntaxKind::ADD_OP_CLASS_OPTIONS
17242 }
17243 #[inline]
17244 fn cast(syntax: SyntaxNode) -> Option<Self> {
17245 if Self::can_cast(syntax.kind()) {
17246 Some(Self { syntax })
17247 } else {
17248 None
17249 }
17250 }
17251 #[inline]
17252 fn syntax(&self) -> &SyntaxNode {
17253 &self.syntax
17254 }
17255}
17256impl AstNode for Aggregate {
17257 #[inline]
17258 fn can_cast(kind: SyntaxKind) -> bool {
17259 kind == SyntaxKind::AGGREGATE
17260 }
17261 #[inline]
17262 fn cast(syntax: SyntaxNode) -> Option<Self> {
17263 if Self::can_cast(syntax.kind()) {
17264 Some(Self { syntax })
17265 } else {
17266 None
17267 }
17268 }
17269 #[inline]
17270 fn syntax(&self) -> &SyntaxNode {
17271 &self.syntax
17272 }
17273}
17274impl AstNode for Alias {
17275 #[inline]
17276 fn can_cast(kind: SyntaxKind) -> bool {
17277 kind == SyntaxKind::ALIAS
17278 }
17279 #[inline]
17280 fn cast(syntax: SyntaxNode) -> Option<Self> {
17281 if Self::can_cast(syntax.kind()) {
17282 Some(Self { syntax })
17283 } else {
17284 None
17285 }
17286 }
17287 #[inline]
17288 fn syntax(&self) -> &SyntaxNode {
17289 &self.syntax
17290 }
17291}
17292impl AstNode for AllFn {
17293 #[inline]
17294 fn can_cast(kind: SyntaxKind) -> bool {
17295 kind == SyntaxKind::ALL_FN
17296 }
17297 #[inline]
17298 fn cast(syntax: SyntaxNode) -> Option<Self> {
17299 if Self::can_cast(syntax.kind()) {
17300 Some(Self { syntax })
17301 } else {
17302 None
17303 }
17304 }
17305 #[inline]
17306 fn syntax(&self) -> &SyntaxNode {
17307 &self.syntax
17308 }
17309}
17310impl AstNode for AlterAggregate {
17311 #[inline]
17312 fn can_cast(kind: SyntaxKind) -> bool {
17313 kind == SyntaxKind::ALTER_AGGREGATE
17314 }
17315 #[inline]
17316 fn cast(syntax: SyntaxNode) -> Option<Self> {
17317 if Self::can_cast(syntax.kind()) {
17318 Some(Self { syntax })
17319 } else {
17320 None
17321 }
17322 }
17323 #[inline]
17324 fn syntax(&self) -> &SyntaxNode {
17325 &self.syntax
17326 }
17327}
17328impl AstNode for AlterCollation {
17329 #[inline]
17330 fn can_cast(kind: SyntaxKind) -> bool {
17331 kind == SyntaxKind::ALTER_COLLATION
17332 }
17333 #[inline]
17334 fn cast(syntax: SyntaxNode) -> Option<Self> {
17335 if Self::can_cast(syntax.kind()) {
17336 Some(Self { syntax })
17337 } else {
17338 None
17339 }
17340 }
17341 #[inline]
17342 fn syntax(&self) -> &SyntaxNode {
17343 &self.syntax
17344 }
17345}
17346impl AstNode for AlterColumn {
17347 #[inline]
17348 fn can_cast(kind: SyntaxKind) -> bool {
17349 kind == SyntaxKind::ALTER_COLUMN
17350 }
17351 #[inline]
17352 fn cast(syntax: SyntaxNode) -> Option<Self> {
17353 if Self::can_cast(syntax.kind()) {
17354 Some(Self { syntax })
17355 } else {
17356 None
17357 }
17358 }
17359 #[inline]
17360 fn syntax(&self) -> &SyntaxNode {
17361 &self.syntax
17362 }
17363}
17364impl AstNode for AlterConstraint {
17365 #[inline]
17366 fn can_cast(kind: SyntaxKind) -> bool {
17367 kind == SyntaxKind::ALTER_CONSTRAINT
17368 }
17369 #[inline]
17370 fn cast(syntax: SyntaxNode) -> Option<Self> {
17371 if Self::can_cast(syntax.kind()) {
17372 Some(Self { syntax })
17373 } else {
17374 None
17375 }
17376 }
17377 #[inline]
17378 fn syntax(&self) -> &SyntaxNode {
17379 &self.syntax
17380 }
17381}
17382impl AstNode for AlterConversion {
17383 #[inline]
17384 fn can_cast(kind: SyntaxKind) -> bool {
17385 kind == SyntaxKind::ALTER_CONVERSION
17386 }
17387 #[inline]
17388 fn cast(syntax: SyntaxNode) -> Option<Self> {
17389 if Self::can_cast(syntax.kind()) {
17390 Some(Self { syntax })
17391 } else {
17392 None
17393 }
17394 }
17395 #[inline]
17396 fn syntax(&self) -> &SyntaxNode {
17397 &self.syntax
17398 }
17399}
17400impl AstNode for AlterDatabase {
17401 #[inline]
17402 fn can_cast(kind: SyntaxKind) -> bool {
17403 kind == SyntaxKind::ALTER_DATABASE
17404 }
17405 #[inline]
17406 fn cast(syntax: SyntaxNode) -> Option<Self> {
17407 if Self::can_cast(syntax.kind()) {
17408 Some(Self { syntax })
17409 } else {
17410 None
17411 }
17412 }
17413 #[inline]
17414 fn syntax(&self) -> &SyntaxNode {
17415 &self.syntax
17416 }
17417}
17418impl AstNode for AlterDefaultPrivileges {
17419 #[inline]
17420 fn can_cast(kind: SyntaxKind) -> bool {
17421 kind == SyntaxKind::ALTER_DEFAULT_PRIVILEGES
17422 }
17423 #[inline]
17424 fn cast(syntax: SyntaxNode) -> Option<Self> {
17425 if Self::can_cast(syntax.kind()) {
17426 Some(Self { syntax })
17427 } else {
17428 None
17429 }
17430 }
17431 #[inline]
17432 fn syntax(&self) -> &SyntaxNode {
17433 &self.syntax
17434 }
17435}
17436impl AstNode for AlterDomain {
17437 #[inline]
17438 fn can_cast(kind: SyntaxKind) -> bool {
17439 kind == SyntaxKind::ALTER_DOMAIN
17440 }
17441 #[inline]
17442 fn cast(syntax: SyntaxNode) -> Option<Self> {
17443 if Self::can_cast(syntax.kind()) {
17444 Some(Self { syntax })
17445 } else {
17446 None
17447 }
17448 }
17449 #[inline]
17450 fn syntax(&self) -> &SyntaxNode {
17451 &self.syntax
17452 }
17453}
17454impl AstNode for AlterEventTrigger {
17455 #[inline]
17456 fn can_cast(kind: SyntaxKind) -> bool {
17457 kind == SyntaxKind::ALTER_EVENT_TRIGGER
17458 }
17459 #[inline]
17460 fn cast(syntax: SyntaxNode) -> Option<Self> {
17461 if Self::can_cast(syntax.kind()) {
17462 Some(Self { syntax })
17463 } else {
17464 None
17465 }
17466 }
17467 #[inline]
17468 fn syntax(&self) -> &SyntaxNode {
17469 &self.syntax
17470 }
17471}
17472impl AstNode for AlterExtension {
17473 #[inline]
17474 fn can_cast(kind: SyntaxKind) -> bool {
17475 kind == SyntaxKind::ALTER_EXTENSION
17476 }
17477 #[inline]
17478 fn cast(syntax: SyntaxNode) -> Option<Self> {
17479 if Self::can_cast(syntax.kind()) {
17480 Some(Self { syntax })
17481 } else {
17482 None
17483 }
17484 }
17485 #[inline]
17486 fn syntax(&self) -> &SyntaxNode {
17487 &self.syntax
17488 }
17489}
17490impl AstNode for AlterForeignDataWrapper {
17491 #[inline]
17492 fn can_cast(kind: SyntaxKind) -> bool {
17493 kind == SyntaxKind::ALTER_FOREIGN_DATA_WRAPPER
17494 }
17495 #[inline]
17496 fn cast(syntax: SyntaxNode) -> Option<Self> {
17497 if Self::can_cast(syntax.kind()) {
17498 Some(Self { syntax })
17499 } else {
17500 None
17501 }
17502 }
17503 #[inline]
17504 fn syntax(&self) -> &SyntaxNode {
17505 &self.syntax
17506 }
17507}
17508impl AstNode for AlterForeignTable {
17509 #[inline]
17510 fn can_cast(kind: SyntaxKind) -> bool {
17511 kind == SyntaxKind::ALTER_FOREIGN_TABLE
17512 }
17513 #[inline]
17514 fn cast(syntax: SyntaxNode) -> Option<Self> {
17515 if Self::can_cast(syntax.kind()) {
17516 Some(Self { syntax })
17517 } else {
17518 None
17519 }
17520 }
17521 #[inline]
17522 fn syntax(&self) -> &SyntaxNode {
17523 &self.syntax
17524 }
17525}
17526impl AstNode for AlterFunction {
17527 #[inline]
17528 fn can_cast(kind: SyntaxKind) -> bool {
17529 kind == SyntaxKind::ALTER_FUNCTION
17530 }
17531 #[inline]
17532 fn cast(syntax: SyntaxNode) -> Option<Self> {
17533 if Self::can_cast(syntax.kind()) {
17534 Some(Self { syntax })
17535 } else {
17536 None
17537 }
17538 }
17539 #[inline]
17540 fn syntax(&self) -> &SyntaxNode {
17541 &self.syntax
17542 }
17543}
17544impl AstNode for AlterGroup {
17545 #[inline]
17546 fn can_cast(kind: SyntaxKind) -> bool {
17547 kind == SyntaxKind::ALTER_GROUP
17548 }
17549 #[inline]
17550 fn cast(syntax: SyntaxNode) -> Option<Self> {
17551 if Self::can_cast(syntax.kind()) {
17552 Some(Self { syntax })
17553 } else {
17554 None
17555 }
17556 }
17557 #[inline]
17558 fn syntax(&self) -> &SyntaxNode {
17559 &self.syntax
17560 }
17561}
17562impl AstNode for AlterIndex {
17563 #[inline]
17564 fn can_cast(kind: SyntaxKind) -> bool {
17565 kind == SyntaxKind::ALTER_INDEX
17566 }
17567 #[inline]
17568 fn cast(syntax: SyntaxNode) -> Option<Self> {
17569 if Self::can_cast(syntax.kind()) {
17570 Some(Self { syntax })
17571 } else {
17572 None
17573 }
17574 }
17575 #[inline]
17576 fn syntax(&self) -> &SyntaxNode {
17577 &self.syntax
17578 }
17579}
17580impl AstNode for AlterLanguage {
17581 #[inline]
17582 fn can_cast(kind: SyntaxKind) -> bool {
17583 kind == SyntaxKind::ALTER_LANGUAGE
17584 }
17585 #[inline]
17586 fn cast(syntax: SyntaxNode) -> Option<Self> {
17587 if Self::can_cast(syntax.kind()) {
17588 Some(Self { syntax })
17589 } else {
17590 None
17591 }
17592 }
17593 #[inline]
17594 fn syntax(&self) -> &SyntaxNode {
17595 &self.syntax
17596 }
17597}
17598impl AstNode for AlterLargeObject {
17599 #[inline]
17600 fn can_cast(kind: SyntaxKind) -> bool {
17601 kind == SyntaxKind::ALTER_LARGE_OBJECT
17602 }
17603 #[inline]
17604 fn cast(syntax: SyntaxNode) -> Option<Self> {
17605 if Self::can_cast(syntax.kind()) {
17606 Some(Self { syntax })
17607 } else {
17608 None
17609 }
17610 }
17611 #[inline]
17612 fn syntax(&self) -> &SyntaxNode {
17613 &self.syntax
17614 }
17615}
17616impl AstNode for AlterMaterializedView {
17617 #[inline]
17618 fn can_cast(kind: SyntaxKind) -> bool {
17619 kind == SyntaxKind::ALTER_MATERIALIZED_VIEW
17620 }
17621 #[inline]
17622 fn cast(syntax: SyntaxNode) -> Option<Self> {
17623 if Self::can_cast(syntax.kind()) {
17624 Some(Self { syntax })
17625 } else {
17626 None
17627 }
17628 }
17629 #[inline]
17630 fn syntax(&self) -> &SyntaxNode {
17631 &self.syntax
17632 }
17633}
17634impl AstNode for AlterOperator {
17635 #[inline]
17636 fn can_cast(kind: SyntaxKind) -> bool {
17637 kind == SyntaxKind::ALTER_OPERATOR
17638 }
17639 #[inline]
17640 fn cast(syntax: SyntaxNode) -> Option<Self> {
17641 if Self::can_cast(syntax.kind()) {
17642 Some(Self { syntax })
17643 } else {
17644 None
17645 }
17646 }
17647 #[inline]
17648 fn syntax(&self) -> &SyntaxNode {
17649 &self.syntax
17650 }
17651}
17652impl AstNode for AlterOperatorClass {
17653 #[inline]
17654 fn can_cast(kind: SyntaxKind) -> bool {
17655 kind == SyntaxKind::ALTER_OPERATOR_CLASS
17656 }
17657 #[inline]
17658 fn cast(syntax: SyntaxNode) -> Option<Self> {
17659 if Self::can_cast(syntax.kind()) {
17660 Some(Self { syntax })
17661 } else {
17662 None
17663 }
17664 }
17665 #[inline]
17666 fn syntax(&self) -> &SyntaxNode {
17667 &self.syntax
17668 }
17669}
17670impl AstNode for AlterOperatorFamily {
17671 #[inline]
17672 fn can_cast(kind: SyntaxKind) -> bool {
17673 kind == SyntaxKind::ALTER_OPERATOR_FAMILY
17674 }
17675 #[inline]
17676 fn cast(syntax: SyntaxNode) -> Option<Self> {
17677 if Self::can_cast(syntax.kind()) {
17678 Some(Self { syntax })
17679 } else {
17680 None
17681 }
17682 }
17683 #[inline]
17684 fn syntax(&self) -> &SyntaxNode {
17685 &self.syntax
17686 }
17687}
17688impl AstNode for AlterOption {
17689 #[inline]
17690 fn can_cast(kind: SyntaxKind) -> bool {
17691 kind == SyntaxKind::ALTER_OPTION
17692 }
17693 #[inline]
17694 fn cast(syntax: SyntaxNode) -> Option<Self> {
17695 if Self::can_cast(syntax.kind()) {
17696 Some(Self { syntax })
17697 } else {
17698 None
17699 }
17700 }
17701 #[inline]
17702 fn syntax(&self) -> &SyntaxNode {
17703 &self.syntax
17704 }
17705}
17706impl AstNode for AlterOptionList {
17707 #[inline]
17708 fn can_cast(kind: SyntaxKind) -> bool {
17709 kind == SyntaxKind::ALTER_OPTION_LIST
17710 }
17711 #[inline]
17712 fn cast(syntax: SyntaxNode) -> Option<Self> {
17713 if Self::can_cast(syntax.kind()) {
17714 Some(Self { syntax })
17715 } else {
17716 None
17717 }
17718 }
17719 #[inline]
17720 fn syntax(&self) -> &SyntaxNode {
17721 &self.syntax
17722 }
17723}
17724impl AstNode for AlterPolicy {
17725 #[inline]
17726 fn can_cast(kind: SyntaxKind) -> bool {
17727 kind == SyntaxKind::ALTER_POLICY
17728 }
17729 #[inline]
17730 fn cast(syntax: SyntaxNode) -> Option<Self> {
17731 if Self::can_cast(syntax.kind()) {
17732 Some(Self { syntax })
17733 } else {
17734 None
17735 }
17736 }
17737 #[inline]
17738 fn syntax(&self) -> &SyntaxNode {
17739 &self.syntax
17740 }
17741}
17742impl AstNode for AlterProcedure {
17743 #[inline]
17744 fn can_cast(kind: SyntaxKind) -> bool {
17745 kind == SyntaxKind::ALTER_PROCEDURE
17746 }
17747 #[inline]
17748 fn cast(syntax: SyntaxNode) -> Option<Self> {
17749 if Self::can_cast(syntax.kind()) {
17750 Some(Self { syntax })
17751 } else {
17752 None
17753 }
17754 }
17755 #[inline]
17756 fn syntax(&self) -> &SyntaxNode {
17757 &self.syntax
17758 }
17759}
17760impl AstNode for AlterPublication {
17761 #[inline]
17762 fn can_cast(kind: SyntaxKind) -> bool {
17763 kind == SyntaxKind::ALTER_PUBLICATION
17764 }
17765 #[inline]
17766 fn cast(syntax: SyntaxNode) -> Option<Self> {
17767 if Self::can_cast(syntax.kind()) {
17768 Some(Self { syntax })
17769 } else {
17770 None
17771 }
17772 }
17773 #[inline]
17774 fn syntax(&self) -> &SyntaxNode {
17775 &self.syntax
17776 }
17777}
17778impl AstNode for AlterRole {
17779 #[inline]
17780 fn can_cast(kind: SyntaxKind) -> bool {
17781 kind == SyntaxKind::ALTER_ROLE
17782 }
17783 #[inline]
17784 fn cast(syntax: SyntaxNode) -> Option<Self> {
17785 if Self::can_cast(syntax.kind()) {
17786 Some(Self { syntax })
17787 } else {
17788 None
17789 }
17790 }
17791 #[inline]
17792 fn syntax(&self) -> &SyntaxNode {
17793 &self.syntax
17794 }
17795}
17796impl AstNode for AlterRoutine {
17797 #[inline]
17798 fn can_cast(kind: SyntaxKind) -> bool {
17799 kind == SyntaxKind::ALTER_ROUTINE
17800 }
17801 #[inline]
17802 fn cast(syntax: SyntaxNode) -> Option<Self> {
17803 if Self::can_cast(syntax.kind()) {
17804 Some(Self { syntax })
17805 } else {
17806 None
17807 }
17808 }
17809 #[inline]
17810 fn syntax(&self) -> &SyntaxNode {
17811 &self.syntax
17812 }
17813}
17814impl AstNode for AlterRule {
17815 #[inline]
17816 fn can_cast(kind: SyntaxKind) -> bool {
17817 kind == SyntaxKind::ALTER_RULE
17818 }
17819 #[inline]
17820 fn cast(syntax: SyntaxNode) -> Option<Self> {
17821 if Self::can_cast(syntax.kind()) {
17822 Some(Self { syntax })
17823 } else {
17824 None
17825 }
17826 }
17827 #[inline]
17828 fn syntax(&self) -> &SyntaxNode {
17829 &self.syntax
17830 }
17831}
17832impl AstNode for AlterSchema {
17833 #[inline]
17834 fn can_cast(kind: SyntaxKind) -> bool {
17835 kind == SyntaxKind::ALTER_SCHEMA
17836 }
17837 #[inline]
17838 fn cast(syntax: SyntaxNode) -> Option<Self> {
17839 if Self::can_cast(syntax.kind()) {
17840 Some(Self { syntax })
17841 } else {
17842 None
17843 }
17844 }
17845 #[inline]
17846 fn syntax(&self) -> &SyntaxNode {
17847 &self.syntax
17848 }
17849}
17850impl AstNode for AlterSequence {
17851 #[inline]
17852 fn can_cast(kind: SyntaxKind) -> bool {
17853 kind == SyntaxKind::ALTER_SEQUENCE
17854 }
17855 #[inline]
17856 fn cast(syntax: SyntaxNode) -> Option<Self> {
17857 if Self::can_cast(syntax.kind()) {
17858 Some(Self { syntax })
17859 } else {
17860 None
17861 }
17862 }
17863 #[inline]
17864 fn syntax(&self) -> &SyntaxNode {
17865 &self.syntax
17866 }
17867}
17868impl AstNode for AlterServer {
17869 #[inline]
17870 fn can_cast(kind: SyntaxKind) -> bool {
17871 kind == SyntaxKind::ALTER_SERVER
17872 }
17873 #[inline]
17874 fn cast(syntax: SyntaxNode) -> Option<Self> {
17875 if Self::can_cast(syntax.kind()) {
17876 Some(Self { syntax })
17877 } else {
17878 None
17879 }
17880 }
17881 #[inline]
17882 fn syntax(&self) -> &SyntaxNode {
17883 &self.syntax
17884 }
17885}
17886impl AstNode for AlterSetStatistics {
17887 #[inline]
17888 fn can_cast(kind: SyntaxKind) -> bool {
17889 kind == SyntaxKind::ALTER_SET_STATISTICS
17890 }
17891 #[inline]
17892 fn cast(syntax: SyntaxNode) -> Option<Self> {
17893 if Self::can_cast(syntax.kind()) {
17894 Some(Self { syntax })
17895 } else {
17896 None
17897 }
17898 }
17899 #[inline]
17900 fn syntax(&self) -> &SyntaxNode {
17901 &self.syntax
17902 }
17903}
17904impl AstNode for AlterStatistics {
17905 #[inline]
17906 fn can_cast(kind: SyntaxKind) -> bool {
17907 kind == SyntaxKind::ALTER_STATISTICS
17908 }
17909 #[inline]
17910 fn cast(syntax: SyntaxNode) -> Option<Self> {
17911 if Self::can_cast(syntax.kind()) {
17912 Some(Self { syntax })
17913 } else {
17914 None
17915 }
17916 }
17917 #[inline]
17918 fn syntax(&self) -> &SyntaxNode {
17919 &self.syntax
17920 }
17921}
17922impl AstNode for AlterSubscription {
17923 #[inline]
17924 fn can_cast(kind: SyntaxKind) -> bool {
17925 kind == SyntaxKind::ALTER_SUBSCRIPTION
17926 }
17927 #[inline]
17928 fn cast(syntax: SyntaxNode) -> Option<Self> {
17929 if Self::can_cast(syntax.kind()) {
17930 Some(Self { syntax })
17931 } else {
17932 None
17933 }
17934 }
17935 #[inline]
17936 fn syntax(&self) -> &SyntaxNode {
17937 &self.syntax
17938 }
17939}
17940impl AstNode for AlterSystem {
17941 #[inline]
17942 fn can_cast(kind: SyntaxKind) -> bool {
17943 kind == SyntaxKind::ALTER_SYSTEM
17944 }
17945 #[inline]
17946 fn cast(syntax: SyntaxNode) -> Option<Self> {
17947 if Self::can_cast(syntax.kind()) {
17948 Some(Self { syntax })
17949 } else {
17950 None
17951 }
17952 }
17953 #[inline]
17954 fn syntax(&self) -> &SyntaxNode {
17955 &self.syntax
17956 }
17957}
17958impl AstNode for AlterTable {
17959 #[inline]
17960 fn can_cast(kind: SyntaxKind) -> bool {
17961 kind == SyntaxKind::ALTER_TABLE
17962 }
17963 #[inline]
17964 fn cast(syntax: SyntaxNode) -> Option<Self> {
17965 if Self::can_cast(syntax.kind()) {
17966 Some(Self { syntax })
17967 } else {
17968 None
17969 }
17970 }
17971 #[inline]
17972 fn syntax(&self) -> &SyntaxNode {
17973 &self.syntax
17974 }
17975}
17976impl AstNode for AlterTablespace {
17977 #[inline]
17978 fn can_cast(kind: SyntaxKind) -> bool {
17979 kind == SyntaxKind::ALTER_TABLESPACE
17980 }
17981 #[inline]
17982 fn cast(syntax: SyntaxNode) -> Option<Self> {
17983 if Self::can_cast(syntax.kind()) {
17984 Some(Self { syntax })
17985 } else {
17986 None
17987 }
17988 }
17989 #[inline]
17990 fn syntax(&self) -> &SyntaxNode {
17991 &self.syntax
17992 }
17993}
17994impl AstNode for AlterTextSearchConfiguration {
17995 #[inline]
17996 fn can_cast(kind: SyntaxKind) -> bool {
17997 kind == SyntaxKind::ALTER_TEXT_SEARCH_CONFIGURATION
17998 }
17999 #[inline]
18000 fn cast(syntax: SyntaxNode) -> Option<Self> {
18001 if Self::can_cast(syntax.kind()) {
18002 Some(Self { syntax })
18003 } else {
18004 None
18005 }
18006 }
18007 #[inline]
18008 fn syntax(&self) -> &SyntaxNode {
18009 &self.syntax
18010 }
18011}
18012impl AstNode for AlterTextSearchDictionary {
18013 #[inline]
18014 fn can_cast(kind: SyntaxKind) -> bool {
18015 kind == SyntaxKind::ALTER_TEXT_SEARCH_DICTIONARY
18016 }
18017 #[inline]
18018 fn cast(syntax: SyntaxNode) -> Option<Self> {
18019 if Self::can_cast(syntax.kind()) {
18020 Some(Self { syntax })
18021 } else {
18022 None
18023 }
18024 }
18025 #[inline]
18026 fn syntax(&self) -> &SyntaxNode {
18027 &self.syntax
18028 }
18029}
18030impl AstNode for AlterTextSearchParser {
18031 #[inline]
18032 fn can_cast(kind: SyntaxKind) -> bool {
18033 kind == SyntaxKind::ALTER_TEXT_SEARCH_PARSER
18034 }
18035 #[inline]
18036 fn cast(syntax: SyntaxNode) -> Option<Self> {
18037 if Self::can_cast(syntax.kind()) {
18038 Some(Self { syntax })
18039 } else {
18040 None
18041 }
18042 }
18043 #[inline]
18044 fn syntax(&self) -> &SyntaxNode {
18045 &self.syntax
18046 }
18047}
18048impl AstNode for AlterTextSearchTemplate {
18049 #[inline]
18050 fn can_cast(kind: SyntaxKind) -> bool {
18051 kind == SyntaxKind::ALTER_TEXT_SEARCH_TEMPLATE
18052 }
18053 #[inline]
18054 fn cast(syntax: SyntaxNode) -> Option<Self> {
18055 if Self::can_cast(syntax.kind()) {
18056 Some(Self { syntax })
18057 } else {
18058 None
18059 }
18060 }
18061 #[inline]
18062 fn syntax(&self) -> &SyntaxNode {
18063 &self.syntax
18064 }
18065}
18066impl AstNode for AlterTrigger {
18067 #[inline]
18068 fn can_cast(kind: SyntaxKind) -> bool {
18069 kind == SyntaxKind::ALTER_TRIGGER
18070 }
18071 #[inline]
18072 fn cast(syntax: SyntaxNode) -> Option<Self> {
18073 if Self::can_cast(syntax.kind()) {
18074 Some(Self { syntax })
18075 } else {
18076 None
18077 }
18078 }
18079 #[inline]
18080 fn syntax(&self) -> &SyntaxNode {
18081 &self.syntax
18082 }
18083}
18084impl AstNode for AlterType {
18085 #[inline]
18086 fn can_cast(kind: SyntaxKind) -> bool {
18087 kind == SyntaxKind::ALTER_TYPE
18088 }
18089 #[inline]
18090 fn cast(syntax: SyntaxNode) -> Option<Self> {
18091 if Self::can_cast(syntax.kind()) {
18092 Some(Self { syntax })
18093 } else {
18094 None
18095 }
18096 }
18097 #[inline]
18098 fn syntax(&self) -> &SyntaxNode {
18099 &self.syntax
18100 }
18101}
18102impl AstNode for AlterUser {
18103 #[inline]
18104 fn can_cast(kind: SyntaxKind) -> bool {
18105 kind == SyntaxKind::ALTER_USER
18106 }
18107 #[inline]
18108 fn cast(syntax: SyntaxNode) -> Option<Self> {
18109 if Self::can_cast(syntax.kind()) {
18110 Some(Self { syntax })
18111 } else {
18112 None
18113 }
18114 }
18115 #[inline]
18116 fn syntax(&self) -> &SyntaxNode {
18117 &self.syntax
18118 }
18119}
18120impl AstNode for AlterUserMapping {
18121 #[inline]
18122 fn can_cast(kind: SyntaxKind) -> bool {
18123 kind == SyntaxKind::ALTER_USER_MAPPING
18124 }
18125 #[inline]
18126 fn cast(syntax: SyntaxNode) -> Option<Self> {
18127 if Self::can_cast(syntax.kind()) {
18128 Some(Self { syntax })
18129 } else {
18130 None
18131 }
18132 }
18133 #[inline]
18134 fn syntax(&self) -> &SyntaxNode {
18135 &self.syntax
18136 }
18137}
18138impl AstNode for AlterView {
18139 #[inline]
18140 fn can_cast(kind: SyntaxKind) -> bool {
18141 kind == SyntaxKind::ALTER_VIEW
18142 }
18143 #[inline]
18144 fn cast(syntax: SyntaxNode) -> Option<Self> {
18145 if Self::can_cast(syntax.kind()) {
18146 Some(Self { syntax })
18147 } else {
18148 None
18149 }
18150 }
18151 #[inline]
18152 fn syntax(&self) -> &SyntaxNode {
18153 &self.syntax
18154 }
18155}
18156impl AstNode for Analyze {
18157 #[inline]
18158 fn can_cast(kind: SyntaxKind) -> bool {
18159 kind == SyntaxKind::ANALYZE
18160 }
18161 #[inline]
18162 fn cast(syntax: SyntaxNode) -> Option<Self> {
18163 if Self::can_cast(syntax.kind()) {
18164 Some(Self { syntax })
18165 } else {
18166 None
18167 }
18168 }
18169 #[inline]
18170 fn syntax(&self) -> &SyntaxNode {
18171 &self.syntax
18172 }
18173}
18174impl AstNode for AnyFn {
18175 #[inline]
18176 fn can_cast(kind: SyntaxKind) -> bool {
18177 kind == SyntaxKind::ANY_FN
18178 }
18179 #[inline]
18180 fn cast(syntax: SyntaxNode) -> Option<Self> {
18181 if Self::can_cast(syntax.kind()) {
18182 Some(Self { syntax })
18183 } else {
18184 None
18185 }
18186 }
18187 #[inline]
18188 fn syntax(&self) -> &SyntaxNode {
18189 &self.syntax
18190 }
18191}
18192impl AstNode for Arg {
18193 #[inline]
18194 fn can_cast(kind: SyntaxKind) -> bool {
18195 kind == SyntaxKind::ARG
18196 }
18197 #[inline]
18198 fn cast(syntax: SyntaxNode) -> Option<Self> {
18199 if Self::can_cast(syntax.kind()) {
18200 Some(Self { syntax })
18201 } else {
18202 None
18203 }
18204 }
18205 #[inline]
18206 fn syntax(&self) -> &SyntaxNode {
18207 &self.syntax
18208 }
18209}
18210impl AstNode for ArgList {
18211 #[inline]
18212 fn can_cast(kind: SyntaxKind) -> bool {
18213 kind == SyntaxKind::ARG_LIST
18214 }
18215 #[inline]
18216 fn cast(syntax: SyntaxNode) -> Option<Self> {
18217 if Self::can_cast(syntax.kind()) {
18218 Some(Self { syntax })
18219 } else {
18220 None
18221 }
18222 }
18223 #[inline]
18224 fn syntax(&self) -> &SyntaxNode {
18225 &self.syntax
18226 }
18227}
18228impl AstNode for ArrayExpr {
18229 #[inline]
18230 fn can_cast(kind: SyntaxKind) -> bool {
18231 kind == SyntaxKind::ARRAY_EXPR
18232 }
18233 #[inline]
18234 fn cast(syntax: SyntaxNode) -> Option<Self> {
18235 if Self::can_cast(syntax.kind()) {
18236 Some(Self { syntax })
18237 } else {
18238 None
18239 }
18240 }
18241 #[inline]
18242 fn syntax(&self) -> &SyntaxNode {
18243 &self.syntax
18244 }
18245}
18246impl AstNode for ArrayType {
18247 #[inline]
18248 fn can_cast(kind: SyntaxKind) -> bool {
18249 kind == SyntaxKind::ARRAY_TYPE
18250 }
18251 #[inline]
18252 fn cast(syntax: SyntaxNode) -> Option<Self> {
18253 if Self::can_cast(syntax.kind()) {
18254 Some(Self { syntax })
18255 } else {
18256 None
18257 }
18258 }
18259 #[inline]
18260 fn syntax(&self) -> &SyntaxNode {
18261 &self.syntax
18262 }
18263}
18264impl AstNode for AsFuncOption {
18265 #[inline]
18266 fn can_cast(kind: SyntaxKind) -> bool {
18267 kind == SyntaxKind::AS_FUNC_OPTION
18268 }
18269 #[inline]
18270 fn cast(syntax: SyntaxNode) -> Option<Self> {
18271 if Self::can_cast(syntax.kind()) {
18272 Some(Self { syntax })
18273 } else {
18274 None
18275 }
18276 }
18277 #[inline]
18278 fn syntax(&self) -> &SyntaxNode {
18279 &self.syntax
18280 }
18281}
18282impl AstNode for AsName {
18283 #[inline]
18284 fn can_cast(kind: SyntaxKind) -> bool {
18285 kind == SyntaxKind::AS_NAME
18286 }
18287 #[inline]
18288 fn cast(syntax: SyntaxNode) -> Option<Self> {
18289 if Self::can_cast(syntax.kind()) {
18290 Some(Self { syntax })
18291 } else {
18292 None
18293 }
18294 }
18295 #[inline]
18296 fn syntax(&self) -> &SyntaxNode {
18297 &self.syntax
18298 }
18299}
18300impl AstNode for AsPolicyType {
18301 #[inline]
18302 fn can_cast(kind: SyntaxKind) -> bool {
18303 kind == SyntaxKind::AS_POLICY_TYPE
18304 }
18305 #[inline]
18306 fn cast(syntax: SyntaxNode) -> Option<Self> {
18307 if Self::can_cast(syntax.kind()) {
18308 Some(Self { syntax })
18309 } else {
18310 None
18311 }
18312 }
18313 #[inline]
18314 fn syntax(&self) -> &SyntaxNode {
18315 &self.syntax
18316 }
18317}
18318impl AstNode for AtTimeZone {
18319 #[inline]
18320 fn can_cast(kind: SyntaxKind) -> bool {
18321 kind == SyntaxKind::AT_TIME_ZONE
18322 }
18323 #[inline]
18324 fn cast(syntax: SyntaxNode) -> Option<Self> {
18325 if Self::can_cast(syntax.kind()) {
18326 Some(Self { syntax })
18327 } else {
18328 None
18329 }
18330 }
18331 #[inline]
18332 fn syntax(&self) -> &SyntaxNode {
18333 &self.syntax
18334 }
18335}
18336impl AstNode for AttachPartition {
18337 #[inline]
18338 fn can_cast(kind: SyntaxKind) -> bool {
18339 kind == SyntaxKind::ATTACH_PARTITION
18340 }
18341 #[inline]
18342 fn cast(syntax: SyntaxNode) -> Option<Self> {
18343 if Self::can_cast(syntax.kind()) {
18344 Some(Self { syntax })
18345 } else {
18346 None
18347 }
18348 }
18349 #[inline]
18350 fn syntax(&self) -> &SyntaxNode {
18351 &self.syntax
18352 }
18353}
18354impl AstNode for AttributeList {
18355 #[inline]
18356 fn can_cast(kind: SyntaxKind) -> bool {
18357 kind == SyntaxKind::ATTRIBUTE_LIST
18358 }
18359 #[inline]
18360 fn cast(syntax: SyntaxNode) -> Option<Self> {
18361 if Self::can_cast(syntax.kind()) {
18362 Some(Self { syntax })
18363 } else {
18364 None
18365 }
18366 }
18367 #[inline]
18368 fn syntax(&self) -> &SyntaxNode {
18369 &self.syntax
18370 }
18371}
18372impl AstNode for AttributeOption {
18373 #[inline]
18374 fn can_cast(kind: SyntaxKind) -> bool {
18375 kind == SyntaxKind::ATTRIBUTE_OPTION
18376 }
18377 #[inline]
18378 fn cast(syntax: SyntaxNode) -> Option<Self> {
18379 if Self::can_cast(syntax.kind()) {
18380 Some(Self { syntax })
18381 } else {
18382 None
18383 }
18384 }
18385 #[inline]
18386 fn syntax(&self) -> &SyntaxNode {
18387 &self.syntax
18388 }
18389}
18390impl AstNode for AttributeValue {
18391 #[inline]
18392 fn can_cast(kind: SyntaxKind) -> bool {
18393 kind == SyntaxKind::ATTRIBUTE_VALUE
18394 }
18395 #[inline]
18396 fn cast(syntax: SyntaxNode) -> Option<Self> {
18397 if Self::can_cast(syntax.kind()) {
18398 Some(Self { syntax })
18399 } else {
18400 None
18401 }
18402 }
18403 #[inline]
18404 fn syntax(&self) -> &SyntaxNode {
18405 &self.syntax
18406 }
18407}
18408impl AstNode for Begin {
18409 #[inline]
18410 fn can_cast(kind: SyntaxKind) -> bool {
18411 kind == SyntaxKind::BEGIN
18412 }
18413 #[inline]
18414 fn cast(syntax: SyntaxNode) -> Option<Self> {
18415 if Self::can_cast(syntax.kind()) {
18416 Some(Self { syntax })
18417 } else {
18418 None
18419 }
18420 }
18421 #[inline]
18422 fn syntax(&self) -> &SyntaxNode {
18423 &self.syntax
18424 }
18425}
18426impl AstNode for BeginFuncOption {
18427 #[inline]
18428 fn can_cast(kind: SyntaxKind) -> bool {
18429 kind == SyntaxKind::BEGIN_FUNC_OPTION
18430 }
18431 #[inline]
18432 fn cast(syntax: SyntaxNode) -> Option<Self> {
18433 if Self::can_cast(syntax.kind()) {
18434 Some(Self { syntax })
18435 } else {
18436 None
18437 }
18438 }
18439 #[inline]
18440 fn syntax(&self) -> &SyntaxNode {
18441 &self.syntax
18442 }
18443}
18444impl AstNode for BeginFuncOptionList {
18445 #[inline]
18446 fn can_cast(kind: SyntaxKind) -> bool {
18447 kind == SyntaxKind::BEGIN_FUNC_OPTION_LIST
18448 }
18449 #[inline]
18450 fn cast(syntax: SyntaxNode) -> Option<Self> {
18451 if Self::can_cast(syntax.kind()) {
18452 Some(Self { syntax })
18453 } else {
18454 None
18455 }
18456 }
18457 #[inline]
18458 fn syntax(&self) -> &SyntaxNode {
18459 &self.syntax
18460 }
18461}
18462impl AstNode for BetweenExpr {
18463 #[inline]
18464 fn can_cast(kind: SyntaxKind) -> bool {
18465 kind == SyntaxKind::BETWEEN_EXPR
18466 }
18467 #[inline]
18468 fn cast(syntax: SyntaxNode) -> Option<Self> {
18469 if Self::can_cast(syntax.kind()) {
18470 Some(Self { syntax })
18471 } else {
18472 None
18473 }
18474 }
18475 #[inline]
18476 fn syntax(&self) -> &SyntaxNode {
18477 &self.syntax
18478 }
18479}
18480impl AstNode for BinExpr {
18481 #[inline]
18482 fn can_cast(kind: SyntaxKind) -> bool {
18483 kind == SyntaxKind::BIN_EXPR
18484 }
18485 #[inline]
18486 fn cast(syntax: SyntaxNode) -> Option<Self> {
18487 if Self::can_cast(syntax.kind()) {
18488 Some(Self { syntax })
18489 } else {
18490 None
18491 }
18492 }
18493 #[inline]
18494 fn syntax(&self) -> &SyntaxNode {
18495 &self.syntax
18496 }
18497}
18498impl AstNode for BitType {
18499 #[inline]
18500 fn can_cast(kind: SyntaxKind) -> bool {
18501 kind == SyntaxKind::BIT_TYPE
18502 }
18503 #[inline]
18504 fn cast(syntax: SyntaxNode) -> Option<Self> {
18505 if Self::can_cast(syntax.kind()) {
18506 Some(Self { syntax })
18507 } else {
18508 None
18509 }
18510 }
18511 #[inline]
18512 fn syntax(&self) -> &SyntaxNode {
18513 &self.syntax
18514 }
18515}
18516impl AstNode for Call {
18517 #[inline]
18518 fn can_cast(kind: SyntaxKind) -> bool {
18519 kind == SyntaxKind::CALL
18520 }
18521 #[inline]
18522 fn cast(syntax: SyntaxNode) -> Option<Self> {
18523 if Self::can_cast(syntax.kind()) {
18524 Some(Self { syntax })
18525 } else {
18526 None
18527 }
18528 }
18529 #[inline]
18530 fn syntax(&self) -> &SyntaxNode {
18531 &self.syntax
18532 }
18533}
18534impl AstNode for CallExpr {
18535 #[inline]
18536 fn can_cast(kind: SyntaxKind) -> bool {
18537 kind == SyntaxKind::CALL_EXPR
18538 }
18539 #[inline]
18540 fn cast(syntax: SyntaxNode) -> Option<Self> {
18541 if Self::can_cast(syntax.kind()) {
18542 Some(Self { syntax })
18543 } else {
18544 None
18545 }
18546 }
18547 #[inline]
18548 fn syntax(&self) -> &SyntaxNode {
18549 &self.syntax
18550 }
18551}
18552impl AstNode for Cascade {
18553 #[inline]
18554 fn can_cast(kind: SyntaxKind) -> bool {
18555 kind == SyntaxKind::CASCADE
18556 }
18557 #[inline]
18558 fn cast(syntax: SyntaxNode) -> Option<Self> {
18559 if Self::can_cast(syntax.kind()) {
18560 Some(Self { syntax })
18561 } else {
18562 None
18563 }
18564 }
18565 #[inline]
18566 fn syntax(&self) -> &SyntaxNode {
18567 &self.syntax
18568 }
18569}
18570impl AstNode for CaseExpr {
18571 #[inline]
18572 fn can_cast(kind: SyntaxKind) -> bool {
18573 kind == SyntaxKind::CASE_EXPR
18574 }
18575 #[inline]
18576 fn cast(syntax: SyntaxNode) -> Option<Self> {
18577 if Self::can_cast(syntax.kind()) {
18578 Some(Self { syntax })
18579 } else {
18580 None
18581 }
18582 }
18583 #[inline]
18584 fn syntax(&self) -> &SyntaxNode {
18585 &self.syntax
18586 }
18587}
18588impl AstNode for CastExpr {
18589 #[inline]
18590 fn can_cast(kind: SyntaxKind) -> bool {
18591 kind == SyntaxKind::CAST_EXPR
18592 }
18593 #[inline]
18594 fn cast(syntax: SyntaxNode) -> Option<Self> {
18595 if Self::can_cast(syntax.kind()) {
18596 Some(Self { syntax })
18597 } else {
18598 None
18599 }
18600 }
18601 #[inline]
18602 fn syntax(&self) -> &SyntaxNode {
18603 &self.syntax
18604 }
18605}
18606impl AstNode for CastSig {
18607 #[inline]
18608 fn can_cast(kind: SyntaxKind) -> bool {
18609 kind == SyntaxKind::CAST_SIG
18610 }
18611 #[inline]
18612 fn cast(syntax: SyntaxNode) -> Option<Self> {
18613 if Self::can_cast(syntax.kind()) {
18614 Some(Self { syntax })
18615 } else {
18616 None
18617 }
18618 }
18619 #[inline]
18620 fn syntax(&self) -> &SyntaxNode {
18621 &self.syntax
18622 }
18623}
18624impl AstNode for CharType {
18625 #[inline]
18626 fn can_cast(kind: SyntaxKind) -> bool {
18627 kind == SyntaxKind::CHAR_TYPE
18628 }
18629 #[inline]
18630 fn cast(syntax: SyntaxNode) -> Option<Self> {
18631 if Self::can_cast(syntax.kind()) {
18632 Some(Self { syntax })
18633 } else {
18634 None
18635 }
18636 }
18637 #[inline]
18638 fn syntax(&self) -> &SyntaxNode {
18639 &self.syntax
18640 }
18641}
18642impl AstNode for CheckConstraint {
18643 #[inline]
18644 fn can_cast(kind: SyntaxKind) -> bool {
18645 kind == SyntaxKind::CHECK_CONSTRAINT
18646 }
18647 #[inline]
18648 fn cast(syntax: SyntaxNode) -> Option<Self> {
18649 if Self::can_cast(syntax.kind()) {
18650 Some(Self { syntax })
18651 } else {
18652 None
18653 }
18654 }
18655 #[inline]
18656 fn syntax(&self) -> &SyntaxNode {
18657 &self.syntax
18658 }
18659}
18660impl AstNode for Checkpoint {
18661 #[inline]
18662 fn can_cast(kind: SyntaxKind) -> bool {
18663 kind == SyntaxKind::CHECKPOINT
18664 }
18665 #[inline]
18666 fn cast(syntax: SyntaxNode) -> Option<Self> {
18667 if Self::can_cast(syntax.kind()) {
18668 Some(Self { syntax })
18669 } else {
18670 None
18671 }
18672 }
18673 #[inline]
18674 fn syntax(&self) -> &SyntaxNode {
18675 &self.syntax
18676 }
18677}
18678impl AstNode for Close {
18679 #[inline]
18680 fn can_cast(kind: SyntaxKind) -> bool {
18681 kind == SyntaxKind::CLOSE
18682 }
18683 #[inline]
18684 fn cast(syntax: SyntaxNode) -> Option<Self> {
18685 if Self::can_cast(syntax.kind()) {
18686 Some(Self { syntax })
18687 } else {
18688 None
18689 }
18690 }
18691 #[inline]
18692 fn syntax(&self) -> &SyntaxNode {
18693 &self.syntax
18694 }
18695}
18696impl AstNode for Cluster {
18697 #[inline]
18698 fn can_cast(kind: SyntaxKind) -> bool {
18699 kind == SyntaxKind::CLUSTER
18700 }
18701 #[inline]
18702 fn cast(syntax: SyntaxNode) -> Option<Self> {
18703 if Self::can_cast(syntax.kind()) {
18704 Some(Self { syntax })
18705 } else {
18706 None
18707 }
18708 }
18709 #[inline]
18710 fn syntax(&self) -> &SyntaxNode {
18711 &self.syntax
18712 }
18713}
18714impl AstNode for ClusterOn {
18715 #[inline]
18716 fn can_cast(kind: SyntaxKind) -> bool {
18717 kind == SyntaxKind::CLUSTER_ON
18718 }
18719 #[inline]
18720 fn cast(syntax: SyntaxNode) -> Option<Self> {
18721 if Self::can_cast(syntax.kind()) {
18722 Some(Self { syntax })
18723 } else {
18724 None
18725 }
18726 }
18727 #[inline]
18728 fn syntax(&self) -> &SyntaxNode {
18729 &self.syntax
18730 }
18731}
18732impl AstNode for Collate {
18733 #[inline]
18734 fn can_cast(kind: SyntaxKind) -> bool {
18735 kind == SyntaxKind::COLLATE
18736 }
18737 #[inline]
18738 fn cast(syntax: SyntaxNode) -> Option<Self> {
18739 if Self::can_cast(syntax.kind()) {
18740 Some(Self { syntax })
18741 } else {
18742 None
18743 }
18744 }
18745 #[inline]
18746 fn syntax(&self) -> &SyntaxNode {
18747 &self.syntax
18748 }
18749}
18750impl AstNode for ColonColon {
18751 #[inline]
18752 fn can_cast(kind: SyntaxKind) -> bool {
18753 kind == SyntaxKind::COLON_COLON
18754 }
18755 #[inline]
18756 fn cast(syntax: SyntaxNode) -> Option<Self> {
18757 if Self::can_cast(syntax.kind()) {
18758 Some(Self { syntax })
18759 } else {
18760 None
18761 }
18762 }
18763 #[inline]
18764 fn syntax(&self) -> &SyntaxNode {
18765 &self.syntax
18766 }
18767}
18768impl AstNode for ColonEq {
18769 #[inline]
18770 fn can_cast(kind: SyntaxKind) -> bool {
18771 kind == SyntaxKind::COLON_EQ
18772 }
18773 #[inline]
18774 fn cast(syntax: SyntaxNode) -> Option<Self> {
18775 if Self::can_cast(syntax.kind()) {
18776 Some(Self { syntax })
18777 } else {
18778 None
18779 }
18780 }
18781 #[inline]
18782 fn syntax(&self) -> &SyntaxNode {
18783 &self.syntax
18784 }
18785}
18786impl AstNode for Column {
18787 #[inline]
18788 fn can_cast(kind: SyntaxKind) -> bool {
18789 kind == SyntaxKind::COLUMN
18790 }
18791 #[inline]
18792 fn cast(syntax: SyntaxNode) -> Option<Self> {
18793 if Self::can_cast(syntax.kind()) {
18794 Some(Self { syntax })
18795 } else {
18796 None
18797 }
18798 }
18799 #[inline]
18800 fn syntax(&self) -> &SyntaxNode {
18801 &self.syntax
18802 }
18803}
18804impl AstNode for ColumnList {
18805 #[inline]
18806 fn can_cast(kind: SyntaxKind) -> bool {
18807 kind == SyntaxKind::COLUMN_LIST
18808 }
18809 #[inline]
18810 fn cast(syntax: SyntaxNode) -> Option<Self> {
18811 if Self::can_cast(syntax.kind()) {
18812 Some(Self { syntax })
18813 } else {
18814 None
18815 }
18816 }
18817 #[inline]
18818 fn syntax(&self) -> &SyntaxNode {
18819 &self.syntax
18820 }
18821}
18822impl AstNode for CommentOn {
18823 #[inline]
18824 fn can_cast(kind: SyntaxKind) -> bool {
18825 kind == SyntaxKind::COMMENT_ON
18826 }
18827 #[inline]
18828 fn cast(syntax: SyntaxNode) -> Option<Self> {
18829 if Self::can_cast(syntax.kind()) {
18830 Some(Self { syntax })
18831 } else {
18832 None
18833 }
18834 }
18835 #[inline]
18836 fn syntax(&self) -> &SyntaxNode {
18837 &self.syntax
18838 }
18839}
18840impl AstNode for Commit {
18841 #[inline]
18842 fn can_cast(kind: SyntaxKind) -> bool {
18843 kind == SyntaxKind::COMMIT
18844 }
18845 #[inline]
18846 fn cast(syntax: SyntaxNode) -> Option<Self> {
18847 if Self::can_cast(syntax.kind()) {
18848 Some(Self { syntax })
18849 } else {
18850 None
18851 }
18852 }
18853 #[inline]
18854 fn syntax(&self) -> &SyntaxNode {
18855 &self.syntax
18856 }
18857}
18858impl AstNode for CompoundSelect {
18859 #[inline]
18860 fn can_cast(kind: SyntaxKind) -> bool {
18861 kind == SyntaxKind::COMPOUND_SELECT
18862 }
18863 #[inline]
18864 fn cast(syntax: SyntaxNode) -> Option<Self> {
18865 if Self::can_cast(syntax.kind()) {
18866 Some(Self { syntax })
18867 } else {
18868 None
18869 }
18870 }
18871 #[inline]
18872 fn syntax(&self) -> &SyntaxNode {
18873 &self.syntax
18874 }
18875}
18876impl AstNode for CompressionMethod {
18877 #[inline]
18878 fn can_cast(kind: SyntaxKind) -> bool {
18879 kind == SyntaxKind::COMPRESSION_METHOD
18880 }
18881 #[inline]
18882 fn cast(syntax: SyntaxNode) -> Option<Self> {
18883 if Self::can_cast(syntax.kind()) {
18884 Some(Self { syntax })
18885 } else {
18886 None
18887 }
18888 }
18889 #[inline]
18890 fn syntax(&self) -> &SyntaxNode {
18891 &self.syntax
18892 }
18893}
18894impl AstNode for ConflictDoNothing {
18895 #[inline]
18896 fn can_cast(kind: SyntaxKind) -> bool {
18897 kind == SyntaxKind::CONFLICT_DO_NOTHING
18898 }
18899 #[inline]
18900 fn cast(syntax: SyntaxNode) -> Option<Self> {
18901 if Self::can_cast(syntax.kind()) {
18902 Some(Self { syntax })
18903 } else {
18904 None
18905 }
18906 }
18907 #[inline]
18908 fn syntax(&self) -> &SyntaxNode {
18909 &self.syntax
18910 }
18911}
18912impl AstNode for ConflictDoUpdateSet {
18913 #[inline]
18914 fn can_cast(kind: SyntaxKind) -> bool {
18915 kind == SyntaxKind::CONFLICT_DO_UPDATE_SET
18916 }
18917 #[inline]
18918 fn cast(syntax: SyntaxNode) -> Option<Self> {
18919 if Self::can_cast(syntax.kind()) {
18920 Some(Self { syntax })
18921 } else {
18922 None
18923 }
18924 }
18925 #[inline]
18926 fn syntax(&self) -> &SyntaxNode {
18927 &self.syntax
18928 }
18929}
18930impl AstNode for ConflictIndexItem {
18931 #[inline]
18932 fn can_cast(kind: SyntaxKind) -> bool {
18933 kind == SyntaxKind::CONFLICT_INDEX_ITEM
18934 }
18935 #[inline]
18936 fn cast(syntax: SyntaxNode) -> Option<Self> {
18937 if Self::can_cast(syntax.kind()) {
18938 Some(Self { syntax })
18939 } else {
18940 None
18941 }
18942 }
18943 #[inline]
18944 fn syntax(&self) -> &SyntaxNode {
18945 &self.syntax
18946 }
18947}
18948impl AstNode for ConflictIndexItemList {
18949 #[inline]
18950 fn can_cast(kind: SyntaxKind) -> bool {
18951 kind == SyntaxKind::CONFLICT_INDEX_ITEM_LIST
18952 }
18953 #[inline]
18954 fn cast(syntax: SyntaxNode) -> Option<Self> {
18955 if Self::can_cast(syntax.kind()) {
18956 Some(Self { syntax })
18957 } else {
18958 None
18959 }
18960 }
18961 #[inline]
18962 fn syntax(&self) -> &SyntaxNode {
18963 &self.syntax
18964 }
18965}
18966impl AstNode for ConflictOnConstraint {
18967 #[inline]
18968 fn can_cast(kind: SyntaxKind) -> bool {
18969 kind == SyntaxKind::CONFLICT_ON_CONSTRAINT
18970 }
18971 #[inline]
18972 fn cast(syntax: SyntaxNode) -> Option<Self> {
18973 if Self::can_cast(syntax.kind()) {
18974 Some(Self { syntax })
18975 } else {
18976 None
18977 }
18978 }
18979 #[inline]
18980 fn syntax(&self) -> &SyntaxNode {
18981 &self.syntax
18982 }
18983}
18984impl AstNode for ConflictOnIndex {
18985 #[inline]
18986 fn can_cast(kind: SyntaxKind) -> bool {
18987 kind == SyntaxKind::CONFLICT_ON_INDEX
18988 }
18989 #[inline]
18990 fn cast(syntax: SyntaxNode) -> Option<Self> {
18991 if Self::can_cast(syntax.kind()) {
18992 Some(Self { syntax })
18993 } else {
18994 None
18995 }
18996 }
18997 #[inline]
18998 fn syntax(&self) -> &SyntaxNode {
18999 &self.syntax
19000 }
19001}
19002impl AstNode for ConstraintExclusion {
19003 #[inline]
19004 fn can_cast(kind: SyntaxKind) -> bool {
19005 kind == SyntaxKind::CONSTRAINT_EXCLUSION
19006 }
19007 #[inline]
19008 fn cast(syntax: SyntaxNode) -> Option<Self> {
19009 if Self::can_cast(syntax.kind()) {
19010 Some(Self { syntax })
19011 } else {
19012 None
19013 }
19014 }
19015 #[inline]
19016 fn syntax(&self) -> &SyntaxNode {
19017 &self.syntax
19018 }
19019}
19020impl AstNode for ConstraintExclusionList {
19021 #[inline]
19022 fn can_cast(kind: SyntaxKind) -> bool {
19023 kind == SyntaxKind::CONSTRAINT_EXCLUSION_LIST
19024 }
19025 #[inline]
19026 fn cast(syntax: SyntaxNode) -> Option<Self> {
19027 if Self::can_cast(syntax.kind()) {
19028 Some(Self { syntax })
19029 } else {
19030 None
19031 }
19032 }
19033 #[inline]
19034 fn syntax(&self) -> &SyntaxNode {
19035 &self.syntax
19036 }
19037}
19038impl AstNode for ConstraintIncludeClause {
19039 #[inline]
19040 fn can_cast(kind: SyntaxKind) -> bool {
19041 kind == SyntaxKind::CONSTRAINT_INCLUDE_CLAUSE
19042 }
19043 #[inline]
19044 fn cast(syntax: SyntaxNode) -> Option<Self> {
19045 if Self::can_cast(syntax.kind()) {
19046 Some(Self { syntax })
19047 } else {
19048 None
19049 }
19050 }
19051 #[inline]
19052 fn syntax(&self) -> &SyntaxNode {
19053 &self.syntax
19054 }
19055}
19056impl AstNode for ConstraintIndexMethod {
19057 #[inline]
19058 fn can_cast(kind: SyntaxKind) -> bool {
19059 kind == SyntaxKind::CONSTRAINT_INDEX_METHOD
19060 }
19061 #[inline]
19062 fn cast(syntax: SyntaxNode) -> Option<Self> {
19063 if Self::can_cast(syntax.kind()) {
19064 Some(Self { syntax })
19065 } else {
19066 None
19067 }
19068 }
19069 #[inline]
19070 fn syntax(&self) -> &SyntaxNode {
19071 &self.syntax
19072 }
19073}
19074impl AstNode for ConstraintIndexTablespace {
19075 #[inline]
19076 fn can_cast(kind: SyntaxKind) -> bool {
19077 kind == SyntaxKind::CONSTRAINT_INDEX_TABLESPACE
19078 }
19079 #[inline]
19080 fn cast(syntax: SyntaxNode) -> Option<Self> {
19081 if Self::can_cast(syntax.kind()) {
19082 Some(Self { syntax })
19083 } else {
19084 None
19085 }
19086 }
19087 #[inline]
19088 fn syntax(&self) -> &SyntaxNode {
19089 &self.syntax
19090 }
19091}
19092impl AstNode for ConstraintName {
19093 #[inline]
19094 fn can_cast(kind: SyntaxKind) -> bool {
19095 kind == SyntaxKind::CONSTRAINT_NAME
19096 }
19097 #[inline]
19098 fn cast(syntax: SyntaxNode) -> Option<Self> {
19099 if Self::can_cast(syntax.kind()) {
19100 Some(Self { syntax })
19101 } else {
19102 None
19103 }
19104 }
19105 #[inline]
19106 fn syntax(&self) -> &SyntaxNode {
19107 &self.syntax
19108 }
19109}
19110impl AstNode for Copy {
19111 #[inline]
19112 fn can_cast(kind: SyntaxKind) -> bool {
19113 kind == SyntaxKind::COPY
19114 }
19115 #[inline]
19116 fn cast(syntax: SyntaxNode) -> Option<Self> {
19117 if Self::can_cast(syntax.kind()) {
19118 Some(Self { syntax })
19119 } else {
19120 None
19121 }
19122 }
19123 #[inline]
19124 fn syntax(&self) -> &SyntaxNode {
19125 &self.syntax
19126 }
19127}
19128impl AstNode for CopyOption {
19129 #[inline]
19130 fn can_cast(kind: SyntaxKind) -> bool {
19131 kind == SyntaxKind::COPY_OPTION
19132 }
19133 #[inline]
19134 fn cast(syntax: SyntaxNode) -> Option<Self> {
19135 if Self::can_cast(syntax.kind()) {
19136 Some(Self { syntax })
19137 } else {
19138 None
19139 }
19140 }
19141 #[inline]
19142 fn syntax(&self) -> &SyntaxNode {
19143 &self.syntax
19144 }
19145}
19146impl AstNode for CopyOptionList {
19147 #[inline]
19148 fn can_cast(kind: SyntaxKind) -> bool {
19149 kind == SyntaxKind::COPY_OPTION_LIST
19150 }
19151 #[inline]
19152 fn cast(syntax: SyntaxNode) -> Option<Self> {
19153 if Self::can_cast(syntax.kind()) {
19154 Some(Self { syntax })
19155 } else {
19156 None
19157 }
19158 }
19159 #[inline]
19160 fn syntax(&self) -> &SyntaxNode {
19161 &self.syntax
19162 }
19163}
19164impl AstNode for CostFuncOption {
19165 #[inline]
19166 fn can_cast(kind: SyntaxKind) -> bool {
19167 kind == SyntaxKind::COST_FUNC_OPTION
19168 }
19169 #[inline]
19170 fn cast(syntax: SyntaxNode) -> Option<Self> {
19171 if Self::can_cast(syntax.kind()) {
19172 Some(Self { syntax })
19173 } else {
19174 None
19175 }
19176 }
19177 #[inline]
19178 fn syntax(&self) -> &SyntaxNode {
19179 &self.syntax
19180 }
19181}
19182impl AstNode for CreateAccessMethod {
19183 #[inline]
19184 fn can_cast(kind: SyntaxKind) -> bool {
19185 kind == SyntaxKind::CREATE_ACCESS_METHOD
19186 }
19187 #[inline]
19188 fn cast(syntax: SyntaxNode) -> Option<Self> {
19189 if Self::can_cast(syntax.kind()) {
19190 Some(Self { syntax })
19191 } else {
19192 None
19193 }
19194 }
19195 #[inline]
19196 fn syntax(&self) -> &SyntaxNode {
19197 &self.syntax
19198 }
19199}
19200impl AstNode for CreateAggregate {
19201 #[inline]
19202 fn can_cast(kind: SyntaxKind) -> bool {
19203 kind == SyntaxKind::CREATE_AGGREGATE
19204 }
19205 #[inline]
19206 fn cast(syntax: SyntaxNode) -> Option<Self> {
19207 if Self::can_cast(syntax.kind()) {
19208 Some(Self { syntax })
19209 } else {
19210 None
19211 }
19212 }
19213 #[inline]
19214 fn syntax(&self) -> &SyntaxNode {
19215 &self.syntax
19216 }
19217}
19218impl AstNode for CreateCast {
19219 #[inline]
19220 fn can_cast(kind: SyntaxKind) -> bool {
19221 kind == SyntaxKind::CREATE_CAST
19222 }
19223 #[inline]
19224 fn cast(syntax: SyntaxNode) -> Option<Self> {
19225 if Self::can_cast(syntax.kind()) {
19226 Some(Self { syntax })
19227 } else {
19228 None
19229 }
19230 }
19231 #[inline]
19232 fn syntax(&self) -> &SyntaxNode {
19233 &self.syntax
19234 }
19235}
19236impl AstNode for CreateCollation {
19237 #[inline]
19238 fn can_cast(kind: SyntaxKind) -> bool {
19239 kind == SyntaxKind::CREATE_COLLATION
19240 }
19241 #[inline]
19242 fn cast(syntax: SyntaxNode) -> Option<Self> {
19243 if Self::can_cast(syntax.kind()) {
19244 Some(Self { syntax })
19245 } else {
19246 None
19247 }
19248 }
19249 #[inline]
19250 fn syntax(&self) -> &SyntaxNode {
19251 &self.syntax
19252 }
19253}
19254impl AstNode for CreateConversion {
19255 #[inline]
19256 fn can_cast(kind: SyntaxKind) -> bool {
19257 kind == SyntaxKind::CREATE_CONVERSION
19258 }
19259 #[inline]
19260 fn cast(syntax: SyntaxNode) -> Option<Self> {
19261 if Self::can_cast(syntax.kind()) {
19262 Some(Self { syntax })
19263 } else {
19264 None
19265 }
19266 }
19267 #[inline]
19268 fn syntax(&self) -> &SyntaxNode {
19269 &self.syntax
19270 }
19271}
19272impl AstNode for CreateDatabase {
19273 #[inline]
19274 fn can_cast(kind: SyntaxKind) -> bool {
19275 kind == SyntaxKind::CREATE_DATABASE
19276 }
19277 #[inline]
19278 fn cast(syntax: SyntaxNode) -> Option<Self> {
19279 if Self::can_cast(syntax.kind()) {
19280 Some(Self { syntax })
19281 } else {
19282 None
19283 }
19284 }
19285 #[inline]
19286 fn syntax(&self) -> &SyntaxNode {
19287 &self.syntax
19288 }
19289}
19290impl AstNode for CreateDatabaseOption {
19291 #[inline]
19292 fn can_cast(kind: SyntaxKind) -> bool {
19293 kind == SyntaxKind::CREATE_DATABASE_OPTION
19294 }
19295 #[inline]
19296 fn cast(syntax: SyntaxNode) -> Option<Self> {
19297 if Self::can_cast(syntax.kind()) {
19298 Some(Self { syntax })
19299 } else {
19300 None
19301 }
19302 }
19303 #[inline]
19304 fn syntax(&self) -> &SyntaxNode {
19305 &self.syntax
19306 }
19307}
19308impl AstNode for CreateDatabaseOptionList {
19309 #[inline]
19310 fn can_cast(kind: SyntaxKind) -> bool {
19311 kind == SyntaxKind::CREATE_DATABASE_OPTION_LIST
19312 }
19313 #[inline]
19314 fn cast(syntax: SyntaxNode) -> Option<Self> {
19315 if Self::can_cast(syntax.kind()) {
19316 Some(Self { syntax })
19317 } else {
19318 None
19319 }
19320 }
19321 #[inline]
19322 fn syntax(&self) -> &SyntaxNode {
19323 &self.syntax
19324 }
19325}
19326impl AstNode for CreateDomain {
19327 #[inline]
19328 fn can_cast(kind: SyntaxKind) -> bool {
19329 kind == SyntaxKind::CREATE_DOMAIN
19330 }
19331 #[inline]
19332 fn cast(syntax: SyntaxNode) -> Option<Self> {
19333 if Self::can_cast(syntax.kind()) {
19334 Some(Self { syntax })
19335 } else {
19336 None
19337 }
19338 }
19339 #[inline]
19340 fn syntax(&self) -> &SyntaxNode {
19341 &self.syntax
19342 }
19343}
19344impl AstNode for CreateEventTrigger {
19345 #[inline]
19346 fn can_cast(kind: SyntaxKind) -> bool {
19347 kind == SyntaxKind::CREATE_EVENT_TRIGGER
19348 }
19349 #[inline]
19350 fn cast(syntax: SyntaxNode) -> Option<Self> {
19351 if Self::can_cast(syntax.kind()) {
19352 Some(Self { syntax })
19353 } else {
19354 None
19355 }
19356 }
19357 #[inline]
19358 fn syntax(&self) -> &SyntaxNode {
19359 &self.syntax
19360 }
19361}
19362impl AstNode for CreateExtension {
19363 #[inline]
19364 fn can_cast(kind: SyntaxKind) -> bool {
19365 kind == SyntaxKind::CREATE_EXTENSION
19366 }
19367 #[inline]
19368 fn cast(syntax: SyntaxNode) -> Option<Self> {
19369 if Self::can_cast(syntax.kind()) {
19370 Some(Self { syntax })
19371 } else {
19372 None
19373 }
19374 }
19375 #[inline]
19376 fn syntax(&self) -> &SyntaxNode {
19377 &self.syntax
19378 }
19379}
19380impl AstNode for CreateForeignDataWrapper {
19381 #[inline]
19382 fn can_cast(kind: SyntaxKind) -> bool {
19383 kind == SyntaxKind::CREATE_FOREIGN_DATA_WRAPPER
19384 }
19385 #[inline]
19386 fn cast(syntax: SyntaxNode) -> Option<Self> {
19387 if Self::can_cast(syntax.kind()) {
19388 Some(Self { syntax })
19389 } else {
19390 None
19391 }
19392 }
19393 #[inline]
19394 fn syntax(&self) -> &SyntaxNode {
19395 &self.syntax
19396 }
19397}
19398impl AstNode for CreateForeignTable {
19399 #[inline]
19400 fn can_cast(kind: SyntaxKind) -> bool {
19401 kind == SyntaxKind::CREATE_FOREIGN_TABLE
19402 }
19403 #[inline]
19404 fn cast(syntax: SyntaxNode) -> Option<Self> {
19405 if Self::can_cast(syntax.kind()) {
19406 Some(Self { syntax })
19407 } else {
19408 None
19409 }
19410 }
19411 #[inline]
19412 fn syntax(&self) -> &SyntaxNode {
19413 &self.syntax
19414 }
19415}
19416impl AstNode for CreateFunction {
19417 #[inline]
19418 fn can_cast(kind: SyntaxKind) -> bool {
19419 kind == SyntaxKind::CREATE_FUNCTION
19420 }
19421 #[inline]
19422 fn cast(syntax: SyntaxNode) -> Option<Self> {
19423 if Self::can_cast(syntax.kind()) {
19424 Some(Self { syntax })
19425 } else {
19426 None
19427 }
19428 }
19429 #[inline]
19430 fn syntax(&self) -> &SyntaxNode {
19431 &self.syntax
19432 }
19433}
19434impl AstNode for CreateGroup {
19435 #[inline]
19436 fn can_cast(kind: SyntaxKind) -> bool {
19437 kind == SyntaxKind::CREATE_GROUP
19438 }
19439 #[inline]
19440 fn cast(syntax: SyntaxNode) -> Option<Self> {
19441 if Self::can_cast(syntax.kind()) {
19442 Some(Self { syntax })
19443 } else {
19444 None
19445 }
19446 }
19447 #[inline]
19448 fn syntax(&self) -> &SyntaxNode {
19449 &self.syntax
19450 }
19451}
19452impl AstNode for CreateIndex {
19453 #[inline]
19454 fn can_cast(kind: SyntaxKind) -> bool {
19455 kind == SyntaxKind::CREATE_INDEX
19456 }
19457 #[inline]
19458 fn cast(syntax: SyntaxNode) -> Option<Self> {
19459 if Self::can_cast(syntax.kind()) {
19460 Some(Self { syntax })
19461 } else {
19462 None
19463 }
19464 }
19465 #[inline]
19466 fn syntax(&self) -> &SyntaxNode {
19467 &self.syntax
19468 }
19469}
19470impl AstNode for CreateLanguage {
19471 #[inline]
19472 fn can_cast(kind: SyntaxKind) -> bool {
19473 kind == SyntaxKind::CREATE_LANGUAGE
19474 }
19475 #[inline]
19476 fn cast(syntax: SyntaxNode) -> Option<Self> {
19477 if Self::can_cast(syntax.kind()) {
19478 Some(Self { syntax })
19479 } else {
19480 None
19481 }
19482 }
19483 #[inline]
19484 fn syntax(&self) -> &SyntaxNode {
19485 &self.syntax
19486 }
19487}
19488impl AstNode for CreateMaterializedView {
19489 #[inline]
19490 fn can_cast(kind: SyntaxKind) -> bool {
19491 kind == SyntaxKind::CREATE_MATERIALIZED_VIEW
19492 }
19493 #[inline]
19494 fn cast(syntax: SyntaxNode) -> Option<Self> {
19495 if Self::can_cast(syntax.kind()) {
19496 Some(Self { syntax })
19497 } else {
19498 None
19499 }
19500 }
19501 #[inline]
19502 fn syntax(&self) -> &SyntaxNode {
19503 &self.syntax
19504 }
19505}
19506impl AstNode for CreateOperator {
19507 #[inline]
19508 fn can_cast(kind: SyntaxKind) -> bool {
19509 kind == SyntaxKind::CREATE_OPERATOR
19510 }
19511 #[inline]
19512 fn cast(syntax: SyntaxNode) -> Option<Self> {
19513 if Self::can_cast(syntax.kind()) {
19514 Some(Self { syntax })
19515 } else {
19516 None
19517 }
19518 }
19519 #[inline]
19520 fn syntax(&self) -> &SyntaxNode {
19521 &self.syntax
19522 }
19523}
19524impl AstNode for CreateOperatorClass {
19525 #[inline]
19526 fn can_cast(kind: SyntaxKind) -> bool {
19527 kind == SyntaxKind::CREATE_OPERATOR_CLASS
19528 }
19529 #[inline]
19530 fn cast(syntax: SyntaxNode) -> Option<Self> {
19531 if Self::can_cast(syntax.kind()) {
19532 Some(Self { syntax })
19533 } else {
19534 None
19535 }
19536 }
19537 #[inline]
19538 fn syntax(&self) -> &SyntaxNode {
19539 &self.syntax
19540 }
19541}
19542impl AstNode for CreateOperatorFamily {
19543 #[inline]
19544 fn can_cast(kind: SyntaxKind) -> bool {
19545 kind == SyntaxKind::CREATE_OPERATOR_FAMILY
19546 }
19547 #[inline]
19548 fn cast(syntax: SyntaxNode) -> Option<Self> {
19549 if Self::can_cast(syntax.kind()) {
19550 Some(Self { syntax })
19551 } else {
19552 None
19553 }
19554 }
19555 #[inline]
19556 fn syntax(&self) -> &SyntaxNode {
19557 &self.syntax
19558 }
19559}
19560impl AstNode for CreatePolicy {
19561 #[inline]
19562 fn can_cast(kind: SyntaxKind) -> bool {
19563 kind == SyntaxKind::CREATE_POLICY
19564 }
19565 #[inline]
19566 fn cast(syntax: SyntaxNode) -> Option<Self> {
19567 if Self::can_cast(syntax.kind()) {
19568 Some(Self { syntax })
19569 } else {
19570 None
19571 }
19572 }
19573 #[inline]
19574 fn syntax(&self) -> &SyntaxNode {
19575 &self.syntax
19576 }
19577}
19578impl AstNode for CreateProcedure {
19579 #[inline]
19580 fn can_cast(kind: SyntaxKind) -> bool {
19581 kind == SyntaxKind::CREATE_PROCEDURE
19582 }
19583 #[inline]
19584 fn cast(syntax: SyntaxNode) -> Option<Self> {
19585 if Self::can_cast(syntax.kind()) {
19586 Some(Self { syntax })
19587 } else {
19588 None
19589 }
19590 }
19591 #[inline]
19592 fn syntax(&self) -> &SyntaxNode {
19593 &self.syntax
19594 }
19595}
19596impl AstNode for CreatePublication {
19597 #[inline]
19598 fn can_cast(kind: SyntaxKind) -> bool {
19599 kind == SyntaxKind::CREATE_PUBLICATION
19600 }
19601 #[inline]
19602 fn cast(syntax: SyntaxNode) -> Option<Self> {
19603 if Self::can_cast(syntax.kind()) {
19604 Some(Self { syntax })
19605 } else {
19606 None
19607 }
19608 }
19609 #[inline]
19610 fn syntax(&self) -> &SyntaxNode {
19611 &self.syntax
19612 }
19613}
19614impl AstNode for CreateRole {
19615 #[inline]
19616 fn can_cast(kind: SyntaxKind) -> bool {
19617 kind == SyntaxKind::CREATE_ROLE
19618 }
19619 #[inline]
19620 fn cast(syntax: SyntaxNode) -> Option<Self> {
19621 if Self::can_cast(syntax.kind()) {
19622 Some(Self { syntax })
19623 } else {
19624 None
19625 }
19626 }
19627 #[inline]
19628 fn syntax(&self) -> &SyntaxNode {
19629 &self.syntax
19630 }
19631}
19632impl AstNode for CreateRule {
19633 #[inline]
19634 fn can_cast(kind: SyntaxKind) -> bool {
19635 kind == SyntaxKind::CREATE_RULE
19636 }
19637 #[inline]
19638 fn cast(syntax: SyntaxNode) -> Option<Self> {
19639 if Self::can_cast(syntax.kind()) {
19640 Some(Self { syntax })
19641 } else {
19642 None
19643 }
19644 }
19645 #[inline]
19646 fn syntax(&self) -> &SyntaxNode {
19647 &self.syntax
19648 }
19649}
19650impl AstNode for CreateSchema {
19651 #[inline]
19652 fn can_cast(kind: SyntaxKind) -> bool {
19653 kind == SyntaxKind::CREATE_SCHEMA
19654 }
19655 #[inline]
19656 fn cast(syntax: SyntaxNode) -> Option<Self> {
19657 if Self::can_cast(syntax.kind()) {
19658 Some(Self { syntax })
19659 } else {
19660 None
19661 }
19662 }
19663 #[inline]
19664 fn syntax(&self) -> &SyntaxNode {
19665 &self.syntax
19666 }
19667}
19668impl AstNode for CreateSequence {
19669 #[inline]
19670 fn can_cast(kind: SyntaxKind) -> bool {
19671 kind == SyntaxKind::CREATE_SEQUENCE
19672 }
19673 #[inline]
19674 fn cast(syntax: SyntaxNode) -> Option<Self> {
19675 if Self::can_cast(syntax.kind()) {
19676 Some(Self { syntax })
19677 } else {
19678 None
19679 }
19680 }
19681 #[inline]
19682 fn syntax(&self) -> &SyntaxNode {
19683 &self.syntax
19684 }
19685}
19686impl AstNode for CreateServer {
19687 #[inline]
19688 fn can_cast(kind: SyntaxKind) -> bool {
19689 kind == SyntaxKind::CREATE_SERVER
19690 }
19691 #[inline]
19692 fn cast(syntax: SyntaxNode) -> Option<Self> {
19693 if Self::can_cast(syntax.kind()) {
19694 Some(Self { syntax })
19695 } else {
19696 None
19697 }
19698 }
19699 #[inline]
19700 fn syntax(&self) -> &SyntaxNode {
19701 &self.syntax
19702 }
19703}
19704impl AstNode for CreateStatistics {
19705 #[inline]
19706 fn can_cast(kind: SyntaxKind) -> bool {
19707 kind == SyntaxKind::CREATE_STATISTICS
19708 }
19709 #[inline]
19710 fn cast(syntax: SyntaxNode) -> Option<Self> {
19711 if Self::can_cast(syntax.kind()) {
19712 Some(Self { syntax })
19713 } else {
19714 None
19715 }
19716 }
19717 #[inline]
19718 fn syntax(&self) -> &SyntaxNode {
19719 &self.syntax
19720 }
19721}
19722impl AstNode for CreateSubscription {
19723 #[inline]
19724 fn can_cast(kind: SyntaxKind) -> bool {
19725 kind == SyntaxKind::CREATE_SUBSCRIPTION
19726 }
19727 #[inline]
19728 fn cast(syntax: SyntaxNode) -> Option<Self> {
19729 if Self::can_cast(syntax.kind()) {
19730 Some(Self { syntax })
19731 } else {
19732 None
19733 }
19734 }
19735 #[inline]
19736 fn syntax(&self) -> &SyntaxNode {
19737 &self.syntax
19738 }
19739}
19740impl AstNode for CreateTable {
19741 #[inline]
19742 fn can_cast(kind: SyntaxKind) -> bool {
19743 kind == SyntaxKind::CREATE_TABLE
19744 }
19745 #[inline]
19746 fn cast(syntax: SyntaxNode) -> Option<Self> {
19747 if Self::can_cast(syntax.kind()) {
19748 Some(Self { syntax })
19749 } else {
19750 None
19751 }
19752 }
19753 #[inline]
19754 fn syntax(&self) -> &SyntaxNode {
19755 &self.syntax
19756 }
19757}
19758impl AstNode for CreateTableAs {
19759 #[inline]
19760 fn can_cast(kind: SyntaxKind) -> bool {
19761 kind == SyntaxKind::CREATE_TABLE_AS
19762 }
19763 #[inline]
19764 fn cast(syntax: SyntaxNode) -> Option<Self> {
19765 if Self::can_cast(syntax.kind()) {
19766 Some(Self { syntax })
19767 } else {
19768 None
19769 }
19770 }
19771 #[inline]
19772 fn syntax(&self) -> &SyntaxNode {
19773 &self.syntax
19774 }
19775}
19776impl AstNode for CreateTablespace {
19777 #[inline]
19778 fn can_cast(kind: SyntaxKind) -> bool {
19779 kind == SyntaxKind::CREATE_TABLESPACE
19780 }
19781 #[inline]
19782 fn cast(syntax: SyntaxNode) -> Option<Self> {
19783 if Self::can_cast(syntax.kind()) {
19784 Some(Self { syntax })
19785 } else {
19786 None
19787 }
19788 }
19789 #[inline]
19790 fn syntax(&self) -> &SyntaxNode {
19791 &self.syntax
19792 }
19793}
19794impl AstNode for CreateTextSearchConfiguration {
19795 #[inline]
19796 fn can_cast(kind: SyntaxKind) -> bool {
19797 kind == SyntaxKind::CREATE_TEXT_SEARCH_CONFIGURATION
19798 }
19799 #[inline]
19800 fn cast(syntax: SyntaxNode) -> Option<Self> {
19801 if Self::can_cast(syntax.kind()) {
19802 Some(Self { syntax })
19803 } else {
19804 None
19805 }
19806 }
19807 #[inline]
19808 fn syntax(&self) -> &SyntaxNode {
19809 &self.syntax
19810 }
19811}
19812impl AstNode for CreateTextSearchDictionary {
19813 #[inline]
19814 fn can_cast(kind: SyntaxKind) -> bool {
19815 kind == SyntaxKind::CREATE_TEXT_SEARCH_DICTIONARY
19816 }
19817 #[inline]
19818 fn cast(syntax: SyntaxNode) -> Option<Self> {
19819 if Self::can_cast(syntax.kind()) {
19820 Some(Self { syntax })
19821 } else {
19822 None
19823 }
19824 }
19825 #[inline]
19826 fn syntax(&self) -> &SyntaxNode {
19827 &self.syntax
19828 }
19829}
19830impl AstNode for CreateTextSearchParser {
19831 #[inline]
19832 fn can_cast(kind: SyntaxKind) -> bool {
19833 kind == SyntaxKind::CREATE_TEXT_SEARCH_PARSER
19834 }
19835 #[inline]
19836 fn cast(syntax: SyntaxNode) -> Option<Self> {
19837 if Self::can_cast(syntax.kind()) {
19838 Some(Self { syntax })
19839 } else {
19840 None
19841 }
19842 }
19843 #[inline]
19844 fn syntax(&self) -> &SyntaxNode {
19845 &self.syntax
19846 }
19847}
19848impl AstNode for CreateTextSearchTemplate {
19849 #[inline]
19850 fn can_cast(kind: SyntaxKind) -> bool {
19851 kind == SyntaxKind::CREATE_TEXT_SEARCH_TEMPLATE
19852 }
19853 #[inline]
19854 fn cast(syntax: SyntaxNode) -> Option<Self> {
19855 if Self::can_cast(syntax.kind()) {
19856 Some(Self { syntax })
19857 } else {
19858 None
19859 }
19860 }
19861 #[inline]
19862 fn syntax(&self) -> &SyntaxNode {
19863 &self.syntax
19864 }
19865}
19866impl AstNode for CreateTransform {
19867 #[inline]
19868 fn can_cast(kind: SyntaxKind) -> bool {
19869 kind == SyntaxKind::CREATE_TRANSFORM
19870 }
19871 #[inline]
19872 fn cast(syntax: SyntaxNode) -> Option<Self> {
19873 if Self::can_cast(syntax.kind()) {
19874 Some(Self { syntax })
19875 } else {
19876 None
19877 }
19878 }
19879 #[inline]
19880 fn syntax(&self) -> &SyntaxNode {
19881 &self.syntax
19882 }
19883}
19884impl AstNode for CreateTrigger {
19885 #[inline]
19886 fn can_cast(kind: SyntaxKind) -> bool {
19887 kind == SyntaxKind::CREATE_TRIGGER
19888 }
19889 #[inline]
19890 fn cast(syntax: SyntaxNode) -> Option<Self> {
19891 if Self::can_cast(syntax.kind()) {
19892 Some(Self { syntax })
19893 } else {
19894 None
19895 }
19896 }
19897 #[inline]
19898 fn syntax(&self) -> &SyntaxNode {
19899 &self.syntax
19900 }
19901}
19902impl AstNode for CreateType {
19903 #[inline]
19904 fn can_cast(kind: SyntaxKind) -> bool {
19905 kind == SyntaxKind::CREATE_TYPE
19906 }
19907 #[inline]
19908 fn cast(syntax: SyntaxNode) -> Option<Self> {
19909 if Self::can_cast(syntax.kind()) {
19910 Some(Self { syntax })
19911 } else {
19912 None
19913 }
19914 }
19915 #[inline]
19916 fn syntax(&self) -> &SyntaxNode {
19917 &self.syntax
19918 }
19919}
19920impl AstNode for CreateUser {
19921 #[inline]
19922 fn can_cast(kind: SyntaxKind) -> bool {
19923 kind == SyntaxKind::CREATE_USER
19924 }
19925 #[inline]
19926 fn cast(syntax: SyntaxNode) -> Option<Self> {
19927 if Self::can_cast(syntax.kind()) {
19928 Some(Self { syntax })
19929 } else {
19930 None
19931 }
19932 }
19933 #[inline]
19934 fn syntax(&self) -> &SyntaxNode {
19935 &self.syntax
19936 }
19937}
19938impl AstNode for CreateUserMapping {
19939 #[inline]
19940 fn can_cast(kind: SyntaxKind) -> bool {
19941 kind == SyntaxKind::CREATE_USER_MAPPING
19942 }
19943 #[inline]
19944 fn cast(syntax: SyntaxNode) -> Option<Self> {
19945 if Self::can_cast(syntax.kind()) {
19946 Some(Self { syntax })
19947 } else {
19948 None
19949 }
19950 }
19951 #[inline]
19952 fn syntax(&self) -> &SyntaxNode {
19953 &self.syntax
19954 }
19955}
19956impl AstNode for CreateView {
19957 #[inline]
19958 fn can_cast(kind: SyntaxKind) -> bool {
19959 kind == SyntaxKind::CREATE_VIEW
19960 }
19961 #[inline]
19962 fn cast(syntax: SyntaxNode) -> Option<Self> {
19963 if Self::can_cast(syntax.kind()) {
19964 Some(Self { syntax })
19965 } else {
19966 None
19967 }
19968 }
19969 #[inline]
19970 fn syntax(&self) -> &SyntaxNode {
19971 &self.syntax
19972 }
19973}
19974impl AstNode for CustomOp {
19975 #[inline]
19976 fn can_cast(kind: SyntaxKind) -> bool {
19977 kind == SyntaxKind::CUSTOM_OP
19978 }
19979 #[inline]
19980 fn cast(syntax: SyntaxNode) -> Option<Self> {
19981 if Self::can_cast(syntax.kind()) {
19982 Some(Self { syntax })
19983 } else {
19984 None
19985 }
19986 }
19987 #[inline]
19988 fn syntax(&self) -> &SyntaxNode {
19989 &self.syntax
19990 }
19991}
19992impl AstNode for Deallocate {
19993 #[inline]
19994 fn can_cast(kind: SyntaxKind) -> bool {
19995 kind == SyntaxKind::DEALLOCATE
19996 }
19997 #[inline]
19998 fn cast(syntax: SyntaxNode) -> Option<Self> {
19999 if Self::can_cast(syntax.kind()) {
20000 Some(Self { syntax })
20001 } else {
20002 None
20003 }
20004 }
20005 #[inline]
20006 fn syntax(&self) -> &SyntaxNode {
20007 &self.syntax
20008 }
20009}
20010impl AstNode for Declare {
20011 #[inline]
20012 fn can_cast(kind: SyntaxKind) -> bool {
20013 kind == SyntaxKind::DECLARE
20014 }
20015 #[inline]
20016 fn cast(syntax: SyntaxNode) -> Option<Self> {
20017 if Self::can_cast(syntax.kind()) {
20018 Some(Self { syntax })
20019 } else {
20020 None
20021 }
20022 }
20023 #[inline]
20024 fn syntax(&self) -> &SyntaxNode {
20025 &self.syntax
20026 }
20027}
20028impl AstNode for DefaultConstraint {
20029 #[inline]
20030 fn can_cast(kind: SyntaxKind) -> bool {
20031 kind == SyntaxKind::DEFAULT_CONSTRAINT
20032 }
20033 #[inline]
20034 fn cast(syntax: SyntaxNode) -> Option<Self> {
20035 if Self::can_cast(syntax.kind()) {
20036 Some(Self { syntax })
20037 } else {
20038 None
20039 }
20040 }
20041 #[inline]
20042 fn syntax(&self) -> &SyntaxNode {
20043 &self.syntax
20044 }
20045}
20046impl AstNode for Deferrable {
20047 #[inline]
20048 fn can_cast(kind: SyntaxKind) -> bool {
20049 kind == SyntaxKind::DEFERRABLE
20050 }
20051 #[inline]
20052 fn cast(syntax: SyntaxNode) -> Option<Self> {
20053 if Self::can_cast(syntax.kind()) {
20054 Some(Self { syntax })
20055 } else {
20056 None
20057 }
20058 }
20059 #[inline]
20060 fn syntax(&self) -> &SyntaxNode {
20061 &self.syntax
20062 }
20063}
20064impl AstNode for DeferrableConstraintOption {
20065 #[inline]
20066 fn can_cast(kind: SyntaxKind) -> bool {
20067 kind == SyntaxKind::DEFERRABLE_CONSTRAINT_OPTION
20068 }
20069 #[inline]
20070 fn cast(syntax: SyntaxNode) -> Option<Self> {
20071 if Self::can_cast(syntax.kind()) {
20072 Some(Self { syntax })
20073 } else {
20074 None
20075 }
20076 }
20077 #[inline]
20078 fn syntax(&self) -> &SyntaxNode {
20079 &self.syntax
20080 }
20081}
20082impl AstNode for Delete {
20083 #[inline]
20084 fn can_cast(kind: SyntaxKind) -> bool {
20085 kind == SyntaxKind::DELETE
20086 }
20087 #[inline]
20088 fn cast(syntax: SyntaxNode) -> Option<Self> {
20089 if Self::can_cast(syntax.kind()) {
20090 Some(Self { syntax })
20091 } else {
20092 None
20093 }
20094 }
20095 #[inline]
20096 fn syntax(&self) -> &SyntaxNode {
20097 &self.syntax
20098 }
20099}
20100impl AstNode for DeleteRows {
20101 #[inline]
20102 fn can_cast(kind: SyntaxKind) -> bool {
20103 kind == SyntaxKind::DELETE_ROWS
20104 }
20105 #[inline]
20106 fn cast(syntax: SyntaxNode) -> Option<Self> {
20107 if Self::can_cast(syntax.kind()) {
20108 Some(Self { syntax })
20109 } else {
20110 None
20111 }
20112 }
20113 #[inline]
20114 fn syntax(&self) -> &SyntaxNode {
20115 &self.syntax
20116 }
20117}
20118impl AstNode for DependsOnExtension {
20119 #[inline]
20120 fn can_cast(kind: SyntaxKind) -> bool {
20121 kind == SyntaxKind::DEPENDS_ON_EXTENSION
20122 }
20123 #[inline]
20124 fn cast(syntax: SyntaxNode) -> Option<Self> {
20125 if Self::can_cast(syntax.kind()) {
20126 Some(Self { syntax })
20127 } else {
20128 None
20129 }
20130 }
20131 #[inline]
20132 fn syntax(&self) -> &SyntaxNode {
20133 &self.syntax
20134 }
20135}
20136impl AstNode for DetachPartition {
20137 #[inline]
20138 fn can_cast(kind: SyntaxKind) -> bool {
20139 kind == SyntaxKind::DETACH_PARTITION
20140 }
20141 #[inline]
20142 fn cast(syntax: SyntaxNode) -> Option<Self> {
20143 if Self::can_cast(syntax.kind()) {
20144 Some(Self { syntax })
20145 } else {
20146 None
20147 }
20148 }
20149 #[inline]
20150 fn syntax(&self) -> &SyntaxNode {
20151 &self.syntax
20152 }
20153}
20154impl AstNode for DisableRls {
20155 #[inline]
20156 fn can_cast(kind: SyntaxKind) -> bool {
20157 kind == SyntaxKind::DISABLE_RLS
20158 }
20159 #[inline]
20160 fn cast(syntax: SyntaxNode) -> Option<Self> {
20161 if Self::can_cast(syntax.kind()) {
20162 Some(Self { syntax })
20163 } else {
20164 None
20165 }
20166 }
20167 #[inline]
20168 fn syntax(&self) -> &SyntaxNode {
20169 &self.syntax
20170 }
20171}
20172impl AstNode for DisableRule {
20173 #[inline]
20174 fn can_cast(kind: SyntaxKind) -> bool {
20175 kind == SyntaxKind::DISABLE_RULE
20176 }
20177 #[inline]
20178 fn cast(syntax: SyntaxNode) -> Option<Self> {
20179 if Self::can_cast(syntax.kind()) {
20180 Some(Self { syntax })
20181 } else {
20182 None
20183 }
20184 }
20185 #[inline]
20186 fn syntax(&self) -> &SyntaxNode {
20187 &self.syntax
20188 }
20189}
20190impl AstNode for DisableTrigger {
20191 #[inline]
20192 fn can_cast(kind: SyntaxKind) -> bool {
20193 kind == SyntaxKind::DISABLE_TRIGGER
20194 }
20195 #[inline]
20196 fn cast(syntax: SyntaxNode) -> Option<Self> {
20197 if Self::can_cast(syntax.kind()) {
20198 Some(Self { syntax })
20199 } else {
20200 None
20201 }
20202 }
20203 #[inline]
20204 fn syntax(&self) -> &SyntaxNode {
20205 &self.syntax
20206 }
20207}
20208impl AstNode for Discard {
20209 #[inline]
20210 fn can_cast(kind: SyntaxKind) -> bool {
20211 kind == SyntaxKind::DISCARD
20212 }
20213 #[inline]
20214 fn cast(syntax: SyntaxNode) -> Option<Self> {
20215 if Self::can_cast(syntax.kind()) {
20216 Some(Self { syntax })
20217 } else {
20218 None
20219 }
20220 }
20221 #[inline]
20222 fn syntax(&self) -> &SyntaxNode {
20223 &self.syntax
20224 }
20225}
20226impl AstNode for DistinctClause {
20227 #[inline]
20228 fn can_cast(kind: SyntaxKind) -> bool {
20229 kind == SyntaxKind::DISTINCT_CLAUSE
20230 }
20231 #[inline]
20232 fn cast(syntax: SyntaxNode) -> Option<Self> {
20233 if Self::can_cast(syntax.kind()) {
20234 Some(Self { syntax })
20235 } else {
20236 None
20237 }
20238 }
20239 #[inline]
20240 fn syntax(&self) -> &SyntaxNode {
20241 &self.syntax
20242 }
20243}
20244impl AstNode for Do {
20245 #[inline]
20246 fn can_cast(kind: SyntaxKind) -> bool {
20247 kind == SyntaxKind::DO
20248 }
20249 #[inline]
20250 fn cast(syntax: SyntaxNode) -> Option<Self> {
20251 if Self::can_cast(syntax.kind()) {
20252 Some(Self { syntax })
20253 } else {
20254 None
20255 }
20256 }
20257 #[inline]
20258 fn syntax(&self) -> &SyntaxNode {
20259 &self.syntax
20260 }
20261}
20262impl AstNode for DoubleType {
20263 #[inline]
20264 fn can_cast(kind: SyntaxKind) -> bool {
20265 kind == SyntaxKind::DOUBLE_TYPE
20266 }
20267 #[inline]
20268 fn cast(syntax: SyntaxNode) -> Option<Self> {
20269 if Self::can_cast(syntax.kind()) {
20270 Some(Self { syntax })
20271 } else {
20272 None
20273 }
20274 }
20275 #[inline]
20276 fn syntax(&self) -> &SyntaxNode {
20277 &self.syntax
20278 }
20279}
20280impl AstNode for Drop {
20281 #[inline]
20282 fn can_cast(kind: SyntaxKind) -> bool {
20283 kind == SyntaxKind::DROP
20284 }
20285 #[inline]
20286 fn cast(syntax: SyntaxNode) -> Option<Self> {
20287 if Self::can_cast(syntax.kind()) {
20288 Some(Self { syntax })
20289 } else {
20290 None
20291 }
20292 }
20293 #[inline]
20294 fn syntax(&self) -> &SyntaxNode {
20295 &self.syntax
20296 }
20297}
20298impl AstNode for DropAccessMethod {
20299 #[inline]
20300 fn can_cast(kind: SyntaxKind) -> bool {
20301 kind == SyntaxKind::DROP_ACCESS_METHOD
20302 }
20303 #[inline]
20304 fn cast(syntax: SyntaxNode) -> Option<Self> {
20305 if Self::can_cast(syntax.kind()) {
20306 Some(Self { syntax })
20307 } else {
20308 None
20309 }
20310 }
20311 #[inline]
20312 fn syntax(&self) -> &SyntaxNode {
20313 &self.syntax
20314 }
20315}
20316impl AstNode for DropAggregate {
20317 #[inline]
20318 fn can_cast(kind: SyntaxKind) -> bool {
20319 kind == SyntaxKind::DROP_AGGREGATE
20320 }
20321 #[inline]
20322 fn cast(syntax: SyntaxNode) -> Option<Self> {
20323 if Self::can_cast(syntax.kind()) {
20324 Some(Self { syntax })
20325 } else {
20326 None
20327 }
20328 }
20329 #[inline]
20330 fn syntax(&self) -> &SyntaxNode {
20331 &self.syntax
20332 }
20333}
20334impl AstNode for DropCast {
20335 #[inline]
20336 fn can_cast(kind: SyntaxKind) -> bool {
20337 kind == SyntaxKind::DROP_CAST
20338 }
20339 #[inline]
20340 fn cast(syntax: SyntaxNode) -> Option<Self> {
20341 if Self::can_cast(syntax.kind()) {
20342 Some(Self { syntax })
20343 } else {
20344 None
20345 }
20346 }
20347 #[inline]
20348 fn syntax(&self) -> &SyntaxNode {
20349 &self.syntax
20350 }
20351}
20352impl AstNode for DropCollation {
20353 #[inline]
20354 fn can_cast(kind: SyntaxKind) -> bool {
20355 kind == SyntaxKind::DROP_COLLATION
20356 }
20357 #[inline]
20358 fn cast(syntax: SyntaxNode) -> Option<Self> {
20359 if Self::can_cast(syntax.kind()) {
20360 Some(Self { syntax })
20361 } else {
20362 None
20363 }
20364 }
20365 #[inline]
20366 fn syntax(&self) -> &SyntaxNode {
20367 &self.syntax
20368 }
20369}
20370impl AstNode for DropColumn {
20371 #[inline]
20372 fn can_cast(kind: SyntaxKind) -> bool {
20373 kind == SyntaxKind::DROP_COLUMN
20374 }
20375 #[inline]
20376 fn cast(syntax: SyntaxNode) -> Option<Self> {
20377 if Self::can_cast(syntax.kind()) {
20378 Some(Self { syntax })
20379 } else {
20380 None
20381 }
20382 }
20383 #[inline]
20384 fn syntax(&self) -> &SyntaxNode {
20385 &self.syntax
20386 }
20387}
20388impl AstNode for DropConstraint {
20389 #[inline]
20390 fn can_cast(kind: SyntaxKind) -> bool {
20391 kind == SyntaxKind::DROP_CONSTRAINT
20392 }
20393 #[inline]
20394 fn cast(syntax: SyntaxNode) -> Option<Self> {
20395 if Self::can_cast(syntax.kind()) {
20396 Some(Self { syntax })
20397 } else {
20398 None
20399 }
20400 }
20401 #[inline]
20402 fn syntax(&self) -> &SyntaxNode {
20403 &self.syntax
20404 }
20405}
20406impl AstNode for DropConversion {
20407 #[inline]
20408 fn can_cast(kind: SyntaxKind) -> bool {
20409 kind == SyntaxKind::DROP_CONVERSION
20410 }
20411 #[inline]
20412 fn cast(syntax: SyntaxNode) -> Option<Self> {
20413 if Self::can_cast(syntax.kind()) {
20414 Some(Self { syntax })
20415 } else {
20416 None
20417 }
20418 }
20419 #[inline]
20420 fn syntax(&self) -> &SyntaxNode {
20421 &self.syntax
20422 }
20423}
20424impl AstNode for DropDatabase {
20425 #[inline]
20426 fn can_cast(kind: SyntaxKind) -> bool {
20427 kind == SyntaxKind::DROP_DATABASE
20428 }
20429 #[inline]
20430 fn cast(syntax: SyntaxNode) -> Option<Self> {
20431 if Self::can_cast(syntax.kind()) {
20432 Some(Self { syntax })
20433 } else {
20434 None
20435 }
20436 }
20437 #[inline]
20438 fn syntax(&self) -> &SyntaxNode {
20439 &self.syntax
20440 }
20441}
20442impl AstNode for DropDefault {
20443 #[inline]
20444 fn can_cast(kind: SyntaxKind) -> bool {
20445 kind == SyntaxKind::DROP_DEFAULT
20446 }
20447 #[inline]
20448 fn cast(syntax: SyntaxNode) -> Option<Self> {
20449 if Self::can_cast(syntax.kind()) {
20450 Some(Self { syntax })
20451 } else {
20452 None
20453 }
20454 }
20455 #[inline]
20456 fn syntax(&self) -> &SyntaxNode {
20457 &self.syntax
20458 }
20459}
20460impl AstNode for DropDomain {
20461 #[inline]
20462 fn can_cast(kind: SyntaxKind) -> bool {
20463 kind == SyntaxKind::DROP_DOMAIN
20464 }
20465 #[inline]
20466 fn cast(syntax: SyntaxNode) -> Option<Self> {
20467 if Self::can_cast(syntax.kind()) {
20468 Some(Self { syntax })
20469 } else {
20470 None
20471 }
20472 }
20473 #[inline]
20474 fn syntax(&self) -> &SyntaxNode {
20475 &self.syntax
20476 }
20477}
20478impl AstNode for DropEventTrigger {
20479 #[inline]
20480 fn can_cast(kind: SyntaxKind) -> bool {
20481 kind == SyntaxKind::DROP_EVENT_TRIGGER
20482 }
20483 #[inline]
20484 fn cast(syntax: SyntaxNode) -> Option<Self> {
20485 if Self::can_cast(syntax.kind()) {
20486 Some(Self { syntax })
20487 } else {
20488 None
20489 }
20490 }
20491 #[inline]
20492 fn syntax(&self) -> &SyntaxNode {
20493 &self.syntax
20494 }
20495}
20496impl AstNode for DropExpression {
20497 #[inline]
20498 fn can_cast(kind: SyntaxKind) -> bool {
20499 kind == SyntaxKind::DROP_EXPRESSION
20500 }
20501 #[inline]
20502 fn cast(syntax: SyntaxNode) -> Option<Self> {
20503 if Self::can_cast(syntax.kind()) {
20504 Some(Self { syntax })
20505 } else {
20506 None
20507 }
20508 }
20509 #[inline]
20510 fn syntax(&self) -> &SyntaxNode {
20511 &self.syntax
20512 }
20513}
20514impl AstNode for DropExtension {
20515 #[inline]
20516 fn can_cast(kind: SyntaxKind) -> bool {
20517 kind == SyntaxKind::DROP_EXTENSION
20518 }
20519 #[inline]
20520 fn cast(syntax: SyntaxNode) -> Option<Self> {
20521 if Self::can_cast(syntax.kind()) {
20522 Some(Self { syntax })
20523 } else {
20524 None
20525 }
20526 }
20527 #[inline]
20528 fn syntax(&self) -> &SyntaxNode {
20529 &self.syntax
20530 }
20531}
20532impl AstNode for DropForeignDataWrapper {
20533 #[inline]
20534 fn can_cast(kind: SyntaxKind) -> bool {
20535 kind == SyntaxKind::DROP_FOREIGN_DATA_WRAPPER
20536 }
20537 #[inline]
20538 fn cast(syntax: SyntaxNode) -> Option<Self> {
20539 if Self::can_cast(syntax.kind()) {
20540 Some(Self { syntax })
20541 } else {
20542 None
20543 }
20544 }
20545 #[inline]
20546 fn syntax(&self) -> &SyntaxNode {
20547 &self.syntax
20548 }
20549}
20550impl AstNode for DropForeignTable {
20551 #[inline]
20552 fn can_cast(kind: SyntaxKind) -> bool {
20553 kind == SyntaxKind::DROP_FOREIGN_TABLE
20554 }
20555 #[inline]
20556 fn cast(syntax: SyntaxNode) -> Option<Self> {
20557 if Self::can_cast(syntax.kind()) {
20558 Some(Self { syntax })
20559 } else {
20560 None
20561 }
20562 }
20563 #[inline]
20564 fn syntax(&self) -> &SyntaxNode {
20565 &self.syntax
20566 }
20567}
20568impl AstNode for DropFunction {
20569 #[inline]
20570 fn can_cast(kind: SyntaxKind) -> bool {
20571 kind == SyntaxKind::DROP_FUNCTION
20572 }
20573 #[inline]
20574 fn cast(syntax: SyntaxNode) -> Option<Self> {
20575 if Self::can_cast(syntax.kind()) {
20576 Some(Self { syntax })
20577 } else {
20578 None
20579 }
20580 }
20581 #[inline]
20582 fn syntax(&self) -> &SyntaxNode {
20583 &self.syntax
20584 }
20585}
20586impl AstNode for DropGroup {
20587 #[inline]
20588 fn can_cast(kind: SyntaxKind) -> bool {
20589 kind == SyntaxKind::DROP_GROUP
20590 }
20591 #[inline]
20592 fn cast(syntax: SyntaxNode) -> Option<Self> {
20593 if Self::can_cast(syntax.kind()) {
20594 Some(Self { syntax })
20595 } else {
20596 None
20597 }
20598 }
20599 #[inline]
20600 fn syntax(&self) -> &SyntaxNode {
20601 &self.syntax
20602 }
20603}
20604impl AstNode for DropIdentity {
20605 #[inline]
20606 fn can_cast(kind: SyntaxKind) -> bool {
20607 kind == SyntaxKind::DROP_IDENTITY
20608 }
20609 #[inline]
20610 fn cast(syntax: SyntaxNode) -> Option<Self> {
20611 if Self::can_cast(syntax.kind()) {
20612 Some(Self { syntax })
20613 } else {
20614 None
20615 }
20616 }
20617 #[inline]
20618 fn syntax(&self) -> &SyntaxNode {
20619 &self.syntax
20620 }
20621}
20622impl AstNode for DropIndex {
20623 #[inline]
20624 fn can_cast(kind: SyntaxKind) -> bool {
20625 kind == SyntaxKind::DROP_INDEX
20626 }
20627 #[inline]
20628 fn cast(syntax: SyntaxNode) -> Option<Self> {
20629 if Self::can_cast(syntax.kind()) {
20630 Some(Self { syntax })
20631 } else {
20632 None
20633 }
20634 }
20635 #[inline]
20636 fn syntax(&self) -> &SyntaxNode {
20637 &self.syntax
20638 }
20639}
20640impl AstNode for DropLanguage {
20641 #[inline]
20642 fn can_cast(kind: SyntaxKind) -> bool {
20643 kind == SyntaxKind::DROP_LANGUAGE
20644 }
20645 #[inline]
20646 fn cast(syntax: SyntaxNode) -> Option<Self> {
20647 if Self::can_cast(syntax.kind()) {
20648 Some(Self { syntax })
20649 } else {
20650 None
20651 }
20652 }
20653 #[inline]
20654 fn syntax(&self) -> &SyntaxNode {
20655 &self.syntax
20656 }
20657}
20658impl AstNode for DropMaterializedView {
20659 #[inline]
20660 fn can_cast(kind: SyntaxKind) -> bool {
20661 kind == SyntaxKind::DROP_MATERIALIZED_VIEW
20662 }
20663 #[inline]
20664 fn cast(syntax: SyntaxNode) -> Option<Self> {
20665 if Self::can_cast(syntax.kind()) {
20666 Some(Self { syntax })
20667 } else {
20668 None
20669 }
20670 }
20671 #[inline]
20672 fn syntax(&self) -> &SyntaxNode {
20673 &self.syntax
20674 }
20675}
20676impl AstNode for DropNotNull {
20677 #[inline]
20678 fn can_cast(kind: SyntaxKind) -> bool {
20679 kind == SyntaxKind::DROP_NOT_NULL
20680 }
20681 #[inline]
20682 fn cast(syntax: SyntaxNode) -> Option<Self> {
20683 if Self::can_cast(syntax.kind()) {
20684 Some(Self { syntax })
20685 } else {
20686 None
20687 }
20688 }
20689 #[inline]
20690 fn syntax(&self) -> &SyntaxNode {
20691 &self.syntax
20692 }
20693}
20694impl AstNode for DropOpClassOption {
20695 #[inline]
20696 fn can_cast(kind: SyntaxKind) -> bool {
20697 kind == SyntaxKind::DROP_OP_CLASS_OPTION
20698 }
20699 #[inline]
20700 fn cast(syntax: SyntaxNode) -> Option<Self> {
20701 if Self::can_cast(syntax.kind()) {
20702 Some(Self { syntax })
20703 } else {
20704 None
20705 }
20706 }
20707 #[inline]
20708 fn syntax(&self) -> &SyntaxNode {
20709 &self.syntax
20710 }
20711}
20712impl AstNode for DropOpClassOptionList {
20713 #[inline]
20714 fn can_cast(kind: SyntaxKind) -> bool {
20715 kind == SyntaxKind::DROP_OP_CLASS_OPTION_LIST
20716 }
20717 #[inline]
20718 fn cast(syntax: SyntaxNode) -> Option<Self> {
20719 if Self::can_cast(syntax.kind()) {
20720 Some(Self { syntax })
20721 } else {
20722 None
20723 }
20724 }
20725 #[inline]
20726 fn syntax(&self) -> &SyntaxNode {
20727 &self.syntax
20728 }
20729}
20730impl AstNode for DropOpClassOptions {
20731 #[inline]
20732 fn can_cast(kind: SyntaxKind) -> bool {
20733 kind == SyntaxKind::DROP_OP_CLASS_OPTIONS
20734 }
20735 #[inline]
20736 fn cast(syntax: SyntaxNode) -> Option<Self> {
20737 if Self::can_cast(syntax.kind()) {
20738 Some(Self { syntax })
20739 } else {
20740 None
20741 }
20742 }
20743 #[inline]
20744 fn syntax(&self) -> &SyntaxNode {
20745 &self.syntax
20746 }
20747}
20748impl AstNode for DropOperator {
20749 #[inline]
20750 fn can_cast(kind: SyntaxKind) -> bool {
20751 kind == SyntaxKind::DROP_OPERATOR
20752 }
20753 #[inline]
20754 fn cast(syntax: SyntaxNode) -> Option<Self> {
20755 if Self::can_cast(syntax.kind()) {
20756 Some(Self { syntax })
20757 } else {
20758 None
20759 }
20760 }
20761 #[inline]
20762 fn syntax(&self) -> &SyntaxNode {
20763 &self.syntax
20764 }
20765}
20766impl AstNode for DropOperatorClass {
20767 #[inline]
20768 fn can_cast(kind: SyntaxKind) -> bool {
20769 kind == SyntaxKind::DROP_OPERATOR_CLASS
20770 }
20771 #[inline]
20772 fn cast(syntax: SyntaxNode) -> Option<Self> {
20773 if Self::can_cast(syntax.kind()) {
20774 Some(Self { syntax })
20775 } else {
20776 None
20777 }
20778 }
20779 #[inline]
20780 fn syntax(&self) -> &SyntaxNode {
20781 &self.syntax
20782 }
20783}
20784impl AstNode for DropOperatorFamily {
20785 #[inline]
20786 fn can_cast(kind: SyntaxKind) -> bool {
20787 kind == SyntaxKind::DROP_OPERATOR_FAMILY
20788 }
20789 #[inline]
20790 fn cast(syntax: SyntaxNode) -> Option<Self> {
20791 if Self::can_cast(syntax.kind()) {
20792 Some(Self { syntax })
20793 } else {
20794 None
20795 }
20796 }
20797 #[inline]
20798 fn syntax(&self) -> &SyntaxNode {
20799 &self.syntax
20800 }
20801}
20802impl AstNode for DropOwned {
20803 #[inline]
20804 fn can_cast(kind: SyntaxKind) -> bool {
20805 kind == SyntaxKind::DROP_OWNED
20806 }
20807 #[inline]
20808 fn cast(syntax: SyntaxNode) -> Option<Self> {
20809 if Self::can_cast(syntax.kind()) {
20810 Some(Self { syntax })
20811 } else {
20812 None
20813 }
20814 }
20815 #[inline]
20816 fn syntax(&self) -> &SyntaxNode {
20817 &self.syntax
20818 }
20819}
20820impl AstNode for DropPolicy {
20821 #[inline]
20822 fn can_cast(kind: SyntaxKind) -> bool {
20823 kind == SyntaxKind::DROP_POLICY
20824 }
20825 #[inline]
20826 fn cast(syntax: SyntaxNode) -> Option<Self> {
20827 if Self::can_cast(syntax.kind()) {
20828 Some(Self { syntax })
20829 } else {
20830 None
20831 }
20832 }
20833 #[inline]
20834 fn syntax(&self) -> &SyntaxNode {
20835 &self.syntax
20836 }
20837}
20838impl AstNode for DropProcedure {
20839 #[inline]
20840 fn can_cast(kind: SyntaxKind) -> bool {
20841 kind == SyntaxKind::DROP_PROCEDURE
20842 }
20843 #[inline]
20844 fn cast(syntax: SyntaxNode) -> Option<Self> {
20845 if Self::can_cast(syntax.kind()) {
20846 Some(Self { syntax })
20847 } else {
20848 None
20849 }
20850 }
20851 #[inline]
20852 fn syntax(&self) -> &SyntaxNode {
20853 &self.syntax
20854 }
20855}
20856impl AstNode for DropPublication {
20857 #[inline]
20858 fn can_cast(kind: SyntaxKind) -> bool {
20859 kind == SyntaxKind::DROP_PUBLICATION
20860 }
20861 #[inline]
20862 fn cast(syntax: SyntaxNode) -> Option<Self> {
20863 if Self::can_cast(syntax.kind()) {
20864 Some(Self { syntax })
20865 } else {
20866 None
20867 }
20868 }
20869 #[inline]
20870 fn syntax(&self) -> &SyntaxNode {
20871 &self.syntax
20872 }
20873}
20874impl AstNode for DropRole {
20875 #[inline]
20876 fn can_cast(kind: SyntaxKind) -> bool {
20877 kind == SyntaxKind::DROP_ROLE
20878 }
20879 #[inline]
20880 fn cast(syntax: SyntaxNode) -> Option<Self> {
20881 if Self::can_cast(syntax.kind()) {
20882 Some(Self { syntax })
20883 } else {
20884 None
20885 }
20886 }
20887 #[inline]
20888 fn syntax(&self) -> &SyntaxNode {
20889 &self.syntax
20890 }
20891}
20892impl AstNode for DropRoutine {
20893 #[inline]
20894 fn can_cast(kind: SyntaxKind) -> bool {
20895 kind == SyntaxKind::DROP_ROUTINE
20896 }
20897 #[inline]
20898 fn cast(syntax: SyntaxNode) -> Option<Self> {
20899 if Self::can_cast(syntax.kind()) {
20900 Some(Self { syntax })
20901 } else {
20902 None
20903 }
20904 }
20905 #[inline]
20906 fn syntax(&self) -> &SyntaxNode {
20907 &self.syntax
20908 }
20909}
20910impl AstNode for DropRule {
20911 #[inline]
20912 fn can_cast(kind: SyntaxKind) -> bool {
20913 kind == SyntaxKind::DROP_RULE
20914 }
20915 #[inline]
20916 fn cast(syntax: SyntaxNode) -> Option<Self> {
20917 if Self::can_cast(syntax.kind()) {
20918 Some(Self { syntax })
20919 } else {
20920 None
20921 }
20922 }
20923 #[inline]
20924 fn syntax(&self) -> &SyntaxNode {
20925 &self.syntax
20926 }
20927}
20928impl AstNode for DropSchema {
20929 #[inline]
20930 fn can_cast(kind: SyntaxKind) -> bool {
20931 kind == SyntaxKind::DROP_SCHEMA
20932 }
20933 #[inline]
20934 fn cast(syntax: SyntaxNode) -> Option<Self> {
20935 if Self::can_cast(syntax.kind()) {
20936 Some(Self { syntax })
20937 } else {
20938 None
20939 }
20940 }
20941 #[inline]
20942 fn syntax(&self) -> &SyntaxNode {
20943 &self.syntax
20944 }
20945}
20946impl AstNode for DropSequence {
20947 #[inline]
20948 fn can_cast(kind: SyntaxKind) -> bool {
20949 kind == SyntaxKind::DROP_SEQUENCE
20950 }
20951 #[inline]
20952 fn cast(syntax: SyntaxNode) -> Option<Self> {
20953 if Self::can_cast(syntax.kind()) {
20954 Some(Self { syntax })
20955 } else {
20956 None
20957 }
20958 }
20959 #[inline]
20960 fn syntax(&self) -> &SyntaxNode {
20961 &self.syntax
20962 }
20963}
20964impl AstNode for DropServer {
20965 #[inline]
20966 fn can_cast(kind: SyntaxKind) -> bool {
20967 kind == SyntaxKind::DROP_SERVER
20968 }
20969 #[inline]
20970 fn cast(syntax: SyntaxNode) -> Option<Self> {
20971 if Self::can_cast(syntax.kind()) {
20972 Some(Self { syntax })
20973 } else {
20974 None
20975 }
20976 }
20977 #[inline]
20978 fn syntax(&self) -> &SyntaxNode {
20979 &self.syntax
20980 }
20981}
20982impl AstNode for DropStatistics {
20983 #[inline]
20984 fn can_cast(kind: SyntaxKind) -> bool {
20985 kind == SyntaxKind::DROP_STATISTICS
20986 }
20987 #[inline]
20988 fn cast(syntax: SyntaxNode) -> Option<Self> {
20989 if Self::can_cast(syntax.kind()) {
20990 Some(Self { syntax })
20991 } else {
20992 None
20993 }
20994 }
20995 #[inline]
20996 fn syntax(&self) -> &SyntaxNode {
20997 &self.syntax
20998 }
20999}
21000impl AstNode for DropSubscription {
21001 #[inline]
21002 fn can_cast(kind: SyntaxKind) -> bool {
21003 kind == SyntaxKind::DROP_SUBSCRIPTION
21004 }
21005 #[inline]
21006 fn cast(syntax: SyntaxNode) -> Option<Self> {
21007 if Self::can_cast(syntax.kind()) {
21008 Some(Self { syntax })
21009 } else {
21010 None
21011 }
21012 }
21013 #[inline]
21014 fn syntax(&self) -> &SyntaxNode {
21015 &self.syntax
21016 }
21017}
21018impl AstNode for DropTable {
21019 #[inline]
21020 fn can_cast(kind: SyntaxKind) -> bool {
21021 kind == SyntaxKind::DROP_TABLE
21022 }
21023 #[inline]
21024 fn cast(syntax: SyntaxNode) -> Option<Self> {
21025 if Self::can_cast(syntax.kind()) {
21026 Some(Self { syntax })
21027 } else {
21028 None
21029 }
21030 }
21031 #[inline]
21032 fn syntax(&self) -> &SyntaxNode {
21033 &self.syntax
21034 }
21035}
21036impl AstNode for DropTablespace {
21037 #[inline]
21038 fn can_cast(kind: SyntaxKind) -> bool {
21039 kind == SyntaxKind::DROP_TABLESPACE
21040 }
21041 #[inline]
21042 fn cast(syntax: SyntaxNode) -> Option<Self> {
21043 if Self::can_cast(syntax.kind()) {
21044 Some(Self { syntax })
21045 } else {
21046 None
21047 }
21048 }
21049 #[inline]
21050 fn syntax(&self) -> &SyntaxNode {
21051 &self.syntax
21052 }
21053}
21054impl AstNode for DropTextSearchConfig {
21055 #[inline]
21056 fn can_cast(kind: SyntaxKind) -> bool {
21057 kind == SyntaxKind::DROP_TEXT_SEARCH_CONFIG
21058 }
21059 #[inline]
21060 fn cast(syntax: SyntaxNode) -> Option<Self> {
21061 if Self::can_cast(syntax.kind()) {
21062 Some(Self { syntax })
21063 } else {
21064 None
21065 }
21066 }
21067 #[inline]
21068 fn syntax(&self) -> &SyntaxNode {
21069 &self.syntax
21070 }
21071}
21072impl AstNode for DropTextSearchDict {
21073 #[inline]
21074 fn can_cast(kind: SyntaxKind) -> bool {
21075 kind == SyntaxKind::DROP_TEXT_SEARCH_DICT
21076 }
21077 #[inline]
21078 fn cast(syntax: SyntaxNode) -> Option<Self> {
21079 if Self::can_cast(syntax.kind()) {
21080 Some(Self { syntax })
21081 } else {
21082 None
21083 }
21084 }
21085 #[inline]
21086 fn syntax(&self) -> &SyntaxNode {
21087 &self.syntax
21088 }
21089}
21090impl AstNode for DropTextSearchParser {
21091 #[inline]
21092 fn can_cast(kind: SyntaxKind) -> bool {
21093 kind == SyntaxKind::DROP_TEXT_SEARCH_PARSER
21094 }
21095 #[inline]
21096 fn cast(syntax: SyntaxNode) -> Option<Self> {
21097 if Self::can_cast(syntax.kind()) {
21098 Some(Self { syntax })
21099 } else {
21100 None
21101 }
21102 }
21103 #[inline]
21104 fn syntax(&self) -> &SyntaxNode {
21105 &self.syntax
21106 }
21107}
21108impl AstNode for DropTextSearchTemplate {
21109 #[inline]
21110 fn can_cast(kind: SyntaxKind) -> bool {
21111 kind == SyntaxKind::DROP_TEXT_SEARCH_TEMPLATE
21112 }
21113 #[inline]
21114 fn cast(syntax: SyntaxNode) -> Option<Self> {
21115 if Self::can_cast(syntax.kind()) {
21116 Some(Self { syntax })
21117 } else {
21118 None
21119 }
21120 }
21121 #[inline]
21122 fn syntax(&self) -> &SyntaxNode {
21123 &self.syntax
21124 }
21125}
21126impl AstNode for DropTransform {
21127 #[inline]
21128 fn can_cast(kind: SyntaxKind) -> bool {
21129 kind == SyntaxKind::DROP_TRANSFORM
21130 }
21131 #[inline]
21132 fn cast(syntax: SyntaxNode) -> Option<Self> {
21133 if Self::can_cast(syntax.kind()) {
21134 Some(Self { syntax })
21135 } else {
21136 None
21137 }
21138 }
21139 #[inline]
21140 fn syntax(&self) -> &SyntaxNode {
21141 &self.syntax
21142 }
21143}
21144impl AstNode for DropTrigger {
21145 #[inline]
21146 fn can_cast(kind: SyntaxKind) -> bool {
21147 kind == SyntaxKind::DROP_TRIGGER
21148 }
21149 #[inline]
21150 fn cast(syntax: SyntaxNode) -> Option<Self> {
21151 if Self::can_cast(syntax.kind()) {
21152 Some(Self { syntax })
21153 } else {
21154 None
21155 }
21156 }
21157 #[inline]
21158 fn syntax(&self) -> &SyntaxNode {
21159 &self.syntax
21160 }
21161}
21162impl AstNode for DropType {
21163 #[inline]
21164 fn can_cast(kind: SyntaxKind) -> bool {
21165 kind == SyntaxKind::DROP_TYPE
21166 }
21167 #[inline]
21168 fn cast(syntax: SyntaxNode) -> Option<Self> {
21169 if Self::can_cast(syntax.kind()) {
21170 Some(Self { syntax })
21171 } else {
21172 None
21173 }
21174 }
21175 #[inline]
21176 fn syntax(&self) -> &SyntaxNode {
21177 &self.syntax
21178 }
21179}
21180impl AstNode for DropUser {
21181 #[inline]
21182 fn can_cast(kind: SyntaxKind) -> bool {
21183 kind == SyntaxKind::DROP_USER
21184 }
21185 #[inline]
21186 fn cast(syntax: SyntaxNode) -> Option<Self> {
21187 if Self::can_cast(syntax.kind()) {
21188 Some(Self { syntax })
21189 } else {
21190 None
21191 }
21192 }
21193 #[inline]
21194 fn syntax(&self) -> &SyntaxNode {
21195 &self.syntax
21196 }
21197}
21198impl AstNode for DropUserMapping {
21199 #[inline]
21200 fn can_cast(kind: SyntaxKind) -> bool {
21201 kind == SyntaxKind::DROP_USER_MAPPING
21202 }
21203 #[inline]
21204 fn cast(syntax: SyntaxNode) -> Option<Self> {
21205 if Self::can_cast(syntax.kind()) {
21206 Some(Self { syntax })
21207 } else {
21208 None
21209 }
21210 }
21211 #[inline]
21212 fn syntax(&self) -> &SyntaxNode {
21213 &self.syntax
21214 }
21215}
21216impl AstNode for DropView {
21217 #[inline]
21218 fn can_cast(kind: SyntaxKind) -> bool {
21219 kind == SyntaxKind::DROP_VIEW
21220 }
21221 #[inline]
21222 fn cast(syntax: SyntaxNode) -> Option<Self> {
21223 if Self::can_cast(syntax.kind()) {
21224 Some(Self { syntax })
21225 } else {
21226 None
21227 }
21228 }
21229 #[inline]
21230 fn syntax(&self) -> &SyntaxNode {
21231 &self.syntax
21232 }
21233}
21234impl AstNode for ElseClause {
21235 #[inline]
21236 fn can_cast(kind: SyntaxKind) -> bool {
21237 kind == SyntaxKind::ELSE_CLAUSE
21238 }
21239 #[inline]
21240 fn cast(syntax: SyntaxNode) -> Option<Self> {
21241 if Self::can_cast(syntax.kind()) {
21242 Some(Self { syntax })
21243 } else {
21244 None
21245 }
21246 }
21247 #[inline]
21248 fn syntax(&self) -> &SyntaxNode {
21249 &self.syntax
21250 }
21251}
21252impl AstNode for EnableAlwaysRule {
21253 #[inline]
21254 fn can_cast(kind: SyntaxKind) -> bool {
21255 kind == SyntaxKind::ENABLE_ALWAYS_RULE
21256 }
21257 #[inline]
21258 fn cast(syntax: SyntaxNode) -> Option<Self> {
21259 if Self::can_cast(syntax.kind()) {
21260 Some(Self { syntax })
21261 } else {
21262 None
21263 }
21264 }
21265 #[inline]
21266 fn syntax(&self) -> &SyntaxNode {
21267 &self.syntax
21268 }
21269}
21270impl AstNode for EnableAlwaysTrigger {
21271 #[inline]
21272 fn can_cast(kind: SyntaxKind) -> bool {
21273 kind == SyntaxKind::ENABLE_ALWAYS_TRIGGER
21274 }
21275 #[inline]
21276 fn cast(syntax: SyntaxNode) -> Option<Self> {
21277 if Self::can_cast(syntax.kind()) {
21278 Some(Self { syntax })
21279 } else {
21280 None
21281 }
21282 }
21283 #[inline]
21284 fn syntax(&self) -> &SyntaxNode {
21285 &self.syntax
21286 }
21287}
21288impl AstNode for EnableReplicaRule {
21289 #[inline]
21290 fn can_cast(kind: SyntaxKind) -> bool {
21291 kind == SyntaxKind::ENABLE_REPLICA_RULE
21292 }
21293 #[inline]
21294 fn cast(syntax: SyntaxNode) -> Option<Self> {
21295 if Self::can_cast(syntax.kind()) {
21296 Some(Self { syntax })
21297 } else {
21298 None
21299 }
21300 }
21301 #[inline]
21302 fn syntax(&self) -> &SyntaxNode {
21303 &self.syntax
21304 }
21305}
21306impl AstNode for EnableReplicaTrigger {
21307 #[inline]
21308 fn can_cast(kind: SyntaxKind) -> bool {
21309 kind == SyntaxKind::ENABLE_REPLICA_TRIGGER
21310 }
21311 #[inline]
21312 fn cast(syntax: SyntaxNode) -> Option<Self> {
21313 if Self::can_cast(syntax.kind()) {
21314 Some(Self { syntax })
21315 } else {
21316 None
21317 }
21318 }
21319 #[inline]
21320 fn syntax(&self) -> &SyntaxNode {
21321 &self.syntax
21322 }
21323}
21324impl AstNode for EnableRls {
21325 #[inline]
21326 fn can_cast(kind: SyntaxKind) -> bool {
21327 kind == SyntaxKind::ENABLE_RLS
21328 }
21329 #[inline]
21330 fn cast(syntax: SyntaxNode) -> Option<Self> {
21331 if Self::can_cast(syntax.kind()) {
21332 Some(Self { syntax })
21333 } else {
21334 None
21335 }
21336 }
21337 #[inline]
21338 fn syntax(&self) -> &SyntaxNode {
21339 &self.syntax
21340 }
21341}
21342impl AstNode for EnableRule {
21343 #[inline]
21344 fn can_cast(kind: SyntaxKind) -> bool {
21345 kind == SyntaxKind::ENABLE_RULE
21346 }
21347 #[inline]
21348 fn cast(syntax: SyntaxNode) -> Option<Self> {
21349 if Self::can_cast(syntax.kind()) {
21350 Some(Self { syntax })
21351 } else {
21352 None
21353 }
21354 }
21355 #[inline]
21356 fn syntax(&self) -> &SyntaxNode {
21357 &self.syntax
21358 }
21359}
21360impl AstNode for EnableTrigger {
21361 #[inline]
21362 fn can_cast(kind: SyntaxKind) -> bool {
21363 kind == SyntaxKind::ENABLE_TRIGGER
21364 }
21365 #[inline]
21366 fn cast(syntax: SyntaxNode) -> Option<Self> {
21367 if Self::can_cast(syntax.kind()) {
21368 Some(Self { syntax })
21369 } else {
21370 None
21371 }
21372 }
21373 #[inline]
21374 fn syntax(&self) -> &SyntaxNode {
21375 &self.syntax
21376 }
21377}
21378impl AstNode for Enforced {
21379 #[inline]
21380 fn can_cast(kind: SyntaxKind) -> bool {
21381 kind == SyntaxKind::ENFORCED
21382 }
21383 #[inline]
21384 fn cast(syntax: SyntaxNode) -> Option<Self> {
21385 if Self::can_cast(syntax.kind()) {
21386 Some(Self { syntax })
21387 } else {
21388 None
21389 }
21390 }
21391 #[inline]
21392 fn syntax(&self) -> &SyntaxNode {
21393 &self.syntax
21394 }
21395}
21396impl AstNode for EventTriggerWhen {
21397 #[inline]
21398 fn can_cast(kind: SyntaxKind) -> bool {
21399 kind == SyntaxKind::EVENT_TRIGGER_WHEN
21400 }
21401 #[inline]
21402 fn cast(syntax: SyntaxNode) -> Option<Self> {
21403 if Self::can_cast(syntax.kind()) {
21404 Some(Self { syntax })
21405 } else {
21406 None
21407 }
21408 }
21409 #[inline]
21410 fn syntax(&self) -> &SyntaxNode {
21411 &self.syntax
21412 }
21413}
21414impl AstNode for EventTriggerWhenClause {
21415 #[inline]
21416 fn can_cast(kind: SyntaxKind) -> bool {
21417 kind == SyntaxKind::EVENT_TRIGGER_WHEN_CLAUSE
21418 }
21419 #[inline]
21420 fn cast(syntax: SyntaxNode) -> Option<Self> {
21421 if Self::can_cast(syntax.kind()) {
21422 Some(Self { syntax })
21423 } else {
21424 None
21425 }
21426 }
21427 #[inline]
21428 fn syntax(&self) -> &SyntaxNode {
21429 &self.syntax
21430 }
21431}
21432impl AstNode for ExceptTables {
21433 #[inline]
21434 fn can_cast(kind: SyntaxKind) -> bool {
21435 kind == SyntaxKind::EXCEPT_TABLES
21436 }
21437 #[inline]
21438 fn cast(syntax: SyntaxNode) -> Option<Self> {
21439 if Self::can_cast(syntax.kind()) {
21440 Some(Self { syntax })
21441 } else {
21442 None
21443 }
21444 }
21445 #[inline]
21446 fn syntax(&self) -> &SyntaxNode {
21447 &self.syntax
21448 }
21449}
21450impl AstNode for ExcludeConstraint {
21451 #[inline]
21452 fn can_cast(kind: SyntaxKind) -> bool {
21453 kind == SyntaxKind::EXCLUDE_CONSTRAINT
21454 }
21455 #[inline]
21456 fn cast(syntax: SyntaxNode) -> Option<Self> {
21457 if Self::can_cast(syntax.kind()) {
21458 Some(Self { syntax })
21459 } else {
21460 None
21461 }
21462 }
21463 #[inline]
21464 fn syntax(&self) -> &SyntaxNode {
21465 &self.syntax
21466 }
21467}
21468impl AstNode for Execute {
21469 #[inline]
21470 fn can_cast(kind: SyntaxKind) -> bool {
21471 kind == SyntaxKind::EXECUTE
21472 }
21473 #[inline]
21474 fn cast(syntax: SyntaxNode) -> Option<Self> {
21475 if Self::can_cast(syntax.kind()) {
21476 Some(Self { syntax })
21477 } else {
21478 None
21479 }
21480 }
21481 #[inline]
21482 fn syntax(&self) -> &SyntaxNode {
21483 &self.syntax
21484 }
21485}
21486impl AstNode for ExistsFn {
21487 #[inline]
21488 fn can_cast(kind: SyntaxKind) -> bool {
21489 kind == SyntaxKind::EXISTS_FN
21490 }
21491 #[inline]
21492 fn cast(syntax: SyntaxNode) -> Option<Self> {
21493 if Self::can_cast(syntax.kind()) {
21494 Some(Self { syntax })
21495 } else {
21496 None
21497 }
21498 }
21499 #[inline]
21500 fn syntax(&self) -> &SyntaxNode {
21501 &self.syntax
21502 }
21503}
21504impl AstNode for Explain {
21505 #[inline]
21506 fn can_cast(kind: SyntaxKind) -> bool {
21507 kind == SyntaxKind::EXPLAIN
21508 }
21509 #[inline]
21510 fn cast(syntax: SyntaxNode) -> Option<Self> {
21511 if Self::can_cast(syntax.kind()) {
21512 Some(Self { syntax })
21513 } else {
21514 None
21515 }
21516 }
21517 #[inline]
21518 fn syntax(&self) -> &SyntaxNode {
21519 &self.syntax
21520 }
21521}
21522impl AstNode for ExprAsName {
21523 #[inline]
21524 fn can_cast(kind: SyntaxKind) -> bool {
21525 kind == SyntaxKind::EXPR_AS_NAME
21526 }
21527 #[inline]
21528 fn cast(syntax: SyntaxNode) -> Option<Self> {
21529 if Self::can_cast(syntax.kind()) {
21530 Some(Self { syntax })
21531 } else {
21532 None
21533 }
21534 }
21535 #[inline]
21536 fn syntax(&self) -> &SyntaxNode {
21537 &self.syntax
21538 }
21539}
21540impl AstNode for ExprType {
21541 #[inline]
21542 fn can_cast(kind: SyntaxKind) -> bool {
21543 kind == SyntaxKind::EXPR_TYPE
21544 }
21545 #[inline]
21546 fn cast(syntax: SyntaxNode) -> Option<Self> {
21547 if Self::can_cast(syntax.kind()) {
21548 Some(Self { syntax })
21549 } else {
21550 None
21551 }
21552 }
21553 #[inline]
21554 fn syntax(&self) -> &SyntaxNode {
21555 &self.syntax
21556 }
21557}
21558impl AstNode for ExtractFn {
21559 #[inline]
21560 fn can_cast(kind: SyntaxKind) -> bool {
21561 kind == SyntaxKind::EXTRACT_FN
21562 }
21563 #[inline]
21564 fn cast(syntax: SyntaxNode) -> Option<Self> {
21565 if Self::can_cast(syntax.kind()) {
21566 Some(Self { syntax })
21567 } else {
21568 None
21569 }
21570 }
21571 #[inline]
21572 fn syntax(&self) -> &SyntaxNode {
21573 &self.syntax
21574 }
21575}
21576impl AstNode for FatArrow {
21577 #[inline]
21578 fn can_cast(kind: SyntaxKind) -> bool {
21579 kind == SyntaxKind::FAT_ARROW
21580 }
21581 #[inline]
21582 fn cast(syntax: SyntaxNode) -> Option<Self> {
21583 if Self::can_cast(syntax.kind()) {
21584 Some(Self { syntax })
21585 } else {
21586 None
21587 }
21588 }
21589 #[inline]
21590 fn syntax(&self) -> &SyntaxNode {
21591 &self.syntax
21592 }
21593}
21594impl AstNode for FdwOption {
21595 #[inline]
21596 fn can_cast(kind: SyntaxKind) -> bool {
21597 kind == SyntaxKind::FDW_OPTION
21598 }
21599 #[inline]
21600 fn cast(syntax: SyntaxNode) -> Option<Self> {
21601 if Self::can_cast(syntax.kind()) {
21602 Some(Self { syntax })
21603 } else {
21604 None
21605 }
21606 }
21607 #[inline]
21608 fn syntax(&self) -> &SyntaxNode {
21609 &self.syntax
21610 }
21611}
21612impl AstNode for FdwOptionList {
21613 #[inline]
21614 fn can_cast(kind: SyntaxKind) -> bool {
21615 kind == SyntaxKind::FDW_OPTION_LIST
21616 }
21617 #[inline]
21618 fn cast(syntax: SyntaxNode) -> Option<Self> {
21619 if Self::can_cast(syntax.kind()) {
21620 Some(Self { syntax })
21621 } else {
21622 None
21623 }
21624 }
21625 #[inline]
21626 fn syntax(&self) -> &SyntaxNode {
21627 &self.syntax
21628 }
21629}
21630impl AstNode for Fetch {
21631 #[inline]
21632 fn can_cast(kind: SyntaxKind) -> bool {
21633 kind == SyntaxKind::FETCH
21634 }
21635 #[inline]
21636 fn cast(syntax: SyntaxNode) -> Option<Self> {
21637 if Self::can_cast(syntax.kind()) {
21638 Some(Self { syntax })
21639 } else {
21640 None
21641 }
21642 }
21643 #[inline]
21644 fn syntax(&self) -> &SyntaxNode {
21645 &self.syntax
21646 }
21647}
21648impl AstNode for FetchClause {
21649 #[inline]
21650 fn can_cast(kind: SyntaxKind) -> bool {
21651 kind == SyntaxKind::FETCH_CLAUSE
21652 }
21653 #[inline]
21654 fn cast(syntax: SyntaxNode) -> Option<Self> {
21655 if Self::can_cast(syntax.kind()) {
21656 Some(Self { syntax })
21657 } else {
21658 None
21659 }
21660 }
21661 #[inline]
21662 fn syntax(&self) -> &SyntaxNode {
21663 &self.syntax
21664 }
21665}
21666impl AstNode for FieldExpr {
21667 #[inline]
21668 fn can_cast(kind: SyntaxKind) -> bool {
21669 kind == SyntaxKind::FIELD_EXPR
21670 }
21671 #[inline]
21672 fn cast(syntax: SyntaxNode) -> Option<Self> {
21673 if Self::can_cast(syntax.kind()) {
21674 Some(Self { syntax })
21675 } else {
21676 None
21677 }
21678 }
21679 #[inline]
21680 fn syntax(&self) -> &SyntaxNode {
21681 &self.syntax
21682 }
21683}
21684impl AstNode for FilterClause {
21685 #[inline]
21686 fn can_cast(kind: SyntaxKind) -> bool {
21687 kind == SyntaxKind::FILTER_CLAUSE
21688 }
21689 #[inline]
21690 fn cast(syntax: SyntaxNode) -> Option<Self> {
21691 if Self::can_cast(syntax.kind()) {
21692 Some(Self { syntax })
21693 } else {
21694 None
21695 }
21696 }
21697 #[inline]
21698 fn syntax(&self) -> &SyntaxNode {
21699 &self.syntax
21700 }
21701}
21702impl AstNode for ForProvider {
21703 #[inline]
21704 fn can_cast(kind: SyntaxKind) -> bool {
21705 kind == SyntaxKind::FOR_PROVIDER
21706 }
21707 #[inline]
21708 fn cast(syntax: SyntaxNode) -> Option<Self> {
21709 if Self::can_cast(syntax.kind()) {
21710 Some(Self { syntax })
21711 } else {
21712 None
21713 }
21714 }
21715 #[inline]
21716 fn syntax(&self) -> &SyntaxNode {
21717 &self.syntax
21718 }
21719}
21720impl AstNode for ForceRls {
21721 #[inline]
21722 fn can_cast(kind: SyntaxKind) -> bool {
21723 kind == SyntaxKind::FORCE_RLS
21724 }
21725 #[inline]
21726 fn cast(syntax: SyntaxNode) -> Option<Self> {
21727 if Self::can_cast(syntax.kind()) {
21728 Some(Self { syntax })
21729 } else {
21730 None
21731 }
21732 }
21733 #[inline]
21734 fn syntax(&self) -> &SyntaxNode {
21735 &self.syntax
21736 }
21737}
21738impl AstNode for ForeignKeyConstraint {
21739 #[inline]
21740 fn can_cast(kind: SyntaxKind) -> bool {
21741 kind == SyntaxKind::FOREIGN_KEY_CONSTRAINT
21742 }
21743 #[inline]
21744 fn cast(syntax: SyntaxNode) -> Option<Self> {
21745 if Self::can_cast(syntax.kind()) {
21746 Some(Self { syntax })
21747 } else {
21748 None
21749 }
21750 }
21751 #[inline]
21752 fn syntax(&self) -> &SyntaxNode {
21753 &self.syntax
21754 }
21755}
21756impl AstNode for FrameClause {
21757 #[inline]
21758 fn can_cast(kind: SyntaxKind) -> bool {
21759 kind == SyntaxKind::FRAME_CLAUSE
21760 }
21761 #[inline]
21762 fn cast(syntax: SyntaxNode) -> Option<Self> {
21763 if Self::can_cast(syntax.kind()) {
21764 Some(Self { syntax })
21765 } else {
21766 None
21767 }
21768 }
21769 #[inline]
21770 fn syntax(&self) -> &SyntaxNode {
21771 &self.syntax
21772 }
21773}
21774impl AstNode for FromClause {
21775 #[inline]
21776 fn can_cast(kind: SyntaxKind) -> bool {
21777 kind == SyntaxKind::FROM_CLAUSE
21778 }
21779 #[inline]
21780 fn cast(syntax: SyntaxNode) -> Option<Self> {
21781 if Self::can_cast(syntax.kind()) {
21782 Some(Self { syntax })
21783 } else {
21784 None
21785 }
21786 }
21787 #[inline]
21788 fn syntax(&self) -> &SyntaxNode {
21789 &self.syntax
21790 }
21791}
21792impl AstNode for FromItem {
21793 #[inline]
21794 fn can_cast(kind: SyntaxKind) -> bool {
21795 kind == SyntaxKind::FROM_ITEM
21796 }
21797 #[inline]
21798 fn cast(syntax: SyntaxNode) -> Option<Self> {
21799 if Self::can_cast(syntax.kind()) {
21800 Some(Self { syntax })
21801 } else {
21802 None
21803 }
21804 }
21805 #[inline]
21806 fn syntax(&self) -> &SyntaxNode {
21807 &self.syntax
21808 }
21809}
21810impl AstNode for FromTable {
21811 #[inline]
21812 fn can_cast(kind: SyntaxKind) -> bool {
21813 kind == SyntaxKind::FROM_TABLE
21814 }
21815 #[inline]
21816 fn cast(syntax: SyntaxNode) -> Option<Self> {
21817 if Self::can_cast(syntax.kind()) {
21818 Some(Self { syntax })
21819 } else {
21820 None
21821 }
21822 }
21823 #[inline]
21824 fn syntax(&self) -> &SyntaxNode {
21825 &self.syntax
21826 }
21827}
21828impl AstNode for FuncOptionList {
21829 #[inline]
21830 fn can_cast(kind: SyntaxKind) -> bool {
21831 kind == SyntaxKind::FUNC_OPTION_LIST
21832 }
21833 #[inline]
21834 fn cast(syntax: SyntaxNode) -> Option<Self> {
21835 if Self::can_cast(syntax.kind()) {
21836 Some(Self { syntax })
21837 } else {
21838 None
21839 }
21840 }
21841 #[inline]
21842 fn syntax(&self) -> &SyntaxNode {
21843 &self.syntax
21844 }
21845}
21846impl AstNode for FunctionSig {
21847 #[inline]
21848 fn can_cast(kind: SyntaxKind) -> bool {
21849 kind == SyntaxKind::FUNCTION_SIG
21850 }
21851 #[inline]
21852 fn cast(syntax: SyntaxNode) -> Option<Self> {
21853 if Self::can_cast(syntax.kind()) {
21854 Some(Self { syntax })
21855 } else {
21856 None
21857 }
21858 }
21859 #[inline]
21860 fn syntax(&self) -> &SyntaxNode {
21861 &self.syntax
21862 }
21863}
21864impl AstNode for FunctionSigList {
21865 #[inline]
21866 fn can_cast(kind: SyntaxKind) -> bool {
21867 kind == SyntaxKind::FUNCTION_SIG_LIST
21868 }
21869 #[inline]
21870 fn cast(syntax: SyntaxNode) -> Option<Self> {
21871 if Self::can_cast(syntax.kind()) {
21872 Some(Self { syntax })
21873 } else {
21874 None
21875 }
21876 }
21877 #[inline]
21878 fn syntax(&self) -> &SyntaxNode {
21879 &self.syntax
21880 }
21881}
21882impl AstNode for GeneratedConstraint {
21883 #[inline]
21884 fn can_cast(kind: SyntaxKind) -> bool {
21885 kind == SyntaxKind::GENERATED_CONSTRAINT
21886 }
21887 #[inline]
21888 fn cast(syntax: SyntaxNode) -> Option<Self> {
21889 if Self::can_cast(syntax.kind()) {
21890 Some(Self { syntax })
21891 } else {
21892 None
21893 }
21894 }
21895 #[inline]
21896 fn syntax(&self) -> &SyntaxNode {
21897 &self.syntax
21898 }
21899}
21900impl AstNode for Grant {
21901 #[inline]
21902 fn can_cast(kind: SyntaxKind) -> bool {
21903 kind == SyntaxKind::GRANT
21904 }
21905 #[inline]
21906 fn cast(syntax: SyntaxNode) -> Option<Self> {
21907 if Self::can_cast(syntax.kind()) {
21908 Some(Self { syntax })
21909 } else {
21910 None
21911 }
21912 }
21913 #[inline]
21914 fn syntax(&self) -> &SyntaxNode {
21915 &self.syntax
21916 }
21917}
21918impl AstNode for GrantDefaultPrivileges {
21919 #[inline]
21920 fn can_cast(kind: SyntaxKind) -> bool {
21921 kind == SyntaxKind::GRANT_DEFAULT_PRIVILEGES
21922 }
21923 #[inline]
21924 fn cast(syntax: SyntaxNode) -> Option<Self> {
21925 if Self::can_cast(syntax.kind()) {
21926 Some(Self { syntax })
21927 } else {
21928 None
21929 }
21930 }
21931 #[inline]
21932 fn syntax(&self) -> &SyntaxNode {
21933 &self.syntax
21934 }
21935}
21936impl AstNode for GroupByClause {
21937 #[inline]
21938 fn can_cast(kind: SyntaxKind) -> bool {
21939 kind == SyntaxKind::GROUP_BY_CLAUSE
21940 }
21941 #[inline]
21942 fn cast(syntax: SyntaxNode) -> Option<Self> {
21943 if Self::can_cast(syntax.kind()) {
21944 Some(Self { syntax })
21945 } else {
21946 None
21947 }
21948 }
21949 #[inline]
21950 fn syntax(&self) -> &SyntaxNode {
21951 &self.syntax
21952 }
21953}
21954impl AstNode for GroupByList {
21955 #[inline]
21956 fn can_cast(kind: SyntaxKind) -> bool {
21957 kind == SyntaxKind::GROUP_BY_LIST
21958 }
21959 #[inline]
21960 fn cast(syntax: SyntaxNode) -> Option<Self> {
21961 if Self::can_cast(syntax.kind()) {
21962 Some(Self { syntax })
21963 } else {
21964 None
21965 }
21966 }
21967 #[inline]
21968 fn syntax(&self) -> &SyntaxNode {
21969 &self.syntax
21970 }
21971}
21972impl AstNode for GroupingCube {
21973 #[inline]
21974 fn can_cast(kind: SyntaxKind) -> bool {
21975 kind == SyntaxKind::GROUPING_CUBE
21976 }
21977 #[inline]
21978 fn cast(syntax: SyntaxNode) -> Option<Self> {
21979 if Self::can_cast(syntax.kind()) {
21980 Some(Self { syntax })
21981 } else {
21982 None
21983 }
21984 }
21985 #[inline]
21986 fn syntax(&self) -> &SyntaxNode {
21987 &self.syntax
21988 }
21989}
21990impl AstNode for GroupingExpr {
21991 #[inline]
21992 fn can_cast(kind: SyntaxKind) -> bool {
21993 kind == SyntaxKind::GROUPING_EXPR
21994 }
21995 #[inline]
21996 fn cast(syntax: SyntaxNode) -> Option<Self> {
21997 if Self::can_cast(syntax.kind()) {
21998 Some(Self { syntax })
21999 } else {
22000 None
22001 }
22002 }
22003 #[inline]
22004 fn syntax(&self) -> &SyntaxNode {
22005 &self.syntax
22006 }
22007}
22008impl AstNode for GroupingRollup {
22009 #[inline]
22010 fn can_cast(kind: SyntaxKind) -> bool {
22011 kind == SyntaxKind::GROUPING_ROLLUP
22012 }
22013 #[inline]
22014 fn cast(syntax: SyntaxNode) -> Option<Self> {
22015 if Self::can_cast(syntax.kind()) {
22016 Some(Self { syntax })
22017 } else {
22018 None
22019 }
22020 }
22021 #[inline]
22022 fn syntax(&self) -> &SyntaxNode {
22023 &self.syntax
22024 }
22025}
22026impl AstNode for GroupingSets {
22027 #[inline]
22028 fn can_cast(kind: SyntaxKind) -> bool {
22029 kind == SyntaxKind::GROUPING_SETS
22030 }
22031 #[inline]
22032 fn cast(syntax: SyntaxNode) -> Option<Self> {
22033 if Self::can_cast(syntax.kind()) {
22034 Some(Self { syntax })
22035 } else {
22036 None
22037 }
22038 }
22039 #[inline]
22040 fn syntax(&self) -> &SyntaxNode {
22041 &self.syntax
22042 }
22043}
22044impl AstNode for Gteq {
22045 #[inline]
22046 fn can_cast(kind: SyntaxKind) -> bool {
22047 kind == SyntaxKind::GTEQ
22048 }
22049 #[inline]
22050 fn cast(syntax: SyntaxNode) -> Option<Self> {
22051 if Self::can_cast(syntax.kind()) {
22052 Some(Self { syntax })
22053 } else {
22054 None
22055 }
22056 }
22057 #[inline]
22058 fn syntax(&self) -> &SyntaxNode {
22059 &self.syntax
22060 }
22061}
22062impl AstNode for HandlerClause {
22063 #[inline]
22064 fn can_cast(kind: SyntaxKind) -> bool {
22065 kind == SyntaxKind::HANDLER_CLAUSE
22066 }
22067 #[inline]
22068 fn cast(syntax: SyntaxNode) -> Option<Self> {
22069 if Self::can_cast(syntax.kind()) {
22070 Some(Self { syntax })
22071 } else {
22072 None
22073 }
22074 }
22075 #[inline]
22076 fn syntax(&self) -> &SyntaxNode {
22077 &self.syntax
22078 }
22079}
22080impl AstNode for HavingClause {
22081 #[inline]
22082 fn can_cast(kind: SyntaxKind) -> bool {
22083 kind == SyntaxKind::HAVING_CLAUSE
22084 }
22085 #[inline]
22086 fn cast(syntax: SyntaxNode) -> Option<Self> {
22087 if Self::can_cast(syntax.kind()) {
22088 Some(Self { syntax })
22089 } else {
22090 None
22091 }
22092 }
22093 #[inline]
22094 fn syntax(&self) -> &SyntaxNode {
22095 &self.syntax
22096 }
22097}
22098impl AstNode for IfExists {
22099 #[inline]
22100 fn can_cast(kind: SyntaxKind) -> bool {
22101 kind == SyntaxKind::IF_EXISTS
22102 }
22103 #[inline]
22104 fn cast(syntax: SyntaxNode) -> Option<Self> {
22105 if Self::can_cast(syntax.kind()) {
22106 Some(Self { syntax })
22107 } else {
22108 None
22109 }
22110 }
22111 #[inline]
22112 fn syntax(&self) -> &SyntaxNode {
22113 &self.syntax
22114 }
22115}
22116impl AstNode for IfNotExists {
22117 #[inline]
22118 fn can_cast(kind: SyntaxKind) -> bool {
22119 kind == SyntaxKind::IF_NOT_EXISTS
22120 }
22121 #[inline]
22122 fn cast(syntax: SyntaxNode) -> Option<Self> {
22123 if Self::can_cast(syntax.kind()) {
22124 Some(Self { syntax })
22125 } else {
22126 None
22127 }
22128 }
22129 #[inline]
22130 fn syntax(&self) -> &SyntaxNode {
22131 &self.syntax
22132 }
22133}
22134impl AstNode for ImportForeignSchema {
22135 #[inline]
22136 fn can_cast(kind: SyntaxKind) -> bool {
22137 kind == SyntaxKind::IMPORT_FOREIGN_SCHEMA
22138 }
22139 #[inline]
22140 fn cast(syntax: SyntaxNode) -> Option<Self> {
22141 if Self::can_cast(syntax.kind()) {
22142 Some(Self { syntax })
22143 } else {
22144 None
22145 }
22146 }
22147 #[inline]
22148 fn syntax(&self) -> &SyntaxNode {
22149 &self.syntax
22150 }
22151}
22152impl AstNode for IndexExpr {
22153 #[inline]
22154 fn can_cast(kind: SyntaxKind) -> bool {
22155 kind == SyntaxKind::INDEX_EXPR
22156 }
22157 #[inline]
22158 fn cast(syntax: SyntaxNode) -> Option<Self> {
22159 if Self::can_cast(syntax.kind()) {
22160 Some(Self { syntax })
22161 } else {
22162 None
22163 }
22164 }
22165 #[inline]
22166 fn syntax(&self) -> &SyntaxNode {
22167 &self.syntax
22168 }
22169}
22170impl AstNode for Inherit {
22171 #[inline]
22172 fn can_cast(kind: SyntaxKind) -> bool {
22173 kind == SyntaxKind::INHERIT
22174 }
22175 #[inline]
22176 fn cast(syntax: SyntaxNode) -> Option<Self> {
22177 if Self::can_cast(syntax.kind()) {
22178 Some(Self { syntax })
22179 } else {
22180 None
22181 }
22182 }
22183 #[inline]
22184 fn syntax(&self) -> &SyntaxNode {
22185 &self.syntax
22186 }
22187}
22188impl AstNode for InheritTable {
22189 #[inline]
22190 fn can_cast(kind: SyntaxKind) -> bool {
22191 kind == SyntaxKind::INHERIT_TABLE
22192 }
22193 #[inline]
22194 fn cast(syntax: SyntaxNode) -> Option<Self> {
22195 if Self::can_cast(syntax.kind()) {
22196 Some(Self { syntax })
22197 } else {
22198 None
22199 }
22200 }
22201 #[inline]
22202 fn syntax(&self) -> &SyntaxNode {
22203 &self.syntax
22204 }
22205}
22206impl AstNode for Inherits {
22207 #[inline]
22208 fn can_cast(kind: SyntaxKind) -> bool {
22209 kind == SyntaxKind::INHERITS
22210 }
22211 #[inline]
22212 fn cast(syntax: SyntaxNode) -> Option<Self> {
22213 if Self::can_cast(syntax.kind()) {
22214 Some(Self { syntax })
22215 } else {
22216 None
22217 }
22218 }
22219 #[inline]
22220 fn syntax(&self) -> &SyntaxNode {
22221 &self.syntax
22222 }
22223}
22224impl AstNode for InitiallyDeferredConstraintOption {
22225 #[inline]
22226 fn can_cast(kind: SyntaxKind) -> bool {
22227 kind == SyntaxKind::INITIALLY_DEFERRED_CONSTRAINT_OPTION
22228 }
22229 #[inline]
22230 fn cast(syntax: SyntaxNode) -> Option<Self> {
22231 if Self::can_cast(syntax.kind()) {
22232 Some(Self { syntax })
22233 } else {
22234 None
22235 }
22236 }
22237 #[inline]
22238 fn syntax(&self) -> &SyntaxNode {
22239 &self.syntax
22240 }
22241}
22242impl AstNode for InitiallyImmediateConstraintOption {
22243 #[inline]
22244 fn can_cast(kind: SyntaxKind) -> bool {
22245 kind == SyntaxKind::INITIALLY_IMMEDIATE_CONSTRAINT_OPTION
22246 }
22247 #[inline]
22248 fn cast(syntax: SyntaxNode) -> Option<Self> {
22249 if Self::can_cast(syntax.kind()) {
22250 Some(Self { syntax })
22251 } else {
22252 None
22253 }
22254 }
22255 #[inline]
22256 fn syntax(&self) -> &SyntaxNode {
22257 &self.syntax
22258 }
22259}
22260impl AstNode for Insert {
22261 #[inline]
22262 fn can_cast(kind: SyntaxKind) -> bool {
22263 kind == SyntaxKind::INSERT
22264 }
22265 #[inline]
22266 fn cast(syntax: SyntaxNode) -> Option<Self> {
22267 if Self::can_cast(syntax.kind()) {
22268 Some(Self { syntax })
22269 } else {
22270 None
22271 }
22272 }
22273 #[inline]
22274 fn syntax(&self) -> &SyntaxNode {
22275 &self.syntax
22276 }
22277}
22278impl AstNode for IntervalType {
22279 #[inline]
22280 fn can_cast(kind: SyntaxKind) -> bool {
22281 kind == SyntaxKind::INTERVAL_TYPE
22282 }
22283 #[inline]
22284 fn cast(syntax: SyntaxNode) -> Option<Self> {
22285 if Self::can_cast(syntax.kind()) {
22286 Some(Self { syntax })
22287 } else {
22288 None
22289 }
22290 }
22291 #[inline]
22292 fn syntax(&self) -> &SyntaxNode {
22293 &self.syntax
22294 }
22295}
22296impl AstNode for IntoClause {
22297 #[inline]
22298 fn can_cast(kind: SyntaxKind) -> bool {
22299 kind == SyntaxKind::INTO_CLAUSE
22300 }
22301 #[inline]
22302 fn cast(syntax: SyntaxNode) -> Option<Self> {
22303 if Self::can_cast(syntax.kind()) {
22304 Some(Self { syntax })
22305 } else {
22306 None
22307 }
22308 }
22309 #[inline]
22310 fn syntax(&self) -> &SyntaxNode {
22311 &self.syntax
22312 }
22313}
22314impl AstNode for IntoSchema {
22315 #[inline]
22316 fn can_cast(kind: SyntaxKind) -> bool {
22317 kind == SyntaxKind::INTO_SCHEMA
22318 }
22319 #[inline]
22320 fn cast(syntax: SyntaxNode) -> Option<Self> {
22321 if Self::can_cast(syntax.kind()) {
22322 Some(Self { syntax })
22323 } else {
22324 None
22325 }
22326 }
22327 #[inline]
22328 fn syntax(&self) -> &SyntaxNode {
22329 &self.syntax
22330 }
22331}
22332impl AstNode for IsDistinctFrom {
22333 #[inline]
22334 fn can_cast(kind: SyntaxKind) -> bool {
22335 kind == SyntaxKind::IS_DISTINCT_FROM
22336 }
22337 #[inline]
22338 fn cast(syntax: SyntaxNode) -> Option<Self> {
22339 if Self::can_cast(syntax.kind()) {
22340 Some(Self { syntax })
22341 } else {
22342 None
22343 }
22344 }
22345 #[inline]
22346 fn syntax(&self) -> &SyntaxNode {
22347 &self.syntax
22348 }
22349}
22350impl AstNode for IsJson {
22351 #[inline]
22352 fn can_cast(kind: SyntaxKind) -> bool {
22353 kind == SyntaxKind::IS_JSON
22354 }
22355 #[inline]
22356 fn cast(syntax: SyntaxNode) -> Option<Self> {
22357 if Self::can_cast(syntax.kind()) {
22358 Some(Self { syntax })
22359 } else {
22360 None
22361 }
22362 }
22363 #[inline]
22364 fn syntax(&self) -> &SyntaxNode {
22365 &self.syntax
22366 }
22367}
22368impl AstNode for IsJsonArray {
22369 #[inline]
22370 fn can_cast(kind: SyntaxKind) -> bool {
22371 kind == SyntaxKind::IS_JSON_ARRAY
22372 }
22373 #[inline]
22374 fn cast(syntax: SyntaxNode) -> Option<Self> {
22375 if Self::can_cast(syntax.kind()) {
22376 Some(Self { syntax })
22377 } else {
22378 None
22379 }
22380 }
22381 #[inline]
22382 fn syntax(&self) -> &SyntaxNode {
22383 &self.syntax
22384 }
22385}
22386impl AstNode for IsJsonObject {
22387 #[inline]
22388 fn can_cast(kind: SyntaxKind) -> bool {
22389 kind == SyntaxKind::IS_JSON_OBJECT
22390 }
22391 #[inline]
22392 fn cast(syntax: SyntaxNode) -> Option<Self> {
22393 if Self::can_cast(syntax.kind()) {
22394 Some(Self { syntax })
22395 } else {
22396 None
22397 }
22398 }
22399 #[inline]
22400 fn syntax(&self) -> &SyntaxNode {
22401 &self.syntax
22402 }
22403}
22404impl AstNode for IsJsonScalar {
22405 #[inline]
22406 fn can_cast(kind: SyntaxKind) -> bool {
22407 kind == SyntaxKind::IS_JSON_SCALAR
22408 }
22409 #[inline]
22410 fn cast(syntax: SyntaxNode) -> Option<Self> {
22411 if Self::can_cast(syntax.kind()) {
22412 Some(Self { syntax })
22413 } else {
22414 None
22415 }
22416 }
22417 #[inline]
22418 fn syntax(&self) -> &SyntaxNode {
22419 &self.syntax
22420 }
22421}
22422impl AstNode for IsJsonValue {
22423 #[inline]
22424 fn can_cast(kind: SyntaxKind) -> bool {
22425 kind == SyntaxKind::IS_JSON_VALUE
22426 }
22427 #[inline]
22428 fn cast(syntax: SyntaxNode) -> Option<Self> {
22429 if Self::can_cast(syntax.kind()) {
22430 Some(Self { syntax })
22431 } else {
22432 None
22433 }
22434 }
22435 #[inline]
22436 fn syntax(&self) -> &SyntaxNode {
22437 &self.syntax
22438 }
22439}
22440impl AstNode for IsNormalized {
22441 #[inline]
22442 fn can_cast(kind: SyntaxKind) -> bool {
22443 kind == SyntaxKind::IS_NORMALIZED
22444 }
22445 #[inline]
22446 fn cast(syntax: SyntaxNode) -> Option<Self> {
22447 if Self::can_cast(syntax.kind()) {
22448 Some(Self { syntax })
22449 } else {
22450 None
22451 }
22452 }
22453 #[inline]
22454 fn syntax(&self) -> &SyntaxNode {
22455 &self.syntax
22456 }
22457}
22458impl AstNode for IsNot {
22459 #[inline]
22460 fn can_cast(kind: SyntaxKind) -> bool {
22461 kind == SyntaxKind::IS_NOT
22462 }
22463 #[inline]
22464 fn cast(syntax: SyntaxNode) -> Option<Self> {
22465 if Self::can_cast(syntax.kind()) {
22466 Some(Self { syntax })
22467 } else {
22468 None
22469 }
22470 }
22471 #[inline]
22472 fn syntax(&self) -> &SyntaxNode {
22473 &self.syntax
22474 }
22475}
22476impl AstNode for IsNotDistinctFrom {
22477 #[inline]
22478 fn can_cast(kind: SyntaxKind) -> bool {
22479 kind == SyntaxKind::IS_NOT_DISTINCT_FROM
22480 }
22481 #[inline]
22482 fn cast(syntax: SyntaxNode) -> Option<Self> {
22483 if Self::can_cast(syntax.kind()) {
22484 Some(Self { syntax })
22485 } else {
22486 None
22487 }
22488 }
22489 #[inline]
22490 fn syntax(&self) -> &SyntaxNode {
22491 &self.syntax
22492 }
22493}
22494impl AstNode for IsNotJson {
22495 #[inline]
22496 fn can_cast(kind: SyntaxKind) -> bool {
22497 kind == SyntaxKind::IS_NOT_JSON
22498 }
22499 #[inline]
22500 fn cast(syntax: SyntaxNode) -> Option<Self> {
22501 if Self::can_cast(syntax.kind()) {
22502 Some(Self { syntax })
22503 } else {
22504 None
22505 }
22506 }
22507 #[inline]
22508 fn syntax(&self) -> &SyntaxNode {
22509 &self.syntax
22510 }
22511}
22512impl AstNode for IsNotJsonArray {
22513 #[inline]
22514 fn can_cast(kind: SyntaxKind) -> bool {
22515 kind == SyntaxKind::IS_NOT_JSON_ARRAY
22516 }
22517 #[inline]
22518 fn cast(syntax: SyntaxNode) -> Option<Self> {
22519 if Self::can_cast(syntax.kind()) {
22520 Some(Self { syntax })
22521 } else {
22522 None
22523 }
22524 }
22525 #[inline]
22526 fn syntax(&self) -> &SyntaxNode {
22527 &self.syntax
22528 }
22529}
22530impl AstNode for IsNotJsonObject {
22531 #[inline]
22532 fn can_cast(kind: SyntaxKind) -> bool {
22533 kind == SyntaxKind::IS_NOT_JSON_OBJECT
22534 }
22535 #[inline]
22536 fn cast(syntax: SyntaxNode) -> Option<Self> {
22537 if Self::can_cast(syntax.kind()) {
22538 Some(Self { syntax })
22539 } else {
22540 None
22541 }
22542 }
22543 #[inline]
22544 fn syntax(&self) -> &SyntaxNode {
22545 &self.syntax
22546 }
22547}
22548impl AstNode for IsNotJsonScalar {
22549 #[inline]
22550 fn can_cast(kind: SyntaxKind) -> bool {
22551 kind == SyntaxKind::IS_NOT_JSON_SCALAR
22552 }
22553 #[inline]
22554 fn cast(syntax: SyntaxNode) -> Option<Self> {
22555 if Self::can_cast(syntax.kind()) {
22556 Some(Self { syntax })
22557 } else {
22558 None
22559 }
22560 }
22561 #[inline]
22562 fn syntax(&self) -> &SyntaxNode {
22563 &self.syntax
22564 }
22565}
22566impl AstNode for IsNotJsonValue {
22567 #[inline]
22568 fn can_cast(kind: SyntaxKind) -> bool {
22569 kind == SyntaxKind::IS_NOT_JSON_VALUE
22570 }
22571 #[inline]
22572 fn cast(syntax: SyntaxNode) -> Option<Self> {
22573 if Self::can_cast(syntax.kind()) {
22574 Some(Self { syntax })
22575 } else {
22576 None
22577 }
22578 }
22579 #[inline]
22580 fn syntax(&self) -> &SyntaxNode {
22581 &self.syntax
22582 }
22583}
22584impl AstNode for IsNotNormalized {
22585 #[inline]
22586 fn can_cast(kind: SyntaxKind) -> bool {
22587 kind == SyntaxKind::IS_NOT_NORMALIZED
22588 }
22589 #[inline]
22590 fn cast(syntax: SyntaxNode) -> Option<Self> {
22591 if Self::can_cast(syntax.kind()) {
22592 Some(Self { syntax })
22593 } else {
22594 None
22595 }
22596 }
22597 #[inline]
22598 fn syntax(&self) -> &SyntaxNode {
22599 &self.syntax
22600 }
22601}
22602impl AstNode for Join {
22603 #[inline]
22604 fn can_cast(kind: SyntaxKind) -> bool {
22605 kind == SyntaxKind::JOIN
22606 }
22607 #[inline]
22608 fn cast(syntax: SyntaxNode) -> Option<Self> {
22609 if Self::can_cast(syntax.kind()) {
22610 Some(Self { syntax })
22611 } else {
22612 None
22613 }
22614 }
22615 #[inline]
22616 fn syntax(&self) -> &SyntaxNode {
22617 &self.syntax
22618 }
22619}
22620impl AstNode for JoinCross {
22621 #[inline]
22622 fn can_cast(kind: SyntaxKind) -> bool {
22623 kind == SyntaxKind::JOIN_CROSS
22624 }
22625 #[inline]
22626 fn cast(syntax: SyntaxNode) -> Option<Self> {
22627 if Self::can_cast(syntax.kind()) {
22628 Some(Self { syntax })
22629 } else {
22630 None
22631 }
22632 }
22633 #[inline]
22634 fn syntax(&self) -> &SyntaxNode {
22635 &self.syntax
22636 }
22637}
22638impl AstNode for JoinExpr {
22639 #[inline]
22640 fn can_cast(kind: SyntaxKind) -> bool {
22641 kind == SyntaxKind::JOIN_EXPR
22642 }
22643 #[inline]
22644 fn cast(syntax: SyntaxNode) -> Option<Self> {
22645 if Self::can_cast(syntax.kind()) {
22646 Some(Self { syntax })
22647 } else {
22648 None
22649 }
22650 }
22651 #[inline]
22652 fn syntax(&self) -> &SyntaxNode {
22653 &self.syntax
22654 }
22655}
22656impl AstNode for JoinFull {
22657 #[inline]
22658 fn can_cast(kind: SyntaxKind) -> bool {
22659 kind == SyntaxKind::JOIN_FULL
22660 }
22661 #[inline]
22662 fn cast(syntax: SyntaxNode) -> Option<Self> {
22663 if Self::can_cast(syntax.kind()) {
22664 Some(Self { syntax })
22665 } else {
22666 None
22667 }
22668 }
22669 #[inline]
22670 fn syntax(&self) -> &SyntaxNode {
22671 &self.syntax
22672 }
22673}
22674impl AstNode for JoinInner {
22675 #[inline]
22676 fn can_cast(kind: SyntaxKind) -> bool {
22677 kind == SyntaxKind::JOIN_INNER
22678 }
22679 #[inline]
22680 fn cast(syntax: SyntaxNode) -> Option<Self> {
22681 if Self::can_cast(syntax.kind()) {
22682 Some(Self { syntax })
22683 } else {
22684 None
22685 }
22686 }
22687 #[inline]
22688 fn syntax(&self) -> &SyntaxNode {
22689 &self.syntax
22690 }
22691}
22692impl AstNode for JoinLeft {
22693 #[inline]
22694 fn can_cast(kind: SyntaxKind) -> bool {
22695 kind == SyntaxKind::JOIN_LEFT
22696 }
22697 #[inline]
22698 fn cast(syntax: SyntaxNode) -> Option<Self> {
22699 if Self::can_cast(syntax.kind()) {
22700 Some(Self { syntax })
22701 } else {
22702 None
22703 }
22704 }
22705 #[inline]
22706 fn syntax(&self) -> &SyntaxNode {
22707 &self.syntax
22708 }
22709}
22710impl AstNode for JoinRight {
22711 #[inline]
22712 fn can_cast(kind: SyntaxKind) -> bool {
22713 kind == SyntaxKind::JOIN_RIGHT
22714 }
22715 #[inline]
22716 fn cast(syntax: SyntaxNode) -> Option<Self> {
22717 if Self::can_cast(syntax.kind()) {
22718 Some(Self { syntax })
22719 } else {
22720 None
22721 }
22722 }
22723 #[inline]
22724 fn syntax(&self) -> &SyntaxNode {
22725 &self.syntax
22726 }
22727}
22728impl AstNode for JoinUsingClause {
22729 #[inline]
22730 fn can_cast(kind: SyntaxKind) -> bool {
22731 kind == SyntaxKind::JOIN_USING_CLAUSE
22732 }
22733 #[inline]
22734 fn cast(syntax: SyntaxNode) -> Option<Self> {
22735 if Self::can_cast(syntax.kind()) {
22736 Some(Self { syntax })
22737 } else {
22738 None
22739 }
22740 }
22741 #[inline]
22742 fn syntax(&self) -> &SyntaxNode {
22743 &self.syntax
22744 }
22745}
22746impl AstNode for JsonArrayAggFn {
22747 #[inline]
22748 fn can_cast(kind: SyntaxKind) -> bool {
22749 kind == SyntaxKind::JSON_ARRAY_AGG_FN
22750 }
22751 #[inline]
22752 fn cast(syntax: SyntaxNode) -> Option<Self> {
22753 if Self::can_cast(syntax.kind()) {
22754 Some(Self { syntax })
22755 } else {
22756 None
22757 }
22758 }
22759 #[inline]
22760 fn syntax(&self) -> &SyntaxNode {
22761 &self.syntax
22762 }
22763}
22764impl AstNode for JsonArrayFn {
22765 #[inline]
22766 fn can_cast(kind: SyntaxKind) -> bool {
22767 kind == SyntaxKind::JSON_ARRAY_FN
22768 }
22769 #[inline]
22770 fn cast(syntax: SyntaxNode) -> Option<Self> {
22771 if Self::can_cast(syntax.kind()) {
22772 Some(Self { syntax })
22773 } else {
22774 None
22775 }
22776 }
22777 #[inline]
22778 fn syntax(&self) -> &SyntaxNode {
22779 &self.syntax
22780 }
22781}
22782impl AstNode for JsonBehaviorClause {
22783 #[inline]
22784 fn can_cast(kind: SyntaxKind) -> bool {
22785 kind == SyntaxKind::JSON_BEHAVIOR_CLAUSE
22786 }
22787 #[inline]
22788 fn cast(syntax: SyntaxNode) -> Option<Self> {
22789 if Self::can_cast(syntax.kind()) {
22790 Some(Self { syntax })
22791 } else {
22792 None
22793 }
22794 }
22795 #[inline]
22796 fn syntax(&self) -> &SyntaxNode {
22797 &self.syntax
22798 }
22799}
22800impl AstNode for JsonBehaviorDefault {
22801 #[inline]
22802 fn can_cast(kind: SyntaxKind) -> bool {
22803 kind == SyntaxKind::JSON_BEHAVIOR_DEFAULT
22804 }
22805 #[inline]
22806 fn cast(syntax: SyntaxNode) -> Option<Self> {
22807 if Self::can_cast(syntax.kind()) {
22808 Some(Self { syntax })
22809 } else {
22810 None
22811 }
22812 }
22813 #[inline]
22814 fn syntax(&self) -> &SyntaxNode {
22815 &self.syntax
22816 }
22817}
22818impl AstNode for JsonBehaviorEmptyArray {
22819 #[inline]
22820 fn can_cast(kind: SyntaxKind) -> bool {
22821 kind == SyntaxKind::JSON_BEHAVIOR_EMPTY_ARRAY
22822 }
22823 #[inline]
22824 fn cast(syntax: SyntaxNode) -> Option<Self> {
22825 if Self::can_cast(syntax.kind()) {
22826 Some(Self { syntax })
22827 } else {
22828 None
22829 }
22830 }
22831 #[inline]
22832 fn syntax(&self) -> &SyntaxNode {
22833 &self.syntax
22834 }
22835}
22836impl AstNode for JsonBehaviorEmptyObject {
22837 #[inline]
22838 fn can_cast(kind: SyntaxKind) -> bool {
22839 kind == SyntaxKind::JSON_BEHAVIOR_EMPTY_OBJECT
22840 }
22841 #[inline]
22842 fn cast(syntax: SyntaxNode) -> Option<Self> {
22843 if Self::can_cast(syntax.kind()) {
22844 Some(Self { syntax })
22845 } else {
22846 None
22847 }
22848 }
22849 #[inline]
22850 fn syntax(&self) -> &SyntaxNode {
22851 &self.syntax
22852 }
22853}
22854impl AstNode for JsonBehaviorError {
22855 #[inline]
22856 fn can_cast(kind: SyntaxKind) -> bool {
22857 kind == SyntaxKind::JSON_BEHAVIOR_ERROR
22858 }
22859 #[inline]
22860 fn cast(syntax: SyntaxNode) -> Option<Self> {
22861 if Self::can_cast(syntax.kind()) {
22862 Some(Self { syntax })
22863 } else {
22864 None
22865 }
22866 }
22867 #[inline]
22868 fn syntax(&self) -> &SyntaxNode {
22869 &self.syntax
22870 }
22871}
22872impl AstNode for JsonBehaviorFalse {
22873 #[inline]
22874 fn can_cast(kind: SyntaxKind) -> bool {
22875 kind == SyntaxKind::JSON_BEHAVIOR_FALSE
22876 }
22877 #[inline]
22878 fn cast(syntax: SyntaxNode) -> Option<Self> {
22879 if Self::can_cast(syntax.kind()) {
22880 Some(Self { syntax })
22881 } else {
22882 None
22883 }
22884 }
22885 #[inline]
22886 fn syntax(&self) -> &SyntaxNode {
22887 &self.syntax
22888 }
22889}
22890impl AstNode for JsonBehaviorNull {
22891 #[inline]
22892 fn can_cast(kind: SyntaxKind) -> bool {
22893 kind == SyntaxKind::JSON_BEHAVIOR_NULL
22894 }
22895 #[inline]
22896 fn cast(syntax: SyntaxNode) -> Option<Self> {
22897 if Self::can_cast(syntax.kind()) {
22898 Some(Self { syntax })
22899 } else {
22900 None
22901 }
22902 }
22903 #[inline]
22904 fn syntax(&self) -> &SyntaxNode {
22905 &self.syntax
22906 }
22907}
22908impl AstNode for JsonBehaviorTrue {
22909 #[inline]
22910 fn can_cast(kind: SyntaxKind) -> bool {
22911 kind == SyntaxKind::JSON_BEHAVIOR_TRUE
22912 }
22913 #[inline]
22914 fn cast(syntax: SyntaxNode) -> Option<Self> {
22915 if Self::can_cast(syntax.kind()) {
22916 Some(Self { syntax })
22917 } else {
22918 None
22919 }
22920 }
22921 #[inline]
22922 fn syntax(&self) -> &SyntaxNode {
22923 &self.syntax
22924 }
22925}
22926impl AstNode for JsonBehaviorUnknown {
22927 #[inline]
22928 fn can_cast(kind: SyntaxKind) -> bool {
22929 kind == SyntaxKind::JSON_BEHAVIOR_UNKNOWN
22930 }
22931 #[inline]
22932 fn cast(syntax: SyntaxNode) -> Option<Self> {
22933 if Self::can_cast(syntax.kind()) {
22934 Some(Self { syntax })
22935 } else {
22936 None
22937 }
22938 }
22939 #[inline]
22940 fn syntax(&self) -> &SyntaxNode {
22941 &self.syntax
22942 }
22943}
22944impl AstNode for JsonEncodingClause {
22945 #[inline]
22946 fn can_cast(kind: SyntaxKind) -> bool {
22947 kind == SyntaxKind::JSON_ENCODING_CLAUSE
22948 }
22949 #[inline]
22950 fn cast(syntax: SyntaxNode) -> Option<Self> {
22951 if Self::can_cast(syntax.kind()) {
22952 Some(Self { syntax })
22953 } else {
22954 None
22955 }
22956 }
22957 #[inline]
22958 fn syntax(&self) -> &SyntaxNode {
22959 &self.syntax
22960 }
22961}
22962impl AstNode for JsonExistsFn {
22963 #[inline]
22964 fn can_cast(kind: SyntaxKind) -> bool {
22965 kind == SyntaxKind::JSON_EXISTS_FN
22966 }
22967 #[inline]
22968 fn cast(syntax: SyntaxNode) -> Option<Self> {
22969 if Self::can_cast(syntax.kind()) {
22970 Some(Self { syntax })
22971 } else {
22972 None
22973 }
22974 }
22975 #[inline]
22976 fn syntax(&self) -> &SyntaxNode {
22977 &self.syntax
22978 }
22979}
22980impl AstNode for JsonExprFormat {
22981 #[inline]
22982 fn can_cast(kind: SyntaxKind) -> bool {
22983 kind == SyntaxKind::JSON_EXPR_FORMAT
22984 }
22985 #[inline]
22986 fn cast(syntax: SyntaxNode) -> Option<Self> {
22987 if Self::can_cast(syntax.kind()) {
22988 Some(Self { syntax })
22989 } else {
22990 None
22991 }
22992 }
22993 #[inline]
22994 fn syntax(&self) -> &SyntaxNode {
22995 &self.syntax
22996 }
22997}
22998impl AstNode for JsonFn {
22999 #[inline]
23000 fn can_cast(kind: SyntaxKind) -> bool {
23001 kind == SyntaxKind::JSON_FN
23002 }
23003 #[inline]
23004 fn cast(syntax: SyntaxNode) -> Option<Self> {
23005 if Self::can_cast(syntax.kind()) {
23006 Some(Self { syntax })
23007 } else {
23008 None
23009 }
23010 }
23011 #[inline]
23012 fn syntax(&self) -> &SyntaxNode {
23013 &self.syntax
23014 }
23015}
23016impl AstNode for JsonFormatClause {
23017 #[inline]
23018 fn can_cast(kind: SyntaxKind) -> bool {
23019 kind == SyntaxKind::JSON_FORMAT_CLAUSE
23020 }
23021 #[inline]
23022 fn cast(syntax: SyntaxNode) -> Option<Self> {
23023 if Self::can_cast(syntax.kind()) {
23024 Some(Self { syntax })
23025 } else {
23026 None
23027 }
23028 }
23029 #[inline]
23030 fn syntax(&self) -> &SyntaxNode {
23031 &self.syntax
23032 }
23033}
23034impl AstNode for JsonKeyValue {
23035 #[inline]
23036 fn can_cast(kind: SyntaxKind) -> bool {
23037 kind == SyntaxKind::JSON_KEY_VALUE
23038 }
23039 #[inline]
23040 fn cast(syntax: SyntaxNode) -> Option<Self> {
23041 if Self::can_cast(syntax.kind()) {
23042 Some(Self { syntax })
23043 } else {
23044 None
23045 }
23046 }
23047 #[inline]
23048 fn syntax(&self) -> &SyntaxNode {
23049 &self.syntax
23050 }
23051}
23052impl AstNode for JsonKeysUniqueClause {
23053 #[inline]
23054 fn can_cast(kind: SyntaxKind) -> bool {
23055 kind == SyntaxKind::JSON_KEYS_UNIQUE_CLAUSE
23056 }
23057 #[inline]
23058 fn cast(syntax: SyntaxNode) -> Option<Self> {
23059 if Self::can_cast(syntax.kind()) {
23060 Some(Self { syntax })
23061 } else {
23062 None
23063 }
23064 }
23065 #[inline]
23066 fn syntax(&self) -> &SyntaxNode {
23067 &self.syntax
23068 }
23069}
23070impl AstNode for JsonNullClause {
23071 #[inline]
23072 fn can_cast(kind: SyntaxKind) -> bool {
23073 kind == SyntaxKind::JSON_NULL_CLAUSE
23074 }
23075 #[inline]
23076 fn cast(syntax: SyntaxNode) -> Option<Self> {
23077 if Self::can_cast(syntax.kind()) {
23078 Some(Self { syntax })
23079 } else {
23080 None
23081 }
23082 }
23083 #[inline]
23084 fn syntax(&self) -> &SyntaxNode {
23085 &self.syntax
23086 }
23087}
23088impl AstNode for JsonObjectAggFn {
23089 #[inline]
23090 fn can_cast(kind: SyntaxKind) -> bool {
23091 kind == SyntaxKind::JSON_OBJECT_AGG_FN
23092 }
23093 #[inline]
23094 fn cast(syntax: SyntaxNode) -> Option<Self> {
23095 if Self::can_cast(syntax.kind()) {
23096 Some(Self { syntax })
23097 } else {
23098 None
23099 }
23100 }
23101 #[inline]
23102 fn syntax(&self) -> &SyntaxNode {
23103 &self.syntax
23104 }
23105}
23106impl AstNode for JsonObjectFn {
23107 #[inline]
23108 fn can_cast(kind: SyntaxKind) -> bool {
23109 kind == SyntaxKind::JSON_OBJECT_FN
23110 }
23111 #[inline]
23112 fn cast(syntax: SyntaxNode) -> Option<Self> {
23113 if Self::can_cast(syntax.kind()) {
23114 Some(Self { syntax })
23115 } else {
23116 None
23117 }
23118 }
23119 #[inline]
23120 fn syntax(&self) -> &SyntaxNode {
23121 &self.syntax
23122 }
23123}
23124impl AstNode for JsonOnEmptyClause {
23125 #[inline]
23126 fn can_cast(kind: SyntaxKind) -> bool {
23127 kind == SyntaxKind::JSON_ON_EMPTY_CLAUSE
23128 }
23129 #[inline]
23130 fn cast(syntax: SyntaxNode) -> Option<Self> {
23131 if Self::can_cast(syntax.kind()) {
23132 Some(Self { syntax })
23133 } else {
23134 None
23135 }
23136 }
23137 #[inline]
23138 fn syntax(&self) -> &SyntaxNode {
23139 &self.syntax
23140 }
23141}
23142impl AstNode for JsonOnErrorClause {
23143 #[inline]
23144 fn can_cast(kind: SyntaxKind) -> bool {
23145 kind == SyntaxKind::JSON_ON_ERROR_CLAUSE
23146 }
23147 #[inline]
23148 fn cast(syntax: SyntaxNode) -> Option<Self> {
23149 if Self::can_cast(syntax.kind()) {
23150 Some(Self { syntax })
23151 } else {
23152 None
23153 }
23154 }
23155 #[inline]
23156 fn syntax(&self) -> &SyntaxNode {
23157 &self.syntax
23158 }
23159}
23160impl AstNode for JsonPassingArg {
23161 #[inline]
23162 fn can_cast(kind: SyntaxKind) -> bool {
23163 kind == SyntaxKind::JSON_PASSING_ARG
23164 }
23165 #[inline]
23166 fn cast(syntax: SyntaxNode) -> Option<Self> {
23167 if Self::can_cast(syntax.kind()) {
23168 Some(Self { syntax })
23169 } else {
23170 None
23171 }
23172 }
23173 #[inline]
23174 fn syntax(&self) -> &SyntaxNode {
23175 &self.syntax
23176 }
23177}
23178impl AstNode for JsonPassingClause {
23179 #[inline]
23180 fn can_cast(kind: SyntaxKind) -> bool {
23181 kind == SyntaxKind::JSON_PASSING_CLAUSE
23182 }
23183 #[inline]
23184 fn cast(syntax: SyntaxNode) -> Option<Self> {
23185 if Self::can_cast(syntax.kind()) {
23186 Some(Self { syntax })
23187 } else {
23188 None
23189 }
23190 }
23191 #[inline]
23192 fn syntax(&self) -> &SyntaxNode {
23193 &self.syntax
23194 }
23195}
23196impl AstNode for JsonPathClause {
23197 #[inline]
23198 fn can_cast(kind: SyntaxKind) -> bool {
23199 kind == SyntaxKind::JSON_PATH_CLAUSE
23200 }
23201 #[inline]
23202 fn cast(syntax: SyntaxNode) -> Option<Self> {
23203 if Self::can_cast(syntax.kind()) {
23204 Some(Self { syntax })
23205 } else {
23206 None
23207 }
23208 }
23209 #[inline]
23210 fn syntax(&self) -> &SyntaxNode {
23211 &self.syntax
23212 }
23213}
23214impl AstNode for JsonQueryFn {
23215 #[inline]
23216 fn can_cast(kind: SyntaxKind) -> bool {
23217 kind == SyntaxKind::JSON_QUERY_FN
23218 }
23219 #[inline]
23220 fn cast(syntax: SyntaxNode) -> Option<Self> {
23221 if Self::can_cast(syntax.kind()) {
23222 Some(Self { syntax })
23223 } else {
23224 None
23225 }
23226 }
23227 #[inline]
23228 fn syntax(&self) -> &SyntaxNode {
23229 &self.syntax
23230 }
23231}
23232impl AstNode for JsonQuotesClause {
23233 #[inline]
23234 fn can_cast(kind: SyntaxKind) -> bool {
23235 kind == SyntaxKind::JSON_QUOTES_CLAUSE
23236 }
23237 #[inline]
23238 fn cast(syntax: SyntaxNode) -> Option<Self> {
23239 if Self::can_cast(syntax.kind()) {
23240 Some(Self { syntax })
23241 } else {
23242 None
23243 }
23244 }
23245 #[inline]
23246 fn syntax(&self) -> &SyntaxNode {
23247 &self.syntax
23248 }
23249}
23250impl AstNode for JsonReturningClause {
23251 #[inline]
23252 fn can_cast(kind: SyntaxKind) -> bool {
23253 kind == SyntaxKind::JSON_RETURNING_CLAUSE
23254 }
23255 #[inline]
23256 fn cast(syntax: SyntaxNode) -> Option<Self> {
23257 if Self::can_cast(syntax.kind()) {
23258 Some(Self { syntax })
23259 } else {
23260 None
23261 }
23262 }
23263 #[inline]
23264 fn syntax(&self) -> &SyntaxNode {
23265 &self.syntax
23266 }
23267}
23268impl AstNode for JsonScalarFn {
23269 #[inline]
23270 fn can_cast(kind: SyntaxKind) -> bool {
23271 kind == SyntaxKind::JSON_SCALAR_FN
23272 }
23273 #[inline]
23274 fn cast(syntax: SyntaxNode) -> Option<Self> {
23275 if Self::can_cast(syntax.kind()) {
23276 Some(Self { syntax })
23277 } else {
23278 None
23279 }
23280 }
23281 #[inline]
23282 fn syntax(&self) -> &SyntaxNode {
23283 &self.syntax
23284 }
23285}
23286impl AstNode for JsonSelectFormat {
23287 #[inline]
23288 fn can_cast(kind: SyntaxKind) -> bool {
23289 kind == SyntaxKind::JSON_SELECT_FORMAT
23290 }
23291 #[inline]
23292 fn cast(syntax: SyntaxNode) -> Option<Self> {
23293 if Self::can_cast(syntax.kind()) {
23294 Some(Self { syntax })
23295 } else {
23296 None
23297 }
23298 }
23299 #[inline]
23300 fn syntax(&self) -> &SyntaxNode {
23301 &self.syntax
23302 }
23303}
23304impl AstNode for JsonSerializeFn {
23305 #[inline]
23306 fn can_cast(kind: SyntaxKind) -> bool {
23307 kind == SyntaxKind::JSON_SERIALIZE_FN
23308 }
23309 #[inline]
23310 fn cast(syntax: SyntaxNode) -> Option<Self> {
23311 if Self::can_cast(syntax.kind()) {
23312 Some(Self { syntax })
23313 } else {
23314 None
23315 }
23316 }
23317 #[inline]
23318 fn syntax(&self) -> &SyntaxNode {
23319 &self.syntax
23320 }
23321}
23322impl AstNode for JsonTable {
23323 #[inline]
23324 fn can_cast(kind: SyntaxKind) -> bool {
23325 kind == SyntaxKind::JSON_TABLE
23326 }
23327 #[inline]
23328 fn cast(syntax: SyntaxNode) -> Option<Self> {
23329 if Self::can_cast(syntax.kind()) {
23330 Some(Self { syntax })
23331 } else {
23332 None
23333 }
23334 }
23335 #[inline]
23336 fn syntax(&self) -> &SyntaxNode {
23337 &self.syntax
23338 }
23339}
23340impl AstNode for JsonTableColumn {
23341 #[inline]
23342 fn can_cast(kind: SyntaxKind) -> bool {
23343 kind == SyntaxKind::JSON_TABLE_COLUMN
23344 }
23345 #[inline]
23346 fn cast(syntax: SyntaxNode) -> Option<Self> {
23347 if Self::can_cast(syntax.kind()) {
23348 Some(Self { syntax })
23349 } else {
23350 None
23351 }
23352 }
23353 #[inline]
23354 fn syntax(&self) -> &SyntaxNode {
23355 &self.syntax
23356 }
23357}
23358impl AstNode for JsonTableColumnList {
23359 #[inline]
23360 fn can_cast(kind: SyntaxKind) -> bool {
23361 kind == SyntaxKind::JSON_TABLE_COLUMN_LIST
23362 }
23363 #[inline]
23364 fn cast(syntax: SyntaxNode) -> Option<Self> {
23365 if Self::can_cast(syntax.kind()) {
23366 Some(Self { syntax })
23367 } else {
23368 None
23369 }
23370 }
23371 #[inline]
23372 fn syntax(&self) -> &SyntaxNode {
23373 &self.syntax
23374 }
23375}
23376impl AstNode for JsonValueExpr {
23377 #[inline]
23378 fn can_cast(kind: SyntaxKind) -> bool {
23379 kind == SyntaxKind::JSON_VALUE_EXPR
23380 }
23381 #[inline]
23382 fn cast(syntax: SyntaxNode) -> Option<Self> {
23383 if Self::can_cast(syntax.kind()) {
23384 Some(Self { syntax })
23385 } else {
23386 None
23387 }
23388 }
23389 #[inline]
23390 fn syntax(&self) -> &SyntaxNode {
23391 &self.syntax
23392 }
23393}
23394impl AstNode for JsonValueFn {
23395 #[inline]
23396 fn can_cast(kind: SyntaxKind) -> bool {
23397 kind == SyntaxKind::JSON_VALUE_FN
23398 }
23399 #[inline]
23400 fn cast(syntax: SyntaxNode) -> Option<Self> {
23401 if Self::can_cast(syntax.kind()) {
23402 Some(Self { syntax })
23403 } else {
23404 None
23405 }
23406 }
23407 #[inline]
23408 fn syntax(&self) -> &SyntaxNode {
23409 &self.syntax
23410 }
23411}
23412impl AstNode for JsonWrapperBehaviorClause {
23413 #[inline]
23414 fn can_cast(kind: SyntaxKind) -> bool {
23415 kind == SyntaxKind::JSON_WRAPPER_BEHAVIOR_CLAUSE
23416 }
23417 #[inline]
23418 fn cast(syntax: SyntaxNode) -> Option<Self> {
23419 if Self::can_cast(syntax.kind()) {
23420 Some(Self { syntax })
23421 } else {
23422 None
23423 }
23424 }
23425 #[inline]
23426 fn syntax(&self) -> &SyntaxNode {
23427 &self.syntax
23428 }
23429}
23430impl AstNode for LanguageFuncOption {
23431 #[inline]
23432 fn can_cast(kind: SyntaxKind) -> bool {
23433 kind == SyntaxKind::LANGUAGE_FUNC_OPTION
23434 }
23435 #[inline]
23436 fn cast(syntax: SyntaxNode) -> Option<Self> {
23437 if Self::can_cast(syntax.kind()) {
23438 Some(Self { syntax })
23439 } else {
23440 None
23441 }
23442 }
23443 #[inline]
23444 fn syntax(&self) -> &SyntaxNode {
23445 &self.syntax
23446 }
23447}
23448impl AstNode for LeakproofFuncOption {
23449 #[inline]
23450 fn can_cast(kind: SyntaxKind) -> bool {
23451 kind == SyntaxKind::LEAKPROOF_FUNC_OPTION
23452 }
23453 #[inline]
23454 fn cast(syntax: SyntaxNode) -> Option<Self> {
23455 if Self::can_cast(syntax.kind()) {
23456 Some(Self { syntax })
23457 } else {
23458 None
23459 }
23460 }
23461 #[inline]
23462 fn syntax(&self) -> &SyntaxNode {
23463 &self.syntax
23464 }
23465}
23466impl AstNode for LikeClause {
23467 #[inline]
23468 fn can_cast(kind: SyntaxKind) -> bool {
23469 kind == SyntaxKind::LIKE_CLAUSE
23470 }
23471 #[inline]
23472 fn cast(syntax: SyntaxNode) -> Option<Self> {
23473 if Self::can_cast(syntax.kind()) {
23474 Some(Self { syntax })
23475 } else {
23476 None
23477 }
23478 }
23479 #[inline]
23480 fn syntax(&self) -> &SyntaxNode {
23481 &self.syntax
23482 }
23483}
23484impl AstNode for LikeOption {
23485 #[inline]
23486 fn can_cast(kind: SyntaxKind) -> bool {
23487 kind == SyntaxKind::LIKE_OPTION
23488 }
23489 #[inline]
23490 fn cast(syntax: SyntaxNode) -> Option<Self> {
23491 if Self::can_cast(syntax.kind()) {
23492 Some(Self { syntax })
23493 } else {
23494 None
23495 }
23496 }
23497 #[inline]
23498 fn syntax(&self) -> &SyntaxNode {
23499 &self.syntax
23500 }
23501}
23502impl AstNode for LimitClause {
23503 #[inline]
23504 fn can_cast(kind: SyntaxKind) -> bool {
23505 kind == SyntaxKind::LIMIT_CLAUSE
23506 }
23507 #[inline]
23508 fn cast(syntax: SyntaxNode) -> Option<Self> {
23509 if Self::can_cast(syntax.kind()) {
23510 Some(Self { syntax })
23511 } else {
23512 None
23513 }
23514 }
23515 #[inline]
23516 fn syntax(&self) -> &SyntaxNode {
23517 &self.syntax
23518 }
23519}
23520impl AstNode for LimitToTables {
23521 #[inline]
23522 fn can_cast(kind: SyntaxKind) -> bool {
23523 kind == SyntaxKind::LIMIT_TO_TABLES
23524 }
23525 #[inline]
23526 fn cast(syntax: SyntaxNode) -> Option<Self> {
23527 if Self::can_cast(syntax.kind()) {
23528 Some(Self { syntax })
23529 } else {
23530 None
23531 }
23532 }
23533 #[inline]
23534 fn syntax(&self) -> &SyntaxNode {
23535 &self.syntax
23536 }
23537}
23538impl AstNode for Listen {
23539 #[inline]
23540 fn can_cast(kind: SyntaxKind) -> bool {
23541 kind == SyntaxKind::LISTEN
23542 }
23543 #[inline]
23544 fn cast(syntax: SyntaxNode) -> Option<Self> {
23545 if Self::can_cast(syntax.kind()) {
23546 Some(Self { syntax })
23547 } else {
23548 None
23549 }
23550 }
23551 #[inline]
23552 fn syntax(&self) -> &SyntaxNode {
23553 &self.syntax
23554 }
23555}
23556impl AstNode for Literal {
23557 #[inline]
23558 fn can_cast(kind: SyntaxKind) -> bool {
23559 kind == SyntaxKind::LITERAL
23560 }
23561 #[inline]
23562 fn cast(syntax: SyntaxNode) -> Option<Self> {
23563 if Self::can_cast(syntax.kind()) {
23564 Some(Self { syntax })
23565 } else {
23566 None
23567 }
23568 }
23569 #[inline]
23570 fn syntax(&self) -> &SyntaxNode {
23571 &self.syntax
23572 }
23573}
23574impl AstNode for Load {
23575 #[inline]
23576 fn can_cast(kind: SyntaxKind) -> bool {
23577 kind == SyntaxKind::LOAD
23578 }
23579 #[inline]
23580 fn cast(syntax: SyntaxNode) -> Option<Self> {
23581 if Self::can_cast(syntax.kind()) {
23582 Some(Self { syntax })
23583 } else {
23584 None
23585 }
23586 }
23587 #[inline]
23588 fn syntax(&self) -> &SyntaxNode {
23589 &self.syntax
23590 }
23591}
23592impl AstNode for Lock {
23593 #[inline]
23594 fn can_cast(kind: SyntaxKind) -> bool {
23595 kind == SyntaxKind::LOCK
23596 }
23597 #[inline]
23598 fn cast(syntax: SyntaxNode) -> Option<Self> {
23599 if Self::can_cast(syntax.kind()) {
23600 Some(Self { syntax })
23601 } else {
23602 None
23603 }
23604 }
23605 #[inline]
23606 fn syntax(&self) -> &SyntaxNode {
23607 &self.syntax
23608 }
23609}
23610impl AstNode for LockingClause {
23611 #[inline]
23612 fn can_cast(kind: SyntaxKind) -> bool {
23613 kind == SyntaxKind::LOCKING_CLAUSE
23614 }
23615 #[inline]
23616 fn cast(syntax: SyntaxNode) -> Option<Self> {
23617 if Self::can_cast(syntax.kind()) {
23618 Some(Self { syntax })
23619 } else {
23620 None
23621 }
23622 }
23623 #[inline]
23624 fn syntax(&self) -> &SyntaxNode {
23625 &self.syntax
23626 }
23627}
23628impl AstNode for Lteq {
23629 #[inline]
23630 fn can_cast(kind: SyntaxKind) -> bool {
23631 kind == SyntaxKind::LTEQ
23632 }
23633 #[inline]
23634 fn cast(syntax: SyntaxNode) -> Option<Self> {
23635 if Self::can_cast(syntax.kind()) {
23636 Some(Self { syntax })
23637 } else {
23638 None
23639 }
23640 }
23641 #[inline]
23642 fn syntax(&self) -> &SyntaxNode {
23643 &self.syntax
23644 }
23645}
23646impl AstNode for MatchFull {
23647 #[inline]
23648 fn can_cast(kind: SyntaxKind) -> bool {
23649 kind == SyntaxKind::MATCH_FULL
23650 }
23651 #[inline]
23652 fn cast(syntax: SyntaxNode) -> Option<Self> {
23653 if Self::can_cast(syntax.kind()) {
23654 Some(Self { syntax })
23655 } else {
23656 None
23657 }
23658 }
23659 #[inline]
23660 fn syntax(&self) -> &SyntaxNode {
23661 &self.syntax
23662 }
23663}
23664impl AstNode for MatchPartial {
23665 #[inline]
23666 fn can_cast(kind: SyntaxKind) -> bool {
23667 kind == SyntaxKind::MATCH_PARTIAL
23668 }
23669 #[inline]
23670 fn cast(syntax: SyntaxNode) -> Option<Self> {
23671 if Self::can_cast(syntax.kind()) {
23672 Some(Self { syntax })
23673 } else {
23674 None
23675 }
23676 }
23677 #[inline]
23678 fn syntax(&self) -> &SyntaxNode {
23679 &self.syntax
23680 }
23681}
23682impl AstNode for MatchSimple {
23683 #[inline]
23684 fn can_cast(kind: SyntaxKind) -> bool {
23685 kind == SyntaxKind::MATCH_SIMPLE
23686 }
23687 #[inline]
23688 fn cast(syntax: SyntaxNode) -> Option<Self> {
23689 if Self::can_cast(syntax.kind()) {
23690 Some(Self { syntax })
23691 } else {
23692 None
23693 }
23694 }
23695 #[inline]
23696 fn syntax(&self) -> &SyntaxNode {
23697 &self.syntax
23698 }
23699}
23700impl AstNode for Materialized {
23701 #[inline]
23702 fn can_cast(kind: SyntaxKind) -> bool {
23703 kind == SyntaxKind::MATERIALIZED
23704 }
23705 #[inline]
23706 fn cast(syntax: SyntaxNode) -> Option<Self> {
23707 if Self::can_cast(syntax.kind()) {
23708 Some(Self { syntax })
23709 } else {
23710 None
23711 }
23712 }
23713 #[inline]
23714 fn syntax(&self) -> &SyntaxNode {
23715 &self.syntax
23716 }
23717}
23718impl AstNode for Merge {
23719 #[inline]
23720 fn can_cast(kind: SyntaxKind) -> bool {
23721 kind == SyntaxKind::MERGE
23722 }
23723 #[inline]
23724 fn cast(syntax: SyntaxNode) -> Option<Self> {
23725 if Self::can_cast(syntax.kind()) {
23726 Some(Self { syntax })
23727 } else {
23728 None
23729 }
23730 }
23731 #[inline]
23732 fn syntax(&self) -> &SyntaxNode {
23733 &self.syntax
23734 }
23735}
23736impl AstNode for MergeDelete {
23737 #[inline]
23738 fn can_cast(kind: SyntaxKind) -> bool {
23739 kind == SyntaxKind::MERGE_DELETE
23740 }
23741 #[inline]
23742 fn cast(syntax: SyntaxNode) -> Option<Self> {
23743 if Self::can_cast(syntax.kind()) {
23744 Some(Self { syntax })
23745 } else {
23746 None
23747 }
23748 }
23749 #[inline]
23750 fn syntax(&self) -> &SyntaxNode {
23751 &self.syntax
23752 }
23753}
23754impl AstNode for MergeDoNothing {
23755 #[inline]
23756 fn can_cast(kind: SyntaxKind) -> bool {
23757 kind == SyntaxKind::MERGE_DO_NOTHING
23758 }
23759 #[inline]
23760 fn cast(syntax: SyntaxNode) -> Option<Self> {
23761 if Self::can_cast(syntax.kind()) {
23762 Some(Self { syntax })
23763 } else {
23764 None
23765 }
23766 }
23767 #[inline]
23768 fn syntax(&self) -> &SyntaxNode {
23769 &self.syntax
23770 }
23771}
23772impl AstNode for MergeInsert {
23773 #[inline]
23774 fn can_cast(kind: SyntaxKind) -> bool {
23775 kind == SyntaxKind::MERGE_INSERT
23776 }
23777 #[inline]
23778 fn cast(syntax: SyntaxNode) -> Option<Self> {
23779 if Self::can_cast(syntax.kind()) {
23780 Some(Self { syntax })
23781 } else {
23782 None
23783 }
23784 }
23785 #[inline]
23786 fn syntax(&self) -> &SyntaxNode {
23787 &self.syntax
23788 }
23789}
23790impl AstNode for MergePartitions {
23791 #[inline]
23792 fn can_cast(kind: SyntaxKind) -> bool {
23793 kind == SyntaxKind::MERGE_PARTITIONS
23794 }
23795 #[inline]
23796 fn cast(syntax: SyntaxNode) -> Option<Self> {
23797 if Self::can_cast(syntax.kind()) {
23798 Some(Self { syntax })
23799 } else {
23800 None
23801 }
23802 }
23803 #[inline]
23804 fn syntax(&self) -> &SyntaxNode {
23805 &self.syntax
23806 }
23807}
23808impl AstNode for MergeUpdate {
23809 #[inline]
23810 fn can_cast(kind: SyntaxKind) -> bool {
23811 kind == SyntaxKind::MERGE_UPDATE
23812 }
23813 #[inline]
23814 fn cast(syntax: SyntaxNode) -> Option<Self> {
23815 if Self::can_cast(syntax.kind()) {
23816 Some(Self { syntax })
23817 } else {
23818 None
23819 }
23820 }
23821 #[inline]
23822 fn syntax(&self) -> &SyntaxNode {
23823 &self.syntax
23824 }
23825}
23826impl AstNode for MergeWhenMatched {
23827 #[inline]
23828 fn can_cast(kind: SyntaxKind) -> bool {
23829 kind == SyntaxKind::MERGE_WHEN_MATCHED
23830 }
23831 #[inline]
23832 fn cast(syntax: SyntaxNode) -> Option<Self> {
23833 if Self::can_cast(syntax.kind()) {
23834 Some(Self { syntax })
23835 } else {
23836 None
23837 }
23838 }
23839 #[inline]
23840 fn syntax(&self) -> &SyntaxNode {
23841 &self.syntax
23842 }
23843}
23844impl AstNode for MergeWhenNotMatchedSource {
23845 #[inline]
23846 fn can_cast(kind: SyntaxKind) -> bool {
23847 kind == SyntaxKind::MERGE_WHEN_NOT_MATCHED_SOURCE
23848 }
23849 #[inline]
23850 fn cast(syntax: SyntaxNode) -> Option<Self> {
23851 if Self::can_cast(syntax.kind()) {
23852 Some(Self { syntax })
23853 } else {
23854 None
23855 }
23856 }
23857 #[inline]
23858 fn syntax(&self) -> &SyntaxNode {
23859 &self.syntax
23860 }
23861}
23862impl AstNode for MergeWhenNotMatchedTarget {
23863 #[inline]
23864 fn can_cast(kind: SyntaxKind) -> bool {
23865 kind == SyntaxKind::MERGE_WHEN_NOT_MATCHED_TARGET
23866 }
23867 #[inline]
23868 fn cast(syntax: SyntaxNode) -> Option<Self> {
23869 if Self::can_cast(syntax.kind()) {
23870 Some(Self { syntax })
23871 } else {
23872 None
23873 }
23874 }
23875 #[inline]
23876 fn syntax(&self) -> &SyntaxNode {
23877 &self.syntax
23878 }
23879}
23880impl AstNode for Move {
23881 #[inline]
23882 fn can_cast(kind: SyntaxKind) -> bool {
23883 kind == SyntaxKind::MOVE
23884 }
23885 #[inline]
23886 fn cast(syntax: SyntaxNode) -> Option<Self> {
23887 if Self::can_cast(syntax.kind()) {
23888 Some(Self { syntax })
23889 } else {
23890 None
23891 }
23892 }
23893 #[inline]
23894 fn syntax(&self) -> &SyntaxNode {
23895 &self.syntax
23896 }
23897}
23898impl AstNode for Name {
23899 #[inline]
23900 fn can_cast(kind: SyntaxKind) -> bool {
23901 kind == SyntaxKind::NAME
23902 }
23903 #[inline]
23904 fn cast(syntax: SyntaxNode) -> Option<Self> {
23905 if Self::can_cast(syntax.kind()) {
23906 Some(Self { syntax })
23907 } else {
23908 None
23909 }
23910 }
23911 #[inline]
23912 fn syntax(&self) -> &SyntaxNode {
23913 &self.syntax
23914 }
23915}
23916impl AstNode for NameRef {
23917 #[inline]
23918 fn can_cast(kind: SyntaxKind) -> bool {
23919 kind == SyntaxKind::NAME_REF
23920 }
23921 #[inline]
23922 fn cast(syntax: SyntaxNode) -> Option<Self> {
23923 if Self::can_cast(syntax.kind()) {
23924 Some(Self { syntax })
23925 } else {
23926 None
23927 }
23928 }
23929 #[inline]
23930 fn syntax(&self) -> &SyntaxNode {
23931 &self.syntax
23932 }
23933}
23934impl AstNode for NamedArg {
23935 #[inline]
23936 fn can_cast(kind: SyntaxKind) -> bool {
23937 kind == SyntaxKind::NAMED_ARG
23938 }
23939 #[inline]
23940 fn cast(syntax: SyntaxNode) -> Option<Self> {
23941 if Self::can_cast(syntax.kind()) {
23942 Some(Self { syntax })
23943 } else {
23944 None
23945 }
23946 }
23947 #[inline]
23948 fn syntax(&self) -> &SyntaxNode {
23949 &self.syntax
23950 }
23951}
23952impl AstNode for Neq {
23953 #[inline]
23954 fn can_cast(kind: SyntaxKind) -> bool {
23955 kind == SyntaxKind::NEQ
23956 }
23957 #[inline]
23958 fn cast(syntax: SyntaxNode) -> Option<Self> {
23959 if Self::can_cast(syntax.kind()) {
23960 Some(Self { syntax })
23961 } else {
23962 None
23963 }
23964 }
23965 #[inline]
23966 fn syntax(&self) -> &SyntaxNode {
23967 &self.syntax
23968 }
23969}
23970impl AstNode for Neqb {
23971 #[inline]
23972 fn can_cast(kind: SyntaxKind) -> bool {
23973 kind == SyntaxKind::NEQB
23974 }
23975 #[inline]
23976 fn cast(syntax: SyntaxNode) -> Option<Self> {
23977 if Self::can_cast(syntax.kind()) {
23978 Some(Self { syntax })
23979 } else {
23980 None
23981 }
23982 }
23983 #[inline]
23984 fn syntax(&self) -> &SyntaxNode {
23985 &self.syntax
23986 }
23987}
23988impl AstNode for NoAction {
23989 #[inline]
23990 fn can_cast(kind: SyntaxKind) -> bool {
23991 kind == SyntaxKind::NO_ACTION
23992 }
23993 #[inline]
23994 fn cast(syntax: SyntaxNode) -> Option<Self> {
23995 if Self::can_cast(syntax.kind()) {
23996 Some(Self { syntax })
23997 } else {
23998 None
23999 }
24000 }
24001 #[inline]
24002 fn syntax(&self) -> &SyntaxNode {
24003 &self.syntax
24004 }
24005}
24006impl AstNode for NoDependsOnExtension {
24007 #[inline]
24008 fn can_cast(kind: SyntaxKind) -> bool {
24009 kind == SyntaxKind::NO_DEPENDS_ON_EXTENSION
24010 }
24011 #[inline]
24012 fn cast(syntax: SyntaxNode) -> Option<Self> {
24013 if Self::can_cast(syntax.kind()) {
24014 Some(Self { syntax })
24015 } else {
24016 None
24017 }
24018 }
24019 #[inline]
24020 fn syntax(&self) -> &SyntaxNode {
24021 &self.syntax
24022 }
24023}
24024impl AstNode for NoForceRls {
24025 #[inline]
24026 fn can_cast(kind: SyntaxKind) -> bool {
24027 kind == SyntaxKind::NO_FORCE_RLS
24028 }
24029 #[inline]
24030 fn cast(syntax: SyntaxNode) -> Option<Self> {
24031 if Self::can_cast(syntax.kind()) {
24032 Some(Self { syntax })
24033 } else {
24034 None
24035 }
24036 }
24037 #[inline]
24038 fn syntax(&self) -> &SyntaxNode {
24039 &self.syntax
24040 }
24041}
24042impl AstNode for NoInherit {
24043 #[inline]
24044 fn can_cast(kind: SyntaxKind) -> bool {
24045 kind == SyntaxKind::NO_INHERIT
24046 }
24047 #[inline]
24048 fn cast(syntax: SyntaxNode) -> Option<Self> {
24049 if Self::can_cast(syntax.kind()) {
24050 Some(Self { syntax })
24051 } else {
24052 None
24053 }
24054 }
24055 #[inline]
24056 fn syntax(&self) -> &SyntaxNode {
24057 &self.syntax
24058 }
24059}
24060impl AstNode for NoInheritTable {
24061 #[inline]
24062 fn can_cast(kind: SyntaxKind) -> bool {
24063 kind == SyntaxKind::NO_INHERIT_TABLE
24064 }
24065 #[inline]
24066 fn cast(syntax: SyntaxNode) -> Option<Self> {
24067 if Self::can_cast(syntax.kind()) {
24068 Some(Self { syntax })
24069 } else {
24070 None
24071 }
24072 }
24073 #[inline]
24074 fn syntax(&self) -> &SyntaxNode {
24075 &self.syntax
24076 }
24077}
24078impl AstNode for NonStandardParam {
24079 #[inline]
24080 fn can_cast(kind: SyntaxKind) -> bool {
24081 kind == SyntaxKind::NON_STANDARD_PARAM
24082 }
24083 #[inline]
24084 fn cast(syntax: SyntaxNode) -> Option<Self> {
24085 if Self::can_cast(syntax.kind()) {
24086 Some(Self { syntax })
24087 } else {
24088 None
24089 }
24090 }
24091 #[inline]
24092 fn syntax(&self) -> &SyntaxNode {
24093 &self.syntax
24094 }
24095}
24096impl AstNode for NotDeferrable {
24097 #[inline]
24098 fn can_cast(kind: SyntaxKind) -> bool {
24099 kind == SyntaxKind::NOT_DEFERRABLE
24100 }
24101 #[inline]
24102 fn cast(syntax: SyntaxNode) -> Option<Self> {
24103 if Self::can_cast(syntax.kind()) {
24104 Some(Self { syntax })
24105 } else {
24106 None
24107 }
24108 }
24109 #[inline]
24110 fn syntax(&self) -> &SyntaxNode {
24111 &self.syntax
24112 }
24113}
24114impl AstNode for NotDeferrableConstraintOption {
24115 #[inline]
24116 fn can_cast(kind: SyntaxKind) -> bool {
24117 kind == SyntaxKind::NOT_DEFERRABLE_CONSTRAINT_OPTION
24118 }
24119 #[inline]
24120 fn cast(syntax: SyntaxNode) -> Option<Self> {
24121 if Self::can_cast(syntax.kind()) {
24122 Some(Self { syntax })
24123 } else {
24124 None
24125 }
24126 }
24127 #[inline]
24128 fn syntax(&self) -> &SyntaxNode {
24129 &self.syntax
24130 }
24131}
24132impl AstNode for NotEnforced {
24133 #[inline]
24134 fn can_cast(kind: SyntaxKind) -> bool {
24135 kind == SyntaxKind::NOT_ENFORCED
24136 }
24137 #[inline]
24138 fn cast(syntax: SyntaxNode) -> Option<Self> {
24139 if Self::can_cast(syntax.kind()) {
24140 Some(Self { syntax })
24141 } else {
24142 None
24143 }
24144 }
24145 #[inline]
24146 fn syntax(&self) -> &SyntaxNode {
24147 &self.syntax
24148 }
24149}
24150impl AstNode for NotIlike {
24151 #[inline]
24152 fn can_cast(kind: SyntaxKind) -> bool {
24153 kind == SyntaxKind::NOT_ILIKE
24154 }
24155 #[inline]
24156 fn cast(syntax: SyntaxNode) -> Option<Self> {
24157 if Self::can_cast(syntax.kind()) {
24158 Some(Self { syntax })
24159 } else {
24160 None
24161 }
24162 }
24163 #[inline]
24164 fn syntax(&self) -> &SyntaxNode {
24165 &self.syntax
24166 }
24167}
24168impl AstNode for NotIn {
24169 #[inline]
24170 fn can_cast(kind: SyntaxKind) -> bool {
24171 kind == SyntaxKind::NOT_IN
24172 }
24173 #[inline]
24174 fn cast(syntax: SyntaxNode) -> Option<Self> {
24175 if Self::can_cast(syntax.kind()) {
24176 Some(Self { syntax })
24177 } else {
24178 None
24179 }
24180 }
24181 #[inline]
24182 fn syntax(&self) -> &SyntaxNode {
24183 &self.syntax
24184 }
24185}
24186impl AstNode for NotLike {
24187 #[inline]
24188 fn can_cast(kind: SyntaxKind) -> bool {
24189 kind == SyntaxKind::NOT_LIKE
24190 }
24191 #[inline]
24192 fn cast(syntax: SyntaxNode) -> Option<Self> {
24193 if Self::can_cast(syntax.kind()) {
24194 Some(Self { syntax })
24195 } else {
24196 None
24197 }
24198 }
24199 #[inline]
24200 fn syntax(&self) -> &SyntaxNode {
24201 &self.syntax
24202 }
24203}
24204impl AstNode for NotMaterialized {
24205 #[inline]
24206 fn can_cast(kind: SyntaxKind) -> bool {
24207 kind == SyntaxKind::NOT_MATERIALIZED
24208 }
24209 #[inline]
24210 fn cast(syntax: SyntaxNode) -> Option<Self> {
24211 if Self::can_cast(syntax.kind()) {
24212 Some(Self { syntax })
24213 } else {
24214 None
24215 }
24216 }
24217 #[inline]
24218 fn syntax(&self) -> &SyntaxNode {
24219 &self.syntax
24220 }
24221}
24222impl AstNode for NotNullConstraint {
24223 #[inline]
24224 fn can_cast(kind: SyntaxKind) -> bool {
24225 kind == SyntaxKind::NOT_NULL_CONSTRAINT
24226 }
24227 #[inline]
24228 fn cast(syntax: SyntaxNode) -> Option<Self> {
24229 if Self::can_cast(syntax.kind()) {
24230 Some(Self { syntax })
24231 } else {
24232 None
24233 }
24234 }
24235 #[inline]
24236 fn syntax(&self) -> &SyntaxNode {
24237 &self.syntax
24238 }
24239}
24240impl AstNode for NotOf {
24241 #[inline]
24242 fn can_cast(kind: SyntaxKind) -> bool {
24243 kind == SyntaxKind::NOT_OF
24244 }
24245 #[inline]
24246 fn cast(syntax: SyntaxNode) -> Option<Self> {
24247 if Self::can_cast(syntax.kind()) {
24248 Some(Self { syntax })
24249 } else {
24250 None
24251 }
24252 }
24253 #[inline]
24254 fn syntax(&self) -> &SyntaxNode {
24255 &self.syntax
24256 }
24257}
24258impl AstNode for NotSimilarTo {
24259 #[inline]
24260 fn can_cast(kind: SyntaxKind) -> bool {
24261 kind == SyntaxKind::NOT_SIMILAR_TO
24262 }
24263 #[inline]
24264 fn cast(syntax: SyntaxNode) -> Option<Self> {
24265 if Self::can_cast(syntax.kind()) {
24266 Some(Self { syntax })
24267 } else {
24268 None
24269 }
24270 }
24271 #[inline]
24272 fn syntax(&self) -> &SyntaxNode {
24273 &self.syntax
24274 }
24275}
24276impl AstNode for NotValid {
24277 #[inline]
24278 fn can_cast(kind: SyntaxKind) -> bool {
24279 kind == SyntaxKind::NOT_VALID
24280 }
24281 #[inline]
24282 fn cast(syntax: SyntaxNode) -> Option<Self> {
24283 if Self::can_cast(syntax.kind()) {
24284 Some(Self { syntax })
24285 } else {
24286 None
24287 }
24288 }
24289 #[inline]
24290 fn syntax(&self) -> &SyntaxNode {
24291 &self.syntax
24292 }
24293}
24294impl AstNode for Notify {
24295 #[inline]
24296 fn can_cast(kind: SyntaxKind) -> bool {
24297 kind == SyntaxKind::NOTIFY
24298 }
24299 #[inline]
24300 fn cast(syntax: SyntaxNode) -> Option<Self> {
24301 if Self::can_cast(syntax.kind()) {
24302 Some(Self { syntax })
24303 } else {
24304 None
24305 }
24306 }
24307 #[inline]
24308 fn syntax(&self) -> &SyntaxNode {
24309 &self.syntax
24310 }
24311}
24312impl AstNode for NullConstraint {
24313 #[inline]
24314 fn can_cast(kind: SyntaxKind) -> bool {
24315 kind == SyntaxKind::NULL_CONSTRAINT
24316 }
24317 #[inline]
24318 fn cast(syntax: SyntaxNode) -> Option<Self> {
24319 if Self::can_cast(syntax.kind()) {
24320 Some(Self { syntax })
24321 } else {
24322 None
24323 }
24324 }
24325 #[inline]
24326 fn syntax(&self) -> &SyntaxNode {
24327 &self.syntax
24328 }
24329}
24330impl AstNode for NullsDistinct {
24331 #[inline]
24332 fn can_cast(kind: SyntaxKind) -> bool {
24333 kind == SyntaxKind::NULLS_DISTINCT
24334 }
24335 #[inline]
24336 fn cast(syntax: SyntaxNode) -> Option<Self> {
24337 if Self::can_cast(syntax.kind()) {
24338 Some(Self { syntax })
24339 } else {
24340 None
24341 }
24342 }
24343 #[inline]
24344 fn syntax(&self) -> &SyntaxNode {
24345 &self.syntax
24346 }
24347}
24348impl AstNode for NullsFirst {
24349 #[inline]
24350 fn can_cast(kind: SyntaxKind) -> bool {
24351 kind == SyntaxKind::NULLS_FIRST
24352 }
24353 #[inline]
24354 fn cast(syntax: SyntaxNode) -> Option<Self> {
24355 if Self::can_cast(syntax.kind()) {
24356 Some(Self { syntax })
24357 } else {
24358 None
24359 }
24360 }
24361 #[inline]
24362 fn syntax(&self) -> &SyntaxNode {
24363 &self.syntax
24364 }
24365}
24366impl AstNode for NullsLast {
24367 #[inline]
24368 fn can_cast(kind: SyntaxKind) -> bool {
24369 kind == SyntaxKind::NULLS_LAST
24370 }
24371 #[inline]
24372 fn cast(syntax: SyntaxNode) -> Option<Self> {
24373 if Self::can_cast(syntax.kind()) {
24374 Some(Self { syntax })
24375 } else {
24376 None
24377 }
24378 }
24379 #[inline]
24380 fn syntax(&self) -> &SyntaxNode {
24381 &self.syntax
24382 }
24383}
24384impl AstNode for NullsNotDistinct {
24385 #[inline]
24386 fn can_cast(kind: SyntaxKind) -> bool {
24387 kind == SyntaxKind::NULLS_NOT_DISTINCT
24388 }
24389 #[inline]
24390 fn cast(syntax: SyntaxNode) -> Option<Self> {
24391 if Self::can_cast(syntax.kind()) {
24392 Some(Self { syntax })
24393 } else {
24394 None
24395 }
24396 }
24397 #[inline]
24398 fn syntax(&self) -> &SyntaxNode {
24399 &self.syntax
24400 }
24401}
24402impl AstNode for OfType {
24403 #[inline]
24404 fn can_cast(kind: SyntaxKind) -> bool {
24405 kind == SyntaxKind::OF_TYPE
24406 }
24407 #[inline]
24408 fn cast(syntax: SyntaxNode) -> Option<Self> {
24409 if Self::can_cast(syntax.kind()) {
24410 Some(Self { syntax })
24411 } else {
24412 None
24413 }
24414 }
24415 #[inline]
24416 fn syntax(&self) -> &SyntaxNode {
24417 &self.syntax
24418 }
24419}
24420impl AstNode for OffsetClause {
24421 #[inline]
24422 fn can_cast(kind: SyntaxKind) -> bool {
24423 kind == SyntaxKind::OFFSET_CLAUSE
24424 }
24425 #[inline]
24426 fn cast(syntax: SyntaxNode) -> Option<Self> {
24427 if Self::can_cast(syntax.kind()) {
24428 Some(Self { syntax })
24429 } else {
24430 None
24431 }
24432 }
24433 #[inline]
24434 fn syntax(&self) -> &SyntaxNode {
24435 &self.syntax
24436 }
24437}
24438impl AstNode for OnClause {
24439 #[inline]
24440 fn can_cast(kind: SyntaxKind) -> bool {
24441 kind == SyntaxKind::ON_CLAUSE
24442 }
24443 #[inline]
24444 fn cast(syntax: SyntaxNode) -> Option<Self> {
24445 if Self::can_cast(syntax.kind()) {
24446 Some(Self { syntax })
24447 } else {
24448 None
24449 }
24450 }
24451 #[inline]
24452 fn syntax(&self) -> &SyntaxNode {
24453 &self.syntax
24454 }
24455}
24456impl AstNode for OnCommit {
24457 #[inline]
24458 fn can_cast(kind: SyntaxKind) -> bool {
24459 kind == SyntaxKind::ON_COMMIT
24460 }
24461 #[inline]
24462 fn cast(syntax: SyntaxNode) -> Option<Self> {
24463 if Self::can_cast(syntax.kind()) {
24464 Some(Self { syntax })
24465 } else {
24466 None
24467 }
24468 }
24469 #[inline]
24470 fn syntax(&self) -> &SyntaxNode {
24471 &self.syntax
24472 }
24473}
24474impl AstNode for OnConflictClause {
24475 #[inline]
24476 fn can_cast(kind: SyntaxKind) -> bool {
24477 kind == SyntaxKind::ON_CONFLICT_CLAUSE
24478 }
24479 #[inline]
24480 fn cast(syntax: SyntaxNode) -> Option<Self> {
24481 if Self::can_cast(syntax.kind()) {
24482 Some(Self { syntax })
24483 } else {
24484 None
24485 }
24486 }
24487 #[inline]
24488 fn syntax(&self) -> &SyntaxNode {
24489 &self.syntax
24490 }
24491}
24492impl AstNode for OnDeleteAction {
24493 #[inline]
24494 fn can_cast(kind: SyntaxKind) -> bool {
24495 kind == SyntaxKind::ON_DELETE_ACTION
24496 }
24497 #[inline]
24498 fn cast(syntax: SyntaxNode) -> Option<Self> {
24499 if Self::can_cast(syntax.kind()) {
24500 Some(Self { syntax })
24501 } else {
24502 None
24503 }
24504 }
24505 #[inline]
24506 fn syntax(&self) -> &SyntaxNode {
24507 &self.syntax
24508 }
24509}
24510impl AstNode for OnTable {
24511 #[inline]
24512 fn can_cast(kind: SyntaxKind) -> bool {
24513 kind == SyntaxKind::ON_TABLE
24514 }
24515 #[inline]
24516 fn cast(syntax: SyntaxNode) -> Option<Self> {
24517 if Self::can_cast(syntax.kind()) {
24518 Some(Self { syntax })
24519 } else {
24520 None
24521 }
24522 }
24523 #[inline]
24524 fn syntax(&self) -> &SyntaxNode {
24525 &self.syntax
24526 }
24527}
24528impl AstNode for OnUpdateAction {
24529 #[inline]
24530 fn can_cast(kind: SyntaxKind) -> bool {
24531 kind == SyntaxKind::ON_UPDATE_ACTION
24532 }
24533 #[inline]
24534 fn cast(syntax: SyntaxNode) -> Option<Self> {
24535 if Self::can_cast(syntax.kind()) {
24536 Some(Self { syntax })
24537 } else {
24538 None
24539 }
24540 }
24541 #[inline]
24542 fn syntax(&self) -> &SyntaxNode {
24543 &self.syntax
24544 }
24545}
24546impl AstNode for Op {
24547 #[inline]
24548 fn can_cast(kind: SyntaxKind) -> bool {
24549 kind == SyntaxKind::OP
24550 }
24551 #[inline]
24552 fn cast(syntax: SyntaxNode) -> Option<Self> {
24553 if Self::can_cast(syntax.kind()) {
24554 Some(Self { syntax })
24555 } else {
24556 None
24557 }
24558 }
24559 #[inline]
24560 fn syntax(&self) -> &SyntaxNode {
24561 &self.syntax
24562 }
24563}
24564impl AstNode for OpClassOption {
24565 #[inline]
24566 fn can_cast(kind: SyntaxKind) -> bool {
24567 kind == SyntaxKind::OP_CLASS_OPTION
24568 }
24569 #[inline]
24570 fn cast(syntax: SyntaxNode) -> Option<Self> {
24571 if Self::can_cast(syntax.kind()) {
24572 Some(Self { syntax })
24573 } else {
24574 None
24575 }
24576 }
24577 #[inline]
24578 fn syntax(&self) -> &SyntaxNode {
24579 &self.syntax
24580 }
24581}
24582impl AstNode for OpSig {
24583 #[inline]
24584 fn can_cast(kind: SyntaxKind) -> bool {
24585 kind == SyntaxKind::OP_SIG
24586 }
24587 #[inline]
24588 fn cast(syntax: SyntaxNode) -> Option<Self> {
24589 if Self::can_cast(syntax.kind()) {
24590 Some(Self { syntax })
24591 } else {
24592 None
24593 }
24594 }
24595 #[inline]
24596 fn syntax(&self) -> &SyntaxNode {
24597 &self.syntax
24598 }
24599}
24600impl AstNode for OpSigList {
24601 #[inline]
24602 fn can_cast(kind: SyntaxKind) -> bool {
24603 kind == SyntaxKind::OP_SIG_LIST
24604 }
24605 #[inline]
24606 fn cast(syntax: SyntaxNode) -> Option<Self> {
24607 if Self::can_cast(syntax.kind()) {
24608 Some(Self { syntax })
24609 } else {
24610 None
24611 }
24612 }
24613 #[inline]
24614 fn syntax(&self) -> &SyntaxNode {
24615 &self.syntax
24616 }
24617}
24618impl AstNode for OperatorCall {
24619 #[inline]
24620 fn can_cast(kind: SyntaxKind) -> bool {
24621 kind == SyntaxKind::OPERATOR_CALL
24622 }
24623 #[inline]
24624 fn cast(syntax: SyntaxNode) -> Option<Self> {
24625 if Self::can_cast(syntax.kind()) {
24626 Some(Self { syntax })
24627 } else {
24628 None
24629 }
24630 }
24631 #[inline]
24632 fn syntax(&self) -> &SyntaxNode {
24633 &self.syntax
24634 }
24635}
24636impl AstNode for OperatorClassOptionList {
24637 #[inline]
24638 fn can_cast(kind: SyntaxKind) -> bool {
24639 kind == SyntaxKind::OPERATOR_CLASS_OPTION_LIST
24640 }
24641 #[inline]
24642 fn cast(syntax: SyntaxNode) -> Option<Self> {
24643 if Self::can_cast(syntax.kind()) {
24644 Some(Self { syntax })
24645 } else {
24646 None
24647 }
24648 }
24649 #[inline]
24650 fn syntax(&self) -> &SyntaxNode {
24651 &self.syntax
24652 }
24653}
24654impl AstNode for OptionItem {
24655 #[inline]
24656 fn can_cast(kind: SyntaxKind) -> bool {
24657 kind == SyntaxKind::OPTION_ITEM
24658 }
24659 #[inline]
24660 fn cast(syntax: SyntaxNode) -> Option<Self> {
24661 if Self::can_cast(syntax.kind()) {
24662 Some(Self { syntax })
24663 } else {
24664 None
24665 }
24666 }
24667 #[inline]
24668 fn syntax(&self) -> &SyntaxNode {
24669 &self.syntax
24670 }
24671}
24672impl AstNode for OptionItemList {
24673 #[inline]
24674 fn can_cast(kind: SyntaxKind) -> bool {
24675 kind == SyntaxKind::OPTION_ITEM_LIST
24676 }
24677 #[inline]
24678 fn cast(syntax: SyntaxNode) -> Option<Self> {
24679 if Self::can_cast(syntax.kind()) {
24680 Some(Self { syntax })
24681 } else {
24682 None
24683 }
24684 }
24685 #[inline]
24686 fn syntax(&self) -> &SyntaxNode {
24687 &self.syntax
24688 }
24689}
24690impl AstNode for OrReplace {
24691 #[inline]
24692 fn can_cast(kind: SyntaxKind) -> bool {
24693 kind == SyntaxKind::OR_REPLACE
24694 }
24695 #[inline]
24696 fn cast(syntax: SyntaxNode) -> Option<Self> {
24697 if Self::can_cast(syntax.kind()) {
24698 Some(Self { syntax })
24699 } else {
24700 None
24701 }
24702 }
24703 #[inline]
24704 fn syntax(&self) -> &SyntaxNode {
24705 &self.syntax
24706 }
24707}
24708impl AstNode for OrderByClause {
24709 #[inline]
24710 fn can_cast(kind: SyntaxKind) -> bool {
24711 kind == SyntaxKind::ORDER_BY_CLAUSE
24712 }
24713 #[inline]
24714 fn cast(syntax: SyntaxNode) -> Option<Self> {
24715 if Self::can_cast(syntax.kind()) {
24716 Some(Self { syntax })
24717 } else {
24718 None
24719 }
24720 }
24721 #[inline]
24722 fn syntax(&self) -> &SyntaxNode {
24723 &self.syntax
24724 }
24725}
24726impl AstNode for OverClause {
24727 #[inline]
24728 fn can_cast(kind: SyntaxKind) -> bool {
24729 kind == SyntaxKind::OVER_CLAUSE
24730 }
24731 #[inline]
24732 fn cast(syntax: SyntaxNode) -> Option<Self> {
24733 if Self::can_cast(syntax.kind()) {
24734 Some(Self { syntax })
24735 } else {
24736 None
24737 }
24738 }
24739 #[inline]
24740 fn syntax(&self) -> &SyntaxNode {
24741 &self.syntax
24742 }
24743}
24744impl AstNode for OverlayFn {
24745 #[inline]
24746 fn can_cast(kind: SyntaxKind) -> bool {
24747 kind == SyntaxKind::OVERLAY_FN
24748 }
24749 #[inline]
24750 fn cast(syntax: SyntaxNode) -> Option<Self> {
24751 if Self::can_cast(syntax.kind()) {
24752 Some(Self { syntax })
24753 } else {
24754 None
24755 }
24756 }
24757 #[inline]
24758 fn syntax(&self) -> &SyntaxNode {
24759 &self.syntax
24760 }
24761}
24762impl AstNode for OwnedByRoles {
24763 #[inline]
24764 fn can_cast(kind: SyntaxKind) -> bool {
24765 kind == SyntaxKind::OWNED_BY_ROLES
24766 }
24767 #[inline]
24768 fn cast(syntax: SyntaxNode) -> Option<Self> {
24769 if Self::can_cast(syntax.kind()) {
24770 Some(Self { syntax })
24771 } else {
24772 None
24773 }
24774 }
24775 #[inline]
24776 fn syntax(&self) -> &SyntaxNode {
24777 &self.syntax
24778 }
24779}
24780impl AstNode for OwnerTo {
24781 #[inline]
24782 fn can_cast(kind: SyntaxKind) -> bool {
24783 kind == SyntaxKind::OWNER_TO
24784 }
24785 #[inline]
24786 fn cast(syntax: SyntaxNode) -> Option<Self> {
24787 if Self::can_cast(syntax.kind()) {
24788 Some(Self { syntax })
24789 } else {
24790 None
24791 }
24792 }
24793 #[inline]
24794 fn syntax(&self) -> &SyntaxNode {
24795 &self.syntax
24796 }
24797}
24798impl AstNode for ParallelFuncOption {
24799 #[inline]
24800 fn can_cast(kind: SyntaxKind) -> bool {
24801 kind == SyntaxKind::PARALLEL_FUNC_OPTION
24802 }
24803 #[inline]
24804 fn cast(syntax: SyntaxNode) -> Option<Self> {
24805 if Self::can_cast(syntax.kind()) {
24806 Some(Self { syntax })
24807 } else {
24808 None
24809 }
24810 }
24811 #[inline]
24812 fn syntax(&self) -> &SyntaxNode {
24813 &self.syntax
24814 }
24815}
24816impl AstNode for Param {
24817 #[inline]
24818 fn can_cast(kind: SyntaxKind) -> bool {
24819 kind == SyntaxKind::PARAM
24820 }
24821 #[inline]
24822 fn cast(syntax: SyntaxNode) -> Option<Self> {
24823 if Self::can_cast(syntax.kind()) {
24824 Some(Self { syntax })
24825 } else {
24826 None
24827 }
24828 }
24829 #[inline]
24830 fn syntax(&self) -> &SyntaxNode {
24831 &self.syntax
24832 }
24833}
24834impl AstNode for ParamDefault {
24835 #[inline]
24836 fn can_cast(kind: SyntaxKind) -> bool {
24837 kind == SyntaxKind::PARAM_DEFAULT
24838 }
24839 #[inline]
24840 fn cast(syntax: SyntaxNode) -> Option<Self> {
24841 if Self::can_cast(syntax.kind()) {
24842 Some(Self { syntax })
24843 } else {
24844 None
24845 }
24846 }
24847 #[inline]
24848 fn syntax(&self) -> &SyntaxNode {
24849 &self.syntax
24850 }
24851}
24852impl AstNode for ParamIn {
24853 #[inline]
24854 fn can_cast(kind: SyntaxKind) -> bool {
24855 kind == SyntaxKind::PARAM_IN
24856 }
24857 #[inline]
24858 fn cast(syntax: SyntaxNode) -> Option<Self> {
24859 if Self::can_cast(syntax.kind()) {
24860 Some(Self { syntax })
24861 } else {
24862 None
24863 }
24864 }
24865 #[inline]
24866 fn syntax(&self) -> &SyntaxNode {
24867 &self.syntax
24868 }
24869}
24870impl AstNode for ParamInOut {
24871 #[inline]
24872 fn can_cast(kind: SyntaxKind) -> bool {
24873 kind == SyntaxKind::PARAM_IN_OUT
24874 }
24875 #[inline]
24876 fn cast(syntax: SyntaxNode) -> Option<Self> {
24877 if Self::can_cast(syntax.kind()) {
24878 Some(Self { syntax })
24879 } else {
24880 None
24881 }
24882 }
24883 #[inline]
24884 fn syntax(&self) -> &SyntaxNode {
24885 &self.syntax
24886 }
24887}
24888impl AstNode for ParamList {
24889 #[inline]
24890 fn can_cast(kind: SyntaxKind) -> bool {
24891 kind == SyntaxKind::PARAM_LIST
24892 }
24893 #[inline]
24894 fn cast(syntax: SyntaxNode) -> Option<Self> {
24895 if Self::can_cast(syntax.kind()) {
24896 Some(Self { syntax })
24897 } else {
24898 None
24899 }
24900 }
24901 #[inline]
24902 fn syntax(&self) -> &SyntaxNode {
24903 &self.syntax
24904 }
24905}
24906impl AstNode for ParamOut {
24907 #[inline]
24908 fn can_cast(kind: SyntaxKind) -> bool {
24909 kind == SyntaxKind::PARAM_OUT
24910 }
24911 #[inline]
24912 fn cast(syntax: SyntaxNode) -> Option<Self> {
24913 if Self::can_cast(syntax.kind()) {
24914 Some(Self { syntax })
24915 } else {
24916 None
24917 }
24918 }
24919 #[inline]
24920 fn syntax(&self) -> &SyntaxNode {
24921 &self.syntax
24922 }
24923}
24924impl AstNode for ParamVariadic {
24925 #[inline]
24926 fn can_cast(kind: SyntaxKind) -> bool {
24927 kind == SyntaxKind::PARAM_VARIADIC
24928 }
24929 #[inline]
24930 fn cast(syntax: SyntaxNode) -> Option<Self> {
24931 if Self::can_cast(syntax.kind()) {
24932 Some(Self { syntax })
24933 } else {
24934 None
24935 }
24936 }
24937 #[inline]
24938 fn syntax(&self) -> &SyntaxNode {
24939 &self.syntax
24940 }
24941}
24942impl AstNode for ParenExpr {
24943 #[inline]
24944 fn can_cast(kind: SyntaxKind) -> bool {
24945 kind == SyntaxKind::PAREN_EXPR
24946 }
24947 #[inline]
24948 fn cast(syntax: SyntaxNode) -> Option<Self> {
24949 if Self::can_cast(syntax.kind()) {
24950 Some(Self { syntax })
24951 } else {
24952 None
24953 }
24954 }
24955 #[inline]
24956 fn syntax(&self) -> &SyntaxNode {
24957 &self.syntax
24958 }
24959}
24960impl AstNode for ParenSelect {
24961 #[inline]
24962 fn can_cast(kind: SyntaxKind) -> bool {
24963 kind == SyntaxKind::PAREN_SELECT
24964 }
24965 #[inline]
24966 fn cast(syntax: SyntaxNode) -> Option<Self> {
24967 if Self::can_cast(syntax.kind()) {
24968 Some(Self { syntax })
24969 } else {
24970 None
24971 }
24972 }
24973 #[inline]
24974 fn syntax(&self) -> &SyntaxNode {
24975 &self.syntax
24976 }
24977}
24978impl AstNode for Partition {
24979 #[inline]
24980 fn can_cast(kind: SyntaxKind) -> bool {
24981 kind == SyntaxKind::PARTITION
24982 }
24983 #[inline]
24984 fn cast(syntax: SyntaxNode) -> Option<Self> {
24985 if Self::can_cast(syntax.kind()) {
24986 Some(Self { syntax })
24987 } else {
24988 None
24989 }
24990 }
24991 #[inline]
24992 fn syntax(&self) -> &SyntaxNode {
24993 &self.syntax
24994 }
24995}
24996impl AstNode for PartitionBy {
24997 #[inline]
24998 fn can_cast(kind: SyntaxKind) -> bool {
24999 kind == SyntaxKind::PARTITION_BY
25000 }
25001 #[inline]
25002 fn cast(syntax: SyntaxNode) -> Option<Self> {
25003 if Self::can_cast(syntax.kind()) {
25004 Some(Self { syntax })
25005 } else {
25006 None
25007 }
25008 }
25009 #[inline]
25010 fn syntax(&self) -> &SyntaxNode {
25011 &self.syntax
25012 }
25013}
25014impl AstNode for PartitionDefault {
25015 #[inline]
25016 fn can_cast(kind: SyntaxKind) -> bool {
25017 kind == SyntaxKind::PARTITION_DEFAULT
25018 }
25019 #[inline]
25020 fn cast(syntax: SyntaxNode) -> Option<Self> {
25021 if Self::can_cast(syntax.kind()) {
25022 Some(Self { syntax })
25023 } else {
25024 None
25025 }
25026 }
25027 #[inline]
25028 fn syntax(&self) -> &SyntaxNode {
25029 &self.syntax
25030 }
25031}
25032impl AstNode for PartitionForValuesFrom {
25033 #[inline]
25034 fn can_cast(kind: SyntaxKind) -> bool {
25035 kind == SyntaxKind::PARTITION_FOR_VALUES_FROM
25036 }
25037 #[inline]
25038 fn cast(syntax: SyntaxNode) -> Option<Self> {
25039 if Self::can_cast(syntax.kind()) {
25040 Some(Self { syntax })
25041 } else {
25042 None
25043 }
25044 }
25045 #[inline]
25046 fn syntax(&self) -> &SyntaxNode {
25047 &self.syntax
25048 }
25049}
25050impl AstNode for PartitionForValuesIn {
25051 #[inline]
25052 fn can_cast(kind: SyntaxKind) -> bool {
25053 kind == SyntaxKind::PARTITION_FOR_VALUES_IN
25054 }
25055 #[inline]
25056 fn cast(syntax: SyntaxNode) -> Option<Self> {
25057 if Self::can_cast(syntax.kind()) {
25058 Some(Self { syntax })
25059 } else {
25060 None
25061 }
25062 }
25063 #[inline]
25064 fn syntax(&self) -> &SyntaxNode {
25065 &self.syntax
25066 }
25067}
25068impl AstNode for PartitionForValuesWith {
25069 #[inline]
25070 fn can_cast(kind: SyntaxKind) -> bool {
25071 kind == SyntaxKind::PARTITION_FOR_VALUES_WITH
25072 }
25073 #[inline]
25074 fn cast(syntax: SyntaxNode) -> Option<Self> {
25075 if Self::can_cast(syntax.kind()) {
25076 Some(Self { syntax })
25077 } else {
25078 None
25079 }
25080 }
25081 #[inline]
25082 fn syntax(&self) -> &SyntaxNode {
25083 &self.syntax
25084 }
25085}
25086impl AstNode for PartitionItem {
25087 #[inline]
25088 fn can_cast(kind: SyntaxKind) -> bool {
25089 kind == SyntaxKind::PARTITION_ITEM
25090 }
25091 #[inline]
25092 fn cast(syntax: SyntaxNode) -> Option<Self> {
25093 if Self::can_cast(syntax.kind()) {
25094 Some(Self { syntax })
25095 } else {
25096 None
25097 }
25098 }
25099 #[inline]
25100 fn syntax(&self) -> &SyntaxNode {
25101 &self.syntax
25102 }
25103}
25104impl AstNode for PartitionItemList {
25105 #[inline]
25106 fn can_cast(kind: SyntaxKind) -> bool {
25107 kind == SyntaxKind::PARTITION_ITEM_LIST
25108 }
25109 #[inline]
25110 fn cast(syntax: SyntaxNode) -> Option<Self> {
25111 if Self::can_cast(syntax.kind()) {
25112 Some(Self { syntax })
25113 } else {
25114 None
25115 }
25116 }
25117 #[inline]
25118 fn syntax(&self) -> &SyntaxNode {
25119 &self.syntax
25120 }
25121}
25122impl AstNode for PartitionList {
25123 #[inline]
25124 fn can_cast(kind: SyntaxKind) -> bool {
25125 kind == SyntaxKind::PARTITION_LIST
25126 }
25127 #[inline]
25128 fn cast(syntax: SyntaxNode) -> Option<Self> {
25129 if Self::can_cast(syntax.kind()) {
25130 Some(Self { syntax })
25131 } else {
25132 None
25133 }
25134 }
25135 #[inline]
25136 fn syntax(&self) -> &SyntaxNode {
25137 &self.syntax
25138 }
25139}
25140impl AstNode for PartitionOf {
25141 #[inline]
25142 fn can_cast(kind: SyntaxKind) -> bool {
25143 kind == SyntaxKind::PARTITION_OF
25144 }
25145 #[inline]
25146 fn cast(syntax: SyntaxNode) -> Option<Self> {
25147 if Self::can_cast(syntax.kind()) {
25148 Some(Self { syntax })
25149 } else {
25150 None
25151 }
25152 }
25153 #[inline]
25154 fn syntax(&self) -> &SyntaxNode {
25155 &self.syntax
25156 }
25157}
25158impl AstNode for Path {
25159 #[inline]
25160 fn can_cast(kind: SyntaxKind) -> bool {
25161 kind == SyntaxKind::PATH
25162 }
25163 #[inline]
25164 fn cast(syntax: SyntaxNode) -> Option<Self> {
25165 if Self::can_cast(syntax.kind()) {
25166 Some(Self { syntax })
25167 } else {
25168 None
25169 }
25170 }
25171 #[inline]
25172 fn syntax(&self) -> &SyntaxNode {
25173 &self.syntax
25174 }
25175}
25176impl AstNode for PathSegment {
25177 #[inline]
25178 fn can_cast(kind: SyntaxKind) -> bool {
25179 kind == SyntaxKind::PATH_SEGMENT
25180 }
25181 #[inline]
25182 fn cast(syntax: SyntaxNode) -> Option<Self> {
25183 if Self::can_cast(syntax.kind()) {
25184 Some(Self { syntax })
25185 } else {
25186 None
25187 }
25188 }
25189 #[inline]
25190 fn syntax(&self) -> &SyntaxNode {
25191 &self.syntax
25192 }
25193}
25194impl AstNode for PathType {
25195 #[inline]
25196 fn can_cast(kind: SyntaxKind) -> bool {
25197 kind == SyntaxKind::PATH_TYPE
25198 }
25199 #[inline]
25200 fn cast(syntax: SyntaxNode) -> Option<Self> {
25201 if Self::can_cast(syntax.kind()) {
25202 Some(Self { syntax })
25203 } else {
25204 None
25205 }
25206 }
25207 #[inline]
25208 fn syntax(&self) -> &SyntaxNode {
25209 &self.syntax
25210 }
25211}
25212impl AstNode for PercentType {
25213 #[inline]
25214 fn can_cast(kind: SyntaxKind) -> bool {
25215 kind == SyntaxKind::PERCENT_TYPE
25216 }
25217 #[inline]
25218 fn cast(syntax: SyntaxNode) -> Option<Self> {
25219 if Self::can_cast(syntax.kind()) {
25220 Some(Self { syntax })
25221 } else {
25222 None
25223 }
25224 }
25225 #[inline]
25226 fn syntax(&self) -> &SyntaxNode {
25227 &self.syntax
25228 }
25229}
25230impl AstNode for PercentTypeClause {
25231 #[inline]
25232 fn can_cast(kind: SyntaxKind) -> bool {
25233 kind == SyntaxKind::PERCENT_TYPE_CLAUSE
25234 }
25235 #[inline]
25236 fn cast(syntax: SyntaxNode) -> Option<Self> {
25237 if Self::can_cast(syntax.kind()) {
25238 Some(Self { syntax })
25239 } else {
25240 None
25241 }
25242 }
25243 #[inline]
25244 fn syntax(&self) -> &SyntaxNode {
25245 &self.syntax
25246 }
25247}
25248impl AstNode for PositionFn {
25249 #[inline]
25250 fn can_cast(kind: SyntaxKind) -> bool {
25251 kind == SyntaxKind::POSITION_FN
25252 }
25253 #[inline]
25254 fn cast(syntax: SyntaxNode) -> Option<Self> {
25255 if Self::can_cast(syntax.kind()) {
25256 Some(Self { syntax })
25257 } else {
25258 None
25259 }
25260 }
25261 #[inline]
25262 fn syntax(&self) -> &SyntaxNode {
25263 &self.syntax
25264 }
25265}
25266impl AstNode for PostfixExpr {
25267 #[inline]
25268 fn can_cast(kind: SyntaxKind) -> bool {
25269 kind == SyntaxKind::POSTFIX_EXPR
25270 }
25271 #[inline]
25272 fn cast(syntax: SyntaxNode) -> Option<Self> {
25273 if Self::can_cast(syntax.kind()) {
25274 Some(Self { syntax })
25275 } else {
25276 None
25277 }
25278 }
25279 #[inline]
25280 fn syntax(&self) -> &SyntaxNode {
25281 &self.syntax
25282 }
25283}
25284impl AstNode for PrefixExpr {
25285 #[inline]
25286 fn can_cast(kind: SyntaxKind) -> bool {
25287 kind == SyntaxKind::PREFIX_EXPR
25288 }
25289 #[inline]
25290 fn cast(syntax: SyntaxNode) -> Option<Self> {
25291 if Self::can_cast(syntax.kind()) {
25292 Some(Self { syntax })
25293 } else {
25294 None
25295 }
25296 }
25297 #[inline]
25298 fn syntax(&self) -> &SyntaxNode {
25299 &self.syntax
25300 }
25301}
25302impl AstNode for Prepare {
25303 #[inline]
25304 fn can_cast(kind: SyntaxKind) -> bool {
25305 kind == SyntaxKind::PREPARE
25306 }
25307 #[inline]
25308 fn cast(syntax: SyntaxNode) -> Option<Self> {
25309 if Self::can_cast(syntax.kind()) {
25310 Some(Self { syntax })
25311 } else {
25312 None
25313 }
25314 }
25315 #[inline]
25316 fn syntax(&self) -> &SyntaxNode {
25317 &self.syntax
25318 }
25319}
25320impl AstNode for PrepareTransaction {
25321 #[inline]
25322 fn can_cast(kind: SyntaxKind) -> bool {
25323 kind == SyntaxKind::PREPARE_TRANSACTION
25324 }
25325 #[inline]
25326 fn cast(syntax: SyntaxNode) -> Option<Self> {
25327 if Self::can_cast(syntax.kind()) {
25328 Some(Self { syntax })
25329 } else {
25330 None
25331 }
25332 }
25333 #[inline]
25334 fn syntax(&self) -> &SyntaxNode {
25335 &self.syntax
25336 }
25337}
25338impl AstNode for PreserveRows {
25339 #[inline]
25340 fn can_cast(kind: SyntaxKind) -> bool {
25341 kind == SyntaxKind::PRESERVE_ROWS
25342 }
25343 #[inline]
25344 fn cast(syntax: SyntaxNode) -> Option<Self> {
25345 if Self::can_cast(syntax.kind()) {
25346 Some(Self { syntax })
25347 } else {
25348 None
25349 }
25350 }
25351 #[inline]
25352 fn syntax(&self) -> &SyntaxNode {
25353 &self.syntax
25354 }
25355}
25356impl AstNode for PrimaryKeyConstraint {
25357 #[inline]
25358 fn can_cast(kind: SyntaxKind) -> bool {
25359 kind == SyntaxKind::PRIMARY_KEY_CONSTRAINT
25360 }
25361 #[inline]
25362 fn cast(syntax: SyntaxNode) -> Option<Self> {
25363 if Self::can_cast(syntax.kind()) {
25364 Some(Self { syntax })
25365 } else {
25366 None
25367 }
25368 }
25369 #[inline]
25370 fn syntax(&self) -> &SyntaxNode {
25371 &self.syntax
25372 }
25373}
25374impl AstNode for PrivilegeTarget {
25375 #[inline]
25376 fn can_cast(kind: SyntaxKind) -> bool {
25377 kind == SyntaxKind::PRIVILEGE_TARGET
25378 }
25379 #[inline]
25380 fn cast(syntax: SyntaxNode) -> Option<Self> {
25381 if Self::can_cast(syntax.kind()) {
25382 Some(Self { syntax })
25383 } else {
25384 None
25385 }
25386 }
25387 #[inline]
25388 fn syntax(&self) -> &SyntaxNode {
25389 &self.syntax
25390 }
25391}
25392impl AstNode for Privileges {
25393 #[inline]
25394 fn can_cast(kind: SyntaxKind) -> bool {
25395 kind == SyntaxKind::PRIVILEGES
25396 }
25397 #[inline]
25398 fn cast(syntax: SyntaxNode) -> Option<Self> {
25399 if Self::can_cast(syntax.kind()) {
25400 Some(Self { syntax })
25401 } else {
25402 None
25403 }
25404 }
25405 #[inline]
25406 fn syntax(&self) -> &SyntaxNode {
25407 &self.syntax
25408 }
25409}
25410impl AstNode for PublicationObject {
25411 #[inline]
25412 fn can_cast(kind: SyntaxKind) -> bool {
25413 kind == SyntaxKind::PUBLICATION_OBJECT
25414 }
25415 #[inline]
25416 fn cast(syntax: SyntaxNode) -> Option<Self> {
25417 if Self::can_cast(syntax.kind()) {
25418 Some(Self { syntax })
25419 } else {
25420 None
25421 }
25422 }
25423 #[inline]
25424 fn syntax(&self) -> &SyntaxNode {
25425 &self.syntax
25426 }
25427}
25428impl AstNode for ReadCommitted {
25429 #[inline]
25430 fn can_cast(kind: SyntaxKind) -> bool {
25431 kind == SyntaxKind::READ_COMMITTED
25432 }
25433 #[inline]
25434 fn cast(syntax: SyntaxNode) -> Option<Self> {
25435 if Self::can_cast(syntax.kind()) {
25436 Some(Self { syntax })
25437 } else {
25438 None
25439 }
25440 }
25441 #[inline]
25442 fn syntax(&self) -> &SyntaxNode {
25443 &self.syntax
25444 }
25445}
25446impl AstNode for ReadOnly {
25447 #[inline]
25448 fn can_cast(kind: SyntaxKind) -> bool {
25449 kind == SyntaxKind::READ_ONLY
25450 }
25451 #[inline]
25452 fn cast(syntax: SyntaxNode) -> Option<Self> {
25453 if Self::can_cast(syntax.kind()) {
25454 Some(Self { syntax })
25455 } else {
25456 None
25457 }
25458 }
25459 #[inline]
25460 fn syntax(&self) -> &SyntaxNode {
25461 &self.syntax
25462 }
25463}
25464impl AstNode for ReadUncommitted {
25465 #[inline]
25466 fn can_cast(kind: SyntaxKind) -> bool {
25467 kind == SyntaxKind::READ_UNCOMMITTED
25468 }
25469 #[inline]
25470 fn cast(syntax: SyntaxNode) -> Option<Self> {
25471 if Self::can_cast(syntax.kind()) {
25472 Some(Self { syntax })
25473 } else {
25474 None
25475 }
25476 }
25477 #[inline]
25478 fn syntax(&self) -> &SyntaxNode {
25479 &self.syntax
25480 }
25481}
25482impl AstNode for ReadWrite {
25483 #[inline]
25484 fn can_cast(kind: SyntaxKind) -> bool {
25485 kind == SyntaxKind::READ_WRITE
25486 }
25487 #[inline]
25488 fn cast(syntax: SyntaxNode) -> Option<Self> {
25489 if Self::can_cast(syntax.kind()) {
25490 Some(Self { syntax })
25491 } else {
25492 None
25493 }
25494 }
25495 #[inline]
25496 fn syntax(&self) -> &SyntaxNode {
25497 &self.syntax
25498 }
25499}
25500impl AstNode for Reassign {
25501 #[inline]
25502 fn can_cast(kind: SyntaxKind) -> bool {
25503 kind == SyntaxKind::REASSIGN
25504 }
25505 #[inline]
25506 fn cast(syntax: SyntaxNode) -> Option<Self> {
25507 if Self::can_cast(syntax.kind()) {
25508 Some(Self { syntax })
25509 } else {
25510 None
25511 }
25512 }
25513 #[inline]
25514 fn syntax(&self) -> &SyntaxNode {
25515 &self.syntax
25516 }
25517}
25518impl AstNode for ReferencesConstraint {
25519 #[inline]
25520 fn can_cast(kind: SyntaxKind) -> bool {
25521 kind == SyntaxKind::REFERENCES_CONSTRAINT
25522 }
25523 #[inline]
25524 fn cast(syntax: SyntaxNode) -> Option<Self> {
25525 if Self::can_cast(syntax.kind()) {
25526 Some(Self { syntax })
25527 } else {
25528 None
25529 }
25530 }
25531 #[inline]
25532 fn syntax(&self) -> &SyntaxNode {
25533 &self.syntax
25534 }
25535}
25536impl AstNode for Referencing {
25537 #[inline]
25538 fn can_cast(kind: SyntaxKind) -> bool {
25539 kind == SyntaxKind::REFERENCING
25540 }
25541 #[inline]
25542 fn cast(syntax: SyntaxNode) -> Option<Self> {
25543 if Self::can_cast(syntax.kind()) {
25544 Some(Self { syntax })
25545 } else {
25546 None
25547 }
25548 }
25549 #[inline]
25550 fn syntax(&self) -> &SyntaxNode {
25551 &self.syntax
25552 }
25553}
25554impl AstNode for ReferencingTable {
25555 #[inline]
25556 fn can_cast(kind: SyntaxKind) -> bool {
25557 kind == SyntaxKind::REFERENCING_TABLE
25558 }
25559 #[inline]
25560 fn cast(syntax: SyntaxNode) -> Option<Self> {
25561 if Self::can_cast(syntax.kind()) {
25562 Some(Self { syntax })
25563 } else {
25564 None
25565 }
25566 }
25567 #[inline]
25568 fn syntax(&self) -> &SyntaxNode {
25569 &self.syntax
25570 }
25571}
25572impl AstNode for Refresh {
25573 #[inline]
25574 fn can_cast(kind: SyntaxKind) -> bool {
25575 kind == SyntaxKind::REFRESH
25576 }
25577 #[inline]
25578 fn cast(syntax: SyntaxNode) -> Option<Self> {
25579 if Self::can_cast(syntax.kind()) {
25580 Some(Self { syntax })
25581 } else {
25582 None
25583 }
25584 }
25585 #[inline]
25586 fn syntax(&self) -> &SyntaxNode {
25587 &self.syntax
25588 }
25589}
25590impl AstNode for RefreshCollationVersion {
25591 #[inline]
25592 fn can_cast(kind: SyntaxKind) -> bool {
25593 kind == SyntaxKind::REFRESH_COLLATION_VERSION
25594 }
25595 #[inline]
25596 fn cast(syntax: SyntaxNode) -> Option<Self> {
25597 if Self::can_cast(syntax.kind()) {
25598 Some(Self { syntax })
25599 } else {
25600 None
25601 }
25602 }
25603 #[inline]
25604 fn syntax(&self) -> &SyntaxNode {
25605 &self.syntax
25606 }
25607}
25608impl AstNode for RefreshVersion {
25609 #[inline]
25610 fn can_cast(kind: SyntaxKind) -> bool {
25611 kind == SyntaxKind::REFRESH_VERSION
25612 }
25613 #[inline]
25614 fn cast(syntax: SyntaxNode) -> Option<Self> {
25615 if Self::can_cast(syntax.kind()) {
25616 Some(Self { syntax })
25617 } else {
25618 None
25619 }
25620 }
25621 #[inline]
25622 fn syntax(&self) -> &SyntaxNode {
25623 &self.syntax
25624 }
25625}
25626impl AstNode for Reindex {
25627 #[inline]
25628 fn can_cast(kind: SyntaxKind) -> bool {
25629 kind == SyntaxKind::REINDEX
25630 }
25631 #[inline]
25632 fn cast(syntax: SyntaxNode) -> Option<Self> {
25633 if Self::can_cast(syntax.kind()) {
25634 Some(Self { syntax })
25635 } else {
25636 None
25637 }
25638 }
25639 #[inline]
25640 fn syntax(&self) -> &SyntaxNode {
25641 &self.syntax
25642 }
25643}
25644impl AstNode for RelationName {
25645 #[inline]
25646 fn can_cast(kind: SyntaxKind) -> bool {
25647 kind == SyntaxKind::RELATION_NAME
25648 }
25649 #[inline]
25650 fn cast(syntax: SyntaxNode) -> Option<Self> {
25651 if Self::can_cast(syntax.kind()) {
25652 Some(Self { syntax })
25653 } else {
25654 None
25655 }
25656 }
25657 #[inline]
25658 fn syntax(&self) -> &SyntaxNode {
25659 &self.syntax
25660 }
25661}
25662impl AstNode for ReleaseSavepoint {
25663 #[inline]
25664 fn can_cast(kind: SyntaxKind) -> bool {
25665 kind == SyntaxKind::RELEASE_SAVEPOINT
25666 }
25667 #[inline]
25668 fn cast(syntax: SyntaxNode) -> Option<Self> {
25669 if Self::can_cast(syntax.kind()) {
25670 Some(Self { syntax })
25671 } else {
25672 None
25673 }
25674 }
25675 #[inline]
25676 fn syntax(&self) -> &SyntaxNode {
25677 &self.syntax
25678 }
25679}
25680impl AstNode for RenameColumn {
25681 #[inline]
25682 fn can_cast(kind: SyntaxKind) -> bool {
25683 kind == SyntaxKind::RENAME_COLUMN
25684 }
25685 #[inline]
25686 fn cast(syntax: SyntaxNode) -> Option<Self> {
25687 if Self::can_cast(syntax.kind()) {
25688 Some(Self { syntax })
25689 } else {
25690 None
25691 }
25692 }
25693 #[inline]
25694 fn syntax(&self) -> &SyntaxNode {
25695 &self.syntax
25696 }
25697}
25698impl AstNode for RenameConstraint {
25699 #[inline]
25700 fn can_cast(kind: SyntaxKind) -> bool {
25701 kind == SyntaxKind::RENAME_CONSTRAINT
25702 }
25703 #[inline]
25704 fn cast(syntax: SyntaxNode) -> Option<Self> {
25705 if Self::can_cast(syntax.kind()) {
25706 Some(Self { syntax })
25707 } else {
25708 None
25709 }
25710 }
25711 #[inline]
25712 fn syntax(&self) -> &SyntaxNode {
25713 &self.syntax
25714 }
25715}
25716impl AstNode for RenameTo {
25717 #[inline]
25718 fn can_cast(kind: SyntaxKind) -> bool {
25719 kind == SyntaxKind::RENAME_TO
25720 }
25721 #[inline]
25722 fn cast(syntax: SyntaxNode) -> Option<Self> {
25723 if Self::can_cast(syntax.kind()) {
25724 Some(Self { syntax })
25725 } else {
25726 None
25727 }
25728 }
25729 #[inline]
25730 fn syntax(&self) -> &SyntaxNode {
25731 &self.syntax
25732 }
25733}
25734impl AstNode for RepeatableClause {
25735 #[inline]
25736 fn can_cast(kind: SyntaxKind) -> bool {
25737 kind == SyntaxKind::REPEATABLE_CLAUSE
25738 }
25739 #[inline]
25740 fn cast(syntax: SyntaxNode) -> Option<Self> {
25741 if Self::can_cast(syntax.kind()) {
25742 Some(Self { syntax })
25743 } else {
25744 None
25745 }
25746 }
25747 #[inline]
25748 fn syntax(&self) -> &SyntaxNode {
25749 &self.syntax
25750 }
25751}
25752impl AstNode for RepeatableRead {
25753 #[inline]
25754 fn can_cast(kind: SyntaxKind) -> bool {
25755 kind == SyntaxKind::REPEATABLE_READ
25756 }
25757 #[inline]
25758 fn cast(syntax: SyntaxNode) -> Option<Self> {
25759 if Self::can_cast(syntax.kind()) {
25760 Some(Self { syntax })
25761 } else {
25762 None
25763 }
25764 }
25765 #[inline]
25766 fn syntax(&self) -> &SyntaxNode {
25767 &self.syntax
25768 }
25769}
25770impl AstNode for ReplicaIdentity {
25771 #[inline]
25772 fn can_cast(kind: SyntaxKind) -> bool {
25773 kind == SyntaxKind::REPLICA_IDENTITY
25774 }
25775 #[inline]
25776 fn cast(syntax: SyntaxNode) -> Option<Self> {
25777 if Self::can_cast(syntax.kind()) {
25778 Some(Self { syntax })
25779 } else {
25780 None
25781 }
25782 }
25783 #[inline]
25784 fn syntax(&self) -> &SyntaxNode {
25785 &self.syntax
25786 }
25787}
25788impl AstNode for Reset {
25789 #[inline]
25790 fn can_cast(kind: SyntaxKind) -> bool {
25791 kind == SyntaxKind::RESET
25792 }
25793 #[inline]
25794 fn cast(syntax: SyntaxNode) -> Option<Self> {
25795 if Self::can_cast(syntax.kind()) {
25796 Some(Self { syntax })
25797 } else {
25798 None
25799 }
25800 }
25801 #[inline]
25802 fn syntax(&self) -> &SyntaxNode {
25803 &self.syntax
25804 }
25805}
25806impl AstNode for ResetConfigParam {
25807 #[inline]
25808 fn can_cast(kind: SyntaxKind) -> bool {
25809 kind == SyntaxKind::RESET_CONFIG_PARAM
25810 }
25811 #[inline]
25812 fn cast(syntax: SyntaxNode) -> Option<Self> {
25813 if Self::can_cast(syntax.kind()) {
25814 Some(Self { syntax })
25815 } else {
25816 None
25817 }
25818 }
25819 #[inline]
25820 fn syntax(&self) -> &SyntaxNode {
25821 &self.syntax
25822 }
25823}
25824impl AstNode for ResetFuncOption {
25825 #[inline]
25826 fn can_cast(kind: SyntaxKind) -> bool {
25827 kind == SyntaxKind::RESET_FUNC_OPTION
25828 }
25829 #[inline]
25830 fn cast(syntax: SyntaxNode) -> Option<Self> {
25831 if Self::can_cast(syntax.kind()) {
25832 Some(Self { syntax })
25833 } else {
25834 None
25835 }
25836 }
25837 #[inline]
25838 fn syntax(&self) -> &SyntaxNode {
25839 &self.syntax
25840 }
25841}
25842impl AstNode for ResetOptions {
25843 #[inline]
25844 fn can_cast(kind: SyntaxKind) -> bool {
25845 kind == SyntaxKind::RESET_OPTIONS
25846 }
25847 #[inline]
25848 fn cast(syntax: SyntaxNode) -> Option<Self> {
25849 if Self::can_cast(syntax.kind()) {
25850 Some(Self { syntax })
25851 } else {
25852 None
25853 }
25854 }
25855 #[inline]
25856 fn syntax(&self) -> &SyntaxNode {
25857 &self.syntax
25858 }
25859}
25860impl AstNode for ResetSessionAuth {
25861 #[inline]
25862 fn can_cast(kind: SyntaxKind) -> bool {
25863 kind == SyntaxKind::RESET_SESSION_AUTH
25864 }
25865 #[inline]
25866 fn cast(syntax: SyntaxNode) -> Option<Self> {
25867 if Self::can_cast(syntax.kind()) {
25868 Some(Self { syntax })
25869 } else {
25870 None
25871 }
25872 }
25873 #[inline]
25874 fn syntax(&self) -> &SyntaxNode {
25875 &self.syntax
25876 }
25877}
25878impl AstNode for Restart {
25879 #[inline]
25880 fn can_cast(kind: SyntaxKind) -> bool {
25881 kind == SyntaxKind::RESTART
25882 }
25883 #[inline]
25884 fn cast(syntax: SyntaxNode) -> Option<Self> {
25885 if Self::can_cast(syntax.kind()) {
25886 Some(Self { syntax })
25887 } else {
25888 None
25889 }
25890 }
25891 #[inline]
25892 fn syntax(&self) -> &SyntaxNode {
25893 &self.syntax
25894 }
25895}
25896impl AstNode for Restrict {
25897 #[inline]
25898 fn can_cast(kind: SyntaxKind) -> bool {
25899 kind == SyntaxKind::RESTRICT
25900 }
25901 #[inline]
25902 fn cast(syntax: SyntaxNode) -> Option<Self> {
25903 if Self::can_cast(syntax.kind()) {
25904 Some(Self { syntax })
25905 } else {
25906 None
25907 }
25908 }
25909 #[inline]
25910 fn syntax(&self) -> &SyntaxNode {
25911 &self.syntax
25912 }
25913}
25914impl AstNode for RetType {
25915 #[inline]
25916 fn can_cast(kind: SyntaxKind) -> bool {
25917 kind == SyntaxKind::RET_TYPE
25918 }
25919 #[inline]
25920 fn cast(syntax: SyntaxNode) -> Option<Self> {
25921 if Self::can_cast(syntax.kind()) {
25922 Some(Self { syntax })
25923 } else {
25924 None
25925 }
25926 }
25927 #[inline]
25928 fn syntax(&self) -> &SyntaxNode {
25929 &self.syntax
25930 }
25931}
25932impl AstNode for ReturnFuncOption {
25933 #[inline]
25934 fn can_cast(kind: SyntaxKind) -> bool {
25935 kind == SyntaxKind::RETURN_FUNC_OPTION
25936 }
25937 #[inline]
25938 fn cast(syntax: SyntaxNode) -> Option<Self> {
25939 if Self::can_cast(syntax.kind()) {
25940 Some(Self { syntax })
25941 } else {
25942 None
25943 }
25944 }
25945 #[inline]
25946 fn syntax(&self) -> &SyntaxNode {
25947 &self.syntax
25948 }
25949}
25950impl AstNode for ReturningClause {
25951 #[inline]
25952 fn can_cast(kind: SyntaxKind) -> bool {
25953 kind == SyntaxKind::RETURNING_CLAUSE
25954 }
25955 #[inline]
25956 fn cast(syntax: SyntaxNode) -> Option<Self> {
25957 if Self::can_cast(syntax.kind()) {
25958 Some(Self { syntax })
25959 } else {
25960 None
25961 }
25962 }
25963 #[inline]
25964 fn syntax(&self) -> &SyntaxNode {
25965 &self.syntax
25966 }
25967}
25968impl AstNode for ReturningOption {
25969 #[inline]
25970 fn can_cast(kind: SyntaxKind) -> bool {
25971 kind == SyntaxKind::RETURNING_OPTION
25972 }
25973 #[inline]
25974 fn cast(syntax: SyntaxNode) -> Option<Self> {
25975 if Self::can_cast(syntax.kind()) {
25976 Some(Self { syntax })
25977 } else {
25978 None
25979 }
25980 }
25981 #[inline]
25982 fn syntax(&self) -> &SyntaxNode {
25983 &self.syntax
25984 }
25985}
25986impl AstNode for ReturningOptionList {
25987 #[inline]
25988 fn can_cast(kind: SyntaxKind) -> bool {
25989 kind == SyntaxKind::RETURNING_OPTION_LIST
25990 }
25991 #[inline]
25992 fn cast(syntax: SyntaxNode) -> Option<Self> {
25993 if Self::can_cast(syntax.kind()) {
25994 Some(Self { syntax })
25995 } else {
25996 None
25997 }
25998 }
25999 #[inline]
26000 fn syntax(&self) -> &SyntaxNode {
26001 &self.syntax
26002 }
26003}
26004impl AstNode for Revoke {
26005 #[inline]
26006 fn can_cast(kind: SyntaxKind) -> bool {
26007 kind == SyntaxKind::REVOKE
26008 }
26009 #[inline]
26010 fn cast(syntax: SyntaxNode) -> Option<Self> {
26011 if Self::can_cast(syntax.kind()) {
26012 Some(Self { syntax })
26013 } else {
26014 None
26015 }
26016 }
26017 #[inline]
26018 fn syntax(&self) -> &SyntaxNode {
26019 &self.syntax
26020 }
26021}
26022impl AstNode for RevokeCommand {
26023 #[inline]
26024 fn can_cast(kind: SyntaxKind) -> bool {
26025 kind == SyntaxKind::REVOKE_COMMAND
26026 }
26027 #[inline]
26028 fn cast(syntax: SyntaxNode) -> Option<Self> {
26029 if Self::can_cast(syntax.kind()) {
26030 Some(Self { syntax })
26031 } else {
26032 None
26033 }
26034 }
26035 #[inline]
26036 fn syntax(&self) -> &SyntaxNode {
26037 &self.syntax
26038 }
26039}
26040impl AstNode for RevokeCommandList {
26041 #[inline]
26042 fn can_cast(kind: SyntaxKind) -> bool {
26043 kind == SyntaxKind::REVOKE_COMMAND_LIST
26044 }
26045 #[inline]
26046 fn cast(syntax: SyntaxNode) -> Option<Self> {
26047 if Self::can_cast(syntax.kind()) {
26048 Some(Self { syntax })
26049 } else {
26050 None
26051 }
26052 }
26053 #[inline]
26054 fn syntax(&self) -> &SyntaxNode {
26055 &self.syntax
26056 }
26057}
26058impl AstNode for RevokeDefaultPrivileges {
26059 #[inline]
26060 fn can_cast(kind: SyntaxKind) -> bool {
26061 kind == SyntaxKind::REVOKE_DEFAULT_PRIVILEGES
26062 }
26063 #[inline]
26064 fn cast(syntax: SyntaxNode) -> Option<Self> {
26065 if Self::can_cast(syntax.kind()) {
26066 Some(Self { syntax })
26067 } else {
26068 None
26069 }
26070 }
26071 #[inline]
26072 fn syntax(&self) -> &SyntaxNode {
26073 &self.syntax
26074 }
26075}
26076impl AstNode for Role {
26077 #[inline]
26078 fn can_cast(kind: SyntaxKind) -> bool {
26079 kind == SyntaxKind::ROLE
26080 }
26081 #[inline]
26082 fn cast(syntax: SyntaxNode) -> Option<Self> {
26083 if Self::can_cast(syntax.kind()) {
26084 Some(Self { syntax })
26085 } else {
26086 None
26087 }
26088 }
26089 #[inline]
26090 fn syntax(&self) -> &SyntaxNode {
26091 &self.syntax
26092 }
26093}
26094impl AstNode for RoleOption {
26095 #[inline]
26096 fn can_cast(kind: SyntaxKind) -> bool {
26097 kind == SyntaxKind::ROLE_OPTION
26098 }
26099 #[inline]
26100 fn cast(syntax: SyntaxNode) -> Option<Self> {
26101 if Self::can_cast(syntax.kind()) {
26102 Some(Self { syntax })
26103 } else {
26104 None
26105 }
26106 }
26107 #[inline]
26108 fn syntax(&self) -> &SyntaxNode {
26109 &self.syntax
26110 }
26111}
26112impl AstNode for RoleOptionList {
26113 #[inline]
26114 fn can_cast(kind: SyntaxKind) -> bool {
26115 kind == SyntaxKind::ROLE_OPTION_LIST
26116 }
26117 #[inline]
26118 fn cast(syntax: SyntaxNode) -> Option<Self> {
26119 if Self::can_cast(syntax.kind()) {
26120 Some(Self { syntax })
26121 } else {
26122 None
26123 }
26124 }
26125 #[inline]
26126 fn syntax(&self) -> &SyntaxNode {
26127 &self.syntax
26128 }
26129}
26130impl AstNode for RoleRef {
26131 #[inline]
26132 fn can_cast(kind: SyntaxKind) -> bool {
26133 kind == SyntaxKind::ROLE_REF
26134 }
26135 #[inline]
26136 fn cast(syntax: SyntaxNode) -> Option<Self> {
26137 if Self::can_cast(syntax.kind()) {
26138 Some(Self { syntax })
26139 } else {
26140 None
26141 }
26142 }
26143 #[inline]
26144 fn syntax(&self) -> &SyntaxNode {
26145 &self.syntax
26146 }
26147}
26148impl AstNode for RoleRefList {
26149 #[inline]
26150 fn can_cast(kind: SyntaxKind) -> bool {
26151 kind == SyntaxKind::ROLE_REF_LIST
26152 }
26153 #[inline]
26154 fn cast(syntax: SyntaxNode) -> Option<Self> {
26155 if Self::can_cast(syntax.kind()) {
26156 Some(Self { syntax })
26157 } else {
26158 None
26159 }
26160 }
26161 #[inline]
26162 fn syntax(&self) -> &SyntaxNode {
26163 &self.syntax
26164 }
26165}
26166impl AstNode for Rollback {
26167 #[inline]
26168 fn can_cast(kind: SyntaxKind) -> bool {
26169 kind == SyntaxKind::ROLLBACK
26170 }
26171 #[inline]
26172 fn cast(syntax: SyntaxNode) -> Option<Self> {
26173 if Self::can_cast(syntax.kind()) {
26174 Some(Self { syntax })
26175 } else {
26176 None
26177 }
26178 }
26179 #[inline]
26180 fn syntax(&self) -> &SyntaxNode {
26181 &self.syntax
26182 }
26183}
26184impl AstNode for Row {
26185 #[inline]
26186 fn can_cast(kind: SyntaxKind) -> bool {
26187 kind == SyntaxKind::ROW
26188 }
26189 #[inline]
26190 fn cast(syntax: SyntaxNode) -> Option<Self> {
26191 if Self::can_cast(syntax.kind()) {
26192 Some(Self { syntax })
26193 } else {
26194 None
26195 }
26196 }
26197 #[inline]
26198 fn syntax(&self) -> &SyntaxNode {
26199 &self.syntax
26200 }
26201}
26202impl AstNode for RowList {
26203 #[inline]
26204 fn can_cast(kind: SyntaxKind) -> bool {
26205 kind == SyntaxKind::ROW_LIST
26206 }
26207 #[inline]
26208 fn cast(syntax: SyntaxNode) -> Option<Self> {
26209 if Self::can_cast(syntax.kind()) {
26210 Some(Self { syntax })
26211 } else {
26212 None
26213 }
26214 }
26215 #[inline]
26216 fn syntax(&self) -> &SyntaxNode {
26217 &self.syntax
26218 }
26219}
26220impl AstNode for RowsFuncOption {
26221 #[inline]
26222 fn can_cast(kind: SyntaxKind) -> bool {
26223 kind == SyntaxKind::ROWS_FUNC_OPTION
26224 }
26225 #[inline]
26226 fn cast(syntax: SyntaxNode) -> Option<Self> {
26227 if Self::can_cast(syntax.kind()) {
26228 Some(Self { syntax })
26229 } else {
26230 None
26231 }
26232 }
26233 #[inline]
26234 fn syntax(&self) -> &SyntaxNode {
26235 &self.syntax
26236 }
26237}
26238impl AstNode for Savepoint {
26239 #[inline]
26240 fn can_cast(kind: SyntaxKind) -> bool {
26241 kind == SyntaxKind::SAVEPOINT
26242 }
26243 #[inline]
26244 fn cast(syntax: SyntaxNode) -> Option<Self> {
26245 if Self::can_cast(syntax.kind()) {
26246 Some(Self { syntax })
26247 } else {
26248 None
26249 }
26250 }
26251 #[inline]
26252 fn syntax(&self) -> &SyntaxNode {
26253 &self.syntax
26254 }
26255}
26256impl AstNode for SecurityFuncOption {
26257 #[inline]
26258 fn can_cast(kind: SyntaxKind) -> bool {
26259 kind == SyntaxKind::SECURITY_FUNC_OPTION
26260 }
26261 #[inline]
26262 fn cast(syntax: SyntaxNode) -> Option<Self> {
26263 if Self::can_cast(syntax.kind()) {
26264 Some(Self { syntax })
26265 } else {
26266 None
26267 }
26268 }
26269 #[inline]
26270 fn syntax(&self) -> &SyntaxNode {
26271 &self.syntax
26272 }
26273}
26274impl AstNode for SecurityLabel {
26275 #[inline]
26276 fn can_cast(kind: SyntaxKind) -> bool {
26277 kind == SyntaxKind::SECURITY_LABEL
26278 }
26279 #[inline]
26280 fn cast(syntax: SyntaxNode) -> Option<Self> {
26281 if Self::can_cast(syntax.kind()) {
26282 Some(Self { syntax })
26283 } else {
26284 None
26285 }
26286 }
26287 #[inline]
26288 fn syntax(&self) -> &SyntaxNode {
26289 &self.syntax
26290 }
26291}
26292impl AstNode for Select {
26293 #[inline]
26294 fn can_cast(kind: SyntaxKind) -> bool {
26295 kind == SyntaxKind::SELECT
26296 }
26297 #[inline]
26298 fn cast(syntax: SyntaxNode) -> Option<Self> {
26299 if Self::can_cast(syntax.kind()) {
26300 Some(Self { syntax })
26301 } else {
26302 None
26303 }
26304 }
26305 #[inline]
26306 fn syntax(&self) -> &SyntaxNode {
26307 &self.syntax
26308 }
26309}
26310impl AstNode for SelectClause {
26311 #[inline]
26312 fn can_cast(kind: SyntaxKind) -> bool {
26313 kind == SyntaxKind::SELECT_CLAUSE
26314 }
26315 #[inline]
26316 fn cast(syntax: SyntaxNode) -> Option<Self> {
26317 if Self::can_cast(syntax.kind()) {
26318 Some(Self { syntax })
26319 } else {
26320 None
26321 }
26322 }
26323 #[inline]
26324 fn syntax(&self) -> &SyntaxNode {
26325 &self.syntax
26326 }
26327}
26328impl AstNode for SelectInto {
26329 #[inline]
26330 fn can_cast(kind: SyntaxKind) -> bool {
26331 kind == SyntaxKind::SELECT_INTO
26332 }
26333 #[inline]
26334 fn cast(syntax: SyntaxNode) -> Option<Self> {
26335 if Self::can_cast(syntax.kind()) {
26336 Some(Self { syntax })
26337 } else {
26338 None
26339 }
26340 }
26341 #[inline]
26342 fn syntax(&self) -> &SyntaxNode {
26343 &self.syntax
26344 }
26345}
26346impl AstNode for SequenceOption {
26347 #[inline]
26348 fn can_cast(kind: SyntaxKind) -> bool {
26349 kind == SyntaxKind::SEQUENCE_OPTION
26350 }
26351 #[inline]
26352 fn cast(syntax: SyntaxNode) -> Option<Self> {
26353 if Self::can_cast(syntax.kind()) {
26354 Some(Self { syntax })
26355 } else {
26356 None
26357 }
26358 }
26359 #[inline]
26360 fn syntax(&self) -> &SyntaxNode {
26361 &self.syntax
26362 }
26363}
26364impl AstNode for SequenceOptionList {
26365 #[inline]
26366 fn can_cast(kind: SyntaxKind) -> bool {
26367 kind == SyntaxKind::SEQUENCE_OPTION_LIST
26368 }
26369 #[inline]
26370 fn cast(syntax: SyntaxNode) -> Option<Self> {
26371 if Self::can_cast(syntax.kind()) {
26372 Some(Self { syntax })
26373 } else {
26374 None
26375 }
26376 }
26377 #[inline]
26378 fn syntax(&self) -> &SyntaxNode {
26379 &self.syntax
26380 }
26381}
26382impl AstNode for Serializable {
26383 #[inline]
26384 fn can_cast(kind: SyntaxKind) -> bool {
26385 kind == SyntaxKind::SERIALIZABLE
26386 }
26387 #[inline]
26388 fn cast(syntax: SyntaxNode) -> Option<Self> {
26389 if Self::can_cast(syntax.kind()) {
26390 Some(Self { syntax })
26391 } else {
26392 None
26393 }
26394 }
26395 #[inline]
26396 fn syntax(&self) -> &SyntaxNode {
26397 &self.syntax
26398 }
26399}
26400impl AstNode for ServerName {
26401 #[inline]
26402 fn can_cast(kind: SyntaxKind) -> bool {
26403 kind == SyntaxKind::SERVER_NAME
26404 }
26405 #[inline]
26406 fn cast(syntax: SyntaxNode) -> Option<Self> {
26407 if Self::can_cast(syntax.kind()) {
26408 Some(Self { syntax })
26409 } else {
26410 None
26411 }
26412 }
26413 #[inline]
26414 fn syntax(&self) -> &SyntaxNode {
26415 &self.syntax
26416 }
26417}
26418impl AstNode for Set {
26419 #[inline]
26420 fn can_cast(kind: SyntaxKind) -> bool {
26421 kind == SyntaxKind::SET
26422 }
26423 #[inline]
26424 fn cast(syntax: SyntaxNode) -> Option<Self> {
26425 if Self::can_cast(syntax.kind()) {
26426 Some(Self { syntax })
26427 } else {
26428 None
26429 }
26430 }
26431 #[inline]
26432 fn syntax(&self) -> &SyntaxNode {
26433 &self.syntax
26434 }
26435}
26436impl AstNode for SetAccessMethod {
26437 #[inline]
26438 fn can_cast(kind: SyntaxKind) -> bool {
26439 kind == SyntaxKind::SET_ACCESS_METHOD
26440 }
26441 #[inline]
26442 fn cast(syntax: SyntaxNode) -> Option<Self> {
26443 if Self::can_cast(syntax.kind()) {
26444 Some(Self { syntax })
26445 } else {
26446 None
26447 }
26448 }
26449 #[inline]
26450 fn syntax(&self) -> &SyntaxNode {
26451 &self.syntax
26452 }
26453}
26454impl AstNode for SetClause {
26455 #[inline]
26456 fn can_cast(kind: SyntaxKind) -> bool {
26457 kind == SyntaxKind::SET_CLAUSE
26458 }
26459 #[inline]
26460 fn cast(syntax: SyntaxNode) -> Option<Self> {
26461 if Self::can_cast(syntax.kind()) {
26462 Some(Self { syntax })
26463 } else {
26464 None
26465 }
26466 }
26467 #[inline]
26468 fn syntax(&self) -> &SyntaxNode {
26469 &self.syntax
26470 }
26471}
26472impl AstNode for SetColumnList {
26473 #[inline]
26474 fn can_cast(kind: SyntaxKind) -> bool {
26475 kind == SyntaxKind::SET_COLUMN_LIST
26476 }
26477 #[inline]
26478 fn cast(syntax: SyntaxNode) -> Option<Self> {
26479 if Self::can_cast(syntax.kind()) {
26480 Some(Self { syntax })
26481 } else {
26482 None
26483 }
26484 }
26485 #[inline]
26486 fn syntax(&self) -> &SyntaxNode {
26487 &self.syntax
26488 }
26489}
26490impl AstNode for SetCompression {
26491 #[inline]
26492 fn can_cast(kind: SyntaxKind) -> bool {
26493 kind == SyntaxKind::SET_COMPRESSION
26494 }
26495 #[inline]
26496 fn cast(syntax: SyntaxNode) -> Option<Self> {
26497 if Self::can_cast(syntax.kind()) {
26498 Some(Self { syntax })
26499 } else {
26500 None
26501 }
26502 }
26503 #[inline]
26504 fn syntax(&self) -> &SyntaxNode {
26505 &self.syntax
26506 }
26507}
26508impl AstNode for SetConfigParam {
26509 #[inline]
26510 fn can_cast(kind: SyntaxKind) -> bool {
26511 kind == SyntaxKind::SET_CONFIG_PARAM
26512 }
26513 #[inline]
26514 fn cast(syntax: SyntaxNode) -> Option<Self> {
26515 if Self::can_cast(syntax.kind()) {
26516 Some(Self { syntax })
26517 } else {
26518 None
26519 }
26520 }
26521 #[inline]
26522 fn syntax(&self) -> &SyntaxNode {
26523 &self.syntax
26524 }
26525}
26526impl AstNode for SetConstraints {
26527 #[inline]
26528 fn can_cast(kind: SyntaxKind) -> bool {
26529 kind == SyntaxKind::SET_CONSTRAINTS
26530 }
26531 #[inline]
26532 fn cast(syntax: SyntaxNode) -> Option<Self> {
26533 if Self::can_cast(syntax.kind()) {
26534 Some(Self { syntax })
26535 } else {
26536 None
26537 }
26538 }
26539 #[inline]
26540 fn syntax(&self) -> &SyntaxNode {
26541 &self.syntax
26542 }
26543}
26544impl AstNode for SetDefault {
26545 #[inline]
26546 fn can_cast(kind: SyntaxKind) -> bool {
26547 kind == SyntaxKind::SET_DEFAULT
26548 }
26549 #[inline]
26550 fn cast(syntax: SyntaxNode) -> Option<Self> {
26551 if Self::can_cast(syntax.kind()) {
26552 Some(Self { syntax })
26553 } else {
26554 None
26555 }
26556 }
26557 #[inline]
26558 fn syntax(&self) -> &SyntaxNode {
26559 &self.syntax
26560 }
26561}
26562impl AstNode for SetDefaultColumns {
26563 #[inline]
26564 fn can_cast(kind: SyntaxKind) -> bool {
26565 kind == SyntaxKind::SET_DEFAULT_COLUMNS
26566 }
26567 #[inline]
26568 fn cast(syntax: SyntaxNode) -> Option<Self> {
26569 if Self::can_cast(syntax.kind()) {
26570 Some(Self { syntax })
26571 } else {
26572 None
26573 }
26574 }
26575 #[inline]
26576 fn syntax(&self) -> &SyntaxNode {
26577 &self.syntax
26578 }
26579}
26580impl AstNode for SetExpr {
26581 #[inline]
26582 fn can_cast(kind: SyntaxKind) -> bool {
26583 kind == SyntaxKind::SET_EXPR
26584 }
26585 #[inline]
26586 fn cast(syntax: SyntaxNode) -> Option<Self> {
26587 if Self::can_cast(syntax.kind()) {
26588 Some(Self { syntax })
26589 } else {
26590 None
26591 }
26592 }
26593 #[inline]
26594 fn syntax(&self) -> &SyntaxNode {
26595 &self.syntax
26596 }
26597}
26598impl AstNode for SetExprList {
26599 #[inline]
26600 fn can_cast(kind: SyntaxKind) -> bool {
26601 kind == SyntaxKind::SET_EXPR_LIST
26602 }
26603 #[inline]
26604 fn cast(syntax: SyntaxNode) -> Option<Self> {
26605 if Self::can_cast(syntax.kind()) {
26606 Some(Self { syntax })
26607 } else {
26608 None
26609 }
26610 }
26611 #[inline]
26612 fn syntax(&self) -> &SyntaxNode {
26613 &self.syntax
26614 }
26615}
26616impl AstNode for SetExpression {
26617 #[inline]
26618 fn can_cast(kind: SyntaxKind) -> bool {
26619 kind == SyntaxKind::SET_EXPRESSION
26620 }
26621 #[inline]
26622 fn cast(syntax: SyntaxNode) -> Option<Self> {
26623 if Self::can_cast(syntax.kind()) {
26624 Some(Self { syntax })
26625 } else {
26626 None
26627 }
26628 }
26629 #[inline]
26630 fn syntax(&self) -> &SyntaxNode {
26631 &self.syntax
26632 }
26633}
26634impl AstNode for SetFuncOption {
26635 #[inline]
26636 fn can_cast(kind: SyntaxKind) -> bool {
26637 kind == SyntaxKind::SET_FUNC_OPTION
26638 }
26639 #[inline]
26640 fn cast(syntax: SyntaxNode) -> Option<Self> {
26641 if Self::can_cast(syntax.kind()) {
26642 Some(Self { syntax })
26643 } else {
26644 None
26645 }
26646 }
26647 #[inline]
26648 fn syntax(&self) -> &SyntaxNode {
26649 &self.syntax
26650 }
26651}
26652impl AstNode for SetGenerated {
26653 #[inline]
26654 fn can_cast(kind: SyntaxKind) -> bool {
26655 kind == SyntaxKind::SET_GENERATED
26656 }
26657 #[inline]
26658 fn cast(syntax: SyntaxNode) -> Option<Self> {
26659 if Self::can_cast(syntax.kind()) {
26660 Some(Self { syntax })
26661 } else {
26662 None
26663 }
26664 }
26665 #[inline]
26666 fn syntax(&self) -> &SyntaxNode {
26667 &self.syntax
26668 }
26669}
26670impl AstNode for SetGeneratedOptions {
26671 #[inline]
26672 fn can_cast(kind: SyntaxKind) -> bool {
26673 kind == SyntaxKind::SET_GENERATED_OPTIONS
26674 }
26675 #[inline]
26676 fn cast(syntax: SyntaxNode) -> Option<Self> {
26677 if Self::can_cast(syntax.kind()) {
26678 Some(Self { syntax })
26679 } else {
26680 None
26681 }
26682 }
26683 #[inline]
26684 fn syntax(&self) -> &SyntaxNode {
26685 &self.syntax
26686 }
26687}
26688impl AstNode for SetLogged {
26689 #[inline]
26690 fn can_cast(kind: SyntaxKind) -> bool {
26691 kind == SyntaxKind::SET_LOGGED
26692 }
26693 #[inline]
26694 fn cast(syntax: SyntaxNode) -> Option<Self> {
26695 if Self::can_cast(syntax.kind()) {
26696 Some(Self { syntax })
26697 } else {
26698 None
26699 }
26700 }
26701 #[inline]
26702 fn syntax(&self) -> &SyntaxNode {
26703 &self.syntax
26704 }
26705}
26706impl AstNode for SetMultipleColumns {
26707 #[inline]
26708 fn can_cast(kind: SyntaxKind) -> bool {
26709 kind == SyntaxKind::SET_MULTIPLE_COLUMNS
26710 }
26711 #[inline]
26712 fn cast(syntax: SyntaxNode) -> Option<Self> {
26713 if Self::can_cast(syntax.kind()) {
26714 Some(Self { syntax })
26715 } else {
26716 None
26717 }
26718 }
26719 #[inline]
26720 fn syntax(&self) -> &SyntaxNode {
26721 &self.syntax
26722 }
26723}
26724impl AstNode for SetNotNull {
26725 #[inline]
26726 fn can_cast(kind: SyntaxKind) -> bool {
26727 kind == SyntaxKind::SET_NOT_NULL
26728 }
26729 #[inline]
26730 fn cast(syntax: SyntaxNode) -> Option<Self> {
26731 if Self::can_cast(syntax.kind()) {
26732 Some(Self { syntax })
26733 } else {
26734 None
26735 }
26736 }
26737 #[inline]
26738 fn syntax(&self) -> &SyntaxNode {
26739 &self.syntax
26740 }
26741}
26742impl AstNode for SetNullColumns {
26743 #[inline]
26744 fn can_cast(kind: SyntaxKind) -> bool {
26745 kind == SyntaxKind::SET_NULL_COLUMNS
26746 }
26747 #[inline]
26748 fn cast(syntax: SyntaxNode) -> Option<Self> {
26749 if Self::can_cast(syntax.kind()) {
26750 Some(Self { syntax })
26751 } else {
26752 None
26753 }
26754 }
26755 #[inline]
26756 fn syntax(&self) -> &SyntaxNode {
26757 &self.syntax
26758 }
26759}
26760impl AstNode for SetOptions {
26761 #[inline]
26762 fn can_cast(kind: SyntaxKind) -> bool {
26763 kind == SyntaxKind::SET_OPTIONS
26764 }
26765 #[inline]
26766 fn cast(syntax: SyntaxNode) -> Option<Self> {
26767 if Self::can_cast(syntax.kind()) {
26768 Some(Self { syntax })
26769 } else {
26770 None
26771 }
26772 }
26773 #[inline]
26774 fn syntax(&self) -> &SyntaxNode {
26775 &self.syntax
26776 }
26777}
26778impl AstNode for SetOptionsList {
26779 #[inline]
26780 fn can_cast(kind: SyntaxKind) -> bool {
26781 kind == SyntaxKind::SET_OPTIONS_LIST
26782 }
26783 #[inline]
26784 fn cast(syntax: SyntaxNode) -> Option<Self> {
26785 if Self::can_cast(syntax.kind()) {
26786 Some(Self { syntax })
26787 } else {
26788 None
26789 }
26790 }
26791 #[inline]
26792 fn syntax(&self) -> &SyntaxNode {
26793 &self.syntax
26794 }
26795}
26796impl AstNode for SetRole {
26797 #[inline]
26798 fn can_cast(kind: SyntaxKind) -> bool {
26799 kind == SyntaxKind::SET_ROLE
26800 }
26801 #[inline]
26802 fn cast(syntax: SyntaxNode) -> Option<Self> {
26803 if Self::can_cast(syntax.kind()) {
26804 Some(Self { syntax })
26805 } else {
26806 None
26807 }
26808 }
26809 #[inline]
26810 fn syntax(&self) -> &SyntaxNode {
26811 &self.syntax
26812 }
26813}
26814impl AstNode for SetSchema {
26815 #[inline]
26816 fn can_cast(kind: SyntaxKind) -> bool {
26817 kind == SyntaxKind::SET_SCHEMA
26818 }
26819 #[inline]
26820 fn cast(syntax: SyntaxNode) -> Option<Self> {
26821 if Self::can_cast(syntax.kind()) {
26822 Some(Self { syntax })
26823 } else {
26824 None
26825 }
26826 }
26827 #[inline]
26828 fn syntax(&self) -> &SyntaxNode {
26829 &self.syntax
26830 }
26831}
26832impl AstNode for SetSequenceOption {
26833 #[inline]
26834 fn can_cast(kind: SyntaxKind) -> bool {
26835 kind == SyntaxKind::SET_SEQUENCE_OPTION
26836 }
26837 #[inline]
26838 fn cast(syntax: SyntaxNode) -> Option<Self> {
26839 if Self::can_cast(syntax.kind()) {
26840 Some(Self { syntax })
26841 } else {
26842 None
26843 }
26844 }
26845 #[inline]
26846 fn syntax(&self) -> &SyntaxNode {
26847 &self.syntax
26848 }
26849}
26850impl AstNode for SetSessionAuth {
26851 #[inline]
26852 fn can_cast(kind: SyntaxKind) -> bool {
26853 kind == SyntaxKind::SET_SESSION_AUTH
26854 }
26855 #[inline]
26856 fn cast(syntax: SyntaxNode) -> Option<Self> {
26857 if Self::can_cast(syntax.kind()) {
26858 Some(Self { syntax })
26859 } else {
26860 None
26861 }
26862 }
26863 #[inline]
26864 fn syntax(&self) -> &SyntaxNode {
26865 &self.syntax
26866 }
26867}
26868impl AstNode for SetSingleColumn {
26869 #[inline]
26870 fn can_cast(kind: SyntaxKind) -> bool {
26871 kind == SyntaxKind::SET_SINGLE_COLUMN
26872 }
26873 #[inline]
26874 fn cast(syntax: SyntaxNode) -> Option<Self> {
26875 if Self::can_cast(syntax.kind()) {
26876 Some(Self { syntax })
26877 } else {
26878 None
26879 }
26880 }
26881 #[inline]
26882 fn syntax(&self) -> &SyntaxNode {
26883 &self.syntax
26884 }
26885}
26886impl AstNode for SetStatistics {
26887 #[inline]
26888 fn can_cast(kind: SyntaxKind) -> bool {
26889 kind == SyntaxKind::SET_STATISTICS
26890 }
26891 #[inline]
26892 fn cast(syntax: SyntaxNode) -> Option<Self> {
26893 if Self::can_cast(syntax.kind()) {
26894 Some(Self { syntax })
26895 } else {
26896 None
26897 }
26898 }
26899 #[inline]
26900 fn syntax(&self) -> &SyntaxNode {
26901 &self.syntax
26902 }
26903}
26904impl AstNode for SetStorage {
26905 #[inline]
26906 fn can_cast(kind: SyntaxKind) -> bool {
26907 kind == SyntaxKind::SET_STORAGE
26908 }
26909 #[inline]
26910 fn cast(syntax: SyntaxNode) -> Option<Self> {
26911 if Self::can_cast(syntax.kind()) {
26912 Some(Self { syntax })
26913 } else {
26914 None
26915 }
26916 }
26917 #[inline]
26918 fn syntax(&self) -> &SyntaxNode {
26919 &self.syntax
26920 }
26921}
26922impl AstNode for SetTablespace {
26923 #[inline]
26924 fn can_cast(kind: SyntaxKind) -> bool {
26925 kind == SyntaxKind::SET_TABLESPACE
26926 }
26927 #[inline]
26928 fn cast(syntax: SyntaxNode) -> Option<Self> {
26929 if Self::can_cast(syntax.kind()) {
26930 Some(Self { syntax })
26931 } else {
26932 None
26933 }
26934 }
26935 #[inline]
26936 fn syntax(&self) -> &SyntaxNode {
26937 &self.syntax
26938 }
26939}
26940impl AstNode for SetTransaction {
26941 #[inline]
26942 fn can_cast(kind: SyntaxKind) -> bool {
26943 kind == SyntaxKind::SET_TRANSACTION
26944 }
26945 #[inline]
26946 fn cast(syntax: SyntaxNode) -> Option<Self> {
26947 if Self::can_cast(syntax.kind()) {
26948 Some(Self { syntax })
26949 } else {
26950 None
26951 }
26952 }
26953 #[inline]
26954 fn syntax(&self) -> &SyntaxNode {
26955 &self.syntax
26956 }
26957}
26958impl AstNode for SetType {
26959 #[inline]
26960 fn can_cast(kind: SyntaxKind) -> bool {
26961 kind == SyntaxKind::SET_TYPE
26962 }
26963 #[inline]
26964 fn cast(syntax: SyntaxNode) -> Option<Self> {
26965 if Self::can_cast(syntax.kind()) {
26966 Some(Self { syntax })
26967 } else {
26968 None
26969 }
26970 }
26971 #[inline]
26972 fn syntax(&self) -> &SyntaxNode {
26973 &self.syntax
26974 }
26975}
26976impl AstNode for SetUnlogged {
26977 #[inline]
26978 fn can_cast(kind: SyntaxKind) -> bool {
26979 kind == SyntaxKind::SET_UNLOGGED
26980 }
26981 #[inline]
26982 fn cast(syntax: SyntaxNode) -> Option<Self> {
26983 if Self::can_cast(syntax.kind()) {
26984 Some(Self { syntax })
26985 } else {
26986 None
26987 }
26988 }
26989 #[inline]
26990 fn syntax(&self) -> &SyntaxNode {
26991 &self.syntax
26992 }
26993}
26994impl AstNode for SetWithoutCluster {
26995 #[inline]
26996 fn can_cast(kind: SyntaxKind) -> bool {
26997 kind == SyntaxKind::SET_WITHOUT_CLUSTER
26998 }
26999 #[inline]
27000 fn cast(syntax: SyntaxNode) -> Option<Self> {
27001 if Self::can_cast(syntax.kind()) {
27002 Some(Self { syntax })
27003 } else {
27004 None
27005 }
27006 }
27007 #[inline]
27008 fn syntax(&self) -> &SyntaxNode {
27009 &self.syntax
27010 }
27011}
27012impl AstNode for SetWithoutOids {
27013 #[inline]
27014 fn can_cast(kind: SyntaxKind) -> bool {
27015 kind == SyntaxKind::SET_WITHOUT_OIDS
27016 }
27017 #[inline]
27018 fn cast(syntax: SyntaxNode) -> Option<Self> {
27019 if Self::can_cast(syntax.kind()) {
27020 Some(Self { syntax })
27021 } else {
27022 None
27023 }
27024 }
27025 #[inline]
27026 fn syntax(&self) -> &SyntaxNode {
27027 &self.syntax
27028 }
27029}
27030impl AstNode for Show {
27031 #[inline]
27032 fn can_cast(kind: SyntaxKind) -> bool {
27033 kind == SyntaxKind::SHOW
27034 }
27035 #[inline]
27036 fn cast(syntax: SyntaxNode) -> Option<Self> {
27037 if Self::can_cast(syntax.kind()) {
27038 Some(Self { syntax })
27039 } else {
27040 None
27041 }
27042 }
27043 #[inline]
27044 fn syntax(&self) -> &SyntaxNode {
27045 &self.syntax
27046 }
27047}
27048impl AstNode for SimilarTo {
27049 #[inline]
27050 fn can_cast(kind: SyntaxKind) -> bool {
27051 kind == SyntaxKind::SIMILAR_TO
27052 }
27053 #[inline]
27054 fn cast(syntax: SyntaxNode) -> Option<Self> {
27055 if Self::can_cast(syntax.kind()) {
27056 Some(Self { syntax })
27057 } else {
27058 None
27059 }
27060 }
27061 #[inline]
27062 fn syntax(&self) -> &SyntaxNode {
27063 &self.syntax
27064 }
27065}
27066impl AstNode for SliceExpr {
27067 #[inline]
27068 fn can_cast(kind: SyntaxKind) -> bool {
27069 kind == SyntaxKind::SLICE_EXPR
27070 }
27071 #[inline]
27072 fn cast(syntax: SyntaxNode) -> Option<Self> {
27073 if Self::can_cast(syntax.kind()) {
27074 Some(Self { syntax })
27075 } else {
27076 None
27077 }
27078 }
27079 #[inline]
27080 fn syntax(&self) -> &SyntaxNode {
27081 &self.syntax
27082 }
27083}
27084impl AstNode for SomeFn {
27085 #[inline]
27086 fn can_cast(kind: SyntaxKind) -> bool {
27087 kind == SyntaxKind::SOME_FN
27088 }
27089 #[inline]
27090 fn cast(syntax: SyntaxNode) -> Option<Self> {
27091 if Self::can_cast(syntax.kind()) {
27092 Some(Self { syntax })
27093 } else {
27094 None
27095 }
27096 }
27097 #[inline]
27098 fn syntax(&self) -> &SyntaxNode {
27099 &self.syntax
27100 }
27101}
27102impl AstNode for SortAsc {
27103 #[inline]
27104 fn can_cast(kind: SyntaxKind) -> bool {
27105 kind == SyntaxKind::SORT_ASC
27106 }
27107 #[inline]
27108 fn cast(syntax: SyntaxNode) -> Option<Self> {
27109 if Self::can_cast(syntax.kind()) {
27110 Some(Self { syntax })
27111 } else {
27112 None
27113 }
27114 }
27115 #[inline]
27116 fn syntax(&self) -> &SyntaxNode {
27117 &self.syntax
27118 }
27119}
27120impl AstNode for SortBy {
27121 #[inline]
27122 fn can_cast(kind: SyntaxKind) -> bool {
27123 kind == SyntaxKind::SORT_BY
27124 }
27125 #[inline]
27126 fn cast(syntax: SyntaxNode) -> Option<Self> {
27127 if Self::can_cast(syntax.kind()) {
27128 Some(Self { syntax })
27129 } else {
27130 None
27131 }
27132 }
27133 #[inline]
27134 fn syntax(&self) -> &SyntaxNode {
27135 &self.syntax
27136 }
27137}
27138impl AstNode for SortByList {
27139 #[inline]
27140 fn can_cast(kind: SyntaxKind) -> bool {
27141 kind == SyntaxKind::SORT_BY_LIST
27142 }
27143 #[inline]
27144 fn cast(syntax: SyntaxNode) -> Option<Self> {
27145 if Self::can_cast(syntax.kind()) {
27146 Some(Self { syntax })
27147 } else {
27148 None
27149 }
27150 }
27151 #[inline]
27152 fn syntax(&self) -> &SyntaxNode {
27153 &self.syntax
27154 }
27155}
27156impl AstNode for SortDesc {
27157 #[inline]
27158 fn can_cast(kind: SyntaxKind) -> bool {
27159 kind == SyntaxKind::SORT_DESC
27160 }
27161 #[inline]
27162 fn cast(syntax: SyntaxNode) -> Option<Self> {
27163 if Self::can_cast(syntax.kind()) {
27164 Some(Self { syntax })
27165 } else {
27166 None
27167 }
27168 }
27169 #[inline]
27170 fn syntax(&self) -> &SyntaxNode {
27171 &self.syntax
27172 }
27173}
27174impl AstNode for SortUsing {
27175 #[inline]
27176 fn can_cast(kind: SyntaxKind) -> bool {
27177 kind == SyntaxKind::SORT_USING
27178 }
27179 #[inline]
27180 fn cast(syntax: SyntaxNode) -> Option<Self> {
27181 if Self::can_cast(syntax.kind()) {
27182 Some(Self { syntax })
27183 } else {
27184 None
27185 }
27186 }
27187 #[inline]
27188 fn syntax(&self) -> &SyntaxNode {
27189 &self.syntax
27190 }
27191}
27192impl AstNode for SourceFile {
27193 #[inline]
27194 fn can_cast(kind: SyntaxKind) -> bool {
27195 kind == SyntaxKind::SOURCE_FILE
27196 }
27197 #[inline]
27198 fn cast(syntax: SyntaxNode) -> Option<Self> {
27199 if Self::can_cast(syntax.kind()) {
27200 Some(Self { syntax })
27201 } else {
27202 None
27203 }
27204 }
27205 #[inline]
27206 fn syntax(&self) -> &SyntaxNode {
27207 &self.syntax
27208 }
27209}
27210impl AstNode for SplitPartition {
27211 #[inline]
27212 fn can_cast(kind: SyntaxKind) -> bool {
27213 kind == SyntaxKind::SPLIT_PARTITION
27214 }
27215 #[inline]
27216 fn cast(syntax: SyntaxNode) -> Option<Self> {
27217 if Self::can_cast(syntax.kind()) {
27218 Some(Self { syntax })
27219 } else {
27220 None
27221 }
27222 }
27223 #[inline]
27224 fn syntax(&self) -> &SyntaxNode {
27225 &self.syntax
27226 }
27227}
27228impl AstNode for Storage {
27229 #[inline]
27230 fn can_cast(kind: SyntaxKind) -> bool {
27231 kind == SyntaxKind::STORAGE
27232 }
27233 #[inline]
27234 fn cast(syntax: SyntaxNode) -> Option<Self> {
27235 if Self::can_cast(syntax.kind()) {
27236 Some(Self { syntax })
27237 } else {
27238 None
27239 }
27240 }
27241 #[inline]
27242 fn syntax(&self) -> &SyntaxNode {
27243 &self.syntax
27244 }
27245}
27246impl AstNode for StrictFuncOption {
27247 #[inline]
27248 fn can_cast(kind: SyntaxKind) -> bool {
27249 kind == SyntaxKind::STRICT_FUNC_OPTION
27250 }
27251 #[inline]
27252 fn cast(syntax: SyntaxNode) -> Option<Self> {
27253 if Self::can_cast(syntax.kind()) {
27254 Some(Self { syntax })
27255 } else {
27256 None
27257 }
27258 }
27259 #[inline]
27260 fn syntax(&self) -> &SyntaxNode {
27261 &self.syntax
27262 }
27263}
27264impl AstNode for SubstringFn {
27265 #[inline]
27266 fn can_cast(kind: SyntaxKind) -> bool {
27267 kind == SyntaxKind::SUBSTRING_FN
27268 }
27269 #[inline]
27270 fn cast(syntax: SyntaxNode) -> Option<Self> {
27271 if Self::can_cast(syntax.kind()) {
27272 Some(Self { syntax })
27273 } else {
27274 None
27275 }
27276 }
27277 #[inline]
27278 fn syntax(&self) -> &SyntaxNode {
27279 &self.syntax
27280 }
27281}
27282impl AstNode for SupportFuncOption {
27283 #[inline]
27284 fn can_cast(kind: SyntaxKind) -> bool {
27285 kind == SyntaxKind::SUPPORT_FUNC_OPTION
27286 }
27287 #[inline]
27288 fn cast(syntax: SyntaxNode) -> Option<Self> {
27289 if Self::can_cast(syntax.kind()) {
27290 Some(Self { syntax })
27291 } else {
27292 None
27293 }
27294 }
27295 #[inline]
27296 fn syntax(&self) -> &SyntaxNode {
27297 &self.syntax
27298 }
27299}
27300impl AstNode for Table {
27301 #[inline]
27302 fn can_cast(kind: SyntaxKind) -> bool {
27303 kind == SyntaxKind::TABLE
27304 }
27305 #[inline]
27306 fn cast(syntax: SyntaxNode) -> Option<Self> {
27307 if Self::can_cast(syntax.kind()) {
27308 Some(Self { syntax })
27309 } else {
27310 None
27311 }
27312 }
27313 #[inline]
27314 fn syntax(&self) -> &SyntaxNode {
27315 &self.syntax
27316 }
27317}
27318impl AstNode for TableAndColumns {
27319 #[inline]
27320 fn can_cast(kind: SyntaxKind) -> bool {
27321 kind == SyntaxKind::TABLE_AND_COLUMNS
27322 }
27323 #[inline]
27324 fn cast(syntax: SyntaxNode) -> Option<Self> {
27325 if Self::can_cast(syntax.kind()) {
27326 Some(Self { syntax })
27327 } else {
27328 None
27329 }
27330 }
27331 #[inline]
27332 fn syntax(&self) -> &SyntaxNode {
27333 &self.syntax
27334 }
27335}
27336impl AstNode for TableAndColumnsList {
27337 #[inline]
27338 fn can_cast(kind: SyntaxKind) -> bool {
27339 kind == SyntaxKind::TABLE_AND_COLUMNS_LIST
27340 }
27341 #[inline]
27342 fn cast(syntax: SyntaxNode) -> Option<Self> {
27343 if Self::can_cast(syntax.kind()) {
27344 Some(Self { syntax })
27345 } else {
27346 None
27347 }
27348 }
27349 #[inline]
27350 fn syntax(&self) -> &SyntaxNode {
27351 &self.syntax
27352 }
27353}
27354impl AstNode for TableArgList {
27355 #[inline]
27356 fn can_cast(kind: SyntaxKind) -> bool {
27357 kind == SyntaxKind::TABLE_ARG_LIST
27358 }
27359 #[inline]
27360 fn cast(syntax: SyntaxNode) -> Option<Self> {
27361 if Self::can_cast(syntax.kind()) {
27362 Some(Self { syntax })
27363 } else {
27364 None
27365 }
27366 }
27367 #[inline]
27368 fn syntax(&self) -> &SyntaxNode {
27369 &self.syntax
27370 }
27371}
27372impl AstNode for TableList {
27373 #[inline]
27374 fn can_cast(kind: SyntaxKind) -> bool {
27375 kind == SyntaxKind::TABLE_LIST
27376 }
27377 #[inline]
27378 fn cast(syntax: SyntaxNode) -> Option<Self> {
27379 if Self::can_cast(syntax.kind()) {
27380 Some(Self { syntax })
27381 } else {
27382 None
27383 }
27384 }
27385 #[inline]
27386 fn syntax(&self) -> &SyntaxNode {
27387 &self.syntax
27388 }
27389}
27390impl AstNode for TablesampleClause {
27391 #[inline]
27392 fn can_cast(kind: SyntaxKind) -> bool {
27393 kind == SyntaxKind::TABLESAMPLE_CLAUSE
27394 }
27395 #[inline]
27396 fn cast(syntax: SyntaxNode) -> Option<Self> {
27397 if Self::can_cast(syntax.kind()) {
27398 Some(Self { syntax })
27399 } else {
27400 None
27401 }
27402 }
27403 #[inline]
27404 fn syntax(&self) -> &SyntaxNode {
27405 &self.syntax
27406 }
27407}
27408impl AstNode for Tablespace {
27409 #[inline]
27410 fn can_cast(kind: SyntaxKind) -> bool {
27411 kind == SyntaxKind::TABLESPACE
27412 }
27413 #[inline]
27414 fn cast(syntax: SyntaxNode) -> Option<Self> {
27415 if Self::can_cast(syntax.kind()) {
27416 Some(Self { syntax })
27417 } else {
27418 None
27419 }
27420 }
27421 #[inline]
27422 fn syntax(&self) -> &SyntaxNode {
27423 &self.syntax
27424 }
27425}
27426impl AstNode for Target {
27427 #[inline]
27428 fn can_cast(kind: SyntaxKind) -> bool {
27429 kind == SyntaxKind::TARGET
27430 }
27431 #[inline]
27432 fn cast(syntax: SyntaxNode) -> Option<Self> {
27433 if Self::can_cast(syntax.kind()) {
27434 Some(Self { syntax })
27435 } else {
27436 None
27437 }
27438 }
27439 #[inline]
27440 fn syntax(&self) -> &SyntaxNode {
27441 &self.syntax
27442 }
27443}
27444impl AstNode for TargetList {
27445 #[inline]
27446 fn can_cast(kind: SyntaxKind) -> bool {
27447 kind == SyntaxKind::TARGET_LIST
27448 }
27449 #[inline]
27450 fn cast(syntax: SyntaxNode) -> Option<Self> {
27451 if Self::can_cast(syntax.kind()) {
27452 Some(Self { syntax })
27453 } else {
27454 None
27455 }
27456 }
27457 #[inline]
27458 fn syntax(&self) -> &SyntaxNode {
27459 &self.syntax
27460 }
27461}
27462impl AstNode for TimeType {
27463 #[inline]
27464 fn can_cast(kind: SyntaxKind) -> bool {
27465 kind == SyntaxKind::TIME_TYPE
27466 }
27467 #[inline]
27468 fn cast(syntax: SyntaxNode) -> Option<Self> {
27469 if Self::can_cast(syntax.kind()) {
27470 Some(Self { syntax })
27471 } else {
27472 None
27473 }
27474 }
27475 #[inline]
27476 fn syntax(&self) -> &SyntaxNode {
27477 &self.syntax
27478 }
27479}
27480impl AstNode for Timing {
27481 #[inline]
27482 fn can_cast(kind: SyntaxKind) -> bool {
27483 kind == SyntaxKind::TIMING
27484 }
27485 #[inline]
27486 fn cast(syntax: SyntaxNode) -> Option<Self> {
27487 if Self::can_cast(syntax.kind()) {
27488 Some(Self { syntax })
27489 } else {
27490 None
27491 }
27492 }
27493 #[inline]
27494 fn syntax(&self) -> &SyntaxNode {
27495 &self.syntax
27496 }
27497}
27498impl AstNode for TransactionModeList {
27499 #[inline]
27500 fn can_cast(kind: SyntaxKind) -> bool {
27501 kind == SyntaxKind::TRANSACTION_MODE_LIST
27502 }
27503 #[inline]
27504 fn cast(syntax: SyntaxNode) -> Option<Self> {
27505 if Self::can_cast(syntax.kind()) {
27506 Some(Self { syntax })
27507 } else {
27508 None
27509 }
27510 }
27511 #[inline]
27512 fn syntax(&self) -> &SyntaxNode {
27513 &self.syntax
27514 }
27515}
27516impl AstNode for TransformFromFunc {
27517 #[inline]
27518 fn can_cast(kind: SyntaxKind) -> bool {
27519 kind == SyntaxKind::TRANSFORM_FROM_FUNC
27520 }
27521 #[inline]
27522 fn cast(syntax: SyntaxNode) -> Option<Self> {
27523 if Self::can_cast(syntax.kind()) {
27524 Some(Self { syntax })
27525 } else {
27526 None
27527 }
27528 }
27529 #[inline]
27530 fn syntax(&self) -> &SyntaxNode {
27531 &self.syntax
27532 }
27533}
27534impl AstNode for TransformFuncOption {
27535 #[inline]
27536 fn can_cast(kind: SyntaxKind) -> bool {
27537 kind == SyntaxKind::TRANSFORM_FUNC_OPTION
27538 }
27539 #[inline]
27540 fn cast(syntax: SyntaxNode) -> Option<Self> {
27541 if Self::can_cast(syntax.kind()) {
27542 Some(Self { syntax })
27543 } else {
27544 None
27545 }
27546 }
27547 #[inline]
27548 fn syntax(&self) -> &SyntaxNode {
27549 &self.syntax
27550 }
27551}
27552impl AstNode for TransformToFunc {
27553 #[inline]
27554 fn can_cast(kind: SyntaxKind) -> bool {
27555 kind == SyntaxKind::TRANSFORM_TO_FUNC
27556 }
27557 #[inline]
27558 fn cast(syntax: SyntaxNode) -> Option<Self> {
27559 if Self::can_cast(syntax.kind()) {
27560 Some(Self { syntax })
27561 } else {
27562 None
27563 }
27564 }
27565 #[inline]
27566 fn syntax(&self) -> &SyntaxNode {
27567 &self.syntax
27568 }
27569}
27570impl AstNode for TriggerEvent {
27571 #[inline]
27572 fn can_cast(kind: SyntaxKind) -> bool {
27573 kind == SyntaxKind::TRIGGER_EVENT
27574 }
27575 #[inline]
27576 fn cast(syntax: SyntaxNode) -> Option<Self> {
27577 if Self::can_cast(syntax.kind()) {
27578 Some(Self { syntax })
27579 } else {
27580 None
27581 }
27582 }
27583 #[inline]
27584 fn syntax(&self) -> &SyntaxNode {
27585 &self.syntax
27586 }
27587}
27588impl AstNode for TriggerEventList {
27589 #[inline]
27590 fn can_cast(kind: SyntaxKind) -> bool {
27591 kind == SyntaxKind::TRIGGER_EVENT_LIST
27592 }
27593 #[inline]
27594 fn cast(syntax: SyntaxNode) -> Option<Self> {
27595 if Self::can_cast(syntax.kind()) {
27596 Some(Self { syntax })
27597 } else {
27598 None
27599 }
27600 }
27601 #[inline]
27602 fn syntax(&self) -> &SyntaxNode {
27603 &self.syntax
27604 }
27605}
27606impl AstNode for TriggerEventUpdate {
27607 #[inline]
27608 fn can_cast(kind: SyntaxKind) -> bool {
27609 kind == SyntaxKind::TRIGGER_EVENT_UPDATE
27610 }
27611 #[inline]
27612 fn cast(syntax: SyntaxNode) -> Option<Self> {
27613 if Self::can_cast(syntax.kind()) {
27614 Some(Self { syntax })
27615 } else {
27616 None
27617 }
27618 }
27619 #[inline]
27620 fn syntax(&self) -> &SyntaxNode {
27621 &self.syntax
27622 }
27623}
27624impl AstNode for TrimFn {
27625 #[inline]
27626 fn can_cast(kind: SyntaxKind) -> bool {
27627 kind == SyntaxKind::TRIM_FN
27628 }
27629 #[inline]
27630 fn cast(syntax: SyntaxNode) -> Option<Self> {
27631 if Self::can_cast(syntax.kind()) {
27632 Some(Self { syntax })
27633 } else {
27634 None
27635 }
27636 }
27637 #[inline]
27638 fn syntax(&self) -> &SyntaxNode {
27639 &self.syntax
27640 }
27641}
27642impl AstNode for Truncate {
27643 #[inline]
27644 fn can_cast(kind: SyntaxKind) -> bool {
27645 kind == SyntaxKind::TRUNCATE
27646 }
27647 #[inline]
27648 fn cast(syntax: SyntaxNode) -> Option<Self> {
27649 if Self::can_cast(syntax.kind()) {
27650 Some(Self { syntax })
27651 } else {
27652 None
27653 }
27654 }
27655 #[inline]
27656 fn syntax(&self) -> &SyntaxNode {
27657 &self.syntax
27658 }
27659}
27660impl AstNode for TupleExpr {
27661 #[inline]
27662 fn can_cast(kind: SyntaxKind) -> bool {
27663 kind == SyntaxKind::TUPLE_EXPR
27664 }
27665 #[inline]
27666 fn cast(syntax: SyntaxNode) -> Option<Self> {
27667 if Self::can_cast(syntax.kind()) {
27668 Some(Self { syntax })
27669 } else {
27670 None
27671 }
27672 }
27673 #[inline]
27674 fn syntax(&self) -> &SyntaxNode {
27675 &self.syntax
27676 }
27677}
27678impl AstNode for UnicodeNormalForm {
27679 #[inline]
27680 fn can_cast(kind: SyntaxKind) -> bool {
27681 kind == SyntaxKind::UNICODE_NORMAL_FORM
27682 }
27683 #[inline]
27684 fn cast(syntax: SyntaxNode) -> Option<Self> {
27685 if Self::can_cast(syntax.kind()) {
27686 Some(Self { syntax })
27687 } else {
27688 None
27689 }
27690 }
27691 #[inline]
27692 fn syntax(&self) -> &SyntaxNode {
27693 &self.syntax
27694 }
27695}
27696impl AstNode for UniqueConstraint {
27697 #[inline]
27698 fn can_cast(kind: SyntaxKind) -> bool {
27699 kind == SyntaxKind::UNIQUE_CONSTRAINT
27700 }
27701 #[inline]
27702 fn cast(syntax: SyntaxNode) -> Option<Self> {
27703 if Self::can_cast(syntax.kind()) {
27704 Some(Self { syntax })
27705 } else {
27706 None
27707 }
27708 }
27709 #[inline]
27710 fn syntax(&self) -> &SyntaxNode {
27711 &self.syntax
27712 }
27713}
27714impl AstNode for Unlisten {
27715 #[inline]
27716 fn can_cast(kind: SyntaxKind) -> bool {
27717 kind == SyntaxKind::UNLISTEN
27718 }
27719 #[inline]
27720 fn cast(syntax: SyntaxNode) -> Option<Self> {
27721 if Self::can_cast(syntax.kind()) {
27722 Some(Self { syntax })
27723 } else {
27724 None
27725 }
27726 }
27727 #[inline]
27728 fn syntax(&self) -> &SyntaxNode {
27729 &self.syntax
27730 }
27731}
27732impl AstNode for Update {
27733 #[inline]
27734 fn can_cast(kind: SyntaxKind) -> bool {
27735 kind == SyntaxKind::UPDATE
27736 }
27737 #[inline]
27738 fn cast(syntax: SyntaxNode) -> Option<Self> {
27739 if Self::can_cast(syntax.kind()) {
27740 Some(Self { syntax })
27741 } else {
27742 None
27743 }
27744 }
27745 #[inline]
27746 fn syntax(&self) -> &SyntaxNode {
27747 &self.syntax
27748 }
27749}
27750impl AstNode for UsingClause {
27751 #[inline]
27752 fn can_cast(kind: SyntaxKind) -> bool {
27753 kind == SyntaxKind::USING_CLAUSE
27754 }
27755 #[inline]
27756 fn cast(syntax: SyntaxNode) -> Option<Self> {
27757 if Self::can_cast(syntax.kind()) {
27758 Some(Self { syntax })
27759 } else {
27760 None
27761 }
27762 }
27763 #[inline]
27764 fn syntax(&self) -> &SyntaxNode {
27765 &self.syntax
27766 }
27767}
27768impl AstNode for UsingExprClause {
27769 #[inline]
27770 fn can_cast(kind: SyntaxKind) -> bool {
27771 kind == SyntaxKind::USING_EXPR_CLAUSE
27772 }
27773 #[inline]
27774 fn cast(syntax: SyntaxNode) -> Option<Self> {
27775 if Self::can_cast(syntax.kind()) {
27776 Some(Self { syntax })
27777 } else {
27778 None
27779 }
27780 }
27781 #[inline]
27782 fn syntax(&self) -> &SyntaxNode {
27783 &self.syntax
27784 }
27785}
27786impl AstNode for UsingIndex {
27787 #[inline]
27788 fn can_cast(kind: SyntaxKind) -> bool {
27789 kind == SyntaxKind::USING_INDEX
27790 }
27791 #[inline]
27792 fn cast(syntax: SyntaxNode) -> Option<Self> {
27793 if Self::can_cast(syntax.kind()) {
27794 Some(Self { syntax })
27795 } else {
27796 None
27797 }
27798 }
27799 #[inline]
27800 fn syntax(&self) -> &SyntaxNode {
27801 &self.syntax
27802 }
27803}
27804impl AstNode for UsingMethod {
27805 #[inline]
27806 fn can_cast(kind: SyntaxKind) -> bool {
27807 kind == SyntaxKind::USING_METHOD
27808 }
27809 #[inline]
27810 fn cast(syntax: SyntaxNode) -> Option<Self> {
27811 if Self::can_cast(syntax.kind()) {
27812 Some(Self { syntax })
27813 } else {
27814 None
27815 }
27816 }
27817 #[inline]
27818 fn syntax(&self) -> &SyntaxNode {
27819 &self.syntax
27820 }
27821}
27822impl AstNode for UsingOnClause {
27823 #[inline]
27824 fn can_cast(kind: SyntaxKind) -> bool {
27825 kind == SyntaxKind::USING_ON_CLAUSE
27826 }
27827 #[inline]
27828 fn cast(syntax: SyntaxNode) -> Option<Self> {
27829 if Self::can_cast(syntax.kind()) {
27830 Some(Self { syntax })
27831 } else {
27832 None
27833 }
27834 }
27835 #[inline]
27836 fn syntax(&self) -> &SyntaxNode {
27837 &self.syntax
27838 }
27839}
27840impl AstNode for Vacuum {
27841 #[inline]
27842 fn can_cast(kind: SyntaxKind) -> bool {
27843 kind == SyntaxKind::VACUUM
27844 }
27845 #[inline]
27846 fn cast(syntax: SyntaxNode) -> Option<Self> {
27847 if Self::can_cast(syntax.kind()) {
27848 Some(Self { syntax })
27849 } else {
27850 None
27851 }
27852 }
27853 #[inline]
27854 fn syntax(&self) -> &SyntaxNode {
27855 &self.syntax
27856 }
27857}
27858impl AstNode for VacuumOption {
27859 #[inline]
27860 fn can_cast(kind: SyntaxKind) -> bool {
27861 kind == SyntaxKind::VACUUM_OPTION
27862 }
27863 #[inline]
27864 fn cast(syntax: SyntaxNode) -> Option<Self> {
27865 if Self::can_cast(syntax.kind()) {
27866 Some(Self { syntax })
27867 } else {
27868 None
27869 }
27870 }
27871 #[inline]
27872 fn syntax(&self) -> &SyntaxNode {
27873 &self.syntax
27874 }
27875}
27876impl AstNode for VacuumOptionList {
27877 #[inline]
27878 fn can_cast(kind: SyntaxKind) -> bool {
27879 kind == SyntaxKind::VACUUM_OPTION_LIST
27880 }
27881 #[inline]
27882 fn cast(syntax: SyntaxNode) -> Option<Self> {
27883 if Self::can_cast(syntax.kind()) {
27884 Some(Self { syntax })
27885 } else {
27886 None
27887 }
27888 }
27889 #[inline]
27890 fn syntax(&self) -> &SyntaxNode {
27891 &self.syntax
27892 }
27893}
27894impl AstNode for ValidateConstraint {
27895 #[inline]
27896 fn can_cast(kind: SyntaxKind) -> bool {
27897 kind == SyntaxKind::VALIDATE_CONSTRAINT
27898 }
27899 #[inline]
27900 fn cast(syntax: SyntaxNode) -> Option<Self> {
27901 if Self::can_cast(syntax.kind()) {
27902 Some(Self { syntax })
27903 } else {
27904 None
27905 }
27906 }
27907 #[inline]
27908 fn syntax(&self) -> &SyntaxNode {
27909 &self.syntax
27910 }
27911}
27912impl AstNode for Values {
27913 #[inline]
27914 fn can_cast(kind: SyntaxKind) -> bool {
27915 kind == SyntaxKind::VALUES
27916 }
27917 #[inline]
27918 fn cast(syntax: SyntaxNode) -> Option<Self> {
27919 if Self::can_cast(syntax.kind()) {
27920 Some(Self { syntax })
27921 } else {
27922 None
27923 }
27924 }
27925 #[inline]
27926 fn syntax(&self) -> &SyntaxNode {
27927 &self.syntax
27928 }
27929}
27930impl AstNode for Variant {
27931 #[inline]
27932 fn can_cast(kind: SyntaxKind) -> bool {
27933 kind == SyntaxKind::VARIANT
27934 }
27935 #[inline]
27936 fn cast(syntax: SyntaxNode) -> Option<Self> {
27937 if Self::can_cast(syntax.kind()) {
27938 Some(Self { syntax })
27939 } else {
27940 None
27941 }
27942 }
27943 #[inline]
27944 fn syntax(&self) -> &SyntaxNode {
27945 &self.syntax
27946 }
27947}
27948impl AstNode for VariantList {
27949 #[inline]
27950 fn can_cast(kind: SyntaxKind) -> bool {
27951 kind == SyntaxKind::VARIANT_LIST
27952 }
27953 #[inline]
27954 fn cast(syntax: SyntaxNode) -> Option<Self> {
27955 if Self::can_cast(syntax.kind()) {
27956 Some(Self { syntax })
27957 } else {
27958 None
27959 }
27960 }
27961 #[inline]
27962 fn syntax(&self) -> &SyntaxNode {
27963 &self.syntax
27964 }
27965}
27966impl AstNode for VolatilityFuncOption {
27967 #[inline]
27968 fn can_cast(kind: SyntaxKind) -> bool {
27969 kind == SyntaxKind::VOLATILITY_FUNC_OPTION
27970 }
27971 #[inline]
27972 fn cast(syntax: SyntaxNode) -> Option<Self> {
27973 if Self::can_cast(syntax.kind()) {
27974 Some(Self { syntax })
27975 } else {
27976 None
27977 }
27978 }
27979 #[inline]
27980 fn syntax(&self) -> &SyntaxNode {
27981 &self.syntax
27982 }
27983}
27984impl AstNode for WhenClause {
27985 #[inline]
27986 fn can_cast(kind: SyntaxKind) -> bool {
27987 kind == SyntaxKind::WHEN_CLAUSE
27988 }
27989 #[inline]
27990 fn cast(syntax: SyntaxNode) -> Option<Self> {
27991 if Self::can_cast(syntax.kind()) {
27992 Some(Self { syntax })
27993 } else {
27994 None
27995 }
27996 }
27997 #[inline]
27998 fn syntax(&self) -> &SyntaxNode {
27999 &self.syntax
28000 }
28001}
28002impl AstNode for WhenClauseList {
28003 #[inline]
28004 fn can_cast(kind: SyntaxKind) -> bool {
28005 kind == SyntaxKind::WHEN_CLAUSE_LIST
28006 }
28007 #[inline]
28008 fn cast(syntax: SyntaxNode) -> Option<Self> {
28009 if Self::can_cast(syntax.kind()) {
28010 Some(Self { syntax })
28011 } else {
28012 None
28013 }
28014 }
28015 #[inline]
28016 fn syntax(&self) -> &SyntaxNode {
28017 &self.syntax
28018 }
28019}
28020impl AstNode for WhenCondition {
28021 #[inline]
28022 fn can_cast(kind: SyntaxKind) -> bool {
28023 kind == SyntaxKind::WHEN_CONDITION
28024 }
28025 #[inline]
28026 fn cast(syntax: SyntaxNode) -> Option<Self> {
28027 if Self::can_cast(syntax.kind()) {
28028 Some(Self { syntax })
28029 } else {
28030 None
28031 }
28032 }
28033 #[inline]
28034 fn syntax(&self) -> &SyntaxNode {
28035 &self.syntax
28036 }
28037}
28038impl AstNode for WhereClause {
28039 #[inline]
28040 fn can_cast(kind: SyntaxKind) -> bool {
28041 kind == SyntaxKind::WHERE_CLAUSE
28042 }
28043 #[inline]
28044 fn cast(syntax: SyntaxNode) -> Option<Self> {
28045 if Self::can_cast(syntax.kind()) {
28046 Some(Self { syntax })
28047 } else {
28048 None
28049 }
28050 }
28051 #[inline]
28052 fn syntax(&self) -> &SyntaxNode {
28053 &self.syntax
28054 }
28055}
28056impl AstNode for WhereConditionClause {
28057 #[inline]
28058 fn can_cast(kind: SyntaxKind) -> bool {
28059 kind == SyntaxKind::WHERE_CONDITION_CLAUSE
28060 }
28061 #[inline]
28062 fn cast(syntax: SyntaxNode) -> Option<Self> {
28063 if Self::can_cast(syntax.kind()) {
28064 Some(Self { syntax })
28065 } else {
28066 None
28067 }
28068 }
28069 #[inline]
28070 fn syntax(&self) -> &SyntaxNode {
28071 &self.syntax
28072 }
28073}
28074impl AstNode for WhereCurrentOf {
28075 #[inline]
28076 fn can_cast(kind: SyntaxKind) -> bool {
28077 kind == SyntaxKind::WHERE_CURRENT_OF
28078 }
28079 #[inline]
28080 fn cast(syntax: SyntaxNode) -> Option<Self> {
28081 if Self::can_cast(syntax.kind()) {
28082 Some(Self { syntax })
28083 } else {
28084 None
28085 }
28086 }
28087 #[inline]
28088 fn syntax(&self) -> &SyntaxNode {
28089 &self.syntax
28090 }
28091}
28092impl AstNode for WindowClause {
28093 #[inline]
28094 fn can_cast(kind: SyntaxKind) -> bool {
28095 kind == SyntaxKind::WINDOW_CLAUSE
28096 }
28097 #[inline]
28098 fn cast(syntax: SyntaxNode) -> Option<Self> {
28099 if Self::can_cast(syntax.kind()) {
28100 Some(Self { syntax })
28101 } else {
28102 None
28103 }
28104 }
28105 #[inline]
28106 fn syntax(&self) -> &SyntaxNode {
28107 &self.syntax
28108 }
28109}
28110impl AstNode for WindowDef {
28111 #[inline]
28112 fn can_cast(kind: SyntaxKind) -> bool {
28113 kind == SyntaxKind::WINDOW_DEF
28114 }
28115 #[inline]
28116 fn cast(syntax: SyntaxNode) -> Option<Self> {
28117 if Self::can_cast(syntax.kind()) {
28118 Some(Self { syntax })
28119 } else {
28120 None
28121 }
28122 }
28123 #[inline]
28124 fn syntax(&self) -> &SyntaxNode {
28125 &self.syntax
28126 }
28127}
28128impl AstNode for WindowFuncOption {
28129 #[inline]
28130 fn can_cast(kind: SyntaxKind) -> bool {
28131 kind == SyntaxKind::WINDOW_FUNC_OPTION
28132 }
28133 #[inline]
28134 fn cast(syntax: SyntaxNode) -> Option<Self> {
28135 if Self::can_cast(syntax.kind()) {
28136 Some(Self { syntax })
28137 } else {
28138 None
28139 }
28140 }
28141 #[inline]
28142 fn syntax(&self) -> &SyntaxNode {
28143 &self.syntax
28144 }
28145}
28146impl AstNode for WindowSpec {
28147 #[inline]
28148 fn can_cast(kind: SyntaxKind) -> bool {
28149 kind == SyntaxKind::WINDOW_SPEC
28150 }
28151 #[inline]
28152 fn cast(syntax: SyntaxNode) -> Option<Self> {
28153 if Self::can_cast(syntax.kind()) {
28154 Some(Self { syntax })
28155 } else {
28156 None
28157 }
28158 }
28159 #[inline]
28160 fn syntax(&self) -> &SyntaxNode {
28161 &self.syntax
28162 }
28163}
28164impl AstNode for WithCheckExprClause {
28165 #[inline]
28166 fn can_cast(kind: SyntaxKind) -> bool {
28167 kind == SyntaxKind::WITH_CHECK_EXPR_CLAUSE
28168 }
28169 #[inline]
28170 fn cast(syntax: SyntaxNode) -> Option<Self> {
28171 if Self::can_cast(syntax.kind()) {
28172 Some(Self { syntax })
28173 } else {
28174 None
28175 }
28176 }
28177 #[inline]
28178 fn syntax(&self) -> &SyntaxNode {
28179 &self.syntax
28180 }
28181}
28182impl AstNode for WithClause {
28183 #[inline]
28184 fn can_cast(kind: SyntaxKind) -> bool {
28185 kind == SyntaxKind::WITH_CLAUSE
28186 }
28187 #[inline]
28188 fn cast(syntax: SyntaxNode) -> Option<Self> {
28189 if Self::can_cast(syntax.kind()) {
28190 Some(Self { syntax })
28191 } else {
28192 None
28193 }
28194 }
28195 #[inline]
28196 fn syntax(&self) -> &SyntaxNode {
28197 &self.syntax
28198 }
28199}
28200impl AstNode for WithData {
28201 #[inline]
28202 fn can_cast(kind: SyntaxKind) -> bool {
28203 kind == SyntaxKind::WITH_DATA
28204 }
28205 #[inline]
28206 fn cast(syntax: SyntaxNode) -> Option<Self> {
28207 if Self::can_cast(syntax.kind()) {
28208 Some(Self { syntax })
28209 } else {
28210 None
28211 }
28212 }
28213 #[inline]
28214 fn syntax(&self) -> &SyntaxNode {
28215 &self.syntax
28216 }
28217}
28218impl AstNode for WithNoData {
28219 #[inline]
28220 fn can_cast(kind: SyntaxKind) -> bool {
28221 kind == SyntaxKind::WITH_NO_DATA
28222 }
28223 #[inline]
28224 fn cast(syntax: SyntaxNode) -> Option<Self> {
28225 if Self::can_cast(syntax.kind()) {
28226 Some(Self { syntax })
28227 } else {
28228 None
28229 }
28230 }
28231 #[inline]
28232 fn syntax(&self) -> &SyntaxNode {
28233 &self.syntax
28234 }
28235}
28236impl AstNode for WithOptions {
28237 #[inline]
28238 fn can_cast(kind: SyntaxKind) -> bool {
28239 kind == SyntaxKind::WITH_OPTIONS
28240 }
28241 #[inline]
28242 fn cast(syntax: SyntaxNode) -> Option<Self> {
28243 if Self::can_cast(syntax.kind()) {
28244 Some(Self { syntax })
28245 } else {
28246 None
28247 }
28248 }
28249 #[inline]
28250 fn syntax(&self) -> &SyntaxNode {
28251 &self.syntax
28252 }
28253}
28254impl AstNode for WithParams {
28255 #[inline]
28256 fn can_cast(kind: SyntaxKind) -> bool {
28257 kind == SyntaxKind::WITH_PARAMS
28258 }
28259 #[inline]
28260 fn cast(syntax: SyntaxNode) -> Option<Self> {
28261 if Self::can_cast(syntax.kind()) {
28262 Some(Self { syntax })
28263 } else {
28264 None
28265 }
28266 }
28267 #[inline]
28268 fn syntax(&self) -> &SyntaxNode {
28269 &self.syntax
28270 }
28271}
28272impl AstNode for WithTable {
28273 #[inline]
28274 fn can_cast(kind: SyntaxKind) -> bool {
28275 kind == SyntaxKind::WITH_TABLE
28276 }
28277 #[inline]
28278 fn cast(syntax: SyntaxNode) -> Option<Self> {
28279 if Self::can_cast(syntax.kind()) {
28280 Some(Self { syntax })
28281 } else {
28282 None
28283 }
28284 }
28285 #[inline]
28286 fn syntax(&self) -> &SyntaxNode {
28287 &self.syntax
28288 }
28289}
28290impl AstNode for WithTimezone {
28291 #[inline]
28292 fn can_cast(kind: SyntaxKind) -> bool {
28293 kind == SyntaxKind::WITH_TIMEZONE
28294 }
28295 #[inline]
28296 fn cast(syntax: SyntaxNode) -> Option<Self> {
28297 if Self::can_cast(syntax.kind()) {
28298 Some(Self { syntax })
28299 } else {
28300 None
28301 }
28302 }
28303 #[inline]
28304 fn syntax(&self) -> &SyntaxNode {
28305 &self.syntax
28306 }
28307}
28308impl AstNode for WithinClause {
28309 #[inline]
28310 fn can_cast(kind: SyntaxKind) -> bool {
28311 kind == SyntaxKind::WITHIN_CLAUSE
28312 }
28313 #[inline]
28314 fn cast(syntax: SyntaxNode) -> Option<Self> {
28315 if Self::can_cast(syntax.kind()) {
28316 Some(Self { syntax })
28317 } else {
28318 None
28319 }
28320 }
28321 #[inline]
28322 fn syntax(&self) -> &SyntaxNode {
28323 &self.syntax
28324 }
28325}
28326impl AstNode for WithoutOids {
28327 #[inline]
28328 fn can_cast(kind: SyntaxKind) -> bool {
28329 kind == SyntaxKind::WITHOUT_OIDS
28330 }
28331 #[inline]
28332 fn cast(syntax: SyntaxNode) -> Option<Self> {
28333 if Self::can_cast(syntax.kind()) {
28334 Some(Self { syntax })
28335 } else {
28336 None
28337 }
28338 }
28339 #[inline]
28340 fn syntax(&self) -> &SyntaxNode {
28341 &self.syntax
28342 }
28343}
28344impl AstNode for WithoutTimezone {
28345 #[inline]
28346 fn can_cast(kind: SyntaxKind) -> bool {
28347 kind == SyntaxKind::WITHOUT_TIMEZONE
28348 }
28349 #[inline]
28350 fn cast(syntax: SyntaxNode) -> Option<Self> {
28351 if Self::can_cast(syntax.kind()) {
28352 Some(Self { syntax })
28353 } else {
28354 None
28355 }
28356 }
28357 #[inline]
28358 fn syntax(&self) -> &SyntaxNode {
28359 &self.syntax
28360 }
28361}
28362impl AstNode for XmlAttributeList {
28363 #[inline]
28364 fn can_cast(kind: SyntaxKind) -> bool {
28365 kind == SyntaxKind::XML_ATTRIBUTE_LIST
28366 }
28367 #[inline]
28368 fn cast(syntax: SyntaxNode) -> Option<Self> {
28369 if Self::can_cast(syntax.kind()) {
28370 Some(Self { syntax })
28371 } else {
28372 None
28373 }
28374 }
28375 #[inline]
28376 fn syntax(&self) -> &SyntaxNode {
28377 &self.syntax
28378 }
28379}
28380impl AstNode for XmlColumnOption {
28381 #[inline]
28382 fn can_cast(kind: SyntaxKind) -> bool {
28383 kind == SyntaxKind::XML_COLUMN_OPTION
28384 }
28385 #[inline]
28386 fn cast(syntax: SyntaxNode) -> Option<Self> {
28387 if Self::can_cast(syntax.kind()) {
28388 Some(Self { syntax })
28389 } else {
28390 None
28391 }
28392 }
28393 #[inline]
28394 fn syntax(&self) -> &SyntaxNode {
28395 &self.syntax
28396 }
28397}
28398impl AstNode for XmlColumnOptionList {
28399 #[inline]
28400 fn can_cast(kind: SyntaxKind) -> bool {
28401 kind == SyntaxKind::XML_COLUMN_OPTION_LIST
28402 }
28403 #[inline]
28404 fn cast(syntax: SyntaxNode) -> Option<Self> {
28405 if Self::can_cast(syntax.kind()) {
28406 Some(Self { syntax })
28407 } else {
28408 None
28409 }
28410 }
28411 #[inline]
28412 fn syntax(&self) -> &SyntaxNode {
28413 &self.syntax
28414 }
28415}
28416impl AstNode for XmlElementFn {
28417 #[inline]
28418 fn can_cast(kind: SyntaxKind) -> bool {
28419 kind == SyntaxKind::XML_ELEMENT_FN
28420 }
28421 #[inline]
28422 fn cast(syntax: SyntaxNode) -> Option<Self> {
28423 if Self::can_cast(syntax.kind()) {
28424 Some(Self { syntax })
28425 } else {
28426 None
28427 }
28428 }
28429 #[inline]
28430 fn syntax(&self) -> &SyntaxNode {
28431 &self.syntax
28432 }
28433}
28434impl AstNode for XmlExistsFn {
28435 #[inline]
28436 fn can_cast(kind: SyntaxKind) -> bool {
28437 kind == SyntaxKind::XML_EXISTS_FN
28438 }
28439 #[inline]
28440 fn cast(syntax: SyntaxNode) -> Option<Self> {
28441 if Self::can_cast(syntax.kind()) {
28442 Some(Self { syntax })
28443 } else {
28444 None
28445 }
28446 }
28447 #[inline]
28448 fn syntax(&self) -> &SyntaxNode {
28449 &self.syntax
28450 }
28451}
28452impl AstNode for XmlForestFn {
28453 #[inline]
28454 fn can_cast(kind: SyntaxKind) -> bool {
28455 kind == SyntaxKind::XML_FOREST_FN
28456 }
28457 #[inline]
28458 fn cast(syntax: SyntaxNode) -> Option<Self> {
28459 if Self::can_cast(syntax.kind()) {
28460 Some(Self { syntax })
28461 } else {
28462 None
28463 }
28464 }
28465 #[inline]
28466 fn syntax(&self) -> &SyntaxNode {
28467 &self.syntax
28468 }
28469}
28470impl AstNode for XmlNamespace {
28471 #[inline]
28472 fn can_cast(kind: SyntaxKind) -> bool {
28473 kind == SyntaxKind::XML_NAMESPACE
28474 }
28475 #[inline]
28476 fn cast(syntax: SyntaxNode) -> Option<Self> {
28477 if Self::can_cast(syntax.kind()) {
28478 Some(Self { syntax })
28479 } else {
28480 None
28481 }
28482 }
28483 #[inline]
28484 fn syntax(&self) -> &SyntaxNode {
28485 &self.syntax
28486 }
28487}
28488impl AstNode for XmlNamespaceList {
28489 #[inline]
28490 fn can_cast(kind: SyntaxKind) -> bool {
28491 kind == SyntaxKind::XML_NAMESPACE_LIST
28492 }
28493 #[inline]
28494 fn cast(syntax: SyntaxNode) -> Option<Self> {
28495 if Self::can_cast(syntax.kind()) {
28496 Some(Self { syntax })
28497 } else {
28498 None
28499 }
28500 }
28501 #[inline]
28502 fn syntax(&self) -> &SyntaxNode {
28503 &self.syntax
28504 }
28505}
28506impl AstNode for XmlParseFn {
28507 #[inline]
28508 fn can_cast(kind: SyntaxKind) -> bool {
28509 kind == SyntaxKind::XML_PARSE_FN
28510 }
28511 #[inline]
28512 fn cast(syntax: SyntaxNode) -> Option<Self> {
28513 if Self::can_cast(syntax.kind()) {
28514 Some(Self { syntax })
28515 } else {
28516 None
28517 }
28518 }
28519 #[inline]
28520 fn syntax(&self) -> &SyntaxNode {
28521 &self.syntax
28522 }
28523}
28524impl AstNode for XmlPassingMech {
28525 #[inline]
28526 fn can_cast(kind: SyntaxKind) -> bool {
28527 kind == SyntaxKind::XML_PASSING_MECH
28528 }
28529 #[inline]
28530 fn cast(syntax: SyntaxNode) -> Option<Self> {
28531 if Self::can_cast(syntax.kind()) {
28532 Some(Self { syntax })
28533 } else {
28534 None
28535 }
28536 }
28537 #[inline]
28538 fn syntax(&self) -> &SyntaxNode {
28539 &self.syntax
28540 }
28541}
28542impl AstNode for XmlPiFn {
28543 #[inline]
28544 fn can_cast(kind: SyntaxKind) -> bool {
28545 kind == SyntaxKind::XML_PI_FN
28546 }
28547 #[inline]
28548 fn cast(syntax: SyntaxNode) -> Option<Self> {
28549 if Self::can_cast(syntax.kind()) {
28550 Some(Self { syntax })
28551 } else {
28552 None
28553 }
28554 }
28555 #[inline]
28556 fn syntax(&self) -> &SyntaxNode {
28557 &self.syntax
28558 }
28559}
28560impl AstNode for XmlRootFn {
28561 #[inline]
28562 fn can_cast(kind: SyntaxKind) -> bool {
28563 kind == SyntaxKind::XML_ROOT_FN
28564 }
28565 #[inline]
28566 fn cast(syntax: SyntaxNode) -> Option<Self> {
28567 if Self::can_cast(syntax.kind()) {
28568 Some(Self { syntax })
28569 } else {
28570 None
28571 }
28572 }
28573 #[inline]
28574 fn syntax(&self) -> &SyntaxNode {
28575 &self.syntax
28576 }
28577}
28578impl AstNode for XmlRowPassingClause {
28579 #[inline]
28580 fn can_cast(kind: SyntaxKind) -> bool {
28581 kind == SyntaxKind::XML_ROW_PASSING_CLAUSE
28582 }
28583 #[inline]
28584 fn cast(syntax: SyntaxNode) -> Option<Self> {
28585 if Self::can_cast(syntax.kind()) {
28586 Some(Self { syntax })
28587 } else {
28588 None
28589 }
28590 }
28591 #[inline]
28592 fn syntax(&self) -> &SyntaxNode {
28593 &self.syntax
28594 }
28595}
28596impl AstNode for XmlSerializeFn {
28597 #[inline]
28598 fn can_cast(kind: SyntaxKind) -> bool {
28599 kind == SyntaxKind::XML_SERIALIZE_FN
28600 }
28601 #[inline]
28602 fn cast(syntax: SyntaxNode) -> Option<Self> {
28603 if Self::can_cast(syntax.kind()) {
28604 Some(Self { syntax })
28605 } else {
28606 None
28607 }
28608 }
28609 #[inline]
28610 fn syntax(&self) -> &SyntaxNode {
28611 &self.syntax
28612 }
28613}
28614impl AstNode for XmlTable {
28615 #[inline]
28616 fn can_cast(kind: SyntaxKind) -> bool {
28617 kind == SyntaxKind::XML_TABLE
28618 }
28619 #[inline]
28620 fn cast(syntax: SyntaxNode) -> Option<Self> {
28621 if Self::can_cast(syntax.kind()) {
28622 Some(Self { syntax })
28623 } else {
28624 None
28625 }
28626 }
28627 #[inline]
28628 fn syntax(&self) -> &SyntaxNode {
28629 &self.syntax
28630 }
28631}
28632impl AstNode for XmlTableColumn {
28633 #[inline]
28634 fn can_cast(kind: SyntaxKind) -> bool {
28635 kind == SyntaxKind::XML_TABLE_COLUMN
28636 }
28637 #[inline]
28638 fn cast(syntax: SyntaxNode) -> Option<Self> {
28639 if Self::can_cast(syntax.kind()) {
28640 Some(Self { syntax })
28641 } else {
28642 None
28643 }
28644 }
28645 #[inline]
28646 fn syntax(&self) -> &SyntaxNode {
28647 &self.syntax
28648 }
28649}
28650impl AstNode for XmlTableColumnList {
28651 #[inline]
28652 fn can_cast(kind: SyntaxKind) -> bool {
28653 kind == SyntaxKind::XML_TABLE_COLUMN_LIST
28654 }
28655 #[inline]
28656 fn cast(syntax: SyntaxNode) -> Option<Self> {
28657 if Self::can_cast(syntax.kind()) {
28658 Some(Self { syntax })
28659 } else {
28660 None
28661 }
28662 }
28663 #[inline]
28664 fn syntax(&self) -> &SyntaxNode {
28665 &self.syntax
28666 }
28667}
28668impl AstNode for AlterColumnOption {
28669 #[inline]
28670 fn can_cast(kind: SyntaxKind) -> bool {
28671 matches!(
28672 kind,
28673 SyntaxKind::ADD_GENERATED
28674 | SyntaxKind::DROP_DEFAULT
28675 | SyntaxKind::DROP_EXPRESSION
28676 | SyntaxKind::DROP_IDENTITY
28677 | SyntaxKind::DROP_NOT_NULL
28678 | SyntaxKind::INHERIT
28679 | SyntaxKind::NO_INHERIT
28680 | SyntaxKind::RESET_OPTIONS
28681 | SyntaxKind::RESTART
28682 | SyntaxKind::SET_COMPRESSION
28683 | SyntaxKind::SET_DEFAULT
28684 | SyntaxKind::SET_EXPRESSION
28685 | SyntaxKind::SET_GENERATED
28686 | SyntaxKind::SET_GENERATED_OPTIONS
28687 | SyntaxKind::SET_NOT_NULL
28688 | SyntaxKind::SET_OPTIONS
28689 | SyntaxKind::SET_OPTIONS_LIST
28690 | SyntaxKind::SET_SEQUENCE_OPTION
28691 | SyntaxKind::SET_STATISTICS
28692 | SyntaxKind::SET_STORAGE
28693 | SyntaxKind::SET_TYPE
28694 )
28695 }
28696 #[inline]
28697 fn cast(syntax: SyntaxNode) -> Option<Self> {
28698 let res = match syntax.kind() {
28699 SyntaxKind::ADD_GENERATED => AlterColumnOption::AddGenerated(AddGenerated { syntax }),
28700 SyntaxKind::DROP_DEFAULT => AlterColumnOption::DropDefault(DropDefault { syntax }),
28701 SyntaxKind::DROP_EXPRESSION => {
28702 AlterColumnOption::DropExpression(DropExpression { syntax })
28703 }
28704 SyntaxKind::DROP_IDENTITY => AlterColumnOption::DropIdentity(DropIdentity { syntax }),
28705 SyntaxKind::DROP_NOT_NULL => AlterColumnOption::DropNotNull(DropNotNull { syntax }),
28706 SyntaxKind::INHERIT => AlterColumnOption::Inherit(Inherit { syntax }),
28707 SyntaxKind::NO_INHERIT => AlterColumnOption::NoInherit(NoInherit { syntax }),
28708 SyntaxKind::RESET_OPTIONS => AlterColumnOption::ResetOptions(ResetOptions { syntax }),
28709 SyntaxKind::RESTART => AlterColumnOption::Restart(Restart { syntax }),
28710 SyntaxKind::SET_COMPRESSION => {
28711 AlterColumnOption::SetCompression(SetCompression { syntax })
28712 }
28713 SyntaxKind::SET_DEFAULT => AlterColumnOption::SetDefault(SetDefault { syntax }),
28714 SyntaxKind::SET_EXPRESSION => {
28715 AlterColumnOption::SetExpression(SetExpression { syntax })
28716 }
28717 SyntaxKind::SET_GENERATED => AlterColumnOption::SetGenerated(SetGenerated { syntax }),
28718 SyntaxKind::SET_GENERATED_OPTIONS => {
28719 AlterColumnOption::SetGeneratedOptions(SetGeneratedOptions { syntax })
28720 }
28721 SyntaxKind::SET_NOT_NULL => AlterColumnOption::SetNotNull(SetNotNull { syntax }),
28722 SyntaxKind::SET_OPTIONS => AlterColumnOption::SetOptions(SetOptions { syntax }),
28723 SyntaxKind::SET_OPTIONS_LIST => {
28724 AlterColumnOption::SetOptionsList(SetOptionsList { syntax })
28725 }
28726 SyntaxKind::SET_SEQUENCE_OPTION => {
28727 AlterColumnOption::SetSequenceOption(SetSequenceOption { syntax })
28728 }
28729 SyntaxKind::SET_STATISTICS => {
28730 AlterColumnOption::SetStatistics(SetStatistics { syntax })
28731 }
28732 SyntaxKind::SET_STORAGE => AlterColumnOption::SetStorage(SetStorage { syntax }),
28733 SyntaxKind::SET_TYPE => AlterColumnOption::SetType(SetType { syntax }),
28734 _ => {
28735 return None;
28736 }
28737 };
28738 Some(res)
28739 }
28740 #[inline]
28741 fn syntax(&self) -> &SyntaxNode {
28742 match self {
28743 AlterColumnOption::AddGenerated(it) => &it.syntax,
28744 AlterColumnOption::DropDefault(it) => &it.syntax,
28745 AlterColumnOption::DropExpression(it) => &it.syntax,
28746 AlterColumnOption::DropIdentity(it) => &it.syntax,
28747 AlterColumnOption::DropNotNull(it) => &it.syntax,
28748 AlterColumnOption::Inherit(it) => &it.syntax,
28749 AlterColumnOption::NoInherit(it) => &it.syntax,
28750 AlterColumnOption::ResetOptions(it) => &it.syntax,
28751 AlterColumnOption::Restart(it) => &it.syntax,
28752 AlterColumnOption::SetCompression(it) => &it.syntax,
28753 AlterColumnOption::SetDefault(it) => &it.syntax,
28754 AlterColumnOption::SetExpression(it) => &it.syntax,
28755 AlterColumnOption::SetGenerated(it) => &it.syntax,
28756 AlterColumnOption::SetGeneratedOptions(it) => &it.syntax,
28757 AlterColumnOption::SetNotNull(it) => &it.syntax,
28758 AlterColumnOption::SetOptions(it) => &it.syntax,
28759 AlterColumnOption::SetOptionsList(it) => &it.syntax,
28760 AlterColumnOption::SetSequenceOption(it) => &it.syntax,
28761 AlterColumnOption::SetStatistics(it) => &it.syntax,
28762 AlterColumnOption::SetStorage(it) => &it.syntax,
28763 AlterColumnOption::SetType(it) => &it.syntax,
28764 }
28765 }
28766}
28767impl From<AddGenerated> for AlterColumnOption {
28768 #[inline]
28769 fn from(node: AddGenerated) -> AlterColumnOption {
28770 AlterColumnOption::AddGenerated(node)
28771 }
28772}
28773impl From<DropDefault> for AlterColumnOption {
28774 #[inline]
28775 fn from(node: DropDefault) -> AlterColumnOption {
28776 AlterColumnOption::DropDefault(node)
28777 }
28778}
28779impl From<DropExpression> for AlterColumnOption {
28780 #[inline]
28781 fn from(node: DropExpression) -> AlterColumnOption {
28782 AlterColumnOption::DropExpression(node)
28783 }
28784}
28785impl From<DropIdentity> for AlterColumnOption {
28786 #[inline]
28787 fn from(node: DropIdentity) -> AlterColumnOption {
28788 AlterColumnOption::DropIdentity(node)
28789 }
28790}
28791impl From<DropNotNull> for AlterColumnOption {
28792 #[inline]
28793 fn from(node: DropNotNull) -> AlterColumnOption {
28794 AlterColumnOption::DropNotNull(node)
28795 }
28796}
28797impl From<Inherit> for AlterColumnOption {
28798 #[inline]
28799 fn from(node: Inherit) -> AlterColumnOption {
28800 AlterColumnOption::Inherit(node)
28801 }
28802}
28803impl From<NoInherit> for AlterColumnOption {
28804 #[inline]
28805 fn from(node: NoInherit) -> AlterColumnOption {
28806 AlterColumnOption::NoInherit(node)
28807 }
28808}
28809impl From<ResetOptions> for AlterColumnOption {
28810 #[inline]
28811 fn from(node: ResetOptions) -> AlterColumnOption {
28812 AlterColumnOption::ResetOptions(node)
28813 }
28814}
28815impl From<Restart> for AlterColumnOption {
28816 #[inline]
28817 fn from(node: Restart) -> AlterColumnOption {
28818 AlterColumnOption::Restart(node)
28819 }
28820}
28821impl From<SetCompression> for AlterColumnOption {
28822 #[inline]
28823 fn from(node: SetCompression) -> AlterColumnOption {
28824 AlterColumnOption::SetCompression(node)
28825 }
28826}
28827impl From<SetDefault> for AlterColumnOption {
28828 #[inline]
28829 fn from(node: SetDefault) -> AlterColumnOption {
28830 AlterColumnOption::SetDefault(node)
28831 }
28832}
28833impl From<SetExpression> for AlterColumnOption {
28834 #[inline]
28835 fn from(node: SetExpression) -> AlterColumnOption {
28836 AlterColumnOption::SetExpression(node)
28837 }
28838}
28839impl From<SetGenerated> for AlterColumnOption {
28840 #[inline]
28841 fn from(node: SetGenerated) -> AlterColumnOption {
28842 AlterColumnOption::SetGenerated(node)
28843 }
28844}
28845impl From<SetGeneratedOptions> for AlterColumnOption {
28846 #[inline]
28847 fn from(node: SetGeneratedOptions) -> AlterColumnOption {
28848 AlterColumnOption::SetGeneratedOptions(node)
28849 }
28850}
28851impl From<SetNotNull> for AlterColumnOption {
28852 #[inline]
28853 fn from(node: SetNotNull) -> AlterColumnOption {
28854 AlterColumnOption::SetNotNull(node)
28855 }
28856}
28857impl From<SetOptions> for AlterColumnOption {
28858 #[inline]
28859 fn from(node: SetOptions) -> AlterColumnOption {
28860 AlterColumnOption::SetOptions(node)
28861 }
28862}
28863impl From<SetOptionsList> for AlterColumnOption {
28864 #[inline]
28865 fn from(node: SetOptionsList) -> AlterColumnOption {
28866 AlterColumnOption::SetOptionsList(node)
28867 }
28868}
28869impl From<SetSequenceOption> for AlterColumnOption {
28870 #[inline]
28871 fn from(node: SetSequenceOption) -> AlterColumnOption {
28872 AlterColumnOption::SetSequenceOption(node)
28873 }
28874}
28875impl From<SetStatistics> for AlterColumnOption {
28876 #[inline]
28877 fn from(node: SetStatistics) -> AlterColumnOption {
28878 AlterColumnOption::SetStatistics(node)
28879 }
28880}
28881impl From<SetStorage> for AlterColumnOption {
28882 #[inline]
28883 fn from(node: SetStorage) -> AlterColumnOption {
28884 AlterColumnOption::SetStorage(node)
28885 }
28886}
28887impl From<SetType> for AlterColumnOption {
28888 #[inline]
28889 fn from(node: SetType) -> AlterColumnOption {
28890 AlterColumnOption::SetType(node)
28891 }
28892}
28893impl AstNode for AlterDomainAction {
28894 #[inline]
28895 fn can_cast(kind: SyntaxKind) -> bool {
28896 matches!(
28897 kind,
28898 SyntaxKind::ADD_CONSTRAINT
28899 | SyntaxKind::DROP_CONSTRAINT
28900 | SyntaxKind::DROP_DEFAULT
28901 | SyntaxKind::DROP_NOT_NULL
28902 | SyntaxKind::OWNER_TO
28903 | SyntaxKind::RENAME_CONSTRAINT
28904 | SyntaxKind::RENAME_TO
28905 | SyntaxKind::SET_DEFAULT
28906 | SyntaxKind::SET_NOT_NULL
28907 | SyntaxKind::SET_SCHEMA
28908 | SyntaxKind::VALIDATE_CONSTRAINT
28909 )
28910 }
28911 #[inline]
28912 fn cast(syntax: SyntaxNode) -> Option<Self> {
28913 let res = match syntax.kind() {
28914 SyntaxKind::ADD_CONSTRAINT => {
28915 AlterDomainAction::AddConstraint(AddConstraint { syntax })
28916 }
28917 SyntaxKind::DROP_CONSTRAINT => {
28918 AlterDomainAction::DropConstraint(DropConstraint { syntax })
28919 }
28920 SyntaxKind::DROP_DEFAULT => AlterDomainAction::DropDefault(DropDefault { syntax }),
28921 SyntaxKind::DROP_NOT_NULL => AlterDomainAction::DropNotNull(DropNotNull { syntax }),
28922 SyntaxKind::OWNER_TO => AlterDomainAction::OwnerTo(OwnerTo { syntax }),
28923 SyntaxKind::RENAME_CONSTRAINT => {
28924 AlterDomainAction::RenameConstraint(RenameConstraint { syntax })
28925 }
28926 SyntaxKind::RENAME_TO => AlterDomainAction::RenameTo(RenameTo { syntax }),
28927 SyntaxKind::SET_DEFAULT => AlterDomainAction::SetDefault(SetDefault { syntax }),
28928 SyntaxKind::SET_NOT_NULL => AlterDomainAction::SetNotNull(SetNotNull { syntax }),
28929 SyntaxKind::SET_SCHEMA => AlterDomainAction::SetSchema(SetSchema { syntax }),
28930 SyntaxKind::VALIDATE_CONSTRAINT => {
28931 AlterDomainAction::ValidateConstraint(ValidateConstraint { syntax })
28932 }
28933 _ => {
28934 return None;
28935 }
28936 };
28937 Some(res)
28938 }
28939 #[inline]
28940 fn syntax(&self) -> &SyntaxNode {
28941 match self {
28942 AlterDomainAction::AddConstraint(it) => &it.syntax,
28943 AlterDomainAction::DropConstraint(it) => &it.syntax,
28944 AlterDomainAction::DropDefault(it) => &it.syntax,
28945 AlterDomainAction::DropNotNull(it) => &it.syntax,
28946 AlterDomainAction::OwnerTo(it) => &it.syntax,
28947 AlterDomainAction::RenameConstraint(it) => &it.syntax,
28948 AlterDomainAction::RenameTo(it) => &it.syntax,
28949 AlterDomainAction::SetDefault(it) => &it.syntax,
28950 AlterDomainAction::SetNotNull(it) => &it.syntax,
28951 AlterDomainAction::SetSchema(it) => &it.syntax,
28952 AlterDomainAction::ValidateConstraint(it) => &it.syntax,
28953 }
28954 }
28955}
28956impl From<AddConstraint> for AlterDomainAction {
28957 #[inline]
28958 fn from(node: AddConstraint) -> AlterDomainAction {
28959 AlterDomainAction::AddConstraint(node)
28960 }
28961}
28962impl From<DropConstraint> for AlterDomainAction {
28963 #[inline]
28964 fn from(node: DropConstraint) -> AlterDomainAction {
28965 AlterDomainAction::DropConstraint(node)
28966 }
28967}
28968impl From<DropDefault> for AlterDomainAction {
28969 #[inline]
28970 fn from(node: DropDefault) -> AlterDomainAction {
28971 AlterDomainAction::DropDefault(node)
28972 }
28973}
28974impl From<DropNotNull> for AlterDomainAction {
28975 #[inline]
28976 fn from(node: DropNotNull) -> AlterDomainAction {
28977 AlterDomainAction::DropNotNull(node)
28978 }
28979}
28980impl From<OwnerTo> for AlterDomainAction {
28981 #[inline]
28982 fn from(node: OwnerTo) -> AlterDomainAction {
28983 AlterDomainAction::OwnerTo(node)
28984 }
28985}
28986impl From<RenameConstraint> for AlterDomainAction {
28987 #[inline]
28988 fn from(node: RenameConstraint) -> AlterDomainAction {
28989 AlterDomainAction::RenameConstraint(node)
28990 }
28991}
28992impl From<RenameTo> for AlterDomainAction {
28993 #[inline]
28994 fn from(node: RenameTo) -> AlterDomainAction {
28995 AlterDomainAction::RenameTo(node)
28996 }
28997}
28998impl From<SetDefault> for AlterDomainAction {
28999 #[inline]
29000 fn from(node: SetDefault) -> AlterDomainAction {
29001 AlterDomainAction::SetDefault(node)
29002 }
29003}
29004impl From<SetNotNull> for AlterDomainAction {
29005 #[inline]
29006 fn from(node: SetNotNull) -> AlterDomainAction {
29007 AlterDomainAction::SetNotNull(node)
29008 }
29009}
29010impl From<SetSchema> for AlterDomainAction {
29011 #[inline]
29012 fn from(node: SetSchema) -> AlterDomainAction {
29013 AlterDomainAction::SetSchema(node)
29014 }
29015}
29016impl From<ValidateConstraint> for AlterDomainAction {
29017 #[inline]
29018 fn from(node: ValidateConstraint) -> AlterDomainAction {
29019 AlterDomainAction::ValidateConstraint(node)
29020 }
29021}
29022impl AstNode for AlterIndexAction {
29023 #[inline]
29024 fn can_cast(kind: SyntaxKind) -> bool {
29025 matches!(
29026 kind,
29027 SyntaxKind::ALTER_SET_STATISTICS
29028 | SyntaxKind::ATTACH_PARTITION
29029 | SyntaxKind::DEPENDS_ON_EXTENSION
29030 | SyntaxKind::NO_DEPENDS_ON_EXTENSION
29031 | SyntaxKind::RENAME_TO
29032 | SyntaxKind::RESET_OPTIONS
29033 | SyntaxKind::SET_OPTIONS
29034 | SyntaxKind::SET_TABLESPACE
29035 )
29036 }
29037 #[inline]
29038 fn cast(syntax: SyntaxNode) -> Option<Self> {
29039 let res = match syntax.kind() {
29040 SyntaxKind::ALTER_SET_STATISTICS => {
29041 AlterIndexAction::AlterSetStatistics(AlterSetStatistics { syntax })
29042 }
29043 SyntaxKind::ATTACH_PARTITION => {
29044 AlterIndexAction::AttachPartition(AttachPartition { syntax })
29045 }
29046 SyntaxKind::DEPENDS_ON_EXTENSION => {
29047 AlterIndexAction::DependsOnExtension(DependsOnExtension { syntax })
29048 }
29049 SyntaxKind::NO_DEPENDS_ON_EXTENSION => {
29050 AlterIndexAction::NoDependsOnExtension(NoDependsOnExtension { syntax })
29051 }
29052 SyntaxKind::RENAME_TO => AlterIndexAction::RenameTo(RenameTo { syntax }),
29053 SyntaxKind::RESET_OPTIONS => AlterIndexAction::ResetOptions(ResetOptions { syntax }),
29054 SyntaxKind::SET_OPTIONS => AlterIndexAction::SetOptions(SetOptions { syntax }),
29055 SyntaxKind::SET_TABLESPACE => AlterIndexAction::SetTablespace(SetTablespace { syntax }),
29056 _ => {
29057 return None;
29058 }
29059 };
29060 Some(res)
29061 }
29062 #[inline]
29063 fn syntax(&self) -> &SyntaxNode {
29064 match self {
29065 AlterIndexAction::AlterSetStatistics(it) => &it.syntax,
29066 AlterIndexAction::AttachPartition(it) => &it.syntax,
29067 AlterIndexAction::DependsOnExtension(it) => &it.syntax,
29068 AlterIndexAction::NoDependsOnExtension(it) => &it.syntax,
29069 AlterIndexAction::RenameTo(it) => &it.syntax,
29070 AlterIndexAction::ResetOptions(it) => &it.syntax,
29071 AlterIndexAction::SetOptions(it) => &it.syntax,
29072 AlterIndexAction::SetTablespace(it) => &it.syntax,
29073 }
29074 }
29075}
29076impl From<AlterSetStatistics> for AlterIndexAction {
29077 #[inline]
29078 fn from(node: AlterSetStatistics) -> AlterIndexAction {
29079 AlterIndexAction::AlterSetStatistics(node)
29080 }
29081}
29082impl From<AttachPartition> for AlterIndexAction {
29083 #[inline]
29084 fn from(node: AttachPartition) -> AlterIndexAction {
29085 AlterIndexAction::AttachPartition(node)
29086 }
29087}
29088impl From<DependsOnExtension> for AlterIndexAction {
29089 #[inline]
29090 fn from(node: DependsOnExtension) -> AlterIndexAction {
29091 AlterIndexAction::DependsOnExtension(node)
29092 }
29093}
29094impl From<NoDependsOnExtension> for AlterIndexAction {
29095 #[inline]
29096 fn from(node: NoDependsOnExtension) -> AlterIndexAction {
29097 AlterIndexAction::NoDependsOnExtension(node)
29098 }
29099}
29100impl From<RenameTo> for AlterIndexAction {
29101 #[inline]
29102 fn from(node: RenameTo) -> AlterIndexAction {
29103 AlterIndexAction::RenameTo(node)
29104 }
29105}
29106impl From<ResetOptions> for AlterIndexAction {
29107 #[inline]
29108 fn from(node: ResetOptions) -> AlterIndexAction {
29109 AlterIndexAction::ResetOptions(node)
29110 }
29111}
29112impl From<SetOptions> for AlterIndexAction {
29113 #[inline]
29114 fn from(node: SetOptions) -> AlterIndexAction {
29115 AlterIndexAction::SetOptions(node)
29116 }
29117}
29118impl From<SetTablespace> for AlterIndexAction {
29119 #[inline]
29120 fn from(node: SetTablespace) -> AlterIndexAction {
29121 AlterIndexAction::SetTablespace(node)
29122 }
29123}
29124impl AstNode for AlterMaterializedViewAction {
29125 #[inline]
29126 fn can_cast(kind: SyntaxKind) -> bool {
29127 matches!(
29128 kind,
29129 SyntaxKind::DEPENDS_ON_EXTENSION
29130 | SyntaxKind::NO_DEPENDS_ON_EXTENSION
29131 | SyntaxKind::RENAME_COLUMN
29132 | SyntaxKind::RENAME_TO
29133 | SyntaxKind::SET_SCHEMA
29134 )
29135 }
29136 #[inline]
29137 fn cast(syntax: SyntaxNode) -> Option<Self> {
29138 let res = match syntax.kind() {
29139 SyntaxKind::DEPENDS_ON_EXTENSION => {
29140 AlterMaterializedViewAction::DependsOnExtension(DependsOnExtension { syntax })
29141 }
29142 SyntaxKind::NO_DEPENDS_ON_EXTENSION => {
29143 AlterMaterializedViewAction::NoDependsOnExtension(NoDependsOnExtension { syntax })
29144 }
29145 SyntaxKind::RENAME_COLUMN => {
29146 AlterMaterializedViewAction::RenameColumn(RenameColumn { syntax })
29147 }
29148 SyntaxKind::RENAME_TO => AlterMaterializedViewAction::RenameTo(RenameTo { syntax }),
29149 SyntaxKind::SET_SCHEMA => AlterMaterializedViewAction::SetSchema(SetSchema { syntax }),
29150 _ => {
29151 if let Some(result) = AlterTableAction::cast(syntax) {
29152 return Some(AlterMaterializedViewAction::AlterTableAction(result));
29153 }
29154 return None;
29155 }
29156 };
29157 Some(res)
29158 }
29159 #[inline]
29160 fn syntax(&self) -> &SyntaxNode {
29161 match self {
29162 AlterMaterializedViewAction::DependsOnExtension(it) => &it.syntax,
29163 AlterMaterializedViewAction::NoDependsOnExtension(it) => &it.syntax,
29164 AlterMaterializedViewAction::RenameColumn(it) => &it.syntax,
29165 AlterMaterializedViewAction::RenameTo(it) => &it.syntax,
29166 AlterMaterializedViewAction::SetSchema(it) => &it.syntax,
29167 AlterMaterializedViewAction::AlterTableAction(it) => it.syntax(),
29168 }
29169 }
29170}
29171impl From<DependsOnExtension> for AlterMaterializedViewAction {
29172 #[inline]
29173 fn from(node: DependsOnExtension) -> AlterMaterializedViewAction {
29174 AlterMaterializedViewAction::DependsOnExtension(node)
29175 }
29176}
29177impl From<NoDependsOnExtension> for AlterMaterializedViewAction {
29178 #[inline]
29179 fn from(node: NoDependsOnExtension) -> AlterMaterializedViewAction {
29180 AlterMaterializedViewAction::NoDependsOnExtension(node)
29181 }
29182}
29183impl From<RenameColumn> for AlterMaterializedViewAction {
29184 #[inline]
29185 fn from(node: RenameColumn) -> AlterMaterializedViewAction {
29186 AlterMaterializedViewAction::RenameColumn(node)
29187 }
29188}
29189impl From<RenameTo> for AlterMaterializedViewAction {
29190 #[inline]
29191 fn from(node: RenameTo) -> AlterMaterializedViewAction {
29192 AlterMaterializedViewAction::RenameTo(node)
29193 }
29194}
29195impl From<SetSchema> for AlterMaterializedViewAction {
29196 #[inline]
29197 fn from(node: SetSchema) -> AlterMaterializedViewAction {
29198 AlterMaterializedViewAction::SetSchema(node)
29199 }
29200}
29201impl AstNode for AlterTableAction {
29202 #[inline]
29203 fn can_cast(kind: SyntaxKind) -> bool {
29204 matches!(
29205 kind,
29206 SyntaxKind::ADD_COLUMN
29207 | SyntaxKind::ADD_CONSTRAINT
29208 | SyntaxKind::ALTER_COLUMN
29209 | SyntaxKind::ALTER_CONSTRAINT
29210 | SyntaxKind::ATTACH_PARTITION
29211 | SyntaxKind::CLUSTER_ON
29212 | SyntaxKind::DETACH_PARTITION
29213 | SyntaxKind::DISABLE_RLS
29214 | SyntaxKind::DISABLE_RULE
29215 | SyntaxKind::DISABLE_TRIGGER
29216 | SyntaxKind::DROP_COLUMN
29217 | SyntaxKind::DROP_CONSTRAINT
29218 | SyntaxKind::ENABLE_ALWAYS_RULE
29219 | SyntaxKind::ENABLE_ALWAYS_TRIGGER
29220 | SyntaxKind::ENABLE_REPLICA_RULE
29221 | SyntaxKind::ENABLE_REPLICA_TRIGGER
29222 | SyntaxKind::ENABLE_RLS
29223 | SyntaxKind::ENABLE_RULE
29224 | SyntaxKind::ENABLE_TRIGGER
29225 | SyntaxKind::FORCE_RLS
29226 | SyntaxKind::INHERIT_TABLE
29227 | SyntaxKind::MERGE_PARTITIONS
29228 | SyntaxKind::NO_FORCE_RLS
29229 | SyntaxKind::NO_INHERIT_TABLE
29230 | SyntaxKind::NOT_OF
29231 | SyntaxKind::OF_TYPE
29232 | SyntaxKind::OPTION_ITEM_LIST
29233 | SyntaxKind::OWNER_TO
29234 | SyntaxKind::RENAME_COLUMN
29235 | SyntaxKind::RENAME_CONSTRAINT
29236 | SyntaxKind::RENAME_TO
29237 | SyntaxKind::REPLICA_IDENTITY
29238 | SyntaxKind::RESET_OPTIONS
29239 | SyntaxKind::SET_ACCESS_METHOD
29240 | SyntaxKind::SET_LOGGED
29241 | SyntaxKind::SET_OPTIONS
29242 | SyntaxKind::SET_SCHEMA
29243 | SyntaxKind::SET_TABLESPACE
29244 | SyntaxKind::SET_UNLOGGED
29245 | SyntaxKind::SET_WITHOUT_CLUSTER
29246 | SyntaxKind::SET_WITHOUT_OIDS
29247 | SyntaxKind::SPLIT_PARTITION
29248 | SyntaxKind::VALIDATE_CONSTRAINT
29249 )
29250 }
29251 #[inline]
29252 fn cast(syntax: SyntaxNode) -> Option<Self> {
29253 let res = match syntax.kind() {
29254 SyntaxKind::ADD_COLUMN => AlterTableAction::AddColumn(AddColumn { syntax }),
29255 SyntaxKind::ADD_CONSTRAINT => AlterTableAction::AddConstraint(AddConstraint { syntax }),
29256 SyntaxKind::ALTER_COLUMN => AlterTableAction::AlterColumn(AlterColumn { syntax }),
29257 SyntaxKind::ALTER_CONSTRAINT => {
29258 AlterTableAction::AlterConstraint(AlterConstraint { syntax })
29259 }
29260 SyntaxKind::ATTACH_PARTITION => {
29261 AlterTableAction::AttachPartition(AttachPartition { syntax })
29262 }
29263 SyntaxKind::CLUSTER_ON => AlterTableAction::ClusterOn(ClusterOn { syntax }),
29264 SyntaxKind::DETACH_PARTITION => {
29265 AlterTableAction::DetachPartition(DetachPartition { syntax })
29266 }
29267 SyntaxKind::DISABLE_RLS => AlterTableAction::DisableRls(DisableRls { syntax }),
29268 SyntaxKind::DISABLE_RULE => AlterTableAction::DisableRule(DisableRule { syntax }),
29269 SyntaxKind::DISABLE_TRIGGER => {
29270 AlterTableAction::DisableTrigger(DisableTrigger { syntax })
29271 }
29272 SyntaxKind::DROP_COLUMN => AlterTableAction::DropColumn(DropColumn { syntax }),
29273 SyntaxKind::DROP_CONSTRAINT => {
29274 AlterTableAction::DropConstraint(DropConstraint { syntax })
29275 }
29276 SyntaxKind::ENABLE_ALWAYS_RULE => {
29277 AlterTableAction::EnableAlwaysRule(EnableAlwaysRule { syntax })
29278 }
29279 SyntaxKind::ENABLE_ALWAYS_TRIGGER => {
29280 AlterTableAction::EnableAlwaysTrigger(EnableAlwaysTrigger { syntax })
29281 }
29282 SyntaxKind::ENABLE_REPLICA_RULE => {
29283 AlterTableAction::EnableReplicaRule(EnableReplicaRule { syntax })
29284 }
29285 SyntaxKind::ENABLE_REPLICA_TRIGGER => {
29286 AlterTableAction::EnableReplicaTrigger(EnableReplicaTrigger { syntax })
29287 }
29288 SyntaxKind::ENABLE_RLS => AlterTableAction::EnableRls(EnableRls { syntax }),
29289 SyntaxKind::ENABLE_RULE => AlterTableAction::EnableRule(EnableRule { syntax }),
29290 SyntaxKind::ENABLE_TRIGGER => AlterTableAction::EnableTrigger(EnableTrigger { syntax }),
29291 SyntaxKind::FORCE_RLS => AlterTableAction::ForceRls(ForceRls { syntax }),
29292 SyntaxKind::INHERIT_TABLE => AlterTableAction::InheritTable(InheritTable { syntax }),
29293 SyntaxKind::MERGE_PARTITIONS => {
29294 AlterTableAction::MergePartitions(MergePartitions { syntax })
29295 }
29296 SyntaxKind::NO_FORCE_RLS => AlterTableAction::NoForceRls(NoForceRls { syntax }),
29297 SyntaxKind::NO_INHERIT_TABLE => {
29298 AlterTableAction::NoInheritTable(NoInheritTable { syntax })
29299 }
29300 SyntaxKind::NOT_OF => AlterTableAction::NotOf(NotOf { syntax }),
29301 SyntaxKind::OF_TYPE => AlterTableAction::OfType(OfType { syntax }),
29302 SyntaxKind::OPTION_ITEM_LIST => {
29303 AlterTableAction::OptionItemList(OptionItemList { syntax })
29304 }
29305 SyntaxKind::OWNER_TO => AlterTableAction::OwnerTo(OwnerTo { syntax }),
29306 SyntaxKind::RENAME_COLUMN => AlterTableAction::RenameColumn(RenameColumn { syntax }),
29307 SyntaxKind::RENAME_CONSTRAINT => {
29308 AlterTableAction::RenameConstraint(RenameConstraint { syntax })
29309 }
29310 SyntaxKind::RENAME_TO => AlterTableAction::RenameTo(RenameTo { syntax }),
29311 SyntaxKind::REPLICA_IDENTITY => {
29312 AlterTableAction::ReplicaIdentity(ReplicaIdentity { syntax })
29313 }
29314 SyntaxKind::RESET_OPTIONS => AlterTableAction::ResetOptions(ResetOptions { syntax }),
29315 SyntaxKind::SET_ACCESS_METHOD => {
29316 AlterTableAction::SetAccessMethod(SetAccessMethod { syntax })
29317 }
29318 SyntaxKind::SET_LOGGED => AlterTableAction::SetLogged(SetLogged { syntax }),
29319 SyntaxKind::SET_OPTIONS => AlterTableAction::SetOptions(SetOptions { syntax }),
29320 SyntaxKind::SET_SCHEMA => AlterTableAction::SetSchema(SetSchema { syntax }),
29321 SyntaxKind::SET_TABLESPACE => AlterTableAction::SetTablespace(SetTablespace { syntax }),
29322 SyntaxKind::SET_UNLOGGED => AlterTableAction::SetUnlogged(SetUnlogged { syntax }),
29323 SyntaxKind::SET_WITHOUT_CLUSTER => {
29324 AlterTableAction::SetWithoutCluster(SetWithoutCluster { syntax })
29325 }
29326 SyntaxKind::SET_WITHOUT_OIDS => {
29327 AlterTableAction::SetWithoutOids(SetWithoutOids { syntax })
29328 }
29329 SyntaxKind::SPLIT_PARTITION => {
29330 AlterTableAction::SplitPartition(SplitPartition { syntax })
29331 }
29332 SyntaxKind::VALIDATE_CONSTRAINT => {
29333 AlterTableAction::ValidateConstraint(ValidateConstraint { syntax })
29334 }
29335 _ => {
29336 return None;
29337 }
29338 };
29339 Some(res)
29340 }
29341 #[inline]
29342 fn syntax(&self) -> &SyntaxNode {
29343 match self {
29344 AlterTableAction::AddColumn(it) => &it.syntax,
29345 AlterTableAction::AddConstraint(it) => &it.syntax,
29346 AlterTableAction::AlterColumn(it) => &it.syntax,
29347 AlterTableAction::AlterConstraint(it) => &it.syntax,
29348 AlterTableAction::AttachPartition(it) => &it.syntax,
29349 AlterTableAction::ClusterOn(it) => &it.syntax,
29350 AlterTableAction::DetachPartition(it) => &it.syntax,
29351 AlterTableAction::DisableRls(it) => &it.syntax,
29352 AlterTableAction::DisableRule(it) => &it.syntax,
29353 AlterTableAction::DisableTrigger(it) => &it.syntax,
29354 AlterTableAction::DropColumn(it) => &it.syntax,
29355 AlterTableAction::DropConstraint(it) => &it.syntax,
29356 AlterTableAction::EnableAlwaysRule(it) => &it.syntax,
29357 AlterTableAction::EnableAlwaysTrigger(it) => &it.syntax,
29358 AlterTableAction::EnableReplicaRule(it) => &it.syntax,
29359 AlterTableAction::EnableReplicaTrigger(it) => &it.syntax,
29360 AlterTableAction::EnableRls(it) => &it.syntax,
29361 AlterTableAction::EnableRule(it) => &it.syntax,
29362 AlterTableAction::EnableTrigger(it) => &it.syntax,
29363 AlterTableAction::ForceRls(it) => &it.syntax,
29364 AlterTableAction::InheritTable(it) => &it.syntax,
29365 AlterTableAction::MergePartitions(it) => &it.syntax,
29366 AlterTableAction::NoForceRls(it) => &it.syntax,
29367 AlterTableAction::NoInheritTable(it) => &it.syntax,
29368 AlterTableAction::NotOf(it) => &it.syntax,
29369 AlterTableAction::OfType(it) => &it.syntax,
29370 AlterTableAction::OptionItemList(it) => &it.syntax,
29371 AlterTableAction::OwnerTo(it) => &it.syntax,
29372 AlterTableAction::RenameColumn(it) => &it.syntax,
29373 AlterTableAction::RenameConstraint(it) => &it.syntax,
29374 AlterTableAction::RenameTo(it) => &it.syntax,
29375 AlterTableAction::ReplicaIdentity(it) => &it.syntax,
29376 AlterTableAction::ResetOptions(it) => &it.syntax,
29377 AlterTableAction::SetAccessMethod(it) => &it.syntax,
29378 AlterTableAction::SetLogged(it) => &it.syntax,
29379 AlterTableAction::SetOptions(it) => &it.syntax,
29380 AlterTableAction::SetSchema(it) => &it.syntax,
29381 AlterTableAction::SetTablespace(it) => &it.syntax,
29382 AlterTableAction::SetUnlogged(it) => &it.syntax,
29383 AlterTableAction::SetWithoutCluster(it) => &it.syntax,
29384 AlterTableAction::SetWithoutOids(it) => &it.syntax,
29385 AlterTableAction::SplitPartition(it) => &it.syntax,
29386 AlterTableAction::ValidateConstraint(it) => &it.syntax,
29387 }
29388 }
29389}
29390impl From<AddColumn> for AlterTableAction {
29391 #[inline]
29392 fn from(node: AddColumn) -> AlterTableAction {
29393 AlterTableAction::AddColumn(node)
29394 }
29395}
29396impl From<AddConstraint> for AlterTableAction {
29397 #[inline]
29398 fn from(node: AddConstraint) -> AlterTableAction {
29399 AlterTableAction::AddConstraint(node)
29400 }
29401}
29402impl From<AlterColumn> for AlterTableAction {
29403 #[inline]
29404 fn from(node: AlterColumn) -> AlterTableAction {
29405 AlterTableAction::AlterColumn(node)
29406 }
29407}
29408impl From<AlterConstraint> for AlterTableAction {
29409 #[inline]
29410 fn from(node: AlterConstraint) -> AlterTableAction {
29411 AlterTableAction::AlterConstraint(node)
29412 }
29413}
29414impl From<AttachPartition> for AlterTableAction {
29415 #[inline]
29416 fn from(node: AttachPartition) -> AlterTableAction {
29417 AlterTableAction::AttachPartition(node)
29418 }
29419}
29420impl From<ClusterOn> for AlterTableAction {
29421 #[inline]
29422 fn from(node: ClusterOn) -> AlterTableAction {
29423 AlterTableAction::ClusterOn(node)
29424 }
29425}
29426impl From<DetachPartition> for AlterTableAction {
29427 #[inline]
29428 fn from(node: DetachPartition) -> AlterTableAction {
29429 AlterTableAction::DetachPartition(node)
29430 }
29431}
29432impl From<DisableRls> for AlterTableAction {
29433 #[inline]
29434 fn from(node: DisableRls) -> AlterTableAction {
29435 AlterTableAction::DisableRls(node)
29436 }
29437}
29438impl From<DisableRule> for AlterTableAction {
29439 #[inline]
29440 fn from(node: DisableRule) -> AlterTableAction {
29441 AlterTableAction::DisableRule(node)
29442 }
29443}
29444impl From<DisableTrigger> for AlterTableAction {
29445 #[inline]
29446 fn from(node: DisableTrigger) -> AlterTableAction {
29447 AlterTableAction::DisableTrigger(node)
29448 }
29449}
29450impl From<DropColumn> for AlterTableAction {
29451 #[inline]
29452 fn from(node: DropColumn) -> AlterTableAction {
29453 AlterTableAction::DropColumn(node)
29454 }
29455}
29456impl From<DropConstraint> for AlterTableAction {
29457 #[inline]
29458 fn from(node: DropConstraint) -> AlterTableAction {
29459 AlterTableAction::DropConstraint(node)
29460 }
29461}
29462impl From<EnableAlwaysRule> for AlterTableAction {
29463 #[inline]
29464 fn from(node: EnableAlwaysRule) -> AlterTableAction {
29465 AlterTableAction::EnableAlwaysRule(node)
29466 }
29467}
29468impl From<EnableAlwaysTrigger> for AlterTableAction {
29469 #[inline]
29470 fn from(node: EnableAlwaysTrigger) -> AlterTableAction {
29471 AlterTableAction::EnableAlwaysTrigger(node)
29472 }
29473}
29474impl From<EnableReplicaRule> for AlterTableAction {
29475 #[inline]
29476 fn from(node: EnableReplicaRule) -> AlterTableAction {
29477 AlterTableAction::EnableReplicaRule(node)
29478 }
29479}
29480impl From<EnableReplicaTrigger> for AlterTableAction {
29481 #[inline]
29482 fn from(node: EnableReplicaTrigger) -> AlterTableAction {
29483 AlterTableAction::EnableReplicaTrigger(node)
29484 }
29485}
29486impl From<EnableRls> for AlterTableAction {
29487 #[inline]
29488 fn from(node: EnableRls) -> AlterTableAction {
29489 AlterTableAction::EnableRls(node)
29490 }
29491}
29492impl From<EnableRule> for AlterTableAction {
29493 #[inline]
29494 fn from(node: EnableRule) -> AlterTableAction {
29495 AlterTableAction::EnableRule(node)
29496 }
29497}
29498impl From<EnableTrigger> for AlterTableAction {
29499 #[inline]
29500 fn from(node: EnableTrigger) -> AlterTableAction {
29501 AlterTableAction::EnableTrigger(node)
29502 }
29503}
29504impl From<ForceRls> for AlterTableAction {
29505 #[inline]
29506 fn from(node: ForceRls) -> AlterTableAction {
29507 AlterTableAction::ForceRls(node)
29508 }
29509}
29510impl From<InheritTable> for AlterTableAction {
29511 #[inline]
29512 fn from(node: InheritTable) -> AlterTableAction {
29513 AlterTableAction::InheritTable(node)
29514 }
29515}
29516impl From<MergePartitions> for AlterTableAction {
29517 #[inline]
29518 fn from(node: MergePartitions) -> AlterTableAction {
29519 AlterTableAction::MergePartitions(node)
29520 }
29521}
29522impl From<NoForceRls> for AlterTableAction {
29523 #[inline]
29524 fn from(node: NoForceRls) -> AlterTableAction {
29525 AlterTableAction::NoForceRls(node)
29526 }
29527}
29528impl From<NoInheritTable> for AlterTableAction {
29529 #[inline]
29530 fn from(node: NoInheritTable) -> AlterTableAction {
29531 AlterTableAction::NoInheritTable(node)
29532 }
29533}
29534impl From<NotOf> for AlterTableAction {
29535 #[inline]
29536 fn from(node: NotOf) -> AlterTableAction {
29537 AlterTableAction::NotOf(node)
29538 }
29539}
29540impl From<OfType> for AlterTableAction {
29541 #[inline]
29542 fn from(node: OfType) -> AlterTableAction {
29543 AlterTableAction::OfType(node)
29544 }
29545}
29546impl From<OptionItemList> for AlterTableAction {
29547 #[inline]
29548 fn from(node: OptionItemList) -> AlterTableAction {
29549 AlterTableAction::OptionItemList(node)
29550 }
29551}
29552impl From<OwnerTo> for AlterTableAction {
29553 #[inline]
29554 fn from(node: OwnerTo) -> AlterTableAction {
29555 AlterTableAction::OwnerTo(node)
29556 }
29557}
29558impl From<RenameColumn> for AlterTableAction {
29559 #[inline]
29560 fn from(node: RenameColumn) -> AlterTableAction {
29561 AlterTableAction::RenameColumn(node)
29562 }
29563}
29564impl From<RenameConstraint> for AlterTableAction {
29565 #[inline]
29566 fn from(node: RenameConstraint) -> AlterTableAction {
29567 AlterTableAction::RenameConstraint(node)
29568 }
29569}
29570impl From<RenameTo> for AlterTableAction {
29571 #[inline]
29572 fn from(node: RenameTo) -> AlterTableAction {
29573 AlterTableAction::RenameTo(node)
29574 }
29575}
29576impl From<ReplicaIdentity> for AlterTableAction {
29577 #[inline]
29578 fn from(node: ReplicaIdentity) -> AlterTableAction {
29579 AlterTableAction::ReplicaIdentity(node)
29580 }
29581}
29582impl From<ResetOptions> for AlterTableAction {
29583 #[inline]
29584 fn from(node: ResetOptions) -> AlterTableAction {
29585 AlterTableAction::ResetOptions(node)
29586 }
29587}
29588impl From<SetAccessMethod> for AlterTableAction {
29589 #[inline]
29590 fn from(node: SetAccessMethod) -> AlterTableAction {
29591 AlterTableAction::SetAccessMethod(node)
29592 }
29593}
29594impl From<SetLogged> for AlterTableAction {
29595 #[inline]
29596 fn from(node: SetLogged) -> AlterTableAction {
29597 AlterTableAction::SetLogged(node)
29598 }
29599}
29600impl From<SetOptions> for AlterTableAction {
29601 #[inline]
29602 fn from(node: SetOptions) -> AlterTableAction {
29603 AlterTableAction::SetOptions(node)
29604 }
29605}
29606impl From<SetSchema> for AlterTableAction {
29607 #[inline]
29608 fn from(node: SetSchema) -> AlterTableAction {
29609 AlterTableAction::SetSchema(node)
29610 }
29611}
29612impl From<SetTablespace> for AlterTableAction {
29613 #[inline]
29614 fn from(node: SetTablespace) -> AlterTableAction {
29615 AlterTableAction::SetTablespace(node)
29616 }
29617}
29618impl From<SetUnlogged> for AlterTableAction {
29619 #[inline]
29620 fn from(node: SetUnlogged) -> AlterTableAction {
29621 AlterTableAction::SetUnlogged(node)
29622 }
29623}
29624impl From<SetWithoutCluster> for AlterTableAction {
29625 #[inline]
29626 fn from(node: SetWithoutCluster) -> AlterTableAction {
29627 AlterTableAction::SetWithoutCluster(node)
29628 }
29629}
29630impl From<SetWithoutOids> for AlterTableAction {
29631 #[inline]
29632 fn from(node: SetWithoutOids) -> AlterTableAction {
29633 AlterTableAction::SetWithoutOids(node)
29634 }
29635}
29636impl From<SplitPartition> for AlterTableAction {
29637 #[inline]
29638 fn from(node: SplitPartition) -> AlterTableAction {
29639 AlterTableAction::SplitPartition(node)
29640 }
29641}
29642impl From<ValidateConstraint> for AlterTableAction {
29643 #[inline]
29644 fn from(node: ValidateConstraint) -> AlterTableAction {
29645 AlterTableAction::ValidateConstraint(node)
29646 }
29647}
29648impl AstNode for ColumnConstraint {
29649 #[inline]
29650 fn can_cast(kind: SyntaxKind) -> bool {
29651 matches!(
29652 kind,
29653 SyntaxKind::CHECK_CONSTRAINT
29654 | SyntaxKind::DEFAULT_CONSTRAINT
29655 | SyntaxKind::EXCLUDE_CONSTRAINT
29656 | SyntaxKind::NOT_NULL_CONSTRAINT
29657 | SyntaxKind::PRIMARY_KEY_CONSTRAINT
29658 | SyntaxKind::REFERENCES_CONSTRAINT
29659 | SyntaxKind::UNIQUE_CONSTRAINT
29660 )
29661 }
29662 #[inline]
29663 fn cast(syntax: SyntaxNode) -> Option<Self> {
29664 let res = match syntax.kind() {
29665 SyntaxKind::CHECK_CONSTRAINT => {
29666 ColumnConstraint::CheckConstraint(CheckConstraint { syntax })
29667 }
29668 SyntaxKind::DEFAULT_CONSTRAINT => {
29669 ColumnConstraint::DefaultConstraint(DefaultConstraint { syntax })
29670 }
29671 SyntaxKind::EXCLUDE_CONSTRAINT => {
29672 ColumnConstraint::ExcludeConstraint(ExcludeConstraint { syntax })
29673 }
29674 SyntaxKind::NOT_NULL_CONSTRAINT => {
29675 ColumnConstraint::NotNullConstraint(NotNullConstraint { syntax })
29676 }
29677 SyntaxKind::PRIMARY_KEY_CONSTRAINT => {
29678 ColumnConstraint::PrimaryKeyConstraint(PrimaryKeyConstraint { syntax })
29679 }
29680 SyntaxKind::REFERENCES_CONSTRAINT => {
29681 ColumnConstraint::ReferencesConstraint(ReferencesConstraint { syntax })
29682 }
29683 SyntaxKind::UNIQUE_CONSTRAINT => {
29684 ColumnConstraint::UniqueConstraint(UniqueConstraint { syntax })
29685 }
29686 _ => {
29687 return None;
29688 }
29689 };
29690 Some(res)
29691 }
29692 #[inline]
29693 fn syntax(&self) -> &SyntaxNode {
29694 match self {
29695 ColumnConstraint::CheckConstraint(it) => &it.syntax,
29696 ColumnConstraint::DefaultConstraint(it) => &it.syntax,
29697 ColumnConstraint::ExcludeConstraint(it) => &it.syntax,
29698 ColumnConstraint::NotNullConstraint(it) => &it.syntax,
29699 ColumnConstraint::PrimaryKeyConstraint(it) => &it.syntax,
29700 ColumnConstraint::ReferencesConstraint(it) => &it.syntax,
29701 ColumnConstraint::UniqueConstraint(it) => &it.syntax,
29702 }
29703 }
29704}
29705impl From<CheckConstraint> for ColumnConstraint {
29706 #[inline]
29707 fn from(node: CheckConstraint) -> ColumnConstraint {
29708 ColumnConstraint::CheckConstraint(node)
29709 }
29710}
29711impl From<DefaultConstraint> for ColumnConstraint {
29712 #[inline]
29713 fn from(node: DefaultConstraint) -> ColumnConstraint {
29714 ColumnConstraint::DefaultConstraint(node)
29715 }
29716}
29717impl From<ExcludeConstraint> for ColumnConstraint {
29718 #[inline]
29719 fn from(node: ExcludeConstraint) -> ColumnConstraint {
29720 ColumnConstraint::ExcludeConstraint(node)
29721 }
29722}
29723impl From<NotNullConstraint> for ColumnConstraint {
29724 #[inline]
29725 fn from(node: NotNullConstraint) -> ColumnConstraint {
29726 ColumnConstraint::NotNullConstraint(node)
29727 }
29728}
29729impl From<PrimaryKeyConstraint> for ColumnConstraint {
29730 #[inline]
29731 fn from(node: PrimaryKeyConstraint) -> ColumnConstraint {
29732 ColumnConstraint::PrimaryKeyConstraint(node)
29733 }
29734}
29735impl From<ReferencesConstraint> for ColumnConstraint {
29736 #[inline]
29737 fn from(node: ReferencesConstraint) -> ColumnConstraint {
29738 ColumnConstraint::ReferencesConstraint(node)
29739 }
29740}
29741impl From<UniqueConstraint> for ColumnConstraint {
29742 #[inline]
29743 fn from(node: UniqueConstraint) -> ColumnConstraint {
29744 ColumnConstraint::UniqueConstraint(node)
29745 }
29746}
29747impl AstNode for ConfigValue {
29748 #[inline]
29749 fn can_cast(kind: SyntaxKind) -> bool {
29750 matches!(kind, SyntaxKind::LITERAL | SyntaxKind::NAME_REF)
29751 }
29752 #[inline]
29753 fn cast(syntax: SyntaxNode) -> Option<Self> {
29754 let res = match syntax.kind() {
29755 SyntaxKind::LITERAL => ConfigValue::Literal(Literal { syntax }),
29756 SyntaxKind::NAME_REF => ConfigValue::NameRef(NameRef { syntax }),
29757 _ => {
29758 return None;
29759 }
29760 };
29761 Some(res)
29762 }
29763 #[inline]
29764 fn syntax(&self) -> &SyntaxNode {
29765 match self {
29766 ConfigValue::Literal(it) => &it.syntax,
29767 ConfigValue::NameRef(it) => &it.syntax,
29768 }
29769 }
29770}
29771impl From<Literal> for ConfigValue {
29772 #[inline]
29773 fn from(node: Literal) -> ConfigValue {
29774 ConfigValue::Literal(node)
29775 }
29776}
29777impl From<NameRef> for ConfigValue {
29778 #[inline]
29779 fn from(node: NameRef) -> ConfigValue {
29780 ConfigValue::NameRef(node)
29781 }
29782}
29783impl AstNode for ConflictAction {
29784 #[inline]
29785 fn can_cast(kind: SyntaxKind) -> bool {
29786 matches!(
29787 kind,
29788 SyntaxKind::CONFLICT_DO_NOTHING | SyntaxKind::CONFLICT_DO_UPDATE_SET
29789 )
29790 }
29791 #[inline]
29792 fn cast(syntax: SyntaxNode) -> Option<Self> {
29793 let res = match syntax.kind() {
29794 SyntaxKind::CONFLICT_DO_NOTHING => {
29795 ConflictAction::ConflictDoNothing(ConflictDoNothing { syntax })
29796 }
29797 SyntaxKind::CONFLICT_DO_UPDATE_SET => {
29798 ConflictAction::ConflictDoUpdateSet(ConflictDoUpdateSet { syntax })
29799 }
29800 _ => {
29801 return None;
29802 }
29803 };
29804 Some(res)
29805 }
29806 #[inline]
29807 fn syntax(&self) -> &SyntaxNode {
29808 match self {
29809 ConflictAction::ConflictDoNothing(it) => &it.syntax,
29810 ConflictAction::ConflictDoUpdateSet(it) => &it.syntax,
29811 }
29812 }
29813}
29814impl From<ConflictDoNothing> for ConflictAction {
29815 #[inline]
29816 fn from(node: ConflictDoNothing) -> ConflictAction {
29817 ConflictAction::ConflictDoNothing(node)
29818 }
29819}
29820impl From<ConflictDoUpdateSet> for ConflictAction {
29821 #[inline]
29822 fn from(node: ConflictDoUpdateSet) -> ConflictAction {
29823 ConflictAction::ConflictDoUpdateSet(node)
29824 }
29825}
29826impl AstNode for ConflictTarget {
29827 #[inline]
29828 fn can_cast(kind: SyntaxKind) -> bool {
29829 matches!(
29830 kind,
29831 SyntaxKind::CONFLICT_ON_CONSTRAINT | SyntaxKind::CONFLICT_ON_INDEX
29832 )
29833 }
29834 #[inline]
29835 fn cast(syntax: SyntaxNode) -> Option<Self> {
29836 let res = match syntax.kind() {
29837 SyntaxKind::CONFLICT_ON_CONSTRAINT => {
29838 ConflictTarget::ConflictOnConstraint(ConflictOnConstraint { syntax })
29839 }
29840 SyntaxKind::CONFLICT_ON_INDEX => {
29841 ConflictTarget::ConflictOnIndex(ConflictOnIndex { syntax })
29842 }
29843 _ => {
29844 return None;
29845 }
29846 };
29847 Some(res)
29848 }
29849 #[inline]
29850 fn syntax(&self) -> &SyntaxNode {
29851 match self {
29852 ConflictTarget::ConflictOnConstraint(it) => &it.syntax,
29853 ConflictTarget::ConflictOnIndex(it) => &it.syntax,
29854 }
29855 }
29856}
29857impl From<ConflictOnConstraint> for ConflictTarget {
29858 #[inline]
29859 fn from(node: ConflictOnConstraint) -> ConflictTarget {
29860 ConflictTarget::ConflictOnConstraint(node)
29861 }
29862}
29863impl From<ConflictOnIndex> for ConflictTarget {
29864 #[inline]
29865 fn from(node: ConflictOnIndex) -> ConflictTarget {
29866 ConflictTarget::ConflictOnIndex(node)
29867 }
29868}
29869impl AstNode for Constraint {
29870 #[inline]
29871 fn can_cast(kind: SyntaxKind) -> bool {
29872 matches!(
29873 kind,
29874 SyntaxKind::CHECK_CONSTRAINT
29875 | SyntaxKind::DEFAULT_CONSTRAINT
29876 | SyntaxKind::FOREIGN_KEY_CONSTRAINT
29877 | SyntaxKind::GENERATED_CONSTRAINT
29878 | SyntaxKind::NOT_NULL_CONSTRAINT
29879 | SyntaxKind::NULL_CONSTRAINT
29880 | SyntaxKind::PRIMARY_KEY_CONSTRAINT
29881 | SyntaxKind::REFERENCES_CONSTRAINT
29882 | SyntaxKind::UNIQUE_CONSTRAINT
29883 )
29884 }
29885 #[inline]
29886 fn cast(syntax: SyntaxNode) -> Option<Self> {
29887 let res = match syntax.kind() {
29888 SyntaxKind::CHECK_CONSTRAINT => Constraint::CheckConstraint(CheckConstraint { syntax }),
29889 SyntaxKind::DEFAULT_CONSTRAINT => {
29890 Constraint::DefaultConstraint(DefaultConstraint { syntax })
29891 }
29892 SyntaxKind::FOREIGN_KEY_CONSTRAINT => {
29893 Constraint::ForeignKeyConstraint(ForeignKeyConstraint { syntax })
29894 }
29895 SyntaxKind::GENERATED_CONSTRAINT => {
29896 Constraint::GeneratedConstraint(GeneratedConstraint { syntax })
29897 }
29898 SyntaxKind::NOT_NULL_CONSTRAINT => {
29899 Constraint::NotNullConstraint(NotNullConstraint { syntax })
29900 }
29901 SyntaxKind::NULL_CONSTRAINT => Constraint::NullConstraint(NullConstraint { syntax }),
29902 SyntaxKind::PRIMARY_KEY_CONSTRAINT => {
29903 Constraint::PrimaryKeyConstraint(PrimaryKeyConstraint { syntax })
29904 }
29905 SyntaxKind::REFERENCES_CONSTRAINT => {
29906 Constraint::ReferencesConstraint(ReferencesConstraint { syntax })
29907 }
29908 SyntaxKind::UNIQUE_CONSTRAINT => {
29909 Constraint::UniqueConstraint(UniqueConstraint { syntax })
29910 }
29911 _ => {
29912 return None;
29913 }
29914 };
29915 Some(res)
29916 }
29917 #[inline]
29918 fn syntax(&self) -> &SyntaxNode {
29919 match self {
29920 Constraint::CheckConstraint(it) => &it.syntax,
29921 Constraint::DefaultConstraint(it) => &it.syntax,
29922 Constraint::ForeignKeyConstraint(it) => &it.syntax,
29923 Constraint::GeneratedConstraint(it) => &it.syntax,
29924 Constraint::NotNullConstraint(it) => &it.syntax,
29925 Constraint::NullConstraint(it) => &it.syntax,
29926 Constraint::PrimaryKeyConstraint(it) => &it.syntax,
29927 Constraint::ReferencesConstraint(it) => &it.syntax,
29928 Constraint::UniqueConstraint(it) => &it.syntax,
29929 }
29930 }
29931}
29932impl From<CheckConstraint> for Constraint {
29933 #[inline]
29934 fn from(node: CheckConstraint) -> Constraint {
29935 Constraint::CheckConstraint(node)
29936 }
29937}
29938impl From<DefaultConstraint> for Constraint {
29939 #[inline]
29940 fn from(node: DefaultConstraint) -> Constraint {
29941 Constraint::DefaultConstraint(node)
29942 }
29943}
29944impl From<ForeignKeyConstraint> for Constraint {
29945 #[inline]
29946 fn from(node: ForeignKeyConstraint) -> Constraint {
29947 Constraint::ForeignKeyConstraint(node)
29948 }
29949}
29950impl From<GeneratedConstraint> for Constraint {
29951 #[inline]
29952 fn from(node: GeneratedConstraint) -> Constraint {
29953 Constraint::GeneratedConstraint(node)
29954 }
29955}
29956impl From<NotNullConstraint> for Constraint {
29957 #[inline]
29958 fn from(node: NotNullConstraint) -> Constraint {
29959 Constraint::NotNullConstraint(node)
29960 }
29961}
29962impl From<NullConstraint> for Constraint {
29963 #[inline]
29964 fn from(node: NullConstraint) -> Constraint {
29965 Constraint::NullConstraint(node)
29966 }
29967}
29968impl From<PrimaryKeyConstraint> for Constraint {
29969 #[inline]
29970 fn from(node: PrimaryKeyConstraint) -> Constraint {
29971 Constraint::PrimaryKeyConstraint(node)
29972 }
29973}
29974impl From<ReferencesConstraint> for Constraint {
29975 #[inline]
29976 fn from(node: ReferencesConstraint) -> Constraint {
29977 Constraint::ReferencesConstraint(node)
29978 }
29979}
29980impl From<UniqueConstraint> for Constraint {
29981 #[inline]
29982 fn from(node: UniqueConstraint) -> Constraint {
29983 Constraint::UniqueConstraint(node)
29984 }
29985}
29986impl AstNode for ExplainStmt {
29987 #[inline]
29988 fn can_cast(kind: SyntaxKind) -> bool {
29989 matches!(
29990 kind,
29991 SyntaxKind::COMPOUND_SELECT
29992 | SyntaxKind::CREATE_MATERIALIZED_VIEW
29993 | SyntaxKind::CREATE_TABLE_AS
29994 | SyntaxKind::DECLARE
29995 | SyntaxKind::DELETE
29996 | SyntaxKind::EXECUTE
29997 | SyntaxKind::INSERT
29998 | SyntaxKind::MERGE
29999 | SyntaxKind::PAREN_SELECT
30000 | SyntaxKind::SELECT
30001 | SyntaxKind::SELECT_INTO
30002 | SyntaxKind::TABLE
30003 | SyntaxKind::UPDATE
30004 | SyntaxKind::VALUES
30005 )
30006 }
30007 #[inline]
30008 fn cast(syntax: SyntaxNode) -> Option<Self> {
30009 let res = match syntax.kind() {
30010 SyntaxKind::COMPOUND_SELECT => ExplainStmt::CompoundSelect(CompoundSelect { syntax }),
30011 SyntaxKind::CREATE_MATERIALIZED_VIEW => {
30012 ExplainStmt::CreateMaterializedView(CreateMaterializedView { syntax })
30013 }
30014 SyntaxKind::CREATE_TABLE_AS => ExplainStmt::CreateTableAs(CreateTableAs { syntax }),
30015 SyntaxKind::DECLARE => ExplainStmt::Declare(Declare { syntax }),
30016 SyntaxKind::DELETE => ExplainStmt::Delete(Delete { syntax }),
30017 SyntaxKind::EXECUTE => ExplainStmt::Execute(Execute { syntax }),
30018 SyntaxKind::INSERT => ExplainStmt::Insert(Insert { syntax }),
30019 SyntaxKind::MERGE => ExplainStmt::Merge(Merge { syntax }),
30020 SyntaxKind::PAREN_SELECT => ExplainStmt::ParenSelect(ParenSelect { syntax }),
30021 SyntaxKind::SELECT => ExplainStmt::Select(Select { syntax }),
30022 SyntaxKind::SELECT_INTO => ExplainStmt::SelectInto(SelectInto { syntax }),
30023 SyntaxKind::TABLE => ExplainStmt::Table(Table { syntax }),
30024 SyntaxKind::UPDATE => ExplainStmt::Update(Update { syntax }),
30025 SyntaxKind::VALUES => ExplainStmt::Values(Values { syntax }),
30026 _ => {
30027 return None;
30028 }
30029 };
30030 Some(res)
30031 }
30032 #[inline]
30033 fn syntax(&self) -> &SyntaxNode {
30034 match self {
30035 ExplainStmt::CompoundSelect(it) => &it.syntax,
30036 ExplainStmt::CreateMaterializedView(it) => &it.syntax,
30037 ExplainStmt::CreateTableAs(it) => &it.syntax,
30038 ExplainStmt::Declare(it) => &it.syntax,
30039 ExplainStmt::Delete(it) => &it.syntax,
30040 ExplainStmt::Execute(it) => &it.syntax,
30041 ExplainStmt::Insert(it) => &it.syntax,
30042 ExplainStmt::Merge(it) => &it.syntax,
30043 ExplainStmt::ParenSelect(it) => &it.syntax,
30044 ExplainStmt::Select(it) => &it.syntax,
30045 ExplainStmt::SelectInto(it) => &it.syntax,
30046 ExplainStmt::Table(it) => &it.syntax,
30047 ExplainStmt::Update(it) => &it.syntax,
30048 ExplainStmt::Values(it) => &it.syntax,
30049 }
30050 }
30051}
30052impl From<CompoundSelect> for ExplainStmt {
30053 #[inline]
30054 fn from(node: CompoundSelect) -> ExplainStmt {
30055 ExplainStmt::CompoundSelect(node)
30056 }
30057}
30058impl From<CreateMaterializedView> for ExplainStmt {
30059 #[inline]
30060 fn from(node: CreateMaterializedView) -> ExplainStmt {
30061 ExplainStmt::CreateMaterializedView(node)
30062 }
30063}
30064impl From<CreateTableAs> for ExplainStmt {
30065 #[inline]
30066 fn from(node: CreateTableAs) -> ExplainStmt {
30067 ExplainStmt::CreateTableAs(node)
30068 }
30069}
30070impl From<Declare> for ExplainStmt {
30071 #[inline]
30072 fn from(node: Declare) -> ExplainStmt {
30073 ExplainStmt::Declare(node)
30074 }
30075}
30076impl From<Delete> for ExplainStmt {
30077 #[inline]
30078 fn from(node: Delete) -> ExplainStmt {
30079 ExplainStmt::Delete(node)
30080 }
30081}
30082impl From<Execute> for ExplainStmt {
30083 #[inline]
30084 fn from(node: Execute) -> ExplainStmt {
30085 ExplainStmt::Execute(node)
30086 }
30087}
30088impl From<Insert> for ExplainStmt {
30089 #[inline]
30090 fn from(node: Insert) -> ExplainStmt {
30091 ExplainStmt::Insert(node)
30092 }
30093}
30094impl From<Merge> for ExplainStmt {
30095 #[inline]
30096 fn from(node: Merge) -> ExplainStmt {
30097 ExplainStmt::Merge(node)
30098 }
30099}
30100impl From<ParenSelect> for ExplainStmt {
30101 #[inline]
30102 fn from(node: ParenSelect) -> ExplainStmt {
30103 ExplainStmt::ParenSelect(node)
30104 }
30105}
30106impl From<Select> for ExplainStmt {
30107 #[inline]
30108 fn from(node: Select) -> ExplainStmt {
30109 ExplainStmt::Select(node)
30110 }
30111}
30112impl From<SelectInto> for ExplainStmt {
30113 #[inline]
30114 fn from(node: SelectInto) -> ExplainStmt {
30115 ExplainStmt::SelectInto(node)
30116 }
30117}
30118impl From<Table> for ExplainStmt {
30119 #[inline]
30120 fn from(node: Table) -> ExplainStmt {
30121 ExplainStmt::Table(node)
30122 }
30123}
30124impl From<Update> for ExplainStmt {
30125 #[inline]
30126 fn from(node: Update) -> ExplainStmt {
30127 ExplainStmt::Update(node)
30128 }
30129}
30130impl From<Values> for ExplainStmt {
30131 #[inline]
30132 fn from(node: Values) -> ExplainStmt {
30133 ExplainStmt::Values(node)
30134 }
30135}
30136impl AstNode for Expr {
30137 #[inline]
30138 fn can_cast(kind: SyntaxKind) -> bool {
30139 matches!(
30140 kind,
30141 SyntaxKind::ARRAY_EXPR
30142 | SyntaxKind::BETWEEN_EXPR
30143 | SyntaxKind::BIN_EXPR
30144 | SyntaxKind::CALL_EXPR
30145 | SyntaxKind::CASE_EXPR
30146 | SyntaxKind::CAST_EXPR
30147 | SyntaxKind::FIELD_EXPR
30148 | SyntaxKind::INDEX_EXPR
30149 | SyntaxKind::LITERAL
30150 | SyntaxKind::NAME_REF
30151 | SyntaxKind::PAREN_EXPR
30152 | SyntaxKind::POSTFIX_EXPR
30153 | SyntaxKind::PREFIX_EXPR
30154 | SyntaxKind::SLICE_EXPR
30155 | SyntaxKind::TUPLE_EXPR
30156 )
30157 }
30158 #[inline]
30159 fn cast(syntax: SyntaxNode) -> Option<Self> {
30160 let res = match syntax.kind() {
30161 SyntaxKind::ARRAY_EXPR => Expr::ArrayExpr(ArrayExpr { syntax }),
30162 SyntaxKind::BETWEEN_EXPR => Expr::BetweenExpr(BetweenExpr { syntax }),
30163 SyntaxKind::BIN_EXPR => Expr::BinExpr(BinExpr { syntax }),
30164 SyntaxKind::CALL_EXPR => Expr::CallExpr(CallExpr { syntax }),
30165 SyntaxKind::CASE_EXPR => Expr::CaseExpr(CaseExpr { syntax }),
30166 SyntaxKind::CAST_EXPR => Expr::CastExpr(CastExpr { syntax }),
30167 SyntaxKind::FIELD_EXPR => Expr::FieldExpr(FieldExpr { syntax }),
30168 SyntaxKind::INDEX_EXPR => Expr::IndexExpr(IndexExpr { syntax }),
30169 SyntaxKind::LITERAL => Expr::Literal(Literal { syntax }),
30170 SyntaxKind::NAME_REF => Expr::NameRef(NameRef { syntax }),
30171 SyntaxKind::PAREN_EXPR => Expr::ParenExpr(ParenExpr { syntax }),
30172 SyntaxKind::POSTFIX_EXPR => Expr::PostfixExpr(PostfixExpr { syntax }),
30173 SyntaxKind::PREFIX_EXPR => Expr::PrefixExpr(PrefixExpr { syntax }),
30174 SyntaxKind::SLICE_EXPR => Expr::SliceExpr(SliceExpr { syntax }),
30175 SyntaxKind::TUPLE_EXPR => Expr::TupleExpr(TupleExpr { syntax }),
30176 _ => {
30177 return None;
30178 }
30179 };
30180 Some(res)
30181 }
30182 #[inline]
30183 fn syntax(&self) -> &SyntaxNode {
30184 match self {
30185 Expr::ArrayExpr(it) => &it.syntax,
30186 Expr::BetweenExpr(it) => &it.syntax,
30187 Expr::BinExpr(it) => &it.syntax,
30188 Expr::CallExpr(it) => &it.syntax,
30189 Expr::CaseExpr(it) => &it.syntax,
30190 Expr::CastExpr(it) => &it.syntax,
30191 Expr::FieldExpr(it) => &it.syntax,
30192 Expr::IndexExpr(it) => &it.syntax,
30193 Expr::Literal(it) => &it.syntax,
30194 Expr::NameRef(it) => &it.syntax,
30195 Expr::ParenExpr(it) => &it.syntax,
30196 Expr::PostfixExpr(it) => &it.syntax,
30197 Expr::PrefixExpr(it) => &it.syntax,
30198 Expr::SliceExpr(it) => &it.syntax,
30199 Expr::TupleExpr(it) => &it.syntax,
30200 }
30201 }
30202}
30203impl From<ArrayExpr> for Expr {
30204 #[inline]
30205 fn from(node: ArrayExpr) -> Expr {
30206 Expr::ArrayExpr(node)
30207 }
30208}
30209impl From<BetweenExpr> for Expr {
30210 #[inline]
30211 fn from(node: BetweenExpr) -> Expr {
30212 Expr::BetweenExpr(node)
30213 }
30214}
30215impl From<BinExpr> for Expr {
30216 #[inline]
30217 fn from(node: BinExpr) -> Expr {
30218 Expr::BinExpr(node)
30219 }
30220}
30221impl From<CallExpr> for Expr {
30222 #[inline]
30223 fn from(node: CallExpr) -> Expr {
30224 Expr::CallExpr(node)
30225 }
30226}
30227impl From<CaseExpr> for Expr {
30228 #[inline]
30229 fn from(node: CaseExpr) -> Expr {
30230 Expr::CaseExpr(node)
30231 }
30232}
30233impl From<CastExpr> for Expr {
30234 #[inline]
30235 fn from(node: CastExpr) -> Expr {
30236 Expr::CastExpr(node)
30237 }
30238}
30239impl From<FieldExpr> for Expr {
30240 #[inline]
30241 fn from(node: FieldExpr) -> Expr {
30242 Expr::FieldExpr(node)
30243 }
30244}
30245impl From<IndexExpr> for Expr {
30246 #[inline]
30247 fn from(node: IndexExpr) -> Expr {
30248 Expr::IndexExpr(node)
30249 }
30250}
30251impl From<Literal> for Expr {
30252 #[inline]
30253 fn from(node: Literal) -> Expr {
30254 Expr::Literal(node)
30255 }
30256}
30257impl From<NameRef> for Expr {
30258 #[inline]
30259 fn from(node: NameRef) -> Expr {
30260 Expr::NameRef(node)
30261 }
30262}
30263impl From<ParenExpr> for Expr {
30264 #[inline]
30265 fn from(node: ParenExpr) -> Expr {
30266 Expr::ParenExpr(node)
30267 }
30268}
30269impl From<PostfixExpr> for Expr {
30270 #[inline]
30271 fn from(node: PostfixExpr) -> Expr {
30272 Expr::PostfixExpr(node)
30273 }
30274}
30275impl From<PrefixExpr> for Expr {
30276 #[inline]
30277 fn from(node: PrefixExpr) -> Expr {
30278 Expr::PrefixExpr(node)
30279 }
30280}
30281impl From<SliceExpr> for Expr {
30282 #[inline]
30283 fn from(node: SliceExpr) -> Expr {
30284 Expr::SliceExpr(node)
30285 }
30286}
30287impl From<TupleExpr> for Expr {
30288 #[inline]
30289 fn from(node: TupleExpr) -> Expr {
30290 Expr::TupleExpr(node)
30291 }
30292}
30293impl AstNode for FuncOption {
30294 #[inline]
30295 fn can_cast(kind: SyntaxKind) -> bool {
30296 matches!(
30297 kind,
30298 SyntaxKind::AS_FUNC_OPTION
30299 | SyntaxKind::BEGIN_FUNC_OPTION_LIST
30300 | SyntaxKind::COST_FUNC_OPTION
30301 | SyntaxKind::LANGUAGE_FUNC_OPTION
30302 | SyntaxKind::LEAKPROOF_FUNC_OPTION
30303 | SyntaxKind::PARALLEL_FUNC_OPTION
30304 | SyntaxKind::RESET_FUNC_OPTION
30305 | SyntaxKind::RETURN_FUNC_OPTION
30306 | SyntaxKind::ROWS_FUNC_OPTION
30307 | SyntaxKind::SECURITY_FUNC_OPTION
30308 | SyntaxKind::SET_FUNC_OPTION
30309 | SyntaxKind::STRICT_FUNC_OPTION
30310 | SyntaxKind::SUPPORT_FUNC_OPTION
30311 | SyntaxKind::TRANSFORM_FUNC_OPTION
30312 | SyntaxKind::VOLATILITY_FUNC_OPTION
30313 | SyntaxKind::WINDOW_FUNC_OPTION
30314 )
30315 }
30316 #[inline]
30317 fn cast(syntax: SyntaxNode) -> Option<Self> {
30318 let res = match syntax.kind() {
30319 SyntaxKind::AS_FUNC_OPTION => FuncOption::AsFuncOption(AsFuncOption { syntax }),
30320 SyntaxKind::BEGIN_FUNC_OPTION_LIST => {
30321 FuncOption::BeginFuncOptionList(BeginFuncOptionList { syntax })
30322 }
30323 SyntaxKind::COST_FUNC_OPTION => FuncOption::CostFuncOption(CostFuncOption { syntax }),
30324 SyntaxKind::LANGUAGE_FUNC_OPTION => {
30325 FuncOption::LanguageFuncOption(LanguageFuncOption { syntax })
30326 }
30327 SyntaxKind::LEAKPROOF_FUNC_OPTION => {
30328 FuncOption::LeakproofFuncOption(LeakproofFuncOption { syntax })
30329 }
30330 SyntaxKind::PARALLEL_FUNC_OPTION => {
30331 FuncOption::ParallelFuncOption(ParallelFuncOption { syntax })
30332 }
30333 SyntaxKind::RESET_FUNC_OPTION => {
30334 FuncOption::ResetFuncOption(ResetFuncOption { syntax })
30335 }
30336 SyntaxKind::RETURN_FUNC_OPTION => {
30337 FuncOption::ReturnFuncOption(ReturnFuncOption { syntax })
30338 }
30339 SyntaxKind::ROWS_FUNC_OPTION => FuncOption::RowsFuncOption(RowsFuncOption { syntax }),
30340 SyntaxKind::SECURITY_FUNC_OPTION => {
30341 FuncOption::SecurityFuncOption(SecurityFuncOption { syntax })
30342 }
30343 SyntaxKind::SET_FUNC_OPTION => FuncOption::SetFuncOption(SetFuncOption { syntax }),
30344 SyntaxKind::STRICT_FUNC_OPTION => {
30345 FuncOption::StrictFuncOption(StrictFuncOption { syntax })
30346 }
30347 SyntaxKind::SUPPORT_FUNC_OPTION => {
30348 FuncOption::SupportFuncOption(SupportFuncOption { syntax })
30349 }
30350 SyntaxKind::TRANSFORM_FUNC_OPTION => {
30351 FuncOption::TransformFuncOption(TransformFuncOption { syntax })
30352 }
30353 SyntaxKind::VOLATILITY_FUNC_OPTION => {
30354 FuncOption::VolatilityFuncOption(VolatilityFuncOption { syntax })
30355 }
30356 SyntaxKind::WINDOW_FUNC_OPTION => {
30357 FuncOption::WindowFuncOption(WindowFuncOption { syntax })
30358 }
30359 _ => {
30360 return None;
30361 }
30362 };
30363 Some(res)
30364 }
30365 #[inline]
30366 fn syntax(&self) -> &SyntaxNode {
30367 match self {
30368 FuncOption::AsFuncOption(it) => &it.syntax,
30369 FuncOption::BeginFuncOptionList(it) => &it.syntax,
30370 FuncOption::CostFuncOption(it) => &it.syntax,
30371 FuncOption::LanguageFuncOption(it) => &it.syntax,
30372 FuncOption::LeakproofFuncOption(it) => &it.syntax,
30373 FuncOption::ParallelFuncOption(it) => &it.syntax,
30374 FuncOption::ResetFuncOption(it) => &it.syntax,
30375 FuncOption::ReturnFuncOption(it) => &it.syntax,
30376 FuncOption::RowsFuncOption(it) => &it.syntax,
30377 FuncOption::SecurityFuncOption(it) => &it.syntax,
30378 FuncOption::SetFuncOption(it) => &it.syntax,
30379 FuncOption::StrictFuncOption(it) => &it.syntax,
30380 FuncOption::SupportFuncOption(it) => &it.syntax,
30381 FuncOption::TransformFuncOption(it) => &it.syntax,
30382 FuncOption::VolatilityFuncOption(it) => &it.syntax,
30383 FuncOption::WindowFuncOption(it) => &it.syntax,
30384 }
30385 }
30386}
30387impl From<AsFuncOption> for FuncOption {
30388 #[inline]
30389 fn from(node: AsFuncOption) -> FuncOption {
30390 FuncOption::AsFuncOption(node)
30391 }
30392}
30393impl From<BeginFuncOptionList> for FuncOption {
30394 #[inline]
30395 fn from(node: BeginFuncOptionList) -> FuncOption {
30396 FuncOption::BeginFuncOptionList(node)
30397 }
30398}
30399impl From<CostFuncOption> for FuncOption {
30400 #[inline]
30401 fn from(node: CostFuncOption) -> FuncOption {
30402 FuncOption::CostFuncOption(node)
30403 }
30404}
30405impl From<LanguageFuncOption> for FuncOption {
30406 #[inline]
30407 fn from(node: LanguageFuncOption) -> FuncOption {
30408 FuncOption::LanguageFuncOption(node)
30409 }
30410}
30411impl From<LeakproofFuncOption> for FuncOption {
30412 #[inline]
30413 fn from(node: LeakproofFuncOption) -> FuncOption {
30414 FuncOption::LeakproofFuncOption(node)
30415 }
30416}
30417impl From<ParallelFuncOption> for FuncOption {
30418 #[inline]
30419 fn from(node: ParallelFuncOption) -> FuncOption {
30420 FuncOption::ParallelFuncOption(node)
30421 }
30422}
30423impl From<ResetFuncOption> for FuncOption {
30424 #[inline]
30425 fn from(node: ResetFuncOption) -> FuncOption {
30426 FuncOption::ResetFuncOption(node)
30427 }
30428}
30429impl From<ReturnFuncOption> for FuncOption {
30430 #[inline]
30431 fn from(node: ReturnFuncOption) -> FuncOption {
30432 FuncOption::ReturnFuncOption(node)
30433 }
30434}
30435impl From<RowsFuncOption> for FuncOption {
30436 #[inline]
30437 fn from(node: RowsFuncOption) -> FuncOption {
30438 FuncOption::RowsFuncOption(node)
30439 }
30440}
30441impl From<SecurityFuncOption> for FuncOption {
30442 #[inline]
30443 fn from(node: SecurityFuncOption) -> FuncOption {
30444 FuncOption::SecurityFuncOption(node)
30445 }
30446}
30447impl From<SetFuncOption> for FuncOption {
30448 #[inline]
30449 fn from(node: SetFuncOption) -> FuncOption {
30450 FuncOption::SetFuncOption(node)
30451 }
30452}
30453impl From<StrictFuncOption> for FuncOption {
30454 #[inline]
30455 fn from(node: StrictFuncOption) -> FuncOption {
30456 FuncOption::StrictFuncOption(node)
30457 }
30458}
30459impl From<SupportFuncOption> for FuncOption {
30460 #[inline]
30461 fn from(node: SupportFuncOption) -> FuncOption {
30462 FuncOption::SupportFuncOption(node)
30463 }
30464}
30465impl From<TransformFuncOption> for FuncOption {
30466 #[inline]
30467 fn from(node: TransformFuncOption) -> FuncOption {
30468 FuncOption::TransformFuncOption(node)
30469 }
30470}
30471impl From<VolatilityFuncOption> for FuncOption {
30472 #[inline]
30473 fn from(node: VolatilityFuncOption) -> FuncOption {
30474 FuncOption::VolatilityFuncOption(node)
30475 }
30476}
30477impl From<WindowFuncOption> for FuncOption {
30478 #[inline]
30479 fn from(node: WindowFuncOption) -> FuncOption {
30480 FuncOption::WindowFuncOption(node)
30481 }
30482}
30483impl AstNode for GroupBy {
30484 #[inline]
30485 fn can_cast(kind: SyntaxKind) -> bool {
30486 matches!(
30487 kind,
30488 SyntaxKind::GROUPING_CUBE
30489 | SyntaxKind::GROUPING_EXPR
30490 | SyntaxKind::GROUPING_ROLLUP
30491 | SyntaxKind::GROUPING_SETS
30492 )
30493 }
30494 #[inline]
30495 fn cast(syntax: SyntaxNode) -> Option<Self> {
30496 let res = match syntax.kind() {
30497 SyntaxKind::GROUPING_CUBE => GroupBy::GroupingCube(GroupingCube { syntax }),
30498 SyntaxKind::GROUPING_EXPR => GroupBy::GroupingExpr(GroupingExpr { syntax }),
30499 SyntaxKind::GROUPING_ROLLUP => GroupBy::GroupingRollup(GroupingRollup { syntax }),
30500 SyntaxKind::GROUPING_SETS => GroupBy::GroupingSets(GroupingSets { syntax }),
30501 _ => {
30502 return None;
30503 }
30504 };
30505 Some(res)
30506 }
30507 #[inline]
30508 fn syntax(&self) -> &SyntaxNode {
30509 match self {
30510 GroupBy::GroupingCube(it) => &it.syntax,
30511 GroupBy::GroupingExpr(it) => &it.syntax,
30512 GroupBy::GroupingRollup(it) => &it.syntax,
30513 GroupBy::GroupingSets(it) => &it.syntax,
30514 }
30515 }
30516}
30517impl From<GroupingCube> for GroupBy {
30518 #[inline]
30519 fn from(node: GroupingCube) -> GroupBy {
30520 GroupBy::GroupingCube(node)
30521 }
30522}
30523impl From<GroupingExpr> for GroupBy {
30524 #[inline]
30525 fn from(node: GroupingExpr) -> GroupBy {
30526 GroupBy::GroupingExpr(node)
30527 }
30528}
30529impl From<GroupingRollup> for GroupBy {
30530 #[inline]
30531 fn from(node: GroupingRollup) -> GroupBy {
30532 GroupBy::GroupingRollup(node)
30533 }
30534}
30535impl From<GroupingSets> for GroupBy {
30536 #[inline]
30537 fn from(node: GroupingSets) -> GroupBy {
30538 GroupBy::GroupingSets(node)
30539 }
30540}
30541impl AstNode for JoinType {
30542 #[inline]
30543 fn can_cast(kind: SyntaxKind) -> bool {
30544 matches!(
30545 kind,
30546 SyntaxKind::JOIN_CROSS
30547 | SyntaxKind::JOIN_FULL
30548 | SyntaxKind::JOIN_INNER
30549 | SyntaxKind::JOIN_LEFT
30550 | SyntaxKind::JOIN_RIGHT
30551 )
30552 }
30553 #[inline]
30554 fn cast(syntax: SyntaxNode) -> Option<Self> {
30555 let res = match syntax.kind() {
30556 SyntaxKind::JOIN_CROSS => JoinType::JoinCross(JoinCross { syntax }),
30557 SyntaxKind::JOIN_FULL => JoinType::JoinFull(JoinFull { syntax }),
30558 SyntaxKind::JOIN_INNER => JoinType::JoinInner(JoinInner { syntax }),
30559 SyntaxKind::JOIN_LEFT => JoinType::JoinLeft(JoinLeft { syntax }),
30560 SyntaxKind::JOIN_RIGHT => JoinType::JoinRight(JoinRight { syntax }),
30561 _ => {
30562 return None;
30563 }
30564 };
30565 Some(res)
30566 }
30567 #[inline]
30568 fn syntax(&self) -> &SyntaxNode {
30569 match self {
30570 JoinType::JoinCross(it) => &it.syntax,
30571 JoinType::JoinFull(it) => &it.syntax,
30572 JoinType::JoinInner(it) => &it.syntax,
30573 JoinType::JoinLeft(it) => &it.syntax,
30574 JoinType::JoinRight(it) => &it.syntax,
30575 }
30576 }
30577}
30578impl From<JoinCross> for JoinType {
30579 #[inline]
30580 fn from(node: JoinCross) -> JoinType {
30581 JoinType::JoinCross(node)
30582 }
30583}
30584impl From<JoinFull> for JoinType {
30585 #[inline]
30586 fn from(node: JoinFull) -> JoinType {
30587 JoinType::JoinFull(node)
30588 }
30589}
30590impl From<JoinInner> for JoinType {
30591 #[inline]
30592 fn from(node: JoinInner) -> JoinType {
30593 JoinType::JoinInner(node)
30594 }
30595}
30596impl From<JoinLeft> for JoinType {
30597 #[inline]
30598 fn from(node: JoinLeft) -> JoinType {
30599 JoinType::JoinLeft(node)
30600 }
30601}
30602impl From<JoinRight> for JoinType {
30603 #[inline]
30604 fn from(node: JoinRight) -> JoinType {
30605 JoinType::JoinRight(node)
30606 }
30607}
30608impl AstNode for JsonBehavior {
30609 #[inline]
30610 fn can_cast(kind: SyntaxKind) -> bool {
30611 matches!(
30612 kind,
30613 SyntaxKind::JSON_BEHAVIOR_DEFAULT
30614 | SyntaxKind::JSON_BEHAVIOR_EMPTY_ARRAY
30615 | SyntaxKind::JSON_BEHAVIOR_EMPTY_OBJECT
30616 | SyntaxKind::JSON_BEHAVIOR_ERROR
30617 | SyntaxKind::JSON_BEHAVIOR_FALSE
30618 | SyntaxKind::JSON_BEHAVIOR_NULL
30619 | SyntaxKind::JSON_BEHAVIOR_TRUE
30620 | SyntaxKind::JSON_BEHAVIOR_UNKNOWN
30621 )
30622 }
30623 #[inline]
30624 fn cast(syntax: SyntaxNode) -> Option<Self> {
30625 let res = match syntax.kind() {
30626 SyntaxKind::JSON_BEHAVIOR_DEFAULT => {
30627 JsonBehavior::JsonBehaviorDefault(JsonBehaviorDefault { syntax })
30628 }
30629 SyntaxKind::JSON_BEHAVIOR_EMPTY_ARRAY => {
30630 JsonBehavior::JsonBehaviorEmptyArray(JsonBehaviorEmptyArray { syntax })
30631 }
30632 SyntaxKind::JSON_BEHAVIOR_EMPTY_OBJECT => {
30633 JsonBehavior::JsonBehaviorEmptyObject(JsonBehaviorEmptyObject { syntax })
30634 }
30635 SyntaxKind::JSON_BEHAVIOR_ERROR => {
30636 JsonBehavior::JsonBehaviorError(JsonBehaviorError { syntax })
30637 }
30638 SyntaxKind::JSON_BEHAVIOR_FALSE => {
30639 JsonBehavior::JsonBehaviorFalse(JsonBehaviorFalse { syntax })
30640 }
30641 SyntaxKind::JSON_BEHAVIOR_NULL => {
30642 JsonBehavior::JsonBehaviorNull(JsonBehaviorNull { syntax })
30643 }
30644 SyntaxKind::JSON_BEHAVIOR_TRUE => {
30645 JsonBehavior::JsonBehaviorTrue(JsonBehaviorTrue { syntax })
30646 }
30647 SyntaxKind::JSON_BEHAVIOR_UNKNOWN => {
30648 JsonBehavior::JsonBehaviorUnknown(JsonBehaviorUnknown { syntax })
30649 }
30650 _ => {
30651 return None;
30652 }
30653 };
30654 Some(res)
30655 }
30656 #[inline]
30657 fn syntax(&self) -> &SyntaxNode {
30658 match self {
30659 JsonBehavior::JsonBehaviorDefault(it) => &it.syntax,
30660 JsonBehavior::JsonBehaviorEmptyArray(it) => &it.syntax,
30661 JsonBehavior::JsonBehaviorEmptyObject(it) => &it.syntax,
30662 JsonBehavior::JsonBehaviorError(it) => &it.syntax,
30663 JsonBehavior::JsonBehaviorFalse(it) => &it.syntax,
30664 JsonBehavior::JsonBehaviorNull(it) => &it.syntax,
30665 JsonBehavior::JsonBehaviorTrue(it) => &it.syntax,
30666 JsonBehavior::JsonBehaviorUnknown(it) => &it.syntax,
30667 }
30668 }
30669}
30670impl From<JsonBehaviorDefault> for JsonBehavior {
30671 #[inline]
30672 fn from(node: JsonBehaviorDefault) -> JsonBehavior {
30673 JsonBehavior::JsonBehaviorDefault(node)
30674 }
30675}
30676impl From<JsonBehaviorEmptyArray> for JsonBehavior {
30677 #[inline]
30678 fn from(node: JsonBehaviorEmptyArray) -> JsonBehavior {
30679 JsonBehavior::JsonBehaviorEmptyArray(node)
30680 }
30681}
30682impl From<JsonBehaviorEmptyObject> for JsonBehavior {
30683 #[inline]
30684 fn from(node: JsonBehaviorEmptyObject) -> JsonBehavior {
30685 JsonBehavior::JsonBehaviorEmptyObject(node)
30686 }
30687}
30688impl From<JsonBehaviorError> for JsonBehavior {
30689 #[inline]
30690 fn from(node: JsonBehaviorError) -> JsonBehavior {
30691 JsonBehavior::JsonBehaviorError(node)
30692 }
30693}
30694impl From<JsonBehaviorFalse> for JsonBehavior {
30695 #[inline]
30696 fn from(node: JsonBehaviorFalse) -> JsonBehavior {
30697 JsonBehavior::JsonBehaviorFalse(node)
30698 }
30699}
30700impl From<JsonBehaviorNull> for JsonBehavior {
30701 #[inline]
30702 fn from(node: JsonBehaviorNull) -> JsonBehavior {
30703 JsonBehavior::JsonBehaviorNull(node)
30704 }
30705}
30706impl From<JsonBehaviorTrue> for JsonBehavior {
30707 #[inline]
30708 fn from(node: JsonBehaviorTrue) -> JsonBehavior {
30709 JsonBehavior::JsonBehaviorTrue(node)
30710 }
30711}
30712impl From<JsonBehaviorUnknown> for JsonBehavior {
30713 #[inline]
30714 fn from(node: JsonBehaviorUnknown) -> JsonBehavior {
30715 JsonBehavior::JsonBehaviorUnknown(node)
30716 }
30717}
30718impl AstNode for MatchType {
30719 #[inline]
30720 fn can_cast(kind: SyntaxKind) -> bool {
30721 matches!(
30722 kind,
30723 SyntaxKind::MATCH_FULL | SyntaxKind::MATCH_PARTIAL | SyntaxKind::MATCH_SIMPLE
30724 )
30725 }
30726 #[inline]
30727 fn cast(syntax: SyntaxNode) -> Option<Self> {
30728 let res = match syntax.kind() {
30729 SyntaxKind::MATCH_FULL => MatchType::MatchFull(MatchFull { syntax }),
30730 SyntaxKind::MATCH_PARTIAL => MatchType::MatchPartial(MatchPartial { syntax }),
30731 SyntaxKind::MATCH_SIMPLE => MatchType::MatchSimple(MatchSimple { syntax }),
30732 _ => {
30733 return None;
30734 }
30735 };
30736 Some(res)
30737 }
30738 #[inline]
30739 fn syntax(&self) -> &SyntaxNode {
30740 match self {
30741 MatchType::MatchFull(it) => &it.syntax,
30742 MatchType::MatchPartial(it) => &it.syntax,
30743 MatchType::MatchSimple(it) => &it.syntax,
30744 }
30745 }
30746}
30747impl From<MatchFull> for MatchType {
30748 #[inline]
30749 fn from(node: MatchFull) -> MatchType {
30750 MatchType::MatchFull(node)
30751 }
30752}
30753impl From<MatchPartial> for MatchType {
30754 #[inline]
30755 fn from(node: MatchPartial) -> MatchType {
30756 MatchType::MatchPartial(node)
30757 }
30758}
30759impl From<MatchSimple> for MatchType {
30760 #[inline]
30761 fn from(node: MatchSimple) -> MatchType {
30762 MatchType::MatchSimple(node)
30763 }
30764}
30765impl AstNode for MergeAction {
30766 #[inline]
30767 fn can_cast(kind: SyntaxKind) -> bool {
30768 matches!(
30769 kind,
30770 SyntaxKind::MERGE_DELETE
30771 | SyntaxKind::MERGE_DO_NOTHING
30772 | SyntaxKind::MERGE_INSERT
30773 | SyntaxKind::MERGE_UPDATE
30774 )
30775 }
30776 #[inline]
30777 fn cast(syntax: SyntaxNode) -> Option<Self> {
30778 let res = match syntax.kind() {
30779 SyntaxKind::MERGE_DELETE => MergeAction::MergeDelete(MergeDelete { syntax }),
30780 SyntaxKind::MERGE_DO_NOTHING => MergeAction::MergeDoNothing(MergeDoNothing { syntax }),
30781 SyntaxKind::MERGE_INSERT => MergeAction::MergeInsert(MergeInsert { syntax }),
30782 SyntaxKind::MERGE_UPDATE => MergeAction::MergeUpdate(MergeUpdate { syntax }),
30783 _ => {
30784 return None;
30785 }
30786 };
30787 Some(res)
30788 }
30789 #[inline]
30790 fn syntax(&self) -> &SyntaxNode {
30791 match self {
30792 MergeAction::MergeDelete(it) => &it.syntax,
30793 MergeAction::MergeDoNothing(it) => &it.syntax,
30794 MergeAction::MergeInsert(it) => &it.syntax,
30795 MergeAction::MergeUpdate(it) => &it.syntax,
30796 }
30797 }
30798}
30799impl From<MergeDelete> for MergeAction {
30800 #[inline]
30801 fn from(node: MergeDelete) -> MergeAction {
30802 MergeAction::MergeDelete(node)
30803 }
30804}
30805impl From<MergeDoNothing> for MergeAction {
30806 #[inline]
30807 fn from(node: MergeDoNothing) -> MergeAction {
30808 MergeAction::MergeDoNothing(node)
30809 }
30810}
30811impl From<MergeInsert> for MergeAction {
30812 #[inline]
30813 fn from(node: MergeInsert) -> MergeAction {
30814 MergeAction::MergeInsert(node)
30815 }
30816}
30817impl From<MergeUpdate> for MergeAction {
30818 #[inline]
30819 fn from(node: MergeUpdate) -> MergeAction {
30820 MergeAction::MergeUpdate(node)
30821 }
30822}
30823impl AstNode for MergeWhenClause {
30824 #[inline]
30825 fn can_cast(kind: SyntaxKind) -> bool {
30826 matches!(
30827 kind,
30828 SyntaxKind::MERGE_WHEN_MATCHED
30829 | SyntaxKind::MERGE_WHEN_NOT_MATCHED_SOURCE
30830 | SyntaxKind::MERGE_WHEN_NOT_MATCHED_TARGET
30831 )
30832 }
30833 #[inline]
30834 fn cast(syntax: SyntaxNode) -> Option<Self> {
30835 let res = match syntax.kind() {
30836 SyntaxKind::MERGE_WHEN_MATCHED => {
30837 MergeWhenClause::MergeWhenMatched(MergeWhenMatched { syntax })
30838 }
30839 SyntaxKind::MERGE_WHEN_NOT_MATCHED_SOURCE => {
30840 MergeWhenClause::MergeWhenNotMatchedSource(MergeWhenNotMatchedSource { syntax })
30841 }
30842 SyntaxKind::MERGE_WHEN_NOT_MATCHED_TARGET => {
30843 MergeWhenClause::MergeWhenNotMatchedTarget(MergeWhenNotMatchedTarget { syntax })
30844 }
30845 _ => {
30846 return None;
30847 }
30848 };
30849 Some(res)
30850 }
30851 #[inline]
30852 fn syntax(&self) -> &SyntaxNode {
30853 match self {
30854 MergeWhenClause::MergeWhenMatched(it) => &it.syntax,
30855 MergeWhenClause::MergeWhenNotMatchedSource(it) => &it.syntax,
30856 MergeWhenClause::MergeWhenNotMatchedTarget(it) => &it.syntax,
30857 }
30858 }
30859}
30860impl From<MergeWhenMatched> for MergeWhenClause {
30861 #[inline]
30862 fn from(node: MergeWhenMatched) -> MergeWhenClause {
30863 MergeWhenClause::MergeWhenMatched(node)
30864 }
30865}
30866impl From<MergeWhenNotMatchedSource> for MergeWhenClause {
30867 #[inline]
30868 fn from(node: MergeWhenNotMatchedSource) -> MergeWhenClause {
30869 MergeWhenClause::MergeWhenNotMatchedSource(node)
30870 }
30871}
30872impl From<MergeWhenNotMatchedTarget> for MergeWhenClause {
30873 #[inline]
30874 fn from(node: MergeWhenNotMatchedTarget) -> MergeWhenClause {
30875 MergeWhenClause::MergeWhenNotMatchedTarget(node)
30876 }
30877}
30878impl AstNode for OnCommitAction {
30879 #[inline]
30880 fn can_cast(kind: SyntaxKind) -> bool {
30881 matches!(
30882 kind,
30883 SyntaxKind::DELETE_ROWS | SyntaxKind::DROP | SyntaxKind::PRESERVE_ROWS
30884 )
30885 }
30886 #[inline]
30887 fn cast(syntax: SyntaxNode) -> Option<Self> {
30888 let res = match syntax.kind() {
30889 SyntaxKind::DELETE_ROWS => OnCommitAction::DeleteRows(DeleteRows { syntax }),
30890 SyntaxKind::DROP => OnCommitAction::Drop(Drop { syntax }),
30891 SyntaxKind::PRESERVE_ROWS => OnCommitAction::PreserveRows(PreserveRows { syntax }),
30892 _ => {
30893 return None;
30894 }
30895 };
30896 Some(res)
30897 }
30898 #[inline]
30899 fn syntax(&self) -> &SyntaxNode {
30900 match self {
30901 OnCommitAction::DeleteRows(it) => &it.syntax,
30902 OnCommitAction::Drop(it) => &it.syntax,
30903 OnCommitAction::PreserveRows(it) => &it.syntax,
30904 }
30905 }
30906}
30907impl From<DeleteRows> for OnCommitAction {
30908 #[inline]
30909 fn from(node: DeleteRows) -> OnCommitAction {
30910 OnCommitAction::DeleteRows(node)
30911 }
30912}
30913impl From<Drop> for OnCommitAction {
30914 #[inline]
30915 fn from(node: Drop) -> OnCommitAction {
30916 OnCommitAction::Drop(node)
30917 }
30918}
30919impl From<PreserveRows> for OnCommitAction {
30920 #[inline]
30921 fn from(node: PreserveRows) -> OnCommitAction {
30922 OnCommitAction::PreserveRows(node)
30923 }
30924}
30925impl AstNode for ParamMode {
30926 #[inline]
30927 fn can_cast(kind: SyntaxKind) -> bool {
30928 matches!(
30929 kind,
30930 SyntaxKind::PARAM_IN
30931 | SyntaxKind::PARAM_IN_OUT
30932 | SyntaxKind::PARAM_OUT
30933 | SyntaxKind::PARAM_VARIADIC
30934 )
30935 }
30936 #[inline]
30937 fn cast(syntax: SyntaxNode) -> Option<Self> {
30938 let res = match syntax.kind() {
30939 SyntaxKind::PARAM_IN => ParamMode::ParamIn(ParamIn { syntax }),
30940 SyntaxKind::PARAM_IN_OUT => ParamMode::ParamInOut(ParamInOut { syntax }),
30941 SyntaxKind::PARAM_OUT => ParamMode::ParamOut(ParamOut { syntax }),
30942 SyntaxKind::PARAM_VARIADIC => ParamMode::ParamVariadic(ParamVariadic { syntax }),
30943 _ => {
30944 return None;
30945 }
30946 };
30947 Some(res)
30948 }
30949 #[inline]
30950 fn syntax(&self) -> &SyntaxNode {
30951 match self {
30952 ParamMode::ParamIn(it) => &it.syntax,
30953 ParamMode::ParamInOut(it) => &it.syntax,
30954 ParamMode::ParamOut(it) => &it.syntax,
30955 ParamMode::ParamVariadic(it) => &it.syntax,
30956 }
30957 }
30958}
30959impl From<ParamIn> for ParamMode {
30960 #[inline]
30961 fn from(node: ParamIn) -> ParamMode {
30962 ParamMode::ParamIn(node)
30963 }
30964}
30965impl From<ParamInOut> for ParamMode {
30966 #[inline]
30967 fn from(node: ParamInOut) -> ParamMode {
30968 ParamMode::ParamInOut(node)
30969 }
30970}
30971impl From<ParamOut> for ParamMode {
30972 #[inline]
30973 fn from(node: ParamOut) -> ParamMode {
30974 ParamMode::ParamOut(node)
30975 }
30976}
30977impl From<ParamVariadic> for ParamMode {
30978 #[inline]
30979 fn from(node: ParamVariadic) -> ParamMode {
30980 ParamMode::ParamVariadic(node)
30981 }
30982}
30983impl AstNode for PartitionType {
30984 #[inline]
30985 fn can_cast(kind: SyntaxKind) -> bool {
30986 matches!(
30987 kind,
30988 SyntaxKind::PARTITION_DEFAULT
30989 | SyntaxKind::PARTITION_FOR_VALUES_FROM
30990 | SyntaxKind::PARTITION_FOR_VALUES_IN
30991 | SyntaxKind::PARTITION_FOR_VALUES_WITH
30992 )
30993 }
30994 #[inline]
30995 fn cast(syntax: SyntaxNode) -> Option<Self> {
30996 let res = match syntax.kind() {
30997 SyntaxKind::PARTITION_DEFAULT => {
30998 PartitionType::PartitionDefault(PartitionDefault { syntax })
30999 }
31000 SyntaxKind::PARTITION_FOR_VALUES_FROM => {
31001 PartitionType::PartitionForValuesFrom(PartitionForValuesFrom { syntax })
31002 }
31003 SyntaxKind::PARTITION_FOR_VALUES_IN => {
31004 PartitionType::PartitionForValuesIn(PartitionForValuesIn { syntax })
31005 }
31006 SyntaxKind::PARTITION_FOR_VALUES_WITH => {
31007 PartitionType::PartitionForValuesWith(PartitionForValuesWith { syntax })
31008 }
31009 _ => {
31010 return None;
31011 }
31012 };
31013 Some(res)
31014 }
31015 #[inline]
31016 fn syntax(&self) -> &SyntaxNode {
31017 match self {
31018 PartitionType::PartitionDefault(it) => &it.syntax,
31019 PartitionType::PartitionForValuesFrom(it) => &it.syntax,
31020 PartitionType::PartitionForValuesIn(it) => &it.syntax,
31021 PartitionType::PartitionForValuesWith(it) => &it.syntax,
31022 }
31023 }
31024}
31025impl From<PartitionDefault> for PartitionType {
31026 #[inline]
31027 fn from(node: PartitionDefault) -> PartitionType {
31028 PartitionType::PartitionDefault(node)
31029 }
31030}
31031impl From<PartitionForValuesFrom> for PartitionType {
31032 #[inline]
31033 fn from(node: PartitionForValuesFrom) -> PartitionType {
31034 PartitionType::PartitionForValuesFrom(node)
31035 }
31036}
31037impl From<PartitionForValuesIn> for PartitionType {
31038 #[inline]
31039 fn from(node: PartitionForValuesIn) -> PartitionType {
31040 PartitionType::PartitionForValuesIn(node)
31041 }
31042}
31043impl From<PartitionForValuesWith> for PartitionType {
31044 #[inline]
31045 fn from(node: PartitionForValuesWith) -> PartitionType {
31046 PartitionType::PartitionForValuesWith(node)
31047 }
31048}
31049impl AstNode for PreparableStmt {
31050 #[inline]
31051 fn can_cast(kind: SyntaxKind) -> bool {
31052 matches!(
31053 kind,
31054 SyntaxKind::COMPOUND_SELECT
31055 | SyntaxKind::DELETE
31056 | SyntaxKind::INSERT
31057 | SyntaxKind::MERGE
31058 | SyntaxKind::SELECT
31059 | SyntaxKind::SELECT_INTO
31060 | SyntaxKind::TABLE
31061 | SyntaxKind::UPDATE
31062 | SyntaxKind::VALUES
31063 )
31064 }
31065 #[inline]
31066 fn cast(syntax: SyntaxNode) -> Option<Self> {
31067 let res = match syntax.kind() {
31068 SyntaxKind::COMPOUND_SELECT => {
31069 PreparableStmt::CompoundSelect(CompoundSelect { syntax })
31070 }
31071 SyntaxKind::DELETE => PreparableStmt::Delete(Delete { syntax }),
31072 SyntaxKind::INSERT => PreparableStmt::Insert(Insert { syntax }),
31073 SyntaxKind::MERGE => PreparableStmt::Merge(Merge { syntax }),
31074 SyntaxKind::SELECT => PreparableStmt::Select(Select { syntax }),
31075 SyntaxKind::SELECT_INTO => PreparableStmt::SelectInto(SelectInto { syntax }),
31076 SyntaxKind::TABLE => PreparableStmt::Table(Table { syntax }),
31077 SyntaxKind::UPDATE => PreparableStmt::Update(Update { syntax }),
31078 SyntaxKind::VALUES => PreparableStmt::Values(Values { syntax }),
31079 _ => {
31080 return None;
31081 }
31082 };
31083 Some(res)
31084 }
31085 #[inline]
31086 fn syntax(&self) -> &SyntaxNode {
31087 match self {
31088 PreparableStmt::CompoundSelect(it) => &it.syntax,
31089 PreparableStmt::Delete(it) => &it.syntax,
31090 PreparableStmt::Insert(it) => &it.syntax,
31091 PreparableStmt::Merge(it) => &it.syntax,
31092 PreparableStmt::Select(it) => &it.syntax,
31093 PreparableStmt::SelectInto(it) => &it.syntax,
31094 PreparableStmt::Table(it) => &it.syntax,
31095 PreparableStmt::Update(it) => &it.syntax,
31096 PreparableStmt::Values(it) => &it.syntax,
31097 }
31098 }
31099}
31100impl From<CompoundSelect> for PreparableStmt {
31101 #[inline]
31102 fn from(node: CompoundSelect) -> PreparableStmt {
31103 PreparableStmt::CompoundSelect(node)
31104 }
31105}
31106impl From<Delete> for PreparableStmt {
31107 #[inline]
31108 fn from(node: Delete) -> PreparableStmt {
31109 PreparableStmt::Delete(node)
31110 }
31111}
31112impl From<Insert> for PreparableStmt {
31113 #[inline]
31114 fn from(node: Insert) -> PreparableStmt {
31115 PreparableStmt::Insert(node)
31116 }
31117}
31118impl From<Merge> for PreparableStmt {
31119 #[inline]
31120 fn from(node: Merge) -> PreparableStmt {
31121 PreparableStmt::Merge(node)
31122 }
31123}
31124impl From<Select> for PreparableStmt {
31125 #[inline]
31126 fn from(node: Select) -> PreparableStmt {
31127 PreparableStmt::Select(node)
31128 }
31129}
31130impl From<SelectInto> for PreparableStmt {
31131 #[inline]
31132 fn from(node: SelectInto) -> PreparableStmt {
31133 PreparableStmt::SelectInto(node)
31134 }
31135}
31136impl From<Table> for PreparableStmt {
31137 #[inline]
31138 fn from(node: Table) -> PreparableStmt {
31139 PreparableStmt::Table(node)
31140 }
31141}
31142impl From<Update> for PreparableStmt {
31143 #[inline]
31144 fn from(node: Update) -> PreparableStmt {
31145 PreparableStmt::Update(node)
31146 }
31147}
31148impl From<Values> for PreparableStmt {
31149 #[inline]
31150 fn from(node: Values) -> PreparableStmt {
31151 PreparableStmt::Values(node)
31152 }
31153}
31154impl AstNode for RefAction {
31155 #[inline]
31156 fn can_cast(kind: SyntaxKind) -> bool {
31157 matches!(
31158 kind,
31159 SyntaxKind::CASCADE
31160 | SyntaxKind::NO_ACTION
31161 | SyntaxKind::RESTRICT
31162 | SyntaxKind::SET_DEFAULT_COLUMNS
31163 | SyntaxKind::SET_NULL_COLUMNS
31164 )
31165 }
31166 #[inline]
31167 fn cast(syntax: SyntaxNode) -> Option<Self> {
31168 let res = match syntax.kind() {
31169 SyntaxKind::CASCADE => RefAction::Cascade(Cascade { syntax }),
31170 SyntaxKind::NO_ACTION => RefAction::NoAction(NoAction { syntax }),
31171 SyntaxKind::RESTRICT => RefAction::Restrict(Restrict { syntax }),
31172 SyntaxKind::SET_DEFAULT_COLUMNS => {
31173 RefAction::SetDefaultColumns(SetDefaultColumns { syntax })
31174 }
31175 SyntaxKind::SET_NULL_COLUMNS => RefAction::SetNullColumns(SetNullColumns { syntax }),
31176 _ => {
31177 return None;
31178 }
31179 };
31180 Some(res)
31181 }
31182 #[inline]
31183 fn syntax(&self) -> &SyntaxNode {
31184 match self {
31185 RefAction::Cascade(it) => &it.syntax,
31186 RefAction::NoAction(it) => &it.syntax,
31187 RefAction::Restrict(it) => &it.syntax,
31188 RefAction::SetDefaultColumns(it) => &it.syntax,
31189 RefAction::SetNullColumns(it) => &it.syntax,
31190 }
31191 }
31192}
31193impl From<Cascade> for RefAction {
31194 #[inline]
31195 fn from(node: Cascade) -> RefAction {
31196 RefAction::Cascade(node)
31197 }
31198}
31199impl From<NoAction> for RefAction {
31200 #[inline]
31201 fn from(node: NoAction) -> RefAction {
31202 RefAction::NoAction(node)
31203 }
31204}
31205impl From<Restrict> for RefAction {
31206 #[inline]
31207 fn from(node: Restrict) -> RefAction {
31208 RefAction::Restrict(node)
31209 }
31210}
31211impl From<SetDefaultColumns> for RefAction {
31212 #[inline]
31213 fn from(node: SetDefaultColumns) -> RefAction {
31214 RefAction::SetDefaultColumns(node)
31215 }
31216}
31217impl From<SetNullColumns> for RefAction {
31218 #[inline]
31219 fn from(node: SetNullColumns) -> RefAction {
31220 RefAction::SetNullColumns(node)
31221 }
31222}
31223impl AstNode for SchemaElement {
31224 #[inline]
31225 fn can_cast(kind: SyntaxKind) -> bool {
31226 matches!(
31227 kind,
31228 SyntaxKind::CREATE_INDEX
31229 | SyntaxKind::CREATE_SEQUENCE
31230 | SyntaxKind::CREATE_TABLE
31231 | SyntaxKind::CREATE_TRIGGER
31232 | SyntaxKind::CREATE_VIEW
31233 | SyntaxKind::GRANT
31234 )
31235 }
31236 #[inline]
31237 fn cast(syntax: SyntaxNode) -> Option<Self> {
31238 let res = match syntax.kind() {
31239 SyntaxKind::CREATE_INDEX => SchemaElement::CreateIndex(CreateIndex { syntax }),
31240 SyntaxKind::CREATE_SEQUENCE => SchemaElement::CreateSequence(CreateSequence { syntax }),
31241 SyntaxKind::CREATE_TABLE => SchemaElement::CreateTable(CreateTable { syntax }),
31242 SyntaxKind::CREATE_TRIGGER => SchemaElement::CreateTrigger(CreateTrigger { syntax }),
31243 SyntaxKind::CREATE_VIEW => SchemaElement::CreateView(CreateView { syntax }),
31244 SyntaxKind::GRANT => SchemaElement::Grant(Grant { syntax }),
31245 _ => {
31246 return None;
31247 }
31248 };
31249 Some(res)
31250 }
31251 #[inline]
31252 fn syntax(&self) -> &SyntaxNode {
31253 match self {
31254 SchemaElement::CreateIndex(it) => &it.syntax,
31255 SchemaElement::CreateSequence(it) => &it.syntax,
31256 SchemaElement::CreateTable(it) => &it.syntax,
31257 SchemaElement::CreateTrigger(it) => &it.syntax,
31258 SchemaElement::CreateView(it) => &it.syntax,
31259 SchemaElement::Grant(it) => &it.syntax,
31260 }
31261 }
31262}
31263impl From<CreateIndex> for SchemaElement {
31264 #[inline]
31265 fn from(node: CreateIndex) -> SchemaElement {
31266 SchemaElement::CreateIndex(node)
31267 }
31268}
31269impl From<CreateSequence> for SchemaElement {
31270 #[inline]
31271 fn from(node: CreateSequence) -> SchemaElement {
31272 SchemaElement::CreateSequence(node)
31273 }
31274}
31275impl From<CreateTable> for SchemaElement {
31276 #[inline]
31277 fn from(node: CreateTable) -> SchemaElement {
31278 SchemaElement::CreateTable(node)
31279 }
31280}
31281impl From<CreateTrigger> for SchemaElement {
31282 #[inline]
31283 fn from(node: CreateTrigger) -> SchemaElement {
31284 SchemaElement::CreateTrigger(node)
31285 }
31286}
31287impl From<CreateView> for SchemaElement {
31288 #[inline]
31289 fn from(node: CreateView) -> SchemaElement {
31290 SchemaElement::CreateView(node)
31291 }
31292}
31293impl From<Grant> for SchemaElement {
31294 #[inline]
31295 fn from(node: Grant) -> SchemaElement {
31296 SchemaElement::Grant(node)
31297 }
31298}
31299impl AstNode for SelectVariant {
31300 #[inline]
31301 fn can_cast(kind: SyntaxKind) -> bool {
31302 matches!(
31303 kind,
31304 SyntaxKind::COMPOUND_SELECT
31305 | SyntaxKind::PAREN_SELECT
31306 | SyntaxKind::SELECT
31307 | SyntaxKind::SELECT_INTO
31308 | SyntaxKind::TABLE
31309 | SyntaxKind::VALUES
31310 )
31311 }
31312 #[inline]
31313 fn cast(syntax: SyntaxNode) -> Option<Self> {
31314 let res = match syntax.kind() {
31315 SyntaxKind::COMPOUND_SELECT => SelectVariant::CompoundSelect(CompoundSelect { syntax }),
31316 SyntaxKind::PAREN_SELECT => SelectVariant::ParenSelect(ParenSelect { syntax }),
31317 SyntaxKind::SELECT => SelectVariant::Select(Select { syntax }),
31318 SyntaxKind::SELECT_INTO => SelectVariant::SelectInto(SelectInto { syntax }),
31319 SyntaxKind::TABLE => SelectVariant::Table(Table { syntax }),
31320 SyntaxKind::VALUES => SelectVariant::Values(Values { syntax }),
31321 _ => {
31322 return None;
31323 }
31324 };
31325 Some(res)
31326 }
31327 #[inline]
31328 fn syntax(&self) -> &SyntaxNode {
31329 match self {
31330 SelectVariant::CompoundSelect(it) => &it.syntax,
31331 SelectVariant::ParenSelect(it) => &it.syntax,
31332 SelectVariant::Select(it) => &it.syntax,
31333 SelectVariant::SelectInto(it) => &it.syntax,
31334 SelectVariant::Table(it) => &it.syntax,
31335 SelectVariant::Values(it) => &it.syntax,
31336 }
31337 }
31338}
31339impl From<CompoundSelect> for SelectVariant {
31340 #[inline]
31341 fn from(node: CompoundSelect) -> SelectVariant {
31342 SelectVariant::CompoundSelect(node)
31343 }
31344}
31345impl From<ParenSelect> for SelectVariant {
31346 #[inline]
31347 fn from(node: ParenSelect) -> SelectVariant {
31348 SelectVariant::ParenSelect(node)
31349 }
31350}
31351impl From<Select> for SelectVariant {
31352 #[inline]
31353 fn from(node: Select) -> SelectVariant {
31354 SelectVariant::Select(node)
31355 }
31356}
31357impl From<SelectInto> for SelectVariant {
31358 #[inline]
31359 fn from(node: SelectInto) -> SelectVariant {
31360 SelectVariant::SelectInto(node)
31361 }
31362}
31363impl From<Table> for SelectVariant {
31364 #[inline]
31365 fn from(node: Table) -> SelectVariant {
31366 SelectVariant::Table(node)
31367 }
31368}
31369impl From<Values> for SelectVariant {
31370 #[inline]
31371 fn from(node: Values) -> SelectVariant {
31372 SelectVariant::Values(node)
31373 }
31374}
31375impl AstNode for SetColumn {
31376 #[inline]
31377 fn can_cast(kind: SyntaxKind) -> bool {
31378 matches!(
31379 kind,
31380 SyntaxKind::SET_MULTIPLE_COLUMNS | SyntaxKind::SET_SINGLE_COLUMN
31381 )
31382 }
31383 #[inline]
31384 fn cast(syntax: SyntaxNode) -> Option<Self> {
31385 let res = match syntax.kind() {
31386 SyntaxKind::SET_MULTIPLE_COLUMNS => {
31387 SetColumn::SetMultipleColumns(SetMultipleColumns { syntax })
31388 }
31389 SyntaxKind::SET_SINGLE_COLUMN => SetColumn::SetSingleColumn(SetSingleColumn { syntax }),
31390 _ => {
31391 return None;
31392 }
31393 };
31394 Some(res)
31395 }
31396 #[inline]
31397 fn syntax(&self) -> &SyntaxNode {
31398 match self {
31399 SetColumn::SetMultipleColumns(it) => &it.syntax,
31400 SetColumn::SetSingleColumn(it) => &it.syntax,
31401 }
31402 }
31403}
31404impl From<SetMultipleColumns> for SetColumn {
31405 #[inline]
31406 fn from(node: SetMultipleColumns) -> SetColumn {
31407 SetColumn::SetMultipleColumns(node)
31408 }
31409}
31410impl From<SetSingleColumn> for SetColumn {
31411 #[inline]
31412 fn from(node: SetSingleColumn) -> SetColumn {
31413 SetColumn::SetSingleColumn(node)
31414 }
31415}
31416impl AstNode for Stmt {
31417 #[inline]
31418 fn can_cast(kind: SyntaxKind) -> bool {
31419 matches!(
31420 kind,
31421 SyntaxKind::ALTER_AGGREGATE
31422 | SyntaxKind::ALTER_COLLATION
31423 | SyntaxKind::ALTER_CONVERSION
31424 | SyntaxKind::ALTER_DATABASE
31425 | SyntaxKind::ALTER_DEFAULT_PRIVILEGES
31426 | SyntaxKind::ALTER_DOMAIN
31427 | SyntaxKind::ALTER_EVENT_TRIGGER
31428 | SyntaxKind::ALTER_EXTENSION
31429 | SyntaxKind::ALTER_FOREIGN_DATA_WRAPPER
31430 | SyntaxKind::ALTER_FOREIGN_TABLE
31431 | SyntaxKind::ALTER_FUNCTION
31432 | SyntaxKind::ALTER_GROUP
31433 | SyntaxKind::ALTER_INDEX
31434 | SyntaxKind::ALTER_LANGUAGE
31435 | SyntaxKind::ALTER_LARGE_OBJECT
31436 | SyntaxKind::ALTER_MATERIALIZED_VIEW
31437 | SyntaxKind::ALTER_OPERATOR
31438 | SyntaxKind::ALTER_OPERATOR_CLASS
31439 | SyntaxKind::ALTER_OPERATOR_FAMILY
31440 | SyntaxKind::ALTER_POLICY
31441 | SyntaxKind::ALTER_PROCEDURE
31442 | SyntaxKind::ALTER_PUBLICATION
31443 | SyntaxKind::ALTER_ROLE
31444 | SyntaxKind::ALTER_ROUTINE
31445 | SyntaxKind::ALTER_RULE
31446 | SyntaxKind::ALTER_SCHEMA
31447 | SyntaxKind::ALTER_SEQUENCE
31448 | SyntaxKind::ALTER_SERVER
31449 | SyntaxKind::ALTER_STATISTICS
31450 | SyntaxKind::ALTER_SUBSCRIPTION
31451 | SyntaxKind::ALTER_SYSTEM
31452 | SyntaxKind::ALTER_TABLE
31453 | SyntaxKind::ALTER_TABLESPACE
31454 | SyntaxKind::ALTER_TEXT_SEARCH_CONFIGURATION
31455 | SyntaxKind::ALTER_TEXT_SEARCH_DICTIONARY
31456 | SyntaxKind::ALTER_TEXT_SEARCH_PARSER
31457 | SyntaxKind::ALTER_TEXT_SEARCH_TEMPLATE
31458 | SyntaxKind::ALTER_TRIGGER
31459 | SyntaxKind::ALTER_TYPE
31460 | SyntaxKind::ALTER_USER
31461 | SyntaxKind::ALTER_USER_MAPPING
31462 | SyntaxKind::ALTER_VIEW
31463 | SyntaxKind::ANALYZE
31464 | SyntaxKind::BEGIN
31465 | SyntaxKind::CALL
31466 | SyntaxKind::CHECKPOINT
31467 | SyntaxKind::CLOSE
31468 | SyntaxKind::CLUSTER
31469 | SyntaxKind::COMMENT_ON
31470 | SyntaxKind::COMMIT
31471 | SyntaxKind::COPY
31472 | SyntaxKind::CREATE_ACCESS_METHOD
31473 | SyntaxKind::CREATE_AGGREGATE
31474 | SyntaxKind::CREATE_CAST
31475 | SyntaxKind::CREATE_COLLATION
31476 | SyntaxKind::CREATE_CONVERSION
31477 | SyntaxKind::CREATE_DATABASE
31478 | SyntaxKind::CREATE_DOMAIN
31479 | SyntaxKind::CREATE_EVENT_TRIGGER
31480 | SyntaxKind::CREATE_EXTENSION
31481 | SyntaxKind::CREATE_FOREIGN_DATA_WRAPPER
31482 | SyntaxKind::CREATE_FOREIGN_TABLE
31483 | SyntaxKind::CREATE_FUNCTION
31484 | SyntaxKind::CREATE_GROUP
31485 | SyntaxKind::CREATE_INDEX
31486 | SyntaxKind::CREATE_LANGUAGE
31487 | SyntaxKind::CREATE_MATERIALIZED_VIEW
31488 | SyntaxKind::CREATE_OPERATOR
31489 | SyntaxKind::CREATE_OPERATOR_CLASS
31490 | SyntaxKind::CREATE_OPERATOR_FAMILY
31491 | SyntaxKind::CREATE_POLICY
31492 | SyntaxKind::CREATE_PROCEDURE
31493 | SyntaxKind::CREATE_PUBLICATION
31494 | SyntaxKind::CREATE_ROLE
31495 | SyntaxKind::CREATE_RULE
31496 | SyntaxKind::CREATE_SCHEMA
31497 | SyntaxKind::CREATE_SEQUENCE
31498 | SyntaxKind::CREATE_SERVER
31499 | SyntaxKind::CREATE_STATISTICS
31500 | SyntaxKind::CREATE_SUBSCRIPTION
31501 | SyntaxKind::CREATE_TABLE
31502 | SyntaxKind::CREATE_TABLE_AS
31503 | SyntaxKind::CREATE_TABLESPACE
31504 | SyntaxKind::CREATE_TEXT_SEARCH_CONFIGURATION
31505 | SyntaxKind::CREATE_TEXT_SEARCH_DICTIONARY
31506 | SyntaxKind::CREATE_TEXT_SEARCH_PARSER
31507 | SyntaxKind::CREATE_TEXT_SEARCH_TEMPLATE
31508 | SyntaxKind::CREATE_TRANSFORM
31509 | SyntaxKind::CREATE_TRIGGER
31510 | SyntaxKind::CREATE_TYPE
31511 | SyntaxKind::CREATE_USER
31512 | SyntaxKind::CREATE_USER_MAPPING
31513 | SyntaxKind::CREATE_VIEW
31514 | SyntaxKind::DEALLOCATE
31515 | SyntaxKind::DECLARE
31516 | SyntaxKind::DELETE
31517 | SyntaxKind::DISCARD
31518 | SyntaxKind::DO
31519 | SyntaxKind::DROP_ACCESS_METHOD
31520 | SyntaxKind::DROP_AGGREGATE
31521 | SyntaxKind::DROP_CAST
31522 | SyntaxKind::DROP_COLLATION
31523 | SyntaxKind::DROP_CONVERSION
31524 | SyntaxKind::DROP_DATABASE
31525 | SyntaxKind::DROP_DOMAIN
31526 | SyntaxKind::DROP_EVENT_TRIGGER
31527 | SyntaxKind::DROP_EXTENSION
31528 | SyntaxKind::DROP_FOREIGN_DATA_WRAPPER
31529 | SyntaxKind::DROP_FOREIGN_TABLE
31530 | SyntaxKind::DROP_FUNCTION
31531 | SyntaxKind::DROP_GROUP
31532 | SyntaxKind::DROP_INDEX
31533 | SyntaxKind::DROP_LANGUAGE
31534 | SyntaxKind::DROP_MATERIALIZED_VIEW
31535 | SyntaxKind::DROP_OPERATOR
31536 | SyntaxKind::DROP_OPERATOR_CLASS
31537 | SyntaxKind::DROP_OPERATOR_FAMILY
31538 | SyntaxKind::DROP_OWNED
31539 | SyntaxKind::DROP_POLICY
31540 | SyntaxKind::DROP_PROCEDURE
31541 | SyntaxKind::DROP_PUBLICATION
31542 | SyntaxKind::DROP_ROLE
31543 | SyntaxKind::DROP_ROUTINE
31544 | SyntaxKind::DROP_RULE
31545 | SyntaxKind::DROP_SCHEMA
31546 | SyntaxKind::DROP_SEQUENCE
31547 | SyntaxKind::DROP_SERVER
31548 | SyntaxKind::DROP_STATISTICS
31549 | SyntaxKind::DROP_SUBSCRIPTION
31550 | SyntaxKind::DROP_TABLE
31551 | SyntaxKind::DROP_TABLESPACE
31552 | SyntaxKind::DROP_TEXT_SEARCH_CONFIG
31553 | SyntaxKind::DROP_TEXT_SEARCH_DICT
31554 | SyntaxKind::DROP_TEXT_SEARCH_PARSER
31555 | SyntaxKind::DROP_TEXT_SEARCH_TEMPLATE
31556 | SyntaxKind::DROP_TRANSFORM
31557 | SyntaxKind::DROP_TRIGGER
31558 | SyntaxKind::DROP_TYPE
31559 | SyntaxKind::DROP_USER
31560 | SyntaxKind::DROP_USER_MAPPING
31561 | SyntaxKind::DROP_VIEW
31562 | SyntaxKind::EXECUTE
31563 | SyntaxKind::EXPLAIN
31564 | SyntaxKind::FETCH
31565 | SyntaxKind::GRANT
31566 | SyntaxKind::IMPORT_FOREIGN_SCHEMA
31567 | SyntaxKind::INSERT
31568 | SyntaxKind::LISTEN
31569 | SyntaxKind::LOAD
31570 | SyntaxKind::LOCK
31571 | SyntaxKind::MERGE
31572 | SyntaxKind::MOVE
31573 | SyntaxKind::NOTIFY
31574 | SyntaxKind::PAREN_SELECT
31575 | SyntaxKind::PREPARE
31576 | SyntaxKind::PREPARE_TRANSACTION
31577 | SyntaxKind::REASSIGN
31578 | SyntaxKind::REFRESH
31579 | SyntaxKind::REINDEX
31580 | SyntaxKind::RELEASE_SAVEPOINT
31581 | SyntaxKind::RESET
31582 | SyntaxKind::RESET_SESSION_AUTH
31583 | SyntaxKind::REVOKE
31584 | SyntaxKind::ROLLBACK
31585 | SyntaxKind::SAVEPOINT
31586 | SyntaxKind::SECURITY_LABEL
31587 | SyntaxKind::SELECT
31588 | SyntaxKind::SELECT_INTO
31589 | SyntaxKind::SET
31590 | SyntaxKind::SET_CONSTRAINTS
31591 | SyntaxKind::SET_ROLE
31592 | SyntaxKind::SET_SESSION_AUTH
31593 | SyntaxKind::SET_TRANSACTION
31594 | SyntaxKind::SHOW
31595 | SyntaxKind::TABLE
31596 | SyntaxKind::TRUNCATE
31597 | SyntaxKind::UNLISTEN
31598 | SyntaxKind::UPDATE
31599 | SyntaxKind::VACUUM
31600 | SyntaxKind::VALUES
31601 )
31602 }
31603 #[inline]
31604 fn cast(syntax: SyntaxNode) -> Option<Self> {
31605 let res = match syntax.kind() {
31606 SyntaxKind::ALTER_AGGREGATE => Stmt::AlterAggregate(AlterAggregate { syntax }),
31607 SyntaxKind::ALTER_COLLATION => Stmt::AlterCollation(AlterCollation { syntax }),
31608 SyntaxKind::ALTER_CONVERSION => Stmt::AlterConversion(AlterConversion { syntax }),
31609 SyntaxKind::ALTER_DATABASE => Stmt::AlterDatabase(AlterDatabase { syntax }),
31610 SyntaxKind::ALTER_DEFAULT_PRIVILEGES => {
31611 Stmt::AlterDefaultPrivileges(AlterDefaultPrivileges { syntax })
31612 }
31613 SyntaxKind::ALTER_DOMAIN => Stmt::AlterDomain(AlterDomain { syntax }),
31614 SyntaxKind::ALTER_EVENT_TRIGGER => {
31615 Stmt::AlterEventTrigger(AlterEventTrigger { syntax })
31616 }
31617 SyntaxKind::ALTER_EXTENSION => Stmt::AlterExtension(AlterExtension { syntax }),
31618 SyntaxKind::ALTER_FOREIGN_DATA_WRAPPER => {
31619 Stmt::AlterForeignDataWrapper(AlterForeignDataWrapper { syntax })
31620 }
31621 SyntaxKind::ALTER_FOREIGN_TABLE => {
31622 Stmt::AlterForeignTable(AlterForeignTable { syntax })
31623 }
31624 SyntaxKind::ALTER_FUNCTION => Stmt::AlterFunction(AlterFunction { syntax }),
31625 SyntaxKind::ALTER_GROUP => Stmt::AlterGroup(AlterGroup { syntax }),
31626 SyntaxKind::ALTER_INDEX => Stmt::AlterIndex(AlterIndex { syntax }),
31627 SyntaxKind::ALTER_LANGUAGE => Stmt::AlterLanguage(AlterLanguage { syntax }),
31628 SyntaxKind::ALTER_LARGE_OBJECT => Stmt::AlterLargeObject(AlterLargeObject { syntax }),
31629 SyntaxKind::ALTER_MATERIALIZED_VIEW => {
31630 Stmt::AlterMaterializedView(AlterMaterializedView { syntax })
31631 }
31632 SyntaxKind::ALTER_OPERATOR => Stmt::AlterOperator(AlterOperator { syntax }),
31633 SyntaxKind::ALTER_OPERATOR_CLASS => {
31634 Stmt::AlterOperatorClass(AlterOperatorClass { syntax })
31635 }
31636 SyntaxKind::ALTER_OPERATOR_FAMILY => {
31637 Stmt::AlterOperatorFamily(AlterOperatorFamily { syntax })
31638 }
31639 SyntaxKind::ALTER_POLICY => Stmt::AlterPolicy(AlterPolicy { syntax }),
31640 SyntaxKind::ALTER_PROCEDURE => Stmt::AlterProcedure(AlterProcedure { syntax }),
31641 SyntaxKind::ALTER_PUBLICATION => Stmt::AlterPublication(AlterPublication { syntax }),
31642 SyntaxKind::ALTER_ROLE => Stmt::AlterRole(AlterRole { syntax }),
31643 SyntaxKind::ALTER_ROUTINE => Stmt::AlterRoutine(AlterRoutine { syntax }),
31644 SyntaxKind::ALTER_RULE => Stmt::AlterRule(AlterRule { syntax }),
31645 SyntaxKind::ALTER_SCHEMA => Stmt::AlterSchema(AlterSchema { syntax }),
31646 SyntaxKind::ALTER_SEQUENCE => Stmt::AlterSequence(AlterSequence { syntax }),
31647 SyntaxKind::ALTER_SERVER => Stmt::AlterServer(AlterServer { syntax }),
31648 SyntaxKind::ALTER_STATISTICS => Stmt::AlterStatistics(AlterStatistics { syntax }),
31649 SyntaxKind::ALTER_SUBSCRIPTION => Stmt::AlterSubscription(AlterSubscription { syntax }),
31650 SyntaxKind::ALTER_SYSTEM => Stmt::AlterSystem(AlterSystem { syntax }),
31651 SyntaxKind::ALTER_TABLE => Stmt::AlterTable(AlterTable { syntax }),
31652 SyntaxKind::ALTER_TABLESPACE => Stmt::AlterTablespace(AlterTablespace { syntax }),
31653 SyntaxKind::ALTER_TEXT_SEARCH_CONFIGURATION => {
31654 Stmt::AlterTextSearchConfiguration(AlterTextSearchConfiguration { syntax })
31655 }
31656 SyntaxKind::ALTER_TEXT_SEARCH_DICTIONARY => {
31657 Stmt::AlterTextSearchDictionary(AlterTextSearchDictionary { syntax })
31658 }
31659 SyntaxKind::ALTER_TEXT_SEARCH_PARSER => {
31660 Stmt::AlterTextSearchParser(AlterTextSearchParser { syntax })
31661 }
31662 SyntaxKind::ALTER_TEXT_SEARCH_TEMPLATE => {
31663 Stmt::AlterTextSearchTemplate(AlterTextSearchTemplate { syntax })
31664 }
31665 SyntaxKind::ALTER_TRIGGER => Stmt::AlterTrigger(AlterTrigger { syntax }),
31666 SyntaxKind::ALTER_TYPE => Stmt::AlterType(AlterType { syntax }),
31667 SyntaxKind::ALTER_USER => Stmt::AlterUser(AlterUser { syntax }),
31668 SyntaxKind::ALTER_USER_MAPPING => Stmt::AlterUserMapping(AlterUserMapping { syntax }),
31669 SyntaxKind::ALTER_VIEW => Stmt::AlterView(AlterView { syntax }),
31670 SyntaxKind::ANALYZE => Stmt::Analyze(Analyze { syntax }),
31671 SyntaxKind::BEGIN => Stmt::Begin(Begin { syntax }),
31672 SyntaxKind::CALL => Stmt::Call(Call { syntax }),
31673 SyntaxKind::CHECKPOINT => Stmt::Checkpoint(Checkpoint { syntax }),
31674 SyntaxKind::CLOSE => Stmt::Close(Close { syntax }),
31675 SyntaxKind::CLUSTER => Stmt::Cluster(Cluster { syntax }),
31676 SyntaxKind::COMMENT_ON => Stmt::CommentOn(CommentOn { syntax }),
31677 SyntaxKind::COMMIT => Stmt::Commit(Commit { syntax }),
31678 SyntaxKind::COPY => Stmt::Copy(Copy { syntax }),
31679 SyntaxKind::CREATE_ACCESS_METHOD => {
31680 Stmt::CreateAccessMethod(CreateAccessMethod { syntax })
31681 }
31682 SyntaxKind::CREATE_AGGREGATE => Stmt::CreateAggregate(CreateAggregate { syntax }),
31683 SyntaxKind::CREATE_CAST => Stmt::CreateCast(CreateCast { syntax }),
31684 SyntaxKind::CREATE_COLLATION => Stmt::CreateCollation(CreateCollation { syntax }),
31685 SyntaxKind::CREATE_CONVERSION => Stmt::CreateConversion(CreateConversion { syntax }),
31686 SyntaxKind::CREATE_DATABASE => Stmt::CreateDatabase(CreateDatabase { syntax }),
31687 SyntaxKind::CREATE_DOMAIN => Stmt::CreateDomain(CreateDomain { syntax }),
31688 SyntaxKind::CREATE_EVENT_TRIGGER => {
31689 Stmt::CreateEventTrigger(CreateEventTrigger { syntax })
31690 }
31691 SyntaxKind::CREATE_EXTENSION => Stmt::CreateExtension(CreateExtension { syntax }),
31692 SyntaxKind::CREATE_FOREIGN_DATA_WRAPPER => {
31693 Stmt::CreateForeignDataWrapper(CreateForeignDataWrapper { syntax })
31694 }
31695 SyntaxKind::CREATE_FOREIGN_TABLE => {
31696 Stmt::CreateForeignTable(CreateForeignTable { syntax })
31697 }
31698 SyntaxKind::CREATE_FUNCTION => Stmt::CreateFunction(CreateFunction { syntax }),
31699 SyntaxKind::CREATE_GROUP => Stmt::CreateGroup(CreateGroup { syntax }),
31700 SyntaxKind::CREATE_INDEX => Stmt::CreateIndex(CreateIndex { syntax }),
31701 SyntaxKind::CREATE_LANGUAGE => Stmt::CreateLanguage(CreateLanguage { syntax }),
31702 SyntaxKind::CREATE_MATERIALIZED_VIEW => {
31703 Stmt::CreateMaterializedView(CreateMaterializedView { syntax })
31704 }
31705 SyntaxKind::CREATE_OPERATOR => Stmt::CreateOperator(CreateOperator { syntax }),
31706 SyntaxKind::CREATE_OPERATOR_CLASS => {
31707 Stmt::CreateOperatorClass(CreateOperatorClass { syntax })
31708 }
31709 SyntaxKind::CREATE_OPERATOR_FAMILY => {
31710 Stmt::CreateOperatorFamily(CreateOperatorFamily { syntax })
31711 }
31712 SyntaxKind::CREATE_POLICY => Stmt::CreatePolicy(CreatePolicy { syntax }),
31713 SyntaxKind::CREATE_PROCEDURE => Stmt::CreateProcedure(CreateProcedure { syntax }),
31714 SyntaxKind::CREATE_PUBLICATION => Stmt::CreatePublication(CreatePublication { syntax }),
31715 SyntaxKind::CREATE_ROLE => Stmt::CreateRole(CreateRole { syntax }),
31716 SyntaxKind::CREATE_RULE => Stmt::CreateRule(CreateRule { syntax }),
31717 SyntaxKind::CREATE_SCHEMA => Stmt::CreateSchema(CreateSchema { syntax }),
31718 SyntaxKind::CREATE_SEQUENCE => Stmt::CreateSequence(CreateSequence { syntax }),
31719 SyntaxKind::CREATE_SERVER => Stmt::CreateServer(CreateServer { syntax }),
31720 SyntaxKind::CREATE_STATISTICS => Stmt::CreateStatistics(CreateStatistics { syntax }),
31721 SyntaxKind::CREATE_SUBSCRIPTION => {
31722 Stmt::CreateSubscription(CreateSubscription { syntax })
31723 }
31724 SyntaxKind::CREATE_TABLE => Stmt::CreateTable(CreateTable { syntax }),
31725 SyntaxKind::CREATE_TABLE_AS => Stmt::CreateTableAs(CreateTableAs { syntax }),
31726 SyntaxKind::CREATE_TABLESPACE => Stmt::CreateTablespace(CreateTablespace { syntax }),
31727 SyntaxKind::CREATE_TEXT_SEARCH_CONFIGURATION => {
31728 Stmt::CreateTextSearchConfiguration(CreateTextSearchConfiguration { syntax })
31729 }
31730 SyntaxKind::CREATE_TEXT_SEARCH_DICTIONARY => {
31731 Stmt::CreateTextSearchDictionary(CreateTextSearchDictionary { syntax })
31732 }
31733 SyntaxKind::CREATE_TEXT_SEARCH_PARSER => {
31734 Stmt::CreateTextSearchParser(CreateTextSearchParser { syntax })
31735 }
31736 SyntaxKind::CREATE_TEXT_SEARCH_TEMPLATE => {
31737 Stmt::CreateTextSearchTemplate(CreateTextSearchTemplate { syntax })
31738 }
31739 SyntaxKind::CREATE_TRANSFORM => Stmt::CreateTransform(CreateTransform { syntax }),
31740 SyntaxKind::CREATE_TRIGGER => Stmt::CreateTrigger(CreateTrigger { syntax }),
31741 SyntaxKind::CREATE_TYPE => Stmt::CreateType(CreateType { syntax }),
31742 SyntaxKind::CREATE_USER => Stmt::CreateUser(CreateUser { syntax }),
31743 SyntaxKind::CREATE_USER_MAPPING => {
31744 Stmt::CreateUserMapping(CreateUserMapping { syntax })
31745 }
31746 SyntaxKind::CREATE_VIEW => Stmt::CreateView(CreateView { syntax }),
31747 SyntaxKind::DEALLOCATE => Stmt::Deallocate(Deallocate { syntax }),
31748 SyntaxKind::DECLARE => Stmt::Declare(Declare { syntax }),
31749 SyntaxKind::DELETE => Stmt::Delete(Delete { syntax }),
31750 SyntaxKind::DISCARD => Stmt::Discard(Discard { syntax }),
31751 SyntaxKind::DO => Stmt::Do(Do { syntax }),
31752 SyntaxKind::DROP_ACCESS_METHOD => Stmt::DropAccessMethod(DropAccessMethod { syntax }),
31753 SyntaxKind::DROP_AGGREGATE => Stmt::DropAggregate(DropAggregate { syntax }),
31754 SyntaxKind::DROP_CAST => Stmt::DropCast(DropCast { syntax }),
31755 SyntaxKind::DROP_COLLATION => Stmt::DropCollation(DropCollation { syntax }),
31756 SyntaxKind::DROP_CONVERSION => Stmt::DropConversion(DropConversion { syntax }),
31757 SyntaxKind::DROP_DATABASE => Stmt::DropDatabase(DropDatabase { syntax }),
31758 SyntaxKind::DROP_DOMAIN => Stmt::DropDomain(DropDomain { syntax }),
31759 SyntaxKind::DROP_EVENT_TRIGGER => Stmt::DropEventTrigger(DropEventTrigger { syntax }),
31760 SyntaxKind::DROP_EXTENSION => Stmt::DropExtension(DropExtension { syntax }),
31761 SyntaxKind::DROP_FOREIGN_DATA_WRAPPER => {
31762 Stmt::DropForeignDataWrapper(DropForeignDataWrapper { syntax })
31763 }
31764 SyntaxKind::DROP_FOREIGN_TABLE => Stmt::DropForeignTable(DropForeignTable { syntax }),
31765 SyntaxKind::DROP_FUNCTION => Stmt::DropFunction(DropFunction { syntax }),
31766 SyntaxKind::DROP_GROUP => Stmt::DropGroup(DropGroup { syntax }),
31767 SyntaxKind::DROP_INDEX => Stmt::DropIndex(DropIndex { syntax }),
31768 SyntaxKind::DROP_LANGUAGE => Stmt::DropLanguage(DropLanguage { syntax }),
31769 SyntaxKind::DROP_MATERIALIZED_VIEW => {
31770 Stmt::DropMaterializedView(DropMaterializedView { syntax })
31771 }
31772 SyntaxKind::DROP_OPERATOR => Stmt::DropOperator(DropOperator { syntax }),
31773 SyntaxKind::DROP_OPERATOR_CLASS => {
31774 Stmt::DropOperatorClass(DropOperatorClass { syntax })
31775 }
31776 SyntaxKind::DROP_OPERATOR_FAMILY => {
31777 Stmt::DropOperatorFamily(DropOperatorFamily { syntax })
31778 }
31779 SyntaxKind::DROP_OWNED => Stmt::DropOwned(DropOwned { syntax }),
31780 SyntaxKind::DROP_POLICY => Stmt::DropPolicy(DropPolicy { syntax }),
31781 SyntaxKind::DROP_PROCEDURE => Stmt::DropProcedure(DropProcedure { syntax }),
31782 SyntaxKind::DROP_PUBLICATION => Stmt::DropPublication(DropPublication { syntax }),
31783 SyntaxKind::DROP_ROLE => Stmt::DropRole(DropRole { syntax }),
31784 SyntaxKind::DROP_ROUTINE => Stmt::DropRoutine(DropRoutine { syntax }),
31785 SyntaxKind::DROP_RULE => Stmt::DropRule(DropRule { syntax }),
31786 SyntaxKind::DROP_SCHEMA => Stmt::DropSchema(DropSchema { syntax }),
31787 SyntaxKind::DROP_SEQUENCE => Stmt::DropSequence(DropSequence { syntax }),
31788 SyntaxKind::DROP_SERVER => Stmt::DropServer(DropServer { syntax }),
31789 SyntaxKind::DROP_STATISTICS => Stmt::DropStatistics(DropStatistics { syntax }),
31790 SyntaxKind::DROP_SUBSCRIPTION => Stmt::DropSubscription(DropSubscription { syntax }),
31791 SyntaxKind::DROP_TABLE => Stmt::DropTable(DropTable { syntax }),
31792 SyntaxKind::DROP_TABLESPACE => Stmt::DropTablespace(DropTablespace { syntax }),
31793 SyntaxKind::DROP_TEXT_SEARCH_CONFIG => {
31794 Stmt::DropTextSearchConfig(DropTextSearchConfig { syntax })
31795 }
31796 SyntaxKind::DROP_TEXT_SEARCH_DICT => {
31797 Stmt::DropTextSearchDict(DropTextSearchDict { syntax })
31798 }
31799 SyntaxKind::DROP_TEXT_SEARCH_PARSER => {
31800 Stmt::DropTextSearchParser(DropTextSearchParser { syntax })
31801 }
31802 SyntaxKind::DROP_TEXT_SEARCH_TEMPLATE => {
31803 Stmt::DropTextSearchTemplate(DropTextSearchTemplate { syntax })
31804 }
31805 SyntaxKind::DROP_TRANSFORM => Stmt::DropTransform(DropTransform { syntax }),
31806 SyntaxKind::DROP_TRIGGER => Stmt::DropTrigger(DropTrigger { syntax }),
31807 SyntaxKind::DROP_TYPE => Stmt::DropType(DropType { syntax }),
31808 SyntaxKind::DROP_USER => Stmt::DropUser(DropUser { syntax }),
31809 SyntaxKind::DROP_USER_MAPPING => Stmt::DropUserMapping(DropUserMapping { syntax }),
31810 SyntaxKind::DROP_VIEW => Stmt::DropView(DropView { syntax }),
31811 SyntaxKind::EXECUTE => Stmt::Execute(Execute { syntax }),
31812 SyntaxKind::EXPLAIN => Stmt::Explain(Explain { syntax }),
31813 SyntaxKind::FETCH => Stmt::Fetch(Fetch { syntax }),
31814 SyntaxKind::GRANT => Stmt::Grant(Grant { syntax }),
31815 SyntaxKind::IMPORT_FOREIGN_SCHEMA => {
31816 Stmt::ImportForeignSchema(ImportForeignSchema { syntax })
31817 }
31818 SyntaxKind::INSERT => Stmt::Insert(Insert { syntax }),
31819 SyntaxKind::LISTEN => Stmt::Listen(Listen { syntax }),
31820 SyntaxKind::LOAD => Stmt::Load(Load { syntax }),
31821 SyntaxKind::LOCK => Stmt::Lock(Lock { syntax }),
31822 SyntaxKind::MERGE => Stmt::Merge(Merge { syntax }),
31823 SyntaxKind::MOVE => Stmt::Move(Move { syntax }),
31824 SyntaxKind::NOTIFY => Stmt::Notify(Notify { syntax }),
31825 SyntaxKind::PAREN_SELECT => Stmt::ParenSelect(ParenSelect { syntax }),
31826 SyntaxKind::PREPARE => Stmt::Prepare(Prepare { syntax }),
31827 SyntaxKind::PREPARE_TRANSACTION => {
31828 Stmt::PrepareTransaction(PrepareTransaction { syntax })
31829 }
31830 SyntaxKind::REASSIGN => Stmt::Reassign(Reassign { syntax }),
31831 SyntaxKind::REFRESH => Stmt::Refresh(Refresh { syntax }),
31832 SyntaxKind::REINDEX => Stmt::Reindex(Reindex { syntax }),
31833 SyntaxKind::RELEASE_SAVEPOINT => Stmt::ReleaseSavepoint(ReleaseSavepoint { syntax }),
31834 SyntaxKind::RESET => Stmt::Reset(Reset { syntax }),
31835 SyntaxKind::RESET_SESSION_AUTH => Stmt::ResetSessionAuth(ResetSessionAuth { syntax }),
31836 SyntaxKind::REVOKE => Stmt::Revoke(Revoke { syntax }),
31837 SyntaxKind::ROLLBACK => Stmt::Rollback(Rollback { syntax }),
31838 SyntaxKind::SAVEPOINT => Stmt::Savepoint(Savepoint { syntax }),
31839 SyntaxKind::SECURITY_LABEL => Stmt::SecurityLabel(SecurityLabel { syntax }),
31840 SyntaxKind::SELECT => Stmt::Select(Select { syntax }),
31841 SyntaxKind::SELECT_INTO => Stmt::SelectInto(SelectInto { syntax }),
31842 SyntaxKind::SET => Stmt::Set(Set { syntax }),
31843 SyntaxKind::SET_CONSTRAINTS => Stmt::SetConstraints(SetConstraints { syntax }),
31844 SyntaxKind::SET_ROLE => Stmt::SetRole(SetRole { syntax }),
31845 SyntaxKind::SET_SESSION_AUTH => Stmt::SetSessionAuth(SetSessionAuth { syntax }),
31846 SyntaxKind::SET_TRANSACTION => Stmt::SetTransaction(SetTransaction { syntax }),
31847 SyntaxKind::SHOW => Stmt::Show(Show { syntax }),
31848 SyntaxKind::TABLE => Stmt::Table(Table { syntax }),
31849 SyntaxKind::TRUNCATE => Stmt::Truncate(Truncate { syntax }),
31850 SyntaxKind::UNLISTEN => Stmt::Unlisten(Unlisten { syntax }),
31851 SyntaxKind::UPDATE => Stmt::Update(Update { syntax }),
31852 SyntaxKind::VACUUM => Stmt::Vacuum(Vacuum { syntax }),
31853 SyntaxKind::VALUES => Stmt::Values(Values { syntax }),
31854 _ => {
31855 return None;
31856 }
31857 };
31858 Some(res)
31859 }
31860 #[inline]
31861 fn syntax(&self) -> &SyntaxNode {
31862 match self {
31863 Stmt::AlterAggregate(it) => &it.syntax,
31864 Stmt::AlterCollation(it) => &it.syntax,
31865 Stmt::AlterConversion(it) => &it.syntax,
31866 Stmt::AlterDatabase(it) => &it.syntax,
31867 Stmt::AlterDefaultPrivileges(it) => &it.syntax,
31868 Stmt::AlterDomain(it) => &it.syntax,
31869 Stmt::AlterEventTrigger(it) => &it.syntax,
31870 Stmt::AlterExtension(it) => &it.syntax,
31871 Stmt::AlterForeignDataWrapper(it) => &it.syntax,
31872 Stmt::AlterForeignTable(it) => &it.syntax,
31873 Stmt::AlterFunction(it) => &it.syntax,
31874 Stmt::AlterGroup(it) => &it.syntax,
31875 Stmt::AlterIndex(it) => &it.syntax,
31876 Stmt::AlterLanguage(it) => &it.syntax,
31877 Stmt::AlterLargeObject(it) => &it.syntax,
31878 Stmt::AlterMaterializedView(it) => &it.syntax,
31879 Stmt::AlterOperator(it) => &it.syntax,
31880 Stmt::AlterOperatorClass(it) => &it.syntax,
31881 Stmt::AlterOperatorFamily(it) => &it.syntax,
31882 Stmt::AlterPolicy(it) => &it.syntax,
31883 Stmt::AlterProcedure(it) => &it.syntax,
31884 Stmt::AlterPublication(it) => &it.syntax,
31885 Stmt::AlterRole(it) => &it.syntax,
31886 Stmt::AlterRoutine(it) => &it.syntax,
31887 Stmt::AlterRule(it) => &it.syntax,
31888 Stmt::AlterSchema(it) => &it.syntax,
31889 Stmt::AlterSequence(it) => &it.syntax,
31890 Stmt::AlterServer(it) => &it.syntax,
31891 Stmt::AlterStatistics(it) => &it.syntax,
31892 Stmt::AlterSubscription(it) => &it.syntax,
31893 Stmt::AlterSystem(it) => &it.syntax,
31894 Stmt::AlterTable(it) => &it.syntax,
31895 Stmt::AlterTablespace(it) => &it.syntax,
31896 Stmt::AlterTextSearchConfiguration(it) => &it.syntax,
31897 Stmt::AlterTextSearchDictionary(it) => &it.syntax,
31898 Stmt::AlterTextSearchParser(it) => &it.syntax,
31899 Stmt::AlterTextSearchTemplate(it) => &it.syntax,
31900 Stmt::AlterTrigger(it) => &it.syntax,
31901 Stmt::AlterType(it) => &it.syntax,
31902 Stmt::AlterUser(it) => &it.syntax,
31903 Stmt::AlterUserMapping(it) => &it.syntax,
31904 Stmt::AlterView(it) => &it.syntax,
31905 Stmt::Analyze(it) => &it.syntax,
31906 Stmt::Begin(it) => &it.syntax,
31907 Stmt::Call(it) => &it.syntax,
31908 Stmt::Checkpoint(it) => &it.syntax,
31909 Stmt::Close(it) => &it.syntax,
31910 Stmt::Cluster(it) => &it.syntax,
31911 Stmt::CommentOn(it) => &it.syntax,
31912 Stmt::Commit(it) => &it.syntax,
31913 Stmt::Copy(it) => &it.syntax,
31914 Stmt::CreateAccessMethod(it) => &it.syntax,
31915 Stmt::CreateAggregate(it) => &it.syntax,
31916 Stmt::CreateCast(it) => &it.syntax,
31917 Stmt::CreateCollation(it) => &it.syntax,
31918 Stmt::CreateConversion(it) => &it.syntax,
31919 Stmt::CreateDatabase(it) => &it.syntax,
31920 Stmt::CreateDomain(it) => &it.syntax,
31921 Stmt::CreateEventTrigger(it) => &it.syntax,
31922 Stmt::CreateExtension(it) => &it.syntax,
31923 Stmt::CreateForeignDataWrapper(it) => &it.syntax,
31924 Stmt::CreateForeignTable(it) => &it.syntax,
31925 Stmt::CreateFunction(it) => &it.syntax,
31926 Stmt::CreateGroup(it) => &it.syntax,
31927 Stmt::CreateIndex(it) => &it.syntax,
31928 Stmt::CreateLanguage(it) => &it.syntax,
31929 Stmt::CreateMaterializedView(it) => &it.syntax,
31930 Stmt::CreateOperator(it) => &it.syntax,
31931 Stmt::CreateOperatorClass(it) => &it.syntax,
31932 Stmt::CreateOperatorFamily(it) => &it.syntax,
31933 Stmt::CreatePolicy(it) => &it.syntax,
31934 Stmt::CreateProcedure(it) => &it.syntax,
31935 Stmt::CreatePublication(it) => &it.syntax,
31936 Stmt::CreateRole(it) => &it.syntax,
31937 Stmt::CreateRule(it) => &it.syntax,
31938 Stmt::CreateSchema(it) => &it.syntax,
31939 Stmt::CreateSequence(it) => &it.syntax,
31940 Stmt::CreateServer(it) => &it.syntax,
31941 Stmt::CreateStatistics(it) => &it.syntax,
31942 Stmt::CreateSubscription(it) => &it.syntax,
31943 Stmt::CreateTable(it) => &it.syntax,
31944 Stmt::CreateTableAs(it) => &it.syntax,
31945 Stmt::CreateTablespace(it) => &it.syntax,
31946 Stmt::CreateTextSearchConfiguration(it) => &it.syntax,
31947 Stmt::CreateTextSearchDictionary(it) => &it.syntax,
31948 Stmt::CreateTextSearchParser(it) => &it.syntax,
31949 Stmt::CreateTextSearchTemplate(it) => &it.syntax,
31950 Stmt::CreateTransform(it) => &it.syntax,
31951 Stmt::CreateTrigger(it) => &it.syntax,
31952 Stmt::CreateType(it) => &it.syntax,
31953 Stmt::CreateUser(it) => &it.syntax,
31954 Stmt::CreateUserMapping(it) => &it.syntax,
31955 Stmt::CreateView(it) => &it.syntax,
31956 Stmt::Deallocate(it) => &it.syntax,
31957 Stmt::Declare(it) => &it.syntax,
31958 Stmt::Delete(it) => &it.syntax,
31959 Stmt::Discard(it) => &it.syntax,
31960 Stmt::Do(it) => &it.syntax,
31961 Stmt::DropAccessMethod(it) => &it.syntax,
31962 Stmt::DropAggregate(it) => &it.syntax,
31963 Stmt::DropCast(it) => &it.syntax,
31964 Stmt::DropCollation(it) => &it.syntax,
31965 Stmt::DropConversion(it) => &it.syntax,
31966 Stmt::DropDatabase(it) => &it.syntax,
31967 Stmt::DropDomain(it) => &it.syntax,
31968 Stmt::DropEventTrigger(it) => &it.syntax,
31969 Stmt::DropExtension(it) => &it.syntax,
31970 Stmt::DropForeignDataWrapper(it) => &it.syntax,
31971 Stmt::DropForeignTable(it) => &it.syntax,
31972 Stmt::DropFunction(it) => &it.syntax,
31973 Stmt::DropGroup(it) => &it.syntax,
31974 Stmt::DropIndex(it) => &it.syntax,
31975 Stmt::DropLanguage(it) => &it.syntax,
31976 Stmt::DropMaterializedView(it) => &it.syntax,
31977 Stmt::DropOperator(it) => &it.syntax,
31978 Stmt::DropOperatorClass(it) => &it.syntax,
31979 Stmt::DropOperatorFamily(it) => &it.syntax,
31980 Stmt::DropOwned(it) => &it.syntax,
31981 Stmt::DropPolicy(it) => &it.syntax,
31982 Stmt::DropProcedure(it) => &it.syntax,
31983 Stmt::DropPublication(it) => &it.syntax,
31984 Stmt::DropRole(it) => &it.syntax,
31985 Stmt::DropRoutine(it) => &it.syntax,
31986 Stmt::DropRule(it) => &it.syntax,
31987 Stmt::DropSchema(it) => &it.syntax,
31988 Stmt::DropSequence(it) => &it.syntax,
31989 Stmt::DropServer(it) => &it.syntax,
31990 Stmt::DropStatistics(it) => &it.syntax,
31991 Stmt::DropSubscription(it) => &it.syntax,
31992 Stmt::DropTable(it) => &it.syntax,
31993 Stmt::DropTablespace(it) => &it.syntax,
31994 Stmt::DropTextSearchConfig(it) => &it.syntax,
31995 Stmt::DropTextSearchDict(it) => &it.syntax,
31996 Stmt::DropTextSearchParser(it) => &it.syntax,
31997 Stmt::DropTextSearchTemplate(it) => &it.syntax,
31998 Stmt::DropTransform(it) => &it.syntax,
31999 Stmt::DropTrigger(it) => &it.syntax,
32000 Stmt::DropType(it) => &it.syntax,
32001 Stmt::DropUser(it) => &it.syntax,
32002 Stmt::DropUserMapping(it) => &it.syntax,
32003 Stmt::DropView(it) => &it.syntax,
32004 Stmt::Execute(it) => &it.syntax,
32005 Stmt::Explain(it) => &it.syntax,
32006 Stmt::Fetch(it) => &it.syntax,
32007 Stmt::Grant(it) => &it.syntax,
32008 Stmt::ImportForeignSchema(it) => &it.syntax,
32009 Stmt::Insert(it) => &it.syntax,
32010 Stmt::Listen(it) => &it.syntax,
32011 Stmt::Load(it) => &it.syntax,
32012 Stmt::Lock(it) => &it.syntax,
32013 Stmt::Merge(it) => &it.syntax,
32014 Stmt::Move(it) => &it.syntax,
32015 Stmt::Notify(it) => &it.syntax,
32016 Stmt::ParenSelect(it) => &it.syntax,
32017 Stmt::Prepare(it) => &it.syntax,
32018 Stmt::PrepareTransaction(it) => &it.syntax,
32019 Stmt::Reassign(it) => &it.syntax,
32020 Stmt::Refresh(it) => &it.syntax,
32021 Stmt::Reindex(it) => &it.syntax,
32022 Stmt::ReleaseSavepoint(it) => &it.syntax,
32023 Stmt::Reset(it) => &it.syntax,
32024 Stmt::ResetSessionAuth(it) => &it.syntax,
32025 Stmt::Revoke(it) => &it.syntax,
32026 Stmt::Rollback(it) => &it.syntax,
32027 Stmt::Savepoint(it) => &it.syntax,
32028 Stmt::SecurityLabel(it) => &it.syntax,
32029 Stmt::Select(it) => &it.syntax,
32030 Stmt::SelectInto(it) => &it.syntax,
32031 Stmt::Set(it) => &it.syntax,
32032 Stmt::SetConstraints(it) => &it.syntax,
32033 Stmt::SetRole(it) => &it.syntax,
32034 Stmt::SetSessionAuth(it) => &it.syntax,
32035 Stmt::SetTransaction(it) => &it.syntax,
32036 Stmt::Show(it) => &it.syntax,
32037 Stmt::Table(it) => &it.syntax,
32038 Stmt::Truncate(it) => &it.syntax,
32039 Stmt::Unlisten(it) => &it.syntax,
32040 Stmt::Update(it) => &it.syntax,
32041 Stmt::Vacuum(it) => &it.syntax,
32042 Stmt::Values(it) => &it.syntax,
32043 }
32044 }
32045}
32046impl From<AlterAggregate> for Stmt {
32047 #[inline]
32048 fn from(node: AlterAggregate) -> Stmt {
32049 Stmt::AlterAggregate(node)
32050 }
32051}
32052impl From<AlterCollation> for Stmt {
32053 #[inline]
32054 fn from(node: AlterCollation) -> Stmt {
32055 Stmt::AlterCollation(node)
32056 }
32057}
32058impl From<AlterConversion> for Stmt {
32059 #[inline]
32060 fn from(node: AlterConversion) -> Stmt {
32061 Stmt::AlterConversion(node)
32062 }
32063}
32064impl From<AlterDatabase> for Stmt {
32065 #[inline]
32066 fn from(node: AlterDatabase) -> Stmt {
32067 Stmt::AlterDatabase(node)
32068 }
32069}
32070impl From<AlterDefaultPrivileges> for Stmt {
32071 #[inline]
32072 fn from(node: AlterDefaultPrivileges) -> Stmt {
32073 Stmt::AlterDefaultPrivileges(node)
32074 }
32075}
32076impl From<AlterDomain> for Stmt {
32077 #[inline]
32078 fn from(node: AlterDomain) -> Stmt {
32079 Stmt::AlterDomain(node)
32080 }
32081}
32082impl From<AlterEventTrigger> for Stmt {
32083 #[inline]
32084 fn from(node: AlterEventTrigger) -> Stmt {
32085 Stmt::AlterEventTrigger(node)
32086 }
32087}
32088impl From<AlterExtension> for Stmt {
32089 #[inline]
32090 fn from(node: AlterExtension) -> Stmt {
32091 Stmt::AlterExtension(node)
32092 }
32093}
32094impl From<AlterForeignDataWrapper> for Stmt {
32095 #[inline]
32096 fn from(node: AlterForeignDataWrapper) -> Stmt {
32097 Stmt::AlterForeignDataWrapper(node)
32098 }
32099}
32100impl From<AlterForeignTable> for Stmt {
32101 #[inline]
32102 fn from(node: AlterForeignTable) -> Stmt {
32103 Stmt::AlterForeignTable(node)
32104 }
32105}
32106impl From<AlterFunction> for Stmt {
32107 #[inline]
32108 fn from(node: AlterFunction) -> Stmt {
32109 Stmt::AlterFunction(node)
32110 }
32111}
32112impl From<AlterGroup> for Stmt {
32113 #[inline]
32114 fn from(node: AlterGroup) -> Stmt {
32115 Stmt::AlterGroup(node)
32116 }
32117}
32118impl From<AlterIndex> for Stmt {
32119 #[inline]
32120 fn from(node: AlterIndex) -> Stmt {
32121 Stmt::AlterIndex(node)
32122 }
32123}
32124impl From<AlterLanguage> for Stmt {
32125 #[inline]
32126 fn from(node: AlterLanguage) -> Stmt {
32127 Stmt::AlterLanguage(node)
32128 }
32129}
32130impl From<AlterLargeObject> for Stmt {
32131 #[inline]
32132 fn from(node: AlterLargeObject) -> Stmt {
32133 Stmt::AlterLargeObject(node)
32134 }
32135}
32136impl From<AlterMaterializedView> for Stmt {
32137 #[inline]
32138 fn from(node: AlterMaterializedView) -> Stmt {
32139 Stmt::AlterMaterializedView(node)
32140 }
32141}
32142impl From<AlterOperator> for Stmt {
32143 #[inline]
32144 fn from(node: AlterOperator) -> Stmt {
32145 Stmt::AlterOperator(node)
32146 }
32147}
32148impl From<AlterOperatorClass> for Stmt {
32149 #[inline]
32150 fn from(node: AlterOperatorClass) -> Stmt {
32151 Stmt::AlterOperatorClass(node)
32152 }
32153}
32154impl From<AlterOperatorFamily> for Stmt {
32155 #[inline]
32156 fn from(node: AlterOperatorFamily) -> Stmt {
32157 Stmt::AlterOperatorFamily(node)
32158 }
32159}
32160impl From<AlterPolicy> for Stmt {
32161 #[inline]
32162 fn from(node: AlterPolicy) -> Stmt {
32163 Stmt::AlterPolicy(node)
32164 }
32165}
32166impl From<AlterProcedure> for Stmt {
32167 #[inline]
32168 fn from(node: AlterProcedure) -> Stmt {
32169 Stmt::AlterProcedure(node)
32170 }
32171}
32172impl From<AlterPublication> for Stmt {
32173 #[inline]
32174 fn from(node: AlterPublication) -> Stmt {
32175 Stmt::AlterPublication(node)
32176 }
32177}
32178impl From<AlterRole> for Stmt {
32179 #[inline]
32180 fn from(node: AlterRole) -> Stmt {
32181 Stmt::AlterRole(node)
32182 }
32183}
32184impl From<AlterRoutine> for Stmt {
32185 #[inline]
32186 fn from(node: AlterRoutine) -> Stmt {
32187 Stmt::AlterRoutine(node)
32188 }
32189}
32190impl From<AlterRule> for Stmt {
32191 #[inline]
32192 fn from(node: AlterRule) -> Stmt {
32193 Stmt::AlterRule(node)
32194 }
32195}
32196impl From<AlterSchema> for Stmt {
32197 #[inline]
32198 fn from(node: AlterSchema) -> Stmt {
32199 Stmt::AlterSchema(node)
32200 }
32201}
32202impl From<AlterSequence> for Stmt {
32203 #[inline]
32204 fn from(node: AlterSequence) -> Stmt {
32205 Stmt::AlterSequence(node)
32206 }
32207}
32208impl From<AlterServer> for Stmt {
32209 #[inline]
32210 fn from(node: AlterServer) -> Stmt {
32211 Stmt::AlterServer(node)
32212 }
32213}
32214impl From<AlterStatistics> for Stmt {
32215 #[inline]
32216 fn from(node: AlterStatistics) -> Stmt {
32217 Stmt::AlterStatistics(node)
32218 }
32219}
32220impl From<AlterSubscription> for Stmt {
32221 #[inline]
32222 fn from(node: AlterSubscription) -> Stmt {
32223 Stmt::AlterSubscription(node)
32224 }
32225}
32226impl From<AlterSystem> for Stmt {
32227 #[inline]
32228 fn from(node: AlterSystem) -> Stmt {
32229 Stmt::AlterSystem(node)
32230 }
32231}
32232impl From<AlterTable> for Stmt {
32233 #[inline]
32234 fn from(node: AlterTable) -> Stmt {
32235 Stmt::AlterTable(node)
32236 }
32237}
32238impl From<AlterTablespace> for Stmt {
32239 #[inline]
32240 fn from(node: AlterTablespace) -> Stmt {
32241 Stmt::AlterTablespace(node)
32242 }
32243}
32244impl From<AlterTextSearchConfiguration> for Stmt {
32245 #[inline]
32246 fn from(node: AlterTextSearchConfiguration) -> Stmt {
32247 Stmt::AlterTextSearchConfiguration(node)
32248 }
32249}
32250impl From<AlterTextSearchDictionary> for Stmt {
32251 #[inline]
32252 fn from(node: AlterTextSearchDictionary) -> Stmt {
32253 Stmt::AlterTextSearchDictionary(node)
32254 }
32255}
32256impl From<AlterTextSearchParser> for Stmt {
32257 #[inline]
32258 fn from(node: AlterTextSearchParser) -> Stmt {
32259 Stmt::AlterTextSearchParser(node)
32260 }
32261}
32262impl From<AlterTextSearchTemplate> for Stmt {
32263 #[inline]
32264 fn from(node: AlterTextSearchTemplate) -> Stmt {
32265 Stmt::AlterTextSearchTemplate(node)
32266 }
32267}
32268impl From<AlterTrigger> for Stmt {
32269 #[inline]
32270 fn from(node: AlterTrigger) -> Stmt {
32271 Stmt::AlterTrigger(node)
32272 }
32273}
32274impl From<AlterType> for Stmt {
32275 #[inline]
32276 fn from(node: AlterType) -> Stmt {
32277 Stmt::AlterType(node)
32278 }
32279}
32280impl From<AlterUser> for Stmt {
32281 #[inline]
32282 fn from(node: AlterUser) -> Stmt {
32283 Stmt::AlterUser(node)
32284 }
32285}
32286impl From<AlterUserMapping> for Stmt {
32287 #[inline]
32288 fn from(node: AlterUserMapping) -> Stmt {
32289 Stmt::AlterUserMapping(node)
32290 }
32291}
32292impl From<AlterView> for Stmt {
32293 #[inline]
32294 fn from(node: AlterView) -> Stmt {
32295 Stmt::AlterView(node)
32296 }
32297}
32298impl From<Analyze> for Stmt {
32299 #[inline]
32300 fn from(node: Analyze) -> Stmt {
32301 Stmt::Analyze(node)
32302 }
32303}
32304impl From<Begin> for Stmt {
32305 #[inline]
32306 fn from(node: Begin) -> Stmt {
32307 Stmt::Begin(node)
32308 }
32309}
32310impl From<Call> for Stmt {
32311 #[inline]
32312 fn from(node: Call) -> Stmt {
32313 Stmt::Call(node)
32314 }
32315}
32316impl From<Checkpoint> for Stmt {
32317 #[inline]
32318 fn from(node: Checkpoint) -> Stmt {
32319 Stmt::Checkpoint(node)
32320 }
32321}
32322impl From<Close> for Stmt {
32323 #[inline]
32324 fn from(node: Close) -> Stmt {
32325 Stmt::Close(node)
32326 }
32327}
32328impl From<Cluster> for Stmt {
32329 #[inline]
32330 fn from(node: Cluster) -> Stmt {
32331 Stmt::Cluster(node)
32332 }
32333}
32334impl From<CommentOn> for Stmt {
32335 #[inline]
32336 fn from(node: CommentOn) -> Stmt {
32337 Stmt::CommentOn(node)
32338 }
32339}
32340impl From<Commit> for Stmt {
32341 #[inline]
32342 fn from(node: Commit) -> Stmt {
32343 Stmt::Commit(node)
32344 }
32345}
32346impl From<Copy> for Stmt {
32347 #[inline]
32348 fn from(node: Copy) -> Stmt {
32349 Stmt::Copy(node)
32350 }
32351}
32352impl From<CreateAccessMethod> for Stmt {
32353 #[inline]
32354 fn from(node: CreateAccessMethod) -> Stmt {
32355 Stmt::CreateAccessMethod(node)
32356 }
32357}
32358impl From<CreateAggregate> for Stmt {
32359 #[inline]
32360 fn from(node: CreateAggregate) -> Stmt {
32361 Stmt::CreateAggregate(node)
32362 }
32363}
32364impl From<CreateCast> for Stmt {
32365 #[inline]
32366 fn from(node: CreateCast) -> Stmt {
32367 Stmt::CreateCast(node)
32368 }
32369}
32370impl From<CreateCollation> for Stmt {
32371 #[inline]
32372 fn from(node: CreateCollation) -> Stmt {
32373 Stmt::CreateCollation(node)
32374 }
32375}
32376impl From<CreateConversion> for Stmt {
32377 #[inline]
32378 fn from(node: CreateConversion) -> Stmt {
32379 Stmt::CreateConversion(node)
32380 }
32381}
32382impl From<CreateDatabase> for Stmt {
32383 #[inline]
32384 fn from(node: CreateDatabase) -> Stmt {
32385 Stmt::CreateDatabase(node)
32386 }
32387}
32388impl From<CreateDomain> for Stmt {
32389 #[inline]
32390 fn from(node: CreateDomain) -> Stmt {
32391 Stmt::CreateDomain(node)
32392 }
32393}
32394impl From<CreateEventTrigger> for Stmt {
32395 #[inline]
32396 fn from(node: CreateEventTrigger) -> Stmt {
32397 Stmt::CreateEventTrigger(node)
32398 }
32399}
32400impl From<CreateExtension> for Stmt {
32401 #[inline]
32402 fn from(node: CreateExtension) -> Stmt {
32403 Stmt::CreateExtension(node)
32404 }
32405}
32406impl From<CreateForeignDataWrapper> for Stmt {
32407 #[inline]
32408 fn from(node: CreateForeignDataWrapper) -> Stmt {
32409 Stmt::CreateForeignDataWrapper(node)
32410 }
32411}
32412impl From<CreateForeignTable> for Stmt {
32413 #[inline]
32414 fn from(node: CreateForeignTable) -> Stmt {
32415 Stmt::CreateForeignTable(node)
32416 }
32417}
32418impl From<CreateFunction> for Stmt {
32419 #[inline]
32420 fn from(node: CreateFunction) -> Stmt {
32421 Stmt::CreateFunction(node)
32422 }
32423}
32424impl From<CreateGroup> for Stmt {
32425 #[inline]
32426 fn from(node: CreateGroup) -> Stmt {
32427 Stmt::CreateGroup(node)
32428 }
32429}
32430impl From<CreateIndex> for Stmt {
32431 #[inline]
32432 fn from(node: CreateIndex) -> Stmt {
32433 Stmt::CreateIndex(node)
32434 }
32435}
32436impl From<CreateLanguage> for Stmt {
32437 #[inline]
32438 fn from(node: CreateLanguage) -> Stmt {
32439 Stmt::CreateLanguage(node)
32440 }
32441}
32442impl From<CreateMaterializedView> for Stmt {
32443 #[inline]
32444 fn from(node: CreateMaterializedView) -> Stmt {
32445 Stmt::CreateMaterializedView(node)
32446 }
32447}
32448impl From<CreateOperator> for Stmt {
32449 #[inline]
32450 fn from(node: CreateOperator) -> Stmt {
32451 Stmt::CreateOperator(node)
32452 }
32453}
32454impl From<CreateOperatorClass> for Stmt {
32455 #[inline]
32456 fn from(node: CreateOperatorClass) -> Stmt {
32457 Stmt::CreateOperatorClass(node)
32458 }
32459}
32460impl From<CreateOperatorFamily> for Stmt {
32461 #[inline]
32462 fn from(node: CreateOperatorFamily) -> Stmt {
32463 Stmt::CreateOperatorFamily(node)
32464 }
32465}
32466impl From<CreatePolicy> for Stmt {
32467 #[inline]
32468 fn from(node: CreatePolicy) -> Stmt {
32469 Stmt::CreatePolicy(node)
32470 }
32471}
32472impl From<CreateProcedure> for Stmt {
32473 #[inline]
32474 fn from(node: CreateProcedure) -> Stmt {
32475 Stmt::CreateProcedure(node)
32476 }
32477}
32478impl From<CreatePublication> for Stmt {
32479 #[inline]
32480 fn from(node: CreatePublication) -> Stmt {
32481 Stmt::CreatePublication(node)
32482 }
32483}
32484impl From<CreateRole> for Stmt {
32485 #[inline]
32486 fn from(node: CreateRole) -> Stmt {
32487 Stmt::CreateRole(node)
32488 }
32489}
32490impl From<CreateRule> for Stmt {
32491 #[inline]
32492 fn from(node: CreateRule) -> Stmt {
32493 Stmt::CreateRule(node)
32494 }
32495}
32496impl From<CreateSchema> for Stmt {
32497 #[inline]
32498 fn from(node: CreateSchema) -> Stmt {
32499 Stmt::CreateSchema(node)
32500 }
32501}
32502impl From<CreateSequence> for Stmt {
32503 #[inline]
32504 fn from(node: CreateSequence) -> Stmt {
32505 Stmt::CreateSequence(node)
32506 }
32507}
32508impl From<CreateServer> for Stmt {
32509 #[inline]
32510 fn from(node: CreateServer) -> Stmt {
32511 Stmt::CreateServer(node)
32512 }
32513}
32514impl From<CreateStatistics> for Stmt {
32515 #[inline]
32516 fn from(node: CreateStatistics) -> Stmt {
32517 Stmt::CreateStatistics(node)
32518 }
32519}
32520impl From<CreateSubscription> for Stmt {
32521 #[inline]
32522 fn from(node: CreateSubscription) -> Stmt {
32523 Stmt::CreateSubscription(node)
32524 }
32525}
32526impl From<CreateTable> for Stmt {
32527 #[inline]
32528 fn from(node: CreateTable) -> Stmt {
32529 Stmt::CreateTable(node)
32530 }
32531}
32532impl From<CreateTableAs> for Stmt {
32533 #[inline]
32534 fn from(node: CreateTableAs) -> Stmt {
32535 Stmt::CreateTableAs(node)
32536 }
32537}
32538impl From<CreateTablespace> for Stmt {
32539 #[inline]
32540 fn from(node: CreateTablespace) -> Stmt {
32541 Stmt::CreateTablespace(node)
32542 }
32543}
32544impl From<CreateTextSearchConfiguration> for Stmt {
32545 #[inline]
32546 fn from(node: CreateTextSearchConfiguration) -> Stmt {
32547 Stmt::CreateTextSearchConfiguration(node)
32548 }
32549}
32550impl From<CreateTextSearchDictionary> for Stmt {
32551 #[inline]
32552 fn from(node: CreateTextSearchDictionary) -> Stmt {
32553 Stmt::CreateTextSearchDictionary(node)
32554 }
32555}
32556impl From<CreateTextSearchParser> for Stmt {
32557 #[inline]
32558 fn from(node: CreateTextSearchParser) -> Stmt {
32559 Stmt::CreateTextSearchParser(node)
32560 }
32561}
32562impl From<CreateTextSearchTemplate> for Stmt {
32563 #[inline]
32564 fn from(node: CreateTextSearchTemplate) -> Stmt {
32565 Stmt::CreateTextSearchTemplate(node)
32566 }
32567}
32568impl From<CreateTransform> for Stmt {
32569 #[inline]
32570 fn from(node: CreateTransform) -> Stmt {
32571 Stmt::CreateTransform(node)
32572 }
32573}
32574impl From<CreateTrigger> for Stmt {
32575 #[inline]
32576 fn from(node: CreateTrigger) -> Stmt {
32577 Stmt::CreateTrigger(node)
32578 }
32579}
32580impl From<CreateType> for Stmt {
32581 #[inline]
32582 fn from(node: CreateType) -> Stmt {
32583 Stmt::CreateType(node)
32584 }
32585}
32586impl From<CreateUser> for Stmt {
32587 #[inline]
32588 fn from(node: CreateUser) -> Stmt {
32589 Stmt::CreateUser(node)
32590 }
32591}
32592impl From<CreateUserMapping> for Stmt {
32593 #[inline]
32594 fn from(node: CreateUserMapping) -> Stmt {
32595 Stmt::CreateUserMapping(node)
32596 }
32597}
32598impl From<CreateView> for Stmt {
32599 #[inline]
32600 fn from(node: CreateView) -> Stmt {
32601 Stmt::CreateView(node)
32602 }
32603}
32604impl From<Deallocate> for Stmt {
32605 #[inline]
32606 fn from(node: Deallocate) -> Stmt {
32607 Stmt::Deallocate(node)
32608 }
32609}
32610impl From<Declare> for Stmt {
32611 #[inline]
32612 fn from(node: Declare) -> Stmt {
32613 Stmt::Declare(node)
32614 }
32615}
32616impl From<Delete> for Stmt {
32617 #[inline]
32618 fn from(node: Delete) -> Stmt {
32619 Stmt::Delete(node)
32620 }
32621}
32622impl From<Discard> for Stmt {
32623 #[inline]
32624 fn from(node: Discard) -> Stmt {
32625 Stmt::Discard(node)
32626 }
32627}
32628impl From<Do> for Stmt {
32629 #[inline]
32630 fn from(node: Do) -> Stmt {
32631 Stmt::Do(node)
32632 }
32633}
32634impl From<DropAccessMethod> for Stmt {
32635 #[inline]
32636 fn from(node: DropAccessMethod) -> Stmt {
32637 Stmt::DropAccessMethod(node)
32638 }
32639}
32640impl From<DropAggregate> for Stmt {
32641 #[inline]
32642 fn from(node: DropAggregate) -> Stmt {
32643 Stmt::DropAggregate(node)
32644 }
32645}
32646impl From<DropCast> for Stmt {
32647 #[inline]
32648 fn from(node: DropCast) -> Stmt {
32649 Stmt::DropCast(node)
32650 }
32651}
32652impl From<DropCollation> for Stmt {
32653 #[inline]
32654 fn from(node: DropCollation) -> Stmt {
32655 Stmt::DropCollation(node)
32656 }
32657}
32658impl From<DropConversion> for Stmt {
32659 #[inline]
32660 fn from(node: DropConversion) -> Stmt {
32661 Stmt::DropConversion(node)
32662 }
32663}
32664impl From<DropDatabase> for Stmt {
32665 #[inline]
32666 fn from(node: DropDatabase) -> Stmt {
32667 Stmt::DropDatabase(node)
32668 }
32669}
32670impl From<DropDomain> for Stmt {
32671 #[inline]
32672 fn from(node: DropDomain) -> Stmt {
32673 Stmt::DropDomain(node)
32674 }
32675}
32676impl From<DropEventTrigger> for Stmt {
32677 #[inline]
32678 fn from(node: DropEventTrigger) -> Stmt {
32679 Stmt::DropEventTrigger(node)
32680 }
32681}
32682impl From<DropExtension> for Stmt {
32683 #[inline]
32684 fn from(node: DropExtension) -> Stmt {
32685 Stmt::DropExtension(node)
32686 }
32687}
32688impl From<DropForeignDataWrapper> for Stmt {
32689 #[inline]
32690 fn from(node: DropForeignDataWrapper) -> Stmt {
32691 Stmt::DropForeignDataWrapper(node)
32692 }
32693}
32694impl From<DropForeignTable> for Stmt {
32695 #[inline]
32696 fn from(node: DropForeignTable) -> Stmt {
32697 Stmt::DropForeignTable(node)
32698 }
32699}
32700impl From<DropFunction> for Stmt {
32701 #[inline]
32702 fn from(node: DropFunction) -> Stmt {
32703 Stmt::DropFunction(node)
32704 }
32705}
32706impl From<DropGroup> for Stmt {
32707 #[inline]
32708 fn from(node: DropGroup) -> Stmt {
32709 Stmt::DropGroup(node)
32710 }
32711}
32712impl From<DropIndex> for Stmt {
32713 #[inline]
32714 fn from(node: DropIndex) -> Stmt {
32715 Stmt::DropIndex(node)
32716 }
32717}
32718impl From<DropLanguage> for Stmt {
32719 #[inline]
32720 fn from(node: DropLanguage) -> Stmt {
32721 Stmt::DropLanguage(node)
32722 }
32723}
32724impl From<DropMaterializedView> for Stmt {
32725 #[inline]
32726 fn from(node: DropMaterializedView) -> Stmt {
32727 Stmt::DropMaterializedView(node)
32728 }
32729}
32730impl From<DropOperator> for Stmt {
32731 #[inline]
32732 fn from(node: DropOperator) -> Stmt {
32733 Stmt::DropOperator(node)
32734 }
32735}
32736impl From<DropOperatorClass> for Stmt {
32737 #[inline]
32738 fn from(node: DropOperatorClass) -> Stmt {
32739 Stmt::DropOperatorClass(node)
32740 }
32741}
32742impl From<DropOperatorFamily> for Stmt {
32743 #[inline]
32744 fn from(node: DropOperatorFamily) -> Stmt {
32745 Stmt::DropOperatorFamily(node)
32746 }
32747}
32748impl From<DropOwned> for Stmt {
32749 #[inline]
32750 fn from(node: DropOwned) -> Stmt {
32751 Stmt::DropOwned(node)
32752 }
32753}
32754impl From<DropPolicy> for Stmt {
32755 #[inline]
32756 fn from(node: DropPolicy) -> Stmt {
32757 Stmt::DropPolicy(node)
32758 }
32759}
32760impl From<DropProcedure> for Stmt {
32761 #[inline]
32762 fn from(node: DropProcedure) -> Stmt {
32763 Stmt::DropProcedure(node)
32764 }
32765}
32766impl From<DropPublication> for Stmt {
32767 #[inline]
32768 fn from(node: DropPublication) -> Stmt {
32769 Stmt::DropPublication(node)
32770 }
32771}
32772impl From<DropRole> for Stmt {
32773 #[inline]
32774 fn from(node: DropRole) -> Stmt {
32775 Stmt::DropRole(node)
32776 }
32777}
32778impl From<DropRoutine> for Stmt {
32779 #[inline]
32780 fn from(node: DropRoutine) -> Stmt {
32781 Stmt::DropRoutine(node)
32782 }
32783}
32784impl From<DropRule> for Stmt {
32785 #[inline]
32786 fn from(node: DropRule) -> Stmt {
32787 Stmt::DropRule(node)
32788 }
32789}
32790impl From<DropSchema> for Stmt {
32791 #[inline]
32792 fn from(node: DropSchema) -> Stmt {
32793 Stmt::DropSchema(node)
32794 }
32795}
32796impl From<DropSequence> for Stmt {
32797 #[inline]
32798 fn from(node: DropSequence) -> Stmt {
32799 Stmt::DropSequence(node)
32800 }
32801}
32802impl From<DropServer> for Stmt {
32803 #[inline]
32804 fn from(node: DropServer) -> Stmt {
32805 Stmt::DropServer(node)
32806 }
32807}
32808impl From<DropStatistics> for Stmt {
32809 #[inline]
32810 fn from(node: DropStatistics) -> Stmt {
32811 Stmt::DropStatistics(node)
32812 }
32813}
32814impl From<DropSubscription> for Stmt {
32815 #[inline]
32816 fn from(node: DropSubscription) -> Stmt {
32817 Stmt::DropSubscription(node)
32818 }
32819}
32820impl From<DropTable> for Stmt {
32821 #[inline]
32822 fn from(node: DropTable) -> Stmt {
32823 Stmt::DropTable(node)
32824 }
32825}
32826impl From<DropTablespace> for Stmt {
32827 #[inline]
32828 fn from(node: DropTablespace) -> Stmt {
32829 Stmt::DropTablespace(node)
32830 }
32831}
32832impl From<DropTextSearchConfig> for Stmt {
32833 #[inline]
32834 fn from(node: DropTextSearchConfig) -> Stmt {
32835 Stmt::DropTextSearchConfig(node)
32836 }
32837}
32838impl From<DropTextSearchDict> for Stmt {
32839 #[inline]
32840 fn from(node: DropTextSearchDict) -> Stmt {
32841 Stmt::DropTextSearchDict(node)
32842 }
32843}
32844impl From<DropTextSearchParser> for Stmt {
32845 #[inline]
32846 fn from(node: DropTextSearchParser) -> Stmt {
32847 Stmt::DropTextSearchParser(node)
32848 }
32849}
32850impl From<DropTextSearchTemplate> for Stmt {
32851 #[inline]
32852 fn from(node: DropTextSearchTemplate) -> Stmt {
32853 Stmt::DropTextSearchTemplate(node)
32854 }
32855}
32856impl From<DropTransform> for Stmt {
32857 #[inline]
32858 fn from(node: DropTransform) -> Stmt {
32859 Stmt::DropTransform(node)
32860 }
32861}
32862impl From<DropTrigger> for Stmt {
32863 #[inline]
32864 fn from(node: DropTrigger) -> Stmt {
32865 Stmt::DropTrigger(node)
32866 }
32867}
32868impl From<DropType> for Stmt {
32869 #[inline]
32870 fn from(node: DropType) -> Stmt {
32871 Stmt::DropType(node)
32872 }
32873}
32874impl From<DropUser> for Stmt {
32875 #[inline]
32876 fn from(node: DropUser) -> Stmt {
32877 Stmt::DropUser(node)
32878 }
32879}
32880impl From<DropUserMapping> for Stmt {
32881 #[inline]
32882 fn from(node: DropUserMapping) -> Stmt {
32883 Stmt::DropUserMapping(node)
32884 }
32885}
32886impl From<DropView> for Stmt {
32887 #[inline]
32888 fn from(node: DropView) -> Stmt {
32889 Stmt::DropView(node)
32890 }
32891}
32892impl From<Execute> for Stmt {
32893 #[inline]
32894 fn from(node: Execute) -> Stmt {
32895 Stmt::Execute(node)
32896 }
32897}
32898impl From<Explain> for Stmt {
32899 #[inline]
32900 fn from(node: Explain) -> Stmt {
32901 Stmt::Explain(node)
32902 }
32903}
32904impl From<Fetch> for Stmt {
32905 #[inline]
32906 fn from(node: Fetch) -> Stmt {
32907 Stmt::Fetch(node)
32908 }
32909}
32910impl From<Grant> for Stmt {
32911 #[inline]
32912 fn from(node: Grant) -> Stmt {
32913 Stmt::Grant(node)
32914 }
32915}
32916impl From<ImportForeignSchema> for Stmt {
32917 #[inline]
32918 fn from(node: ImportForeignSchema) -> Stmt {
32919 Stmt::ImportForeignSchema(node)
32920 }
32921}
32922impl From<Insert> for Stmt {
32923 #[inline]
32924 fn from(node: Insert) -> Stmt {
32925 Stmt::Insert(node)
32926 }
32927}
32928impl From<Listen> for Stmt {
32929 #[inline]
32930 fn from(node: Listen) -> Stmt {
32931 Stmt::Listen(node)
32932 }
32933}
32934impl From<Load> for Stmt {
32935 #[inline]
32936 fn from(node: Load) -> Stmt {
32937 Stmt::Load(node)
32938 }
32939}
32940impl From<Lock> for Stmt {
32941 #[inline]
32942 fn from(node: Lock) -> Stmt {
32943 Stmt::Lock(node)
32944 }
32945}
32946impl From<Merge> for Stmt {
32947 #[inline]
32948 fn from(node: Merge) -> Stmt {
32949 Stmt::Merge(node)
32950 }
32951}
32952impl From<Move> for Stmt {
32953 #[inline]
32954 fn from(node: Move) -> Stmt {
32955 Stmt::Move(node)
32956 }
32957}
32958impl From<Notify> for Stmt {
32959 #[inline]
32960 fn from(node: Notify) -> Stmt {
32961 Stmt::Notify(node)
32962 }
32963}
32964impl From<ParenSelect> for Stmt {
32965 #[inline]
32966 fn from(node: ParenSelect) -> Stmt {
32967 Stmt::ParenSelect(node)
32968 }
32969}
32970impl From<Prepare> for Stmt {
32971 #[inline]
32972 fn from(node: Prepare) -> Stmt {
32973 Stmt::Prepare(node)
32974 }
32975}
32976impl From<PrepareTransaction> for Stmt {
32977 #[inline]
32978 fn from(node: PrepareTransaction) -> Stmt {
32979 Stmt::PrepareTransaction(node)
32980 }
32981}
32982impl From<Reassign> for Stmt {
32983 #[inline]
32984 fn from(node: Reassign) -> Stmt {
32985 Stmt::Reassign(node)
32986 }
32987}
32988impl From<Refresh> for Stmt {
32989 #[inline]
32990 fn from(node: Refresh) -> Stmt {
32991 Stmt::Refresh(node)
32992 }
32993}
32994impl From<Reindex> for Stmt {
32995 #[inline]
32996 fn from(node: Reindex) -> Stmt {
32997 Stmt::Reindex(node)
32998 }
32999}
33000impl From<ReleaseSavepoint> for Stmt {
33001 #[inline]
33002 fn from(node: ReleaseSavepoint) -> Stmt {
33003 Stmt::ReleaseSavepoint(node)
33004 }
33005}
33006impl From<Reset> for Stmt {
33007 #[inline]
33008 fn from(node: Reset) -> Stmt {
33009 Stmt::Reset(node)
33010 }
33011}
33012impl From<ResetSessionAuth> for Stmt {
33013 #[inline]
33014 fn from(node: ResetSessionAuth) -> Stmt {
33015 Stmt::ResetSessionAuth(node)
33016 }
33017}
33018impl From<Revoke> for Stmt {
33019 #[inline]
33020 fn from(node: Revoke) -> Stmt {
33021 Stmt::Revoke(node)
33022 }
33023}
33024impl From<Rollback> for Stmt {
33025 #[inline]
33026 fn from(node: Rollback) -> Stmt {
33027 Stmt::Rollback(node)
33028 }
33029}
33030impl From<Savepoint> for Stmt {
33031 #[inline]
33032 fn from(node: Savepoint) -> Stmt {
33033 Stmt::Savepoint(node)
33034 }
33035}
33036impl From<SecurityLabel> for Stmt {
33037 #[inline]
33038 fn from(node: SecurityLabel) -> Stmt {
33039 Stmt::SecurityLabel(node)
33040 }
33041}
33042impl From<Select> for Stmt {
33043 #[inline]
33044 fn from(node: Select) -> Stmt {
33045 Stmt::Select(node)
33046 }
33047}
33048impl From<SelectInto> for Stmt {
33049 #[inline]
33050 fn from(node: SelectInto) -> Stmt {
33051 Stmt::SelectInto(node)
33052 }
33053}
33054impl From<Set> for Stmt {
33055 #[inline]
33056 fn from(node: Set) -> Stmt {
33057 Stmt::Set(node)
33058 }
33059}
33060impl From<SetConstraints> for Stmt {
33061 #[inline]
33062 fn from(node: SetConstraints) -> Stmt {
33063 Stmt::SetConstraints(node)
33064 }
33065}
33066impl From<SetRole> for Stmt {
33067 #[inline]
33068 fn from(node: SetRole) -> Stmt {
33069 Stmt::SetRole(node)
33070 }
33071}
33072impl From<SetSessionAuth> for Stmt {
33073 #[inline]
33074 fn from(node: SetSessionAuth) -> Stmt {
33075 Stmt::SetSessionAuth(node)
33076 }
33077}
33078impl From<SetTransaction> for Stmt {
33079 #[inline]
33080 fn from(node: SetTransaction) -> Stmt {
33081 Stmt::SetTransaction(node)
33082 }
33083}
33084impl From<Show> for Stmt {
33085 #[inline]
33086 fn from(node: Show) -> Stmt {
33087 Stmt::Show(node)
33088 }
33089}
33090impl From<Table> for Stmt {
33091 #[inline]
33092 fn from(node: Table) -> Stmt {
33093 Stmt::Table(node)
33094 }
33095}
33096impl From<Truncate> for Stmt {
33097 #[inline]
33098 fn from(node: Truncate) -> Stmt {
33099 Stmt::Truncate(node)
33100 }
33101}
33102impl From<Unlisten> for Stmt {
33103 #[inline]
33104 fn from(node: Unlisten) -> Stmt {
33105 Stmt::Unlisten(node)
33106 }
33107}
33108impl From<Update> for Stmt {
33109 #[inline]
33110 fn from(node: Update) -> Stmt {
33111 Stmt::Update(node)
33112 }
33113}
33114impl From<Vacuum> for Stmt {
33115 #[inline]
33116 fn from(node: Vacuum) -> Stmt {
33117 Stmt::Vacuum(node)
33118 }
33119}
33120impl From<Values> for Stmt {
33121 #[inline]
33122 fn from(node: Values) -> Stmt {
33123 Stmt::Values(node)
33124 }
33125}
33126impl AstNode for TableArg {
33127 #[inline]
33128 fn can_cast(kind: SyntaxKind) -> bool {
33129 matches!(kind, SyntaxKind::COLUMN | SyntaxKind::LIKE_CLAUSE)
33130 }
33131 #[inline]
33132 fn cast(syntax: SyntaxNode) -> Option<Self> {
33133 let res = match syntax.kind() {
33134 SyntaxKind::COLUMN => TableArg::Column(Column { syntax }),
33135 SyntaxKind::LIKE_CLAUSE => TableArg::LikeClause(LikeClause { syntax }),
33136 _ => {
33137 if let Some(result) = TableConstraint::cast(syntax) {
33138 return Some(TableArg::TableConstraint(result));
33139 }
33140 return None;
33141 }
33142 };
33143 Some(res)
33144 }
33145 #[inline]
33146 fn syntax(&self) -> &SyntaxNode {
33147 match self {
33148 TableArg::Column(it) => &it.syntax,
33149 TableArg::LikeClause(it) => &it.syntax,
33150 TableArg::TableConstraint(it) => it.syntax(),
33151 }
33152 }
33153}
33154impl From<Column> for TableArg {
33155 #[inline]
33156 fn from(node: Column) -> TableArg {
33157 TableArg::Column(node)
33158 }
33159}
33160impl From<LikeClause> for TableArg {
33161 #[inline]
33162 fn from(node: LikeClause) -> TableArg {
33163 TableArg::LikeClause(node)
33164 }
33165}
33166impl AstNode for TableConstraint {
33167 #[inline]
33168 fn can_cast(kind: SyntaxKind) -> bool {
33169 matches!(
33170 kind,
33171 SyntaxKind::CHECK_CONSTRAINT
33172 | SyntaxKind::EXCLUDE_CONSTRAINT
33173 | SyntaxKind::FOREIGN_KEY_CONSTRAINT
33174 | SyntaxKind::PRIMARY_KEY_CONSTRAINT
33175 | SyntaxKind::UNIQUE_CONSTRAINT
33176 )
33177 }
33178 #[inline]
33179 fn cast(syntax: SyntaxNode) -> Option<Self> {
33180 let res = match syntax.kind() {
33181 SyntaxKind::CHECK_CONSTRAINT => {
33182 TableConstraint::CheckConstraint(CheckConstraint { syntax })
33183 }
33184 SyntaxKind::EXCLUDE_CONSTRAINT => {
33185 TableConstraint::ExcludeConstraint(ExcludeConstraint { syntax })
33186 }
33187 SyntaxKind::FOREIGN_KEY_CONSTRAINT => {
33188 TableConstraint::ForeignKeyConstraint(ForeignKeyConstraint { syntax })
33189 }
33190 SyntaxKind::PRIMARY_KEY_CONSTRAINT => {
33191 TableConstraint::PrimaryKeyConstraint(PrimaryKeyConstraint { syntax })
33192 }
33193 SyntaxKind::UNIQUE_CONSTRAINT => {
33194 TableConstraint::UniqueConstraint(UniqueConstraint { syntax })
33195 }
33196 _ => {
33197 return None;
33198 }
33199 };
33200 Some(res)
33201 }
33202 #[inline]
33203 fn syntax(&self) -> &SyntaxNode {
33204 match self {
33205 TableConstraint::CheckConstraint(it) => &it.syntax,
33206 TableConstraint::ExcludeConstraint(it) => &it.syntax,
33207 TableConstraint::ForeignKeyConstraint(it) => &it.syntax,
33208 TableConstraint::PrimaryKeyConstraint(it) => &it.syntax,
33209 TableConstraint::UniqueConstraint(it) => &it.syntax,
33210 }
33211 }
33212}
33213impl From<CheckConstraint> for TableConstraint {
33214 #[inline]
33215 fn from(node: CheckConstraint) -> TableConstraint {
33216 TableConstraint::CheckConstraint(node)
33217 }
33218}
33219impl From<ExcludeConstraint> for TableConstraint {
33220 #[inline]
33221 fn from(node: ExcludeConstraint) -> TableConstraint {
33222 TableConstraint::ExcludeConstraint(node)
33223 }
33224}
33225impl From<ForeignKeyConstraint> for TableConstraint {
33226 #[inline]
33227 fn from(node: ForeignKeyConstraint) -> TableConstraint {
33228 TableConstraint::ForeignKeyConstraint(node)
33229 }
33230}
33231impl From<PrimaryKeyConstraint> for TableConstraint {
33232 #[inline]
33233 fn from(node: PrimaryKeyConstraint) -> TableConstraint {
33234 TableConstraint::PrimaryKeyConstraint(node)
33235 }
33236}
33237impl From<UniqueConstraint> for TableConstraint {
33238 #[inline]
33239 fn from(node: UniqueConstraint) -> TableConstraint {
33240 TableConstraint::UniqueConstraint(node)
33241 }
33242}
33243impl AstNode for Timezone {
33244 #[inline]
33245 fn can_cast(kind: SyntaxKind) -> bool {
33246 matches!(
33247 kind,
33248 SyntaxKind::WITH_TIMEZONE | SyntaxKind::WITHOUT_TIMEZONE
33249 )
33250 }
33251 #[inline]
33252 fn cast(syntax: SyntaxNode) -> Option<Self> {
33253 let res = match syntax.kind() {
33254 SyntaxKind::WITH_TIMEZONE => Timezone::WithTimezone(WithTimezone { syntax }),
33255 SyntaxKind::WITHOUT_TIMEZONE => Timezone::WithoutTimezone(WithoutTimezone { syntax }),
33256 _ => {
33257 return None;
33258 }
33259 };
33260 Some(res)
33261 }
33262 #[inline]
33263 fn syntax(&self) -> &SyntaxNode {
33264 match self {
33265 Timezone::WithTimezone(it) => &it.syntax,
33266 Timezone::WithoutTimezone(it) => &it.syntax,
33267 }
33268 }
33269}
33270impl From<WithTimezone> for Timezone {
33271 #[inline]
33272 fn from(node: WithTimezone) -> Timezone {
33273 Timezone::WithTimezone(node)
33274 }
33275}
33276impl From<WithoutTimezone> for Timezone {
33277 #[inline]
33278 fn from(node: WithoutTimezone) -> Timezone {
33279 Timezone::WithoutTimezone(node)
33280 }
33281}
33282impl AstNode for TransactionMode {
33283 #[inline]
33284 fn can_cast(kind: SyntaxKind) -> bool {
33285 matches!(
33286 kind,
33287 SyntaxKind::DEFERRABLE
33288 | SyntaxKind::NOT_DEFERRABLE
33289 | SyntaxKind::READ_COMMITTED
33290 | SyntaxKind::READ_ONLY
33291 | SyntaxKind::READ_UNCOMMITTED
33292 | SyntaxKind::READ_WRITE
33293 | SyntaxKind::REPEATABLE_READ
33294 | SyntaxKind::SERIALIZABLE
33295 )
33296 }
33297 #[inline]
33298 fn cast(syntax: SyntaxNode) -> Option<Self> {
33299 let res = match syntax.kind() {
33300 SyntaxKind::DEFERRABLE => TransactionMode::Deferrable(Deferrable { syntax }),
33301 SyntaxKind::NOT_DEFERRABLE => TransactionMode::NotDeferrable(NotDeferrable { syntax }),
33302 SyntaxKind::READ_COMMITTED => TransactionMode::ReadCommitted(ReadCommitted { syntax }),
33303 SyntaxKind::READ_ONLY => TransactionMode::ReadOnly(ReadOnly { syntax }),
33304 SyntaxKind::READ_UNCOMMITTED => {
33305 TransactionMode::ReadUncommitted(ReadUncommitted { syntax })
33306 }
33307 SyntaxKind::READ_WRITE => TransactionMode::ReadWrite(ReadWrite { syntax }),
33308 SyntaxKind::REPEATABLE_READ => {
33309 TransactionMode::RepeatableRead(RepeatableRead { syntax })
33310 }
33311 SyntaxKind::SERIALIZABLE => TransactionMode::Serializable(Serializable { syntax }),
33312 _ => {
33313 return None;
33314 }
33315 };
33316 Some(res)
33317 }
33318 #[inline]
33319 fn syntax(&self) -> &SyntaxNode {
33320 match self {
33321 TransactionMode::Deferrable(it) => &it.syntax,
33322 TransactionMode::NotDeferrable(it) => &it.syntax,
33323 TransactionMode::ReadCommitted(it) => &it.syntax,
33324 TransactionMode::ReadOnly(it) => &it.syntax,
33325 TransactionMode::ReadUncommitted(it) => &it.syntax,
33326 TransactionMode::ReadWrite(it) => &it.syntax,
33327 TransactionMode::RepeatableRead(it) => &it.syntax,
33328 TransactionMode::Serializable(it) => &it.syntax,
33329 }
33330 }
33331}
33332impl From<Deferrable> for TransactionMode {
33333 #[inline]
33334 fn from(node: Deferrable) -> TransactionMode {
33335 TransactionMode::Deferrable(node)
33336 }
33337}
33338impl From<NotDeferrable> for TransactionMode {
33339 #[inline]
33340 fn from(node: NotDeferrable) -> TransactionMode {
33341 TransactionMode::NotDeferrable(node)
33342 }
33343}
33344impl From<ReadCommitted> for TransactionMode {
33345 #[inline]
33346 fn from(node: ReadCommitted) -> TransactionMode {
33347 TransactionMode::ReadCommitted(node)
33348 }
33349}
33350impl From<ReadOnly> for TransactionMode {
33351 #[inline]
33352 fn from(node: ReadOnly) -> TransactionMode {
33353 TransactionMode::ReadOnly(node)
33354 }
33355}
33356impl From<ReadUncommitted> for TransactionMode {
33357 #[inline]
33358 fn from(node: ReadUncommitted) -> TransactionMode {
33359 TransactionMode::ReadUncommitted(node)
33360 }
33361}
33362impl From<ReadWrite> for TransactionMode {
33363 #[inline]
33364 fn from(node: ReadWrite) -> TransactionMode {
33365 TransactionMode::ReadWrite(node)
33366 }
33367}
33368impl From<RepeatableRead> for TransactionMode {
33369 #[inline]
33370 fn from(node: RepeatableRead) -> TransactionMode {
33371 TransactionMode::RepeatableRead(node)
33372 }
33373}
33374impl From<Serializable> for TransactionMode {
33375 #[inline]
33376 fn from(node: Serializable) -> TransactionMode {
33377 TransactionMode::Serializable(node)
33378 }
33379}
33380impl AstNode for Type {
33381 #[inline]
33382 fn can_cast(kind: SyntaxKind) -> bool {
33383 matches!(
33384 kind,
33385 SyntaxKind::ARRAY_TYPE
33386 | SyntaxKind::BIT_TYPE
33387 | SyntaxKind::CHAR_TYPE
33388 | SyntaxKind::DOUBLE_TYPE
33389 | SyntaxKind::EXPR_TYPE
33390 | SyntaxKind::INTERVAL_TYPE
33391 | SyntaxKind::PATH_TYPE
33392 | SyntaxKind::PERCENT_TYPE
33393 | SyntaxKind::TIME_TYPE
33394 )
33395 }
33396 #[inline]
33397 fn cast(syntax: SyntaxNode) -> Option<Self> {
33398 let res = match syntax.kind() {
33399 SyntaxKind::ARRAY_TYPE => Type::ArrayType(ArrayType { syntax }),
33400 SyntaxKind::BIT_TYPE => Type::BitType(BitType { syntax }),
33401 SyntaxKind::CHAR_TYPE => Type::CharType(CharType { syntax }),
33402 SyntaxKind::DOUBLE_TYPE => Type::DoubleType(DoubleType { syntax }),
33403 SyntaxKind::EXPR_TYPE => Type::ExprType(ExprType { syntax }),
33404 SyntaxKind::INTERVAL_TYPE => Type::IntervalType(IntervalType { syntax }),
33405 SyntaxKind::PATH_TYPE => Type::PathType(PathType { syntax }),
33406 SyntaxKind::PERCENT_TYPE => Type::PercentType(PercentType { syntax }),
33407 SyntaxKind::TIME_TYPE => Type::TimeType(TimeType { syntax }),
33408 _ => {
33409 return None;
33410 }
33411 };
33412 Some(res)
33413 }
33414 #[inline]
33415 fn syntax(&self) -> &SyntaxNode {
33416 match self {
33417 Type::ArrayType(it) => &it.syntax,
33418 Type::BitType(it) => &it.syntax,
33419 Type::CharType(it) => &it.syntax,
33420 Type::DoubleType(it) => &it.syntax,
33421 Type::ExprType(it) => &it.syntax,
33422 Type::IntervalType(it) => &it.syntax,
33423 Type::PathType(it) => &it.syntax,
33424 Type::PercentType(it) => &it.syntax,
33425 Type::TimeType(it) => &it.syntax,
33426 }
33427 }
33428}
33429impl From<ArrayType> for Type {
33430 #[inline]
33431 fn from(node: ArrayType) -> Type {
33432 Type::ArrayType(node)
33433 }
33434}
33435impl From<BitType> for Type {
33436 #[inline]
33437 fn from(node: BitType) -> Type {
33438 Type::BitType(node)
33439 }
33440}
33441impl From<CharType> for Type {
33442 #[inline]
33443 fn from(node: CharType) -> Type {
33444 Type::CharType(node)
33445 }
33446}
33447impl From<DoubleType> for Type {
33448 #[inline]
33449 fn from(node: DoubleType) -> Type {
33450 Type::DoubleType(node)
33451 }
33452}
33453impl From<ExprType> for Type {
33454 #[inline]
33455 fn from(node: ExprType) -> Type {
33456 Type::ExprType(node)
33457 }
33458}
33459impl From<IntervalType> for Type {
33460 #[inline]
33461 fn from(node: IntervalType) -> Type {
33462 Type::IntervalType(node)
33463 }
33464}
33465impl From<PathType> for Type {
33466 #[inline]
33467 fn from(node: PathType) -> Type {
33468 Type::PathType(node)
33469 }
33470}
33471impl From<PercentType> for Type {
33472 #[inline]
33473 fn from(node: PercentType) -> Type {
33474 Type::PercentType(node)
33475 }
33476}
33477impl From<TimeType> for Type {
33478 #[inline]
33479 fn from(node: TimeType) -> Type {
33480 Type::TimeType(node)
33481 }
33482}
33483impl AstNode for WithQuery {
33484 #[inline]
33485 fn can_cast(kind: SyntaxKind) -> bool {
33486 matches!(
33487 kind,
33488 SyntaxKind::COMPOUND_SELECT
33489 | SyntaxKind::DELETE
33490 | SyntaxKind::INSERT
33491 | SyntaxKind::MERGE
33492 | SyntaxKind::PAREN_SELECT
33493 | SyntaxKind::SELECT
33494 | SyntaxKind::TABLE
33495 | SyntaxKind::UPDATE
33496 | SyntaxKind::VALUES
33497 )
33498 }
33499 #[inline]
33500 fn cast(syntax: SyntaxNode) -> Option<Self> {
33501 let res = match syntax.kind() {
33502 SyntaxKind::COMPOUND_SELECT => WithQuery::CompoundSelect(CompoundSelect { syntax }),
33503 SyntaxKind::DELETE => WithQuery::Delete(Delete { syntax }),
33504 SyntaxKind::INSERT => WithQuery::Insert(Insert { syntax }),
33505 SyntaxKind::MERGE => WithQuery::Merge(Merge { syntax }),
33506 SyntaxKind::PAREN_SELECT => WithQuery::ParenSelect(ParenSelect { syntax }),
33507 SyntaxKind::SELECT => WithQuery::Select(Select { syntax }),
33508 SyntaxKind::TABLE => WithQuery::Table(Table { syntax }),
33509 SyntaxKind::UPDATE => WithQuery::Update(Update { syntax }),
33510 SyntaxKind::VALUES => WithQuery::Values(Values { syntax }),
33511 _ => {
33512 return None;
33513 }
33514 };
33515 Some(res)
33516 }
33517 #[inline]
33518 fn syntax(&self) -> &SyntaxNode {
33519 match self {
33520 WithQuery::CompoundSelect(it) => &it.syntax,
33521 WithQuery::Delete(it) => &it.syntax,
33522 WithQuery::Insert(it) => &it.syntax,
33523 WithQuery::Merge(it) => &it.syntax,
33524 WithQuery::ParenSelect(it) => &it.syntax,
33525 WithQuery::Select(it) => &it.syntax,
33526 WithQuery::Table(it) => &it.syntax,
33527 WithQuery::Update(it) => &it.syntax,
33528 WithQuery::Values(it) => &it.syntax,
33529 }
33530 }
33531}
33532impl From<CompoundSelect> for WithQuery {
33533 #[inline]
33534 fn from(node: CompoundSelect) -> WithQuery {
33535 WithQuery::CompoundSelect(node)
33536 }
33537}
33538impl From<Delete> for WithQuery {
33539 #[inline]
33540 fn from(node: Delete) -> WithQuery {
33541 WithQuery::Delete(node)
33542 }
33543}
33544impl From<Insert> for WithQuery {
33545 #[inline]
33546 fn from(node: Insert) -> WithQuery {
33547 WithQuery::Insert(node)
33548 }
33549}
33550impl From<Merge> for WithQuery {
33551 #[inline]
33552 fn from(node: Merge) -> WithQuery {
33553 WithQuery::Merge(node)
33554 }
33555}
33556impl From<ParenSelect> for WithQuery {
33557 #[inline]
33558 fn from(node: ParenSelect) -> WithQuery {
33559 WithQuery::ParenSelect(node)
33560 }
33561}
33562impl From<Select> for WithQuery {
33563 #[inline]
33564 fn from(node: Select) -> WithQuery {
33565 WithQuery::Select(node)
33566 }
33567}
33568impl From<Table> for WithQuery {
33569 #[inline]
33570 fn from(node: Table) -> WithQuery {
33571 WithQuery::Table(node)
33572 }
33573}
33574impl From<Update> for WithQuery {
33575 #[inline]
33576 fn from(node: Update) -> WithQuery {
33577 WithQuery::Update(node)
33578 }
33579}
33580impl From<Values> for WithQuery {
33581 #[inline]
33582 fn from(node: Values) -> WithQuery {
33583 WithQuery::Values(node)
33584 }
33585}