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 expr(&self) -> Option<Expr> {
1003 support::child(&self.syntax)
1004 }
1005 #[inline]
1006 pub fn name_ref(&self) -> Option<NameRef> {
1007 support::child(&self.syntax)
1008 }
1009 #[inline]
1010 pub fn on_table(&self) -> Option<OnTable> {
1011 support::child(&self.syntax)
1012 }
1013 #[inline]
1014 pub fn rename_to(&self) -> Option<RenameTo> {
1015 support::child(&self.syntax)
1016 }
1017 #[inline]
1018 pub fn role_ref_list(&self) -> Option<RoleRefList> {
1019 support::child(&self.syntax)
1020 }
1021 #[inline]
1022 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
1023 support::token(&self.syntax, SyntaxKind::L_PAREN)
1024 }
1025 #[inline]
1026 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
1027 support::token(&self.syntax, SyntaxKind::R_PAREN)
1028 }
1029 #[inline]
1030 pub fn alter_token(&self) -> Option<SyntaxToken> {
1031 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1032 }
1033 #[inline]
1034 pub fn check_token(&self) -> Option<SyntaxToken> {
1035 support::token(&self.syntax, SyntaxKind::CHECK_KW)
1036 }
1037 #[inline]
1038 pub fn policy_token(&self) -> Option<SyntaxToken> {
1039 support::token(&self.syntax, SyntaxKind::POLICY_KW)
1040 }
1041 #[inline]
1042 pub fn to_token(&self) -> Option<SyntaxToken> {
1043 support::token(&self.syntax, SyntaxKind::TO_KW)
1044 }
1045 #[inline]
1046 pub fn using_token(&self) -> Option<SyntaxToken> {
1047 support::token(&self.syntax, SyntaxKind::USING_KW)
1048 }
1049 #[inline]
1050 pub fn with_token(&self) -> Option<SyntaxToken> {
1051 support::token(&self.syntax, SyntaxKind::WITH_KW)
1052 }
1053}
1054
1055#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1056pub struct AlterProcedure {
1057 pub(crate) syntax: SyntaxNode,
1058}
1059impl AlterProcedure {
1060 #[inline]
1061 pub fn depends_on_extension(&self) -> Option<DependsOnExtension> {
1062 support::child(&self.syntax)
1063 }
1064 #[inline]
1065 pub fn func_option_list(&self) -> Option<FuncOptionList> {
1066 support::child(&self.syntax)
1067 }
1068 #[inline]
1069 pub fn function_sig(&self) -> Option<FunctionSig> {
1070 support::child(&self.syntax)
1071 }
1072 #[inline]
1073 pub fn no_depends_on_extension(&self) -> Option<NoDependsOnExtension> {
1074 support::child(&self.syntax)
1075 }
1076 #[inline]
1077 pub fn owner_to(&self) -> Option<OwnerTo> {
1078 support::child(&self.syntax)
1079 }
1080 #[inline]
1081 pub fn rename_to(&self) -> Option<RenameTo> {
1082 support::child(&self.syntax)
1083 }
1084 #[inline]
1085 pub fn set_schema(&self) -> Option<SetSchema> {
1086 support::child(&self.syntax)
1087 }
1088 #[inline]
1089 pub fn alter_token(&self) -> Option<SyntaxToken> {
1090 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1091 }
1092 #[inline]
1093 pub fn procedure_token(&self) -> Option<SyntaxToken> {
1094 support::token(&self.syntax, SyntaxKind::PROCEDURE_KW)
1095 }
1096 #[inline]
1097 pub fn restrict_token(&self) -> Option<SyntaxToken> {
1098 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
1099 }
1100}
1101
1102#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1103pub struct AlterPublication {
1104 pub(crate) syntax: SyntaxNode,
1105}
1106impl AlterPublication {
1107 #[inline]
1108 pub fn name_ref(&self) -> Option<NameRef> {
1109 support::child(&self.syntax)
1110 }
1111 #[inline]
1112 pub fn alter_token(&self) -> Option<SyntaxToken> {
1113 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1114 }
1115 #[inline]
1116 pub fn publication_token(&self) -> Option<SyntaxToken> {
1117 support::token(&self.syntax, SyntaxKind::PUBLICATION_KW)
1118 }
1119}
1120
1121#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1122pub struct AlterRole {
1123 pub(crate) syntax: SyntaxNode,
1124}
1125impl AlterRole {
1126 #[inline]
1127 pub fn role_ref(&self) -> Option<RoleRef> {
1128 support::child(&self.syntax)
1129 }
1130 #[inline]
1131 pub fn alter_token(&self) -> Option<SyntaxToken> {
1132 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1133 }
1134 #[inline]
1135 pub fn role_token(&self) -> Option<SyntaxToken> {
1136 support::token(&self.syntax, SyntaxKind::ROLE_KW)
1137 }
1138}
1139
1140#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1141pub struct AlterRoutine {
1142 pub(crate) syntax: SyntaxNode,
1143}
1144impl AlterRoutine {
1145 #[inline]
1146 pub fn depends_on_extension(&self) -> Option<DependsOnExtension> {
1147 support::child(&self.syntax)
1148 }
1149 #[inline]
1150 pub fn func_option_list(&self) -> Option<FuncOptionList> {
1151 support::child(&self.syntax)
1152 }
1153 #[inline]
1154 pub fn function_sig(&self) -> Option<FunctionSig> {
1155 support::child(&self.syntax)
1156 }
1157 #[inline]
1158 pub fn no_depends_on_extension(&self) -> Option<NoDependsOnExtension> {
1159 support::child(&self.syntax)
1160 }
1161 #[inline]
1162 pub fn owner_to(&self) -> Option<OwnerTo> {
1163 support::child(&self.syntax)
1164 }
1165 #[inline]
1166 pub fn rename_to(&self) -> Option<RenameTo> {
1167 support::child(&self.syntax)
1168 }
1169 #[inline]
1170 pub fn set_schema(&self) -> Option<SetSchema> {
1171 support::child(&self.syntax)
1172 }
1173 #[inline]
1174 pub fn alter_token(&self) -> Option<SyntaxToken> {
1175 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1176 }
1177 #[inline]
1178 pub fn restrict_token(&self) -> Option<SyntaxToken> {
1179 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
1180 }
1181 #[inline]
1182 pub fn routine_token(&self) -> Option<SyntaxToken> {
1183 support::token(&self.syntax, SyntaxKind::ROUTINE_KW)
1184 }
1185}
1186
1187#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1188pub struct AlterRule {
1189 pub(crate) syntax: SyntaxNode,
1190}
1191impl AlterRule {
1192 #[inline]
1193 pub fn name_ref(&self) -> Option<NameRef> {
1194 support::child(&self.syntax)
1195 }
1196 #[inline]
1197 pub fn on_table(&self) -> Option<OnTable> {
1198 support::child(&self.syntax)
1199 }
1200 #[inline]
1201 pub fn rename_to(&self) -> Option<RenameTo> {
1202 support::child(&self.syntax)
1203 }
1204 #[inline]
1205 pub fn alter_token(&self) -> Option<SyntaxToken> {
1206 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1207 }
1208 #[inline]
1209 pub fn on_token(&self) -> Option<SyntaxToken> {
1210 support::token(&self.syntax, SyntaxKind::ON_KW)
1211 }
1212 #[inline]
1213 pub fn rule_token(&self) -> Option<SyntaxToken> {
1214 support::token(&self.syntax, SyntaxKind::RULE_KW)
1215 }
1216}
1217
1218#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1219pub struct AlterSchema {
1220 pub(crate) syntax: SyntaxNode,
1221}
1222impl AlterSchema {
1223 #[inline]
1224 pub fn name_ref(&self) -> Option<NameRef> {
1225 support::child(&self.syntax)
1226 }
1227 #[inline]
1228 pub fn owner_to(&self) -> Option<OwnerTo> {
1229 support::child(&self.syntax)
1230 }
1231 #[inline]
1232 pub fn rename_to(&self) -> Option<RenameTo> {
1233 support::child(&self.syntax)
1234 }
1235 #[inline]
1236 pub fn alter_token(&self) -> Option<SyntaxToken> {
1237 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1238 }
1239 #[inline]
1240 pub fn schema_token(&self) -> Option<SyntaxToken> {
1241 support::token(&self.syntax, SyntaxKind::SCHEMA_KW)
1242 }
1243}
1244
1245#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1246pub struct AlterSequence {
1247 pub(crate) syntax: SyntaxNode,
1248}
1249impl AlterSequence {
1250 #[inline]
1251 pub fn if_exists(&self) -> Option<IfExists> {
1252 support::child(&self.syntax)
1253 }
1254 #[inline]
1255 pub fn path(&self) -> Option<Path> {
1256 support::child(&self.syntax)
1257 }
1258 #[inline]
1259 pub fn alter_token(&self) -> Option<SyntaxToken> {
1260 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1261 }
1262 #[inline]
1263 pub fn sequence_token(&self) -> Option<SyntaxToken> {
1264 support::token(&self.syntax, SyntaxKind::SEQUENCE_KW)
1265 }
1266}
1267
1268#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1269pub struct AlterServer {
1270 pub(crate) syntax: SyntaxNode,
1271}
1272impl AlterServer {
1273 #[inline]
1274 pub fn alter_option_list(&self) -> Option<AlterOptionList> {
1275 support::child(&self.syntax)
1276 }
1277 #[inline]
1278 pub fn name_ref(&self) -> Option<NameRef> {
1279 support::child(&self.syntax)
1280 }
1281 #[inline]
1282 pub fn alter_token(&self) -> Option<SyntaxToken> {
1283 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1284 }
1285 #[inline]
1286 pub fn server_token(&self) -> Option<SyntaxToken> {
1287 support::token(&self.syntax, SyntaxKind::SERVER_KW)
1288 }
1289}
1290
1291#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1292pub struct AlterSetStatistics {
1293 pub(crate) syntax: SyntaxNode,
1294}
1295impl AlterSetStatistics {
1296 #[inline]
1297 pub fn literal(&self) -> Option<Literal> {
1298 support::child(&self.syntax)
1299 }
1300 #[inline]
1301 pub fn name_ref(&self) -> Option<NameRef> {
1302 support::child(&self.syntax)
1303 }
1304 #[inline]
1305 pub fn column_token(&self) -> Option<SyntaxToken> {
1306 support::token(&self.syntax, SyntaxKind::COLUMN_KW)
1307 }
1308 #[inline]
1309 pub fn set_token(&self) -> Option<SyntaxToken> {
1310 support::token(&self.syntax, SyntaxKind::SET_KW)
1311 }
1312 #[inline]
1313 pub fn statistics_token(&self) -> Option<SyntaxToken> {
1314 support::token(&self.syntax, SyntaxKind::STATISTICS_KW)
1315 }
1316}
1317
1318#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1319pub struct AlterStatistics {
1320 pub(crate) syntax: SyntaxNode,
1321}
1322impl AlterStatistics {
1323 #[inline]
1324 pub fn path(&self) -> Option<Path> {
1325 support::child(&self.syntax)
1326 }
1327 #[inline]
1328 pub fn alter_token(&self) -> Option<SyntaxToken> {
1329 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1330 }
1331 #[inline]
1332 pub fn statistics_token(&self) -> Option<SyntaxToken> {
1333 support::token(&self.syntax, SyntaxKind::STATISTICS_KW)
1334 }
1335}
1336
1337#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1338pub struct AlterSubscription {
1339 pub(crate) syntax: SyntaxNode,
1340}
1341impl AlterSubscription {
1342 #[inline]
1343 pub fn name_ref(&self) -> Option<NameRef> {
1344 support::child(&self.syntax)
1345 }
1346 #[inline]
1347 pub fn alter_token(&self) -> Option<SyntaxToken> {
1348 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1349 }
1350 #[inline]
1351 pub fn subscription_token(&self) -> Option<SyntaxToken> {
1352 support::token(&self.syntax, SyntaxKind::SUBSCRIPTION_KW)
1353 }
1354}
1355
1356#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1357pub struct AlterSystem {
1358 pub(crate) syntax: SyntaxNode,
1359}
1360impl AlterSystem {
1361 #[inline]
1362 pub fn alter_token(&self) -> Option<SyntaxToken> {
1363 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1364 }
1365 #[inline]
1366 pub fn set_token(&self) -> Option<SyntaxToken> {
1367 support::token(&self.syntax, SyntaxKind::SET_KW)
1368 }
1369 #[inline]
1370 pub fn system_token(&self) -> Option<SyntaxToken> {
1371 support::token(&self.syntax, SyntaxKind::SYSTEM_KW)
1372 }
1373}
1374
1375#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1376pub struct AlterTable {
1377 pub(crate) syntax: SyntaxNode,
1378}
1379impl AlterTable {
1380 #[inline]
1381 pub fn actions(&self) -> AstChildren<AlterTableAction> {
1382 support::children(&self.syntax)
1383 }
1384 #[inline]
1385 pub fn relation_name(&self) -> Option<RelationName> {
1386 support::child(&self.syntax)
1387 }
1388 #[inline]
1389 pub fn alter_token(&self) -> Option<SyntaxToken> {
1390 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1391 }
1392 #[inline]
1393 pub fn table_token(&self) -> Option<SyntaxToken> {
1394 support::token(&self.syntax, SyntaxKind::TABLE_KW)
1395 }
1396}
1397
1398#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1399pub struct AlterTablespace {
1400 pub(crate) syntax: SyntaxNode,
1401}
1402impl AlterTablespace {
1403 #[inline]
1404 pub fn owner_to(&self) -> Option<OwnerTo> {
1405 support::child(&self.syntax)
1406 }
1407 #[inline]
1408 pub fn path(&self) -> Option<Path> {
1409 support::child(&self.syntax)
1410 }
1411 #[inline]
1412 pub fn rename_to(&self) -> Option<RenameTo> {
1413 support::child(&self.syntax)
1414 }
1415 #[inline]
1416 pub fn reset_options(&self) -> Option<ResetOptions> {
1417 support::child(&self.syntax)
1418 }
1419 #[inline]
1420 pub fn set_options(&self) -> Option<SetOptions> {
1421 support::child(&self.syntax)
1422 }
1423 #[inline]
1424 pub fn alter_token(&self) -> Option<SyntaxToken> {
1425 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1426 }
1427 #[inline]
1428 pub fn tablespace_token(&self) -> Option<SyntaxToken> {
1429 support::token(&self.syntax, SyntaxKind::TABLESPACE_KW)
1430 }
1431}
1432
1433#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1434pub struct AlterTextSearchConfiguration {
1435 pub(crate) syntax: SyntaxNode,
1436}
1437impl AlterTextSearchConfiguration {
1438 #[inline]
1439 pub fn owner_to(&self) -> Option<OwnerTo> {
1440 support::child(&self.syntax)
1441 }
1442 #[inline]
1443 pub fn path(&self) -> Option<Path> {
1444 support::child(&self.syntax)
1445 }
1446 #[inline]
1447 pub fn rename_to(&self) -> Option<RenameTo> {
1448 support::child(&self.syntax)
1449 }
1450 #[inline]
1451 pub fn set_schema(&self) -> Option<SetSchema> {
1452 support::child(&self.syntax)
1453 }
1454 #[inline]
1455 pub fn alter_token(&self) -> Option<SyntaxToken> {
1456 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1457 }
1458 #[inline]
1459 pub fn configuration_token(&self) -> Option<SyntaxToken> {
1460 support::token(&self.syntax, SyntaxKind::CONFIGURATION_KW)
1461 }
1462 #[inline]
1463 pub fn search_token(&self) -> Option<SyntaxToken> {
1464 support::token(&self.syntax, SyntaxKind::SEARCH_KW)
1465 }
1466 #[inline]
1467 pub fn text_token(&self) -> Option<SyntaxToken> {
1468 support::token(&self.syntax, SyntaxKind::TEXT_KW)
1469 }
1470}
1471
1472#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1473pub struct AlterTextSearchDictionary {
1474 pub(crate) syntax: SyntaxNode,
1475}
1476impl AlterTextSearchDictionary {
1477 #[inline]
1478 pub fn attribute_list(&self) -> Option<AttributeList> {
1479 support::child(&self.syntax)
1480 }
1481 #[inline]
1482 pub fn owner_to(&self) -> Option<OwnerTo> {
1483 support::child(&self.syntax)
1484 }
1485 #[inline]
1486 pub fn path(&self) -> Option<Path> {
1487 support::child(&self.syntax)
1488 }
1489 #[inline]
1490 pub fn rename_to(&self) -> Option<RenameTo> {
1491 support::child(&self.syntax)
1492 }
1493 #[inline]
1494 pub fn set_schema(&self) -> Option<SetSchema> {
1495 support::child(&self.syntax)
1496 }
1497 #[inline]
1498 pub fn alter_token(&self) -> Option<SyntaxToken> {
1499 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1500 }
1501 #[inline]
1502 pub fn dictionary_token(&self) -> Option<SyntaxToken> {
1503 support::token(&self.syntax, SyntaxKind::DICTIONARY_KW)
1504 }
1505 #[inline]
1506 pub fn search_token(&self) -> Option<SyntaxToken> {
1507 support::token(&self.syntax, SyntaxKind::SEARCH_KW)
1508 }
1509 #[inline]
1510 pub fn text_token(&self) -> Option<SyntaxToken> {
1511 support::token(&self.syntax, SyntaxKind::TEXT_KW)
1512 }
1513}
1514
1515#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1516pub struct AlterTextSearchParser {
1517 pub(crate) syntax: SyntaxNode,
1518}
1519impl AlterTextSearchParser {
1520 #[inline]
1521 pub fn path(&self) -> Option<Path> {
1522 support::child(&self.syntax)
1523 }
1524 #[inline]
1525 pub fn rename_to(&self) -> Option<RenameTo> {
1526 support::child(&self.syntax)
1527 }
1528 #[inline]
1529 pub fn set_schema(&self) -> Option<SetSchema> {
1530 support::child(&self.syntax)
1531 }
1532 #[inline]
1533 pub fn alter_token(&self) -> Option<SyntaxToken> {
1534 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1535 }
1536 #[inline]
1537 pub fn parser_token(&self) -> Option<SyntaxToken> {
1538 support::token(&self.syntax, SyntaxKind::PARSER_KW)
1539 }
1540 #[inline]
1541 pub fn search_token(&self) -> Option<SyntaxToken> {
1542 support::token(&self.syntax, SyntaxKind::SEARCH_KW)
1543 }
1544 #[inline]
1545 pub fn text_token(&self) -> Option<SyntaxToken> {
1546 support::token(&self.syntax, SyntaxKind::TEXT_KW)
1547 }
1548}
1549
1550#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1551pub struct AlterTextSearchTemplate {
1552 pub(crate) syntax: SyntaxNode,
1553}
1554impl AlterTextSearchTemplate {
1555 #[inline]
1556 pub fn path(&self) -> Option<Path> {
1557 support::child(&self.syntax)
1558 }
1559 #[inline]
1560 pub fn rename_to(&self) -> Option<RenameTo> {
1561 support::child(&self.syntax)
1562 }
1563 #[inline]
1564 pub fn set_schema(&self) -> Option<SetSchema> {
1565 support::child(&self.syntax)
1566 }
1567 #[inline]
1568 pub fn alter_token(&self) -> Option<SyntaxToken> {
1569 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1570 }
1571 #[inline]
1572 pub fn search_token(&self) -> Option<SyntaxToken> {
1573 support::token(&self.syntax, SyntaxKind::SEARCH_KW)
1574 }
1575 #[inline]
1576 pub fn template_token(&self) -> Option<SyntaxToken> {
1577 support::token(&self.syntax, SyntaxKind::TEMPLATE_KW)
1578 }
1579 #[inline]
1580 pub fn text_token(&self) -> Option<SyntaxToken> {
1581 support::token(&self.syntax, SyntaxKind::TEXT_KW)
1582 }
1583}
1584
1585#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1586pub struct AlterTrigger {
1587 pub(crate) syntax: SyntaxNode,
1588}
1589impl AlterTrigger {
1590 #[inline]
1591 pub fn depends_on_extension(&self) -> Option<DependsOnExtension> {
1592 support::child(&self.syntax)
1593 }
1594 #[inline]
1595 pub fn name_ref(&self) -> Option<NameRef> {
1596 support::child(&self.syntax)
1597 }
1598 #[inline]
1599 pub fn no_depends_on_extension(&self) -> Option<NoDependsOnExtension> {
1600 support::child(&self.syntax)
1601 }
1602 #[inline]
1603 pub fn on_table(&self) -> Option<OnTable> {
1604 support::child(&self.syntax)
1605 }
1606 #[inline]
1607 pub fn rename_to(&self) -> Option<RenameTo> {
1608 support::child(&self.syntax)
1609 }
1610 #[inline]
1611 pub fn alter_token(&self) -> Option<SyntaxToken> {
1612 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1613 }
1614 #[inline]
1615 pub fn trigger_token(&self) -> Option<SyntaxToken> {
1616 support::token(&self.syntax, SyntaxKind::TRIGGER_KW)
1617 }
1618}
1619
1620#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1621pub struct AlterType {
1622 pub(crate) syntax: SyntaxNode,
1623}
1624impl AlterType {
1625 #[inline]
1626 pub fn path(&self) -> Option<Path> {
1627 support::child(&self.syntax)
1628 }
1629 #[inline]
1630 pub fn alter_token(&self) -> Option<SyntaxToken> {
1631 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1632 }
1633 #[inline]
1634 pub fn type_token(&self) -> Option<SyntaxToken> {
1635 support::token(&self.syntax, SyntaxKind::TYPE_KW)
1636 }
1637}
1638
1639#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1640pub struct AlterUser {
1641 pub(crate) syntax: SyntaxNode,
1642}
1643impl AlterUser {
1644 #[inline]
1645 pub fn role_ref(&self) -> Option<RoleRef> {
1646 support::child(&self.syntax)
1647 }
1648 #[inline]
1649 pub fn alter_token(&self) -> Option<SyntaxToken> {
1650 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1651 }
1652 #[inline]
1653 pub fn user_token(&self) -> Option<SyntaxToken> {
1654 support::token(&self.syntax, SyntaxKind::USER_KW)
1655 }
1656}
1657
1658#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1659pub struct AlterUserMapping {
1660 pub(crate) syntax: SyntaxNode,
1661}
1662impl AlterUserMapping {
1663 #[inline]
1664 pub fn alter_option_list(&self) -> Option<AlterOptionList> {
1665 support::child(&self.syntax)
1666 }
1667 #[inline]
1668 pub fn role_ref(&self) -> Option<RoleRef> {
1669 support::child(&self.syntax)
1670 }
1671 #[inline]
1672 pub fn server_name(&self) -> Option<ServerName> {
1673 support::child(&self.syntax)
1674 }
1675 #[inline]
1676 pub fn alter_token(&self) -> Option<SyntaxToken> {
1677 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1678 }
1679 #[inline]
1680 pub fn for_token(&self) -> Option<SyntaxToken> {
1681 support::token(&self.syntax, SyntaxKind::FOR_KW)
1682 }
1683 #[inline]
1684 pub fn mapping_token(&self) -> Option<SyntaxToken> {
1685 support::token(&self.syntax, SyntaxKind::MAPPING_KW)
1686 }
1687 #[inline]
1688 pub fn user_token(&self) -> Option<SyntaxToken> {
1689 support::token(&self.syntax, SyntaxKind::USER_KW)
1690 }
1691}
1692
1693#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1694pub struct AlterView {
1695 pub(crate) syntax: SyntaxNode,
1696}
1697impl AlterView {
1698 #[inline]
1699 pub fn path(&self) -> Option<Path> {
1700 support::child(&self.syntax)
1701 }
1702 #[inline]
1703 pub fn alter_token(&self) -> Option<SyntaxToken> {
1704 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1705 }
1706 #[inline]
1707 pub fn view_token(&self) -> Option<SyntaxToken> {
1708 support::token(&self.syntax, SyntaxKind::VIEW_KW)
1709 }
1710}
1711
1712#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1713pub struct Analyze {
1714 pub(crate) syntax: SyntaxNode,
1715}
1716impl Analyze {
1717 #[inline]
1718 pub fn option_item_list(&self) -> Option<OptionItemList> {
1719 support::child(&self.syntax)
1720 }
1721 #[inline]
1722 pub fn table_and_columns_list(&self) -> Option<TableAndColumnsList> {
1723 support::child(&self.syntax)
1724 }
1725 #[inline]
1726 pub fn analyse_token(&self) -> Option<SyntaxToken> {
1727 support::token(&self.syntax, SyntaxKind::ANALYSE_KW)
1728 }
1729 #[inline]
1730 pub fn analyze_token(&self) -> Option<SyntaxToken> {
1731 support::token(&self.syntax, SyntaxKind::ANALYZE_KW)
1732 }
1733 #[inline]
1734 pub fn verbose_token(&self) -> Option<SyntaxToken> {
1735 support::token(&self.syntax, SyntaxKind::VERBOSE_KW)
1736 }
1737}
1738
1739#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1740pub struct AnyFn {
1741 pub(crate) syntax: SyntaxNode,
1742}
1743impl AnyFn {
1744 #[inline]
1745 pub fn expr(&self) -> Option<Expr> {
1746 support::child(&self.syntax)
1747 }
1748 #[inline]
1749 pub fn select_variant(&self) -> Option<SelectVariant> {
1750 support::child(&self.syntax)
1751 }
1752 #[inline]
1753 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
1754 support::token(&self.syntax, SyntaxKind::L_PAREN)
1755 }
1756 #[inline]
1757 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
1758 support::token(&self.syntax, SyntaxKind::R_PAREN)
1759 }
1760 #[inline]
1761 pub fn any_token(&self) -> Option<SyntaxToken> {
1762 support::token(&self.syntax, SyntaxKind::ANY_KW)
1763 }
1764}
1765
1766#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1767pub struct Arg {
1768 pub(crate) syntax: SyntaxNode,
1769}
1770impl Arg {
1771 #[inline]
1772 pub fn expr(&self) -> Option<Expr> {
1773 support::child(&self.syntax)
1774 }
1775}
1776
1777#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1778pub struct ArgList {
1779 pub(crate) syntax: SyntaxNode,
1780}
1781impl ArgList {
1782 #[inline]
1783 pub fn args(&self) -> AstChildren<Expr> {
1784 support::children(&self.syntax)
1785 }
1786 #[inline]
1787 pub fn expr(&self) -> Option<Expr> {
1788 support::child(&self.syntax)
1789 }
1790 #[inline]
1791 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
1792 support::token(&self.syntax, SyntaxKind::L_PAREN)
1793 }
1794 #[inline]
1795 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
1796 support::token(&self.syntax, SyntaxKind::R_PAREN)
1797 }
1798 #[inline]
1799 pub fn star_token(&self) -> Option<SyntaxToken> {
1800 support::token(&self.syntax, SyntaxKind::STAR)
1801 }
1802 #[inline]
1803 pub fn all_token(&self) -> Option<SyntaxToken> {
1804 support::token(&self.syntax, SyntaxKind::ALL_KW)
1805 }
1806 #[inline]
1807 pub fn distinct_token(&self) -> Option<SyntaxToken> {
1808 support::token(&self.syntax, SyntaxKind::DISTINCT_KW)
1809 }
1810 #[inline]
1811 pub fn variadic_token(&self) -> Option<SyntaxToken> {
1812 support::token(&self.syntax, SyntaxKind::VARIADIC_KW)
1813 }
1814}
1815
1816#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1817pub struct ArrayExpr {
1818 pub(crate) syntax: SyntaxNode,
1819}
1820impl ArrayExpr {
1821 #[inline]
1822 pub fn exprs(&self) -> AstChildren<Expr> {
1823 support::children(&self.syntax)
1824 }
1825 #[inline]
1826 pub fn select(&self) -> Option<Select> {
1827 support::child(&self.syntax)
1828 }
1829 #[inline]
1830 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
1831 support::token(&self.syntax, SyntaxKind::L_PAREN)
1832 }
1833 #[inline]
1834 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
1835 support::token(&self.syntax, SyntaxKind::R_PAREN)
1836 }
1837 #[inline]
1838 pub fn l_brack_token(&self) -> Option<SyntaxToken> {
1839 support::token(&self.syntax, SyntaxKind::L_BRACK)
1840 }
1841 #[inline]
1842 pub fn r_brack_token(&self) -> Option<SyntaxToken> {
1843 support::token(&self.syntax, SyntaxKind::R_BRACK)
1844 }
1845 #[inline]
1846 pub fn array_token(&self) -> Option<SyntaxToken> {
1847 support::token(&self.syntax, SyntaxKind::ARRAY_KW)
1848 }
1849}
1850
1851#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1852pub struct ArrayType {
1853 pub(crate) syntax: SyntaxNode,
1854}
1855impl ArrayType {
1856 #[inline]
1857 pub fn expr(&self) -> Option<Expr> {
1858 support::child(&self.syntax)
1859 }
1860 #[inline]
1861 pub fn name_ref(&self) -> Option<NameRef> {
1862 support::child(&self.syntax)
1863 }
1864 #[inline]
1865 pub fn ty(&self) -> Option<Type> {
1866 support::child(&self.syntax)
1867 }
1868 #[inline]
1869 pub fn l_brack_token(&self) -> Option<SyntaxToken> {
1870 support::token(&self.syntax, SyntaxKind::L_BRACK)
1871 }
1872 #[inline]
1873 pub fn r_brack_token(&self) -> Option<SyntaxToken> {
1874 support::token(&self.syntax, SyntaxKind::R_BRACK)
1875 }
1876 #[inline]
1877 pub fn array_token(&self) -> Option<SyntaxToken> {
1878 support::token(&self.syntax, SyntaxKind::ARRAY_KW)
1879 }
1880}
1881
1882#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1883pub struct AsFuncOption {
1884 pub(crate) syntax: SyntaxNode,
1885}
1886impl AsFuncOption {
1887 #[inline]
1888 pub fn definition(&self) -> Option<Literal> {
1889 support::child(&self.syntax)
1890 }
1891 #[inline]
1892 pub fn link_symbol(&self) -> Option<Literal> {
1893 support::child(&self.syntax)
1894 }
1895 #[inline]
1896 pub fn obj_file(&self) -> Option<Literal> {
1897 support::child(&self.syntax)
1898 }
1899 #[inline]
1900 pub fn comma_token(&self) -> Option<SyntaxToken> {
1901 support::token(&self.syntax, SyntaxKind::COMMA)
1902 }
1903 #[inline]
1904 pub fn as_token(&self) -> Option<SyntaxToken> {
1905 support::token(&self.syntax, SyntaxKind::AS_KW)
1906 }
1907}
1908
1909#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1910pub struct AsName {
1911 pub(crate) syntax: SyntaxNode,
1912}
1913impl AsName {
1914 #[inline]
1915 pub fn name(&self) -> Option<Name> {
1916 support::child(&self.syntax)
1917 }
1918 #[inline]
1919 pub fn as_token(&self) -> Option<SyntaxToken> {
1920 support::token(&self.syntax, SyntaxKind::AS_KW)
1921 }
1922}
1923
1924#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1925pub struct AtTimeZone {
1926 pub(crate) syntax: SyntaxNode,
1927}
1928impl AtTimeZone {
1929 #[inline]
1930 pub fn at_token(&self) -> Option<SyntaxToken> {
1931 support::token(&self.syntax, SyntaxKind::AT_KW)
1932 }
1933 #[inline]
1934 pub fn time_token(&self) -> Option<SyntaxToken> {
1935 support::token(&self.syntax, SyntaxKind::TIME_KW)
1936 }
1937 #[inline]
1938 pub fn zone_token(&self) -> Option<SyntaxToken> {
1939 support::token(&self.syntax, SyntaxKind::ZONE_KW)
1940 }
1941}
1942
1943#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1944pub struct AttachPartition {
1945 pub(crate) syntax: SyntaxNode,
1946}
1947impl AttachPartition {
1948 #[inline]
1949 pub fn partition_type(&self) -> Option<PartitionType> {
1950 support::child(&self.syntax)
1951 }
1952 #[inline]
1953 pub fn path(&self) -> Option<Path> {
1954 support::child(&self.syntax)
1955 }
1956 #[inline]
1957 pub fn attach_token(&self) -> Option<SyntaxToken> {
1958 support::token(&self.syntax, SyntaxKind::ATTACH_KW)
1959 }
1960 #[inline]
1961 pub fn partition_token(&self) -> Option<SyntaxToken> {
1962 support::token(&self.syntax, SyntaxKind::PARTITION_KW)
1963 }
1964}
1965
1966#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1967pub struct AttributeList {
1968 pub(crate) syntax: SyntaxNode,
1969}
1970impl AttributeList {
1971 #[inline]
1972 pub fn attribute_options(&self) -> AstChildren<AttributeOption> {
1973 support::children(&self.syntax)
1974 }
1975 #[inline]
1976 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
1977 support::token(&self.syntax, SyntaxKind::L_PAREN)
1978 }
1979 #[inline]
1980 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
1981 support::token(&self.syntax, SyntaxKind::R_PAREN)
1982 }
1983}
1984
1985#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1986pub struct AttributeOption {
1987 pub(crate) syntax: SyntaxNode,
1988}
1989impl AttributeOption {
1990 #[inline]
1991 pub fn attribute_value(&self) -> Option<AttributeValue> {
1992 support::child(&self.syntax)
1993 }
1994 #[inline]
1995 pub fn name(&self) -> Option<Name> {
1996 support::child(&self.syntax)
1997 }
1998 #[inline]
1999 pub fn dot_token(&self) -> Option<SyntaxToken> {
2000 support::token(&self.syntax, SyntaxKind::DOT)
2001 }
2002 #[inline]
2003 pub fn eq_token(&self) -> Option<SyntaxToken> {
2004 support::token(&self.syntax, SyntaxKind::EQ)
2005 }
2006}
2007
2008#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2009pub struct AttributeValue {
2010 pub(crate) syntax: SyntaxNode,
2011}
2012impl AttributeValue {
2013 #[inline]
2014 pub fn literal(&self) -> Option<Literal> {
2015 support::child(&self.syntax)
2016 }
2017 #[inline]
2018 pub fn op(&self) -> Option<Op> {
2019 support::child(&self.syntax)
2020 }
2021 #[inline]
2022 pub fn ty(&self) -> Option<Type> {
2023 support::child(&self.syntax)
2024 }
2025 #[inline]
2026 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
2027 support::token(&self.syntax, SyntaxKind::L_PAREN)
2028 }
2029 #[inline]
2030 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
2031 support::token(&self.syntax, SyntaxKind::R_PAREN)
2032 }
2033 #[inline]
2034 pub fn none_token(&self) -> Option<SyntaxToken> {
2035 support::token(&self.syntax, SyntaxKind::NONE_KW)
2036 }
2037 #[inline]
2038 pub fn operator_token(&self) -> Option<SyntaxToken> {
2039 support::token(&self.syntax, SyntaxKind::OPERATOR_KW)
2040 }
2041}
2042
2043#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2044pub struct Begin {
2045 pub(crate) syntax: SyntaxNode,
2046}
2047impl Begin {
2048 #[inline]
2049 pub fn transaction_mode_list(&self) -> Option<TransactionModeList> {
2050 support::child(&self.syntax)
2051 }
2052 #[inline]
2053 pub fn begin_token(&self) -> Option<SyntaxToken> {
2054 support::token(&self.syntax, SyntaxKind::BEGIN_KW)
2055 }
2056 #[inline]
2057 pub fn start_token(&self) -> Option<SyntaxToken> {
2058 support::token(&self.syntax, SyntaxKind::START_KW)
2059 }
2060 #[inline]
2061 pub fn transaction_token(&self) -> Option<SyntaxToken> {
2062 support::token(&self.syntax, SyntaxKind::TRANSACTION_KW)
2063 }
2064 #[inline]
2065 pub fn work_token(&self) -> Option<SyntaxToken> {
2066 support::token(&self.syntax, SyntaxKind::WORK_KW)
2067 }
2068}
2069
2070#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2071pub struct BeginFuncOption {
2072 pub(crate) syntax: SyntaxNode,
2073}
2074impl BeginFuncOption {
2075 #[inline]
2076 pub fn return_func_option(&self) -> Option<ReturnFuncOption> {
2077 support::child(&self.syntax)
2078 }
2079 #[inline]
2080 pub fn stmt(&self) -> Option<Stmt> {
2081 support::child(&self.syntax)
2082 }
2083 #[inline]
2084 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
2085 support::token(&self.syntax, SyntaxKind::SEMICOLON)
2086 }
2087}
2088
2089#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2090pub struct BeginFuncOptionList {
2091 pub(crate) syntax: SyntaxNode,
2092}
2093impl BeginFuncOptionList {
2094 #[inline]
2095 pub fn begin_func_options(&self) -> AstChildren<BeginFuncOption> {
2096 support::children(&self.syntax)
2097 }
2098 #[inline]
2099 pub fn atomic_token(&self) -> Option<SyntaxToken> {
2100 support::token(&self.syntax, SyntaxKind::ATOMIC_KW)
2101 }
2102 #[inline]
2103 pub fn begin_token(&self) -> Option<SyntaxToken> {
2104 support::token(&self.syntax, SyntaxKind::BEGIN_KW)
2105 }
2106 #[inline]
2107 pub fn end_token(&self) -> Option<SyntaxToken> {
2108 support::token(&self.syntax, SyntaxKind::END_KW)
2109 }
2110}
2111
2112#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2113pub struct BetweenExpr {
2114 pub(crate) syntax: SyntaxNode,
2115}
2116impl BetweenExpr {
2117 #[inline]
2118 pub fn and_token(&self) -> Option<SyntaxToken> {
2119 support::token(&self.syntax, SyntaxKind::AND_KW)
2120 }
2121 #[inline]
2122 pub fn between_token(&self) -> Option<SyntaxToken> {
2123 support::token(&self.syntax, SyntaxKind::BETWEEN_KW)
2124 }
2125}
2126
2127#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2128pub struct BinExpr {
2129 pub(crate) syntax: SyntaxNode,
2130}
2131impl BinExpr {
2132 #[inline]
2133 pub fn op(&self) -> Option<Op> {
2134 support::child(&self.syntax)
2135 }
2136}
2137
2138#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2139pub struct BitType {
2140 pub(crate) syntax: SyntaxNode,
2141}
2142impl BitType {
2143 #[inline]
2144 pub fn arg_list(&self) -> Option<ArgList> {
2145 support::child(&self.syntax)
2146 }
2147 #[inline]
2148 pub fn bit_token(&self) -> Option<SyntaxToken> {
2149 support::token(&self.syntax, SyntaxKind::BIT_KW)
2150 }
2151 #[inline]
2152 pub fn varying_token(&self) -> Option<SyntaxToken> {
2153 support::token(&self.syntax, SyntaxKind::VARYING_KW)
2154 }
2155}
2156
2157#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2158pub struct Call {
2159 pub(crate) syntax: SyntaxNode,
2160}
2161impl Call {
2162 #[inline]
2163 pub fn arg_list(&self) -> Option<ArgList> {
2164 support::child(&self.syntax)
2165 }
2166 #[inline]
2167 pub fn path(&self) -> Option<Path> {
2168 support::child(&self.syntax)
2169 }
2170 #[inline]
2171 pub fn call_token(&self) -> Option<SyntaxToken> {
2172 support::token(&self.syntax, SyntaxKind::CALL_KW)
2173 }
2174}
2175
2176#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2177pub struct CallExpr {
2178 pub(crate) syntax: SyntaxNode,
2179}
2180impl CallExpr {
2181 #[inline]
2182 pub fn all_fn(&self) -> Option<AllFn> {
2183 support::child(&self.syntax)
2184 }
2185 #[inline]
2186 pub fn any_fn(&self) -> Option<AnyFn> {
2187 support::child(&self.syntax)
2188 }
2189 #[inline]
2190 pub fn arg_list(&self) -> Option<ArgList> {
2191 support::child(&self.syntax)
2192 }
2193 #[inline]
2194 pub fn exists_fn(&self) -> Option<ExistsFn> {
2195 support::child(&self.syntax)
2196 }
2197 #[inline]
2198 pub fn expr(&self) -> Option<Expr> {
2199 support::child(&self.syntax)
2200 }
2201 #[inline]
2202 pub fn extract_fn(&self) -> Option<ExtractFn> {
2203 support::child(&self.syntax)
2204 }
2205 #[inline]
2206 pub fn filter_clause(&self) -> Option<FilterClause> {
2207 support::child(&self.syntax)
2208 }
2209 #[inline]
2210 pub fn json_array_agg_fn(&self) -> Option<JsonArrayAggFn> {
2211 support::child(&self.syntax)
2212 }
2213 #[inline]
2214 pub fn json_array_fn(&self) -> Option<JsonArrayFn> {
2215 support::child(&self.syntax)
2216 }
2217 #[inline]
2218 pub fn json_exists_fn(&self) -> Option<JsonExistsFn> {
2219 support::child(&self.syntax)
2220 }
2221 #[inline]
2222 pub fn json_fn(&self) -> Option<JsonFn> {
2223 support::child(&self.syntax)
2224 }
2225 #[inline]
2226 pub fn json_object_agg_fn(&self) -> Option<JsonObjectAggFn> {
2227 support::child(&self.syntax)
2228 }
2229 #[inline]
2230 pub fn json_object_fn(&self) -> Option<JsonObjectFn> {
2231 support::child(&self.syntax)
2232 }
2233 #[inline]
2234 pub fn json_query_fn(&self) -> Option<JsonQueryFn> {
2235 support::child(&self.syntax)
2236 }
2237 #[inline]
2238 pub fn json_scalar_fn(&self) -> Option<JsonScalarFn> {
2239 support::child(&self.syntax)
2240 }
2241 #[inline]
2242 pub fn json_serialize_fn(&self) -> Option<JsonSerializeFn> {
2243 support::child(&self.syntax)
2244 }
2245 #[inline]
2246 pub fn json_value_fn(&self) -> Option<JsonValueFn> {
2247 support::child(&self.syntax)
2248 }
2249 #[inline]
2250 pub fn over_clause(&self) -> Option<OverClause> {
2251 support::child(&self.syntax)
2252 }
2253 #[inline]
2254 pub fn overlay_fn(&self) -> Option<OverlayFn> {
2255 support::child(&self.syntax)
2256 }
2257 #[inline]
2258 pub fn position_fn(&self) -> Option<PositionFn> {
2259 support::child(&self.syntax)
2260 }
2261 #[inline]
2262 pub fn some_fn(&self) -> Option<SomeFn> {
2263 support::child(&self.syntax)
2264 }
2265 #[inline]
2266 pub fn substring_fn(&self) -> Option<SubstringFn> {
2267 support::child(&self.syntax)
2268 }
2269 #[inline]
2270 pub fn trim_fn(&self) -> Option<TrimFn> {
2271 support::child(&self.syntax)
2272 }
2273 #[inline]
2274 pub fn within_clause(&self) -> Option<WithinClause> {
2275 support::child(&self.syntax)
2276 }
2277 #[inline]
2278 pub fn xml_element_fn(&self) -> Option<XmlElementFn> {
2279 support::child(&self.syntax)
2280 }
2281 #[inline]
2282 pub fn xml_exists_fn(&self) -> Option<XmlExistsFn> {
2283 support::child(&self.syntax)
2284 }
2285 #[inline]
2286 pub fn xml_forest_fn(&self) -> Option<XmlForestFn> {
2287 support::child(&self.syntax)
2288 }
2289 #[inline]
2290 pub fn xml_parse_fn(&self) -> Option<XmlParseFn> {
2291 support::child(&self.syntax)
2292 }
2293 #[inline]
2294 pub fn xml_pi_fn(&self) -> Option<XmlPiFn> {
2295 support::child(&self.syntax)
2296 }
2297 #[inline]
2298 pub fn xml_root_fn(&self) -> Option<XmlRootFn> {
2299 support::child(&self.syntax)
2300 }
2301 #[inline]
2302 pub fn xml_serialize_fn(&self) -> Option<XmlSerializeFn> {
2303 support::child(&self.syntax)
2304 }
2305}
2306
2307#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2308pub struct Cascade {
2309 pub(crate) syntax: SyntaxNode,
2310}
2311impl Cascade {
2312 #[inline]
2313 pub fn cascade_token(&self) -> Option<SyntaxToken> {
2314 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
2315 }
2316}
2317
2318#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2319pub struct CaseExpr {
2320 pub(crate) syntax: SyntaxNode,
2321}
2322impl CaseExpr {
2323 #[inline]
2324 pub fn else_clause(&self) -> Option<ElseClause> {
2325 support::child(&self.syntax)
2326 }
2327 #[inline]
2328 pub fn expr(&self) -> Option<Expr> {
2329 support::child(&self.syntax)
2330 }
2331 #[inline]
2332 pub fn when_clause_list(&self) -> Option<WhenClauseList> {
2333 support::child(&self.syntax)
2334 }
2335 #[inline]
2336 pub fn case_token(&self) -> Option<SyntaxToken> {
2337 support::token(&self.syntax, SyntaxKind::CASE_KW)
2338 }
2339}
2340
2341#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2342pub struct CastExpr {
2343 pub(crate) syntax: SyntaxNode,
2344}
2345impl CastExpr {
2346 #[inline]
2347 pub fn colon_colon(&self) -> Option<ColonColon> {
2348 support::child(&self.syntax)
2349 }
2350 #[inline]
2351 pub fn expr(&self) -> Option<Expr> {
2352 support::child(&self.syntax)
2353 }
2354 #[inline]
2355 pub fn literal(&self) -> Option<Literal> {
2356 support::child(&self.syntax)
2357 }
2358 #[inline]
2359 pub fn ty(&self) -> Option<Type> {
2360 support::child(&self.syntax)
2361 }
2362 #[inline]
2363 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
2364 support::token(&self.syntax, SyntaxKind::L_PAREN)
2365 }
2366 #[inline]
2367 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
2368 support::token(&self.syntax, SyntaxKind::R_PAREN)
2369 }
2370 #[inline]
2371 pub fn as_token(&self) -> Option<SyntaxToken> {
2372 support::token(&self.syntax, SyntaxKind::AS_KW)
2373 }
2374 #[inline]
2375 pub fn cast_token(&self) -> Option<SyntaxToken> {
2376 support::token(&self.syntax, SyntaxKind::CAST_KW)
2377 }
2378 #[inline]
2379 pub fn treat_token(&self) -> Option<SyntaxToken> {
2380 support::token(&self.syntax, SyntaxKind::TREAT_KW)
2381 }
2382}
2383
2384#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2385pub struct CastSig {
2386 pub(crate) syntax: SyntaxNode,
2387}
2388impl CastSig {
2389 #[inline]
2390 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
2391 support::token(&self.syntax, SyntaxKind::L_PAREN)
2392 }
2393 #[inline]
2394 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
2395 support::token(&self.syntax, SyntaxKind::R_PAREN)
2396 }
2397 #[inline]
2398 pub fn as_token(&self) -> Option<SyntaxToken> {
2399 support::token(&self.syntax, SyntaxKind::AS_KW)
2400 }
2401}
2402
2403#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2404pub struct CharType {
2405 pub(crate) syntax: SyntaxNode,
2406}
2407impl CharType {
2408 #[inline]
2409 pub fn arg_list(&self) -> Option<ArgList> {
2410 support::child(&self.syntax)
2411 }
2412 #[inline]
2413 pub fn char_token(&self) -> Option<SyntaxToken> {
2414 support::token(&self.syntax, SyntaxKind::CHAR_KW)
2415 }
2416 #[inline]
2417 pub fn character_token(&self) -> Option<SyntaxToken> {
2418 support::token(&self.syntax, SyntaxKind::CHARACTER_KW)
2419 }
2420 #[inline]
2421 pub fn nchar_token(&self) -> Option<SyntaxToken> {
2422 support::token(&self.syntax, SyntaxKind::NCHAR_KW)
2423 }
2424 #[inline]
2425 pub fn varchar_token(&self) -> Option<SyntaxToken> {
2426 support::token(&self.syntax, SyntaxKind::VARCHAR_KW)
2427 }
2428 #[inline]
2429 pub fn varying_token(&self) -> Option<SyntaxToken> {
2430 support::token(&self.syntax, SyntaxKind::VARYING_KW)
2431 }
2432}
2433
2434#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2435pub struct CheckConstraint {
2436 pub(crate) syntax: SyntaxNode,
2437}
2438impl CheckConstraint {
2439 #[inline]
2440 pub fn constraint_name(&self) -> Option<ConstraintName> {
2441 support::child(&self.syntax)
2442 }
2443 #[inline]
2444 pub fn expr(&self) -> Option<Expr> {
2445 support::child(&self.syntax)
2446 }
2447 #[inline]
2448 pub fn no_inherit(&self) -> Option<NoInherit> {
2449 support::child(&self.syntax)
2450 }
2451 #[inline]
2452 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
2453 support::token(&self.syntax, SyntaxKind::L_PAREN)
2454 }
2455 #[inline]
2456 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
2457 support::token(&self.syntax, SyntaxKind::R_PAREN)
2458 }
2459 #[inline]
2460 pub fn check_token(&self) -> Option<SyntaxToken> {
2461 support::token(&self.syntax, SyntaxKind::CHECK_KW)
2462 }
2463}
2464
2465#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2466pub struct Checkpoint {
2467 pub(crate) syntax: SyntaxNode,
2468}
2469impl Checkpoint {
2470 #[inline]
2471 pub fn checkpoint_token(&self) -> Option<SyntaxToken> {
2472 support::token(&self.syntax, SyntaxKind::CHECKPOINT_KW)
2473 }
2474}
2475
2476#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2477pub struct Close {
2478 pub(crate) syntax: SyntaxNode,
2479}
2480impl Close {
2481 #[inline]
2482 pub fn name_ref(&self) -> Option<NameRef> {
2483 support::child(&self.syntax)
2484 }
2485 #[inline]
2486 pub fn close_token(&self) -> Option<SyntaxToken> {
2487 support::token(&self.syntax, SyntaxKind::CLOSE_KW)
2488 }
2489}
2490
2491#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2492pub struct Cluster {
2493 pub(crate) syntax: SyntaxNode,
2494}
2495impl Cluster {
2496 #[inline]
2497 pub fn option_item_list(&self) -> Option<OptionItemList> {
2498 support::child(&self.syntax)
2499 }
2500 #[inline]
2501 pub fn path(&self) -> Option<Path> {
2502 support::child(&self.syntax)
2503 }
2504 #[inline]
2505 pub fn using_method(&self) -> Option<UsingMethod> {
2506 support::child(&self.syntax)
2507 }
2508 #[inline]
2509 pub fn cluster_token(&self) -> Option<SyntaxToken> {
2510 support::token(&self.syntax, SyntaxKind::CLUSTER_KW)
2511 }
2512 #[inline]
2513 pub fn verbose_token(&self) -> Option<SyntaxToken> {
2514 support::token(&self.syntax, SyntaxKind::VERBOSE_KW)
2515 }
2516}
2517
2518#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2519pub struct ClusterOn {
2520 pub(crate) syntax: SyntaxNode,
2521}
2522impl ClusterOn {
2523 #[inline]
2524 pub fn cluster_token(&self) -> Option<SyntaxToken> {
2525 support::token(&self.syntax, SyntaxKind::CLUSTER_KW)
2526 }
2527 #[inline]
2528 pub fn on_token(&self) -> Option<SyntaxToken> {
2529 support::token(&self.syntax, SyntaxKind::ON_KW)
2530 }
2531}
2532
2533#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2534pub struct Collate {
2535 pub(crate) syntax: SyntaxNode,
2536}
2537impl Collate {
2538 #[inline]
2539 pub fn path(&self) -> Option<Path> {
2540 support::child(&self.syntax)
2541 }
2542 #[inline]
2543 pub fn collate_token(&self) -> Option<SyntaxToken> {
2544 support::token(&self.syntax, SyntaxKind::COLLATE_KW)
2545 }
2546}
2547
2548#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2549pub struct ColonColon {
2550 pub(crate) syntax: SyntaxNode,
2551}
2552impl ColonColon {
2553 #[inline]
2554 pub fn colon_token(&self) -> Option<SyntaxToken> {
2555 support::token(&self.syntax, SyntaxKind::COLON)
2556 }
2557}
2558
2559#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2560pub struct ColonEq {
2561 pub(crate) syntax: SyntaxNode,
2562}
2563impl ColonEq {
2564 #[inline]
2565 pub fn colon_token(&self) -> Option<SyntaxToken> {
2566 support::token(&self.syntax, SyntaxKind::COLON)
2567 }
2568 #[inline]
2569 pub fn eq_token(&self) -> Option<SyntaxToken> {
2570 support::token(&self.syntax, SyntaxKind::EQ)
2571 }
2572}
2573
2574#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2575pub struct Column {
2576 pub(crate) syntax: SyntaxNode,
2577}
2578impl Column {
2579 #[inline]
2580 pub fn collate(&self) -> Option<Collate> {
2581 support::child(&self.syntax)
2582 }
2583 #[inline]
2584 pub fn compression_method(&self) -> Option<CompressionMethod> {
2585 support::child(&self.syntax)
2586 }
2587 #[inline]
2588 pub fn constraint(&self) -> Option<ColumnConstraint> {
2589 support::child(&self.syntax)
2590 }
2591 #[inline]
2592 pub fn deferrable_constraint_option(&self) -> Option<DeferrableConstraintOption> {
2593 support::child(&self.syntax)
2594 }
2595 #[inline]
2596 pub fn enforced(&self) -> Option<Enforced> {
2597 support::child(&self.syntax)
2598 }
2599 #[inline]
2600 pub fn index_expr(&self) -> Option<IndexExpr> {
2601 support::child(&self.syntax)
2602 }
2603 #[inline]
2604 pub fn initially_deferred_constraint_option(
2605 &self,
2606 ) -> Option<InitiallyDeferredConstraintOption> {
2607 support::child(&self.syntax)
2608 }
2609 #[inline]
2610 pub fn initially_immediate_constraint_option(
2611 &self,
2612 ) -> Option<InitiallyImmediateConstraintOption> {
2613 support::child(&self.syntax)
2614 }
2615 #[inline]
2616 pub fn name(&self) -> Option<Name> {
2617 support::child(&self.syntax)
2618 }
2619 #[inline]
2620 pub fn name_ref(&self) -> Option<NameRef> {
2621 support::child(&self.syntax)
2622 }
2623 #[inline]
2624 pub fn not_deferrable_constraint_option(&self) -> Option<NotDeferrableConstraintOption> {
2625 support::child(&self.syntax)
2626 }
2627 #[inline]
2628 pub fn not_enforced(&self) -> Option<NotEnforced> {
2629 support::child(&self.syntax)
2630 }
2631 #[inline]
2632 pub fn storage(&self) -> Option<Storage> {
2633 support::child(&self.syntax)
2634 }
2635 #[inline]
2636 pub fn ty(&self) -> Option<Type> {
2637 support::child(&self.syntax)
2638 }
2639 #[inline]
2640 pub fn with_options(&self) -> Option<WithOptions> {
2641 support::child(&self.syntax)
2642 }
2643 #[inline]
2644 pub fn period_token(&self) -> Option<SyntaxToken> {
2645 support::token(&self.syntax, SyntaxKind::PERIOD_KW)
2646 }
2647}
2648
2649#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2650pub struct ColumnList {
2651 pub(crate) syntax: SyntaxNode,
2652}
2653impl ColumnList {
2654 #[inline]
2655 pub fn columns(&self) -> AstChildren<Column> {
2656 support::children(&self.syntax)
2657 }
2658 #[inline]
2659 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
2660 support::token(&self.syntax, SyntaxKind::L_PAREN)
2661 }
2662 #[inline]
2663 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
2664 support::token(&self.syntax, SyntaxKind::R_PAREN)
2665 }
2666}
2667
2668#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2669pub struct CommentOn {
2670 pub(crate) syntax: SyntaxNode,
2671}
2672impl CommentOn {
2673 #[inline]
2674 pub fn literal(&self) -> Option<Literal> {
2675 support::child(&self.syntax)
2676 }
2677 #[inline]
2678 pub fn name_ref(&self) -> Option<NameRef> {
2679 support::child(&self.syntax)
2680 }
2681 #[inline]
2682 pub fn path(&self) -> Option<Path> {
2683 support::child(&self.syntax)
2684 }
2685 #[inline]
2686 pub fn comment_token(&self) -> Option<SyntaxToken> {
2687 support::token(&self.syntax, SyntaxKind::COMMENT_KW)
2688 }
2689 #[inline]
2690 pub fn constraint_token(&self) -> Option<SyntaxToken> {
2691 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
2692 }
2693 #[inline]
2694 pub fn domain_token(&self) -> Option<SyntaxToken> {
2695 support::token(&self.syntax, SyntaxKind::DOMAIN_KW)
2696 }
2697 #[inline]
2698 pub fn is_token(&self) -> Option<SyntaxToken> {
2699 support::token(&self.syntax, SyntaxKind::IS_KW)
2700 }
2701 #[inline]
2702 pub fn null_token(&self) -> Option<SyntaxToken> {
2703 support::token(&self.syntax, SyntaxKind::NULL_KW)
2704 }
2705 #[inline]
2706 pub fn on_token(&self) -> Option<SyntaxToken> {
2707 support::token(&self.syntax, SyntaxKind::ON_KW)
2708 }
2709 #[inline]
2710 pub fn table_token(&self) -> Option<SyntaxToken> {
2711 support::token(&self.syntax, SyntaxKind::TABLE_KW)
2712 }
2713}
2714
2715#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2716pub struct Commit {
2717 pub(crate) syntax: SyntaxNode,
2718}
2719impl Commit {
2720 #[inline]
2721 pub fn literal(&self) -> Option<Literal> {
2722 support::child(&self.syntax)
2723 }
2724 #[inline]
2725 pub fn and_token(&self) -> Option<SyntaxToken> {
2726 support::token(&self.syntax, SyntaxKind::AND_KW)
2727 }
2728 #[inline]
2729 pub fn chain_token(&self) -> Option<SyntaxToken> {
2730 support::token(&self.syntax, SyntaxKind::CHAIN_KW)
2731 }
2732 #[inline]
2733 pub fn commit_token(&self) -> Option<SyntaxToken> {
2734 support::token(&self.syntax, SyntaxKind::COMMIT_KW)
2735 }
2736 #[inline]
2737 pub fn no_token(&self) -> Option<SyntaxToken> {
2738 support::token(&self.syntax, SyntaxKind::NO_KW)
2739 }
2740 #[inline]
2741 pub fn prepared_token(&self) -> Option<SyntaxToken> {
2742 support::token(&self.syntax, SyntaxKind::PREPARED_KW)
2743 }
2744 #[inline]
2745 pub fn transaction_token(&self) -> Option<SyntaxToken> {
2746 support::token(&self.syntax, SyntaxKind::TRANSACTION_KW)
2747 }
2748 #[inline]
2749 pub fn work_token(&self) -> Option<SyntaxToken> {
2750 support::token(&self.syntax, SyntaxKind::WORK_KW)
2751 }
2752}
2753
2754#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2755pub struct CompoundSelect {
2756 pub(crate) syntax: SyntaxNode,
2757}
2758impl CompoundSelect {
2759 #[inline]
2760 pub fn all_token(&self) -> Option<SyntaxToken> {
2761 support::token(&self.syntax, SyntaxKind::ALL_KW)
2762 }
2763 #[inline]
2764 pub fn except_token(&self) -> Option<SyntaxToken> {
2765 support::token(&self.syntax, SyntaxKind::EXCEPT_KW)
2766 }
2767 #[inline]
2768 pub fn intersect_token(&self) -> Option<SyntaxToken> {
2769 support::token(&self.syntax, SyntaxKind::INTERSECT_KW)
2770 }
2771 #[inline]
2772 pub fn union_token(&self) -> Option<SyntaxToken> {
2773 support::token(&self.syntax, SyntaxKind::UNION_KW)
2774 }
2775}
2776
2777#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2778pub struct CompressionMethod {
2779 pub(crate) syntax: SyntaxNode,
2780}
2781impl CompressionMethod {
2782 #[inline]
2783 pub fn compression_token(&self) -> Option<SyntaxToken> {
2784 support::token(&self.syntax, SyntaxKind::COMPRESSION_KW)
2785 }
2786 #[inline]
2787 pub fn default_token(&self) -> Option<SyntaxToken> {
2788 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
2789 }
2790 #[inline]
2791 pub fn ident_token(&self) -> Option<SyntaxToken> {
2792 support::token(&self.syntax, SyntaxKind::IDENT)
2793 }
2794}
2795
2796#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2797pub struct ConflictDoNothing {
2798 pub(crate) syntax: SyntaxNode,
2799}
2800impl ConflictDoNothing {
2801 #[inline]
2802 pub fn do_token(&self) -> Option<SyntaxToken> {
2803 support::token(&self.syntax, SyntaxKind::DO_KW)
2804 }
2805 #[inline]
2806 pub fn nothing_token(&self) -> Option<SyntaxToken> {
2807 support::token(&self.syntax, SyntaxKind::NOTHING_KW)
2808 }
2809}
2810
2811#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2812pub struct ConflictDoUpdateSet {
2813 pub(crate) syntax: SyntaxNode,
2814}
2815impl ConflictDoUpdateSet {
2816 #[inline]
2817 pub fn set_clause(&self) -> Option<SetClause> {
2818 support::child(&self.syntax)
2819 }
2820 #[inline]
2821 pub fn where_clause(&self) -> Option<WhereClause> {
2822 support::child(&self.syntax)
2823 }
2824 #[inline]
2825 pub fn do_token(&self) -> Option<SyntaxToken> {
2826 support::token(&self.syntax, SyntaxKind::DO_KW)
2827 }
2828 #[inline]
2829 pub fn update_token(&self) -> Option<SyntaxToken> {
2830 support::token(&self.syntax, SyntaxKind::UPDATE_KW)
2831 }
2832}
2833
2834#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2835pub struct ConflictIndexItem {
2836 pub(crate) syntax: SyntaxNode,
2837}
2838impl ConflictIndexItem {
2839 #[inline]
2840 pub fn collate(&self) -> Option<Collate> {
2841 support::child(&self.syntax)
2842 }
2843 #[inline]
2844 pub fn expr(&self) -> Option<Expr> {
2845 support::child(&self.syntax)
2846 }
2847 #[inline]
2848 pub fn ident_token(&self) -> Option<SyntaxToken> {
2849 support::token(&self.syntax, SyntaxKind::IDENT)
2850 }
2851}
2852
2853#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2854pub struct ConflictIndexItemList {
2855 pub(crate) syntax: SyntaxNode,
2856}
2857impl ConflictIndexItemList {
2858 #[inline]
2859 pub fn conflict_index_items(&self) -> AstChildren<ConflictIndexItem> {
2860 support::children(&self.syntax)
2861 }
2862 #[inline]
2863 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
2864 support::token(&self.syntax, SyntaxKind::L_PAREN)
2865 }
2866 #[inline]
2867 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
2868 support::token(&self.syntax, SyntaxKind::R_PAREN)
2869 }
2870}
2871
2872#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2873pub struct ConflictOnConstraint {
2874 pub(crate) syntax: SyntaxNode,
2875}
2876impl ConflictOnConstraint {
2877 #[inline]
2878 pub fn name_ref(&self) -> Option<NameRef> {
2879 support::child(&self.syntax)
2880 }
2881 #[inline]
2882 pub fn constraint_token(&self) -> Option<SyntaxToken> {
2883 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
2884 }
2885 #[inline]
2886 pub fn on_token(&self) -> Option<SyntaxToken> {
2887 support::token(&self.syntax, SyntaxKind::ON_KW)
2888 }
2889}
2890
2891#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2892pub struct ConflictOnIndex {
2893 pub(crate) syntax: SyntaxNode,
2894}
2895impl ConflictOnIndex {
2896 #[inline]
2897 pub fn conflict_index_item_list(&self) -> Option<ConflictIndexItemList> {
2898 support::child(&self.syntax)
2899 }
2900 #[inline]
2901 pub fn where_clause(&self) -> Option<WhereClause> {
2902 support::child(&self.syntax)
2903 }
2904}
2905
2906#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2907pub struct ConstraintExclusion {
2908 pub(crate) syntax: SyntaxNode,
2909}
2910impl ConstraintExclusion {
2911 #[inline]
2912 pub fn expr(&self) -> Option<Expr> {
2913 support::child(&self.syntax)
2914 }
2915 #[inline]
2916 pub fn op(&self) -> Option<Op> {
2917 support::child(&self.syntax)
2918 }
2919 #[inline]
2920 pub fn with_token(&self) -> Option<SyntaxToken> {
2921 support::token(&self.syntax, SyntaxKind::WITH_KW)
2922 }
2923}
2924
2925#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2926pub struct ConstraintExclusionList {
2927 pub(crate) syntax: SyntaxNode,
2928}
2929impl ConstraintExclusionList {
2930 #[inline]
2931 pub fn constraint_exclusions(&self) -> AstChildren<ConstraintExclusion> {
2932 support::children(&self.syntax)
2933 }
2934 #[inline]
2935 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
2936 support::token(&self.syntax, SyntaxKind::L_PAREN)
2937 }
2938 #[inline]
2939 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
2940 support::token(&self.syntax, SyntaxKind::R_PAREN)
2941 }
2942}
2943
2944#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2945pub struct ConstraintIncludeClause {
2946 pub(crate) syntax: SyntaxNode,
2947}
2948impl ConstraintIncludeClause {
2949 #[inline]
2950 pub fn include_token(&self) -> Option<SyntaxToken> {
2951 support::token(&self.syntax, SyntaxKind::INCLUDE_KW)
2952 }
2953}
2954
2955#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2956pub struct ConstraintIndexMethod {
2957 pub(crate) syntax: SyntaxNode,
2958}
2959impl ConstraintIndexMethod {
2960 #[inline]
2961 pub fn using_token(&self) -> Option<SyntaxToken> {
2962 support::token(&self.syntax, SyntaxKind::USING_KW)
2963 }
2964}
2965
2966#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2967pub struct ConstraintIndexTablespace {
2968 pub(crate) syntax: SyntaxNode,
2969}
2970impl ConstraintIndexTablespace {
2971 #[inline]
2972 pub fn name_ref(&self) -> Option<NameRef> {
2973 support::child(&self.syntax)
2974 }
2975 #[inline]
2976 pub fn index_token(&self) -> Option<SyntaxToken> {
2977 support::token(&self.syntax, SyntaxKind::INDEX_KW)
2978 }
2979 #[inline]
2980 pub fn tablespace_token(&self) -> Option<SyntaxToken> {
2981 support::token(&self.syntax, SyntaxKind::TABLESPACE_KW)
2982 }
2983 #[inline]
2984 pub fn using_token(&self) -> Option<SyntaxToken> {
2985 support::token(&self.syntax, SyntaxKind::USING_KW)
2986 }
2987}
2988
2989#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2990pub struct ConstraintName {
2991 pub(crate) syntax: SyntaxNode,
2992}
2993impl ConstraintName {
2994 #[inline]
2995 pub fn name(&self) -> Option<Name> {
2996 support::child(&self.syntax)
2997 }
2998 #[inline]
2999 pub fn constraint_token(&self) -> Option<SyntaxToken> {
3000 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
3001 }
3002}
3003
3004#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3005pub struct Copy {
3006 pub(crate) syntax: SyntaxNode,
3007}
3008impl Copy {
3009 #[inline]
3010 pub fn column_list(&self) -> Option<ColumnList> {
3011 support::child(&self.syntax)
3012 }
3013 #[inline]
3014 pub fn literal(&self) -> Option<Literal> {
3015 support::child(&self.syntax)
3016 }
3017 #[inline]
3018 pub fn path(&self) -> Option<Path> {
3019 support::child(&self.syntax)
3020 }
3021 #[inline]
3022 pub fn preparable_stmt(&self) -> Option<PreparableStmt> {
3023 support::child(&self.syntax)
3024 }
3025 #[inline]
3026 pub fn where_clause(&self) -> Option<WhereClause> {
3027 support::child(&self.syntax)
3028 }
3029 #[inline]
3030 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
3031 support::token(&self.syntax, SyntaxKind::L_PAREN)
3032 }
3033 #[inline]
3034 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
3035 support::token(&self.syntax, SyntaxKind::R_PAREN)
3036 }
3037 #[inline]
3038 pub fn binary_token(&self) -> Option<SyntaxToken> {
3039 support::token(&self.syntax, SyntaxKind::BINARY_KW)
3040 }
3041 #[inline]
3042 pub fn copy_token(&self) -> Option<SyntaxToken> {
3043 support::token(&self.syntax, SyntaxKind::COPY_KW)
3044 }
3045 #[inline]
3046 pub fn from_token(&self) -> Option<SyntaxToken> {
3047 support::token(&self.syntax, SyntaxKind::FROM_KW)
3048 }
3049 #[inline]
3050 pub fn program_token(&self) -> Option<SyntaxToken> {
3051 support::token(&self.syntax, SyntaxKind::PROGRAM_KW)
3052 }
3053 #[inline]
3054 pub fn stdin_token(&self) -> Option<SyntaxToken> {
3055 support::token(&self.syntax, SyntaxKind::STDIN_KW)
3056 }
3057 #[inline]
3058 pub fn stdout_token(&self) -> Option<SyntaxToken> {
3059 support::token(&self.syntax, SyntaxKind::STDOUT_KW)
3060 }
3061 #[inline]
3062 pub fn to_token(&self) -> Option<SyntaxToken> {
3063 support::token(&self.syntax, SyntaxKind::TO_KW)
3064 }
3065 #[inline]
3066 pub fn with_token(&self) -> Option<SyntaxToken> {
3067 support::token(&self.syntax, SyntaxKind::WITH_KW)
3068 }
3069}
3070
3071#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3072pub struct CopyOption {
3073 pub(crate) syntax: SyntaxNode,
3074}
3075impl CopyOption {
3076 #[inline]
3077 pub fn name(&self) -> Option<Name> {
3078 support::child(&self.syntax)
3079 }
3080}
3081
3082#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3083pub struct CopyOptionList {
3084 pub(crate) syntax: SyntaxNode,
3085}
3086impl CopyOptionList {
3087 #[inline]
3088 pub fn copy_options(&self) -> AstChildren<CopyOption> {
3089 support::children(&self.syntax)
3090 }
3091 #[inline]
3092 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
3093 support::token(&self.syntax, SyntaxKind::L_PAREN)
3094 }
3095 #[inline]
3096 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
3097 support::token(&self.syntax, SyntaxKind::R_PAREN)
3098 }
3099}
3100
3101#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3102pub struct CostFuncOption {
3103 pub(crate) syntax: SyntaxNode,
3104}
3105impl CostFuncOption {
3106 #[inline]
3107 pub fn cost_token(&self) -> Option<SyntaxToken> {
3108 support::token(&self.syntax, SyntaxKind::COST_KW)
3109 }
3110}
3111
3112#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3113pub struct CreateAccessMethod {
3114 pub(crate) syntax: SyntaxNode,
3115}
3116impl CreateAccessMethod {
3117 #[inline]
3118 pub fn handler_clause(&self) -> Option<HandlerClause> {
3119 support::child(&self.syntax)
3120 }
3121 #[inline]
3122 pub fn name(&self) -> Option<Path> {
3123 support::child(&self.syntax)
3124 }
3125 #[inline]
3126 pub fn access_token(&self) -> Option<SyntaxToken> {
3127 support::token(&self.syntax, SyntaxKind::ACCESS_KW)
3128 }
3129 #[inline]
3130 pub fn create_token(&self) -> Option<SyntaxToken> {
3131 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3132 }
3133 #[inline]
3134 pub fn index_token(&self) -> Option<SyntaxToken> {
3135 support::token(&self.syntax, SyntaxKind::INDEX_KW)
3136 }
3137 #[inline]
3138 pub fn method_token(&self) -> Option<SyntaxToken> {
3139 support::token(&self.syntax, SyntaxKind::METHOD_KW)
3140 }
3141 #[inline]
3142 pub fn table_token(&self) -> Option<SyntaxToken> {
3143 support::token(&self.syntax, SyntaxKind::TABLE_KW)
3144 }
3145 #[inline]
3146 pub fn type_token(&self) -> Option<SyntaxToken> {
3147 support::token(&self.syntax, SyntaxKind::TYPE_KW)
3148 }
3149}
3150
3151#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3152pub struct CreateAggregate {
3153 pub(crate) syntax: SyntaxNode,
3154}
3155impl CreateAggregate {
3156 #[inline]
3157 pub fn or_replace(&self) -> Option<OrReplace> {
3158 support::child(&self.syntax)
3159 }
3160 #[inline]
3161 pub fn param_list(&self) -> Option<ParamList> {
3162 support::child(&self.syntax)
3163 }
3164 #[inline]
3165 pub fn path(&self) -> Option<Path> {
3166 support::child(&self.syntax)
3167 }
3168 #[inline]
3169 pub fn aggregate_token(&self) -> Option<SyntaxToken> {
3170 support::token(&self.syntax, SyntaxKind::AGGREGATE_KW)
3171 }
3172 #[inline]
3173 pub fn create_token(&self) -> Option<SyntaxToken> {
3174 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3175 }
3176}
3177
3178#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3179pub struct CreateCast {
3180 pub(crate) syntax: SyntaxNode,
3181}
3182impl CreateCast {
3183 #[inline]
3184 pub fn cast_sig(&self) -> Option<CastSig> {
3185 support::child(&self.syntax)
3186 }
3187 #[inline]
3188 pub fn function_sig(&self) -> Option<FunctionSig> {
3189 support::child(&self.syntax)
3190 }
3191 #[inline]
3192 pub fn as_token(&self) -> Option<SyntaxToken> {
3193 support::token(&self.syntax, SyntaxKind::AS_KW)
3194 }
3195 #[inline]
3196 pub fn assignment_token(&self) -> Option<SyntaxToken> {
3197 support::token(&self.syntax, SyntaxKind::ASSIGNMENT_KW)
3198 }
3199 #[inline]
3200 pub fn cast_token(&self) -> Option<SyntaxToken> {
3201 support::token(&self.syntax, SyntaxKind::CAST_KW)
3202 }
3203 #[inline]
3204 pub fn create_token(&self) -> Option<SyntaxToken> {
3205 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3206 }
3207 #[inline]
3208 pub fn function_token(&self) -> Option<SyntaxToken> {
3209 support::token(&self.syntax, SyntaxKind::FUNCTION_KW)
3210 }
3211 #[inline]
3212 pub fn implicit_token(&self) -> Option<SyntaxToken> {
3213 support::token(&self.syntax, SyntaxKind::IMPLICIT_KW)
3214 }
3215 #[inline]
3216 pub fn inout_token(&self) -> Option<SyntaxToken> {
3217 support::token(&self.syntax, SyntaxKind::INOUT_KW)
3218 }
3219 #[inline]
3220 pub fn with_token(&self) -> Option<SyntaxToken> {
3221 support::token(&self.syntax, SyntaxKind::WITH_KW)
3222 }
3223 #[inline]
3224 pub fn without_token(&self) -> Option<SyntaxToken> {
3225 support::token(&self.syntax, SyntaxKind::WITHOUT_KW)
3226 }
3227}
3228
3229#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3230pub struct CreateCollation {
3231 pub(crate) syntax: SyntaxNode,
3232}
3233impl CreateCollation {
3234 #[inline]
3235 pub fn path(&self) -> Option<Path> {
3236 support::child(&self.syntax)
3237 }
3238 #[inline]
3239 pub fn collation_token(&self) -> Option<SyntaxToken> {
3240 support::token(&self.syntax, SyntaxKind::COLLATION_KW)
3241 }
3242 #[inline]
3243 pub fn create_token(&self) -> Option<SyntaxToken> {
3244 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3245 }
3246}
3247
3248#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3249pub struct CreateConversion {
3250 pub(crate) syntax: SyntaxNode,
3251}
3252impl CreateConversion {
3253 #[inline]
3254 pub fn literal(&self) -> Option<Literal> {
3255 support::child(&self.syntax)
3256 }
3257 #[inline]
3258 pub fn path(&self) -> Option<Path> {
3259 support::child(&self.syntax)
3260 }
3261 #[inline]
3262 pub fn conversion_token(&self) -> Option<SyntaxToken> {
3263 support::token(&self.syntax, SyntaxKind::CONVERSION_KW)
3264 }
3265 #[inline]
3266 pub fn create_token(&self) -> Option<SyntaxToken> {
3267 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3268 }
3269 #[inline]
3270 pub fn default_token(&self) -> Option<SyntaxToken> {
3271 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
3272 }
3273 #[inline]
3274 pub fn for_token(&self) -> Option<SyntaxToken> {
3275 support::token(&self.syntax, SyntaxKind::FOR_KW)
3276 }
3277 #[inline]
3278 pub fn from_token(&self) -> Option<SyntaxToken> {
3279 support::token(&self.syntax, SyntaxKind::FROM_KW)
3280 }
3281 #[inline]
3282 pub fn to_token(&self) -> Option<SyntaxToken> {
3283 support::token(&self.syntax, SyntaxKind::TO_KW)
3284 }
3285}
3286
3287#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3288pub struct CreateDatabase {
3289 pub(crate) syntax: SyntaxNode,
3290}
3291impl CreateDatabase {
3292 #[inline]
3293 pub fn create_database_option_list(&self) -> Option<CreateDatabaseOptionList> {
3294 support::child(&self.syntax)
3295 }
3296 #[inline]
3297 pub fn name(&self) -> Option<Name> {
3298 support::child(&self.syntax)
3299 }
3300 #[inline]
3301 pub fn create_token(&self) -> Option<SyntaxToken> {
3302 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3303 }
3304 #[inline]
3305 pub fn database_token(&self) -> Option<SyntaxToken> {
3306 support::token(&self.syntax, SyntaxKind::DATABASE_KW)
3307 }
3308}
3309
3310#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3311pub struct CreateDatabaseOption {
3312 pub(crate) syntax: SyntaxNode,
3313}
3314impl CreateDatabaseOption {
3315 #[inline]
3316 pub fn literal(&self) -> Option<Literal> {
3317 support::child(&self.syntax)
3318 }
3319 #[inline]
3320 pub fn eq_token(&self) -> Option<SyntaxToken> {
3321 support::token(&self.syntax, SyntaxKind::EQ)
3322 }
3323 #[inline]
3324 pub fn connection_token(&self) -> Option<SyntaxToken> {
3325 support::token(&self.syntax, SyntaxKind::CONNECTION_KW)
3326 }
3327 #[inline]
3328 pub fn default_token(&self) -> Option<SyntaxToken> {
3329 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
3330 }
3331 #[inline]
3332 pub fn encoding_token(&self) -> Option<SyntaxToken> {
3333 support::token(&self.syntax, SyntaxKind::ENCODING_KW)
3334 }
3335 #[inline]
3336 pub fn ident_token(&self) -> Option<SyntaxToken> {
3337 support::token(&self.syntax, SyntaxKind::IDENT)
3338 }
3339 #[inline]
3340 pub fn limit_token(&self) -> Option<SyntaxToken> {
3341 support::token(&self.syntax, SyntaxKind::LIMIT_KW)
3342 }
3343 #[inline]
3344 pub fn owner_token(&self) -> Option<SyntaxToken> {
3345 support::token(&self.syntax, SyntaxKind::OWNER_KW)
3346 }
3347 #[inline]
3348 pub fn tablespace_token(&self) -> Option<SyntaxToken> {
3349 support::token(&self.syntax, SyntaxKind::TABLESPACE_KW)
3350 }
3351 #[inline]
3352 pub fn template_token(&self) -> Option<SyntaxToken> {
3353 support::token(&self.syntax, SyntaxKind::TEMPLATE_KW)
3354 }
3355}
3356
3357#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3358pub struct CreateDatabaseOptionList {
3359 pub(crate) syntax: SyntaxNode,
3360}
3361impl CreateDatabaseOptionList {
3362 #[inline]
3363 pub fn create_database_options(&self) -> AstChildren<CreateDatabaseOption> {
3364 support::children(&self.syntax)
3365 }
3366 #[inline]
3367 pub fn with_token(&self) -> Option<SyntaxToken> {
3368 support::token(&self.syntax, SyntaxKind::WITH_KW)
3369 }
3370}
3371
3372#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3373pub struct CreateDomain {
3374 pub(crate) syntax: SyntaxNode,
3375}
3376impl CreateDomain {
3377 #[inline]
3378 pub fn collate(&self) -> Option<Collate> {
3379 support::child(&self.syntax)
3380 }
3381 #[inline]
3382 pub fn constraints(&self) -> AstChildren<Constraint> {
3383 support::children(&self.syntax)
3384 }
3385 #[inline]
3386 pub fn path(&self) -> Option<Path> {
3387 support::child(&self.syntax)
3388 }
3389 #[inline]
3390 pub fn ty(&self) -> Option<Type> {
3391 support::child(&self.syntax)
3392 }
3393 #[inline]
3394 pub fn as_token(&self) -> Option<SyntaxToken> {
3395 support::token(&self.syntax, SyntaxKind::AS_KW)
3396 }
3397 #[inline]
3398 pub fn create_token(&self) -> Option<SyntaxToken> {
3399 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3400 }
3401 #[inline]
3402 pub fn domain_token(&self) -> Option<SyntaxToken> {
3403 support::token(&self.syntax, SyntaxKind::DOMAIN_KW)
3404 }
3405}
3406
3407#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3408pub struct CreateEventTrigger {
3409 pub(crate) syntax: SyntaxNode,
3410}
3411impl CreateEventTrigger {
3412 #[inline]
3413 pub fn call_expr(&self) -> Option<CallExpr> {
3414 support::child(&self.syntax)
3415 }
3416 #[inline]
3417 pub fn event_trigger_when_clause(&self) -> Option<EventTriggerWhenClause> {
3418 support::child(&self.syntax)
3419 }
3420 #[inline]
3421 pub fn name(&self) -> Option<Name> {
3422 support::child(&self.syntax)
3423 }
3424 #[inline]
3425 pub fn name_ref(&self) -> Option<NameRef> {
3426 support::child(&self.syntax)
3427 }
3428 #[inline]
3429 pub fn create_token(&self) -> Option<SyntaxToken> {
3430 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3431 }
3432 #[inline]
3433 pub fn event_token(&self) -> Option<SyntaxToken> {
3434 support::token(&self.syntax, SyntaxKind::EVENT_KW)
3435 }
3436 #[inline]
3437 pub fn execute_token(&self) -> Option<SyntaxToken> {
3438 support::token(&self.syntax, SyntaxKind::EXECUTE_KW)
3439 }
3440 #[inline]
3441 pub fn function_token(&self) -> Option<SyntaxToken> {
3442 support::token(&self.syntax, SyntaxKind::FUNCTION_KW)
3443 }
3444 #[inline]
3445 pub fn on_token(&self) -> Option<SyntaxToken> {
3446 support::token(&self.syntax, SyntaxKind::ON_KW)
3447 }
3448 #[inline]
3449 pub fn procedure_token(&self) -> Option<SyntaxToken> {
3450 support::token(&self.syntax, SyntaxKind::PROCEDURE_KW)
3451 }
3452 #[inline]
3453 pub fn trigger_token(&self) -> Option<SyntaxToken> {
3454 support::token(&self.syntax, SyntaxKind::TRIGGER_KW)
3455 }
3456}
3457
3458#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3459pub struct CreateExtension {
3460 pub(crate) syntax: SyntaxNode,
3461}
3462impl CreateExtension {
3463 #[inline]
3464 pub fn if_not_exists(&self) -> Option<IfNotExists> {
3465 support::child(&self.syntax)
3466 }
3467 #[inline]
3468 pub fn name(&self) -> Option<Name> {
3469 support::child(&self.syntax)
3470 }
3471 #[inline]
3472 pub fn create_token(&self) -> Option<SyntaxToken> {
3473 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3474 }
3475 #[inline]
3476 pub fn extension_token(&self) -> Option<SyntaxToken> {
3477 support::token(&self.syntax, SyntaxKind::EXTENSION_KW)
3478 }
3479}
3480
3481#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3482pub struct CreateForeignDataWrapper {
3483 pub(crate) syntax: SyntaxNode,
3484}
3485impl CreateForeignDataWrapper {
3486 #[inline]
3487 pub fn alter_option_list(&self) -> Option<AlterOptionList> {
3488 support::child(&self.syntax)
3489 }
3490 #[inline]
3491 pub fn fdw_option_list(&self) -> Option<FdwOptionList> {
3492 support::child(&self.syntax)
3493 }
3494 #[inline]
3495 pub fn name(&self) -> Option<Name> {
3496 support::child(&self.syntax)
3497 }
3498 #[inline]
3499 pub fn create_token(&self) -> Option<SyntaxToken> {
3500 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3501 }
3502 #[inline]
3503 pub fn data_token(&self) -> Option<SyntaxToken> {
3504 support::token(&self.syntax, SyntaxKind::DATA_KW)
3505 }
3506 #[inline]
3507 pub fn foreign_token(&self) -> Option<SyntaxToken> {
3508 support::token(&self.syntax, SyntaxKind::FOREIGN_KW)
3509 }
3510 #[inline]
3511 pub fn wrapper_token(&self) -> Option<SyntaxToken> {
3512 support::token(&self.syntax, SyntaxKind::WRAPPER_KW)
3513 }
3514}
3515
3516#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3517pub struct CreateForeignTable {
3518 pub(crate) syntax: SyntaxNode,
3519}
3520impl CreateForeignTable {
3521 #[inline]
3522 pub fn alter_option_list(&self) -> Option<AlterOptionList> {
3523 support::child(&self.syntax)
3524 }
3525 #[inline]
3526 pub fn if_not_exists(&self) -> Option<IfNotExists> {
3527 support::child(&self.syntax)
3528 }
3529 #[inline]
3530 pub fn inherits(&self) -> Option<Inherits> {
3531 support::child(&self.syntax)
3532 }
3533 #[inline]
3534 pub fn partition_of(&self) -> Option<PartitionOf> {
3535 support::child(&self.syntax)
3536 }
3537 #[inline]
3538 pub fn partition_type(&self) -> Option<PartitionType> {
3539 support::child(&self.syntax)
3540 }
3541 #[inline]
3542 pub fn path(&self) -> Option<Path> {
3543 support::child(&self.syntax)
3544 }
3545 #[inline]
3546 pub fn server_name(&self) -> Option<ServerName> {
3547 support::child(&self.syntax)
3548 }
3549 #[inline]
3550 pub fn table_arg_list(&self) -> Option<TableArgList> {
3551 support::child(&self.syntax)
3552 }
3553 #[inline]
3554 pub fn create_token(&self) -> Option<SyntaxToken> {
3555 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3556 }
3557 #[inline]
3558 pub fn foreign_token(&self) -> Option<SyntaxToken> {
3559 support::token(&self.syntax, SyntaxKind::FOREIGN_KW)
3560 }
3561 #[inline]
3562 pub fn table_token(&self) -> Option<SyntaxToken> {
3563 support::token(&self.syntax, SyntaxKind::TABLE_KW)
3564 }
3565}
3566
3567#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3568pub struct CreateFunction {
3569 pub(crate) syntax: SyntaxNode,
3570}
3571impl CreateFunction {
3572 #[inline]
3573 pub fn option_list(&self) -> Option<FuncOptionList> {
3574 support::child(&self.syntax)
3575 }
3576 #[inline]
3577 pub fn or_replace(&self) -> Option<OrReplace> {
3578 support::child(&self.syntax)
3579 }
3580 #[inline]
3581 pub fn param_list(&self) -> Option<ParamList> {
3582 support::child(&self.syntax)
3583 }
3584 #[inline]
3585 pub fn path(&self) -> Option<Path> {
3586 support::child(&self.syntax)
3587 }
3588 #[inline]
3589 pub fn ret_type(&self) -> Option<RetType> {
3590 support::child(&self.syntax)
3591 }
3592 #[inline]
3593 pub fn create_token(&self) -> Option<SyntaxToken> {
3594 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3595 }
3596 #[inline]
3597 pub fn function_token(&self) -> Option<SyntaxToken> {
3598 support::token(&self.syntax, SyntaxKind::FUNCTION_KW)
3599 }
3600}
3601
3602#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3603pub struct CreateGroup {
3604 pub(crate) syntax: SyntaxNode,
3605}
3606impl CreateGroup {
3607 #[inline]
3608 pub fn name(&self) -> Option<Name> {
3609 support::child(&self.syntax)
3610 }
3611 #[inline]
3612 pub fn role_option_list(&self) -> Option<RoleOptionList> {
3613 support::child(&self.syntax)
3614 }
3615 #[inline]
3616 pub fn create_token(&self) -> Option<SyntaxToken> {
3617 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3618 }
3619 #[inline]
3620 pub fn group_token(&self) -> Option<SyntaxToken> {
3621 support::token(&self.syntax, SyntaxKind::GROUP_KW)
3622 }
3623}
3624
3625#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3626pub struct CreateIndex {
3627 pub(crate) syntax: SyntaxNode,
3628}
3629impl CreateIndex {
3630 #[inline]
3631 pub fn constraint_include_clause(&self) -> Option<ConstraintIncludeClause> {
3632 support::child(&self.syntax)
3633 }
3634 #[inline]
3635 pub fn if_not_exists(&self) -> Option<IfNotExists> {
3636 support::child(&self.syntax)
3637 }
3638 #[inline]
3639 pub fn name(&self) -> Option<Name> {
3640 support::child(&self.syntax)
3641 }
3642 #[inline]
3643 pub fn nulls_distinct(&self) -> Option<NullsDistinct> {
3644 support::child(&self.syntax)
3645 }
3646 #[inline]
3647 pub fn nulls_not_distinct(&self) -> Option<NullsNotDistinct> {
3648 support::child(&self.syntax)
3649 }
3650 #[inline]
3651 pub fn partition_item_list(&self) -> Option<PartitionItemList> {
3652 support::child(&self.syntax)
3653 }
3654 #[inline]
3655 pub fn relation_name(&self) -> Option<RelationName> {
3656 support::child(&self.syntax)
3657 }
3658 #[inline]
3659 pub fn tablespace(&self) -> Option<Tablespace> {
3660 support::child(&self.syntax)
3661 }
3662 #[inline]
3663 pub fn using_method(&self) -> Option<UsingMethod> {
3664 support::child(&self.syntax)
3665 }
3666 #[inline]
3667 pub fn where_clause(&self) -> Option<WhereClause> {
3668 support::child(&self.syntax)
3669 }
3670 #[inline]
3671 pub fn with_params(&self) -> Option<WithParams> {
3672 support::child(&self.syntax)
3673 }
3674 #[inline]
3675 pub fn concurrently_token(&self) -> Option<SyntaxToken> {
3676 support::token(&self.syntax, SyntaxKind::CONCURRENTLY_KW)
3677 }
3678 #[inline]
3679 pub fn create_token(&self) -> Option<SyntaxToken> {
3680 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3681 }
3682 #[inline]
3683 pub fn index_token(&self) -> Option<SyntaxToken> {
3684 support::token(&self.syntax, SyntaxKind::INDEX_KW)
3685 }
3686 #[inline]
3687 pub fn on_token(&self) -> Option<SyntaxToken> {
3688 support::token(&self.syntax, SyntaxKind::ON_KW)
3689 }
3690 #[inline]
3691 pub fn unique_token(&self) -> Option<SyntaxToken> {
3692 support::token(&self.syntax, SyntaxKind::UNIQUE_KW)
3693 }
3694}
3695
3696#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3697pub struct CreateLanguage {
3698 pub(crate) syntax: SyntaxNode,
3699}
3700impl CreateLanguage {
3701 #[inline]
3702 pub fn name(&self) -> Option<Name> {
3703 support::child(&self.syntax)
3704 }
3705 #[inline]
3706 pub fn or_replace(&self) -> Option<OrReplace> {
3707 support::child(&self.syntax)
3708 }
3709 #[inline]
3710 pub fn path(&self) -> Option<Path> {
3711 support::child(&self.syntax)
3712 }
3713 #[inline]
3714 pub fn create_token(&self) -> Option<SyntaxToken> {
3715 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3716 }
3717 #[inline]
3718 pub fn handler_token(&self) -> Option<SyntaxToken> {
3719 support::token(&self.syntax, SyntaxKind::HANDLER_KW)
3720 }
3721 #[inline]
3722 pub fn inline_token(&self) -> Option<SyntaxToken> {
3723 support::token(&self.syntax, SyntaxKind::INLINE_KW)
3724 }
3725 #[inline]
3726 pub fn language_token(&self) -> Option<SyntaxToken> {
3727 support::token(&self.syntax, SyntaxKind::LANGUAGE_KW)
3728 }
3729 #[inline]
3730 pub fn procedural_token(&self) -> Option<SyntaxToken> {
3731 support::token(&self.syntax, SyntaxKind::PROCEDURAL_KW)
3732 }
3733 #[inline]
3734 pub fn trusted_token(&self) -> Option<SyntaxToken> {
3735 support::token(&self.syntax, SyntaxKind::TRUSTED_KW)
3736 }
3737 #[inline]
3738 pub fn validator_token(&self) -> Option<SyntaxToken> {
3739 support::token(&self.syntax, SyntaxKind::VALIDATOR_KW)
3740 }
3741}
3742
3743#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3744pub struct CreateMaterializedView {
3745 pub(crate) syntax: SyntaxNode,
3746}
3747impl CreateMaterializedView {
3748 #[inline]
3749 pub fn column_list(&self) -> Option<ColumnList> {
3750 support::child(&self.syntax)
3751 }
3752 #[inline]
3753 pub fn if_not_exists(&self) -> Option<IfNotExists> {
3754 support::child(&self.syntax)
3755 }
3756 #[inline]
3757 pub fn path(&self) -> Option<Path> {
3758 support::child(&self.syntax)
3759 }
3760 #[inline]
3761 pub fn query(&self) -> Option<SelectVariant> {
3762 support::child(&self.syntax)
3763 }
3764 #[inline]
3765 pub fn tablespace(&self) -> Option<Tablespace> {
3766 support::child(&self.syntax)
3767 }
3768 #[inline]
3769 pub fn using_method(&self) -> Option<UsingMethod> {
3770 support::child(&self.syntax)
3771 }
3772 #[inline]
3773 pub fn with_data(&self) -> Option<WithData> {
3774 support::child(&self.syntax)
3775 }
3776 #[inline]
3777 pub fn with_no_data(&self) -> Option<WithNoData> {
3778 support::child(&self.syntax)
3779 }
3780 #[inline]
3781 pub fn with_params(&self) -> Option<WithParams> {
3782 support::child(&self.syntax)
3783 }
3784 #[inline]
3785 pub fn as_token(&self) -> Option<SyntaxToken> {
3786 support::token(&self.syntax, SyntaxKind::AS_KW)
3787 }
3788 #[inline]
3789 pub fn create_token(&self) -> Option<SyntaxToken> {
3790 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3791 }
3792 #[inline]
3793 pub fn materialized_token(&self) -> Option<SyntaxToken> {
3794 support::token(&self.syntax, SyntaxKind::MATERIALIZED_KW)
3795 }
3796 #[inline]
3797 pub fn view_token(&self) -> Option<SyntaxToken> {
3798 support::token(&self.syntax, SyntaxKind::VIEW_KW)
3799 }
3800}
3801
3802#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3803pub struct CreateOperator {
3804 pub(crate) syntax: SyntaxNode,
3805}
3806impl CreateOperator {
3807 #[inline]
3808 pub fn attribute_list(&self) -> Option<AttributeList> {
3809 support::child(&self.syntax)
3810 }
3811 #[inline]
3812 pub fn op(&self) -> Option<Op> {
3813 support::child(&self.syntax)
3814 }
3815 #[inline]
3816 pub fn path(&self) -> Option<Path> {
3817 support::child(&self.syntax)
3818 }
3819 #[inline]
3820 pub fn create_token(&self) -> Option<SyntaxToken> {
3821 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3822 }
3823 #[inline]
3824 pub fn operator_token(&self) -> Option<SyntaxToken> {
3825 support::token(&self.syntax, SyntaxKind::OPERATOR_KW)
3826 }
3827}
3828
3829#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3830pub struct CreateOperatorClass {
3831 pub(crate) syntax: SyntaxNode,
3832}
3833impl CreateOperatorClass {
3834 #[inline]
3835 pub fn name_ref(&self) -> Option<NameRef> {
3836 support::child(&self.syntax)
3837 }
3838 #[inline]
3839 pub fn operator_class_option_list(&self) -> Option<OperatorClassOptionList> {
3840 support::child(&self.syntax)
3841 }
3842 #[inline]
3843 pub fn path(&self) -> Option<Path> {
3844 support::child(&self.syntax)
3845 }
3846 #[inline]
3847 pub fn ty(&self) -> Option<Type> {
3848 support::child(&self.syntax)
3849 }
3850 #[inline]
3851 pub fn as_token(&self) -> Option<SyntaxToken> {
3852 support::token(&self.syntax, SyntaxKind::AS_KW)
3853 }
3854 #[inline]
3855 pub fn class_token(&self) -> Option<SyntaxToken> {
3856 support::token(&self.syntax, SyntaxKind::CLASS_KW)
3857 }
3858 #[inline]
3859 pub fn create_token(&self) -> Option<SyntaxToken> {
3860 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3861 }
3862 #[inline]
3863 pub fn default_token(&self) -> Option<SyntaxToken> {
3864 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
3865 }
3866 #[inline]
3867 pub fn family_token(&self) -> Option<SyntaxToken> {
3868 support::token(&self.syntax, SyntaxKind::FAMILY_KW)
3869 }
3870 #[inline]
3871 pub fn for_token(&self) -> Option<SyntaxToken> {
3872 support::token(&self.syntax, SyntaxKind::FOR_KW)
3873 }
3874 #[inline]
3875 pub fn operator_token(&self) -> Option<SyntaxToken> {
3876 support::token(&self.syntax, SyntaxKind::OPERATOR_KW)
3877 }
3878 #[inline]
3879 pub fn type_token(&self) -> Option<SyntaxToken> {
3880 support::token(&self.syntax, SyntaxKind::TYPE_KW)
3881 }
3882 #[inline]
3883 pub fn using_token(&self) -> Option<SyntaxToken> {
3884 support::token(&self.syntax, SyntaxKind::USING_KW)
3885 }
3886}
3887
3888#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3889pub struct CreateOperatorFamily {
3890 pub(crate) syntax: SyntaxNode,
3891}
3892impl CreateOperatorFamily {
3893 #[inline]
3894 pub fn name_ref(&self) -> Option<NameRef> {
3895 support::child(&self.syntax)
3896 }
3897 #[inline]
3898 pub fn path(&self) -> Option<Path> {
3899 support::child(&self.syntax)
3900 }
3901 #[inline]
3902 pub fn create_token(&self) -> Option<SyntaxToken> {
3903 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3904 }
3905 #[inline]
3906 pub fn family_token(&self) -> Option<SyntaxToken> {
3907 support::token(&self.syntax, SyntaxKind::FAMILY_KW)
3908 }
3909 #[inline]
3910 pub fn operator_token(&self) -> Option<SyntaxToken> {
3911 support::token(&self.syntax, SyntaxKind::OPERATOR_KW)
3912 }
3913 #[inline]
3914 pub fn using_token(&self) -> Option<SyntaxToken> {
3915 support::token(&self.syntax, SyntaxKind::USING_KW)
3916 }
3917}
3918
3919#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3920pub struct CreatePolicy {
3921 pub(crate) syntax: SyntaxNode,
3922}
3923impl CreatePolicy {
3924 #[inline]
3925 pub fn expr(&self) -> Option<Expr> {
3926 support::child(&self.syntax)
3927 }
3928 #[inline]
3929 pub fn name(&self) -> Option<Name> {
3930 support::child(&self.syntax)
3931 }
3932 #[inline]
3933 pub fn on_table(&self) -> Option<OnTable> {
3934 support::child(&self.syntax)
3935 }
3936 #[inline]
3937 pub fn role_ref_list(&self) -> Option<RoleRefList> {
3938 support::child(&self.syntax)
3939 }
3940 #[inline]
3941 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
3942 support::token(&self.syntax, SyntaxKind::L_PAREN)
3943 }
3944 #[inline]
3945 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
3946 support::token(&self.syntax, SyntaxKind::R_PAREN)
3947 }
3948 #[inline]
3949 pub fn all_token(&self) -> Option<SyntaxToken> {
3950 support::token(&self.syntax, SyntaxKind::ALL_KW)
3951 }
3952 #[inline]
3953 pub fn as_token(&self) -> Option<SyntaxToken> {
3954 support::token(&self.syntax, SyntaxKind::AS_KW)
3955 }
3956 #[inline]
3957 pub fn check_token(&self) -> Option<SyntaxToken> {
3958 support::token(&self.syntax, SyntaxKind::CHECK_KW)
3959 }
3960 #[inline]
3961 pub fn create_token(&self) -> Option<SyntaxToken> {
3962 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3963 }
3964 #[inline]
3965 pub fn delete_token(&self) -> Option<SyntaxToken> {
3966 support::token(&self.syntax, SyntaxKind::DELETE_KW)
3967 }
3968 #[inline]
3969 pub fn for_token(&self) -> Option<SyntaxToken> {
3970 support::token(&self.syntax, SyntaxKind::FOR_KW)
3971 }
3972 #[inline]
3973 pub fn ident_token(&self) -> Option<SyntaxToken> {
3974 support::token(&self.syntax, SyntaxKind::IDENT)
3975 }
3976 #[inline]
3977 pub fn insert_token(&self) -> Option<SyntaxToken> {
3978 support::token(&self.syntax, SyntaxKind::INSERT_KW)
3979 }
3980 #[inline]
3981 pub fn policy_token(&self) -> Option<SyntaxToken> {
3982 support::token(&self.syntax, SyntaxKind::POLICY_KW)
3983 }
3984 #[inline]
3985 pub fn select_token(&self) -> Option<SyntaxToken> {
3986 support::token(&self.syntax, SyntaxKind::SELECT_KW)
3987 }
3988 #[inline]
3989 pub fn to_token(&self) -> Option<SyntaxToken> {
3990 support::token(&self.syntax, SyntaxKind::TO_KW)
3991 }
3992 #[inline]
3993 pub fn update_token(&self) -> Option<SyntaxToken> {
3994 support::token(&self.syntax, SyntaxKind::UPDATE_KW)
3995 }
3996 #[inline]
3997 pub fn using_token(&self) -> Option<SyntaxToken> {
3998 support::token(&self.syntax, SyntaxKind::USING_KW)
3999 }
4000 #[inline]
4001 pub fn with_token(&self) -> Option<SyntaxToken> {
4002 support::token(&self.syntax, SyntaxKind::WITH_KW)
4003 }
4004}
4005
4006#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4007pub struct CreateProcedure {
4008 pub(crate) syntax: SyntaxNode,
4009}
4010impl CreateProcedure {
4011 #[inline]
4012 pub fn option_list(&self) -> Option<FuncOptionList> {
4013 support::child(&self.syntax)
4014 }
4015 #[inline]
4016 pub fn or_replace(&self) -> Option<OrReplace> {
4017 support::child(&self.syntax)
4018 }
4019 #[inline]
4020 pub fn param_list(&self) -> Option<ParamList> {
4021 support::child(&self.syntax)
4022 }
4023 #[inline]
4024 pub fn path(&self) -> Option<Path> {
4025 support::child(&self.syntax)
4026 }
4027 #[inline]
4028 pub fn create_token(&self) -> Option<SyntaxToken> {
4029 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4030 }
4031 #[inline]
4032 pub fn procedure_token(&self) -> Option<SyntaxToken> {
4033 support::token(&self.syntax, SyntaxKind::PROCEDURE_KW)
4034 }
4035}
4036
4037#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4038pub struct CreatePublication {
4039 pub(crate) syntax: SyntaxNode,
4040}
4041impl CreatePublication {
4042 #[inline]
4043 pub fn name(&self) -> Option<Name> {
4044 support::child(&self.syntax)
4045 }
4046 #[inline]
4047 pub fn publication_objects(&self) -> AstChildren<PublicationObject> {
4048 support::children(&self.syntax)
4049 }
4050 #[inline]
4051 pub fn with_params(&self) -> Option<WithParams> {
4052 support::child(&self.syntax)
4053 }
4054 #[inline]
4055 pub fn all_token(&self) -> Option<SyntaxToken> {
4056 support::token(&self.syntax, SyntaxKind::ALL_KW)
4057 }
4058 #[inline]
4059 pub fn create_token(&self) -> Option<SyntaxToken> {
4060 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4061 }
4062 #[inline]
4063 pub fn for_token(&self) -> Option<SyntaxToken> {
4064 support::token(&self.syntax, SyntaxKind::FOR_KW)
4065 }
4066 #[inline]
4067 pub fn publication_token(&self) -> Option<SyntaxToken> {
4068 support::token(&self.syntax, SyntaxKind::PUBLICATION_KW)
4069 }
4070 #[inline]
4071 pub fn tables_token(&self) -> Option<SyntaxToken> {
4072 support::token(&self.syntax, SyntaxKind::TABLES_KW)
4073 }
4074}
4075
4076#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4077pub struct CreateRole {
4078 pub(crate) syntax: SyntaxNode,
4079}
4080impl CreateRole {
4081 #[inline]
4082 pub fn name(&self) -> Option<Name> {
4083 support::child(&self.syntax)
4084 }
4085 #[inline]
4086 pub fn role_option_list(&self) -> Option<RoleOptionList> {
4087 support::child(&self.syntax)
4088 }
4089 #[inline]
4090 pub fn create_token(&self) -> Option<SyntaxToken> {
4091 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4092 }
4093 #[inline]
4094 pub fn role_token(&self) -> Option<SyntaxToken> {
4095 support::token(&self.syntax, SyntaxKind::ROLE_KW)
4096 }
4097}
4098
4099#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4100pub struct CreateRule {
4101 pub(crate) syntax: SyntaxNode,
4102}
4103impl CreateRule {
4104 #[inline]
4105 pub fn name(&self) -> Option<Name> {
4106 support::child(&self.syntax)
4107 }
4108 #[inline]
4109 pub fn or_replace(&self) -> Option<OrReplace> {
4110 support::child(&self.syntax)
4111 }
4112 #[inline]
4113 pub fn path(&self) -> Option<Path> {
4114 support::child(&self.syntax)
4115 }
4116 #[inline]
4117 pub fn stmt(&self) -> Option<Stmt> {
4118 support::child(&self.syntax)
4119 }
4120 #[inline]
4121 pub fn stmts(&self) -> AstChildren<Stmt> {
4122 support::children(&self.syntax)
4123 }
4124 #[inline]
4125 pub fn where_clause(&self) -> Option<WhereClause> {
4126 support::child(&self.syntax)
4127 }
4128 #[inline]
4129 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
4130 support::token(&self.syntax, SyntaxKind::L_PAREN)
4131 }
4132 #[inline]
4133 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
4134 support::token(&self.syntax, SyntaxKind::R_PAREN)
4135 }
4136 #[inline]
4137 pub fn also_token(&self) -> Option<SyntaxToken> {
4138 support::token(&self.syntax, SyntaxKind::ALSO_KW)
4139 }
4140 #[inline]
4141 pub fn as_token(&self) -> Option<SyntaxToken> {
4142 support::token(&self.syntax, SyntaxKind::AS_KW)
4143 }
4144 #[inline]
4145 pub fn create_token(&self) -> Option<SyntaxToken> {
4146 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4147 }
4148 #[inline]
4149 pub fn delete_token(&self) -> Option<SyntaxToken> {
4150 support::token(&self.syntax, SyntaxKind::DELETE_KW)
4151 }
4152 #[inline]
4153 pub fn do_token(&self) -> Option<SyntaxToken> {
4154 support::token(&self.syntax, SyntaxKind::DO_KW)
4155 }
4156 #[inline]
4157 pub fn ident_token(&self) -> Option<SyntaxToken> {
4158 support::token(&self.syntax, SyntaxKind::IDENT)
4159 }
4160 #[inline]
4161 pub fn insert_token(&self) -> Option<SyntaxToken> {
4162 support::token(&self.syntax, SyntaxKind::INSERT_KW)
4163 }
4164 #[inline]
4165 pub fn instead_token(&self) -> Option<SyntaxToken> {
4166 support::token(&self.syntax, SyntaxKind::INSTEAD_KW)
4167 }
4168 #[inline]
4169 pub fn nothing_token(&self) -> Option<SyntaxToken> {
4170 support::token(&self.syntax, SyntaxKind::NOTHING_KW)
4171 }
4172 #[inline]
4173 pub fn on_token(&self) -> Option<SyntaxToken> {
4174 support::token(&self.syntax, SyntaxKind::ON_KW)
4175 }
4176 #[inline]
4177 pub fn rule_token(&self) -> Option<SyntaxToken> {
4178 support::token(&self.syntax, SyntaxKind::RULE_KW)
4179 }
4180 #[inline]
4181 pub fn select_token(&self) -> Option<SyntaxToken> {
4182 support::token(&self.syntax, SyntaxKind::SELECT_KW)
4183 }
4184 #[inline]
4185 pub fn to_token(&self) -> Option<SyntaxToken> {
4186 support::token(&self.syntax, SyntaxKind::TO_KW)
4187 }
4188 #[inline]
4189 pub fn update_token(&self) -> Option<SyntaxToken> {
4190 support::token(&self.syntax, SyntaxKind::UPDATE_KW)
4191 }
4192}
4193
4194#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4195pub struct CreateSchema {
4196 pub(crate) syntax: SyntaxNode,
4197}
4198impl CreateSchema {
4199 #[inline]
4200 pub fn if_not_exists(&self) -> Option<IfNotExists> {
4201 support::child(&self.syntax)
4202 }
4203 #[inline]
4204 pub fn name(&self) -> Option<Name> {
4205 support::child(&self.syntax)
4206 }
4207 #[inline]
4208 pub fn role(&self) -> Option<Role> {
4209 support::child(&self.syntax)
4210 }
4211 #[inline]
4212 pub fn role_ref(&self) -> Option<RoleRef> {
4213 support::child(&self.syntax)
4214 }
4215 #[inline]
4216 pub fn schema_elements(&self) -> AstChildren<SchemaElement> {
4217 support::children(&self.syntax)
4218 }
4219 #[inline]
4220 pub fn authorization_token(&self) -> Option<SyntaxToken> {
4221 support::token(&self.syntax, SyntaxKind::AUTHORIZATION_KW)
4222 }
4223 #[inline]
4224 pub fn create_token(&self) -> Option<SyntaxToken> {
4225 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4226 }
4227 #[inline]
4228 pub fn schema_token(&self) -> Option<SyntaxToken> {
4229 support::token(&self.syntax, SyntaxKind::SCHEMA_KW)
4230 }
4231}
4232
4233#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4234pub struct CreateSequence {
4235 pub(crate) syntax: SyntaxNode,
4236}
4237impl CreateSequence {
4238 #[inline]
4239 pub fn if_not_exists(&self) -> Option<IfNotExists> {
4240 support::child(&self.syntax)
4241 }
4242 #[inline]
4243 pub fn path(&self) -> Option<Path> {
4244 support::child(&self.syntax)
4245 }
4246 #[inline]
4247 pub fn sequence_options(&self) -> AstChildren<SequenceOption> {
4248 support::children(&self.syntax)
4249 }
4250 #[inline]
4251 pub fn create_token(&self) -> Option<SyntaxToken> {
4252 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4253 }
4254 #[inline]
4255 pub fn sequence_token(&self) -> Option<SyntaxToken> {
4256 support::token(&self.syntax, SyntaxKind::SEQUENCE_KW)
4257 }
4258 #[inline]
4259 pub fn temp_token(&self) -> Option<SyntaxToken> {
4260 support::token(&self.syntax, SyntaxKind::TEMP_KW)
4261 }
4262 #[inline]
4263 pub fn temporary_token(&self) -> Option<SyntaxToken> {
4264 support::token(&self.syntax, SyntaxKind::TEMPORARY_KW)
4265 }
4266 #[inline]
4267 pub fn unlogged_token(&self) -> Option<SyntaxToken> {
4268 support::token(&self.syntax, SyntaxKind::UNLOGGED_KW)
4269 }
4270}
4271
4272#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4273pub struct CreateServer {
4274 pub(crate) syntax: SyntaxNode,
4275}
4276impl CreateServer {
4277 #[inline]
4278 pub fn alter_option_list(&self) -> Option<AlterOptionList> {
4279 support::child(&self.syntax)
4280 }
4281 #[inline]
4282 pub fn if_not_exists(&self) -> Option<IfNotExists> {
4283 support::child(&self.syntax)
4284 }
4285 #[inline]
4286 pub fn literal(&self) -> Option<Literal> {
4287 support::child(&self.syntax)
4288 }
4289 #[inline]
4290 pub fn name(&self) -> Option<Name> {
4291 support::child(&self.syntax)
4292 }
4293 #[inline]
4294 pub fn name_ref(&self) -> Option<NameRef> {
4295 support::child(&self.syntax)
4296 }
4297 #[inline]
4298 pub fn create_token(&self) -> Option<SyntaxToken> {
4299 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4300 }
4301 #[inline]
4302 pub fn data_token(&self) -> Option<SyntaxToken> {
4303 support::token(&self.syntax, SyntaxKind::DATA_KW)
4304 }
4305 #[inline]
4306 pub fn foreign_token(&self) -> Option<SyntaxToken> {
4307 support::token(&self.syntax, SyntaxKind::FOREIGN_KW)
4308 }
4309 #[inline]
4310 pub fn server_token(&self) -> Option<SyntaxToken> {
4311 support::token(&self.syntax, SyntaxKind::SERVER_KW)
4312 }
4313 #[inline]
4314 pub fn type_token(&self) -> Option<SyntaxToken> {
4315 support::token(&self.syntax, SyntaxKind::TYPE_KW)
4316 }
4317 #[inline]
4318 pub fn version_token(&self) -> Option<SyntaxToken> {
4319 support::token(&self.syntax, SyntaxKind::VERSION_KW)
4320 }
4321 #[inline]
4322 pub fn wrapper_token(&self) -> Option<SyntaxToken> {
4323 support::token(&self.syntax, SyntaxKind::WRAPPER_KW)
4324 }
4325}
4326
4327#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4328pub struct CreateStatistics {
4329 pub(crate) syntax: SyntaxNode,
4330}
4331impl CreateStatistics {
4332 #[inline]
4333 pub fn from_table(&self) -> Option<FromTable> {
4334 support::child(&self.syntax)
4335 }
4336 #[inline]
4337 pub fn name_refs(&self) -> AstChildren<NameRef> {
4338 support::children(&self.syntax)
4339 }
4340 #[inline]
4341 pub fn path(&self) -> Option<Path> {
4342 support::child(&self.syntax)
4343 }
4344 #[inline]
4345 pub fn create_token(&self) -> Option<SyntaxToken> {
4346 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4347 }
4348 #[inline]
4349 pub fn on_token(&self) -> Option<SyntaxToken> {
4350 support::token(&self.syntax, SyntaxKind::ON_KW)
4351 }
4352 #[inline]
4353 pub fn statistics_token(&self) -> Option<SyntaxToken> {
4354 support::token(&self.syntax, SyntaxKind::STATISTICS_KW)
4355 }
4356}
4357
4358#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4359pub struct CreateSubscription {
4360 pub(crate) syntax: SyntaxNode,
4361}
4362impl CreateSubscription {
4363 #[inline]
4364 pub fn literal(&self) -> Option<Literal> {
4365 support::child(&self.syntax)
4366 }
4367 #[inline]
4368 pub fn name(&self) -> Option<Name> {
4369 support::child(&self.syntax)
4370 }
4371 #[inline]
4372 pub fn name_refs(&self) -> AstChildren<NameRef> {
4373 support::children(&self.syntax)
4374 }
4375 #[inline]
4376 pub fn with_params(&self) -> Option<WithParams> {
4377 support::child(&self.syntax)
4378 }
4379 #[inline]
4380 pub fn connection_token(&self) -> Option<SyntaxToken> {
4381 support::token(&self.syntax, SyntaxKind::CONNECTION_KW)
4382 }
4383 #[inline]
4384 pub fn create_token(&self) -> Option<SyntaxToken> {
4385 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4386 }
4387 #[inline]
4388 pub fn publication_token(&self) -> Option<SyntaxToken> {
4389 support::token(&self.syntax, SyntaxKind::PUBLICATION_KW)
4390 }
4391 #[inline]
4392 pub fn subscription_token(&self) -> Option<SyntaxToken> {
4393 support::token(&self.syntax, SyntaxKind::SUBSCRIPTION_KW)
4394 }
4395}
4396
4397#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4398pub struct CreateTable {
4399 pub(crate) syntax: SyntaxNode,
4400}
4401impl CreateTable {
4402 #[inline]
4403 pub fn if_not_exists(&self) -> Option<IfNotExists> {
4404 support::child(&self.syntax)
4405 }
4406 #[inline]
4407 pub fn inherits(&self) -> Option<Inherits> {
4408 support::child(&self.syntax)
4409 }
4410 #[inline]
4411 pub fn of_type(&self) -> Option<OfType> {
4412 support::child(&self.syntax)
4413 }
4414 #[inline]
4415 pub fn on_commit(&self) -> Option<OnCommit> {
4416 support::child(&self.syntax)
4417 }
4418 #[inline]
4419 pub fn partition_by(&self) -> Option<PartitionBy> {
4420 support::child(&self.syntax)
4421 }
4422 #[inline]
4423 pub fn partition_of(&self) -> Option<PartitionOf> {
4424 support::child(&self.syntax)
4425 }
4426 #[inline]
4427 pub fn path(&self) -> Option<Path> {
4428 support::child(&self.syntax)
4429 }
4430 #[inline]
4431 pub fn table_arg_list(&self) -> Option<TableArgList> {
4432 support::child(&self.syntax)
4433 }
4434 #[inline]
4435 pub fn tablespace(&self) -> Option<Tablespace> {
4436 support::child(&self.syntax)
4437 }
4438 #[inline]
4439 pub fn using_method(&self) -> Option<UsingMethod> {
4440 support::child(&self.syntax)
4441 }
4442 #[inline]
4443 pub fn with_params(&self) -> Option<WithParams> {
4444 support::child(&self.syntax)
4445 }
4446 #[inline]
4447 pub fn without_oids(&self) -> Option<WithoutOids> {
4448 support::child(&self.syntax)
4449 }
4450 #[inline]
4451 pub fn create_token(&self) -> Option<SyntaxToken> {
4452 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4453 }
4454 #[inline]
4455 pub fn global_token(&self) -> Option<SyntaxToken> {
4456 support::token(&self.syntax, SyntaxKind::GLOBAL_KW)
4457 }
4458 #[inline]
4459 pub fn local_token(&self) -> Option<SyntaxToken> {
4460 support::token(&self.syntax, SyntaxKind::LOCAL_KW)
4461 }
4462 #[inline]
4463 pub fn table_token(&self) -> Option<SyntaxToken> {
4464 support::token(&self.syntax, SyntaxKind::TABLE_KW)
4465 }
4466 #[inline]
4467 pub fn temp_token(&self) -> Option<SyntaxToken> {
4468 support::token(&self.syntax, SyntaxKind::TEMP_KW)
4469 }
4470 #[inline]
4471 pub fn temporary_token(&self) -> Option<SyntaxToken> {
4472 support::token(&self.syntax, SyntaxKind::TEMPORARY_KW)
4473 }
4474 #[inline]
4475 pub fn unlogged_token(&self) -> Option<SyntaxToken> {
4476 support::token(&self.syntax, SyntaxKind::UNLOGGED_KW)
4477 }
4478}
4479
4480#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4481pub struct CreateTableAs {
4482 pub(crate) syntax: SyntaxNode,
4483}
4484impl CreateTableAs {
4485 #[inline]
4486 pub fn if_not_exists(&self) -> Option<IfNotExists> {
4487 support::child(&self.syntax)
4488 }
4489 #[inline]
4490 pub fn on_commit(&self) -> Option<OnCommit> {
4491 support::child(&self.syntax)
4492 }
4493 #[inline]
4494 pub fn path(&self) -> Option<Path> {
4495 support::child(&self.syntax)
4496 }
4497 #[inline]
4498 pub fn query(&self) -> Option<SelectVariant> {
4499 support::child(&self.syntax)
4500 }
4501 #[inline]
4502 pub fn tablespace(&self) -> Option<Tablespace> {
4503 support::child(&self.syntax)
4504 }
4505 #[inline]
4506 pub fn using_method(&self) -> Option<UsingMethod> {
4507 support::child(&self.syntax)
4508 }
4509 #[inline]
4510 pub fn with_data(&self) -> Option<WithData> {
4511 support::child(&self.syntax)
4512 }
4513 #[inline]
4514 pub fn with_no_data(&self) -> Option<WithNoData> {
4515 support::child(&self.syntax)
4516 }
4517 #[inline]
4518 pub fn with_params(&self) -> Option<WithParams> {
4519 support::child(&self.syntax)
4520 }
4521 #[inline]
4522 pub fn without_oids(&self) -> Option<WithoutOids> {
4523 support::child(&self.syntax)
4524 }
4525 #[inline]
4526 pub fn as_token(&self) -> Option<SyntaxToken> {
4527 support::token(&self.syntax, SyntaxKind::AS_KW)
4528 }
4529 #[inline]
4530 pub fn create_token(&self) -> Option<SyntaxToken> {
4531 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4532 }
4533 #[inline]
4534 pub fn global_token(&self) -> Option<SyntaxToken> {
4535 support::token(&self.syntax, SyntaxKind::GLOBAL_KW)
4536 }
4537 #[inline]
4538 pub fn local_token(&self) -> Option<SyntaxToken> {
4539 support::token(&self.syntax, SyntaxKind::LOCAL_KW)
4540 }
4541 #[inline]
4542 pub fn table_token(&self) -> Option<SyntaxToken> {
4543 support::token(&self.syntax, SyntaxKind::TABLE_KW)
4544 }
4545 #[inline]
4546 pub fn temp_token(&self) -> Option<SyntaxToken> {
4547 support::token(&self.syntax, SyntaxKind::TEMP_KW)
4548 }
4549 #[inline]
4550 pub fn temporary_token(&self) -> Option<SyntaxToken> {
4551 support::token(&self.syntax, SyntaxKind::TEMPORARY_KW)
4552 }
4553 #[inline]
4554 pub fn unlogged_token(&self) -> Option<SyntaxToken> {
4555 support::token(&self.syntax, SyntaxKind::UNLOGGED_KW)
4556 }
4557}
4558
4559#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4560pub struct CreateTablespace {
4561 pub(crate) syntax: SyntaxNode,
4562}
4563impl CreateTablespace {
4564 #[inline]
4565 pub fn literal(&self) -> Option<Literal> {
4566 support::child(&self.syntax)
4567 }
4568 #[inline]
4569 pub fn name(&self) -> Option<Name> {
4570 support::child(&self.syntax)
4571 }
4572 #[inline]
4573 pub fn role_ref(&self) -> Option<RoleRef> {
4574 support::child(&self.syntax)
4575 }
4576 #[inline]
4577 pub fn with_params(&self) -> Option<WithParams> {
4578 support::child(&self.syntax)
4579 }
4580 #[inline]
4581 pub fn create_token(&self) -> Option<SyntaxToken> {
4582 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4583 }
4584 #[inline]
4585 pub fn location_token(&self) -> Option<SyntaxToken> {
4586 support::token(&self.syntax, SyntaxKind::LOCATION_KW)
4587 }
4588 #[inline]
4589 pub fn owner_token(&self) -> Option<SyntaxToken> {
4590 support::token(&self.syntax, SyntaxKind::OWNER_KW)
4591 }
4592 #[inline]
4593 pub fn tablespace_token(&self) -> Option<SyntaxToken> {
4594 support::token(&self.syntax, SyntaxKind::TABLESPACE_KW)
4595 }
4596}
4597
4598#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4599pub struct CreateTextSearchConfiguration {
4600 pub(crate) syntax: SyntaxNode,
4601}
4602impl CreateTextSearchConfiguration {
4603 #[inline]
4604 pub fn attribute_list(&self) -> Option<AttributeList> {
4605 support::child(&self.syntax)
4606 }
4607 #[inline]
4608 pub fn path(&self) -> Option<Path> {
4609 support::child(&self.syntax)
4610 }
4611 #[inline]
4612 pub fn configuration_token(&self) -> Option<SyntaxToken> {
4613 support::token(&self.syntax, SyntaxKind::CONFIGURATION_KW)
4614 }
4615 #[inline]
4616 pub fn create_token(&self) -> Option<SyntaxToken> {
4617 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4618 }
4619 #[inline]
4620 pub fn search_token(&self) -> Option<SyntaxToken> {
4621 support::token(&self.syntax, SyntaxKind::SEARCH_KW)
4622 }
4623 #[inline]
4624 pub fn text_token(&self) -> Option<SyntaxToken> {
4625 support::token(&self.syntax, SyntaxKind::TEXT_KW)
4626 }
4627}
4628
4629#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4630pub struct CreateTextSearchDictionary {
4631 pub(crate) syntax: SyntaxNode,
4632}
4633impl CreateTextSearchDictionary {
4634 #[inline]
4635 pub fn attribute_list(&self) -> Option<AttributeList> {
4636 support::child(&self.syntax)
4637 }
4638 #[inline]
4639 pub fn path(&self) -> Option<Path> {
4640 support::child(&self.syntax)
4641 }
4642 #[inline]
4643 pub fn create_token(&self) -> Option<SyntaxToken> {
4644 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4645 }
4646 #[inline]
4647 pub fn dictionary_token(&self) -> Option<SyntaxToken> {
4648 support::token(&self.syntax, SyntaxKind::DICTIONARY_KW)
4649 }
4650 #[inline]
4651 pub fn search_token(&self) -> Option<SyntaxToken> {
4652 support::token(&self.syntax, SyntaxKind::SEARCH_KW)
4653 }
4654 #[inline]
4655 pub fn text_token(&self) -> Option<SyntaxToken> {
4656 support::token(&self.syntax, SyntaxKind::TEXT_KW)
4657 }
4658}
4659
4660#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4661pub struct CreateTextSearchParser {
4662 pub(crate) syntax: SyntaxNode,
4663}
4664impl CreateTextSearchParser {
4665 #[inline]
4666 pub fn attribute_list(&self) -> Option<AttributeList> {
4667 support::child(&self.syntax)
4668 }
4669 #[inline]
4670 pub fn path(&self) -> Option<Path> {
4671 support::child(&self.syntax)
4672 }
4673 #[inline]
4674 pub fn create_token(&self) -> Option<SyntaxToken> {
4675 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4676 }
4677 #[inline]
4678 pub fn parser_token(&self) -> Option<SyntaxToken> {
4679 support::token(&self.syntax, SyntaxKind::PARSER_KW)
4680 }
4681 #[inline]
4682 pub fn search_token(&self) -> Option<SyntaxToken> {
4683 support::token(&self.syntax, SyntaxKind::SEARCH_KW)
4684 }
4685 #[inline]
4686 pub fn text_token(&self) -> Option<SyntaxToken> {
4687 support::token(&self.syntax, SyntaxKind::TEXT_KW)
4688 }
4689}
4690
4691#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4692pub struct CreateTextSearchTemplate {
4693 pub(crate) syntax: SyntaxNode,
4694}
4695impl CreateTextSearchTemplate {
4696 #[inline]
4697 pub fn attribute_list(&self) -> Option<AttributeList> {
4698 support::child(&self.syntax)
4699 }
4700 #[inline]
4701 pub fn path(&self) -> Option<Path> {
4702 support::child(&self.syntax)
4703 }
4704 #[inline]
4705 pub fn create_token(&self) -> Option<SyntaxToken> {
4706 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4707 }
4708 #[inline]
4709 pub fn search_token(&self) -> Option<SyntaxToken> {
4710 support::token(&self.syntax, SyntaxKind::SEARCH_KW)
4711 }
4712 #[inline]
4713 pub fn template_token(&self) -> Option<SyntaxToken> {
4714 support::token(&self.syntax, SyntaxKind::TEMPLATE_KW)
4715 }
4716 #[inline]
4717 pub fn text_token(&self) -> Option<SyntaxToken> {
4718 support::token(&self.syntax, SyntaxKind::TEXT_KW)
4719 }
4720}
4721
4722#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4723pub struct CreateTransform {
4724 pub(crate) syntax: SyntaxNode,
4725}
4726impl CreateTransform {
4727 #[inline]
4728 pub fn from_func(&self) -> Option<TransformFromFunc> {
4729 support::child(&self.syntax)
4730 }
4731 #[inline]
4732 pub fn language(&self) -> Option<NameRef> {
4733 support::child(&self.syntax)
4734 }
4735 #[inline]
4736 pub fn or_replace(&self) -> Option<OrReplace> {
4737 support::child(&self.syntax)
4738 }
4739 #[inline]
4740 pub fn to_func(&self) -> Option<TransformToFunc> {
4741 support::child(&self.syntax)
4742 }
4743 #[inline]
4744 pub fn ty(&self) -> Option<Type> {
4745 support::child(&self.syntax)
4746 }
4747 #[inline]
4748 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
4749 support::token(&self.syntax, SyntaxKind::L_PAREN)
4750 }
4751 #[inline]
4752 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
4753 support::token(&self.syntax, SyntaxKind::R_PAREN)
4754 }
4755 #[inline]
4756 pub fn comma_token(&self) -> Option<SyntaxToken> {
4757 support::token(&self.syntax, SyntaxKind::COMMA)
4758 }
4759 #[inline]
4760 pub fn create_token(&self) -> Option<SyntaxToken> {
4761 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4762 }
4763 #[inline]
4764 pub fn for_token(&self) -> Option<SyntaxToken> {
4765 support::token(&self.syntax, SyntaxKind::FOR_KW)
4766 }
4767 #[inline]
4768 pub fn language_token(&self) -> Option<SyntaxToken> {
4769 support::token(&self.syntax, SyntaxKind::LANGUAGE_KW)
4770 }
4771 #[inline]
4772 pub fn transform_token(&self) -> Option<SyntaxToken> {
4773 support::token(&self.syntax, SyntaxKind::TRANSFORM_KW)
4774 }
4775}
4776
4777#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4778pub struct CreateTrigger {
4779 pub(crate) syntax: SyntaxNode,
4780}
4781impl CreateTrigger {
4782 #[inline]
4783 pub fn call_expr(&self) -> Option<CallExpr> {
4784 support::child(&self.syntax)
4785 }
4786 #[inline]
4787 pub fn deferrable_constraint_option(&self) -> Option<DeferrableConstraintOption> {
4788 support::child(&self.syntax)
4789 }
4790 #[inline]
4791 pub fn from_table(&self) -> Option<FromTable> {
4792 support::child(&self.syntax)
4793 }
4794 #[inline]
4795 pub fn initially_deferred_constraint_option(
4796 &self,
4797 ) -> Option<InitiallyDeferredConstraintOption> {
4798 support::child(&self.syntax)
4799 }
4800 #[inline]
4801 pub fn initially_immediate_constraint_option(
4802 &self,
4803 ) -> Option<InitiallyImmediateConstraintOption> {
4804 support::child(&self.syntax)
4805 }
4806 #[inline]
4807 pub fn name(&self) -> Option<Name> {
4808 support::child(&self.syntax)
4809 }
4810 #[inline]
4811 pub fn not_deferrable_constraint_option(&self) -> Option<NotDeferrableConstraintOption> {
4812 support::child(&self.syntax)
4813 }
4814 #[inline]
4815 pub fn on_table(&self) -> Option<OnTable> {
4816 support::child(&self.syntax)
4817 }
4818 #[inline]
4819 pub fn or_replace(&self) -> Option<OrReplace> {
4820 support::child(&self.syntax)
4821 }
4822 #[inline]
4823 pub fn referencing(&self) -> Option<Referencing> {
4824 support::child(&self.syntax)
4825 }
4826 #[inline]
4827 pub fn timing(&self) -> Option<Timing> {
4828 support::child(&self.syntax)
4829 }
4830 #[inline]
4831 pub fn trigger_event_list(&self) -> Option<TriggerEventList> {
4832 support::child(&self.syntax)
4833 }
4834 #[inline]
4835 pub fn when_condition(&self) -> Option<WhenCondition> {
4836 support::child(&self.syntax)
4837 }
4838 #[inline]
4839 pub fn constraint_token(&self) -> Option<SyntaxToken> {
4840 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
4841 }
4842 #[inline]
4843 pub fn create_token(&self) -> Option<SyntaxToken> {
4844 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4845 }
4846 #[inline]
4847 pub fn each_token(&self) -> Option<SyntaxToken> {
4848 support::token(&self.syntax, SyntaxKind::EACH_KW)
4849 }
4850 #[inline]
4851 pub fn execute_token(&self) -> Option<SyntaxToken> {
4852 support::token(&self.syntax, SyntaxKind::EXECUTE_KW)
4853 }
4854 #[inline]
4855 pub fn for_token(&self) -> Option<SyntaxToken> {
4856 support::token(&self.syntax, SyntaxKind::FOR_KW)
4857 }
4858 #[inline]
4859 pub fn function_token(&self) -> Option<SyntaxToken> {
4860 support::token(&self.syntax, SyntaxKind::FUNCTION_KW)
4861 }
4862 #[inline]
4863 pub fn procedure_token(&self) -> Option<SyntaxToken> {
4864 support::token(&self.syntax, SyntaxKind::PROCEDURE_KW)
4865 }
4866 #[inline]
4867 pub fn row_token(&self) -> Option<SyntaxToken> {
4868 support::token(&self.syntax, SyntaxKind::ROW_KW)
4869 }
4870 #[inline]
4871 pub fn statement_token(&self) -> Option<SyntaxToken> {
4872 support::token(&self.syntax, SyntaxKind::STATEMENT_KW)
4873 }
4874 #[inline]
4875 pub fn trigger_token(&self) -> Option<SyntaxToken> {
4876 support::token(&self.syntax, SyntaxKind::TRIGGER_KW)
4877 }
4878}
4879
4880#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4881pub struct CreateType {
4882 pub(crate) syntax: SyntaxNode,
4883}
4884impl CreateType {
4885 #[inline]
4886 pub fn attribute_list(&self) -> Option<AttributeList> {
4887 support::child(&self.syntax)
4888 }
4889 #[inline]
4890 pub fn column_list(&self) -> Option<ColumnList> {
4891 support::child(&self.syntax)
4892 }
4893 #[inline]
4894 pub fn path(&self) -> Option<Path> {
4895 support::child(&self.syntax)
4896 }
4897 #[inline]
4898 pub fn variant_list(&self) -> Option<VariantList> {
4899 support::child(&self.syntax)
4900 }
4901 #[inline]
4902 pub fn as_token(&self) -> Option<SyntaxToken> {
4903 support::token(&self.syntax, SyntaxKind::AS_KW)
4904 }
4905 #[inline]
4906 pub fn create_token(&self) -> Option<SyntaxToken> {
4907 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4908 }
4909 #[inline]
4910 pub fn enum_token(&self) -> Option<SyntaxToken> {
4911 support::token(&self.syntax, SyntaxKind::ENUM_KW)
4912 }
4913 #[inline]
4914 pub fn range_token(&self) -> Option<SyntaxToken> {
4915 support::token(&self.syntax, SyntaxKind::RANGE_KW)
4916 }
4917 #[inline]
4918 pub fn type_token(&self) -> Option<SyntaxToken> {
4919 support::token(&self.syntax, SyntaxKind::TYPE_KW)
4920 }
4921}
4922
4923#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4924pub struct CreateUser {
4925 pub(crate) syntax: SyntaxNode,
4926}
4927impl CreateUser {
4928 #[inline]
4929 pub fn name(&self) -> Option<Name> {
4930 support::child(&self.syntax)
4931 }
4932 #[inline]
4933 pub fn role_option_list(&self) -> Option<RoleOptionList> {
4934 support::child(&self.syntax)
4935 }
4936 #[inline]
4937 pub fn create_token(&self) -> Option<SyntaxToken> {
4938 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4939 }
4940 #[inline]
4941 pub fn user_token(&self) -> Option<SyntaxToken> {
4942 support::token(&self.syntax, SyntaxKind::USER_KW)
4943 }
4944}
4945
4946#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4947pub struct CreateUserMapping {
4948 pub(crate) syntax: SyntaxNode,
4949}
4950impl CreateUserMapping {
4951 #[inline]
4952 pub fn alter_option_list(&self) -> Option<AlterOptionList> {
4953 support::child(&self.syntax)
4954 }
4955 #[inline]
4956 pub fn if_not_exists(&self) -> Option<IfNotExists> {
4957 support::child(&self.syntax)
4958 }
4959 #[inline]
4960 pub fn role_ref(&self) -> Option<RoleRef> {
4961 support::child(&self.syntax)
4962 }
4963 #[inline]
4964 pub fn server_name(&self) -> Option<ServerName> {
4965 support::child(&self.syntax)
4966 }
4967 #[inline]
4968 pub fn create_token(&self) -> Option<SyntaxToken> {
4969 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4970 }
4971 #[inline]
4972 pub fn for_token(&self) -> Option<SyntaxToken> {
4973 support::token(&self.syntax, SyntaxKind::FOR_KW)
4974 }
4975 #[inline]
4976 pub fn mapping_token(&self) -> Option<SyntaxToken> {
4977 support::token(&self.syntax, SyntaxKind::MAPPING_KW)
4978 }
4979 #[inline]
4980 pub fn user_token(&self) -> Option<SyntaxToken> {
4981 support::token(&self.syntax, SyntaxKind::USER_KW)
4982 }
4983}
4984
4985#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4986pub struct CreateView {
4987 pub(crate) syntax: SyntaxNode,
4988}
4989impl CreateView {
4990 #[inline]
4991 pub fn column_list(&self) -> Option<ColumnList> {
4992 support::child(&self.syntax)
4993 }
4994 #[inline]
4995 pub fn or_replace(&self) -> Option<OrReplace> {
4996 support::child(&self.syntax)
4997 }
4998 #[inline]
4999 pub fn path(&self) -> Option<Path> {
5000 support::child(&self.syntax)
5001 }
5002 #[inline]
5003 pub fn query(&self) -> Option<SelectVariant> {
5004 support::child(&self.syntax)
5005 }
5006 #[inline]
5007 pub fn with_params(&self) -> Option<WithParams> {
5008 support::child(&self.syntax)
5009 }
5010 #[inline]
5011 pub fn as_token(&self) -> Option<SyntaxToken> {
5012 support::token(&self.syntax, SyntaxKind::AS_KW)
5013 }
5014 #[inline]
5015 pub fn cascaded_token(&self) -> Option<SyntaxToken> {
5016 support::token(&self.syntax, SyntaxKind::CASCADED_KW)
5017 }
5018 #[inline]
5019 pub fn check_token(&self) -> Option<SyntaxToken> {
5020 support::token(&self.syntax, SyntaxKind::CHECK_KW)
5021 }
5022 #[inline]
5023 pub fn create_token(&self) -> Option<SyntaxToken> {
5024 support::token(&self.syntax, SyntaxKind::CREATE_KW)
5025 }
5026 #[inline]
5027 pub fn local_token(&self) -> Option<SyntaxToken> {
5028 support::token(&self.syntax, SyntaxKind::LOCAL_KW)
5029 }
5030 #[inline]
5031 pub fn option_token(&self) -> Option<SyntaxToken> {
5032 support::token(&self.syntax, SyntaxKind::OPTION_KW)
5033 }
5034 #[inline]
5035 pub fn recursive_token(&self) -> Option<SyntaxToken> {
5036 support::token(&self.syntax, SyntaxKind::RECURSIVE_KW)
5037 }
5038 #[inline]
5039 pub fn temp_token(&self) -> Option<SyntaxToken> {
5040 support::token(&self.syntax, SyntaxKind::TEMP_KW)
5041 }
5042 #[inline]
5043 pub fn temporary_token(&self) -> Option<SyntaxToken> {
5044 support::token(&self.syntax, SyntaxKind::TEMPORARY_KW)
5045 }
5046 #[inline]
5047 pub fn view_token(&self) -> Option<SyntaxToken> {
5048 support::token(&self.syntax, SyntaxKind::VIEW_KW)
5049 }
5050 #[inline]
5051 pub fn with_token(&self) -> Option<SyntaxToken> {
5052 support::token(&self.syntax, SyntaxKind::WITH_KW)
5053 }
5054}
5055
5056#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5057pub struct CustomOp {
5058 pub(crate) syntax: SyntaxNode,
5059}
5060impl CustomOp {
5061 #[inline]
5062 pub fn bang_token(&self) -> Option<SyntaxToken> {
5063 support::token(&self.syntax, SyntaxKind::BANG)
5064 }
5065 #[inline]
5066 pub fn pound_token(&self) -> Option<SyntaxToken> {
5067 support::token(&self.syntax, SyntaxKind::POUND)
5068 }
5069 #[inline]
5070 pub fn percent_token(&self) -> Option<SyntaxToken> {
5071 support::token(&self.syntax, SyntaxKind::PERCENT)
5072 }
5073 #[inline]
5074 pub fn amp_token(&self) -> Option<SyntaxToken> {
5075 support::token(&self.syntax, SyntaxKind::AMP)
5076 }
5077 #[inline]
5078 pub fn star_token(&self) -> Option<SyntaxToken> {
5079 support::token(&self.syntax, SyntaxKind::STAR)
5080 }
5081 #[inline]
5082 pub fn plus_token(&self) -> Option<SyntaxToken> {
5083 support::token(&self.syntax, SyntaxKind::PLUS)
5084 }
5085 #[inline]
5086 pub fn minus_token(&self) -> Option<SyntaxToken> {
5087 support::token(&self.syntax, SyntaxKind::MINUS)
5088 }
5089 #[inline]
5090 pub fn slash_token(&self) -> Option<SyntaxToken> {
5091 support::token(&self.syntax, SyntaxKind::SLASH)
5092 }
5093 #[inline]
5094 pub fn l_angle_token(&self) -> Option<SyntaxToken> {
5095 support::token(&self.syntax, SyntaxKind::L_ANGLE)
5096 }
5097 #[inline]
5098 pub fn eq_token(&self) -> Option<SyntaxToken> {
5099 support::token(&self.syntax, SyntaxKind::EQ)
5100 }
5101 #[inline]
5102 pub fn r_angle_token(&self) -> Option<SyntaxToken> {
5103 support::token(&self.syntax, SyntaxKind::R_ANGLE)
5104 }
5105 #[inline]
5106 pub fn question_token(&self) -> Option<SyntaxToken> {
5107 support::token(&self.syntax, SyntaxKind::QUESTION)
5108 }
5109 #[inline]
5110 pub fn at_token(&self) -> Option<SyntaxToken> {
5111 support::token(&self.syntax, SyntaxKind::AT)
5112 }
5113 #[inline]
5114 pub fn caret_token(&self) -> Option<SyntaxToken> {
5115 support::token(&self.syntax, SyntaxKind::CARET)
5116 }
5117 #[inline]
5118 pub fn backtick_token(&self) -> Option<SyntaxToken> {
5119 support::token(&self.syntax, SyntaxKind::BACKTICK)
5120 }
5121 #[inline]
5122 pub fn pipe_token(&self) -> Option<SyntaxToken> {
5123 support::token(&self.syntax, SyntaxKind::PIPE)
5124 }
5125 #[inline]
5126 pub fn tilde_token(&self) -> Option<SyntaxToken> {
5127 support::token(&self.syntax, SyntaxKind::TILDE)
5128 }
5129}
5130
5131#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5132pub struct Deallocate {
5133 pub(crate) syntax: SyntaxNode,
5134}
5135impl Deallocate {
5136 #[inline]
5137 pub fn name_ref(&self) -> Option<NameRef> {
5138 support::child(&self.syntax)
5139 }
5140 #[inline]
5141 pub fn all_token(&self) -> Option<SyntaxToken> {
5142 support::token(&self.syntax, SyntaxKind::ALL_KW)
5143 }
5144 #[inline]
5145 pub fn deallocate_token(&self) -> Option<SyntaxToken> {
5146 support::token(&self.syntax, SyntaxKind::DEALLOCATE_KW)
5147 }
5148 #[inline]
5149 pub fn prepare_token(&self) -> Option<SyntaxToken> {
5150 support::token(&self.syntax, SyntaxKind::PREPARE_KW)
5151 }
5152}
5153
5154#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5155pub struct Declare {
5156 pub(crate) syntax: SyntaxNode,
5157}
5158impl Declare {
5159 #[inline]
5160 pub fn name(&self) -> Option<Name> {
5161 support::child(&self.syntax)
5162 }
5163 #[inline]
5164 pub fn query(&self) -> Option<SelectVariant> {
5165 support::child(&self.syntax)
5166 }
5167 #[inline]
5168 pub fn asensitive_token(&self) -> Option<SyntaxToken> {
5169 support::token(&self.syntax, SyntaxKind::ASENSITIVE_KW)
5170 }
5171 #[inline]
5172 pub fn binary_token(&self) -> Option<SyntaxToken> {
5173 support::token(&self.syntax, SyntaxKind::BINARY_KW)
5174 }
5175 #[inline]
5176 pub fn cursor_token(&self) -> Option<SyntaxToken> {
5177 support::token(&self.syntax, SyntaxKind::CURSOR_KW)
5178 }
5179 #[inline]
5180 pub fn declare_token(&self) -> Option<SyntaxToken> {
5181 support::token(&self.syntax, SyntaxKind::DECLARE_KW)
5182 }
5183 #[inline]
5184 pub fn for_token(&self) -> Option<SyntaxToken> {
5185 support::token(&self.syntax, SyntaxKind::FOR_KW)
5186 }
5187 #[inline]
5188 pub fn hold_token(&self) -> Option<SyntaxToken> {
5189 support::token(&self.syntax, SyntaxKind::HOLD_KW)
5190 }
5191 #[inline]
5192 pub fn insensitive_token(&self) -> Option<SyntaxToken> {
5193 support::token(&self.syntax, SyntaxKind::INSENSITIVE_KW)
5194 }
5195 #[inline]
5196 pub fn no_token(&self) -> Option<SyntaxToken> {
5197 support::token(&self.syntax, SyntaxKind::NO_KW)
5198 }
5199 #[inline]
5200 pub fn scroll_token(&self) -> Option<SyntaxToken> {
5201 support::token(&self.syntax, SyntaxKind::SCROLL_KW)
5202 }
5203 #[inline]
5204 pub fn with_token(&self) -> Option<SyntaxToken> {
5205 support::token(&self.syntax, SyntaxKind::WITH_KW)
5206 }
5207 #[inline]
5208 pub fn without_token(&self) -> Option<SyntaxToken> {
5209 support::token(&self.syntax, SyntaxKind::WITHOUT_KW)
5210 }
5211}
5212
5213#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5214pub struct DefaultConstraint {
5215 pub(crate) syntax: SyntaxNode,
5216}
5217impl DefaultConstraint {
5218 #[inline]
5219 pub fn expr(&self) -> Option<Expr> {
5220 support::child(&self.syntax)
5221 }
5222 #[inline]
5223 pub fn name_ref(&self) -> Option<NameRef> {
5224 support::child(&self.syntax)
5225 }
5226 #[inline]
5227 pub fn constraint_token(&self) -> Option<SyntaxToken> {
5228 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
5229 }
5230 #[inline]
5231 pub fn default_token(&self) -> Option<SyntaxToken> {
5232 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
5233 }
5234}
5235
5236#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5237pub struct Deferrable {
5238 pub(crate) syntax: SyntaxNode,
5239}
5240impl Deferrable {
5241 #[inline]
5242 pub fn deferrable_token(&self) -> Option<SyntaxToken> {
5243 support::token(&self.syntax, SyntaxKind::DEFERRABLE_KW)
5244 }
5245}
5246
5247#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5248pub struct DeferrableConstraintOption {
5249 pub(crate) syntax: SyntaxNode,
5250}
5251impl DeferrableConstraintOption {
5252 #[inline]
5253 pub fn deferrable_token(&self) -> Option<SyntaxToken> {
5254 support::token(&self.syntax, SyntaxKind::DEFERRABLE_KW)
5255 }
5256}
5257
5258#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5259pub struct Delete {
5260 pub(crate) syntax: SyntaxNode,
5261}
5262impl Delete {
5263 #[inline]
5264 pub fn alias(&self) -> Option<Alias> {
5265 support::child(&self.syntax)
5266 }
5267 #[inline]
5268 pub fn relation_name(&self) -> Option<RelationName> {
5269 support::child(&self.syntax)
5270 }
5271 #[inline]
5272 pub fn returning_clause(&self) -> Option<ReturningClause> {
5273 support::child(&self.syntax)
5274 }
5275 #[inline]
5276 pub fn using_clause(&self) -> Option<UsingClause> {
5277 support::child(&self.syntax)
5278 }
5279 #[inline]
5280 pub fn where_clause(&self) -> Option<WhereClause> {
5281 support::child(&self.syntax)
5282 }
5283 #[inline]
5284 pub fn where_current_of(&self) -> Option<WhereCurrentOf> {
5285 support::child(&self.syntax)
5286 }
5287 #[inline]
5288 pub fn with_clause(&self) -> Option<WithClause> {
5289 support::child(&self.syntax)
5290 }
5291 #[inline]
5292 pub fn delete_token(&self) -> Option<SyntaxToken> {
5293 support::token(&self.syntax, SyntaxKind::DELETE_KW)
5294 }
5295 #[inline]
5296 pub fn from_token(&self) -> Option<SyntaxToken> {
5297 support::token(&self.syntax, SyntaxKind::FROM_KW)
5298 }
5299}
5300
5301#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5302pub struct DeleteRows {
5303 pub(crate) syntax: SyntaxNode,
5304}
5305impl DeleteRows {
5306 #[inline]
5307 pub fn delete_token(&self) -> Option<SyntaxToken> {
5308 support::token(&self.syntax, SyntaxKind::DELETE_KW)
5309 }
5310 #[inline]
5311 pub fn rows_token(&self) -> Option<SyntaxToken> {
5312 support::token(&self.syntax, SyntaxKind::ROWS_KW)
5313 }
5314}
5315
5316#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5317pub struct DependsOnExtension {
5318 pub(crate) syntax: SyntaxNode,
5319}
5320impl DependsOnExtension {
5321 #[inline]
5322 pub fn name_ref(&self) -> Option<NameRef> {
5323 support::child(&self.syntax)
5324 }
5325 #[inline]
5326 pub fn depends_token(&self) -> Option<SyntaxToken> {
5327 support::token(&self.syntax, SyntaxKind::DEPENDS_KW)
5328 }
5329 #[inline]
5330 pub fn extension_token(&self) -> Option<SyntaxToken> {
5331 support::token(&self.syntax, SyntaxKind::EXTENSION_KW)
5332 }
5333 #[inline]
5334 pub fn on_token(&self) -> Option<SyntaxToken> {
5335 support::token(&self.syntax, SyntaxKind::ON_KW)
5336 }
5337}
5338
5339#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5340pub struct DetachPartition {
5341 pub(crate) syntax: SyntaxNode,
5342}
5343impl DetachPartition {
5344 #[inline]
5345 pub fn detach_token(&self) -> Option<SyntaxToken> {
5346 support::token(&self.syntax, SyntaxKind::DETACH_KW)
5347 }
5348 #[inline]
5349 pub fn partition_token(&self) -> Option<SyntaxToken> {
5350 support::token(&self.syntax, SyntaxKind::PARTITION_KW)
5351 }
5352}
5353
5354#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5355pub struct DisableRls {
5356 pub(crate) syntax: SyntaxNode,
5357}
5358impl DisableRls {
5359 #[inline]
5360 pub fn disable_token(&self) -> Option<SyntaxToken> {
5361 support::token(&self.syntax, SyntaxKind::DISABLE_KW)
5362 }
5363 #[inline]
5364 pub fn level_token(&self) -> Option<SyntaxToken> {
5365 support::token(&self.syntax, SyntaxKind::LEVEL_KW)
5366 }
5367 #[inline]
5368 pub fn row_token(&self) -> Option<SyntaxToken> {
5369 support::token(&self.syntax, SyntaxKind::ROW_KW)
5370 }
5371 #[inline]
5372 pub fn security_token(&self) -> Option<SyntaxToken> {
5373 support::token(&self.syntax, SyntaxKind::SECURITY_KW)
5374 }
5375}
5376
5377#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5378pub struct DisableRule {
5379 pub(crate) syntax: SyntaxNode,
5380}
5381impl DisableRule {
5382 #[inline]
5383 pub fn disable_token(&self) -> Option<SyntaxToken> {
5384 support::token(&self.syntax, SyntaxKind::DISABLE_KW)
5385 }
5386 #[inline]
5387 pub fn rule_token(&self) -> Option<SyntaxToken> {
5388 support::token(&self.syntax, SyntaxKind::RULE_KW)
5389 }
5390}
5391
5392#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5393pub struct DisableTrigger {
5394 pub(crate) syntax: SyntaxNode,
5395}
5396impl DisableTrigger {
5397 #[inline]
5398 pub fn disable_token(&self) -> Option<SyntaxToken> {
5399 support::token(&self.syntax, SyntaxKind::DISABLE_KW)
5400 }
5401 #[inline]
5402 pub fn trigger_token(&self) -> Option<SyntaxToken> {
5403 support::token(&self.syntax, SyntaxKind::TRIGGER_KW)
5404 }
5405}
5406
5407#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5408pub struct Discard {
5409 pub(crate) syntax: SyntaxNode,
5410}
5411impl Discard {
5412 #[inline]
5413 pub fn all_token(&self) -> Option<SyntaxToken> {
5414 support::token(&self.syntax, SyntaxKind::ALL_KW)
5415 }
5416 #[inline]
5417 pub fn discard_token(&self) -> Option<SyntaxToken> {
5418 support::token(&self.syntax, SyntaxKind::DISCARD_KW)
5419 }
5420 #[inline]
5421 pub fn plans_token(&self) -> Option<SyntaxToken> {
5422 support::token(&self.syntax, SyntaxKind::PLANS_KW)
5423 }
5424 #[inline]
5425 pub fn sequences_token(&self) -> Option<SyntaxToken> {
5426 support::token(&self.syntax, SyntaxKind::SEQUENCES_KW)
5427 }
5428 #[inline]
5429 pub fn temp_token(&self) -> Option<SyntaxToken> {
5430 support::token(&self.syntax, SyntaxKind::TEMP_KW)
5431 }
5432 #[inline]
5433 pub fn temporary_token(&self) -> Option<SyntaxToken> {
5434 support::token(&self.syntax, SyntaxKind::TEMPORARY_KW)
5435 }
5436}
5437
5438#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5439pub struct DistinctClause {
5440 pub(crate) syntax: SyntaxNode,
5441}
5442impl DistinctClause {
5443 #[inline]
5444 pub fn exprs(&self) -> AstChildren<Expr> {
5445 support::children(&self.syntax)
5446 }
5447 #[inline]
5448 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
5449 support::token(&self.syntax, SyntaxKind::L_PAREN)
5450 }
5451 #[inline]
5452 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
5453 support::token(&self.syntax, SyntaxKind::R_PAREN)
5454 }
5455 #[inline]
5456 pub fn distinct_token(&self) -> Option<SyntaxToken> {
5457 support::token(&self.syntax, SyntaxKind::DISTINCT_KW)
5458 }
5459 #[inline]
5460 pub fn on_token(&self) -> Option<SyntaxToken> {
5461 support::token(&self.syntax, SyntaxKind::ON_KW)
5462 }
5463}
5464
5465#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5466pub struct Do {
5467 pub(crate) syntax: SyntaxNode,
5468}
5469impl Do {
5470 #[inline]
5471 pub fn do_token(&self) -> Option<SyntaxToken> {
5472 support::token(&self.syntax, SyntaxKind::DO_KW)
5473 }
5474}
5475
5476#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5477pub struct DoubleType {
5478 pub(crate) syntax: SyntaxNode,
5479}
5480impl DoubleType {
5481 #[inline]
5482 pub fn double_token(&self) -> Option<SyntaxToken> {
5483 support::token(&self.syntax, SyntaxKind::DOUBLE_KW)
5484 }
5485 #[inline]
5486 pub fn precision_token(&self) -> Option<SyntaxToken> {
5487 support::token(&self.syntax, SyntaxKind::PRECISION_KW)
5488 }
5489}
5490
5491#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5492pub struct Drop {
5493 pub(crate) syntax: SyntaxNode,
5494}
5495impl Drop {
5496 #[inline]
5497 pub fn drop_token(&self) -> Option<SyntaxToken> {
5498 support::token(&self.syntax, SyntaxKind::DROP_KW)
5499 }
5500}
5501
5502#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5503pub struct DropAccessMethod {
5504 pub(crate) syntax: SyntaxNode,
5505}
5506impl DropAccessMethod {
5507 #[inline]
5508 pub fn if_exists(&self) -> Option<IfExists> {
5509 support::child(&self.syntax)
5510 }
5511 #[inline]
5512 pub fn name_ref(&self) -> Option<NameRef> {
5513 support::child(&self.syntax)
5514 }
5515 #[inline]
5516 pub fn access_token(&self) -> Option<SyntaxToken> {
5517 support::token(&self.syntax, SyntaxKind::ACCESS_KW)
5518 }
5519 #[inline]
5520 pub fn cascade_token(&self) -> Option<SyntaxToken> {
5521 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
5522 }
5523 #[inline]
5524 pub fn drop_token(&self) -> Option<SyntaxToken> {
5525 support::token(&self.syntax, SyntaxKind::DROP_KW)
5526 }
5527 #[inline]
5528 pub fn method_token(&self) -> Option<SyntaxToken> {
5529 support::token(&self.syntax, SyntaxKind::METHOD_KW)
5530 }
5531 #[inline]
5532 pub fn restrict_token(&self) -> Option<SyntaxToken> {
5533 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
5534 }
5535}
5536
5537#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5538pub struct DropAggregate {
5539 pub(crate) syntax: SyntaxNode,
5540}
5541impl DropAggregate {
5542 #[inline]
5543 pub fn aggregates(&self) -> AstChildren<Aggregate> {
5544 support::children(&self.syntax)
5545 }
5546 #[inline]
5547 pub fn if_exists(&self) -> Option<IfExists> {
5548 support::child(&self.syntax)
5549 }
5550 #[inline]
5551 pub fn aggregate_token(&self) -> Option<SyntaxToken> {
5552 support::token(&self.syntax, SyntaxKind::AGGREGATE_KW)
5553 }
5554 #[inline]
5555 pub fn cascade_token(&self) -> Option<SyntaxToken> {
5556 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
5557 }
5558 #[inline]
5559 pub fn drop_token(&self) -> Option<SyntaxToken> {
5560 support::token(&self.syntax, SyntaxKind::DROP_KW)
5561 }
5562 #[inline]
5563 pub fn restrict_token(&self) -> Option<SyntaxToken> {
5564 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
5565 }
5566}
5567
5568#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5569pub struct DropCast {
5570 pub(crate) syntax: SyntaxNode,
5571}
5572impl DropCast {
5573 #[inline]
5574 pub fn cast_sig(&self) -> Option<CastSig> {
5575 support::child(&self.syntax)
5576 }
5577 #[inline]
5578 pub fn if_exists(&self) -> Option<IfExists> {
5579 support::child(&self.syntax)
5580 }
5581 #[inline]
5582 pub fn cascade_token(&self) -> Option<SyntaxToken> {
5583 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
5584 }
5585 #[inline]
5586 pub fn cast_token(&self) -> Option<SyntaxToken> {
5587 support::token(&self.syntax, SyntaxKind::CAST_KW)
5588 }
5589 #[inline]
5590 pub fn drop_token(&self) -> Option<SyntaxToken> {
5591 support::token(&self.syntax, SyntaxKind::DROP_KW)
5592 }
5593 #[inline]
5594 pub fn restrict_token(&self) -> Option<SyntaxToken> {
5595 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
5596 }
5597}
5598
5599#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5600pub struct DropCollation {
5601 pub(crate) syntax: SyntaxNode,
5602}
5603impl DropCollation {
5604 #[inline]
5605 pub fn if_exists(&self) -> Option<IfExists> {
5606 support::child(&self.syntax)
5607 }
5608 #[inline]
5609 pub fn paths(&self) -> AstChildren<Path> {
5610 support::children(&self.syntax)
5611 }
5612 #[inline]
5613 pub fn cascade_token(&self) -> Option<SyntaxToken> {
5614 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
5615 }
5616 #[inline]
5617 pub fn collation_token(&self) -> Option<SyntaxToken> {
5618 support::token(&self.syntax, SyntaxKind::COLLATION_KW)
5619 }
5620 #[inline]
5621 pub fn drop_token(&self) -> Option<SyntaxToken> {
5622 support::token(&self.syntax, SyntaxKind::DROP_KW)
5623 }
5624 #[inline]
5625 pub fn restrict_token(&self) -> Option<SyntaxToken> {
5626 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
5627 }
5628}
5629
5630#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5631pub struct DropColumn {
5632 pub(crate) syntax: SyntaxNode,
5633}
5634impl DropColumn {
5635 #[inline]
5636 pub fn if_exists(&self) -> Option<IfExists> {
5637 support::child(&self.syntax)
5638 }
5639 #[inline]
5640 pub fn name_ref(&self) -> Option<NameRef> {
5641 support::child(&self.syntax)
5642 }
5643 #[inline]
5644 pub fn cascade_token(&self) -> Option<SyntaxToken> {
5645 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
5646 }
5647 #[inline]
5648 pub fn column_token(&self) -> Option<SyntaxToken> {
5649 support::token(&self.syntax, SyntaxKind::COLUMN_KW)
5650 }
5651 #[inline]
5652 pub fn drop_token(&self) -> Option<SyntaxToken> {
5653 support::token(&self.syntax, SyntaxKind::DROP_KW)
5654 }
5655 #[inline]
5656 pub fn restrict_token(&self) -> Option<SyntaxToken> {
5657 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
5658 }
5659}
5660
5661#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5662pub struct DropConstraint {
5663 pub(crate) syntax: SyntaxNode,
5664}
5665impl DropConstraint {
5666 #[inline]
5667 pub fn if_exists(&self) -> Option<IfExists> {
5668 support::child(&self.syntax)
5669 }
5670 #[inline]
5671 pub fn name_ref(&self) -> Option<NameRef> {
5672 support::child(&self.syntax)
5673 }
5674 #[inline]
5675 pub fn cascade_token(&self) -> Option<SyntaxToken> {
5676 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
5677 }
5678 #[inline]
5679 pub fn constraint_token(&self) -> Option<SyntaxToken> {
5680 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
5681 }
5682 #[inline]
5683 pub fn drop_token(&self) -> Option<SyntaxToken> {
5684 support::token(&self.syntax, SyntaxKind::DROP_KW)
5685 }
5686 #[inline]
5687 pub fn restrict_token(&self) -> Option<SyntaxToken> {
5688 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
5689 }
5690}
5691
5692#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5693pub struct DropConversion {
5694 pub(crate) syntax: SyntaxNode,
5695}
5696impl DropConversion {
5697 #[inline]
5698 pub fn if_exists(&self) -> Option<IfExists> {
5699 support::child(&self.syntax)
5700 }
5701 #[inline]
5702 pub fn path(&self) -> Option<Path> {
5703 support::child(&self.syntax)
5704 }
5705 #[inline]
5706 pub fn cascade_token(&self) -> Option<SyntaxToken> {
5707 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
5708 }
5709 #[inline]
5710 pub fn conversion_token(&self) -> Option<SyntaxToken> {
5711 support::token(&self.syntax, SyntaxKind::CONVERSION_KW)
5712 }
5713 #[inline]
5714 pub fn drop_token(&self) -> Option<SyntaxToken> {
5715 support::token(&self.syntax, SyntaxKind::DROP_KW)
5716 }
5717 #[inline]
5718 pub fn restrict_token(&self) -> Option<SyntaxToken> {
5719 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
5720 }
5721}
5722
5723#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5724pub struct DropDatabase {
5725 pub(crate) syntax: SyntaxNode,
5726}
5727impl DropDatabase {
5728 #[inline]
5729 pub fn if_exists(&self) -> Option<IfExists> {
5730 support::child(&self.syntax)
5731 }
5732 #[inline]
5733 pub fn name_ref(&self) -> Option<NameRef> {
5734 support::child(&self.syntax)
5735 }
5736 #[inline]
5737 pub fn database_token(&self) -> Option<SyntaxToken> {
5738 support::token(&self.syntax, SyntaxKind::DATABASE_KW)
5739 }
5740 #[inline]
5741 pub fn drop_token(&self) -> Option<SyntaxToken> {
5742 support::token(&self.syntax, SyntaxKind::DROP_KW)
5743 }
5744}
5745
5746#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5747pub struct DropDefault {
5748 pub(crate) syntax: SyntaxNode,
5749}
5750impl DropDefault {
5751 #[inline]
5752 pub fn default_token(&self) -> Option<SyntaxToken> {
5753 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
5754 }
5755 #[inline]
5756 pub fn drop_token(&self) -> Option<SyntaxToken> {
5757 support::token(&self.syntax, SyntaxKind::DROP_KW)
5758 }
5759}
5760
5761#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5762pub struct DropDomain {
5763 pub(crate) syntax: SyntaxNode,
5764}
5765impl DropDomain {
5766 #[inline]
5767 pub fn if_exists(&self) -> Option<IfExists> {
5768 support::child(&self.syntax)
5769 }
5770 #[inline]
5771 pub fn paths(&self) -> AstChildren<Path> {
5772 support::children(&self.syntax)
5773 }
5774 #[inline]
5775 pub fn cascade_token(&self) -> Option<SyntaxToken> {
5776 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
5777 }
5778 #[inline]
5779 pub fn domain_token(&self) -> Option<SyntaxToken> {
5780 support::token(&self.syntax, SyntaxKind::DOMAIN_KW)
5781 }
5782 #[inline]
5783 pub fn drop_token(&self) -> Option<SyntaxToken> {
5784 support::token(&self.syntax, SyntaxKind::DROP_KW)
5785 }
5786 #[inline]
5787 pub fn restrict_token(&self) -> Option<SyntaxToken> {
5788 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
5789 }
5790}
5791
5792#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5793pub struct DropEventTrigger {
5794 pub(crate) syntax: SyntaxNode,
5795}
5796impl DropEventTrigger {
5797 #[inline]
5798 pub fn if_exists(&self) -> Option<IfExists> {
5799 support::child(&self.syntax)
5800 }
5801 #[inline]
5802 pub fn name_ref(&self) -> Option<NameRef> {
5803 support::child(&self.syntax)
5804 }
5805 #[inline]
5806 pub fn cascade_token(&self) -> Option<SyntaxToken> {
5807 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
5808 }
5809 #[inline]
5810 pub fn drop_token(&self) -> Option<SyntaxToken> {
5811 support::token(&self.syntax, SyntaxKind::DROP_KW)
5812 }
5813 #[inline]
5814 pub fn event_token(&self) -> Option<SyntaxToken> {
5815 support::token(&self.syntax, SyntaxKind::EVENT_KW)
5816 }
5817 #[inline]
5818 pub fn restrict_token(&self) -> Option<SyntaxToken> {
5819 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
5820 }
5821 #[inline]
5822 pub fn trigger_token(&self) -> Option<SyntaxToken> {
5823 support::token(&self.syntax, SyntaxKind::TRIGGER_KW)
5824 }
5825}
5826
5827#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5828pub struct DropExpression {
5829 pub(crate) syntax: SyntaxNode,
5830}
5831impl DropExpression {
5832 #[inline]
5833 pub fn if_exists(&self) -> Option<IfExists> {
5834 support::child(&self.syntax)
5835 }
5836 #[inline]
5837 pub fn drop_token(&self) -> Option<SyntaxToken> {
5838 support::token(&self.syntax, SyntaxKind::DROP_KW)
5839 }
5840 #[inline]
5841 pub fn expression_token(&self) -> Option<SyntaxToken> {
5842 support::token(&self.syntax, SyntaxKind::EXPRESSION_KW)
5843 }
5844}
5845
5846#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5847pub struct DropExtension {
5848 pub(crate) syntax: SyntaxNode,
5849}
5850impl DropExtension {
5851 #[inline]
5852 pub fn if_exists(&self) -> Option<IfExists> {
5853 support::child(&self.syntax)
5854 }
5855 #[inline]
5856 pub fn name_refs(&self) -> AstChildren<NameRef> {
5857 support::children(&self.syntax)
5858 }
5859 #[inline]
5860 pub fn cascade_token(&self) -> Option<SyntaxToken> {
5861 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
5862 }
5863 #[inline]
5864 pub fn drop_token(&self) -> Option<SyntaxToken> {
5865 support::token(&self.syntax, SyntaxKind::DROP_KW)
5866 }
5867 #[inline]
5868 pub fn extension_token(&self) -> Option<SyntaxToken> {
5869 support::token(&self.syntax, SyntaxKind::EXTENSION_KW)
5870 }
5871 #[inline]
5872 pub fn restrict_token(&self) -> Option<SyntaxToken> {
5873 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
5874 }
5875}
5876
5877#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5878pub struct DropForeignDataWrapper {
5879 pub(crate) syntax: SyntaxNode,
5880}
5881impl DropForeignDataWrapper {
5882 #[inline]
5883 pub fn if_exists(&self) -> Option<IfExists> {
5884 support::child(&self.syntax)
5885 }
5886 #[inline]
5887 pub fn name_refs(&self) -> AstChildren<NameRef> {
5888 support::children(&self.syntax)
5889 }
5890 #[inline]
5891 pub fn cascade_token(&self) -> Option<SyntaxToken> {
5892 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
5893 }
5894 #[inline]
5895 pub fn data_token(&self) -> Option<SyntaxToken> {
5896 support::token(&self.syntax, SyntaxKind::DATA_KW)
5897 }
5898 #[inline]
5899 pub fn drop_token(&self) -> Option<SyntaxToken> {
5900 support::token(&self.syntax, SyntaxKind::DROP_KW)
5901 }
5902 #[inline]
5903 pub fn foreign_token(&self) -> Option<SyntaxToken> {
5904 support::token(&self.syntax, SyntaxKind::FOREIGN_KW)
5905 }
5906 #[inline]
5907 pub fn restrict_token(&self) -> Option<SyntaxToken> {
5908 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
5909 }
5910 #[inline]
5911 pub fn wrapper_token(&self) -> Option<SyntaxToken> {
5912 support::token(&self.syntax, SyntaxKind::WRAPPER_KW)
5913 }
5914}
5915
5916#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5917pub struct DropForeignTable {
5918 pub(crate) syntax: SyntaxNode,
5919}
5920impl DropForeignTable {
5921 #[inline]
5922 pub fn if_exists(&self) -> Option<IfExists> {
5923 support::child(&self.syntax)
5924 }
5925 #[inline]
5926 pub fn path(&self) -> Option<Path> {
5927 support::child(&self.syntax)
5928 }
5929 #[inline]
5930 pub fn cascade_token(&self) -> Option<SyntaxToken> {
5931 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
5932 }
5933 #[inline]
5934 pub fn drop_token(&self) -> Option<SyntaxToken> {
5935 support::token(&self.syntax, SyntaxKind::DROP_KW)
5936 }
5937 #[inline]
5938 pub fn foreign_token(&self) -> Option<SyntaxToken> {
5939 support::token(&self.syntax, SyntaxKind::FOREIGN_KW)
5940 }
5941 #[inline]
5942 pub fn restrict_token(&self) -> Option<SyntaxToken> {
5943 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
5944 }
5945 #[inline]
5946 pub fn table_token(&self) -> Option<SyntaxToken> {
5947 support::token(&self.syntax, SyntaxKind::TABLE_KW)
5948 }
5949}
5950
5951#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5952pub struct DropFunction {
5953 pub(crate) syntax: SyntaxNode,
5954}
5955impl DropFunction {
5956 #[inline]
5957 pub fn function_sig_list(&self) -> Option<FunctionSigList> {
5958 support::child(&self.syntax)
5959 }
5960 #[inline]
5961 pub fn if_exists(&self) -> Option<IfExists> {
5962 support::child(&self.syntax)
5963 }
5964 #[inline]
5965 pub fn cascade_token(&self) -> Option<SyntaxToken> {
5966 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
5967 }
5968 #[inline]
5969 pub fn drop_token(&self) -> Option<SyntaxToken> {
5970 support::token(&self.syntax, SyntaxKind::DROP_KW)
5971 }
5972 #[inline]
5973 pub fn function_token(&self) -> Option<SyntaxToken> {
5974 support::token(&self.syntax, SyntaxKind::FUNCTION_KW)
5975 }
5976 #[inline]
5977 pub fn restrict_token(&self) -> Option<SyntaxToken> {
5978 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
5979 }
5980}
5981
5982#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5983pub struct DropGroup {
5984 pub(crate) syntax: SyntaxNode,
5985}
5986impl DropGroup {
5987 #[inline]
5988 pub fn if_exists(&self) -> Option<IfExists> {
5989 support::child(&self.syntax)
5990 }
5991 #[inline]
5992 pub fn name_refs(&self) -> AstChildren<NameRef> {
5993 support::children(&self.syntax)
5994 }
5995 #[inline]
5996 pub fn drop_token(&self) -> Option<SyntaxToken> {
5997 support::token(&self.syntax, SyntaxKind::DROP_KW)
5998 }
5999 #[inline]
6000 pub fn group_token(&self) -> Option<SyntaxToken> {
6001 support::token(&self.syntax, SyntaxKind::GROUP_KW)
6002 }
6003}
6004
6005#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6006pub struct DropIdentity {
6007 pub(crate) syntax: SyntaxNode,
6008}
6009impl DropIdentity {
6010 #[inline]
6011 pub fn if_exists(&self) -> Option<IfExists> {
6012 support::child(&self.syntax)
6013 }
6014 #[inline]
6015 pub fn drop_token(&self) -> Option<SyntaxToken> {
6016 support::token(&self.syntax, SyntaxKind::DROP_KW)
6017 }
6018 #[inline]
6019 pub fn identity_token(&self) -> Option<SyntaxToken> {
6020 support::token(&self.syntax, SyntaxKind::IDENTITY_KW)
6021 }
6022}
6023
6024#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6025pub struct DropIndex {
6026 pub(crate) syntax: SyntaxNode,
6027}
6028impl DropIndex {
6029 #[inline]
6030 pub fn if_exists(&self) -> Option<IfExists> {
6031 support::child(&self.syntax)
6032 }
6033 #[inline]
6034 pub fn paths(&self) -> AstChildren<Path> {
6035 support::children(&self.syntax)
6036 }
6037 #[inline]
6038 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6039 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6040 }
6041 #[inline]
6042 pub fn concurrently_token(&self) -> Option<SyntaxToken> {
6043 support::token(&self.syntax, SyntaxKind::CONCURRENTLY_KW)
6044 }
6045 #[inline]
6046 pub fn drop_token(&self) -> Option<SyntaxToken> {
6047 support::token(&self.syntax, SyntaxKind::DROP_KW)
6048 }
6049 #[inline]
6050 pub fn index_token(&self) -> Option<SyntaxToken> {
6051 support::token(&self.syntax, SyntaxKind::INDEX_KW)
6052 }
6053 #[inline]
6054 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6055 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6056 }
6057}
6058
6059#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6060pub struct DropLanguage {
6061 pub(crate) syntax: SyntaxNode,
6062}
6063impl DropLanguage {
6064 #[inline]
6065 pub fn if_exists(&self) -> Option<IfExists> {
6066 support::child(&self.syntax)
6067 }
6068 #[inline]
6069 pub fn name_ref(&self) -> Option<NameRef> {
6070 support::child(&self.syntax)
6071 }
6072 #[inline]
6073 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6074 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6075 }
6076 #[inline]
6077 pub fn drop_token(&self) -> Option<SyntaxToken> {
6078 support::token(&self.syntax, SyntaxKind::DROP_KW)
6079 }
6080 #[inline]
6081 pub fn language_token(&self) -> Option<SyntaxToken> {
6082 support::token(&self.syntax, SyntaxKind::LANGUAGE_KW)
6083 }
6084 #[inline]
6085 pub fn procedural_token(&self) -> Option<SyntaxToken> {
6086 support::token(&self.syntax, SyntaxKind::PROCEDURAL_KW)
6087 }
6088 #[inline]
6089 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6090 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6091 }
6092}
6093
6094#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6095pub struct DropMaterializedView {
6096 pub(crate) syntax: SyntaxNode,
6097}
6098impl DropMaterializedView {
6099 #[inline]
6100 pub fn if_exists(&self) -> Option<IfExists> {
6101 support::child(&self.syntax)
6102 }
6103 #[inline]
6104 pub fn paths(&self) -> AstChildren<Path> {
6105 support::children(&self.syntax)
6106 }
6107 #[inline]
6108 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6109 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6110 }
6111 #[inline]
6112 pub fn drop_token(&self) -> Option<SyntaxToken> {
6113 support::token(&self.syntax, SyntaxKind::DROP_KW)
6114 }
6115 #[inline]
6116 pub fn materialized_token(&self) -> Option<SyntaxToken> {
6117 support::token(&self.syntax, SyntaxKind::MATERIALIZED_KW)
6118 }
6119 #[inline]
6120 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6121 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6122 }
6123 #[inline]
6124 pub fn view_token(&self) -> Option<SyntaxToken> {
6125 support::token(&self.syntax, SyntaxKind::VIEW_KW)
6126 }
6127}
6128
6129#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6130pub struct DropNotNull {
6131 pub(crate) syntax: SyntaxNode,
6132}
6133impl DropNotNull {
6134 #[inline]
6135 pub fn drop_token(&self) -> Option<SyntaxToken> {
6136 support::token(&self.syntax, SyntaxKind::DROP_KW)
6137 }
6138 #[inline]
6139 pub fn not_token(&self) -> Option<SyntaxToken> {
6140 support::token(&self.syntax, SyntaxKind::NOT_KW)
6141 }
6142 #[inline]
6143 pub fn null_token(&self) -> Option<SyntaxToken> {
6144 support::token(&self.syntax, SyntaxKind::NULL_KW)
6145 }
6146}
6147
6148#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6149pub struct DropOpClassOption {
6150 pub(crate) syntax: SyntaxNode,
6151}
6152impl DropOpClassOption {
6153 #[inline]
6154 pub fn literal(&self) -> Option<Literal> {
6155 support::child(&self.syntax)
6156 }
6157 #[inline]
6158 pub fn param_list(&self) -> Option<ParamList> {
6159 support::child(&self.syntax)
6160 }
6161 #[inline]
6162 pub fn function_token(&self) -> Option<SyntaxToken> {
6163 support::token(&self.syntax, SyntaxKind::FUNCTION_KW)
6164 }
6165 #[inline]
6166 pub fn operator_token(&self) -> Option<SyntaxToken> {
6167 support::token(&self.syntax, SyntaxKind::OPERATOR_KW)
6168 }
6169}
6170
6171#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6172pub struct DropOpClassOptionList {
6173 pub(crate) syntax: SyntaxNode,
6174}
6175impl DropOpClassOptionList {
6176 #[inline]
6177 pub fn drop_op_class_options(&self) -> AstChildren<DropOpClassOption> {
6178 support::children(&self.syntax)
6179 }
6180}
6181
6182#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6183pub struct DropOpClassOptions {
6184 pub(crate) syntax: SyntaxNode,
6185}
6186impl DropOpClassOptions {
6187 #[inline]
6188 pub fn drop_op_class_option_list(&self) -> Option<DropOpClassOptionList> {
6189 support::child(&self.syntax)
6190 }
6191 #[inline]
6192 pub fn drop_token(&self) -> Option<SyntaxToken> {
6193 support::token(&self.syntax, SyntaxKind::DROP_KW)
6194 }
6195}
6196
6197#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6198pub struct DropOperator {
6199 pub(crate) syntax: SyntaxNode,
6200}
6201impl DropOperator {
6202 #[inline]
6203 pub fn if_exists(&self) -> Option<IfExists> {
6204 support::child(&self.syntax)
6205 }
6206 #[inline]
6207 pub fn op_sig_list(&self) -> Option<OpSigList> {
6208 support::child(&self.syntax)
6209 }
6210 #[inline]
6211 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6212 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6213 }
6214 #[inline]
6215 pub fn drop_token(&self) -> Option<SyntaxToken> {
6216 support::token(&self.syntax, SyntaxKind::DROP_KW)
6217 }
6218 #[inline]
6219 pub fn operator_token(&self) -> Option<SyntaxToken> {
6220 support::token(&self.syntax, SyntaxKind::OPERATOR_KW)
6221 }
6222 #[inline]
6223 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6224 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6225 }
6226}
6227
6228#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6229pub struct DropOperatorClass {
6230 pub(crate) syntax: SyntaxNode,
6231}
6232impl DropOperatorClass {
6233 #[inline]
6234 pub fn if_exists(&self) -> Option<IfExists> {
6235 support::child(&self.syntax)
6236 }
6237 #[inline]
6238 pub fn name_ref(&self) -> Option<NameRef> {
6239 support::child(&self.syntax)
6240 }
6241 #[inline]
6242 pub fn path(&self) -> Option<Path> {
6243 support::child(&self.syntax)
6244 }
6245 #[inline]
6246 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6247 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6248 }
6249 #[inline]
6250 pub fn class_token(&self) -> Option<SyntaxToken> {
6251 support::token(&self.syntax, SyntaxKind::CLASS_KW)
6252 }
6253 #[inline]
6254 pub fn drop_token(&self) -> Option<SyntaxToken> {
6255 support::token(&self.syntax, SyntaxKind::DROP_KW)
6256 }
6257 #[inline]
6258 pub fn operator_token(&self) -> Option<SyntaxToken> {
6259 support::token(&self.syntax, SyntaxKind::OPERATOR_KW)
6260 }
6261 #[inline]
6262 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6263 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6264 }
6265 #[inline]
6266 pub fn using_token(&self) -> Option<SyntaxToken> {
6267 support::token(&self.syntax, SyntaxKind::USING_KW)
6268 }
6269}
6270
6271#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6272pub struct DropOperatorFamily {
6273 pub(crate) syntax: SyntaxNode,
6274}
6275impl DropOperatorFamily {
6276 #[inline]
6277 pub fn if_exists(&self) -> Option<IfExists> {
6278 support::child(&self.syntax)
6279 }
6280 #[inline]
6281 pub fn name_ref(&self) -> Option<NameRef> {
6282 support::child(&self.syntax)
6283 }
6284 #[inline]
6285 pub fn path(&self) -> Option<Path> {
6286 support::child(&self.syntax)
6287 }
6288 #[inline]
6289 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6290 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6291 }
6292 #[inline]
6293 pub fn drop_token(&self) -> Option<SyntaxToken> {
6294 support::token(&self.syntax, SyntaxKind::DROP_KW)
6295 }
6296 #[inline]
6297 pub fn family_token(&self) -> Option<SyntaxToken> {
6298 support::token(&self.syntax, SyntaxKind::FAMILY_KW)
6299 }
6300 #[inline]
6301 pub fn operator_token(&self) -> Option<SyntaxToken> {
6302 support::token(&self.syntax, SyntaxKind::OPERATOR_KW)
6303 }
6304 #[inline]
6305 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6306 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6307 }
6308 #[inline]
6309 pub fn using_token(&self) -> Option<SyntaxToken> {
6310 support::token(&self.syntax, SyntaxKind::USING_KW)
6311 }
6312}
6313
6314#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6315pub struct DropOwned {
6316 pub(crate) syntax: SyntaxNode,
6317}
6318impl DropOwned {
6319 #[inline]
6320 pub fn role_ref_list(&self) -> Option<RoleRefList> {
6321 support::child(&self.syntax)
6322 }
6323 #[inline]
6324 pub fn by_token(&self) -> Option<SyntaxToken> {
6325 support::token(&self.syntax, SyntaxKind::BY_KW)
6326 }
6327 #[inline]
6328 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6329 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6330 }
6331 #[inline]
6332 pub fn drop_token(&self) -> Option<SyntaxToken> {
6333 support::token(&self.syntax, SyntaxKind::DROP_KW)
6334 }
6335 #[inline]
6336 pub fn owned_token(&self) -> Option<SyntaxToken> {
6337 support::token(&self.syntax, SyntaxKind::OWNED_KW)
6338 }
6339 #[inline]
6340 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6341 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6342 }
6343}
6344
6345#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6346pub struct DropPolicy {
6347 pub(crate) syntax: SyntaxNode,
6348}
6349impl DropPolicy {
6350 #[inline]
6351 pub fn if_exists(&self) -> Option<IfExists> {
6352 support::child(&self.syntax)
6353 }
6354 #[inline]
6355 pub fn name_ref(&self) -> Option<NameRef> {
6356 support::child(&self.syntax)
6357 }
6358 #[inline]
6359 pub fn on_table(&self) -> Option<OnTable> {
6360 support::child(&self.syntax)
6361 }
6362 #[inline]
6363 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6364 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6365 }
6366 #[inline]
6367 pub fn drop_token(&self) -> Option<SyntaxToken> {
6368 support::token(&self.syntax, SyntaxKind::DROP_KW)
6369 }
6370 #[inline]
6371 pub fn policy_token(&self) -> Option<SyntaxToken> {
6372 support::token(&self.syntax, SyntaxKind::POLICY_KW)
6373 }
6374 #[inline]
6375 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6376 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6377 }
6378}
6379
6380#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6381pub struct DropProcedure {
6382 pub(crate) syntax: SyntaxNode,
6383}
6384impl DropProcedure {
6385 #[inline]
6386 pub fn function_sig_list(&self) -> Option<FunctionSigList> {
6387 support::child(&self.syntax)
6388 }
6389 #[inline]
6390 pub fn if_exists(&self) -> Option<IfExists> {
6391 support::child(&self.syntax)
6392 }
6393 #[inline]
6394 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6395 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6396 }
6397 #[inline]
6398 pub fn drop_token(&self) -> Option<SyntaxToken> {
6399 support::token(&self.syntax, SyntaxKind::DROP_KW)
6400 }
6401 #[inline]
6402 pub fn procedure_token(&self) -> Option<SyntaxToken> {
6403 support::token(&self.syntax, SyntaxKind::PROCEDURE_KW)
6404 }
6405 #[inline]
6406 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6407 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6408 }
6409}
6410
6411#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6412pub struct DropPublication {
6413 pub(crate) syntax: SyntaxNode,
6414}
6415impl DropPublication {
6416 #[inline]
6417 pub fn if_exists(&self) -> Option<IfExists> {
6418 support::child(&self.syntax)
6419 }
6420 #[inline]
6421 pub fn name_refs(&self) -> AstChildren<NameRef> {
6422 support::children(&self.syntax)
6423 }
6424 #[inline]
6425 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6426 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6427 }
6428 #[inline]
6429 pub fn drop_token(&self) -> Option<SyntaxToken> {
6430 support::token(&self.syntax, SyntaxKind::DROP_KW)
6431 }
6432 #[inline]
6433 pub fn publication_token(&self) -> Option<SyntaxToken> {
6434 support::token(&self.syntax, SyntaxKind::PUBLICATION_KW)
6435 }
6436 #[inline]
6437 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6438 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6439 }
6440}
6441
6442#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6443pub struct DropRole {
6444 pub(crate) syntax: SyntaxNode,
6445}
6446impl DropRole {
6447 #[inline]
6448 pub fn if_exists(&self) -> Option<IfExists> {
6449 support::child(&self.syntax)
6450 }
6451 #[inline]
6452 pub fn name_refs(&self) -> AstChildren<NameRef> {
6453 support::children(&self.syntax)
6454 }
6455 #[inline]
6456 pub fn drop_token(&self) -> Option<SyntaxToken> {
6457 support::token(&self.syntax, SyntaxKind::DROP_KW)
6458 }
6459 #[inline]
6460 pub fn role_token(&self) -> Option<SyntaxToken> {
6461 support::token(&self.syntax, SyntaxKind::ROLE_KW)
6462 }
6463}
6464
6465#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6466pub struct DropRoutine {
6467 pub(crate) syntax: SyntaxNode,
6468}
6469impl DropRoutine {
6470 #[inline]
6471 pub fn function_sig_list(&self) -> Option<FunctionSigList> {
6472 support::child(&self.syntax)
6473 }
6474 #[inline]
6475 pub fn if_exists(&self) -> Option<IfExists> {
6476 support::child(&self.syntax)
6477 }
6478 #[inline]
6479 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6480 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6481 }
6482 #[inline]
6483 pub fn drop_token(&self) -> Option<SyntaxToken> {
6484 support::token(&self.syntax, SyntaxKind::DROP_KW)
6485 }
6486 #[inline]
6487 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6488 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6489 }
6490 #[inline]
6491 pub fn routine_token(&self) -> Option<SyntaxToken> {
6492 support::token(&self.syntax, SyntaxKind::ROUTINE_KW)
6493 }
6494}
6495
6496#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6497pub struct DropRule {
6498 pub(crate) syntax: SyntaxNode,
6499}
6500impl DropRule {
6501 #[inline]
6502 pub fn if_exists(&self) -> Option<IfExists> {
6503 support::child(&self.syntax)
6504 }
6505 #[inline]
6506 pub fn name_ref(&self) -> Option<NameRef> {
6507 support::child(&self.syntax)
6508 }
6509 #[inline]
6510 pub fn on_table(&self) -> Option<OnTable> {
6511 support::child(&self.syntax)
6512 }
6513 #[inline]
6514 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6515 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6516 }
6517 #[inline]
6518 pub fn drop_token(&self) -> Option<SyntaxToken> {
6519 support::token(&self.syntax, SyntaxKind::DROP_KW)
6520 }
6521 #[inline]
6522 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6523 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6524 }
6525 #[inline]
6526 pub fn rule_token(&self) -> Option<SyntaxToken> {
6527 support::token(&self.syntax, SyntaxKind::RULE_KW)
6528 }
6529}
6530
6531#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6532pub struct DropSchema {
6533 pub(crate) syntax: SyntaxNode,
6534}
6535impl DropSchema {
6536 #[inline]
6537 pub fn if_exists(&self) -> Option<IfExists> {
6538 support::child(&self.syntax)
6539 }
6540 #[inline]
6541 pub fn name_refs(&self) -> AstChildren<NameRef> {
6542 support::children(&self.syntax)
6543 }
6544 #[inline]
6545 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6546 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6547 }
6548 #[inline]
6549 pub fn drop_token(&self) -> Option<SyntaxToken> {
6550 support::token(&self.syntax, SyntaxKind::DROP_KW)
6551 }
6552 #[inline]
6553 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6554 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6555 }
6556 #[inline]
6557 pub fn schema_token(&self) -> Option<SyntaxToken> {
6558 support::token(&self.syntax, SyntaxKind::SCHEMA_KW)
6559 }
6560}
6561
6562#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6563pub struct DropSequence {
6564 pub(crate) syntax: SyntaxNode,
6565}
6566impl DropSequence {
6567 #[inline]
6568 pub fn if_exists(&self) -> Option<IfExists> {
6569 support::child(&self.syntax)
6570 }
6571 #[inline]
6572 pub fn paths(&self) -> AstChildren<Path> {
6573 support::children(&self.syntax)
6574 }
6575 #[inline]
6576 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6577 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6578 }
6579 #[inline]
6580 pub fn drop_token(&self) -> Option<SyntaxToken> {
6581 support::token(&self.syntax, SyntaxKind::DROP_KW)
6582 }
6583 #[inline]
6584 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6585 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6586 }
6587 #[inline]
6588 pub fn sequence_token(&self) -> Option<SyntaxToken> {
6589 support::token(&self.syntax, SyntaxKind::SEQUENCE_KW)
6590 }
6591}
6592
6593#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6594pub struct DropServer {
6595 pub(crate) syntax: SyntaxNode,
6596}
6597impl DropServer {
6598 #[inline]
6599 pub fn if_exists(&self) -> Option<IfExists> {
6600 support::child(&self.syntax)
6601 }
6602 #[inline]
6603 pub fn name_ref(&self) -> Option<NameRef> {
6604 support::child(&self.syntax)
6605 }
6606 #[inline]
6607 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6608 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6609 }
6610 #[inline]
6611 pub fn drop_token(&self) -> Option<SyntaxToken> {
6612 support::token(&self.syntax, SyntaxKind::DROP_KW)
6613 }
6614 #[inline]
6615 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6616 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6617 }
6618 #[inline]
6619 pub fn server_token(&self) -> Option<SyntaxToken> {
6620 support::token(&self.syntax, SyntaxKind::SERVER_KW)
6621 }
6622}
6623
6624#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6625pub struct DropStatistics {
6626 pub(crate) syntax: SyntaxNode,
6627}
6628impl DropStatistics {
6629 #[inline]
6630 pub fn if_exists(&self) -> Option<IfExists> {
6631 support::child(&self.syntax)
6632 }
6633 #[inline]
6634 pub fn paths(&self) -> AstChildren<Path> {
6635 support::children(&self.syntax)
6636 }
6637 #[inline]
6638 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6639 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6640 }
6641 #[inline]
6642 pub fn drop_token(&self) -> Option<SyntaxToken> {
6643 support::token(&self.syntax, SyntaxKind::DROP_KW)
6644 }
6645 #[inline]
6646 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6647 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6648 }
6649 #[inline]
6650 pub fn statistics_token(&self) -> Option<SyntaxToken> {
6651 support::token(&self.syntax, SyntaxKind::STATISTICS_KW)
6652 }
6653}
6654
6655#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6656pub struct DropSubscription {
6657 pub(crate) syntax: SyntaxNode,
6658}
6659impl DropSubscription {
6660 #[inline]
6661 pub fn if_exists(&self) -> Option<IfExists> {
6662 support::child(&self.syntax)
6663 }
6664 #[inline]
6665 pub fn name_ref(&self) -> Option<NameRef> {
6666 support::child(&self.syntax)
6667 }
6668 #[inline]
6669 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6670 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6671 }
6672 #[inline]
6673 pub fn drop_token(&self) -> Option<SyntaxToken> {
6674 support::token(&self.syntax, SyntaxKind::DROP_KW)
6675 }
6676 #[inline]
6677 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6678 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6679 }
6680 #[inline]
6681 pub fn subscription_token(&self) -> Option<SyntaxToken> {
6682 support::token(&self.syntax, SyntaxKind::SUBSCRIPTION_KW)
6683 }
6684}
6685
6686#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6687pub struct DropTable {
6688 pub(crate) syntax: SyntaxNode,
6689}
6690impl DropTable {
6691 #[inline]
6692 pub fn if_exists(&self) -> Option<IfExists> {
6693 support::child(&self.syntax)
6694 }
6695 #[inline]
6696 pub fn path(&self) -> Option<Path> {
6697 support::child(&self.syntax)
6698 }
6699 #[inline]
6700 pub fn comma_token(&self) -> Option<SyntaxToken> {
6701 support::token(&self.syntax, SyntaxKind::COMMA)
6702 }
6703 #[inline]
6704 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6705 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6706 }
6707 #[inline]
6708 pub fn drop_token(&self) -> Option<SyntaxToken> {
6709 support::token(&self.syntax, SyntaxKind::DROP_KW)
6710 }
6711 #[inline]
6712 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6713 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6714 }
6715 #[inline]
6716 pub fn table_token(&self) -> Option<SyntaxToken> {
6717 support::token(&self.syntax, SyntaxKind::TABLE_KW)
6718 }
6719}
6720
6721#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6722pub struct DropTablespace {
6723 pub(crate) syntax: SyntaxNode,
6724}
6725impl DropTablespace {
6726 #[inline]
6727 pub fn if_exists(&self) -> Option<IfExists> {
6728 support::child(&self.syntax)
6729 }
6730 #[inline]
6731 pub fn name_ref(&self) -> Option<NameRef> {
6732 support::child(&self.syntax)
6733 }
6734 #[inline]
6735 pub fn drop_token(&self) -> Option<SyntaxToken> {
6736 support::token(&self.syntax, SyntaxKind::DROP_KW)
6737 }
6738 #[inline]
6739 pub fn tablespace_token(&self) -> Option<SyntaxToken> {
6740 support::token(&self.syntax, SyntaxKind::TABLESPACE_KW)
6741 }
6742}
6743
6744#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6745pub struct DropTextSearchConfig {
6746 pub(crate) syntax: SyntaxNode,
6747}
6748impl DropTextSearchConfig {
6749 #[inline]
6750 pub fn if_exists(&self) -> Option<IfExists> {
6751 support::child(&self.syntax)
6752 }
6753 #[inline]
6754 pub fn path(&self) -> Option<Path> {
6755 support::child(&self.syntax)
6756 }
6757 #[inline]
6758 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6759 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6760 }
6761 #[inline]
6762 pub fn configuration_token(&self) -> Option<SyntaxToken> {
6763 support::token(&self.syntax, SyntaxKind::CONFIGURATION_KW)
6764 }
6765 #[inline]
6766 pub fn drop_token(&self) -> Option<SyntaxToken> {
6767 support::token(&self.syntax, SyntaxKind::DROP_KW)
6768 }
6769 #[inline]
6770 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6771 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6772 }
6773 #[inline]
6774 pub fn search_token(&self) -> Option<SyntaxToken> {
6775 support::token(&self.syntax, SyntaxKind::SEARCH_KW)
6776 }
6777 #[inline]
6778 pub fn text_token(&self) -> Option<SyntaxToken> {
6779 support::token(&self.syntax, SyntaxKind::TEXT_KW)
6780 }
6781}
6782
6783#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6784pub struct DropTextSearchDict {
6785 pub(crate) syntax: SyntaxNode,
6786}
6787impl DropTextSearchDict {
6788 #[inline]
6789 pub fn if_exists(&self) -> Option<IfExists> {
6790 support::child(&self.syntax)
6791 }
6792 #[inline]
6793 pub fn path(&self) -> Option<Path> {
6794 support::child(&self.syntax)
6795 }
6796 #[inline]
6797 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6798 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6799 }
6800 #[inline]
6801 pub fn dictionary_token(&self) -> Option<SyntaxToken> {
6802 support::token(&self.syntax, SyntaxKind::DICTIONARY_KW)
6803 }
6804 #[inline]
6805 pub fn drop_token(&self) -> Option<SyntaxToken> {
6806 support::token(&self.syntax, SyntaxKind::DROP_KW)
6807 }
6808 #[inline]
6809 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6810 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6811 }
6812 #[inline]
6813 pub fn search_token(&self) -> Option<SyntaxToken> {
6814 support::token(&self.syntax, SyntaxKind::SEARCH_KW)
6815 }
6816 #[inline]
6817 pub fn text_token(&self) -> Option<SyntaxToken> {
6818 support::token(&self.syntax, SyntaxKind::TEXT_KW)
6819 }
6820}
6821
6822#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6823pub struct DropTextSearchParser {
6824 pub(crate) syntax: SyntaxNode,
6825}
6826impl DropTextSearchParser {
6827 #[inline]
6828 pub fn if_exists(&self) -> Option<IfExists> {
6829 support::child(&self.syntax)
6830 }
6831 #[inline]
6832 pub fn path(&self) -> Option<Path> {
6833 support::child(&self.syntax)
6834 }
6835 #[inline]
6836 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6837 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6838 }
6839 #[inline]
6840 pub fn drop_token(&self) -> Option<SyntaxToken> {
6841 support::token(&self.syntax, SyntaxKind::DROP_KW)
6842 }
6843 #[inline]
6844 pub fn parser_token(&self) -> Option<SyntaxToken> {
6845 support::token(&self.syntax, SyntaxKind::PARSER_KW)
6846 }
6847 #[inline]
6848 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6849 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6850 }
6851 #[inline]
6852 pub fn search_token(&self) -> Option<SyntaxToken> {
6853 support::token(&self.syntax, SyntaxKind::SEARCH_KW)
6854 }
6855 #[inline]
6856 pub fn text_token(&self) -> Option<SyntaxToken> {
6857 support::token(&self.syntax, SyntaxKind::TEXT_KW)
6858 }
6859}
6860
6861#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6862pub struct DropTextSearchTemplate {
6863 pub(crate) syntax: SyntaxNode,
6864}
6865impl DropTextSearchTemplate {
6866 #[inline]
6867 pub fn if_exists(&self) -> Option<IfExists> {
6868 support::child(&self.syntax)
6869 }
6870 #[inline]
6871 pub fn path(&self) -> Option<Path> {
6872 support::child(&self.syntax)
6873 }
6874 #[inline]
6875 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6876 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6877 }
6878 #[inline]
6879 pub fn drop_token(&self) -> Option<SyntaxToken> {
6880 support::token(&self.syntax, SyntaxKind::DROP_KW)
6881 }
6882 #[inline]
6883 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6884 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6885 }
6886 #[inline]
6887 pub fn search_token(&self) -> Option<SyntaxToken> {
6888 support::token(&self.syntax, SyntaxKind::SEARCH_KW)
6889 }
6890 #[inline]
6891 pub fn template_token(&self) -> Option<SyntaxToken> {
6892 support::token(&self.syntax, SyntaxKind::TEMPLATE_KW)
6893 }
6894 #[inline]
6895 pub fn text_token(&self) -> Option<SyntaxToken> {
6896 support::token(&self.syntax, SyntaxKind::TEXT_KW)
6897 }
6898}
6899
6900#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6901pub struct DropTransform {
6902 pub(crate) syntax: SyntaxNode,
6903}
6904impl DropTransform {
6905 #[inline]
6906 pub fn if_exists(&self) -> Option<IfExists> {
6907 support::child(&self.syntax)
6908 }
6909 #[inline]
6910 pub fn language(&self) -> Option<NameRef> {
6911 support::child(&self.syntax)
6912 }
6913 #[inline]
6914 pub fn ty(&self) -> Option<Type> {
6915 support::child(&self.syntax)
6916 }
6917 #[inline]
6918 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6919 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6920 }
6921 #[inline]
6922 pub fn drop_token(&self) -> Option<SyntaxToken> {
6923 support::token(&self.syntax, SyntaxKind::DROP_KW)
6924 }
6925 #[inline]
6926 pub fn for_token(&self) -> Option<SyntaxToken> {
6927 support::token(&self.syntax, SyntaxKind::FOR_KW)
6928 }
6929 #[inline]
6930 pub fn language_token(&self) -> Option<SyntaxToken> {
6931 support::token(&self.syntax, SyntaxKind::LANGUAGE_KW)
6932 }
6933 #[inline]
6934 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6935 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6936 }
6937 #[inline]
6938 pub fn transform_token(&self) -> Option<SyntaxToken> {
6939 support::token(&self.syntax, SyntaxKind::TRANSFORM_KW)
6940 }
6941}
6942
6943#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6944pub struct DropTrigger {
6945 pub(crate) syntax: SyntaxNode,
6946}
6947impl DropTrigger {
6948 #[inline]
6949 pub fn if_exists(&self) -> Option<IfExists> {
6950 support::child(&self.syntax)
6951 }
6952 #[inline]
6953 pub fn on_table(&self) -> Option<OnTable> {
6954 support::child(&self.syntax)
6955 }
6956 #[inline]
6957 pub fn path(&self) -> Option<Path> {
6958 support::child(&self.syntax)
6959 }
6960 #[inline]
6961 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6962 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6963 }
6964 #[inline]
6965 pub fn drop_token(&self) -> Option<SyntaxToken> {
6966 support::token(&self.syntax, SyntaxKind::DROP_KW)
6967 }
6968 #[inline]
6969 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6970 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6971 }
6972 #[inline]
6973 pub fn trigger_token(&self) -> Option<SyntaxToken> {
6974 support::token(&self.syntax, SyntaxKind::TRIGGER_KW)
6975 }
6976}
6977
6978#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6979pub struct DropType {
6980 pub(crate) syntax: SyntaxNode,
6981}
6982impl DropType {
6983 #[inline]
6984 pub fn if_exists(&self) -> Option<IfExists> {
6985 support::child(&self.syntax)
6986 }
6987 #[inline]
6988 pub fn paths(&self) -> AstChildren<Path> {
6989 support::children(&self.syntax)
6990 }
6991 #[inline]
6992 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6993 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6994 }
6995 #[inline]
6996 pub fn drop_token(&self) -> Option<SyntaxToken> {
6997 support::token(&self.syntax, SyntaxKind::DROP_KW)
6998 }
6999 #[inline]
7000 pub fn restrict_token(&self) -> Option<SyntaxToken> {
7001 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
7002 }
7003 #[inline]
7004 pub fn type_token(&self) -> Option<SyntaxToken> {
7005 support::token(&self.syntax, SyntaxKind::TYPE_KW)
7006 }
7007}
7008
7009#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7010pub struct DropUser {
7011 pub(crate) syntax: SyntaxNode,
7012}
7013impl DropUser {
7014 #[inline]
7015 pub fn if_exists(&self) -> Option<IfExists> {
7016 support::child(&self.syntax)
7017 }
7018 #[inline]
7019 pub fn name_refs(&self) -> AstChildren<NameRef> {
7020 support::children(&self.syntax)
7021 }
7022 #[inline]
7023 pub fn drop_token(&self) -> Option<SyntaxToken> {
7024 support::token(&self.syntax, SyntaxKind::DROP_KW)
7025 }
7026 #[inline]
7027 pub fn user_token(&self) -> Option<SyntaxToken> {
7028 support::token(&self.syntax, SyntaxKind::USER_KW)
7029 }
7030}
7031
7032#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7033pub struct DropUserMapping {
7034 pub(crate) syntax: SyntaxNode,
7035}
7036impl DropUserMapping {
7037 #[inline]
7038 pub fn if_exists(&self) -> Option<IfExists> {
7039 support::child(&self.syntax)
7040 }
7041 #[inline]
7042 pub fn role_ref(&self) -> Option<RoleRef> {
7043 support::child(&self.syntax)
7044 }
7045 #[inline]
7046 pub fn server_name(&self) -> Option<ServerName> {
7047 support::child(&self.syntax)
7048 }
7049 #[inline]
7050 pub fn drop_token(&self) -> Option<SyntaxToken> {
7051 support::token(&self.syntax, SyntaxKind::DROP_KW)
7052 }
7053 #[inline]
7054 pub fn for_token(&self) -> Option<SyntaxToken> {
7055 support::token(&self.syntax, SyntaxKind::FOR_KW)
7056 }
7057 #[inline]
7058 pub fn mapping_token(&self) -> Option<SyntaxToken> {
7059 support::token(&self.syntax, SyntaxKind::MAPPING_KW)
7060 }
7061 #[inline]
7062 pub fn user_token(&self) -> Option<SyntaxToken> {
7063 support::token(&self.syntax, SyntaxKind::USER_KW)
7064 }
7065}
7066
7067#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7068pub struct DropView {
7069 pub(crate) syntax: SyntaxNode,
7070}
7071impl DropView {
7072 #[inline]
7073 pub fn if_exists(&self) -> Option<IfExists> {
7074 support::child(&self.syntax)
7075 }
7076 #[inline]
7077 pub fn path(&self) -> Option<Path> {
7078 support::child(&self.syntax)
7079 }
7080 #[inline]
7081 pub fn cascade_token(&self) -> Option<SyntaxToken> {
7082 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
7083 }
7084 #[inline]
7085 pub fn drop_token(&self) -> Option<SyntaxToken> {
7086 support::token(&self.syntax, SyntaxKind::DROP_KW)
7087 }
7088 #[inline]
7089 pub fn restrict_token(&self) -> Option<SyntaxToken> {
7090 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
7091 }
7092 #[inline]
7093 pub fn view_token(&self) -> Option<SyntaxToken> {
7094 support::token(&self.syntax, SyntaxKind::VIEW_KW)
7095 }
7096}
7097
7098#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7099pub struct ElseClause {
7100 pub(crate) syntax: SyntaxNode,
7101}
7102impl ElseClause {
7103 #[inline]
7104 pub fn expr(&self) -> Option<Expr> {
7105 support::child(&self.syntax)
7106 }
7107 #[inline]
7108 pub fn else_token(&self) -> Option<SyntaxToken> {
7109 support::token(&self.syntax, SyntaxKind::ELSE_KW)
7110 }
7111}
7112
7113#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7114pub struct EnableAlwaysRule {
7115 pub(crate) syntax: SyntaxNode,
7116}
7117impl EnableAlwaysRule {
7118 #[inline]
7119 pub fn always_token(&self) -> Option<SyntaxToken> {
7120 support::token(&self.syntax, SyntaxKind::ALWAYS_KW)
7121 }
7122 #[inline]
7123 pub fn enable_token(&self) -> Option<SyntaxToken> {
7124 support::token(&self.syntax, SyntaxKind::ENABLE_KW)
7125 }
7126 #[inline]
7127 pub fn rule_token(&self) -> Option<SyntaxToken> {
7128 support::token(&self.syntax, SyntaxKind::RULE_KW)
7129 }
7130}
7131
7132#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7133pub struct EnableAlwaysTrigger {
7134 pub(crate) syntax: SyntaxNode,
7135}
7136impl EnableAlwaysTrigger {
7137 #[inline]
7138 pub fn always_token(&self) -> Option<SyntaxToken> {
7139 support::token(&self.syntax, SyntaxKind::ALWAYS_KW)
7140 }
7141 #[inline]
7142 pub fn enable_token(&self) -> Option<SyntaxToken> {
7143 support::token(&self.syntax, SyntaxKind::ENABLE_KW)
7144 }
7145 #[inline]
7146 pub fn trigger_token(&self) -> Option<SyntaxToken> {
7147 support::token(&self.syntax, SyntaxKind::TRIGGER_KW)
7148 }
7149}
7150
7151#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7152pub struct EnableReplicaRule {
7153 pub(crate) syntax: SyntaxNode,
7154}
7155impl EnableReplicaRule {
7156 #[inline]
7157 pub fn enable_token(&self) -> Option<SyntaxToken> {
7158 support::token(&self.syntax, SyntaxKind::ENABLE_KW)
7159 }
7160 #[inline]
7161 pub fn replica_token(&self) -> Option<SyntaxToken> {
7162 support::token(&self.syntax, SyntaxKind::REPLICA_KW)
7163 }
7164 #[inline]
7165 pub fn rule_token(&self) -> Option<SyntaxToken> {
7166 support::token(&self.syntax, SyntaxKind::RULE_KW)
7167 }
7168}
7169
7170#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7171pub struct EnableReplicaTrigger {
7172 pub(crate) syntax: SyntaxNode,
7173}
7174impl EnableReplicaTrigger {
7175 #[inline]
7176 pub fn enable_token(&self) -> Option<SyntaxToken> {
7177 support::token(&self.syntax, SyntaxKind::ENABLE_KW)
7178 }
7179 #[inline]
7180 pub fn replica_token(&self) -> Option<SyntaxToken> {
7181 support::token(&self.syntax, SyntaxKind::REPLICA_KW)
7182 }
7183 #[inline]
7184 pub fn trigger_token(&self) -> Option<SyntaxToken> {
7185 support::token(&self.syntax, SyntaxKind::TRIGGER_KW)
7186 }
7187}
7188
7189#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7190pub struct EnableRls {
7191 pub(crate) syntax: SyntaxNode,
7192}
7193impl EnableRls {
7194 #[inline]
7195 pub fn enable_token(&self) -> Option<SyntaxToken> {
7196 support::token(&self.syntax, SyntaxKind::ENABLE_KW)
7197 }
7198 #[inline]
7199 pub fn level_token(&self) -> Option<SyntaxToken> {
7200 support::token(&self.syntax, SyntaxKind::LEVEL_KW)
7201 }
7202 #[inline]
7203 pub fn row_token(&self) -> Option<SyntaxToken> {
7204 support::token(&self.syntax, SyntaxKind::ROW_KW)
7205 }
7206 #[inline]
7207 pub fn security_token(&self) -> Option<SyntaxToken> {
7208 support::token(&self.syntax, SyntaxKind::SECURITY_KW)
7209 }
7210}
7211
7212#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7213pub struct EnableRule {
7214 pub(crate) syntax: SyntaxNode,
7215}
7216impl EnableRule {
7217 #[inline]
7218 pub fn enable_token(&self) -> Option<SyntaxToken> {
7219 support::token(&self.syntax, SyntaxKind::ENABLE_KW)
7220 }
7221 #[inline]
7222 pub fn rule_token(&self) -> Option<SyntaxToken> {
7223 support::token(&self.syntax, SyntaxKind::RULE_KW)
7224 }
7225}
7226
7227#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7228pub struct EnableTrigger {
7229 pub(crate) syntax: SyntaxNode,
7230}
7231impl EnableTrigger {
7232 #[inline]
7233 pub fn enable_token(&self) -> Option<SyntaxToken> {
7234 support::token(&self.syntax, SyntaxKind::ENABLE_KW)
7235 }
7236 #[inline]
7237 pub fn trigger_token(&self) -> Option<SyntaxToken> {
7238 support::token(&self.syntax, SyntaxKind::TRIGGER_KW)
7239 }
7240}
7241
7242#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7243pub struct Enforced {
7244 pub(crate) syntax: SyntaxNode,
7245}
7246impl Enforced {
7247 #[inline]
7248 pub fn enforced_token(&self) -> Option<SyntaxToken> {
7249 support::token(&self.syntax, SyntaxKind::ENFORCED_KW)
7250 }
7251}
7252
7253#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7254pub struct EventTriggerWhen {
7255 pub(crate) syntax: SyntaxNode,
7256}
7257impl EventTriggerWhen {
7258 #[inline]
7259 pub fn literals(&self) -> AstChildren<Literal> {
7260 support::children(&self.syntax)
7261 }
7262 #[inline]
7263 pub fn name_ref(&self) -> Option<NameRef> {
7264 support::child(&self.syntax)
7265 }
7266 #[inline]
7267 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
7268 support::token(&self.syntax, SyntaxKind::L_PAREN)
7269 }
7270 #[inline]
7271 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
7272 support::token(&self.syntax, SyntaxKind::R_PAREN)
7273 }
7274 #[inline]
7275 pub fn in_token(&self) -> Option<SyntaxToken> {
7276 support::token(&self.syntax, SyntaxKind::IN_KW)
7277 }
7278}
7279
7280#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7281pub struct EventTriggerWhenClause {
7282 pub(crate) syntax: SyntaxNode,
7283}
7284impl EventTriggerWhenClause {
7285 #[inline]
7286 pub fn event_trigger_whens(&self) -> AstChildren<EventTriggerWhen> {
7287 support::children(&self.syntax)
7288 }
7289 #[inline]
7290 pub fn when_token(&self) -> Option<SyntaxToken> {
7291 support::token(&self.syntax, SyntaxKind::WHEN_KW)
7292 }
7293}
7294
7295#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7296pub struct ExceptTables {
7297 pub(crate) syntax: SyntaxNode,
7298}
7299impl ExceptTables {
7300 #[inline]
7301 pub fn name_refs(&self) -> AstChildren<NameRef> {
7302 support::children(&self.syntax)
7303 }
7304 #[inline]
7305 pub fn except_token(&self) -> Option<SyntaxToken> {
7306 support::token(&self.syntax, SyntaxKind::EXCEPT_KW)
7307 }
7308}
7309
7310#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7311pub struct ExcludeConstraint {
7312 pub(crate) syntax: SyntaxNode,
7313}
7314impl ExcludeConstraint {
7315 #[inline]
7316 pub fn constraint_exclusion_list(&self) -> Option<ConstraintExclusionList> {
7317 support::child(&self.syntax)
7318 }
7319 #[inline]
7320 pub fn constraint_index_method(&self) -> Option<ConstraintIndexMethod> {
7321 support::child(&self.syntax)
7322 }
7323 #[inline]
7324 pub fn constraint_name(&self) -> Option<ConstraintName> {
7325 support::child(&self.syntax)
7326 }
7327 #[inline]
7328 pub fn where_condition_clause(&self) -> Option<WhereConditionClause> {
7329 support::child(&self.syntax)
7330 }
7331 #[inline]
7332 pub fn exclude_token(&self) -> Option<SyntaxToken> {
7333 support::token(&self.syntax, SyntaxKind::EXCLUDE_KW)
7334 }
7335}
7336
7337#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7338pub struct Execute {
7339 pub(crate) syntax: SyntaxNode,
7340}
7341impl Execute {
7342 #[inline]
7343 pub fn arg_list(&self) -> Option<ArgList> {
7344 support::child(&self.syntax)
7345 }
7346 #[inline]
7347 pub fn name_ref(&self) -> Option<NameRef> {
7348 support::child(&self.syntax)
7349 }
7350 #[inline]
7351 pub fn execute_token(&self) -> Option<SyntaxToken> {
7352 support::token(&self.syntax, SyntaxKind::EXECUTE_KW)
7353 }
7354}
7355
7356#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7357pub struct ExistsFn {
7358 pub(crate) syntax: SyntaxNode,
7359}
7360impl ExistsFn {
7361 #[inline]
7362 pub fn select_variant(&self) -> Option<SelectVariant> {
7363 support::child(&self.syntax)
7364 }
7365 #[inline]
7366 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
7367 support::token(&self.syntax, SyntaxKind::L_PAREN)
7368 }
7369 #[inline]
7370 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
7371 support::token(&self.syntax, SyntaxKind::R_PAREN)
7372 }
7373 #[inline]
7374 pub fn exists_token(&self) -> Option<SyntaxToken> {
7375 support::token(&self.syntax, SyntaxKind::EXISTS_KW)
7376 }
7377}
7378
7379#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7380pub struct Explain {
7381 pub(crate) syntax: SyntaxNode,
7382}
7383impl Explain {
7384 #[inline]
7385 pub fn explain_stmt(&self) -> Option<ExplainStmt> {
7386 support::child(&self.syntax)
7387 }
7388 #[inline]
7389 pub fn analyse_token(&self) -> Option<SyntaxToken> {
7390 support::token(&self.syntax, SyntaxKind::ANALYSE_KW)
7391 }
7392 #[inline]
7393 pub fn analyze_token(&self) -> Option<SyntaxToken> {
7394 support::token(&self.syntax, SyntaxKind::ANALYZE_KW)
7395 }
7396 #[inline]
7397 pub fn explain_token(&self) -> Option<SyntaxToken> {
7398 support::token(&self.syntax, SyntaxKind::EXPLAIN_KW)
7399 }
7400 #[inline]
7401 pub fn verbose_token(&self) -> Option<SyntaxToken> {
7402 support::token(&self.syntax, SyntaxKind::VERBOSE_KW)
7403 }
7404}
7405
7406#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7407pub struct ExprAsName {
7408 pub(crate) syntax: SyntaxNode,
7409}
7410impl ExprAsName {
7411 #[inline]
7412 pub fn as_name(&self) -> Option<AsName> {
7413 support::child(&self.syntax)
7414 }
7415 #[inline]
7416 pub fn expr(&self) -> Option<Expr> {
7417 support::child(&self.syntax)
7418 }
7419}
7420
7421#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7422pub struct ExprType {
7423 pub(crate) syntax: SyntaxNode,
7424}
7425impl ExprType {
7426 #[inline]
7427 pub fn expr(&self) -> Option<Expr> {
7428 support::child(&self.syntax)
7429 }
7430}
7431
7432#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7433pub struct ExtractFn {
7434 pub(crate) syntax: SyntaxNode,
7435}
7436impl ExtractFn {
7437 #[inline]
7438 pub fn expr(&self) -> Option<Expr> {
7439 support::child(&self.syntax)
7440 }
7441 #[inline]
7442 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
7443 support::token(&self.syntax, SyntaxKind::L_PAREN)
7444 }
7445 #[inline]
7446 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
7447 support::token(&self.syntax, SyntaxKind::R_PAREN)
7448 }
7449 #[inline]
7450 pub fn day_token(&self) -> Option<SyntaxToken> {
7451 support::token(&self.syntax, SyntaxKind::DAY_KW)
7452 }
7453 #[inline]
7454 pub fn extract_token(&self) -> Option<SyntaxToken> {
7455 support::token(&self.syntax, SyntaxKind::EXTRACT_KW)
7456 }
7457 #[inline]
7458 pub fn from_token(&self) -> Option<SyntaxToken> {
7459 support::token(&self.syntax, SyntaxKind::FROM_KW)
7460 }
7461 #[inline]
7462 pub fn hour_token(&self) -> Option<SyntaxToken> {
7463 support::token(&self.syntax, SyntaxKind::HOUR_KW)
7464 }
7465 #[inline]
7466 pub fn ident_token(&self) -> Option<SyntaxToken> {
7467 support::token(&self.syntax, SyntaxKind::IDENT)
7468 }
7469 #[inline]
7470 pub fn minute_token(&self) -> Option<SyntaxToken> {
7471 support::token(&self.syntax, SyntaxKind::MINUTE_KW)
7472 }
7473 #[inline]
7474 pub fn month_token(&self) -> Option<SyntaxToken> {
7475 support::token(&self.syntax, SyntaxKind::MONTH_KW)
7476 }
7477 #[inline]
7478 pub fn second_token(&self) -> Option<SyntaxToken> {
7479 support::token(&self.syntax, SyntaxKind::SECOND_KW)
7480 }
7481 #[inline]
7482 pub fn string_token(&self) -> Option<SyntaxToken> {
7483 support::token(&self.syntax, SyntaxKind::STRING_KW)
7484 }
7485 #[inline]
7486 pub fn year_token(&self) -> Option<SyntaxToken> {
7487 support::token(&self.syntax, SyntaxKind::YEAR_KW)
7488 }
7489}
7490
7491#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7492pub struct FatArrow {
7493 pub(crate) syntax: SyntaxNode,
7494}
7495impl FatArrow {
7496 #[inline]
7497 pub fn eq_token(&self) -> Option<SyntaxToken> {
7498 support::token(&self.syntax, SyntaxKind::EQ)
7499 }
7500 #[inline]
7501 pub fn r_angle_token(&self) -> Option<SyntaxToken> {
7502 support::token(&self.syntax, SyntaxKind::R_ANGLE)
7503 }
7504}
7505
7506#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7507pub struct FdwOption {
7508 pub(crate) syntax: SyntaxNode,
7509}
7510impl FdwOption {
7511 #[inline]
7512 pub fn alter_option_list(&self) -> Option<AlterOptionList> {
7513 support::child(&self.syntax)
7514 }
7515 #[inline]
7516 pub fn path(&self) -> Option<Path> {
7517 support::child(&self.syntax)
7518 }
7519 #[inline]
7520 pub fn handler_token(&self) -> Option<SyntaxToken> {
7521 support::token(&self.syntax, SyntaxKind::HANDLER_KW)
7522 }
7523 #[inline]
7524 pub fn no_token(&self) -> Option<SyntaxToken> {
7525 support::token(&self.syntax, SyntaxKind::NO_KW)
7526 }
7527 #[inline]
7528 pub fn options_token(&self) -> Option<SyntaxToken> {
7529 support::token(&self.syntax, SyntaxKind::OPTIONS_KW)
7530 }
7531 #[inline]
7532 pub fn validator_token(&self) -> Option<SyntaxToken> {
7533 support::token(&self.syntax, SyntaxKind::VALIDATOR_KW)
7534 }
7535}
7536
7537#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7538pub struct FdwOptionList {
7539 pub(crate) syntax: SyntaxNode,
7540}
7541impl FdwOptionList {
7542 #[inline]
7543 pub fn fdw_options(&self) -> AstChildren<FdwOption> {
7544 support::children(&self.syntax)
7545 }
7546}
7547
7548#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7549pub struct Fetch {
7550 pub(crate) syntax: SyntaxNode,
7551}
7552impl Fetch {
7553 #[inline]
7554 pub fn name_ref(&self) -> Option<NameRef> {
7555 support::child(&self.syntax)
7556 }
7557 #[inline]
7558 pub fn fetch_token(&self) -> Option<SyntaxToken> {
7559 support::token(&self.syntax, SyntaxKind::FETCH_KW)
7560 }
7561 #[inline]
7562 pub fn from_token(&self) -> Option<SyntaxToken> {
7563 support::token(&self.syntax, SyntaxKind::FROM_KW)
7564 }
7565 #[inline]
7566 pub fn in_token(&self) -> Option<SyntaxToken> {
7567 support::token(&self.syntax, SyntaxKind::IN_KW)
7568 }
7569}
7570
7571#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7572pub struct FetchClause {
7573 pub(crate) syntax: SyntaxNode,
7574}
7575impl FetchClause {
7576 #[inline]
7577 pub fn expr(&self) -> Option<Expr> {
7578 support::child(&self.syntax)
7579 }
7580 #[inline]
7581 pub fn fetch_token(&self) -> Option<SyntaxToken> {
7582 support::token(&self.syntax, SyntaxKind::FETCH_KW)
7583 }
7584 #[inline]
7585 pub fn first_token(&self) -> Option<SyntaxToken> {
7586 support::token(&self.syntax, SyntaxKind::FIRST_KW)
7587 }
7588 #[inline]
7589 pub fn next_token(&self) -> Option<SyntaxToken> {
7590 support::token(&self.syntax, SyntaxKind::NEXT_KW)
7591 }
7592 #[inline]
7593 pub fn only_token(&self) -> Option<SyntaxToken> {
7594 support::token(&self.syntax, SyntaxKind::ONLY_KW)
7595 }
7596 #[inline]
7597 pub fn row_token(&self) -> Option<SyntaxToken> {
7598 support::token(&self.syntax, SyntaxKind::ROW_KW)
7599 }
7600 #[inline]
7601 pub fn rows_token(&self) -> Option<SyntaxToken> {
7602 support::token(&self.syntax, SyntaxKind::ROWS_KW)
7603 }
7604 #[inline]
7605 pub fn ties_token(&self) -> Option<SyntaxToken> {
7606 support::token(&self.syntax, SyntaxKind::TIES_KW)
7607 }
7608 #[inline]
7609 pub fn with_token(&self) -> Option<SyntaxToken> {
7610 support::token(&self.syntax, SyntaxKind::WITH_KW)
7611 }
7612}
7613
7614#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7615pub struct FieldExpr {
7616 pub(crate) syntax: SyntaxNode,
7617}
7618impl FieldExpr {
7619 #[inline]
7620 pub fn star_token(&self) -> Option<SyntaxToken> {
7621 support::token(&self.syntax, SyntaxKind::STAR)
7622 }
7623 #[inline]
7624 pub fn dot_token(&self) -> Option<SyntaxToken> {
7625 support::token(&self.syntax, SyntaxKind::DOT)
7626 }
7627}
7628
7629#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7630pub struct FilterClause {
7631 pub(crate) syntax: SyntaxNode,
7632}
7633impl FilterClause {
7634 #[inline]
7635 pub fn expr(&self) -> Option<Expr> {
7636 support::child(&self.syntax)
7637 }
7638 #[inline]
7639 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
7640 support::token(&self.syntax, SyntaxKind::L_PAREN)
7641 }
7642 #[inline]
7643 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
7644 support::token(&self.syntax, SyntaxKind::R_PAREN)
7645 }
7646 #[inline]
7647 pub fn filter_token(&self) -> Option<SyntaxToken> {
7648 support::token(&self.syntax, SyntaxKind::FILTER_KW)
7649 }
7650 #[inline]
7651 pub fn where_token(&self) -> Option<SyntaxToken> {
7652 support::token(&self.syntax, SyntaxKind::WHERE_KW)
7653 }
7654}
7655
7656#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7657pub struct ForProvider {
7658 pub(crate) syntax: SyntaxNode,
7659}
7660impl ForProvider {
7661 #[inline]
7662 pub fn literal(&self) -> Option<Literal> {
7663 support::child(&self.syntax)
7664 }
7665 #[inline]
7666 pub fn name_ref(&self) -> Option<NameRef> {
7667 support::child(&self.syntax)
7668 }
7669 #[inline]
7670 pub fn for_token(&self) -> Option<SyntaxToken> {
7671 support::token(&self.syntax, SyntaxKind::FOR_KW)
7672 }
7673}
7674
7675#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7676pub struct ForceRls {
7677 pub(crate) syntax: SyntaxNode,
7678}
7679impl ForceRls {
7680 #[inline]
7681 pub fn force_token(&self) -> Option<SyntaxToken> {
7682 support::token(&self.syntax, SyntaxKind::FORCE_KW)
7683 }
7684 #[inline]
7685 pub fn level_token(&self) -> Option<SyntaxToken> {
7686 support::token(&self.syntax, SyntaxKind::LEVEL_KW)
7687 }
7688 #[inline]
7689 pub fn row_token(&self) -> Option<SyntaxToken> {
7690 support::token(&self.syntax, SyntaxKind::ROW_KW)
7691 }
7692 #[inline]
7693 pub fn security_token(&self) -> Option<SyntaxToken> {
7694 support::token(&self.syntax, SyntaxKind::SECURITY_KW)
7695 }
7696}
7697
7698#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7699pub struct ForeignKeyConstraint {
7700 pub(crate) syntax: SyntaxNode,
7701}
7702impl ForeignKeyConstraint {
7703 #[inline]
7704 pub fn constraint_name(&self) -> Option<ConstraintName> {
7705 support::child(&self.syntax)
7706 }
7707 #[inline]
7708 pub fn match_type(&self) -> Option<MatchType> {
7709 support::child(&self.syntax)
7710 }
7711 #[inline]
7712 pub fn on_delete_action(&self) -> Option<OnDeleteAction> {
7713 support::child(&self.syntax)
7714 }
7715 #[inline]
7716 pub fn on_update_action(&self) -> Option<OnUpdateAction> {
7717 support::child(&self.syntax)
7718 }
7719 #[inline]
7720 pub fn path(&self) -> Option<Path> {
7721 support::child(&self.syntax)
7722 }
7723 #[inline]
7724 pub fn foreign_token(&self) -> Option<SyntaxToken> {
7725 support::token(&self.syntax, SyntaxKind::FOREIGN_KW)
7726 }
7727 #[inline]
7728 pub fn key_token(&self) -> Option<SyntaxToken> {
7729 support::token(&self.syntax, SyntaxKind::KEY_KW)
7730 }
7731 #[inline]
7732 pub fn references_token(&self) -> Option<SyntaxToken> {
7733 support::token(&self.syntax, SyntaxKind::REFERENCES_KW)
7734 }
7735}
7736
7737#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7738pub struct FrameClause {
7739 pub(crate) syntax: SyntaxNode,
7740}
7741impl FrameClause {
7742 #[inline]
7743 pub fn groups_token(&self) -> Option<SyntaxToken> {
7744 support::token(&self.syntax, SyntaxKind::GROUPS_KW)
7745 }
7746 #[inline]
7747 pub fn range_token(&self) -> Option<SyntaxToken> {
7748 support::token(&self.syntax, SyntaxKind::RANGE_KW)
7749 }
7750 #[inline]
7751 pub fn rows_token(&self) -> Option<SyntaxToken> {
7752 support::token(&self.syntax, SyntaxKind::ROWS_KW)
7753 }
7754}
7755
7756#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7757pub struct FromClause {
7758 pub(crate) syntax: SyntaxNode,
7759}
7760impl FromClause {
7761 #[inline]
7762 pub fn from_items(&self) -> AstChildren<FromItem> {
7763 support::children(&self.syntax)
7764 }
7765 #[inline]
7766 pub fn join_exprs(&self) -> AstChildren<JoinExpr> {
7767 support::children(&self.syntax)
7768 }
7769 #[inline]
7770 pub fn from_token(&self) -> Option<SyntaxToken> {
7771 support::token(&self.syntax, SyntaxKind::FROM_KW)
7772 }
7773}
7774
7775#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7776pub struct FromItem {
7777 pub(crate) syntax: SyntaxNode,
7778}
7779impl FromItem {
7780 #[inline]
7781 pub fn alias(&self) -> Option<Alias> {
7782 support::child(&self.syntax)
7783 }
7784 #[inline]
7785 pub fn call_expr(&self) -> Option<CallExpr> {
7786 support::child(&self.syntax)
7787 }
7788 #[inline]
7789 pub fn cast_expr(&self) -> Option<CastExpr> {
7790 support::child(&self.syntax)
7791 }
7792 #[inline]
7793 pub fn field_expr(&self) -> Option<FieldExpr> {
7794 support::child(&self.syntax)
7795 }
7796 #[inline]
7797 pub fn json_table(&self) -> Option<JsonTable> {
7798 support::child(&self.syntax)
7799 }
7800 #[inline]
7801 pub fn name_ref(&self) -> Option<NameRef> {
7802 support::child(&self.syntax)
7803 }
7804 #[inline]
7805 pub fn paren_expr(&self) -> Option<ParenExpr> {
7806 support::child(&self.syntax)
7807 }
7808 #[inline]
7809 pub fn paren_select(&self) -> Option<ParenSelect> {
7810 support::child(&self.syntax)
7811 }
7812 #[inline]
7813 pub fn tablesample_clause(&self) -> Option<TablesampleClause> {
7814 support::child(&self.syntax)
7815 }
7816 #[inline]
7817 pub fn xml_table(&self) -> Option<XmlTable> {
7818 support::child(&self.syntax)
7819 }
7820 #[inline]
7821 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
7822 support::token(&self.syntax, SyntaxKind::L_PAREN)
7823 }
7824 #[inline]
7825 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
7826 support::token(&self.syntax, SyntaxKind::R_PAREN)
7827 }
7828 #[inline]
7829 pub fn star_token(&self) -> Option<SyntaxToken> {
7830 support::token(&self.syntax, SyntaxKind::STAR)
7831 }
7832 #[inline]
7833 pub fn from_token(&self) -> Option<SyntaxToken> {
7834 support::token(&self.syntax, SyntaxKind::FROM_KW)
7835 }
7836 #[inline]
7837 pub fn lateral_token(&self) -> Option<SyntaxToken> {
7838 support::token(&self.syntax, SyntaxKind::LATERAL_KW)
7839 }
7840 #[inline]
7841 pub fn only_token(&self) -> Option<SyntaxToken> {
7842 support::token(&self.syntax, SyntaxKind::ONLY_KW)
7843 }
7844 #[inline]
7845 pub fn ordinality_token(&self) -> Option<SyntaxToken> {
7846 support::token(&self.syntax, SyntaxKind::ORDINALITY_KW)
7847 }
7848 #[inline]
7849 pub fn rows_token(&self) -> Option<SyntaxToken> {
7850 support::token(&self.syntax, SyntaxKind::ROWS_KW)
7851 }
7852 #[inline]
7853 pub fn with_token(&self) -> Option<SyntaxToken> {
7854 support::token(&self.syntax, SyntaxKind::WITH_KW)
7855 }
7856}
7857
7858#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7859pub struct FromTable {
7860 pub(crate) syntax: SyntaxNode,
7861}
7862impl FromTable {
7863 #[inline]
7864 pub fn path(&self) -> Option<Path> {
7865 support::child(&self.syntax)
7866 }
7867 #[inline]
7868 pub fn from_token(&self) -> Option<SyntaxToken> {
7869 support::token(&self.syntax, SyntaxKind::FROM_KW)
7870 }
7871}
7872
7873#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7874pub struct FuncOptionList {
7875 pub(crate) syntax: SyntaxNode,
7876}
7877impl FuncOptionList {
7878 #[inline]
7879 pub fn options(&self) -> AstChildren<FuncOption> {
7880 support::children(&self.syntax)
7881 }
7882}
7883
7884#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7885pub struct FunctionSig {
7886 pub(crate) syntax: SyntaxNode,
7887}
7888impl FunctionSig {
7889 #[inline]
7890 pub fn param_list(&self) -> Option<ParamList> {
7891 support::child(&self.syntax)
7892 }
7893 #[inline]
7894 pub fn path(&self) -> Option<Path> {
7895 support::child(&self.syntax)
7896 }
7897}
7898
7899#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7900pub struct FunctionSigList {
7901 pub(crate) syntax: SyntaxNode,
7902}
7903impl FunctionSigList {
7904 #[inline]
7905 pub fn function_sigs(&self) -> AstChildren<FunctionSig> {
7906 support::children(&self.syntax)
7907 }
7908}
7909
7910#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7911pub struct GeneratedConstraint {
7912 pub(crate) syntax: SyntaxNode,
7913}
7914impl GeneratedConstraint {
7915 #[inline]
7916 pub fn expr(&self) -> Option<Expr> {
7917 support::child(&self.syntax)
7918 }
7919 #[inline]
7920 pub fn name_ref(&self) -> Option<NameRef> {
7921 support::child(&self.syntax)
7922 }
7923 #[inline]
7924 pub fn sequence_option_list(&self) -> Option<SequenceOptionList> {
7925 support::child(&self.syntax)
7926 }
7927 #[inline]
7928 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
7929 support::token(&self.syntax, SyntaxKind::L_PAREN)
7930 }
7931 #[inline]
7932 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
7933 support::token(&self.syntax, SyntaxKind::R_PAREN)
7934 }
7935 #[inline]
7936 pub fn always_token(&self) -> Option<SyntaxToken> {
7937 support::token(&self.syntax, SyntaxKind::ALWAYS_KW)
7938 }
7939 #[inline]
7940 pub fn as_token(&self) -> Option<SyntaxToken> {
7941 support::token(&self.syntax, SyntaxKind::AS_KW)
7942 }
7943 #[inline]
7944 pub fn by_token(&self) -> Option<SyntaxToken> {
7945 support::token(&self.syntax, SyntaxKind::BY_KW)
7946 }
7947 #[inline]
7948 pub fn constraint_token(&self) -> Option<SyntaxToken> {
7949 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
7950 }
7951 #[inline]
7952 pub fn default_token(&self) -> Option<SyntaxToken> {
7953 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
7954 }
7955 #[inline]
7956 pub fn generated_token(&self) -> Option<SyntaxToken> {
7957 support::token(&self.syntax, SyntaxKind::GENERATED_KW)
7958 }
7959 #[inline]
7960 pub fn identity_token(&self) -> Option<SyntaxToken> {
7961 support::token(&self.syntax, SyntaxKind::IDENTITY_KW)
7962 }
7963 #[inline]
7964 pub fn stored_token(&self) -> Option<SyntaxToken> {
7965 support::token(&self.syntax, SyntaxKind::STORED_KW)
7966 }
7967}
7968
7969#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7970pub struct Grant {
7971 pub(crate) syntax: SyntaxNode,
7972}
7973impl Grant {
7974 #[inline]
7975 pub fn name_refs(&self) -> AstChildren<NameRef> {
7976 support::children(&self.syntax)
7977 }
7978 #[inline]
7979 pub fn paths(&self) -> AstChildren<Path> {
7980 support::children(&self.syntax)
7981 }
7982 #[inline]
7983 pub fn revoke_command_list(&self) -> Option<RevokeCommandList> {
7984 support::child(&self.syntax)
7985 }
7986 #[inline]
7987 pub fn role_ref(&self) -> Option<RoleRef> {
7988 support::child(&self.syntax)
7989 }
7990 #[inline]
7991 pub fn role_ref_list(&self) -> Option<RoleRefList> {
7992 support::child(&self.syntax)
7993 }
7994 #[inline]
7995 pub fn all_token(&self) -> Option<SyntaxToken> {
7996 support::token(&self.syntax, SyntaxKind::ALL_KW)
7997 }
7998 #[inline]
7999 pub fn by_token(&self) -> Option<SyntaxToken> {
8000 support::token(&self.syntax, SyntaxKind::BY_KW)
8001 }
8002 #[inline]
8003 pub fn grant_token(&self) -> Option<SyntaxToken> {
8004 support::token(&self.syntax, SyntaxKind::GRANT_KW)
8005 }
8006 #[inline]
8007 pub fn granted_token(&self) -> Option<SyntaxToken> {
8008 support::token(&self.syntax, SyntaxKind::GRANTED_KW)
8009 }
8010 #[inline]
8011 pub fn in_token(&self) -> Option<SyntaxToken> {
8012 support::token(&self.syntax, SyntaxKind::IN_KW)
8013 }
8014 #[inline]
8015 pub fn on_token(&self) -> Option<SyntaxToken> {
8016 support::token(&self.syntax, SyntaxKind::ON_KW)
8017 }
8018 #[inline]
8019 pub fn option_token(&self) -> Option<SyntaxToken> {
8020 support::token(&self.syntax, SyntaxKind::OPTION_KW)
8021 }
8022 #[inline]
8023 pub fn privileges_token(&self) -> Option<SyntaxToken> {
8024 support::token(&self.syntax, SyntaxKind::PRIVILEGES_KW)
8025 }
8026 #[inline]
8027 pub fn schema_token(&self) -> Option<SyntaxToken> {
8028 support::token(&self.syntax, SyntaxKind::SCHEMA_KW)
8029 }
8030 #[inline]
8031 pub fn table_token(&self) -> Option<SyntaxToken> {
8032 support::token(&self.syntax, SyntaxKind::TABLE_KW)
8033 }
8034 #[inline]
8035 pub fn tables_token(&self) -> Option<SyntaxToken> {
8036 support::token(&self.syntax, SyntaxKind::TABLES_KW)
8037 }
8038 #[inline]
8039 pub fn to_token(&self) -> Option<SyntaxToken> {
8040 support::token(&self.syntax, SyntaxKind::TO_KW)
8041 }
8042 #[inline]
8043 pub fn with_token(&self) -> Option<SyntaxToken> {
8044 support::token(&self.syntax, SyntaxKind::WITH_KW)
8045 }
8046}
8047
8048#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8049pub struct GrantDefaultPrivileges {
8050 pub(crate) syntax: SyntaxNode,
8051}
8052impl GrantDefaultPrivileges {
8053 #[inline]
8054 pub fn privilege_target(&self) -> Option<PrivilegeTarget> {
8055 support::child(&self.syntax)
8056 }
8057 #[inline]
8058 pub fn privileges(&self) -> Option<Privileges> {
8059 support::child(&self.syntax)
8060 }
8061 #[inline]
8062 pub fn role_ref_list(&self) -> Option<RoleRefList> {
8063 support::child(&self.syntax)
8064 }
8065 #[inline]
8066 pub fn grant_token(&self) -> Option<SyntaxToken> {
8067 support::token(&self.syntax, SyntaxKind::GRANT_KW)
8068 }
8069 #[inline]
8070 pub fn on_token(&self) -> Option<SyntaxToken> {
8071 support::token(&self.syntax, SyntaxKind::ON_KW)
8072 }
8073 #[inline]
8074 pub fn option_token(&self) -> Option<SyntaxToken> {
8075 support::token(&self.syntax, SyntaxKind::OPTION_KW)
8076 }
8077 #[inline]
8078 pub fn to_token(&self) -> Option<SyntaxToken> {
8079 support::token(&self.syntax, SyntaxKind::TO_KW)
8080 }
8081 #[inline]
8082 pub fn with_token(&self) -> Option<SyntaxToken> {
8083 support::token(&self.syntax, SyntaxKind::WITH_KW)
8084 }
8085}
8086
8087#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8088pub struct GroupByClause {
8089 pub(crate) syntax: SyntaxNode,
8090}
8091impl GroupByClause {
8092 #[inline]
8093 pub fn group_by_list(&self) -> Option<GroupByList> {
8094 support::child(&self.syntax)
8095 }
8096 #[inline]
8097 pub fn all_token(&self) -> Option<SyntaxToken> {
8098 support::token(&self.syntax, SyntaxKind::ALL_KW)
8099 }
8100 #[inline]
8101 pub fn by_token(&self) -> Option<SyntaxToken> {
8102 support::token(&self.syntax, SyntaxKind::BY_KW)
8103 }
8104 #[inline]
8105 pub fn distinct_token(&self) -> Option<SyntaxToken> {
8106 support::token(&self.syntax, SyntaxKind::DISTINCT_KW)
8107 }
8108 #[inline]
8109 pub fn group_token(&self) -> Option<SyntaxToken> {
8110 support::token(&self.syntax, SyntaxKind::GROUP_KW)
8111 }
8112}
8113
8114#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8115pub struct GroupByList {
8116 pub(crate) syntax: SyntaxNode,
8117}
8118impl GroupByList {
8119 #[inline]
8120 pub fn group_bys(&self) -> AstChildren<GroupBy> {
8121 support::children(&self.syntax)
8122 }
8123}
8124
8125#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8126pub struct GroupingCube {
8127 pub(crate) syntax: SyntaxNode,
8128}
8129impl GroupingCube {
8130 #[inline]
8131 pub fn expr(&self) -> Option<Expr> {
8132 support::child(&self.syntax)
8133 }
8134 #[inline]
8135 pub fn cube_token(&self) -> Option<SyntaxToken> {
8136 support::token(&self.syntax, SyntaxKind::CUBE_KW)
8137 }
8138}
8139
8140#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8141pub struct GroupingExpr {
8142 pub(crate) syntax: SyntaxNode,
8143}
8144impl GroupingExpr {
8145 #[inline]
8146 pub fn expr(&self) -> Option<Expr> {
8147 support::child(&self.syntax)
8148 }
8149}
8150
8151#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8152pub struct GroupingRollup {
8153 pub(crate) syntax: SyntaxNode,
8154}
8155impl GroupingRollup {
8156 #[inline]
8157 pub fn expr(&self) -> Option<Expr> {
8158 support::child(&self.syntax)
8159 }
8160 #[inline]
8161 pub fn rollup_token(&self) -> Option<SyntaxToken> {
8162 support::token(&self.syntax, SyntaxKind::ROLLUP_KW)
8163 }
8164}
8165
8166#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8167pub struct GroupingSets {
8168 pub(crate) syntax: SyntaxNode,
8169}
8170impl GroupingSets {
8171 #[inline]
8172 pub fn expr(&self) -> Option<Expr> {
8173 support::child(&self.syntax)
8174 }
8175 #[inline]
8176 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
8177 support::token(&self.syntax, SyntaxKind::L_PAREN)
8178 }
8179 #[inline]
8180 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
8181 support::token(&self.syntax, SyntaxKind::R_PAREN)
8182 }
8183 #[inline]
8184 pub fn grouping_token(&self) -> Option<SyntaxToken> {
8185 support::token(&self.syntax, SyntaxKind::GROUPING_KW)
8186 }
8187 #[inline]
8188 pub fn sets_token(&self) -> Option<SyntaxToken> {
8189 support::token(&self.syntax, SyntaxKind::SETS_KW)
8190 }
8191}
8192
8193#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8194pub struct Gteq {
8195 pub(crate) syntax: SyntaxNode,
8196}
8197impl Gteq {
8198 #[inline]
8199 pub fn eq_token(&self) -> Option<SyntaxToken> {
8200 support::token(&self.syntax, SyntaxKind::EQ)
8201 }
8202 #[inline]
8203 pub fn r_angle_token(&self) -> Option<SyntaxToken> {
8204 support::token(&self.syntax, SyntaxKind::R_ANGLE)
8205 }
8206}
8207
8208#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8209pub struct HandlerClause {
8210 pub(crate) syntax: SyntaxNode,
8211}
8212impl HandlerClause {
8213 #[inline]
8214 pub fn path(&self) -> Option<Path> {
8215 support::child(&self.syntax)
8216 }
8217 #[inline]
8218 pub fn handler_token(&self) -> Option<SyntaxToken> {
8219 support::token(&self.syntax, SyntaxKind::HANDLER_KW)
8220 }
8221}
8222
8223#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8224pub struct HavingClause {
8225 pub(crate) syntax: SyntaxNode,
8226}
8227impl HavingClause {
8228 #[inline]
8229 pub fn expr(&self) -> Option<Expr> {
8230 support::child(&self.syntax)
8231 }
8232 #[inline]
8233 pub fn having_token(&self) -> Option<SyntaxToken> {
8234 support::token(&self.syntax, SyntaxKind::HAVING_KW)
8235 }
8236}
8237
8238#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8239pub struct IfExists {
8240 pub(crate) syntax: SyntaxNode,
8241}
8242impl IfExists {
8243 #[inline]
8244 pub fn exists_token(&self) -> Option<SyntaxToken> {
8245 support::token(&self.syntax, SyntaxKind::EXISTS_KW)
8246 }
8247 #[inline]
8248 pub fn if_token(&self) -> Option<SyntaxToken> {
8249 support::token(&self.syntax, SyntaxKind::IF_KW)
8250 }
8251}
8252
8253#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8254pub struct IfNotExists {
8255 pub(crate) syntax: SyntaxNode,
8256}
8257impl IfNotExists {
8258 #[inline]
8259 pub fn exists_token(&self) -> Option<SyntaxToken> {
8260 support::token(&self.syntax, SyntaxKind::EXISTS_KW)
8261 }
8262 #[inline]
8263 pub fn if_token(&self) -> Option<SyntaxToken> {
8264 support::token(&self.syntax, SyntaxKind::IF_KW)
8265 }
8266 #[inline]
8267 pub fn not_token(&self) -> Option<SyntaxToken> {
8268 support::token(&self.syntax, SyntaxKind::NOT_KW)
8269 }
8270}
8271
8272#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8273pub struct ImportForeignSchema {
8274 pub(crate) syntax: SyntaxNode,
8275}
8276impl ImportForeignSchema {
8277 #[inline]
8278 pub fn alter_option_list(&self) -> Option<AlterOptionList> {
8279 support::child(&self.syntax)
8280 }
8281 #[inline]
8282 pub fn except_tables(&self) -> Option<ExceptTables> {
8283 support::child(&self.syntax)
8284 }
8285 #[inline]
8286 pub fn into_schema(&self) -> Option<IntoSchema> {
8287 support::child(&self.syntax)
8288 }
8289 #[inline]
8290 pub fn limit_to_tables(&self) -> Option<LimitToTables> {
8291 support::child(&self.syntax)
8292 }
8293 #[inline]
8294 pub fn name_ref(&self) -> Option<NameRef> {
8295 support::child(&self.syntax)
8296 }
8297 #[inline]
8298 pub fn server_name(&self) -> Option<ServerName> {
8299 support::child(&self.syntax)
8300 }
8301 #[inline]
8302 pub fn foreign_token(&self) -> Option<SyntaxToken> {
8303 support::token(&self.syntax, SyntaxKind::FOREIGN_KW)
8304 }
8305 #[inline]
8306 pub fn from_token(&self) -> Option<SyntaxToken> {
8307 support::token(&self.syntax, SyntaxKind::FROM_KW)
8308 }
8309 #[inline]
8310 pub fn import_token(&self) -> Option<SyntaxToken> {
8311 support::token(&self.syntax, SyntaxKind::IMPORT_KW)
8312 }
8313 #[inline]
8314 pub fn schema_token(&self) -> Option<SyntaxToken> {
8315 support::token(&self.syntax, SyntaxKind::SCHEMA_KW)
8316 }
8317}
8318
8319#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8320pub struct IndexExpr {
8321 pub(crate) syntax: SyntaxNode,
8322}
8323impl IndexExpr {
8324 #[inline]
8325 pub fn l_brack_token(&self) -> Option<SyntaxToken> {
8326 support::token(&self.syntax, SyntaxKind::L_BRACK)
8327 }
8328 #[inline]
8329 pub fn r_brack_token(&self) -> Option<SyntaxToken> {
8330 support::token(&self.syntax, SyntaxKind::R_BRACK)
8331 }
8332}
8333
8334#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8335pub struct Inherit {
8336 pub(crate) syntax: SyntaxNode,
8337}
8338impl Inherit {
8339 #[inline]
8340 pub fn path(&self) -> Option<Path> {
8341 support::child(&self.syntax)
8342 }
8343 #[inline]
8344 pub fn inherit_token(&self) -> Option<SyntaxToken> {
8345 support::token(&self.syntax, SyntaxKind::INHERIT_KW)
8346 }
8347}
8348
8349#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8350pub struct InheritTable {
8351 pub(crate) syntax: SyntaxNode,
8352}
8353impl InheritTable {
8354 #[inline]
8355 pub fn path(&self) -> Option<Path> {
8356 support::child(&self.syntax)
8357 }
8358 #[inline]
8359 pub fn inherit_token(&self) -> Option<SyntaxToken> {
8360 support::token(&self.syntax, SyntaxKind::INHERIT_KW)
8361 }
8362}
8363
8364#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8365pub struct Inherits {
8366 pub(crate) syntax: SyntaxNode,
8367}
8368impl Inherits {
8369 #[inline]
8370 pub fn paths(&self) -> AstChildren<Path> {
8371 support::children(&self.syntax)
8372 }
8373 #[inline]
8374 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
8375 support::token(&self.syntax, SyntaxKind::L_PAREN)
8376 }
8377 #[inline]
8378 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
8379 support::token(&self.syntax, SyntaxKind::R_PAREN)
8380 }
8381 #[inline]
8382 pub fn inherits_token(&self) -> Option<SyntaxToken> {
8383 support::token(&self.syntax, SyntaxKind::INHERITS_KW)
8384 }
8385}
8386
8387#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8388pub struct InitiallyDeferredConstraintOption {
8389 pub(crate) syntax: SyntaxNode,
8390}
8391impl InitiallyDeferredConstraintOption {
8392 #[inline]
8393 pub fn deferred_token(&self) -> Option<SyntaxToken> {
8394 support::token(&self.syntax, SyntaxKind::DEFERRED_KW)
8395 }
8396 #[inline]
8397 pub fn initially_token(&self) -> Option<SyntaxToken> {
8398 support::token(&self.syntax, SyntaxKind::INITIALLY_KW)
8399 }
8400}
8401
8402#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8403pub struct InitiallyImmediateConstraintOption {
8404 pub(crate) syntax: SyntaxNode,
8405}
8406impl InitiallyImmediateConstraintOption {
8407 #[inline]
8408 pub fn immediate_token(&self) -> Option<SyntaxToken> {
8409 support::token(&self.syntax, SyntaxKind::IMMEDIATE_KW)
8410 }
8411 #[inline]
8412 pub fn initially_token(&self) -> Option<SyntaxToken> {
8413 support::token(&self.syntax, SyntaxKind::INITIALLY_KW)
8414 }
8415}
8416
8417#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8418pub struct Insert {
8419 pub(crate) syntax: SyntaxNode,
8420}
8421impl Insert {
8422 #[inline]
8423 pub fn alias(&self) -> Option<Alias> {
8424 support::child(&self.syntax)
8425 }
8426 #[inline]
8427 pub fn column_list(&self) -> Option<ColumnList> {
8428 support::child(&self.syntax)
8429 }
8430 #[inline]
8431 pub fn on_conflict_clause(&self) -> Option<OnConflictClause> {
8432 support::child(&self.syntax)
8433 }
8434 #[inline]
8435 pub fn path(&self) -> Option<Path> {
8436 support::child(&self.syntax)
8437 }
8438 #[inline]
8439 pub fn returning_clause(&self) -> Option<ReturningClause> {
8440 support::child(&self.syntax)
8441 }
8442 #[inline]
8443 pub fn stmt(&self) -> Option<Stmt> {
8444 support::child(&self.syntax)
8445 }
8446 #[inline]
8447 pub fn values(&self) -> Option<Values> {
8448 support::child(&self.syntax)
8449 }
8450 #[inline]
8451 pub fn with_clause(&self) -> Option<WithClause> {
8452 support::child(&self.syntax)
8453 }
8454 #[inline]
8455 pub fn default_token(&self) -> Option<SyntaxToken> {
8456 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
8457 }
8458 #[inline]
8459 pub fn insert_token(&self) -> Option<SyntaxToken> {
8460 support::token(&self.syntax, SyntaxKind::INSERT_KW)
8461 }
8462 #[inline]
8463 pub fn into_token(&self) -> Option<SyntaxToken> {
8464 support::token(&self.syntax, SyntaxKind::INTO_KW)
8465 }
8466 #[inline]
8467 pub fn overriding_token(&self) -> Option<SyntaxToken> {
8468 support::token(&self.syntax, SyntaxKind::OVERRIDING_KW)
8469 }
8470 #[inline]
8471 pub fn system_token(&self) -> Option<SyntaxToken> {
8472 support::token(&self.syntax, SyntaxKind::SYSTEM_KW)
8473 }
8474 #[inline]
8475 pub fn user_token(&self) -> Option<SyntaxToken> {
8476 support::token(&self.syntax, SyntaxKind::USER_KW)
8477 }
8478 #[inline]
8479 pub fn value_token(&self) -> Option<SyntaxToken> {
8480 support::token(&self.syntax, SyntaxKind::VALUE_KW)
8481 }
8482 #[inline]
8483 pub fn values_token(&self) -> Option<SyntaxToken> {
8484 support::token(&self.syntax, SyntaxKind::VALUES_KW)
8485 }
8486}
8487
8488#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8489pub struct IntervalType {
8490 pub(crate) syntax: SyntaxNode,
8491}
8492impl IntervalType {
8493 #[inline]
8494 pub fn literal(&self) -> Option<Literal> {
8495 support::child(&self.syntax)
8496 }
8497 #[inline]
8498 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
8499 support::token(&self.syntax, SyntaxKind::L_PAREN)
8500 }
8501 #[inline]
8502 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
8503 support::token(&self.syntax, SyntaxKind::R_PAREN)
8504 }
8505 #[inline]
8506 pub fn day_token(&self) -> Option<SyntaxToken> {
8507 support::token(&self.syntax, SyntaxKind::DAY_KW)
8508 }
8509 #[inline]
8510 pub fn hour_token(&self) -> Option<SyntaxToken> {
8511 support::token(&self.syntax, SyntaxKind::HOUR_KW)
8512 }
8513 #[inline]
8514 pub fn interval_token(&self) -> Option<SyntaxToken> {
8515 support::token(&self.syntax, SyntaxKind::INTERVAL_KW)
8516 }
8517 #[inline]
8518 pub fn minute_token(&self) -> Option<SyntaxToken> {
8519 support::token(&self.syntax, SyntaxKind::MINUTE_KW)
8520 }
8521 #[inline]
8522 pub fn month_token(&self) -> Option<SyntaxToken> {
8523 support::token(&self.syntax, SyntaxKind::MONTH_KW)
8524 }
8525 #[inline]
8526 pub fn second_token(&self) -> Option<SyntaxToken> {
8527 support::token(&self.syntax, SyntaxKind::SECOND_KW)
8528 }
8529 #[inline]
8530 pub fn to_token(&self) -> Option<SyntaxToken> {
8531 support::token(&self.syntax, SyntaxKind::TO_KW)
8532 }
8533 #[inline]
8534 pub fn year_token(&self) -> Option<SyntaxToken> {
8535 support::token(&self.syntax, SyntaxKind::YEAR_KW)
8536 }
8537}
8538
8539#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8540pub struct IntoClause {
8541 pub(crate) syntax: SyntaxNode,
8542}
8543impl IntoClause {
8544 #[inline]
8545 pub fn path(&self) -> Option<Path> {
8546 support::child(&self.syntax)
8547 }
8548 #[inline]
8549 pub fn into_token(&self) -> Option<SyntaxToken> {
8550 support::token(&self.syntax, SyntaxKind::INTO_KW)
8551 }
8552}
8553
8554#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8555pub struct IntoSchema {
8556 pub(crate) syntax: SyntaxNode,
8557}
8558impl IntoSchema {
8559 #[inline]
8560 pub fn name_ref(&self) -> Option<NameRef> {
8561 support::child(&self.syntax)
8562 }
8563 #[inline]
8564 pub fn into_token(&self) -> Option<SyntaxToken> {
8565 support::token(&self.syntax, SyntaxKind::INTO_KW)
8566 }
8567}
8568
8569#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8570pub struct IsDistinctFrom {
8571 pub(crate) syntax: SyntaxNode,
8572}
8573impl IsDistinctFrom {
8574 #[inline]
8575 pub fn distinct_token(&self) -> Option<SyntaxToken> {
8576 support::token(&self.syntax, SyntaxKind::DISTINCT_KW)
8577 }
8578 #[inline]
8579 pub fn from_token(&self) -> Option<SyntaxToken> {
8580 support::token(&self.syntax, SyntaxKind::FROM_KW)
8581 }
8582 #[inline]
8583 pub fn is_token(&self) -> Option<SyntaxToken> {
8584 support::token(&self.syntax, SyntaxKind::IS_KW)
8585 }
8586}
8587
8588#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8589pub struct IsJson {
8590 pub(crate) syntax: SyntaxNode,
8591}
8592impl IsJson {
8593 #[inline]
8594 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
8595 support::child(&self.syntax)
8596 }
8597 #[inline]
8598 pub fn is_token(&self) -> Option<SyntaxToken> {
8599 support::token(&self.syntax, SyntaxKind::IS_KW)
8600 }
8601 #[inline]
8602 pub fn json_token(&self) -> Option<SyntaxToken> {
8603 support::token(&self.syntax, SyntaxKind::JSON_KW)
8604 }
8605}
8606
8607#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8608pub struct IsJsonArray {
8609 pub(crate) syntax: SyntaxNode,
8610}
8611impl IsJsonArray {
8612 #[inline]
8613 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
8614 support::child(&self.syntax)
8615 }
8616 #[inline]
8617 pub fn array_token(&self) -> Option<SyntaxToken> {
8618 support::token(&self.syntax, SyntaxKind::ARRAY_KW)
8619 }
8620 #[inline]
8621 pub fn is_token(&self) -> Option<SyntaxToken> {
8622 support::token(&self.syntax, SyntaxKind::IS_KW)
8623 }
8624 #[inline]
8625 pub fn json_token(&self) -> Option<SyntaxToken> {
8626 support::token(&self.syntax, SyntaxKind::JSON_KW)
8627 }
8628}
8629
8630#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8631pub struct IsJsonObject {
8632 pub(crate) syntax: SyntaxNode,
8633}
8634impl IsJsonObject {
8635 #[inline]
8636 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
8637 support::child(&self.syntax)
8638 }
8639 #[inline]
8640 pub fn is_token(&self) -> Option<SyntaxToken> {
8641 support::token(&self.syntax, SyntaxKind::IS_KW)
8642 }
8643 #[inline]
8644 pub fn json_token(&self) -> Option<SyntaxToken> {
8645 support::token(&self.syntax, SyntaxKind::JSON_KW)
8646 }
8647 #[inline]
8648 pub fn object_token(&self) -> Option<SyntaxToken> {
8649 support::token(&self.syntax, SyntaxKind::OBJECT_KW)
8650 }
8651}
8652
8653#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8654pub struct IsJsonScalar {
8655 pub(crate) syntax: SyntaxNode,
8656}
8657impl IsJsonScalar {
8658 #[inline]
8659 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
8660 support::child(&self.syntax)
8661 }
8662 #[inline]
8663 pub fn is_token(&self) -> Option<SyntaxToken> {
8664 support::token(&self.syntax, SyntaxKind::IS_KW)
8665 }
8666 #[inline]
8667 pub fn json_token(&self) -> Option<SyntaxToken> {
8668 support::token(&self.syntax, SyntaxKind::JSON_KW)
8669 }
8670 #[inline]
8671 pub fn scalar_token(&self) -> Option<SyntaxToken> {
8672 support::token(&self.syntax, SyntaxKind::SCALAR_KW)
8673 }
8674}
8675
8676#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8677pub struct IsJsonValue {
8678 pub(crate) syntax: SyntaxNode,
8679}
8680impl IsJsonValue {
8681 #[inline]
8682 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
8683 support::child(&self.syntax)
8684 }
8685 #[inline]
8686 pub fn is_token(&self) -> Option<SyntaxToken> {
8687 support::token(&self.syntax, SyntaxKind::IS_KW)
8688 }
8689 #[inline]
8690 pub fn json_token(&self) -> Option<SyntaxToken> {
8691 support::token(&self.syntax, SyntaxKind::JSON_KW)
8692 }
8693 #[inline]
8694 pub fn value_token(&self) -> Option<SyntaxToken> {
8695 support::token(&self.syntax, SyntaxKind::VALUE_KW)
8696 }
8697}
8698
8699#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8700pub struct IsNormalized {
8701 pub(crate) syntax: SyntaxNode,
8702}
8703impl IsNormalized {
8704 #[inline]
8705 pub fn unicode_normal_form(&self) -> Option<UnicodeNormalForm> {
8706 support::child(&self.syntax)
8707 }
8708 #[inline]
8709 pub fn is_token(&self) -> Option<SyntaxToken> {
8710 support::token(&self.syntax, SyntaxKind::IS_KW)
8711 }
8712 #[inline]
8713 pub fn normalized_token(&self) -> Option<SyntaxToken> {
8714 support::token(&self.syntax, SyntaxKind::NORMALIZED_KW)
8715 }
8716}
8717
8718#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8719pub struct IsNot {
8720 pub(crate) syntax: SyntaxNode,
8721}
8722impl IsNot {
8723 #[inline]
8724 pub fn is_token(&self) -> Option<SyntaxToken> {
8725 support::token(&self.syntax, SyntaxKind::IS_KW)
8726 }
8727 #[inline]
8728 pub fn not_token(&self) -> Option<SyntaxToken> {
8729 support::token(&self.syntax, SyntaxKind::NOT_KW)
8730 }
8731}
8732
8733#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8734pub struct IsNotDistinctFrom {
8735 pub(crate) syntax: SyntaxNode,
8736}
8737impl IsNotDistinctFrom {
8738 #[inline]
8739 pub fn distinct_token(&self) -> Option<SyntaxToken> {
8740 support::token(&self.syntax, SyntaxKind::DISTINCT_KW)
8741 }
8742 #[inline]
8743 pub fn from_token(&self) -> Option<SyntaxToken> {
8744 support::token(&self.syntax, SyntaxKind::FROM_KW)
8745 }
8746 #[inline]
8747 pub fn is_token(&self) -> Option<SyntaxToken> {
8748 support::token(&self.syntax, SyntaxKind::IS_KW)
8749 }
8750 #[inline]
8751 pub fn not_token(&self) -> Option<SyntaxToken> {
8752 support::token(&self.syntax, SyntaxKind::NOT_KW)
8753 }
8754}
8755
8756#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8757pub struct IsNotJson {
8758 pub(crate) syntax: SyntaxNode,
8759}
8760impl IsNotJson {
8761 #[inline]
8762 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
8763 support::child(&self.syntax)
8764 }
8765 #[inline]
8766 pub fn is_token(&self) -> Option<SyntaxToken> {
8767 support::token(&self.syntax, SyntaxKind::IS_KW)
8768 }
8769 #[inline]
8770 pub fn json_token(&self) -> Option<SyntaxToken> {
8771 support::token(&self.syntax, SyntaxKind::JSON_KW)
8772 }
8773 #[inline]
8774 pub fn not_token(&self) -> Option<SyntaxToken> {
8775 support::token(&self.syntax, SyntaxKind::NOT_KW)
8776 }
8777}
8778
8779#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8780pub struct IsNotJsonArray {
8781 pub(crate) syntax: SyntaxNode,
8782}
8783impl IsNotJsonArray {
8784 #[inline]
8785 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
8786 support::child(&self.syntax)
8787 }
8788 #[inline]
8789 pub fn array_token(&self) -> Option<SyntaxToken> {
8790 support::token(&self.syntax, SyntaxKind::ARRAY_KW)
8791 }
8792 #[inline]
8793 pub fn is_token(&self) -> Option<SyntaxToken> {
8794 support::token(&self.syntax, SyntaxKind::IS_KW)
8795 }
8796 #[inline]
8797 pub fn json_token(&self) -> Option<SyntaxToken> {
8798 support::token(&self.syntax, SyntaxKind::JSON_KW)
8799 }
8800 #[inline]
8801 pub fn not_token(&self) -> Option<SyntaxToken> {
8802 support::token(&self.syntax, SyntaxKind::NOT_KW)
8803 }
8804}
8805
8806#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8807pub struct IsNotJsonObject {
8808 pub(crate) syntax: SyntaxNode,
8809}
8810impl IsNotJsonObject {
8811 #[inline]
8812 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
8813 support::child(&self.syntax)
8814 }
8815 #[inline]
8816 pub fn is_token(&self) -> Option<SyntaxToken> {
8817 support::token(&self.syntax, SyntaxKind::IS_KW)
8818 }
8819 #[inline]
8820 pub fn json_token(&self) -> Option<SyntaxToken> {
8821 support::token(&self.syntax, SyntaxKind::JSON_KW)
8822 }
8823 #[inline]
8824 pub fn not_token(&self) -> Option<SyntaxToken> {
8825 support::token(&self.syntax, SyntaxKind::NOT_KW)
8826 }
8827 #[inline]
8828 pub fn object_token(&self) -> Option<SyntaxToken> {
8829 support::token(&self.syntax, SyntaxKind::OBJECT_KW)
8830 }
8831}
8832
8833#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8834pub struct IsNotJsonScalar {
8835 pub(crate) syntax: SyntaxNode,
8836}
8837impl IsNotJsonScalar {
8838 #[inline]
8839 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
8840 support::child(&self.syntax)
8841 }
8842 #[inline]
8843 pub fn is_token(&self) -> Option<SyntaxToken> {
8844 support::token(&self.syntax, SyntaxKind::IS_KW)
8845 }
8846 #[inline]
8847 pub fn json_token(&self) -> Option<SyntaxToken> {
8848 support::token(&self.syntax, SyntaxKind::JSON_KW)
8849 }
8850 #[inline]
8851 pub fn not_token(&self) -> Option<SyntaxToken> {
8852 support::token(&self.syntax, SyntaxKind::NOT_KW)
8853 }
8854 #[inline]
8855 pub fn scalar_token(&self) -> Option<SyntaxToken> {
8856 support::token(&self.syntax, SyntaxKind::SCALAR_KW)
8857 }
8858}
8859
8860#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8861pub struct IsNotJsonValue {
8862 pub(crate) syntax: SyntaxNode,
8863}
8864impl IsNotJsonValue {
8865 #[inline]
8866 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
8867 support::child(&self.syntax)
8868 }
8869 #[inline]
8870 pub fn is_token(&self) -> Option<SyntaxToken> {
8871 support::token(&self.syntax, SyntaxKind::IS_KW)
8872 }
8873 #[inline]
8874 pub fn json_token(&self) -> Option<SyntaxToken> {
8875 support::token(&self.syntax, SyntaxKind::JSON_KW)
8876 }
8877 #[inline]
8878 pub fn not_token(&self) -> Option<SyntaxToken> {
8879 support::token(&self.syntax, SyntaxKind::NOT_KW)
8880 }
8881 #[inline]
8882 pub fn value_token(&self) -> Option<SyntaxToken> {
8883 support::token(&self.syntax, SyntaxKind::VALUE_KW)
8884 }
8885}
8886
8887#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8888pub struct IsNotNormalized {
8889 pub(crate) syntax: SyntaxNode,
8890}
8891impl IsNotNormalized {
8892 #[inline]
8893 pub fn unicode_normal_form(&self) -> Option<UnicodeNormalForm> {
8894 support::child(&self.syntax)
8895 }
8896 #[inline]
8897 pub fn is_token(&self) -> Option<SyntaxToken> {
8898 support::token(&self.syntax, SyntaxKind::IS_KW)
8899 }
8900 #[inline]
8901 pub fn normalized_token(&self) -> Option<SyntaxToken> {
8902 support::token(&self.syntax, SyntaxKind::NORMALIZED_KW)
8903 }
8904 #[inline]
8905 pub fn not_token(&self) -> Option<SyntaxToken> {
8906 support::token(&self.syntax, SyntaxKind::NOT_KW)
8907 }
8908}
8909
8910#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8911pub struct Join {
8912 pub(crate) syntax: SyntaxNode,
8913}
8914impl Join {
8915 #[inline]
8916 pub fn from_item(&self) -> Option<FromItem> {
8917 support::child(&self.syntax)
8918 }
8919 #[inline]
8920 pub fn join_type(&self) -> Option<JoinType> {
8921 support::child(&self.syntax)
8922 }
8923 #[inline]
8924 pub fn on_clause(&self) -> Option<OnClause> {
8925 support::child(&self.syntax)
8926 }
8927 #[inline]
8928 pub fn using_clause(&self) -> Option<JoinUsingClause> {
8929 support::child(&self.syntax)
8930 }
8931 #[inline]
8932 pub fn natural_token(&self) -> Option<SyntaxToken> {
8933 support::token(&self.syntax, SyntaxKind::NATURAL_KW)
8934 }
8935}
8936
8937#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8938pub struct JoinCross {
8939 pub(crate) syntax: SyntaxNode,
8940}
8941impl JoinCross {
8942 #[inline]
8943 pub fn cross_token(&self) -> Option<SyntaxToken> {
8944 support::token(&self.syntax, SyntaxKind::CROSS_KW)
8945 }
8946 #[inline]
8947 pub fn join_token(&self) -> Option<SyntaxToken> {
8948 support::token(&self.syntax, SyntaxKind::JOIN_KW)
8949 }
8950}
8951
8952#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8953pub struct JoinExpr {
8954 pub(crate) syntax: SyntaxNode,
8955}
8956impl JoinExpr {
8957 #[inline]
8958 pub fn from_item(&self) -> Option<FromItem> {
8959 support::child(&self.syntax)
8960 }
8961 #[inline]
8962 pub fn join(&self) -> Option<Join> {
8963 support::child(&self.syntax)
8964 }
8965 #[inline]
8966 pub fn join_expr(&self) -> Option<JoinExpr> {
8967 support::child(&self.syntax)
8968 }
8969}
8970
8971#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8972pub struct JoinFull {
8973 pub(crate) syntax: SyntaxNode,
8974}
8975impl JoinFull {
8976 #[inline]
8977 pub fn full_token(&self) -> Option<SyntaxToken> {
8978 support::token(&self.syntax, SyntaxKind::FULL_KW)
8979 }
8980 #[inline]
8981 pub fn join_token(&self) -> Option<SyntaxToken> {
8982 support::token(&self.syntax, SyntaxKind::JOIN_KW)
8983 }
8984 #[inline]
8985 pub fn outer_token(&self) -> Option<SyntaxToken> {
8986 support::token(&self.syntax, SyntaxKind::OUTER_KW)
8987 }
8988}
8989
8990#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8991pub struct JoinInner {
8992 pub(crate) syntax: SyntaxNode,
8993}
8994impl JoinInner {
8995 #[inline]
8996 pub fn inner_token(&self) -> Option<SyntaxToken> {
8997 support::token(&self.syntax, SyntaxKind::INNER_KW)
8998 }
8999 #[inline]
9000 pub fn join_token(&self) -> Option<SyntaxToken> {
9001 support::token(&self.syntax, SyntaxKind::JOIN_KW)
9002 }
9003}
9004
9005#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9006pub struct JoinLeft {
9007 pub(crate) syntax: SyntaxNode,
9008}
9009impl JoinLeft {
9010 #[inline]
9011 pub fn join_token(&self) -> Option<SyntaxToken> {
9012 support::token(&self.syntax, SyntaxKind::JOIN_KW)
9013 }
9014 #[inline]
9015 pub fn left_token(&self) -> Option<SyntaxToken> {
9016 support::token(&self.syntax, SyntaxKind::LEFT_KW)
9017 }
9018 #[inline]
9019 pub fn outer_token(&self) -> Option<SyntaxToken> {
9020 support::token(&self.syntax, SyntaxKind::OUTER_KW)
9021 }
9022}
9023
9024#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9025pub struct JoinRight {
9026 pub(crate) syntax: SyntaxNode,
9027}
9028impl JoinRight {
9029 #[inline]
9030 pub fn join_token(&self) -> Option<SyntaxToken> {
9031 support::token(&self.syntax, SyntaxKind::JOIN_KW)
9032 }
9033 #[inline]
9034 pub fn outer_token(&self) -> Option<SyntaxToken> {
9035 support::token(&self.syntax, SyntaxKind::OUTER_KW)
9036 }
9037 #[inline]
9038 pub fn right_token(&self) -> Option<SyntaxToken> {
9039 support::token(&self.syntax, SyntaxKind::RIGHT_KW)
9040 }
9041}
9042
9043#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9044pub struct JoinUsingClause {
9045 pub(crate) syntax: SyntaxNode,
9046}
9047impl JoinUsingClause {
9048 #[inline]
9049 pub fn alias(&self) -> Option<Alias> {
9050 support::child(&self.syntax)
9051 }
9052 #[inline]
9053 pub fn column_list(&self) -> Option<ColumnList> {
9054 support::child(&self.syntax)
9055 }
9056 #[inline]
9057 pub fn using_token(&self) -> Option<SyntaxToken> {
9058 support::token(&self.syntax, SyntaxKind::USING_KW)
9059 }
9060}
9061
9062#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9063pub struct JsonArrayAggFn {
9064 pub(crate) syntax: SyntaxNode,
9065}
9066impl JsonArrayAggFn {
9067 #[inline]
9068 pub fn expr(&self) -> Option<Expr> {
9069 support::child(&self.syntax)
9070 }
9071 #[inline]
9072 pub fn json_null_clause(&self) -> Option<JsonNullClause> {
9073 support::child(&self.syntax)
9074 }
9075 #[inline]
9076 pub fn json_returning_clause(&self) -> Option<JsonReturningClause> {
9077 support::child(&self.syntax)
9078 }
9079 #[inline]
9080 pub fn json_select_formats(&self) -> AstChildren<JsonSelectFormat> {
9081 support::children(&self.syntax)
9082 }
9083 #[inline]
9084 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
9085 support::token(&self.syntax, SyntaxKind::L_PAREN)
9086 }
9087 #[inline]
9088 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
9089 support::token(&self.syntax, SyntaxKind::R_PAREN)
9090 }
9091 #[inline]
9092 pub fn json_arrayagg_token(&self) -> Option<SyntaxToken> {
9093 support::token(&self.syntax, SyntaxKind::JSON_ARRAYAGG_KW)
9094 }
9095}
9096
9097#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9098pub struct JsonArrayFn {
9099 pub(crate) syntax: SyntaxNode,
9100}
9101impl JsonArrayFn {
9102 #[inline]
9103 pub fn json_expr_formats(&self) -> AstChildren<JsonExprFormat> {
9104 support::children(&self.syntax)
9105 }
9106 #[inline]
9107 pub fn json_null_clause(&self) -> Option<JsonNullClause> {
9108 support::child(&self.syntax)
9109 }
9110 #[inline]
9111 pub fn json_returning_clause(&self) -> Option<JsonReturningClause> {
9112 support::child(&self.syntax)
9113 }
9114 #[inline]
9115 pub fn json_select_formats(&self) -> AstChildren<JsonSelectFormat> {
9116 support::children(&self.syntax)
9117 }
9118 #[inline]
9119 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
9120 support::token(&self.syntax, SyntaxKind::L_PAREN)
9121 }
9122 #[inline]
9123 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
9124 support::token(&self.syntax, SyntaxKind::R_PAREN)
9125 }
9126 #[inline]
9127 pub fn json_array_token(&self) -> Option<SyntaxToken> {
9128 support::token(&self.syntax, SyntaxKind::JSON_ARRAY_KW)
9129 }
9130}
9131
9132#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9133pub struct JsonBehaviorClause {
9134 pub(crate) syntax: SyntaxNode,
9135}
9136impl JsonBehaviorClause {
9137 #[inline]
9138 pub fn json_behavior(&self) -> Option<JsonBehavior> {
9139 support::child(&self.syntax)
9140 }
9141}
9142
9143#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9144pub struct JsonBehaviorDefault {
9145 pub(crate) syntax: SyntaxNode,
9146}
9147impl JsonBehaviorDefault {
9148 #[inline]
9149 pub fn expr(&self) -> Option<Expr> {
9150 support::child(&self.syntax)
9151 }
9152 #[inline]
9153 pub fn default_token(&self) -> Option<SyntaxToken> {
9154 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
9155 }
9156}
9157
9158#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9159pub struct JsonBehaviorEmptyArray {
9160 pub(crate) syntax: SyntaxNode,
9161}
9162impl JsonBehaviorEmptyArray {
9163 #[inline]
9164 pub fn array_token(&self) -> Option<SyntaxToken> {
9165 support::token(&self.syntax, SyntaxKind::ARRAY_KW)
9166 }
9167 #[inline]
9168 pub fn empty_token(&self) -> Option<SyntaxToken> {
9169 support::token(&self.syntax, SyntaxKind::EMPTY_KW)
9170 }
9171}
9172
9173#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9174pub struct JsonBehaviorEmptyObject {
9175 pub(crate) syntax: SyntaxNode,
9176}
9177impl JsonBehaviorEmptyObject {
9178 #[inline]
9179 pub fn empty_token(&self) -> Option<SyntaxToken> {
9180 support::token(&self.syntax, SyntaxKind::EMPTY_KW)
9181 }
9182 #[inline]
9183 pub fn object_token(&self) -> Option<SyntaxToken> {
9184 support::token(&self.syntax, SyntaxKind::OBJECT_KW)
9185 }
9186}
9187
9188#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9189pub struct JsonBehaviorError {
9190 pub(crate) syntax: SyntaxNode,
9191}
9192impl JsonBehaviorError {
9193 #[inline]
9194 pub fn error_token(&self) -> Option<SyntaxToken> {
9195 support::token(&self.syntax, SyntaxKind::ERROR_KW)
9196 }
9197}
9198
9199#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9200pub struct JsonBehaviorFalse {
9201 pub(crate) syntax: SyntaxNode,
9202}
9203impl JsonBehaviorFalse {
9204 #[inline]
9205 pub fn false_token(&self) -> Option<SyntaxToken> {
9206 support::token(&self.syntax, SyntaxKind::FALSE_KW)
9207 }
9208}
9209
9210#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9211pub struct JsonBehaviorNull {
9212 pub(crate) syntax: SyntaxNode,
9213}
9214impl JsonBehaviorNull {
9215 #[inline]
9216 pub fn null_token(&self) -> Option<SyntaxToken> {
9217 support::token(&self.syntax, SyntaxKind::NULL_KW)
9218 }
9219}
9220
9221#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9222pub struct JsonBehaviorTrue {
9223 pub(crate) syntax: SyntaxNode,
9224}
9225impl JsonBehaviorTrue {
9226 #[inline]
9227 pub fn true_token(&self) -> Option<SyntaxToken> {
9228 support::token(&self.syntax, SyntaxKind::TRUE_KW)
9229 }
9230}
9231
9232#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9233pub struct JsonBehaviorUnknown {
9234 pub(crate) syntax: SyntaxNode,
9235}
9236impl JsonBehaviorUnknown {
9237 #[inline]
9238 pub fn unknown_token(&self) -> Option<SyntaxToken> {
9239 support::token(&self.syntax, SyntaxKind::UNKNOWN_KW)
9240 }
9241}
9242
9243#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9244pub struct JsonEncodingClause {
9245 pub(crate) syntax: SyntaxNode,
9246}
9247impl JsonEncodingClause {
9248 #[inline]
9249 pub fn name_ref(&self) -> Option<NameRef> {
9250 support::child(&self.syntax)
9251 }
9252 #[inline]
9253 pub fn encoding_token(&self) -> Option<SyntaxToken> {
9254 support::token(&self.syntax, SyntaxKind::ENCODING_KW)
9255 }
9256}
9257
9258#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9259pub struct JsonExistsFn {
9260 pub(crate) syntax: SyntaxNode,
9261}
9262impl JsonExistsFn {
9263 #[inline]
9264 pub fn expr(&self) -> Option<Expr> {
9265 support::child(&self.syntax)
9266 }
9267 #[inline]
9268 pub fn json_format_clause(&self) -> Option<JsonFormatClause> {
9269 support::child(&self.syntax)
9270 }
9271 #[inline]
9272 pub fn json_on_error_clause(&self) -> Option<JsonOnErrorClause> {
9273 support::child(&self.syntax)
9274 }
9275 #[inline]
9276 pub fn json_passing_clause(&self) -> Option<JsonPassingClause> {
9277 support::child(&self.syntax)
9278 }
9279 #[inline]
9280 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
9281 support::token(&self.syntax, SyntaxKind::L_PAREN)
9282 }
9283 #[inline]
9284 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
9285 support::token(&self.syntax, SyntaxKind::R_PAREN)
9286 }
9287 #[inline]
9288 pub fn comma_token(&self) -> Option<SyntaxToken> {
9289 support::token(&self.syntax, SyntaxKind::COMMA)
9290 }
9291 #[inline]
9292 pub fn json_exists_token(&self) -> Option<SyntaxToken> {
9293 support::token(&self.syntax, SyntaxKind::JSON_EXISTS_KW)
9294 }
9295}
9296
9297#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9298pub struct JsonExprFormat {
9299 pub(crate) syntax: SyntaxNode,
9300}
9301impl JsonExprFormat {
9302 #[inline]
9303 pub fn expr(&self) -> Option<Expr> {
9304 support::child(&self.syntax)
9305 }
9306 #[inline]
9307 pub fn json_format_clause(&self) -> Option<JsonFormatClause> {
9308 support::child(&self.syntax)
9309 }
9310}
9311
9312#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9313pub struct JsonFn {
9314 pub(crate) syntax: SyntaxNode,
9315}
9316impl JsonFn {
9317 #[inline]
9318 pub fn json_expr_format(&self) -> Option<JsonExprFormat> {
9319 support::child(&self.syntax)
9320 }
9321 #[inline]
9322 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
9323 support::child(&self.syntax)
9324 }
9325 #[inline]
9326 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
9327 support::token(&self.syntax, SyntaxKind::L_PAREN)
9328 }
9329 #[inline]
9330 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
9331 support::token(&self.syntax, SyntaxKind::R_PAREN)
9332 }
9333 #[inline]
9334 pub fn json_token(&self) -> Option<SyntaxToken> {
9335 support::token(&self.syntax, SyntaxKind::JSON_KW)
9336 }
9337}
9338
9339#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9340pub struct JsonFormatClause {
9341 pub(crate) syntax: SyntaxNode,
9342}
9343impl JsonFormatClause {
9344 #[inline]
9345 pub fn json_encoding_clause(&self) -> Option<JsonEncodingClause> {
9346 support::child(&self.syntax)
9347 }
9348 #[inline]
9349 pub fn format_token(&self) -> Option<SyntaxToken> {
9350 support::token(&self.syntax, SyntaxKind::FORMAT_KW)
9351 }
9352 #[inline]
9353 pub fn json_token(&self) -> Option<SyntaxToken> {
9354 support::token(&self.syntax, SyntaxKind::JSON_KW)
9355 }
9356}
9357
9358#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9359pub struct JsonKeyValue {
9360 pub(crate) syntax: SyntaxNode,
9361}
9362impl JsonKeyValue {
9363 #[inline]
9364 pub fn expr(&self) -> Option<Expr> {
9365 support::child(&self.syntax)
9366 }
9367 #[inline]
9368 pub fn json_value_expr(&self) -> Option<JsonValueExpr> {
9369 support::child(&self.syntax)
9370 }
9371 #[inline]
9372 pub fn colon_token(&self) -> Option<SyntaxToken> {
9373 support::token(&self.syntax, SyntaxKind::COLON)
9374 }
9375}
9376
9377#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9378pub struct JsonKeysUniqueClause {
9379 pub(crate) syntax: SyntaxNode,
9380}
9381impl JsonKeysUniqueClause {
9382 #[inline]
9383 pub fn keys_token(&self) -> Option<SyntaxToken> {
9384 support::token(&self.syntax, SyntaxKind::KEYS_KW)
9385 }
9386 #[inline]
9387 pub fn unique_token(&self) -> Option<SyntaxToken> {
9388 support::token(&self.syntax, SyntaxKind::UNIQUE_KW)
9389 }
9390 #[inline]
9391 pub fn with_token(&self) -> Option<SyntaxToken> {
9392 support::token(&self.syntax, SyntaxKind::WITH_KW)
9393 }
9394 #[inline]
9395 pub fn without_token(&self) -> Option<SyntaxToken> {
9396 support::token(&self.syntax, SyntaxKind::WITHOUT_KW)
9397 }
9398}
9399
9400#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9401pub struct JsonNullClause {
9402 pub(crate) syntax: SyntaxNode,
9403}
9404impl JsonNullClause {
9405 #[inline]
9406 pub fn absent_token(&self) -> Option<SyntaxToken> {
9407 support::token(&self.syntax, SyntaxKind::ABSENT_KW)
9408 }
9409 #[inline]
9410 pub fn null_token(&self) -> Option<SyntaxToken> {
9411 support::token(&self.syntax, SyntaxKind::NULL_KW)
9412 }
9413 #[inline]
9414 pub fn on_token(&self) -> Option<SyntaxToken> {
9415 support::token(&self.syntax, SyntaxKind::ON_KW)
9416 }
9417}
9418
9419#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9420pub struct JsonObjectAggFn {
9421 pub(crate) syntax: SyntaxNode,
9422}
9423impl JsonObjectAggFn {
9424 #[inline]
9425 pub fn json_key_value(&self) -> Option<JsonKeyValue> {
9426 support::child(&self.syntax)
9427 }
9428 #[inline]
9429 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
9430 support::child(&self.syntax)
9431 }
9432 #[inline]
9433 pub fn json_null_clause(&self) -> Option<JsonNullClause> {
9434 support::child(&self.syntax)
9435 }
9436 #[inline]
9437 pub fn json_returning_clause(&self) -> Option<JsonReturningClause> {
9438 support::child(&self.syntax)
9439 }
9440 #[inline]
9441 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
9442 support::token(&self.syntax, SyntaxKind::L_PAREN)
9443 }
9444 #[inline]
9445 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
9446 support::token(&self.syntax, SyntaxKind::R_PAREN)
9447 }
9448 #[inline]
9449 pub fn json_objectagg_token(&self) -> Option<SyntaxToken> {
9450 support::token(&self.syntax, SyntaxKind::JSON_OBJECTAGG_KW)
9451 }
9452}
9453
9454#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9455pub struct JsonObjectFn {
9456 pub(crate) syntax: SyntaxNode,
9457}
9458impl JsonObjectFn {
9459 #[inline]
9460 pub fn json_key_values(&self) -> AstChildren<JsonKeyValue> {
9461 support::children(&self.syntax)
9462 }
9463 #[inline]
9464 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
9465 support::child(&self.syntax)
9466 }
9467 #[inline]
9468 pub fn json_null_clause(&self) -> Option<JsonNullClause> {
9469 support::child(&self.syntax)
9470 }
9471 #[inline]
9472 pub fn json_returning_clause(&self) -> Option<JsonReturningClause> {
9473 support::child(&self.syntax)
9474 }
9475 #[inline]
9476 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
9477 support::token(&self.syntax, SyntaxKind::L_PAREN)
9478 }
9479 #[inline]
9480 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
9481 support::token(&self.syntax, SyntaxKind::R_PAREN)
9482 }
9483 #[inline]
9484 pub fn json_object_token(&self) -> Option<SyntaxToken> {
9485 support::token(&self.syntax, SyntaxKind::JSON_OBJECT_KW)
9486 }
9487}
9488
9489#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9490pub struct JsonOnEmptyClause {
9491 pub(crate) syntax: SyntaxNode,
9492}
9493impl JsonOnEmptyClause {
9494 #[inline]
9495 pub fn json_behavior(&self) -> Option<JsonBehavior> {
9496 support::child(&self.syntax)
9497 }
9498 #[inline]
9499 pub fn empty_token(&self) -> Option<SyntaxToken> {
9500 support::token(&self.syntax, SyntaxKind::EMPTY_KW)
9501 }
9502 #[inline]
9503 pub fn on_token(&self) -> Option<SyntaxToken> {
9504 support::token(&self.syntax, SyntaxKind::ON_KW)
9505 }
9506}
9507
9508#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9509pub struct JsonOnErrorClause {
9510 pub(crate) syntax: SyntaxNode,
9511}
9512impl JsonOnErrorClause {
9513 #[inline]
9514 pub fn json_behavior(&self) -> Option<JsonBehavior> {
9515 support::child(&self.syntax)
9516 }
9517 #[inline]
9518 pub fn error_token(&self) -> Option<SyntaxToken> {
9519 support::token(&self.syntax, SyntaxKind::ERROR_KW)
9520 }
9521 #[inline]
9522 pub fn on_token(&self) -> Option<SyntaxToken> {
9523 support::token(&self.syntax, SyntaxKind::ON_KW)
9524 }
9525}
9526
9527#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9528pub struct JsonPassingArg {
9529 pub(crate) syntax: SyntaxNode,
9530}
9531impl JsonPassingArg {
9532 #[inline]
9533 pub fn expr(&self) -> Option<Expr> {
9534 support::child(&self.syntax)
9535 }
9536}
9537
9538#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9539pub struct JsonPassingClause {
9540 pub(crate) syntax: SyntaxNode,
9541}
9542impl JsonPassingClause {
9543 #[inline]
9544 pub fn json_passing_args(&self) -> AstChildren<JsonPassingArg> {
9545 support::children(&self.syntax)
9546 }
9547 #[inline]
9548 pub fn passing_token(&self) -> Option<SyntaxToken> {
9549 support::token(&self.syntax, SyntaxKind::PASSING_KW)
9550 }
9551}
9552
9553#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9554pub struct JsonPathClause {
9555 pub(crate) syntax: SyntaxNode,
9556}
9557impl JsonPathClause {
9558 #[inline]
9559 pub fn expr(&self) -> Option<Expr> {
9560 support::child(&self.syntax)
9561 }
9562 #[inline]
9563 pub fn path_token(&self) -> Option<SyntaxToken> {
9564 support::token(&self.syntax, SyntaxKind::PATH_KW)
9565 }
9566}
9567
9568#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9569pub struct JsonQueryFn {
9570 pub(crate) syntax: SyntaxNode,
9571}
9572impl JsonQueryFn {
9573 #[inline]
9574 pub fn expr(&self) -> Option<Expr> {
9575 support::child(&self.syntax)
9576 }
9577 #[inline]
9578 pub fn json_behavior_clause(&self) -> Option<JsonBehaviorClause> {
9579 support::child(&self.syntax)
9580 }
9581 #[inline]
9582 pub fn json_format_clause(&self) -> Option<JsonFormatClause> {
9583 support::child(&self.syntax)
9584 }
9585 #[inline]
9586 pub fn json_passing_clause(&self) -> Option<JsonPassingClause> {
9587 support::child(&self.syntax)
9588 }
9589 #[inline]
9590 pub fn json_quotes_clause(&self) -> Option<JsonQuotesClause> {
9591 support::child(&self.syntax)
9592 }
9593 #[inline]
9594 pub fn json_returning_clause(&self) -> Option<JsonReturningClause> {
9595 support::child(&self.syntax)
9596 }
9597 #[inline]
9598 pub fn json_wrapper_behavior_clause(&self) -> Option<JsonWrapperBehaviorClause> {
9599 support::child(&self.syntax)
9600 }
9601 #[inline]
9602 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
9603 support::token(&self.syntax, SyntaxKind::L_PAREN)
9604 }
9605 #[inline]
9606 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
9607 support::token(&self.syntax, SyntaxKind::R_PAREN)
9608 }
9609 #[inline]
9610 pub fn comma_token(&self) -> Option<SyntaxToken> {
9611 support::token(&self.syntax, SyntaxKind::COMMA)
9612 }
9613 #[inline]
9614 pub fn json_query_token(&self) -> Option<SyntaxToken> {
9615 support::token(&self.syntax, SyntaxKind::JSON_QUERY_KW)
9616 }
9617}
9618
9619#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9620pub struct JsonQuotesClause {
9621 pub(crate) syntax: SyntaxNode,
9622}
9623impl JsonQuotesClause {
9624 #[inline]
9625 pub fn keep_token(&self) -> Option<SyntaxToken> {
9626 support::token(&self.syntax, SyntaxKind::KEEP_KW)
9627 }
9628 #[inline]
9629 pub fn omit_token(&self) -> Option<SyntaxToken> {
9630 support::token(&self.syntax, SyntaxKind::OMIT_KW)
9631 }
9632 #[inline]
9633 pub fn quotes_token(&self) -> Option<SyntaxToken> {
9634 support::token(&self.syntax, SyntaxKind::QUOTES_KW)
9635 }
9636}
9637
9638#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9639pub struct JsonReturningClause {
9640 pub(crate) syntax: SyntaxNode,
9641}
9642impl JsonReturningClause {
9643 #[inline]
9644 pub fn ty(&self) -> Option<Type> {
9645 support::child(&self.syntax)
9646 }
9647 #[inline]
9648 pub fn returning_token(&self) -> Option<SyntaxToken> {
9649 support::token(&self.syntax, SyntaxKind::RETURNING_KW)
9650 }
9651}
9652
9653#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9654pub struct JsonScalarFn {
9655 pub(crate) syntax: SyntaxNode,
9656}
9657impl JsonScalarFn {
9658 #[inline]
9659 pub fn expr(&self) -> Option<Expr> {
9660 support::child(&self.syntax)
9661 }
9662 #[inline]
9663 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
9664 support::token(&self.syntax, SyntaxKind::L_PAREN)
9665 }
9666 #[inline]
9667 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
9668 support::token(&self.syntax, SyntaxKind::R_PAREN)
9669 }
9670 #[inline]
9671 pub fn json_scalar_token(&self) -> Option<SyntaxToken> {
9672 support::token(&self.syntax, SyntaxKind::JSON_SCALAR_KW)
9673 }
9674}
9675
9676#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9677pub struct JsonSelectFormat {
9678 pub(crate) syntax: SyntaxNode,
9679}
9680impl JsonSelectFormat {
9681 #[inline]
9682 pub fn json_format_clause(&self) -> Option<JsonFormatClause> {
9683 support::child(&self.syntax)
9684 }
9685 #[inline]
9686 pub fn select_variant(&self) -> Option<SelectVariant> {
9687 support::child(&self.syntax)
9688 }
9689}
9690
9691#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9692pub struct JsonSerializeFn {
9693 pub(crate) syntax: SyntaxNode,
9694}
9695impl JsonSerializeFn {
9696 #[inline]
9697 pub fn expr(&self) -> Option<Expr> {
9698 support::child(&self.syntax)
9699 }
9700 #[inline]
9701 pub fn json_format_clause(&self) -> Option<JsonFormatClause> {
9702 support::child(&self.syntax)
9703 }
9704 #[inline]
9705 pub fn json_returning_clause(&self) -> Option<JsonReturningClause> {
9706 support::child(&self.syntax)
9707 }
9708 #[inline]
9709 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
9710 support::token(&self.syntax, SyntaxKind::L_PAREN)
9711 }
9712 #[inline]
9713 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
9714 support::token(&self.syntax, SyntaxKind::R_PAREN)
9715 }
9716 #[inline]
9717 pub fn json_serialize_token(&self) -> Option<SyntaxToken> {
9718 support::token(&self.syntax, SyntaxKind::JSON_SERIALIZE_KW)
9719 }
9720}
9721
9722#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9723pub struct JsonTable {
9724 pub(crate) syntax: SyntaxNode,
9725}
9726impl JsonTable {
9727 #[inline]
9728 pub fn expr(&self) -> Option<Expr> {
9729 support::child(&self.syntax)
9730 }
9731 #[inline]
9732 pub fn json_format_clause(&self) -> Option<JsonFormatClause> {
9733 support::child(&self.syntax)
9734 }
9735 #[inline]
9736 pub fn json_on_error_clause(&self) -> Option<JsonOnErrorClause> {
9737 support::child(&self.syntax)
9738 }
9739 #[inline]
9740 pub fn json_passing_clause(&self) -> Option<JsonPassingClause> {
9741 support::child(&self.syntax)
9742 }
9743 #[inline]
9744 pub fn json_table_column_list(&self) -> Option<JsonTableColumnList> {
9745 support::child(&self.syntax)
9746 }
9747 #[inline]
9748 pub fn name(&self) -> Option<Name> {
9749 support::child(&self.syntax)
9750 }
9751 #[inline]
9752 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
9753 support::token(&self.syntax, SyntaxKind::L_PAREN)
9754 }
9755 #[inline]
9756 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
9757 support::token(&self.syntax, SyntaxKind::R_PAREN)
9758 }
9759 #[inline]
9760 pub fn comma_token(&self) -> Option<SyntaxToken> {
9761 support::token(&self.syntax, SyntaxKind::COMMA)
9762 }
9763 #[inline]
9764 pub fn as_token(&self) -> Option<SyntaxToken> {
9765 support::token(&self.syntax, SyntaxKind::AS_KW)
9766 }
9767 #[inline]
9768 pub fn json_table_token(&self) -> Option<SyntaxToken> {
9769 support::token(&self.syntax, SyntaxKind::JSON_TABLE_KW)
9770 }
9771}
9772
9773#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9774pub struct JsonTableColumn {
9775 pub(crate) syntax: SyntaxNode,
9776}
9777impl JsonTableColumn {
9778 #[inline]
9779 pub fn expr(&self) -> Option<Expr> {
9780 support::child(&self.syntax)
9781 }
9782 #[inline]
9783 pub fn json_format_clause(&self) -> Option<JsonFormatClause> {
9784 support::child(&self.syntax)
9785 }
9786 #[inline]
9787 pub fn json_on_empty_clause(&self) -> Option<JsonOnEmptyClause> {
9788 support::child(&self.syntax)
9789 }
9790 #[inline]
9791 pub fn json_on_error_clause(&self) -> Option<JsonOnErrorClause> {
9792 support::child(&self.syntax)
9793 }
9794 #[inline]
9795 pub fn json_path_clause(&self) -> Option<JsonPathClause> {
9796 support::child(&self.syntax)
9797 }
9798 #[inline]
9799 pub fn json_quotes_clause(&self) -> Option<JsonQuotesClause> {
9800 support::child(&self.syntax)
9801 }
9802 #[inline]
9803 pub fn json_table_column_list(&self) -> Option<JsonTableColumnList> {
9804 support::child(&self.syntax)
9805 }
9806 #[inline]
9807 pub fn json_wrapper_behavior_clause(&self) -> Option<JsonWrapperBehaviorClause> {
9808 support::child(&self.syntax)
9809 }
9810 #[inline]
9811 pub fn name(&self) -> Option<Name> {
9812 support::child(&self.syntax)
9813 }
9814 #[inline]
9815 pub fn ty(&self) -> Option<Type> {
9816 support::child(&self.syntax)
9817 }
9818 #[inline]
9819 pub fn as_token(&self) -> Option<SyntaxToken> {
9820 support::token(&self.syntax, SyntaxKind::AS_KW)
9821 }
9822 #[inline]
9823 pub fn exists_token(&self) -> Option<SyntaxToken> {
9824 support::token(&self.syntax, SyntaxKind::EXISTS_KW)
9825 }
9826 #[inline]
9827 pub fn for_token(&self) -> Option<SyntaxToken> {
9828 support::token(&self.syntax, SyntaxKind::FOR_KW)
9829 }
9830 #[inline]
9831 pub fn nested_token(&self) -> Option<SyntaxToken> {
9832 support::token(&self.syntax, SyntaxKind::NESTED_KW)
9833 }
9834 #[inline]
9835 pub fn ordinality_token(&self) -> Option<SyntaxToken> {
9836 support::token(&self.syntax, SyntaxKind::ORDINALITY_KW)
9837 }
9838 #[inline]
9839 pub fn path_token(&self) -> Option<SyntaxToken> {
9840 support::token(&self.syntax, SyntaxKind::PATH_KW)
9841 }
9842}
9843
9844#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9845pub struct JsonTableColumnList {
9846 pub(crate) syntax: SyntaxNode,
9847}
9848impl JsonTableColumnList {
9849 #[inline]
9850 pub fn json_table_columns(&self) -> AstChildren<JsonTableColumn> {
9851 support::children(&self.syntax)
9852 }
9853 #[inline]
9854 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
9855 support::token(&self.syntax, SyntaxKind::L_PAREN)
9856 }
9857 #[inline]
9858 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
9859 support::token(&self.syntax, SyntaxKind::R_PAREN)
9860 }
9861 #[inline]
9862 pub fn columns_token(&self) -> Option<SyntaxToken> {
9863 support::token(&self.syntax, SyntaxKind::COLUMNS_KW)
9864 }
9865}
9866
9867#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9868pub struct JsonValueExpr {
9869 pub(crate) syntax: SyntaxNode,
9870}
9871impl JsonValueExpr {
9872 #[inline]
9873 pub fn expr(&self) -> Option<Expr> {
9874 support::child(&self.syntax)
9875 }
9876 #[inline]
9877 pub fn json_format_clause(&self) -> Option<JsonFormatClause> {
9878 support::child(&self.syntax)
9879 }
9880}
9881
9882#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9883pub struct JsonValueFn {
9884 pub(crate) syntax: SyntaxNode,
9885}
9886impl JsonValueFn {
9887 #[inline]
9888 pub fn expr(&self) -> Option<Expr> {
9889 support::child(&self.syntax)
9890 }
9891 #[inline]
9892 pub fn json_behavior_clause(&self) -> Option<JsonBehaviorClause> {
9893 support::child(&self.syntax)
9894 }
9895 #[inline]
9896 pub fn json_format_clause(&self) -> Option<JsonFormatClause> {
9897 support::child(&self.syntax)
9898 }
9899 #[inline]
9900 pub fn json_passing_clause(&self) -> Option<JsonPassingClause> {
9901 support::child(&self.syntax)
9902 }
9903 #[inline]
9904 pub fn json_returning_clause(&self) -> Option<JsonReturningClause> {
9905 support::child(&self.syntax)
9906 }
9907 #[inline]
9908 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
9909 support::token(&self.syntax, SyntaxKind::L_PAREN)
9910 }
9911 #[inline]
9912 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
9913 support::token(&self.syntax, SyntaxKind::R_PAREN)
9914 }
9915 #[inline]
9916 pub fn comma_token(&self) -> Option<SyntaxToken> {
9917 support::token(&self.syntax, SyntaxKind::COMMA)
9918 }
9919 #[inline]
9920 pub fn json_value_token(&self) -> Option<SyntaxToken> {
9921 support::token(&self.syntax, SyntaxKind::JSON_VALUE_KW)
9922 }
9923}
9924
9925#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9926pub struct JsonWrapperBehaviorClause {
9927 pub(crate) syntax: SyntaxNode,
9928}
9929impl JsonWrapperBehaviorClause {
9930 #[inline]
9931 pub fn array_token(&self) -> Option<SyntaxToken> {
9932 support::token(&self.syntax, SyntaxKind::ARRAY_KW)
9933 }
9934 #[inline]
9935 pub fn conditional_token(&self) -> Option<SyntaxToken> {
9936 support::token(&self.syntax, SyntaxKind::CONDITIONAL_KW)
9937 }
9938 #[inline]
9939 pub fn unconditional_token(&self) -> Option<SyntaxToken> {
9940 support::token(&self.syntax, SyntaxKind::UNCONDITIONAL_KW)
9941 }
9942 #[inline]
9943 pub fn with_token(&self) -> Option<SyntaxToken> {
9944 support::token(&self.syntax, SyntaxKind::WITH_KW)
9945 }
9946 #[inline]
9947 pub fn without_token(&self) -> Option<SyntaxToken> {
9948 support::token(&self.syntax, SyntaxKind::WITHOUT_KW)
9949 }
9950 #[inline]
9951 pub fn wrapper_token(&self) -> Option<SyntaxToken> {
9952 support::token(&self.syntax, SyntaxKind::WRAPPER_KW)
9953 }
9954}
9955
9956#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9957pub struct LanguageFuncOption {
9958 pub(crate) syntax: SyntaxNode,
9959}
9960impl LanguageFuncOption {
9961 #[inline]
9962 pub fn name_ref(&self) -> Option<NameRef> {
9963 support::child(&self.syntax)
9964 }
9965 #[inline]
9966 pub fn language_token(&self) -> Option<SyntaxToken> {
9967 support::token(&self.syntax, SyntaxKind::LANGUAGE_KW)
9968 }
9969}
9970
9971#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9972pub struct LeakproofFuncOption {
9973 pub(crate) syntax: SyntaxNode,
9974}
9975impl LeakproofFuncOption {
9976 #[inline]
9977 pub fn leakproof_token(&self) -> Option<SyntaxToken> {
9978 support::token(&self.syntax, SyntaxKind::LEAKPROOF_KW)
9979 }
9980 #[inline]
9981 pub fn not_token(&self) -> Option<SyntaxToken> {
9982 support::token(&self.syntax, SyntaxKind::NOT_KW)
9983 }
9984}
9985
9986#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9987pub struct LikeClause {
9988 pub(crate) syntax: SyntaxNode,
9989}
9990impl LikeClause {
9991 #[inline]
9992 pub fn like_options(&self) -> AstChildren<LikeOption> {
9993 support::children(&self.syntax)
9994 }
9995 #[inline]
9996 pub fn path(&self) -> Option<Path> {
9997 support::child(&self.syntax)
9998 }
9999 #[inline]
10000 pub fn like_token(&self) -> Option<SyntaxToken> {
10001 support::token(&self.syntax, SyntaxKind::LIKE_KW)
10002 }
10003}
10004
10005#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10006pub struct LikeOption {
10007 pub(crate) syntax: SyntaxNode,
10008}
10009impl LikeOption {
10010 #[inline]
10011 pub fn all_token(&self) -> Option<SyntaxToken> {
10012 support::token(&self.syntax, SyntaxKind::ALL_KW)
10013 }
10014 #[inline]
10015 pub fn comments_token(&self) -> Option<SyntaxToken> {
10016 support::token(&self.syntax, SyntaxKind::COMMENTS_KW)
10017 }
10018 #[inline]
10019 pub fn compression_token(&self) -> Option<SyntaxToken> {
10020 support::token(&self.syntax, SyntaxKind::COMPRESSION_KW)
10021 }
10022 #[inline]
10023 pub fn constraints_token(&self) -> Option<SyntaxToken> {
10024 support::token(&self.syntax, SyntaxKind::CONSTRAINTS_KW)
10025 }
10026 #[inline]
10027 pub fn defaults_token(&self) -> Option<SyntaxToken> {
10028 support::token(&self.syntax, SyntaxKind::DEFAULTS_KW)
10029 }
10030 #[inline]
10031 pub fn excluding_token(&self) -> Option<SyntaxToken> {
10032 support::token(&self.syntax, SyntaxKind::EXCLUDING_KW)
10033 }
10034 #[inline]
10035 pub fn generated_token(&self) -> Option<SyntaxToken> {
10036 support::token(&self.syntax, SyntaxKind::GENERATED_KW)
10037 }
10038 #[inline]
10039 pub fn identity_token(&self) -> Option<SyntaxToken> {
10040 support::token(&self.syntax, SyntaxKind::IDENTITY_KW)
10041 }
10042 #[inline]
10043 pub fn including_token(&self) -> Option<SyntaxToken> {
10044 support::token(&self.syntax, SyntaxKind::INCLUDING_KW)
10045 }
10046 #[inline]
10047 pub fn indexes_token(&self) -> Option<SyntaxToken> {
10048 support::token(&self.syntax, SyntaxKind::INDEXES_KW)
10049 }
10050 #[inline]
10051 pub fn statistics_token(&self) -> Option<SyntaxToken> {
10052 support::token(&self.syntax, SyntaxKind::STATISTICS_KW)
10053 }
10054 #[inline]
10055 pub fn storage_token(&self) -> Option<SyntaxToken> {
10056 support::token(&self.syntax, SyntaxKind::STORAGE_KW)
10057 }
10058}
10059
10060#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10061pub struct LimitClause {
10062 pub(crate) syntax: SyntaxNode,
10063}
10064impl LimitClause {
10065 #[inline]
10066 pub fn expr(&self) -> Option<Expr> {
10067 support::child(&self.syntax)
10068 }
10069 #[inline]
10070 pub fn all_token(&self) -> Option<SyntaxToken> {
10071 support::token(&self.syntax, SyntaxKind::ALL_KW)
10072 }
10073 #[inline]
10074 pub fn limit_token(&self) -> Option<SyntaxToken> {
10075 support::token(&self.syntax, SyntaxKind::LIMIT_KW)
10076 }
10077}
10078
10079#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10080pub struct LimitToTables {
10081 pub(crate) syntax: SyntaxNode,
10082}
10083impl LimitToTables {
10084 #[inline]
10085 pub fn name_refs(&self) -> AstChildren<NameRef> {
10086 support::children(&self.syntax)
10087 }
10088 #[inline]
10089 pub fn limit_token(&self) -> Option<SyntaxToken> {
10090 support::token(&self.syntax, SyntaxKind::LIMIT_KW)
10091 }
10092 #[inline]
10093 pub fn to_token(&self) -> Option<SyntaxToken> {
10094 support::token(&self.syntax, SyntaxKind::TO_KW)
10095 }
10096}
10097
10098#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10099pub struct Listen {
10100 pub(crate) syntax: SyntaxNode,
10101}
10102impl Listen {
10103 #[inline]
10104 pub fn name(&self) -> Option<Name> {
10105 support::child(&self.syntax)
10106 }
10107 #[inline]
10108 pub fn listen_token(&self) -> Option<SyntaxToken> {
10109 support::token(&self.syntax, SyntaxKind::LISTEN_KW)
10110 }
10111}
10112
10113#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10114pub struct Literal {
10115 pub(crate) syntax: SyntaxNode,
10116}
10117impl Literal {}
10118
10119#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10120pub struct Load {
10121 pub(crate) syntax: SyntaxNode,
10122}
10123impl Load {
10124 #[inline]
10125 pub fn literal(&self) -> Option<Literal> {
10126 support::child(&self.syntax)
10127 }
10128 #[inline]
10129 pub fn load_token(&self) -> Option<SyntaxToken> {
10130 support::token(&self.syntax, SyntaxKind::LOAD_KW)
10131 }
10132}
10133
10134#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10135pub struct Lock {
10136 pub(crate) syntax: SyntaxNode,
10137}
10138impl Lock {
10139 #[inline]
10140 pub fn table_list(&self) -> Option<TableList> {
10141 support::child(&self.syntax)
10142 }
10143 #[inline]
10144 pub fn lock_token(&self) -> Option<SyntaxToken> {
10145 support::token(&self.syntax, SyntaxKind::LOCK_KW)
10146 }
10147 #[inline]
10148 pub fn table_token(&self) -> Option<SyntaxToken> {
10149 support::token(&self.syntax, SyntaxKind::TABLE_KW)
10150 }
10151}
10152
10153#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10154pub struct LockingClause {
10155 pub(crate) syntax: SyntaxNode,
10156}
10157impl LockingClause {
10158 #[inline]
10159 pub fn for_token(&self) -> Option<SyntaxToken> {
10160 support::token(&self.syntax, SyntaxKind::FOR_KW)
10161 }
10162}
10163
10164#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10165pub struct Lteq {
10166 pub(crate) syntax: SyntaxNode,
10167}
10168impl Lteq {
10169 #[inline]
10170 pub fn l_angle_token(&self) -> Option<SyntaxToken> {
10171 support::token(&self.syntax, SyntaxKind::L_ANGLE)
10172 }
10173 #[inline]
10174 pub fn eq_token(&self) -> Option<SyntaxToken> {
10175 support::token(&self.syntax, SyntaxKind::EQ)
10176 }
10177}
10178
10179#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10180pub struct MatchFull {
10181 pub(crate) syntax: SyntaxNode,
10182}
10183impl MatchFull {
10184 #[inline]
10185 pub fn full_token(&self) -> Option<SyntaxToken> {
10186 support::token(&self.syntax, SyntaxKind::FULL_KW)
10187 }
10188 #[inline]
10189 pub fn match_token(&self) -> Option<SyntaxToken> {
10190 support::token(&self.syntax, SyntaxKind::MATCH_KW)
10191 }
10192}
10193
10194#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10195pub struct MatchPartial {
10196 pub(crate) syntax: SyntaxNode,
10197}
10198impl MatchPartial {
10199 #[inline]
10200 pub fn match_token(&self) -> Option<SyntaxToken> {
10201 support::token(&self.syntax, SyntaxKind::MATCH_KW)
10202 }
10203 #[inline]
10204 pub fn partial_token(&self) -> Option<SyntaxToken> {
10205 support::token(&self.syntax, SyntaxKind::PARTIAL_KW)
10206 }
10207}
10208
10209#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10210pub struct MatchSimple {
10211 pub(crate) syntax: SyntaxNode,
10212}
10213impl MatchSimple {
10214 #[inline]
10215 pub fn match_token(&self) -> Option<SyntaxToken> {
10216 support::token(&self.syntax, SyntaxKind::MATCH_KW)
10217 }
10218 #[inline]
10219 pub fn simple_token(&self) -> Option<SyntaxToken> {
10220 support::token(&self.syntax, SyntaxKind::SIMPLE_KW)
10221 }
10222}
10223
10224#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10225pub struct Materialized {
10226 pub(crate) syntax: SyntaxNode,
10227}
10228impl Materialized {
10229 #[inline]
10230 pub fn materialized_token(&self) -> Option<SyntaxToken> {
10231 support::token(&self.syntax, SyntaxKind::MATERIALIZED_KW)
10232 }
10233}
10234
10235#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10236pub struct Merge {
10237 pub(crate) syntax: SyntaxNode,
10238}
10239impl Merge {
10240 #[inline]
10241 pub fn alias(&self) -> Option<Alias> {
10242 support::child(&self.syntax)
10243 }
10244 #[inline]
10245 pub fn merge_when_clauses(&self) -> AstChildren<MergeWhenClause> {
10246 support::children(&self.syntax)
10247 }
10248 #[inline]
10249 pub fn relation_name(&self) -> Option<RelationName> {
10250 support::child(&self.syntax)
10251 }
10252 #[inline]
10253 pub fn returning_clause(&self) -> Option<ReturningClause> {
10254 support::child(&self.syntax)
10255 }
10256 #[inline]
10257 pub fn using_on_clause(&self) -> Option<UsingOnClause> {
10258 support::child(&self.syntax)
10259 }
10260 #[inline]
10261 pub fn with_clause(&self) -> Option<WithClause> {
10262 support::child(&self.syntax)
10263 }
10264 #[inline]
10265 pub fn into_token(&self) -> Option<SyntaxToken> {
10266 support::token(&self.syntax, SyntaxKind::INTO_KW)
10267 }
10268 #[inline]
10269 pub fn merge_token(&self) -> Option<SyntaxToken> {
10270 support::token(&self.syntax, SyntaxKind::MERGE_KW)
10271 }
10272}
10273
10274#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10275pub struct MergeDelete {
10276 pub(crate) syntax: SyntaxNode,
10277}
10278impl MergeDelete {
10279 #[inline]
10280 pub fn delete_token(&self) -> Option<SyntaxToken> {
10281 support::token(&self.syntax, SyntaxKind::DELETE_KW)
10282 }
10283}
10284
10285#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10286pub struct MergeDoNothing {
10287 pub(crate) syntax: SyntaxNode,
10288}
10289impl MergeDoNothing {
10290 #[inline]
10291 pub fn do_token(&self) -> Option<SyntaxToken> {
10292 support::token(&self.syntax, SyntaxKind::DO_KW)
10293 }
10294 #[inline]
10295 pub fn nothing_token(&self) -> Option<SyntaxToken> {
10296 support::token(&self.syntax, SyntaxKind::NOTHING_KW)
10297 }
10298}
10299
10300#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10301pub struct MergeInsert {
10302 pub(crate) syntax: SyntaxNode,
10303}
10304impl MergeInsert {
10305 #[inline]
10306 pub fn column_list(&self) -> Option<ColumnList> {
10307 support::child(&self.syntax)
10308 }
10309 #[inline]
10310 pub fn values(&self) -> Option<Values> {
10311 support::child(&self.syntax)
10312 }
10313 #[inline]
10314 pub fn default_token(&self) -> Option<SyntaxToken> {
10315 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
10316 }
10317 #[inline]
10318 pub fn insert_token(&self) -> Option<SyntaxToken> {
10319 support::token(&self.syntax, SyntaxKind::INSERT_KW)
10320 }
10321 #[inline]
10322 pub fn overriding_token(&self) -> Option<SyntaxToken> {
10323 support::token(&self.syntax, SyntaxKind::OVERRIDING_KW)
10324 }
10325 #[inline]
10326 pub fn system_token(&self) -> Option<SyntaxToken> {
10327 support::token(&self.syntax, SyntaxKind::SYSTEM_KW)
10328 }
10329 #[inline]
10330 pub fn user_token(&self) -> Option<SyntaxToken> {
10331 support::token(&self.syntax, SyntaxKind::USER_KW)
10332 }
10333 #[inline]
10334 pub fn values_token(&self) -> Option<SyntaxToken> {
10335 support::token(&self.syntax, SyntaxKind::VALUES_KW)
10336 }
10337}
10338
10339#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10340pub struct MergePartitions {
10341 pub(crate) syntax: SyntaxNode,
10342}
10343impl MergePartitions {
10344 #[inline]
10345 pub fn path(&self) -> Option<Path> {
10346 support::child(&self.syntax)
10347 }
10348 #[inline]
10349 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
10350 support::token(&self.syntax, SyntaxKind::L_PAREN)
10351 }
10352 #[inline]
10353 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
10354 support::token(&self.syntax, SyntaxKind::R_PAREN)
10355 }
10356 #[inline]
10357 pub fn into_token(&self) -> Option<SyntaxToken> {
10358 support::token(&self.syntax, SyntaxKind::INTO_KW)
10359 }
10360 #[inline]
10361 pub fn merge_token(&self) -> Option<SyntaxToken> {
10362 support::token(&self.syntax, SyntaxKind::MERGE_KW)
10363 }
10364 #[inline]
10365 pub fn partitions_token(&self) -> Option<SyntaxToken> {
10366 support::token(&self.syntax, SyntaxKind::PARTITIONS_KW)
10367 }
10368}
10369
10370#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10371pub struct MergeUpdate {
10372 pub(crate) syntax: SyntaxNode,
10373}
10374impl MergeUpdate {
10375 #[inline]
10376 pub fn set_clause(&self) -> Option<SetClause> {
10377 support::child(&self.syntax)
10378 }
10379 #[inline]
10380 pub fn set_token(&self) -> Option<SyntaxToken> {
10381 support::token(&self.syntax, SyntaxKind::SET_KW)
10382 }
10383 #[inline]
10384 pub fn update_token(&self) -> Option<SyntaxToken> {
10385 support::token(&self.syntax, SyntaxKind::UPDATE_KW)
10386 }
10387}
10388
10389#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10390pub struct MergeWhenMatched {
10391 pub(crate) syntax: SyntaxNode,
10392}
10393impl MergeWhenMatched {
10394 #[inline]
10395 pub fn expr(&self) -> Option<Expr> {
10396 support::child(&self.syntax)
10397 }
10398 #[inline]
10399 pub fn merge_action(&self) -> Option<MergeAction> {
10400 support::child(&self.syntax)
10401 }
10402 #[inline]
10403 pub fn and_token(&self) -> Option<SyntaxToken> {
10404 support::token(&self.syntax, SyntaxKind::AND_KW)
10405 }
10406 #[inline]
10407 pub fn matched_token(&self) -> Option<SyntaxToken> {
10408 support::token(&self.syntax, SyntaxKind::MATCHED_KW)
10409 }
10410 #[inline]
10411 pub fn then_token(&self) -> Option<SyntaxToken> {
10412 support::token(&self.syntax, SyntaxKind::THEN_KW)
10413 }
10414 #[inline]
10415 pub fn when_token(&self) -> Option<SyntaxToken> {
10416 support::token(&self.syntax, SyntaxKind::WHEN_KW)
10417 }
10418}
10419
10420#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10421pub struct MergeWhenNotMatchedSource {
10422 pub(crate) syntax: SyntaxNode,
10423}
10424impl MergeWhenNotMatchedSource {
10425 #[inline]
10426 pub fn expr(&self) -> Option<Expr> {
10427 support::child(&self.syntax)
10428 }
10429 #[inline]
10430 pub fn merge_action(&self) -> Option<MergeAction> {
10431 support::child(&self.syntax)
10432 }
10433 #[inline]
10434 pub fn and_token(&self) -> Option<SyntaxToken> {
10435 support::token(&self.syntax, SyntaxKind::AND_KW)
10436 }
10437 #[inline]
10438 pub fn by_token(&self) -> Option<SyntaxToken> {
10439 support::token(&self.syntax, SyntaxKind::BY_KW)
10440 }
10441 #[inline]
10442 pub fn matched_token(&self) -> Option<SyntaxToken> {
10443 support::token(&self.syntax, SyntaxKind::MATCHED_KW)
10444 }
10445 #[inline]
10446 pub fn not_token(&self) -> Option<SyntaxToken> {
10447 support::token(&self.syntax, SyntaxKind::NOT_KW)
10448 }
10449 #[inline]
10450 pub fn source_token(&self) -> Option<SyntaxToken> {
10451 support::token(&self.syntax, SyntaxKind::SOURCE_KW)
10452 }
10453 #[inline]
10454 pub fn then_token(&self) -> Option<SyntaxToken> {
10455 support::token(&self.syntax, SyntaxKind::THEN_KW)
10456 }
10457 #[inline]
10458 pub fn when_token(&self) -> Option<SyntaxToken> {
10459 support::token(&self.syntax, SyntaxKind::WHEN_KW)
10460 }
10461}
10462
10463#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10464pub struct MergeWhenNotMatchedTarget {
10465 pub(crate) syntax: SyntaxNode,
10466}
10467impl MergeWhenNotMatchedTarget {
10468 #[inline]
10469 pub fn expr(&self) -> Option<Expr> {
10470 support::child(&self.syntax)
10471 }
10472 #[inline]
10473 pub fn merge_action(&self) -> Option<MergeAction> {
10474 support::child(&self.syntax)
10475 }
10476 #[inline]
10477 pub fn and_token(&self) -> Option<SyntaxToken> {
10478 support::token(&self.syntax, SyntaxKind::AND_KW)
10479 }
10480 #[inline]
10481 pub fn by_token(&self) -> Option<SyntaxToken> {
10482 support::token(&self.syntax, SyntaxKind::BY_KW)
10483 }
10484 #[inline]
10485 pub fn matched_token(&self) -> Option<SyntaxToken> {
10486 support::token(&self.syntax, SyntaxKind::MATCHED_KW)
10487 }
10488 #[inline]
10489 pub fn not_token(&self) -> Option<SyntaxToken> {
10490 support::token(&self.syntax, SyntaxKind::NOT_KW)
10491 }
10492 #[inline]
10493 pub fn target_token(&self) -> Option<SyntaxToken> {
10494 support::token(&self.syntax, SyntaxKind::TARGET_KW)
10495 }
10496 #[inline]
10497 pub fn then_token(&self) -> Option<SyntaxToken> {
10498 support::token(&self.syntax, SyntaxKind::THEN_KW)
10499 }
10500 #[inline]
10501 pub fn when_token(&self) -> Option<SyntaxToken> {
10502 support::token(&self.syntax, SyntaxKind::WHEN_KW)
10503 }
10504}
10505
10506#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10507pub struct Move {
10508 pub(crate) syntax: SyntaxNode,
10509}
10510impl Move {
10511 #[inline]
10512 pub fn name_ref(&self) -> Option<NameRef> {
10513 support::child(&self.syntax)
10514 }
10515 #[inline]
10516 pub fn from_token(&self) -> Option<SyntaxToken> {
10517 support::token(&self.syntax, SyntaxKind::FROM_KW)
10518 }
10519 #[inline]
10520 pub fn in_token(&self) -> Option<SyntaxToken> {
10521 support::token(&self.syntax, SyntaxKind::IN_KW)
10522 }
10523 #[inline]
10524 pub fn move_token(&self) -> Option<SyntaxToken> {
10525 support::token(&self.syntax, SyntaxKind::MOVE_KW)
10526 }
10527}
10528
10529#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10530pub struct Name {
10531 pub(crate) syntax: SyntaxNode,
10532}
10533impl Name {
10534 #[inline]
10535 pub fn ident_token(&self) -> Option<SyntaxToken> {
10536 support::token(&self.syntax, SyntaxKind::IDENT)
10537 }
10538}
10539
10540#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10541pub struct NameRef {
10542 pub(crate) syntax: SyntaxNode,
10543}
10544impl NameRef {
10545 #[inline]
10546 pub fn ident_token(&self) -> Option<SyntaxToken> {
10547 support::token(&self.syntax, SyntaxKind::IDENT)
10548 }
10549}
10550
10551#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10552pub struct NamedArg {
10553 pub(crate) syntax: SyntaxNode,
10554}
10555impl NamedArg {
10556 #[inline]
10557 pub fn expr(&self) -> Option<Expr> {
10558 support::child(&self.syntax)
10559 }
10560 #[inline]
10561 pub fn fat_arrow(&self) -> Option<FatArrow> {
10562 support::child(&self.syntax)
10563 }
10564 #[inline]
10565 pub fn name_ref(&self) -> Option<NameRef> {
10566 support::child(&self.syntax)
10567 }
10568}
10569
10570#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10571pub struct Neq {
10572 pub(crate) syntax: SyntaxNode,
10573}
10574impl Neq {
10575 #[inline]
10576 pub fn bang_token(&self) -> Option<SyntaxToken> {
10577 support::token(&self.syntax, SyntaxKind::BANG)
10578 }
10579 #[inline]
10580 pub fn eq_token(&self) -> Option<SyntaxToken> {
10581 support::token(&self.syntax, SyntaxKind::EQ)
10582 }
10583}
10584
10585#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10586pub struct Neqb {
10587 pub(crate) syntax: SyntaxNode,
10588}
10589impl Neqb {
10590 #[inline]
10591 pub fn l_angle_token(&self) -> Option<SyntaxToken> {
10592 support::token(&self.syntax, SyntaxKind::L_ANGLE)
10593 }
10594 #[inline]
10595 pub fn r_angle_token(&self) -> Option<SyntaxToken> {
10596 support::token(&self.syntax, SyntaxKind::R_ANGLE)
10597 }
10598}
10599
10600#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10601pub struct NoAction {
10602 pub(crate) syntax: SyntaxNode,
10603}
10604impl NoAction {
10605 #[inline]
10606 pub fn action_token(&self) -> Option<SyntaxToken> {
10607 support::token(&self.syntax, SyntaxKind::ACTION_KW)
10608 }
10609 #[inline]
10610 pub fn no_token(&self) -> Option<SyntaxToken> {
10611 support::token(&self.syntax, SyntaxKind::NO_KW)
10612 }
10613}
10614
10615#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10616pub struct NoDependsOnExtension {
10617 pub(crate) syntax: SyntaxNode,
10618}
10619impl NoDependsOnExtension {
10620 #[inline]
10621 pub fn name_ref(&self) -> Option<NameRef> {
10622 support::child(&self.syntax)
10623 }
10624 #[inline]
10625 pub fn depends_token(&self) -> Option<SyntaxToken> {
10626 support::token(&self.syntax, SyntaxKind::DEPENDS_KW)
10627 }
10628 #[inline]
10629 pub fn extension_token(&self) -> Option<SyntaxToken> {
10630 support::token(&self.syntax, SyntaxKind::EXTENSION_KW)
10631 }
10632 #[inline]
10633 pub fn no_token(&self) -> Option<SyntaxToken> {
10634 support::token(&self.syntax, SyntaxKind::NO_KW)
10635 }
10636 #[inline]
10637 pub fn on_token(&self) -> Option<SyntaxToken> {
10638 support::token(&self.syntax, SyntaxKind::ON_KW)
10639 }
10640}
10641
10642#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10643pub struct NoForceRls {
10644 pub(crate) syntax: SyntaxNode,
10645}
10646impl NoForceRls {
10647 #[inline]
10648 pub fn force_token(&self) -> Option<SyntaxToken> {
10649 support::token(&self.syntax, SyntaxKind::FORCE_KW)
10650 }
10651 #[inline]
10652 pub fn level_token(&self) -> Option<SyntaxToken> {
10653 support::token(&self.syntax, SyntaxKind::LEVEL_KW)
10654 }
10655 #[inline]
10656 pub fn no_token(&self) -> Option<SyntaxToken> {
10657 support::token(&self.syntax, SyntaxKind::NO_KW)
10658 }
10659 #[inline]
10660 pub fn row_token(&self) -> Option<SyntaxToken> {
10661 support::token(&self.syntax, SyntaxKind::ROW_KW)
10662 }
10663 #[inline]
10664 pub fn security_token(&self) -> Option<SyntaxToken> {
10665 support::token(&self.syntax, SyntaxKind::SECURITY_KW)
10666 }
10667}
10668
10669#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10670pub struct NoInherit {
10671 pub(crate) syntax: SyntaxNode,
10672}
10673impl NoInherit {
10674 #[inline]
10675 pub fn path(&self) -> Option<Path> {
10676 support::child(&self.syntax)
10677 }
10678 #[inline]
10679 pub fn inherit_token(&self) -> Option<SyntaxToken> {
10680 support::token(&self.syntax, SyntaxKind::INHERIT_KW)
10681 }
10682 #[inline]
10683 pub fn no_token(&self) -> Option<SyntaxToken> {
10684 support::token(&self.syntax, SyntaxKind::NO_KW)
10685 }
10686}
10687
10688#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10689pub struct NoInheritTable {
10690 pub(crate) syntax: SyntaxNode,
10691}
10692impl NoInheritTable {
10693 #[inline]
10694 pub fn path(&self) -> Option<Path> {
10695 support::child(&self.syntax)
10696 }
10697 #[inline]
10698 pub fn inherit_token(&self) -> Option<SyntaxToken> {
10699 support::token(&self.syntax, SyntaxKind::INHERIT_KW)
10700 }
10701 #[inline]
10702 pub fn no_token(&self) -> Option<SyntaxToken> {
10703 support::token(&self.syntax, SyntaxKind::NO_KW)
10704 }
10705}
10706
10707#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10708pub struct NonStandardParam {
10709 pub(crate) syntax: SyntaxNode,
10710}
10711impl NonStandardParam {
10712 #[inline]
10713 pub fn name_ref(&self) -> Option<NameRef> {
10714 support::child(&self.syntax)
10715 }
10716 #[inline]
10717 pub fn colon_token(&self) -> Option<SyntaxToken> {
10718 support::token(&self.syntax, SyntaxKind::COLON)
10719 }
10720}
10721
10722#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10723pub struct NotDeferrable {
10724 pub(crate) syntax: SyntaxNode,
10725}
10726impl NotDeferrable {
10727 #[inline]
10728 pub fn deferrable_token(&self) -> Option<SyntaxToken> {
10729 support::token(&self.syntax, SyntaxKind::DEFERRABLE_KW)
10730 }
10731 #[inline]
10732 pub fn not_token(&self) -> Option<SyntaxToken> {
10733 support::token(&self.syntax, SyntaxKind::NOT_KW)
10734 }
10735}
10736
10737#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10738pub struct NotDeferrableConstraintOption {
10739 pub(crate) syntax: SyntaxNode,
10740}
10741impl NotDeferrableConstraintOption {
10742 #[inline]
10743 pub fn deferrable_token(&self) -> Option<SyntaxToken> {
10744 support::token(&self.syntax, SyntaxKind::DEFERRABLE_KW)
10745 }
10746 #[inline]
10747 pub fn not_token(&self) -> Option<SyntaxToken> {
10748 support::token(&self.syntax, SyntaxKind::NOT_KW)
10749 }
10750}
10751
10752#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10753pub struct NotEnforced {
10754 pub(crate) syntax: SyntaxNode,
10755}
10756impl NotEnforced {
10757 #[inline]
10758 pub fn enforced_token(&self) -> Option<SyntaxToken> {
10759 support::token(&self.syntax, SyntaxKind::ENFORCED_KW)
10760 }
10761 #[inline]
10762 pub fn not_token(&self) -> Option<SyntaxToken> {
10763 support::token(&self.syntax, SyntaxKind::NOT_KW)
10764 }
10765}
10766
10767#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10768pub struct NotIlike {
10769 pub(crate) syntax: SyntaxNode,
10770}
10771impl NotIlike {
10772 #[inline]
10773 pub fn ilike_token(&self) -> Option<SyntaxToken> {
10774 support::token(&self.syntax, SyntaxKind::ILIKE_KW)
10775 }
10776 #[inline]
10777 pub fn not_token(&self) -> Option<SyntaxToken> {
10778 support::token(&self.syntax, SyntaxKind::NOT_KW)
10779 }
10780}
10781
10782#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10783pub struct NotIn {
10784 pub(crate) syntax: SyntaxNode,
10785}
10786impl NotIn {
10787 #[inline]
10788 pub fn in_token(&self) -> Option<SyntaxToken> {
10789 support::token(&self.syntax, SyntaxKind::IN_KW)
10790 }
10791 #[inline]
10792 pub fn not_token(&self) -> Option<SyntaxToken> {
10793 support::token(&self.syntax, SyntaxKind::NOT_KW)
10794 }
10795}
10796
10797#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10798pub struct NotLike {
10799 pub(crate) syntax: SyntaxNode,
10800}
10801impl NotLike {
10802 #[inline]
10803 pub fn like_token(&self) -> Option<SyntaxToken> {
10804 support::token(&self.syntax, SyntaxKind::LIKE_KW)
10805 }
10806 #[inline]
10807 pub fn not_token(&self) -> Option<SyntaxToken> {
10808 support::token(&self.syntax, SyntaxKind::NOT_KW)
10809 }
10810}
10811
10812#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10813pub struct NotMaterialized {
10814 pub(crate) syntax: SyntaxNode,
10815}
10816impl NotMaterialized {
10817 #[inline]
10818 pub fn materialized_token(&self) -> Option<SyntaxToken> {
10819 support::token(&self.syntax, SyntaxKind::MATERIALIZED_KW)
10820 }
10821 #[inline]
10822 pub fn not_token(&self) -> Option<SyntaxToken> {
10823 support::token(&self.syntax, SyntaxKind::NOT_KW)
10824 }
10825}
10826
10827#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10828pub struct NotNullConstraint {
10829 pub(crate) syntax: SyntaxNode,
10830}
10831impl NotNullConstraint {
10832 #[inline]
10833 pub fn name_ref(&self) -> Option<NameRef> {
10834 support::child(&self.syntax)
10835 }
10836 #[inline]
10837 pub fn no_inherit(&self) -> Option<NoInherit> {
10838 support::child(&self.syntax)
10839 }
10840 #[inline]
10841 pub fn constraint_token(&self) -> Option<SyntaxToken> {
10842 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
10843 }
10844 #[inline]
10845 pub fn not_token(&self) -> Option<SyntaxToken> {
10846 support::token(&self.syntax, SyntaxKind::NOT_KW)
10847 }
10848 #[inline]
10849 pub fn null_token(&self) -> Option<SyntaxToken> {
10850 support::token(&self.syntax, SyntaxKind::NULL_KW)
10851 }
10852}
10853
10854#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10855pub struct NotOf {
10856 pub(crate) syntax: SyntaxNode,
10857}
10858impl NotOf {
10859 #[inline]
10860 pub fn not_token(&self) -> Option<SyntaxToken> {
10861 support::token(&self.syntax, SyntaxKind::NOT_KW)
10862 }
10863 #[inline]
10864 pub fn of_token(&self) -> Option<SyntaxToken> {
10865 support::token(&self.syntax, SyntaxKind::OF_KW)
10866 }
10867}
10868
10869#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10870pub struct NotSimilarTo {
10871 pub(crate) syntax: SyntaxNode,
10872}
10873impl NotSimilarTo {
10874 #[inline]
10875 pub fn not_token(&self) -> Option<SyntaxToken> {
10876 support::token(&self.syntax, SyntaxKind::NOT_KW)
10877 }
10878 #[inline]
10879 pub fn similar_token(&self) -> Option<SyntaxToken> {
10880 support::token(&self.syntax, SyntaxKind::SIMILAR_KW)
10881 }
10882 #[inline]
10883 pub fn to_token(&self) -> Option<SyntaxToken> {
10884 support::token(&self.syntax, SyntaxKind::TO_KW)
10885 }
10886}
10887
10888#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10889pub struct NotValid {
10890 pub(crate) syntax: SyntaxNode,
10891}
10892impl NotValid {
10893 #[inline]
10894 pub fn not_token(&self) -> Option<SyntaxToken> {
10895 support::token(&self.syntax, SyntaxKind::NOT_KW)
10896 }
10897 #[inline]
10898 pub fn valid_token(&self) -> Option<SyntaxToken> {
10899 support::token(&self.syntax, SyntaxKind::VALID_KW)
10900 }
10901}
10902
10903#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10904pub struct Notify {
10905 pub(crate) syntax: SyntaxNode,
10906}
10907impl Notify {
10908 #[inline]
10909 pub fn literal(&self) -> Option<Literal> {
10910 support::child(&self.syntax)
10911 }
10912 #[inline]
10913 pub fn name_ref(&self) -> Option<NameRef> {
10914 support::child(&self.syntax)
10915 }
10916 #[inline]
10917 pub fn comma_token(&self) -> Option<SyntaxToken> {
10918 support::token(&self.syntax, SyntaxKind::COMMA)
10919 }
10920 #[inline]
10921 pub fn notify_token(&self) -> Option<SyntaxToken> {
10922 support::token(&self.syntax, SyntaxKind::NOTIFY_KW)
10923 }
10924}
10925
10926#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10927pub struct NullConstraint {
10928 pub(crate) syntax: SyntaxNode,
10929}
10930impl NullConstraint {
10931 #[inline]
10932 pub fn name_ref(&self) -> Option<NameRef> {
10933 support::child(&self.syntax)
10934 }
10935 #[inline]
10936 pub fn constraint_token(&self) -> Option<SyntaxToken> {
10937 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
10938 }
10939 #[inline]
10940 pub fn null_token(&self) -> Option<SyntaxToken> {
10941 support::token(&self.syntax, SyntaxKind::NULL_KW)
10942 }
10943}
10944
10945#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10946pub struct NullsDistinct {
10947 pub(crate) syntax: SyntaxNode,
10948}
10949impl NullsDistinct {
10950 #[inline]
10951 pub fn distinct_token(&self) -> Option<SyntaxToken> {
10952 support::token(&self.syntax, SyntaxKind::DISTINCT_KW)
10953 }
10954 #[inline]
10955 pub fn nulls_token(&self) -> Option<SyntaxToken> {
10956 support::token(&self.syntax, SyntaxKind::NULLS_KW)
10957 }
10958}
10959
10960#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10961pub struct NullsFirst {
10962 pub(crate) syntax: SyntaxNode,
10963}
10964impl NullsFirst {
10965 #[inline]
10966 pub fn first_token(&self) -> Option<SyntaxToken> {
10967 support::token(&self.syntax, SyntaxKind::FIRST_KW)
10968 }
10969 #[inline]
10970 pub fn nulls_token(&self) -> Option<SyntaxToken> {
10971 support::token(&self.syntax, SyntaxKind::NULLS_KW)
10972 }
10973}
10974
10975#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10976pub struct NullsLast {
10977 pub(crate) syntax: SyntaxNode,
10978}
10979impl NullsLast {
10980 #[inline]
10981 pub fn last_token(&self) -> Option<SyntaxToken> {
10982 support::token(&self.syntax, SyntaxKind::LAST_KW)
10983 }
10984 #[inline]
10985 pub fn nulls_token(&self) -> Option<SyntaxToken> {
10986 support::token(&self.syntax, SyntaxKind::NULLS_KW)
10987 }
10988}
10989
10990#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10991pub struct NullsNotDistinct {
10992 pub(crate) syntax: SyntaxNode,
10993}
10994impl NullsNotDistinct {
10995 #[inline]
10996 pub fn distinct_token(&self) -> Option<SyntaxToken> {
10997 support::token(&self.syntax, SyntaxKind::DISTINCT_KW)
10998 }
10999 #[inline]
11000 pub fn not_token(&self) -> Option<SyntaxToken> {
11001 support::token(&self.syntax, SyntaxKind::NOT_KW)
11002 }
11003 #[inline]
11004 pub fn nulls_token(&self) -> Option<SyntaxToken> {
11005 support::token(&self.syntax, SyntaxKind::NULLS_KW)
11006 }
11007}
11008
11009#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11010pub struct OfType {
11011 pub(crate) syntax: SyntaxNode,
11012}
11013impl OfType {
11014 #[inline]
11015 pub fn ty(&self) -> Option<Type> {
11016 support::child(&self.syntax)
11017 }
11018 #[inline]
11019 pub fn of_token(&self) -> Option<SyntaxToken> {
11020 support::token(&self.syntax, SyntaxKind::OF_KW)
11021 }
11022}
11023
11024#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11025pub struct OffsetClause {
11026 pub(crate) syntax: SyntaxNode,
11027}
11028impl OffsetClause {
11029 #[inline]
11030 pub fn expr(&self) -> Option<Expr> {
11031 support::child(&self.syntax)
11032 }
11033 #[inline]
11034 pub fn offset_token(&self) -> Option<SyntaxToken> {
11035 support::token(&self.syntax, SyntaxKind::OFFSET_KW)
11036 }
11037 #[inline]
11038 pub fn row_token(&self) -> Option<SyntaxToken> {
11039 support::token(&self.syntax, SyntaxKind::ROW_KW)
11040 }
11041 #[inline]
11042 pub fn rows_token(&self) -> Option<SyntaxToken> {
11043 support::token(&self.syntax, SyntaxKind::ROWS_KW)
11044 }
11045}
11046
11047#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11048pub struct OnClause {
11049 pub(crate) syntax: SyntaxNode,
11050}
11051impl OnClause {
11052 #[inline]
11053 pub fn expr(&self) -> Option<Expr> {
11054 support::child(&self.syntax)
11055 }
11056 #[inline]
11057 pub fn on_token(&self) -> Option<SyntaxToken> {
11058 support::token(&self.syntax, SyntaxKind::ON_KW)
11059 }
11060}
11061
11062#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11063pub struct OnCommit {
11064 pub(crate) syntax: SyntaxNode,
11065}
11066impl OnCommit {
11067 #[inline]
11068 pub fn on_commit_action(&self) -> Option<OnCommitAction> {
11069 support::child(&self.syntax)
11070 }
11071 #[inline]
11072 pub fn commit_token(&self) -> Option<SyntaxToken> {
11073 support::token(&self.syntax, SyntaxKind::COMMIT_KW)
11074 }
11075 #[inline]
11076 pub fn on_token(&self) -> Option<SyntaxToken> {
11077 support::token(&self.syntax, SyntaxKind::ON_KW)
11078 }
11079}
11080
11081#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11082pub struct OnConflictClause {
11083 pub(crate) syntax: SyntaxNode,
11084}
11085impl OnConflictClause {
11086 #[inline]
11087 pub fn conflict_action(&self) -> Option<ConflictAction> {
11088 support::child(&self.syntax)
11089 }
11090 #[inline]
11091 pub fn conflict_target(&self) -> Option<ConflictTarget> {
11092 support::child(&self.syntax)
11093 }
11094 #[inline]
11095 pub fn conflict_token(&self) -> Option<SyntaxToken> {
11096 support::token(&self.syntax, SyntaxKind::CONFLICT_KW)
11097 }
11098 #[inline]
11099 pub fn on_token(&self) -> Option<SyntaxToken> {
11100 support::token(&self.syntax, SyntaxKind::ON_KW)
11101 }
11102}
11103
11104#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11105pub struct OnDeleteAction {
11106 pub(crate) syntax: SyntaxNode,
11107}
11108impl OnDeleteAction {
11109 #[inline]
11110 pub fn ref_action(&self) -> Option<RefAction> {
11111 support::child(&self.syntax)
11112 }
11113 #[inline]
11114 pub fn delete_token(&self) -> Option<SyntaxToken> {
11115 support::token(&self.syntax, SyntaxKind::DELETE_KW)
11116 }
11117 #[inline]
11118 pub fn on_token(&self) -> Option<SyntaxToken> {
11119 support::token(&self.syntax, SyntaxKind::ON_KW)
11120 }
11121}
11122
11123#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11124pub struct OnTable {
11125 pub(crate) syntax: SyntaxNode,
11126}
11127impl OnTable {
11128 #[inline]
11129 pub fn path(&self) -> Option<Path> {
11130 support::child(&self.syntax)
11131 }
11132 #[inline]
11133 pub fn on_token(&self) -> Option<SyntaxToken> {
11134 support::token(&self.syntax, SyntaxKind::ON_KW)
11135 }
11136}
11137
11138#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11139pub struct OnUpdateAction {
11140 pub(crate) syntax: SyntaxNode,
11141}
11142impl OnUpdateAction {
11143 #[inline]
11144 pub fn ref_action(&self) -> Option<RefAction> {
11145 support::child(&self.syntax)
11146 }
11147 #[inline]
11148 pub fn on_token(&self) -> Option<SyntaxToken> {
11149 support::token(&self.syntax, SyntaxKind::ON_KW)
11150 }
11151 #[inline]
11152 pub fn update_token(&self) -> Option<SyntaxToken> {
11153 support::token(&self.syntax, SyntaxKind::UPDATE_KW)
11154 }
11155}
11156
11157#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11158pub struct Op {
11159 pub(crate) syntax: SyntaxNode,
11160}
11161impl Op {
11162 #[inline]
11163 pub fn at_time_zone(&self) -> Option<AtTimeZone> {
11164 support::child(&self.syntax)
11165 }
11166 #[inline]
11167 pub fn colon_colon(&self) -> Option<ColonColon> {
11168 support::child(&self.syntax)
11169 }
11170 #[inline]
11171 pub fn colon_eq(&self) -> Option<ColonEq> {
11172 support::child(&self.syntax)
11173 }
11174 #[inline]
11175 pub fn custom_op(&self) -> Option<CustomOp> {
11176 support::child(&self.syntax)
11177 }
11178 #[inline]
11179 pub fn fat_arrow(&self) -> Option<FatArrow> {
11180 support::child(&self.syntax)
11181 }
11182 #[inline]
11183 pub fn gteq(&self) -> Option<Gteq> {
11184 support::child(&self.syntax)
11185 }
11186 #[inline]
11187 pub fn is_distinct_from(&self) -> Option<IsDistinctFrom> {
11188 support::child(&self.syntax)
11189 }
11190 #[inline]
11191 pub fn is_json(&self) -> Option<IsJson> {
11192 support::child(&self.syntax)
11193 }
11194 #[inline]
11195 pub fn is_json_array(&self) -> Option<IsJsonArray> {
11196 support::child(&self.syntax)
11197 }
11198 #[inline]
11199 pub fn is_json_object(&self) -> Option<IsJsonObject> {
11200 support::child(&self.syntax)
11201 }
11202 #[inline]
11203 pub fn is_json_scalar(&self) -> Option<IsJsonScalar> {
11204 support::child(&self.syntax)
11205 }
11206 #[inline]
11207 pub fn is_json_value(&self) -> Option<IsJsonValue> {
11208 support::child(&self.syntax)
11209 }
11210 #[inline]
11211 pub fn is_not(&self) -> Option<IsNot> {
11212 support::child(&self.syntax)
11213 }
11214 #[inline]
11215 pub fn is_not_distinct_from(&self) -> Option<IsNotDistinctFrom> {
11216 support::child(&self.syntax)
11217 }
11218 #[inline]
11219 pub fn is_not_json(&self) -> Option<IsNotJson> {
11220 support::child(&self.syntax)
11221 }
11222 #[inline]
11223 pub fn is_not_json_array(&self) -> Option<IsNotJsonArray> {
11224 support::child(&self.syntax)
11225 }
11226 #[inline]
11227 pub fn is_not_json_scalar(&self) -> Option<IsNotJsonScalar> {
11228 support::child(&self.syntax)
11229 }
11230 #[inline]
11231 pub fn is_not_json_value(&self) -> Option<IsNotJsonValue> {
11232 support::child(&self.syntax)
11233 }
11234 #[inline]
11235 pub fn lteq(&self) -> Option<Lteq> {
11236 support::child(&self.syntax)
11237 }
11238 #[inline]
11239 pub fn neq(&self) -> Option<Neq> {
11240 support::child(&self.syntax)
11241 }
11242 #[inline]
11243 pub fn neqb(&self) -> Option<Neqb> {
11244 support::child(&self.syntax)
11245 }
11246 #[inline]
11247 pub fn not_ilike(&self) -> Option<NotIlike> {
11248 support::child(&self.syntax)
11249 }
11250 #[inline]
11251 pub fn not_in(&self) -> Option<NotIn> {
11252 support::child(&self.syntax)
11253 }
11254 #[inline]
11255 pub fn not_like(&self) -> Option<NotLike> {
11256 support::child(&self.syntax)
11257 }
11258 #[inline]
11259 pub fn not_similar_to(&self) -> Option<NotSimilarTo> {
11260 support::child(&self.syntax)
11261 }
11262 #[inline]
11263 pub fn operator_call(&self) -> Option<OperatorCall> {
11264 support::child(&self.syntax)
11265 }
11266 #[inline]
11267 pub fn similar_to(&self) -> Option<SimilarTo> {
11268 support::child(&self.syntax)
11269 }
11270 #[inline]
11271 pub fn percent_token(&self) -> Option<SyntaxToken> {
11272 support::token(&self.syntax, SyntaxKind::PERCENT)
11273 }
11274 #[inline]
11275 pub fn plus_token(&self) -> Option<SyntaxToken> {
11276 support::token(&self.syntax, SyntaxKind::PLUS)
11277 }
11278 #[inline]
11279 pub fn minus_token(&self) -> Option<SyntaxToken> {
11280 support::token(&self.syntax, SyntaxKind::MINUS)
11281 }
11282 #[inline]
11283 pub fn slash_token(&self) -> Option<SyntaxToken> {
11284 support::token(&self.syntax, SyntaxKind::SLASH)
11285 }
11286 #[inline]
11287 pub fn colon_token(&self) -> Option<SyntaxToken> {
11288 support::token(&self.syntax, SyntaxKind::COLON)
11289 }
11290 #[inline]
11291 pub fn l_angle_token(&self) -> Option<SyntaxToken> {
11292 support::token(&self.syntax, SyntaxKind::L_ANGLE)
11293 }
11294 #[inline]
11295 pub fn eq_token(&self) -> Option<SyntaxToken> {
11296 support::token(&self.syntax, SyntaxKind::EQ)
11297 }
11298 #[inline]
11299 pub fn r_angle_token(&self) -> Option<SyntaxToken> {
11300 support::token(&self.syntax, SyntaxKind::R_ANGLE)
11301 }
11302 #[inline]
11303 pub fn caret_token(&self) -> Option<SyntaxToken> {
11304 support::token(&self.syntax, SyntaxKind::CARET)
11305 }
11306 #[inline]
11307 pub fn and_token(&self) -> Option<SyntaxToken> {
11308 support::token(&self.syntax, SyntaxKind::AND_KW)
11309 }
11310 #[inline]
11311 pub fn collate_token(&self) -> Option<SyntaxToken> {
11312 support::token(&self.syntax, SyntaxKind::COLLATE_KW)
11313 }
11314 #[inline]
11315 pub fn ilike_token(&self) -> Option<SyntaxToken> {
11316 support::token(&self.syntax, SyntaxKind::ILIKE_KW)
11317 }
11318 #[inline]
11319 pub fn in_token(&self) -> Option<SyntaxToken> {
11320 support::token(&self.syntax, SyntaxKind::IN_KW)
11321 }
11322 #[inline]
11323 pub fn is_token(&self) -> Option<SyntaxToken> {
11324 support::token(&self.syntax, SyntaxKind::IS_KW)
11325 }
11326 #[inline]
11327 pub fn like_token(&self) -> Option<SyntaxToken> {
11328 support::token(&self.syntax, SyntaxKind::LIKE_KW)
11329 }
11330 #[inline]
11331 pub fn or_token(&self) -> Option<SyntaxToken> {
11332 support::token(&self.syntax, SyntaxKind::OR_KW)
11333 }
11334 #[inline]
11335 pub fn overlaps_token(&self) -> Option<SyntaxToken> {
11336 support::token(&self.syntax, SyntaxKind::OVERLAPS_KW)
11337 }
11338 #[inline]
11339 pub fn value_token(&self) -> Option<SyntaxToken> {
11340 support::token(&self.syntax, SyntaxKind::VALUE_KW)
11341 }
11342}
11343
11344#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11345pub struct OpClassOption {
11346 pub(crate) syntax: SyntaxNode,
11347}
11348impl OpClassOption {
11349 #[inline]
11350 pub fn function_sig(&self) -> Option<FunctionSig> {
11351 support::child(&self.syntax)
11352 }
11353 #[inline]
11354 pub fn literal(&self) -> Option<Literal> {
11355 support::child(&self.syntax)
11356 }
11357 #[inline]
11358 pub fn op(&self) -> Option<Op> {
11359 support::child(&self.syntax)
11360 }
11361 #[inline]
11362 pub fn param_list(&self) -> Option<ParamList> {
11363 support::child(&self.syntax)
11364 }
11365 #[inline]
11366 pub fn path(&self) -> Option<Path> {
11367 support::child(&self.syntax)
11368 }
11369 #[inline]
11370 pub fn ty(&self) -> Option<Type> {
11371 support::child(&self.syntax)
11372 }
11373 #[inline]
11374 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
11375 support::token(&self.syntax, SyntaxKind::L_PAREN)
11376 }
11377 #[inline]
11378 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
11379 support::token(&self.syntax, SyntaxKind::R_PAREN)
11380 }
11381 #[inline]
11382 pub fn comma_token(&self) -> Option<SyntaxToken> {
11383 support::token(&self.syntax, SyntaxKind::COMMA)
11384 }
11385 #[inline]
11386 pub fn by_token(&self) -> Option<SyntaxToken> {
11387 support::token(&self.syntax, SyntaxKind::BY_KW)
11388 }
11389 #[inline]
11390 pub fn for_token(&self) -> Option<SyntaxToken> {
11391 support::token(&self.syntax, SyntaxKind::FOR_KW)
11392 }
11393 #[inline]
11394 pub fn function_token(&self) -> Option<SyntaxToken> {
11395 support::token(&self.syntax, SyntaxKind::FUNCTION_KW)
11396 }
11397 #[inline]
11398 pub fn operator_token(&self) -> Option<SyntaxToken> {
11399 support::token(&self.syntax, SyntaxKind::OPERATOR_KW)
11400 }
11401 #[inline]
11402 pub fn order_token(&self) -> Option<SyntaxToken> {
11403 support::token(&self.syntax, SyntaxKind::ORDER_KW)
11404 }
11405 #[inline]
11406 pub fn search_token(&self) -> Option<SyntaxToken> {
11407 support::token(&self.syntax, SyntaxKind::SEARCH_KW)
11408 }
11409 #[inline]
11410 pub fn storage_token(&self) -> Option<SyntaxToken> {
11411 support::token(&self.syntax, SyntaxKind::STORAGE_KW)
11412 }
11413}
11414
11415#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11416pub struct OpSig {
11417 pub(crate) syntax: SyntaxNode,
11418}
11419impl OpSig {
11420 #[inline]
11421 pub fn op(&self) -> Option<Op> {
11422 support::child(&self.syntax)
11423 }
11424 #[inline]
11425 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
11426 support::token(&self.syntax, SyntaxKind::L_PAREN)
11427 }
11428 #[inline]
11429 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
11430 support::token(&self.syntax, SyntaxKind::R_PAREN)
11431 }
11432 #[inline]
11433 pub fn comma_token(&self) -> Option<SyntaxToken> {
11434 support::token(&self.syntax, SyntaxKind::COMMA)
11435 }
11436 #[inline]
11437 pub fn none_token(&self) -> Option<SyntaxToken> {
11438 support::token(&self.syntax, SyntaxKind::NONE_KW)
11439 }
11440}
11441
11442#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11443pub struct OpSigList {
11444 pub(crate) syntax: SyntaxNode,
11445}
11446impl OpSigList {
11447 #[inline]
11448 pub fn op_sigs(&self) -> AstChildren<OpSig> {
11449 support::children(&self.syntax)
11450 }
11451}
11452
11453#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11454pub struct OperatorCall {
11455 pub(crate) syntax: SyntaxNode,
11456}
11457impl OperatorCall {
11458 #[inline]
11459 pub fn op(&self) -> Option<Op> {
11460 support::child(&self.syntax)
11461 }
11462 #[inline]
11463 pub fn path(&self) -> Option<Path> {
11464 support::child(&self.syntax)
11465 }
11466 #[inline]
11467 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
11468 support::token(&self.syntax, SyntaxKind::L_PAREN)
11469 }
11470 #[inline]
11471 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
11472 support::token(&self.syntax, SyntaxKind::R_PAREN)
11473 }
11474 #[inline]
11475 pub fn dot_token(&self) -> Option<SyntaxToken> {
11476 support::token(&self.syntax, SyntaxKind::DOT)
11477 }
11478 #[inline]
11479 pub fn operator_token(&self) -> Option<SyntaxToken> {
11480 support::token(&self.syntax, SyntaxKind::OPERATOR_KW)
11481 }
11482}
11483
11484#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11485pub struct OperatorClassOptionList {
11486 pub(crate) syntax: SyntaxNode,
11487}
11488impl OperatorClassOptionList {
11489 #[inline]
11490 pub fn op_class_options(&self) -> AstChildren<OpClassOption> {
11491 support::children(&self.syntax)
11492 }
11493}
11494
11495#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11496pub struct OptionItem {
11497 pub(crate) syntax: SyntaxNode,
11498}
11499impl OptionItem {
11500 #[inline]
11501 pub fn expr(&self) -> Option<Expr> {
11502 support::child(&self.syntax)
11503 }
11504 #[inline]
11505 pub fn default_token(&self) -> Option<SyntaxToken> {
11506 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
11507 }
11508}
11509
11510#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11511pub struct OptionItemList {
11512 pub(crate) syntax: SyntaxNode,
11513}
11514impl OptionItemList {
11515 #[inline]
11516 pub fn option_items(&self) -> AstChildren<OptionItem> {
11517 support::children(&self.syntax)
11518 }
11519 #[inline]
11520 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
11521 support::token(&self.syntax, SyntaxKind::L_PAREN)
11522 }
11523 #[inline]
11524 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
11525 support::token(&self.syntax, SyntaxKind::R_PAREN)
11526 }
11527}
11528
11529#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11530pub struct OrReplace {
11531 pub(crate) syntax: SyntaxNode,
11532}
11533impl OrReplace {
11534 #[inline]
11535 pub fn or_token(&self) -> Option<SyntaxToken> {
11536 support::token(&self.syntax, SyntaxKind::OR_KW)
11537 }
11538 #[inline]
11539 pub fn replace_token(&self) -> Option<SyntaxToken> {
11540 support::token(&self.syntax, SyntaxKind::REPLACE_KW)
11541 }
11542}
11543
11544#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11545pub struct OrderByClause {
11546 pub(crate) syntax: SyntaxNode,
11547}
11548impl OrderByClause {
11549 #[inline]
11550 pub fn sort_by_list(&self) -> Option<SortByList> {
11551 support::child(&self.syntax)
11552 }
11553 #[inline]
11554 pub fn by_token(&self) -> Option<SyntaxToken> {
11555 support::token(&self.syntax, SyntaxKind::BY_KW)
11556 }
11557 #[inline]
11558 pub fn order_token(&self) -> Option<SyntaxToken> {
11559 support::token(&self.syntax, SyntaxKind::ORDER_KW)
11560 }
11561}
11562
11563#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11564pub struct OverClause {
11565 pub(crate) syntax: SyntaxNode,
11566}
11567impl OverClause {
11568 #[inline]
11569 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
11570 support::token(&self.syntax, SyntaxKind::L_PAREN)
11571 }
11572 #[inline]
11573 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
11574 support::token(&self.syntax, SyntaxKind::R_PAREN)
11575 }
11576 #[inline]
11577 pub fn over_token(&self) -> Option<SyntaxToken> {
11578 support::token(&self.syntax, SyntaxKind::OVER_KW)
11579 }
11580}
11581
11582#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11583pub struct OverlayFn {
11584 pub(crate) syntax: SyntaxNode,
11585}
11586impl OverlayFn {
11587 #[inline]
11588 pub fn expr(&self) -> Option<Expr> {
11589 support::child(&self.syntax)
11590 }
11591 #[inline]
11592 pub fn exprs(&self) -> AstChildren<Expr> {
11593 support::children(&self.syntax)
11594 }
11595 #[inline]
11596 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
11597 support::token(&self.syntax, SyntaxKind::L_PAREN)
11598 }
11599 #[inline]
11600 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
11601 support::token(&self.syntax, SyntaxKind::R_PAREN)
11602 }
11603 #[inline]
11604 pub fn for_token(&self) -> Option<SyntaxToken> {
11605 support::token(&self.syntax, SyntaxKind::FOR_KW)
11606 }
11607 #[inline]
11608 pub fn from_token(&self) -> Option<SyntaxToken> {
11609 support::token(&self.syntax, SyntaxKind::FROM_KW)
11610 }
11611 #[inline]
11612 pub fn overlay_token(&self) -> Option<SyntaxToken> {
11613 support::token(&self.syntax, SyntaxKind::OVERLAY_KW)
11614 }
11615 #[inline]
11616 pub fn placing_token(&self) -> Option<SyntaxToken> {
11617 support::token(&self.syntax, SyntaxKind::PLACING_KW)
11618 }
11619}
11620
11621#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11622pub struct OwnedByRoles {
11623 pub(crate) syntax: SyntaxNode,
11624}
11625impl OwnedByRoles {
11626 #[inline]
11627 pub fn role_ref_list(&self) -> Option<RoleRefList> {
11628 support::child(&self.syntax)
11629 }
11630 #[inline]
11631 pub fn by_token(&self) -> Option<SyntaxToken> {
11632 support::token(&self.syntax, SyntaxKind::BY_KW)
11633 }
11634 #[inline]
11635 pub fn owned_token(&self) -> Option<SyntaxToken> {
11636 support::token(&self.syntax, SyntaxKind::OWNED_KW)
11637 }
11638}
11639
11640#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11641pub struct OwnerTo {
11642 pub(crate) syntax: SyntaxNode,
11643}
11644impl OwnerTo {
11645 #[inline]
11646 pub fn role_ref(&self) -> Option<RoleRef> {
11647 support::child(&self.syntax)
11648 }
11649 #[inline]
11650 pub fn owner_token(&self) -> Option<SyntaxToken> {
11651 support::token(&self.syntax, SyntaxKind::OWNER_KW)
11652 }
11653 #[inline]
11654 pub fn to_token(&self) -> Option<SyntaxToken> {
11655 support::token(&self.syntax, SyntaxKind::TO_KW)
11656 }
11657}
11658
11659#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11660pub struct ParallelFuncOption {
11661 pub(crate) syntax: SyntaxNode,
11662}
11663impl ParallelFuncOption {
11664 #[inline]
11665 pub fn ident_token(&self) -> Option<SyntaxToken> {
11666 support::token(&self.syntax, SyntaxKind::IDENT)
11667 }
11668 #[inline]
11669 pub fn parallel_token(&self) -> Option<SyntaxToken> {
11670 support::token(&self.syntax, SyntaxKind::PARALLEL_KW)
11671 }
11672}
11673
11674#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11675pub struct Param {
11676 pub(crate) syntax: SyntaxNode,
11677}
11678impl Param {
11679 #[inline]
11680 pub fn mode(&self) -> Option<ParamMode> {
11681 support::child(&self.syntax)
11682 }
11683 #[inline]
11684 pub fn name(&self) -> Option<Name> {
11685 support::child(&self.syntax)
11686 }
11687 #[inline]
11688 pub fn param_default(&self) -> Option<ParamDefault> {
11689 support::child(&self.syntax)
11690 }
11691 #[inline]
11692 pub fn ty(&self) -> Option<Type> {
11693 support::child(&self.syntax)
11694 }
11695}
11696
11697#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11698pub struct ParamDefault {
11699 pub(crate) syntax: SyntaxNode,
11700}
11701impl ParamDefault {
11702 #[inline]
11703 pub fn expr(&self) -> Option<Expr> {
11704 support::child(&self.syntax)
11705 }
11706 #[inline]
11707 pub fn eq_token(&self) -> Option<SyntaxToken> {
11708 support::token(&self.syntax, SyntaxKind::EQ)
11709 }
11710 #[inline]
11711 pub fn default_token(&self) -> Option<SyntaxToken> {
11712 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
11713 }
11714}
11715
11716#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11717pub struct ParamIn {
11718 pub(crate) syntax: SyntaxNode,
11719}
11720impl ParamIn {
11721 #[inline]
11722 pub fn in_token(&self) -> Option<SyntaxToken> {
11723 support::token(&self.syntax, SyntaxKind::IN_KW)
11724 }
11725}
11726
11727#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11728pub struct ParamInOut {
11729 pub(crate) syntax: SyntaxNode,
11730}
11731impl ParamInOut {
11732 #[inline]
11733 pub fn in_token(&self) -> Option<SyntaxToken> {
11734 support::token(&self.syntax, SyntaxKind::IN_KW)
11735 }
11736 #[inline]
11737 pub fn inout_token(&self) -> Option<SyntaxToken> {
11738 support::token(&self.syntax, SyntaxKind::INOUT_KW)
11739 }
11740 #[inline]
11741 pub fn out_token(&self) -> Option<SyntaxToken> {
11742 support::token(&self.syntax, SyntaxKind::OUT_KW)
11743 }
11744}
11745
11746#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11747pub struct ParamList {
11748 pub(crate) syntax: SyntaxNode,
11749}
11750impl ParamList {
11751 #[inline]
11752 pub fn params(&self) -> AstChildren<Param> {
11753 support::children(&self.syntax)
11754 }
11755}
11756
11757#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11758pub struct ParamOut {
11759 pub(crate) syntax: SyntaxNode,
11760}
11761impl ParamOut {
11762 #[inline]
11763 pub fn out_token(&self) -> Option<SyntaxToken> {
11764 support::token(&self.syntax, SyntaxKind::OUT_KW)
11765 }
11766}
11767
11768#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11769pub struct ParamVariadic {
11770 pub(crate) syntax: SyntaxNode,
11771}
11772impl ParamVariadic {
11773 #[inline]
11774 pub fn variadic_token(&self) -> Option<SyntaxToken> {
11775 support::token(&self.syntax, SyntaxKind::VARIADIC_KW)
11776 }
11777}
11778
11779#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11780pub struct ParenExpr {
11781 pub(crate) syntax: SyntaxNode,
11782}
11783impl ParenExpr {
11784 #[inline]
11785 pub fn expr(&self) -> Option<Expr> {
11786 support::child(&self.syntax)
11787 }
11788 #[inline]
11789 pub fn from_item(&self) -> Option<FromItem> {
11790 support::child(&self.syntax)
11791 }
11792 #[inline]
11793 pub fn select(&self) -> Option<Select> {
11794 support::child(&self.syntax)
11795 }
11796 #[inline]
11797 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
11798 support::token(&self.syntax, SyntaxKind::L_PAREN)
11799 }
11800 #[inline]
11801 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
11802 support::token(&self.syntax, SyntaxKind::R_PAREN)
11803 }
11804}
11805
11806#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11807pub struct ParenSelect {
11808 pub(crate) syntax: SyntaxNode,
11809}
11810impl ParenSelect {
11811 #[inline]
11812 pub fn select(&self) -> Option<SelectVariant> {
11813 support::child(&self.syntax)
11814 }
11815 #[inline]
11816 pub fn with_clause(&self) -> Option<WithClause> {
11817 support::child(&self.syntax)
11818 }
11819 #[inline]
11820 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
11821 support::token(&self.syntax, SyntaxKind::L_PAREN)
11822 }
11823 #[inline]
11824 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
11825 support::token(&self.syntax, SyntaxKind::R_PAREN)
11826 }
11827}
11828
11829#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11830pub struct Partition {
11831 pub(crate) syntax: SyntaxNode,
11832}
11833impl Partition {
11834 #[inline]
11835 pub fn partition_type(&self) -> Option<PartitionType> {
11836 support::child(&self.syntax)
11837 }
11838 #[inline]
11839 pub fn path(&self) -> Option<Path> {
11840 support::child(&self.syntax)
11841 }
11842 #[inline]
11843 pub fn partition_token(&self) -> Option<SyntaxToken> {
11844 support::token(&self.syntax, SyntaxKind::PARTITION_KW)
11845 }
11846}
11847
11848#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11849pub struct PartitionBy {
11850 pub(crate) syntax: SyntaxNode,
11851}
11852impl PartitionBy {
11853 #[inline]
11854 pub fn partition_item_list(&self) -> Option<PartitionItemList> {
11855 support::child(&self.syntax)
11856 }
11857 #[inline]
11858 pub fn by_token(&self) -> Option<SyntaxToken> {
11859 support::token(&self.syntax, SyntaxKind::BY_KW)
11860 }
11861 #[inline]
11862 pub fn ident_token(&self) -> Option<SyntaxToken> {
11863 support::token(&self.syntax, SyntaxKind::IDENT)
11864 }
11865 #[inline]
11866 pub fn partition_token(&self) -> Option<SyntaxToken> {
11867 support::token(&self.syntax, SyntaxKind::PARTITION_KW)
11868 }
11869 #[inline]
11870 pub fn range_token(&self) -> Option<SyntaxToken> {
11871 support::token(&self.syntax, SyntaxKind::RANGE_KW)
11872 }
11873}
11874
11875#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11876pub struct PartitionDefault {
11877 pub(crate) syntax: SyntaxNode,
11878}
11879impl PartitionDefault {
11880 #[inline]
11881 pub fn default_token(&self) -> Option<SyntaxToken> {
11882 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
11883 }
11884}
11885
11886#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11887pub struct PartitionForValuesFrom {
11888 pub(crate) syntax: SyntaxNode,
11889}
11890impl PartitionForValuesFrom {
11891 #[inline]
11892 pub fn exprs(&self) -> AstChildren<Expr> {
11893 support::children(&self.syntax)
11894 }
11895 #[inline]
11896 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
11897 support::token(&self.syntax, SyntaxKind::L_PAREN)
11898 }
11899 #[inline]
11900 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
11901 support::token(&self.syntax, SyntaxKind::R_PAREN)
11902 }
11903 #[inline]
11904 pub fn for_token(&self) -> Option<SyntaxToken> {
11905 support::token(&self.syntax, SyntaxKind::FOR_KW)
11906 }
11907 #[inline]
11908 pub fn from_token(&self) -> Option<SyntaxToken> {
11909 support::token(&self.syntax, SyntaxKind::FROM_KW)
11910 }
11911 #[inline]
11912 pub fn to_token(&self) -> Option<SyntaxToken> {
11913 support::token(&self.syntax, SyntaxKind::TO_KW)
11914 }
11915 #[inline]
11916 pub fn values_token(&self) -> Option<SyntaxToken> {
11917 support::token(&self.syntax, SyntaxKind::VALUES_KW)
11918 }
11919}
11920
11921#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11922pub struct PartitionForValuesIn {
11923 pub(crate) syntax: SyntaxNode,
11924}
11925impl PartitionForValuesIn {
11926 #[inline]
11927 pub fn exprs(&self) -> AstChildren<Expr> {
11928 support::children(&self.syntax)
11929 }
11930 #[inline]
11931 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
11932 support::token(&self.syntax, SyntaxKind::L_PAREN)
11933 }
11934 #[inline]
11935 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
11936 support::token(&self.syntax, SyntaxKind::R_PAREN)
11937 }
11938 #[inline]
11939 pub fn for_token(&self) -> Option<SyntaxToken> {
11940 support::token(&self.syntax, SyntaxKind::FOR_KW)
11941 }
11942 #[inline]
11943 pub fn in_token(&self) -> Option<SyntaxToken> {
11944 support::token(&self.syntax, SyntaxKind::IN_KW)
11945 }
11946 #[inline]
11947 pub fn values_token(&self) -> Option<SyntaxToken> {
11948 support::token(&self.syntax, SyntaxKind::VALUES_KW)
11949 }
11950}
11951
11952#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11953pub struct PartitionForValuesWith {
11954 pub(crate) syntax: SyntaxNode,
11955}
11956impl PartitionForValuesWith {
11957 #[inline]
11958 pub fn literal(&self) -> Option<Literal> {
11959 support::child(&self.syntax)
11960 }
11961 #[inline]
11962 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
11963 support::token(&self.syntax, SyntaxKind::L_PAREN)
11964 }
11965 #[inline]
11966 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
11967 support::token(&self.syntax, SyntaxKind::R_PAREN)
11968 }
11969 #[inline]
11970 pub fn comma_token(&self) -> Option<SyntaxToken> {
11971 support::token(&self.syntax, SyntaxKind::COMMA)
11972 }
11973 #[inline]
11974 pub fn for_token(&self) -> Option<SyntaxToken> {
11975 support::token(&self.syntax, SyntaxKind::FOR_KW)
11976 }
11977 #[inline]
11978 pub fn ident_token(&self) -> Option<SyntaxToken> {
11979 support::token(&self.syntax, SyntaxKind::IDENT)
11980 }
11981 #[inline]
11982 pub fn values_token(&self) -> Option<SyntaxToken> {
11983 support::token(&self.syntax, SyntaxKind::VALUES_KW)
11984 }
11985 #[inline]
11986 pub fn with_token(&self) -> Option<SyntaxToken> {
11987 support::token(&self.syntax, SyntaxKind::WITH_KW)
11988 }
11989}
11990
11991#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11992pub struct PartitionItem {
11993 pub(crate) syntax: SyntaxNode,
11994}
11995impl PartitionItem {
11996 #[inline]
11997 pub fn collate(&self) -> Option<Collate> {
11998 support::child(&self.syntax)
11999 }
12000 #[inline]
12001 pub fn expr(&self) -> Option<Expr> {
12002 support::child(&self.syntax)
12003 }
12004}
12005
12006#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12007pub struct PartitionItemList {
12008 pub(crate) syntax: SyntaxNode,
12009}
12010impl PartitionItemList {
12011 #[inline]
12012 pub fn partition_items(&self) -> AstChildren<PartitionItem> {
12013 support::children(&self.syntax)
12014 }
12015 #[inline]
12016 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
12017 support::token(&self.syntax, SyntaxKind::L_PAREN)
12018 }
12019 #[inline]
12020 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
12021 support::token(&self.syntax, SyntaxKind::R_PAREN)
12022 }
12023}
12024
12025#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12026pub struct PartitionList {
12027 pub(crate) syntax: SyntaxNode,
12028}
12029impl PartitionList {
12030 #[inline]
12031 pub fn partitions(&self) -> AstChildren<Partition> {
12032 support::children(&self.syntax)
12033 }
12034 #[inline]
12035 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
12036 support::token(&self.syntax, SyntaxKind::L_PAREN)
12037 }
12038 #[inline]
12039 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
12040 support::token(&self.syntax, SyntaxKind::R_PAREN)
12041 }
12042}
12043
12044#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12045pub struct PartitionOf {
12046 pub(crate) syntax: SyntaxNode,
12047}
12048impl PartitionOf {
12049 #[inline]
12050 pub fn path(&self) -> Option<Path> {
12051 support::child(&self.syntax)
12052 }
12053 #[inline]
12054 pub fn of_token(&self) -> Option<SyntaxToken> {
12055 support::token(&self.syntax, SyntaxKind::OF_KW)
12056 }
12057 #[inline]
12058 pub fn partition_token(&self) -> Option<SyntaxToken> {
12059 support::token(&self.syntax, SyntaxKind::PARTITION_KW)
12060 }
12061}
12062
12063#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12064pub struct Path {
12065 pub(crate) syntax: SyntaxNode,
12066}
12067impl Path {
12068 #[inline]
12069 pub fn qualifier(&self) -> Option<Path> {
12070 support::child(&self.syntax)
12071 }
12072 #[inline]
12073 pub fn segment(&self) -> Option<PathSegment> {
12074 support::child(&self.syntax)
12075 }
12076 #[inline]
12077 pub fn dot_token(&self) -> Option<SyntaxToken> {
12078 support::token(&self.syntax, SyntaxKind::DOT)
12079 }
12080}
12081
12082#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12083pub struct PathSegment {
12084 pub(crate) syntax: SyntaxNode,
12085}
12086impl PathSegment {
12087 #[inline]
12088 pub fn name(&self) -> Option<Name> {
12089 support::child(&self.syntax)
12090 }
12091 #[inline]
12092 pub fn name_ref(&self) -> Option<NameRef> {
12093 support::child(&self.syntax)
12094 }
12095}
12096
12097#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12098pub struct PathType {
12099 pub(crate) syntax: SyntaxNode,
12100}
12101impl PathType {
12102 #[inline]
12103 pub fn arg_list(&self) -> Option<ArgList> {
12104 support::child(&self.syntax)
12105 }
12106 #[inline]
12107 pub fn path(&self) -> Option<Path> {
12108 support::child(&self.syntax)
12109 }
12110}
12111
12112#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12113pub struct PercentType {
12114 pub(crate) syntax: SyntaxNode,
12115}
12116impl PercentType {
12117 #[inline]
12118 pub fn percent_token(&self) -> Option<SyntaxToken> {
12119 support::token(&self.syntax, SyntaxKind::PERCENT)
12120 }
12121 #[inline]
12122 pub fn type_token(&self) -> Option<SyntaxToken> {
12123 support::token(&self.syntax, SyntaxKind::TYPE_KW)
12124 }
12125}
12126
12127#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12128pub struct PercentTypeClause {
12129 pub(crate) syntax: SyntaxNode,
12130}
12131impl PercentTypeClause {
12132 #[inline]
12133 pub fn path(&self) -> Option<Path> {
12134 support::child(&self.syntax)
12135 }
12136 #[inline]
12137 pub fn percent_type_clause(&self) -> Option<PercentTypeClause> {
12138 support::child(&self.syntax)
12139 }
12140}
12141
12142#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12143pub struct PositionFn {
12144 pub(crate) syntax: SyntaxNode,
12145}
12146impl PositionFn {
12147 #[inline]
12148 pub fn expr(&self) -> Option<Expr> {
12149 support::child(&self.syntax)
12150 }
12151 #[inline]
12152 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
12153 support::token(&self.syntax, SyntaxKind::L_PAREN)
12154 }
12155 #[inline]
12156 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
12157 support::token(&self.syntax, SyntaxKind::R_PAREN)
12158 }
12159 #[inline]
12160 pub fn in_token(&self) -> Option<SyntaxToken> {
12161 support::token(&self.syntax, SyntaxKind::IN_KW)
12162 }
12163 #[inline]
12164 pub fn position_token(&self) -> Option<SyntaxToken> {
12165 support::token(&self.syntax, SyntaxKind::POSITION_KW)
12166 }
12167}
12168
12169#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12170pub struct PostfixExpr {
12171 pub(crate) syntax: SyntaxNode,
12172}
12173impl PostfixExpr {
12174 #[inline]
12175 pub fn expr(&self) -> Option<Expr> {
12176 support::child(&self.syntax)
12177 }
12178}
12179
12180#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12181pub struct PrefixExpr {
12182 pub(crate) syntax: SyntaxNode,
12183}
12184impl PrefixExpr {
12185 #[inline]
12186 pub fn expr(&self) -> Option<Expr> {
12187 support::child(&self.syntax)
12188 }
12189}
12190
12191#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12192pub struct Prepare {
12193 pub(crate) syntax: SyntaxNode,
12194}
12195impl Prepare {
12196 #[inline]
12197 pub fn name(&self) -> Option<Name> {
12198 support::child(&self.syntax)
12199 }
12200 #[inline]
12201 pub fn preparable_stmt(&self) -> Option<PreparableStmt> {
12202 support::child(&self.syntax)
12203 }
12204 #[inline]
12205 pub fn as_token(&self) -> Option<SyntaxToken> {
12206 support::token(&self.syntax, SyntaxKind::AS_KW)
12207 }
12208 #[inline]
12209 pub fn prepare_token(&self) -> Option<SyntaxToken> {
12210 support::token(&self.syntax, SyntaxKind::PREPARE_KW)
12211 }
12212}
12213
12214#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12215pub struct PrepareTransaction {
12216 pub(crate) syntax: SyntaxNode,
12217}
12218impl PrepareTransaction {
12219 #[inline]
12220 pub fn literal(&self) -> Option<Literal> {
12221 support::child(&self.syntax)
12222 }
12223 #[inline]
12224 pub fn prepare_token(&self) -> Option<SyntaxToken> {
12225 support::token(&self.syntax, SyntaxKind::PREPARE_KW)
12226 }
12227 #[inline]
12228 pub fn transaction_token(&self) -> Option<SyntaxToken> {
12229 support::token(&self.syntax, SyntaxKind::TRANSACTION_KW)
12230 }
12231}
12232
12233#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12234pub struct PreserveRows {
12235 pub(crate) syntax: SyntaxNode,
12236}
12237impl PreserveRows {
12238 #[inline]
12239 pub fn preserve_token(&self) -> Option<SyntaxToken> {
12240 support::token(&self.syntax, SyntaxKind::PRESERVE_KW)
12241 }
12242 #[inline]
12243 pub fn rows_token(&self) -> Option<SyntaxToken> {
12244 support::token(&self.syntax, SyntaxKind::ROWS_KW)
12245 }
12246}
12247
12248#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12249pub struct PrimaryKeyConstraint {
12250 pub(crate) syntax: SyntaxNode,
12251}
12252impl PrimaryKeyConstraint {
12253 #[inline]
12254 pub fn column_list(&self) -> Option<ColumnList> {
12255 support::child(&self.syntax)
12256 }
12257 #[inline]
12258 pub fn constraint_name(&self) -> Option<ConstraintName> {
12259 support::child(&self.syntax)
12260 }
12261 #[inline]
12262 pub fn partition_item_list(&self) -> Option<PartitionItemList> {
12263 support::child(&self.syntax)
12264 }
12265 #[inline]
12266 pub fn using_index(&self) -> Option<UsingIndex> {
12267 support::child(&self.syntax)
12268 }
12269 #[inline]
12270 pub fn key_token(&self) -> Option<SyntaxToken> {
12271 support::token(&self.syntax, SyntaxKind::KEY_KW)
12272 }
12273 #[inline]
12274 pub fn primary_token(&self) -> Option<SyntaxToken> {
12275 support::token(&self.syntax, SyntaxKind::PRIMARY_KW)
12276 }
12277}
12278
12279#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12280pub struct PrivilegeTarget {
12281 pub(crate) syntax: SyntaxNode,
12282}
12283impl PrivilegeTarget {
12284 #[inline]
12285 pub fn functions_token(&self) -> Option<SyntaxToken> {
12286 support::token(&self.syntax, SyntaxKind::FUNCTIONS_KW)
12287 }
12288 #[inline]
12289 pub fn large_token(&self) -> Option<SyntaxToken> {
12290 support::token(&self.syntax, SyntaxKind::LARGE_KW)
12291 }
12292 #[inline]
12293 pub fn objects_token(&self) -> Option<SyntaxToken> {
12294 support::token(&self.syntax, SyntaxKind::OBJECTS_KW)
12295 }
12296 #[inline]
12297 pub fn routines_token(&self) -> Option<SyntaxToken> {
12298 support::token(&self.syntax, SyntaxKind::ROUTINES_KW)
12299 }
12300 #[inline]
12301 pub fn schemas_token(&self) -> Option<SyntaxToken> {
12302 support::token(&self.syntax, SyntaxKind::SCHEMAS_KW)
12303 }
12304 #[inline]
12305 pub fn sequences_token(&self) -> Option<SyntaxToken> {
12306 support::token(&self.syntax, SyntaxKind::SEQUENCES_KW)
12307 }
12308 #[inline]
12309 pub fn tables_token(&self) -> Option<SyntaxToken> {
12310 support::token(&self.syntax, SyntaxKind::TABLES_KW)
12311 }
12312 #[inline]
12313 pub fn types_token(&self) -> Option<SyntaxToken> {
12314 support::token(&self.syntax, SyntaxKind::TYPES_KW)
12315 }
12316}
12317
12318#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12319pub struct Privileges {
12320 pub(crate) syntax: SyntaxNode,
12321}
12322impl Privileges {
12323 #[inline]
12324 pub fn column_list(&self) -> Option<ColumnList> {
12325 support::child(&self.syntax)
12326 }
12327 #[inline]
12328 pub fn revoke_command_list(&self) -> Option<RevokeCommandList> {
12329 support::child(&self.syntax)
12330 }
12331 #[inline]
12332 pub fn all_token(&self) -> Option<SyntaxToken> {
12333 support::token(&self.syntax, SyntaxKind::ALL_KW)
12334 }
12335 #[inline]
12336 pub fn privileges_token(&self) -> Option<SyntaxToken> {
12337 support::token(&self.syntax, SyntaxKind::PRIVILEGES_KW)
12338 }
12339}
12340
12341#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12342pub struct PublicationObject {
12343 pub(crate) syntax: SyntaxNode,
12344}
12345impl PublicationObject {
12346 #[inline]
12347 pub fn column_list(&self) -> Option<ColumnList> {
12348 support::child(&self.syntax)
12349 }
12350 #[inline]
12351 pub fn name_ref(&self) -> Option<NameRef> {
12352 support::child(&self.syntax)
12353 }
12354 #[inline]
12355 pub fn path(&self) -> Option<Path> {
12356 support::child(&self.syntax)
12357 }
12358 #[inline]
12359 pub fn where_condition_clause(&self) -> Option<WhereConditionClause> {
12360 support::child(&self.syntax)
12361 }
12362 #[inline]
12363 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
12364 support::token(&self.syntax, SyntaxKind::L_PAREN)
12365 }
12366 #[inline]
12367 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
12368 support::token(&self.syntax, SyntaxKind::R_PAREN)
12369 }
12370 #[inline]
12371 pub fn star_token(&self) -> Option<SyntaxToken> {
12372 support::token(&self.syntax, SyntaxKind::STAR)
12373 }
12374 #[inline]
12375 pub fn current_schema_token(&self) -> Option<SyntaxToken> {
12376 support::token(&self.syntax, SyntaxKind::CURRENT_SCHEMA_KW)
12377 }
12378 #[inline]
12379 pub fn in_token(&self) -> Option<SyntaxToken> {
12380 support::token(&self.syntax, SyntaxKind::IN_KW)
12381 }
12382 #[inline]
12383 pub fn only_token(&self) -> Option<SyntaxToken> {
12384 support::token(&self.syntax, SyntaxKind::ONLY_KW)
12385 }
12386 #[inline]
12387 pub fn schema_token(&self) -> Option<SyntaxToken> {
12388 support::token(&self.syntax, SyntaxKind::SCHEMA_KW)
12389 }
12390 #[inline]
12391 pub fn table_token(&self) -> Option<SyntaxToken> {
12392 support::token(&self.syntax, SyntaxKind::TABLE_KW)
12393 }
12394 #[inline]
12395 pub fn tables_token(&self) -> Option<SyntaxToken> {
12396 support::token(&self.syntax, SyntaxKind::TABLES_KW)
12397 }
12398}
12399
12400#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12401pub struct ReadCommitted {
12402 pub(crate) syntax: SyntaxNode,
12403}
12404impl ReadCommitted {
12405 #[inline]
12406 pub fn committed_token(&self) -> Option<SyntaxToken> {
12407 support::token(&self.syntax, SyntaxKind::COMMITTED_KW)
12408 }
12409 #[inline]
12410 pub fn isolation_token(&self) -> Option<SyntaxToken> {
12411 support::token(&self.syntax, SyntaxKind::ISOLATION_KW)
12412 }
12413 #[inline]
12414 pub fn level_token(&self) -> Option<SyntaxToken> {
12415 support::token(&self.syntax, SyntaxKind::LEVEL_KW)
12416 }
12417 #[inline]
12418 pub fn read_token(&self) -> Option<SyntaxToken> {
12419 support::token(&self.syntax, SyntaxKind::READ_KW)
12420 }
12421}
12422
12423#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12424pub struct ReadOnly {
12425 pub(crate) syntax: SyntaxNode,
12426}
12427impl ReadOnly {
12428 #[inline]
12429 pub fn only_token(&self) -> Option<SyntaxToken> {
12430 support::token(&self.syntax, SyntaxKind::ONLY_KW)
12431 }
12432 #[inline]
12433 pub fn read_token(&self) -> Option<SyntaxToken> {
12434 support::token(&self.syntax, SyntaxKind::READ_KW)
12435 }
12436}
12437
12438#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12439pub struct ReadUncommitted {
12440 pub(crate) syntax: SyntaxNode,
12441}
12442impl ReadUncommitted {
12443 #[inline]
12444 pub fn isolation_token(&self) -> Option<SyntaxToken> {
12445 support::token(&self.syntax, SyntaxKind::ISOLATION_KW)
12446 }
12447 #[inline]
12448 pub fn level_token(&self) -> Option<SyntaxToken> {
12449 support::token(&self.syntax, SyntaxKind::LEVEL_KW)
12450 }
12451 #[inline]
12452 pub fn read_token(&self) -> Option<SyntaxToken> {
12453 support::token(&self.syntax, SyntaxKind::READ_KW)
12454 }
12455 #[inline]
12456 pub fn uncommitted_token(&self) -> Option<SyntaxToken> {
12457 support::token(&self.syntax, SyntaxKind::UNCOMMITTED_KW)
12458 }
12459}
12460
12461#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12462pub struct ReadWrite {
12463 pub(crate) syntax: SyntaxNode,
12464}
12465impl ReadWrite {
12466 #[inline]
12467 pub fn read_token(&self) -> Option<SyntaxToken> {
12468 support::token(&self.syntax, SyntaxKind::READ_KW)
12469 }
12470 #[inline]
12471 pub fn write_token(&self) -> Option<SyntaxToken> {
12472 support::token(&self.syntax, SyntaxKind::WRITE_KW)
12473 }
12474}
12475
12476#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12477pub struct Reassign {
12478 pub(crate) syntax: SyntaxNode,
12479}
12480impl Reassign {
12481 #[inline]
12482 pub fn new_roles(&self) -> Option<RoleRefList> {
12483 support::child(&self.syntax)
12484 }
12485 #[inline]
12486 pub fn old_roles(&self) -> Option<RoleRefList> {
12487 support::child(&self.syntax)
12488 }
12489 #[inline]
12490 pub fn by_token(&self) -> Option<SyntaxToken> {
12491 support::token(&self.syntax, SyntaxKind::BY_KW)
12492 }
12493 #[inline]
12494 pub fn owned_token(&self) -> Option<SyntaxToken> {
12495 support::token(&self.syntax, SyntaxKind::OWNED_KW)
12496 }
12497 #[inline]
12498 pub fn reassign_token(&self) -> Option<SyntaxToken> {
12499 support::token(&self.syntax, SyntaxKind::REASSIGN_KW)
12500 }
12501 #[inline]
12502 pub fn to_token(&self) -> Option<SyntaxToken> {
12503 support::token(&self.syntax, SyntaxKind::TO_KW)
12504 }
12505}
12506
12507#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12508pub struct ReferencesConstraint {
12509 pub(crate) syntax: SyntaxNode,
12510}
12511impl ReferencesConstraint {
12512 #[inline]
12513 pub fn column(&self) -> Option<NameRef> {
12514 support::child(&self.syntax)
12515 }
12516 #[inline]
12517 pub fn constraint_name(&self) -> Option<ConstraintName> {
12518 support::child(&self.syntax)
12519 }
12520 #[inline]
12521 pub fn match_type(&self) -> Option<MatchType> {
12522 support::child(&self.syntax)
12523 }
12524 #[inline]
12525 pub fn on_delete_action(&self) -> Option<OnDeleteAction> {
12526 support::child(&self.syntax)
12527 }
12528 #[inline]
12529 pub fn on_update_action(&self) -> Option<OnUpdateAction> {
12530 support::child(&self.syntax)
12531 }
12532 #[inline]
12533 pub fn table(&self) -> Option<Path> {
12534 support::child(&self.syntax)
12535 }
12536 #[inline]
12537 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
12538 support::token(&self.syntax, SyntaxKind::L_PAREN)
12539 }
12540 #[inline]
12541 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
12542 support::token(&self.syntax, SyntaxKind::R_PAREN)
12543 }
12544 #[inline]
12545 pub fn references_token(&self) -> Option<SyntaxToken> {
12546 support::token(&self.syntax, SyntaxKind::REFERENCES_KW)
12547 }
12548}
12549
12550#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12551pub struct Referencing {
12552 pub(crate) syntax: SyntaxNode,
12553}
12554impl Referencing {
12555 #[inline]
12556 pub fn referencing_tables(&self) -> AstChildren<ReferencingTable> {
12557 support::children(&self.syntax)
12558 }
12559 #[inline]
12560 pub fn referencing_token(&self) -> Option<SyntaxToken> {
12561 support::token(&self.syntax, SyntaxKind::REFERENCING_KW)
12562 }
12563}
12564
12565#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12566pub struct ReferencingTable {
12567 pub(crate) syntax: SyntaxNode,
12568}
12569impl ReferencingTable {
12570 #[inline]
12571 pub fn name_ref(&self) -> Option<NameRef> {
12572 support::child(&self.syntax)
12573 }
12574 #[inline]
12575 pub fn as_token(&self) -> Option<SyntaxToken> {
12576 support::token(&self.syntax, SyntaxKind::AS_KW)
12577 }
12578 #[inline]
12579 pub fn new_token(&self) -> Option<SyntaxToken> {
12580 support::token(&self.syntax, SyntaxKind::NEW_KW)
12581 }
12582 #[inline]
12583 pub fn old_token(&self) -> Option<SyntaxToken> {
12584 support::token(&self.syntax, SyntaxKind::OLD_KW)
12585 }
12586 #[inline]
12587 pub fn table_token(&self) -> Option<SyntaxToken> {
12588 support::token(&self.syntax, SyntaxKind::TABLE_KW)
12589 }
12590}
12591
12592#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12593pub struct Refresh {
12594 pub(crate) syntax: SyntaxNode,
12595}
12596impl Refresh {
12597 #[inline]
12598 pub fn path(&self) -> Option<Path> {
12599 support::child(&self.syntax)
12600 }
12601 #[inline]
12602 pub fn with_data(&self) -> Option<WithData> {
12603 support::child(&self.syntax)
12604 }
12605 #[inline]
12606 pub fn with_no_data(&self) -> Option<WithNoData> {
12607 support::child(&self.syntax)
12608 }
12609 #[inline]
12610 pub fn concurrently_token(&self) -> Option<SyntaxToken> {
12611 support::token(&self.syntax, SyntaxKind::CONCURRENTLY_KW)
12612 }
12613 #[inline]
12614 pub fn materialized_token(&self) -> Option<SyntaxToken> {
12615 support::token(&self.syntax, SyntaxKind::MATERIALIZED_KW)
12616 }
12617 #[inline]
12618 pub fn refresh_token(&self) -> Option<SyntaxToken> {
12619 support::token(&self.syntax, SyntaxKind::REFRESH_KW)
12620 }
12621 #[inline]
12622 pub fn view_token(&self) -> Option<SyntaxToken> {
12623 support::token(&self.syntax, SyntaxKind::VIEW_KW)
12624 }
12625}
12626
12627#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12628pub struct RefreshCollationVersion {
12629 pub(crate) syntax: SyntaxNode,
12630}
12631impl RefreshCollationVersion {
12632 #[inline]
12633 pub fn collation_token(&self) -> Option<SyntaxToken> {
12634 support::token(&self.syntax, SyntaxKind::COLLATION_KW)
12635 }
12636 #[inline]
12637 pub fn refresh_token(&self) -> Option<SyntaxToken> {
12638 support::token(&self.syntax, SyntaxKind::REFRESH_KW)
12639 }
12640 #[inline]
12641 pub fn version_token(&self) -> Option<SyntaxToken> {
12642 support::token(&self.syntax, SyntaxKind::VERSION_KW)
12643 }
12644}
12645
12646#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12647pub struct RefreshVersion {
12648 pub(crate) syntax: SyntaxNode,
12649}
12650impl RefreshVersion {
12651 #[inline]
12652 pub fn refresh_token(&self) -> Option<SyntaxToken> {
12653 support::token(&self.syntax, SyntaxKind::REFRESH_KW)
12654 }
12655 #[inline]
12656 pub fn version_token(&self) -> Option<SyntaxToken> {
12657 support::token(&self.syntax, SyntaxKind::VERSION_KW)
12658 }
12659}
12660
12661#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12662pub struct Reindex {
12663 pub(crate) syntax: SyntaxNode,
12664}
12665impl Reindex {
12666 #[inline]
12667 pub fn path(&self) -> Option<Path> {
12668 support::child(&self.syntax)
12669 }
12670 #[inline]
12671 pub fn database_token(&self) -> Option<SyntaxToken> {
12672 support::token(&self.syntax, SyntaxKind::DATABASE_KW)
12673 }
12674 #[inline]
12675 pub fn index_token(&self) -> Option<SyntaxToken> {
12676 support::token(&self.syntax, SyntaxKind::INDEX_KW)
12677 }
12678 #[inline]
12679 pub fn reindex_token(&self) -> Option<SyntaxToken> {
12680 support::token(&self.syntax, SyntaxKind::REINDEX_KW)
12681 }
12682 #[inline]
12683 pub fn schema_token(&self) -> Option<SyntaxToken> {
12684 support::token(&self.syntax, SyntaxKind::SCHEMA_KW)
12685 }
12686 #[inline]
12687 pub fn system_token(&self) -> Option<SyntaxToken> {
12688 support::token(&self.syntax, SyntaxKind::SYSTEM_KW)
12689 }
12690 #[inline]
12691 pub fn table_token(&self) -> Option<SyntaxToken> {
12692 support::token(&self.syntax, SyntaxKind::TABLE_KW)
12693 }
12694}
12695
12696#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12697pub struct RelationName {
12698 pub(crate) syntax: SyntaxNode,
12699}
12700impl RelationName {
12701 #[inline]
12702 pub fn path(&self) -> Option<Path> {
12703 support::child(&self.syntax)
12704 }
12705 #[inline]
12706 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
12707 support::token(&self.syntax, SyntaxKind::L_PAREN)
12708 }
12709 #[inline]
12710 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
12711 support::token(&self.syntax, SyntaxKind::R_PAREN)
12712 }
12713 #[inline]
12714 pub fn star_token(&self) -> Option<SyntaxToken> {
12715 support::token(&self.syntax, SyntaxKind::STAR)
12716 }
12717 #[inline]
12718 pub fn only_token(&self) -> Option<SyntaxToken> {
12719 support::token(&self.syntax, SyntaxKind::ONLY_KW)
12720 }
12721}
12722
12723#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12724pub struct ReleaseSavepoint {
12725 pub(crate) syntax: SyntaxNode,
12726}
12727impl ReleaseSavepoint {
12728 #[inline]
12729 pub fn name_ref(&self) -> Option<NameRef> {
12730 support::child(&self.syntax)
12731 }
12732 #[inline]
12733 pub fn release_token(&self) -> Option<SyntaxToken> {
12734 support::token(&self.syntax, SyntaxKind::RELEASE_KW)
12735 }
12736 #[inline]
12737 pub fn savepoint_token(&self) -> Option<SyntaxToken> {
12738 support::token(&self.syntax, SyntaxKind::SAVEPOINT_KW)
12739 }
12740}
12741
12742#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12743pub struct RenameColumn {
12744 pub(crate) syntax: SyntaxNode,
12745}
12746impl RenameColumn {
12747 #[inline]
12748 pub fn column_token(&self) -> Option<SyntaxToken> {
12749 support::token(&self.syntax, SyntaxKind::COLUMN_KW)
12750 }
12751 #[inline]
12752 pub fn rename_token(&self) -> Option<SyntaxToken> {
12753 support::token(&self.syntax, SyntaxKind::RENAME_KW)
12754 }
12755 #[inline]
12756 pub fn to_token(&self) -> Option<SyntaxToken> {
12757 support::token(&self.syntax, SyntaxKind::TO_KW)
12758 }
12759}
12760
12761#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12762pub struct RenameConstraint {
12763 pub(crate) syntax: SyntaxNode,
12764}
12765impl RenameConstraint {
12766 #[inline]
12767 pub fn name(&self) -> Option<Name> {
12768 support::child(&self.syntax)
12769 }
12770 #[inline]
12771 pub fn name_ref(&self) -> Option<NameRef> {
12772 support::child(&self.syntax)
12773 }
12774 #[inline]
12775 pub fn constraint_token(&self) -> Option<SyntaxToken> {
12776 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
12777 }
12778 #[inline]
12779 pub fn rename_token(&self) -> Option<SyntaxToken> {
12780 support::token(&self.syntax, SyntaxKind::RENAME_KW)
12781 }
12782 #[inline]
12783 pub fn to_token(&self) -> Option<SyntaxToken> {
12784 support::token(&self.syntax, SyntaxKind::TO_KW)
12785 }
12786}
12787
12788#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12789pub struct RenameTo {
12790 pub(crate) syntax: SyntaxNode,
12791}
12792impl RenameTo {
12793 #[inline]
12794 pub fn name(&self) -> Option<Name> {
12795 support::child(&self.syntax)
12796 }
12797 #[inline]
12798 pub fn rename_token(&self) -> Option<SyntaxToken> {
12799 support::token(&self.syntax, SyntaxKind::RENAME_KW)
12800 }
12801 #[inline]
12802 pub fn to_token(&self) -> Option<SyntaxToken> {
12803 support::token(&self.syntax, SyntaxKind::TO_KW)
12804 }
12805}
12806
12807#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12808pub struct RepeatableClause {
12809 pub(crate) syntax: SyntaxNode,
12810}
12811impl RepeatableClause {
12812 #[inline]
12813 pub fn expr(&self) -> Option<Expr> {
12814 support::child(&self.syntax)
12815 }
12816 #[inline]
12817 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
12818 support::token(&self.syntax, SyntaxKind::L_PAREN)
12819 }
12820 #[inline]
12821 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
12822 support::token(&self.syntax, SyntaxKind::R_PAREN)
12823 }
12824 #[inline]
12825 pub fn repeatable_token(&self) -> Option<SyntaxToken> {
12826 support::token(&self.syntax, SyntaxKind::REPEATABLE_KW)
12827 }
12828}
12829
12830#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12831pub struct RepeatableRead {
12832 pub(crate) syntax: SyntaxNode,
12833}
12834impl RepeatableRead {
12835 #[inline]
12836 pub fn isolation_token(&self) -> Option<SyntaxToken> {
12837 support::token(&self.syntax, SyntaxKind::ISOLATION_KW)
12838 }
12839 #[inline]
12840 pub fn level_token(&self) -> Option<SyntaxToken> {
12841 support::token(&self.syntax, SyntaxKind::LEVEL_KW)
12842 }
12843 #[inline]
12844 pub fn read_token(&self) -> Option<SyntaxToken> {
12845 support::token(&self.syntax, SyntaxKind::READ_KW)
12846 }
12847 #[inline]
12848 pub fn repeatable_token(&self) -> Option<SyntaxToken> {
12849 support::token(&self.syntax, SyntaxKind::REPEATABLE_KW)
12850 }
12851}
12852
12853#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12854pub struct ReplicaIdentity {
12855 pub(crate) syntax: SyntaxNode,
12856}
12857impl ReplicaIdentity {
12858 #[inline]
12859 pub fn identity_token(&self) -> Option<SyntaxToken> {
12860 support::token(&self.syntax, SyntaxKind::IDENTITY_KW)
12861 }
12862 #[inline]
12863 pub fn replica_token(&self) -> Option<SyntaxToken> {
12864 support::token(&self.syntax, SyntaxKind::REPLICA_KW)
12865 }
12866}
12867
12868#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12869pub struct Reset {
12870 pub(crate) syntax: SyntaxNode,
12871}
12872impl Reset {
12873 #[inline]
12874 pub fn name_ref(&self) -> Option<NameRef> {
12875 support::child(&self.syntax)
12876 }
12877 #[inline]
12878 pub fn all_token(&self) -> Option<SyntaxToken> {
12879 support::token(&self.syntax, SyntaxKind::ALL_KW)
12880 }
12881 #[inline]
12882 pub fn reset_token(&self) -> Option<SyntaxToken> {
12883 support::token(&self.syntax, SyntaxKind::RESET_KW)
12884 }
12885}
12886
12887#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12888pub struct ResetConfigParam {
12889 pub(crate) syntax: SyntaxNode,
12890}
12891impl ResetConfigParam {
12892 #[inline]
12893 pub fn path(&self) -> Option<Path> {
12894 support::child(&self.syntax)
12895 }
12896 #[inline]
12897 pub fn all_token(&self) -> Option<SyntaxToken> {
12898 support::token(&self.syntax, SyntaxKind::ALL_KW)
12899 }
12900 #[inline]
12901 pub fn reset_token(&self) -> Option<SyntaxToken> {
12902 support::token(&self.syntax, SyntaxKind::RESET_KW)
12903 }
12904}
12905
12906#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12907pub struct ResetFuncOption {
12908 pub(crate) syntax: SyntaxNode,
12909}
12910impl ResetFuncOption {
12911 #[inline]
12912 pub fn name_ref(&self) -> Option<NameRef> {
12913 support::child(&self.syntax)
12914 }
12915 #[inline]
12916 pub fn reset_token(&self) -> Option<SyntaxToken> {
12917 support::token(&self.syntax, SyntaxKind::RESET_KW)
12918 }
12919}
12920
12921#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12922pub struct ResetOptions {
12923 pub(crate) syntax: SyntaxNode,
12924}
12925impl ResetOptions {
12926 #[inline]
12927 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
12928 support::token(&self.syntax, SyntaxKind::L_PAREN)
12929 }
12930 #[inline]
12931 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
12932 support::token(&self.syntax, SyntaxKind::R_PAREN)
12933 }
12934 #[inline]
12935 pub fn reset_token(&self) -> Option<SyntaxToken> {
12936 support::token(&self.syntax, SyntaxKind::RESET_KW)
12937 }
12938}
12939
12940#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12941pub struct ResetSessionAuth {
12942 pub(crate) syntax: SyntaxNode,
12943}
12944impl ResetSessionAuth {
12945 #[inline]
12946 pub fn authorization_token(&self) -> Option<SyntaxToken> {
12947 support::token(&self.syntax, SyntaxKind::AUTHORIZATION_KW)
12948 }
12949 #[inline]
12950 pub fn reset_token(&self) -> Option<SyntaxToken> {
12951 support::token(&self.syntax, SyntaxKind::RESET_KW)
12952 }
12953 #[inline]
12954 pub fn session_token(&self) -> Option<SyntaxToken> {
12955 support::token(&self.syntax, SyntaxKind::SESSION_KW)
12956 }
12957}
12958
12959#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12960pub struct Restart {
12961 pub(crate) syntax: SyntaxNode,
12962}
12963impl Restart {
12964 #[inline]
12965 pub fn restart_token(&self) -> Option<SyntaxToken> {
12966 support::token(&self.syntax, SyntaxKind::RESTART_KW)
12967 }
12968 #[inline]
12969 pub fn with_token(&self) -> Option<SyntaxToken> {
12970 support::token(&self.syntax, SyntaxKind::WITH_KW)
12971 }
12972}
12973
12974#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12975pub struct Restrict {
12976 pub(crate) syntax: SyntaxNode,
12977}
12978impl Restrict {
12979 #[inline]
12980 pub fn restrict_token(&self) -> Option<SyntaxToken> {
12981 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
12982 }
12983}
12984
12985#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12986pub struct RetType {
12987 pub(crate) syntax: SyntaxNode,
12988}
12989impl RetType {
12990 #[inline]
12991 pub fn ty(&self) -> Option<Type> {
12992 support::child(&self.syntax)
12993 }
12994 #[inline]
12995 pub fn returns_token(&self) -> Option<SyntaxToken> {
12996 support::token(&self.syntax, SyntaxKind::RETURNS_KW)
12997 }
12998}
12999
13000#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13001pub struct ReturnFuncOption {
13002 pub(crate) syntax: SyntaxNode,
13003}
13004impl ReturnFuncOption {
13005 #[inline]
13006 pub fn expr(&self) -> Option<Expr> {
13007 support::child(&self.syntax)
13008 }
13009 #[inline]
13010 pub fn return_token(&self) -> Option<SyntaxToken> {
13011 support::token(&self.syntax, SyntaxKind::RETURN_KW)
13012 }
13013}
13014
13015#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13016pub struct ReturningClause {
13017 pub(crate) syntax: SyntaxNode,
13018}
13019impl ReturningClause {
13020 #[inline]
13021 pub fn returning_option_list(&self) -> Option<ReturningOptionList> {
13022 support::child(&self.syntax)
13023 }
13024 #[inline]
13025 pub fn target_list(&self) -> Option<TargetList> {
13026 support::child(&self.syntax)
13027 }
13028 #[inline]
13029 pub fn returning_token(&self) -> Option<SyntaxToken> {
13030 support::token(&self.syntax, SyntaxKind::RETURNING_KW)
13031 }
13032}
13033
13034#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13035pub struct ReturningOption {
13036 pub(crate) syntax: SyntaxNode,
13037}
13038impl ReturningOption {
13039 #[inline]
13040 pub fn name(&self) -> Option<Name> {
13041 support::child(&self.syntax)
13042 }
13043 #[inline]
13044 pub fn as_token(&self) -> Option<SyntaxToken> {
13045 support::token(&self.syntax, SyntaxKind::AS_KW)
13046 }
13047 #[inline]
13048 pub fn new_token(&self) -> Option<SyntaxToken> {
13049 support::token(&self.syntax, SyntaxKind::NEW_KW)
13050 }
13051 #[inline]
13052 pub fn old_token(&self) -> Option<SyntaxToken> {
13053 support::token(&self.syntax, SyntaxKind::OLD_KW)
13054 }
13055}
13056
13057#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13058pub struct ReturningOptionList {
13059 pub(crate) syntax: SyntaxNode,
13060}
13061impl ReturningOptionList {
13062 #[inline]
13063 pub fn returning_options(&self) -> AstChildren<ReturningOption> {
13064 support::children(&self.syntax)
13065 }
13066 #[inline]
13067 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
13068 support::token(&self.syntax, SyntaxKind::L_PAREN)
13069 }
13070 #[inline]
13071 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
13072 support::token(&self.syntax, SyntaxKind::R_PAREN)
13073 }
13074 #[inline]
13075 pub fn with_token(&self) -> Option<SyntaxToken> {
13076 support::token(&self.syntax, SyntaxKind::WITH_KW)
13077 }
13078}
13079
13080#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13081pub struct Revoke {
13082 pub(crate) syntax: SyntaxNode,
13083}
13084impl Revoke {
13085 #[inline]
13086 pub fn name_refs(&self) -> AstChildren<NameRef> {
13087 support::children(&self.syntax)
13088 }
13089 #[inline]
13090 pub fn paths(&self) -> AstChildren<Path> {
13091 support::children(&self.syntax)
13092 }
13093 #[inline]
13094 pub fn revoke_command_list(&self) -> Option<RevokeCommandList> {
13095 support::child(&self.syntax)
13096 }
13097 #[inline]
13098 pub fn role_ref(&self) -> Option<RoleRef> {
13099 support::child(&self.syntax)
13100 }
13101 #[inline]
13102 pub fn role_ref_list(&self) -> Option<RoleRefList> {
13103 support::child(&self.syntax)
13104 }
13105 #[inline]
13106 pub fn all_token(&self) -> Option<SyntaxToken> {
13107 support::token(&self.syntax, SyntaxKind::ALL_KW)
13108 }
13109 #[inline]
13110 pub fn by_token(&self) -> Option<SyntaxToken> {
13111 support::token(&self.syntax, SyntaxKind::BY_KW)
13112 }
13113 #[inline]
13114 pub fn cascade_token(&self) -> Option<SyntaxToken> {
13115 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
13116 }
13117 #[inline]
13118 pub fn for_token(&self) -> Option<SyntaxToken> {
13119 support::token(&self.syntax, SyntaxKind::FOR_KW)
13120 }
13121 #[inline]
13122 pub fn from_token(&self) -> Option<SyntaxToken> {
13123 support::token(&self.syntax, SyntaxKind::FROM_KW)
13124 }
13125 #[inline]
13126 pub fn grant_token(&self) -> Option<SyntaxToken> {
13127 support::token(&self.syntax, SyntaxKind::GRANT_KW)
13128 }
13129 #[inline]
13130 pub fn granted_token(&self) -> Option<SyntaxToken> {
13131 support::token(&self.syntax, SyntaxKind::GRANTED_KW)
13132 }
13133 #[inline]
13134 pub fn in_token(&self) -> Option<SyntaxToken> {
13135 support::token(&self.syntax, SyntaxKind::IN_KW)
13136 }
13137 #[inline]
13138 pub fn on_token(&self) -> Option<SyntaxToken> {
13139 support::token(&self.syntax, SyntaxKind::ON_KW)
13140 }
13141 #[inline]
13142 pub fn option_token(&self) -> Option<SyntaxToken> {
13143 support::token(&self.syntax, SyntaxKind::OPTION_KW)
13144 }
13145 #[inline]
13146 pub fn privileges_token(&self) -> Option<SyntaxToken> {
13147 support::token(&self.syntax, SyntaxKind::PRIVILEGES_KW)
13148 }
13149 #[inline]
13150 pub fn restrict_token(&self) -> Option<SyntaxToken> {
13151 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
13152 }
13153 #[inline]
13154 pub fn revoke_token(&self) -> Option<SyntaxToken> {
13155 support::token(&self.syntax, SyntaxKind::REVOKE_KW)
13156 }
13157 #[inline]
13158 pub fn schema_token(&self) -> Option<SyntaxToken> {
13159 support::token(&self.syntax, SyntaxKind::SCHEMA_KW)
13160 }
13161 #[inline]
13162 pub fn table_token(&self) -> Option<SyntaxToken> {
13163 support::token(&self.syntax, SyntaxKind::TABLE_KW)
13164 }
13165 #[inline]
13166 pub fn tables_token(&self) -> Option<SyntaxToken> {
13167 support::token(&self.syntax, SyntaxKind::TABLES_KW)
13168 }
13169}
13170
13171#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13172pub struct RevokeCommand {
13173 pub(crate) syntax: SyntaxNode,
13174}
13175impl RevokeCommand {
13176 #[inline]
13177 pub fn role_ref(&self) -> Option<RoleRef> {
13178 support::child(&self.syntax)
13179 }
13180 #[inline]
13181 pub fn all_token(&self) -> Option<SyntaxToken> {
13182 support::token(&self.syntax, SyntaxKind::ALL_KW)
13183 }
13184 #[inline]
13185 pub fn alter_token(&self) -> Option<SyntaxToken> {
13186 support::token(&self.syntax, SyntaxKind::ALTER_KW)
13187 }
13188 #[inline]
13189 pub fn create_token(&self) -> Option<SyntaxToken> {
13190 support::token(&self.syntax, SyntaxKind::CREATE_KW)
13191 }
13192 #[inline]
13193 pub fn delete_token(&self) -> Option<SyntaxToken> {
13194 support::token(&self.syntax, SyntaxKind::DELETE_KW)
13195 }
13196 #[inline]
13197 pub fn execute_token(&self) -> Option<SyntaxToken> {
13198 support::token(&self.syntax, SyntaxKind::EXECUTE_KW)
13199 }
13200 #[inline]
13201 pub fn ident_token(&self) -> Option<SyntaxToken> {
13202 support::token(&self.syntax, SyntaxKind::IDENT)
13203 }
13204 #[inline]
13205 pub fn insert_token(&self) -> Option<SyntaxToken> {
13206 support::token(&self.syntax, SyntaxKind::INSERT_KW)
13207 }
13208 #[inline]
13209 pub fn references_token(&self) -> Option<SyntaxToken> {
13210 support::token(&self.syntax, SyntaxKind::REFERENCES_KW)
13211 }
13212 #[inline]
13213 pub fn select_token(&self) -> Option<SyntaxToken> {
13214 support::token(&self.syntax, SyntaxKind::SELECT_KW)
13215 }
13216 #[inline]
13217 pub fn system_token(&self) -> Option<SyntaxToken> {
13218 support::token(&self.syntax, SyntaxKind::SYSTEM_KW)
13219 }
13220 #[inline]
13221 pub fn temp_token(&self) -> Option<SyntaxToken> {
13222 support::token(&self.syntax, SyntaxKind::TEMP_KW)
13223 }
13224 #[inline]
13225 pub fn temporary_token(&self) -> Option<SyntaxToken> {
13226 support::token(&self.syntax, SyntaxKind::TEMPORARY_KW)
13227 }
13228 #[inline]
13229 pub fn trigger_token(&self) -> Option<SyntaxToken> {
13230 support::token(&self.syntax, SyntaxKind::TRIGGER_KW)
13231 }
13232 #[inline]
13233 pub fn truncate_token(&self) -> Option<SyntaxToken> {
13234 support::token(&self.syntax, SyntaxKind::TRUNCATE_KW)
13235 }
13236 #[inline]
13237 pub fn update_token(&self) -> Option<SyntaxToken> {
13238 support::token(&self.syntax, SyntaxKind::UPDATE_KW)
13239 }
13240}
13241
13242#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13243pub struct RevokeCommandList {
13244 pub(crate) syntax: SyntaxNode,
13245}
13246impl RevokeCommandList {
13247 #[inline]
13248 pub fn revoke_commands(&self) -> AstChildren<RevokeCommand> {
13249 support::children(&self.syntax)
13250 }
13251}
13252
13253#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13254pub struct RevokeDefaultPrivileges {
13255 pub(crate) syntax: SyntaxNode,
13256}
13257impl RevokeDefaultPrivileges {
13258 #[inline]
13259 pub fn privilege_target(&self) -> Option<PrivilegeTarget> {
13260 support::child(&self.syntax)
13261 }
13262 #[inline]
13263 pub fn privileges(&self) -> Option<Privileges> {
13264 support::child(&self.syntax)
13265 }
13266 #[inline]
13267 pub fn role_ref_list(&self) -> Option<RoleRefList> {
13268 support::child(&self.syntax)
13269 }
13270 #[inline]
13271 pub fn cascade_token(&self) -> Option<SyntaxToken> {
13272 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
13273 }
13274 #[inline]
13275 pub fn for_token(&self) -> Option<SyntaxToken> {
13276 support::token(&self.syntax, SyntaxKind::FOR_KW)
13277 }
13278 #[inline]
13279 pub fn from_token(&self) -> Option<SyntaxToken> {
13280 support::token(&self.syntax, SyntaxKind::FROM_KW)
13281 }
13282 #[inline]
13283 pub fn grant_token(&self) -> Option<SyntaxToken> {
13284 support::token(&self.syntax, SyntaxKind::GRANT_KW)
13285 }
13286 #[inline]
13287 pub fn on_token(&self) -> Option<SyntaxToken> {
13288 support::token(&self.syntax, SyntaxKind::ON_KW)
13289 }
13290 #[inline]
13291 pub fn option_token(&self) -> Option<SyntaxToken> {
13292 support::token(&self.syntax, SyntaxKind::OPTION_KW)
13293 }
13294 #[inline]
13295 pub fn restrict_token(&self) -> Option<SyntaxToken> {
13296 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
13297 }
13298 #[inline]
13299 pub fn revoke_token(&self) -> Option<SyntaxToken> {
13300 support::token(&self.syntax, SyntaxKind::REVOKE_KW)
13301 }
13302}
13303
13304#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13305pub struct Role {
13306 pub(crate) syntax: SyntaxNode,
13307}
13308impl Role {
13309 #[inline]
13310 pub fn name(&self) -> Option<Name> {
13311 support::child(&self.syntax)
13312 }
13313 #[inline]
13314 pub fn current_role_token(&self) -> Option<SyntaxToken> {
13315 support::token(&self.syntax, SyntaxKind::CURRENT_ROLE_KW)
13316 }
13317 #[inline]
13318 pub fn current_user_token(&self) -> Option<SyntaxToken> {
13319 support::token(&self.syntax, SyntaxKind::CURRENT_USER_KW)
13320 }
13321 #[inline]
13322 pub fn group_token(&self) -> Option<SyntaxToken> {
13323 support::token(&self.syntax, SyntaxKind::GROUP_KW)
13324 }
13325 #[inline]
13326 pub fn session_user_token(&self) -> Option<SyntaxToken> {
13327 support::token(&self.syntax, SyntaxKind::SESSION_USER_KW)
13328 }
13329}
13330
13331#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13332pub struct RoleOption {
13333 pub(crate) syntax: SyntaxNode,
13334}
13335impl RoleOption {
13336 #[inline]
13337 pub fn inherit_token(&self) -> Option<SyntaxToken> {
13338 support::token(&self.syntax, SyntaxKind::INHERIT_KW)
13339 }
13340}
13341
13342#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13343pub struct RoleOptionList {
13344 pub(crate) syntax: SyntaxNode,
13345}
13346impl RoleOptionList {
13347 #[inline]
13348 pub fn role_options(&self) -> AstChildren<RoleOption> {
13349 support::children(&self.syntax)
13350 }
13351 #[inline]
13352 pub fn with_token(&self) -> Option<SyntaxToken> {
13353 support::token(&self.syntax, SyntaxKind::WITH_KW)
13354 }
13355}
13356
13357#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13358pub struct RoleRef {
13359 pub(crate) syntax: SyntaxNode,
13360}
13361impl RoleRef {
13362 #[inline]
13363 pub fn name_ref(&self) -> Option<NameRef> {
13364 support::child(&self.syntax)
13365 }
13366 #[inline]
13367 pub fn current_role_token(&self) -> Option<SyntaxToken> {
13368 support::token(&self.syntax, SyntaxKind::CURRENT_ROLE_KW)
13369 }
13370 #[inline]
13371 pub fn current_user_token(&self) -> Option<SyntaxToken> {
13372 support::token(&self.syntax, SyntaxKind::CURRENT_USER_KW)
13373 }
13374 #[inline]
13375 pub fn group_token(&self) -> Option<SyntaxToken> {
13376 support::token(&self.syntax, SyntaxKind::GROUP_KW)
13377 }
13378 #[inline]
13379 pub fn session_user_token(&self) -> Option<SyntaxToken> {
13380 support::token(&self.syntax, SyntaxKind::SESSION_USER_KW)
13381 }
13382}
13383
13384#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13385pub struct RoleRefList {
13386 pub(crate) syntax: SyntaxNode,
13387}
13388impl RoleRefList {
13389 #[inline]
13390 pub fn role_refs(&self) -> AstChildren<RoleRef> {
13391 support::children(&self.syntax)
13392 }
13393}
13394
13395#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13396pub struct Rollback {
13397 pub(crate) syntax: SyntaxNode,
13398}
13399impl Rollback {
13400 #[inline]
13401 pub fn literal(&self) -> Option<Literal> {
13402 support::child(&self.syntax)
13403 }
13404 #[inline]
13405 pub fn name_ref(&self) -> Option<NameRef> {
13406 support::child(&self.syntax)
13407 }
13408 #[inline]
13409 pub fn abort_token(&self) -> Option<SyntaxToken> {
13410 support::token(&self.syntax, SyntaxKind::ABORT_KW)
13411 }
13412 #[inline]
13413 pub fn and_token(&self) -> Option<SyntaxToken> {
13414 support::token(&self.syntax, SyntaxKind::AND_KW)
13415 }
13416 #[inline]
13417 pub fn chain_token(&self) -> Option<SyntaxToken> {
13418 support::token(&self.syntax, SyntaxKind::CHAIN_KW)
13419 }
13420 #[inline]
13421 pub fn no_token(&self) -> Option<SyntaxToken> {
13422 support::token(&self.syntax, SyntaxKind::NO_KW)
13423 }
13424 #[inline]
13425 pub fn prepared_token(&self) -> Option<SyntaxToken> {
13426 support::token(&self.syntax, SyntaxKind::PREPARED_KW)
13427 }
13428 #[inline]
13429 pub fn rollback_token(&self) -> Option<SyntaxToken> {
13430 support::token(&self.syntax, SyntaxKind::ROLLBACK_KW)
13431 }
13432 #[inline]
13433 pub fn savepoint_token(&self) -> Option<SyntaxToken> {
13434 support::token(&self.syntax, SyntaxKind::SAVEPOINT_KW)
13435 }
13436 #[inline]
13437 pub fn to_token(&self) -> Option<SyntaxToken> {
13438 support::token(&self.syntax, SyntaxKind::TO_KW)
13439 }
13440 #[inline]
13441 pub fn transaction_token(&self) -> Option<SyntaxToken> {
13442 support::token(&self.syntax, SyntaxKind::TRANSACTION_KW)
13443 }
13444 #[inline]
13445 pub fn work_token(&self) -> Option<SyntaxToken> {
13446 support::token(&self.syntax, SyntaxKind::WORK_KW)
13447 }
13448}
13449
13450#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13451pub struct Row {
13452 pub(crate) syntax: SyntaxNode,
13453}
13454impl Row {
13455 #[inline]
13456 pub fn exprs(&self) -> AstChildren<Expr> {
13457 support::children(&self.syntax)
13458 }
13459}
13460
13461#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13462pub struct RowList {
13463 pub(crate) syntax: SyntaxNode,
13464}
13465impl RowList {
13466 #[inline]
13467 pub fn rows(&self) -> AstChildren<Row> {
13468 support::children(&self.syntax)
13469 }
13470}
13471
13472#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13473pub struct RowsFuncOption {
13474 pub(crate) syntax: SyntaxNode,
13475}
13476impl RowsFuncOption {
13477 #[inline]
13478 pub fn rows_token(&self) -> Option<SyntaxToken> {
13479 support::token(&self.syntax, SyntaxKind::ROWS_KW)
13480 }
13481}
13482
13483#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13484pub struct Savepoint {
13485 pub(crate) syntax: SyntaxNode,
13486}
13487impl Savepoint {
13488 #[inline]
13489 pub fn name(&self) -> Option<Name> {
13490 support::child(&self.syntax)
13491 }
13492 #[inline]
13493 pub fn savepoint_token(&self) -> Option<SyntaxToken> {
13494 support::token(&self.syntax, SyntaxKind::SAVEPOINT_KW)
13495 }
13496}
13497
13498#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13499pub struct SecurityFuncOption {
13500 pub(crate) syntax: SyntaxNode,
13501}
13502impl SecurityFuncOption {
13503 #[inline]
13504 pub fn definer_token(&self) -> Option<SyntaxToken> {
13505 support::token(&self.syntax, SyntaxKind::DEFINER_KW)
13506 }
13507 #[inline]
13508 pub fn invoker_token(&self) -> Option<SyntaxToken> {
13509 support::token(&self.syntax, SyntaxKind::INVOKER_KW)
13510 }
13511 #[inline]
13512 pub fn security_token(&self) -> Option<SyntaxToken> {
13513 support::token(&self.syntax, SyntaxKind::SECURITY_KW)
13514 }
13515}
13516
13517#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13518pub struct SecurityLabel {
13519 pub(crate) syntax: SyntaxNode,
13520}
13521impl SecurityLabel {
13522 #[inline]
13523 pub fn aggregate(&self) -> Option<Aggregate> {
13524 support::child(&self.syntax)
13525 }
13526 #[inline]
13527 pub fn for_provider(&self) -> Option<ForProvider> {
13528 support::child(&self.syntax)
13529 }
13530 #[inline]
13531 pub fn function_sig(&self) -> Option<FunctionSig> {
13532 support::child(&self.syntax)
13533 }
13534 #[inline]
13535 pub fn literal(&self) -> Option<Literal> {
13536 support::child(&self.syntax)
13537 }
13538 #[inline]
13539 pub fn path(&self) -> Option<Path> {
13540 support::child(&self.syntax)
13541 }
13542 #[inline]
13543 pub fn aggregate_token(&self) -> Option<SyntaxToken> {
13544 support::token(&self.syntax, SyntaxKind::AGGREGATE_KW)
13545 }
13546 #[inline]
13547 pub fn column_token(&self) -> Option<SyntaxToken> {
13548 support::token(&self.syntax, SyntaxKind::COLUMN_KW)
13549 }
13550 #[inline]
13551 pub fn database_token(&self) -> Option<SyntaxToken> {
13552 support::token(&self.syntax, SyntaxKind::DATABASE_KW)
13553 }
13554 #[inline]
13555 pub fn domain_token(&self) -> Option<SyntaxToken> {
13556 support::token(&self.syntax, SyntaxKind::DOMAIN_KW)
13557 }
13558 #[inline]
13559 pub fn event_token(&self) -> Option<SyntaxToken> {
13560 support::token(&self.syntax, SyntaxKind::EVENT_KW)
13561 }
13562 #[inline]
13563 pub fn foreign_token(&self) -> Option<SyntaxToken> {
13564 support::token(&self.syntax, SyntaxKind::FOREIGN_KW)
13565 }
13566 #[inline]
13567 pub fn function_token(&self) -> Option<SyntaxToken> {
13568 support::token(&self.syntax, SyntaxKind::FUNCTION_KW)
13569 }
13570 #[inline]
13571 pub fn is_token(&self) -> Option<SyntaxToken> {
13572 support::token(&self.syntax, SyntaxKind::IS_KW)
13573 }
13574 #[inline]
13575 pub fn label_token(&self) -> Option<SyntaxToken> {
13576 support::token(&self.syntax, SyntaxKind::LABEL_KW)
13577 }
13578 #[inline]
13579 pub fn language_token(&self) -> Option<SyntaxToken> {
13580 support::token(&self.syntax, SyntaxKind::LANGUAGE_KW)
13581 }
13582 #[inline]
13583 pub fn large_token(&self) -> Option<SyntaxToken> {
13584 support::token(&self.syntax, SyntaxKind::LARGE_KW)
13585 }
13586 #[inline]
13587 pub fn materialized_token(&self) -> Option<SyntaxToken> {
13588 support::token(&self.syntax, SyntaxKind::MATERIALIZED_KW)
13589 }
13590 #[inline]
13591 pub fn null_token(&self) -> Option<SyntaxToken> {
13592 support::token(&self.syntax, SyntaxKind::NULL_KW)
13593 }
13594 #[inline]
13595 pub fn object_token(&self) -> Option<SyntaxToken> {
13596 support::token(&self.syntax, SyntaxKind::OBJECT_KW)
13597 }
13598 #[inline]
13599 pub fn on_token(&self) -> Option<SyntaxToken> {
13600 support::token(&self.syntax, SyntaxKind::ON_KW)
13601 }
13602 #[inline]
13603 pub fn procedural_token(&self) -> Option<SyntaxToken> {
13604 support::token(&self.syntax, SyntaxKind::PROCEDURAL_KW)
13605 }
13606 #[inline]
13607 pub fn procedure_token(&self) -> Option<SyntaxToken> {
13608 support::token(&self.syntax, SyntaxKind::PROCEDURE_KW)
13609 }
13610 #[inline]
13611 pub fn publication_token(&self) -> Option<SyntaxToken> {
13612 support::token(&self.syntax, SyntaxKind::PUBLICATION_KW)
13613 }
13614 #[inline]
13615 pub fn role_token(&self) -> Option<SyntaxToken> {
13616 support::token(&self.syntax, SyntaxKind::ROLE_KW)
13617 }
13618 #[inline]
13619 pub fn routine_token(&self) -> Option<SyntaxToken> {
13620 support::token(&self.syntax, SyntaxKind::ROUTINE_KW)
13621 }
13622 #[inline]
13623 pub fn schema_token(&self) -> Option<SyntaxToken> {
13624 support::token(&self.syntax, SyntaxKind::SCHEMA_KW)
13625 }
13626 #[inline]
13627 pub fn security_token(&self) -> Option<SyntaxToken> {
13628 support::token(&self.syntax, SyntaxKind::SECURITY_KW)
13629 }
13630 #[inline]
13631 pub fn sequence_token(&self) -> Option<SyntaxToken> {
13632 support::token(&self.syntax, SyntaxKind::SEQUENCE_KW)
13633 }
13634 #[inline]
13635 pub fn subscription_token(&self) -> Option<SyntaxToken> {
13636 support::token(&self.syntax, SyntaxKind::SUBSCRIPTION_KW)
13637 }
13638 #[inline]
13639 pub fn table_token(&self) -> Option<SyntaxToken> {
13640 support::token(&self.syntax, SyntaxKind::TABLE_KW)
13641 }
13642 #[inline]
13643 pub fn tablespace_token(&self) -> Option<SyntaxToken> {
13644 support::token(&self.syntax, SyntaxKind::TABLESPACE_KW)
13645 }
13646 #[inline]
13647 pub fn trigger_token(&self) -> Option<SyntaxToken> {
13648 support::token(&self.syntax, SyntaxKind::TRIGGER_KW)
13649 }
13650 #[inline]
13651 pub fn type_token(&self) -> Option<SyntaxToken> {
13652 support::token(&self.syntax, SyntaxKind::TYPE_KW)
13653 }
13654 #[inline]
13655 pub fn view_token(&self) -> Option<SyntaxToken> {
13656 support::token(&self.syntax, SyntaxKind::VIEW_KW)
13657 }
13658}
13659
13660#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13661pub struct Select {
13662 pub(crate) syntax: SyntaxNode,
13663}
13664impl Select {
13665 #[inline]
13666 pub fn fetch_clause(&self) -> Option<FetchClause> {
13667 support::child(&self.syntax)
13668 }
13669 #[inline]
13670 pub fn filter_clause(&self) -> Option<FilterClause> {
13671 support::child(&self.syntax)
13672 }
13673 #[inline]
13674 pub fn from_clause(&self) -> Option<FromClause> {
13675 support::child(&self.syntax)
13676 }
13677 #[inline]
13678 pub fn group_by_clause(&self) -> Option<GroupByClause> {
13679 support::child(&self.syntax)
13680 }
13681 #[inline]
13682 pub fn having_clause(&self) -> Option<HavingClause> {
13683 support::child(&self.syntax)
13684 }
13685 #[inline]
13686 pub fn limit_clause(&self) -> Option<LimitClause> {
13687 support::child(&self.syntax)
13688 }
13689 #[inline]
13690 pub fn locking_clauses(&self) -> AstChildren<LockingClause> {
13691 support::children(&self.syntax)
13692 }
13693 #[inline]
13694 pub fn offset_clause(&self) -> Option<OffsetClause> {
13695 support::child(&self.syntax)
13696 }
13697 #[inline]
13698 pub fn order_by_clause(&self) -> Option<OrderByClause> {
13699 support::child(&self.syntax)
13700 }
13701 #[inline]
13702 pub fn select_clause(&self) -> Option<SelectClause> {
13703 support::child(&self.syntax)
13704 }
13705 #[inline]
13706 pub fn where_clause(&self) -> Option<WhereClause> {
13707 support::child(&self.syntax)
13708 }
13709 #[inline]
13710 pub fn window_clause(&self) -> Option<WindowClause> {
13711 support::child(&self.syntax)
13712 }
13713 #[inline]
13714 pub fn with_clause(&self) -> Option<WithClause> {
13715 support::child(&self.syntax)
13716 }
13717}
13718
13719#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13720pub struct SelectClause {
13721 pub(crate) syntax: SyntaxNode,
13722}
13723impl SelectClause {
13724 #[inline]
13725 pub fn distinct_clause(&self) -> Option<DistinctClause> {
13726 support::child(&self.syntax)
13727 }
13728 #[inline]
13729 pub fn target_list(&self) -> Option<TargetList> {
13730 support::child(&self.syntax)
13731 }
13732 #[inline]
13733 pub fn all_token(&self) -> Option<SyntaxToken> {
13734 support::token(&self.syntax, SyntaxKind::ALL_KW)
13735 }
13736 #[inline]
13737 pub fn select_token(&self) -> Option<SyntaxToken> {
13738 support::token(&self.syntax, SyntaxKind::SELECT_KW)
13739 }
13740}
13741
13742#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13743pub struct SelectInto {
13744 pub(crate) syntax: SyntaxNode,
13745}
13746impl SelectInto {
13747 #[inline]
13748 pub fn filter_clause(&self) -> Option<FilterClause> {
13749 support::child(&self.syntax)
13750 }
13751 #[inline]
13752 pub fn from_clause(&self) -> Option<FromClause> {
13753 support::child(&self.syntax)
13754 }
13755 #[inline]
13756 pub fn group_by_clause(&self) -> Option<GroupByClause> {
13757 support::child(&self.syntax)
13758 }
13759 #[inline]
13760 pub fn having_clause(&self) -> Option<HavingClause> {
13761 support::child(&self.syntax)
13762 }
13763 #[inline]
13764 pub fn into_clause(&self) -> Option<IntoClause> {
13765 support::child(&self.syntax)
13766 }
13767 #[inline]
13768 pub fn limit_clause(&self) -> Option<LimitClause> {
13769 support::child(&self.syntax)
13770 }
13771 #[inline]
13772 pub fn locking_clauses(&self) -> AstChildren<LockingClause> {
13773 support::children(&self.syntax)
13774 }
13775 #[inline]
13776 pub fn offset_clause(&self) -> Option<OffsetClause> {
13777 support::child(&self.syntax)
13778 }
13779 #[inline]
13780 pub fn order_by_clause(&self) -> Option<OrderByClause> {
13781 support::child(&self.syntax)
13782 }
13783 #[inline]
13784 pub fn select_clause(&self) -> Option<SelectClause> {
13785 support::child(&self.syntax)
13786 }
13787 #[inline]
13788 pub fn where_clause(&self) -> Option<WhereClause> {
13789 support::child(&self.syntax)
13790 }
13791 #[inline]
13792 pub fn window_clause(&self) -> Option<WindowClause> {
13793 support::child(&self.syntax)
13794 }
13795 #[inline]
13796 pub fn with_clause(&self) -> Option<WithClause> {
13797 support::child(&self.syntax)
13798 }
13799}
13800
13801#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13802pub struct SequenceOption {
13803 pub(crate) syntax: SyntaxNode,
13804}
13805impl SequenceOption {
13806 #[inline]
13807 pub fn literal(&self) -> Option<Literal> {
13808 support::child(&self.syntax)
13809 }
13810 #[inline]
13811 pub fn name_ref(&self) -> Option<NameRef> {
13812 support::child(&self.syntax)
13813 }
13814 #[inline]
13815 pub fn path(&self) -> Option<Path> {
13816 support::child(&self.syntax)
13817 }
13818 #[inline]
13819 pub fn ty(&self) -> Option<Type> {
13820 support::child(&self.syntax)
13821 }
13822 #[inline]
13823 pub fn as_token(&self) -> Option<SyntaxToken> {
13824 support::token(&self.syntax, SyntaxKind::AS_KW)
13825 }
13826 #[inline]
13827 pub fn by_token(&self) -> Option<SyntaxToken> {
13828 support::token(&self.syntax, SyntaxKind::BY_KW)
13829 }
13830 #[inline]
13831 pub fn cycle_token(&self) -> Option<SyntaxToken> {
13832 support::token(&self.syntax, SyntaxKind::CYCLE_KW)
13833 }
13834 #[inline]
13835 pub fn increment_token(&self) -> Option<SyntaxToken> {
13836 support::token(&self.syntax, SyntaxKind::INCREMENT_KW)
13837 }
13838 #[inline]
13839 pub fn logged_token(&self) -> Option<SyntaxToken> {
13840 support::token(&self.syntax, SyntaxKind::LOGGED_KW)
13841 }
13842 #[inline]
13843 pub fn maxvalue_token(&self) -> Option<SyntaxToken> {
13844 support::token(&self.syntax, SyntaxKind::MAXVALUE_KW)
13845 }
13846 #[inline]
13847 pub fn minvalue_token(&self) -> Option<SyntaxToken> {
13848 support::token(&self.syntax, SyntaxKind::MINVALUE_KW)
13849 }
13850 #[inline]
13851 pub fn name_token(&self) -> Option<SyntaxToken> {
13852 support::token(&self.syntax, SyntaxKind::NAME_KW)
13853 }
13854 #[inline]
13855 pub fn no_token(&self) -> Option<SyntaxToken> {
13856 support::token(&self.syntax, SyntaxKind::NO_KW)
13857 }
13858 #[inline]
13859 pub fn none_token(&self) -> Option<SyntaxToken> {
13860 support::token(&self.syntax, SyntaxKind::NONE_KW)
13861 }
13862 #[inline]
13863 pub fn owned_token(&self) -> Option<SyntaxToken> {
13864 support::token(&self.syntax, SyntaxKind::OWNED_KW)
13865 }
13866 #[inline]
13867 pub fn restart_token(&self) -> Option<SyntaxToken> {
13868 support::token(&self.syntax, SyntaxKind::RESTART_KW)
13869 }
13870 #[inline]
13871 pub fn sequence_token(&self) -> Option<SyntaxToken> {
13872 support::token(&self.syntax, SyntaxKind::SEQUENCE_KW)
13873 }
13874 #[inline]
13875 pub fn start_token(&self) -> Option<SyntaxToken> {
13876 support::token(&self.syntax, SyntaxKind::START_KW)
13877 }
13878 #[inline]
13879 pub fn unlogged_token(&self) -> Option<SyntaxToken> {
13880 support::token(&self.syntax, SyntaxKind::UNLOGGED_KW)
13881 }
13882 #[inline]
13883 pub fn with_token(&self) -> Option<SyntaxToken> {
13884 support::token(&self.syntax, SyntaxKind::WITH_KW)
13885 }
13886}
13887
13888#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13889pub struct SequenceOptionList {
13890 pub(crate) syntax: SyntaxNode,
13891}
13892impl SequenceOptionList {
13893 #[inline]
13894 pub fn sequence_options(&self) -> AstChildren<SequenceOption> {
13895 support::children(&self.syntax)
13896 }
13897 #[inline]
13898 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
13899 support::token(&self.syntax, SyntaxKind::L_PAREN)
13900 }
13901 #[inline]
13902 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
13903 support::token(&self.syntax, SyntaxKind::R_PAREN)
13904 }
13905}
13906
13907#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13908pub struct Serializable {
13909 pub(crate) syntax: SyntaxNode,
13910}
13911impl Serializable {
13912 #[inline]
13913 pub fn isolation_token(&self) -> Option<SyntaxToken> {
13914 support::token(&self.syntax, SyntaxKind::ISOLATION_KW)
13915 }
13916 #[inline]
13917 pub fn level_token(&self) -> Option<SyntaxToken> {
13918 support::token(&self.syntax, SyntaxKind::LEVEL_KW)
13919 }
13920 #[inline]
13921 pub fn serializable_token(&self) -> Option<SyntaxToken> {
13922 support::token(&self.syntax, SyntaxKind::SERIALIZABLE_KW)
13923 }
13924}
13925
13926#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13927pub struct ServerName {
13928 pub(crate) syntax: SyntaxNode,
13929}
13930impl ServerName {
13931 #[inline]
13932 pub fn name_ref(&self) -> Option<NameRef> {
13933 support::child(&self.syntax)
13934 }
13935 #[inline]
13936 pub fn server_token(&self) -> Option<SyntaxToken> {
13937 support::token(&self.syntax, SyntaxKind::SERVER_KW)
13938 }
13939}
13940
13941#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13942pub struct Set {
13943 pub(crate) syntax: SyntaxNode,
13944}
13945impl Set {
13946 #[inline]
13947 pub fn config_value(&self) -> Option<ConfigValue> {
13948 support::child(&self.syntax)
13949 }
13950 #[inline]
13951 pub fn config_values(&self) -> AstChildren<ConfigValue> {
13952 support::children(&self.syntax)
13953 }
13954 #[inline]
13955 pub fn literal(&self) -> Option<Literal> {
13956 support::child(&self.syntax)
13957 }
13958 #[inline]
13959 pub fn path(&self) -> Option<Path> {
13960 support::child(&self.syntax)
13961 }
13962 #[inline]
13963 pub fn eq_token(&self) -> Option<SyntaxToken> {
13964 support::token(&self.syntax, SyntaxKind::EQ)
13965 }
13966 #[inline]
13967 pub fn catalog_token(&self) -> Option<SyntaxToken> {
13968 support::token(&self.syntax, SyntaxKind::CATALOG_KW)
13969 }
13970 #[inline]
13971 pub fn content_token(&self) -> Option<SyntaxToken> {
13972 support::token(&self.syntax, SyntaxKind::CONTENT_KW)
13973 }
13974 #[inline]
13975 pub fn current_token(&self) -> Option<SyntaxToken> {
13976 support::token(&self.syntax, SyntaxKind::CURRENT_KW)
13977 }
13978 #[inline]
13979 pub fn default_token(&self) -> Option<SyntaxToken> {
13980 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
13981 }
13982 #[inline]
13983 pub fn document_token(&self) -> Option<SyntaxToken> {
13984 support::token(&self.syntax, SyntaxKind::DOCUMENT_KW)
13985 }
13986 #[inline]
13987 pub fn from_token(&self) -> Option<SyntaxToken> {
13988 support::token(&self.syntax, SyntaxKind::FROM_KW)
13989 }
13990 #[inline]
13991 pub fn local_token(&self) -> Option<SyntaxToken> {
13992 support::token(&self.syntax, SyntaxKind::LOCAL_KW)
13993 }
13994 #[inline]
13995 pub fn option_token(&self) -> Option<SyntaxToken> {
13996 support::token(&self.syntax, SyntaxKind::OPTION_KW)
13997 }
13998 #[inline]
13999 pub fn schema_token(&self) -> Option<SyntaxToken> {
14000 support::token(&self.syntax, SyntaxKind::SCHEMA_KW)
14001 }
14002 #[inline]
14003 pub fn session_token(&self) -> Option<SyntaxToken> {
14004 support::token(&self.syntax, SyntaxKind::SESSION_KW)
14005 }
14006 #[inline]
14007 pub fn set_token(&self) -> Option<SyntaxToken> {
14008 support::token(&self.syntax, SyntaxKind::SET_KW)
14009 }
14010 #[inline]
14011 pub fn time_token(&self) -> Option<SyntaxToken> {
14012 support::token(&self.syntax, SyntaxKind::TIME_KW)
14013 }
14014 #[inline]
14015 pub fn to_token(&self) -> Option<SyntaxToken> {
14016 support::token(&self.syntax, SyntaxKind::TO_KW)
14017 }
14018 #[inline]
14019 pub fn xml_token(&self) -> Option<SyntaxToken> {
14020 support::token(&self.syntax, SyntaxKind::XML_KW)
14021 }
14022 #[inline]
14023 pub fn zone_token(&self) -> Option<SyntaxToken> {
14024 support::token(&self.syntax, SyntaxKind::ZONE_KW)
14025 }
14026}
14027
14028#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14029pub struct SetAccessMethod {
14030 pub(crate) syntax: SyntaxNode,
14031}
14032impl SetAccessMethod {
14033 #[inline]
14034 pub fn name_ref(&self) -> Option<NameRef> {
14035 support::child(&self.syntax)
14036 }
14037 #[inline]
14038 pub fn access_token(&self) -> Option<SyntaxToken> {
14039 support::token(&self.syntax, SyntaxKind::ACCESS_KW)
14040 }
14041 #[inline]
14042 pub fn method_token(&self) -> Option<SyntaxToken> {
14043 support::token(&self.syntax, SyntaxKind::METHOD_KW)
14044 }
14045 #[inline]
14046 pub fn set_token(&self) -> Option<SyntaxToken> {
14047 support::token(&self.syntax, SyntaxKind::SET_KW)
14048 }
14049}
14050
14051#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14052pub struct SetClause {
14053 pub(crate) syntax: SyntaxNode,
14054}
14055impl SetClause {
14056 #[inline]
14057 pub fn set_column_list(&self) -> Option<SetColumnList> {
14058 support::child(&self.syntax)
14059 }
14060 #[inline]
14061 pub fn set_token(&self) -> Option<SyntaxToken> {
14062 support::token(&self.syntax, SyntaxKind::SET_KW)
14063 }
14064}
14065
14066#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14067pub struct SetColumnList {
14068 pub(crate) syntax: SyntaxNode,
14069}
14070impl SetColumnList {
14071 #[inline]
14072 pub fn set_columns(&self) -> AstChildren<SetColumn> {
14073 support::children(&self.syntax)
14074 }
14075}
14076
14077#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14078pub struct SetCompression {
14079 pub(crate) syntax: SyntaxNode,
14080}
14081impl SetCompression {
14082 #[inline]
14083 pub fn compression_token(&self) -> Option<SyntaxToken> {
14084 support::token(&self.syntax, SyntaxKind::COMPRESSION_KW)
14085 }
14086 #[inline]
14087 pub fn set_token(&self) -> Option<SyntaxToken> {
14088 support::token(&self.syntax, SyntaxKind::SET_KW)
14089 }
14090}
14091
14092#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14093pub struct SetConfigParam {
14094 pub(crate) syntax: SyntaxNode,
14095}
14096impl SetConfigParam {
14097 #[inline]
14098 pub fn path(&self) -> Option<Path> {
14099 support::child(&self.syntax)
14100 }
14101 #[inline]
14102 pub fn set_token(&self) -> Option<SyntaxToken> {
14103 support::token(&self.syntax, SyntaxKind::SET_KW)
14104 }
14105}
14106
14107#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14108pub struct SetConstraints {
14109 pub(crate) syntax: SyntaxNode,
14110}
14111impl SetConstraints {
14112 #[inline]
14113 pub fn paths(&self) -> AstChildren<Path> {
14114 support::children(&self.syntax)
14115 }
14116 #[inline]
14117 pub fn all_token(&self) -> Option<SyntaxToken> {
14118 support::token(&self.syntax, SyntaxKind::ALL_KW)
14119 }
14120 #[inline]
14121 pub fn constraints_token(&self) -> Option<SyntaxToken> {
14122 support::token(&self.syntax, SyntaxKind::CONSTRAINTS_KW)
14123 }
14124 #[inline]
14125 pub fn deferred_token(&self) -> Option<SyntaxToken> {
14126 support::token(&self.syntax, SyntaxKind::DEFERRED_KW)
14127 }
14128 #[inline]
14129 pub fn immediate_token(&self) -> Option<SyntaxToken> {
14130 support::token(&self.syntax, SyntaxKind::IMMEDIATE_KW)
14131 }
14132 #[inline]
14133 pub fn set_token(&self) -> Option<SyntaxToken> {
14134 support::token(&self.syntax, SyntaxKind::SET_KW)
14135 }
14136}
14137
14138#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14139pub struct SetDefault {
14140 pub(crate) syntax: SyntaxNode,
14141}
14142impl SetDefault {
14143 #[inline]
14144 pub fn expr(&self) -> Option<Expr> {
14145 support::child(&self.syntax)
14146 }
14147 #[inline]
14148 pub fn default_token(&self) -> Option<SyntaxToken> {
14149 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
14150 }
14151 #[inline]
14152 pub fn set_token(&self) -> Option<SyntaxToken> {
14153 support::token(&self.syntax, SyntaxKind::SET_KW)
14154 }
14155}
14156
14157#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14158pub struct SetDefaultColumns {
14159 pub(crate) syntax: SyntaxNode,
14160}
14161impl SetDefaultColumns {
14162 #[inline]
14163 pub fn column_list(&self) -> Option<ColumnList> {
14164 support::child(&self.syntax)
14165 }
14166 #[inline]
14167 pub fn default_token(&self) -> Option<SyntaxToken> {
14168 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
14169 }
14170 #[inline]
14171 pub fn set_token(&self) -> Option<SyntaxToken> {
14172 support::token(&self.syntax, SyntaxKind::SET_KW)
14173 }
14174}
14175
14176#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14177pub struct SetExpr {
14178 pub(crate) syntax: SyntaxNode,
14179}
14180impl SetExpr {
14181 #[inline]
14182 pub fn expr(&self) -> Option<Expr> {
14183 support::child(&self.syntax)
14184 }
14185 #[inline]
14186 pub fn default_token(&self) -> Option<SyntaxToken> {
14187 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
14188 }
14189}
14190
14191#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14192pub struct SetExprList {
14193 pub(crate) syntax: SyntaxNode,
14194}
14195impl SetExprList {
14196 #[inline]
14197 pub fn set_exprs(&self) -> AstChildren<SetExpr> {
14198 support::children(&self.syntax)
14199 }
14200 #[inline]
14201 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
14202 support::token(&self.syntax, SyntaxKind::L_PAREN)
14203 }
14204 #[inline]
14205 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
14206 support::token(&self.syntax, SyntaxKind::R_PAREN)
14207 }
14208 #[inline]
14209 pub fn row_token(&self) -> Option<SyntaxToken> {
14210 support::token(&self.syntax, SyntaxKind::ROW_KW)
14211 }
14212}
14213
14214#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14215pub struct SetExpression {
14216 pub(crate) syntax: SyntaxNode,
14217}
14218impl SetExpression {
14219 #[inline]
14220 pub fn expr(&self) -> Option<Expr> {
14221 support::child(&self.syntax)
14222 }
14223 #[inline]
14224 pub fn expression_token(&self) -> Option<SyntaxToken> {
14225 support::token(&self.syntax, SyntaxKind::EXPRESSION_KW)
14226 }
14227 #[inline]
14228 pub fn set_token(&self) -> Option<SyntaxToken> {
14229 support::token(&self.syntax, SyntaxKind::SET_KW)
14230 }
14231}
14232
14233#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14234pub struct SetFuncOption {
14235 pub(crate) syntax: SyntaxNode,
14236}
14237impl SetFuncOption {
14238 #[inline]
14239 pub fn set_token(&self) -> Option<SyntaxToken> {
14240 support::token(&self.syntax, SyntaxKind::SET_KW)
14241 }
14242}
14243
14244#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14245pub struct SetGenerated {
14246 pub(crate) syntax: SyntaxNode,
14247}
14248impl SetGenerated {
14249 #[inline]
14250 pub fn set_token(&self) -> Option<SyntaxToken> {
14251 support::token(&self.syntax, SyntaxKind::SET_KW)
14252 }
14253}
14254
14255#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14256pub struct SetGeneratedOptions {
14257 pub(crate) syntax: SyntaxNode,
14258}
14259impl SetGeneratedOptions {
14260 #[inline]
14261 pub fn generated_token(&self) -> Option<SyntaxToken> {
14262 support::token(&self.syntax, SyntaxKind::GENERATED_KW)
14263 }
14264 #[inline]
14265 pub fn set_token(&self) -> Option<SyntaxToken> {
14266 support::token(&self.syntax, SyntaxKind::SET_KW)
14267 }
14268}
14269
14270#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14271pub struct SetLogged {
14272 pub(crate) syntax: SyntaxNode,
14273}
14274impl SetLogged {
14275 #[inline]
14276 pub fn logged_token(&self) -> Option<SyntaxToken> {
14277 support::token(&self.syntax, SyntaxKind::LOGGED_KW)
14278 }
14279 #[inline]
14280 pub fn set_token(&self) -> Option<SyntaxToken> {
14281 support::token(&self.syntax, SyntaxKind::SET_KW)
14282 }
14283}
14284
14285#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14286pub struct SetMultipleColumns {
14287 pub(crate) syntax: SyntaxNode,
14288}
14289impl SetMultipleColumns {
14290 #[inline]
14291 pub fn column_list(&self) -> Option<ColumnList> {
14292 support::child(&self.syntax)
14293 }
14294 #[inline]
14295 pub fn paren_select(&self) -> Option<ParenSelect> {
14296 support::child(&self.syntax)
14297 }
14298 #[inline]
14299 pub fn set_expr_list(&self) -> Option<SetExprList> {
14300 support::child(&self.syntax)
14301 }
14302 #[inline]
14303 pub fn eq_token(&self) -> Option<SyntaxToken> {
14304 support::token(&self.syntax, SyntaxKind::EQ)
14305 }
14306}
14307
14308#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14309pub struct SetNotNull {
14310 pub(crate) syntax: SyntaxNode,
14311}
14312impl SetNotNull {
14313 #[inline]
14314 pub fn not_token(&self) -> Option<SyntaxToken> {
14315 support::token(&self.syntax, SyntaxKind::NOT_KW)
14316 }
14317 #[inline]
14318 pub fn null_token(&self) -> Option<SyntaxToken> {
14319 support::token(&self.syntax, SyntaxKind::NULL_KW)
14320 }
14321 #[inline]
14322 pub fn set_token(&self) -> Option<SyntaxToken> {
14323 support::token(&self.syntax, SyntaxKind::SET_KW)
14324 }
14325}
14326
14327#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14328pub struct SetNullColumns {
14329 pub(crate) syntax: SyntaxNode,
14330}
14331impl SetNullColumns {
14332 #[inline]
14333 pub fn column_list(&self) -> Option<ColumnList> {
14334 support::child(&self.syntax)
14335 }
14336 #[inline]
14337 pub fn null_token(&self) -> Option<SyntaxToken> {
14338 support::token(&self.syntax, SyntaxKind::NULL_KW)
14339 }
14340 #[inline]
14341 pub fn set_token(&self) -> Option<SyntaxToken> {
14342 support::token(&self.syntax, SyntaxKind::SET_KW)
14343 }
14344}
14345
14346#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14347pub struct SetOptions {
14348 pub(crate) syntax: SyntaxNode,
14349}
14350impl SetOptions {
14351 #[inline]
14352 pub fn attribute_list(&self) -> Option<AttributeList> {
14353 support::child(&self.syntax)
14354 }
14355 #[inline]
14356 pub fn set_token(&self) -> Option<SyntaxToken> {
14357 support::token(&self.syntax, SyntaxKind::SET_KW)
14358 }
14359}
14360
14361#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14362pub struct SetOptionsList {
14363 pub(crate) syntax: SyntaxNode,
14364}
14365impl SetOptionsList {
14366 #[inline]
14367 pub fn alter_option_list(&self) -> Option<AlterOptionList> {
14368 support::child(&self.syntax)
14369 }
14370 #[inline]
14371 pub fn options_token(&self) -> Option<SyntaxToken> {
14372 support::token(&self.syntax, SyntaxKind::OPTIONS_KW)
14373 }
14374 #[inline]
14375 pub fn set_token(&self) -> Option<SyntaxToken> {
14376 support::token(&self.syntax, SyntaxKind::SET_KW)
14377 }
14378}
14379
14380#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14381pub struct SetRole {
14382 pub(crate) syntax: SyntaxNode,
14383}
14384impl SetRole {
14385 #[inline]
14386 pub fn role_ref(&self) -> Option<RoleRef> {
14387 support::child(&self.syntax)
14388 }
14389 #[inline]
14390 pub fn local_token(&self) -> Option<SyntaxToken> {
14391 support::token(&self.syntax, SyntaxKind::LOCAL_KW)
14392 }
14393 #[inline]
14394 pub fn none_token(&self) -> Option<SyntaxToken> {
14395 support::token(&self.syntax, SyntaxKind::NONE_KW)
14396 }
14397 #[inline]
14398 pub fn reset_token(&self) -> Option<SyntaxToken> {
14399 support::token(&self.syntax, SyntaxKind::RESET_KW)
14400 }
14401 #[inline]
14402 pub fn role_token(&self) -> Option<SyntaxToken> {
14403 support::token(&self.syntax, SyntaxKind::ROLE_KW)
14404 }
14405 #[inline]
14406 pub fn session_token(&self) -> Option<SyntaxToken> {
14407 support::token(&self.syntax, SyntaxKind::SESSION_KW)
14408 }
14409 #[inline]
14410 pub fn set_token(&self) -> Option<SyntaxToken> {
14411 support::token(&self.syntax, SyntaxKind::SET_KW)
14412 }
14413}
14414
14415#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14416pub struct SetSchema {
14417 pub(crate) syntax: SyntaxNode,
14418}
14419impl SetSchema {
14420 #[inline]
14421 pub fn name_ref(&self) -> Option<NameRef> {
14422 support::child(&self.syntax)
14423 }
14424 #[inline]
14425 pub fn schema_token(&self) -> Option<SyntaxToken> {
14426 support::token(&self.syntax, SyntaxKind::SCHEMA_KW)
14427 }
14428 #[inline]
14429 pub fn set_token(&self) -> Option<SyntaxToken> {
14430 support::token(&self.syntax, SyntaxKind::SET_KW)
14431 }
14432}
14433
14434#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14435pub struct SetSequenceOption {
14436 pub(crate) syntax: SyntaxNode,
14437}
14438impl SetSequenceOption {
14439 #[inline]
14440 pub fn set_token(&self) -> Option<SyntaxToken> {
14441 support::token(&self.syntax, SyntaxKind::SET_KW)
14442 }
14443}
14444
14445#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14446pub struct SetSessionAuth {
14447 pub(crate) syntax: SyntaxNode,
14448}
14449impl SetSessionAuth {
14450 #[inline]
14451 pub fn literal(&self) -> Option<Literal> {
14452 support::child(&self.syntax)
14453 }
14454 #[inline]
14455 pub fn role_ref(&self) -> Option<RoleRef> {
14456 support::child(&self.syntax)
14457 }
14458 #[inline]
14459 pub fn authorization_token(&self) -> Option<SyntaxToken> {
14460 support::token(&self.syntax, SyntaxKind::AUTHORIZATION_KW)
14461 }
14462 #[inline]
14463 pub fn default_token(&self) -> Option<SyntaxToken> {
14464 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
14465 }
14466 #[inline]
14467 pub fn local_token(&self) -> Option<SyntaxToken> {
14468 support::token(&self.syntax, SyntaxKind::LOCAL_KW)
14469 }
14470 #[inline]
14471 pub fn session_token(&self) -> Option<SyntaxToken> {
14472 support::token(&self.syntax, SyntaxKind::SESSION_KW)
14473 }
14474 #[inline]
14475 pub fn set_token(&self) -> Option<SyntaxToken> {
14476 support::token(&self.syntax, SyntaxKind::SET_KW)
14477 }
14478}
14479
14480#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14481pub struct SetSingleColumn {
14482 pub(crate) syntax: SyntaxNode,
14483}
14484impl SetSingleColumn {
14485 #[inline]
14486 pub fn column(&self) -> Option<Column> {
14487 support::child(&self.syntax)
14488 }
14489 #[inline]
14490 pub fn set_expr(&self) -> Option<SetExpr> {
14491 support::child(&self.syntax)
14492 }
14493 #[inline]
14494 pub fn eq_token(&self) -> Option<SyntaxToken> {
14495 support::token(&self.syntax, SyntaxKind::EQ)
14496 }
14497}
14498
14499#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14500pub struct SetStatistics {
14501 pub(crate) syntax: SyntaxNode,
14502}
14503impl SetStatistics {
14504 #[inline]
14505 pub fn set_token(&self) -> Option<SyntaxToken> {
14506 support::token(&self.syntax, SyntaxKind::SET_KW)
14507 }
14508 #[inline]
14509 pub fn statistics_token(&self) -> Option<SyntaxToken> {
14510 support::token(&self.syntax, SyntaxKind::STATISTICS_KW)
14511 }
14512}
14513
14514#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14515pub struct SetStorage {
14516 pub(crate) syntax: SyntaxNode,
14517}
14518impl SetStorage {
14519 #[inline]
14520 pub fn set_token(&self) -> Option<SyntaxToken> {
14521 support::token(&self.syntax, SyntaxKind::SET_KW)
14522 }
14523 #[inline]
14524 pub fn storage_token(&self) -> Option<SyntaxToken> {
14525 support::token(&self.syntax, SyntaxKind::STORAGE_KW)
14526 }
14527}
14528
14529#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14530pub struct SetTablespace {
14531 pub(crate) syntax: SyntaxNode,
14532}
14533impl SetTablespace {
14534 #[inline]
14535 pub fn path(&self) -> Option<Path> {
14536 support::child(&self.syntax)
14537 }
14538 #[inline]
14539 pub fn set_token(&self) -> Option<SyntaxToken> {
14540 support::token(&self.syntax, SyntaxKind::SET_KW)
14541 }
14542 #[inline]
14543 pub fn tablespace_token(&self) -> Option<SyntaxToken> {
14544 support::token(&self.syntax, SyntaxKind::TABLESPACE_KW)
14545 }
14546}
14547
14548#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14549pub struct SetTransaction {
14550 pub(crate) syntax: SyntaxNode,
14551}
14552impl SetTransaction {
14553 #[inline]
14554 pub fn literal(&self) -> Option<Literal> {
14555 support::child(&self.syntax)
14556 }
14557 #[inline]
14558 pub fn transaction_mode_list(&self) -> Option<TransactionModeList> {
14559 support::child(&self.syntax)
14560 }
14561 #[inline]
14562 pub fn as_token(&self) -> Option<SyntaxToken> {
14563 support::token(&self.syntax, SyntaxKind::AS_KW)
14564 }
14565 #[inline]
14566 pub fn characteristics_token(&self) -> Option<SyntaxToken> {
14567 support::token(&self.syntax, SyntaxKind::CHARACTERISTICS_KW)
14568 }
14569 #[inline]
14570 pub fn session_token(&self) -> Option<SyntaxToken> {
14571 support::token(&self.syntax, SyntaxKind::SESSION_KW)
14572 }
14573 #[inline]
14574 pub fn set_token(&self) -> Option<SyntaxToken> {
14575 support::token(&self.syntax, SyntaxKind::SET_KW)
14576 }
14577 #[inline]
14578 pub fn snapshot_token(&self) -> Option<SyntaxToken> {
14579 support::token(&self.syntax, SyntaxKind::SNAPSHOT_KW)
14580 }
14581 #[inline]
14582 pub fn transaction_token(&self) -> Option<SyntaxToken> {
14583 support::token(&self.syntax, SyntaxKind::TRANSACTION_KW)
14584 }
14585}
14586
14587#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14588pub struct SetType {
14589 pub(crate) syntax: SyntaxNode,
14590}
14591impl SetType {
14592 #[inline]
14593 pub fn collate(&self) -> Option<Collate> {
14594 support::child(&self.syntax)
14595 }
14596 #[inline]
14597 pub fn ty(&self) -> Option<Type> {
14598 support::child(&self.syntax)
14599 }
14600 #[inline]
14601 pub fn set_token(&self) -> Option<SyntaxToken> {
14602 support::token(&self.syntax, SyntaxKind::SET_KW)
14603 }
14604 #[inline]
14605 pub fn type_token(&self) -> Option<SyntaxToken> {
14606 support::token(&self.syntax, SyntaxKind::TYPE_KW)
14607 }
14608}
14609
14610#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14611pub struct SetUnlogged {
14612 pub(crate) syntax: SyntaxNode,
14613}
14614impl SetUnlogged {
14615 #[inline]
14616 pub fn set_token(&self) -> Option<SyntaxToken> {
14617 support::token(&self.syntax, SyntaxKind::SET_KW)
14618 }
14619 #[inline]
14620 pub fn unlogged_token(&self) -> Option<SyntaxToken> {
14621 support::token(&self.syntax, SyntaxKind::UNLOGGED_KW)
14622 }
14623}
14624
14625#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14626pub struct SetWithoutCluster {
14627 pub(crate) syntax: SyntaxNode,
14628}
14629impl SetWithoutCluster {
14630 #[inline]
14631 pub fn cluster_token(&self) -> Option<SyntaxToken> {
14632 support::token(&self.syntax, SyntaxKind::CLUSTER_KW)
14633 }
14634 #[inline]
14635 pub fn set_token(&self) -> Option<SyntaxToken> {
14636 support::token(&self.syntax, SyntaxKind::SET_KW)
14637 }
14638 #[inline]
14639 pub fn without_token(&self) -> Option<SyntaxToken> {
14640 support::token(&self.syntax, SyntaxKind::WITHOUT_KW)
14641 }
14642}
14643
14644#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14645pub struct SetWithoutOids {
14646 pub(crate) syntax: SyntaxNode,
14647}
14648impl SetWithoutOids {
14649 #[inline]
14650 pub fn oids_token(&self) -> Option<SyntaxToken> {
14651 support::token(&self.syntax, SyntaxKind::OIDS_KW)
14652 }
14653 #[inline]
14654 pub fn set_token(&self) -> Option<SyntaxToken> {
14655 support::token(&self.syntax, SyntaxKind::SET_KW)
14656 }
14657 #[inline]
14658 pub fn without_token(&self) -> Option<SyntaxToken> {
14659 support::token(&self.syntax, SyntaxKind::WITHOUT_KW)
14660 }
14661}
14662
14663#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14664pub struct Show {
14665 pub(crate) syntax: SyntaxNode,
14666}
14667impl Show {
14668 #[inline]
14669 pub fn show_token(&self) -> Option<SyntaxToken> {
14670 support::token(&self.syntax, SyntaxKind::SHOW_KW)
14671 }
14672}
14673
14674#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14675pub struct SimilarTo {
14676 pub(crate) syntax: SyntaxNode,
14677}
14678impl SimilarTo {
14679 #[inline]
14680 pub fn similar_token(&self) -> Option<SyntaxToken> {
14681 support::token(&self.syntax, SyntaxKind::SIMILAR_KW)
14682 }
14683 #[inline]
14684 pub fn to_token(&self) -> Option<SyntaxToken> {
14685 support::token(&self.syntax, SyntaxKind::TO_KW)
14686 }
14687}
14688
14689#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14690pub struct SliceExpr {
14691 pub(crate) syntax: SyntaxNode,
14692}
14693impl SliceExpr {
14694 #[inline]
14695 pub fn l_brack_token(&self) -> Option<SyntaxToken> {
14696 support::token(&self.syntax, SyntaxKind::L_BRACK)
14697 }
14698 #[inline]
14699 pub fn r_brack_token(&self) -> Option<SyntaxToken> {
14700 support::token(&self.syntax, SyntaxKind::R_BRACK)
14701 }
14702 #[inline]
14703 pub fn colon_token(&self) -> Option<SyntaxToken> {
14704 support::token(&self.syntax, SyntaxKind::COLON)
14705 }
14706}
14707
14708#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14709pub struct SomeFn {
14710 pub(crate) syntax: SyntaxNode,
14711}
14712impl SomeFn {
14713 #[inline]
14714 pub fn expr(&self) -> Option<Expr> {
14715 support::child(&self.syntax)
14716 }
14717 #[inline]
14718 pub fn select_variant(&self) -> Option<SelectVariant> {
14719 support::child(&self.syntax)
14720 }
14721 #[inline]
14722 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
14723 support::token(&self.syntax, SyntaxKind::L_PAREN)
14724 }
14725 #[inline]
14726 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
14727 support::token(&self.syntax, SyntaxKind::R_PAREN)
14728 }
14729 #[inline]
14730 pub fn some_token(&self) -> Option<SyntaxToken> {
14731 support::token(&self.syntax, SyntaxKind::SOME_KW)
14732 }
14733}
14734
14735#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14736pub struct SortAsc {
14737 pub(crate) syntax: SyntaxNode,
14738}
14739impl SortAsc {
14740 #[inline]
14741 pub fn asc_token(&self) -> Option<SyntaxToken> {
14742 support::token(&self.syntax, SyntaxKind::ASC_KW)
14743 }
14744}
14745
14746#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14747pub struct SortBy {
14748 pub(crate) syntax: SyntaxNode,
14749}
14750impl SortBy {
14751 #[inline]
14752 pub fn expr(&self) -> Option<Expr> {
14753 support::child(&self.syntax)
14754 }
14755 #[inline]
14756 pub fn nulls_first(&self) -> Option<NullsFirst> {
14757 support::child(&self.syntax)
14758 }
14759 #[inline]
14760 pub fn nulls_last(&self) -> Option<NullsLast> {
14761 support::child(&self.syntax)
14762 }
14763 #[inline]
14764 pub fn sort_asc(&self) -> Option<SortAsc> {
14765 support::child(&self.syntax)
14766 }
14767 #[inline]
14768 pub fn sort_desc(&self) -> Option<SortDesc> {
14769 support::child(&self.syntax)
14770 }
14771 #[inline]
14772 pub fn sort_using(&self) -> Option<SortUsing> {
14773 support::child(&self.syntax)
14774 }
14775}
14776
14777#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14778pub struct SortByList {
14779 pub(crate) syntax: SyntaxNode,
14780}
14781impl SortByList {
14782 #[inline]
14783 pub fn sort_bys(&self) -> AstChildren<SortBy> {
14784 support::children(&self.syntax)
14785 }
14786}
14787
14788#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14789pub struct SortDesc {
14790 pub(crate) syntax: SyntaxNode,
14791}
14792impl SortDesc {
14793 #[inline]
14794 pub fn desc_token(&self) -> Option<SyntaxToken> {
14795 support::token(&self.syntax, SyntaxKind::DESC_KW)
14796 }
14797}
14798
14799#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14800pub struct SortUsing {
14801 pub(crate) syntax: SyntaxNode,
14802}
14803impl SortUsing {
14804 #[inline]
14805 pub fn op(&self) -> Option<Op> {
14806 support::child(&self.syntax)
14807 }
14808 #[inline]
14809 pub fn using_token(&self) -> Option<SyntaxToken> {
14810 support::token(&self.syntax, SyntaxKind::USING_KW)
14811 }
14812}
14813
14814#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14815pub struct SourceFile {
14816 pub(crate) syntax: SyntaxNode,
14817}
14818impl SourceFile {
14819 #[inline]
14820 pub fn stmts(&self) -> AstChildren<Stmt> {
14821 support::children(&self.syntax)
14822 }
14823}
14824
14825#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14826pub struct SplitPartition {
14827 pub(crate) syntax: SyntaxNode,
14828}
14829impl SplitPartition {
14830 #[inline]
14831 pub fn partition_list(&self) -> Option<PartitionList> {
14832 support::child(&self.syntax)
14833 }
14834 #[inline]
14835 pub fn into_token(&self) -> Option<SyntaxToken> {
14836 support::token(&self.syntax, SyntaxKind::INTO_KW)
14837 }
14838 #[inline]
14839 pub fn partition_token(&self) -> Option<SyntaxToken> {
14840 support::token(&self.syntax, SyntaxKind::PARTITION_KW)
14841 }
14842 #[inline]
14843 pub fn split_token(&self) -> Option<SyntaxToken> {
14844 support::token(&self.syntax, SyntaxKind::SPLIT_KW)
14845 }
14846}
14847
14848#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14849pub struct Storage {
14850 pub(crate) syntax: SyntaxNode,
14851}
14852impl Storage {
14853 #[inline]
14854 pub fn default_token(&self) -> Option<SyntaxToken> {
14855 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
14856 }
14857 #[inline]
14858 pub fn external_token(&self) -> Option<SyntaxToken> {
14859 support::token(&self.syntax, SyntaxKind::EXTERNAL_KW)
14860 }
14861 #[inline]
14862 pub fn ident_token(&self) -> Option<SyntaxToken> {
14863 support::token(&self.syntax, SyntaxKind::IDENT)
14864 }
14865 #[inline]
14866 pub fn storage_token(&self) -> Option<SyntaxToken> {
14867 support::token(&self.syntax, SyntaxKind::STORAGE_KW)
14868 }
14869}
14870
14871#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14872pub struct StrictFuncOption {
14873 pub(crate) syntax: SyntaxNode,
14874}
14875impl StrictFuncOption {
14876 #[inline]
14877 pub fn called_token(&self) -> Option<SyntaxToken> {
14878 support::token(&self.syntax, SyntaxKind::CALLED_KW)
14879 }
14880 #[inline]
14881 pub fn input_token(&self) -> Option<SyntaxToken> {
14882 support::token(&self.syntax, SyntaxKind::INPUT_KW)
14883 }
14884 #[inline]
14885 pub fn null_token(&self) -> Option<SyntaxToken> {
14886 support::token(&self.syntax, SyntaxKind::NULL_KW)
14887 }
14888 #[inline]
14889 pub fn on_token(&self) -> Option<SyntaxToken> {
14890 support::token(&self.syntax, SyntaxKind::ON_KW)
14891 }
14892 #[inline]
14893 pub fn returns_token(&self) -> Option<SyntaxToken> {
14894 support::token(&self.syntax, SyntaxKind::RETURNS_KW)
14895 }
14896 #[inline]
14897 pub fn strict_token(&self) -> Option<SyntaxToken> {
14898 support::token(&self.syntax, SyntaxKind::STRICT_KW)
14899 }
14900}
14901
14902#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14903pub struct SubstringFn {
14904 pub(crate) syntax: SyntaxNode,
14905}
14906impl SubstringFn {
14907 #[inline]
14908 pub fn expr(&self) -> Option<Expr> {
14909 support::child(&self.syntax)
14910 }
14911 #[inline]
14912 pub fn exprs(&self) -> AstChildren<Expr> {
14913 support::children(&self.syntax)
14914 }
14915 #[inline]
14916 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
14917 support::token(&self.syntax, SyntaxKind::L_PAREN)
14918 }
14919 #[inline]
14920 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
14921 support::token(&self.syntax, SyntaxKind::R_PAREN)
14922 }
14923 #[inline]
14924 pub fn for_token(&self) -> Option<SyntaxToken> {
14925 support::token(&self.syntax, SyntaxKind::FOR_KW)
14926 }
14927 #[inline]
14928 pub fn from_token(&self) -> Option<SyntaxToken> {
14929 support::token(&self.syntax, SyntaxKind::FROM_KW)
14930 }
14931 #[inline]
14932 pub fn similar_token(&self) -> Option<SyntaxToken> {
14933 support::token(&self.syntax, SyntaxKind::SIMILAR_KW)
14934 }
14935 #[inline]
14936 pub fn substring_token(&self) -> Option<SyntaxToken> {
14937 support::token(&self.syntax, SyntaxKind::SUBSTRING_KW)
14938 }
14939}
14940
14941#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14942pub struct SupportFuncOption {
14943 pub(crate) syntax: SyntaxNode,
14944}
14945impl SupportFuncOption {
14946 #[inline]
14947 pub fn support_token(&self) -> Option<SyntaxToken> {
14948 support::token(&self.syntax, SyntaxKind::SUPPORT_KW)
14949 }
14950}
14951
14952#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14953pub struct Table {
14954 pub(crate) syntax: SyntaxNode,
14955}
14956impl Table {
14957 #[inline]
14958 pub fn relation_name(&self) -> Option<RelationName> {
14959 support::child(&self.syntax)
14960 }
14961 #[inline]
14962 pub fn with_clause(&self) -> Option<WithClause> {
14963 support::child(&self.syntax)
14964 }
14965 #[inline]
14966 pub fn table_token(&self) -> Option<SyntaxToken> {
14967 support::token(&self.syntax, SyntaxKind::TABLE_KW)
14968 }
14969}
14970
14971#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14972pub struct TableAndColumns {
14973 pub(crate) syntax: SyntaxNode,
14974}
14975impl TableAndColumns {
14976 #[inline]
14977 pub fn column_list(&self) -> Option<ColumnList> {
14978 support::child(&self.syntax)
14979 }
14980 #[inline]
14981 pub fn relation_name(&self) -> Option<RelationName> {
14982 support::child(&self.syntax)
14983 }
14984}
14985
14986#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14987pub struct TableAndColumnsList {
14988 pub(crate) syntax: SyntaxNode,
14989}
14990impl TableAndColumnsList {
14991 #[inline]
14992 pub fn table_and_columnss(&self) -> AstChildren<TableAndColumns> {
14993 support::children(&self.syntax)
14994 }
14995}
14996
14997#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14998pub struct TableArgList {
14999 pub(crate) syntax: SyntaxNode,
15000}
15001impl TableArgList {
15002 #[inline]
15003 pub fn args(&self) -> AstChildren<TableArg> {
15004 support::children(&self.syntax)
15005 }
15006 #[inline]
15007 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
15008 support::token(&self.syntax, SyntaxKind::L_PAREN)
15009 }
15010 #[inline]
15011 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
15012 support::token(&self.syntax, SyntaxKind::R_PAREN)
15013 }
15014}
15015
15016#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15017pub struct TableList {
15018 pub(crate) syntax: SyntaxNode,
15019}
15020impl TableList {
15021 #[inline]
15022 pub fn relation_names(&self) -> AstChildren<RelationName> {
15023 support::children(&self.syntax)
15024 }
15025}
15026
15027#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15028pub struct TablesampleClause {
15029 pub(crate) syntax: SyntaxNode,
15030}
15031impl TablesampleClause {
15032 #[inline]
15033 pub fn call_expr(&self) -> Option<CallExpr> {
15034 support::child(&self.syntax)
15035 }
15036 #[inline]
15037 pub fn repeatable_clause(&self) -> Option<RepeatableClause> {
15038 support::child(&self.syntax)
15039 }
15040 #[inline]
15041 pub fn tablesample_token(&self) -> Option<SyntaxToken> {
15042 support::token(&self.syntax, SyntaxKind::TABLESAMPLE_KW)
15043 }
15044}
15045
15046#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15047pub struct Tablespace {
15048 pub(crate) syntax: SyntaxNode,
15049}
15050impl Tablespace {
15051 #[inline]
15052 pub fn name_ref(&self) -> Option<NameRef> {
15053 support::child(&self.syntax)
15054 }
15055 #[inline]
15056 pub fn tablespace_token(&self) -> Option<SyntaxToken> {
15057 support::token(&self.syntax, SyntaxKind::TABLESPACE_KW)
15058 }
15059}
15060
15061#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15062pub struct Target {
15063 pub(crate) syntax: SyntaxNode,
15064}
15065impl Target {
15066 #[inline]
15067 pub fn as_name(&self) -> Option<AsName> {
15068 support::child(&self.syntax)
15069 }
15070 #[inline]
15071 pub fn expr(&self) -> Option<Expr> {
15072 support::child(&self.syntax)
15073 }
15074 #[inline]
15075 pub fn star_token(&self) -> Option<SyntaxToken> {
15076 support::token(&self.syntax, SyntaxKind::STAR)
15077 }
15078}
15079
15080#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15081pub struct TargetList {
15082 pub(crate) syntax: SyntaxNode,
15083}
15084impl TargetList {
15085 #[inline]
15086 pub fn targets(&self) -> AstChildren<Target> {
15087 support::children(&self.syntax)
15088 }
15089}
15090
15091#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15092pub struct TimeType {
15093 pub(crate) syntax: SyntaxNode,
15094}
15095impl TimeType {
15096 #[inline]
15097 pub fn literal(&self) -> Option<Literal> {
15098 support::child(&self.syntax)
15099 }
15100 #[inline]
15101 pub fn timezone(&self) -> Option<Timezone> {
15102 support::child(&self.syntax)
15103 }
15104 #[inline]
15105 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
15106 support::token(&self.syntax, SyntaxKind::L_PAREN)
15107 }
15108 #[inline]
15109 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
15110 support::token(&self.syntax, SyntaxKind::R_PAREN)
15111 }
15112 #[inline]
15113 pub fn time_token(&self) -> Option<SyntaxToken> {
15114 support::token(&self.syntax, SyntaxKind::TIME_KW)
15115 }
15116 #[inline]
15117 pub fn timestamp_token(&self) -> Option<SyntaxToken> {
15118 support::token(&self.syntax, SyntaxKind::TIMESTAMP_KW)
15119 }
15120}
15121
15122#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15123pub struct Timing {
15124 pub(crate) syntax: SyntaxNode,
15125}
15126impl Timing {
15127 #[inline]
15128 pub fn after_token(&self) -> Option<SyntaxToken> {
15129 support::token(&self.syntax, SyntaxKind::AFTER_KW)
15130 }
15131 #[inline]
15132 pub fn before_token(&self) -> Option<SyntaxToken> {
15133 support::token(&self.syntax, SyntaxKind::BEFORE_KW)
15134 }
15135 #[inline]
15136 pub fn instead_token(&self) -> Option<SyntaxToken> {
15137 support::token(&self.syntax, SyntaxKind::INSTEAD_KW)
15138 }
15139 #[inline]
15140 pub fn of_token(&self) -> Option<SyntaxToken> {
15141 support::token(&self.syntax, SyntaxKind::OF_KW)
15142 }
15143}
15144
15145#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15146pub struct TransactionModeList {
15147 pub(crate) syntax: SyntaxNode,
15148}
15149impl TransactionModeList {
15150 #[inline]
15151 pub fn transaction_modes(&self) -> AstChildren<TransactionMode> {
15152 support::children(&self.syntax)
15153 }
15154}
15155
15156#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15157pub struct TransformFromFunc {
15158 pub(crate) syntax: SyntaxNode,
15159}
15160impl TransformFromFunc {
15161 #[inline]
15162 pub fn function_sig(&self) -> Option<FunctionSig> {
15163 support::child(&self.syntax)
15164 }
15165 #[inline]
15166 pub fn from_token(&self) -> Option<SyntaxToken> {
15167 support::token(&self.syntax, SyntaxKind::FROM_KW)
15168 }
15169 #[inline]
15170 pub fn function_token(&self) -> Option<SyntaxToken> {
15171 support::token(&self.syntax, SyntaxKind::FUNCTION_KW)
15172 }
15173 #[inline]
15174 pub fn sql_token(&self) -> Option<SyntaxToken> {
15175 support::token(&self.syntax, SyntaxKind::SQL_KW)
15176 }
15177 #[inline]
15178 pub fn with_token(&self) -> Option<SyntaxToken> {
15179 support::token(&self.syntax, SyntaxKind::WITH_KW)
15180 }
15181}
15182
15183#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15184pub struct TransformFuncOption {
15185 pub(crate) syntax: SyntaxNode,
15186}
15187impl TransformFuncOption {
15188 #[inline]
15189 pub fn transform_token(&self) -> Option<SyntaxToken> {
15190 support::token(&self.syntax, SyntaxKind::TRANSFORM_KW)
15191 }
15192}
15193
15194#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15195pub struct TransformToFunc {
15196 pub(crate) syntax: SyntaxNode,
15197}
15198impl TransformToFunc {
15199 #[inline]
15200 pub fn function_sig(&self) -> Option<FunctionSig> {
15201 support::child(&self.syntax)
15202 }
15203 #[inline]
15204 pub fn function_token(&self) -> Option<SyntaxToken> {
15205 support::token(&self.syntax, SyntaxKind::FUNCTION_KW)
15206 }
15207 #[inline]
15208 pub fn sql_token(&self) -> Option<SyntaxToken> {
15209 support::token(&self.syntax, SyntaxKind::SQL_KW)
15210 }
15211 #[inline]
15212 pub fn to_token(&self) -> Option<SyntaxToken> {
15213 support::token(&self.syntax, SyntaxKind::TO_KW)
15214 }
15215 #[inline]
15216 pub fn with_token(&self) -> Option<SyntaxToken> {
15217 support::token(&self.syntax, SyntaxKind::WITH_KW)
15218 }
15219}
15220
15221#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15222pub struct TriggerEvent {
15223 pub(crate) syntax: SyntaxNode,
15224}
15225impl TriggerEvent {
15226 #[inline]
15227 pub fn trigger_event_update(&self) -> Option<TriggerEventUpdate> {
15228 support::child(&self.syntax)
15229 }
15230 #[inline]
15231 pub fn delete_token(&self) -> Option<SyntaxToken> {
15232 support::token(&self.syntax, SyntaxKind::DELETE_KW)
15233 }
15234 #[inline]
15235 pub fn insert_token(&self) -> Option<SyntaxToken> {
15236 support::token(&self.syntax, SyntaxKind::INSERT_KW)
15237 }
15238 #[inline]
15239 pub fn truncate_token(&self) -> Option<SyntaxToken> {
15240 support::token(&self.syntax, SyntaxKind::TRUNCATE_KW)
15241 }
15242}
15243
15244#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15245pub struct TriggerEventList {
15246 pub(crate) syntax: SyntaxNode,
15247}
15248impl TriggerEventList {
15249 #[inline]
15250 pub fn trigger_events(&self) -> AstChildren<TriggerEvent> {
15251 support::children(&self.syntax)
15252 }
15253}
15254
15255#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15256pub struct TriggerEventUpdate {
15257 pub(crate) syntax: SyntaxNode,
15258}
15259impl TriggerEventUpdate {
15260 #[inline]
15261 pub fn name_refs(&self) -> AstChildren<NameRef> {
15262 support::children(&self.syntax)
15263 }
15264 #[inline]
15265 pub fn of_token(&self) -> Option<SyntaxToken> {
15266 support::token(&self.syntax, SyntaxKind::OF_KW)
15267 }
15268 #[inline]
15269 pub fn update_token(&self) -> Option<SyntaxToken> {
15270 support::token(&self.syntax, SyntaxKind::UPDATE_KW)
15271 }
15272}
15273
15274#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15275pub struct TrimFn {
15276 pub(crate) syntax: SyntaxNode,
15277}
15278impl TrimFn {
15279 #[inline]
15280 pub fn expr(&self) -> Option<Expr> {
15281 support::child(&self.syntax)
15282 }
15283 #[inline]
15284 pub fn exprs(&self) -> AstChildren<Expr> {
15285 support::children(&self.syntax)
15286 }
15287 #[inline]
15288 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
15289 support::token(&self.syntax, SyntaxKind::L_PAREN)
15290 }
15291 #[inline]
15292 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
15293 support::token(&self.syntax, SyntaxKind::R_PAREN)
15294 }
15295 #[inline]
15296 pub fn from_token(&self) -> Option<SyntaxToken> {
15297 support::token(&self.syntax, SyntaxKind::FROM_KW)
15298 }
15299 #[inline]
15300 pub fn trim_token(&self) -> Option<SyntaxToken> {
15301 support::token(&self.syntax, SyntaxKind::TRIM_KW)
15302 }
15303}
15304
15305#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15306pub struct Truncate {
15307 pub(crate) syntax: SyntaxNode,
15308}
15309impl Truncate {
15310 #[inline]
15311 pub fn table_list(&self) -> Option<TableList> {
15312 support::child(&self.syntax)
15313 }
15314 #[inline]
15315 pub fn cascade_token(&self) -> Option<SyntaxToken> {
15316 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
15317 }
15318 #[inline]
15319 pub fn continue_token(&self) -> Option<SyntaxToken> {
15320 support::token(&self.syntax, SyntaxKind::CONTINUE_KW)
15321 }
15322 #[inline]
15323 pub fn identity_token(&self) -> Option<SyntaxToken> {
15324 support::token(&self.syntax, SyntaxKind::IDENTITY_KW)
15325 }
15326 #[inline]
15327 pub fn restart_token(&self) -> Option<SyntaxToken> {
15328 support::token(&self.syntax, SyntaxKind::RESTART_KW)
15329 }
15330 #[inline]
15331 pub fn restrict_token(&self) -> Option<SyntaxToken> {
15332 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
15333 }
15334 #[inline]
15335 pub fn table_token(&self) -> Option<SyntaxToken> {
15336 support::token(&self.syntax, SyntaxKind::TABLE_KW)
15337 }
15338 #[inline]
15339 pub fn truncate_token(&self) -> Option<SyntaxToken> {
15340 support::token(&self.syntax, SyntaxKind::TRUNCATE_KW)
15341 }
15342}
15343
15344#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15345pub struct TupleExpr {
15346 pub(crate) syntax: SyntaxNode,
15347}
15348impl TupleExpr {
15349 #[inline]
15350 pub fn exprs(&self) -> AstChildren<Expr> {
15351 support::children(&self.syntax)
15352 }
15353 #[inline]
15354 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
15355 support::token(&self.syntax, SyntaxKind::L_PAREN)
15356 }
15357 #[inline]
15358 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
15359 support::token(&self.syntax, SyntaxKind::R_PAREN)
15360 }
15361}
15362
15363#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15364pub struct UnicodeNormalForm {
15365 pub(crate) syntax: SyntaxNode,
15366}
15367impl UnicodeNormalForm {
15368 #[inline]
15369 pub fn nfc_token(&self) -> Option<SyntaxToken> {
15370 support::token(&self.syntax, SyntaxKind::NFC_KW)
15371 }
15372 #[inline]
15373 pub fn nfd_token(&self) -> Option<SyntaxToken> {
15374 support::token(&self.syntax, SyntaxKind::NFD_KW)
15375 }
15376 #[inline]
15377 pub fn nfkc_token(&self) -> Option<SyntaxToken> {
15378 support::token(&self.syntax, SyntaxKind::NFKC_KW)
15379 }
15380 #[inline]
15381 pub fn nfkd_token(&self) -> Option<SyntaxToken> {
15382 support::token(&self.syntax, SyntaxKind::NFKD_KW)
15383 }
15384}
15385
15386#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15387pub struct UniqueConstraint {
15388 pub(crate) syntax: SyntaxNode,
15389}
15390impl UniqueConstraint {
15391 #[inline]
15392 pub fn column_list(&self) -> Option<ColumnList> {
15393 support::child(&self.syntax)
15394 }
15395 #[inline]
15396 pub fn constraint_name(&self) -> Option<ConstraintName> {
15397 support::child(&self.syntax)
15398 }
15399 #[inline]
15400 pub fn nulls_distinct(&self) -> Option<NullsDistinct> {
15401 support::child(&self.syntax)
15402 }
15403 #[inline]
15404 pub fn nulls_not_distinct(&self) -> Option<NullsNotDistinct> {
15405 support::child(&self.syntax)
15406 }
15407 #[inline]
15408 pub fn using_index(&self) -> Option<UsingIndex> {
15409 support::child(&self.syntax)
15410 }
15411 #[inline]
15412 pub fn unique_token(&self) -> Option<SyntaxToken> {
15413 support::token(&self.syntax, SyntaxKind::UNIQUE_KW)
15414 }
15415}
15416
15417#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15418pub struct Unlisten {
15419 pub(crate) syntax: SyntaxNode,
15420}
15421impl Unlisten {
15422 #[inline]
15423 pub fn name_ref(&self) -> Option<NameRef> {
15424 support::child(&self.syntax)
15425 }
15426 #[inline]
15427 pub fn star_token(&self) -> Option<SyntaxToken> {
15428 support::token(&self.syntax, SyntaxKind::STAR)
15429 }
15430 #[inline]
15431 pub fn unlisten_token(&self) -> Option<SyntaxToken> {
15432 support::token(&self.syntax, SyntaxKind::UNLISTEN_KW)
15433 }
15434}
15435
15436#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15437pub struct Update {
15438 pub(crate) syntax: SyntaxNode,
15439}
15440impl Update {
15441 #[inline]
15442 pub fn alias(&self) -> Option<Alias> {
15443 support::child(&self.syntax)
15444 }
15445 #[inline]
15446 pub fn from_clause(&self) -> Option<FromClause> {
15447 support::child(&self.syntax)
15448 }
15449 #[inline]
15450 pub fn relation_name(&self) -> Option<RelationName> {
15451 support::child(&self.syntax)
15452 }
15453 #[inline]
15454 pub fn returning_clause(&self) -> Option<ReturningClause> {
15455 support::child(&self.syntax)
15456 }
15457 #[inline]
15458 pub fn set_clause(&self) -> Option<SetClause> {
15459 support::child(&self.syntax)
15460 }
15461 #[inline]
15462 pub fn where_clause(&self) -> Option<WhereClause> {
15463 support::child(&self.syntax)
15464 }
15465 #[inline]
15466 pub fn with_clause(&self) -> Option<WithClause> {
15467 support::child(&self.syntax)
15468 }
15469 #[inline]
15470 pub fn update_token(&self) -> Option<SyntaxToken> {
15471 support::token(&self.syntax, SyntaxKind::UPDATE_KW)
15472 }
15473}
15474
15475#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15476pub struct UsingClause {
15477 pub(crate) syntax: SyntaxNode,
15478}
15479impl UsingClause {
15480 #[inline]
15481 pub fn from_items(&self) -> AstChildren<FromItem> {
15482 support::children(&self.syntax)
15483 }
15484 #[inline]
15485 pub fn using_token(&self) -> Option<SyntaxToken> {
15486 support::token(&self.syntax, SyntaxKind::USING_KW)
15487 }
15488}
15489
15490#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15491pub struct UsingIndex {
15492 pub(crate) syntax: SyntaxNode,
15493}
15494impl UsingIndex {
15495 #[inline]
15496 pub fn name_ref(&self) -> Option<NameRef> {
15497 support::child(&self.syntax)
15498 }
15499 #[inline]
15500 pub fn index_token(&self) -> Option<SyntaxToken> {
15501 support::token(&self.syntax, SyntaxKind::INDEX_KW)
15502 }
15503 #[inline]
15504 pub fn using_token(&self) -> Option<SyntaxToken> {
15505 support::token(&self.syntax, SyntaxKind::USING_KW)
15506 }
15507}
15508
15509#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15510pub struct UsingMethod {
15511 pub(crate) syntax: SyntaxNode,
15512}
15513impl UsingMethod {
15514 #[inline]
15515 pub fn name_ref(&self) -> Option<NameRef> {
15516 support::child(&self.syntax)
15517 }
15518 #[inline]
15519 pub fn using_token(&self) -> Option<SyntaxToken> {
15520 support::token(&self.syntax, SyntaxKind::USING_KW)
15521 }
15522}
15523
15524#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15525pub struct UsingOnClause {
15526 pub(crate) syntax: SyntaxNode,
15527}
15528impl UsingOnClause {
15529 #[inline]
15530 pub fn from_item(&self) -> Option<FromItem> {
15531 support::child(&self.syntax)
15532 }
15533 #[inline]
15534 pub fn on_clause(&self) -> Option<OnClause> {
15535 support::child(&self.syntax)
15536 }
15537 #[inline]
15538 pub fn using_token(&self) -> Option<SyntaxToken> {
15539 support::token(&self.syntax, SyntaxKind::USING_KW)
15540 }
15541}
15542
15543#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15544pub struct Vacuum {
15545 pub(crate) syntax: SyntaxNode,
15546}
15547impl Vacuum {
15548 #[inline]
15549 pub fn table_and_columns_list(&self) -> Option<TableAndColumnsList> {
15550 support::child(&self.syntax)
15551 }
15552 #[inline]
15553 pub fn vacuum_option_list(&self) -> Option<VacuumOptionList> {
15554 support::child(&self.syntax)
15555 }
15556 #[inline]
15557 pub fn analyse_token(&self) -> Option<SyntaxToken> {
15558 support::token(&self.syntax, SyntaxKind::ANALYSE_KW)
15559 }
15560 #[inline]
15561 pub fn analyze_token(&self) -> Option<SyntaxToken> {
15562 support::token(&self.syntax, SyntaxKind::ANALYZE_KW)
15563 }
15564 #[inline]
15565 pub fn freeze_token(&self) -> Option<SyntaxToken> {
15566 support::token(&self.syntax, SyntaxKind::FREEZE_KW)
15567 }
15568 #[inline]
15569 pub fn full_token(&self) -> Option<SyntaxToken> {
15570 support::token(&self.syntax, SyntaxKind::FULL_KW)
15571 }
15572 #[inline]
15573 pub fn vacuum_token(&self) -> Option<SyntaxToken> {
15574 support::token(&self.syntax, SyntaxKind::VACUUM_KW)
15575 }
15576 #[inline]
15577 pub fn verbose_token(&self) -> Option<SyntaxToken> {
15578 support::token(&self.syntax, SyntaxKind::VERBOSE_KW)
15579 }
15580}
15581
15582#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15583pub struct VacuumOption {
15584 pub(crate) syntax: SyntaxNode,
15585}
15586impl VacuumOption {
15587 #[inline]
15588 pub fn literal(&self) -> Option<Literal> {
15589 support::child(&self.syntax)
15590 }
15591}
15592
15593#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15594pub struct VacuumOptionList {
15595 pub(crate) syntax: SyntaxNode,
15596}
15597impl VacuumOptionList {
15598 #[inline]
15599 pub fn vacuum_options(&self) -> AstChildren<VacuumOption> {
15600 support::children(&self.syntax)
15601 }
15602 #[inline]
15603 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
15604 support::token(&self.syntax, SyntaxKind::L_PAREN)
15605 }
15606 #[inline]
15607 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
15608 support::token(&self.syntax, SyntaxKind::R_PAREN)
15609 }
15610}
15611
15612#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15613pub struct ValidateConstraint {
15614 pub(crate) syntax: SyntaxNode,
15615}
15616impl ValidateConstraint {
15617 #[inline]
15618 pub fn name_ref(&self) -> Option<NameRef> {
15619 support::child(&self.syntax)
15620 }
15621 #[inline]
15622 pub fn constraint_token(&self) -> Option<SyntaxToken> {
15623 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
15624 }
15625 #[inline]
15626 pub fn validate_token(&self) -> Option<SyntaxToken> {
15627 support::token(&self.syntax, SyntaxKind::VALIDATE_KW)
15628 }
15629}
15630
15631#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15632pub struct Values {
15633 pub(crate) syntax: SyntaxNode,
15634}
15635impl Values {
15636 #[inline]
15637 pub fn row_list(&self) -> Option<RowList> {
15638 support::child(&self.syntax)
15639 }
15640 #[inline]
15641 pub fn with_clause(&self) -> Option<WithClause> {
15642 support::child(&self.syntax)
15643 }
15644 #[inline]
15645 pub fn values_token(&self) -> Option<SyntaxToken> {
15646 support::token(&self.syntax, SyntaxKind::VALUES_KW)
15647 }
15648}
15649
15650#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15651pub struct Variant {
15652 pub(crate) syntax: SyntaxNode,
15653}
15654impl Variant {
15655 #[inline]
15656 pub fn literal(&self) -> Option<Literal> {
15657 support::child(&self.syntax)
15658 }
15659}
15660
15661#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15662pub struct VariantList {
15663 pub(crate) syntax: SyntaxNode,
15664}
15665impl VariantList {
15666 #[inline]
15667 pub fn variants(&self) -> AstChildren<Variant> {
15668 support::children(&self.syntax)
15669 }
15670 #[inline]
15671 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
15672 support::token(&self.syntax, SyntaxKind::L_PAREN)
15673 }
15674 #[inline]
15675 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
15676 support::token(&self.syntax, SyntaxKind::R_PAREN)
15677 }
15678}
15679
15680#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15681pub struct VolatilityFuncOption {
15682 pub(crate) syntax: SyntaxNode,
15683}
15684impl VolatilityFuncOption {
15685 #[inline]
15686 pub fn immutable_token(&self) -> Option<SyntaxToken> {
15687 support::token(&self.syntax, SyntaxKind::IMMUTABLE_KW)
15688 }
15689 #[inline]
15690 pub fn stable_token(&self) -> Option<SyntaxToken> {
15691 support::token(&self.syntax, SyntaxKind::STABLE_KW)
15692 }
15693 #[inline]
15694 pub fn volatile_token(&self) -> Option<SyntaxToken> {
15695 support::token(&self.syntax, SyntaxKind::VOLATILE_KW)
15696 }
15697}
15698
15699#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15700pub struct WhenClause {
15701 pub(crate) syntax: SyntaxNode,
15702}
15703impl WhenClause {
15704 #[inline]
15705 pub fn then_token(&self) -> Option<SyntaxToken> {
15706 support::token(&self.syntax, SyntaxKind::THEN_KW)
15707 }
15708 #[inline]
15709 pub fn when_token(&self) -> Option<SyntaxToken> {
15710 support::token(&self.syntax, SyntaxKind::WHEN_KW)
15711 }
15712}
15713
15714#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15715pub struct WhenClauseList {
15716 pub(crate) syntax: SyntaxNode,
15717}
15718impl WhenClauseList {
15719 #[inline]
15720 pub fn when_clause(&self) -> Option<WhenClause> {
15721 support::child(&self.syntax)
15722 }
15723 #[inline]
15724 pub fn when_clauses(&self) -> AstChildren<WhenClause> {
15725 support::children(&self.syntax)
15726 }
15727}
15728
15729#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15730pub struct WhenCondition {
15731 pub(crate) syntax: SyntaxNode,
15732}
15733impl WhenCondition {
15734 #[inline]
15735 pub fn expr(&self) -> Option<Expr> {
15736 support::child(&self.syntax)
15737 }
15738 #[inline]
15739 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
15740 support::token(&self.syntax, SyntaxKind::L_PAREN)
15741 }
15742 #[inline]
15743 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
15744 support::token(&self.syntax, SyntaxKind::R_PAREN)
15745 }
15746 #[inline]
15747 pub fn when_token(&self) -> Option<SyntaxToken> {
15748 support::token(&self.syntax, SyntaxKind::WHEN_KW)
15749 }
15750}
15751
15752#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15753pub struct WhereClause {
15754 pub(crate) syntax: SyntaxNode,
15755}
15756impl WhereClause {
15757 #[inline]
15758 pub fn expr(&self) -> Option<Expr> {
15759 support::child(&self.syntax)
15760 }
15761 #[inline]
15762 pub fn where_token(&self) -> Option<SyntaxToken> {
15763 support::token(&self.syntax, SyntaxKind::WHERE_KW)
15764 }
15765}
15766
15767#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15768pub struct WhereConditionClause {
15769 pub(crate) syntax: SyntaxNode,
15770}
15771impl WhereConditionClause {
15772 #[inline]
15773 pub fn expr(&self) -> Option<Expr> {
15774 support::child(&self.syntax)
15775 }
15776 #[inline]
15777 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
15778 support::token(&self.syntax, SyntaxKind::L_PAREN)
15779 }
15780 #[inline]
15781 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
15782 support::token(&self.syntax, SyntaxKind::R_PAREN)
15783 }
15784 #[inline]
15785 pub fn where_token(&self) -> Option<SyntaxToken> {
15786 support::token(&self.syntax, SyntaxKind::WHERE_KW)
15787 }
15788}
15789
15790#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15791pub struct WhereCurrentOf {
15792 pub(crate) syntax: SyntaxNode,
15793}
15794impl WhereCurrentOf {
15795 #[inline]
15796 pub fn name_ref(&self) -> Option<NameRef> {
15797 support::child(&self.syntax)
15798 }
15799 #[inline]
15800 pub fn current_token(&self) -> Option<SyntaxToken> {
15801 support::token(&self.syntax, SyntaxKind::CURRENT_KW)
15802 }
15803 #[inline]
15804 pub fn of_token(&self) -> Option<SyntaxToken> {
15805 support::token(&self.syntax, SyntaxKind::OF_KW)
15806 }
15807 #[inline]
15808 pub fn where_token(&self) -> Option<SyntaxToken> {
15809 support::token(&self.syntax, SyntaxKind::WHERE_KW)
15810 }
15811}
15812
15813#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15814pub struct WindowClause {
15815 pub(crate) syntax: SyntaxNode,
15816}
15817impl WindowClause {
15818 #[inline]
15819 pub fn window_defs(&self) -> AstChildren<WindowDef> {
15820 support::children(&self.syntax)
15821 }
15822 #[inline]
15823 pub fn window_token(&self) -> Option<SyntaxToken> {
15824 support::token(&self.syntax, SyntaxKind::WINDOW_KW)
15825 }
15826}
15827
15828#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15829pub struct WindowDef {
15830 pub(crate) syntax: SyntaxNode,
15831}
15832impl WindowDef {
15833 #[inline]
15834 pub fn name(&self) -> Option<Name> {
15835 support::child(&self.syntax)
15836 }
15837 #[inline]
15838 pub fn window_spec(&self) -> Option<WindowSpec> {
15839 support::child(&self.syntax)
15840 }
15841 #[inline]
15842 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
15843 support::token(&self.syntax, SyntaxKind::L_PAREN)
15844 }
15845 #[inline]
15846 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
15847 support::token(&self.syntax, SyntaxKind::R_PAREN)
15848 }
15849 #[inline]
15850 pub fn as_token(&self) -> Option<SyntaxToken> {
15851 support::token(&self.syntax, SyntaxKind::AS_KW)
15852 }
15853}
15854
15855#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15856pub struct WindowFuncOption {
15857 pub(crate) syntax: SyntaxNode,
15858}
15859impl WindowFuncOption {
15860 #[inline]
15861 pub fn window_token(&self) -> Option<SyntaxToken> {
15862 support::token(&self.syntax, SyntaxKind::WINDOW_KW)
15863 }
15864}
15865
15866#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15867pub struct WindowSpec {
15868 pub(crate) syntax: SyntaxNode,
15869}
15870impl WindowSpec {
15871 #[inline]
15872 pub fn exprs(&self) -> AstChildren<Expr> {
15873 support::children(&self.syntax)
15874 }
15875 #[inline]
15876 pub fn frame_clause(&self) -> Option<FrameClause> {
15877 support::child(&self.syntax)
15878 }
15879 #[inline]
15880 pub fn order_by_clause(&self) -> Option<OrderByClause> {
15881 support::child(&self.syntax)
15882 }
15883 #[inline]
15884 pub fn by_token(&self) -> Option<SyntaxToken> {
15885 support::token(&self.syntax, SyntaxKind::BY_KW)
15886 }
15887 #[inline]
15888 pub fn ident_token(&self) -> Option<SyntaxToken> {
15889 support::token(&self.syntax, SyntaxKind::IDENT)
15890 }
15891 #[inline]
15892 pub fn partition_token(&self) -> Option<SyntaxToken> {
15893 support::token(&self.syntax, SyntaxKind::PARTITION_KW)
15894 }
15895}
15896
15897#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15898pub struct WithClause {
15899 pub(crate) syntax: SyntaxNode,
15900}
15901impl WithClause {
15902 #[inline]
15903 pub fn with_tables(&self) -> AstChildren<WithTable> {
15904 support::children(&self.syntax)
15905 }
15906 #[inline]
15907 pub fn recursive_token(&self) -> Option<SyntaxToken> {
15908 support::token(&self.syntax, SyntaxKind::RECURSIVE_KW)
15909 }
15910 #[inline]
15911 pub fn with_token(&self) -> Option<SyntaxToken> {
15912 support::token(&self.syntax, SyntaxKind::WITH_KW)
15913 }
15914}
15915
15916#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15917pub struct WithData {
15918 pub(crate) syntax: SyntaxNode,
15919}
15920impl WithData {
15921 #[inline]
15922 pub fn data_token(&self) -> Option<SyntaxToken> {
15923 support::token(&self.syntax, SyntaxKind::DATA_KW)
15924 }
15925 #[inline]
15926 pub fn with_token(&self) -> Option<SyntaxToken> {
15927 support::token(&self.syntax, SyntaxKind::WITH_KW)
15928 }
15929}
15930
15931#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15932pub struct WithNoData {
15933 pub(crate) syntax: SyntaxNode,
15934}
15935impl WithNoData {
15936 #[inline]
15937 pub fn data_token(&self) -> Option<SyntaxToken> {
15938 support::token(&self.syntax, SyntaxKind::DATA_KW)
15939 }
15940 #[inline]
15941 pub fn no_token(&self) -> Option<SyntaxToken> {
15942 support::token(&self.syntax, SyntaxKind::NO_KW)
15943 }
15944 #[inline]
15945 pub fn with_token(&self) -> Option<SyntaxToken> {
15946 support::token(&self.syntax, SyntaxKind::WITH_KW)
15947 }
15948}
15949
15950#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15951pub struct WithOptions {
15952 pub(crate) syntax: SyntaxNode,
15953}
15954impl WithOptions {
15955 #[inline]
15956 pub fn options_token(&self) -> Option<SyntaxToken> {
15957 support::token(&self.syntax, SyntaxKind::OPTIONS_KW)
15958 }
15959 #[inline]
15960 pub fn with_token(&self) -> Option<SyntaxToken> {
15961 support::token(&self.syntax, SyntaxKind::WITH_KW)
15962 }
15963}
15964
15965#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15966pub struct WithParams {
15967 pub(crate) syntax: SyntaxNode,
15968}
15969impl WithParams {
15970 #[inline]
15971 pub fn attribute_list(&self) -> Option<AttributeList> {
15972 support::child(&self.syntax)
15973 }
15974 #[inline]
15975 pub fn with_token(&self) -> Option<SyntaxToken> {
15976 support::token(&self.syntax, SyntaxKind::WITH_KW)
15977 }
15978}
15979
15980#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15981pub struct WithTable {
15982 pub(crate) syntax: SyntaxNode,
15983}
15984impl WithTable {
15985 #[inline]
15986 pub fn column_list(&self) -> Option<ColumnList> {
15987 support::child(&self.syntax)
15988 }
15989 #[inline]
15990 pub fn materialized(&self) -> Option<Materialized> {
15991 support::child(&self.syntax)
15992 }
15993 #[inline]
15994 pub fn name(&self) -> Option<Name> {
15995 support::child(&self.syntax)
15996 }
15997 #[inline]
15998 pub fn not_materialized(&self) -> Option<NotMaterialized> {
15999 support::child(&self.syntax)
16000 }
16001 #[inline]
16002 pub fn query(&self) -> Option<WithQuery> {
16003 support::child(&self.syntax)
16004 }
16005 #[inline]
16006 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
16007 support::token(&self.syntax, SyntaxKind::L_PAREN)
16008 }
16009 #[inline]
16010 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
16011 support::token(&self.syntax, SyntaxKind::R_PAREN)
16012 }
16013 #[inline]
16014 pub fn as_token(&self) -> Option<SyntaxToken> {
16015 support::token(&self.syntax, SyntaxKind::AS_KW)
16016 }
16017}
16018
16019#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16020pub struct WithTimezone {
16021 pub(crate) syntax: SyntaxNode,
16022}
16023impl WithTimezone {
16024 #[inline]
16025 pub fn time_token(&self) -> Option<SyntaxToken> {
16026 support::token(&self.syntax, SyntaxKind::TIME_KW)
16027 }
16028 #[inline]
16029 pub fn with_token(&self) -> Option<SyntaxToken> {
16030 support::token(&self.syntax, SyntaxKind::WITH_KW)
16031 }
16032 #[inline]
16033 pub fn zone_token(&self) -> Option<SyntaxToken> {
16034 support::token(&self.syntax, SyntaxKind::ZONE_KW)
16035 }
16036}
16037
16038#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16039pub struct WithinClause {
16040 pub(crate) syntax: SyntaxNode,
16041}
16042impl WithinClause {
16043 #[inline]
16044 pub fn order_by_clause(&self) -> Option<OrderByClause> {
16045 support::child(&self.syntax)
16046 }
16047 #[inline]
16048 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
16049 support::token(&self.syntax, SyntaxKind::L_PAREN)
16050 }
16051 #[inline]
16052 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
16053 support::token(&self.syntax, SyntaxKind::R_PAREN)
16054 }
16055 #[inline]
16056 pub fn group_token(&self) -> Option<SyntaxToken> {
16057 support::token(&self.syntax, SyntaxKind::GROUP_KW)
16058 }
16059 #[inline]
16060 pub fn within_token(&self) -> Option<SyntaxToken> {
16061 support::token(&self.syntax, SyntaxKind::WITHIN_KW)
16062 }
16063}
16064
16065#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16066pub struct WithoutOids {
16067 pub(crate) syntax: SyntaxNode,
16068}
16069impl WithoutOids {
16070 #[inline]
16071 pub fn oids_token(&self) -> Option<SyntaxToken> {
16072 support::token(&self.syntax, SyntaxKind::OIDS_KW)
16073 }
16074 #[inline]
16075 pub fn without_token(&self) -> Option<SyntaxToken> {
16076 support::token(&self.syntax, SyntaxKind::WITHOUT_KW)
16077 }
16078}
16079
16080#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16081pub struct WithoutTimezone {
16082 pub(crate) syntax: SyntaxNode,
16083}
16084impl WithoutTimezone {
16085 #[inline]
16086 pub fn time_token(&self) -> Option<SyntaxToken> {
16087 support::token(&self.syntax, SyntaxKind::TIME_KW)
16088 }
16089 #[inline]
16090 pub fn without_token(&self) -> Option<SyntaxToken> {
16091 support::token(&self.syntax, SyntaxKind::WITHOUT_KW)
16092 }
16093 #[inline]
16094 pub fn zone_token(&self) -> Option<SyntaxToken> {
16095 support::token(&self.syntax, SyntaxKind::ZONE_KW)
16096 }
16097}
16098
16099#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16100pub struct XmlAttributeList {
16101 pub(crate) syntax: SyntaxNode,
16102}
16103impl XmlAttributeList {
16104 #[inline]
16105 pub fn expr_as_names(&self) -> AstChildren<ExprAsName> {
16106 support::children(&self.syntax)
16107 }
16108}
16109
16110#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16111pub struct XmlColumnOption {
16112 pub(crate) syntax: SyntaxNode,
16113}
16114impl XmlColumnOption {
16115 #[inline]
16116 pub fn expr(&self) -> Option<Expr> {
16117 support::child(&self.syntax)
16118 }
16119 #[inline]
16120 pub fn default_token(&self) -> Option<SyntaxToken> {
16121 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
16122 }
16123 #[inline]
16124 pub fn ident_token(&self) -> Option<SyntaxToken> {
16125 support::token(&self.syntax, SyntaxKind::IDENT)
16126 }
16127 #[inline]
16128 pub fn not_token(&self) -> Option<SyntaxToken> {
16129 support::token(&self.syntax, SyntaxKind::NOT_KW)
16130 }
16131 #[inline]
16132 pub fn null_token(&self) -> Option<SyntaxToken> {
16133 support::token(&self.syntax, SyntaxKind::NULL_KW)
16134 }
16135 #[inline]
16136 pub fn path_token(&self) -> Option<SyntaxToken> {
16137 support::token(&self.syntax, SyntaxKind::PATH_KW)
16138 }
16139}
16140
16141#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16142pub struct XmlColumnOptionList {
16143 pub(crate) syntax: SyntaxNode,
16144}
16145impl XmlColumnOptionList {
16146 #[inline]
16147 pub fn xml_column_option(&self) -> Option<XmlColumnOption> {
16148 support::child(&self.syntax)
16149 }
16150 #[inline]
16151 pub fn xml_column_options(&self) -> AstChildren<XmlColumnOption> {
16152 support::children(&self.syntax)
16153 }
16154}
16155
16156#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16157pub struct XmlElementFn {
16158 pub(crate) syntax: SyntaxNode,
16159}
16160impl XmlElementFn {
16161 #[inline]
16162 pub fn exprs(&self) -> AstChildren<Expr> {
16163 support::children(&self.syntax)
16164 }
16165 #[inline]
16166 pub fn name(&self) -> Option<Name> {
16167 support::child(&self.syntax)
16168 }
16169 #[inline]
16170 pub fn xml_attribute_list(&self) -> Option<XmlAttributeList> {
16171 support::child(&self.syntax)
16172 }
16173 #[inline]
16174 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
16175 support::token(&self.syntax, SyntaxKind::L_PAREN)
16176 }
16177 #[inline]
16178 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
16179 support::token(&self.syntax, SyntaxKind::R_PAREN)
16180 }
16181 #[inline]
16182 pub fn comma_token(&self) -> Option<SyntaxToken> {
16183 support::token(&self.syntax, SyntaxKind::COMMA)
16184 }
16185 #[inline]
16186 pub fn name_token(&self) -> Option<SyntaxToken> {
16187 support::token(&self.syntax, SyntaxKind::NAME_KW)
16188 }
16189 #[inline]
16190 pub fn xmlattributes_token(&self) -> Option<SyntaxToken> {
16191 support::token(&self.syntax, SyntaxKind::XMLATTRIBUTES_KW)
16192 }
16193 #[inline]
16194 pub fn xmlelement_token(&self) -> Option<SyntaxToken> {
16195 support::token(&self.syntax, SyntaxKind::XMLELEMENT_KW)
16196 }
16197}
16198
16199#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16200pub struct XmlExistsFn {
16201 pub(crate) syntax: SyntaxNode,
16202}
16203impl XmlExistsFn {
16204 #[inline]
16205 pub fn expr(&self) -> Option<Expr> {
16206 support::child(&self.syntax)
16207 }
16208 #[inline]
16209 pub fn xml_passing_mech(&self) -> Option<XmlPassingMech> {
16210 support::child(&self.syntax)
16211 }
16212 #[inline]
16213 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
16214 support::token(&self.syntax, SyntaxKind::L_PAREN)
16215 }
16216 #[inline]
16217 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
16218 support::token(&self.syntax, SyntaxKind::R_PAREN)
16219 }
16220 #[inline]
16221 pub fn passing_token(&self) -> Option<SyntaxToken> {
16222 support::token(&self.syntax, SyntaxKind::PASSING_KW)
16223 }
16224 #[inline]
16225 pub fn xmlexists_token(&self) -> Option<SyntaxToken> {
16226 support::token(&self.syntax, SyntaxKind::XMLEXISTS_KW)
16227 }
16228}
16229
16230#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16231pub struct XmlForestFn {
16232 pub(crate) syntax: SyntaxNode,
16233}
16234impl XmlForestFn {
16235 #[inline]
16236 pub fn xml_attribute_list(&self) -> Option<XmlAttributeList> {
16237 support::child(&self.syntax)
16238 }
16239 #[inline]
16240 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
16241 support::token(&self.syntax, SyntaxKind::L_PAREN)
16242 }
16243 #[inline]
16244 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
16245 support::token(&self.syntax, SyntaxKind::R_PAREN)
16246 }
16247 #[inline]
16248 pub fn xmlforest_token(&self) -> Option<SyntaxToken> {
16249 support::token(&self.syntax, SyntaxKind::XMLFOREST_KW)
16250 }
16251}
16252
16253#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16254pub struct XmlNamespace {
16255 pub(crate) syntax: SyntaxNode,
16256}
16257impl XmlNamespace {
16258 #[inline]
16259 pub fn expr(&self) -> Option<Expr> {
16260 support::child(&self.syntax)
16261 }
16262 #[inline]
16263 pub fn name(&self) -> Option<Name> {
16264 support::child(&self.syntax)
16265 }
16266 #[inline]
16267 pub fn as_token(&self) -> Option<SyntaxToken> {
16268 support::token(&self.syntax, SyntaxKind::AS_KW)
16269 }
16270 #[inline]
16271 pub fn default_token(&self) -> Option<SyntaxToken> {
16272 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
16273 }
16274}
16275
16276#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16277pub struct XmlNamespaceList {
16278 pub(crate) syntax: SyntaxNode,
16279}
16280impl XmlNamespaceList {
16281 #[inline]
16282 pub fn xml_namespaces(&self) -> AstChildren<XmlNamespace> {
16283 support::children(&self.syntax)
16284 }
16285 #[inline]
16286 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
16287 support::token(&self.syntax, SyntaxKind::L_PAREN)
16288 }
16289 #[inline]
16290 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
16291 support::token(&self.syntax, SyntaxKind::R_PAREN)
16292 }
16293}
16294
16295#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16296pub struct XmlParseFn {
16297 pub(crate) syntax: SyntaxNode,
16298}
16299impl XmlParseFn {
16300 #[inline]
16301 pub fn expr(&self) -> Option<Expr> {
16302 support::child(&self.syntax)
16303 }
16304 #[inline]
16305 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
16306 support::token(&self.syntax, SyntaxKind::L_PAREN)
16307 }
16308 #[inline]
16309 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
16310 support::token(&self.syntax, SyntaxKind::R_PAREN)
16311 }
16312 #[inline]
16313 pub fn content_token(&self) -> Option<SyntaxToken> {
16314 support::token(&self.syntax, SyntaxKind::CONTENT_KW)
16315 }
16316 #[inline]
16317 pub fn document_token(&self) -> Option<SyntaxToken> {
16318 support::token(&self.syntax, SyntaxKind::DOCUMENT_KW)
16319 }
16320 #[inline]
16321 pub fn preserve_token(&self) -> Option<SyntaxToken> {
16322 support::token(&self.syntax, SyntaxKind::PRESERVE_KW)
16323 }
16324 #[inline]
16325 pub fn strip_token(&self) -> Option<SyntaxToken> {
16326 support::token(&self.syntax, SyntaxKind::STRIP_KW)
16327 }
16328 #[inline]
16329 pub fn whitespace_token(&self) -> Option<SyntaxToken> {
16330 support::token(&self.syntax, SyntaxKind::WHITESPACE_KW)
16331 }
16332 #[inline]
16333 pub fn xmlparse_token(&self) -> Option<SyntaxToken> {
16334 support::token(&self.syntax, SyntaxKind::XMLPARSE_KW)
16335 }
16336}
16337
16338#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16339pub struct XmlPassingMech {
16340 pub(crate) syntax: SyntaxNode,
16341}
16342impl XmlPassingMech {
16343 #[inline]
16344 pub fn by_token(&self) -> Option<SyntaxToken> {
16345 support::token(&self.syntax, SyntaxKind::BY_KW)
16346 }
16347 #[inline]
16348 pub fn ref_token(&self) -> Option<SyntaxToken> {
16349 support::token(&self.syntax, SyntaxKind::REF_KW)
16350 }
16351 #[inline]
16352 pub fn value_token(&self) -> Option<SyntaxToken> {
16353 support::token(&self.syntax, SyntaxKind::VALUE_KW)
16354 }
16355}
16356
16357#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16358pub struct XmlPiFn {
16359 pub(crate) syntax: SyntaxNode,
16360}
16361impl XmlPiFn {
16362 #[inline]
16363 pub fn expr(&self) -> Option<Expr> {
16364 support::child(&self.syntax)
16365 }
16366 #[inline]
16367 pub fn name(&self) -> Option<Name> {
16368 support::child(&self.syntax)
16369 }
16370 #[inline]
16371 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
16372 support::token(&self.syntax, SyntaxKind::L_PAREN)
16373 }
16374 #[inline]
16375 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
16376 support::token(&self.syntax, SyntaxKind::R_PAREN)
16377 }
16378 #[inline]
16379 pub fn comma_token(&self) -> Option<SyntaxToken> {
16380 support::token(&self.syntax, SyntaxKind::COMMA)
16381 }
16382 #[inline]
16383 pub fn name_token(&self) -> Option<SyntaxToken> {
16384 support::token(&self.syntax, SyntaxKind::NAME_KW)
16385 }
16386 #[inline]
16387 pub fn xmlpi_token(&self) -> Option<SyntaxToken> {
16388 support::token(&self.syntax, SyntaxKind::XMLPI_KW)
16389 }
16390}
16391
16392#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16393pub struct XmlRootFn {
16394 pub(crate) syntax: SyntaxNode,
16395}
16396impl XmlRootFn {
16397 #[inline]
16398 pub fn expr(&self) -> Option<Expr> {
16399 support::child(&self.syntax)
16400 }
16401 #[inline]
16402 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
16403 support::token(&self.syntax, SyntaxKind::L_PAREN)
16404 }
16405 #[inline]
16406 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
16407 support::token(&self.syntax, SyntaxKind::R_PAREN)
16408 }
16409 #[inline]
16410 pub fn comma_token(&self) -> Option<SyntaxToken> {
16411 support::token(&self.syntax, SyntaxKind::COMMA)
16412 }
16413 #[inline]
16414 pub fn no_token(&self) -> Option<SyntaxToken> {
16415 support::token(&self.syntax, SyntaxKind::NO_KW)
16416 }
16417 #[inline]
16418 pub fn standalone_token(&self) -> Option<SyntaxToken> {
16419 support::token(&self.syntax, SyntaxKind::STANDALONE_KW)
16420 }
16421 #[inline]
16422 pub fn value_token(&self) -> Option<SyntaxToken> {
16423 support::token(&self.syntax, SyntaxKind::VALUE_KW)
16424 }
16425 #[inline]
16426 pub fn version_token(&self) -> Option<SyntaxToken> {
16427 support::token(&self.syntax, SyntaxKind::VERSION_KW)
16428 }
16429 #[inline]
16430 pub fn xmlroot_token(&self) -> Option<SyntaxToken> {
16431 support::token(&self.syntax, SyntaxKind::XMLROOT_KW)
16432 }
16433 #[inline]
16434 pub fn yes_token(&self) -> Option<SyntaxToken> {
16435 support::token(&self.syntax, SyntaxKind::YES_KW)
16436 }
16437}
16438
16439#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16440pub struct XmlRowPassingClause {
16441 pub(crate) syntax: SyntaxNode,
16442}
16443impl XmlRowPassingClause {
16444 #[inline]
16445 pub fn expr(&self) -> Option<Expr> {
16446 support::child(&self.syntax)
16447 }
16448 #[inline]
16449 pub fn xml_passing_mech(&self) -> Option<XmlPassingMech> {
16450 support::child(&self.syntax)
16451 }
16452 #[inline]
16453 pub fn passing_token(&self) -> Option<SyntaxToken> {
16454 support::token(&self.syntax, SyntaxKind::PASSING_KW)
16455 }
16456}
16457
16458#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16459pub struct XmlSerializeFn {
16460 pub(crate) syntax: SyntaxNode,
16461}
16462impl XmlSerializeFn {
16463 #[inline]
16464 pub fn expr(&self) -> Option<Expr> {
16465 support::child(&self.syntax)
16466 }
16467 #[inline]
16468 pub fn ty(&self) -> Option<Type> {
16469 support::child(&self.syntax)
16470 }
16471 #[inline]
16472 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
16473 support::token(&self.syntax, SyntaxKind::L_PAREN)
16474 }
16475 #[inline]
16476 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
16477 support::token(&self.syntax, SyntaxKind::R_PAREN)
16478 }
16479 #[inline]
16480 pub fn as_token(&self) -> Option<SyntaxToken> {
16481 support::token(&self.syntax, SyntaxKind::AS_KW)
16482 }
16483 #[inline]
16484 pub fn content_token(&self) -> Option<SyntaxToken> {
16485 support::token(&self.syntax, SyntaxKind::CONTENT_KW)
16486 }
16487 #[inline]
16488 pub fn document_token(&self) -> Option<SyntaxToken> {
16489 support::token(&self.syntax, SyntaxKind::DOCUMENT_KW)
16490 }
16491 #[inline]
16492 pub fn ident_token(&self) -> Option<SyntaxToken> {
16493 support::token(&self.syntax, SyntaxKind::IDENT)
16494 }
16495 #[inline]
16496 pub fn no_token(&self) -> Option<SyntaxToken> {
16497 support::token(&self.syntax, SyntaxKind::NO_KW)
16498 }
16499 #[inline]
16500 pub fn xmlserialize_token(&self) -> Option<SyntaxToken> {
16501 support::token(&self.syntax, SyntaxKind::XMLSERIALIZE_KW)
16502 }
16503}
16504
16505#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16506pub struct XmlTable {
16507 pub(crate) syntax: SyntaxNode,
16508}
16509impl XmlTable {
16510 #[inline]
16511 pub fn xml_namespace_list(&self) -> Option<XmlNamespaceList> {
16512 support::child(&self.syntax)
16513 }
16514 #[inline]
16515 pub fn xml_row_passing_clause(&self) -> Option<XmlRowPassingClause> {
16516 support::child(&self.syntax)
16517 }
16518 #[inline]
16519 pub fn xml_table_column_list(&self) -> Option<XmlTableColumnList> {
16520 support::child(&self.syntax)
16521 }
16522 #[inline]
16523 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
16524 support::token(&self.syntax, SyntaxKind::L_PAREN)
16525 }
16526 #[inline]
16527 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
16528 support::token(&self.syntax, SyntaxKind::R_PAREN)
16529 }
16530 #[inline]
16531 pub fn comma_token(&self) -> Option<SyntaxToken> {
16532 support::token(&self.syntax, SyntaxKind::COMMA)
16533 }
16534 #[inline]
16535 pub fn xmlnamespaces_token(&self) -> Option<SyntaxToken> {
16536 support::token(&self.syntax, SyntaxKind::XMLNAMESPACES_KW)
16537 }
16538 #[inline]
16539 pub fn xmltable_token(&self) -> Option<SyntaxToken> {
16540 support::token(&self.syntax, SyntaxKind::XMLTABLE_KW)
16541 }
16542}
16543
16544#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16545pub struct XmlTableColumn {
16546 pub(crate) syntax: SyntaxNode,
16547}
16548impl XmlTableColumn {
16549 #[inline]
16550 pub fn name(&self) -> Option<Name> {
16551 support::child(&self.syntax)
16552 }
16553 #[inline]
16554 pub fn ty(&self) -> Option<Type> {
16555 support::child(&self.syntax)
16556 }
16557 #[inline]
16558 pub fn xml_column_option_list(&self) -> Option<XmlColumnOptionList> {
16559 support::child(&self.syntax)
16560 }
16561 #[inline]
16562 pub fn for_token(&self) -> Option<SyntaxToken> {
16563 support::token(&self.syntax, SyntaxKind::FOR_KW)
16564 }
16565 #[inline]
16566 pub fn ordinality_token(&self) -> Option<SyntaxToken> {
16567 support::token(&self.syntax, SyntaxKind::ORDINALITY_KW)
16568 }
16569}
16570
16571#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16572pub struct XmlTableColumnList {
16573 pub(crate) syntax: SyntaxNode,
16574}
16575impl XmlTableColumnList {
16576 #[inline]
16577 pub fn xml_table_columns(&self) -> AstChildren<XmlTableColumn> {
16578 support::children(&self.syntax)
16579 }
16580}
16581
16582#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16583pub enum AlterColumnOption {
16584 AddGenerated(AddGenerated),
16585 DropDefault(DropDefault),
16586 DropExpression(DropExpression),
16587 DropIdentity(DropIdentity),
16588 DropNotNull(DropNotNull),
16589 Inherit(Inherit),
16590 NoInherit(NoInherit),
16591 ResetOptions(ResetOptions),
16592 Restart(Restart),
16593 SetCompression(SetCompression),
16594 SetDefault(SetDefault),
16595 SetExpression(SetExpression),
16596 SetGenerated(SetGenerated),
16597 SetGeneratedOptions(SetGeneratedOptions),
16598 SetNotNull(SetNotNull),
16599 SetOptions(SetOptions),
16600 SetOptionsList(SetOptionsList),
16601 SetSequenceOption(SetSequenceOption),
16602 SetStatistics(SetStatistics),
16603 SetStorage(SetStorage),
16604 SetType(SetType),
16605}
16606
16607#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16608pub enum AlterDomainAction {
16609 AddConstraint(AddConstraint),
16610 DropConstraint(DropConstraint),
16611 DropDefault(DropDefault),
16612 DropNotNull(DropNotNull),
16613 OwnerTo(OwnerTo),
16614 RenameConstraint(RenameConstraint),
16615 RenameTo(RenameTo),
16616 SetDefault(SetDefault),
16617 SetNotNull(SetNotNull),
16618 SetSchema(SetSchema),
16619 ValidateConstraint(ValidateConstraint),
16620}
16621
16622#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16623pub enum AlterIndexAction {
16624 AlterSetStatistics(AlterSetStatistics),
16625 AttachPartition(AttachPartition),
16626 DependsOnExtension(DependsOnExtension),
16627 NoDependsOnExtension(NoDependsOnExtension),
16628 RenameTo(RenameTo),
16629 ResetOptions(ResetOptions),
16630 SetOptions(SetOptions),
16631 SetTablespace(SetTablespace),
16632}
16633
16634#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16635pub enum AlterMaterializedViewAction {
16636 DependsOnExtension(DependsOnExtension),
16637 NoDependsOnExtension(NoDependsOnExtension),
16638 RenameColumn(RenameColumn),
16639 RenameTo(RenameTo),
16640 SetSchema(SetSchema),
16641 AlterTableAction(AlterTableAction),
16642}
16643
16644#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16645pub enum AlterTableAction {
16646 AddColumn(AddColumn),
16647 AddConstraint(AddConstraint),
16648 AlterColumn(AlterColumn),
16649 AlterConstraint(AlterConstraint),
16650 AttachPartition(AttachPartition),
16651 ClusterOn(ClusterOn),
16652 DetachPartition(DetachPartition),
16653 DisableRls(DisableRls),
16654 DisableRule(DisableRule),
16655 DisableTrigger(DisableTrigger),
16656 DropColumn(DropColumn),
16657 DropConstraint(DropConstraint),
16658 EnableAlwaysRule(EnableAlwaysRule),
16659 EnableAlwaysTrigger(EnableAlwaysTrigger),
16660 EnableReplicaRule(EnableReplicaRule),
16661 EnableReplicaTrigger(EnableReplicaTrigger),
16662 EnableRls(EnableRls),
16663 EnableRule(EnableRule),
16664 EnableTrigger(EnableTrigger),
16665 ForceRls(ForceRls),
16666 InheritTable(InheritTable),
16667 MergePartitions(MergePartitions),
16668 NoForceRls(NoForceRls),
16669 NoInheritTable(NoInheritTable),
16670 NotOf(NotOf),
16671 OfType(OfType),
16672 OptionItemList(OptionItemList),
16673 OwnerTo(OwnerTo),
16674 RenameColumn(RenameColumn),
16675 RenameConstraint(RenameConstraint),
16676 RenameTo(RenameTo),
16677 ReplicaIdentity(ReplicaIdentity),
16678 ResetOptions(ResetOptions),
16679 SetAccessMethod(SetAccessMethod),
16680 SetLogged(SetLogged),
16681 SetOptions(SetOptions),
16682 SetSchema(SetSchema),
16683 SetTablespace(SetTablespace),
16684 SetUnlogged(SetUnlogged),
16685 SetWithoutCluster(SetWithoutCluster),
16686 SetWithoutOids(SetWithoutOids),
16687 SplitPartition(SplitPartition),
16688 ValidateConstraint(ValidateConstraint),
16689}
16690
16691#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16692pub enum ColumnConstraint {
16693 CheckConstraint(CheckConstraint),
16694 DefaultConstraint(DefaultConstraint),
16695 ExcludeConstraint(ExcludeConstraint),
16696 NotNullConstraint(NotNullConstraint),
16697 PrimaryKeyConstraint(PrimaryKeyConstraint),
16698 ReferencesConstraint(ReferencesConstraint),
16699 UniqueConstraint(UniqueConstraint),
16700}
16701
16702#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16703pub enum ConfigValue {
16704 Literal(Literal),
16705 NameRef(NameRef),
16706}
16707
16708#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16709pub enum ConflictAction {
16710 ConflictDoNothing(ConflictDoNothing),
16711 ConflictDoUpdateSet(ConflictDoUpdateSet),
16712}
16713
16714#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16715pub enum ConflictTarget {
16716 ConflictOnConstraint(ConflictOnConstraint),
16717 ConflictOnIndex(ConflictOnIndex),
16718}
16719
16720#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16721pub enum Constraint {
16722 CheckConstraint(CheckConstraint),
16723 DefaultConstraint(DefaultConstraint),
16724 ForeignKeyConstraint(ForeignKeyConstraint),
16725 GeneratedConstraint(GeneratedConstraint),
16726 NotNullConstraint(NotNullConstraint),
16727 NullConstraint(NullConstraint),
16728 PrimaryKeyConstraint(PrimaryKeyConstraint),
16729 ReferencesConstraint(ReferencesConstraint),
16730 UniqueConstraint(UniqueConstraint),
16731}
16732
16733#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16734pub enum ExplainStmt {
16735 CompoundSelect(CompoundSelect),
16736 CreateMaterializedView(CreateMaterializedView),
16737 CreateTableAs(CreateTableAs),
16738 Declare(Declare),
16739 Delete(Delete),
16740 Execute(Execute),
16741 Insert(Insert),
16742 Merge(Merge),
16743 ParenSelect(ParenSelect),
16744 Select(Select),
16745 SelectInto(SelectInto),
16746 Table(Table),
16747 Update(Update),
16748 Values(Values),
16749}
16750
16751#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16752pub enum Expr {
16753 ArrayExpr(ArrayExpr),
16754 BetweenExpr(BetweenExpr),
16755 BinExpr(BinExpr),
16756 CallExpr(CallExpr),
16757 CaseExpr(CaseExpr),
16758 CastExpr(CastExpr),
16759 FieldExpr(FieldExpr),
16760 IndexExpr(IndexExpr),
16761 Literal(Literal),
16762 NameRef(NameRef),
16763 ParenExpr(ParenExpr),
16764 PostfixExpr(PostfixExpr),
16765 PrefixExpr(PrefixExpr),
16766 SliceExpr(SliceExpr),
16767 TupleExpr(TupleExpr),
16768}
16769
16770#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16771pub enum FuncOption {
16772 AsFuncOption(AsFuncOption),
16773 BeginFuncOptionList(BeginFuncOptionList),
16774 CostFuncOption(CostFuncOption),
16775 LanguageFuncOption(LanguageFuncOption),
16776 LeakproofFuncOption(LeakproofFuncOption),
16777 ParallelFuncOption(ParallelFuncOption),
16778 ResetFuncOption(ResetFuncOption),
16779 ReturnFuncOption(ReturnFuncOption),
16780 RowsFuncOption(RowsFuncOption),
16781 SecurityFuncOption(SecurityFuncOption),
16782 SetFuncOption(SetFuncOption),
16783 StrictFuncOption(StrictFuncOption),
16784 SupportFuncOption(SupportFuncOption),
16785 TransformFuncOption(TransformFuncOption),
16786 VolatilityFuncOption(VolatilityFuncOption),
16787 WindowFuncOption(WindowFuncOption),
16788}
16789
16790#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16791pub enum GroupBy {
16792 GroupingCube(GroupingCube),
16793 GroupingExpr(GroupingExpr),
16794 GroupingRollup(GroupingRollup),
16795 GroupingSets(GroupingSets),
16796}
16797
16798#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16799pub enum JoinType {
16800 JoinCross(JoinCross),
16801 JoinFull(JoinFull),
16802 JoinInner(JoinInner),
16803 JoinLeft(JoinLeft),
16804 JoinRight(JoinRight),
16805}
16806
16807#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16808pub enum JsonBehavior {
16809 JsonBehaviorDefault(JsonBehaviorDefault),
16810 JsonBehaviorEmptyArray(JsonBehaviorEmptyArray),
16811 JsonBehaviorEmptyObject(JsonBehaviorEmptyObject),
16812 JsonBehaviorError(JsonBehaviorError),
16813 JsonBehaviorFalse(JsonBehaviorFalse),
16814 JsonBehaviorNull(JsonBehaviorNull),
16815 JsonBehaviorTrue(JsonBehaviorTrue),
16816 JsonBehaviorUnknown(JsonBehaviorUnknown),
16817}
16818
16819#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16820pub enum MatchType {
16821 MatchFull(MatchFull),
16822 MatchPartial(MatchPartial),
16823 MatchSimple(MatchSimple),
16824}
16825
16826#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16827pub enum MergeAction {
16828 MergeDelete(MergeDelete),
16829 MergeDoNothing(MergeDoNothing),
16830 MergeInsert(MergeInsert),
16831 MergeUpdate(MergeUpdate),
16832}
16833
16834#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16835pub enum MergeWhenClause {
16836 MergeWhenMatched(MergeWhenMatched),
16837 MergeWhenNotMatchedSource(MergeWhenNotMatchedSource),
16838 MergeWhenNotMatchedTarget(MergeWhenNotMatchedTarget),
16839}
16840
16841#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16842pub enum OnCommitAction {
16843 DeleteRows(DeleteRows),
16844 Drop(Drop),
16845 PreserveRows(PreserveRows),
16846}
16847
16848#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16849pub enum ParamMode {
16850 ParamIn(ParamIn),
16851 ParamInOut(ParamInOut),
16852 ParamOut(ParamOut),
16853 ParamVariadic(ParamVariadic),
16854}
16855
16856#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16857pub enum PartitionType {
16858 PartitionDefault(PartitionDefault),
16859 PartitionForValuesFrom(PartitionForValuesFrom),
16860 PartitionForValuesIn(PartitionForValuesIn),
16861 PartitionForValuesWith(PartitionForValuesWith),
16862}
16863
16864#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16865pub enum PreparableStmt {
16866 CompoundSelect(CompoundSelect),
16867 Delete(Delete),
16868 Insert(Insert),
16869 Merge(Merge),
16870 Select(Select),
16871 SelectInto(SelectInto),
16872 Table(Table),
16873 Update(Update),
16874 Values(Values),
16875}
16876
16877#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16878pub enum RefAction {
16879 Cascade(Cascade),
16880 NoAction(NoAction),
16881 Restrict(Restrict),
16882 SetDefaultColumns(SetDefaultColumns),
16883 SetNullColumns(SetNullColumns),
16884}
16885
16886#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16887pub enum SchemaElement {
16888 CreateIndex(CreateIndex),
16889 CreateSequence(CreateSequence),
16890 CreateTable(CreateTable),
16891 CreateTrigger(CreateTrigger),
16892 CreateView(CreateView),
16893 Grant(Grant),
16894}
16895
16896#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16897pub enum SelectVariant {
16898 CompoundSelect(CompoundSelect),
16899 ParenSelect(ParenSelect),
16900 Select(Select),
16901 SelectInto(SelectInto),
16902 Table(Table),
16903 Values(Values),
16904}
16905
16906#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16907pub enum SetColumn {
16908 SetMultipleColumns(SetMultipleColumns),
16909 SetSingleColumn(SetSingleColumn),
16910}
16911
16912#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16913pub enum Stmt {
16914 AlterAggregate(AlterAggregate),
16915 AlterCollation(AlterCollation),
16916 AlterConversion(AlterConversion),
16917 AlterDatabase(AlterDatabase),
16918 AlterDefaultPrivileges(AlterDefaultPrivileges),
16919 AlterDomain(AlterDomain),
16920 AlterEventTrigger(AlterEventTrigger),
16921 AlterExtension(AlterExtension),
16922 AlterForeignDataWrapper(AlterForeignDataWrapper),
16923 AlterForeignTable(AlterForeignTable),
16924 AlterFunction(AlterFunction),
16925 AlterGroup(AlterGroup),
16926 AlterIndex(AlterIndex),
16927 AlterLanguage(AlterLanguage),
16928 AlterLargeObject(AlterLargeObject),
16929 AlterMaterializedView(AlterMaterializedView),
16930 AlterOperator(AlterOperator),
16931 AlterOperatorClass(AlterOperatorClass),
16932 AlterOperatorFamily(AlterOperatorFamily),
16933 AlterPolicy(AlterPolicy),
16934 AlterProcedure(AlterProcedure),
16935 AlterPublication(AlterPublication),
16936 AlterRole(AlterRole),
16937 AlterRoutine(AlterRoutine),
16938 AlterRule(AlterRule),
16939 AlterSchema(AlterSchema),
16940 AlterSequence(AlterSequence),
16941 AlterServer(AlterServer),
16942 AlterStatistics(AlterStatistics),
16943 AlterSubscription(AlterSubscription),
16944 AlterSystem(AlterSystem),
16945 AlterTable(AlterTable),
16946 AlterTablespace(AlterTablespace),
16947 AlterTextSearchConfiguration(AlterTextSearchConfiguration),
16948 AlterTextSearchDictionary(AlterTextSearchDictionary),
16949 AlterTextSearchParser(AlterTextSearchParser),
16950 AlterTextSearchTemplate(AlterTextSearchTemplate),
16951 AlterTrigger(AlterTrigger),
16952 AlterType(AlterType),
16953 AlterUser(AlterUser),
16954 AlterUserMapping(AlterUserMapping),
16955 AlterView(AlterView),
16956 Analyze(Analyze),
16957 Begin(Begin),
16958 Call(Call),
16959 Checkpoint(Checkpoint),
16960 Close(Close),
16961 Cluster(Cluster),
16962 CommentOn(CommentOn),
16963 Commit(Commit),
16964 Copy(Copy),
16965 CreateAccessMethod(CreateAccessMethod),
16966 CreateAggregate(CreateAggregate),
16967 CreateCast(CreateCast),
16968 CreateCollation(CreateCollation),
16969 CreateConversion(CreateConversion),
16970 CreateDatabase(CreateDatabase),
16971 CreateDomain(CreateDomain),
16972 CreateEventTrigger(CreateEventTrigger),
16973 CreateExtension(CreateExtension),
16974 CreateForeignDataWrapper(CreateForeignDataWrapper),
16975 CreateForeignTable(CreateForeignTable),
16976 CreateFunction(CreateFunction),
16977 CreateGroup(CreateGroup),
16978 CreateIndex(CreateIndex),
16979 CreateLanguage(CreateLanguage),
16980 CreateMaterializedView(CreateMaterializedView),
16981 CreateOperator(CreateOperator),
16982 CreateOperatorClass(CreateOperatorClass),
16983 CreateOperatorFamily(CreateOperatorFamily),
16984 CreatePolicy(CreatePolicy),
16985 CreateProcedure(CreateProcedure),
16986 CreatePublication(CreatePublication),
16987 CreateRole(CreateRole),
16988 CreateRule(CreateRule),
16989 CreateSchema(CreateSchema),
16990 CreateSequence(CreateSequence),
16991 CreateServer(CreateServer),
16992 CreateStatistics(CreateStatistics),
16993 CreateSubscription(CreateSubscription),
16994 CreateTable(CreateTable),
16995 CreateTableAs(CreateTableAs),
16996 CreateTablespace(CreateTablespace),
16997 CreateTextSearchConfiguration(CreateTextSearchConfiguration),
16998 CreateTextSearchDictionary(CreateTextSearchDictionary),
16999 CreateTextSearchParser(CreateTextSearchParser),
17000 CreateTextSearchTemplate(CreateTextSearchTemplate),
17001 CreateTransform(CreateTransform),
17002 CreateTrigger(CreateTrigger),
17003 CreateType(CreateType),
17004 CreateUser(CreateUser),
17005 CreateUserMapping(CreateUserMapping),
17006 CreateView(CreateView),
17007 Deallocate(Deallocate),
17008 Declare(Declare),
17009 Delete(Delete),
17010 Discard(Discard),
17011 Do(Do),
17012 DropAccessMethod(DropAccessMethod),
17013 DropAggregate(DropAggregate),
17014 DropCast(DropCast),
17015 DropCollation(DropCollation),
17016 DropConversion(DropConversion),
17017 DropDatabase(DropDatabase),
17018 DropDomain(DropDomain),
17019 DropEventTrigger(DropEventTrigger),
17020 DropExtension(DropExtension),
17021 DropForeignDataWrapper(DropForeignDataWrapper),
17022 DropForeignTable(DropForeignTable),
17023 DropFunction(DropFunction),
17024 DropGroup(DropGroup),
17025 DropIndex(DropIndex),
17026 DropLanguage(DropLanguage),
17027 DropMaterializedView(DropMaterializedView),
17028 DropOperator(DropOperator),
17029 DropOperatorClass(DropOperatorClass),
17030 DropOperatorFamily(DropOperatorFamily),
17031 DropOwned(DropOwned),
17032 DropPolicy(DropPolicy),
17033 DropProcedure(DropProcedure),
17034 DropPublication(DropPublication),
17035 DropRole(DropRole),
17036 DropRoutine(DropRoutine),
17037 DropRule(DropRule),
17038 DropSchema(DropSchema),
17039 DropSequence(DropSequence),
17040 DropServer(DropServer),
17041 DropStatistics(DropStatistics),
17042 DropSubscription(DropSubscription),
17043 DropTable(DropTable),
17044 DropTablespace(DropTablespace),
17045 DropTextSearchConfig(DropTextSearchConfig),
17046 DropTextSearchDict(DropTextSearchDict),
17047 DropTextSearchParser(DropTextSearchParser),
17048 DropTextSearchTemplate(DropTextSearchTemplate),
17049 DropTransform(DropTransform),
17050 DropTrigger(DropTrigger),
17051 DropType(DropType),
17052 DropUser(DropUser),
17053 DropUserMapping(DropUserMapping),
17054 DropView(DropView),
17055 Execute(Execute),
17056 Explain(Explain),
17057 Fetch(Fetch),
17058 Grant(Grant),
17059 ImportForeignSchema(ImportForeignSchema),
17060 Insert(Insert),
17061 Listen(Listen),
17062 Load(Load),
17063 Lock(Lock),
17064 Merge(Merge),
17065 Move(Move),
17066 Notify(Notify),
17067 ParenSelect(ParenSelect),
17068 Prepare(Prepare),
17069 PrepareTransaction(PrepareTransaction),
17070 Reassign(Reassign),
17071 Refresh(Refresh),
17072 Reindex(Reindex),
17073 ReleaseSavepoint(ReleaseSavepoint),
17074 Reset(Reset),
17075 ResetSessionAuth(ResetSessionAuth),
17076 Revoke(Revoke),
17077 Rollback(Rollback),
17078 Savepoint(Savepoint),
17079 SecurityLabel(SecurityLabel),
17080 Select(Select),
17081 SelectInto(SelectInto),
17082 Set(Set),
17083 SetConstraints(SetConstraints),
17084 SetRole(SetRole),
17085 SetSessionAuth(SetSessionAuth),
17086 SetTransaction(SetTransaction),
17087 Show(Show),
17088 Table(Table),
17089 Truncate(Truncate),
17090 Unlisten(Unlisten),
17091 Update(Update),
17092 Vacuum(Vacuum),
17093 Values(Values),
17094}
17095
17096#[derive(Debug, Clone, PartialEq, Eq, Hash)]
17097pub enum TableArg {
17098 Column(Column),
17099 LikeClause(LikeClause),
17100 TableConstraint(TableConstraint),
17101}
17102
17103#[derive(Debug, Clone, PartialEq, Eq, Hash)]
17104pub enum TableConstraint {
17105 CheckConstraint(CheckConstraint),
17106 ExcludeConstraint(ExcludeConstraint),
17107 ForeignKeyConstraint(ForeignKeyConstraint),
17108 PrimaryKeyConstraint(PrimaryKeyConstraint),
17109 UniqueConstraint(UniqueConstraint),
17110}
17111
17112#[derive(Debug, Clone, PartialEq, Eq, Hash)]
17113pub enum Timezone {
17114 WithTimezone(WithTimezone),
17115 WithoutTimezone(WithoutTimezone),
17116}
17117
17118#[derive(Debug, Clone, PartialEq, Eq, Hash)]
17119pub enum TransactionMode {
17120 Deferrable(Deferrable),
17121 NotDeferrable(NotDeferrable),
17122 ReadCommitted(ReadCommitted),
17123 ReadOnly(ReadOnly),
17124 ReadUncommitted(ReadUncommitted),
17125 ReadWrite(ReadWrite),
17126 RepeatableRead(RepeatableRead),
17127 Serializable(Serializable),
17128}
17129
17130#[derive(Debug, Clone, PartialEq, Eq, Hash)]
17131pub enum Type {
17132 ArrayType(ArrayType),
17133 BitType(BitType),
17134 CharType(CharType),
17135 DoubleType(DoubleType),
17136 ExprType(ExprType),
17137 IntervalType(IntervalType),
17138 PathType(PathType),
17139 PercentType(PercentType),
17140 TimeType(TimeType),
17141}
17142
17143#[derive(Debug, Clone, PartialEq, Eq, Hash)]
17144pub enum WithQuery {
17145 CompoundSelect(CompoundSelect),
17146 Delete(Delete),
17147 Insert(Insert),
17148 Merge(Merge),
17149 ParenSelect(ParenSelect),
17150 Select(Select),
17151 Table(Table),
17152 Update(Update),
17153 Values(Values),
17154}
17155impl AstNode for AddColumn {
17156 #[inline]
17157 fn can_cast(kind: SyntaxKind) -> bool {
17158 kind == SyntaxKind::ADD_COLUMN
17159 }
17160 #[inline]
17161 fn cast(syntax: SyntaxNode) -> Option<Self> {
17162 if Self::can_cast(syntax.kind()) {
17163 Some(Self { syntax })
17164 } else {
17165 None
17166 }
17167 }
17168 #[inline]
17169 fn syntax(&self) -> &SyntaxNode {
17170 &self.syntax
17171 }
17172}
17173impl AstNode for AddConstraint {
17174 #[inline]
17175 fn can_cast(kind: SyntaxKind) -> bool {
17176 kind == SyntaxKind::ADD_CONSTRAINT
17177 }
17178 #[inline]
17179 fn cast(syntax: SyntaxNode) -> Option<Self> {
17180 if Self::can_cast(syntax.kind()) {
17181 Some(Self { syntax })
17182 } else {
17183 None
17184 }
17185 }
17186 #[inline]
17187 fn syntax(&self) -> &SyntaxNode {
17188 &self.syntax
17189 }
17190}
17191impl AstNode for AddGenerated {
17192 #[inline]
17193 fn can_cast(kind: SyntaxKind) -> bool {
17194 kind == SyntaxKind::ADD_GENERATED
17195 }
17196 #[inline]
17197 fn cast(syntax: SyntaxNode) -> Option<Self> {
17198 if Self::can_cast(syntax.kind()) {
17199 Some(Self { syntax })
17200 } else {
17201 None
17202 }
17203 }
17204 #[inline]
17205 fn syntax(&self) -> &SyntaxNode {
17206 &self.syntax
17207 }
17208}
17209impl AstNode for AddOpClassOptions {
17210 #[inline]
17211 fn can_cast(kind: SyntaxKind) -> bool {
17212 kind == SyntaxKind::ADD_OP_CLASS_OPTIONS
17213 }
17214 #[inline]
17215 fn cast(syntax: SyntaxNode) -> Option<Self> {
17216 if Self::can_cast(syntax.kind()) {
17217 Some(Self { syntax })
17218 } else {
17219 None
17220 }
17221 }
17222 #[inline]
17223 fn syntax(&self) -> &SyntaxNode {
17224 &self.syntax
17225 }
17226}
17227impl AstNode for Aggregate {
17228 #[inline]
17229 fn can_cast(kind: SyntaxKind) -> bool {
17230 kind == SyntaxKind::AGGREGATE
17231 }
17232 #[inline]
17233 fn cast(syntax: SyntaxNode) -> Option<Self> {
17234 if Self::can_cast(syntax.kind()) {
17235 Some(Self { syntax })
17236 } else {
17237 None
17238 }
17239 }
17240 #[inline]
17241 fn syntax(&self) -> &SyntaxNode {
17242 &self.syntax
17243 }
17244}
17245impl AstNode for Alias {
17246 #[inline]
17247 fn can_cast(kind: SyntaxKind) -> bool {
17248 kind == SyntaxKind::ALIAS
17249 }
17250 #[inline]
17251 fn cast(syntax: SyntaxNode) -> Option<Self> {
17252 if Self::can_cast(syntax.kind()) {
17253 Some(Self { syntax })
17254 } else {
17255 None
17256 }
17257 }
17258 #[inline]
17259 fn syntax(&self) -> &SyntaxNode {
17260 &self.syntax
17261 }
17262}
17263impl AstNode for AllFn {
17264 #[inline]
17265 fn can_cast(kind: SyntaxKind) -> bool {
17266 kind == SyntaxKind::ALL_FN
17267 }
17268 #[inline]
17269 fn cast(syntax: SyntaxNode) -> Option<Self> {
17270 if Self::can_cast(syntax.kind()) {
17271 Some(Self { syntax })
17272 } else {
17273 None
17274 }
17275 }
17276 #[inline]
17277 fn syntax(&self) -> &SyntaxNode {
17278 &self.syntax
17279 }
17280}
17281impl AstNode for AlterAggregate {
17282 #[inline]
17283 fn can_cast(kind: SyntaxKind) -> bool {
17284 kind == SyntaxKind::ALTER_AGGREGATE
17285 }
17286 #[inline]
17287 fn cast(syntax: SyntaxNode) -> Option<Self> {
17288 if Self::can_cast(syntax.kind()) {
17289 Some(Self { syntax })
17290 } else {
17291 None
17292 }
17293 }
17294 #[inline]
17295 fn syntax(&self) -> &SyntaxNode {
17296 &self.syntax
17297 }
17298}
17299impl AstNode for AlterCollation {
17300 #[inline]
17301 fn can_cast(kind: SyntaxKind) -> bool {
17302 kind == SyntaxKind::ALTER_COLLATION
17303 }
17304 #[inline]
17305 fn cast(syntax: SyntaxNode) -> Option<Self> {
17306 if Self::can_cast(syntax.kind()) {
17307 Some(Self { syntax })
17308 } else {
17309 None
17310 }
17311 }
17312 #[inline]
17313 fn syntax(&self) -> &SyntaxNode {
17314 &self.syntax
17315 }
17316}
17317impl AstNode for AlterColumn {
17318 #[inline]
17319 fn can_cast(kind: SyntaxKind) -> bool {
17320 kind == SyntaxKind::ALTER_COLUMN
17321 }
17322 #[inline]
17323 fn cast(syntax: SyntaxNode) -> Option<Self> {
17324 if Self::can_cast(syntax.kind()) {
17325 Some(Self { syntax })
17326 } else {
17327 None
17328 }
17329 }
17330 #[inline]
17331 fn syntax(&self) -> &SyntaxNode {
17332 &self.syntax
17333 }
17334}
17335impl AstNode for AlterConstraint {
17336 #[inline]
17337 fn can_cast(kind: SyntaxKind) -> bool {
17338 kind == SyntaxKind::ALTER_CONSTRAINT
17339 }
17340 #[inline]
17341 fn cast(syntax: SyntaxNode) -> Option<Self> {
17342 if Self::can_cast(syntax.kind()) {
17343 Some(Self { syntax })
17344 } else {
17345 None
17346 }
17347 }
17348 #[inline]
17349 fn syntax(&self) -> &SyntaxNode {
17350 &self.syntax
17351 }
17352}
17353impl AstNode for AlterConversion {
17354 #[inline]
17355 fn can_cast(kind: SyntaxKind) -> bool {
17356 kind == SyntaxKind::ALTER_CONVERSION
17357 }
17358 #[inline]
17359 fn cast(syntax: SyntaxNode) -> Option<Self> {
17360 if Self::can_cast(syntax.kind()) {
17361 Some(Self { syntax })
17362 } else {
17363 None
17364 }
17365 }
17366 #[inline]
17367 fn syntax(&self) -> &SyntaxNode {
17368 &self.syntax
17369 }
17370}
17371impl AstNode for AlterDatabase {
17372 #[inline]
17373 fn can_cast(kind: SyntaxKind) -> bool {
17374 kind == SyntaxKind::ALTER_DATABASE
17375 }
17376 #[inline]
17377 fn cast(syntax: SyntaxNode) -> Option<Self> {
17378 if Self::can_cast(syntax.kind()) {
17379 Some(Self { syntax })
17380 } else {
17381 None
17382 }
17383 }
17384 #[inline]
17385 fn syntax(&self) -> &SyntaxNode {
17386 &self.syntax
17387 }
17388}
17389impl AstNode for AlterDefaultPrivileges {
17390 #[inline]
17391 fn can_cast(kind: SyntaxKind) -> bool {
17392 kind == SyntaxKind::ALTER_DEFAULT_PRIVILEGES
17393 }
17394 #[inline]
17395 fn cast(syntax: SyntaxNode) -> Option<Self> {
17396 if Self::can_cast(syntax.kind()) {
17397 Some(Self { syntax })
17398 } else {
17399 None
17400 }
17401 }
17402 #[inline]
17403 fn syntax(&self) -> &SyntaxNode {
17404 &self.syntax
17405 }
17406}
17407impl AstNode for AlterDomain {
17408 #[inline]
17409 fn can_cast(kind: SyntaxKind) -> bool {
17410 kind == SyntaxKind::ALTER_DOMAIN
17411 }
17412 #[inline]
17413 fn cast(syntax: SyntaxNode) -> Option<Self> {
17414 if Self::can_cast(syntax.kind()) {
17415 Some(Self { syntax })
17416 } else {
17417 None
17418 }
17419 }
17420 #[inline]
17421 fn syntax(&self) -> &SyntaxNode {
17422 &self.syntax
17423 }
17424}
17425impl AstNode for AlterEventTrigger {
17426 #[inline]
17427 fn can_cast(kind: SyntaxKind) -> bool {
17428 kind == SyntaxKind::ALTER_EVENT_TRIGGER
17429 }
17430 #[inline]
17431 fn cast(syntax: SyntaxNode) -> Option<Self> {
17432 if Self::can_cast(syntax.kind()) {
17433 Some(Self { syntax })
17434 } else {
17435 None
17436 }
17437 }
17438 #[inline]
17439 fn syntax(&self) -> &SyntaxNode {
17440 &self.syntax
17441 }
17442}
17443impl AstNode for AlterExtension {
17444 #[inline]
17445 fn can_cast(kind: SyntaxKind) -> bool {
17446 kind == SyntaxKind::ALTER_EXTENSION
17447 }
17448 #[inline]
17449 fn cast(syntax: SyntaxNode) -> Option<Self> {
17450 if Self::can_cast(syntax.kind()) {
17451 Some(Self { syntax })
17452 } else {
17453 None
17454 }
17455 }
17456 #[inline]
17457 fn syntax(&self) -> &SyntaxNode {
17458 &self.syntax
17459 }
17460}
17461impl AstNode for AlterForeignDataWrapper {
17462 #[inline]
17463 fn can_cast(kind: SyntaxKind) -> bool {
17464 kind == SyntaxKind::ALTER_FOREIGN_DATA_WRAPPER
17465 }
17466 #[inline]
17467 fn cast(syntax: SyntaxNode) -> Option<Self> {
17468 if Self::can_cast(syntax.kind()) {
17469 Some(Self { syntax })
17470 } else {
17471 None
17472 }
17473 }
17474 #[inline]
17475 fn syntax(&self) -> &SyntaxNode {
17476 &self.syntax
17477 }
17478}
17479impl AstNode for AlterForeignTable {
17480 #[inline]
17481 fn can_cast(kind: SyntaxKind) -> bool {
17482 kind == SyntaxKind::ALTER_FOREIGN_TABLE
17483 }
17484 #[inline]
17485 fn cast(syntax: SyntaxNode) -> Option<Self> {
17486 if Self::can_cast(syntax.kind()) {
17487 Some(Self { syntax })
17488 } else {
17489 None
17490 }
17491 }
17492 #[inline]
17493 fn syntax(&self) -> &SyntaxNode {
17494 &self.syntax
17495 }
17496}
17497impl AstNode for AlterFunction {
17498 #[inline]
17499 fn can_cast(kind: SyntaxKind) -> bool {
17500 kind == SyntaxKind::ALTER_FUNCTION
17501 }
17502 #[inline]
17503 fn cast(syntax: SyntaxNode) -> Option<Self> {
17504 if Self::can_cast(syntax.kind()) {
17505 Some(Self { syntax })
17506 } else {
17507 None
17508 }
17509 }
17510 #[inline]
17511 fn syntax(&self) -> &SyntaxNode {
17512 &self.syntax
17513 }
17514}
17515impl AstNode for AlterGroup {
17516 #[inline]
17517 fn can_cast(kind: SyntaxKind) -> bool {
17518 kind == SyntaxKind::ALTER_GROUP
17519 }
17520 #[inline]
17521 fn cast(syntax: SyntaxNode) -> Option<Self> {
17522 if Self::can_cast(syntax.kind()) {
17523 Some(Self { syntax })
17524 } else {
17525 None
17526 }
17527 }
17528 #[inline]
17529 fn syntax(&self) -> &SyntaxNode {
17530 &self.syntax
17531 }
17532}
17533impl AstNode for AlterIndex {
17534 #[inline]
17535 fn can_cast(kind: SyntaxKind) -> bool {
17536 kind == SyntaxKind::ALTER_INDEX
17537 }
17538 #[inline]
17539 fn cast(syntax: SyntaxNode) -> Option<Self> {
17540 if Self::can_cast(syntax.kind()) {
17541 Some(Self { syntax })
17542 } else {
17543 None
17544 }
17545 }
17546 #[inline]
17547 fn syntax(&self) -> &SyntaxNode {
17548 &self.syntax
17549 }
17550}
17551impl AstNode for AlterLanguage {
17552 #[inline]
17553 fn can_cast(kind: SyntaxKind) -> bool {
17554 kind == SyntaxKind::ALTER_LANGUAGE
17555 }
17556 #[inline]
17557 fn cast(syntax: SyntaxNode) -> Option<Self> {
17558 if Self::can_cast(syntax.kind()) {
17559 Some(Self { syntax })
17560 } else {
17561 None
17562 }
17563 }
17564 #[inline]
17565 fn syntax(&self) -> &SyntaxNode {
17566 &self.syntax
17567 }
17568}
17569impl AstNode for AlterLargeObject {
17570 #[inline]
17571 fn can_cast(kind: SyntaxKind) -> bool {
17572 kind == SyntaxKind::ALTER_LARGE_OBJECT
17573 }
17574 #[inline]
17575 fn cast(syntax: SyntaxNode) -> Option<Self> {
17576 if Self::can_cast(syntax.kind()) {
17577 Some(Self { syntax })
17578 } else {
17579 None
17580 }
17581 }
17582 #[inline]
17583 fn syntax(&self) -> &SyntaxNode {
17584 &self.syntax
17585 }
17586}
17587impl AstNode for AlterMaterializedView {
17588 #[inline]
17589 fn can_cast(kind: SyntaxKind) -> bool {
17590 kind == SyntaxKind::ALTER_MATERIALIZED_VIEW
17591 }
17592 #[inline]
17593 fn cast(syntax: SyntaxNode) -> Option<Self> {
17594 if Self::can_cast(syntax.kind()) {
17595 Some(Self { syntax })
17596 } else {
17597 None
17598 }
17599 }
17600 #[inline]
17601 fn syntax(&self) -> &SyntaxNode {
17602 &self.syntax
17603 }
17604}
17605impl AstNode for AlterOperator {
17606 #[inline]
17607 fn can_cast(kind: SyntaxKind) -> bool {
17608 kind == SyntaxKind::ALTER_OPERATOR
17609 }
17610 #[inline]
17611 fn cast(syntax: SyntaxNode) -> Option<Self> {
17612 if Self::can_cast(syntax.kind()) {
17613 Some(Self { syntax })
17614 } else {
17615 None
17616 }
17617 }
17618 #[inline]
17619 fn syntax(&self) -> &SyntaxNode {
17620 &self.syntax
17621 }
17622}
17623impl AstNode for AlterOperatorClass {
17624 #[inline]
17625 fn can_cast(kind: SyntaxKind) -> bool {
17626 kind == SyntaxKind::ALTER_OPERATOR_CLASS
17627 }
17628 #[inline]
17629 fn cast(syntax: SyntaxNode) -> Option<Self> {
17630 if Self::can_cast(syntax.kind()) {
17631 Some(Self { syntax })
17632 } else {
17633 None
17634 }
17635 }
17636 #[inline]
17637 fn syntax(&self) -> &SyntaxNode {
17638 &self.syntax
17639 }
17640}
17641impl AstNode for AlterOperatorFamily {
17642 #[inline]
17643 fn can_cast(kind: SyntaxKind) -> bool {
17644 kind == SyntaxKind::ALTER_OPERATOR_FAMILY
17645 }
17646 #[inline]
17647 fn cast(syntax: SyntaxNode) -> Option<Self> {
17648 if Self::can_cast(syntax.kind()) {
17649 Some(Self { syntax })
17650 } else {
17651 None
17652 }
17653 }
17654 #[inline]
17655 fn syntax(&self) -> &SyntaxNode {
17656 &self.syntax
17657 }
17658}
17659impl AstNode for AlterOption {
17660 #[inline]
17661 fn can_cast(kind: SyntaxKind) -> bool {
17662 kind == SyntaxKind::ALTER_OPTION
17663 }
17664 #[inline]
17665 fn cast(syntax: SyntaxNode) -> Option<Self> {
17666 if Self::can_cast(syntax.kind()) {
17667 Some(Self { syntax })
17668 } else {
17669 None
17670 }
17671 }
17672 #[inline]
17673 fn syntax(&self) -> &SyntaxNode {
17674 &self.syntax
17675 }
17676}
17677impl AstNode for AlterOptionList {
17678 #[inline]
17679 fn can_cast(kind: SyntaxKind) -> bool {
17680 kind == SyntaxKind::ALTER_OPTION_LIST
17681 }
17682 #[inline]
17683 fn cast(syntax: SyntaxNode) -> Option<Self> {
17684 if Self::can_cast(syntax.kind()) {
17685 Some(Self { syntax })
17686 } else {
17687 None
17688 }
17689 }
17690 #[inline]
17691 fn syntax(&self) -> &SyntaxNode {
17692 &self.syntax
17693 }
17694}
17695impl AstNode for AlterPolicy {
17696 #[inline]
17697 fn can_cast(kind: SyntaxKind) -> bool {
17698 kind == SyntaxKind::ALTER_POLICY
17699 }
17700 #[inline]
17701 fn cast(syntax: SyntaxNode) -> Option<Self> {
17702 if Self::can_cast(syntax.kind()) {
17703 Some(Self { syntax })
17704 } else {
17705 None
17706 }
17707 }
17708 #[inline]
17709 fn syntax(&self) -> &SyntaxNode {
17710 &self.syntax
17711 }
17712}
17713impl AstNode for AlterProcedure {
17714 #[inline]
17715 fn can_cast(kind: SyntaxKind) -> bool {
17716 kind == SyntaxKind::ALTER_PROCEDURE
17717 }
17718 #[inline]
17719 fn cast(syntax: SyntaxNode) -> Option<Self> {
17720 if Self::can_cast(syntax.kind()) {
17721 Some(Self { syntax })
17722 } else {
17723 None
17724 }
17725 }
17726 #[inline]
17727 fn syntax(&self) -> &SyntaxNode {
17728 &self.syntax
17729 }
17730}
17731impl AstNode for AlterPublication {
17732 #[inline]
17733 fn can_cast(kind: SyntaxKind) -> bool {
17734 kind == SyntaxKind::ALTER_PUBLICATION
17735 }
17736 #[inline]
17737 fn cast(syntax: SyntaxNode) -> Option<Self> {
17738 if Self::can_cast(syntax.kind()) {
17739 Some(Self { syntax })
17740 } else {
17741 None
17742 }
17743 }
17744 #[inline]
17745 fn syntax(&self) -> &SyntaxNode {
17746 &self.syntax
17747 }
17748}
17749impl AstNode for AlterRole {
17750 #[inline]
17751 fn can_cast(kind: SyntaxKind) -> bool {
17752 kind == SyntaxKind::ALTER_ROLE
17753 }
17754 #[inline]
17755 fn cast(syntax: SyntaxNode) -> Option<Self> {
17756 if Self::can_cast(syntax.kind()) {
17757 Some(Self { syntax })
17758 } else {
17759 None
17760 }
17761 }
17762 #[inline]
17763 fn syntax(&self) -> &SyntaxNode {
17764 &self.syntax
17765 }
17766}
17767impl AstNode for AlterRoutine {
17768 #[inline]
17769 fn can_cast(kind: SyntaxKind) -> bool {
17770 kind == SyntaxKind::ALTER_ROUTINE
17771 }
17772 #[inline]
17773 fn cast(syntax: SyntaxNode) -> Option<Self> {
17774 if Self::can_cast(syntax.kind()) {
17775 Some(Self { syntax })
17776 } else {
17777 None
17778 }
17779 }
17780 #[inline]
17781 fn syntax(&self) -> &SyntaxNode {
17782 &self.syntax
17783 }
17784}
17785impl AstNode for AlterRule {
17786 #[inline]
17787 fn can_cast(kind: SyntaxKind) -> bool {
17788 kind == SyntaxKind::ALTER_RULE
17789 }
17790 #[inline]
17791 fn cast(syntax: SyntaxNode) -> Option<Self> {
17792 if Self::can_cast(syntax.kind()) {
17793 Some(Self { syntax })
17794 } else {
17795 None
17796 }
17797 }
17798 #[inline]
17799 fn syntax(&self) -> &SyntaxNode {
17800 &self.syntax
17801 }
17802}
17803impl AstNode for AlterSchema {
17804 #[inline]
17805 fn can_cast(kind: SyntaxKind) -> bool {
17806 kind == SyntaxKind::ALTER_SCHEMA
17807 }
17808 #[inline]
17809 fn cast(syntax: SyntaxNode) -> Option<Self> {
17810 if Self::can_cast(syntax.kind()) {
17811 Some(Self { syntax })
17812 } else {
17813 None
17814 }
17815 }
17816 #[inline]
17817 fn syntax(&self) -> &SyntaxNode {
17818 &self.syntax
17819 }
17820}
17821impl AstNode for AlterSequence {
17822 #[inline]
17823 fn can_cast(kind: SyntaxKind) -> bool {
17824 kind == SyntaxKind::ALTER_SEQUENCE
17825 }
17826 #[inline]
17827 fn cast(syntax: SyntaxNode) -> Option<Self> {
17828 if Self::can_cast(syntax.kind()) {
17829 Some(Self { syntax })
17830 } else {
17831 None
17832 }
17833 }
17834 #[inline]
17835 fn syntax(&self) -> &SyntaxNode {
17836 &self.syntax
17837 }
17838}
17839impl AstNode for AlterServer {
17840 #[inline]
17841 fn can_cast(kind: SyntaxKind) -> bool {
17842 kind == SyntaxKind::ALTER_SERVER
17843 }
17844 #[inline]
17845 fn cast(syntax: SyntaxNode) -> Option<Self> {
17846 if Self::can_cast(syntax.kind()) {
17847 Some(Self { syntax })
17848 } else {
17849 None
17850 }
17851 }
17852 #[inline]
17853 fn syntax(&self) -> &SyntaxNode {
17854 &self.syntax
17855 }
17856}
17857impl AstNode for AlterSetStatistics {
17858 #[inline]
17859 fn can_cast(kind: SyntaxKind) -> bool {
17860 kind == SyntaxKind::ALTER_SET_STATISTICS
17861 }
17862 #[inline]
17863 fn cast(syntax: SyntaxNode) -> Option<Self> {
17864 if Self::can_cast(syntax.kind()) {
17865 Some(Self { syntax })
17866 } else {
17867 None
17868 }
17869 }
17870 #[inline]
17871 fn syntax(&self) -> &SyntaxNode {
17872 &self.syntax
17873 }
17874}
17875impl AstNode for AlterStatistics {
17876 #[inline]
17877 fn can_cast(kind: SyntaxKind) -> bool {
17878 kind == SyntaxKind::ALTER_STATISTICS
17879 }
17880 #[inline]
17881 fn cast(syntax: SyntaxNode) -> Option<Self> {
17882 if Self::can_cast(syntax.kind()) {
17883 Some(Self { syntax })
17884 } else {
17885 None
17886 }
17887 }
17888 #[inline]
17889 fn syntax(&self) -> &SyntaxNode {
17890 &self.syntax
17891 }
17892}
17893impl AstNode for AlterSubscription {
17894 #[inline]
17895 fn can_cast(kind: SyntaxKind) -> bool {
17896 kind == SyntaxKind::ALTER_SUBSCRIPTION
17897 }
17898 #[inline]
17899 fn cast(syntax: SyntaxNode) -> Option<Self> {
17900 if Self::can_cast(syntax.kind()) {
17901 Some(Self { syntax })
17902 } else {
17903 None
17904 }
17905 }
17906 #[inline]
17907 fn syntax(&self) -> &SyntaxNode {
17908 &self.syntax
17909 }
17910}
17911impl AstNode for AlterSystem {
17912 #[inline]
17913 fn can_cast(kind: SyntaxKind) -> bool {
17914 kind == SyntaxKind::ALTER_SYSTEM
17915 }
17916 #[inline]
17917 fn cast(syntax: SyntaxNode) -> Option<Self> {
17918 if Self::can_cast(syntax.kind()) {
17919 Some(Self { syntax })
17920 } else {
17921 None
17922 }
17923 }
17924 #[inline]
17925 fn syntax(&self) -> &SyntaxNode {
17926 &self.syntax
17927 }
17928}
17929impl AstNode for AlterTable {
17930 #[inline]
17931 fn can_cast(kind: SyntaxKind) -> bool {
17932 kind == SyntaxKind::ALTER_TABLE
17933 }
17934 #[inline]
17935 fn cast(syntax: SyntaxNode) -> Option<Self> {
17936 if Self::can_cast(syntax.kind()) {
17937 Some(Self { syntax })
17938 } else {
17939 None
17940 }
17941 }
17942 #[inline]
17943 fn syntax(&self) -> &SyntaxNode {
17944 &self.syntax
17945 }
17946}
17947impl AstNode for AlterTablespace {
17948 #[inline]
17949 fn can_cast(kind: SyntaxKind) -> bool {
17950 kind == SyntaxKind::ALTER_TABLESPACE
17951 }
17952 #[inline]
17953 fn cast(syntax: SyntaxNode) -> Option<Self> {
17954 if Self::can_cast(syntax.kind()) {
17955 Some(Self { syntax })
17956 } else {
17957 None
17958 }
17959 }
17960 #[inline]
17961 fn syntax(&self) -> &SyntaxNode {
17962 &self.syntax
17963 }
17964}
17965impl AstNode for AlterTextSearchConfiguration {
17966 #[inline]
17967 fn can_cast(kind: SyntaxKind) -> bool {
17968 kind == SyntaxKind::ALTER_TEXT_SEARCH_CONFIGURATION
17969 }
17970 #[inline]
17971 fn cast(syntax: SyntaxNode) -> Option<Self> {
17972 if Self::can_cast(syntax.kind()) {
17973 Some(Self { syntax })
17974 } else {
17975 None
17976 }
17977 }
17978 #[inline]
17979 fn syntax(&self) -> &SyntaxNode {
17980 &self.syntax
17981 }
17982}
17983impl AstNode for AlterTextSearchDictionary {
17984 #[inline]
17985 fn can_cast(kind: SyntaxKind) -> bool {
17986 kind == SyntaxKind::ALTER_TEXT_SEARCH_DICTIONARY
17987 }
17988 #[inline]
17989 fn cast(syntax: SyntaxNode) -> Option<Self> {
17990 if Self::can_cast(syntax.kind()) {
17991 Some(Self { syntax })
17992 } else {
17993 None
17994 }
17995 }
17996 #[inline]
17997 fn syntax(&self) -> &SyntaxNode {
17998 &self.syntax
17999 }
18000}
18001impl AstNode for AlterTextSearchParser {
18002 #[inline]
18003 fn can_cast(kind: SyntaxKind) -> bool {
18004 kind == SyntaxKind::ALTER_TEXT_SEARCH_PARSER
18005 }
18006 #[inline]
18007 fn cast(syntax: SyntaxNode) -> Option<Self> {
18008 if Self::can_cast(syntax.kind()) {
18009 Some(Self { syntax })
18010 } else {
18011 None
18012 }
18013 }
18014 #[inline]
18015 fn syntax(&self) -> &SyntaxNode {
18016 &self.syntax
18017 }
18018}
18019impl AstNode for AlterTextSearchTemplate {
18020 #[inline]
18021 fn can_cast(kind: SyntaxKind) -> bool {
18022 kind == SyntaxKind::ALTER_TEXT_SEARCH_TEMPLATE
18023 }
18024 #[inline]
18025 fn cast(syntax: SyntaxNode) -> Option<Self> {
18026 if Self::can_cast(syntax.kind()) {
18027 Some(Self { syntax })
18028 } else {
18029 None
18030 }
18031 }
18032 #[inline]
18033 fn syntax(&self) -> &SyntaxNode {
18034 &self.syntax
18035 }
18036}
18037impl AstNode for AlterTrigger {
18038 #[inline]
18039 fn can_cast(kind: SyntaxKind) -> bool {
18040 kind == SyntaxKind::ALTER_TRIGGER
18041 }
18042 #[inline]
18043 fn cast(syntax: SyntaxNode) -> Option<Self> {
18044 if Self::can_cast(syntax.kind()) {
18045 Some(Self { syntax })
18046 } else {
18047 None
18048 }
18049 }
18050 #[inline]
18051 fn syntax(&self) -> &SyntaxNode {
18052 &self.syntax
18053 }
18054}
18055impl AstNode for AlterType {
18056 #[inline]
18057 fn can_cast(kind: SyntaxKind) -> bool {
18058 kind == SyntaxKind::ALTER_TYPE
18059 }
18060 #[inline]
18061 fn cast(syntax: SyntaxNode) -> Option<Self> {
18062 if Self::can_cast(syntax.kind()) {
18063 Some(Self { syntax })
18064 } else {
18065 None
18066 }
18067 }
18068 #[inline]
18069 fn syntax(&self) -> &SyntaxNode {
18070 &self.syntax
18071 }
18072}
18073impl AstNode for AlterUser {
18074 #[inline]
18075 fn can_cast(kind: SyntaxKind) -> bool {
18076 kind == SyntaxKind::ALTER_USER
18077 }
18078 #[inline]
18079 fn cast(syntax: SyntaxNode) -> Option<Self> {
18080 if Self::can_cast(syntax.kind()) {
18081 Some(Self { syntax })
18082 } else {
18083 None
18084 }
18085 }
18086 #[inline]
18087 fn syntax(&self) -> &SyntaxNode {
18088 &self.syntax
18089 }
18090}
18091impl AstNode for AlterUserMapping {
18092 #[inline]
18093 fn can_cast(kind: SyntaxKind) -> bool {
18094 kind == SyntaxKind::ALTER_USER_MAPPING
18095 }
18096 #[inline]
18097 fn cast(syntax: SyntaxNode) -> Option<Self> {
18098 if Self::can_cast(syntax.kind()) {
18099 Some(Self { syntax })
18100 } else {
18101 None
18102 }
18103 }
18104 #[inline]
18105 fn syntax(&self) -> &SyntaxNode {
18106 &self.syntax
18107 }
18108}
18109impl AstNode for AlterView {
18110 #[inline]
18111 fn can_cast(kind: SyntaxKind) -> bool {
18112 kind == SyntaxKind::ALTER_VIEW
18113 }
18114 #[inline]
18115 fn cast(syntax: SyntaxNode) -> Option<Self> {
18116 if Self::can_cast(syntax.kind()) {
18117 Some(Self { syntax })
18118 } else {
18119 None
18120 }
18121 }
18122 #[inline]
18123 fn syntax(&self) -> &SyntaxNode {
18124 &self.syntax
18125 }
18126}
18127impl AstNode for Analyze {
18128 #[inline]
18129 fn can_cast(kind: SyntaxKind) -> bool {
18130 kind == SyntaxKind::ANALYZE
18131 }
18132 #[inline]
18133 fn cast(syntax: SyntaxNode) -> Option<Self> {
18134 if Self::can_cast(syntax.kind()) {
18135 Some(Self { syntax })
18136 } else {
18137 None
18138 }
18139 }
18140 #[inline]
18141 fn syntax(&self) -> &SyntaxNode {
18142 &self.syntax
18143 }
18144}
18145impl AstNode for AnyFn {
18146 #[inline]
18147 fn can_cast(kind: SyntaxKind) -> bool {
18148 kind == SyntaxKind::ANY_FN
18149 }
18150 #[inline]
18151 fn cast(syntax: SyntaxNode) -> Option<Self> {
18152 if Self::can_cast(syntax.kind()) {
18153 Some(Self { syntax })
18154 } else {
18155 None
18156 }
18157 }
18158 #[inline]
18159 fn syntax(&self) -> &SyntaxNode {
18160 &self.syntax
18161 }
18162}
18163impl AstNode for Arg {
18164 #[inline]
18165 fn can_cast(kind: SyntaxKind) -> bool {
18166 kind == SyntaxKind::ARG
18167 }
18168 #[inline]
18169 fn cast(syntax: SyntaxNode) -> Option<Self> {
18170 if Self::can_cast(syntax.kind()) {
18171 Some(Self { syntax })
18172 } else {
18173 None
18174 }
18175 }
18176 #[inline]
18177 fn syntax(&self) -> &SyntaxNode {
18178 &self.syntax
18179 }
18180}
18181impl AstNode for ArgList {
18182 #[inline]
18183 fn can_cast(kind: SyntaxKind) -> bool {
18184 kind == SyntaxKind::ARG_LIST
18185 }
18186 #[inline]
18187 fn cast(syntax: SyntaxNode) -> Option<Self> {
18188 if Self::can_cast(syntax.kind()) {
18189 Some(Self { syntax })
18190 } else {
18191 None
18192 }
18193 }
18194 #[inline]
18195 fn syntax(&self) -> &SyntaxNode {
18196 &self.syntax
18197 }
18198}
18199impl AstNode for ArrayExpr {
18200 #[inline]
18201 fn can_cast(kind: SyntaxKind) -> bool {
18202 kind == SyntaxKind::ARRAY_EXPR
18203 }
18204 #[inline]
18205 fn cast(syntax: SyntaxNode) -> Option<Self> {
18206 if Self::can_cast(syntax.kind()) {
18207 Some(Self { syntax })
18208 } else {
18209 None
18210 }
18211 }
18212 #[inline]
18213 fn syntax(&self) -> &SyntaxNode {
18214 &self.syntax
18215 }
18216}
18217impl AstNode for ArrayType {
18218 #[inline]
18219 fn can_cast(kind: SyntaxKind) -> bool {
18220 kind == SyntaxKind::ARRAY_TYPE
18221 }
18222 #[inline]
18223 fn cast(syntax: SyntaxNode) -> Option<Self> {
18224 if Self::can_cast(syntax.kind()) {
18225 Some(Self { syntax })
18226 } else {
18227 None
18228 }
18229 }
18230 #[inline]
18231 fn syntax(&self) -> &SyntaxNode {
18232 &self.syntax
18233 }
18234}
18235impl AstNode for AsFuncOption {
18236 #[inline]
18237 fn can_cast(kind: SyntaxKind) -> bool {
18238 kind == SyntaxKind::AS_FUNC_OPTION
18239 }
18240 #[inline]
18241 fn cast(syntax: SyntaxNode) -> Option<Self> {
18242 if Self::can_cast(syntax.kind()) {
18243 Some(Self { syntax })
18244 } else {
18245 None
18246 }
18247 }
18248 #[inline]
18249 fn syntax(&self) -> &SyntaxNode {
18250 &self.syntax
18251 }
18252}
18253impl AstNode for AsName {
18254 #[inline]
18255 fn can_cast(kind: SyntaxKind) -> bool {
18256 kind == SyntaxKind::AS_NAME
18257 }
18258 #[inline]
18259 fn cast(syntax: SyntaxNode) -> Option<Self> {
18260 if Self::can_cast(syntax.kind()) {
18261 Some(Self { syntax })
18262 } else {
18263 None
18264 }
18265 }
18266 #[inline]
18267 fn syntax(&self) -> &SyntaxNode {
18268 &self.syntax
18269 }
18270}
18271impl AstNode for AtTimeZone {
18272 #[inline]
18273 fn can_cast(kind: SyntaxKind) -> bool {
18274 kind == SyntaxKind::AT_TIME_ZONE
18275 }
18276 #[inline]
18277 fn cast(syntax: SyntaxNode) -> Option<Self> {
18278 if Self::can_cast(syntax.kind()) {
18279 Some(Self { syntax })
18280 } else {
18281 None
18282 }
18283 }
18284 #[inline]
18285 fn syntax(&self) -> &SyntaxNode {
18286 &self.syntax
18287 }
18288}
18289impl AstNode for AttachPartition {
18290 #[inline]
18291 fn can_cast(kind: SyntaxKind) -> bool {
18292 kind == SyntaxKind::ATTACH_PARTITION
18293 }
18294 #[inline]
18295 fn cast(syntax: SyntaxNode) -> Option<Self> {
18296 if Self::can_cast(syntax.kind()) {
18297 Some(Self { syntax })
18298 } else {
18299 None
18300 }
18301 }
18302 #[inline]
18303 fn syntax(&self) -> &SyntaxNode {
18304 &self.syntax
18305 }
18306}
18307impl AstNode for AttributeList {
18308 #[inline]
18309 fn can_cast(kind: SyntaxKind) -> bool {
18310 kind == SyntaxKind::ATTRIBUTE_LIST
18311 }
18312 #[inline]
18313 fn cast(syntax: SyntaxNode) -> Option<Self> {
18314 if Self::can_cast(syntax.kind()) {
18315 Some(Self { syntax })
18316 } else {
18317 None
18318 }
18319 }
18320 #[inline]
18321 fn syntax(&self) -> &SyntaxNode {
18322 &self.syntax
18323 }
18324}
18325impl AstNode for AttributeOption {
18326 #[inline]
18327 fn can_cast(kind: SyntaxKind) -> bool {
18328 kind == SyntaxKind::ATTRIBUTE_OPTION
18329 }
18330 #[inline]
18331 fn cast(syntax: SyntaxNode) -> Option<Self> {
18332 if Self::can_cast(syntax.kind()) {
18333 Some(Self { syntax })
18334 } else {
18335 None
18336 }
18337 }
18338 #[inline]
18339 fn syntax(&self) -> &SyntaxNode {
18340 &self.syntax
18341 }
18342}
18343impl AstNode for AttributeValue {
18344 #[inline]
18345 fn can_cast(kind: SyntaxKind) -> bool {
18346 kind == SyntaxKind::ATTRIBUTE_VALUE
18347 }
18348 #[inline]
18349 fn cast(syntax: SyntaxNode) -> Option<Self> {
18350 if Self::can_cast(syntax.kind()) {
18351 Some(Self { syntax })
18352 } else {
18353 None
18354 }
18355 }
18356 #[inline]
18357 fn syntax(&self) -> &SyntaxNode {
18358 &self.syntax
18359 }
18360}
18361impl AstNode for Begin {
18362 #[inline]
18363 fn can_cast(kind: SyntaxKind) -> bool {
18364 kind == SyntaxKind::BEGIN
18365 }
18366 #[inline]
18367 fn cast(syntax: SyntaxNode) -> Option<Self> {
18368 if Self::can_cast(syntax.kind()) {
18369 Some(Self { syntax })
18370 } else {
18371 None
18372 }
18373 }
18374 #[inline]
18375 fn syntax(&self) -> &SyntaxNode {
18376 &self.syntax
18377 }
18378}
18379impl AstNode for BeginFuncOption {
18380 #[inline]
18381 fn can_cast(kind: SyntaxKind) -> bool {
18382 kind == SyntaxKind::BEGIN_FUNC_OPTION
18383 }
18384 #[inline]
18385 fn cast(syntax: SyntaxNode) -> Option<Self> {
18386 if Self::can_cast(syntax.kind()) {
18387 Some(Self { syntax })
18388 } else {
18389 None
18390 }
18391 }
18392 #[inline]
18393 fn syntax(&self) -> &SyntaxNode {
18394 &self.syntax
18395 }
18396}
18397impl AstNode for BeginFuncOptionList {
18398 #[inline]
18399 fn can_cast(kind: SyntaxKind) -> bool {
18400 kind == SyntaxKind::BEGIN_FUNC_OPTION_LIST
18401 }
18402 #[inline]
18403 fn cast(syntax: SyntaxNode) -> Option<Self> {
18404 if Self::can_cast(syntax.kind()) {
18405 Some(Self { syntax })
18406 } else {
18407 None
18408 }
18409 }
18410 #[inline]
18411 fn syntax(&self) -> &SyntaxNode {
18412 &self.syntax
18413 }
18414}
18415impl AstNode for BetweenExpr {
18416 #[inline]
18417 fn can_cast(kind: SyntaxKind) -> bool {
18418 kind == SyntaxKind::BETWEEN_EXPR
18419 }
18420 #[inline]
18421 fn cast(syntax: SyntaxNode) -> Option<Self> {
18422 if Self::can_cast(syntax.kind()) {
18423 Some(Self { syntax })
18424 } else {
18425 None
18426 }
18427 }
18428 #[inline]
18429 fn syntax(&self) -> &SyntaxNode {
18430 &self.syntax
18431 }
18432}
18433impl AstNode for BinExpr {
18434 #[inline]
18435 fn can_cast(kind: SyntaxKind) -> bool {
18436 kind == SyntaxKind::BIN_EXPR
18437 }
18438 #[inline]
18439 fn cast(syntax: SyntaxNode) -> Option<Self> {
18440 if Self::can_cast(syntax.kind()) {
18441 Some(Self { syntax })
18442 } else {
18443 None
18444 }
18445 }
18446 #[inline]
18447 fn syntax(&self) -> &SyntaxNode {
18448 &self.syntax
18449 }
18450}
18451impl AstNode for BitType {
18452 #[inline]
18453 fn can_cast(kind: SyntaxKind) -> bool {
18454 kind == SyntaxKind::BIT_TYPE
18455 }
18456 #[inline]
18457 fn cast(syntax: SyntaxNode) -> Option<Self> {
18458 if Self::can_cast(syntax.kind()) {
18459 Some(Self { syntax })
18460 } else {
18461 None
18462 }
18463 }
18464 #[inline]
18465 fn syntax(&self) -> &SyntaxNode {
18466 &self.syntax
18467 }
18468}
18469impl AstNode for Call {
18470 #[inline]
18471 fn can_cast(kind: SyntaxKind) -> bool {
18472 kind == SyntaxKind::CALL
18473 }
18474 #[inline]
18475 fn cast(syntax: SyntaxNode) -> Option<Self> {
18476 if Self::can_cast(syntax.kind()) {
18477 Some(Self { syntax })
18478 } else {
18479 None
18480 }
18481 }
18482 #[inline]
18483 fn syntax(&self) -> &SyntaxNode {
18484 &self.syntax
18485 }
18486}
18487impl AstNode for CallExpr {
18488 #[inline]
18489 fn can_cast(kind: SyntaxKind) -> bool {
18490 kind == SyntaxKind::CALL_EXPR
18491 }
18492 #[inline]
18493 fn cast(syntax: SyntaxNode) -> Option<Self> {
18494 if Self::can_cast(syntax.kind()) {
18495 Some(Self { syntax })
18496 } else {
18497 None
18498 }
18499 }
18500 #[inline]
18501 fn syntax(&self) -> &SyntaxNode {
18502 &self.syntax
18503 }
18504}
18505impl AstNode for Cascade {
18506 #[inline]
18507 fn can_cast(kind: SyntaxKind) -> bool {
18508 kind == SyntaxKind::CASCADE
18509 }
18510 #[inline]
18511 fn cast(syntax: SyntaxNode) -> Option<Self> {
18512 if Self::can_cast(syntax.kind()) {
18513 Some(Self { syntax })
18514 } else {
18515 None
18516 }
18517 }
18518 #[inline]
18519 fn syntax(&self) -> &SyntaxNode {
18520 &self.syntax
18521 }
18522}
18523impl AstNode for CaseExpr {
18524 #[inline]
18525 fn can_cast(kind: SyntaxKind) -> bool {
18526 kind == SyntaxKind::CASE_EXPR
18527 }
18528 #[inline]
18529 fn cast(syntax: SyntaxNode) -> Option<Self> {
18530 if Self::can_cast(syntax.kind()) {
18531 Some(Self { syntax })
18532 } else {
18533 None
18534 }
18535 }
18536 #[inline]
18537 fn syntax(&self) -> &SyntaxNode {
18538 &self.syntax
18539 }
18540}
18541impl AstNode for CastExpr {
18542 #[inline]
18543 fn can_cast(kind: SyntaxKind) -> bool {
18544 kind == SyntaxKind::CAST_EXPR
18545 }
18546 #[inline]
18547 fn cast(syntax: SyntaxNode) -> Option<Self> {
18548 if Self::can_cast(syntax.kind()) {
18549 Some(Self { syntax })
18550 } else {
18551 None
18552 }
18553 }
18554 #[inline]
18555 fn syntax(&self) -> &SyntaxNode {
18556 &self.syntax
18557 }
18558}
18559impl AstNode for CastSig {
18560 #[inline]
18561 fn can_cast(kind: SyntaxKind) -> bool {
18562 kind == SyntaxKind::CAST_SIG
18563 }
18564 #[inline]
18565 fn cast(syntax: SyntaxNode) -> Option<Self> {
18566 if Self::can_cast(syntax.kind()) {
18567 Some(Self { syntax })
18568 } else {
18569 None
18570 }
18571 }
18572 #[inline]
18573 fn syntax(&self) -> &SyntaxNode {
18574 &self.syntax
18575 }
18576}
18577impl AstNode for CharType {
18578 #[inline]
18579 fn can_cast(kind: SyntaxKind) -> bool {
18580 kind == SyntaxKind::CHAR_TYPE
18581 }
18582 #[inline]
18583 fn cast(syntax: SyntaxNode) -> Option<Self> {
18584 if Self::can_cast(syntax.kind()) {
18585 Some(Self { syntax })
18586 } else {
18587 None
18588 }
18589 }
18590 #[inline]
18591 fn syntax(&self) -> &SyntaxNode {
18592 &self.syntax
18593 }
18594}
18595impl AstNode for CheckConstraint {
18596 #[inline]
18597 fn can_cast(kind: SyntaxKind) -> bool {
18598 kind == SyntaxKind::CHECK_CONSTRAINT
18599 }
18600 #[inline]
18601 fn cast(syntax: SyntaxNode) -> Option<Self> {
18602 if Self::can_cast(syntax.kind()) {
18603 Some(Self { syntax })
18604 } else {
18605 None
18606 }
18607 }
18608 #[inline]
18609 fn syntax(&self) -> &SyntaxNode {
18610 &self.syntax
18611 }
18612}
18613impl AstNode for Checkpoint {
18614 #[inline]
18615 fn can_cast(kind: SyntaxKind) -> bool {
18616 kind == SyntaxKind::CHECKPOINT
18617 }
18618 #[inline]
18619 fn cast(syntax: SyntaxNode) -> Option<Self> {
18620 if Self::can_cast(syntax.kind()) {
18621 Some(Self { syntax })
18622 } else {
18623 None
18624 }
18625 }
18626 #[inline]
18627 fn syntax(&self) -> &SyntaxNode {
18628 &self.syntax
18629 }
18630}
18631impl AstNode for Close {
18632 #[inline]
18633 fn can_cast(kind: SyntaxKind) -> bool {
18634 kind == SyntaxKind::CLOSE
18635 }
18636 #[inline]
18637 fn cast(syntax: SyntaxNode) -> Option<Self> {
18638 if Self::can_cast(syntax.kind()) {
18639 Some(Self { syntax })
18640 } else {
18641 None
18642 }
18643 }
18644 #[inline]
18645 fn syntax(&self) -> &SyntaxNode {
18646 &self.syntax
18647 }
18648}
18649impl AstNode for Cluster {
18650 #[inline]
18651 fn can_cast(kind: SyntaxKind) -> bool {
18652 kind == SyntaxKind::CLUSTER
18653 }
18654 #[inline]
18655 fn cast(syntax: SyntaxNode) -> Option<Self> {
18656 if Self::can_cast(syntax.kind()) {
18657 Some(Self { syntax })
18658 } else {
18659 None
18660 }
18661 }
18662 #[inline]
18663 fn syntax(&self) -> &SyntaxNode {
18664 &self.syntax
18665 }
18666}
18667impl AstNode for ClusterOn {
18668 #[inline]
18669 fn can_cast(kind: SyntaxKind) -> bool {
18670 kind == SyntaxKind::CLUSTER_ON
18671 }
18672 #[inline]
18673 fn cast(syntax: SyntaxNode) -> Option<Self> {
18674 if Self::can_cast(syntax.kind()) {
18675 Some(Self { syntax })
18676 } else {
18677 None
18678 }
18679 }
18680 #[inline]
18681 fn syntax(&self) -> &SyntaxNode {
18682 &self.syntax
18683 }
18684}
18685impl AstNode for Collate {
18686 #[inline]
18687 fn can_cast(kind: SyntaxKind) -> bool {
18688 kind == SyntaxKind::COLLATE
18689 }
18690 #[inline]
18691 fn cast(syntax: SyntaxNode) -> Option<Self> {
18692 if Self::can_cast(syntax.kind()) {
18693 Some(Self { syntax })
18694 } else {
18695 None
18696 }
18697 }
18698 #[inline]
18699 fn syntax(&self) -> &SyntaxNode {
18700 &self.syntax
18701 }
18702}
18703impl AstNode for ColonColon {
18704 #[inline]
18705 fn can_cast(kind: SyntaxKind) -> bool {
18706 kind == SyntaxKind::COLON_COLON
18707 }
18708 #[inline]
18709 fn cast(syntax: SyntaxNode) -> Option<Self> {
18710 if Self::can_cast(syntax.kind()) {
18711 Some(Self { syntax })
18712 } else {
18713 None
18714 }
18715 }
18716 #[inline]
18717 fn syntax(&self) -> &SyntaxNode {
18718 &self.syntax
18719 }
18720}
18721impl AstNode for ColonEq {
18722 #[inline]
18723 fn can_cast(kind: SyntaxKind) -> bool {
18724 kind == SyntaxKind::COLON_EQ
18725 }
18726 #[inline]
18727 fn cast(syntax: SyntaxNode) -> Option<Self> {
18728 if Self::can_cast(syntax.kind()) {
18729 Some(Self { syntax })
18730 } else {
18731 None
18732 }
18733 }
18734 #[inline]
18735 fn syntax(&self) -> &SyntaxNode {
18736 &self.syntax
18737 }
18738}
18739impl AstNode for Column {
18740 #[inline]
18741 fn can_cast(kind: SyntaxKind) -> bool {
18742 kind == SyntaxKind::COLUMN
18743 }
18744 #[inline]
18745 fn cast(syntax: SyntaxNode) -> Option<Self> {
18746 if Self::can_cast(syntax.kind()) {
18747 Some(Self { syntax })
18748 } else {
18749 None
18750 }
18751 }
18752 #[inline]
18753 fn syntax(&self) -> &SyntaxNode {
18754 &self.syntax
18755 }
18756}
18757impl AstNode for ColumnList {
18758 #[inline]
18759 fn can_cast(kind: SyntaxKind) -> bool {
18760 kind == SyntaxKind::COLUMN_LIST
18761 }
18762 #[inline]
18763 fn cast(syntax: SyntaxNode) -> Option<Self> {
18764 if Self::can_cast(syntax.kind()) {
18765 Some(Self { syntax })
18766 } else {
18767 None
18768 }
18769 }
18770 #[inline]
18771 fn syntax(&self) -> &SyntaxNode {
18772 &self.syntax
18773 }
18774}
18775impl AstNode for CommentOn {
18776 #[inline]
18777 fn can_cast(kind: SyntaxKind) -> bool {
18778 kind == SyntaxKind::COMMENT_ON
18779 }
18780 #[inline]
18781 fn cast(syntax: SyntaxNode) -> Option<Self> {
18782 if Self::can_cast(syntax.kind()) {
18783 Some(Self { syntax })
18784 } else {
18785 None
18786 }
18787 }
18788 #[inline]
18789 fn syntax(&self) -> &SyntaxNode {
18790 &self.syntax
18791 }
18792}
18793impl AstNode for Commit {
18794 #[inline]
18795 fn can_cast(kind: SyntaxKind) -> bool {
18796 kind == SyntaxKind::COMMIT
18797 }
18798 #[inline]
18799 fn cast(syntax: SyntaxNode) -> Option<Self> {
18800 if Self::can_cast(syntax.kind()) {
18801 Some(Self { syntax })
18802 } else {
18803 None
18804 }
18805 }
18806 #[inline]
18807 fn syntax(&self) -> &SyntaxNode {
18808 &self.syntax
18809 }
18810}
18811impl AstNode for CompoundSelect {
18812 #[inline]
18813 fn can_cast(kind: SyntaxKind) -> bool {
18814 kind == SyntaxKind::COMPOUND_SELECT
18815 }
18816 #[inline]
18817 fn cast(syntax: SyntaxNode) -> Option<Self> {
18818 if Self::can_cast(syntax.kind()) {
18819 Some(Self { syntax })
18820 } else {
18821 None
18822 }
18823 }
18824 #[inline]
18825 fn syntax(&self) -> &SyntaxNode {
18826 &self.syntax
18827 }
18828}
18829impl AstNode for CompressionMethod {
18830 #[inline]
18831 fn can_cast(kind: SyntaxKind) -> bool {
18832 kind == SyntaxKind::COMPRESSION_METHOD
18833 }
18834 #[inline]
18835 fn cast(syntax: SyntaxNode) -> Option<Self> {
18836 if Self::can_cast(syntax.kind()) {
18837 Some(Self { syntax })
18838 } else {
18839 None
18840 }
18841 }
18842 #[inline]
18843 fn syntax(&self) -> &SyntaxNode {
18844 &self.syntax
18845 }
18846}
18847impl AstNode for ConflictDoNothing {
18848 #[inline]
18849 fn can_cast(kind: SyntaxKind) -> bool {
18850 kind == SyntaxKind::CONFLICT_DO_NOTHING
18851 }
18852 #[inline]
18853 fn cast(syntax: SyntaxNode) -> Option<Self> {
18854 if Self::can_cast(syntax.kind()) {
18855 Some(Self { syntax })
18856 } else {
18857 None
18858 }
18859 }
18860 #[inline]
18861 fn syntax(&self) -> &SyntaxNode {
18862 &self.syntax
18863 }
18864}
18865impl AstNode for ConflictDoUpdateSet {
18866 #[inline]
18867 fn can_cast(kind: SyntaxKind) -> bool {
18868 kind == SyntaxKind::CONFLICT_DO_UPDATE_SET
18869 }
18870 #[inline]
18871 fn cast(syntax: SyntaxNode) -> Option<Self> {
18872 if Self::can_cast(syntax.kind()) {
18873 Some(Self { syntax })
18874 } else {
18875 None
18876 }
18877 }
18878 #[inline]
18879 fn syntax(&self) -> &SyntaxNode {
18880 &self.syntax
18881 }
18882}
18883impl AstNode for ConflictIndexItem {
18884 #[inline]
18885 fn can_cast(kind: SyntaxKind) -> bool {
18886 kind == SyntaxKind::CONFLICT_INDEX_ITEM
18887 }
18888 #[inline]
18889 fn cast(syntax: SyntaxNode) -> Option<Self> {
18890 if Self::can_cast(syntax.kind()) {
18891 Some(Self { syntax })
18892 } else {
18893 None
18894 }
18895 }
18896 #[inline]
18897 fn syntax(&self) -> &SyntaxNode {
18898 &self.syntax
18899 }
18900}
18901impl AstNode for ConflictIndexItemList {
18902 #[inline]
18903 fn can_cast(kind: SyntaxKind) -> bool {
18904 kind == SyntaxKind::CONFLICT_INDEX_ITEM_LIST
18905 }
18906 #[inline]
18907 fn cast(syntax: SyntaxNode) -> Option<Self> {
18908 if Self::can_cast(syntax.kind()) {
18909 Some(Self { syntax })
18910 } else {
18911 None
18912 }
18913 }
18914 #[inline]
18915 fn syntax(&self) -> &SyntaxNode {
18916 &self.syntax
18917 }
18918}
18919impl AstNode for ConflictOnConstraint {
18920 #[inline]
18921 fn can_cast(kind: SyntaxKind) -> bool {
18922 kind == SyntaxKind::CONFLICT_ON_CONSTRAINT
18923 }
18924 #[inline]
18925 fn cast(syntax: SyntaxNode) -> Option<Self> {
18926 if Self::can_cast(syntax.kind()) {
18927 Some(Self { syntax })
18928 } else {
18929 None
18930 }
18931 }
18932 #[inline]
18933 fn syntax(&self) -> &SyntaxNode {
18934 &self.syntax
18935 }
18936}
18937impl AstNode for ConflictOnIndex {
18938 #[inline]
18939 fn can_cast(kind: SyntaxKind) -> bool {
18940 kind == SyntaxKind::CONFLICT_ON_INDEX
18941 }
18942 #[inline]
18943 fn cast(syntax: SyntaxNode) -> Option<Self> {
18944 if Self::can_cast(syntax.kind()) {
18945 Some(Self { syntax })
18946 } else {
18947 None
18948 }
18949 }
18950 #[inline]
18951 fn syntax(&self) -> &SyntaxNode {
18952 &self.syntax
18953 }
18954}
18955impl AstNode for ConstraintExclusion {
18956 #[inline]
18957 fn can_cast(kind: SyntaxKind) -> bool {
18958 kind == SyntaxKind::CONSTRAINT_EXCLUSION
18959 }
18960 #[inline]
18961 fn cast(syntax: SyntaxNode) -> Option<Self> {
18962 if Self::can_cast(syntax.kind()) {
18963 Some(Self { syntax })
18964 } else {
18965 None
18966 }
18967 }
18968 #[inline]
18969 fn syntax(&self) -> &SyntaxNode {
18970 &self.syntax
18971 }
18972}
18973impl AstNode for ConstraintExclusionList {
18974 #[inline]
18975 fn can_cast(kind: SyntaxKind) -> bool {
18976 kind == SyntaxKind::CONSTRAINT_EXCLUSION_LIST
18977 }
18978 #[inline]
18979 fn cast(syntax: SyntaxNode) -> Option<Self> {
18980 if Self::can_cast(syntax.kind()) {
18981 Some(Self { syntax })
18982 } else {
18983 None
18984 }
18985 }
18986 #[inline]
18987 fn syntax(&self) -> &SyntaxNode {
18988 &self.syntax
18989 }
18990}
18991impl AstNode for ConstraintIncludeClause {
18992 #[inline]
18993 fn can_cast(kind: SyntaxKind) -> bool {
18994 kind == SyntaxKind::CONSTRAINT_INCLUDE_CLAUSE
18995 }
18996 #[inline]
18997 fn cast(syntax: SyntaxNode) -> Option<Self> {
18998 if Self::can_cast(syntax.kind()) {
18999 Some(Self { syntax })
19000 } else {
19001 None
19002 }
19003 }
19004 #[inline]
19005 fn syntax(&self) -> &SyntaxNode {
19006 &self.syntax
19007 }
19008}
19009impl AstNode for ConstraintIndexMethod {
19010 #[inline]
19011 fn can_cast(kind: SyntaxKind) -> bool {
19012 kind == SyntaxKind::CONSTRAINT_INDEX_METHOD
19013 }
19014 #[inline]
19015 fn cast(syntax: SyntaxNode) -> Option<Self> {
19016 if Self::can_cast(syntax.kind()) {
19017 Some(Self { syntax })
19018 } else {
19019 None
19020 }
19021 }
19022 #[inline]
19023 fn syntax(&self) -> &SyntaxNode {
19024 &self.syntax
19025 }
19026}
19027impl AstNode for ConstraintIndexTablespace {
19028 #[inline]
19029 fn can_cast(kind: SyntaxKind) -> bool {
19030 kind == SyntaxKind::CONSTRAINT_INDEX_TABLESPACE
19031 }
19032 #[inline]
19033 fn cast(syntax: SyntaxNode) -> Option<Self> {
19034 if Self::can_cast(syntax.kind()) {
19035 Some(Self { syntax })
19036 } else {
19037 None
19038 }
19039 }
19040 #[inline]
19041 fn syntax(&self) -> &SyntaxNode {
19042 &self.syntax
19043 }
19044}
19045impl AstNode for ConstraintName {
19046 #[inline]
19047 fn can_cast(kind: SyntaxKind) -> bool {
19048 kind == SyntaxKind::CONSTRAINT_NAME
19049 }
19050 #[inline]
19051 fn cast(syntax: SyntaxNode) -> Option<Self> {
19052 if Self::can_cast(syntax.kind()) {
19053 Some(Self { syntax })
19054 } else {
19055 None
19056 }
19057 }
19058 #[inline]
19059 fn syntax(&self) -> &SyntaxNode {
19060 &self.syntax
19061 }
19062}
19063impl AstNode for Copy {
19064 #[inline]
19065 fn can_cast(kind: SyntaxKind) -> bool {
19066 kind == SyntaxKind::COPY
19067 }
19068 #[inline]
19069 fn cast(syntax: SyntaxNode) -> Option<Self> {
19070 if Self::can_cast(syntax.kind()) {
19071 Some(Self { syntax })
19072 } else {
19073 None
19074 }
19075 }
19076 #[inline]
19077 fn syntax(&self) -> &SyntaxNode {
19078 &self.syntax
19079 }
19080}
19081impl AstNode for CopyOption {
19082 #[inline]
19083 fn can_cast(kind: SyntaxKind) -> bool {
19084 kind == SyntaxKind::COPY_OPTION
19085 }
19086 #[inline]
19087 fn cast(syntax: SyntaxNode) -> Option<Self> {
19088 if Self::can_cast(syntax.kind()) {
19089 Some(Self { syntax })
19090 } else {
19091 None
19092 }
19093 }
19094 #[inline]
19095 fn syntax(&self) -> &SyntaxNode {
19096 &self.syntax
19097 }
19098}
19099impl AstNode for CopyOptionList {
19100 #[inline]
19101 fn can_cast(kind: SyntaxKind) -> bool {
19102 kind == SyntaxKind::COPY_OPTION_LIST
19103 }
19104 #[inline]
19105 fn cast(syntax: SyntaxNode) -> Option<Self> {
19106 if Self::can_cast(syntax.kind()) {
19107 Some(Self { syntax })
19108 } else {
19109 None
19110 }
19111 }
19112 #[inline]
19113 fn syntax(&self) -> &SyntaxNode {
19114 &self.syntax
19115 }
19116}
19117impl AstNode for CostFuncOption {
19118 #[inline]
19119 fn can_cast(kind: SyntaxKind) -> bool {
19120 kind == SyntaxKind::COST_FUNC_OPTION
19121 }
19122 #[inline]
19123 fn cast(syntax: SyntaxNode) -> Option<Self> {
19124 if Self::can_cast(syntax.kind()) {
19125 Some(Self { syntax })
19126 } else {
19127 None
19128 }
19129 }
19130 #[inline]
19131 fn syntax(&self) -> &SyntaxNode {
19132 &self.syntax
19133 }
19134}
19135impl AstNode for CreateAccessMethod {
19136 #[inline]
19137 fn can_cast(kind: SyntaxKind) -> bool {
19138 kind == SyntaxKind::CREATE_ACCESS_METHOD
19139 }
19140 #[inline]
19141 fn cast(syntax: SyntaxNode) -> Option<Self> {
19142 if Self::can_cast(syntax.kind()) {
19143 Some(Self { syntax })
19144 } else {
19145 None
19146 }
19147 }
19148 #[inline]
19149 fn syntax(&self) -> &SyntaxNode {
19150 &self.syntax
19151 }
19152}
19153impl AstNode for CreateAggregate {
19154 #[inline]
19155 fn can_cast(kind: SyntaxKind) -> bool {
19156 kind == SyntaxKind::CREATE_AGGREGATE
19157 }
19158 #[inline]
19159 fn cast(syntax: SyntaxNode) -> Option<Self> {
19160 if Self::can_cast(syntax.kind()) {
19161 Some(Self { syntax })
19162 } else {
19163 None
19164 }
19165 }
19166 #[inline]
19167 fn syntax(&self) -> &SyntaxNode {
19168 &self.syntax
19169 }
19170}
19171impl AstNode for CreateCast {
19172 #[inline]
19173 fn can_cast(kind: SyntaxKind) -> bool {
19174 kind == SyntaxKind::CREATE_CAST
19175 }
19176 #[inline]
19177 fn cast(syntax: SyntaxNode) -> Option<Self> {
19178 if Self::can_cast(syntax.kind()) {
19179 Some(Self { syntax })
19180 } else {
19181 None
19182 }
19183 }
19184 #[inline]
19185 fn syntax(&self) -> &SyntaxNode {
19186 &self.syntax
19187 }
19188}
19189impl AstNode for CreateCollation {
19190 #[inline]
19191 fn can_cast(kind: SyntaxKind) -> bool {
19192 kind == SyntaxKind::CREATE_COLLATION
19193 }
19194 #[inline]
19195 fn cast(syntax: SyntaxNode) -> Option<Self> {
19196 if Self::can_cast(syntax.kind()) {
19197 Some(Self { syntax })
19198 } else {
19199 None
19200 }
19201 }
19202 #[inline]
19203 fn syntax(&self) -> &SyntaxNode {
19204 &self.syntax
19205 }
19206}
19207impl AstNode for CreateConversion {
19208 #[inline]
19209 fn can_cast(kind: SyntaxKind) -> bool {
19210 kind == SyntaxKind::CREATE_CONVERSION
19211 }
19212 #[inline]
19213 fn cast(syntax: SyntaxNode) -> Option<Self> {
19214 if Self::can_cast(syntax.kind()) {
19215 Some(Self { syntax })
19216 } else {
19217 None
19218 }
19219 }
19220 #[inline]
19221 fn syntax(&self) -> &SyntaxNode {
19222 &self.syntax
19223 }
19224}
19225impl AstNode for CreateDatabase {
19226 #[inline]
19227 fn can_cast(kind: SyntaxKind) -> bool {
19228 kind == SyntaxKind::CREATE_DATABASE
19229 }
19230 #[inline]
19231 fn cast(syntax: SyntaxNode) -> Option<Self> {
19232 if Self::can_cast(syntax.kind()) {
19233 Some(Self { syntax })
19234 } else {
19235 None
19236 }
19237 }
19238 #[inline]
19239 fn syntax(&self) -> &SyntaxNode {
19240 &self.syntax
19241 }
19242}
19243impl AstNode for CreateDatabaseOption {
19244 #[inline]
19245 fn can_cast(kind: SyntaxKind) -> bool {
19246 kind == SyntaxKind::CREATE_DATABASE_OPTION
19247 }
19248 #[inline]
19249 fn cast(syntax: SyntaxNode) -> Option<Self> {
19250 if Self::can_cast(syntax.kind()) {
19251 Some(Self { syntax })
19252 } else {
19253 None
19254 }
19255 }
19256 #[inline]
19257 fn syntax(&self) -> &SyntaxNode {
19258 &self.syntax
19259 }
19260}
19261impl AstNode for CreateDatabaseOptionList {
19262 #[inline]
19263 fn can_cast(kind: SyntaxKind) -> bool {
19264 kind == SyntaxKind::CREATE_DATABASE_OPTION_LIST
19265 }
19266 #[inline]
19267 fn cast(syntax: SyntaxNode) -> Option<Self> {
19268 if Self::can_cast(syntax.kind()) {
19269 Some(Self { syntax })
19270 } else {
19271 None
19272 }
19273 }
19274 #[inline]
19275 fn syntax(&self) -> &SyntaxNode {
19276 &self.syntax
19277 }
19278}
19279impl AstNode for CreateDomain {
19280 #[inline]
19281 fn can_cast(kind: SyntaxKind) -> bool {
19282 kind == SyntaxKind::CREATE_DOMAIN
19283 }
19284 #[inline]
19285 fn cast(syntax: SyntaxNode) -> Option<Self> {
19286 if Self::can_cast(syntax.kind()) {
19287 Some(Self { syntax })
19288 } else {
19289 None
19290 }
19291 }
19292 #[inline]
19293 fn syntax(&self) -> &SyntaxNode {
19294 &self.syntax
19295 }
19296}
19297impl AstNode for CreateEventTrigger {
19298 #[inline]
19299 fn can_cast(kind: SyntaxKind) -> bool {
19300 kind == SyntaxKind::CREATE_EVENT_TRIGGER
19301 }
19302 #[inline]
19303 fn cast(syntax: SyntaxNode) -> Option<Self> {
19304 if Self::can_cast(syntax.kind()) {
19305 Some(Self { syntax })
19306 } else {
19307 None
19308 }
19309 }
19310 #[inline]
19311 fn syntax(&self) -> &SyntaxNode {
19312 &self.syntax
19313 }
19314}
19315impl AstNode for CreateExtension {
19316 #[inline]
19317 fn can_cast(kind: SyntaxKind) -> bool {
19318 kind == SyntaxKind::CREATE_EXTENSION
19319 }
19320 #[inline]
19321 fn cast(syntax: SyntaxNode) -> Option<Self> {
19322 if Self::can_cast(syntax.kind()) {
19323 Some(Self { syntax })
19324 } else {
19325 None
19326 }
19327 }
19328 #[inline]
19329 fn syntax(&self) -> &SyntaxNode {
19330 &self.syntax
19331 }
19332}
19333impl AstNode for CreateForeignDataWrapper {
19334 #[inline]
19335 fn can_cast(kind: SyntaxKind) -> bool {
19336 kind == SyntaxKind::CREATE_FOREIGN_DATA_WRAPPER
19337 }
19338 #[inline]
19339 fn cast(syntax: SyntaxNode) -> Option<Self> {
19340 if Self::can_cast(syntax.kind()) {
19341 Some(Self { syntax })
19342 } else {
19343 None
19344 }
19345 }
19346 #[inline]
19347 fn syntax(&self) -> &SyntaxNode {
19348 &self.syntax
19349 }
19350}
19351impl AstNode for CreateForeignTable {
19352 #[inline]
19353 fn can_cast(kind: SyntaxKind) -> bool {
19354 kind == SyntaxKind::CREATE_FOREIGN_TABLE
19355 }
19356 #[inline]
19357 fn cast(syntax: SyntaxNode) -> Option<Self> {
19358 if Self::can_cast(syntax.kind()) {
19359 Some(Self { syntax })
19360 } else {
19361 None
19362 }
19363 }
19364 #[inline]
19365 fn syntax(&self) -> &SyntaxNode {
19366 &self.syntax
19367 }
19368}
19369impl AstNode for CreateFunction {
19370 #[inline]
19371 fn can_cast(kind: SyntaxKind) -> bool {
19372 kind == SyntaxKind::CREATE_FUNCTION
19373 }
19374 #[inline]
19375 fn cast(syntax: SyntaxNode) -> Option<Self> {
19376 if Self::can_cast(syntax.kind()) {
19377 Some(Self { syntax })
19378 } else {
19379 None
19380 }
19381 }
19382 #[inline]
19383 fn syntax(&self) -> &SyntaxNode {
19384 &self.syntax
19385 }
19386}
19387impl AstNode for CreateGroup {
19388 #[inline]
19389 fn can_cast(kind: SyntaxKind) -> bool {
19390 kind == SyntaxKind::CREATE_GROUP
19391 }
19392 #[inline]
19393 fn cast(syntax: SyntaxNode) -> Option<Self> {
19394 if Self::can_cast(syntax.kind()) {
19395 Some(Self { syntax })
19396 } else {
19397 None
19398 }
19399 }
19400 #[inline]
19401 fn syntax(&self) -> &SyntaxNode {
19402 &self.syntax
19403 }
19404}
19405impl AstNode for CreateIndex {
19406 #[inline]
19407 fn can_cast(kind: SyntaxKind) -> bool {
19408 kind == SyntaxKind::CREATE_INDEX
19409 }
19410 #[inline]
19411 fn cast(syntax: SyntaxNode) -> Option<Self> {
19412 if Self::can_cast(syntax.kind()) {
19413 Some(Self { syntax })
19414 } else {
19415 None
19416 }
19417 }
19418 #[inline]
19419 fn syntax(&self) -> &SyntaxNode {
19420 &self.syntax
19421 }
19422}
19423impl AstNode for CreateLanguage {
19424 #[inline]
19425 fn can_cast(kind: SyntaxKind) -> bool {
19426 kind == SyntaxKind::CREATE_LANGUAGE
19427 }
19428 #[inline]
19429 fn cast(syntax: SyntaxNode) -> Option<Self> {
19430 if Self::can_cast(syntax.kind()) {
19431 Some(Self { syntax })
19432 } else {
19433 None
19434 }
19435 }
19436 #[inline]
19437 fn syntax(&self) -> &SyntaxNode {
19438 &self.syntax
19439 }
19440}
19441impl AstNode for CreateMaterializedView {
19442 #[inline]
19443 fn can_cast(kind: SyntaxKind) -> bool {
19444 kind == SyntaxKind::CREATE_MATERIALIZED_VIEW
19445 }
19446 #[inline]
19447 fn cast(syntax: SyntaxNode) -> Option<Self> {
19448 if Self::can_cast(syntax.kind()) {
19449 Some(Self { syntax })
19450 } else {
19451 None
19452 }
19453 }
19454 #[inline]
19455 fn syntax(&self) -> &SyntaxNode {
19456 &self.syntax
19457 }
19458}
19459impl AstNode for CreateOperator {
19460 #[inline]
19461 fn can_cast(kind: SyntaxKind) -> bool {
19462 kind == SyntaxKind::CREATE_OPERATOR
19463 }
19464 #[inline]
19465 fn cast(syntax: SyntaxNode) -> Option<Self> {
19466 if Self::can_cast(syntax.kind()) {
19467 Some(Self { syntax })
19468 } else {
19469 None
19470 }
19471 }
19472 #[inline]
19473 fn syntax(&self) -> &SyntaxNode {
19474 &self.syntax
19475 }
19476}
19477impl AstNode for CreateOperatorClass {
19478 #[inline]
19479 fn can_cast(kind: SyntaxKind) -> bool {
19480 kind == SyntaxKind::CREATE_OPERATOR_CLASS
19481 }
19482 #[inline]
19483 fn cast(syntax: SyntaxNode) -> Option<Self> {
19484 if Self::can_cast(syntax.kind()) {
19485 Some(Self { syntax })
19486 } else {
19487 None
19488 }
19489 }
19490 #[inline]
19491 fn syntax(&self) -> &SyntaxNode {
19492 &self.syntax
19493 }
19494}
19495impl AstNode for CreateOperatorFamily {
19496 #[inline]
19497 fn can_cast(kind: SyntaxKind) -> bool {
19498 kind == SyntaxKind::CREATE_OPERATOR_FAMILY
19499 }
19500 #[inline]
19501 fn cast(syntax: SyntaxNode) -> Option<Self> {
19502 if Self::can_cast(syntax.kind()) {
19503 Some(Self { syntax })
19504 } else {
19505 None
19506 }
19507 }
19508 #[inline]
19509 fn syntax(&self) -> &SyntaxNode {
19510 &self.syntax
19511 }
19512}
19513impl AstNode for CreatePolicy {
19514 #[inline]
19515 fn can_cast(kind: SyntaxKind) -> bool {
19516 kind == SyntaxKind::CREATE_POLICY
19517 }
19518 #[inline]
19519 fn cast(syntax: SyntaxNode) -> Option<Self> {
19520 if Self::can_cast(syntax.kind()) {
19521 Some(Self { syntax })
19522 } else {
19523 None
19524 }
19525 }
19526 #[inline]
19527 fn syntax(&self) -> &SyntaxNode {
19528 &self.syntax
19529 }
19530}
19531impl AstNode for CreateProcedure {
19532 #[inline]
19533 fn can_cast(kind: SyntaxKind) -> bool {
19534 kind == SyntaxKind::CREATE_PROCEDURE
19535 }
19536 #[inline]
19537 fn cast(syntax: SyntaxNode) -> Option<Self> {
19538 if Self::can_cast(syntax.kind()) {
19539 Some(Self { syntax })
19540 } else {
19541 None
19542 }
19543 }
19544 #[inline]
19545 fn syntax(&self) -> &SyntaxNode {
19546 &self.syntax
19547 }
19548}
19549impl AstNode for CreatePublication {
19550 #[inline]
19551 fn can_cast(kind: SyntaxKind) -> bool {
19552 kind == SyntaxKind::CREATE_PUBLICATION
19553 }
19554 #[inline]
19555 fn cast(syntax: SyntaxNode) -> Option<Self> {
19556 if Self::can_cast(syntax.kind()) {
19557 Some(Self { syntax })
19558 } else {
19559 None
19560 }
19561 }
19562 #[inline]
19563 fn syntax(&self) -> &SyntaxNode {
19564 &self.syntax
19565 }
19566}
19567impl AstNode for CreateRole {
19568 #[inline]
19569 fn can_cast(kind: SyntaxKind) -> bool {
19570 kind == SyntaxKind::CREATE_ROLE
19571 }
19572 #[inline]
19573 fn cast(syntax: SyntaxNode) -> Option<Self> {
19574 if Self::can_cast(syntax.kind()) {
19575 Some(Self { syntax })
19576 } else {
19577 None
19578 }
19579 }
19580 #[inline]
19581 fn syntax(&self) -> &SyntaxNode {
19582 &self.syntax
19583 }
19584}
19585impl AstNode for CreateRule {
19586 #[inline]
19587 fn can_cast(kind: SyntaxKind) -> bool {
19588 kind == SyntaxKind::CREATE_RULE
19589 }
19590 #[inline]
19591 fn cast(syntax: SyntaxNode) -> Option<Self> {
19592 if Self::can_cast(syntax.kind()) {
19593 Some(Self { syntax })
19594 } else {
19595 None
19596 }
19597 }
19598 #[inline]
19599 fn syntax(&self) -> &SyntaxNode {
19600 &self.syntax
19601 }
19602}
19603impl AstNode for CreateSchema {
19604 #[inline]
19605 fn can_cast(kind: SyntaxKind) -> bool {
19606 kind == SyntaxKind::CREATE_SCHEMA
19607 }
19608 #[inline]
19609 fn cast(syntax: SyntaxNode) -> Option<Self> {
19610 if Self::can_cast(syntax.kind()) {
19611 Some(Self { syntax })
19612 } else {
19613 None
19614 }
19615 }
19616 #[inline]
19617 fn syntax(&self) -> &SyntaxNode {
19618 &self.syntax
19619 }
19620}
19621impl AstNode for CreateSequence {
19622 #[inline]
19623 fn can_cast(kind: SyntaxKind) -> bool {
19624 kind == SyntaxKind::CREATE_SEQUENCE
19625 }
19626 #[inline]
19627 fn cast(syntax: SyntaxNode) -> Option<Self> {
19628 if Self::can_cast(syntax.kind()) {
19629 Some(Self { syntax })
19630 } else {
19631 None
19632 }
19633 }
19634 #[inline]
19635 fn syntax(&self) -> &SyntaxNode {
19636 &self.syntax
19637 }
19638}
19639impl AstNode for CreateServer {
19640 #[inline]
19641 fn can_cast(kind: SyntaxKind) -> bool {
19642 kind == SyntaxKind::CREATE_SERVER
19643 }
19644 #[inline]
19645 fn cast(syntax: SyntaxNode) -> Option<Self> {
19646 if Self::can_cast(syntax.kind()) {
19647 Some(Self { syntax })
19648 } else {
19649 None
19650 }
19651 }
19652 #[inline]
19653 fn syntax(&self) -> &SyntaxNode {
19654 &self.syntax
19655 }
19656}
19657impl AstNode for CreateStatistics {
19658 #[inline]
19659 fn can_cast(kind: SyntaxKind) -> bool {
19660 kind == SyntaxKind::CREATE_STATISTICS
19661 }
19662 #[inline]
19663 fn cast(syntax: SyntaxNode) -> Option<Self> {
19664 if Self::can_cast(syntax.kind()) {
19665 Some(Self { syntax })
19666 } else {
19667 None
19668 }
19669 }
19670 #[inline]
19671 fn syntax(&self) -> &SyntaxNode {
19672 &self.syntax
19673 }
19674}
19675impl AstNode for CreateSubscription {
19676 #[inline]
19677 fn can_cast(kind: SyntaxKind) -> bool {
19678 kind == SyntaxKind::CREATE_SUBSCRIPTION
19679 }
19680 #[inline]
19681 fn cast(syntax: SyntaxNode) -> Option<Self> {
19682 if Self::can_cast(syntax.kind()) {
19683 Some(Self { syntax })
19684 } else {
19685 None
19686 }
19687 }
19688 #[inline]
19689 fn syntax(&self) -> &SyntaxNode {
19690 &self.syntax
19691 }
19692}
19693impl AstNode for CreateTable {
19694 #[inline]
19695 fn can_cast(kind: SyntaxKind) -> bool {
19696 kind == SyntaxKind::CREATE_TABLE
19697 }
19698 #[inline]
19699 fn cast(syntax: SyntaxNode) -> Option<Self> {
19700 if Self::can_cast(syntax.kind()) {
19701 Some(Self { syntax })
19702 } else {
19703 None
19704 }
19705 }
19706 #[inline]
19707 fn syntax(&self) -> &SyntaxNode {
19708 &self.syntax
19709 }
19710}
19711impl AstNode for CreateTableAs {
19712 #[inline]
19713 fn can_cast(kind: SyntaxKind) -> bool {
19714 kind == SyntaxKind::CREATE_TABLE_AS
19715 }
19716 #[inline]
19717 fn cast(syntax: SyntaxNode) -> Option<Self> {
19718 if Self::can_cast(syntax.kind()) {
19719 Some(Self { syntax })
19720 } else {
19721 None
19722 }
19723 }
19724 #[inline]
19725 fn syntax(&self) -> &SyntaxNode {
19726 &self.syntax
19727 }
19728}
19729impl AstNode for CreateTablespace {
19730 #[inline]
19731 fn can_cast(kind: SyntaxKind) -> bool {
19732 kind == SyntaxKind::CREATE_TABLESPACE
19733 }
19734 #[inline]
19735 fn cast(syntax: SyntaxNode) -> Option<Self> {
19736 if Self::can_cast(syntax.kind()) {
19737 Some(Self { syntax })
19738 } else {
19739 None
19740 }
19741 }
19742 #[inline]
19743 fn syntax(&self) -> &SyntaxNode {
19744 &self.syntax
19745 }
19746}
19747impl AstNode for CreateTextSearchConfiguration {
19748 #[inline]
19749 fn can_cast(kind: SyntaxKind) -> bool {
19750 kind == SyntaxKind::CREATE_TEXT_SEARCH_CONFIGURATION
19751 }
19752 #[inline]
19753 fn cast(syntax: SyntaxNode) -> Option<Self> {
19754 if Self::can_cast(syntax.kind()) {
19755 Some(Self { syntax })
19756 } else {
19757 None
19758 }
19759 }
19760 #[inline]
19761 fn syntax(&self) -> &SyntaxNode {
19762 &self.syntax
19763 }
19764}
19765impl AstNode for CreateTextSearchDictionary {
19766 #[inline]
19767 fn can_cast(kind: SyntaxKind) -> bool {
19768 kind == SyntaxKind::CREATE_TEXT_SEARCH_DICTIONARY
19769 }
19770 #[inline]
19771 fn cast(syntax: SyntaxNode) -> Option<Self> {
19772 if Self::can_cast(syntax.kind()) {
19773 Some(Self { syntax })
19774 } else {
19775 None
19776 }
19777 }
19778 #[inline]
19779 fn syntax(&self) -> &SyntaxNode {
19780 &self.syntax
19781 }
19782}
19783impl AstNode for CreateTextSearchParser {
19784 #[inline]
19785 fn can_cast(kind: SyntaxKind) -> bool {
19786 kind == SyntaxKind::CREATE_TEXT_SEARCH_PARSER
19787 }
19788 #[inline]
19789 fn cast(syntax: SyntaxNode) -> Option<Self> {
19790 if Self::can_cast(syntax.kind()) {
19791 Some(Self { syntax })
19792 } else {
19793 None
19794 }
19795 }
19796 #[inline]
19797 fn syntax(&self) -> &SyntaxNode {
19798 &self.syntax
19799 }
19800}
19801impl AstNode for CreateTextSearchTemplate {
19802 #[inline]
19803 fn can_cast(kind: SyntaxKind) -> bool {
19804 kind == SyntaxKind::CREATE_TEXT_SEARCH_TEMPLATE
19805 }
19806 #[inline]
19807 fn cast(syntax: SyntaxNode) -> Option<Self> {
19808 if Self::can_cast(syntax.kind()) {
19809 Some(Self { syntax })
19810 } else {
19811 None
19812 }
19813 }
19814 #[inline]
19815 fn syntax(&self) -> &SyntaxNode {
19816 &self.syntax
19817 }
19818}
19819impl AstNode for CreateTransform {
19820 #[inline]
19821 fn can_cast(kind: SyntaxKind) -> bool {
19822 kind == SyntaxKind::CREATE_TRANSFORM
19823 }
19824 #[inline]
19825 fn cast(syntax: SyntaxNode) -> Option<Self> {
19826 if Self::can_cast(syntax.kind()) {
19827 Some(Self { syntax })
19828 } else {
19829 None
19830 }
19831 }
19832 #[inline]
19833 fn syntax(&self) -> &SyntaxNode {
19834 &self.syntax
19835 }
19836}
19837impl AstNode for CreateTrigger {
19838 #[inline]
19839 fn can_cast(kind: SyntaxKind) -> bool {
19840 kind == SyntaxKind::CREATE_TRIGGER
19841 }
19842 #[inline]
19843 fn cast(syntax: SyntaxNode) -> Option<Self> {
19844 if Self::can_cast(syntax.kind()) {
19845 Some(Self { syntax })
19846 } else {
19847 None
19848 }
19849 }
19850 #[inline]
19851 fn syntax(&self) -> &SyntaxNode {
19852 &self.syntax
19853 }
19854}
19855impl AstNode for CreateType {
19856 #[inline]
19857 fn can_cast(kind: SyntaxKind) -> bool {
19858 kind == SyntaxKind::CREATE_TYPE
19859 }
19860 #[inline]
19861 fn cast(syntax: SyntaxNode) -> Option<Self> {
19862 if Self::can_cast(syntax.kind()) {
19863 Some(Self { syntax })
19864 } else {
19865 None
19866 }
19867 }
19868 #[inline]
19869 fn syntax(&self) -> &SyntaxNode {
19870 &self.syntax
19871 }
19872}
19873impl AstNode for CreateUser {
19874 #[inline]
19875 fn can_cast(kind: SyntaxKind) -> bool {
19876 kind == SyntaxKind::CREATE_USER
19877 }
19878 #[inline]
19879 fn cast(syntax: SyntaxNode) -> Option<Self> {
19880 if Self::can_cast(syntax.kind()) {
19881 Some(Self { syntax })
19882 } else {
19883 None
19884 }
19885 }
19886 #[inline]
19887 fn syntax(&self) -> &SyntaxNode {
19888 &self.syntax
19889 }
19890}
19891impl AstNode for CreateUserMapping {
19892 #[inline]
19893 fn can_cast(kind: SyntaxKind) -> bool {
19894 kind == SyntaxKind::CREATE_USER_MAPPING
19895 }
19896 #[inline]
19897 fn cast(syntax: SyntaxNode) -> Option<Self> {
19898 if Self::can_cast(syntax.kind()) {
19899 Some(Self { syntax })
19900 } else {
19901 None
19902 }
19903 }
19904 #[inline]
19905 fn syntax(&self) -> &SyntaxNode {
19906 &self.syntax
19907 }
19908}
19909impl AstNode for CreateView {
19910 #[inline]
19911 fn can_cast(kind: SyntaxKind) -> bool {
19912 kind == SyntaxKind::CREATE_VIEW
19913 }
19914 #[inline]
19915 fn cast(syntax: SyntaxNode) -> Option<Self> {
19916 if Self::can_cast(syntax.kind()) {
19917 Some(Self { syntax })
19918 } else {
19919 None
19920 }
19921 }
19922 #[inline]
19923 fn syntax(&self) -> &SyntaxNode {
19924 &self.syntax
19925 }
19926}
19927impl AstNode for CustomOp {
19928 #[inline]
19929 fn can_cast(kind: SyntaxKind) -> bool {
19930 kind == SyntaxKind::CUSTOM_OP
19931 }
19932 #[inline]
19933 fn cast(syntax: SyntaxNode) -> Option<Self> {
19934 if Self::can_cast(syntax.kind()) {
19935 Some(Self { syntax })
19936 } else {
19937 None
19938 }
19939 }
19940 #[inline]
19941 fn syntax(&self) -> &SyntaxNode {
19942 &self.syntax
19943 }
19944}
19945impl AstNode for Deallocate {
19946 #[inline]
19947 fn can_cast(kind: SyntaxKind) -> bool {
19948 kind == SyntaxKind::DEALLOCATE
19949 }
19950 #[inline]
19951 fn cast(syntax: SyntaxNode) -> Option<Self> {
19952 if Self::can_cast(syntax.kind()) {
19953 Some(Self { syntax })
19954 } else {
19955 None
19956 }
19957 }
19958 #[inline]
19959 fn syntax(&self) -> &SyntaxNode {
19960 &self.syntax
19961 }
19962}
19963impl AstNode for Declare {
19964 #[inline]
19965 fn can_cast(kind: SyntaxKind) -> bool {
19966 kind == SyntaxKind::DECLARE
19967 }
19968 #[inline]
19969 fn cast(syntax: SyntaxNode) -> Option<Self> {
19970 if Self::can_cast(syntax.kind()) {
19971 Some(Self { syntax })
19972 } else {
19973 None
19974 }
19975 }
19976 #[inline]
19977 fn syntax(&self) -> &SyntaxNode {
19978 &self.syntax
19979 }
19980}
19981impl AstNode for DefaultConstraint {
19982 #[inline]
19983 fn can_cast(kind: SyntaxKind) -> bool {
19984 kind == SyntaxKind::DEFAULT_CONSTRAINT
19985 }
19986 #[inline]
19987 fn cast(syntax: SyntaxNode) -> Option<Self> {
19988 if Self::can_cast(syntax.kind()) {
19989 Some(Self { syntax })
19990 } else {
19991 None
19992 }
19993 }
19994 #[inline]
19995 fn syntax(&self) -> &SyntaxNode {
19996 &self.syntax
19997 }
19998}
19999impl AstNode for Deferrable {
20000 #[inline]
20001 fn can_cast(kind: SyntaxKind) -> bool {
20002 kind == SyntaxKind::DEFERRABLE
20003 }
20004 #[inline]
20005 fn cast(syntax: SyntaxNode) -> Option<Self> {
20006 if Self::can_cast(syntax.kind()) {
20007 Some(Self { syntax })
20008 } else {
20009 None
20010 }
20011 }
20012 #[inline]
20013 fn syntax(&self) -> &SyntaxNode {
20014 &self.syntax
20015 }
20016}
20017impl AstNode for DeferrableConstraintOption {
20018 #[inline]
20019 fn can_cast(kind: SyntaxKind) -> bool {
20020 kind == SyntaxKind::DEFERRABLE_CONSTRAINT_OPTION
20021 }
20022 #[inline]
20023 fn cast(syntax: SyntaxNode) -> Option<Self> {
20024 if Self::can_cast(syntax.kind()) {
20025 Some(Self { syntax })
20026 } else {
20027 None
20028 }
20029 }
20030 #[inline]
20031 fn syntax(&self) -> &SyntaxNode {
20032 &self.syntax
20033 }
20034}
20035impl AstNode for Delete {
20036 #[inline]
20037 fn can_cast(kind: SyntaxKind) -> bool {
20038 kind == SyntaxKind::DELETE
20039 }
20040 #[inline]
20041 fn cast(syntax: SyntaxNode) -> Option<Self> {
20042 if Self::can_cast(syntax.kind()) {
20043 Some(Self { syntax })
20044 } else {
20045 None
20046 }
20047 }
20048 #[inline]
20049 fn syntax(&self) -> &SyntaxNode {
20050 &self.syntax
20051 }
20052}
20053impl AstNode for DeleteRows {
20054 #[inline]
20055 fn can_cast(kind: SyntaxKind) -> bool {
20056 kind == SyntaxKind::DELETE_ROWS
20057 }
20058 #[inline]
20059 fn cast(syntax: SyntaxNode) -> Option<Self> {
20060 if Self::can_cast(syntax.kind()) {
20061 Some(Self { syntax })
20062 } else {
20063 None
20064 }
20065 }
20066 #[inline]
20067 fn syntax(&self) -> &SyntaxNode {
20068 &self.syntax
20069 }
20070}
20071impl AstNode for DependsOnExtension {
20072 #[inline]
20073 fn can_cast(kind: SyntaxKind) -> bool {
20074 kind == SyntaxKind::DEPENDS_ON_EXTENSION
20075 }
20076 #[inline]
20077 fn cast(syntax: SyntaxNode) -> Option<Self> {
20078 if Self::can_cast(syntax.kind()) {
20079 Some(Self { syntax })
20080 } else {
20081 None
20082 }
20083 }
20084 #[inline]
20085 fn syntax(&self) -> &SyntaxNode {
20086 &self.syntax
20087 }
20088}
20089impl AstNode for DetachPartition {
20090 #[inline]
20091 fn can_cast(kind: SyntaxKind) -> bool {
20092 kind == SyntaxKind::DETACH_PARTITION
20093 }
20094 #[inline]
20095 fn cast(syntax: SyntaxNode) -> Option<Self> {
20096 if Self::can_cast(syntax.kind()) {
20097 Some(Self { syntax })
20098 } else {
20099 None
20100 }
20101 }
20102 #[inline]
20103 fn syntax(&self) -> &SyntaxNode {
20104 &self.syntax
20105 }
20106}
20107impl AstNode for DisableRls {
20108 #[inline]
20109 fn can_cast(kind: SyntaxKind) -> bool {
20110 kind == SyntaxKind::DISABLE_RLS
20111 }
20112 #[inline]
20113 fn cast(syntax: SyntaxNode) -> Option<Self> {
20114 if Self::can_cast(syntax.kind()) {
20115 Some(Self { syntax })
20116 } else {
20117 None
20118 }
20119 }
20120 #[inline]
20121 fn syntax(&self) -> &SyntaxNode {
20122 &self.syntax
20123 }
20124}
20125impl AstNode for DisableRule {
20126 #[inline]
20127 fn can_cast(kind: SyntaxKind) -> bool {
20128 kind == SyntaxKind::DISABLE_RULE
20129 }
20130 #[inline]
20131 fn cast(syntax: SyntaxNode) -> Option<Self> {
20132 if Self::can_cast(syntax.kind()) {
20133 Some(Self { syntax })
20134 } else {
20135 None
20136 }
20137 }
20138 #[inline]
20139 fn syntax(&self) -> &SyntaxNode {
20140 &self.syntax
20141 }
20142}
20143impl AstNode for DisableTrigger {
20144 #[inline]
20145 fn can_cast(kind: SyntaxKind) -> bool {
20146 kind == SyntaxKind::DISABLE_TRIGGER
20147 }
20148 #[inline]
20149 fn cast(syntax: SyntaxNode) -> Option<Self> {
20150 if Self::can_cast(syntax.kind()) {
20151 Some(Self { syntax })
20152 } else {
20153 None
20154 }
20155 }
20156 #[inline]
20157 fn syntax(&self) -> &SyntaxNode {
20158 &self.syntax
20159 }
20160}
20161impl AstNode for Discard {
20162 #[inline]
20163 fn can_cast(kind: SyntaxKind) -> bool {
20164 kind == SyntaxKind::DISCARD
20165 }
20166 #[inline]
20167 fn cast(syntax: SyntaxNode) -> Option<Self> {
20168 if Self::can_cast(syntax.kind()) {
20169 Some(Self { syntax })
20170 } else {
20171 None
20172 }
20173 }
20174 #[inline]
20175 fn syntax(&self) -> &SyntaxNode {
20176 &self.syntax
20177 }
20178}
20179impl AstNode for DistinctClause {
20180 #[inline]
20181 fn can_cast(kind: SyntaxKind) -> bool {
20182 kind == SyntaxKind::DISTINCT_CLAUSE
20183 }
20184 #[inline]
20185 fn cast(syntax: SyntaxNode) -> Option<Self> {
20186 if Self::can_cast(syntax.kind()) {
20187 Some(Self { syntax })
20188 } else {
20189 None
20190 }
20191 }
20192 #[inline]
20193 fn syntax(&self) -> &SyntaxNode {
20194 &self.syntax
20195 }
20196}
20197impl AstNode for Do {
20198 #[inline]
20199 fn can_cast(kind: SyntaxKind) -> bool {
20200 kind == SyntaxKind::DO
20201 }
20202 #[inline]
20203 fn cast(syntax: SyntaxNode) -> Option<Self> {
20204 if Self::can_cast(syntax.kind()) {
20205 Some(Self { syntax })
20206 } else {
20207 None
20208 }
20209 }
20210 #[inline]
20211 fn syntax(&self) -> &SyntaxNode {
20212 &self.syntax
20213 }
20214}
20215impl AstNode for DoubleType {
20216 #[inline]
20217 fn can_cast(kind: SyntaxKind) -> bool {
20218 kind == SyntaxKind::DOUBLE_TYPE
20219 }
20220 #[inline]
20221 fn cast(syntax: SyntaxNode) -> Option<Self> {
20222 if Self::can_cast(syntax.kind()) {
20223 Some(Self { syntax })
20224 } else {
20225 None
20226 }
20227 }
20228 #[inline]
20229 fn syntax(&self) -> &SyntaxNode {
20230 &self.syntax
20231 }
20232}
20233impl AstNode for Drop {
20234 #[inline]
20235 fn can_cast(kind: SyntaxKind) -> bool {
20236 kind == SyntaxKind::DROP
20237 }
20238 #[inline]
20239 fn cast(syntax: SyntaxNode) -> Option<Self> {
20240 if Self::can_cast(syntax.kind()) {
20241 Some(Self { syntax })
20242 } else {
20243 None
20244 }
20245 }
20246 #[inline]
20247 fn syntax(&self) -> &SyntaxNode {
20248 &self.syntax
20249 }
20250}
20251impl AstNode for DropAccessMethod {
20252 #[inline]
20253 fn can_cast(kind: SyntaxKind) -> bool {
20254 kind == SyntaxKind::DROP_ACCESS_METHOD
20255 }
20256 #[inline]
20257 fn cast(syntax: SyntaxNode) -> Option<Self> {
20258 if Self::can_cast(syntax.kind()) {
20259 Some(Self { syntax })
20260 } else {
20261 None
20262 }
20263 }
20264 #[inline]
20265 fn syntax(&self) -> &SyntaxNode {
20266 &self.syntax
20267 }
20268}
20269impl AstNode for DropAggregate {
20270 #[inline]
20271 fn can_cast(kind: SyntaxKind) -> bool {
20272 kind == SyntaxKind::DROP_AGGREGATE
20273 }
20274 #[inline]
20275 fn cast(syntax: SyntaxNode) -> Option<Self> {
20276 if Self::can_cast(syntax.kind()) {
20277 Some(Self { syntax })
20278 } else {
20279 None
20280 }
20281 }
20282 #[inline]
20283 fn syntax(&self) -> &SyntaxNode {
20284 &self.syntax
20285 }
20286}
20287impl AstNode for DropCast {
20288 #[inline]
20289 fn can_cast(kind: SyntaxKind) -> bool {
20290 kind == SyntaxKind::DROP_CAST
20291 }
20292 #[inline]
20293 fn cast(syntax: SyntaxNode) -> Option<Self> {
20294 if Self::can_cast(syntax.kind()) {
20295 Some(Self { syntax })
20296 } else {
20297 None
20298 }
20299 }
20300 #[inline]
20301 fn syntax(&self) -> &SyntaxNode {
20302 &self.syntax
20303 }
20304}
20305impl AstNode for DropCollation {
20306 #[inline]
20307 fn can_cast(kind: SyntaxKind) -> bool {
20308 kind == SyntaxKind::DROP_COLLATION
20309 }
20310 #[inline]
20311 fn cast(syntax: SyntaxNode) -> Option<Self> {
20312 if Self::can_cast(syntax.kind()) {
20313 Some(Self { syntax })
20314 } else {
20315 None
20316 }
20317 }
20318 #[inline]
20319 fn syntax(&self) -> &SyntaxNode {
20320 &self.syntax
20321 }
20322}
20323impl AstNode for DropColumn {
20324 #[inline]
20325 fn can_cast(kind: SyntaxKind) -> bool {
20326 kind == SyntaxKind::DROP_COLUMN
20327 }
20328 #[inline]
20329 fn cast(syntax: SyntaxNode) -> Option<Self> {
20330 if Self::can_cast(syntax.kind()) {
20331 Some(Self { syntax })
20332 } else {
20333 None
20334 }
20335 }
20336 #[inline]
20337 fn syntax(&self) -> &SyntaxNode {
20338 &self.syntax
20339 }
20340}
20341impl AstNode for DropConstraint {
20342 #[inline]
20343 fn can_cast(kind: SyntaxKind) -> bool {
20344 kind == SyntaxKind::DROP_CONSTRAINT
20345 }
20346 #[inline]
20347 fn cast(syntax: SyntaxNode) -> Option<Self> {
20348 if Self::can_cast(syntax.kind()) {
20349 Some(Self { syntax })
20350 } else {
20351 None
20352 }
20353 }
20354 #[inline]
20355 fn syntax(&self) -> &SyntaxNode {
20356 &self.syntax
20357 }
20358}
20359impl AstNode for DropConversion {
20360 #[inline]
20361 fn can_cast(kind: SyntaxKind) -> bool {
20362 kind == SyntaxKind::DROP_CONVERSION
20363 }
20364 #[inline]
20365 fn cast(syntax: SyntaxNode) -> Option<Self> {
20366 if Self::can_cast(syntax.kind()) {
20367 Some(Self { syntax })
20368 } else {
20369 None
20370 }
20371 }
20372 #[inline]
20373 fn syntax(&self) -> &SyntaxNode {
20374 &self.syntax
20375 }
20376}
20377impl AstNode for DropDatabase {
20378 #[inline]
20379 fn can_cast(kind: SyntaxKind) -> bool {
20380 kind == SyntaxKind::DROP_DATABASE
20381 }
20382 #[inline]
20383 fn cast(syntax: SyntaxNode) -> Option<Self> {
20384 if Self::can_cast(syntax.kind()) {
20385 Some(Self { syntax })
20386 } else {
20387 None
20388 }
20389 }
20390 #[inline]
20391 fn syntax(&self) -> &SyntaxNode {
20392 &self.syntax
20393 }
20394}
20395impl AstNode for DropDefault {
20396 #[inline]
20397 fn can_cast(kind: SyntaxKind) -> bool {
20398 kind == SyntaxKind::DROP_DEFAULT
20399 }
20400 #[inline]
20401 fn cast(syntax: SyntaxNode) -> Option<Self> {
20402 if Self::can_cast(syntax.kind()) {
20403 Some(Self { syntax })
20404 } else {
20405 None
20406 }
20407 }
20408 #[inline]
20409 fn syntax(&self) -> &SyntaxNode {
20410 &self.syntax
20411 }
20412}
20413impl AstNode for DropDomain {
20414 #[inline]
20415 fn can_cast(kind: SyntaxKind) -> bool {
20416 kind == SyntaxKind::DROP_DOMAIN
20417 }
20418 #[inline]
20419 fn cast(syntax: SyntaxNode) -> Option<Self> {
20420 if Self::can_cast(syntax.kind()) {
20421 Some(Self { syntax })
20422 } else {
20423 None
20424 }
20425 }
20426 #[inline]
20427 fn syntax(&self) -> &SyntaxNode {
20428 &self.syntax
20429 }
20430}
20431impl AstNode for DropEventTrigger {
20432 #[inline]
20433 fn can_cast(kind: SyntaxKind) -> bool {
20434 kind == SyntaxKind::DROP_EVENT_TRIGGER
20435 }
20436 #[inline]
20437 fn cast(syntax: SyntaxNode) -> Option<Self> {
20438 if Self::can_cast(syntax.kind()) {
20439 Some(Self { syntax })
20440 } else {
20441 None
20442 }
20443 }
20444 #[inline]
20445 fn syntax(&self) -> &SyntaxNode {
20446 &self.syntax
20447 }
20448}
20449impl AstNode for DropExpression {
20450 #[inline]
20451 fn can_cast(kind: SyntaxKind) -> bool {
20452 kind == SyntaxKind::DROP_EXPRESSION
20453 }
20454 #[inline]
20455 fn cast(syntax: SyntaxNode) -> Option<Self> {
20456 if Self::can_cast(syntax.kind()) {
20457 Some(Self { syntax })
20458 } else {
20459 None
20460 }
20461 }
20462 #[inline]
20463 fn syntax(&self) -> &SyntaxNode {
20464 &self.syntax
20465 }
20466}
20467impl AstNode for DropExtension {
20468 #[inline]
20469 fn can_cast(kind: SyntaxKind) -> bool {
20470 kind == SyntaxKind::DROP_EXTENSION
20471 }
20472 #[inline]
20473 fn cast(syntax: SyntaxNode) -> Option<Self> {
20474 if Self::can_cast(syntax.kind()) {
20475 Some(Self { syntax })
20476 } else {
20477 None
20478 }
20479 }
20480 #[inline]
20481 fn syntax(&self) -> &SyntaxNode {
20482 &self.syntax
20483 }
20484}
20485impl AstNode for DropForeignDataWrapper {
20486 #[inline]
20487 fn can_cast(kind: SyntaxKind) -> bool {
20488 kind == SyntaxKind::DROP_FOREIGN_DATA_WRAPPER
20489 }
20490 #[inline]
20491 fn cast(syntax: SyntaxNode) -> Option<Self> {
20492 if Self::can_cast(syntax.kind()) {
20493 Some(Self { syntax })
20494 } else {
20495 None
20496 }
20497 }
20498 #[inline]
20499 fn syntax(&self) -> &SyntaxNode {
20500 &self.syntax
20501 }
20502}
20503impl AstNode for DropForeignTable {
20504 #[inline]
20505 fn can_cast(kind: SyntaxKind) -> bool {
20506 kind == SyntaxKind::DROP_FOREIGN_TABLE
20507 }
20508 #[inline]
20509 fn cast(syntax: SyntaxNode) -> Option<Self> {
20510 if Self::can_cast(syntax.kind()) {
20511 Some(Self { syntax })
20512 } else {
20513 None
20514 }
20515 }
20516 #[inline]
20517 fn syntax(&self) -> &SyntaxNode {
20518 &self.syntax
20519 }
20520}
20521impl AstNode for DropFunction {
20522 #[inline]
20523 fn can_cast(kind: SyntaxKind) -> bool {
20524 kind == SyntaxKind::DROP_FUNCTION
20525 }
20526 #[inline]
20527 fn cast(syntax: SyntaxNode) -> Option<Self> {
20528 if Self::can_cast(syntax.kind()) {
20529 Some(Self { syntax })
20530 } else {
20531 None
20532 }
20533 }
20534 #[inline]
20535 fn syntax(&self) -> &SyntaxNode {
20536 &self.syntax
20537 }
20538}
20539impl AstNode for DropGroup {
20540 #[inline]
20541 fn can_cast(kind: SyntaxKind) -> bool {
20542 kind == SyntaxKind::DROP_GROUP
20543 }
20544 #[inline]
20545 fn cast(syntax: SyntaxNode) -> Option<Self> {
20546 if Self::can_cast(syntax.kind()) {
20547 Some(Self { syntax })
20548 } else {
20549 None
20550 }
20551 }
20552 #[inline]
20553 fn syntax(&self) -> &SyntaxNode {
20554 &self.syntax
20555 }
20556}
20557impl AstNode for DropIdentity {
20558 #[inline]
20559 fn can_cast(kind: SyntaxKind) -> bool {
20560 kind == SyntaxKind::DROP_IDENTITY
20561 }
20562 #[inline]
20563 fn cast(syntax: SyntaxNode) -> Option<Self> {
20564 if Self::can_cast(syntax.kind()) {
20565 Some(Self { syntax })
20566 } else {
20567 None
20568 }
20569 }
20570 #[inline]
20571 fn syntax(&self) -> &SyntaxNode {
20572 &self.syntax
20573 }
20574}
20575impl AstNode for DropIndex {
20576 #[inline]
20577 fn can_cast(kind: SyntaxKind) -> bool {
20578 kind == SyntaxKind::DROP_INDEX
20579 }
20580 #[inline]
20581 fn cast(syntax: SyntaxNode) -> Option<Self> {
20582 if Self::can_cast(syntax.kind()) {
20583 Some(Self { syntax })
20584 } else {
20585 None
20586 }
20587 }
20588 #[inline]
20589 fn syntax(&self) -> &SyntaxNode {
20590 &self.syntax
20591 }
20592}
20593impl AstNode for DropLanguage {
20594 #[inline]
20595 fn can_cast(kind: SyntaxKind) -> bool {
20596 kind == SyntaxKind::DROP_LANGUAGE
20597 }
20598 #[inline]
20599 fn cast(syntax: SyntaxNode) -> Option<Self> {
20600 if Self::can_cast(syntax.kind()) {
20601 Some(Self { syntax })
20602 } else {
20603 None
20604 }
20605 }
20606 #[inline]
20607 fn syntax(&self) -> &SyntaxNode {
20608 &self.syntax
20609 }
20610}
20611impl AstNode for DropMaterializedView {
20612 #[inline]
20613 fn can_cast(kind: SyntaxKind) -> bool {
20614 kind == SyntaxKind::DROP_MATERIALIZED_VIEW
20615 }
20616 #[inline]
20617 fn cast(syntax: SyntaxNode) -> Option<Self> {
20618 if Self::can_cast(syntax.kind()) {
20619 Some(Self { syntax })
20620 } else {
20621 None
20622 }
20623 }
20624 #[inline]
20625 fn syntax(&self) -> &SyntaxNode {
20626 &self.syntax
20627 }
20628}
20629impl AstNode for DropNotNull {
20630 #[inline]
20631 fn can_cast(kind: SyntaxKind) -> bool {
20632 kind == SyntaxKind::DROP_NOT_NULL
20633 }
20634 #[inline]
20635 fn cast(syntax: SyntaxNode) -> Option<Self> {
20636 if Self::can_cast(syntax.kind()) {
20637 Some(Self { syntax })
20638 } else {
20639 None
20640 }
20641 }
20642 #[inline]
20643 fn syntax(&self) -> &SyntaxNode {
20644 &self.syntax
20645 }
20646}
20647impl AstNode for DropOpClassOption {
20648 #[inline]
20649 fn can_cast(kind: SyntaxKind) -> bool {
20650 kind == SyntaxKind::DROP_OP_CLASS_OPTION
20651 }
20652 #[inline]
20653 fn cast(syntax: SyntaxNode) -> Option<Self> {
20654 if Self::can_cast(syntax.kind()) {
20655 Some(Self { syntax })
20656 } else {
20657 None
20658 }
20659 }
20660 #[inline]
20661 fn syntax(&self) -> &SyntaxNode {
20662 &self.syntax
20663 }
20664}
20665impl AstNode for DropOpClassOptionList {
20666 #[inline]
20667 fn can_cast(kind: SyntaxKind) -> bool {
20668 kind == SyntaxKind::DROP_OP_CLASS_OPTION_LIST
20669 }
20670 #[inline]
20671 fn cast(syntax: SyntaxNode) -> Option<Self> {
20672 if Self::can_cast(syntax.kind()) {
20673 Some(Self { syntax })
20674 } else {
20675 None
20676 }
20677 }
20678 #[inline]
20679 fn syntax(&self) -> &SyntaxNode {
20680 &self.syntax
20681 }
20682}
20683impl AstNode for DropOpClassOptions {
20684 #[inline]
20685 fn can_cast(kind: SyntaxKind) -> bool {
20686 kind == SyntaxKind::DROP_OP_CLASS_OPTIONS
20687 }
20688 #[inline]
20689 fn cast(syntax: SyntaxNode) -> Option<Self> {
20690 if Self::can_cast(syntax.kind()) {
20691 Some(Self { syntax })
20692 } else {
20693 None
20694 }
20695 }
20696 #[inline]
20697 fn syntax(&self) -> &SyntaxNode {
20698 &self.syntax
20699 }
20700}
20701impl AstNode for DropOperator {
20702 #[inline]
20703 fn can_cast(kind: SyntaxKind) -> bool {
20704 kind == SyntaxKind::DROP_OPERATOR
20705 }
20706 #[inline]
20707 fn cast(syntax: SyntaxNode) -> Option<Self> {
20708 if Self::can_cast(syntax.kind()) {
20709 Some(Self { syntax })
20710 } else {
20711 None
20712 }
20713 }
20714 #[inline]
20715 fn syntax(&self) -> &SyntaxNode {
20716 &self.syntax
20717 }
20718}
20719impl AstNode for DropOperatorClass {
20720 #[inline]
20721 fn can_cast(kind: SyntaxKind) -> bool {
20722 kind == SyntaxKind::DROP_OPERATOR_CLASS
20723 }
20724 #[inline]
20725 fn cast(syntax: SyntaxNode) -> Option<Self> {
20726 if Self::can_cast(syntax.kind()) {
20727 Some(Self { syntax })
20728 } else {
20729 None
20730 }
20731 }
20732 #[inline]
20733 fn syntax(&self) -> &SyntaxNode {
20734 &self.syntax
20735 }
20736}
20737impl AstNode for DropOperatorFamily {
20738 #[inline]
20739 fn can_cast(kind: SyntaxKind) -> bool {
20740 kind == SyntaxKind::DROP_OPERATOR_FAMILY
20741 }
20742 #[inline]
20743 fn cast(syntax: SyntaxNode) -> Option<Self> {
20744 if Self::can_cast(syntax.kind()) {
20745 Some(Self { syntax })
20746 } else {
20747 None
20748 }
20749 }
20750 #[inline]
20751 fn syntax(&self) -> &SyntaxNode {
20752 &self.syntax
20753 }
20754}
20755impl AstNode for DropOwned {
20756 #[inline]
20757 fn can_cast(kind: SyntaxKind) -> bool {
20758 kind == SyntaxKind::DROP_OWNED
20759 }
20760 #[inline]
20761 fn cast(syntax: SyntaxNode) -> Option<Self> {
20762 if Self::can_cast(syntax.kind()) {
20763 Some(Self { syntax })
20764 } else {
20765 None
20766 }
20767 }
20768 #[inline]
20769 fn syntax(&self) -> &SyntaxNode {
20770 &self.syntax
20771 }
20772}
20773impl AstNode for DropPolicy {
20774 #[inline]
20775 fn can_cast(kind: SyntaxKind) -> bool {
20776 kind == SyntaxKind::DROP_POLICY
20777 }
20778 #[inline]
20779 fn cast(syntax: SyntaxNode) -> Option<Self> {
20780 if Self::can_cast(syntax.kind()) {
20781 Some(Self { syntax })
20782 } else {
20783 None
20784 }
20785 }
20786 #[inline]
20787 fn syntax(&self) -> &SyntaxNode {
20788 &self.syntax
20789 }
20790}
20791impl AstNode for DropProcedure {
20792 #[inline]
20793 fn can_cast(kind: SyntaxKind) -> bool {
20794 kind == SyntaxKind::DROP_PROCEDURE
20795 }
20796 #[inline]
20797 fn cast(syntax: SyntaxNode) -> Option<Self> {
20798 if Self::can_cast(syntax.kind()) {
20799 Some(Self { syntax })
20800 } else {
20801 None
20802 }
20803 }
20804 #[inline]
20805 fn syntax(&self) -> &SyntaxNode {
20806 &self.syntax
20807 }
20808}
20809impl AstNode for DropPublication {
20810 #[inline]
20811 fn can_cast(kind: SyntaxKind) -> bool {
20812 kind == SyntaxKind::DROP_PUBLICATION
20813 }
20814 #[inline]
20815 fn cast(syntax: SyntaxNode) -> Option<Self> {
20816 if Self::can_cast(syntax.kind()) {
20817 Some(Self { syntax })
20818 } else {
20819 None
20820 }
20821 }
20822 #[inline]
20823 fn syntax(&self) -> &SyntaxNode {
20824 &self.syntax
20825 }
20826}
20827impl AstNode for DropRole {
20828 #[inline]
20829 fn can_cast(kind: SyntaxKind) -> bool {
20830 kind == SyntaxKind::DROP_ROLE
20831 }
20832 #[inline]
20833 fn cast(syntax: SyntaxNode) -> Option<Self> {
20834 if Self::can_cast(syntax.kind()) {
20835 Some(Self { syntax })
20836 } else {
20837 None
20838 }
20839 }
20840 #[inline]
20841 fn syntax(&self) -> &SyntaxNode {
20842 &self.syntax
20843 }
20844}
20845impl AstNode for DropRoutine {
20846 #[inline]
20847 fn can_cast(kind: SyntaxKind) -> bool {
20848 kind == SyntaxKind::DROP_ROUTINE
20849 }
20850 #[inline]
20851 fn cast(syntax: SyntaxNode) -> Option<Self> {
20852 if Self::can_cast(syntax.kind()) {
20853 Some(Self { syntax })
20854 } else {
20855 None
20856 }
20857 }
20858 #[inline]
20859 fn syntax(&self) -> &SyntaxNode {
20860 &self.syntax
20861 }
20862}
20863impl AstNode for DropRule {
20864 #[inline]
20865 fn can_cast(kind: SyntaxKind) -> bool {
20866 kind == SyntaxKind::DROP_RULE
20867 }
20868 #[inline]
20869 fn cast(syntax: SyntaxNode) -> Option<Self> {
20870 if Self::can_cast(syntax.kind()) {
20871 Some(Self { syntax })
20872 } else {
20873 None
20874 }
20875 }
20876 #[inline]
20877 fn syntax(&self) -> &SyntaxNode {
20878 &self.syntax
20879 }
20880}
20881impl AstNode for DropSchema {
20882 #[inline]
20883 fn can_cast(kind: SyntaxKind) -> bool {
20884 kind == SyntaxKind::DROP_SCHEMA
20885 }
20886 #[inline]
20887 fn cast(syntax: SyntaxNode) -> Option<Self> {
20888 if Self::can_cast(syntax.kind()) {
20889 Some(Self { syntax })
20890 } else {
20891 None
20892 }
20893 }
20894 #[inline]
20895 fn syntax(&self) -> &SyntaxNode {
20896 &self.syntax
20897 }
20898}
20899impl AstNode for DropSequence {
20900 #[inline]
20901 fn can_cast(kind: SyntaxKind) -> bool {
20902 kind == SyntaxKind::DROP_SEQUENCE
20903 }
20904 #[inline]
20905 fn cast(syntax: SyntaxNode) -> Option<Self> {
20906 if Self::can_cast(syntax.kind()) {
20907 Some(Self { syntax })
20908 } else {
20909 None
20910 }
20911 }
20912 #[inline]
20913 fn syntax(&self) -> &SyntaxNode {
20914 &self.syntax
20915 }
20916}
20917impl AstNode for DropServer {
20918 #[inline]
20919 fn can_cast(kind: SyntaxKind) -> bool {
20920 kind == SyntaxKind::DROP_SERVER
20921 }
20922 #[inline]
20923 fn cast(syntax: SyntaxNode) -> Option<Self> {
20924 if Self::can_cast(syntax.kind()) {
20925 Some(Self { syntax })
20926 } else {
20927 None
20928 }
20929 }
20930 #[inline]
20931 fn syntax(&self) -> &SyntaxNode {
20932 &self.syntax
20933 }
20934}
20935impl AstNode for DropStatistics {
20936 #[inline]
20937 fn can_cast(kind: SyntaxKind) -> bool {
20938 kind == SyntaxKind::DROP_STATISTICS
20939 }
20940 #[inline]
20941 fn cast(syntax: SyntaxNode) -> Option<Self> {
20942 if Self::can_cast(syntax.kind()) {
20943 Some(Self { syntax })
20944 } else {
20945 None
20946 }
20947 }
20948 #[inline]
20949 fn syntax(&self) -> &SyntaxNode {
20950 &self.syntax
20951 }
20952}
20953impl AstNode for DropSubscription {
20954 #[inline]
20955 fn can_cast(kind: SyntaxKind) -> bool {
20956 kind == SyntaxKind::DROP_SUBSCRIPTION
20957 }
20958 #[inline]
20959 fn cast(syntax: SyntaxNode) -> Option<Self> {
20960 if Self::can_cast(syntax.kind()) {
20961 Some(Self { syntax })
20962 } else {
20963 None
20964 }
20965 }
20966 #[inline]
20967 fn syntax(&self) -> &SyntaxNode {
20968 &self.syntax
20969 }
20970}
20971impl AstNode for DropTable {
20972 #[inline]
20973 fn can_cast(kind: SyntaxKind) -> bool {
20974 kind == SyntaxKind::DROP_TABLE
20975 }
20976 #[inline]
20977 fn cast(syntax: SyntaxNode) -> Option<Self> {
20978 if Self::can_cast(syntax.kind()) {
20979 Some(Self { syntax })
20980 } else {
20981 None
20982 }
20983 }
20984 #[inline]
20985 fn syntax(&self) -> &SyntaxNode {
20986 &self.syntax
20987 }
20988}
20989impl AstNode for DropTablespace {
20990 #[inline]
20991 fn can_cast(kind: SyntaxKind) -> bool {
20992 kind == SyntaxKind::DROP_TABLESPACE
20993 }
20994 #[inline]
20995 fn cast(syntax: SyntaxNode) -> Option<Self> {
20996 if Self::can_cast(syntax.kind()) {
20997 Some(Self { syntax })
20998 } else {
20999 None
21000 }
21001 }
21002 #[inline]
21003 fn syntax(&self) -> &SyntaxNode {
21004 &self.syntax
21005 }
21006}
21007impl AstNode for DropTextSearchConfig {
21008 #[inline]
21009 fn can_cast(kind: SyntaxKind) -> bool {
21010 kind == SyntaxKind::DROP_TEXT_SEARCH_CONFIG
21011 }
21012 #[inline]
21013 fn cast(syntax: SyntaxNode) -> Option<Self> {
21014 if Self::can_cast(syntax.kind()) {
21015 Some(Self { syntax })
21016 } else {
21017 None
21018 }
21019 }
21020 #[inline]
21021 fn syntax(&self) -> &SyntaxNode {
21022 &self.syntax
21023 }
21024}
21025impl AstNode for DropTextSearchDict {
21026 #[inline]
21027 fn can_cast(kind: SyntaxKind) -> bool {
21028 kind == SyntaxKind::DROP_TEXT_SEARCH_DICT
21029 }
21030 #[inline]
21031 fn cast(syntax: SyntaxNode) -> Option<Self> {
21032 if Self::can_cast(syntax.kind()) {
21033 Some(Self { syntax })
21034 } else {
21035 None
21036 }
21037 }
21038 #[inline]
21039 fn syntax(&self) -> &SyntaxNode {
21040 &self.syntax
21041 }
21042}
21043impl AstNode for DropTextSearchParser {
21044 #[inline]
21045 fn can_cast(kind: SyntaxKind) -> bool {
21046 kind == SyntaxKind::DROP_TEXT_SEARCH_PARSER
21047 }
21048 #[inline]
21049 fn cast(syntax: SyntaxNode) -> Option<Self> {
21050 if Self::can_cast(syntax.kind()) {
21051 Some(Self { syntax })
21052 } else {
21053 None
21054 }
21055 }
21056 #[inline]
21057 fn syntax(&self) -> &SyntaxNode {
21058 &self.syntax
21059 }
21060}
21061impl AstNode for DropTextSearchTemplate {
21062 #[inline]
21063 fn can_cast(kind: SyntaxKind) -> bool {
21064 kind == SyntaxKind::DROP_TEXT_SEARCH_TEMPLATE
21065 }
21066 #[inline]
21067 fn cast(syntax: SyntaxNode) -> Option<Self> {
21068 if Self::can_cast(syntax.kind()) {
21069 Some(Self { syntax })
21070 } else {
21071 None
21072 }
21073 }
21074 #[inline]
21075 fn syntax(&self) -> &SyntaxNode {
21076 &self.syntax
21077 }
21078}
21079impl AstNode for DropTransform {
21080 #[inline]
21081 fn can_cast(kind: SyntaxKind) -> bool {
21082 kind == SyntaxKind::DROP_TRANSFORM
21083 }
21084 #[inline]
21085 fn cast(syntax: SyntaxNode) -> Option<Self> {
21086 if Self::can_cast(syntax.kind()) {
21087 Some(Self { syntax })
21088 } else {
21089 None
21090 }
21091 }
21092 #[inline]
21093 fn syntax(&self) -> &SyntaxNode {
21094 &self.syntax
21095 }
21096}
21097impl AstNode for DropTrigger {
21098 #[inline]
21099 fn can_cast(kind: SyntaxKind) -> bool {
21100 kind == SyntaxKind::DROP_TRIGGER
21101 }
21102 #[inline]
21103 fn cast(syntax: SyntaxNode) -> Option<Self> {
21104 if Self::can_cast(syntax.kind()) {
21105 Some(Self { syntax })
21106 } else {
21107 None
21108 }
21109 }
21110 #[inline]
21111 fn syntax(&self) -> &SyntaxNode {
21112 &self.syntax
21113 }
21114}
21115impl AstNode for DropType {
21116 #[inline]
21117 fn can_cast(kind: SyntaxKind) -> bool {
21118 kind == SyntaxKind::DROP_TYPE
21119 }
21120 #[inline]
21121 fn cast(syntax: SyntaxNode) -> Option<Self> {
21122 if Self::can_cast(syntax.kind()) {
21123 Some(Self { syntax })
21124 } else {
21125 None
21126 }
21127 }
21128 #[inline]
21129 fn syntax(&self) -> &SyntaxNode {
21130 &self.syntax
21131 }
21132}
21133impl AstNode for DropUser {
21134 #[inline]
21135 fn can_cast(kind: SyntaxKind) -> bool {
21136 kind == SyntaxKind::DROP_USER
21137 }
21138 #[inline]
21139 fn cast(syntax: SyntaxNode) -> Option<Self> {
21140 if Self::can_cast(syntax.kind()) {
21141 Some(Self { syntax })
21142 } else {
21143 None
21144 }
21145 }
21146 #[inline]
21147 fn syntax(&self) -> &SyntaxNode {
21148 &self.syntax
21149 }
21150}
21151impl AstNode for DropUserMapping {
21152 #[inline]
21153 fn can_cast(kind: SyntaxKind) -> bool {
21154 kind == SyntaxKind::DROP_USER_MAPPING
21155 }
21156 #[inline]
21157 fn cast(syntax: SyntaxNode) -> Option<Self> {
21158 if Self::can_cast(syntax.kind()) {
21159 Some(Self { syntax })
21160 } else {
21161 None
21162 }
21163 }
21164 #[inline]
21165 fn syntax(&self) -> &SyntaxNode {
21166 &self.syntax
21167 }
21168}
21169impl AstNode for DropView {
21170 #[inline]
21171 fn can_cast(kind: SyntaxKind) -> bool {
21172 kind == SyntaxKind::DROP_VIEW
21173 }
21174 #[inline]
21175 fn cast(syntax: SyntaxNode) -> Option<Self> {
21176 if Self::can_cast(syntax.kind()) {
21177 Some(Self { syntax })
21178 } else {
21179 None
21180 }
21181 }
21182 #[inline]
21183 fn syntax(&self) -> &SyntaxNode {
21184 &self.syntax
21185 }
21186}
21187impl AstNode for ElseClause {
21188 #[inline]
21189 fn can_cast(kind: SyntaxKind) -> bool {
21190 kind == SyntaxKind::ELSE_CLAUSE
21191 }
21192 #[inline]
21193 fn cast(syntax: SyntaxNode) -> Option<Self> {
21194 if Self::can_cast(syntax.kind()) {
21195 Some(Self { syntax })
21196 } else {
21197 None
21198 }
21199 }
21200 #[inline]
21201 fn syntax(&self) -> &SyntaxNode {
21202 &self.syntax
21203 }
21204}
21205impl AstNode for EnableAlwaysRule {
21206 #[inline]
21207 fn can_cast(kind: SyntaxKind) -> bool {
21208 kind == SyntaxKind::ENABLE_ALWAYS_RULE
21209 }
21210 #[inline]
21211 fn cast(syntax: SyntaxNode) -> Option<Self> {
21212 if Self::can_cast(syntax.kind()) {
21213 Some(Self { syntax })
21214 } else {
21215 None
21216 }
21217 }
21218 #[inline]
21219 fn syntax(&self) -> &SyntaxNode {
21220 &self.syntax
21221 }
21222}
21223impl AstNode for EnableAlwaysTrigger {
21224 #[inline]
21225 fn can_cast(kind: SyntaxKind) -> bool {
21226 kind == SyntaxKind::ENABLE_ALWAYS_TRIGGER
21227 }
21228 #[inline]
21229 fn cast(syntax: SyntaxNode) -> Option<Self> {
21230 if Self::can_cast(syntax.kind()) {
21231 Some(Self { syntax })
21232 } else {
21233 None
21234 }
21235 }
21236 #[inline]
21237 fn syntax(&self) -> &SyntaxNode {
21238 &self.syntax
21239 }
21240}
21241impl AstNode for EnableReplicaRule {
21242 #[inline]
21243 fn can_cast(kind: SyntaxKind) -> bool {
21244 kind == SyntaxKind::ENABLE_REPLICA_RULE
21245 }
21246 #[inline]
21247 fn cast(syntax: SyntaxNode) -> Option<Self> {
21248 if Self::can_cast(syntax.kind()) {
21249 Some(Self { syntax })
21250 } else {
21251 None
21252 }
21253 }
21254 #[inline]
21255 fn syntax(&self) -> &SyntaxNode {
21256 &self.syntax
21257 }
21258}
21259impl AstNode for EnableReplicaTrigger {
21260 #[inline]
21261 fn can_cast(kind: SyntaxKind) -> bool {
21262 kind == SyntaxKind::ENABLE_REPLICA_TRIGGER
21263 }
21264 #[inline]
21265 fn cast(syntax: SyntaxNode) -> Option<Self> {
21266 if Self::can_cast(syntax.kind()) {
21267 Some(Self { syntax })
21268 } else {
21269 None
21270 }
21271 }
21272 #[inline]
21273 fn syntax(&self) -> &SyntaxNode {
21274 &self.syntax
21275 }
21276}
21277impl AstNode for EnableRls {
21278 #[inline]
21279 fn can_cast(kind: SyntaxKind) -> bool {
21280 kind == SyntaxKind::ENABLE_RLS
21281 }
21282 #[inline]
21283 fn cast(syntax: SyntaxNode) -> Option<Self> {
21284 if Self::can_cast(syntax.kind()) {
21285 Some(Self { syntax })
21286 } else {
21287 None
21288 }
21289 }
21290 #[inline]
21291 fn syntax(&self) -> &SyntaxNode {
21292 &self.syntax
21293 }
21294}
21295impl AstNode for EnableRule {
21296 #[inline]
21297 fn can_cast(kind: SyntaxKind) -> bool {
21298 kind == SyntaxKind::ENABLE_RULE
21299 }
21300 #[inline]
21301 fn cast(syntax: SyntaxNode) -> Option<Self> {
21302 if Self::can_cast(syntax.kind()) {
21303 Some(Self { syntax })
21304 } else {
21305 None
21306 }
21307 }
21308 #[inline]
21309 fn syntax(&self) -> &SyntaxNode {
21310 &self.syntax
21311 }
21312}
21313impl AstNode for EnableTrigger {
21314 #[inline]
21315 fn can_cast(kind: SyntaxKind) -> bool {
21316 kind == SyntaxKind::ENABLE_TRIGGER
21317 }
21318 #[inline]
21319 fn cast(syntax: SyntaxNode) -> Option<Self> {
21320 if Self::can_cast(syntax.kind()) {
21321 Some(Self { syntax })
21322 } else {
21323 None
21324 }
21325 }
21326 #[inline]
21327 fn syntax(&self) -> &SyntaxNode {
21328 &self.syntax
21329 }
21330}
21331impl AstNode for Enforced {
21332 #[inline]
21333 fn can_cast(kind: SyntaxKind) -> bool {
21334 kind == SyntaxKind::ENFORCED
21335 }
21336 #[inline]
21337 fn cast(syntax: SyntaxNode) -> Option<Self> {
21338 if Self::can_cast(syntax.kind()) {
21339 Some(Self { syntax })
21340 } else {
21341 None
21342 }
21343 }
21344 #[inline]
21345 fn syntax(&self) -> &SyntaxNode {
21346 &self.syntax
21347 }
21348}
21349impl AstNode for EventTriggerWhen {
21350 #[inline]
21351 fn can_cast(kind: SyntaxKind) -> bool {
21352 kind == SyntaxKind::EVENT_TRIGGER_WHEN
21353 }
21354 #[inline]
21355 fn cast(syntax: SyntaxNode) -> Option<Self> {
21356 if Self::can_cast(syntax.kind()) {
21357 Some(Self { syntax })
21358 } else {
21359 None
21360 }
21361 }
21362 #[inline]
21363 fn syntax(&self) -> &SyntaxNode {
21364 &self.syntax
21365 }
21366}
21367impl AstNode for EventTriggerWhenClause {
21368 #[inline]
21369 fn can_cast(kind: SyntaxKind) -> bool {
21370 kind == SyntaxKind::EVENT_TRIGGER_WHEN_CLAUSE
21371 }
21372 #[inline]
21373 fn cast(syntax: SyntaxNode) -> Option<Self> {
21374 if Self::can_cast(syntax.kind()) {
21375 Some(Self { syntax })
21376 } else {
21377 None
21378 }
21379 }
21380 #[inline]
21381 fn syntax(&self) -> &SyntaxNode {
21382 &self.syntax
21383 }
21384}
21385impl AstNode for ExceptTables {
21386 #[inline]
21387 fn can_cast(kind: SyntaxKind) -> bool {
21388 kind == SyntaxKind::EXCEPT_TABLES
21389 }
21390 #[inline]
21391 fn cast(syntax: SyntaxNode) -> Option<Self> {
21392 if Self::can_cast(syntax.kind()) {
21393 Some(Self { syntax })
21394 } else {
21395 None
21396 }
21397 }
21398 #[inline]
21399 fn syntax(&self) -> &SyntaxNode {
21400 &self.syntax
21401 }
21402}
21403impl AstNode for ExcludeConstraint {
21404 #[inline]
21405 fn can_cast(kind: SyntaxKind) -> bool {
21406 kind == SyntaxKind::EXCLUDE_CONSTRAINT
21407 }
21408 #[inline]
21409 fn cast(syntax: SyntaxNode) -> Option<Self> {
21410 if Self::can_cast(syntax.kind()) {
21411 Some(Self { syntax })
21412 } else {
21413 None
21414 }
21415 }
21416 #[inline]
21417 fn syntax(&self) -> &SyntaxNode {
21418 &self.syntax
21419 }
21420}
21421impl AstNode for Execute {
21422 #[inline]
21423 fn can_cast(kind: SyntaxKind) -> bool {
21424 kind == SyntaxKind::EXECUTE
21425 }
21426 #[inline]
21427 fn cast(syntax: SyntaxNode) -> Option<Self> {
21428 if Self::can_cast(syntax.kind()) {
21429 Some(Self { syntax })
21430 } else {
21431 None
21432 }
21433 }
21434 #[inline]
21435 fn syntax(&self) -> &SyntaxNode {
21436 &self.syntax
21437 }
21438}
21439impl AstNode for ExistsFn {
21440 #[inline]
21441 fn can_cast(kind: SyntaxKind) -> bool {
21442 kind == SyntaxKind::EXISTS_FN
21443 }
21444 #[inline]
21445 fn cast(syntax: SyntaxNode) -> Option<Self> {
21446 if Self::can_cast(syntax.kind()) {
21447 Some(Self { syntax })
21448 } else {
21449 None
21450 }
21451 }
21452 #[inline]
21453 fn syntax(&self) -> &SyntaxNode {
21454 &self.syntax
21455 }
21456}
21457impl AstNode for Explain {
21458 #[inline]
21459 fn can_cast(kind: SyntaxKind) -> bool {
21460 kind == SyntaxKind::EXPLAIN
21461 }
21462 #[inline]
21463 fn cast(syntax: SyntaxNode) -> Option<Self> {
21464 if Self::can_cast(syntax.kind()) {
21465 Some(Self { syntax })
21466 } else {
21467 None
21468 }
21469 }
21470 #[inline]
21471 fn syntax(&self) -> &SyntaxNode {
21472 &self.syntax
21473 }
21474}
21475impl AstNode for ExprAsName {
21476 #[inline]
21477 fn can_cast(kind: SyntaxKind) -> bool {
21478 kind == SyntaxKind::EXPR_AS_NAME
21479 }
21480 #[inline]
21481 fn cast(syntax: SyntaxNode) -> Option<Self> {
21482 if Self::can_cast(syntax.kind()) {
21483 Some(Self { syntax })
21484 } else {
21485 None
21486 }
21487 }
21488 #[inline]
21489 fn syntax(&self) -> &SyntaxNode {
21490 &self.syntax
21491 }
21492}
21493impl AstNode for ExprType {
21494 #[inline]
21495 fn can_cast(kind: SyntaxKind) -> bool {
21496 kind == SyntaxKind::EXPR_TYPE
21497 }
21498 #[inline]
21499 fn cast(syntax: SyntaxNode) -> Option<Self> {
21500 if Self::can_cast(syntax.kind()) {
21501 Some(Self { syntax })
21502 } else {
21503 None
21504 }
21505 }
21506 #[inline]
21507 fn syntax(&self) -> &SyntaxNode {
21508 &self.syntax
21509 }
21510}
21511impl AstNode for ExtractFn {
21512 #[inline]
21513 fn can_cast(kind: SyntaxKind) -> bool {
21514 kind == SyntaxKind::EXTRACT_FN
21515 }
21516 #[inline]
21517 fn cast(syntax: SyntaxNode) -> Option<Self> {
21518 if Self::can_cast(syntax.kind()) {
21519 Some(Self { syntax })
21520 } else {
21521 None
21522 }
21523 }
21524 #[inline]
21525 fn syntax(&self) -> &SyntaxNode {
21526 &self.syntax
21527 }
21528}
21529impl AstNode for FatArrow {
21530 #[inline]
21531 fn can_cast(kind: SyntaxKind) -> bool {
21532 kind == SyntaxKind::FAT_ARROW
21533 }
21534 #[inline]
21535 fn cast(syntax: SyntaxNode) -> Option<Self> {
21536 if Self::can_cast(syntax.kind()) {
21537 Some(Self { syntax })
21538 } else {
21539 None
21540 }
21541 }
21542 #[inline]
21543 fn syntax(&self) -> &SyntaxNode {
21544 &self.syntax
21545 }
21546}
21547impl AstNode for FdwOption {
21548 #[inline]
21549 fn can_cast(kind: SyntaxKind) -> bool {
21550 kind == SyntaxKind::FDW_OPTION
21551 }
21552 #[inline]
21553 fn cast(syntax: SyntaxNode) -> Option<Self> {
21554 if Self::can_cast(syntax.kind()) {
21555 Some(Self { syntax })
21556 } else {
21557 None
21558 }
21559 }
21560 #[inline]
21561 fn syntax(&self) -> &SyntaxNode {
21562 &self.syntax
21563 }
21564}
21565impl AstNode for FdwOptionList {
21566 #[inline]
21567 fn can_cast(kind: SyntaxKind) -> bool {
21568 kind == SyntaxKind::FDW_OPTION_LIST
21569 }
21570 #[inline]
21571 fn cast(syntax: SyntaxNode) -> Option<Self> {
21572 if Self::can_cast(syntax.kind()) {
21573 Some(Self { syntax })
21574 } else {
21575 None
21576 }
21577 }
21578 #[inline]
21579 fn syntax(&self) -> &SyntaxNode {
21580 &self.syntax
21581 }
21582}
21583impl AstNode for Fetch {
21584 #[inline]
21585 fn can_cast(kind: SyntaxKind) -> bool {
21586 kind == SyntaxKind::FETCH
21587 }
21588 #[inline]
21589 fn cast(syntax: SyntaxNode) -> Option<Self> {
21590 if Self::can_cast(syntax.kind()) {
21591 Some(Self { syntax })
21592 } else {
21593 None
21594 }
21595 }
21596 #[inline]
21597 fn syntax(&self) -> &SyntaxNode {
21598 &self.syntax
21599 }
21600}
21601impl AstNode for FetchClause {
21602 #[inline]
21603 fn can_cast(kind: SyntaxKind) -> bool {
21604 kind == SyntaxKind::FETCH_CLAUSE
21605 }
21606 #[inline]
21607 fn cast(syntax: SyntaxNode) -> Option<Self> {
21608 if Self::can_cast(syntax.kind()) {
21609 Some(Self { syntax })
21610 } else {
21611 None
21612 }
21613 }
21614 #[inline]
21615 fn syntax(&self) -> &SyntaxNode {
21616 &self.syntax
21617 }
21618}
21619impl AstNode for FieldExpr {
21620 #[inline]
21621 fn can_cast(kind: SyntaxKind) -> bool {
21622 kind == SyntaxKind::FIELD_EXPR
21623 }
21624 #[inline]
21625 fn cast(syntax: SyntaxNode) -> Option<Self> {
21626 if Self::can_cast(syntax.kind()) {
21627 Some(Self { syntax })
21628 } else {
21629 None
21630 }
21631 }
21632 #[inline]
21633 fn syntax(&self) -> &SyntaxNode {
21634 &self.syntax
21635 }
21636}
21637impl AstNode for FilterClause {
21638 #[inline]
21639 fn can_cast(kind: SyntaxKind) -> bool {
21640 kind == SyntaxKind::FILTER_CLAUSE
21641 }
21642 #[inline]
21643 fn cast(syntax: SyntaxNode) -> Option<Self> {
21644 if Self::can_cast(syntax.kind()) {
21645 Some(Self { syntax })
21646 } else {
21647 None
21648 }
21649 }
21650 #[inline]
21651 fn syntax(&self) -> &SyntaxNode {
21652 &self.syntax
21653 }
21654}
21655impl AstNode for ForProvider {
21656 #[inline]
21657 fn can_cast(kind: SyntaxKind) -> bool {
21658 kind == SyntaxKind::FOR_PROVIDER
21659 }
21660 #[inline]
21661 fn cast(syntax: SyntaxNode) -> Option<Self> {
21662 if Self::can_cast(syntax.kind()) {
21663 Some(Self { syntax })
21664 } else {
21665 None
21666 }
21667 }
21668 #[inline]
21669 fn syntax(&self) -> &SyntaxNode {
21670 &self.syntax
21671 }
21672}
21673impl AstNode for ForceRls {
21674 #[inline]
21675 fn can_cast(kind: SyntaxKind) -> bool {
21676 kind == SyntaxKind::FORCE_RLS
21677 }
21678 #[inline]
21679 fn cast(syntax: SyntaxNode) -> Option<Self> {
21680 if Self::can_cast(syntax.kind()) {
21681 Some(Self { syntax })
21682 } else {
21683 None
21684 }
21685 }
21686 #[inline]
21687 fn syntax(&self) -> &SyntaxNode {
21688 &self.syntax
21689 }
21690}
21691impl AstNode for ForeignKeyConstraint {
21692 #[inline]
21693 fn can_cast(kind: SyntaxKind) -> bool {
21694 kind == SyntaxKind::FOREIGN_KEY_CONSTRAINT
21695 }
21696 #[inline]
21697 fn cast(syntax: SyntaxNode) -> Option<Self> {
21698 if Self::can_cast(syntax.kind()) {
21699 Some(Self { syntax })
21700 } else {
21701 None
21702 }
21703 }
21704 #[inline]
21705 fn syntax(&self) -> &SyntaxNode {
21706 &self.syntax
21707 }
21708}
21709impl AstNode for FrameClause {
21710 #[inline]
21711 fn can_cast(kind: SyntaxKind) -> bool {
21712 kind == SyntaxKind::FRAME_CLAUSE
21713 }
21714 #[inline]
21715 fn cast(syntax: SyntaxNode) -> Option<Self> {
21716 if Self::can_cast(syntax.kind()) {
21717 Some(Self { syntax })
21718 } else {
21719 None
21720 }
21721 }
21722 #[inline]
21723 fn syntax(&self) -> &SyntaxNode {
21724 &self.syntax
21725 }
21726}
21727impl AstNode for FromClause {
21728 #[inline]
21729 fn can_cast(kind: SyntaxKind) -> bool {
21730 kind == SyntaxKind::FROM_CLAUSE
21731 }
21732 #[inline]
21733 fn cast(syntax: SyntaxNode) -> Option<Self> {
21734 if Self::can_cast(syntax.kind()) {
21735 Some(Self { syntax })
21736 } else {
21737 None
21738 }
21739 }
21740 #[inline]
21741 fn syntax(&self) -> &SyntaxNode {
21742 &self.syntax
21743 }
21744}
21745impl AstNode for FromItem {
21746 #[inline]
21747 fn can_cast(kind: SyntaxKind) -> bool {
21748 kind == SyntaxKind::FROM_ITEM
21749 }
21750 #[inline]
21751 fn cast(syntax: SyntaxNode) -> Option<Self> {
21752 if Self::can_cast(syntax.kind()) {
21753 Some(Self { syntax })
21754 } else {
21755 None
21756 }
21757 }
21758 #[inline]
21759 fn syntax(&self) -> &SyntaxNode {
21760 &self.syntax
21761 }
21762}
21763impl AstNode for FromTable {
21764 #[inline]
21765 fn can_cast(kind: SyntaxKind) -> bool {
21766 kind == SyntaxKind::FROM_TABLE
21767 }
21768 #[inline]
21769 fn cast(syntax: SyntaxNode) -> Option<Self> {
21770 if Self::can_cast(syntax.kind()) {
21771 Some(Self { syntax })
21772 } else {
21773 None
21774 }
21775 }
21776 #[inline]
21777 fn syntax(&self) -> &SyntaxNode {
21778 &self.syntax
21779 }
21780}
21781impl AstNode for FuncOptionList {
21782 #[inline]
21783 fn can_cast(kind: SyntaxKind) -> bool {
21784 kind == SyntaxKind::FUNC_OPTION_LIST
21785 }
21786 #[inline]
21787 fn cast(syntax: SyntaxNode) -> Option<Self> {
21788 if Self::can_cast(syntax.kind()) {
21789 Some(Self { syntax })
21790 } else {
21791 None
21792 }
21793 }
21794 #[inline]
21795 fn syntax(&self) -> &SyntaxNode {
21796 &self.syntax
21797 }
21798}
21799impl AstNode for FunctionSig {
21800 #[inline]
21801 fn can_cast(kind: SyntaxKind) -> bool {
21802 kind == SyntaxKind::FUNCTION_SIG
21803 }
21804 #[inline]
21805 fn cast(syntax: SyntaxNode) -> Option<Self> {
21806 if Self::can_cast(syntax.kind()) {
21807 Some(Self { syntax })
21808 } else {
21809 None
21810 }
21811 }
21812 #[inline]
21813 fn syntax(&self) -> &SyntaxNode {
21814 &self.syntax
21815 }
21816}
21817impl AstNode for FunctionSigList {
21818 #[inline]
21819 fn can_cast(kind: SyntaxKind) -> bool {
21820 kind == SyntaxKind::FUNCTION_SIG_LIST
21821 }
21822 #[inline]
21823 fn cast(syntax: SyntaxNode) -> Option<Self> {
21824 if Self::can_cast(syntax.kind()) {
21825 Some(Self { syntax })
21826 } else {
21827 None
21828 }
21829 }
21830 #[inline]
21831 fn syntax(&self) -> &SyntaxNode {
21832 &self.syntax
21833 }
21834}
21835impl AstNode for GeneratedConstraint {
21836 #[inline]
21837 fn can_cast(kind: SyntaxKind) -> bool {
21838 kind == SyntaxKind::GENERATED_CONSTRAINT
21839 }
21840 #[inline]
21841 fn cast(syntax: SyntaxNode) -> Option<Self> {
21842 if Self::can_cast(syntax.kind()) {
21843 Some(Self { syntax })
21844 } else {
21845 None
21846 }
21847 }
21848 #[inline]
21849 fn syntax(&self) -> &SyntaxNode {
21850 &self.syntax
21851 }
21852}
21853impl AstNode for Grant {
21854 #[inline]
21855 fn can_cast(kind: SyntaxKind) -> bool {
21856 kind == SyntaxKind::GRANT
21857 }
21858 #[inline]
21859 fn cast(syntax: SyntaxNode) -> Option<Self> {
21860 if Self::can_cast(syntax.kind()) {
21861 Some(Self { syntax })
21862 } else {
21863 None
21864 }
21865 }
21866 #[inline]
21867 fn syntax(&self) -> &SyntaxNode {
21868 &self.syntax
21869 }
21870}
21871impl AstNode for GrantDefaultPrivileges {
21872 #[inline]
21873 fn can_cast(kind: SyntaxKind) -> bool {
21874 kind == SyntaxKind::GRANT_DEFAULT_PRIVILEGES
21875 }
21876 #[inline]
21877 fn cast(syntax: SyntaxNode) -> Option<Self> {
21878 if Self::can_cast(syntax.kind()) {
21879 Some(Self { syntax })
21880 } else {
21881 None
21882 }
21883 }
21884 #[inline]
21885 fn syntax(&self) -> &SyntaxNode {
21886 &self.syntax
21887 }
21888}
21889impl AstNode for GroupByClause {
21890 #[inline]
21891 fn can_cast(kind: SyntaxKind) -> bool {
21892 kind == SyntaxKind::GROUP_BY_CLAUSE
21893 }
21894 #[inline]
21895 fn cast(syntax: SyntaxNode) -> Option<Self> {
21896 if Self::can_cast(syntax.kind()) {
21897 Some(Self { syntax })
21898 } else {
21899 None
21900 }
21901 }
21902 #[inline]
21903 fn syntax(&self) -> &SyntaxNode {
21904 &self.syntax
21905 }
21906}
21907impl AstNode for GroupByList {
21908 #[inline]
21909 fn can_cast(kind: SyntaxKind) -> bool {
21910 kind == SyntaxKind::GROUP_BY_LIST
21911 }
21912 #[inline]
21913 fn cast(syntax: SyntaxNode) -> Option<Self> {
21914 if Self::can_cast(syntax.kind()) {
21915 Some(Self { syntax })
21916 } else {
21917 None
21918 }
21919 }
21920 #[inline]
21921 fn syntax(&self) -> &SyntaxNode {
21922 &self.syntax
21923 }
21924}
21925impl AstNode for GroupingCube {
21926 #[inline]
21927 fn can_cast(kind: SyntaxKind) -> bool {
21928 kind == SyntaxKind::GROUPING_CUBE
21929 }
21930 #[inline]
21931 fn cast(syntax: SyntaxNode) -> Option<Self> {
21932 if Self::can_cast(syntax.kind()) {
21933 Some(Self { syntax })
21934 } else {
21935 None
21936 }
21937 }
21938 #[inline]
21939 fn syntax(&self) -> &SyntaxNode {
21940 &self.syntax
21941 }
21942}
21943impl AstNode for GroupingExpr {
21944 #[inline]
21945 fn can_cast(kind: SyntaxKind) -> bool {
21946 kind == SyntaxKind::GROUPING_EXPR
21947 }
21948 #[inline]
21949 fn cast(syntax: SyntaxNode) -> Option<Self> {
21950 if Self::can_cast(syntax.kind()) {
21951 Some(Self { syntax })
21952 } else {
21953 None
21954 }
21955 }
21956 #[inline]
21957 fn syntax(&self) -> &SyntaxNode {
21958 &self.syntax
21959 }
21960}
21961impl AstNode for GroupingRollup {
21962 #[inline]
21963 fn can_cast(kind: SyntaxKind) -> bool {
21964 kind == SyntaxKind::GROUPING_ROLLUP
21965 }
21966 #[inline]
21967 fn cast(syntax: SyntaxNode) -> Option<Self> {
21968 if Self::can_cast(syntax.kind()) {
21969 Some(Self { syntax })
21970 } else {
21971 None
21972 }
21973 }
21974 #[inline]
21975 fn syntax(&self) -> &SyntaxNode {
21976 &self.syntax
21977 }
21978}
21979impl AstNode for GroupingSets {
21980 #[inline]
21981 fn can_cast(kind: SyntaxKind) -> bool {
21982 kind == SyntaxKind::GROUPING_SETS
21983 }
21984 #[inline]
21985 fn cast(syntax: SyntaxNode) -> Option<Self> {
21986 if Self::can_cast(syntax.kind()) {
21987 Some(Self { syntax })
21988 } else {
21989 None
21990 }
21991 }
21992 #[inline]
21993 fn syntax(&self) -> &SyntaxNode {
21994 &self.syntax
21995 }
21996}
21997impl AstNode for Gteq {
21998 #[inline]
21999 fn can_cast(kind: SyntaxKind) -> bool {
22000 kind == SyntaxKind::GTEQ
22001 }
22002 #[inline]
22003 fn cast(syntax: SyntaxNode) -> Option<Self> {
22004 if Self::can_cast(syntax.kind()) {
22005 Some(Self { syntax })
22006 } else {
22007 None
22008 }
22009 }
22010 #[inline]
22011 fn syntax(&self) -> &SyntaxNode {
22012 &self.syntax
22013 }
22014}
22015impl AstNode for HandlerClause {
22016 #[inline]
22017 fn can_cast(kind: SyntaxKind) -> bool {
22018 kind == SyntaxKind::HANDLER_CLAUSE
22019 }
22020 #[inline]
22021 fn cast(syntax: SyntaxNode) -> Option<Self> {
22022 if Self::can_cast(syntax.kind()) {
22023 Some(Self { syntax })
22024 } else {
22025 None
22026 }
22027 }
22028 #[inline]
22029 fn syntax(&self) -> &SyntaxNode {
22030 &self.syntax
22031 }
22032}
22033impl AstNode for HavingClause {
22034 #[inline]
22035 fn can_cast(kind: SyntaxKind) -> bool {
22036 kind == SyntaxKind::HAVING_CLAUSE
22037 }
22038 #[inline]
22039 fn cast(syntax: SyntaxNode) -> Option<Self> {
22040 if Self::can_cast(syntax.kind()) {
22041 Some(Self { syntax })
22042 } else {
22043 None
22044 }
22045 }
22046 #[inline]
22047 fn syntax(&self) -> &SyntaxNode {
22048 &self.syntax
22049 }
22050}
22051impl AstNode for IfExists {
22052 #[inline]
22053 fn can_cast(kind: SyntaxKind) -> bool {
22054 kind == SyntaxKind::IF_EXISTS
22055 }
22056 #[inline]
22057 fn cast(syntax: SyntaxNode) -> Option<Self> {
22058 if Self::can_cast(syntax.kind()) {
22059 Some(Self { syntax })
22060 } else {
22061 None
22062 }
22063 }
22064 #[inline]
22065 fn syntax(&self) -> &SyntaxNode {
22066 &self.syntax
22067 }
22068}
22069impl AstNode for IfNotExists {
22070 #[inline]
22071 fn can_cast(kind: SyntaxKind) -> bool {
22072 kind == SyntaxKind::IF_NOT_EXISTS
22073 }
22074 #[inline]
22075 fn cast(syntax: SyntaxNode) -> Option<Self> {
22076 if Self::can_cast(syntax.kind()) {
22077 Some(Self { syntax })
22078 } else {
22079 None
22080 }
22081 }
22082 #[inline]
22083 fn syntax(&self) -> &SyntaxNode {
22084 &self.syntax
22085 }
22086}
22087impl AstNode for ImportForeignSchema {
22088 #[inline]
22089 fn can_cast(kind: SyntaxKind) -> bool {
22090 kind == SyntaxKind::IMPORT_FOREIGN_SCHEMA
22091 }
22092 #[inline]
22093 fn cast(syntax: SyntaxNode) -> Option<Self> {
22094 if Self::can_cast(syntax.kind()) {
22095 Some(Self { syntax })
22096 } else {
22097 None
22098 }
22099 }
22100 #[inline]
22101 fn syntax(&self) -> &SyntaxNode {
22102 &self.syntax
22103 }
22104}
22105impl AstNode for IndexExpr {
22106 #[inline]
22107 fn can_cast(kind: SyntaxKind) -> bool {
22108 kind == SyntaxKind::INDEX_EXPR
22109 }
22110 #[inline]
22111 fn cast(syntax: SyntaxNode) -> Option<Self> {
22112 if Self::can_cast(syntax.kind()) {
22113 Some(Self { syntax })
22114 } else {
22115 None
22116 }
22117 }
22118 #[inline]
22119 fn syntax(&self) -> &SyntaxNode {
22120 &self.syntax
22121 }
22122}
22123impl AstNode for Inherit {
22124 #[inline]
22125 fn can_cast(kind: SyntaxKind) -> bool {
22126 kind == SyntaxKind::INHERIT
22127 }
22128 #[inline]
22129 fn cast(syntax: SyntaxNode) -> Option<Self> {
22130 if Self::can_cast(syntax.kind()) {
22131 Some(Self { syntax })
22132 } else {
22133 None
22134 }
22135 }
22136 #[inline]
22137 fn syntax(&self) -> &SyntaxNode {
22138 &self.syntax
22139 }
22140}
22141impl AstNode for InheritTable {
22142 #[inline]
22143 fn can_cast(kind: SyntaxKind) -> bool {
22144 kind == SyntaxKind::INHERIT_TABLE
22145 }
22146 #[inline]
22147 fn cast(syntax: SyntaxNode) -> Option<Self> {
22148 if Self::can_cast(syntax.kind()) {
22149 Some(Self { syntax })
22150 } else {
22151 None
22152 }
22153 }
22154 #[inline]
22155 fn syntax(&self) -> &SyntaxNode {
22156 &self.syntax
22157 }
22158}
22159impl AstNode for Inherits {
22160 #[inline]
22161 fn can_cast(kind: SyntaxKind) -> bool {
22162 kind == SyntaxKind::INHERITS
22163 }
22164 #[inline]
22165 fn cast(syntax: SyntaxNode) -> Option<Self> {
22166 if Self::can_cast(syntax.kind()) {
22167 Some(Self { syntax })
22168 } else {
22169 None
22170 }
22171 }
22172 #[inline]
22173 fn syntax(&self) -> &SyntaxNode {
22174 &self.syntax
22175 }
22176}
22177impl AstNode for InitiallyDeferredConstraintOption {
22178 #[inline]
22179 fn can_cast(kind: SyntaxKind) -> bool {
22180 kind == SyntaxKind::INITIALLY_DEFERRED_CONSTRAINT_OPTION
22181 }
22182 #[inline]
22183 fn cast(syntax: SyntaxNode) -> Option<Self> {
22184 if Self::can_cast(syntax.kind()) {
22185 Some(Self { syntax })
22186 } else {
22187 None
22188 }
22189 }
22190 #[inline]
22191 fn syntax(&self) -> &SyntaxNode {
22192 &self.syntax
22193 }
22194}
22195impl AstNode for InitiallyImmediateConstraintOption {
22196 #[inline]
22197 fn can_cast(kind: SyntaxKind) -> bool {
22198 kind == SyntaxKind::INITIALLY_IMMEDIATE_CONSTRAINT_OPTION
22199 }
22200 #[inline]
22201 fn cast(syntax: SyntaxNode) -> Option<Self> {
22202 if Self::can_cast(syntax.kind()) {
22203 Some(Self { syntax })
22204 } else {
22205 None
22206 }
22207 }
22208 #[inline]
22209 fn syntax(&self) -> &SyntaxNode {
22210 &self.syntax
22211 }
22212}
22213impl AstNode for Insert {
22214 #[inline]
22215 fn can_cast(kind: SyntaxKind) -> bool {
22216 kind == SyntaxKind::INSERT
22217 }
22218 #[inline]
22219 fn cast(syntax: SyntaxNode) -> Option<Self> {
22220 if Self::can_cast(syntax.kind()) {
22221 Some(Self { syntax })
22222 } else {
22223 None
22224 }
22225 }
22226 #[inline]
22227 fn syntax(&self) -> &SyntaxNode {
22228 &self.syntax
22229 }
22230}
22231impl AstNode for IntervalType {
22232 #[inline]
22233 fn can_cast(kind: SyntaxKind) -> bool {
22234 kind == SyntaxKind::INTERVAL_TYPE
22235 }
22236 #[inline]
22237 fn cast(syntax: SyntaxNode) -> Option<Self> {
22238 if Self::can_cast(syntax.kind()) {
22239 Some(Self { syntax })
22240 } else {
22241 None
22242 }
22243 }
22244 #[inline]
22245 fn syntax(&self) -> &SyntaxNode {
22246 &self.syntax
22247 }
22248}
22249impl AstNode for IntoClause {
22250 #[inline]
22251 fn can_cast(kind: SyntaxKind) -> bool {
22252 kind == SyntaxKind::INTO_CLAUSE
22253 }
22254 #[inline]
22255 fn cast(syntax: SyntaxNode) -> Option<Self> {
22256 if Self::can_cast(syntax.kind()) {
22257 Some(Self { syntax })
22258 } else {
22259 None
22260 }
22261 }
22262 #[inline]
22263 fn syntax(&self) -> &SyntaxNode {
22264 &self.syntax
22265 }
22266}
22267impl AstNode for IntoSchema {
22268 #[inline]
22269 fn can_cast(kind: SyntaxKind) -> bool {
22270 kind == SyntaxKind::INTO_SCHEMA
22271 }
22272 #[inline]
22273 fn cast(syntax: SyntaxNode) -> Option<Self> {
22274 if Self::can_cast(syntax.kind()) {
22275 Some(Self { syntax })
22276 } else {
22277 None
22278 }
22279 }
22280 #[inline]
22281 fn syntax(&self) -> &SyntaxNode {
22282 &self.syntax
22283 }
22284}
22285impl AstNode for IsDistinctFrom {
22286 #[inline]
22287 fn can_cast(kind: SyntaxKind) -> bool {
22288 kind == SyntaxKind::IS_DISTINCT_FROM
22289 }
22290 #[inline]
22291 fn cast(syntax: SyntaxNode) -> Option<Self> {
22292 if Self::can_cast(syntax.kind()) {
22293 Some(Self { syntax })
22294 } else {
22295 None
22296 }
22297 }
22298 #[inline]
22299 fn syntax(&self) -> &SyntaxNode {
22300 &self.syntax
22301 }
22302}
22303impl AstNode for IsJson {
22304 #[inline]
22305 fn can_cast(kind: SyntaxKind) -> bool {
22306 kind == SyntaxKind::IS_JSON
22307 }
22308 #[inline]
22309 fn cast(syntax: SyntaxNode) -> Option<Self> {
22310 if Self::can_cast(syntax.kind()) {
22311 Some(Self { syntax })
22312 } else {
22313 None
22314 }
22315 }
22316 #[inline]
22317 fn syntax(&self) -> &SyntaxNode {
22318 &self.syntax
22319 }
22320}
22321impl AstNode for IsJsonArray {
22322 #[inline]
22323 fn can_cast(kind: SyntaxKind) -> bool {
22324 kind == SyntaxKind::IS_JSON_ARRAY
22325 }
22326 #[inline]
22327 fn cast(syntax: SyntaxNode) -> Option<Self> {
22328 if Self::can_cast(syntax.kind()) {
22329 Some(Self { syntax })
22330 } else {
22331 None
22332 }
22333 }
22334 #[inline]
22335 fn syntax(&self) -> &SyntaxNode {
22336 &self.syntax
22337 }
22338}
22339impl AstNode for IsJsonObject {
22340 #[inline]
22341 fn can_cast(kind: SyntaxKind) -> bool {
22342 kind == SyntaxKind::IS_JSON_OBJECT
22343 }
22344 #[inline]
22345 fn cast(syntax: SyntaxNode) -> Option<Self> {
22346 if Self::can_cast(syntax.kind()) {
22347 Some(Self { syntax })
22348 } else {
22349 None
22350 }
22351 }
22352 #[inline]
22353 fn syntax(&self) -> &SyntaxNode {
22354 &self.syntax
22355 }
22356}
22357impl AstNode for IsJsonScalar {
22358 #[inline]
22359 fn can_cast(kind: SyntaxKind) -> bool {
22360 kind == SyntaxKind::IS_JSON_SCALAR
22361 }
22362 #[inline]
22363 fn cast(syntax: SyntaxNode) -> Option<Self> {
22364 if Self::can_cast(syntax.kind()) {
22365 Some(Self { syntax })
22366 } else {
22367 None
22368 }
22369 }
22370 #[inline]
22371 fn syntax(&self) -> &SyntaxNode {
22372 &self.syntax
22373 }
22374}
22375impl AstNode for IsJsonValue {
22376 #[inline]
22377 fn can_cast(kind: SyntaxKind) -> bool {
22378 kind == SyntaxKind::IS_JSON_VALUE
22379 }
22380 #[inline]
22381 fn cast(syntax: SyntaxNode) -> Option<Self> {
22382 if Self::can_cast(syntax.kind()) {
22383 Some(Self { syntax })
22384 } else {
22385 None
22386 }
22387 }
22388 #[inline]
22389 fn syntax(&self) -> &SyntaxNode {
22390 &self.syntax
22391 }
22392}
22393impl AstNode for IsNormalized {
22394 #[inline]
22395 fn can_cast(kind: SyntaxKind) -> bool {
22396 kind == SyntaxKind::IS_NORMALIZED
22397 }
22398 #[inline]
22399 fn cast(syntax: SyntaxNode) -> Option<Self> {
22400 if Self::can_cast(syntax.kind()) {
22401 Some(Self { syntax })
22402 } else {
22403 None
22404 }
22405 }
22406 #[inline]
22407 fn syntax(&self) -> &SyntaxNode {
22408 &self.syntax
22409 }
22410}
22411impl AstNode for IsNot {
22412 #[inline]
22413 fn can_cast(kind: SyntaxKind) -> bool {
22414 kind == SyntaxKind::IS_NOT
22415 }
22416 #[inline]
22417 fn cast(syntax: SyntaxNode) -> Option<Self> {
22418 if Self::can_cast(syntax.kind()) {
22419 Some(Self { syntax })
22420 } else {
22421 None
22422 }
22423 }
22424 #[inline]
22425 fn syntax(&self) -> &SyntaxNode {
22426 &self.syntax
22427 }
22428}
22429impl AstNode for IsNotDistinctFrom {
22430 #[inline]
22431 fn can_cast(kind: SyntaxKind) -> bool {
22432 kind == SyntaxKind::IS_NOT_DISTINCT_FROM
22433 }
22434 #[inline]
22435 fn cast(syntax: SyntaxNode) -> Option<Self> {
22436 if Self::can_cast(syntax.kind()) {
22437 Some(Self { syntax })
22438 } else {
22439 None
22440 }
22441 }
22442 #[inline]
22443 fn syntax(&self) -> &SyntaxNode {
22444 &self.syntax
22445 }
22446}
22447impl AstNode for IsNotJson {
22448 #[inline]
22449 fn can_cast(kind: SyntaxKind) -> bool {
22450 kind == SyntaxKind::IS_NOT_JSON
22451 }
22452 #[inline]
22453 fn cast(syntax: SyntaxNode) -> Option<Self> {
22454 if Self::can_cast(syntax.kind()) {
22455 Some(Self { syntax })
22456 } else {
22457 None
22458 }
22459 }
22460 #[inline]
22461 fn syntax(&self) -> &SyntaxNode {
22462 &self.syntax
22463 }
22464}
22465impl AstNode for IsNotJsonArray {
22466 #[inline]
22467 fn can_cast(kind: SyntaxKind) -> bool {
22468 kind == SyntaxKind::IS_NOT_JSON_ARRAY
22469 }
22470 #[inline]
22471 fn cast(syntax: SyntaxNode) -> Option<Self> {
22472 if Self::can_cast(syntax.kind()) {
22473 Some(Self { syntax })
22474 } else {
22475 None
22476 }
22477 }
22478 #[inline]
22479 fn syntax(&self) -> &SyntaxNode {
22480 &self.syntax
22481 }
22482}
22483impl AstNode for IsNotJsonObject {
22484 #[inline]
22485 fn can_cast(kind: SyntaxKind) -> bool {
22486 kind == SyntaxKind::IS_NOT_JSON_OBJECT
22487 }
22488 #[inline]
22489 fn cast(syntax: SyntaxNode) -> Option<Self> {
22490 if Self::can_cast(syntax.kind()) {
22491 Some(Self { syntax })
22492 } else {
22493 None
22494 }
22495 }
22496 #[inline]
22497 fn syntax(&self) -> &SyntaxNode {
22498 &self.syntax
22499 }
22500}
22501impl AstNode for IsNotJsonScalar {
22502 #[inline]
22503 fn can_cast(kind: SyntaxKind) -> bool {
22504 kind == SyntaxKind::IS_NOT_JSON_SCALAR
22505 }
22506 #[inline]
22507 fn cast(syntax: SyntaxNode) -> Option<Self> {
22508 if Self::can_cast(syntax.kind()) {
22509 Some(Self { syntax })
22510 } else {
22511 None
22512 }
22513 }
22514 #[inline]
22515 fn syntax(&self) -> &SyntaxNode {
22516 &self.syntax
22517 }
22518}
22519impl AstNode for IsNotJsonValue {
22520 #[inline]
22521 fn can_cast(kind: SyntaxKind) -> bool {
22522 kind == SyntaxKind::IS_NOT_JSON_VALUE
22523 }
22524 #[inline]
22525 fn cast(syntax: SyntaxNode) -> Option<Self> {
22526 if Self::can_cast(syntax.kind()) {
22527 Some(Self { syntax })
22528 } else {
22529 None
22530 }
22531 }
22532 #[inline]
22533 fn syntax(&self) -> &SyntaxNode {
22534 &self.syntax
22535 }
22536}
22537impl AstNode for IsNotNormalized {
22538 #[inline]
22539 fn can_cast(kind: SyntaxKind) -> bool {
22540 kind == SyntaxKind::IS_NOT_NORMALIZED
22541 }
22542 #[inline]
22543 fn cast(syntax: SyntaxNode) -> Option<Self> {
22544 if Self::can_cast(syntax.kind()) {
22545 Some(Self { syntax })
22546 } else {
22547 None
22548 }
22549 }
22550 #[inline]
22551 fn syntax(&self) -> &SyntaxNode {
22552 &self.syntax
22553 }
22554}
22555impl AstNode for Join {
22556 #[inline]
22557 fn can_cast(kind: SyntaxKind) -> bool {
22558 kind == SyntaxKind::JOIN
22559 }
22560 #[inline]
22561 fn cast(syntax: SyntaxNode) -> Option<Self> {
22562 if Self::can_cast(syntax.kind()) {
22563 Some(Self { syntax })
22564 } else {
22565 None
22566 }
22567 }
22568 #[inline]
22569 fn syntax(&self) -> &SyntaxNode {
22570 &self.syntax
22571 }
22572}
22573impl AstNode for JoinCross {
22574 #[inline]
22575 fn can_cast(kind: SyntaxKind) -> bool {
22576 kind == SyntaxKind::JOIN_CROSS
22577 }
22578 #[inline]
22579 fn cast(syntax: SyntaxNode) -> Option<Self> {
22580 if Self::can_cast(syntax.kind()) {
22581 Some(Self { syntax })
22582 } else {
22583 None
22584 }
22585 }
22586 #[inline]
22587 fn syntax(&self) -> &SyntaxNode {
22588 &self.syntax
22589 }
22590}
22591impl AstNode for JoinExpr {
22592 #[inline]
22593 fn can_cast(kind: SyntaxKind) -> bool {
22594 kind == SyntaxKind::JOIN_EXPR
22595 }
22596 #[inline]
22597 fn cast(syntax: SyntaxNode) -> Option<Self> {
22598 if Self::can_cast(syntax.kind()) {
22599 Some(Self { syntax })
22600 } else {
22601 None
22602 }
22603 }
22604 #[inline]
22605 fn syntax(&self) -> &SyntaxNode {
22606 &self.syntax
22607 }
22608}
22609impl AstNode for JoinFull {
22610 #[inline]
22611 fn can_cast(kind: SyntaxKind) -> bool {
22612 kind == SyntaxKind::JOIN_FULL
22613 }
22614 #[inline]
22615 fn cast(syntax: SyntaxNode) -> Option<Self> {
22616 if Self::can_cast(syntax.kind()) {
22617 Some(Self { syntax })
22618 } else {
22619 None
22620 }
22621 }
22622 #[inline]
22623 fn syntax(&self) -> &SyntaxNode {
22624 &self.syntax
22625 }
22626}
22627impl AstNode for JoinInner {
22628 #[inline]
22629 fn can_cast(kind: SyntaxKind) -> bool {
22630 kind == SyntaxKind::JOIN_INNER
22631 }
22632 #[inline]
22633 fn cast(syntax: SyntaxNode) -> Option<Self> {
22634 if Self::can_cast(syntax.kind()) {
22635 Some(Self { syntax })
22636 } else {
22637 None
22638 }
22639 }
22640 #[inline]
22641 fn syntax(&self) -> &SyntaxNode {
22642 &self.syntax
22643 }
22644}
22645impl AstNode for JoinLeft {
22646 #[inline]
22647 fn can_cast(kind: SyntaxKind) -> bool {
22648 kind == SyntaxKind::JOIN_LEFT
22649 }
22650 #[inline]
22651 fn cast(syntax: SyntaxNode) -> Option<Self> {
22652 if Self::can_cast(syntax.kind()) {
22653 Some(Self { syntax })
22654 } else {
22655 None
22656 }
22657 }
22658 #[inline]
22659 fn syntax(&self) -> &SyntaxNode {
22660 &self.syntax
22661 }
22662}
22663impl AstNode for JoinRight {
22664 #[inline]
22665 fn can_cast(kind: SyntaxKind) -> bool {
22666 kind == SyntaxKind::JOIN_RIGHT
22667 }
22668 #[inline]
22669 fn cast(syntax: SyntaxNode) -> Option<Self> {
22670 if Self::can_cast(syntax.kind()) {
22671 Some(Self { syntax })
22672 } else {
22673 None
22674 }
22675 }
22676 #[inline]
22677 fn syntax(&self) -> &SyntaxNode {
22678 &self.syntax
22679 }
22680}
22681impl AstNode for JoinUsingClause {
22682 #[inline]
22683 fn can_cast(kind: SyntaxKind) -> bool {
22684 kind == SyntaxKind::JOIN_USING_CLAUSE
22685 }
22686 #[inline]
22687 fn cast(syntax: SyntaxNode) -> Option<Self> {
22688 if Self::can_cast(syntax.kind()) {
22689 Some(Self { syntax })
22690 } else {
22691 None
22692 }
22693 }
22694 #[inline]
22695 fn syntax(&self) -> &SyntaxNode {
22696 &self.syntax
22697 }
22698}
22699impl AstNode for JsonArrayAggFn {
22700 #[inline]
22701 fn can_cast(kind: SyntaxKind) -> bool {
22702 kind == SyntaxKind::JSON_ARRAY_AGG_FN
22703 }
22704 #[inline]
22705 fn cast(syntax: SyntaxNode) -> Option<Self> {
22706 if Self::can_cast(syntax.kind()) {
22707 Some(Self { syntax })
22708 } else {
22709 None
22710 }
22711 }
22712 #[inline]
22713 fn syntax(&self) -> &SyntaxNode {
22714 &self.syntax
22715 }
22716}
22717impl AstNode for JsonArrayFn {
22718 #[inline]
22719 fn can_cast(kind: SyntaxKind) -> bool {
22720 kind == SyntaxKind::JSON_ARRAY_FN
22721 }
22722 #[inline]
22723 fn cast(syntax: SyntaxNode) -> Option<Self> {
22724 if Self::can_cast(syntax.kind()) {
22725 Some(Self { syntax })
22726 } else {
22727 None
22728 }
22729 }
22730 #[inline]
22731 fn syntax(&self) -> &SyntaxNode {
22732 &self.syntax
22733 }
22734}
22735impl AstNode for JsonBehaviorClause {
22736 #[inline]
22737 fn can_cast(kind: SyntaxKind) -> bool {
22738 kind == SyntaxKind::JSON_BEHAVIOR_CLAUSE
22739 }
22740 #[inline]
22741 fn cast(syntax: SyntaxNode) -> Option<Self> {
22742 if Self::can_cast(syntax.kind()) {
22743 Some(Self { syntax })
22744 } else {
22745 None
22746 }
22747 }
22748 #[inline]
22749 fn syntax(&self) -> &SyntaxNode {
22750 &self.syntax
22751 }
22752}
22753impl AstNode for JsonBehaviorDefault {
22754 #[inline]
22755 fn can_cast(kind: SyntaxKind) -> bool {
22756 kind == SyntaxKind::JSON_BEHAVIOR_DEFAULT
22757 }
22758 #[inline]
22759 fn cast(syntax: SyntaxNode) -> Option<Self> {
22760 if Self::can_cast(syntax.kind()) {
22761 Some(Self { syntax })
22762 } else {
22763 None
22764 }
22765 }
22766 #[inline]
22767 fn syntax(&self) -> &SyntaxNode {
22768 &self.syntax
22769 }
22770}
22771impl AstNode for JsonBehaviorEmptyArray {
22772 #[inline]
22773 fn can_cast(kind: SyntaxKind) -> bool {
22774 kind == SyntaxKind::JSON_BEHAVIOR_EMPTY_ARRAY
22775 }
22776 #[inline]
22777 fn cast(syntax: SyntaxNode) -> Option<Self> {
22778 if Self::can_cast(syntax.kind()) {
22779 Some(Self { syntax })
22780 } else {
22781 None
22782 }
22783 }
22784 #[inline]
22785 fn syntax(&self) -> &SyntaxNode {
22786 &self.syntax
22787 }
22788}
22789impl AstNode for JsonBehaviorEmptyObject {
22790 #[inline]
22791 fn can_cast(kind: SyntaxKind) -> bool {
22792 kind == SyntaxKind::JSON_BEHAVIOR_EMPTY_OBJECT
22793 }
22794 #[inline]
22795 fn cast(syntax: SyntaxNode) -> Option<Self> {
22796 if Self::can_cast(syntax.kind()) {
22797 Some(Self { syntax })
22798 } else {
22799 None
22800 }
22801 }
22802 #[inline]
22803 fn syntax(&self) -> &SyntaxNode {
22804 &self.syntax
22805 }
22806}
22807impl AstNode for JsonBehaviorError {
22808 #[inline]
22809 fn can_cast(kind: SyntaxKind) -> bool {
22810 kind == SyntaxKind::JSON_BEHAVIOR_ERROR
22811 }
22812 #[inline]
22813 fn cast(syntax: SyntaxNode) -> Option<Self> {
22814 if Self::can_cast(syntax.kind()) {
22815 Some(Self { syntax })
22816 } else {
22817 None
22818 }
22819 }
22820 #[inline]
22821 fn syntax(&self) -> &SyntaxNode {
22822 &self.syntax
22823 }
22824}
22825impl AstNode for JsonBehaviorFalse {
22826 #[inline]
22827 fn can_cast(kind: SyntaxKind) -> bool {
22828 kind == SyntaxKind::JSON_BEHAVIOR_FALSE
22829 }
22830 #[inline]
22831 fn cast(syntax: SyntaxNode) -> Option<Self> {
22832 if Self::can_cast(syntax.kind()) {
22833 Some(Self { syntax })
22834 } else {
22835 None
22836 }
22837 }
22838 #[inline]
22839 fn syntax(&self) -> &SyntaxNode {
22840 &self.syntax
22841 }
22842}
22843impl AstNode for JsonBehaviorNull {
22844 #[inline]
22845 fn can_cast(kind: SyntaxKind) -> bool {
22846 kind == SyntaxKind::JSON_BEHAVIOR_NULL
22847 }
22848 #[inline]
22849 fn cast(syntax: SyntaxNode) -> Option<Self> {
22850 if Self::can_cast(syntax.kind()) {
22851 Some(Self { syntax })
22852 } else {
22853 None
22854 }
22855 }
22856 #[inline]
22857 fn syntax(&self) -> &SyntaxNode {
22858 &self.syntax
22859 }
22860}
22861impl AstNode for JsonBehaviorTrue {
22862 #[inline]
22863 fn can_cast(kind: SyntaxKind) -> bool {
22864 kind == SyntaxKind::JSON_BEHAVIOR_TRUE
22865 }
22866 #[inline]
22867 fn cast(syntax: SyntaxNode) -> Option<Self> {
22868 if Self::can_cast(syntax.kind()) {
22869 Some(Self { syntax })
22870 } else {
22871 None
22872 }
22873 }
22874 #[inline]
22875 fn syntax(&self) -> &SyntaxNode {
22876 &self.syntax
22877 }
22878}
22879impl AstNode for JsonBehaviorUnknown {
22880 #[inline]
22881 fn can_cast(kind: SyntaxKind) -> bool {
22882 kind == SyntaxKind::JSON_BEHAVIOR_UNKNOWN
22883 }
22884 #[inline]
22885 fn cast(syntax: SyntaxNode) -> Option<Self> {
22886 if Self::can_cast(syntax.kind()) {
22887 Some(Self { syntax })
22888 } else {
22889 None
22890 }
22891 }
22892 #[inline]
22893 fn syntax(&self) -> &SyntaxNode {
22894 &self.syntax
22895 }
22896}
22897impl AstNode for JsonEncodingClause {
22898 #[inline]
22899 fn can_cast(kind: SyntaxKind) -> bool {
22900 kind == SyntaxKind::JSON_ENCODING_CLAUSE
22901 }
22902 #[inline]
22903 fn cast(syntax: SyntaxNode) -> Option<Self> {
22904 if Self::can_cast(syntax.kind()) {
22905 Some(Self { syntax })
22906 } else {
22907 None
22908 }
22909 }
22910 #[inline]
22911 fn syntax(&self) -> &SyntaxNode {
22912 &self.syntax
22913 }
22914}
22915impl AstNode for JsonExistsFn {
22916 #[inline]
22917 fn can_cast(kind: SyntaxKind) -> bool {
22918 kind == SyntaxKind::JSON_EXISTS_FN
22919 }
22920 #[inline]
22921 fn cast(syntax: SyntaxNode) -> Option<Self> {
22922 if Self::can_cast(syntax.kind()) {
22923 Some(Self { syntax })
22924 } else {
22925 None
22926 }
22927 }
22928 #[inline]
22929 fn syntax(&self) -> &SyntaxNode {
22930 &self.syntax
22931 }
22932}
22933impl AstNode for JsonExprFormat {
22934 #[inline]
22935 fn can_cast(kind: SyntaxKind) -> bool {
22936 kind == SyntaxKind::JSON_EXPR_FORMAT
22937 }
22938 #[inline]
22939 fn cast(syntax: SyntaxNode) -> Option<Self> {
22940 if Self::can_cast(syntax.kind()) {
22941 Some(Self { syntax })
22942 } else {
22943 None
22944 }
22945 }
22946 #[inline]
22947 fn syntax(&self) -> &SyntaxNode {
22948 &self.syntax
22949 }
22950}
22951impl AstNode for JsonFn {
22952 #[inline]
22953 fn can_cast(kind: SyntaxKind) -> bool {
22954 kind == SyntaxKind::JSON_FN
22955 }
22956 #[inline]
22957 fn cast(syntax: SyntaxNode) -> Option<Self> {
22958 if Self::can_cast(syntax.kind()) {
22959 Some(Self { syntax })
22960 } else {
22961 None
22962 }
22963 }
22964 #[inline]
22965 fn syntax(&self) -> &SyntaxNode {
22966 &self.syntax
22967 }
22968}
22969impl AstNode for JsonFormatClause {
22970 #[inline]
22971 fn can_cast(kind: SyntaxKind) -> bool {
22972 kind == SyntaxKind::JSON_FORMAT_CLAUSE
22973 }
22974 #[inline]
22975 fn cast(syntax: SyntaxNode) -> Option<Self> {
22976 if Self::can_cast(syntax.kind()) {
22977 Some(Self { syntax })
22978 } else {
22979 None
22980 }
22981 }
22982 #[inline]
22983 fn syntax(&self) -> &SyntaxNode {
22984 &self.syntax
22985 }
22986}
22987impl AstNode for JsonKeyValue {
22988 #[inline]
22989 fn can_cast(kind: SyntaxKind) -> bool {
22990 kind == SyntaxKind::JSON_KEY_VALUE
22991 }
22992 #[inline]
22993 fn cast(syntax: SyntaxNode) -> Option<Self> {
22994 if Self::can_cast(syntax.kind()) {
22995 Some(Self { syntax })
22996 } else {
22997 None
22998 }
22999 }
23000 #[inline]
23001 fn syntax(&self) -> &SyntaxNode {
23002 &self.syntax
23003 }
23004}
23005impl AstNode for JsonKeysUniqueClause {
23006 #[inline]
23007 fn can_cast(kind: SyntaxKind) -> bool {
23008 kind == SyntaxKind::JSON_KEYS_UNIQUE_CLAUSE
23009 }
23010 #[inline]
23011 fn cast(syntax: SyntaxNode) -> Option<Self> {
23012 if Self::can_cast(syntax.kind()) {
23013 Some(Self { syntax })
23014 } else {
23015 None
23016 }
23017 }
23018 #[inline]
23019 fn syntax(&self) -> &SyntaxNode {
23020 &self.syntax
23021 }
23022}
23023impl AstNode for JsonNullClause {
23024 #[inline]
23025 fn can_cast(kind: SyntaxKind) -> bool {
23026 kind == SyntaxKind::JSON_NULL_CLAUSE
23027 }
23028 #[inline]
23029 fn cast(syntax: SyntaxNode) -> Option<Self> {
23030 if Self::can_cast(syntax.kind()) {
23031 Some(Self { syntax })
23032 } else {
23033 None
23034 }
23035 }
23036 #[inline]
23037 fn syntax(&self) -> &SyntaxNode {
23038 &self.syntax
23039 }
23040}
23041impl AstNode for JsonObjectAggFn {
23042 #[inline]
23043 fn can_cast(kind: SyntaxKind) -> bool {
23044 kind == SyntaxKind::JSON_OBJECT_AGG_FN
23045 }
23046 #[inline]
23047 fn cast(syntax: SyntaxNode) -> Option<Self> {
23048 if Self::can_cast(syntax.kind()) {
23049 Some(Self { syntax })
23050 } else {
23051 None
23052 }
23053 }
23054 #[inline]
23055 fn syntax(&self) -> &SyntaxNode {
23056 &self.syntax
23057 }
23058}
23059impl AstNode for JsonObjectFn {
23060 #[inline]
23061 fn can_cast(kind: SyntaxKind) -> bool {
23062 kind == SyntaxKind::JSON_OBJECT_FN
23063 }
23064 #[inline]
23065 fn cast(syntax: SyntaxNode) -> Option<Self> {
23066 if Self::can_cast(syntax.kind()) {
23067 Some(Self { syntax })
23068 } else {
23069 None
23070 }
23071 }
23072 #[inline]
23073 fn syntax(&self) -> &SyntaxNode {
23074 &self.syntax
23075 }
23076}
23077impl AstNode for JsonOnEmptyClause {
23078 #[inline]
23079 fn can_cast(kind: SyntaxKind) -> bool {
23080 kind == SyntaxKind::JSON_ON_EMPTY_CLAUSE
23081 }
23082 #[inline]
23083 fn cast(syntax: SyntaxNode) -> Option<Self> {
23084 if Self::can_cast(syntax.kind()) {
23085 Some(Self { syntax })
23086 } else {
23087 None
23088 }
23089 }
23090 #[inline]
23091 fn syntax(&self) -> &SyntaxNode {
23092 &self.syntax
23093 }
23094}
23095impl AstNode for JsonOnErrorClause {
23096 #[inline]
23097 fn can_cast(kind: SyntaxKind) -> bool {
23098 kind == SyntaxKind::JSON_ON_ERROR_CLAUSE
23099 }
23100 #[inline]
23101 fn cast(syntax: SyntaxNode) -> Option<Self> {
23102 if Self::can_cast(syntax.kind()) {
23103 Some(Self { syntax })
23104 } else {
23105 None
23106 }
23107 }
23108 #[inline]
23109 fn syntax(&self) -> &SyntaxNode {
23110 &self.syntax
23111 }
23112}
23113impl AstNode for JsonPassingArg {
23114 #[inline]
23115 fn can_cast(kind: SyntaxKind) -> bool {
23116 kind == SyntaxKind::JSON_PASSING_ARG
23117 }
23118 #[inline]
23119 fn cast(syntax: SyntaxNode) -> Option<Self> {
23120 if Self::can_cast(syntax.kind()) {
23121 Some(Self { syntax })
23122 } else {
23123 None
23124 }
23125 }
23126 #[inline]
23127 fn syntax(&self) -> &SyntaxNode {
23128 &self.syntax
23129 }
23130}
23131impl AstNode for JsonPassingClause {
23132 #[inline]
23133 fn can_cast(kind: SyntaxKind) -> bool {
23134 kind == SyntaxKind::JSON_PASSING_CLAUSE
23135 }
23136 #[inline]
23137 fn cast(syntax: SyntaxNode) -> Option<Self> {
23138 if Self::can_cast(syntax.kind()) {
23139 Some(Self { syntax })
23140 } else {
23141 None
23142 }
23143 }
23144 #[inline]
23145 fn syntax(&self) -> &SyntaxNode {
23146 &self.syntax
23147 }
23148}
23149impl AstNode for JsonPathClause {
23150 #[inline]
23151 fn can_cast(kind: SyntaxKind) -> bool {
23152 kind == SyntaxKind::JSON_PATH_CLAUSE
23153 }
23154 #[inline]
23155 fn cast(syntax: SyntaxNode) -> Option<Self> {
23156 if Self::can_cast(syntax.kind()) {
23157 Some(Self { syntax })
23158 } else {
23159 None
23160 }
23161 }
23162 #[inline]
23163 fn syntax(&self) -> &SyntaxNode {
23164 &self.syntax
23165 }
23166}
23167impl AstNode for JsonQueryFn {
23168 #[inline]
23169 fn can_cast(kind: SyntaxKind) -> bool {
23170 kind == SyntaxKind::JSON_QUERY_FN
23171 }
23172 #[inline]
23173 fn cast(syntax: SyntaxNode) -> Option<Self> {
23174 if Self::can_cast(syntax.kind()) {
23175 Some(Self { syntax })
23176 } else {
23177 None
23178 }
23179 }
23180 #[inline]
23181 fn syntax(&self) -> &SyntaxNode {
23182 &self.syntax
23183 }
23184}
23185impl AstNode for JsonQuotesClause {
23186 #[inline]
23187 fn can_cast(kind: SyntaxKind) -> bool {
23188 kind == SyntaxKind::JSON_QUOTES_CLAUSE
23189 }
23190 #[inline]
23191 fn cast(syntax: SyntaxNode) -> Option<Self> {
23192 if Self::can_cast(syntax.kind()) {
23193 Some(Self { syntax })
23194 } else {
23195 None
23196 }
23197 }
23198 #[inline]
23199 fn syntax(&self) -> &SyntaxNode {
23200 &self.syntax
23201 }
23202}
23203impl AstNode for JsonReturningClause {
23204 #[inline]
23205 fn can_cast(kind: SyntaxKind) -> bool {
23206 kind == SyntaxKind::JSON_RETURNING_CLAUSE
23207 }
23208 #[inline]
23209 fn cast(syntax: SyntaxNode) -> Option<Self> {
23210 if Self::can_cast(syntax.kind()) {
23211 Some(Self { syntax })
23212 } else {
23213 None
23214 }
23215 }
23216 #[inline]
23217 fn syntax(&self) -> &SyntaxNode {
23218 &self.syntax
23219 }
23220}
23221impl AstNode for JsonScalarFn {
23222 #[inline]
23223 fn can_cast(kind: SyntaxKind) -> bool {
23224 kind == SyntaxKind::JSON_SCALAR_FN
23225 }
23226 #[inline]
23227 fn cast(syntax: SyntaxNode) -> Option<Self> {
23228 if Self::can_cast(syntax.kind()) {
23229 Some(Self { syntax })
23230 } else {
23231 None
23232 }
23233 }
23234 #[inline]
23235 fn syntax(&self) -> &SyntaxNode {
23236 &self.syntax
23237 }
23238}
23239impl AstNode for JsonSelectFormat {
23240 #[inline]
23241 fn can_cast(kind: SyntaxKind) -> bool {
23242 kind == SyntaxKind::JSON_SELECT_FORMAT
23243 }
23244 #[inline]
23245 fn cast(syntax: SyntaxNode) -> Option<Self> {
23246 if Self::can_cast(syntax.kind()) {
23247 Some(Self { syntax })
23248 } else {
23249 None
23250 }
23251 }
23252 #[inline]
23253 fn syntax(&self) -> &SyntaxNode {
23254 &self.syntax
23255 }
23256}
23257impl AstNode for JsonSerializeFn {
23258 #[inline]
23259 fn can_cast(kind: SyntaxKind) -> bool {
23260 kind == SyntaxKind::JSON_SERIALIZE_FN
23261 }
23262 #[inline]
23263 fn cast(syntax: SyntaxNode) -> Option<Self> {
23264 if Self::can_cast(syntax.kind()) {
23265 Some(Self { syntax })
23266 } else {
23267 None
23268 }
23269 }
23270 #[inline]
23271 fn syntax(&self) -> &SyntaxNode {
23272 &self.syntax
23273 }
23274}
23275impl AstNode for JsonTable {
23276 #[inline]
23277 fn can_cast(kind: SyntaxKind) -> bool {
23278 kind == SyntaxKind::JSON_TABLE
23279 }
23280 #[inline]
23281 fn cast(syntax: SyntaxNode) -> Option<Self> {
23282 if Self::can_cast(syntax.kind()) {
23283 Some(Self { syntax })
23284 } else {
23285 None
23286 }
23287 }
23288 #[inline]
23289 fn syntax(&self) -> &SyntaxNode {
23290 &self.syntax
23291 }
23292}
23293impl AstNode for JsonTableColumn {
23294 #[inline]
23295 fn can_cast(kind: SyntaxKind) -> bool {
23296 kind == SyntaxKind::JSON_TABLE_COLUMN
23297 }
23298 #[inline]
23299 fn cast(syntax: SyntaxNode) -> Option<Self> {
23300 if Self::can_cast(syntax.kind()) {
23301 Some(Self { syntax })
23302 } else {
23303 None
23304 }
23305 }
23306 #[inline]
23307 fn syntax(&self) -> &SyntaxNode {
23308 &self.syntax
23309 }
23310}
23311impl AstNode for JsonTableColumnList {
23312 #[inline]
23313 fn can_cast(kind: SyntaxKind) -> bool {
23314 kind == SyntaxKind::JSON_TABLE_COLUMN_LIST
23315 }
23316 #[inline]
23317 fn cast(syntax: SyntaxNode) -> Option<Self> {
23318 if Self::can_cast(syntax.kind()) {
23319 Some(Self { syntax })
23320 } else {
23321 None
23322 }
23323 }
23324 #[inline]
23325 fn syntax(&self) -> &SyntaxNode {
23326 &self.syntax
23327 }
23328}
23329impl AstNode for JsonValueExpr {
23330 #[inline]
23331 fn can_cast(kind: SyntaxKind) -> bool {
23332 kind == SyntaxKind::JSON_VALUE_EXPR
23333 }
23334 #[inline]
23335 fn cast(syntax: SyntaxNode) -> Option<Self> {
23336 if Self::can_cast(syntax.kind()) {
23337 Some(Self { syntax })
23338 } else {
23339 None
23340 }
23341 }
23342 #[inline]
23343 fn syntax(&self) -> &SyntaxNode {
23344 &self.syntax
23345 }
23346}
23347impl AstNode for JsonValueFn {
23348 #[inline]
23349 fn can_cast(kind: SyntaxKind) -> bool {
23350 kind == SyntaxKind::JSON_VALUE_FN
23351 }
23352 #[inline]
23353 fn cast(syntax: SyntaxNode) -> Option<Self> {
23354 if Self::can_cast(syntax.kind()) {
23355 Some(Self { syntax })
23356 } else {
23357 None
23358 }
23359 }
23360 #[inline]
23361 fn syntax(&self) -> &SyntaxNode {
23362 &self.syntax
23363 }
23364}
23365impl AstNode for JsonWrapperBehaviorClause {
23366 #[inline]
23367 fn can_cast(kind: SyntaxKind) -> bool {
23368 kind == SyntaxKind::JSON_WRAPPER_BEHAVIOR_CLAUSE
23369 }
23370 #[inline]
23371 fn cast(syntax: SyntaxNode) -> Option<Self> {
23372 if Self::can_cast(syntax.kind()) {
23373 Some(Self { syntax })
23374 } else {
23375 None
23376 }
23377 }
23378 #[inline]
23379 fn syntax(&self) -> &SyntaxNode {
23380 &self.syntax
23381 }
23382}
23383impl AstNode for LanguageFuncOption {
23384 #[inline]
23385 fn can_cast(kind: SyntaxKind) -> bool {
23386 kind == SyntaxKind::LANGUAGE_FUNC_OPTION
23387 }
23388 #[inline]
23389 fn cast(syntax: SyntaxNode) -> Option<Self> {
23390 if Self::can_cast(syntax.kind()) {
23391 Some(Self { syntax })
23392 } else {
23393 None
23394 }
23395 }
23396 #[inline]
23397 fn syntax(&self) -> &SyntaxNode {
23398 &self.syntax
23399 }
23400}
23401impl AstNode for LeakproofFuncOption {
23402 #[inline]
23403 fn can_cast(kind: SyntaxKind) -> bool {
23404 kind == SyntaxKind::LEAKPROOF_FUNC_OPTION
23405 }
23406 #[inline]
23407 fn cast(syntax: SyntaxNode) -> Option<Self> {
23408 if Self::can_cast(syntax.kind()) {
23409 Some(Self { syntax })
23410 } else {
23411 None
23412 }
23413 }
23414 #[inline]
23415 fn syntax(&self) -> &SyntaxNode {
23416 &self.syntax
23417 }
23418}
23419impl AstNode for LikeClause {
23420 #[inline]
23421 fn can_cast(kind: SyntaxKind) -> bool {
23422 kind == SyntaxKind::LIKE_CLAUSE
23423 }
23424 #[inline]
23425 fn cast(syntax: SyntaxNode) -> Option<Self> {
23426 if Self::can_cast(syntax.kind()) {
23427 Some(Self { syntax })
23428 } else {
23429 None
23430 }
23431 }
23432 #[inline]
23433 fn syntax(&self) -> &SyntaxNode {
23434 &self.syntax
23435 }
23436}
23437impl AstNode for LikeOption {
23438 #[inline]
23439 fn can_cast(kind: SyntaxKind) -> bool {
23440 kind == SyntaxKind::LIKE_OPTION
23441 }
23442 #[inline]
23443 fn cast(syntax: SyntaxNode) -> Option<Self> {
23444 if Self::can_cast(syntax.kind()) {
23445 Some(Self { syntax })
23446 } else {
23447 None
23448 }
23449 }
23450 #[inline]
23451 fn syntax(&self) -> &SyntaxNode {
23452 &self.syntax
23453 }
23454}
23455impl AstNode for LimitClause {
23456 #[inline]
23457 fn can_cast(kind: SyntaxKind) -> bool {
23458 kind == SyntaxKind::LIMIT_CLAUSE
23459 }
23460 #[inline]
23461 fn cast(syntax: SyntaxNode) -> Option<Self> {
23462 if Self::can_cast(syntax.kind()) {
23463 Some(Self { syntax })
23464 } else {
23465 None
23466 }
23467 }
23468 #[inline]
23469 fn syntax(&self) -> &SyntaxNode {
23470 &self.syntax
23471 }
23472}
23473impl AstNode for LimitToTables {
23474 #[inline]
23475 fn can_cast(kind: SyntaxKind) -> bool {
23476 kind == SyntaxKind::LIMIT_TO_TABLES
23477 }
23478 #[inline]
23479 fn cast(syntax: SyntaxNode) -> Option<Self> {
23480 if Self::can_cast(syntax.kind()) {
23481 Some(Self { syntax })
23482 } else {
23483 None
23484 }
23485 }
23486 #[inline]
23487 fn syntax(&self) -> &SyntaxNode {
23488 &self.syntax
23489 }
23490}
23491impl AstNode for Listen {
23492 #[inline]
23493 fn can_cast(kind: SyntaxKind) -> bool {
23494 kind == SyntaxKind::LISTEN
23495 }
23496 #[inline]
23497 fn cast(syntax: SyntaxNode) -> Option<Self> {
23498 if Self::can_cast(syntax.kind()) {
23499 Some(Self { syntax })
23500 } else {
23501 None
23502 }
23503 }
23504 #[inline]
23505 fn syntax(&self) -> &SyntaxNode {
23506 &self.syntax
23507 }
23508}
23509impl AstNode for Literal {
23510 #[inline]
23511 fn can_cast(kind: SyntaxKind) -> bool {
23512 kind == SyntaxKind::LITERAL
23513 }
23514 #[inline]
23515 fn cast(syntax: SyntaxNode) -> Option<Self> {
23516 if Self::can_cast(syntax.kind()) {
23517 Some(Self { syntax })
23518 } else {
23519 None
23520 }
23521 }
23522 #[inline]
23523 fn syntax(&self) -> &SyntaxNode {
23524 &self.syntax
23525 }
23526}
23527impl AstNode for Load {
23528 #[inline]
23529 fn can_cast(kind: SyntaxKind) -> bool {
23530 kind == SyntaxKind::LOAD
23531 }
23532 #[inline]
23533 fn cast(syntax: SyntaxNode) -> Option<Self> {
23534 if Self::can_cast(syntax.kind()) {
23535 Some(Self { syntax })
23536 } else {
23537 None
23538 }
23539 }
23540 #[inline]
23541 fn syntax(&self) -> &SyntaxNode {
23542 &self.syntax
23543 }
23544}
23545impl AstNode for Lock {
23546 #[inline]
23547 fn can_cast(kind: SyntaxKind) -> bool {
23548 kind == SyntaxKind::LOCK
23549 }
23550 #[inline]
23551 fn cast(syntax: SyntaxNode) -> Option<Self> {
23552 if Self::can_cast(syntax.kind()) {
23553 Some(Self { syntax })
23554 } else {
23555 None
23556 }
23557 }
23558 #[inline]
23559 fn syntax(&self) -> &SyntaxNode {
23560 &self.syntax
23561 }
23562}
23563impl AstNode for LockingClause {
23564 #[inline]
23565 fn can_cast(kind: SyntaxKind) -> bool {
23566 kind == SyntaxKind::LOCKING_CLAUSE
23567 }
23568 #[inline]
23569 fn cast(syntax: SyntaxNode) -> Option<Self> {
23570 if Self::can_cast(syntax.kind()) {
23571 Some(Self { syntax })
23572 } else {
23573 None
23574 }
23575 }
23576 #[inline]
23577 fn syntax(&self) -> &SyntaxNode {
23578 &self.syntax
23579 }
23580}
23581impl AstNode for Lteq {
23582 #[inline]
23583 fn can_cast(kind: SyntaxKind) -> bool {
23584 kind == SyntaxKind::LTEQ
23585 }
23586 #[inline]
23587 fn cast(syntax: SyntaxNode) -> Option<Self> {
23588 if Self::can_cast(syntax.kind()) {
23589 Some(Self { syntax })
23590 } else {
23591 None
23592 }
23593 }
23594 #[inline]
23595 fn syntax(&self) -> &SyntaxNode {
23596 &self.syntax
23597 }
23598}
23599impl AstNode for MatchFull {
23600 #[inline]
23601 fn can_cast(kind: SyntaxKind) -> bool {
23602 kind == SyntaxKind::MATCH_FULL
23603 }
23604 #[inline]
23605 fn cast(syntax: SyntaxNode) -> Option<Self> {
23606 if Self::can_cast(syntax.kind()) {
23607 Some(Self { syntax })
23608 } else {
23609 None
23610 }
23611 }
23612 #[inline]
23613 fn syntax(&self) -> &SyntaxNode {
23614 &self.syntax
23615 }
23616}
23617impl AstNode for MatchPartial {
23618 #[inline]
23619 fn can_cast(kind: SyntaxKind) -> bool {
23620 kind == SyntaxKind::MATCH_PARTIAL
23621 }
23622 #[inline]
23623 fn cast(syntax: SyntaxNode) -> Option<Self> {
23624 if Self::can_cast(syntax.kind()) {
23625 Some(Self { syntax })
23626 } else {
23627 None
23628 }
23629 }
23630 #[inline]
23631 fn syntax(&self) -> &SyntaxNode {
23632 &self.syntax
23633 }
23634}
23635impl AstNode for MatchSimple {
23636 #[inline]
23637 fn can_cast(kind: SyntaxKind) -> bool {
23638 kind == SyntaxKind::MATCH_SIMPLE
23639 }
23640 #[inline]
23641 fn cast(syntax: SyntaxNode) -> Option<Self> {
23642 if Self::can_cast(syntax.kind()) {
23643 Some(Self { syntax })
23644 } else {
23645 None
23646 }
23647 }
23648 #[inline]
23649 fn syntax(&self) -> &SyntaxNode {
23650 &self.syntax
23651 }
23652}
23653impl AstNode for Materialized {
23654 #[inline]
23655 fn can_cast(kind: SyntaxKind) -> bool {
23656 kind == SyntaxKind::MATERIALIZED
23657 }
23658 #[inline]
23659 fn cast(syntax: SyntaxNode) -> Option<Self> {
23660 if Self::can_cast(syntax.kind()) {
23661 Some(Self { syntax })
23662 } else {
23663 None
23664 }
23665 }
23666 #[inline]
23667 fn syntax(&self) -> &SyntaxNode {
23668 &self.syntax
23669 }
23670}
23671impl AstNode for Merge {
23672 #[inline]
23673 fn can_cast(kind: SyntaxKind) -> bool {
23674 kind == SyntaxKind::MERGE
23675 }
23676 #[inline]
23677 fn cast(syntax: SyntaxNode) -> Option<Self> {
23678 if Self::can_cast(syntax.kind()) {
23679 Some(Self { syntax })
23680 } else {
23681 None
23682 }
23683 }
23684 #[inline]
23685 fn syntax(&self) -> &SyntaxNode {
23686 &self.syntax
23687 }
23688}
23689impl AstNode for MergeDelete {
23690 #[inline]
23691 fn can_cast(kind: SyntaxKind) -> bool {
23692 kind == SyntaxKind::MERGE_DELETE
23693 }
23694 #[inline]
23695 fn cast(syntax: SyntaxNode) -> Option<Self> {
23696 if Self::can_cast(syntax.kind()) {
23697 Some(Self { syntax })
23698 } else {
23699 None
23700 }
23701 }
23702 #[inline]
23703 fn syntax(&self) -> &SyntaxNode {
23704 &self.syntax
23705 }
23706}
23707impl AstNode for MergeDoNothing {
23708 #[inline]
23709 fn can_cast(kind: SyntaxKind) -> bool {
23710 kind == SyntaxKind::MERGE_DO_NOTHING
23711 }
23712 #[inline]
23713 fn cast(syntax: SyntaxNode) -> Option<Self> {
23714 if Self::can_cast(syntax.kind()) {
23715 Some(Self { syntax })
23716 } else {
23717 None
23718 }
23719 }
23720 #[inline]
23721 fn syntax(&self) -> &SyntaxNode {
23722 &self.syntax
23723 }
23724}
23725impl AstNode for MergeInsert {
23726 #[inline]
23727 fn can_cast(kind: SyntaxKind) -> bool {
23728 kind == SyntaxKind::MERGE_INSERT
23729 }
23730 #[inline]
23731 fn cast(syntax: SyntaxNode) -> Option<Self> {
23732 if Self::can_cast(syntax.kind()) {
23733 Some(Self { syntax })
23734 } else {
23735 None
23736 }
23737 }
23738 #[inline]
23739 fn syntax(&self) -> &SyntaxNode {
23740 &self.syntax
23741 }
23742}
23743impl AstNode for MergePartitions {
23744 #[inline]
23745 fn can_cast(kind: SyntaxKind) -> bool {
23746 kind == SyntaxKind::MERGE_PARTITIONS
23747 }
23748 #[inline]
23749 fn cast(syntax: SyntaxNode) -> Option<Self> {
23750 if Self::can_cast(syntax.kind()) {
23751 Some(Self { syntax })
23752 } else {
23753 None
23754 }
23755 }
23756 #[inline]
23757 fn syntax(&self) -> &SyntaxNode {
23758 &self.syntax
23759 }
23760}
23761impl AstNode for MergeUpdate {
23762 #[inline]
23763 fn can_cast(kind: SyntaxKind) -> bool {
23764 kind == SyntaxKind::MERGE_UPDATE
23765 }
23766 #[inline]
23767 fn cast(syntax: SyntaxNode) -> Option<Self> {
23768 if Self::can_cast(syntax.kind()) {
23769 Some(Self { syntax })
23770 } else {
23771 None
23772 }
23773 }
23774 #[inline]
23775 fn syntax(&self) -> &SyntaxNode {
23776 &self.syntax
23777 }
23778}
23779impl AstNode for MergeWhenMatched {
23780 #[inline]
23781 fn can_cast(kind: SyntaxKind) -> bool {
23782 kind == SyntaxKind::MERGE_WHEN_MATCHED
23783 }
23784 #[inline]
23785 fn cast(syntax: SyntaxNode) -> Option<Self> {
23786 if Self::can_cast(syntax.kind()) {
23787 Some(Self { syntax })
23788 } else {
23789 None
23790 }
23791 }
23792 #[inline]
23793 fn syntax(&self) -> &SyntaxNode {
23794 &self.syntax
23795 }
23796}
23797impl AstNode for MergeWhenNotMatchedSource {
23798 #[inline]
23799 fn can_cast(kind: SyntaxKind) -> bool {
23800 kind == SyntaxKind::MERGE_WHEN_NOT_MATCHED_SOURCE
23801 }
23802 #[inline]
23803 fn cast(syntax: SyntaxNode) -> Option<Self> {
23804 if Self::can_cast(syntax.kind()) {
23805 Some(Self { syntax })
23806 } else {
23807 None
23808 }
23809 }
23810 #[inline]
23811 fn syntax(&self) -> &SyntaxNode {
23812 &self.syntax
23813 }
23814}
23815impl AstNode for MergeWhenNotMatchedTarget {
23816 #[inline]
23817 fn can_cast(kind: SyntaxKind) -> bool {
23818 kind == SyntaxKind::MERGE_WHEN_NOT_MATCHED_TARGET
23819 }
23820 #[inline]
23821 fn cast(syntax: SyntaxNode) -> Option<Self> {
23822 if Self::can_cast(syntax.kind()) {
23823 Some(Self { syntax })
23824 } else {
23825 None
23826 }
23827 }
23828 #[inline]
23829 fn syntax(&self) -> &SyntaxNode {
23830 &self.syntax
23831 }
23832}
23833impl AstNode for Move {
23834 #[inline]
23835 fn can_cast(kind: SyntaxKind) -> bool {
23836 kind == SyntaxKind::MOVE
23837 }
23838 #[inline]
23839 fn cast(syntax: SyntaxNode) -> Option<Self> {
23840 if Self::can_cast(syntax.kind()) {
23841 Some(Self { syntax })
23842 } else {
23843 None
23844 }
23845 }
23846 #[inline]
23847 fn syntax(&self) -> &SyntaxNode {
23848 &self.syntax
23849 }
23850}
23851impl AstNode for Name {
23852 #[inline]
23853 fn can_cast(kind: SyntaxKind) -> bool {
23854 kind == SyntaxKind::NAME
23855 }
23856 #[inline]
23857 fn cast(syntax: SyntaxNode) -> Option<Self> {
23858 if Self::can_cast(syntax.kind()) {
23859 Some(Self { syntax })
23860 } else {
23861 None
23862 }
23863 }
23864 #[inline]
23865 fn syntax(&self) -> &SyntaxNode {
23866 &self.syntax
23867 }
23868}
23869impl AstNode for NameRef {
23870 #[inline]
23871 fn can_cast(kind: SyntaxKind) -> bool {
23872 kind == SyntaxKind::NAME_REF
23873 }
23874 #[inline]
23875 fn cast(syntax: SyntaxNode) -> Option<Self> {
23876 if Self::can_cast(syntax.kind()) {
23877 Some(Self { syntax })
23878 } else {
23879 None
23880 }
23881 }
23882 #[inline]
23883 fn syntax(&self) -> &SyntaxNode {
23884 &self.syntax
23885 }
23886}
23887impl AstNode for NamedArg {
23888 #[inline]
23889 fn can_cast(kind: SyntaxKind) -> bool {
23890 kind == SyntaxKind::NAMED_ARG
23891 }
23892 #[inline]
23893 fn cast(syntax: SyntaxNode) -> Option<Self> {
23894 if Self::can_cast(syntax.kind()) {
23895 Some(Self { syntax })
23896 } else {
23897 None
23898 }
23899 }
23900 #[inline]
23901 fn syntax(&self) -> &SyntaxNode {
23902 &self.syntax
23903 }
23904}
23905impl AstNode for Neq {
23906 #[inline]
23907 fn can_cast(kind: SyntaxKind) -> bool {
23908 kind == SyntaxKind::NEQ
23909 }
23910 #[inline]
23911 fn cast(syntax: SyntaxNode) -> Option<Self> {
23912 if Self::can_cast(syntax.kind()) {
23913 Some(Self { syntax })
23914 } else {
23915 None
23916 }
23917 }
23918 #[inline]
23919 fn syntax(&self) -> &SyntaxNode {
23920 &self.syntax
23921 }
23922}
23923impl AstNode for Neqb {
23924 #[inline]
23925 fn can_cast(kind: SyntaxKind) -> bool {
23926 kind == SyntaxKind::NEQB
23927 }
23928 #[inline]
23929 fn cast(syntax: SyntaxNode) -> Option<Self> {
23930 if Self::can_cast(syntax.kind()) {
23931 Some(Self { syntax })
23932 } else {
23933 None
23934 }
23935 }
23936 #[inline]
23937 fn syntax(&self) -> &SyntaxNode {
23938 &self.syntax
23939 }
23940}
23941impl AstNode for NoAction {
23942 #[inline]
23943 fn can_cast(kind: SyntaxKind) -> bool {
23944 kind == SyntaxKind::NO_ACTION
23945 }
23946 #[inline]
23947 fn cast(syntax: SyntaxNode) -> Option<Self> {
23948 if Self::can_cast(syntax.kind()) {
23949 Some(Self { syntax })
23950 } else {
23951 None
23952 }
23953 }
23954 #[inline]
23955 fn syntax(&self) -> &SyntaxNode {
23956 &self.syntax
23957 }
23958}
23959impl AstNode for NoDependsOnExtension {
23960 #[inline]
23961 fn can_cast(kind: SyntaxKind) -> bool {
23962 kind == SyntaxKind::NO_DEPENDS_ON_EXTENSION
23963 }
23964 #[inline]
23965 fn cast(syntax: SyntaxNode) -> Option<Self> {
23966 if Self::can_cast(syntax.kind()) {
23967 Some(Self { syntax })
23968 } else {
23969 None
23970 }
23971 }
23972 #[inline]
23973 fn syntax(&self) -> &SyntaxNode {
23974 &self.syntax
23975 }
23976}
23977impl AstNode for NoForceRls {
23978 #[inline]
23979 fn can_cast(kind: SyntaxKind) -> bool {
23980 kind == SyntaxKind::NO_FORCE_RLS
23981 }
23982 #[inline]
23983 fn cast(syntax: SyntaxNode) -> Option<Self> {
23984 if Self::can_cast(syntax.kind()) {
23985 Some(Self { syntax })
23986 } else {
23987 None
23988 }
23989 }
23990 #[inline]
23991 fn syntax(&self) -> &SyntaxNode {
23992 &self.syntax
23993 }
23994}
23995impl AstNode for NoInherit {
23996 #[inline]
23997 fn can_cast(kind: SyntaxKind) -> bool {
23998 kind == SyntaxKind::NO_INHERIT
23999 }
24000 #[inline]
24001 fn cast(syntax: SyntaxNode) -> Option<Self> {
24002 if Self::can_cast(syntax.kind()) {
24003 Some(Self { syntax })
24004 } else {
24005 None
24006 }
24007 }
24008 #[inline]
24009 fn syntax(&self) -> &SyntaxNode {
24010 &self.syntax
24011 }
24012}
24013impl AstNode for NoInheritTable {
24014 #[inline]
24015 fn can_cast(kind: SyntaxKind) -> bool {
24016 kind == SyntaxKind::NO_INHERIT_TABLE
24017 }
24018 #[inline]
24019 fn cast(syntax: SyntaxNode) -> Option<Self> {
24020 if Self::can_cast(syntax.kind()) {
24021 Some(Self { syntax })
24022 } else {
24023 None
24024 }
24025 }
24026 #[inline]
24027 fn syntax(&self) -> &SyntaxNode {
24028 &self.syntax
24029 }
24030}
24031impl AstNode for NonStandardParam {
24032 #[inline]
24033 fn can_cast(kind: SyntaxKind) -> bool {
24034 kind == SyntaxKind::NON_STANDARD_PARAM
24035 }
24036 #[inline]
24037 fn cast(syntax: SyntaxNode) -> Option<Self> {
24038 if Self::can_cast(syntax.kind()) {
24039 Some(Self { syntax })
24040 } else {
24041 None
24042 }
24043 }
24044 #[inline]
24045 fn syntax(&self) -> &SyntaxNode {
24046 &self.syntax
24047 }
24048}
24049impl AstNode for NotDeferrable {
24050 #[inline]
24051 fn can_cast(kind: SyntaxKind) -> bool {
24052 kind == SyntaxKind::NOT_DEFERRABLE
24053 }
24054 #[inline]
24055 fn cast(syntax: SyntaxNode) -> Option<Self> {
24056 if Self::can_cast(syntax.kind()) {
24057 Some(Self { syntax })
24058 } else {
24059 None
24060 }
24061 }
24062 #[inline]
24063 fn syntax(&self) -> &SyntaxNode {
24064 &self.syntax
24065 }
24066}
24067impl AstNode for NotDeferrableConstraintOption {
24068 #[inline]
24069 fn can_cast(kind: SyntaxKind) -> bool {
24070 kind == SyntaxKind::NOT_DEFERRABLE_CONSTRAINT_OPTION
24071 }
24072 #[inline]
24073 fn cast(syntax: SyntaxNode) -> Option<Self> {
24074 if Self::can_cast(syntax.kind()) {
24075 Some(Self { syntax })
24076 } else {
24077 None
24078 }
24079 }
24080 #[inline]
24081 fn syntax(&self) -> &SyntaxNode {
24082 &self.syntax
24083 }
24084}
24085impl AstNode for NotEnforced {
24086 #[inline]
24087 fn can_cast(kind: SyntaxKind) -> bool {
24088 kind == SyntaxKind::NOT_ENFORCED
24089 }
24090 #[inline]
24091 fn cast(syntax: SyntaxNode) -> Option<Self> {
24092 if Self::can_cast(syntax.kind()) {
24093 Some(Self { syntax })
24094 } else {
24095 None
24096 }
24097 }
24098 #[inline]
24099 fn syntax(&self) -> &SyntaxNode {
24100 &self.syntax
24101 }
24102}
24103impl AstNode for NotIlike {
24104 #[inline]
24105 fn can_cast(kind: SyntaxKind) -> bool {
24106 kind == SyntaxKind::NOT_ILIKE
24107 }
24108 #[inline]
24109 fn cast(syntax: SyntaxNode) -> Option<Self> {
24110 if Self::can_cast(syntax.kind()) {
24111 Some(Self { syntax })
24112 } else {
24113 None
24114 }
24115 }
24116 #[inline]
24117 fn syntax(&self) -> &SyntaxNode {
24118 &self.syntax
24119 }
24120}
24121impl AstNode for NotIn {
24122 #[inline]
24123 fn can_cast(kind: SyntaxKind) -> bool {
24124 kind == SyntaxKind::NOT_IN
24125 }
24126 #[inline]
24127 fn cast(syntax: SyntaxNode) -> Option<Self> {
24128 if Self::can_cast(syntax.kind()) {
24129 Some(Self { syntax })
24130 } else {
24131 None
24132 }
24133 }
24134 #[inline]
24135 fn syntax(&self) -> &SyntaxNode {
24136 &self.syntax
24137 }
24138}
24139impl AstNode for NotLike {
24140 #[inline]
24141 fn can_cast(kind: SyntaxKind) -> bool {
24142 kind == SyntaxKind::NOT_LIKE
24143 }
24144 #[inline]
24145 fn cast(syntax: SyntaxNode) -> Option<Self> {
24146 if Self::can_cast(syntax.kind()) {
24147 Some(Self { syntax })
24148 } else {
24149 None
24150 }
24151 }
24152 #[inline]
24153 fn syntax(&self) -> &SyntaxNode {
24154 &self.syntax
24155 }
24156}
24157impl AstNode for NotMaterialized {
24158 #[inline]
24159 fn can_cast(kind: SyntaxKind) -> bool {
24160 kind == SyntaxKind::NOT_MATERIALIZED
24161 }
24162 #[inline]
24163 fn cast(syntax: SyntaxNode) -> Option<Self> {
24164 if Self::can_cast(syntax.kind()) {
24165 Some(Self { syntax })
24166 } else {
24167 None
24168 }
24169 }
24170 #[inline]
24171 fn syntax(&self) -> &SyntaxNode {
24172 &self.syntax
24173 }
24174}
24175impl AstNode for NotNullConstraint {
24176 #[inline]
24177 fn can_cast(kind: SyntaxKind) -> bool {
24178 kind == SyntaxKind::NOT_NULL_CONSTRAINT
24179 }
24180 #[inline]
24181 fn cast(syntax: SyntaxNode) -> Option<Self> {
24182 if Self::can_cast(syntax.kind()) {
24183 Some(Self { syntax })
24184 } else {
24185 None
24186 }
24187 }
24188 #[inline]
24189 fn syntax(&self) -> &SyntaxNode {
24190 &self.syntax
24191 }
24192}
24193impl AstNode for NotOf {
24194 #[inline]
24195 fn can_cast(kind: SyntaxKind) -> bool {
24196 kind == SyntaxKind::NOT_OF
24197 }
24198 #[inline]
24199 fn cast(syntax: SyntaxNode) -> Option<Self> {
24200 if Self::can_cast(syntax.kind()) {
24201 Some(Self { syntax })
24202 } else {
24203 None
24204 }
24205 }
24206 #[inline]
24207 fn syntax(&self) -> &SyntaxNode {
24208 &self.syntax
24209 }
24210}
24211impl AstNode for NotSimilarTo {
24212 #[inline]
24213 fn can_cast(kind: SyntaxKind) -> bool {
24214 kind == SyntaxKind::NOT_SIMILAR_TO
24215 }
24216 #[inline]
24217 fn cast(syntax: SyntaxNode) -> Option<Self> {
24218 if Self::can_cast(syntax.kind()) {
24219 Some(Self { syntax })
24220 } else {
24221 None
24222 }
24223 }
24224 #[inline]
24225 fn syntax(&self) -> &SyntaxNode {
24226 &self.syntax
24227 }
24228}
24229impl AstNode for NotValid {
24230 #[inline]
24231 fn can_cast(kind: SyntaxKind) -> bool {
24232 kind == SyntaxKind::NOT_VALID
24233 }
24234 #[inline]
24235 fn cast(syntax: SyntaxNode) -> Option<Self> {
24236 if Self::can_cast(syntax.kind()) {
24237 Some(Self { syntax })
24238 } else {
24239 None
24240 }
24241 }
24242 #[inline]
24243 fn syntax(&self) -> &SyntaxNode {
24244 &self.syntax
24245 }
24246}
24247impl AstNode for Notify {
24248 #[inline]
24249 fn can_cast(kind: SyntaxKind) -> bool {
24250 kind == SyntaxKind::NOTIFY
24251 }
24252 #[inline]
24253 fn cast(syntax: SyntaxNode) -> Option<Self> {
24254 if Self::can_cast(syntax.kind()) {
24255 Some(Self { syntax })
24256 } else {
24257 None
24258 }
24259 }
24260 #[inline]
24261 fn syntax(&self) -> &SyntaxNode {
24262 &self.syntax
24263 }
24264}
24265impl AstNode for NullConstraint {
24266 #[inline]
24267 fn can_cast(kind: SyntaxKind) -> bool {
24268 kind == SyntaxKind::NULL_CONSTRAINT
24269 }
24270 #[inline]
24271 fn cast(syntax: SyntaxNode) -> Option<Self> {
24272 if Self::can_cast(syntax.kind()) {
24273 Some(Self { syntax })
24274 } else {
24275 None
24276 }
24277 }
24278 #[inline]
24279 fn syntax(&self) -> &SyntaxNode {
24280 &self.syntax
24281 }
24282}
24283impl AstNode for NullsDistinct {
24284 #[inline]
24285 fn can_cast(kind: SyntaxKind) -> bool {
24286 kind == SyntaxKind::NULLS_DISTINCT
24287 }
24288 #[inline]
24289 fn cast(syntax: SyntaxNode) -> Option<Self> {
24290 if Self::can_cast(syntax.kind()) {
24291 Some(Self { syntax })
24292 } else {
24293 None
24294 }
24295 }
24296 #[inline]
24297 fn syntax(&self) -> &SyntaxNode {
24298 &self.syntax
24299 }
24300}
24301impl AstNode for NullsFirst {
24302 #[inline]
24303 fn can_cast(kind: SyntaxKind) -> bool {
24304 kind == SyntaxKind::NULLS_FIRST
24305 }
24306 #[inline]
24307 fn cast(syntax: SyntaxNode) -> Option<Self> {
24308 if Self::can_cast(syntax.kind()) {
24309 Some(Self { syntax })
24310 } else {
24311 None
24312 }
24313 }
24314 #[inline]
24315 fn syntax(&self) -> &SyntaxNode {
24316 &self.syntax
24317 }
24318}
24319impl AstNode for NullsLast {
24320 #[inline]
24321 fn can_cast(kind: SyntaxKind) -> bool {
24322 kind == SyntaxKind::NULLS_LAST
24323 }
24324 #[inline]
24325 fn cast(syntax: SyntaxNode) -> Option<Self> {
24326 if Self::can_cast(syntax.kind()) {
24327 Some(Self { syntax })
24328 } else {
24329 None
24330 }
24331 }
24332 #[inline]
24333 fn syntax(&self) -> &SyntaxNode {
24334 &self.syntax
24335 }
24336}
24337impl AstNode for NullsNotDistinct {
24338 #[inline]
24339 fn can_cast(kind: SyntaxKind) -> bool {
24340 kind == SyntaxKind::NULLS_NOT_DISTINCT
24341 }
24342 #[inline]
24343 fn cast(syntax: SyntaxNode) -> Option<Self> {
24344 if Self::can_cast(syntax.kind()) {
24345 Some(Self { syntax })
24346 } else {
24347 None
24348 }
24349 }
24350 #[inline]
24351 fn syntax(&self) -> &SyntaxNode {
24352 &self.syntax
24353 }
24354}
24355impl AstNode for OfType {
24356 #[inline]
24357 fn can_cast(kind: SyntaxKind) -> bool {
24358 kind == SyntaxKind::OF_TYPE
24359 }
24360 #[inline]
24361 fn cast(syntax: SyntaxNode) -> Option<Self> {
24362 if Self::can_cast(syntax.kind()) {
24363 Some(Self { syntax })
24364 } else {
24365 None
24366 }
24367 }
24368 #[inline]
24369 fn syntax(&self) -> &SyntaxNode {
24370 &self.syntax
24371 }
24372}
24373impl AstNode for OffsetClause {
24374 #[inline]
24375 fn can_cast(kind: SyntaxKind) -> bool {
24376 kind == SyntaxKind::OFFSET_CLAUSE
24377 }
24378 #[inline]
24379 fn cast(syntax: SyntaxNode) -> Option<Self> {
24380 if Self::can_cast(syntax.kind()) {
24381 Some(Self { syntax })
24382 } else {
24383 None
24384 }
24385 }
24386 #[inline]
24387 fn syntax(&self) -> &SyntaxNode {
24388 &self.syntax
24389 }
24390}
24391impl AstNode for OnClause {
24392 #[inline]
24393 fn can_cast(kind: SyntaxKind) -> bool {
24394 kind == SyntaxKind::ON_CLAUSE
24395 }
24396 #[inline]
24397 fn cast(syntax: SyntaxNode) -> Option<Self> {
24398 if Self::can_cast(syntax.kind()) {
24399 Some(Self { syntax })
24400 } else {
24401 None
24402 }
24403 }
24404 #[inline]
24405 fn syntax(&self) -> &SyntaxNode {
24406 &self.syntax
24407 }
24408}
24409impl AstNode for OnCommit {
24410 #[inline]
24411 fn can_cast(kind: SyntaxKind) -> bool {
24412 kind == SyntaxKind::ON_COMMIT
24413 }
24414 #[inline]
24415 fn cast(syntax: SyntaxNode) -> Option<Self> {
24416 if Self::can_cast(syntax.kind()) {
24417 Some(Self { syntax })
24418 } else {
24419 None
24420 }
24421 }
24422 #[inline]
24423 fn syntax(&self) -> &SyntaxNode {
24424 &self.syntax
24425 }
24426}
24427impl AstNode for OnConflictClause {
24428 #[inline]
24429 fn can_cast(kind: SyntaxKind) -> bool {
24430 kind == SyntaxKind::ON_CONFLICT_CLAUSE
24431 }
24432 #[inline]
24433 fn cast(syntax: SyntaxNode) -> Option<Self> {
24434 if Self::can_cast(syntax.kind()) {
24435 Some(Self { syntax })
24436 } else {
24437 None
24438 }
24439 }
24440 #[inline]
24441 fn syntax(&self) -> &SyntaxNode {
24442 &self.syntax
24443 }
24444}
24445impl AstNode for OnDeleteAction {
24446 #[inline]
24447 fn can_cast(kind: SyntaxKind) -> bool {
24448 kind == SyntaxKind::ON_DELETE_ACTION
24449 }
24450 #[inline]
24451 fn cast(syntax: SyntaxNode) -> Option<Self> {
24452 if Self::can_cast(syntax.kind()) {
24453 Some(Self { syntax })
24454 } else {
24455 None
24456 }
24457 }
24458 #[inline]
24459 fn syntax(&self) -> &SyntaxNode {
24460 &self.syntax
24461 }
24462}
24463impl AstNode for OnTable {
24464 #[inline]
24465 fn can_cast(kind: SyntaxKind) -> bool {
24466 kind == SyntaxKind::ON_TABLE
24467 }
24468 #[inline]
24469 fn cast(syntax: SyntaxNode) -> Option<Self> {
24470 if Self::can_cast(syntax.kind()) {
24471 Some(Self { syntax })
24472 } else {
24473 None
24474 }
24475 }
24476 #[inline]
24477 fn syntax(&self) -> &SyntaxNode {
24478 &self.syntax
24479 }
24480}
24481impl AstNode for OnUpdateAction {
24482 #[inline]
24483 fn can_cast(kind: SyntaxKind) -> bool {
24484 kind == SyntaxKind::ON_UPDATE_ACTION
24485 }
24486 #[inline]
24487 fn cast(syntax: SyntaxNode) -> Option<Self> {
24488 if Self::can_cast(syntax.kind()) {
24489 Some(Self { syntax })
24490 } else {
24491 None
24492 }
24493 }
24494 #[inline]
24495 fn syntax(&self) -> &SyntaxNode {
24496 &self.syntax
24497 }
24498}
24499impl AstNode for Op {
24500 #[inline]
24501 fn can_cast(kind: SyntaxKind) -> bool {
24502 kind == SyntaxKind::OP
24503 }
24504 #[inline]
24505 fn cast(syntax: SyntaxNode) -> Option<Self> {
24506 if Self::can_cast(syntax.kind()) {
24507 Some(Self { syntax })
24508 } else {
24509 None
24510 }
24511 }
24512 #[inline]
24513 fn syntax(&self) -> &SyntaxNode {
24514 &self.syntax
24515 }
24516}
24517impl AstNode for OpClassOption {
24518 #[inline]
24519 fn can_cast(kind: SyntaxKind) -> bool {
24520 kind == SyntaxKind::OP_CLASS_OPTION
24521 }
24522 #[inline]
24523 fn cast(syntax: SyntaxNode) -> Option<Self> {
24524 if Self::can_cast(syntax.kind()) {
24525 Some(Self { syntax })
24526 } else {
24527 None
24528 }
24529 }
24530 #[inline]
24531 fn syntax(&self) -> &SyntaxNode {
24532 &self.syntax
24533 }
24534}
24535impl AstNode for OpSig {
24536 #[inline]
24537 fn can_cast(kind: SyntaxKind) -> bool {
24538 kind == SyntaxKind::OP_SIG
24539 }
24540 #[inline]
24541 fn cast(syntax: SyntaxNode) -> Option<Self> {
24542 if Self::can_cast(syntax.kind()) {
24543 Some(Self { syntax })
24544 } else {
24545 None
24546 }
24547 }
24548 #[inline]
24549 fn syntax(&self) -> &SyntaxNode {
24550 &self.syntax
24551 }
24552}
24553impl AstNode for OpSigList {
24554 #[inline]
24555 fn can_cast(kind: SyntaxKind) -> bool {
24556 kind == SyntaxKind::OP_SIG_LIST
24557 }
24558 #[inline]
24559 fn cast(syntax: SyntaxNode) -> Option<Self> {
24560 if Self::can_cast(syntax.kind()) {
24561 Some(Self { syntax })
24562 } else {
24563 None
24564 }
24565 }
24566 #[inline]
24567 fn syntax(&self) -> &SyntaxNode {
24568 &self.syntax
24569 }
24570}
24571impl AstNode for OperatorCall {
24572 #[inline]
24573 fn can_cast(kind: SyntaxKind) -> bool {
24574 kind == SyntaxKind::OPERATOR_CALL
24575 }
24576 #[inline]
24577 fn cast(syntax: SyntaxNode) -> Option<Self> {
24578 if Self::can_cast(syntax.kind()) {
24579 Some(Self { syntax })
24580 } else {
24581 None
24582 }
24583 }
24584 #[inline]
24585 fn syntax(&self) -> &SyntaxNode {
24586 &self.syntax
24587 }
24588}
24589impl AstNode for OperatorClassOptionList {
24590 #[inline]
24591 fn can_cast(kind: SyntaxKind) -> bool {
24592 kind == SyntaxKind::OPERATOR_CLASS_OPTION_LIST
24593 }
24594 #[inline]
24595 fn cast(syntax: SyntaxNode) -> Option<Self> {
24596 if Self::can_cast(syntax.kind()) {
24597 Some(Self { syntax })
24598 } else {
24599 None
24600 }
24601 }
24602 #[inline]
24603 fn syntax(&self) -> &SyntaxNode {
24604 &self.syntax
24605 }
24606}
24607impl AstNode for OptionItem {
24608 #[inline]
24609 fn can_cast(kind: SyntaxKind) -> bool {
24610 kind == SyntaxKind::OPTION_ITEM
24611 }
24612 #[inline]
24613 fn cast(syntax: SyntaxNode) -> Option<Self> {
24614 if Self::can_cast(syntax.kind()) {
24615 Some(Self { syntax })
24616 } else {
24617 None
24618 }
24619 }
24620 #[inline]
24621 fn syntax(&self) -> &SyntaxNode {
24622 &self.syntax
24623 }
24624}
24625impl AstNode for OptionItemList {
24626 #[inline]
24627 fn can_cast(kind: SyntaxKind) -> bool {
24628 kind == SyntaxKind::OPTION_ITEM_LIST
24629 }
24630 #[inline]
24631 fn cast(syntax: SyntaxNode) -> Option<Self> {
24632 if Self::can_cast(syntax.kind()) {
24633 Some(Self { syntax })
24634 } else {
24635 None
24636 }
24637 }
24638 #[inline]
24639 fn syntax(&self) -> &SyntaxNode {
24640 &self.syntax
24641 }
24642}
24643impl AstNode for OrReplace {
24644 #[inline]
24645 fn can_cast(kind: SyntaxKind) -> bool {
24646 kind == SyntaxKind::OR_REPLACE
24647 }
24648 #[inline]
24649 fn cast(syntax: SyntaxNode) -> Option<Self> {
24650 if Self::can_cast(syntax.kind()) {
24651 Some(Self { syntax })
24652 } else {
24653 None
24654 }
24655 }
24656 #[inline]
24657 fn syntax(&self) -> &SyntaxNode {
24658 &self.syntax
24659 }
24660}
24661impl AstNode for OrderByClause {
24662 #[inline]
24663 fn can_cast(kind: SyntaxKind) -> bool {
24664 kind == SyntaxKind::ORDER_BY_CLAUSE
24665 }
24666 #[inline]
24667 fn cast(syntax: SyntaxNode) -> Option<Self> {
24668 if Self::can_cast(syntax.kind()) {
24669 Some(Self { syntax })
24670 } else {
24671 None
24672 }
24673 }
24674 #[inline]
24675 fn syntax(&self) -> &SyntaxNode {
24676 &self.syntax
24677 }
24678}
24679impl AstNode for OverClause {
24680 #[inline]
24681 fn can_cast(kind: SyntaxKind) -> bool {
24682 kind == SyntaxKind::OVER_CLAUSE
24683 }
24684 #[inline]
24685 fn cast(syntax: SyntaxNode) -> Option<Self> {
24686 if Self::can_cast(syntax.kind()) {
24687 Some(Self { syntax })
24688 } else {
24689 None
24690 }
24691 }
24692 #[inline]
24693 fn syntax(&self) -> &SyntaxNode {
24694 &self.syntax
24695 }
24696}
24697impl AstNode for OverlayFn {
24698 #[inline]
24699 fn can_cast(kind: SyntaxKind) -> bool {
24700 kind == SyntaxKind::OVERLAY_FN
24701 }
24702 #[inline]
24703 fn cast(syntax: SyntaxNode) -> Option<Self> {
24704 if Self::can_cast(syntax.kind()) {
24705 Some(Self { syntax })
24706 } else {
24707 None
24708 }
24709 }
24710 #[inline]
24711 fn syntax(&self) -> &SyntaxNode {
24712 &self.syntax
24713 }
24714}
24715impl AstNode for OwnedByRoles {
24716 #[inline]
24717 fn can_cast(kind: SyntaxKind) -> bool {
24718 kind == SyntaxKind::OWNED_BY_ROLES
24719 }
24720 #[inline]
24721 fn cast(syntax: SyntaxNode) -> Option<Self> {
24722 if Self::can_cast(syntax.kind()) {
24723 Some(Self { syntax })
24724 } else {
24725 None
24726 }
24727 }
24728 #[inline]
24729 fn syntax(&self) -> &SyntaxNode {
24730 &self.syntax
24731 }
24732}
24733impl AstNode for OwnerTo {
24734 #[inline]
24735 fn can_cast(kind: SyntaxKind) -> bool {
24736 kind == SyntaxKind::OWNER_TO
24737 }
24738 #[inline]
24739 fn cast(syntax: SyntaxNode) -> Option<Self> {
24740 if Self::can_cast(syntax.kind()) {
24741 Some(Self { syntax })
24742 } else {
24743 None
24744 }
24745 }
24746 #[inline]
24747 fn syntax(&self) -> &SyntaxNode {
24748 &self.syntax
24749 }
24750}
24751impl AstNode for ParallelFuncOption {
24752 #[inline]
24753 fn can_cast(kind: SyntaxKind) -> bool {
24754 kind == SyntaxKind::PARALLEL_FUNC_OPTION
24755 }
24756 #[inline]
24757 fn cast(syntax: SyntaxNode) -> Option<Self> {
24758 if Self::can_cast(syntax.kind()) {
24759 Some(Self { syntax })
24760 } else {
24761 None
24762 }
24763 }
24764 #[inline]
24765 fn syntax(&self) -> &SyntaxNode {
24766 &self.syntax
24767 }
24768}
24769impl AstNode for Param {
24770 #[inline]
24771 fn can_cast(kind: SyntaxKind) -> bool {
24772 kind == SyntaxKind::PARAM
24773 }
24774 #[inline]
24775 fn cast(syntax: SyntaxNode) -> Option<Self> {
24776 if Self::can_cast(syntax.kind()) {
24777 Some(Self { syntax })
24778 } else {
24779 None
24780 }
24781 }
24782 #[inline]
24783 fn syntax(&self) -> &SyntaxNode {
24784 &self.syntax
24785 }
24786}
24787impl AstNode for ParamDefault {
24788 #[inline]
24789 fn can_cast(kind: SyntaxKind) -> bool {
24790 kind == SyntaxKind::PARAM_DEFAULT
24791 }
24792 #[inline]
24793 fn cast(syntax: SyntaxNode) -> Option<Self> {
24794 if Self::can_cast(syntax.kind()) {
24795 Some(Self { syntax })
24796 } else {
24797 None
24798 }
24799 }
24800 #[inline]
24801 fn syntax(&self) -> &SyntaxNode {
24802 &self.syntax
24803 }
24804}
24805impl AstNode for ParamIn {
24806 #[inline]
24807 fn can_cast(kind: SyntaxKind) -> bool {
24808 kind == SyntaxKind::PARAM_IN
24809 }
24810 #[inline]
24811 fn cast(syntax: SyntaxNode) -> Option<Self> {
24812 if Self::can_cast(syntax.kind()) {
24813 Some(Self { syntax })
24814 } else {
24815 None
24816 }
24817 }
24818 #[inline]
24819 fn syntax(&self) -> &SyntaxNode {
24820 &self.syntax
24821 }
24822}
24823impl AstNode for ParamInOut {
24824 #[inline]
24825 fn can_cast(kind: SyntaxKind) -> bool {
24826 kind == SyntaxKind::PARAM_IN_OUT
24827 }
24828 #[inline]
24829 fn cast(syntax: SyntaxNode) -> Option<Self> {
24830 if Self::can_cast(syntax.kind()) {
24831 Some(Self { syntax })
24832 } else {
24833 None
24834 }
24835 }
24836 #[inline]
24837 fn syntax(&self) -> &SyntaxNode {
24838 &self.syntax
24839 }
24840}
24841impl AstNode for ParamList {
24842 #[inline]
24843 fn can_cast(kind: SyntaxKind) -> bool {
24844 kind == SyntaxKind::PARAM_LIST
24845 }
24846 #[inline]
24847 fn cast(syntax: SyntaxNode) -> Option<Self> {
24848 if Self::can_cast(syntax.kind()) {
24849 Some(Self { syntax })
24850 } else {
24851 None
24852 }
24853 }
24854 #[inline]
24855 fn syntax(&self) -> &SyntaxNode {
24856 &self.syntax
24857 }
24858}
24859impl AstNode for ParamOut {
24860 #[inline]
24861 fn can_cast(kind: SyntaxKind) -> bool {
24862 kind == SyntaxKind::PARAM_OUT
24863 }
24864 #[inline]
24865 fn cast(syntax: SyntaxNode) -> Option<Self> {
24866 if Self::can_cast(syntax.kind()) {
24867 Some(Self { syntax })
24868 } else {
24869 None
24870 }
24871 }
24872 #[inline]
24873 fn syntax(&self) -> &SyntaxNode {
24874 &self.syntax
24875 }
24876}
24877impl AstNode for ParamVariadic {
24878 #[inline]
24879 fn can_cast(kind: SyntaxKind) -> bool {
24880 kind == SyntaxKind::PARAM_VARIADIC
24881 }
24882 #[inline]
24883 fn cast(syntax: SyntaxNode) -> Option<Self> {
24884 if Self::can_cast(syntax.kind()) {
24885 Some(Self { syntax })
24886 } else {
24887 None
24888 }
24889 }
24890 #[inline]
24891 fn syntax(&self) -> &SyntaxNode {
24892 &self.syntax
24893 }
24894}
24895impl AstNode for ParenExpr {
24896 #[inline]
24897 fn can_cast(kind: SyntaxKind) -> bool {
24898 kind == SyntaxKind::PAREN_EXPR
24899 }
24900 #[inline]
24901 fn cast(syntax: SyntaxNode) -> Option<Self> {
24902 if Self::can_cast(syntax.kind()) {
24903 Some(Self { syntax })
24904 } else {
24905 None
24906 }
24907 }
24908 #[inline]
24909 fn syntax(&self) -> &SyntaxNode {
24910 &self.syntax
24911 }
24912}
24913impl AstNode for ParenSelect {
24914 #[inline]
24915 fn can_cast(kind: SyntaxKind) -> bool {
24916 kind == SyntaxKind::PAREN_SELECT
24917 }
24918 #[inline]
24919 fn cast(syntax: SyntaxNode) -> Option<Self> {
24920 if Self::can_cast(syntax.kind()) {
24921 Some(Self { syntax })
24922 } else {
24923 None
24924 }
24925 }
24926 #[inline]
24927 fn syntax(&self) -> &SyntaxNode {
24928 &self.syntax
24929 }
24930}
24931impl AstNode for Partition {
24932 #[inline]
24933 fn can_cast(kind: SyntaxKind) -> bool {
24934 kind == SyntaxKind::PARTITION
24935 }
24936 #[inline]
24937 fn cast(syntax: SyntaxNode) -> Option<Self> {
24938 if Self::can_cast(syntax.kind()) {
24939 Some(Self { syntax })
24940 } else {
24941 None
24942 }
24943 }
24944 #[inline]
24945 fn syntax(&self) -> &SyntaxNode {
24946 &self.syntax
24947 }
24948}
24949impl AstNode for PartitionBy {
24950 #[inline]
24951 fn can_cast(kind: SyntaxKind) -> bool {
24952 kind == SyntaxKind::PARTITION_BY
24953 }
24954 #[inline]
24955 fn cast(syntax: SyntaxNode) -> Option<Self> {
24956 if Self::can_cast(syntax.kind()) {
24957 Some(Self { syntax })
24958 } else {
24959 None
24960 }
24961 }
24962 #[inline]
24963 fn syntax(&self) -> &SyntaxNode {
24964 &self.syntax
24965 }
24966}
24967impl AstNode for PartitionDefault {
24968 #[inline]
24969 fn can_cast(kind: SyntaxKind) -> bool {
24970 kind == SyntaxKind::PARTITION_DEFAULT
24971 }
24972 #[inline]
24973 fn cast(syntax: SyntaxNode) -> Option<Self> {
24974 if Self::can_cast(syntax.kind()) {
24975 Some(Self { syntax })
24976 } else {
24977 None
24978 }
24979 }
24980 #[inline]
24981 fn syntax(&self) -> &SyntaxNode {
24982 &self.syntax
24983 }
24984}
24985impl AstNode for PartitionForValuesFrom {
24986 #[inline]
24987 fn can_cast(kind: SyntaxKind) -> bool {
24988 kind == SyntaxKind::PARTITION_FOR_VALUES_FROM
24989 }
24990 #[inline]
24991 fn cast(syntax: SyntaxNode) -> Option<Self> {
24992 if Self::can_cast(syntax.kind()) {
24993 Some(Self { syntax })
24994 } else {
24995 None
24996 }
24997 }
24998 #[inline]
24999 fn syntax(&self) -> &SyntaxNode {
25000 &self.syntax
25001 }
25002}
25003impl AstNode for PartitionForValuesIn {
25004 #[inline]
25005 fn can_cast(kind: SyntaxKind) -> bool {
25006 kind == SyntaxKind::PARTITION_FOR_VALUES_IN
25007 }
25008 #[inline]
25009 fn cast(syntax: SyntaxNode) -> Option<Self> {
25010 if Self::can_cast(syntax.kind()) {
25011 Some(Self { syntax })
25012 } else {
25013 None
25014 }
25015 }
25016 #[inline]
25017 fn syntax(&self) -> &SyntaxNode {
25018 &self.syntax
25019 }
25020}
25021impl AstNode for PartitionForValuesWith {
25022 #[inline]
25023 fn can_cast(kind: SyntaxKind) -> bool {
25024 kind == SyntaxKind::PARTITION_FOR_VALUES_WITH
25025 }
25026 #[inline]
25027 fn cast(syntax: SyntaxNode) -> Option<Self> {
25028 if Self::can_cast(syntax.kind()) {
25029 Some(Self { syntax })
25030 } else {
25031 None
25032 }
25033 }
25034 #[inline]
25035 fn syntax(&self) -> &SyntaxNode {
25036 &self.syntax
25037 }
25038}
25039impl AstNode for PartitionItem {
25040 #[inline]
25041 fn can_cast(kind: SyntaxKind) -> bool {
25042 kind == SyntaxKind::PARTITION_ITEM
25043 }
25044 #[inline]
25045 fn cast(syntax: SyntaxNode) -> Option<Self> {
25046 if Self::can_cast(syntax.kind()) {
25047 Some(Self { syntax })
25048 } else {
25049 None
25050 }
25051 }
25052 #[inline]
25053 fn syntax(&self) -> &SyntaxNode {
25054 &self.syntax
25055 }
25056}
25057impl AstNode for PartitionItemList {
25058 #[inline]
25059 fn can_cast(kind: SyntaxKind) -> bool {
25060 kind == SyntaxKind::PARTITION_ITEM_LIST
25061 }
25062 #[inline]
25063 fn cast(syntax: SyntaxNode) -> Option<Self> {
25064 if Self::can_cast(syntax.kind()) {
25065 Some(Self { syntax })
25066 } else {
25067 None
25068 }
25069 }
25070 #[inline]
25071 fn syntax(&self) -> &SyntaxNode {
25072 &self.syntax
25073 }
25074}
25075impl AstNode for PartitionList {
25076 #[inline]
25077 fn can_cast(kind: SyntaxKind) -> bool {
25078 kind == SyntaxKind::PARTITION_LIST
25079 }
25080 #[inline]
25081 fn cast(syntax: SyntaxNode) -> Option<Self> {
25082 if Self::can_cast(syntax.kind()) {
25083 Some(Self { syntax })
25084 } else {
25085 None
25086 }
25087 }
25088 #[inline]
25089 fn syntax(&self) -> &SyntaxNode {
25090 &self.syntax
25091 }
25092}
25093impl AstNode for PartitionOf {
25094 #[inline]
25095 fn can_cast(kind: SyntaxKind) -> bool {
25096 kind == SyntaxKind::PARTITION_OF
25097 }
25098 #[inline]
25099 fn cast(syntax: SyntaxNode) -> Option<Self> {
25100 if Self::can_cast(syntax.kind()) {
25101 Some(Self { syntax })
25102 } else {
25103 None
25104 }
25105 }
25106 #[inline]
25107 fn syntax(&self) -> &SyntaxNode {
25108 &self.syntax
25109 }
25110}
25111impl AstNode for Path {
25112 #[inline]
25113 fn can_cast(kind: SyntaxKind) -> bool {
25114 kind == SyntaxKind::PATH
25115 }
25116 #[inline]
25117 fn cast(syntax: SyntaxNode) -> Option<Self> {
25118 if Self::can_cast(syntax.kind()) {
25119 Some(Self { syntax })
25120 } else {
25121 None
25122 }
25123 }
25124 #[inline]
25125 fn syntax(&self) -> &SyntaxNode {
25126 &self.syntax
25127 }
25128}
25129impl AstNode for PathSegment {
25130 #[inline]
25131 fn can_cast(kind: SyntaxKind) -> bool {
25132 kind == SyntaxKind::PATH_SEGMENT
25133 }
25134 #[inline]
25135 fn cast(syntax: SyntaxNode) -> Option<Self> {
25136 if Self::can_cast(syntax.kind()) {
25137 Some(Self { syntax })
25138 } else {
25139 None
25140 }
25141 }
25142 #[inline]
25143 fn syntax(&self) -> &SyntaxNode {
25144 &self.syntax
25145 }
25146}
25147impl AstNode for PathType {
25148 #[inline]
25149 fn can_cast(kind: SyntaxKind) -> bool {
25150 kind == SyntaxKind::PATH_TYPE
25151 }
25152 #[inline]
25153 fn cast(syntax: SyntaxNode) -> Option<Self> {
25154 if Self::can_cast(syntax.kind()) {
25155 Some(Self { syntax })
25156 } else {
25157 None
25158 }
25159 }
25160 #[inline]
25161 fn syntax(&self) -> &SyntaxNode {
25162 &self.syntax
25163 }
25164}
25165impl AstNode for PercentType {
25166 #[inline]
25167 fn can_cast(kind: SyntaxKind) -> bool {
25168 kind == SyntaxKind::PERCENT_TYPE
25169 }
25170 #[inline]
25171 fn cast(syntax: SyntaxNode) -> Option<Self> {
25172 if Self::can_cast(syntax.kind()) {
25173 Some(Self { syntax })
25174 } else {
25175 None
25176 }
25177 }
25178 #[inline]
25179 fn syntax(&self) -> &SyntaxNode {
25180 &self.syntax
25181 }
25182}
25183impl AstNode for PercentTypeClause {
25184 #[inline]
25185 fn can_cast(kind: SyntaxKind) -> bool {
25186 kind == SyntaxKind::PERCENT_TYPE_CLAUSE
25187 }
25188 #[inline]
25189 fn cast(syntax: SyntaxNode) -> Option<Self> {
25190 if Self::can_cast(syntax.kind()) {
25191 Some(Self { syntax })
25192 } else {
25193 None
25194 }
25195 }
25196 #[inline]
25197 fn syntax(&self) -> &SyntaxNode {
25198 &self.syntax
25199 }
25200}
25201impl AstNode for PositionFn {
25202 #[inline]
25203 fn can_cast(kind: SyntaxKind) -> bool {
25204 kind == SyntaxKind::POSITION_FN
25205 }
25206 #[inline]
25207 fn cast(syntax: SyntaxNode) -> Option<Self> {
25208 if Self::can_cast(syntax.kind()) {
25209 Some(Self { syntax })
25210 } else {
25211 None
25212 }
25213 }
25214 #[inline]
25215 fn syntax(&self) -> &SyntaxNode {
25216 &self.syntax
25217 }
25218}
25219impl AstNode for PostfixExpr {
25220 #[inline]
25221 fn can_cast(kind: SyntaxKind) -> bool {
25222 kind == SyntaxKind::POSTFIX_EXPR
25223 }
25224 #[inline]
25225 fn cast(syntax: SyntaxNode) -> Option<Self> {
25226 if Self::can_cast(syntax.kind()) {
25227 Some(Self { syntax })
25228 } else {
25229 None
25230 }
25231 }
25232 #[inline]
25233 fn syntax(&self) -> &SyntaxNode {
25234 &self.syntax
25235 }
25236}
25237impl AstNode for PrefixExpr {
25238 #[inline]
25239 fn can_cast(kind: SyntaxKind) -> bool {
25240 kind == SyntaxKind::PREFIX_EXPR
25241 }
25242 #[inline]
25243 fn cast(syntax: SyntaxNode) -> Option<Self> {
25244 if Self::can_cast(syntax.kind()) {
25245 Some(Self { syntax })
25246 } else {
25247 None
25248 }
25249 }
25250 #[inline]
25251 fn syntax(&self) -> &SyntaxNode {
25252 &self.syntax
25253 }
25254}
25255impl AstNode for Prepare {
25256 #[inline]
25257 fn can_cast(kind: SyntaxKind) -> bool {
25258 kind == SyntaxKind::PREPARE
25259 }
25260 #[inline]
25261 fn cast(syntax: SyntaxNode) -> Option<Self> {
25262 if Self::can_cast(syntax.kind()) {
25263 Some(Self { syntax })
25264 } else {
25265 None
25266 }
25267 }
25268 #[inline]
25269 fn syntax(&self) -> &SyntaxNode {
25270 &self.syntax
25271 }
25272}
25273impl AstNode for PrepareTransaction {
25274 #[inline]
25275 fn can_cast(kind: SyntaxKind) -> bool {
25276 kind == SyntaxKind::PREPARE_TRANSACTION
25277 }
25278 #[inline]
25279 fn cast(syntax: SyntaxNode) -> Option<Self> {
25280 if Self::can_cast(syntax.kind()) {
25281 Some(Self { syntax })
25282 } else {
25283 None
25284 }
25285 }
25286 #[inline]
25287 fn syntax(&self) -> &SyntaxNode {
25288 &self.syntax
25289 }
25290}
25291impl AstNode for PreserveRows {
25292 #[inline]
25293 fn can_cast(kind: SyntaxKind) -> bool {
25294 kind == SyntaxKind::PRESERVE_ROWS
25295 }
25296 #[inline]
25297 fn cast(syntax: SyntaxNode) -> Option<Self> {
25298 if Self::can_cast(syntax.kind()) {
25299 Some(Self { syntax })
25300 } else {
25301 None
25302 }
25303 }
25304 #[inline]
25305 fn syntax(&self) -> &SyntaxNode {
25306 &self.syntax
25307 }
25308}
25309impl AstNode for PrimaryKeyConstraint {
25310 #[inline]
25311 fn can_cast(kind: SyntaxKind) -> bool {
25312 kind == SyntaxKind::PRIMARY_KEY_CONSTRAINT
25313 }
25314 #[inline]
25315 fn cast(syntax: SyntaxNode) -> Option<Self> {
25316 if Self::can_cast(syntax.kind()) {
25317 Some(Self { syntax })
25318 } else {
25319 None
25320 }
25321 }
25322 #[inline]
25323 fn syntax(&self) -> &SyntaxNode {
25324 &self.syntax
25325 }
25326}
25327impl AstNode for PrivilegeTarget {
25328 #[inline]
25329 fn can_cast(kind: SyntaxKind) -> bool {
25330 kind == SyntaxKind::PRIVILEGE_TARGET
25331 }
25332 #[inline]
25333 fn cast(syntax: SyntaxNode) -> Option<Self> {
25334 if Self::can_cast(syntax.kind()) {
25335 Some(Self { syntax })
25336 } else {
25337 None
25338 }
25339 }
25340 #[inline]
25341 fn syntax(&self) -> &SyntaxNode {
25342 &self.syntax
25343 }
25344}
25345impl AstNode for Privileges {
25346 #[inline]
25347 fn can_cast(kind: SyntaxKind) -> bool {
25348 kind == SyntaxKind::PRIVILEGES
25349 }
25350 #[inline]
25351 fn cast(syntax: SyntaxNode) -> Option<Self> {
25352 if Self::can_cast(syntax.kind()) {
25353 Some(Self { syntax })
25354 } else {
25355 None
25356 }
25357 }
25358 #[inline]
25359 fn syntax(&self) -> &SyntaxNode {
25360 &self.syntax
25361 }
25362}
25363impl AstNode for PublicationObject {
25364 #[inline]
25365 fn can_cast(kind: SyntaxKind) -> bool {
25366 kind == SyntaxKind::PUBLICATION_OBJECT
25367 }
25368 #[inline]
25369 fn cast(syntax: SyntaxNode) -> Option<Self> {
25370 if Self::can_cast(syntax.kind()) {
25371 Some(Self { syntax })
25372 } else {
25373 None
25374 }
25375 }
25376 #[inline]
25377 fn syntax(&self) -> &SyntaxNode {
25378 &self.syntax
25379 }
25380}
25381impl AstNode for ReadCommitted {
25382 #[inline]
25383 fn can_cast(kind: SyntaxKind) -> bool {
25384 kind == SyntaxKind::READ_COMMITTED
25385 }
25386 #[inline]
25387 fn cast(syntax: SyntaxNode) -> Option<Self> {
25388 if Self::can_cast(syntax.kind()) {
25389 Some(Self { syntax })
25390 } else {
25391 None
25392 }
25393 }
25394 #[inline]
25395 fn syntax(&self) -> &SyntaxNode {
25396 &self.syntax
25397 }
25398}
25399impl AstNode for ReadOnly {
25400 #[inline]
25401 fn can_cast(kind: SyntaxKind) -> bool {
25402 kind == SyntaxKind::READ_ONLY
25403 }
25404 #[inline]
25405 fn cast(syntax: SyntaxNode) -> Option<Self> {
25406 if Self::can_cast(syntax.kind()) {
25407 Some(Self { syntax })
25408 } else {
25409 None
25410 }
25411 }
25412 #[inline]
25413 fn syntax(&self) -> &SyntaxNode {
25414 &self.syntax
25415 }
25416}
25417impl AstNode for ReadUncommitted {
25418 #[inline]
25419 fn can_cast(kind: SyntaxKind) -> bool {
25420 kind == SyntaxKind::READ_UNCOMMITTED
25421 }
25422 #[inline]
25423 fn cast(syntax: SyntaxNode) -> Option<Self> {
25424 if Self::can_cast(syntax.kind()) {
25425 Some(Self { syntax })
25426 } else {
25427 None
25428 }
25429 }
25430 #[inline]
25431 fn syntax(&self) -> &SyntaxNode {
25432 &self.syntax
25433 }
25434}
25435impl AstNode for ReadWrite {
25436 #[inline]
25437 fn can_cast(kind: SyntaxKind) -> bool {
25438 kind == SyntaxKind::READ_WRITE
25439 }
25440 #[inline]
25441 fn cast(syntax: SyntaxNode) -> Option<Self> {
25442 if Self::can_cast(syntax.kind()) {
25443 Some(Self { syntax })
25444 } else {
25445 None
25446 }
25447 }
25448 #[inline]
25449 fn syntax(&self) -> &SyntaxNode {
25450 &self.syntax
25451 }
25452}
25453impl AstNode for Reassign {
25454 #[inline]
25455 fn can_cast(kind: SyntaxKind) -> bool {
25456 kind == SyntaxKind::REASSIGN
25457 }
25458 #[inline]
25459 fn cast(syntax: SyntaxNode) -> Option<Self> {
25460 if Self::can_cast(syntax.kind()) {
25461 Some(Self { syntax })
25462 } else {
25463 None
25464 }
25465 }
25466 #[inline]
25467 fn syntax(&self) -> &SyntaxNode {
25468 &self.syntax
25469 }
25470}
25471impl AstNode for ReferencesConstraint {
25472 #[inline]
25473 fn can_cast(kind: SyntaxKind) -> bool {
25474 kind == SyntaxKind::REFERENCES_CONSTRAINT
25475 }
25476 #[inline]
25477 fn cast(syntax: SyntaxNode) -> Option<Self> {
25478 if Self::can_cast(syntax.kind()) {
25479 Some(Self { syntax })
25480 } else {
25481 None
25482 }
25483 }
25484 #[inline]
25485 fn syntax(&self) -> &SyntaxNode {
25486 &self.syntax
25487 }
25488}
25489impl AstNode for Referencing {
25490 #[inline]
25491 fn can_cast(kind: SyntaxKind) -> bool {
25492 kind == SyntaxKind::REFERENCING
25493 }
25494 #[inline]
25495 fn cast(syntax: SyntaxNode) -> Option<Self> {
25496 if Self::can_cast(syntax.kind()) {
25497 Some(Self { syntax })
25498 } else {
25499 None
25500 }
25501 }
25502 #[inline]
25503 fn syntax(&self) -> &SyntaxNode {
25504 &self.syntax
25505 }
25506}
25507impl AstNode for ReferencingTable {
25508 #[inline]
25509 fn can_cast(kind: SyntaxKind) -> bool {
25510 kind == SyntaxKind::REFERENCING_TABLE
25511 }
25512 #[inline]
25513 fn cast(syntax: SyntaxNode) -> Option<Self> {
25514 if Self::can_cast(syntax.kind()) {
25515 Some(Self { syntax })
25516 } else {
25517 None
25518 }
25519 }
25520 #[inline]
25521 fn syntax(&self) -> &SyntaxNode {
25522 &self.syntax
25523 }
25524}
25525impl AstNode for Refresh {
25526 #[inline]
25527 fn can_cast(kind: SyntaxKind) -> bool {
25528 kind == SyntaxKind::REFRESH
25529 }
25530 #[inline]
25531 fn cast(syntax: SyntaxNode) -> Option<Self> {
25532 if Self::can_cast(syntax.kind()) {
25533 Some(Self { syntax })
25534 } else {
25535 None
25536 }
25537 }
25538 #[inline]
25539 fn syntax(&self) -> &SyntaxNode {
25540 &self.syntax
25541 }
25542}
25543impl AstNode for RefreshCollationVersion {
25544 #[inline]
25545 fn can_cast(kind: SyntaxKind) -> bool {
25546 kind == SyntaxKind::REFRESH_COLLATION_VERSION
25547 }
25548 #[inline]
25549 fn cast(syntax: SyntaxNode) -> Option<Self> {
25550 if Self::can_cast(syntax.kind()) {
25551 Some(Self { syntax })
25552 } else {
25553 None
25554 }
25555 }
25556 #[inline]
25557 fn syntax(&self) -> &SyntaxNode {
25558 &self.syntax
25559 }
25560}
25561impl AstNode for RefreshVersion {
25562 #[inline]
25563 fn can_cast(kind: SyntaxKind) -> bool {
25564 kind == SyntaxKind::REFRESH_VERSION
25565 }
25566 #[inline]
25567 fn cast(syntax: SyntaxNode) -> Option<Self> {
25568 if Self::can_cast(syntax.kind()) {
25569 Some(Self { syntax })
25570 } else {
25571 None
25572 }
25573 }
25574 #[inline]
25575 fn syntax(&self) -> &SyntaxNode {
25576 &self.syntax
25577 }
25578}
25579impl AstNode for Reindex {
25580 #[inline]
25581 fn can_cast(kind: SyntaxKind) -> bool {
25582 kind == SyntaxKind::REINDEX
25583 }
25584 #[inline]
25585 fn cast(syntax: SyntaxNode) -> Option<Self> {
25586 if Self::can_cast(syntax.kind()) {
25587 Some(Self { syntax })
25588 } else {
25589 None
25590 }
25591 }
25592 #[inline]
25593 fn syntax(&self) -> &SyntaxNode {
25594 &self.syntax
25595 }
25596}
25597impl AstNode for RelationName {
25598 #[inline]
25599 fn can_cast(kind: SyntaxKind) -> bool {
25600 kind == SyntaxKind::RELATION_NAME
25601 }
25602 #[inline]
25603 fn cast(syntax: SyntaxNode) -> Option<Self> {
25604 if Self::can_cast(syntax.kind()) {
25605 Some(Self { syntax })
25606 } else {
25607 None
25608 }
25609 }
25610 #[inline]
25611 fn syntax(&self) -> &SyntaxNode {
25612 &self.syntax
25613 }
25614}
25615impl AstNode for ReleaseSavepoint {
25616 #[inline]
25617 fn can_cast(kind: SyntaxKind) -> bool {
25618 kind == SyntaxKind::RELEASE_SAVEPOINT
25619 }
25620 #[inline]
25621 fn cast(syntax: SyntaxNode) -> Option<Self> {
25622 if Self::can_cast(syntax.kind()) {
25623 Some(Self { syntax })
25624 } else {
25625 None
25626 }
25627 }
25628 #[inline]
25629 fn syntax(&self) -> &SyntaxNode {
25630 &self.syntax
25631 }
25632}
25633impl AstNode for RenameColumn {
25634 #[inline]
25635 fn can_cast(kind: SyntaxKind) -> bool {
25636 kind == SyntaxKind::RENAME_COLUMN
25637 }
25638 #[inline]
25639 fn cast(syntax: SyntaxNode) -> Option<Self> {
25640 if Self::can_cast(syntax.kind()) {
25641 Some(Self { syntax })
25642 } else {
25643 None
25644 }
25645 }
25646 #[inline]
25647 fn syntax(&self) -> &SyntaxNode {
25648 &self.syntax
25649 }
25650}
25651impl AstNode for RenameConstraint {
25652 #[inline]
25653 fn can_cast(kind: SyntaxKind) -> bool {
25654 kind == SyntaxKind::RENAME_CONSTRAINT
25655 }
25656 #[inline]
25657 fn cast(syntax: SyntaxNode) -> Option<Self> {
25658 if Self::can_cast(syntax.kind()) {
25659 Some(Self { syntax })
25660 } else {
25661 None
25662 }
25663 }
25664 #[inline]
25665 fn syntax(&self) -> &SyntaxNode {
25666 &self.syntax
25667 }
25668}
25669impl AstNode for RenameTo {
25670 #[inline]
25671 fn can_cast(kind: SyntaxKind) -> bool {
25672 kind == SyntaxKind::RENAME_TO
25673 }
25674 #[inline]
25675 fn cast(syntax: SyntaxNode) -> Option<Self> {
25676 if Self::can_cast(syntax.kind()) {
25677 Some(Self { syntax })
25678 } else {
25679 None
25680 }
25681 }
25682 #[inline]
25683 fn syntax(&self) -> &SyntaxNode {
25684 &self.syntax
25685 }
25686}
25687impl AstNode for RepeatableClause {
25688 #[inline]
25689 fn can_cast(kind: SyntaxKind) -> bool {
25690 kind == SyntaxKind::REPEATABLE_CLAUSE
25691 }
25692 #[inline]
25693 fn cast(syntax: SyntaxNode) -> Option<Self> {
25694 if Self::can_cast(syntax.kind()) {
25695 Some(Self { syntax })
25696 } else {
25697 None
25698 }
25699 }
25700 #[inline]
25701 fn syntax(&self) -> &SyntaxNode {
25702 &self.syntax
25703 }
25704}
25705impl AstNode for RepeatableRead {
25706 #[inline]
25707 fn can_cast(kind: SyntaxKind) -> bool {
25708 kind == SyntaxKind::REPEATABLE_READ
25709 }
25710 #[inline]
25711 fn cast(syntax: SyntaxNode) -> Option<Self> {
25712 if Self::can_cast(syntax.kind()) {
25713 Some(Self { syntax })
25714 } else {
25715 None
25716 }
25717 }
25718 #[inline]
25719 fn syntax(&self) -> &SyntaxNode {
25720 &self.syntax
25721 }
25722}
25723impl AstNode for ReplicaIdentity {
25724 #[inline]
25725 fn can_cast(kind: SyntaxKind) -> bool {
25726 kind == SyntaxKind::REPLICA_IDENTITY
25727 }
25728 #[inline]
25729 fn cast(syntax: SyntaxNode) -> Option<Self> {
25730 if Self::can_cast(syntax.kind()) {
25731 Some(Self { syntax })
25732 } else {
25733 None
25734 }
25735 }
25736 #[inline]
25737 fn syntax(&self) -> &SyntaxNode {
25738 &self.syntax
25739 }
25740}
25741impl AstNode for Reset {
25742 #[inline]
25743 fn can_cast(kind: SyntaxKind) -> bool {
25744 kind == SyntaxKind::RESET
25745 }
25746 #[inline]
25747 fn cast(syntax: SyntaxNode) -> Option<Self> {
25748 if Self::can_cast(syntax.kind()) {
25749 Some(Self { syntax })
25750 } else {
25751 None
25752 }
25753 }
25754 #[inline]
25755 fn syntax(&self) -> &SyntaxNode {
25756 &self.syntax
25757 }
25758}
25759impl AstNode for ResetConfigParam {
25760 #[inline]
25761 fn can_cast(kind: SyntaxKind) -> bool {
25762 kind == SyntaxKind::RESET_CONFIG_PARAM
25763 }
25764 #[inline]
25765 fn cast(syntax: SyntaxNode) -> Option<Self> {
25766 if Self::can_cast(syntax.kind()) {
25767 Some(Self { syntax })
25768 } else {
25769 None
25770 }
25771 }
25772 #[inline]
25773 fn syntax(&self) -> &SyntaxNode {
25774 &self.syntax
25775 }
25776}
25777impl AstNode for ResetFuncOption {
25778 #[inline]
25779 fn can_cast(kind: SyntaxKind) -> bool {
25780 kind == SyntaxKind::RESET_FUNC_OPTION
25781 }
25782 #[inline]
25783 fn cast(syntax: SyntaxNode) -> Option<Self> {
25784 if Self::can_cast(syntax.kind()) {
25785 Some(Self { syntax })
25786 } else {
25787 None
25788 }
25789 }
25790 #[inline]
25791 fn syntax(&self) -> &SyntaxNode {
25792 &self.syntax
25793 }
25794}
25795impl AstNode for ResetOptions {
25796 #[inline]
25797 fn can_cast(kind: SyntaxKind) -> bool {
25798 kind == SyntaxKind::RESET_OPTIONS
25799 }
25800 #[inline]
25801 fn cast(syntax: SyntaxNode) -> Option<Self> {
25802 if Self::can_cast(syntax.kind()) {
25803 Some(Self { syntax })
25804 } else {
25805 None
25806 }
25807 }
25808 #[inline]
25809 fn syntax(&self) -> &SyntaxNode {
25810 &self.syntax
25811 }
25812}
25813impl AstNode for ResetSessionAuth {
25814 #[inline]
25815 fn can_cast(kind: SyntaxKind) -> bool {
25816 kind == SyntaxKind::RESET_SESSION_AUTH
25817 }
25818 #[inline]
25819 fn cast(syntax: SyntaxNode) -> Option<Self> {
25820 if Self::can_cast(syntax.kind()) {
25821 Some(Self { syntax })
25822 } else {
25823 None
25824 }
25825 }
25826 #[inline]
25827 fn syntax(&self) -> &SyntaxNode {
25828 &self.syntax
25829 }
25830}
25831impl AstNode for Restart {
25832 #[inline]
25833 fn can_cast(kind: SyntaxKind) -> bool {
25834 kind == SyntaxKind::RESTART
25835 }
25836 #[inline]
25837 fn cast(syntax: SyntaxNode) -> Option<Self> {
25838 if Self::can_cast(syntax.kind()) {
25839 Some(Self { syntax })
25840 } else {
25841 None
25842 }
25843 }
25844 #[inline]
25845 fn syntax(&self) -> &SyntaxNode {
25846 &self.syntax
25847 }
25848}
25849impl AstNode for Restrict {
25850 #[inline]
25851 fn can_cast(kind: SyntaxKind) -> bool {
25852 kind == SyntaxKind::RESTRICT
25853 }
25854 #[inline]
25855 fn cast(syntax: SyntaxNode) -> Option<Self> {
25856 if Self::can_cast(syntax.kind()) {
25857 Some(Self { syntax })
25858 } else {
25859 None
25860 }
25861 }
25862 #[inline]
25863 fn syntax(&self) -> &SyntaxNode {
25864 &self.syntax
25865 }
25866}
25867impl AstNode for RetType {
25868 #[inline]
25869 fn can_cast(kind: SyntaxKind) -> bool {
25870 kind == SyntaxKind::RET_TYPE
25871 }
25872 #[inline]
25873 fn cast(syntax: SyntaxNode) -> Option<Self> {
25874 if Self::can_cast(syntax.kind()) {
25875 Some(Self { syntax })
25876 } else {
25877 None
25878 }
25879 }
25880 #[inline]
25881 fn syntax(&self) -> &SyntaxNode {
25882 &self.syntax
25883 }
25884}
25885impl AstNode for ReturnFuncOption {
25886 #[inline]
25887 fn can_cast(kind: SyntaxKind) -> bool {
25888 kind == SyntaxKind::RETURN_FUNC_OPTION
25889 }
25890 #[inline]
25891 fn cast(syntax: SyntaxNode) -> Option<Self> {
25892 if Self::can_cast(syntax.kind()) {
25893 Some(Self { syntax })
25894 } else {
25895 None
25896 }
25897 }
25898 #[inline]
25899 fn syntax(&self) -> &SyntaxNode {
25900 &self.syntax
25901 }
25902}
25903impl AstNode for ReturningClause {
25904 #[inline]
25905 fn can_cast(kind: SyntaxKind) -> bool {
25906 kind == SyntaxKind::RETURNING_CLAUSE
25907 }
25908 #[inline]
25909 fn cast(syntax: SyntaxNode) -> Option<Self> {
25910 if Self::can_cast(syntax.kind()) {
25911 Some(Self { syntax })
25912 } else {
25913 None
25914 }
25915 }
25916 #[inline]
25917 fn syntax(&self) -> &SyntaxNode {
25918 &self.syntax
25919 }
25920}
25921impl AstNode for ReturningOption {
25922 #[inline]
25923 fn can_cast(kind: SyntaxKind) -> bool {
25924 kind == SyntaxKind::RETURNING_OPTION
25925 }
25926 #[inline]
25927 fn cast(syntax: SyntaxNode) -> Option<Self> {
25928 if Self::can_cast(syntax.kind()) {
25929 Some(Self { syntax })
25930 } else {
25931 None
25932 }
25933 }
25934 #[inline]
25935 fn syntax(&self) -> &SyntaxNode {
25936 &self.syntax
25937 }
25938}
25939impl AstNode for ReturningOptionList {
25940 #[inline]
25941 fn can_cast(kind: SyntaxKind) -> bool {
25942 kind == SyntaxKind::RETURNING_OPTION_LIST
25943 }
25944 #[inline]
25945 fn cast(syntax: SyntaxNode) -> Option<Self> {
25946 if Self::can_cast(syntax.kind()) {
25947 Some(Self { syntax })
25948 } else {
25949 None
25950 }
25951 }
25952 #[inline]
25953 fn syntax(&self) -> &SyntaxNode {
25954 &self.syntax
25955 }
25956}
25957impl AstNode for Revoke {
25958 #[inline]
25959 fn can_cast(kind: SyntaxKind) -> bool {
25960 kind == SyntaxKind::REVOKE
25961 }
25962 #[inline]
25963 fn cast(syntax: SyntaxNode) -> Option<Self> {
25964 if Self::can_cast(syntax.kind()) {
25965 Some(Self { syntax })
25966 } else {
25967 None
25968 }
25969 }
25970 #[inline]
25971 fn syntax(&self) -> &SyntaxNode {
25972 &self.syntax
25973 }
25974}
25975impl AstNode for RevokeCommand {
25976 #[inline]
25977 fn can_cast(kind: SyntaxKind) -> bool {
25978 kind == SyntaxKind::REVOKE_COMMAND
25979 }
25980 #[inline]
25981 fn cast(syntax: SyntaxNode) -> Option<Self> {
25982 if Self::can_cast(syntax.kind()) {
25983 Some(Self { syntax })
25984 } else {
25985 None
25986 }
25987 }
25988 #[inline]
25989 fn syntax(&self) -> &SyntaxNode {
25990 &self.syntax
25991 }
25992}
25993impl AstNode for RevokeCommandList {
25994 #[inline]
25995 fn can_cast(kind: SyntaxKind) -> bool {
25996 kind == SyntaxKind::REVOKE_COMMAND_LIST
25997 }
25998 #[inline]
25999 fn cast(syntax: SyntaxNode) -> Option<Self> {
26000 if Self::can_cast(syntax.kind()) {
26001 Some(Self { syntax })
26002 } else {
26003 None
26004 }
26005 }
26006 #[inline]
26007 fn syntax(&self) -> &SyntaxNode {
26008 &self.syntax
26009 }
26010}
26011impl AstNode for RevokeDefaultPrivileges {
26012 #[inline]
26013 fn can_cast(kind: SyntaxKind) -> bool {
26014 kind == SyntaxKind::REVOKE_DEFAULT_PRIVILEGES
26015 }
26016 #[inline]
26017 fn cast(syntax: SyntaxNode) -> Option<Self> {
26018 if Self::can_cast(syntax.kind()) {
26019 Some(Self { syntax })
26020 } else {
26021 None
26022 }
26023 }
26024 #[inline]
26025 fn syntax(&self) -> &SyntaxNode {
26026 &self.syntax
26027 }
26028}
26029impl AstNode for Role {
26030 #[inline]
26031 fn can_cast(kind: SyntaxKind) -> bool {
26032 kind == SyntaxKind::ROLE
26033 }
26034 #[inline]
26035 fn cast(syntax: SyntaxNode) -> Option<Self> {
26036 if Self::can_cast(syntax.kind()) {
26037 Some(Self { syntax })
26038 } else {
26039 None
26040 }
26041 }
26042 #[inline]
26043 fn syntax(&self) -> &SyntaxNode {
26044 &self.syntax
26045 }
26046}
26047impl AstNode for RoleOption {
26048 #[inline]
26049 fn can_cast(kind: SyntaxKind) -> bool {
26050 kind == SyntaxKind::ROLE_OPTION
26051 }
26052 #[inline]
26053 fn cast(syntax: SyntaxNode) -> Option<Self> {
26054 if Self::can_cast(syntax.kind()) {
26055 Some(Self { syntax })
26056 } else {
26057 None
26058 }
26059 }
26060 #[inline]
26061 fn syntax(&self) -> &SyntaxNode {
26062 &self.syntax
26063 }
26064}
26065impl AstNode for RoleOptionList {
26066 #[inline]
26067 fn can_cast(kind: SyntaxKind) -> bool {
26068 kind == SyntaxKind::ROLE_OPTION_LIST
26069 }
26070 #[inline]
26071 fn cast(syntax: SyntaxNode) -> Option<Self> {
26072 if Self::can_cast(syntax.kind()) {
26073 Some(Self { syntax })
26074 } else {
26075 None
26076 }
26077 }
26078 #[inline]
26079 fn syntax(&self) -> &SyntaxNode {
26080 &self.syntax
26081 }
26082}
26083impl AstNode for RoleRef {
26084 #[inline]
26085 fn can_cast(kind: SyntaxKind) -> bool {
26086 kind == SyntaxKind::ROLE_REF
26087 }
26088 #[inline]
26089 fn cast(syntax: SyntaxNode) -> Option<Self> {
26090 if Self::can_cast(syntax.kind()) {
26091 Some(Self { syntax })
26092 } else {
26093 None
26094 }
26095 }
26096 #[inline]
26097 fn syntax(&self) -> &SyntaxNode {
26098 &self.syntax
26099 }
26100}
26101impl AstNode for RoleRefList {
26102 #[inline]
26103 fn can_cast(kind: SyntaxKind) -> bool {
26104 kind == SyntaxKind::ROLE_REF_LIST
26105 }
26106 #[inline]
26107 fn cast(syntax: SyntaxNode) -> Option<Self> {
26108 if Self::can_cast(syntax.kind()) {
26109 Some(Self { syntax })
26110 } else {
26111 None
26112 }
26113 }
26114 #[inline]
26115 fn syntax(&self) -> &SyntaxNode {
26116 &self.syntax
26117 }
26118}
26119impl AstNode for Rollback {
26120 #[inline]
26121 fn can_cast(kind: SyntaxKind) -> bool {
26122 kind == SyntaxKind::ROLLBACK
26123 }
26124 #[inline]
26125 fn cast(syntax: SyntaxNode) -> Option<Self> {
26126 if Self::can_cast(syntax.kind()) {
26127 Some(Self { syntax })
26128 } else {
26129 None
26130 }
26131 }
26132 #[inline]
26133 fn syntax(&self) -> &SyntaxNode {
26134 &self.syntax
26135 }
26136}
26137impl AstNode for Row {
26138 #[inline]
26139 fn can_cast(kind: SyntaxKind) -> bool {
26140 kind == SyntaxKind::ROW
26141 }
26142 #[inline]
26143 fn cast(syntax: SyntaxNode) -> Option<Self> {
26144 if Self::can_cast(syntax.kind()) {
26145 Some(Self { syntax })
26146 } else {
26147 None
26148 }
26149 }
26150 #[inline]
26151 fn syntax(&self) -> &SyntaxNode {
26152 &self.syntax
26153 }
26154}
26155impl AstNode for RowList {
26156 #[inline]
26157 fn can_cast(kind: SyntaxKind) -> bool {
26158 kind == SyntaxKind::ROW_LIST
26159 }
26160 #[inline]
26161 fn cast(syntax: SyntaxNode) -> Option<Self> {
26162 if Self::can_cast(syntax.kind()) {
26163 Some(Self { syntax })
26164 } else {
26165 None
26166 }
26167 }
26168 #[inline]
26169 fn syntax(&self) -> &SyntaxNode {
26170 &self.syntax
26171 }
26172}
26173impl AstNode for RowsFuncOption {
26174 #[inline]
26175 fn can_cast(kind: SyntaxKind) -> bool {
26176 kind == SyntaxKind::ROWS_FUNC_OPTION
26177 }
26178 #[inline]
26179 fn cast(syntax: SyntaxNode) -> Option<Self> {
26180 if Self::can_cast(syntax.kind()) {
26181 Some(Self { syntax })
26182 } else {
26183 None
26184 }
26185 }
26186 #[inline]
26187 fn syntax(&self) -> &SyntaxNode {
26188 &self.syntax
26189 }
26190}
26191impl AstNode for Savepoint {
26192 #[inline]
26193 fn can_cast(kind: SyntaxKind) -> bool {
26194 kind == SyntaxKind::SAVEPOINT
26195 }
26196 #[inline]
26197 fn cast(syntax: SyntaxNode) -> Option<Self> {
26198 if Self::can_cast(syntax.kind()) {
26199 Some(Self { syntax })
26200 } else {
26201 None
26202 }
26203 }
26204 #[inline]
26205 fn syntax(&self) -> &SyntaxNode {
26206 &self.syntax
26207 }
26208}
26209impl AstNode for SecurityFuncOption {
26210 #[inline]
26211 fn can_cast(kind: SyntaxKind) -> bool {
26212 kind == SyntaxKind::SECURITY_FUNC_OPTION
26213 }
26214 #[inline]
26215 fn cast(syntax: SyntaxNode) -> Option<Self> {
26216 if Self::can_cast(syntax.kind()) {
26217 Some(Self { syntax })
26218 } else {
26219 None
26220 }
26221 }
26222 #[inline]
26223 fn syntax(&self) -> &SyntaxNode {
26224 &self.syntax
26225 }
26226}
26227impl AstNode for SecurityLabel {
26228 #[inline]
26229 fn can_cast(kind: SyntaxKind) -> bool {
26230 kind == SyntaxKind::SECURITY_LABEL
26231 }
26232 #[inline]
26233 fn cast(syntax: SyntaxNode) -> Option<Self> {
26234 if Self::can_cast(syntax.kind()) {
26235 Some(Self { syntax })
26236 } else {
26237 None
26238 }
26239 }
26240 #[inline]
26241 fn syntax(&self) -> &SyntaxNode {
26242 &self.syntax
26243 }
26244}
26245impl AstNode for Select {
26246 #[inline]
26247 fn can_cast(kind: SyntaxKind) -> bool {
26248 kind == SyntaxKind::SELECT
26249 }
26250 #[inline]
26251 fn cast(syntax: SyntaxNode) -> Option<Self> {
26252 if Self::can_cast(syntax.kind()) {
26253 Some(Self { syntax })
26254 } else {
26255 None
26256 }
26257 }
26258 #[inline]
26259 fn syntax(&self) -> &SyntaxNode {
26260 &self.syntax
26261 }
26262}
26263impl AstNode for SelectClause {
26264 #[inline]
26265 fn can_cast(kind: SyntaxKind) -> bool {
26266 kind == SyntaxKind::SELECT_CLAUSE
26267 }
26268 #[inline]
26269 fn cast(syntax: SyntaxNode) -> Option<Self> {
26270 if Self::can_cast(syntax.kind()) {
26271 Some(Self { syntax })
26272 } else {
26273 None
26274 }
26275 }
26276 #[inline]
26277 fn syntax(&self) -> &SyntaxNode {
26278 &self.syntax
26279 }
26280}
26281impl AstNode for SelectInto {
26282 #[inline]
26283 fn can_cast(kind: SyntaxKind) -> bool {
26284 kind == SyntaxKind::SELECT_INTO
26285 }
26286 #[inline]
26287 fn cast(syntax: SyntaxNode) -> Option<Self> {
26288 if Self::can_cast(syntax.kind()) {
26289 Some(Self { syntax })
26290 } else {
26291 None
26292 }
26293 }
26294 #[inline]
26295 fn syntax(&self) -> &SyntaxNode {
26296 &self.syntax
26297 }
26298}
26299impl AstNode for SequenceOption {
26300 #[inline]
26301 fn can_cast(kind: SyntaxKind) -> bool {
26302 kind == SyntaxKind::SEQUENCE_OPTION
26303 }
26304 #[inline]
26305 fn cast(syntax: SyntaxNode) -> Option<Self> {
26306 if Self::can_cast(syntax.kind()) {
26307 Some(Self { syntax })
26308 } else {
26309 None
26310 }
26311 }
26312 #[inline]
26313 fn syntax(&self) -> &SyntaxNode {
26314 &self.syntax
26315 }
26316}
26317impl AstNode for SequenceOptionList {
26318 #[inline]
26319 fn can_cast(kind: SyntaxKind) -> bool {
26320 kind == SyntaxKind::SEQUENCE_OPTION_LIST
26321 }
26322 #[inline]
26323 fn cast(syntax: SyntaxNode) -> Option<Self> {
26324 if Self::can_cast(syntax.kind()) {
26325 Some(Self { syntax })
26326 } else {
26327 None
26328 }
26329 }
26330 #[inline]
26331 fn syntax(&self) -> &SyntaxNode {
26332 &self.syntax
26333 }
26334}
26335impl AstNode for Serializable {
26336 #[inline]
26337 fn can_cast(kind: SyntaxKind) -> bool {
26338 kind == SyntaxKind::SERIALIZABLE
26339 }
26340 #[inline]
26341 fn cast(syntax: SyntaxNode) -> Option<Self> {
26342 if Self::can_cast(syntax.kind()) {
26343 Some(Self { syntax })
26344 } else {
26345 None
26346 }
26347 }
26348 #[inline]
26349 fn syntax(&self) -> &SyntaxNode {
26350 &self.syntax
26351 }
26352}
26353impl AstNode for ServerName {
26354 #[inline]
26355 fn can_cast(kind: SyntaxKind) -> bool {
26356 kind == SyntaxKind::SERVER_NAME
26357 }
26358 #[inline]
26359 fn cast(syntax: SyntaxNode) -> Option<Self> {
26360 if Self::can_cast(syntax.kind()) {
26361 Some(Self { syntax })
26362 } else {
26363 None
26364 }
26365 }
26366 #[inline]
26367 fn syntax(&self) -> &SyntaxNode {
26368 &self.syntax
26369 }
26370}
26371impl AstNode for Set {
26372 #[inline]
26373 fn can_cast(kind: SyntaxKind) -> bool {
26374 kind == SyntaxKind::SET
26375 }
26376 #[inline]
26377 fn cast(syntax: SyntaxNode) -> Option<Self> {
26378 if Self::can_cast(syntax.kind()) {
26379 Some(Self { syntax })
26380 } else {
26381 None
26382 }
26383 }
26384 #[inline]
26385 fn syntax(&self) -> &SyntaxNode {
26386 &self.syntax
26387 }
26388}
26389impl AstNode for SetAccessMethod {
26390 #[inline]
26391 fn can_cast(kind: SyntaxKind) -> bool {
26392 kind == SyntaxKind::SET_ACCESS_METHOD
26393 }
26394 #[inline]
26395 fn cast(syntax: SyntaxNode) -> Option<Self> {
26396 if Self::can_cast(syntax.kind()) {
26397 Some(Self { syntax })
26398 } else {
26399 None
26400 }
26401 }
26402 #[inline]
26403 fn syntax(&self) -> &SyntaxNode {
26404 &self.syntax
26405 }
26406}
26407impl AstNode for SetClause {
26408 #[inline]
26409 fn can_cast(kind: SyntaxKind) -> bool {
26410 kind == SyntaxKind::SET_CLAUSE
26411 }
26412 #[inline]
26413 fn cast(syntax: SyntaxNode) -> Option<Self> {
26414 if Self::can_cast(syntax.kind()) {
26415 Some(Self { syntax })
26416 } else {
26417 None
26418 }
26419 }
26420 #[inline]
26421 fn syntax(&self) -> &SyntaxNode {
26422 &self.syntax
26423 }
26424}
26425impl AstNode for SetColumnList {
26426 #[inline]
26427 fn can_cast(kind: SyntaxKind) -> bool {
26428 kind == SyntaxKind::SET_COLUMN_LIST
26429 }
26430 #[inline]
26431 fn cast(syntax: SyntaxNode) -> Option<Self> {
26432 if Self::can_cast(syntax.kind()) {
26433 Some(Self { syntax })
26434 } else {
26435 None
26436 }
26437 }
26438 #[inline]
26439 fn syntax(&self) -> &SyntaxNode {
26440 &self.syntax
26441 }
26442}
26443impl AstNode for SetCompression {
26444 #[inline]
26445 fn can_cast(kind: SyntaxKind) -> bool {
26446 kind == SyntaxKind::SET_COMPRESSION
26447 }
26448 #[inline]
26449 fn cast(syntax: SyntaxNode) -> Option<Self> {
26450 if Self::can_cast(syntax.kind()) {
26451 Some(Self { syntax })
26452 } else {
26453 None
26454 }
26455 }
26456 #[inline]
26457 fn syntax(&self) -> &SyntaxNode {
26458 &self.syntax
26459 }
26460}
26461impl AstNode for SetConfigParam {
26462 #[inline]
26463 fn can_cast(kind: SyntaxKind) -> bool {
26464 kind == SyntaxKind::SET_CONFIG_PARAM
26465 }
26466 #[inline]
26467 fn cast(syntax: SyntaxNode) -> Option<Self> {
26468 if Self::can_cast(syntax.kind()) {
26469 Some(Self { syntax })
26470 } else {
26471 None
26472 }
26473 }
26474 #[inline]
26475 fn syntax(&self) -> &SyntaxNode {
26476 &self.syntax
26477 }
26478}
26479impl AstNode for SetConstraints {
26480 #[inline]
26481 fn can_cast(kind: SyntaxKind) -> bool {
26482 kind == SyntaxKind::SET_CONSTRAINTS
26483 }
26484 #[inline]
26485 fn cast(syntax: SyntaxNode) -> Option<Self> {
26486 if Self::can_cast(syntax.kind()) {
26487 Some(Self { syntax })
26488 } else {
26489 None
26490 }
26491 }
26492 #[inline]
26493 fn syntax(&self) -> &SyntaxNode {
26494 &self.syntax
26495 }
26496}
26497impl AstNode for SetDefault {
26498 #[inline]
26499 fn can_cast(kind: SyntaxKind) -> bool {
26500 kind == SyntaxKind::SET_DEFAULT
26501 }
26502 #[inline]
26503 fn cast(syntax: SyntaxNode) -> Option<Self> {
26504 if Self::can_cast(syntax.kind()) {
26505 Some(Self { syntax })
26506 } else {
26507 None
26508 }
26509 }
26510 #[inline]
26511 fn syntax(&self) -> &SyntaxNode {
26512 &self.syntax
26513 }
26514}
26515impl AstNode for SetDefaultColumns {
26516 #[inline]
26517 fn can_cast(kind: SyntaxKind) -> bool {
26518 kind == SyntaxKind::SET_DEFAULT_COLUMNS
26519 }
26520 #[inline]
26521 fn cast(syntax: SyntaxNode) -> Option<Self> {
26522 if Self::can_cast(syntax.kind()) {
26523 Some(Self { syntax })
26524 } else {
26525 None
26526 }
26527 }
26528 #[inline]
26529 fn syntax(&self) -> &SyntaxNode {
26530 &self.syntax
26531 }
26532}
26533impl AstNode for SetExpr {
26534 #[inline]
26535 fn can_cast(kind: SyntaxKind) -> bool {
26536 kind == SyntaxKind::SET_EXPR
26537 }
26538 #[inline]
26539 fn cast(syntax: SyntaxNode) -> Option<Self> {
26540 if Self::can_cast(syntax.kind()) {
26541 Some(Self { syntax })
26542 } else {
26543 None
26544 }
26545 }
26546 #[inline]
26547 fn syntax(&self) -> &SyntaxNode {
26548 &self.syntax
26549 }
26550}
26551impl AstNode for SetExprList {
26552 #[inline]
26553 fn can_cast(kind: SyntaxKind) -> bool {
26554 kind == SyntaxKind::SET_EXPR_LIST
26555 }
26556 #[inline]
26557 fn cast(syntax: SyntaxNode) -> Option<Self> {
26558 if Self::can_cast(syntax.kind()) {
26559 Some(Self { syntax })
26560 } else {
26561 None
26562 }
26563 }
26564 #[inline]
26565 fn syntax(&self) -> &SyntaxNode {
26566 &self.syntax
26567 }
26568}
26569impl AstNode for SetExpression {
26570 #[inline]
26571 fn can_cast(kind: SyntaxKind) -> bool {
26572 kind == SyntaxKind::SET_EXPRESSION
26573 }
26574 #[inline]
26575 fn cast(syntax: SyntaxNode) -> Option<Self> {
26576 if Self::can_cast(syntax.kind()) {
26577 Some(Self { syntax })
26578 } else {
26579 None
26580 }
26581 }
26582 #[inline]
26583 fn syntax(&self) -> &SyntaxNode {
26584 &self.syntax
26585 }
26586}
26587impl AstNode for SetFuncOption {
26588 #[inline]
26589 fn can_cast(kind: SyntaxKind) -> bool {
26590 kind == SyntaxKind::SET_FUNC_OPTION
26591 }
26592 #[inline]
26593 fn cast(syntax: SyntaxNode) -> Option<Self> {
26594 if Self::can_cast(syntax.kind()) {
26595 Some(Self { syntax })
26596 } else {
26597 None
26598 }
26599 }
26600 #[inline]
26601 fn syntax(&self) -> &SyntaxNode {
26602 &self.syntax
26603 }
26604}
26605impl AstNode for SetGenerated {
26606 #[inline]
26607 fn can_cast(kind: SyntaxKind) -> bool {
26608 kind == SyntaxKind::SET_GENERATED
26609 }
26610 #[inline]
26611 fn cast(syntax: SyntaxNode) -> Option<Self> {
26612 if Self::can_cast(syntax.kind()) {
26613 Some(Self { syntax })
26614 } else {
26615 None
26616 }
26617 }
26618 #[inline]
26619 fn syntax(&self) -> &SyntaxNode {
26620 &self.syntax
26621 }
26622}
26623impl AstNode for SetGeneratedOptions {
26624 #[inline]
26625 fn can_cast(kind: SyntaxKind) -> bool {
26626 kind == SyntaxKind::SET_GENERATED_OPTIONS
26627 }
26628 #[inline]
26629 fn cast(syntax: SyntaxNode) -> Option<Self> {
26630 if Self::can_cast(syntax.kind()) {
26631 Some(Self { syntax })
26632 } else {
26633 None
26634 }
26635 }
26636 #[inline]
26637 fn syntax(&self) -> &SyntaxNode {
26638 &self.syntax
26639 }
26640}
26641impl AstNode for SetLogged {
26642 #[inline]
26643 fn can_cast(kind: SyntaxKind) -> bool {
26644 kind == SyntaxKind::SET_LOGGED
26645 }
26646 #[inline]
26647 fn cast(syntax: SyntaxNode) -> Option<Self> {
26648 if Self::can_cast(syntax.kind()) {
26649 Some(Self { syntax })
26650 } else {
26651 None
26652 }
26653 }
26654 #[inline]
26655 fn syntax(&self) -> &SyntaxNode {
26656 &self.syntax
26657 }
26658}
26659impl AstNode for SetMultipleColumns {
26660 #[inline]
26661 fn can_cast(kind: SyntaxKind) -> bool {
26662 kind == SyntaxKind::SET_MULTIPLE_COLUMNS
26663 }
26664 #[inline]
26665 fn cast(syntax: SyntaxNode) -> Option<Self> {
26666 if Self::can_cast(syntax.kind()) {
26667 Some(Self { syntax })
26668 } else {
26669 None
26670 }
26671 }
26672 #[inline]
26673 fn syntax(&self) -> &SyntaxNode {
26674 &self.syntax
26675 }
26676}
26677impl AstNode for SetNotNull {
26678 #[inline]
26679 fn can_cast(kind: SyntaxKind) -> bool {
26680 kind == SyntaxKind::SET_NOT_NULL
26681 }
26682 #[inline]
26683 fn cast(syntax: SyntaxNode) -> Option<Self> {
26684 if Self::can_cast(syntax.kind()) {
26685 Some(Self { syntax })
26686 } else {
26687 None
26688 }
26689 }
26690 #[inline]
26691 fn syntax(&self) -> &SyntaxNode {
26692 &self.syntax
26693 }
26694}
26695impl AstNode for SetNullColumns {
26696 #[inline]
26697 fn can_cast(kind: SyntaxKind) -> bool {
26698 kind == SyntaxKind::SET_NULL_COLUMNS
26699 }
26700 #[inline]
26701 fn cast(syntax: SyntaxNode) -> Option<Self> {
26702 if Self::can_cast(syntax.kind()) {
26703 Some(Self { syntax })
26704 } else {
26705 None
26706 }
26707 }
26708 #[inline]
26709 fn syntax(&self) -> &SyntaxNode {
26710 &self.syntax
26711 }
26712}
26713impl AstNode for SetOptions {
26714 #[inline]
26715 fn can_cast(kind: SyntaxKind) -> bool {
26716 kind == SyntaxKind::SET_OPTIONS
26717 }
26718 #[inline]
26719 fn cast(syntax: SyntaxNode) -> Option<Self> {
26720 if Self::can_cast(syntax.kind()) {
26721 Some(Self { syntax })
26722 } else {
26723 None
26724 }
26725 }
26726 #[inline]
26727 fn syntax(&self) -> &SyntaxNode {
26728 &self.syntax
26729 }
26730}
26731impl AstNode for SetOptionsList {
26732 #[inline]
26733 fn can_cast(kind: SyntaxKind) -> bool {
26734 kind == SyntaxKind::SET_OPTIONS_LIST
26735 }
26736 #[inline]
26737 fn cast(syntax: SyntaxNode) -> Option<Self> {
26738 if Self::can_cast(syntax.kind()) {
26739 Some(Self { syntax })
26740 } else {
26741 None
26742 }
26743 }
26744 #[inline]
26745 fn syntax(&self) -> &SyntaxNode {
26746 &self.syntax
26747 }
26748}
26749impl AstNode for SetRole {
26750 #[inline]
26751 fn can_cast(kind: SyntaxKind) -> bool {
26752 kind == SyntaxKind::SET_ROLE
26753 }
26754 #[inline]
26755 fn cast(syntax: SyntaxNode) -> Option<Self> {
26756 if Self::can_cast(syntax.kind()) {
26757 Some(Self { syntax })
26758 } else {
26759 None
26760 }
26761 }
26762 #[inline]
26763 fn syntax(&self) -> &SyntaxNode {
26764 &self.syntax
26765 }
26766}
26767impl AstNode for SetSchema {
26768 #[inline]
26769 fn can_cast(kind: SyntaxKind) -> bool {
26770 kind == SyntaxKind::SET_SCHEMA
26771 }
26772 #[inline]
26773 fn cast(syntax: SyntaxNode) -> Option<Self> {
26774 if Self::can_cast(syntax.kind()) {
26775 Some(Self { syntax })
26776 } else {
26777 None
26778 }
26779 }
26780 #[inline]
26781 fn syntax(&self) -> &SyntaxNode {
26782 &self.syntax
26783 }
26784}
26785impl AstNode for SetSequenceOption {
26786 #[inline]
26787 fn can_cast(kind: SyntaxKind) -> bool {
26788 kind == SyntaxKind::SET_SEQUENCE_OPTION
26789 }
26790 #[inline]
26791 fn cast(syntax: SyntaxNode) -> Option<Self> {
26792 if Self::can_cast(syntax.kind()) {
26793 Some(Self { syntax })
26794 } else {
26795 None
26796 }
26797 }
26798 #[inline]
26799 fn syntax(&self) -> &SyntaxNode {
26800 &self.syntax
26801 }
26802}
26803impl AstNode for SetSessionAuth {
26804 #[inline]
26805 fn can_cast(kind: SyntaxKind) -> bool {
26806 kind == SyntaxKind::SET_SESSION_AUTH
26807 }
26808 #[inline]
26809 fn cast(syntax: SyntaxNode) -> Option<Self> {
26810 if Self::can_cast(syntax.kind()) {
26811 Some(Self { syntax })
26812 } else {
26813 None
26814 }
26815 }
26816 #[inline]
26817 fn syntax(&self) -> &SyntaxNode {
26818 &self.syntax
26819 }
26820}
26821impl AstNode for SetSingleColumn {
26822 #[inline]
26823 fn can_cast(kind: SyntaxKind) -> bool {
26824 kind == SyntaxKind::SET_SINGLE_COLUMN
26825 }
26826 #[inline]
26827 fn cast(syntax: SyntaxNode) -> Option<Self> {
26828 if Self::can_cast(syntax.kind()) {
26829 Some(Self { syntax })
26830 } else {
26831 None
26832 }
26833 }
26834 #[inline]
26835 fn syntax(&self) -> &SyntaxNode {
26836 &self.syntax
26837 }
26838}
26839impl AstNode for SetStatistics {
26840 #[inline]
26841 fn can_cast(kind: SyntaxKind) -> bool {
26842 kind == SyntaxKind::SET_STATISTICS
26843 }
26844 #[inline]
26845 fn cast(syntax: SyntaxNode) -> Option<Self> {
26846 if Self::can_cast(syntax.kind()) {
26847 Some(Self { syntax })
26848 } else {
26849 None
26850 }
26851 }
26852 #[inline]
26853 fn syntax(&self) -> &SyntaxNode {
26854 &self.syntax
26855 }
26856}
26857impl AstNode for SetStorage {
26858 #[inline]
26859 fn can_cast(kind: SyntaxKind) -> bool {
26860 kind == SyntaxKind::SET_STORAGE
26861 }
26862 #[inline]
26863 fn cast(syntax: SyntaxNode) -> Option<Self> {
26864 if Self::can_cast(syntax.kind()) {
26865 Some(Self { syntax })
26866 } else {
26867 None
26868 }
26869 }
26870 #[inline]
26871 fn syntax(&self) -> &SyntaxNode {
26872 &self.syntax
26873 }
26874}
26875impl AstNode for SetTablespace {
26876 #[inline]
26877 fn can_cast(kind: SyntaxKind) -> bool {
26878 kind == SyntaxKind::SET_TABLESPACE
26879 }
26880 #[inline]
26881 fn cast(syntax: SyntaxNode) -> Option<Self> {
26882 if Self::can_cast(syntax.kind()) {
26883 Some(Self { syntax })
26884 } else {
26885 None
26886 }
26887 }
26888 #[inline]
26889 fn syntax(&self) -> &SyntaxNode {
26890 &self.syntax
26891 }
26892}
26893impl AstNode for SetTransaction {
26894 #[inline]
26895 fn can_cast(kind: SyntaxKind) -> bool {
26896 kind == SyntaxKind::SET_TRANSACTION
26897 }
26898 #[inline]
26899 fn cast(syntax: SyntaxNode) -> Option<Self> {
26900 if Self::can_cast(syntax.kind()) {
26901 Some(Self { syntax })
26902 } else {
26903 None
26904 }
26905 }
26906 #[inline]
26907 fn syntax(&self) -> &SyntaxNode {
26908 &self.syntax
26909 }
26910}
26911impl AstNode for SetType {
26912 #[inline]
26913 fn can_cast(kind: SyntaxKind) -> bool {
26914 kind == SyntaxKind::SET_TYPE
26915 }
26916 #[inline]
26917 fn cast(syntax: SyntaxNode) -> Option<Self> {
26918 if Self::can_cast(syntax.kind()) {
26919 Some(Self { syntax })
26920 } else {
26921 None
26922 }
26923 }
26924 #[inline]
26925 fn syntax(&self) -> &SyntaxNode {
26926 &self.syntax
26927 }
26928}
26929impl AstNode for SetUnlogged {
26930 #[inline]
26931 fn can_cast(kind: SyntaxKind) -> bool {
26932 kind == SyntaxKind::SET_UNLOGGED
26933 }
26934 #[inline]
26935 fn cast(syntax: SyntaxNode) -> Option<Self> {
26936 if Self::can_cast(syntax.kind()) {
26937 Some(Self { syntax })
26938 } else {
26939 None
26940 }
26941 }
26942 #[inline]
26943 fn syntax(&self) -> &SyntaxNode {
26944 &self.syntax
26945 }
26946}
26947impl AstNode for SetWithoutCluster {
26948 #[inline]
26949 fn can_cast(kind: SyntaxKind) -> bool {
26950 kind == SyntaxKind::SET_WITHOUT_CLUSTER
26951 }
26952 #[inline]
26953 fn cast(syntax: SyntaxNode) -> Option<Self> {
26954 if Self::can_cast(syntax.kind()) {
26955 Some(Self { syntax })
26956 } else {
26957 None
26958 }
26959 }
26960 #[inline]
26961 fn syntax(&self) -> &SyntaxNode {
26962 &self.syntax
26963 }
26964}
26965impl AstNode for SetWithoutOids {
26966 #[inline]
26967 fn can_cast(kind: SyntaxKind) -> bool {
26968 kind == SyntaxKind::SET_WITHOUT_OIDS
26969 }
26970 #[inline]
26971 fn cast(syntax: SyntaxNode) -> Option<Self> {
26972 if Self::can_cast(syntax.kind()) {
26973 Some(Self { syntax })
26974 } else {
26975 None
26976 }
26977 }
26978 #[inline]
26979 fn syntax(&self) -> &SyntaxNode {
26980 &self.syntax
26981 }
26982}
26983impl AstNode for Show {
26984 #[inline]
26985 fn can_cast(kind: SyntaxKind) -> bool {
26986 kind == SyntaxKind::SHOW
26987 }
26988 #[inline]
26989 fn cast(syntax: SyntaxNode) -> Option<Self> {
26990 if Self::can_cast(syntax.kind()) {
26991 Some(Self { syntax })
26992 } else {
26993 None
26994 }
26995 }
26996 #[inline]
26997 fn syntax(&self) -> &SyntaxNode {
26998 &self.syntax
26999 }
27000}
27001impl AstNode for SimilarTo {
27002 #[inline]
27003 fn can_cast(kind: SyntaxKind) -> bool {
27004 kind == SyntaxKind::SIMILAR_TO
27005 }
27006 #[inline]
27007 fn cast(syntax: SyntaxNode) -> Option<Self> {
27008 if Self::can_cast(syntax.kind()) {
27009 Some(Self { syntax })
27010 } else {
27011 None
27012 }
27013 }
27014 #[inline]
27015 fn syntax(&self) -> &SyntaxNode {
27016 &self.syntax
27017 }
27018}
27019impl AstNode for SliceExpr {
27020 #[inline]
27021 fn can_cast(kind: SyntaxKind) -> bool {
27022 kind == SyntaxKind::SLICE_EXPR
27023 }
27024 #[inline]
27025 fn cast(syntax: SyntaxNode) -> Option<Self> {
27026 if Self::can_cast(syntax.kind()) {
27027 Some(Self { syntax })
27028 } else {
27029 None
27030 }
27031 }
27032 #[inline]
27033 fn syntax(&self) -> &SyntaxNode {
27034 &self.syntax
27035 }
27036}
27037impl AstNode for SomeFn {
27038 #[inline]
27039 fn can_cast(kind: SyntaxKind) -> bool {
27040 kind == SyntaxKind::SOME_FN
27041 }
27042 #[inline]
27043 fn cast(syntax: SyntaxNode) -> Option<Self> {
27044 if Self::can_cast(syntax.kind()) {
27045 Some(Self { syntax })
27046 } else {
27047 None
27048 }
27049 }
27050 #[inline]
27051 fn syntax(&self) -> &SyntaxNode {
27052 &self.syntax
27053 }
27054}
27055impl AstNode for SortAsc {
27056 #[inline]
27057 fn can_cast(kind: SyntaxKind) -> bool {
27058 kind == SyntaxKind::SORT_ASC
27059 }
27060 #[inline]
27061 fn cast(syntax: SyntaxNode) -> Option<Self> {
27062 if Self::can_cast(syntax.kind()) {
27063 Some(Self { syntax })
27064 } else {
27065 None
27066 }
27067 }
27068 #[inline]
27069 fn syntax(&self) -> &SyntaxNode {
27070 &self.syntax
27071 }
27072}
27073impl AstNode for SortBy {
27074 #[inline]
27075 fn can_cast(kind: SyntaxKind) -> bool {
27076 kind == SyntaxKind::SORT_BY
27077 }
27078 #[inline]
27079 fn cast(syntax: SyntaxNode) -> Option<Self> {
27080 if Self::can_cast(syntax.kind()) {
27081 Some(Self { syntax })
27082 } else {
27083 None
27084 }
27085 }
27086 #[inline]
27087 fn syntax(&self) -> &SyntaxNode {
27088 &self.syntax
27089 }
27090}
27091impl AstNode for SortByList {
27092 #[inline]
27093 fn can_cast(kind: SyntaxKind) -> bool {
27094 kind == SyntaxKind::SORT_BY_LIST
27095 }
27096 #[inline]
27097 fn cast(syntax: SyntaxNode) -> Option<Self> {
27098 if Self::can_cast(syntax.kind()) {
27099 Some(Self { syntax })
27100 } else {
27101 None
27102 }
27103 }
27104 #[inline]
27105 fn syntax(&self) -> &SyntaxNode {
27106 &self.syntax
27107 }
27108}
27109impl AstNode for SortDesc {
27110 #[inline]
27111 fn can_cast(kind: SyntaxKind) -> bool {
27112 kind == SyntaxKind::SORT_DESC
27113 }
27114 #[inline]
27115 fn cast(syntax: SyntaxNode) -> Option<Self> {
27116 if Self::can_cast(syntax.kind()) {
27117 Some(Self { syntax })
27118 } else {
27119 None
27120 }
27121 }
27122 #[inline]
27123 fn syntax(&self) -> &SyntaxNode {
27124 &self.syntax
27125 }
27126}
27127impl AstNode for SortUsing {
27128 #[inline]
27129 fn can_cast(kind: SyntaxKind) -> bool {
27130 kind == SyntaxKind::SORT_USING
27131 }
27132 #[inline]
27133 fn cast(syntax: SyntaxNode) -> Option<Self> {
27134 if Self::can_cast(syntax.kind()) {
27135 Some(Self { syntax })
27136 } else {
27137 None
27138 }
27139 }
27140 #[inline]
27141 fn syntax(&self) -> &SyntaxNode {
27142 &self.syntax
27143 }
27144}
27145impl AstNode for SourceFile {
27146 #[inline]
27147 fn can_cast(kind: SyntaxKind) -> bool {
27148 kind == SyntaxKind::SOURCE_FILE
27149 }
27150 #[inline]
27151 fn cast(syntax: SyntaxNode) -> Option<Self> {
27152 if Self::can_cast(syntax.kind()) {
27153 Some(Self { syntax })
27154 } else {
27155 None
27156 }
27157 }
27158 #[inline]
27159 fn syntax(&self) -> &SyntaxNode {
27160 &self.syntax
27161 }
27162}
27163impl AstNode for SplitPartition {
27164 #[inline]
27165 fn can_cast(kind: SyntaxKind) -> bool {
27166 kind == SyntaxKind::SPLIT_PARTITION
27167 }
27168 #[inline]
27169 fn cast(syntax: SyntaxNode) -> Option<Self> {
27170 if Self::can_cast(syntax.kind()) {
27171 Some(Self { syntax })
27172 } else {
27173 None
27174 }
27175 }
27176 #[inline]
27177 fn syntax(&self) -> &SyntaxNode {
27178 &self.syntax
27179 }
27180}
27181impl AstNode for Storage {
27182 #[inline]
27183 fn can_cast(kind: SyntaxKind) -> bool {
27184 kind == SyntaxKind::STORAGE
27185 }
27186 #[inline]
27187 fn cast(syntax: SyntaxNode) -> Option<Self> {
27188 if Self::can_cast(syntax.kind()) {
27189 Some(Self { syntax })
27190 } else {
27191 None
27192 }
27193 }
27194 #[inline]
27195 fn syntax(&self) -> &SyntaxNode {
27196 &self.syntax
27197 }
27198}
27199impl AstNode for StrictFuncOption {
27200 #[inline]
27201 fn can_cast(kind: SyntaxKind) -> bool {
27202 kind == SyntaxKind::STRICT_FUNC_OPTION
27203 }
27204 #[inline]
27205 fn cast(syntax: SyntaxNode) -> Option<Self> {
27206 if Self::can_cast(syntax.kind()) {
27207 Some(Self { syntax })
27208 } else {
27209 None
27210 }
27211 }
27212 #[inline]
27213 fn syntax(&self) -> &SyntaxNode {
27214 &self.syntax
27215 }
27216}
27217impl AstNode for SubstringFn {
27218 #[inline]
27219 fn can_cast(kind: SyntaxKind) -> bool {
27220 kind == SyntaxKind::SUBSTRING_FN
27221 }
27222 #[inline]
27223 fn cast(syntax: SyntaxNode) -> Option<Self> {
27224 if Self::can_cast(syntax.kind()) {
27225 Some(Self { syntax })
27226 } else {
27227 None
27228 }
27229 }
27230 #[inline]
27231 fn syntax(&self) -> &SyntaxNode {
27232 &self.syntax
27233 }
27234}
27235impl AstNode for SupportFuncOption {
27236 #[inline]
27237 fn can_cast(kind: SyntaxKind) -> bool {
27238 kind == SyntaxKind::SUPPORT_FUNC_OPTION
27239 }
27240 #[inline]
27241 fn cast(syntax: SyntaxNode) -> Option<Self> {
27242 if Self::can_cast(syntax.kind()) {
27243 Some(Self { syntax })
27244 } else {
27245 None
27246 }
27247 }
27248 #[inline]
27249 fn syntax(&self) -> &SyntaxNode {
27250 &self.syntax
27251 }
27252}
27253impl AstNode for Table {
27254 #[inline]
27255 fn can_cast(kind: SyntaxKind) -> bool {
27256 kind == SyntaxKind::TABLE
27257 }
27258 #[inline]
27259 fn cast(syntax: SyntaxNode) -> Option<Self> {
27260 if Self::can_cast(syntax.kind()) {
27261 Some(Self { syntax })
27262 } else {
27263 None
27264 }
27265 }
27266 #[inline]
27267 fn syntax(&self) -> &SyntaxNode {
27268 &self.syntax
27269 }
27270}
27271impl AstNode for TableAndColumns {
27272 #[inline]
27273 fn can_cast(kind: SyntaxKind) -> bool {
27274 kind == SyntaxKind::TABLE_AND_COLUMNS
27275 }
27276 #[inline]
27277 fn cast(syntax: SyntaxNode) -> Option<Self> {
27278 if Self::can_cast(syntax.kind()) {
27279 Some(Self { syntax })
27280 } else {
27281 None
27282 }
27283 }
27284 #[inline]
27285 fn syntax(&self) -> &SyntaxNode {
27286 &self.syntax
27287 }
27288}
27289impl AstNode for TableAndColumnsList {
27290 #[inline]
27291 fn can_cast(kind: SyntaxKind) -> bool {
27292 kind == SyntaxKind::TABLE_AND_COLUMNS_LIST
27293 }
27294 #[inline]
27295 fn cast(syntax: SyntaxNode) -> Option<Self> {
27296 if Self::can_cast(syntax.kind()) {
27297 Some(Self { syntax })
27298 } else {
27299 None
27300 }
27301 }
27302 #[inline]
27303 fn syntax(&self) -> &SyntaxNode {
27304 &self.syntax
27305 }
27306}
27307impl AstNode for TableArgList {
27308 #[inline]
27309 fn can_cast(kind: SyntaxKind) -> bool {
27310 kind == SyntaxKind::TABLE_ARG_LIST
27311 }
27312 #[inline]
27313 fn cast(syntax: SyntaxNode) -> Option<Self> {
27314 if Self::can_cast(syntax.kind()) {
27315 Some(Self { syntax })
27316 } else {
27317 None
27318 }
27319 }
27320 #[inline]
27321 fn syntax(&self) -> &SyntaxNode {
27322 &self.syntax
27323 }
27324}
27325impl AstNode for TableList {
27326 #[inline]
27327 fn can_cast(kind: SyntaxKind) -> bool {
27328 kind == SyntaxKind::TABLE_LIST
27329 }
27330 #[inline]
27331 fn cast(syntax: SyntaxNode) -> Option<Self> {
27332 if Self::can_cast(syntax.kind()) {
27333 Some(Self { syntax })
27334 } else {
27335 None
27336 }
27337 }
27338 #[inline]
27339 fn syntax(&self) -> &SyntaxNode {
27340 &self.syntax
27341 }
27342}
27343impl AstNode for TablesampleClause {
27344 #[inline]
27345 fn can_cast(kind: SyntaxKind) -> bool {
27346 kind == SyntaxKind::TABLESAMPLE_CLAUSE
27347 }
27348 #[inline]
27349 fn cast(syntax: SyntaxNode) -> Option<Self> {
27350 if Self::can_cast(syntax.kind()) {
27351 Some(Self { syntax })
27352 } else {
27353 None
27354 }
27355 }
27356 #[inline]
27357 fn syntax(&self) -> &SyntaxNode {
27358 &self.syntax
27359 }
27360}
27361impl AstNode for Tablespace {
27362 #[inline]
27363 fn can_cast(kind: SyntaxKind) -> bool {
27364 kind == SyntaxKind::TABLESPACE
27365 }
27366 #[inline]
27367 fn cast(syntax: SyntaxNode) -> Option<Self> {
27368 if Self::can_cast(syntax.kind()) {
27369 Some(Self { syntax })
27370 } else {
27371 None
27372 }
27373 }
27374 #[inline]
27375 fn syntax(&self) -> &SyntaxNode {
27376 &self.syntax
27377 }
27378}
27379impl AstNode for Target {
27380 #[inline]
27381 fn can_cast(kind: SyntaxKind) -> bool {
27382 kind == SyntaxKind::TARGET
27383 }
27384 #[inline]
27385 fn cast(syntax: SyntaxNode) -> Option<Self> {
27386 if Self::can_cast(syntax.kind()) {
27387 Some(Self { syntax })
27388 } else {
27389 None
27390 }
27391 }
27392 #[inline]
27393 fn syntax(&self) -> &SyntaxNode {
27394 &self.syntax
27395 }
27396}
27397impl AstNode for TargetList {
27398 #[inline]
27399 fn can_cast(kind: SyntaxKind) -> bool {
27400 kind == SyntaxKind::TARGET_LIST
27401 }
27402 #[inline]
27403 fn cast(syntax: SyntaxNode) -> Option<Self> {
27404 if Self::can_cast(syntax.kind()) {
27405 Some(Self { syntax })
27406 } else {
27407 None
27408 }
27409 }
27410 #[inline]
27411 fn syntax(&self) -> &SyntaxNode {
27412 &self.syntax
27413 }
27414}
27415impl AstNode for TimeType {
27416 #[inline]
27417 fn can_cast(kind: SyntaxKind) -> bool {
27418 kind == SyntaxKind::TIME_TYPE
27419 }
27420 #[inline]
27421 fn cast(syntax: SyntaxNode) -> Option<Self> {
27422 if Self::can_cast(syntax.kind()) {
27423 Some(Self { syntax })
27424 } else {
27425 None
27426 }
27427 }
27428 #[inline]
27429 fn syntax(&self) -> &SyntaxNode {
27430 &self.syntax
27431 }
27432}
27433impl AstNode for Timing {
27434 #[inline]
27435 fn can_cast(kind: SyntaxKind) -> bool {
27436 kind == SyntaxKind::TIMING
27437 }
27438 #[inline]
27439 fn cast(syntax: SyntaxNode) -> Option<Self> {
27440 if Self::can_cast(syntax.kind()) {
27441 Some(Self { syntax })
27442 } else {
27443 None
27444 }
27445 }
27446 #[inline]
27447 fn syntax(&self) -> &SyntaxNode {
27448 &self.syntax
27449 }
27450}
27451impl AstNode for TransactionModeList {
27452 #[inline]
27453 fn can_cast(kind: SyntaxKind) -> bool {
27454 kind == SyntaxKind::TRANSACTION_MODE_LIST
27455 }
27456 #[inline]
27457 fn cast(syntax: SyntaxNode) -> Option<Self> {
27458 if Self::can_cast(syntax.kind()) {
27459 Some(Self { syntax })
27460 } else {
27461 None
27462 }
27463 }
27464 #[inline]
27465 fn syntax(&self) -> &SyntaxNode {
27466 &self.syntax
27467 }
27468}
27469impl AstNode for TransformFromFunc {
27470 #[inline]
27471 fn can_cast(kind: SyntaxKind) -> bool {
27472 kind == SyntaxKind::TRANSFORM_FROM_FUNC
27473 }
27474 #[inline]
27475 fn cast(syntax: SyntaxNode) -> Option<Self> {
27476 if Self::can_cast(syntax.kind()) {
27477 Some(Self { syntax })
27478 } else {
27479 None
27480 }
27481 }
27482 #[inline]
27483 fn syntax(&self) -> &SyntaxNode {
27484 &self.syntax
27485 }
27486}
27487impl AstNode for TransformFuncOption {
27488 #[inline]
27489 fn can_cast(kind: SyntaxKind) -> bool {
27490 kind == SyntaxKind::TRANSFORM_FUNC_OPTION
27491 }
27492 #[inline]
27493 fn cast(syntax: SyntaxNode) -> Option<Self> {
27494 if Self::can_cast(syntax.kind()) {
27495 Some(Self { syntax })
27496 } else {
27497 None
27498 }
27499 }
27500 #[inline]
27501 fn syntax(&self) -> &SyntaxNode {
27502 &self.syntax
27503 }
27504}
27505impl AstNode for TransformToFunc {
27506 #[inline]
27507 fn can_cast(kind: SyntaxKind) -> bool {
27508 kind == SyntaxKind::TRANSFORM_TO_FUNC
27509 }
27510 #[inline]
27511 fn cast(syntax: SyntaxNode) -> Option<Self> {
27512 if Self::can_cast(syntax.kind()) {
27513 Some(Self { syntax })
27514 } else {
27515 None
27516 }
27517 }
27518 #[inline]
27519 fn syntax(&self) -> &SyntaxNode {
27520 &self.syntax
27521 }
27522}
27523impl AstNode for TriggerEvent {
27524 #[inline]
27525 fn can_cast(kind: SyntaxKind) -> bool {
27526 kind == SyntaxKind::TRIGGER_EVENT
27527 }
27528 #[inline]
27529 fn cast(syntax: SyntaxNode) -> Option<Self> {
27530 if Self::can_cast(syntax.kind()) {
27531 Some(Self { syntax })
27532 } else {
27533 None
27534 }
27535 }
27536 #[inline]
27537 fn syntax(&self) -> &SyntaxNode {
27538 &self.syntax
27539 }
27540}
27541impl AstNode for TriggerEventList {
27542 #[inline]
27543 fn can_cast(kind: SyntaxKind) -> bool {
27544 kind == SyntaxKind::TRIGGER_EVENT_LIST
27545 }
27546 #[inline]
27547 fn cast(syntax: SyntaxNode) -> Option<Self> {
27548 if Self::can_cast(syntax.kind()) {
27549 Some(Self { syntax })
27550 } else {
27551 None
27552 }
27553 }
27554 #[inline]
27555 fn syntax(&self) -> &SyntaxNode {
27556 &self.syntax
27557 }
27558}
27559impl AstNode for TriggerEventUpdate {
27560 #[inline]
27561 fn can_cast(kind: SyntaxKind) -> bool {
27562 kind == SyntaxKind::TRIGGER_EVENT_UPDATE
27563 }
27564 #[inline]
27565 fn cast(syntax: SyntaxNode) -> Option<Self> {
27566 if Self::can_cast(syntax.kind()) {
27567 Some(Self { syntax })
27568 } else {
27569 None
27570 }
27571 }
27572 #[inline]
27573 fn syntax(&self) -> &SyntaxNode {
27574 &self.syntax
27575 }
27576}
27577impl AstNode for TrimFn {
27578 #[inline]
27579 fn can_cast(kind: SyntaxKind) -> bool {
27580 kind == SyntaxKind::TRIM_FN
27581 }
27582 #[inline]
27583 fn cast(syntax: SyntaxNode) -> Option<Self> {
27584 if Self::can_cast(syntax.kind()) {
27585 Some(Self { syntax })
27586 } else {
27587 None
27588 }
27589 }
27590 #[inline]
27591 fn syntax(&self) -> &SyntaxNode {
27592 &self.syntax
27593 }
27594}
27595impl AstNode for Truncate {
27596 #[inline]
27597 fn can_cast(kind: SyntaxKind) -> bool {
27598 kind == SyntaxKind::TRUNCATE
27599 }
27600 #[inline]
27601 fn cast(syntax: SyntaxNode) -> Option<Self> {
27602 if Self::can_cast(syntax.kind()) {
27603 Some(Self { syntax })
27604 } else {
27605 None
27606 }
27607 }
27608 #[inline]
27609 fn syntax(&self) -> &SyntaxNode {
27610 &self.syntax
27611 }
27612}
27613impl AstNode for TupleExpr {
27614 #[inline]
27615 fn can_cast(kind: SyntaxKind) -> bool {
27616 kind == SyntaxKind::TUPLE_EXPR
27617 }
27618 #[inline]
27619 fn cast(syntax: SyntaxNode) -> Option<Self> {
27620 if Self::can_cast(syntax.kind()) {
27621 Some(Self { syntax })
27622 } else {
27623 None
27624 }
27625 }
27626 #[inline]
27627 fn syntax(&self) -> &SyntaxNode {
27628 &self.syntax
27629 }
27630}
27631impl AstNode for UnicodeNormalForm {
27632 #[inline]
27633 fn can_cast(kind: SyntaxKind) -> bool {
27634 kind == SyntaxKind::UNICODE_NORMAL_FORM
27635 }
27636 #[inline]
27637 fn cast(syntax: SyntaxNode) -> Option<Self> {
27638 if Self::can_cast(syntax.kind()) {
27639 Some(Self { syntax })
27640 } else {
27641 None
27642 }
27643 }
27644 #[inline]
27645 fn syntax(&self) -> &SyntaxNode {
27646 &self.syntax
27647 }
27648}
27649impl AstNode for UniqueConstraint {
27650 #[inline]
27651 fn can_cast(kind: SyntaxKind) -> bool {
27652 kind == SyntaxKind::UNIQUE_CONSTRAINT
27653 }
27654 #[inline]
27655 fn cast(syntax: SyntaxNode) -> Option<Self> {
27656 if Self::can_cast(syntax.kind()) {
27657 Some(Self { syntax })
27658 } else {
27659 None
27660 }
27661 }
27662 #[inline]
27663 fn syntax(&self) -> &SyntaxNode {
27664 &self.syntax
27665 }
27666}
27667impl AstNode for Unlisten {
27668 #[inline]
27669 fn can_cast(kind: SyntaxKind) -> bool {
27670 kind == SyntaxKind::UNLISTEN
27671 }
27672 #[inline]
27673 fn cast(syntax: SyntaxNode) -> Option<Self> {
27674 if Self::can_cast(syntax.kind()) {
27675 Some(Self { syntax })
27676 } else {
27677 None
27678 }
27679 }
27680 #[inline]
27681 fn syntax(&self) -> &SyntaxNode {
27682 &self.syntax
27683 }
27684}
27685impl AstNode for Update {
27686 #[inline]
27687 fn can_cast(kind: SyntaxKind) -> bool {
27688 kind == SyntaxKind::UPDATE
27689 }
27690 #[inline]
27691 fn cast(syntax: SyntaxNode) -> Option<Self> {
27692 if Self::can_cast(syntax.kind()) {
27693 Some(Self { syntax })
27694 } else {
27695 None
27696 }
27697 }
27698 #[inline]
27699 fn syntax(&self) -> &SyntaxNode {
27700 &self.syntax
27701 }
27702}
27703impl AstNode for UsingClause {
27704 #[inline]
27705 fn can_cast(kind: SyntaxKind) -> bool {
27706 kind == SyntaxKind::USING_CLAUSE
27707 }
27708 #[inline]
27709 fn cast(syntax: SyntaxNode) -> Option<Self> {
27710 if Self::can_cast(syntax.kind()) {
27711 Some(Self { syntax })
27712 } else {
27713 None
27714 }
27715 }
27716 #[inline]
27717 fn syntax(&self) -> &SyntaxNode {
27718 &self.syntax
27719 }
27720}
27721impl AstNode for UsingIndex {
27722 #[inline]
27723 fn can_cast(kind: SyntaxKind) -> bool {
27724 kind == SyntaxKind::USING_INDEX
27725 }
27726 #[inline]
27727 fn cast(syntax: SyntaxNode) -> Option<Self> {
27728 if Self::can_cast(syntax.kind()) {
27729 Some(Self { syntax })
27730 } else {
27731 None
27732 }
27733 }
27734 #[inline]
27735 fn syntax(&self) -> &SyntaxNode {
27736 &self.syntax
27737 }
27738}
27739impl AstNode for UsingMethod {
27740 #[inline]
27741 fn can_cast(kind: SyntaxKind) -> bool {
27742 kind == SyntaxKind::USING_METHOD
27743 }
27744 #[inline]
27745 fn cast(syntax: SyntaxNode) -> Option<Self> {
27746 if Self::can_cast(syntax.kind()) {
27747 Some(Self { syntax })
27748 } else {
27749 None
27750 }
27751 }
27752 #[inline]
27753 fn syntax(&self) -> &SyntaxNode {
27754 &self.syntax
27755 }
27756}
27757impl AstNode for UsingOnClause {
27758 #[inline]
27759 fn can_cast(kind: SyntaxKind) -> bool {
27760 kind == SyntaxKind::USING_ON_CLAUSE
27761 }
27762 #[inline]
27763 fn cast(syntax: SyntaxNode) -> Option<Self> {
27764 if Self::can_cast(syntax.kind()) {
27765 Some(Self { syntax })
27766 } else {
27767 None
27768 }
27769 }
27770 #[inline]
27771 fn syntax(&self) -> &SyntaxNode {
27772 &self.syntax
27773 }
27774}
27775impl AstNode for Vacuum {
27776 #[inline]
27777 fn can_cast(kind: SyntaxKind) -> bool {
27778 kind == SyntaxKind::VACUUM
27779 }
27780 #[inline]
27781 fn cast(syntax: SyntaxNode) -> Option<Self> {
27782 if Self::can_cast(syntax.kind()) {
27783 Some(Self { syntax })
27784 } else {
27785 None
27786 }
27787 }
27788 #[inline]
27789 fn syntax(&self) -> &SyntaxNode {
27790 &self.syntax
27791 }
27792}
27793impl AstNode for VacuumOption {
27794 #[inline]
27795 fn can_cast(kind: SyntaxKind) -> bool {
27796 kind == SyntaxKind::VACUUM_OPTION
27797 }
27798 #[inline]
27799 fn cast(syntax: SyntaxNode) -> Option<Self> {
27800 if Self::can_cast(syntax.kind()) {
27801 Some(Self { syntax })
27802 } else {
27803 None
27804 }
27805 }
27806 #[inline]
27807 fn syntax(&self) -> &SyntaxNode {
27808 &self.syntax
27809 }
27810}
27811impl AstNode for VacuumOptionList {
27812 #[inline]
27813 fn can_cast(kind: SyntaxKind) -> bool {
27814 kind == SyntaxKind::VACUUM_OPTION_LIST
27815 }
27816 #[inline]
27817 fn cast(syntax: SyntaxNode) -> Option<Self> {
27818 if Self::can_cast(syntax.kind()) {
27819 Some(Self { syntax })
27820 } else {
27821 None
27822 }
27823 }
27824 #[inline]
27825 fn syntax(&self) -> &SyntaxNode {
27826 &self.syntax
27827 }
27828}
27829impl AstNode for ValidateConstraint {
27830 #[inline]
27831 fn can_cast(kind: SyntaxKind) -> bool {
27832 kind == SyntaxKind::VALIDATE_CONSTRAINT
27833 }
27834 #[inline]
27835 fn cast(syntax: SyntaxNode) -> Option<Self> {
27836 if Self::can_cast(syntax.kind()) {
27837 Some(Self { syntax })
27838 } else {
27839 None
27840 }
27841 }
27842 #[inline]
27843 fn syntax(&self) -> &SyntaxNode {
27844 &self.syntax
27845 }
27846}
27847impl AstNode for Values {
27848 #[inline]
27849 fn can_cast(kind: SyntaxKind) -> bool {
27850 kind == SyntaxKind::VALUES
27851 }
27852 #[inline]
27853 fn cast(syntax: SyntaxNode) -> Option<Self> {
27854 if Self::can_cast(syntax.kind()) {
27855 Some(Self { syntax })
27856 } else {
27857 None
27858 }
27859 }
27860 #[inline]
27861 fn syntax(&self) -> &SyntaxNode {
27862 &self.syntax
27863 }
27864}
27865impl AstNode for Variant {
27866 #[inline]
27867 fn can_cast(kind: SyntaxKind) -> bool {
27868 kind == SyntaxKind::VARIANT
27869 }
27870 #[inline]
27871 fn cast(syntax: SyntaxNode) -> Option<Self> {
27872 if Self::can_cast(syntax.kind()) {
27873 Some(Self { syntax })
27874 } else {
27875 None
27876 }
27877 }
27878 #[inline]
27879 fn syntax(&self) -> &SyntaxNode {
27880 &self.syntax
27881 }
27882}
27883impl AstNode for VariantList {
27884 #[inline]
27885 fn can_cast(kind: SyntaxKind) -> bool {
27886 kind == SyntaxKind::VARIANT_LIST
27887 }
27888 #[inline]
27889 fn cast(syntax: SyntaxNode) -> Option<Self> {
27890 if Self::can_cast(syntax.kind()) {
27891 Some(Self { syntax })
27892 } else {
27893 None
27894 }
27895 }
27896 #[inline]
27897 fn syntax(&self) -> &SyntaxNode {
27898 &self.syntax
27899 }
27900}
27901impl AstNode for VolatilityFuncOption {
27902 #[inline]
27903 fn can_cast(kind: SyntaxKind) -> bool {
27904 kind == SyntaxKind::VOLATILITY_FUNC_OPTION
27905 }
27906 #[inline]
27907 fn cast(syntax: SyntaxNode) -> Option<Self> {
27908 if Self::can_cast(syntax.kind()) {
27909 Some(Self { syntax })
27910 } else {
27911 None
27912 }
27913 }
27914 #[inline]
27915 fn syntax(&self) -> &SyntaxNode {
27916 &self.syntax
27917 }
27918}
27919impl AstNode for WhenClause {
27920 #[inline]
27921 fn can_cast(kind: SyntaxKind) -> bool {
27922 kind == SyntaxKind::WHEN_CLAUSE
27923 }
27924 #[inline]
27925 fn cast(syntax: SyntaxNode) -> Option<Self> {
27926 if Self::can_cast(syntax.kind()) {
27927 Some(Self { syntax })
27928 } else {
27929 None
27930 }
27931 }
27932 #[inline]
27933 fn syntax(&self) -> &SyntaxNode {
27934 &self.syntax
27935 }
27936}
27937impl AstNode for WhenClauseList {
27938 #[inline]
27939 fn can_cast(kind: SyntaxKind) -> bool {
27940 kind == SyntaxKind::WHEN_CLAUSE_LIST
27941 }
27942 #[inline]
27943 fn cast(syntax: SyntaxNode) -> Option<Self> {
27944 if Self::can_cast(syntax.kind()) {
27945 Some(Self { syntax })
27946 } else {
27947 None
27948 }
27949 }
27950 #[inline]
27951 fn syntax(&self) -> &SyntaxNode {
27952 &self.syntax
27953 }
27954}
27955impl AstNode for WhenCondition {
27956 #[inline]
27957 fn can_cast(kind: SyntaxKind) -> bool {
27958 kind == SyntaxKind::WHEN_CONDITION
27959 }
27960 #[inline]
27961 fn cast(syntax: SyntaxNode) -> Option<Self> {
27962 if Self::can_cast(syntax.kind()) {
27963 Some(Self { syntax })
27964 } else {
27965 None
27966 }
27967 }
27968 #[inline]
27969 fn syntax(&self) -> &SyntaxNode {
27970 &self.syntax
27971 }
27972}
27973impl AstNode for WhereClause {
27974 #[inline]
27975 fn can_cast(kind: SyntaxKind) -> bool {
27976 kind == SyntaxKind::WHERE_CLAUSE
27977 }
27978 #[inline]
27979 fn cast(syntax: SyntaxNode) -> Option<Self> {
27980 if Self::can_cast(syntax.kind()) {
27981 Some(Self { syntax })
27982 } else {
27983 None
27984 }
27985 }
27986 #[inline]
27987 fn syntax(&self) -> &SyntaxNode {
27988 &self.syntax
27989 }
27990}
27991impl AstNode for WhereConditionClause {
27992 #[inline]
27993 fn can_cast(kind: SyntaxKind) -> bool {
27994 kind == SyntaxKind::WHERE_CONDITION_CLAUSE
27995 }
27996 #[inline]
27997 fn cast(syntax: SyntaxNode) -> Option<Self> {
27998 if Self::can_cast(syntax.kind()) {
27999 Some(Self { syntax })
28000 } else {
28001 None
28002 }
28003 }
28004 #[inline]
28005 fn syntax(&self) -> &SyntaxNode {
28006 &self.syntax
28007 }
28008}
28009impl AstNode for WhereCurrentOf {
28010 #[inline]
28011 fn can_cast(kind: SyntaxKind) -> bool {
28012 kind == SyntaxKind::WHERE_CURRENT_OF
28013 }
28014 #[inline]
28015 fn cast(syntax: SyntaxNode) -> Option<Self> {
28016 if Self::can_cast(syntax.kind()) {
28017 Some(Self { syntax })
28018 } else {
28019 None
28020 }
28021 }
28022 #[inline]
28023 fn syntax(&self) -> &SyntaxNode {
28024 &self.syntax
28025 }
28026}
28027impl AstNode for WindowClause {
28028 #[inline]
28029 fn can_cast(kind: SyntaxKind) -> bool {
28030 kind == SyntaxKind::WINDOW_CLAUSE
28031 }
28032 #[inline]
28033 fn cast(syntax: SyntaxNode) -> Option<Self> {
28034 if Self::can_cast(syntax.kind()) {
28035 Some(Self { syntax })
28036 } else {
28037 None
28038 }
28039 }
28040 #[inline]
28041 fn syntax(&self) -> &SyntaxNode {
28042 &self.syntax
28043 }
28044}
28045impl AstNode for WindowDef {
28046 #[inline]
28047 fn can_cast(kind: SyntaxKind) -> bool {
28048 kind == SyntaxKind::WINDOW_DEF
28049 }
28050 #[inline]
28051 fn cast(syntax: SyntaxNode) -> Option<Self> {
28052 if Self::can_cast(syntax.kind()) {
28053 Some(Self { syntax })
28054 } else {
28055 None
28056 }
28057 }
28058 #[inline]
28059 fn syntax(&self) -> &SyntaxNode {
28060 &self.syntax
28061 }
28062}
28063impl AstNode for WindowFuncOption {
28064 #[inline]
28065 fn can_cast(kind: SyntaxKind) -> bool {
28066 kind == SyntaxKind::WINDOW_FUNC_OPTION
28067 }
28068 #[inline]
28069 fn cast(syntax: SyntaxNode) -> Option<Self> {
28070 if Self::can_cast(syntax.kind()) {
28071 Some(Self { syntax })
28072 } else {
28073 None
28074 }
28075 }
28076 #[inline]
28077 fn syntax(&self) -> &SyntaxNode {
28078 &self.syntax
28079 }
28080}
28081impl AstNode for WindowSpec {
28082 #[inline]
28083 fn can_cast(kind: SyntaxKind) -> bool {
28084 kind == SyntaxKind::WINDOW_SPEC
28085 }
28086 #[inline]
28087 fn cast(syntax: SyntaxNode) -> Option<Self> {
28088 if Self::can_cast(syntax.kind()) {
28089 Some(Self { syntax })
28090 } else {
28091 None
28092 }
28093 }
28094 #[inline]
28095 fn syntax(&self) -> &SyntaxNode {
28096 &self.syntax
28097 }
28098}
28099impl AstNode for WithClause {
28100 #[inline]
28101 fn can_cast(kind: SyntaxKind) -> bool {
28102 kind == SyntaxKind::WITH_CLAUSE
28103 }
28104 #[inline]
28105 fn cast(syntax: SyntaxNode) -> Option<Self> {
28106 if Self::can_cast(syntax.kind()) {
28107 Some(Self { syntax })
28108 } else {
28109 None
28110 }
28111 }
28112 #[inline]
28113 fn syntax(&self) -> &SyntaxNode {
28114 &self.syntax
28115 }
28116}
28117impl AstNode for WithData {
28118 #[inline]
28119 fn can_cast(kind: SyntaxKind) -> bool {
28120 kind == SyntaxKind::WITH_DATA
28121 }
28122 #[inline]
28123 fn cast(syntax: SyntaxNode) -> Option<Self> {
28124 if Self::can_cast(syntax.kind()) {
28125 Some(Self { syntax })
28126 } else {
28127 None
28128 }
28129 }
28130 #[inline]
28131 fn syntax(&self) -> &SyntaxNode {
28132 &self.syntax
28133 }
28134}
28135impl AstNode for WithNoData {
28136 #[inline]
28137 fn can_cast(kind: SyntaxKind) -> bool {
28138 kind == SyntaxKind::WITH_NO_DATA
28139 }
28140 #[inline]
28141 fn cast(syntax: SyntaxNode) -> Option<Self> {
28142 if Self::can_cast(syntax.kind()) {
28143 Some(Self { syntax })
28144 } else {
28145 None
28146 }
28147 }
28148 #[inline]
28149 fn syntax(&self) -> &SyntaxNode {
28150 &self.syntax
28151 }
28152}
28153impl AstNode for WithOptions {
28154 #[inline]
28155 fn can_cast(kind: SyntaxKind) -> bool {
28156 kind == SyntaxKind::WITH_OPTIONS
28157 }
28158 #[inline]
28159 fn cast(syntax: SyntaxNode) -> Option<Self> {
28160 if Self::can_cast(syntax.kind()) {
28161 Some(Self { syntax })
28162 } else {
28163 None
28164 }
28165 }
28166 #[inline]
28167 fn syntax(&self) -> &SyntaxNode {
28168 &self.syntax
28169 }
28170}
28171impl AstNode for WithParams {
28172 #[inline]
28173 fn can_cast(kind: SyntaxKind) -> bool {
28174 kind == SyntaxKind::WITH_PARAMS
28175 }
28176 #[inline]
28177 fn cast(syntax: SyntaxNode) -> Option<Self> {
28178 if Self::can_cast(syntax.kind()) {
28179 Some(Self { syntax })
28180 } else {
28181 None
28182 }
28183 }
28184 #[inline]
28185 fn syntax(&self) -> &SyntaxNode {
28186 &self.syntax
28187 }
28188}
28189impl AstNode for WithTable {
28190 #[inline]
28191 fn can_cast(kind: SyntaxKind) -> bool {
28192 kind == SyntaxKind::WITH_TABLE
28193 }
28194 #[inline]
28195 fn cast(syntax: SyntaxNode) -> Option<Self> {
28196 if Self::can_cast(syntax.kind()) {
28197 Some(Self { syntax })
28198 } else {
28199 None
28200 }
28201 }
28202 #[inline]
28203 fn syntax(&self) -> &SyntaxNode {
28204 &self.syntax
28205 }
28206}
28207impl AstNode for WithTimezone {
28208 #[inline]
28209 fn can_cast(kind: SyntaxKind) -> bool {
28210 kind == SyntaxKind::WITH_TIMEZONE
28211 }
28212 #[inline]
28213 fn cast(syntax: SyntaxNode) -> Option<Self> {
28214 if Self::can_cast(syntax.kind()) {
28215 Some(Self { syntax })
28216 } else {
28217 None
28218 }
28219 }
28220 #[inline]
28221 fn syntax(&self) -> &SyntaxNode {
28222 &self.syntax
28223 }
28224}
28225impl AstNode for WithinClause {
28226 #[inline]
28227 fn can_cast(kind: SyntaxKind) -> bool {
28228 kind == SyntaxKind::WITHIN_CLAUSE
28229 }
28230 #[inline]
28231 fn cast(syntax: SyntaxNode) -> Option<Self> {
28232 if Self::can_cast(syntax.kind()) {
28233 Some(Self { syntax })
28234 } else {
28235 None
28236 }
28237 }
28238 #[inline]
28239 fn syntax(&self) -> &SyntaxNode {
28240 &self.syntax
28241 }
28242}
28243impl AstNode for WithoutOids {
28244 #[inline]
28245 fn can_cast(kind: SyntaxKind) -> bool {
28246 kind == SyntaxKind::WITHOUT_OIDS
28247 }
28248 #[inline]
28249 fn cast(syntax: SyntaxNode) -> Option<Self> {
28250 if Self::can_cast(syntax.kind()) {
28251 Some(Self { syntax })
28252 } else {
28253 None
28254 }
28255 }
28256 #[inline]
28257 fn syntax(&self) -> &SyntaxNode {
28258 &self.syntax
28259 }
28260}
28261impl AstNode for WithoutTimezone {
28262 #[inline]
28263 fn can_cast(kind: SyntaxKind) -> bool {
28264 kind == SyntaxKind::WITHOUT_TIMEZONE
28265 }
28266 #[inline]
28267 fn cast(syntax: SyntaxNode) -> Option<Self> {
28268 if Self::can_cast(syntax.kind()) {
28269 Some(Self { syntax })
28270 } else {
28271 None
28272 }
28273 }
28274 #[inline]
28275 fn syntax(&self) -> &SyntaxNode {
28276 &self.syntax
28277 }
28278}
28279impl AstNode for XmlAttributeList {
28280 #[inline]
28281 fn can_cast(kind: SyntaxKind) -> bool {
28282 kind == SyntaxKind::XML_ATTRIBUTE_LIST
28283 }
28284 #[inline]
28285 fn cast(syntax: SyntaxNode) -> Option<Self> {
28286 if Self::can_cast(syntax.kind()) {
28287 Some(Self { syntax })
28288 } else {
28289 None
28290 }
28291 }
28292 #[inline]
28293 fn syntax(&self) -> &SyntaxNode {
28294 &self.syntax
28295 }
28296}
28297impl AstNode for XmlColumnOption {
28298 #[inline]
28299 fn can_cast(kind: SyntaxKind) -> bool {
28300 kind == SyntaxKind::XML_COLUMN_OPTION
28301 }
28302 #[inline]
28303 fn cast(syntax: SyntaxNode) -> Option<Self> {
28304 if Self::can_cast(syntax.kind()) {
28305 Some(Self { syntax })
28306 } else {
28307 None
28308 }
28309 }
28310 #[inline]
28311 fn syntax(&self) -> &SyntaxNode {
28312 &self.syntax
28313 }
28314}
28315impl AstNode for XmlColumnOptionList {
28316 #[inline]
28317 fn can_cast(kind: SyntaxKind) -> bool {
28318 kind == SyntaxKind::XML_COLUMN_OPTION_LIST
28319 }
28320 #[inline]
28321 fn cast(syntax: SyntaxNode) -> Option<Self> {
28322 if Self::can_cast(syntax.kind()) {
28323 Some(Self { syntax })
28324 } else {
28325 None
28326 }
28327 }
28328 #[inline]
28329 fn syntax(&self) -> &SyntaxNode {
28330 &self.syntax
28331 }
28332}
28333impl AstNode for XmlElementFn {
28334 #[inline]
28335 fn can_cast(kind: SyntaxKind) -> bool {
28336 kind == SyntaxKind::XML_ELEMENT_FN
28337 }
28338 #[inline]
28339 fn cast(syntax: SyntaxNode) -> Option<Self> {
28340 if Self::can_cast(syntax.kind()) {
28341 Some(Self { syntax })
28342 } else {
28343 None
28344 }
28345 }
28346 #[inline]
28347 fn syntax(&self) -> &SyntaxNode {
28348 &self.syntax
28349 }
28350}
28351impl AstNode for XmlExistsFn {
28352 #[inline]
28353 fn can_cast(kind: SyntaxKind) -> bool {
28354 kind == SyntaxKind::XML_EXISTS_FN
28355 }
28356 #[inline]
28357 fn cast(syntax: SyntaxNode) -> Option<Self> {
28358 if Self::can_cast(syntax.kind()) {
28359 Some(Self { syntax })
28360 } else {
28361 None
28362 }
28363 }
28364 #[inline]
28365 fn syntax(&self) -> &SyntaxNode {
28366 &self.syntax
28367 }
28368}
28369impl AstNode for XmlForestFn {
28370 #[inline]
28371 fn can_cast(kind: SyntaxKind) -> bool {
28372 kind == SyntaxKind::XML_FOREST_FN
28373 }
28374 #[inline]
28375 fn cast(syntax: SyntaxNode) -> Option<Self> {
28376 if Self::can_cast(syntax.kind()) {
28377 Some(Self { syntax })
28378 } else {
28379 None
28380 }
28381 }
28382 #[inline]
28383 fn syntax(&self) -> &SyntaxNode {
28384 &self.syntax
28385 }
28386}
28387impl AstNode for XmlNamespace {
28388 #[inline]
28389 fn can_cast(kind: SyntaxKind) -> bool {
28390 kind == SyntaxKind::XML_NAMESPACE
28391 }
28392 #[inline]
28393 fn cast(syntax: SyntaxNode) -> Option<Self> {
28394 if Self::can_cast(syntax.kind()) {
28395 Some(Self { syntax })
28396 } else {
28397 None
28398 }
28399 }
28400 #[inline]
28401 fn syntax(&self) -> &SyntaxNode {
28402 &self.syntax
28403 }
28404}
28405impl AstNode for XmlNamespaceList {
28406 #[inline]
28407 fn can_cast(kind: SyntaxKind) -> bool {
28408 kind == SyntaxKind::XML_NAMESPACE_LIST
28409 }
28410 #[inline]
28411 fn cast(syntax: SyntaxNode) -> Option<Self> {
28412 if Self::can_cast(syntax.kind()) {
28413 Some(Self { syntax })
28414 } else {
28415 None
28416 }
28417 }
28418 #[inline]
28419 fn syntax(&self) -> &SyntaxNode {
28420 &self.syntax
28421 }
28422}
28423impl AstNode for XmlParseFn {
28424 #[inline]
28425 fn can_cast(kind: SyntaxKind) -> bool {
28426 kind == SyntaxKind::XML_PARSE_FN
28427 }
28428 #[inline]
28429 fn cast(syntax: SyntaxNode) -> Option<Self> {
28430 if Self::can_cast(syntax.kind()) {
28431 Some(Self { syntax })
28432 } else {
28433 None
28434 }
28435 }
28436 #[inline]
28437 fn syntax(&self) -> &SyntaxNode {
28438 &self.syntax
28439 }
28440}
28441impl AstNode for XmlPassingMech {
28442 #[inline]
28443 fn can_cast(kind: SyntaxKind) -> bool {
28444 kind == SyntaxKind::XML_PASSING_MECH
28445 }
28446 #[inline]
28447 fn cast(syntax: SyntaxNode) -> Option<Self> {
28448 if Self::can_cast(syntax.kind()) {
28449 Some(Self { syntax })
28450 } else {
28451 None
28452 }
28453 }
28454 #[inline]
28455 fn syntax(&self) -> &SyntaxNode {
28456 &self.syntax
28457 }
28458}
28459impl AstNode for XmlPiFn {
28460 #[inline]
28461 fn can_cast(kind: SyntaxKind) -> bool {
28462 kind == SyntaxKind::XML_PI_FN
28463 }
28464 #[inline]
28465 fn cast(syntax: SyntaxNode) -> Option<Self> {
28466 if Self::can_cast(syntax.kind()) {
28467 Some(Self { syntax })
28468 } else {
28469 None
28470 }
28471 }
28472 #[inline]
28473 fn syntax(&self) -> &SyntaxNode {
28474 &self.syntax
28475 }
28476}
28477impl AstNode for XmlRootFn {
28478 #[inline]
28479 fn can_cast(kind: SyntaxKind) -> bool {
28480 kind == SyntaxKind::XML_ROOT_FN
28481 }
28482 #[inline]
28483 fn cast(syntax: SyntaxNode) -> Option<Self> {
28484 if Self::can_cast(syntax.kind()) {
28485 Some(Self { syntax })
28486 } else {
28487 None
28488 }
28489 }
28490 #[inline]
28491 fn syntax(&self) -> &SyntaxNode {
28492 &self.syntax
28493 }
28494}
28495impl AstNode for XmlRowPassingClause {
28496 #[inline]
28497 fn can_cast(kind: SyntaxKind) -> bool {
28498 kind == SyntaxKind::XML_ROW_PASSING_CLAUSE
28499 }
28500 #[inline]
28501 fn cast(syntax: SyntaxNode) -> Option<Self> {
28502 if Self::can_cast(syntax.kind()) {
28503 Some(Self { syntax })
28504 } else {
28505 None
28506 }
28507 }
28508 #[inline]
28509 fn syntax(&self) -> &SyntaxNode {
28510 &self.syntax
28511 }
28512}
28513impl AstNode for XmlSerializeFn {
28514 #[inline]
28515 fn can_cast(kind: SyntaxKind) -> bool {
28516 kind == SyntaxKind::XML_SERIALIZE_FN
28517 }
28518 #[inline]
28519 fn cast(syntax: SyntaxNode) -> Option<Self> {
28520 if Self::can_cast(syntax.kind()) {
28521 Some(Self { syntax })
28522 } else {
28523 None
28524 }
28525 }
28526 #[inline]
28527 fn syntax(&self) -> &SyntaxNode {
28528 &self.syntax
28529 }
28530}
28531impl AstNode for XmlTable {
28532 #[inline]
28533 fn can_cast(kind: SyntaxKind) -> bool {
28534 kind == SyntaxKind::XML_TABLE
28535 }
28536 #[inline]
28537 fn cast(syntax: SyntaxNode) -> Option<Self> {
28538 if Self::can_cast(syntax.kind()) {
28539 Some(Self { syntax })
28540 } else {
28541 None
28542 }
28543 }
28544 #[inline]
28545 fn syntax(&self) -> &SyntaxNode {
28546 &self.syntax
28547 }
28548}
28549impl AstNode for XmlTableColumn {
28550 #[inline]
28551 fn can_cast(kind: SyntaxKind) -> bool {
28552 kind == SyntaxKind::XML_TABLE_COLUMN
28553 }
28554 #[inline]
28555 fn cast(syntax: SyntaxNode) -> Option<Self> {
28556 if Self::can_cast(syntax.kind()) {
28557 Some(Self { syntax })
28558 } else {
28559 None
28560 }
28561 }
28562 #[inline]
28563 fn syntax(&self) -> &SyntaxNode {
28564 &self.syntax
28565 }
28566}
28567impl AstNode for XmlTableColumnList {
28568 #[inline]
28569 fn can_cast(kind: SyntaxKind) -> bool {
28570 kind == SyntaxKind::XML_TABLE_COLUMN_LIST
28571 }
28572 #[inline]
28573 fn cast(syntax: SyntaxNode) -> Option<Self> {
28574 if Self::can_cast(syntax.kind()) {
28575 Some(Self { syntax })
28576 } else {
28577 None
28578 }
28579 }
28580 #[inline]
28581 fn syntax(&self) -> &SyntaxNode {
28582 &self.syntax
28583 }
28584}
28585impl AstNode for AlterColumnOption {
28586 #[inline]
28587 fn can_cast(kind: SyntaxKind) -> bool {
28588 matches!(
28589 kind,
28590 SyntaxKind::ADD_GENERATED
28591 | SyntaxKind::DROP_DEFAULT
28592 | SyntaxKind::DROP_EXPRESSION
28593 | SyntaxKind::DROP_IDENTITY
28594 | SyntaxKind::DROP_NOT_NULL
28595 | SyntaxKind::INHERIT
28596 | SyntaxKind::NO_INHERIT
28597 | SyntaxKind::RESET_OPTIONS
28598 | SyntaxKind::RESTART
28599 | SyntaxKind::SET_COMPRESSION
28600 | SyntaxKind::SET_DEFAULT
28601 | SyntaxKind::SET_EXPRESSION
28602 | SyntaxKind::SET_GENERATED
28603 | SyntaxKind::SET_GENERATED_OPTIONS
28604 | SyntaxKind::SET_NOT_NULL
28605 | SyntaxKind::SET_OPTIONS
28606 | SyntaxKind::SET_OPTIONS_LIST
28607 | SyntaxKind::SET_SEQUENCE_OPTION
28608 | SyntaxKind::SET_STATISTICS
28609 | SyntaxKind::SET_STORAGE
28610 | SyntaxKind::SET_TYPE
28611 )
28612 }
28613 #[inline]
28614 fn cast(syntax: SyntaxNode) -> Option<Self> {
28615 let res = match syntax.kind() {
28616 SyntaxKind::ADD_GENERATED => AlterColumnOption::AddGenerated(AddGenerated { syntax }),
28617 SyntaxKind::DROP_DEFAULT => AlterColumnOption::DropDefault(DropDefault { syntax }),
28618 SyntaxKind::DROP_EXPRESSION => {
28619 AlterColumnOption::DropExpression(DropExpression { syntax })
28620 }
28621 SyntaxKind::DROP_IDENTITY => AlterColumnOption::DropIdentity(DropIdentity { syntax }),
28622 SyntaxKind::DROP_NOT_NULL => AlterColumnOption::DropNotNull(DropNotNull { syntax }),
28623 SyntaxKind::INHERIT => AlterColumnOption::Inherit(Inherit { syntax }),
28624 SyntaxKind::NO_INHERIT => AlterColumnOption::NoInherit(NoInherit { syntax }),
28625 SyntaxKind::RESET_OPTIONS => AlterColumnOption::ResetOptions(ResetOptions { syntax }),
28626 SyntaxKind::RESTART => AlterColumnOption::Restart(Restart { syntax }),
28627 SyntaxKind::SET_COMPRESSION => {
28628 AlterColumnOption::SetCompression(SetCompression { syntax })
28629 }
28630 SyntaxKind::SET_DEFAULT => AlterColumnOption::SetDefault(SetDefault { syntax }),
28631 SyntaxKind::SET_EXPRESSION => {
28632 AlterColumnOption::SetExpression(SetExpression { syntax })
28633 }
28634 SyntaxKind::SET_GENERATED => AlterColumnOption::SetGenerated(SetGenerated { syntax }),
28635 SyntaxKind::SET_GENERATED_OPTIONS => {
28636 AlterColumnOption::SetGeneratedOptions(SetGeneratedOptions { syntax })
28637 }
28638 SyntaxKind::SET_NOT_NULL => AlterColumnOption::SetNotNull(SetNotNull { syntax }),
28639 SyntaxKind::SET_OPTIONS => AlterColumnOption::SetOptions(SetOptions { syntax }),
28640 SyntaxKind::SET_OPTIONS_LIST => {
28641 AlterColumnOption::SetOptionsList(SetOptionsList { syntax })
28642 }
28643 SyntaxKind::SET_SEQUENCE_OPTION => {
28644 AlterColumnOption::SetSequenceOption(SetSequenceOption { syntax })
28645 }
28646 SyntaxKind::SET_STATISTICS => {
28647 AlterColumnOption::SetStatistics(SetStatistics { syntax })
28648 }
28649 SyntaxKind::SET_STORAGE => AlterColumnOption::SetStorage(SetStorage { syntax }),
28650 SyntaxKind::SET_TYPE => AlterColumnOption::SetType(SetType { syntax }),
28651 _ => {
28652 return None;
28653 }
28654 };
28655 Some(res)
28656 }
28657 #[inline]
28658 fn syntax(&self) -> &SyntaxNode {
28659 match self {
28660 AlterColumnOption::AddGenerated(it) => &it.syntax,
28661 AlterColumnOption::DropDefault(it) => &it.syntax,
28662 AlterColumnOption::DropExpression(it) => &it.syntax,
28663 AlterColumnOption::DropIdentity(it) => &it.syntax,
28664 AlterColumnOption::DropNotNull(it) => &it.syntax,
28665 AlterColumnOption::Inherit(it) => &it.syntax,
28666 AlterColumnOption::NoInherit(it) => &it.syntax,
28667 AlterColumnOption::ResetOptions(it) => &it.syntax,
28668 AlterColumnOption::Restart(it) => &it.syntax,
28669 AlterColumnOption::SetCompression(it) => &it.syntax,
28670 AlterColumnOption::SetDefault(it) => &it.syntax,
28671 AlterColumnOption::SetExpression(it) => &it.syntax,
28672 AlterColumnOption::SetGenerated(it) => &it.syntax,
28673 AlterColumnOption::SetGeneratedOptions(it) => &it.syntax,
28674 AlterColumnOption::SetNotNull(it) => &it.syntax,
28675 AlterColumnOption::SetOptions(it) => &it.syntax,
28676 AlterColumnOption::SetOptionsList(it) => &it.syntax,
28677 AlterColumnOption::SetSequenceOption(it) => &it.syntax,
28678 AlterColumnOption::SetStatistics(it) => &it.syntax,
28679 AlterColumnOption::SetStorage(it) => &it.syntax,
28680 AlterColumnOption::SetType(it) => &it.syntax,
28681 }
28682 }
28683}
28684impl From<AddGenerated> for AlterColumnOption {
28685 #[inline]
28686 fn from(node: AddGenerated) -> AlterColumnOption {
28687 AlterColumnOption::AddGenerated(node)
28688 }
28689}
28690impl From<DropDefault> for AlterColumnOption {
28691 #[inline]
28692 fn from(node: DropDefault) -> AlterColumnOption {
28693 AlterColumnOption::DropDefault(node)
28694 }
28695}
28696impl From<DropExpression> for AlterColumnOption {
28697 #[inline]
28698 fn from(node: DropExpression) -> AlterColumnOption {
28699 AlterColumnOption::DropExpression(node)
28700 }
28701}
28702impl From<DropIdentity> for AlterColumnOption {
28703 #[inline]
28704 fn from(node: DropIdentity) -> AlterColumnOption {
28705 AlterColumnOption::DropIdentity(node)
28706 }
28707}
28708impl From<DropNotNull> for AlterColumnOption {
28709 #[inline]
28710 fn from(node: DropNotNull) -> AlterColumnOption {
28711 AlterColumnOption::DropNotNull(node)
28712 }
28713}
28714impl From<Inherit> for AlterColumnOption {
28715 #[inline]
28716 fn from(node: Inherit) -> AlterColumnOption {
28717 AlterColumnOption::Inherit(node)
28718 }
28719}
28720impl From<NoInherit> for AlterColumnOption {
28721 #[inline]
28722 fn from(node: NoInherit) -> AlterColumnOption {
28723 AlterColumnOption::NoInherit(node)
28724 }
28725}
28726impl From<ResetOptions> for AlterColumnOption {
28727 #[inline]
28728 fn from(node: ResetOptions) -> AlterColumnOption {
28729 AlterColumnOption::ResetOptions(node)
28730 }
28731}
28732impl From<Restart> for AlterColumnOption {
28733 #[inline]
28734 fn from(node: Restart) -> AlterColumnOption {
28735 AlterColumnOption::Restart(node)
28736 }
28737}
28738impl From<SetCompression> for AlterColumnOption {
28739 #[inline]
28740 fn from(node: SetCompression) -> AlterColumnOption {
28741 AlterColumnOption::SetCompression(node)
28742 }
28743}
28744impl From<SetDefault> for AlterColumnOption {
28745 #[inline]
28746 fn from(node: SetDefault) -> AlterColumnOption {
28747 AlterColumnOption::SetDefault(node)
28748 }
28749}
28750impl From<SetExpression> for AlterColumnOption {
28751 #[inline]
28752 fn from(node: SetExpression) -> AlterColumnOption {
28753 AlterColumnOption::SetExpression(node)
28754 }
28755}
28756impl From<SetGenerated> for AlterColumnOption {
28757 #[inline]
28758 fn from(node: SetGenerated) -> AlterColumnOption {
28759 AlterColumnOption::SetGenerated(node)
28760 }
28761}
28762impl From<SetGeneratedOptions> for AlterColumnOption {
28763 #[inline]
28764 fn from(node: SetGeneratedOptions) -> AlterColumnOption {
28765 AlterColumnOption::SetGeneratedOptions(node)
28766 }
28767}
28768impl From<SetNotNull> for AlterColumnOption {
28769 #[inline]
28770 fn from(node: SetNotNull) -> AlterColumnOption {
28771 AlterColumnOption::SetNotNull(node)
28772 }
28773}
28774impl From<SetOptions> for AlterColumnOption {
28775 #[inline]
28776 fn from(node: SetOptions) -> AlterColumnOption {
28777 AlterColumnOption::SetOptions(node)
28778 }
28779}
28780impl From<SetOptionsList> for AlterColumnOption {
28781 #[inline]
28782 fn from(node: SetOptionsList) -> AlterColumnOption {
28783 AlterColumnOption::SetOptionsList(node)
28784 }
28785}
28786impl From<SetSequenceOption> for AlterColumnOption {
28787 #[inline]
28788 fn from(node: SetSequenceOption) -> AlterColumnOption {
28789 AlterColumnOption::SetSequenceOption(node)
28790 }
28791}
28792impl From<SetStatistics> for AlterColumnOption {
28793 #[inline]
28794 fn from(node: SetStatistics) -> AlterColumnOption {
28795 AlterColumnOption::SetStatistics(node)
28796 }
28797}
28798impl From<SetStorage> for AlterColumnOption {
28799 #[inline]
28800 fn from(node: SetStorage) -> AlterColumnOption {
28801 AlterColumnOption::SetStorage(node)
28802 }
28803}
28804impl From<SetType> for AlterColumnOption {
28805 #[inline]
28806 fn from(node: SetType) -> AlterColumnOption {
28807 AlterColumnOption::SetType(node)
28808 }
28809}
28810impl AstNode for AlterDomainAction {
28811 #[inline]
28812 fn can_cast(kind: SyntaxKind) -> bool {
28813 matches!(
28814 kind,
28815 SyntaxKind::ADD_CONSTRAINT
28816 | SyntaxKind::DROP_CONSTRAINT
28817 | SyntaxKind::DROP_DEFAULT
28818 | SyntaxKind::DROP_NOT_NULL
28819 | SyntaxKind::OWNER_TO
28820 | SyntaxKind::RENAME_CONSTRAINT
28821 | SyntaxKind::RENAME_TO
28822 | SyntaxKind::SET_DEFAULT
28823 | SyntaxKind::SET_NOT_NULL
28824 | SyntaxKind::SET_SCHEMA
28825 | SyntaxKind::VALIDATE_CONSTRAINT
28826 )
28827 }
28828 #[inline]
28829 fn cast(syntax: SyntaxNode) -> Option<Self> {
28830 let res = match syntax.kind() {
28831 SyntaxKind::ADD_CONSTRAINT => {
28832 AlterDomainAction::AddConstraint(AddConstraint { syntax })
28833 }
28834 SyntaxKind::DROP_CONSTRAINT => {
28835 AlterDomainAction::DropConstraint(DropConstraint { syntax })
28836 }
28837 SyntaxKind::DROP_DEFAULT => AlterDomainAction::DropDefault(DropDefault { syntax }),
28838 SyntaxKind::DROP_NOT_NULL => AlterDomainAction::DropNotNull(DropNotNull { syntax }),
28839 SyntaxKind::OWNER_TO => AlterDomainAction::OwnerTo(OwnerTo { syntax }),
28840 SyntaxKind::RENAME_CONSTRAINT => {
28841 AlterDomainAction::RenameConstraint(RenameConstraint { syntax })
28842 }
28843 SyntaxKind::RENAME_TO => AlterDomainAction::RenameTo(RenameTo { syntax }),
28844 SyntaxKind::SET_DEFAULT => AlterDomainAction::SetDefault(SetDefault { syntax }),
28845 SyntaxKind::SET_NOT_NULL => AlterDomainAction::SetNotNull(SetNotNull { syntax }),
28846 SyntaxKind::SET_SCHEMA => AlterDomainAction::SetSchema(SetSchema { syntax }),
28847 SyntaxKind::VALIDATE_CONSTRAINT => {
28848 AlterDomainAction::ValidateConstraint(ValidateConstraint { syntax })
28849 }
28850 _ => {
28851 return None;
28852 }
28853 };
28854 Some(res)
28855 }
28856 #[inline]
28857 fn syntax(&self) -> &SyntaxNode {
28858 match self {
28859 AlterDomainAction::AddConstraint(it) => &it.syntax,
28860 AlterDomainAction::DropConstraint(it) => &it.syntax,
28861 AlterDomainAction::DropDefault(it) => &it.syntax,
28862 AlterDomainAction::DropNotNull(it) => &it.syntax,
28863 AlterDomainAction::OwnerTo(it) => &it.syntax,
28864 AlterDomainAction::RenameConstraint(it) => &it.syntax,
28865 AlterDomainAction::RenameTo(it) => &it.syntax,
28866 AlterDomainAction::SetDefault(it) => &it.syntax,
28867 AlterDomainAction::SetNotNull(it) => &it.syntax,
28868 AlterDomainAction::SetSchema(it) => &it.syntax,
28869 AlterDomainAction::ValidateConstraint(it) => &it.syntax,
28870 }
28871 }
28872}
28873impl From<AddConstraint> for AlterDomainAction {
28874 #[inline]
28875 fn from(node: AddConstraint) -> AlterDomainAction {
28876 AlterDomainAction::AddConstraint(node)
28877 }
28878}
28879impl From<DropConstraint> for AlterDomainAction {
28880 #[inline]
28881 fn from(node: DropConstraint) -> AlterDomainAction {
28882 AlterDomainAction::DropConstraint(node)
28883 }
28884}
28885impl From<DropDefault> for AlterDomainAction {
28886 #[inline]
28887 fn from(node: DropDefault) -> AlterDomainAction {
28888 AlterDomainAction::DropDefault(node)
28889 }
28890}
28891impl From<DropNotNull> for AlterDomainAction {
28892 #[inline]
28893 fn from(node: DropNotNull) -> AlterDomainAction {
28894 AlterDomainAction::DropNotNull(node)
28895 }
28896}
28897impl From<OwnerTo> for AlterDomainAction {
28898 #[inline]
28899 fn from(node: OwnerTo) -> AlterDomainAction {
28900 AlterDomainAction::OwnerTo(node)
28901 }
28902}
28903impl From<RenameConstraint> for AlterDomainAction {
28904 #[inline]
28905 fn from(node: RenameConstraint) -> AlterDomainAction {
28906 AlterDomainAction::RenameConstraint(node)
28907 }
28908}
28909impl From<RenameTo> for AlterDomainAction {
28910 #[inline]
28911 fn from(node: RenameTo) -> AlterDomainAction {
28912 AlterDomainAction::RenameTo(node)
28913 }
28914}
28915impl From<SetDefault> for AlterDomainAction {
28916 #[inline]
28917 fn from(node: SetDefault) -> AlterDomainAction {
28918 AlterDomainAction::SetDefault(node)
28919 }
28920}
28921impl From<SetNotNull> for AlterDomainAction {
28922 #[inline]
28923 fn from(node: SetNotNull) -> AlterDomainAction {
28924 AlterDomainAction::SetNotNull(node)
28925 }
28926}
28927impl From<SetSchema> for AlterDomainAction {
28928 #[inline]
28929 fn from(node: SetSchema) -> AlterDomainAction {
28930 AlterDomainAction::SetSchema(node)
28931 }
28932}
28933impl From<ValidateConstraint> for AlterDomainAction {
28934 #[inline]
28935 fn from(node: ValidateConstraint) -> AlterDomainAction {
28936 AlterDomainAction::ValidateConstraint(node)
28937 }
28938}
28939impl AstNode for AlterIndexAction {
28940 #[inline]
28941 fn can_cast(kind: SyntaxKind) -> bool {
28942 matches!(
28943 kind,
28944 SyntaxKind::ALTER_SET_STATISTICS
28945 | SyntaxKind::ATTACH_PARTITION
28946 | SyntaxKind::DEPENDS_ON_EXTENSION
28947 | SyntaxKind::NO_DEPENDS_ON_EXTENSION
28948 | SyntaxKind::RENAME_TO
28949 | SyntaxKind::RESET_OPTIONS
28950 | SyntaxKind::SET_OPTIONS
28951 | SyntaxKind::SET_TABLESPACE
28952 )
28953 }
28954 #[inline]
28955 fn cast(syntax: SyntaxNode) -> Option<Self> {
28956 let res = match syntax.kind() {
28957 SyntaxKind::ALTER_SET_STATISTICS => {
28958 AlterIndexAction::AlterSetStatistics(AlterSetStatistics { syntax })
28959 }
28960 SyntaxKind::ATTACH_PARTITION => {
28961 AlterIndexAction::AttachPartition(AttachPartition { syntax })
28962 }
28963 SyntaxKind::DEPENDS_ON_EXTENSION => {
28964 AlterIndexAction::DependsOnExtension(DependsOnExtension { syntax })
28965 }
28966 SyntaxKind::NO_DEPENDS_ON_EXTENSION => {
28967 AlterIndexAction::NoDependsOnExtension(NoDependsOnExtension { syntax })
28968 }
28969 SyntaxKind::RENAME_TO => AlterIndexAction::RenameTo(RenameTo { syntax }),
28970 SyntaxKind::RESET_OPTIONS => AlterIndexAction::ResetOptions(ResetOptions { syntax }),
28971 SyntaxKind::SET_OPTIONS => AlterIndexAction::SetOptions(SetOptions { syntax }),
28972 SyntaxKind::SET_TABLESPACE => AlterIndexAction::SetTablespace(SetTablespace { syntax }),
28973 _ => {
28974 return None;
28975 }
28976 };
28977 Some(res)
28978 }
28979 #[inline]
28980 fn syntax(&self) -> &SyntaxNode {
28981 match self {
28982 AlterIndexAction::AlterSetStatistics(it) => &it.syntax,
28983 AlterIndexAction::AttachPartition(it) => &it.syntax,
28984 AlterIndexAction::DependsOnExtension(it) => &it.syntax,
28985 AlterIndexAction::NoDependsOnExtension(it) => &it.syntax,
28986 AlterIndexAction::RenameTo(it) => &it.syntax,
28987 AlterIndexAction::ResetOptions(it) => &it.syntax,
28988 AlterIndexAction::SetOptions(it) => &it.syntax,
28989 AlterIndexAction::SetTablespace(it) => &it.syntax,
28990 }
28991 }
28992}
28993impl From<AlterSetStatistics> for AlterIndexAction {
28994 #[inline]
28995 fn from(node: AlterSetStatistics) -> AlterIndexAction {
28996 AlterIndexAction::AlterSetStatistics(node)
28997 }
28998}
28999impl From<AttachPartition> for AlterIndexAction {
29000 #[inline]
29001 fn from(node: AttachPartition) -> AlterIndexAction {
29002 AlterIndexAction::AttachPartition(node)
29003 }
29004}
29005impl From<DependsOnExtension> for AlterIndexAction {
29006 #[inline]
29007 fn from(node: DependsOnExtension) -> AlterIndexAction {
29008 AlterIndexAction::DependsOnExtension(node)
29009 }
29010}
29011impl From<NoDependsOnExtension> for AlterIndexAction {
29012 #[inline]
29013 fn from(node: NoDependsOnExtension) -> AlterIndexAction {
29014 AlterIndexAction::NoDependsOnExtension(node)
29015 }
29016}
29017impl From<RenameTo> for AlterIndexAction {
29018 #[inline]
29019 fn from(node: RenameTo) -> AlterIndexAction {
29020 AlterIndexAction::RenameTo(node)
29021 }
29022}
29023impl From<ResetOptions> for AlterIndexAction {
29024 #[inline]
29025 fn from(node: ResetOptions) -> AlterIndexAction {
29026 AlterIndexAction::ResetOptions(node)
29027 }
29028}
29029impl From<SetOptions> for AlterIndexAction {
29030 #[inline]
29031 fn from(node: SetOptions) -> AlterIndexAction {
29032 AlterIndexAction::SetOptions(node)
29033 }
29034}
29035impl From<SetTablespace> for AlterIndexAction {
29036 #[inline]
29037 fn from(node: SetTablespace) -> AlterIndexAction {
29038 AlterIndexAction::SetTablespace(node)
29039 }
29040}
29041impl AstNode for AlterMaterializedViewAction {
29042 #[inline]
29043 fn can_cast(kind: SyntaxKind) -> bool {
29044 matches!(
29045 kind,
29046 SyntaxKind::DEPENDS_ON_EXTENSION
29047 | SyntaxKind::NO_DEPENDS_ON_EXTENSION
29048 | SyntaxKind::RENAME_COLUMN
29049 | SyntaxKind::RENAME_TO
29050 | SyntaxKind::SET_SCHEMA
29051 )
29052 }
29053 #[inline]
29054 fn cast(syntax: SyntaxNode) -> Option<Self> {
29055 let res = match syntax.kind() {
29056 SyntaxKind::DEPENDS_ON_EXTENSION => {
29057 AlterMaterializedViewAction::DependsOnExtension(DependsOnExtension { syntax })
29058 }
29059 SyntaxKind::NO_DEPENDS_ON_EXTENSION => {
29060 AlterMaterializedViewAction::NoDependsOnExtension(NoDependsOnExtension { syntax })
29061 }
29062 SyntaxKind::RENAME_COLUMN => {
29063 AlterMaterializedViewAction::RenameColumn(RenameColumn { syntax })
29064 }
29065 SyntaxKind::RENAME_TO => AlterMaterializedViewAction::RenameTo(RenameTo { syntax }),
29066 SyntaxKind::SET_SCHEMA => AlterMaterializedViewAction::SetSchema(SetSchema { syntax }),
29067 _ => {
29068 if let Some(result) = AlterTableAction::cast(syntax) {
29069 return Some(AlterMaterializedViewAction::AlterTableAction(result));
29070 }
29071 return None;
29072 }
29073 };
29074 Some(res)
29075 }
29076 #[inline]
29077 fn syntax(&self) -> &SyntaxNode {
29078 match self {
29079 AlterMaterializedViewAction::DependsOnExtension(it) => &it.syntax,
29080 AlterMaterializedViewAction::NoDependsOnExtension(it) => &it.syntax,
29081 AlterMaterializedViewAction::RenameColumn(it) => &it.syntax,
29082 AlterMaterializedViewAction::RenameTo(it) => &it.syntax,
29083 AlterMaterializedViewAction::SetSchema(it) => &it.syntax,
29084 AlterMaterializedViewAction::AlterTableAction(it) => it.syntax(),
29085 }
29086 }
29087}
29088impl From<DependsOnExtension> for AlterMaterializedViewAction {
29089 #[inline]
29090 fn from(node: DependsOnExtension) -> AlterMaterializedViewAction {
29091 AlterMaterializedViewAction::DependsOnExtension(node)
29092 }
29093}
29094impl From<NoDependsOnExtension> for AlterMaterializedViewAction {
29095 #[inline]
29096 fn from(node: NoDependsOnExtension) -> AlterMaterializedViewAction {
29097 AlterMaterializedViewAction::NoDependsOnExtension(node)
29098 }
29099}
29100impl From<RenameColumn> for AlterMaterializedViewAction {
29101 #[inline]
29102 fn from(node: RenameColumn) -> AlterMaterializedViewAction {
29103 AlterMaterializedViewAction::RenameColumn(node)
29104 }
29105}
29106impl From<RenameTo> for AlterMaterializedViewAction {
29107 #[inline]
29108 fn from(node: RenameTo) -> AlterMaterializedViewAction {
29109 AlterMaterializedViewAction::RenameTo(node)
29110 }
29111}
29112impl From<SetSchema> for AlterMaterializedViewAction {
29113 #[inline]
29114 fn from(node: SetSchema) -> AlterMaterializedViewAction {
29115 AlterMaterializedViewAction::SetSchema(node)
29116 }
29117}
29118impl AstNode for AlterTableAction {
29119 #[inline]
29120 fn can_cast(kind: SyntaxKind) -> bool {
29121 matches!(
29122 kind,
29123 SyntaxKind::ADD_COLUMN
29124 | SyntaxKind::ADD_CONSTRAINT
29125 | SyntaxKind::ALTER_COLUMN
29126 | SyntaxKind::ALTER_CONSTRAINT
29127 | SyntaxKind::ATTACH_PARTITION
29128 | SyntaxKind::CLUSTER_ON
29129 | SyntaxKind::DETACH_PARTITION
29130 | SyntaxKind::DISABLE_RLS
29131 | SyntaxKind::DISABLE_RULE
29132 | SyntaxKind::DISABLE_TRIGGER
29133 | SyntaxKind::DROP_COLUMN
29134 | SyntaxKind::DROP_CONSTRAINT
29135 | SyntaxKind::ENABLE_ALWAYS_RULE
29136 | SyntaxKind::ENABLE_ALWAYS_TRIGGER
29137 | SyntaxKind::ENABLE_REPLICA_RULE
29138 | SyntaxKind::ENABLE_REPLICA_TRIGGER
29139 | SyntaxKind::ENABLE_RLS
29140 | SyntaxKind::ENABLE_RULE
29141 | SyntaxKind::ENABLE_TRIGGER
29142 | SyntaxKind::FORCE_RLS
29143 | SyntaxKind::INHERIT_TABLE
29144 | SyntaxKind::MERGE_PARTITIONS
29145 | SyntaxKind::NO_FORCE_RLS
29146 | SyntaxKind::NO_INHERIT_TABLE
29147 | SyntaxKind::NOT_OF
29148 | SyntaxKind::OF_TYPE
29149 | SyntaxKind::OPTION_ITEM_LIST
29150 | SyntaxKind::OWNER_TO
29151 | SyntaxKind::RENAME_COLUMN
29152 | SyntaxKind::RENAME_CONSTRAINT
29153 | SyntaxKind::RENAME_TO
29154 | SyntaxKind::REPLICA_IDENTITY
29155 | SyntaxKind::RESET_OPTIONS
29156 | SyntaxKind::SET_ACCESS_METHOD
29157 | SyntaxKind::SET_LOGGED
29158 | SyntaxKind::SET_OPTIONS
29159 | SyntaxKind::SET_SCHEMA
29160 | SyntaxKind::SET_TABLESPACE
29161 | SyntaxKind::SET_UNLOGGED
29162 | SyntaxKind::SET_WITHOUT_CLUSTER
29163 | SyntaxKind::SET_WITHOUT_OIDS
29164 | SyntaxKind::SPLIT_PARTITION
29165 | SyntaxKind::VALIDATE_CONSTRAINT
29166 )
29167 }
29168 #[inline]
29169 fn cast(syntax: SyntaxNode) -> Option<Self> {
29170 let res = match syntax.kind() {
29171 SyntaxKind::ADD_COLUMN => AlterTableAction::AddColumn(AddColumn { syntax }),
29172 SyntaxKind::ADD_CONSTRAINT => AlterTableAction::AddConstraint(AddConstraint { syntax }),
29173 SyntaxKind::ALTER_COLUMN => AlterTableAction::AlterColumn(AlterColumn { syntax }),
29174 SyntaxKind::ALTER_CONSTRAINT => {
29175 AlterTableAction::AlterConstraint(AlterConstraint { syntax })
29176 }
29177 SyntaxKind::ATTACH_PARTITION => {
29178 AlterTableAction::AttachPartition(AttachPartition { syntax })
29179 }
29180 SyntaxKind::CLUSTER_ON => AlterTableAction::ClusterOn(ClusterOn { syntax }),
29181 SyntaxKind::DETACH_PARTITION => {
29182 AlterTableAction::DetachPartition(DetachPartition { syntax })
29183 }
29184 SyntaxKind::DISABLE_RLS => AlterTableAction::DisableRls(DisableRls { syntax }),
29185 SyntaxKind::DISABLE_RULE => AlterTableAction::DisableRule(DisableRule { syntax }),
29186 SyntaxKind::DISABLE_TRIGGER => {
29187 AlterTableAction::DisableTrigger(DisableTrigger { syntax })
29188 }
29189 SyntaxKind::DROP_COLUMN => AlterTableAction::DropColumn(DropColumn { syntax }),
29190 SyntaxKind::DROP_CONSTRAINT => {
29191 AlterTableAction::DropConstraint(DropConstraint { syntax })
29192 }
29193 SyntaxKind::ENABLE_ALWAYS_RULE => {
29194 AlterTableAction::EnableAlwaysRule(EnableAlwaysRule { syntax })
29195 }
29196 SyntaxKind::ENABLE_ALWAYS_TRIGGER => {
29197 AlterTableAction::EnableAlwaysTrigger(EnableAlwaysTrigger { syntax })
29198 }
29199 SyntaxKind::ENABLE_REPLICA_RULE => {
29200 AlterTableAction::EnableReplicaRule(EnableReplicaRule { syntax })
29201 }
29202 SyntaxKind::ENABLE_REPLICA_TRIGGER => {
29203 AlterTableAction::EnableReplicaTrigger(EnableReplicaTrigger { syntax })
29204 }
29205 SyntaxKind::ENABLE_RLS => AlterTableAction::EnableRls(EnableRls { syntax }),
29206 SyntaxKind::ENABLE_RULE => AlterTableAction::EnableRule(EnableRule { syntax }),
29207 SyntaxKind::ENABLE_TRIGGER => AlterTableAction::EnableTrigger(EnableTrigger { syntax }),
29208 SyntaxKind::FORCE_RLS => AlterTableAction::ForceRls(ForceRls { syntax }),
29209 SyntaxKind::INHERIT_TABLE => AlterTableAction::InheritTable(InheritTable { syntax }),
29210 SyntaxKind::MERGE_PARTITIONS => {
29211 AlterTableAction::MergePartitions(MergePartitions { syntax })
29212 }
29213 SyntaxKind::NO_FORCE_RLS => AlterTableAction::NoForceRls(NoForceRls { syntax }),
29214 SyntaxKind::NO_INHERIT_TABLE => {
29215 AlterTableAction::NoInheritTable(NoInheritTable { syntax })
29216 }
29217 SyntaxKind::NOT_OF => AlterTableAction::NotOf(NotOf { syntax }),
29218 SyntaxKind::OF_TYPE => AlterTableAction::OfType(OfType { syntax }),
29219 SyntaxKind::OPTION_ITEM_LIST => {
29220 AlterTableAction::OptionItemList(OptionItemList { syntax })
29221 }
29222 SyntaxKind::OWNER_TO => AlterTableAction::OwnerTo(OwnerTo { syntax }),
29223 SyntaxKind::RENAME_COLUMN => AlterTableAction::RenameColumn(RenameColumn { syntax }),
29224 SyntaxKind::RENAME_CONSTRAINT => {
29225 AlterTableAction::RenameConstraint(RenameConstraint { syntax })
29226 }
29227 SyntaxKind::RENAME_TO => AlterTableAction::RenameTo(RenameTo { syntax }),
29228 SyntaxKind::REPLICA_IDENTITY => {
29229 AlterTableAction::ReplicaIdentity(ReplicaIdentity { syntax })
29230 }
29231 SyntaxKind::RESET_OPTIONS => AlterTableAction::ResetOptions(ResetOptions { syntax }),
29232 SyntaxKind::SET_ACCESS_METHOD => {
29233 AlterTableAction::SetAccessMethod(SetAccessMethod { syntax })
29234 }
29235 SyntaxKind::SET_LOGGED => AlterTableAction::SetLogged(SetLogged { syntax }),
29236 SyntaxKind::SET_OPTIONS => AlterTableAction::SetOptions(SetOptions { syntax }),
29237 SyntaxKind::SET_SCHEMA => AlterTableAction::SetSchema(SetSchema { syntax }),
29238 SyntaxKind::SET_TABLESPACE => AlterTableAction::SetTablespace(SetTablespace { syntax }),
29239 SyntaxKind::SET_UNLOGGED => AlterTableAction::SetUnlogged(SetUnlogged { syntax }),
29240 SyntaxKind::SET_WITHOUT_CLUSTER => {
29241 AlterTableAction::SetWithoutCluster(SetWithoutCluster { syntax })
29242 }
29243 SyntaxKind::SET_WITHOUT_OIDS => {
29244 AlterTableAction::SetWithoutOids(SetWithoutOids { syntax })
29245 }
29246 SyntaxKind::SPLIT_PARTITION => {
29247 AlterTableAction::SplitPartition(SplitPartition { syntax })
29248 }
29249 SyntaxKind::VALIDATE_CONSTRAINT => {
29250 AlterTableAction::ValidateConstraint(ValidateConstraint { syntax })
29251 }
29252 _ => {
29253 return None;
29254 }
29255 };
29256 Some(res)
29257 }
29258 #[inline]
29259 fn syntax(&self) -> &SyntaxNode {
29260 match self {
29261 AlterTableAction::AddColumn(it) => &it.syntax,
29262 AlterTableAction::AddConstraint(it) => &it.syntax,
29263 AlterTableAction::AlterColumn(it) => &it.syntax,
29264 AlterTableAction::AlterConstraint(it) => &it.syntax,
29265 AlterTableAction::AttachPartition(it) => &it.syntax,
29266 AlterTableAction::ClusterOn(it) => &it.syntax,
29267 AlterTableAction::DetachPartition(it) => &it.syntax,
29268 AlterTableAction::DisableRls(it) => &it.syntax,
29269 AlterTableAction::DisableRule(it) => &it.syntax,
29270 AlterTableAction::DisableTrigger(it) => &it.syntax,
29271 AlterTableAction::DropColumn(it) => &it.syntax,
29272 AlterTableAction::DropConstraint(it) => &it.syntax,
29273 AlterTableAction::EnableAlwaysRule(it) => &it.syntax,
29274 AlterTableAction::EnableAlwaysTrigger(it) => &it.syntax,
29275 AlterTableAction::EnableReplicaRule(it) => &it.syntax,
29276 AlterTableAction::EnableReplicaTrigger(it) => &it.syntax,
29277 AlterTableAction::EnableRls(it) => &it.syntax,
29278 AlterTableAction::EnableRule(it) => &it.syntax,
29279 AlterTableAction::EnableTrigger(it) => &it.syntax,
29280 AlterTableAction::ForceRls(it) => &it.syntax,
29281 AlterTableAction::InheritTable(it) => &it.syntax,
29282 AlterTableAction::MergePartitions(it) => &it.syntax,
29283 AlterTableAction::NoForceRls(it) => &it.syntax,
29284 AlterTableAction::NoInheritTable(it) => &it.syntax,
29285 AlterTableAction::NotOf(it) => &it.syntax,
29286 AlterTableAction::OfType(it) => &it.syntax,
29287 AlterTableAction::OptionItemList(it) => &it.syntax,
29288 AlterTableAction::OwnerTo(it) => &it.syntax,
29289 AlterTableAction::RenameColumn(it) => &it.syntax,
29290 AlterTableAction::RenameConstraint(it) => &it.syntax,
29291 AlterTableAction::RenameTo(it) => &it.syntax,
29292 AlterTableAction::ReplicaIdentity(it) => &it.syntax,
29293 AlterTableAction::ResetOptions(it) => &it.syntax,
29294 AlterTableAction::SetAccessMethod(it) => &it.syntax,
29295 AlterTableAction::SetLogged(it) => &it.syntax,
29296 AlterTableAction::SetOptions(it) => &it.syntax,
29297 AlterTableAction::SetSchema(it) => &it.syntax,
29298 AlterTableAction::SetTablespace(it) => &it.syntax,
29299 AlterTableAction::SetUnlogged(it) => &it.syntax,
29300 AlterTableAction::SetWithoutCluster(it) => &it.syntax,
29301 AlterTableAction::SetWithoutOids(it) => &it.syntax,
29302 AlterTableAction::SplitPartition(it) => &it.syntax,
29303 AlterTableAction::ValidateConstraint(it) => &it.syntax,
29304 }
29305 }
29306}
29307impl From<AddColumn> for AlterTableAction {
29308 #[inline]
29309 fn from(node: AddColumn) -> AlterTableAction {
29310 AlterTableAction::AddColumn(node)
29311 }
29312}
29313impl From<AddConstraint> for AlterTableAction {
29314 #[inline]
29315 fn from(node: AddConstraint) -> AlterTableAction {
29316 AlterTableAction::AddConstraint(node)
29317 }
29318}
29319impl From<AlterColumn> for AlterTableAction {
29320 #[inline]
29321 fn from(node: AlterColumn) -> AlterTableAction {
29322 AlterTableAction::AlterColumn(node)
29323 }
29324}
29325impl From<AlterConstraint> for AlterTableAction {
29326 #[inline]
29327 fn from(node: AlterConstraint) -> AlterTableAction {
29328 AlterTableAction::AlterConstraint(node)
29329 }
29330}
29331impl From<AttachPartition> for AlterTableAction {
29332 #[inline]
29333 fn from(node: AttachPartition) -> AlterTableAction {
29334 AlterTableAction::AttachPartition(node)
29335 }
29336}
29337impl From<ClusterOn> for AlterTableAction {
29338 #[inline]
29339 fn from(node: ClusterOn) -> AlterTableAction {
29340 AlterTableAction::ClusterOn(node)
29341 }
29342}
29343impl From<DetachPartition> for AlterTableAction {
29344 #[inline]
29345 fn from(node: DetachPartition) -> AlterTableAction {
29346 AlterTableAction::DetachPartition(node)
29347 }
29348}
29349impl From<DisableRls> for AlterTableAction {
29350 #[inline]
29351 fn from(node: DisableRls) -> AlterTableAction {
29352 AlterTableAction::DisableRls(node)
29353 }
29354}
29355impl From<DisableRule> for AlterTableAction {
29356 #[inline]
29357 fn from(node: DisableRule) -> AlterTableAction {
29358 AlterTableAction::DisableRule(node)
29359 }
29360}
29361impl From<DisableTrigger> for AlterTableAction {
29362 #[inline]
29363 fn from(node: DisableTrigger) -> AlterTableAction {
29364 AlterTableAction::DisableTrigger(node)
29365 }
29366}
29367impl From<DropColumn> for AlterTableAction {
29368 #[inline]
29369 fn from(node: DropColumn) -> AlterTableAction {
29370 AlterTableAction::DropColumn(node)
29371 }
29372}
29373impl From<DropConstraint> for AlterTableAction {
29374 #[inline]
29375 fn from(node: DropConstraint) -> AlterTableAction {
29376 AlterTableAction::DropConstraint(node)
29377 }
29378}
29379impl From<EnableAlwaysRule> for AlterTableAction {
29380 #[inline]
29381 fn from(node: EnableAlwaysRule) -> AlterTableAction {
29382 AlterTableAction::EnableAlwaysRule(node)
29383 }
29384}
29385impl From<EnableAlwaysTrigger> for AlterTableAction {
29386 #[inline]
29387 fn from(node: EnableAlwaysTrigger) -> AlterTableAction {
29388 AlterTableAction::EnableAlwaysTrigger(node)
29389 }
29390}
29391impl From<EnableReplicaRule> for AlterTableAction {
29392 #[inline]
29393 fn from(node: EnableReplicaRule) -> AlterTableAction {
29394 AlterTableAction::EnableReplicaRule(node)
29395 }
29396}
29397impl From<EnableReplicaTrigger> for AlterTableAction {
29398 #[inline]
29399 fn from(node: EnableReplicaTrigger) -> AlterTableAction {
29400 AlterTableAction::EnableReplicaTrigger(node)
29401 }
29402}
29403impl From<EnableRls> for AlterTableAction {
29404 #[inline]
29405 fn from(node: EnableRls) -> AlterTableAction {
29406 AlterTableAction::EnableRls(node)
29407 }
29408}
29409impl From<EnableRule> for AlterTableAction {
29410 #[inline]
29411 fn from(node: EnableRule) -> AlterTableAction {
29412 AlterTableAction::EnableRule(node)
29413 }
29414}
29415impl From<EnableTrigger> for AlterTableAction {
29416 #[inline]
29417 fn from(node: EnableTrigger) -> AlterTableAction {
29418 AlterTableAction::EnableTrigger(node)
29419 }
29420}
29421impl From<ForceRls> for AlterTableAction {
29422 #[inline]
29423 fn from(node: ForceRls) -> AlterTableAction {
29424 AlterTableAction::ForceRls(node)
29425 }
29426}
29427impl From<InheritTable> for AlterTableAction {
29428 #[inline]
29429 fn from(node: InheritTable) -> AlterTableAction {
29430 AlterTableAction::InheritTable(node)
29431 }
29432}
29433impl From<MergePartitions> for AlterTableAction {
29434 #[inline]
29435 fn from(node: MergePartitions) -> AlterTableAction {
29436 AlterTableAction::MergePartitions(node)
29437 }
29438}
29439impl From<NoForceRls> for AlterTableAction {
29440 #[inline]
29441 fn from(node: NoForceRls) -> AlterTableAction {
29442 AlterTableAction::NoForceRls(node)
29443 }
29444}
29445impl From<NoInheritTable> for AlterTableAction {
29446 #[inline]
29447 fn from(node: NoInheritTable) -> AlterTableAction {
29448 AlterTableAction::NoInheritTable(node)
29449 }
29450}
29451impl From<NotOf> for AlterTableAction {
29452 #[inline]
29453 fn from(node: NotOf) -> AlterTableAction {
29454 AlterTableAction::NotOf(node)
29455 }
29456}
29457impl From<OfType> for AlterTableAction {
29458 #[inline]
29459 fn from(node: OfType) -> AlterTableAction {
29460 AlterTableAction::OfType(node)
29461 }
29462}
29463impl From<OptionItemList> for AlterTableAction {
29464 #[inline]
29465 fn from(node: OptionItemList) -> AlterTableAction {
29466 AlterTableAction::OptionItemList(node)
29467 }
29468}
29469impl From<OwnerTo> for AlterTableAction {
29470 #[inline]
29471 fn from(node: OwnerTo) -> AlterTableAction {
29472 AlterTableAction::OwnerTo(node)
29473 }
29474}
29475impl From<RenameColumn> for AlterTableAction {
29476 #[inline]
29477 fn from(node: RenameColumn) -> AlterTableAction {
29478 AlterTableAction::RenameColumn(node)
29479 }
29480}
29481impl From<RenameConstraint> for AlterTableAction {
29482 #[inline]
29483 fn from(node: RenameConstraint) -> AlterTableAction {
29484 AlterTableAction::RenameConstraint(node)
29485 }
29486}
29487impl From<RenameTo> for AlterTableAction {
29488 #[inline]
29489 fn from(node: RenameTo) -> AlterTableAction {
29490 AlterTableAction::RenameTo(node)
29491 }
29492}
29493impl From<ReplicaIdentity> for AlterTableAction {
29494 #[inline]
29495 fn from(node: ReplicaIdentity) -> AlterTableAction {
29496 AlterTableAction::ReplicaIdentity(node)
29497 }
29498}
29499impl From<ResetOptions> for AlterTableAction {
29500 #[inline]
29501 fn from(node: ResetOptions) -> AlterTableAction {
29502 AlterTableAction::ResetOptions(node)
29503 }
29504}
29505impl From<SetAccessMethod> for AlterTableAction {
29506 #[inline]
29507 fn from(node: SetAccessMethod) -> AlterTableAction {
29508 AlterTableAction::SetAccessMethod(node)
29509 }
29510}
29511impl From<SetLogged> for AlterTableAction {
29512 #[inline]
29513 fn from(node: SetLogged) -> AlterTableAction {
29514 AlterTableAction::SetLogged(node)
29515 }
29516}
29517impl From<SetOptions> for AlterTableAction {
29518 #[inline]
29519 fn from(node: SetOptions) -> AlterTableAction {
29520 AlterTableAction::SetOptions(node)
29521 }
29522}
29523impl From<SetSchema> for AlterTableAction {
29524 #[inline]
29525 fn from(node: SetSchema) -> AlterTableAction {
29526 AlterTableAction::SetSchema(node)
29527 }
29528}
29529impl From<SetTablespace> for AlterTableAction {
29530 #[inline]
29531 fn from(node: SetTablespace) -> AlterTableAction {
29532 AlterTableAction::SetTablespace(node)
29533 }
29534}
29535impl From<SetUnlogged> for AlterTableAction {
29536 #[inline]
29537 fn from(node: SetUnlogged) -> AlterTableAction {
29538 AlterTableAction::SetUnlogged(node)
29539 }
29540}
29541impl From<SetWithoutCluster> for AlterTableAction {
29542 #[inline]
29543 fn from(node: SetWithoutCluster) -> AlterTableAction {
29544 AlterTableAction::SetWithoutCluster(node)
29545 }
29546}
29547impl From<SetWithoutOids> for AlterTableAction {
29548 #[inline]
29549 fn from(node: SetWithoutOids) -> AlterTableAction {
29550 AlterTableAction::SetWithoutOids(node)
29551 }
29552}
29553impl From<SplitPartition> for AlterTableAction {
29554 #[inline]
29555 fn from(node: SplitPartition) -> AlterTableAction {
29556 AlterTableAction::SplitPartition(node)
29557 }
29558}
29559impl From<ValidateConstraint> for AlterTableAction {
29560 #[inline]
29561 fn from(node: ValidateConstraint) -> AlterTableAction {
29562 AlterTableAction::ValidateConstraint(node)
29563 }
29564}
29565impl AstNode for ColumnConstraint {
29566 #[inline]
29567 fn can_cast(kind: SyntaxKind) -> bool {
29568 matches!(
29569 kind,
29570 SyntaxKind::CHECK_CONSTRAINT
29571 | SyntaxKind::DEFAULT_CONSTRAINT
29572 | SyntaxKind::EXCLUDE_CONSTRAINT
29573 | SyntaxKind::NOT_NULL_CONSTRAINT
29574 | SyntaxKind::PRIMARY_KEY_CONSTRAINT
29575 | SyntaxKind::REFERENCES_CONSTRAINT
29576 | SyntaxKind::UNIQUE_CONSTRAINT
29577 )
29578 }
29579 #[inline]
29580 fn cast(syntax: SyntaxNode) -> Option<Self> {
29581 let res = match syntax.kind() {
29582 SyntaxKind::CHECK_CONSTRAINT => {
29583 ColumnConstraint::CheckConstraint(CheckConstraint { syntax })
29584 }
29585 SyntaxKind::DEFAULT_CONSTRAINT => {
29586 ColumnConstraint::DefaultConstraint(DefaultConstraint { syntax })
29587 }
29588 SyntaxKind::EXCLUDE_CONSTRAINT => {
29589 ColumnConstraint::ExcludeConstraint(ExcludeConstraint { syntax })
29590 }
29591 SyntaxKind::NOT_NULL_CONSTRAINT => {
29592 ColumnConstraint::NotNullConstraint(NotNullConstraint { syntax })
29593 }
29594 SyntaxKind::PRIMARY_KEY_CONSTRAINT => {
29595 ColumnConstraint::PrimaryKeyConstraint(PrimaryKeyConstraint { syntax })
29596 }
29597 SyntaxKind::REFERENCES_CONSTRAINT => {
29598 ColumnConstraint::ReferencesConstraint(ReferencesConstraint { syntax })
29599 }
29600 SyntaxKind::UNIQUE_CONSTRAINT => {
29601 ColumnConstraint::UniqueConstraint(UniqueConstraint { syntax })
29602 }
29603 _ => {
29604 return None;
29605 }
29606 };
29607 Some(res)
29608 }
29609 #[inline]
29610 fn syntax(&self) -> &SyntaxNode {
29611 match self {
29612 ColumnConstraint::CheckConstraint(it) => &it.syntax,
29613 ColumnConstraint::DefaultConstraint(it) => &it.syntax,
29614 ColumnConstraint::ExcludeConstraint(it) => &it.syntax,
29615 ColumnConstraint::NotNullConstraint(it) => &it.syntax,
29616 ColumnConstraint::PrimaryKeyConstraint(it) => &it.syntax,
29617 ColumnConstraint::ReferencesConstraint(it) => &it.syntax,
29618 ColumnConstraint::UniqueConstraint(it) => &it.syntax,
29619 }
29620 }
29621}
29622impl From<CheckConstraint> for ColumnConstraint {
29623 #[inline]
29624 fn from(node: CheckConstraint) -> ColumnConstraint {
29625 ColumnConstraint::CheckConstraint(node)
29626 }
29627}
29628impl From<DefaultConstraint> for ColumnConstraint {
29629 #[inline]
29630 fn from(node: DefaultConstraint) -> ColumnConstraint {
29631 ColumnConstraint::DefaultConstraint(node)
29632 }
29633}
29634impl From<ExcludeConstraint> for ColumnConstraint {
29635 #[inline]
29636 fn from(node: ExcludeConstraint) -> ColumnConstraint {
29637 ColumnConstraint::ExcludeConstraint(node)
29638 }
29639}
29640impl From<NotNullConstraint> for ColumnConstraint {
29641 #[inline]
29642 fn from(node: NotNullConstraint) -> ColumnConstraint {
29643 ColumnConstraint::NotNullConstraint(node)
29644 }
29645}
29646impl From<PrimaryKeyConstraint> for ColumnConstraint {
29647 #[inline]
29648 fn from(node: PrimaryKeyConstraint) -> ColumnConstraint {
29649 ColumnConstraint::PrimaryKeyConstraint(node)
29650 }
29651}
29652impl From<ReferencesConstraint> for ColumnConstraint {
29653 #[inline]
29654 fn from(node: ReferencesConstraint) -> ColumnConstraint {
29655 ColumnConstraint::ReferencesConstraint(node)
29656 }
29657}
29658impl From<UniqueConstraint> for ColumnConstraint {
29659 #[inline]
29660 fn from(node: UniqueConstraint) -> ColumnConstraint {
29661 ColumnConstraint::UniqueConstraint(node)
29662 }
29663}
29664impl AstNode for ConfigValue {
29665 #[inline]
29666 fn can_cast(kind: SyntaxKind) -> bool {
29667 matches!(kind, SyntaxKind::LITERAL | SyntaxKind::NAME_REF)
29668 }
29669 #[inline]
29670 fn cast(syntax: SyntaxNode) -> Option<Self> {
29671 let res = match syntax.kind() {
29672 SyntaxKind::LITERAL => ConfigValue::Literal(Literal { syntax }),
29673 SyntaxKind::NAME_REF => ConfigValue::NameRef(NameRef { syntax }),
29674 _ => {
29675 return None;
29676 }
29677 };
29678 Some(res)
29679 }
29680 #[inline]
29681 fn syntax(&self) -> &SyntaxNode {
29682 match self {
29683 ConfigValue::Literal(it) => &it.syntax,
29684 ConfigValue::NameRef(it) => &it.syntax,
29685 }
29686 }
29687}
29688impl From<Literal> for ConfigValue {
29689 #[inline]
29690 fn from(node: Literal) -> ConfigValue {
29691 ConfigValue::Literal(node)
29692 }
29693}
29694impl From<NameRef> for ConfigValue {
29695 #[inline]
29696 fn from(node: NameRef) -> ConfigValue {
29697 ConfigValue::NameRef(node)
29698 }
29699}
29700impl AstNode for ConflictAction {
29701 #[inline]
29702 fn can_cast(kind: SyntaxKind) -> bool {
29703 matches!(
29704 kind,
29705 SyntaxKind::CONFLICT_DO_NOTHING | SyntaxKind::CONFLICT_DO_UPDATE_SET
29706 )
29707 }
29708 #[inline]
29709 fn cast(syntax: SyntaxNode) -> Option<Self> {
29710 let res = match syntax.kind() {
29711 SyntaxKind::CONFLICT_DO_NOTHING => {
29712 ConflictAction::ConflictDoNothing(ConflictDoNothing { syntax })
29713 }
29714 SyntaxKind::CONFLICT_DO_UPDATE_SET => {
29715 ConflictAction::ConflictDoUpdateSet(ConflictDoUpdateSet { syntax })
29716 }
29717 _ => {
29718 return None;
29719 }
29720 };
29721 Some(res)
29722 }
29723 #[inline]
29724 fn syntax(&self) -> &SyntaxNode {
29725 match self {
29726 ConflictAction::ConflictDoNothing(it) => &it.syntax,
29727 ConflictAction::ConflictDoUpdateSet(it) => &it.syntax,
29728 }
29729 }
29730}
29731impl From<ConflictDoNothing> for ConflictAction {
29732 #[inline]
29733 fn from(node: ConflictDoNothing) -> ConflictAction {
29734 ConflictAction::ConflictDoNothing(node)
29735 }
29736}
29737impl From<ConflictDoUpdateSet> for ConflictAction {
29738 #[inline]
29739 fn from(node: ConflictDoUpdateSet) -> ConflictAction {
29740 ConflictAction::ConflictDoUpdateSet(node)
29741 }
29742}
29743impl AstNode for ConflictTarget {
29744 #[inline]
29745 fn can_cast(kind: SyntaxKind) -> bool {
29746 matches!(
29747 kind,
29748 SyntaxKind::CONFLICT_ON_CONSTRAINT | SyntaxKind::CONFLICT_ON_INDEX
29749 )
29750 }
29751 #[inline]
29752 fn cast(syntax: SyntaxNode) -> Option<Self> {
29753 let res = match syntax.kind() {
29754 SyntaxKind::CONFLICT_ON_CONSTRAINT => {
29755 ConflictTarget::ConflictOnConstraint(ConflictOnConstraint { syntax })
29756 }
29757 SyntaxKind::CONFLICT_ON_INDEX => {
29758 ConflictTarget::ConflictOnIndex(ConflictOnIndex { syntax })
29759 }
29760 _ => {
29761 return None;
29762 }
29763 };
29764 Some(res)
29765 }
29766 #[inline]
29767 fn syntax(&self) -> &SyntaxNode {
29768 match self {
29769 ConflictTarget::ConflictOnConstraint(it) => &it.syntax,
29770 ConflictTarget::ConflictOnIndex(it) => &it.syntax,
29771 }
29772 }
29773}
29774impl From<ConflictOnConstraint> for ConflictTarget {
29775 #[inline]
29776 fn from(node: ConflictOnConstraint) -> ConflictTarget {
29777 ConflictTarget::ConflictOnConstraint(node)
29778 }
29779}
29780impl From<ConflictOnIndex> for ConflictTarget {
29781 #[inline]
29782 fn from(node: ConflictOnIndex) -> ConflictTarget {
29783 ConflictTarget::ConflictOnIndex(node)
29784 }
29785}
29786impl AstNode for Constraint {
29787 #[inline]
29788 fn can_cast(kind: SyntaxKind) -> bool {
29789 matches!(
29790 kind,
29791 SyntaxKind::CHECK_CONSTRAINT
29792 | SyntaxKind::DEFAULT_CONSTRAINT
29793 | SyntaxKind::FOREIGN_KEY_CONSTRAINT
29794 | SyntaxKind::GENERATED_CONSTRAINT
29795 | SyntaxKind::NOT_NULL_CONSTRAINT
29796 | SyntaxKind::NULL_CONSTRAINT
29797 | SyntaxKind::PRIMARY_KEY_CONSTRAINT
29798 | SyntaxKind::REFERENCES_CONSTRAINT
29799 | SyntaxKind::UNIQUE_CONSTRAINT
29800 )
29801 }
29802 #[inline]
29803 fn cast(syntax: SyntaxNode) -> Option<Self> {
29804 let res = match syntax.kind() {
29805 SyntaxKind::CHECK_CONSTRAINT => Constraint::CheckConstraint(CheckConstraint { syntax }),
29806 SyntaxKind::DEFAULT_CONSTRAINT => {
29807 Constraint::DefaultConstraint(DefaultConstraint { syntax })
29808 }
29809 SyntaxKind::FOREIGN_KEY_CONSTRAINT => {
29810 Constraint::ForeignKeyConstraint(ForeignKeyConstraint { syntax })
29811 }
29812 SyntaxKind::GENERATED_CONSTRAINT => {
29813 Constraint::GeneratedConstraint(GeneratedConstraint { syntax })
29814 }
29815 SyntaxKind::NOT_NULL_CONSTRAINT => {
29816 Constraint::NotNullConstraint(NotNullConstraint { syntax })
29817 }
29818 SyntaxKind::NULL_CONSTRAINT => Constraint::NullConstraint(NullConstraint { syntax }),
29819 SyntaxKind::PRIMARY_KEY_CONSTRAINT => {
29820 Constraint::PrimaryKeyConstraint(PrimaryKeyConstraint { syntax })
29821 }
29822 SyntaxKind::REFERENCES_CONSTRAINT => {
29823 Constraint::ReferencesConstraint(ReferencesConstraint { syntax })
29824 }
29825 SyntaxKind::UNIQUE_CONSTRAINT => {
29826 Constraint::UniqueConstraint(UniqueConstraint { syntax })
29827 }
29828 _ => {
29829 return None;
29830 }
29831 };
29832 Some(res)
29833 }
29834 #[inline]
29835 fn syntax(&self) -> &SyntaxNode {
29836 match self {
29837 Constraint::CheckConstraint(it) => &it.syntax,
29838 Constraint::DefaultConstraint(it) => &it.syntax,
29839 Constraint::ForeignKeyConstraint(it) => &it.syntax,
29840 Constraint::GeneratedConstraint(it) => &it.syntax,
29841 Constraint::NotNullConstraint(it) => &it.syntax,
29842 Constraint::NullConstraint(it) => &it.syntax,
29843 Constraint::PrimaryKeyConstraint(it) => &it.syntax,
29844 Constraint::ReferencesConstraint(it) => &it.syntax,
29845 Constraint::UniqueConstraint(it) => &it.syntax,
29846 }
29847 }
29848}
29849impl From<CheckConstraint> for Constraint {
29850 #[inline]
29851 fn from(node: CheckConstraint) -> Constraint {
29852 Constraint::CheckConstraint(node)
29853 }
29854}
29855impl From<DefaultConstraint> for Constraint {
29856 #[inline]
29857 fn from(node: DefaultConstraint) -> Constraint {
29858 Constraint::DefaultConstraint(node)
29859 }
29860}
29861impl From<ForeignKeyConstraint> for Constraint {
29862 #[inline]
29863 fn from(node: ForeignKeyConstraint) -> Constraint {
29864 Constraint::ForeignKeyConstraint(node)
29865 }
29866}
29867impl From<GeneratedConstraint> for Constraint {
29868 #[inline]
29869 fn from(node: GeneratedConstraint) -> Constraint {
29870 Constraint::GeneratedConstraint(node)
29871 }
29872}
29873impl From<NotNullConstraint> for Constraint {
29874 #[inline]
29875 fn from(node: NotNullConstraint) -> Constraint {
29876 Constraint::NotNullConstraint(node)
29877 }
29878}
29879impl From<NullConstraint> for Constraint {
29880 #[inline]
29881 fn from(node: NullConstraint) -> Constraint {
29882 Constraint::NullConstraint(node)
29883 }
29884}
29885impl From<PrimaryKeyConstraint> for Constraint {
29886 #[inline]
29887 fn from(node: PrimaryKeyConstraint) -> Constraint {
29888 Constraint::PrimaryKeyConstraint(node)
29889 }
29890}
29891impl From<ReferencesConstraint> for Constraint {
29892 #[inline]
29893 fn from(node: ReferencesConstraint) -> Constraint {
29894 Constraint::ReferencesConstraint(node)
29895 }
29896}
29897impl From<UniqueConstraint> for Constraint {
29898 #[inline]
29899 fn from(node: UniqueConstraint) -> Constraint {
29900 Constraint::UniqueConstraint(node)
29901 }
29902}
29903impl AstNode for ExplainStmt {
29904 #[inline]
29905 fn can_cast(kind: SyntaxKind) -> bool {
29906 matches!(
29907 kind,
29908 SyntaxKind::COMPOUND_SELECT
29909 | SyntaxKind::CREATE_MATERIALIZED_VIEW
29910 | SyntaxKind::CREATE_TABLE_AS
29911 | SyntaxKind::DECLARE
29912 | SyntaxKind::DELETE
29913 | SyntaxKind::EXECUTE
29914 | SyntaxKind::INSERT
29915 | SyntaxKind::MERGE
29916 | SyntaxKind::PAREN_SELECT
29917 | SyntaxKind::SELECT
29918 | SyntaxKind::SELECT_INTO
29919 | SyntaxKind::TABLE
29920 | SyntaxKind::UPDATE
29921 | SyntaxKind::VALUES
29922 )
29923 }
29924 #[inline]
29925 fn cast(syntax: SyntaxNode) -> Option<Self> {
29926 let res = match syntax.kind() {
29927 SyntaxKind::COMPOUND_SELECT => ExplainStmt::CompoundSelect(CompoundSelect { syntax }),
29928 SyntaxKind::CREATE_MATERIALIZED_VIEW => {
29929 ExplainStmt::CreateMaterializedView(CreateMaterializedView { syntax })
29930 }
29931 SyntaxKind::CREATE_TABLE_AS => ExplainStmt::CreateTableAs(CreateTableAs { syntax }),
29932 SyntaxKind::DECLARE => ExplainStmt::Declare(Declare { syntax }),
29933 SyntaxKind::DELETE => ExplainStmt::Delete(Delete { syntax }),
29934 SyntaxKind::EXECUTE => ExplainStmt::Execute(Execute { syntax }),
29935 SyntaxKind::INSERT => ExplainStmt::Insert(Insert { syntax }),
29936 SyntaxKind::MERGE => ExplainStmt::Merge(Merge { syntax }),
29937 SyntaxKind::PAREN_SELECT => ExplainStmt::ParenSelect(ParenSelect { syntax }),
29938 SyntaxKind::SELECT => ExplainStmt::Select(Select { syntax }),
29939 SyntaxKind::SELECT_INTO => ExplainStmt::SelectInto(SelectInto { syntax }),
29940 SyntaxKind::TABLE => ExplainStmt::Table(Table { syntax }),
29941 SyntaxKind::UPDATE => ExplainStmt::Update(Update { syntax }),
29942 SyntaxKind::VALUES => ExplainStmt::Values(Values { syntax }),
29943 _ => {
29944 return None;
29945 }
29946 };
29947 Some(res)
29948 }
29949 #[inline]
29950 fn syntax(&self) -> &SyntaxNode {
29951 match self {
29952 ExplainStmt::CompoundSelect(it) => &it.syntax,
29953 ExplainStmt::CreateMaterializedView(it) => &it.syntax,
29954 ExplainStmt::CreateTableAs(it) => &it.syntax,
29955 ExplainStmt::Declare(it) => &it.syntax,
29956 ExplainStmt::Delete(it) => &it.syntax,
29957 ExplainStmt::Execute(it) => &it.syntax,
29958 ExplainStmt::Insert(it) => &it.syntax,
29959 ExplainStmt::Merge(it) => &it.syntax,
29960 ExplainStmt::ParenSelect(it) => &it.syntax,
29961 ExplainStmt::Select(it) => &it.syntax,
29962 ExplainStmt::SelectInto(it) => &it.syntax,
29963 ExplainStmt::Table(it) => &it.syntax,
29964 ExplainStmt::Update(it) => &it.syntax,
29965 ExplainStmt::Values(it) => &it.syntax,
29966 }
29967 }
29968}
29969impl From<CompoundSelect> for ExplainStmt {
29970 #[inline]
29971 fn from(node: CompoundSelect) -> ExplainStmt {
29972 ExplainStmt::CompoundSelect(node)
29973 }
29974}
29975impl From<CreateMaterializedView> for ExplainStmt {
29976 #[inline]
29977 fn from(node: CreateMaterializedView) -> ExplainStmt {
29978 ExplainStmt::CreateMaterializedView(node)
29979 }
29980}
29981impl From<CreateTableAs> for ExplainStmt {
29982 #[inline]
29983 fn from(node: CreateTableAs) -> ExplainStmt {
29984 ExplainStmt::CreateTableAs(node)
29985 }
29986}
29987impl From<Declare> for ExplainStmt {
29988 #[inline]
29989 fn from(node: Declare) -> ExplainStmt {
29990 ExplainStmt::Declare(node)
29991 }
29992}
29993impl From<Delete> for ExplainStmt {
29994 #[inline]
29995 fn from(node: Delete) -> ExplainStmt {
29996 ExplainStmt::Delete(node)
29997 }
29998}
29999impl From<Execute> for ExplainStmt {
30000 #[inline]
30001 fn from(node: Execute) -> ExplainStmt {
30002 ExplainStmt::Execute(node)
30003 }
30004}
30005impl From<Insert> for ExplainStmt {
30006 #[inline]
30007 fn from(node: Insert) -> ExplainStmt {
30008 ExplainStmt::Insert(node)
30009 }
30010}
30011impl From<Merge> for ExplainStmt {
30012 #[inline]
30013 fn from(node: Merge) -> ExplainStmt {
30014 ExplainStmt::Merge(node)
30015 }
30016}
30017impl From<ParenSelect> for ExplainStmt {
30018 #[inline]
30019 fn from(node: ParenSelect) -> ExplainStmt {
30020 ExplainStmt::ParenSelect(node)
30021 }
30022}
30023impl From<Select> for ExplainStmt {
30024 #[inline]
30025 fn from(node: Select) -> ExplainStmt {
30026 ExplainStmt::Select(node)
30027 }
30028}
30029impl From<SelectInto> for ExplainStmt {
30030 #[inline]
30031 fn from(node: SelectInto) -> ExplainStmt {
30032 ExplainStmt::SelectInto(node)
30033 }
30034}
30035impl From<Table> for ExplainStmt {
30036 #[inline]
30037 fn from(node: Table) -> ExplainStmt {
30038 ExplainStmt::Table(node)
30039 }
30040}
30041impl From<Update> for ExplainStmt {
30042 #[inline]
30043 fn from(node: Update) -> ExplainStmt {
30044 ExplainStmt::Update(node)
30045 }
30046}
30047impl From<Values> for ExplainStmt {
30048 #[inline]
30049 fn from(node: Values) -> ExplainStmt {
30050 ExplainStmt::Values(node)
30051 }
30052}
30053impl AstNode for Expr {
30054 #[inline]
30055 fn can_cast(kind: SyntaxKind) -> bool {
30056 matches!(
30057 kind,
30058 SyntaxKind::ARRAY_EXPR
30059 | SyntaxKind::BETWEEN_EXPR
30060 | SyntaxKind::BIN_EXPR
30061 | SyntaxKind::CALL_EXPR
30062 | SyntaxKind::CASE_EXPR
30063 | SyntaxKind::CAST_EXPR
30064 | SyntaxKind::FIELD_EXPR
30065 | SyntaxKind::INDEX_EXPR
30066 | SyntaxKind::LITERAL
30067 | SyntaxKind::NAME_REF
30068 | SyntaxKind::PAREN_EXPR
30069 | SyntaxKind::POSTFIX_EXPR
30070 | SyntaxKind::PREFIX_EXPR
30071 | SyntaxKind::SLICE_EXPR
30072 | SyntaxKind::TUPLE_EXPR
30073 )
30074 }
30075 #[inline]
30076 fn cast(syntax: SyntaxNode) -> Option<Self> {
30077 let res = match syntax.kind() {
30078 SyntaxKind::ARRAY_EXPR => Expr::ArrayExpr(ArrayExpr { syntax }),
30079 SyntaxKind::BETWEEN_EXPR => Expr::BetweenExpr(BetweenExpr { syntax }),
30080 SyntaxKind::BIN_EXPR => Expr::BinExpr(BinExpr { syntax }),
30081 SyntaxKind::CALL_EXPR => Expr::CallExpr(CallExpr { syntax }),
30082 SyntaxKind::CASE_EXPR => Expr::CaseExpr(CaseExpr { syntax }),
30083 SyntaxKind::CAST_EXPR => Expr::CastExpr(CastExpr { syntax }),
30084 SyntaxKind::FIELD_EXPR => Expr::FieldExpr(FieldExpr { syntax }),
30085 SyntaxKind::INDEX_EXPR => Expr::IndexExpr(IndexExpr { syntax }),
30086 SyntaxKind::LITERAL => Expr::Literal(Literal { syntax }),
30087 SyntaxKind::NAME_REF => Expr::NameRef(NameRef { syntax }),
30088 SyntaxKind::PAREN_EXPR => Expr::ParenExpr(ParenExpr { syntax }),
30089 SyntaxKind::POSTFIX_EXPR => Expr::PostfixExpr(PostfixExpr { syntax }),
30090 SyntaxKind::PREFIX_EXPR => Expr::PrefixExpr(PrefixExpr { syntax }),
30091 SyntaxKind::SLICE_EXPR => Expr::SliceExpr(SliceExpr { syntax }),
30092 SyntaxKind::TUPLE_EXPR => Expr::TupleExpr(TupleExpr { syntax }),
30093 _ => {
30094 return None;
30095 }
30096 };
30097 Some(res)
30098 }
30099 #[inline]
30100 fn syntax(&self) -> &SyntaxNode {
30101 match self {
30102 Expr::ArrayExpr(it) => &it.syntax,
30103 Expr::BetweenExpr(it) => &it.syntax,
30104 Expr::BinExpr(it) => &it.syntax,
30105 Expr::CallExpr(it) => &it.syntax,
30106 Expr::CaseExpr(it) => &it.syntax,
30107 Expr::CastExpr(it) => &it.syntax,
30108 Expr::FieldExpr(it) => &it.syntax,
30109 Expr::IndexExpr(it) => &it.syntax,
30110 Expr::Literal(it) => &it.syntax,
30111 Expr::NameRef(it) => &it.syntax,
30112 Expr::ParenExpr(it) => &it.syntax,
30113 Expr::PostfixExpr(it) => &it.syntax,
30114 Expr::PrefixExpr(it) => &it.syntax,
30115 Expr::SliceExpr(it) => &it.syntax,
30116 Expr::TupleExpr(it) => &it.syntax,
30117 }
30118 }
30119}
30120impl From<ArrayExpr> for Expr {
30121 #[inline]
30122 fn from(node: ArrayExpr) -> Expr {
30123 Expr::ArrayExpr(node)
30124 }
30125}
30126impl From<BetweenExpr> for Expr {
30127 #[inline]
30128 fn from(node: BetweenExpr) -> Expr {
30129 Expr::BetweenExpr(node)
30130 }
30131}
30132impl From<BinExpr> for Expr {
30133 #[inline]
30134 fn from(node: BinExpr) -> Expr {
30135 Expr::BinExpr(node)
30136 }
30137}
30138impl From<CallExpr> for Expr {
30139 #[inline]
30140 fn from(node: CallExpr) -> Expr {
30141 Expr::CallExpr(node)
30142 }
30143}
30144impl From<CaseExpr> for Expr {
30145 #[inline]
30146 fn from(node: CaseExpr) -> Expr {
30147 Expr::CaseExpr(node)
30148 }
30149}
30150impl From<CastExpr> for Expr {
30151 #[inline]
30152 fn from(node: CastExpr) -> Expr {
30153 Expr::CastExpr(node)
30154 }
30155}
30156impl From<FieldExpr> for Expr {
30157 #[inline]
30158 fn from(node: FieldExpr) -> Expr {
30159 Expr::FieldExpr(node)
30160 }
30161}
30162impl From<IndexExpr> for Expr {
30163 #[inline]
30164 fn from(node: IndexExpr) -> Expr {
30165 Expr::IndexExpr(node)
30166 }
30167}
30168impl From<Literal> for Expr {
30169 #[inline]
30170 fn from(node: Literal) -> Expr {
30171 Expr::Literal(node)
30172 }
30173}
30174impl From<NameRef> for Expr {
30175 #[inline]
30176 fn from(node: NameRef) -> Expr {
30177 Expr::NameRef(node)
30178 }
30179}
30180impl From<ParenExpr> for Expr {
30181 #[inline]
30182 fn from(node: ParenExpr) -> Expr {
30183 Expr::ParenExpr(node)
30184 }
30185}
30186impl From<PostfixExpr> for Expr {
30187 #[inline]
30188 fn from(node: PostfixExpr) -> Expr {
30189 Expr::PostfixExpr(node)
30190 }
30191}
30192impl From<PrefixExpr> for Expr {
30193 #[inline]
30194 fn from(node: PrefixExpr) -> Expr {
30195 Expr::PrefixExpr(node)
30196 }
30197}
30198impl From<SliceExpr> for Expr {
30199 #[inline]
30200 fn from(node: SliceExpr) -> Expr {
30201 Expr::SliceExpr(node)
30202 }
30203}
30204impl From<TupleExpr> for Expr {
30205 #[inline]
30206 fn from(node: TupleExpr) -> Expr {
30207 Expr::TupleExpr(node)
30208 }
30209}
30210impl AstNode for FuncOption {
30211 #[inline]
30212 fn can_cast(kind: SyntaxKind) -> bool {
30213 matches!(
30214 kind,
30215 SyntaxKind::AS_FUNC_OPTION
30216 | SyntaxKind::BEGIN_FUNC_OPTION_LIST
30217 | SyntaxKind::COST_FUNC_OPTION
30218 | SyntaxKind::LANGUAGE_FUNC_OPTION
30219 | SyntaxKind::LEAKPROOF_FUNC_OPTION
30220 | SyntaxKind::PARALLEL_FUNC_OPTION
30221 | SyntaxKind::RESET_FUNC_OPTION
30222 | SyntaxKind::RETURN_FUNC_OPTION
30223 | SyntaxKind::ROWS_FUNC_OPTION
30224 | SyntaxKind::SECURITY_FUNC_OPTION
30225 | SyntaxKind::SET_FUNC_OPTION
30226 | SyntaxKind::STRICT_FUNC_OPTION
30227 | SyntaxKind::SUPPORT_FUNC_OPTION
30228 | SyntaxKind::TRANSFORM_FUNC_OPTION
30229 | SyntaxKind::VOLATILITY_FUNC_OPTION
30230 | SyntaxKind::WINDOW_FUNC_OPTION
30231 )
30232 }
30233 #[inline]
30234 fn cast(syntax: SyntaxNode) -> Option<Self> {
30235 let res = match syntax.kind() {
30236 SyntaxKind::AS_FUNC_OPTION => FuncOption::AsFuncOption(AsFuncOption { syntax }),
30237 SyntaxKind::BEGIN_FUNC_OPTION_LIST => {
30238 FuncOption::BeginFuncOptionList(BeginFuncOptionList { syntax })
30239 }
30240 SyntaxKind::COST_FUNC_OPTION => FuncOption::CostFuncOption(CostFuncOption { syntax }),
30241 SyntaxKind::LANGUAGE_FUNC_OPTION => {
30242 FuncOption::LanguageFuncOption(LanguageFuncOption { syntax })
30243 }
30244 SyntaxKind::LEAKPROOF_FUNC_OPTION => {
30245 FuncOption::LeakproofFuncOption(LeakproofFuncOption { syntax })
30246 }
30247 SyntaxKind::PARALLEL_FUNC_OPTION => {
30248 FuncOption::ParallelFuncOption(ParallelFuncOption { syntax })
30249 }
30250 SyntaxKind::RESET_FUNC_OPTION => {
30251 FuncOption::ResetFuncOption(ResetFuncOption { syntax })
30252 }
30253 SyntaxKind::RETURN_FUNC_OPTION => {
30254 FuncOption::ReturnFuncOption(ReturnFuncOption { syntax })
30255 }
30256 SyntaxKind::ROWS_FUNC_OPTION => FuncOption::RowsFuncOption(RowsFuncOption { syntax }),
30257 SyntaxKind::SECURITY_FUNC_OPTION => {
30258 FuncOption::SecurityFuncOption(SecurityFuncOption { syntax })
30259 }
30260 SyntaxKind::SET_FUNC_OPTION => FuncOption::SetFuncOption(SetFuncOption { syntax }),
30261 SyntaxKind::STRICT_FUNC_OPTION => {
30262 FuncOption::StrictFuncOption(StrictFuncOption { syntax })
30263 }
30264 SyntaxKind::SUPPORT_FUNC_OPTION => {
30265 FuncOption::SupportFuncOption(SupportFuncOption { syntax })
30266 }
30267 SyntaxKind::TRANSFORM_FUNC_OPTION => {
30268 FuncOption::TransformFuncOption(TransformFuncOption { syntax })
30269 }
30270 SyntaxKind::VOLATILITY_FUNC_OPTION => {
30271 FuncOption::VolatilityFuncOption(VolatilityFuncOption { syntax })
30272 }
30273 SyntaxKind::WINDOW_FUNC_OPTION => {
30274 FuncOption::WindowFuncOption(WindowFuncOption { syntax })
30275 }
30276 _ => {
30277 return None;
30278 }
30279 };
30280 Some(res)
30281 }
30282 #[inline]
30283 fn syntax(&self) -> &SyntaxNode {
30284 match self {
30285 FuncOption::AsFuncOption(it) => &it.syntax,
30286 FuncOption::BeginFuncOptionList(it) => &it.syntax,
30287 FuncOption::CostFuncOption(it) => &it.syntax,
30288 FuncOption::LanguageFuncOption(it) => &it.syntax,
30289 FuncOption::LeakproofFuncOption(it) => &it.syntax,
30290 FuncOption::ParallelFuncOption(it) => &it.syntax,
30291 FuncOption::ResetFuncOption(it) => &it.syntax,
30292 FuncOption::ReturnFuncOption(it) => &it.syntax,
30293 FuncOption::RowsFuncOption(it) => &it.syntax,
30294 FuncOption::SecurityFuncOption(it) => &it.syntax,
30295 FuncOption::SetFuncOption(it) => &it.syntax,
30296 FuncOption::StrictFuncOption(it) => &it.syntax,
30297 FuncOption::SupportFuncOption(it) => &it.syntax,
30298 FuncOption::TransformFuncOption(it) => &it.syntax,
30299 FuncOption::VolatilityFuncOption(it) => &it.syntax,
30300 FuncOption::WindowFuncOption(it) => &it.syntax,
30301 }
30302 }
30303}
30304impl From<AsFuncOption> for FuncOption {
30305 #[inline]
30306 fn from(node: AsFuncOption) -> FuncOption {
30307 FuncOption::AsFuncOption(node)
30308 }
30309}
30310impl From<BeginFuncOptionList> for FuncOption {
30311 #[inline]
30312 fn from(node: BeginFuncOptionList) -> FuncOption {
30313 FuncOption::BeginFuncOptionList(node)
30314 }
30315}
30316impl From<CostFuncOption> for FuncOption {
30317 #[inline]
30318 fn from(node: CostFuncOption) -> FuncOption {
30319 FuncOption::CostFuncOption(node)
30320 }
30321}
30322impl From<LanguageFuncOption> for FuncOption {
30323 #[inline]
30324 fn from(node: LanguageFuncOption) -> FuncOption {
30325 FuncOption::LanguageFuncOption(node)
30326 }
30327}
30328impl From<LeakproofFuncOption> for FuncOption {
30329 #[inline]
30330 fn from(node: LeakproofFuncOption) -> FuncOption {
30331 FuncOption::LeakproofFuncOption(node)
30332 }
30333}
30334impl From<ParallelFuncOption> for FuncOption {
30335 #[inline]
30336 fn from(node: ParallelFuncOption) -> FuncOption {
30337 FuncOption::ParallelFuncOption(node)
30338 }
30339}
30340impl From<ResetFuncOption> for FuncOption {
30341 #[inline]
30342 fn from(node: ResetFuncOption) -> FuncOption {
30343 FuncOption::ResetFuncOption(node)
30344 }
30345}
30346impl From<ReturnFuncOption> for FuncOption {
30347 #[inline]
30348 fn from(node: ReturnFuncOption) -> FuncOption {
30349 FuncOption::ReturnFuncOption(node)
30350 }
30351}
30352impl From<RowsFuncOption> for FuncOption {
30353 #[inline]
30354 fn from(node: RowsFuncOption) -> FuncOption {
30355 FuncOption::RowsFuncOption(node)
30356 }
30357}
30358impl From<SecurityFuncOption> for FuncOption {
30359 #[inline]
30360 fn from(node: SecurityFuncOption) -> FuncOption {
30361 FuncOption::SecurityFuncOption(node)
30362 }
30363}
30364impl From<SetFuncOption> for FuncOption {
30365 #[inline]
30366 fn from(node: SetFuncOption) -> FuncOption {
30367 FuncOption::SetFuncOption(node)
30368 }
30369}
30370impl From<StrictFuncOption> for FuncOption {
30371 #[inline]
30372 fn from(node: StrictFuncOption) -> FuncOption {
30373 FuncOption::StrictFuncOption(node)
30374 }
30375}
30376impl From<SupportFuncOption> for FuncOption {
30377 #[inline]
30378 fn from(node: SupportFuncOption) -> FuncOption {
30379 FuncOption::SupportFuncOption(node)
30380 }
30381}
30382impl From<TransformFuncOption> for FuncOption {
30383 #[inline]
30384 fn from(node: TransformFuncOption) -> FuncOption {
30385 FuncOption::TransformFuncOption(node)
30386 }
30387}
30388impl From<VolatilityFuncOption> for FuncOption {
30389 #[inline]
30390 fn from(node: VolatilityFuncOption) -> FuncOption {
30391 FuncOption::VolatilityFuncOption(node)
30392 }
30393}
30394impl From<WindowFuncOption> for FuncOption {
30395 #[inline]
30396 fn from(node: WindowFuncOption) -> FuncOption {
30397 FuncOption::WindowFuncOption(node)
30398 }
30399}
30400impl AstNode for GroupBy {
30401 #[inline]
30402 fn can_cast(kind: SyntaxKind) -> bool {
30403 matches!(
30404 kind,
30405 SyntaxKind::GROUPING_CUBE
30406 | SyntaxKind::GROUPING_EXPR
30407 | SyntaxKind::GROUPING_ROLLUP
30408 | SyntaxKind::GROUPING_SETS
30409 )
30410 }
30411 #[inline]
30412 fn cast(syntax: SyntaxNode) -> Option<Self> {
30413 let res = match syntax.kind() {
30414 SyntaxKind::GROUPING_CUBE => GroupBy::GroupingCube(GroupingCube { syntax }),
30415 SyntaxKind::GROUPING_EXPR => GroupBy::GroupingExpr(GroupingExpr { syntax }),
30416 SyntaxKind::GROUPING_ROLLUP => GroupBy::GroupingRollup(GroupingRollup { syntax }),
30417 SyntaxKind::GROUPING_SETS => GroupBy::GroupingSets(GroupingSets { syntax }),
30418 _ => {
30419 return None;
30420 }
30421 };
30422 Some(res)
30423 }
30424 #[inline]
30425 fn syntax(&self) -> &SyntaxNode {
30426 match self {
30427 GroupBy::GroupingCube(it) => &it.syntax,
30428 GroupBy::GroupingExpr(it) => &it.syntax,
30429 GroupBy::GroupingRollup(it) => &it.syntax,
30430 GroupBy::GroupingSets(it) => &it.syntax,
30431 }
30432 }
30433}
30434impl From<GroupingCube> for GroupBy {
30435 #[inline]
30436 fn from(node: GroupingCube) -> GroupBy {
30437 GroupBy::GroupingCube(node)
30438 }
30439}
30440impl From<GroupingExpr> for GroupBy {
30441 #[inline]
30442 fn from(node: GroupingExpr) -> GroupBy {
30443 GroupBy::GroupingExpr(node)
30444 }
30445}
30446impl From<GroupingRollup> for GroupBy {
30447 #[inline]
30448 fn from(node: GroupingRollup) -> GroupBy {
30449 GroupBy::GroupingRollup(node)
30450 }
30451}
30452impl From<GroupingSets> for GroupBy {
30453 #[inline]
30454 fn from(node: GroupingSets) -> GroupBy {
30455 GroupBy::GroupingSets(node)
30456 }
30457}
30458impl AstNode for JoinType {
30459 #[inline]
30460 fn can_cast(kind: SyntaxKind) -> bool {
30461 matches!(
30462 kind,
30463 SyntaxKind::JOIN_CROSS
30464 | SyntaxKind::JOIN_FULL
30465 | SyntaxKind::JOIN_INNER
30466 | SyntaxKind::JOIN_LEFT
30467 | SyntaxKind::JOIN_RIGHT
30468 )
30469 }
30470 #[inline]
30471 fn cast(syntax: SyntaxNode) -> Option<Self> {
30472 let res = match syntax.kind() {
30473 SyntaxKind::JOIN_CROSS => JoinType::JoinCross(JoinCross { syntax }),
30474 SyntaxKind::JOIN_FULL => JoinType::JoinFull(JoinFull { syntax }),
30475 SyntaxKind::JOIN_INNER => JoinType::JoinInner(JoinInner { syntax }),
30476 SyntaxKind::JOIN_LEFT => JoinType::JoinLeft(JoinLeft { syntax }),
30477 SyntaxKind::JOIN_RIGHT => JoinType::JoinRight(JoinRight { syntax }),
30478 _ => {
30479 return None;
30480 }
30481 };
30482 Some(res)
30483 }
30484 #[inline]
30485 fn syntax(&self) -> &SyntaxNode {
30486 match self {
30487 JoinType::JoinCross(it) => &it.syntax,
30488 JoinType::JoinFull(it) => &it.syntax,
30489 JoinType::JoinInner(it) => &it.syntax,
30490 JoinType::JoinLeft(it) => &it.syntax,
30491 JoinType::JoinRight(it) => &it.syntax,
30492 }
30493 }
30494}
30495impl From<JoinCross> for JoinType {
30496 #[inline]
30497 fn from(node: JoinCross) -> JoinType {
30498 JoinType::JoinCross(node)
30499 }
30500}
30501impl From<JoinFull> for JoinType {
30502 #[inline]
30503 fn from(node: JoinFull) -> JoinType {
30504 JoinType::JoinFull(node)
30505 }
30506}
30507impl From<JoinInner> for JoinType {
30508 #[inline]
30509 fn from(node: JoinInner) -> JoinType {
30510 JoinType::JoinInner(node)
30511 }
30512}
30513impl From<JoinLeft> for JoinType {
30514 #[inline]
30515 fn from(node: JoinLeft) -> JoinType {
30516 JoinType::JoinLeft(node)
30517 }
30518}
30519impl From<JoinRight> for JoinType {
30520 #[inline]
30521 fn from(node: JoinRight) -> JoinType {
30522 JoinType::JoinRight(node)
30523 }
30524}
30525impl AstNode for JsonBehavior {
30526 #[inline]
30527 fn can_cast(kind: SyntaxKind) -> bool {
30528 matches!(
30529 kind,
30530 SyntaxKind::JSON_BEHAVIOR_DEFAULT
30531 | SyntaxKind::JSON_BEHAVIOR_EMPTY_ARRAY
30532 | SyntaxKind::JSON_BEHAVIOR_EMPTY_OBJECT
30533 | SyntaxKind::JSON_BEHAVIOR_ERROR
30534 | SyntaxKind::JSON_BEHAVIOR_FALSE
30535 | SyntaxKind::JSON_BEHAVIOR_NULL
30536 | SyntaxKind::JSON_BEHAVIOR_TRUE
30537 | SyntaxKind::JSON_BEHAVIOR_UNKNOWN
30538 )
30539 }
30540 #[inline]
30541 fn cast(syntax: SyntaxNode) -> Option<Self> {
30542 let res = match syntax.kind() {
30543 SyntaxKind::JSON_BEHAVIOR_DEFAULT => {
30544 JsonBehavior::JsonBehaviorDefault(JsonBehaviorDefault { syntax })
30545 }
30546 SyntaxKind::JSON_BEHAVIOR_EMPTY_ARRAY => {
30547 JsonBehavior::JsonBehaviorEmptyArray(JsonBehaviorEmptyArray { syntax })
30548 }
30549 SyntaxKind::JSON_BEHAVIOR_EMPTY_OBJECT => {
30550 JsonBehavior::JsonBehaviorEmptyObject(JsonBehaviorEmptyObject { syntax })
30551 }
30552 SyntaxKind::JSON_BEHAVIOR_ERROR => {
30553 JsonBehavior::JsonBehaviorError(JsonBehaviorError { syntax })
30554 }
30555 SyntaxKind::JSON_BEHAVIOR_FALSE => {
30556 JsonBehavior::JsonBehaviorFalse(JsonBehaviorFalse { syntax })
30557 }
30558 SyntaxKind::JSON_BEHAVIOR_NULL => {
30559 JsonBehavior::JsonBehaviorNull(JsonBehaviorNull { syntax })
30560 }
30561 SyntaxKind::JSON_BEHAVIOR_TRUE => {
30562 JsonBehavior::JsonBehaviorTrue(JsonBehaviorTrue { syntax })
30563 }
30564 SyntaxKind::JSON_BEHAVIOR_UNKNOWN => {
30565 JsonBehavior::JsonBehaviorUnknown(JsonBehaviorUnknown { syntax })
30566 }
30567 _ => {
30568 return None;
30569 }
30570 };
30571 Some(res)
30572 }
30573 #[inline]
30574 fn syntax(&self) -> &SyntaxNode {
30575 match self {
30576 JsonBehavior::JsonBehaviorDefault(it) => &it.syntax,
30577 JsonBehavior::JsonBehaviorEmptyArray(it) => &it.syntax,
30578 JsonBehavior::JsonBehaviorEmptyObject(it) => &it.syntax,
30579 JsonBehavior::JsonBehaviorError(it) => &it.syntax,
30580 JsonBehavior::JsonBehaviorFalse(it) => &it.syntax,
30581 JsonBehavior::JsonBehaviorNull(it) => &it.syntax,
30582 JsonBehavior::JsonBehaviorTrue(it) => &it.syntax,
30583 JsonBehavior::JsonBehaviorUnknown(it) => &it.syntax,
30584 }
30585 }
30586}
30587impl From<JsonBehaviorDefault> for JsonBehavior {
30588 #[inline]
30589 fn from(node: JsonBehaviorDefault) -> JsonBehavior {
30590 JsonBehavior::JsonBehaviorDefault(node)
30591 }
30592}
30593impl From<JsonBehaviorEmptyArray> for JsonBehavior {
30594 #[inline]
30595 fn from(node: JsonBehaviorEmptyArray) -> JsonBehavior {
30596 JsonBehavior::JsonBehaviorEmptyArray(node)
30597 }
30598}
30599impl From<JsonBehaviorEmptyObject> for JsonBehavior {
30600 #[inline]
30601 fn from(node: JsonBehaviorEmptyObject) -> JsonBehavior {
30602 JsonBehavior::JsonBehaviorEmptyObject(node)
30603 }
30604}
30605impl From<JsonBehaviorError> for JsonBehavior {
30606 #[inline]
30607 fn from(node: JsonBehaviorError) -> JsonBehavior {
30608 JsonBehavior::JsonBehaviorError(node)
30609 }
30610}
30611impl From<JsonBehaviorFalse> for JsonBehavior {
30612 #[inline]
30613 fn from(node: JsonBehaviorFalse) -> JsonBehavior {
30614 JsonBehavior::JsonBehaviorFalse(node)
30615 }
30616}
30617impl From<JsonBehaviorNull> for JsonBehavior {
30618 #[inline]
30619 fn from(node: JsonBehaviorNull) -> JsonBehavior {
30620 JsonBehavior::JsonBehaviorNull(node)
30621 }
30622}
30623impl From<JsonBehaviorTrue> for JsonBehavior {
30624 #[inline]
30625 fn from(node: JsonBehaviorTrue) -> JsonBehavior {
30626 JsonBehavior::JsonBehaviorTrue(node)
30627 }
30628}
30629impl From<JsonBehaviorUnknown> for JsonBehavior {
30630 #[inline]
30631 fn from(node: JsonBehaviorUnknown) -> JsonBehavior {
30632 JsonBehavior::JsonBehaviorUnknown(node)
30633 }
30634}
30635impl AstNode for MatchType {
30636 #[inline]
30637 fn can_cast(kind: SyntaxKind) -> bool {
30638 matches!(
30639 kind,
30640 SyntaxKind::MATCH_FULL | SyntaxKind::MATCH_PARTIAL | SyntaxKind::MATCH_SIMPLE
30641 )
30642 }
30643 #[inline]
30644 fn cast(syntax: SyntaxNode) -> Option<Self> {
30645 let res = match syntax.kind() {
30646 SyntaxKind::MATCH_FULL => MatchType::MatchFull(MatchFull { syntax }),
30647 SyntaxKind::MATCH_PARTIAL => MatchType::MatchPartial(MatchPartial { syntax }),
30648 SyntaxKind::MATCH_SIMPLE => MatchType::MatchSimple(MatchSimple { syntax }),
30649 _ => {
30650 return None;
30651 }
30652 };
30653 Some(res)
30654 }
30655 #[inline]
30656 fn syntax(&self) -> &SyntaxNode {
30657 match self {
30658 MatchType::MatchFull(it) => &it.syntax,
30659 MatchType::MatchPartial(it) => &it.syntax,
30660 MatchType::MatchSimple(it) => &it.syntax,
30661 }
30662 }
30663}
30664impl From<MatchFull> for MatchType {
30665 #[inline]
30666 fn from(node: MatchFull) -> MatchType {
30667 MatchType::MatchFull(node)
30668 }
30669}
30670impl From<MatchPartial> for MatchType {
30671 #[inline]
30672 fn from(node: MatchPartial) -> MatchType {
30673 MatchType::MatchPartial(node)
30674 }
30675}
30676impl From<MatchSimple> for MatchType {
30677 #[inline]
30678 fn from(node: MatchSimple) -> MatchType {
30679 MatchType::MatchSimple(node)
30680 }
30681}
30682impl AstNode for MergeAction {
30683 #[inline]
30684 fn can_cast(kind: SyntaxKind) -> bool {
30685 matches!(
30686 kind,
30687 SyntaxKind::MERGE_DELETE
30688 | SyntaxKind::MERGE_DO_NOTHING
30689 | SyntaxKind::MERGE_INSERT
30690 | SyntaxKind::MERGE_UPDATE
30691 )
30692 }
30693 #[inline]
30694 fn cast(syntax: SyntaxNode) -> Option<Self> {
30695 let res = match syntax.kind() {
30696 SyntaxKind::MERGE_DELETE => MergeAction::MergeDelete(MergeDelete { syntax }),
30697 SyntaxKind::MERGE_DO_NOTHING => MergeAction::MergeDoNothing(MergeDoNothing { syntax }),
30698 SyntaxKind::MERGE_INSERT => MergeAction::MergeInsert(MergeInsert { syntax }),
30699 SyntaxKind::MERGE_UPDATE => MergeAction::MergeUpdate(MergeUpdate { syntax }),
30700 _ => {
30701 return None;
30702 }
30703 };
30704 Some(res)
30705 }
30706 #[inline]
30707 fn syntax(&self) -> &SyntaxNode {
30708 match self {
30709 MergeAction::MergeDelete(it) => &it.syntax,
30710 MergeAction::MergeDoNothing(it) => &it.syntax,
30711 MergeAction::MergeInsert(it) => &it.syntax,
30712 MergeAction::MergeUpdate(it) => &it.syntax,
30713 }
30714 }
30715}
30716impl From<MergeDelete> for MergeAction {
30717 #[inline]
30718 fn from(node: MergeDelete) -> MergeAction {
30719 MergeAction::MergeDelete(node)
30720 }
30721}
30722impl From<MergeDoNothing> for MergeAction {
30723 #[inline]
30724 fn from(node: MergeDoNothing) -> MergeAction {
30725 MergeAction::MergeDoNothing(node)
30726 }
30727}
30728impl From<MergeInsert> for MergeAction {
30729 #[inline]
30730 fn from(node: MergeInsert) -> MergeAction {
30731 MergeAction::MergeInsert(node)
30732 }
30733}
30734impl From<MergeUpdate> for MergeAction {
30735 #[inline]
30736 fn from(node: MergeUpdate) -> MergeAction {
30737 MergeAction::MergeUpdate(node)
30738 }
30739}
30740impl AstNode for MergeWhenClause {
30741 #[inline]
30742 fn can_cast(kind: SyntaxKind) -> bool {
30743 matches!(
30744 kind,
30745 SyntaxKind::MERGE_WHEN_MATCHED
30746 | SyntaxKind::MERGE_WHEN_NOT_MATCHED_SOURCE
30747 | SyntaxKind::MERGE_WHEN_NOT_MATCHED_TARGET
30748 )
30749 }
30750 #[inline]
30751 fn cast(syntax: SyntaxNode) -> Option<Self> {
30752 let res = match syntax.kind() {
30753 SyntaxKind::MERGE_WHEN_MATCHED => {
30754 MergeWhenClause::MergeWhenMatched(MergeWhenMatched { syntax })
30755 }
30756 SyntaxKind::MERGE_WHEN_NOT_MATCHED_SOURCE => {
30757 MergeWhenClause::MergeWhenNotMatchedSource(MergeWhenNotMatchedSource { syntax })
30758 }
30759 SyntaxKind::MERGE_WHEN_NOT_MATCHED_TARGET => {
30760 MergeWhenClause::MergeWhenNotMatchedTarget(MergeWhenNotMatchedTarget { syntax })
30761 }
30762 _ => {
30763 return None;
30764 }
30765 };
30766 Some(res)
30767 }
30768 #[inline]
30769 fn syntax(&self) -> &SyntaxNode {
30770 match self {
30771 MergeWhenClause::MergeWhenMatched(it) => &it.syntax,
30772 MergeWhenClause::MergeWhenNotMatchedSource(it) => &it.syntax,
30773 MergeWhenClause::MergeWhenNotMatchedTarget(it) => &it.syntax,
30774 }
30775 }
30776}
30777impl From<MergeWhenMatched> for MergeWhenClause {
30778 #[inline]
30779 fn from(node: MergeWhenMatched) -> MergeWhenClause {
30780 MergeWhenClause::MergeWhenMatched(node)
30781 }
30782}
30783impl From<MergeWhenNotMatchedSource> for MergeWhenClause {
30784 #[inline]
30785 fn from(node: MergeWhenNotMatchedSource) -> MergeWhenClause {
30786 MergeWhenClause::MergeWhenNotMatchedSource(node)
30787 }
30788}
30789impl From<MergeWhenNotMatchedTarget> for MergeWhenClause {
30790 #[inline]
30791 fn from(node: MergeWhenNotMatchedTarget) -> MergeWhenClause {
30792 MergeWhenClause::MergeWhenNotMatchedTarget(node)
30793 }
30794}
30795impl AstNode for OnCommitAction {
30796 #[inline]
30797 fn can_cast(kind: SyntaxKind) -> bool {
30798 matches!(
30799 kind,
30800 SyntaxKind::DELETE_ROWS | SyntaxKind::DROP | SyntaxKind::PRESERVE_ROWS
30801 )
30802 }
30803 #[inline]
30804 fn cast(syntax: SyntaxNode) -> Option<Self> {
30805 let res = match syntax.kind() {
30806 SyntaxKind::DELETE_ROWS => OnCommitAction::DeleteRows(DeleteRows { syntax }),
30807 SyntaxKind::DROP => OnCommitAction::Drop(Drop { syntax }),
30808 SyntaxKind::PRESERVE_ROWS => OnCommitAction::PreserveRows(PreserveRows { syntax }),
30809 _ => {
30810 return None;
30811 }
30812 };
30813 Some(res)
30814 }
30815 #[inline]
30816 fn syntax(&self) -> &SyntaxNode {
30817 match self {
30818 OnCommitAction::DeleteRows(it) => &it.syntax,
30819 OnCommitAction::Drop(it) => &it.syntax,
30820 OnCommitAction::PreserveRows(it) => &it.syntax,
30821 }
30822 }
30823}
30824impl From<DeleteRows> for OnCommitAction {
30825 #[inline]
30826 fn from(node: DeleteRows) -> OnCommitAction {
30827 OnCommitAction::DeleteRows(node)
30828 }
30829}
30830impl From<Drop> for OnCommitAction {
30831 #[inline]
30832 fn from(node: Drop) -> OnCommitAction {
30833 OnCommitAction::Drop(node)
30834 }
30835}
30836impl From<PreserveRows> for OnCommitAction {
30837 #[inline]
30838 fn from(node: PreserveRows) -> OnCommitAction {
30839 OnCommitAction::PreserveRows(node)
30840 }
30841}
30842impl AstNode for ParamMode {
30843 #[inline]
30844 fn can_cast(kind: SyntaxKind) -> bool {
30845 matches!(
30846 kind,
30847 SyntaxKind::PARAM_IN
30848 | SyntaxKind::PARAM_IN_OUT
30849 | SyntaxKind::PARAM_OUT
30850 | SyntaxKind::PARAM_VARIADIC
30851 )
30852 }
30853 #[inline]
30854 fn cast(syntax: SyntaxNode) -> Option<Self> {
30855 let res = match syntax.kind() {
30856 SyntaxKind::PARAM_IN => ParamMode::ParamIn(ParamIn { syntax }),
30857 SyntaxKind::PARAM_IN_OUT => ParamMode::ParamInOut(ParamInOut { syntax }),
30858 SyntaxKind::PARAM_OUT => ParamMode::ParamOut(ParamOut { syntax }),
30859 SyntaxKind::PARAM_VARIADIC => ParamMode::ParamVariadic(ParamVariadic { syntax }),
30860 _ => {
30861 return None;
30862 }
30863 };
30864 Some(res)
30865 }
30866 #[inline]
30867 fn syntax(&self) -> &SyntaxNode {
30868 match self {
30869 ParamMode::ParamIn(it) => &it.syntax,
30870 ParamMode::ParamInOut(it) => &it.syntax,
30871 ParamMode::ParamOut(it) => &it.syntax,
30872 ParamMode::ParamVariadic(it) => &it.syntax,
30873 }
30874 }
30875}
30876impl From<ParamIn> for ParamMode {
30877 #[inline]
30878 fn from(node: ParamIn) -> ParamMode {
30879 ParamMode::ParamIn(node)
30880 }
30881}
30882impl From<ParamInOut> for ParamMode {
30883 #[inline]
30884 fn from(node: ParamInOut) -> ParamMode {
30885 ParamMode::ParamInOut(node)
30886 }
30887}
30888impl From<ParamOut> for ParamMode {
30889 #[inline]
30890 fn from(node: ParamOut) -> ParamMode {
30891 ParamMode::ParamOut(node)
30892 }
30893}
30894impl From<ParamVariadic> for ParamMode {
30895 #[inline]
30896 fn from(node: ParamVariadic) -> ParamMode {
30897 ParamMode::ParamVariadic(node)
30898 }
30899}
30900impl AstNode for PartitionType {
30901 #[inline]
30902 fn can_cast(kind: SyntaxKind) -> bool {
30903 matches!(
30904 kind,
30905 SyntaxKind::PARTITION_DEFAULT
30906 | SyntaxKind::PARTITION_FOR_VALUES_FROM
30907 | SyntaxKind::PARTITION_FOR_VALUES_IN
30908 | SyntaxKind::PARTITION_FOR_VALUES_WITH
30909 )
30910 }
30911 #[inline]
30912 fn cast(syntax: SyntaxNode) -> Option<Self> {
30913 let res = match syntax.kind() {
30914 SyntaxKind::PARTITION_DEFAULT => {
30915 PartitionType::PartitionDefault(PartitionDefault { syntax })
30916 }
30917 SyntaxKind::PARTITION_FOR_VALUES_FROM => {
30918 PartitionType::PartitionForValuesFrom(PartitionForValuesFrom { syntax })
30919 }
30920 SyntaxKind::PARTITION_FOR_VALUES_IN => {
30921 PartitionType::PartitionForValuesIn(PartitionForValuesIn { syntax })
30922 }
30923 SyntaxKind::PARTITION_FOR_VALUES_WITH => {
30924 PartitionType::PartitionForValuesWith(PartitionForValuesWith { syntax })
30925 }
30926 _ => {
30927 return None;
30928 }
30929 };
30930 Some(res)
30931 }
30932 #[inline]
30933 fn syntax(&self) -> &SyntaxNode {
30934 match self {
30935 PartitionType::PartitionDefault(it) => &it.syntax,
30936 PartitionType::PartitionForValuesFrom(it) => &it.syntax,
30937 PartitionType::PartitionForValuesIn(it) => &it.syntax,
30938 PartitionType::PartitionForValuesWith(it) => &it.syntax,
30939 }
30940 }
30941}
30942impl From<PartitionDefault> for PartitionType {
30943 #[inline]
30944 fn from(node: PartitionDefault) -> PartitionType {
30945 PartitionType::PartitionDefault(node)
30946 }
30947}
30948impl From<PartitionForValuesFrom> for PartitionType {
30949 #[inline]
30950 fn from(node: PartitionForValuesFrom) -> PartitionType {
30951 PartitionType::PartitionForValuesFrom(node)
30952 }
30953}
30954impl From<PartitionForValuesIn> for PartitionType {
30955 #[inline]
30956 fn from(node: PartitionForValuesIn) -> PartitionType {
30957 PartitionType::PartitionForValuesIn(node)
30958 }
30959}
30960impl From<PartitionForValuesWith> for PartitionType {
30961 #[inline]
30962 fn from(node: PartitionForValuesWith) -> PartitionType {
30963 PartitionType::PartitionForValuesWith(node)
30964 }
30965}
30966impl AstNode for PreparableStmt {
30967 #[inline]
30968 fn can_cast(kind: SyntaxKind) -> bool {
30969 matches!(
30970 kind,
30971 SyntaxKind::COMPOUND_SELECT
30972 | SyntaxKind::DELETE
30973 | SyntaxKind::INSERT
30974 | SyntaxKind::MERGE
30975 | SyntaxKind::SELECT
30976 | SyntaxKind::SELECT_INTO
30977 | SyntaxKind::TABLE
30978 | SyntaxKind::UPDATE
30979 | SyntaxKind::VALUES
30980 )
30981 }
30982 #[inline]
30983 fn cast(syntax: SyntaxNode) -> Option<Self> {
30984 let res = match syntax.kind() {
30985 SyntaxKind::COMPOUND_SELECT => {
30986 PreparableStmt::CompoundSelect(CompoundSelect { syntax })
30987 }
30988 SyntaxKind::DELETE => PreparableStmt::Delete(Delete { syntax }),
30989 SyntaxKind::INSERT => PreparableStmt::Insert(Insert { syntax }),
30990 SyntaxKind::MERGE => PreparableStmt::Merge(Merge { syntax }),
30991 SyntaxKind::SELECT => PreparableStmt::Select(Select { syntax }),
30992 SyntaxKind::SELECT_INTO => PreparableStmt::SelectInto(SelectInto { syntax }),
30993 SyntaxKind::TABLE => PreparableStmt::Table(Table { syntax }),
30994 SyntaxKind::UPDATE => PreparableStmt::Update(Update { syntax }),
30995 SyntaxKind::VALUES => PreparableStmt::Values(Values { syntax }),
30996 _ => {
30997 return None;
30998 }
30999 };
31000 Some(res)
31001 }
31002 #[inline]
31003 fn syntax(&self) -> &SyntaxNode {
31004 match self {
31005 PreparableStmt::CompoundSelect(it) => &it.syntax,
31006 PreparableStmt::Delete(it) => &it.syntax,
31007 PreparableStmt::Insert(it) => &it.syntax,
31008 PreparableStmt::Merge(it) => &it.syntax,
31009 PreparableStmt::Select(it) => &it.syntax,
31010 PreparableStmt::SelectInto(it) => &it.syntax,
31011 PreparableStmt::Table(it) => &it.syntax,
31012 PreparableStmt::Update(it) => &it.syntax,
31013 PreparableStmt::Values(it) => &it.syntax,
31014 }
31015 }
31016}
31017impl From<CompoundSelect> for PreparableStmt {
31018 #[inline]
31019 fn from(node: CompoundSelect) -> PreparableStmt {
31020 PreparableStmt::CompoundSelect(node)
31021 }
31022}
31023impl From<Delete> for PreparableStmt {
31024 #[inline]
31025 fn from(node: Delete) -> PreparableStmt {
31026 PreparableStmt::Delete(node)
31027 }
31028}
31029impl From<Insert> for PreparableStmt {
31030 #[inline]
31031 fn from(node: Insert) -> PreparableStmt {
31032 PreparableStmt::Insert(node)
31033 }
31034}
31035impl From<Merge> for PreparableStmt {
31036 #[inline]
31037 fn from(node: Merge) -> PreparableStmt {
31038 PreparableStmt::Merge(node)
31039 }
31040}
31041impl From<Select> for PreparableStmt {
31042 #[inline]
31043 fn from(node: Select) -> PreparableStmt {
31044 PreparableStmt::Select(node)
31045 }
31046}
31047impl From<SelectInto> for PreparableStmt {
31048 #[inline]
31049 fn from(node: SelectInto) -> PreparableStmt {
31050 PreparableStmt::SelectInto(node)
31051 }
31052}
31053impl From<Table> for PreparableStmt {
31054 #[inline]
31055 fn from(node: Table) -> PreparableStmt {
31056 PreparableStmt::Table(node)
31057 }
31058}
31059impl From<Update> for PreparableStmt {
31060 #[inline]
31061 fn from(node: Update) -> PreparableStmt {
31062 PreparableStmt::Update(node)
31063 }
31064}
31065impl From<Values> for PreparableStmt {
31066 #[inline]
31067 fn from(node: Values) -> PreparableStmt {
31068 PreparableStmt::Values(node)
31069 }
31070}
31071impl AstNode for RefAction {
31072 #[inline]
31073 fn can_cast(kind: SyntaxKind) -> bool {
31074 matches!(
31075 kind,
31076 SyntaxKind::CASCADE
31077 | SyntaxKind::NO_ACTION
31078 | SyntaxKind::RESTRICT
31079 | SyntaxKind::SET_DEFAULT_COLUMNS
31080 | SyntaxKind::SET_NULL_COLUMNS
31081 )
31082 }
31083 #[inline]
31084 fn cast(syntax: SyntaxNode) -> Option<Self> {
31085 let res = match syntax.kind() {
31086 SyntaxKind::CASCADE => RefAction::Cascade(Cascade { syntax }),
31087 SyntaxKind::NO_ACTION => RefAction::NoAction(NoAction { syntax }),
31088 SyntaxKind::RESTRICT => RefAction::Restrict(Restrict { syntax }),
31089 SyntaxKind::SET_DEFAULT_COLUMNS => {
31090 RefAction::SetDefaultColumns(SetDefaultColumns { syntax })
31091 }
31092 SyntaxKind::SET_NULL_COLUMNS => RefAction::SetNullColumns(SetNullColumns { syntax }),
31093 _ => {
31094 return None;
31095 }
31096 };
31097 Some(res)
31098 }
31099 #[inline]
31100 fn syntax(&self) -> &SyntaxNode {
31101 match self {
31102 RefAction::Cascade(it) => &it.syntax,
31103 RefAction::NoAction(it) => &it.syntax,
31104 RefAction::Restrict(it) => &it.syntax,
31105 RefAction::SetDefaultColumns(it) => &it.syntax,
31106 RefAction::SetNullColumns(it) => &it.syntax,
31107 }
31108 }
31109}
31110impl From<Cascade> for RefAction {
31111 #[inline]
31112 fn from(node: Cascade) -> RefAction {
31113 RefAction::Cascade(node)
31114 }
31115}
31116impl From<NoAction> for RefAction {
31117 #[inline]
31118 fn from(node: NoAction) -> RefAction {
31119 RefAction::NoAction(node)
31120 }
31121}
31122impl From<Restrict> for RefAction {
31123 #[inline]
31124 fn from(node: Restrict) -> RefAction {
31125 RefAction::Restrict(node)
31126 }
31127}
31128impl From<SetDefaultColumns> for RefAction {
31129 #[inline]
31130 fn from(node: SetDefaultColumns) -> RefAction {
31131 RefAction::SetDefaultColumns(node)
31132 }
31133}
31134impl From<SetNullColumns> for RefAction {
31135 #[inline]
31136 fn from(node: SetNullColumns) -> RefAction {
31137 RefAction::SetNullColumns(node)
31138 }
31139}
31140impl AstNode for SchemaElement {
31141 #[inline]
31142 fn can_cast(kind: SyntaxKind) -> bool {
31143 matches!(
31144 kind,
31145 SyntaxKind::CREATE_INDEX
31146 | SyntaxKind::CREATE_SEQUENCE
31147 | SyntaxKind::CREATE_TABLE
31148 | SyntaxKind::CREATE_TRIGGER
31149 | SyntaxKind::CREATE_VIEW
31150 | SyntaxKind::GRANT
31151 )
31152 }
31153 #[inline]
31154 fn cast(syntax: SyntaxNode) -> Option<Self> {
31155 let res = match syntax.kind() {
31156 SyntaxKind::CREATE_INDEX => SchemaElement::CreateIndex(CreateIndex { syntax }),
31157 SyntaxKind::CREATE_SEQUENCE => SchemaElement::CreateSequence(CreateSequence { syntax }),
31158 SyntaxKind::CREATE_TABLE => SchemaElement::CreateTable(CreateTable { syntax }),
31159 SyntaxKind::CREATE_TRIGGER => SchemaElement::CreateTrigger(CreateTrigger { syntax }),
31160 SyntaxKind::CREATE_VIEW => SchemaElement::CreateView(CreateView { syntax }),
31161 SyntaxKind::GRANT => SchemaElement::Grant(Grant { syntax }),
31162 _ => {
31163 return None;
31164 }
31165 };
31166 Some(res)
31167 }
31168 #[inline]
31169 fn syntax(&self) -> &SyntaxNode {
31170 match self {
31171 SchemaElement::CreateIndex(it) => &it.syntax,
31172 SchemaElement::CreateSequence(it) => &it.syntax,
31173 SchemaElement::CreateTable(it) => &it.syntax,
31174 SchemaElement::CreateTrigger(it) => &it.syntax,
31175 SchemaElement::CreateView(it) => &it.syntax,
31176 SchemaElement::Grant(it) => &it.syntax,
31177 }
31178 }
31179}
31180impl From<CreateIndex> for SchemaElement {
31181 #[inline]
31182 fn from(node: CreateIndex) -> SchemaElement {
31183 SchemaElement::CreateIndex(node)
31184 }
31185}
31186impl From<CreateSequence> for SchemaElement {
31187 #[inline]
31188 fn from(node: CreateSequence) -> SchemaElement {
31189 SchemaElement::CreateSequence(node)
31190 }
31191}
31192impl From<CreateTable> for SchemaElement {
31193 #[inline]
31194 fn from(node: CreateTable) -> SchemaElement {
31195 SchemaElement::CreateTable(node)
31196 }
31197}
31198impl From<CreateTrigger> for SchemaElement {
31199 #[inline]
31200 fn from(node: CreateTrigger) -> SchemaElement {
31201 SchemaElement::CreateTrigger(node)
31202 }
31203}
31204impl From<CreateView> for SchemaElement {
31205 #[inline]
31206 fn from(node: CreateView) -> SchemaElement {
31207 SchemaElement::CreateView(node)
31208 }
31209}
31210impl From<Grant> for SchemaElement {
31211 #[inline]
31212 fn from(node: Grant) -> SchemaElement {
31213 SchemaElement::Grant(node)
31214 }
31215}
31216impl AstNode for SelectVariant {
31217 #[inline]
31218 fn can_cast(kind: SyntaxKind) -> bool {
31219 matches!(
31220 kind,
31221 SyntaxKind::COMPOUND_SELECT
31222 | SyntaxKind::PAREN_SELECT
31223 | SyntaxKind::SELECT
31224 | SyntaxKind::SELECT_INTO
31225 | SyntaxKind::TABLE
31226 | SyntaxKind::VALUES
31227 )
31228 }
31229 #[inline]
31230 fn cast(syntax: SyntaxNode) -> Option<Self> {
31231 let res = match syntax.kind() {
31232 SyntaxKind::COMPOUND_SELECT => SelectVariant::CompoundSelect(CompoundSelect { syntax }),
31233 SyntaxKind::PAREN_SELECT => SelectVariant::ParenSelect(ParenSelect { syntax }),
31234 SyntaxKind::SELECT => SelectVariant::Select(Select { syntax }),
31235 SyntaxKind::SELECT_INTO => SelectVariant::SelectInto(SelectInto { syntax }),
31236 SyntaxKind::TABLE => SelectVariant::Table(Table { syntax }),
31237 SyntaxKind::VALUES => SelectVariant::Values(Values { syntax }),
31238 _ => {
31239 return None;
31240 }
31241 };
31242 Some(res)
31243 }
31244 #[inline]
31245 fn syntax(&self) -> &SyntaxNode {
31246 match self {
31247 SelectVariant::CompoundSelect(it) => &it.syntax,
31248 SelectVariant::ParenSelect(it) => &it.syntax,
31249 SelectVariant::Select(it) => &it.syntax,
31250 SelectVariant::SelectInto(it) => &it.syntax,
31251 SelectVariant::Table(it) => &it.syntax,
31252 SelectVariant::Values(it) => &it.syntax,
31253 }
31254 }
31255}
31256impl From<CompoundSelect> for SelectVariant {
31257 #[inline]
31258 fn from(node: CompoundSelect) -> SelectVariant {
31259 SelectVariant::CompoundSelect(node)
31260 }
31261}
31262impl From<ParenSelect> for SelectVariant {
31263 #[inline]
31264 fn from(node: ParenSelect) -> SelectVariant {
31265 SelectVariant::ParenSelect(node)
31266 }
31267}
31268impl From<Select> for SelectVariant {
31269 #[inline]
31270 fn from(node: Select) -> SelectVariant {
31271 SelectVariant::Select(node)
31272 }
31273}
31274impl From<SelectInto> for SelectVariant {
31275 #[inline]
31276 fn from(node: SelectInto) -> SelectVariant {
31277 SelectVariant::SelectInto(node)
31278 }
31279}
31280impl From<Table> for SelectVariant {
31281 #[inline]
31282 fn from(node: Table) -> SelectVariant {
31283 SelectVariant::Table(node)
31284 }
31285}
31286impl From<Values> for SelectVariant {
31287 #[inline]
31288 fn from(node: Values) -> SelectVariant {
31289 SelectVariant::Values(node)
31290 }
31291}
31292impl AstNode for SetColumn {
31293 #[inline]
31294 fn can_cast(kind: SyntaxKind) -> bool {
31295 matches!(
31296 kind,
31297 SyntaxKind::SET_MULTIPLE_COLUMNS | SyntaxKind::SET_SINGLE_COLUMN
31298 )
31299 }
31300 #[inline]
31301 fn cast(syntax: SyntaxNode) -> Option<Self> {
31302 let res = match syntax.kind() {
31303 SyntaxKind::SET_MULTIPLE_COLUMNS => {
31304 SetColumn::SetMultipleColumns(SetMultipleColumns { syntax })
31305 }
31306 SyntaxKind::SET_SINGLE_COLUMN => SetColumn::SetSingleColumn(SetSingleColumn { syntax }),
31307 _ => {
31308 return None;
31309 }
31310 };
31311 Some(res)
31312 }
31313 #[inline]
31314 fn syntax(&self) -> &SyntaxNode {
31315 match self {
31316 SetColumn::SetMultipleColumns(it) => &it.syntax,
31317 SetColumn::SetSingleColumn(it) => &it.syntax,
31318 }
31319 }
31320}
31321impl From<SetMultipleColumns> for SetColumn {
31322 #[inline]
31323 fn from(node: SetMultipleColumns) -> SetColumn {
31324 SetColumn::SetMultipleColumns(node)
31325 }
31326}
31327impl From<SetSingleColumn> for SetColumn {
31328 #[inline]
31329 fn from(node: SetSingleColumn) -> SetColumn {
31330 SetColumn::SetSingleColumn(node)
31331 }
31332}
31333impl AstNode for Stmt {
31334 #[inline]
31335 fn can_cast(kind: SyntaxKind) -> bool {
31336 matches!(
31337 kind,
31338 SyntaxKind::ALTER_AGGREGATE
31339 | SyntaxKind::ALTER_COLLATION
31340 | SyntaxKind::ALTER_CONVERSION
31341 | SyntaxKind::ALTER_DATABASE
31342 | SyntaxKind::ALTER_DEFAULT_PRIVILEGES
31343 | SyntaxKind::ALTER_DOMAIN
31344 | SyntaxKind::ALTER_EVENT_TRIGGER
31345 | SyntaxKind::ALTER_EXTENSION
31346 | SyntaxKind::ALTER_FOREIGN_DATA_WRAPPER
31347 | SyntaxKind::ALTER_FOREIGN_TABLE
31348 | SyntaxKind::ALTER_FUNCTION
31349 | SyntaxKind::ALTER_GROUP
31350 | SyntaxKind::ALTER_INDEX
31351 | SyntaxKind::ALTER_LANGUAGE
31352 | SyntaxKind::ALTER_LARGE_OBJECT
31353 | SyntaxKind::ALTER_MATERIALIZED_VIEW
31354 | SyntaxKind::ALTER_OPERATOR
31355 | SyntaxKind::ALTER_OPERATOR_CLASS
31356 | SyntaxKind::ALTER_OPERATOR_FAMILY
31357 | SyntaxKind::ALTER_POLICY
31358 | SyntaxKind::ALTER_PROCEDURE
31359 | SyntaxKind::ALTER_PUBLICATION
31360 | SyntaxKind::ALTER_ROLE
31361 | SyntaxKind::ALTER_ROUTINE
31362 | SyntaxKind::ALTER_RULE
31363 | SyntaxKind::ALTER_SCHEMA
31364 | SyntaxKind::ALTER_SEQUENCE
31365 | SyntaxKind::ALTER_SERVER
31366 | SyntaxKind::ALTER_STATISTICS
31367 | SyntaxKind::ALTER_SUBSCRIPTION
31368 | SyntaxKind::ALTER_SYSTEM
31369 | SyntaxKind::ALTER_TABLE
31370 | SyntaxKind::ALTER_TABLESPACE
31371 | SyntaxKind::ALTER_TEXT_SEARCH_CONFIGURATION
31372 | SyntaxKind::ALTER_TEXT_SEARCH_DICTIONARY
31373 | SyntaxKind::ALTER_TEXT_SEARCH_PARSER
31374 | SyntaxKind::ALTER_TEXT_SEARCH_TEMPLATE
31375 | SyntaxKind::ALTER_TRIGGER
31376 | SyntaxKind::ALTER_TYPE
31377 | SyntaxKind::ALTER_USER
31378 | SyntaxKind::ALTER_USER_MAPPING
31379 | SyntaxKind::ALTER_VIEW
31380 | SyntaxKind::ANALYZE
31381 | SyntaxKind::BEGIN
31382 | SyntaxKind::CALL
31383 | SyntaxKind::CHECKPOINT
31384 | SyntaxKind::CLOSE
31385 | SyntaxKind::CLUSTER
31386 | SyntaxKind::COMMENT_ON
31387 | SyntaxKind::COMMIT
31388 | SyntaxKind::COPY
31389 | SyntaxKind::CREATE_ACCESS_METHOD
31390 | SyntaxKind::CREATE_AGGREGATE
31391 | SyntaxKind::CREATE_CAST
31392 | SyntaxKind::CREATE_COLLATION
31393 | SyntaxKind::CREATE_CONVERSION
31394 | SyntaxKind::CREATE_DATABASE
31395 | SyntaxKind::CREATE_DOMAIN
31396 | SyntaxKind::CREATE_EVENT_TRIGGER
31397 | SyntaxKind::CREATE_EXTENSION
31398 | SyntaxKind::CREATE_FOREIGN_DATA_WRAPPER
31399 | SyntaxKind::CREATE_FOREIGN_TABLE
31400 | SyntaxKind::CREATE_FUNCTION
31401 | SyntaxKind::CREATE_GROUP
31402 | SyntaxKind::CREATE_INDEX
31403 | SyntaxKind::CREATE_LANGUAGE
31404 | SyntaxKind::CREATE_MATERIALIZED_VIEW
31405 | SyntaxKind::CREATE_OPERATOR
31406 | SyntaxKind::CREATE_OPERATOR_CLASS
31407 | SyntaxKind::CREATE_OPERATOR_FAMILY
31408 | SyntaxKind::CREATE_POLICY
31409 | SyntaxKind::CREATE_PROCEDURE
31410 | SyntaxKind::CREATE_PUBLICATION
31411 | SyntaxKind::CREATE_ROLE
31412 | SyntaxKind::CREATE_RULE
31413 | SyntaxKind::CREATE_SCHEMA
31414 | SyntaxKind::CREATE_SEQUENCE
31415 | SyntaxKind::CREATE_SERVER
31416 | SyntaxKind::CREATE_STATISTICS
31417 | SyntaxKind::CREATE_SUBSCRIPTION
31418 | SyntaxKind::CREATE_TABLE
31419 | SyntaxKind::CREATE_TABLE_AS
31420 | SyntaxKind::CREATE_TABLESPACE
31421 | SyntaxKind::CREATE_TEXT_SEARCH_CONFIGURATION
31422 | SyntaxKind::CREATE_TEXT_SEARCH_DICTIONARY
31423 | SyntaxKind::CREATE_TEXT_SEARCH_PARSER
31424 | SyntaxKind::CREATE_TEXT_SEARCH_TEMPLATE
31425 | SyntaxKind::CREATE_TRANSFORM
31426 | SyntaxKind::CREATE_TRIGGER
31427 | SyntaxKind::CREATE_TYPE
31428 | SyntaxKind::CREATE_USER
31429 | SyntaxKind::CREATE_USER_MAPPING
31430 | SyntaxKind::CREATE_VIEW
31431 | SyntaxKind::DEALLOCATE
31432 | SyntaxKind::DECLARE
31433 | SyntaxKind::DELETE
31434 | SyntaxKind::DISCARD
31435 | SyntaxKind::DO
31436 | SyntaxKind::DROP_ACCESS_METHOD
31437 | SyntaxKind::DROP_AGGREGATE
31438 | SyntaxKind::DROP_CAST
31439 | SyntaxKind::DROP_COLLATION
31440 | SyntaxKind::DROP_CONVERSION
31441 | SyntaxKind::DROP_DATABASE
31442 | SyntaxKind::DROP_DOMAIN
31443 | SyntaxKind::DROP_EVENT_TRIGGER
31444 | SyntaxKind::DROP_EXTENSION
31445 | SyntaxKind::DROP_FOREIGN_DATA_WRAPPER
31446 | SyntaxKind::DROP_FOREIGN_TABLE
31447 | SyntaxKind::DROP_FUNCTION
31448 | SyntaxKind::DROP_GROUP
31449 | SyntaxKind::DROP_INDEX
31450 | SyntaxKind::DROP_LANGUAGE
31451 | SyntaxKind::DROP_MATERIALIZED_VIEW
31452 | SyntaxKind::DROP_OPERATOR
31453 | SyntaxKind::DROP_OPERATOR_CLASS
31454 | SyntaxKind::DROP_OPERATOR_FAMILY
31455 | SyntaxKind::DROP_OWNED
31456 | SyntaxKind::DROP_POLICY
31457 | SyntaxKind::DROP_PROCEDURE
31458 | SyntaxKind::DROP_PUBLICATION
31459 | SyntaxKind::DROP_ROLE
31460 | SyntaxKind::DROP_ROUTINE
31461 | SyntaxKind::DROP_RULE
31462 | SyntaxKind::DROP_SCHEMA
31463 | SyntaxKind::DROP_SEQUENCE
31464 | SyntaxKind::DROP_SERVER
31465 | SyntaxKind::DROP_STATISTICS
31466 | SyntaxKind::DROP_SUBSCRIPTION
31467 | SyntaxKind::DROP_TABLE
31468 | SyntaxKind::DROP_TABLESPACE
31469 | SyntaxKind::DROP_TEXT_SEARCH_CONFIG
31470 | SyntaxKind::DROP_TEXT_SEARCH_DICT
31471 | SyntaxKind::DROP_TEXT_SEARCH_PARSER
31472 | SyntaxKind::DROP_TEXT_SEARCH_TEMPLATE
31473 | SyntaxKind::DROP_TRANSFORM
31474 | SyntaxKind::DROP_TRIGGER
31475 | SyntaxKind::DROP_TYPE
31476 | SyntaxKind::DROP_USER
31477 | SyntaxKind::DROP_USER_MAPPING
31478 | SyntaxKind::DROP_VIEW
31479 | SyntaxKind::EXECUTE
31480 | SyntaxKind::EXPLAIN
31481 | SyntaxKind::FETCH
31482 | SyntaxKind::GRANT
31483 | SyntaxKind::IMPORT_FOREIGN_SCHEMA
31484 | SyntaxKind::INSERT
31485 | SyntaxKind::LISTEN
31486 | SyntaxKind::LOAD
31487 | SyntaxKind::LOCK
31488 | SyntaxKind::MERGE
31489 | SyntaxKind::MOVE
31490 | SyntaxKind::NOTIFY
31491 | SyntaxKind::PAREN_SELECT
31492 | SyntaxKind::PREPARE
31493 | SyntaxKind::PREPARE_TRANSACTION
31494 | SyntaxKind::REASSIGN
31495 | SyntaxKind::REFRESH
31496 | SyntaxKind::REINDEX
31497 | SyntaxKind::RELEASE_SAVEPOINT
31498 | SyntaxKind::RESET
31499 | SyntaxKind::RESET_SESSION_AUTH
31500 | SyntaxKind::REVOKE
31501 | SyntaxKind::ROLLBACK
31502 | SyntaxKind::SAVEPOINT
31503 | SyntaxKind::SECURITY_LABEL
31504 | SyntaxKind::SELECT
31505 | SyntaxKind::SELECT_INTO
31506 | SyntaxKind::SET
31507 | SyntaxKind::SET_CONSTRAINTS
31508 | SyntaxKind::SET_ROLE
31509 | SyntaxKind::SET_SESSION_AUTH
31510 | SyntaxKind::SET_TRANSACTION
31511 | SyntaxKind::SHOW
31512 | SyntaxKind::TABLE
31513 | SyntaxKind::TRUNCATE
31514 | SyntaxKind::UNLISTEN
31515 | SyntaxKind::UPDATE
31516 | SyntaxKind::VACUUM
31517 | SyntaxKind::VALUES
31518 )
31519 }
31520 #[inline]
31521 fn cast(syntax: SyntaxNode) -> Option<Self> {
31522 let res = match syntax.kind() {
31523 SyntaxKind::ALTER_AGGREGATE => Stmt::AlterAggregate(AlterAggregate { syntax }),
31524 SyntaxKind::ALTER_COLLATION => Stmt::AlterCollation(AlterCollation { syntax }),
31525 SyntaxKind::ALTER_CONVERSION => Stmt::AlterConversion(AlterConversion { syntax }),
31526 SyntaxKind::ALTER_DATABASE => Stmt::AlterDatabase(AlterDatabase { syntax }),
31527 SyntaxKind::ALTER_DEFAULT_PRIVILEGES => {
31528 Stmt::AlterDefaultPrivileges(AlterDefaultPrivileges { syntax })
31529 }
31530 SyntaxKind::ALTER_DOMAIN => Stmt::AlterDomain(AlterDomain { syntax }),
31531 SyntaxKind::ALTER_EVENT_TRIGGER => {
31532 Stmt::AlterEventTrigger(AlterEventTrigger { syntax })
31533 }
31534 SyntaxKind::ALTER_EXTENSION => Stmt::AlterExtension(AlterExtension { syntax }),
31535 SyntaxKind::ALTER_FOREIGN_DATA_WRAPPER => {
31536 Stmt::AlterForeignDataWrapper(AlterForeignDataWrapper { syntax })
31537 }
31538 SyntaxKind::ALTER_FOREIGN_TABLE => {
31539 Stmt::AlterForeignTable(AlterForeignTable { syntax })
31540 }
31541 SyntaxKind::ALTER_FUNCTION => Stmt::AlterFunction(AlterFunction { syntax }),
31542 SyntaxKind::ALTER_GROUP => Stmt::AlterGroup(AlterGroup { syntax }),
31543 SyntaxKind::ALTER_INDEX => Stmt::AlterIndex(AlterIndex { syntax }),
31544 SyntaxKind::ALTER_LANGUAGE => Stmt::AlterLanguage(AlterLanguage { syntax }),
31545 SyntaxKind::ALTER_LARGE_OBJECT => Stmt::AlterLargeObject(AlterLargeObject { syntax }),
31546 SyntaxKind::ALTER_MATERIALIZED_VIEW => {
31547 Stmt::AlterMaterializedView(AlterMaterializedView { syntax })
31548 }
31549 SyntaxKind::ALTER_OPERATOR => Stmt::AlterOperator(AlterOperator { syntax }),
31550 SyntaxKind::ALTER_OPERATOR_CLASS => {
31551 Stmt::AlterOperatorClass(AlterOperatorClass { syntax })
31552 }
31553 SyntaxKind::ALTER_OPERATOR_FAMILY => {
31554 Stmt::AlterOperatorFamily(AlterOperatorFamily { syntax })
31555 }
31556 SyntaxKind::ALTER_POLICY => Stmt::AlterPolicy(AlterPolicy { syntax }),
31557 SyntaxKind::ALTER_PROCEDURE => Stmt::AlterProcedure(AlterProcedure { syntax }),
31558 SyntaxKind::ALTER_PUBLICATION => Stmt::AlterPublication(AlterPublication { syntax }),
31559 SyntaxKind::ALTER_ROLE => Stmt::AlterRole(AlterRole { syntax }),
31560 SyntaxKind::ALTER_ROUTINE => Stmt::AlterRoutine(AlterRoutine { syntax }),
31561 SyntaxKind::ALTER_RULE => Stmt::AlterRule(AlterRule { syntax }),
31562 SyntaxKind::ALTER_SCHEMA => Stmt::AlterSchema(AlterSchema { syntax }),
31563 SyntaxKind::ALTER_SEQUENCE => Stmt::AlterSequence(AlterSequence { syntax }),
31564 SyntaxKind::ALTER_SERVER => Stmt::AlterServer(AlterServer { syntax }),
31565 SyntaxKind::ALTER_STATISTICS => Stmt::AlterStatistics(AlterStatistics { syntax }),
31566 SyntaxKind::ALTER_SUBSCRIPTION => Stmt::AlterSubscription(AlterSubscription { syntax }),
31567 SyntaxKind::ALTER_SYSTEM => Stmt::AlterSystem(AlterSystem { syntax }),
31568 SyntaxKind::ALTER_TABLE => Stmt::AlterTable(AlterTable { syntax }),
31569 SyntaxKind::ALTER_TABLESPACE => Stmt::AlterTablespace(AlterTablespace { syntax }),
31570 SyntaxKind::ALTER_TEXT_SEARCH_CONFIGURATION => {
31571 Stmt::AlterTextSearchConfiguration(AlterTextSearchConfiguration { syntax })
31572 }
31573 SyntaxKind::ALTER_TEXT_SEARCH_DICTIONARY => {
31574 Stmt::AlterTextSearchDictionary(AlterTextSearchDictionary { syntax })
31575 }
31576 SyntaxKind::ALTER_TEXT_SEARCH_PARSER => {
31577 Stmt::AlterTextSearchParser(AlterTextSearchParser { syntax })
31578 }
31579 SyntaxKind::ALTER_TEXT_SEARCH_TEMPLATE => {
31580 Stmt::AlterTextSearchTemplate(AlterTextSearchTemplate { syntax })
31581 }
31582 SyntaxKind::ALTER_TRIGGER => Stmt::AlterTrigger(AlterTrigger { syntax }),
31583 SyntaxKind::ALTER_TYPE => Stmt::AlterType(AlterType { syntax }),
31584 SyntaxKind::ALTER_USER => Stmt::AlterUser(AlterUser { syntax }),
31585 SyntaxKind::ALTER_USER_MAPPING => Stmt::AlterUserMapping(AlterUserMapping { syntax }),
31586 SyntaxKind::ALTER_VIEW => Stmt::AlterView(AlterView { syntax }),
31587 SyntaxKind::ANALYZE => Stmt::Analyze(Analyze { syntax }),
31588 SyntaxKind::BEGIN => Stmt::Begin(Begin { syntax }),
31589 SyntaxKind::CALL => Stmt::Call(Call { syntax }),
31590 SyntaxKind::CHECKPOINT => Stmt::Checkpoint(Checkpoint { syntax }),
31591 SyntaxKind::CLOSE => Stmt::Close(Close { syntax }),
31592 SyntaxKind::CLUSTER => Stmt::Cluster(Cluster { syntax }),
31593 SyntaxKind::COMMENT_ON => Stmt::CommentOn(CommentOn { syntax }),
31594 SyntaxKind::COMMIT => Stmt::Commit(Commit { syntax }),
31595 SyntaxKind::COPY => Stmt::Copy(Copy { syntax }),
31596 SyntaxKind::CREATE_ACCESS_METHOD => {
31597 Stmt::CreateAccessMethod(CreateAccessMethod { syntax })
31598 }
31599 SyntaxKind::CREATE_AGGREGATE => Stmt::CreateAggregate(CreateAggregate { syntax }),
31600 SyntaxKind::CREATE_CAST => Stmt::CreateCast(CreateCast { syntax }),
31601 SyntaxKind::CREATE_COLLATION => Stmt::CreateCollation(CreateCollation { syntax }),
31602 SyntaxKind::CREATE_CONVERSION => Stmt::CreateConversion(CreateConversion { syntax }),
31603 SyntaxKind::CREATE_DATABASE => Stmt::CreateDatabase(CreateDatabase { syntax }),
31604 SyntaxKind::CREATE_DOMAIN => Stmt::CreateDomain(CreateDomain { syntax }),
31605 SyntaxKind::CREATE_EVENT_TRIGGER => {
31606 Stmt::CreateEventTrigger(CreateEventTrigger { syntax })
31607 }
31608 SyntaxKind::CREATE_EXTENSION => Stmt::CreateExtension(CreateExtension { syntax }),
31609 SyntaxKind::CREATE_FOREIGN_DATA_WRAPPER => {
31610 Stmt::CreateForeignDataWrapper(CreateForeignDataWrapper { syntax })
31611 }
31612 SyntaxKind::CREATE_FOREIGN_TABLE => {
31613 Stmt::CreateForeignTable(CreateForeignTable { syntax })
31614 }
31615 SyntaxKind::CREATE_FUNCTION => Stmt::CreateFunction(CreateFunction { syntax }),
31616 SyntaxKind::CREATE_GROUP => Stmt::CreateGroup(CreateGroup { syntax }),
31617 SyntaxKind::CREATE_INDEX => Stmt::CreateIndex(CreateIndex { syntax }),
31618 SyntaxKind::CREATE_LANGUAGE => Stmt::CreateLanguage(CreateLanguage { syntax }),
31619 SyntaxKind::CREATE_MATERIALIZED_VIEW => {
31620 Stmt::CreateMaterializedView(CreateMaterializedView { syntax })
31621 }
31622 SyntaxKind::CREATE_OPERATOR => Stmt::CreateOperator(CreateOperator { syntax }),
31623 SyntaxKind::CREATE_OPERATOR_CLASS => {
31624 Stmt::CreateOperatorClass(CreateOperatorClass { syntax })
31625 }
31626 SyntaxKind::CREATE_OPERATOR_FAMILY => {
31627 Stmt::CreateOperatorFamily(CreateOperatorFamily { syntax })
31628 }
31629 SyntaxKind::CREATE_POLICY => Stmt::CreatePolicy(CreatePolicy { syntax }),
31630 SyntaxKind::CREATE_PROCEDURE => Stmt::CreateProcedure(CreateProcedure { syntax }),
31631 SyntaxKind::CREATE_PUBLICATION => Stmt::CreatePublication(CreatePublication { syntax }),
31632 SyntaxKind::CREATE_ROLE => Stmt::CreateRole(CreateRole { syntax }),
31633 SyntaxKind::CREATE_RULE => Stmt::CreateRule(CreateRule { syntax }),
31634 SyntaxKind::CREATE_SCHEMA => Stmt::CreateSchema(CreateSchema { syntax }),
31635 SyntaxKind::CREATE_SEQUENCE => Stmt::CreateSequence(CreateSequence { syntax }),
31636 SyntaxKind::CREATE_SERVER => Stmt::CreateServer(CreateServer { syntax }),
31637 SyntaxKind::CREATE_STATISTICS => Stmt::CreateStatistics(CreateStatistics { syntax }),
31638 SyntaxKind::CREATE_SUBSCRIPTION => {
31639 Stmt::CreateSubscription(CreateSubscription { syntax })
31640 }
31641 SyntaxKind::CREATE_TABLE => Stmt::CreateTable(CreateTable { syntax }),
31642 SyntaxKind::CREATE_TABLE_AS => Stmt::CreateTableAs(CreateTableAs { syntax }),
31643 SyntaxKind::CREATE_TABLESPACE => Stmt::CreateTablespace(CreateTablespace { syntax }),
31644 SyntaxKind::CREATE_TEXT_SEARCH_CONFIGURATION => {
31645 Stmt::CreateTextSearchConfiguration(CreateTextSearchConfiguration { syntax })
31646 }
31647 SyntaxKind::CREATE_TEXT_SEARCH_DICTIONARY => {
31648 Stmt::CreateTextSearchDictionary(CreateTextSearchDictionary { syntax })
31649 }
31650 SyntaxKind::CREATE_TEXT_SEARCH_PARSER => {
31651 Stmt::CreateTextSearchParser(CreateTextSearchParser { syntax })
31652 }
31653 SyntaxKind::CREATE_TEXT_SEARCH_TEMPLATE => {
31654 Stmt::CreateTextSearchTemplate(CreateTextSearchTemplate { syntax })
31655 }
31656 SyntaxKind::CREATE_TRANSFORM => Stmt::CreateTransform(CreateTransform { syntax }),
31657 SyntaxKind::CREATE_TRIGGER => Stmt::CreateTrigger(CreateTrigger { syntax }),
31658 SyntaxKind::CREATE_TYPE => Stmt::CreateType(CreateType { syntax }),
31659 SyntaxKind::CREATE_USER => Stmt::CreateUser(CreateUser { syntax }),
31660 SyntaxKind::CREATE_USER_MAPPING => {
31661 Stmt::CreateUserMapping(CreateUserMapping { syntax })
31662 }
31663 SyntaxKind::CREATE_VIEW => Stmt::CreateView(CreateView { syntax }),
31664 SyntaxKind::DEALLOCATE => Stmt::Deallocate(Deallocate { syntax }),
31665 SyntaxKind::DECLARE => Stmt::Declare(Declare { syntax }),
31666 SyntaxKind::DELETE => Stmt::Delete(Delete { syntax }),
31667 SyntaxKind::DISCARD => Stmt::Discard(Discard { syntax }),
31668 SyntaxKind::DO => Stmt::Do(Do { syntax }),
31669 SyntaxKind::DROP_ACCESS_METHOD => Stmt::DropAccessMethod(DropAccessMethod { syntax }),
31670 SyntaxKind::DROP_AGGREGATE => Stmt::DropAggregate(DropAggregate { syntax }),
31671 SyntaxKind::DROP_CAST => Stmt::DropCast(DropCast { syntax }),
31672 SyntaxKind::DROP_COLLATION => Stmt::DropCollation(DropCollation { syntax }),
31673 SyntaxKind::DROP_CONVERSION => Stmt::DropConversion(DropConversion { syntax }),
31674 SyntaxKind::DROP_DATABASE => Stmt::DropDatabase(DropDatabase { syntax }),
31675 SyntaxKind::DROP_DOMAIN => Stmt::DropDomain(DropDomain { syntax }),
31676 SyntaxKind::DROP_EVENT_TRIGGER => Stmt::DropEventTrigger(DropEventTrigger { syntax }),
31677 SyntaxKind::DROP_EXTENSION => Stmt::DropExtension(DropExtension { syntax }),
31678 SyntaxKind::DROP_FOREIGN_DATA_WRAPPER => {
31679 Stmt::DropForeignDataWrapper(DropForeignDataWrapper { syntax })
31680 }
31681 SyntaxKind::DROP_FOREIGN_TABLE => Stmt::DropForeignTable(DropForeignTable { syntax }),
31682 SyntaxKind::DROP_FUNCTION => Stmt::DropFunction(DropFunction { syntax }),
31683 SyntaxKind::DROP_GROUP => Stmt::DropGroup(DropGroup { syntax }),
31684 SyntaxKind::DROP_INDEX => Stmt::DropIndex(DropIndex { syntax }),
31685 SyntaxKind::DROP_LANGUAGE => Stmt::DropLanguage(DropLanguage { syntax }),
31686 SyntaxKind::DROP_MATERIALIZED_VIEW => {
31687 Stmt::DropMaterializedView(DropMaterializedView { syntax })
31688 }
31689 SyntaxKind::DROP_OPERATOR => Stmt::DropOperator(DropOperator { syntax }),
31690 SyntaxKind::DROP_OPERATOR_CLASS => {
31691 Stmt::DropOperatorClass(DropOperatorClass { syntax })
31692 }
31693 SyntaxKind::DROP_OPERATOR_FAMILY => {
31694 Stmt::DropOperatorFamily(DropOperatorFamily { syntax })
31695 }
31696 SyntaxKind::DROP_OWNED => Stmt::DropOwned(DropOwned { syntax }),
31697 SyntaxKind::DROP_POLICY => Stmt::DropPolicy(DropPolicy { syntax }),
31698 SyntaxKind::DROP_PROCEDURE => Stmt::DropProcedure(DropProcedure { syntax }),
31699 SyntaxKind::DROP_PUBLICATION => Stmt::DropPublication(DropPublication { syntax }),
31700 SyntaxKind::DROP_ROLE => Stmt::DropRole(DropRole { syntax }),
31701 SyntaxKind::DROP_ROUTINE => Stmt::DropRoutine(DropRoutine { syntax }),
31702 SyntaxKind::DROP_RULE => Stmt::DropRule(DropRule { syntax }),
31703 SyntaxKind::DROP_SCHEMA => Stmt::DropSchema(DropSchema { syntax }),
31704 SyntaxKind::DROP_SEQUENCE => Stmt::DropSequence(DropSequence { syntax }),
31705 SyntaxKind::DROP_SERVER => Stmt::DropServer(DropServer { syntax }),
31706 SyntaxKind::DROP_STATISTICS => Stmt::DropStatistics(DropStatistics { syntax }),
31707 SyntaxKind::DROP_SUBSCRIPTION => Stmt::DropSubscription(DropSubscription { syntax }),
31708 SyntaxKind::DROP_TABLE => Stmt::DropTable(DropTable { syntax }),
31709 SyntaxKind::DROP_TABLESPACE => Stmt::DropTablespace(DropTablespace { syntax }),
31710 SyntaxKind::DROP_TEXT_SEARCH_CONFIG => {
31711 Stmt::DropTextSearchConfig(DropTextSearchConfig { syntax })
31712 }
31713 SyntaxKind::DROP_TEXT_SEARCH_DICT => {
31714 Stmt::DropTextSearchDict(DropTextSearchDict { syntax })
31715 }
31716 SyntaxKind::DROP_TEXT_SEARCH_PARSER => {
31717 Stmt::DropTextSearchParser(DropTextSearchParser { syntax })
31718 }
31719 SyntaxKind::DROP_TEXT_SEARCH_TEMPLATE => {
31720 Stmt::DropTextSearchTemplate(DropTextSearchTemplate { syntax })
31721 }
31722 SyntaxKind::DROP_TRANSFORM => Stmt::DropTransform(DropTransform { syntax }),
31723 SyntaxKind::DROP_TRIGGER => Stmt::DropTrigger(DropTrigger { syntax }),
31724 SyntaxKind::DROP_TYPE => Stmt::DropType(DropType { syntax }),
31725 SyntaxKind::DROP_USER => Stmt::DropUser(DropUser { syntax }),
31726 SyntaxKind::DROP_USER_MAPPING => Stmt::DropUserMapping(DropUserMapping { syntax }),
31727 SyntaxKind::DROP_VIEW => Stmt::DropView(DropView { syntax }),
31728 SyntaxKind::EXECUTE => Stmt::Execute(Execute { syntax }),
31729 SyntaxKind::EXPLAIN => Stmt::Explain(Explain { syntax }),
31730 SyntaxKind::FETCH => Stmt::Fetch(Fetch { syntax }),
31731 SyntaxKind::GRANT => Stmt::Grant(Grant { syntax }),
31732 SyntaxKind::IMPORT_FOREIGN_SCHEMA => {
31733 Stmt::ImportForeignSchema(ImportForeignSchema { syntax })
31734 }
31735 SyntaxKind::INSERT => Stmt::Insert(Insert { syntax }),
31736 SyntaxKind::LISTEN => Stmt::Listen(Listen { syntax }),
31737 SyntaxKind::LOAD => Stmt::Load(Load { syntax }),
31738 SyntaxKind::LOCK => Stmt::Lock(Lock { syntax }),
31739 SyntaxKind::MERGE => Stmt::Merge(Merge { syntax }),
31740 SyntaxKind::MOVE => Stmt::Move(Move { syntax }),
31741 SyntaxKind::NOTIFY => Stmt::Notify(Notify { syntax }),
31742 SyntaxKind::PAREN_SELECT => Stmt::ParenSelect(ParenSelect { syntax }),
31743 SyntaxKind::PREPARE => Stmt::Prepare(Prepare { syntax }),
31744 SyntaxKind::PREPARE_TRANSACTION => {
31745 Stmt::PrepareTransaction(PrepareTransaction { syntax })
31746 }
31747 SyntaxKind::REASSIGN => Stmt::Reassign(Reassign { syntax }),
31748 SyntaxKind::REFRESH => Stmt::Refresh(Refresh { syntax }),
31749 SyntaxKind::REINDEX => Stmt::Reindex(Reindex { syntax }),
31750 SyntaxKind::RELEASE_SAVEPOINT => Stmt::ReleaseSavepoint(ReleaseSavepoint { syntax }),
31751 SyntaxKind::RESET => Stmt::Reset(Reset { syntax }),
31752 SyntaxKind::RESET_SESSION_AUTH => Stmt::ResetSessionAuth(ResetSessionAuth { syntax }),
31753 SyntaxKind::REVOKE => Stmt::Revoke(Revoke { syntax }),
31754 SyntaxKind::ROLLBACK => Stmt::Rollback(Rollback { syntax }),
31755 SyntaxKind::SAVEPOINT => Stmt::Savepoint(Savepoint { syntax }),
31756 SyntaxKind::SECURITY_LABEL => Stmt::SecurityLabel(SecurityLabel { syntax }),
31757 SyntaxKind::SELECT => Stmt::Select(Select { syntax }),
31758 SyntaxKind::SELECT_INTO => Stmt::SelectInto(SelectInto { syntax }),
31759 SyntaxKind::SET => Stmt::Set(Set { syntax }),
31760 SyntaxKind::SET_CONSTRAINTS => Stmt::SetConstraints(SetConstraints { syntax }),
31761 SyntaxKind::SET_ROLE => Stmt::SetRole(SetRole { syntax }),
31762 SyntaxKind::SET_SESSION_AUTH => Stmt::SetSessionAuth(SetSessionAuth { syntax }),
31763 SyntaxKind::SET_TRANSACTION => Stmt::SetTransaction(SetTransaction { syntax }),
31764 SyntaxKind::SHOW => Stmt::Show(Show { syntax }),
31765 SyntaxKind::TABLE => Stmt::Table(Table { syntax }),
31766 SyntaxKind::TRUNCATE => Stmt::Truncate(Truncate { syntax }),
31767 SyntaxKind::UNLISTEN => Stmt::Unlisten(Unlisten { syntax }),
31768 SyntaxKind::UPDATE => Stmt::Update(Update { syntax }),
31769 SyntaxKind::VACUUM => Stmt::Vacuum(Vacuum { syntax }),
31770 SyntaxKind::VALUES => Stmt::Values(Values { syntax }),
31771 _ => {
31772 return None;
31773 }
31774 };
31775 Some(res)
31776 }
31777 #[inline]
31778 fn syntax(&self) -> &SyntaxNode {
31779 match self {
31780 Stmt::AlterAggregate(it) => &it.syntax,
31781 Stmt::AlterCollation(it) => &it.syntax,
31782 Stmt::AlterConversion(it) => &it.syntax,
31783 Stmt::AlterDatabase(it) => &it.syntax,
31784 Stmt::AlterDefaultPrivileges(it) => &it.syntax,
31785 Stmt::AlterDomain(it) => &it.syntax,
31786 Stmt::AlterEventTrigger(it) => &it.syntax,
31787 Stmt::AlterExtension(it) => &it.syntax,
31788 Stmt::AlterForeignDataWrapper(it) => &it.syntax,
31789 Stmt::AlterForeignTable(it) => &it.syntax,
31790 Stmt::AlterFunction(it) => &it.syntax,
31791 Stmt::AlterGroup(it) => &it.syntax,
31792 Stmt::AlterIndex(it) => &it.syntax,
31793 Stmt::AlterLanguage(it) => &it.syntax,
31794 Stmt::AlterLargeObject(it) => &it.syntax,
31795 Stmt::AlterMaterializedView(it) => &it.syntax,
31796 Stmt::AlterOperator(it) => &it.syntax,
31797 Stmt::AlterOperatorClass(it) => &it.syntax,
31798 Stmt::AlterOperatorFamily(it) => &it.syntax,
31799 Stmt::AlterPolicy(it) => &it.syntax,
31800 Stmt::AlterProcedure(it) => &it.syntax,
31801 Stmt::AlterPublication(it) => &it.syntax,
31802 Stmt::AlterRole(it) => &it.syntax,
31803 Stmt::AlterRoutine(it) => &it.syntax,
31804 Stmt::AlterRule(it) => &it.syntax,
31805 Stmt::AlterSchema(it) => &it.syntax,
31806 Stmt::AlterSequence(it) => &it.syntax,
31807 Stmt::AlterServer(it) => &it.syntax,
31808 Stmt::AlterStatistics(it) => &it.syntax,
31809 Stmt::AlterSubscription(it) => &it.syntax,
31810 Stmt::AlterSystem(it) => &it.syntax,
31811 Stmt::AlterTable(it) => &it.syntax,
31812 Stmt::AlterTablespace(it) => &it.syntax,
31813 Stmt::AlterTextSearchConfiguration(it) => &it.syntax,
31814 Stmt::AlterTextSearchDictionary(it) => &it.syntax,
31815 Stmt::AlterTextSearchParser(it) => &it.syntax,
31816 Stmt::AlterTextSearchTemplate(it) => &it.syntax,
31817 Stmt::AlterTrigger(it) => &it.syntax,
31818 Stmt::AlterType(it) => &it.syntax,
31819 Stmt::AlterUser(it) => &it.syntax,
31820 Stmt::AlterUserMapping(it) => &it.syntax,
31821 Stmt::AlterView(it) => &it.syntax,
31822 Stmt::Analyze(it) => &it.syntax,
31823 Stmt::Begin(it) => &it.syntax,
31824 Stmt::Call(it) => &it.syntax,
31825 Stmt::Checkpoint(it) => &it.syntax,
31826 Stmt::Close(it) => &it.syntax,
31827 Stmt::Cluster(it) => &it.syntax,
31828 Stmt::CommentOn(it) => &it.syntax,
31829 Stmt::Commit(it) => &it.syntax,
31830 Stmt::Copy(it) => &it.syntax,
31831 Stmt::CreateAccessMethod(it) => &it.syntax,
31832 Stmt::CreateAggregate(it) => &it.syntax,
31833 Stmt::CreateCast(it) => &it.syntax,
31834 Stmt::CreateCollation(it) => &it.syntax,
31835 Stmt::CreateConversion(it) => &it.syntax,
31836 Stmt::CreateDatabase(it) => &it.syntax,
31837 Stmt::CreateDomain(it) => &it.syntax,
31838 Stmt::CreateEventTrigger(it) => &it.syntax,
31839 Stmt::CreateExtension(it) => &it.syntax,
31840 Stmt::CreateForeignDataWrapper(it) => &it.syntax,
31841 Stmt::CreateForeignTable(it) => &it.syntax,
31842 Stmt::CreateFunction(it) => &it.syntax,
31843 Stmt::CreateGroup(it) => &it.syntax,
31844 Stmt::CreateIndex(it) => &it.syntax,
31845 Stmt::CreateLanguage(it) => &it.syntax,
31846 Stmt::CreateMaterializedView(it) => &it.syntax,
31847 Stmt::CreateOperator(it) => &it.syntax,
31848 Stmt::CreateOperatorClass(it) => &it.syntax,
31849 Stmt::CreateOperatorFamily(it) => &it.syntax,
31850 Stmt::CreatePolicy(it) => &it.syntax,
31851 Stmt::CreateProcedure(it) => &it.syntax,
31852 Stmt::CreatePublication(it) => &it.syntax,
31853 Stmt::CreateRole(it) => &it.syntax,
31854 Stmt::CreateRule(it) => &it.syntax,
31855 Stmt::CreateSchema(it) => &it.syntax,
31856 Stmt::CreateSequence(it) => &it.syntax,
31857 Stmt::CreateServer(it) => &it.syntax,
31858 Stmt::CreateStatistics(it) => &it.syntax,
31859 Stmt::CreateSubscription(it) => &it.syntax,
31860 Stmt::CreateTable(it) => &it.syntax,
31861 Stmt::CreateTableAs(it) => &it.syntax,
31862 Stmt::CreateTablespace(it) => &it.syntax,
31863 Stmt::CreateTextSearchConfiguration(it) => &it.syntax,
31864 Stmt::CreateTextSearchDictionary(it) => &it.syntax,
31865 Stmt::CreateTextSearchParser(it) => &it.syntax,
31866 Stmt::CreateTextSearchTemplate(it) => &it.syntax,
31867 Stmt::CreateTransform(it) => &it.syntax,
31868 Stmt::CreateTrigger(it) => &it.syntax,
31869 Stmt::CreateType(it) => &it.syntax,
31870 Stmt::CreateUser(it) => &it.syntax,
31871 Stmt::CreateUserMapping(it) => &it.syntax,
31872 Stmt::CreateView(it) => &it.syntax,
31873 Stmt::Deallocate(it) => &it.syntax,
31874 Stmt::Declare(it) => &it.syntax,
31875 Stmt::Delete(it) => &it.syntax,
31876 Stmt::Discard(it) => &it.syntax,
31877 Stmt::Do(it) => &it.syntax,
31878 Stmt::DropAccessMethod(it) => &it.syntax,
31879 Stmt::DropAggregate(it) => &it.syntax,
31880 Stmt::DropCast(it) => &it.syntax,
31881 Stmt::DropCollation(it) => &it.syntax,
31882 Stmt::DropConversion(it) => &it.syntax,
31883 Stmt::DropDatabase(it) => &it.syntax,
31884 Stmt::DropDomain(it) => &it.syntax,
31885 Stmt::DropEventTrigger(it) => &it.syntax,
31886 Stmt::DropExtension(it) => &it.syntax,
31887 Stmt::DropForeignDataWrapper(it) => &it.syntax,
31888 Stmt::DropForeignTable(it) => &it.syntax,
31889 Stmt::DropFunction(it) => &it.syntax,
31890 Stmt::DropGroup(it) => &it.syntax,
31891 Stmt::DropIndex(it) => &it.syntax,
31892 Stmt::DropLanguage(it) => &it.syntax,
31893 Stmt::DropMaterializedView(it) => &it.syntax,
31894 Stmt::DropOperator(it) => &it.syntax,
31895 Stmt::DropOperatorClass(it) => &it.syntax,
31896 Stmt::DropOperatorFamily(it) => &it.syntax,
31897 Stmt::DropOwned(it) => &it.syntax,
31898 Stmt::DropPolicy(it) => &it.syntax,
31899 Stmt::DropProcedure(it) => &it.syntax,
31900 Stmt::DropPublication(it) => &it.syntax,
31901 Stmt::DropRole(it) => &it.syntax,
31902 Stmt::DropRoutine(it) => &it.syntax,
31903 Stmt::DropRule(it) => &it.syntax,
31904 Stmt::DropSchema(it) => &it.syntax,
31905 Stmt::DropSequence(it) => &it.syntax,
31906 Stmt::DropServer(it) => &it.syntax,
31907 Stmt::DropStatistics(it) => &it.syntax,
31908 Stmt::DropSubscription(it) => &it.syntax,
31909 Stmt::DropTable(it) => &it.syntax,
31910 Stmt::DropTablespace(it) => &it.syntax,
31911 Stmt::DropTextSearchConfig(it) => &it.syntax,
31912 Stmt::DropTextSearchDict(it) => &it.syntax,
31913 Stmt::DropTextSearchParser(it) => &it.syntax,
31914 Stmt::DropTextSearchTemplate(it) => &it.syntax,
31915 Stmt::DropTransform(it) => &it.syntax,
31916 Stmt::DropTrigger(it) => &it.syntax,
31917 Stmt::DropType(it) => &it.syntax,
31918 Stmt::DropUser(it) => &it.syntax,
31919 Stmt::DropUserMapping(it) => &it.syntax,
31920 Stmt::DropView(it) => &it.syntax,
31921 Stmt::Execute(it) => &it.syntax,
31922 Stmt::Explain(it) => &it.syntax,
31923 Stmt::Fetch(it) => &it.syntax,
31924 Stmt::Grant(it) => &it.syntax,
31925 Stmt::ImportForeignSchema(it) => &it.syntax,
31926 Stmt::Insert(it) => &it.syntax,
31927 Stmt::Listen(it) => &it.syntax,
31928 Stmt::Load(it) => &it.syntax,
31929 Stmt::Lock(it) => &it.syntax,
31930 Stmt::Merge(it) => &it.syntax,
31931 Stmt::Move(it) => &it.syntax,
31932 Stmt::Notify(it) => &it.syntax,
31933 Stmt::ParenSelect(it) => &it.syntax,
31934 Stmt::Prepare(it) => &it.syntax,
31935 Stmt::PrepareTransaction(it) => &it.syntax,
31936 Stmt::Reassign(it) => &it.syntax,
31937 Stmt::Refresh(it) => &it.syntax,
31938 Stmt::Reindex(it) => &it.syntax,
31939 Stmt::ReleaseSavepoint(it) => &it.syntax,
31940 Stmt::Reset(it) => &it.syntax,
31941 Stmt::ResetSessionAuth(it) => &it.syntax,
31942 Stmt::Revoke(it) => &it.syntax,
31943 Stmt::Rollback(it) => &it.syntax,
31944 Stmt::Savepoint(it) => &it.syntax,
31945 Stmt::SecurityLabel(it) => &it.syntax,
31946 Stmt::Select(it) => &it.syntax,
31947 Stmt::SelectInto(it) => &it.syntax,
31948 Stmt::Set(it) => &it.syntax,
31949 Stmt::SetConstraints(it) => &it.syntax,
31950 Stmt::SetRole(it) => &it.syntax,
31951 Stmt::SetSessionAuth(it) => &it.syntax,
31952 Stmt::SetTransaction(it) => &it.syntax,
31953 Stmt::Show(it) => &it.syntax,
31954 Stmt::Table(it) => &it.syntax,
31955 Stmt::Truncate(it) => &it.syntax,
31956 Stmt::Unlisten(it) => &it.syntax,
31957 Stmt::Update(it) => &it.syntax,
31958 Stmt::Vacuum(it) => &it.syntax,
31959 Stmt::Values(it) => &it.syntax,
31960 }
31961 }
31962}
31963impl From<AlterAggregate> for Stmt {
31964 #[inline]
31965 fn from(node: AlterAggregate) -> Stmt {
31966 Stmt::AlterAggregate(node)
31967 }
31968}
31969impl From<AlterCollation> for Stmt {
31970 #[inline]
31971 fn from(node: AlterCollation) -> Stmt {
31972 Stmt::AlterCollation(node)
31973 }
31974}
31975impl From<AlterConversion> for Stmt {
31976 #[inline]
31977 fn from(node: AlterConversion) -> Stmt {
31978 Stmt::AlterConversion(node)
31979 }
31980}
31981impl From<AlterDatabase> for Stmt {
31982 #[inline]
31983 fn from(node: AlterDatabase) -> Stmt {
31984 Stmt::AlterDatabase(node)
31985 }
31986}
31987impl From<AlterDefaultPrivileges> for Stmt {
31988 #[inline]
31989 fn from(node: AlterDefaultPrivileges) -> Stmt {
31990 Stmt::AlterDefaultPrivileges(node)
31991 }
31992}
31993impl From<AlterDomain> for Stmt {
31994 #[inline]
31995 fn from(node: AlterDomain) -> Stmt {
31996 Stmt::AlterDomain(node)
31997 }
31998}
31999impl From<AlterEventTrigger> for Stmt {
32000 #[inline]
32001 fn from(node: AlterEventTrigger) -> Stmt {
32002 Stmt::AlterEventTrigger(node)
32003 }
32004}
32005impl From<AlterExtension> for Stmt {
32006 #[inline]
32007 fn from(node: AlterExtension) -> Stmt {
32008 Stmt::AlterExtension(node)
32009 }
32010}
32011impl From<AlterForeignDataWrapper> for Stmt {
32012 #[inline]
32013 fn from(node: AlterForeignDataWrapper) -> Stmt {
32014 Stmt::AlterForeignDataWrapper(node)
32015 }
32016}
32017impl From<AlterForeignTable> for Stmt {
32018 #[inline]
32019 fn from(node: AlterForeignTable) -> Stmt {
32020 Stmt::AlterForeignTable(node)
32021 }
32022}
32023impl From<AlterFunction> for Stmt {
32024 #[inline]
32025 fn from(node: AlterFunction) -> Stmt {
32026 Stmt::AlterFunction(node)
32027 }
32028}
32029impl From<AlterGroup> for Stmt {
32030 #[inline]
32031 fn from(node: AlterGroup) -> Stmt {
32032 Stmt::AlterGroup(node)
32033 }
32034}
32035impl From<AlterIndex> for Stmt {
32036 #[inline]
32037 fn from(node: AlterIndex) -> Stmt {
32038 Stmt::AlterIndex(node)
32039 }
32040}
32041impl From<AlterLanguage> for Stmt {
32042 #[inline]
32043 fn from(node: AlterLanguage) -> Stmt {
32044 Stmt::AlterLanguage(node)
32045 }
32046}
32047impl From<AlterLargeObject> for Stmt {
32048 #[inline]
32049 fn from(node: AlterLargeObject) -> Stmt {
32050 Stmt::AlterLargeObject(node)
32051 }
32052}
32053impl From<AlterMaterializedView> for Stmt {
32054 #[inline]
32055 fn from(node: AlterMaterializedView) -> Stmt {
32056 Stmt::AlterMaterializedView(node)
32057 }
32058}
32059impl From<AlterOperator> for Stmt {
32060 #[inline]
32061 fn from(node: AlterOperator) -> Stmt {
32062 Stmt::AlterOperator(node)
32063 }
32064}
32065impl From<AlterOperatorClass> for Stmt {
32066 #[inline]
32067 fn from(node: AlterOperatorClass) -> Stmt {
32068 Stmt::AlterOperatorClass(node)
32069 }
32070}
32071impl From<AlterOperatorFamily> for Stmt {
32072 #[inline]
32073 fn from(node: AlterOperatorFamily) -> Stmt {
32074 Stmt::AlterOperatorFamily(node)
32075 }
32076}
32077impl From<AlterPolicy> for Stmt {
32078 #[inline]
32079 fn from(node: AlterPolicy) -> Stmt {
32080 Stmt::AlterPolicy(node)
32081 }
32082}
32083impl From<AlterProcedure> for Stmt {
32084 #[inline]
32085 fn from(node: AlterProcedure) -> Stmt {
32086 Stmt::AlterProcedure(node)
32087 }
32088}
32089impl From<AlterPublication> for Stmt {
32090 #[inline]
32091 fn from(node: AlterPublication) -> Stmt {
32092 Stmt::AlterPublication(node)
32093 }
32094}
32095impl From<AlterRole> for Stmt {
32096 #[inline]
32097 fn from(node: AlterRole) -> Stmt {
32098 Stmt::AlterRole(node)
32099 }
32100}
32101impl From<AlterRoutine> for Stmt {
32102 #[inline]
32103 fn from(node: AlterRoutine) -> Stmt {
32104 Stmt::AlterRoutine(node)
32105 }
32106}
32107impl From<AlterRule> for Stmt {
32108 #[inline]
32109 fn from(node: AlterRule) -> Stmt {
32110 Stmt::AlterRule(node)
32111 }
32112}
32113impl From<AlterSchema> for Stmt {
32114 #[inline]
32115 fn from(node: AlterSchema) -> Stmt {
32116 Stmt::AlterSchema(node)
32117 }
32118}
32119impl From<AlterSequence> for Stmt {
32120 #[inline]
32121 fn from(node: AlterSequence) -> Stmt {
32122 Stmt::AlterSequence(node)
32123 }
32124}
32125impl From<AlterServer> for Stmt {
32126 #[inline]
32127 fn from(node: AlterServer) -> Stmt {
32128 Stmt::AlterServer(node)
32129 }
32130}
32131impl From<AlterStatistics> for Stmt {
32132 #[inline]
32133 fn from(node: AlterStatistics) -> Stmt {
32134 Stmt::AlterStatistics(node)
32135 }
32136}
32137impl From<AlterSubscription> for Stmt {
32138 #[inline]
32139 fn from(node: AlterSubscription) -> Stmt {
32140 Stmt::AlterSubscription(node)
32141 }
32142}
32143impl From<AlterSystem> for Stmt {
32144 #[inline]
32145 fn from(node: AlterSystem) -> Stmt {
32146 Stmt::AlterSystem(node)
32147 }
32148}
32149impl From<AlterTable> for Stmt {
32150 #[inline]
32151 fn from(node: AlterTable) -> Stmt {
32152 Stmt::AlterTable(node)
32153 }
32154}
32155impl From<AlterTablespace> for Stmt {
32156 #[inline]
32157 fn from(node: AlterTablespace) -> Stmt {
32158 Stmt::AlterTablespace(node)
32159 }
32160}
32161impl From<AlterTextSearchConfiguration> for Stmt {
32162 #[inline]
32163 fn from(node: AlterTextSearchConfiguration) -> Stmt {
32164 Stmt::AlterTextSearchConfiguration(node)
32165 }
32166}
32167impl From<AlterTextSearchDictionary> for Stmt {
32168 #[inline]
32169 fn from(node: AlterTextSearchDictionary) -> Stmt {
32170 Stmt::AlterTextSearchDictionary(node)
32171 }
32172}
32173impl From<AlterTextSearchParser> for Stmt {
32174 #[inline]
32175 fn from(node: AlterTextSearchParser) -> Stmt {
32176 Stmt::AlterTextSearchParser(node)
32177 }
32178}
32179impl From<AlterTextSearchTemplate> for Stmt {
32180 #[inline]
32181 fn from(node: AlterTextSearchTemplate) -> Stmt {
32182 Stmt::AlterTextSearchTemplate(node)
32183 }
32184}
32185impl From<AlterTrigger> for Stmt {
32186 #[inline]
32187 fn from(node: AlterTrigger) -> Stmt {
32188 Stmt::AlterTrigger(node)
32189 }
32190}
32191impl From<AlterType> for Stmt {
32192 #[inline]
32193 fn from(node: AlterType) -> Stmt {
32194 Stmt::AlterType(node)
32195 }
32196}
32197impl From<AlterUser> for Stmt {
32198 #[inline]
32199 fn from(node: AlterUser) -> Stmt {
32200 Stmt::AlterUser(node)
32201 }
32202}
32203impl From<AlterUserMapping> for Stmt {
32204 #[inline]
32205 fn from(node: AlterUserMapping) -> Stmt {
32206 Stmt::AlterUserMapping(node)
32207 }
32208}
32209impl From<AlterView> for Stmt {
32210 #[inline]
32211 fn from(node: AlterView) -> Stmt {
32212 Stmt::AlterView(node)
32213 }
32214}
32215impl From<Analyze> for Stmt {
32216 #[inline]
32217 fn from(node: Analyze) -> Stmt {
32218 Stmt::Analyze(node)
32219 }
32220}
32221impl From<Begin> for Stmt {
32222 #[inline]
32223 fn from(node: Begin) -> Stmt {
32224 Stmt::Begin(node)
32225 }
32226}
32227impl From<Call> for Stmt {
32228 #[inline]
32229 fn from(node: Call) -> Stmt {
32230 Stmt::Call(node)
32231 }
32232}
32233impl From<Checkpoint> for Stmt {
32234 #[inline]
32235 fn from(node: Checkpoint) -> Stmt {
32236 Stmt::Checkpoint(node)
32237 }
32238}
32239impl From<Close> for Stmt {
32240 #[inline]
32241 fn from(node: Close) -> Stmt {
32242 Stmt::Close(node)
32243 }
32244}
32245impl From<Cluster> for Stmt {
32246 #[inline]
32247 fn from(node: Cluster) -> Stmt {
32248 Stmt::Cluster(node)
32249 }
32250}
32251impl From<CommentOn> for Stmt {
32252 #[inline]
32253 fn from(node: CommentOn) -> Stmt {
32254 Stmt::CommentOn(node)
32255 }
32256}
32257impl From<Commit> for Stmt {
32258 #[inline]
32259 fn from(node: Commit) -> Stmt {
32260 Stmt::Commit(node)
32261 }
32262}
32263impl From<Copy> for Stmt {
32264 #[inline]
32265 fn from(node: Copy) -> Stmt {
32266 Stmt::Copy(node)
32267 }
32268}
32269impl From<CreateAccessMethod> for Stmt {
32270 #[inline]
32271 fn from(node: CreateAccessMethod) -> Stmt {
32272 Stmt::CreateAccessMethod(node)
32273 }
32274}
32275impl From<CreateAggregate> for Stmt {
32276 #[inline]
32277 fn from(node: CreateAggregate) -> Stmt {
32278 Stmt::CreateAggregate(node)
32279 }
32280}
32281impl From<CreateCast> for Stmt {
32282 #[inline]
32283 fn from(node: CreateCast) -> Stmt {
32284 Stmt::CreateCast(node)
32285 }
32286}
32287impl From<CreateCollation> for Stmt {
32288 #[inline]
32289 fn from(node: CreateCollation) -> Stmt {
32290 Stmt::CreateCollation(node)
32291 }
32292}
32293impl From<CreateConversion> for Stmt {
32294 #[inline]
32295 fn from(node: CreateConversion) -> Stmt {
32296 Stmt::CreateConversion(node)
32297 }
32298}
32299impl From<CreateDatabase> for Stmt {
32300 #[inline]
32301 fn from(node: CreateDatabase) -> Stmt {
32302 Stmt::CreateDatabase(node)
32303 }
32304}
32305impl From<CreateDomain> for Stmt {
32306 #[inline]
32307 fn from(node: CreateDomain) -> Stmt {
32308 Stmt::CreateDomain(node)
32309 }
32310}
32311impl From<CreateEventTrigger> for Stmt {
32312 #[inline]
32313 fn from(node: CreateEventTrigger) -> Stmt {
32314 Stmt::CreateEventTrigger(node)
32315 }
32316}
32317impl From<CreateExtension> for Stmt {
32318 #[inline]
32319 fn from(node: CreateExtension) -> Stmt {
32320 Stmt::CreateExtension(node)
32321 }
32322}
32323impl From<CreateForeignDataWrapper> for Stmt {
32324 #[inline]
32325 fn from(node: CreateForeignDataWrapper) -> Stmt {
32326 Stmt::CreateForeignDataWrapper(node)
32327 }
32328}
32329impl From<CreateForeignTable> for Stmt {
32330 #[inline]
32331 fn from(node: CreateForeignTable) -> Stmt {
32332 Stmt::CreateForeignTable(node)
32333 }
32334}
32335impl From<CreateFunction> for Stmt {
32336 #[inline]
32337 fn from(node: CreateFunction) -> Stmt {
32338 Stmt::CreateFunction(node)
32339 }
32340}
32341impl From<CreateGroup> for Stmt {
32342 #[inline]
32343 fn from(node: CreateGroup) -> Stmt {
32344 Stmt::CreateGroup(node)
32345 }
32346}
32347impl From<CreateIndex> for Stmt {
32348 #[inline]
32349 fn from(node: CreateIndex) -> Stmt {
32350 Stmt::CreateIndex(node)
32351 }
32352}
32353impl From<CreateLanguage> for Stmt {
32354 #[inline]
32355 fn from(node: CreateLanguage) -> Stmt {
32356 Stmt::CreateLanguage(node)
32357 }
32358}
32359impl From<CreateMaterializedView> for Stmt {
32360 #[inline]
32361 fn from(node: CreateMaterializedView) -> Stmt {
32362 Stmt::CreateMaterializedView(node)
32363 }
32364}
32365impl From<CreateOperator> for Stmt {
32366 #[inline]
32367 fn from(node: CreateOperator) -> Stmt {
32368 Stmt::CreateOperator(node)
32369 }
32370}
32371impl From<CreateOperatorClass> for Stmt {
32372 #[inline]
32373 fn from(node: CreateOperatorClass) -> Stmt {
32374 Stmt::CreateOperatorClass(node)
32375 }
32376}
32377impl From<CreateOperatorFamily> for Stmt {
32378 #[inline]
32379 fn from(node: CreateOperatorFamily) -> Stmt {
32380 Stmt::CreateOperatorFamily(node)
32381 }
32382}
32383impl From<CreatePolicy> for Stmt {
32384 #[inline]
32385 fn from(node: CreatePolicy) -> Stmt {
32386 Stmt::CreatePolicy(node)
32387 }
32388}
32389impl From<CreateProcedure> for Stmt {
32390 #[inline]
32391 fn from(node: CreateProcedure) -> Stmt {
32392 Stmt::CreateProcedure(node)
32393 }
32394}
32395impl From<CreatePublication> for Stmt {
32396 #[inline]
32397 fn from(node: CreatePublication) -> Stmt {
32398 Stmt::CreatePublication(node)
32399 }
32400}
32401impl From<CreateRole> for Stmt {
32402 #[inline]
32403 fn from(node: CreateRole) -> Stmt {
32404 Stmt::CreateRole(node)
32405 }
32406}
32407impl From<CreateRule> for Stmt {
32408 #[inline]
32409 fn from(node: CreateRule) -> Stmt {
32410 Stmt::CreateRule(node)
32411 }
32412}
32413impl From<CreateSchema> for Stmt {
32414 #[inline]
32415 fn from(node: CreateSchema) -> Stmt {
32416 Stmt::CreateSchema(node)
32417 }
32418}
32419impl From<CreateSequence> for Stmt {
32420 #[inline]
32421 fn from(node: CreateSequence) -> Stmt {
32422 Stmt::CreateSequence(node)
32423 }
32424}
32425impl From<CreateServer> for Stmt {
32426 #[inline]
32427 fn from(node: CreateServer) -> Stmt {
32428 Stmt::CreateServer(node)
32429 }
32430}
32431impl From<CreateStatistics> for Stmt {
32432 #[inline]
32433 fn from(node: CreateStatistics) -> Stmt {
32434 Stmt::CreateStatistics(node)
32435 }
32436}
32437impl From<CreateSubscription> for Stmt {
32438 #[inline]
32439 fn from(node: CreateSubscription) -> Stmt {
32440 Stmt::CreateSubscription(node)
32441 }
32442}
32443impl From<CreateTable> for Stmt {
32444 #[inline]
32445 fn from(node: CreateTable) -> Stmt {
32446 Stmt::CreateTable(node)
32447 }
32448}
32449impl From<CreateTableAs> for Stmt {
32450 #[inline]
32451 fn from(node: CreateTableAs) -> Stmt {
32452 Stmt::CreateTableAs(node)
32453 }
32454}
32455impl From<CreateTablespace> for Stmt {
32456 #[inline]
32457 fn from(node: CreateTablespace) -> Stmt {
32458 Stmt::CreateTablespace(node)
32459 }
32460}
32461impl From<CreateTextSearchConfiguration> for Stmt {
32462 #[inline]
32463 fn from(node: CreateTextSearchConfiguration) -> Stmt {
32464 Stmt::CreateTextSearchConfiguration(node)
32465 }
32466}
32467impl From<CreateTextSearchDictionary> for Stmt {
32468 #[inline]
32469 fn from(node: CreateTextSearchDictionary) -> Stmt {
32470 Stmt::CreateTextSearchDictionary(node)
32471 }
32472}
32473impl From<CreateTextSearchParser> for Stmt {
32474 #[inline]
32475 fn from(node: CreateTextSearchParser) -> Stmt {
32476 Stmt::CreateTextSearchParser(node)
32477 }
32478}
32479impl From<CreateTextSearchTemplate> for Stmt {
32480 #[inline]
32481 fn from(node: CreateTextSearchTemplate) -> Stmt {
32482 Stmt::CreateTextSearchTemplate(node)
32483 }
32484}
32485impl From<CreateTransform> for Stmt {
32486 #[inline]
32487 fn from(node: CreateTransform) -> Stmt {
32488 Stmt::CreateTransform(node)
32489 }
32490}
32491impl From<CreateTrigger> for Stmt {
32492 #[inline]
32493 fn from(node: CreateTrigger) -> Stmt {
32494 Stmt::CreateTrigger(node)
32495 }
32496}
32497impl From<CreateType> for Stmt {
32498 #[inline]
32499 fn from(node: CreateType) -> Stmt {
32500 Stmt::CreateType(node)
32501 }
32502}
32503impl From<CreateUser> for Stmt {
32504 #[inline]
32505 fn from(node: CreateUser) -> Stmt {
32506 Stmt::CreateUser(node)
32507 }
32508}
32509impl From<CreateUserMapping> for Stmt {
32510 #[inline]
32511 fn from(node: CreateUserMapping) -> Stmt {
32512 Stmt::CreateUserMapping(node)
32513 }
32514}
32515impl From<CreateView> for Stmt {
32516 #[inline]
32517 fn from(node: CreateView) -> Stmt {
32518 Stmt::CreateView(node)
32519 }
32520}
32521impl From<Deallocate> for Stmt {
32522 #[inline]
32523 fn from(node: Deallocate) -> Stmt {
32524 Stmt::Deallocate(node)
32525 }
32526}
32527impl From<Declare> for Stmt {
32528 #[inline]
32529 fn from(node: Declare) -> Stmt {
32530 Stmt::Declare(node)
32531 }
32532}
32533impl From<Delete> for Stmt {
32534 #[inline]
32535 fn from(node: Delete) -> Stmt {
32536 Stmt::Delete(node)
32537 }
32538}
32539impl From<Discard> for Stmt {
32540 #[inline]
32541 fn from(node: Discard) -> Stmt {
32542 Stmt::Discard(node)
32543 }
32544}
32545impl From<Do> for Stmt {
32546 #[inline]
32547 fn from(node: Do) -> Stmt {
32548 Stmt::Do(node)
32549 }
32550}
32551impl From<DropAccessMethod> for Stmt {
32552 #[inline]
32553 fn from(node: DropAccessMethod) -> Stmt {
32554 Stmt::DropAccessMethod(node)
32555 }
32556}
32557impl From<DropAggregate> for Stmt {
32558 #[inline]
32559 fn from(node: DropAggregate) -> Stmt {
32560 Stmt::DropAggregate(node)
32561 }
32562}
32563impl From<DropCast> for Stmt {
32564 #[inline]
32565 fn from(node: DropCast) -> Stmt {
32566 Stmt::DropCast(node)
32567 }
32568}
32569impl From<DropCollation> for Stmt {
32570 #[inline]
32571 fn from(node: DropCollation) -> Stmt {
32572 Stmt::DropCollation(node)
32573 }
32574}
32575impl From<DropConversion> for Stmt {
32576 #[inline]
32577 fn from(node: DropConversion) -> Stmt {
32578 Stmt::DropConversion(node)
32579 }
32580}
32581impl From<DropDatabase> for Stmt {
32582 #[inline]
32583 fn from(node: DropDatabase) -> Stmt {
32584 Stmt::DropDatabase(node)
32585 }
32586}
32587impl From<DropDomain> for Stmt {
32588 #[inline]
32589 fn from(node: DropDomain) -> Stmt {
32590 Stmt::DropDomain(node)
32591 }
32592}
32593impl From<DropEventTrigger> for Stmt {
32594 #[inline]
32595 fn from(node: DropEventTrigger) -> Stmt {
32596 Stmt::DropEventTrigger(node)
32597 }
32598}
32599impl From<DropExtension> for Stmt {
32600 #[inline]
32601 fn from(node: DropExtension) -> Stmt {
32602 Stmt::DropExtension(node)
32603 }
32604}
32605impl From<DropForeignDataWrapper> for Stmt {
32606 #[inline]
32607 fn from(node: DropForeignDataWrapper) -> Stmt {
32608 Stmt::DropForeignDataWrapper(node)
32609 }
32610}
32611impl From<DropForeignTable> for Stmt {
32612 #[inline]
32613 fn from(node: DropForeignTable) -> Stmt {
32614 Stmt::DropForeignTable(node)
32615 }
32616}
32617impl From<DropFunction> for Stmt {
32618 #[inline]
32619 fn from(node: DropFunction) -> Stmt {
32620 Stmt::DropFunction(node)
32621 }
32622}
32623impl From<DropGroup> for Stmt {
32624 #[inline]
32625 fn from(node: DropGroup) -> Stmt {
32626 Stmt::DropGroup(node)
32627 }
32628}
32629impl From<DropIndex> for Stmt {
32630 #[inline]
32631 fn from(node: DropIndex) -> Stmt {
32632 Stmt::DropIndex(node)
32633 }
32634}
32635impl From<DropLanguage> for Stmt {
32636 #[inline]
32637 fn from(node: DropLanguage) -> Stmt {
32638 Stmt::DropLanguage(node)
32639 }
32640}
32641impl From<DropMaterializedView> for Stmt {
32642 #[inline]
32643 fn from(node: DropMaterializedView) -> Stmt {
32644 Stmt::DropMaterializedView(node)
32645 }
32646}
32647impl From<DropOperator> for Stmt {
32648 #[inline]
32649 fn from(node: DropOperator) -> Stmt {
32650 Stmt::DropOperator(node)
32651 }
32652}
32653impl From<DropOperatorClass> for Stmt {
32654 #[inline]
32655 fn from(node: DropOperatorClass) -> Stmt {
32656 Stmt::DropOperatorClass(node)
32657 }
32658}
32659impl From<DropOperatorFamily> for Stmt {
32660 #[inline]
32661 fn from(node: DropOperatorFamily) -> Stmt {
32662 Stmt::DropOperatorFamily(node)
32663 }
32664}
32665impl From<DropOwned> for Stmt {
32666 #[inline]
32667 fn from(node: DropOwned) -> Stmt {
32668 Stmt::DropOwned(node)
32669 }
32670}
32671impl From<DropPolicy> for Stmt {
32672 #[inline]
32673 fn from(node: DropPolicy) -> Stmt {
32674 Stmt::DropPolicy(node)
32675 }
32676}
32677impl From<DropProcedure> for Stmt {
32678 #[inline]
32679 fn from(node: DropProcedure) -> Stmt {
32680 Stmt::DropProcedure(node)
32681 }
32682}
32683impl From<DropPublication> for Stmt {
32684 #[inline]
32685 fn from(node: DropPublication) -> Stmt {
32686 Stmt::DropPublication(node)
32687 }
32688}
32689impl From<DropRole> for Stmt {
32690 #[inline]
32691 fn from(node: DropRole) -> Stmt {
32692 Stmt::DropRole(node)
32693 }
32694}
32695impl From<DropRoutine> for Stmt {
32696 #[inline]
32697 fn from(node: DropRoutine) -> Stmt {
32698 Stmt::DropRoutine(node)
32699 }
32700}
32701impl From<DropRule> for Stmt {
32702 #[inline]
32703 fn from(node: DropRule) -> Stmt {
32704 Stmt::DropRule(node)
32705 }
32706}
32707impl From<DropSchema> for Stmt {
32708 #[inline]
32709 fn from(node: DropSchema) -> Stmt {
32710 Stmt::DropSchema(node)
32711 }
32712}
32713impl From<DropSequence> for Stmt {
32714 #[inline]
32715 fn from(node: DropSequence) -> Stmt {
32716 Stmt::DropSequence(node)
32717 }
32718}
32719impl From<DropServer> for Stmt {
32720 #[inline]
32721 fn from(node: DropServer) -> Stmt {
32722 Stmt::DropServer(node)
32723 }
32724}
32725impl From<DropStatistics> for Stmt {
32726 #[inline]
32727 fn from(node: DropStatistics) -> Stmt {
32728 Stmt::DropStatistics(node)
32729 }
32730}
32731impl From<DropSubscription> for Stmt {
32732 #[inline]
32733 fn from(node: DropSubscription) -> Stmt {
32734 Stmt::DropSubscription(node)
32735 }
32736}
32737impl From<DropTable> for Stmt {
32738 #[inline]
32739 fn from(node: DropTable) -> Stmt {
32740 Stmt::DropTable(node)
32741 }
32742}
32743impl From<DropTablespace> for Stmt {
32744 #[inline]
32745 fn from(node: DropTablespace) -> Stmt {
32746 Stmt::DropTablespace(node)
32747 }
32748}
32749impl From<DropTextSearchConfig> for Stmt {
32750 #[inline]
32751 fn from(node: DropTextSearchConfig) -> Stmt {
32752 Stmt::DropTextSearchConfig(node)
32753 }
32754}
32755impl From<DropTextSearchDict> for Stmt {
32756 #[inline]
32757 fn from(node: DropTextSearchDict) -> Stmt {
32758 Stmt::DropTextSearchDict(node)
32759 }
32760}
32761impl From<DropTextSearchParser> for Stmt {
32762 #[inline]
32763 fn from(node: DropTextSearchParser) -> Stmt {
32764 Stmt::DropTextSearchParser(node)
32765 }
32766}
32767impl From<DropTextSearchTemplate> for Stmt {
32768 #[inline]
32769 fn from(node: DropTextSearchTemplate) -> Stmt {
32770 Stmt::DropTextSearchTemplate(node)
32771 }
32772}
32773impl From<DropTransform> for Stmt {
32774 #[inline]
32775 fn from(node: DropTransform) -> Stmt {
32776 Stmt::DropTransform(node)
32777 }
32778}
32779impl From<DropTrigger> for Stmt {
32780 #[inline]
32781 fn from(node: DropTrigger) -> Stmt {
32782 Stmt::DropTrigger(node)
32783 }
32784}
32785impl From<DropType> for Stmt {
32786 #[inline]
32787 fn from(node: DropType) -> Stmt {
32788 Stmt::DropType(node)
32789 }
32790}
32791impl From<DropUser> for Stmt {
32792 #[inline]
32793 fn from(node: DropUser) -> Stmt {
32794 Stmt::DropUser(node)
32795 }
32796}
32797impl From<DropUserMapping> for Stmt {
32798 #[inline]
32799 fn from(node: DropUserMapping) -> Stmt {
32800 Stmt::DropUserMapping(node)
32801 }
32802}
32803impl From<DropView> for Stmt {
32804 #[inline]
32805 fn from(node: DropView) -> Stmt {
32806 Stmt::DropView(node)
32807 }
32808}
32809impl From<Execute> for Stmt {
32810 #[inline]
32811 fn from(node: Execute) -> Stmt {
32812 Stmt::Execute(node)
32813 }
32814}
32815impl From<Explain> for Stmt {
32816 #[inline]
32817 fn from(node: Explain) -> Stmt {
32818 Stmt::Explain(node)
32819 }
32820}
32821impl From<Fetch> for Stmt {
32822 #[inline]
32823 fn from(node: Fetch) -> Stmt {
32824 Stmt::Fetch(node)
32825 }
32826}
32827impl From<Grant> for Stmt {
32828 #[inline]
32829 fn from(node: Grant) -> Stmt {
32830 Stmt::Grant(node)
32831 }
32832}
32833impl From<ImportForeignSchema> for Stmt {
32834 #[inline]
32835 fn from(node: ImportForeignSchema) -> Stmt {
32836 Stmt::ImportForeignSchema(node)
32837 }
32838}
32839impl From<Insert> for Stmt {
32840 #[inline]
32841 fn from(node: Insert) -> Stmt {
32842 Stmt::Insert(node)
32843 }
32844}
32845impl From<Listen> for Stmt {
32846 #[inline]
32847 fn from(node: Listen) -> Stmt {
32848 Stmt::Listen(node)
32849 }
32850}
32851impl From<Load> for Stmt {
32852 #[inline]
32853 fn from(node: Load) -> Stmt {
32854 Stmt::Load(node)
32855 }
32856}
32857impl From<Lock> for Stmt {
32858 #[inline]
32859 fn from(node: Lock) -> Stmt {
32860 Stmt::Lock(node)
32861 }
32862}
32863impl From<Merge> for Stmt {
32864 #[inline]
32865 fn from(node: Merge) -> Stmt {
32866 Stmt::Merge(node)
32867 }
32868}
32869impl From<Move> for Stmt {
32870 #[inline]
32871 fn from(node: Move) -> Stmt {
32872 Stmt::Move(node)
32873 }
32874}
32875impl From<Notify> for Stmt {
32876 #[inline]
32877 fn from(node: Notify) -> Stmt {
32878 Stmt::Notify(node)
32879 }
32880}
32881impl From<ParenSelect> for Stmt {
32882 #[inline]
32883 fn from(node: ParenSelect) -> Stmt {
32884 Stmt::ParenSelect(node)
32885 }
32886}
32887impl From<Prepare> for Stmt {
32888 #[inline]
32889 fn from(node: Prepare) -> Stmt {
32890 Stmt::Prepare(node)
32891 }
32892}
32893impl From<PrepareTransaction> for Stmt {
32894 #[inline]
32895 fn from(node: PrepareTransaction) -> Stmt {
32896 Stmt::PrepareTransaction(node)
32897 }
32898}
32899impl From<Reassign> for Stmt {
32900 #[inline]
32901 fn from(node: Reassign) -> Stmt {
32902 Stmt::Reassign(node)
32903 }
32904}
32905impl From<Refresh> for Stmt {
32906 #[inline]
32907 fn from(node: Refresh) -> Stmt {
32908 Stmt::Refresh(node)
32909 }
32910}
32911impl From<Reindex> for Stmt {
32912 #[inline]
32913 fn from(node: Reindex) -> Stmt {
32914 Stmt::Reindex(node)
32915 }
32916}
32917impl From<ReleaseSavepoint> for Stmt {
32918 #[inline]
32919 fn from(node: ReleaseSavepoint) -> Stmt {
32920 Stmt::ReleaseSavepoint(node)
32921 }
32922}
32923impl From<Reset> for Stmt {
32924 #[inline]
32925 fn from(node: Reset) -> Stmt {
32926 Stmt::Reset(node)
32927 }
32928}
32929impl From<ResetSessionAuth> for Stmt {
32930 #[inline]
32931 fn from(node: ResetSessionAuth) -> Stmt {
32932 Stmt::ResetSessionAuth(node)
32933 }
32934}
32935impl From<Revoke> for Stmt {
32936 #[inline]
32937 fn from(node: Revoke) -> Stmt {
32938 Stmt::Revoke(node)
32939 }
32940}
32941impl From<Rollback> for Stmt {
32942 #[inline]
32943 fn from(node: Rollback) -> Stmt {
32944 Stmt::Rollback(node)
32945 }
32946}
32947impl From<Savepoint> for Stmt {
32948 #[inline]
32949 fn from(node: Savepoint) -> Stmt {
32950 Stmt::Savepoint(node)
32951 }
32952}
32953impl From<SecurityLabel> for Stmt {
32954 #[inline]
32955 fn from(node: SecurityLabel) -> Stmt {
32956 Stmt::SecurityLabel(node)
32957 }
32958}
32959impl From<Select> for Stmt {
32960 #[inline]
32961 fn from(node: Select) -> Stmt {
32962 Stmt::Select(node)
32963 }
32964}
32965impl From<SelectInto> for Stmt {
32966 #[inline]
32967 fn from(node: SelectInto) -> Stmt {
32968 Stmt::SelectInto(node)
32969 }
32970}
32971impl From<Set> for Stmt {
32972 #[inline]
32973 fn from(node: Set) -> Stmt {
32974 Stmt::Set(node)
32975 }
32976}
32977impl From<SetConstraints> for Stmt {
32978 #[inline]
32979 fn from(node: SetConstraints) -> Stmt {
32980 Stmt::SetConstraints(node)
32981 }
32982}
32983impl From<SetRole> for Stmt {
32984 #[inline]
32985 fn from(node: SetRole) -> Stmt {
32986 Stmt::SetRole(node)
32987 }
32988}
32989impl From<SetSessionAuth> for Stmt {
32990 #[inline]
32991 fn from(node: SetSessionAuth) -> Stmt {
32992 Stmt::SetSessionAuth(node)
32993 }
32994}
32995impl From<SetTransaction> for Stmt {
32996 #[inline]
32997 fn from(node: SetTransaction) -> Stmt {
32998 Stmt::SetTransaction(node)
32999 }
33000}
33001impl From<Show> for Stmt {
33002 #[inline]
33003 fn from(node: Show) -> Stmt {
33004 Stmt::Show(node)
33005 }
33006}
33007impl From<Table> for Stmt {
33008 #[inline]
33009 fn from(node: Table) -> Stmt {
33010 Stmt::Table(node)
33011 }
33012}
33013impl From<Truncate> for Stmt {
33014 #[inline]
33015 fn from(node: Truncate) -> Stmt {
33016 Stmt::Truncate(node)
33017 }
33018}
33019impl From<Unlisten> for Stmt {
33020 #[inline]
33021 fn from(node: Unlisten) -> Stmt {
33022 Stmt::Unlisten(node)
33023 }
33024}
33025impl From<Update> for Stmt {
33026 #[inline]
33027 fn from(node: Update) -> Stmt {
33028 Stmt::Update(node)
33029 }
33030}
33031impl From<Vacuum> for Stmt {
33032 #[inline]
33033 fn from(node: Vacuum) -> Stmt {
33034 Stmt::Vacuum(node)
33035 }
33036}
33037impl From<Values> for Stmt {
33038 #[inline]
33039 fn from(node: Values) -> Stmt {
33040 Stmt::Values(node)
33041 }
33042}
33043impl AstNode for TableArg {
33044 #[inline]
33045 fn can_cast(kind: SyntaxKind) -> bool {
33046 matches!(kind, SyntaxKind::COLUMN | SyntaxKind::LIKE_CLAUSE)
33047 }
33048 #[inline]
33049 fn cast(syntax: SyntaxNode) -> Option<Self> {
33050 let res = match syntax.kind() {
33051 SyntaxKind::COLUMN => TableArg::Column(Column { syntax }),
33052 SyntaxKind::LIKE_CLAUSE => TableArg::LikeClause(LikeClause { syntax }),
33053 _ => {
33054 if let Some(result) = TableConstraint::cast(syntax) {
33055 return Some(TableArg::TableConstraint(result));
33056 }
33057 return None;
33058 }
33059 };
33060 Some(res)
33061 }
33062 #[inline]
33063 fn syntax(&self) -> &SyntaxNode {
33064 match self {
33065 TableArg::Column(it) => &it.syntax,
33066 TableArg::LikeClause(it) => &it.syntax,
33067 TableArg::TableConstraint(it) => it.syntax(),
33068 }
33069 }
33070}
33071impl From<Column> for TableArg {
33072 #[inline]
33073 fn from(node: Column) -> TableArg {
33074 TableArg::Column(node)
33075 }
33076}
33077impl From<LikeClause> for TableArg {
33078 #[inline]
33079 fn from(node: LikeClause) -> TableArg {
33080 TableArg::LikeClause(node)
33081 }
33082}
33083impl AstNode for TableConstraint {
33084 #[inline]
33085 fn can_cast(kind: SyntaxKind) -> bool {
33086 matches!(
33087 kind,
33088 SyntaxKind::CHECK_CONSTRAINT
33089 | SyntaxKind::EXCLUDE_CONSTRAINT
33090 | SyntaxKind::FOREIGN_KEY_CONSTRAINT
33091 | SyntaxKind::PRIMARY_KEY_CONSTRAINT
33092 | SyntaxKind::UNIQUE_CONSTRAINT
33093 )
33094 }
33095 #[inline]
33096 fn cast(syntax: SyntaxNode) -> Option<Self> {
33097 let res = match syntax.kind() {
33098 SyntaxKind::CHECK_CONSTRAINT => {
33099 TableConstraint::CheckConstraint(CheckConstraint { syntax })
33100 }
33101 SyntaxKind::EXCLUDE_CONSTRAINT => {
33102 TableConstraint::ExcludeConstraint(ExcludeConstraint { syntax })
33103 }
33104 SyntaxKind::FOREIGN_KEY_CONSTRAINT => {
33105 TableConstraint::ForeignKeyConstraint(ForeignKeyConstraint { syntax })
33106 }
33107 SyntaxKind::PRIMARY_KEY_CONSTRAINT => {
33108 TableConstraint::PrimaryKeyConstraint(PrimaryKeyConstraint { syntax })
33109 }
33110 SyntaxKind::UNIQUE_CONSTRAINT => {
33111 TableConstraint::UniqueConstraint(UniqueConstraint { syntax })
33112 }
33113 _ => {
33114 return None;
33115 }
33116 };
33117 Some(res)
33118 }
33119 #[inline]
33120 fn syntax(&self) -> &SyntaxNode {
33121 match self {
33122 TableConstraint::CheckConstraint(it) => &it.syntax,
33123 TableConstraint::ExcludeConstraint(it) => &it.syntax,
33124 TableConstraint::ForeignKeyConstraint(it) => &it.syntax,
33125 TableConstraint::PrimaryKeyConstraint(it) => &it.syntax,
33126 TableConstraint::UniqueConstraint(it) => &it.syntax,
33127 }
33128 }
33129}
33130impl From<CheckConstraint> for TableConstraint {
33131 #[inline]
33132 fn from(node: CheckConstraint) -> TableConstraint {
33133 TableConstraint::CheckConstraint(node)
33134 }
33135}
33136impl From<ExcludeConstraint> for TableConstraint {
33137 #[inline]
33138 fn from(node: ExcludeConstraint) -> TableConstraint {
33139 TableConstraint::ExcludeConstraint(node)
33140 }
33141}
33142impl From<ForeignKeyConstraint> for TableConstraint {
33143 #[inline]
33144 fn from(node: ForeignKeyConstraint) -> TableConstraint {
33145 TableConstraint::ForeignKeyConstraint(node)
33146 }
33147}
33148impl From<PrimaryKeyConstraint> for TableConstraint {
33149 #[inline]
33150 fn from(node: PrimaryKeyConstraint) -> TableConstraint {
33151 TableConstraint::PrimaryKeyConstraint(node)
33152 }
33153}
33154impl From<UniqueConstraint> for TableConstraint {
33155 #[inline]
33156 fn from(node: UniqueConstraint) -> TableConstraint {
33157 TableConstraint::UniqueConstraint(node)
33158 }
33159}
33160impl AstNode for Timezone {
33161 #[inline]
33162 fn can_cast(kind: SyntaxKind) -> bool {
33163 matches!(
33164 kind,
33165 SyntaxKind::WITH_TIMEZONE | SyntaxKind::WITHOUT_TIMEZONE
33166 )
33167 }
33168 #[inline]
33169 fn cast(syntax: SyntaxNode) -> Option<Self> {
33170 let res = match syntax.kind() {
33171 SyntaxKind::WITH_TIMEZONE => Timezone::WithTimezone(WithTimezone { syntax }),
33172 SyntaxKind::WITHOUT_TIMEZONE => Timezone::WithoutTimezone(WithoutTimezone { syntax }),
33173 _ => {
33174 return None;
33175 }
33176 };
33177 Some(res)
33178 }
33179 #[inline]
33180 fn syntax(&self) -> &SyntaxNode {
33181 match self {
33182 Timezone::WithTimezone(it) => &it.syntax,
33183 Timezone::WithoutTimezone(it) => &it.syntax,
33184 }
33185 }
33186}
33187impl From<WithTimezone> for Timezone {
33188 #[inline]
33189 fn from(node: WithTimezone) -> Timezone {
33190 Timezone::WithTimezone(node)
33191 }
33192}
33193impl From<WithoutTimezone> for Timezone {
33194 #[inline]
33195 fn from(node: WithoutTimezone) -> Timezone {
33196 Timezone::WithoutTimezone(node)
33197 }
33198}
33199impl AstNode for TransactionMode {
33200 #[inline]
33201 fn can_cast(kind: SyntaxKind) -> bool {
33202 matches!(
33203 kind,
33204 SyntaxKind::DEFERRABLE
33205 | SyntaxKind::NOT_DEFERRABLE
33206 | SyntaxKind::READ_COMMITTED
33207 | SyntaxKind::READ_ONLY
33208 | SyntaxKind::READ_UNCOMMITTED
33209 | SyntaxKind::READ_WRITE
33210 | SyntaxKind::REPEATABLE_READ
33211 | SyntaxKind::SERIALIZABLE
33212 )
33213 }
33214 #[inline]
33215 fn cast(syntax: SyntaxNode) -> Option<Self> {
33216 let res = match syntax.kind() {
33217 SyntaxKind::DEFERRABLE => TransactionMode::Deferrable(Deferrable { syntax }),
33218 SyntaxKind::NOT_DEFERRABLE => TransactionMode::NotDeferrable(NotDeferrable { syntax }),
33219 SyntaxKind::READ_COMMITTED => TransactionMode::ReadCommitted(ReadCommitted { syntax }),
33220 SyntaxKind::READ_ONLY => TransactionMode::ReadOnly(ReadOnly { syntax }),
33221 SyntaxKind::READ_UNCOMMITTED => {
33222 TransactionMode::ReadUncommitted(ReadUncommitted { syntax })
33223 }
33224 SyntaxKind::READ_WRITE => TransactionMode::ReadWrite(ReadWrite { syntax }),
33225 SyntaxKind::REPEATABLE_READ => {
33226 TransactionMode::RepeatableRead(RepeatableRead { syntax })
33227 }
33228 SyntaxKind::SERIALIZABLE => TransactionMode::Serializable(Serializable { syntax }),
33229 _ => {
33230 return None;
33231 }
33232 };
33233 Some(res)
33234 }
33235 #[inline]
33236 fn syntax(&self) -> &SyntaxNode {
33237 match self {
33238 TransactionMode::Deferrable(it) => &it.syntax,
33239 TransactionMode::NotDeferrable(it) => &it.syntax,
33240 TransactionMode::ReadCommitted(it) => &it.syntax,
33241 TransactionMode::ReadOnly(it) => &it.syntax,
33242 TransactionMode::ReadUncommitted(it) => &it.syntax,
33243 TransactionMode::ReadWrite(it) => &it.syntax,
33244 TransactionMode::RepeatableRead(it) => &it.syntax,
33245 TransactionMode::Serializable(it) => &it.syntax,
33246 }
33247 }
33248}
33249impl From<Deferrable> for TransactionMode {
33250 #[inline]
33251 fn from(node: Deferrable) -> TransactionMode {
33252 TransactionMode::Deferrable(node)
33253 }
33254}
33255impl From<NotDeferrable> for TransactionMode {
33256 #[inline]
33257 fn from(node: NotDeferrable) -> TransactionMode {
33258 TransactionMode::NotDeferrable(node)
33259 }
33260}
33261impl From<ReadCommitted> for TransactionMode {
33262 #[inline]
33263 fn from(node: ReadCommitted) -> TransactionMode {
33264 TransactionMode::ReadCommitted(node)
33265 }
33266}
33267impl From<ReadOnly> for TransactionMode {
33268 #[inline]
33269 fn from(node: ReadOnly) -> TransactionMode {
33270 TransactionMode::ReadOnly(node)
33271 }
33272}
33273impl From<ReadUncommitted> for TransactionMode {
33274 #[inline]
33275 fn from(node: ReadUncommitted) -> TransactionMode {
33276 TransactionMode::ReadUncommitted(node)
33277 }
33278}
33279impl From<ReadWrite> for TransactionMode {
33280 #[inline]
33281 fn from(node: ReadWrite) -> TransactionMode {
33282 TransactionMode::ReadWrite(node)
33283 }
33284}
33285impl From<RepeatableRead> for TransactionMode {
33286 #[inline]
33287 fn from(node: RepeatableRead) -> TransactionMode {
33288 TransactionMode::RepeatableRead(node)
33289 }
33290}
33291impl From<Serializable> for TransactionMode {
33292 #[inline]
33293 fn from(node: Serializable) -> TransactionMode {
33294 TransactionMode::Serializable(node)
33295 }
33296}
33297impl AstNode for Type {
33298 #[inline]
33299 fn can_cast(kind: SyntaxKind) -> bool {
33300 matches!(
33301 kind,
33302 SyntaxKind::ARRAY_TYPE
33303 | SyntaxKind::BIT_TYPE
33304 | SyntaxKind::CHAR_TYPE
33305 | SyntaxKind::DOUBLE_TYPE
33306 | SyntaxKind::EXPR_TYPE
33307 | SyntaxKind::INTERVAL_TYPE
33308 | SyntaxKind::PATH_TYPE
33309 | SyntaxKind::PERCENT_TYPE
33310 | SyntaxKind::TIME_TYPE
33311 )
33312 }
33313 #[inline]
33314 fn cast(syntax: SyntaxNode) -> Option<Self> {
33315 let res = match syntax.kind() {
33316 SyntaxKind::ARRAY_TYPE => Type::ArrayType(ArrayType { syntax }),
33317 SyntaxKind::BIT_TYPE => Type::BitType(BitType { syntax }),
33318 SyntaxKind::CHAR_TYPE => Type::CharType(CharType { syntax }),
33319 SyntaxKind::DOUBLE_TYPE => Type::DoubleType(DoubleType { syntax }),
33320 SyntaxKind::EXPR_TYPE => Type::ExprType(ExprType { syntax }),
33321 SyntaxKind::INTERVAL_TYPE => Type::IntervalType(IntervalType { syntax }),
33322 SyntaxKind::PATH_TYPE => Type::PathType(PathType { syntax }),
33323 SyntaxKind::PERCENT_TYPE => Type::PercentType(PercentType { syntax }),
33324 SyntaxKind::TIME_TYPE => Type::TimeType(TimeType { syntax }),
33325 _ => {
33326 return None;
33327 }
33328 };
33329 Some(res)
33330 }
33331 #[inline]
33332 fn syntax(&self) -> &SyntaxNode {
33333 match self {
33334 Type::ArrayType(it) => &it.syntax,
33335 Type::BitType(it) => &it.syntax,
33336 Type::CharType(it) => &it.syntax,
33337 Type::DoubleType(it) => &it.syntax,
33338 Type::ExprType(it) => &it.syntax,
33339 Type::IntervalType(it) => &it.syntax,
33340 Type::PathType(it) => &it.syntax,
33341 Type::PercentType(it) => &it.syntax,
33342 Type::TimeType(it) => &it.syntax,
33343 }
33344 }
33345}
33346impl From<ArrayType> for Type {
33347 #[inline]
33348 fn from(node: ArrayType) -> Type {
33349 Type::ArrayType(node)
33350 }
33351}
33352impl From<BitType> for Type {
33353 #[inline]
33354 fn from(node: BitType) -> Type {
33355 Type::BitType(node)
33356 }
33357}
33358impl From<CharType> for Type {
33359 #[inline]
33360 fn from(node: CharType) -> Type {
33361 Type::CharType(node)
33362 }
33363}
33364impl From<DoubleType> for Type {
33365 #[inline]
33366 fn from(node: DoubleType) -> Type {
33367 Type::DoubleType(node)
33368 }
33369}
33370impl From<ExprType> for Type {
33371 #[inline]
33372 fn from(node: ExprType) -> Type {
33373 Type::ExprType(node)
33374 }
33375}
33376impl From<IntervalType> for Type {
33377 #[inline]
33378 fn from(node: IntervalType) -> Type {
33379 Type::IntervalType(node)
33380 }
33381}
33382impl From<PathType> for Type {
33383 #[inline]
33384 fn from(node: PathType) -> Type {
33385 Type::PathType(node)
33386 }
33387}
33388impl From<PercentType> for Type {
33389 #[inline]
33390 fn from(node: PercentType) -> Type {
33391 Type::PercentType(node)
33392 }
33393}
33394impl From<TimeType> for Type {
33395 #[inline]
33396 fn from(node: TimeType) -> Type {
33397 Type::TimeType(node)
33398 }
33399}
33400impl AstNode for WithQuery {
33401 #[inline]
33402 fn can_cast(kind: SyntaxKind) -> bool {
33403 matches!(
33404 kind,
33405 SyntaxKind::COMPOUND_SELECT
33406 | SyntaxKind::DELETE
33407 | SyntaxKind::INSERT
33408 | SyntaxKind::MERGE
33409 | SyntaxKind::PAREN_SELECT
33410 | SyntaxKind::SELECT
33411 | SyntaxKind::TABLE
33412 | SyntaxKind::UPDATE
33413 | SyntaxKind::VALUES
33414 )
33415 }
33416 #[inline]
33417 fn cast(syntax: SyntaxNode) -> Option<Self> {
33418 let res = match syntax.kind() {
33419 SyntaxKind::COMPOUND_SELECT => WithQuery::CompoundSelect(CompoundSelect { syntax }),
33420 SyntaxKind::DELETE => WithQuery::Delete(Delete { syntax }),
33421 SyntaxKind::INSERT => WithQuery::Insert(Insert { syntax }),
33422 SyntaxKind::MERGE => WithQuery::Merge(Merge { syntax }),
33423 SyntaxKind::PAREN_SELECT => WithQuery::ParenSelect(ParenSelect { syntax }),
33424 SyntaxKind::SELECT => WithQuery::Select(Select { syntax }),
33425 SyntaxKind::TABLE => WithQuery::Table(Table { syntax }),
33426 SyntaxKind::UPDATE => WithQuery::Update(Update { syntax }),
33427 SyntaxKind::VALUES => WithQuery::Values(Values { syntax }),
33428 _ => {
33429 return None;
33430 }
33431 };
33432 Some(res)
33433 }
33434 #[inline]
33435 fn syntax(&self) -> &SyntaxNode {
33436 match self {
33437 WithQuery::CompoundSelect(it) => &it.syntax,
33438 WithQuery::Delete(it) => &it.syntax,
33439 WithQuery::Insert(it) => &it.syntax,
33440 WithQuery::Merge(it) => &it.syntax,
33441 WithQuery::ParenSelect(it) => &it.syntax,
33442 WithQuery::Select(it) => &it.syntax,
33443 WithQuery::Table(it) => &it.syntax,
33444 WithQuery::Update(it) => &it.syntax,
33445 WithQuery::Values(it) => &it.syntax,
33446 }
33447 }
33448}
33449impl From<CompoundSelect> for WithQuery {
33450 #[inline]
33451 fn from(node: CompoundSelect) -> WithQuery {
33452 WithQuery::CompoundSelect(node)
33453 }
33454}
33455impl From<Delete> for WithQuery {
33456 #[inline]
33457 fn from(node: Delete) -> WithQuery {
33458 WithQuery::Delete(node)
33459 }
33460}
33461impl From<Insert> for WithQuery {
33462 #[inline]
33463 fn from(node: Insert) -> WithQuery {
33464 WithQuery::Insert(node)
33465 }
33466}
33467impl From<Merge> for WithQuery {
33468 #[inline]
33469 fn from(node: Merge) -> WithQuery {
33470 WithQuery::Merge(node)
33471 }
33472}
33473impl From<ParenSelect> for WithQuery {
33474 #[inline]
33475 fn from(node: ParenSelect) -> WithQuery {
33476 WithQuery::ParenSelect(node)
33477 }
33478}
33479impl From<Select> for WithQuery {
33480 #[inline]
33481 fn from(node: Select) -> WithQuery {
33482 WithQuery::Select(node)
33483 }
33484}
33485impl From<Table> for WithQuery {
33486 #[inline]
33487 fn from(node: Table) -> WithQuery {
33488 WithQuery::Table(node)
33489 }
33490}
33491impl From<Update> for WithQuery {
33492 #[inline]
33493 fn from(node: Update) -> WithQuery {
33494 WithQuery::Update(node)
33495 }
33496}
33497impl From<Values> for WithQuery {
33498 #[inline]
33499 fn from(node: Values) -> WithQuery {
33500 WithQuery::Values(node)
33501 }
33502}